Comments 36

Re: Here's F-Zero Running On The Sega Genesis (Kinda)

snk2d4life

A few remarks to clarify why this is technically impressive:

The Genesis is well-suited for rendering roads with raster effects. This technique involves altering scrolling registers and palettes mid-frame in order to make something that looks like a road. It can be extended to simulate curves and hills. Examples include almost every commercial racing game such as Road Rash and the Genesis version of Outrun. See http://www.extentofthejam.com/pseudo/

The obvious way to port F-Zero to Genesis would be to rip F-Zero assets, but build the engine using raster effects just like most other Genesis racing games. However, this demo doesn't appear to be using raster effects. Rather, it is actually applying affine transforms to the background and performing real scaling and rotation. This is what Mode 7 on the SNES does--it performs hardware-accelerated affine transforms on a surface.

The Genesis does not have hardware-accelerated affine transforms. (The SegaCD actually does, but I presume this isn't using a SegaCD). Since the Genesis doesn't have hardware to help with this calculation, that means that the calculation is happening in software and utilizing only the CPU (possibly both CPUs, but probably just the 68000). Of course, you can use the CPU to calculate anything, but in order for the game to run at a good frame rate, the software must be optimized to run affine transforms very fast. I can't tell the frame rate just by looking at it, but it's smooth enough that it's maybe 15-30fps? That requires a lot of optimization, which isn't an easy feat.

Also, bonus points for the killer YM2612 cover of Port Town