JOY version 1.1 released!

All about demos on the Falcon, TT & clones

Moderators: Mug UK, [ProToS], lp, moondog/.tSCc., Moderator Team

Post Reply
User avatar
dhedberg
Atari God
Atari God
Posts: 1200
Joined: Mon Aug 30, 2010 8:36 am
Contact:

JOY version 1.1 released!

Post by dhedberg »

Hi,

A new version of our Falcon030 demo JOY is now available. It features compatibility with the 060 mode of CT6xx accelerated Falcons and a number of bugfixes. So no reason to switch to 030 mode anymore. This new version is identical, both visually and audibly, to the version released at Sommarhack in July, 2019.

Version 1.1 of JOY can be found here (click the download link on the page).

All the best,
Daniel
Last edited by dhedberg on Mon Aug 03, 2020 5:15 pm, edited 1 time in total.
Daniel, New Beat - http://newbeat.atari.org.
Like demos? Have a look at our new Falcon030 demo It's that time of the year again, or click here to feel the JOY.
User avatar
viking272
Captain Atari
Captain Atari
Posts: 437
Joined: Mon Oct 13, 2008 12:50 pm
Location: west of London, UK

Re: JOY version 1.1 released!

Post by viking272 »

Nice one - thank you!
OL
Atari Super Hero
Atari Super Hero
Posts: 548
Joined: Fri Apr 01, 2005 6:59 am
Contact:

Re: JOY version 1.1 released!

Post by OL »

Could it run on 68040 if the test at start not require 68030 or 68060 ?

Olivier
OL
marss
Captain Atari
Captain Atari
Posts: 154
Joined: Thu Nov 07, 2002 12:29 pm

Re: JOY version 1.1 released!

Post by marss »

Thanks
User avatar
dhedberg
Atari God
Atari God
Posts: 1200
Joined: Mon Aug 30, 2010 8:36 am
Contact:

Re: JOY version 1.1 released!

Post by dhedberg »

OL wrote: Mon Aug 03, 2020 8:25 pm Could it run on 68040 if the test at start not require 68030 or 68060 ?
Olivier
Hm, except for the configuration of the 060 caches, the 040 would probably run using the same code path as the 060. The 060 code path does not use the Blitter at all as the CT6xx is not stable in 060 mode when running the Blitter and another DMA device at the same time.

I don't have access to a 040 (Afterburner?) equipped Falcon and actually had no idea that there were 040 equipped Falcons around. Do you have an Afterburner installed in your Falcon Olivier? I guess I could provide you with a patched executable that accepts the 040 and does not configure the caches in any way, just to see if it works... interested?
Daniel, New Beat - http://newbeat.atari.org.
Like demos? Have a look at our new Falcon030 demo It's that time of the year again, or click here to feel the JOY.
OL
Atari Super Hero
Atari Super Hero
Posts: 548
Joined: Fri Apr 01, 2005 6:59 am
Contact:

Re: JOY version 1.1 released!

Post by OL »

dhedberg wrote: Mon Aug 03, 2020 9:31 pm
OL wrote: Mon Aug 03, 2020 8:25 pm Could it run on 68040 if the test at start not require 68030 or 68060 ?
Olivier
Hm, except for the configuration of the 060 caches, the 040 would probably run using the same code path as the 060. The 060 code path does not use the Blitter at all as the CT6xx is not stable in 060 mode when running the Blitter and another DMA device at the same time.

I don't have access to a 040 (Afterburner?) equipped Falcon and actually had no idea that there were 040 equipped Falcons around. Do you have an Afterburner installed in your Falcon Olivier? I guess I could provide you with a patched executable that accepts the 040 and does not configure the caches in any way, just to see if it works... interested?
Hello

I have no Falcon with 040 (no Falcon at all), but I have Aranym and CPU is supposed to be 68040 and Falcon +- compatible with Falcon. I have too a V4SA with 68040 CPU recognized for the moment far to be compatible for the moment!

Olivier
OL
User avatar
Eero Tamminen
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2177
Joined: Sun Jul 31, 2011 1:11 pm

Re: JOY version 1.1 released!

Post by Eero Tamminen »

Could be good to test with Hatari (Git version) Falcon + 040 CPU emulation too.
User avatar
bearsoft
Retro freak
Retro freak
Posts: 14
Joined: Fri Mar 18, 2016 3:38 pm
Contact:

Re: JOY version 1.1 released!

Post by bearsoft »

I have problem to run it in Hatari v2.2.1. CPU not supported. Even if I have selected correct CPU.
It crashing in Aranym. But it may have to do with DSP?
User avatar
dhedberg
Atari God
Atari God
Posts: 1200
Joined: Mon Aug 30, 2010 8:36 am
Contact:

Re: JOY version 1.1 released!

Post by dhedberg »

bearsoft wrote: Fri Sep 11, 2020 3:42 pm I have problem to run it in Hatari v2.2.1. CPU not supported. Even if I have selected correct CPU.
It crashing in Aranym. But it may have to do with DSP?
Are you perhaps using EmuTOS? You need the real thing: TOS 4.04.
EmuTOS is not a replacement for TOS 4.x. A lot of Falcon030 and TOS 4.x features are missing in EmuTOS. The demo relies on the _CPU cookie for determining the type of CPU of the machine. I guess EmuTOS does not properly initialize this cookie?
Daniel, New Beat - http://newbeat.atari.org.
Like demos? Have a look at our new Falcon030 demo It's that time of the year again, or click here to feel the JOY.
User avatar
bearsoft
Retro freak
Retro freak
Posts: 14
Joined: Fri Mar 18, 2016 3:38 pm
Contact:

Re: JOY version 1.1 released!

Post by bearsoft »

"Are you perhaps using EmuTOS? You need the real thing: TOS 4.04.
EmuTOS is not a replacement for TOS 4.x. A lot of Falcon030 and TOS 4.x features are missing in EmuTOS. The demo relies on the _CPU cookie for determining the type of CPU of the machine. I guess EmuTOS does not properly initialize this cookie?"

Yes, that was the problem. Thanks:)
It's pretty slow in Hatari.
Has set 060 / 32MHZ.
Do you use DSP? Or does it work in Aranym?
czietz
Hardware Guru
Hardware Guru
Posts: 1239
Joined: Tue May 24, 2016 6:47 pm

Re: JOY version 1.1 released!

Post by czietz »

dhedberg wrote: Fri Sep 11, 2020 8:11 pm The demo relies on the _CPU cookie for determining the type of CPU of the machine. I guess EmuTOS does not properly initialize this cookie?
It should set the _CPU cookie correctly. If it doesn't, it's a bug that should be reported. I'm away and can't investigate myself. You're right though, about TOS 4 / Falcon-specific features still missing from EmuTOS.

So if the program is not running e.g. due to unimplemented TOS4 functions, it's expected. If it's failing merely because of the _CPU cookie, it's a bug. Can you please confirm that it's in fact the cookie that is the issue?
User avatar
dhedberg
Atari God
Atari God
Posts: 1200
Joined: Mon Aug 30, 2010 8:36 am
Contact:

Re: JOY version 1.1 released!

Post by dhedberg »

czietz wrote: Sat Sep 12, 2020 9:14 am It should set the _CPU cookie correctly. If it doesn't, it's a bug that should be reported. I'm away and can't investigate myself. You're right though, about TOS 4 / Falcon-specific features still missing from EmuTOS.

So if the program is not running e.g. due to unimplemented TOS4 functions, it's expected. If it's failing merely because of the _CPU cookie, it's a bug. Can you please confirm that it's in fact the cookie that is the issue?
Had a look at it. Nothing wrong with the cookie, it's present.

But it seems like the EmuTOS implementation of XBIOS supexec restores the value of d2 on return, while TOS 4.04 does not. I thought it was safe to rely on d2 not being restored as d0-d2/a0-a2 are reserved for XBIOS functions, so I used d1 and d2 to pass cookie information back to the caller. This works well in TOS 4.04, but not in EmuTOS. Besides d3-d7/a3-a7, EmuTOS also restores registers d2 and a1-a2 on return, effectively destroying any return data passed in these registers by the routine invoked by Supexec.

I guess you could say it's bad practice from my side as I think the documentation of supexec only says the contents of d0 is passed from the routine invoked by supexec back to the caller. However, it seems a bit odd that EmuTOS restores more registers than is required by the XBIOS 'contract'.

By changing my cookie routine to use Setexc rather than Supexec the demo gets passed the CPU test also in EmuTOS. However, the demo uses the DSP along with a variety of XBIOS calls not implemented in EmuTOS so it fails shortly thereafter.
Daniel, New Beat - http://newbeat.atari.org.
Like demos? Have a look at our new Falcon030 demo It's that time of the year again, or click here to feel the JOY.
User avatar
bearsoft
Retro freak
Retro freak
Posts: 14
Joined: Fri Mar 18, 2016 3:38 pm
Contact:

Re: JOY version 1.1 released!

Post by bearsoft »

Is it difficult to make it work under Aranym? Do you only use DSP for music?
mikro
Hardware Guru
Hardware Guru
Posts: 2218
Joined: Sat Sep 10, 2005 11:11 am
Location: Kosice, Slovakia
Contact:

Re: JOY version 1.1 released!

Post by mikro »

Discussed literally a few days ago here: https://www.atari-forum.com/viewtopic.p ... 52#p405452 :)

It's really important not to make any assumptions, as you can see on your or sporniket's example, a lot of time wasted for nothing.
User avatar
dhedberg
Atari God
Atari God
Posts: 1200
Joined: Mon Aug 30, 2010 8:36 am
Contact:

Re: JOY version 1.1 released!

Post by dhedberg »

bearsoft wrote: Sat Sep 12, 2020 6:32 am It's pretty slow in Hatari.
Has set 060 / 32MHZ.
JOY is a demo for stock Falcon030 machines, 16MHz and 4MB RAM. So no need to emulate a 68060 CPU (the more powerful CPU and the higher frequency you select in Hatari, the more resources are needed for the emulation, and unless your computer are able to keep up, things will actually run slower. I don't think Hatari is able to emulate a 68060 at 32MHz + DSP at 32MHz without dropping frames on any modern computer.

Change the emulation to a 68030 at 16MHz. My computer with an Intel i7 at 4GHz and a decent NVIDIA graphics card is then able to run JOY at full frame rate. As the demo is using the Blitter and the DSP as well, a fairly fast computer is required to reach full frame rate.
bearsoft wrote: Sat Sep 12, 2020 6:32 am Is it difficult to make it work under Aranym? Do you only use DSP for music?
No idea. Never used Aranym. The DSP is used for the music (processing the MP2 stream).
Daniel, New Beat - http://newbeat.atari.org.
Like demos? Have a look at our new Falcon030 demo It's that time of the year again, or click here to feel the JOY.
User avatar
dhedberg
Atari God
Atari God
Posts: 1200
Joined: Mon Aug 30, 2010 8:36 am
Contact:

Re: JOY version 1.1 released!

Post by dhedberg »

mikro wrote: Sun Sep 13, 2020 8:55 am Discussed literally a few days ago here: https://www.atari-forum.com/viewtopic.p ... 52#p405452 :)
It's really important not to make any assumptions, as you can see on your or sporniket's example, a lot of time wasted for nothing.
Haha, yeah, fortunately I didn't waste too much time on it though, but you're right... shouldn't make any assumptions in cases like this, it will come back and bite you eventually! :-)
Daniel, New Beat - http://newbeat.atari.org.
Like demos? Have a look at our new Falcon030 demo It's that time of the year again, or click here to feel the JOY.
User avatar
bearsoft
Retro freak
Retro freak
Posts: 14
Joined: Fri Mar 18, 2016 3:38 pm
Contact:

Re: JOY version 1.1 released!

Post by bearsoft »

I changed the settings it works better now. But it's still slow. I've got graphical bugs after a time. I have a i7 3.0 GHZ.
www.fukt.bsnet.se/~bearsoft/Joy/Joy.avi

Do you have a version without sound?
User avatar
dhedberg
Atari God
Atari God
Posts: 1200
Joined: Mon Aug 30, 2010 8:36 am
Contact:

Re: JOY version 1.1 released!

Post by dhedberg »

bearsoft wrote: Mon Sep 14, 2020 4:06 am I changed the settings it works better now. But it's still slow. I've got graphical bugs after a time. I have a i7 3.0 GHZ.
www.fukt.bsnet.se/~bearsoft/Joy/Joy.avi
Hatari needs a CPU that can reach high speeds on a single/few cores. Multiple cores doesn't help Hatari unfortunately. 3GHz may be a bit on the low side to run JOY.

You can try and tweak the settings of Hatari a bit to see if it helps.
The settings below should allow the demo to run without glitches in Hatari. It can still run too slow if your computer isn't up for the task though.

My settings under CPU are:
CPU type: 68030
CPU clock: 16MHz
FPU: None

Prefetch enabled
Cycle exact enabled
MMU emulation disabled
24 bits addressing enabled
Full software FPU emulation disabled
bearsoft wrote: Mon Sep 14, 2020 4:06 am Do you have a version without sound?
If you don't care about sound, set the "Falcon DSP" under "Systems Options" to "Dummy", that should free quite a bit of resources.

All the best,
Daniel
Daniel, New Beat - http://newbeat.atari.org.
Like demos? Have a look at our new Falcon030 demo It's that time of the year again, or click here to feel the JOY.
User avatar
bearsoft
Retro freak
Retro freak
Posts: 14
Joined: Fri Mar 18, 2016 3:38 pm
Contact:

Re: JOY version 1.1 released!

Post by bearsoft »

When you enable "Prefetch enabled", "Cycle exact enabled", "24 bits addressing enabled".
The graphic bugs disappears.

But if you only set the DPS to dummy.
Then it's runs smoothly.
Even the music in the end.
Except the music that uses the DSP.
www.fukt.bsnet.se/~bearsoft/Joy/JoyNoDSP.avi

It's possibly to replace the DSP music player. With a music player that supports samples?
Then the production may work even in Aranym.
User avatar
dhedberg
Atari God
Atari God
Posts: 1200
Joined: Mon Aug 30, 2010 8:36 am
Contact:

Re: JOY version 1.1 released!

Post by dhedberg »

bearsoft wrote: Mon Sep 14, 2020 4:25 pm It's possibly to replace the DSP music player. With a music player that supports samples?
Then the production may work even in Aranym.
Yes, it would be possible but I'm afraid I don't really see the point in doing that. It's a demo I coded for the Falcon030 and the real hardware can handle the music just fine. Sorry.
Daniel, New Beat - http://newbeat.atari.org.
Like demos? Have a look at our new Falcon030 demo It's that time of the year again, or click here to feel the JOY.
User avatar
Eero Tamminen
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2177
Joined: Sun Jul 31, 2011 1:11 pm

Re: JOY version 1.1 released!

Post by Eero Tamminen »

bearsoft wrote: Mon Sep 14, 2020 4:25 pm When you enable "Prefetch enabled", "Cycle exact enabled", "24 bits addressing enabled".
The graphic bugs disappears.
...
It's possibly to replace the DSP music player. With a music player that supports samples?
Then the production may work even in Aranym.
Cycle-exact = CPU cache emulation. Aranym doesn't emulate that.

While programs may work OK with CPU "prefetch" disabled, I wouldn't really recommend that, its impact to performance is marginal compared to DSP & CPU cache emulation.
Post Reply

Return to “Demos”