summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--items/item_effects.asm534
-rw-r--r--main.asm2429
-rw-r--r--predef/cgb.asm2
3 files changed, 2035 insertions, 930 deletions
diff --git a/items/item_effects.asm b/items/item_effects.asm
index 342f61926..13d96f0a4 100644
--- a/items/item_effects.asm
+++ b/items/item_effects.asm
@@ -1133,7 +1133,120 @@ Miracleberry: ; efcc
; efda
-INCBIN "baserom.gbc", $efda, $f0a9 - $efda
+; known jump sources: efb5 (3:6fb5), efd4 (3:6fd4)
+Functionefda: ; efda (3:6fda)
+ call Functionf30d
+ ld a, $1
+ ret z
+ call Functionf058
+ ld a, $20
+ call GetPartyParamLocation
+ ld a, [hl]
+ and c
+ jr nz, .asm_eff4
+ call Functionf009
+ ld a, $1
+ ret nc
+ ld b, $f9
+.asm_eff4
+ xor a
+ ld [hl], a
+ ld a, b
+ ld [PartyMenuActionText], a ; $d141
+ call Functionf030
+ call Functionf780
+ call Functionf279
+ call Functionf795
+ ld a, $0
+ ret
+
+; known jump sources: efec (3:6fec)
+Functionf009: ; f009 (3:7009)
+ call Functionf2a6
+ jr nc, .asm_f01c
+ ld a, [PlayerSubStatus3] ; $c66a
+ bit 7, a
+ jr z, .asm_f01c
+ ld a, c
+ cp $ff
+ jr nz, .asm_f01c
+ scf
+ ret
+.asm_f01c
+ and a
+ ret
+
+; known jump sources: f156 (3:7156), f1c7 (3:71c7)
+Functionf01e: ; f01e (3:701e)
+ call Functionf2a6
+ ret nc
+ ld a, $22
+ call GetPartyParamLocation
+ ld a, [hli]
+ ld [BattleMonHP], a ; $c63c
+ ld a, [hld]
+ ld [$c63d], a
+ ret
+
+; known jump sources: effa (3:6ffa), f153 (3:7153)
+Functionf030: ; f030 (3:7030)
+ call Functionf2a6
+ ret nc
+ xor a
+ ld [BattleMonStatus], a ; $c63a
+ ld hl, PlayerSubStatus5 ; $c66c
+ res 0, [hl]
+ ld hl, PlayerSubStatus1 ; $c668
+ res 0, [hl]
+ call Functionf058
+ ld a, c
+ cp $ff
+ jr nz, .asm_f04f
+ ld hl, PlayerSubStatus3 ; $c66a
+ res 7, [hl]
+.asm_f04f
+ push bc
+ ld a, BANK(Function0x365d7)
+ ld hl, Function0x365d7
+ rst $8 ; ; indirect jump to Function0x365d7 (365d7 (d:65d7))
+ pop bc
+ ret
+
+; known jump sources: efe0 (3:6fe0), f042 (3:7042)
+Functionf058: ; f058 (3:7058)
+ push hl
+ ld a, [CurItem] ; $d106
+ ld hl, $7071
+ ld bc, $3
+.asm_f062
+ cp [hl]
+ jr z, .asm_f068
+ add hl, bc
+ jr .asm_f062
+.asm_f068
+ inc hl
+ ld b, [hl]
+ inc hl
+ ld a, [hl]
+ ld c, a
+ cp $ff
+ pop hl
+ ret
+; f071 (3:7071)
+
+INCBIN "baserom.gbc",$f071,$f09e - $f071
+
+; known jump sources: efc9 (3:6fc9), efd7 (3:6fd7), f0c5 (3:70c5), f0d3 (3:70d3), f141 (3:7141), f183 (3:7183), f189 (3:7189), f1a6 (3:71a6)
+Functionf09e: ; f09e (3:709e)
+ ld hl, $70a3
+ rst $28
+ ret
+
+; no known jump sources
+Jumptable_f0a3: ; f0a3 (3:70a3)
+ dw Functionf2a2
+ dw Functionf299
+ dw Functionf29e
RevivalHerb: ; f0a9
@@ -1267,8 +1380,425 @@ Function_0xf192: ; f192
; f1a9
-INCBIN "baserom.gbc", $f1a9, $f44f - $f1a9
+; known jump sources: f186 (3:7186), f193 (3:7193)
+Functionf1a9: ; f1a9 (3:71a9)
+ ld b, $1
+ call Functionf1f9
+ ld a, $2
+ ret c
+ call Functionf30d
+ ld a, $1
+ ret z
+ call Functionf31b
+ ld a, $1
+ ret nc
+ xor a
+ ld [Danger], a ; $c2a6
+ call Functionf395
+ call Functionf2d1
+ call Functionf01e
+ call Functionf1db
+ ld a, $f5
+ ld [PartyMenuActionText], a ; $d141
+ call Functionf279
+ call Functionf795
+ ld a, $0
+ ret
+
+; known jump sources: f117 (3:7117), f159 (3:7159), f1ca (3:71ca), f3f7 (3:73f7), f408 (3:7408)
+Functionf1db: ; f1db (3:71db)
+ push de
+ ld de, $4
+ call WaitPlaySFX
+ pop de
+ ld a, [CurPartyMon] ; $d109
+ ld hl, $c4ab
+ ld bc, $28
+ call AddNTimes
+ ld a, $2
+ ld [$d10a], a
+ ld a, $b
+ jp Predef
+
+; known jump sources: ee11 (3:6e11), ee3f (3:6e3f), ef16 (3:6f16), efaf (3:6faf), efce (3:6fce), f0ab (3:70ab), f0ca (3:70ca), f12a (3:712a), f1ab (3:71ab), f5c7 (3:75c7)
+Functionf1f9: ; f1f9 (3:71f9)
+ call Functionf20b
+ ret c
+ ld a, [CurPartySpecies] ; $d108
+ cp $fd
+ jr nz, .asm_f209
+ call Functionf7e8
+ scf
+ ret
+.asm_f209
+ and a
+ ret
+
+; known jump sources: f1f9 (3:71f9)
+Functionf20b: ; f20b (3:720b)
+ ld a, b
+ ld [PartyMenuActionText], a ; $d141
+ push hl
+ push de
+ push bc
+ call WhiteBGMap
+ call Functionf21c
+ pop bc
+ pop de
+ pop hl
+ ret
+
+; known jump sources: f215 (3:7215), f41f (3:741f)
+Functionf21c: ; f21c (3:721c)
+ ld a, BANK(Function5004f)
+ ld hl, Function5004f
+ rst $8 ; ; indirect jump to Function5004f (5004f (14:404f))
+ ld a, BANK(Function50405)
+ ld hl, Function50405
+ rst $8 ; ; indirect jump to Function50405 (50405 (14:4405))
+ ld a, BANK(Function503e0)
+ ld hl, Function503e0
+ rst $8 ; ; indirect jump to Function503e0 (503e0 (14:43e0))
+ ld a, BANK(WritePartyMenuTilemap)
+ ld hl, WritePartyMenuTilemap
+ rst $8 ; ; indirect jump to WritePartyMenuTilemap (5005f (14:405f))
+ ld a, BANK(PrintPartyMenuText)
+ ld hl, PrintPartyMenuText
+ rst $8 ; ; indirect jump to PrintPartyMenuText (5049a (14:449a))
+ call WaitBGMap
+ call Function32f9
+ call DelayFrame
+ ld a, BANK(PartyMenuSelect)
+ ld hl, PartyMenuSelect
+ rst $8 ; ; indirect jump to PartyMenuSelect (50457 (14:4457))
+ ret
+
+; known jump sources: ef6d (3:6f6d), f28a (3:728a), f40d (3:740d)
+Functionf24a: ; f24a (3:724a)
+ ld [PartyMenuActionText], a ; $d141
+ ld a, [CurPartySpecies] ; $d108
+ push af
+ ld a, [CurPartyMon] ; $d109
+ push af
+ push hl
+ push de
+ push bc
+ ld a, BANK(WritePartyMenuTilemap)
+ ld hl, WritePartyMenuTilemap
+ rst $8 ; ; indirect jump to WritePartyMenuTilemap (5005f (14:405f))
+ ld a, BANK(Function50566)
+ ld hl, Function50566
+ rst $8 ; ; indirect jump to Function50566 (50566 (14:4566))
+ call WaitBGMap
+ call Function32f9
+ call DelayFrame
+ pop bc
+ pop de
+ pop hl
+ pop af
+ ld [CurPartyMon], a ; $d109
+ pop af
+ ld [CurPartySpecies], a ; $d108
+ ret
+
+; known jump sources: f000 (3:7000), f11f (3:711f), f161 (3:7161), f1d2 (3:71d2)
+Functionf279: ; f279 (3:7279)
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ ld hl, TileMap ; $c4a0 (aliases: SpritesEnd)
+ ld bc, $168
+ ld a, $7f
+ call ByteFill
+ ld a, [PartyMenuActionText] ; $d141
+ call Functionf24a
+ ld a, $1
+ ld [hBGMapMode], a ; $ff00+$d4
+ ld c, $32
+ call DelayFrames
+ jp Functiona80
+
+; known jump sources: f133 (3:7133)
+Functionf299: ; f299 (3:7299)
+ call Functionf7f2
+ jr Functionf2a2
+
+; known jump sources: efb2 (3:6fb2), efd1 (3:6fd1), f0ae (3:70ae), f0cd (3:70cd), f12d (3:712d)
+Functionf29e: ; f29e (3:729e)
+ xor a
+ ld [$d0ec], a
+
+; known jump sources: f29c (3:729c)
+Functionf2a2: ; f2a2 (3:72a2)
+ call ClearPalettes
+ ret
+
+; known jump sources: f009 (3:7009), f01e (3:701e), f030 (3:7030)
+Functionf2a6: ; f2a6 (3:72a6)
+ ld a, [IsInBattle] ; $d22d (aliases: EnemyMonEnd)
+ and a
+ ret z
+ ld a, [CurPartyMon] ; $d109
+ push hl
+ ld hl, CurBattleMon ; $d0d4
+ cp [hl]
+ pop hl
+ jr nz, .asm_f2b8
+ scf
+ ret
+.asm_f2b8
+ xor a
+ ret
+
+; known jump sources: f114 (3:7114)
+Functionf2ba: ; f2ba (3:72ba)
+ call Functionf36f
+ srl d
+ rr e
+ jr asm_f2c6
+
+; known jump sources: f10f (3:710f), f148 (3:7148), f2f5 (3:72f5)
+Functionf2c3: ; f2c3 (3:72c3)
+ call Functionf36f
+asm_f2c6: ; f2c6 (3:72c6)
+ ld a, $22
+ call GetPartyParamLocation
+ ld [hl], d
+ inc hl
+ ld [hl], e
+ jp Functionf328
+
+; known jump sources: f1c4 (3:71c4), f405 (3:7405)
+Functionf2d1: ; f2d1 (3:72d1)
+ ld a, $23
+ call GetPartyParamLocation
+ ld a, [hl]
+ add e
+ ld [hld], a
+ ld a, [hl]
+ adc d
+ ld [hl], a
+ jr c, .asm_f2f5
+ call Functionf328
+ ld a, $23
+ call GetPartyParamLocation
+ ld d, h
+ ld e, l
+ ld a, $25
+ call GetPartyParamLocation
+ ld a, [de]
+ sub [hl]
+ dec de
+ dec hl
+ ld a, [de]
+ sbc [hl]
+ jr c, .asm_f2f8
+.asm_f2f5
+ call Functionf2c3
+.asm_f2f8
+ ret
+
+; known jump sources: f3f3 (3:73f3)
+Functionf2f9: ; f2f9 (3:72f9)
+ ld a, $23
+ call GetPartyParamLocation
+ ld a, [hl]
+ sub e
+ ld [hld], a
+ ld a, [hl]
+ sbc d
+ ld [hl], a
+ jr nc, .asm_f309
+ xor a
+ ld [hld], a
+ ld [hl], a
+.asm_f309
+ call Functionf328
+ ret
+
+; known jump sources: efda (3:6fda), f0d6 (3:70d6), f130 (3:7130), f1b1 (3:71b1), f3ed (3:73ed), f402 (3:7402), f432 (3:7432)
+Functionf30d: ; f30d (3:730d)
+ push de
+ call Functionf35f
+ call Functionf348
+ call Functionf356
+ ld a, d
+ or e
+ pop de
+ ret
+
+; known jump sources: f136 (3:7136), f1b7 (3:71b7), f437 (3:7437)
+Functionf31b: ; f31b (3:731b)
+ call Functionf356
+ ld h, d
+ ld l, e
+ call Functionf36f
+ ld a, l
+ sub e
+ ld a, h
+ sbc d
+ ret
+
+; known jump sources: f2ce (3:72ce), f2de (3:72de), f309 (3:7309)
+Functionf328: ; f328 (3:7328)
+ ld a, $22
+ call GetPartyParamLocation
+ ld a, [hli]
+ ld [$d1ef], a
+ ld a, [hl]
+ ld [$d1ee], a
+ ret
+; f336 (3:7336)
+
+INCBIN "baserom.gbc",$f336,$f348 - $f336
+
+; known jump sources: f311 (3:7311)
+Functionf348: ; f348 (3:7348)
+ ld a, $22
+ call GetPartyParamLocation
+ ld a, [hli]
+ ld [$d1ed], a
+ ld a, [hl]
+ ld [$d1ec], a
+ ret
+
+; known jump sources: f314 (3:7314), f31b (3:731b)
+Functionf356: ; f356 (3:7356)
+ ld a, [$d1ed]
+ ld d, a
+ ld a, [$d1ec]
+ ld e, a
+ ret
+
+; known jump sources: f30e (3:730e)
+Functionf35f: ; f35f (3:735f)
+ push hl
+ ld a, $24
+ call GetPartyParamLocation
+ ld a, [hli]
+ ld [Buffer2], a ; $d1eb (aliases: MovementType)
+ ld a, [hl]
+ ld [Buffer1], a ; $d1ea (aliases: MagikarpLength)
+ pop hl
+ ret
+
+; known jump sources: f2ba (3:72ba), f2c3 (3:72c3), f320 (3:7320)
+Functionf36f: ; f36f (3:736f)
+ ld a, [Buffer2] ; $d1eb (aliases: MovementType)
+ ld d, a
+ ld a, [Buffer1] ; $d1ea (aliases: MagikarpLength)
+ ld e, a
+ ret
+
+; known jump sources: f3f0 (3:73f0), f3fb (3:73fb)
+Functionf378: ; f378 (3:7378)
+ push bc
+ ld a, $24
+ call GetPartyParamLocation
+ ld a, [hli]
+ ld [hPastLeadingZeroes], a ; $ff00+$b3 (aliases: hDividend, hProduct)
+ ld a, [hl]
+ ld [hQuotient], a ; $ff00+$b4 (aliases: hMultiplicand)
+ ld a, $5
+ ld [hDivisor], a ; $ff00+$b7 (aliases: hMultiplier)
+ ld b, $2
+ call Divide
+ ld a, [$FF00+$b5]
+ ld d, a
+ ld a, [$FF00+$b6]
+ ld e, a
+ pop bc
+ ret
+
+; known jump sources: f1c1 (3:71c1)
+Functionf395: ; f395 (3:7395)
+ push hl
+ ld a, [CurItem] ; $d106
+ ld hl, $73af
+ ld d, a
+.asm_f39d
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_f3a9
+ cp d
+ jr z, .asm_f3aa
+ inc hl
+ inc hl
+ jr .asm_f39d
+.asm_f3a9
+ scf
+.asm_f3aa
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ pop hl
+ ret
+; f3af (3:73af)
+
+INCBIN "baserom.gbc",$f3af,$f3df - $f3af
+
+Functionf3df: ; f3df (3:73df)
+ ld a, [$d0d8]
+ dec a
+ ld b, a
+ call Functionf419
+ jr c, .asm_f413
+ ld a, b
+ ld [CurPartyMon], a ; $d109
+ call Functionf30d
+ call Functionf378
+ call Functionf2f9
+ push bc
+ call Functionf1db
+ pop bc
+ call Functionf378
+ ld a, c
+ ld [CurPartyMon], a ; $d109
+ call Functionf30d
+ call Functionf2d1
+ call Functionf1db
+ ld a, $f5
+ call Functionf24a
+ call Functiona36
+.asm_f413
+ ld a, b
+ inc a
+ ld [$d0d8], a
+ ret
+
+; known jump sources: f3e4 (3:73e4), f448 (3:7448)
+Functionf419: ; f419 (3:7419)
+ push bc
+ ld a, $1
+ ld [PartyMenuActionText], a ; $d141
+ call Functionf21c
+ pop bc
+ jr c, .asm_f43e
+ ld a, [$d0d8]
+ dec a
+ ld c, a
+ ld a, b
+ cp c
+ jr z, .asm_f440
+ ld a, c
+ ld [CurPartyMon], a ; $d109
+ call Functionf30d
+ jr z, .asm_f440
+ call Functionf31b
+ jr nc, .asm_f440
+ xor a
+ ret
+.asm_f43e
+ scf
+ ret
+.asm_f440
+ push bc
+ ld hl, $744a
+ call Function1d67
+ pop bc
+ jr Functionf419
+; f44a (3:744a)
+INCBIN "baserom.gbc",$f44a,$f44f - $f44a
EscapeRope: ; f44f
xor a
diff --git a/main.asm b/main.asm
index 8ba6b06fd..3d87ed6c0 100644
--- a/main.asm
+++ b/main.asm
@@ -176,17 +176,13 @@ Function1bb1: ; 1bb1
; 1bc9
Function1bc9: ; 1bc9
- ld hl, $41a8
- ld a, $9
- rst FarCall
+ callab Function241a8
call Function1bdd
ret
; 1bd3
Function1bd3: ; 1bd3
- ld hl, $41ab
- ld a, $9
- rst FarCall
+ callab Function241ab
call Function1bdd
ret
; 1bdd
@@ -226,9 +222,7 @@ Function1bf7: ; 1bf7
; 1c00
Function1c00: ; 1c00
- ld hl, $4374
- ld a, $9
- rst FarCall
+ callab Function24374
ret
; 1c07
@@ -2650,12 +2644,8 @@ RefreshBattleHuds: ; 39c9
; 39d4
UpdateBattleHuds: ; 39d4
- ld a, $f
- ld hl, $5f48
- rst FarCall ; UpdatePlayerHud
- ld a, $f
- ld hl, $6036
- rst FarCall ; UpdateEnemyHud
+ callba Function3df48
+ callba Function3e036
ret
; 39e1
@@ -6321,9 +6311,7 @@ Function4ecd: ; 4ecd
add hl, bc
ld a, [hl]
ld b, a
- ld a, $2
- ld hl, $407e
- rst FarCall
+ callba Function807e
pop bc
ld hl, $0005
add hl, bc
@@ -6821,9 +6809,7 @@ Function55ac: ; 55ac
ret nc
ld d, h
ld e, l
- ld a, $2
- ld hl, $4286
- rst FarCall
+ callba Function8286
ret
; 55b9
@@ -7186,9 +7172,7 @@ Function579d: ; 579d
ld [$d04e], a
ld [$d4e2], a
call Function57bc
- ld a, $5
- ld hl, $49c6
- rst FarCall
+ callba Function149c6
call c, Function57d9
call Function57ca
ret
@@ -7260,9 +7244,7 @@ Function5803: ; 5803
ret c
ld a, c
call Function582c
- ld a, $2
- ld hl, $448a
- rst FarCall
+ callba Function848a
ret
; 5815
@@ -7800,9 +7782,7 @@ Function5ae8: ; 5ae8
ld a, e
ld [CurMusic], a
call StartMusic
- ld a, $12
- ld hl, $5cdc
- rst FarCall
+ callba MainMenu
jp $6219
; 5b04
@@ -7852,12 +7832,8 @@ Function5b44: ; 5b44
MysteryGift: ; 5b54
call UpdateTime
- ld a, $4
- ld hl, $5548
- rst FarCall
- ld a, $41
- ld hl, $48ba
- rst FarCall
+ callba Function11548
+ callba Function1048ba
ret
; 5b64
@@ -7884,20 +7860,14 @@ NewGame: ; 5b6b
; 5b8f
Function5b8f: ; 5b8f
- ld a, $41
- ld hl, $632f
- rst FarCall
+ callba Function10632f
jr c, .asm_5b9e
- ld a, $12
- ld hl, $4dcb
- rst FarCall
+ callba Function48dcb
ret
.asm_5b9e
ld c, $0
- ld a, $12
- ld hl, $402f
- rst FarCall
+ callba Function4802f
ret
; 5ba7
@@ -8021,17 +7991,11 @@ Function5bae: ; 5bae
call Function5ce9
- ld a, $9
- ld hl, $6751
- rst FarCall
+ callba Function26751
- ld a, $11
- ld hl, $4765
- rst FarCall
+ callba Function44765
- ld a, $41
- ld hl, $61c0
- rst FarCall
+ callba Function1061c0
call ResetGameTime
ret
@@ -8126,12 +8090,8 @@ Function5ce9: ; 5ce9
Function5d23: ; 5d23
call Function610f
- ld a, $2
- ld hl, $4029
- rst FarCall
- ld a, $4
- ld hl, $53d6
- rst FarCall
+ callba Function8029
+ callba Function113d6
ret
; 5d33
@@ -8163,13 +8123,9 @@ Function5d33: ; 5d33
; 5d65
Continue: ; 5d65
- ld a, $5
- ld hl, $4ea5
- rst FarCall
+ callba Function14ea5
jr c, .asm_5dd6
- ld a, $5
- ld hl, $50b9
- rst FarCall
+ callba Function150b9
call Function1d6e
call Function5e85
ld a, $1
@@ -8200,15 +8156,9 @@ Continue: ; 5d65
call ClearTileMap
ld c, $14
call DelayFrames
- ld a, $a
- ld hl, $6394
- rst FarCall
- ld a, $41
- ld hl, $5091
- rst FarCall
- ld a, $5
- ld hl, $40ae
- rst FarCall
+ callba Function2a394
+ callba Function105091
+ callba Function140ae
ld a, [$d4b5]
cp $1
jr z, .asm_5dd7
@@ -8240,9 +8190,7 @@ Function5de7: ; 5de7
; 5df0
Function5df0: ; 5df0
- ld a, $41
- ld hl, $632f
- rst FarCall
+ callba Function10632f
ret nc
ld hl, $d479
bit 1, [hl]
@@ -8256,12 +8204,8 @@ Function5df0: ; 5df0
ld c, 20
call DelayFrames
ld c, $1
- ld a, $12
- ld hl, $402f
- rst FarCall
- ld a, $5
- ld hl, $509a
- rst FarCall
+ callba Function4802f
+ callba Function1509a
ld a, $8
ld [MusicFade], a
ld a, MUSIC_NONE % $100
@@ -8293,9 +8237,7 @@ Function5e48: ; 5e48
call Function6e3
and $80
jr z, .asm_5e5b
- ld a, $8
- ld hl, $4021
- rst FarCall
+ callba Function20021
ld a, c
and a
jr z, .asm_5e5b
@@ -8496,9 +8438,7 @@ Function5f84: ; 5f84
OakSpeech: ; 0x5f99
- ld a, $24
- ld hl, $4672
- rst FarCall
+ callba Function90672
call Function4dd
call ClearTileMap
@@ -8615,18 +8555,14 @@ NamePlayer: ; 0x6074
dec a
jr z, .NewName
call Function60fa
- ld a, $2
- ld hl, $4c1d
- rst FarCall
+ callba Function8c1d
callba MovePlayerPicLeft
ret
.NewName
ld b, 1
ld de, PlayerName
- ld a, $4
- ld hl, $56c1
- rst FarCall
+ callba Function116c1
call Function4b6
call ClearTileMap
@@ -8636,9 +8572,7 @@ NamePlayer: ; 0x6074
xor a
ld [CurPartySpecies], a
- ld a, $22
- ld hl, $4874
- rst FarCall
+ callba DrawIntroPlayerPic
ld b, $1c
call GetSGBLayout
@@ -8848,13 +8782,9 @@ Function61cd: ; 61cd
Function620b: ; 620b
- ld hl, $4579
- ld a, $39
- rst FarCall
+ callab Functione4579
jr c, .asm_6219
- ld a, $39
- ld hl, Function48ac
- rst FarCall
+ callba Functione48ac
.asm_6219
ld a, [rSVBK]
@@ -8920,9 +8850,7 @@ Function627b: ; 627b
bit 7, a
jr nz, .asm_6290
call Function62a3
- ld a, $43
- ld hl, $6ea7
- rst FarCall
+ callba Function10eea7
call DelayFrame
and a
ret
@@ -9123,16 +9051,12 @@ Function6375: ; 6375
; 6389
Function6389: ; 6389
- ld a, $13
- ld hl, $554c
- rst FarCall
+ callba Function4d54c
jp Init
; 6392
Function6392: ; 6392
- ld a, $13
- ld hl, $53b1
- rst FarCall
+ callba Function4d3b1
jp Init
; 639b
@@ -9204,9 +9128,7 @@ CopyrightString: ; 63fd
; 642e
GameInit: ; 642e
- ld a, $5
- ld hl, $4f1c
- rst FarCall
+ callba Function14f1c
call Function1fbf
call WhiteBGMap
call ClearTileMap
@@ -9253,20 +9175,14 @@ Function6473: ; 6473
ld a, $9c
call Function64b9
call Function2e20
- ld a, $12
- ld hl, $5409
- rst FarCall
- ld a, $2
- ld hl, $56a4
- rst FarCall
+ callba Function49409
+ callba Function96a4
ld a, $1
ld [hCGBPalUpdate], a
xor a
ld [hBGMapMode], a
ld [hWY], a
- ld a, $1
- ld hl, $64db
- rst FarCall
+ callba Function64db
ld a, $98
call Function64b9
xor a
@@ -10654,9 +10570,7 @@ DaycareStep: ; 7282
call Random
ld [hl], a
- ld hl, $6e1d
- ld a, $5
- rst FarCall
+ callab Function16e1d
ld a, [$d265]
cp $e6
ld b, $50
@@ -10700,9 +10614,7 @@ SpecialGiveShuckle: ; 7305
; Caught data.
ld b, 0
- ld a, $13
- ld hl, $5ba3
- rst FarCall
+ callba Function4dba3
; Holding a Berry.
ld bc, PartyMon2 - PartyMon1
@@ -13183,9 +13095,7 @@ Functionc7ce: ; c7ce
call GetFacingTileCoord
ld c, a
push de
- ld a, $5
- ld hl, $49f5
- rst FarCall
+ callba Function149f5
pop de
jr nc, .asm_c7fc
call Function2a66
@@ -13287,9 +13197,7 @@ Functionc8b5: ; c8b5
callba CheckBadge
jr c, .asm_c8dd
push hl
- ld a, $22
- ld hl, $6e30
- rst FarCall
+ callba Function8ae30
pop hl
jr c, .asm_c8d1
ld a, [$d847]
@@ -13743,9 +13651,7 @@ Functioncb38: ; cb38
ld a, [StandingTile]
call CheckWaterfallTile
ret z
- ld a, $41
- ld hl, $60c1
- rst FarCall
+ callba Function1060c1
ld a, $1
ld [ScriptVar], a
ret
@@ -13811,12 +13717,13 @@ UnknownText_0xcb90: ; 0xcb90
Functioncb95: ; cb95
call Functionc6ea
ld a, $1
- jr .asm_cba1
+ jr asm_cba1
+Functioncb9c: ; cb9c
call Functionc6ea
ld a, $2
-.asm_cba1
+asm_cba1
ld [Buffer2], a
.asm_cba4
ld hl, Tablecbb2
@@ -14224,9 +14131,7 @@ Functionce1d: ; ce1d
call Function2173
ld a, [$d1ef]
ld e, a
- ld a, $23
- ld hl, $47d4
- rst FarCall
+ callba Function8c7d4
call Function2879
call Function2914
ret
@@ -16119,9 +16024,7 @@ Functiond88c: ; d88c
push de
ld a, [CurPartyLevel]
ld d, a
- ld hl, $4e47
- ld a, $14
- rst FarCall
+ callab Function50e47
pop de
ld a, [hMultiplicand]
ld [de], a
@@ -16294,9 +16197,7 @@ Functiond88c: ; d88c
call AddNTimes
ld a, $2d
call Predef
- ld hl, $7a18
- ld a, $3e
- rst FarCall
+ callab Functionfba18
.asm_da6b
scf
@@ -16679,9 +16580,7 @@ Functiondcb6: ; dcb6
push bc
push hl
push de
- ld a, $3
- ld hl, $78ec
- rst FarCall
+ callba Functionf8ec
pop de
pop hl
ld a, [$d265]
@@ -16929,9 +16828,7 @@ Functionde6e: ; de6e
push de
ld a, [CurPartyLevel]
ld d, a
- ld hl, $4e47
- ld a, $14
- rst FarCall
+ callab Function50e47
pop de
ld a, [hMultiplicand]
ld [de], a
@@ -16978,9 +16875,7 @@ Functionde6e: ; de6e
ld hl, BoxMon1DVs
ld a, $2d
call Predef
- ld hl, $7a18
- ld a, $3e
- rst FarCall
+ callab Functionfba18
.asm_df20
ld hl, BoxMon1Moves
@@ -17644,9 +17539,7 @@ Functione277: ; e277
ld [hli], a
ld [hl], $e9
pop bc
- ld a, $13
- ld hl, $5ba3
- rst FarCall
+ callba Function4dba3
jr .asm_e3b2
.asm_e35e
@@ -17670,9 +17563,7 @@ Functione277: ; e277
call Random
ld [hl], a
call CloseSRAM
- ld a, $13
- ld hl, $5b92
- rst FarCall
+ callba Function4db92
jr .asm_e3b2
pop de
@@ -17682,20 +17573,14 @@ Functione277: ; e277
ld a, b
and a
jr z, .asm_e3a0
- ld a, $13
- ld hl, $5b83
- rst FarCall
+ callba Function4db83
jr .asm_e3a6
.asm_e3a0
- ld a, $13
- ld hl, $5b49
- rst FarCall
+ callba Function4db49
.asm_e3a6
- ld a, $13
- ld hl, $5b3b
- rst FarCall
+ callba Function4db3b
pop de
jr c, .asm_e3b2
call Functione3de
@@ -17736,9 +17621,7 @@ Functione3de: ; e3de
pop de
push de
ld b, $0
- ld a, $4
- ld hl, $56c1
- rst FarCall
+ callba Function116c1
pop hl
ld de, StringBuffer1
call InitName
@@ -17971,12 +17854,8 @@ Functione6ce: ; e6ce
and a
jr z, .asm_e6ea
ld [$d265], a
- ld a, $33
- ld hl, $40c7
- rst FarCall
- ld a, $33
- ld hl, $4000
- rst FarCall
+ callba Functioncc0c7
+ callba Functioncc000
ld bc, $0e07
call Function1dd2
ret c
@@ -18275,23 +18154,24 @@ Functionf7dc: ; f7dc
Functionf7e8: ; f7e8
ld hl, $7810
- jr .asm_f804
+ jr asm_f804
ld hl, $7815
- jr .asm_f804
+ jr asm_f804
+Functionf7f2: ; f7f2
ld hl, $781f
- jr .asm_f804
+ jr asm_f804
ld hl, $781a
- jr .asm_f804
+ jr asm_f804
ld hl, $782e
- jr .asm_f804
+ jr asm_f804
ld hl, $7833
-.asm_f804
+asm_f804
xor a
ld [$d0ec], a
jp PrintText
@@ -19610,9 +19490,7 @@ Function1089d: ; 1089d
ret
.asm_108c5
- ld a, $12
- ld hl, $4e81
- rst FarCall
+ callba Function48e81
ret
; 108cc
@@ -20733,9 +20611,7 @@ Function11915: ; 11915
bit 7, a
jr nz, .asm_11930
call Function11968
- ld a, $23
- ld hl, $4f62
- rst FarCall
+ callba Function8cf62
call Function11940
call DelayFrame
and a
@@ -22066,9 +21942,7 @@ Function124fa: ; 124fa
HalveMoney: ; 12513
; Empty function...
- ld a, $41
- ld hl, $60c7
- rst FarCall
+ callba Function1060c7
; Halve the player's money.
ld hl, Money
@@ -22090,9 +21964,7 @@ Function12527: ; 12527
ld d, a
ld a, [$dcb3]
ld e, a
- ld a, $5
- ld hl, $5344
- rst FarCall
+ callba Function15344
ld a, c
jr c, .asm_12539
xor a
@@ -22106,9 +21978,7 @@ INCBIN "baserom.gbc",$1253d,$12580 - $1253d
Function12580: ; 12580
- ld a, $2e
- ld hl, $4172
- rst FarCall
+ callba Functionb8172
jr c, .asm_1258d
ld hl, $65ba
jr .asm_12590
@@ -22508,9 +22378,7 @@ StartMenu: ; 125cd
ld hl, StatusFlags2
bit 2, [hl] ; bug catching contest
ret z
- ld a, $9
- ld hl, $4bdc
- rst FarCall
+ callba Function24bdc
ret
; 128de
@@ -22520,9 +22388,7 @@ StartMenu: ; 125cd
jr nz, .contest
ret
.contest
- ld a, $9
- ld hl, $4be7
- rst FarCall
+ callba Function24be7
ret
; 128ed
@@ -22560,9 +22426,7 @@ StartMenu_Save: ; 1290b
; Save the game.
call Function2879
- ld a, $5
- ld hl, $4a1a
- rst FarCall
+ callba Function14a1a
jr nc, .asm_12919
ld a, 0
ret
@@ -22586,9 +22450,7 @@ StartMenu_Status: ; 12928
; Player status.
call FadeToMenu
- ld a, $9
- ld hl, $5105
- rst FarCall
+ callba Function25105
call Function2b3c
ld a, 0
ret
@@ -22602,9 +22464,7 @@ StartMenu_Pokedex: ; 12937
jr z, .asm_12949
call FadeToMenu
- ld a, $10
- ld hl, $4000
- rst FarCall
+ callba Function40000
call Function2b3c
.asm_12949
@@ -22616,9 +22476,7 @@ StartMenu_Pokedex: ; 12937
StartMenu_Pokegear: ; 1294c
call FadeToMenu
- ld a, $24
- ld hl, $4b8d
- rst FarCall
+ callba Function90b8d
call Function2b3c
ld a, 0
ret
@@ -22628,9 +22486,7 @@ StartMenu_Pokegear: ; 1294c
StartMenu_Pack: ; 1295b
call FadeToMenu
- ld a, $4
- ld hl, $4000
- rst FarCall
+ callba Function10000
ld a, [$cf66]
and a
jr nz, .asm_12970
@@ -22658,15 +22514,9 @@ StartMenu_Pokemon: ; 12976
call WhiteBGMap
.menu
- ld a, $14
- ld hl, $404f
- rst FarCall ; load gfx
- ld a, $14
- ld hl, $4405
- rst FarCall ; setup menu?
- ld a, $14
- ld hl, $43e0
- rst FarCall ; load menu pokémon sprites
+ callba Function5004f
+ callba Function50405
+ callba Function503e0
.menunoreload
callba WritePartyMenuTilemap
@@ -22726,12 +22576,8 @@ PartyMonItemName: ; 12a6c
CancelPokemonAction: ; 12a79
- ld a, $14
- ld hl, $4405
- rst FarCall
- ld a, $23
- ld hl, $6a71
- rst FarCall
+ callba Function50405
+ callba Function8ea71
ld a, 1
ret
; 12a88
@@ -22741,9 +22587,7 @@ PokemonActionSubmenu: ; 12a88
hlcoord 1, 15
ld bc, $0212 ; box size
call ClearBox
- ld a, $9
- ld hl, $4d19
- rst FarCall
+ callba Function24d19
call GetCurNick
ld a, [MenuSelection]
ld hl, .Actions
@@ -22796,12 +22640,8 @@ SwitchPartyMons: ; 12aec
inc a
ld [$d0e3], a
- ld a, $23
- ld hl, $6a8c
- rst FarCall
- ld a, $14
- ld hl, $442d
- rst FarCall
+ callba Function8ea8c
+ callba Function5042d
ld a, 4
ld [PartyMenuActionText], a
@@ -22822,22 +22662,14 @@ SwitchPartyMons: ; 12aec
bit 1, b
jr c, .DontSwitch
- ld a, $14
- ld hl, $4f12
- rst FarCall
+ callba Function50f12
xor a
ld [PartyMenuActionText], a
- ld a, $14
- ld hl, $404f
- rst FarCall
- ld a, $14
- ld hl, $4405
- rst FarCall
- ld a, $14
- ld hl, $43e0
- rst FarCall
+ callba Function5004f
+ callba Function50405
+ callba Function503e0
ld a, 1
ret
@@ -22894,14 +22726,10 @@ GiveTakePartyMonItem: ; 12b60
Function12ba9: ; 12ba9
- ld a, $4
- ld hl, $46a5
- rst FarCall
+ callba Function106a5
.loop
- ld a, $4
- ld hl, $46be
- rst FarCall
+ callba Function106be
ld a, [$cf66]
and a
@@ -22940,9 +22768,7 @@ Function12bd9: ; 12bd9
push hl
ld d, a
- ld a, $2e
- ld hl, $5e76
- rst FarCall
+ callba ItemIsMail
pop hl
jr c, .asm_12c01
ld a, [hl]
@@ -23002,9 +22828,7 @@ GivePartyItem: ; 12c4c
ld a, [CurItem]
ld [hl], a
ld d, a
- ld a, $2e
- ld hl, $5e76
- rst FarCall
+ callba ItemIsMail
jr nc, .asm_12c5f
call $6cfe
@@ -23025,9 +22849,7 @@ TakePartyItem: ; 12c60
call Function12cdf
jr nc, .asm_12c94
- ld a, $2e
- ld hl, $5e76
- rst FarCall
+ callba ItemIsMail
call GetPartyItemLocation
ld a, [hl]
ld [$d265], a
@@ -23189,9 +23011,7 @@ Function12d45: ; 12d45
jp .asm_12dc6
.asm_12d6d
- ld a, $2e
- ld hl, $5229
- rst FarCall
+ callba Functionb9229
ld a, $0
ret
@@ -23290,9 +23110,7 @@ OpenPartyStats: ; 12e00
Function12e1b: ; 12e1b
- ld a, $3
- ld hl, $4785
- rst FarCall
+ callba Functionc785
ld a, [$d0ec]
cp $1
jr nz, .asm_12e2d
@@ -23313,9 +23131,7 @@ Function12e30: ; 12e30
jr z, .asm_12e4c
cp $0
jr z, .asm_12e4f
- ld a, $41
- ld hl, $60b5
- rst FarCall
+ callba Function1060b5
ld b, $4
ld a, $2
ret
@@ -23332,9 +23148,7 @@ Function12e30: ; 12e30
INCBIN "baserom.gbc",$12e52,$12e55 - $12e52
Function12e55: ; 12e55
- ld a, $3
- ld hl, $48ac
- rst FarCall
+ callba Functionc8ac
ld a, [$d0ec]
cp $1
jr nz, .asm_12e67
@@ -23362,9 +23176,7 @@ Function12e6a: ; 12e6a
; 12e7f
Function12e7f: ; 12e7f
- ld a, $3
- ld hl, $4d9d
- rst FarCall
+ callba Functioncd9d
ld a, [$d0ec]
cp $1
jr nz, .asm_12e91
@@ -23378,9 +23190,7 @@ Function12e7f: ; 12e7f
; 12e94
Function12e94: ; 12e94
- ld a, $3
- ld hl, $4ade
- rst FarCall
+ callba Functioncade
ld a, [$d0ec]
cp $1
jr nz, .asm_12ea6
@@ -23394,9 +23204,7 @@ Function12e94: ; 12e94
; 12ea9
Function12ea9: ; 12ea9
- ld a, $3
- ld hl, $4c61
- rst FarCall
+ callba Functioncc61
ld a, [$d0ec]
and a
jr z, .asm_12eba
@@ -23410,9 +23218,7 @@ Function12ea9: ; 12ea9
; 12ebd
Function12ebd: ; 12ebd
- ld a, $3
- ld hl, $4909
- rst FarCall
+ callba Functionc909
ld a, [$d0ec]
and a
jr z, .asm_12ece
@@ -23426,9 +23232,7 @@ Function12ebd: ; 12ebd
; 12ed1
Function12ed1: ; 12ed1
- ld a, $3
- ld hl, $4b9c
- rst FarCall
+ callba Functioncb9c
ld a, [$d0ec]
cp $1
jr nz, .asm_12ee3
@@ -23444,9 +23248,7 @@ Function12ed1: ; 12ed1
Function12ee6: ; 12ee6
call Function12f05
jr nc, .asm_12ef3
- ld a, $3
- ld hl, $73df
- rst FarCall
+ callba Functionf3df
jr .asm_12ef9
.asm_12ef3
@@ -23484,9 +23286,7 @@ Function12f05: ; 12f05
; 12f26
Function12f26: ; 12f26
- ld a, $3
- ld hl, $4e7d
- rst FarCall
+ callba Functionce7d
ld a, [$d0ec]
cp $1
jr nz, .asm_12f38
@@ -23500,9 +23300,7 @@ Function12f26: ; 12f26
; 12f3b
Function12f3b: ; 12f3b
- ld a, $3
- ld hl, $4eeb
- rst FarCall
+ callba Functionceeb
ld a, [$d0ec]
cp $1
jr nz, .asm_12f4d
@@ -23516,9 +23314,7 @@ Function12f3b: ; 12f3b
; 12f50
Function12f50: ; 12f50
- ld a, $14
- ld hl, $46bc
- rst FarCall
+ callba Function506bc
ld b, $4
ld a, $2
ret
@@ -23820,9 +23616,7 @@ Function13172: ; 13172
call ClearSprites
xor a
ld [hBGMapMode], a
- ld a, $3e
- ld hl, $7571
- rst FarCall
+ callba Functionfb571
callba Function8e814
ld a, [CurPartyMon]
ld e, a
@@ -23832,9 +23626,7 @@ Function13172: ; 13172
ld a, [hl]
ld [$d265], a
ld e, $2
- ld a, $23
- ld hl, $683f
- rst FarCall
+ callba Function8e83f
ld hl, $c4b4
ld b, $9
ld c, $12
@@ -23854,9 +23646,7 @@ Function13172: ; 13172
ld hl, $c4b9
call PlaceString
push bc
- ld a, $14
- ld hl, $484a
- rst FarCall
+ callba Function5084a
pop hl
call PrintLevel
ld hl, PlayerHPPal
@@ -25210,12 +25000,8 @@ Function140ae: ; 140ae
jr c, .asm_140eb
.asm_140c8
- ld a, $4
- ld hl, $53da
- rst FarCall
- ld a, $5c
- ld hl, $4923
- rst FarCall
+ callba Function113da
+ callba Function170923
ld a, $5
call GetSRAMBank
ld a, [$aa8c]
@@ -25439,9 +25225,7 @@ Function14215: ; 14215
bit 6, a
ret nz
ld c, $8
- ld a, $5
- ld hl, $442f
- rst FarCall
+ callba Function1442f
call GetMapPermission
call CheckOutdoorMap
ld c, $b
@@ -25449,9 +25233,7 @@ Function14215: ; 14215
ld c, $a
.asm_1422f
- ld a, $5
- ld hl, $442f
- rst FarCall
+ callba Function1442f
ret
; 14236
@@ -25527,9 +25309,7 @@ GetMonSprite: ; 14259
and a
jr z, .asm_1429f
- ld a, $23
- ld hl, $682b
- rst FarCall ; callba LoadMonSprite
+ callba Function8e82b
ld l, 1
ld h, 0
@@ -26742,6 +26522,7 @@ Function149af: ; 149af
ret
; 149c6
+Function149c6: ; 149c6
ld de, $1
ld hl, $49d3
ld a, [StandingTile] ; $d4e4
@@ -26784,6 +26565,7 @@ Function14a07: ; 14a07
ret
; 14a1a
+Function14a1a: ; 14a1a
call Function1d6e
ld a, $1
ld hl, $5e9a
@@ -26994,12 +26776,8 @@ Function14be6: ; 14be6
Function14c10: ; 14c10
ld a, $1
ld [$cfcd], a
- ld a, $5
- ld hl, $4056
- rst FarCall
- ld a, $41
- ld hl, $50d9
- rst FarCall
+ callba Function14056
+ callba Function1050d9
call Function14da9
call Function14dbb
call Function14dd7
@@ -27012,15 +26790,9 @@ Function14c10: ; 14c10
call Function14e76
call Function14e8b
call Function14c6b
- ld a, $11
- ld hl, $4725
- rst FarCall
- ld a, $41
- ld hl, $6187
- rst FarCall
- ld a, $5
- ld hl, $406a
- rst FarCall
+ callba Function44725
+ callba Function106187
+ callba Function1406a
ld a, $1
call GetSRAMBank
ld a, [$be45]
@@ -29053,9 +28825,7 @@ INCBIN "baserom.gbc",$15cbf,$15cef - $15cbf
Function15cef: ; 15cef
- ld a, $9
- ld hl, $4ae8
- rst FarCall
+ callba Function24ae8
call Function1ad2
ld hl, $5e18
call Function1d3c
@@ -29131,9 +28901,7 @@ Function15d83: ; 15d83
ld [$d10d], a
ld a, $0
call Function15c7d
- ld a, $9
- ld hl, $4fc9
- rst FarCall
+ callba Function24fc9
call Function1c07
ret
; 15d97
@@ -29194,9 +28962,7 @@ Function15de2: ; 15de2
call Function15df9
ld a, $63
ld [$d10d], a
- ld a, $9
- ld hl, $4fcf
- rst FarCall
+ callba Function24fcf
call Function1c07
ret
; 15df9
@@ -29244,13 +29010,9 @@ INCBIN "baserom.gbc",$15e4a,$15eb3 - $15e4a
Function15eb3: ; 15eb3
call Function2ed3
- ld a, $4
- ld hl, $46a5
- rst FarCall
+ callba Function106a5
.asm_15ebc
- ld a, $4
- ld hl, $46be
- rst FarCall
+ callba Function106be
ld a, [$cf66]
and a
jp z, Function15ece
@@ -29303,12 +29065,8 @@ Function15efd: ; 15efd
.asm_15f11
ld hl, UnknownText_0x15f73
call PrintText
- ld a, $9
- ld hl, $4af8
- rst FarCall
- ld a, $9
- ld hl, $4fe1
- rst FarCall
+ callba Function24af8
+ callba Function24fe1
call Function1c07
jr c, .asm_15f6e
ld hl, $c5b9
@@ -29332,9 +29090,7 @@ Function15efd: ; 15efd
ld hl, UnknownText_0x15fbe
call PrintTextBoxText
call Function15fc3
- ld a, $9
- ld hl, $4af0
- rst FarCall
+ callba Function24af0
call Functiona36
.asm_15f6e
@@ -31718,9 +31474,7 @@ Function2403c: ; 2403c
set 7, [hl]
.asm_2405a
call DelayFrame
- ld a, $40
- ld hl, $432e
- rst FarCall
+ callba Function10032e
ld a, [$cd2b]
and a
jr nz, .asm_24076
@@ -31755,6 +31509,8 @@ Function2408f: ; 2408f
call $411a
call Function1bc9
call Function1ff8
+
+Function24098: ; 24098
ld a, [$cf91]
bit 1, a
jr z, .asm_240a6
@@ -31947,6 +31703,7 @@ Function24193: ; 24193
Function241a8: ; 241a8
call $4329
+Function241ab: ; 241ab
ld hl, $cfa6
res 7, [hl]
ld a, [hBGMapMode]
@@ -32028,9 +31785,7 @@ Function24259: ; 24259
ld a, [$cfa5]
bit 6, a
jr z, .asm_24266
- ld hl, $4f62
- ld a, $23
- rst FarCall
+ callab Function8cf62
.asm_24266
call Functiona57
@@ -33459,17 +33214,19 @@ Function24ac3: ; 0x24ac3
Function24ae8: ; 24ae8
ld hl, $4b15
call Function1d3c
- jr .asm_24b01
+ jr asm_24b01
+Function24af0: ; 24af0
ld hl, $4b1d
call Function1d3c
- jr .asm_24b01
+ jr asm_24b01
+Function24af8: ; 24af8
ld hl, $4b15
ld de, $000b
call Function1e2e
-.asm_24b01
+asm_24b01
call Function1cbb
call Function1cfd
ld de, $0015
@@ -34169,6 +33926,7 @@ Function24fbf: ; 24fbf
Function24fc9: ; 24fc9
callba GetItemPrice
+Function24fcf: ; 24fcf
ld a, d
ld [Buffer1], a
ld a, e
@@ -34377,6 +34135,8 @@ Function250d1: ; 250d1
INCBIN "baserom.gbc",$250ed,$25105 - $250ed
+
+Function25105: ; 25105
ld a, [VramState] ; $d0ed
push af
xor a
@@ -39337,7 +39097,7 @@ Function2a355: ; 2a355
ld l, e
call Random
and $1f
- jr z, .asm_2a3cd
+ jr z, asm_2a3cd
and $3
cp [hl]
jr nc, .asm_2a36e
@@ -39361,6 +39121,7 @@ Function2a355: ; 2a355
ld c, [hl]
ret
+Function2a394: ; 2a394
ld a, [RoamMon1MapGroup]
cp $ff
jr z, .asm_2a3a6
@@ -39393,7 +39154,7 @@ Function2a355: ; 2a355
.asm_2a3ca
jp Function2a3f6
-.asm_2a3cd
+asm_2a3cd
ld hl, $640f
.asm_2a3d0
call Random
@@ -39418,7 +39179,7 @@ Function2a355: ; 2a355
inc hl
ld a, [MapNumber]
cp [hl]
- jr z, .asm_2a3cd
+ jr z, asm_2a3cd
dec hl
.asm_2a3f2
@@ -40101,9 +39862,7 @@ Function2c1b2: ; 2c1b2
ld a, $69
ld [hli], a
ld [hl], $6a
- ld a, $b
- ld hl, $410d
- rst FarCall
+ callba Function2c10d
ld b, $8
call GetSGBLayout
call Function32f9
@@ -40657,15 +40416,11 @@ Function2c7fb: ; 2c7fb
ld bc, $000c
call CopyBytes
call WhiteBGMap
- ld a, $14
- ld hl, $404f
- rst FarCall
- ld a, $14
- ld hl, $4405
- rst FarCall
- ld a, $14
- ld hl, $43e0
- rst FarCall
+
+Function2c80a: ; 2c80a
+ callba Function5004f
+ callba Function50405
+ callba Function503e0
ld a, $3
ld [PartyMenuActionText], a
.asm_2c821
@@ -41280,9 +41035,7 @@ Function2ee18: ; 2ee18
ld a, [InLinkBattle]
and a
ret z
- ld a, $b
- ld hl, $41b2
- rst FarCall
+ callba Function2c1b2
ld c, 150
call DelayFrames
call ClearTileMap
@@ -41352,9 +41105,7 @@ PlayBattleMusic: ; 2ee6c
and a
jr nz, .trainermusic
- ld a, BANK(RegionCheck)
- ld hl, RegionCheck
- rst FarCall
+ callba RegionCheck
ld a, e
and a
jr nz, .kantowild
@@ -41385,15 +41136,11 @@ PlayBattleMusic: ; 2ee6c
jr z, .done
ld de, MUSIC_KANTO_GYM_LEADER_BATTLE
- ld a, BANK(IsKantoGymLeader)
- ld hl, IsKantoGymLeader
- rst FarCall
+ callba IsKantoGymLeader
jr c, .done
ld de, MUSIC_JOHTO_GYM_LEADER_BATTLE
- ld a, BANK(IsJohtoGymLeader)
- ld hl, IsJohtoGymLeader
- rst FarCall
+ callba IsJohtoGymLeader
jr c, .done
ld de, MUSIC_RIVAL_BATTLE
@@ -41414,9 +41161,7 @@ PlayBattleMusic: ; 2ee6c
and a
jr nz, .johtotrainer
- ld a, BANK(RegionCheck)
- ld hl, RegionCheck
- rst FarCall
+ callba RegionCheck
ld a, e
and a
jr nz, .kantotrainer
@@ -41478,9 +41223,7 @@ ClearBattleRAM: ; 2ef18
xor a
call ByteFill
- ld hl, $5867
- ld a, $f
- rst FarCall
+ callab Function3d867
call Function1fbf
@@ -41574,9 +41317,7 @@ Function38000: ; 38000
ld a, [InLinkBattle]
and a
ret nz
- ld a, $f
- ld hl, $68d1
- rst FarCall
+ callba Function3e8d1
ret nz
ld a, [PlayerSubStatus5]
bit 7, a
@@ -42125,9 +41866,7 @@ Function3846c: ; 3846c
res 6, [hl]
xor a
ld [hBattleTurn], a
- ld hl, $5c5b
- ld a, $f
- rst FarCall
+ callab Function3dc5b
push af
ld a, [CurOTMon]
ld hl, OTPartyMon1Status
@@ -42146,20 +41885,12 @@ Function3846c: ; 3846c
.asm_384a3
ld a, $1
ld [$d264], a
- ld hl, $5834
- ld a, $f
- rst FarCall
- ld hl, $5867
- ld a, $f
- rst FarCall
+ callab Function3d834
+ callab Function3d867
ld hl, PlayerSubStatus1
res 7, [hl]
- ld a, $f
- ld hl, $54e1
- rst FarCall
- ld a, $f
- ld hl, $557a
- rst FarCall
+ callba Function3d4e1
+ callba Function3d57a
xor a
ld [$d264], a
ld a, [InLinkBattle]
@@ -45004,9 +44735,7 @@ Function3cf4a: ; 3cf4a
ld e, $30
call Function3e12e
call WaitBGMap
- ld a, $b
- ld hl, $4012
- rst FarCall
+ callba Function2c012
ld a, [InLinkBattle]
and a
jr z, .asm_3cf6d
@@ -45095,9 +44824,7 @@ Function3cfa4: ; 3cfa4
ld c, $28
call DelayFrames
ld c, $4
- ld a, $13
- ld hl, $6a0a
- rst FarCall
+ callba Function4ea0a
ret
.asm_3d006
@@ -45106,9 +44833,7 @@ Function3cfa4: ; 3cfa4
call DelayFrames
call EmptyBattleTextBox
ld c, $3
- ld a, $47
- ld hl, $4000
- rst FarCall
+ callba Function11c000
call Functiona80
ld hl, $c6ec
ld a, [hli]
@@ -45238,9 +44963,7 @@ Function3d0be: ; 3d0be
push bc
ld b, h
ld c, l
- ld a, $41
- ld hl, $6008
- rst FarCall
+ callba Function106008
pop bc
pop hl
.asm_3d0ce
@@ -45583,9 +45306,7 @@ Function3d2f7: ; 3d2f7
call WhiteBGMap
callba Function5004f
callba Function50405
- ld a, $2
- ld hl, $4e85
- rst FarCall
+ callba Function8e85
callba Function503e0
ret
; 3d313
@@ -45606,9 +45327,7 @@ Function3d329: ; 3d329
ret
.asm_3d335
- ld a, $40
- ld hl, $4cb5
- rst FarCall
+ callba Function100cb5
ret
; 3d33c
@@ -45716,9 +45435,7 @@ LostBattle: ; 3d38e
call EmptyBattleTextBox
ld c, 2
- ld a, $47
- ld hl, $4000
- rst FarCall
+ callba Function11c000
call Functiona80
call ClearTileMap
call WhiteBGMap
@@ -45769,9 +45486,7 @@ LostBattle: ; 3d38e
call DelayFrames
ld c, $3
- ld a, $13
- ld hl, $6a0a
- rst FarCall
+ callba Function4ea0a
scf
ret
; 3d432
@@ -46352,9 +46067,7 @@ Function3d7c7: ; 3d7c7
ld bc, TempMonSpecies
callba Function4e53f
jr c, .asm_3d82c
- ld a, $13
- ld hl, $6a44
- rst FarCall
+ callba Function4ea44
jr c, .asm_3d821
ld hl, $c4ac
ld d, $0
@@ -46953,16 +46666,16 @@ Function3dc5b: ; 3dc5b
jr nz, .asm_3dce4
ld a, [CurBattleMon]
push af
- ld hl, Function3c000
+ ld hl, DoPlayerTurn
ld a, [hBattleTurn]
and a
jr z, .asm_3dc7e
- ld hl, $400a
+ ld hl, DoEnemyTurn
ld a, [$c71a]
ld [CurBattleMon], a
.asm_3dc7e
- ld a, $d
+ ld a, BANK(DoPlayerTurn)
rst FarCall
ld a, $10
call GetBattleVarPair
@@ -47140,9 +46853,7 @@ Function3dd2f: ; 3dd2f
ld a, [hl]
ld [$d265], a
call GetItemName
- ld hl, $7192
- ld a, $9
- rst FarCall
+ callab Function27192
ld hl, RecoveredUsingText
jp StdBattleTextBox
; 3ddc8
@@ -47205,15 +46916,15 @@ Function3dde9: ; 3dde9
res 7, [hl]
.asm_3de26
- ld hl, $65fd
+ ld hl, Function0x365fd
ld a, [hBattleTurn]
and a
jr z, .asm_3de31
- ld hl, $65d7
+ ld hl, Function0x365d7
.asm_3de31
call Function3c8e4
- ld a, $d
+ ld a, BANK(Function0x365fd)
rst FarCall
call Function3c8e4
call Function3ddc8
@@ -47556,9 +47267,7 @@ Function3e043: ; 3e043
ld hl, $c4a1
ld bc, $040b
call ClearBox
- ld a, $b
- ld hl, $40c5
- rst FarCall
+ callba Function2c0c5
ld a, [TempEnemyMonSpecies]
ld [CurSpecies], a
ld [CurPartySpecies], a
@@ -47716,9 +47425,7 @@ Function3e139: ; 3e139
ld a, [BattleType]
cp $6
jr nz, .asm_3e165
- ld a, $9
- ld hl, $4f13
- rst FarCall
+ callba Function24f13
jr .asm_3e175
.asm_3e165
@@ -47761,9 +47468,7 @@ Function3e19b: ; 3e19b
ret
.asm_3e1a8
- ld a, $40
- ld hl, $4b12
- rst FarCall
+ callba Function100b12
ld a, [$cd2b]
and a
ret z
@@ -47793,18 +47498,14 @@ Function3e1c7: ; 3e1c7
jr z, .asm_3e1f1
cp $6
jr z, .asm_3e201
- ld a, $4
- ld hl, $4493
- rst FarCall
+ callba Function10493
ld a, [$d0ec]
and a
jr z, .asm_3e20d
jr .asm_3e209
.asm_3e1f1
- ld a, $4
- ld hl, $47bb
- rst FarCall
+ callba Function107bb
ld a, $5
ld [CurItem], a
call DoItemEffect
@@ -47896,9 +47597,7 @@ Function3e28d: ; 3e28d
call Function3d329
jr c, .asm_3e2da
.asm_3e2a8
- ld a, $23
- ld hl, $6a4a
- rst FarCall
+ callba Function8ea4a
call Function3e2f5
jr c, .asm_3e2c8
call Function1bee
@@ -47937,15 +47636,11 @@ Function3e28d: ; 3e28d
Function3e2f5: ; 3e2f5
call Function3d2f1
jr z, .asm_3e301
- ld a, $9
- ld hl, $4e99
- rst FarCall
+ callba Function24e99
ret
.asm_3e301
- ld a, $40
- ld hl, $4d22
- rst FarCall
+ callba Function100d22
ret
; 3e308
@@ -47964,9 +47659,7 @@ Function3e308: ; 3e308
call LowVolume
xor a
ld [MonType], a
- ld a, $13
- ld hl, $5c7b
- rst FarCall
+ callba Function4dc7b
call MaxVolume
call DisableLCD
ld hl, VTiles0
@@ -48075,9 +47768,7 @@ Function3e3ad: ; 3e3ad
; 3e3ff
Function3e3ff: ; 3e3ff
- ld hl, $446c
- ld a, $e
- rst FarCall
+ callab Function3846c
call SetEnemyTurn
jp Function3dc23
; 3e40b
@@ -48170,9 +47861,7 @@ Function3e4a8: ; 3e4a8
Function3e4bc: ; 3e4bc
call Function3d2f1
jr nz, .asm_3e4c8
- ld a, $40
- ld hl, $4b9f
- rst FarCall
+ callba Function100b9f
ret
.asm_3e4c8
@@ -48802,9 +48491,7 @@ Function3e8d1: ; 3e8d1
; 3e8e4
Function3e8e4: ; 3e8e4
- ld a, $40
- ld hl, $4a09
- rst FarCall
+ callba Function100a09
ret
; 3e8eb
@@ -49441,9 +49128,7 @@ Function3ebd8: ; 3ebd8
ld a, [OtherTrainerClass]
ld [TrainerClass], a
ld de, VTiles2
- ld hl, $520d
- ld a, $14
- rst FarCall
+ callab Function5120d
ld hl, $c4b3
ld c, $0
.asm_3ebf3
@@ -49805,16 +49490,12 @@ BoostStat: ; 3ed7c
Function3ed9f: ; 3ed9f
- ld hl, $74f2
- ld a, $3e
- rst FarCall
+ callab Functionfb4f2
ret
; 3eda6
Function3eda6: ; 3eda6
- ld hl, $750d
- ld a, $3e
- rst FarCall
+ callab Functionfb50d
ret
; 3edad
@@ -50117,9 +49798,7 @@ Function3ee3b: ; 3ee3b
call GetBaseData
push bc
ld d, $64
- ld hl, $4e47
- ld a, $14
- rst FarCall
+ callab Function50e47
pop bc
ld hl, $000a
add hl, bc
@@ -50149,9 +49828,7 @@ Function3ee3b: ; 3ee3b
ld [MonType], a
ld a, $1f
call Predef
- ld hl, $4e1b
- ld a, $14
- rst FarCall
+ callab Function50e1b
pop bc
ld hl, $001f
add hl, bc
@@ -50238,24 +49915,16 @@ Function3ee3b: ; 3ee3b
xor a
ld [$d265], a
call Function3ecab
- ld hl, Function3ec2c
- ld a, $f
- rst FarCall
- ld hl, $6d45
- ld a, $f
- rst FarCall
- ld hl, Function3df48
- ld a, $f
- rst FarCall
+ callab Function3ec2c
+ callab BadgeStatBoosts
+ callab Function3df48
call EmptyBattleTextBox
call Function309d
ld a, $1
ld [hBGMapMode], a
.asm_3f035
- ld a, $9
- ld hl, $709e
- rst FarCall
+ callba Function2709e
ld a, [CurBattleMon]
ld b, a
ld a, [CurPartyMon]
@@ -50479,9 +50148,7 @@ Function3f136: ; 3f136
ld [hld], a
.asm_3f1a8
- ld hl, $4e1b
- ld a, $14
- rst FarCall
+ callab Function50e1b
ld a, d
pop bc
pop de
@@ -50513,9 +50180,7 @@ Function3f136: ; 3f136
call Function3dfe
ld de, SFX_HIT_END_OF_EXP_BAR
call StartSFX
- ld a, $23
- ld hl, $679d
- rst FarCall
+ callba Function8e79d
call WaitSFX
ld hl, BattleText_0x80c9c
call StdBattleTextBox
@@ -50947,12 +50612,12 @@ Function3f41c: ; 3f41c
Function3f43d: ; 3f43d
ld a, [PlayerSubStatus4]
bit 4, a
- ld hl, $4640
+ ld hl, Functioncc640
jr nz, asm_3f46f
Function3f447: ; 3f447
ld a, [$c6fe]
and a
- ld hl, Function3c6cf
+ ld hl, Functioncc6cf
jr nz, asm_3f46f
ld a, [CurPartySpecies]
push af
@@ -50973,7 +50638,7 @@ asm_3f46f
push af
xor a
ld [hBattleTurn], a
- ld a, $33
+ ld a, BANK(Functioncc640)
rst FarCall
pop af
ld [hBattleTurn], a
@@ -50983,12 +50648,12 @@ asm_3f46f
Function3f47c: ; 3f47c
ld a, [EnemySubStatus4]
bit 4, a
- ld hl, $4640
+ ld hl, Functioncc640
jr nz, asm_3f4b4
Function3f486: ; 3f486
ld a, [$c6fa]
and a
- ld hl, Function3c6cf
+ ld hl, Functioncc6cf
jr nz, asm_3f4b4
ld a, [CurPartySpecies]
push af
@@ -51010,7 +50675,7 @@ asm_3f4b4
ld a, [hBattleTurn]
push af
call SetEnemyTurn
- ld a, $33
+ ld a, BANK(Functioncc640)
rst FarCall
pop af
ld [hBattleTurn], a
@@ -51041,9 +50706,7 @@ Function3f4d9: ; 3f4d9
Function3f4dd: ; 3f4dd
- ld a, $41
- ld hl, $6050
- rst FarCall
+ callba Function106050
call Function3f54e
xor a
ld [TempBattleMonSpecies], a
@@ -51128,17 +50791,11 @@ Function3f568: ; 3f568
Function3f594: ; 3f594
ld [TrainerClass], a
- ld a, $41
- ld hl, $606a
- rst FarCall
+ callba Function10606a
xor a
ld [TempEnemyMonSpecies], a
- ld hl, $557b
- ld a, $e
- rst FarCall
- ld hl, $5771
- ld a, $e
- rst FarCall
+ callab Function3957b
+ callab Function39771
ld a, [TrainerClass]
cp $9
jr nz, .asm_3f5b8
@@ -51147,9 +50804,7 @@ Function3f594: ; 3f594
.asm_3f5b8
ld de, VTiles2
- ld hl, $520d
- ld a, $14
- rst FarCall
+ callab Function5120d
xor a
ld [$ffad], a
dec a
@@ -51193,9 +50848,7 @@ Function3f594: ; 3f594
Function3f607: ; 3f607
ld a, $1
ld [IsInBattle], a
- ld a, $41
- ld hl, $605d
- rst FarCall
+ callba Function10605d
call LoadEnemyMon
ld hl, EnemyMonMove1
ld de, $c735
@@ -51378,9 +51031,7 @@ Function3f71d: ; 3f71d
; 3f759
Function3f759: ; 3f759
- ld a, $41
- ld hl, $60df
- rst FarCall
+ callba Function1060df
callba Function106187
ld a, [CurOTMon]
ld hl, OTPartyMon1Status
@@ -51400,9 +51051,7 @@ Function3f77c: ; 3f77c
ld hl, $cd2a
bit 4, [hl]
jr z, .asm_3f797
- ld a, $a
- ld hl, $7930
- rst FarCall
+ callba Function2b930
.asm_3f797
ld a, [$d0ee]
@@ -51410,23 +51059,17 @@ Function3f77c: ; 3f77c
cp $1
jr c, .asm_3f7ad
jr z, .asm_3f7b8
- ld a, $41
- ld hl, $6107
- rst FarCall
+ callba Function106107
ld de, .Draw
jr .asm_3f7c3
.asm_3f7ad
- ld a, $41
- ld hl, $60fb
- rst FarCall
+ callba Function1060fb
ld de, .Win
jr .asm_3f7c3
.asm_3f7b8
- ld a, $41
- ld hl, $6101
- rst FarCall
+ callba Function106101
ld de, .Lose
jr .asm_3f7c3
@@ -51980,9 +51623,7 @@ Function3fb6c: ; 3fb6c
call WaitBGMap
xor a
ld [hBGMapMode], a
- ld a, $13
- ld hl, $6980
- rst FarCall
+ callba Function4e980
ld a, $1
ld [hBGMapMode], a
ld a, $31
@@ -52139,9 +51780,7 @@ BattleStartMessage: ; 3fc8b
ld c, 20
call DelayFrames
- ld a, $e
- ld hl, $5939
- rst FarCall
+ callba Function39939
ld hl, WantsToBattleText
jr .asm_3fd0e
@@ -52163,9 +51802,7 @@ BattleStartMessage: ; 3fc8b
callba CheckSleepingTreeMon
jr c, .asm_3fceb
- ld a, $13
- ld hl, $6a44
- rst FarCall
+ callba Function4ea44
jr c, .asm_3fce0
hlcoord 12, 0
@@ -52186,9 +51823,7 @@ BattleStartMessage: ; 3fc8b
cp BATTLETYPE_FISH
jr nz, .asm_3fcfd
- ld a, $41
- ld hl, $6086
- rst FarCall
+ callba Function106086
ld hl, HookedPokemonAttackedText
jr .asm_3fd0e
@@ -52204,9 +51839,7 @@ BattleStartMessage: ; 3fc8b
.asm_3fd0e
push hl
- ld a, $b
- ld hl, $4000
- rst FarCall
+ callba Function2c000
pop hl
call StdBattleTextBox
@@ -52214,9 +51847,7 @@ BattleStartMessage: ; 3fc8b
ret nz
ld c, $2
- ld a, $13
- ld hl, $6a0a
- rst FarCall
+ callba Function4ea0a
ret
; 3fd26
@@ -52309,9 +51940,7 @@ Function40063: ; 40063
call Function40bdc
call Function400b4
call Function400ed
- ld a, $77
- ld hl, $6247
- rst FarCall
+ callba Function1de247
call Function41af7
ret
; 400a2
@@ -54176,9 +53805,7 @@ Function4143b: ; 4143b
.asm_4145b
ld a, $0
call GetSRAMBank
- ld a, $77
- ld hl, $60d7
- rst FarCall
+ callba Function1de0d7
ld hl, VTiles2
ld de, $a000
ld c, $31
@@ -54243,9 +53870,7 @@ Function414b7: ; 414b7
call $5504
call Function41a24
jr nz, .asm_414e0
- ld a, $77
- ld hl, $5f1c
- rst FarCall
+ callba Function1ddf1c
jr .asm_414e9
.asm_414e0
@@ -54588,9 +54213,7 @@ Function421e6: ; 421e6
ld a, $1
ld [hBGMapMode], a
call ClearSprites
- ld a, $13
- ld hl, $65e1
- rst FarCall
+ callba Function4e5e1
push af
call ClearSprites
pop af
@@ -54607,9 +54230,7 @@ Function421e6: ; 421e6
push hl
ld hl, $6478
call PrintTextBoxText
- ld a, $41
- ld hl, $6094
- rst FarCall
+ callba Function106094
ld de, MUSIC_NONE
call StartMusic
ld de, SFX_CAUGHT_MON
@@ -54667,9 +54288,7 @@ Function421e6: ; 421e6
ld hl, TempMonDVs
ld a, $2d
call Predef
- ld hl, $7a18
- ld a, $3e
- rst FarCall
+ callab Functionfba18
.asm_423ec
pop de
@@ -55032,9 +54651,7 @@ AIChooseMove: ; 440ce
ret nz
; No use picking a move if there's no choice.
- ld a, $f
- ld hl, $68d1
- rst FarCall ; CheckLockedEnemyMove
+ callba Function3e8d1
ret nz
@@ -55456,9 +55073,7 @@ Function4456e: ; 4456e
ld a, $1
call GetPartyParamLocation
ld d, [hl]
- ld a, $2e
- ld hl, $5e76
- rst FarCall
+ callba ItemIsMail
jr nc, .asm_445be
call Function44648
cp $a
@@ -55509,9 +55124,7 @@ Function44648: ; 44648
Function44654: ; 44654
push bc
push de
- ld a, $14
- ld hl, $4000
- rst FarCall
+ callba Function50000
ld a, $2
jr c, .asm_446c6
ld a, [CurPartyMon]
@@ -55519,9 +55132,7 @@ Function44654: ; 44654
ld bc, $0030
call AddNTimes
ld d, [hl]
- ld a, $2e
- ld hl, $5e76
- rst FarCall
+ callba ItemIsMail
ld a, $3
jr nc, .asm_446c6
ld a, $0
@@ -55554,16 +55165,12 @@ Function44654: ; 44654
jr nz, .asm_44691
.asm_446ab
- ld a, $3
- ld hl, $6538
- rst FarCall
+ callba Functione538
ld a, $4
jr c, .asm_446c1
xor a
ld [$d10b], a
- ld a, $3
- ld hl, $6039
- rst FarCall
+ callba Functione039
ld a, $1
.asm_446c1
@@ -57706,16 +57313,12 @@ Function4925b: ; 4925b
ld [$d262], a
call GetMoveName
call CopyName1
- ld a, $b
- ld hl, $47fb
- rst FarCall
+ callba Function2c7fb
jr c, .asm_4929c
jr .asm_49291
.asm_49289
- ld a, $b
- ld hl, $480a
- rst FarCall
+ callba Function2c80a
jr c, .asm_4929c
.asm_49291
@@ -57775,9 +57378,7 @@ Function492b9: ; 492b9
jr .asm_49300
.asm_492e5
- ld hl, $79ea
- ld a, $3
- rst FarCall
+ callab Functionf9ea
jr c, .asm_49300
ld a, $0
call Predef
@@ -58761,9 +58362,7 @@ Function49e3d: ; 49e3d
decoord 4, 16
ld a, [hHours]
ld c, a
- ld a, $24
- ld hl, $4b3e
- rst FarCall
+ callba Function90b3e
ld [hl], ":"
inc hl
ld de, hMinutes
@@ -61365,9 +60964,7 @@ Function4d3ab: ; 4d3ab
; 4d3b1
Function4d3b1: ; 4d3b1
- ld a, $2
- ld hl, $4000
- rst FarCall
+ callba Function8000
ld b, $8
call GetSGBLayout
call Functione51
@@ -61609,9 +61206,7 @@ Function4d53e: ; 4d53e
; 4d54c
Function4d54c: ; 4d54c
- ld a, $2
- ld hl, $4000
- rst FarCall
+ callba Function8000
ld b, $8
call GetSGBLayout
call Functione51
@@ -61627,9 +61222,7 @@ Function4d54c: ; 4d54c
ld a, [$cfa9]
cp $1
ret z
- ld a, $13
- ld hl, $4f1f
- rst FarCall
+ callba Function4cf1f
ret
; 4d580
@@ -62387,9 +61980,7 @@ StatsScreenInit_gotaddress
call WhiteBGMap
call ClearTileMap
call Function1ad2
- ld a, $3e
- ld hl, $753e
- rst FarCall ; this loads graphics
+ callba Functionfb53e
pop hl
call _hl_
call WhiteBGMap
@@ -63339,9 +62930,7 @@ EggStatsScreen: ; 4e33a
call DelayFrame
ld hl, TileMap
call Function3786
- ld a, $41
- ld hl, $402d
- rst FarCall
+ callba Function10402d
call $6497
ld a, [TempMonHappiness]
@@ -63823,9 +63412,7 @@ Function4e794: ; 4e794
call GetPartyLocation
ld b, h
ld c, l
- ld a, $13
- ld hl, $653f
- rst FarCall
+ callba Function4e53f
ret
; 4e7a6
@@ -64184,9 +63771,7 @@ Function4ea0a: ; 4ea0a
ld [rSVBK], a
ld bc, $cd53
ld de, $c5b9
- ld a, $47
- ld hl, $40c6
- rst FarCall
+ callba Function11c0c6
pop af
ld [rSVBK], a
ld c, $b4
@@ -64714,12 +64299,8 @@ Function5003f: ; 5003f
Function5004f: ; 5004f
call Functione58
- ld hl, $4ad1
- ld a, $2
- rst FarCall
- ld hl, $6814
- ld a, $23
- rst FarCall
+ callab Function8ad1
+ callab Function8e814
ret
; 5005f
@@ -65279,8 +64860,8 @@ Function503e0: ; 503e0
.asm_503ea
push bc
push hl
- ld hl, $683f
- ld a, $23
+ ld hl, Function8e83f
+ ld a, BANK(Function8e83f)
ld e, $0
rst FarCall
ld a, [hConnectedMapWidth]
@@ -65321,7 +64902,28 @@ Function50405: ; 50405
ret
; 5042d
-INCBIN "baserom.gbc",$5042d,$50457 - $5042d
+Function5042d: ; 0x5042d
+ ld de, $444f
+ call Function1bb1
+ ld a, [PartyCount] ; $dcd7
+ ld [$cfa3], a
+ ld b, a
+ ld a, [$d0d8]
+ and a
+ jr z, .asm_50444
+ inc b
+ cp b
+ jr c, .asm_50446
+.asm_50444
+ ld a, $1
+.asm_50446
+ ld [$cfa9], a
+ ld a, $3
+ ld [$cfa8], a
+ ret
+; 5044f (14:444f)
+
+INCBIN "baserom.gbc",$5044f,$50457 - $5044f
PartyMenuSelect: ; 0x50457
; sets carry if exitted menu.
@@ -65651,15 +65253,11 @@ Function506ef: ; 506ef
ld hl, StatusFlags2
bit 2, [hl]
jr nz, .asm_50712
- ld a, $a
- ld hl, $6111
- rst FarCall
+ callba Function2a111
ld a, b
and a
jr z, .asm_5071e
- ld a, $a
- ld hl, $614f
- rst FarCall
+ callba Function2a14f
jr nz, .asm_5071e
jr .asm_50718
@@ -65907,9 +65505,7 @@ Function5084a: ; 5084a
cp $1
jr z, .asm_5087b
ld bc, $0020
- ld hl, $65bb
- ld a, $3
- rst FarCall
+ callab Functione5bb
jr .asm_5088a
.asm_5087b
@@ -66835,9 +66431,157 @@ Function50eed: ; 50eed
jp Multiply
; 50efa
+INCBIN "baserom.gbc",$50efa,$50f12 - $50efa
+
+Function50f12:
+ ld a, [$d0e3]
+ dec a
+ ld [$d1ec], a
+ ld b, a
+ ld a, [$cfa9]
+ dec a
+ ld [Buffer2], a ; $d1eb (aliases: MovementType)
+ cp b
+ jr z, .asm_50f33
+ call Function50f62
+ ld a, [$d1ec]
+ call Function50f34
+ ld a, [Buffer2] ; $d1eb (aliases: MovementType)
+ call Function50f34
+.asm_50f33
+ ret
+
+; known jump sources: 50f2a (14:4f2a), 50f30 (14:4f30)
+Function50f34: ; 50f34 (14:4f34)
+ push af
+ ld hl, $c4b4
+ ld bc, $28
+ call AddNTimes
+ ld bc, $28
+ ld a, $7f
+ call ByteFill
+ pop af
+ ld hl, Sprites ; $c400
+ ld bc, $10
+ call AddNTimes
+ ld de, $4
+ ld c, $4
+.asm_50f55
+ ld [hl], $a0
+ add hl, de
+ dec c
+ jr nz, .asm_50f55
+ ld de, $20
+ call WaitPlaySFX
+ ret
+
+; known jump sources: 50f24 (14:4f24)
+Function50f62: ; 50f62 (14:4f62)
+ push hl
+ push de
+ push bc
+ ld bc, PartySpecies ; $dcd8
+ ld a, [Buffer2] ; $d1eb (aliases: MovementType)
+ ld l, a
+ ld h, $0
+ add hl, bc
+ ld d, h
+ ld e, l
+ ld a, [$d1ec]
+ ld l, a
+ ld h, $0
+ add hl, bc
+ ld a, [hl]
+ push af
+ ld a, [de]
+ ld [hl], a
+ pop af
+ ld [de], a
+ ld a, [Buffer2] ; $d1eb (aliases: MovementType)
+ ld hl, PartyMons ; $dcdf (aliases: PartyMon1, PartyMon1Species)
+ ld bc, $30
+ call AddNTimes
+ push hl
+ ld de, DefaultFlypoint ; $d002
+ ld bc, $30
+ call CopyBytes
+ ld a, [$d1ec]
+ ld hl, PartyMons ; $dcdf (aliases: PartyMon1, PartyMon1Species)
+ ld bc, $30
+ call AddNTimes
+ pop de
+ push hl
+ ld bc, $30
+ call CopyBytes
+ pop de
+ ld hl, DefaultFlypoint ; $d002
+ ld bc, $30
+ call CopyBytes
+ ld a, [Buffer2] ; $d1eb (aliases: MovementType)
+ ld hl, PartyMonOT ; $ddff (aliases: PartyMon1OT)
+ call SkipNames
+ push hl
+ call Function51036
+ ld a, [$d1ec]
+ ld hl, PartyMonOT ; $ddff (aliases: PartyMon1OT)
+ call SkipNames
+ pop de
+ push hl
+ call Function51039
+ pop de
+ ld hl, DefaultFlypoint ; $d002
+ call Function51039
+ ld hl, PartyMonNicknames ; $de41 (aliases: PartyMon1Nickname)
+ ld a, [Buffer2] ; $d1eb (aliases: MovementType)
+ call SkipNames
+ push hl
+ call Function51036
+ ld hl, PartyMonNicknames ; $de41 (aliases: PartyMon1Nickname)
+ ld a, [$d1ec]
+ call SkipNames
+ pop de
+ push hl
+ call Function51039
+ pop de
+ ld hl, DefaultFlypoint ; $d002
+ call Function51039
+ ld hl, $a600
+ ld a, [Buffer2] ; $d1eb (aliases: MovementType)
+ ld bc, $2f
+ call AddNTimes
+ push hl
+ ld de, DefaultFlypoint ; $d002
+ ld bc, $2f
+ ld a, $0
+ call GetSRAMBank
+ call CopyBytes
+ ld hl, $a600
+ ld a, [$d1ec]
+ ld bc, $2f
+ call AddNTimes
+ pop de
+ push hl
+ ld bc, $2f
+ call CopyBytes
+ pop de
+ ld hl, DefaultFlypoint ; $d002
+ ld bc, $2f
+ call CopyBytes
+ call CloseSRAM
+ pop bc
+ pop de
+ pop hl
+ ret
-INCBIN "baserom.gbc",$50efa,$51040 - $50efa
+; known jump sources: 50fbc (14:4fbc), 50fde (14:4fde)
+Function51036: ; 51036 (14:5036)
+ ld de, DefaultFlypoint ; $d002
+; known jump sources: 50fca (14:4fca), 50fd1 (14:4fd1), 50fec (14:4fec), 50ff3 (14:4ff3)
+Function51039: ; 51039 (14:5039)
+ ld bc, $b
+ call CopyBytes
+ ret
GetUnownLetter: ; 51040
; Return Unown letter in UnownLetter based on DVs at hl
@@ -70257,30 +70001,22 @@ HallOfFame: ; 0x8640e
ld hl, StatusFlags
set 6, [hl]
- ld a, $5
- ld hl, $4da0
- rst FarCall
+ callba Function14da0
ld hl, $d95e
ld a, [hl]
cp $c8
jr nc, .asm_86436 ; 0x86433 $1
inc [hl]
.asm_86436
- ld a, $5
- ld hl, $4b85
- rst FarCall
+ callba Function14b85
call Function8653f
- ld a, $5
- ld hl, $4b5f
- rst FarCall
+ callba Function14b5f
xor a
ld [$c2cd], a
call Function864c3
pop af
ld b, a
- ld a, $42
- ld hl, $5847
- rst FarCall
+ callba Function109847
ret
; 0x86455
@@ -70291,15 +70027,11 @@ Function86455: ; 86455
ld [MusicFadeIDHi], a
ld a, $a
ld [MusicFade], a
- ld a, $23
- ld hl, $4084
- rst FarCall
+ callba Function8c084
xor a
ld [VramState], a
ld [$ffde], a
- ld a, $13
- ld hl, $68c2
- rst FarCall
+ callba Function4e8c2
ld c, $8
call DelayFrames
call Function2ed3
@@ -70307,9 +70039,7 @@ Function86455: ; 86455
ld [$d4b5], a
ld a, [StatusFlags]
ld b, a
- ld a, $42
- ld hl, $5847
- rst FarCall
+ callba Function109847
ret
; 8648e
@@ -70320,15 +70050,11 @@ Function8648e: ; 8648e
ld [MusicFadeIDHi], a
ld a, $a
ld [MusicFade], a
- ld a, $23
- ld hl, $4084
- rst FarCall
+ callba Function8c084
xor a
ld [VramState], a
ld [$ffde], a
- ld a, $13
- ld hl, $6881
- rst FarCall
+ callba Function4e881
ld c, $64
jp DelayFrames
; 864b4
@@ -70483,9 +70209,7 @@ Function8653f: ; 8653f
Function865b5: ; 865b5
push hl
call WhiteBGMap
- ld a, $13
- ld hl, $6906
- rst FarCall
+ callba Function4e906
pop hl
ld a, [hli]
ld [TempMonSpecies], a
@@ -70715,9 +70439,7 @@ Function86810: ; 86810
ld bc, $0168
ld a, $7f
call ByteFill
- ld a, $22
- ld hl, $4840
- rst FarCall
+ callba Function88840
xor a
ld [$ffad], a
hlcoord 12, 5
@@ -78281,9 +78003,7 @@ Function8c940: ; 8c940
jr nz, .asm_8c96c
ld a, $90
ld [$c3b5], a
- ld hl, Function8cf7a
- ld a, $23
- rst FarCall
+ callab Function8cf7a
call Function8ca0c
call DelayFrame
jr .asm_8c952
@@ -78293,9 +78013,7 @@ Function8c940: ; 8c940
; 8c96d
Function8c96d: ; 8c96d
- ld hl, Function8cf53
- ld a, $23
- rst FarCall
+ callab Function8cf53
ld de, $49cc
ld hl, VTiles1
ld bc, $2304
@@ -80617,6 +80335,7 @@ Function8ea4a: ; 8ea4a
ret
; 8ea71
+Function8ea71: ; 8ea71
ld hl, $c314
ld e, $6
.asm_8ea76
@@ -80638,7 +80357,35 @@ Function8ea4a: ; 8ea4a
ret
; 8ea8c (23:6a8c)
-INCBIN "baserom.gbc",$8ea8c,$8eab3 - $8ea8c
+Function8ea8c: ; 8ea8c
+ ld hl, $c314
+ ld e, $6
+ ld a, [$d0e3]
+ ld d, a
+.asm_8ea95
+ ld a, [hl]
+ and a
+ jr z, .asm_8eaab
+ cp d
+ jr z, .asm_8eaa0
+ ld a, $3
+ jr .asm_8eaa2
+.asm_8eaa0
+ ld a, $2
+.asm_8eaa2
+ push hl
+ ld c, l
+ ld b, h
+ ld hl, $2
+ add hl, bc
+ ld [hl], a
+ pop hl
+.asm_8eaab
+ ld bc, $10
+ add hl, bc
+ dec e
+ jr nz, .asm_8ea95
+ ret
INCLUDE "menu/mon_icons.asm"
@@ -81079,9 +80826,7 @@ Function9029a: ; 9029a
ld [$d004], a
call Function902b3
call Function902b3
- ld a, $41
- ld hl, $60d3
- rst FarCall
+ callba Function1060d3
ret
; 902b3
@@ -81179,9 +80924,7 @@ Function9033f: ; 9033f
call StartSFX
call Function90375
call Function1ad2
- ld a, $13
- ld hl, $5188
- rst FarCall
+ callba Function4d188
ret
; 90355
@@ -81191,9 +80934,7 @@ Function90355: ; 90355
Function90357
ld c, $14
call DelayFrames
- ld a, $13
- ld hl, $5188
- rst FarCall
+ callba Function4d188
ret
; 90363
@@ -81896,6 +81637,8 @@ Function90b7f: ; 90b7f (24:4b7f)
.asm_90b8a
ld a, $c
ret
+
+Function90b8d: ; 90b8d (24:4b8d)
ld hl, Options ; $cfcc
ld a, [hl]
push af
@@ -84991,9 +84734,7 @@ Function96724: ; 96724
ld hl, $d432
ld bc, $3e
call ByteFill
- ld a, $4
- ld hl, $53e5
- rst FarCall
+ callba Function113e5
call ClearJoypadPublic
; fallthrough
; 9673e
@@ -85103,21 +84844,15 @@ Function967c1: ; 967c1
Function967d1: ; 967d1
callba Function576a
- ld a, $3
- ld hl, $5497
- rst FarCall
+ callba Functiond497
call Function96812
ret
; 967e1
Function967e1: ; 967e1
callba Function5920
- ld a, $3
- ld hl, $54d2
- rst FarCall
- ld a, $2e
- ld hl, $4098
- rst FarCall
+ callba Functiond4d2
+ callba Functionb8098
ret
; 967f4
@@ -85146,9 +84881,7 @@ Function96812: ; 96812
ld hl, $d150
bit 6, [hl]
ret z
- ld a, $2
- ld hl, $41ca
- rst FarCall
+ callba Function81ca
ret
; 9681f
@@ -85229,9 +84962,7 @@ CheckTileEvent: ; 96874
call Function9670c
jr z, .asm_96886
- ld a, $41
- ld hl, $4820
- rst FarCall
+ callba Function104820
jr c, .asm_968a6
call Function2238
@@ -85386,23 +85117,15 @@ Function9693a: ; 9693a
ld hl, StatusFlags2
bit 2, [hl]
jr z, .asm_96951
- ld a, $4
- ld hl, Route7_SecondMapHeader
- rst FarCall
+ callba Function114a4
jr c, .asm_96966
xor a
ret
.asm_96951
- ld a, $4
- ld hl, $5452
- rst FarCall
- ld a, $4
- ld hl, $54e7
- rst FarCall
- ld a, $24
- ld hl, $4074
- rst FarCall
+ callba Function11452
+ callba Function114e7
+ callba Function90074
ret c
.asm_96964
@@ -85840,9 +85563,7 @@ CountStep: ; 96b79
and a
jr nz, .asm_96bc9
- ld a, $24
- ld hl, $4136
- rst FarCall
+ callba Function90136
jr c, .asm_96bcb
call Function96bd7
@@ -85873,9 +85594,7 @@ CountStep: ; 96b79
jr c, .asm_96bc3
ld [hl], 0
- ld a, $14
- ld hl, $45da
- rst FarCall
+ callba Function505da
jr c, .asm_96bcb
.asm_96bc3
@@ -86235,9 +85954,7 @@ Function97cfd: ; 97cfd
jr z, .asm_97d17
cp $7
jr z, .asm_97d17
- ld a, $5
- ld hl, $49dd
- rst FarCall
+ callba Function149dd
jr nc, .asm_97d21
.asm_97d17
@@ -86256,9 +85973,7 @@ Function97d23: ; 97d23
call Function97d64
ret nc
call Function97d31
- ld a, $a
- ld hl, $61df
- rst FarCall
+ callba Function2a1df
ret
; 97d31
@@ -86310,12 +86025,8 @@ Function97d64: ; 97d64
ld b, $33
.asm_97d70
- ld a, $a
- ld hl, $6124
- rst FarCall
- ld a, $a
- ld hl, $6138
- rst FarCall
+ callba Function2a124
+ callba Function2a138
call Random
ld a, [hRandomAdd]
cp b
@@ -86846,9 +86557,7 @@ Functionb800a: ; b800a
ld [$c2da], a
call Functionb80c6
call Functionb80d3
- ld a, $41
- ld hl, $4303
- rst FarCall
+ callba Function104303
ret
.asm_b8054
@@ -89007,9 +88716,7 @@ Functionb9229: ; b9229
push de
ld a, $0
call GetSRAMBank
- ld a, $77
- ld hl, $65c8
- rst FarCall
+ callba Function1de5c8
call CloseSRAM
ld a, c
ld de, $65e6
@@ -89030,9 +88737,7 @@ Functionb9229: ; b9229
call WaitBGMap
ld a, [$d1ec]
ld e, a
- ld a, $2
- ld hl, $4cb4
- rst FarCall
+ callba Function8cb4
call Function32f9
xor a
ld [hJoyPressed], a
@@ -89056,9 +88761,7 @@ Functionb929a: ; b929a
.asm_b92a8
ld a, [$cf63]
push af
- ld hl, $45d4
- ld a, $21
- rst FarCall
+ callab Function845d4
pop af
ld [$cf63], a
jr .asm_b929a
@@ -93993,9 +93696,7 @@ Functionccb31: ; ccb31 (33:4b31)
Functionccb48: ; ccb48
- ld hl, Functioncc000
- ld a, $32
- rst FarCall
+ callab Functionc8000
ret
; ccb4f
@@ -102990,9 +102691,7 @@ Functione4579: ; e4579
ld c, $64
call DelayFrames
call ClearTileMap
- ld a, $13
- ld hl, $6a82
- rst FarCall
+ callba Function4ea82
call Functione45e8
.asm_e45c0
call Functiona57
@@ -103003,9 +102702,7 @@ Functione4579: ; e4579
bit 7, a
jr nz, .asm_e45e3
call Functione4670
- ld a, $23
- ld hl, $4f69
- rst FarCall
+ callba Function8cf69
call DelayFrame
jr .asm_e45c0
@@ -103043,9 +102740,7 @@ Functione45e8: ; e45e8
call Request2bpp
pop af
ld [rSVBK], a
- ld a, $23
- ld hl, $4f53
- rst FarCall
+ callba Function8cf53
ld de, $5458
ld a, $3
call Function3b2a
@@ -103074,9 +102769,7 @@ Functione45e8: ; e45e8
; e465e
Functione465e: ; e465e
- ld a, $23
- ld hl, $4f53
- rst FarCall
+ callba Function8cf53
call ClearTileMap
call ClearSprites
ld c, $10
@@ -105341,6 +105034,8 @@ Functionfb4f2: ; fb4f2
ld bc, $3e03
call Functiondc9
call Functionfb4cc
+
+Functionfb50d: ; fb50d
ld de, $4ac0
ld hl, $96c0
ld bc, $3e04
@@ -105378,6 +105073,8 @@ Functionfb53e: ; fb53e
ld hl, $9550
ld bc, $3e08
call Functiondc9
+
+Functionfb571: ; fb571
ld de, $49b0
ld hl, $9310
ld bc, $3e11
@@ -107130,9 +106827,7 @@ Functionfcba8: ; fcba8
ld a, $1
jr c, .asm_fcc03
ld b, $6
- ld a, $14
- ld hl, $401d
- rst FarCall
+ callba Function5001d
ld a, $1
jr c, .asm_fcc03
ld e, $1
@@ -107263,9 +106958,7 @@ Functionfcc63: ; fcc63
call Functionfcdd7
ld b, h
ld c, l
- ld a, $13
- ld hl, $7301
- rst FarCall
+ callba Function4f301
ld a, c
ld [$c701], a
ld e, $0
@@ -107288,9 +106981,7 @@ Functionfcc63: ; fcc63
xor a
ld [MonType], a
ld [$d10b], a
- ld hl, $6039
- ld a, $3
- rst FarCall
+ callab Functione039
ld a, $6
call Predef
ld e, $0
@@ -107302,9 +106993,7 @@ Functionfcc63: ; fcc63
ld b, $1
.asm_fcd1c
- ld a, $13
- ld hl, $5ba3
- rst FarCall
+ callba Function4dba3
ld e, $3
call LoadTradesPointer
ld de, FailedMessage
@@ -107363,9 +107052,7 @@ Functionfcc63: ; fcc63
ld a, [PartyCount]
dec a
ld [CurPartyMon], a
- ld a, $3
- ld hl, $6134
- rst FarCall
+ callba Functione134
pop af
ld [CurPartyMon], a
pop hl
@@ -107584,9 +107271,7 @@ Functionfd044: ; fd044
ld [$ffc5], a
ld de, $d851
ld bc, $ffc3
- ld a, $5
- ld hl, $600b
- rst FarCall
+ callba Function1600b
jr nc, .asm_fd067
.asm_fd065
@@ -107606,9 +107291,7 @@ Functionfd044: ; fd044
.asm_fd074
ld de, $dc19
ld bc, $d851
- ld a, $5
- ld hl, $600b
- rst FarCall
+ callba Function1600b
jr z, .asm_fd08b
jr nc, .asm_fd089
call Functionfd099
@@ -107631,9 +107314,7 @@ Functionfd044: ; fd044
Functionfd099: ; fd099
ld de, $dc19
ld bc, $ffc3
- ld a, $5
- ld hl, $6053
- rst FarCall
+ callba Function16053
ret
; fd0a6
@@ -107667,9 +107348,7 @@ Functionfd0c3: ; fd0c3
ld a, [hl]
ld c, a
ld b, $1
- ld a, $9
- ld hl, $6ef1
- rst FarCall
+ callba Function26ef1
scf
ret
@@ -109016,9 +108695,7 @@ Function100a09: ; 100a09
jr nz, .asm_100a2a
call Function100a87
call Function100da5
- ld a, $f
- ld hl, $6e27
- rst FarCall
+ callba Function3ee27
jr .asm_100a2d
.asm_100a2a
@@ -109091,9 +108768,7 @@ Function100a87: ; 100a87
.asm_100a92
call DelayFrame
call GetJoypadPublic
- ld a, $40
- ld hl, $4382
- rst FarCall
+ callba Function100382
ld c, $1
ld b, $3
push bc
@@ -109204,9 +108879,7 @@ Function100b45: ; 100b45
ld a, [$cfa8]
and c
jr z, .asm_100b48
- ld a, $9
- ld hl, $4098
- rst FarCall
+ callba Function24098
ret
.asm_100b6b
@@ -109227,9 +108900,7 @@ Function100b7a: ; 100b7a
callba MobileTextBorder
call Function1ad2
call Function321c
- ld a, $9
- ld hl, $411a
- rst FarCall
+ callba Function2411a
ld hl, $cfa5
set 7, [hl]
ret
@@ -109238,9 +108909,7 @@ Function100b7a: ; 100b7a
Function100b9f: ; 100b9f
xor a
ld [$d0e3], a
- ld a, $f
- ld hl, $6786
- rst FarCall
+ callba Function3e786
ret z
call Function100dd8
jp c, Function2ec8
@@ -109389,14 +109058,10 @@ Function100cb5: ; 100cb5
res 6, [hl]
.asm_100cc0
call Function100dd2
- ld a, $9
- ld hl, $41ba
- rst FarCall
+ callba Function241ba
push bc
callba Function8cf69
- ld a, $41
- ld hl, $402d
- rst FarCall
+ callba Function10402d
call Function100dfd
pop bc
jr c, .asm_100d17
@@ -109546,17 +109211,13 @@ Function100dd2: ; 100dd2
Function100dd8: ; 100dd8
ld c, $1
ld b, $3
- ld a, $40
- ld hl, $462d
- rst FarCall
+ callba Function10062d
jr c, .asm_100dfb
ld c, $3c
ld b, $1
call Function10079c
jr c, .asm_100dfb
- ld a, $40
- ld hl, $432e
- rst FarCall
+ callba Function10032e
ld a, [$cd2b]
and a
jr nz, .asm_100dfb
@@ -109576,9 +109237,7 @@ Function100dfd: ; 100dfd
ld c, a
ld b, $3
push bc
- ld a, $40
- ld hl, $462d
- rst FarCall
+ callba Function10062d
pop bc
jr c, .asm_100e2b
ld b, $1
@@ -109586,9 +109245,7 @@ Function100dfd: ; 100dfd
jr c, .asm_100e2b
call Function1009f3
jr c, .asm_100e2b
- ld a, $40
- ld hl, $432e
- rst FarCall
+ callba Function10032e
ld a, [$cd2b]
and a
jr nz, .asm_100e2b
@@ -109715,9 +109372,7 @@ Function100ec5
; 100eca
Function100eca: ; 100eca
- ld a, $2
- ld hl, $4e8b
- rst FarCall
+ callba Function8e8b
call Function100ed4
ret
; 100ed4
@@ -113729,6 +113384,8 @@ Function1060c1: ; 1060c1
; 1060c2
INCBIN "baserom.gbc",$1060c2,$1060c7 - $1060c2
+
+Function1060c7: ; 1060c7
ret
; 1060c8 (41:60c8)
@@ -115423,27 +115080,17 @@ Function117a94: ; 0x117a94
ld [$cf66], a
call WhiteBGMap
call ClearSprites
- ld a, $5c
- ld hl, $6e78
- rst FarCall
- ld a, $41
- ld hl, $4000
- rst FarCall
+ callba Function172e78
+ callba Function104000
ret
; 0x117ab4
Function117ab4: ; 0x117ab4
call WhiteBGMap
call ClearSprites
- ld a, $5c
- ld hl, $6e78
- rst FarCall
- ld a, $5c
- ld hl, $6eb9
- rst FarCall
- ld a, $41
- ld hl, $4061
- rst FarCall
+ callba Function172e78
+ callba Function172eb9
+ callba Function104061
ret
; 0x117acd
@@ -115453,9 +115100,7 @@ Function117acd: ; 0x117acd
bit 7, a
jr nz, .asm_117ae2 ; 0x117ad5 $b
call Function117ae9
- ld a, $41
- ld hl, $4000
- rst FarCall
+ callba Function104000
jr Function117acd
.asm_117ae2
call WhiteBGMap
@@ -115484,9 +115129,7 @@ Pointers117af8: ; 0x117af8
dw Function117c4a
Function117b06:
- ld a, $5c
- ld hl, $6eb9
- rst FarCall
+ callba Function172eb9
ld a, $10
ld [$cf64], a
jp Function117cdd
@@ -115561,16 +115204,12 @@ Function117b4f:
jr nz, .asm_117ba4 ; 0x117b93 $f
call Function1c07
call Function1c07
- ld a, $41
- ld hl, $4061
- rst FarCall
+ callba Function104061
jp Function117cdd
.asm_117ba4
call Function1c07
call Function1c07
- ld a, $41
- ld hl, $4061
- rst FarCall
+ callba Function104061
ld a, $80
ld [$cf63], a
ret
@@ -115579,9 +115218,7 @@ Function117bb6:
call Function117c89
ld a, $1
ld [hBGMapMode], a
- ld a, $46
- ld hl, $4284
- rst FarCall
+ callba Function118284
call ClearSprites
ld a, [$c300]
and a
@@ -115591,9 +115228,7 @@ Function117bb6:
.asm_117bd0
ld a, $2
ld [$c303], a
- ld a, $5f
- ld hl, $7555
- rst FarCall
+ callba Function17f555
ld a, $80
ld [$cf63], a
ret
@@ -115636,9 +115271,7 @@ Function117bb6:
.asm_117c20
pop af
ld [rSVBK], a
- ld a, $5c
- ld hl, $6eb9
- rst FarCall
+ callba Function172eb9
ld a, [rSVBK]
push af
ld a, $3
@@ -115659,9 +115292,7 @@ Function117c4a:
call LoadMenuDataHeader
call Function1cbb
call Function1cfd
- ld a, $41
- ld hl, $4061
- rst FarCall
+ callba Function104061
ld hl, MobileStadiumSuccessText
call PrintText
ld a, [rSVBK]
@@ -115787,6 +115418,7 @@ Function118000: ; 118000
ld [rSVBK], a
call Function118452
call Function222a
+Function11805e: ; 11805e (46:405e)
ret
; 11805f
@@ -115964,7 +115596,50 @@ Function1181da: ; 1181da
ret
; 118233
-INCBIN "baserom.gbc",$118233,$1183cb - $118233
+INCBIN "baserom.gbc",$118233,$118284 - $118233
+
+Function118284: ; 118284
+ call Function1183cb
+ ld a, $19
+ ld [$cd33], a
+ ld a, $1e
+ ld [$cd34], a
+ ld a, $5
+ ld [$c3f0], a
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $3
+ ld [rSVBK], a ; $ff00+$70
+.asm_11829d
+ call Functiona57
+ call Function118473
+ ld a, [$cf66]
+ cp $20
+ jr c, .asm_1182b0
+ ld a, [$cd34]
+ ld [$cf66], a
+.asm_1182b0
+ call Function1186f5
+ call Function11a8fa
+ ld a, BANK(Function115dd3)
+ ld hl, Function115dd3
+ rst $8 ; ; indirect jump to Function115dd3 (115dd3 (45:5dd3))
+ ld a, BANK(Function11619d)
+ ld hl, Function11619d
+ rst $8 ; ; indirect jump to Function11619d (11619d (45:619d))
+ call DelayFrame
+ ld a, [$cf66]
+ ld hl, $cd33
+ cp [hl]
+ jr nz, .asm_11829d
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ call Function118452
+ ret
+; 1182d5 (46:42d5)
+
+
+INCBIN "baserom.gbc",$1182d5,$1183cb - $1182d5
Function1183cb: ; 1183cb
di
@@ -116121,7 +115796,314 @@ Function1185c3: ; 1185c3
jp [hl]
; 1185d2
-INCBIN "baserom.gbc",$1185d2,$118ba5 - $1185d2
+INCBIN "baserom.gbc",$1185d2,$1186f5 - $1185d2
+
+; known jump sources: 1182b0 (46:42b0)
+Function1186f5: ; 1186f5 (46:46f5)
+ ld a, [$cf66]
+ ld e, a
+ ld d, $0
+ ld hl, $4704
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 118704 (46:4704)
+
+; no known jump sources
+Jumptable_118704: ; 118704 (46:4704)
+ dw Function11886a
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function118abc
+ dw Function11878d
+ dw Function119451
+ dw Function1195f8
+ dw Function119612
+ dw Function119629
+ dw Function119648
+ dw Function11878d
+ dw Function118e6d
+ dw Function11878d
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function11967d
+ dw Function119685
+ dw Function119665
+ dw Function11966d
+ dw Function118e76
+ dw Function118e87
+; 118744 (46:4744)
+
+INCBIN "baserom.gbc",$118744,$11878d - $118744
+
+; no known jump sources
+Function11878d: ; 11878d (46:478d)
+ ld a, [$c821]
+ bit 1, a
+ jr nz, .asm_1187af
+ bit 2, a
+ jr nz, .asm_1187d1
+ bit 0, a
+ jr nz, .asm_1187aa
+ ld a, [$cd89]
+ and $1
+ jr z, .asm_1187a7
+ ld a, $3
+ ld [rSVBK], a ; $ff00+$70
+.asm_1187a7
+ jp Function119e2e
+.asm_1187aa
+ call Function118821
+ ret c
+ ret
+.asm_1187af
+ ld a, $0
+ call Function3e32
+ ld [$c300], a
+ ld a, l
+ ld [$c301], a
+ ld a, h
+ ld [$c302], a
+ ld a, $a
+ call Function3e32
+ ld a, [$c3f0]
+ ld [$c319], a
+ ld a, [$cd34]
+ ld [$cf66], a
+ ret
+.asm_1187d1
+ ld hl, $cd89
+ bit 0, [hl]
+ jr nz, .asm_118803
+ set 0, [hl]
+ ld a, $6
+ ld [rSVBK], a ; $ff00+$70
+ ld de, Unkn1Pals ; $d000
+ ld bc, $1000
+ ld a, [hl]
+ sla a
+ jr c, .asm_1187f9
+ sla a
+ jr c, .asm_1187fd
+ sla a
+ jr c, .asm_1187f5
+ ld a, $24
+ jr .asm_1187ff
+.asm_1187f5
+ ld a, $28
+ jr .asm_1187ff
+.asm_1187f9
+ ld a, $2a
+ jr .asm_1187ff
+.asm_1187fd
+ ld a, $2c
+.asm_1187ff
+ call Function3e32
+ ret
+.asm_118803
+ ld a, $d3
+
+; known jump sources: 11945a (46:545a), 119573 (46:5573), 1195f5 (46:55f5)
+Function118805: ; 118805 (46:4805)
+ ld [$c300], a
+ xor a
+ ld [$c301], a
+ ld [$c302], a
+ ld a, $a
+ call Function3e32
+ ld a, [$c3f0]
+ ld [$c319], a
+ ld a, [$cd34]
+ ld [$cf66], a
+ ret
+
+; known jump sources: 1187aa (46:47aa)
+Function118821: ; 118821 (46:4821)
+ ld a, [$c319]
+ cp $3
+ jr c, .asm_11884a
+ cp $4
+ jr z, .asm_11884a
+ ld a, [hJoyDown] ; $ff00+$a8
+ cp $5
+ jr nz, .asm_11884a
+ ld a, $a
+ call Function3e32
+ ld a, $a
+ ld [$c300], a
+ ld a, [$c3f0]
+ ld [$c319], a
+ ld a, [$cd34]
+ ld [$cf66], a
+ scf
+ ret
+.asm_11884a
+ and a
+ ret
+; 11884c (46:484c)
+
+INCBIN "baserom.gbc",$11884c,$11886a - $11884c
+
+; no known jump sources
+Function11886a: ; 11886a (46:486a)
+ ld a, $1
+ jr .asm_11886f
+; 11886e (46:486e)
+
+INCBIN "baserom.gbc",$11886e,$11886f - $11886e
+.asm_11886f
+ ld [BGMapPalBuffer], a ; $cd48
+ ld a, $0
+ ld [$cd3c], a
+ call Function119e2e
+ ld a, [$cd33]
+ ld [$cd45], a
+
+; no known jump sources
+Function118880: ; 118880 (46:4880)
+ call Function119ed8
+ ret c
+ xor a
+ ld [$cf64], a
+ ld [$c807], a
+ ld de, $cd81
+ ld hl, $46
+ ld a, $2
+ jp Function119e2b
+; 118896 (46:4896)
+
+INCBIN "baserom.gbc",$118896,$1188b0 - $118896
+
+; no known jump sources
+Function1188b0: ; 1188b0 (46:48b0)
+ ld de, $c346
+ ld a, $c
+ jp Function119e2b
+
+; no known jump sources
+Function1188b8: ; 1188b8 (46:48b8)
+ ld de, $c3ac
+ ld a, $e
+ jp Function119e2b
+
+; no known jump sources
+Function1188c0: ; 1188c0 (46:48c0)
+ ld de, $c3cd
+ ld a, $10
+ jp Function119e2b
+
+; no known jump sources
+Function1188c8: ; 1188c8 (46:48c8)
+ ld a, $1
+ ld [$cd65], a
+ call Function1188e7
+ ld hl, $c708
+.asm_1188d3
+ ld a, [de]
+ inc de
+ ld [hli], a
+ and a
+ jr nz, .asm_1188d3
+ call Function119eb4
+ call Function119ec2
+ ld hl, $c708
+ ld a, $6
+ jp Function119e2b
+
+; known jump sources: 1188cd (46:48cd)
+Function1188e7: ; 1188e7 (46:48e7)
+ ld de, $c346
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$aa4a]
+ call CloseSRAM
+ and a
+ ret z
+ sla a
+ ld c, a
+.asm_1188fa
+ ld a, [de]
+ inc de
+ and a
+ jr nz, .asm_1188fa
+ dec c
+ jr nz, .asm_1188fa
+ ret
+
+; no known jump sources
+Function118903: ; 118903 (46:4903)
+ ld a, [$c3f0]
+ ld [$c319], a
+ ld c, $1
+ ld a, BANK(Function115e18)
+ ld hl, Function115e18
+ rst $8 ; ; indirect jump to Function115e18 (115e18 (45:5e18))
+ ld a, $8
+ ld [$cd3c], a
+ call Function119ed8
+ jp Function119e2e
+; 11891c (46:491c)
+
+INCBIN "baserom.gbc",$11891c,$118abc - $11891c
+
+; no known jump sources
+Function118abc: ; 118abc (46:4abc)
+ ld hl, $4c95
+ ld de, $cc60
+ ld bc, $80
+ call CopyBytes
+ ld de, Unkn1Pals ; $d000
+ ld bc, $1000
+ jr .asm_118b10
+; 118ad0 (46:4ad0)
+
+INCBIN "baserom.gbc",$118ad0,$118b10 - $118ad0
+.asm_118b10
+ push de
+ push bc
+ ld a, $8
+ ld [$cd3c], a
+ call Function119ed8
+ call Function118b24
+ pop bc
+ pop de
+ ld a, $2a
+ jp Function119e2b
+
+; known jump sources: 118b1a (46:4b1a), 119657 (46:5657)
+Function118b24: ; 118b24 (46:4b24)
+ ld hl, $c346
+ ld a, $8
+ ld [hli], a
+ ld a, $c7
+ ld [hli], a
+ ld a, $60
+ ld [hli], a
+ ld a, $cc
+ ld [hli], a
+ call Function119eb4
+ call Function119ec2
+ ld a, $80
+ ld [$cd89], a
+ ld hl, $c346
+ ret
+; 118b42 (46:4b42)
+
+INCBIN "baserom.gbc",$118b42,$118ba5 - $118b42
ExchangeDownloadURL: ; 0x118ba5
ascii "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/exchange/index.txt"
@@ -116148,7 +116130,512 @@ IndexDownloadURL: ; 0x118ce4
db $0
-INCBIN "baserom.gbc",$118d35,$119d93 - $118d35
+INCBIN "baserom.gbc",$118d35,$118e39 - $118d35
+
+; known jump sources: 118e3b (46:4e3b), 119633 (46:5633)
+Function118e39: ; 118e39 (46:4e39)
+ ld a, [hli]
+ and a
+ jr nz, Function118e39
+ dec hl
+.asm_118e3e
+ ld a, [hld]
+ cp $2f
+ jr nz, .asm_118e3e
+ inc hl
+ inc hl
+ ld de, $cd85
+ ld c, $4
+.asm_118e4a
+ ld a, [hli]
+ cp $2e
+ jr z, .asm_118e63
+ cp $30
+ jr c, .asm_118e67
+ cp $3a
+ jr nc, .asm_118e67
+ sub $30
+ add $f6
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_118e4a
+ ld de, $cd85
+.asm_118e63
+ ld a, $50
+ ld [de], a
+ ret
+.asm_118e67
+ ld a, $f3
+ ld [de], a
+ inc de
+ jr .asm_118e63
+
+; no known jump sources
+Function118e6d: ; 118e6d (46:4e6d)
+ xor a
+ ld [$cd65], a
+ ld a, $a
+ jp Function119e2b
+
+; no known jump sources
+Function118e76: ; 118e76 (46:4e76)
+ ld a, $c
+ ld [$cd3c], a
+ jp Function119e2e
+
+; no known jump sources
+Function118e7e: ; 118e7e (46:4e7e)
+ call Function119ed8
+ ret c
+ ld a, $36
+ jp Function119e2b
+
+; no known jump sources
+Function118e87: ; 118e87 (46:4e87)
+ call Function119ed8
+ ret c
+ ld a, [$cd33]
+ ld [$cf66], a
+ ret
+; 118e92 (46:4e92)
+
+INCBIN "baserom.gbc",$118e92,$119451 - $118e92
+
+; no known jump sources
+Function119451: ; 119451 (46:5451)
+ ld a, [$cd89]
+ and $1
+ jr z, .asm_11945d
+ ld a, $d3
+ jp Function118805
+.asm_11945d
+ xor a
+ ld [$cd50], a
+ call Function119694
+ ld a, b
+ ld [$cd49], a
+ call Function1196cd
+ ld a, [DefaultFlypoint] ; $d002
+ ld hl, $d003
+
+; known jump sources: 119562 (46:5562)
+Function119471: ; 119471 (46:5471)
+ push af
+ ld a, [hli]
+ ld [EnemyMoveAnimation], a ; $c608 (aliases: EnemyMoveStruct)
+ ld a, [hli]
+ ld [EnemyMoveType], a ; $c60b
+ ld a, [hli]
+ ld [EnemyMoveEffect], a ; $c609
+ ld a, [hli]
+ ld [EnemyMovePower], a ; $c60a
+ ld a, [hli]
+ ld [EnemyMoveAccuracy], a ; $c60c
+ ld a, [hli]
+ ld [EnemyMovePP], a ; $c60d
+ push hl
+ ld a, [EnemyMoveAnimation] ; $c608 (aliases: EnemyMoveStruct)
+ cp $ff
+ jr z, .asm_1194a7
+ ld a, [EnemyMovePower] ; $c60a
+ cp $ff
+ jr z, .asm_1194a7
+ ld a, [EnemyMoveEffect] ; $c609
+ cp $ff
+ jr nz, .asm_1194a7
+ call Function119584
+ jr c, .asm_11950c
+ jr .asm_1194f0
+.asm_1194a7
+ ld hl, EnemyMoveAnimation ; $c608 (aliases: EnemyMoveStruct)
+ ld de, EnemyMoveType ; $c60b
+ ld c, $3
+.asm_1194af
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr c, .asm_1194f3
+ jr z, .asm_1194b9
+ jr nc, .asm_1194bc
+.asm_1194b9
+ dec c
+ jr nz, .asm_1194af
+.asm_1194bc
+ ld c, $3
+ ld hl, $cd49
+ ld de, EnemyMoveAnimation ; $c608 (aliases: EnemyMoveStruct)
+.asm_1194c4
+ ld a, [de]
+ inc de
+ cp $ff
+ jr z, .asm_1194d1
+ cp [hl]
+ jr z, .asm_1194d1
+ jr c, .asm_1194d5
+ jr nc, .asm_1194f0
+.asm_1194d1
+ inc hl
+ dec c
+ jr nz, .asm_1194c4
+.asm_1194d5
+ ld c, $3
+ ld hl, $cd49
+ ld de, EnemyMoveType ; $c60b
+.asm_1194dd
+ ld a, [de]
+ inc de
+ cp $ff
+ jr z, .asm_1194ea
+ cp [hl]
+ jr c, .asm_1194f0
+ jr z, .asm_1194ea
+ jr nc, .asm_11950c
+.asm_1194ea
+ inc hl
+ dec c
+ jr nz, .asm_1194dd
+ jr .asm_11950c
+.asm_1194f0
+ pop hl
+ jr .asm_119557
+.asm_1194f3
+ ld c, $3
+ ld hl, $cd49
+ ld de, EnemyMoveAnimation ; $c608 (aliases: EnemyMoveStruct)
+.asm_1194fb
+ ld a, [de]
+ inc de
+ cp $ff
+ jr z, .asm_119508
+ cp [hl]
+ jr c, .asm_11950c
+ jr z, .asm_119508
+ jr nc, .asm_1194d5
+.asm_119508
+ inc hl
+ dec c
+ jr nz, .asm_1194fb
+.asm_11950c
+ pop hl
+ ld a, $1
+ ld [$cd50], a
+ ld a, l
+ ld [EnemyMoveAnimation], a ; $c608 (aliases: EnemyMoveStruct)
+ ld a, h
+ ld [EnemyMoveEffect], a ; $c609
+ ld de, $cd69
+ ld c, $10
+ ld b, $0
+.asm_119521
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr nz, .asm_119528
+ inc b
+.asm_119528
+ dec c
+ jr nz, .asm_119521
+ ld a, $10
+ cp b
+ jr z, .asm_119536
+ inc hl
+ inc hl
+ inc hl
+ inc hl
+ jr .asm_11957a
+.asm_119536
+ ld a, [hli]
+ cp $50
+ jr nz, .asm_119552
+ ld a, [hli]
+ cp $33
+ jr nz, .asm_119553
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, [$cd83]
+ cp c
+ jr nz, .asm_119576
+ ld a, [$cd84]
+ cp b
+ jr nz, .asm_119576
+ jr .asm_11955b
+.asm_119552
+ inc hl
+.asm_119553
+ inc hl
+ inc hl
+ jr .asm_11955b
+.asm_119557
+ ld de, $14
+ add hl, de
+.asm_11955b
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ add hl, de
+ pop af
+ dec a
+ jp nz, Function119471
+ ld a, [$cd50]
+ and a
+ jr z, .asm_119571
+ ld a, $1a
+ ld [$cf66], a
+ ret
+.asm_119571
+ ld a, $d8
+ jp Function118805
+.asm_119576
+ ld a, $10
+ jr .asm_11957c
+.asm_11957a
+ ld a, $f
+.asm_11957c
+ ld [$cf66], a
+ pop af
+ call Function1195c4
+ ret
+
+; known jump sources: 1194a0 (46:54a0)
+Function119584: ; 119584 (46:5584)
+ ld a, [EnemyMoveAnimation] ; $c608 (aliases: EnemyMoveStruct)
+ ld b, a
+ ld a, [EnemyMoveType] ; $c60b
+ ld c, a
+ cp b
+ jr c, .asm_11959c
+ ld a, [$cd49]
+ cp b
+ jr c, .asm_1195c2
+.asm_119595
+ cp c
+ jr c, .asm_1195a2
+ jr z, .asm_1195a2
+ jr .asm_1195c2
+.asm_11959c
+ ld a, [$cd49]
+ cp b
+ jr c, .asm_119595
+.asm_1195a2
+ ld a, [EnemyMovePower] ; $c60a
+ ld b, a
+ ld a, [EnemyMovePP] ; $c60d
+ ld c, a
+ cp b
+ jr c, .asm_1195ba
+ ld a, [$cd4b]
+ cp b
+ jr c, .asm_1195c2
+.asm_1195b3
+ cp c
+ jr c, .asm_1195c0
+ jr z, .asm_1195c0
+ jr .asm_1195c2
+.asm_1195ba
+ ld a, [$cd4b]
+ cp b
+ jr c, .asm_1195b3
+.asm_1195c0
+ scf
+ ret
+.asm_1195c2
+ and a
+ ret
+
+; known jump sources: 119580 (46:5580)
+Function1195c4: ; 1195c4 (46:55c4)
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld de, $a5
+ ld a, b
+ cp d
+ jr c, .asm_1195d9
+ jr z, .asm_1195d3
+ jr nc, .asm_1195f3
+.asm_1195d3
+ ld a, c
+ cp e
+ jr z, .asm_1195d9
+ jr nc, .asm_1195f3
+.asm_1195d9
+ ld de, $cc60
+ call CopyBytes
+ xor a
+ ld [de], a
+ ld a, [EnemyMoveAnimation] ; $c608 (aliases: EnemyMoveStruct)
+ ld l, a
+ ld a, [EnemyMoveEffect] ; $c609
+ ld h, a
+ ld de, $cd69
+ ld bc, $10
+ call CopyBytes
+ ret
+.asm_1195f3
+ ld a, $d8
+ jp Function118805
+
+; no known jump sources
+Function1195f8: ; 1195f8 (46:55f8)
+ ld a, $11
+ ld [$cd3c], a
+ ld a, $1c
+ ld [$cd45], a
+ ld a, $f
+ ld [$cd46], a
+ ld a, $14
+ ld [$cd47], a
+ call Function119e2e
+ jp Function119e2e
+
+; no known jump sources
+Function119612: ; 119612 (46:5612)
+ ld a, $14
+ ld [$cd3c], a
+ ld a, $1c
+ ld [$cd45], a
+ ld a, $10
+ ld [$cd46], a
+ ld a, $14
+ ld [$cd47], a
+ jp Function119e2e
+
+; no known jump sources
+Function119629: ; 119629 (46:5629)
+ call Function119ed8
+ ret c
+ ld a, $60
+ ld l, a
+ ld a, $cc
+ ld h, a
+ call Function118e39
+ ld a, $9
+ ld [$cd3c], a
+ ld a, $1c
+ ld [$cd45], a
+ ld a, $14
+ ld [$cd47], a
+ call Function119e2e
+
+; no known jump sources
+Function119648: ; 119648 (46:5648)
+ call Function119ed8
+ ret c
+ call DelayFrame
+ ld a, $8
+ ld [$cd3c], a
+ call Function119ed8
+ call Function118b24
+ ld de, Unkn1Pals ; $d000
+ ld bc, $1000
+ ld a, $2a
+ jp Function119e2b
+
+; no known jump sources
+Function119665: ; 119665 (46:5665)
+ ld a, $1a
+ ld [$cd3c], a
+ call Function119e2e
+
+; no known jump sources
+Function11966d: ; 11966d (46:566d)
+ call Function119ed8
+ ret c
+ ld a, [$cd47]
+ ld [$cf66], a
+ ld a, $a
+ ld [$c300], a
+ ret
+
+; no known jump sources
+Function11967d: ; 11967d (46:567d)
+ ld a, $18
+ ld [$cd3c], a
+ call Function119e2e
+
+; no known jump sources
+Function119685: ; 119685 (46:5685)
+ call Function119ed8
+ ret c
+ ld a, $14
+ ld [$cf66], a
+ ld a, $a
+ ld [$c300], a
+ ret
+
+; known jump sources: 119461 (46:5461)
+Function119694: ; 119694 (46:5694)
+ ld b, $0
+ ld hl, $56b8
+.asm_119699
+ ld de, $c708
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr nz, .asm_1196af
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr nz, .asm_1196b0
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr nz, .asm_1196b1
+ ret
+.asm_1196af
+ inc hl
+.asm_1196b0
+ inc hl
+.asm_1196b1
+ inc b
+ ld a, b
+ cp $7
+ jr nz, .asm_119699
+ ret
+; 1196b8 (46:56b8)
+
+INCBIN "baserom.gbc",$1196b8,$1196cd - $1196b8
+
+; known jump sources: 119468 (46:5468)
+Function1196cd: ; 1196cd (46:56cd)
+ ld de, $c719
+ call Function1196de
+ ld [$cd4a], a
+ inc de
+ call Function1196de
+ ld [$cd4b], a
+ ret
+
+; known jump sources: 1196d0 (46:56d0), 1196d7 (46:56d7)
+Function1196de: ; 1196de (46:56de)
+ ld a, [de]
+ inc de
+ sub $30
+ sla a
+ ld b, a
+ sla a
+ sla a
+ add b
+ ld c, a
+ add hl, bc
+ ld a, [de]
+ inc de
+ sub $30
+ add c
+ ret
+; 1196f2 (46:56f2)
+
+INCBIN "baserom.gbc",$1196f2,$119d93 - $1196f2
; no known jump sources
Function119d93: ; 119d93 (46:5d93)
@@ -116250,7 +116737,76 @@ Function119dd1: ; 119dd1 (46:5dd1)
ret
; 119e2b (46:5e2b)
-INCBIN "baserom.gbc",$119e2b,$11a8fa - $119e2b
+; known jump sources: 118893 (46:4893), 1188b5 (46:48b5), 1188bd (46:48bd), 1188c5 (46:48c5), 1188e4 (46:48e4), 118b21 (46:4b21), 118e73 (46:4e73), 118e84 (46:4e84), 119662 (46:5662)
+Function119e2b: ; 119e2b (46:5e2b)
+ call Function3e32
+
+; known jump sources: 1187a7 (46:47a7), 118877 (46:4877), 118919 (46:4919), 118e7b (46:4e7b), 11960c (46:560c), 11960f (46:560f), 119626 (46:5626), 119645 (46:5645), 11966a (46:566a), 119682 (46:5682)
+Function119e2e: ; 119e2e (46:5e2e)
+ ld hl, $cf66
+ inc [hl]
+ ret
+; 119e33 (46:5e33)
+
+INCBIN "baserom.gbc",$119e33,$119eb4 - $119e33
+
+; known jump sources: 1188d9 (46:48d9), 118b33 (46:4b33)
+Function119eb4: ; 119eb4 (46:5eb4)
+ xor a
+ ld [$c3cc], a
+ ld de, $c3ac
+.asm_119ebb
+ ld a, [de]
+ inc de
+ ld [hli], a
+ and a
+ jr nz, .asm_119ebb
+ ret
+
+; known jump sources: 1188dc (46:48dc), 118b36 (46:4b36)
+Function119ec2: ; 119ec2 (46:5ec2)
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$aa5c], a
+ ld de, $aa4c
+.asm_119ece
+ ld a, [de]
+ inc de
+ ld [hli], a
+ and a
+ jr nz, .asm_119ece
+ call CloseSRAM
+ ret
+
+; known jump sources: 118880 (46:4880), 118916 (46:4916), 118b17 (46:4b17), 118e7e (46:4e7e), 118e87 (46:4e87), 119629 (46:5629), 119648 (46:5648), 119654 (46:5654), 11966d (46:566d), 119685 (46:5685)
+Function119ed8: ; 119ed8 (46:5ed8)
+ ld a, [rSVBK] ; $ff00+$70
+ ld [$cd8c], a
+ ld a, $1
+ ld [rSVBK], a ; $ff00+$70
+ call Function119eee
+ ld a, [$cd8c]
+ ld [rSVBK], a ; $ff00+$70
+ ld a, $1
+ ld [hBGMapMode], a ; $ff00+$d4
+ ret
+
+; known jump sources: 119ee1 (46:5ee1)
+Function119eee: ; 119eee (46:5eee)
+ ld a, [$cd3c]
+ ld e, a
+ ld d, $0
+ ld hl, $5efd
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 119efd (46:5efd)
+
+INCBIN "baserom.gbc",$119efd,$11a8fa - $119efd
Function11a8fa: ; 11a8fa
ld a, [$c31a]
@@ -116488,12 +117044,12 @@ Function11ad1b: ; 11ad1b
ld [hConnectedMapWidth], a
ld a, $10
ld [$c3b7], a
- ld hl, $683f
- ld a, $23
+ ld hl, Function8e83f
+ ld a, BANK(Function8e83f)
ld e, $4
rst FarCall
- ld hl, $683f
- ld a, $23
+ ld hl, Function8e83f
+ ld a, BANK(Function8e83f)
ld e, $5
rst FarCall
ld hl, PlayerSDefLevel
@@ -122367,7 +122923,26 @@ Function172e78: ; 172e78 (5c:6e78)
ret
; 172eb9 (5c:6eb9)
-INCBIN "baserom.gbc",$172eb9,$17367f - $172eb9
+Function172eb9:
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $5
+ ld [rSVBK], a ; $ff00+$70
+ ld hl, $6edf
+ ld de, Unkn1Pals ; $d000
+ ld bc, $40
+ call CopyBytes
+ ld hl, $6edf
+ ld de, BGPals ; $d080
+ ld bc, $40
+ call CopyBytes
+ call Function32f9
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ret
+; 172edf (5c:6edf)
+
+INCBIN "baserom.gbc",$172edf,$17367f - $172edf
SECTION "bank5D",ROMX,BANK[$5D]
@@ -123287,9 +123862,7 @@ Function17c000: ; 17c000
xor a
ld [rVBK], a
call EnableLCD
- ld a, $41
- ld hl, $4061
- rst FarCall
+ callba Function104061
ret
; 17c083
diff --git a/predef/cgb.asm b/predef/cgb.asm
index 78f7d9060..c51a327e7 100644
--- a/predef/cgb.asm
+++ b/predef/cgb.asm
@@ -161,6 +161,8 @@ Function8e85: ; 8e85
ld a, $40
ld hl, $4dc0
rst FarCall
+
+Function8e8b: ; 8e8b
ld hl, $7311
jr nc, .asm_8e93
ld hl, $7309