Pages

Friday, 21 October 2022

Graphics conversions and Neo Geo

A bit of a break from commenting the RE today.

When I did Scramble I wrote a utility that took all the graphics (palette, CLUT, tile and sprite) information and created a file with a series of C arrays with the simplest format (1 byte per pixel) and possible and a fixed orientation. The idea was that any further conversion (Neo Geo etc) would be much simpler (and easier to understand should I ever revisit it in future). Having a standard format also means my other tools, like Neo Geo converters, don't need to be re-written for future projects.

I hadn't done this for Xevious, so I rectified that today. I then updated my map tool to remove all the loading of data from intermediate formats and instead use the C arrays. Much cleaner now.

I then took the utility that I wrote for Scramble to convert the graphics to Neo Geo sprites, and modified it for Xevious, which has two tilemap sets, more tiles & sprites, and greater colour depth. As mentioned above, this tools should now work for future projects as well.

Here's a snippet from an online tool that displays Neo Geo sprites from the C ROM data...

Some of the freshly-converted Xevious sprites for the Neo Geo

I've been thinking a lot about the next step and I've decided to bite the bullet and attempt a platform-agnostic 68K ASM core. The intention is to get it running on the Neo Geo and Amiga simultaneously. If it works out like I'm planning, the OS-dependent (host) layer can be written fairly early on and allow much of the transcoding to actually run as it is being developed. I'm hoping to enlist some help with the Amiga side of things, so I thought I'd get some sort of framework up and running on the Neo Geo. Hence the graphics conversion today.

First order of business will be getting a scrolling map. Then I'll add some sprites, and some foreground tiles just to round out the interface, before starting on the transcode itself.

Of course there's the small matter of finishing the RE too...

No comments:

Post a Comment