[stella] Indy 500 disassembly (first pass)

Subject: [stella] Indy 500 disassembly (first pass)
From: Glenn Saunders <mos6507@xxxxxxxxxxx>
Date: Mon, 05 Jan 2004 23:07:36 -0800
Here is my first pass disassembly of Indy 500, about 8 hours worth of work renaming addresses and trying to figure out what the RAM is used for.

I suspect a lot of my guesses are inaccurate, but it's a starting point.

I'd appreciate it if someone who is good at this (like Thomas) could QC my work and hopefully bring it further to completion.

It's worth looking at by everyone on the list, though.

I noticed some funky stylistic things. The programmer likes to use INC loops instead of DEC loops which is code-bloaty. I think he's using an incrementing scanline counter which is unusual.

What I'm especially interested in figuring out is the physics section that handles the car movement. It looks pretty compact for all it does. I see what looks like several sets of RAM variables to handle car attributes (probably current speed, direction, effective speed [i.e. drift], etc...). I'd love to see a line by line commentary of the how and why of all this.

As a bonus I included a commented out section of Death Derby car shapes if anyone is interested in seeing what the game would look like with alternate cars. The DD cars are only 6x8 in most angles so it does alter the gameplay slightly by giving the cars a more compact profile.

Attachment: indy_500_pass_01.zip
Description: Zip archive

Current Thread