File:Takahashi Meijin no Bouken-jima III (Japan) test menu.ips

Rombank 1 @402B: ;; replace title screen menu call dw $7CE6 @402F: ;; replace hidden menu call dw $7CF3

@616F: ;; LUT for counter digits db $30 db $31 db $32 db $33 db $34 db $35 db $36 db $37 db $38 db $39 db $41 db $42 db $43 db $44 db $45 db $46

@7CE6: ;; Title Screen B Button ld a, [$FF00 + $8C] bit 1, a jp z, $42A2 ld hl, $D431 inc [hl]     ;; go from 0x06 to 0x08 inc [hl] ret

@7CF3: ;; Hidden Menu A Button ld a, [$FF00 + $8C] bit 0, a jp z, $4343 ld hl, $D431 dec [hl]     ;; go from 0x08 to 0x06 dec [hl] ret

@7D00: ;; Load Graphics for Test Menu ld hl, @7D40 @7D03: ldi a, [hl] and a, a jr z, @7D3C srl a ld [$D642], a ld a, $08 adc a, $00   ;; This can load to 8xxx and 9xxx in VRAM. Unused though. swap a ld d, a ld a, [hl] and a, $F0 swap a add a, d ld [$D643], a ldi a, [hl] and a, $0F swap a ld [$D644], a ldi a, [hl] ld [$D645], a ldi a, [hl] ld [$D646], a push hl @7D2D: ld hl, $D642 ld a, [hl] and a, a jr z, @7D39 call $3FFC   ;; Will transfer up to 4 tiles per call jr @7D2D @7D39: pop hl jr @7D03 @7D3C: jp $3F9F ret          ;; Unnecessary

@7D40: db $09       ;; size << 1 | destination MSB A12 db $00       ;; destination A11..A4 db $00        ;; source A14..A8 db $0B        ;; source A7..A4 << 4 | source RB

db $09 db $20 db $00 db $0B

db $03 db $5C db $07 db $AB

db $03 db $2E db $07 db $CB

db $15 db $30 db $07 db $DB

db $0D db $41 db $08 db $7B

db $05 db $48 db $08 db $DB

db $0B db $4C db $08 db $FB

db $09 db $52 db $09 db $4B

db $03 db $57 db $09 db $8B

db $03 db $59 db $09 db $9B

db $03 db $4A db $3D db $71

db $03 db $3D db $3D db $81

db $00       ;; EOL

@7D7A: db $03 db $00 db $03 db $00 db $03 db $00 db $03 db $00 db $63 db $00 db $73 db $00 db $3E db $00 db $00 db $00
 * Letter J stolen from credits

@7D8A: db $00 db $00 db $00 db $00 db $3C db $00 db $00 db $00 db $3C db $00 db $00 db $00 db $00 db $00 db $00 db $00
 * New equals sign (=)