Which bytes are code was found by running the game, not by reading it. The build plays it in SkoolKit's simulator -- with each control method, walking, turning, jumping, firing, picking up and putting down, pausing, in every room, and through staged scenes for the quest, the ending, game over, and the things that fall from the sky -- and records every address the processor fetches an instruction from. Recursive descent then follows the branches out of what ran, and the jump table of update routines (
UPDATES), inventing nothing. Everything else is data.
The level data -- the room directory (
ROOMS), the scenery and object templates, the graphic table (
GRAPHICS), the sprites and the font -- is laid out a record per entry from the game's own bytes each time the disassembly is built, so the game's design is never written into the repository's files. Each sprite's picture is drawn from its bytes the way the game's drawing code reads them.
The listing reassembles byte for byte with sjasmplus, and the snapshot rebuilt from it is the one the tape made, byte for byte.