Getting started

To reproduce this disassembly you need Python 3 (with Pillow for the pictures), GNU make and Pasmo. The cartridge image does not travel in this repository: bring your own.

kingkong2.rom    131,072 bytes
sha256           9c42a0b4d4219176e0e894c434deb0b479cde3ce9edbd9e99395a8baae6c01d6

With the file at the root of the repository:

make            # listing, verification, consistency and tests

What each step does

commandwhat it does
make compruebachecks the sha256 of the ROM
make semillastraces the whole cartridge and gets the entry points of each bank
make listadobuilds the sixteen .asm files from the binary, the notes and the seeds
make verifyreassembles each bank and the whole ROM, and compares the sha256
make sanitychecks that not a single byte is left unassigned to code or data
make testthe tests
make densidadhow many instructions carry a comment, routine by routine
make webbuilds the HTML pages and checks the links

make verify is the one that decides: it has to end with OK: la ROM entera reproducible byte a byte.

The pictures in docs/imagenes/ are drawn from the ROM by the tools in tools/: titulo.py, mapa.py and marcas.py, figuras.py, jefes.py and objetos.py. coteja.py compares them with the openMSX dumps, which do not travel in the repository: they are made with the launchers in In the emulator.

Where everything is