English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   project.CARE (https://eab.abime.net/forumdisplay.php?f=58)
-   -   The X68000 games porting experiment (https://eab.abime.net/showthread.php?t=67440)

AnimaInCorpore 18 January 2013 09:59

The X68000 games porting experiment
 
Hello guys,

I am about to port some X68000 games to the Atari Falcon030. Is there any interest in having that ports on the Amiga as well?

The progress so far:

Galaga 88 fully playable on an Atari Falcon030 (16 MHz, 14 MB RAM) but lacks sound though.

PacMania in an early "emulation" stage.

Atomic Runner Chelnov in a "label renaming" process. ;)

Since I don't have an Amiga I would like to know if someone is interested to help in respect of doing the port for the Amiga 1200?

Cheers
Sascha

Amiga1992 18 January 2013 12:44

YES!
Galaga 88 is fantastic and Pac-Mania's X68000 port is pixel-perfect.

But if we need something like an 060, then it becomes a bit out of the league of most users.

Sound would be a problem, though. How are you handling it in the Falcon? Because the X68Ks have, besides the DAC, an FM synthesizer.

AnimaInCorpore 18 January 2013 14:09

Quote:

Originally Posted by Akira (Post 862555)
YES!
Galaga 88 is fantastic and Pac-Mania's X68000 port is pixel-perfect.

But if we need something like an 060, then it becomes a bit out of the league of most users.

Sound would be a problem, though. How are you handling it in the Falcon? Because the X68Ks have, besides the DAC, an FM synthesizer.

Well, the port itself is more an optimized graphic emulation layer added to the original game which runs natively on the Falcon030. So Galaga 88 is not completely optimized for the Falcon030.

Music and sound is not emulated yet but the DSP subsystem could do this later on. In fact, the audio logic is "outsourced" to a memory resident program which is started right before the game. This is quite a common practice on the X68000.

Cheers
Sascha

Retro1234 18 January 2013 14:37

Sorry I can't help but very interested in your project :great WinUae is an excellent Amiga emulator witch might help with development

Amiga1992 18 January 2013 16:52

Quote:

Originally Posted by AnimaInCorpore (Post 862559)
Music and sound is not emulated yet but the DSP subsystem could do this later on. In fact, the audio logic is "outsourced" to a memory resident program which is started right before the game. This is quite a common practice on the X68000.

You are right, I remember this from when I used to dabble with X68K emulation.
I think on the Amiga it will be pretty impossible to keep music AS IS unless you have a beefier system on which you can run an FM emulator system, or even send the data through MIDI if you have a MIDI innterface, to an external module (the X68K could do this if I remember correctly)

AnimaInCorpore 18 January 2013 17:30

Quote:

Originally Posted by Akira (Post 862585)
I think on the Amiga it will be pretty impossible to keep music AS IS unless you have a beefier system on which you can run an FM emulator system, or even send the data through MIDI if you have a MIDI innterface, to an external module (the X68K could do this if I remember correctly)

I think this is one of the advantages of having a separate program for audio: you can choose which sound system you want to use and that's most probably the reason for the external program approach.

IMHO this audio interface within the game makes it relatively easy to create an Atari/Amiga proprietary audio solution for the port as the replay is commonly called by a "trap". So the commands are basically only: start_music(), stop_music(), play_sample(), wait_for_music()... ;)

Cheers
Sascha

Amiga1992 18 January 2013 17:35

But that's all fine and cool for sample-based audio in the game, whatever the X68 does on the DAC, but all calls to the YM2151 synth chip will go exactly where on a system like the Amiga with no such thing?
Re-composing those to MOD will be, well, quite a challenge for whoever wants to do the conversion.

In any case, I am really impressed of the results you obtained with the Falcon. I wonder how Galaga '88 would look on an 030 Amiga. Keep up the awesome work.

Jack Burton 19 January 2013 01:38

You did an amazing job Sascha, especially considering your port runs on an unaccelerated Falcon030 ! :great
For what I understand you used the Falcon030 65K color mode, an advantage the Falcon030 has over the A1200. Hopefully the 256 colors AGA modes will not be a severe limitation for an Amiga port of Galaga88 or Pacmania if you intend to bring them to the Ami. Anyway it would be great to have such ports for the Amiga !

As for the audio, it's time for an YM2151 clockport card (:bowdown TheRogue) ! ;)

Amiga1992 19 January 2013 02:19

Quote:

Originally Posted by Jack Burton (Post 862686)
As for the audio, it's time for an YM2151 clockport card (:bowdown TheRogue) ! ;)

I would pap my pants if such a thing existed :D

Jack Burton 19 January 2013 10:44

Quote:

Originally Posted by Akira (Post 862687)
I would pap my pants if such a thing existed :D

Yeah, me too ! ;)

Retro1234 28 January 2013 19:10

How does an Amiga AGA 030 do against Atari Falcon030 ?

Retro1234 18 April 2014 02:13

NEO GEO emulation on the Atari Falcon 030
http://www.atari-forum.com/viewtopic...t=25780&start=
http://www.youtube.com/watch?v=hxPCYeHtg60

dlfrsilver 18 April 2014 04:35

just awesome, maybe once sascha release the source code ? :) hehe

Frog 18 April 2014 07:52

they look's like perfect port ! As weel as the Neo Geo emulation which own some pretty nice games (Blue's Jurney, Alpha Mission II, Puzzle Bobble, Last Resort, Last Hope, Magical Drop...)

Amicol 18 April 2014 17:54

YES!! PLEASE!
X68000 Akumajo Dracula is Awsome :great

gulliver 18 April 2014 18:26

Really nice hack!

The X68000 had some great games. I would be really cool to have this in our miggies.

saimon69 11 September 2014 07:28

let me bump on this: how is it going?

AnimaInCorpore 11 September 2014 09:08

Quote:

Originally Posted by saimon69 (Post 975275)
let me bump on this: how is it going?

Sadly there was no reply on the original help request. What I can offer is the assembler source of Galaga 88 and PacMania.

Cheers
Sascha

Wepl 11 September 2014 20:17

You did adapt the games by reassembling the code (in opposite to only modify the original code slightly)?

I would be interesting to know how difficult the gfx emulation/adaption is. If I remember right the x68k has good hardware sprites.

AnimaInCorpore 11 September 2014 20:52

Quote:

Originally Posted by Wepl (Post 975393)
You did adapt the games by reassembling the code (in opposite to only modify the original code slightly)?

I would be interesting to know how difficult the gfx emulation/adaption is. If I remember right the x68k has good hardware sprites.

Unfortunately I cannot link to the original discussion thread on the Atari-Forum where you can get more details about how the port was done. The AF webserver seems to have some serious problems and I hope that they'll sort it out soon.

However, the sources are disassembled and many important functions commented. The reassembled source runs natively on the X68000 again even with changes. So I was able to make a Pac-Mania trainer for the X68000.

The graphics emulation is done by putting "jsr" hooks in the source code where the sprites and background are being drawn on the Atari. The sound emulation was simply commented out.

The X68000 has indeed a decent sprite hardware but it is still limited by the fact that the memory mapped area of the sprite data is quite small. The games need to refresh that area to get all the sprites displayed so this results in either a DMA copy (Pac-Mania sprite animation) or caching (Galaga 88 compressed sprites) strategy.

What needs to be done for the Amiga port is to replace all the graphics functions and convert the graphics (sprites and backgrounds). This applies to the sound as well but that seems to be a far "simpler" task.

Cheers
Sascha


All times are GMT +2. The time now is 09:42.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.

Page generated in 0.08354 seconds with 11 queries