What turned up when the cartridge was taken apart. Each one says where it comes from and how it is checked: seen in openMSX, checked (drawn from the ROM and compared with a dump) or from the code (read in the listing, not played).
The game counts the days (0xC127, one every 2048 frames: about 34 seconds) and the times you have continued after GAME OVER (0xC16E, p01:66DD). On finding LADY KONG, p06:A837 chooses the ending:
| condition | ending |
|---|---|
| 366 days or more | too late: «AMY could do nothing: KING KONG has just died» |
| otherwise, 51 continues or more | AMY operates and KING KONG comes back to life |
| fewer than 51 | the same, and a baby KONG as well |
The texts are the ROM's (p06:AD44-AF40). From the code.
With TAB and an F key held down when the game starts (on pressing SPACE during the demo), p01:67F3 leaves in 0xC11E the level you start with: F1 10, F2 20, F3 30, F4 40 and F5 50; p00:5388 copies it to LEVEL.
Seen in openMSX (tools/omsx_truco.tcl): without the trick, LEVEL 00; TAB+F1, 10; TAB+F4, 40, in RAM and on the panel.
p09:BB14 decides whether the SHOT1 weapon does anything to the enemy, and p09:BAE8 looks separately at the sword of light, the axe and the harpoon:
Reading p09:BAFC it looked as if the sword of light hurt nobody: the scf at p09:BAFF always leaves the «yes» flag. From the code.
No shop sells the axe (p12:B548). BOWLER drops it every 16 kills if you do not carry it (p03:BBA9), except on screen 0x22, where every 5 it leaves someone who talks. Every enemy has its loot (p03:BA66 and p03:BA06) and its count (0xDFC0-0xDFDB, which p06:BF86 sets at the start):
From the code.
Lined up on a tile, THE NOT reads the player's keys (0xC107) and chooses the opposite direction with the table at p02:9201: up for down, left for right. One time in four it goes at random; once it is hit, always at random (0xDFB5). BOWLER, in its step 1, goes with the keys (p02:8986), and the worms (PIGWORM, BUCKLER, GRASSOGRE) move away from where Mitchel is facing if any key is pressed (p03:B190). From the code.
BIGFLOWER, TWINMIRES, THE NASTY, BADPRIEST and REVOLVER are not sprites. On entering their screen, p00:4BD0 uploads their figure raw to page 1 (p14: [mirror][rows][bytes][VRAM] and the bytes), and a second time mirrored if it carries the flag. Every time they move or open their mouth, their routines copy it to page 0 with LMMM and TIMP. Before that, p00:446E saves 64 × 64 dots of the background at (0x90, 0x60) of page 1 to put it back later.
Checked: tools/jefes.py rebuilds what p00:4BD0 uploads on the seven screens (0x29, 0x31, 0x34, 0x53, 0x57, 0x5C and 0x5D) and gives 0 bytes different against the dumps.
All of it marked on the map, from the tables.
Using the durian on the right screen and spot (p01:7D33) sets state 6 of the game: the durian on the ground, the weapons gone, 30 frames, a tune, and to screen 0x5F. From there, an eight-sprite figure (0xC600) follows Mitchel along his path, 22 steps behind (p02:829A). If you change screen it stays waiting until you come back. While it is with you, the radio gives another conversation (0x38 instead of 0x37): «Good work, MITCHEL. We are on our way». From the code.
There is a thing that can be pushed (0xC800) and that travels from screen to screen: it starts on screen 8, at (0x50, 0x50), and pushing it over the edge moves it to the next screen (p12:BE68). Only outdoors; on screens 0-2 and on 4 it goes back to its place. From the code.
MUDMASK, BOGGEDMAN and BLOWPIPER have names, but their every-frame routine (p01:690D) and their creation routine (p00:5BA6) are a ret. From the code.