Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

All about games on the Falcon, TT & clones

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

masteries
Atarian
Atarian
Posts: 8
Joined: Thu Jul 16, 2015 4:05 pm

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by masteries »

Anima wrote: Thu Jul 16, 2020 10:26 am
Here's the first public release of Daimakaimura for the Atari STE!

Note: due to the size and some Videl specific changes this version was compiled for Atari Falcon 030 machines with 14 MB RAM!

This is compiled for Falcon, but can it be played on a 4MB STE?
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

masteries wrote: Thu Jul 16, 2020 11:03 amThis is compiled for Falcon, but can it be played on a 4MB STE?
With limited graphics assets it works on the STE as well. This version contains almost all sprites which is too much for a 4 MB machine.

I'll prepare a version for the STE when I am able to squeeze at least the first stage into 4 MB of RAM. ;)
masteries
Atarian
Atarian
Posts: 8
Joined: Thu Jul 16, 2015 4:05 pm

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by masteries »

Anima wrote: Thu Jul 16, 2020 11:10 am
I'll prepare a version for the STE when I am able to squeeze at least the first stage into 4 MB of RAM. ;)
Thanks for the quick response, due to its difficult to fit on 4 MB per stage; I will not ask for dualfield colouring 8)


Also, there is interest on huge sprites (probably someone asked something related on this) such the first stage huge boss:

minute 1:30

https://www.youtube.com/watch?v=ZWOHrtpAKlU

Is this rendered at 50 fps?
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

masteries wrote: Thu Jul 16, 2020 11:24 am Is this rendered at 50 fps?
Well, most certainly not. The problem is that the sprite is comprised of many small sprites (tiles) and so it's not optimal for the Blitter to draw them. Also the time per frame is limited to about 50% for drawing which steals a bit of performance as well.

The game speed, however, is not affected since there is a frame skipping routine.
User avatar
Marsupilami
Atariator
Atariator
Posts: 28
Joined: Tue Mar 27, 2018 3:50 pm
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Marsupilami »

Nice work !
I just tested it on Hatari.
Glad to see you're still working on it. 8)
https://www.atarinside.com :
Atari 800XL in Europe France/Italy/Benelux/Deutschland/UK White & Silver plastic boxes
Dumps, Videos, Books, reference list / High resolution pictures of the Atari 800 XL motherboards
Atari 800XL French press Review
Image
EvilFranky
Atari Super Hero
Atari Super Hero
Posts: 890
Joined: Thu Sep 11, 2003 10:49 pm
Location: UK

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by EvilFranky »

Excellent Anima, thanks very much!

Just tried it on Hatari anyway. Tip for anyone else...use a Falcon config but with an 68040, that appears to clear up the sprite corruption (I think this is what Anima means by not working in Hatari yet).

No sound which I assume is normal?
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

Marsupilami wrote: Thu Jul 16, 2020 12:19 pm Nice work !
I just tested it on Hatari.
Glad to see you're still working on it. 8)
Thanks. :)
EvilFranky wrote: Thu Jul 16, 2020 12:24 pm Excellent Anima, thanks very much!

Just tried it on Hatari anyway. Tip for anyone else...use a Falcon config but with an 68040, that appears to clear up the sprite corruption (I think this is what Anima means by not working in Hatari yet).

No sound which I assume is normal?
Thanks. Yes, I forgot to mention that there‘s no sound at all. :D

Sprite glitches and vertical scrolling problems will occur when using Hatari. In fact some graphics glitches are still noticeable on original hardware.

Great to hear that it runs fine on accelerated machines as well. :)
User avatar
mrbombermillzy
Captain Atari
Captain Atari
Posts: 339
Joined: Tue Sep 13, 2016 9:24 am

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by mrbombermillzy »

Anima wrote: Thu Jul 16, 2020 10:26 am
Known issues
------------

- Sprite glitches due to instruction
cache timings.

Sascha
Its not just me struggling with the 030 timings then! :)

I mentioned this to Doug a couple of wees ago.
Seems like, for me at least, to be a bit of a nightmare situation trying to get close to any sort of near cycle exact precision going on.

The I/D caches are not large enough to be able to really make provisions for code-wise effectively, but cut in (as may as well be) randomly to skupper any timing precision. And you cant really afford to turn them off! lol

Currently, I just flush them and turn on just before the critical part of the loop and hope for the best. :D
neanderthal
Captain Atari
Captain Atari
Posts: 157
Joined: Sun Jul 10, 2016 10:58 pm

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by neanderthal »

Had a go on a real falcy,,standard machine,no fancy upgrades or such.
Some graphical boxes here and there outta place,seems to be the trees,'middle' tree top in the demo being the one that one first thinks about.(green box)
Functions nicely otherwise,actually had demo screen rotating for an hour due to was cooking at the same time..lol
But the Jagpad was oddly 'sticky',,that is mostly notable on the left/right direction and knight is still, even if keep pressing button?
Direction change feels ok,,left->right,right->left and knight turns.
The frame skipping maybe that is spooky here?,,If you are doing VBI based jagpad reading?
Keyboard works fine,even if a bit odd feel to play the game with keyb and no sounds..Really lack some sounds there :)
Came to think of it,Ilg:s frogs had same sort of issue with Jagpads,wonder if he fixed it?,,did pop him parts of my old routs,tho its
in asm and he does GFA,think I forgot to send him my tweak on it?
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

neanderthal wrote: Thu Jul 16, 2020 7:20 pm But the Jagpad was oddly 'sticky',,that is mostly notable on the left/right direction and knight is still, even if keep pressing button?
Thanks for the report. I‘ll have a look tomorrow. Yes, the JagPad is being read at VBL intervals and I haven’t checked that feature lately. :coffe:
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

I just tested the JagPad here on my Falcon. The only "strange" behaviour is that Arthur (the knight) doesn't move when "left" or "right" is pressed in combination with "up". So I would expect that Arthur walks to the next ladder to climb up but he simply stops. Is this the issue?

Ok, update: I tested the original game in MAME and it shows the same "problem": Arthur stops when "up" is pressed...
User avatar
Eero Tamminen
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2158
Joined: Sun Jul 31, 2011 1:11 pm

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Eero Tamminen »

EvilFranky wrote: Thu Jul 16, 2020 12:24 pm Just tried it on Hatari anyway. Tip for anyone else...use a Falcon config but with an 68040, that appears to clear up the sprite corruption
Would they go away just with disabling cache emulation (from command it would be with: "--cpu-exact off")? That would speed 030 emulation a lot (along with disabling DSP if it's used, e.g. with "--dsp none").
User avatar
Eero Tamminen
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2158
Joined: Sun Jul 31, 2011 1:11 pm

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Eero Tamminen »

mrbombermillzy wrote: Thu Jul 16, 2020 6:49 pm Its not just me struggling with the 030 timings then! :)

I mentioned this to Doug a couple of wees ago.
Seems like, for me at least, to be a bit of a nightmare situation trying to get close to any sort of near cycle exact precision going on.

The I/D caches are not large enough to be able to really make provisions for code-wise effectively, but cut in (as may as well be) randomly to skupper any timing precision. And you cant really afford to turn them off! lol

Currently, I just flush them and turn on just before the critical part of the loop and hope for the best. :D
In Bad Mood, it seemed that when Doug really needed to get things fit into cache, he just wrote things so that they did (e.g. Doom BSP traversal). :-)

Seriously though, Hatari emulates cache and profiler provides that data, so you can see where your instructions cache misses and data cache hits are. Interrupts cause some randomness to that, but you see those from the annotated assembly output and callgraphs.
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

Eero Tamminen wrote: Fri Jul 17, 2020 3:51 pm
EvilFranky wrote: Thu Jul 16, 2020 12:24 pm Just tried it on Hatari anyway. Tip for anyone else...use a Falcon config but with an 68040, that appears to clear up the sprite corruption
Would they go away just with disabling cache emulation (from command it would be with: "--cpu-exact off")?
The sprite code is basically a slightly modified version of the original Atari STE codebase. It relies on the fact that the CPU should stall on certain circumstances not to alter Blitter registers prematurely. This is fixed by a workaround which is obviously not stable enough. :D

However, there's another problem using Hatari with changing video registers in Timer B interrupts. You can see this on vertical scrolling areas.
EvilFranky
Atari Super Hero
Atari Super Hero
Posts: 890
Joined: Thu Sep 11, 2003 10:49 pm
Location: UK

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by EvilFranky »

Eero Tamminen wrote: Fri Jul 17, 2020 3:51 pm
EvilFranky wrote: Thu Jul 16, 2020 12:24 pm Just tried it on Hatari anyway. Tip for anyone else...use a Falcon config but with an 68040, that appears to clear up the sprite corruption
Would they go away just with disabling cache emulation (from command it would be with: "--cpu-exact off")? That would speed 030 emulation a lot (along with disabling DSP if it's used, e.g. with "--dsp none").
Just tried this. Using a 68030 and disabling the cycle exact option clears up the sprites the same way as changing the CPU to a 68040 :)
User avatar
Eero Tamminen
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2158
Joined: Sun Jul 31, 2011 1:11 pm

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Eero Tamminen »

EvilFranky wrote: Fri Jul 17, 2020 5:23 pm Using a 68030 and disabling the cycle exact option clears up the sprites the same way as changing the CPU to a 68040 :)
040 data cache emulation was added in Hatari v2.1.0, do you have something older?
Anima wrote: Fri Jul 17, 2020 4:52 pm However, there's another problem using Hatari with changing video registers in Timer B interrupts. You can see this on vertical scrolling areas.
Yes, there are unfortunately some things still missing from Videl emulation, and nobody's working on it currently (After Laurent got Falcon DSP etc emulation working well enough, he moved to coding Atari demos instead :-)).
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

Eero Tamminen wrote: Sun Jul 19, 2020 5:24 pmYes, there are unfortunately some things still missing from Videl emulation, and nobody's working on it currently (After Laurent got Falcon DSP etc emulation working well enough, he moved to coding Atari demos instead :-)).
Ok, well, I would like to join in. ;)
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

WIP: I am actually reworking the sprite code. This is based on the test results of the Atari STE Blitter objects demo. Hoping that the new structure will help reducing the sprite data by a good margin.

However, I think that a "hard disk sprite streaming" function will be necessary nonetheless.

Unfortunately my disk drive killed my last boot disk so I have to wait for some replacement to test the code on my Atari STE. :(
User avatar
Sturm
Captain Atari
Captain Atari
Posts: 207
Joined: Wed Aug 24, 2016 1:51 pm
Location: France

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Sturm »

Thanks a lot Anima !

Just tested it on my Falcon, and it's really impressive ! That's a tremendous work and we should all be thankful to have people like you offering new stuff for our old machines.
Please please, try to do a specific Falcon version with sound (and original colours if possible?). Did you use the DSP ?
Would it be possible to have an "arcade perfect" version ?
If not, i'd still would be happy with this version :-)
The Falcon has almost no games and stuff like this is a gift, (still waiting for Pacmania Falcon) :D

Thanks again !
emcclariion
Captain Atari
Captain Atari
Posts: 218
Joined: Wed Nov 28, 2012 6:37 pm

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by emcclariion »

works on a CT60 Falcon, have not had time to play it much.

works great, lost the axe sprite for some reason and sometimes, when its game over it will not go to the title screen.

Top work dude, will keep play and keep doing bug reports
Atari TT Nova card Mach64, Lightning VME, 64MB of RAM, Mega STE 4MB, Nova mach 32 and Atari STE 4MB TOS 2.06 Netusb Ultrasatan 2, Atari Falcon CT60 512MB Netusb
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

Sturm wrote: Wed Jul 29, 2020 7:26 am Please please, try to do a specific Falcon version with sound (and original colours if possible?). Did you use the DSP ?
Would it be possible to have an "arcade perfect" version ?
If not, i'd still would be happy with this version :-)
The Falcon has almost no games and stuff like this is a gift, (still waiting for Pacmania Falcon) :D
Please note that the released test represents the Atari STE version (except for the faster CPU speed) and nothing more. There's no Falcon "special feature" involved. A Falcon version would be a game based on a totally different approach but I want to keep any details about it at the moment. :angel:

I totally agree that the Falcon deserves better games. Pac-Mania is quite mature but needs some optimizations for a proper release.
emcclariion wrote: Wed Jul 29, 2020 10:05 am works on a CT60 Falcon, have not had time to play it much.

works great, lost the axe sprite for some reason and sometimes, when its game over it will not go to the title screen.

Top work dude, will keep play and keep doing bug reports
Thanks. :)

Some sprites have not yet been recorded so that especially the different armor types will show some missing sprites.

I hope that the next release is for the STE but I am still trying to find a fix for an annoying issue with my machine before going on with this project. :coffe:
User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 763
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by Anima »

Btw: The released demo features more cheat codes taken from MAME (press the appropriate key to enable them while playing):

T: Reset the (invisible) timer.
I: Set "invulnerable" mode.
L: Maximum number of lives.

Please note that these are not permanent and need to be reactivated on stage change or even when the armor changes!
User avatar
matt
Captain Atari
Captain Atari
Posts: 355
Joined: Tue Jan 04, 2005 5:11 pm
Location: Cornwall, UK
Contact:

Re: Daimakaimura (Ghouls 'n Ghosts) for the Atari STE

Post by matt »

Wow! Congrats!

Eager to try it.
Post Reply

Return to “Games”