The X68000 games porting experiment

All 680x0 related coding posts in this section please.

Moderators: simonsunnyboy, Mug UK, Zorro 2, Moderator Team

User avatar
sh3-rg
Captain Atari
Captain Atari
Posts: 438
Joined: Thu May 08, 2003 1:33 pm
Location: bolton - england
Contact:

Re: The X68000 games porting experiment

Postby sh3-rg » Sun Dec 23, 2012 12:00 pm

Nice one, DMA, not seen that one myself and thanks for the handy time-saving links in your post :-)

User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 666
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: The X68000 games porting experiment

Postby Anima » Sun Dec 23, 2012 10:01 pm

dma wrote:Ah, i got an X68000 game back in my mind which would probably be a good candidate for porting : Chelnov (also named Atomic Runner).
I don't think it uses advanced graphic system, just scrolling and sprites. But it's really an arcade gem imo.


It depends on how the hardware features of the X68000 are being used even when the game itself seems to be technically simple. Xevious for example uses the text layer for the background graphics. That's not a big problem, though, but it's a different approach and so it needs to be emulated differently compared to Galaga and PacMania.

However, I've taken a first look into the mechanics and source code and it's indeed a good candidate. ;)

Cheers
Sascha

EvilFranky
Atari Super Hero
Atari Super Hero
Posts: 868
Joined: Thu Sep 11, 2003 10:49 pm
Location: UK
Contact:

Re: The X68000 games porting experiment

Postby EvilFranky » Sun Dec 23, 2012 10:17 pm

Which other game are you also working on?

Or is that a secret? :grin:

Sent from my Nexus 4 using Tapatalk 2

User avatar
dma
Atari Super Hero
Atari Super Hero
Posts: 971
Joined: Wed Nov 20, 2002 11:22 pm
Location: France
Contact:

Re: The X68000 games porting experiment

Postby dma » Sun Dec 23, 2012 10:24 pm

Anima wrote:However, I've taken a first look into the mechanics and source code and it's indeed a good candidate. ;)

Really pleased to read that.
Believe me, if you can port it, you and Atari players won't regret it, great game only released on three systems.

User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 666
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: The X68000 games porting experiment

Postby Anima » Sun Dec 23, 2012 10:53 pm

EvilFranky wrote:Which other game are you also working on?

Or is that a secret? :grin:


There is no specific title what I am currently working on. I also need to find some time for further investigations on if and how some tempting titles can be ported. Games like Final Fight, Streetfighter, Ghouls'n'Ghosts, Castlevania, Gradius and Parodius are still the most interesting ones but some of them use weird graphic layer combinations and therefore are tricky to port. In fact, some graphic effects are definitely not important for the gameplay but how will the game look like without!?

Viewpoint was promising as well but it seems that compressed game code is being loaded while playing so this is unfortunately a blocker for now.

Cho Ren Sha was also an interesting title but it displays up to 512 sprites on screen with a trick. On the Atari Falcon we don't need a trick but the performance will suffer for sure. ;)

Probably I should finish PacMania first. What do you think?

Cheers
Sascha

EvilFranky
Atari Super Hero
Atari Super Hero
Posts: 868
Joined: Thu Sep 11, 2003 10:49 pm
Location: UK
Contact:

Re: The X68000 games porting experiment

Postby EvilFranky » Sun Dec 23, 2012 10:55 pm

I agree, finish PacMania :grin:

Sent from my Nexus 4 using Tapatalk 2

User avatar
sh3-rg
Captain Atari
Captain Atari
Posts: 438
Joined: Thu May 08, 2003 1:33 pm
Location: bolton - england
Contact:

Re: The X68000 games porting experiment

Postby sh3-rg » Sun Dec 23, 2012 10:58 pm

EvilFranky wrote:I agree, finish PacMania :grin:

Sent from my Nexus 4 using Tapatalk 2


+1

User avatar
calimero
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2284
Joined: Thu Sep 15, 2005 10:01 am
Location: STara Pazova, Serbia
Contact:

Re: The X68000 games porting experiment

Postby calimero » Sun Dec 23, 2012 11:28 pm

using Atari since 1986.http://wet.atari.orghttp://milan.kovac.cc/atari/software/ ・ Atari Falcon030/CT63/SV ・ Atari STe ・ Atari Mega4/MegaFile30/SM124 ・ Amiga 1200/PPC ・ Amiga 500 ・ C64 ・ ZX Spectrum ・ RPi ・ MagiC! ・ MiNT 1.18 ・ OS X

User avatar
NGF
Captain Atari
Captain Atari
Posts: 389
Joined: Tue Nov 22, 2005 9:22 pm
Location: Stockholm, Sweden

Re: The X68000 games porting experiment

Postby NGF » Mon Dec 24, 2012 1:14 am

Hehe +1 on finish him (pacmania) :mrgreen:

Is Galaga finished now or will there be additions (jagpad? ym-sound?)

The dream would ofcourse be Castlevania or Street fighter (with 6 button jagpad support) but i doubt it would be very fast, its better to have games close to full speed.

Anyways great work! I must dig out my Falcon and try this soon!
"4160" STE with Ultrasatan | Falcon 030 14MB with CF-reader | TT030 | STacy | 520STFM x 2 | 520ST x 2

User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 666
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: The X68000 games porting experiment

Postby Anima » Mon Dec 24, 2012 1:36 am

NGF wrote:Is Galaga finished now or will there be additions (jagpad? ym-sound?)


I think sound is important for the best experience in every game but the sound driver is in fact a complete separate program which is not disassembled yet and I am not aware of any sound interface documentation.

Cheers
Sascha

User avatar
calimero
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2284
Joined: Thu Sep 15, 2005 10:01 am
Location: STara Pazova, Serbia
Contact:

Re: The X68000 games porting experiment

Postby calimero » Mon Dec 24, 2012 8:00 am

NGF wrote:
The dream would ofcourse be Castlevania or Street fighter (with 6 button jagpad support) but i doubt it would be very fast, its better to have games close to full speed

Maybe supervidel could help there ;)
using Atari since 1986.http://wet.atari.orghttp://milan.kovac.cc/atari/software/ ・ Atari Falcon030/CT63/SV ・ Atari STe ・ Atari Mega4/MegaFile30/SM124 ・ Amiga 1200/PPC ・ Amiga 500 ・ C64 ・ ZX Spectrum ・ RPi ・ MagiC! ・ MiNT 1.18 ・ OS X

User avatar
CiH
Atari God
Atari God
Posts: 1135
Joined: Wed Feb 11, 2004 4:34 pm
Location: Middle Earth (Npton) UK
Contact:

Re: The X68000 games porting experiment

Postby CiH » Mon Dec 24, 2012 10:55 am

Finish Pacmania, definitely please!
"Where teh feck is teh Hash key on this Mac?!"

mikro
Hardware Guru
Hardware Guru
Posts: 1994
Joined: Sat Sep 10, 2005 11:11 am
Location: Kosice, Slovakia
Contact:

Re: The X68000 games porting experiment

Postby mikro » Wed Dec 26, 2012 10:05 am

EvilFranky wrote:Hmm, I'm not 100% sure but I think ADPCM was used in the TBL demos which were converted to the Falcon by Mikro??

Music is MPEG-1 Audio Layer II aka MP2 :) So it's actually better quality for less money (thanks to DSP). Maybe you could take this path, too? (using NoCrew's MP2 player)

User avatar
Desty
Atari God
Atari God
Posts: 1962
Joined: Thu Apr 01, 2004 2:36 pm
Location: 53 21N 6 18W
Contact:

Re: The X68000 games porting experiment

Postby Desty » Thu Jan 10, 2013 5:51 pm

MrMaddog wrote:I know it's still experimental right now, but it would be great to play a proper version of Street Fighter II... :cheers:

And also the X68000 version of Castlevania is wicked. Played it on the PSX once, but it's so rare to find.

Totally agreed! The Atari ST version of SF2 is almost an insult to humanity. Justice must be done, and porting the X68000 version, even to the Falcon or TT only, would be a step toward redemption. :D
Last year I was planning to write a 68k disassembler capable of properly disassembling the SF2 arcade binary (also a 68000 board, probably very similar to the X68000 setup and maybe sharing portions of the code), since several existing disassemblers didn't seem to work well with the MAME dump. It seems that parts of the binary are interspersed with chunks of data which the disassemblers get confused by, and produce garbage instructions or illegal opcodes which fail to assemble later. Not sure why they don't just fall back to DC.B when encountering illegal instructions. Maybe the X68000 version is more accessible in terms of binary layout and data in actual files etc.

A decent Castlevania port would be amazing on the ST, too - I've only played the brilliant SOTN on PSX and a tiny bit of Castlevania IV (IIRC) on SNES, great fun.
tá'n poc ar buile!

User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 666
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: The X68000 games porting experiment

Postby Anima » Thu Jan 10, 2013 7:09 pm

Desty wrote:Last year I was planning to write a 68k disassembler capable of properly disassembling the SF2 arcade binary (also a 68000 board, probably very similar to the X68000 setup and maybe sharing portions of the code), since several existing disassemblers didn't seem to work well with the MAME dump. It seems that parts of the binary are interspersed with chunks of data which the disassemblers get confused by, and produce garbage instructions or illegal opcodes which fail to assemble later. Not sure why they don't just fall back to DC.B when encountering illegal instructions. Maybe the X68000 version is more accessible in terms of binary layout and data in actual files etc.


Interesting story. I am not sure if the CPS-1/2 protection has something to do with this!?

So you have stopped any further development then? What was your intention? ;)

Desty wrote:A decent Castlevania port would be amazing on the ST, too - I've only played the brilliant SOTN on PSX and a tiny bit of Castlevania IV (IIRC) on SNES, great fun.


Castlevania X68000 unfortunately uses transparencies and a lot of parallax layers so this will be a though contender. :D

Cheers
Sascha

EvilFranky
Atari Super Hero
Atari Super Hero
Posts: 868
Joined: Thu Sep 11, 2003 10:49 pm
Location: UK
Contact:

Re: The X68000 games porting experiment

Postby EvilFranky » Thu Jan 10, 2013 7:18 pm

Do you think it would be possible to disable the parallax layers to provide a 'cut down' version? :)

User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 666
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: The X68000 games porting experiment

Postby Anima » Thu Jan 10, 2013 7:50 pm

EvilFranky wrote:Do you think it would be possible to disable the parallax layers to provide a 'cut down' version? :)


Theoretically the parallax scrolling can be "disabled" by modifying the parallax scolling speed to match it with the main layer. The result would be a "static" background which is still visible but the Atari specific code doesn't need to update it and only the "upcoming" graphics needs to be drawn. IMHO the game experience wouldn't change much while playing. So basically the answer is: yes. ;)

Well, take a look at this original gameplay (forwarded to the interesting part):

http://www.youtube.com/watch?v=FfbfTM6S ... age#t=480s

So in conclusion the transparency used for the water needs to be disabled at all and so the impression of water wouldn't be there. The question is: is the transparency a crucial part of the game or not? IMHO it's not... :D

Cheers
Sascha

EvilFranky
Atari Super Hero
Atari Super Hero
Posts: 868
Joined: Thu Sep 11, 2003 10:49 pm
Location: UK
Contact:

Re: The X68000 games porting experiment

Postby EvilFranky » Thu Jan 10, 2013 7:56 pm

Yep, that wouldn't make a big difference for the actual gameplay. That rather large Undead Dragon sprite a couple of minutes later might be difficult to pull off! lol :mrgreen:

User avatar
CiH
Atari God
Atari God
Posts: 1135
Joined: Wed Feb 11, 2004 4:34 pm
Location: Middle Earth (Npton) UK
Contact:

Re: The X68000 games porting experiment

Postby CiH » Thu Jan 10, 2013 11:48 pm

And as this thread has resurfaced. Here's the tiniest and most gentle of bumps possible to find out how things are doing overall.

It's not even a bump, more of an accidental brushing past, with profuse apologies afterwards. If the answer is "Nothing much doing since the last time, other stuff got in the way." Then I'll understand :D
"Where teh feck is teh Hash key on this Mac?!"

User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 666
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: The X68000 games porting experiment

Postby Anima » Fri Jan 11, 2013 6:24 am

Hello guys,

as requested here's a short update.

After cleaning up the code mess from the Galaga 88 sources I've got PacMania running with the optimized sprite routine. The text layer as well as the pills are still missing and the intermission screens are skipped due to the disabled music synchronization. Also the size of the screen is 256 x 240 pixels but this is compatible to RGB/TV and VGA.

Press left [SHIFT] to start the game and good luck finding the invisible pills. :D
You can press [C] in game to "cheat" and finish a round early.
[ESC] exits to the desktop.

Just let me know if you have problems on accelerated machines.

Finally here's the game: http://www.atomic-skulls.de/temp/PACMANIA.zip

Cheers
Sascha

User avatar
Desty
Atari God
Atari God
Posts: 1962
Joined: Thu Apr 01, 2004 2:36 pm
Location: 53 21N 6 18W
Contact:

Re: The X68000 games porting experiment

Postby Desty » Fri Jan 11, 2013 1:08 pm

Anima wrote:Interesting story. I am not sure if the CPS-1/2 protection has something to do with this!?

So you have stopped any further development then? What was your intention? ;)

It's straightforward to step through the code in the MAME debugger; it might just be that I don't know enough about the layout of the binary in the multiple ROMs. And the disassemblers I tried (including Desert Drain and a couple of other Atari jobbies) expected a familiar TOS layout too, I guess?
It was more for kicks than anything - I wanted to modify the SF2 World Warrior ROM to allow the bosses to be selected (they are entertainingly overpowered in that version), but realised MAME wouldn't let me overwrite memory that was in emulated ROM space. So I wanted to disassemble, patch and reassemble it... soon enough I'll come back to it :)

Must say I'm really enthusiastic about the progress of your X68000->ST ports project! It's a compelling idea and you're getting a lot done quickly :)
tá'n poc ar buile!

User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 666
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: The X68000 games porting experiment

Postby Anima » Fri Jan 11, 2013 3:14 pm

Desty wrote:It's straightforward to step through the code in the MAME debugger; it might just be that I don't know enough about the layout of the binary in the multiple ROMs. And the disassemblers I tried (including Desert Drain and a couple of other Atari jobbies) expected a familiar TOS layout too, I guess?
It was more for kicks than anything - I wanted to modify the SF2 World Warrior ROM to allow the bosses to be selected (they are entertainingly overpowered in that version), but realised MAME wouldn't let me overwrite memory that was in emulated ROM space. So I wanted to disassemble, patch and reassemble it... soon enough I'll come back to it :)


Disassembling a game and simply reassembling the resulting source doesn't usually work as expected. Even the first step can be quite complicated if you don't follow some rules. At first you need to have a binary exact assembly output compared to the original. So the first priority for an easy porting is to have a good control of your disassembled source output and this can be rather cumbersome with the existing disassemblers. But even having a good disassembly doesn't mean you can take the code for porting easily. Actually, there are a few code traps which can be really nasty and annoying.

So in conclusion I have written an own M68000 disassembler which is able to give me an output which is quite good for the porting process in respect of all the issues mentioned above. It's not perfect but in fact it worked better than expected. ;)

The next step is to try to understand the source code and this is only possible by renaming labels to have a good idea how the game works. But this is a different story.

"And now for something completely different":

The CPS-1 is very similar to the X68000 system but I haven't seen any good system descriptions yet. The only source is http://patpend.net/technical/arcade/cps1.html but that's all I've found so far. Does anyone know a more complete documentation? I know that the MAME source is a good "source" of information as well but I prefer a classic documentation. ;)

Probably the CPS-1 games would be good candidates for a port but many of them are also available on the X68000. So let's wait and see... ;)

Cheers
Sascha

User avatar
NGF
Captain Atari
Captain Atari
Posts: 389
Joined: Tue Nov 22, 2005 9:22 pm
Location: Stockholm, Sweden

Re: The X68000 games porting experiment

Postby NGF » Fri Jan 11, 2013 6:23 pm

What about Mega Drive? Slower CPU and less colors than those other systems. Perhaps Flashback would be a good candidate. But no rush X68000 have plenty of games :)
"4160" STE with Ultrasatan | Falcon 030 14MB with CF-reader | TT030 | STacy | 520STFM x 2 | 520ST x 2

User avatar
Anima
Atari Super Hero
Atari Super Hero
Posts: 666
Joined: Fri Mar 06, 2009 9:43 am
Contact:

Re: The X68000 games porting experiment

Postby Anima » Fri Jan 11, 2013 7:42 pm

NGF wrote:What about Mega Drive? Slower CPU and less colors than those other systems. Perhaps Flashback would be a good candidate. But no rush X68000 have plenty of games :)


Sure, the Mega Drive is definitely a good candidate. It seems that the development documentation is quite good AFAIK.

Well, time will tell... :D

Cheers
Sascha

User avatar
CiH
Atari God
Atari God
Posts: 1135
Joined: Wed Feb 11, 2004 4:34 pm
Location: Middle Earth (Npton) UK
Contact:

Re: The X68000 games porting experiment

Postby CiH » Fri Jan 11, 2013 10:26 pm

Here's my short report on Pacmania...

The compatibility is about the same as for Galaga 88. It works just fine on my Centurbo 2 system at constant full speed without having to fiddle with anything. :D

My CT60 will run this with cache delay/caches off. If it is trying to run with no delay and caches on, it will hang on the title screen without Pacman and his little ghost friends appearing. Interestingly, with cache off, there is a noticeable but not horrible slowdown. Clearly optimisation has made a huge difference from the early proof of concept version. It is possible to put the cache back on and regain the full in-game speed, the residual effects of changing the cache do not appear to take effect before the next reboot?

I guess that issues like the invisible pills, and sprites disappearing completely at the very bottom of the play area will be sorted in good time. :mrgreen:
"Where teh feck is teh Hash key on this Mac?!"


Social Media

     

Return to “680x0”

Who is online

Users browsing this forum: No registered users and 2 guests