mirror of
https://github.com/pret/pokepinball.git
synced 2026-09-29 14:01:27 -04:00
8019 lines
173 KiB
NASM
Executable File
8019 lines
173 KiB
NASM
Executable File
INCLUDE "macros.asm"
|
|
INCLUDE "constants.asm"
|
|
|
|
SECTION "rst 00", ROM0 [$00]
|
|
di
|
|
jp Entry
|
|
|
|
SECTION "rst 10", ROM0 [$10]
|
|
jp Func_468
|
|
|
|
SECTION "rst 18", ROM0 [$18]
|
|
jp Func_477
|
|
|
|
SECTION "rst 20", ROM0 [$20]
|
|
jp Func_486
|
|
|
|
SECTION "rst 40", ROM0 [$40]
|
|
jp Func_2f2
|
|
|
|
SECTION "rst 48", ROM0 [$48]
|
|
jp Func_3ec
|
|
|
|
SECTION "rst 50", ROM0 [$50]
|
|
jp Func_418
|
|
|
|
SECTION "rst 58", ROM0 [$58]
|
|
jp Func_445
|
|
|
|
SECTION "rst 60", ROM0 [$60]
|
|
jp Func_467
|
|
|
|
|
|
SECTION "Entry", ROM0 [$100]
|
|
|
|
Entry: ; 0x100
|
|
nop
|
|
jp Start
|
|
|
|
SECTION "Header", ROM0 [$104]
|
|
|
|
; The header is generated by rgbfix.
|
|
; The space here is allocated to prevent code from being overwritten.
|
|
ds $150 - $104
|
|
|
|
SECTION "Main", ROM0
|
|
|
|
Start: ; 0x150
|
|
ld [$fffe], a
|
|
ld sp, $fffe
|
|
di
|
|
xor a
|
|
ld [$ff0f], a
|
|
ld a, [$ff40] ; LCD Control
|
|
bit 7, a ; Check if LCD Display is enabled
|
|
jr nz, .LCDDisplayEnabled
|
|
set 7, a
|
|
ld [$ff40], a
|
|
.LCDDisplayEnabled
|
|
ld bc, $0002
|
|
call Func_948
|
|
.waitForVBlank
|
|
ld a, [$ff44] ; LY register (LCDC Y-Coordinate)
|
|
cp 145 ; > 144 means V-Blank
|
|
jr c, .waitForVBlank
|
|
ld a, $81
|
|
ld [$ff40], a ; Enable LCD Display
|
|
xor a
|
|
ld [$ff47], a ; Clear Palette Data
|
|
ld [$ff48], a
|
|
ld [$ff49], a
|
|
ld bc, $0002
|
|
call Func_948
|
|
.waitForVBlank2
|
|
ld a, [$ff44] ; LY register (LCDC Y-Coordinate)
|
|
cp 145 ; > 144 means V-Blank
|
|
jr c, .waitForVBlank2
|
|
xor a
|
|
ld [$ff40], a ; Disable LCD Display
|
|
ld hl, wc000
|
|
ld bc, $2000
|
|
call ClearData ; Clear WRAM Bank 0
|
|
ld hl, vTiles0
|
|
ld bc, $1000
|
|
call ClearData ; Clear First half of VRAM
|
|
ld a, $a
|
|
ld [$0000], a ; Enable RAM
|
|
ld a, $1
|
|
ld [$2000], a ; Load ROM Bank $1
|
|
ld a, $0
|
|
ld [$6000], a ; Enable ROM Banking Mode
|
|
ld a, $0
|
|
ld [$4000], a ; Set bits 5 and 6 of ROM Bank Number
|
|
ld a, $1
|
|
ld [hLoadedROMBank], a
|
|
ld a, $1
|
|
ld [$6000], a ; Enable RAM Banking Mode
|
|
ld a, $0
|
|
ld [$4000], a ; Load RAM Bank $0
|
|
ld sp, $dfff ; Initialize stack pointer to the end of WRAM Bank $1
|
|
ld hl, $ff80
|
|
ld bc, $007e
|
|
call ClearData ; Clear High RAM (HRAM)
|
|
call InitializeHRAM
|
|
call ClearOAMBuffer
|
|
xor a
|
|
ld [$d7fb], a
|
|
ld [$d7fc], a
|
|
ld [$d7fd], a
|
|
ld [$ffb0], a
|
|
ld [$ffb1], a
|
|
ld [$d8e1], a
|
|
ld [$d7fe], a
|
|
ld [$fffc], a
|
|
ld hl, $ff9e
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld a, $8f
|
|
ld [hli], a
|
|
ld a, $a6
|
|
ld [hli], a
|
|
ld a, $0
|
|
ld [$d849], a
|
|
ld [$d84a], a
|
|
ld a, $f
|
|
call Func_52c
|
|
call Func_23b
|
|
ld a, [$fffe]
|
|
and a
|
|
jr nz, .asm_222
|
|
call Func_12f8
|
|
rl a
|
|
and $1
|
|
ld [$fffb], a
|
|
call Func_13a8
|
|
ld a, [$fffb]
|
|
and a
|
|
jr z, .asm_222
|
|
ld a, $1
|
|
ld [$d917], a
|
|
.asm_222
|
|
ld a, $1
|
|
ld [$ffff], a ; Only enable LCD Status interrupt
|
|
ei
|
|
ld a, $ff
|
|
ld [$d810], a
|
|
call Func_97a
|
|
xor a
|
|
ld [$daa3], a
|
|
ld a, Bank(Func_1ffc)
|
|
ld hl, Func_1ffc
|
|
call BankSwitchSimple
|
|
Func_23b: ; 0x23b
|
|
ld a, [$fffe]
|
|
cp $11
|
|
jr nz, .asm_248
|
|
ld a, $1
|
|
ld [$fffe], a
|
|
ld [$fffd], a
|
|
ret
|
|
.asm_248
|
|
xor a
|
|
ld [$fffe], a
|
|
ld [$fffd], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$24e,$2f2 - $24e
|
|
|
|
Func_2f2: ; 0x2f2
|
|
push af
|
|
push bc
|
|
push de
|
|
push hl
|
|
call $ff80
|
|
ld a, [$ff9e]
|
|
ld [$ff40], a
|
|
call Func_113a
|
|
ei
|
|
ld a, [$ff44]
|
|
cp $90
|
|
jr c, .asm_328
|
|
ld hl, $ff9f
|
|
ld c, $41
|
|
ld a, [hli]
|
|
ld [$ff00+c], a
|
|
inc c
|
|
ld a, [hli]
|
|
ld [$ff00+c], a
|
|
inc c
|
|
ld a, [hli]
|
|
ld [$ff00+c], a
|
|
inc c
|
|
inc c
|
|
ld a, [hli]
|
|
ld [$ff00+c], a
|
|
inc c
|
|
inc c
|
|
ld a, [hli]
|
|
ld [$ff00+c], a
|
|
inc c
|
|
ld a, [hli]
|
|
ld [$ff00+c], a
|
|
inc c
|
|
ld a, [hli]
|
|
ld [$ff00+c], a
|
|
inc c
|
|
ld a, [hli]
|
|
ld [$ff00+c], a
|
|
inc c
|
|
ld a, [hli]
|
|
ld [$ff00+c], a
|
|
.asm_328
|
|
ld a, [$ffa2]
|
|
ld [$ffa8], a
|
|
ld a, [$ffa9]
|
|
ld [$ffaa], a
|
|
ld a, [$ffab]
|
|
ld [$ffac], a
|
|
ld a, [$ffad]
|
|
ld [$ffae], a
|
|
call Func_ab8
|
|
ld a, [$daa3]
|
|
and a
|
|
jr nz, .asm_359
|
|
ld a, [$ff98]
|
|
cp $f
|
|
jr nz, .asm_359
|
|
ld a, [$ff99]
|
|
and $f
|
|
jr z, .asm_359
|
|
ld hl, [sp+$8]
|
|
ld [hl], $c3
|
|
inc hl
|
|
ld [hl], $3
|
|
ld a, $1
|
|
ld [$daa3], a
|
|
.asm_359
|
|
ld hl, $ffb2
|
|
ld a, [hl]
|
|
inc [hl]
|
|
and a
|
|
jr nz, .asm_365
|
|
ld hl, $ffb3
|
|
inc [hl]
|
|
.asm_365
|
|
ld hl, $ffb4
|
|
inc [hl]
|
|
ld a, [$d8e1]
|
|
and a
|
|
call nz, Func_167b
|
|
ld a, [$d849]
|
|
and a
|
|
jr nz, .asm_37d
|
|
ld a, [$d85d]
|
|
and a
|
|
call nz, $0504
|
|
.asm_37d
|
|
ld a, [$d84a]
|
|
and a
|
|
jr z, .asm_39d
|
|
xor a
|
|
ld [$d84a], a
|
|
ld a, $1
|
|
ld [$d849], a
|
|
ld a, $bc
|
|
ld [$ff06], a
|
|
ld a, $0
|
|
ld [$ff07], a
|
|
ld hl, $ffff
|
|
set 2, [hl]
|
|
ld a, $4
|
|
ld [$ff07], a
|
|
.asm_39d
|
|
ld hl, $4000
|
|
ld a, [$d917]
|
|
and a
|
|
jr nz, .asm_3b5
|
|
ld a, [$d803]
|
|
rrca
|
|
ld [$d803], a
|
|
and $1
|
|
jr z, .asm_3b5
|
|
set 3, [hl]
|
|
jr .asm_3b7
|
|
.asm_3b5
|
|
res 3, [hl]
|
|
.asm_3b7
|
|
ld a, [$d4aa]
|
|
and a
|
|
call nz, $0e69
|
|
pop hl
|
|
pop de
|
|
pop bc
|
|
pop af
|
|
reti
|
|
|
|
INCBIN "baserom.gbc",$3c3,$3ec - $3c3
|
|
|
|
Func_3ec: ; 0x3ec
|
|
push af
|
|
push bc
|
|
push de
|
|
push hl
|
|
ld a, [$ffb0]
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, $0408
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
jp [hl]
|
|
|
|
INCBIN "baserom.gbc",$3ff,$418 - $3ff
|
|
|
|
Func_418: ; 0x418
|
|
ei
|
|
push af
|
|
push bc
|
|
push de
|
|
push hl
|
|
ld a, [$d849]
|
|
and a
|
|
jr z, .asm_42a
|
|
ld a, [$d85d]
|
|
and a
|
|
call nz, Func_504
|
|
.asm_42a
|
|
ld a, [$d84a]
|
|
and a
|
|
jr z, .asm_440
|
|
xor a
|
|
ld [$d84a], a
|
|
ld [$d849], a
|
|
ld a, $0
|
|
ld [$ff07], a
|
|
ld hl, $ffff
|
|
res 2, [hl]
|
|
.asm_440
|
|
pop hl
|
|
pop de
|
|
pop bc
|
|
pop af
|
|
reti
|
|
|
|
Func_445: ; 0x445
|
|
push af
|
|
push bc
|
|
push de
|
|
push hl
|
|
ld hl, $045d ; todo
|
|
push hl
|
|
ld a, [$ffb1]
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, $0462 ; todo
|
|
add hl, bc
|
|
ld c, [hl]
|
|
inc hl
|
|
ld b, [hl]
|
|
push bc
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$45d,$467 - $45d
|
|
|
|
Func_467: ; 0x467
|
|
reti
|
|
|
|
Func_468: ; 0x468
|
|
ld a, [$ff40]
|
|
bit 7, a
|
|
ret z
|
|
ld hl, $ffb2
|
|
xor a
|
|
ld [hl], a
|
|
.asm_472
|
|
ld a, [hl]
|
|
and a
|
|
jr z, .asm_472
|
|
ret
|
|
|
|
Func_477: ; 0x477
|
|
sla a
|
|
pop hl
|
|
push de
|
|
ld e, a
|
|
ld d, $0
|
|
add hl, de
|
|
ld e, [hl]
|
|
inc hl
|
|
ld d, [hl]
|
|
ld l, e
|
|
ld h, d
|
|
pop de
|
|
jp [hl]
|
|
|
|
Func_486: ; 0x486
|
|
rlca
|
|
add l
|
|
ld l, a
|
|
jr nc, .noCarry
|
|
inc h
|
|
.noCarry
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$490,$4af - $490
|
|
|
|
PlaySoundEffect: ; 0x4af
|
|
; input: de = sound effect id? I think d specifies something special and e holds the id
|
|
ld a, [$dead]
|
|
and a
|
|
ret nz
|
|
ld a, [$d800]
|
|
and a
|
|
jr z, .asm_4bd
|
|
ld a, d
|
|
and a
|
|
ret z
|
|
.asm_4bd
|
|
ld a, d
|
|
ld [$d800], a
|
|
ld d, $0
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, [$d85b]
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
call $40c0 ; todo
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$4d8,$504 - $4d8
|
|
|
|
Func_504: ; 0x504
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, [$d85b]
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
call $4180 ; todo
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
ld a, [$d801]
|
|
inc a
|
|
ld [$d801], a
|
|
and $3
|
|
ret nz
|
|
ld a, [$d800]
|
|
and a
|
|
ret z
|
|
dec a
|
|
ld [$d800], a
|
|
ret
|
|
|
|
Func_52c: ; 0x52c
|
|
di
|
|
ld [$d85b], a
|
|
ei
|
|
ret
|
|
|
|
Func_532: ; 0x532
|
|
ld e, a
|
|
ld d, $0
|
|
sla e
|
|
rl d
|
|
sla e
|
|
rl d
|
|
pop hl
|
|
add hl, de
|
|
ld e, [hl]
|
|
inc hl
|
|
ld d, [hl]
|
|
inc hl
|
|
ld a, [hl]
|
|
ld h, d
|
|
ld l, e
|
|
jp BankSwitch
|
|
|
|
BankSwitchSimple: ; 0x549
|
|
; Switches to Bank in register a and jumps to hl.
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a ; Load Bank
|
|
jp [hl]
|
|
|
|
BankSwitch: ; 0x54f
|
|
ld e, a
|
|
ld a, [hLoadedROMBank] ; currently-loaded Bank
|
|
cp e
|
|
jr z, .doJump
|
|
push af
|
|
ld a, e
|
|
call .loadNewBank
|
|
call .doJump
|
|
pop de
|
|
ld a, d
|
|
.loadNewBank
|
|
push hl
|
|
push de
|
|
ld hl, $ffff
|
|
ld d, [hl]
|
|
ld [hl], $0
|
|
ld [$2000], a
|
|
ld [hLoadedROMBank], a
|
|
ld [hl], d
|
|
pop de
|
|
pop hl
|
|
ret
|
|
.doJump
|
|
ld a, [$ff8b]
|
|
ld e, a
|
|
ld a, [$ff8a]
|
|
jp [hl]
|
|
|
|
Func_576: ; 0x576
|
|
ld a, [$ff40]
|
|
bit 7, a
|
|
ret z
|
|
ld a, [$ff9e]
|
|
res 7, a
|
|
ld [$ff9e], a
|
|
.asm_581
|
|
ld a, [$ff40]
|
|
bit 7, a
|
|
jr nz, .asm_581
|
|
ret
|
|
|
|
Func_588: ; 0x588
|
|
ld a, [$ffc4]
|
|
and a
|
|
call nz, Func_597
|
|
ld a, [$ff9e]
|
|
set 7, a
|
|
ld [$ff40], a
|
|
ld [$ff9e], a
|
|
ret
|
|
|
|
Func_597: ; 0x597
|
|
ld de, $ff68
|
|
ld a, $80
|
|
ld [de], a
|
|
inc de
|
|
ld b, $8
|
|
.asm_5a0
|
|
ld a, [$d80c]
|
|
call Func_5c2
|
|
dec b
|
|
jr nz, .asm_5a0
|
|
ld de, $ff6a
|
|
ld a, $80
|
|
ld [de], a
|
|
inc de
|
|
ld b, $4
|
|
.asm_5b2
|
|
ld a, [$d80d]
|
|
call Func_5c2
|
|
ld a, [$d80e]
|
|
call Func_5c2
|
|
dec b
|
|
jr nz, .asm_5b2
|
|
ret
|
|
|
|
Func_5c2: ; 0x5c2
|
|
push bc
|
|
ld b, $4
|
|
.asm_5c5
|
|
push af
|
|
push bc
|
|
and $3
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, $05e1
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld [de], a
|
|
ld a, [hli]
|
|
ld [de], a
|
|
pop bc
|
|
pop af
|
|
srl a
|
|
srl a
|
|
dec b
|
|
jr nz, .asm_5c5
|
|
pop bc
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$5e1,$5f7 - $5e1
|
|
|
|
InitializeHRAM: ; 0x5f7
|
|
; Initializes registers $ff80 - $ff8a
|
|
ld c, $80
|
|
ld b, $a ; number of bytes to load
|
|
ld hl, InitialHRAM
|
|
.loop
|
|
ld a, [hli]
|
|
ld [$ff00+c], a ; add register c to $ff00, and store register a into the resulting address
|
|
inc c
|
|
dec b
|
|
jr nz, .loop
|
|
ret
|
|
|
|
InitialHRAM:
|
|
; These $a bytes are initially load into $ff80 - $ff8a by InitializeHRAM.
|
|
db $3e, $d0, $e0, $46, $3e, $28, $3d, $20, $fd, $c9
|
|
|
|
WaitForLCD: ; 0x60f
|
|
; Wait for LCD controller to stop reading from both OAM and VRAM because
|
|
; CPU can't access OAM, VRAM, or palette data ($ff69, $ff6b) during this time.
|
|
ld a, [$ff41] ; LCDC Status register
|
|
and $3
|
|
jr nz, WaitForLCD
|
|
ld a, $a
|
|
.delay10Cycles
|
|
dec a
|
|
jr nz, .delay10Cycles
|
|
ret
|
|
|
|
Func_61b: ; 0x61b
|
|
ld a, [$ff44] ; LY register (LCDC Y-Coordinate)
|
|
cp $40
|
|
jr c, .asm_625
|
|
cp $80
|
|
jr c, .asm_63d
|
|
.asm_625
|
|
ld a, [$ff44] ; LY register (LCDC Y-Coordinate)
|
|
cp $40
|
|
jr c, .asm_625
|
|
cp $80
|
|
jr nc, .asm_625
|
|
.asm_62f
|
|
ld a, [$ff41]
|
|
and $3
|
|
jr nz, .asm_62f ; wait for lcd controller to finish transferring data
|
|
ld a, $15
|
|
.wait
|
|
dec a
|
|
jr nz, .wait
|
|
nop
|
|
nop
|
|
nop
|
|
.asm_63d
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$63e,$654 - $63e
|
|
|
|
ClearData: ; 0x654
|
|
; Clears bc bytes starting at hl.
|
|
; bc can be a maximum of $7fff, since it checks bit 7 of b when looping.
|
|
xor a
|
|
dec bc
|
|
.clearLoop
|
|
ld [hli], a
|
|
dec bc
|
|
bit 7, b
|
|
jr z, .clearLoop
|
|
ret
|
|
|
|
Func_65d: ; 0x65d
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
dec bc
|
|
ld a, c
|
|
or b
|
|
jr nz, Func_65d
|
|
ret
|
|
|
|
Func_666: ; 0x666
|
|
bit 7, h
|
|
jr nz, .asm_679
|
|
ld [$fffa], a
|
|
ld a, [$fff8]
|
|
push af
|
|
ld a, [$fffa]
|
|
ld [$fff8], a
|
|
ld [$2000], a
|
|
scf
|
|
jr .asm_67d
|
|
.asm_679
|
|
ld [$4000], a
|
|
and a
|
|
.asm_67d
|
|
push af
|
|
.asm_67e
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
dec bc
|
|
ld a, c
|
|
or b
|
|
jr nz, .asm_67e
|
|
pop af
|
|
ret nc
|
|
pop af
|
|
ld [$fff8], a
|
|
ld [$2000], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$68f,$6a4 - $68f
|
|
|
|
LoadVideoData: ; 0x6a4
|
|
; Input:
|
|
; hl = address of pointer table
|
|
; a = index of item to load in pointer table
|
|
; This needs more documentation. It loads things like graphics and palettes.
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
.loadItem
|
|
ld a, [hli]
|
|
ld c, a
|
|
and [hl]
|
|
cp $ff ; two consecutive $ff bytes terminate the array
|
|
ret z
|
|
ld a, [hli]
|
|
ld b, a ; bc contains pointer to data to be loaded
|
|
push hl
|
|
push bc
|
|
ld a, [hli] ; a contains bank of data to be loaded
|
|
ld e, [hl]
|
|
inc hl
|
|
ld d, [hl] ; de contains destination address for data
|
|
inc hl
|
|
ld c, [hl]
|
|
inc hl
|
|
ld b, [hl] ; bc contains last word of data struct
|
|
inc hl ; this is a wasted instruction
|
|
pop hl
|
|
call Func_6cb
|
|
pop hl
|
|
ld bc, $0005
|
|
add hl, bc
|
|
jr .loadItem
|
|
|
|
Func_6cb: ; 0x6cb
|
|
srl b
|
|
rr c
|
|
jp c, Func_6fd ; if lowest bit of bc is set
|
|
jp Func_6d5 ; This jumps to the next instruction... Strange.
|
|
|
|
Func_6d5: ; 0x6d5
|
|
ld [$fffa], a ; save bank of data to be loaded
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, [$fffa] ; a contains bank of data to be loaded
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a ; switch bank to the bank of data to be loaded
|
|
srl b
|
|
rr c
|
|
rl a
|
|
and $1 ; checks bit 1 of the last word in the data struct
|
|
ld [$ff4f], a ; set VRAM Bank
|
|
.copyByte
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
dec bc
|
|
ld a, c
|
|
or b ; does bc = 0?
|
|
jr nz, .copyByte
|
|
xor a
|
|
ld [$ff4f], a ; set VRAM Bank to Bank 0
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a ; reload the previous ROM Bank
|
|
ret
|
|
|
|
Func_6fd: ; 0x6fd
|
|
ld [$fffa], a ; save bank of data to be loaded
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, [$fffa] ; a contains bank of data to be loaded
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a ; switch bank to the bank of data to be loaded
|
|
ld a, e
|
|
bit 6, a
|
|
jr nz, .asm_717
|
|
ld de, $ff68
|
|
call Func_724
|
|
jr z, .asm_71d
|
|
xor a
|
|
.asm_717
|
|
ld de, $ff6a
|
|
call Func_724
|
|
.asm_71d
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
ret
|
|
|
|
Func_724: ; 0x724
|
|
res 6, a
|
|
ld b, a
|
|
set 7, a
|
|
ld [de], a
|
|
inc de
|
|
.copyByte
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc b
|
|
dec c
|
|
ret z
|
|
bit 6, b
|
|
jr z, .copyByte
|
|
ret
|
|
|
|
Func_735: ; 0x735
|
|
push hl
|
|
ld hl, $ff40
|
|
bit 7, [hl]
|
|
pop hl
|
|
jp z, Func_666
|
|
; fall through
|
|
Func_73f: ; 0x73f
|
|
; This loads some data into VRAM. It waits for the LCD H-Blank to copy the data 4 bytes at a time.
|
|
; input: hl = source of data
|
|
; a = bank of data to load
|
|
; de = destination of data
|
|
; bc = number of bytes to copy
|
|
bit 7, h
|
|
jr nz, .asm_752
|
|
ld [$fffa], a
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, [$fffa]
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
scf
|
|
jr .asm_756
|
|
.asm_752
|
|
ld [$4000], a
|
|
and a
|
|
.asm_756
|
|
push af
|
|
call WaitForLCD
|
|
.loop
|
|
call Func_61b
|
|
.waitForHBlank
|
|
ld a, [$ff41]
|
|
and $3
|
|
jr nz, .waitForHBlank
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
dec bc
|
|
dec bc
|
|
dec bc
|
|
dec bc
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
ld a, b
|
|
or c
|
|
jr nz, .loop
|
|
pop af
|
|
ret nc
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$790,$848 - $790
|
|
|
|
PutTileInVRAM: ; 0x848
|
|
; Puts a tile in VRAM.
|
|
; input: a = tile number
|
|
; hl = pointer to VRAM location where tile should be placed
|
|
push af
|
|
call WaitForLCD
|
|
call Func_61b
|
|
.asm_84f
|
|
ld a, [$ff41]
|
|
and $3
|
|
jr nz, .asm_84f ; wait for lcd controller to finish transferring data
|
|
pop af
|
|
ld [hl], a ; Store tile number in VRAM background map
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$858,$916 - $858
|
|
|
|
ClearOAMBuffer: ; 0x916
|
|
; Clears the OAM buffer by loading $f0 into all of the entries.
|
|
ld hl, wOAMBuffer ; 0xd000
|
|
ld b, 4 * 40 ; wOAMBuffer is 4 * 40 bytes long (40 OAM entries, 4 bytes each)
|
|
ld a, $f0 ; byte to write
|
|
.loop
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .loop
|
|
xor a
|
|
ld [$d802], a
|
|
ret
|
|
|
|
Func_926: ; 0x926
|
|
ld a, [$d802]
|
|
cp $a0
|
|
jr nc, .asm_93a
|
|
ld l, a
|
|
ld h, $d0
|
|
cpl
|
|
add $a1
|
|
ld b, a
|
|
ld a, $f0
|
|
.asm_936
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_936
|
|
.asm_93a
|
|
xor a
|
|
ld [$d802], a
|
|
ret
|
|
|
|
Func_93f: ; 0x93f
|
|
push bc
|
|
rst $10
|
|
pop bc
|
|
dec bc
|
|
ld a, c
|
|
or b
|
|
jr nz, Func_93f
|
|
ret
|
|
|
|
Func_948: ; 0x948
|
|
ld de, $06d6
|
|
.asm_94b
|
|
nop
|
|
nop
|
|
nop
|
|
dec de
|
|
ld a, d
|
|
or e
|
|
jr nz, .asm_94b
|
|
dec bc
|
|
ld a, b
|
|
or c
|
|
jr nz, Func_948
|
|
ret
|
|
|
|
Func_959: ; 0x959
|
|
push bc
|
|
push de
|
|
push hl
|
|
ld a, [$d811]
|
|
ld c, a
|
|
ld b, $0
|
|
inc a
|
|
cp $37
|
|
jr nz, .asm_96e
|
|
call Func_9fa
|
|
xor a
|
|
ld bc, $0000
|
|
.asm_96e
|
|
ld [$d811], a
|
|
ld hl, $d812
|
|
add hl, bc
|
|
ld a, [hl]
|
|
pop hl
|
|
pop de
|
|
pop bc
|
|
ret
|
|
|
|
Func_97a: ; 0x97a
|
|
ld a, [$d810]
|
|
ld d, a
|
|
ld a, $0
|
|
ld a, [$afff]
|
|
.asm_983
|
|
cp d
|
|
jr c, .asm_989
|
|
sub d
|
|
jr .asm_983
|
|
.asm_989
|
|
ld [$d80f], a
|
|
ld [$d848], a
|
|
ld e, $1
|
|
ld hl, $09c4 ; todo
|
|
ld a, $36
|
|
.asm_996
|
|
push af
|
|
ld c, [hl]
|
|
inc hl
|
|
ld b, $0
|
|
push hl
|
|
ld hl, $d812
|
|
add hl, bc
|
|
ld [hl], e
|
|
ld a, [$d80f]
|
|
sub e
|
|
jr nc, .asm_9a8
|
|
add d
|
|
.asm_9a8
|
|
ld e, a
|
|
ld a, [hl]
|
|
ld [$d80f], a
|
|
pop hl
|
|
pop af
|
|
dec a
|
|
jr nz, .asm_996
|
|
call Func_9fa
|
|
call Func_9fa
|
|
call Func_9fa
|
|
ld a, $0
|
|
call Func_959
|
|
ld [$afff], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$9c4,$9fa - $9c4
|
|
|
|
Func_9fa: ; 0x9fa
|
|
ld a, [$d810]
|
|
ld d, a
|
|
ld bc, $d812
|
|
ld hl, $d831
|
|
ld e, $18
|
|
.asm_a06
|
|
ld a, [bc]
|
|
sub [hl]
|
|
jr nc, .asm_a0b
|
|
add d
|
|
.asm_a0b
|
|
ld [bc], a
|
|
dec e
|
|
jr nz, .asm_a06
|
|
ld bc, $d82a
|
|
ld hl, $d812
|
|
ld e, $1f
|
|
.asm_a17
|
|
ld a, [bc]
|
|
sub [hl]
|
|
jr nc, .asm_a1c
|
|
add d
|
|
.asm_a1c
|
|
ld [bc], a
|
|
dec e
|
|
jr nz, .asm_a17
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$a21,$ab8 - $a21
|
|
|
|
Func_ab8: ; 0xab8
|
|
ld a, $20
|
|
ld [$ff00], a
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
and $f
|
|
swap a
|
|
ld b, a
|
|
ld a, $30
|
|
ld [$ff00], a
|
|
ld a, $10
|
|
ld [$ff00], a
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
and $f
|
|
or b
|
|
cpl
|
|
ld [$ff98], a
|
|
ld a, $30
|
|
ld [$ff00], a
|
|
ld a, [$ff98]
|
|
ld hl, $ff9c
|
|
xor [hl]
|
|
push af
|
|
ld hl, $ff98
|
|
and [hl]
|
|
ld [$ff99], a
|
|
ld [$ff9a], a
|
|
pop af
|
|
ld hl, $ff9c
|
|
and [hl]
|
|
ld [$ff9b], a
|
|
ld a, [$ff98]
|
|
and a
|
|
jr z, .asm_b15
|
|
ld hl, $ff9c
|
|
cp [hl]
|
|
jr nz, .asm_b15
|
|
ld hl, $ff9d
|
|
dec [hl]
|
|
jr nz, .asm_b1a
|
|
ld a, [$ff98]
|
|
ld [$ff9a], a
|
|
ld a, [$d807]
|
|
ld [$ff9d], a
|
|
jr .asm_b1a
|
|
.asm_b15
|
|
ld a, [$d806]
|
|
ld [$ff9d], a
|
|
.asm_b1a
|
|
ld a, [$ff98]
|
|
ld [$ff9c], a
|
|
ld hl, $d808
|
|
ld a, [$ff98]
|
|
or [hl]
|
|
ld [hli], a
|
|
ld a, [$ff99]
|
|
or [hl]
|
|
ld [hli], a
|
|
ld a, [$ff9a]
|
|
or [hl]
|
|
ld [hli], a
|
|
ret
|
|
|
|
Func_b2e: ; 0xb2e
|
|
ld hl, $d808
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$b36,$b4c - $b36
|
|
|
|
IsKeyPressed: ; 0xb4c
|
|
; Checks if a key for the specified key config is pressed.
|
|
; input: hl = pointer to key config byte pair (e.g. wKeyConfigLeftFlipper)
|
|
; output: zero flag is set if a corresponding key is pressed
|
|
; zero flag is reset if no corresponding key is pressed
|
|
ld a, [$ff98]
|
|
and [hl]
|
|
jr z, .asm_b58
|
|
cp [hl]
|
|
jr nz, .asm_b58
|
|
ld a, [$ff99]
|
|
and [hl]
|
|
ret nz
|
|
.asm_b58
|
|
inc hl
|
|
ld a, [$ff98]
|
|
and [hl]
|
|
ret z
|
|
cp [hl]
|
|
jr nz, .asm_b64
|
|
ld a, [$ff99]
|
|
and [hl]
|
|
ret
|
|
.asm_b64
|
|
xor a
|
|
ret
|
|
|
|
Func_b66: ; 0xb66
|
|
ld a, [$fffe]
|
|
and a
|
|
jr nz, .asm_b73
|
|
xor a
|
|
ld [$ffa3], a
|
|
ld [$ffa4], a
|
|
ld [$ffa5], a
|
|
ret
|
|
.asm_b73
|
|
ld de, $ff68
|
|
ld hl, $d200 ; todo
|
|
ld b, $0
|
|
ld c, $20
|
|
.asm_b7d
|
|
ld a, b
|
|
ld [$ff68], a
|
|
inc b
|
|
ld a, [$ff69]
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [$ff68], a
|
|
inc b
|
|
ld a, [$ff69]
|
|
ld [hli], a
|
|
dec c
|
|
jr nz, .asm_b7d
|
|
ld b, $0
|
|
ld c, $20
|
|
.asm_b92
|
|
ld a, b
|
|
ld [$ff6a], a
|
|
inc b
|
|
ld a, [$ff6b]
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [$ff6a], a
|
|
inc b
|
|
ld a, [$ff6b]
|
|
ld [hli], a
|
|
dec c
|
|
jr nz, .asm_b92
|
|
ld de, $ff68
|
|
ld b, $2
|
|
.asm_ba8
|
|
ld a, $80
|
|
ld [de], a
|
|
inc de
|
|
ld c, $20
|
|
.asm_bae
|
|
ld a, $ff
|
|
ld [de], a
|
|
ld [hli], a
|
|
ld a, $7f
|
|
ld [de], a
|
|
ld [hli], a
|
|
dec c
|
|
jr nz, .asm_bae
|
|
inc de
|
|
dec b
|
|
jr nz, .asm_ba8
|
|
ret
|
|
|
|
Func_bbe: ; 0xbbe
|
|
ld a, [$fffe]
|
|
and a
|
|
jp nz, Func_c19
|
|
ld hl, $ffa3
|
|
ld de, $d80c
|
|
ld b, $3
|
|
.asm_bcc
|
|
ld a, [de]
|
|
and $55
|
|
ld c, a
|
|
ld a, [de]
|
|
and $aa
|
|
srl a
|
|
and c
|
|
ld [hli], a
|
|
inc de
|
|
dec b
|
|
jr nz, .asm_bcc
|
|
ld bc, $0002
|
|
call Func_93f
|
|
ld hl, $ffa3
|
|
ld de, $d80c
|
|
ld b, $3
|
|
.asm_be9
|
|
ld a, [de]
|
|
and $aa
|
|
srl a
|
|
add [hl]
|
|
ld [hli], a
|
|
inc de
|
|
dec b
|
|
jr nz, .asm_be9
|
|
ld bc, $0002
|
|
call Func_93f
|
|
ld hl, $ffa3
|
|
ld de, $d80c
|
|
ld b, $3
|
|
.asm_c02
|
|
ld a, [de]
|
|
and $55
|
|
ld c, a
|
|
ld a, [de]
|
|
and $aa
|
|
srl a
|
|
or c
|
|
add [hl]
|
|
ld [hli], a
|
|
inc de
|
|
dec b
|
|
jr nz, .asm_c02
|
|
ld bc, $0002
|
|
call Func_93f
|
|
ret
|
|
|
|
Func_c19: ; 0xc19
|
|
ld b, $10
|
|
.asm_c1b
|
|
push bc
|
|
ld de, $d200
|
|
ld hl, $d280
|
|
call Func_c2d
|
|
call Func_d61
|
|
pop bc
|
|
dec b
|
|
jr nz, .asm_c1b
|
|
ret
|
|
|
|
Func_c2d: ; 0xc2d
|
|
ld a, b
|
|
cp $1
|
|
jr z, .asm_c49
|
|
ld c, $40
|
|
.asm_c34
|
|
push bc
|
|
ld a, [hli]
|
|
sub $42
|
|
ld c, a
|
|
ld a, [hld]
|
|
sbc $8
|
|
ld b, a
|
|
call Func_c60
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hli], a
|
|
pop bc
|
|
dec c
|
|
jr nz, .asm_c34
|
|
ret
|
|
.asm_c49
|
|
ld c, $40
|
|
.asm_c4b
|
|
push bc
|
|
ld a, [hli]
|
|
sub $21
|
|
ld c, a
|
|
ld a, [hld]
|
|
sbc $4
|
|
ld b, a
|
|
call Func_c60
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hli], a
|
|
pop bc
|
|
dec c
|
|
jr nz, .asm_c4b
|
|
ret
|
|
|
|
Func_c60: ; 0xc60
|
|
push hl
|
|
ld a, [de]
|
|
and $1f
|
|
ld l, a
|
|
ld a, c
|
|
and $1f
|
|
cp l
|
|
jr nc, .asm_c70
|
|
ld a, c
|
|
and $e0
|
|
or l
|
|
ld c, a
|
|
.asm_c70
|
|
ld a, [de]
|
|
and $e0
|
|
ld l, a
|
|
inc de
|
|
ld a, [de]
|
|
srl a
|
|
rr l
|
|
srl a
|
|
rr l
|
|
ld a, c
|
|
and $e0
|
|
ld h, a
|
|
ld a, b
|
|
srl a
|
|
rr h
|
|
srl a
|
|
rr h
|
|
ld a, h
|
|
cp l
|
|
jr nc, .asm_ca3
|
|
ld h, $0
|
|
sla l
|
|
rl h
|
|
sla l
|
|
rl h
|
|
ld a, c
|
|
and $1f
|
|
or l
|
|
ld c, a
|
|
ld a, b
|
|
and $7c
|
|
or h
|
|
ld b, a
|
|
.asm_ca3
|
|
ld a, [de]
|
|
and $7c
|
|
ld l, a
|
|
ld a, b
|
|
and $7c
|
|
cp l
|
|
jr nc, .asm_cb2
|
|
ld a, b
|
|
and $3
|
|
or l
|
|
ld b, a
|
|
.asm_cb2
|
|
inc de
|
|
pop hl
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$cb5,$cb5 - $cb5
|
|
|
|
Func_cb5: ; 0xcb5
|
|
ld a, [$fffe]
|
|
and a
|
|
jp nz, Func_cee
|
|
ld hl, $ffa3
|
|
ld b, $3
|
|
.asm_cc0
|
|
push bc
|
|
push hl
|
|
ld b, $3
|
|
.asm_cc4
|
|
ld a, [hl]
|
|
and $55
|
|
ld c, a
|
|
ld a, [hl]
|
|
and $aa
|
|
srl a
|
|
or c
|
|
cpl
|
|
inc a
|
|
add [hl]
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_cc4
|
|
ld bc, $0002
|
|
call Func_93f
|
|
pop hl
|
|
pop bc
|
|
dec b
|
|
jr nz, .asm_cc0
|
|
xor a
|
|
ld hl, $ffa3
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld bc, $0002
|
|
call Func_93f
|
|
ret
|
|
|
|
Func_cee: ; 0xcee
|
|
ld hl, $d280
|
|
ld de, $ff68
|
|
call Func_d9d
|
|
ld hl, $d2c0
|
|
ld de, $ff6a
|
|
call Func_d9d
|
|
ld b, $10
|
|
.asm_d02
|
|
push bc
|
|
ld hl, $d280
|
|
call Func_d11
|
|
call Func_d61
|
|
pop bc
|
|
dec b
|
|
jr nz, .asm_d02
|
|
ret
|
|
|
|
Func_d11: ; 0xd11
|
|
ld b, $40
|
|
.asm_d13
|
|
ld a, [hl]
|
|
and $1f
|
|
add $2
|
|
ld e, a
|
|
cp $1f
|
|
jr c, .asm_d1f
|
|
ld e, $1f
|
|
.asm_d1f
|
|
ld a, [hl]
|
|
and $e0
|
|
or e
|
|
ld [hl], a
|
|
ld a, [hli]
|
|
and $e0
|
|
ld e, [hl]
|
|
dec hl
|
|
srl e
|
|
rr a
|
|
srl e
|
|
rr a
|
|
add $10
|
|
ld e, a
|
|
jr nc, .asm_d38
|
|
ld e, $f8
|
|
.asm_d38
|
|
ld d, $0
|
|
sla e
|
|
rl d
|
|
sla e
|
|
rl d
|
|
ld a, [hl]
|
|
and $1f
|
|
or e
|
|
ld [hli], a
|
|
ld a, [hl]
|
|
and $7c
|
|
or d
|
|
ld [hl], a
|
|
ld a, [hl]
|
|
and $7c
|
|
add $8
|
|
ld e, a
|
|
cp $7c
|
|
jr c, .asm_d58
|
|
ld e, $7c
|
|
.asm_d58
|
|
ld a, [hl]
|
|
and $3
|
|
or e
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_d13
|
|
ret
|
|
|
|
Func_d61: ; 0d61
|
|
ld a, [$ffff]
|
|
res 0, a
|
|
ld [$ffff], a
|
|
ld hl, $d280
|
|
ld de, $ff68
|
|
ld a, $80
|
|
ld [de], a
|
|
inc de
|
|
.asm_d71
|
|
ld a, [$ff44]
|
|
cp $90
|
|
jr c, .asm_d71
|
|
ld b, $10
|
|
.asm_d79
|
|
ld a, [hli]
|
|
ld [de], a
|
|
ld a, [hli]
|
|
ld [de], a
|
|
ld a, [hli]
|
|
ld [de], a
|
|
ld a, [hli]
|
|
ld [de], a
|
|
dec b
|
|
jr nz, .asm_d79
|
|
inc de
|
|
ld a, $80
|
|
ld [de], a
|
|
inc de
|
|
ld b, $10
|
|
.asm_d8b
|
|
ld a, [hli]
|
|
ld [de], a
|
|
ld a, [hli]
|
|
ld [de], a
|
|
ld a, [hli]
|
|
ld [de], a
|
|
ld a, [hli]
|
|
ld [de], a
|
|
dec b
|
|
jr nz, .asm_d8b
|
|
ld a, [$ffff]
|
|
set 0, a
|
|
ld [$ffff], a
|
|
ret
|
|
|
|
Func_d9d: ; 0xd9d
|
|
ld b, $0
|
|
ld c, e
|
|
inc c
|
|
call WaitForLCD
|
|
.asm_da4
|
|
call Func_61b
|
|
.asm_da7
|
|
ld a, [$ff41]
|
|
and $3
|
|
jr nz, .asm_da7 ; wait for lcd controller to finish transferring data
|
|
ld a, b
|
|
ld [de], a
|
|
ld a, [$ff00+c]
|
|
ld [hli], a
|
|
inc b
|
|
ld a, b
|
|
ld [de], a
|
|
ld a, [$ff00+c]
|
|
ld [hli], a
|
|
inc b
|
|
ld a, b
|
|
ld [de], a
|
|
ld a, [$ff00+c]
|
|
ld [hli], a
|
|
inc b
|
|
ld a, b
|
|
ld [de], a
|
|
ld a, [$ff00+c]
|
|
ld [hli], a
|
|
inc b
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
ld a, b
|
|
cp $40
|
|
jr nz, .asm_da4
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$dd4,$f0c - $dd4
|
|
|
|
Func_f0c: ; 0xf0c
|
|
call Func_f34
|
|
ret nc
|
|
.asm_f10
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
dec bc
|
|
ld a, b
|
|
or c
|
|
jr nz, .asm_f10
|
|
scf
|
|
ret
|
|
|
|
Func_f1a: ; 0xf1a
|
|
push bc
|
|
push de
|
|
push hl
|
|
.asm_f1d
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
dec bc
|
|
ld a, b
|
|
or c
|
|
jr nz, .asm_f1d
|
|
pop hl
|
|
pop de
|
|
pop bc
|
|
ld h, d
|
|
ld l, e
|
|
call Func_f74
|
|
call Func_fa1
|
|
call Func_f4c
|
|
ret
|
|
|
|
Func_f34: ; 0xf34
|
|
call Func_f62
|
|
jr nc, .asm_f3f
|
|
call Func_f7e
|
|
jr nc, .asm_f3f
|
|
ret
|
|
.asm_f3f
|
|
add hl, bc
|
|
inc hl
|
|
inc hl
|
|
inc hl
|
|
inc hl
|
|
call Func_f62
|
|
ret nc
|
|
call Func_f7e
|
|
ret
|
|
|
|
Func_f4c: ; 0xf4c
|
|
push bc
|
|
push hl
|
|
push de
|
|
inc bc
|
|
inc bc
|
|
inc bc
|
|
inc bc
|
|
ld d, h
|
|
ld e, l
|
|
add hl, bc
|
|
.asm_f56
|
|
ld a, [de]
|
|
ld [hli], a
|
|
inc de
|
|
dec bc
|
|
ld a, b
|
|
or c
|
|
jr nz, .asm_f56
|
|
pop de
|
|
pop hl
|
|
pop bc
|
|
ret
|
|
|
|
Func_f62: ; 0xf62
|
|
push hl
|
|
add hl, bc
|
|
ld a, [hli]
|
|
cp $4e
|
|
jr nz, .asm_f71
|
|
ld a, [hl]
|
|
cp $54
|
|
jr nz, .asm_f71
|
|
scf
|
|
jr .asm_f72
|
|
.asm_f71
|
|
and a
|
|
.asm_f72
|
|
pop hl
|
|
ret
|
|
|
|
Func_f74: ; 0xf74
|
|
push hl
|
|
add hl, bc
|
|
ld a, $4e
|
|
ld [hli], a
|
|
ld a, $54
|
|
ld [hl], a
|
|
pop hl
|
|
ret
|
|
|
|
Func_f7e: ; 0xf7e
|
|
push bc
|
|
push de
|
|
push hl
|
|
inc bc
|
|
inc bc
|
|
ld de, $0000
|
|
.asm_f86
|
|
ld a, [hli]
|
|
add e
|
|
ld e, a
|
|
jr nc, .asm_f8c
|
|
inc d
|
|
.asm_f8c
|
|
dec bc
|
|
ld a, b
|
|
or c
|
|
jr nz, .asm_f86
|
|
ld a, [hli]
|
|
cp e
|
|
jr nz, .asm_f9c
|
|
ld a, [hl]
|
|
cp d
|
|
jr nz, .asm_f9c
|
|
scf
|
|
jr .asm_f9d
|
|
.asm_f9c
|
|
and a
|
|
.asm_f9d
|
|
pop hl
|
|
pop de
|
|
pop bc
|
|
ret
|
|
|
|
Func_fa1: ; 0xfa1
|
|
push bc
|
|
push de
|
|
push hl
|
|
inc bc
|
|
inc bc
|
|
ld de, $0000
|
|
.asm_fa9
|
|
ld a, [hli]
|
|
add e
|
|
ld e, a
|
|
jr nc, .asm_faf
|
|
inc d
|
|
.asm_faf
|
|
dec bc
|
|
ld a, b
|
|
or c
|
|
jr nz, .asm_fa9
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
pop hl
|
|
pop de
|
|
pop bc
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$fbc,$10aa - $fbc
|
|
|
|
Func_10aa: ; 0x10aa
|
|
ld c, a
|
|
ld a, [hli]
|
|
ld b, a
|
|
.asm_10ad
|
|
push bc
|
|
ld a, c
|
|
ld c, [hl]
|
|
inc hl
|
|
ld b, [hl]
|
|
inc hl
|
|
push af
|
|
ld a, [bc]
|
|
ld e, a
|
|
inc bc
|
|
ld a, [bc]
|
|
ld d, a
|
|
inc bc
|
|
pop af
|
|
push hl
|
|
call Func_10c5
|
|
pop hl
|
|
pop bc
|
|
dec b
|
|
jr nz, .asm_10ad
|
|
ret
|
|
|
|
Func_10c5: ; 0x10c5
|
|
push af
|
|
ld a, [$ff40]
|
|
bit 7, a
|
|
jr z, .asm_10d2
|
|
.asm_10cc
|
|
ld a, [$ff44]
|
|
cp $88
|
|
jr nc, .asm_10cc
|
|
.asm_10d2
|
|
pop af
|
|
ld hl, $d7fb
|
|
ld l, [hl]
|
|
ld h, $cb
|
|
inc bc
|
|
ld [hl], c
|
|
inc h
|
|
ld [hl], b
|
|
inc h
|
|
ld [hl], a
|
|
inc h
|
|
ld [hl], e
|
|
inc h
|
|
ld [hl], d
|
|
ld e, $ff
|
|
ld [$fffa], a
|
|
ld a, [$fff8]
|
|
push af
|
|
ld a, [$fffa]
|
|
ld [$fff8], a
|
|
ld [$2000], a
|
|
dec bc
|
|
ld a, [bc]
|
|
ld hl, $d7fa
|
|
add [hl]
|
|
cp $30
|
|
jr c, .asm_10fe
|
|
ld a, [bc]
|
|
ld e, $0
|
|
.asm_10fe
|
|
add $4
|
|
ld [hl], a
|
|
pop af
|
|
ld [$fff8], a
|
|
ld [$2000], a
|
|
ld hl, $d7fb
|
|
ld l, [hl]
|
|
ld h, $ca
|
|
inc l
|
|
ld [hl], $0
|
|
dec l
|
|
ld [hl], e
|
|
ld hl, $d7fb
|
|
inc [hl]
|
|
ld a, [$ff40]
|
|
bit 7, a
|
|
ret nz
|
|
ld a, [$ffff]
|
|
push af
|
|
res 0, a
|
|
ld [$ffff], a
|
|
call Func_113a
|
|
pop af
|
|
ld [$ffff], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$1129,$113a - $1129
|
|
|
|
Func_113a: ; 0x113a
|
|
ld hl, $d7fc
|
|
ld a, [$d7fb]
|
|
cp [hl]
|
|
ret z
|
|
ld l, [hl]
|
|
ld h, $ca
|
|
ld [hl], $ff
|
|
.asm_1147
|
|
ld a, [hl]
|
|
and a
|
|
jr z, .asm_116c
|
|
push hl
|
|
inc h
|
|
ld e, [hl]
|
|
inc h
|
|
ld d, [hl]
|
|
inc h
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, [hl]
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
inc h
|
|
ld a, [hl]
|
|
inc h
|
|
ld h, [hl]
|
|
ld l, a
|
|
call Func_117a
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
pop hl
|
|
inc l
|
|
jr .asm_1147
|
|
.asm_116c
|
|
ld a, l
|
|
ld [$d7fc], a
|
|
ld hl, $d7fb
|
|
cp [hl]
|
|
ret nz
|
|
xor a
|
|
ld [$d7fa], a
|
|
ret
|
|
|
|
Func_117a: ; 0x117a
|
|
jp [hl]
|
|
|
|
INCBIN "baserom.gbc",$117b,$12a1 - $117b
|
|
|
|
Func_12a1: ; 0x12a1
|
|
ld [$fffa], a
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, [$fffa]
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
ld a, [hl]
|
|
and $7
|
|
jr z, .asm_12e5
|
|
ld b, a
|
|
ld c, $0
|
|
.asm_12b5
|
|
push bc
|
|
ld a, $0
|
|
ld [$ff00+c], a
|
|
ld a, $30
|
|
ld [$ff00+c], a
|
|
ld b, $10
|
|
.asm_12be
|
|
ld e, $8
|
|
ld a, [hli]
|
|
ld d, a
|
|
.asm_12c2
|
|
bit 0, d
|
|
ld a, $10
|
|
jr nz, .asm_12ca
|
|
ld a, $20
|
|
.asm_12ca
|
|
ld [$ff00+c], a
|
|
ld a, $30
|
|
ld [$ff00+c], a
|
|
rr d
|
|
dec e
|
|
jr nz, .asm_12c2
|
|
dec b
|
|
jr nz, .asm_12be
|
|
ld a, $20
|
|
ld [$ff00+c], a
|
|
ld a, $30
|
|
ld [$ff00+c], a
|
|
pop bc
|
|
dec b
|
|
jr z, .asm_12e5
|
|
call Func_12ec
|
|
jr .asm_12b5
|
|
.asm_12e5
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
ret
|
|
|
|
Func_12ec ; 0x12ec
|
|
ld de, $1b58
|
|
.asm_12ef
|
|
nop
|
|
nop
|
|
nop
|
|
dec de
|
|
ld a, d
|
|
or e
|
|
jr nz, .asm_12ef
|
|
ret
|
|
|
|
Func_12f8: ; 0x12f8
|
|
ld a, $e
|
|
ld hl, $4010 ; todo
|
|
call Func_12a1
|
|
call Func_12ec
|
|
ld a, [$ff00]
|
|
and $3
|
|
cp $3
|
|
jr nz, .asm_1346
|
|
ld a, $20
|
|
ld [$ff00], a
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, $30
|
|
ld [$ff00], a
|
|
ld a, $10
|
|
ld [$ff00], a
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, $30
|
|
ld [$ff00], a
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
ld a, [$ff00]
|
|
and $3
|
|
cp $3
|
|
jr nz, .asm_1346
|
|
ld a, $e
|
|
ld hl, $4000
|
|
call Func_12a1
|
|
call Func_12ec
|
|
and a
|
|
ret
|
|
.asm_1346
|
|
ld a, $e
|
|
ld hl, $4000
|
|
call Func_12a1
|
|
call Func_12ec
|
|
scf
|
|
ret
|
|
|
|
Func_1353: ; 0x1353
|
|
ld [$fffa], a
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, [$fffa]
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
push af
|
|
push hl
|
|
ld a, $e4
|
|
ld [$ff47], a
|
|
ld de, $0010
|
|
add hl, de
|
|
ld de, vTiles1 ; tiles
|
|
call Func_65d
|
|
ld hl, vBGMap0 ; bgmap
|
|
ld de, $000c
|
|
ld a, $80
|
|
ld c, $d
|
|
.asm_1379
|
|
ld b, $14
|
|
.asm_137b
|
|
ld [hli], a
|
|
inc a
|
|
dec b
|
|
jr nz, .asm_137b
|
|
add hl, de
|
|
dec c
|
|
jr nz, .asm_1379
|
|
ld a, $81
|
|
ld [$ff40], a
|
|
ld bc, $0005
|
|
call Func_948
|
|
pop hl
|
|
pop af
|
|
call Func_12a1
|
|
ld bc, $0006
|
|
call Func_948
|
|
ld a, [$ffa3]
|
|
ld [$ff47], a
|
|
ld a, [$ff9e]
|
|
ld [$ff40], a
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
ret
|
|
|
|
Func_13a8: ; 0x13a8
|
|
ld a, [$fffb]
|
|
and a
|
|
ret z
|
|
ld bc, $0078
|
|
call Func_948
|
|
call Func_1489
|
|
ld a, $e
|
|
ld hl, $69e6
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld a, $e
|
|
ld hl, $69f6
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld a, $e
|
|
ld hl, $6a06
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld a, $e
|
|
ld hl, $6a16
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld a, $e
|
|
ld hl, $6a26
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld a, $e
|
|
ld hl, $6a36
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld a, $e
|
|
ld hl, $6a46
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld a, $e
|
|
ld hl, $6a56
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld bc, $1000
|
|
ld a, $e
|
|
ld hl, $4156 ; todo
|
|
call Func_1353
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld bc, $1000
|
|
ld a, $e
|
|
ld hl, $5166 ; todo
|
|
call Func_1353
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld bc, $0860
|
|
ld a, $e
|
|
ld hl, $6176 ; todo
|
|
call Func_1353
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld bc, $00a0
|
|
ld a, $e
|
|
ld hl, $40a6 ; todo
|
|
call Func_1353
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld bc, $005a
|
|
ld a, $e
|
|
ld hl, $4030
|
|
call Func_1353
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld a, $e
|
|
ld hl, $4020
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ret
|
|
|
|
Func_1489: ; 0x1489
|
|
ld a, [$fffb]
|
|
and a
|
|
ret z
|
|
ld a, [$fffc]
|
|
and a
|
|
ret nz
|
|
ld a, $e
|
|
ld hl, $6a66 ; todo
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
ld a, $ff
|
|
ld [$fffc], a
|
|
ret
|
|
|
|
Func_14a4: ; 0x14a4
|
|
ld a, [$fffb]
|
|
and a
|
|
ret z
|
|
ld bc, $0002
|
|
call Func_948
|
|
ld a, [$fffc]
|
|
and a
|
|
ret z
|
|
ld a, $e
|
|
ld hl, $6a76
|
|
call Func_12a1
|
|
ld bc, $0004
|
|
call Func_948
|
|
xor a
|
|
ld [$fffc], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$14c4,$167b - $14c4
|
|
|
|
Func_167b: ; 0x167b
|
|
ld a, [$d8ad]
|
|
cp $1
|
|
ret nz
|
|
ld a, [$d8c7]
|
|
cp $ff
|
|
ret z
|
|
ld a, [$d8db]
|
|
and a
|
|
ret nz
|
|
ld hl, $d8e0
|
|
inc [hl]
|
|
ld a, [hl]
|
|
cp $6
|
|
ret c
|
|
xor a
|
|
ld [hl], a
|
|
ld [$d8e2], a
|
|
call Func_18ac
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$169d,$16bf - $169d
|
|
|
|
Func_16bf: ; 0x16bf
|
|
xor a
|
|
ld [$d8af], a
|
|
ld [$d8b0], a
|
|
ld [$d8b1], a
|
|
ld [$d8b2], a
|
|
ld [$d8c6], a
|
|
ld [$d8c3], a
|
|
ld [$d8c4], a
|
|
ld [$d8b9], a
|
|
ld [$d8ba], a
|
|
ld [$d8dc], a
|
|
ld [$d8e2], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$16e2,$16fd - $16e2
|
|
|
|
Func_16fd: ; 0x16fd
|
|
ld a, [$d8c5]
|
|
cp $2
|
|
jr nz, .asm_173c
|
|
xor a
|
|
ld [$d8e0], a
|
|
ld [$d8ae], a
|
|
inc a
|
|
ld [$d8ad], a
|
|
ld a, [$d8c7]
|
|
cp $ff
|
|
jr z, .asm_1735
|
|
bit 0, a
|
|
jr nz, .asm_172e
|
|
bit 1, a
|
|
jr nz, .asm_172e
|
|
bit 4, a
|
|
jr z, .asm_173a
|
|
xor a
|
|
ld [$d8ad], a
|
|
ld [$d8ae], a
|
|
ld a, [$d8c7]
|
|
jr .asm_173a
|
|
.asm_172e
|
|
scf
|
|
ret
|
|
|
|
xor a
|
|
ld [$d8ae], a
|
|
dec a
|
|
.asm_1735
|
|
inc a
|
|
ld [$d8ad], a
|
|
dec a
|
|
.asm_173a
|
|
and a
|
|
ret
|
|
.asm_173c
|
|
xor a
|
|
ld a, $f0
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$1740,$18ac - $1740
|
|
|
|
Func_18ac: ; 0x18ac
|
|
ld a, [$d8ad]
|
|
cp $1
|
|
jr z, .asm_18be
|
|
cp $3
|
|
jr z, .asm_18be
|
|
and a
|
|
ld a, $ff
|
|
ret z
|
|
ld a, $f0
|
|
ret
|
|
.asm_18be
|
|
ld a, [$d8db]
|
|
and a
|
|
jr z, .asm_18c8
|
|
call Func_16fd
|
|
ret nc
|
|
.asm_18c8
|
|
ld a, [$d8c7]
|
|
cp $ff
|
|
ret z
|
|
call Func_19ca
|
|
jp Func_19e5
|
|
|
|
Func_18d4: ; 0x18d4
|
|
ld [$d8cb], a
|
|
ld a, d
|
|
ld [$d8cc], a
|
|
ld a, l
|
|
ld [$d8bb], a
|
|
ld [$d8bd], a
|
|
ld a, h
|
|
ld [$d8bc], a
|
|
ld [$d8be], a
|
|
ld a, c
|
|
ld [$d8b3], a
|
|
ld [$d8b5], a
|
|
ld a, b
|
|
ld [$d8b4], a
|
|
ld [$d8b6], a
|
|
xor a
|
|
ld [$d8c5], a
|
|
call Func_16bf
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$18ff,$191d - $18ff
|
|
|
|
Func_191d: ; 0x191d
|
|
rrca
|
|
nop
|
|
nop
|
|
nop
|
|
rrca
|
|
nop
|
|
nop
|
|
nop
|
|
ld a, $1
|
|
ld d, $0
|
|
ld hl, $1901
|
|
ld bc, $0008
|
|
jp Func_18d4
|
|
|
|
INCBIN "baserom.gbc",$1932,$19ca - $1932
|
|
|
|
Func_19ca: ; 0x19ca
|
|
ld a, $5
|
|
ld d, $0
|
|
ld hl, Func_191d
|
|
ld bc, $0008
|
|
jp Func_18d4
|
|
|
|
INCBIN "baserom.gbc",$19d7,$19e5 - $19d7
|
|
|
|
Func_19e5: ; 0x19e5
|
|
ld a, [$d8ad]
|
|
cp $1
|
|
jr z, .asm_19f8
|
|
and a
|
|
jr nz, .asm_19f6
|
|
ld a, [$d8cb]
|
|
cp $1
|
|
jr z, .asm_1a02
|
|
.asm_19f6
|
|
scf
|
|
ret
|
|
.asm_19f8
|
|
ld a, [$d8cb]
|
|
cp $1
|
|
jr z, .asm_19f6
|
|
ld [$d8ad], a
|
|
.asm_1a02
|
|
xor a
|
|
ld [$d8c5], a
|
|
ld [$d8ae], a
|
|
ld a, $1
|
|
ld [$d8b9], a
|
|
ld [$d8db], a
|
|
ld a, [$18ff]
|
|
ld [$ff01], a
|
|
ld a, $1
|
|
ld [$ff02], a
|
|
ld a, $81
|
|
ld [$ff02], a
|
|
ld a, $f0
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$1a21,$1f24 - $1a21
|
|
|
|
LoadOAMData: ; 0x1f24
|
|
; This function loads OAM data, but it adds b and c to the x and y values for some reason.
|
|
; input: a = OAM data id (see OAMDataPointers)
|
|
push bc
|
|
push de
|
|
push hl
|
|
ld e, a
|
|
ld d, $0
|
|
sla e
|
|
rl d ; multiply de by 2
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, Bank(OAMDataPointers)
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
ld hl, OAMDataPointers
|
|
add hl, de ; hl points to oam pointer in OAMDataPointers
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld a, [hl]
|
|
ld d, a ; de points to OAM data
|
|
ld a, [$d802]
|
|
ld l, a
|
|
ld h, (wOAMBuffer >> 8)
|
|
.loadOAMDataLoop
|
|
ld a, [de]
|
|
cp $80 ; OAM data list terminator
|
|
jr z, .doneReadingOAMData
|
|
add c
|
|
ld [hli], a
|
|
inc de
|
|
ld a, [de]
|
|
add b
|
|
ld [hli], a
|
|
inc de
|
|
ld a, [de]
|
|
ld [hli], a
|
|
inc de
|
|
ld a, [de]
|
|
ld [hli], a
|
|
inc de
|
|
jr .loadOAMDataLoop
|
|
.doneReadingOAMData
|
|
ld a, l
|
|
ld [$d802], a
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
pop hl
|
|
pop de
|
|
pop bc
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$1f68,$1ffc - $1f68
|
|
|
|
Func_1ffc: ; 0x1ffc
|
|
ld a, $b
|
|
ld [$d806], a
|
|
ld a, $4
|
|
ld [$d807], a
|
|
ld [$ff8a], a
|
|
ld a, $f
|
|
ld hl, $4000
|
|
call BankSwitch
|
|
ld a, $1
|
|
ld [$d85d], a
|
|
ld a, $37
|
|
ld [$d470], a
|
|
ld [$d471], a
|
|
ld [$d472], a
|
|
ld a, $1
|
|
ld [$d8f1], a
|
|
.asm_2025
|
|
call Func_2034
|
|
call Func_2043
|
|
call Func_926
|
|
call Func_b2e
|
|
rst $10
|
|
jr .asm_2025
|
|
|
|
Func_2034: ; 0x2034
|
|
ld a, [$d804]
|
|
and a
|
|
jr z, .asm_203f
|
|
dec a
|
|
ld [$d804], a
|
|
ret
|
|
.asm_203f
|
|
ld [$d803], a
|
|
ret
|
|
|
|
Func_2043: ; 0x2043
|
|
ld a, [$d8f1]
|
|
call Func_532
|
|
nop
|
|
ld b, b
|
|
ld [bc], a
|
|
nop
|
|
ld e, l
|
|
ld b, c
|
|
ld [bc], a
|
|
nop
|
|
ld e, $42
|
|
ld [bc], a
|
|
nop
|
|
nop
|
|
ld b, b
|
|
inc bc
|
|
nop
|
|
ld d, e
|
|
ld e, b
|
|
inc bc
|
|
nop
|
|
nop
|
|
ld b, b
|
|
ld a, [bc]
|
|
nop
|
|
ld c, d
|
|
ld b, e
|
|
inc bc
|
|
nop
|
|
ld a, a
|
|
ld c, d
|
|
inc bc
|
|
nop
|
|
db $d3
|
|
ld d, [hl]
|
|
inc bc
|
|
nop
|
|
ld a, [hLoadedROMBank]
|
|
push af
|
|
ld a, $2
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
call $4d17 ; todo
|
|
jr c, .asm_2084
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
and a
|
|
ret
|
|
.asm_2084
|
|
pop af
|
|
ld [hLoadedROMBank], a
|
|
ld [$2000], a
|
|
scf
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$208c,$30db - $208c
|
|
|
|
Func_30db: ; 0x30db
|
|
ld a, $86
|
|
ld [$ffa6], a
|
|
ld a, $1
|
|
ld [$d5ca], a
|
|
ld [$d5cb], a
|
|
ret
|
|
|
|
Func_30e8: ; 0x30e8
|
|
ld a, $81
|
|
ld hl, $c600
|
|
ld b, $40
|
|
.asm_30ef
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_30ef
|
|
xor a
|
|
ld [$d5cc], a
|
|
ld [$d5d4], a
|
|
ld [$d5dc], a
|
|
ld [$d5e4], a
|
|
ld [$d5e9], a
|
|
ld [$d5ee], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$310a,$32aa - $310a
|
|
|
|
Func_32aa: ; 0x32aa
|
|
ld a, $1
|
|
ld [hli], a
|
|
ld a, [de]
|
|
ld [hli], a
|
|
ld [hli], a
|
|
inc de
|
|
ld a, [de]
|
|
ld [hli], a
|
|
inc de
|
|
ld a, [de]
|
|
ld [hli], a
|
|
inc de
|
|
ld a, [de]
|
|
ld [hli], a
|
|
inc de
|
|
ld a, [de]
|
|
ld [hli], a
|
|
push af
|
|
inc de
|
|
ld a, [de]
|
|
ld [hli], a
|
|
inc de
|
|
pop af
|
|
ld l, a
|
|
ld h, $c5
|
|
.asm_32c5
|
|
ld a, [de]
|
|
ld [hli], a
|
|
inc de
|
|
and a
|
|
jr nz, .asm_32c5
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$32cc,$3579 - $32cc
|
|
|
|
Func_3579: ; 0x3579
|
|
ld hl, $d47a
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$3582,$4000 - $3582
|
|
|
|
|
|
SECTION "bank1", ROMX, BANK[$1]
|
|
|
|
OAMDataPointers: ; 0x4000
|
|
dw BallSpin0OAM
|
|
dw BallSpin1OAM
|
|
dw BallSpin2OAM
|
|
dw BallSpin3OAM
|
|
dw BallSpin4OAM
|
|
dw BallSpin5OAM
|
|
dw BallSpin6OAM
|
|
dw BallSpin7OAM
|
|
dw OAMData_8
|
|
dw OAMData_9
|
|
dw OAMData_a
|
|
dw OAMData_b
|
|
dw OAMData_c
|
|
dw OAMData_d
|
|
dw OAMData_e
|
|
dw OAMData_f
|
|
dw OAMData_10
|
|
dw OAMData_11
|
|
dw OAMData_12
|
|
dw OAMData_13
|
|
dw OAMData_14
|
|
dw OAMData_15
|
|
dw OAMData_16
|
|
dw OAMData_17
|
|
dw OAMData_18
|
|
dw OAMData_19
|
|
dw OAMData_1a
|
|
dw OAMData_1b
|
|
dw OAMData_1c
|
|
dw OAMData_1d
|
|
dw OAMData_1e
|
|
dw OAMData_1f
|
|
dw OAMData_20
|
|
dw OAMData_21
|
|
dw OAMData_22
|
|
dw OAMData_23
|
|
dw OAMData_24
|
|
dw OAMData_25
|
|
dw OAMData_26
|
|
dw OAMData_27
|
|
dw OAMData_28
|
|
dw OAMData_29
|
|
dw OAMData_2a
|
|
dw OAMData_2b
|
|
dw OAMData_2c
|
|
dw OAMData_2d
|
|
dw OAMData_2e
|
|
dw OAMData_2f
|
|
dw OAMData_30
|
|
dw OAMData_31
|
|
dw OAMData_32
|
|
dw OAMData_33
|
|
dw OAMData_34
|
|
dw OAMData_35
|
|
dw OAMData_36
|
|
dw OAMData_37
|
|
dw OAMData_38
|
|
dw OAMData_39
|
|
dw OAMData_3a
|
|
dw OAMData_3b
|
|
dw OAMData_3c
|
|
dw OAMData_3d
|
|
dw OAMData_3e
|
|
dw OAMData_3f
|
|
dw OAMData_40
|
|
dw OAMData_41
|
|
dw OAMData_42
|
|
dw OAMData_43
|
|
dw OAMData_44
|
|
dw OAMData_45
|
|
dw OAMData_46
|
|
dw OAMData_47
|
|
dw OAMData_48
|
|
dw OAMData_49
|
|
dw OAMData_4a
|
|
dw OAMData_4b
|
|
dw OAMData_4c
|
|
dw OAMData_4d
|
|
dw OAMData_4e
|
|
dw OAMData_4f
|
|
dw OAMData_50
|
|
dw OAMData_51
|
|
dw OAMData_52
|
|
dw OAMData_53
|
|
dw OAMData_54
|
|
dw OAMData_55
|
|
dw OAMData_56
|
|
dw OAMData_57
|
|
dw OAMData_58
|
|
dw OAMData_59
|
|
dw TitlescreenPikachuBlinkFrame1OAM
|
|
dw TitlescreenPikachuBlinkFrame2OAM
|
|
dw TitlescreenPikachuBlinkFrame3OAM
|
|
dw TitlescreenPokeball1OAM
|
|
dw TitlescreenPokeball2OAM
|
|
dw TitlescreenPokeball3OAM
|
|
dw TitlescreenPokeball4OAM
|
|
dw TitlescreenPokeball5OAM
|
|
dw OAMData_62
|
|
dw OAMData_63
|
|
dw OAMData_64
|
|
dw OAMData_65
|
|
dw OAMData_66
|
|
dw OAMData_67
|
|
dw OAMData_68
|
|
dw OAMData_69
|
|
dw OAMData_6a
|
|
dw OAMData_6b
|
|
dw OAMData_6c
|
|
dw OAMData_6d
|
|
dw OAMData_6e
|
|
dw OAMData_6f
|
|
dw OAMData_70
|
|
dw OAMData_71
|
|
dw OAMData_72
|
|
dw OAMData_73
|
|
dw OAMData_74
|
|
dw OAMData_75
|
|
dw OAMData_76
|
|
dw OAMData_77
|
|
dw OAMData_78
|
|
dw OAMData_79
|
|
dw OAMData_7a
|
|
dw OAMData_7b
|
|
dw OAMData_7c
|
|
dw OAMData_7d
|
|
dw OAMData_7e
|
|
dw OAMData_7f
|
|
dw OAMData_80
|
|
dw OAMData_81
|
|
dw OAMData_82
|
|
dw OAMData_83
|
|
dw OAMData_84
|
|
dw OAMData_85
|
|
dw OAMData_86
|
|
dw OAMData_87
|
|
dw OAMData_88
|
|
dw OAMData_89
|
|
dw OAMData_8a
|
|
dw OAMData_8b
|
|
dw OAMData_8c
|
|
dw OAMData_8d
|
|
dw OAMData_8e
|
|
dw OAMData_8f
|
|
dw OAMData_90
|
|
dw OAMData_91
|
|
dw OAMData_92
|
|
dw OAMData_93
|
|
dw OAMData_94
|
|
dw OAMData_95
|
|
dw OAMData_96
|
|
dw OAMData_97
|
|
dw OAMData_98
|
|
dw OAMData_99
|
|
dw OAMData_9a
|
|
dw OAMData_9b
|
|
dw OAMData_9c
|
|
dw OAMData_9d
|
|
dw FieldSelectRedStageBorderOAM
|
|
dw FieldSelectBlueStageBorderOAM
|
|
dw OAMData_a0
|
|
dw OAMData_a1
|
|
dw OAMData_a2
|
|
dw OAMData_a3
|
|
dw OAMData_a4
|
|
dw OAMData_a5
|
|
dw OAMData_a6
|
|
dw OAMData_a7
|
|
dw OAMData_a8
|
|
dw OAMData_a9
|
|
dw OAMData_aa
|
|
dw OAMData_ab
|
|
dw OAMData_ac
|
|
dw OAMData_ad
|
|
dw OAMData_ae
|
|
dw OAMData_af
|
|
dw OAMData_b0
|
|
dw Timer0DigitOAM
|
|
dw Timer1DigitOAM
|
|
dw Timer2DigitOAM
|
|
dw Timer3DigitOAM
|
|
dw Timer4DigitOAM
|
|
dw Timer5DigitOAM
|
|
dw Timer6DigitOAM
|
|
dw Timer7DigitOAM
|
|
dw Timer8DigitOAM
|
|
dw Timer9DigitOAM
|
|
dw TimerColonOAM
|
|
dw OAMData_bc
|
|
dw OAMData_bd
|
|
dw OAMData_be
|
|
dw OAMData_bf
|
|
dw OAMData_c0
|
|
dw OAMData_c1
|
|
dw OAMData_c2
|
|
dw OAMData_c3
|
|
dw OAMData_c4
|
|
dw OAMData_c5
|
|
dw OAMData_c6
|
|
dw OAMData_c7
|
|
dw OAMData_c8
|
|
dw OAMData_c9
|
|
dw OAMData_ca
|
|
dw OAMData_cb
|
|
dw OAMData_cc
|
|
dw OAMData_cd
|
|
dw OAMData_ce
|
|
dw OAMData_cf
|
|
dw OAMData_d0
|
|
dw OAMData_d1
|
|
dw OAMData_d2
|
|
dw OAMData_d3
|
|
dw OAMData_d4
|
|
dw OAMData_d5
|
|
dw OAMData_d6
|
|
dw OAMData_d7
|
|
dw OAMData_d8
|
|
dw OAMData_d9
|
|
dw OAMData_da
|
|
dw OAMData_db
|
|
dw OAMData_dc
|
|
dw OAMData_dd
|
|
dw OAMData_de
|
|
dw OAMData_df
|
|
dw OAMData_e0
|
|
dw OAMData_e1
|
|
dw OAMData_e2
|
|
dw OAMData_e3
|
|
dw OAMData_e4
|
|
dw OAMData_e5
|
|
dw OAMData_e6
|
|
dw OAMData_e7
|
|
dw OAMData_e8
|
|
dw OAMData_e9
|
|
dw OAMData_ea
|
|
dw OAMData_eb
|
|
dw OAMData_ec
|
|
dw OAMData_ed
|
|
dw OAMData_ee
|
|
dw OAMData_ef
|
|
dw OAMData_f0
|
|
dw OAMData_f1
|
|
dw OAMData_f2
|
|
dw OAMData_f3
|
|
dw OAMData_f4
|
|
dw OAMData_f5
|
|
dw OAMData_f6
|
|
dw OAMData_f7
|
|
dw OAMData_f8
|
|
|
|
BallSpin0OAM: ; 0x41f2
|
|
db $08, $08, $42, $00
|
|
db $08, $00, $40, $00
|
|
db $80 ; terminator
|
|
|
|
BallSpin1OAM: ; 0x41fb
|
|
db $08, $08, $46, $00
|
|
db $08, $00, $44, $00
|
|
db $80 ; terminator
|
|
|
|
BallSpin2OAM: ; 0x4204
|
|
db $08, $08, $4a, $00
|
|
db $08, $00, $48, $00
|
|
db $80 ; terminator
|
|
|
|
BallSpin3OAM: ; 0x420d
|
|
db $08, $08, $4e, $00
|
|
db $08, $00, $4c, $00
|
|
db $80 ; terminator
|
|
|
|
BallSpin4OAM: ; 0x4216
|
|
db $08, $08, $52, $00
|
|
db $08, $00, $50, $00
|
|
db $80 ; terminator
|
|
|
|
BallSpin5OAM: ; 0x421f
|
|
db $08, $08, $56, $00
|
|
db $08, $00, $54, $00
|
|
db $80 ; terminator
|
|
|
|
BallSpin6OAM: ; 0x4228
|
|
db $08, $08, $5a, $00
|
|
db $08, $00, $58, $00
|
|
db $80 ; terminator
|
|
|
|
BallSpin7OAM: ; 0x4231
|
|
db $08, $08, $5e, $00
|
|
db $08, $00, $5c, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_8: ; 0x423a
|
|
db $0c, $05, $64, $02
|
|
db $0a, $fd, $62, $02
|
|
db $14, $f5, $60, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_9: ; 0x4247
|
|
db $0c, $05, $6a, $02
|
|
db $04, $fd, $68, $02
|
|
db $0c, $f5, $66, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_a: ; 0x4254
|
|
db $0a, $05, $70, $02
|
|
db $03, $fd, $6e, $02
|
|
db $fd, $f5, $6c, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_b: ; 0x4261
|
|
db $0c, $03, $64, $22
|
|
db $0a, $0b, $62, $22
|
|
db $14, $13, $60, $22
|
|
db $80 ; terminator
|
|
|
|
OAMData_c: ; 0x426e
|
|
db $0c, $03, $6a, $22
|
|
db $04, $0b, $68, $22
|
|
db $0c, $13, $66, $22
|
|
db $80 ; terminator
|
|
|
|
OAMData_d: ; 0x427b
|
|
db $0a, $03, $70, $22
|
|
db $03, $0b, $6e, $22
|
|
db $fd, $13, $6c, $22
|
|
db $80 ; terminator
|
|
|
|
OAMData_e: ; 0x4288
|
|
db $00, $09, $74, $04
|
|
db $00, $01, $72, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_f: ; 0x4291
|
|
db $00, $01, $76, $04
|
|
db $00, $09, $78, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_10: ; 0x429a
|
|
db $00, $09, $7c, $04
|
|
db $00, $01, $7a, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_11: ; 0x42a3
|
|
db $f5, $01, $3d, $51
|
|
db $f1, $06, $3e, $31
|
|
db $00, $09, $7c, $04
|
|
db $00, $01, $7a, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_12: ; 0x42b4
|
|
db $f1, $07, $3c, $11
|
|
db $f1, $02, $3e, $11
|
|
db $00, $09, $7c, $04
|
|
db $00, $01, $7a, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_13: ; 0x42c5
|
|
db $e9, $06, $3e, $31
|
|
db $e9, $01, $3c, $31
|
|
db $f1, $00, $3e, $31
|
|
db $f1, $08, $3c, $31
|
|
db $00, $09, $7c, $04
|
|
db $00, $01, $7a, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_14: ; 0x42de
|
|
db $e8, $01, $3e, $11
|
|
db $e8, $06, $3c, $11
|
|
db $f3, $01, $3c, $31
|
|
db $f3, $05, $3e, $31
|
|
db $00, $09, $7c, $04
|
|
db $00, $01, $7a, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_15: ; 0x42f7
|
|
db $e5, $09, $3e, $11
|
|
db $f1, $07, $3c, $11
|
|
db $e9, $02, $3f, $51
|
|
db $f2, $01, $3c, $31
|
|
db $00, $09, $7c, $04
|
|
db $00, $01, $7a, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_16: ; 0x4310
|
|
db $e8, $01, $3d, $51
|
|
db $f5, $00, $3f, $71
|
|
db $f2, $06, $3e, $31
|
|
db $e6, $07, $3c, $11
|
|
db $00, $09, $7c, $04
|
|
db $00, $01, $7a, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_17: ; 0x4329
|
|
db $0c, $05, $64, $11
|
|
db $0a, $fd, $62, $11
|
|
db $14, $f5, $60, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_18: ; 0x4336
|
|
db $0c, $03, $64, $31
|
|
db $0a, $0b, $62, $31
|
|
db $14, $13, $60, $31
|
|
db $80 ; terminator
|
|
|
|
OAMData_19: ; 0x4343
|
|
db $00, $08, $a2, $02
|
|
db $00, $00, $a0, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_1a: ; 0x434c
|
|
db $00, $10, $9e, $02
|
|
db $00, $08, $9c, $02
|
|
db $00, $00, $9a, $02
|
|
db $00, $f8, $98, $02
|
|
db $f0, $10, $96, $02
|
|
db $f0, $08, $94, $02
|
|
db $f0, $00, $92, $02
|
|
db $f0, $f8, $90, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_1b: ; 0x436d
|
|
db $01, $0f, $a7, $62
|
|
db $ff, $f7, $7f, $62
|
|
db $e7, $07, $7e, $02
|
|
db $e7, $fb, $a6, $02
|
|
db $f3, $f4, $a5, $42
|
|
db $e7, $12, $a6, $22
|
|
db $fd, $fd, $a7, $42
|
|
db $ef, $fa, $a6, $02
|
|
db $ed, $0c, $a6, $22
|
|
db $ef, $13, $a4, $22
|
|
db $e6, $02, $a5, $42
|
|
db $02, $05, $a7, $62
|
|
db $fc, $0b, $a7, $62
|
|
db $f7, $f9, $a4, $02
|
|
db $fb, $10, $a5, $62
|
|
db $f5, $09, $42, $00
|
|
db $f5, $01, $40, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_1c: ; 0x43b2
|
|
db $02, $11, $7f, $42
|
|
db $e6, $f9, $7e, $22
|
|
db $e6, $0f, $7e, $02
|
|
db $f5, $f0, $a5, $42
|
|
db $05, $05, $a7, $62
|
|
db $f0, $09, $42, $00
|
|
db $f0, $01, $40, $00
|
|
db $f5, $17, $a5, $62
|
|
db $01, $f7, $7f, $62
|
|
db $80 ; terminator
|
|
|
|
OAMData_1d: ; 0x43d7
|
|
db $ee, $09, $42, $00
|
|
db $ee, $01, $40, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_1e: ; 0x43e0
|
|
db $ed, $09, $42, $00
|
|
db $ed, $01, $40, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_1f: ; 0x43e9
|
|
db $ee, $09, $42, $00
|
|
db $ee, $01, $40, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_20: ; 0x43f2
|
|
db $f0, $09, $42, $00
|
|
db $f0, $01, $40, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_21: ; 0x43fb
|
|
db $f5, $09, $42, $00
|
|
db $f5, $01, $40, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_22: ; 0x4404
|
|
db $fb, $09, $42, $00
|
|
db $fb, $01, $40, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_23: ; 0x440d
|
|
db $02, $09, $42, $00
|
|
db $02, $01, $40, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_24: ; 0x4416
|
|
db $01, $09, $42, $00
|
|
db $01, $01, $40, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_25: ; 0x441f
|
|
db $02, $0a, $3a, $00
|
|
db $02, $02, $38, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_26: ; 0x4428
|
|
db $fb, $0a, $9e, $15
|
|
db $fb, $02, $9c, $15
|
|
db $ff, $15, $9a, $13
|
|
db $ff, $0d, $98, $13
|
|
db $ff, $05, $96, $13
|
|
db $ff, $fd, $94, $13
|
|
db $ef, $08, $92, $13
|
|
db $ef, $00, $90, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_27: ; 0x4449
|
|
db $fc, $0a, $1c, $15
|
|
db $fc, $02, $1a, $15
|
|
db $fe, $15, $9a, $13
|
|
db $ff, $0d, $a8, $13
|
|
db $ff, $05, $a6, $13
|
|
db $ff, $fd, $a4, $13
|
|
db $ef, $08, $a2, $13
|
|
db $ef, $00, $a0, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_28: ; 0x446a
|
|
db $ff, $08, $2e, $15
|
|
db $ff, $00, $2c, $15
|
|
db $ff, $10, $2a, $13
|
|
db $ff, $08, $28, $13
|
|
db $ff, $00, $26, $13
|
|
db $ff, $f8, $24, $13
|
|
db $ef, $10, $22, $13
|
|
db $ef, $08, $20, $13
|
|
db $ef, $00, $1e, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_29: ; 0x448f
|
|
db $ef, $03, $92, $15
|
|
db $f3, $0b, $94, $15
|
|
db $f3, $fb, $90, $15
|
|
db $0d, $09, $9e, $13
|
|
db $fd, $09, $9c, $13
|
|
db $0d, $01, $9a, $13
|
|
db $fd, $01, $98, $13
|
|
db $00, $11, $a0, $13
|
|
db $00, $f9, $96, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_2a: ; 0x44b4
|
|
db $f0, $04, $a4, $15
|
|
db $f3, $0c, $a6, $15
|
|
db $f3, $fc, $a2, $15
|
|
db $00, $12, $1e, $13
|
|
db $00, $0a, $1c, $13
|
|
db $00, $02, $1a, $13
|
|
db $00, $fa, $a8, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_2b: ; 0x44d1
|
|
db $f8, $10, $26, $15
|
|
db $f3, $08, $24, $15
|
|
db $f3, $00, $22, $15
|
|
db $f8, $f8, $20, $15
|
|
db $00, $10, $2e, $13
|
|
db $00, $08, $2c, $13
|
|
db $00, $00, $2a, $13
|
|
db $00, $f8, $28, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_2c: ; 0x44f2
|
|
db $00, $10, $9e, $13
|
|
db $00, $08, $9c, $13
|
|
db $00, $00, $9a, $13
|
|
db $00, $f8, $98, $13
|
|
db $f0, $10, $96, $13
|
|
db $f0, $08, $94, $13
|
|
db $f0, $00, $92, $13
|
|
db $f0, $f8, $90, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_2d: ; 0x4513
|
|
db $00, $10, $1e, $13
|
|
db $00, $08, $1c, $13
|
|
db $00, $00, $1a, $13
|
|
db $00, $f8, $a8, $13
|
|
db $f0, $10, $a6, $13
|
|
db $f0, $08, $a4, $13
|
|
db $f0, $00, $a2, $13
|
|
db $f0, $f8, $a0, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_2e: ; 0x4534
|
|
db $00, $10, $2e, $13
|
|
db $00, $08, $2c, $13
|
|
db $00, $00, $2a, $13
|
|
db $00, $f8, $28, $13
|
|
db $f0, $10, $26, $13
|
|
db $f0, $08, $24, $13
|
|
db $f0, $00, $22, $13
|
|
db $f0, $f8, $20, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_2f: ; 0x4555
|
|
db $00, $10, $9e, $13
|
|
db $00, $08, $9c, $13
|
|
db $00, $00, $9a, $13
|
|
db $00, $f8, $98, $13
|
|
db $f0, $10, $96, $13
|
|
db $f0, $08, $94, $13
|
|
db $f0, $00, $92, $13
|
|
db $f0, $f8, $90, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_30: ; 0x4576
|
|
db $00, $10, $1e, $13
|
|
db $00, $08, $1c, $13
|
|
db $00, $00, $1a, $13
|
|
db $00, $f8, $a8, $13
|
|
db $f0, $10, $a6, $13
|
|
db $f0, $08, $a4, $13
|
|
db $f0, $00, $a2, $13
|
|
db $f0, $f8, $a0, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_31: ; 0x4597
|
|
db $01, $10, $2e, $13
|
|
db $01, $08, $2c, $13
|
|
db $01, $00, $2a, $13
|
|
db $01, $f8, $28, $13
|
|
db $f1, $10, $26, $13
|
|
db $f1, $08, $24, $13
|
|
db $f1, $00, $22, $13
|
|
db $f1, $f8, $20, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_32: ; 0x45b8
|
|
db $10, $08, $30, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_33: ; 0x45bd
|
|
db $10, $08, $30, $26
|
|
db $80 ; terminator
|
|
|
|
OAMData_34: ; 0x45c2
|
|
db $10, $08, $32, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_35: ; 0x45c7
|
|
db $10, $08, $32, $26
|
|
db $80 ; terminator
|
|
|
|
OAMData_36: ; 0x45cc
|
|
db $10, $08, $34, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_37: ; 0x45d1
|
|
db $10, $08, $34, $26
|
|
db $80 ; terminator
|
|
|
|
OAMData_38: ; 0x45d6
|
|
db $10, $08, $36, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_39: ; 0x45db
|
|
db $08, $08, $37, $46
|
|
db $80 ; terminator
|
|
|
|
OAMData_3a: ; 0x45e0
|
|
db $10, $08, $90, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_3b: ; 0x45e5
|
|
db $10, $08, $92, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_3c: ; 0x45ea
|
|
db $10, $08, $94, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_3d: ; 0x45ef
|
|
db $10, $08, $96, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_3e: ; 0x45f4
|
|
db $10, $08, $98, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_3f: ; 0x45f9
|
|
db $10, $08, $9a, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_40: ; 0x45fe
|
|
db $10, $08, $9c, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_41: ; 0x4603
|
|
db $10, $08, $20, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_42: ; 0x4608
|
|
db $10, $08, $22, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_43: ; 0x460d
|
|
db $10, $08, $24, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_44: ; 0x4612
|
|
db $10, $08, $26, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_45: ; 0x4617
|
|
db $10, $08, $28, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_46: ; 0x461c
|
|
db $10, $08, $2a, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_47: ; 0x4621
|
|
db $10, $08, $2c, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_48: ; 0x4626
|
|
db $10, $08, $60, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_49: ; 0x462b
|
|
db $10, $08, $62, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_4a: ; 0x4630
|
|
db $10, $08, $64, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_4b: ; 0x4635
|
|
db $10, $08, $66, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_4c: ; 0x463a
|
|
db $10, $08, $68, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_4d: ; 0x463f
|
|
db $10, $08, $6a, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_4e: ; 0x4644
|
|
db $10, $08, $6c, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_4f: ; 0x4649
|
|
db $1f, $19, $20, $37
|
|
db $1f, $21, $1e, $37
|
|
db $0f, $19, $1c, $37
|
|
db $0f, $21, $1a, $37
|
|
db $1f, $10, $20, $17
|
|
db $1f, $08, $1e, $17
|
|
db $0f, $10, $1c, $17
|
|
db $0f, $08, $1a, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_50: ; 0x466a
|
|
db $1f, $19, $28, $37
|
|
db $1f, $21, $26, $37
|
|
db $0f, $19, $24, $37
|
|
db $0f, $21, $22, $37
|
|
db $1f, $10, $28, $17
|
|
db $1f, $08, $26, $17
|
|
db $0f, $10, $24, $17
|
|
db $0f, $08, $22, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_51: ; 0x468b
|
|
db $1f, $19, $38, $37
|
|
db $1f, $10, $38, $17
|
|
db $1f, $21, $2e, $37
|
|
db $0f, $19, $2c, $37
|
|
db $0f, $21, $2a, $37
|
|
db $1f, $08, $2e, $17
|
|
db $0f, $10, $2c, $17
|
|
db $0f, $08, $2a, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_52: ; 0x46ac
|
|
db $08, $f8, $60, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_53: ; 0x46b1
|
|
db $08, $08, $60, $00
|
|
db $08, $00, $60, $00
|
|
db $08, $f8, $60, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_54: ; 0x46be
|
|
db $08, $20, $60, $00
|
|
db $08, $18, $60, $00
|
|
db $08, $10, $60, $00
|
|
db $08, $08, $60, $00
|
|
db $08, $00, $60, $00
|
|
db $08, $f8, $60, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_55: ; 0x46d7
|
|
db $10, $20, $60, $00
|
|
db $10, $18, $60, $00
|
|
db $10, $10, $60, $00
|
|
db $10, $08, $60, $00
|
|
db $10, $00, $60, $00
|
|
db $10, $f8, $60, $00
|
|
db $08, $20, $60, $00
|
|
db $08, $18, $60, $00
|
|
db $08, $10, $60, $00
|
|
db $08, $08, $60, $00
|
|
db $08, $00, $60, $00
|
|
db $08, $f8, $60, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_56: ; 0x4708
|
|
db $10, $20, $60, $40
|
|
db $10, $18, $60, $40
|
|
db $10, $10, $60, $40
|
|
db $10, $08, $60, $40
|
|
db $10, $00, $60, $40
|
|
db $18, $20, $60, $40
|
|
db $18, $18, $60, $40
|
|
db $18, $10, $60, $40
|
|
db $18, $08, $60, $40
|
|
db $18, $00, $60, $40
|
|
db $18, $f8, $60, $40
|
|
db $10, $f8, $60, $40
|
|
db $08, $f8, $60, $40
|
|
db $08, $20, $59, $00
|
|
db $08, $18, $58, $00
|
|
db $08, $10, $57, $00
|
|
db $08, $08, $56, $00
|
|
db $08, $00, $55, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_57: ; 0x4751
|
|
db $18, $20, $60, $40
|
|
db $18, $18, $60, $40
|
|
db $18, $10, $60, $40
|
|
db $18, $08, $60, $40
|
|
db $18, $00, $60, $40
|
|
db $18, $f8, $60, $40
|
|
db $10, $f8, $60, $40
|
|
db $08, $f8, $60, $40
|
|
db $10, $20, $5f, $00
|
|
db $10, $18, $5e, $00
|
|
db $10, $10, $5d, $00
|
|
db $10, $08, $5c, $00
|
|
db $10, $00, $5b, $00
|
|
db $08, $20, $59, $00
|
|
db $08, $18, $58, $00
|
|
db $08, $10, $57, $00
|
|
db $08, $08, $56, $00
|
|
db $08, $00, $55, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_58: ; 0x479a
|
|
db $18, $f8, $60, $40
|
|
db $10, $f8, $5a, $00
|
|
db $08, $f8, $54, $00
|
|
db $18, $20, $65, $00
|
|
db $18, $18, $64, $00
|
|
db $18, $10, $63, $00
|
|
db $18, $08, $62, $00
|
|
db $18, $00, $61, $00
|
|
db $10, $20, $5f, $00
|
|
db $10, $18, $5e, $00
|
|
db $10, $10, $5d, $00
|
|
db $10, $08, $5c, $00
|
|
db $10, $00, $5b, $00
|
|
db $08, $20, $59, $00
|
|
db $08, $18, $58, $00
|
|
db $08, $10, $57, $00
|
|
db $08, $08, $56, $00
|
|
db $08, $00, $55, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_59: ; 0x47e3
|
|
db $08, $f8, $60, $40
|
|
db $18, $f8, $67, $00
|
|
db $10, $f8, $66, $00
|
|
db $18, $20, $65, $00
|
|
db $18, $18, $64, $00
|
|
db $18, $10, $63, $00
|
|
db $18, $08, $62, $00
|
|
db $18, $00, $61, $00
|
|
db $10, $20, $5f, $00
|
|
db $10, $18, $5e, $00
|
|
db $10, $10, $5d, $00
|
|
db $10, $08, $5c, $00
|
|
db $10, $00, $5b, $00
|
|
db $08, $20, $59, $00
|
|
db $08, $18, $58, $00
|
|
db $08, $10, $57, $00
|
|
db $08, $08, $56, $00
|
|
db $08, $00, $55, $00
|
|
db $80 ; terminator
|
|
|
|
TitlescreenPikachuBlinkFrame1OAM: ; 0x482c
|
|
db $10, $28, $3f, $00
|
|
db $10, $20, $3e, $00
|
|
db $10, $18, $3d, $00
|
|
db $10, $10, $3c, $00
|
|
db $10, $08, $3b, $00
|
|
db $80 ; terminator
|
|
|
|
TitlescreenPikachuBlinkFrame2OAM: ; 0x4841
|
|
db $18, $09, $44, $00
|
|
db $10, $10, $41, $00
|
|
db $10, $08, $40, $00
|
|
db $80 ; terminator
|
|
|
|
TitlescreenPikachuBlinkFrame3OAM: ; 0x484e
|
|
db $18, $09, $45, $00
|
|
db $10, $10, $43, $00
|
|
db $10, $08, $42, $00
|
|
db $80 ; terminator
|
|
|
|
; These next 5 OAM entries are for the individual frames of the
|
|
; bouncing pokeball on the titlescreen.
|
|
TitlescreenPokeball1OAM: ; 0x485b
|
|
db $14, $00, $4c, $02
|
|
db $0c, $00, $46, $31
|
|
db $14, $f8, $47, $02
|
|
db $0c, $f8, $46, $11
|
|
db $80 ; terminator
|
|
|
|
TitlescreenPokeball2OAM: ; 0x486c
|
|
db $15, $00, $4d, $02
|
|
db $0d, $00, $48, $31
|
|
db $15, $f8, $49, $02
|
|
db $0d, $f8, $48, $11
|
|
db $80 ; terminator
|
|
|
|
TitlescreenPokeball3OAM: ; 0x487d
|
|
db $13, $00, $4c, $02
|
|
db $0b, $00, $46, $31
|
|
db $13, $f8, $47, $02
|
|
db $0b, $f8, $46, $11
|
|
db $80 ; terminator
|
|
|
|
TitlescreenPokeball4OAM: ; 0x488e
|
|
db $11, $00, $4e, $02
|
|
db $09, $00, $4a, $31
|
|
db $11, $f8, $4b, $02
|
|
db $09, $f8, $4a, $11
|
|
db $80 ; terminator
|
|
|
|
TitlescreenPokeball5OAM: ; 0x489f
|
|
db $11, $00, $4c, $02
|
|
db $09, $00, $46, $31
|
|
db $11, $f8, $47, $02
|
|
db $09, $f8, $46, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_62: ; 0x48b0
|
|
db $10, $20, $53, $11
|
|
db $10, $18, $52, $11
|
|
db $08, $20, $51, $11
|
|
db $18, $0c, $50, $11
|
|
db $10, $0c, $4f, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_63: ; 0x48c5
|
|
db $10, $08, $70, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_64: ; 0x48ca
|
|
db $10, $10, $71, $31
|
|
db $10, $08, $71, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_65: ; 0x48d3
|
|
db $10, $18, $74, $17
|
|
db $10, $10, $73, $00
|
|
db $10, $08, $72, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_66: ; 0x48e0
|
|
db $10, $18, $77, $17
|
|
db $10, $10, $76, $00
|
|
db $10, $08, $75, $17
|
|
db $80 ; terminator
|
|
|
|
OAMData_67: ; 0x48ed
|
|
db $10, $08, $78, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_68: ; 0x48f2
|
|
db $10, $08, $79, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_69: ; 0x48f7
|
|
db $10, $08, $79, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_6a: ; 0x48fc
|
|
db $12, $34, $7f, $11
|
|
db $12, $2c, $7e, $11
|
|
db $12, $24, $7d, $11
|
|
db $12, $1c, $7c, $11
|
|
db $12, $14, $7b, $11
|
|
db $12, $0c, $7a, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_6b: ; 0x4915
|
|
db $10, $08, $6f, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_6c: ; 0x491a
|
|
db $10, $08, $53, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_6d: ; 0x491f
|
|
db $10, $08, $54, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_6e: ; 0x4924
|
|
db $10, $08, $55, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_6f: ; 0x4929
|
|
db $10, $08, $56, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_70: ; 0x492e
|
|
db $10, $08, $57, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_71: ; 0x4933
|
|
db $10, $08, $58, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_72: ; 0x4938
|
|
db $10, $08, $59, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_73: ; 0x493d
|
|
db $10, $08, $5a, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_74: ; 0x4942
|
|
db $10, $08, $5b, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_75: ; 0x4947
|
|
db $10, $08, $5c, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_76: ; 0x494c
|
|
db $10, $08, $5e, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_77: ; 0x4951
|
|
db $11, $07, $34, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_78: ; 0x4956
|
|
db $0f, $07, $36, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_79: ; 0x495b
|
|
db $0f, $07, $38, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_7a: ; 0x4960
|
|
db $f4, $18, $26, $13
|
|
db $f4, $10, $24, $13
|
|
db $f4, $08, $22, $13
|
|
db $10, $00, $3a, $02
|
|
db $09, $10, $3e, $00
|
|
db $08, $08, $3c, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_7b: ; 0x4979
|
|
db $10, $28, $78, $00
|
|
db $10, $08, $5c, $02
|
|
db $10, $10, $5e, $02
|
|
db $10, $18, $60, $02
|
|
db $10, $20, $62, $02
|
|
db $20, $08, $64, $02
|
|
db $20, $10, $66, $02
|
|
db $20, $18, $68, $02
|
|
db $20, $20, $6a, $02
|
|
db $20, $28, $6c, $02
|
|
db $30, $08, $6e, $02
|
|
db $30, $10, $70, $02
|
|
db $30, $18, $72, $02
|
|
db $30, $20, $74, $02
|
|
db $30, $28, $76, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_7c: ; 0x49b6
|
|
db $11, $29, $7a, $02
|
|
db $11, $09, $40, $02
|
|
db $11, $11, $42, $02
|
|
db $11, $19, $44, $02
|
|
db $11, $21, $46, $02
|
|
db $21, $09, $48, $02
|
|
db $21, $11, $4a, $02
|
|
db $21, $19, $4c, $02
|
|
db $21, $21, $4e, $02
|
|
db $21, $29, $50, $02
|
|
db $31, $09, $52, $02
|
|
db $31, $11, $54, $02
|
|
db $31, $19, $56, $02
|
|
db $31, $21, $58, $02
|
|
db $31, $29, $5a, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_7d: ; 0x49f3
|
|
db $0c, $10, $2a, $04
|
|
db $0c, $08, $28, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_7e: ; 0x49fc
|
|
db $0d, $10, $2e, $04
|
|
db $0d, $08, $2c, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_7f: ; 0x4a05
|
|
db $0b, $10, $2a, $04
|
|
db $0b, $08, $28, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_80: ; 0x4a0e
|
|
db $09, $10, $32, $04
|
|
db $09, $08, $30, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_81: ; 0x4a17
|
|
db $09, $10, $2a, $04
|
|
db $09, $08, $28, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_82: ; 0x4a20
|
|
db $10, $08, $7c, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_83: ; 0x4a25
|
|
db $10, $08, $7c, $20
|
|
db $80 ; terminator
|
|
|
|
OAMData_84: ; 0x4a2a
|
|
db $10, $08, $7e, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_85: ; 0x4a2f
|
|
db $10, $08, $20, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_86: ; 0x4a34
|
|
db $18, $08, $7f, $00
|
|
db $10, $08, $7e, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_87: ; 0x4a3d
|
|
db $20, $25, $15, $02
|
|
db $18, $25, $0f, $02
|
|
db $10, $25, $0a, $02
|
|
db $18, $1d, $0e, $02
|
|
db $18, $15, $0d, $02
|
|
db $18, $0d, $0c, $02
|
|
db $18, $05, $0b, $02
|
|
db $10, $1d, $09, $02
|
|
db $10, $15, $08, $02
|
|
db $10, $0d, $07, $02
|
|
db $10, $05, $06, $02
|
|
db $20, $1d, $14, $02
|
|
db $20, $15, $13, $02
|
|
db $20, $0d, $12, $02
|
|
db $20, $05, $11, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_88: ; 0x4a7a
|
|
db $20, $f5, $10, $02
|
|
db $18, $f5, $02, $02
|
|
db $10, $f5, $01, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_89: ; 0x4a87
|
|
db $10, $f5, $10, $42
|
|
db $18, $f5, $02, $42
|
|
db $20, $f5, $01, $42
|
|
db $80 ; terminator
|
|
|
|
OAMData_8a: ; 0x4a94
|
|
db $20, $fd, $00, $02
|
|
db $18, $fd, $00, $02
|
|
db $10, $fd, $00, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_8b: ; 0x4aa1
|
|
db $20, $fd, $00, $02
|
|
db $18, $fd, $04, $02
|
|
db $10, $fd, $03, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_8c: ; 0x4aae
|
|
db $10, $fd, $00, $02
|
|
db $18, $fd, $04, $42
|
|
db $20, $fd, $03, $42
|
|
db $80 ; terminator
|
|
|
|
OAMData_8d: ; 0x4abb
|
|
db $18, $fd, $05, $02
|
|
db $20, $fd, $03, $42
|
|
db $10, $fd, $03, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_8e: ; 0x4ac8
|
|
db $0e, $2f, $1f, $02
|
|
db $0e, $27, $1e, $02
|
|
db $16, $2f, $29, $02
|
|
db $16, $27, $28, $02
|
|
db $16, $1f, $27, $02
|
|
db $16, $17, $26, $02
|
|
db $16, $0f, $25, $02
|
|
db $16, $07, $24, $02
|
|
db $16, $ff, $23, $02
|
|
db $16, $f7, $22, $02
|
|
db $16, $ef, $21, $02
|
|
db $16, $e7, $20, $02
|
|
db $0e, $1f, $1d, $02
|
|
db $0e, $17, $1c, $02
|
|
db $0e, $0f, $1b, $02
|
|
db $0e, $07, $1a, $02
|
|
db $0e, $ff, $19, $02
|
|
db $0e, $f7, $18, $02
|
|
db $0e, $ef, $17, $02
|
|
db $0e, $e7, $16, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_8f: ; 0x4b19
|
|
db $0e, $2f, $1f, $02
|
|
db $0e, $27, $1e, $02
|
|
db $16, $2f, $3b, $02
|
|
db $16, $27, $3a, $02
|
|
db $16, $1f, $39, $02
|
|
db $16, $17, $38, $02
|
|
db $16, $0f, $37, $02
|
|
db $16, $07, $36, $02
|
|
db $16, $ff, $35, $02
|
|
db $16, $f7, $34, $02
|
|
db $16, $ef, $33, $02
|
|
db $16, $e7, $32, $02
|
|
db $0e, $1f, $31, $02
|
|
db $0e, $17, $30, $02
|
|
db $0e, $0f, $2f, $02
|
|
db $0e, $07, $2e, $02
|
|
db $0e, $ff, $2d, $02
|
|
db $0e, $f7, $2c, $02
|
|
db $0e, $ef, $2b, $02
|
|
db $0e, $e7, $2a, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_90: ; 0x4b6a
|
|
db $1d, $14, $48, $02
|
|
db $1d, $0c, $47, $02
|
|
db $15, $1c, $45, $02
|
|
db $15, $14, $44, $02
|
|
db $15, $0c, $43, $02
|
|
db $15, $04, $42, $02
|
|
db $15, $fc, $41, $02
|
|
db $1d, $1c, $00, $02
|
|
db $1d, $fc, $00, $02
|
|
db $25, $1c, $4c, $22
|
|
db $25, $14, $4e, $02
|
|
db $25, $0c, $4e, $02
|
|
db $25, $04, $4d, $02
|
|
db $25, $fc, $4c, $02
|
|
db $1d, $04, $46, $02
|
|
db $0d, $1c, $40, $02
|
|
db $0d, $14, $3f, $02
|
|
db $0d, $0c, $3e, $02
|
|
db $0d, $04, $3d, $02
|
|
db $0d, $fc, $3c, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_91: ; 0x4bbb
|
|
db $1d, $14, $49, $02
|
|
db $1d, $0c, $47, $02
|
|
db $15, $1c, $45, $02
|
|
db $15, $14, $44, $02
|
|
db $15, $0c, $43, $02
|
|
db $15, $04, $42, $02
|
|
db $15, $fc, $41, $02
|
|
db $1d, $1c, $00, $02
|
|
db $1d, $fc, $00, $02
|
|
db $25, $1c, $4c, $22
|
|
db $25, $14, $4e, $02
|
|
db $25, $0c, $4e, $02
|
|
db $25, $04, $4d, $02
|
|
db $25, $fc, $4c, $02
|
|
db $1d, $04, $46, $02
|
|
db $0d, $1c, $40, $02
|
|
db $0d, $14, $3f, $02
|
|
db $0d, $0c, $3e, $02
|
|
db $0d, $04, $3d, $02
|
|
db $0d, $fc, $3c, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_92: ; 0x4c0c
|
|
db $1d, $14, $4a, $02
|
|
db $1d, $0c, $47, $02
|
|
db $15, $1c, $45, $02
|
|
db $15, $14, $44, $02
|
|
db $15, $0c, $43, $02
|
|
db $15, $04, $42, $02
|
|
db $15, $fc, $41, $02
|
|
db $1d, $1c, $00, $02
|
|
db $1d, $fc, $00, $02
|
|
db $25, $1c, $4c, $22
|
|
db $25, $14, $4e, $02
|
|
db $25, $0c, $4e, $02
|
|
db $25, $04, $4d, $02
|
|
db $25, $fc, $4c, $02
|
|
db $1d, $04, $46, $02
|
|
db $0d, $1c, $40, $02
|
|
db $0d, $14, $3f, $02
|
|
db $0d, $0c, $3e, $02
|
|
db $0d, $04, $3d, $02
|
|
db $0d, $fc, $3c, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_93: ; 0x4c5d
|
|
db $1d, $14, $4b, $02
|
|
db $1d, $0c, $47, $02
|
|
db $15, $1c, $45, $02
|
|
db $15, $14, $44, $02
|
|
db $15, $0c, $43, $02
|
|
db $15, $04, $42, $02
|
|
db $15, $fc, $41, $02
|
|
db $1d, $1c, $00, $02
|
|
db $1d, $fc, $00, $02
|
|
db $25, $1c, $4c, $22
|
|
db $25, $14, $4e, $02
|
|
db $25, $0c, $4e, $02
|
|
db $25, $04, $4d, $02
|
|
db $25, $fc, $4c, $02
|
|
db $1d, $04, $46, $02
|
|
db $0d, $1c, $40, $02
|
|
db $0d, $14, $3f, $02
|
|
db $0d, $0c, $3e, $02
|
|
db $0d, $04, $3d, $02
|
|
db $0d, $fc, $3c, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_94: ; 0x4cae
|
|
db $28, $eb, $10, $02
|
|
db $20, $2b, $00, $02
|
|
db $20, $eb, $00, $02
|
|
db $28, $33, $58, $42
|
|
db $20, $33, $62, $02
|
|
db $18, $33, $62, $02
|
|
db $18, $2b, $61, $02
|
|
db $10, $33, $58, $02
|
|
db $10, $2b, $57, $02
|
|
db $20, $23, $69, $02
|
|
db $20, $1b, $68, $02
|
|
db $20, $13, $67, $02
|
|
db $20, $0b, $66, $02
|
|
db $20, $03, $65, $02
|
|
db $20, $fb, $64, $02
|
|
db $20, $f3, $63, $02
|
|
db $18, $23, $60, $02
|
|
db $18, $1b, $5f, $02
|
|
db $18, $13, $5e, $02
|
|
db $18, $0b, $5d, $02
|
|
db $18, $03, $5c, $02
|
|
db $18, $fb, $5b, $02
|
|
db $18, $f3, $5a, $02
|
|
db $18, $eb, $59, $02
|
|
db $10, $23, $56, $02
|
|
db $10, $1b, $55, $02
|
|
db $10, $13, $54, $02
|
|
db $10, $0b, $53, $02
|
|
db $10, $03, $52, $02
|
|
db $10, $fb, $51, $02
|
|
db $10, $f3, $50, $02
|
|
db $10, $eb, $4f, $02
|
|
db $28, $2b, $71, $02
|
|
db $28, $23, $70, $02
|
|
db $28, $1b, $6f, $02
|
|
db $28, $13, $6e, $02
|
|
db $28, $0b, $6d, $02
|
|
db $28, $03, $6c, $02
|
|
db $28, $fb, $6b, $02
|
|
db $28, $f3, $6a, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_95: ; 0x4d4f
|
|
db $18, $18, $7d, $11
|
|
db $18, $10, $7c, $11
|
|
db $18, $08, $7b, $11
|
|
db $10, $10, $7a, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_96: ; 0x4d60
|
|
db $18, $08, $7d, $31
|
|
db $18, $10, $7c, $31
|
|
db $18, $18, $7b, $31
|
|
db $10, $10, $7a, $31
|
|
db $80 ; terminator
|
|
|
|
OAMData_97: ; 0x4d71
|
|
db $16, $30, $8b, $02
|
|
db $16, $28, $8a, $02
|
|
db $16, $20, $89, $02
|
|
db $16, $18, $88, $02
|
|
db $16, $10, $87, $02
|
|
db $16, $08, $86, $02
|
|
db $16, $00, $85, $02
|
|
db $16, $f8, $84, $02
|
|
db $16, $f0, $83, $02
|
|
db $16, $e8, $82, $02
|
|
db $0e, $30, $81, $02
|
|
db $0e, $28, $80, $02
|
|
db $0e, $20, $79, $02
|
|
db $0e, $18, $78, $02
|
|
db $0e, $10, $77, $02
|
|
db $0e, $08, $76, $02
|
|
db $0e, $00, $75, $02
|
|
db $0e, $f8, $74, $02
|
|
db $0e, $f0, $73, $02
|
|
db $0e, $e8, $72, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_98: ; 0x4dc2
|
|
db $18, $10, $8f, $04
|
|
db $18, $08, $8e, $04
|
|
db $10, $10, $8d, $04
|
|
db $10, $08, $8c, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_99: ; 0x4dd3
|
|
db $18, $10, $91, $04
|
|
db $18, $08, $90, $04
|
|
db $10, $10, $8d, $04
|
|
db $10, $08, $8c, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_9a: ; 0x4de4
|
|
db $18, $10, $93, $04
|
|
db $18, $08, $92, $04
|
|
db $10, $10, $8d, $04
|
|
db $10, $08, $8c, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_9b: ; 0x4df5
|
|
db $10, $10, $95, $04
|
|
db $10, $08, $94, $04
|
|
db $18, $10, $93, $04
|
|
db $18, $08, $92, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_9c: ; 0x4e06
|
|
db $18, $10, $97, $04
|
|
db $18, $08, $96, $04
|
|
db $10, $10, $95, $04
|
|
db $10, $08, $94, $04
|
|
db $80 ; terminator
|
|
|
|
OAMData_9d: ; 0x4e17
|
|
db $18, $10, $8f, $04
|
|
db $18, $08, $8e, $04
|
|
db $10, $10, $95, $04
|
|
db $10, $08, $94, $04
|
|
db $80 ; terminator
|
|
|
|
FieldSelectRedStageBorderOAM: ; 0x4e28
|
|
db $36, $1c, $71, $40
|
|
db $26, $24, $72, $60
|
|
db $2e, $24, $72, $60
|
|
db $36, $24, $70, $60
|
|
db $36, $17, $71, $40
|
|
db $36, $0f, $71, $40
|
|
db $36, $07, $71, $40
|
|
db $36, $ff, $71, $40
|
|
db $36, $f7, $71, $40
|
|
db $26, $e8, $72, $40
|
|
db $2e, $e8, $72, $40
|
|
db $36, $f0, $71, $40
|
|
db $36, $e8, $70, $40
|
|
db $22, $e8, $72, $40
|
|
db $22, $24, $72, $60
|
|
db $12, $24, $72, $60
|
|
db $1a, $24, $72, $60
|
|
db $0a, $24, $72, $20
|
|
db $12, $e8, $72, $40
|
|
db $1a, $e8, $72, $40
|
|
db $0a, $e8, $72, $00
|
|
db $e2, $1c, $71, $00
|
|
db $02, $e8, $72, $00
|
|
db $02, $24, $72, $20
|
|
db $fa, $24, $72, $20
|
|
db $f2, $24, $72, $20
|
|
db $ea, $24, $72, $20
|
|
db $e2, $17, $71, $00
|
|
db $e2, $0f, $71, $00
|
|
db $e2, $07, $71, $00
|
|
db $e2, $24, $70, $20
|
|
db $e2, $ff, $71, $00
|
|
db $e2, $f7, $71, $00
|
|
db $fa, $e8, $72, $00
|
|
db $f2, $e8, $72, $00
|
|
db $ea, $e8, $72, $00
|
|
db $e2, $f0, $71, $00
|
|
db $e2, $e8, $70, $00
|
|
db $80 ; terminator
|
|
|
|
FieldSelectBlueStageBorderOAM: ; 0x4ec1
|
|
db $36, $1c, $74, $40
|
|
db $26, $24, $75, $60
|
|
db $2e, $24, $75, $60
|
|
db $36, $24, $73, $60
|
|
db $36, $17, $74, $40
|
|
db $36, $0f, $74, $40
|
|
db $36, $07, $74, $40
|
|
db $36, $ff, $74, $40
|
|
db $36, $f7, $74, $40
|
|
db $26, $e8, $75, $40
|
|
db $2e, $e8, $75, $40
|
|
db $36, $f0, $74, $40
|
|
db $36, $e8, $73, $40
|
|
db $22, $e8, $75, $40
|
|
db $22, $24, $75, $60
|
|
db $12, $24, $75, $60
|
|
db $1a, $24, $75, $60
|
|
db $0a, $24, $75, $20
|
|
db $12, $e8, $75, $40
|
|
db $1a, $e8, $75, $40
|
|
db $0a, $e8, $75, $00
|
|
db $e2, $1c, $74, $00
|
|
db $02, $e8, $75, $00
|
|
db $02, $24, $75, $20
|
|
db $fa, $24, $75, $20
|
|
db $f2, $24, $75, $20
|
|
db $ea, $24, $75, $20
|
|
db $e2, $17, $74, $00
|
|
db $e2, $0f, $74, $00
|
|
db $e2, $07, $74, $00
|
|
db $e2, $24, $73, $20
|
|
db $e2, $ff, $74, $00
|
|
db $e2, $f7, $74, $00
|
|
db $fa, $e8, $75, $00
|
|
db $f2, $e8, $75, $00
|
|
db $ea, $e8, $75, $00
|
|
db $e2, $f0, $74, $00
|
|
db $e2, $e8, $73, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_a0: ; 0x4f5a
|
|
db $36, $1c, $77, $40
|
|
db $26, $24, $78, $60
|
|
db $2e, $24, $78, $60
|
|
db $36, $24, $76, $60
|
|
db $36, $17, $77, $40
|
|
db $36, $0f, $77, $40
|
|
db $36, $07, $77, $40
|
|
db $36, $ff, $77, $40
|
|
db $36, $f7, $77, $40
|
|
db $26, $e8, $78, $40
|
|
db $2e, $e8, $78, $40
|
|
db $36, $f0, $77, $40
|
|
db $36, $e8, $76, $40
|
|
db $22, $e8, $78, $40
|
|
db $22, $24, $78, $60
|
|
db $12, $24, $78, $60
|
|
db $1a, $24, $78, $60
|
|
db $0a, $24, $78, $20
|
|
db $12, $e8, $78, $40
|
|
db $1a, $e8, $78, $40
|
|
db $0a, $e8, $78, $00
|
|
db $e2, $1c, $77, $00
|
|
db $02, $e8, $78, $00
|
|
db $02, $24, $78, $20
|
|
db $fa, $24, $78, $20
|
|
db $f2, $24, $78, $20
|
|
db $ea, $24, $78, $20
|
|
db $e2, $17, $77, $00
|
|
db $e2, $0f, $77, $00
|
|
db $e2, $07, $77, $00
|
|
db $e2, $24, $76, $20
|
|
db $e2, $ff, $77, $00
|
|
db $e2, $f7, $77, $00
|
|
db $fa, $e8, $78, $00
|
|
db $f2, $e8, $78, $00
|
|
db $ea, $e8, $78, $00
|
|
db $e2, $f0, $77, $00
|
|
db $e2, $e8, $76, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_a1: ; 0x4ff3
|
|
db $10, $08, $7c, $08
|
|
db $80 ; terminator
|
|
|
|
OAMData_a2: ; 0x4ff8
|
|
db $08, $08, $7d, $48
|
|
db $80 ; terminator
|
|
|
|
OAMData_a3: ; 0x4ffd
|
|
db $10, $08, $7e, $08
|
|
db $80 ; terminator
|
|
|
|
OAMData_a4: ; 0x5002
|
|
db $10, $08, $7e, $28
|
|
db $80 ; terminator
|
|
|
|
OAMData_a5: ; 0x5007
|
|
db $03, $0a, $0f, $1d
|
|
db $fb, $0a, $0e, $1d
|
|
db $03, $02, $0d, $1d
|
|
db $fb, $02, $0c, $1d
|
|
db $07, $15, $0b, $1b
|
|
db $ff, $15, $0a, $1b
|
|
db $07, $0d, $09, $1b
|
|
db $ff, $0d, $08, $1b
|
|
db $07, $05, $07, $1b
|
|
db $ff, $05, $06, $1b
|
|
db $07, $fd, $05, $1b
|
|
db $ff, $fd, $04, $1b
|
|
db $f7, $08, $03, $1b
|
|
db $ef, $08, $02, $1b
|
|
db $f7, $00, $01, $1b
|
|
db $ef, $00, $00, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_a6: ; 0x5048
|
|
db $04, $0a, $1d, $1d
|
|
db $fc, $0a, $1c, $1d
|
|
db $04, $02, $1b, $1d
|
|
db $fc, $02, $1a, $1d
|
|
db $06, $15, $0b, $1b
|
|
db $fe, $15, $0a, $1b
|
|
db $07, $0d, $19, $1b
|
|
db $ff, $0d, $18, $1b
|
|
db $07, $05, $17, $1b
|
|
db $ff, $05, $16, $1b
|
|
db $07, $fd, $15, $1b
|
|
db $ff, $fd, $14, $1b
|
|
db $f7, $08, $13, $1b
|
|
db $ef, $08, $12, $1b
|
|
db $f7, $00, $11, $1b
|
|
db $ef, $00, $10, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_a7: ; 0x5089
|
|
db $07, $08, $2f, $1d
|
|
db $ff, $08, $2e, $1d
|
|
db $07, $00, $2d, $1d
|
|
db $ff, $00, $2c, $1d
|
|
db $07, $10, $2b, $1b
|
|
db $ff, $10, $2a, $1b
|
|
db $07, $08, $29, $1b
|
|
db $ff, $08, $28, $1b
|
|
db $07, $00, $27, $1b
|
|
db $ff, $00, $26, $1b
|
|
db $07, $f8, $25, $1b
|
|
db $ff, $f8, $24, $1b
|
|
db $f7, $10, $23, $1b
|
|
db $ef, $10, $22, $1b
|
|
db $f7, $08, $21, $1b
|
|
db $ef, $08, $20, $1b
|
|
db $f7, $00, $1f, $1b
|
|
db $ef, $00, $1e, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_a8: ; 0x50d2
|
|
db $15, $01, $0b, $0a
|
|
db $ef, $03, $02, $1d
|
|
db $f7, $03, $03, $1d
|
|
db $fb, $0b, $05, $1d
|
|
db $f3, $0b, $04, $1d
|
|
db $fb, $fb, $01, $1d
|
|
db $f3, $fb, $00, $1d
|
|
db $0d, $09, $0e, $1b
|
|
db $05, $09, $0d, $1b
|
|
db $fd, $09, $0c, $1b
|
|
db $0d, $01, $0a, $1b
|
|
db $05, $01, $09, $1b
|
|
db $fd, $01, $08, $1b
|
|
db $08, $11, $11, $1b
|
|
db $00, $11, $10, $1b
|
|
db $08, $f9, $07, $1b
|
|
db $00, $f9, $06, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_a9: ; 0x5117
|
|
db $f8, $04, $15, $1d
|
|
db $f0, $04, $14, $1d
|
|
db $fb, $0c, $17, $1d
|
|
db $f3, $0c, $16, $1d
|
|
db $fb, $fc, $13, $1d
|
|
db $f3, $fc, $12, $1d
|
|
db $08, $12, $1f, $1b
|
|
db $00, $12, $1e, $1b
|
|
db $08, $0a, $1d, $1b
|
|
db $00, $0a, $1c, $1b
|
|
db $08, $02, $1b, $1b
|
|
db $00, $02, $1a, $1b
|
|
db $08, $fa, $19, $1b
|
|
db $00, $fa, $18, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_aa: ; 0x5150
|
|
db $00, $10, $27, $1d
|
|
db $f8, $10, $26, $1d
|
|
db $fb, $08, $25, $1d
|
|
db $f3, $08, $24, $1d
|
|
db $fb, $00, $23, $1d
|
|
db $f3, $00, $22, $1d
|
|
db $00, $f8, $21, $1d
|
|
db $f8, $f8, $20, $1d
|
|
db $08, $10, $2f, $1b
|
|
db $00, $10, $2e, $1b
|
|
db $08, $08, $2d, $1b
|
|
db $00, $08, $2c, $1b
|
|
db $08, $00, $2b, $1b
|
|
db $00, $00, $2a, $1b
|
|
db $08, $f8, $29, $1b
|
|
db $00, $f8, $28, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_ab: ; 0x5191
|
|
db $08, $10, $0f, $1b
|
|
db $00, $10, $0e, $1b
|
|
db $08, $08, $0d, $1b
|
|
db $00, $08, $0c, $1b
|
|
db $08, $00, $0b, $1b
|
|
db $00, $00, $0a, $1b
|
|
db $08, $f8, $09, $1b
|
|
db $00, $f8, $08, $1b
|
|
db $f8, $10, $07, $1b
|
|
db $f0, $10, $06, $1b
|
|
db $f8, $08, $05, $1b
|
|
db $f0, $08, $04, $1b
|
|
db $f8, $00, $03, $1b
|
|
db $f0, $00, $02, $1b
|
|
db $f8, $f8, $01, $1b
|
|
db $f0, $f8, $00, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_ac: ; 0x51d2
|
|
db $08, $10, $1f, $1b
|
|
db $00, $10, $1e, $1b
|
|
db $08, $08, $1d, $1b
|
|
db $00, $08, $1c, $1b
|
|
db $08, $00, $1b, $1b
|
|
db $00, $00, $1a, $1b
|
|
db $08, $f8, $19, $1b
|
|
db $00, $f8, $18, $1b
|
|
db $f8, $10, $17, $1b
|
|
db $f0, $10, $16, $1b
|
|
db $f8, $08, $15, $1b
|
|
db $f0, $08, $14, $1b
|
|
db $f8, $00, $13, $1b
|
|
db $f0, $00, $12, $1b
|
|
db $f8, $f8, $11, $1b
|
|
db $f0, $f8, $10, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_ad: ; 0x5213
|
|
db $08, $10, $2f, $1b
|
|
db $00, $10, $2e, $1b
|
|
db $08, $08, $2d, $1b
|
|
db $00, $08, $2c, $1b
|
|
db $08, $00, $2b, $1b
|
|
db $00, $00, $2a, $1b
|
|
db $08, $f8, $29, $1b
|
|
db $00, $f8, $28, $1b
|
|
db $f8, $10, $27, $1b
|
|
db $f0, $10, $26, $1b
|
|
db $f8, $08, $25, $1b
|
|
db $f0, $08, $24, $1b
|
|
db $f8, $00, $23, $1b
|
|
db $f0, $00, $22, $1b
|
|
db $f8, $f8, $21, $1b
|
|
db $f0, $f8, $20, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_ae: ; 0x5254
|
|
db $08, $10, $0f, $1d
|
|
db $00, $10, $0e, $1b
|
|
db $08, $08, $0d, $1d
|
|
db $00, $08, $0c, $1b
|
|
db $08, $00, $0b, $1d
|
|
db $00, $00, $0a, $1b
|
|
db $08, $f8, $09, $1d
|
|
db $00, $f8, $08, $1b
|
|
db $f8, $10, $07, $1b
|
|
db $f0, $10, $06, $1b
|
|
db $f8, $08, $05, $1b
|
|
db $f0, $08, $04, $1b
|
|
db $f8, $00, $03, $1b
|
|
db $f0, $00, $02, $1b
|
|
db $f8, $f8, $01, $1b
|
|
db $f0, $f8, $00, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_af: ; 0x5295
|
|
db $08, $10, $1f, $1d
|
|
db $00, $10, $1e, $1b
|
|
db $08, $08, $1d, $1d
|
|
db $00, $08, $1c, $1b
|
|
db $08, $00, $1b, $1d
|
|
db $00, $00, $1a, $1b
|
|
db $08, $f8, $19, $1d
|
|
db $00, $f8, $18, $1b
|
|
db $f8, $10, $17, $1b
|
|
db $f0, $10, $16, $1b
|
|
db $f8, $08, $15, $1b
|
|
db $f0, $08, $14, $1b
|
|
db $f8, $00, $13, $1b
|
|
db $f0, $00, $12, $1b
|
|
db $f8, $f8, $11, $1b
|
|
db $f0, $f8, $10, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_b0: ; 0x52d6
|
|
db $09, $10, $2f, $1d
|
|
db $01, $10, $2e, $1b
|
|
db $09, $08, $2d, $1d
|
|
db $01, $08, $2c, $1b
|
|
db $09, $00, $2b, $1d
|
|
db $01, $00, $2a, $1b
|
|
db $09, $f8, $29, $1d
|
|
db $01, $f8, $28, $1b
|
|
db $f9, $10, $27, $1b
|
|
db $f1, $10, $26, $1b
|
|
db $f9, $08, $25, $1b
|
|
db $f1, $08, $24, $1b
|
|
db $f9, $00, $23, $1b
|
|
db $f1, $00, $22, $1b
|
|
db $f9, $f8, $21, $1b
|
|
db $f1, $f8, $20, $1b
|
|
db $80 ; terminator
|
|
|
|
Timer0DigitOAM: ; 0x5317
|
|
db $10, $08, $60, $08
|
|
db $80 ; terminator
|
|
|
|
Timer1DigitOAM: ; 0x531c
|
|
db $10, $08, $62, $08
|
|
db $80 ; terminator
|
|
|
|
Timer2DigitOAM: ; 0x5321
|
|
db $10, $08, $64, $08
|
|
db $80 ; terminator
|
|
|
|
Timer3DigitOAM: ; 0x5326
|
|
db $10, $08, $66, $08
|
|
db $80 ; terminator
|
|
|
|
Timer4DigitOAM: ; 0x532b
|
|
db $10, $08, $68, $08
|
|
db $80 ; terminator
|
|
|
|
Timer5DigitOAM: ; 0x5330
|
|
db $10, $08, $6a, $08
|
|
db $80 ; terminator
|
|
|
|
Timer6DigitOAM: ; 0x5335
|
|
db $10, $08, $6c, $08
|
|
db $80 ; terminator
|
|
|
|
Timer7DigitOAM: ; 0x533a
|
|
db $10, $08, $6e, $08
|
|
db $80 ; terminator
|
|
|
|
Timer8DigitOAM: ; 0x533f
|
|
db $10, $08, $70, $08
|
|
db $80 ; terminator
|
|
|
|
Timer9DigitOAM: ; 0x5344
|
|
db $10, $08, $72, $08
|
|
db $80 ; terminator
|
|
|
|
TimerColonOAM: ; 0x5349
|
|
db $10, $08, $74, $08
|
|
db $80 ; terminator
|
|
|
|
OAMData_bc: ; 0x534e
|
|
db $10, $10, $30, $11
|
|
db $10, $08, $2e, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_bd: ; 0x5357
|
|
db $10, $10, $34, $11
|
|
db $10, $08, $32, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_be: ; 0x5360
|
|
db $12, $10, $66, $15
|
|
db $02, $10, $64, $15
|
|
db $12, $08, $62, $15
|
|
db $02, $08, $60, $15
|
|
db $80 ; terminator
|
|
|
|
OAMData_bf: ; 0x5371
|
|
db $00, $0a, $68, $15
|
|
db $10, $10, $6c, $15
|
|
db $10, $08, $6a, $15
|
|
db $80 ; terminator
|
|
|
|
OAMData_c0: ; 0x537e
|
|
db $0f, $10, $70, $15
|
|
db $0f, $08, $6e, $15
|
|
db $80 ; terminator
|
|
|
|
OAMData_c1: ; 0x5387
|
|
db $00, $0b, $72, $15
|
|
db $10, $10, $76, $15
|
|
db $10, $08, $74, $15
|
|
db $80 ; terminator
|
|
|
|
OAMData_c2: ; 0x5394
|
|
db $08, $0f, $78, $22
|
|
db $08, $07, $78, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_c3: ; 0x539d
|
|
db $08, $0f, $7b, $62
|
|
db $08, $07, $7b, $42
|
|
db $80 ; terminator
|
|
|
|
OAMData_c4: ; 0x53a6
|
|
db $08, $0f, $7d, $62
|
|
db $08, $07, $7d, $42
|
|
db $80 ; terminator
|
|
|
|
OAMData_c5: ; 0x53af
|
|
db $08, $0f, $7e, $22
|
|
db $08, $07, $7e, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_c6: ; 0x53b8
|
|
db $08, $0f, $7c, $22
|
|
db $08, $07, $7c, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_c7: ; 0x53c1
|
|
db $08, $0f, $7a, $22
|
|
db $08, $07, $7a, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_c8: ; 0x53ca
|
|
db $18, $11, $96, $02
|
|
db $20, $29, $a6, $02
|
|
db $30, $21, $a4, $02
|
|
db $20, $21, $a2, $02
|
|
db $38, $19, $a0, $02
|
|
db $28, $19, $9e, $02
|
|
db $18, $19, $9c, $02
|
|
db $38, $11, $9a, $02
|
|
db $28, $11, $98, $02
|
|
db $38, $09, $94, $02
|
|
db $28, $09, $92, $02
|
|
db $18, $09, $90, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_c9: ; 0x53fb
|
|
db $18, $21, $2c, $02
|
|
db $18, $19, $28, $02
|
|
db $30, $09, $20, $02
|
|
db $20, $09, $1e, $02
|
|
db $28, $19, $2a, $02
|
|
db $30, $11, $26, $02
|
|
db $20, $11, $24, $02
|
|
db $10, $11, $22, $02
|
|
db $10, $09, $1c, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_ca: ; 0x5420
|
|
db $30, $08, $1a, $02
|
|
db $20, $08, $a8, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_cb: ; 0x5429
|
|
db $10, $18, $06, $1b
|
|
db $20, $10, $04, $1b
|
|
db $10, $10, $02, $1b
|
|
db $10, $08, $00, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_cc: ; 0x543a
|
|
db $20, $11, $0e, $0c
|
|
db $10, $11, $0c, $0c
|
|
db $22, $09, $0a, $0c
|
|
db $12, $09, $08, $0c
|
|
db $80 ; terminator
|
|
|
|
OAMData_cd: ; 0x544b
|
|
db $0f, $11, $30, $11
|
|
db $0f, $09, $2e, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_ce: ; 0x5454
|
|
db $10, $0f, $30, $11
|
|
db $10, $07, $2e, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_cf: ; 0x545d
|
|
db $11, $11, $30, $11
|
|
db $11, $09, $2e, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_d0: ; 0x5466
|
|
db $10, $17, $16, $1b
|
|
db $1f, $0f, $14, $1b
|
|
db $0f, $0f, $12, $1b
|
|
db $0f, $07, $10, $1b
|
|
db $80 ; terminator
|
|
|
|
OAMData_d1: ; 0x5477
|
|
db $10, $08, $36, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_d2: ; 0x547c
|
|
db $08, $08, $37, $46
|
|
db $80 ; terminator
|
|
|
|
OAMData_d3: ; 0x5481
|
|
db $10, $08, $38, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_d4: ; 0x5486
|
|
db $10, $08, $3a, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_d5: ; 0x548b
|
|
db $10, $08, $3c, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_d6: ; 0x5490
|
|
db $10, $08, $3e, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_d7: ; 0x5495
|
|
db $10, $08, $b0, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_d8: ; 0x549a
|
|
db $10, $08, $b2, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_d9: ; 0x549f
|
|
db $10, $08, $b4, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_da: ; 0x54a4
|
|
db $10, $08, $b6, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_db: ; 0x54a9
|
|
db $10, $08, $38, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_dc: ; 0x54ae
|
|
db $10, $08, $3a, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_dd: ; 0x54b3
|
|
db $10, $08, $7e, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_de: ; 0x54b8
|
|
db $10, $08, $bc, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_df: ; 0x54bd
|
|
db $10, $08, $a8, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_e0: ; 0x54c2
|
|
db $10, $10, $92, $13
|
|
db $10, $08, $90, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_e1: ; 0x54cb
|
|
db $10, $10, $96, $13
|
|
db $10, $08, $94, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_e2: ; 0x54d4
|
|
db $20, $18, $1e, $11
|
|
db $20, $10, $1c, $11
|
|
db $20, $08, $1a, $11
|
|
db $10, $18, $9c, $11
|
|
db $10, $10, $9a, $11
|
|
db $10, $08, $98, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_e3: ; 0x54ed
|
|
db $10, $18, $a2, $11
|
|
db $10, $10, $a0, $11
|
|
db $10, $08, $9e, $11
|
|
db $20, $18, $1e, $11
|
|
db $20, $10, $1c, $11
|
|
db $20, $08, $1a, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_e4: ; 0x5506
|
|
db $10, $1a, $a8, $11
|
|
db $10, $12, $a6, $11
|
|
db $10, $0a, $a4, $11
|
|
db $20, $18, $1e, $11
|
|
db $20, $10, $1c, $11
|
|
db $20, $08, $1a, $11
|
|
db $80 ; terminator
|
|
|
|
OAMData_e5: ; 0x551f
|
|
db $20, $18, $2a, $13
|
|
db $20, $10, $28, $13
|
|
db $20, $08, $26, $13
|
|
db $10, $18, $24, $13
|
|
db $10, $10, $22, $13
|
|
db $10, $08, $20, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_e6: ; 0x5538
|
|
db $20, $18, $36, $13
|
|
db $20, $10, $34, $13
|
|
db $20, $08, $32, $13
|
|
db $10, $18, $30, $13
|
|
db $10, $10, $2e, $13
|
|
db $10, $08, $2c, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_e7: ; 0x5551
|
|
db $20, $10, $76, $13
|
|
db $20, $08, $74, $13
|
|
db $10, $10, $72, $13
|
|
db $10, $08, $70, $13
|
|
db $20, $18, $2a, $13
|
|
db $10, $18, $24, $13
|
|
db $80 ; terminator
|
|
|
|
OAMData_e8: ; 0x556a
|
|
db $10, $10, $78, $22
|
|
db $10, $08, $78, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_e9: ; 0x5573
|
|
db $10, $10, $7b, $62
|
|
db $10, $08, $7b, $42
|
|
db $80 ; terminator
|
|
|
|
OAMData_ea: ; 0x557c
|
|
db $10, $10, $7d, $62
|
|
db $10, $08, $7d, $42
|
|
db $80 ; terminator
|
|
|
|
OAMData_eb: ; 0x5585
|
|
db $10, $10, $7e, $22
|
|
db $10, $08, $7e, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_ec: ; 0x558e
|
|
db $10, $10, $7c, $22
|
|
db $10, $08, $7c, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_ed: ; 0x5597
|
|
db $10, $10, $7a, $22
|
|
db $10, $08, $7a, $02
|
|
db $80 ; terminator
|
|
|
|
OAMData_ee: ; 0x55a0
|
|
db $10, $08, $38, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_ef: ; 0x55a5
|
|
db $10, $08, $3a, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_f0: ; 0x55aa
|
|
db $10, $08, $3a, $26
|
|
db $80 ; terminator
|
|
|
|
OAMData_f1: ; 0x55af
|
|
db $10, $08, $3c, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_f2: ; 0x55b4
|
|
db $10, $08, $3e, $06
|
|
db $80 ; terminator
|
|
|
|
OAMData_f3: ; 0x55b9
|
|
db $10, $08, $3e, $26
|
|
db $80 ; terminator
|
|
|
|
OAMData_f4: ; 0x55be
|
|
db $08, $08, $39, $46
|
|
db $80 ; terminator
|
|
|
|
OAMData_f5: ; 0x55c3
|
|
db $10, $08, $72, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_f6: ; 0x55c8
|
|
db $10, $08, $74, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_f7: ; 0x55cd
|
|
db $10, $08, $76, $00
|
|
db $80 ; terminator
|
|
|
|
OAMData_f8: ; 0x55d2
|
|
db $10, $08, $78, $00
|
|
db $80 ; terminator
|
|
|
|
INCBIN "baserom.gbc",$55d7,$8000 - $55d7 ; 0x55d7
|
|
|
|
|
|
SECTION "bank2", ROMX, BANK[$2]
|
|
|
|
INCBIN "baserom.gbc",$8000,$821e - $8000 ; 0x8000
|
|
|
|
Func_821e: ; 0x821e
|
|
ld a, [$d8f2]
|
|
rst $18
|
|
|
|
INCBIN "baserom.gbc",$8222,$8228 - $8222
|
|
|
|
Func_8228: ; 0x8228
|
|
ld a, $41
|
|
ld [$ff9e], a
|
|
ld a, $e4
|
|
ld [$d80c], a
|
|
xor a
|
|
ld [$d80d], a
|
|
ld [$d80e], a
|
|
ld [hBoardXShift], a
|
|
ld [hBoardYShift], a
|
|
ld a, [$fffe]
|
|
ld hl, PointerTable_825e
|
|
call LoadVideoData
|
|
call ClearOAMBuffer
|
|
call Func_b66
|
|
call Func_588
|
|
call Func_14a4
|
|
ld bc, $0050
|
|
call Func_93f
|
|
call Func_bbe
|
|
ld hl, $d8f2
|
|
inc [hl]
|
|
ret
|
|
|
|
PointerTable_825e: ; 0x825e
|
|
dw DataArray_8262
|
|
dw DataArray_8272
|
|
|
|
DataArray_8262: ; 0x8262
|
|
dw $6000
|
|
db $36
|
|
dw vTiles1
|
|
dw $1000
|
|
|
|
dw $6000
|
|
db $31
|
|
dw vBGMap0
|
|
dw $1000
|
|
|
|
db $FF, $FF ; terminators
|
|
|
|
DataArray_8272: ; 0x8272
|
|
dw CopyrightTextGfx
|
|
db Bank(CopyrightTextGfx)
|
|
dw vTiles1
|
|
dw $1000 ; todo (This is the number of bytes to copy times 4 with two flags as lower 2 bits)
|
|
|
|
dw CopyrightScreenTilemap
|
|
db Bank(CopyrightScreenTilemap)
|
|
dw vBGMap0
|
|
dw $1000
|
|
|
|
dw $6400
|
|
db $31
|
|
dw vBGMap0
|
|
dw $1002
|
|
|
|
dw $5000 ; Some kind of GBC palette data
|
|
db $37
|
|
dw $0000
|
|
dw $101
|
|
|
|
db $FF, $FF ; terminators
|
|
|
|
INCBIN "baserom.gbc",$8290,$82a8 - $8290 ; 0x8290
|
|
|
|
Func_82a8: ; 0x82a8
|
|
call Func_cb5
|
|
call Func_576
|
|
ld hl, $a000
|
|
ld de, wRedHighScore1Points
|
|
ld bc, $0082
|
|
call Func_f0c
|
|
jr c, .asm_82c6
|
|
ld [$ff8a], a
|
|
ld a, Bank(CopyInitialHighScores)
|
|
ld hl, CopyInitialHighScores
|
|
call BankSwitch
|
|
.asm_82c6
|
|
ld hl, $a10c
|
|
ld de, wPokedexFlags
|
|
ld bc, $0098
|
|
call Func_f0c
|
|
jr c, .asm_82de
|
|
ld [$ff8a], a
|
|
ld a, $a
|
|
ld hl, $4d66
|
|
call BankSwitch
|
|
.asm_82de
|
|
ld hl, $a244
|
|
ld de, wKeyConfigs
|
|
ld bc, $000e
|
|
call Func_f0c
|
|
jr c, .asm_82f6
|
|
ld [$ff8a], a
|
|
ld a, $3
|
|
ld hl, $4a3a
|
|
call BankSwitch
|
|
.asm_82f6
|
|
ld hl, $a268
|
|
ld de, $d300
|
|
ld bc, $04c3 ; This is saved game data from when the player saves in the middle of a game.
|
|
call Func_f0c
|
|
jr c, .asm_8308
|
|
xor a
|
|
ld [$d7c2], a ; if this is non-zero, the main menu will prompt for "continue or new game?".
|
|
.asm_8308
|
|
ld hl, $d8f1
|
|
inc [hl]
|
|
xor a
|
|
ld [$d8f2], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$8311,$867d - $8311
|
|
|
|
StartTimer: ; 0x867d
|
|
; Starts the timer that counts down with the specified starting time when things
|
|
; like CatchEm Mode starts.
|
|
; input: b = minutes
|
|
; c = seconds
|
|
ld a, c
|
|
ld [wTimerSeconds], a
|
|
ld a, b
|
|
ld [wTimerMinutes], a
|
|
xor a
|
|
ld [wTimerFrames], a
|
|
ld [$d57e], a
|
|
ld [$d57f], a
|
|
ld a, $1
|
|
ld [$d57d], a
|
|
ld a, $1
|
|
ld [$d580], a
|
|
ld [$ff8a], a
|
|
ld a, Bank(Func_1404a)
|
|
ld hl, Func_1404a
|
|
call BankSwitch
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$86a4,$c000 - $86a4
|
|
|
|
|
|
SECTION "bank3", ROMX, BANK[$3]
|
|
|
|
INCBIN "baserom.gbc",$c000,$c0f7 - $c000
|
|
|
|
HandleTitlescreenAnimations: ; 0xc0f7
|
|
ld a, [$fffe]
|
|
and a
|
|
jr z, .asm_c104
|
|
ld bc, $2040
|
|
ld a, $62 ; seemingly-unused OAM data for titlescreen. It's just blank tiles.
|
|
call LoadOAMData
|
|
.asm_c104
|
|
call Func_c21d ; does nothing...
|
|
call HandleTitlescreenPikachuBlinkingAnimation
|
|
call HandleTitlescreenPokeballAnimation
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$c10e,$c21d - $c10e
|
|
|
|
Func_c21d: ; 0xc21d
|
|
; World's greatest function.
|
|
ret
|
|
|
|
HandleTitlescreenPikachuBlinkingAnimation: ; 0xc21e
|
|
ld a, [wTitleScreenBlinkAnimationFrame]
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, TitleScreenBlinkAnimation
|
|
add hl, bc
|
|
ld bc, $3810
|
|
ld a, [hl]
|
|
cp $5a ; blink animation frame 1 OAM id
|
|
call nz, LoadOAMData
|
|
ld a, [wTitleScreenBlinkAnimationCounter]
|
|
dec a
|
|
jr nz, .done
|
|
inc hl
|
|
inc hl ; hl points to next frame in TitleScreenBlinkAnimation array
|
|
ld a, [hl]
|
|
and a ; reached the end of the animation frames?
|
|
jr z, .saveAnimationFrame
|
|
ld a, [wTitleScreenBlinkAnimationFrame]
|
|
inc a
|
|
.saveAnimationFrame
|
|
ld [wTitleScreenBlinkAnimationFrame], a
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, (TitleScreenBlinkAnimation + 1)
|
|
add hl, bc
|
|
ld a, [hl] ; a contains second byte in the current animation frame data
|
|
cp $3c ; is this a long-duration animation frame?
|
|
jr c, .done
|
|
ld c, a
|
|
call Func_959
|
|
and $1f
|
|
add c
|
|
.done
|
|
ld [wTitleScreenBlinkAnimationCounter], a
|
|
ret
|
|
|
|
TitleScreenBlinkAnimation: ; 0xc25f
|
|
; Array of animation frames. The animation is looped when it finishes.
|
|
; first byte = OAM data id to load
|
|
; second byte = number of frames to show this animation.
|
|
db $5a, $c8
|
|
db $5b, $04
|
|
db $5c, $04
|
|
db $5b, $04
|
|
db $5a, $3c
|
|
db $5b, $03
|
|
db $5c, $03
|
|
db $5b, $03
|
|
db $5a, $03
|
|
db $5b, $03
|
|
db $5c, $03
|
|
db $5b, $03
|
|
db $00 ; terminator
|
|
|
|
HandleTitlescreenPokeballAnimation: ; 0xc278
|
|
ld a, [wTitleScreenCursorSelection]
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, TitleScreenPokeballCoordOffsets
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld c, a
|
|
ld a, [hli]
|
|
ld b, a
|
|
ld e, $0
|
|
ld a, [$d8f2] ; TODO: I think this is the "titlescreen state" byte.
|
|
cp $1
|
|
jr nz, .loadOAM ; skip getting the correct animation frame
|
|
ld a, [wTitleScreenBouncingBallAnimationFrame]
|
|
sla a
|
|
ld e, a
|
|
.loadOAM
|
|
ld d, $0
|
|
ld hl, TitleScreenPokeballAnimation
|
|
add hl, de
|
|
ld a, [hl] ; a contains OAM id
|
|
call LoadOAMData
|
|
ld a, [wTitleScreenPokeballAnimationCounter]
|
|
dec a
|
|
jr nz, .done
|
|
ld a, [wTitleScreenBouncingBallAnimationFrame]
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, (TitleScreenPokeballAnimation + 2) ; first frame of actual animation
|
|
add hl, bc
|
|
ld a, [hl]
|
|
and a
|
|
jr z, .saveAnimationFrame ; end of list?
|
|
ld a, [wTitleScreenBouncingBallAnimationFrame]
|
|
inc a
|
|
.saveAnimationFrame
|
|
ld [wTitleScreenBouncingBallAnimationFrame], a
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, (TitleScreenPokeballAnimation + 1) ; first duration
|
|
add hl, bc
|
|
ld a, [hl]
|
|
.done
|
|
ld [wTitleScreenPokeballAnimationCounter], a
|
|
ret
|
|
|
|
TitleScreenPokeballAnimation: ; 0xc2cc
|
|
; first byte = OAM id
|
|
; second byte = animation frame duration
|
|
db $5D, $02
|
|
db $5E, $06
|
|
db $5F, $02
|
|
db $60, $04
|
|
db $61, $06
|
|
db $5F, $04
|
|
db $00 ; terminator
|
|
|
|
TitleScreenPokeballCoordOffsets: ; 0xc2d9
|
|
db $67, $15
|
|
db $73, $15
|
|
db $7F, $15
|
|
|
|
INCBIN "baserom.gbc",$c2df,$c3b9 - $c2df
|
|
|
|
PointerTable_c3b9: ; 0xc3b9
|
|
dw DataArray_c3bd
|
|
dw DataArray_c3d4
|
|
|
|
DataArray_c3bd: ; 0xc3bd
|
|
dw OptionMenuAndKeyConfigGfx
|
|
db Bank(OptionMenuAndKeyConfigGfx)
|
|
dw vTiles0
|
|
dw $5000
|
|
|
|
dw OptionMenuTilemap
|
|
db Bank(OptionMenuTilemap)
|
|
dw vBGMap0
|
|
dw $900
|
|
|
|
dw $7000
|
|
db $30
|
|
dw vBGMap1
|
|
dw $900
|
|
|
|
db $FF, $FF ; terminators
|
|
|
|
DataArray_c3d4: ; 0xc3d4
|
|
dw OptionMenuAndKeyConfigGfx
|
|
db Bank(OptionMenuAndKeyConfigGfx)
|
|
dw vTiles0
|
|
dw $5000
|
|
|
|
dw OptionMenuTilemap
|
|
db Bank(OptionMenuTilemap)
|
|
dw vBGMap0
|
|
dw $900
|
|
|
|
dw $7c00
|
|
db $30
|
|
dw vBGMap0
|
|
dw $902
|
|
|
|
dw $7000
|
|
db $30
|
|
dw vBGMap1
|
|
dw $900
|
|
|
|
dw $7400
|
|
db $30
|
|
dw vBGMap1
|
|
dw $902
|
|
|
|
dw $4e00
|
|
db $37
|
|
dw $0000
|
|
dw $101
|
|
|
|
db $FF, $FF ; terminators
|
|
|
|
INCBIN "baserom.gbc",$c400,$c715 - $c400
|
|
|
|
UpdateSoundTestBackgroundMusicSelection: ; 0xc715
|
|
ld a, [$ff9a] ; joypad state
|
|
ld b, a
|
|
ld a, [wSoundTestCurrentBackgroundMusic]
|
|
bit BIT_D_LEFT, b ; was the left dpad button pressed?
|
|
jr z, .checkIfRightPressed
|
|
dec a ; decrement background music id
|
|
bit 7, a ; did it wrap around to $ff?
|
|
jr z, .saveBackgroundMusicID
|
|
ld a, NUM_SONGS - 1
|
|
jr .saveBackgroundMusicID
|
|
.checkIfRightPressed
|
|
bit BIT_D_RIGHT, b ; was the right dpad button pressed?
|
|
ret z
|
|
inc a ; increment background music id
|
|
cp NUM_SONGS ; should it wrap around to 0?
|
|
jr nz, .saveBackgroundMusicID
|
|
xor a
|
|
.saveBackgroundMusicID
|
|
ld [wSoundTestCurrentBackgroundMusic], a
|
|
hlCoord 7, 11, vBGMap0
|
|
jp RedrawSoundTestID
|
|
|
|
UpdateSoundTestSoundEffectSelection: ; 0xc73a
|
|
ld a, [$ff99] ; joypad state
|
|
bit BIT_A_BUTTON, a
|
|
jr z, .didntPressAButton
|
|
ld a, [wSoundTextCurrentSoundEffect]
|
|
ld e, a
|
|
ld d, $0
|
|
call PlaySoundEffect
|
|
ret
|
|
.didntPressAButton
|
|
ld a, [$ff9a] ; joypad state
|
|
ld b, a
|
|
ld a, [wSoundTextCurrentSoundEffect]
|
|
bit BIT_D_LEFT, b ; was the left dpad button pressed?
|
|
jr z, .checkIfRightPressed
|
|
dec a ; decrement sound effect id
|
|
bit 7, a ; did it wrap around to $ff?
|
|
jr z, .saveSoundEffectID
|
|
ld a, NUM_SOUND_EFFECTS - 1
|
|
jr .saveSoundEffectID
|
|
.checkIfRightPressed
|
|
bit BIT_D_RIGHT, b ; was the right dpad button pressed?
|
|
ret z
|
|
inc a ; increment background music id
|
|
cp NUM_SOUND_EFFECTS ; should it wrap around to 0?
|
|
jr nz, .saveSoundEffectID
|
|
xor a
|
|
.saveSoundEffectID
|
|
ld [wSoundTextCurrentSoundEffect], a
|
|
hlCoord 7, 13, vBGMap0
|
|
; fall through
|
|
|
|
RedrawSoundTestID:
|
|
; Redraws the 2-digit id number for the sound test's current background music or sound effect id.
|
|
; input: a = id number
|
|
; hl = pointer to bg map location where the new 2-digit id should be drawn
|
|
push af ; save music or sound effect id number
|
|
swap a
|
|
and $f ; a contains high nybble of music id
|
|
call .drawDigit
|
|
pop af
|
|
and $f ; a contains low nybble of music id
|
|
.drawDigit
|
|
add $b7 ; hexadecimal digit tiles start at tile number $b7
|
|
call PutTileInVRAM
|
|
inc hl
|
|
ret
|
|
|
|
SongBanks: ; 0xc77e
|
|
db MUSIC_NOTHING_0F,BANK(Music_Nothing0F)
|
|
db MUSIC_BLUE_FIELD,BANK(Music_BlueField)
|
|
db MUSIC_CATCH_EM_RED,BANK(Music_CatchEmRed)
|
|
db MUSIC_HURRY_UP_RED,BANK(Music_HurryUpRed)
|
|
db MUSIC_POKEDEX,BANK(Music_Pokedex)
|
|
db MUSIC_GASTLY_GRAVEYARD,BANK(Music_GastlyInTheGraveyard)
|
|
db MUSIC_HAUNTER_GRAVEYARD,BANK(Music_HaunterInTheGraveyard)
|
|
db MUSIC_GENGAR_GRAVEYARD,BANK(Music_GengarInTheGraveyard)
|
|
db MUSIC_RED_FIELD,BANK(Music_RedField)
|
|
db MUSIC_CATCH_EM_BLUE,BANK(Music_CatchEmBlue)
|
|
db MUSIC_HURRY_UP_BLUE,BANK(Music_HurryUpBlue)
|
|
db MUSIC_HI_SCORE,BANK(Music_HiScore)
|
|
db MUSIC_GAME_OVER,BANK(Music_GameOver)
|
|
db MUSIC_WHACK_DIGLETT,BANK(Music_WhackTheDiglett)
|
|
db MUSIC_WHACK_DUGTRIO,BANK(Music_WhackTheDugtrio)
|
|
db MUSIC_SEEL_STAGE,BANK(Music_SeelStage)
|
|
db MUSIC_TITLE_SCREEN,BANK(Music_Title)
|
|
db MUSIC_MEWTWO_STAGE,BANK(Music_MewtwoStage)
|
|
db MUSIC_OPTIONS,BANK(Music_Options)
|
|
db MUSIC_FIELD_SELECT,BANK(Music_FieldSelect)
|
|
db MUSIC_MEOWTH_STAGE,BANK(Music_MeowthStage)
|
|
db MUSIC_END_CREDITS,BANK(Music_EndCredits)
|
|
db MUSIC_NAME_ENTRY,BANK(Music_NameEntry)
|
|
; 0xc7ac
|
|
|
|
INCBIN "baserom.gbc",$c7ac,$d3ff - $c7ac
|
|
|
|
CopyInitialHighScores: ; 0xd3ff
|
|
ld hl, InitialHighScores
|
|
ld de, wRedHighScore1Points
|
|
call CopyInitialHighScoresForStage
|
|
ld hl, InitialHighScores
|
|
ld de, wBlueHighScore1Points
|
|
|
|
CopyInitialHighScoresForStage: ; 0xd40e
|
|
; input: hl = address of high score entries
|
|
; de = destination address for high score entries to be copied
|
|
ld b, $5 ; 5 high score entries to copy
|
|
.copyHighScoreEntry
|
|
ld c, $6 ; high score points are 6 bytes long
|
|
.copyPoints
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
dec c
|
|
jr nz, .copyPoints
|
|
ld c, $3 ; name is 3 bytes
|
|
.copyName
|
|
ld a, [hli]
|
|
sub $37
|
|
ld [de], a
|
|
inc de
|
|
dec c
|
|
jr nz, .copyName
|
|
ld c, $4
|
|
.asm_d424 ; TODO: what are these 4 bytes used for?
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
dec c
|
|
jr nz, .asm_d424
|
|
dec b
|
|
jr nz, .copyHighScoreEntry
|
|
ret
|
|
|
|
INCLUDE "data/initial_high_scores.asm" ; 0xd42e
|
|
|
|
INCBIN "baserom.gbc",$d46f,$d71c - $d46f
|
|
|
|
PointerTable_d71c: ; 0xd71c
|
|
dw DataArray_d720
|
|
dw DataArray_d730
|
|
|
|
DataArray_d720: ; 0xd720
|
|
dw FieldSelectScreenGfx
|
|
db Bank(FieldSelectScreenGfx)
|
|
dw vTiles1 - $100
|
|
dw $3400
|
|
|
|
dw FieldSelectTilemap
|
|
db Bank(FieldSelectTilemap)
|
|
dw vBGMap0
|
|
dw $900
|
|
|
|
db $FF, $FF ; terminators
|
|
|
|
DataArray_d730: ; 0xd730
|
|
dw FieldSelectScreenGfx
|
|
db Bank(FieldSelectScreenGfx)
|
|
dw vTiles1 - $100
|
|
dw $3400
|
|
|
|
dw FieldSelectTilemap
|
|
db Bank(FieldSelectTilemap)
|
|
dw vBGMap0
|
|
dw $900
|
|
|
|
dw $7c00
|
|
db $2C
|
|
dw vBGMap0
|
|
dw $902
|
|
|
|
dw $5100
|
|
db $37
|
|
dw $0000
|
|
dw $91
|
|
|
|
db $FF, $FF ; terminators
|
|
|
|
INCBIN "baserom.gbc",$d74e,$dbd4 - $d74e
|
|
|
|
Func_dbd4: ; 0xdbd4
|
|
ld a, [$d4a3]
|
|
ld [$d4a6], a
|
|
ld a, [$d4a4]
|
|
ld [$d4a7], a
|
|
ld a, [$d4a5]
|
|
ld [$d4a8], a
|
|
ld a, $0
|
|
ld [$d4a1], a
|
|
ld a, $ff
|
|
ld [$d4a2], a
|
|
ld a, $3b
|
|
ld [$d4a3], a
|
|
ld a, $3c
|
|
ld [$d4a4], a
|
|
ld a, $ff
|
|
ld [$d4a5], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$dc00,$eeee - $dc00
|
|
|
|
Func_eeee: ; 0xeeee
|
|
push bc
|
|
ld bc, $0200
|
|
.asm_eef2
|
|
dec bc
|
|
ld a, b
|
|
or c
|
|
jr nz, .asm_eef2
|
|
pop bc
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$eef9,$f178 - $eef9
|
|
|
|
LoadBillboardPicture: ; 0xf178
|
|
; Loads a billboard picture's tiles into VRAM
|
|
; input: a = billboard picture id
|
|
push hl
|
|
ld c, a
|
|
ld b, $0
|
|
sla c
|
|
add c ; a has been multplied by 3 becuase entires in BillboardPicturePointers are 3 bytes long
|
|
ld c, a
|
|
ld hl, BillboardPicturePointers
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld c, a
|
|
ld a, [hli]
|
|
ld b, a
|
|
ld a, [hl]
|
|
ld h, b
|
|
ld l, c
|
|
ld de, $8900 ; destination address to copy the tiles
|
|
ld bc, $180 ; billboard pictures are $180 bytes
|
|
call Func_73f ; loads the tiles into VRAM
|
|
pop hl
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$f196,$f1b8 - $f196
|
|
|
|
BillboardPicturePointers: ; 0xf1b8
|
|
dw BallSaver30SecondsOnPic
|
|
db Bank(BallSaver30SecondsOnPic)
|
|
|
|
dw BallSaver60SecondsOnPic
|
|
db Bank(BallSaver60SecondsOnPic)
|
|
|
|
dw BallSaver90SecondsOnPic
|
|
db Bank(BallSaver90SecondsOnPic)
|
|
|
|
dw PikachuSaverOnPic
|
|
db Bank(PikachuSaverOnPic)
|
|
|
|
dw ExtraBallOnPic
|
|
db Bank(ExtraBallOnPic)
|
|
|
|
dw SmallRewardOnPic
|
|
db Bank(SmallRewardOnPic)
|
|
|
|
dw BigRewardOnPic
|
|
db Bank(BigRewardOnPic)
|
|
|
|
dw CatchEmModeOnPic
|
|
db Bank(CatchEmModeOnPic)
|
|
|
|
dw EvolutionModeOnPic
|
|
db Bank(EvolutionModeOnPic)
|
|
|
|
dw GreatBallOnPic
|
|
db Bank(GreatBallOnPic)
|
|
|
|
dw UltraBallOnPic
|
|
db Bank(UltraBallOnPic)
|
|
|
|
dw MasterBallOnPic
|
|
db Bank(MasterBallOnPic)
|
|
|
|
dw BonusMultiplierOnPic
|
|
db Bank(BonusMultiplierOnPic)
|
|
|
|
dw GoToGengarBonusOnPic
|
|
db Bank(GoToGengarBonusOnPic)
|
|
|
|
dw GoToMewtwoBonusOnPic
|
|
db Bank(GoToMewtwoBonusOnPic)
|
|
|
|
dw GoToMeowthBonusOnPic
|
|
db Bank(GoToMeowthBonusOnPic)
|
|
|
|
dw GoToDiglettBonusOnPic
|
|
db Bank(GoToDiglettBonusOnPic)
|
|
|
|
dw GoToSeelBonusOnPic
|
|
db Bank(GoToSeelBonusOnPic)
|
|
|
|
dw SmallReward100PointsOnPic
|
|
db Bank(SmallReward100PointsOnPic)
|
|
|
|
dw SmallReward200PointsOnPic
|
|
db Bank(SmallReward200PointsOnPic)
|
|
|
|
dw SmallReward300PointsOnPic
|
|
db Bank(SmallReward300PointsOnPic)
|
|
|
|
dw SmallReward400PointsOnPic
|
|
db Bank(SmallReward400PointsOnPic)
|
|
|
|
dw SmallReward500PointsOnPic
|
|
db Bank(SmallReward500PointsOnPic)
|
|
|
|
dw SmallReward600PointsOnPic
|
|
db Bank(SmallReward600PointsOnPic)
|
|
|
|
dw SmallReward700PointsOnPic
|
|
db Bank(SmallReward700PointsOnPic)
|
|
|
|
dw SmallReward800PointsOnPic
|
|
db Bank(SmallReward800PointsOnPic)
|
|
|
|
dw SmallReward900PointsOnPic
|
|
db Bank(SmallReward900PointsOnPic)
|
|
|
|
dw BigReward1000000PointsOnPic
|
|
db Bank(BigReward1000000PointsOnPic)
|
|
|
|
dw BigReward2000000PointsOnPic
|
|
db Bank(BigReward2000000PointsOnPic)
|
|
|
|
dw BigReward3000000PointsOnPic
|
|
db Bank(BigReward3000000PointsOnPic)
|
|
|
|
dw BigReward4000000PointsOnPic
|
|
db Bank(BigReward4000000PointsOnPic)
|
|
|
|
dw BigReward5000000PointsOnPic
|
|
db Bank(BigReward5000000PointsOnPic)
|
|
|
|
dw BigReward6000000PointsOnPic
|
|
db Bank(BigReward6000000PointsOnPic)
|
|
|
|
dw BigReward7000000PointsOnPic
|
|
db Bank(BigReward7000000PointsOnPic)
|
|
|
|
dw BigReward8000000PointsOnPic
|
|
db Bank(BigReward8000000PointsOnPic)
|
|
|
|
dw BigReward9000000PointsOnPic
|
|
db Bank(BigReward9000000PointsOnPic)
|
|
|
|
dw BonusMultiplierX1OnPic
|
|
db Bank(BonusMultiplierX1OnPic)
|
|
|
|
dw BonusMultiplierX2OnPic
|
|
db Bank(BonusMultiplierX2OnPic)
|
|
|
|
dw BonusMultiplierX3OnPic
|
|
db Bank(BonusMultiplierX3OnPic)
|
|
|
|
dw BonusMultiplierX4OnPic
|
|
db Bank(BonusMultiplierX4OnPic)
|
|
|
|
dw BonusMultiplierX5OnPic
|
|
db Bank(BonusMultiplierX5OnPic)
|
|
|
|
dw PalletTownPic
|
|
db Bank(PalletTownPic)
|
|
|
|
dw ViridianCityPic
|
|
db Bank(ViridianCityPic)
|
|
|
|
dw ViridianForestPic
|
|
db Bank(ViridianForestPic)
|
|
|
|
dw PewterCityPic
|
|
db Bank(PewterCityPic)
|
|
|
|
dw MtMoonPic
|
|
db Bank(MtMoonPic)
|
|
|
|
dw CeruleanCityPic
|
|
db Bank(CeruleanCityPic)
|
|
|
|
dw VermilionCitySeasidePic
|
|
db Bank(VermilionCitySeasidePic)
|
|
|
|
dw VermilionCityStreetsPic
|
|
db Bank(VermilionCityStreetsPic)
|
|
|
|
dw RockMountainPic
|
|
db Bank(RockMountainPic)
|
|
|
|
dw LavenderTownPic
|
|
db Bank(LavenderTownPic)
|
|
|
|
dw CeladonCityPic
|
|
db Bank(CeladonCityPic)
|
|
|
|
dw CyclingRoadPic
|
|
db Bank(CyclingRoadPic)
|
|
|
|
dw FuchsiaCityPic
|
|
db Bank(FuchsiaCityPic)
|
|
|
|
dw SafariZonePic
|
|
db Bank(SafariZonePic)
|
|
|
|
dw SaffronCityPic
|
|
db Bank(SaffronCityPic)
|
|
|
|
dw SeafoamIslandsPic
|
|
db Bank(SeafoamIslandsPic)
|
|
|
|
dw CinnabarIslandPic
|
|
db Bank(CinnabarIslandPic)
|
|
|
|
dw IndigoPlateauPic
|
|
db Bank(IndigoPlateauPic)
|
|
|
|
INCBIN "baserom.gbc",$f269,$10000 - $f269
|
|
|
|
|
|
SECTION "bank4", ROMX, BANK[$4]
|
|
|
|
INCBIN "baserom.gbc",$10000,$1003f - $10000
|
|
|
|
StartCatchEmMode: ; 0x1003f
|
|
ld a, [$d54b] ; current game mode?
|
|
and a
|
|
ret nz
|
|
ld a, $1
|
|
ld [$d54b], a ; set to catchem mode?
|
|
xor a
|
|
ld [$d550], a
|
|
ld [$d54d], a
|
|
ld a, [$d4ac]
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
push bc
|
|
ld hl, WildMonOffsetsPointers
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [wCurrentMap]
|
|
sla a
|
|
ld c, a
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld c, a
|
|
ld a, [hl]
|
|
ld b, a
|
|
pop de
|
|
ld hl, WildMonPointers
|
|
add hl, de
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
add hl, bc
|
|
call Func_959 ; random number?
|
|
and $f
|
|
call .asm_10130
|
|
ld c, a
|
|
ld b, $0
|
|
add hl, bc
|
|
ld a, [$d55b] ; this probably gets set to $08 when the rare mons should be used.
|
|
sla a
|
|
ld c, a
|
|
add hl, bc
|
|
ld a, [hl] ; a contains mon id
|
|
dec a
|
|
ld [wCurrentMon], a
|
|
ld a, [wCurrentMon]
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, EvolutionLineIds
|
|
add hl, bc
|
|
ld c, [hl]
|
|
ld h, b
|
|
ld l, c
|
|
add hl, bc
|
|
add hl, bc ; multiply the evolution line id by 3
|
|
ld bc, Data_13685
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld [$d5c1], a
|
|
ld [$d5be], a
|
|
ld a, [hli]
|
|
ld [$d5c2], a
|
|
ld a, [hli]
|
|
ld [$d5c3], a
|
|
ld hl, $d586
|
|
ld a, [$d5b6]
|
|
ld c, a
|
|
and a
|
|
ld b, $18
|
|
jr z, .asm_100c7
|
|
.asm_100ba
|
|
ld a, $1
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
dec b
|
|
dec c
|
|
jr nz, .asm_100ba
|
|
ld a, b
|
|
and a
|
|
jr z, .asm_100ce
|
|
.asm_100c7
|
|
xor a
|
|
ld [hli], a
|
|
inc a
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_100c7
|
|
.asm_100ce
|
|
ld a, [wCurrentMon]
|
|
ld c, a
|
|
ld b, $0
|
|
sla c
|
|
rl b
|
|
ld hl, CatchEmTimerData
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld c, a
|
|
ld a, [hl]
|
|
ld b, a
|
|
ld [$ff8a], a
|
|
ld a, Bank(StartTimer)
|
|
ld hl, StartTimer
|
|
call BankSwitch
|
|
ld [$ff8a], a
|
|
ld a, Bank(Func_dbd4)
|
|
ld hl, Func_dbd4
|
|
call BankSwitch
|
|
call Func_10696
|
|
call Func_3579
|
|
ld a, [$d4ac]
|
|
bit 0, a
|
|
jr z, .asm_1011d
|
|
ld a, $28
|
|
ld hl, $6300
|
|
ld de, $8ae0
|
|
ld bc, $0020
|
|
call Func_735
|
|
ld a, $0
|
|
ld hl, $2898
|
|
ld de, $9906
|
|
ld bc, $0008
|
|
call Func_735
|
|
.asm_1011d
|
|
call SetPokemonSeenFlag
|
|
ld a, [$d4ac]
|
|
rst $18
|
|
ld [hl], c
|
|
ld c, b
|
|
ld [hl], c
|
|
ld c, b
|
|
adc d
|
|
ld c, c
|
|
adc d
|
|
ld c, c
|
|
adc h
|
|
ld c, c
|
|
adc h
|
|
ld c, c
|
|
.asm_10130 ; I think this checks to see if it should be Mew
|
|
push af
|
|
cp $f
|
|
jr nz, .asm_10155
|
|
ld a, c
|
|
cp $60
|
|
jr nz, .asm_10155
|
|
ld a, b
|
|
cp $1
|
|
jr nz, .asm_10155
|
|
ld a, [$d55b]
|
|
cp $8
|
|
jr nz, .asm_10155
|
|
ld a, [$d62f]
|
|
cp $2
|
|
jr nz, .asm_10155
|
|
pop af
|
|
xor a
|
|
ld [$d62f], a
|
|
ld a, $10
|
|
ret
|
|
.asm_10155
|
|
pop af
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$10157,$10696 - $10157
|
|
|
|
Func_10696: ; 0x10696
|
|
call Func_30e8
|
|
call Func_30db
|
|
ld hl, $d5cc
|
|
ld de, $29b7
|
|
call Func_32aa
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$106a6,$10753 - $106a6
|
|
|
|
SetPokemonSeenFlag: ; 0x10753
|
|
ld a, [$d550]
|
|
and a
|
|
ld a, [wCurrentMon]
|
|
jr z, .asm_10766
|
|
ld a, [$d552]
|
|
cp $ff
|
|
jr nz, .asm_10766
|
|
ld a, [wCurrentMon]
|
|
.asm_10766
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, wPokedexFlags
|
|
add hl, bc
|
|
set 0, [hl]
|
|
ld hl, wPokedexFlags
|
|
ld de, $a10c
|
|
ld bc, $0098
|
|
call Func_f1a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$1077c,$1126c - $1077c
|
|
|
|
WildMonOffsetsPointers: ; 0x1126c
|
|
dw RedStageWildMonDataOffsets
|
|
dw RedStageWildMonDataOffsets
|
|
dw RedStageWildMonDataOffsets
|
|
dw RedStageWildMonDataOffsets
|
|
dw BlueStageWildMonDataOffsets
|
|
dw BlueStageWildMonDataOffsets
|
|
|
|
RedStageWildMonDataOffsets: ; 0x11278
|
|
dw (RedStagePalletTownWildMons - RedStageWildMons) ; PALLET_TOWN
|
|
dw $0000 ; VIRIDIAN_CITY (unused in Red Stage)
|
|
dw (RedStageViridianForestWildMons - RedStageWildMons) ; VIRIDIAN_FOREST
|
|
dw (RedStagePewterCityWildMons - RedStageWildMons) ; PEWTER_CITY
|
|
dw $0000 ; MT_MOON (unused in Red Stage)
|
|
dw (RedStageCeruleanCityWildMons - RedStageWildMons) ; CERULEAN_CITY
|
|
dw (RedStageVermilionSeasideWildMons - RedStageWildMons) ; VERMILION_SEASIDE
|
|
dw $0000 ; VERMILION_STREETS (unused in Red Stage)
|
|
dw (RedStageRockMountainWildMons - RedStageWildMons) ; ROCK_MOUNTAIN
|
|
dw (RedStageLavenderTownWildMons - RedStageWildMons) ; LAVENDER_TOWN
|
|
dw $0000 ; CELADON_CITY (unused in Red Stage)
|
|
dw (RedStageCyclingRoadWildMons - RedStageWildMons) ; CYCLING_ROAD
|
|
dw $0000 ; FUCHSIA_CITY (unused in Red Stage)
|
|
dw (RedStageSafariZoneWildMons - RedStageWildMons) ; SAFARI_ZONE
|
|
dw $0000 ; SAFFRON_CITY (unused in Red Stage)
|
|
dw (RedStageSeafoamIslandsWildMons - RedStageWildMons) ; SEAFOAM_ISLANDS
|
|
dw (RedStageCinnabarIslandWildMons - RedStageWildMons) ; CINNABAR_ISLAND
|
|
dw (RedStageIndigoPlateauWildMons - RedStageWildMons) ; INDIGO_PLATEAU
|
|
|
|
BlueStageWildMonDataOffsets: ; 0x1129c
|
|
dw $0000 ; PALLET_TOWN (unused in Blue Stage)
|
|
dw (BlueStageViridianCityWildMons - BlueStageWildMons) ; VIRIDIAN_CITY
|
|
dw (BlueStageViridianForestWildMons - BlueStageWildMons) ; VIRIDIAN_FOREST
|
|
dw $0000 ; PEWTER_CITY (unused in Blue Stage)
|
|
dw (BlueStageMtMoonWildMons - BlueStageWildMons) ; MT_MOON
|
|
dw (BlueStageCeruleanCityWildMons - BlueStageWildMons) ; CERULEAN_CITY
|
|
dw $0000 ; VERMILION_SEASIDE (unused in Blue Stage)
|
|
dw (BlueStageVermilionStreetsWildMons - BlueStageWildMons) ; VERMILION_STREETS
|
|
dw (BlueStageRockMountainWildMons - BlueStageWildMons) ; ROCK_MOUNTAIN
|
|
dw $0000 ; LAVENDER_TOWN (unused in Blue Stage)
|
|
dw (BlueStageCeladonCityWildMons - BlueStageWildMons) ; CELADON_CITY
|
|
dw $0000 ; CYCLING_ROAD (unused in Blue Stage)
|
|
dw (BlueStageFuchsiaCityWildMons - BlueStageWildMons) ; FUCHSIA_CITY
|
|
dw (BlueStageSafariZoneWildMons - BlueStageWildMons) ; SAFARI_ZONE
|
|
dw (BlueStageSaffronCityWildMons - BlueStageWildMons) ; SAFFRON_CITY
|
|
dw $0000 ; SEAFOAM_ISLANDS (unused in Blue Stage)
|
|
dw (BlueStageCinnabarIslandWildMons - BlueStageWildMons) ; CINNABAR_ISLAND
|
|
dw (BlueStageIndigoPlateauWildMons - BlueStageWildMons) ; INDIGO_PLATEAU
|
|
|
|
WildMonPointers: ; 0x112c0
|
|
dw RedStageWildMons
|
|
dw RedStageWildMons
|
|
dw RedStageWildMons
|
|
dw RedStageWildMons
|
|
dw BlueStageWildMons
|
|
dw BlueStageWildMons
|
|
|
|
INCLUDE "data/red_wild_mons.asm"
|
|
INCLUDE "data/blue_wild_mons.asm"
|
|
|
|
INCBIN "baserom.gbc",$115ce,$1161d - $115ce
|
|
|
|
INCLUDE "data/evolution_lines.asm"
|
|
|
|
INCBIN "baserom.gbc",$116b4,$12a22 - $116b4
|
|
|
|
INCLUDE "data/catchem_timer_values.asm"
|
|
|
|
INCBIN "baserom.gbc",$12b50,$13685 - $12b50
|
|
|
|
Data_13685: ; 0x13685
|
|
; Each 3-byte entry is related to an evolution line. Don't know what this is for, yet.
|
|
db $12, $12, $10
|
|
db $10, $10, $10
|
|
db $12, $12, $0E
|
|
db $14, $14, $12
|
|
db $14, $14, $10
|
|
db $0A, $0A, $0E
|
|
db $11, $13, $10
|
|
db $0B, $0B, $10
|
|
db $12, $12, $0E
|
|
db $12, $14, $0E
|
|
db $10, $12, $10
|
|
db $11, $12, $0E
|
|
db $11, $12, $0E
|
|
db $12, $13, $10
|
|
db $11, $11, $10
|
|
db $12, $12, $10
|
|
db $08, $08, $10
|
|
db $10, $10, $10
|
|
db $10, $10, $10
|
|
db $11, $11, $0E
|
|
db $10, $10, $0E
|
|
db $14, $14, $0E
|
|
db $30, $30, $10
|
|
db $12, $12, $10
|
|
db $12, $12, $10
|
|
db $10, $10, $10
|
|
db $10, $10, $10
|
|
db $12, $14, $10
|
|
db $10, $12, $10
|
|
db $0C, $0C, $12
|
|
db $12, $14, $0C
|
|
db $12, $14, $0E
|
|
db $30, $30, $10
|
|
db $14, $14, $10
|
|
db $12, $12, $0E
|
|
db $12, $12, $0E
|
|
db $14, $14, $0E
|
|
db $12, $12, $10
|
|
db $14, $14, $0E
|
|
db $10, $10, $0E
|
|
db $12, $12, $10
|
|
db $14, $14, $10
|
|
db $14, $12, $10
|
|
db $02, $02, $10
|
|
db $12, $12, $10
|
|
db $12, $12, $10
|
|
db $14, $10, $10
|
|
db $14, $10, $10
|
|
db $14, $12, $10
|
|
db $11, $11, $10
|
|
db $14, $14, $10
|
|
db $12, $12, $10
|
|
db $10, $10, $10
|
|
db $12, $12, $10
|
|
db $0F, $0F, $0E
|
|
db $12, $12, $0E
|
|
db $23, $23, $10
|
|
db $13, $13, $10
|
|
db $13, $13, $10
|
|
db $12, $12, $10
|
|
db $12, $14, $10
|
|
db $14, $14, $0E
|
|
db $12, $12, $0E
|
|
db $12, $14, $10
|
|
db $18, $18, $0C
|
|
db $16, $16, $0C
|
|
db $14, $14, $10
|
|
db $12, $12, $10
|
|
db $10, $10, $0E
|
|
db $12, $12, $0E
|
|
db $12, $12, $0E
|
|
db $0C, $0C, $12
|
|
db $26, $36, $12
|
|
db $13, $13, $10
|
|
db $13, $13, $10
|
|
db $13, $13, $10
|
|
db $12, $12, $0E
|
|
db $14, $14, $0E
|
|
db $14, $14, $0E
|
|
|
|
|
|
SECTION "bank5", ROMX, BANK[$5]
|
|
|
|
INCBIN "baserom.gbc",$14000,$1404a - $14000
|
|
|
|
Func_1404a: ; 0x1404a
|
|
ld a, [$d57d]
|
|
and a
|
|
ret z
|
|
ld a, [$fffe]
|
|
and a
|
|
ret nz
|
|
ld a, [$d580]
|
|
and a
|
|
ret z
|
|
ld a, $f
|
|
ld [$d581], a
|
|
call Func_1762f
|
|
ld hl, $d582
|
|
ld a, $ff
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld hl, $d582
|
|
ld a, [wTimerMinutes]
|
|
and $f
|
|
call Func_1764f
|
|
ld a, [wTimerSeconds]
|
|
swap a
|
|
and $f
|
|
call Func_1764f
|
|
ld a, [wTimerSeconds]
|
|
and $f
|
|
call Func_1764f
|
|
ld a, e
|
|
srl a
|
|
srl a
|
|
ld d, $90
|
|
call Func_1764f
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$14091,$1659c - $14091
|
|
|
|
.showNextMap
|
|
ld a, [$d4e1]
|
|
inc a
|
|
cp $7 ; number of maps to choose from at the start of play
|
|
jr c, .gotMapId
|
|
xor a ; wrap around to 0
|
|
.gotMapId
|
|
ld [$d4e1], a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, RedStageInitialMaps
|
|
add hl, bc
|
|
ld a, [hl]
|
|
ld [wCurrentMap], a
|
|
push af
|
|
ld de, $0048
|
|
call PlaySoundEffect
|
|
pop af
|
|
add $29 ; map billboard pictures start at the $29th entry in BillboardPicturePointers
|
|
ld [$ff8a], a
|
|
ld a, Bank(LoadBillboardPicture)
|
|
ld hl, LoadBillboardPicture
|
|
call BankSwitch
|
|
ld b, $20 ; number of frames to delay before the next map is shown
|
|
.waitOnCurrentMap
|
|
push bc
|
|
ld [$ff8a], a
|
|
ld a, Bank(Func_eeee)
|
|
ld hl, Func_eeee
|
|
call BankSwitch
|
|
ld hl, wKeyConfigBallStart
|
|
call IsKeyPressed
|
|
jr nz, .ballStartKeyPressed
|
|
pop bc
|
|
dec b
|
|
jr nz, .waitOnCurrentMap
|
|
jr .showNextMap
|
|
.ballStartKeyPressed
|
|
pop bc
|
|
ld [$ff8a], a
|
|
ld a, Bank(Func_30253)
|
|
ld hl, Func_30253
|
|
call BankSwitch
|
|
ld bc, $2cd1
|
|
ld [$ff8a], a
|
|
ld a, Bank(Func_3118f)
|
|
ld hl, Func_3118f
|
|
call BankSwitch
|
|
ld a, [wCurrentMap]
|
|
ld [$d4e3], a
|
|
xor a
|
|
ld [$d4e2], a
|
|
ret
|
|
|
|
RedStageInitialMaps: ; 0x16605
|
|
db PALLET_TOWN
|
|
db VIRIDIAN_FOREST
|
|
db PEWTER_CITY
|
|
db CERULEAN_CITY
|
|
db VERMILION_SEASIDE
|
|
db ROCK_MOUNTAIN
|
|
db LAVENDER_TOWN
|
|
|
|
INCBIN "baserom.gbc",$1660c,$175f5 - $1660c
|
|
|
|
DrawTimer: ; 0x175f5
|
|
; Loads the OAM data for the timer in the top-right corner of the screen.
|
|
ld a, [wTimerMinutes]
|
|
and $f
|
|
call DrawTimerDigit
|
|
ld a, $a ; colon
|
|
call DrawTimerDigit
|
|
ld a, [wTimerSeconds]
|
|
swap a
|
|
and $f
|
|
call DrawTimerDigit ; tens digit of the minutes
|
|
ld a, [wTimerSeconds]
|
|
and $f
|
|
call DrawTimerDigit ; ones digit of the minutes
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$17615,$17625 - $17615
|
|
|
|
DrawTimerDigit: ; 0x17625
|
|
add $b1 ; the timer digits' OAM ids start at $b1
|
|
call LoadOAMData
|
|
ld a, b
|
|
add $8
|
|
ld b, a
|
|
ret
|
|
|
|
Func_1762f: ; 0x1762f
|
|
ld de, $600c
|
|
ld a, [$d4ac]
|
|
cp $6
|
|
ret nc
|
|
ld de, $0000
|
|
bit 0, a
|
|
ret z
|
|
ld de, $3004
|
|
ld a, [$d54b]
|
|
and a
|
|
ret z
|
|
ld a, [$d550]
|
|
and a
|
|
ret nz
|
|
ld de, $3008
|
|
ret
|
|
|
|
Func_1764f: ; 0x1764f
|
|
push bc
|
|
push de
|
|
cp [hl]
|
|
jr z, .asm_1765d
|
|
push af
|
|
push hl
|
|
add d
|
|
call Func_17665
|
|
pop hl
|
|
pop af
|
|
ld [hl], a
|
|
.asm_1765d
|
|
inc hl
|
|
pop de
|
|
ld a, d
|
|
add $10
|
|
ld d, a
|
|
pop bc
|
|
ret
|
|
|
|
Func_17665: ; 0x17665
|
|
ld c, a
|
|
ld b, $0
|
|
sla c
|
|
rl b
|
|
ld hl, $7679 ; todo
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, $5
|
|
call Func_10aa
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$17679,$17e81 - $17679
|
|
|
|
Func_17e81: ; 0x17e81
|
|
ld a, [$d548]
|
|
and a
|
|
ret z
|
|
ld hl, wBallSpin
|
|
ld a, [wBallRotation]
|
|
add [hl]
|
|
ld [wBallRotation], a
|
|
ld a, [wBallXPos]
|
|
inc a
|
|
ld hl, hBoardXShift
|
|
sub [hl]
|
|
ld b, a
|
|
ld a, [wBallYPos]
|
|
inc a
|
|
sub $10
|
|
ld hl, hBoardYShift
|
|
sub [hl]
|
|
ld c, a
|
|
ld a, [wBallRotation]
|
|
srl a
|
|
srl a
|
|
srl a ; divide wBallRotation by 8 because
|
|
srl a ; there are 8 frames of the ball spinning
|
|
and $7
|
|
add $0
|
|
call LoadOAMData
|
|
ld a, [$fffe]
|
|
and a
|
|
ret nz
|
|
ld a, [$fffe]
|
|
and a
|
|
ret nz
|
|
ld a, [$fffb]
|
|
and a
|
|
ret nz
|
|
ld a, [$d4c5]
|
|
inc a
|
|
ld hl, hBoardXShift
|
|
sub [hl]
|
|
ld b, a
|
|
ld a, [$d4c6]
|
|
inc a
|
|
sub $10
|
|
ld hl, hBoardYShift
|
|
sub [hl]
|
|
ld c, a
|
|
ld a, [$d4c7]
|
|
srl a
|
|
srl a
|
|
srl a
|
|
srl a
|
|
and $7
|
|
add $0
|
|
call LoadOAMData
|
|
ld a, [wBallXPos]
|
|
ld [$d4c5], a
|
|
ld a, [wBallYPos]
|
|
ld [$d4c6], a
|
|
ld a, [wBallRotation]
|
|
ld [$d4c7], a
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$17efb,$18000 - $17efb
|
|
|
|
|
|
SECTION "bank6", ROMX, BANK[$6]
|
|
|
|
INCBIN "baserom.gbc",$18000,$1c000 - $18000 ; 0x18000
|
|
|
|
|
|
SECTION "bank7", ROMX, BANK[$7]
|
|
|
|
INCBIN "baserom.gbc",$1c000,$1c846 - $1c000
|
|
|
|
.showNextMap
|
|
ld a, [$d4e1]
|
|
inc a
|
|
cp $7 ; number of maps to choose from at the start of play
|
|
jr c, .gotMapId
|
|
xor a ; wrap around to 0
|
|
.gotMapId
|
|
ld [$d4e1], a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, BlueStageInitialMaps
|
|
add hl, bc
|
|
ld a, [hl]
|
|
ld [wCurrentMap], a
|
|
push af
|
|
ld de, $0048
|
|
call PlaySoundEffect
|
|
pop af
|
|
add $29 ; map billboard pictures start at the $29th entry in BillboardPicturePointers
|
|
ld [$ff8a], a
|
|
ld a, Bank(LoadBillboardPicture)
|
|
ld hl, LoadBillboardPicture
|
|
call BankSwitch
|
|
ld b, $20 ; number of frames to delay before the next map is shown
|
|
.waitOnCurrentMap
|
|
push bc
|
|
ld [$ff8a], a
|
|
ld a, Bank(Func_eeee)
|
|
ld hl, Func_eeee
|
|
call BankSwitch
|
|
ld hl, wKeyConfigBallStart
|
|
call IsKeyPressed
|
|
jr nz, .ballStartKeyPressed
|
|
pop bc
|
|
dec b
|
|
jr nz, .waitOnCurrentMap
|
|
jr .showNextMap
|
|
.ballStartKeyPressed
|
|
pop bc
|
|
ld [$ff8a], a
|
|
ld a, Bank(Func_30253)
|
|
ld hl, Func_30253
|
|
call BankSwitch
|
|
ld bc, $2cd1
|
|
ld [$ff8a], a
|
|
ld a, Bank(Func_3118f)
|
|
ld hl, Func_3118f
|
|
call BankSwitch
|
|
ld a, [wCurrentMap]
|
|
ld [$d4e3], a
|
|
xor a
|
|
ld [$d4e2], a
|
|
ret
|
|
|
|
BlueStageInitialMaps: ; 0x1c8af
|
|
db VIRIDIAN_CITY
|
|
db VIRIDIAN_FOREST
|
|
db MT_MOON
|
|
db CERULEAN_CITY
|
|
db VERMILION_STREETS
|
|
db ROCK_MOUNTAIN
|
|
db CELADON_CITY
|
|
|
|
INCBIN "baserom.gbc",$1c8b6,$20000 - $1c8b6
|
|
|
|
|
|
SECTION "bank8", ROMX, BANK[$8]
|
|
|
|
INCBIN "baserom.gbc",$20000,$24000 - $20000 ; 0x20000
|
|
|
|
|
|
SECTION "bank9", ROMX, BANK[$9]
|
|
|
|
INCBIN "baserom.gbc",$24000,$28000 - $24000 ; 0x24000
|
|
|
|
|
|
SECTION "banka", ROMX, BANK[$a]
|
|
|
|
INCBIN "baserom.gbc",$28000,$2c000 - $28000 ; 0x28000
|
|
|
|
|
|
SECTION "bankb", ROMX, BANK[$b]
|
|
|
|
INCBIN "baserom.gbc",$2c000,$30000 - $2c000 ; 0x2c000
|
|
|
|
|
|
SECTION "bankc", ROMX, BANK[$c]
|
|
|
|
INCBIN "baserom.gbc",$30000,$30253 - $30000 ; 0x30000
|
|
|
|
Func_30253: ; 0x30253
|
|
ld a, [wCurrentMap]
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
push bc
|
|
ld hl, PointerTable_3027a
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, $c
|
|
call Func_10aa
|
|
pop bc
|
|
ld a, [$fffe]
|
|
and a
|
|
ret z
|
|
ld hl, PointerTable_30ceb
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, $c
|
|
call Func_10aa
|
|
ret
|
|
|
|
PointerTable_3027a: ; 0x3027a
|
|
dw Data_302b0
|
|
dw Data_302c1
|
|
dw Data_302d2
|
|
dw Data_302e3
|
|
dw Data_302f4
|
|
dw Data_30305
|
|
dw Data_30316
|
|
dw Data_30327
|
|
dw Data_30338
|
|
dw Data_30349
|
|
dw Data_3035a
|
|
dw Data_3036b
|
|
dw Data_3037c
|
|
dw Data_3038d
|
|
dw Data_3039e
|
|
dw Data_303af
|
|
dw Data_303c0
|
|
dw Data_303d1
|
|
dw Data_303e2
|
|
dw Data_303f3
|
|
dw Data_30404
|
|
dw Data_30415
|
|
dw Data_30426
|
|
dw Data_30437
|
|
dw Data_30448
|
|
dw Data_30459
|
|
dw Data_3046a
|
|
|
|
Data_302b0: ; 0x302b0
|
|
db $08, $7B, $44, $85, $44, $8F, $44, $99, $44, $A3, $44, $AD, $44, $B7, $44, $C1, $44
|
|
Data_302c1: ; 0x302c1
|
|
db $08, $CB, $44, $D5, $44, $DF, $44, $E9, $44, $F3, $44, $FD, $44, $07, $45, $11, $45
|
|
Data_302d2: ; 0x302d2
|
|
db $08, $1B, $45, $25, $45, $2F, $45, $39, $45, $43, $45, $4D, $45, $57, $45, $61, $45
|
|
Data_302e3: ; 0x302e3
|
|
db $08, $6B, $45, $75, $45, $7F, $45, $89, $45, $93, $45, $9D, $45, $A7, $45, $B1, $45
|
|
Data_302f4: ; 0x302f4
|
|
db $08, $BB, $45, $C5, $45, $CF, $45, $D9, $45, $E3, $45, $ED, $45, $F7, $45, $01, $46
|
|
Data_30305: ; 0x30305
|
|
db $08, $0B, $46, $15, $46, $1F, $46, $29, $46, $33, $46, $3D, $46, $47, $46, $51, $46
|
|
Data_30316: ; 0x30316
|
|
db $08, $5B, $46, $65, $46, $6F, $46, $79, $46, $83, $46, $8D, $46, $97, $46, $A1, $46
|
|
Data_30327: ; 0x30327
|
|
db $08, $AB, $46, $B5, $46, $BF, $46, $C9, $46, $D3, $46, $DD, $46, $E7, $46, $F1, $46
|
|
Data_30338: ; 0x30338
|
|
db $08, $FB, $46, $05, $47, $0F, $47, $19, $47, $23, $47, $2D, $47, $37, $47, $41, $47
|
|
Data_30349: ; 0x30349
|
|
db $08, $4B, $47, $55, $47, $5F, $47, $69, $47, $73, $47, $7D, $47, $87, $47, $91, $47
|
|
Data_3035a: ; 0x3035a
|
|
db $08, $9B, $47, $A5, $47, $AF, $47, $B9, $47, $C3, $47, $CD, $47, $D7, $47, $E1, $47
|
|
Data_3036b: ; 0x3036b
|
|
db $08, $EB, $47, $F5, $47, $FF, $47, $09, $48, $13, $48, $1D, $48, $27, $48, $31, $48
|
|
Data_3037c: ; 0x3037c
|
|
db $08, $3B, $48, $45, $48, $4F, $48, $59, $48, $63, $48, $6D, $48, $77, $48, $81, $48
|
|
Data_3038d: ; 0x3038d
|
|
db $08, $8B, $48, $95, $48, $9F, $48, $A9, $48, $B3, $48, $BD, $48, $C7, $48, $D1, $48
|
|
Data_3039e: ; 0x3039e
|
|
db $08, $DB, $48, $E5, $48, $EF, $48, $F9, $48, $03, $49, $0D, $49, $17, $49, $21, $49
|
|
Data_303af: ; 0x303af
|
|
db $08, $2B, $49, $35, $49, $3F, $49, $49, $49, $53, $49, $5D, $49, $67, $49, $71, $49
|
|
Data_303c0: ; 0x303c0
|
|
db $08, $7B, $49, $85, $49, $8F, $49, $99, $49, $A3, $49, $AD, $49, $B7, $49, $C1, $49
|
|
Data_303d1: ; 0x303d1
|
|
db $08, $CB, $49, $D5, $49, $DF, $49, $E9, $49, $F3, $49, $FD, $49, $07, $4A, $11, $4A
|
|
Data_303e2: ; 0x303e2
|
|
db $08, $1B, $4A, $25, $4A, $2F, $4A, $39, $4A, $43, $4A, $4D, $4A, $57, $4A, $61, $4A
|
|
Data_303f3: ; 0x303f3
|
|
db $08, $6B, $4A, $75, $4A, $7F, $4A, $89, $4A, $93, $4A, $9D, $4A, $A7, $4A, $B1, $4A
|
|
Data_30404: ; 0x30404
|
|
db $08, $BB, $4A, $C5, $4A, $CF, $4A, $D9, $4A, $E3, $4A, $ED, $4A, $F7, $4A, $01, $4B
|
|
Data_30415: ; 0x30415
|
|
db $08, $0B, $4B, $15, $4B, $1F, $4B, $29, $4B, $33, $4B, $3D, $4B, $47, $4B, $51, $4B
|
|
Data_30426: ; 0x30426
|
|
db $08, $5B, $4B, $65, $4B, $6F, $4B, $79, $4B, $83, $4B, $8D, $4B, $97, $4B, $A1, $4B
|
|
Data_30437: ; 0x30437
|
|
db $08, $AB, $4B, $B5, $4B, $BF, $4B, $C9, $4B, $D3, $4B, $DD, $4B, $E7, $4B, $F1, $4B
|
|
Data_30448: ; 0x30448
|
|
db $08, $FB, $4B, $05, $4C, $0F, $4C, $19, $4C, $23, $4C, $2D, $4C, $37, $4C, $41, $4C
|
|
Data_30459: ; 0x30459
|
|
db $08, $4B, $4C, $55, $4C, $5F, $4C, $69, $4C, $73, $4C, $7D, $4C, $87, $4C, $91, $4C
|
|
Data_3046a: ; 0x3046a
|
|
db $08, $9B, $4C, $A5, $4C, $AF, $4C, $B9, $4C, $C3, $4C, $CD, $4C, $D7, $4C, $E1, $4C
|
|
|
|
INCBIN "baserom.gbc",$3047b,$30ceb - $3047b
|
|
|
|
PointerTable_30ceb: ; 0x30ceb
|
|
dw Data_30d21
|
|
dw Data_30d26
|
|
dw Data_30d2b
|
|
dw Data_30d30
|
|
dw Data_30d35
|
|
dw Data_30d3a
|
|
dw Data_30d3f
|
|
dw Data_30d44
|
|
dw Data_30d49
|
|
dw Data_30d4e
|
|
dw Data_30d53
|
|
dw Data_30d58
|
|
dw Data_30d5d
|
|
dw Data_30d62
|
|
dw Data_30d67
|
|
dw Data_30d6c
|
|
dw Data_30d71
|
|
dw Data_30d76
|
|
dw Data_30d7b
|
|
dw Data_30d80
|
|
dw Data_30d85
|
|
dw Data_30d8a
|
|
dw Data_30d8f
|
|
dw Data_30d94
|
|
dw Data_30d99
|
|
dw Data_30d9e
|
|
dw Data_30da3
|
|
|
|
Data_30d21: ; 0x30d21
|
|
db $02, $A8, $4D, $B1, $4D
|
|
Data_30d26: ; 0x30d26
|
|
db $02, $CD, $4D, $D6, $4D
|
|
Data_30d2b: ; 0x30d2b
|
|
db $02, $F2, $4D, $FB, $4D
|
|
Data_30d30: ; 0x30d30
|
|
db $02, $17, $4E, $20, $4E
|
|
Data_30d35: ; 0x30d35
|
|
db $02, $3C, $4E, $45, $4E
|
|
Data_30d3a: ; 0x30d3a
|
|
db $02, $61, $4E, $6A, $4E
|
|
Data_30d3f: ; 0x30d3f
|
|
db $02, $86, $4E, $8F, $4E
|
|
Data_30d44: ; 0x30d44
|
|
db $02, $AB, $4E, $B4, $4E
|
|
Data_30d49: ; 0x30d49
|
|
db $02, $D0, $4E, $D9, $4E
|
|
Data_30d4e: ; 0x30d4e
|
|
db $02, $F5, $4E, $FE, $4E
|
|
Data_30d53: ; 0x30d53
|
|
db $02, $1A, $4F, $23, $4F
|
|
Data_30d58: ; 0x30d58
|
|
db $02, $3F, $4F, $48, $4F
|
|
Data_30d5d: ; 0x30d5d
|
|
db $02, $64, $4F, $6D, $4F
|
|
Data_30d62: ; 0x30d62
|
|
db $02, $89, $4F, $92, $4F
|
|
Data_30d67: ; 0x30d67
|
|
db $02, $AE, $4F, $B7, $4F
|
|
Data_30d6c: ; 0x30d6c
|
|
db $02, $D3, $4F, $DC, $4F
|
|
Data_30d71: ; 0x30d71
|
|
db $02, $F8, $4F, $01, $50
|
|
Data_30d76: ; 0x30d76
|
|
db $02, $1D, $50, $26, $50
|
|
Data_30d7b: ; 0x30d7b
|
|
db $02, $42, $50, $4B, $50
|
|
Data_30d80: ; 0x30d80
|
|
db $02, $67, $50, $70, $50
|
|
Data_30d85: ; 0x30d85
|
|
db $02, $8C, $50, $95, $50
|
|
Data_30d8a: ; 0x30d8a
|
|
db $02, $B1, $50, $BA, $50
|
|
Data_30d8f: ; 0x30d8f
|
|
db $02, $D6, $50, $DF, $50
|
|
Data_30d94: ; 0x30d94
|
|
db $02, $FB, $50, $04, $51
|
|
Data_30d99: ; 0x30d99
|
|
db $02, $20, $51, $29, $51
|
|
Data_30d9e: ; 0x30d9e
|
|
db $02, $45, $51, $4E, $51
|
|
Data_30da3: ; 0x30da3
|
|
db $02, $6A, $51, $73, $51
|
|
|
|
INCBIN "baserom.gbc",$30da8,$3118f - $30da8
|
|
|
|
Func_3118f: ; 0x3118f
|
|
push bc
|
|
call Func_30e8
|
|
call Func_30db
|
|
ld a, [wCurrentMap]
|
|
sla a
|
|
ld c, a
|
|
ld b, $0
|
|
ld hl, $2ce3 ; todo
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld a, [hli]
|
|
ld d, a
|
|
ld hl, $d5d4
|
|
call Func_32aa
|
|
pop de
|
|
ld hl, $d5cc
|
|
call Func_32aa
|
|
ret
|
|
|
|
INCBIN "baserom.gbc",$311b4,$33fff - $311b4
|
|
|
|
|
|
SECTION "bankd", ROMX, BANK[$d]
|
|
|
|
SlotOnPic: ; 0x34000
|
|
INCBIN "gfx/billboard/slot/slot_on.2bpp"
|
|
SlotOffPic: ; 0x34180
|
|
INCBIN "gfx/billboard/slot/slot_off.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$34300,$38000 - $34300 ; 0x34000
|
|
|
|
|
|
SECTION "banke", ROMX, BANK[$e]
|
|
|
|
INCBIN "baserom.gbc",$38000,$3c000 - $38000 ; 0x38000
|
|
|
|
|
|
SECTION "bankf", ROMX, BANK[$f]
|
|
|
|
INCBIN "baserom.gbc",$3c000,$3cca2 - $3c000
|
|
|
|
SongHeaderPointers0F: ; 0x3cca2
|
|
dw Music_Nothing0F
|
|
dw Music_BlueField
|
|
dw Music_CatchEmRed
|
|
dw Music_HurryUpRed
|
|
dw Music_Pokedex
|
|
dw Music_GastlyInTheGraveyard
|
|
dw Music_HaunterInTheGraveyard
|
|
dw Music_GengarInTheGraveyard
|
|
; 0x3ccb2
|
|
|
|
INCLUDE "audio/music/nothing0f.asm"
|
|
INCLUDE "audio/music/bluefield.asm"
|
|
INCLUDE "audio/music/catchemred.asm"
|
|
INCLUDE "audio/music/pokedex.asm"
|
|
INCLUDE "audio/music/hurryupred.asm"
|
|
INCLUDE "audio/music/gastlyinthegraveyard.asm"
|
|
INCLUDE "audio/music/haunterinthegraveyard.asm"
|
|
INCLUDE "audio/music/gengarinthegraveyard.asm"
|
|
|
|
INCBIN "baserom.gbc",$3e3ce,$40000 - $3e3ce
|
|
|
|
|
|
SECTION "bank10", ROMX, BANK[$10]
|
|
|
|
INCBIN "baserom.gbc",$40000,$40ca2 - $40000
|
|
|
|
SongHeaderPointers10: ; 0x40ca2
|
|
dw Music_Nothing10
|
|
dw Music_RedField
|
|
dw Music_CatchEmBlue
|
|
dw Music_HurryUpBlue
|
|
dw Music_HiScore
|
|
dw Music_GameOver
|
|
; 0x40cae
|
|
|
|
INCLUDE "audio/music/nothing10.asm"
|
|
INCLUDE "audio/music/redfield.asm"
|
|
INCLUDE "audio/music/catchemblue.asm"
|
|
INCLUDE "audio/music/hiscore.asm"
|
|
INCLUDE "audio/music/gameover.asm"
|
|
INCLUDE "audio/music/hurryupblue.asm"
|
|
|
|
INCBIN "baserom.gbc",$4255b,$44000 - $4255b
|
|
|
|
|
|
SECTION "bank11", ROMX, BANK[$11]
|
|
|
|
INCBIN "baserom.gbc",$44000,$44ca2 - $44000
|
|
|
|
SongHeaderPointers11: ; 0x44ca2
|
|
dw Music_Nothing11
|
|
dw Music_WhackTheDiglett
|
|
dw Music_WhackTheDugtrio
|
|
dw Music_SeelStage
|
|
dw Music_Title
|
|
; 0x44cac
|
|
|
|
INCLUDE "audio/music/nothing11.asm"
|
|
INCLUDE "audio/music/whackthediglett.asm"
|
|
INCLUDE "audio/music/whackthedugtrio.asm"
|
|
INCLUDE "audio/music/seelstage.asm"
|
|
INCLUDE "audio/music/title.asm"
|
|
|
|
INCBIN "baserom.gbc",$462d3,$48000 - $462d3
|
|
|
|
|
|
SECTION "bank12", ROMX, BANK[$12]
|
|
|
|
INCBIN "baserom.gbc",$48000,$48ca2 - $48000
|
|
|
|
SongHeaderPointers12: ; 0x48ca2
|
|
dw Music_Nothing12
|
|
dw Music_MewtwoStage
|
|
dw Music_Options
|
|
dw Music_FieldSelect
|
|
dw Music_MeowthStage
|
|
; 0x48cac
|
|
|
|
INCLUDE "audio/music/nothing12.asm"
|
|
INCLUDE "audio/music/mewtwostage.asm"
|
|
INCLUDE "audio/music/options.asm"
|
|
INCLUDE "audio/music/fieldselect.asm"
|
|
INCLUDE "audio/music/meowthstage.asm"
|
|
|
|
INCBIN "baserom.gbc",$49c04,$4c000 - $49c04
|
|
|
|
|
|
SECTION "bank13", ROMX, BANK[$13]
|
|
|
|
INCBIN "baserom.gbc",$4c000,$4cca2 - $4c000
|
|
|
|
SongHeaderPointers13: ; 0x4cca2
|
|
dw Music_Nothing13
|
|
dw Music_EndCredits
|
|
dw Music_NameEntry
|
|
; 0x4cca8
|
|
|
|
INCLUDE "audio/music/nothing13.asm"
|
|
INCLUDE "audio/music/endcredits.asm"
|
|
INCLUDE "audio/music/nameentry.asm"
|
|
|
|
INCBIN "baserom.gbc",$4def4,$50000 - $4def4
|
|
|
|
|
|
SECTION "bank14", ROMX, BANK[$14]
|
|
|
|
INCBIN "baserom.gbc",$50000,$54000 - $50000 ; 0x50000
|
|
|
|
|
|
SECTION "bank15", ROMX, BANK[$15]
|
|
|
|
INCBIN "baserom.gbc",$54000,$58000 - $54000 ; 0x54000
|
|
|
|
|
|
SECTION "bank16", ROMX, BANK[$16]
|
|
|
|
BallSaver30SecondsOnPic: ; 0x58000
|
|
INCBIN "gfx/billboard/slot/30secondballsaver_on.2bpp"
|
|
BallSaver30SecondsOffPic: ; 0x58180
|
|
INCBIN "gfx/billboard/slot/30secondballsaver_off.2bpp"
|
|
BallSaver60SecondsOnPic: ; 0x58300
|
|
INCBIN "gfx/billboard/slot/60secondballsaver_on.2bpp"
|
|
BallSaver60SecondsOffPic: ; 0x580480
|
|
INCBIN "gfx/billboard/slot/60secondballsaver_off.2bpp"
|
|
BallSaver90SecondsOnPic: ; 0x58600
|
|
INCBIN "gfx/billboard/slot/90secondballsaver_on.2bpp"
|
|
BallSaver90SecondsOffPic: ; 0x58780
|
|
INCBIN "gfx/billboard/slot/90secondballsaver_off.2bpp"
|
|
PikachuSaverOnPic: ; 0x58900
|
|
INCBIN "gfx/billboard/slot/pikachusaver_on.2bpp"
|
|
PikachuSaverOffPic: ; 0x58a80
|
|
INCBIN "gfx/billboard/slot/pikachusaver_off.2bpp"
|
|
ExtraBallOnPic: ; 0x58c00
|
|
INCBIN "gfx/billboard/slot/extraball_on.2bpp"
|
|
ExtraBallOffPic: ; 0x58d80
|
|
INCBIN "gfx/billboard/slot/extraball_off.2bpp"
|
|
SmallRewardOnPic: ; 0x58f00
|
|
INCBIN "gfx/billboard/slot/small_on.2bpp"
|
|
SmallRewardOffPic: ; 0x59080
|
|
INCBIN "gfx/billboard/slot/small_off.2bpp"
|
|
BigRewardOnPic: ; 0x59200
|
|
INCBIN "gfx/billboard/slot/big_on.2bpp"
|
|
BigRewardOffPic: ; 0x59380
|
|
INCBIN "gfx/billboard/slot/big_off.2bpp"
|
|
CatchEmModeOnPic: ; 0x59500
|
|
INCBIN "gfx/billboard/slot/catchem_on.2bpp"
|
|
CatchEmModeOffPic: ; 0x59680
|
|
INCBIN "gfx/billboard/slot/catchem_off.2bpp"
|
|
EvolutionModeOnPic: ; 0x59800
|
|
INCBIN "gfx/billboard/slot/evolution_on.2bpp"
|
|
EvolutionModeOffPic: ; 0x59980
|
|
INCBIN "gfx/billboard/slot/evolution_off.2bpp"
|
|
GreatBallOnPic: ; 0x59b00
|
|
INCBIN "gfx/billboard/slot/greatball_on.2bpp"
|
|
GreatBallOffPic: ; 0x59c80
|
|
INCBIN "gfx/billboard/slot/greatball_off.2bpp"
|
|
UltraBallOnPic: ; 0x59e00
|
|
INCBIN "gfx/billboard/slot/ultraball_on.2bpp"
|
|
UltraBallOffPic: ; 0x59f80
|
|
INCBIN "gfx/billboard/slot/ultraball_off.2bpp"
|
|
MasterBallOnPic: ; 0x5a100
|
|
INCBIN "gfx/billboard/slot/masterball_on.2bpp"
|
|
MasterBallOffPic: ; 0x5a280
|
|
INCBIN "gfx/billboard/slot/masterball_off.2bpp"
|
|
BonusMultiplierOnPic: ; 0x5a400
|
|
INCBIN "gfx/billboard/slot/bonusmultiplier_on.2bpp"
|
|
BonusMultiplierOffPic: ; 0x5a580
|
|
INCBIN "gfx/billboard/slot/bonusmultiplier_off.2bpp"
|
|
HurryUpOnPic: ; 0x5a700
|
|
INCBIN "gfx/billboard/hurryup_on.2bpp"
|
|
HurryUpOffPic: ; 0x5a880
|
|
INCBIN "gfx/billboard/hurryup_off.2bpp"
|
|
HurryUp2OnPic: ; 0x5aa00
|
|
INCBIN "gfx/billboard/hurryup2_on.2bpp"
|
|
HurryUp2OffPic: ; 0x5ab80
|
|
INCBIN "gfx/billboard/hurryup2_off.2bpp"
|
|
GoToNextOnPic: ; 0x5ad00
|
|
INCBIN "gfx/billboard/gotonext_on.2bpp"
|
|
GoToNextOffPic: ; 0x5ae80
|
|
INCBIN "gfx/billboard/gotonext_off.2bpp"
|
|
GoToGengarBonusOnPic: ; 0x5b000
|
|
INCBIN "gfx/billboard/bonus_stages/gotogengarbonus_on.2bpp"
|
|
GoToGengarBonusOffPic: ; 0x5b180
|
|
INCBIN "gfx/billboard/bonus_stages/gotogengarbonus_off.2bpp"
|
|
GoToMewtwoBonusOnPic: ; 0x5b300
|
|
INCBIN "gfx/billboard/bonus_stages/gotomewtwobonus_on.2bpp"
|
|
GoToMewtwoBonusOffPic: ; 0x5b480
|
|
INCBIN "gfx/billboard/bonus_stages/gotomewtwobonus_off.2bpp"
|
|
GoToMeowthBonusOnPic: ; 0x5b600
|
|
INCBIN "gfx/billboard/bonus_stages/gotomeowthbonus_on.2bpp"
|
|
GoToMeowthBonusOffPic: ; 0x5b780
|
|
INCBIN "gfx/billboard/bonus_stages/gotomeowthbonus_off.2bpp"
|
|
GoToDiglettBonusOnPic: ; 0x5b900
|
|
INCBIN "gfx/billboard/bonus_stages/gotodiglettbonus_on.2bpp"
|
|
GoToDiglettBonusOffPic: ; 0x5ba80
|
|
INCBIN "gfx/billboard/bonus_stages/gotodiglettbonus_off.2bpp"
|
|
GoToSeelBonusOnPic: ; 0x5bc00
|
|
INCBIN "gfx/billboard/bonus_stages/gotoseelbonus_on.2bpp"
|
|
GoToSeelBonusOffPic: ; 0x5bd80
|
|
INCBIN "gfx/billboard/bonus_stages/gotoseelbonus_off.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$5bf00,$5c000 - $5bf00 ; 0x5bf00
|
|
|
|
|
|
SECTION "bank17", ROMX, BANK[$17]
|
|
|
|
SmallReward100PointsOnPic: ; 0x5c000
|
|
INCBIN "gfx/billboard/slot/100points_on.2bpp"
|
|
SmallReward100PointsOffPic: ; 0x5c180
|
|
INCBIN "gfx/billboard/slot/100points_off.2bpp"
|
|
SmallReward200PointsOnPic: ; 0x5c300
|
|
INCBIN "gfx/billboard/slot/200points_on.2bpp"
|
|
SmallReward200PointsOffPic: ; 0x54800
|
|
INCBIN "gfx/billboard/slot/200points_off.2bpp"
|
|
SmallReward300PointsOnPic: ; 0x5c600
|
|
INCBIN "gfx/billboard/slot/300points_on.2bpp"
|
|
SmallReward300PointsOffPic: ; 0x5c780
|
|
INCBIN "gfx/billboard/slot/300points_off.2bpp"
|
|
SmallReward400PointsOnPic: ; 0x5c900
|
|
INCBIN "gfx/billboard/slot/400points_on.2bpp"
|
|
SmallReward400PointsOffPic: ; 0x5ca80
|
|
INCBIN "gfx/billboard/slot/400points_off.2bpp"
|
|
SmallReward500PointsOnPic: ; 0x5cc00
|
|
INCBIN "gfx/billboard/slot/500points_on.2bpp"
|
|
SmallReward500PointsOffPic: ; 0x5cd80
|
|
INCBIN "gfx/billboard/slot/500points_off.2bpp"
|
|
SmallReward600PointsOnPic: ; 0x5cf00
|
|
INCBIN "gfx/billboard/slot/600points_on.2bpp"
|
|
SmallReward600PointsOffPic: ; 0x5d080
|
|
INCBIN "gfx/billboard/slot/600points_off.2bpp"
|
|
SmallReward700PointsOnPic: ; 0x5d200
|
|
INCBIN "gfx/billboard/slot/700points_on.2bpp"
|
|
SmallReward700PointsOffPic: ; 0x5d380
|
|
INCBIN "gfx/billboard/slot/700points_off.2bpp"
|
|
SmallReward800PointsOnPic: ; 0x5d500
|
|
INCBIN "gfx/billboard/slot/800points_on.2bpp"
|
|
SmallReward800PointsOffPic: ; 0x5d680
|
|
INCBIN "gfx/billboard/slot/800points_off.2bpp"
|
|
SmallReward900PointsOnPic: ; 0x5d800
|
|
INCBIN "gfx/billboard/slot/900points_on.2bpp"
|
|
SmallReward900PointsOffPic: ; 0x5d980
|
|
INCBIN "gfx/billboard/slot/900points_off.2bpp"
|
|
BigReward1000000PointsOnPic: ; 0x5db00
|
|
INCBIN "gfx/billboard/slot/1000000points_on.2bpp"
|
|
BigReward1000000PointsOffPic: ; 0x5dc80
|
|
INCBIN "gfx/billboard/slot/1000000points_off.2bpp"
|
|
BigReward2000000PointsOnPic: ; 0x5de00
|
|
INCBIN "gfx/billboard/slot/2000000points_on.2bpp"
|
|
BigReward2000000PointsOffPic: ; 0x5df80
|
|
INCBIN "gfx/billboard/slot/2000000points_off.2bpp"
|
|
BigReward3000000PointsOnPic: ; 0x5e100
|
|
INCBIN "gfx/billboard/slot/3000000points_on.2bpp"
|
|
BigReward3000000PointsOffPic: ; 0x5e280
|
|
INCBIN "gfx/billboard/slot/3000000points_off.2bpp"
|
|
BigReward4000000PointsOnPic: ; 0x5e400
|
|
INCBIN "gfx/billboard/slot/4000000points_on.2bpp"
|
|
BigReward4000000PointsOffPic: ; 0x5e580
|
|
INCBIN "gfx/billboard/slot/4000000points_off.2bpp"
|
|
BigReward5000000PointsOnPic: ; 0x5e700
|
|
INCBIN "gfx/billboard/slot/5000000points_on.2bpp"
|
|
BigReward5000000PointsOffPic: ; 0x5e880
|
|
INCBIN "gfx/billboard/slot/5000000points_off.2bpp"
|
|
BigReward6000000PointsOnPic: ; 0x5ea00
|
|
INCBIN "gfx/billboard/slot/6000000points_on.2bpp"
|
|
BigReward6000000PointsOffPic: ; 0x5eb80
|
|
INCBIN "gfx/billboard/slot/6000000points_off.2bpp"
|
|
BigReward7000000PointsOnPic: ; 0x5ed00
|
|
INCBIN "gfx/billboard/slot/7000000points_on.2bpp"
|
|
BigReward7000000PointsOffPic: ; 0x5ee80
|
|
INCBIN "gfx/billboard/slot/7000000points_off.2bpp"
|
|
BigReward8000000PointsOnPic: ; 0x5f000
|
|
INCBIN "gfx/billboard/slot/8000000points_on.2bpp"
|
|
BigReward8000000PointsOffPic: ; 0x5f180
|
|
INCBIN "gfx/billboard/slot/8000000points_off.2bpp"
|
|
BigReward9000000PointsOnPic: ; 0x5f300
|
|
INCBIN "gfx/billboard/slot/9000000points_on.2bpp"
|
|
BigReward9000000PointsOffPic: ; 0x5f480
|
|
INCBIN "gfx/billboard/slot/9000000points_off.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$5f600,$60000 - $5f600 ; 0x5f600
|
|
|
|
|
|
SECTION "bank18", ROMX, BANK[$18]
|
|
|
|
VenomothPic: ; 0x60000
|
|
INCBIN "gfx/billboard/mon_pics/venomoth.2bpp"
|
|
VenomothSilhouettePic: ; 0x60180
|
|
INCBIN "gfx/billboard/mon_silhouettes/venomoth.2bpp"
|
|
DiglettPic: ; 0x60300
|
|
INCBIN "gfx/billboard/mon_pics/diglett.2bpp"
|
|
DiglettSilhouettePic: ; 0x60480
|
|
INCBIN "gfx/billboard/mon_silhouettes/diglett.2bpp"
|
|
DugtrioPic: ; 0x60600
|
|
INCBIN "gfx/billboard/mon_pics/dugtrio.2bpp"
|
|
DugtrioSilhouettePic: ; 0x60780
|
|
INCBIN "gfx/billboard/mon_silhouettes/dugtrio.2bpp"
|
|
MeowthPic: ; 0x60900
|
|
INCBIN "gfx/billboard/mon_pics/meowth.2bpp"
|
|
MeowthSilhouettePic: ; 0x60a80
|
|
INCBIN "gfx/billboard/mon_silhouettes/meowth.2bpp"
|
|
PersianPic: ; 0x60c00
|
|
INCBIN "gfx/billboard/mon_pics/persian.2bpp"
|
|
PersianSilhouettePic: ; 0x60d80
|
|
INCBIN "gfx/billboard/mon_silhouettes/persian.2bpp"
|
|
PsyduckPic: ; 0x60f00
|
|
INCBIN "gfx/billboard/mon_pics/psyduck.2bpp"
|
|
PsyduckSilhouettePic: ; 0x61080
|
|
INCBIN "gfx/billboard/mon_silhouettes/psyduck.2bpp"
|
|
GolduckPic: ; 0x61200
|
|
INCBIN "gfx/billboard/mon_pics/golduck.2bpp"
|
|
GolduckSilhouettePic: ; 0x61380
|
|
INCBIN "gfx/billboard/mon_silhouettes/golduck.2bpp"
|
|
MankeyPic: ; 0x61500
|
|
INCBIN "gfx/billboard/mon_pics/mankey.2bpp"
|
|
MankeySilhouettePic: ; 0x61680
|
|
INCBIN "gfx/billboard/mon_silhouettes/mankey.2bpp"
|
|
PrimeapePic: ; 0x61800
|
|
INCBIN "gfx/billboard/mon_pics/primeape.2bpp"
|
|
PrimeapeSilhouettePic: ; 0x61980
|
|
INCBIN "gfx/billboard/mon_silhouettes/primeape.2bpp"
|
|
GrowlithePic: ; 0x61b00
|
|
INCBIN "gfx/billboard/mon_pics/growlithe.2bpp"
|
|
GrowlitheSilhouettePic: ; 0x61c80
|
|
INCBIN "gfx/billboard/mon_silhouettes/growlithe.2bpp"
|
|
ArcaninePic: ; 0x61e00
|
|
INCBIN "gfx/billboard/mon_pics/arcanine.2bpp"
|
|
ArcanineSilhouettePic: ; 0x61f80
|
|
INCBIN "gfx/billboard/mon_silhouettes/arcanine.2bpp"
|
|
PoliwagPic: ; 0x62100
|
|
INCBIN "gfx/billboard/mon_pics/poliwag.2bpp"
|
|
PoliwagSilhouettePic: ; 0x62280
|
|
INCBIN "gfx/billboard/mon_silhouettes/poliwag.2bpp"
|
|
PoliwhirlPic: ; 0x62400
|
|
INCBIN "gfx/billboard/mon_pics/poliwhirl.2bpp"
|
|
PoliwhirlSilhouettePic: ; 0x62580
|
|
INCBIN "gfx/billboard/mon_silhouettes/poliwhirl.2bpp"
|
|
PoliwrathPic: ; 0x62700
|
|
INCBIN "gfx/billboard/mon_pics/poliwrath.2bpp"
|
|
PoliwrathSilhouettePic: ; 0x62880
|
|
INCBIN "gfx/billboard/mon_silhouettes/poliwrath.2bpp"
|
|
AbraPic: ; 0x62a00
|
|
INCBIN "gfx/billboard/mon_pics/abra.2bpp"
|
|
AbraSilhouettePic: ; 0x62b80
|
|
INCBIN "gfx/billboard/mon_silhouettes/abra.2bpp"
|
|
KadabraPic: ; 0x62d00
|
|
INCBIN "gfx/billboard/mon_pics/kadabra.2bpp"
|
|
KadabraSilhouettePic: ; 0x62e80
|
|
INCBIN "gfx/billboard/mon_silhouettes/kadabra.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$63000,$64000 - $63000 ; 0x63000
|
|
|
|
|
|
SECTION "bank19", ROMX, BANK[$19]
|
|
|
|
NidorinoPic: ; 0x64000
|
|
INCBIN "gfx/billboard/mon_pics/nidorino.2bpp"
|
|
NidorinoSilhouettePic: ; 0x64180
|
|
INCBIN "gfx/billboard/mon_silhouettes/nidorino.2bpp"
|
|
NidokingPic: ; 0x64300
|
|
INCBIN "gfx/billboard/mon_pics/nidoking.2bpp"
|
|
NidokingSilhouettePic: ; 0x64480
|
|
INCBIN "gfx/billboard/mon_silhouettes/nidoking.2bpp"
|
|
ClefairyPic: ; 0x64600
|
|
INCBIN "gfx/billboard/mon_pics/clefairy.2bpp"
|
|
ClefairySilhouettePic: ; 0x64780
|
|
INCBIN "gfx/billboard/mon_silhouettes/clefairy.2bpp"
|
|
ClefablePic: ; 0x64900
|
|
INCBIN "gfx/billboard/mon_pics/clefable.2bpp"
|
|
ClefableSilhouettePic: ; 0x64a80
|
|
INCBIN "gfx/billboard/mon_silhouettes/clefable.2bpp"
|
|
VulpixPic: ; 0x64c00
|
|
INCBIN "gfx/billboard/mon_pics/vulpix.2bpp"
|
|
VulpixSilhouettePic: ; 0x64d80
|
|
INCBIN "gfx/billboard/mon_silhouettes/vulpix.2bpp"
|
|
NinetalesPic: ; 0x64f00
|
|
INCBIN "gfx/billboard/mon_pics/ninetales.2bpp"
|
|
NinetalesSilhouettePic: ; 0x65080
|
|
INCBIN "gfx/billboard/mon_silhouettes/ninetales.2bpp"
|
|
JigglypuffPic: ; 0x65200
|
|
INCBIN "gfx/billboard/mon_pics/jigglypuff.2bpp"
|
|
JigglypuffSilhouettePic: ; 0x65380
|
|
INCBIN "gfx/billboard/mon_silhouettes/jigglypuff.2bpp"
|
|
WigglytuffPic: ; 0x65500
|
|
INCBIN "gfx/billboard/mon_pics/wigglytuff.2bpp"
|
|
WigglytuffSilhouettePic: ; 0x65680
|
|
INCBIN "gfx/billboard/mon_silhouettes/wigglytuff.2bpp"
|
|
ZubatPic: ; 0x65800
|
|
INCBIN "gfx/billboard/mon_pics/zubat.2bpp"
|
|
ZubatSilhouettePic: ; 0x65980
|
|
INCBIN "gfx/billboard/mon_silhouettes/zubat.2bpp"
|
|
GolbatPic: ; 0x65b00
|
|
INCBIN "gfx/billboard/mon_pics/golbat.2bpp"
|
|
GolbatSilhouettePic: ; 0x65c80
|
|
INCBIN "gfx/billboard/mon_silhouettes/golbat.2bpp"
|
|
OddishPic: ; 0x65e00
|
|
INCBIN "gfx/billboard/mon_pics/oddish.2bpp"
|
|
OddishSilhouettePic: ; 0x65f80
|
|
INCBIN "gfx/billboard/mon_silhouettes/oddish.2bpp"
|
|
GloomPic: ; 0x66100
|
|
INCBIN "gfx/billboard/mon_pics/gloom.2bpp"
|
|
GloomSilhouettePic: ; 0x66280
|
|
INCBIN "gfx/billboard/mon_silhouettes/gloom.2bpp"
|
|
VileplumePic: ; 0x66400
|
|
INCBIN "gfx/billboard/mon_pics/vileplume.2bpp"
|
|
VileplumeSilhouettePic: ; 0x66580
|
|
INCBIN "gfx/billboard/mon_silhouettes/vileplume.2bpp"
|
|
ParasPic: ; 0x66700
|
|
INCBIN "gfx/billboard/mon_pics/paras.2bpp"
|
|
ParasSilhouettePic: ; 0x66880
|
|
INCBIN "gfx/billboard/mon_silhouettes/paras.2bpp"
|
|
ParasectPic: ; 0x66a00
|
|
INCBIN "gfx/billboard/mon_pics/parasect.2bpp"
|
|
ParasectSilhouettePic: ; 0x66b80
|
|
INCBIN "gfx/billboard/mon_silhouettes/parasect.2bpp"
|
|
VenonatPic: ; 0x66d00
|
|
INCBIN "gfx/billboard/mon_pics/venonat.2bpp"
|
|
VenonatSilhouettePic: ; 0x66e80
|
|
INCBIN "gfx/billboard/mon_silhouettes/venonat.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$67000,$68000 - $67000 ; 0x67000
|
|
|
|
|
|
SECTION "bank1a", ROMX, BANK[$1a]
|
|
|
|
ChanseyPic: ; 0x68000
|
|
INCBIN "gfx/billboard/mon_pics/chansey.2bpp"
|
|
ChanseySilhouettePic: ; 0x68180
|
|
INCBIN "gfx/billboard/mon_silhouettes/chansey.2bpp"
|
|
TangelaPic: ; 0x68300
|
|
INCBIN "gfx/billboard/mon_pics/tangela.2bpp"
|
|
TangelaSilhouettePic: ; 0x68480
|
|
INCBIN "gfx/billboard/mon_silhouettes/tangela.2bpp"
|
|
KangaskhanPic: ; 0x68600
|
|
INCBIN "gfx/billboard/mon_pics/kangaskhan.2bpp"
|
|
KangaskhanSilhouettePic: ; 0x68780
|
|
INCBIN "gfx/billboard/mon_silhouettes/kangaskhan.2bpp"
|
|
HorseaPic: ; 0x68900
|
|
INCBIN "gfx/billboard/mon_pics/horsea.2bpp"
|
|
HorseaSilhouettePic: ; 0x68a80
|
|
INCBIN "gfx/billboard/mon_silhouettes/horsea.2bpp"
|
|
SeadraPic: ; 0x68c00
|
|
INCBIN "gfx/billboard/mon_pics/seadra.2bpp"
|
|
SeadraSilhouettePic: ; 0x68d80
|
|
INCBIN "gfx/billboard/mon_silhouettes/seadra.2bpp"
|
|
GoldeenPic: ; 0x68f00
|
|
INCBIN "gfx/billboard/mon_pics/goldeen.2bpp"
|
|
GoldeenSilhouettePic: ; 0x69080
|
|
INCBIN "gfx/billboard/mon_silhouettes/goldeen.2bpp"
|
|
SeakingPic: ; 0x69200
|
|
INCBIN "gfx/billboard/mon_pics/seaking.2bpp"
|
|
SeakingSilhouettePic: ; 0x69380
|
|
INCBIN "gfx/billboard/mon_silhouettes/seaking.2bpp"
|
|
StaryuPic: ; 0x69500
|
|
INCBIN "gfx/billboard/mon_pics/staryu.2bpp"
|
|
StaryuSilhouettePic: ; 0x69680
|
|
INCBIN "gfx/billboard/mon_silhouettes/staryu.2bpp"
|
|
StarmiePic: ; 0x69800
|
|
INCBIN "gfx/billboard/mon_pics/starmie.2bpp"
|
|
StarmieSilhouettePic: ; 0x69980
|
|
INCBIN "gfx/billboard/mon_silhouettes/starmie.2bpp"
|
|
Mr_MimePic: ; 0x69b00
|
|
INCBIN "gfx/billboard/mon_pics/mr_mime.2bpp"
|
|
Mr_MimeSilhouettePic: ; 0x69c80
|
|
INCBIN "gfx/billboard/mon_silhouettes/mr_mime.2bpp"
|
|
ScytherPic: ; 0x69e00
|
|
INCBIN "gfx/billboard/mon_pics/scyther.2bpp"
|
|
ScytherSilhouettePic: ; 0x69f80
|
|
INCBIN "gfx/billboard/mon_silhouettes/scyther.2bpp"
|
|
JynxPic: ; 0x6a100
|
|
INCBIN "gfx/billboard/mon_pics/jynx.2bpp"
|
|
JynxSilhouettePic: ; 0x6a280
|
|
INCBIN "gfx/billboard/mon_silhouettes/jynx.2bpp"
|
|
ElectabuzzPic: ; 0x6a400
|
|
INCBIN "gfx/billboard/mon_pics/electabuzz.2bpp"
|
|
ElectabuzzSilhouettePic: ; 0x6a580
|
|
INCBIN "gfx/billboard/mon_silhouettes/electabuzz.2bpp"
|
|
MagmarPic: ; 0x6a700
|
|
INCBIN "gfx/billboard/mon_pics/magmar.2bpp"
|
|
MagmarSilhouettePic: ; 0x6a880
|
|
INCBIN "gfx/billboard/mon_silhouettes/magmar.2bpp"
|
|
PinsirPic: ; 0x6aa00
|
|
INCBIN "gfx/billboard/mon_pics/pinsir.2bpp"
|
|
PinsirSilhouettePic: ; 0x6ab80
|
|
INCBIN "gfx/billboard/mon_silhouettes/pinsir.2bpp"
|
|
TaurosPic: ; 0x6ad00
|
|
INCBIN "gfx/billboard/mon_pics/tauros.2bpp"
|
|
TaurosSilhouettePic: ; 0x6ae80
|
|
INCBIN "gfx/billboard/mon_silhouettes/tauros.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$6b000,$6c000 - $6b000 ; 0x6b000
|
|
|
|
|
|
SECTION "bank1b", ROMX, BANK[$1b]
|
|
|
|
MagikarpPic: ; 0x6c000
|
|
INCBIN "gfx/billboard/mon_pics/magikarp.2bpp"
|
|
MagikarpSilhouettePic: ; 0x6c180
|
|
INCBIN "gfx/billboard/mon_silhouettes/magikarp.2bpp"
|
|
GyaradosPic: ; 0x6c300
|
|
INCBIN "gfx/billboard/mon_pics/gyarados.2bpp"
|
|
GyaradosSilhouettePic: ; 0x6c480
|
|
INCBIN "gfx/billboard/mon_silhouettes/gyarados.2bpp"
|
|
LaprasPic: ; 0x6c600
|
|
INCBIN "gfx/billboard/mon_pics/lapras.2bpp"
|
|
LaprasSilhouettePic: ; 0x6c780
|
|
INCBIN "gfx/billboard/mon_silhouettes/lapras.2bpp"
|
|
DittoPic: ; 0x6c900
|
|
INCBIN "gfx/billboard/mon_pics/ditto.2bpp"
|
|
DittoSilhouettePic: ; 0x6ca80
|
|
INCBIN "gfx/billboard/mon_silhouettes/ditto.2bpp"
|
|
EeveePic: ; 0x6cc00
|
|
INCBIN "gfx/billboard/mon_pics/eevee.2bpp"
|
|
EeveeSilhouettePic: ; 0x6cd80
|
|
INCBIN "gfx/billboard/mon_silhouettes/eevee.2bpp"
|
|
VaporeonPic: ; 0x6cf00
|
|
INCBIN "gfx/billboard/mon_pics/vaporeon.2bpp"
|
|
VaporeonSilhouettePic: ; 0x6d080
|
|
INCBIN "gfx/billboard/mon_silhouettes/vaporeon.2bpp"
|
|
JolteonPic: ; 0x6d200
|
|
INCBIN "gfx/billboard/mon_pics/jolteon.2bpp"
|
|
JolteonSilhouettePic: ; 0x6d380
|
|
INCBIN "gfx/billboard/mon_silhouettes/jolteon.2bpp"
|
|
FlareonPic: ; 0x6d500
|
|
INCBIN "gfx/billboard/mon_pics/flareon.2bpp"
|
|
FlareonSilhouettePic: ; 0x6d680
|
|
INCBIN "gfx/billboard/mon_silhouettes/flareon.2bpp"
|
|
PorygonPic: ; 0x6d800
|
|
INCBIN "gfx/billboard/mon_pics/porygon.2bpp"
|
|
PorygonSilhouettePic: ; 0x6d980
|
|
INCBIN "gfx/billboard/mon_silhouettes/porygon.2bpp"
|
|
OmanytePic: ; 0x6db00
|
|
INCBIN "gfx/billboard/mon_pics/omanyte.2bpp"
|
|
OmanyteSilhouettePic: ; 0x6dc80
|
|
INCBIN "gfx/billboard/mon_silhouettes/omanyte.2bpp"
|
|
OmastarPic: ; 0x6de00
|
|
INCBIN "gfx/billboard/mon_pics/omastar.2bpp"
|
|
OmastarSilhouettePic: ; 0x6df80
|
|
INCBIN "gfx/billboard/mon_silhouettes/omastar.2bpp"
|
|
KabutoPic: ; 0x6e100
|
|
INCBIN "gfx/billboard/mon_pics/kabuto.2bpp"
|
|
KabutoSilhouettePic: ; 0x6e280
|
|
INCBIN "gfx/billboard/mon_silhouettes/kabuto.2bpp"
|
|
KabutopsPic: ; 0x6e400
|
|
INCBIN "gfx/billboard/mon_pics/kabutops.2bpp"
|
|
KabutopsSilhouettePic: ; 0x6e580
|
|
INCBIN "gfx/billboard/mon_silhouettes/kabutops.2bpp"
|
|
AerodactylPic: ; 0x6e700
|
|
INCBIN "gfx/billboard/mon_pics/aerodactyl.2bpp"
|
|
AerodactylSilhouettePic: ; 0x6e880
|
|
INCBIN "gfx/billboard/mon_silhouettes/aerodactyl.2bpp"
|
|
SnorlaxPic: ; 0x6ea00
|
|
INCBIN "gfx/billboard/mon_pics/snorlax.2bpp"
|
|
SnorlaxSilhouettePic: ; 0x6eb80
|
|
INCBIN "gfx/billboard/mon_silhouettes/snorlax.2bpp"
|
|
ArticunoPic: ; 0x6ed00
|
|
INCBIN "gfx/billboard/mon_pics/articuno.2bpp"
|
|
ArticunoSilhouettePic: ; 0x6ee80
|
|
INCBIN "gfx/billboard/mon_silhouettes/articuno.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$6f000,$70000 - $6f000 ; 0x6f000
|
|
|
|
|
|
SECTION "bank1c", ROMX, BANK[$1c]
|
|
|
|
ZapdosPic: ; 0x70000
|
|
INCBIN "gfx/billboard/mon_pics/zapdos.2bpp"
|
|
ZapdosSilhouettePic: ; 0x70180
|
|
INCBIN "gfx/billboard/mon_silhouettes/zapdos.2bpp"
|
|
MoltresPic: ; 0x70300
|
|
INCBIN "gfx/billboard/mon_pics/moltres.2bpp"
|
|
MoltresSilhouettePic: ; 0x70480
|
|
INCBIN "gfx/billboard/mon_silhouettes/moltres.2bpp"
|
|
DratiniPic: ; 0x70600
|
|
INCBIN "gfx/billboard/mon_pics/dratini.2bpp"
|
|
DratiniSilhouettePic: ; 0x70780
|
|
INCBIN "gfx/billboard/mon_silhouettes/dratini.2bpp"
|
|
DragonairPic: ; 0x70900
|
|
INCBIN "gfx/billboard/mon_pics/dragonair.2bpp"
|
|
DragonairSilhouettePic: ; 0x70a80
|
|
INCBIN "gfx/billboard/mon_silhouettes/dragonair.2bpp"
|
|
DragonitePic: ; 0x70c00
|
|
INCBIN "gfx/billboard/mon_pics/dragonite.2bpp"
|
|
DragoniteSilhouettePic: ; 0x70d80
|
|
INCBIN "gfx/billboard/mon_silhouettes/dragonite.2bpp"
|
|
MewtwoPic: ; 0x70f00
|
|
INCBIN "gfx/billboard/mon_pics/mewtwo.2bpp"
|
|
MewtwoSilhouettePic: ; 0x71080
|
|
INCBIN "gfx/billboard/mon_silhouettes/mewtwo.2bpp"
|
|
MewPic: ; 0x71200
|
|
INCBIN "gfx/billboard/mon_pics/mew.2bpp"
|
|
MewSilhouettePic: ; 0x71380
|
|
INCBIN "gfx/billboard/mon_silhouettes/mew.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$71500,$74000 - $71500 ; 0x71500
|
|
|
|
|
|
SECTION "bank1d", ROMX, BANK[$1d]
|
|
|
|
PidgeottoPic: ; 0x74000
|
|
INCBIN "gfx/billboard/mon_pics/pidgeotto.2bpp"
|
|
PidgeottoSilhouettePic: ; 0x74180
|
|
INCBIN "gfx/billboard/mon_silhouettes/pidgeotto.2bpp"
|
|
PidgeotPic: ; 0x74300
|
|
INCBIN "gfx/billboard/mon_pics/pidgeot.2bpp"
|
|
PidgeotSilhouettePic: ; 0x74480
|
|
INCBIN "gfx/billboard/mon_silhouettes/pidgeot.2bpp"
|
|
RattataPic: ; 0x74600
|
|
INCBIN "gfx/billboard/mon_pics/rattata.2bpp"
|
|
RattataSilhouettePic: ; 0x74780
|
|
INCBIN "gfx/billboard/mon_silhouettes/rattata.2bpp"
|
|
RaticatePic: ; 0x74900
|
|
INCBIN "gfx/billboard/mon_pics/raticate.2bpp"
|
|
RaticateSilhouettePic: ; 0x74a80
|
|
INCBIN "gfx/billboard/mon_silhouettes/raticate.2bpp"
|
|
SpearowPic: ; 0x74c00
|
|
INCBIN "gfx/billboard/mon_pics/spearow.2bpp"
|
|
SpearowSilhouettePic: ; 0x74d80
|
|
INCBIN "gfx/billboard/mon_silhouettes/spearow.2bpp"
|
|
FearowPic: ; 0x74f00
|
|
INCBIN "gfx/billboard/mon_pics/fearow.2bpp"
|
|
FearowSilhouettePic: ; 0x75080
|
|
INCBIN "gfx/billboard/mon_silhouettes/fearow.2bpp"
|
|
EkansPic: ; 0x75200
|
|
INCBIN "gfx/billboard/mon_pics/ekans.2bpp"
|
|
EkansSilhouettePic: ; 0x75380
|
|
INCBIN "gfx/billboard/mon_silhouettes/ekans.2bpp"
|
|
ArbokPic: ; 0x75500
|
|
INCBIN "gfx/billboard/mon_pics/arbok.2bpp"
|
|
ArbokSilhouettePic: ; 0x75680
|
|
INCBIN "gfx/billboard/mon_silhouettes/arbok.2bpp"
|
|
PikachuPic: ; 0x75800
|
|
INCBIN "gfx/billboard/mon_pics/pikachu.2bpp"
|
|
PikachuSilhouettePic: ; 0x75980
|
|
INCBIN "gfx/billboard/mon_silhouettes/pikachu.2bpp"
|
|
RaichuPic: ; 0x75b00
|
|
INCBIN "gfx/billboard/mon_pics/raichu.2bpp"
|
|
RaichuSilhouettePic: ; 0x75c80
|
|
INCBIN "gfx/billboard/mon_silhouettes/raichu.2bpp"
|
|
SandshrewPic: ; 0x75e00
|
|
INCBIN "gfx/billboard/mon_pics/sandshrew.2bpp"
|
|
SandshrewSilhouettePic: ; 0x75f80
|
|
INCBIN "gfx/billboard/mon_silhouettes/sandshrew.2bpp"
|
|
SandslashPic: ; 0x76100
|
|
INCBIN "gfx/billboard/mon_pics/sandslash.2bpp"
|
|
SandslashSilhouettePic: ; 0x76280
|
|
INCBIN "gfx/billboard/mon_silhouettes/sandslash.2bpp"
|
|
Nidoran_FPic: ; 0x76400
|
|
INCBIN "gfx/billboard/mon_pics/nidoran_f.2bpp"
|
|
Nidoran_FSilhouettePic: ; 0x76580
|
|
INCBIN "gfx/billboard/mon_silhouettes/nidoran_f.2bpp"
|
|
NidorinaPic: ; 0x76700
|
|
INCBIN "gfx/billboard/mon_pics/nidorina.2bpp"
|
|
NidorinaSilhouettePic: ; 0x76880
|
|
INCBIN "gfx/billboard/mon_silhouettes/nidorina.2bpp"
|
|
NidoqueenPic: ; 0x76a00
|
|
INCBIN "gfx/billboard/mon_pics/nidoqueen.2bpp"
|
|
NidoqueenSilhouettePic: ; 0x76b80
|
|
INCBIN "gfx/billboard/mon_silhouettes/nidoqueen.2bpp"
|
|
Nidoran_MPic: ; 0x76d00
|
|
INCBIN "gfx/billboard/mon_pics/nidoran_m.2bpp"
|
|
Nidoran_MSilhouettePic: ; 0x76e80
|
|
INCBIN "gfx/billboard/mon_silhouettes/nidoran_m.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$77000,$78000 - $77000 ; 0x77000
|
|
|
|
|
|
SECTION "bank1e", ROMX, BANK[$1e]
|
|
|
|
BulbasaurPic: ; 0x78000
|
|
INCBIN "gfx/billboard/mon_pics/bulbasaur.2bpp"
|
|
BulbasaurSilhouettePic: ; 0x78180
|
|
INCBIN "gfx/billboard/mon_silhouettes/bulbasaur.2bpp"
|
|
IvysaurPic: ; 0x78300
|
|
INCBIN "gfx/billboard/mon_pics/ivysaur.2bpp"
|
|
IvysaurSilhouettePic: ; 0x78480
|
|
INCBIN "gfx/billboard/mon_silhouettes/ivysaur.2bpp"
|
|
VenusaurPic: ; 0x78600
|
|
INCBIN "gfx/billboard/mon_pics/venusaur.2bpp"
|
|
VenusaurSilhouettePic: ; 0x78780
|
|
INCBIN "gfx/billboard/mon_silhouettes/venusaur.2bpp"
|
|
CharmanderPic: ; 0x78900
|
|
INCBIN "gfx/billboard/mon_pics/charmander.2bpp"
|
|
CharmanderSilhouettePic: ; 0x78a80
|
|
INCBIN "gfx/billboard/mon_silhouettes/charmander.2bpp"
|
|
CharmeleonPic: ; 0x78c00
|
|
INCBIN "gfx/billboard/mon_pics/charmeleon.2bpp"
|
|
CharmeleonSilhouettePic: ; 0x78d80
|
|
INCBIN "gfx/billboard/mon_silhouettes/charmeleon.2bpp"
|
|
CharizardPic: ; 0x78f00
|
|
INCBIN "gfx/billboard/mon_pics/charizard.2bpp"
|
|
CharizardSilhouettePic: ; 0x79080
|
|
INCBIN "gfx/billboard/mon_silhouettes/charizard.2bpp"
|
|
SquirtlePic: ; 0x79200
|
|
INCBIN "gfx/billboard/mon_pics/squirtle.2bpp"
|
|
SquirtleSilhouettePic: ; 0x79380
|
|
INCBIN "gfx/billboard/mon_silhouettes/squirtle.2bpp"
|
|
WartortlePic: ; 0x79500
|
|
INCBIN "gfx/billboard/mon_pics/wartortle.2bpp"
|
|
WartortleSilhouettePic: ; 0x79680
|
|
INCBIN "gfx/billboard/mon_silhouettes/wartortle.2bpp"
|
|
BlastoisePic: ; 0x79800
|
|
INCBIN "gfx/billboard/mon_pics/blastoise.2bpp"
|
|
BlastoiseSilhouettePic: ; 0x79980
|
|
INCBIN "gfx/billboard/mon_silhouettes/blastoise.2bpp"
|
|
CaterpiePic: ; 0x79b00
|
|
INCBIN "gfx/billboard/mon_pics/caterpie.2bpp"
|
|
CaterpieSilhouettePic: ; 0x79c80
|
|
INCBIN "gfx/billboard/mon_silhouettes/caterpie.2bpp"
|
|
MetapodPic: ; 0x79e00
|
|
INCBIN "gfx/billboard/mon_pics/metapod.2bpp"
|
|
MetapodSilhouettePic: ; 0x79f80
|
|
INCBIN "gfx/billboard/mon_silhouettes/metapod.2bpp"
|
|
ButterfreePic: ; 0x7a100
|
|
INCBIN "gfx/billboard/mon_pics/butterfree.2bpp"
|
|
ButterfreeSilhouettePic: ; 0x7a280
|
|
INCBIN "gfx/billboard/mon_silhouettes/butterfree.2bpp"
|
|
WeedlePic: ; 0x7a400
|
|
INCBIN "gfx/billboard/mon_pics/weedle.2bpp"
|
|
WeedleSilhouettePic: ; 0x7a580
|
|
INCBIN "gfx/billboard/mon_silhouettes/weedle.2bpp"
|
|
KakunaPic: ; 0x7a700
|
|
INCBIN "gfx/billboard/mon_pics/kakuna.2bpp"
|
|
KakunaSilhouettePic: ; 0x7a880
|
|
INCBIN "gfx/billboard/mon_silhouettes/kakuna.2bpp"
|
|
BeedrillPic: ; 0x7aa00
|
|
INCBIN "gfx/billboard/mon_pics/beedrill.2bpp"
|
|
BeedrillSilhouettePic: ; 0x7ab80
|
|
INCBIN "gfx/billboard/mon_silhouettes/beedrill.2bpp"
|
|
PidgeyPic: ; 0x7ad00
|
|
INCBIN "gfx/billboard/mon_pics/pidgey.2bpp"
|
|
PidgeySilhouettePic: ; 0x7ae80
|
|
INCBIN "gfx/billboard/mon_silhouettes/pidgey.2bpp"
|
|
|
|
BonusMultiplierX1OnPic: ; 0x7b000
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX1_on.2bpp"
|
|
BonusMultiplierX1OffPic: ; 0x7b180
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX1_off.2bpp"
|
|
BonusMultiplierX2OnPic: ; 0x7b300
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX2_on.2bpp"
|
|
BonusMultiplierX2OffPic: ; 0x7b480
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX2_off.2bpp"
|
|
BonusMultiplierX3OnPic: ; 0x7b600
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX3_on.2bpp"
|
|
BonusMultiplierX3OffPic: ; 0x7b780
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX3_off.2bpp"
|
|
BonusMultiplierX4OnPic: ; 0x7b900
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX4_on.2bpp"
|
|
BonusMultiplierX4OffPic: ; 0x7ba80
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX4_off.2bpp"
|
|
BonusMultiplierX5OnPic: ; 0x7bc00
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX5_on.2bpp"
|
|
BonusMultiplierX5OffPic: ; 0x7bd80
|
|
INCBIN "gfx/billboard/slot/bonusmultiplierX5_off.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$7bf00,$7c000 - $7bf00 ; 0x7bf00
|
|
|
|
|
|
SECTION "bank1f", ROMX, BANK[$1f]
|
|
|
|
SlowpokeAnimatedPic: ; 0x7c000
|
|
INCBIN "gfx/billboard/mon_animated/slowpoke.2bpp"
|
|
MagnemiteAnimatedPic: ; 0x7c300
|
|
INCBIN "gfx/billboard/mon_animated/magnemite.2bpp"
|
|
Farfetch_DAnimatedPic: ; 0x7c600
|
|
INCBIN "gfx/billboard/mon_animated/farfetch_d.2bpp"
|
|
DoduoAnimatedPic: ; 0x7c900
|
|
INCBIN "gfx/billboard/mon_animated/doduo.2bpp"
|
|
SeelAnimatedPic: ; 0x7cc00
|
|
INCBIN "gfx/billboard/mon_animated/seel.2bpp"
|
|
GrimerAnimatedPic: ; 0x7cf00
|
|
INCBIN "gfx/billboard/mon_animated/grimer.2bpp"
|
|
ShellderAnimatedPic: ; 0x7d200
|
|
INCBIN "gfx/billboard/mon_animated/shellder.2bpp"
|
|
GastlyAnimatedPic: ; 0x7d500
|
|
INCBIN "gfx/billboard/mon_animated/gastly.2bpp"
|
|
OnixAnimatedPic: ; 0x7d800
|
|
INCBIN "gfx/billboard/mon_animated/onix.2bpp"
|
|
DrowzeeAnimatedPic: ; 0x7db00
|
|
INCBIN "gfx/billboard/mon_animated/drowzee.2bpp"
|
|
KrabbyAnimatedPic: ; 0x7de00
|
|
INCBIN "gfx/billboard/mon_animated/krabby.2bpp"
|
|
VoltorbAnimatedPic: ; 0x7e100
|
|
INCBIN "gfx/billboard/mon_animated/voltorb.2bpp"
|
|
ExeggcuteAnimatedPic: ; 0x7e400
|
|
INCBIN "gfx/billboard/mon_animated/exeggcute.2bpp"
|
|
CuboneAnimatedPic: ; 0x7e700
|
|
INCBIN "gfx/billboard/mon_animated/cubone.2bpp"
|
|
HitmonleeAnimatedPic: ; 0x7ea00
|
|
INCBIN "gfx/billboard/mon_animated/hitmonlee.2bpp"
|
|
HitmonchanAnimatedPic: ; 0x7ed00
|
|
INCBIN "gfx/billboard/mon_animated/hitmonchan.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$7f000,$80000 - $7f000 ; 0x7f000
|
|
|
|
|
|
SECTION "bank20", ROMX, BANK[$20]
|
|
|
|
LickitungAnimatedPic: ; 0x80000
|
|
INCBIN "gfx/billboard/mon_animated/lickitung.2bpp"
|
|
KoffingAnimatedPic: ; 0x80300
|
|
INCBIN "gfx/billboard/mon_animated/koffing.2bpp"
|
|
RhyhornAnimatedPic: ; 0x80600
|
|
INCBIN "gfx/billboard/mon_animated/rhyhorn.2bpp"
|
|
ChanseyAnimatedPic: ; 0x80900
|
|
INCBIN "gfx/billboard/mon_animated/chansey.2bpp"
|
|
TangelaAnimatedPic: ; 0x80c00
|
|
INCBIN "gfx/billboard/mon_animated/tangela.2bpp"
|
|
KangaskhanAnimatedPic: ; 0x80f00
|
|
INCBIN "gfx/billboard/mon_animated/kangaskhan.2bpp"
|
|
HorseaAnimatedPic: ; 0x81200
|
|
INCBIN "gfx/billboard/mon_animated/horsea.2bpp"
|
|
GoldeenAnimatedPic: ; 0x81500
|
|
INCBIN "gfx/billboard/mon_animated/goldeen.2bpp"
|
|
StaryuAnimatedPic: ; 0x81800
|
|
INCBIN "gfx/billboard/mon_animated/staryu.2bpp"
|
|
Mr_MimeAnimatedPic: ; 0x81b00
|
|
INCBIN "gfx/billboard/mon_animated/mr_mime.2bpp"
|
|
ScytherAnimatedPic: ; 0x81e00
|
|
INCBIN "gfx/billboard/mon_animated/scyther.2bpp"
|
|
JynxAnimatedPic: ; 0x82100
|
|
INCBIN "gfx/billboard/mon_animated/jynx.2bpp"
|
|
ElectabuzzAnimatedPic: ; 0x82400
|
|
INCBIN "gfx/billboard/mon_animated/electabuzz.2bpp"
|
|
MagmarAnimatedPic: ; 0x82700
|
|
INCBIN "gfx/billboard/mon_animated/magmar.2bpp"
|
|
PinsirAnimatedPic: ; 0x82a00
|
|
INCBIN "gfx/billboard/mon_animated/pinsir.2bpp"
|
|
TaurosAnimatedPic: ; 0x82d00
|
|
INCBIN "gfx/billboard/mon_animated/tauros.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$83000,$84000 - $83000 ; 0x83000
|
|
|
|
|
|
SECTION "bank21", ROMX, BANK[$21]
|
|
|
|
MagikarpAnimatedPic: ; 0x84000
|
|
INCBIN "gfx/billboard/mon_animated/magikarp.2bpp"
|
|
LaprasAnimatedPic: ; 0x84300
|
|
INCBIN "gfx/billboard/mon_animated/lapras.2bpp"
|
|
DittoAnimatedPic: ; 0x84600
|
|
INCBIN "gfx/billboard/mon_animated/ditto.2bpp"
|
|
EeveeAnimatedPic: ; 0x84900
|
|
INCBIN "gfx/billboard/mon_animated/eevee.2bpp"
|
|
PorygonAnimatedPic: ; 0x84c00
|
|
INCBIN "gfx/billboard/mon_animated/porygon.2bpp"
|
|
OmanyteAnimatedPic: ; 0x84f00
|
|
INCBIN "gfx/billboard/mon_animated/omanyte.2bpp"
|
|
KabutoAnimatedPic: ; 0x85200
|
|
INCBIN "gfx/billboard/mon_animated/kabuto.2bpp"
|
|
AerodactylAnimatedPic: ; 0x85500
|
|
INCBIN "gfx/billboard/mon_animated/aerodactyl.2bpp"
|
|
SnorlaxAnimatedPic: ; 0x85800
|
|
INCBIN "gfx/billboard/mon_animated/snorlax.2bpp"
|
|
ArticunoAnimatedPic: ; 0x85b00
|
|
INCBIN "gfx/billboard/mon_animated/articuno.2bpp"
|
|
ZapdosAnimatedPic: ; 0x85e00
|
|
INCBIN "gfx/billboard/mon_animated/zapdos.2bpp"
|
|
MoltresAnimatedPic: ; 0x86100
|
|
INCBIN "gfx/billboard/mon_animated/moltres.2bpp"
|
|
DratiniAnimatedPic: ; 0x86400
|
|
INCBIN "gfx/billboard/mon_animated/dratini.2bpp"
|
|
MewtwoAnimatedPic: ; 0x86700
|
|
INCBIN "gfx/billboard/mon_animated/mewtwo.2bpp"
|
|
MewAnimatedPic: ; 0x86a00
|
|
INCBIN "gfx/billboard/mon_animated/mew.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$86d00,$88000 - $86d00 ; 0x86d00
|
|
|
|
|
|
SECTION "bank22", ROMX, BANK[$22]
|
|
|
|
ZubatAnimatedPic: ; 0x88000
|
|
INCBIN "gfx/billboard/mon_animated/zubat.2bpp"
|
|
OddishAnimatedPic: ; 0x88300
|
|
INCBIN "gfx/billboard/mon_animated/oddish.2bpp"
|
|
ParasAnimatedPic: ; 0x88600
|
|
INCBIN "gfx/billboard/mon_animated/paras.2bpp"
|
|
VenonatAnimatedPic: ; 0x88900
|
|
INCBIN "gfx/billboard/mon_animated/venonat.2bpp"
|
|
DiglettAnimatedPic: ; 0x88c00
|
|
INCBIN "gfx/billboard/mon_animated/diglett.2bpp"
|
|
MeowthAnimatedPic: ; 0x88f00
|
|
INCBIN "gfx/billboard/mon_animated/meowth.2bpp"
|
|
PsyduckAnimatedPic: ; 0x89200
|
|
INCBIN "gfx/billboard/mon_animated/psyduck.2bpp"
|
|
MankeyAnimatedPic: ; 0x89500
|
|
INCBIN "gfx/billboard/mon_animated/mankey.2bpp"
|
|
GrowlitheAnimatedPic: ; 0x89800
|
|
INCBIN "gfx/billboard/mon_animated/growlithe.2bpp"
|
|
PoliwagAnimatedPic: ; 0x89b00
|
|
INCBIN "gfx/billboard/mon_animated/poliwag.2bpp"
|
|
AbraAnimatedPic: ; 0x89e00
|
|
INCBIN "gfx/billboard/mon_animated/abra.2bpp"
|
|
MachopAnimatedPic: ; 0x8a100
|
|
INCBIN "gfx/billboard/mon_animated/machop.2bpp"
|
|
BellsproutAnimatedPic: ; 0x8a400
|
|
INCBIN "gfx/billboard/mon_animated/bellsprout.2bpp"
|
|
TentacoolAnimatedPic: ; 0x8a700
|
|
INCBIN "gfx/billboard/mon_animated/tentacool.2bpp"
|
|
GeodudeAnimatedPic: ; 0x8aa00
|
|
INCBIN "gfx/billboard/mon_animated/geodude.2bpp"
|
|
PonytaAnimatedPic: ; 0x8ad00
|
|
INCBIN "gfx/billboard/mon_animated/ponyta.2bpp"
|
|
|
|
FieldSelectScreenGfx:
|
|
FieldSelectBlinkingBorderGfx: ; 0x8b000
|
|
INCBIN "gfx/field_select/blinking_border.2bpp"
|
|
FieldSelectGfx: ; 0x8b100
|
|
INCBIN "gfx/field_select/field_select_tiles.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$8bd00,$8c000 - $8bd00 ; 0x8bd00
|
|
|
|
|
|
SECTION "bank23", ROMX, BANK[$23]
|
|
|
|
BulbasaurAnimatedPic: ; 0x8c000
|
|
INCBIN "gfx/billboard/mon_animated/bulbasaur.2bpp"
|
|
CharmanderAnimatedPic: ; 0x8c300
|
|
INCBIN "gfx/billboard/mon_animated/charmander.2bpp"
|
|
SquirtleAnimatedPic: ; 0x8c600
|
|
INCBIN "gfx/billboard/mon_animated/squirtle.2bpp"
|
|
CaterpieAnimatedPic: ; 0x8c900
|
|
INCBIN "gfx/billboard/mon_animated/caterpie.2bpp"
|
|
WeedleAnimatedPic: ; 0x8cc00
|
|
INCBIN "gfx/billboard/mon_animated/weedle.2bpp"
|
|
PidgeyAnimatedPic: ; 0x8cf00
|
|
INCBIN "gfx/billboard/mon_animated/pidgey.2bpp"
|
|
RattataAnimatedPic: ; 0x8d200
|
|
INCBIN "gfx/billboard/mon_animated/rattata.2bpp"
|
|
SpearowAnimatedPic: ; 0x8d500
|
|
INCBIN "gfx/billboard/mon_animated/spearow.2bpp"
|
|
EkansAnimatedPic: ; 0x8d800
|
|
INCBIN "gfx/billboard/mon_animated/ekans.2bpp"
|
|
PikachuAnimatedPic: ; 0x8db00
|
|
INCBIN "gfx/billboard/mon_animated/pikachu.2bpp"
|
|
SandshrewAnimatedPic: ; 0x8de00
|
|
INCBIN "gfx/billboard/mon_animated/sandshrew.2bpp"
|
|
Nidoran_FAnimatedPic: ; 0x8e100
|
|
INCBIN "gfx/billboard/mon_animated/nidoran_f.2bpp"
|
|
Nidoran_MAnimatedPic: ; 0x8e400
|
|
INCBIN "gfx/billboard/mon_animated/nidoran_m.2bpp"
|
|
ClefairyAnimatedPic: ; 0x8e700
|
|
INCBIN "gfx/billboard/mon_animated/clefairy.2bpp"
|
|
VulpixAnimatedPic: ; 0x8ea00
|
|
INCBIN "gfx/billboard/mon_animated/vulpix.2bpp"
|
|
JigglypuffAnimatedPic: ; 0x8ed00
|
|
INCBIN "gfx/billboard/mon_animated/jigglypuff.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$8f000,$90000 - $8f000 ; 0x8f000
|
|
|
|
|
|
SECTION "bank24", ROMX, BANK[$24]
|
|
|
|
HypnoPic: ; 0x90000
|
|
INCBIN "gfx/billboard/mon_pics/hypno.2bpp"
|
|
HypnoSilhouettePic: ; 0x90180
|
|
INCBIN "gfx/billboard/mon_silhouettes/hypno.2bpp"
|
|
KrabbyPic: ; 0x90300
|
|
INCBIN "gfx/billboard/mon_pics/krabby.2bpp"
|
|
KrabbySilhouettePic: ; 0x90480
|
|
INCBIN "gfx/billboard/mon_silhouettes/krabby.2bpp"
|
|
KinglerPic: ; 0x90600
|
|
INCBIN "gfx/billboard/mon_pics/kingler.2bpp"
|
|
KinglerSilhouettePic: ; 0x90780
|
|
INCBIN "gfx/billboard/mon_silhouettes/kingler.2bpp"
|
|
VoltorbPic: ; 0x90900
|
|
INCBIN "gfx/billboard/mon_pics/voltorb.2bpp"
|
|
VoltorbSilhouettePic: ; 0x90a80
|
|
INCBIN "gfx/billboard/mon_silhouettes/voltorb.2bpp"
|
|
ElectrodePic: ; 0x90c00
|
|
INCBIN "gfx/billboard/mon_pics/electrode.2bpp"
|
|
ElectrodeSilhouettePic: ; 0x90d80
|
|
INCBIN "gfx/billboard/mon_silhouettes/electrode.2bpp"
|
|
ExeggcutePic: ; 0x90f00
|
|
INCBIN "gfx/billboard/mon_pics/exeggcute.2bpp"
|
|
ExeggcuteSilhouettePic: ; 0x91080
|
|
INCBIN "gfx/billboard/mon_silhouettes/exeggcute.2bpp"
|
|
ExeggutorPic: ; 0x91200
|
|
INCBIN "gfx/billboard/mon_pics/exeggutor.2bpp"
|
|
ExeggutorSilhouettePic: ; 0x91380
|
|
INCBIN "gfx/billboard/mon_silhouettes/exeggutor.2bpp"
|
|
CubonePic: ; 0x91500
|
|
INCBIN "gfx/billboard/mon_pics/cubone.2bpp"
|
|
CuboneSilhouettePic: ; 0x91680
|
|
INCBIN "gfx/billboard/mon_silhouettes/cubone.2bpp"
|
|
MarowakPic: ; 0x91800
|
|
INCBIN "gfx/billboard/mon_pics/marowak.2bpp"
|
|
MarowakSilhouettePic: ; 0x91980
|
|
INCBIN "gfx/billboard/mon_silhouettes/marowak.2bpp"
|
|
HitmonleePic: ; 0x91b00
|
|
INCBIN "gfx/billboard/mon_pics/hitmonlee.2bpp"
|
|
HitmonleeSilhouettePic: ; 0x91c80
|
|
INCBIN "gfx/billboard/mon_silhouettes/hitmonlee.2bpp"
|
|
HitmonchanPic: ; 0x91e00
|
|
INCBIN "gfx/billboard/mon_pics/hitmonchan.2bpp"
|
|
HitmonchanSilhouettePic: ; 0x91f80
|
|
INCBIN "gfx/billboard/mon_silhouettes/hitmonchan.2bpp"
|
|
LickitungPic: ; 0x92100
|
|
INCBIN "gfx/billboard/mon_pics/lickitung.2bpp"
|
|
LickitungSilhouettePic: ; 0x92280
|
|
INCBIN "gfx/billboard/mon_silhouettes/lickitung.2bpp"
|
|
KoffingPic: ; 0x92400
|
|
INCBIN "gfx/billboard/mon_pics/koffing.2bpp"
|
|
KoffingSilhouettePic: ; 0x92580
|
|
INCBIN "gfx/billboard/mon_silhouettes/koffing.2bpp"
|
|
WeezingPic: ; 0x92700
|
|
INCBIN "gfx/billboard/mon_pics/weezing.2bpp"
|
|
WeezingSilhouettePic: ; 0x92880
|
|
INCBIN "gfx/billboard/mon_silhouettes/weezing.2bpp"
|
|
RhyhornPic: ; 0x92a00
|
|
INCBIN "gfx/billboard/mon_pics/rhyhorn.2bpp"
|
|
RhyhornSilhouettePic: ; 0x92b80
|
|
INCBIN "gfx/billboard/mon_silhouettes/rhyhorn.2bpp"
|
|
RhydonPic: ; 0x92d00
|
|
INCBIN "gfx/billboard/mon_pics/rhydon.2bpp"
|
|
RhydonSilhouettePic: ; 0x92e80
|
|
INCBIN "gfx/billboard/mon_silhouettes/rhydon.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$93000,$94000 - $93000 ; 0x93000
|
|
|
|
|
|
SECTION "bank25", ROMX, BANK[$25]
|
|
|
|
MagnemitePic: ; 0x94000
|
|
INCBIN "gfx/billboard/mon_pics/magnemite.2bpp"
|
|
MagnemiteSilhouettePic: ; 0x94180
|
|
INCBIN "gfx/billboard/mon_silhouettes/magnemite.2bpp"
|
|
MagnetonPic: ; 0x94300
|
|
INCBIN "gfx/billboard/mon_pics/magneton.2bpp"
|
|
MagnetonSilhouettePic: ; 0x94480
|
|
INCBIN "gfx/billboard/mon_silhouettes/magneton.2bpp"
|
|
Farfetch_dPic: ; 0x94600
|
|
INCBIN "gfx/billboard/mon_pics/farfetch_d.2bpp"
|
|
Farfetch_dSilhouettePic: ; 0x94780
|
|
INCBIN "gfx/billboard/mon_silhouettes/farfetch_d.2bpp"
|
|
DoduoPic: ; 0x94900
|
|
INCBIN "gfx/billboard/mon_pics/doduo.2bpp"
|
|
DoduoSilhouettePic: ; 0x94a80
|
|
INCBIN "gfx/billboard/mon_silhouettes/doduo.2bpp"
|
|
DodrioPic: ; 0x94c00
|
|
INCBIN "gfx/billboard/mon_pics/dodrio.2bpp"
|
|
DodrioSilhouettePic: ; 0x94d80
|
|
INCBIN "gfx/billboard/mon_silhouettes/dodrio.2bpp"
|
|
SeelPic: ; 0x94f00
|
|
INCBIN "gfx/billboard/mon_pics/seel.2bpp"
|
|
SeelSilhouettePic: ; 0x95080
|
|
INCBIN "gfx/billboard/mon_silhouettes/seel.2bpp"
|
|
DewgongPic: ; 0x95200
|
|
INCBIN "gfx/billboard/mon_pics/dewgong.2bpp"
|
|
DewgongSilhouettePic: ; 0x95380
|
|
INCBIN "gfx/billboard/mon_silhouettes/dewgong.2bpp"
|
|
GrimerPic: ; 0x95500
|
|
INCBIN "gfx/billboard/mon_pics/grimer.2bpp"
|
|
GrimerSilhouettePic: ; 0x95680
|
|
INCBIN "gfx/billboard/mon_silhouettes/grimer.2bpp"
|
|
MukPic: ; 0x95800
|
|
INCBIN "gfx/billboard/mon_pics/muk.2bpp"
|
|
MukSilhouettePic: ; 0x95980
|
|
INCBIN "gfx/billboard/mon_silhouettes/muk.2bpp"
|
|
ShellderPic: ; 0x95b00
|
|
INCBIN "gfx/billboard/mon_pics/shellder.2bpp"
|
|
ShellderSilhouettePic: ; 0x95c80
|
|
INCBIN "gfx/billboard/mon_silhouettes/shellder.2bpp"
|
|
CloysterPic: ; 0x95e00
|
|
INCBIN "gfx/billboard/mon_pics/cloyster.2bpp"
|
|
CloysterSilhouettePic: ; 0x95f80
|
|
INCBIN "gfx/billboard/mon_silhouettes/cloyster.2bpp"
|
|
GastlyPic: ; 0x96100
|
|
INCBIN "gfx/billboard/mon_pics/gastly.2bpp"
|
|
GastlySilhouettePic: ; 0x96280
|
|
INCBIN "gfx/billboard/mon_silhouettes/gastly.2bpp"
|
|
HaunterPic: ; 0x96400
|
|
INCBIN "gfx/billboard/mon_pics/haunter.2bpp"
|
|
HaunterSilhouettePic: ; 0x96580
|
|
INCBIN "gfx/billboard/mon_silhouettes/haunter.2bpp"
|
|
GengarPic: ; 0x96700
|
|
INCBIN "gfx/billboard/mon_pics/gengar.2bpp"
|
|
GengarSilhouettePic: ; 0x96880
|
|
INCBIN "gfx/billboard/mon_silhouettes/gengar.2bpp"
|
|
OnixPic: ; 0x96a00
|
|
INCBIN "gfx/billboard/mon_pics/onix.2bpp"
|
|
OnixSilhouettePic: ; 0x96b80
|
|
INCBIN "gfx/billboard/mon_silhouettes/onix.2bpp"
|
|
DrowzeePic: ; 0x96d00
|
|
INCBIN "gfx/billboard/mon_pics/drowzee.2bpp"
|
|
DrowzeeSilhouettePic: ; 0x96e80
|
|
INCBIN "gfx/billboard/mon_silhouettes/drowzee.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$97000,$98000 - $97000 ; 0x97000
|
|
|
|
|
|
SECTION "bank26", ROMX, BANK[$26]
|
|
|
|
AlakazamPic: ; 0x98000
|
|
INCBIN "gfx/billboard/mon_pics/alakazam.2bpp"
|
|
AlakazamSilhouettePic: ; 0x98180
|
|
INCBIN "gfx/billboard/mon_silhouettes/alakazam.2bpp"
|
|
MachopPic: ; 0x98300
|
|
INCBIN "gfx/billboard/mon_pics/machop.2bpp"
|
|
MachopSilhouettePic: ; 0x98480
|
|
INCBIN "gfx/billboard/mon_silhouettes/machop.2bpp"
|
|
MachokePic: ; 0x98600
|
|
INCBIN "gfx/billboard/mon_pics/machoke.2bpp"
|
|
MachokeSilhouettePic: ; 0x98780
|
|
INCBIN "gfx/billboard/mon_silhouettes/machoke.2bpp"
|
|
MachampPic: ; 0x98900
|
|
INCBIN "gfx/billboard/mon_pics/machamp.2bpp"
|
|
MachampSilhouettePic: ; 0x98a80
|
|
INCBIN "gfx/billboard/mon_silhouettes/machamp.2bpp"
|
|
BellsproutPic: ; 0x98c00
|
|
INCBIN "gfx/billboard/mon_pics/bellsprout.2bpp"
|
|
BellsproutSilhouettePic: ; 0x98d80
|
|
INCBIN "gfx/billboard/mon_silhouettes/bellsprout.2bpp"
|
|
WeepinbellPic: ; 0x98f00
|
|
INCBIN "gfx/billboard/mon_pics/weepinbell.2bpp"
|
|
WeepinbellSilhouettePic: ; 0x97080
|
|
INCBIN "gfx/billboard/mon_silhouettes/weepinbell.2bpp"
|
|
VictreebellPic: ; 0x97200
|
|
INCBIN "gfx/billboard/mon_pics/victreebell.2bpp"
|
|
VictreebellSilhouettePic: ; 0x97380
|
|
INCBIN "gfx/billboard/mon_silhouettes/victreebell.2bpp"
|
|
TentacoolPic: ; 0x97500
|
|
INCBIN "gfx/billboard/mon_pics/tentacool.2bpp"
|
|
TentacoolSilhouettePic: ; 0x97680
|
|
INCBIN "gfx/billboard/mon_silhouettes/tentacool.2bpp"
|
|
TentacruelPic: ; 0x97800
|
|
INCBIN "gfx/billboard/mon_pics/tentacruel.2bpp"
|
|
TentacruelSilhouettePic: ; 0x97980
|
|
INCBIN "gfx/billboard/mon_silhouettes/tentacruel.2bpp"
|
|
GeodudePic: ; 0x97b00
|
|
INCBIN "gfx/billboard/mon_pics/geodude.2bpp"
|
|
GeodudeSilhouettePic: ; 0x97c80
|
|
INCBIN "gfx/billboard/mon_silhouettes/geodude.2bpp"
|
|
GravelerPic: ; 0x97e00
|
|
INCBIN "gfx/billboard/mon_pics/graveler.2bpp"
|
|
GravelerSilhouettePic: ; 0x97f80
|
|
INCBIN "gfx/billboard/mon_silhouettes/graveler.2bpp"
|
|
GolemPic: ; 0x9a100
|
|
INCBIN "gfx/billboard/mon_pics/golem.2bpp"
|
|
GolemSilhouettePic: ; 0x9a280
|
|
INCBIN "gfx/billboard/mon_silhouettes/golem.2bpp"
|
|
PonytaPic: ; 0x9a400
|
|
INCBIN "gfx/billboard/mon_pics/ponyta.2bpp"
|
|
PonytaSilhouettePic: ; 0x9a580
|
|
INCBIN "gfx/billboard/mon_silhouettes/ponyta.2bpp"
|
|
RapidashPic: ; 0x9a700
|
|
INCBIN "gfx/billboard/mon_pics/rapidash.2bpp"
|
|
RapidashSilhouettePic: ; 0x9a880
|
|
INCBIN "gfx/billboard/mon_silhouettes/rapidash.2bpp"
|
|
SlowpokePic: ; 0x9aa00
|
|
INCBIN "gfx/billboard/mon_pics/slowpoke.2bpp"
|
|
SlowpokeSilhouettePic: ; 0x9ab80
|
|
INCBIN "gfx/billboard/mon_silhouettes/slowpoke.2bpp"
|
|
SlowbroPic: ; 0x9ad00
|
|
INCBIN "gfx/billboard/mon_pics/slowbro.2bpp"
|
|
SlowbroSilhouettePic: ; 0x9ae80
|
|
INCBIN "gfx/billboard/mon_silhouettes/slowbro.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$9b000,$9c000 - $9b000 ; 0x9b000
|
|
|
|
|
|
SECTION "bank27", ROMX, BANK[$27]
|
|
|
|
INCBIN "baserom.gbc",$9c000,$a0000 - $9c000 ; 0x9c000
|
|
|
|
|
|
SECTION "bank28", ROMX, BANK[$28]
|
|
|
|
INCBIN "baserom.gbc",$a0000,$a4000 - $a0000 ; 0xa0000
|
|
|
|
|
|
SECTION "bank29", ROMX, BANK[$29]
|
|
|
|
INCBIN "baserom.gbc",$a4000,$a6000 - $a4000 ; 0xa4000
|
|
|
|
PalletTownPic: ; 0xa6000
|
|
INCBIN "gfx/billboard/maps/pallettown.2bpp"
|
|
ViridianCityPic: ; 0xa6180
|
|
INCBIN "gfx/billboard/maps/viridiancity.2bpp"
|
|
ViridianForestPic: ; 0xa6300
|
|
INCBIN "gfx/billboard/maps/viridianforest.2bpp"
|
|
PewterCityPic: ; 0xa6480
|
|
INCBIN "gfx/billboard/maps/pewtercity.2bpp"
|
|
MtMoonPic: ; 0xa6600
|
|
INCBIN "gfx/billboard/maps/mtmoon.2bpp"
|
|
CeruleanCityPic: ; 0xa6780
|
|
INCBIN "gfx/billboard/maps/ceruleancity.2bpp"
|
|
VermilionCitySeasidePic: ; 0xa6900
|
|
INCBIN "gfx/billboard/maps/vermilioncityseaside.2bpp"
|
|
VermilionCityStreetsPic: ; 0xa6a80
|
|
INCBIN "gfx/billboard/maps/vermilioncitystreets.2bpp"
|
|
RockMountainPic: ; 0xa6c00
|
|
INCBIN "gfx/billboard/maps/rockmountain.2bpp"
|
|
LavenderTownPic: ; 0xa6d80
|
|
INCBIN "gfx/billboard/maps/lavendertown.2bpp"
|
|
CeladonCityPic: ; 0xa6f00
|
|
INCBIN "gfx/billboard/maps/celadoncity.2bpp"
|
|
CyclingRoadPic: ; 0xa7080
|
|
INCBIN "gfx/billboard/maps/cyclingroad.2bpp"
|
|
FuchsiaCityPic: ; 0xa7200
|
|
INCBIN "gfx/billboard/maps/fuchsiacity.2bpp"
|
|
SafariZonePic: ; 0xa7380
|
|
INCBIN "gfx/billboard/maps/safarizone.2bpp"
|
|
SaffronCityPic: ; 0xa7500
|
|
INCBIN "gfx/billboard/maps/saffroncity.2bpp"
|
|
SeafoamIslandsPic: ; 0xa7680
|
|
INCBIN "gfx/billboard/maps/seafoamislands.2bpp"
|
|
CinnabarIslandPic: ; 0xa7800
|
|
INCBIN "gfx/billboard/maps/cinnabarisland.2bpp"
|
|
IndigoPlateauPic: ; 0xa7980
|
|
INCBIN "gfx/billboard/maps/indigoplateau.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$a7b00,$a8000 - $a7b00 ; 0xa7b00
|
|
|
|
SECTION "bank2a", ROMX, BANK[$2a]
|
|
|
|
INCBIN "baserom.gbc",$a8000,$ac000 - $a8000 ; 0xa8000
|
|
|
|
|
|
SECTION "bank2b", ROMX, BANK[$2b]
|
|
|
|
INCBIN "baserom.gbc",$ac000,$b0000 - $ac000 ; 0xac000
|
|
|
|
|
|
SECTION "bank2c", ROMX, BANK[$2c]
|
|
|
|
INCBIN "baserom.gbc",$b0000,$b3800 - $b0000 ; 0xb0000
|
|
|
|
FieldSelectTilemap: ; 0xb3800
|
|
INCBIN "gfx/tilemaps/field_select.map"
|
|
|
|
INCBIN "baserom.gbc",$b3c00,$b4000 - $b3c00 ; 0xb3c00
|
|
|
|
|
|
SECTION "bank2d", ROMX, BANK[$2d]
|
|
|
|
INCBIN "baserom.gbc",$b4000,$b4400 - $b4000 ; 0xb4000
|
|
|
|
PikachuBlinkingEyeGfx: ; 0xb4400
|
|
INCBIN "gfx/titlescreen/pikachu_blinking_eye.2bpp"
|
|
BouncingPokeballGfx: ; 0xb44460
|
|
INCBIN "gfx/titlescreen/bouncing_pokeball.2bpp"
|
|
UnusedTitlescreenGfx: ; 0xb44f0
|
|
INCBIN "gfx/titlescreen/blank_tiles.2bpp"
|
|
GameStartMenuGfx: ; 0xb4540
|
|
; Optional dialogue for "NEW GAME" or "CONTINUE"
|
|
INCBIN "gfx/titlescreen/game_start_menu.2bpp"
|
|
|
|
UnusedTitlescreenGfx2: ; 0xb4680
|
|
INCBIN "gfx/titlescreen/blank_tiles_2.2bpp"
|
|
TitlescreenGfx: ; 0xb4800
|
|
INCBIN "gfx/titlescreen/titlescreen.2bpp"
|
|
|
|
OptionMenuAndKeyConfigGfx:
|
|
OptionMenuBlankGfx: ; 0xb5800
|
|
INCBIN "gfx/option_menu/blank.2bpp"
|
|
OptionMenuArrowGfx: ; 0xb5a00
|
|
INCBIN "gfx/option_menu/arrow.2bpp"
|
|
OptionMenuPikaBubbleGfx: ; 0xb5a20
|
|
INCBIN "gfx/option_menu/pika_bubble.2bpp"
|
|
OptionMenuBouncingPokeballGfx: ; 0xb5a80
|
|
INCBIN "gfx/option_menu/bouncing_pokeball.2bpp"
|
|
OptionMenuRumblePikachuAnimationGfx: ; 0xb5b40
|
|
INCBIN "gfx/option_menu/rumble_pikachu_animation.2bpp"
|
|
OptionMenuPsyduckGfx: ; 0xb5c00
|
|
INCBIN "gfx/option_menu/psyduck.2bpp"
|
|
OptionMenuBoldArrowGfx: ; 0xb5fc0
|
|
INCBIN "gfx/option_menu/bold_arrow.2bpp"
|
|
OptionMenuUnknownGfx: ; 0xb5fd0
|
|
INCBIN "baserom.gbc",$b5fd0,$b6020 - $b5fd0
|
|
OptionMenuOptionTextGfx: ; 0xb6020
|
|
INCBIN "gfx/option_menu/option_text.2bpp"
|
|
OptionMenuPikachuGfx: ; 0xb6080
|
|
INCBIN "gfx/option_menu/pikachu.2bpp"
|
|
OptionMenuPsyduckFeetGfx: ; 0xb6170
|
|
INCBIN "gfx/option_menu/psyduck_feet.2bpp"
|
|
OptionMenuUnknown2Gfx: ; 0xb6200
|
|
INCBIN "baserom.gbc",$b6200,$b6250 - $b6200
|
|
OptionMenuRumbleTextGfx: ; 0xb6250
|
|
INCBIN "gfx/option_menu/rumble_text.2bpp"
|
|
OptionMenuUnknown3Gfx: ; 0xb62b0
|
|
INCBIN "baserom.gbc",$b62b0,$b6320 - $b62b0
|
|
OptionMenuKeyCoTextGfx: ; 0xb6320
|
|
INCBIN "gfx/option_menu/key_co_text.2bpp"
|
|
OptionMenuSoundTestDigitsGfx: ; 0xb6370
|
|
INCBIN "gfx/option_menu/sound_test_digits.2bpp"
|
|
OptionMenuNfigTextGfx: ; 0xb6470
|
|
INCBIN "gfx/option_menu/nfig_text.2bpp"
|
|
OptionMenuUnknown4Gfx: ; 0xb64a0
|
|
INCBIN "baserom.gbc",$b64a0,$b6500 - $b64a0
|
|
|
|
KeyConfigResetTextGfx: ; 0xb6500
|
|
INCBIN "gfx/key_config/reset_text.2bpp"
|
|
KeyConfigBallStartTextGfx: ; 0xb6560
|
|
INCBIN "gfx/key_config/ball_start_text.2bpp"
|
|
KeyConfigLeftFlipperTextGfx: ; 0xb65f0
|
|
INCBIN "gfx/key_config/left_flipper_text.2bpp"
|
|
KeyConfigRightFlipperTextGfx: ; 0xb6680
|
|
INCBIN "gfx/key_config/right_flipper_text.2bpp"
|
|
KeyConfigTiltTextGfx: ; 0xb6710
|
|
INCBIN "gfx/key_config/tilt_text.2bpp"
|
|
KeyConfigMenuTextGfx: ; 0xb6810
|
|
INCBIN "gfx/key_config/menu_text.2bpp"
|
|
KeyConfigKeyConfigTextGfx: ; 0xb6880
|
|
INCBIN "gfx/key_config/key_config_text.2bpp"
|
|
KeyConfigIconsGfx: ; 0xb6900
|
|
INCBIN "gfx/key_config/icons.2bpp"
|
|
|
|
OptionMenuSoundTextTextGfx: ; 0xb6a40
|
|
INCBIN "gfx/option_menu/sound_test_text.2bpp"
|
|
OptionMenuOnOffTextGfx: ; 0xb6ad0
|
|
INCBIN "gfx/option_menu/on_off_text.2bpp"
|
|
OptionMenuBGMSETextGfx: ; 0xb6b10
|
|
INCBIN "gfx/option_menu/bgm_se_text.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$b6c00,$b8000 - $b6c00 ; 0xb6c00
|
|
|
|
|
|
SECTION "bank2e", ROMX, BANK[$2e]
|
|
|
|
INCBIN "baserom.gbc",$b8000,$bc000 - $b8000 ; 0xb8000
|
|
|
|
|
|
SECTION "bank2f", ROMX, BANK[$2f]
|
|
|
|
INCBIN "baserom.gbc",$bc000,$c0000 - $bc000 ; 0xbc000
|
|
|
|
|
|
SECTION "bank30", ROMX, BANK[$30]
|
|
|
|
INCBIN "baserom.gbc",$c0000,$c3800 - $c0000 ; 0xc0000
|
|
|
|
OptionMenuTilemap: ; 0xc3800
|
|
INCBIN "gfx/tilemaps/option_menu.map"
|
|
|
|
INCBIN "baserom.gbc",$c3a40,$c4000 - $c3a40 ; 0xc3a40
|
|
|
|
|
|
SECTION "bank31", ROMX, BANK[$31]
|
|
|
|
INCBIN "baserom.gbc",$c4000,$c5800 - $c4000 ; 0xc4000
|
|
|
|
TitlescreenTilemap: ; 0xc5800
|
|
INCBIN "gfx/tilemaps/titlescreen.map"
|
|
|
|
INCBIN "baserom.gbc",$c5c00,$c6000 - $c5c00 ; 0xc4000
|
|
|
|
CopyrightScreenTilemap: ; 0xc6000
|
|
INCBIN "gfx/tilemaps/copyright_screen.map"
|
|
|
|
INCBIN "baserom.gbc",$c6400,$c8000 - $c6400 ; 0xc6400
|
|
|
|
|
|
SECTION "bank32", ROMX, BANK[$32]
|
|
|
|
INCBIN "baserom.gbc",$c8000,$cc000 - $c8000 ; 0xc8000
|
|
|
|
|
|
SECTION "bank33", ROMX, BANK[$33]
|
|
|
|
INCBIN "baserom.gbc",$cc000,$d0000 - $cc000 ; 0xcc000
|
|
|
|
|
|
SECTION "bank34", ROMX, BANK[$34]
|
|
|
|
INCBIN "baserom.gbc",$d0000,$d4000 - $d0000 ; 0xd0000
|
|
|
|
|
|
SECTION "bank35", ROMX, BANK[$35]
|
|
|
|
INCBIN "baserom.gbc",$d4000,$d8000 - $d4000 ; 0xd4000
|
|
|
|
|
|
SECTION "bank36", ROMX, BANK[$36]
|
|
|
|
INCBIN "baserom.gbc",$d8000,$da000 - $d8000 ; 0xd8000
|
|
|
|
CopyrightTextGfx: ; 0xda000
|
|
INCBIN "gfx/copyright_text.2bpp"
|
|
|
|
INCBIN "baserom.gbc",$da400,$dc000 - $da400 ; 0xda400
|
|
|
|
|
|
SECTION "bank37", ROMX, BANK[$37]
|
|
|
|
INCBIN "baserom.gbc",$dc000,$e0000 - $dc000 ; 0xdc000
|
|
|
|
|
|
SECTION "bank38", ROMX, BANK[$38]
|
|
|
|
INCBIN "baserom.gbc",$e0000,$e4000 - $e0000 ; 0xe0000
|
|
|
|
|
|
SECTION "bank39", ROMX, BANK[$39]
|
|
|
|
INCBIN "baserom.gbc",$e4000,$e8000 - $e4000 ; 0xe4000
|
|
|
|
|
|
SECTION "bank3a", ROMX, BANK[$3a]
|
|
|
|
INCBIN "baserom.gbc",$e8000,$ec000 - $e8000 ; 0xe8000
|
|
|
|
|
|
SECTION "bank3b", ROMX, BANK[$3b]
|
|
|
|
INCBIN "baserom.gbc",$ec000,$f0000 - $ec000 ; 0xec000
|
|
|
|
|
|
SECTION "bank3c", ROMX, BANK[$3c]
|
|
|
|
INCBIN "baserom.gbc",$f0000,$f4000 - $f0000 ; 0xf0000
|
|
|
|
|
|
SECTION "bank3d", ROMX, BANK[$3d]
|
|
|
|
INCBIN "baserom.gbc",$f4000,$f8000 - $f4000 ; 0xf4000
|
|
|
|
|
|
SECTION "bank3e", ROMX, BANK[$3e]
|
|
|
|
INCBIN "baserom.gbc",$f8000,$fc000 - $f8000 ; 0xf8000
|
|
|
|
|
|
SECTION "bank3f", ROMX, BANK[$3f]
|
|
|
|
INCBIN "baserom.gbc",$fc000,$fffff - $fc000 ; 0xfc000
|