Skip to end of metadata
Go to start of metadata

The ROM disassemblies use FDisasm, usually running in minivmac.

Check out the rom_disasm svn repository onto your local system using your forum username/password:

svn co --username <forumusername>

The important files to FDisasm are: bin, bin_map, bin_names, abs_names, format, and trap_names.  Import those into minivmac using ImportFl.

bin: the binary to disassemble (ROM)

bin_map: a description of where code & data start and stop.  Typically this file isn't necessarily hand edited, but can be generated/updated using FindCode.

bin_names: this file contains the names associated with a given offset.  Typically new entries are added by FindCode, and then updated by hand with more descriptive names.

abs_names: a list of symbolic names for absolute values, such as fixed global addresses (low memory globals, etc.)

format: comments!  Add your description of what's going on in this file

trap_names: the symbolic names for A-Traps

Make sure FDisasm is located in the same folder as the imported files, and and run it.  This will generate a file named 'listing'.  I generally export this out of minivmac for easier viewing, using the ExportFl.  Once exported, you can convert the file's mac line endings to unix line endings using:

perl -pi -e 's/\r/\n/g' listing

When getting ready to commit your changes, keep in mind that bin shouldn't change, the listing file is in unix line endings (converted from mac line endings as above), and the remaining files are left in mac line breaks for easy import and use by FDisasm.


There's also some discussion and walking through of the process starting here

  • None