Saboteur | Disassembly |
|
||||
6270 | DEFB $3E,$00,$00,$00,$00,$00,$00,$00 | |||
6278 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
6280 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
6288 | DEFB $00 |
Used by the routine at BC0D.
|
||||
6289 | LD HL,$62DB | Encoded picture data address | ||
628C | LD DE,$6590 | Tile screens address, used as a buffer | ||
628F | LD A,(HL) | Load next byte of picture data | ||
6290 | CP $02 | check for control byte $02 - end of sequence | ||
6292 | JR Z,$62A9 | => Copy the buffer to screen | ||
6294 | INC HL | move to next source byte | ||
6295 | CP $00 | check for repeater marker | ||
6297 | JR Z,$62A1 | => repeat byte N times | ||
6299 | CP $FF | check for block marker | ||
629B | JR Z,$62A1 | => repeat byte N times | ||
629D | LD (DE),A | Store regular byte into tile screen | ||
629E | INC DE | next buffer address | ||
629F | JR $628F | Loop back to process next byte | ||
62A1 | LD B,(HL) | get repeat count | ||
62A2 | LD (DE),A | store repeated byte in buffer | ||
62A3 | INC DE | next buffer address | ||
62A4 | DJNZ $62A2 | repeat B times | ||
62A6 | INC HL | move to next source byte | ||
62A7 | JR $628F | continue processing | ||
Buffer is ready, copy to screen
|
||||
62A9 | LD HL,$4000 | Start of screen | ||
62AC | LD DE,$6590 | Tile screens address | ||
62AF | LD C,$0C | Number of columns = 12 | ||
62B1 | PUSH HL | save screen address | ||
62B2 | LD B,$18 | Number of rows = 24 | ||
62B4 | PUSH HL | save screen address | ||
62B5 | PUSH BC | save counters | ||
62B6 | LD B,$08 | 8 lines | ||
62B8 | LD A,(DE) | get picture byte | ||
62B9 | OR (HL) | bitwise OR with screen pixels | ||
62BA | LD (HL),A | put to the screen | ||
62BB | INC DE | next address in the buffer | ||
62BC | INC H | next line | ||
62BD | DJNZ $62B8 | Repeat 8 times | ||
62BF | POP BC | restore counters | ||
62C0 | POP HL | save screen address | ||
62C1 | RR H | |||
62C3 | RR H | |||
62C5 | RR H | |||
62C7 | PUSH DE | save address in picture buffer | ||
62C8 | LD DE,$0020 | 32 | ||
62CB | ADD HL,DE | move HL to next tile row | ||
62CC | POP DE | restore address in picture buffer | ||
62CD | RL H | |||
62CF | RL H | |||
62D1 | RL H | |||
62D3 | DJNZ $62B4 | continue loop for rows | ||
62D5 | POP HL | restore screen address | ||
62D6 | INC HL | next column | ||
62D7 | DEC C | decrement column counter | ||
62D8 | JR NZ,$62B1 | continue loop for columns | ||
62DA | RET |
|
||||
62DB | DEFB $00,$07,$FF,$01,$00,$01,$FF,$01 | ![]() |
||
62E3 | DEFB $03,$00,$14,$01,$01,$01,$01,$01 | |||
62EB | DEFB $01,$01,$03,$03,$03,$03,$03,$03 | |||
62F3 | DEFB $03,$03,$07,$07,$0F,$0F,$1F,$1F | |||
62FB | DEFB $0F,$0F,$0F,$07,$07,$07,$07,$03 | |||
6303 | DEFB $03,$03,$01,$01,$01,$00,$05,$01 | |||
630B | DEFB $01,$01,$01,$03,$03,$03,$07,$07 | |||
6313 | DEFB $07,$07,$03,$01,$00,$01,$01,$03 | |||
631B | DEFB $07,$03,$01,$01,$01,$03,$03,$07 | |||
6323 | DEFB $07,$0F,$0F,$0F,$0F,$0F,$0F,$1F | |||
632B | DEFB $6F,$EF,$F7,$F7,$FF,$01,$F7,$E7 | |||
6333 | DEFB $07,$07,$07,$03,$03,$03,$03,$03 | |||
633B | DEFB $03,$03,$03,$03,$01,$01,$01,$01 | |||
6343 | DEFB $01,$01,$01,$01,$01,$03,$07,$07 | |||
634B | DEFB $07,$03,$03,$03,$01,$01,$01,$01 | |||
6353 | DEFB $01,$00,$01,$01,$01,$01,$03,$07 | |||
635B | DEFB $03,$01,$01,$01,$01,$01,$01,$01 | |||
6363 | DEFB $00,$07,$01,$01,$01,$01,$01,$01 | |||
636B | DEFB $01,$00,$01,$01,$01,$01,$03,$03 | |||
6373 | DEFB $03,$03,$03,$01,$00,$13,$80,$7E | |||
637B | DEFB $FF,$01,$F8,$07,$00,$0D,$01,$07 | |||
6383 | DEFB $0F,$3F,$7F,$FF,$97,$7F,$3F,$1F | |||
638B | DEFB $00,$10,$07,$F8,$0A,$FD,$1D,$17 | |||
6393 | DEFB $10,$0F,$00,$05,$01,$0F,$3F,$FF | |||
639B | DEFB $03,$FE,$FC,$F8,$FB,$F7,$EF,$EF | |||
63A3 | DEFB $DF,$DF,$DF,$BF,$7F,$7E,$7E,$BF | |||
63AB | DEFB $BF,$DF,$EF,$FF,$07,$F8,$FF,$3C | |||
63B3 | DEFB $FD,$FC,$FC,$F8,$F8,$F8,$F0,$F8 | |||
63BB | DEFB $F8,$F8,$FC,$FC,$FC,$FE,$FE,$FE | |||
63C3 | DEFB $FF,$0B,$FE,$FE,$FE,$FC,$FC,$FC | |||
63CB | DEFB $FC,$F9,$F8,$F8,$F8,$F0,$F0,$F0 | |||
63D3 | DEFB $E0,$E0,$E0,$C0,$C0,$C0,$C0,$C0 | |||
63DB | DEFB $80,$80,$80,$80,$80,$C0,$E0,$E0 | |||
63E3 | DEFB $E0,$F0,$F8,$F8,$F8,$FC,$FC,$FC | |||
63EB | DEFB $FE,$FE,$FE,$FC,$F8,$C0,$00,$10 | |||
63F3 | DEFB $E0,$78,$8D,$23,$4F,$4F,$FF,$01 | |||
63FB | DEFB $0F,$9F,$7F,$7F,$7F,$FF,$02,$FC | |||
6403 | DEFB $F8,$E0,$C0,$00,$04,$FC,$FF,$07 | |||
640B | DEFB $00,$01,$FF,$01,$3F,$C0,$FE,$FE | |||
6413 | DEFB $FF,$04,$FB,$FB,$F7,$CF,$3F,$FF | |||
641B | DEFB $15,$FE,$FE,$FE,$FC,$FC,$FD,$FB | |||
6423 | DEFB $FB,$F7,$F7,$EF,$EF,$F7,$F7,$F4 | |||
642B | DEFB $F8,$F8,$FC,$FE,$FE,$FE,$FF,$14 | |||
6433 | DEFB $7F,$0F,$01,$00,$05,$01,$01,$01 | |||
643B | DEFB $03,$07,$07,$07,$07,$07,$0F,$0F | |||
6443 | DEFB $0F,$0F,$0F,$1F,$1F,$1F,$1F,$1F | |||
644B | DEFB $3F,$7F,$7F,$7F,$FF,$06,$FE,$00 | |||
6453 | DEFB $31,$F8,$FC,$FE,$FE,$FE,$FC,$FC | |||
645B | DEFB $FC,$FE,$FF,$03,$7F,$3F,$1F,$1F | |||
6463 | DEFB $1F,$3F,$3F,$3F,$7F,$7F,$FF,$05 | |||
646B | DEFB $7F,$7F,$7F,$7F,$7F,$FF,$06,$FE | |||
6473 | DEFB $F8,$F0,$F0,$E0,$C0,$80,$80,$C0 | |||
647B | DEFB $C0,$E0,$E0,$E0,$E0,$C0,$C0,$C0 | |||
6483 | DEFB $C0,$C0,$80,$80,$80,$80,$00,$09 | |||
648B | DEFB $80,$C0,$E0,$E0,$F0,$E0,$C0,$00 | |||
6493 | DEFB $02,$01,$01,$01,$01,$01,$01,$00 | |||
649B | DEFB $01,$C0,$E0,$F0,$FC,$FE,$FF,$33 | |||
64A3 | DEFB $00,$3C,$80,$80,$C0,$C0,$C0,$E0 | |||
64AB | DEFB $E0,$E0,$F0,$F0,$F8,$F8,$F8,$F0 | |||
64B3 | DEFB $F0,$E0,$C0,$C0,$C0,$C0,$C0,$80 | |||
64BB | DEFB $80,$80,$80,$00,$19,$01,$03,$03 | |||
64C3 | DEFB $07,$07,$07,$07,$0F,$3F,$3F,$07 | |||
64CB | DEFB $07,$07,$07,$07,$07,$07,$7F,$FF | |||
64D3 | DEFB $0C,$7F,$BF,$DF,$EF,$F7,$F7,$FB | |||
64DB | DEFB $FB,$FB,$FB,$FB,$FB,$FB,$FB,$FD | |||
64E3 | DEFB $FD,$FD,$FD,$FD,$FB,$FB,$F7,$F7 | |||
64EB | DEFB $EF,$EF,$DF,$DF,$BF,$BF,$BF,$BF | |||
64F3 | DEFB $BF,$BF,$BF,$7F,$7F,$7F,$7F,$78 | |||
64FB | DEFB $00,$03,$80,$C0,$F0,$F8,$F8,$FC | |||
6503 | DEFB $FE,$FC,$F8,$C0,$00,$6B,$0F,$3F | |||
650B | DEFB $FF,$05,$FE,$F0,$FF,$38,$F8,$F0 | |||
6513 | DEFB $E0,$C0,$00,$7B,$C0,$F0,$F8,$FC | |||
651B | DEFB $FC,$FC,$FC,$04,$04,$FC,$FC,$FC | |||
6523 | DEFB $FC,$FC,$F8,$F8,$FF,$30,$00,$02 | |||
652B | DEFB $01,$01,$01,$01,$01,$03,$03,$03 | |||
6533 | DEFB $03,$03,$01,$00,$83,$80,$F0,$FE | |||
653B | DEFB $FF,$02,$F8,$07,$FF,$07,$7F,$1F | |||
6543 | DEFB $07,$01,$00,$07,$E0,$FC,$FF,$22 | |||
654B | DEFB $00,$86,$38,$FF,$0E,$1F,$03,$00 | |||
6553 | DEFB $07,$E0,$FF,$15,$FE,$FC,$F8,$F0 | |||
655B | DEFB $E0,$F0,$F8,$F8,$F8,$F8,$F8,$00 | |||
6563 | DEFB $88,$80,$C0,$C0,$C0,$80,$80,$00 | |||
656B | DEFB $03,$80,$F0,$FE,$FF,$04,$1F,$0F | |||
6573 | DEFB $00,$06,$C0,$FE,$FF,$09,$FE,$FC | |||
657B | DEFB $FC,$FC,$F8,$F0,$E0,$C0,$80,$00 | |||
6583 | DEFB $9D,$38,$FC,$FC,$F8,$F0,$F0,$F0 | |||
658B | DEFB $E0,$00,$9A,$02 | |||
658F | DEFB $00 |
Used by the routine at F9E4.
|
||||
Code to show anti-piracy message just once at the very beginning
|
||||
6590 | LD HL,$5800 | Start of screen attribute area | ||
6593 | LD DE,$5801 | Start of screen attribute area + 1 | ||
6596 | LD BC,$0020 | 32 | ||
6599 | LD (HL),$46 | set the attribute | ||
659B | LDIR | copy to the rest of the row | ||
659D | LD BC,$02C0 | 704 = 22 attribute rows | ||
65A0 | LD (HL),$0F | set the attribute | ||
65A2 | LDIR | |||
65A4 | LD BC,$001F | |||
65A7 | LD (HL),$06 | |||
65A9 | LDIR | |||
65AB | LD HL,$58E0 | |||
65AE | LD DE,$0000 | |||
65B1 | LD C,$07 | |||
65B3 | LD A,$06 | |||
65B5 | LD B,$20 | |||
65B7 | LD (HL),A | |||
65B8 | INC HL | |||
65B9 | DJNZ $65B7 | |||
65BB | ADD HL,DE | |||
65BC | DEC C | |||
65BD | JR NZ,$65B5 | |||
65BF | LD HL,$65E7 | Start of anti-piracy message | ||
65C2 | LD DE,$4000 | Screen address | ||
65C5 | LD C,$00 | |||
65C7 | CALL $AED1 | Print string | ||
65CA | LD DE,$4800 | Screen address | ||
65CD | LD C,$00 | |||
65CF | CALL $AED1 | Print string | ||
65D2 | LD DE,$5000 | Screen address | ||
65D5 | LD C,$00 | |||
65D7 | CALL $AED1 | Print string | ||
Wait for any key and RET
|
||||
65DA | XOR A | |||
65DB | LD ($5C08),A | clear LASTK | ||
65DE | RST $38 | |||
65DF | LD A,($5C08) | check LASTK | ||
65E2 | CP $00 | any key? | ||
65E4 | JR Z,$65DA | no => wait | ||
65E6 | RET |
|
||||
65E7 | DEFM " ",$60 | |||
65F2 | DEFM "100 REWARD If your copy of this game doesnot have a" | |||
6633 | DEFM " blue cassette bodywith DURELL embossed on it, anddoes not have" | |||
6674 | DEFM " DURELL on the leadin strip then it is a forgery. Please send a" | |||
66B5 | DEFM "ny forgeries to DURELL SOFTWARE Ltd. Castle " | |||
66F6 | DEFM "Lodge Castle Green TAUNTO" | |||
6737 | DEFM "N TA1 4AB Somerse" | |||
6778 | DEFM "t " |
|
||||
678E | DEFM " ENGLAND with your name and address,and the " | |||
67CF | DEFM "name and address of theperson who supplied you withthe forge" | |||
6810 | DEFM "ry. You will be sent a genuinereplacemen" | |||
6851 | DEFM "t copy and a reward of" | |||
6867 | DEFM $60 | |||
6868 | DEFM "100 if your information leads to a successful prosecution. " | |||
68A9 | DEFM " PRESS ANY KEY TO CONTINUE " | |||
68E7 | DEFB $00,$00,$01,$01,$01,$01,$01,$01 | |||
68EF | DEFB $00,$C0,$E0,$F0,$FC,$FE,$FF | |||
68F6 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6914 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6932 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6950 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$C0,$C0,$C0,$E0,$E0,$E0,$F0,$F0 | |||
696E | DEFB $F8,$F8,$F8,$F0,$F0,$E0,$C0,$C0,$C0,$C0,$C0,$80,$80,$80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 |
|
||||
698C | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$03,$03,$07,$07,$07,$07,$0F,$3F,$3F,$07,$07,$07,$07,$07,$07,$07,$7F,$FF,$FF | |||
69AA | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$7F,$BF,$DF,$EF,$F7,$F7,$FB,$FB,$FB,$FB,$FB,$FB,$FB,$FB,$FD,$FD,$FD,$FD,$FD,$FB | |||
69C8 | DEFB $FB,$F7,$F7,$EF,$EF,$DF,$DF,$BF,$BF,$BF,$BF,$BF,$BF,$BF,$7F,$7F,$7F,$7F,$78,$00,$00,$00,$80,$C0,$F0,$F8,$F8,$FC,$FE,$FC | |||
69E6 | DEFB $F8,$C0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6A04 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6A22 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6A40 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,$3F,$FF,$FF,$FF,$FF,$FF,$FE,$F0,$FF,$FF | |||
6A5E | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6A7C | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$F8,$F0,$E0,$C0,$00,$00 | |||
6A9A | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6AB8 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6AD6 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6AF4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6B12 | DEFB $00,$C0,$F0,$F8,$FC,$FC,$FC,$FC,$04,$04,$FC,$FC,$FC,$FC,$FC,$F8,$F8,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6B30 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6B4E | DEFB $FF,$FF,$FF,$FF,$FF,$00,$00,$01,$01,$01,$01,$01,$03,$03,$03,$03,$03,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6B6C | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 |
|
||||
6B8A | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6BA8 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6BC6 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80 | |||
6BE4 | DEFB $F0,$FE,$FF,$FF,$F8,$07,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$7F,$1F,$07,$01,$00,$00,$00,$00,$00,$00,$00,$E0,$FC,$FF,$FF,$FF,$FF | |||
6C02 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6C20 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6C3E | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6C5C | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6C7A | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6C98 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$38,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$1F | |||
6CB6 | DEFB $03,$00,$00,$00,$00,$00,$00,$00,$E0,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6CD4 | DEFB $FE,$FC,$F8,$F0,$E0,$F0,$F8,$F8,$F8,$F8,$F8,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6CF2 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6D10 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6D2E | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6D4C | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$C0,$C0 | |||
6D6A | DEFB $C0,$80,$80,$00,$00,$00,$80,$F0,$FE,$FF,$FF,$FF,$FF,$1F,$0F,$00,$00,$00,$00,$00,$00,$C0,$FE,$FF,$FF,$FF,$FF,$FF,$FF,$FF |
|
||||
6D88 | DEFB $FF,$FF,$FE,$FC,$FC,$FC,$F8,$F0,$E0,$C0,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6DA6 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6DC4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6DE2 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6E00 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6E1E | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$38,$FC,$FC,$F8,$F0,$F0,$F0,$E0,$00,$00,$00,$00 | |||
6E3C | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6E5A | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6E78 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6E96 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6EB4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
6ED2 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6EF0 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6F0E | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6F2C | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6F4A | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6F68 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF |
|
||||
6F86 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6FA4 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6FC2 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6FE0 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
6FFE | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
701C | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
703A | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
7058 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
7076 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
7094 | DEFB $FF,$FF,$FF,$14,$15,$16,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
70B2 | DEFB $FF,$FF,$FF,$17,$18,$19,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
70D0 | DEFB $FF,$FF,$FF,$1A,$1B,$1C,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
70EE | DEFB $FF,$FF,$14,$15,$00,$01,$01,$01,$02,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$00,$01,$01,$02,$FF,$FF,$FF,$FF | |||
710C | DEFB $FF,$FF,$17,$18,$03,$04,$04,$04,$05,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$03,$04,$04,$05,$FF,$FF,$FF,$FF | |||
712A | DEFB $FF,$FF,$1A,$1B,$06,$07,$07,$07,$08,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$06,$07,$07,$08,$FF,$FF,$FF,$FF | |||
7148 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
7166 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF |
|
||||
7184 | DEFW $84A8 | Current Room address | ||
7186 | DEFW $A0B5 | Ninja sprite address |
|
||||
7188 | DEFB $FF,$2F,$30,$31,$32,$FF | ![]() |
||
718E | DEFB $33,$34,$35,$36,$37,$38 | |||
7194 | DEFB $0E,$0F,$10,$11 | ![]() |
||
7198 | DEFB $12,$0D,$0D,$0D | |||
719C | DEFB $12,$0D,$0D,$0D | |||
71A0 | DEFB $00,$01,$02 | ![]() |
||
71A3 | DEFB $03,$04,$05 | |||
71A6 | DEFB $06,$07,$08 | |||
71A9 | DEFB $0D,$0D,$0D,$0E | ![]() |
||
71AD | DEFB $0F,$10,$10,$11 | |||
71B1 | DEFB $0D,$13,$0D,$0D | |||
71B5 | DEFB $12,$12,$12,$12 | |||
71B9 | DEFB $07,$0A | ![]() |
||
71BB | DEFB $1F,$20 | ![]() |
||
71BD | DEFB $21,$22 | |||
71BF | DEFB $23,$24 | |||
71C1 | DEFB $25,$26 |
|
||||
71C3 | DEFW $0101 | Current Guard position in tilemap | ||
71C5 | DEFB $11 | Current Guard X position | ||
71C6 | DEFB $08 | Current Guard Y position |
|
||||
71C7 | DEFB $0E,$00,$0E,$00 |
|
||||
71CB | DEFW $018E | Dog position in tilemap | ||
71CD | DEFB $00 | Dog direction | ||
71CE | DEFB $08 | Dog X position | ||
71CF | DEFB $00 | Dog ?? | ||
71D0 | DEFB $07 | Dog's left limit | ||
71D1 | DEFB $17 | Dog's right limit | ||
71D2 | DEFB $00 | Dog ?? | ||
71D3 | DEFB $06 | Dog Y position |
|
||||
71D4 | DEFB $F3 | ?? | ||
71D5 | DEFB $01 | ?? | ||
71D6 | DEFB $7A,$00,$00,$02,$00,$01,$16,$00,$FD | Room 79C6 dog data | ||
71DF | DEFB $9E,$00,$01,$08,$00,$01,$16,$01 | |||
71E7 | DEFB $FE,$B8,$67,$B0,$6F,$0A,$D9,$67 | |||
71EF | DEFB $D1,$6F,$0D |
|
||||
71F2 | DEFB $FF,$00,$FF,$01 | ![]() |
||
71F6 | DEFB $02,$03,$04,$05 | |||
71FA | DEFB $06,$07,$08,$09 |
|
||||
71FE | DEFB $FF,$FF,$0A,$0B | ![]() |
||
7202 | DEFB $0C,$0D,$0E,$0F | |||
7206 | DEFB $10,$11,$12,$13 |
|
||||
720A | DEFB $FF,$14,$15,$16 | ![]() |
||
720E | DEFB $17,$18,$19,$1A | |||
7212 | DEFB $1B,$1C,$1D,$1E |
|
||||
7216 | DEFB $FF,$1F,$20,$FF | ![]() |
||
721A | DEFB $21,$22,$23,$24 | |||
721E | DEFB $25,$26,$27,$FF |
|
||||
7222 | DEFB $00 | Input method: 1 = Joystick, 0 = Keyboard or Protek | ||
7223 | DEFB $EF,$01,$04 | Ports and bits for the current input method | ||
7226 | DEFB $EF,$08,$03 | |||
7229 | DEFB $EF,$10,$02 | |||
722C | DEFB $F7,$10,$01 | |||
722F | DEFB $EF,$04,$00 | |||
7232 | DEFB $00 | Input bits: 000FUDLR | ||
7233 | DEFW $5A41 | Screen attributes address stored during tile map drawing | ||
7235 | DEFW $7184 | Tile screen 5 address stored during tile map drawing | ||
7237 | DEFW $6F86 | Tile screen 4 address stored during tile map drawing | ||
7239 | DEFB $00 | Byte mirror flag |
|
||||
723A | DEFB $01,$81,$41,$C1,$21,$A1,$61,$E1,$11,$91,$51,$D1,$31,$B1,$71,$F1 | Mirror table 1st part | ||
724A | DEFB $09,$89,$49,$C9,$29,$A9,$69,$E9,$19,$99,$59,$D9,$39,$B9,$79,$F9 | |||
725A | DEFB $05,$85,$45,$C5,$25,$A5,$65,$E5,$15,$95,$55,$D5,$35,$B5,$75,$F5 | |||
726A | DEFB $0D,$8D,$4D,$CD,$2D,$AD,$6D,$ED,$1D,$9D,$5D,$DD,$3D,$BD,$7D,$FD | |||
727A | DEFB $03,$83,$43,$C3,$23,$A3,$63,$E3,$13,$93,$53,$D3,$33,$B3,$73,$F3 | |||
728A | DEFB $0B,$8B,$4B,$CB,$2B,$AB,$6B,$EB,$1B,$9B,$5B,$DB,$3B,$BB,$7B,$FB | |||
729A | DEFB $07,$87,$47,$C7,$27,$A7,$67,$E7,$17,$97,$57,$D7,$37,$B7,$77,$F7 | |||
72AA | DEFB $0F,$8F,$4F,$CF,$2F,$AF,$6F,$EF,$1F,$9F,$5F,$DF,$3F,$BF,$7F,$FF | |||
72BA | DEFB $00,$80,$40,$C0,$20,$A0,$60,$E0,$10,$90,$50,$D0,$30,$B0,$70,$F0 | Mirror table 2nd part | ||
72CA | DEFB $08,$88,$48,$C8,$28,$A8,$68,$E8,$18,$98,$58,$D8,$38,$B8,$78,$F8 | |||
72DA | DEFB $04,$84,$44,$C4,$24,$A4,$64,$E4,$14,$94,$54,$D4,$34,$B4,$74,$F4 | |||
72EA | DEFB $0C,$8C,$4C,$CC,$2C,$AC,$6C,$EC,$1C,$9C,$5C,$DC,$3C,$BC,$7C,$FC | |||
72FA | DEFB $02,$82,$42,$C2,$22,$A2,$62,$E2,$12,$92,$52,$D2,$32,$B2,$72,$F2 | |||
730A | DEFB $0A,$8A,$4A,$CA,$2A,$AA,$6A,$EA,$1A,$9A,$5A,$DA,$3A,$BA,$7A,$FA | |||
731A | DEFB $06,$86,$46,$C6,$26,$A6,$66,$E6,$16,$96,$56,$D6,$36,$B6,$76,$F6 | |||
732A | DEFB $0E,$8E,$4E,$CE,$2E,$AE,$6E,$EE,$1E,$9E,$5E,$DE,$3E,$BE,$7E,$FE |
|
||||
733A | DEFB $00 | Ninja walking phase |
|
||||
733B | DEFW $D3DE | Sprite Ninja/Guard walking 1 | ||
733D | DEFW $D408 | Sprite Ninja/Guard walking 2 | ||
733F | DEFW $D432 | Sprite Ninja/Guard walking 3 | ||
7341 | DEFW $D45C | Sprite Ninja/Guard walking 4 |
|
||||
7343 | DEFB $07 | Counter used in movement handlers | ||
7344 | DEFB $00 | Dog's flag: 1 = ignore left/right limit | ||
7345 | DEFB $14 | Dog ?? | ||
7346 | DEFB $0A | Guard walking phase $00..$03 or other state: $09 = Guard dead; ... | ||
7347 | DEFB $01 | Guard direction | ||
7348 | DEFB $05,$08 |
734A | JP $B702 |
|
||||
734D | POP HL | Restore token sequence address | ||
734E | INC HL | Skip token byte | ||
734F | LD C,(HL) | get tile byte | ||
7350 | INC HL | |||
7351 | LD A,(HL) | get address low byte | ||
7352 | INC HL | |||
7353 | PUSH HL | |||
7354 | LD H,(HL) | get address high byte | ||
7355 | LD L,A | |||
7356 | LD (HL),C | put tile into tilemap | ||
7357 | JR $734A | => B702 Proceed to the next room token |
|
||||
7359 | POP HL | Restore token sequence address | ||
735A | INC HL | Skip token byte | ||
735B | LD A,(HL) | get byte | ||
735C | PUSH HL | |||
735D | OUT ($FE),A | |||
735F | JR $734A | => B702 Proceed to the next room token |
|
||||
7361 | POP HL | Restore token sequence address | ||
7362 | INC HL | Skip token byte | ||
7363 | LD A,(HL) | get tile byte | ||
7364 | PUSH HL | |||
7365 | LD HL,$6590 | Tile screen 0 start address | ||
7368 | LD B,$1E | 30 | ||
736A | LD (HL),A | |||
736B | INC HL | |||
736C | DJNZ $736A | |||
736E | LD B,$0F | |||
7370 | LD DE,$001D | |||
7373 | LD (HL),A | |||
7374 | ADD HL,DE | |||
7375 | LD (HL),A | |||
7376 | INC HL | |||
7377 | DJNZ $7373 | |||
7379 | LD B,$1E | |||
737B | LD (HL),A | |||
737C | INC HL | |||
737D | DJNZ $737B | |||
737F | JR $734A | => B702 Proceed to the next room token |
|
||||
7381 | LD DE,$001E | 30 | ||
7384 | POP HL | Restore token sequence address | ||
7385 | INC HL | Skip token byte | ||
7386 | LD B,(HL) | get count byte | ||
7387 | INC HL | |||
7388 | LD C,(HL) | get tile byte | ||
7389 | INC HL | |||
738A | LD A,(HL) | get address low byte | ||
738B | INC HL | |||
738C | PUSH HL | |||
738D | LD H,(HL) | get address high byte | ||
738E | LD L,A | |||
738F | LD (HL),C | |||
7390 | ADD HL,DE | |||
7391 | DJNZ $738F | |||
7393 | JR $734A | => B702 Proceed to the next room token |
|
||||
7395 | LD DE,$001F | 30 + 1 | ||
7398 | JR $7384 |
|
||||
739A | LD DE,$001D | 30 - 1 | ||
739D | JR $7384 |
|
||||
739F | LD DE,$0001 | |||
73A2 | JR $7384 |
|
||||
73A4 | LD A,$23 | A = "INC HL" command | ||
This entry point is used by the routine at 73EF.
|
||||
73A6 | LD ($73BB),A | set the command | ||
73A9 | POP HL | Restore token sequence address | ||
73AA | INC HL | Skip token byte | ||
73AB | LD D,(HL) | get filler tile | ||
73AC | INC HL | |||
73AD | LD B,(HL) | get count | ||
73AE | INC HL | |||
73AF | LD A,(HL) | get address low byte | ||
73B0 | INC HL | |||
73B1 | PUSH HL | |||
73B2 | LD H,(HL) | get address high byte | ||
73B3 | LD L,A | |||
73B4 | LD A,D | |||
73B5 | LD DE,$001E | 30 | ||
73B8 | PUSH HL | |||
73B9 | LD C,B | |||
73BA | LD (HL),A | |||
73BB | INC HL | !!MUT-CMD!! "INC HL" or "DEC HL" | ||
73BC | DEC C | |||
73BD | JR NZ,$73BA | |||
73BF | POP HL | |||
73C0 | ADD HL,DE | next row | ||
73C1 | DJNZ $73B8 | |||
73C3 | JR $734A | => B702 Proceed to the next room token |
|
||||
73C5 | LD A,$23 | A = "INC HL" command | ||
This entry point is used by the routine at 73EB.
|
||||
73C7 | LD ($73DE),A | set the command | ||
73CA | POP HL | Restore token sequence address | ||
73CB | INC HL | Skip token byte | ||
73CC | LD D,(HL) | get filler tile | ||
73CD | INC HL | |||
73CE | LD B,(HL) | get count | ||
73CF | INC HL | |||
73D0 | LD A,(HL) | get address low byte | ||
73D1 | INC HL | |||
73D2 | PUSH HL | |||
73D3 | LD H,(HL) | get address high byte | ||
73D4 | LD L,A | |||
73D5 | LD A,D | |||
73D6 | LD DE,$001E | 30 | ||
73D9 | LD C,$01 | |||
73DB | PUSH HL | |||
73DC | PUSH BC | |||
73DD | LD (HL),A | |||
73DE | INC HL | !!MUT-CMD!! "INC HL" or "DEC HL" | ||
73DF | DEC C | |||
73E0 | JR NZ,$73DD | |||
73E2 | POP BC | |||
73E3 | INC C | |||
73E4 | POP HL | |||
73E5 | ADD HL,DE | next row | ||
73E6 | DJNZ $73DB | |||
73E8 | JP $734A | => B702 Proceed to the next room token |
|
||||
73EB | LD A,$2B | A = "DEC HL" command | ||
73ED | JR $73C7 |
|
||||
73EF | LD A,$2B | A = "DEC HL" command | ||
73F1 | JR $73A6 |
|
||||
73F3 | POP HL | Restore token sequence address | ||
73F4 | INC HL | Skip token byte | ||
73F5 | LD A,(HL) | get tile byte | ||
73F6 | PUSH HL | |||
73F7 | LD HL,$6590 | Tile screen 0 start address | ||
73FA | LD DE,$6591 | Tile screen 0 start address + 1 | ||
73FD | LD (HL),A | |||
73FE | LD BC,$01FD | 510 - 1 | ||
7401 | LDIR | |||
7403 | JP $734A | => B702 Proceed to the next room token |
|
||||
7406 | POP HL | Restore token sequence address | ||
7407 | INC HL | Skip token byte | ||
7408 | LD B,(HL) | get width byte | ||
7409 | INC HL | |||
740A | LD C,(HL) | get height byte | ||
740B | INC HL | |||
740C | LD E,(HL) | get source address low byte | ||
740D | INC HL | |||
740E | LD D,(HL) | get source address high byte | ||
740F | INC HL | |||
7410 | LD A,(HL) | get address low byte | ||
7411 | INC HL | |||
7412 | PUSH HL | |||
7413 | LD H,(HL) | get address high byte | ||
7414 | LD L,A | |||
7415 | PUSH BC | |||
7416 | PUSH HL | |||
7417 | LD A,(DE) | |||
7418 | LD (HL),A | |||
7419 | INC HL | |||
741A | INC DE | |||
741B | DJNZ $7417 | continue loop by columns | ||
741D | POP HL | |||
741E | PUSH DE | |||
741F | LD DE,$001E | 30 | ||
7422 | ADD HL,DE | |||
7423 | POP DE | |||
7424 | POP BC | |||
7425 | DEC C | |||
7426 | JR NZ,$7415 | continue loop by rows | ||
7428 | JP $734A | => B702 Proceed to the next room token |
|
||||
742B | POP HL | Restore token sequence address | ||
742C | INC HL | Skip token byte | ||
742D | LD E,(HL) | get source address low byte | ||
742E | INC HL | |||
742F | LD D,(HL) | get source address high byte | ||
7430 | INC HL | |||
7431 | LD C,(HL) | get width byte | ||
7432 | INC HL | |||
7433 | LD B,(HL) | get height byte | ||
7434 | INC HL | |||
7435 | LD A,(HL) | get address low byte | ||
7436 | INC HL | |||
7437 | PUSH HL | |||
7438 | LD H,(HL) | get address high byte | ||
7439 | LD L,A | |||
743A | PUSH HL | |||
743B | PUSH BC | |||
743C | PUSH DE | |||
743D | LD A,(DE) | |||
743E | LD (HL),A | |||
743F | INC HL | |||
7440 | INC DE | |||
7441 | DEC C | |||
7442 | JR NZ,$743D | continue loop by columns | ||
7444 | POP DE | |||
7445 | POP BC | |||
7446 | POP HL | |||
7447 | PUSH DE | |||
7448 | LD DE,$001E | 30 | ||
744B | ADD HL,DE | |||
744C | POP DE | |||
744D | DJNZ $743A | continue loop by rows | ||
744F | JP $734A | => B702 Proceed to the next room token |
|
||||
7452 | POP HL | Restore token sequence address | ||
7453 | INC HL | Skip token byte | ||
7454 | LD D,(HL) | |||
7455 | INC HL | |||
7456 | LD C,(HL) | |||
7457 | INC HL | |||
7458 | LD B,(HL) | |||
7459 | INC HL | |||
745A | LD A,(HL) | |||
745B | INC HL | |||
745C | PUSH HL | |||
745D | LD H,(HL) | |||
745E | LD L,A | |||
745F | LD A,D | |||
7460 | LD DE,$001E | 30 | ||
7463 | PUSH HL | |||
7464 | PUSH BC | |||
7465 | LD (HL),A | |||
7466 | INC HL | |||
7467 | DEC C | |||
7468 | JR NZ,$7465 | |||
746A | POP BC | |||
746B | POP HL | |||
746C | ADD HL,DE | |||
746D | DJNZ $7463 | |||
746F | JP $734A | => B702 Proceed to the next room token |
Used by the routine at B5C7.
|
||||
7472 | DI | |||
7473 | LD ($74F1),SP | |||
7477 | LD SP,$753B | |||
747A | LD DE,$0005 | |||
747D | LD A,$FF | |||
747F | LD C,$10 | |||
7481 | POP HL | |||
7482 | ADD HL,DE | |||
7483 | LD B,$0F | |||
7485 | LD (HL),A | |||
7486 | INC HL | |||
7487 | DJNZ $7485 | |||
7489 | DEC C | |||
748A | JR NZ,$7481 | |||
748C | LD SP,($74F1) | |||
7490 | LD A,$13 | |||
7492 | LD ($749C),A | set Energy = MAX | ||
7495 | LD A,$01 | |||
7497 | LD ($749D),A | |||
749A | EI | |||
749B | RET |
|
||||
749C | DEFB $13 | Energy $04..$13 | ||
749D | DEFB $01 | Energy lower, running bit |
Used by the routine at 9DD9.
|
||||
749E | DI | |||
749F | LD ($74F1),SP | |||
74A3 | LD SP,$753B | |||
74A6 | LD A,($749C) | get Energy | ||
74A9 | LD E,A | |||
74AA | LD D,$00 | |||
74AC | LD B,$10 | |||
74AE | LD A,($749D) | |||
74B1 | LD C,A | |||
74B2 | POP HL | |||
74B3 | ADD HL,DE | |||
74B4 | LD A,C | |||
74B5 | XOR (HL) | |||
74B6 | LD (HL),A | |||
74B7 | DJNZ $74B2 | |||
74B9 | LD A,($749D) | |||
74BC | RLC A | |||
74BE | LD ($749D),A | |||
74C1 | JR NC,$74C7 | |||
74C3 | LD HL,$749C | Energy address | ||
74C6 | DEC (HL) | Decrease Energy | ||
74C7 | LD SP,($74F1) | |||
74CB | EI | |||
74CC | RET |
Used by the routine at B889.
|
||||
74CD | LD A,$00 | !!MUT-ARG!! item number | ||
74CF | LD H,$00 | |||
74D1 | LD L,A | |||
74D2 | ADD HL,HL | |||
74D3 | LD DE,$B5B0 | !!MUT-ARG!! address for Table of items | ||
74D6 | ADD HL,DE | |||
74D7 | LD E,(HL) | |||
74D8 | INC HL | |||
74D9 | LD D,(HL) | |||
74DA | DI | |||
74DB | LD ($74F1),SP | |||
74DF | LD SP,$751B | |||
74E2 | LD C,$18 | |||
74E4 | POP HL | |||
74E5 | LD B,$04 | |||
74E7 | LD A,(DE) | |||
74E8 | LD (HL),A | |||
74E9 | INC DE | |||
74EA | INC HL | |||
74EB | DJNZ $74E7 | |||
74ED | DEC C | |||
74EE | JR NZ,$74E4 | |||
74F0 | LD SP,$6255 | |||
74F3 | LD HL,$5A61 | |||
74F6 | LD C,$03 | |||
74F8 | LD B,$04 | |||
74FA | LD A,(DE) | |||
74FB | LD (HL),A | |||
74FC | INC HL | |||
74FD | INC DE | |||
74FE | DJNZ $74FA | |||
7500 | PUSH DE | |||
7501 | LD DE,$001C | 28 | ||
7504 | ADD HL,DE | |||
7505 | POP DE | |||
7506 | DEC C | |||
7507 | JR NZ,$74F8 | |||
7509 | EI | |||
750A | RET |
|
||||
750B | DEFB $00,$00,$6C,$00,$D8,$00,$44,$01 | |||
7513 | DEFB $B0,$01,$1C,$02,$88,$02,$F4,$02 |
|
||||
751B | DEFW $5061,$5161,$5261,$5361 | |||
7523 | DEFW $5461,$5561,$5661,$5761 | |||
752B | DEFW $5081,$5181,$5281,$5381 | |||
7533 | DEFW $5481,$5581,$5681,$5781 | |||
753B | DEFW $50A1,$51A1,$52A1,$53A1 | |||
7543 | DEFW $54A1,$55A1,$56A1,$57A1 | |||
754B | DEFW $50C1,$51C1,$52C1,$53C1 | |||
7553 | DEFW $54C1,$55C1,$56C1,$57C1 |
|
||||
755B | DEFB $00 | Ninja falling count, to decrease Energy on hit |
|
||||
755C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7564 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
756C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7574 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
757C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7584 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
758C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7594 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
759C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75A4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75AC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75B4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75BC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75C4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75CC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75D4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75DC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75E4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75EC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75F4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
75FC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7604 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
760C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7614 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
761C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7624 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
762C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7634 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
763C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7644 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
764C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7654 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
765C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7664 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
766C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7674 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
767C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7684 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
768C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7694 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
769C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76A4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76AC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76B4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76BC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76C4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76CC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76D4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76DC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76E4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76EC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76F4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
76FC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7704 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
770C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7714 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
771C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7724 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
772C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7734 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
773C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7744 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
774C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7754 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
775C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7764 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
776C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7774 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
777C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7784 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
778C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7794 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
779C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77A4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77AC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77B4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77BC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77C4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77CC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77D4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77DC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77E4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77EC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77F4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
77FC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7804 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
780C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7814 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
781C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7824 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
782C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7834 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
783C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7844 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
784C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7854 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
785C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7864 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
786C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7874 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
787C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7884 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
788C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7894 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
789C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78A4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78AC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78B4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78BC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78C4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78CC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78D4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78DC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78E4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78EC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78F4 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
78FC | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7904 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
790C | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
7914 | DEFB $00,$00,$00,$00 |
|
||||
7918 | JP $B44C |
|
||||
791B | JP $B425 |
|
||||
![]() |
||||
791E | DEFW $B446 | Room procedure | ||
7920 | DEFW $C64C | Initialization | ||
7922 | DEFW $0000 | |||
7924 | DEFW $79C6 | Room to Right | ||
7926 | DEFW $0000 | |||
7928 | DEFW $0000 | |||
792A | DEFB $04,$0D | Fill entire screen with $0D | ||
792C | DEFB $03,$FF,$07,$0A,$79,$66 | Rectangle 7x10 tiles with $FF at $6679 | ||
7932 | DEFB $02,$17,$F5,$70,$67 | Fill horz 23 tiles with $F5 at $6770 | ||
7937 | DEFB $02,$17,$0B,$EE,$70 | Fill horz 23 tiles with $0B at $70EE | ||
793C | DEFB $03,$0C,$17,$03,$0C,$71 | Rectangle 23x3 tiles with $0C at $710C | ||
7942 | DEFB $02,$13,$F6,$6A,$66 | Fill horz 19 tiles with $F6 at $666A | ||
7947 | DEFB $01,$08,$0C,$89,$66 | Fill vert 8 tiles with $0C at $6689 | ||
794C | DEFB $01,$08,$0C,$8E,$66 | Fill vert 8 tiles with $0C at $668E | ||
7951 | DEFB $01,$08,$0C,$93,$66 | Fill vert 8 tiles with $0C at $6693 | ||
7956 | DEFB $01,$0C,$F2,$EB,$65 | Fill vert 12 tiles with $F2 at $65EB | ||
795B | DEFB $05,$04,$03,$94,$71,$11,$66 | Block 4x3 tiles from 7194 to $6611 | ||
7962 | DEFB $05,$04,$03,$94,$71,$15,$66 | Block 4x3 tiles from 7194 to $6615 | ||
7969 | DEFB $05,$04,$03,$94,$71,$19,$66 | Block 4x3 tiles from 7194 to $6619 | ||
7970 | DEFB $05,$04,$03,$94,$71,$1D,$66 | Block 4x3 tiles from 7194 to $661D | ||
7977 | DEFB $05,$04,$03,$94,$71,$21,$66 | Block 4x3 tiles from 7194 to $6621 | ||
797E | DEFB $01,$03,$12,$25,$66 | Fill vert 3 tiles with $12 at $6625 | ||
7983 | DEFB $FF | End of sequence |
|
||||
7984 | DEFB $F1,$F0 | ![]() |
||
7986 | DEFB $07,$0A | |||
7988 | DEFB $07,$0A | |||
798A | DEFB $07,$0A | |||
798C | DEFB $07,$0A | |||
798E | DEFB $FF,$FF,$39,$58 | ![]() |
||
7992 | DEFB $FF,$39,$3A,$58 | |||
7996 | DEFB $39,$3A,$3A,$58 | |||
799A | DEFB $3A,$3A,$3A,$58 | |||
799E | DEFB $3A,$3A,$3B,$FF | |||
79A2 | DEFB $3A,$3B,$FF,$FF | |||
79A6 | DEFB $3B,$FF,$FF,$FF | |||
79AA | DEFB $59,$3C,$FF,$FF | ![]() |
||
79AE | DEFB $59,$3D,$3C,$FF | |||
79B2 | DEFB $59,$3D,$3D,$3C | |||
79B6 | DEFB $59,$3D,$3D,$3D | |||
79BA | DEFB $FF,$3E,$3D,$3D | |||
79BE | DEFB $FF,$FF,$3E,$3D | |||
79C2 | DEFB $FF,$FF,$FF,$3E |
|
||||
![]() |
||||
79C6 | DEFW $B452 | Room procedure | ||
79C8 | DEFW $B42E | Initialization | ||
79CA | DEFW $791E | Room to Left | ||
79CC | DEFW $7A17 | Room to Right | ||
79CE | DEFW $0000 | |||
79D0 | DEFW $0000 | |||
79D2 | DEFB $04,$0D | Fill entire screen with $0D | ||
79D4 | DEFB $03,$FF,$1E,$0A,$62,$66 | Rectangle 30x10 tiles with $FF at $6662 | ||
79DA | DEFB $03,$02,$15,$06,$C5,$66 | Rectangle 21x6 tiles with $02 at $66C5 | ||
79E0 | DEFB $02,$15,$03,$A7,$66 | Fill horz 21 tiles with $03 at $66A7 | ||
79E5 | DEFB $0C,$B9,$71,$02,$09,$6C,$66 | Block 2 tiles from 71B9 to $666C copy 9 times | ||
79EC | DEFB $03,$00,$08,$06,$C4,$65 | Rectangle 8x6 tiles with $00 at $65C4 | ||
79F2 | DEFB $02,$0A,$FF,$A4,$65 | Fill horz 10 tiles with $FF at $65A4 | ||
79F7 | DEFB $05,$02,$04,$BB,$71,$F8,$6F | Block 2x4 tiles from 71BB to $6FF8 | ||
79FE | DEFB $0E,$2A,$B9,$6F | Put tile $2A at $6FB9 | ||
7A02 | DEFB $01,$05,$2B,$D7,$6F | Fill vert 5 tiles with $2B at $6FD7 | ||
7A07 | DEFB $05,$06,$02,$88,$71,$3D,$71 | Block 6x2 tiles from 7188 to $713D | ||
7A0E | DEFB $0E,$F1,$6C,$66 | Put tile $F1 at $666C | ||
7A12 | DEFB $0E,$F0,$6D,$66 | Put tile $F0 at $666D | ||
7A16 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7A17 | DEFW $B483 | Room procedure | ||
7A19 | DEFW $A142 | Initialization | ||
7A1B | DEFW $79C6 | Room to Left | ||
7A1D | DEFW $7B90 | Room to Right | ||
7A1F | DEFW $8238 | Room Up | ||
7A21 | DEFW $0000 | |||
7A23 | DEFB $04,$02 | Fill entire screen with $02 | ||
7A25 | DEFB $08,$FF,$06,$CD,$66 | Triangle with $FF, count=6 at $66CD | ||
7A2A | DEFB $02,$12,$FF,$70,$67 | Fill horz 18 tiles with $FF at $6770 | ||
7A2F | DEFB $03,$FF,$0C,$08,$B0,$66 | Rectangle 12x8 tiles with $FF at $66B0 | ||
7A35 | DEFB $03,$00,$04,$06,$AE,$65 | Rectangle 4x6 tiles with $00 at $65AE | ||
7A3B | DEFB $02,$0B,$FF,$80,$66 | Fill horz 11 tiles with $FF at $6680 | ||
7A40 | DEFB $02,$05,$FF,$62,$66 | Fill horz 5 tiles with $FF at $6662 | ||
7A45 | DEFB $01,$05,$2B,$C6,$6F | Fill vert 5 tiles with $2B at $6FC6 | ||
7A4A | DEFB $0E,$2A,$A8,$6F | Put tile $2A at $6FA8 | ||
7A4E | DEFB $02,$05,$FF,$90,$65 | Fill horz 5 tiles with $FF at $6590 | ||
7A53 | DEFB $02,$0C,$FF,$9A,$65 | Fill horz 12 tiles with $FF at $659A | ||
7A58 | DEFB $0C,$B9,$71,$02,$08,$98,$65 | Block 2 tiles from 71B9 to $6598 copy 8 times | ||
7A5F | DEFB $05,$04,$07,$8E,$79,$9F,$70 | Block 4x7 tiles from 798E to $709F | ||
7A66 | DEFB $05,$04,$07,$8E,$79,$48,$70 | Block 4x7 tiles from 798E to $7048 | ||
7A6D | DEFB $05,$04,$07,$8E,$79,$2B,$70 | Block 4x7 tiles from 798E to $702B | ||
7A74 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7A75 | DEFW $B41F | Room procedure | ||
7A77 | DEFW $B422 | Initialization | ||
7A79 | DEFW $0000 | |||
7A7B | DEFW $0000 | |||
7A7D | DEFW $7BD2 | Room Up | ||
7A7F | DEFW $7A9E | Room Down | ||
7A81 | DEFB $04,$FF | Fill entire screen with $FF | ||
7A83 | DEFB $02,$12,$03,$0F,$66 | Fill horz 18 tiles with $03 at $660F | ||
7A88 | DEFB $03,$02,$12,$05,$2D,$66 | Rectangle 18x5 tiles with $02 at $662D | ||
7A8E | DEFB $0C,$B9,$71,$02,$11,$98,$65 | Block 2 tiles from 71B9 to $6598 copy 17 times | ||
7A95 | DEFB $0E,$F1,$C4,$66 | Put tile $F1 at $66C4 | ||
7A99 | DEFB $0E,$F0,$C5,$66 | Put tile $F0 at $66C5 | ||
7A9D | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7A9E | DEFW $B41F | Room procedure | ||
7AA0 | DEFW $B422 | Initialization | ||
7AA2 | DEFW $0000 | |||
7AA4 | DEFW $7ACD | Room to Right | ||
7AA6 | DEFW $7A75 | Room Up | ||
7AA8 | DEFW $0000 | |||
7AAA | DEFB $04,$FF | Fill entire screen with $FF | ||
7AAC | DEFB $02,$1C,$03,$82,$66 | Fill horz 28 tiles with $03 at $6682 | ||
7AB1 | DEFB $03,$02,$1C,$06,$A0,$66 | Rectangle 28x6 tiles with $02 at $66A0 | ||
7AB7 | DEFB $0C,$B9,$71,$02,$0F,$98,$65 | Block 2 tiles from 71B9 to $6598 copy 15 times | ||
7ABE | DEFB $05,$06,$02,$88,$71,$15,$71 | Block 6x2 tiles from 7188 to $7115 | ||
7AC5 | DEFB $05,$06,$02,$88,$71,$20,$71 | Block 6x2 tiles from 7188 to $7120 | ||
7ACC | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7ACD | DEFW $B41F | Room procedure | ||
7ACF | DEFW $B422 | Initialization | ||
7AD1 | DEFW $7A9E | Room to Left | ||
7AD3 | DEFW $7AF8 | Room to Right | ||
7AD5 | DEFW $7B56 | Room Up | ||
7AD7 | DEFW $0000 | |||
7AD9 | DEFB $04,$FF | Fill entire screen with $FF | ||
7ADB | DEFB $03,$02,$1E,$06,$80,$66 | Rectangle 30x6 tiles with $02 at $6680 | ||
7AE1 | DEFB $02,$1A,$03,$66,$66 | Fill horz 26 tiles with $03 at $6666 | ||
7AE6 | DEFB $02,$04,$03,$80,$66 | Fill horz 4 tiles with $03 at $6680 | ||
7AEB | DEFB $02,$0A,$02,$34,$67 | Fill horz 10 tiles with $02 at $6734 | ||
7AF0 | DEFB $0C,$B9,$71,$02,$0E,$A2,$65 | Block 2 tiles from 71B9 to $65A2 copy 14 times | ||
7AF7 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7AF8 | DEFW $B41F | Room procedure | ||
7AFA | DEFW $B422 | Initialization | ||
7AFC | DEFW $7ACD | Room to Left | ||
7AFE | DEFW $0001 | |||
7B00 | DEFW $7C6D | Room Up | ||
7B02 | DEFW $0000 | |||
7B04 | DEFB $04,$FF | Fill entire screen with $FF | ||
7B06 | DEFB $03,$02,$1C,$08,$80,$66 | Rectangle 28x8 tiles with $02 at $6680 | ||
7B0C | DEFB $02,$0D,$03,$86,$66 | Fill horz 13 tiles with $03 at $6686 | ||
7B11 | DEFB $0C,$B9,$71,$02,$0F,$98,$65 | Block 2 tiles from 71B9 to $6598 copy 15 times | ||
7B18 | DEFB $02,$06,$03,$62,$66 | Fill horz 6 tiles with $03 at $6662 | ||
7B1D | DEFB $02,$09,$FF,$93,$66 | Fill horz 9 tiles with $FF at $6693 | ||
7B22 | DEFB $02,$09,$03,$B1,$66 | Fill horz 9 tiles with $03 at $66B1 | ||
7B27 | DEFB $05,$06,$02,$88,$71,$3C,$71 | Block 6x2 tiles from 7188 to $713C | ||
7B2E | DEFB $02,$02,$FF,$34,$67 | Fill horz 2 tiles with $FF at $6734 | ||
7B33 | DEFB $02,$0E,$FF,$52,$67 | Fill horz 14 tiles with $FF at $6752 | ||
7B38 | DEFB $0E,$FE,$83,$67 | Put tile $FE at $6783 | ||
7B3C | DEFB $0E,$FE,$8A,$67 | Put tile $FE at $678A | ||
7B40 | DEFB $05,$01,$02,$4F,$7B,$56,$67 | Block 1x2 tiles from 7B4F to $6756 | ||
7B47 | DEFB $05,$01,$02,$4F,$7B,$5E,$67 | Block 1x2 tiles from 7B4F to $675E | ||
7B4E | DEFB $FF | End of sequence |
|
||||
7B4F | DEFB $FE | ![]() |
||
7B50 | DEFB $FD | |||
7B51 | DEFB $FD | ![]() |
||
7B52 | DEFB $FD | ![]() |
||
7B53 | DEFB $FD | |||
7B54 | DEFB $FD | |||
7B55 | DEFB $FC |
|
||||
![]() |
||||
7B56 | DEFW $B41F | Room procedure | ||
7B58 | DEFW $B422 | Initialization | ||
7B5A | DEFW $0000 | |||
7B5C | DEFW $0000 | |||
7B5E | DEFW $7D5A | Room Up | ||
7B60 | DEFW $7ACD | Room Down | ||
7B62 | DEFB $04,$FF | Fill entire screen with $FF | ||
7B64 | DEFB $03,$02,$08,$06,$28,$66 | Rectangle 8x6 tiles with $02 at $6628 | ||
7B6A | DEFB $03,$02,$0A,$05,$33,$66 | Rectangle 10x5 tiles with $02 at $6633 | ||
7B70 | DEFB $02,$08,$03,$0A,$66 | Fill horz 8 tiles with $03 at $660A | ||
7B75 | DEFB $02,$0A,$03,$15,$66 | Fill horz 10 tiles with $03 at $6615 | ||
7B7A | DEFB $0C,$B9,$71,$02,$0B,$94,$65 | Block 2 tiles from 71B9 to $6594 copy 11 times | ||
7B81 | DEFB $0C,$B9,$71,$02,$11,$A2,$65 | Block 2 tiles from 71B9 to $65A2 copy 17 times | ||
7B88 | DEFB $0C,$84,$79,$02,$01,$CE,$66 | Block 2 tiles from 7984 to $66CE copy 1 times | ||
7B8F | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7B90 | DEFW $B41F | Room procedure | ||
7B92 | DEFW $B422 | Initialization | ||
7B94 | DEFW $7A17 | Room to Left | ||
7B96 | DEFW $7BD2 | Room to Right | ||
7B98 | DEFW $0000 | |||
7B9A | DEFW $0000 | |||
7B9C | DEFB $04,$01 | Fill entire screen with $01 | ||
7B9E | DEFB $03,$02,$05,$09,$90,$65 | Rectangle 5x9 tiles with $02 at $6590 | ||
7BA4 | DEFB $02,$06,$FF,$92,$65 | Fill horz 6 tiles with $FF at $6592 | ||
7BA9 | DEFB $0E,$2A,$A9,$6F | Put tile $2A at $6FA9 | ||
7BAD | DEFB $01,$07,$2B,$C7,$6F | Fill vert 7 tiles with $2B at $6FC7 | ||
7BB2 | DEFB $03,$FF,$0F,$08,$9E,$66 | Rectangle 15x8 tiles with $FF at $669E | ||
7BB8 | DEFB $03,$FF,$0F,$03,$43,$67 | Rectangle 15x3 tiles with $FF at $6743 | ||
7BBE | DEFB $07,$FF,$04,$CB,$66 | Triangle with $FF, count=4 at $66CB | ||
7BC3 | DEFB $05,$04,$07,$AA,$79,$68,$70 | Block 4x7 tiles from 79AA to $7068 | ||
7BCA | DEFB $05,$04,$07,$AA,$79,$2A,$70 | Block 4x7 tiles from 79AA to $702A | ||
7BD1 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7BD2 | DEFW $B41F | Room procedure | ||
7BD4 | DEFW $B422 | Initialization | ||
7BD6 | DEFW $7B90 | Room to Left | ||
7BD8 | DEFW $7D5A | Room to Right | ||
7BDA | DEFW $8162 | Room Up | ||
7BDC | DEFW $7A75 | Room Down | ||
7BDE | DEFB $04,$01 | Fill entire screen with $01 | ||
7BE0 | DEFB $03,$FF,$14,$03,$34,$67 | Rectangle 20x3 tiles with $FF at $6734 | ||
7BE6 | DEFB $02,$0A,$FF,$84,$67 | Fill horz 10 tiles with $FF at $6784 | ||
7BEB | DEFB $0E,$FF,$66,$67 | Put tile $FF at $6766 | ||
7BEF | DEFB $05,$03,$04,$0C,$7C,$B5,$70 | Block 3x4 tiles from 7C0C to $70B5 | ||
7BF6 | DEFB $05,$03,$03,$18,$7C,$24,$71 | Block 3x3 tiles from 7C18 to $7124 | ||
7BFD | DEFB $0C,$2A,$7C,$02,$0E,$9E,$65 | Block 2 tiles from 7C2A to $659E copy 14 times | ||
7C04 | DEFB $05,$02,$03,$84,$79,$3C,$67 | Block 2x3 tiles from 7984 to $673C | ||
7C0B | DEFB $FF | End of sequence |
|
||||
7C0C | DEFB $3F,$40,$41 | ![]() |
||
7C0F | DEFB $42,$43,$44 | |||
7C12 | DEFB $45,$46,$47 | |||
7C15 | DEFB $48,$49,$4A | |||
7C18 | DEFB $4B,$4C,$4D | ![]() |
||
7C1B | DEFB $45,$46,$47 | |||
7C1E | DEFB $48,$49,$4A | |||
7C21 | DEFB $14,$15,$16 | ![]() |
||
7C24 | DEFB $17,$18,$19 | |||
7C27 | DEFB $1A,$1B,$1C | |||
7C2A | DEFB $06,$09 | ![]() |
||
7C2C | DEFB $ED,$EC | ![]() |
|
||||
![]() |
||||
7C2E | DEFW $B458 | Room procedure | ||
7C30 | DEFW $A1A6 | Initialization | ||
7C32 | DEFW $7D5A | Room to Left | ||
7C34 | DEFW $0000 | |||
7C36 | DEFW $7DA9 | Room Up | ||
7C38 | DEFW $7C6D | Room Down | ||
7C3A | DEFB $04,$01 | Fill entire screen with $01 | ||
7C3C | DEFB $03,$FF,$1E,$04,$16,$67 | Rectangle 30x4 tiles with $FF at $6716 | ||
7C42 | DEFB $03,$FF,$05,$06,$90,$65 | Rectangle 5x6 tiles with $FF at $6590 | ||
7C48 | DEFB $03,$FF,$03,$0D,$AB,$65 | Rectangle 3x13 tiles with $FF at $65AB | ||
7C4E | DEFB $0E,$2A,$3B,$70 | Put tile $2A at $703B | ||
7C52 | DEFB $01,$06,$2B,$59,$70 | Fill vert 6 tiles with $2B at $7059 | ||
7C57 | DEFB $0C,$2A,$7C,$02,$0D,$95,$65 | Block 2 tiles from 7C2A to $6595 copy 13 times | ||
7C5E | DEFB $05,$02,$04,$84,$79,$1E,$67 | Block 2x4 tiles from 7984 to $671E | ||
7C65 | DEFB $05,$02,$04,$84,$79,$2A,$67 | Block 2x4 tiles from 7984 to $672A | ||
7C6C | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7C6D | DEFW $B41F | Room procedure | ||
7C6F | DEFW $B422 | Initialization | ||
7C71 | DEFW $0000 | |||
7C73 | DEFW $7FC4 | Room to Right | ||
7C75 | DEFW $7C2E | Room Up | ||
7C77 | DEFW $7AF8 | Room Down | ||
7C79 | DEFB $04,$FF | Fill entire screen with $FF | ||
7C7B | DEFB $0C,$B9,$71,$02,$11,$98,$65 | Block 2 tiles from 71B9 to $6598 copy 17 times | ||
7C82 | DEFB $03,$02,$0E,$06,$90,$66 | Rectangle 14x6 tiles with $02 at $6690 | ||
7C88 | DEFB $02,$09,$03,$72,$66 | Fill horz 9 tiles with $03 at $6672 | ||
7C8D | DEFB $02,$05,$03,$99,$66 | Fill horz 5 tiles with $03 at $6699 | ||
7C92 | DEFB $0C,$B9,$71,$02,$0E,$A4,$65 | Block 2 tiles from 71B9 to $65A4 copy 14 times | ||
7C99 | DEFB $FF | End of sequence |
|
||||
7C9A | DEFB $06,$09 | ![]() |
|
||||
![]() |
||||
7C9C | DEFW $C6A5 | Room procedure | ||
7C9E | DEFW $791B | Initialization | ||
7CA0 | DEFW $947C | Room to Left | ||
7CA2 | DEFW $93DF | Room to Right | ||
7CA4 | DEFW $0000 | |||
7CA6 | DEFW $0000 | |||
7CA8 | DEFB $04,$FF | Fill entire screen with $FF | ||
7CAA | DEFB $02,$1E,$03,$62,$66 | Fill horz 30 tiles with $03 at $6662 | ||
7CAF | DEFB $03,$02,$1E,$07,$80,$66 | Rectangle 30x7 tiles with $02 at $6680 | ||
7CB5 | DEFB $03,$22,$04,$02,$AB,$66 | Rectangle 4x2 tiles with $22 at $66AB | ||
7CBB | DEFB $03,$21,$1E,$02,$16,$67 | Rectangle 30x2 tiles with $21 at $6716 | ||
7CC1 | DEFB $05,$06,$07,$0D,$7D,$82,$70 | Block 6x7 tiles from 7D0D to $7082 | ||
7CC8 | DEFB $05,$05,$01,$08,$7D,$53,$67 | Block 5x1 tiles from 7D08 to $6753 | ||
7CCF | DEFB $05,$05,$01,$08,$7D,$62,$67 | Block 5x1 tiles from 7D08 to $6762 | ||
7CD6 | DEFB $05,$05,$07,$E5,$7C,$87,$66 | Block 5x7 tiles from 7CE5 to $6687 | ||
7CDD | DEFB $05,$05,$07,$37,$7D,$92,$66 | Block 5x7 tiles from 7D37 to $6692 | ||
7CE4 | DEFB $FF | End of sequence |
|
||||
7CE5 | DEFB $02,$E9,$E8,$E7,$E7 | ![]() |
||
7CEA | DEFB $17,$0D,$15,$15,$0D | |||
7CEF | DEFB $18,$0D,$15,$15,$0D | |||
7CF4 | DEFB $19,$0D,$0D,$0D,$0D | |||
7CF9 | DEFB $22,$22,$22,$22,$22 | |||
7CFE | DEFB $22,$22,$22,$22,$22 | |||
7D03 | DEFB $1F,$0D,$0D,$0D,$0D | |||
7D08 | DEFB $FB,$FB,$FF,$FF,$FB | ![]() |
||
7D0D | DEFB $56,$4E,$4E,$4E,$4E,$57 | ![]() |
||
7D13 | DEFB $52,$4F,$4F,$4F,$4F,$54 | |||
7D19 | DEFB $52,$4F,$4F,$4F,$4F,$54 | |||
7D1F | DEFB $52,$6C,$6D,$6E,$50,$54 | |||
7D25 | DEFB $53,$6F,$70,$71,$51,$55 | |||
7D2B | DEFB $53,$72,$73,$74,$51,$55 | |||
7D31 | DEFB $52,$50,$50,$50,$50,$54 | |||
7D37 | DEFB $E7,$E7,$E6,$E5,$02 | ![]() |
||
7D3C | DEFB $0D,$15,$15,$0D,$1C | |||
7D41 | DEFB $0D,$15,$15,$0D,$1D | |||
7D46 | DEFB $0D,$0D,$0D,$0D,$1E | |||
7D4B | DEFB $22,$22,$22,$22,$22 | |||
7D50 | DEFB $22,$22,$22,$22,$22 | |||
7D55 | DEFB $0D,$0D,$0D,$0D,$20 |
|
||||
![]() |
||||
7D5A | DEFW $B483 | Room procedure | ||
7D5C | DEFW $A14A | Initialization | ||
7D5E | DEFW $7BD2 | Room to Left | ||
7D60 | DEFW $7C2E | Room to Right | ||
7D62 | DEFW $0000 | |||
7D64 | DEFW $7B56 | Room Down | ||
7D66 | DEFB $04,$01 | Fill entire screen with $01 | ||
7D68 | DEFB $03,$FF,$1E,$06,$90,$65 | Rectangle 30x6 tiles with $FF at $6590 | ||
7D6E | DEFB $0C,$2A,$7C,$02,$10,$9B,$65 | Block 2 tiles from 7C2A to $659B copy 16 times | ||
7D75 | DEFB $02,$02,$EA,$31,$66 | Fill horz 2 tiles with $EA at $6631 | ||
7D7A | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
7D7F | DEFB $03,$FF,$06,$03,$2E,$67 | Rectangle 6x3 tiles with $FF at $672E | ||
7D85 | DEFB $08,$FF,$02,$4B,$67 | Triangle with $FF, count=2 at $674B | ||
7D8A | DEFB $0C,$84,$79,$02,$01,$74,$67 | Block 2 tiles from 7984 to $6774 copy 1 times | ||
7D91 | DEFB $0C,$84,$79,$02,$01,$82,$67 | Block 2 tiles from 7984 to $6782 copy 1 times | ||
7D98 | DEFB $0E,$2A,$56,$70 | Put tile $2A at $7056 | ||
7D9C | DEFB $01,$06,$2B,$74,$70 | Fill vert 6 tiles with $2B at $7074 | ||
7DA1 | DEFB $05,$04,$07,$8E,$79,$A9,$70 | Block 4x7 tiles from 798E to $70A9 | ||
7DA8 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7DA9 | DEFW $7918 | Room procedure | ||
7DAB | DEFW $A0E8 | Initialization | ||
7DAD | DEFW $0000 | |||
7DAF | DEFW $7E8C | Room to Right | ||
7DB1 | DEFW $7E05 | Room Up | ||
7DB3 | DEFW $7C2E | Room Down | ||
7DB5 | DEFB $04,$01 | Fill entire screen with $01 | ||
7DB7 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
7DBC | DEFB $02,$1E,$FF,$90,$65 | Fill horz 30 tiles with $FF at $6590 | ||
7DC1 | DEFB $03,$FF,$03,$03,$AE,$65 | Rectangle 3x3 tiles with $FF at $65AE | ||
7DC7 | DEFB $01,$0C,$EB,$09,$66 | Fill vert 12 tiles with $EB at $6609 | ||
7DCC | DEFB $05,$03,$04,$0C,$7C,$F0,$70 | Block 3x4 tiles from 7C0C to $70F0 | ||
7DD3 | DEFB $0C,$2C,$7C,$02,$01,$75,$67 | Block 2 tiles from 7C2C to $6775 copy 1 times | ||
7DDA | DEFB $0C,$9A,$7C,$02,$10,$99,$65 | Block 2 tiles from 7C9A to $6599 copy 16 times | ||
7DE1 | DEFB $0C,$9A,$7C,$02,$10,$9C,$65 | Block 2 tiles from 7C9A to $659C copy 16 times | ||
7DE8 | DEFB $0C,$9A,$7C,$02,$10,$9F,$65 | Block 2 tiles from 7C9A to $659F copy 16 times | ||
7DEF | DEFB $05,$03,$03,$18,$7C,$22,$71 | Block 3x3 tiles from 7C18 to $7122 | ||
7DF6 | DEFB $05,$03,$04,$0C,$7C,$01,$71 | Block 3x4 tiles from 7C0C to $7101 | ||
7DFD | DEFB $05,$03,$04,$0C,$7C,$06,$71 | Block 3x4 tiles from 7C0C to $7106 | ||
7E04 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7E05 | DEFW $B452 | Room procedure | ||
7E07 | DEFW $A35C | Initialization | ||
7E09 | DEFW $0000 | |||
7E0B | DEFW $80A7 | Room to Right | ||
7E0D | DEFW $83ED | Room Up | ||
7E0F | DEFW $7DA9 | Room Down | ||
7E11 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
7E16 | DEFB $0C,$2C,$7C,$02,$01,$79,$67 | Block 2 tiles from 7C2C to $6779 copy 1 times | ||
7E1D | DEFB $0C,$2C,$7C,$02,$01,$7C,$67 | Block 2 tiles from 7C2C to $677C copy 1 times | ||
7E24 | DEFB $0C,$2C,$7C,$02,$01,$7F,$67 | Block 2 tiles from 7C2C to $677F copy 1 times | ||
7E2B | DEFB $0C,$48,$73,$02,$10,$99,$65 | Block 2 tiles from 7348 to $6599 copy 16 times | ||
7E32 | DEFB $01,$0C,$EB,$09,$66 | Fill vert 12 tiles with $EB at $6609 | ||
7E37 | DEFB $05,$03,$03,$21,$7C,$B5,$70 | Block 3x3 tiles from 7C21 to $70B5 | ||
7E3E | DEFB $05,$03,$03,$21,$7C,$0E,$71 | Block 3x3 tiles from 7C21 to $710E | ||
7E45 | DEFB $05,$03,$03,$21,$7C,$11,$71 | Block 3x3 tiles from 7C21 to $7111 | ||
7E4C | DEFB $05,$03,$04,$0C,$7C,$03,$71 | Block 3x4 tiles from 7C0C to $7103 | ||
7E53 | DEFB $05,$04,$03,$7B,$7E,$1F,$71 | Block 4x3 tiles from 7E7B to $711F | ||
7E5A | DEFB $05,$03,$01,$87,$7E,$44,$71 | Block 3x1 tiles from 7E87 to $7144 | ||
7E61 | DEFB $05,$02,$01,$8A,$7E,$61,$71 | Block 2x1 tiles from 7E8A to $7161 | ||
7E68 | DEFB $05,$02,$01,$8A,$7E,$64,$71 | Block 2x1 tiles from 7E8A to $7164 | ||
7E6F | DEFB $02,$05,$FF,$90,$65 | Fill horz 5 tiles with $FF at $6590 | ||
7E74 | DEFB $03,$FF,$03,$03,$AE,$65 | Rectangle 3x3 tiles with $FF at $65AE | ||
7E7A | DEFB $FF | End of sequence |
|
||||
7E7B | DEFB $00,$01,$01,$02 | ![]() |
||
7E7F | DEFB $03,$04,$04,$05 | |||
7E83 | DEFB $06,$07,$07,$08 | |||
7E87 | DEFB $09,$1D,$0A | ![]() |
||
7E8A | DEFB $09,$0A | ![]() |
|
||||
![]() |
||||
7E8C | DEFW $7918 | Room procedure | ||
7E8E | DEFW $A0ED | Initialization | ||
7E90 | DEFW $7DA9 | Room to Left | ||
7E92 | DEFW $7EF2 | Room to Right | ||
7E94 | DEFW $0000 | |||
7E96 | DEFW $7F48 | Room Down | ||
7E98 | DEFB $04,$01 | Fill entire screen with $01 | ||
7E9A | DEFB $02,$1E,$FF,$90,$65 | Fill horz 30 tiles with $FF at $6590 | ||
7E9F | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
7EA4 | DEFB $0C,$2C,$7C,$02,$01,$72,$67 | Block 2 tiles from 7C2C to $6772 copy 1 times | ||
7EAB | DEFB $0C,$2C,$7C,$02,$01,$84,$67 | Block 2 tiles from 7C2C to $6784 copy 1 times | ||
7EB2 | DEFB $05,$03,$03,$18,$7C,$0C,$71 | Block 3x3 tiles from 7C18 to $710C | ||
7EB9 | DEFB $05,$03,$04,$0C,$7C,$F2,$70 | Block 3x4 tiles from 7C0C to $70F2 | ||
7EC0 | DEFB $05,$04,$03,$7B,$7E,$11,$71 | Block 4x3 tiles from 7E7B to $7111 | ||
7EC7 | DEFB $05,$04,$03,$7B,$7E,$15,$71 | Block 4x3 tiles from 7E7B to $7115 | ||
7ECE | DEFB $05,$04,$03,$7B,$7E,$BE,$70 | Block 4x3 tiles from 7E7B to $70BE | ||
7ED5 | DEFB $05,$03,$03,$A0,$71,$BA,$70 | Block 3x3 tiles from 71A0 to $70BA | ||
7EDC | DEFB $05,$03,$03,$A0,$71,$1B,$71 | Block 3x3 tiles from 71A0 to $711B | ||
7EE3 | DEFB $05,$03,$03,$18,$7C,$22,$71 | Block 3x3 tiles from 7C18 to $7122 | ||
7EEA | DEFB $05,$03,$04,$0C,$7C,$06,$71 | Block 3x4 tiles from 7C0C to $7106 | ||
7EF1 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7EF2 | DEFW $B47A | Room procedure | ||
7EF4 | DEFW $A154 | Initialization | ||
7EF6 | DEFW $7E8C | Room to Left | ||
7EF8 | DEFW $0000 | |||
7EFA | DEFW $0000 | |||
7EFC | DEFW $0000 | |||
7EFE | DEFB $04,$01 | Fill entire screen with $01 | ||
7F00 | DEFB $02,$1E,$FF,$90,$65 | Fill horz 30 tiles with $FF at $6590 | ||
7F05 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
7F0A | DEFB $01,$0F,$EB,$CA,$65 | Fill vert 15 tiles with $EB at $65CA | ||
7F0F | DEFB $05,$04,$03,$7B,$7E,$63,$70 | Block 4x3 tiles from 7E7B to $7063 | ||
7F16 | DEFB $05,$04,$03,$7B,$7E,$BA,$70 | Block 4x3 tiles from 7E7B to $70BA | ||
7F1D | DEFB $05,$04,$03,$7B,$7E,$17,$71 | Block 4x3 tiles from 7E7B to $7117 | ||
7F24 | DEFB $05,$03,$03,$A0,$71,$C0,$70 | Block 3x3 tiles from 71A0 to $70C0 | ||
7F2B | DEFB $05,$03,$03,$A0,$71,$0E,$71 | Block 3x3 tiles from 71A0 to $710E | ||
7F32 | DEFB $05,$03,$03,$A0,$71,$12,$71 | Block 3x3 tiles from 71A0 to $7112 | ||
7F39 | DEFB $05,$03,$03,$A0,$71,$1C,$71 | Block 3x3 tiles from 71A0 to $711C | ||
7F40 | DEFB $05,$03,$03,$A0,$71,$23,$71 | Block 3x3 tiles from 71A0 to $7123 | ||
7F47 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7F48 | DEFW $B483 | Room procedure | ||
7F4A | DEFW $A14F | Initialization | ||
7F4C | DEFW $0000 | |||
7F4E | DEFW $7F9C | Room to Right | ||
7F50 | DEFW $7E8C | Room Up | ||
7F52 | DEFW $7FC4 | Room Down | ||
7F54 | DEFB $04,$FF | Fill entire screen with $FF | ||
7F56 | DEFB $03,$01,$08,$0C,$B2,$65 | Rectangle 8x12 tiles with $01 at $65B2 | ||
7F5C | DEFB $03,$01,$12,$07,$6E,$66 | Rectangle 18x7 tiles with $01 at $666E | ||
7F62 | DEFB $02,$04,$01,$1E,$67 | Fill horz 4 tiles with $01 at $671E | ||
7F67 | DEFB $07,$01,$05,$D8,$65 | Triangle with $01, count=5 at $65D8 | ||
7F6C | DEFB $0C,$9A,$7C,$02,$0D,$92,$65 | Block 2 tiles from 7C9A to $6592 copy 13 times | ||
7F73 | DEFB $0C,$9A,$7C,$02,$0E,$A4,$65 | Block 2 tiles from 7C9A to $65A4 copy 14 times | ||
7F7A | DEFB $01,$01,$E4,$5E,$66 | Fill vert 1 tiles with $E4 at $665E | ||
7F7F | DEFB $05,$03,$03,$18,$7C,$DF,$70 | Block 3x3 tiles from 7C18 to $70DF | ||
7F86 | DEFB $05,$01,$03,$4F,$7B,$42,$67 | Block 1x3 tiles from 7B4F to $6742 | ||
7F8D | DEFB $05,$01,$03,$4F,$7B,$4B,$67 | Block 1x3 tiles from 7B4F to $674B | ||
7F94 | DEFB $05,$02,$03,$84,$79,$3E,$67 | Block 2x3 tiles from 7984 to $673E | ||
7F9B | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7F9C | DEFW $B458 | Room procedure | ||
7F9E | DEFW $A1B5 | Initialization | ||
7FA0 | DEFW $7F48 | Room to Left | ||
7FA2 | DEFW $0000 | |||
7FA4 | DEFW $0000 | |||
7FA6 | DEFW $8008 | Room Down | ||
7FA8 | DEFB $04,$FF | Fill entire screen with $FF | ||
7FAA | DEFB $03,$01,$1B,$07,$62,$66 | Rectangle 27x7 tiles with $01 at $6662 | ||
7FB0 | DEFB $01,$01,$E4,$46,$66 | Fill vert 1 tiles with $E4 at $6646 | ||
7FB5 | DEFB $05,$02,$03,$84,$79,$38,$67 | Block 2x3 tiles from 7984 to $6738 | ||
7FBC | DEFB $05,$02,$03,$84,$79,$48,$67 | Block 2x3 tiles from 7984 to $6748 | ||
7FC3 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
7FC4 | DEFW $B41F | Room procedure | ||
7FC6 | DEFW $B422 | Initialization | ||
7FC8 | DEFW $7C6D | Room to Left | ||
7FCA | DEFW $8008 | Room to Right | ||
7FCC | DEFW $7F48 | Room Up | ||
7FCE | DEFW $0000 | |||
7FD0 | DEFB $04,$FF | Fill entire screen with $FF | ||
7FD2 | DEFB $03,$02,$0D,$06,$80,$66 | Rectangle 13x6 tiles with $02 at $6680 | ||
7FD8 | DEFB $02,$04,$03,$80,$66 | Fill horz 4 tiles with $03 at $6680 | ||
7FDD | DEFB $02,$09,$03,$66,$66 | Fill horz 9 tiles with $03 at $6666 | ||
7FE2 | DEFB $0C,$B9,$71,$02,$0E,$9A,$65 | Block 2 tiles from 71B9 to $659A copy 14 times | ||
7FE9 | DEFB $01,$11,$FD,$9E,$65 | Fill vert 17 tiles with $FD at $659E | ||
7FEE | DEFB $02,$0E,$03,$36,$66 | Fill horz 14 tiles with $03 at $6636 | ||
7FF3 | DEFB $03,$02,$0E,$05,$54,$66 | Rectangle 14x5 tiles with $02 at $6654 | ||
7FF9 | DEFB $05,$01,$06,$4F,$7B,$F1,$66 | Block 1x6 tiles from 7B4F to $66F1 | ||
8000 | DEFB $05,$01,$05,$51,$7B,$A7,$65 | Block 1x5 tiles from 7B51 to $65A7 | ||
8007 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8008 | DEFW $B41F | Room procedure | ||
800A | DEFW $B422 | Initialization | ||
800C | DEFW $7FC4 | Room to Left | ||
800E | DEFW $0000 | |||
8010 | DEFW $7F9C | Room Up | ||
8012 | DEFW $8076 | Room Down | ||
8014 | DEFB $04,$FF | Fill entire screen with $FF | ||
8016 | DEFB $02,$0D,$03,$26,$66 | Fill horz 13 tiles with $03 at $6626 | ||
801B | DEFB $02,$0B,$03,$36,$66 | Fill horz 11 tiles with $03 at $6636 | ||
8020 | DEFB $03,$02,$0D,$05,$44,$66 | Rectangle 13x5 tiles with $02 at $6644 | ||
8026 | DEFB $03,$02,$0B,$06,$54,$66 | Rectangle 11x6 tiles with $02 at $6654 | ||
802C | DEFB $02,$0A,$02,$DD,$66 | Fill horz 10 tiles with $02 at $66DD | ||
8031 | DEFB $0C,$B9,$71,$02,$0C,$94,$65 | Block 2 tiles from 71B9 to $6594 copy 12 times | ||
8038 | DEFB $0C,$B9,$71,$02,$0C,$A4,$65 | Block 2 tiles from 71B9 to $65A4 copy 12 times | ||
803F | DEFB $05,$02,$05,$84,$79,$FF,$66 | Block 2x5 tiles from 7984 to $66FF | ||
8046 | DEFB $05,$02,$05,$84,$79,$0C,$67 | Block 2x5 tiles from 7984 to $670C | ||
804D | DEFB $05,$01,$05,$4F,$7B,$02,$67 | Block 1x5 tiles from 7B4F to $6702 | ||
8054 | DEFB $05,$01,$05,$4F,$7B,$0A,$67 | Block 1x5 tiles from 7B4F to $670A | ||
805B | DEFB $05,$01,$05,$4F,$7B,$11,$67 | Block 1x5 tiles from 7B4F to $6711 | ||
8062 | DEFB $05,$01,$05,$51,$7B,$A2,$65 | Block 1x5 tiles from 7B51 to $65A2 | ||
8069 | DEFB $05,$01,$05,$51,$7B,$A9,$65 | Block 1x5 tiles from 7B51 to $65A9 | ||
8070 | DEFB $01,$11,$FD,$9E,$65 | Fill vert 17 tiles with $FD at $659E | ||
8075 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8076 | DEFW $B41F | Room procedure | ||
8078 | DEFW $B422 | Initialization | ||
807A | DEFW $0000 | |||
807C | DEFW $0000 | |||
807E | DEFW $8008 | Room Up | ||
8080 | DEFW $8384 | Room Down | ||
8082 | DEFB $04,$FF | Fill entire screen with $FF | ||
8084 | DEFB $01,$11,$FD,$9A,$65 | Fill vert 17 tiles with $FD at $659A | ||
8089 | DEFB $01,$11,$FD,$9E,$65 | Fill vert 17 tiles with $FD at $659E | ||
808E | DEFB $01,$11,$FD,$A2,$65 | Fill vert 17 tiles with $FD at $65A2 | ||
8093 | DEFB $01,$11,$FD,$A9,$65 | Fill vert 17 tiles with $FD at $65A9 | ||
8098 | DEFB $0C,$B9,$71,$02,$11,$97,$65 | Block 2 tiles from 71B9 to $6597 copy 17 times | ||
809F | DEFB $0C,$B9,$71,$02,$11,$A4,$65 | Block 2 tiles from 71B9 to $65A4 copy 17 times | ||
80A6 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
80A7 | DEFW $B458 | Room procedure | ||
80A9 | DEFW $A1CB | Initialization | ||
80AB | DEFW $7E05 | Room to Left | ||
80AD | DEFW $80F6 | Room to Right | ||
80AF | DEFW $0000 | |||
80B1 | DEFW $0000 | |||
80B3 | DEFB $02,$1E,$FF,$90,$65 | Fill horz 30 tiles with $FF at $6590 | ||
80B8 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
80BD | DEFB $05,$03,$04,$0C,$7C,$F0,$70 | Block 3x4 tiles from 7C0C to $70F0 | ||
80C4 | DEFB $05,$03,$03,$21,$7C,$13,$71 | Block 3x3 tiles from 7C21 to $7113 | ||
80CB | DEFB $05,$03,$03,$A0,$71,$17,$71 | Block 3x3 tiles from 71A0 to $7117 | ||
80D2 | DEFB $05,$04,$03,$7B,$7E,$1C,$71 | Block 4x3 tiles from 7E7B to $711C | ||
80D9 | DEFB $05,$03,$03,$21,$7C,$C3,$70 | Block 3x3 tiles from 7C21 to $70C3 | ||
80E0 | DEFB $05,$03,$03,$21,$7C,$C9,$70 | Block 3x3 tiles from 7C21 to $70C9 | ||
80E7 | DEFB $05,$03,$03,$21,$7C,$22,$71 | Block 3x3 tiles from 7C21 to $7122 | ||
80EE | DEFB $05,$03,$03,$21,$7C,$25,$71 | Block 3x3 tiles from 7C21 to $7125 | ||
80F5 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
80F6 | DEFW $B452 | Room procedure | ||
80F8 | DEFW $A38E | Initialization | ||
80FA | DEFW $80A7 | Room to Left | ||
80FC | DEFW $0000 | |||
80FE | DEFW $0000 | |||
8100 | DEFW $0000 | |||
8102 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
8107 | DEFB $03,$FF,$02,$10,$AC,$65 | Rectangle 2x16 tiles with $FF at $65AC | ||
810D | DEFB $05,$02,$04,$BB,$71,$F1,$70 | Block 2x4 tiles from 71BB to $70F1 | ||
8114 | DEFB $05,$03,$03,$21,$7C,$BA,$70 | Block 3x3 tiles from 7C21 to $70BA | ||
811B | DEFB $05,$03,$03,$21,$7C,$12,$71 | Block 3x3 tiles from 7C21 to $7112 | ||
8122 | DEFB $05,$03,$03,$21,$7C,$15,$71 | Block 3x3 tiles from 7C21 to $7115 | ||
8129 | DEFB $05,$03,$03,$21,$7C,$6F,$70 | Block 3x3 tiles from 7C21 to $706F | ||
8130 | DEFB $05,$03,$03,$21,$7C,$C7,$70 | Block 3x3 tiles from 7C21 to $70C7 | ||
8137 | DEFB $05,$03,$03,$21,$7C,$CB,$70 | Block 3x3 tiles from 7C21 to $70CB | ||
813E | DEFB $05,$03,$03,$21,$7C,$1F,$71 | Block 3x3 tiles from 7C21 to $711F | ||
8145 | DEFB $05,$03,$03,$21,$7C,$22,$71 | Block 3x3 tiles from 7C21 to $7122 | ||
814C | DEFB $05,$03,$03,$21,$7C,$25,$71 | Block 3x3 tiles from 7C21 to $7125 | ||
8153 | DEFB $05,$04,$03,$7B,$7E,$1A,$71 | Block 4x3 tiles from 7E7B to $711A | ||
815A | DEFB $05,$02,$01,$8A,$7E,$55,$71 | Block 2x1 tiles from 7E8A to $7155 | ||
8161 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8162 | DEFW $B458 | Room procedure | ||
8164 | DEFW $A1C0 | Initialization | ||
8166 | DEFW $81E5 | Room to Left | ||
8168 | DEFW $0000 | |||
816A | DEFW $8321 | Room Up | ||
816C | DEFW $7BD2 | Room Down | ||
816E | DEFB $03,$01,$1C,$08,$80,$66 | Rectangle 28x8 tiles with $01 at $6680 | ||
8174 | DEFB $02,$1C,$FF,$62,$66 | Fill horz 28 tiles with $FF at $6662 | ||
8179 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
817E | DEFB $02,$0D,$FF,$90,$65 | Fill horz 13 tiles with $FF at $6590 | ||
8183 | DEFB $02,$07,$FF,$A7,$65 | Fill horz 7 tiles with $FF at $65A7 | ||
8188 | DEFB $0C,$E3,$81,$02,$0F,$CA,$65 | Block 2 tiles from 81E3 to $65CA copy 15 times | ||
818F | DEFB $0C,$48,$73,$02,$07,$A0,$65 | Block 2 tiles from 7348 to $65A0 copy 7 times | ||
8196 | DEFB $05,$02,$04,$BB,$71,$E7,$6F | Block 2x4 tiles from 71BB to $6FE7 | ||
819D | DEFB $05,$03,$04,$0C,$7C,$EF,$70 | Block 3x4 tiles from 7C0C to $70EF | ||
81A4 | DEFB $05,$03,$03,$18,$7C,$10,$71 | Block 3x3 tiles from 7C18 to $7110 | ||
81AB | DEFB $05,$03,$03,$18,$7C,$1D,$71 | Block 3x3 tiles from 7C18 to $711D | ||
81B2 | DEFB $05,$03,$04,$0C,$7C,$04,$71 | Block 3x4 tiles from 7C0C to $7104 | ||
81B9 | DEFB $05,$03,$03,$18,$7C,$25,$71 | Block 3x3 tiles from 7C18 to $7125 | ||
81C0 | DEFB $0E,$2A,$A8,$6F | Put tile $2A at $6FA8 | ||
81C4 | DEFB $01,$05,$2B,$C6,$6F | Fill vert 5 tiles with $2B at $6FC6 | ||
81C9 | DEFB $0E,$2A,$AF,$6F | Put tile $2A at $6FAF | ||
81CD | DEFB $01,$05,$2B,$CD,$6F | Fill vert 5 tiles with $2B at $6FCD | ||
81D2 | DEFB $0E,$2A,$BC,$6F | Put tile $2A at $6FBC | ||
81D6 | DEFB $01,$05,$2B,$DA,$6F | Fill vert 5 tiles with $2B at $6FDA | ||
81DB | DEFB $0C,$2C,$7C,$02,$01,$7E,$67 | Block 2 tiles from 7C2C to $677E copy 1 times | ||
81E2 | DEFB $FF | End of sequence |
|
||||
81E3 | DEFB $FF,$FF | Block 2x1 |
|
||||
![]() |
||||
81E5 | DEFW $B452 | Room procedure | ||
81E7 | DEFW $A353 | Initialization | ||
81E9 | DEFW $8238 | Room to Left | ||
81EB | DEFW $8162 | Room to Right | ||
81ED | DEFW $0000 | |||
81EF | DEFW $0000 | |||
81F1 | DEFB $03,$FF,$1E,$09,$80,$66 | Rectangle 30x9 tiles with $FF at $6680 | ||
81F7 | DEFB $03,$01,$1C,$07,$A0,$66 | Rectangle 28x7 tiles with $01 at $66A0 | ||
81FD | DEFB $02,$05,$00,$80,$66 | Fill horz 5 tiles with $00 at $6680 | ||
8202 | DEFB $02,$06,$FF,$9E,$66 | Fill horz 6 tiles with $FF at $669E | ||
8207 | DEFB $02,$0C,$FF,$90,$65 | Fill horz 12 tiles with $FF at $6590 | ||
820C | DEFB $02,$0B,$FF,$A3,$65 | Fill horz 11 tiles with $FF at $65A3 | ||
8211 | DEFB $06,$FF,$02,$AE,$65 | Triangle with $FF, count=2 at $65AE | ||
8216 | DEFB $0E,$2A,$AC,$6F | Put tile $2A at $6FAC | ||
821A | DEFB $0E,$2A,$B8,$6F | Put tile $2A at $6FB8 | ||
821E | DEFB $01,$06,$2B,$CA,$6F | Fill vert 6 tiles with $2B at $6FCA | ||
8223 | DEFB $01,$05,$2B,$D6,$6F | Fill vert 5 tiles with $2B at $6FD6 | ||
8228 | DEFB $02,$0A,$01,$94,$66 | Fill horz 10 tiles with $01 at $6694 | ||
822D | DEFB $02,$18,$01,$A4,$66 | Fill horz 24 tiles with $01 at $66A4 | ||
8232 | DEFB $02,$0B,$FF,$75,$66 | Fill horz 11 tiles with $FF at $6675 | ||
8237 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8238 | DEFW $B41F | Room procedure | ||
823A | DEFW $B422 | Initialization | ||
823C | DEFW $0000 | |||
823E | DEFW $81E5 | Room to Right | ||
8240 | DEFW $8279 | Room Up | ||
8242 | DEFW $7A17 | Room Down | ||
8244 | DEFB $04,$FF | Fill entire screen with $FF | ||
8246 | DEFB $03,$00,$1C,$06,$EC,$65 | Rectangle 28x6 tiles with $00 at $65EC | ||
824C | DEFB $02,$0E,$00,$A0,$66 | Fill horz 14 tiles with $00 at $66A0 | ||
8251 | DEFB $0C,$B9,$71,$02,$11,$98,$65 | Block 2 tiles from 71B9 to $6598 copy 17 times | ||
8258 | DEFB $0C,$48,$73,$02,$07,$F2,$65 | Block 2 tiles from 7348 to $65F2 copy 7 times | ||
825F | DEFB $05,$02,$01,$84,$79,$C4,$66 | Block 2x1 tiles from 7984 to $66C4 | ||
8266 | DEFB $0E,$2A,$E4,$6F | Put tile $2A at $6FE4 | ||
826A | DEFB $0E,$2A,$F8,$6F | Put tile $2A at $6FF8 | ||
826E | DEFB $01,$06,$2B,$02,$70 | Fill vert 6 tiles with $2B at $7002 | ||
8273 | DEFB $01,$05,$2B,$16,$70 | Fill vert 5 tiles with $2B at $7016 | ||
8278 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8279 | DEFW $B41F | Room procedure | ||
827B | DEFW $B422 | Initialization | ||
827D | DEFW $0000 | |||
827F | DEFW $82DD | Room to Right | ||
8281 | DEFW $0000 | |||
8283 | DEFW $8238 | Room Down | ||
8285 | DEFB $0C,$E3,$81,$02,$11,$90,$65 | Block 2 tiles from 81E3 to $6590 copy 17 times | ||
828C | DEFB $07,$FF,$04,$BE,$66 | Triangle with $FF, count=4 at $66BE | ||
8291 | DEFB $02,$0F,$FF,$34,$67 | Fill horz 15 tiles with $FF at $6734 | ||
8296 | DEFB $02,$15,$FF,$52,$67 | Fill horz 21 tiles with $FF at $6752 | ||
829B | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
82A0 | DEFB $05,$03,$03,$21,$7C,$A5,$70 | Block 3x3 tiles from 7C21 to $70A5 | ||
82A7 | DEFB $05,$03,$03,$21,$7C,$C7,$70 | Block 3x3 tiles from 7C21 to $70C7 | ||
82AE | DEFB $05,$03,$03,$21,$7C,$DB,$70 | Block 3x3 tiles from 7C21 to $70DB | ||
82B5 | DEFB $05,$03,$03,$21,$7C,$FD,$70 | Block 3x3 tiles from 7C21 to $70FD | ||
82BC | DEFB $05,$03,$03,$21,$7C,$00,$71 | Block 3x3 tiles from 7C21 to $7100 | ||
82C3 | DEFB $05,$03,$03,$21,$7C,$21,$71 | Block 3x3 tiles from 7C21 to $7121 | ||
82CA | DEFB $05,$03,$03,$21,$7C,$24,$71 | Block 3x3 tiles from 7C21 to $7124 | ||
82D1 | DEFB $05,$02,$03,$84,$79,$3C,$67 | Block 2x3 tiles from 7984 to $673C | ||
82D8 | DEFB $0E,$00,$BE,$66 | Put tile $00 at $66BE | ||
82DC | DEFB $FF | End of sequence |
|
||||
![]() |
||||
82DD | DEFW $B41F | Room procedure | ||
82DF | DEFW $B422 | Initialization | ||
82E1 | DEFW $8279 | Room to Left | ||
82E3 | DEFW $8321 | Room to Right | ||
82E5 | DEFW $0000 | |||
82E7 | DEFW $81E5 | Room Down | ||
82E9 | DEFB $02,$0D,$FF,$70,$67 | Fill horz 13 tiles with $FF at $6770 | ||
82EE | DEFB $02,$07,$FF,$58,$67 | Fill horz 7 tiles with $FF at $6758 | ||
82F3 | DEFB $02,$06,$FF,$64,$67 | Fill horz 6 tiles with $FF at $6764 | ||
82F8 | DEFB $02,$0C,$FF,$82,$67 | Fill horz 12 tiles with $FF at $6782 | ||
82FD | DEFB $05,$03,$03,$21,$7C,$0C,$71 | Block 3x3 tiles from 7C21 to $710C | ||
8304 | DEFB $05,$03,$03,$21,$7C,$0F,$71 | Block 3x3 tiles from 7C21 to $710F | ||
830B | DEFB $05,$03,$03,$21,$7C,$F5,$70 | Block 3x3 tiles from 7C21 to $70F5 | ||
8312 | DEFB $05,$03,$03,$A0,$71,$02,$71 | Block 3x3 tiles from 71A0 to $7102 | ||
8319 | DEFB $05,$04,$03,$7B,$7E,$25,$71 | Block 4x3 tiles from 7E7B to $7125 | ||
8320 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8321 | DEFW $B41F | Room procedure | ||
8323 | DEFW $B422 | Initialization | ||
8325 | DEFW $82DD | Room to Left | ||
8327 | DEFW $0000 | |||
8329 | DEFW $844E | Room Up | ||
832B | DEFW $8162 | Room Down | ||
832D | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
8332 | DEFB $05,$02,$01,$84,$79,$80,$67 | Block 2x1 tiles from 7984 to $6780 | ||
8339 | DEFB $03,$FF,$03,$04,$AB,$65 | Rectangle 3x4 tiles with $FF at $65AB | ||
833F | DEFB $01,$0C,$EB,$24,$66 | Fill vert 12 tiles with $EB at $6624 | ||
8344 | DEFB $05,$04,$03,$7B,$7E,$0E,$71 | Block 4x3 tiles from 7E7B to $710E | ||
834B | DEFB $05,$04,$03,$7B,$7E,$B6,$70 | Block 4x3 tiles from 7E7B to $70B6 | ||
8352 | DEFB $05,$03,$03,$A0,$71,$13,$71 | Block 3x3 tiles from 71A0 to $7113 | ||
8359 | DEFB $05,$03,$03,$21,$7C,$18,$71 | Block 3x3 tiles from 7C21 to $7118 | ||
8360 | DEFB $05,$03,$03,$A0,$71,$1F,$71 | Block 3x3 tiles from 71A0 to $711F | ||
8367 | DEFB $05,$03,$03,$A0,$71,$24,$71 | Block 3x3 tiles from 71A0 to $7124 | ||
836E | DEFB $05,$02,$01,$8A,$7E,$5F,$71 | Block 2x1 tiles from 7E8A to $715F | ||
8375 | DEFB $05,$04,$03,$7B,$7E,$C7,$70 | Block 4x3 tiles from 7E7B to $70C7 | ||
837C | DEFB $0C,$48,$73,$02,$10,$A0,$65 | Block 2 tiles from 7348 to $65A0 copy 16 times | ||
8383 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8384 | DEFW $B41F | Room procedure | ||
8386 | DEFW $B422 | Initialization | ||
8388 | DEFW $0000 | |||
838A | DEFW $0000 | |||
838C | DEFW $8076 | Room Up | ||
838E | DEFW $9376 | Room Down | ||
8390 | DEFB $04,$FF | Fill entire screen with $FF | ||
8392 | DEFB $03,$02,$0F,$07,$28,$66 | Rectangle 15x7 tiles with $02 at $6628 | ||
8398 | DEFB $02,$0F,$03,$0A,$66 | Fill horz 15 tiles with $03 at $660A | ||
839D | DEFB $03,$02,$06,$07,$3C,$66 | Rectangle 6x7 tiles with $02 at $663C | ||
83A3 | DEFB $02,$06,$03,$1E,$66 | Fill horz 6 tiles with $03 at $661E | ||
83A8 | DEFB $0C,$B9,$71,$02,$0C,$97,$65 | Block 2 tiles from 71B9 to $6597 copy 12 times | ||
83AF | DEFB $0C,$B9,$71,$02,$11,$A4,$65 | Block 2 tiles from 71B9 to $65A4 copy 17 times | ||
83B6 | DEFB $05,$02,$05,$84,$79,$FC,$66 | Block 2x5 tiles from 7984 to $66FC | ||
83BD | DEFB $05,$02,$01,$84,$79,$0C,$67 | Block 2x1 tiles from 7984 to $670C | ||
83C4 | DEFB $01,$11,$FD,$A2,$65 | Fill vert 17 tiles with $FD at $65A2 | ||
83C9 | DEFB $05,$01,$04,$52,$7B,$9A,$65 | Block 1x4 tiles from 7B52 to $659A | ||
83D0 | DEFB $05,$01,$04,$52,$7B,$9E,$65 | Block 1x4 tiles from 7B52 to $659E | ||
83D7 | DEFB $05,$01,$04,$52,$7B,$A9,$65 | Block 1x4 tiles from 7B52 to $65A9 | ||
83DE | DEFB $05,$01,$05,$4F,$7B,$02,$67 | Block 1x5 tiles from 7B4F to $6702 | ||
83E5 | DEFB $05,$01,$05,$4F,$7B,$11,$67 | Block 1x5 tiles from 7B4F to $6711 | ||
83EC | DEFB $FF | End of sequence |
|
||||
![]() |
||||
83ED | DEFW $B452 | Room procedure | ||
83EF | DEFW $A361 | Initialization | ||
83F1 | DEFW $0000 | |||
83F3 | DEFW $920A | Room to Right | ||
83F5 | DEFW $913F | Room Up | ||
83F7 | DEFW $7E05 | Room Down | ||
83F9 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
83FE | DEFB $0C,$48,$73,$02,$10,$99,$65 | Block 2 tiles from 7348 to $6599 copy 16 times | ||
8405 | DEFB $05,$02,$01,$84,$79,$79,$67 | Block 2x1 tiles from 7984 to $6779 | ||
840C | DEFB $03,$FF,$03,$04,$90,$65 | Rectangle 3x4 tiles with $FF at $6590 | ||
8412 | DEFB $02,$02,$FF,$93,$65 | Fill horz 2 tiles with $FF at $6593 | ||
8417 | DEFB $01,$0C,$EB,$09,$66 | Fill vert 12 tiles with $EB at $6609 | ||
841C | DEFB $05,$03,$04,$0C,$7C,$F2,$70 | Block 3x4 tiles from 7C0C to $70F2 | ||
8423 | DEFB $05,$03,$03,$A0,$71,$0E,$71 | Block 3x3 tiles from 71A0 to $710E | ||
842A | DEFB $05,$02,$01,$8A,$7E,$4E,$71 | Block 2x1 tiles from 7E8A to $714E | ||
8431 | DEFB $05,$04,$03,$7B,$7E,$C4,$70 | Block 4x3 tiles from 7E7B to $70C4 | ||
8438 | DEFB $05,$04,$03,$7B,$7E,$1B,$71 | Block 4x3 tiles from 7E7B to $711B | ||
843F | DEFB $05,$03,$04,$0C,$7C,$06,$71 | Block 3x4 tiles from 7C0C to $7106 | ||
8446 | DEFB $05,$04,$03,$7B,$7E,$21,$71 | Block 4x3 tiles from 7E7B to $7121 | ||
844D | DEFB $FF | End of sequence |
|
||||
![]() |
||||
844E | DEFW $B452 | Room procedure | ||
8450 | DEFW $A37F | Initialization | ||
8452 | DEFW $84A8 | Room to Left | ||
8454 | DEFW $0000 | |||
8456 | DEFW $0000 | |||
8458 | DEFW $8321 | Room Down | ||
845A | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
845F | DEFB $02,$06,$FF,$52,$67 | Fill horz 6 tiles with $FF at $6752 | ||
8464 | DEFB $03,$FF,$03,$04,$AB,$65 | Rectangle 3x4 tiles with $FF at $65AB | ||
846A | DEFB $01,$0C,$EB,$24,$66 | Fill vert 12 tiles with $EB at $6624 | ||
846F | DEFB $05,$02,$01,$84,$79,$80,$67 | Block 2x1 tiles from 7984 to $6780 | ||
8476 | DEFB $05,$03,$03,$A0,$71,$F0,$70 | Block 3x3 tiles from 71A0 to $70F0 | ||
847D | DEFB $05,$03,$03,$A0,$71,$12,$71 | Block 3x3 tiles from 71A0 to $7112 | ||
8484 | DEFB $00,$BE,$70 | Barrel 3x3 tiles at $70BE | ||
8487 | DEFB $00,$16,$71 | Barrel 3x3 tiles at $7116 | ||
848A | DEFB $00,$19,$71 | Barrel 3x3 tiles at $7119 | ||
848D | DEFB $05,$04,$03,$7B,$7E,$1F,$71 | Block 4x3 tiles from 7E7B to $711F | ||
8494 | DEFB $05,$03,$04,$9C,$84,$07,$71 | Block 3x4 tiles from 849C to $7107 | ||
849B | DEFB $FF | End of sequence |
|
||||
849C | DEFB $00,$01,$02 | ![]() |
||
849F | DEFB $03,$04,$05 | |||
84A2 | DEFB $03,$04,$05 | |||
84A5 | DEFB $06,$07,$08 |
|
||||
![]() |
||||
84A8 | DEFW $B41F | Room procedure | ||
84AA | DEFW $F973 | Initialization | ||
84AC | DEFW $84EE | Room to Left | ||
84AE | DEFW $844E | Room to Right | ||
84B0 | DEFW $0000 | |||
84B2 | DEFW $82DD | Room Down | ||
84B4 | DEFB $03,$FF,$0D,$02,$52,$67 | Rectangle 13x2 tiles with $FF at $6752 | ||
84BA | DEFB $03,$FF,$0C,$02,$64,$67 | Rectangle 12x2 tiles with $FF at $6764 | ||
84C0 | DEFB $02,$03,$FF,$BC,$65 | Fill horz 3 tiles with $FF at $65BC | ||
84C5 | DEFB $02,$0D,$FF,$9A,$65 | Fill horz 13 tiles with $FF at $659A | ||
84CA | DEFB $00,$F0,$70 | Barrel 3x3 tiles at $70F0 | ||
84CD | DEFB $00,$97,$70 | Barrel 3x3 tiles at $7097 | ||
84D0 | DEFB $05,$04,$03,$7B,$7E,$04,$71 | Block 4x3 tiles from 7E7B to $7104 | ||
84D7 | DEFB $05,$05,$03,$DF,$84,$F2,$70 | Block 5x3 tiles from 84DF to $70F2 | ||
84DE | DEFB $FF | End of sequence |
|
||||
84DF | DEFB $00,$01,$01,$01,$02 | ![]() |
||
84E4 | DEFB $03,$04,$04,$04,$05 | |||
84E9 | DEFB $06,$07,$07,$07,$08 |
|
||||
![]() |
||||
84EE | DEFW $7918 | Room procedure | ||
84F0 | DEFW $A10B | Initialization | ||
84F2 | DEFW $0000 | |||
84F4 | DEFW $84A8 | Room to Right | ||
84F6 | DEFW $8526 | Room Up | ||
84F8 | DEFW $0000 | |||
84FA | DEFB $03,$FF,$02,$0F,$90,$65 | Rectangle 2x15 tiles with $FF at $6590 | ||
8500 | DEFB $03,$FF,$1E,$02,$52,$67 | Rectangle 30x2 tiles with $FF at $6752 | ||
8506 | DEFB $0C,$48,$73,$02,$0F,$98,$65 | Block 2 tiles from 7348 to $6598 copy 15 times | ||
850D | DEFB $00,$F0,$70 | Barrel 3x3 tiles at $70F0 | ||
8510 | DEFB $00,$F3,$70 | Barrel 3x3 tiles at $70F3 | ||
8513 | DEFB $00,$4D,$70 | Barrel 3x3 tiles at $704D | ||
8516 | DEFB $00,$A6,$70 | Barrel 3x3 tiles at $70A6 | ||
8519 | DEFB $00,$A9,$70 | Barrel 3x3 tiles at $70A9 | ||
851C | DEFB $00,$FE,$70 | Barrel 3x3 tiles at $70FE | ||
851F | DEFB $00,$01,$71 | Barrel 3x3 tiles at $7101 | ||
8522 | DEFB $00,$04,$71 | Barrel 3x3 tiles at $7104 | ||
8525 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8526 | DEFW $B483 | Room procedure | ||
8528 | DEFW $A179 | Initialization | ||
852A | DEFW $0000 | |||
852C | DEFW $858F | Room to Right | ||
852E | DEFW $8608 | Room Up | ||
8530 | DEFW $84EE | Room Down | ||
8532 | DEFB $0C,$E3,$81,$02,$10,$90,$65 | Block 2 tiles from 81E3 to $6590 copy 16 times | ||
8539 | DEFB $0C,$48,$73,$02,$10,$98,$65 | Block 2 tiles from 7348 to $6598 copy 16 times | ||
8540 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
8545 | DEFB $05,$02,$01,$84,$79,$78,$67 | Block 2x1 tiles from 7984 to $6778 | ||
854C | DEFB $00,$B4,$70 | Barrel 3x3 tiles at $70B4 | ||
854F | DEFB $00,$0F,$71 | Barrel 3x3 tiles at $710F | ||
8552 | DEFB $00,$26,$71 | Barrel 3x3 tiles at $7126 | ||
8555 | DEFB $05,$02,$02,$77,$85,$38,$71 | Block 2x2 tiles from 8577 to $7138 | ||
855C | DEFB $05,$03,$04,$9C,$84,$00,$71 | Block 3x4 tiles from 849C to $7100 | ||
8563 | DEFB $05,$02,$02,$77,$85,$3E,$71 | Block 2x2 tiles from 8577 to $713E | ||
856A | DEFB $05,$02,$02,$77,$85,$41,$71 | Block 2x2 tiles from 8577 to $7141 | ||
8571 | DEFB $02,$06,$FF,$9F,$65 | Fill horz 6 tiles with $FF at $659F | ||
8576 | DEFB $FF | End of sequence |
|
||||
8577 | DEFB $00,$02 | ![]() |
||
8579 | DEFB $06,$08 | |||
857B | DEFB $00,$01,$01,$01,$02 | ![]() |
||
8580 | DEFB $03,$04,$04,$04,$05 | |||
8585 | DEFB $03,$04,$04,$04,$05 | |||
858A | DEFB $06,$07,$07,$07,$08 |
|
||||
![]() |
||||
858F | DEFW $7918 | Room procedure | ||
8591 | DEFW $A106 | Initialization | ||
8593 | DEFW $8526 | Room to Left | ||
8595 | DEFW $85BD | Room to Right | ||
8597 | DEFW $0000 | |||
8599 | DEFW $0000 | |||
859B | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
85A0 | DEFB $05,$05,$04,$7B,$85,$F2,$70 | Block 5x4 tiles from 857B to $70F2 | ||
85A7 | DEFB $05,$05,$04,$7B,$85,$F9,$70 | Block 5x4 tiles from 857B to $70F9 | ||
85AE | DEFB $05,$02,$01,$8A,$7E,$4E,$71 | Block 2x1 tiles from 7E8A to $714E | ||
85B5 | DEFB $05,$03,$03,$A0,$71,$1E,$71 | Block 3x3 tiles from 71A0 to $711E | ||
85BC | DEFB $FF | End of sequence |
|
||||
![]() |
||||
85BD | DEFW $B41F | Room procedure | ||
85BF | DEFW $B422 | Initialization | ||
85C1 | DEFW $858F | Room to Left | ||
85C3 | DEFW $0000 | |||
85C5 | DEFW $8689 | Room Up | ||
85C7 | DEFW $0000 | |||
85C9 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
85CE | DEFB $03,$FF,$03,$04,$AB,$65 | Rectangle 3x4 tiles with $FF at $65AB | ||
85D4 | DEFB $01,$0C,$EB,$24,$66 | Fill vert 12 tiles with $EB at $6624 | ||
85D9 | DEFB $0C,$48,$73,$02,$10,$9D,$65 | Block 2 tiles from 7348 to $659D copy 16 times | ||
85E0 | DEFB $00,$04,$70 | Barrel 3x3 tiles at $7004 | ||
85E3 | DEFB $00,$5D,$70 | Barrel 3x3 tiles at $705D | ||
85E6 | DEFB $00,$60,$70 | Barrel 3x3 tiles at $7060 | ||
85E9 | DEFB $00,$B5,$70 | Barrel 3x3 tiles at $70B5 | ||
85EC | DEFB $00,$B8,$70 | Barrel 3x3 tiles at $70B8 | ||
85EF | DEFB $00,$BB,$70 | Barrel 3x3 tiles at $70BB | ||
85F2 | DEFB $00,$0E,$71 | Barrel 3x3 tiles at $710E | ||
85F5 | DEFB $00,$11,$71 | Barrel 3x3 tiles at $7111 | ||
85F8 | DEFB $00,$14,$71 | Barrel 3x3 tiles at $7114 | ||
85FB | DEFB $00,$1D,$71 | Barrel 3x3 tiles at $711D | ||
85FE | DEFB $00,$21,$71 | Barrel 3x3 tiles at $7121 | ||
8601 | DEFB $00,$24,$71 | Barrel 3x3 tiles at $7124 | ||
8604 | DEFB $00,$17,$71 | Barrel 3x3 tiles at $7117 | ||
8607 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8608 | DEFW $B452 | Room procedure | ||
860A | DEFW $A37A | Initialization | ||
860C | DEFW $0000 | |||
860E | DEFW $86FD | Room to Right | ||
8610 | DEFW $0000 | |||
8612 | DEFW $8526 | Room Down | ||
8614 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
8619 | DEFB $02,$1C,$FF,$82,$66 | Fill horz 28 tiles with $FF at $6682 | ||
861E | DEFB $02,$0C,$FF,$74,$66 | Fill horz 12 tiles with $FF at $6674 | ||
8623 | DEFB $0C,$E3,$81,$02,$10,$90,$65 | Block 2 tiles from 81E3 to $6590 copy 16 times | ||
862A | DEFB $02,$0E,$FF,$92,$65 | Fill horz 14 tiles with $FF at $6592 | ||
862F | DEFB $0C,$E3,$81,$02,$07,$BA,$66 | Block 2 tiles from 81E3 to $66BA copy 7 times | ||
8636 | DEFB $05,$02,$01,$84,$79,$78,$67 | Block 2x1 tiles from 7984 to $6778 | ||
863D | DEFB $05,$03,$03,$A0,$71,$C4,$6F | Block 3x3 tiles from 71A0 to $6FC4 | ||
8644 | DEFB $05,$04,$03,$7B,$7E,$1E,$70 | Block 4x3 tiles from 7E7B to $701E | ||
864B | DEFB $05,$03,$03,$A0,$71,$24,$70 | Block 3x3 tiles from 71A0 to $7024 | ||
8652 | DEFB $00,$28,$70 | Barrel 3x3 tiles at $7028 | ||
8655 | DEFB $05,$03,$03,$18,$7C,$11,$70 | Block 3x3 tiles from 7C18 to $7011 | ||
865C | DEFB $05,$03,$04,$0C,$7C,$F7,$6F | Block 3x4 tiles from 7C0C to $6FF7 | ||
8663 | DEFB $05,$03,$03,$18,$7C,$18,$71 | Block 3x3 tiles from 7C18 to $7118 | ||
866A | DEFB $00,$B5,$70 | Barrel 3x3 tiles at $70B5 | ||
866D | DEFB $00,$0E,$71 | Barrel 3x3 tiles at $710E | ||
8670 | DEFB $00,$11,$71 | Barrel 3x3 tiles at $7111 | ||
8673 | DEFB $00,$C4,$70 | Barrel 3x3 tiles at $70C4 | ||
8676 | DEFB $00,$C8,$70 | Barrel 3x3 tiles at $70C8 | ||
8679 | DEFB $00,$CB,$70 | Barrel 3x3 tiles at $70CB | ||
867C | DEFB $00,$1C,$71 | Barrel 3x3 tiles at $711C | ||
867F | DEFB $00,$1F,$71 | Barrel 3x3 tiles at $711F | ||
8682 | DEFB $00,$22,$71 | Barrel 3x3 tiles at $7122 | ||
8685 | DEFB $00,$25,$71 | Barrel 3x3 tiles at $7125 | ||
8688 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8689 | DEFW $B41F | Room procedure | ||
868B | DEFW $B422 | Initialization | ||
868D | DEFW $86FD | Room to Left | ||
868F | DEFW $0000 | |||
8691 | DEFW $0000 | |||
8693 | DEFW $85BD | Room Down | ||
8695 | DEFB $02,$39,$FF,$BC,$66 | Fill horz 57 tiles with $FF at $66BC | ||
869A | DEFB $03,$FF,$03,$11,$AB,$65 | Rectangle 3x17 tiles with $FF at $65AB | ||
86A0 | DEFB $05,$02,$02,$84,$79,$C9,$66 | Block 2x2 tiles from 7984 to $66C9 | ||
86A7 | DEFB $0C,$48,$73,$02,$05,$05,$67 | Block 2 tiles from 7348 to $6705 copy 5 times | ||
86AE | DEFB $05,$03,$03,$18,$7C,$67,$70 | Block 3x3 tiles from 7C18 to $7067 | ||
86B5 | DEFB $05,$04,$02,$F5,$86,$21,$70 | Block 4x2 tiles from 86F5 to $7021 | ||
86BC | DEFB $05,$04,$03,$7B,$7E,$5B,$70 | Block 4x3 tiles from 7E7B to $705B | ||
86C3 | DEFB $05,$03,$03,$A0,$71,$60,$70 | Block 3x3 tiles from 71A0 to $7060 | ||
86CA | DEFB $05,$03,$01,$87,$7E,$96,$70 | Block 3x1 tiles from 7E87 to $7096 | ||
86D1 | DEFB $05,$05,$03,$DF,$84,$B9,$6F | Block 5x3 tiles from 84DF to $6FB9 | ||
86D8 | DEFB $05,$03,$03,$A0,$71,$12,$70 | Block 3x3 tiles from 71A0 to $7012 | ||
86DF | DEFB $05,$04,$03,$7B,$7E,$15,$70 | Block 4x3 tiles from 7E7B to $7015 | ||
86E6 | DEFB $05,$04,$03,$7B,$7E,$6B,$70 | Block 4x3 tiles from 7E7B to $706B | ||
86ED | DEFB $05,$04,$03,$7B,$7E,$6F,$70 | Block 4x3 tiles from 7E7B to $706F | ||
86F4 | DEFB $FF | End of sequence |
|
||||
86F5 | DEFB $00,$01,$01,$02 | ![]() |
||
86F9 | DEFB $06,$07,$07,$08 |
|
||||
![]() |
||||
86FD | DEFW $B41F | Room procedure | ||
86FF | DEFW $B422 | Initialization | ||
8701 | DEFW $8608 | Room to Left | ||
8703 | DEFW $8689 | Room to Right | ||
8705 | DEFW $8739 | Room Up | ||
8707 | DEFW $0000 | |||
8709 | DEFB $06,$FF,$04,$16,$67 | Triangle with $FF, count=4 at $6716 | ||
870E | DEFB $02,$41,$FF,$BC,$66 | Fill horz 65 tiles with $FF at $66BC | ||
8713 | DEFB $07,$FF,$02,$87,$66 | Triangle with $FF, count=2 at $6687 | ||
8718 | DEFB $03,$FF,$07,$03,$62,$66 | Rectangle 7x3 tiles with $FF at $6662 | ||
871E | DEFB $0C,$48,$73,$02,$07,$93,$65 | Block 2 tiles from 7348 to $6593 copy 7 times | ||
8725 | DEFB $05,$04,$07,$AA,$79,$E6,$6F | Block 4x7 tiles from 79AA to $6FE6 | ||
872C | DEFB $00,$0E,$70 | Barrel 3x3 tiles at $700E | ||
872F | DEFB $00,$66,$70 | Barrel 3x3 tiles at $7066 | ||
8732 | DEFB $00,$69,$70 | Barrel 3x3 tiles at $7069 | ||
8735 | DEFB $00,$6F,$70 | Barrel 3x3 tiles at $706F | ||
8738 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8739 | DEFW $7918 | Room procedure | ||
873B | DEFW $A101 | Initialization | ||
873D | DEFW $8799 | Room to Left | ||
873F | DEFW $8802 | Room to Right | ||
8741 | DEFW $0000 | |||
8743 | DEFW $86FD | Room Down | ||
8745 | DEFB $01,$09,$3A,$94,$65 | Fill vert 9 tiles with $3A at $6594 | ||
874A | DEFB $01,$09,$3A,$9E,$65 | Fill vert 9 tiles with $3A at $659E | ||
874F | DEFB $01,$09,$3A,$A1,$65 | Fill vert 9 tiles with $3A at $65A1 | ||
8754 | DEFB $01,$05,$3A,$A8,$65 | Fill vert 5 tiles with $3A at $65A8 | ||
8759 | DEFB $02,$78,$FF,$9E,$66 | Fill horz 120 tiles with $FF at $669E | ||
875E | DEFB $05,$02,$04,$84,$79,$A1,$66 | Block 2x4 tiles from 7984 to $66A1 | ||
8765 | DEFB $0C,$48,$73,$02,$04,$19,$67 | Block 2 tiles from 7348 to $6719 copy 4 times | ||
876C | DEFB $05,$02,$04,$BB,$71,$2E,$70 | Block 2x4 tiles from 71BB to $702E | ||
8773 | DEFB $05,$03,$03,$18,$7C,$44,$70 | Block 3x3 tiles from 7C18 to $7044 | ||
877A | DEFB $05,$03,$04,$0C,$7C,$23,$70 | Block 3x4 tiles from 7C0C to $7023 | ||
8781 | DEFB $05,$03,$04,$0C,$7C,$33,$70 | Block 3x4 tiles from 7C0C to $7033 | ||
8788 | DEFB $FF | End of sequence |
|
||||
8789 | DEFB $00,$01,$01,$02 | ![]() |
||
878D | DEFB $03,$04,$04,$05 | |||
8791 | DEFB $03,$04,$04,$05 | |||
8795 | DEFB $06,$07,$07,$08 |
|
||||
![]() |
||||
8799 | DEFW $B41F | Room procedure | ||
879B | DEFW $B422 | Initialization | ||
879D | DEFW $0000 | |||
879F | DEFW $8739 | Room to Right | ||
87A1 | DEFW $0000 | |||
87A3 | DEFW $0000 | |||
87A5 | DEFB $01,$0F,$3A,$98,$65 | Fill vert 15 tiles with $3A at $6598 | ||
87AA | DEFB $01,$0B,$3A,$9D,$65 | Fill vert 11 tiles with $3A at $659D | ||
87AF | DEFB $01,$09,$3A,$A1,$65 | Fill vert 9 tiles with $3A at $65A1 | ||
87B4 | DEFB $01,$09,$3A,$A4,$65 | Fill vert 9 tiles with $3A at $65A4 | ||
87B9 | DEFB $01,$09,$3A,$A7,$65 | Fill vert 9 tiles with $3A at $65A7 | ||
87BE | DEFB $01,$09,$3A,$AB,$65 | Fill vert 9 tiles with $3A at $65AB | ||
87C3 | DEFB $0C,$E3,$81,$02,$0F,$90,$65 | Block 2 tiles from 81E3 to $6590 copy 15 times | ||
87CA | DEFB $03,$FF,$10,$02,$52,$67 | Rectangle 16x2 tiles with $FF at $6752 | ||
87D0 | DEFB $03,$FF,$0E,$04,$AE,$66 | Rectangle 14x4 tiles with $FF at $66AE | ||
87D6 | DEFB $08,$FF,$06,$AD,$66 | Triangle with $FF, count=6 at $66AD | ||
87DB | DEFB $06,$FF,$04,$26,$67 | Triangle with $FF, count=4 at $6726 | ||
87E0 | DEFB $02,$08,$FA,$CE,$65 | Fill horz 8 tiles with $FA at $65CE | ||
87E5 | DEFB $05,$03,$03,$A0,$71,$78,$70 | Block 3x3 tiles from 71A0 to $7078 | ||
87EC | DEFB $05,$04,$04,$89,$87,$D2,$70 | Block 4x4 tiles from 8789 to $70D2 | ||
87F3 | DEFB $05,$04,$07,$8E,$79,$7F,$70 | Block 4x7 tiles from 798E to $707F | ||
87FA | DEFB $05,$04,$07,$8E,$79,$28,$70 | Block 4x7 tiles from 798E to $7028 | ||
8801 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8802 | DEFW $B452 | Room procedure | ||
8804 | DEFW $A375 | Initialization | ||
8806 | DEFW $8739 | Room to Left | ||
8808 | DEFW $0000 | |||
880A | DEFW $8834 | Room Up | ||
880C | DEFW $0000 | |||
880E | DEFB $01,$09,$3A,$9D,$65 | Fill vert 9 tiles with $3A at $659D | ||
8813 | DEFB $01,$08,$3A,$A2,$65 | Fill vert 8 tiles with $3A at $65A2 | ||
8818 | DEFB $03,$FF,$03,$11,$AB,$65 | Rectangle 3x17 tiles with $FF at $65AB | ||
881E | DEFB $02,$84,$FF,$92,$66 | Fill horz 132 tiles with $FF at $6692 | ||
8823 | DEFB $00,$42,$70 | Barrel 3x3 tiles at $7042 | ||
8826 | DEFB $00,$46,$70 | Barrel 3x3 tiles at $7046 | ||
8829 | DEFB $00,$2F,$70 | Barrel 3x3 tiles at $702F | ||
882C | DEFB $0C,$48,$73,$02,$08,$A7,$65 | Block 2 tiles from 7348 to $65A7 copy 8 times | ||
8833 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8834 | DEFW $B41F | Room procedure | ||
8836 | DEFW $B422 | Initialization | ||
8838 | DEFW $889F | Room to Left | ||
883A | DEFW $890E | Room to Right | ||
883C | DEFW $8A81 | Room Up | ||
883E | DEFW $8802 | Room Down | ||
8840 | DEFB $01,$0B,$3A,$EC,$65 | Fill vert 11 tiles with $3A at $65EC | ||
8845 | DEFB $01,$0E,$3A,$97,$65 | Fill vert 14 tiles with $3A at $6597 | ||
884A | DEFB $01,$10,$3A,$9D,$65 | Fill vert 16 tiles with $3A at $659D | ||
884F | DEFB $01,$11,$3A,$A2,$65 | Fill vert 17 tiles with $3A at $65A2 | ||
8854 | DEFB $02,$0A,$FF,$84,$67 | Fill horz 10 tiles with $FF at $6784 | ||
8859 | DEFB $0C,$48,$73,$02,$10,$A7,$65 | Block 2 tiles from 7348 to $65A7 copy 16 times | ||
8860 | DEFB $0E,$3A,$5C,$67 | Put tile $3A at $675C | ||
8864 | DEFB $05,$02,$01,$9D,$88,$D3,$66 | Block 2x1 tiles from 889D to $66D3 | ||
886B | DEFB $05,$02,$01,$84,$79,$87,$67 | Block 2x1 tiles from 7984 to $6787 | ||
8872 | DEFB $02,$07,$FA,$7A,$67 | Fill horz 7 tiles with $FA at $677A | ||
8877 | DEFB $05,$01,$02,$98,$88,$5E,$67 | Block 1x2 tiles from 8898 to $675E | ||
887E | DEFB $02,$0C,$FA,$34,$67 | Fill horz 12 tiles with $FA at $6734 | ||
8883 | DEFB $02,$04,$FA,$80,$66 | Fill horz 4 tiles with $FA at $6680 | ||
8888 | DEFB $02,$04,$FA,$E0,$66 | Fill horz 4 tiles with $FA at $66E0 | ||
888D | DEFB $02,$06,$FA,$CD,$66 | Fill horz 6 tiles with $FA at $66CD | ||
8892 | DEFB $01,$03,$28,$88,$6F | Fill vert 3 tiles with $28 at $6F88 | ||
8897 | DEFB $FF | End of sequence |
|
||||
8898 | DEFB $F9 | ![]() |
||
8899 | DEFB $F8 | ![]() |
||
889A | DEFB $F9 | |||
889B | DEFB $F9 | |||
889C | DEFB $F9 | |||
889D | DEFB $EF,$EE | ![]() |
|
||||
![]() |
||||
889F | DEFW $B41F | Room procedure | ||
88A1 | DEFW $B422 | Initialization | ||
88A3 | DEFW $8953 | Room to Left | ||
88A5 | DEFW $8834 | Room to Right | ||
88A7 | DEFW $89B9 | Room Up | ||
88A9 | DEFW $8739 | Room Down | ||
88AB | DEFB $01,$11,$3A,$94,$65 | Fill vert 17 tiles with $3A at $6594 | ||
88B0 | DEFB $01,$11,$3A,$A8,$65 | Fill vert 17 tiles with $3A at $65A8 | ||
88B5 | DEFB $01,$0C,$3A,$9C,$65 | Fill vert 12 tiles with $3A at $659C | ||
88BA | DEFB $01,$06,$3A,$9F,$65 | Fill vert 6 tiles with $3A at $659F | ||
88BF | DEFB $01,$06,$3A,$A3,$65 | Fill vert 6 tiles with $3A at $65A3 | ||
88C4 | DEFB $01,$04,$3A,$24,$67 | Fill vert 4 tiles with $3A at $6724 | ||
88C9 | DEFB $01,$06,$3A,$EB,$66 | Fill vert 6 tiles with $3A at $66EB | ||
88CE | DEFB $02,$07,$63,$53,$66 | Fill horz 7 tiles with $63 at $6653 | ||
88D3 | DEFB $01,$07,$3A,$19,$66 | Fill vert 7 tiles with $3A at $6619 | ||
88D8 | DEFB $0E,$63,$55,$66 | Put tile $63 at $6655 | ||
88DC | DEFB $02,$04,$FA,$A2,$66 | Fill horz 4 tiles with $FA at $66A2 | ||
88E1 | DEFB $02,$0A,$FA,$DA,$66 | Fill horz 10 tiles with $FA at $66DA | ||
88E6 | DEFB $02,$03,$FA,$04,$67 | Fill horz 3 tiles with $FA at $6704 | ||
88EB | DEFB $02,$0B,$FA,$5F,$67 | Fill horz 11 tiles with $FA at $675F | ||
88F0 | DEFB $02,$06,$FA,$98,$66 | Fill horz 6 tiles with $FA at $6698 | ||
88F5 | DEFB $02,$03,$FA,$4F,$67 | Fill horz 3 tiles with $FA at $674F | ||
88FA | DEFB $02,$06,$FA,$6A,$67 | Fill horz 6 tiles with $FA at $676A | ||
88FF | DEFB $05,$01,$01,$99,$88,$A4,$66 | Block 1x1 tiles from 8899 to $66A4 | ||
8906 | DEFB $05,$01,$04,$98,$88,$C2,$66 | Block 1x4 tiles from 8898 to $66C2 | ||
890D | DEFB $FF | End of sequence |
|
||||
![]() |
||||
890E | DEFW $B41F | Room procedure | ||
8910 | DEFW $B422 | Initialization | ||
8912 | DEFW $8834 | Room to Left | ||
8914 | DEFW $8BF0 | Room to Right | ||
8916 | DEFW $0000 | |||
8918 | DEFW $0000 | |||
891A | DEFB $01,$10,$3A,$99,$65 | Fill vert 16 tiles with $3A at $6599 | ||
891F | DEFB $01,$10,$3A,$A1,$65 | Fill vert 16 tiles with $3A at $65A1 | ||
8924 | DEFB $01,$07,$3A,$B6,$66 | Fill vert 7 tiles with $3A at $66B6 | ||
8929 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
892E | DEFB $05,$03,$03,$18,$7C,$12,$71 | Block 3x3 tiles from 7C18 to $7112 | ||
8935 | DEFB $02,$05,$63,$19,$66 | Fill horz 5 tiles with $63 at $6619 | ||
893A | DEFB $02,$03,$FA,$AE,$66 | Fill horz 3 tiles with $FA at $66AE | ||
893F | DEFB $02,$07,$FA,$97,$66 | Fill horz 7 tiles with $FA at $6697 | ||
8944 | DEFB $02,$09,$FA,$84,$66 | Fill horz 9 tiles with $FA at $6684 | ||
8949 | DEFB $01,$07,$F9,$F3,$65 | Fill vert 7 tiles with $F9 at $65F3 | ||
894E | DEFB $0E,$F8,$89,$66 | Put tile $F8 at $6689 | ||
8952 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8953 | DEFW $B41F | Room procedure | ||
8955 | DEFW $B422 | Initialization | ||
8957 | DEFW $0000 | |||
8959 | DEFW $889F | Room to Right | ||
895B | DEFW $89B9 | Room Up | ||
895D | DEFW $8799 | Room Down | ||
895F | DEFB $01,$11,$3A,$98,$65 | Fill vert 17 tiles with $3A at $6598 | ||
8964 | DEFB $01,$10,$3A,$9D,$65 | Fill vert 16 tiles with $3A at $659D | ||
8969 | DEFB $01,$05,$3A,$A0,$65 | Fill vert 5 tiles with $3A at $65A0 | ||
896E | DEFB $01,$09,$3A,$A3,$65 | Fill vert 9 tiles with $3A at $65A3 | ||
8973 | DEFB $01,$11,$3A,$AB,$65 | Fill vert 17 tiles with $3A at $65AB | ||
8978 | DEFB $01,$07,$3A,$CD,$66 | Fill vert 7 tiles with $3A at $66CD | ||
897D | DEFB $01,$07,$3A,$D0,$66 | Fill vert 7 tiles with $3A at $66D0 | ||
8982 | DEFB $01,$02,$3A,$69,$67 | Fill vert 2 tiles with $3A at $6769 | ||
8987 | DEFB $0C,$E3,$81,$02,$11,$90,$65 | Block 2 tiles from 81E3 to $6590 copy 17 times | ||
898E | DEFB $0C,$48,$73,$02,$09,$95,$65 | Block 2 tiles from 7348 to $6595 copy 9 times | ||
8995 | DEFB $02,$05,$63,$33,$66 | Fill horz 5 tiles with $63 at $6633 | ||
899A | DEFB $02,$07,$FA,$A0,$66 | Fill horz 7 tiles with $FA at $66A0 | ||
899F | DEFB $02,$08,$FA,$54,$67 | Fill horz 8 tiles with $FA at $6754 | ||
89A4 | DEFB $02,$03,$FA,$7C,$67 | Fill horz 3 tiles with $FA at $677C | ||
89A9 | DEFB $02,$05,$FA,$AE,$66 | Fill horz 5 tiles with $FA at $66AE | ||
89AE | DEFB $02,$06,$FA,$47,$67 | Fill horz 6 tiles with $FA at $6747 | ||
89B3 | DEFB $02,$17,$FA,$E1,$66 | Fill horz 23 tiles with $FA at $66E1 | ||
89B8 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
89B9 | DEFW $B41F | Room procedure | ||
89BB | DEFW $B422 | Initialization | ||
89BD | DEFW $0000 | |||
89BF | DEFW $8A2D | Room to Right | ||
89C1 | DEFW $0000 | |||
89C3 | DEFW $8953 | Room Down | ||
89C5 | DEFB $0E,$3A,$B6,$66 | Put tile $3A at $66B6 | ||
89C9 | DEFB $0E,$3A,$2A,$67 | Put tile $3A at $672A | ||
89CD | DEFB $01,$08,$3A,$AB,$66 | Fill vert 8 tiles with $3A at $66AB | ||
89D2 | DEFB $01,$08,$3A,$B9,$66 | Fill vert 8 tiles with $3A at $66B9 | ||
89D7 | DEFB $01,$02,$3A,$62,$67 | Fill vert 2 tiles with $3A at $6762 | ||
89DC | DEFB $01,$02,$3A,$65,$67 | Fill vert 2 tiles with $3A at $6765 | ||
89E1 | DEFB $06,$FF,$0B,$90,$65 | Triangle with $FF, count=11 at $6590 | ||
89E6 | DEFB $02,$13,$FF,$9B,$65 | Fill horz 19 tiles with $FF at $659B | ||
89EB | DEFB $0C,$E3,$81,$02,$08,$9E,$66 | Block 2 tiles from 81E3 to $669E copy 8 times | ||
89F2 | DEFB $0C,$48,$73,$02,$0B,$2B,$66 | Block 2 tiles from 7348 to $662B copy 11 times | ||
89F9 | DEFB $05,$02,$01,$9D,$88,$75,$67 | Block 2x1 tiles from 889D to $6775 | ||
8A00 | DEFB $02,$0B,$FA,$77,$67 | Fill horz 11 tiles with $FA at $6777 | ||
8A05 | DEFB $02,$04,$FA,$8B,$66 | Fill horz 4 tiles with $FA at $668B | ||
8A0A | DEFB $02,$05,$FA,$44,$67 | Fill horz 5 tiles with $FA at $6744 | ||
8A0F | DEFB $02,$08,$FA,$96,$66 | Fill horz 8 tiles with $FA at $6696 | ||
8A14 | DEFB $05,$01,$04,$98,$88,$F0,$66 | Block 1x4 tiles from 8898 to $66F0 | ||
8A1B | DEFB $05,$01,$03,$98,$88,$D4,$66 | Block 1x3 tiles from 8898 to $66D4 | ||
8A22 | DEFB $02,$02,$FA,$F0,$66 | Fill horz 2 tiles with $FA at $66F0 | ||
8A27 | DEFB $02,$03,$FA,$0B,$67 | Fill horz 3 tiles with $FA at $670B | ||
8A2C | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8A2D | DEFW $B41F | Room procedure | ||
8A2F | DEFW $B422 | Initialization | ||
8A31 | DEFW $89B9 | Room to Left | ||
8A33 | DEFW $8A81 | Room to Right | ||
8A35 | DEFW $8B25 | Room Up | ||
8A37 | DEFW $889F | Room Down | ||
8A39 | DEFB $01,$08,$3A,$A2,$66 | Fill vert 8 tiles with $3A at $66A2 | ||
8A3E | DEFB $01,$08,$3A,$AD,$66 | Fill vert 8 tiles with $3A at $66AD | ||
8A43 | DEFB $01,$08,$3A,$B1,$66 | Fill vert 8 tiles with $3A at $66B1 | ||
8A48 | DEFB $01,$05,$3A,$04,$67 | Fill vert 5 tiles with $3A at $6704 | ||
8A4D | DEFB $02,$03,$FF,$90,$65 | Fill horz 3 tiles with $FF at $6590 | ||
8A52 | DEFB $02,$0F,$FA,$80,$66 | Fill horz 15 tiles with $FA at $6680 | ||
8A57 | DEFB $02,$05,$FA,$8F,$66 | Fill horz 5 tiles with $FA at $668F | ||
8A5C | DEFB $0C,$48,$73,$02,$08,$A1,$65 | Block 2 tiles from 7348 to $65A1 copy 8 times | ||
8A63 | DEFB $02,$08,$FA,$55,$67 | Fill horz 8 tiles with $FA at $6755 | ||
8A68 | DEFB $02,$05,$FA,$E2,$66 | Fill horz 5 tiles with $FA at $66E2 | ||
8A6D | DEFB $02,$04,$FA,$86,$67 | Fill horz 4 tiles with $FA at $6786 | ||
8A72 | DEFB $05,$01,$03,$99,$88,$E3,$66 | Block 1x3 tiles from 8899 to $66E3 | ||
8A79 | DEFB $05,$01,$03,$98,$88,$3D,$67 | Block 1x3 tiles from 8898 to $673D | ||
8A80 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8A81 | DEFW $B41F | Room procedure | ||
8A83 | DEFW $B422 | Initialization | ||
8A85 | DEFW $8A2D | Room to Left | ||
8A87 | DEFW $8AF4 | Room to Right | ||
8A89 | DEFW $0000 | |||
8A8B | DEFW $8834 | Room Down | ||
8A8D | DEFB $01,$06,$3A,$E1,$66 | Fill vert 6 tiles with $3A at $66E1 | ||
8A92 | DEFB $01,$0C,$3A,$33,$66 | Fill vert 12 tiles with $3A at $6633 | ||
8A97 | DEFB $01,$05,$3A,$0A,$67 | Fill vert 5 tiles with $3A at $670A | ||
8A9C | DEFB $09,$FF,$04,$A7,$65 | Triangle with $FF, count=4 at $65A7 | ||
8AA1 | DEFB $06,$FF,$04,$A8,$65 | Triangle with $FF, count=4 at $65A8 | ||
8AA6 | DEFB $0C,$48,$73,$02,$0E,$01,$66 | Block 2 tiles from 7348 to $6601 copy 14 times | ||
8AAD | DEFB $05,$02,$01,$9D,$88,$F1,$66 | Block 2x1 tiles from 889D to $66F1 | ||
8AB4 | DEFB $05,$02,$01,$9D,$88,$4B,$67 | Block 2x1 tiles from 889D to $674B | ||
8ABB | DEFB $02,$05,$FA,$4D,$67 | Fill horz 5 tiles with $FA at $674D | ||
8AC0 | DEFB $02,$06,$FA,$EB,$66 | Fill horz 6 tiles with $FA at $66EB | ||
8AC5 | DEFB $02,$03,$FA,$C1,$66 | Fill horz 3 tiles with $FA at $66C1 | ||
8ACA | DEFB $01,$04,$28,$0E,$71 | Fill vert 4 tiles with $28 at $710E | ||
8ACF | DEFB $02,$0B,$FA,$B8,$65 | Fill horz 11 tiles with $FA at $65B8 | ||
8AD4 | DEFB $05,$01,$05,$98,$88,$9D,$65 | Block 1x5 tiles from 8898 to $659D | ||
8ADB | DEFB $02,$03,$FA,$FF,$66 | Fill horz 3 tiles with $FA at $66FF | ||
8AE0 | DEFB $02,$06,$FA,$1F,$67 | Fill horz 6 tiles with $FA at $671F | ||
8AE5 | DEFB $05,$01,$04,$99,$88,$1E,$67 | Block 1x4 tiles from 8899 to $671E | ||
8AEC | DEFB $05,$01,$02,$98,$88,$E2,$66 | Block 1x2 tiles from 8898 to $66E2 | ||
8AF3 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8AF4 | DEFW $B41F | Room procedure | ||
8AF6 | DEFW $B422 | Initialization | ||
8AF8 | DEFW $8A81 | Room to Left | ||
8AFA | DEFW $8C5A | Room to Right | ||
8AFC | DEFW $8BAB | Room Up | ||
8AFE | DEFW $890E | Room Down | ||
8B00 | DEFB $01,$08,$3A,$A7,$66 | Fill vert 8 tiles with $3A at $66A7 | ||
8B05 | DEFB $01,$08,$3A,$AF,$66 | Fill vert 8 tiles with $3A at $66AF | ||
8B0A | DEFB $02,$0B,$FA,$34,$67 | Fill horz 11 tiles with $FA at $6734 | ||
8B0F | DEFB $02,$13,$FA,$88,$66 | Fill horz 19 tiles with $FA at $6688 | ||
8B14 | DEFB $0C,$48,$73,$02,$08,$A4,$65 | Block 2 tiles from 7348 to $65A4 copy 8 times | ||
8B1B | DEFB $01,$06,$F9,$8E,$66 | Fill vert 6 tiles with $F9 at $668E | ||
8B20 | DEFB $0E,$F8,$8E,$66 | Put tile $F8 at $668E | ||
8B24 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8B25 | DEFW $B483 | Room procedure | ||
8B27 | DEFW $A174 | Initialization | ||
8B29 | DEFW $0000 | |||
8B2B | DEFW $8B71 | Room to Right | ||
8B2D | DEFW $0000 | |||
8B2F | DEFW $8A2D | Room Down | ||
8B31 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
8B36 | DEFB $02,$48,$FF,$90,$65 | Fill horz 72 tiles with $FF at $6590 | ||
8B3B | DEFB $0C,$48,$73,$02,$0E,$DD,$65 | Block 2 tiles from 7348 to $65DD copy 14 times | ||
8B42 | DEFB $05,$02,$01,$84,$79,$81,$67 | Block 2x1 tiles from 7984 to $6781 | ||
8B49 | DEFB $05,$04,$04,$A9,$71,$F7,$70 | Block 4x4 tiles from 71A9 to $70F7 | ||
8B50 | DEFB $05,$04,$04,$A9,$71,$F5,$70 | Block 4x4 tiles from 71A9 to $70F5 | ||
8B57 | DEFB $05,$04,$04,$A9,$71,$F0,$70 | Block 4x4 tiles from 71A9 to $70F0 | ||
8B5E | DEFB $05,$04,$04,$A9,$71,$07,$71 | Block 4x4 tiles from 71A9 to $7107 | ||
8B65 | DEFB $06,$FF,$0B,$EA,$65 | Triangle with $FF, count=11 at $65EA | ||
8B6A | DEFB $03,$FF,$03,$04,$F8,$66 | Rectangle 3x4 tiles with $FF at $66F8 | ||
8B70 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8B71 | DEFW $7918 | Room procedure | ||
8B73 | DEFW $A0FC | Initialization | ||
8B75 | DEFW $8B25 | Room to Left | ||
8B77 | DEFW $8BAB | Room to Right | ||
8B79 | DEFW $0000 | |||
8B7B | DEFW $0000 | |||
8B7D | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
8B82 | DEFB $02,$3C,$FF,$90,$65 | Fill horz 60 tiles with $FF at $6590 | ||
8B87 | DEFB $05,$04,$04,$A9,$71,$EF,$70 | Block 4x4 tiles from 71A9 to $70EF | ||
8B8E | DEFB $05,$04,$04,$A9,$71,$F5,$70 | Block 4x4 tiles from 71A9 to $70F5 | ||
8B95 | DEFB $05,$04,$04,$A9,$71,$FB,$70 | Block 4x4 tiles from 71A9 to $70FB | ||
8B9C | DEFB $05,$04,$04,$A9,$71,$00,$71 | Block 4x4 tiles from 71A9 to $7100 | ||
8BA3 | DEFB $05,$04,$04,$A9,$71,$07,$71 | Block 4x4 tiles from 71A9 to $7107 | ||
8BAA | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8BAB | DEFW $B41F | Room procedure | ||
8BAD | DEFW $B422 | Initialization | ||
8BAF | DEFW $8B71 | Room to Left | ||
8BB1 | DEFW $0000 | |||
8BB3 | DEFW $0000 | |||
8BB5 | DEFW $8AF4 | Room Down | ||
8BB7 | DEFB $02,$3C,$FF,$90,$65 | Fill horz 60 tiles with $FF at $6590 | ||
8BBC | DEFB $03,$FF,$02,$0E,$E8,$65 | Rectangle 2x14 tiles with $FF at $65E8 | ||
8BC2 | DEFB $02,$09,$FF,$70,$67 | Fill horz 9 tiles with $FF at $6770 | ||
8BC7 | DEFB $02,$10,$FF,$7E,$67 | Fill horz 16 tiles with $FF at $677E | ||
8BCC | DEFB $0C,$48,$73,$02,$0E,$E0,$65 | Block 2 tiles from 7348 to $65E0 copy 14 times | ||
8BD3 | DEFB $05,$02,$01,$9D,$88,$84,$67 | Block 2x1 tiles from 889D to $6784 | ||
8BDA | DEFB $05,$03,$03,$A0,$71,$1B,$71 | Block 3x3 tiles from 71A0 to $711B | ||
8BE1 | DEFB $05,$04,$04,$A9,$71,$F2,$70 | Block 4x4 tiles from 71A9 to $70F2 | ||
8BE8 | DEFB $05,$04,$04,$A9,$71,$06,$71 | Block 4x4 tiles from 71A9 to $7106 | ||
8BEF | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8BF0 | DEFW $B41F | Room procedure | ||
8BF2 | DEFW $B422 | Initialization | ||
8BF4 | DEFW $890E | Room to Left | ||
8BF6 | DEFW $8CC8 | Room to Right | ||
8BF8 | DEFW $0000 | |||
8BFA | DEFW $9005 | Room Down | ||
8BFC | DEFB $01,$10,$3A,$93,$65 | Fill vert 16 tiles with $3A at $6593 | ||
8C01 | DEFB $01,$08,$3A,$98,$65 | Fill vert 8 tiles with $3A at $6598 | ||
8C06 | DEFB $01,$08,$3A,$9C,$65 | Fill vert 8 tiles with $3A at $659C | ||
8C0B | DEFB $01,$08,$3A,$A0,$65 | Fill vert 8 tiles with $3A at $65A0 | ||
8C10 | DEFB $01,$08,$3A,$A3,$65 | Fill vert 8 tiles with $3A at $65A3 | ||
8C15 | DEFB $01,$08,$3A,$A7,$65 | Fill vert 8 tiles with $3A at $65A7 | ||
8C1A | DEFB $01,$08,$3A,$AB,$65 | Fill vert 8 tiles with $3A at $65AB | ||
8C1F | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
8C24 | DEFB $03,$FF,$04,$07,$B8,$66 | Rectangle 4x7 tiles with $FF at $66B8 | ||
8C2A | DEFB $02,$17,$FF,$87,$66 | Fill horz 23 tiles with $FF at $6687 | ||
8C2F | DEFB $0C,$48,$73,$02,$07,$B0,$66 | Block 2 tiles from 7348 to $66B0 copy 7 times | ||
8C36 | DEFB $05,$02,$01,$84,$79,$82,$67 | Block 2x1 tiles from 7984 to $6782 | ||
8C3D | DEFB $02,$04,$FA,$80,$66 | Fill horz 4 tiles with $FA at $6680 | ||
8C42 | DEFB $0E,$F9,$95,$65 | Put tile $F9 at $6595 | ||
8C46 | DEFB $02,$06,$63,$31,$66 | Fill horz 6 tiles with $63 at $6631 | ||
8C4B | DEFB $0E,$2A,$9D,$70 | Put tile $2A at $709D | ||
8C4F | DEFB $01,$06,$2B,$BB,$70 | Fill vert 6 tiles with $2B at $70BB | ||
8C54 | DEFB $01,$01,$FF,$89,$66 | Fill vert 1 tiles with $FF at $6689 | ||
8C59 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8C5A | DEFW $B41F | Room procedure | ||
8C5C | DEFW $B422 | Initialization | ||
8C5E | DEFW $8AF4 | Room to Left | ||
8C60 | DEFW $8D18 | Room to Right | ||
8C62 | DEFW $0000 | |||
8C64 | DEFW $8BF0 | Room Down | ||
8C66 | DEFB $01,$05,$3A,$DD,$66 | Fill vert 5 tiles with $3A at $66DD | ||
8C6B | DEFB $01,$0D,$3A,$F2,$65 | Fill vert 13 tiles with $3A at $65F2 | ||
8C70 | DEFB $01,$0F,$3A,$D8,$65 | Fill vert 15 tiles with $3A at $65D8 | ||
8C75 | DEFB $01,$07,$3A,$CC,$66 | Fill vert 7 tiles with $3A at $66CC | ||
8C7A | DEFB $01,$07,$3A,$CF,$66 | Fill vert 7 tiles with $3A at $66CF | ||
8C7F | DEFB $01,$0D,$3A,$1F,$66 | Fill vert 13 tiles with $3A at $661F | ||
8C84 | DEFB $01,$0D,$3A,$23,$66 | Fill vert 13 tiles with $3A at $6623 | ||
8C89 | DEFB $09,$FF,$03,$A6,$65 | Triangle with $FF, count=3 at $65A6 | ||
8C8E | DEFB $03,$FF,$07,$04,$A7,$65 | Rectangle 7x4 tiles with $FF at $65A7 | ||
8C94 | DEFB $02,$0A,$FA,$B3,$65 | Fill horz 10 tiles with $FA at $65B3 | ||
8C99 | DEFB $05,$01,$03,$98,$88,$98,$65 | Block 1x3 tiles from 8898 to $6598 | ||
8CA0 | DEFB $01,$03,$F9,$1B,$67 | Fill vert 3 tiles with $F9 at $671B | ||
8CA5 | DEFB $02,$07,$FA,$73,$67 | Fill horz 7 tiles with $FA at $6773 | ||
8CAA | DEFB $0E,$F8,$75,$67 | Put tile $F8 at $6775 | ||
8CAE | DEFB $02,$0A,$FA,$BD,$66 | Fill horz 10 tiles with $FA at $66BD | ||
8CB3 | DEFB $02,$04,$FA,$E5,$66 | Fill horz 4 tiles with $FA at $66E5 | ||
8CB8 | DEFB $02,$04,$FA,$AE,$66 | Fill horz 4 tiles with $FA at $66AE | ||
8CBD | DEFB $02,$03,$FA,$EF,$66 | Fill horz 3 tiles with $FA at $66EF | ||
8CC2 | DEFB $02,$05,$FA,$2F,$67 | Fill horz 5 tiles with $FA at $672F | ||
8CC7 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8CC8 | DEFW $B41F | Room procedure | ||
8CCA | DEFW $B422 | Initialization | ||
8CCC | DEFW $8BF0 | Room to Left | ||
8CCE | DEFW $8E9C | Room to Right | ||
8CD0 | DEFW $0000 | |||
8CD2 | DEFW $0000 | |||
8CD4 | DEFB $01,$0C,$3A,$96,$65 | Fill vert 12 tiles with $3A at $6596 | ||
8CD9 | DEFB $01,$10,$3A,$9E,$65 | Fill vert 16 tiles with $3A at $659E | ||
8CDE | DEFB $01,$10,$3A,$A3,$65 | Fill vert 16 tiles with $3A at $65A3 | ||
8CE3 | DEFB $01,$10,$3A,$AA,$65 | Fill vert 16 tiles with $3A at $65AA | ||
8CE8 | DEFB $07,$FF,$07,$A1,$66 | Triangle with $FF, count=7 at $66A1 | ||
8CED | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
8CF2 | DEFB $03,$FF,$03,$08,$80,$66 | Rectangle 3x8 tiles with $FF at $6680 | ||
8CF8 | DEFB $02,$06,$63,$F5,$65 | Fill horz 6 tiles with $63 at $65F5 | ||
8CFD | DEFB $02,$0A,$FA,$92,$66 | Fill horz 10 tiles with $FA at $6692 | ||
8D02 | DEFB $05,$04,$07,$AA,$79,$9B,$70 | Block 4x7 tiles from 79AA to $709B | ||
8D09 | DEFB $05,$04,$07,$AA,$79,$3E,$70 | Block 4x7 tiles from 79AA to $703E | ||
8D10 | DEFB $05,$04,$07,$AA,$79,$00,$70 | Block 4x7 tiles from 79AA to $7000 | ||
8D17 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8D18 | DEFW $B41F | Room procedure | ||
8D1A | DEFW $B422 | Initialization | ||
8D1C | DEFW $8C5A | Room to Left | ||
8D1E | DEFW $8EE1 | Room to Right | ||
8D20 | DEFW $8D5C | Room Up | ||
8D22 | DEFW $8CC8 | Room Down | ||
8D24 | DEFB $01,$03,$3A,$3A,$67 | Fill vert 3 tiles with $3A at $673A | ||
8D29 | DEFB $01,$03,$3A,$42,$67 | Fill vert 3 tiles with $3A at $6742 | ||
8D2E | DEFB $01,$03,$3A,$4E,$67 | Fill vert 3 tiles with $3A at $674E | ||
8D33 | DEFB $01,$11,$3A,$A3,$65 | Fill vert 17 tiles with $3A at $65A3 | ||
8D38 | DEFB $03,$FF,$0A,$04,$90,$65 | Rectangle 10x4 tiles with $FF at $6590 | ||
8D3E | DEFB $0C,$48,$73,$02,$0D,$9A,$65 | Block 2 tiles from 7348 to $659A copy 13 times | ||
8D45 | DEFB $02,$12,$FA,$16,$67 | Fill horz 18 tiles with $FA at $6716 | ||
8D4A | DEFB $02,$06,$FA,$2E,$67 | Fill horz 6 tiles with $FA at $672E | ||
8D4F | DEFB $02,$05,$63,$74,$66 | Fill horz 5 tiles with $63 at $6674 | ||
8D54 | DEFB $05,$02,$04,$BB,$71,$A1,$70 | Block 2x4 tiles from 71BB to $70A1 | ||
8D5B | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8D5C | DEFW $B483 | Room procedure | ||
8D5E | DEFW $A1A1 | Initialization | ||
8D60 | DEFW $8DCA | Room to Left | ||
8D62 | DEFW $0000 | |||
8D64 | DEFW $0000 | |||
8D66 | DEFW $8D18 | Room Down | ||
8D68 | DEFB $04,$01 | Fill entire screen with $01 | ||
8D6A | DEFB $02,$3E,$FF,$90,$65 | Fill horz 62 tiles with $FF at $6590 | ||
8D6F | DEFB $03,$FF,$02,$04,$EA,$65 | Rectangle 2x4 tiles with $FF at $65EA | ||
8D75 | DEFB $02,$04,$FF,$62,$66 | Fill horz 4 tiles with $FF at $6662 | ||
8D7A | DEFB $09,$FF,$07,$E4,$65 | Triangle with $FF, count=7 at $65E4 | ||
8D7F | DEFB $03,$FF,$05,$0C,$E5,$65 | Rectangle 5x12 tiles with $FF at $65E5 | ||
8D85 | DEFB $02,$41,$FF,$4D,$67 | Fill horz 65 tiles with $FF at $674D | ||
8D8A | DEFB $05,$02,$02,$84,$79,$5C,$67 | Block 2x2 tiles from 7984 to $675C | ||
8D91 | DEFB $05,$03,$03,$A0,$71,$F2,$70 | Block 3x3 tiles from 71A0 to $70F2 | ||
8D98 | DEFB $05,$03,$03,$A0,$71,$A3,$70 | Block 3x3 tiles from 71A0 to $70A3 | ||
8D9F | DEFB $05,$03,$03,$A0,$71,$A7,$70 | Block 3x3 tiles from 71A0 to $70A7 | ||
8DA6 | DEFB $05,$03,$03,$A0,$71,$FC,$70 | Block 3x3 tiles from 71A0 to $70FC | ||
8DAD | DEFB $05,$03,$03,$A0,$71,$FF,$70 | Block 3x3 tiles from 71A0 to $70FF | ||
8DB4 | DEFB $05,$03,$03,$A0,$71,$03,$71 | Block 3x3 tiles from 71A0 to $7103 | ||
8DBB | DEFB $01,$01,$FF,$64,$66 | Fill vert 1 tiles with $FF at $6664 | ||
8DC0 | DEFB $0E,$2A,$78,$70 | Put tile $2A at $7078 | ||
8DC4 | DEFB $01,$06,$2B,$96,$70 | Fill vert 6 tiles with $2B at $7096 | ||
8DC9 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8DCA | DEFW $B41F | Room procedure | ||
8DCC | DEFW $B422 | Initialization | ||
8DCE | DEFW $0000 | |||
8DD0 | DEFW $8D5C | Room to Right | ||
8DD2 | DEFW $0000 | |||
8DD4 | DEFW $0000 | |||
8DD6 | DEFB $04,$01 | Fill entire screen with $01 | ||
8DD8 | DEFB $02,$3F,$FF,$90,$65 | Fill horz 63 tiles with $FF at $6590 | ||
8DDD | DEFB $03,$FF,$02,$0D,$EA,$65 | Rectangle 2x13 tiles with $FF at $65EA | ||
8DE3 | DEFB $02,$25,$FF,$69,$67 | Fill horz 37 tiles with $FF at $6769 | ||
8DE8 | DEFB $02,$0A,$91,$5A,$67 | Fill horz 10 tiles with $91 at $675A | ||
8DED | DEFB $02,$17,$01,$93,$65 | Fill horz 23 tiles with $01 at $6593 | ||
8DF2 | DEFB $02,$1B,$E2,$AF,$65 | Fill horz 27 tiles with $E2 at $65AF | ||
8DF7 | DEFB $0E,$FF,$E6,$65 | Put tile $FF at $65E6 | ||
8DFB | DEFB $03,$FF,$03,$06,$E7,$65 | Rectangle 3x6 tiles with $FF at $65E7 | ||
8E01 | DEFB $0E,$2A,$91,$70 | Put tile $2A at $7091 | ||
8E05 | DEFB $01,$06,$2B,$AF,$70 | Fill vert 6 tiles with $2B at $70AF | ||
8E0A | DEFB $05,$04,$07,$47,$8E,$63,$70 | Block 4x7 tiles from 8E47 to $7063 | ||
8E11 | DEFB $05,$02,$06,$6C,$8E,$89,$66 | Block 2x6 tiles from 8E6C to $6689 | ||
8E18 | DEFB $05,$05,$01,$67,$8E,$3E,$67 | Block 5x1 tiles from 8E67 to $673E | ||
8E1F | DEFB $05,$01,$02,$63,$8E,$06,$67 | Block 1x2 tiles from 8E63 to $6706 | ||
8E26 | DEFB $05,$03,$08,$78,$8E,$71,$66 | Block 3x8 tiles from 8E78 to $6671 | ||
8E2D | DEFB $02,$11,$D4,$2C,$66 | Fill horz 17 tiles with $D4 at $662C | ||
8E32 | DEFB $05,$01,$02,$65,$8E,$34,$66 | Block 1x2 tiles from 8E65 to $6634 | ||
8E39 | DEFB $05,$03,$04,$90,$8E,$56,$66 | Block 3x4 tiles from 8E90 to $6656 | ||
8E40 | DEFB $03,$1B,$04,$04,$8B,$66 | Rectangle 4x4 tiles with $1B at $668B | ||
8E46 | DEFB $FF | End of sequence |
|
||||
8E47 | DEFB $64,$65,$5A,$5A | ![]() |
||
8E4B | DEFB $5B,$FF,$5C,$63 | |||
8E4F | DEFB $FF,$FF,$FF,$62 | |||
8E53 | DEFB $5A,$5A,$61,$62 | |||
8E57 | DEFB $5A,$5A,$5A,$60 | |||
8E5B | DEFB $5A,$5A,$5A,$5F | |||
8E5F | DEFB $5D,$5A,$5A,$5E | |||
8E63 | DEFB $23 | Block 1x2 | ||
8E64 | DEFB $24 | |||
8E65 | DEFB $D3 | Block 1x2 | ||
8E66 | DEFB $D2 | |||
8E67 | DEFB $E0,$D9,$D8,$D5,$E0 | ![]() |
||
8E6C | DEFB $01,$DA | ![]() |
||
8E6E | DEFB $DC,$DB | |||
8E70 | DEFB $DD,$D7 | |||
8E72 | DEFB $DE,$D6 | |||
8E74 | DEFB $DF,$D6 | |||
8E76 | DEFB $01,$E1 | |||
8E78 | DEFB $2F,$30,$01 | ![]() |
||
8E7B | DEFB $2E,$28,$31 | |||
8E7E | DEFB $2D,$28,$28 | |||
8E81 | DEFB $2B,$28,$2C | |||
8E84 | DEFB $28,$28,$2A | |||
8E87 | DEFB $28,$29,$01 | |||
8E8A | DEFB $27,$01,$01 | |||
8E8D | DEFB $25,$26,$01 | |||
8E90 | DEFB $36,$01,$01 | ![]() |
||
8E93 | DEFB $34,$35,$37 | |||
8E96 | DEFB $28,$28,$01 | |||
8E99 | DEFB $32,$33,$01 |
|
||||
![]() |
||||
8E9C | DEFW $B41F | Room procedure | ||
8E9E | DEFW $B422 | Initialization | ||
8EA0 | DEFW $8CC8 | Room to Left | ||
8EA2 | DEFW $0000 | |||
8EA4 | DEFW $8EE1 | Room Up | ||
8EA6 | DEFW $8F20 | Room Down | ||
8EA8 | DEFB $01,$10,$3A,$91,$65 | Fill vert 16 tiles with $3A at $6591 | ||
8EAD | DEFB $01,$10,$3A,$99,$65 | Fill vert 16 tiles with $3A at $6599 | ||
8EB2 | DEFB $01,$10,$3A,$9C,$65 | Fill vert 16 tiles with $3A at $659C | ||
8EB7 | DEFB $01,$06,$3A,$C1,$66 | Fill vert 6 tiles with $3A at $66C1 | ||
8EBC | DEFB $01,$07,$3A,$CF,$66 | Fill vert 7 tiles with $3A at $66CF | ||
8EC1 | DEFB $01,$07,$3A,$D3,$66 | Fill vert 7 tiles with $3A at $66D3 | ||
8EC6 | DEFB $02,$0E,$FF,$70,$67 | Fill horz 14 tiles with $FF at $6770 | ||
8ECB | DEFB $02,$08,$FA,$A1,$66 | Fill horz 8 tiles with $FA at $66A1 | ||
8ED0 | DEFB $02,$06,$FA,$B1,$66 | Fill horz 6 tiles with $FA at $66B1 | ||
8ED5 | DEFB $02,$04,$FA,$45,$67 | Fill horz 4 tiles with $FA at $6745 | ||
8EDA | DEFB $03,$FF,$02,$11,$AC,$65 | Rectangle 2x17 tiles with $FF at $65AC | ||
8EE0 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8EE1 | DEFW $B41F | Room procedure | ||
8EE3 | DEFW $B422 | Initialization | ||
8EE5 | DEFW $8D18 | Room to Left | ||
8EE7 | DEFW $0000 | |||
8EE9 | DEFW $0000 | |||
8EEB | DEFW $8E9C | Room Down | ||
8EED | DEFB $01,$03,$3A,$35,$67 | Fill vert 3 tiles with $3A at $6735 | ||
8EF2 | DEFB $01,$0F,$3A,$D5,$65 | Fill vert 15 tiles with $3A at $65D5 | ||
8EF7 | DEFB $0E,$3A,$7C,$67 | Put tile $3A at $677C | ||
8EFB | DEFB $0E,$FF,$93,$65 | Put tile $FF at $6593 | ||
8EFF | DEFB $03,$FF,$1A,$02,$94,$65 | Rectangle 26x2 tiles with $FF at $6594 | ||
8F05 | DEFB $03,$FF,$02,$0F,$E8,$65 | Rectangle 2x15 tiles with $FF at $65E8 | ||
8F0B | DEFB $09,$FF,$07,$E7,$65 | Triangle with $FF, count=7 at $65E7 | ||
8F10 | DEFB $02,$04,$FA,$16,$67 | Fill horz 4 tiles with $FA at $6716 | ||
8F15 | DEFB $02,$07,$FA,$5B,$67 | Fill horz 7 tiles with $FA at $675B | ||
8F1A | DEFB $02,$04,$63,$E0,$66 | Fill horz 4 tiles with $63 at $66E0 | ||
8F1F | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8F20 | DEFW $B41F | Room procedure | ||
8F22 | DEFW $B422 | Initialization | ||
8F24 | DEFW $8FBD | Room to Left | ||
8F26 | DEFW $0000 | |||
8F28 | DEFW $8E9C | Room Up | ||
8F2A | DEFW $8F84 | Room Down | ||
8F2C | DEFB $02,$0E,$FF,$90,$65 | Fill horz 14 tiles with $FF at $6590 | ||
8F31 | DEFB $01,$01,$FF,$96,$65 | Fill vert 1 tiles with $FF at $6596 | ||
8F36 | DEFB $0E,$2A,$AA,$6F | Put tile $2A at $6FAA | ||
8F3A | DEFB $0E,$2A,$AF,$6F | Put tile $2A at $6FAF | ||
8F3E | DEFB $01,$07,$2B,$C8,$6F | Fill vert 7 tiles with $2B at $6FC8 | ||
8F43 | DEFB $01,$07,$2B,$CD,$6F | Fill vert 7 tiles with $2B at $6FCD | ||
8F48 | DEFB $03,$FF,$02,$09,$AC,$65 | Rectangle 2x9 tiles with $FF at $65AC | ||
8F4E | DEFB $03,$FF,$1E,$08,$9E,$66 | Rectangle 30x8 tiles with $FF at $669E | ||
8F54 | DEFB $05,$02,$02,$84,$79,$6A,$67 | Block 2x2 tiles from 7984 to $676A | ||
8F5B | DEFB $03,$00,$08,$06,$B2,$66 | Rectangle 8x6 tiles with $00 at $66B2 | ||
8F61 | DEFB $09,$00,$05,$B1,$66 | Triangle with $00, count=5 at $66B1 | ||
8F66 | DEFB $05,$04,$07,$AA,$79,$87,$70 | Block 4x7 tiles from 79AA to $7087 | ||
8F6D | DEFB $05,$04,$07,$AA,$79,$2A,$70 | Block 4x7 tiles from 79AA to $702A | ||
8F74 | DEFB $01,$0E,$3A,$A3,$65 | Fill vert 14 tiles with $3A at $65A3 | ||
8F79 | DEFB $01,$0F,$3A,$A7,$65 | Fill vert 15 tiles with $3A at $65A7 | ||
8F7E | DEFB $02,$05,$FA,$97,$66 | Fill horz 5 tiles with $FA at $6697 | ||
8F83 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8F84 | DEFW $7918 | Room procedure | ||
8F86 | DEFW $A0F7 | Initialization | ||
8F88 | DEFW $9053 | Room to Left | ||
8F8A | DEFW $0000 | |||
8F8C | DEFW $8F20 | Room Up | ||
8F8E | DEFW $91BA | Room Down | ||
8F90 | DEFB $04,$FF | Fill entire screen with $FF | ||
8F92 | DEFB $03,$00,$1C,$08,$26,$66 | Rectangle 28x8 tiles with $00 at $6626 | ||
8F98 | DEFB $08,$00,$04,$C5,$65 | Triangle with $00, count=4 at $65C5 | ||
8F9D | DEFB $03,$00,$02,$03,$E6,$65 | Rectangle 2x3 tiles with $00 at $65E6 | ||
8FA3 | DEFB $0E,$00,$C8,$65 | Put tile $00 at $65C8 | ||
8FA7 | DEFB $05,$02,$04,$BB,$71,$A2,$70 | Block 2x4 tiles from 71BB to $70A2 | ||
8FAE | DEFB $0C,$48,$73,$02,$0D,$A8,$65 | Block 2 tiles from 7348 to $65A8 copy 13 times | ||
8FB5 | DEFB $05,$02,$04,$84,$79,$2A,$67 | Block 2x4 tiles from 7984 to $672A | ||
8FBC | DEFB $FF | End of sequence |
|
||||
![]() |
||||
8FBD | DEFW $B483 | Room procedure | ||
8FBF | DEFW $A16A | Initialization | ||
8FC1 | DEFW $9005 | Room to Left | ||
8FC3 | DEFW $8F20 | Room to Right | ||
8FC5 | DEFW $0000 | |||
8FC7 | DEFW $9053 | Room Down | ||
8FC9 | DEFB $03,$FF,$1E,$08,$9E,$66 | Rectangle 30x8 tiles with $FF at $669E | ||
8FCF | DEFB $03,$39,$07,$07,$C5,$66 | Rectangle 7x7 tiles with $39 at $66C5 | ||
8FD5 | DEFB $02,$05,$38,$A8,$66 | Fill horz 5 tiles with $38 at $66A8 | ||
8FDA | DEFB $02,$06,$FF,$90,$65 | Fill horz 6 tiles with $FF at $6590 | ||
8FDF | DEFB $02,$04,$FF,$AA,$65 | Fill horz 4 tiles with $FF at $65AA | ||
8FE4 | DEFB $0E,$2A,$A5,$6F | Put tile $2A at $6FA5 | ||
8FE8 | DEFB $0E,$2A,$BF,$6F | Put tile $2A at $6FBF | ||
8FEC | DEFB $01,$07,$2B,$C3,$6F | Fill vert 7 tiles with $2B at $6FC3 | ||
8FF1 | DEFB $01,$07,$2B,$DD,$6F | Fill vert 7 tiles with $2B at $6FDD | ||
8FF6 | DEFB $05,$02,$04,$BB,$71,$1F,$70 | Block 2x4 tiles from 71BB to $701F | ||
8FFD | DEFB $05,$02,$04,$BB,$71,$31,$70 | Block 2x4 tiles from 71BB to $7031 | ||
9004 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9005 | DEFW $B41F | Room procedure | ||
9007 | DEFW $B422 | Initialization | ||
9009 | DEFW $92A7 | Room to Left | ||
900B | DEFW $8FBD | Room to Right | ||
900D | DEFW $8BF0 | Room Up | ||
900F | DEFW $0000 | |||
9011 | DEFB $02,$1E,$FF,$90,$65 | Fill horz 30 tiles with $FF at $6590 | ||
9016 | DEFB $05,$02,$04,$BB,$71,$33,$70 | Block 2x4 tiles from 71BB to $7033 | ||
901D | DEFB $0C,$48,$73,$02,$08,$C0,$65 | Block 2 tiles from 7348 to $65C0 copy 8 times | ||
9024 | DEFB $05,$02,$01,$84,$79,$A2,$65 | Block 2x1 tiles from 7984 to $65A2 | ||
902B | DEFB $0E,$2A,$B1,$6F | Put tile $2A at $6FB1 | ||
902F | DEFB $01,$07,$2B,$CF,$6F | Fill vert 7 tiles with $2B at $6FCF | ||
9034 | DEFB $03,$FF,$13,$05,$A9,$66 | Rectangle 19x5 tiles with $FF at $66A9 | ||
903A | DEFB $02,$4F,$FF,$3F,$67 | Fill horz 79 tiles with $FF at $673F | ||
903F | DEFB $08,$FF,$05,$C6,$66 | Triangle with $FF, count=5 at $66C6 | ||
9044 | DEFB $05,$04,$07,$8E,$79,$7B,$70 | Block 4x7 tiles from 798E to $707B | ||
904B | DEFB $05,$04,$07,$8E,$79,$24,$70 | Block 4x7 tiles from 798E to $7024 | ||
9052 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9053 | DEFW $B41F | Room procedure | ||
9055 | DEFW $B422 | Initialization | ||
9057 | DEFW $909F | Room to Left | ||
9059 | DEFW $8F84 | Room to Right | ||
905B | DEFW $8FBD | Room Up | ||
905D | DEFW $90DB | Room Down | ||
905F | DEFB $03,$FF,$1E,$09,$90,$65 | Rectangle 30x9 tiles with $FF at $6590 | ||
9065 | DEFB $03,$00,$0A,$04,$3A,$66 | Rectangle 10x4 tiles with $00 at $663A | ||
906B | DEFB $02,$27,$FF,$67,$67 | Fill horz 39 tiles with $FF at $6767 | ||
9070 | DEFB $02,$04,$FF,$30,$67 | Fill horz 4 tiles with $FF at $6730 | ||
9075 | DEFB $02,$06,$FF,$4C,$67 | Fill horz 6 tiles with $FF at $674C | ||
907A | DEFB $05,$02,$04,$BB,$71,$F1,$70 | Block 2x4 tiles from 71BB to $70F1 | ||
9081 | DEFB $05,$02,$04,$BB,$71,$E5,$70 | Block 2x4 tiles from 71BB to $70E5 | ||
9088 | DEFB $03,$39,$07,$08,$99,$65 | Rectangle 7x8 tiles with $39 at $6599 | ||
908E | DEFB $03,$39,$04,$07,$A7,$66 | Rectangle 4x7 tiles with $39 at $66A7 | ||
9094 | DEFB $02,$04,$38,$79,$67 | Fill horz 4 tiles with $38 at $6779 | ||
9099 | DEFB $02,$04,$38,$89,$66 | Fill horz 4 tiles with $38 at $6689 | ||
909E | DEFB $FF | End of sequence |
|
||||
![]() |
||||
909F | DEFW $B47A | Room procedure | ||
90A1 | DEFW $A15F | Initialization | ||
90A3 | DEFW $92EF | Room to Left | ||
90A5 | DEFW $9053 | Room to Right | ||
90A7 | DEFW $0000 | |||
90A9 | DEFW $0000 | |||
90AB | DEFB $02,$1E,$FF,$90,$65 | Fill horz 30 tiles with $FF at $6590 | ||
90B0 | DEFB $09,$FF,$08,$CB,$65 | Triangle with $FF, count=8 at $65CB | ||
90B5 | DEFB $03,$FF,$05,$09,$62,$66 | Rectangle 5x9 tiles with $FF at $6662 | ||
90BB | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
90C0 | DEFB $07,$FF,$08,$85,$66 | Triangle with $FF, count=8 at $6685 | ||
90C5 | DEFB $05,$04,$07,$AA,$79,$9E,$70 | Block 4x7 tiles from 79AA to $709E | ||
90CC | DEFB $05,$04,$07,$AA,$79,$41,$70 | Block 4x7 tiles from 79AA to $7041 | ||
90D3 | DEFB $05,$04,$07,$AA,$79,$E4,$6F | Block 4x7 tiles from 79AA to $6FE4 | ||
90DA | DEFB $FF | End of sequence |
|
||||
![]() |
||||
90DB | DEFW $B452 | Room procedure | ||
90DD | DEFW $A370 | Initialization | ||
90DF | DEFW $913F | Room to Left | ||
90E1 | DEFW $91BA | Room to Right | ||
90E3 | DEFW $9053 | Room Up | ||
90E5 | DEFW $0000 | |||
90E7 | DEFB $04,$FF | Fill entire screen with $FF | ||
90E9 | DEFB $03,$00,$16,$06,$D4,$65 | Rectangle 22x6 tiles with $00 at $65D4 | ||
90EF | DEFB $02,$0C,$00,$C0,$65 | Fill horz 12 tiles with $00 at $65C0 | ||
90F4 | DEFB $06,$00,$07,$92,$66 | Triangle with $00, count=7 at $6692 | ||
90F9 | DEFB $03,$00,$12,$06,$9E,$66 | Rectangle 18x6 tiles with $00 at $669E | ||
90FF | DEFB $02,$04,$39,$99,$65 | Fill horz 4 tiles with $39 at $6599 | ||
9104 | DEFB $02,$04,$38,$B7,$65 | Fill horz 4 tiles with $38 at $65B7 | ||
9109 | DEFB $05,$03,$03,$18,$7C,$F5,$70 | Block 3x3 tiles from 7C18 to $70F5 | ||
9110 | DEFB $05,$03,$03,$18,$7C,$F9,$70 | Block 3x3 tiles from 7C18 to $70F9 | ||
9117 | DEFB $0E,$2A,$95,$70 | Put tile $2A at $7095 | ||
911B | DEFB $01,$05,$2B,$B3,$70 | Fill vert 5 tiles with $2B at $70B3 | ||
9120 | DEFB $0E,$2A,$A4,$70 | Put tile $2A at $70A4 | ||
9124 | DEFB $01,$05,$2B,$C2,$70 | Fill vert 5 tiles with $2B at $70C2 | ||
9129 | DEFB $05,$04,$07,$8E,$79,$88,$70 | Block 4x7 tiles from 798E to $7088 | ||
9130 | DEFB $05,$04,$07,$8E,$79,$31,$70 | Block 4x7 tiles from 798E to $7031 | ||
9137 | DEFB $05,$04,$07,$8E,$79,$14,$70 | Block 4x7 tiles from 798E to $7014 | ||
913E | DEFB $FF | End of sequence |
|
||||
![]() |
||||
913F | DEFW $B41F | Room procedure | ||
9141 | DEFW $B422 | Initialization | ||
9143 | DEFW $0000 | |||
9145 | DEFW $90DB | Room to Right | ||
9147 | DEFW $0000 | |||
9149 | DEFW $83ED | Room Down | ||
914B | DEFB $09,$FF,$09,$AD,$65 | Triangle with $FF, count=9 at $65AD | ||
9150 | DEFB $02,$27,$FF,$67,$67 | Fill horz 39 tiles with $FF at $6767 | ||
9155 | DEFB $02,$05,$FF,$90,$65 | Fill horz 5 tiles with $FF at $6590 | ||
915A | DEFB $03,$FF,$03,$03,$AE,$65 | Rectangle 3x3 tiles with $FF at $65AE | ||
9160 | DEFB $01,$0C,$EB,$09,$66 | Fill vert 12 tiles with $EB at $6609 | ||
9165 | DEFB $05,$02,$01,$84,$79,$79,$67 | Block 2x1 tiles from 7984 to $6779 | ||
916C | DEFB $05,$03,$03,$A0,$71,$0E,$71 | Block 3x3 tiles from 71A0 to $710E | ||
9173 | DEFB $05,$03,$03,$18,$7C,$11,$71 | Block 3x3 tiles from 7C18 to $7111 | ||
917A | DEFB $05,$02,$01,$8A,$7E,$4E,$71 | Block 2x1 tiles from 7E8A to $714E | ||
9181 | DEFB $05,$03,$04,$0C,$7C,$FE,$70 | Block 3x4 tiles from 7C0C to $70FE | ||
9188 | DEFB $05,$03,$01,$87,$7E,$3A,$71 | Block 3x1 tiles from 7E87 to $713A | ||
918F | DEFB $05,$03,$01,$87,$7E,$56,$71 | Block 3x1 tiles from 7E87 to $7156 | ||
9196 | DEFB $05,$02,$01,$8A,$7E,$37,$71 | Block 2x1 tiles from 7E8A to $7137 | ||
919D | DEFB $05,$02,$01,$8A,$7E,$54,$71 | Block 2x1 tiles from 7E8A to $7154 | ||
91A4 | DEFB $05,$02,$01,$8A,$7E,$5A,$71 | Block 2x1 tiles from 7E8A to $715A | ||
91AB | DEFB $05,$02,$01,$8A,$7E,$40,$71 | Block 2x1 tiles from 7E8A to $7140 | ||
91B2 | DEFB $05,$02,$01,$8A,$7E,$43,$71 | Block 2x1 tiles from 7E8A to $7143 | ||
91B9 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
91BA | DEFW $B452 | Room procedure | ||
91BC | DEFW $A36B | Initialization | ||
91BE | DEFW $90DB | Room to Left | ||
91C0 | DEFW $0000 | |||
91C2 | DEFW $8F84 | Room Up | ||
91C4 | DEFW $924E | Room Down | ||
91C6 | DEFB $02,$04,$FF,$90,$65 | Fill horz 4 tiles with $FF at $6590 | ||
91CB | DEFB $0E,$2A,$A5,$6F | Put tile $2A at $6FA5 | ||
91CF | DEFB $01,$07,$2B,$C3,$6F | Fill vert 7 tiles with $2B at $6FC3 | ||
91D4 | DEFB $03,$FF,$04,$03,$9E,$66 | Rectangle 4x3 tiles with $FF at $669E | ||
91DA | DEFB $02,$98,$FF,$F6,$66 | Fill horz 152 tiles with $FF at $66F6 | ||
91DF | DEFB $0C,$E3,$81,$02,$0B,$AC,$65 | Block 2 tiles from 81E3 to $65AC copy 11 times | ||
91E6 | DEFB $07,$FF,$02,$C0,$66 | Triangle with $FF, count=2 at $66C0 | ||
91EB | DEFB $0C,$48,$73,$02,$0C,$A4,$65 | Block 2 tiles from 7348 to $65A4 copy 12 times | ||
91F2 | DEFB $05,$02,$05,$84,$79,$0C,$67 | Block 2x5 tiles from 7984 to $670C | ||
91F9 | DEFB $05,$03,$03,$18,$7C,$9B,$70 | Block 3x3 tiles from 7C18 to $709B | ||
9200 | DEFB $00,$9F,$70 | Barrel 3x3 tiles at $709F | ||
9203 | DEFB $00,$A2,$70 | Barrel 3x3 tiles at $70A2 | ||
9206 | DEFB $00,$AD,$70 | Barrel 3x3 tiles at $70AD | ||
9209 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
920A | DEFW $7918 | Room procedure | ||
920C | DEFW $A0F2 | Initialization | ||
920E | DEFW $83ED | Room to Left | ||
9210 | DEFW $924E | Room to Right | ||
9212 | DEFW $0000 | |||
9214 | DEFW $0000 | |||
9216 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
921B | DEFB $05,$03,$04,$0C,$7C,$F1,$70 | Block 3x4 tiles from 7C0C to $70F1 | ||
9222 | DEFB $05,$03,$03,$A0,$71,$13,$71 | Block 3x3 tiles from 71A0 to $7113 | ||
9229 | DEFB $00,$17,$71 | Barrel 3x3 tiles at $7117 | ||
922C | DEFB $00,$1A,$71 | Barrel 3x3 tiles at $711A | ||
922F | DEFB $00,$BE,$70 | Barrel 3x3 tiles at $70BE | ||
9232 | DEFB $00,$C1,$70 | Barrel 3x3 tiles at $70C1 | ||
9235 | DEFB $00,$26,$71 | Barrel 3x3 tiles at $7126 | ||
9238 | DEFB $05,$04,$03,$7B,$7E,$C4,$70 | Block 4x3 tiles from 7E7B to $70C4 | ||
923F | DEFB $05,$04,$03,$7B,$7E,$1B,$71 | Block 4x3 tiles from 7E7B to $711B | ||
9246 | DEFB $05,$04,$03,$7B,$7E,$20,$71 | Block 4x3 tiles from 7E7B to $7120 | ||
924D | DEFB $FF | End of sequence |
|
||||
![]() |
||||
924E | DEFW $B452 | Room procedure | ||
9250 | DEFW $A366 | Initialization | ||
9252 | DEFW $920A | Room to Left | ||
9254 | DEFW $0000 | |||
9256 | DEFW $91BA | Room Up | ||
9258 | DEFW $0000 | |||
925A | DEFB $02,$10,$FF,$9E,$65 | Fill horz 16 tiles with $FF at $659E | ||
925F | DEFB $0C,$E3,$81,$02,$0E,$CA,$65 | Block 2 tiles from 81E3 to $65CA copy 14 times | ||
9266 | DEFB $02,$20,$FF,$6E,$67 | Fill horz 32 tiles with $FF at $676E | ||
926B | DEFB $0C,$48,$73,$02,$0F,$C2,$65 | Block 2 tiles from 7348 to $65C2 copy 15 times | ||
9272 | DEFB $05,$02,$01,$B9,$71,$A4,$65 | Block 2x1 tiles from 71B9 to $65A4 | ||
9279 | DEFB $05,$03,$03,$A0,$71,$1C,$71 | Block 3x3 tiles from 71A0 to $711C | ||
9280 | DEFB $05,$03,$03,$A0,$71,$CB,$70 | Block 3x3 tiles from 71A0 to $70CB | ||
9287 | DEFB $05,$04,$03,$7B,$7E,$24,$71 | Block 4x3 tiles from 7E7B to $7124 | ||
928E | DEFB $00,$5D,$70 | Barrel 3x3 tiles at $705D | ||
9291 | DEFB $00,$B5,$70 | Barrel 3x3 tiles at $70B5 | ||
9294 | DEFB $00,$B9,$70 | Barrel 3x3 tiles at $70B9 | ||
9297 | DEFB $00,$BC,$70 | Barrel 3x3 tiles at $70BC | ||
929A | DEFB $00,$0E,$71 | Barrel 3x3 tiles at $710E | ||
929D | DEFB $00,$11,$71 | Barrel 3x3 tiles at $7111 | ||
92A0 | DEFB $00,$14,$71 | Barrel 3x3 tiles at $7114 | ||
92A3 | DEFB $00,$18,$71 | Barrel 3x3 tiles at $7118 | ||
92A6 | DEFB $FF | End of sequence |
|
||||
![]()
3rd console: flips trigger "A": set/remove wall in room 7F48.
|
||||
92A7 | DEFW $B483 | Room procedure | ||
92A9 | DEFW $A16F | Initialization | ||
92AB | DEFW $0000 | |||
92AD | DEFW $9005 | Room to Right | ||
92AF | DEFW $0000 | |||
92B1 | DEFW $0000 | |||
92B3 | DEFB $02,$20,$FF,$90,$65 | Fill horz 32 tiles with $FF at $6590 | ||
92B8 | DEFB $0C,$E3,$81,$02,$0D,$CC,$65 | Block 2 tiles from 81E3 to $65CC copy 13 times | ||
92BF | DEFB $02,$3C,$FF,$52,$67 | Fill horz 60 tiles with $FF at $6752 | ||
92C4 | DEFB $05,$04,$04,$A9,$71,$D1,$70 | Block 4x4 tiles from 71A9 to $70D1 | ||
92CB | DEFB $05,$04,$04,$A9,$71,$E1,$70 | Block 4x4 tiles from 71A9 to $70E1 | ||
92D2 | DEFB $05,$02,$04,$BB,$71,$D6,$70 | Block 2x4 tiles from 71BB to $70D6 | ||
92D9 | DEFB $05,$02,$04,$BB,$71,$D8,$70 | Block 2x4 tiles from 71BB to $70D8 | ||
92E0 | DEFB $05,$02,$04,$BB,$71,$DB,$70 | Block 2x4 tiles from 71BB to $70DB | ||
92E7 | DEFB $05,$02,$04,$BB,$71,$DE,$70 | Block 2x4 tiles from 71BB to $70DE | ||
92EE | DEFB $FF | End of sequence |
|
||||
![]()
1st conosole: flips trigger "C": set/remove wall in room 8D5C.
|
||||
92EF | DEFW $7918 | Room procedure | ||
92F1 | DEFW $791B | Initialization | ||
92F3 | DEFW $0000 | |||
92F5 | DEFW $909F | Room to Right | ||
92F7 | DEFW $0000 | |||
92F9 | DEFW $0000 | |||
92FB | DEFB $04,$FF | Fill entire screen with $FF | ||
92FD | DEFB $03,$00,$1A,$06,$B2,$65 | Rectangle 26x6 tiles with $00 at $65B2 | ||
9303 | DEFB $03,$02,$16,$06,$DE,$66 | Rectangle 22x6 tiles with $02 at $66DE | ||
9309 | DEFB $03,$CC,$06,$04,$1C,$67 | Rectangle 6x4 tiles with $CC at $671C | ||
930F | DEFB $02,$07,$D1,$38,$67 | Fill horz 7 tiles with $D1 at $6738 | ||
9314 | DEFB $0E,$D0,$3D,$67 | Put tile $D0 at $673D | ||
9318 | DEFB $02,$0C,$CD,$22,$67 | Fill horz 12 tiles with $CD at $6722 | ||
931D | DEFB $05,$01,$04,$72,$93,$24,$67 | Block 1x4 tiles from 9372 to $6724 | ||
9324 | DEFB $05,$01,$04,$72,$93,$26,$67 | Block 1x4 tiles from 9372 to $6726 | ||
932B | DEFB $05,$01,$04,$72,$93,$28,$67 | Block 1x4 tiles from 9372 to $6728 | ||
9332 | DEFB $05,$01,$04,$72,$93,$2A,$67 | Block 1x4 tiles from 9372 to $672A | ||
9339 | DEFB $05,$01,$04,$72,$93,$2C,$67 | Block 1x4 tiles from 9372 to $672C | ||
9340 | DEFB $05,$01,$04,$72,$93,$2E,$67 | Block 1x4 tiles from 9372 to $672E | ||
9347 | DEFB $05,$04,$04,$A9,$71,$E1,$6F | Block 4x4 tiles from 71A9 to $6FE1 | ||
934E | DEFB $05,$02,$04,$BB,$71,$E6,$6F | Block 2x4 tiles from 71BB to $6FE6 | ||
9355 | DEFB $05,$02,$04,$BB,$71,$E9,$6F | Block 2x4 tiles from 71BB to $6FE9 | ||
935C | DEFB $05,$02,$04,$BB,$71,$EC,$6F | Block 2x4 tiles from 71BB to $6FEC | ||
9363 | DEFB $05,$02,$04,$BB,$71,$EF,$6F | Block 2x4 tiles from 71BB to $6FEF | ||
936A | DEFB $05,$02,$04,$BB,$71,$F2,$6F | Block 2x4 tiles from 71BB to $6FF2 | ||
9371 | DEFB $FF | End of sequence |
|
||||
9372 | DEFB $CE | ![]() |
||
9373 | DEFB $CF | |||
9374 | DEFB $CF | |||
9375 | DEFB $CF |
|
||||
![]() |
||||
9376 | DEFW $B41F | Room procedure | ||
9378 | DEFW $B422 | Initialization | ||
937A | DEFW $93DF | Room to Left | ||
937C | DEFW $0000 | |||
937E | DEFW $8384 | Room Up | ||
9380 | DEFW $0000 | |||
9382 | DEFB $04,$FF | Fill entire screen with $FF | ||
9384 | DEFB $03,$02,$0C,$06,$80,$66 | Rectangle 12x6 tiles with $02 at $6680 | ||
938A | DEFB $03,$02,$0B,$06,$90,$66 | Rectangle 11x6 tiles with $02 at $6690 | ||
9390 | DEFB $02,$0C,$03,$62,$66 | Fill horz 12 tiles with $03 at $6662 | ||
9395 | DEFB $02,$0B,$03,$72,$66 | Fill horz 11 tiles with $03 at $6672 | ||
939A | DEFB $03,$0C,$0B,$02,$FE,$70 | Rectangle 11x2 tiles with $0C at $70FE | ||
93A0 | DEFB $02,$0B,$0B,$E0,$70 | Fill horz 11 tiles with $0B at $70E0 | ||
93A5 | DEFB $0C,$B9,$71,$02,$0E,$94,$65 | Block 2 tiles from 71B9 to $6594 copy 14 times | ||
93AC | DEFB $0C,$B9,$71,$02,$0E,$A4,$65 | Block 2 tiles from 71B9 to $65A4 copy 14 times | ||
93B3 | DEFB $05,$06,$02,$88,$71,$F3,$70 | Block 6x2 tiles from 7188 to $70F3 | ||
93BA | DEFB $01,$07,$FD,$9A,$65 | Fill vert 7 tiles with $FD at $659A | ||
93BF | DEFB $01,$07,$FD,$A2,$65 | Fill vert 7 tiles with $FD at $65A2 | ||
93C4 | DEFB $01,$07,$FD,$A9,$65 | Fill vert 7 tiles with $FD at $65A9 | ||
93C9 | DEFB $05,$01,$03,$4F,$7B,$36,$67 | Block 1x3 tiles from 7B4F to $6736 | ||
93D0 | DEFB $05,$01,$03,$4F,$7B,$3A,$67 | Block 1x3 tiles from 7B4F to $673A | ||
93D7 | DEFB $05,$01,$03,$4F,$7B,$3E,$67 | Block 1x3 tiles from 7B4F to $673E | ||
93DE | DEFB $FF | End of sequence |
|
||||
![]() |
||||
93DF | DEFW $B41F | Room procedure | ||
93E1 | DEFW $C671 | Initialization | ||
93E3 | DEFW $7C9C | Room to Left | ||
93E5 | DEFW $9376 | Room to Right | ||
93E7 | DEFW $9431 | Room Up | ||
93E9 | DEFW $0000 | |||
93EB | DEFB $04,$02 | Fill entire screen with $02 | ||
93ED | DEFB $03,$21,$05,$02,$16,$67 | Rectangle 5x2 tiles with $21 at $6716 | ||
93F3 | DEFB $02,$04,$03,$7C,$66 | Fill horz 4 tiles with $03 at $667C | ||
93F8 | DEFB $02,$99,$FF,$90,$65 | Fill horz 153 tiles with $FF at $6590 | ||
93FD | DEFB $02,$10,$FF,$36,$66 | Fill horz 16 tiles with $FF at $6636 | ||
9402 | DEFB $02,$04,$FF,$5E,$66 | Fill horz 4 tiles with $FF at $665E | ||
9407 | DEFB $02,$11,$FF,$1B,$67 | Fill horz 17 tiles with $FF at $671B | ||
940C | DEFB $02,$56,$FF,$38,$67 | Fill horz 86 tiles with $FF at $6738 | ||
9411 | DEFB $0C,$B9,$71,$02,$0D,$96,$65 | Block 2 tiles from 71B9 to $6596 copy 13 times | ||
9418 | DEFB $01,$05,$FD,$9E,$65 | Fill vert 5 tiles with $FD at $659E | ||
941D | DEFB $01,$06,$FD,$A7,$65 | Fill vert 6 tiles with $FD at $65A7 | ||
9422 | DEFB $05,$01,$04,$4F,$7B,$24,$67 | Block 1x4 tiles from 7B4F to $6724 | ||
9429 | DEFB $05,$01,$03,$4F,$7B,$4B,$67 | Block 1x3 tiles from 7B4F to $674B | ||
9430 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9431 | DEFW $B41F | Room procedure | ||
9433 | DEFW $B422 | Initialization | ||
9435 | DEFW $0000 | |||
9437 | DEFW $0000 | |||
9439 | DEFW $9451 | Room Up | ||
943B | DEFW $93DF | Room Down | ||
943D | DEFB $04,$FF | Fill entire screen with $FF | ||
943F | DEFB $0C,$B9,$71,$02,$11,$96,$65 | Block 2 tiles from 71B9 to $6596 copy 17 times | ||
9446 | DEFB $01,$11,$FD,$9E,$65 | Fill vert 17 tiles with $FD at $659E | ||
944B | DEFB $01,$11,$FD,$A7,$65 | Fill vert 17 tiles with $FD at $65A7 | ||
9450 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9451 | DEFW $B41F | Room procedure | ||
9453 | DEFW $B422 | Initialization | ||
9455 | DEFW $0000 | |||
9457 | DEFW $0000 | |||
9459 | DEFW $0000 | |||
945B | DEFW $9431 | Room Down | ||
945D | DEFB $04,$FF | Fill entire screen with $FF | ||
945F | DEFB $05,$02,$04,$84,$79,$1C,$67 | Block 2x4 tiles from 7984 to $671C | ||
9466 | DEFB $01,$11,$FD,$9E,$65 | Fill vert 17 tiles with $FD at $659E | ||
946B | DEFB $01,$11,$FD,$A7,$65 | Fill vert 17 tiles with $FD at $65A7 | ||
9470 | DEFB $03,$02,$18,$06,$65,$66 | Rectangle 24x6 tiles with $02 at $6665 | ||
9476 | DEFB $02,$18,$03,$47,$66 | Fill horz 24 tiles with $03 at $6647 | ||
947B | DEFB $FF | End of sequence |
|
||||
![]() |
||||
947C | DEFW $B41F | Room procedure | ||
947E | DEFW $C671 | Initialization | ||
9480 | DEFW $94AB | Room to Left | ||
9482 | DEFW $7C9C | Room to Right | ||
9484 | DEFW $0000 | |||
9486 | DEFW $0000 | |||
9488 | DEFB $04,$FF | Fill entire screen with $FF | ||
948A | DEFB $03,$02,$15,$07,$26,$66 | Rectangle 21x7 tiles with $02 at $6626 | ||
9490 | DEFB $03,$02,$07,$06,$79,$66 | Rectangle 7x6 tiles with $02 at $6679 | ||
9496 | DEFB $01,$08,$02,$3B,$66 | Fill vert 8 tiles with $02 at $663B | ||
949B | DEFB $01,$07,$02,$5A,$66 | Fill vert 7 tiles with $02 at $665A | ||
94A0 | DEFB $02,$08,$21,$2C,$67 | Fill horz 8 tiles with $21 at $672C | ||
94A5 | DEFB $02,$07,$21,$4B,$67 | Fill horz 7 tiles with $21 at $674B | ||
94AA | DEFB $FF | End of sequence |
|
||||
![]() |
||||
94AB | DEFW $7918 | Room procedure | ||
94AD | DEFW $A0DF | Initialization | ||
94AF | DEFW $95D6 | Room to Left | ||
94B1 | DEFW $947C | Room to Right | ||
94B3 | DEFW $0000 | |||
94B5 | DEFW $0000 | |||
94B7 | DEFB $04,$FF | Fill entire screen with $FF | ||
94B9 | DEFB $03,$00,$1E,$07,$26,$66 | Rectangle 30x7 tiles with $00 at $6626 | ||
94BF | DEFB $03,$02,$02,$07,$42,$66 | Rectangle 2x7 tiles with $02 at $6642 | ||
94C5 | DEFB $0E,$2A,$37,$70 | Put tile $2A at $7037 | ||
94C9 | DEFB $01,$06,$2B,$55,$70 | Fill vert 6 tiles with $2B at $7055 | ||
94CE | DEFB $FF | End of sequence |
|
||||
![]() |
||||
94CF | DEFW $7918 | Room procedure | ||
94D1 | DEFW $A11A | Initialization | ||
94D3 | DEFW $9552 | Room to Left | ||
94D5 | DEFW $9A9A | Room to Right | ||
94D7 | DEFW $0000 | |||
94D9 | DEFW $0000 | |||
94DB | DEFB $02,$3C,$FF,$52,$67 | Fill horz 60 tiles with $FF at $6752 | ||
94E0 | DEFB $03,$0D,$12,$07,$80,$66 | Rectangle 18x7 tiles with $0D at $6680 | ||
94E6 | DEFB $03,$A3,$1B,$02,$90,$65 | Rectangle 27x2 tiles with $A3 at $6590 | ||
94EC | DEFB $0E,$9C,$AB,$65 | Put tile $9C at $65AB | ||
94F0 | DEFB $0E,$9B,$C9,$65 | Put tile $9B at $65C9 | ||
94F4 | DEFB $03,$BF,$12,$06,$CC,$65 | Rectangle 18x6 tiles with $BF at $65CC | ||
94FA | DEFB $05,$02,$04,$BB,$71,$E8,$70 | Block 2x4 tiles from 71BB to $70E8 | ||
9501 | DEFB $02,$12,$BA,$CC,$65 | Fill horz 18 tiles with $BA at $65CC | ||
9506 | DEFB $02,$12,$B3,$62,$66 | Fill horz 18 tiles with $B3 at $6662 | ||
950B | DEFB $05,$01,$06,$28,$95,$CD,$65 | Block 1x6 tiles from 9528 to $65CD | ||
9512 | DEFB $05,$01,$06,$2E,$95,$D4,$65 | Block 1x6 tiles from 952E to $65D4 | ||
9519 | DEFB $05,$02,$06,$34,$95,$DA,$65 | Block 2x6 tiles from 9534 to $65DA | ||
9520 | DEFB $05,$03,$06,$40,$95,$DE,$65 | Block 3x6 tiles from 9540 to $65DE | ||
9527 | DEFB $FF | End of sequence |
|
||||
9528 | DEFB $A9 | ![]() |
||
9529 | DEFB $A8 | |||
952A | DEFB $A8 | |||
952B | DEFB $A8 | |||
952C | DEFB $A8 | |||
952D | DEFB $A7 | |||
952E | DEFB $A6 | ![]() |
||
952F | DEFB $A5 | |||
9530 | DEFB $A4 | |||
9531 | DEFB $A8 | |||
9532 | DEFB $A2 | |||
9533 | DEFB $A1 | |||
9534 | DEFB $BA,$CB | ![]() |
||
9536 | DEFB $BF,$CA | |||
9538 | DEFB $C9,$C8 | |||
953A | DEFB $C7,$C6 | |||
953C | DEFB $CA,$BF | |||
953E | DEFB $C4,$B3 | |||
9540 | DEFB $BA,$BA,$C3 | ![]() |
||
9543 | DEFB $BF,$C2,$C1 | |||
9546 | DEFB $BF,$C0,$00 | |||
9549 | DEFB $C2,$C1,$00 | |||
954C | DEFB $C0,$00,$00 | |||
954F | DEFB $C1,$00,$00 |
|
||||
![]() |
||||
9552 | DEFW $B483 | Room procedure | ||
9554 | DEFW $A197 | Initialization | ||
9556 | DEFW $9A5A | Room to Left | ||
9558 | DEFW $94CF | Room to Right | ||
955A | DEFW $0000 | |||
955C | DEFW $0000 | |||
955E | DEFB $02,$3C,$FF,$52,$67 | Fill horz 60 tiles with $FF at $6752 | ||
9563 | DEFB $03,$0D,$12,$07,$8C,$66 | Rectangle 18x7 tiles with $0D at $668C | ||
9569 | DEFB $03,$A3,$1B,$02,$93,$65 | Rectangle 27x2 tiles with $A3 at $6593 | ||
956F | DEFB $0E,$9E,$92,$65 | Put tile $9E at $6592 | ||
9573 | DEFB $0E,$9D,$B0,$65 | Put tile $9D at $65B0 | ||
9577 | DEFB $03,$BF,$12,$06,$D8,$65 | Rectangle 18x6 tiles with $BF at $65D8 | ||
957D | DEFB $05,$02,$04,$BB,$71,$DD,$70 | Block 2x4 tiles from 71BB to $70DD | ||
9584 | DEFB $05,$02,$04,$BB,$71,$E3,$70 | Block 2x4 tiles from 71BB to $70E3 | ||
958B | DEFB $02,$12,$BA,$D8,$65 | Fill horz 18 tiles with $BA at $65D8 | ||
9590 | DEFB $02,$12,$B3,$6E,$66 | Fill horz 18 tiles with $B3 at $666E | ||
9595 | DEFB $05,$01,$06,$28,$95,$E8,$65 | Block 1x6 tiles from 9528 to $65E8 | ||
959C | DEFB $05,$01,$06,$B2,$95,$E1,$65 | Block 1x6 tiles from 95B2 to $65E1 | ||
95A3 | DEFB $05,$02,$06,$B8,$95,$DA,$65 | Block 2x6 tiles from 95B8 to $65DA | ||
95AA | DEFB $05,$03,$06,$C4,$95,$D5,$65 | Block 3x6 tiles from 95C4 to $65D5 | ||
95B1 | DEFB $FF | End of sequence |
|
||||
95B2 | DEFB $A0 | ![]() |
||
95B3 | DEFB $A2 | |||
95B4 | DEFB $A8 | |||
95B5 | DEFB $A4 | |||
95B6 | DEFB $A5 | |||
95B7 | DEFB $9F | |||
95B8 | DEFB $BB,$BA | ![]() |
||
95BA | DEFB $B9,$BF | |||
95BC | DEFB $B8,$B7 | |||
95BE | DEFB $B6,$B5 | |||
95C0 | DEFB $BF,$B9 | |||
95C2 | DEFB $B3,$B2 | |||
95C4 | DEFB $B1,$BA,$BA | ![]() |
||
95C7 | DEFB $B0,$AF,$BF | |||
95CA | DEFB $00,$AE,$BF | |||
95CD | DEFB $00,$B0,$AF | |||
95D0 | DEFB $00,$00,$AE | |||
95D3 | DEFB $00,$00,$B0 |
|
||||
![]() |
||||
95D6 | DEFW $B483 | Room procedure | ||
95D8 | DEFW $A183 | Initialization | ||
95DA | DEFW $95F8 | Room to Left | ||
95DC | DEFW $94AB | Room to Right | ||
95DE | DEFW $0000 | |||
95E0 | DEFW $0000 | |||
95E2 | DEFB $02,$96,$FF,$90,$65 | Fill horz 150 tiles with $FF at $6590 | ||
95E7 | DEFB $03,$FF,$10,$05,$06,$67 | Rectangle 16x5 tiles with $FF at $6706 | ||
95ED | DEFB $02,$07,$00,$06,$67 | Fill horz 7 tiles with $00 at $6706 | ||
95F2 | DEFB $02,$10,$FA,$16,$67 | Fill horz 16 tiles with $FA at $6716 | ||
95F7 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
95F8 | DEFW $B41F | Room procedure | ||
95FA | DEFW $B422 | Initialization | ||
95FC | DEFW $0000 | |||
95FE | DEFW $95D6 | Room to Right | ||
9600 | DEFW $0000 | |||
9602 | DEFW $9634 | Room Down | ||
9604 | DEFB $04,$FF | Fill entire screen with $FF | ||
9606 | DEFB $03,$00,$17,$08,$2D,$66 | Rectangle 23x8 tiles with $00 at $662D | ||
960C | DEFB $06,$FF,$03,$2D,$66 | Triangle with $FF, count=3 at $662D | ||
9611 | DEFB $02,$0C,$FA,$28,$67 | Fill horz 12 tiles with $FA at $6728 | ||
9616 | DEFB $02,$0A,$00,$48,$67 | Fill horz 10 tiles with $00 at $6748 | ||
961B | DEFB $02,$16,$00,$5A,$67 | Fill horz 22 tiles with $00 at $675A | ||
9620 | DEFB $02,$18,$00,$76,$67 | Fill horz 24 tiles with $00 at $6776 | ||
9625 | DEFB $0C,$48,$73,$02,$0C,$34,$66 | Block 2 tiles from 7348 to $6634 copy 12 times | ||
962C | DEFB $05,$02,$01,$9D,$88,$24,$67 | Block 2x1 tiles from 889D to $6724 | ||
9633 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9634 | DEFW $B41F | Room procedure | ||
9636 | DEFW $B422 | Initialization | ||
9638 | DEFW $0000 | |||
963A | DEFW $968A | Room to Right | ||
963C | DEFW $95F8 | Room Up | ||
963E | DEFW $990D | Room Down | ||
9640 | DEFB $03,$FF,$04,$0D,$90,$65 | Rectangle 4x13 tiles with $FF at $6590 | ||
9646 | DEFB $03,$FF,$18,$04,$1C,$67 | Rectangle 24x4 tiles with $FF at $671C | ||
964C | DEFB $07,$FF,$05,$84,$66 | Triangle with $FF, count=5 at $6684 | ||
9651 | DEFB $0E,$00,$84,$66 | Put tile $00 at $6684 | ||
9655 | DEFB $09,$FF,$03,$1B,$67 | Triangle with $FF, count=3 at $671B | ||
965A | DEFB $05,$02,$02,$86,$96,$52,$67 | Block 2x2 tiles from 9686 to $6752 | ||
9661 | DEFB $0C,$48,$73,$02,$0D,$9E,$65 | Block 2 tiles from 7348 to $659E copy 13 times | ||
9668 | DEFB $02,$0C,$00,$28,$67 | Fill horz 12 tiles with $00 at $6728 | ||
966D | DEFB $02,$0C,$00,$62,$67 | Fill horz 12 tiles with $00 at $6762 | ||
9672 | DEFB $02,$10,$00,$7C,$67 | Fill horz 16 tiles with $00 at $677C | ||
9677 | DEFB $0C,$48,$73,$02,$02,$6B,$67 | Block 2 tiles from 7348 to $676B copy 2 times | ||
967E | DEFB $05,$02,$01,$9D,$88,$4D,$67 | Block 2x1 tiles from 889D to $674D | ||
9685 | DEFB $FF | End of sequence |
|
||||
9686 | DEFB $B4,$AA | ![]() |
||
9688 | DEFB $AD,$AB |
|
||||
![]() |
||||
968A | DEFW $B483 | Room procedure | ||
968C | DEFW $A188 | Initialization | ||
968E | DEFW $9634 | Room to Left | ||
9690 | DEFW $96CC | Room to Right | ||
9692 | DEFW $0000 | |||
9694 | DEFW $9715 | Room Down | ||
9696 | DEFB $03,$FF,$10,$05,$9E,$65 | Rectangle 16x5 tiles with $FF at $659E | ||
969C | DEFB $01,$0C,$3A,$40,$66 | Fill vert 12 tiles with $3A at $6640 | ||
96A1 | DEFB $03,$FF,$0B,$02,$52,$67 | Rectangle 11x2 tiles with $FF at $6752 | ||
96A7 | DEFB $02,$10,$FF,$34,$67 | Fill horz 16 tiles with $FF at $6734 | ||
96AC | DEFB $02,$09,$FA,$44,$67 | Fill horz 9 tiles with $FA at $6744 | ||
96B1 | DEFB $02,$06,$FA,$6A,$67 | Fill horz 6 tiles with $FA at $676A | ||
96B6 | DEFB $05,$02,$04,$BB,$71,$B6,$70 | Block 2x4 tiles from 71BB to $70B6 | ||
96BD | DEFB $0C,$48,$73,$02,$02,$5E,$67 | Block 2 tiles from 7348 to $675E copy 2 times | ||
96C4 | DEFB $05,$02,$01,$9D,$88,$40,$67 | Block 2x1 tiles from 889D to $6740 | ||
96CB | DEFB $FF | End of sequence |
|
||||
![]() |
||||
96CC | DEFW $B41F | Room procedure | ||
96CE | DEFW $B422 | Initialization | ||
96D0 | DEFW $968A | Room to Left | ||
96D2 | DEFW $0000 | |||
96D4 | DEFW $0000 | |||
96D6 | DEFW $96F3 | Room Down | ||
96D8 | DEFB $02,$96,$FF,$90,$65 | Fill horz 150 tiles with $FF at $6590 | ||
96DD | DEFB $03,$FF,$0F,$0C,$35,$66 | Rectangle 15x12 tiles with $FF at $6635 | ||
96E3 | DEFB $09,$FF,$09,$34,$66 | Triangle with $FF, count=9 at $6634 | ||
96E8 | DEFB $01,$0C,$3A,$27,$66 | Fill vert 12 tiles with $3A at $6627 | ||
96ED | DEFB $02,$04,$FA,$52,$67 | Fill horz 4 tiles with $FA at $6752 | ||
96F2 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
96F3 | DEFW $B41F | Room procedure | ||
96F5 | DEFW $B422 | Initialization | ||
96F7 | DEFW $9715 | Room to Left | ||
96F9 | DEFW $0000 | |||
96FB | DEFW $0000 | |||
96FD | DEFW $976E | Room Down | ||
96FF | DEFB $03,$FF,$0F,$11,$9F,$65 | Rectangle 15x17 tiles with $FF at $659F | ||
9705 | DEFB $01,$11,$3A,$91,$65 | Fill vert 17 tiles with $3A at $6591 | ||
970A | DEFB $01,$0A,$3A,$68,$66 | Fill vert 10 tiles with $3A at $6668 | ||
970F | DEFB $02,$09,$FA,$80,$66 | Fill horz 9 tiles with $FA at $6680 | ||
9714 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9715 | DEFW $B41F | Room procedure | ||
9717 | DEFW $B422 | Initialization | ||
9719 | DEFW $0000 | |||
971B | DEFW $96F3 | Room to Right | ||
971D | DEFW $968A | Room Up | ||
971F | DEFW $9739 | Room Down | ||
9721 | DEFB $03,$FF,$0B,$11,$90,$65 | Rectangle 11x17 tiles with $FF at $6590 | ||
9727 | DEFB $0C,$48,$73,$02,$11,$9C,$65 | Block 2 tiles from 7348 to $659C copy 17 times | ||
972E | DEFB $01,$11,$3A,$AA,$65 | Fill vert 17 tiles with $3A at $65AA | ||
9733 | DEFB $02,$08,$FA,$96,$66 | Fill horz 8 tiles with $FA at $6696 | ||
9738 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9739 | DEFW $B452 | Room procedure | ||
973B | DEFW $A384 | Initialization | ||
973D | DEFW $99A6 | Room to Left | ||
973F | DEFW $976E | Room to Right | ||
9741 | DEFW $9715 | Room Up | ||
9743 | DEFW $97A6 | Room Down | ||
9745 | DEFB $03,$FF,$0B,$0A,$90,$65 | Rectangle 11x10 tiles with $FF at $6590 | ||
974B | DEFB $08,$00,$06,$12,$66 | Triangle with $00, count=6 at $6612 | ||
9750 | DEFB $02,$22,$FF,$6C,$67 | Fill horz 34 tiles with $FF at $676C | ||
9755 | DEFB $01,$01,$E4,$A0,$66 | Fill vert 1 tiles with $E4 at $66A0 | ||
975A | DEFB $01,$0F,$3A,$AA,$65 | Fill vert 15 tiles with $3A at $65AA | ||
975F | DEFB $05,$02,$01,$9D,$88,$76,$67 | Block 2x1 tiles from 889D to $6776 | ||
9766 | DEFB $0C,$48,$73,$02,$10,$9C,$65 | Block 2 tiles from 7348 to $659C copy 16 times | ||
976D | DEFB $FF | End of sequence |
|
||||
![]() |
||||
976E | DEFW $B41F | Room procedure | ||
9770 | DEFW $B422 | Initialization | ||
9772 | DEFW $9739 | Room to Left | ||
9774 | DEFW $0000 | |||
9776 | DEFW $0000 | |||
9778 | DEFW $0000 | |||
977A | DEFB $04,$FF | Fill entire screen with $FF | ||
977C | DEFB $03,$00,$0F,$08,$90,$65 | Rectangle 15x8 tiles with $00 at $6590 | ||
9782 | DEFB $03,$00,$07,$07,$80,$66 | Rectangle 7x7 tiles with $00 at $6680 | ||
9788 | DEFB $02,$06,$00,$87,$66 | Fill horz 6 tiles with $00 at $6687 | ||
978D | DEFB $02,$04,$00,$A5,$66 | Fill horz 4 tiles with $00 at $66A5 | ||
9792 | DEFB $02,$02,$00,$C3,$66 | Fill horz 2 tiles with $00 at $66C3 | ||
9797 | DEFB $01,$0F,$3A,$91,$65 | Fill vert 15 tiles with $3A at $6591 | ||
979C | DEFB $01,$0F,$3A,$96,$65 | Fill vert 15 tiles with $3A at $6596 | ||
97A1 | DEFB $0E,$FA,$E0,$66 | Put tile $FA at $66E0 | ||
97A5 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
97A6 | DEFW $B483 | Room procedure | ||
97A8 | DEFW $B368 | Initialization | ||
97AA | DEFW $9876 | Room to Left | ||
97AC | DEFW $97F8 | Room to Right | ||
97AE | DEFW $9739 | Room Up | ||
97B0 | DEFW $0000 | |||
97B2 | DEFB $03,$FF,$09,$07,$80,$66 | Rectangle 9x7 tiles with $FF at $6680 | ||
97B8 | DEFB $02,$3C,$FF,$52,$67 | Fill horz 60 tiles with $FF at $6752 | ||
97BD | DEFB $07,$FF,$06,$A7,$66 | Triangle with $FF, count=6 at $66A7 | ||
97C2 | DEFB $0C,$48,$73,$02,$08,$96,$65 | Block 2 tiles from 7348 to $6596 copy 8 times | ||
97C9 | DEFB $03,$FF,$04,$08,$AA,$65 | Rectangle 4x8 tiles with $FF at $65AA | ||
97CF | DEFB $0E,$00,$31,$67 | Put tile $00 at $6731 | ||
97D3 | DEFB $0E,$2A,$91,$70 | Put tile $2A at $7091 | ||
97D7 | DEFB $01,$06,$2B,$AF,$70 | Fill vert 6 tiles with $2B at $70AF | ||
97DC | DEFB $05,$04,$07,$AA,$79,$82,$70 | Block 4x7 tiles from 79AA to $7082 | ||
97E3 | DEFB $05,$04,$07,$AA,$79,$25,$70 | Block 4x7 tiles from 79AA to $7025 | ||
97EA | DEFB $05,$04,$07,$AA,$79,$06,$70 | Block 4x7 tiles from 79AA to $7006 | ||
97F1 | DEFB $03,$02,$02,$07,$9C,$66 | Rectangle 2x7 tiles with $02 at $669C | ||
97F7 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
97F8 | DEFW $7918 | Room procedure | ||
97FA | DEFW $A115 | Initialization | ||
97FC | DEFW $97A6 | Room to Left | ||
97FE | DEFW $0000 | |||
9800 | DEFW $0000 | |||
9802 | DEFW $982B | Room Down | ||
9804 | DEFB $04,$FF | Fill entire screen with $FF | ||
9806 | DEFB $03,$02,$1C,$07,$80,$66 | Rectangle 28x7 tiles with $02 at $6680 | ||
980C | DEFB $03,$02,$10,$04,$0E,$66 | Rectangle 16x4 tiles with $02 at $660E | ||
9812 | DEFB $08,$02,$03,$2B,$66 | Triangle with $02, count=3 at $662B | ||
9817 | DEFB $07,$02,$03,$3C,$66 | Triangle with $02, count=3 at $663C | ||
981C | DEFB $0C,$B9,$71,$02,$09,$99,$66 | Block 2 tiles from 71B9 to $6699 copy 9 times | ||
9823 | DEFB $05,$02,$01,$84,$79,$6B,$67 | Block 2x1 tiles from 7984 to $676B | ||
982A | DEFB $FF | End of sequence |
|
||||
![]() |
||||
982B | DEFW $B41F | Room procedure | ||
982D | DEFW $C681 | Initialization | ||
982F | DEFW $7C9C | Room to Left | ||
9831 | DEFW $0000 | |||
9833 | DEFW $97F8 | Room Up | ||
9835 | DEFW $0000 | |||
9837 | DEFB $04,$FF | Fill entire screen with $FF | ||
9839 | DEFB $03,$02,$13,$06,$B7,$65 | Rectangle 19x6 tiles with $02 at $65B7 | ||
983F | DEFB $03,$02,$13,$06,$62,$66 | Rectangle 19x6 tiles with $02 at $6662 | ||
9845 | DEFB $08,$02,$05,$D4,$65 | Triangle with $02, count=5 at $65D4 | ||
984A | DEFB $06,$02,$05,$75,$66 | Triangle with $02, count=5 at $6675 | ||
984F | DEFB $02,$12,$21,$16,$67 | Fill horz 18 tiles with $21 at $6716 | ||
9854 | DEFB $02,$11,$21,$34,$67 | Fill horz 17 tiles with $21 at $6734 | ||
9859 | DEFB $0C,$B9,$71,$02,$07,$A9,$65 | Block 2 tiles from 71B9 to $65A9 copy 7 times | ||
9860 | DEFB $05,$04,$07,$8E,$79,$86,$70 | Block 4x7 tiles from 798E to $7086 | ||
9867 | DEFB $05,$04,$07,$8E,$79,$2F,$70 | Block 4x7 tiles from 798E to $702F | ||
986E | DEFB $05,$04,$07,$8E,$79,$F5,$6F | Block 4x7 tiles from 798E to $6FF5 | ||
9875 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9876 | DEFW $B41F | Room procedure | ||
9878 | DEFW $B422 | Initialization | ||
987A | DEFW $98C0 | Room to Left | ||
987C | DEFW $97A6 | Room to Right | ||
987E | DEFW $0000 | |||
9880 | DEFW $0000 | |||
9882 | DEFB $04,$FF | Fill entire screen with $FF | ||
9884 | DEFB $03,$00,$0A,$07,$80,$66 | Rectangle 10x7 tiles with $00 at $6680 | ||
988A | DEFB $03,$00,$0E,$07,$2E,$66 | Rectangle 14x7 tiles with $00 at $662E | ||
9890 | DEFB $03,$00,$0A,$07,$C2,$65 | Rectangle 10x7 tiles with $00 at $65C2 | ||
9896 | DEFB $08,$00,$02,$4B,$66 | Triangle with $00, count=2 at $664B | ||
989B | DEFB $08,$00,$03,$DF,$65 | Triangle with $00, count=3 at $65DF | ||
98A0 | DEFB $06,$00,$02,$02,$67 | Triangle with $00, count=2 at $6702 | ||
98A5 | DEFB $06,$00,$03,$96,$66 | Triangle with $00, count=3 at $6696 | ||
98AA | DEFB $05,$04,$07,$8E,$79,$7F,$70 | Block 4x7 tiles from 798E to $707F | ||
98B1 | DEFB $05,$04,$07,$8E,$79,$31,$70 | Block 4x7 tiles from 798E to $7031 | ||
98B8 | DEFB $05,$04,$07,$8E,$79,$14,$70 | Block 4x7 tiles from 798E to $7014 | ||
98BF | DEFB $FF | End of sequence |
|
||||
![]() |
||||
98C0 | DEFW $B41F | Room procedure | ||
98C2 | DEFW $B422 | Initialization | ||
98C4 | DEFW $9A9A | Room to Left | ||
98C6 | DEFW $9876 | Room to Right | ||
98C8 | DEFW $0000 | |||
98CA | DEFW $0000 | |||
98CC | DEFB $02,$F0,$FF,$90,$65 | Fill horz 240 tiles with $FF at $6590 | ||
98D1 | DEFB $02,$3C,$FF,$52,$67 | Fill horz 60 tiles with $FF at $6752 | ||
98D6 | DEFB $05,$04,$03,$7B,$7E,$EF,$70 | Block 4x3 tiles from 7E7B to $70EF | ||
98DD | DEFB $05,$03,$03,$A0,$71,$98,$70 | Block 3x3 tiles from 71A0 to $7098 | ||
98E4 | DEFB $05,$03,$03,$A0,$71,$F4,$70 | Block 3x3 tiles from 71A0 to $70F4 | ||
98EB | DEFB $05,$01,$05,$03,$99,$AB,$66 | Block 1x5 tiles from 9903 to $66AB | ||
98F2 | DEFB $05,$01,$05,$08,$99,$AE,$66 | Block 1x5 tiles from 9908 to $66AE | ||
98F9 | DEFB $0C,$01,$99,$02,$07,$8E,$66 | Block 2 tiles from 9901 to $668E copy 7 times | ||
9900 | DEFB $FF | End of sequence |
|
||||
9901 | DEFB $9A,$99 | ![]() |
||
9903 | DEFB $C5 | ![]() |
||
9904 | DEFB $C5 | |||
9905 | DEFB $BC | |||
9906 | DEFB $C5 | |||
9907 | DEFB $C5 | |||
9908 | DEFB $C5 | ![]() |
||
9909 | DEFB $C5 | |||
990A | DEFB $BD | |||
990B | DEFB $C5 | |||
990C | DEFB $C5 |
|
||||
![]() |
||||
990D | DEFW $B41F | Room procedure | ||
990F | DEFW $B422 | Initialization | ||
9911 | DEFW $0000 | |||
9913 | DEFW $0000 | |||
9915 | DEFW $9634 | Room Up | ||
9917 | DEFW $0000 | |||
9919 | DEFB $03,$FF,$14,$11,$9A,$65 | Rectangle 20x17 tiles with $FF at $659A | ||
991F | DEFB $03,$00,$11,$0C,$9B,$65 | Rectangle 17x12 tiles with $00 at $659B | ||
9925 | DEFB $03,$00,$08,$04,$0C,$67 | Rectangle 8x4 tiles with $00 at $670C | ||
992B | DEFB $09,$00,$03,$0B,$67 | Triangle with $00, count=3 at $670B | ||
9930 | DEFB $0C,$48,$73,$02,$10,$A9,$65 | Block 2 tiles from 7348 to $65A9 copy 16 times | ||
9937 | DEFB $05,$04,$07,$AA,$79,$A5,$70 | Block 4x7 tiles from 79AA to $70A5 | ||
993E | DEFB $05,$04,$07,$AA,$79,$86,$70 | Block 4x7 tiles from 79AA to $7086 | ||
9945 | DEFB $03,$0D,$02,$11,$94,$65 | Rectangle 2x17 tiles with $0D at $6594 | ||
994B | DEFB $01,$07,$2B,$26,$70 | Fill vert 7 tiles with $2B at $7026 | ||
9950 | DEFB $05,$03,$01,$97,$99,$B2,$65 | Block 3x1 tiles from 9997 to $65B2 | ||
9957 | DEFB $05,$03,$01,$97,$99,$2A,$66 | Block 3x1 tiles from 9997 to $662A | ||
995E | DEFB $05,$03,$01,$97,$99,$C0,$66 | Block 3x1 tiles from 9997 to $66C0 | ||
9965 | DEFB $05,$03,$01,$97,$99,$38,$67 | Block 3x1 tiles from 9997 to $6738 | ||
996C | DEFB $05,$04,$03,$9A,$99,$CC,$65 | Block 4x3 tiles from 999A to $65CC | ||
9973 | DEFB $05,$04,$03,$9A,$99,$26,$66 | Block 4x3 tiles from 999A to $6626 | ||
997A | DEFB $05,$04,$03,$9A,$99,$80,$66 | Block 4x3 tiles from 999A to $6680 | ||
9981 | DEFB $05,$04,$03,$9A,$99,$DA,$66 | Block 4x3 tiles from 999A to $66DA | ||
9988 | DEFB $05,$04,$03,$9A,$99,$34,$67 | Block 4x3 tiles from 999A to $6734 | ||
998F | DEFB $05,$04,$02,$9E,$99,$90,$65 | Block 4x2 tiles from 999E to $6590 | ||
9996 | DEFB $FF | End of sequence |
|
||||
9997 | DEFB $1A,$1A,$16 | ![]() |
||
999A | DEFB $B4,$AA,$B4,$AA | ![]() |
||
999E | DEFB $AC,$BE,$AC,$BE | ![]() |
||
99A2 | DEFB $AD,$AB,$AD,$AB |
|
||||
![]()
Console: flips trigger "E": set/remove wall in room 97A6.
|
||||
99A6 | DEFW $7918 | Room procedure | ||
99A8 | DEFW $A110 | Initialization | ||
99AA | DEFW $0000 | |||
99AC | DEFW $9739 | Room to Right | ||
99AE | DEFW $0000 | |||
99B0 | DEFW $0000 | |||
99B2 | DEFB $02,$1E,$FF,$70,$67 | Fill horz 30 tiles with $FF at $6770 | ||
99B7 | DEFB $01,$0E,$FF,$D6,$65 | Fill vert 14 tiles with $FF at $65D6 | ||
99BC | DEFB $01,$07,$2B,$9E,$70 | Fill vert 7 tiles with $2B at $709E | ||
99C1 | DEFB $03,$FF,$14,$02,$9A,$65 | Rectangle 20x2 tiles with $FF at $659A | ||
99C7 | DEFB $03,$FF,$03,$08,$E7,$65 | Rectangle 3x8 tiles with $FF at $65E7 | ||
99CD | DEFB $0E,$00,$B9,$66 | Put tile $00 at $66B9 | ||
99D1 | DEFB $05,$02,$04,$BB,$71,$01,$71 | Block 2x4 tiles from 71BB to $7101 | ||
99D8 | DEFB $03,$0D,$02,$10,$94,$65 | Rectangle 2x16 tiles with $0D at $6594 | ||
99DE | DEFB $05,$04,$03,$9A,$99,$CC,$65 | Block 4x3 tiles from 999A to $65CC | ||
99E5 | DEFB $05,$04,$03,$9A,$99,$26,$66 | Block 4x3 tiles from 999A to $6626 | ||
99EC | DEFB $05,$04,$03,$9A,$99,$80,$66 | Block 4x3 tiles from 999A to $6680 | ||
99F3 | DEFB $05,$04,$03,$9A,$99,$DA,$66 | Block 4x3 tiles from 999A to $66DA | ||
99FA | DEFB $05,$04,$02,$9A,$99,$34,$67 | Block 4x2 tiles from 999A to $6734 | ||
9A01 | DEFB $05,$03,$01,$97,$99,$EE,$65 | Block 3x1 tiles from 9997 to $65EE | ||
9A08 | DEFB $05,$03,$01,$97,$99,$48,$66 | Block 3x1 tiles from 9997 to $6648 | ||
9A0F | DEFB $05,$03,$01,$97,$99,$C0,$66 | Block 3x1 tiles from 9997 to $66C0 | ||
9A16 | DEFB $05,$04,$02,$9E,$99,$90,$65 | Block 4x2 tiles from 999E to $6590 | ||
9A1D | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9A1E | DEFW $B41F | Room procedure | ||
9A20 | DEFW $B422 | Initialization | ||
9A22 | DEFW $0000 | |||
9A24 | DEFW $7C9C | Room to Right | ||
9A26 | DEFW $9A5A | Room Up | ||
9A28 | DEFW $0000 | |||
9A2A | DEFB $04,$FF | Fill entire screen with $FF | ||
9A2C | DEFB $03,$02,$06,$08,$92,$65 | Rectangle 6x8 tiles with $02 at $6592 | ||
9A32 | DEFB $03,$02,$08,$06,$D4,$65 | Rectangle 8x6 tiles with $02 at $65D4 | ||
9A38 | DEFB $09,$02,$06,$8F,$66 | Triangle with $02, count=6 at $668F | ||
9A3D | DEFB $03,$02,$0E,$06,$72,$66 | Rectangle 14x6 tiles with $02 at $6672 | ||
9A43 | DEFB $07,$02,$04,$FA,$65 | Triangle with $02, count=4 at $65FA | ||
9A48 | DEFB $0C,$B9,$71,$02,$08,$94,$65 | Block 2 tiles from 71B9 to $6594 copy 8 times | ||
9A4F | DEFB $02,$0F,$21,$25,$67 | Fill horz 15 tiles with $21 at $6725 | ||
9A54 | DEFB $02,$0E,$21,$44,$67 | Fill horz 14 tiles with $21 at $6744 | ||
9A59 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9A5A | DEFW $B452 | Room procedure | ||
9A5C | DEFW $A389 | Initialization | ||
9A5E | DEFW $0000 | |||
9A60 | DEFW $9552 | Room to Right | ||
9A62 | DEFW $9B51 | Room Up | ||
9A64 | DEFW $9A1E | Room Down | ||
9A66 | DEFB $04,$FF | Fill entire screen with $FF | ||
9A68 | DEFB $03,$00,$1C,$0B,$92,$65 | Rectangle 28x11 tiles with $00 at $6592 | ||
9A6E | DEFB $03,$00,$07,$04,$F1,$66 | Rectangle 7x4 tiles with $00 at $66F1 | ||
9A74 | DEFB $09,$00,$03,$F0,$66 | Triangle with $00, count=3 at $66F0 | ||
9A79 | DEFB $03,$02,$06,$02,$54,$67 | Rectangle 6x2 tiles with $02 at $6754 | ||
9A7F | DEFB $02,$04,$02,$37,$67 | Fill horz 4 tiles with $02 at $6737 | ||
9A84 | DEFB $0C,$B9,$71,$02,$05,$FC,$66 | Block 2 tiles from 71B9 to $66FC copy 5 times | ||
9A8B | DEFB $05,$02,$01,$84,$79,$DE,$66 | Block 2x1 tiles from 7984 to $66DE | ||
9A92 | DEFB $0C,$48,$73,$02,$0B,$99,$65 | Block 2 tiles from 7348 to $6599 copy 11 times | ||
9A99 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9A9A | DEFW $B483 | Room procedure | ||
9A9C | DEFW $A192 | Initialization | ||
9A9E | DEFW $94CF | Room to Left | ||
9AA0 | DEFW $98C0 | Room to Right | ||
9AA2 | DEFW $9ADC | Room Up | ||
9AA4 | DEFW $0000 | |||
9AA6 | DEFB $02,$0A,$FF,$91,$65 | Fill horz 10 tiles with $FF at $6591 | ||
9AAB | DEFB $02,$3C,$FF,$52,$67 | Fill horz 60 tiles with $FF at $6752 | ||
9AB0 | DEFB $03,$FF,$04,$08,$AA,$65 | Rectangle 4x8 tiles with $FF at $65AA | ||
9AB6 | DEFB $0E,$2A,$90,$70 | Put tile $2A at $7090 | ||
9ABA | DEFB $01,$06,$2B,$AE,$70 | Fill vert 6 tiles with $2B at $70AE | ||
9ABF | DEFB $0C,$48,$73,$02,$0F,$A5,$65 | Block 2 tiles from 7348 to $65A5 copy 15 times | ||
9AC6 | DEFB $05,$04,$04,$A9,$71,$D4,$70 | Block 4x4 tiles from 71A9 to $70D4 | ||
9ACD | DEFB $05,$04,$04,$A9,$71,$DB,$70 | Block 4x4 tiles from 71A9 to $70DB | ||
9AD4 | DEFB $05,$04,$04,$A9,$71,$E0,$70 | Block 4x4 tiles from 71A9 to $70E0 | ||
9ADB | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9ADC | DEFW $B41F | Room procedure | ||
9ADE | DEFW $B422 | Initialization | ||
9AE0 | DEFW $0000 | |||
9AE2 | DEFW $0000 | |||
9AE4 | DEFW $9B19 | Room Up | ||
9AE6 | DEFW $9A9A | Room Down | ||
9AE8 | DEFB $04,$FF | Fill entire screen with $FF | ||
9AEA | DEFB $03,$00,$18,$08,$92,$65 | Rectangle 24x8 tiles with $00 at $6592 | ||
9AF0 | DEFB $03,$00,$0F,$07,$8B,$66 | Rectangle 15x7 tiles with $00 at $668B | ||
9AF6 | DEFB $09,$00,$06,$8A,$66 | Triangle with $00, count=6 at $668A | ||
9AFB | DEFB $0C,$48,$73,$02,$11,$A5,$65 | Block 2 tiles from 7348 to $65A5 copy 17 times | ||
9B02 | DEFB $01,$0F,$3A,$A0,$65 | Fill vert 15 tiles with $3A at $65A0 | ||
9B07 | DEFB $02,$0D,$FF,$70,$66 | Fill horz 13 tiles with $FF at $6670 | ||
9B0C | DEFB $02,$0D,$27,$66,$70 | Fill horz 13 tiles with $27 at $7066 | ||
9B11 | DEFB $05,$02,$01,$9D,$88,$67,$67 | Block 2x1 tiles from 889D to $6767 | ||
9B18 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9B19 | DEFW $7918 | Room procedure | ||
9B1B | DEFW $A133 | Initialization | ||
9B1D | DEFW $0000 | |||
9B1F | DEFW $0000 | |||
9B21 | DEFW $9BE7 | Room Up | ||
9B23 | DEFW $9ADC | Room Down | ||
9B25 | DEFB $03,$FF,$02,$11,$90,$65 | Rectangle 2x17 tiles with $FF at $6590 | ||
9B2B | DEFB $03,$FF,$04,$11,$AA,$65 | Rectangle 4x17 tiles with $FF at $65AA | ||
9B31 | DEFB $0C,$48,$73,$02,$11,$A5,$65 | Block 2 tiles from 7348 to $65A5 copy 17 times | ||
9B38 | DEFB $01,$11,$3A,$A0,$65 | Fill vert 17 tiles with $3A at $65A0 | ||
9B3D | DEFB $02,$1A,$FA,$F9,$66 | Fill horz 26 tiles with $FA at $66F9 | ||
9B42 | DEFB $05,$03,$03,$A0,$71,$96,$70 | Block 3x3 tiles from 71A0 to $7096 | ||
9B49 | DEFB $05,$02,$01,$9D,$88,$0D,$67 | Block 2x1 tiles from 889D to $670D | ||
9B50 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9B51 | DEFW $7918 | Room procedure | ||
9B53 | DEFW $A11F | Initialization | ||
9B55 | DEFW $0000 | |||
9B57 | DEFW $0000 | |||
9B59 | DEFW $9B9D | Room Up | ||
9B5B | DEFW $9A5A | Room Down | ||
9B5D | DEFB $04,$FF | Fill entire screen with $FF | ||
9B5F | DEFB $03,$00,$1A,$0E,$92,$65 | Rectangle 26x14 tiles with $00 at $6592 | ||
9B65 | DEFB $01,$07,$00,$7F,$66 | Fill vert 7 tiles with $00 at $667F | ||
9B6A | DEFB $01,$07,$2B,$74,$70 | Fill vert 7 tiles with $2B at $7074 | ||
9B6F | DEFB $0C,$48,$73,$02,$02,$5B,$67 | Block 2 tiles from 7348 to $675B copy 2 times | ||
9B76 | DEFB $0C,$48,$73,$02,$0E,$A5,$65 | Block 2 tiles from 7348 to $65A5 copy 14 times | ||
9B7D | DEFB $05,$02,$01,$9D,$88,$3D,$67 | Block 2x1 tiles from 889D to $673D | ||
9B84 | DEFB $00,$D5,$70 | Barrel 3x3 tiles at $70D5 | ||
9B87 | DEFB $05,$04,$04,$89,$87,$B4,$70 | Block 4x4 tiles from 8789 to $70B4 | ||
9B8E | DEFB $05,$04,$04,$89,$87,$C0,$70 | Block 4x4 tiles from 8789 to $70C0 | ||
9B95 | DEFB $05,$03,$03,$A0,$71,$E9,$70 | Block 3x3 tiles from 71A0 to $70E9 | ||
9B9C | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9B9D | DEFW $B458 | Room procedure | ||
9B9F | DEFW $A1D6 | Initialization | ||
9BA1 | DEFW $0000 | |||
9BA3 | DEFW $0000 | |||
9BA5 | DEFW $9F3A | Room Up | ||
9BA7 | DEFW $9B51 | Room Down | ||
9BA9 | DEFB $04,$FF | Fill entire screen with $FF | ||
9BAB | DEFB $03,$00,$1A,$07,$A0,$66 | Rectangle 26x7 tiles with $00 at $66A0 | ||
9BB1 | DEFB $03,$00,$18,$08,$94,$65 | Rectangle 24x8 tiles with $00 at $6594 | ||
9BB7 | DEFB $05,$02,$01,$9D,$88,$85,$67 | Block 2x1 tiles from 889D to $6785 | ||
9BBE | DEFB $05,$02,$01,$9D,$88,$8A,$66 | Block 2x1 tiles from 889D to $668A | ||
9BC5 | DEFB $0C,$48,$73,$02,$07,$A8,$66 | Block 2 tiles from 7348 to $66A8 copy 7 times | ||
9BCC | DEFB $0C,$48,$73,$02,$08,$A6,$65 | Block 2 tiles from 7348 to $65A6 copy 8 times | ||
9BD3 | DEFB $05,$03,$03,$A0,$71,$24,$71 | Block 3x3 tiles from 71A0 to $7124 | ||
9BDA | DEFB $00,$B5,$70 | Barrel 3x3 tiles at $70B5 | ||
9BDD | DEFB $00,$0F,$71 | Barrel 3x3 tiles at $710F | ||
9BE0 | DEFB $00,$12,$71 | Barrel 3x3 tiles at $7112 | ||
9BE3 | DEFB $00,$19,$71 | Barrel 3x3 tiles at $7119 | ||
9BE6 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9BE7 | DEFW $B483 | Room procedure | ||
9BE9 | DEFW $A19C | Initialization | ||
9BEB | DEFW $0000 | |||
9BED | DEFW $9DF5 | Room to Right | ||
9BEF | DEFW $9E73 | Room Up | ||
9BF1 | DEFW $9B19 | Room Down | ||
9BF3 | DEFB $03,$FF,$02,$0C,$26,$66 | Rectangle 2x12 tiles with $FF at $6626 | ||
9BF9 | DEFB $03,$FF,$09,$05,$96,$65 | Rectangle 9x5 tiles with $FF at $6596 | ||
9BFF | DEFB $08,$FF,$05,$95,$65 | Triangle with $FF, count=5 at $6595 | ||
9C04 | DEFB $06,$FF,$09,$28,$66 | Triangle with $FF, count=9 at $6628 | ||
9C09 | DEFB $02,$04,$FF,$AA,$65 | Fill horz 4 tiles with $FF at $65AA | ||
9C0E | DEFB $03,$FF,$04,$04,$30,$67 | Rectangle 4x4 tiles with $FF at $6730 | ||
9C14 | DEFB $01,$11,$3A,$A0,$65 | Fill vert 17 tiles with $3A at $65A0 | ||
9C19 | DEFB $0C,$48,$73,$02,$0D,$A2,$65 | Block 2 tiles from 7348 to $65A2 copy 13 times | ||
9C20 | DEFB $0C,$48,$73,$02,$03,$49,$67 | Block 2 tiles from 7348 to $6749 copy 3 times | ||
9C27 | DEFB $02,$1A,$FA,$17,$67 | Fill horz 26 tiles with $FA at $6717 | ||
9C2C | DEFB $05,$02,$01,$9D,$88,$2B,$67 | Block 2x1 tiles from 889D to $672B | ||
9C33 | DEFB $01,$04,$F9,$A5,$66 | Fill vert 4 tiles with $F9 at $66A5 | ||
9C38 | DEFB $FF | End of sequence |
|
||||
9C39 | DEFB $00,$00,$00,$00,$00,$00,$00 | |||
9C40 | DEFB $08 | Ninja Y within the room, 0 at the top | ||
9C41 | DEFB $06 | Ninja X within the room | ||
9C42 | DEFW $00F6 | Ninja position in tilemap: Y * 30 + X |
9C44 | LD HL,$71D3 | dog Y position address | ||
9C47 | LD A,($9C40) | get Ninja Y | ||
9C4A | SUB (HL) | |||
9C4B | CP $07 | |||
9C4D | JR NC,$9C80 | |||
9C4F | LD HL,$7345 | |||
9C52 | XOR A | |||
9C53 | CP (HL) | |||
9C54 | JR NZ,$9C5A | |||
9C56 | LD (HL),$19 | !!MUT-ARG!! ?? | ||
9C58 | JR $9C80 | |||
9C5A | DEC (HL) | |||
9C5B | CP (HL) | |||
9C5C | JR NZ,$9C80 | |||
9C5E | LD A,($71CD) | get Dog direction | ||
9C61 | CP $00 | left? | ||
9C63 | JR NZ,$9C71 | right => | ||
9C65 | LD A,($9C41) | get Ninja X | ||
9C68 | INC A | |||
9C69 | LD HL,$71CE | Dog X position address | ||
9C6C | CP (HL) | |||
9C6D | JR C,$9C80 | |||
9C6F | JR $9C7B | |||
9C71 | LD A,($9C41) | get Ninja X | ||
9C74 | INC A | |||
9C75 | LD HL,$71CE | Dog X position address | ||
9C78 | CP (HL) | |||
9C79 | JR NC,$9C80 | |||
9C7B | LD A,$01 | |||
9C7D | LD ($7344),A | set "Dog ignore left/right limit" flag | ||
9C80 | LD A,($71CD) | !!MUT-ARG!! get Dog direction | ||
9C83 | LD ($71CD),A | |||
9C86 | LD HL,$71CD | |||
9C89 | LD ($9C81),HL | |||
9C8C | CALL $9D5C | Set update flags for Dog | ||
9C8F | LD A,($71CF) | |||
9C92 | CP $42 | |||
9C94 | JR C,$9CA8 | |||
9C96 | LD HL,$9C9C | Sprite Dog dead | ||
9C99 | JP $9D31 | => Set Dog sprite = HL, Draw Dog in tilemap |
|
||||
9C9C | DEFB $FF,$FF,$FF,$FF | ![]() |
||
9CA0 | DEFB $FF,$FF,$FF,$FF | |||
9CA4 | DEFB $5D,$5E,$5F,$60 |
Used by the routine at 9C44.
|
||||
9CA8 | CP $00 | |||
9CAA | JP NZ,$9D8B | |||
9CAD | LD HL,($71CB) | get Dog position in tilemap | ||
9CB0 | LD DE,$69AD | $69AD = $698C (Tile screen 2) + 33: for right direction | ||
9CB3 | LD A,($71CD) | get Dog direction | ||
9CB6 | CP $01 | right? | ||
9CB8 | JR Z,$9CBD | right => | ||
9CBA | LD DE,$69AA | $69AA = $698C (Tile screen 2) + 30: for left direction | ||
9CBD | ADD HL,DE | now HL = Dog position in Ninja tile screen | ||
9CBE | LD A,(HL) | get tile from Ninja tile screen | ||
9CBF | INC A | $FF? | ||
9CC0 | LD B,$05 | |||
9CC2 | CALL NZ,$9DD9 | not $FF => Dog bites, decrease Energy by 5 | ||
9CC5 | LD A,($71CD) | get Dog direction | ||
9CC8 | CP $00 | left? | ||
9CCA | JR Z,$9CF1 | left => | ||
Dog runs right
|
||||
9CCC | LD HL,($71CB) | get Dog position in tilemap | ||
9CCF | INC HL | one tile right | ||
9CD0 | LD ($71CB),HL | update Dog position in tilemap | ||
9CD3 | LD HL,$71CE | Dog X position address | ||
9CD6 | INC (HL) | one tile right | ||
9CD7 | LD A,($7344) | |||
9CDA | CP $01 | |||
9CDC | JR Z,$9CE4 | |||
9CDE | LD A,($71D1) | get Dog's right limit | ||
9CE1 | CP (HL) | |||
9CE2 | JR NZ,$9D14 | |||
9CE4 | XOR A | |||
9CE5 | LD ($7344),A | |||
9CE8 | LD ($71D2),A | |||
9CEB | INC A | |||
9CEC | LD ($71CF),A | ?? = 1 | ||
9CEF | JR $9D14 | |||
Dog runs left
|
||||
9CF1 | LD HL,($71CB) | get Dog position in tilemap | ||
9CF4 | DEC HL | one tile left | ||
9CF5 | LD ($71CB),HL | update Dog position in tilemap | ||
9CF8 | LD HL,$71CE | Dog X position address | ||
9CFB | DEC (HL) | one tile left | ||
9CFC | LD A,($7344) | |||
9CFF | CP $01 | |||
9D01 | JR Z,$9D09 | |||
9D03 | LD A,($71D0) | get Dog's left limit | ||
9D06 | CP (HL) | |||
9D07 | JR NZ,$9D14 | |||
9D09 | XOR A | |||
9D0A | LD ($7344),A | |||
9D0D | INC A | |||
9D0E | LD ($71D2),A | |||
9D11 | LD ($71CF),A | ?? = 1 | ||
9D14 | LD HL,$71D5 | |||
9D17 | INC (HL) | |||
9D18 | LD A,$03 | |||
9D1A | CP (HL) | |||
9D1B | JR NZ,$9D1F | |||
9D1D | LD (HL),$00 | |||
9D1F | LD A,(HL) | |||
9D20 | LD HL,$71F2 | Sprite Dog 1 | ||
9D23 | CP $00 | |||
9D25 | JR Z,$9D31 | => Set Dog sprite = HL, Draw Dog in tilemap | ||
9D27 | LD HL,$71FE | Sprite Dog 2 | ||
9D2A | CP $01 | |||
9D2C | JR Z,$9D31 | => Set Dog sprite = HL, Draw Dog in tilemap | ||
9D2E | LD HL,$720A | Sprite Dog 3 | ||
Set Dog sprite = HL, Draw Dog in tilemap
|
||||
9D31 | LD ($9D3C),HL | set DOg sprite = HL | ||
Draw Dog in tilemap
|
||||
9D34 | LD HL,($71CB) | |||
9D37 | LD DE,$6B8A | Tile screen 3 start address | ||
9D3A | ADD HL,DE | |||
9D3B | LD DE,$71FE | !!MUT-ARG!! current Dog sprite address | ||
9D3E | LD B,$03 | 3 rows | ||
9D40 | LD A,($71CD) | get Dog direction | ||
9D43 | CP $00 | left? | ||
9D45 | JR Z,$9D75 | left => draw Dog facing left | ||
Draw Dog facing right in tilemap
|
||||
9D47 | LD C,$04 | 4 columns | ||
9D49 | LD A,(DE) | |||
9D4A | LD (HL),A | |||
9D4B | INC HL | |||
9D4C | INC DE | |||
9D4D | DEC C | |||
9D4E | JR NZ,$9D49 | |||
9D50 | PUSH DE | |||
9D51 | LD DE,$001A | 26 | ||
9D54 | ADD HL,DE | next row | ||
9D55 | POP DE | |||
9D56 | DJNZ $9D47 | |||
This entry point is used by the routine at 9D75.
|
||||
9D58 | CALL $9D5C | Set update flags for Dog, 4x3 tiles | ||
9D5B | RET |
9D5C | LD C,$03 | 3 rows | ||
9D5E | LD HL,($71CB) | |||
9D61 | LD DE,$678E | Tile screen 1 start address | ||
9D64 | ADD HL,DE | |||
9D65 | LD A,$01 | "need to update" flag | ||
9D67 | LD DE,$001A | 26 | ||
9D6A | LD B,$04 | 4 columns | ||
9D6C | LD (HL),A | set the flag | ||
9D6D | INC HL | next column | ||
9D6E | DJNZ $9D6C | |||
9D70 | ADD HL,DE | next row | ||
9D71 | DEC C | |||
9D72 | JR NZ,$9D6A | continue loop by rows | ||
9D74 | RET |
Used by the routine at 9CA8.
|
||||
9D75 | INC HL | |||
9D76 | INC HL | |||
9D77 | INC HL | |||
9D78 | LD C,$04 | 4 rows | ||
9D7A | LD A,(DE) | |||
9D7B | LD (HL),A | |||
9D7C | DEC HL | |||
9D7D | INC DE | |||
9D7E | DEC C | |||
9D7F | JR NZ,$9D7A | |||
9D81 | PUSH DE | |||
9D82 | LD DE,$0022 | 34 | ||
9D85 | ADD HL,DE | |||
9D86 | POP DE | |||
9D87 | DJNZ $9D78 | |||
9D89 | JR $9D58 | => Set update flags for Dog, and RET |
Used by the routine at 9CA8.
|
||||
9D8B | LD HL,$7216 | Sprite Dog 4 | ||
9D8E | LD ($9D3C),HL | |||
9D91 | LD A,($71D2) | |||
9D94 | CP $00 | |||
9D96 | JR Z,$9DB3 | |||
9D98 | LD A,($71CD) | get Dog direction | ||
9D9B | CP $00 | left? | ||
9D9D | JR Z,$9DA6 | left => | ||
9D9F | DEC A | |||
9DA0 | LD ($71CF),A | |||
9DA3 | JP $9D34 | |||
9DA6 | INC A | |||
9DA7 | LD ($71D4),A | |||
9DAA | LD HL,$71D4 | |||
9DAD | LD ($9C81),HL | |||
9DB0 | JP $9D34 | |||
9DB3 | LD A,($71CD) | get Dog direction | ||
9DB6 | CP $00 | left? | ||
9DB8 | JR Z,$9DC7 | left => | ||
9DBA | DEC A | |||
9DBB | LD ($71D4),A | |||
9DBE | LD HL,$71D4 | |||
9DC1 | LD ($9C81),HL | |||
9DC4 | JP $9D34 | |||
9DC7 | LD ($71CF),A | |||
9DCA | JP $9D34 |
|
||||||||
9DCD | LD DE,$71CB | current dog data address | ||||||
9DD0 | LD ($B674),HL | save current Dog data address | ||||||
9DD3 | LD BC,$0009 | 9 = size of Dog data | ||||||
9DD6 | LDIR | Copy Dog data | ||||||
9DD8 | RET |
9DD9 | RET | !!MUT-CMD!! $C5 PUSH BC or $C9 RET | ||
9DDA | CALL $749E | Decrease Energy | ||
9DDD | POP BC | |||
9DDE | LD A,($749C) | get Energy | ||
9DE1 | CP $04 | Energy = MIN ? | ||
9DE3 | JR NZ,$9DF1 | |||
9DE5 | LD A,($749D) | get Energy lower | ||
9DE8 | CP $01 | |||
9DEA | JR NZ,$9DF1 | |||
9DEC | JP $BEAA | Energy is out => Saboteur dead | ||
9DEF | DI | !!UNUSED!! | ||
9DF0 | RET | |||
9DF1 | DJNZ $9DD9 | continue loop by B | ||
9DF3 | DI | |||
9DF4 | RET |
|
||||
![]() |
||||
9DF5 | DEFW $7918 | Room procedure | ||
9DF7 | DEFW $A138 | Initialization | ||
9DF9 | DEFW $9BE7 | Room to Left | ||
9DFB | DEFW $0000 | |||
9DFD | DEFW $9E22 | Room Up | ||
9DFF | DEFW $0000 | |||
9E01 | DEFB $02,$07,$FF,$90,$65 | Fill horz 7 tiles with $FF at $6590 | ||
9E06 | DEFB $03,$FF,$02,$0C,$AC,$65 | Rectangle 2x12 tiles with $FF at $65AC | ||
9E0C | DEFB $02,$7A,$FF,$14,$67 | Fill horz 122 tiles with $FF at $6714 | ||
9E11 | DEFB $0C,$48,$73,$02,$0D,$A4,$65 | Block 2 tiles from 7348 to $65A4 copy 13 times | ||
9E18 | DEFB $0E,$2A,$A7,$6F | Put tile $2A at $6FA7 | ||
9E1C | DEFB $01,$0B,$2B,$C5,$6F | Fill vert 11 tiles with $2B at $6FC5 | ||
9E21 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9E22 | DEFW $B41F | Room procedure | ||
9E24 | DEFW $B422 | Initialization | ||
9E26 | DEFW $0000 | |||
9E28 | DEFW $0000 | |||
9E2A | DEFW $0000 | |||
9E2C | DEFW $9DF5 | Room Down | ||
9E2E | DEFB $04,$FF | Fill entire screen with $FF | ||
9E30 | DEFB $03,$00,$14,$02,$5A,$67 | Rectangle 20x2 tiles with $00 at $675A | ||
9E36 | DEFB $03,$02,$1A,$0C,$B0,$65 | Rectangle 26x12 tiles with $02 at $65B0 | ||
9E3C | DEFB $09,$FF,$05,$C9,$65 | Triangle with $FF, count=5 at $65C9 | ||
9E41 | DEFB $0C,$48,$73,$02,$03,$48,$67 | Block 2 tiles from 7348 to $6748 copy 3 times | ||
9E48 | DEFB $05,$02,$01,$9D,$88,$2A,$67 | Block 2x1 tiles from 889D to $672A | ||
9E4F | DEFB $05,$02,$04,$BB,$71,$A5,$70 | Block 2x4 tiles from 71BB to $70A5 | ||
9E56 | DEFB $05,$03,$03,$A0,$71,$B7,$70 | Block 3x3 tiles from 71A0 to $70B7 | ||
9E5D | DEFB $05,$03,$03,$A0,$71,$BD,$70 | Block 3x3 tiles from 71A0 to $70BD | ||
9E64 | DEFB $05,$03,$03,$A0,$71,$CA,$70 | Block 3x3 tiles from 71A0 to $70CA | ||
9E6B | DEFB $05,$03,$04,$9C,$84,$96,$70 | Block 3x4 tiles from 849C to $7096 | ||
9E72 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9E73 | DEFW $B41F | Room procedure | ||
9E75 | DEFW $B422 | Initialization | ||
9E77 | DEFW $9EB8 | Room to Left | ||
9E79 | DEFW $0000 | |||
9E7B | DEFW $0000 | |||
9E7D | DEFW $9BE7 | Room Down | ||
9E7F | DEFB $02,$78,$FF,$90,$65 | Fill horz 120 tiles with $FF at $6590 | ||
9E84 | DEFB $03,$FF,$06,$0D,$20,$66 | Rectangle 6x13 tiles with $FF at $6620 | ||
9E8A | DEFB $03,$FF,$06,$06,$E4,$66 | Rectangle 6x6 tiles with $FF at $66E4 | ||
9E90 | DEFB $08,$FF,$04,$1F,$67 | Triangle with $FF, count=4 at $671F | ||
9E95 | DEFB $02,$0C,$FA,$DA,$66 | Fill horz 12 tiles with $FA at $66DA | ||
9E9A | DEFB $01,$0D,$3A,$18,$66 | Fill vert 13 tiles with $3A at $6618 | ||
9E9F | DEFB $01,$07,$3A,$0C,$66 | Fill vert 7 tiles with $3A at $660C | ||
9EA4 | DEFB $02,$0A,$FA,$E9,$66 | Fill horz 10 tiles with $FA at $66E9 | ||
9EA9 | DEFB $0C,$48,$73,$02,$0D,$1A,$66 | Block 2 tiles from 7348 to $661A copy 13 times | ||
9EB0 | DEFB $05,$02,$01,$9D,$88,$EC,$66 | Block 2x1 tiles from 889D to $66EC | ||
9EB7 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9EB8 | DEFW $7918 | Room procedure | ||
9EBA | DEFW $A12E | Initialization | ||
9EBC | DEFW $9ED9 | Room to Left | ||
9EBE | DEFW $9E73 | Room to Right | ||
9EC0 | DEFW $0000 | |||
9EC2 | DEFW $0000 | |||
9EC4 | DEFB $02,$78,$FF,$90,$65 | Fill horz 120 tiles with $FF at $6590 | ||
9EC9 | DEFB $02,$1E,$FA,$DA,$66 | Fill horz 30 tiles with $FA at $66DA | ||
9ECE | DEFB $01,$07,$28,$03,$70 | Fill vert 7 tiles with $28 at $7003 | ||
9ED3 | DEFB $01,$07,$28,$13,$70 | Fill vert 7 tiles with $28 at $7013 | ||
9ED8 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9ED9 | DEFW $B41F | Room procedure | ||
9EDB | DEFW $B422 | Initialization | ||
9EDD | DEFW $9EFA | Room to Left | ||
9EDF | DEFW $9EB8 | Room to Right | ||
9EE1 | DEFW $0000 | |||
9EE3 | DEFW $0000 | |||
9EE5 | DEFB $02,$78,$FF,$90,$65 | Fill horz 120 tiles with $FF at $6590 | ||
9EEA | DEFB $02,$1E,$FA,$DA,$66 | Fill horz 30 tiles with $FA at $66DA | ||
9EEF | DEFB $01,$07,$28,$05,$70 | Fill vert 7 tiles with $28 at $7005 | ||
9EF4 | DEFB $01,$07,$28,$11,$70 | Fill vert 7 tiles with $28 at $7011 | ||
9EF9 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9EFA | DEFW $B41F | Room procedure | ||
9EFC | DEFW $B422 | Initialization | ||
9EFE | DEFW $0000 | |||
9F00 | DEFW $9ED9 | Room to Right | ||
9F02 | DEFW $0000 | |||
9F04 | DEFW $9F3A | Room Down | ||
9F06 | DEFB $02,$7D,$FF,$90,$65 | Fill horz 125 tiles with $FF at $6590 | ||
9F0B | DEFB $03,$FF,$05,$0C,$26,$66 | Rectangle 5x12 tiles with $FF at $6626 | ||
9F11 | DEFB $03,$FF,$14,$05,$01,$67 | Rectangle 20x5 tiles with $FF at $6701 | ||
9F17 | DEFB $02,$13,$FF,$DF,$66 | Fill horz 19 tiles with $FF at $66DF | ||
9F1C | DEFB $02,$06,$FA,$F2,$66 | Fill horz 6 tiles with $FA at $66F2 | ||
9F21 | DEFB $01,$07,$3A,$16,$66 | Fill vert 7 tiles with $3A at $6616 | ||
9F26 | DEFB $01,$07,$28,$17,$70 | Fill vert 7 tiles with $28 at $7017 | ||
9F2B | DEFB $0C,$48,$73,$02,$0D,$0E,$66 | Block 2 tiles from 7348 to $660E copy 13 times | ||
9F32 | DEFB $05,$02,$01,$9D,$88,$E0,$66 | Block 2x1 tiles from 889D to $66E0 | ||
9F39 | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9F3A | DEFW $7918 | Room procedure | ||
9F3C | DEFW $A124 | Initialization | ||
9F3E | DEFW $0000 | |||
9F40 | DEFW $9F7E | Room to Right | ||
9F42 | DEFW $9EFA | Room Up | ||
9F44 | DEFW $9B9D | Room Down | ||
9F46 | DEFB $03,$FF,$05,$0F,$90,$65 | Rectangle 5x15 tiles with $FF at $6590 | ||
9F4C | DEFB $02,$3C,$FF,$52,$67 | Fill horz 60 tiles with $FF at $6752 | ||
9F51 | DEFB $03,$FF,$14,$02,$99,$65 | Rectangle 20x2 tiles with $FF at $6599 | ||
9F57 | DEFB $0C,$48,$73,$02,$0F,$96,$65 | Block 2 tiles from 7348 to $6596 copy 15 times | ||
9F5E | DEFB $05,$02,$04,$BB,$71,$E3,$70 | Block 2x4 tiles from 71BB to $70E3 | ||
9F65 | DEFB $01,$0D,$3A,$DA,$65 | Fill vert 13 tiles with $3A at $65DA | ||
9F6A | DEFB $01,$0D,$3A,$E5,$65 | Fill vert 13 tiles with $3A at $65E5 | ||
9F6F | DEFB $05,$02,$01,$9D,$88,$68,$67 | Block 2x1 tiles from 889D to $6768 | ||
9F76 | DEFB $05,$02,$01,$48,$73,$86,$67 | Block 2x1 tiles from 7348 to $6786 | ||
9F7D | DEFB $FF | End of sequence |
|
||||
![]() |
||||
9F7E | DEFW $7918 | Room procedure | ||
9F80 | DEFW $A129 | Initialization | ||
9F82 | DEFW $9F3A | Room to Left | ||
9F84 | DEFW $A022 | Room to Right | ||
9F86 | DEFW $0000 | |||
9F88 | DEFW $0000 | |||
9F8A | DEFB $03,$FF,$02,$02,$52,$67 | Rectangle 2x2 tiles with $FF at $6752 | ||
9F90 | DEFB $03,$A3,$1B,$02,$55,$67 | Rectangle 27x2 tiles with $A3 at $6755 | ||
9F96 | DEFB $05,$01,$02,$08,$A0,$54,$67 | Block 1x2 tiles from A008 to $6754 | ||
9F9D | DEFB $03,$F5,$1A,$0A,$20,$70 | Rectangle 26x10 tiles with $F5 at $7020 | ||
9FA3 | DEFB $03,$FF,$02,$02,$20,$70 | Rectangle 2x2 tiles with $FF at $7020 | ||
9FA9 | DEFB $05,$02,$02,$04,$A0,$2A,$66 | Block 2x2 tiles from A004 to $662A | ||
9FB0 | DEFB $05,$04,$04,$0A,$A0,$7C,$70 | Block 4x4 tiles from A00A to $707C | ||
9FB7 | DEFB $05,$04,$04,$0A,$A0,$80,$70 | Block 4x4 tiles from A00A to $7080 | ||
9FBE | DEFB $05,$04,$04,$0A,$A0,$84,$70 | Block 4x4 tiles from A00A to $7084 | ||
9FC5 | DEFB $05,$04,$04,$0A,$A0,$88,$70 | Block 4x4 tiles from A00A to $7088 | ||
9FCC | DEFB $05,$04,$04,$0A,$A0,$8C,$70 | Block 4x4 tiles from A00A to $708C | ||
9FD3 | DEFB $05,$04,$04,$0A,$A0,$90,$70 | Block 4x4 tiles from A00A to $7090 | ||
9FDA | DEFB $03,$1B,$18,$04,$86,$66 | Rectangle 24x4 tiles with $1B at $6686 | ||
9FE0 | DEFB $03,$A3,$18,$02,$F0,$65 | Rectangle 24x2 tiles with $A3 at $65F0 | ||
9FE6 | DEFB $05,$01,$02,$08,$A0,$EF,$65 | Block 1x2 tiles from A008 to $65EF | ||
9FED | DEFB $0E,$98,$D3,$65 | Put tile $98 at $65D3 | ||
9FF1 | DEFB $02,$16,$0D,$D4,$65 | Fill horz 22 tiles with $0D at $65D4 | ||
9FF6 | DEFB $05,$04,$02,$1A,$A0,$A6,$65 | Block 4x2 tiles from A01A to $65A6 | ||
9FFD | DEFB $03,$0D,$04,$02,$AA,$65 | Rectangle 4x2 tiles with $0D at $65AA | ||
A003 | DEFB $FF | End of sequence |
|
||||
A004 | DEFB $00,$98 | ![]() |
||
A006 | DEFB $98,$95 | |||
A008 | DEFB $9E | ![]() |
||
A009 | DEFB $9D | |||
A00A | DEFB $FE,$FB,$FB,$F8 | ![]() |
||
A00E | DEFB $FD,$FF,$FF,$F7 | |||
A012 | DEFB $FD,$FF,$FF,$F7 | |||
A016 | DEFB $FC,$F9,$F9,$F6 | |||
A01A | DEFB $00,$00,$97,$96 | ![]() |
||
A01E | DEFB $97,$96,$0D,$0D |
|
||||
![]() |
||||
A022 | DEFW $B41F | Room procedure | ||
A024 | DEFW $B422 | Initialization | ||
A026 | DEFW $9F7E | Room to Left | ||
A028 | DEFW $0000 | |||
A02A | DEFW $0000 | |||
A02C | DEFW $0000 | |||
A02E | DEFB $03,$A3,$1B,$02,$52,$67 | Rectangle 27x2 tiles with $A3 at $6752 | ||
A034 | DEFB $03,$F5,$1A,$0A,$1C,$70 | Rectangle 26x10 tiles with $F5 at $701C | ||
A03A | DEFB $03,$FF,$02,$02,$34,$70 | Rectangle 2x2 tiles with $FF at $7034 | ||
A040 | DEFB $05,$02,$02,$A7,$A0,$3E,$66 | Block 2x2 tiles from A0A7 to $663E | ||
A047 | DEFB $05,$04,$04,$0A,$A0,$76,$70 | Block 4x4 tiles from A00A to $7076 | ||
A04E | DEFB $05,$04,$04,$0A,$A0,$7A,$70 | Block 4x4 tiles from A00A to $707A | ||
A055 | DEFB $05,$04,$04,$0A,$A0,$7E,$70 | Block 4x4 tiles from A00A to $707E | ||
A05C | DEFB $05,$04,$04,$0A,$A0,$82,$70 | Block 4x4 tiles from A00A to $7082 | ||
A063 | DEFB $05,$04,$04,$0A,$A0,$86,$70 | Block 4x4 tiles from A00A to $7086 | ||
A06A | DEFB $05,$04,$04,$0A,$A0,$8A,$70 | Block 4x4 tiles from A00A to $708A | ||
A071 | DEFB $03,$1B,$18,$04,$80,$66 | Rectangle 24x4 tiles with $1B at $6680 | ||
A077 | DEFB $03,$A3,$18,$02,$EA,$65 | Rectangle 24x2 tiles with $A3 at $65EA | ||
A07D | DEFB $05,$01,$02,$AB,$A0,$02,$66 | Block 1x2 tiles from A0AB to $6602 | ||
A084 | DEFB $0E,$94,$E2,$65 | Put tile $94 at $65E2 | ||
A088 | DEFB $02,$16,$0D,$CC,$65 | Fill horz 22 tiles with $0D at $65CC | ||
A08D | DEFB $05,$04,$02,$AD,$A0,$94,$65 | Block 4x2 tiles from A0AD to $6594 | ||
A094 | DEFB $03,$0D,$04,$02,$90,$65 | Rectangle 4x2 tiles with $0D at $6590 | ||
A09A | DEFB $01,$08,$FF,$7B,$66 | Fill vert 8 tiles with $FF at $667B | ||
A09F | DEFB $05,$01,$02,$AB,$A0,$6D,$67 | Block 1x2 tiles from A0AB to $676D | ||
A0A6 | DEFB $FF | End of sequence |
|
||||
A0A7 | DEFB $94,$00 | ![]() |
||
A0A9 | DEFB $0D,$94 | |||
A0AB | DEFB $9C | ![]() |
||
A0AC | DEFB $9B | |||
A0AD | DEFB $93,$92,$00,$00 | ![]() |
||
A0B1 | DEFB $0D,$0D,$93,$92 |
|
||||
A0B5 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | ![]() |
||
A0BB | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
A0C1 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
A0C7 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
A0CD | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
A0D3 | DEFB $FF,$FF,$ED,$EC,$EB,$FF | |||
A0D9 | DEFB $F3,$F2,$F1,$F0,$EF,$EE |
|
||||
A0DF | LD HL,$A1E1 | Guard data address | ||
Initialize a guard, then Standard room initialization
|
||||
A0E2 | CALL $B40A | Initialize a guard | ||
This entry point is used by the routine at A142.
|
||||
A0E5 | JP $B422 | Standard room initialization |
|
||||
A0E8 | LD HL,$A1E7 | Guard data address | ||
A0EB | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A0ED | LD HL,$A1ED | Guard data address | ||
A0F0 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A0F2 | LD HL,$A1F3 | Guard data address | ||
A0F5 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A0F7 | LD HL,$A1F9 | Guard data address | ||
A0FA | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A0FC | LD HL,$A1FF | Guard data address | ||
A0FF | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A101 | LD HL,$A205 | Guard data address | ||
A104 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A106 | LD HL,$A20B | Guard data address | ||
A109 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A10B | LD HL,$A211 | Guard data address | ||
A10E | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A110 | LD HL,$A21D | Guard data address | ||
A113 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A115 | LD HL,$A223 | Guard data address | ||
A118 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A11A | LD HL,$A229 | Guard data address | ||
A11D | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A11F | LD HL,$A22F | Guard data address | ||
A122 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A124 | LD HL,$A235 | Guard data address | ||
A127 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A129 | LD HL,$A23B | Guard data address | ||
A12C | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A12E | LD HL,$A241 | Guard data address | ||
A131 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A133 | LD HL,$A247 | Guard data address | ||
A136 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A138 | LD HL,$A24D | Guard data address | ||
A13B | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A13D | LD HL,$A217 | Guard data address | ||
A140 | JR $A0E2 | Initialize a guard, then Standard room initialization |
|
||||
A142 | LD HL,$A33E | Turret data address | ||
Initialize a turret, then Standard room initialization
|
||||
A145 | CALL $B461 | Initialize a turret | ||
A148 | JR $A0E5 | Standard room initialization |
|
||||
A14A | LD HL,$A32F | Turret data address | ||
A14D | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A14F | LD HL,$A332 | Turret data address | ||
A152 | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A154 | LD HL,$A299 | Dog data address | ||
A157 | CALL $9DCD | Initialize a dog | ||
A15A | LD HL,$A338 | Turret data address | ||
A15D | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A15F | LD HL,$A2E9 | Dog data address | ||
A162 | CALL $9DCD | Initialize a dog | ||
A165 | LD HL,$A338 | Turret data address | ||
A168 | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A16A | LD HL,$A335 | Turret data address | ||
A16D | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A16F | LD HL,$A338 | Turret data address | ||
A172 | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A174 | LD HL,$A33B | Turret data address | ||
A177 | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A179 | LD HL,$A33E | Turret data address | ||
A17C | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A17E | LD HL,$A341 | Turret data address | ||
A181 | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A183 | LD HL,$A344 | Turret data address | ||
A186 | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A188 | LD HL,$A347 | Turret data address | ||
A18B | JR $A145 | Initialize a turret, then Standard room initialization |
Used by the routine at B368.
|
||||
A18D | LD HL,$A34A | Turret data address | ||
A190 | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A192 | LD HL,$A332 | Turret data address | ||
A195 | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A197 | LD HL,$A34D | Turret data address | ||
A19A | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A19C | LD HL,$A350 | Turret data address | ||
A19F | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A1A1 | LD HL,$A33B | Turret data address | ||
A1A4 | JR $A145 | Initialize a turret, then Standard room initialization |
|
||||
A1A6 | LD HL,$A271 | Dog data address | ||
A1A9 | CALL $9DCD | Initialize a dog | ||
A1AC | LD HL,$A253 | Guard data address |
A1AF | CALL $B40A | Initialize a guard | ||
A1B2 | JP $B422 | Standard room initialization |
|
||||
A1B5 | LD HL,$A27B | Dog data address | ||
A1B8 | CALL $9DCD | Initialize a dog | ||
A1BB | LD HL,$A259 | Guard data address | ||
A1BE | JR $A1AF | Initialize a guard, then Standard room initialization |
|
||||
A1C0 | LD HL,$A28F | Dog data address | ||
A1C3 | CALL $9DCD | Initialize a dog | ||
A1C6 | LD HL,$A25F | Guard data address | ||
A1C9 | JR $A1AF | Initialize a guard, then Standard room initialization |
|
||||
A1CB | LD HL,$A2AD | Dog data address | ||
A1CE | CALL $9DCD | Initialize a dog | ||
A1D1 | LD HL,$A265 | Guard data address | ||
A1D4 | JR $A1AF | Initialize a guard, then Standard room initialization |
|
||||
A1D6 | LD HL,$A325 | Dog data address | ||
A1D9 | CALL $9DCD | Initialize a dog | ||
A1DC | LD HL,$A26B | Guard data address | ||
A1DF | JR $A1AF | Initialize a guard, then Standard room initialization |
|
||||
+$04: Guard energy, initially 10
|
||||
A1E1 | DEFB $9D,$00,$07,$05,$0A,$01 | Room 94AB guard | ||
A1E7 | DEFB $18,$01,$0A,$09,$0A,$00 | Room 7DA9 guard | ||
A1ED | DEFB $14,$01,$06,$09,$0A,$00 | Room 7E8C guard | ||
A1F3 | DEFB $13,$01,$05,$09,$0A,$00 | Room 920A guard | ||
A1F9 | DEFB $C8,$00,$14,$06,$0A,$00 | Room 8F84 guard | ||
A1FF | DEFB $20,$01,$12,$09,$0A,$01 | Room 8B71 guard | ||
A205 | DEFB $50,$00,$14,$02,$0A,$01 | Room 8739 guard | ||
A20B | DEFB $1E,$01,$10,$09,$0A,$00 | Room 858F guard | ||
A211 | DEFB $01,$01,$11,$08,$0A,$01 | Room 84EE guard | ||
A217 | DEFB $18,$01,$0A,$09,$0A,$00 | UNUSED, see A13D | ||
A21D | DEFB $22,$01,$14,$09,$0A,$01 | Room 99A6 guard | ||
A223 | DEFB $F9,$00,$09,$08,$0A,$00 | Room 97F8 guard | ||
A229 | DEFB $02,$01,$12,$08,$0A,$01 | Room 94CF guard | ||
A22F | DEFB $DF,$00,$0D,$07,$0A,$01 | Room 9B51 guard | ||
A235 | DEFB $F7,$00,$07,$08,$0A,$01 | Room 9F3A guard | ||
A23B | DEFB $F8,$00,$08,$08,$0A,$00 | Room 9F7E guard | ||
A241 | DEFB $86,$00,$0E,$04,$0A,$01 | Room 9EB8 guard | ||
A247 | DEFB $A2,$00,$0C,$05,$0A,$00 | Room 9B19 guard | ||
A24D | DEFB $BB,$00,$07,$06,$0A,$00 | Room 9DF5 guard | ||
A253 | DEFB $C2,$00,$0E,$06,$0A,$00 | Room 7C2E guard | ||
A259 | DEFB $D4,$00,$02,$07,$0A,$00 | Room 7F9C guard | ||
A25F | DEFB $0B,$00,$0B,$00,$0A,$01 | Room 8162 guard | ||
A265 | DEFB $20,$01,$12,$09,$0A,$01 | Room 80A7 guard | ||
A26B | DEFB $30,$00,$12,$01,$0A,$01 | Room 9B9D guard |
|
||||
+$00/$01: Dog position in tilemap
+$02: Dog direction
+$03: Dog X position
+$05: Dog left limit
+$06: Dog right limit
+$08: Dog Y position
|
||||
A271 | DEFB $3C,$01,$00,$10,$00,$03,$16,$00,$03,$01 | Room 7C2E dog | ||
A27B | DEFB $5E,$01,$01,$14,$00,$03,$16,$01,$04,$01 | Room 7F9C dog | ||
A285 | DEFB $A5,$00,$00,$0F,$00,$05,$0F,$00,$FE,$01 | Room 81E5 dog | ||
A28F | DEFB $7A,$00,$01,$02,$00,$00,$18,$01,$FD,$01 | Room 8162 dog | ||
A299 | DEFB $8F,$01,$01,$09,$00,$03,$18,$01,$06,$01 | Room 7EF2 dog | ||
A2A3 | DEFB $8A,$01,$01,$04,$00,$02,$1A,$01,$06,$01 | Room 7E05 dog | ||
A2AD | DEFB $9A,$01,$00,$14,$01,$03,$15,$01,$06,$01 | Room 80A7 dog | ||
A2B7 | DEFB $92,$01,$00,$0C,$00,$05,$19,$00,$06,$01 | Room 83ED dog | ||
A2C1 | DEFB $8C,$01,$01,$06,$01,$01,$17,$00,$06,$01 | Room 80F6 dog | ||
A2CB | DEFB $90,$01,$00,$0A,$00,$04,$17,$00,$06,$01 | Room 924E dog | ||
A2D5 | DEFB $1B,$01,$01,$0D,$00,$06,$18,$01,$02,$01 | Room 91BA dog | ||
A2DF | DEFB $76,$01,$01,$0E,$00,$00,$0F,$01,$05,$01 | Room 90DB dog | ||
A2E9 | DEFB $97,$01,$01,$11,$00,$0D,$1A,$01,$06,$01 | Room 909F dog | ||
A2F3 | DEFB $BC,$00,$00,$08,$00,$01,$0E,$00,$FF,$01 | Room 8802 dog | ||
A2FD | DEFB $A4,$00,$00,$0E,$00,$02,$0E,$00,$FE,$01 | Room 8608 dog | ||
A307 | DEFB $8E,$01,$00,$08,$00,$07,$17,$00,$06,$01 | Room 844E dog | ||
A311 | DEFB $8D,$01,$01,$07,$00,$03,$15,$01,$06,$01 | Room 9739 dog | ||
A31B | DEFB $F6,$00,$00,$06,$00,$02,$0F,$00,$01,$01 | Room 9A5A dog | ||
A325 | DEFB $8C,$01,$01,$06,$00,$04,$18,$01,$06,$01 | Room 9B9D dog |
|
||||
A32F | DEFB $C4,$00,$0E | Room 7A17 turret | ||
A332 | DEFB $27,$00,$07 | Room 7F48/9A9A turret | ||
A335 | DEFB $11,$00,$0F | Room 8FBD turret | ||
A338 | DEFB $2B,$00,$0A | Room 7EF2/909F/92A7 turret | ||
A33B | DEFB $4B,$00,$0D | Room 8B25/8D5C turret | ||
A33E | DEFB $2F,$00,$0F | Room 7A17/8526 turret | ||
A341 | DEFB $32,$00,$12 | UNUSED, see A17E | ||
A344 | DEFB $9D,$00,$05 | Room 95D6 turret | ||
A347 | DEFB $A6,$00,$0E | Room 968A turret | ||
A34A | DEFB $0A,$01,$18 | Room 97A6 turret | ||
A34D | DEFB $3F,$00,$01 | Room 9552 turret | ||
A350 | DEFB $A3,$00,$0B | Room 9BE7 turret |
|
||||
A353 | LD HL,$A285 | Dog data address | ||
Initialize a dog, then Standard room initialization
|
||||
A356 | CALL $9DCD | Initialize a dog | ||
A359 | JP $B422 | Standard room initialization |
|
||||
A35C | LD HL,$A2A3 | Dog data address | ||
A35F | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A361 | LD HL,$A2B7 | Dog data address | ||
A364 | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A366 | LD HL,$A2CB | Dog data address | ||
A369 | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A36B | LD HL,$A2D5 | Dog data address | ||
A36E | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A370 | LD HL,$A2DF | Dog data address | ||
A373 | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A375 | LD HL,$A2F3 | Dog data address | ||
A378 | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A37A | LD HL,$A2FD | Dog data address | ||
A37D | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A37F | LD HL,$A307 | Dog data address | ||
A382 | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A384 | LD HL,$A311 | Dog data address | ||
A387 | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A389 | LD HL,$A31B | Dog data address | ||
A38C | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A38E | LD HL,$A2C1 | Dog data address | ||
A391 | JR $A356 | Initialize a dog, then Standard room initialization |
|
||||
A393 | DEFB $90,$01,$01,$0A,$42,$01,$17,$01 | |||
A39B | DEFB $06,$01,$00,$00,$00,$C4,$00,$00 | |||
A3A3 | DEFB $03,$06,$10,$00,$45,$01,$05,$05 | |||
A3AB | DEFB $0A,$19,$00,$69,$00,$06,$06,$03 | |||
A3B3 | DEFB $0F | |||
A3B4 | DEFB $01 | ?? Guard counter |
Used by the routine at A434.
|
||||
A3B5 | LD A,($9C40) | get Ninja Y | ||
A3B8 | LD HL,$71C6 | Guard Y position address | ||
A3BB | CP (HL) | compare Ninja Y to Guard Y | ||
A3BC | RET NZ | |||
A3BD | POP HL | |||
A3BE | LD A,$14 | !!MUT-ARG!! ?? | ||
A3C0 | LD ($A3B4),A | |||
A3C3 | LD A,$0B | |||
A3C5 | LD ($7346),A | set Guard state = $0B | ||
A3C8 | LD HL,$D504 | Sprite Ninja/Guard punching | ||
A3CB | LD ($A70F),HL | set Guard sprite | ||
A3CE | JP $A6FF | => Draw Guard on tilemap |
Used by the routine at A434.
|
||||
A3D1 | LD A,($9C40) | get Ninja Y | ||
A3D4 | LD HL,$71C6 | Guard Y position address | ||
A3D7 | CP (HL) | compare Ninja Y to Guard Y | ||
A3D8 | RET NZ | |||
A3D9 | LD A,($A3A6) | |||
A3DC | CP $00 | |||
A3DE | RET NZ | |||
A3DF | POP HL | |||
A3E0 | LD A,$14 | |||
A3E2 | LD ($7346),A | set Guard state = $14 | ||
A3E5 | LD HL,$D504 | Sprite Ninja/Guard punching | ||
A3E8 | LD ($A70F),HL | set Guard sprite | ||
A3EB | JP $A6FF | => Draw Guard on tilemap |
Used by the routine at A434.
|
||||
A3EE | LD A,($9C40) | get Ninja Y | ||
A3F1 | LD HL,$71C6 | Guard Y position address | ||
A3F4 | CP (HL) | compare Ninja Y to Guard Y | ||
A3F5 | RET NZ | |||
A3F6 | LD HL,($71C3) | get Guard position in tilemap | ||
A3F9 | LD DE,$6592 | $6592 = $6590 (Tile screen 0) + 2 | ||
A3FC | ADD HL,DE | now HL in Back tile screen | ||
A3FD | LD A,$64 | |||
A3FF | CP (HL) | |||
A400 | RET C | |||
A401 | INC HL | |||
A402 | CP (HL) | |||
A403 | RET C | |||
A404 | POP HL | |||
A405 | LD A,$05 | |||
A407 | LD ($7346),A | set Guard state = $05 | ||
A40A | LD A,$02 | |||
A40C | LD ($A3B4),A | set Guard counter | ||
A40F | LD HL,$D4B0 | Sprite Ninja/Guard jumping | ||
A412 | LD ($A70F),HL | set Guard sprite | ||
A415 | JP $A6FF | => Draw Guard on tilemap |
Used by the routine at A434.
|
||||
A418 | LD A,($9C40) | get Ninja Y | ||
A41B | LD HL,$71C6 | Guard Y position address | ||
A41E | CP (HL) | compare Ninja Y to Guard Y | ||
A41F | RET NZ | |||
A420 | POP HL | |||
A421 | LD A,$08 | |||
A423 | LD ($7346),A | set Guard state = $08 | ||
A426 | LD A,$03 | |||
A428 | LD ($A3B4),A | set Guard counter | ||
A42B | LD HL,$D504 | Sprite Ninja/Guard punching | ||
A42E | LD ($A70F),HL | set Guard sprite | ||
A431 | JP $A6FF | => Draw Guard on tilemap |
A434 | CALL $A75B | Set update flags for Guard, 6x7 tiles | ||
A437 | LD HL,$7346 | Guard state address | ||
A43A | LD A,(HL) | get Guard state | ||
Guard state = $0B ?
|
||||
A43B | CP $0B | |||
A43D | JP NZ,$A4E7 | |||
A440 | LD HL,$A3B4 | Guard counter address | ||
A443 | DEC (HL) | decrease Guard counter | ||
A444 | LD A,(HL) | get Guard counter | ||
A445 | CP $06 | |||
A447 | JP NC,$A6FF | => Draw Guard on tilemap | ||
A44A | LD A,$10 | |||
A44C | OUT ($FE),A | |||
A44E | LD A,($71C6) | get Guard Y | ||
A451 | ADD A,A | Guard Y * 2 | ||
A452 | LD ($A45F),A | |||
A455 | INC A | Guard Y * 2 + 1 | ||
A456 | LD ($A462),A | |||
A459 | LD IX,$A747 | |||
A45D | LD L,(IX+$04) | |||
A460 | LD H,(IX+$05) | |||
A463 | LD A,($71C5) | get Guard X | ||
A466 | LD D,$00 | |||
A468 | LD E,A | |||
A469 | ADD HL,DE | |||
A46A | LD DE,$003C | |||
A46D | LD A,($71C5) | get Guard X | ||
A470 | INC A | |||
A471 | PUSH HL | |||
A472 | LD HL,($71C3) | get Current Guard position in tilemap | ||
A475 | ADD HL,DE | |||
A476 | EX DE,HL | |||
A477 | POP HL | |||
A478 | LD B,A | |||
A479 | LD A,$2B | "DEC HL" instruction | ||
A47B | LD ($A4D0),A | set the instruction | ||
A47E | LD A,$1B | "DEC DE" instruction | ||
A480 | LD ($A4D1),A | set the instruction | ||
A483 | LD A,($7347) | get Guard direction | ||
A486 | CP $00 | left? | ||
A488 | JR Z,$A4A2 | yes => | ||
A48A | LD A,$1A | 26 | ||
A48C | SUB B | |||
A48D | LD B,A | |||
A48E | INC DE | |||
A48F | INC DE | |||
A490 | INC DE | |||
A491 | INC DE | |||
A492 | INC DE | +5 | ||
A493 | INC HL | |||
A494 | INC HL | |||
A495 | INC HL | |||
A496 | INC HL | |||
A497 | INC HL | +5 | ||
A498 | LD A,$23 | "INC HL" instruction | ||
A49A | LD ($A4D0),A | set the instruction | ||
A49D | LD A,$13 | "INC DE" instruction | ||
A49F | LD ($A4D1),A | set the instruction | ||
A4A2 | PUSH HL | |||
A4A3 | LD HL,$6590 | Tile screen 0 start address | ||
A4A6 | ADD HL,DE | |||
A4A7 | LD A,$64 | |||
A4A9 | CP (HL) | |||
A4AA | JR C,$A4CD | |||
A4AC | LD HL,$6F86 | Tile screen 5 start address | ||
A4AF | ADD HL,DE | |||
A4B0 | LD A,(HL) | |||
A4B1 | INC A | |||
A4B2 | JR NZ,$A4C0 | |||
A4B4 | LD HL,$678E | Tile screen 1 start address | ||
A4B7 | ADD HL,DE | |||
A4B8 | LD (HL),$01 | |||
A4BA | POP HL | |||
A4BB | PUSH HL | |||
A4BC | LD A,$CC | |||
A4BE | XOR (HL) | |||
A4BF | LD (HL),A | |||
A4C0 | LD HL,$698C | Tile screen 2 start address | ||
A4C3 | ADD HL,DE | |||
A4C4 | LD A,(HL) | |||
A4C5 | INC A | |||
A4C6 | JR Z,$A4CF | |||
A4C8 | LD B,$04 | |||
A4CA | CALL $9DD9 | Decrease Energy by B | ||
A4CD | LD B,$01 | |||
A4CF | POP HL | |||
A4D0 | DEC HL | !!MUT-CMD!! "DEC HL" or "INC HL" instruction | ||
A4D1 | DEC DE | !!MUT-CMD!! "DEC DE" or "INC DE" instruction | ||
A4D2 | DJNZ $A4A2 | |||
A4D4 | XOR A | |||
A4D5 | OUT ($FE),A | |||
A4D7 | LD A,($A3B4) | get Guard counter | ||
A4DA | CP $00 | |||
A4DC | JP NZ,$A6FF | => Draw Guard on tilemap | ||
A4DF | LD A,$04 | |||
A4E1 | LD ($7346),A | set Guard state = $04 | ||
A4E4 | JP $A6FF | => Draw Guard on tilemap | ||
Guard state = $14 ?
|
||||
A4E7 | CP $14 | |||
A4E9 | JR NZ,$A52F | |||
A4EB | LD (HL),$04 | set Guard state = $04 | ||
A4ED | LD HL,$D486 | Sprite Ninja/Guard standing | ||
A4F0 | LD ($A70F),HL | set Guard sprite | ||
A4F3 | LD HL,($71C3) | get Guard position in tilemap | ||
A4F6 | LD DE,$003C | 60 | ||
A4F9 | LD B,$00 | |||
A4FB | LD C,$03 | |||
A4FD | LD A,($7347) | get Guard direction | ||
A500 | CP $00 | left? | ||
A502 | JR Z,$A50B | left => | ||
A504 | LD C,$05 | |||
A506 | LD B,$05 | |||
A508 | LD DE,$0041 | 65 | ||
A50B | ADD HL,DE | |||
A50C | LD ($A3A7),HL | |||
A50F | LD A,($71C5) | get Guard X | ||
A512 | ADD A,B | |||
A513 | LD IX,$A3A6 | |||
A517 | LD (IX+$00),$CA | |||
A51B | LD (IX+$03),C | |||
A51E | LD (IX+$04),C | |||
A521 | LD (IX+$06),A | |||
A524 | LD A,($71C6) | get Guard Y | ||
A527 | ADD A,$02 | Guard Y + 2 | ||
A529 | LD (IX+$05),A | |||
A52C | JP $A6FF | => Draw Guard on tilemap | ||
Guard state = $0A ?
|
||||
A52F | CP $0A | |||
A531 | JR NZ,$A56D | |||
A533 | LD HL,$D486 | Sprite Ninja/Guard standing | ||
A536 | LD ($A70F),HL | set Guard sprite | ||
A539 | LD HL,$9C40 | Ninja Y address | ||
A53C | LD A,($71C6) | get Guard Y | ||
A53F | ADD A,$03 | Guard Y + 3 | ||
A541 | CP (HL) | compare with Ninja Y | ||
A542 | JP C,$A6FF | Guard above Ninja => Draw Guard on tilemap | ||
A545 | LD A,($A39E) | |||
A548 | DEC A | |||
A549 | JR Z,$A565 | |||
A54B | LD A,($7347) | get Guard direction: 0 / 1 | ||
A54E | DEC A | $FF left / 0 right | ||
A54F | LD A,($71C5) | get Guard X | ||
A552 | LD HL,$9C41 | Ninja X address | ||
A555 | JR Z,$A55F | right => | ||
A557 | ADD A,$02 | for left, Guard X + 2 | ||
A559 | CP (HL) | compare with Ninja X | ||
A55A | JP C,$A6FF | Guard still behind Ninja => Draw Guard on tilemap | ||
A55D | JR $A565 | |||
A55F | SUB $03 | for right, Guard X - 3 | ||
A561 | CP (HL) | compare with Ninja X | ||
A562 | JP NC,$A6FF | Guard not reached Ninja => Draw Guard on tilemap | ||
A565 | LD A,$04 | state $04 | ||
A567 | LD ($7346),A | set Guard state = $04 | ||
A56A | JP $A6FF | => Draw Guard on tilemap | ||
Guard state = $09 ? - Guard is dead
|
||||
A56D | CP $09 | |||
A56F | JR NZ,$A57A | |||
A571 | LD HL,$A0B5 | Sprite Ninja dead | ||
A574 | LD ($A70F),HL | set Guard sprite | ||
A577 | JP $A6FF | => Draw Guard on tilemap | ||
Guard state = $08 ?
|
||||
A57A | CP $08 | |||
A57C | JR NZ,$A5AA | |||
A57E | PUSH HL | |||
A57F | LD HL,$A3B4 | Guard counter address | ||
A582 | DEC (HL) | decrease Guard counter | ||
A583 | POP HL | |||
A584 | JP NZ,$A6FF | => Draw Guard on tilemap | ||
A587 | LD (HL),$03 | set Guard state = walking state 3 | ||
A589 | LD HL,($71C3) | |||
A58C | LD DE,$69CC | $69CC = $698C (Tile screen 2) + 64 | ||
A58F | LD A,($7347) | get Guard direction | ||
A592 | CP $01 | right? | ||
A594 | JR Z,$A599 | yes => | ||
A596 | LD DE,$69C9 | $69C9 = $698C (Tile screen 2) + 61 | ||
A599 | ADD HL,DE | |||
A59A | LD A,(HL) | |||
A59B | INC A | |||
A59C | LD B,$06 | |||
A59E | CALL NZ,$FA31 | => Decrease Energy by B + Sound | ||
A5A1 | LD HL,$D486 | Sprite Ninja/Guard standing | ||
A5A4 | LD ($A70F),HL | set Guard sprite | ||
A5A7 | JP $A6FF | => Draw Guard on tilemap | ||
Guard state = $05 ? - Preparing for jump-kick
|
||||
A5AA | CP $05 | |||
A5AC | JR NZ,$A5C7 | |||
A5AE | PUSH HL | |||
A5AF | LD HL,$A3B4 | Guard counter address | ||
A5B2 | DEC (HL) | decrease Guard counter | ||
A5B3 | POP HL | |||
A5B4 | JP NZ,$A6FF | => Draw Guard on tilemap | ||
A5B7 | LD A,$03 | |||
A5B9 | LD ($A3B4),A | set Guard counter value | ||
A5BC | LD (HL),$06 | set Guard state = $06: jump-kick | ||
A5BE | LD HL,$D4DA | Sprite Ninja/Guard jump-kick | ||
A5C1 | LD ($A70F),HL | set Guard sprite | ||
A5C4 | JP $A6FF | => Draw Guard on tilemap | ||
Guard state = $06 ?
|
||||
A5C7 | CP $06 | |||
A5C9 | JR NZ,$A5FC | |||
A5CB | PUSH HL | |||
A5CC | LD HL,$A3B4 | Guard counter address | ||
A5CF | DEC (HL) | decrease Guard counter | ||
A5D0 | POP HL | |||
A5D1 | JP NZ,$A6FF | => Draw Guard on tilemap | ||
A5D4 | LD A,$01 | |||
A5D6 | LD ($A3B4),A | set Guard counter value | ||
A5D9 | LD (HL),$07 | set Guard state = $07: back to standing | ||
A5DB | LD HL,$D4B0 | Sprite Ninja/Guard jumping | ||
A5DE | LD ($A70F),HL | set Guard sprite | ||
A5E1 | LD HL,($71C3) | get Guard position in tilemap | ||
A5E4 | LD DE,$69CD | $69CD = $698C (Tile screen 2) + 65 | ||
A5E7 | LD A,($7347) | get Guard direction | ||
A5EA | CP $01 | right? | ||
A5EC | JR Z,$A5F1 | right => | ||
A5EE | LD DE,$69C8 | $69C8 = $698C (Tile screen 2) + 60 | ||
A5F1 | ADD HL,DE | now HL = address in Ninja tile screen | ||
A5F2 | LD A,(HL) | get tile from Ninja screen | ||
A5F3 | INC A | $FF ? | ||
A5F4 | LD B,$0A | 10 damage | ||
A5F6 | CALL NZ,$FA31 | not $FF => Decrease Energy by 10 + Sound | ||
A5F9 | JP $A6FF | => Draw Guard on tilemap | ||
Guard state = $07 ? - back to standing
|
||||
A5FC | CP $07 | |||
A5FE | JR NZ,$A614 | |||
A600 | PUSH HL | |||
A601 | LD HL,$A3B4 | Guard counter address | ||
A604 | DEC (HL) | decrease Guard counter | ||
A605 | POP HL | |||
A606 | JP NZ,$A6FF | counter not zero => Draw Guard on tilemap | ||
A609 | LD (HL),$03 | set Guard state = walking phase 3 | ||
A60B | LD HL,$D486 | Sprite Ninja/Guard standing | ||
A60E | LD ($A70F),HL | set Guard sprite | ||
A611 | JP $A6FF | => Draw Guard on tilemap | ||
Guard state is none of the above
|
||||
A614 | LD HL,$9C41 | Ninja X address | ||
A617 | LD A,($71C5) | get Guard X | ||
A61A | SUB (HL) | compare to Ninja X | ||
A61B | JR NZ,$A635 | not equal => | ||
A61D | CALL $A418 | |||
A620 | LD HL,$7346 | Guard state address | ||
A623 | LD A,$0A | |||
A625 | CP (HL) | Guard state = $0A ? | ||
A626 | JP Z,$A6FF | Guard state is $0A => Draw Guard on tilemap | ||
A629 | LD A,$04 | |||
A62B | LD (HL),A | set Guard state = $04 | ||
A62C | LD HL,$D486 | Sprite Ninja/Guard standing | ||
A62F | LD ($A70F),HL | set Guard sprite | ||
A632 | JP $A6FF | => Draw Guard on tilemap | ||
Guard X != Ninja X
|
||||
A635 | JR C,$A68C | Guard X < Ninja X => | ||
Ninja X < Guard X
|
||||
A637 | LD B,A | save value "Guard X - Ninja X" | ||
A638 | LD A,($7347) | get Guard direction | ||
A63B | CP $00 | left? | ||
A63D | JR Z,$A65B | left => | ||
A63F | LD A,($7346) | get Guard state | ||
A642 | CP $04 | Guard state = $04 ? | ||
A644 | JR Z,$A654 | |||
A646 | LD A,$04 | |||
A648 | LD ($7346),A | set Guard state = $04 | ||
A64B | LD HL,$D486 | Sprite Ninja/Guard standing | ||
A64E | LD ($A70F),HL | set Guard sprite | ||
A651 | JP $A6FF | => Draw Guard on tilemap | ||
A654 | XOR A | |||
A655 | LD ($7347),A | set Guard direction = left | ||
A658 | JP $A6FF | => Draw Guard on tilemap | ||
A65B | LD A,B | restore value "Guard X - Ninja X" | ||
A65C | CP $03 | 3 | ||
A65E | CALL Z,$A3EE | |||
A661 | CP $01 | 1 | ||
A663 | CALL Z,$A418 | |||
A666 | CP $09 | 9 | ||
A668 | CALL Z,$A3D1 | |||
A66B | CP $0C | 12 | ||
A66D | CALL Z,$A3B5 | |||
A670 | LD A,($7346) | get Guard state | ||
A673 | CP $04 | Guard state = $04 ? | ||
A675 | JR NZ,$A67F | no => | ||
A677 | LD A,$03 | walking phase 3 | ||
A679 | LD ($7346),A | set Guard state | ||
A67C | JP $A6FF | => Draw Guard on tilemap | ||
A67F | LD HL,$71C5 | Guard X address | ||
A682 | DEC (HL) | decrease Guard X - move one tile left | ||
A683 | XOR A | |||
A684 | LD ($7347),A | set Guard direction = left | ||
A687 | LD DE,$FFFF | |||
A68A | JR $A6DE | |||
Guard X < Ninja X
|
||||
A68C | LD B,A | |||
A68D | LD A,($7347) | get Guard direction | ||
A690 | CP $01 | right? | ||
A692 | JR Z,$A6AF | right => | ||
A694 | LD A,($7346) | get Guard state | ||
A697 | CP $04 | Guard state = $04 ? | ||
A699 | JR Z,$A6A8 | |||
A69B | LD A,$04 | |||
A69D | LD ($7346),A | set Guard state = $04 | ||
A6A0 | LD HL,$D486 | Sprite Ninja/Guard standing | ||
A6A3 | LD ($A70F),HL | set Guard sprite | ||
A6A6 | JR $A6FF | => Draw Guard on tilemap | ||
A6A8 | LD A,$01 | |||
A6AA | LD ($7347),A | set Guard direction = right | ||
A6AD | JR $A6FF | => Draw Guard on tilemap | ||
A6AF | LD A,B | |||
A6B0 | CP $FD | -3 | ||
A6B2 | CALL Z,$A3EE | |||
A6B5 | CP $FF | -1 | ||
A6B7 | CALL Z,$A418 | |||
A6BA | CP $F7 | -9 | ||
A6BC | CALL Z,$A3D1 | |||
A6BF | CP $F4 | -12 | ||
A6C1 | CALL Z,$A3B5 | |||
A6C4 | LD A,($7346) | get Guard state | ||
A6C7 | CP $04 | Guard state = $04 ? | ||
A6C9 | JR NZ,$A6D2 | |||
A6CB | LD A,$03 | |||
A6CD | LD ($7346),A | set Guard state = walking phase 3 | ||
A6D0 | JR $A6FF | => Draw Guard on tilemap | ||
A6D2 | LD HL,$71C5 | Guard X address | ||
A6D5 | INC (HL) | increase Guard X - move one tile right | ||
A6D6 | LD A,$01 | |||
A6D8 | LD ($7347),A | set Guard direction = right | ||
A6DB | LD DE,$0001 | |||
A6DE | LD HL,($71C3) | get Guard position in tilemap | ||
A6E1 | ADD HL,DE | |||
A6E2 | LD ($71C3),HL | update Guard position in tilemap | ||
A6E5 | LD A,($7346) | get Guard state | ||
A6E8 | INC A | next walking phase | ||
A6E9 | AND $03 | 0..3 | ||
A6EB | LD ($7346),A | set Guard state | ||
A6EE | ADD A,A | * 2 | ||
A6EF | LD L,A | |||
A6F0 | LD H,$00 | |||
A6F2 | LD DE,$733B | Table of four Ninja/Guard walking sprites | ||
A6F5 | ADD HL,DE | |||
A6F6 | LD DE,$A70F | Guard sprite address | ||
A6F9 | LD A,(HL) | |||
A6FA | LD (DE),A | |||
A6FB | INC HL | |||
A6FC | INC DE | |||
A6FD | LD A,(HL) | |||
A6FE | LD (DE),A | |||
Draw Guard on tilemap
|
||||
A6FF | LD DE,($71C3) | get Guard position in tilemap | ||
A703 | LD A,($7347) | get Guard direction | ||
A706 | CP $00 | left? | ||
A708 | JR NZ,$A728 | right => | ||
A70A | LD HL,$6D8D | Tile screen 4 start address + 5 | ||
A70D | ADD HL,DE | |||
A70E | LD DE,$D432 | !!MUT-ARG!! current Ninja/Guard sprite address | ||
A711 | LD B,$07 | 7 rows | ||
A713 | LD C,$06 | 6 rows | ||
A715 | LD A,(DE) | |||
A716 | CALL $A775 | Translate Ninja tile A into Guard tile | ||
A719 | LD (HL),A | |||
A71A | DEC HL | |||
A71B | INC DE | |||
A71C | DEC C | |||
A71D | JR NZ,$A715 | |||
A71F | PUSH DE | |||
A720 | LD DE,$0024 | 36 | ||
A723 | ADD HL,DE | next row | ||
A724 | POP DE | |||
A725 | DJNZ $A713 | continue loop by rows | ||
A727 | RET | |||
A728 | LD HL,$6D88 | Tile screen 4 start address | ||
A72B | ADD HL,DE | |||
A72C | LD DE,($A70F) | get Guard sprite address | ||
A730 | LD B,$07 | 7 rows | ||
A732 | LD C,$06 | 6 rows | ||
A734 | LD A,(DE) | get tile | ||
A735 | CALL $A775 | Translate Ninja tile A into Guard tile | ||
A738 | LD (HL),A | |||
A739 | INC HL | |||
A73A | INC DE | |||
A73B | DEC C | |||
A73C | JR NZ,$A734 | |||
A73E | PUSH DE | |||
A73F | LD DE,$0018 | 24 | ||
A742 | ADD HL,DE | next row | ||
A743 | POP DE | |||
A744 | DJNZ $A732 | continue loop by rows | ||
A746 | RET |
|
||||
A747 | DEFB $61,$45,$81,$45,$A1,$45,$C1,$45 | |||
A74F | DEFB $E1,$45,$01,$4D,$21,$4D,$41,$4D | |||
A757 | DEFB $61,$4D,$81,$4D |
Used by the routine at A434.
|
||||
A75B | LD DE,($71C3) | get Current Guard position in tilemap | ||
A75F | LD HL,$678E | Tile screen 1 start address | ||
A762 | ADD HL,DE | now HL in update flags tilemap | ||
A763 | LD DE,$0018 | 24 | ||
A766 | LD A,$01 | "need to update" flag | ||
A768 | LD B,$07 | 7 rows | ||
A76A | LD C,$06 | 6 columns | ||
A76C | LD (HL),A | set the flag | ||
A76D | INC HL | next column | ||
A76E | DEC C | |||
A76F | JR NZ,$A76C | continue loop by columns | ||
A771 | ADD HL,DE | next row | ||
A772 | DJNZ $A76A | continue loop by rows | ||
A774 | RET |
Used by the routine at A434.
|
||||
A775 | EXX | |||
A776 | LD HL,$A787 | Translate table address | ||
A779 | LD B,$13 | 19 records | ||
A77B | CP (HL) | found the tile? | ||
A77C | INC HL | |||
A77D | JR NZ,$A782 | |||
A77F | LD A,(HL) | get the new tile | ||
A780 | EXX | |||
A781 | RET | |||
A782 | INC HL | |||
A783 | DJNZ $A77B | continue the loop | ||
A785 | EXX | |||
A786 | RET |
|
||||
A787 | DEFB $50,$C7,$51,$DC,$54,$DD,$EA,$DE | |||
A78F | DEFB $13,$DF,$15,$E0,$16,$E1,$00,$E2 | |||
A797 | DEFB $01,$E3,$03,$E4,$04,$E5,$4D,$E6 | |||
A79F | DEFB $22,$E7,$2F,$E8,$30,$E9,$F4,$E2 | |||
A7A7 | DEFB $F5,$E3,$E4,$E4,$F6,$E5 |
|
||||
A7AD | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | ![]() |
||
A7B5 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A7BD | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A7C5 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A7CD | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A7D5 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A7DD | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A7E5 | DEFB $00,$00,$00,$00,$45,$DD,$54,$5E | |||
A7ED | DEFB $65,$49,$56,$52,$65,$49,$56,$52 | |||
A7F5 | DEFB $55,$49,$D5,$50,$55,$49,$55,$56 | |||
A7FD | DEFB $4D,$49,$54,$D2,$4D,$49,$54,$D2 | |||
A805 | DEFB $45,$C9,$54,$5E,$00,$00,$00,$00 | |||
A80D | DEFB $06,$06,$06,$06,$06,$06,$06,$06 | attributes | ||
A815 | DEFB $06,$06,$06,$06 | |||
A819 | DEFB $00,$00,$00,$00,$00,$00,$80,$00 | ![]() |
||
A821 | DEFB $00,$00,$80,$00,$00,$00,$80,$00 | |||
A829 | DEFB $00,$01,$80,$00,$00,$01,$80,$00 | |||
A831 | DEFB $00,$03,$C0,$00,$00,$7F,$F0,$00 | |||
A839 | DEFB $00,$0F,$FE,$00,$00,$03,$C0,$00 | |||
A841 | DEFB $00,$01,$80,$00,$00,$01,$80,$00 | |||
A849 | DEFB $00,$01,$00,$00,$00,$01,$00,$00 | |||
A851 | DEFB $00,$01,$00,$00,$00,$00,$00,$00 | |||
A859 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A861 | DEFB $75,$56,$55,$D2,$45,$55,$55,$1A | |||
A869 | DEFB $77,$56,$59,$9E,$15,$55,$55,$16 | |||
A871 | DEFB $75,$25,$55,$D2,$00,$00,$00,$00 | |||
A879 | DEFB $0E,$0D,$4F,$0E,$0E,$4D,$0F,$4F | attributes | ||
A881 | DEFB $06,$06,$06,$06 | |||
A885 | DEFB $00,$00,$00,$0C,$00,$00,$00,$7C | ![]() |
||
A88D | DEFB $00,$00,$07,$D8,$00,$00,$0F,$B8 | |||
A895 | DEFB $00,$00,$1F,$B0,$00,$00,$7F,$60 | |||
A89D | DEFB $00,$00,$FE,$C0,$00,$01,$F9,$80 | |||
A8A5 | DEFB $00,$07,$CF,$00,$00,$0F,$BE,$00 | |||
A8AD | DEFB $00,$BE,$78,$00,$00,$BD,$E0,$00 | |||
A8B5 | DEFB $03,$5F,$80,$00,$0F,$AC,$00,$00 | |||
A8BD | DEFB $1F,$50,$00,$00,$DF,$48,$00,$00 | |||
A8C5 | DEFB $EF,$84,$00,$00,$6F,$04,$00,$00 | |||
A8CD | DEFB $74,$00,$00,$00,$38,$00,$00,$00 | |||
A8D5 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A8DD | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A8E5 | DEFB $0A,$0F,$0F,$4F,$0A,$0F,$4F,$4F | attributes | ||
A8ED | DEFB $0A,$0A,$0A,$0A | |||
A8F1 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | ![]() |
||
A8F9 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A901 | DEFB $00,$00,$70,$00,$00,$00,$FC,$00 | |||
A909 | DEFB $00,$01,$3E,$00,$00,$71,$3F,$00 | |||
A911 | DEFB $00,$FE,$3F,$C0,$00,$BF,$1F,$E0 | |||
A919 | DEFB $01,$3F,$9F,$F0,$01,$3F,$DF,$F0 | |||
A921 | DEFB $01,$1F,$FF,$F0,$00,$9F,$FC,$F0 | |||
A929 | DEFB $00,$8F,$F9,$F8,$00,$47,$F3,$F8 | |||
A931 | DEFB $00,$31,$F3,$F0,$01,$88,$7F,$E0 | |||
A939 | DEFB $01,$C7,$C3,$C0,$00,$00,$00,$06 | |||
A941 | DEFB $18,$04,$00,$00,$00,$00,$00,$00 | |||
A949 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A951 | DEFB $0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E | attributes | ||
A959 | DEFB $0E,$0E,$0E,$0E | |||
A95D | DEFB $00,$00,$3E,$00,$00,$00,$F5,$C0 | ![]() |
||
A965 | DEFB $00,$03,$FA,$B8,$00,$0F,$F5,$56 | |||
A96D | DEFB $00,$3F,$FB,$AF,$00,$FF,$FE,$FF | |||
A975 | DEFB $03,$FF,$F5,$6B,$0F,$FF,$EA,$D5 | |||
A97D | DEFB $3F,$FF,$57,$AB,$EA,$FE,$AD,$55 | |||
A985 | DEFB $BD,$55,$7A,$AB,$D7,$BA,$F5,$55 | |||
A98D | DEFB $AA,$EF,$AA,$AB,$D5,$5F,$55,$56 | |||
A995 | DEFB $AA,$AA,$AA,$BE,$D5,$57,$55,$78 | |||
A99D | DEFB $AA,$AA,$AA,$E0,$D5,$57,$57,$80 | |||
A9A5 | DEFB $6A,$AA,$AE,$00,$1D,$57,$78,$00 | |||
A9AD | DEFB $03,$AB,$E0,$00,$00,$77,$80,$00 | |||
A9B5 | DEFB $00,$0C,$00,$00,$00,$00,$00,$00 | |||
A9BD | DEFB $02,$02,$02,$02,$02,$02,$02,$02 | attributes | ||
A9C5 | DEFB $02,$02,$02,$02 | |||
A9C9 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | ![]() |
||
A9D1 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A9D9 | DEFB $7F,$FF,$FF,$FE,$60,$00,$00,$02 | |||
A9E1 | DEFB $71,$3E,$07,$CA,$7F,$FF,$FF,$FA | |||
A9E9 | DEFB $7F,$FF,$FF,$F2,$7F,$FF,$FF,$FE | |||
A9F1 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
A9F9 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
AA01 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
AA09 | DEFB $00,$00,$00,$00,$3F,$3E,$7C,$FC | |||
AA11 | DEFB $21,$08,$44,$80,$21,$08,$44,$FC | |||
AA19 | DEFB $3F,$08,$7C,$80,$20,$08,$40,$80 | |||
AA21 | DEFB $20,$3E,$40,$FC,$00,$00,$00,$00 | |||
AA29 | DEFB $4F,$4F,$4F,$4F,$4D,$4D,$4D,$4D | attributes | ||
AA31 | DEFB $06,$06,$06,$06 | |||
AA35 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | ![]() |
||
AA3D | DEFB $00,$00,$00,$E0,$00,$00,$39,$B0 | |||
AA45 | DEFB $00,$00,$0D,$18,$00,$0F,$F6,$18 | |||
AA4D | DEFB $00,$7E,$7B,$70,$00,$CF,$9D,$A0 | |||
AA55 | DEFB $01,$F2,$6D,$C0,$03,$FD,$F6,$C0 | |||
AA5D | DEFB $07,$72,$F6,$C0,$0F,$6F,$6A,$C0 | |||
AA65 | DEFB $0F,$5F,$AA,$C0,$1B,$BF,$BE,$C0 | |||
AA6D | DEFB $1B,$5F,$DC,$C0,$3A,$EF,$DC,$C0 | |||
AA75 | DEFB $3D,$F7,$AC,$C0,$3D,$FB,$69,$C0 | |||
AA7D | DEFB $16,$FD,$F9,$80,$1F,$62,$71,$80 | |||
AA85 | DEFB $0C,$9F,$E3,$00,$0F,$E7,$C7,$00 | |||
AA8D | DEFB $03,$FF,$8E,$00,$00,$FE,$00,$00 | |||
AA95 | DEFB $0C,$0C,$0C,$0C,$0C,$04,$04,$0C | attributes | ||
AA9D | DEFB $0C,$04,$0C,$0C | |||
AAA1 | DEFB $00,$00,$00,$00,$01,$FF,$FF,$F8 | ![]() |
||
AAA9 | DEFB $01,$FF,$FF,$F8,$01,$FF,$FF,$F8 | |||
AAB1 | DEFB $01,$FF,$FF,$F8,$01,$FF,$FF,$F8 | |||
AAB9 | DEFB $01,$FF,$FF,$F8,$01,$FF,$FF,$F8 | |||
AAC1 | DEFB $01,$FF,$0C,$F8,$01,$FE,$F7,$F8 | |||
AAC9 | DEFB $01,$FD,$FB,$F8,$01,$85,$FB,$F8 | |||
AAD1 | DEFB $01,$85,$FB,$F8,$01,$FD,$FB,$F8 | |||
AAD9 | DEFB $01,$FE,$F7,$F8,$01,$FF,$0F,$F8 | |||
AAE1 | DEFB $00,$00,$00,$00,$0F,$84,$FC,$84 | |||
AAE9 | DEFB $08,$44,$8C,$84,$08,$44,$80,$84 | |||
AAF1 | DEFB $08,$CC,$FC,$FC,$08,$CC,$0C,$98 | |||
AAF9 | DEFB $08,$CC,$8C,$98,$0F,$8C,$FC,$98 | |||
AB01 | DEFB $0C,$08,$08,$08,$0A,$38,$38,$08 | attributes | ||
AB09 | DEFB $46,$46,$46,$46 | |||
AB0D | DEFB $00,$00,$00,$00,$00,$06,$80,$00 | ![]() |
||
AB15 | DEFB $00,$89,$40,$00,$01,$68,$20,$00 | |||
AB1D | DEFB $02,$10,$33,$00,$07,$77,$00,$00 | |||
AB25 | DEFB $07,$77,$FF,$C0,$07,$77,$FF,$C0 | |||
AB2D | DEFB $07,$77,$DD,$C0,$07,$77,$AA,$D0 | |||
AB35 | DEFB $07,$77,$AA,$D0,$07,$77,$AA,$D0 | |||
AB3D | DEFB $07,$77,$DD,$D0,$07,$77,$FF,$C0 | |||
AB45 | DEFB $07,$77,$FF,$C0,$07,$77,$FF,$C0 | |||
AB4D | DEFB $00,$00,$00,$00,$0F,$1C,$8B,$C0 | |||
AB55 | DEFB $08,$A2,$DA,$20,$0F,$22,$AB,$C0 | |||
AB5D | DEFB $08,$A2,$8A,$20,$08,$A2,$8A,$20 | |||
AB65 | DEFB $0F,$1C,$8B,$C0,$00,$00,$00,$00 | |||
AB6D | DEFB $0A,$0A,$08,$08,$0A,$02,$38,$08 | attributes | ||
AB75 | DEFB $06,$06,$06,$06 | |||
AB79 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | ![]() |
||
AB81 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
AB89 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
AB91 | DEFB $00,$03,$03,$40,$00,$03,$23,$40 | |||
AB99 | DEFB $00,$0F,$FF,$E0,$00,$0C,$00,$60 | |||
ABA1 | DEFB $00,$0D,$FF,$FC,$01,$FA,$00,$0C | |||
ABA9 | DEFB $0F,$83,$FF,$EC,$0C,$7F,$E0,$2C | |||
ABB1 | DEFB $0C,$FF,$FF,$CC,$0F,$FC,$81,$3C | |||
ABB9 | DEFB $00,$00,$FF,$00,$00,$00,$FD,$00 | |||
ABC1 | DEFB $00,$00,$FD,$00,$00,$00,$FD,$00 | |||
ABC9 | DEFB $00,$00,$FD,$00,$00,$00,$FD,$00 | |||
ABD1 | DEFB $00,$00,$FD,$00,$00,$00,$FF,$00 | |||
ABD9 | DEFB $07,$46,$42,$44,$45,$45,$4D,$45 | attributes | ||
ABE1 | DEFB $07,$07,$0D,$07 |
|
||||
ABE5 | DEFB $04,$66,$06,$03,$4B,$E3,$C3,$43 | ![]() |
||
ABED | DEFB $48,$08,$18,$18,$39,$BB,$FF,$FF | |||
ABF5 | DEFB $01,$04,$60,$C0,$86,$1C,$F8,$F1 | |||
ABFD | DEFB $03,$7F,$1F,$03,$43,$C7,$0F,$AF | |||
AC05 | DEFB $88,$01,$81,$01,$65,$E7,$EF,$E0 | |||
AC0D | DEFB $E0,$C8,$82,$86,$84,$C4,$E1,$F0 | |||
AC15 | DEFB $0F,$9E,$BC,$30,$61,$C3,$83,$10 | |||
AC1D | DEFB $7D,$38,$38,$30,$10,$11,$10,$50 | |||
AC25 | DEFB $F1,$F9,$38,$1C,$06,$03,$10,$41 |
|
||||
AC2D | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
AC35 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
AC3D | DEFB $00,$00,$00,$00,$00,$00,$00 |
Used by the routine at B5C7.
|
||||
AC44 | LD HL,$AC72 | address for Table of Guard data addresses | ||
AC47 | LD B,$18 | 24 | ||
AC49 | LD E,(HL) | |||
AC4A | INC HL | |||
AC4B | LD D,(HL) | now DE = Guard data address | ||
AC4C | INC HL | |||
AC4D | PUSH HL | |||
AC4E | LD HL,$0004 | |||
AC51 | ADD HL,DE | |||
AC52 | LD (HL),$0A | set initial Guard energy = 10 | ||
AC54 | POP HL | |||
AC55 | DJNZ $AC49 | |||
AC57 | LD HL,$ACA2 | address for Table of Dog data addresses | ||
AC5A | LD B,$14 | 20 | ||
AC5C | LD E,(HL) | |||
AC5D | INC HL | |||
AC5E | LD D,(HL) | |||
AC5F | INC HL | |||
AC60 | PUSH HL | |||
AC61 | LD HL,$0004 | |||
AC64 | ADD HL,DE | |||
AC65 | LD A,$41 | |||
AC67 | CP (HL) | |||
AC68 | JR NC,$AC6E | |||
AC6A | LD A,(HL) | |||
AC6B | SUB $42 | |||
AC6D | LD (HL),A | |||
AC6E | POP HL | |||
AC6F | DJNZ $AC5C | |||
AC71 | RET |
|
||||
AC72 | DEFW $A26B,$A265,$A25F,$A259 | |||
AC7A | DEFW $A253,$A217,$A24D,$A247 | |||
AC82 | DEFW $A241,$A23B,$A235,$A22F | |||
AC8A | DEFW $A229,$A223,$A21D,$A211 | |||
AC92 | DEFW $A20B,$A205,$A1FF,$A1F9 | |||
AC9A | DEFW $A1F3,$A1ED,$A1E7,$A1E1 |
|
||||
ACA2 | DEFW $A31B,$A311,$A307,$A2FD | |||
ACAA | DEFW $A2F3,$A2DF,$A2D5,$A2CB | |||
ACB2 | DEFW $A2C1,$A2B7,$A2A3,$A285 | |||
ACBA | DEFW $A325,$A2AD,$A28F,$A27B | |||
ACC2 | DEFW $A271,$A2E9,$A299,$71D6 |
Used by the routine at B5C7.
|
||||
ACCA | EXX | |||
ACCB | LD DE,$5800 | |||
ACCE | EXX | |||
ACCF | LD HL,$4000 | Screen start address | ||
ACD2 | LD DE,$AD65 | Game screen frames/indicators RLE encoded sequence | ||
ACD5 | LD A,(DE) | |||
ACD6 | PUSH DE | |||
ACD7 | LD C,$01 | |||
ACD9 | CP $FF | |||
ACDB | JR Z,$AD1D | |||
ACDD | CP $17 | |||
ACDF | JR C,$ACE8 | |||
ACE1 | SUB $14 | |||
ACE3 | LD C,A | |||
ACE4 | POP DE | |||
ACE5 | INC DE | |||
ACE6 | LD A,(DE) | |||
ACE7 | PUSH DE | |||
ACE8 | PUSH HL | |||
ACE9 | LD H,$00 | |||
ACEB | LD L,A | |||
ACEC | PUSH HL | |||
ACED | POP DE | |||
ACEE | ADD HL,HL | |||
ACEF | ADD HL,HL | |||
ACF0 | ADD HL,HL | * 8 | ||
ACF1 | ADD HL,DE | * 9 | ||
ACF2 | LD DE,$AE02 | Indicator tiles address | ||
ACF5 | ADD HL,DE | |||
ACF6 | POP DE | |||
ACF7 | LD B,$08 | |||
ACF9 | PUSH HL | |||
ACFA | PUSH DE | |||
ACFB | LD A,(HL) | |||
ACFC | LD (DE),A | |||
ACFD | INC HL | |||
ACFE | INC D | |||
ACFF | DJNZ $ACFB | |||
AD01 | LD A,(HL) | |||
AD02 | EXX | |||
AD03 | LD (DE),A | |||
AD04 | INC DE | |||
AD05 | EXX | |||
AD06 | POP DE | |||
AD07 | POP HL | |||
AD08 | RR D | |||
AD0A | RR D | |||
AD0C | RR D | |||
AD0E | INC DE | |||
AD0F | RL D | |||
AD11 | RL D | |||
AD13 | RL D | |||
AD15 | DEC C | |||
AD16 | JR NZ,$ACF7 | |||
AD18 | EX DE,HL | |||
AD19 | POP DE | |||
AD1A | INC DE | |||
AD1B | JR $ACD5 | |||
AD1D | POP DE | |||
AD1E | LD DE,$5067 | |||
AD21 | LD HL,$AD4A | Indicator messages address | ||
AD24 | LD C,$0D | |||
AD26 | CALL $AED1 | Print string "PAY : $ XXXXX" | ||
AD29 | LD DE,$5097 | |||
AD2C | LD C,$02 | |||
AD2E | CALL $AED1 | Print string "99" | ||
AD31 | LD DE,$50C1 | |||
AD34 | LD C,$04 | |||
AD36 | CALL $AED1 | Print string "HELD" | ||
AD39 | LD DE,$50D6 | |||
AD3C | LD C,$04 | |||
AD3E | CALL $AED1 | Print string "TIME" | ||
AD41 | LD DE,$50DB | |||
AD44 | LD C,$04 | |||
AD46 | CALL $AED1 | Print string "NEAR" | ||
AD49 | RET |
|
||||
AD4A | DEFM "PAY : $ " | |||
AD52 | DEFM "00000" | Pay value text | ||
AD57 | DEFM "99" | Indicator time value | ||
AD59 | DEFM "HELDTIMENEAR" |
|
||||
AD65 | DEFB $00,$32,$01,$02,$03,$32,$0B,$04 | ![]() |
||
AD6D | DEFB $03,$32,$0B,$04,$03,$32,$0B,$04 | |||
AD75 | DEFB $03,$32,$0B,$04,$03,$32,$0B,$04 | |||
AD7D | DEFB $03,$32,$0B,$04,$03,$32,$0B,$04 | |||
AD85 | DEFB $03,$32,$0B,$04,$03,$32,$0B,$04 | |||
AD8D | DEFB $03,$32,$0B,$04,$03,$32,$0B,$04 | |||
AD95 | DEFB $03,$32,$0B,$04,$03,$32,$0B,$04 | |||
AD9D | DEFB $03,$32,$0B,$04,$03,$32,$0B,$04 | |||
ADA5 | DEFB $03,$32,$0B,$04,$03,$32,$0B,$04 | |||
ADAD | DEFB $05,$18,$06,$07,$23,$06,$07,$18 | |||
ADB5 | DEFB $06,$07,$18,$06,$08,$03,$18,$0B | |||
ADBD | DEFB $03,$23,$0B,$03,$0E,$0F,$0F,$10 | |||
ADC5 | DEFB $03,$18,$0B,$04,$03,$18,$0B,$05 | |||
ADCD | DEFB $23,$06,$08,$11,$0B,$0B,$12,$03 | |||
ADD5 | DEFB $18,$0B,$04,$03,$18,$0B,$03,$23 | |||
ADDD | DEFB $16,$03,$13,$14,$14,$15,$03,$18 | |||
ADE5 | DEFB $0B,$04,$03,$18,$09,$03,$23,$16 | |||
ADED | DEFB $03,$18,$09,$03,$18,$09,$04,$0A | |||
ADF5 | DEFB $18,$06,$0C,$23,$06,$0C,$18,$06 | |||
ADFD | DEFB $0C,$18,$06,$0D,$FF |
|
||||
AE02 | DEFB $30,$08,$04,$05,$02,$8D,$70,$1C,$02 | ![]() |
||
AE0B | DEFB $22,$22,$14,$E7,$3C,$24,$44,$00,$02 | |||
AE14 | DEFB $00,$10,$21,$22,$A4,$64,$A8,$30,$02 | |||
AE1D | DEFB $10,$50,$3C,$08,$08,$6A,$9C,$08,$02 | |||
AE26 | DEFB $10,$48,$39,$0E,$08,$78,$17,$10,$02 | |||
AE2F | DEFB $0A,$9C,$68,$04,$03,$4C,$38,$14,$02 | |||
AE38 | DEFB $00,$11,$22,$62,$BF,$44,$44,$42,$02 | |||
AE41 | DEFB $00,$24,$22,$22,$A7,$66,$5A,$89,$02 | |||
AE4A | DEFB $10,$78,$27,$20,$C0,$2E,$70,$10,$02 | |||
AE53 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$06 | |||
AE5C | DEFB $08,$0E,$08,$36,$43,$02,$04,$18,$02 | |||
AE65 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$0F | |||
AE6E | DEFB $50,$72,$54,$CE,$25,$28,$28,$08,$02 | |||
AE77 | DEFB $10,$3C,$92,$61,$A0,$18,$04,$04,$02 | |||
AE80 | DEFB $7F,$80,$80,$87,$88,$88,$88,$88,$0F | |||
AE89 | DEFB $FF,$00,$00,$FF,$00,$00,$00,$00,$0F | |||
AE92 | DEFB $FE,$01,$01,$E1,$11,$11,$11,$11,$0F | |||
AE9B | DEFB $88,$88,$88,$88,$88,$88,$88,$88,$0F | |||
AEA4 | DEFB $11,$11,$11,$11,$11,$11,$11,$11,$0F | |||
AEAD | DEFB $88,$88,$88,$88,$87,$80,$80,$7F,$0F | |||
AEB6 | DEFB $00,$00,$00,$00,$FF,$00,$00,$FF,$0F | |||
AEBF | DEFB $11,$11,$11,$11,$E1,$01,$01,$FE,$0F | |||
AEC8 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$0A |
|
||||||||||||
AED1 | LD A,(HL) | |||||||||||
AED2 | PUSH HL | |||||||||||
AED3 | LD H,$00 | |||||||||||
AED5 | LD L,A | |||||||||||
AED6 | ADD HL,HL | |||||||||||
AED7 | ADD HL,HL | |||||||||||
AED8 | ADD HL,HL | * 8 | ||||||||||
AED9 | PUSH DE | |||||||||||
AEDA | LD DE,$3C00 | |||||||||||
AEDD | ADD HL,DE | |||||||||||
AEDE | POP DE | |||||||||||
AEDF | PUSH DE | |||||||||||
AEE0 | LD B,$08 | |||||||||||
AEE2 | LD A,(HL) | |||||||||||
AEE3 | LD (DE),A | |||||||||||
AEE4 | INC HL | |||||||||||
AEE5 | INC D | |||||||||||
AEE6 | DJNZ $AEE2 | |||||||||||
AEE8 | POP DE | |||||||||||
AEE9 | POP HL | |||||||||||
AEEA | INC DE | |||||||||||
AEEB | INC HL | |||||||||||
AEEC | DEC C | |||||||||||
AEED | JR NZ,$AED1 | |||||||||||
AEEF | RET |
Used by the routine at BC0D.
|
||||
AEF0 | LD HL,$5800 | attributes screen address | ||
AEF3 | LD C,$10 | |||
AEF5 | LD B,$0C | |||
AEF7 | LD (HL),$08 | |||
AEF9 | INC HL | |||
AEFA | DJNZ $AEF7 | |||
AEFC | LD B,$14 | |||
AEFE | LD (HL),$0E | |||
AF00 | INC HL | |||
AF01 | DJNZ $AEFE | |||
AF03 | DEC C | |||
AF04 | JR NZ,$AEF5 | |||
AF06 | LD B,$00 | |||
AF08 | LD (HL),$20 | |||
AF0A | INC HL | |||
AF0B | DJNZ $AF08 | |||
AF0D | LD HL,$B066 | |||
AF10 | LD B,$01 | |||
AF12 | PUSH HL | |||
AF13 | LD DE,$AD52 | Pay value text address | ||
AF16 | LD C,$01 | |||
AF18 | LD A,(DE) | |||
AF19 | SUB (HL) | |||
AF1A | JR Z,$AF22 | |||
AF1C | JP P,$AF38 | |||
AF1F | JP $AF2A | |||
AF22 | INC C | |||
AF23 | INC HL | |||
AF24 | INC DE | |||
AF25 | LD A,C | |||
AF26 | CP $04 | |||
AF28 | JR NZ,$AF18 | |||
AF2A | INC B | |||
AF2B | POP HL | |||
AF2C | LD DE,$000D | |||
AF2F | ADD HL,DE | |||
AF30 | LD A,B | |||
AF31 | CP $0B | |||
AF33 | JR NZ,$AF12 | |||
AF35 | JP $B005 | => Print table of records | ||
AF38 | PUSH BC | |||
AF39 | LD DE,$402C | |||
AF3C | LD HL,$B0F2 | |||
AF3F | LD C,$0F | |||
AF41 | CALL $AED1 | Print string "EXCELLENT WORK." | ||
AF44 | LD DE,$408C | |||
AF47 | LD C,$0E | |||
AF49 | CALL $AED1 | Print string "YOU ARE ONE OF" | ||
AF4C | LD DE,$40AC | |||
AF4F | LD C,$0D | |||
AF51 | CALL $AED1 | Print string " OUR TEN BEST" | ||
AF54 | LD DE,$40CC | |||
AF57 | LD C,$10 | |||
AF59 | CALL $AED1 | Print string "NINJA SABOTEURS." | ||
AF5C | LD DE,$480C | |||
AF5F | LD C,$11 | |||
AF61 | CALL $AED1 | Print string "ENTER YOUR NAME..." | ||
AF64 | POP BC | |||
AF65 | LD C,$0A | |||
AF67 | PUSH BC | |||
AF68 | LD DE,$484D | screen address | ||
AF6B | LD HL,$B0E8 | address of string 10 spaces | ||
AF6E | CALL $AED1 | Print string | ||
AF71 | LD B,$01 | |||
AF73 | EXX | |||
AF74 | LD DE,$594D | |||
AF77 | EXX | |||
AF78 | LD DE,$484D | |||
AF7B | LD HL,$B0E8 | address of string 10 spaces | ||
This entry point is used by the routine at AF9C.
|
||||
AF7E | PUSH BC | |||
AF7F | EXX | |||
AF80 | LD A,$E3 | |||
AF82 | LD (DE),A | |||
AF83 | EXX | |||
This entry point is used by the routine at AF9C.
|
||||
AF84 | XOR A | |||
AF85 | LD ($5C08),A | clear LASTK | ||
AF88 | RST $38 | |||
AF89 | LD A,($5C08) | get LASTK | ||
AF8C | CP $5B | |||
AF8E | JP M,$AF93 | |||
AF91 | SUB $20 | |||
AF93 | CP $20 | |||
AF95 | JR Z,$AFAA | |||
AF97 | CP $0C | |||
AF99 | JP $F968 |
Used by the routine at F913.
|
||||
AF9C | CP $0D | |||
AF9E | JR Z,$AFCD | |||
AFA0 | CP $41 | |||
AFA2 | JP M,$AF84 | |||
AFA5 | CP $5C | |||
AFA7 | JP P,$AF84 | |||
This entry point is used by the routine at AEF0.
|
||||
AFAA | LD (HL),A | |||
AFAB | LD C,$01 | |||
AFAD | CALL $AED1 | Print string | ||
AFB0 | EXX | |||
AFB1 | LD A,$0E | |||
AFB3 | LD (DE),A | |||
AFB4 | INC DE | |||
AFB5 | EXX | |||
AFB6 | POP BC | |||
AFB7 | INC B | |||
AFB8 | LD A,B | |||
AFB9 | CP $0B | |||
AFBB | JR Z,$AFD3 | |||
AFBD | PUSH BC | |||
This entry point is used by the routine at B040.
|
||||
AFBE | PUSH DE | |||
AFBF | PUSH HL | |||
AFC0 | CALL $028E | KEY-SCAN | ||
AFC3 | INC DE | |||
AFC4 | LD A,D | |||
AFC5 | OR E | |||
AFC6 | JR NZ,$AFC0 | |||
AFC8 | POP HL | |||
AFC9 | POP DE | |||
AFCA | POP BC | |||
AFCB | JR $AF7E | |||
AFCD | POP BC | |||
AFCE | EXX | |||
AFCF | LD A,$0E | |||
AFD1 | LD (DE),A | |||
AFD2 | EXX | |||
AFD3 | POP BC | |||
AFD4 | LD A,$0A | |||
AFD6 | SUB B | |||
AFD7 | JR Z,$AFEC | |||
AFD9 | LD B,A | |||
AFDA | LD HL,$B0E7 | |||
AFDD | LD DE,$B0DA | |||
AFE0 | LD C,$0D | |||
AFE2 | LD A,(DE) | |||
AFE3 | LD (HL),A | |||
AFE4 | DEC HL | |||
AFE5 | DEC DE | |||
AFE6 | DEC C | |||
AFE7 | JR NZ,$AFE2 | |||
AFE9 | DEC B | |||
AFEA | JR NZ,$AFE0 | |||
AFEC | POP HL | |||
AFED | LD DE,$AD52 | Pay value text address | ||
AFF0 | LD C,$03 | |||
AFF2 | LD A,(DE) | |||
AFF3 | LD (HL),A | |||
AFF4 | INC HL | |||
AFF5 | INC DE | |||
AFF6 | DEC C | |||
AFF7 | JR NZ,$AFF2 | |||
AFF9 | LD DE,$B0E8 | address of string 10 spaces | ||
AFFC | LD C,$0A | |||
AFFE | LD A,(DE) | |||
AFFF | LD (HL),A | |||
B000 | INC HL | |||
B001 | INC DE | |||
B002 | DEC C | |||
B003 | JR NZ,$AFFE |
Used by the routine at AEF0.
|
||||
B005 | LD B,$0A | |||
B007 | LD HL,$B066 | |||
B00A | LD DE,$402C | |||
B00D | PUSH BC | |||
B00E | PUSH HL | |||
B00F | LD HL,$B065 | |||
B012 | LD C,$01 | |||
B014 | CALL $AED1 | Print string | ||
B017 | POP HL | |||
B018 | LD C,$03 | |||
B01A | CALL $AED1 | Print string | ||
B01D | PUSH HL | |||
B01E | LD HL,$B061 | |||
B021 | LD C,$04 | |||
B023 | CALL $AED1 | Print string | ||
B026 | POP HL | |||
B027 | LD C,$0A | |||
B029 | CALL $AED1 | Print string | ||
B02C | EX DE,HL | |||
B02D | PUSH DE | |||
B02E | LD DE,$000E | +14 | ||
B031 | ADD HL,DE | |||
B032 | POP DE | |||
B033 | EX DE,HL | |||
B034 | POP BC | |||
B035 | LD A,B | |||
B036 | CP $04 | |||
B038 | JR NZ,$B03D | |||
B03A | LD DE,$480C | |||
B03D | DJNZ $B00D | |||
B03F | RET |
Used by the routine at F913.
|
||||
B040 | POP BC | |||
B041 | LD A,B | |||
B042 | CP $01 | |||
B044 | JR Z,$B05D | |||
B046 | DEC B | |||
B047 | PUSH BC | |||
B048 | LD A,$20 | |||
B04A | LD (HL),A | |||
B04B | LD C,$01 | |||
B04D | CALL $AED1 | Print string | ||
B050 | DEC HL | |||
B051 | DEC HL | |||
B052 | DEC DE | |||
B053 | DEC DE | |||
B054 | EXX | |||
B055 | LD A,$0E | |||
B057 | LD (DE),A | |||
B058 | DEC DE | |||
B059 | EXX | |||
B05A | JP $AFBE | |||
B05D | PUSH BC | |||
B05E | JP $AFBE |
|
||||
B061 | DEFM "00 $" |
|
||||
B066 | DEFM "020 THE CAT " | |||
B073 | DEFM "018JOOLZ " | |||
B080 | DEFM "016MICKY " | |||
B08D | DEFM "014DAVE " | |||
B09A | DEFM "012GEOFF P " | |||
B0A7 | DEFM "010SHARFACE " | |||
B0B4 | DEFM "008HOLLY " | |||
B0C1 | DEFM "006BRAD " | |||
B0CE | DEFM "004TOZZY " | |||
B0DB | DEFM "002MAT LE FAT" |
|
||||
B0E8 | DEFM " " |
|
||||
B0F2 | DEFM "EXCELLENT WORK." | |||
B101 | DEFM "YOU ARE ONE OF" | |||
B10F | DEFM " OUR TEN BEST" | |||
B11C | DEFM "NINJA SABOTEURS." | |||
B12C | DEFM "ENTER YOUR NAME..." |
|
||||
B13E | DEFB $FE,$82,$A2,$00,$FE,$FF,$FF,$7E | Pixel bytes | ||
B146 | DEFB $32 | Attribute byte | ||
B147 | DEFB $30 | Background attribute byte |
B148 | LD HL,$5821 | Screen attributes address | ||
B14B | LD B,$11 | 17 rows | ||
B14D | LD ($7233),HL | |||
B150 | LD HL,$6F86 | Tile screen 5 start address | ||
B153 | LD ($7235),HL | |||
B156 | LD HL,$6D88 | Tile screen 4 start address | ||
B159 | LD ($7237),HL | |||
B15C | LD HL,$678E | Tile screen 1 start address | ||
B15F | LD DE,$4021 | screen address where game screen starts | ||
B162 | EXX | |||
B163 | LD HL,$6590 | Tile screen 0 start address | ||
B166 | LD DE,$698C | Tile screen 2 start address | ||
B169 | LD BC,$6B8A | Tile screen 3 start address | ||
B16C | EXX | |||
Loop start
|
||||
B16D | LD C,$1E | 30 column | ||
B16F | XOR A | |||
B170 | CP (HL) | Check "need update" flag in Tile screen 1 | ||
B171 | JP Z,$B2A9 | zero => Skip this tile rendering | ||
B174 | PUSH HL | |||
B175 | PUSH BC | |||
B176 | PUSH DE | |||
Process Tile screen 0 - background tile
|
||||
B177 | EXX | |||
B178 | LD A,(HL) | get byte from Tile screen 0 tile | ||
B179 | EXX | |||
B17A | LD HL,$B1A3 | for non-$FF, don't skip Ninja tile processing | ||
B17D | CP $FF | $FF - "earth" background? | ||
B17F | JR NZ,$B184 | byte <> $FF => | ||
B181 | LD HL,$B1F9 | for $FF, skip Ninja tile processing | ||
B184 | LD ($B1A1),HL | save the chosen jump address ($B1A3 or $B1F9) | ||
B187 | LD H,$00 | |||
B189 | LD L,A | |||
B18A | PUSH HL | |||
B18B | ADD HL,HL | |||
B18C | ADD HL,HL | |||
B18D | ADD HL,HL | |||
B18E | POP DE | |||
B18F | ADD HL,DE | * 9 | ||
B190 | LD DE,$F700 | Background tiles start address | ||
B193 | ADD HL,DE | now HL = tile data address | ||
B194 | LD DE,$B13E | Tile buffer address | ||
B197 | LD B,$09 | 8 pixel bytes + attribute byte | ||
B199 | LD A,(HL) | get byte from tile data | ||
B19A | LD (DE),A | store the byte to tile buffer | ||
B19B | INC HL | move to next byte in tile data | ||
B19C | INC DE | move to next byte in tile buffer | ||
B19D | DJNZ $B199 | loop for 9 bytes | ||
B19F | LD (DE),A | save attribute byte once more | ||
B1A0 | JP $B1A3 | !!MUT-ARG!! $B1A3 or $B1F9 | ||
Process Tile screen 2 tile - Ninja
|
||||
B1A3 | EXX | |||
B1A4 | LD A,(DE) | get tile from Tile Screen 2 tile | ||
B1A5 | EXX | |||
B1A6 | CP $FF | $FF - transparent? | ||
B1A8 | JR Z,$B1F9 | $FF => skip Ninja tile drawing | ||
B1AA | LD L,A | |||
B1AB | CP $C8 | |||
B1AD | JR C,$B1D5 | |||
B1AF | CP $F4 | |||
B1B1 | JR NC,$B1D5 | |||
B1B3 | LD H,$02 | |||
B1B5 | CP $DA | |||
B1B7 | JR NC,$B1CC | |||
B1B9 | LD H,$05 | |||
B1BB | CP $D8 | |||
B1BD | JR NC,$B1CC | |||
B1BF | LD H,$07 | |||
B1C1 | LD A,($B146) | get attribute byte from the tile buffer | ||
B1C4 | AND $38 | |||
B1C6 | CP $20 | |||
B1C8 | JR C,$B1CC | |||
B1CA | LD H,$01 | |||
B1CC | LD A,($B146) | get attribute byte from the tile buffer | ||
B1CF | AND $F8 | |||
B1D1 | OR H | |||
B1D2 | LD ($B146),A | set attribute byte | ||
B1D5 | LD H,$00 | |||
B1D7 | ADD HL,HL | |||
B1D8 | ADD HL,HL | |||
B1D9 | ADD HL,HL | |||
B1DA | ADD HL,HL | * 16 | ||
B1DB | LD DE,$E700 | Ninja tiles base address | ||
B1DE | ADD HL,DE | now HL = tile data address | ||
B1DF | LD B,$08 | 8 bytes | ||
B1E1 | LD DE,$B13E | Tile buffer address | ||
B1E4 | INC HL | |||
B1E5 | LD A,(DE) | get byte from tile buffer | ||
B1E6 | LD C,A | |||
B1E7 | LD A,(HL) | get byte from tile data (mask) | ||
B1E8 | CALL $B2E8 | Mirror byte if needed | ||
B1EB | AND C | AND with byte from the buffer - apply the mask | ||
B1EC | LD C,A | |||
B1ED | DEC HL | |||
B1EE | LD A,(HL) | get byte from tile data (pixels) | ||
B1EF | CALL $B2E8 | Mirror byte if needed | ||
B1F2 | OR C | OR with the byte from buffer - apply pixels | ||
B1F3 | INC HL | |||
B1F4 | INC HL | |||
B1F5 | LD (DE),A | |||
B1F6 | INC DE | |||
B1F7 | DJNZ $B1E4 | loop for all 8 bytes | ||
B1F9 | JP $B1FC | |||
Process Tile screen 3 tile - Dog
|
||||
B1FC | EXX | |||
B1FD | PUSH BC | |||
B1FE | EXX | |||
B1FF | POP BC | |||
B200 | LD A,(BC) | get tile from Tile screen 3 | ||
B201 | CP $FF | $FF - transparent? | ||
B203 | JR Z,$B230 | $FF => skip Dog tile drawing | ||
B205 | CALL $B2FE | Exchange $7239 (Ninja direction) and $71CD (Dog direction) | ||
B208 | LD H,$00 | |||
B20A | LD L,A | |||
B20B | ADD HL,HL | |||
B20C | ADD HL,HL | |||
B20D | ADD HL,HL | |||
B20E | ADD HL,HL | * 16 | ||
B20F | LD DE,$F0F0 | Dog tiles base address | ||
B212 | ADD HL,DE | now HL = tile data address | ||
B213 | LD B,$08 | |||
B215 | LD DE,$B13E | Tile buffer address | ||
B218 | INC HL | |||
B219 | LD A,(DE) | get byte from tile buffer | ||
B21A | LD C,A | |||
B21B | LD A,(HL) | |||
B21C | CALL $B2E8 | Mirror byte if needed | ||
B21F | AND C | |||
B220 | LD C,A | |||
B221 | DEC HL | |||
B222 | LD A,(HL) | |||
B223 | CALL $B2E8 | Mirror byte if needed | ||
B226 | OR C | |||
B227 | INC HL | |||
B228 | INC HL | |||
B229 | LD (DE),A | |||
B22A | INC DE | |||
B22B | DJNZ $B218 | |||
B22D | CALL $B2FE | Exchange $7239 (Ninja direction) and $71CD (Dog direction) | ||
Process Tile screen 4 tile - Guard
|
||||
B230 | LD HL,($7237) | get address in Tile screen 4 | ||
B233 | LD A,(HL) | get tile from the tilemap | ||
B234 | CP $FF | $FF - transparent? | ||
B236 | JR Z,$B263 | $FF => skip Guard tile drawing | ||
B238 | LD H,$00 | |||
B23A | LD L,A | |||
B23B | ADD HL,HL | |||
B23C | ADD HL,HL | |||
B23D | ADD HL,HL | |||
B23E | ADD HL,HL | * 16 | ||
B23F | LD DE,$E700 | tiles base address | ||
B242 | ADD HL,DE | now HL = tile data address | ||
B243 | LD B,$08 | |||
B245 | LD DE,$B13E | Tile buffer address | ||
B248 | CALL $B30F | Exchange $7239 (Ninja direction) and $7347 (Guard direction) | ||
B24B | INC HL | |||
B24C | LD A,(DE) | get byte from tile buffer | ||
B24D | LD C,A | |||
B24E | LD A,(HL) | get byte from tile data (mask) | ||
B24F | CALL $B2E8 | Mirror byte if needed | ||
B252 | AND C | AND with byte from buffer - masking | ||
B253 | LD C,A | |||
B254 | DEC HL | |||
B255 | LD A,(HL) | get byte from tile data (pixels) | ||
B256 | CALL $B2E8 | Mirror byte if needed | ||
B259 | OR C | OR with byte from buffer | ||
B25A | INC HL | |||
B25B | INC HL | |||
B25C | LD (DE),A | save result byte to tile buffer | ||
B25D | INC DE | |||
B25E | DJNZ $B24B | loop for all 8 bytes | ||
B260 | CALL $B30F | Exchange $7239 (Ninja direction) and $7347 (Guard direction) | ||
Process Tile screen 5 tile - front
|
||||
B263 | LD HL,($7235) | get address in Tile screen 5 | ||
B266 | LD A,(HL) | get tile from the tilemap | ||
B267 | CP $FF | $FF - transparent? | ||
B269 | JR Z,$B293 | $FF => skip front tile drawing | ||
B26B | LD H,$00 | |||
B26D | LD L,A | |||
B26E | LD A,($B147) | get Background tile attribute | ||
B271 | LD ($B146),A | set it as current tile attribute | ||
B274 | PUSH HL | |||
B275 | ADD HL,HL | |||
B276 | ADD HL,HL | |||
B277 | ADD HL,HL | |||
B278 | ADD HL,HL | * 16 | ||
B279 | POP DE | |||
B27A | ADD HL,DE | * 17 | ||
B27B | LD DE,$D600 | Front tiles base address | ||
B27E | ADD HL,DE | now HL = address of tile data | ||
B27F | LD B,$08 | |||
B281 | LD DE,$B13E | Tile buffer address | ||
B284 | LD A,(DE) | get byte from buffer | ||
B285 | AND (HL) | AND with mask byte | ||
B286 | INC HL | move to next byte in tile data | ||
B287 | OR (HL) | OR with pixel byte | ||
B288 | LD (DE),A | store result back to tile buffer | ||
B289 | INC HL | move to next byte in tile data | ||
B28A | INC DE | move to next buffer byte | ||
B28B | DJNZ $B284 | loop for all 8 bytes | ||
B28D | LD A,(HL) | get attribute byte from the tile data | ||
B28E | CP $FF | $FF? | ||
B290 | JR Z,$B293 | $FF => skip | ||
B292 | LD (DE),A | set as current attribute | ||
Draw prepared tile on the screen
|
||||
B293 | NOP | |||
B294 | POP DE | |||
B295 | PUSH DE | |||
B296 | LD HL,$B13E | Tile buffer address | ||
B299 | LD B,$08 | 8 bytes | ||
B29B | LD A,(HL) | get byte from the buffer | ||
B29C | LD (DE),A | put byte on the screen | ||
B29D | INC HL | |||
B29E | INC D | |||
B29F | DJNZ $B29B | loop for all 8 bytes | ||
B2A1 | LD A,(HL) | get attribute byte from the buffer | ||
B2A2 | LD HL,($7233) | get address in screen attributes | ||
B2A5 | LD (HL),A | put the attribute | ||
Next column
|
||||
B2A6 | POP DE | |||
B2A7 | POP BC | |||
B2A8 | POP HL | |||
B2A9 | INC DE | Next address in screen | ||
B2AA | INC HL | Next address in Tile screen 1 | ||
B2AB | EXX | |||
B2AC | INC DE | |||
B2AD | INC HL | Next address in Tile screen 0 | ||
B2AE | INC BC | |||
B2AF | EXX | |||
B2B0 | PUSH HL | |||
B2B1 | LD HL,($7233) | |||
B2B4 | INC HL | Next address in screen attributes | ||
B2B5 | LD ($7233),HL | |||
B2B8 | LD HL,($7235) | |||
B2BB | INC HL | Next address in Tile screen 5 | ||
B2BC | LD ($7235),HL | |||
B2BF | LD HL,($7237) | |||
B2C2 | INC HL | Next address in Tile screen 4 | ||
B2C3 | LD ($7237),HL | |||
B2C6 | POP HL | |||
B2C7 | DEC C | Decrease column counter | ||
B2C8 | JP NZ,$B16F | Continue loop by columns | ||
Next tile row
|
||||
B2CB | RR D | |||
B2CD | RR D | |||
B2CF | RR D | |||
B2D1 | INC DE | |||
B2D2 | INC DE | |||
B2D3 | RL D | |||
B2D5 | RL D | |||
B2D7 | RL D | |||
B2D9 | PUSH HL | |||
B2DA | LD HL,($7233) | get screen attributes address | ||
B2DD | INC HL | |||
B2DE | INC HL | increase address by 2 - next row | ||
B2DF | LD ($7233),HL | set screen attributes address | ||
B2E2 | POP HL | |||
B2E3 | DEC B | Decrease line counter | ||
B2E4 | JP NZ,$B16D | Continue loop by lines | ||
B2E7 | RET |
Used by the routine at B148.
|
||||
B2E8 | PUSH BC | |||
B2E9 | LD B,A | |||
B2EA | LD A,($7239) | get Ninja direction | ||
B2ED | CP $00 | left? | ||
B2EF | LD A,B | |||
B2F0 | POP BC | |||
B2F1 | RET NZ | right - no need to mirror => return | ||
B2F2 | LD IX,$72BA | Mirror table half address | ||
B2F6 | LD ($B2FB),A | |||
B2F9 | LD A,(IX+$7E) | |||
B2FC | RET |
|
||||
B2FD | DEFB $C3 | Counter for Ninja/Guard head tile change |
Used by the routine at B148.
|
||||
B2FE | PUSH AF | |||
B2FF | LD A,($7239) | get Ninja direction | ||
B302 | PUSH AF | |||
B303 | LD A,($71CD) | get Dog direction | ||
B306 | LD ($7239),A | |||
B309 | POP AF | |||
B30A | LD ($71CD),A | |||
B30D | POP AF | |||
B30E | RET |
Used by the routine at B148.
|
||||
B30F | PUSH AF | |||
B310 | LD A,($7239) | get Ninja direction | ||
B313 | PUSH AF | |||
B314 | LD A,($7347) | get Guard direction | ||
B317 | LD ($7239),A | |||
B31A | POP AF | |||
B31B | LD ($7347),A | |||
B31E | POP AF | |||
B31F | RET |
|
||||
B320 | LD A,($9756) | |||
B323 | XOR $06 | |||
B325 | LD ($9756),A | |||
B328 | JR $B350 | => Change Console color in NEAR |
|
||||
B32A | LD A,($97D0) | |||
B32D | XOR $FF | |||
B32F | LD ($97D0),A | |||
B332 | JR $B350 | => Change Console color in NEAR |
|
||||
B334 | LD A,($8DBC) | |||
B337 | XOR $06 | |||
B339 | LD ($8DBC),A | |||
B33C | JR $B350 | => Change Console color in NEAR |
|
||||
B33E | LD A,($8F32) | |||
B341 | XOR $08 | |||
B343 | LD ($8F32),A | |||
B346 | JR $B350 | => Change Console color in NEAR |
|
||||
B348 | LD A,($7F7B) | |||
B34B | XOR $09 | |||
B34D | LD ($7F7B),A | |||
Change Console color in NEAR, so we see that console action worked
|
||||
B350 | LD HL,$5A7B | address in screen attributes | ||
B353 | LD DE,$001C | 28 | ||
B356 | LD C,$03 | 3 rows | ||
B358 | LD B,$04 | 4 columns | ||
B35A | LD A,(HL) | |||
B35B | XOR $06 | |||
B35D | LD (HL),A | |||
B35E | INC HL | |||
B35F | DJNZ $B35A | |||
B361 | ADD HL,DE | next row | ||
B362 | DEC C | |||
B363 | JR NZ,$B358 | |||
B365 | JP $B8D0 | => Update Ninja on tilemap |
|
||||
B368 | LD A,($97D0) | get trigger "E" value | ||
B36B | LD ($66F5),A | |||
B36E | JP $A18D | => Finish Room 97A6 initialization |
Used by the routine at BC55.
|
||||
B371 | DI | |||
B372 | LD C,$C8 | |||
B374 | LD A,(HL) | |||
B375 | AND $07 | |||
B377 | LD B,A | |||
B378 | INC HL | |||
B379 | LD A,$10 | |||
B37B | OUT ($FE),A | |||
B37D | PUSH BC | |||
B37E | LD A,(HL) | |||
B37F | AND $3F | |||
B381 | LD B,A | |||
B382 | DJNZ $B382 | |||
B384 | POP BC | |||
B385 | XOR A | |||
B386 | OUT ($FE),A | |||
B388 | DJNZ $B379 | |||
B38A | INC HL | |||
B38B | DEC C | |||
B38C | JR NZ,$B374 | |||
B38E | RET |
|
||||
B38F | POP HL | |||
B390 | INC HL | |||
B391 | LD A,(HL) | |||
B392 | INC HL | |||
B393 | PUSH HL | |||
B394 | LD H,(HL) | |||
B395 | LD L,A | |||
B396 | LD DE,$7C21 | Tile block address | ||
B399 | LD C,$03 | |||
B39B | LD B,$03 | |||
B39D | LD A,(DE) | |||
B39E | LD (HL),A | |||
B39F | INC DE | |||
B3A0 | INC HL | |||
B3A1 | DJNZ $B39D | |||
B3A3 | PUSH DE | |||
B3A4 | LD DE,$001B | |||
B3A7 | ADD HL,DE | |||
B3A8 | POP DE | |||
B3A9 | DEC C | |||
B3AA | JR NZ,$B39B | |||
B3AC | JP $734A | => B702 Proceed to the next room token |
|
||||
B3AF | DEFS $01 |
Used by the routine at F913.
|
||||
B3B0 | LD HL,$C681 | |||
B3B3 | LD ($982D),HL | |||
B3B6 | LD HL,$B674 | current dog data address | ||
B3B9 | LD ($9DD1),HL | |||
B3BC | LD HL,$C6A5 | |||
B3BF | LD ($7C9C),HL | |||
B3C2 | LD HL,$C671 | |||
B3C5 | LD ($947E),HL | |||
B3C8 | LD ($93E1),HL | |||
B3CB | LD HL,$B422 | |||
B3CE | LD ($7BD4),HL | |||
B3D1 | LD HL,$C64C | |||
B3D4 | LD ($7920),HL | |||
B3D7 | LD HL,$B702 | |||
B3DA | LD ($734B),HL | |||
B3DD | LD B,$00 | |||
B3DF | LD D,$80 | |||
B3E1 | LD HL,$723A | Mirror table address | ||
B3E4 | LD C,$08 | |||
B3E6 | LD A,D | |||
B3E7 | RR A | |||
B3E9 | RL E | |||
B3EB | DEC C | |||
B3EC | JR NZ,$B3E7 | |||
B3EE | LD (HL),E | store reversed byte | ||
B3EF | INC HL | |||
B3F0 | INC D | |||
B3F1 | DJNZ $B3E4 | |||
B3F3 | EXX | |||
B3F4 | PUSH HL | |||
B3F5 | EXX | |||
B3F6 | LD A,$01 | |||
B3F8 | LD ($5C09),A | set REPDEL = 1 | ||
B3FB | LD ($5C0A),A | set REPPER = 1 | ||
B3FE | JP $B5C7 |
|
||||
B401 | DEFS $09 |
|
||||||||
B40A | LD DE,$71C3 | address to store guard data | ||||||
B40D | LD ($B696),HL | Save Guard data address | ||||||
B410 | LD BC,$0004 | |||||||
B413 | LDIR | |||||||
B415 | LD A,(HL) | |||||||
B416 | LD ($7346),A | set Guard state | ||||||
B419 | INC HL | |||||||
B41A | LD A,(HL) | get Guard direction from Guard data | ||||||
B41B | LD ($7347),A | set Guard direction | ||||||
B41E | RET |
|
||||
B41F | JP $B937 |
B422 | JP $B724 | => Finish room initialization |
Used by the routine at 791B.
|
||||
B425 | LD HL,$C66B | Guard data address | ||
B428 | CALL $B40A | Initialize a guard | ||
B42B | JP $B724 | => Finish room initialization |
|
||||
B42E | LD HL,$71D6 | Dog data address | ||
B431 | CALL $9DCD | Initialize a dog | ||
B434 | JP $B724 | => Finish room initialization |
|
||||
B437 | LD HL,$71D6 | |||
B43A | CALL $9DCD | Initialize a dog | ||
B43D | LD HL,$C66B | |||
B440 | CALL $B40A | Initialize a guard | ||
B443 | JP $B724 | => Finish room initialization |
|
||||
B446 | CALL $B4FA | Processing in the initial room | ||
B449 | JP $B937 | Standard room procedure |
Used by the routine at 7918.
|
||||
B44C | CALL $A434 | Process a guard | ||
B44F | JP $B937 | Standard room procedure |
|
||||
B452 | CALL $9C44 | Process a dog | ||
B455 | JP $B937 | Standard room procedure |
|
||||
B458 | CALL $9C44 | Process a dog | ||
B45B | CALL $A434 | Process a guard | ||
B45E | JP $B937 | Standard room procedure |
Used by the routine at A142.
|
||||||||
B461 | LD E,(HL) | get Turret offset low byte | ||||||
B462 | INC HL | |||||||
B463 | LD D,(HL) | get Turret offset high byte | ||||||
B464 | PUSH HL | save offset | ||||||
B465 | LD HL,$678E | Tile screen 1 start address | ||||||
B468 | ADD HL,DE | |||||||
B469 | LD ($B4CC),HL | set Turret address on Tile Screen 1 | ||||||
B46C | LD DE,$07F8 | |||||||
B46F | ADD HL,DE | |||||||
B470 | LD ($B48E),HL | set Turret address on Tile Screen 5 | ||||||
B473 | POP HL | restore offset | ||||||
B474 | INC HL | |||||||
B475 | LD A,(HL) | |||||||
B476 | LD ($B4D4),A | |||||||
B479 | RET |
|
||||
B47A | CALL $9C44 | Process a dog | ||
B47D | CALL $B489 | Process turret | ||
B480 | JP $B937 | Standard room procedure |
|
||||
B483 | CALL $B489 | Process turret | ||
B486 | JP $B937 | Standard room procedure |
B489 | LD A,($B4DD) | get Turret counter | ||
B48C | DEC A | decrease counter | ||
B48D | LD HL,$6FB5 | !!MUT-ARG!! Turret address on Tile Screen 5 | ||
B490 | JR NZ,$B4C6 | |||
B492 | LD A,(HL) | |||
B493 | PUSH HL | |||
B494 | LD DE,$907A | |||
B497 | ADD HL,DE | |||
B498 | SUB $26 | |||
B49A | LD IX,$A3AD | |||
B49E | LD (IX+$03),A | |||
B4A1 | LD (IX+$04),A | |||
B4A4 | LD ($A3AE),HL | |||
B4A7 | LD (IX+$00),$DA | |||
B4AB | LD DE,$FFE2 | -30 | ||
B4AE | LD B,$00 | |||
B4B0 | XOR A | |||
B4B1 | CP H | |||
B4B2 | JR Z,$B4B8 | |||
B4B4 | ADD HL,DE | |||
B4B5 | INC B | |||
B4B6 | JR $B4B0 | |||
B4B8 | LD A,$1E | |||
B4BA | CP L | |||
B4BB | JR C,$B4B4 | |||
B4BD | LD (IX+$06),L | |||
B4C0 | LD (IX+$05),B | |||
B4C3 | LD A,$32 | !!MUT-ARG!! ?? | ||
B4C5 | POP HL | |||
B4C6 | LD ($B4DD),A | update Turret counter | ||
B4C9 | LD A,$01 | |||
B4CB | LD ($67BD),A | !!MUT-ARG!! set "need update" mark for Turret on Tile Screen 1 | ||
B4CE | LD (HL),$2D | |||
B4D0 | LD A,($9C41) | get Ninja X | ||
B4D3 | LD B,$0F | !!MUT-ARG!! Turret counter value | ||
B4D5 | CP B | |||
B4D6 | RET Z | |||
B4D7 | DEC (HL) | |||
B4D8 | CP B | |||
B4D9 | RET M | |||
B4DA | INC (HL) | |||
B4DB | INC (HL) | |||
B4DC | RET |
|
||||
B4DD | DEFB $32 | Turret counter 50..0 |
B4DE | LD HL,$AD54 | PAY value 3rd digit address | ||
B4E1 | LD A,$3A | ':' = '9' + 1 | ||
B4E3 | INC (HL) | |||
B4E4 | CP (HL) | |||
B4E5 | JP NZ,$B4ED | |||
B4E8 | LD (HL),$30 | '0' | ||
B4EA | DEC HL | previous digit | ||
B4EB | JR $B4E3 | |||
B4ED | DJNZ $B4DE | |||
B4EF | LD HL,$AD52 | Pay value text address | ||
B4F2 | LD C,$05 | five digits | ||
B4F4 | LD DE,$506F | Screen address | ||
B4F7 | JP $AED1 | => Print string, and RET |
Used by the routine at B446.
|
||||
B4FA | LD B,$06 | |||
B4FC | LD HL,$D6BB | |||
B4FF | LD A,(HL) | |||
B500 | RR A | |||
B502 | RR (HL) | |||
B504 | INC HL | |||
B505 | DJNZ $B4FF | |||
B507 | LD HL,$68F6 | |||
B50A | LD B,$1E | |||
B50C | LD A,$01 | |||
B50E | LD (HL),A | |||
B50F | INC HL | |||
B510 | DJNZ $B50E | |||
B512 | RET |
|
||||
![]() |
||||
B513 | DEFW $B446 | Room procedure | ||
B515 | DEFW $B422 | Initialization | ||
B517 | DEFW $0000 | |||
B519 | DEFW $791E | Room to Right | ||
B51B | DEFW $0000 | |||
B51D | DEFW $0000 | |||
B51F | DEFB $04,$0D | Fill entire screen with $0D | ||
B521 | DEFB $02,$1E,$F5,$70,$67 | Fill horz 30 tiles with $F5 at $6770 | ||
B526 | DEFB $02,$1E,$0B,$EE,$70 | Fill horz 30 tiles with $0B at $70EE | ||
B52B | DEFB $03,$0C,$1E,$03,$0C,$71 | Rectangle 30x3 tiles with $0C at $710C | ||
B531 | DEFB $FF | End of sequence |
|
||||
B532 | LD HL,($9C42) | |||
B535 | INC HL | increase Ninja position in tilemap | ||
B536 | LD ($9C42),HL | |||
B539 | LD HL,$9C41 | Ninja X address | ||
B53C | INC (HL) | |||
B53D | LD DE,$70E3 | |||
B540 | LD HL,$B5A7 | Boat sprite address | ||
B543 | LD BC,$0009 | |||
B546 | LDIR | copy Boat sprite | ||
B548 | LD HL,$F807 | |||
B54B | ADD HL,DE | |||
B54C | LD (HL),$01 | |||
B54E | LD DE,$FFF8 | |||
B551 | ADD HL,DE | |||
B552 | LD (HL),$01 | |||
B554 | LD HL,($B53E) | |||
B557 | INC HL | |||
B558 | LD ($B53E),HL | |||
B55B | LD A,($B5A8) | |||
B55E | XOR $01 | |||
B560 | LD ($B5A8),A | |||
B563 | LD C,$FE | |||
B565 | LD B,$05 | |||
B567 | LD A,$10 | |||
B569 | OUT (C),A | |||
B56B | DJNZ $B56B | delay | ||
B56D | XOR A | |||
B56E | OUT (C),A | |||
B570 | LD HL,$7343 | counter address | ||
B573 | DEC (HL) | decrease counter | ||
B574 | JP NZ,$B8D0 | => Update Ninja on tilemap | ||
B577 | LD HL,$9C41 | Ninja X address | ||
B57A | INC (HL) | Moving right one tile | ||
B57B | LD HL,($9C42) | |||
B57E | INC HL | increase Ninja position in tilemap | ||
B57F | LD ($9C42),HL | |||
B582 | LD HL,$70E3 | |||
B585 | LD (HL),$FF | |||
B587 | LD DE,$D5AC | Sprite Ninja jumping 3 | ||
B58A | LD HL,$C4F6 | Movement handler address | ||
B58D | LD A,$04 | |||
B58F | LD ($7343),A | set counter = 4 | ||
B592 | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
|
||||
B595 | DEFB $00 |
B596 | LD B,$14 | |||
This entry point is used by the routine at B59E.
|
||||
B598 | JP $F9A1 |
|
||||
B59B | DEFB $FE,$0E,$2D |
Used by the routine at C5C6.
|
||||
B59E | DEC C | |||
B59F | JR NZ,$B59E | |||
B5A1 | XOR A | |||
B5A2 | OUT ($FE),A | |||
B5A4 | DJNZ $B598 | |||
B5A6 | RET |
|
||||
B5A7 | DEFB $FF | |||
B5A8 | DEFB $67,$68,$6A,$6A,$6A,$6A,$6A,$6B | ![]() |
|
||||
B5B0 | DEFW $A7AD | #0 Nothing | ||
B5B2 | DEFW $A819 | #1 Shuriken | ||
B5B4 | DEFW $A885 | #2 Knife | ||
B5B6 | DEFW $A8F1 | #3 ?? | ||
B5B8 | DEFW $A95D | #4 Brick | ||
B5BA | DEFW $A9C9 | #5 Pipe | ||
B5BC | DEFW $AA35 | #6 Granade | ||
B5BE | DEFW $AAA1 | #7 Disk | ||
B5C0 | DEFW $AB0D | #8 Bomb | ||
B5C2 | DEFW $AB79 | #9 Console |
|
||||
B5C4 | DEFB $15 | Time fast counter 50..0 | ||
B5C5 | DEFB $01 | Ninja standing counter | ||
B5C6 | DEFB $00 | Time mode: $00 = time ticking; $01 = Time stopped; $02 = BOMB ticking mode |
Used by the routine at B3B0.
|
||||
B5C7 | CALL $AC44 | Reset Guard data and Dog data | ||
B5CA | LD ($BC0E),SP | |||
B5CE | LD HL,$B7CB | |||
B5D1 | LD ($E345),HL | |||
B5D4 | LD HL,$BC3B | |||
B5D7 | LD ($DFD2),HL | |||
B5DA | LD A,$C5 | command = $C5 PUSH BC | ||
B5DC | LD ($9DD9),A | set command = PUSH BC = enable Energy decrease | ||
B5DF | LD HL,$BEAA | |||
B5E2 | LD ($9DED),HL | |||
B5E5 | LD HL,$B8D0 | Object procedure address for "Update Ninja on tilemap" | ||
B5E8 | LD ($D285),HL | set Object procedure for object #6 in Table of objects D256 | ||
B5EB | LD ($B366),HL | |||
B5EE | LD A,$30 | |||
B5F0 | LD HL,$AD52 | Pay value text address | ||
B5F3 | LD B,$03 | |||
B5F5 | LD (HL),A | |||
B5F6 | INC HL | |||
B5F7 | DJNZ $B5F5 | |||
B5F9 | CALL $ACCA | Draw game screen frames and indicator text | ||
B5FC | XOR A | |||
B5FD | LD ($5C48),A | set BORDCR = 0 | ||
B600 | LD ($B5C6),A | set Time mode = time ticking | ||
B603 | LD ($B850),A | clear HELD tile | ||
B606 | LD ($D48E),A | set tile in Ninja sprite | ||
B609 | OUT ($FE),A | set border black, sound off | ||
B60B | INC A | |||
B60C | LD ($D48F),A | set head tile for Ninja/Guard standing sprite | ||
B60F | LD ($7239),A | set Ninja direction = 1 = right | ||
B612 | LD ($B84F),A | set NEAR item = 1 | ||
B615 | LD HL,$70D0 | |||
B618 | LD ($B53E),HL | |||
B61B | LD HL,$B5B0 | address for Table of items | ||
B61E | LD ($74D4),HL | |||
B621 | CALL $B851 | Set initial data in Table of Objects | ||
B624 | LD HL,$0000 | |||
B627 | LD ($B674),HL | set current Dog data address = no dog | ||
B62A | LD ($B696),HL | set current Guard data address = no guard | ||
B62D | LD A,$04 | |||
B62F | LD ($C66F),A | |||
B632 | LD ($D495),A | |||
B635 | LD A,$FA | |||
B637 | LD ($B2FD),A | |||
B63A | LD A,$C8 | |||
B63C | LD ($BD7A),A | |||
B63F | CALL $7472 | |||
B642 | DI | |||
B643 | LD HL,$B513 | Initial room address | ||
B646 | LD ($7184),HL | set Current Room address | ||
B649 | LD HL,$B532 | movement handler for initial room | ||
B64C | LD ($B8CE),HL | set movement handler address | ||
B64F | LD HL,$D558 | Sprite Ninja sitting | ||
B652 | LD ($7186),HL | set Ninja sprite address | ||
B655 | LD A,$01 | |||
B657 | LD ($9C41),A | set Ninja X = 1 | ||
B65A | LD A,$05 | |||
B65C | LD ($9C40),A | set Ninja Y = 5 | ||
B65F | LD HL,$0097 | |||
B662 | LD ($9C42),HL | set Ninja position in tilemap: Y * 30 + X | ||
B665 | LD A,$13 | |||
B667 | LD ($7343),A | set counter = 19 |
B66A | LD A,($71D4) | |||
B66D | LD ($0000),A | !!MUT-ARG!! address for current Dog flag | ||
B670 | LD HL,$71CB | |||
B673 | LD DE,$0000 | !!MUT-ARG!! current Dog data address | ||
B676 | LD BC,$0009 | |||
B679 | LDIR | |||
B67B | LD HL,$B263 | For first drawing entering the room, skip Dog and Guard tiles drawing | ||
B67E | LD ($B1FA),HL | |||
B681 | CALL $DE68 | Find record for the current room in DE84 table | ||
B684 | CP $00 | |||
B686 | JR NZ,$B68B | found => | ||
B688 | LD HL,$0000 | |||
B68B | LD A,(HL) | get flag | ||
B68C | LD ($71D4),A | |||
B68F | LD ($B66E),HL | |||
B692 | LD HL,$71C3 | |||
B695 | LD DE,$0000 | !!MUT-ARG!! current Guard data address | ||
B698 | LD BC,$0004 | |||
B69B | LDIR | |||
B69D | LD A,($7346) | get Guard state | ||
B6A0 | LD (DE),A | |||
B6A1 | INC DE | |||
B6A2 | LD A,($7347) | get Guard direction | ||
B6A5 | LD (DE),A | |||
B6A6 | LD HL,$0000 | |||
B6A9 | LD ($B674),HL | set current Dog data address = no dog | ||
B6AC | LD ($B696),HL | set current Guard data address = no guard | ||
B6AF | XOR A | |||
B6B0 | LD ($BAB2),A | |||
B6B3 | LD HL,$A39F | |||
B6B6 | LD B,$03 | |||
B6B8 | LD DE,$0007 | |||
B6BB | LD (HL),A | |||
B6BC | ADD HL,DE | |||
B6BD | DJNZ $B6BB | |||
B6BF | LD HL,$6590 | Tile screen 0 start address | ||
B6C2 | LD (HL),A | fill with $00 | ||
B6C3 | INC A | |||
B6C4 | LD ($A3B4),A | |||
B6C7 | LD BC,$01FD | 510 - 1 | ||
B6CA | LD DE,$6591 | Tile screen 0 start address + 1 | ||
B6CD | LDIR | Fill Tile screen 0 | ||
B6CF | LD HL,$6D88 | Tile screen 4 start address | ||
B6D2 | LD (HL),$FF | fill with transparent tile | ||
B6D4 | LD BC,$03FB | 510 + 510 - 1 | ||
B6D7 | LD DE,$6D89 | Tile screen 4 start address | ||
B6DA | LDIR | Fill Tile screen 4 and Tile screen 5 | ||
B6DC | LD HL,($7184) | get Current Room address | ||
B6DF | INC HL | |||
B6E0 | INC HL | |||
B6E1 | LD A,(HL) | get Room init address low byte | ||
B6E2 | INC HL | |||
B6E3 | PUSH HL | |||
B6E4 | LD H,(HL) | get Room init address high byte | ||
B6E5 | LD L,A | |||
B6E6 | LD ($B6F2),HL | set Room init address | ||
B6E9 | POP HL | |||
B6EA | LD DE,$0009 | |||
B6ED | ADD HL,DE | now HL = room sequence start address | ||
This entry point is used by the routine at B702.
|
||||
B6EE | LD A,(HL) | get next token | ||
B6EF | CP $FF | End of sequence? | ||
B6F1 | JP Z,$F973 | !!MUT-ARG!! yes => run Room initialization code | ||
B6F4 | PUSH HL | Save address in the room sequence | ||
B6F5 | LD L,A | |||
B6F6 | LD H,$00 | |||
B6F8 | ADD HL,HL | * 2 | ||
B6F9 | LD DE,$B706 | Table of Room tokens | ||
B6FC | ADD HL,DE | now HL = address in the table | ||
B6FD | LD A,(HL) | get address low byte | ||
B6FE | INC HL | |||
B6FF | LD H,(HL) | get address high byte | ||
B700 | LD L,A | now HL = room token procedure address | ||
B701 | JP (HL) | => run token procedure |
Used by the routine at 734A.
|
||||
B702 | POP HL | Restore address in the room sequence | ||
B703 | INC HL | to next token | ||
B704 | JR $B6EE | => continue room sequence processing |
|
||||
B706 | DEFW $B38F | #00: Put 3x3 tiles $7C21; params: 2 bytes (address) | ||
B708 | DEFW $7381 | #01: Fill to down; params: 4 bytes (count, filler, address) | ||
B70A | DEFW $739F | #02: Fill to right; params: 4 bytes (count, filler, address) | ||
B70C | DEFW $7452 | #03: Fill rectangle; params: 5 bytes (filler, width, height, address) | ||
B70E | DEFW $73F3 | #04: Fill whole Tile screen 0 with one tile; params: 1 byte (filler) | ||
B710 | DEFW $7406 | #05: Copy block of tiles; params: 6 bytes (width, height, srcaddr, address) | ||
B712 | DEFW $73A4 | #06: Fill triangle from wide top; params: 4 bytes (filler, count, address) | ||
B714 | DEFW $73C5 | #07: Fill triangle from wide bottom; params: 4 bytes (filler, count, address) | ||
B716 | DEFW $73EB | #08: Fill triangle from wide bottom; params: 4 bytes (filler, count, address) | ||
B718 | DEFW $73EF | #09: Fill triangle from wide top; params: 4 bytes (filler, count, address) | ||
B71A | DEFW $7395 | #0A: Fill to down-right; params: 4 bytes (count, filler, address) | ||
B71C | DEFW $739A | #0B: Fill to down-left; params: 4 bytes (count, filler, address) | ||
B71E | DEFW $742B | #0C: Copy block of tiles N times; params: 6 bytes (srcaddr, width, count, address) | ||
B720 | DEFW $7359 | #0D: Set border color; params: 1 byte | ||
B722 | DEFW $734D | #0E: Put one tile at the given address; params: 3 bytes (tile, address) |
Called to finish room initialization from room initialization procedure
|
||||
B724 | LD HL,$678E | Tile screen 1 start address | ||
B727 | LD (HL),$01 | Filler = $01 = "need update" mark | ||
B729 | LD BC,$01FD | 510 - 1 | ||
B72C | LD DE,$678F | Tile screen 1 start address + 1 | ||
B72F | LDIR | |||
B731 | LD HL,$698C | Tile screen 2 start address | ||
B734 | LD (HL),$FF | Filler = transparent tile | ||
B736 | LD BC,$01FD | 510 - 1 | ||
B739 | LD DE,$698D | Tile screen 2 start address + 1 | ||
B73C | LDIR | |||
B73E | LD HL,$6B8A | Tile screen 3 start address | ||
B741 | LD (HL),$FF | Filler = transparent tile | ||
B743 | LD BC,$01FD | 510 - 1 | ||
B746 | LD DE,$6B8B | Tile screen 3 start address + 1 | ||
B749 | LDIR | |||
B74B | CALL $B148 | Draw tile map on the screen | ||
B74E | LD HL,$D34D | Table of objects address | ||
B751 | LD B,$23 | 35 objects | ||
B753 | PUSH HL | save address in Table of objects | ||
B754 | LD A,($7184) | get Current Room address, low byte | ||
B757 | CP (HL) | |||
B758 | JR NZ,$B768 | |||
B75A | INC HL | |||
B75B | LD A,($7185) | get Current Room address, high byte | ||
B75E | CP (HL) | |||
B75F | JR NZ,$B768 | |||
B761 | INC HL | |||
B762 | LD E,(HL) | get address in Tile screen 0, low byte | ||
B763 | INC HL | |||
B764 | LD D,(HL) | get address in Tile screen 0, high byte | ||
B765 | INC HL | |||
B766 | LD A,(HL) | get tile byte | ||
B767 | LD (DE),A | set tile byte in Tile screen 0 | ||
B768 | POP HL | restore address in Table of objects | ||
B769 | LD DE,$0005 | |||
B76C | ADD HL,DE | next object | ||
B76D | DJNZ $B753 | continue loop by objects | ||
B76F | LD A,($7346) | get Guard state | ||
B772 | CP $09 | |||
B774 | JR Z,$B77B | |||
B776 | LD A,$0A | |||
B778 | LD ($7346),A | set Guard state = $0A |
B77B | XOR A | |||
B77C | LD ($5C08),A | clear LASTK | ||
B77F | RST $38 | |||
B780 | DI | |||
B781 | LD A,($5C08) | get LASTK | ||
B784 | LD A,($B5C6) | get Time mode | ||
B787 | CP $01 | time stopped? | ||
B789 | JR Z,$B7AF | yes => | ||
Decrease Time, check if Time is out
|
||||
B78B | LD HL,$B5C4 | address for Time fast counter | ||
B78E | DEC (HL) | decrease the counter | ||
B78F | JR NZ,$B7AF | not zero => skip Time decrease | ||
B791 | LD (HL),$28 | reset fast counter to 50 | ||
B793 | LD HL,$AD58 | address for Time lower digit | ||
B796 | DEC (HL) | Decrease Time lower digit | ||
B797 | LD A,$2F | |||
B799 | CP (HL) | |||
B79A | JR NZ,$B7A4 | |||
B79C | LD (HL),$39 | '9' | ||
B79E | DEC HL | go to higher digit | ||
B79F | DEC (HL) | decrease Time higher digit | ||
B7A0 | CP (HL) | |||
B7A1 | JP Z,$BE71 | time is out => | ||
B7A4 | LD DE,$5097 | screen address for timer value | ||
B7A7 | LD HL,$AD57 | Indicator Time value address | ||
B7AA | LD C,$02 | Two digits | ||
B7AC | CALL $AED1 | Print string | ||
Check for BOMB
|
||||
B7AF | LD A,($D28B) | check Object #7 in Table of objects D256 | ||
B7B2 | CP $D6 | BOMB tile in the place of Diskette? | ||
B7B4 | JR NZ,$B7ED | no => skip | ||
BOMB ticking mode
|
||||
B7B6 | LD HL,$B5C6 | Time mode address | ||
B7B9 | LD A,$02 | |||
B7BB | CP (HL) | already in BOMB ticking mode? | ||
B7BC | JR Z,$B7ED | |||
B7BE | LD (HL),A | set Time mode = BOMB ticking mode | ||
B7BF | LD HL,$BD2F | "BOMB" | ||
B7C2 | LD DE,$50D6 | screen address under timer value | ||
B7C5 | LD C,$04 | |||
B7C7 | CALL $AED1 | Print string "BOMB" | ||
B7CA | LD HL,$3939 | !!MUT-ARG!! "99" bomb timer initial value | ||
B7CD | LD ($AD57),HL | set Indicator Time value | ||
B7D0 | LD A,$01 | |||
B7D2 | LD ($B5C4),A | |||
B7D5 | LD HL,$5A76 | |||
B7D8 | LD DE,$001C | 28 | ||
B7DB | LD C,$03 | |||
B7DD | LD B,$04 | |||
B7DF | LD (HL),$D6 | |||
B7E1 | INC HL | |||
B7E2 | DJNZ $B7DF | |||
B7E4 | ADD HL,DE | |||
B7E5 | DEC C | |||
B7E6 | JR NZ,$B7DD | |||
B7E8 | LD B,$32 | |||
B7EA | CALL $B4DE | Increase PAY value by 5000 | ||
B7ED | LD HL,$678E | Tile screen 1 start address | ||
B7F0 | LD (HL),$00 | "no need to update" value | ||
B7F2 | LD BC,$01FD | 510 - 1 | ||
B7F5 | LD DE,$678F | Tile screen 1 start address + 1 | ||
B7F8 | LDIR | |||
B7FA | CALL $BBBB | Set update flags for Ninja, 6x7 tiles | ||
B7FD | LD HL,$698C | Tile screen 2 start address | ||
B800 | LD (HL),$FF | |||
B802 | LD BC,$01FD | 510 - 1 | ||
B805 | LD DE,$698D | Tile screen 2 start address + 1 | ||
B808 | LDIR | Fill the Tile screen 2 | ||
B80A | XOR A | |||
B80B | LD ($B84C),A | clear Object tile | ||
B80E | LD C,A | |||
B80F | LD B,$23 | 35 = number of records in D256 | ||
B811 | LD DE,$D256 | Table address | ||
Loop through the table
|
||||
B814 | LD A,(DE) | get byte +$00 | ||
B815 | LD L,A | |||
B816 | INC DE | |||
B817 | LD A,(DE) | get byte +$01 | ||
B818 | LD H,A | |||
B819 | INC DE | |||
B81A | PUSH DE | save address in the table | ||
B81B | LD DE,($9C42) | |||
B81F | ADD HL,DE | add Ninja position in tilemap | ||
B820 | POP DE | restore address in the table | ||
B821 | LD A,(DE) | get byte +$02 | ||
B822 | INC DE | |||
B823 | CP (HL) | |||
B824 | JP NZ,$B889 | |||
B827 | LD A,(DE) | get byte +$03 | ||
B828 | LD C,A | |||
B829 | LD B,$03 | |||
B82B | LD HL,$B84C | address to store Object tile and Object procedure address | ||
B82E | INC DE | |||
B82F | LD ($B84A),DE | store Object address + 4 | ||
B833 | LD A,(DE) | get byte +$04/$05/$06 | ||
B834 | LD (HL),A | |||
B835 | INC HL | |||
B836 | INC DE | |||
B837 | DJNZ $B833 | |||
B839 | JP $B891 |
Used by the routine at BC55.
|
||||
B83C | LD A,($749D) | get Energy lower | ||
B83F | RRC A | |||
B841 | LD ($749D),A | set Energy lower | ||
B844 | RET NC | |||
B845 | LD HL,$749C | Energy address | ||
B848 | INC (HL) | increase Energy | ||
B849 | RET |
|
||||
B84A | DEFW $D2FB | Object address + 4, in table D256 | ||
B84C | DEFB $00 | Object tile | ||
B84D | DEFW $0000 | Object procedure address | ||
B84F | DEFB $00 | NEAR item | ||
B850 | DEFB $C8 | HELD tile |
Used by the routine at B5C7.
|
||||
B851 | LD B,$23 | 35 objects | ||
B853 | LD DE,$0007 | 7 = size of record in Table of Objects | ||
B856 | LD IX,$D259 | = D256 (address for Table of Objects) + 3 | ||
B85A | LD HL,$D210 | Address for table with initial data | ||
B85D | LD A,(HL) | |||
B85E | LD (IX+$00),A | set byte +$03 in the record | ||
B861 | INC HL | |||
B862 | LD A,(HL) | |||
B863 | LD (IX+$01),A | set byte +$04 in the record | ||
B866 | INC HL | |||
B867 | ADD IX,DE | next record | ||
B869 | DJNZ $B85D | continue the loop | ||
B86B | RET |
Used by the routine at B889.
|
||||||||||
B86C | LD B,$18 | |||||||||
B86E | LD ($74F4),A | |||||||||
B871 | LD IX,$751B | |||||||||
B875 | LD L,(IX+$00) | |||||||||
B878 | LD H,(IX+$01) | |||||||||
B87B | ADD HL,DE | |||||||||
B87C | LD (IX+$00),L | |||||||||
B87F | LD (IX+$01),H | |||||||||
B882 | INC IX | |||||||||
B884 | INC IX | |||||||||
B886 | DJNZ $B875 | |||||||||
B888 | RET |
Used by the routine at B77B.
|
||||
B889 | INC DE | |||
B88A | INC DE | |||
B88B | INC DE | |||
B88C | INC DE | |||
B88D | DEC B | |||
B88E | JP NZ,$B814 | continue th loop through the table | ||
This entry point is used by the routine at B77B.
|
||||
B891 | LD HL,$B84F | NEAR item address | ||
B894 | LD A,C | |||
B895 | CP (HL) | |||
B896 | JR Z,$B8B0 | |||
B898 | LD (HL),A | |||
B899 | LD ($74CE),A | |||
B89C | LD DE,$001A | |||
B89F | LD A,$7B | |||
B8A1 | CALL $B86C | |||
B8A4 | CALL $74CD | Draw NEAR/HELD item | ||
B8A7 | DI | |||
B8A8 | LD DE,$FFE6 | -26 | ||
B8AB | LD A,$61 | |||
B8AD | CALL $B86C | |||
B8B0 | LD HL,$B850 | HELD tile address | ||
B8B3 | LD A,($BD7A) | |||
B8B6 | CP (HL) | |||
B8B7 | JR Z,$B8C9 | |||
B8B9 | LD (HL),A | |||
B8BA | CP $00 | |||
B8BC | JR Z,$B8C2 | |||
B8BE | SUB $C6 | |||
B8C0 | SRL A | |||
B8C2 | LD ($74CE),A | |||
B8C5 | CALL $74CD | Draw NEAR/HELD item | ||
B8C8 | DI | |||
B8C9 | XOR A | |||
B8CA | LD ($A39E),A | |||
B8CD | JP $BEB3 | !!MUT-ARG!! => run handler |
B8D0 | CALL $BBBB | Set update flags for Ninja, 6x7 tiles | ||
B8D3 | LD HL,$6D88 | Tile screen 4 start address | ||
B8D6 | LD (HL),$FF | |||
B8D8 | LD BC,$01FD | 510 - 1 | ||
B8DB | LD DE,$6D89 | |||
B8DE | LDIR | |||
Draw Ninja on tilemap
|
||||
B8E0 | LD HL,($9C42) | get Ninja position in tilemap | ||
B8E3 | LD A,($7239) | get Ninja direction | ||
B8E6 | CP $00 | left? | ||
B8E8 | JR NZ,$B907 | |||
B8EA | LD DE,$6991 | |||
B8ED | ADD HL,DE | |||
B8EE | LD DE,($7186) | get Ninja sprite address | ||
B8F2 | LD B,$07 | |||
B8F4 | LD C,$06 | |||
B8F6 | LD A,(DE) | |||
B8F7 | LD (HL),A | |||
B8F8 | DEC HL | |||
B8F9 | INC DE | |||
B8FA | DEC C | |||
B8FB | JR NZ,$B8F6 | |||
B8FD | PUSH DE | |||
B8FE | LD DE,$0024 | |||
B901 | ADD HL,DE | |||
B902 | POP DE | |||
B903 | DJNZ $B8F4 | |||
B905 | JR $B922 | |||
B907 | LD DE,$698C | Tile screen 2 start address | ||
B90A | ADD HL,DE | |||
B90B | LD DE,($7186) | get Ninja sprite address | ||
B90F | LD B,$07 | |||
B911 | LD C,$06 | |||
B913 | LD A,(DE) | |||
B914 | LD (HL),A | |||
B915 | INC HL | |||
B916 | INC DE | |||
B917 | DEC C | |||
B918 | JR NZ,$B913 | |||
B91A | PUSH DE | |||
B91B | LD DE,$0018 | |||
B91E | ADD HL,DE | |||
B91F | POP DE | |||
B920 | DJNZ $B911 | |||
B922 | LD HL,$6B8A | Tile screen 3 start address | ||
B925 | LD (HL),$FF | |||
B927 | LD DE,$6B8B | Tile screen 3 start address + 1 | ||
B92A | LD BC,$01FD | 510 - 1 | ||
B92D | LDIR | |||
B92F | LD HL,($7184) | get Current Room address | ||
B932 | LD A,(HL) | |||
B933 | INC HL | |||
B934 | LD H,(HL) | |||
B935 | LD L,A | |||
B936 | JP (HL) |
B937 | LD IX,$A39F | |||
B93B | LD B,$03 | |||
B93D | LD A,$03 | |||
B93F | LD ($B951),A | |||
B942 | XOR A | |||
B943 | CP (IX+$00) | |||
B946 | PUSH BC | |||
B947 | JP Z,$BA20 | |||
B94A | CALL $BBAE | |||
B94D | LD B,$02 | |||
B94F | LD A,(IX+$03) | !!MUT-ARG!! | ||
B952 | LD DE,$0000 | |||
B955 | CP $03 | |||
B957 | JR NC,$B95F | |||
B959 | LD DE,$FFE2 | -30 | ||
B95C | DEC (IX+$05) | |||
B95F | CP $06 | |||
B961 | JR C,$B969 | |||
B963 | LD DE,$001E | +30 | ||
B966 | INC (IX+$05) | |||
B969 | CP $01 | |||
B96B | JR Z,$B98D | |||
B96D | CP $04 | |||
B96F | JR Z,$B98D | |||
B971 | CP $07 | |||
B973 | JR Z,$B98D | |||
B975 | DEC DE | |||
B976 | DEC (IX+$06) | |||
B979 | CP $03 | |||
B97B | JR Z,$B98D | |||
B97D | CP $00 | |||
B97F | JR Z,$B98D | |||
B981 | CP $06 | |||
B983 | JR Z,$B98D | |||
B985 | INC DE | |||
B986 | INC DE | |||
B987 | INC (IX+$06) | |||
B98A | INC (IX+$06) | |||
B98D | LD L,(IX+$01) | |||
B990 | LD H,(IX+$02) | |||
B993 | ADD HL,DE | |||
B994 | LD (IX+$01),L | |||
B997 | LD (IX+$02),H | |||
B99A | LD A,(IX+$05) | |||
B99D | CP $FF | |||
B99F | JP Z,$BBA7 | |||
B9A2 | CP $11 | |||
B9A4 | JP Z,$BBA7 | |||
B9A7 | LD A,(IX+$06) | |||
B9AA | CP $1E | |||
B9AC | JP Z,$BBA7 | |||
B9AF | CP $FF | |||
B9B1 | JP Z,$BBA7 | |||
B9B4 | PUSH HL | |||
B9B5 | LD DE,$6590 | Tile screen 0 start address | ||
B9B8 | ADD HL,DE | |||
B9B9 | LD A,$64 | |||
B9BB | CP (HL) | |||
B9BC | POP HL | |||
B9BD | JP C,$BAD5 | |||
B9C0 | PUSH HL | |||
B9C1 | LD DE,$6B8A | Tile screen 3 start address | ||
B9C4 | ADD HL,DE | |||
B9C5 | LD A,(HL) | |||
B9C6 | POP HL | |||
B9C7 | INC A | |||
B9C8 | JR Z,$B9DA | |||
B9CA | LD A,($71CF) | |||
B9CD | CP $42 | |||
B9CF | JP NC,$BAD5 | |||
B9D2 | ADD A,$42 | |||
B9D4 | LD ($71CF),A | |||
B9D7 | JP $BAD5 | |||
B9DA | PUSH HL | |||
B9DB | LD DE,$6D88 | Tile screen 4 start address | ||
B9DE | ADD HL,DE | |||
B9DF | LD A,(HL) | |||
B9E0 | POP HL | |||
B9E1 | INC A | |||
B9E2 | JR Z,$B9F9 | |||
B9E4 | LD A,($7346) | get Guard state | ||
B9E7 | CP $09 | |||
B9E9 | JP Z,$BAD5 | |||
B9EC | LD A,$09 | |||
B9EE | LD ($7346),A | set Guard state = $09 | ||
B9F1 | LD B,$01 | |||
B9F3 | CALL $B4DE | Increase PAY value by 100 - Guard killed by weapon | ||
B9F6 | JP $BAD5 | |||
B9F9 | PUSH HL | |||
B9FA | LD HL,$B951 | |||
B9FD | INC (HL) | |||
B9FE | POP HL | |||
B9FF | DEC B | |||
BA00 | JP NZ,$B94F | |||
BA03 | LD DE,$698C | Tile screen 2 start address | ||
BA06 | ADD HL,DE | |||
BA07 | LD A,(HL) | |||
BA08 | CP $C8 | |||
BA0A | JR NC,$BA14 | |||
BA0C | LD B,$14 | |||
BA0E | CALL $9DD9 | Decrease Energy by B = 20 | ||
BA11 | JP $BAD5 | |||
BA14 | LD A,(IX+$00) | |||
BA17 | LD (HL),A | |||
BA18 | XOR $01 | |||
BA1A | LD (IX+$00),A | |||
BA1D | CALL $BBAE | |||
This entry point is used by the routine at BAD5.
|
||||
BA20 | POP BC | |||
BA21 | LD DE,$0007 | |||
BA24 | ADD IX,DE | |||
BA26 | DEC B | |||
BA27 | JP NZ,$B93D | |||
BA2A | LD HL,$6833 | !!MUT-ARG!! | ||
BA2D | LD B,$03 | |||
BA2F | LD C,$03 | |||
BA31 | PUSH HL | |||
BA32 | LD (HL),$01 | |||
BA34 | INC HL | |||
BA35 | DEC C | |||
BA36 | JR NZ,$BA32 | |||
BA38 | POP HL | |||
BA39 | PUSH DE | |||
BA3A | LD DE,$001E | +30 | ||
BA3D | ADD HL,DE | |||
BA3E | POP DE | |||
BA3F | DJNZ $BA2F | |||
BA41 | CALL $B148 | Draw tile map on the screen | ||
BA44 | LD HL,$B1FC | Restore drawing of Dog and Guard tiles | ||
BA47 | LD ($B1FA),HL | |||
BA4A | LD HL,$BAB2 | |||
BA4D | XOR A | |||
BA4E | CP (HL) | |||
BA4F | JP Z,$B77B | => Game loop start | ||
Draw Explosion image on the screen and make some noise
|
||||
BA52 | LD A,$10 | |||
BA54 | OUT ($FE),A | |||
BA56 | DEC (HL) | |||
BA57 | LD HL,$40D0 | !!MUT-ARG!! address on the screen | ||
BA5A | LD DE,$ABE5 | !!MUT-ARG!! Explosion image address | ||
BA5D | LD B,$03 | !!MUT-ARG!! | ||
BA5F | LD C,$03 | !!MUT-ARG!! | ||
BA61 | PUSH HL | |||
BA62 | PUSH DE | |||
BA63 | PUSH HL | |||
BA64 | PUSH BC | |||
BA65 | LD B,$08 | |||
BA67 | LD A,(DE) | |||
BA68 | LD (HL),A | |||
BA69 | INC DE | |||
BA6A | INC H | |||
BA6B | DJNZ $BA67 | |||
BA6D | POP BC | |||
BA6E | POP HL | |||
BA6F | INC HL | |||
BA70 | DEC C | |||
BA71 | JR NZ,$BA63 | |||
BA73 | POP DE | |||
BA74 | LD HL,$0018 | |||
BA77 | ADD HL,DE | |||
BA78 | EX DE,HL | |||
BA79 | POP HL | |||
BA7A | PUSH DE | |||
BA7B | LD DE,$0020 | |||
BA7E | RR H | |||
BA80 | RR H | |||
BA82 | RR H | |||
BA84 | ADD HL,DE | |||
BA85 | RL H | |||
BA87 | RL H | |||
BA89 | RL H | |||
BA8B | POP DE | |||
BA8C | DJNZ $BA5F | |||
BA8E | LD HL,$58D0 | !!MUT-ARG!! | ||
BA91 | LD B,$03 | |||
BA93 | LD DE,$0020 | |||
BA96 | LD C,$03 | !!MUT-ARG!! | ||
BA98 | PUSH HL | |||
BA99 | LD A,(HL) | |||
BA9A | AND $F8 | |||
BA9C | OR $42 | |||
BA9E | LD (HL),A | |||
BA9F | INC HL | |||
BAA0 | DEC C | |||
BAA1 | JR NZ,$BA99 | |||
BAA3 | POP HL | |||
BAA4 | ADD HL,DE | |||
BAA5 | DJNZ $BA96 | |||
BAA7 | LD A,$72 | |||
BAA9 | LD ($58F1),A | !!MUT-ARG!! | ||
BAAC | XOR A | |||
BAAD | OUT ($FE),A | |||
BAAF | JP $B77B | => Game loop start |
|
||||
BAB2 | DEFB $00 | ?? | ||
BAB3 | DEFW $4000,$4020,$4040,$4060 | Screen addresses for every 17 rows | ||
BABB | DEFW $4080,$40A0,$40C0,$40E0 | |||
BAC3 | DEFW $4800,$4820,$4840,$4860 | |||
BACB | DEFW $4880,$48A0,$48C0,$48E0 | |||
BAD3 | DEFW $5000 |
Used by the routine at B937.
|
||||
BAD5 | CALL $FA28 | |||
BAD8 | CP $CA | current room address low byte = $CA ? | ||
BADA | JR NZ,$BAE4 | |||
BADC | LD A,($7185) | |||
BADF | CP $8D | current room address high byte = $8D ? | ||
BAE1 | JP Z,$BBA7 | room 8DCA (room with helicopter) => | ||
BAE4 | LD A,(IX+$00) | |||
BAE7 | CP $D2 | |||
BAE9 | JR Z,$BAF0 | |||
BAEB | CP $D3 | |||
BAED | JP NZ,$BBA7 | |||
BAF0 | LD HL,$BAB2 | |||
BAF3 | XOR A | |||
BAF4 | CP (HL) | |||
BAF5 | JP NZ,$BBA7 | |||
BAF8 | LD (HL),$0A | |||
BAFA | LD L,(IX+$01) | |||
BAFD | LD H,(IX+$02) | |||
BB00 | LD DE,$676F | |||
BB03 | ADD HL,DE | |||
BB04 | LD ($BA2B),HL | |||
BB07 | LD H,$00 | |||
BB09 | LD A,(IX+$05) | |||
BB0C | ADD A,A | * 2 | ||
BB0D | LD L,A | |||
BB0E | LD DE,$5800 | |||
BB11 | ADD HL,HL | |||
BB12 | ADD HL,HL | |||
BB13 | ADD HL,HL | |||
BB14 | ADD HL,HL | * 32 | ||
BB15 | ADD HL,DE | now HL = address in screen attributes | ||
BB16 | LD D,$00 | |||
BB18 | LD E,(IX+$06) | |||
BB1B | ADD HL,DE | |||
BB1C | LD ($BA8F),HL | |||
BB1F | LD ($BB2E),A | |||
BB22 | INC A | |||
BB23 | LD ($BB31),A | |||
BB26 | PUSH IX | |||
BB28 | LD IX,$BAB3 | Address for table of screen addresses for 17 rows | ||
BB2C | LD L,(IX+$0C) | !!MUT-ARG!! | ||
BB2F | LD H,(IX+$0D) | !!MUT-ARG!! | ||
BB32 | POP IX | |||
BB34 | ADD HL,DE | |||
BB35 | LD ($BA58),HL | |||
BB38 | LD HL,($BA8F) | |||
BB3B | LD DE,$0021 | |||
BB3E | ADD HL,DE | |||
BB3F | LD ($BAAA),HL | |||
BB42 | LD B,$03 | |||
BB44 | LD C,$03 | |||
BB46 | EXX | |||
BB47 | LD DE,$ABE5 | Explosion image address | ||
BB4A | EXX | |||
BB4B | LD HL,($BA2B) | |||
BB4E | LD DE,$0000 | |||
BB51 | LD A,(IX+$05) | |||
BB54 | CP $10 | |||
BB56 | JR NZ,$BB59 | |||
BB58 | DEC B | |||
BB59 | CP $00 | |||
BB5B | JR NZ,$BB6A | |||
BB5D | DEC B | |||
BB5E | LD DE,$001E | 30 | ||
BB61 | ADD HL,DE | |||
BB62 | LD DE,$0020 | |||
BB65 | EXX | |||
BB66 | LD DE,$ABFD | |||
BB69 | EXX | |||
BB6A | LD A,(IX+$06) | |||
BB6D | CP $1D | |||
BB6F | JR NZ,$BB72 | |||
BB71 | DEC C | |||
BB72 | CP $00 | |||
BB74 | JR NZ,$BB7C | |||
BB76 | DEC C | |||
BB77 | INC HL | |||
BB78 | INC DE | |||
BB79 | EXX | |||
BB7A | INC DE | |||
BB7B | EXX | |||
BB7C | LD A,B | |||
BB7D | LD ($BA2E),A | |||
BB80 | LD ($BA5E),A | |||
BB83 | LD ($BA92),A | |||
BB86 | LD A,C | |||
BB87 | LD ($BA30),A | |||
BB8A | LD ($BA60),A | |||
BB8D | LD ($BA97),A | |||
BB90 | LD ($BA2B),HL | |||
BB93 | LD HL,($BA58) | |||
BB96 | ADD HL,DE | |||
BB97 | LD ($BA58),HL | |||
BB9A | LD HL,($BA8F) | |||
BB9D | ADD HL,DE | |||
BB9E | LD ($BA8F),HL | |||
BBA1 | EXX | |||
BBA2 | LD ($BA5B),DE | |||
BBA6 | EXX | |||
This entry point is used by the routine at B937.
|
||||
BBA7 | XOR A | |||
BBA8 | LD (IX+$00),A | |||
BBAB | JP $BA20 |
Used by the routine at B937.
|
||||
BBAE | LD L,(IX+$01) | |||
BBB1 | LD H,(IX+$02) | |||
BBB4 | LD DE,$678E | Tile screen 1 start address | ||
BBB7 | ADD HL,DE | |||
BBB8 | LD (HL),$01 | set "need update" mark | ||
BBBA | RET |
BBBB | LD HL,($9C42) | get Ninja position in tilemap | ||
BBBE | LD DE,$678E | Tile screen 1 start address | ||
BBC1 | ADD HL,DE | |||
BBC2 | LD DE,$0018 | 24 | ||
BBC5 | LD A,$01 | "need to update" mark | ||
BBC7 | LD B,$07 | 7 rows | ||
BBC9 | LD C,$06 | 6 columns | ||
BBCB | LD (HL),A | set the flag | ||
BBCC | INC HL | |||
BBCD | DEC C | |||
BBCE | JR NZ,$BBCB | continue by columns | ||
BBD0 | ADD HL,DE | next row | ||
BBD1 | DJNZ $BBC9 | continue by rows | ||
BBD3 | RET |
|
||||
BBD4 | CALL $BBDF | Read Input | ||
BBD7 | BIT 4,A | check FIRE bit | ||
BBD9 | JP NZ,$B8D0 | => Update Ninja on tilemap | ||
BBDC | JP $C226 | => Ninja standing |
BBDF | PUSH HL | |||
BBE0 | LD HL,$7222 | |||
BBE3 | XOR A | |||
BBE4 | CP (HL) | Input method = Keyboard/Protek? | ||
BBE5 | JR Z,$BBEE | |||
BBE7 | IN A,($1F) | read joystick port | ||
BBE9 | LD ($7232),A | store input bits | ||
BBEC | POP HL | |||
BBED | RET | |||
BBEE | PUSH BC | |||
BBEF | LD B,$05 | |||
BBF1 | LD C,$00 | |||
BBF3 | INC HL | |||
BBF4 | LD A,(HL) | |||
BBF5 | IN A,($FE) | |||
BBF7 | INC HL | |||
BBF8 | AND (HL) | |||
BBF9 | INC HL | |||
BBFA | JR NZ,$BC07 | |||
BBFC | LD A,(HL) | |||
BBFD | ADD A,A | |||
BBFE | ADD A,A | |||
BBFF | ADD A,A | * 8 | ||
BC00 | ADD A,$C1 | |||
BC02 | LD ($BC06),A | |||
BC05 | SET 1,C | |||
BC07 | DJNZ $BBF3 | |||
BC09 | LD A,C | |||
BC0A | POP BC | |||
BC0B | JR $BBE9 | => store input bits and RET |
Used by the routine at BEB3.
|
||||
Prepare screen background for title picture
|
||||
BC0D | LD SP,$6257 | !!MUT-ARG!! | ||
BC10 | EXX | |||
BC11 | POP HL | |||
BC12 | EXX | |||
This entry point is used by the routine at F9E7.
|
||||
BC13 | LD HL,$E5DC | Melody start address | ||
BC16 | LD ($E442),HL | set melody current address | ||
BC19 | LD HL,$4000 | |||
BC1C | LD BC,$1000 | |||
BC1F | LD DE,$4001 | |||
BC22 | LD (HL),$00 | |||
BC24 | LDIR | clear screen | ||
BC26 | LD C,$00 | |||
BC28 | PUSH HL | |||
BC29 | LD B,$04 | |||
BC2B | LD (HL),$AA | |||
BC2D | INC H | |||
BC2E | LD (HL),$55 | |||
BC30 | INC H | |||
BC31 | DJNZ $BC2B | |||
BC33 | POP HL | |||
BC34 | INC HL | |||
BC35 | DEC C | |||
BC36 | JR NZ,$BC28 | |||
Show the title picture
|
||||
BC38 | CALL $6289 | Show title picture (two ninjas) | ||
This entry point is used by the routine at DF60.
|
||||
BC3B | CALL $AEF0 | |||
BC3E | LD HL,$AD52 | |||
BC41 | LD B,$03 | |||
BC43 | LD (HL),$30 | |||
BC45 | INC HL | |||
BC46 | DJNZ $BC43 | |||
BC48 | LD HL,$B0E8 | address of string 10 spaces | ||
BC4B | LD B,$0A | |||
BC4D | LD (HL),$20 | |||
BC4F | INC HL | |||
BC50 | DJNZ $BC4D | |||
BC52 | JP $DF37 |
|
||||
Increase Energy if needed
|
||||
BC55 | LD HL,$B5C5 | Ninja standing counter address | ||
BC58 | DEC (HL) | decrease counter | ||
BC59 | JR NZ,$BC76 | |||
BC5B | LD (HL),$02 | reload the counter | ||
BC5D | LD A,($749C) | get Energy | ||
BC60 | CP $13 | energy at MAX? | ||
BC62 | JR NZ,$BC6B | |||
BC64 | LD A,($749D) | get Energy lower | ||
BC67 | CP $01 | |||
BC69 | JR Z,$BC76 | |||
BC6B | CALL $B83C | Increase Energy a bit | ||
BC6E | LD B,$01 | |||
BC70 | CALL $9DD9 | Decrease Energy by B | ||
BC73 | CALL $B83C | Increase Energy a bit | ||
Move the head (idle animation)
|
||||
BC76 | LD HL,$B2FD | address for head movement counter | ||
BC79 | INC (HL) | increase counter | ||
BC7A | JR NZ,$BC98 | not zero => skip head animation | ||
BC7C | LD (HL),$BE | reset counter (how often head moves) | ||
BC7E | LD A,($D48E) | |||
BC81 | XOR $F4 | toggle tile | ||
BC83 | LD ($D48E),A | set head tile | ||
BC86 | LD A,($D48F) | |||
BC89 | XOR $F4 | toggle between $01 and $F5 tiles | ||
BC8B | LD ($D48F),A | set head tile for Ninja/Guard standing sprite | ||
BC8E | LD A,($D495) | |||
BC91 | XOR $F2 | toggle tile | ||
BC93 | LD ($D495),A | update the tile | ||
BC96 | JR $BC9D | |||
BC98 | LD A,$D2 | |||
BC9A | CP (HL) | |||
BC9B | JR Z,$BC7E | |||
Check for suicide key combination
|
||||
BC9D | LD A,$FE | |||
BC9F | IN A,($FE) | |||
BCA1 | BIT 0,A | check for CAPS SHIFT key | ||
BCA3 | JR NZ,$BCB6 | not pressed => skip suicide | ||
BCA5 | LD A,$7F | |||
BCA7 | IN A,($FE) | |||
BCA9 | BIT 0,A | check for "1" key | ||
BCAB | JR NZ,$BCB6 | not pressed => skip suicide | ||
BCAD | LD HL,$BEEF | "SEPUKU" / "MISSION ABORTED" | ||
BCB0 | LD ($BEB4),HL | set two-line Game Over message | ||
BCB3 | JP $BE5A | => Ninja sit, and then fall and DIE | ||
BCB6 | CALL $C5A3 | Check for falling | ||
BCB9 | JP Z,$C643 | => Ninja falling | ||
BCBC | LD HL,$B595 | |||
BCBF | XOR A | |||
BCC0 | CP (HL) | |||
BCC1 | JR Z,$BCC4 | |||
BCC3 | DEC (HL) | |||
BCC4 | CALL $BBDF | Read Input | ||
BCC7 | BIT 4,A | check FIRE bit | ||
BCC9 | JP Z,$BDDD | |||
FIRE pressed, ninja standing
|
||||
BCCC | LD HL,$B595 | action cooldown counter | ||
BCCF | XOR A | |||
BCD0 | CP (HL) | check if counter is 0 | ||
BCD1 | JP NZ,$BDB2 | not zero => | ||
BCD4 | LD (HL),$05 | reset cooldown (5 ticks until next action) | ||
BCD6 | LD A,($B84C) | get Object tile | ||
BCD9 | CP $63 | |||
BCDB | JR Z,$BD33 | => execute the object procedure | ||
BCDD | LD B,A | |||
BCDE | LD HL,($9C42) | get Ninja position in tilemap | ||
BCE1 | LD DE,$6669 | $6669 = $6590 (Tile screen 0) + 217 | ||
BCE4 | ADD HL,DE | |||
BCE5 | LD A,$9C | |||
BCE7 | CP (HL) | |||
BCE8 | JR NZ,$BCF3 | |||
BCEA | LD A,($B5C6) | get Time mode | ||
BCED | CP $02 | BOMB ticking mode? | ||
BCEF | JR Z,$BD37 | yes => | ||
BCF1 | JR $BCF7 | |||
BCF3 | XOR A | |||
BCF4 | CP B | Object tile = nothing? | ||
BCF5 | JR Z,$BD37 | nothing => | ||
BCF7 | LD A,($B850) | get HELD tile | ||
BCFA | LD DE,($B84A) | get Object address + 4 | ||
BCFE | LD (DE),A | set Object tile | ||
BCFF | DEC DE | |||
BD00 | CP $00 | held nothing? | ||
BD02 | JR Z,$BD08 | nothing => | ||
BD04 | SUB $C6 | |||
BD06 | SRL A | |||
BD08 | LD (DE),A | |||
BD09 | LD A,$09 | |||
BD0B | LD ($D28A),A | set ?? in Object #7 in Table of objects D256 | ||
BD0E | LD A,B | |||
BD0F | LD ($BD7A),A | |||
BD12 | CP $D4 | |||
BD14 | JP NZ,$B8D0 | => Update Ninja on tilemap | ||
BD17 | LD HL,$B5C6 | Time mode address | ||
BD1A | XOR A | 0 = time ticking | ||
BD1B | CP (HL) | |||
BD1C | JP NZ,$B8D0 | => Update Ninja on tilemap | ||
BD1F | LD (HL),$01 | set Time mode = time stopped | ||
BD21 | LD HL,$0190 | |||
BD24 | CALL $B371 | Play melody | ||
BD27 | LD B,$32 | 50 | ||
BD29 | CALL $B4DE | Increase PAY value by 5000 | ||
BD2C | JP $B8D0 | => Update Ninja on tilemap |
|
||||
BD2F | DEFM "BOMB" |
Used by the routine at BC55.
|
||||
BD33 | LD HL,($B84D) | get object procedure address | ||
BD36 | JP (HL) | execute the object procedure |
Used by the routine at BC55.
|
||||
BD37 | LD HL,$A39F | |||
BD3A | XOR A | |||
BD3B | CP (HL) | |||
BD3C | JP NZ,$BDB2 | |||
BD3F | LD A,($B850) | get HELD tile | ||
BD42 | CP $00 | nothing? | ||
BD44 | JP Z,$BDB2 | |||
BD47 | CP $D4 | |||
BD49 | JP Z,$BDB2 | |||
BD4C | CP $D6 | BOMB? | ||
BD4E | JP Z,$BDB2 | |||
BD51 | LD (HL),A | |||
BD52 | LD HL,($9C42) | get Ninja position in tilemap | ||
BD55 | LD DE,$003D | 61 | ||
BD58 | ADD HL,DE | |||
BD59 | LD A,($9C41) | get Ninja X | ||
BD5C | INC A | |||
BD5D | LD B,A | |||
BD5E | LD A,($7239) | get Ninja direction | ||
BD61 | DEC A | |||
BD62 | JR NZ,$BD6A | |||
BD64 | INC B | |||
BD65 | INC B | |||
BD66 | INC B | |||
BD67 | INC HL | |||
BD68 | INC HL | |||
BD69 | INC HL | |||
BD6A | LD A,B | |||
BD6B | LD ($A3A5),A | |||
BD6E | LD ($A3A0),HL | |||
BD71 | LD A,($9C40) | get Ninja Y | ||
BD74 | ADD A,$02 | |||
BD76 | LD ($A3A4),A | |||
BD79 | LD A,$C8 | !!MUT-ARG!! | ||
BD7B | LD ($A39F),A | |||
BD7E | XOR A | |||
BD7F | LD ($BD7A),A | |||
BD82 | LD B,$03 | |||
BD84 | LD A,($7239) | get Ninja direction | ||
BD87 | CP $00 | left? | ||
BD89 | JR Z,$BD8D | left => | ||
BD8B | INC B | |||
BD8C | INC B | |||
BD8D | LD A,B | |||
BD8E | LD ($A3A3),A | |||
BD91 | LD A,($7232) | get Input bits | ||
BD94 | BIT 3,A | check UP bit | ||
BD96 | JR Z,$BD9B | |||
BD98 | DEC B | |||
BD99 | DEC B | |||
BD9A | DEC B | |||
BD9B | BIT 2,A | check DOWN bit | ||
BD9D | JR Z,$BDA2 | |||
BD9F | INC B | |||
BDA0 | INC B | |||
BDA1 | INC B | |||
BDA2 | LD A,B | |||
BDA3 | LD ($A3A2),A | |||
BDA6 | CALL $F9F9 | |||
BDA9 | LD DE,$D504 | Sprite Ninja/Guard punching | ||
BDAC | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
|
||||
BDAF | JP $C226 | => Ninja standing |
BDB2 | LD HL,($9C42) | get Ninja position in tilemap | ||
BDB5 | LD DE,$6DAA | $6DAA = $6D88 (Tile screen 4) + 34 for right | ||
BDB8 | LD A,($7239) | get Ninja direction | ||
BDBB | CP $01 | right? | ||
BDBD | JR Z,$BDC2 | right => | ||
BDBF | LD DE,$6DA7 | $6DA7 = $6D88 (Tile screen 4) + 31 for left | ||
BDC2 | ADD HL,DE | now HL = address in Guard tilemap | ||
BDC3 | LD A,(HL) | get tile | ||
BDC4 | INC A | $FF ? | ||
BDC5 | JR Z,$BDD4 | $FF => | ||
BDC7 | LD A,$09 | |||
BDC9 | LD ($7346),A | set Guard state = $09 | ||
BDCC | CALL $B596 | |||
BDCF | LD B,$05 | 5 hundreds | ||
BDD1 | CALL $B4DE | Increase PAY value by 500 - Guard killed by punch/kick | ||
BDD4 | LD HL,$BBD4 | Movement handler address | ||
BDD7 | LD DE,$D504 | Sprite Ninja/Guard punching | ||
BDDA | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
Used by the routine at BC55.
|
||||
BDDD | BIT 3,A | |||
BDDF | JP Z,$BFBA | |||
BDE2 | LD HL,$65AE | |||
BDE5 | LD DE,($9C42) | get Ninja position in tilemap | ||
BDE9 | ADD HL,DE | |||
BDEA | LD A,$DA | |||
BDEC | CP (HL) | |||
BDED | JP NZ,$BF7B | |||
BDF0 | LD A,$0B | |||
BDF2 | LD ($7343),A | set counter = 11 | ||
BDF5 | LD HL,$65BC | |||
BDF8 | LD ($BE0E),HL | |||
BDFB | LD ($BE1D),HL | |||
BDFE | LD HL,$68BC | |||
BE01 | LD ($BA2B),HL | |||
BE04 | LD HL,$BE0D | Movement handler | ||
BE07 | LD DE,$D486 | Sprite Ninja/Guard standing | ||
BE0A | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
|
||||
BE0D | LD HL,$65B1 | !!MUT-ARG!! | ||
BE10 | LD A,$01 | |||
BE12 | LD (HL),A | |||
BE13 | DEC HL | |||
BE14 | LD ($BE0E),HL | |||
BE17 | LD DE,$01FF | 511 | ||
BE1A | ADD HL,DE | |||
BE1B | LD (HL),A | |||
BE1C | LD HL,$65C7 | !!MUT-ARG!! | ||
BE1F | LD (HL),A | |||
BE20 | INC HL | |||
BE21 | LD ($BE1D),HL | |||
BE24 | LD DE,$01FD | 509 | ||
BE27 | ADD HL,DE | |||
BE28 | LD (HL),A | |||
BE29 | LD HL,$7343 | counter address | ||
BE2C | DEC (HL) | decrease counter | ||
BE2D | JP NZ,$B8D0 | => Update Ninja on tilemap | ||
BE30 | LD (HL),$14 | reset the counter | ||
BE32 | LD HL,$675A | |||
BE35 | LD DE,$6958 | |||
BE38 | LD B,$0A | 10 | ||
BE3A | LD (HL),A | |||
BE3B | LD (DE),A | |||
BE3C | INC DE | |||
BE3D | INC HL | |||
BE3E | DJNZ $BE3A | |||
BE40 | LD HL,$0110 | |||
BE43 | LD ($9C42),HL | set Ninja position in tilemap | ||
BE46 | LD HL,$6860 | |||
BE49 | LD DE,$6861 | |||
BE4C | LD BC,$00D1 | 210 - 1 = 7 rows | ||
BE4F | LDIR | |||
BE51 | LD HL,$C094 | Movement handler (helicopter?) | ||
BE54 | LD DE,$C0E6 | Empty sprite | ||
BE57 | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
Used by the routine at BC55.
|
||||
BE5A | LD HL,$BE63 | Movement handler: Ninja dead | ||
BE5D | LD DE,$D558 | Sprite Ninja sitting | ||
BE60 | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
Used by the routine at BE71.
|
||||
BE63 | LD A,$C9 | command = $C9 RET | ||
BE65 | LD ($9DD9),A | set command = RET = disable Energy decrease | ||
BE68 | LD HL,$BEB3 | Movement handler: Game Over | ||
BE6B | LD DE,$A0B5 | Sprite Ninja dead | ||
BE6E | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
Used by the routine at B77B.
|
||||
BE71 | LD A,($B5C6) | get Time mode | ||
BE74 | CP $02 | BOMB ticking mode? | ||
BE76 | JR Z,$BE80 | yes => | ||
BE78 | LD HL,$BF35 | "TIME OUT" / "MISSION TERMINATED" | ||
BE7B | LD ($BEB4),HL | set two-line Game Over message | ||
BE7E | JR $BE63 | => Ninja dead | ||
BOMB time is out, BOMB explodes
|
||||
BE80 | LD B,$06 | |||
BE82 | LD IX,$0000 | |||
BE86 | LD C,$00 | |||
BE88 | LD HL,$5821 | |||
BE8B | LD A,(IX+$00) | |||
BE8E | OUT ($FE),A | |||
BE90 | INC IX | |||
BE92 | PUSH BC | |||
BE93 | LD C,$11 | 17 | ||
BE95 | LD B,$1E | 30 | ||
BE97 | INC (HL) | |||
BE98 | INC HL | |||
BE99 | DJNZ $BE97 | |||
BE9B | INC HL | |||
BE9C | INC HL | |||
BE9D | DEC C | |||
BE9E | JR NZ,$BE95 | |||
BEA0 | POP BC | |||
BEA1 | DEC C | |||
BEA2 | JR NZ,$BE88 | |||
BEA4 | DJNZ $BE86 | |||
BEA6 | XOR A | |||
BEA7 | OUT ($FE),A | |||
BEA9 | PUSH HL | |||
Saboteur is dead
|
||||
BEAA | POP HL | |||
BEAB | LD HL,$BF58 | "SABOTEUR DEAD" / "MISSION FAILURE" | ||
BEAE | LD ($BEB4),HL | set two-line Game Over message | ||
BEB1 | JR $BE63 | => Ninja dead |
BEB3 | LD HL,$BEEF | !!MUT-ARG!! two-line message address | ||
BEB6 | LD DE,$4068 | |||
BEB9 | LD C,$0F | |||
BEBB | CALL $AED1 | Print string 1st line | ||
BEBE | LD DE,$40A6 | |||
BEC1 | LD C,$14 | |||
BEC3 | CALL $AED1 | Print string 2nd line | ||
BEC6 | LD HL,$5868 | |||
BEC9 | LD B,$0F | |||
BECB | LD (HL),$0F | |||
BECD | INC HL | |||
BECE | DJNZ $BECB | |||
BED0 | LD HL,$58A6 | |||
BED3 | LD B,$14 | |||
BED5 | LD (HL),$0F | |||
BED7 | INC HL | |||
BED8 | DJNZ $BED5 | |||
BEDA | CALL $F9B9 | Pause, then wait for any key pressed | ||
BEDD | NOP | |||
BEDE | NOP | |||
BEDF | NOP | !!MUT-CMD!! | ||
BEE0 | NOP | |||
BEE1 | NOP | |||
BEE2 | NOP | |||
BEE3 | NOP | |||
BEE4 | NOP | |||
BEE5 | NOP | |||
BEE6 | NOP | |||
BEE7 | LD A,$0A | "LD A,(BC)" instruction code | ||
BEE9 | LD ($BEDF),A | |||
BEEC | JP $BC0D | => Title picture and music, then go to Main menu |
|
||||
BEEF | DEFM " SEPUKU " | |||
BEFE | DEFM " MISSION ABORTED " | |||
BF12 | DEFM " ESCAPE " | |||
BF21 | DEFM " MISSION SUCCESSFUL " | |||
BF35 | DEFM " TIME OUT " | |||
BF44 | DEFM " MISSION TERMINATED " | |||
BF58 | DEFM " SABOTEUR DEAD " | |||
BF67 | DEFM " MISSION FAILURE " |
Used by the routine at BDDD.
|
||||
BF7B | LD HL,$6592 | $6592 = $6590 (Tile screen 0) + 2 | ||
BF7E | ADD HL,DE | |||
BF7F | LD A,$64 | |||
BF81 | CP (HL) | |||
BF82 | JP C,$C16E | => Object procedure | ||
BF85 | INC HL | |||
BF86 | CP (HL) | |||
BF87 | JP C,$C16E | => Update Ninja on tilemap | ||
BF8A | LD A,$03 | |||
BF8C | LD ($7343),A | set counter = 3 | ||
BF8F | LD A,($7239) | get Ninja direction | ||
BF92 | CP $00 | left? | ||
BF94 | LD A,($7232) | get Input bits | ||
BF97 | JR Z,$BFA0 | |||
BF99 | BIT 0,A | check RIGHT bit | ||
BF9B | CALL NZ,$C4E8 | |||
BF9E | JR $BFA5 | |||
BFA0 | BIT 1,A | check LEFT bit | ||
BFA2 | CALL NZ,$C4E8 | |||
BFA5 | LD HL,$C339 | Movement handler: Ninja jumping | ||
BFA8 | LD A,$02 | |||
BFAA | LD ($7343),A | set counter = 2 | ||
BFAD | LD DE,$D4B0 | Sprite Ninja/Guard jumping |
BFB0 | LD ($B8CE),HL | |||
BFB3 | LD ($7186),DE | set Ninja sprite address = DE | ||
BFB7 | JP $B8D0 | => Update Ninja on tilemap |
Used by the routine at BDDD.
|
||||
BFBA | BIT 2,A | |||
BFBC | JP Z,$C13D | |||
BFBF | LD HL,($9C42) | get Ninja position in tilemap | ||
BFC2 | LD DE,$6664 | |||
BFC5 | ADD HL,DE | |||
BFC6 | CALL $C392 | |||
BFC9 | JP Z,$C12E | => Ninja on ladder | ||
This entry point is used by the routine at C5C6.
|
||||
BFCC | LD HL,$C22F | Movement handler: Ninja sitting | ||
BFCF | LD DE,$D558 | Sprite Ninja sitting | ||
BFD2 | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
Used by the routine at C094.
|
||||
BFD5 | LD B,$0A | |||
BFD7 | CALL $B4DE | Increase PAY value by 1000 - Escape by Helicopter | ||
BFDA | LD A,($BD7A) | |||
BFDD | CP $D4 | |||
BFDF | JR NZ,$C04A | |||
BFE1 | LD B,$32 | |||
BFE3 | CALL $B4DE | Increase PAY value by 5000 | ||
BFE6 | LD HL,$4000 | Screen start address | ||
BFE9 | LD DE,$4001 | |||
BFEC | LD BC,$1800 | |||
BFEF | LD (HL),$00 | |||
BFF1 | LDIR | Clear whole screen | ||
BFF3 | LD BC,$02FF | |||
BFF6 | LD (HL),$0F | |||
BFF8 | LDIR | Clear all attributes | ||
BFFA | LD HL,$C062 | Messages address | ||
BFFD | LD DE,$4089 | Screen address | ||
C000 | LD C,$0E | |||
C002 | CALL $AED1 | Print string "DISK RETRIEVED" | ||
C005 | LD DE,$4828 | |||
C008 | LD C,$12 | |||
C00A | CALL $AED1 | Print string "DISK BONUS: $05000" | ||
C00D | LD DE,$4865 | |||
C010 | LD C,$05 | |||
C012 | CALL $AED1 | Print string "LEVEL" | ||
C015 | LD DE,$5062 | |||
C018 | LD C,$0D | |||
C01A | CALL $AED1 | Print string "TOTAL PAY : $" | ||
C01D | LD DE,$486D | |||
C020 | LD HL,$C075 | Messages address | ||
C023 | LD C,$0D | |||
C025 | CALL $AED1 | Print string "BONUS: $05000" | ||
C028 | LD DE,$4875 | |||
C02B | LD HL,$E388 | |||
C02E | LD C,$03 | |||
C030 | CALL $AED1 | Print string | ||
C033 | LD A,($E38B) | |||
C036 | LD B,A | |||
C037 | CALL $B4DE | Increase PAY value by B * 100 | ||
C03A | LD DE,$486B | |||
C03D | LD HL,$E1EC | Skill level address | ||
C040 | LD C,$01 | |||
C042 | CALL $AED1 | Print skill level digit | ||
C045 | LD A,$14 | "INC D" instruction code | ||
C047 | LD ($BEDF),A | |||
C04A | LD A,($B5C6) | get Time mode | ||
C04D | CP $02 | BOMB ticking mode? | ||
C04F | JR NZ,$C056 | no => | ||
C051 | LD B,$64 | 100 | ||
C053 | CALL $B4DE | Increase PAY value by 10000 - Escape with Disk and Bomb | ||
C056 | LD HL,$BF12 | "ESCAPE" / "MISSION SUCCESSFUL" | ||
C059 | LD ($BEB4),HL | set two-line Game Over message | ||
C05C | NOP | |||
C05D | NOP | |||
C05E | NOP | |||
C05F | JP $BEB3 | => Game Over |
|
||||
C062 | DEFM "DISK RETRIEVED" | |||
C070 | DEFM "DISK " | |||
C075 | DEFM "BONUS: $05000" | |||
C082 | DEFM "LEVEL" | |||
C087 | DEFM "TOTAL PAY : $" |
|
||||
C094 | LD HL,$7343 | counter address | ||
C097 | DEC (HL) | decrease counter | ||
C098 | JP Z,$BFD5 | zero => Escaped; final messages, then Game Over | ||
C09B | LD A,$10 | |||
C09D | OUT ($FE),A | |||
C09F | LD HL,$4047 | |||
C0A2 | LD DE,$4027 | |||
C0A5 | LD C,$0F | |||
C0A7 | PUSH HL | |||
C0A8 | PUSH DE | |||
C0A9 | LD B,$08 | |||
C0AB | PUSH HL | |||
C0AC | PUSH DE | |||
C0AD | PUSH BC | |||
C0AE | LD BC,$0011 | |||
C0B1 | LDIR | |||
C0B3 | POP BC | |||
C0B4 | POP DE | |||
C0B5 | POP HL | |||
C0B6 | INC D | |||
C0B7 | INC H | |||
C0B8 | DJNZ $C0AB | |||
C0BA | POP DE | |||
C0BB | POP HL | |||
C0BC | PUSH BC | |||
C0BD | LD BC,$0020 | |||
C0C0 | RR H | |||
C0C2 | RR H | |||
C0C4 | RR H | |||
C0C6 | ADD HL,BC | |||
C0C7 | RL H | |||
C0C9 | RL H | |||
C0CB | RL H | |||
C0CD | EX DE,HL | |||
C0CE | RR H | |||
C0D0 | RR H | |||
C0D2 | RR H | |||
C0D4 | ADD HL,BC | |||
C0D5 | RL H | |||
C0D7 | RL H | |||
C0D9 | RL H | |||
C0DB | EX DE,HL | |||
C0DC | POP BC | |||
C0DD | DEC C | |||
C0DE | JR NZ,$C0A7 | |||
C0E0 | XOR A | |||
C0E1 | OUT ($FE),A | |||
C0E3 | JP $B8D0 | => Update Ninja on tilemap |
|
||||
C0E6 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
C0EE | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
C0F6 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
C0FE | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
C106 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
C10E | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
C116 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
C11E | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF | |||
C126 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF |
Used by the routine at BFBA.
|
||||
C12E | LD HL,$C3D9 | Movement handler for Ninja on ladder | ||
C131 | LD ($B8CE),HL | |||
C134 | LD HL,$D52E | Sprite Ninja on ladder | ||
C137 | LD ($7186),HL | set Ninja sprite address | ||
C13A | JP $C498 | => Move down one tile |
Used by the routine at BFBA.
|
||||
C13D | BIT 1,A | |||
C13F | JR Z,$C154 | |||
C141 | LD HL,$7239 | Ninja direction address | ||
C144 | XOR A | |||
C145 | CP (HL) | left? | ||
C146 | JR Z,$C14B | |||
C148 | DEC (HL) | |||
C149 | JR $C16E | => Update Ninja on tilemap | ||
This entry point is used by the routine at C3D9.
|
||||
C14B | LD HL,$C24B | Movement handler address | ||
C14E | LD DE,$D3DE | Sprite Ninja/Guard walking 1 | ||
C151 | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE | ||
C154 | BIT 0,A | |||
C156 | JR Z,$C16E | |||
C158 | LD HL,$7239 | Ninja direction address | ||
C15B | XOR A | |||
C15C | CP (HL) | left? | ||
C15D | JR NZ,$C162 | |||
C15F | INC (HL) | |||
C160 | JR $C16E | => Update Ninja on tilemap | ||
This entry point is used by the routine at C3D9.
|
||||
C162 | LD HL,$C1B6 | Movement handler address | ||
C165 | LD ($B8CE),HL | |||
C168 | LD HL,$D3DE | Sprite Ninja/Guard walking 1 | ||
C16B | LD ($7186),HL | set Ninja sprite address | ||
C16E | JP $B8D0 | => Update Ninja on tilemap |
|
||||
C171 | DEFB $3A,$40,$9C,$FE,$00,$CA,$26,$C2 | |||
C179 | DEFB $3A,$40,$9C,$3D,$32,$40,$9C,$2A | |||
C181 | DEFB $42,$9C,$11,$E2,$FF,$19,$22,$42 | |||
C189 | DEFB $9C,$CD,$DF,$BB,$CB,$5F,$20,$DD | |||
C191 | DEFB $C3,$26,$C2,$3A,$40,$9C,$FE,$0A | |||
C199 | DEFB $CA,$26,$C2,$3A,$40,$9C,$3C,$32 | |||
C1A1 | DEFB $40,$9C,$2A,$42,$9C,$11,$1E,$00 | |||
C1A9 | DEFB $19,$22,$42,$9C,$CD,$DF,$BB,$CB | |||
C1B1 | DEFB $57,$20,$BA,$18,$70 |
|
||||
C1B6 | LD A,($9C41) | get Ninja X | ||
C1B9 | CP $18 | 24 ? | ||
C1BB | JP Z,$C2FA | => Going to room at Right | ||
C1BE | LD HL,($9C42) | get Ninja position in tilemap | ||
C1C1 | LD DE,$6648 | |||
C1C4 | ADD HL,DE | |||
C1C5 | LD A,$64 | |||
C1C7 | CP (HL) | |||
C1C8 | JR NC,$C1DA | |||
C1CA | LD HL,$9C40 | Ninja Y address | ||
C1CD | DEC (HL) | one row up | ||
C1CE | LD HL,($9C42) | get Ninja position in tilemap | ||
C1D1 | LD DE,$FFE2 | -30 | ||
C1D4 | ADD HL,DE | |||
C1D5 | LD ($9C42),HL | set Ninja position in tilemap | ||
C1D8 | JR $C20D | |||
C1DA | LD DE,$FFE3 | -29 | ||
C1DD | ADD HL,DE | |||
C1DE | LD A,$64 | |||
C1E0 | CP (HL) | |||
C1E1 | JR NC,$C1EE | |||
C1E3 | CALL $BBDF | Read Input | ||
C1E6 | BIT 0,A | check RIGHT bit | ||
C1E8 | JP Z,$C226 | => Ninja standing | ||
C1EB | JP $B8D0 | => Update Ninja on tilemap | ||
C1EE | LD DE,$003B | +59 | ||
C1F1 | ADD HL,DE | |||
C1F2 | CP (HL) | |||
C1F3 | JR C,$C20D | |||
C1F5 | DEC HL | |||
C1F6 | CP (HL) | |||
C1F7 | JR C,$C20D | |||
C1F9 | LD HL,($9C42) | get Ninja position in tilemap | ||
C1FC | LD DE,$001E | +30 | ||
C1FF | ADD HL,DE | |||
C200 | LD ($9C42),HL | set Ninja position in tilemap | ||
C203 | LD HL,$9C40 | Ninja Y address | ||
C206 | INC (HL) | one row down | ||
C207 | LD A,(HL) | |||
C208 | CP $0A | at the room bottom? | ||
C20A | JP Z,$C604 | yes => Going to room Down from current | ||
C20D | LD HL,$9C41 | Ninja X address | ||
C210 | INC (HL) | |||
C211 | LD HL,($9C42) | get Ninja position in tilemap | ||
C214 | INC HL | move one tile to right | ||
C215 | LD ($9C42),HL | set Ninja position in tilemap | ||
C218 | CALL $C5A3 | Check for falling | ||
C21B | JP Z,$C643 | => Ninja falling | ||
C21E | CALL $BBDF | Read Input | ||
C221 | BIT 0,A | check RIGHT bit | ||
C223 | JP NZ,$C2BB |
C226 | LD HL,$BC55 | Movement handler: Ninja standing | ||
C229 | LD DE,$D486 | Sprite Ninja/Guard standing | ||
C22C | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
|
||||
C22F | CALL $BBDF | Read Input | ||
C232 | BIT 2,A | check DOWN bit | ||
C234 | JR NZ,$C239 | still pressed => | ||
C236 | JP $C226 | DOWN key released => stand up | ||
C239 | LD HL,($9C42) | get Ninja position in tilemap | ||
C23C | LD DE,$703C | |||
C23F | ADD HL,DE | |||
C240 | LD A,$0C | |||
C242 | CP (HL) | |||
C243 | LD B,$02 | |||
C245 | CALL Z,$9DD9 | => Decrease Energy by B | ||
C248 | JP $C16E | => Object procedure |
|
||||
C24B | LD A,($9C41) | get Ninja X | ||
C24E | CP $00 | at very left? | ||
C250 | JP Z,$C319 | => Going to room at Left | ||
C253 | LD HL,($9C42) | get Ninja position in tilemap | ||
C256 | LD DE,$6645 | = $6590 (Tile screen 0) + 181 | ||
C259 | ADD HL,DE | |||
C25A | LD A,$64 | |||
C25C | CP (HL) | |||
C25D | JR NC,$C26F | |||
C25F | LD HL,$9C40 | Ninja Y address | ||
C262 | DEC (HL) | moving one row up | ||
C263 | LD HL,($9C42) | get Ninja position in tilemap | ||
C266 | LD DE,$FFE2 | -30 | ||
C269 | ADD HL,DE | one row up | ||
C26A | LD ($9C42),HL | set Ninja position in tilemap | ||
C26D | JR $C2A2 | |||
C26F | LD DE,$FFE1 | -31 | ||
C272 | ADD HL,DE | |||
C273 | LD A,$64 | |||
C275 | CP (HL) | |||
C276 | JR NC,$C283 | |||
C278 | CALL $BBDF | Read Input | ||
C27B | BIT 1,A | check LEFT bit | ||
C27D | JP Z,$C226 | => Ninja standing | ||
C280 | JP $B8D0 | => Update Ninja on tilemap | ||
C283 | LD DE,$003D | +61 | ||
C286 | ADD HL,DE | |||
C287 | CP (HL) | |||
C288 | JR C,$C2A2 | |||
C28A | INC HL | |||
C28B | CP (HL) | |||
C28C | JR C,$C2A2 | |||
C28E | LD HL,($9C42) | get Ninja position in tilemap | ||
C291 | LD DE,$001E | +30 | ||
C294 | ADD HL,DE | |||
C295 | LD ($9C42),HL | set Ninja position in tilemap | ||
C298 | LD HL,$9C40 | Ninja Y address | ||
C29B | INC (HL) | moving one row down | ||
C29C | LD A,(HL) | |||
C29D | CP $0A | at room bottom? | ||
C29F | JP Z,$C604 | => Going to room Down from current | ||
C2A2 | LD HL,$9C41 | Ninja X address | ||
C2A5 | DEC (HL) | moving one tile left | ||
C2A6 | LD HL,($9C42) | get Ninja position in tilemap | ||
C2A9 | DEC HL | moving one tile left | ||
C2AA | LD ($9C42),HL | set Ninja position in tilemap | ||
C2AD | CALL $C5A3 | Check for falling | ||
C2B0 | JP Z,$C643 | => Ninja falling | ||
C2B3 | CALL $BBDF | Read Input | ||
C2B6 | BIT 1,A | check LEFT bit | ||
C2B8 | JP Z,$C226 | => Ninja standing | ||
LEFT or RIGHT key pressed
|
||||
C2BB | BIT 3,A | check for UP bit | ||
C2BD | LD A,$07 | |||
C2BF | LD ($7343),A | set counter = 7 | ||
C2C2 | CALL NZ,$C4E8 | |||
C2C5 | LD A,($733A) | |||
C2C8 | INC A | next walking phase | ||
C2C9 | AND $03 | 0..3 | ||
C2CB | LD ($733A),A | |||
C2CE | ADD A,A | * 2 | ||
C2CF | LD L,A | |||
C2D0 | LD A,$00 | |||
C2D2 | LD ($A39E),A | |||
C2D5 | JR NZ,$C2E8 | |||
C2D7 | INC A | |||
C2D8 | LD ($A39E),A | |||
C2DB | LD C,$FE | |||
C2DD | XOR A | |||
C2DE | LD D,$10 | |||
C2E0 | LD B,$32 | |||
C2E2 | OUT (C),D | |||
C2E4 | OUT (C),A | |||
C2E6 | DJNZ $C2E2 | |||
C2E8 | LD H,$00 | |||
C2EA | LD DE,$733B | Table of four Ninja/Guard walking sprites | ||
C2ED | ADD HL,DE | |||
C2EE | LD DE,$7186 | address for Ninja sprite address | ||
C2F1 | LD A,(HL) | |||
C2F2 | LD (DE),A | |||
C2F3 | INC HL | |||
C2F4 | INC DE | |||
C2F5 | LD A,(HL) | |||
C2F6 | LD (DE),A | |||
C2F7 | JP $C16E | => Object procedure |
C2FA | XOR A | |||
C2FB | LD ($9C41),A | set Ninja X = 0 | ||
C2FE | LD DE,$FFE8 | -24 | ||
C301 | LD HL,($9C42) | |||
C304 | ADD HL,DE | update Ninja position in tilemap | ||
C305 | LD ($9C42),HL | |||
C308 | LD HL,($7184) | get Current Room address | ||
C30B | LD DE,$0006 | offset in Room description | ||
C30E | ADD HL,DE | |||
C30F | LD A,(HL) | get Room Right address low byte | ||
C310 | INC HL | |||
C311 | LD H,(HL) | get Room Right address high byte | ||
C312 | LD L,A | |||
C313 | LD ($7184),HL | set Current Room address | ||
C316 | JP $B66A | => Current Room changed |
C319 | LD A,$18 | |||
C31B | LD ($9C41),A | set Ninja X = 24 | ||
C31E | LD DE,$0018 | +24 | ||
C321 | LD HL,($9C42) | |||
C324 | ADD HL,DE | update Ninja position in tilemap | ||
C325 | LD ($9C42),HL | |||
C328 | LD HL,($7184) | get Current Room address | ||
C32B | LD DE,$0004 | offset in Room description | ||
C32E | ADD HL,DE | |||
C32F | LD A,(HL) | get Room Left address low byte | ||
C330 | INC HL | |||
C331 | LD H,(HL) | get Room Left address high byte | ||
C332 | LD L,A | |||
C333 | LD ($7184),HL | set Current Room address | ||
C336 | JP $B66A | => Current Room changed |
|
||||
C339 | LD HL,$7343 | counter address | ||
C33C | DEC (HL) | decrease counter | ||
C33D | JP NZ,$B8D0 | => Update Ninja on tilemap | ||
C340 | LD A,($7239) | get Ninja direction | ||
C343 | LD HL,($9C42) | get Ninja position in tilemap | ||
C346 | LD DE,$6592 | $6592 = $6590 (Tile screen 0) + 2 | ||
C349 | ADD HL,DE | |||
C34A | CP $00 | direction = left ? | ||
C34C | JR NZ,$C361 | no => | ||
C34E | LD A,(HL) | |||
C34F | CP $0C | |||
C351 | JR Z,$C3BB | |||
C353 | CP $0A | |||
C355 | JR Z,$C3BB | |||
C357 | CP $08 | |||
C359 | JR Z,$C3BB | |||
C35B | CP $09 | |||
C35D | JR Z,$C3BB | |||
C35F | JR $C368 | |||
C361 | INC HL | |||
C362 | CALL $C392 | |||
C365 | JR Z,$C3CF | |||
C367 | DEC HL | |||
C368 | CALL $C392 | |||
C36B | JR Z,$C3C6 | => Ninja on ladder | ||
C36D | LD DE,$65CC | |||
C370 | LD HL,($9C42) | get Ninja position in tilemap | ||
C373 | LD A,($7239) | get Ninja direction | ||
C376 | CP $00 | left ? | ||
C378 | JR Z,$C37D | |||
C37A | LD DE,$65D1 | |||
C37D | ADD HL,DE | |||
C37E | LD A,$64 | |||
C380 | CP (HL) | |||
C381 | JP C,$C4D0 | |||
C384 | LD HL,$C4A7 | Movement handler | ||
C387 | LD DE,$D4DA | Sprite Ninja/Guard jump-kick | ||
C38A | LD A,$03 | |||
C38C | LD ($7343),A | set counter = 3 | ||
C38F | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
C392 | LD A,(HL) | |||
C393 | LD B,$01 | |||
C395 | CP $05 | |||
C397 | JR Z,$C3B7 | |||
C399 | CP $06 | |||
C39B | JR Z,$C3B7 | |||
C39D | CP $07 | |||
C39F | JR Z,$C3B7 | |||
C3A1 | CP $F6 | |||
C3A3 | JR Z,$C3B7 | |||
C3A5 | CP $F1 | |||
C3A7 | JR Z,$C3B7 | |||
C3A9 | CP $EF | |||
C3AB | JR Z,$C3B7 | |||
C3AD | CP $ED | |||
C3AF | JR Z,$C3B7 | |||
C3B1 | CP $0C | |||
C3B3 | JR Z,$C3B7 | |||
C3B5 | LD B,$00 | |||
C3B7 | LD A,$01 | |||
C3B9 | CP B | |||
C3BA | RET |
Used by the routine at C339.
|
||||
C3BB | LD HL,$9C41 | Ninja X address | ||
C3BE | DEC (HL) | one tile to left | ||
C3BF | LD HL,($9C42) | get Ninja position in tilemap | ||
C3C2 | DEC HL | move one tile left | ||
This entry point is used by the routine at C3CF.
|
||||
C3C3 | LD ($9C42),HL | set Ninja position in tilemap | ||
Ninja on ladder now
|
||||
C3C6 | LD HL,$C3D9 | Movement handler for Ninja on ladder | ||
C3C9 | LD DE,$D52E | Sprite Ninja on ladder | ||
C3CC | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
Used by the routine at C339.
|
||||
C3CF | LD HL,$9C41 | Ninja X address | ||
C3D2 | INC (HL) | one tile to right | ||
C3D3 | LD HL,($9C42) | get Ninja position in tilemap | ||
C3D6 | INC HL | move one tile right | ||
C3D7 | JR $C3C3 | => Set Ninja position in tilemap; Ninja on ladder |
|
||||
C3D9 | LD HL,($9C42) | get Ninja position in tilemap | ||
C3DC | LD DE,$6647 | = $6590 (Tile screen 0) + 183 | ||
C3DF | ADD HL,DE | |||
C3E0 | LD A,$0C | |||
C3E2 | CP (HL) | ladder? | ||
C3E3 | JR Z,$C3EC | yes => Read and process Input | ||
C3E5 | DEC HL | |||
C3E6 | CALL $C392 | |||
C3E9 | JP NZ,$C226 | not ladder => Ninja standing | ||
Read and process Input
|
||||
C3EC | CALL $BBDF | Read Input | ||
C3EF | BIT 0,A | check RIGHT bit | ||
C3F1 | JR Z,$C40E | |||
Pressed RIGHT
|
||||
C3F3 | LD HL,($9C42) | get Ninja position in tilemap | ||
C3F6 | LD DE,$6648 | = $6590 (Tile screen 0) + 184 | ||
C3F9 | ADD HL,DE | |||
C3FA | LD A,$64 | |||
C3FC | CP (HL) | |||
C3FD | JR C,$C42C | |||
C3FF | LD DE,$001E | +30 | ||
C402 | ADD HL,DE | |||
C403 | CP (HL) | |||
C404 | JR NC,$C42C | |||
C406 | LD A,$01 | |||
C408 | LD ($7239),A | set Ninja direction = 1 = right | ||
C40B | JP $C162 | |||
Check if LEFT pressed
|
||||
C40E | BIT 1,A | check LEFT bit | ||
C410 | JR Z,$C42C | |||
Pressed LEFT
|
||||
C412 | LD HL,($9C42) | get Ninja position in tilemap | ||
C415 | LD DE,$6645 | = $6590 (Tile screen 0) + 181 | ||
C418 | ADD HL,DE | |||
C419 | LD A,$64 | |||
C41B | CP (HL) | |||
C41C | JR C,$C42C | |||
C41E | LD DE,$001E | +30 | ||
C421 | ADD HL,DE | |||
C422 | CP (HL) | |||
C423 | JR NC,$C42C | |||
C425 | XOR A | |||
C426 | LD ($7239),A | set Ninja direction = 0 = left | ||
C429 | JP $C14B | |||
Check if UP pressed
|
||||
C42C | LD A,($7232) | get Input bits | ||
C42F | BIT 3,A | check UP bit | ||
C431 | JR Z,$C477 | |||
Pressed UP
|
||||
C433 | LD HL,($9C42) | get Ninja position in tilemap | ||
C436 | LD DE,$6647 | |||
C439 | ADD HL,DE | |||
C43A | LD A,$0C | |||
C43C | CP (HL) | |||
C43D | JR Z,$C447 | |||
C43F | DEC HL | |||
C440 | CALL $C392 | |||
C443 | JR Z,$C447 | |||
C445 | JR $C495 | => Update Ninja on tilemap | ||
C447 | LD A,($9C40) | get Ninja Y | ||
C44A | CP $00 | top row? | ||
C44C | JP Z,$C623 | yes => Going to room Up from current | ||
C44F | LD DE,$FF2E | -210 = 7 rows higher | ||
C452 | ADD HL,DE | |||
C453 | LD A,$EA | |||
C455 | CP (HL) | |||
C456 | JR Z,$C495 | => Update Ninja on tilemap | ||
C458 | LD A,$FF | |||
C45A | CP (HL) | |||
C45B | JR Z,$C495 | => Update Ninja on tilemap | ||
C45D | LD HL,$9C40 | Ninja Y address | ||
C460 | DEC (HL) | one row up | ||
C461 | LD HL,($9C42) | get Ninja position in tilemap | ||
C464 | LD DE,$FFE2 | -30 | ||
This entry point is used by the routine at C498.
|
||||
C467 | ADD HL,DE | |||
C468 | LD ($9C42),HL | set Ninja position in tilemap | ||
C46B | LD A,($7239) | get Ninja direction | ||
C46E | INC A | invert direction | ||
C46F | AND $01 | |||
C471 | LD ($7239),A | set Ninja direction | ||
C474 | JP $B8D0 | => Update Ninja on tilemap | ||
Check if DOWN pressed
|
||||
C477 | BIT 2,A | check DOWN bit | ||
C479 | JR Z,$C495 | => Update Ninja on tilemap | ||
Pressed DOWN
|
||||
C47B | LD A,($9C40) | get Ninja Y | ||
C47E | CP $0A | |||
C480 | JP Z,$C604 | => Going to room Down from current | ||
C483 | LD HL,($9C42) | get Ninja position in tilemap | ||
C486 | LD DE,$6665 | |||
C489 | ADD HL,DE | |||
C48A | LD A,$0C | |||
C48C | CP (HL) | |||
C48D | JR Z,$C498 | => Move down one tile | ||
C48F | DEC HL | |||
C490 | CALL $C392 | |||
C493 | JR Z,$C498 | => Move down one tile | ||
C495 | JP $B8D0 | => Update Ninja on tilemap |
C498 | LD HL,$9C40 | Ninja Y address | ||
C49B | INC (HL) | one tile down | ||
C49C | LD HL,($9C42) | get Ninja position in tilemap | ||
C49F | LD DE,$001E | +30 | ||
C4A2 | JR $C467 | => set Ninja position = HL, invert direction, Object procedure |
|
||||
C4A4 | LD A,($7239) | get Ninja direction |
|
||||
C4A7 | LD HL,$7343 | counter address | ||
C4AA | DEC (HL) | decrease counter | ||
C4AB | JP NZ,$B8D0 | => Update Ninja on tilemap | ||
C4AE | LD HL,($9C42) | get Ninja position in tilemap | ||
C4B1 | LD DE,$6DC9 | value for right dir = $6D88 (Tile screen 4) + 65 | ||
C4B4 | LD A,($7239) | get Ninja direction | ||
C4B7 | CP $01 | direction = right? | ||
C4B9 | JR Z,$C4BE | |||
C4BB | LD DE,$6DC4 | value for left dir = $6D88 (Tile screen 4) + 60 | ||
C4BE | ADD HL,DE | |||
C4BF | LD A,(HL) | |||
C4C0 | INC A | = $FF ? | ||
C4C1 | JR Z,$C4D0 | |||
C4C3 | LD A,$09 | |||
C4C5 | LD ($7346),A | set Guard state = $09 | ||
C4C8 | CALL $B596 | |||
C4CB | LD B,$05 | |||
C4CD | CALL $B4DE | Increase PAY value by 500 - Guard killed by punch/kick | ||
This entry point is used by the routine at C339.
|
||||
C4D0 | LD HL,$C4DE | Movement handler address | ||
C4D3 | LD DE,$D4B0 | Sprite Ninja/Guard jumping | ||
C4D6 | LD A,$01 | |||
C4D8 | LD ($7343),A | set counter = 1 | ||
C4DB | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
|
||||
C4DE | LD HL,$7343 | counter address | ||
C4E1 | DEC (HL) | decrease counter | ||
C4E2 | JP NZ,$B8D0 | => Update Ninja on tilemap | ||
C4E5 | JP $C226 | => Ninja standing |
C4E8 | CALL $C57B | Check for ?? | ||
C4EB | RET NZ | |||
C4EC | POP HL | |||
C4ED | LD HL,$C4F6 | Movement handler address | ||
C4F0 | LD DE,$D5AC | Sprite Ninja jumping 3 | ||
C4F3 | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
|
||||
C4F6 | CALL $C57B | Check for ?? | ||
C4F9 | JP Z,$C504 | |||
C4FC | LD B,$03 | |||
C4FE | CALL $9DD9 | Decrease Energy by B | ||
C501 | JP $C226 | => Ninja standing | ||
C504 | LD HL,$C50D | Movement handler address | ||
C507 | LD DE,$D5D6 | Sprite Ninja jumping 4 | ||
C50A | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
|
||||
C50D | LD A,($7239) | get Ninja direction | ||
C510 | CP $00 | left? | ||
C512 | LD HL,$9C41 | Ninja X address | ||
C515 | LD A,(HL) | |||
C516 | JR NZ,$C56C | |||
C518 | CP $00 | |||
C51A | JP Z,$C319 | => Going to room at Left | ||
C51D | DEC (HL) | |||
C51E | LD HL,($9C42) | get Ninja position in tilemap | ||
C521 | DEC HL | |||
C522 | LD ($9C42),HL | set Ninja position in tilemap | ||
C525 | CALL $C57B | Check for ?? | ||
C528 | JR NZ,$C533 | |||
C52A | LD HL,$7343 | counter address | ||
C52D | DEC (HL) | decrease counter | ||
C52E | JP NZ,$C16E | |||
C531 | JR $C538 | |||
C533 | LD B,$04 | |||
C535 | CALL $9DD9 | Decrease Energy by B | ||
C538 | LD DE,$660A | |||
C53B | LD B,$03 | |||
C53D | LD HL,($9C42) | get Ninja position in tilemap | ||
C540 | ADD HL,DE | |||
C541 | LD A,$64 | |||
C543 | CP (HL) | |||
C544 | JR NC,$C558 | |||
C546 | LD HL,$9C40 | Ninja Y address | ||
C549 | DEC (HL) | |||
C54A | LD HL,($9C42) | get Ninja position in tilemap | ||
C54D | PUSH DE | |||
C54E | LD DE,$FFE2 | -30 | ||
C551 | ADD HL,DE | |||
C552 | POP DE | |||
C553 | LD ($9C42),HL | set Ninja position in tilemap | ||
C556 | JR $C53D | |||
C558 | INC HL | |||
C559 | CP (HL) | |||
C55A | JR C,$C546 | |||
C55C | LD HL,$001E | +30 | ||
C55F | ADD HL,DE | |||
C560 | EX DE,HL | |||
C561 | DJNZ $C53D | |||
C563 | LD HL,$C5A0 | Movement handler: switch Ninja to standing | ||
C566 | LD DE,$D5AC | Sprite Ninja jumping 3 | ||
C569 | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE | ||
C56C | CP $18 | |||
C56E | JP Z,$C2FA | => Going to room at Right | ||
C571 | INC (HL) | |||
C572 | LD HL,($9C42) | get Ninja position in tilemap | ||
C575 | INC HL | |||
C576 | LD ($9C42),HL | set Ninja position in tilemap | ||
C579 | JR $C525 |
C57B | LD A,($7239) | get Ninja direction | ||
C57E | LD L,A | |||
C57F | ADD A,A | |||
C580 | ADD A,A | |||
C581 | ADD A,L | * 5 | ||
C582 | LD L,A | |||
C583 | LD H,$00 | |||
C585 | LD DE,($9C42) | get Ninja position in tilemap | ||
C589 | ADD HL,DE | |||
C58A | LD DE,$6590 | Tile screen 0 start address | ||
C58D | ADD HL,DE | |||
C58E | LD BC,$0400 | |||
C591 | LD DE,$001E | +30 | ||
C594 | LD A,$64 | |||
C596 | CP (HL) | |||
C597 | JR NC,$C59A | |||
C599 | INC C | |||
C59A | ADD HL,DE | |||
C59B | DJNZ $C596 | |||
C59D | XOR A | |||
C59E | CP C | now Z=0: falling, Z=1: not falling | ||
C59F | RET |
|
||||
C5A0 | JP $C226 | => Ninja standing |
C5A3 | LD HL,($9C42) | get Ninja position in tilemap | ||
C5A6 | LD DE,$00D3 | |||
C5A9 | ADD HL,DE | |||
C5AA | LD DE,$6590 | Tile screen 0 start address | ||
C5AD | ADD HL,DE | |||
C5AE | LD A,($7239) | get Ninja direction | ||
C5B1 | LD D,$00 | left? | ||
C5B3 | LD E,A | |||
C5B4 | ADD HL,DE | |||
C5B5 | LD B,$03 | |||
C5B7 | LD C,$00 | |||
C5B9 | LD A,$64 | |||
C5BB | CP (HL) | |||
C5BC | JR NC,$C5C0 | |||
C5BE | LD C,$01 | |||
C5C0 | INC HL | |||
C5C1 | DJNZ $C5BB | |||
C5C3 | XOR A | |||
C5C4 | CP C | |||
C5C5 | RET |
|
||||
C5C6 | LD HL,($9C42) | get Ninja position in tilemap | ||
C5C9 | LD DE,$001E | +30 | ||
C5CC | ADD HL,DE | one row lower | ||
C5CD | LD ($9C42),HL | set Ninja position in tilemap | ||
C5D0 | LD HL,$755B | falling counter address | ||
C5D3 | INC (HL) | increase falling counter | ||
C5D4 | LD HL,$9C40 | Ninja Y address | ||
C5D7 | INC (HL) | increase Ninja Y | ||
C5D8 | LD A,(HL) | get Ninja Y | ||
C5D9 | CP $0A | at room bottom? | ||
C5DB | JR Z,$C604 | => Going to room Down from current | ||
C5DD | LD HL,($9C42) | get Ninja position in tilemap | ||
C5E0 | LD DE,$6664 | |||
C5E3 | ADD HL,DE | |||
C5E4 | LD A,$64 | |||
C5E6 | CP (HL) | |||
C5E7 | JR C,$C5EE | |||
C5E9 | INC HL | |||
C5EA | CP (HL) | |||
C5EB | JP NC,$B8D0 | => Update Ninja on tilemap | ||
Ninja hit somehting after falling
|
||||
C5EE | LD A,$01 | |||
C5F0 | LD ($A39E),A | |||
C5F3 | LD HL,$755B | falling counter address | ||
C5F6 | LD B,(HL) | get counter value | ||
C5F7 | LD (HL),$00 | clear falling counter | ||
C5F9 | CALL $9DD9 | Decrease Energy by B | ||
C5FC | LD B,$32 | |||
C5FE | CALL $B59E | |||
C601 | JP $BFCC | => Ninja sitting now |
C604 | XOR A | |||
C605 | LD ($9C40),A | set Ninja Y = 0 | ||
C608 | LD HL,($9C42) | get Ninja position in tilemap | ||
C60B | LD DE,$FED4 | -300 | ||
C60E | ADD HL,DE | 10 rows higher | ||
C60F | LD ($9C42),HL | set Ninja position in tilemap | ||
C612 | LD HL,($7184) | get Current Room address | ||
C615 | LD DE,$000A | offset in room description | ||
C618 | ADD HL,DE | now HL = room address + 10 | ||
C619 | LD A,(HL) | get Room Down address low byte | ||
C61A | INC HL | |||
C61B | LD H,(HL) | get Room Down address high byte | ||
C61C | LD L,A | |||
C61D | LD ($7184),HL | set Current Room address | ||
C620 | JP $B66A | => Current Room changed |
Used by the routine at C3D9.
|
||||
C623 | LD A,$0A | |||
C625 | LD ($9C40),A | set Ninja Y = 10 | ||
C628 | LD HL,($9C42) | get Ninja position in tilemap | ||
C62B | LD DE,$012C | +300 | ||
C62E | ADD HL,DE | 10 rows lower | ||
C62F | LD ($9C42),HL | set Ninja position in tilemap | ||
C632 | LD HL,($7184) | get Current Room address | ||
C635 | LD DE,$0008 | offset in room description | ||
C638 | ADD HL,DE | now HL = room address + 8 | ||
C639 | LD A,(HL) | get Room Up address low byte | ||
C63A | INC HL | |||
C63B | LD H,(HL) | get Room Up address high byte | ||
C63C | LD L,A | |||
C63D | LD ($7184),HL | set Current Room address | ||
C640 | JP $B66A | => Current Room changed |
C643 | LD HL,$C5C6 | Movement handler address: Ninja falling | ||
C646 | LD DE,$D582 | Sprite Ninja falling | ||
C649 | JP $BFB0 | Set movement handler = HL, Ninja sprite = DE |
|
||||
C64C | LD HL,$C65A | |||
C64F | LD DE,$666C | = $6590 (Tile screen 0) + 220 | ||
C652 | LD BC,$0011 | 17 | ||
C655 | LDIR | copy bytes to Background | ||
C657 | JP $B724 | => Finish room initialization |
|
||||
C65A | DEFB $E3,$E3,$E3,$F6,$F6,$E3,$E3,$E3 | |||
C662 | DEFB $F6,$F6,$E3,$E3,$E3,$E3,$E3,$E3 | |||
C66A | DEFB $E3 |
|
||||
C66B | DEFB $0E,$00,$0E,$00,$04,$00 |
|
||||
C671 | LD HL,$947C | room 947C at left of Train 1 | ||
C674 | LD ($7CA0),HL | set "room to left" for room 7C9C | ||
C677 | LD HL,$93DF | room 93DF at right of Train 1 | ||
C67A | LD ($7CA2),HL | set "room to right" for room 7C9C | ||
C67D | LD A,$6C | tile for "1" sign | ||
C67F | JR $C68F |
|
||||
C681 | LD HL,$9A1E | room 9A1E at left of Train 2 | ||
C684 | LD ($7CA0),HL | set "room to left" for room 7C9C | ||
C687 | LD HL,$982B | room 982B at right of Train 2 | ||
C68A | LD ($7CA2),HL | set "room to right" for room 7C9C | ||
C68D | LD A,$75 | tile for "2" sign | ||
Fill 3x3 block with tile for "1"/"2" sign
|
||||
C68F | LD HL,$7D20 | |||
C692 | LD DE,$0003 | |||
C695 | LD C,$03 | |||
C697 | LD B,$03 | |||
C699 | LD (HL),A | |||
C69A | INC HL | |||
C69B | INC A | |||
C69C | DJNZ $C699 | |||
C69E | ADD HL,DE | |||
C69F | DEC C | |||
C6A0 | JR NZ,$C697 | |||
C6A2 | JP $B724 | => Finish room initialization |
|
||||
C6A5 | LD A,($9C41) | get Ninja X | ||
C6A8 | CP $0C | |||
C6AA | JP NZ,$B937 | => Standard room procedure | ||
C6AD | LD A,$4B | |||
C6AF | LD ($7343),A | set counter = 75 | ||
C6B2 | LD DE,($9C42) | get Ninja position in tilemap | ||
C6B6 | LD A,($9C41) | get Ninja X | ||
C6B9 | INC A | |||
C6BA | LD B,A | |||
C6BB | INC DE | |||
C6BC | LD HL,$C70C | Movement handler: Train moving right | ||
C6BF | LD A,($7239) | get Ninja direction | ||
C6C2 | CP $00 | left? | ||
C6C4 | JR NZ,$C6CD | right => | ||
C6C6 | LD HL,$C6E2 | Movement handler: Train moving left | ||
C6C9 | DEC B | |||
C6CA | DEC B | |||
C6CB | DEC DE | |||
C6CC | DEC DE | |||
C6CD | LD A,B | |||
C6CE | LD ($9C41),A | set Ninja X | ||
C6D1 | LD ($9C42),DE | set Ninja position in tilemap | ||
C6D5 | LD DE,$D486 | Sprite Ninja/Guard standing | ||
C6D8 | LD ($7186),DE | set Ninja sprite | ||
C6DC | LD ($B8CE),HL | set Movement handler | ||
C6DF | JP $B937 | => Standard room procedure |
|
||||
C6E2 | LD B,$02 | |||
C6E4 | LD DE,$676F | |||
C6E7 | LD HL,$676E | |||
C6EA | PUSH BC | |||
C6EB | LD BC,$001D | |||
C6EE | LD A,(DE) | |||
C6EF | LDDR | |||
C6F1 | LD (DE),A | |||
C6F2 | POP BC | |||
C6F3 | DJNZ $C6E4 | |||
This entry point is used by the routine at C70C.
|
||||
C6F5 | LD HL,$6950 | |||
C6F8 | LD DE,$6951 | |||
C6FB | LD (HL),$01 | |||
C6FD | LD BC,$001D | |||
C700 | LDIR | |||
C702 | LD HL,$7343 | counter address | ||
C705 | DEC (HL) | decrease counter | ||
C706 | JP Z,$C226 | => Ninja standing | ||
C709 | JP $B8D0 | => Update Ninja on tilemap |
|
||||
C70C | LD B,$02 | |||
C70E | LD DE,$6752 | |||
C711 | LD HL,$6753 | |||
C714 | PUSH BC | |||
C715 | LD BC,$001D | |||
C718 | LD A,(DE) | |||
C719 | LDIR | |||
C71B | LD (DE),A | |||
C71C | POP BC | |||
C71D | DJNZ $C70E | |||
C71F | JR $C6F5 |
|
||||
![]() |
||||
C721 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | ' ' | ||
C729 | DEFB $00,$10,$10,$10,$10,$00,$10,$00 | '!' | ||
C731 | DEFB $00,$24,$24,$00,$00,$00,$00,$00 | '"' | ||
C739 | DEFB $00,$24,$7E,$24,$24,$7E,$24,$00 | '#' | ||
C741 | DEFB $00,$08,$3E,$28,$3E,$0A,$3E,$08 | '$' | ||
C749 | DEFB $00,$62,$64,$08,$10,$26,$46,$00 | '%' | ||
C751 | DEFB $00,$10,$28,$10,$2A,$44,$3A,$00 | '&' | ||
C759 | DEFB $00,$08,$10,$00,$00,$00,$00,$00 | ''' | ||
C761 | DEFB $00,$04,$08,$08,$08,$08,$04,$00 | '(' | ||
C769 | DEFB $00,$20,$10,$10,$10,$10,$20,$00 | ')' | ||
C771 | DEFB $00,$00,$14,$08,$3E,$08,$14,$00 | '*' | ||
C779 | DEFB $00,$00,$08,$08,$3E,$08,$08,$00 | '+' | ||
C781 | DEFB $00,$00,$00,$00,$00,$08,$08,$10 | ',' | ||
C789 | DEFB $00,$00,$00,$00,$3E,$00,$00,$00 | '-' | ||
C791 | DEFB $00,$00,$00,$00,$00,$18,$18,$00 | '.' | ||
C799 | DEFB $00,$00,$02,$04,$08,$10,$20,$00 | '/' | ||
C7A1 | DEFB $00,$7E,$42,$42,$46,$46,$7E,$00 | '0' | ||
C7A9 | DEFB $00,$08,$08,$08,$18,$18,$18,$00 | '1' | ||
C7B1 | DEFB $00,$7E,$02,$02,$7E,$60,$7E,$00 | '2' | ||
C7B9 | DEFB $00,$7E,$02,$1E,$06,$06,$7E,$00 | '3' | ||
C7C1 | DEFB $00,$42,$42,$7E,$06,$06,$06,$00 | '4' | ||
C7C9 | DEFB $00,$7E,$40,$7E,$06,$06,$7E,$00 | '5' | ||
C7D1 | DEFB $00,$7E,$40,$7E,$46,$46,$7E,$00 | '6' | ||
C7D9 | DEFB $00,$7E,$02,$02,$06,$06,$06,$00 | '7' | ||
C7E1 | DEFB $00,$7E,$42,$7E,$46,$46,$7E,$00 | '8' | ||
C7E9 | DEFB $00,$7E,$42,$7E,$06,$06,$06,$00 | '9' | ||
C7F1 | DEFB $00,$00,$00,$10,$00,$00,$10,$00 | ':' | ||
C7F9 | DEFB $00,$00,$10,$00,$00,$10,$10,$20 | ';' | ||
C801 | DEFB $00,$00,$04,$08,$10,$08,$04,$00 | '<' | ||
C809 | DEFB $00,$00,$00,$3E,$00,$3E,$00,$00 | '=' | ||
C811 | DEFB $00,$00,$10,$08,$04,$08,$10,$00 | '>' | ||
C819 | DEFB $00,$3C,$42,$04,$08,$00,$08,$00 | '?' | ||
C821 | DEFB $00,$3C,$4A,$56,$5E,$40,$3C,$00 | '@' | ||
C829 | DEFB $00,$7E,$42,$42,$7E,$46,$46,$00 | 'A' | ||
C831 | DEFB $00,$7C,$42,$7C,$46,$46,$7C,$00 | 'B' | ||
C839 | DEFB $00,$7E,$40,$40,$60,$60,$7E,$00 | 'C' | ||
C841 | DEFB $00,$7C,$42,$42,$46,$46,$7C,$00 | 'D' | ||
C849 | DEFB $00,$7E,$40,$7E,$60,$60,$7E,$00 | 'E' | ||
C851 | DEFB $00,$7E,$40,$7E,$60,$60,$60,$00 | 'F' | ||
C859 | DEFB $00,$7E,$42,$40,$4E,$46,$7E,$00 | 'G' | ||
C861 | DEFB $00,$42,$42,$7E,$46,$46,$46,$00 | 'H' | ||
C869 | DEFB $00,$08,$08,$08,$18,$18,$18,$00 | 'I' | ||
C871 | DEFB $00,$02,$02,$02,$46,$46,$7E,$00 | 'J' | ||
C879 | DEFB $00,$42,$42,$7E,$4C,$4C,$4C,$00 | 'K' | ||
C881 | DEFB $00,$40,$40,$40,$40,$40,$7E,$00 | 'L' | ||
C889 | DEFB $00,$7E,$52,$52,$56,$56,$56,$00 | 'M' | ||
C891 | DEFB $00,$72,$52,$52,$56,$56,$5E,$00 | 'N' | ||
C899 | DEFB $00,$7E,$42,$42,$46,$46,$7E,$00 | 'O' | ||
C8A1 | DEFB $00,$7E,$42,$42,$7E,$60,$60,$00 | 'P' | ||
C8A9 | DEFB $00,$7E,$42,$42,$4E,$4E,$7F,$07 | 'Q' | ||
C8B1 | DEFB $00,$7E,$42,$42,$7E,$4C,$4C,$00 | 'R' | ||
C8B9 | DEFB $00,$7E,$40,$7E,$06,$06,$7E,$00 | 'S' | ||
C8C1 | DEFB $00,$7E,$08,$08,$18,$18,$18,$00 | 'T' | ||
C8C9 | DEFB $00,$42,$42,$42,$46,$46,$7E,$00 | 'U' | ||
C8D1 | DEFB $00,$42,$42,$42,$2C,$2C,$18,$00 | 'V' | ||
C8D9 | DEFB $00,$52,$52,$52,$56,$56,$7E,$00 | 'W' | ||
C8E1 | DEFB $00,$42,$24,$18,$18,$2C,$46,$00 | 'X' | ||
C8E9 | DEFB $00,$42,$42,$7E,$18,$18,$18,$00 | 'Y' | ||
C8F1 | DEFB $00,$7E,$02,$7E,$60,$60,$7E,$00 | 'Z' |
|
||||
C8F9 | DEFM " " | |||
C8FA | DEFB $6D,$C2,$CE | |||
C8FD | DEFM "X2LD " | |||
C90A | DEFB $44,$C2,$CE | |||
C90D | DEFM "DLDC " | |||
C91A | DEFB $38,$C2,$CB | |||
C91D | DEFM "ICKP " | |||
C92A | DEFB $28,$C3,$CE | |||
C92D | DEFM "DEDG " | |||
C93A | DEFB $4E,$C3,$CE | |||
C93D | DEFM "KICR " | |||
C94A | DEFB $FE,$C1,$CC | |||
C94D | DEFM "ADUP " | |||
C95A | DEFB $47,$C2,$CC | |||
C95D | DEFM "AD2R " | |||
C96A | DEFB $50,$C2,$CE | |||
C96D | DEFM "LADR " | |||
C97A | DEFB $E9,$C1,$CC | |||
C97D | DEFM "AD2L " | |||
C98A | DEFB $3C,$C2,$CE | |||
C98D | DEFM "LADL " | |||
C99A | DEFB $E2,$C1,$C6 | |||
C99D | DEFM "TFLL " | |||
C9AA | DEFB $63,$C1,$CE | |||
C9AD | DEFM "FTFL " | |||
C9BA | DEFB $69,$C1,$CC | |||
C9BD | DEFM "OIUT " | |||
C9CA | DEFB $04,$C1,$CA | |||
C9CD | DEFM "AK " | |||
C9DA | DEFB $23,$C1,$CA | |||
C9DD | DEFM "AKE2 " | |||
C9EA | DEFB $F0,$C0,$CC | |||
C9ED | DEFM "EFSC " | |||
C9FA | DEFB $9A,$C1,$D3 | |||
C9FD | DEFM "TCRH " | |||
CA0A | DEFB $C9,$C0,$CC | |||
CA0D | DEFM "EGP " | |||
CA1A | DEFB $3C,$C1,$C4 | |||
CA1D | DEFM "NSCR " | |||
CA2A | DEFB $9D,$C4,$CC | |||
CA2D | DEFM "OIUY " | |||
CA3A | DEFB $7E,$C0,$CA | |||
CA3D | DEFM "AKSN " | |||
CA4A | DEFB $9D,$C0,$CA | |||
CA4D | DEFM "AKS2 " | |||
CA5A | DEFB $6A,$C0,$D2 | |||
CA5D | DEFM "ITSC " | |||
CA6A | DEFB $7B,$C1,$C4 | |||
CA6D | DEFM "OWNP " | |||
CA7A | DEFB $24,$C0,$D5 | |||
CA7D | DEFM "PP " | |||
CA8A | DEFB $01,$C0,$D2 | |||
CA8D | DEFM "ITEP " | |||
CA9A | DEFB $46,$C0,$CE | |||
CA9D | DEFM "TRN2 " | |||
CAAA | DEFB $F2,$BF,$CC | |||
CAAD | DEFM "EFTP " | |||
CABA | DEFB $CC,$C0,$CE | |||
CABD | DEFM "TRN1 " | |||
CACA | DEFB $DB,$BF,$CE | |||
CACD | DEFM "LEFT " | |||
CADA | DEFB $E4,$BF,$CC | |||
CADD | DEFM "ADDD " | |||
CAEA | DEFB $19,$C3,$CC | |||
CAED | DEFM "ADDP " | |||
CAFA | DEFB $5A,$C2,$CE | |||
CAFD | DEFM " " | |||
CB0A | DEFB $FF,$FF,$C3 | |||
CB0D | DEFM "PLP1 " | |||
CB1A | DEFB $3B,$BF,$C3 | |||
CB1D | DEFM "PLP2 " | |||
CB2A | DEFB $37,$BF,$C3 | |||
CB2D | DEFM "RUTP " | |||
CB3A | DEFB $BF,$C0,$D3 | |||
CB3D | DEFM "QUSH " | |||
CB4A | DEFB $16,$BF,$C4 | |||
CB4D | DEFM "NTPL " | |||
CB5A | DEFB $BE,$BF,$C3 | |||
CB5D | DEFM "MPLD " | |||
CB6A | DEFB $13,$C2,$CE | |||
CB6D | DEFM "DOWN " | |||
CB7A | DEFB $CD,$BF,$CA | |||
CB7D | DEFM "UMPP " | |||
CB8A | DEFB $BA,$C1,$CE | |||
CB8D | DEFM "DRTY " | |||
CB9A | DEFB $EF,$BE,$CC | |||
CB9D | DEFM "EAPR " | |||
CBAA | DEFB $66,$C3,$CE | |||
CBAD | DEFM "BDEE " | |||
CBBA | DEFB $EA,$BE,$CE | |||
CBBD | DEFM "RITE " | |||
CBCA | DEFB $FE,$BF,$CE | |||
CBCD | DEFM "ONIN " | |||
CBDA | DEFB $76,$BF,$C6 | |||
CBDD | DEFM "LYP " | |||
CBEA | DEFB $24,$BF,$C3 | |||
CBED | DEFM "OD98 " | |||
CBFA | DEFB $A0,$BE,$C3 | |||
CBFD | DEFM "OD99 " | |||
CC0A | DEFB $82,$BE,$C8 | |||
CC0D | DEFM "ANGR " | |||
CC1A | DEFB $73,$BE,$CE | |||
CC1D | DEFM "COPT " | |||
CC2A | DEFB $C5,$BE,$CE | |||
CC2D | DEFM "UP " | |||
CC3A | DEFB $04,$BF,$CE | |||
CC3D | DEFM "DDG2 " | |||
CC4A | DEFB $3B,$BE,$CE | |||
CC4D | DEFM "PGRD " | |||
CC5A | DEFB $2C,$BE,$D4 | |||
CC5D | DEFM "HROP " | |||
CC6A | DEFB $19,$BE,$C2 | |||
CC6D | DEFM "UNGD " | |||
CC7A | DEFB $0C,$BE,$C2 | |||
CC7D | DEFM "UNGU " | |||
CC8A | DEFB $05,$BE,$CE | |||
CC8D | DEFM "LFTH " | |||
CC9A | DEFB $F7,$BD,$C3 | |||
CC9D | DEFM "OD3 " | |||
CCAA | DEFB $D4,$BD,$D0 | |||
CCAD | DEFM "UNCH " | |||
CCBA | DEFB $1C,$BE,$C3 | |||
CCBD | DEFM "OD22 " | |||
CCCA | DEFB $8B,$BD,$CE | |||
CCCD | DEFM "NEAR " | |||
CCDA | DEFB $A1,$BD,$D0 | |||
CCDD | DEFM "ROGO " | |||
CCEA | DEFB $93,$BD,$CE | |||
CCED | DEFM "FIRE " | |||
CCFA | DEFB $44,$BE,$C6 | |||
CCFD | DEFM "ALLN " | |||
CD0A | DEFB $DC,$C4,$C6 | |||
CD0D | DEFM "ALLQ " | |||
CD1A | DEFB $22,$C4,$CE | |||
CD1D | DEFM "DGLN " | |||
CD2A | DEFB $60,$BD,$C7 | |||
CD2D | DEFM "LANS " | |||
CD3A | DEFB $41,$BD,$CE | |||
CD3D | DEFM "GLAN " | |||
CD4A | DEFB $5B,$BD,$D3 | |||
CD4D | DEFM "TANP " | |||
CD5A | DEFB $39,$BD,$D4 | |||
CD5D | DEFM "BFST " | |||
CD6A | DEFB $34,$BD,$C3 | |||
CD6D | DEFM "HRLP " | |||
CD7A | DEFB $D6,$BC,$CC | |||
CD7D | DEFM "LLP2 " | |||
CD8A | DEFB $BF,$BC,$CE | |||
CD8D | DEFM "BROT " | |||
CD9A | DEFB $CE,$BC,$CC | |||
CD9D | DEFM "OIP2 " | |||
CDAA | DEFB $86,$BC,$C7 | |||
CDAD | DEFM "DDIS " | |||
CDBA | DEFB $45,$C4,$D1 | |||
CDBD | DEFM "LLP1 " | |||
CDCA | DEFB $53,$BC,$C4 | |||
CDCD | DEFM "GDIS " | |||
CDDA | DEFB $56,$C4,$D3 | |||
CDDD | DEFM "CRCB " | |||
CDEA | DEFB $6B,$BC,$D2 | |||
CDED | DEFM "EVQ " | |||
CDFA | DEFB $23,$BD,$CC | |||
CDFD | DEFM "LLP1 " | |||
CE0A | DEFB $1F,$BC,$C3 | |||
CE0D | DEFM "OLOK " | |||
CE1A | DEFB $07,$BC,$CB | |||
CE1D | DEFM "NOB " | |||
CE2A | DEFB $10,$BC,$C2 | |||
CE2D | DEFM "CLP1 " | |||
CE3A | DEFB $D4,$BB,$C2 | |||
CE3D | DEFM "CHRS " | |||
CE4A | DEFB $00,$F7,$C6 | |||
CE4D | DEFM "TJMP " | |||
CE5A | DEFB $DB,$BB,$C8 | |||
CE5D | DEFM "IDFT " | |||
CE6A | DEFB $BF,$BB,$C6 | |||
CE6D | DEFM "OTS1 " | |||
CE7A | DEFB $DE,$BB,$CE | |||
CE7D | DEFM "DRAW " | |||
CE8A | DEFB $E4,$BC,$C4 | |||
CE8D | DEFM "LP2 " | |||
CE9A | DEFB $AA,$BB,$C4 | |||
CE9D | DEFM "LP1 " | |||
CEAA | DEFB $A8,$BB,$D3 | |||
CEAD | DEFM "ETIN " | |||
CEBA | DEFB $6C,$BB,$CE | |||
CEBD | DEFM "TKEY " | |||
CECA | DEFB $6E,$BB,$CC | |||
CECD | DEFM "OPQ1 " | |||
CEDA | DEFB $5A,$BB,$CF | |||
CEDD | DEFM "K " | |||
CEEA | DEFB $50,$BB,$CB | |||
CEED | DEFM "EYBD " | |||
CEFA | DEFB $55,$BB,$D3 | |||
CEFD | DEFM "TN " | |||
CF0A | DEFB $B6,$C0,$CB | |||
CF0D | DEFM "EY " | |||
CF1A | DEFB $46,$BB,$D0 | |||
CF1D | DEFM "UNCP " | |||
CF2A | DEFB $3B,$BB,$CC | |||
CF2D | DEFM "OPP2 " | |||
CF3A | DEFB $32,$BB,$CC | |||
CF3D | DEFM "OPP1 " | |||
CF4A | DEFB $30,$BB,$CE | |||
CF4D | DEFM "LEFE " | |||
CF5A | DEFB $E3,$BA,$CE | |||
CF5D | DEFM "RTED " | |||
CF6A | DEFB $D9,$BA,$CE | |||
CF6D | DEFM "TOPE " | |||
CF7A | DEFB $D1,$BA,$CE | |||
CF7D | DEFM "BOTE " | |||
CF8A | DEFB $C0,$BA,$D0 | |||
CF8D | DEFM "IXX2 " | |||
CF9A | DEFB $96,$BA,$D0 | |||
CF9D | DEFM "IXEX " | |||
CFAA | DEFB $93,$BA,$C3 | |||
CFAD | DEFM "OD31 " | |||
CFBA | DEFB $57,$BA,$D0 | |||
CFBD | DEFM "IXTB " | |||
CFCA | DEFB $29,$BA,$C3 | |||
CFCD | DEFM "ENAT " | |||
CFDA | DEFB $1F,$BA,$C3 | |||
CFDD | DEFM "OD37 " | |||
CFEA | DEFB $0F,$BA,$C3 | |||
CFED | DEFM "OD36 " | |||
CFFA | DEFB $0C,$BA,$C8 | |||
CFFD | DEFM "ITE3 " | |||
D00A | DEFB $07,$BA,$C1 | |||
D00D | DEFM "TEXP " | |||
D01A | DEFB $04,$BA,$C3 | |||
D01D | DEFM "OD39 " | |||
D02A | DEFB $DD,$B9,$C3 | |||
D02D | DEFM "OD33 " | |||
D03A | DEFB $D9,$B9,$C3 | |||
D03D | DEFM "OD32 " | |||
D04A | DEFB $D5,$B9,$C8 | |||
D04D | DEFM "ITE2 " | |||
D05A | DEFB $D3,$B9,$C4 | |||
D05D | DEFM "ATAX " | |||
D06A | DEFB $D0,$B9,$C5 | |||
D06D | DEFM "XPLO " | |||
D07A | DEFB $E5,$AB,$D0 | |||
D07D | DEFM "XEXP " | |||
D08A | DEFB $CD,$B9,$C3 | |||
D08D | DEFM "OD35 " | |||
D09A | DEFB $AE,$B9,$C3 | |||
D09D | DEFM "OD34 " | |||
D0AA | DEFB $AB,$B9,$C8 | |||
D0AD | DEFM "ITE1 " | |||
D0BA | DEFB $A9,$B9,$C4 | |||
D0BD | DEFM "REXP " | |||
D0CA | DEFB $A6,$B9,$C3 | |||
D0CD | DEFM "OD10 " | |||
D0DA | DEFB $90,$B9,$CE | |||
D0DD | DEFM "THGD " | |||
D0EA | DEFB $75,$B9,$CE | |||
D0ED | DEFM "THDD " | |||
D0FA | DEFB $5E,$B9,$CF | |||
D0FD | DEFM "BEXP " | |||
D10A | DEFB $4B,$BA,$CF | |||
D10D | DEFM "BOFS " | |||
D11A | DEFB $0E,$BB,$CE | |||
D11D | DEFM "DMV1 " | |||
D12A | DEFB $11,$B9,$CE | |||
D12D | DEFM "DNTH " | |||
D13A | DEFB $ED,$B8,$CE | |||
D13D | DEFM "UPTH " | |||
D14A | DEFB $E3,$B8,$D2 | |||
D14D | DEFM "MDOB " | |||
D15A | DEFB $15,$BB,$CE | |||
D15D | DEFM "DMVO " | |||
D16A | DEFB $9C,$B9,$CE | |||
D16D | DEFM "XTHR " | |||
D17A | DEFB $D3,$B8,$CC | |||
D17D | DEFM "OOPO " | |||
D18A | DEFB $C1,$B8,$C4 | |||
D18D | DEFM "ELAY " | |||
D19A | DEFB $A1,$B8,$CC | |||
D19D | DEFM "PPP2 " | |||
D1AA | DEFB $8F,$B8,$CC | |||
D1AD | DEFM "PPP1 " | |||
D1BA | DEFB $8D,$B8,$C5 | |||
D1BD | DEFM "NDRF P " | |||
D1CE | DEFB $70,$B7,$C9 | |||
D1D1 | DEFM "NITB " | |||
D1DE | DEFB $7F,$B7,$C3 | |||
D1E1 | DEFM "LOSP " | |||
D1EE | DEFB $60,$B7,$C5 | |||
D1F1 | DEFM "NDNR " | |||
D1FE | DEFB $D1,$B7,$C3 | |||
D201 | DEFM "OD21 " | |||
D20E | DEFB $54,$B7 |
|
||||
D210 | DEFB $04,$CE,$09,$63,$09,$63,$09,$63,$09,$63 | |||
D21A | DEFB $09,$63,$09,$63,$09,$D4,$05,$D0,$05,$D0 | |||
D224 | DEFB $05,$D0,$06,$D2,$08,$D6,$02,$CA,$03,$CC | |||
D22E | DEFB $05,$D0,$05,$D0,$05,$D0,$03,$CC,$02,$CA | |||
D238 | DEFB $02,$CA,$03,$CC,$02,$CA,$06,$D2,$02,$CA | |||
D242 | DEFB $06,$D2,$02,$CA,$03,$CC,$03,$CC,$03,$CC | |||
D24C | DEFB $04,$CE,$04,$CE,$04,$CE,$04,$CE,$04,$CE |
|
||||
+$04: Object tile
+$05/$06: Object procedure, or $0000
|
||||
D256 | DEFW $6F02 | Object ?? 00 | ||
D258 | DEFB $58,$04,$CE | |||
D25B | DEFW $0000 | |||
D25D | DEFW $6664 | Object: Console in room 80F6 | ||
D25F | DEFB $7C,$09,$63 | |||
D262 | DEFW $B320 | Object procedure: flip trigger "D": set/remove wall in room 9739 | ||
D264 | DEFW $6664 | Object: Console in room 99A6 | ||
D266 | DEFB $7D,$09,$63 | |||
D269 | DEFW $B32A | Object procedure: flip trigger "E": set/remove wall in room 97A6 | ||
D26B | DEFW $6664 | Object: Console in room 92A7 | ||
D26D | DEFB $7E,$09,$63 | |||
D270 | DEFW $B348 | Object procedure: flip trigger "A": set/remove wall in room 7F48 | ||
D272 | DEFW $6664 | Object: Console in room 92EF | ||
D274 | DEFB $7F,$09,$63 | |||
D277 | DEFW $B334 | Object procedure: flip trigger "C": set/remove wall in room 8D5C | ||
D279 | DEFW $6664 | Object: Console in room 9005 | ||
D27B | DEFB $80,$09,$63 | |||
D27E | DEFW $B33E | Object procedure: flip trigger "B": set/remove wall in room 8F20 | ||
D280 | DEFW $6FE2 | Object ?? 06 | ||
D282 | DEFB $1F,$09,$63 | |||
D285 | DEFW $B8D0 | Object procedure "Update Ninja on tilemap" | ||
D287 | DEFW $6669 | Object ?? 07 Diskette | ||
D289 | DEFB $9C,$09,$D4 | |||
D28C | DEFW $0000 | |||
D28E | DEFW $659B | Object ?? 08 | ||
D290 | DEFB $9A,$05,$D0 | |||
D293 | DEFW $0000 | |||
D295 | DEFW $6750 | Object ?? 09 | ||
D297 | DEFB $38,$05,$D0 | |||
D29A | DEFW $0000 | |||
D29C | DEFW $6664 | Object ?? 10 | ||
D29E | DEFB $81,$05,$D0 | |||
D2A1 | DEFW $0000 | |||
D2A3 | DEFW $6664 | Object ?? 11 | ||
D2A5 | DEFB $65,$06,$D2 | |||
D2A8 | DEFW $0000 | |||
D2AA | DEFW $6664 | Object ?? 12 BOMB ?? | ||
D2AC | DEFB $66,$08,$D6 | |||
D2AF | DEFW $0000 | |||
D2B1 | DEFW $6664 | Object ?? 13 | ||
D2B3 | DEFB $67,$02,$CA | |||
D2B6 | DEFW $0000 | |||
D2B8 | DEFW $6664 | Object ?? 14 | ||
D2BA | DEFB $68,$03,$CC | |||
D2BD | DEFW $0000 | |||
D2BF | DEFW $6664 | Object ?? 15 | ||
D2C1 | DEFB $69,$05,$D0 | |||
D2C4 | DEFW $0000 | |||
D2C6 | DEFW $6664 | Object ?? 16 | ||
D2C8 | DEFB $6A,$05,$D0 | |||
D2CB | DEFW $0000 | |||
D2CD | DEFW $6664 | Object ?? 17 | ||
D2CF | DEFB $6B,$05,$D0 | |||
D2D2 | DEFW $0000 | |||
D2D4 | DEFW $6664 | Object ?? 18 | ||
D2D6 | DEFB $6C,$03,$CC | |||
D2D9 | DEFW $0000 | |||
D2DB | DEFW $6664 | Object ?? 19 | ||
D2DD | DEFB $6D,$02,$CA | |||
D2E0 | DEFW $0000 | |||
D2E2 | DEFW $6664 | Object ?? 20 | ||
D2E4 | DEFB $6D,$02,$CA | |||
D2E7 | DEFW $0000 | |||
D2E9 | DEFW $6664 | Object ?? 21 | ||
D2EB | DEFB $6E,$03,$CC | |||
D2EE | DEFW $0000 | |||
D2F0 | DEFW $6664 | Object ?? 22 | ||
D2F2 | DEFB $6F,$02,$CA | |||
D2F5 | DEFW $0000 | |||
D2F7 | DEFW $6664 | Object ?? 23 | ||
D2F9 | DEFB $70,$06,$D2 | |||
D2FC | DEFW $0000 | |||
D2FE | DEFW $6664 | Object ?? 24 | ||
D300 | DEFB $71,$02,$CA | |||
D303 | DEFW $0000 | |||
D305 | DEFW $6664 | Object ?? 25 | ||
D307 | DEFB $72,$06,$D2 | |||
D30A | DEFW $0000 | |||
D30C | DEFW $6664 | Object ?? 26 | ||
D30E | DEFB $73,$02,$CA | |||
D311 | DEFW $0000 | |||
D313 | DEFW $6664 | Object ?? 27 | ||
D315 | DEFB $74,$03,$CC | |||
D318 | DEFW $0000 | |||
D31A | DEFW $6664 | Object ?? 28 | ||
D31C | DEFB $75,$03,$CC | |||
D31F | DEFW $0000 | |||
D321 | DEFW $6664 | Object ?? 29 | ||
D323 | DEFB $76,$03,$CC | |||
D326 | DEFW $0000 | |||
D328 | DEFW $6664 | Object ?? 30 | ||
D32A | DEFB $77,$04,$CE | |||
D32D | DEFW $0000 | |||
D32F | DEFW $6664 | Object ?? 31 | ||
D331 | DEFB $78,$04,$CE | |||
D334 | DEFW $0000 | |||
D336 | DEFW $6664 | Object ?? 32 | ||
D338 | DEFB $79,$04,$CE | |||
D33B | DEFW $0000 | |||
D33D | DEFW $6664 | Object ?? 33 | ||
D33F | DEFB $7A,$04,$CE | |||
D342 | DEFW $0000 | |||
D344 | DEFW $6664 | Object ?? 34 | ||
D346 | DEFB $7B,$04,$CE | |||
D349 | DEFB $00,$00 |
|
||||
D34B | DEFW $6664 |
|
||||
+$00/$01: room address
+$02/$03: address in Tile screen 0
+$04: tile byte
|
||||
D34D | DEFW $9ED9,$66DF | |||
D351 | DEFB $81 | |||
D352 | DEFW $9E22,$671C | |||
D356 | DEFB $65 | |||
D357 | DEFW $9E22,$672E | BOMB, placement depends on Level | ||
D35B | DEFB $66 | |||
D35C | DEFW $990D,$6787 | |||
D360 | DEFB $67 | |||
D361 | DEFW $8D5C,$6767 | |||
D365 | DEFB $68 | |||
D366 | DEFW $8EE1,$675E | |||
D36A | DEFB $69 | |||
D36B | DEFW $889F,$66DC | |||
D36F | DEFB $6A | |||
D370 | DEFW $890E,$6699 | |||
D374 | DEFB $6B | |||
D375 | DEFW $8CC8,$6782 | |||
D379 | DEFB $6C | |||
D37A | DEFW $8739,$66AA | #10 | ||
D37E | DEFB $6D | |||
D37F | DEFW $8799,$6757 | |||
D383 | DEFB $6E | |||
D384 | DEFW $913F,$6782 | |||
D388 | DEFB $6F | |||
D389 | DEFW $8321,$6777 | |||
D38D | DEFB $70 | |||
D38E | DEFW $8162,$6782 | |||
D392 | DEFB $71 | |||
D393 | DEFW $7EF2,$6788 | |||
D397 | DEFB $72 | |||
D398 | DEFW $7F48,$6744 | |||
D39C | DEFB $73 | |||
D39D | DEFW $7C6D,$6747 | |||
D3A1 | DEFB $74 | |||
D3A2 | DEFW $7A9E,$675D | |||
D3A6 | DEFB $75 | |||
D3A7 | DEFW $7A9E,$6767 | |||
D3AB | DEFB $76 | |||
D3AC | DEFW $7A9E,$6769 | #20 | ||
D3B0 | DEFB $77 | |||
D3B1 | DEFW $7AF8,$6785 | |||
D3B5 | DEFB $78 | |||
D3B6 | DEFW $7AF8,$6786 | |||
D3BA | DEFB $79 | |||
D3BB | DEFW $9376,$673B | |||
D3BF | DEFB $7A | |||
D3C0 | DEFW $79C6,$6785 | |||
D3C4 | DEFB $7B | |||
D3C5 | DEFW $80F6,$6773 | Console in room 80F6 | ||
D3C9 | DEFB $7C | |||
D3CA | DEFW $99A6,$6783 | Console in room 99A6 | ||
D3CE | DEFB $7D | |||
D3CF | DEFW $92A7,$675D | Console in room 92A7, see D26B | ||
D3D3 | DEFB $7E | |||
D3D4 | DEFW $92EF,$6668 | Console in room 92EF | ||
D3D8 | DEFB $7F | |||
D3D9 | DEFW $9005,$66B5 | Console in room 9005 | ||
D3DD | DEFB $80 |
|
||||
D3DE | DEFB $FF,$FF,$FF,$FF,$FF,$FF | ![]() |
||
D3E4 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D3EA | DEFB $FF,$FF,$4F,$50,$51,$FF | |||
D3F0 | DEFB $FF,$FF,$52,$53,$54,$FF | |||
D3F6 | DEFB $FF,$FF,$55,$56,$57,$FF | |||
D3FC | DEFB $FF,$FF,$58,$59,$FF,$FF | |||
D402 | DEFB $FF,$5A,$5B,$5C,$FF,$FF | |||
Sprite Ninja/Guard walking 2
|
||||
D408 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | ![]() |
||
D40E | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D414 | DEFB $FF,$FF,$4F,$50,$51,$FF | |||
D41A | DEFB $FF,$FF,$52,$53,$54,$FF | |||
D420 | DEFB $FF,$FF,$55,$5E,$5F,$FF | |||
D426 | DEFB $FF,$FF,$60,$61,$62,$FF | |||
D42C | DEFB $FF,$FF,$63,$64,$FF,$FF | |||
Sprite Ninja/Guard walking 3
|
||||
D432 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | ![]() |
||
D438 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D43E | DEFB $FF,$FF,$4F,$50,$51,$FF | |||
D444 | DEFB $FF,$FF,$52,$53,$54,$FF | |||
D44A | DEFB $FF,$FF,$5D,$65,$66,$FF | |||
D450 | DEFB $FF,$FF,$67,$68,$69,$FF | |||
D456 | DEFB $FF,$6A,$6B,$6C,$FF,$FF | |||
Sprite Ninja/Guard walking 4
|
||||
D45C | DEFB $FF,$FF,$FF,$FF,$FF,$FF | ![]() |
||
D462 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D468 | DEFB $FF,$FF,$4F,$50,$51,$FF | |||
D46E | DEFB $FF,$FF,$52,$53,$54,$FF | |||
D474 | DEFB $FF,$FF,$5D,$6D,$57,$FF | |||
D47A | DEFB $FF,$6F,$70,$71,$72,$FF | |||
D480 | DEFB $FF,$73,$74,$FF,$75,$FF | |||
Sprite Ninja/Guard standing
|
||||
D486 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | ![]() |
||
D48C | DEFB $FF,$FF,$F4,$F5,$FF,$FF | |||
D492 | DEFB $FF,$02,$03,$F6,$FF,$FF | |||
D498 | DEFB $FF,$05,$06,$07,$08,$FF | |||
D49E | DEFB $FF,$0A,$0B,$0C,$0D,$FF | |||
D4A4 | DEFB $FF,$FF,$0E,$0F,$10,$FF | |||
D4AA | DEFB $FF,$FF,$11,$FF,$12,$FF | |||
Sprite Ninja/Guard jumping
|
||||
D4B0 | DEFB $FF,$FF,$13,$14,$FF,$FF | ![]() |
||
D4B6 | DEFB $FF,$15,$16,$17,$FF,$FF | |||
D4BC | DEFB $FF,$18,$19,$1A,$FF,$FF | |||
D4C2 | DEFB $FF,$1B,$1C,$1D,$FF,$FF | |||
D4C8 | DEFB $FF,$FF,$1E,$1F,$FF,$FF | |||
D4CE | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D4D4 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
Sprite Ninja/Guard jump-kick
|
||||
D4DA | DEFB $FF,$FF,$20,$21,$FF,$FF | ![]() |
||
D4E0 | DEFB $4D,$22,$23,$FF,$FF,$FF | |||
D4E6 | DEFB $4E,$24,$25,$26,$27,$2C | |||
D4EC | DEFB $FF,$28,$29,$2A,$2B,$FF | |||
D4F2 | DEFB $FF,$FF,$2D,$2E,$FF,$FF | |||
D4F8 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D4FE | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
Sprite Ninja/Guard punching
|
||||
D504 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | ![]() |
||
D50A | DEFB $FF,$FF,$00,$01,$FF,$FF | |||
D510 | DEFB $FF,$FF,$2F,$30,$31,$FF | |||
D516 | DEFB $FF,$FF,$32,$33,$34,$FF | |||
D51C | DEFB $FF,$FF,$35,$0C,$0D,$FF | |||
D522 | DEFB $FF,$FF,$0E,$0F,$10,$FF | |||
D528 | DEFB $FF,$FF,$11,$FF,$12,$FF | |||
Sprite Ninja on ladder
|
||||
D52E | DEFB $FF,$FF,$40,$FF,$FF,$FF | ![]() |
||
D534 | DEFB $FF,$FF,$41,$42,$FF,$FF | |||
D53A | DEFB $FF,$FF,$43,$44,$FF,$FF | |||
D540 | DEFB $FF,$FF,$45,$46,$FF,$FF | |||
D546 | DEFB $FF,$FF,$47,$48,$FF,$FF | |||
D54C | DEFB $FF,$FF,$49,$4A,$FF,$FF | |||
D552 | DEFB $FF,$FF,$4B,$4C,$FF,$FF | |||
Sprite Ninja sitting
|
||||
D558 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | ![]() |
||
D55E | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D564 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D56A | DEFB $FF,$FF,$FF,$36,$FF,$FF | |||
D570 | DEFB $FF,$FF,$37,$38,$39,$FF | |||
D576 | DEFB $FF,$FF,$3A,$3B,$3C,$FF | |||
D57C | DEFB $FF,$FF,$3D,$3E,$3F,$FF | |||
Sprite Ninja falling
|
||||
D582 | DEFB $FF,$FF,$6E,$7C,$FF,$FF | ![]() |
||
D588 | DEFB $FF,$FF,$7D,$7E,$FF,$FF | |||
D58E | DEFB $FF,$FF,$7F,$80,$FF,$FF | |||
D594 | DEFB $FF,$FF,$81,$82,$FF,$FF | |||
D59A | DEFB $FF,$FF,$76,$77,$FF,$FF | |||
D5A0 | DEFB $FF,$FF,$78,$79,$FF,$FF | |||
D5A6 | DEFB $FF,$FF,$7A,$7B,$FF,$FF | |||
Sprite Ninja jumping 3
|
||||
D5AC | DEFB $FF,$FF,$FF,$FF,$FF,$FF | ![]() |
||
D5B2 | DEFB $FF,$FF,$8D,$8E,$FF,$FF | |||
D5B8 | DEFB $FF,$8F,$90,$91,$92,$FF | |||
D5BE | DEFB $FF,$93,$94,$95,$96,$FF | |||
D5C4 | DEFB $FF,$97,$98,$99,$9A,$FF | |||
D5CA | DEFB $FF,$9B,$9C,$9D,$FF,$FF | |||
D5D0 | DEFB $FF,$9E,$FF,$FF,$FF,$FF | |||
Sprite Ninja jumping 4
|
||||
D5D6 | DEFB $FF,$FF,$84,$88,$FF,$FF | ![]() |
||
D5DC | DEFB $FF,$8C,$85,$89,$FF,$FF | |||
D5E2 | DEFB $FF,$83,$86,$8A,$FF,$FF | |||
D5E8 | DEFB $FF,$FF,$87,$8B,$FF,$FF | |||
D5EE | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D5F4 | DEFB $FF,$FF,$FF,$FF,$FF,$FF | |||
D5FA | DEFB $FF,$FF,$FF,$FF,$FF,$FF |
|
||||
![]() |
||||
D600 | DEFB $00,$FF,$00,$D8,$00,$A8,$00,$D8,$00,$FF,$00,$8A,$00,$8A,$00,$8A,$30 | |||
D611 | DEFB $00,$FF,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$AA,$00,$AA,$00,$AA,$30 | |||
D622 | DEFB $00,$FF,$00,$15,$00,$1B,$00,$15,$00,$FF,$00,$B1,$00,$B1,$00,$B1,$30 | |||
D633 | DEFB $00,$8A,$00,$8A,$00,$8F,$00,$A8,$00,$A8,$00,$88,$00,$8F,$00,$8A,$30 | |||
D644 | DEFB $00,$AA,$00,$AA,$00,$FF,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$AA,$30 | |||
D655 | DEFB $00,$B1,$00,$B1,$00,$F1,$00,$15,$00,$15,$00,$11,$00,$F1,$00,$B1,$30 | |||
D666 | DEFB $00,$8A,$00,$8A,$00,$8A,$00,$8F,$00,$A8,$00,$A8,$00,$88,$00,$FF,$30 | |||
D677 | DEFB $00,$AA,$00,$AA,$00,$AA,$00,$FF,$00,$00,$00,$00,$00,$00,$00,$FF,$30 | |||
D688 | DEFB $00,$B1,$00,$B1,$00,$B1,$00,$F1,$00,$15,$00,$15,$00,$11,$00,$FF,$30 | |||
D699 | DEFB $00,$FF,$00,$80,$00,$FF,$00,$95,$00,$95,$00,$95,$00,$95,$00,$FF,$30 | |||
D6AA | DEFB $00,$FF,$00,$01,$00,$FF,$00,$59,$00,$59,$00,$59,$00,$59,$00,$FF,$30 | |||
D6BB | DEFB $9B,$64,$13,$AC,$01,$FE,$00,$FF,$00,$FF,$00,$BF,$00,$FF,$00,$FD,$0D | |||
D6CC | DEFB $00,$5F,$00,$FB,$00,$BF,$00,$DF,$00,$FF,$00,$7D,$00,$EF,$00,$FF,$25 | |||
D6DD | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00 | |||
D6EE | DEFB $00,$FF,$00,$FF,$00,$FB,$00,$DB,$00,$DF,$00,$FF,$00,$F7,$00,$F6,$50 | |||
D6FF | DEFB $00,$DF,$00,$FF,$00,$FF,$00,$FB,$00,$FF,$00,$FF,$00,$EF,$00,$FF,$70 | |||
D710 | DEFB $00,$F3,$00,$C9,$00,$89,$00,$B6,$00,$C8,$00,$C9,$00,$E7,$00,$FF,$68 | |||
D721 | DEFB $00,$FE,$00,$F7,$00,$F7,$00,$DF,$00,$DF,$00,$FD,$00,$FD,$00,$FF,$70 | |||
D732 | DEFB $00,$FF,$00,$00,$00,$FF,$00,$00,$00,$00,$00,$00,$00,$24,$00,$00,$78 | |||
D743 | DEFB $00,$FF,$00,$AF,$00,$AF,$00,$AF,$00,$AD,$00,$AD,$00,$FF,$00,$FF,$60 | |||
D754 | DEFB $F0,$07,$E0,$08,$E0,$0F,$C0,$1D,$C0,$1B,$80,$3A,$80,$31,$80,$27,$32 | |||
D765 | DEFB $00,$FF,$00,$00,$00,$FF,$00,$BB,$00,$7D,$00,$00,$00,$7D,$00,$7D,$32 | |||
D776 | DEFB $07,$E0,$03,$10,$03,$F0,$01,$B8,$01,$D8,$00,$5C,$00,$8C,$00,$E4,$32 | |||
D787 | DEFB $80,$36,$80,$36,$80,$2E,$80,$2E,$80,$22,$80,$2C,$80,$36,$80,$36,$32 | |||
D798 | DEFB $00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$00,$00,$FE,$00,$FE,$32 | |||
D7A9 | DEFB $00,$EC,$00,$EC,$00,$F4,$00,$F4,$00,$84,$00,$74,$00,$EC,$00,$EC,$32 | |||
D7BA | DEFB $80,$27,$80,$31,$80,$3A,$C0,$1A,$C0,$1D,$E0,$0F,$E0,$08,$F0,$07,$32 | |||
D7CB | DEFB $00,$7D,$00,$7D,$00,$00,$00,$7C,$00,$BB,$00,$FF,$00,$00,$00,$FF,$32 | |||
D7DC | DEFB $00,$E4,$00,$8C,$00,$1C,$01,$18,$01,$B8,$03,$F0,$03,$10,$07,$E0,$32 | |||
D7ED | DEFB $00,$FF,$00,$00,$00,$FF,$00,$55,$00,$55,$00,$55,$00,$55,$00,$FF,$30 | |||
D7FE | DEFB $B3,$4C,$B2,$4D,$22,$DD,$02,$FD,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$0D | |||
D80F | DEFB $FF,$00,$FF,$00,$FF,$00,$FF,$00,$F8,$00,$F0,$07,$F0,$07,$F0,$00,$FF | |||
D820 | DEFB $FF,$00,$FF,$00,$FF,$00,$E7,$00,$C3,$18,$03,$18,$03,$58,$01,$00,$FF | |||
D831 | DEFB $E0,$0F,$C0,$1F,$80,$3F,$80,$3F,$C0,$00,$FE,$00,$FE,$00,$FE,$00,$FF | |||
D842 | DEFB $00,$FE,$00,$FE,$00,$FA,$00,$FE,$01,$B0,$07,$B0,$07,$B0,$07,$B0,$FF | |||
D853 | DEFB $FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FF | |||
D864 | DEFB $07,$B0,$07,$B0,$07,$B0,$07,$B0,$07,$B0,$07,$B0,$07,$B0,$07,$B0,$FF | |||
D875 | DEFB $FE,$00,$FE,$00,$FE,$00,$E6,$00,$C2,$18,$C0,$00,$80,$3F,$00,$7F,$FF | |||
D886 | DEFB $07,$B0,$07,$B0,$07,$B0,$07,$B0,$07,$B0,$03,$B0,$01,$FC,$00,$FE,$FF | |||
D897 | DEFB $00,$FF,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$00,$00,$FF,$00,$00,$10 | |||
D8A8 | DEFB $00,$99,$00,$9D,$00,$99,$00,$9B,$00,$DB,$00,$D9,$00,$99,$00,$B9,$28 | |||
D8B9 | DEFB $00,$FF,$00,$66,$00,$00,$00,$00,$00,$FF,$00,$00,$00,$FF,$00,$99,$10 | |||
D8CA | DEFB $00,$FF,$00,$FF,$00,$81,$00,$81,$00,$FF,$00,$81,$00,$81,$00,$81,$30 | |||
D8DB | DEFB $00,$FF,$00,$81,$00,$81,$00,$81,$00,$81,$00,$81,$00,$81,$00,$81,$30 | |||
D8EC | DEFB $81,$3C,$C3,$08,$E1,$0C,$C0,$0A,$81,$34,$03,$78,$07,$F0,$0F,$60,$FF | |||
D8FD | DEFB $81,$3C,$C1,$08,$81,$3C,$81,$2C,$81,$34,$81,$3C,$81,$24,$81,$3C,$FF | |||
D90E | DEFB $81,$3C,$C3,$10,$87,$30,$03,$50,$81,$2C,$C0,$1E,$E0,$0F,$F0,$06,$FF | |||
D91F | DEFB $FF,$00,$FF,$00,$FF,$00,$F8,$00,$F0,$07,$F0,$04,$F0,$07,$C0,$00,$FF | |||
D930 | DEFB $FF,$00,$FF,$00,$F8,$00,$10,$07,$00,$E5,$00,$25,$00,$E7,$00,$1B,$FF | |||
D941 | DEFB $FF,$00,$FF,$00,$FF,$00,$7F,$00,$78,$00,$70,$07,$30,$04,$10,$C4,$FF | |||
D952 | DEFB $FF,$00,$FF,$00,$FF,$00,$FF,$00,$C7,$00,$03,$38,$03,$E8,$01,$34,$FF | |||
D963 | DEFB $FF,$00,$FF,$00,$FC,$00,$F0,$03,$00,$0C,$00,$F9,$00,$9E,$00,$F1,$FF | |||
D974 | DEFB $80,$31,$00,$4A,$00,$46,$00,$36,$00,$8A,$00,$FF,$00,$43,$00,$7E,$FF | |||
D985 | DEFB $00,$A3,$00,$C2,$00,$DC,$00,$61,$00,$42,$00,$7F,$00,$E1,$00,$BF,$FF | |||
D996 | DEFB $00,$23,$00,$FE,$00,$A2,$00,$7F,$00,$14,$00,$08,$00,$D9,$00,$26,$FF | |||
D9A7 | DEFB $01,$5C,$00,$BE,$00,$E2,$00,$7F,$00,$42,$00,$FC,$00,$87,$00,$FC,$FF | |||
D9B8 | DEFB $FF,$00,$FF,$00,$FF,$00,$7F,$00,$01,$80,$00,$7E,$00,$22,$00,$FE,$FF | |||
D9C9 | DEFB $FC,$01,$F8,$02,$F0,$05,$E0,$0A,$40,$14,$02,$A8,$06,$D0,$0E,$E0,$FF | |||
D9DA | DEFB $1E,$C0,$1E,$C0,$1E,$C0,$1E,$C0,$1E,$C0,$1E,$C0,$1E,$C0,$1C,$C0,$FF | |||
D9EB | DEFB $18,$C3,$10,$C6,$01,$CC,$03,$D8,$07,$F0,$0F,$E0,$1F,$C0,$3F,$80,$FF | |||
D9FC | DEFB $3F,$80,$1F,$40,$0F,$A0,$07,$50,$02,$28,$40,$15,$60,$0B,$70,$07,$FF | |||
DA0D | DEFB $78,$03,$78,$03,$78,$03,$78,$03,$78,$03,$78,$03,$78,$03,$38,$03,$FF | |||
DA1E | DEFB $18,$C3,$08,$63,$80,$33,$C0,$1B,$E0,$0F,$F0,$07,$F8,$03,$FC,$01,$FF | |||
DA2F | DEFB $00,$FF,$00,$80,$00,$80,$00,$C0,$C0,$20,$C0,$20,$00,$FF,$00,$80,$FF | |||
DA40 | DEFB $00,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$00,$FF | |||
DA51 | DEFB $00,$FF,$00,$01,$00,$01,$00,$03,$03,$04,$03,$04,$00,$FF,$00,$01,$FF | |||
DA62 | DEFB $00,$80,$00,$C0,$C0,$20,$C0,$20,$00,$FF,$00,$80,$00,$80,$00,$C0,$FF | |||
DA73 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$00,$00,$00,$00,$00,$FF | |||
DA84 | DEFB $00,$01,$00,$03,$03,$04,$03,$04,$00,$FF,$00,$01,$00,$01,$00,$03,$FF | |||
DA95 | DEFB $C0,$20,$C0,$20,$00,$FF,$00,$80,$00,$80,$00,$C0,$C0,$20,$C0,$20,$FF | |||
DAA6 | DEFB $00,$00,$00,$00,$00,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF | |||
DAB7 | DEFB $03,$04,$03,$04,$00,$FF,$00,$01,$00,$01,$00,$03,$03,$04,$03,$04,$FF | |||
DAC8 | DEFB $00,$FF,$00,$80,$00,$80,$00,$C0,$C0,$20,$C0,$20,$E0,$10,$E0,$10,$FF | |||
DAD9 | DEFB $00,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF | |||
DAEA | DEFB $00,$FF,$00,$01,$00,$01,$00,$03,$03,$04,$03,$04,$07,$08,$07,$08,$FF | |||
DAFB | DEFB $FF,$00,$FF,$00,$FF,$00,$FF,$00,$00,$FF,$00,$80,$00,$80,$00,$C0,$FF | |||
DB0C | DEFB $FF,$00,$FF,$00,$FF,$00,$FF,$00,$00,$FF,$00,$00,$00,$00,$00,$00,$FF | |||
DB1D | DEFB $FF,$00,$FF,$00,$FF,$00,$FF,$00,$00,$FF,$00,$01,$00,$01,$00,$03,$FF | |||
DB2E | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$29 | |||
DB3F | DEFB $00,$83,$7C,$01,$7C,$01,$7C,$01,$7C,$01,$7C,$01,$00,$83,$00,$FF,$FF | |||
DB50 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$01 | |||
DB61 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$05 | |||
DB72 | DEFB $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$08 | |||
DB83 | DEFB $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$28 | |||
DB94 | DEFB $00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$08 | |||
DBA5 | DEFB $00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$28 | |||
DBB6 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$7F,$00,$7F,$00,$7F,$00,$7F,$29 | |||
DBC7 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$29 | |||
DBD8 | DEFB $1F,$C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$C0,$FF | |||
DBE9 | DEFB $F8,$03,$F8,$03,$F8,$03,$F8,$03,$F8,$03,$F8,$03,$F8,$03,$F8,$03,$FF | |||
DBFA | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$FF | |||
DC0B | DEFB $00,$F0,$0F,$C0,$3F,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
DC1C | DEFB $00,$3F,$C0,$0F,$F0,$03,$FC,$01,$FE,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
DC2D | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$3F,$C0,$03,$FF | |||
DC3E | DEFB $00,$FB,$00,$FB,$00,$F7,$00,$F7,$00,$EF,$00,$EF,$00,$FF,$00,$E0,$FF | |||
DC4F | DEFB $00,$FE,$00,$FE,$00,$FD,$00,$FD,$00,$FD,$00,$FD,$00,$FD,$00,$FB,$FF | |||
DC60 | DEFB $00,$3E,$00,$3E,$00,$3E,$00,$7E,$00,$7E,$00,$FE,$00,$FE,$00,$FE,$FF | |||
DC71 | DEFB $3F,$00,$0F,$C0,$07,$F0,$03,$F8,$01,$FC,$00,$FE,$00,$FE,$00,$FF,$FF | |||
DC82 | DEFB $C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$FF | |||
DC93 | DEFB $00,$01,$0E,$C0,$07,$F0,$03,$F8,$01,$FC,$00,$7E,$80,$3E,$80,$3F,$FF | |||
DCA4 | DEFB $FF,$00,$FC,$00,$F0,$03,$C0,$0F,$80,$3F,$00,$7F,$00,$FF,$00,$FF,$FF | |||
DCB5 | DEFB $80,$0F,$00,$7F,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$FF | |||
DCC6 | DEFB $00,$00,$00,$04,$00,$42,$00,$00,$00,$00,$00,$24,$00,$12,$00,$02,$0D | |||
DCD7 | DEFB $00,$08,$00,$00,$00,$01,$00,$11,$00,$80,$00,$02,$00,$01,$00,$65,$0C | |||
DCE8 | DEFB $00,$F1,$00,$E4,$00,$E8,$00,$E8,$00,$E0,$00,$F0,$00,$30,$00,$DC,$30 | |||
DCF9 | DEFB $00,$70,$00,$DF,$00,$BF,$00,$BF,$00,$FF,$00,$7F,$00,$7F,$00,$1F,$0E | |||
DD0A | DEFB $00,$9F,$00,$FF,$00,$DF,$00,$BF,$00,$BF,$00,$DF,$00,$FF,$00,$FD,$06 | |||
DD1B | DEFB $00,$6C,$00,$FE,$00,$BF,$00,$BF,$00,$BF,$00,$FE,$00,$FE,$00,$F8,$0E | |||
DD2C | DEFB $00,$FF,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$0F | |||
DD3D | DEFB $00,$FF,$00,$00,$00,$00,$00,$00,$00,$0C,$00,$0C,$00,$0C,$00,$0C,$0F | |||
DD4E | DEFB $00,$FF,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$0F | |||
DD5F | DEFB $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$0F | |||
DD70 | DEFB $00,$0C,$00,$0C,$00,$0C,$00,$0C,$00,$0C,$00,$3C,$00,$3C,$00,$3C,$0F | |||
DD81 | DEFB $00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$0F | |||
DD92 | DEFB $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$FF,$0F | |||
DDA3 | DEFB $00,$3C,$00,$3C,$00,$3C,$00,$3C,$00,$3C,$00,$00,$00,$00,$00,$FF,$0F | |||
DDB4 | DEFB $00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$FF,$0F | |||
DDC5 | DEFB $00,$FF,$00,$80,$00,$80,$00,$80,$00,$83,$00,$83,$00,$83,$00,$80,$0F | |||
DDD6 | DEFB $00,$FF,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$FF,$00,$E1,$00,$01,$0F | |||
DDE7 | DEFB $00,$FF,$00,$01,$00,$01,$00,$01,$00,$C1,$00,$C1,$00,$C1,$00,$C1,$0F | |||
DDF8 | DEFB $00,$80,$00,$80,$00,$80,$00,$83,$00,$83,$00,$83,$00,$83,$00,$83,$0F | |||
DE09 | DEFB $00,$01,$00,$01,$00,$01,$00,$FF,$00,$FF,$00,$80,$00,$80,$00,$80,$0F | |||
DE1A | DEFB $00,$C1,$00,$C1,$00,$C1,$00,$C1,$00,$C1,$00,$01,$00,$01,$00,$01,$0F | |||
DE2B | DEFB $00,$83,$00,$83,$00,$83,$00,$83,$00,$83,$00,$80,$00,$80,$00,$FF,$0F | |||
DE3C | DEFB $00,$80,$00,$80,$00,$83,$00,$FF,$00,$FF,$00,$00,$00,$00,$00,$FF,$0F | |||
DE4D | DEFB $00,$01,$00,$01,$00,$C1,$00,$C1,$00,$C1,$00,$01,$00,$01,$00,$FF,$0F | |||
DE5E | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 |
Used by the routine at B66A.
|
||||
DE68 | LD B,$14 | 20 records | ||
DE6A | LD HL,$DE84 | |||
DE6D | LD A,($7184) | get Current Room address low byte | ||
DE70 | CP (HL) | |||
DE71 | INC HL | |||
DE72 | JR NZ,$DE7E | |||
DE74 | LD A,($7185) | get Current Room address high byte | ||
DE77 | CP (HL) | |||
DE78 | INC HL | |||
DE79 | JR NZ,$DE7F | |||
DE7B | LD A,$01 | |||
DE7D | RET | |||
DE7E | INC HL | |||
DE7F | INC HL | |||
DE80 | DJNZ $DE6D | |||
DE82 | XOR A | |||
DE83 | RET |
|
||||
DE84 | DEFW $79C6 | |||
DE86 | DEFB $00 | |||
DE87 | DEFW $7C2E | |||
DE89 | DEFB $00 | |||
DE8A | DEFW $7F9C | |||
DE8C | DEFB $01 | |||
DE8D | DEFW $81E5 | |||
DE8F | DEFB $00 | |||
DE90 | DEFW $8162 | |||
DE92 | DEFB $01 | |||
DE93 | DEFW $7EF2 | |||
DE95 | DEFB $01 | |||
DE96 | DEFW $7E05 | |||
DE98 | DEFB $01 | |||
DE99 | DEFW $80A7 | |||
DE9B | DEFB $00 | |||
DE9C | DEFW $83ED | |||
DE9E | DEFB $00 | |||
DE9F | DEFW $80F6 | |||
DEA1 | DEFB $00 | |||
DEA2 | DEFW $924E | |||
DEA4 | DEFB $00 | |||
DEA5 | DEFW $91BA | |||
DEA7 | DEFB $01 | |||
DEA8 | DEFW $90DB | |||
DEAA | DEFB $01 | |||
DEAB | DEFW $909F | |||
DEAD | DEFB $00 | |||
DEAE | DEFW $8802 | |||
DEB0 | DEFB $00 | |||
DEB1 | DEFW $8608 | |||
DEB3 | DEFB $00 | |||
DEB4 | DEFW $844E | |||
DEB6 | DEFB $00 | |||
DEB7 | DEFW $9739 | |||
DEB9 | DEFB $01 | |||
DEBA | DEFW $9A5A | |||
DEBC | DEFB $00 | |||
DEBD | DEFW $9B9D | |||
DEBF | DEFB $01 |
|
||||
DEC0 | DEFB $00 |
Clears 10 strings, 18 characters each; used to clear table of scores, menu etc.
|
||||
DEC1 | LD B,$0A | |||
DEC3 | LD DE,$402C | |||
DEC6 | PUSH DE | |||
DEC7 | PUSH BC | |||
DEC8 | LD C,$12 | |||
DECA | LD HL,$DEE6 | String 18 spaces | ||
DECD | CALL $AED1 | Print string | ||
DED0 | POP BC | |||
DED1 | POP DE | |||
DED2 | RR D | |||
DED4 | RR D | |||
DED6 | RR D | |||
DED8 | LD HL,$0020 | |||
DEDB | ADD HL,DE | |||
DEDC | EX DE,HL | |||
DEDD | RL D | |||
DEDF | RL D | |||
DEE1 | RL D | |||
DEE3 | DJNZ $DEC6 | |||
DEE5 | RET |
|
||||
DEE6 | DEFM " " |
|
||||
DEF8 | DEFM "J KEMPSTON" | |||
DF03 | DEFM "K KEYBOARD" | |||
DF0E | DEFM "P PROTEK" | |||
DF17 | DEFM "R REDEFINE KEYS" | |||
DF27 | DEFM "S START MISSION" |
Used by the routine at BC0D.
|
||||
DF37 | LD A,$01 | blue | ||
DF39 | OUT ($FE),A | set border color, sound off | ||
DF3B | LD ($5C09),A | set REPDEL = 1 | ||
DF3E | LD ($5C0A),A | set REPPER = 1 | ||
DF41 | LD A,$08 | |||
DF43 | LD ($5C48),A | set BORDCR = $08 | ||
DF46 | CALL $E04D | Clear key buffer playing melody | ||
DF49 | LD DE,$00D4 | |||
DF4C | PUSH DE | |||
DF4D | CALL $E440 | Play next note in melody | ||
DF50 | CALL $DFD4 | Clear LASTK and do RST $38 once | ||
DF53 | POP DE | |||
DF54 | LD A,($5C08) | get LASTK | ||
DF57 | CP $00 | |||
DF59 | JR NZ,$DF60 | key pressed => Main menu | ||
DF5B | DEC DE | |||
DF5C | LD A,D | |||
DF5D | OR E | |||
DF5E | JR NZ,$DF4C |
DF60 | CALL $DEC1 | Clear strings on the screen | ||
DF63 | LD HL,$DEF8 | Menu messages address | ||
DF66 | LD DE,$402D | |||
DF69 | LD C,$0B | |||
DF6B | CALL $AED1 | Print string "J KEMPSTON" | ||
DF6E | LD C,$0B | |||
DF70 | LD DE,$406D | |||
DF73 | CALL $AED1 | Print string "K KEYBOARD" | ||
DF76 | LD C,$09 | |||
DF78 | LD DE,$40AD | |||
DF7B | CALL $AED1 | Print string "P PROTEK" | ||
DF7E | LD C,$10 | |||
DF80 | LD DE,$40ED | |||
DF83 | CALL $AED1 | Print string "R REDEFINE KEYS" | ||
DF86 | LD C,$10 | |||
DF88 | LD DE,$484D | |||
DF8B | CALL $AED1 | Print string "S START MISSION" | ||
DF8E | CALL $E04D | Clear key buffer playing melody | ||
DF91 | CALL $DFDB | Highlight Menu item | ||
DF94 | LD DE,$00D4 | |||
DF97 | PUSH DE | |||
DF98 | CALL $E440 | Play next note in melody | ||
DF9B | CALL $DFD4 | Clear LASTK and do RST $38 once | ||
DF9E | POP DE | |||
DF9F | LD A,($5C08) | get LASTK | ||
DFA2 | CP $61 | |||
DFA4 | JR C,$DFA8 | |||
DFA6 | SUB $20 | |||
DFA8 | CP $53 | 'S' ? | ||
DFAA | JP Z,$E2A7 | => Start Mission | ||
DFAD | CP $4A | 'J' ? | ||
DFAF | JR Z,$DFF1 | => Joystick selected | ||
DFB1 | CP $4B | 'K' ? | ||
DFB3 | JR Z,$E004 | => Keyboard selected | ||
DFB5 | CP $50 | 'P' ? | ||
DFB7 | JR Z,$E015 | => Protek selected | ||
DFB9 | CP $52 | 'R' ? | ||
DFBB | JP Z,$E097 | => Redefine Keys | ||
DFBE | LD A,($7222) | get Input method | ||
DFC1 | CP $01 | Joystick? | ||
DFC3 | JR NZ,$DFCC | |||
DFC5 | IN A,($1F) | read joystick port | ||
DFC7 | BIT 4,A | |||
DFC9 | JP NZ,$E2A7 | => Start Mission | ||
DFCC | DEC DE | |||
DFCD | LD A,D | |||
DFCE | OR E | |||
DFCF | JR NZ,$DF97 | |||
DFD1 | JP $BC3B |
DFD4 | XOR A | |||
DFD5 | LD ($5C08),A | clear LASTK | ||
DFD8 | RST $38 | |||
DFD9 | NOP | |||
DFDA | RET |
DFDB | LD HL,$58AC | |||
DFDE | LD B,$0D | |||
DFE0 | LD (HL),$B1 | |||
DFE2 | INC HL | |||
DFE3 | DJNZ $DFE0 | |||
DFE5 | RET |
DFE6 | LD HL,($DFDC) | |||
DFE9 | LD B,$0D | |||
DFEB | LD (HL),$0E | |||
DFED | INC HL | |||
DFEE | DJNZ $DFEB | |||
DFF0 | RET |
Used by the routine at DF60.
|
||||
DFF1 | CALL $DFE6 | Unhighlight Menu item | ||
DFF4 | LD HL,$582C | |||
DFF7 | LD ($DFDC),HL | |||
DFFA | CALL $DFDB | Highlight Menu item | ||
DFFD | LD A,$01 | |||
DFFF | LD ($7222),A | |||
E002 | JR $DFCC |
Used by the routine at DF60.
|
||||
E004 | CALL $DFE6 | Unhighlight Menu item | ||
E007 | LD HL,$586C | |||
E00A | LD ($DFDC),HL | |||
E00D | CALL $DFDB | Highlight Menu item | ||
E010 | LD HL,$E043 | |||
E013 | JR $E024 |
Used by the routine at DF60.
|
||||
E015 | CALL $DFE6 | Unhighlight Menu item | ||
E018 | LD HL,$58AC | |||
E01B | LD ($DFDC),HL | |||
E01E | CALL $DFDB | Highlight Menu item | ||
E021 | LD HL,$E039 | |||
This entry point is used by the routine at E004.
|
||||
E024 | LD DE,$7222 | |||
E027 | XOR A | |||
E028 | LD (DE),A | |||
E029 | INC DE | |||
E02A | LD B,$05 | |||
E02C | LD A,(HL) | |||
E02D | LD (DE),A | |||
E02E | INC DE | |||
E02F | INC HL | |||
E030 | LD A,(HL) | |||
E031 | LD (DE),A | |||
E032 | INC DE | |||
E033 | INC HL | |||
E034 | INC DE | |||
E035 | DJNZ $E02C | |||
E037 | JR $DFCC |
|
||||
E039 | DEFB $EF,$01,$EF,$08,$EF,$10,$F7,$10,$EF,$04 | Protek ports/bits | ||
E043 | DEFB $7F,$01,$FD,$01,$FE,$02,$7F,$08,$7F,$04 | Keyboard input ports/bits |
E04D | CALL $E440 | Play next note in melody | ||
E050 | CALL $DFD4 | Clear LASTK and do RST $38 once | ||
E053 | LD A,($5C08) | get LASTK | ||
E056 | CP $00 | |||
E058 | RET Z | |||
E059 | JR $E04D |
|
||||
E05B | DEFM "REDEFINE KEYS" | |||
E068 | DEFM "PRESS THE KEYS" | |||
E076 | DEFM "OF YOUR CHOICE" | |||
E084 | DEFM "FIRE" | |||
E088 | DEFM "UP" | |||
E08A | DEFM "DOWN" | |||
E08E | DEFM "LEFT" | |||
E092 | DEFM "RIGHT" |
Used by the routine at DF60.
|
||||
E097 | CALL $DFE6 | Unhighlight Menu item | ||
E09A | CALL $DEC1 | Clear strings on the screen | ||
E09D | LD HL,$E05B | Redefine keys messages | ||
E0A0 | LD DE,$402D | |||
E0A3 | LD C,$0D | |||
E0A5 | CALL $AED1 | Print string "REDEFINE KEYS" | ||
E0A8 | LD DE,$406D | |||
E0AB | LD C,$0E | |||
E0AD | CALL $AED1 | Print string "PRESS THE KEYS" | ||
E0B0 | LD DE,$408D | |||
E0B3 | LD C,$0E | |||
E0B5 | CALL $AED1 | Print string "OF YOUR CHOICE" | ||
E0B8 | LD DE,$40CF | |||
E0BB | LD C,$04 | |||
E0BD | CALL $AED1 | Print string "FIRE" | ||
E0C0 | LD DE,$40EF | |||
E0C3 | LD C,$02 | |||
E0C5 | CALL $AED1 | Print string "UP" | ||
E0C8 | LD DE,$480F | |||
E0CB | LD C,$04 | |||
E0CD | CALL $AED1 | Print string "DOWN" | ||
E0D0 | LD DE,$482F | |||
E0D3 | LD C,$04 | |||
E0D5 | CALL $AED1 | Print string "LEFT" | ||
E0D8 | LD DE,$484F | |||
E0DB | LD C,$05 | |||
E0DD | CALL $AED1 | Print string "RIGHT" | ||
E0E0 | CALL $E04D | Clear key buffer playing melody | ||
E0E3 | EXX | |||
E0E4 | LD DE,$58CD | |||
E0E7 | LD BC,$7223 | |||
E0EA | EXX | |||
E0EB | LD DE,$40D5 | |||
E0EE | LD B,$05 | |||
E0F0 | LD IX,$E043 | |||
E0F4 | PUSH BC | |||
E0F5 | LD A,$B1 | |||
E0F7 | LD B,$0A | |||
E0F9 | EXX | |||
E0FA | LD (DE),A | |||
E0FB | INC DE | |||
E0FC | EXX | |||
E0FD | DJNZ $E0F9 | |||
E0FF | PUSH DE | |||
E100 | PUSH IX | |||
E102 | CALL $DFD4 | Clear LASTK and do RST $38 once | ||
E105 | CALL $E440 | Play next note in melody | ||
E108 | POP IX | |||
E10A | LD A,($5C08) | get LASTK | ||
E10D | CP $5B | '[' | ||
E10F | JR C,$E113 | |||
E111 | SUB $20 | |||
E113 | LD B,$25 | |||
E115 | LD ($E17C),A | |||
E118 | LD HL,$E17D | |||
E11B | CP (HL) | |||
E11C | JR Z,$E125 | |||
E11E | INC HL | |||
E11F | INC HL | |||
E120 | INC HL | |||
E121 | DJNZ $E11B | |||
E123 | JR $E100 | |||
E125 | LD B,$02 | |||
E127 | INC HL | |||
E128 | LD A,($DFDC) | |||
E12B | CP $6C | |||
E12D | LD A,(HL) | |||
E12E | LD (IX+$00),A | |||
E131 | JR NZ,$E137 | |||
E133 | EXX | |||
E134 | LD (BC),A | |||
E135 | INC BC | |||
E136 | EXX | |||
E137 | INC IX | |||
E139 | DJNZ $E127 | |||
E13B | EXX | |||
E13C | INC BC | |||
E13D | EXX | |||
E13E | POP DE | |||
E13F | PUSH DE | |||
E140 | LD C,$01 | |||
E142 | LD HL,$E17C | |||
E145 | CALL $AED1 | Print string | ||
E148 | PUSH IX | |||
E14A | CALL $E04D | Clear key buffer playing melody | ||
E14D | POP IX | |||
E14F | POP DE | |||
E150 | LD A,$0E | |||
E152 | LD B,$0A | |||
E154 | EXX | |||
E155 | DEC DE | |||
E156 | LD (DE),A | |||
E157 | EXX | |||
E158 | DJNZ $E154 | |||
E15A | EXX | |||
E15B | PUSH HL | |||
E15C | LD HL,$0020 | 32 | ||
E15F | ADD HL,DE | |||
E160 | EX DE,HL | |||
E161 | POP HL | |||
E162 | EXX | |||
E163 | LD HL,$0020 | 32 | ||
E166 | RR D | |||
E168 | RR D | |||
E16A | RR D | |||
E16C | ADD HL,DE | |||
E16D | EX DE,HL | |||
E16E | RL D | |||
E170 | RL D | |||
E172 | RL D | |||
E174 | POP BC | |||
E175 | DEC B | |||
E176 | JP NZ,$E0F4 | |||
E179 | JP $DF60 | => Main menu |
|
||||
E17C | DEFM "M" |
|
||||
E17D | DEFB $30,$EF,$01 | |||
E180 | DEFB $31,$F7,$01 | |||
E183 | DEFB $32,$F7,$02 | |||
E186 | DEFB $33,$F7,$04 | |||
E189 | DEFB $34,$F7,$08 | |||
E18C | DEFB $35,$F7,$10 | |||
E18F | DEFB $36,$EF,$10 | |||
E192 | DEFB $37,$EF,$08 | |||
E195 | DEFB $38,$EF,$04 | |||
E198 | DEFB $39,$EF,$02 | |||
E19B | DEFB $41,$FD,$01 | |||
E19E | DEFB $42,$7F,$10 | |||
E1A1 | DEFB $43,$FE,$08 | |||
E1A4 | DEFB $44,$FD,$04 | |||
E1A7 | DEFB $45,$FB,$04 | |||
E1AA | DEFB $46,$FD,$08 | |||
E1AD | DEFB $47,$FD,$10 | |||
E1B0 | DEFB $48,$BF,$10 | |||
E1B3 | DEFB $49,$DF,$04 | |||
E1B6 | DEFB $4A,$BF,$08 | |||
E1B9 | DEFB $4B,$BF,$04 | |||
E1BC | DEFB $4C,$BF,$02 | |||
E1BF | DEFB $4D,$7F,$04 | |||
E1C2 | DEFB $4E,$7F,$08 | |||
E1C5 | DEFB $4F,$DF,$02 | |||
E1C8 | DEFB $50,$DF,$01 | |||
E1CB | DEFB $51,$FB,$01 | |||
E1CE | DEFB $52,$FB,$08 | |||
E1D1 | DEFB $53,$FD,$02 | |||
E1D4 | DEFB $54,$FB,$10 | |||
E1D7 | DEFB $55,$DF,$08 | |||
E1DA | DEFB $56,$FE,$10 | |||
E1DD | DEFB $57,$FB,$02 | |||
E1E0 | DEFB $58,$FE,$04 | |||
E1E3 | DEFB $59,$DF,$10 | |||
E1E6 | DEFB $5A,$FE,$02 | |||
E1E9 | DEFB $20,$7F,$01 |
|
||||
E1EC | DEFM "1" | Current Level digit | ||
E1ED | DEFM "ENTER SKILL LEVEL" | |||
E1FE | DEFM "1 TO 9" | |||
E204 | DEFM "YOUR MISSION" | |||
E210 | DEFM "WILL BE" |
|
||||
E217 | DEFM "EXTREMELY EASY" | |||
E225 | DEFW $E38C | |||
E227 | DEFM " VERY EASY " | |||
E235 | DEFW $E3A0 | |||
E237 | DEFM " EASY " | |||
E245 | DEFW $E3B4 | |||
E247 | DEFM "SLIGHTLY EASY" | |||
E255 | DEFW $E3C8 | |||
E257 | DEFM " MODERATE " | |||
E265 | DEFW $E3DC | |||
E267 | DEFM "SLIGHTLY HARD" | |||
E275 | DEFW $E3F0 | |||
E277 | DEFM " HARD " | |||
E285 | DEFW $E404 | |||
E287 | DEFM " VERY HARD " | |||
E295 | DEFW $E418 | |||
E297 | DEFM "EXTREMELY HARD" | |||
E2A5 | DEFW $E42C |
Used by the routine at DF60.
|
||||
E2A7 | CALL $DFE6 | Unhighlight Menu item | ||
E2AA | CALL $DEC1 | Clear strings on the screen | ||
E2AD | LD HL,$E1ED | "ENTER SKILL LEVEL" | ||
E2B0 | LD DE,$406D | |||
E2B3 | LD C,$11 | |||
E2B5 | CALL $AED1 | Print string "ENTER SKILL LEVEL" | ||
E2B8 | LD DE,$4092 | |||
E2BB | LD C,$06 | |||
E2BD | CALL $AED1 | Print string "1 TO 9" | ||
E2C0 | CALL $E04D | Clear key buffer playing melody | ||
E2C3 | LD HL,$58F3 | |||
E2C6 | LD A,$B1 | |||
E2C8 | LD (HL),A | |||
E2C9 | INC HL | |||
E2CA | LD (HL),A | |||
E2CB | INC HL | |||
E2CC | LD (HL),A | |||
E2CD | CALL $E440 | Play next note in melody | ||
E2D0 | CALL $DFD4 | Clear LASTK and do RST $38 once | ||
E2D3 | LD A,($5C08) | get LASTK | ||
E2D6 | CP $31 | |||
E2D8 | JR C,$E2CD | |||
E2DA | CP $3A | |||
E2DC | JR NC,$E2CD | |||
E2DE | LD HL,$E1EC | Skill level address | ||
E2E1 | LD (HL),A | |||
E2E2 | LD DE,$40F4 | |||
E2E5 | LD C,$01 | |||
E2E7 | CALL $AED1 | Print string | ||
E2EA | CALL $E04D | Clear key buffer playing melody | ||
E2ED | LD HL,$58F3 | |||
E2F0 | LD A,$0E | |||
E2F2 | LD (HL),A | |||
E2F3 | INC HL | |||
E2F4 | LD (HL),A | |||
E2F5 | INC HL | |||
E2F6 | LD (HL),A | |||
E2F7 | CALL $DEC1 | Clear strings on the screen | ||
E2FA | LD HL,$E204 | "YOUR MISSION" | ||
E2FD | LD DE,$406F | |||
E300 | LD C,$0C | |||
E302 | CALL $AED1 | Print string "YOUR MISSION" | ||
E305 | LD DE,$4091 | |||
E308 | LD C,$07 | |||
E30A | CALL $AED1 | Print string "WILL BE" | ||
E30D | LD A,($E1EC) | get Skill level | ||
E310 | SUB $31 | |||
E312 | LD L,A | |||
E313 | LD H,$00 | |||
E315 | ADD HL,HL | |||
E316 | ADD HL,HL | |||
E317 | ADD HL,HL | |||
E318 | ADD HL,HL | * 16 | ||
E319 | LD DE,$E217 | Levels data base address | ||
E31C | ADD HL,DE | |||
E31D | LD DE,$40EE | |||
E320 | LD C,$0E | |||
E322 | CALL $AED1 | Print string - level description | ||
E325 | LD A,(HL) | |||
E326 | INC HL | |||
E327 | LD H,(HL) | |||
E328 | LD L,A | |||
E329 | LD A,(HL) | |||
E32A | LD ($A3BF),A | set Guard counter value | ||
E32D | INC HL | |||
E32E | LD A,(HL) | |||
E32F | LD ($9C57),A | set Dog counter value | ||
E332 | INC HL | |||
E333 | LD A,(HL) | |||
E334 | LD ($B4C4),A | set Turret counter value | ||
E337 | INC HL | |||
E338 | LD E,(HL) | |||
E339 | INC HL | |||
E33A | LD D,(HL) | |||
E33B | LD ($AD57),DE | set Indicator Time value | ||
E33F | INC HL | |||
E340 | LD E,(HL) | |||
E341 | INC HL | |||
E342 | LD D,(HL) | |||
E343 | LD ($B7CB),DE | set Time value for BOMB | ||
E347 | INC HL | |||
E348 | LD A,(HL) | |||
E349 | LD ($97D0),A | set flag for wall in room 97A6 | ||
E34C | INC HL | |||
E34D | LD A,(HL) | |||
E34E | LD ($9756),A | set count for wall in room 9739 | ||
E351 | INC HL | |||
E352 | LD A,(HL) | |||
E353 | LD ($7F7B),A | set count for wall in room 7F48 | ||
E356 | INC HL | |||
E357 | LD A,(HL) | |||
E358 | LD ($8DBC),A | set count for wall in room 8D5C | ||
E35B | INC HL | |||
E35C | LD A,(HL) | |||
E35D | LD ($8F32),A | set count for wall in room 8F20 | ||
E360 | INC HL | |||
E361 | LD BC,$0004 | |||
E364 | LD DE,$E388 | |||
E367 | LDIR | |||
E369 | LD BC,$0004 | |||
E36C | LD DE,$D357 | address for BOMB in Table of objects D34D | ||
E36F | LDIR | Copy last 4 bytes: BOMB placement | ||
E371 | LD DE,$0019 | |||
E374 | PUSH DE | |||
E375 | CALL $DFD4 | Clear LASTK and do RST $38 once | ||
E378 | CALL $E440 | Play next note in melody | ||
E37B | POP DE | |||
E37C | LD A,($5C08) | get LASTK | ||
E37F | CP $00 | |||
E381 | RET NZ | |||
E382 | DEC DE | |||
E383 | LD A,D | |||
E384 | OR E | |||
E385 | JR NZ,$E374 | |||
E387 | RET |
|
||||
E388 | DEFM " 10",$0A |
|
||||
+$00: Guard counter value
+$01: Dog counter value
+$02: Turret counter value
+$03/$04: two digits for TIME value
+$05/$06: two digits for BOMB timer
+$07: flag for wall in room 97A6
+$08: count for wall in room 9739: $01 = no wall, $07 = put wall
+$09: count for wall in room 7F48
+$0A: count for wall in room 8D5C
+$0B: count for wall in room 8F20: $01 = no wall, $09 = put wall
+$10/$11: room for BOMB placement
+$12/$13: address in Tile screen 0 for BOMB placement
Level 1 "EXTREMELY EASY"
|
||||
E38C | DEFB $14,$19,$32 | |||
E38F | DEFM "9999" | |||
E393 | DEFB $00,$01,$01,$01,$01 | |||
E398 | DEFM " 10" | |||
E39B | DEFB $0A | |||
E39C | DEFW $9E22 | |||
E39E | DEFW $672E | |||
Level 2 "VERY EASY"
|
||||
E3A0 | DEFB $12,$0F,$2D | |||
E3A3 | DEFM "9995" | |||
E3A7 | DEFB $00,$01,$01,$01,$01 | |||
E3AC | DEFM " 20" | |||
E3AF | DEFB $14 | |||
E3B0 | DEFW $9E22 | |||
E3B2 | DEFW $672E | |||
Level 3 "EASY"
|
||||
E3B4 | DEFB $10,$0C,$28 | |||
E3B7 | DEFM "9590" | |||
E3BB | DEFB $00,$07,$01,$01,$01 | |||
E3C0 | DEFM " 30" | |||
E3C3 | DEFB $1E | |||
E3C4 | DEFW $924E | |||
E3C6 | DEFW $6788 | |||
Level 4 "SLIGHTLY EASY"
|
||||
E3C8 | DEFB $0E,$0A,$23 | |||
E3CB | DEFM "9080" | |||
E3CF | DEFB $FF,$01,$01,$01,$09 | |||
E3D4 | DEFM " 50" | |||
E3D7 | DEFB $32 | |||
E3D8 | DEFW $8608 | |||
E3DA | DEFW $6787 | |||
Level 5 "MODERATE"
|
||||
E3DC | DEFB $0C,$09,$1E | |||
E3DF | DEFM "9070" | |||
E3E3 | DEFB $FF,$01,$01,$07,$01 | |||
E3E8 | DEFM " 70" | |||
E3EB | DEFB $46 | |||
E3EC | DEFW $8689 | |||
E3EE | DEFW $66D2 | |||
Level 6 "SLIGHTLY HARD"
|
||||
E3F0 | DEFB $0A,$07,$19 | |||
E3F3 | DEFM "8560" | |||
E3F7 | DEFB $FF,$07,$01,$07,$01 | |||
E3FC | DEFM "100" | |||
E3FF | DEFB $64 | |||
E400 | DEFW $8BAB | |||
E402 | DEFW $6780 | |||
Level 7 "HARD"
|
||||
E404 | DEFB $08,$06,$14 | |||
E407 | DEFM "8550" | |||
E40B | DEFB $FF,$07,$08,$07,$01 | |||
E410 | DEFM "130" | |||
E413 | DEFB $82 | |||
E414 | DEFW $8D5C | |||
E416 | DEFW $6757 | |||
Level 8 "VERY HARD"
|
||||
E418 | DEFB $05,$05,$0F | |||
E41B | DEFM "8050" | |||
E41F | DEFB $FF,$07,$08,$07,$09 | |||
E424 | DEFM "170" | |||
E427 | DEFB $AA | |||
E428 | DEFW $8279 | |||
E42A | DEFW $6763 | |||
Level 9 "EXTREMELY HARD"
|
||||
E42C | DEFB $02,$03,$0A | |||
E42F | DEFM "7040" | |||
E433 | DEFB $FF,$07,$08,$07,$09 | |||
E438 | DEFM "250" | |||
E43B | DEFB $FA | |||
E43C | DEFW $8608 | |||
E43E | DEFW $6787 |
E440 | LD IX,$E51C | |||
E444 | LD A,(IX+$01) | |||
E447 | CP $FF | |||
E449 | JR Z,$E487 | |||
E44B | CP $FE | |||
E44D | JR Z,$E477 | |||
E44F | CP $FD | |||
E451 | JR Z,$E46F | |||
E453 | LD L,(IX+$00) | |||
E456 | LD H,A | |||
E457 | LD E,(IX+$02) | |||
E45A | LD D,(IX+$03) | |||
E45D | PUSH IX | |||
E45F | CALL $03B5 | BEEPER | ||
E462 | NOP | |||
E463 | POP IX | |||
E465 | LD DE,$0004 | |||
E468 | ADD IX,DE | |||
E46A | LD ($E442),IX | |||
E46E | RET | |||
E46F | LD DE,$E4AE | |||
E472 | LD HL,$E496 | |||
E475 | JR $E47E | |||
E477 | LD HL,$E49A | |||
E47A | LD E,(HL) | |||
E47B | INC HL | |||
E47C | LD D,(HL) | |||
E47D | INC HL | |||
E47E | LD ($E478),HL | |||
E481 | LD ($E442),DE | |||
E485 | JR $E440 | |||
E487 | LD BC,$4E20 | |||
E48A | DEC BC | |||
E48B | LD A,B | |||
E48C | OR C | |||
E48D | JR NZ,$E48A | |||
E48F | LD DE,$0002 | |||
E492 | JR $E468 |
|
||||
E494 | DEFW $E4AE | |||
E496 | DEFW $E4AE | |||
E498 | DEFW $E508 | |||
E49A | DEFW $E53A | |||
E49C | DEFW $E508 | |||
E49E | DEFW $E56C | |||
E4A0 | DEFW $E4AE | |||
E4A2 | DEFW $E4AE | |||
E4A4 | DEFW $E508 | |||
E4A6 | DEFW $E53A | |||
E4A8 | DEFW $E508 | |||
E4AA | DEFW $E56C | |||
E4AC | DEFW $E5CA |
|
||||
E4AE | DEFB $9A,$08,$19,$00 | Melody | ||
E4B2 | DEFB $9A,$08,$19,$00 | |||
E4B6 | DEFB $9A,$08,$31,$00 | |||
E4BA | DEFB $8C,$03,$75,$00 | |||
E4BE | DEFB $9A,$08,$19,$00 | |||
E4C2 | DEFB $8C,$03,$75,$00 | |||
E4C6 | DEFB $9A,$08,$19,$00 | |||
E4CA | DEFB $8C,$03,$75,$00 | |||
E4CE | DEFB $3E,$04,$62,$00 | |||
E4D2 | DEFB $C6,$04,$57,$00 | |||
E4D6 | DEFB $9A,$08,$19,$00 | |||
E4DA | DEFB $9A,$08,$19,$00 | |||
E4DE | DEFB $9A,$08,$31,$00 | |||
E4E2 | DEFB $8C,$03,$75,$00 | |||
E4E6 | DEFB $9A,$08,$19,$00 | |||
E4EA | DEFB $8C,$03,$75,$00 | |||
E4EE | DEFB $9A,$08,$19,$00 | |||
E4F2 | DEFB $8C,$03,$75,$00 | |||
E4F6 | DEFB $3E,$04,$31,$00 | |||
E4FA | DEFB $C6,$04,$2C,$00 | |||
E4FE | DEFB $B3,$05,$25,$00 | |||
E502 | DEFB $6A,$06,$21,$00 | |||
E506 | DEFB $00,$FE | |||
E508 | DEFB $9A,$08,$19,$00 | Melody | ||
E50C | DEFB $9A,$08,$19,$00 | |||
E510 | DEFB $9A,$08,$31,$00 | |||
E514 | DEFB $CA,$02,$93,$00 | |||
E518 | DEFB $9A,$08,$19,$00 | |||
E51C | DEFB $CA,$02,$93,$00 | |||
E520 | DEFB $9A,$08,$19,$00 | |||
E524 | DEFB $CA,$02,$93,$00 | |||
E528 | DEFB $9A,$08,$19,$00 | |||
E52C | DEFB $CA,$02,$93,$00 | |||
E530 | DEFB $26,$03,$83,$00 | |||
E534 | DEFB $8C,$03,$75,$00 | |||
E538 | DEFB $00,$FE | |||
E53A | DEFB $9A,$08,$19,$00 | Melody | ||
E53E | DEFB $9A,$08,$19,$00 | |||
E542 | DEFB $9A,$08,$31,$00 | |||
E546 | DEFB $CA,$02,$93,$00 | |||
E54A | DEFB $9A,$08,$19,$00 | |||
E54E | DEFB $CA,$02,$93,$00 | |||
E552 | DEFB $9A,$08,$19,$00 | |||
E556 | DEFB $CA,$02,$93,$00 | |||
E55A | DEFB $26,$03,$41,$00 | |||
E55E | DEFB $8C,$03,$3A,$00 | |||
E562 | DEFB $3E,$04,$31,$00 | |||
E566 | DEFB $C6,$04,$2C,$00 | |||
E56A | DEFB $00,$FE | |||
E56C | DEFB $9A,$08,$19,$00 | Melody | ||
E570 | DEFB $9A,$08,$19,$00 | |||
E574 | DEFB $9A,$08,$31,$00 | |||
E578 | DEFB $CA,$02,$93,$00 | |||
E57C | DEFB $9A,$08,$19,$00 | |||
E580 | DEFB $CA,$02,$93,$00 | |||
E584 | DEFB $9A,$08,$19,$00 | |||
E588 | DEFB $CA,$02,$93,$00 | |||
E58C | DEFB $54,$02,$57,$00 | |||
E590 | DEFB $79,$02,$52,$00 | |||
E594 | DEFB $CA,$02,$49,$00 | |||
E598 | DEFB $26,$03,$41,$00 | |||
E59C | DEFB $54,$02,$57,$00 | |||
E5A0 | DEFB $C4,$03,$37,$00 | |||
E5A4 | DEFB $3E,$04,$31,$00 | |||
E5A8 | DEFB $C4,$03,$37,$00 | |||
E5AC | DEFB $57,$03,$3E,$00 | |||
E5B0 | DEFB $C4,$03,$37,$00 | |||
E5B4 | DEFB $3E,$04,$31,$00 | |||
E5B8 | DEFB $C6,$04,$2C,$00 | |||
E5BC | DEFB $B3,$05,$25,$00 | |||
E5C0 | DEFB $6A,$06,$21,$00 | |||
E5C4 | DEFB $A6,$07,$1C,$00 | |||
E5C8 | DEFB $00,$FE | |||
E5CA | DEFB $9A,$08,$31,$00 | Melody | ||
E5CE | DEFB $00,$FF,$00,$FF | |||
E5D2 | DEFB $00,$FF,$00,$FF | |||
E5D6 | DEFB $00,$FF,$00,$FF | |||
E5DA | DEFB $00,$FF | |||
E5DC | DEFB $00,$FD | Melody end/restart |
|
||||
E5DE | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E5E6 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E5EE | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E5F6 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E5FE | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E606 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E60E | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E616 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E61E | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E626 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E62E | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E636 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E63E | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E646 | DEFB $FF,$00,$FF,$00,$FF,$00,$FF,$00 | |||
E64E | DEFB $FF,$00,$FF,$00,$FF,$00,$FF,$01 | |||
E656 | DEFB $FC,$01,$FC,$01,$FC,$01,$FC,$01 | |||
E65E | DEFB $FC,$01,$00,$03,$00,$FF,$00,$FF | |||
E666 | DEFB $20,$FC,$01,$FC,$01,$FC,$01,$FC | |||
E66E | DEFB $01,$FC,$01,$FC,$01,$FC,$01,$FC | |||
E676 | DEFB $01,$20,$00,$FF,$00,$FF,$00,$03 | |||
E67E | DEFB $FC,$01,$FC,$01,$FC,$01,$FC,$01 | |||
E686 | DEFB $FC,$01,$20,$FF,$00,$FF,$00,$FF | |||
E68E | DEFB $00,$FF,$00,$FF,$00,$00,$00,$00 | |||
E696 | DEFB $FF,$00,$FF,$20,$00,$00,$00,$00 | |||
E69E | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E6A6 | DEFB $00,$00,$00,$00,$00,$00,$FF,$00 | |||
E6AE | DEFB $FF,$00,$00,$FF,$00,$FF,$00,$FF | |||
E6B6 | DEFB $00,$FF,$00,$FF,$00,$20,$3F,$80 | |||
E6BE | DEFB $3F,$80,$3F,$80,$3F,$80,$3F,$80 | |||
E6C6 | DEFB $00,$C0,$00,$FF,$00,$FF,$20,$3F | |||
E6CE | DEFB $80,$3F,$80,$3F,$80,$3F,$80,$3F | |||
E6D6 | DEFB $80,$3F,$80,$3F,$80,$3F,$80,$20 | |||
E6DE | DEFB $00,$FF,$00,$FF,$00,$C0,$3F,$80 | |||
E6E6 | DEFB $3F,$80,$3F,$80,$3F,$80,$3F,$80 | |||
E6EE | DEFB $20,$00,$00,$00,$00,$00,$00,$00 | |||
E6F6 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
E6FE | DEFB $00,$00 |
|
||||
E700 | DEFB $00,$FF,$00,$FE,$01,$FC,$03,$F8,$03,$F8,$07,$F0,$07,$F0,$07,$F0 | |||
E710 | DEFB $00,$FF,$00,$3F,$C0,$1F,$E0,$0F,$F0,$07,$F0,$07,$50,$07,$20,$07 | |||
E720 | DEFB $00,$FF,$00,$FE,$01,$FC,$01,$FC,$00,$FC,$01,$FC,$03,$F8,$07,$F0 | |||
E730 | DEFB $77,$00,$E7,$00,$DF,$00,$3F,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00 | |||
E740 | DEFB $F0,$07,$F0,$07,$F0,$03,$EC,$01,$9E,$00,$FE,$00,$FF,$00,$FF,$00 | |||
E750 | DEFB $07,$F0,$0F,$E0,$0F,$E0,$0E,$E0,$0E,$E0,$0E,$E0,$0E,$E0,$07,$F0 | |||
E760 | DEFB $DF,$00,$9F,$00,$2F,$00,$6F,$00,$6F,$00,$77,$00,$77,$00,$77,$00 | |||
E770 | DEFB $EF,$00,$FF,$00,$FD,$00,$FD,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00 | |||
E780 | DEFB $80,$3F,$C0,$04,$FB,$00,$FF,$00,$7F,$00,$0F,$80,$00,$F0,$00,$FF | |||
E790 | DEFB $00,$FF,$00,$FF,$00,$3F,$C0,$1F,$C0,$1F,$C0,$1F,$00,$3F,$00,$FF | |||
E7A0 | DEFB $07,$F0,$03,$F8,$03,$F8,$01,$FC,$00,$FE,$00,$FF,$00,$FF,$00,$FF | |||
E7B0 | DEFB $B4,$00,$C4,$00,$C7,$10,$07,$30,$0F,$E0,$0F,$E0,$1F,$C0,$1F,$C0 | |||
E7C0 | DEFB $02,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$CF,$00 | |||
E7D0 | DEFB $00,$FF,$00,$7F,$80,$3F,$80,$3F,$C0,$1F,$C0,$1F,$E0,$0F,$E0,$0F | |||
E7E0 | DEFB $1F,$C0,$3F,$80,$3E,$80,$3E,$80,$7E,$00,$7C,$01,$7C,$01,$7C,$01 | |||
E7F0 | DEFB $07,$30,$03,$78,$03,$F8,$01,$FC,$01,$FC,$01,$FC,$00,$FE,$00,$FE | |||
E800 | DEFB $F0,$07,$F0,$07,$F0,$07,$F0,$07,$F0,$07,$F0,$07,$F0,$07,$E0,$0F | |||
E810 | DEFB $7C,$01,$44,$01,$3C,$81,$3C,$81,$38,$83,$38,$83,$7C,$01,$7C,$01 | |||
E820 | DEFB $A0,$0F,$E0,$0F,$E0,$0F,$E0,$0F,$E0,$0F,$F0,$03,$FC,$01,$FE,$00 | |||
E830 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$87,$78,$03,$FC,$01 | |||
E840 | DEFB $00,$FF,$00,$FF,$00,$C7,$38,$83,$3C,$81,$3C,$81,$1C,$C1,$1C,$C1 | |||
E850 | DEFB $00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$F8,$06,$F0,$0C,$E0 | |||
E860 | DEFB $FE,$00,$EA,$00,$E4,$00,$FE,$00,$FE,$00,$7E,$00,$FD,$00,$FF,$00 | |||
E870 | DEFB $18,$C3,$1C,$C1,$1C,$C1,$1C,$C1,$3C,$81,$7C,$01,$FC,$01,$F8,$03 | |||
E880 | DEFB $0B,$E0,$07,$F0,$07,$F0,$07,$F0,$0F,$E0,$0F,$E0,$0F,$E0,$0F,$E0 | |||
E890 | DEFB $FF,$00,$FB,$00,$FB,$00,$FF,$00,$DF,$00,$BE,$00,$8E,$00,$76,$00 | |||
E8A0 | DEFB $F0,$07,$E0,$0F,$E0,$0F,$80,$0F,$70,$07,$F8,$03,$F8,$03,$F8,$03 | |||
E8B0 | DEFB $0F,$E0,$0F,$E0,$07,$F0,$00,$F8,$01,$FC,$00,$FE,$00,$FF,$00,$FF | |||
E8C0 | DEFB $F7,$00,$F1,$00,$EE,$00,$1F,$00,$BF,$00,$DF,$00,$1C,$00,$0B,$E0 | |||
E8D0 | DEFB $48,$03,$78,$03,$F8,$03,$78,$03,$B4,$01,$AC,$01,$BC,$01,$B8,$03 | |||
E8E0 | DEFB $0F,$E0,$0F,$E0,$07,$F0,$07,$F0,$07,$F0,$02,$F8,$03,$F8,$03,$F8 | |||
E8F0 | DEFB $80,$07,$80,$3F,$80,$3F,$80,$3F,$40,$1F,$C0,$1F,$C0,$1F,$80,$3F | |||
E900 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FE,$01,$FC,$03,$F8,$07,$E0,$1F,$C0 | |||
E910 | DEFB $00,$C7,$38,$83,$7C,$01,$FC,$01,$F8,$03,$C0,$07,$C0,$1F,$80,$3F | |||
E920 | DEFB $F0,$07,$F8,$03,$A8,$02,$91,$00,$FB,$00,$FF,$00,$FF,$00,$FF,$00 | |||
E930 | DEFB $3F,$80,$7E,$00,$FC,$01,$F8,$03,$F0,$07,$E0,$0F,$D0,$07,$E8,$03 | |||
E940 | DEFB $FE,$00,$FF,$00,$7F,$00,$C7,$00,$BB,$00,$BB,$00,$DD,$00,$5D,$00 | |||
E950 | DEFB $E8,$03,$74,$01,$F4,$01,$F8,$00,$FB,$00,$FF,$00,$FB,$00,$F7,$00 | |||
E960 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00 | |||
E970 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$60,$9F,$00,$FE,$00,$FE,$00,$FF,$00 | |||
E980 | DEFB $6E,$00,$2F,$80,$37,$80,$1F,$C0,$0E,$E0,$00,$F1,$00,$FF,$00,$FF | |||
E990 | DEFB $E7,$00,$4F,$00,$5F,$00,$7E,$00,$7F,$00,$3F,$80,$3F,$80,$1F,$C0 | |||
E9A0 | DEFB $FF,$00,$FC,$00,$C0,$00,$07,$30,$07,$70,$0F,$60,$9F,$00,$AE,$00 | |||
E9B0 | DEFB $1E,$00,$00,$E1,$00,$0F,$F0,$07,$F0,$07,$E0,$0F,$00,$1F,$00,$FF | |||
E9C0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$78,$87,$00,$FB,$00,$FB,$00,$FF,$00 | |||
E9D0 | DEFB $0F,$E0,$07,$F0,$03,$F8,$01,$FC,$00,$FE,$00,$FF,$00,$FF,$00,$FF | |||
E9E0 | DEFB $E8,$01,$E8,$03,$F0,$07,$E0,$0F,$C0,$1F,$00,$3F,$00,$FF,$00,$FF | |||
E9F0 | DEFB $07,$80,$77,$00,$6F,$00,$DF,$00,$DE,$00,$DF,$00,$DF,$00,$CF,$00 | |||
EA00 | DEFB $F0,$07,$F0,$07,$F0,$03,$EC,$01,$3E,$00,$C0,$00,$FF,$00,$FF,$00 | |||
EA10 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$F8,$07,$C0,$3F,$00,$FF,$00,$FF,$00 | |||
EA20 | DEFB $D7,$00,$D9,$00,$6E,$00,$6F,$00,$6F,$00,$37,$80,$37,$80,$0F,$C0 | |||
EA30 | DEFB $FF,$00,$FC,$00,$02,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00 | |||
EA40 | DEFB $F0,$00,$00,$0F,$00,$3F,$C0,$1F,$E0,$0F,$E0,$0F,$C0,$1F,$00,$3F | |||
EA50 | DEFB $04,$F0,$04,$F0,$07,$F0,$07,$F0,$0F,$E0,$0F,$E0,$1F,$C0,$1F,$C0 | |||
EA60 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$83,$7C,$01 | |||
EA70 | DEFB $00,$FE,$00,$FE,$00,$FE,$00,$F8,$06,$F0,$0F,$E0,$1F,$C0,$1D,$C0 | |||
EA80 | DEFB $FE,$00,$FE,$00,$FE,$00,$AB,$00,$92,$00,$FE,$00,$7F,$00,$9F,$00 | |||
EA90 | DEFB $00,$7F,$00,$7F,$00,$3F,$C0,$1F,$E0,$0F,$E0,$0F,$E0,$0F,$E0,$0F | |||
EAA0 | DEFB $3D,$80,$38,$80,$37,$80,$2F,$80,$6F,$00,$6F,$00,$6F,$00,$6B,$00 | |||
EAB0 | DEFB $FE,$00,$FE,$00,$FE,$00,$C3,$00,$FF,$00,$FF,$00,$FF,$00,$CF,$00 | |||
EAC0 | DEFB $F0,$07,$F0,$07,$F0,$07,$70,$07,$70,$07,$B0,$07,$B8,$03,$B8,$03 | |||
EAD0 | DEFB $6D,$00,$37,$80,$37,$80,$37,$80,$37,$80,$37,$80,$6F,$00,$6F,$00 | |||
EAE0 | DEFB $07,$30,$07,$70,$07,$70,$07,$70,$07,$70,$07,$70,$07,$70,$03,$78 | |||
EAF0 | DEFB $B8,$03,$B8,$03,$D8,$03,$D8,$03,$D8,$03,$D8,$03,$D8,$03,$B8,$03 | |||
EB00 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$E7,$18,$C3,$3C,$81,$3C,$81,$38,$83 | |||
EB10 | DEFB $70,$04,$73,$00,$E7,$00,$E7,$00,$E7,$00,$E7,$00,$F7,$00,$F7,$00 | |||
EB20 | DEFB $00,$3F,$C0,$1F,$E0,$0F,$E0,$0F,$E0,$0F,$E0,$09,$E6,$00,$E7,$00 | |||
EB30 | DEFB $E3,$00,$DC,$00,$BF,$00,$BF,$00,$BF,$00,$BF,$00,$BF,$00,$BF,$00 | |||
EB40 | DEFB $D7,$00,$33,$00,$FB,$00,$FB,$00,$FB,$00,$FB,$00,$FB,$00,$FE,$00 | |||
EB50 | DEFB $7F,$00,$3F,$80,$3F,$80,$3F,$80,$1F,$80,$20,$80,$20,$80,$3F,$80 | |||
EB60 | DEFB $FC,$01,$F8,$03,$F8,$03,$F8,$03,$F0,$07,$10,$07,$30,$07,$F8,$03 | |||
EB70 | DEFB $7F,$00,$FF,$00,$FF,$00,$DF,$00,$EF,$00,$F0,$00,$FC,$00,$7C,$01 | |||
EB80 | DEFB $F8,$03,$F8,$03,$F8,$03,$F8,$03,$FC,$01,$FC,$01,$FC,$01,$7E,$00 | |||
EB90 | DEFB $5C,$01,$64,$01,$3C,$81,$3C,$81,$3C,$81,$1E,$C0,$1E,$C0,$1E,$C0 | |||
EBA0 | DEFB $7E,$00,$3E,$80,$3E,$80,$1E,$C0,$3E,$80,$3C,$81,$7C,$01,$58,$03 | |||
EBB0 | DEFB $0E,$E0,$0E,$E0,$0D,$E0,$0D,$E0,$01,$F0,$03,$F8,$03,$F8,$03,$F8 | |||
EBC0 | DEFB $E8,$03,$F0,$07,$E0,$0F,$E0,$0F,$C0,$1F,$C0,$1F,$E0,$0F,$F0,$07 | |||
EBD0 | DEFB $01,$FC,$03,$F8,$03,$F8,$03,$F8,$03,$F8,$03,$F8,$01,$FC,$01,$FC | |||
EBE0 | DEFB $02,$F8,$02,$F8,$03,$F8,$02,$F8,$02,$F8,$00,$FC,$00,$FE,$00,$FF | |||
EBF0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FE,$01,$FC,$03,$F8 | |||
EC00 | DEFB $00,$FE,$01,$FC,$01,$FC,$03,$F8,$03,$18,$E3,$00,$DF,$00,$B1,$00 | |||
EC10 | DEFB $F0,$07,$F8,$03,$F8,$03,$F8,$03,$C8,$03,$C8,$03,$F0,$07,$F0,$07 | |||
EC20 | DEFB $03,$F8,$06,$F0,$06,$F0,$0D,$E0,$0D,$E0,$0D,$E0,$0B,$E0,$0B,$E0 | |||
EC30 | DEFB $6E,$00,$EF,$00,$EF,$00,$F7,$00,$F7,$00,$FB,$00,$FB,$00,$FD,$00 | |||
EC40 | DEFB $E0,$0C,$83,$10,$4F,$00,$B8,$00,$D7,$00,$CF,$00,$FF,$00,$FE,$00 | |||
EC50 | DEFB $0A,$E0,$04,$F0,$07,$F0,$07,$F0,$07,$F0,$07,$F0,$03,$F8,$01,$FC | |||
EC60 | DEFB $79,$00,$10,$06,$D0,$07,$F0,$07,$E0,$0F,$F0,$07,$F0,$07,$F0,$07 | |||
EC70 | DEFB $F8,$01,$E0,$07,$00,$1F,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
EC80 | DEFB $01,$FC,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$01,$F8,$07,$80,$7B,$00 | |||
EC90 | DEFB $F8,$03,$F8,$03,$FC,$01,$FC,$01,$FE,$00,$FE,$00,$FE,$00,$F8,$01 | |||
ECA0 | DEFB $03,$F8,$03,$F8,$07,$F0,$07,$F0,$06,$F0,$04,$F1,$00,$FB,$00,$FF | |||
ECB0 | DEFB $FD,$00,$F8,$00,$80,$07,$00,$7F,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
ECC0 | DEFB $F0,$07,$70,$07,$50,$07,$70,$07,$70,$07,$30,$83,$3C,$81,$3E,$80 | |||
ECD0 | DEFB $0A,$E0,$04,$F0,$07,$F0,$07,$F0,$07,$F0,$07,$F0,$03,$F8,$03,$F8 | |||
ECE0 | DEFB $79,$00,$10,$06,$D0,$07,$E0,$07,$F0,$03,$FC,$00,$FF,$00,$FF,$00 | |||
ECF0 | DEFB $F8,$01,$E0,$07,$00,$1F,$00,$FF,$00,$FF,$00,$FF,$00,$3F,$C0,$1F | |||
ED00 | DEFB $01,$FC,$01,$FC,$01,$FC,$01,$FC,$01,$FC,$03,$F8,$03,$F8,$07,$F0 | |||
ED10 | DEFB $FF,$00,$FF,$00,$F3,$00,$E3,$08,$E7,$00,$C8,$00,$DF,$00,$BC,$00 | |||
ED20 | DEFB $E0,$0F,$F0,$07,$F0,$07,$E0,$0F,$C0,$1F,$80,$3F,$00,$7F,$00,$FF | |||
ED30 | DEFB $07,$F0,$0A,$E0,$1E,$C0,$3C,$80,$78,$02,$70,$02,$7C,$01,$3E,$80 | |||
ED40 | DEFB $70,$03,$60,$0F,$E0,$0F,$C0,$1F,$C0,$1F,$80,$3F,$00,$7F,$00,$FF | |||
ED50 | DEFB $79,$00,$10,$06,$D0,$07,$F0,$07,$F8,$01,$FE,$00,$FF,$00,$FF,$00 | |||
ED60 | DEFB $F8,$01,$E0,$07,$00,$1F,$00,$FF,$00,$FF,$00,$FF,$00,$7F,$80,$3F | |||
ED70 | DEFB $01,$FC,$01,$FC,$03,$F8,$03,$F8,$07,$F0,$07,$F0,$0F,$C0,$3F,$00 | |||
ED80 | DEFB $FF,$00,$FF,$00,$E7,$00,$C3,$18,$C5,$10,$86,$30,$8F,$20,$0F,$60 | |||
ED90 | DEFB $C0,$1F,$C0,$1F,$C0,$1F,$C0,$1F,$80,$3F,$80,$3F,$00,$7F,$00,$7F | |||
EDA0 | DEFB $00,$FC,$03,$F0,$0F,$E0,$1F,$C0,$1C,$C0,$1C,$C1,$1C,$C1,$0E,$E0 | |||
EDB0 | DEFB $DF,$00,$DC,$00,$E0,$03,$00,$1F,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
EDC0 | DEFB $1E,$C0,$1C,$C1,$18,$C3,$1C,$C1,$0C,$E1,$0E,$E0,$06,$F0,$00,$F9 | |||
EDD0 | DEFB $79,$00,$10,$06,$D0,$07,$F0,$07,$F0,$07,$F8,$03,$F8,$03,$FC,$01 | |||
EDE0 | DEFB $1C,$C1,$1C,$C1,$1C,$C1,$18,$C3,$18,$C3,$18,$C2,$39,$80,$3B,$80 | |||
EDF0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FC,$03,$F8 | |||
EE00 | DEFB $07,$F0,$07,$F0,$0F,$E0,$0F,$E0,$1F,$C0,$3E,$00,$FE,$00,$FC,$01 | |||
EE10 | DEFB $FE,$00,$FF,$00,$FF,$00,$BF,$00,$0F,$40,$03,$F0,$01,$FC,$00,$FE | |||
EE20 | DEFB $00,$FF,$00,$7F,$80,$3F,$C0,$1F,$C0,$1F,$C0,$1F,$E0,$0F,$E0,$0F | |||
EE30 | DEFB $0B,$C0,$3B,$80,$3C,$80,$70,$03,$60,$0F,$E0,$0F,$C0,$1F,$C0,$1F | |||
EE40 | DEFB $F0,$03,$80,$0F,$00,$7F,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
EE50 | DEFB $A0,$0F,$E0,$0F,$70,$07,$70,$07,$70,$07,$70,$03,$7C,$01,$3E,$80 | |||
EE60 | DEFB $1F,$C0,$11,$C0,$1E,$C0,$1F,$C0,$1F,$C0,$0F,$E0,$0F,$E0,$0F,$E0 | |||
EE70 | DEFB $FC,$01,$F8,$01,$64,$01,$9C,$01,$BC,$01,$BC,$01,$DC,$01,$DC,$01 | |||
EE80 | DEFB $0F,$E0,$07,$F0,$07,$F0,$07,$F0,$07,$F0,$07,$F0,$07,$F0,$03,$F8 | |||
EE90 | DEFB $DC,$01,$DC,$01,$DC,$01,$DC,$01,$DC,$01,$BC,$01,$DC,$01,$DC,$01 | |||
EEA0 | DEFB $02,$F8,$03,$F8,$03,$F8,$03,$F8,$03,$F8,$03,$F8,$03,$F8,$01,$FC | |||
EEB0 | DEFB $58,$03,$C8,$03,$D8,$03,$D8,$03,$D8,$03,$D8,$03,$D8,$03,$B0,$07 | |||
EEC0 | DEFB $1C,$C1,$1C,$C1,$1C,$C1,$0C,$E1,$0C,$E1,$0C,$01,$EC,$01,$F4,$01 | |||
EED0 | DEFB $3A,$80,$3A,$80,$3B,$80,$3D,$80,$3F,$80,$3D,$80,$5F,$00,$5F,$00 | |||
EEE0 | DEFB $B6,$00,$56,$00,$F6,$00,$F6,$00,$F6,$00,$EE,$00,$9E,$00,$FE,$00 | |||
EEF0 | DEFB $5F,$00,$5F,$00,$5F,$00,$5F,$00,$5F,$00,$6F,$00,$6F,$00,$77,$00 | |||
EF00 | DEFB $FE,$00,$FE,$00,$F6,$00,$F6,$00,$FE,$00,$FE,$00,$FC,$01,$FC,$01 | |||
EF10 | DEFB $77,$00,$77,$00,$37,$80,$08,$C0,$08,$E0,$0F,$E0,$0F,$E0,$1F,$C0 | |||
EF20 | DEFB $FC,$01,$FC,$01,$F8,$01,$04,$01,$04,$01,$FC,$01,$FC,$01,$FC,$01 | |||
EF30 | DEFB $02,$F8,$02,$F8,$00,$FC,$01,$FC,$01,$FC,$01,$FC,$01,$FC,$00,$FE | |||
EF40 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FE,$01,$FC,$03,$F8 | |||
EF50 | DEFB $03,$F8,$06,$F0,$0F,$C0,$37,$80,$7B,$00,$7B,$00,$FB,$00,$F6,$00 | |||
EF60 | DEFB $ED,$00,$EF,$00,$F7,$00,$7B,$00,$BC,$00,$DF,$00,$C7,$00,$B8,$00 | |||
EF70 | DEFB $7D,$00,$73,$00,$66,$00,$00,$99,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
EF80 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$1F,$E0,$0F,$F0,$07 | |||
EF90 | DEFB $70,$07,$30,$07,$10,$07,$A0,$0F,$C0,$1F,$00,$3F,$C0,$07,$38,$03 | |||
EFA0 | DEFB $9C,$01,$DC,$01,$FA,$00,$C6,$00,$36,$00,$F4,$01,$E0,$03,$00,$1F | |||
EFB0 | DEFB $80,$1F,$00,$7F,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
EFC0 | DEFB $00,$FF,$00,$FF,$00,$FE,$01,$FC,$01,$FC,$03,$F8,$03,$F8,$02,$F8 | |||
EFD0 | DEFB $00,$FF,$00,$FF,$00,$FC,$03,$F8,$07,$F0,$07,$F0,$06,$F0,$07,$F0 | |||
EFE0 | DEFB $00,$FF,$00,$FF,$00,$3F,$C0,$1F,$E0,$0F,$E0,$0F,$00,$0F,$00,$0F | |||
EFF0 | DEFB $00,$FF,$00,$FE,$01,$FC,$03,$F8,$02,$F8,$01,$FC,$03,$F8,$07,$F0 | |||
F000 | DEFB $07,$30,$CF,$00,$BF,$00,$7F,$00,$FF,$00,$FF,$00,$FF,$00,$EF,$00 | |||
F010 | DEFB $E0,$0F,$C0,$0F,$B0,$07,$F8,$03,$FC,$01,$FE,$00,$DF,$00,$DF,$00 | |||
F020 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$7F,$80,$3F | |||
F030 | DEFB $07,$F0,$0F,$E0,$0F,$E0,$0E,$E0,$0F,$E0,$07,$E0,$0B,$E0,$0D,$E0 | |||
F040 | DEFB $9F,$00,$7F,$00,$7F,$00,$FF,$00,$7F,$00,$7F,$00,$9F,$00,$EF,$00 | |||
F050 | DEFB $B7,$00,$E3,$08,$E1,$0C,$E0,$0E,$C0,$00,$DE,$00,$FF,$00,$FF,$00 | |||
F060 | DEFB $C0,$1F,$C0,$1F,$E0,$0F,$F0,$07,$70,$07,$78,$03,$38,$03,$78,$03 | |||
F070 | DEFB $0E,$E0,$0D,$E0,$01,$F0,$01,$FC,$01,$FC,$01,$FC,$03,$F8,$03,$F8 | |||
F080 | DEFB $F7,$00,$77,$00,$8F,$00,$FF,$00,$FB,$00,$F0,$04,$F0,$07,$E0,$0E | |||
F090 | DEFB $FF,$00,$FF,$00,$FE,$00,$DC,$01,$3C,$01,$78,$03,$70,$07,$E0,$0F | |||
F0A0 | DEFB $78,$03,$30,$07,$00,$CF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
F0B0 | DEFB $03,$F8,$03,$F8,$07,$F0,$07,$F0,$07,$F0,$07,$F0,$0F,$E0,$0E,$E0 | |||
F0C0 | DEFB $C1,$1C,$C1,$1C,$C1,$1C,$81,$3C,$81,$3C,$00,$7E,$00,$7F,$00,$FF | |||
F0D0 | DEFB $C0,$1F,$80,$3F,$80,$3F,$80,$3F,$00,$7F,$00,$FF,$00,$FF,$00,$FF | |||
F0E0 | DEFB $0E,$E0,$1C,$C1,$1C,$C1,$18,$C3,$38,$83,$38,$83,$78,$03,$78,$03 |
|
||||
Used to draw tiles from Tile screen 3, see B1FC.
|
||||
F0F0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$F0 | |||
F100 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$8F,$70,$03 | |||
F110 | DEFB $00,$FF,$00,$FF,$00,$FE,$01,$FC,$03,$F8,$04,$70,$88,$03,$70,$07 | |||
F120 | DEFB $0F,$C0,$3F,$80,$7F,$00,$FF,$00,$7F,$00,$FE,$00,$7F,$00,$0F,$80 | |||
F130 | DEFB $00,$00,$FF,$00,$EF,$00,$EF,$00,$FF,$00,$FF,$00,$7F,$00,$7F,$00 | |||
F140 | DEFB $EC,$01,$7E,$00,$BE,$00,$E8,$01,$86,$10,$80,$39,$80,$3F,$00,$7F | |||
F150 | DEFB $00,$8F,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
F160 | DEFB $06,$F0,$06,$F0,$0D,$E0,$0C,$E0,$05,$F0,$06,$F0,$03,$F8,$01,$FC | |||
F170 | DEFB $BC,$00,$86,$00,$73,$00,$C1,$0C,$80,$1E,$61,$0C,$32,$00,$00,$4D | |||
F180 | DEFB $00,$FF,$00,$FF,$00,$7F,$80,$3F,$80,$3F,$00,$7F,$00,$FF,$00,$FF | |||
F190 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FE,$01,$FC,$01,$FC,$03,$00 | |||
F1A0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$7F,$80,$07,$F8,$03,$F4,$01,$3E,$00 | |||
F1B0 | DEFB $00,$F0,$0F,$E0,$17,$00,$EF,$00,$0F,$00,$1F,$C0,$1F,$C0,$0D,$E0 | |||
F1C0 | DEFB $00,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$EF,$00,$F7,$00,$F4,$00 | |||
F1D0 | DEFB $FE,$00,$F7,$00,$EF,$00,$EF,$00,$F7,$00,$FF,$00,$FF,$00,$FD,$00 | |||
F1E0 | DEFB $FF,$00,$78,$00,$BE,$00,$C0,$01,$80,$3F,$80,$3F,$C0,$1F,$E0,$0F | |||
F1F0 | DEFB $0E,$E0,$0E,$E0,$1C,$C1,$30,$82,$60,$0E,$40,$1E,$60,$0E,$20,$8F | |||
F200 | DEFB $F0,$03,$E0,$0F,$60,$0F,$C0,$1F,$C0,$1F,$80,$3F,$C0,$0F,$70,$07 | |||
F210 | DEFB $02,$00,$00,$FC,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
F220 | DEFB $F0,$07,$30,$07,$58,$03,$2C,$80,$37,$80,$03,$C8,$00,$FC,$00,$FF | |||
F230 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$E0 | |||
F240 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$1F | |||
F250 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$8F,$70,$03 | |||
F260 | DEFB $00,$FF,$00,$FE,$01,$FC,$02,$F8,$05,$80,$79,$00,$00,$80,$05,$F0 | |||
F270 | DEFB $1F,$C0,$3F,$00,$FF,$00,$FF,$00,$FF,$00,$FC,$00,$E0,$03,$C0,$1F | |||
F280 | DEFB $E0,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$7F,$00,$1F,$80,$07,$E0 | |||
F290 | DEFB $FC,$01,$F6,$00,$7F,$00,$BF,$00,$DC,$00,$C0,$03,$C0,$1F,$00,$1F | |||
F2A0 | DEFB $1D,$C0,$23,$80,$0E,$80,$78,$01,$C0,$07,$00,$3F,$00,$FF,$00,$FF | |||
F2B0 | DEFB $C0,$1F,$80,$3F,$00,$7F,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
F2C0 | DEFB $0E,$E0,$0C,$E1,$08,$E3,$18,$C3,$10,$C7,$30,$87,$30,$87,$18,$C3 | |||
F2D0 | DEFB $E0,$0F,$60,$0F,$30,$87,$10,$C7,$18,$C0,$0F,$E0,$07,$F0,$00,$F8 | |||
F2E0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$F1,$0E,$80 | |||
F2F0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$91 | |||
F300 | DEFB $00,$FF,$00,$FF,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE | |||
F310 | DEFB $7F,$00,$7F,$00,$FF,$00,$FF,$00,$F7,$00,$F7,$00,$EB,$00,$ED,$00 | |||
F320 | DEFB $6E,$00,$5F,$00,$6D,$00,$72,$00,$B6,$00,$BE,$00,$D2,$00,$ED,$00 | |||
F330 | DEFB $00,$7F,$80,$3F,$80,$3F,$80,$3F,$00,$7F,$00,$FF,$00,$FF,$00,$7F | |||
F340 | DEFB $00,$FE,$01,$FC,$01,$FC,$01,$FC,$00,$FE,$00,$FE,$00,$FF,$00,$FF | |||
F350 | DEFB $C4,$10,$84,$30,$84,$30,$8C,$21,$CC,$01,$C4,$01,$66,$00,$66,$00 | |||
F360 | DEFB $F2,$00,$C6,$00,$C6,$10,$42,$18,$42,$18,$62,$08,$66,$00,$66,$00 | |||
F370 | DEFB $00,$FC,$03,$F8,$03,$F8,$01,$FC,$01,$1C,$E3,$00,$DF,$00,$B1,$00 | |||
F380 | DEFB $02,$00,$C6,$00,$6C,$00,$38,$00,$1C,$00,$36,$00,$63,$00,$40,$00 | |||
F390 | DEFB $10,$00,$18,$00,$18,$00,$7F,$00,$FE,$00,$18,$00,$18,$00,$08,$00 | |||
F3A0 | DEFB $00,$00,$00,$00,$20,$00,$FC,$00,$FF,$00,$20,$00,$00,$00,$00,$00 | |||
F3B0 | DEFB $00,$00,$00,$00,$20,$00,$FC,$00,$FF,$00,$20,$00,$00,$00,$00,$00 | |||
F3C0 | DEFB $00,$00,$00,$00,$3C,$00,$32,$00,$6E,$00,$6E,$00,$7C,$00,$00,$00 | |||
F3D0 | DEFB $00,$00,$18,$00,$3C,$00,$62,$00,$6E,$00,$3E,$00,$1C,$00,$00,$00 | |||
F3E0 | DEFB $1E,$00,$3E,$00,$7A,$00,$86,$00,$F4,$00,$F8,$00,$F0,$00,$00,$00 | |||
F3F0 | DEFB $1E,$00,$3E,$00,$7A,$00,$86,$00,$F4,$00,$F8,$00,$F0,$00,$00,$00 | |||
F400 | DEFB $00,$00,$00,$00,$00,$00,$FF,$00,$FF,$00,$00,$00,$00,$00,$00,$00 | |||
F410 | DEFB $18,$00,$18,$00,$18,$00,$18,$00,$18,$00,$18,$00,$18,$00,$18,$00 | |||
F420 | DEFB $00,$00,$0E,$00,$30,$00,$78,$00,$48,$00,$78,$00,$70,$00,$00,$00 | |||
F430 | DEFB $00,$00,$1C,$00,$18,$00,$34,$00,$3C,$00,$3C,$00,$38,$00,$00,$00 | |||
F440 | DEFB $1E,$C0,$3E,$80,$7A,$00,$86,$00,$F4,$01,$F8,$03,$F0,$07,$00,$0F | |||
F450 | DEFB $1E,$C0,$3E,$80,$7A,$00,$86,$00,$F4,$01,$F8,$03,$F0,$07,$00,$0F | |||
F460 | DEFB $FA,$00,$9E,$00,$BA,$00,$FA,$00,$FA,$00,$FE,$00,$FA,$00,$00,$00 | |||
F470 | DEFB $BE,$00,$FE,$00,$BE,$00,$BE,$00,$BE,$00,$FE,$00,$BE,$00,$00,$00 | |||
F480 | DEFB $08,$00,$18,$00,$38,$00,$7C,$00,$5E,$00,$5A,$00,$7E,$00,$3C,$00 | |||
F490 | DEFB $08,$00,$08,$00,$1C,$00,$36,$00,$3A,$00,$3A,$00,$3E,$00,$1C,$00 | |||
F4A0 | DEFB $3C,$00,$7A,$00,$DF,$00,$FF,$00,$FD,$00,$FF,$00,$76,$00,$3C,$00 | |||
F4B0 | DEFB $3C,$00,$76,$00,$DF,$00,$FF,$00,$FF,$00,$FF,$00,$6E,$00,$3C,$00 | |||
F4C0 | DEFB $7C,$01,$FC,$01,$FC,$01,$C8,$03,$98,$03,$08,$03,$38,$03,$90,$07 | |||
F4D0 | DEFB $F0,$04,$83,$00,$0F,$00,$B8,$00,$D7,$00,$CF,$00,$FF,$00,$FE,$00 | |||
F4E0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FE,$01,$FC,$01,$FC | |||
F4F0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$C1,$3E,$00,$FE,$00,$FE,$00 | |||
F500 | DEFB $00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FE,$00,$FA,$05,$F0,$0B,$E0 | |||
F510 | DEFB $C4,$01,$AC,$01,$84,$01,$9C,$01,$E8,$01,$FE,$00,$FF,$00,$FF,$00 | |||
F520 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FC,$03,$F8,$03,$F8,$01,$FC,$01,$FC | |||
F530 | DEFB $00,$FF,$00,$FF,$00,$83,$7C,$01,$FC,$01,$FC,$01,$88,$03,$58,$03 | |||
F540 | DEFB $01,$FC,$03,$00,$DF,$00,$3F,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00 | |||
F550 | DEFB $08,$03,$38,$03,$D0,$03,$FC,$01,$FE,$00,$FE,$00,$FF,$00,$FF,$00 | |||
F560 | DEFB $00,$FE,$01,$F8,$07,$F0,$07,$F0,$07,$F0,$01,$F8,$01,$FC,$01,$FC | |||
F570 | DEFB $78,$03,$F8,$03,$E8,$02,$59,$00,$0B,$00,$BF,$00,$DF,$00,$FF,$00 | |||
F580 | DEFB $01,$FC,$03,$C0,$2F,$80,$5F,$00,$DE,$00,$DF,$00,$DF,$00,$CF,$00 | |||
F590 | DEFB $08,$03,$38,$03,$D0,$03,$FC,$01,$3E,$00,$C0,$00,$FF,$00,$FF,$00 | |||
F5A0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF | |||
F5B0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$3F,$C0,$1F,$E0,$07,$38,$00 | |||
F5C0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$C0,$3F,$00,$FF,$00,$FE,$00 | |||
F5D0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FF,$00,$FC,$03,$80,$7F,$00 | |||
F5E0 | DEFB $00,$1F,$E0,$0F,$F0,$07,$F0,$07,$F0,$01,$F6,$00,$EF,$00,$07,$10 | |||
F5F0 | DEFB $DF,$00,$FF,$00,$FF,$00,$FF,$00,$3F,$00,$D7,$00,$D1,$00,$A0,$06 | |||
F600 | DEFB $71,$00,$8F,$00,$BF,$00,$7F,$00,$73,$00,$7C,$00,$BF,$00,$4F,$00 | |||
F610 | DEFB $F8,$00,$FF,$00,$FF,$00,$07,$00,$FF,$00,$FF,$00,$3F,$00,$CE,$00 | |||
F620 | DEFB $00,$F0,$07,$C0,$3E,$00,$F9,$00,$E7,$00,$DF,$00,$BF,$00,$38,$00 | |||
F630 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$80,$7F,$00,$FF,$00,$FF,$00,$7E,$00 | |||
F640 | DEFB $00,$FF,$00,$FE,$01,$FC,$03,$F8,$07,$F0,$07,$F0,$06,$F0,$06,$F0 | |||
F650 | DEFB $00,$FF,$00,$1F,$E0,$0F,$F0,$07,$F0,$07,$F0,$07,$B0,$07,$50,$07 | |||
F660 | DEFB $F0,$07,$F0,$07,$F0,$01,$EC,$00,$1E,$00,$FE,$00,$FF,$00,$FF,$00 | |||
F670 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
F680 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
F690 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
F6A0 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
F6B0 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 | |||
F6C0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$FE,$00,$FE,$00,$98,$67,$00,$7F,$00 | |||
F6D0 | DEFB $00,$F0,$0D,$C0,$2B,$00,$ED,$00,$EE,$00,$B6,$00,$5B,$00,$6B,$00 | |||
F6E0 | DEFB $00,$0F,$B0,$03,$D4,$00,$B7,$00,$77,$00,$ED,$00,$DA,$00,$D6,$00 | |||
F6F0 | DEFB $00,$FF,$00,$FF,$00,$FF,$00,$7F,$00,$7F,$00,$19,$E6,$00,$FE,$00 |
|
||||
Used to draw background level, see B177.
![]() |
||||
F700 | DEFB $FE,$82,$A2,$A2,$BA,$82,$FE,$00,$30 | |||
F709 | DEFB $7F,$41,$7F,$00,$7F,$41,$7F,$00,$20 | |||
F712 | DEFB $FF,$80,$80,$80,$FF,$08,$08,$08,$08 | |||
F71B | DEFB $FF,$FF,$08,$FF,$80,$FF,$08,$08,$08 | |||
F724 | DEFB $02,$7A,$42,$52,$52,$5A,$42,$7A,$30 | |||
F72D | DEFB $EF,$8C,$AC,$AF,$AF,$8C,$EC,$0F,$30 | |||
F736 | DEFB $6F,$4C,$6C,$0F,$6F,$4C,$6C,$0F,$20 | |||
F73F | DEFB $EF,$8C,$8C,$8F,$EF,$0C,$0C,$0F,$08 | |||
F748 | DEFB $F6,$32,$32,$F2,$F2,$32,$36,$F0,$30 | |||
F751 | DEFB $F7,$31,$37,$F0,$F7,$31,$37,$F0,$20 | |||
F75A | DEFB $F7,$30,$30,$F0,$F7,$30,$30,$F0,$08 | |||
F763 | DEFB $40,$5F,$41,$41,$41,$5D,$41,$5F,$30 | |||
F76C | DEFB $D5,$95,$A5,$A5,$A9,$A5,$95,$D5,$10 | |||
F775 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$08 | |||
F77E | DEFB $E0,$E0,$F0,$DC,$C7,$C0,$C0,$C0,$08 | |||
F787 | DEFB $00,$00,$00,$00,$80,$F8,$0F,$00,$08 | |||
F790 | DEFB $00,$00,$00,$00,$00,$0F,$F8,$00,$08 | |||
F799 | DEFB $01,$01,$07,$1C,$F0,$80,$00,$00,$08 | |||
F7A2 | DEFB $C0,$C0,$C0,$C0,$C0,$C0,$C0,$C0,$08 | |||
F7AB | DEFB $FF,$80,$80,$00,$F7,$F0,$F0,$F0,$08 | |||
F7B4 | DEFB $FF,$80,$80,$80,$EF,$0F,$0F,$0F,$08 | |||
F7BD | DEFB $83,$01,$01,$01,$01,$01,$83,$FF,$28 | |||
F7C6 | DEFB $F0,$FC,$FE,$1F,$07,$FA,$FC,$F0,$22 | |||
F7CF | DEFB $FD,$82,$82,$84,$F4,$08,$08,$08,$08 | |||
F7D8 | DEFB $D0,$90,$90,$90,$A0,$20,$20,$20,$08 | |||
F7E1 | DEFB $40,$40,$40,$40,$80,$80,$80,$80,$08 | |||
F7EA | DEFB $FF,$FF,$FF,$00,$00,$00,$00,$00,$0A | |||
F7F3 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$20 | |||
F7FC | DEFB $BF,$40,$40,$20,$2F,$10,$10,$10,$08 | |||
F805 | DEFB $0B,$08,$08,$08,$05,$04,$04,$04,$08 | |||
F80E | DEFB $02,$02,$02,$02,$01,$01,$01,$01,$08 | |||
F817 | DEFB $7F,$7F,$7F,$3F,$3F,$1F,$0F,$03,$39 | |||
F820 | DEFB $FE,$FE,$FE,$FC,$FC,$F8,$F0,$C0,$39 | |||
F829 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$38 | |||
F832 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$28 | |||
F83B | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$20 | |||
F844 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$F0,$20 | |||
F84D | DEFB $F7,$79,$7B,$3C,$BD,$9E,$12,$FF,$20 | |||
F856 | DEFB $7F,$41,$7F,$00,$7F,$41,$00,$FF,$20 | |||
F85F | DEFB $FF,$FE,$F9,$F0,$CF,$A1,$77,$F0,$20 | |||
F868 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$20 | |||
F871 | DEFB $FF,$FE,$FE,$FC,$FB,$F1,$CF,$80,$20 | |||
F87A | DEFB $EF,$E1,$EF,$E0,$DF,$C1,$BF,$80,$20 | |||
F883 | DEFB $01,$03,$07,$0F,$1F,$3F,$7F,$FF,$20 | |||
F88C | DEFB $F6,$F6,$F6,$F4,$F5,$ED,$EB,$E8,$20 | |||
F895 | DEFB $07,$07,$03,$03,$03,$01,$01,$01,$20 | |||
F89E | DEFB $FF,$7F,$3F,$1F,$1F,$0F,$0F,$07,$20 | |||
F8A7 | DEFB $F3,$FC,$FF,$FF,$FF,$FF,$FF,$FF,$20 | |||
F8B0 | DEFB $7F,$41,$7F,$80,$CF,$F1,$FC,$FF,$20 | |||
F8B9 | DEFB $41,$BF,$BF,$DF,$DF,$DF,$DF,$DF,$20 | |||
F8C2 | DEFB $FF,$FF,$FF,$FF,$FF,$FF,$C3,$00,$20 | |||
F8CB | DEFB $FF,$FF,$FE,$FE,$FE,$FD,$FD,$F8,$20 | |||
F8D4 | DEFB $79,$47,$6F,$1F,$5F,$3F,$3F,$7F,$20 | |||
F8DD | DEFB $FB,$FD,$FE,$E6,$DF,$DB,$E7,$FF,$20 | |||
F8E6 | DEFB $73,$4D,$6E,$0E,$6E,$46,$77,$02,$20 | |||
F8EF | DEFB $47,$39,$FB,$C0,$3F,$41,$7F,$00,$20 | |||
F8F8 | DEFB $FF,$00,$7F,$45,$51,$7F,$00,$FF,$28 | |||
F901 | DEFB $82,$AA,$AA,$AA,$AA,$AA,$AA,$82,$28 | |||
F90A | DEFB $99,$B9,$B9,$99,$9D,$99,$99,$99,$28 |
Used by the routine at F9E7.
|
||||
F913 | LD A,$04 | |||
F915 | LD ($89B4),A | |||
F918 | LD A,$F4 | |||
F91A | LD ($89B6),A | |||
F91D | LD HL,$0D1B | |||
F920 | LD BC,$0505 | |||
F923 | LD DE,$0506 | |||
F926 | LD A,($E1EC) | |||
F929 | CP $34 | |||
F92B | JR NC,$F94D | |||
F92D | LD E,$0B | |||
F92F | LD A,$17 | |||
F931 | LD ($89B4),A | |||
F934 | LD A,$E1 | |||
F936 | LD ($89B6),A | |||
F939 | LD A,($E1EC) | |||
F93C | CP $33 | |||
F93E | JR Z,$F94D | |||
F940 | LD C,$0F | |||
F942 | LD D,$0B | |||
F944 | CP $32 | |||
F946 | JR Z,$F94D | |||
F948 | LD B,$0A | |||
F94A | LD HL,$1216 | |||
F94D | LD A,H | |||
F94E | LD ($8D46),A | |||
F951 | LD A,B | |||
F952 | LD ($8CAF),A | |||
F955 | LD A,C | |||
F956 | LD ($8A53),A | |||
F959 | LD A,D | |||
F95A | LD ($8A01),A | |||
F95D | LD A,E | |||
F95E | LD ($88EC),A | |||
F961 | LD A,L | |||
F962 | LD ($8D48),A | |||
F965 | JP $B3B0 | |||
This entry point is used by the routine at AEF0.
|
||||
F968 | JP Z,$B040 | |||
F96B | CP $30 | |||
F96D | JP Z,$B040 | |||
F970 | JP $AF9C |
Used by the routine at B66A.
|
||||
F973 | LD HL,$65DA | tile screen address | ||
F976 | LD DE,$F98F | block address | ||
F979 | LD C,$06 | 6 rows | ||
F97B | LD B,$03 | 3 columns | ||
F97D | LD A,(DE) | |||
F97E | LD (HL),A | |||
F97F | INC HL | |||
F980 | INC DE | |||
F981 | DJNZ $F97D | |||
F983 | PUSH DE | |||
F984 | LD DE,$001B | |||
F987 | ADD HL,DE | |||
F988 | POP DE | |||
F989 | DEC C | |||
F98A | JR NZ,$F97B | |||
F98C | JP $B422 |
|
||||
F98F | DEFB $82,$83,$84 | ![]() |
||
F992 | DEFB $85,$86,$87 | |||
F995 | DEFB $85,$88,$89 | |||
F998 | DEFB $8A,$8B,$89 | |||
F99B | DEFB $82,$83,$84 | |||
F99E | DEFB $00,$8C,$00 |
F9A1 | RL B | |||
F9A3 | RL B | |||
F9A5 | RL B | |||
F9A7 | RL B | |||
F9A9 | LD HL,$0000 | |||
F9AC | LD A,(HL) | |||
F9AD | AND $F8 | |||
F9AF | OUT ($FE),A | |||
F9B1 | LD C,(HL) | |||
F9B2 | INC HL | |||
F9B3 | DEC C | |||
F9B4 | JR NZ,$F9B3 | |||
F9B6 | DJNZ $F9AC | |||
F9B8 | RET |
Used by the routine at BEB3.
|
||||
F9B9 | LD DE,$0000 | |||
F9BC | DEC DE | |||
F9BD | LD B,$05 | |||
F9BF | DJNZ $F9BF | |||
F9C1 | LD A,D | |||
F9C2 | OR E | |||
F9C3 | JR NZ,$F9BC | |||
F9C5 | CALL $BBDF | Read Input | ||
F9C8 | LD A,($7222) | |||
F9CB | CP $00 | |||
F9CD | LD A,($7232) | get Input bits | ||
F9D0 | JR Z,$F9D7 | |||
F9D2 | BIT 4,A | |||
F9D4 | RET NZ | |||
F9D5 | JR $F9C5 | |||
F9D7 | XOR A | |||
F9D8 | LD ($5C08),A | clear LASTK | ||
F9DB | RST $38 | |||
F9DC | LD A,($5C08) | get LASTK | ||
F9DF | CP $00 | |||
F9E1 | RET NZ | |||
F9E2 | JR $F9C5 |
|
||||
F9E4 | CALL $6590 | Prepare screen, show anti-piracy message, and wait for any key |
|
||||
F9E7 | LD A,$21 | |||
F9E9 | LD ($AEDB),A | |||
F9EC | LD A,$C6 | |||
F9EE | LD ($AEDC),A | |||
F9F1 | CALL $BC13 | |||
F9F4 | CALL $F913 | |||
F9F7 | JR $F9F4 |
Used by the routine at BD37.
|
||||
F9F9 | LD HL,$00B4 | |||
F9FC | LD B,$01 | |||
F9FE | CALL $FA11 | |||
FA01 | LD HL,$BDAF | |||
FA04 | RET | |||
FA05 | LD HL,$018F | |||
FA08 | LD B,$10 | |||
FA0A | CALL $FA11 | |||
FA0D | LD A,($71CF) | |||
FA10 | RET |
Used by the routine at F9F9.
|
||||
FA11 | LD A,$10 | |||
FA13 | OUT ($FE),A | |||
FA15 | LD A,B | |||
FA16 | DEC A | |||
FA17 | JR NZ,$FA16 | |||
FA19 | INC B | |||
FA1A | XOR A | |||
FA1B | OUT ($FE),A | |||
FA1D | LD A,L | |||
FA1E | AND $F8 | |||
FA20 | OUT ($FE),A | |||
FA22 | DEC HL | |||
FA23 | LD A,H | |||
FA24 | OR L | |||
FA25 | JR NZ,$FA11 | |||
FA27 | RET |
Used by the routine at BAD5.
|
||||
FA28 | LD B,$01 | |||
FA2A | CALL $F9A1 | |||
FA2D | LD A,($7184) | get current room address low byte | ||
FA30 | RET |
Used by the routine at A434.
|
||||
FA31 | CALL $9DD9 | Decrease Energy by B | ||
FA34 | LD B,$01 | |||
FA36 | CALL $F9A1 | Sound | ||
FA39 | RET |
|
||||
FA3A | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FA42 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FA4A | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FA52 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FA5A | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FA62 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FA6A | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FA72 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FA7A | DEFB $00,$FF,$60,$04,$FF,$FF,$10,$86 | |||
FA82 | DEFB $FF,$28,$00,$00,$00,$00,$00,$00 | |||
FA8A | DEFB $00,$00,$00,$DF,$FB,$DF,$FF,$F7 | |||
FA92 | DEFB $FF,$DF,$FF,$08,$DF,$FB,$DF,$FF | |||
FA9A | DEFB $F7,$FF,$DF,$FF,$08,$DF,$FB,$DF | |||
FAA2 | DEFB $FF,$F7,$FF,$DF,$FF,$08,$DF,$FB | |||
FAAA | DEFB $DF,$FF,$F7,$FF,$DF,$FF,$08,$00 | |||
FAB2 | DEFB $00,$00,$00,$FF,$FF,$00,$FF,$10 | |||
FABA | DEFB $00,$00,$00,$00,$FF,$FF,$00,$FF | |||
FAC2 | DEFB $10,$00,$00,$00,$00,$FF,$FF,$00 | |||
FACA | DEFB $FF,$10,$DF,$FB,$DF,$FF,$F7,$FF | |||
FAD2 | DEFB $DF,$FF,$08,$DF,$FB,$DF,$FF,$F7 | |||
FADA | DEFB $FF,$DF,$FF,$08,$DF,$FB,$DF,$FF | |||
FAE2 | DEFB $F7,$FF,$DF,$FF,$08,$DF,$FB,$DF | |||
FAEA | DEFB $FF,$F7,$FF,$DF,$FF,$08,$DF,$FB | |||
FAF2 | DEFB $DF,$FF,$F7,$FF,$DF,$FF,$08,$DF | |||
FAFA | DEFB $FB,$DF,$FF,$F7,$FF,$DF,$FF,$08 | |||
FB02 | DEFB $DF,$FB,$DF,$FF,$F7,$FF,$DF,$FF | |||
FB0A | DEFB $08,$DF,$FB,$DF,$FF,$F7,$FF,$DF | |||
FB12 | DEFB $FF,$08,$DF,$FB,$DF,$FF,$F7,$FF | |||
FB1A | DEFB $DF,$FF,$08,$DF,$FB,$DF,$FF,$F7 | |||
FB22 | DEFB $FF,$DF,$FF,$08,$DF,$FB,$DF,$FF | |||
FB2A | DEFB $F7,$FF,$DF,$FF,$08,$DF,$FB,$DF | |||
FB32 | DEFB $FF,$F7,$FF,$DF,$FF,$08,$DF,$FB | |||
FB3A | DEFB $DF,$FF,$F7,$FF,$DF,$FF,$08,$DF | |||
FB42 | DEFB $FB,$DF,$FF,$F7,$FF,$DF,$FF,$08 | |||
FB4A | DEFB $DF,$FB,$DF,$FF,$F7,$FF,$DF,$FF | |||
FB52 | DEFB $08,$DF,$FB,$DF,$FF,$F7,$FF,$DF | |||
FB5A | DEFB $FF,$08,$DF,$FB,$DF,$FF,$F7,$FF | |||
FB62 | DEFB $DF,$FF,$08,$DF,$FB,$DF,$FF,$F7 | |||
FB6A | DEFB $FF,$DF,$FF,$08,$DF,$FB,$DF,$FF | |||
FB72 | DEFB $F7,$FF,$DF,$FF,$08,$DF,$FB,$DF | |||
FB7A | DEFB $FF,$F7,$FF,$DF,$FF,$08,$DF,$FB | |||
FB82 | DEFB $DF,$FF,$F7,$FF,$DF,$FF,$08,$00 | |||
FB8A | DEFB $00,$00,$00,$FF,$FF,$00,$FF,$10 | |||
FB92 | DEFB $1F,$FA,$FF,$A0,$A0,$FF,$F5,$1F | |||
FB9A | DEFB $28,$FF,$AA,$FF,$00,$00,$FF,$55 | |||
FBA2 | DEFB $FF,$28,$F8,$AF,$FF,$05,$05,$FF | |||
FBAA | DEFB $5F,$F8,$28,$6E,$62,$62,$62,$62 | |||
FBB2 | DEFB $62,$6E,$60,$30,$96,$97,$DB,$19 | |||
FBBA | DEFB $DA,$9A,$9A,$9A,$30,$B4,$74,$EC | |||
FBC2 | DEFB $CC,$2C,$8C,$EC,$0C,$30,$DA,$9A | |||
FBCA | DEFB $B2,$B2,$B2,$B2,$B6,$30,$30,$EC | |||
FBD2 | DEFB $8C,$AC,$AC,$AC,$8C,$EC,$0C,$30 | |||
FBDA | DEFB $62,$62,$6E,$60,$67,$6F,$5D,$5A | |||
FBE2 | DEFB $30,$B6,$B2,$B2,$B2,$32,$B2,$D6 | |||
FBEA | DEFB $D0,$30,$FB,$18,$9C,$2E,$86,$C6 | |||
FBF2 | DEFB $FE,$7C,$30,$00,$00,$00,$00,$00 | |||
FBFA | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FC02 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FC0A | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FC12 | DEFB $00,$00,$00,$00,$00,$00,$00,$FE | |||
FC1A | DEFB $FE,$C6,$38,$28,$28,$28,$7C,$21 | |||
FC22 | DEFB $FE,$82,$A2,$22,$CA,$F2,$FC,$FF | |||
FC2A | DEFB $31,$CE,$F2,$FC,$FF,$FF,$FF,$FF | |||
FC32 | DEFB $FF,$31,$BE,$C2,$E2,$F2,$FA,$FC | |||
FC3A | DEFB $FE,$FF,$31,$00,$00,$00,$00,$00 | |||
FC42 | DEFB $00,$00,$00,$08,$F3,$8F,$3F,$FF | |||
FC4A | DEFB $FF,$FF,$FF,$FF,$31,$FE,$82,$A2 | |||
FC52 | DEFB $A0,$B3,$8F,$3F,$FF,$31,$FD,$83 | |||
FC5A | DEFB $A7,$AF,$9F,$BF,$7F,$FF,$31,$07 | |||
FC62 | DEFB $1B,$63,$87,$63,$1B,$07,$03,$28 | |||
FC6A | DEFB $F0,$CC,$C3,$E1,$C6,$D8,$E0,$C0 | |||
FC72 | DEFB $28,$FF,$FF,$FF,$FF,$FE,$FC,$F8 | |||
FC7A | DEFB $F0,$32,$F0,$F8,$FC,$FE,$FF,$FF | |||
FC82 | DEFB $FF,$FF,$32,$FF,$FF,$FF,$FF,$7F | |||
FC8A | DEFB $3F,$1F,$0F,$32,$0F,$1F,$3F,$7F | |||
FC92 | DEFB $FF,$FF,$FF,$FF,$32,$07,$07,$07 | |||
FC9A | DEFB $07,$FF,$FF,$FF,$FF,$20,$FF,$FF | |||
FCA2 | DEFB $FF,$FF,$E0,$E0,$E0,$E0,$20,$E0 | |||
FCAA | DEFB $E0,$E0,$E0,$FF,$FF,$FF,$FF,$20 | |||
FCB2 | DEFB $70,$70,$70,$70,$70,$70,$70,$70 | |||
FCBA | DEFB $20,$00,$00,$00,$00,$00,$00,$00 | |||
FCC2 | DEFB $00,$10,$1C,$1C,$1C,$1C,$1C,$1C | |||
FCCA | DEFB $1C,$1C,$20,$0E,$0E,$0E,$0E,$0E | |||
FCD2 | DEFB $0E,$0E,$0E,$20,$FF,$FF,$FF,$FF | |||
FCDA | DEFB $07,$07,$07,$07,$20,$38,$38,$38 | |||
FCE2 | DEFB $38,$FF,$FF,$FF,$FF,$20,$38,$38 | |||
FCEA | DEFB $38,$38,$38,$38,$38,$38,$20,$FF | |||
FCF2 | DEFB $FF,$FF,$FF,$38,$38,$38,$38,$20 | |||
FCFA | DEFB $00,$FE,$02,$02,$02,$0A,$02,$02 | |||
FD02 | DEFB $28,$02,$02,$02,$02,$02,$CA,$02 | |||
FD0A | DEFB $FE,$28,$A0,$A0,$A0,$A0,$A0,$A0 | |||
FD12 | DEFB $A0,$A0,$28,$A0,$A0,$A0,$A0,$A0 | |||
FD1A | DEFB $BF,$80,$FF,$28,$E0,$E0,$70,$70 | |||
FD22 | DEFB $B8,$B8,$DC,$1C,$20,$00,$00,$00 | |||
FD2A | DEFB $00,$80,$80,$C0,$C0,$20,$EE,$8E | |||
FD32 | DEFB $A7,$A7,$BB,$83,$FD,$01,$30,$FF | |||
FD3A | DEFB $FF,$7F,$7F,$B8,$B8,$DC,$1C,$20 | |||
FD42 | DEFB $0E,$0E,$07,$07,$FF,$FF,$FF,$FF | |||
FD4A | DEFB $20,$00,$00,$00,$00,$FF,$FF,$FF | |||
FD52 | DEFB $FF,$20,$00,$FF,$80,$A0,$A0,$A0 | |||
FD5A | DEFB $A0,$A0,$28,$C0,$C0,$C0,$E0,$E0 | |||
FD62 | DEFB $E0,$70,$70,$20,$01,$01,$01,$00 | |||
FD6A | DEFB $00,$00,$00,$00,$20,$00,$00,$00 | |||
FD72 | DEFB $00,$00,$80,$80,$80,$20,$0E,$0E | |||
FD7A | DEFB $07,$07,$07,$03,$03,$03,$20,$70 | |||
FD82 | DEFB $38,$38,$38,$1C,$1C,$1C,$0E,$20 | |||
FD8A | DEFB $FF,$FF,$FF,$FF,$00,$00,$00,$00 | |||
FD92 | DEFB $20,$FF,$FF,$FF,$FF,$E0,$E0,$70 | |||
FD9A | DEFB $70,$20,$D8,$9C,$9D,$9F,$9F,$9D | |||
FDA2 | DEFB $DC,$18,$30,$1A,$3A,$BA,$FA,$FA | |||
FDAA | DEFB $BA,$3A,$18,$30,$02,$02,$02,$02 | |||
FDB2 | DEFB $02,$0A,$02,$02,$28,$00,$00,$00 | |||
FDBA | DEFB $00,$00,$00,$00,$00,$20,$07,$07 | |||
FDC2 | DEFB $0E,$0E,$1C,$1C,$3A,$38,$20,$76 | |||
FDCA | DEFB $72,$E2,$E2,$DA,$C2,$BE,$80,$30 | |||
FDD2 | DEFB $00,$00,$00,$00,$01,$01,$03,$03 | |||
FDDA | DEFB $20,$FF,$FF,$FE,$FE,$1C,$1C,$3A | |||
FDE2 | DEFB $38,$20,$70,$70,$E0,$E0,$FF,$FF | |||
FDEA | DEFB $FF,$FF,$20,$BC,$BC,$9A,$9A,$9A | |||
FDF2 | DEFB $9A,$BC,$3C,$30,$80,$80,$80,$00 | |||
FDFA | DEFB $00,$00,$00,$00,$20,$03,$03,$03 | |||
FE02 | DEFB $07,$07,$07,$0E,$0E,$20,$70,$70 | |||
FE0A | DEFB $E0,$E0,$E0,$C0,$C0,$C0,$20,$00 | |||
FE12 | DEFB $00,$00,$00,$00,$01,$01,$01,$20 | |||
FE1A | DEFB $0E,$1C,$1C,$1C,$38,$38,$38,$70 | |||
FE22 | DEFB $20,$FF,$FF,$FF,$FF,$07,$07,$0E | |||
FE2A | DEFB $0E,$20,$7F,$41,$55,$41,$55,$41 | |||
FE32 | DEFB $7F,$80,$28,$B6,$7D,$00,$00,$00 | |||
FE3A | DEFB $00,$00,$00,$0E,$D8,$BE,$46,$DB | |||
FE42 | DEFB $A3,$B6,$CD,$7A,$0E,$03,$01,$02 | |||
FE4A | DEFB $03,$01,$02,$01,$02,$0E,$C3,$3D | |||
FE52 | DEFB $66,$4E,$5E,$5E,$3C,$C3,$28,$FF | |||
FE5A | DEFB $73,$00,$8C,$FF,$FF,$00,$FF,$28 | |||
FE62 | DEFB $3C,$7E,$BD,$BD,$BD,$A5,$7E,$C3 | |||
FE6A | DEFB $20,$7F,$41,$3C,$DB,$5A,$DB,$3C | |||
FE72 | DEFB $3C,$20,$7F,$41,$00,$FF,$FF,$FF | |||
FE7A | DEFB $00,$00,$20,$00,$41,$7F,$00,$7F | |||
FE82 | DEFB $41,$7F,$00,$20,$FF,$FF,$FF,$FF | |||
FE8A | DEFB $FF,$FF,$FF,$FF,$20,$0F,$3F,$7F | |||
FE92 | DEFB $FF,$FF,$FF,$FF,$FF,$20,$00,$41 | |||
FE9A | DEFB $7F,$00,$7F,$41,$00,$FF,$20,$5D | |||
FEA2 | DEFB $5D,$5D,$3C,$3D,$3D,$24,$FF,$20 | |||
FEAA | DEFB $7B,$47,$6F,$1E,$3C,$78,$F0,$E0 | |||
FEB2 | DEFB $20,$E0,$C0,$C0,$80,$80,$00,$00 | |||
FEBA | DEFB $00,$20,$7D,$41,$7B,$03,$77,$47 | |||
FEC2 | DEFB $6F,$0F,$20,$6E,$4E,$5C,$1D,$5D | |||
FECA | DEFB $5D,$5D,$1F,$20,$5F,$4F,$6F,$0F | |||
FED2 | DEFB $6F,$4F,$77,$07,$20,$77,$47,$7B | |||
FEDA | DEFB $03,$7B,$41,$7D,$00,$20,$7F,$41 | |||
FEE2 | DEFB $7F,$00,$03,$7C,$7F,$1F,$20,$FF | |||
FEEA | DEFB $7F,$3F,$1F,$63,$40,$7F,$00,$20 | |||
FEF2 | DEFB $66,$FF,$FF,$99,$66,$FF,$FF,$AA | |||
FEFA | DEFB $0D,$FF,$80,$3E,$C1,$1C,$E3,$08 | |||
FF02 | DEFB $FF,$10,$42,$7E,$42,$52,$42,$52 | |||
FF0A | DEFB $42,$7E,$27,$FF,$00,$80,$60,$1B | |||
FF12 | DEFB $04,$02,$01,$08,$01,$FE,$01,$00 | |||
FF1A | DEFB $00,$00,$00,$00,$08,$FF,$00,$00 | |||
FF22 | DEFB $00,$FF,$FF,$FF,$FF,$29,$80,$7F | |||
FF2A | DEFB $80,$00,$00,$00,$00,$00,$08,$FF | |||
FF32 | DEFB $80,$81,$86,$D8,$20,$40,$80,$08 | |||
FF3A | DEFB $00,$22,$FF,$00,$FF,$22,$00,$00 | |||
FF42 | DEFB $07,$32,$2E,$7B,$26,$32,$2E,$7B | |||
FF4A | DEFB $26,$07,$F0,$31,$3F,$F1,$F0,$31 | |||
FF52 | DEFB $3F,$F1,$20,$0F,$8C,$FC,$8F,$0F | |||
FF5A | DEFB $8C,$FC,$8F,$20,$F1,$31,$3F,$F1 | |||
FF62 | DEFB $F0,$31,$3F,$F1,$30,$0F,$8C,$FC | |||
FF6A | DEFB $8F,$4F,$8C,$FC,$8F,$30,$F6,$31 | |||
FF72 | DEFB $3F,$F1,$F6,$31,$3F,$F1,$08,$6F | |||
FF7A | DEFB $8C,$FC,$8F,$6F,$8C,$FC,$8F,$08 | |||
FF82 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | |||
FF8A | DEFB $08,$FF,$80,$80,$80,$EF,$0F,$0F | |||
FF92 | DEFB $0F,$08,$FF,$80,$80,$00,$F7,$F0 | |||
FF9A | DEFB $F0,$F0,$08,$84,$5B,$88,$F7,$22 | |||
FFA2 | DEFB $D5,$FF,$FF,$30,$FF,$80,$3E,$C1 | |||
FFAA | DEFB $1C,$E3,$08,$FF,$10,$44,$10,$FF | |||
FFB2 | DEFB $00,$FF,$FF,$FF,$FF,$30,$66,$00 | |||
FFBA | DEFB $00,$00,$FF,$FF,$99,$99,$10,$B9 | |||
FFC2 | DEFB $B3,$B1,$BB,$B9,$B3,$B3,$B3,$20 | |||
FFCA | DEFB $00,$00,$00,$00,$FF,$FF,$00,$FF | |||
FFD2 | DEFB $10,$3C,$66,$42,$C3,$81,$81,$00 | |||
FFDA | DEFB $00,$07,$D3,$D3,$D3,$D3,$D3,$D3 | |||
FFE2 | DEFB $FF,$81,$08,$D3,$D3,$D3,$D3,$D3 | |||
FFEA | DEFB $D3,$D3,$D3,$08,$81,$FF,$D3,$D3 | |||
FFF2 | DEFB $D3,$D3,$D3,$D3,$08 |
|
||||
FFF7 | DEFB $DF,$FB,$DF,$FF,$F7,$FF,$DF,$FF,$08 |