Address Description
6289
Show title picture (two ninjas)
6590
Tile screen 0 30x17 tiles, 510 bytes - background
734A
Proceed to the next room token (redirect to B702)
734D
Room token #0E: Put one tile at the given address; params: 3 bytes (tile, address)
7359
Room token #0D: Set border color; params: 1 byte
7361
Room token #?? - Draw frame with one tile; params: 1 byte - UNUSED
7381
Room token #01: Fill to down; params: 4 bytes (count, filler, address)
7395
Room token #0A: Fill to down-right; params: 4 bytes (count, filler, address)
739A
Room token #0B: Fill to down-left; params: 4 bytes (count, filler, address)
739F
Room token #02: Fill to right; params: 4 bytes (count, filler, address)
73A4
Room token #06: Fill triangle from wide top
73C5
Room token #07: Fill triangle from wide bottom; params: 4 bytes (filler, count, address)
73EB
Room token #08: Fill triangle from wide bottom; params: 4 bytes (filler, count, address)
73EF
Room token #09: Fill triangle from wide top
73F3
Room token #04: Fill whole Tile screen 0 with one tile; params: 1 byte (filler)
7406
Room token #05: Copy block of tiles; params: 6 bytes (width, height, srcaddr, address)
742B
Room token #0C: Copy block of tiles N times; params: 6 bytes (srcaddr, width, count, address)
7452
Room token #03: Fill rectangle; params: 5 bytes (filler, width, height, address)
7472
Routine at 7472
749E
Decreasing Energy
74CD
Draw NEAR/HELD item
7918
Room procedure (for 19 rooms with a guard)
791B
Rooms 7C9C/92EF initialization
9C44
Process a dog
9CA8
Part of Dog processing
9D5C
Set update flags for Dog, 4x3 tiles
9D75
Draw Dog facing left in tilemap
9D8B
?? something about Dog
9DCD
Initialize a dog
9DD9
Decrease Energy by B
A0DF
Room 94AB initialization
A0E8
Room 7DA9 initialization
A0ED
Room 7E8C initialization
A0F2
Room 920A initialization
A0F7
Room 8F84 initialization
A0FC
Room 8B71 initialization
A101
Room 8739 initialization
A106
Room 858F initialization
A10B
Room 84EE initialization
A110
Room 99A6 initialization
A115
Room 97F8 initialization
A11A
Room 94CF initialization
A11F
Room 9B51 initialization
A124
Room 9F3A initialization
A129
Room 9F7E initialization
A12E
Room 9EB8 initialization
A133
Room 9B19 initialization
A138
Room 9DF5 initialization
A13D
?? UNUSED??
A142
Room 7A17 initialization
A14A
Room 7D5A initialization
A14F
Room 7F48 initialization
A154
Room 7EF2 initialization
A15F
Room 909F initialization
A16A
Room 8FBD initialization
A16F
Room 92A7 initialization
A174
Room 8B25 initialization
A179
Room 8526 initialization
A17E
?? UNUSED??
A183
Room 95D6 initialization
A188
Room 968A initialization
A18D
Finish Room 97A6 initialization
A192
Room 9A9A initialization
A197
Room 9552 initialization
A19C
Room 9BE7 initialization
A1A1
Room 8D5C initialization
A1A6
Room 7C2E initialization
A1AF
Finish room initialization
A1B5
Room 7F9C initialization
A1C0
Room 8162 initialization
A1CB
Room 80A7 initialization
A1D6
Room 9B9D initialization
A353
Room 81E5 initialization
A35C
Room 7E05 initialization
A361
Room 83ED initialization
A366
Room 924E initialization
A36B
Room 91BA initialization
A370
Room 90DB initialization
A375
Room 8802 initialization
A37A
Room 8608 initialization
A37F
Room 844E initialization
A384
Room 9739 initialization
A389
Room 9A5A initialization
A38E
Room 80F6 initialization
A3B5
?? something about Ninja and Guard
A3D1
?? something about Ninja and Guard
A3EE
?? something about Ninja and Guard
A418
?? something about Ninja and Guard
A434
?? something about Guard
A75B
Set update flags for Guard, 6x7 tiles
A775
Translate Ninja tile A into Guard tile, using A787 table
AC44
Reset Guard data and Dog data
ACCA
Draw game screen frames and indicator text
AED1
Print string with standard font
AEF0
Routine at AEF0
AF9C
Routine at AF9C
B005
Print table of records
B040
Routine at B040
B148
Draw tile map on the screen
B2E8
Mirror byte if needed
B2FE
Exchange $7239 (Ninja direction) and $71CD (dog direction)
B30F
Exchange $7239 (Ninja direction) and $7347 (Guard direction)
B320
Object procedure: flip trigger "D": set/remove wall in room 9739
B32A
Object procedure: flip trigger "E": set/remove wall in room 97A6
B334
Object procedure: flip trigger "C": set/remove wall in room 8D5C
B33E
Object procedure: flip trigger "B": set/remove wall in room 8F20
B348
Object procedure: flip trigger "A": set/remove wall in room 7F48
B368
Room 97A6 initialization
B371
Play melody ??; HL = melody address
B38F
Room token #00: Barrel, 3x3 tiles 7C21; params: 2 bytes (address)
B3B0
Routine at B3B0
B40A
Initialize a guard
B41F
Standard room procedure (for 63 rooms)
B422
Standard room initialization (for 60 rooms)
B425
Rooms 7C9C/92EF initialization (redirect from 791B)
B42E
Room 79C6 initialization
B437
UNUSED: Room XXXX initialization
B446
Room B513 procedure (initial Room)
B44C
Room procedure (for 19 rooms with a guard) (redirect from 7918)
B452
Room procedure (for 18 rooms with a dog)
B458
Room procedure (for 5 rooms with a guard and a dog)
B461
Turret initialization
B47A
Room procedure (for 2 rooms with a turret and a dog)
B483
Room procedure (for 14 rooms with a turret)
B489
Process turret
B4DE
Increase PAY value by B * 100
B4FA
Processing in initial room - the boat moving
B532
Movement handler for initial room (B8CE handler)
B596
Routine at B596
B59E
Routine at B59E
B5C7
Routine at B5C7
B66A
Current Room changed, entering the new Room
B702
Proceed to the next room token
B724
Finish room initialization
B77B
Game loop start
B83C
Increase Energy a bit
B851
Set initial data in Table of Objects
B86C
?? Adjust table 751B by DE
B889
Routine at B889
B8D0
Update Ninja on tilemap
B937
Standard room procedure (redirect from B41F)
BAD5
Routine at BAD5
BBAE
Routine at BBAE
BBBB
Set update flags for Ninja, 6x7 tiles
BBD4
Movement handler: Ninja punching
BBDF
Read Input
BC0D
Routine at BC0D
BC55
Movement handler: Ninja standing
BD33
Routine at BD33
BD37
Fire pressed, Ninja standing, no object nearby
BDAF
Ninja standing (redirect)
BDB2
Routine at BDB2
BDDD
Routine at BDDD
BE0D
?? Movement handler
BE5A
Ninja sit, and then fall and DIE
BE63
Movement handler (B8CE handler): Ninja dead
BE71
Time is out
BEB3
Movement handler: Game Over
BF7B
Routine at BF7B
BFB0
Set movement handler = HL, set Ninja sprite = DE
BFBA
Routine at BFBA
BFD5
Escaped; clear screen, show final messages, then Game Over
C094
?? Movement handler (helicopter?)
C12E
Ninja on ladder
C13D
Routine at C13D
C1B6
Movement handler ?? (B8CE handler)
C226
Ninja standing
C22F
Movement handler (B8CE handler): Ninja sitting
C24B
Movement handler (B8CE handler): Ninja walking
C2FA
Going to room at Right
C319
Going to room at Left
C339
Movement handler (B8CE handler): Ninja jumping
C392
Check if tile is a ladder
C3BB
Move LEFT one tile
C3CF
Move RIGHT one tile
C3D9
Movement handler (B8CE handler): Ninja on ladder
C498
Move DOWN one tile
C4A4
Routine at C4A4
C4A7
?? Movement handler
C4DE
?? Movement handler
C4E8
Routine at C4E8
C4F6
Movement handler (used in initial room)
C50D
Movement handler ??
C57B
Routine at C57B
C5A0
Switch Ninja to standing (redirect)
C5A3
Check for falling
C5C6
Movement handler: Ninja falling down
C604
Going to room Down from current
C623
Going to room Up from current
C643
Ninja falling
C64C
Room 791E (room with pier) initialization
C671
Room 93DF/947C (room right from Train) initialization
C681
Room 982B initialization
C6A5
Room 7C9C procedure (tunnel Train)
C6E2
Movement handler (B8CE handler): Train moving left
C70C
Movement handler (B8CE handler): Train moving right
DE68
Find record for the current room in DE84 table
DEC1
Clear strings on the screen
DF37
Routine at DF37
DF60
Main menu
DFD4
Clear LASTK and do RST $38 once
DFDB
Highlight Menu item
DFE6
Unhighlight Menu item
DFF1
Joystick selected in Main menu
E004
Keyboard selected in Main menu
E015
Protek selected in Main menu
E04D
Clear key buffer playing melody
E097
Redefine Keys
E2A7
Start Mission
E440
Play next note in melody
F913
Routine at F913
F973
Room 84A8 initialization
F9A1
Sound ??
F9B9
Pause, then wait for any key pressed
F9E4
Routine at F9E4
F9E7
Start point after loading
F9F9
Routine at F9F9
FA11
Routine at FA11
FA28
Routine at FA28
FA31
Decrease Energy by B + Sound