Re: [stella] Pitfall! disassembly

Subject: Re: [stella] Pitfall! disassembly
From: "Roger Williams" <mer02@xxxxxxxxxxxxx>
Date: Thu, 11 Oct 2001 19:39:11 -0700
> Thomas, how do you do it? I mean, can you explain shortly the process of
> disassembling such a complex game? I've never done much disassembly work,
> but I feel that it could be more difficult than writing my own code.

Well, Thomas didn't answer this, so I'll give you a little insight.  This
is a great job, incidentally, Thomas.

Disassembly is much more difficult than writing your own code.  The
first steps are also the hardest.  You must wade through a sea of
unfamiliar and uncommented hex codes and potential instructions (since
you don't know what's code and what's data at first) looking for a
"Rosetta Stone."  Fortunately the 2600 is chockablock full of potential
Rosetta Stone material.  You could look for references to the joystick
ports, or the very universal snippets used for vertical sync which bracket
a kernel.  You can quickly figure out where bitmaps are, where sprites
are being positioned, and so on.  The way I approached this when I was
young and had a lot of spare time was to make a large memory map of
the application, as well as a listing of the raw disassembly.  As I figured
out what a code snippet or subroutine did I'd color it out on the memory
map and comment it (in pen and ink) on the disassembly.  Nowadays
I'd probably still use the paper printout, but also flesh it out in a text
editor as I'm going.  Back when I did this kind of stuff, I didn't have
disk drives...

Reverse assembling the output of a Real Programmer (tm) Mel type
2600 programmer is undoubtably the hardest type of reverse assembly
of all.  Your source programmer may be relying on obscure properties
of little-used instructions, behavior of flags, or other things you would
take for granted in your own code.  You may also not know whether
cycle counts are critical until you count them.  4K or 16K doesn't sound
like much but it's a great deal of information presented to human eyes
1 byte at a time.  My hat is off to the people who have bothered to
do this, and who have shared the results of their archaeology with us.

--Roger Williams




-
Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://www.biglist.com/lists/stella/

Current Thread