From 1e2ff967aa11ed0bcdd1dd069bde67724d3851c2 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 14 Oct 2015 09:29:15 -0400 Subject: Replaced "ldtile" and "dwtile" with the "tile" equs macro --- main.asm | 422 +++++++++++++++++++++++++++++++-------------------------------- 1 file changed, 211 insertions(+), 211 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index b67f8aff9..adc84750d 100644 --- a/main.asm +++ b/main.asm @@ -1429,7 +1429,7 @@ Copyright: ; 63e2 call ClearTileMap call Functione5f ld de, CopyrightGFX - ld hl, VTiles2 + $600 ; tile $60 + ld hl, VTiles2 tile $60 lb bc, BANK(CopyrightGFX), $1d call Request2bpp hlcoord 2, 7 @@ -10585,7 +10585,7 @@ String_117e6: ; 117e6 Function117f5: ; 117f5 (4:57f5) ld de, PokeBallSpriteGFX - ld hl, $8000 + ld hl, VTiles0 tile $00 lb bc, BANK(PokeBallSpriteGFX), $4 call Request2bpp xor a @@ -10623,7 +10623,7 @@ String_11839: ; 11839 Function11847: ; 11847 (4:5847) push de - ld hl, $8000 + ld hl, VTiles0 tile $00 ld c, $4 push bc call Request2bpp @@ -10632,7 +10632,7 @@ Function11847: ; 11847 (4:5847) add hl, de ld e, l ld d, h - ld hl, $8040 + ld hl, VTiles0 tile $04 call Request2bpp xor a ld hl, wc300 @@ -11289,22 +11289,22 @@ Function11c51: ; 11c51 call Functione5f ld de, GFX_11e65 - ld hl, $8eb0 + ld hl, VTiles1 tile $6b lb bc, BANK(GFX_11e65), 1 call Get1bpp ld de, GFX_11e6d - ld hl, $8f20 + ld hl, VTiles1 tile $72 lb bc, BANK(GFX_11e6d), 1 call Get1bpp - ld de, $9600 + ld de, VTiles2 tile $60 ld hl, GFX_11cb7 ld bc, $10 ld a, BANK(GFX_11cb7) call FarCopyBytes - ld de, $87e0 + ld de, VTiles0 tile $7e ld hl, GFX_11cc7 ld bc, $20 ld a, BANK(GFX_11cc7) @@ -11404,7 +11404,7 @@ Function11e9a: ; 11e9a (4:5e9a) call WhiteBGMap call DisableLCD call Function11c51 - ld de, $8000 + ld de, VTiles0 tile $00 ld hl, GFX_11ef4 ld bc, $80 ld a, BANK(GFX_11ef4) @@ -12009,7 +12009,7 @@ Jumptable_12377: ; 12377 Function12383: ; 12383 call Function12434 ld de, GFX_123fc - ld hl, $87c0 + ld hl, VTiles0 tile $7c lb bc, BANK(GFX_123fc), $2 call Request2bpp ret @@ -16846,51 +16846,51 @@ EmotesPointers: ; 144d dw ShockEmote db $40, BANK(ShockEmote) - dwtile $78, VTiles1 + dw VTiles1 tile $78 dw QuestionEmote db $40, BANK(QuestionEmote) - dwtile $78, VTiles1 + dw VTiles1 tile $78 dw HappyEmote db $40, BANK(HappyEmote) - dwtile $78, VTiles1 + dw VTiles1 tile $78 dw SadEmote db $40, BANK(SadEmote) - dwtile $78, VTiles1 + dw VTiles1 tile $78 dw HeartEmote db $40, BANK(HeartEmote) - dwtile $78, VTiles1 + dw VTiles1 tile $78 dw BoltEmote db $40, BANK(BoltEmote) - dwtile $78, VTiles1 + dw VTiles1 tile $78 dw SleepEmote db $40, BANK(SleepEmote) - dwtile $78, VTiles1 + dw VTiles1 tile $78 dw FishEmote db $40, BANK(FishEmote) - dwtile $78, VTiles1 + dw VTiles1 tile $78 dw FishingRodGFX + $00 db $10, BANK(FishingRodGFX) - dwtile $7c, VTiles1 + dw VTiles1 tile $7c dw FishingRodGFX + $10 db $20, BANK(FishingRodGFX) - dwtile $7c, VTiles1 + dw VTiles1 tile $7c dw FishingRodGFX + $30 db $20, BANK(FishingRodGFX) - dwtile $7e, VTiles1 + dw VTiles1 tile $7e dw FishingRodGFX + $50 db $10, BANK(FishingRodGFX) - dwtile $7e, VTiles1 + dw VTiles1 tile $7e ; 14495 @@ -20440,12 +20440,12 @@ Function16be4: ; 16be4 call ClearTileMap ld de, UnownDexATile - ld hl, $8ef0 + ld hl, VTiles1 tile $6f lb bc, BANK(UnownDexBTile), 1 call Request1bpp ld de, UnownDexBTile - ld hl, $8f50 + ld hl, VTiles1 tile $75 lb bc, BANK(UnownDexBTile), 1 call Request1bpp @@ -20574,7 +20574,7 @@ Function16cc8: ; 16cc8 ld [$ffad], a lb bc, 7, 7 predef FillBox - ld de, $9310 + ld de, VTiles2 tile $31 callba Functione0000 ret ; 16cff @@ -20611,7 +20611,7 @@ Function16d20: ; 16d20 ld bc, $0310 xor a call ByteFill - ld hl, $9310 + ld hl, VTiles2 tile $31 ld de, sScratch ld c, $31 ld a, [hROMBank] @@ -21418,15 +21418,15 @@ Function1728f: ; 1728f (5:728f) callba Function8000 call DisableLCD ld hl, EggHatchGFX - ld de, $8000 + ld de, VTiles0 tile $00 ld bc, $20 ld a, BANK(EggHatchGFX) call FarCopyBytes callba Function8cf53 - ld de, $9000 + ld de, VTiles2 tile $00 ld a, [wcf63] call Function1723c - ld de, $9310 + ld de, VTiles2 tile $31 ld a, EGG call Function17224 ld de, MUSIC_EVOLUTION @@ -24786,12 +24786,12 @@ Function2513b: ; 2513b (9:513b) call DisableLCD callba Function8833e ld hl, CardRightCornerGFX - ld de, $91c0 + ld de, VTiles2 tile $1c ld bc, $10 ld a, BANK(CardRightCornerGFX) call FarCopyBytes ld hl, CardStatusGFX - ld de, $9290 + ld de, VTiles2 tile $29 ld bc, $60 + $500 ld a, BANK(CardStatusGFX) call FarCopyBytes @@ -24853,7 +24853,7 @@ Function251b6: ; 251b6 (9:51b6) call Function253b0 call WaitBGMap ld de, CardStatusGFX - ld hl, $9290 + ld hl, VTiles2 tile $29 lb bc, BANK(CardStatusGFX), $6 + $50 call Request2bpp call Function2530a @@ -24889,11 +24889,11 @@ Function251f4: ; 251f4 (9:51f4) call Function253b0 call WaitBGMap ld de, LeaderGFX - ld hl, $9290 + ld hl, VTiles2 tile $29 lb bc, BANK(LeaderGFX), $56 call Request2bpp ld de, BadgeGFX - ld hl, $8000 + ld hl, VTiles0 tile $00 lb bc, BANK(BadgeGFX), $2c call Request2bpp call Function2536c @@ -24938,11 +24938,11 @@ Function2524c: ; 2524c (9:524c) call Function253b0 call WaitBGMap ld de, LeaderGFX2 - ld hl, $9290 + ld hl, VTiles2 tile $29 lb bc, BANK(LeaderGFX2), $56 call Request2bpp ld de, BadgeGFX2 - ld hl, $8000 + ld hl, VTiles0 tile $00 lb bc, BANK(BadgeGFX2), $2c call Request2bpp call Function2536c @@ -29384,15 +29384,15 @@ Function28fdb: ; 28fdb ld a, $7f call ByteFill ld hl, TradeGameBoyLZ - ld de, $9310 + ld de, VTiles2 tile $31 call Decompress ld hl, TradeArrowGFX - ld de, $8ed0 + ld de, VTiles1 tile $6d ld bc, $0010 ld a, BANK(TradeArrowGFX) call FarCopyBytes ld hl, TradeArrowGFX + $10 - ld de, $8ee0 + ld de, VTiles1 tile $6e ld bc, $0010 ld a, BANK(TradeArrowGFX) call FarCopyBytes @@ -29412,7 +29412,7 @@ Function28fdb: ; 28fdb call Function29491 ld a, [wc702] ld hl, wc72f - ld de, $8310 + ld de, VTiles0 tile $31 call Function29491 ld a, [wc6d0] ld de, wc6d1 @@ -30070,7 +30070,7 @@ Function294bb: ; 294bb jr Function294c3 Function294c0: ; 294c0 - ld de, $8310 + ld de, VTiles0 tile $31 Function294c3: ; 294c3 call DelayFrame @@ -30637,15 +30637,15 @@ Function2981d: ; 2981d Function2982b: ; 2982b call DelayFrame ld de, TradeBallGFX - ld hl, $8620 + ld hl, VTiles0 tile $62 lb bc, BANK(TradeBallGFX), $6 call Request2bpp ld de, TradePoofGFX - ld hl, $8680 + ld hl, VTiles0 tile $68 lb bc, BANK(TradePoofGFX), $c call Request2bpp ld de, TradeCableGFX - ld hl, $8740 + ld hl, VTiles0 tile $74 lb bc, BANK(TradeCableGFX), $4 call Request2bpp xor a @@ -30660,7 +30660,7 @@ Function2985a: ; 2985a ld e, $3 callab Function8e83f ld de, TradeBubbleGFX - ld hl, $8720 + ld hl, VTiles0 tile $72 lb bc, BANK(TradeBubbleGFX), $4 call Request2bpp xor a @@ -32792,7 +32792,7 @@ Function2c143: ; 2c143 Function2c165: ; 2c165 ld de, GFX_2c172 - ld hl, $8310 + ld hl, VTiles0 tile $31 lb bc, BANK(GFX_2c172), 4 call Functiondc9 ret @@ -36763,11 +36763,11 @@ Function4802f: ; 4802f (12:402f) call Function486bf call Functione5f ld de, GFX_488c3 - ld hl, $9100 + ld hl, VTiles2 tile $10 lb bc, BANK(GFX_488c3), 1 call Request1bpp ld de, GFX_488cb - ld hl, $9110 + ld hl, VTiles2 tile $11 lb bc, BANK(GFX_488cb), 1 call Request1bpp call Function4a3a7 @@ -38652,7 +38652,7 @@ Palette_48e5c: ; 48e5c Function48e64: ; 48e64 (12:4e64) ld de, GFX_48e71 - ld hl, $9000 + ld hl, VTiles2 tile $00 lb bc, BANK(GFX_48e71), 1 call Get2bpp ret @@ -38670,7 +38670,7 @@ endr ld a, [hli] ld e, a ld d, [hl] - ld hl, $9500 + ld hl, VTiles2 tile $50 lb bc, BANK(PackFGFX), 15 call Request2bpp ret @@ -39498,7 +39498,7 @@ LoadCelebiGFX: ; 49912 lb bc, BANK(SpecialCelebiLeafGFX), 4 call Request2bpp ld de, SpecialCelebiGFX - ld hl, $8840 + ld hl, VTiles1 tile $04 lb bc, BANK(SpecialCelebiGFX), $10 call Request2bpp xor a @@ -40772,7 +40772,7 @@ Function4a449: ; 4a449 Function4a485: ; 4a485 (12:6485) ld de, GFX_49c0c - ld hl, $9000 + ld hl, VTiles2 tile $00 lb bc, BANK(GFX_49c0c), $d call Get2bpp ret @@ -44882,7 +44882,7 @@ Function4e289: ; 4e289 (13:6289) call IsAPokemon ret c call Function4e307 - ld de, $9000 + ld de, VTiles2 tile $00 predef Function5108b hlcoord 0, 0 ld d, $0 @@ -44970,7 +44970,7 @@ Function4e307: ; 4e307 (13:6307) ld [rVBK], a ; $ff00+$4f ld de, GFX_f9204 lb bc, BANK(GFX_f9204), 1 - ld hl, $97f0 + ld hl, VTiles2 tile $7f call Get2bpp pop af ld [rVBK], a ; $ff00+$4f @@ -45085,7 +45085,7 @@ Function4e497: ; 4e497 (13:6497) ld a, $1 ld [wc2c6], a call Function4e307 - ld de, $9000 + ld de, VTiles2 tile $00 predef Function5108b pop de hlcoord 0, 0 @@ -45334,7 +45334,7 @@ _EvolutionAnimation: ; 4e607 call Function4e708 ld de, VTiles2 - ld hl, $9310 + ld hl, VTiles2 tile $31 ld bc, $0031 call Request2bpp @@ -50434,7 +50434,7 @@ Function81948: ; 81948 Function8197c: ; 8197c ld hl, DebugColorTestGFX + $10 - ld de, $96a0 + ld de, VTiles2 tile $6a ld bc, $0160 call CopyBytes ld hl, DebugColorTestGFX @@ -50704,7 +50704,7 @@ Function81adb: ; 81adb ld [wc2c6], a hlcoord 12, 3 call Function378b - ld de, $9310 + ld de, VTiles2 tile $31 predef GetBackpic ld a, $31 ld [$ffad], a @@ -51458,7 +51458,7 @@ TilesetColorTest: xor a ld [hBGMapMode], a ld de, DebugColorTestGFX + $10 - ld hl, $96a0 + ld hl, VTiles2 tile $6a lb bc, BANK(DebugColorTestGFX), $16 call Request2bpp ld de, DebugColorTestGFX @@ -53569,7 +53569,7 @@ endr ld bc, SCREEN_WIDTH * SCREEN_HEIGHT ld a, $7f call ByteFill - ld de, $9310 + ld de, VTiles2 tile $31 predef GetBackpic ld a, $31 ld [$ffad], a @@ -53860,7 +53860,7 @@ Function86748: ; 86748 Function86810: ; 86810 call WhiteBGMap - ld hl, $9630 + ld hl, VTiles2 tile $63 ld de, FontExtra + $d0 lb bc, BANK(FontExtra), 1 call Request2bpp @@ -54511,12 +54511,12 @@ Function8833e: ; 8833e jr z, .GotClass ld hl, KrisCardPic .GotClass - ld de, $9000 + ld de, VTiles2 tile $00 ld bc, $230 ld a, BANK(ChrisCardPic) ; BANK(KrisCardPic) call FarCopyBytes ld hl, CardGFX - ld de, $9230 + ld de, VTiles2 tile $23 ld bc, $60 ld a, BANK(CardGFX) call FarCopyBytes @@ -54546,7 +54546,7 @@ GetPlayerBackpic: ; 88825 GetChrisBackpic: ; 88830 ld hl, ChrisBackpic ld b, BANK(ChrisBackpic) - ld de, $9310 + ld de, VTiles2 tile $31 ld c, 7 * 7 predef DecompressPredef ret @@ -54631,7 +54631,7 @@ INCBIN "gfx/misc/kris.7x7.2bpp" GetKrisBackpic: ; 88ec9 ; Kris's backpic is uncompressed. ld de, KrisBackpic - ld hl, $9310 + ld hl, VTiles2 tile $31 lb bc, BANK(KrisBackpic), 7 * 7 ; dimensions call Get2bpp ret @@ -55195,12 +55195,12 @@ INCBIN "gfx/unknown/08940b.2bpp" ; 8942b Function8942b: ; 8942b (22:542b) - ld de, $8020 + ld de, VTiles0 tile $02 ld hl, MobileAdapterGFX + $7d0 ld bc, $80 ld a, BANK(MobileAdapterGFX) call FarCopyBytes - ld de, $80a0 + ld de, VTiles0 tile $0a ld hl, MobileAdapterGFX + $c60 ld bc, $40 ld a, BANK(MobileAdapterGFX) @@ -55222,7 +55222,7 @@ Function89448: ; 89448 (22:5448) Function89455: ; 89455 (22:5455) ld hl, MobileAdapterGFX + $7d0 - ld de, $90c0 + ld de, VTiles2 tile $0c ld bc, $490 ld a, BANK(MobileAdapterGFX) call FarCopyBytes @@ -55235,7 +55235,7 @@ Function89464: ; 89464 ld a, BANK(MobileAdapterGFX) call FarCopyBytes ld hl, MobileAdapterGFX + $660 - ld de, $9200 + ld de, VTiles2 tile $20 ld bc, $170 ld a, BANK(MobileAdapterGFX) call FarCopyBytes @@ -55870,7 +55870,7 @@ Function897af: ; 897af ld [TrainerClass], a xor a ld [CurPartySpecies], a - ld de, $9370 + ld de, VTiles2 tile $37 callba GetTrainerPic pop bc ret @@ -55918,7 +55918,7 @@ Function89807: ; 89807 (22:5807) ld hl, MobileAdapterGFX + $200 + $230 .asm_89814 call DisableLCD - ld de, $9370 + ld de, VTiles2 tile $37 ld bc, $230 ld a, BANK(MobileAdapterGFX) call FarCopyBytes @@ -60660,12 +60660,12 @@ Function8b690: ; 8b690 ld a, BANK(GFX_17afa5) call FarCopyBytes ld hl, GFX_17afa5 + $514 + $160 - $10 - ld de, $9610 + ld de, VTiles2 tile $61 ld bc, $10 ld a, BANK(GFX_17afa5) call FarCopyBytes ld hl, GFX_17afa5 + $514 + $160 - ld de, $8ee0 + ld de, VTiles1 tile $6e ld bc, $10 ld a, BANK(GFX_17afa5) call FarCopyBytes @@ -61735,7 +61735,7 @@ Function8c2a0: ; 8c2a0 Function8c2aa: ; 8c2aa ld de, GFX_8c2f4 - ld hl, $8fe0 + ld hl, VTiles1 tile $7e ld b, BANK(GFX_8c2f4) ld c, 2 call Request2bpp @@ -61744,7 +61744,7 @@ Function8c2aa: ; 8c2aa ld a, $1 ld [rVBK], a ld de, GFX_8c2f4 - ld hl, $8fe0 + ld hl, VTiles1 tile $7e ld b, BANK(GFX_8c2f4) ld c, 2 call Request2bpp @@ -62498,7 +62498,7 @@ ShakeHeadbuttTree: ; 8c80a lb bc, BANK(GFX_8c9cc), 4 call Request2bpp ld de, HeadbuttTreeGFX - ld hl, $8840 + ld hl, VTiles1 tile $04 lb bc, BANK(HeadbuttTreeGFX), 8 call Request2bpp call Function8cad3 @@ -62874,7 +62874,7 @@ endr Function8cb9b: ; 8cb9b (23:4b9b) callab Function8cf53 ld de, GFX_8c9cc - ld hl, $8800 + ld hl, VTiles1 tile $00 lb bc, BANK(GFX_8c9cc), 4 call Request2bpp ld a, [CurPartyMon] @@ -63071,7 +63071,7 @@ Function8ccc9: ; 8ccc9 add hl, de ld d, h ld e, l - ld hl, $8040 + ld hl, VTiles0 tile $04 ld c, $4 call Request2bpp call Function8cda6 @@ -63097,19 +63097,19 @@ DrawMagnetTrain: ; 8cd27 inc a cp $12 jr c, .asm_8cd2b - ld hl, $98c0 + ld hl, VBGMap0 tile $0c ld de, MagnetTrainTilemap1 ld c, 20 call .FillLine - ld hl, $98e0 + ld hl, VBGMap0 tile $0e ld de, MagnetTrainTilemap2 ld c, 20 call .FillLine - ld hl, $9900 + ld hl, VBGMap0 tile $10 ld de, MagnetTrainTilemap3 ld c, 20 call .FillLine - ld hl, $9920 + ld hl, VBGMap0 tile $12 ld de, MagnetTrainTilemap4 ld c, 20 call .FillLine @@ -63198,13 +63198,13 @@ SetMagnetTrainPals: ; 8cdc3 call ByteFill ; train - ld hl, $9880 + ld hl, VBGMap0 tile $08 ld bc, $0140 xor a call ByteFill ; more bushes - ld hl, $99c0 + ld hl, VBGMap0 tile $1c ld bc, $0080 ld a, $2 call ByteFill @@ -67708,15 +67708,15 @@ Function90672: ; 90672 (24:4672) ld [hBGMapMode], a ; $ff00+$d4 call Functione51 ld de, GFX_908fb - ld hl, $9000 + ld hl, VTiles2 tile $00 lb bc, BANK(GFX_908fb), 1 call Request1bpp ld de, GFX_90903 - ld hl, $9010 + ld hl, VTiles2 tile $01 lb bc, BANK(GFX_90903), 1 call Request1bpp ld de, GFX_9090b - ld hl, $9020 + ld hl, VTiles2 tile $02 lb bc, BANK(GFX_9090b), 1 call Request1bpp call Function90783 @@ -68087,11 +68087,11 @@ Special_SetDayOfWeek: ; 90913 ld a, $1 ld [$ffaa], a ld de, GFX_90903 - ld hl, $8ef0 + ld hl, VTiles1 tile $6f lb bc, BANK(GFX_90903), 1 call Request1bpp ld de, GFX_9090b - ld hl, $8f50 + ld hl, VTiles1 tile $75 lb bc, BANK(GFX_9090b), 1 call Request1bpp xor a @@ -68567,7 +68567,7 @@ Function90c4e: ; 90c4e ld a, b push af - ld de, $8100 + ld de, VTiles0 tile $10 ld bc, $40 call FarCopyBytes pop af @@ -68576,14 +68576,14 @@ Function90c4e: ; 90c4e ld de, $c0 add hl, de - ld de, $8140 + ld de, VTiles0 tile $14 ld bc, $40 call FarCopyBytes ret .ssaqua ld hl, FastShipGFX - ld de, $8100 + ld de, VTiles0 tile $10 ld bc, $80 call CopyBytes ret @@ -70157,7 +70157,7 @@ _FlyMap: ; 91af3 callba Function8cf53 call Function91ff2 ld de, GFX_922e1 - ld hl, $9300 + ld hl, VTiles2 tile $30 lb bc, BANK(GFX_922e1), 6 call Request1bpp call FlyMap @@ -70566,11 +70566,11 @@ Function91d11: ; 91d11 ld a, $1 ld [$ffaa], a ld de, GFX_922d1 - ld hl, $87f0 + ld hl, VTiles0 tile $7f lb bc, BANK(GFX_922d1), 1 call Request2bpp ; actually 1bpp call Function91ed0 - ld hl, $8780 + ld hl, VTiles0 tile $78 ld c, $4 call Request2bpp call Function91ff2 @@ -70992,7 +70992,7 @@ TownMapPlayerIcon: ; 91fa6 callba GetPlayerIcon ; Standing icon - ld hl, $8100 + ld hl, VTiles0 tile $10 ld c, 4 ; # tiles call Request2bpp @@ -71001,7 +71001,7 @@ TownMapPlayerIcon: ; 91fa6 add hl, de ld d, h ld e, l - ld hl, $8140 + ld hl, VTiles0 tile $14 ld c, 4 ; # tiles ld a, BANK(ChrisSpriteGFX) ; does nothing call Request2bpp @@ -71076,7 +71076,7 @@ Function92311: ; 92311 callba Function8cf53 call Function91ff2 ld de, GFX_922e1 - ld hl, $9300 + ld hl, VTiles2 tile $30 lb bc, BANK(GFX_922e1), 6 call Request1bpp call FillKantoMap @@ -71228,7 +71228,7 @@ Function926f7: ; 926f7 (24:66f7) call PlayMusic call DelayFrame call DisableLCD - ld hl, $9800 + ld hl, VBGMap0 tile $00 ld bc, $400 ld a, $7f call ByteFill @@ -71240,16 +71240,16 @@ Function926f7: ; 926f7 (24:66f7) xor a call ByteFill ld hl, Slots2LZ - ld de, $8000 + ld de, VTiles0 tile $00 call Decompress ld hl, Slots3LZ - ld de, $8400 + ld de, VTiles0 tile $40 call Decompress ld hl, Slots1LZ - ld de, $9000 + ld de, VTiles2 tile $00 call Decompress ld hl, Slots2LZ - ld de, $9250 + ld de, VTiles2 tile $25 call Decompress ld hl, SlotsTilemap decoord 0, 0 @@ -73481,7 +73481,7 @@ Functionb8098:: ; b8098 (2e:4098) Functionb80c6: ; b80c6 ld de, GFX_f9344 - ld hl, $9600 + ld hl, VTiles2 tile $60 lb bc, BANK(GFX_f9344), $e call Get2bpp ret @@ -74166,13 +74166,13 @@ Functionb84b3: ; b84b3 ld de, KrisFishingGFX .asm_b84c7 - ld hl, $8020 + ld hl, VTiles0 tile $02 call Functionb84e3 - ld hl, $8060 + ld hl, VTiles0 tile $06 call Functionb84e3 - ld hl, $80a0 + ld hl, VTiles0 tile $0a call Functionb84e3 - ld hl, $9000 - $40 + ld hl, VTiles2 tile $00 - $40 call Functionb84e3 pop af @@ -74335,7 +74335,7 @@ Unknown_b92f8: ; b92f8 Functionb9317: ; b9317 push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld de, Unknown_b9d46 ld c, $40 call Functionb9915 @@ -74349,7 +74349,7 @@ Functionb9317: ; b9317 Functionb9335: ; b9335 push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld de, Unknown_b9dc6 ld c, $40 call Functionb9915 @@ -74419,7 +74419,7 @@ Functionb9351: ; b9351 Functionb93d2: ; b93d2 push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld de, Unknown_b997e ld c, $8 call Functionb9915 @@ -74438,7 +74438,7 @@ Functionb93d2: ; b93d2 ld de, MailPikaGFX ld c, $30 call Functionb991e - ld hl, $93d0 + ld hl, VTiles2 tile $3d ld de, Unknown_b9c9e ld c, $20 call Functionb990c @@ -74468,7 +74468,7 @@ Functionb93d2: ; b93d2 Functionb944b: ; b944b push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld de, Unknown_b9e26 ld c, $28 call Functionb9915 @@ -74530,7 +74530,7 @@ Functionb9491: ; b9491 Functionb94d6: ; b94d6 push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld bc, $0028 call Functionb97f8 ld de, Unknown_b9c96 @@ -74606,7 +74606,7 @@ Functionb94d6: ; b94d6 Functionb9582: ; b9582 push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld de, Unknown_b997e ld c, $8 call Functionb9915 @@ -74693,7 +74693,7 @@ Functionb9636: ; b9636 Functionb963e: ; b963e push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld de, Unknown_b9d86 ld c, $40 call Functionb990c @@ -74747,14 +74747,14 @@ Functionb963e: ; b963e Functionb96ca: ; b96ca push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld de, Unknown_b9e4e ld c, $28 call Functionb9915 ld de, Unknown_b995e ld c, $8 call Functionb9915 - ld hl, $93d0 + ld hl, VTiles2 tile $3d ld de, Unknown_b9bfe ld c, $20 call Functionb990c @@ -74777,7 +74777,7 @@ Functionb96ca: ; b96ca Functionb9710: ; b9710 push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld de, Unknown_b9e06 ld c, $20 call Functionb9915 @@ -74819,7 +74819,7 @@ Functionb9710: ; b9710 Functionb9776: ; b9776 push bc - ld hl, $9310 + ld hl, VTiles2 tile $31 ld bc, $0028 call Functionb97f8 ld de, Unknown_b992e @@ -75688,20 +75688,20 @@ _CardFlip: ; e00ee (38:40ee) call Functione51 call Functione5f ld hl, LZ_e0d16 - ld de, $9000 + ld de, VTiles2 tile $00 call Decompress ld hl, LZ_e0ea8 - ld de, $93e0 + ld de, VTiles2 tile $3e call Decompress ld hl, LZ_e0cdb - ld de, $8000 + ld de, VTiles0 tile $00 call Decompress ld hl, GFX_e0cf6 - ld de, $8ef0 + ld de, VTiles1 tile $6f ld bc, $10 call CopyBytes ld hl, GFX_e0d06 - ld de, $8f50 + ld de, VTiles1 tile $75 ld bc, $10 call CopyBytes call Functione0521 @@ -76278,7 +76278,7 @@ Functione0509: ; e0509 ; e0521 Functione0521: ; e0521 (38:4521) - ld de, $8f60 + ld de, VTiles1 tile $76 ld hl, $8f62 ld bc, $9e call CopyBytes @@ -77399,11 +77399,11 @@ Functione1190: ; e1190 xor a call ByteFill ld hl, GFX_e17c5 - ld de, $8e00 + ld de, VTiles1 tile $60 ld bc, $0040 call CopyBytes ld hl, LZ_e1805 - ld de, $8ed0 + ld de, VTiles1 tile $6d call Decompress call Functione17a3 hlcoord 0, 0 @@ -78250,10 +78250,10 @@ Functione1e67: ; e1e67 (38:5e67) call GetSGBLayout callab Function8cf53 ld hl, LZ_e2221 - ld de, $9000 + ld de, VTiles2 tile $00 call Decompress ld hl, Unknown_e00ed - ld de, $8000 + ld de, VTiles0 tile $00 ld bc, $40 ld a, BANK(Unknown_e00ed) call FarCopyBytes @@ -79950,7 +79950,7 @@ PCMonInfo: ; e2ac6 (38:6ac6) ld hl, TempMonDVs predef GetUnownLetter call GetBaseData - ld de, $9000 + ld de, VTiles2 tile $00 predef GetFrontpic xor a ld [wcb32], a @@ -81138,18 +81138,18 @@ endr Functione33e8: ; e33e8 (38:73e8) call DisableLCD - ld hl, $9000 + ld hl, VTiles2 tile $00 ld bc, $310 xor a call ByteFill call Functione51 call Functione58 ld hl, PCMailGFX - ld de, $95c0 + ld de, VTiles2 tile $5c ld bc, $40 call CopyBytes ld hl, PCSelectLZ - ld de, $8000 + ld de, VTiles0 tile $00 call Decompress ld a, 6 call SkipMusic @@ -82574,18 +82574,18 @@ IntroScene1: ; e495b (39:495b) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap001 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroUnownsGFX - ld de, $9000 + ld de, VTiles2 tile $00 call Functione54c2 ld hl, IntroPulseGFX - ld de, $8000 + ld de, VTiles0 tile $00 call Functione54c2 ld hl, IntroTilemap002 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, [rSVBK] ; $ff00+$70 push af @@ -82650,15 +82650,15 @@ IntroScene3: ; e49fd (39:49fd) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap003 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroBackgroundGFX - ld de, $9000 + ld de, VTiles2 tile $00 call Functione54c2 ld hl, IntroTilemap004 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, [rSVBK] ; $ff00+$70 push af @@ -82712,18 +82712,18 @@ IntroScene5: ; e4a7a (39:4a7a) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap005 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroUnownsGFX - ld de, $9000 + ld de, VTiles2 tile $00 call Functione54c2 ld hl, IntroPulseGFX - ld de, $8000 + ld de, VTiles0 tile $00 call Functione54c2 ld hl, IntroTilemap006 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, [rSVBK] ; $ff00+$70 push af @@ -82806,21 +82806,21 @@ IntroScene7: ; e4b3f (39:4b3f) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap003 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld hl, IntroPichuWooperGFX - ld de, $8000 + ld de, VTiles0 tile $00 call Functione54c2 ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroSuicuneRunGFX - ld de, $8000 + ld de, VTiles0 tile $00 call Functione54de ld hl, IntroBackgroundGFX - ld de, $9000 + ld de, VTiles2 tile $00 call Functione54c2 ld hl, IntroTilemap004 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, [rSVBK] ; $ff00+$70 push af @@ -82962,15 +82962,15 @@ IntroScene11: ; e4c86 (39:4c86) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap007 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroUnownsGFX - ld de, $9000 + ld de, VTiles2 tile $00 call Functione54c2 ld hl, IntroTilemap008 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, [rSVBK] ; $ff00+$70 push af @@ -83084,18 +83084,18 @@ IntroScene13: ; e4d6d (39:4d6d) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap003 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroSuicuneRunGFX - ld de, $8000 + ld de, VTiles0 tile $00 call Functione54de ld hl, IntroBackgroundGFX - ld de, $9000 + ld de, VTiles2 tile $00 call Functione54c2 ld hl, IntroTilemap004 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, [rSVBK] ; $ff00+$70 push af @@ -83188,22 +83188,22 @@ IntroScene15: ; e4e40 (39:4e40) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap009 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroSuicuneJumpGFX - ld de, $9000 + ld de, VTiles2 tile $00 call Functione54c2 ld hl, IntroUnownBackGFX - ld de, $8000 + ld de, VTiles0 tile $00 call Functione54c2 ld de, GFX_e7a5d - ld hl, $8800 + ld hl, VTiles1 tile $00 lb bc, BANK(GFX_e7a5d), 1 call Request2bpp ld hl, IntroTilemap010 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa call Functione541b ld a, [rSVBK] ; $ff00+$70 @@ -83270,15 +83270,15 @@ IntroScene17: ; e4ef5 (39:4ef5) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap011 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroSuicuneCloseGFX - ld de, $8800 + ld de, VTiles1 tile $00 call Functione54de ld hl, IntroTilemap012 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, [rSVBK] ; $ff00+$70 push af @@ -83336,22 +83336,22 @@ IntroScene19: ; e4f7e (39:4f7e) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap013 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroSuicuneBackGFX - ld de, $9000 + ld de, VTiles2 tile $00 call Functione54c2 ld hl, IntroUnownsGFX - ld de, $8800 + ld de, VTiles1 tile $00 call Functione54c2 ld de, GFX_e7a5d - ld hl, $8ff0 + ld hl, VTiles1 tile $7f lb bc, BANK(GFX_e7a5d), 1 call Request2bpp ld hl, IntroTilemap014 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa call Functione541b ld a, [rSVBK] ; $ff00+$70 @@ -83512,15 +83512,15 @@ IntroScene26: ; e50bb (39:50bb) ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, IntroTilemap015 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, $0 ld [rVBK], a ; $ff00+$4f ld hl, IntroCrystalUnownsGFX - ld de, $9000 + ld de, VTiles2 tile $00 call Functione54c2 ld hl, IntroTilemap017 - ld de, $9800 + ld de, VBGMap0 tile $00 call Functione54fa ld a, [rSVBK] ; $ff00+$70 push af @@ -84730,15 +84730,15 @@ Functionfb449:: ; fb449 Functionfb48a:: ; fb48a ld de, GFX_f9214 - ld hl, $9600 + ld hl, VTiles2 tile $60 lb bc, BANK(GFX_f9214), 1 call Functionddc ld de, GFX_f8f24 - ld hl, $9620 + ld hl, VTiles2 tile $62 lb bc, BANK(GFX_f8f24), 1 call Functiondc9 ld de, FontExtra + $30 - ld hl, $9630 + ld hl, VTiles2 tile $63 lb bc, BANK(FontExtra), $16 call Functiondc9 jr Functionfb4cc @@ -84746,7 +84746,7 @@ Functionfb48a:: ; fb48a Functionfb4b0:: ; fb4b0 ld de, GFX_f9424 - ld hl, $9610 + ld hl, VTiles2 tile $61 ld b, BANK(GFX_f9424) ld c, 1 call Functiondc9 @@ -84755,7 +84755,7 @@ Functionfb4b0:: ; fb4b0 Functionfb4be:: ; fb4be ld de, FontBattleExtra - ld hl, $9600 + ld hl, VTiles2 tile $60 lb bc, BANK(FontBattleExtra), $19 call Functiondc9 jr Functionfb4cc @@ -84769,10 +84769,10 @@ Functionfb4cc: ; fb4cc call AddNTimes ld d, h ld e, l - ld hl, $9790 + ld hl, VTiles2 tile $79 lb bc, BANK(Frames), 6 call Functionddc - ld hl, $97f0 + ld hl, VTiles2 tile $7f ld de, GFX_f9204 lb bc, BANK(GFX_f9204), 1 call Functionddc @@ -84781,10 +84781,10 @@ Functionfb4cc: ; fb4cc Functionfb4f2: ; fb4f2 ld de, FontBattleExtra - ld hl, $9600 + ld hl, VTiles2 tile $60 lb bc, BANK(FontBattleExtra), $c call Functiondc9 - ld hl, $9700 + ld hl, VTiles2 tile $70 ld de, FontBattleExtra + $100 lb bc, BANK(FontBattleExtra), 3 call Functiondc9 @@ -84792,19 +84792,19 @@ Functionfb4f2: ; fb4f2 Functionfb50d: ; fb50d ld de, GFX_f8ac0 - ld hl, $96c0 + ld hl, VTiles2 tile $6c lb bc, BANK(GFX_f8ac0), 4 call Functionddc ld de, GFX_f8ae0 - ld hl, $9730 + ld hl, VTiles2 tile $73 lb bc, BANK(GFX_f8ae0), 6 call Functionddc ld de, GFX_f8b10 - ld hl, $9550 + ld hl, VTiles2 tile $55 lb bc, BANK(GFX_f8b10), 9 call Functiondc9 ld de, GFX_f9214 + $90 - ld hl, $95e0 + ld hl, VTiles2 tile $5e lb bc, BANK(GFX_f9214), 2 call Functiondc9 ret @@ -84813,25 +84813,25 @@ Functionfb50d: ; fb50d Functionfb53e: ; fb53e call Functionfb4be ld de, GFX_f8ac0 - ld hl, $96c0 + ld hl, VTiles2 tile $6c lb bc, BANK(GFX_f8ac0), 4 call Functionddc ld de, GFX_f8ae0 - ld hl, $9780 + ld hl, VTiles2 tile $78 lb bc, BANK(GFX_f8ae0), 1 call Functionddc ld de, GFX_f8ae0 + $18 - ld hl, $9760 + ld hl, VTiles2 tile $76 lb bc, BANK(GFX_f8ae0), 2 call Functionddc ld de, GFX_f8b10 - ld hl, $9550 + ld hl, VTiles2 tile $55 lb bc, BANK(GFX_f8b10), 8 call Functiondc9 Functionfb571: ; fb571 ld de, GFX_f89b0 - ld hl, $9310 + ld hl, VTiles2 tile $31 lb bc, BANK(GFX_f89b0), $11 call Functiondc9 ret @@ -87094,13 +87094,13 @@ Function104309: ld [rVBK], a ; $ff00+$4f ld c, $8 ld hl, w6_d000 + $80 - ld de, $9c00 + ld de, VBGMap1 tile $00 call Function104209 ld a, $0 ld [rVBK], a ; $ff00+$4f ld c, $8 ld hl, w6_d000 - ld de, $9c00 + ld de, VBGMap1 tile $00 call Function104209 ret @@ -87395,13 +87395,13 @@ Function104770: ; 104770 (41:4770) ld [rVBK], a ; $ff00+$4f xor a ld bc, $400 - ld hl, $9800 + ld hl, VBGMap0 tile $00 call ByteFill pop af ld [rVBK], a ; $ff00+$4f ld a, $60 ld bc, $400 - ld hl, $9800 + ld hl, VBGMap0 tile $00 call ByteFill ret @@ -87416,7 +87416,7 @@ Function1047a3: ; 1047a3 (41:47a3) ld [rVBK], a ; $ff00+$4f Function1047b4: ; 1047b4 (41:47b4) - ld hl, $9800 + ld hl, VBGMap0 tile $00 ld c, $14 ld b, $12 .asm_1047bb @@ -88818,7 +88818,7 @@ Function105153: ; 105153 (41:5153) call WhiteBGMap call DisableLCD ld hl, MysteryGiftGFX - ld de, $9000 + ld de, VTiles2 tile $00 ld a, BANK(MysteryGiftGFX) ld bc, $430 call FarCopyBytes @@ -89117,12 +89117,12 @@ Function1057d7: ; 1057d7 (41:57d7) call WhiteBGMap call DisableLCD ld hl, MysteryGiftJP_GFX - ld de, $9000 + ld de, VTiles2 tile $00 ld a, BANK(MysteryGiftJP_GFX) ld bc, $400 call FarCopyBytes ld hl, MysteryGiftJP_GFX + $400 - ld de, $8000 + ld de, VTiles0 tile $00 ld a, BANK(MysteryGiftJP_GFX) ld bc, $80 call FarCopyBytes @@ -90596,20 +90596,20 @@ Function106463: ; 106463 Function106464:: ; 106464 ld de, GFX_f9214 - ld hl, $9600 + ld hl, VTiles2 tile $60 lb bc, BANK(GFX_f9214), 1 call Get2bpp ld de, GFX_f9424 - ld hl, $9610 + ld hl, VTiles2 tile $61 lb bc, BANK(GFX_f9424), 1 call Get2bpp ld de, GFX_106514 - ld hl, $9620 + ld hl, VTiles2 tile $62 ld c, 9 ld b, BANK(GFX_106514) call Get2bpp ld de, $40b0 - ld hl, $96b0 + ld hl, VTiles2 tile $6b ld b, $f ; XXX no graphics at 0f:40b0 call Get2bpp callba Functionfb4cc @@ -90624,11 +90624,11 @@ Function10649b: ; 10649b call AddNTimes ld d, h ld e, l - ld hl, $9790 + ld hl, VTiles2 tile $79 ld c, $6 ld b, BANK(Frames) call Function1064c3 - ld hl, $97f0 + ld hl, VTiles2 tile $7f ld de, GFX_f9204 ld c, $1 ld b, BANK(GFX_f9204) @@ -90704,7 +90704,7 @@ Function106594:: ; 106594 lb bc, BANK(GFX_1065ad), $80 call Get2bpp ld de, GFX_1065ad + $800 - ld hl, $97f0 + ld hl, VTiles2 tile $7f lb bc, BANK(GFX_1065ad), 1 call Get2bpp ret @@ -90962,17 +90962,17 @@ Function1dc381: ; 1dc381 call Functione58 ld de, MobileHPIcon - ld hl, $9710 + ld hl, VTiles2 tile $71 lb bc, BANK(MobileHPIcon), 1 call Request1bpp ld de, MobileLvIcon - ld hl, $96e0 + ld hl, VTiles2 tile $6e lb bc, BANK(MobileLvIcon), 1 call Request1bpp ld de, ShinyIcon - ld hl, $93f0 + ld hl, VTiles2 tile $3f lb bc, BANK(ShinyIcon), 1 call Get2bpp @@ -91263,14 +91263,14 @@ INCLUDE "engine/diploma.asm" Function1ddf1c: ; 1ddf1c ld hl, LZ_1ddf33 - ld de, $9310 + ld de, VTiles2 tile $31 call Decompress ret ; 1ddf26 Function1ddf26: ; 1ddf26 (77:5f26) ld hl, LZ_1ddf33 - ld de, $9310 + ld de, VTiles2 tile $31 lb bc, BANK(LZ_1ddf33), $3a call Functione73 ret -- cgit v1.2.3 From 4fa6c6daa46935c7580a60a22bd9216414246dc0 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 16 Oct 2015 13:35:43 -0400 Subject: Split up bank 2; other relabelings --- main.asm | 8404 ++++++-------------------------------------------------------- 1 file changed, 720 insertions(+), 7684 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index adc84750d..22a6a0286 100644 --- a/main.asm +++ b/main.asm @@ -183,29 +183,29 @@ _ResetWRAM: ; 5bae call ByteFill ld a, [rLY] - ld [$ffe3], a + ld [hSecondsBackup], a call DelayFrame ld a, [hRandomSub] ld [PlayerID], a ld a, [rLY] - ld [$ffe3], a + ld [hSecondsBackup], a call DelayFrame ld a, [hRandomAdd] ld [PlayerID + 1], a call Random - ld [wd84a], a + ld [wSecretID], a call DelayFrame call Random - ld [wd84b], a + ld [wSecretID + 1], a ld hl, PartyCount call InitList xor a ld [wCurBox], a - ld [wd4b4], a + ld [wSavedAtLeastOnce], a call SetDefaultBoxNames @@ -648,7 +648,7 @@ MenuData2_0x5f03: ; 5f03 Function5f1c: ; 5f1c - call Function1cfd + call GetMemTileCoord push hl ld de, $005d add hl, de @@ -1154,7 +1154,7 @@ Function6292: ; 6292 ; unreferenced ld hl, LYOverrides + $5f ld a, [hl] dec a - ld bc, $0028 + ld bc, 2 * SCREEN_WIDTH call ByteFill ret ; 62a3 @@ -1463,7 +1463,7 @@ GameInit:: ; 642e call WhiteBGMap call ClearTileMap ld a, $98 - ld [$ffd7], a + ld [hBGMapAddress + 1], a xor a ld [hBGMapAddress], a ld [hJoyDown], a @@ -1527,7 +1527,7 @@ Function6473: ; 6473 ; 64b9 Function64b9: ; 64b9 - ld [$ffd7], a + ld [hBGMapAddress + 1], a xor a ld [hBGMapAddress], a ret @@ -1566,9 +1566,9 @@ Function64db: ; 64db ld [rHDMA1], a ld a, w6_d000 % $100 ld [rHDMA2], a - ld a, ($9800 % $8000) / $100 + ld a, (VBGMap0 % $8000) / $100 ld [rHDMA3], a - ld a, ($9800 % $8000) % $100 + ld a, (VBGMap0 % $8000) % $100 ld [rHDMA4], a ld a, $3f ld [hDMATransfer], a @@ -2422,7 +2422,7 @@ Function7041: ; 7041 ld bc, ObjectStructs xor a .loop - ld [$ffb0], a + ld [hConnectedMapWidth], a call GetObjectSprite jr z, .nope ld hl, OBJECT_04 @@ -2452,7 +2452,7 @@ Function7041: ; 7041 .ok2 ld a, [hConnectionStripLength] ld l, a - ld a, [$ffb0] + ld a, [hConnectedMapWidth] cp l jr nz, .setcarry @@ -2469,7 +2469,7 @@ Function7041: ; 7041 jr nz, .nope ld a, [hConnectionStripLength] ld l, a - ld a, [$ffb0] + ld a, [hConnectedMapWidth] cp l jr nz, .setcarry @@ -2478,7 +2478,7 @@ Function7041: ; 7041 add hl, bc ld b, h ld c, l - ld a, [$ffb0] + ld a, [hConnectedMapWidth] inc a cp NUM_OBJECT_STRUCTS jr nz, .loop @@ -2589,7 +2589,7 @@ Function7113: ; 7113 ld bc, ObjectStructs xor a .loop - ld [$ffb0], a + ld [hConnectedMapWidth], a call GetObjectSprite jr z, .asm_7160 ld hl, OBJECT_03 @@ -2612,7 +2612,7 @@ Function7113: ; 7113 ld a, [hl] cp d jr nz, .asm_714e - ld a, [$ffb0] + ld a, [hConnectedMapWidth] cp $0 jr z, .asm_7160 jr .asm_716f @@ -2635,7 +2635,7 @@ Function7113: ; 7113 add hl, bc ld b, h ld c, l - ld a, [$ffb0] + ld a, [hConnectedMapWidth] inc a cp NUM_OBJECT_STRUCTS jr nz, .loop @@ -3066,16 +3066,16 @@ SpecialReturnShuckle: ; 737e ret ; 73f7 -Function73f7: ; 73f7 +Special_BillsGrandfather: ; 73f7 callba SelectMonFromParty - jr c, .asm_740e + jr c, .cancel ld a, [CurPartySpecies] ld [ScriptVar], a - ld [wd265], a + ld [wNamedObjectIndexBuffer], a call GetPokemonName jp CopyPokemonName_Buffer1_Buffer3 -.asm_740e +.cancel xor a ld [ScriptVar], a ret @@ -3215,7 +3215,7 @@ GetSpawnCoord: ; 8029 ld [hConnectionStripLength], a ld bc, MapObjects ld a, $0 - ld [$ffb0], a + ld [hConnectedMapWidth], a ld de, ObjectStructs call Function8116 ld a, $0 @@ -3314,12 +3314,12 @@ CopyObjectStruct:: ; 80e7 ld a, 1 ld de, OBJECT_STRUCT_LENGTH .loop - ld [$ffb0], a + ld [hConnectedMapWidth], a ld a, [hl] and a jr z, .done add hl, de - ld a, [$ffb0] + ld a, [hConnectedMapWidth] inc a cp NUM_OBJECT_STRUCTS jr nz, .loop @@ -3346,7 +3346,7 @@ Function8116: ; 8116 ; 811d Function811d: ; 811d - ld a, [$ffb0] + ld a, [hConnectedMapWidth] ld hl, MAPOBJECT_OBJECT_STRUCT_ID add hl, bc ld [hl], a @@ -3833,7 +3833,7 @@ Function839e:: ; 839e ld hl, OBJECT_SPRITE_Y add hl, de ld [hl], a - ld a, [$ffb0] + ld a, [hConnectedMapWidth] ld hl, OBJECT_32 add hl, de ld [hl], a @@ -6062,7 +6062,7 @@ GetFacingObject: ; cf0d callba CheckFacingObject jr nc, .fail - ld a, [$ffb0] + ld a, [hConnectedMapWidth] call GetObjectStruct ld hl, OBJECT_MAP_OBJECT_INDEX add hl, bc @@ -6594,7 +6594,7 @@ UnknownText_0xd1d0: ; 0xd1d0 _ReceiveItem:: ; d1d5 - call CheckHLequTMsHMsEnd + call DoesHLEqualNumItems jp nz, PutItemInPocket push hl call CheckItemPocket @@ -6641,8 +6641,8 @@ _ReceiveItem:: ; d1d5 _TossItem:: ; d20d - call CheckHLequTMsHMsEnd - jr nz, .asm_d241 + call DoesHLEqualNumItems + jr nz, .remove push hl call CheckItemPocket pop de @@ -6684,13 +6684,13 @@ _TossItem:: ; d20d ld l, e ; d241 -.asm_d241 +.remove jp RemoveItemFromPocket ; d244 _CheckItem:: ; d244 - call CheckHLequTMsHMsEnd - jr nz, .asm_d278 + call DoesHLEqualNumItems + jr nz, .nope push hl call CheckItemPocket pop de @@ -6732,16 +6732,16 @@ _CheckItem:: ; d244 ld l, e ; d278 -.asm_d278 +.nope jp CheckTheItem ; d27b -CheckHLequTMsHMsEnd: ; d27b +DoesHLEqualNumItems: ; d27b ld a, l - cp TMsHMsEnd % $100 + cp NumItems % $100 ret nz ld a, h - cp TMsHMsEnd / $100 + cp NumItems / $100 ret ; d283 @@ -6749,21 +6749,21 @@ GetPocketCapacity: ; d283 ld c, MAX_ITEMS ld a, e cp NumItems % $100 - jr nz, .asm_d28e + jr nz, .not_bag ld a, d cp NumItems / $100 ret z -.asm_d28e +.not_bag ld c, MAX_PC_ITEMS ld a, e cp PCItems % $100 - jr nz, .asm_d299 + jr nz, .not_pc ld a, d cp PCItems / $100 ret z -.asm_d299 +.not_pc ld c, MAX_BALLS ret ; d29c @@ -10439,17 +10439,17 @@ Function116c1: ; 116c1 push af xor a ld [$ffde], a - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a call Function116f8 call DelayFrame .asm_116e5 call Function11915 jr nc, .asm_116e5 pop af - ld [$ffaa], a + ld [hInMenu], a pop af ld [$ffde], a pop af @@ -10994,7 +10994,7 @@ Unknown_11a82: ; 11a82 ; 11a8b Function11a8b: ; 11a8b (4:5a8b) - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .up @@ -11199,21 +11199,22 @@ Function11bd0: ; 11bd0 (4:5bd0) ; 11be0 Function11be0: ; 11be0 +; load $f2, ($eb * [wc6d3]), $50 into the dw address at wc6d0 ld hl, wc6d0 ld a, [hli] ld h, [hl] ld l, a - ld [hl], $f2 + ld [hl], "·" inc hl ld a, [wc6d3] dec a ld c, a - ld a, $eb -.asm_11bf0 + ld a, "→" +.loop ld [hli], a dec c - jr nz, .asm_11bf0 - ld [hl], $50 + jr nz, .loop + ld [hl], "@" ret ; 11bf7 @@ -11385,17 +11386,17 @@ Function11e75: ; 11e75 (4:5e75) push af xor a ld [$ffde], a - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a call Function11e9a call DelayFrame .asm_11e8e call Function11fc0 jr nc, .asm_11e8e pop af - ld [$ffaa], a + ld [hInMenu], a pop af ld [$ffde], a ret @@ -11427,9 +11428,9 @@ Function11e9a: ; 11e9a (4:5e9a) call GetSGBLayout call WaitBGMap call WaitTop - ld a, $e4 + ld a, %11100100 call DmgToCgbBGPals - ld a, $e4 + ld a, %11100100 call Functioncf8 call Function11be0 ld hl, wc6d0 @@ -11459,15 +11460,15 @@ String_11f7a: ; 11f7a Function11f84: ; 11f84 (4:5f84) call WaitTop hlcoord 0, 0 - ld bc, $78 + ld bc, 6 * SCREEN_WIDTH ld a, $60 call ByteFill hlcoord 0, 6 - ld bc, $f0 + ld bc, 12 * SCREEN_WIDTH ld a, " " call ByteFill hlcoord 1, 1 - ld bc, $412 + lb bc, 4, SCREEN_WIDTH - 2 call ClearBox ld de, String_121dd @@ -11688,7 +11689,7 @@ Unknown_12102: ; 12102 ; 1210c Function1210c: ; 1210c (4:610c) - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .up @@ -12762,8 +12763,8 @@ endr xor a ld hl, MenuItemsList ld [hli], a - ld a, $ff - ld bc, $000f + ld a, -1 + ld bc, MenuItemsListEnd - (MenuItemsList + 1) call ByteFill ld de, MenuItemsList + 1 ld c, 0 @@ -13970,12 +13971,12 @@ Function12fd5: ; 12fd5 jp .asm_12ff2 .asm_13018 - ld a, $7f + ld a, " " hlcoord 1, 11 - ld bc, $0005 + ld bc, 5 call ByteFill hlcoord 1, 12 - ld bc, $0512 + lb bc, 5, SCREEN_WIDTH - 2 call ClearBox hlcoord 1, 12 ld de, String_1316b @@ -13992,7 +13993,7 @@ Function12fd5: ; 12fd5 xor a ld [wd0e3], a hlcoord 1, 2 - ld bc, $0812 + lb bc, 8, SCREEN_WIDTH - 2 call ClearBox jp .asm_12fe8 ; 1305b @@ -18408,8 +18409,8 @@ MenuData15a08: ; 0x15a08 db 4, 8 ; rows/cols? db 2 ; horizontal spacing? dbw 0, PCItems - dbw BANK(Function24ab4), Function24ab4 - dbw BANK(Function24ac3), Function24ac3 + dbw BANK(PlaceMenuItemName), PlaceMenuItemName + dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity dbw BANK(Function244c3), Function244c3 PC_DisplayText: ; 15a20 @@ -19096,7 +19097,7 @@ MenuData2_0x15e20: ; 0x15e20 db 4, 8 ; rows, columns db 1 ; horizontal spacing dbw 0, OBPals + 8 * 6 - dbw BANK(Function24ab4), Function24ab4 + dbw BANK(PlaceMenuItemName), PlaceMenuItemName dbw BANK(Function15e30), Function15e30 dbw BANK(Function244c3), Function244c3 ; 15e30 @@ -20428,10 +20429,10 @@ Function16be4: ; 16be4 and a ret z - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a ld a, [Options] push af set 4, a @@ -20516,17 +20517,17 @@ Function16be4: ; 16be4 pop af ld [Options], a pop af - ld [$ffaa], a + ld [hInMenu], a call Function222a ret ; 16ca0 Function16ca0: ; 16ca0 - ld a, [$ffa9] - and $10 + ld a, [hJoyLast] + and D_RIGHT jr nz, .asm_16cb9 - ld a, [$ffa9] - and $20 + ld a, [hJoyLast] + and D_LEFT jr nz, .asm_16cad ret @@ -20608,7 +20609,7 @@ Function16d20: ; 16d20 xor a call GetSRAMBank ld hl, sScratch - ld bc, $0310 + ld bc, $0310 ; 784 xor a call ByteFill ld hl, VTiles2 tile $31 @@ -20618,7 +20619,7 @@ Function16d20: ; 16d20 ld b, a call Get2bpp call CloseSRAM - ld c, $14 + ld c, 20 call DelayFrames ret ; 16d57 @@ -20649,7 +20650,7 @@ INCBIN "gfx/unknown/016da4.1bpp" Function16dac: ; 16dac hlcoord 0, 0 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - ld a, $7f + ld a, " " call ByteFill hlcoord 7, 11 ld a, $31 @@ -21381,13 +21382,13 @@ Function17254: ; 17254 (5:7254) push hl push bc hlcoord 0, 0 - ld bc, $168 - ld a, $7f + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH + ld a, " " call ByteFill pop bc pop hl ld a, b - ld [$ffd7], a + ld [hBGMapAddress + 1], a ld a, c ld [$ffad], a ld bc, $707 @@ -21590,7 +21591,7 @@ Function17418: ; 17418 (5:7418) jr nz, .asm_1741a ret -Function17421: ; 17421 +Special_DayCareMon1: ; 17421 ld hl, UnknownText_0x17467 call PrintText ld a, [wBreedMon1Species] @@ -21603,7 +21604,7 @@ Function17421: ; 17421 call Function1746c jp PrintText -Function17440: ; 17440 +Special_DayCareMon2: ; 17440 ld hl, UnknownText_0x17462 call PrintText ld a, [wBreedMon2Species] @@ -22592,7 +22593,7 @@ Function24374:: ; 24374 ld h, [hl] ld l, a set 0, [hl] - call Function1cfd + call GetMemTileCoord call Function243cd call Function1d19 call Function243cd @@ -22950,7 +22951,7 @@ Function245af:: ; 245af ld [wcf73], a ld [hBGMapMode], a inc a - ld [$ffaa], a + ld [hInMenu], a call Function2471a call Function24764 call Function247dd @@ -22963,21 +22964,21 @@ Function245af:: ; 245af Function245cb:: ; 245cb .loop - call Function24609 - jp c, Function245d6 - call z, Function245e1 + call MenuJoyAction + jp c, .exit + call z, .zero jr .loop ; 245d6 -Function245d6: ; 245d6 +.exit: ; 245d6 call Function1ff8 ld [wcf73], a ld a, 0 - ld [$ffaa], a + ld [hInMenu], a ret ; 245e1 -Function245e1: ; 245e1 +.zero: ; 245e1 call Function245f1 ld a, 1 ld [hBGMapMode], a @@ -23003,42 +23004,42 @@ Function245f1: ; 245f1 ret ; 24609 -Function24609: ; 24609 -.asm_24609 +MenuJoyAction: ; 24609 +.loop call Function1bd3 - ld a, [$ffa9] - and $f0 + ld a, [hJoyLast] + and D_PAD ld b, a ld a, [hJoyPressed] - and $f + and BUTTONS or b - bit 0, a - jp nz, Function24644 - bit 1, a - jp nz, Function2466f - bit 2, a - jp nz, Function24673 - bit 3, a - jp nz, Function24695 - bit 4, a - jp nz, Function246b5 - bit 5, a - jp nz, Function246a1 - bit 6, a - jp nz, Function246c9 - bit 7, a - jp nz, Function246df - jr .asm_24609 + bit 0, a ; A + jp nz, .a_button + bit 1, a ; B + jp nz, .b_button + bit 2, a ; Select + jp nz, .select + bit 3, a ; Start + jp nz, .start + bit 4, a ; Right + jp nz, .d_right + bit 5, a ; Left + jp nz, .d_left + bit 6, a ; Up + jp nz, .d_up + bit 7, a ; Down + jp nz, .d_down + jr .loop ; 24640 -Function24640: ; 24640 - ld a, $ff +.unreferenced: ; unreferenced + ld a, -1 and a ret ; 24644 -Function24644: ; 24644 +.a_button: ; 24644 call Function1bee ld a, [wcfa9] dec a @@ -23052,20 +23053,20 @@ Function24644: ; 24644 ld [wcf77], a ld [wd107], a ld a, [MenuSelection] - cp $ff - jr z, Function2466f - ld a, $1 + cp -1 + jr z, .b_button + ld a, A_BUTTON scf ret ; 2466f -Function2466f: ; 2466f - ld a, $2 +.b_button: ; 2466f + ld a, B_BUTTON scf ret ; 24673 -Function24673: ; 24673 +.select: ; 24673 ld a, [wcf91] bit 7, a jp z, xor_a_dec_a @@ -23073,65 +23074,65 @@ Function24673: ; 24673 dec a call Function248d5 ld a, [MenuSelection] - cp $ff + cp -1 jp z, xor_a_dec_a call Function246fc dec a ld [wcf77], a - ld a, $4 + ld a, SELECT scf ret ; 24695 -Function24695: ; 24695 +.start: ; 24695 ld a, [wcf91] bit 6, a jp z, xor_a_dec_a - ld a, $8 + ld a, START scf ret ; 246a1 -Function246a1: ; 246a1 +.d_left: ; 246a1 ld hl, wcfa6 bit 7, [hl] jp z, xor_a_dec_a ld a, [wcf91] bit 3, a jp z, xor_a_dec_a - ld a, $20 + ld a, D_LEFT scf ret ; 246b5 -Function246b5: ; 246b5 +.d_right: ; 246b5 ld hl, wcfa6 bit 7, [hl] jp z, xor_a_dec_a ld a, [wcf91] bit 2, a jp z, xor_a_dec_a - ld a, $10 + ld a, D_RIGHT scf ret ; 246c9 -Function246c9: ; 246c9 +.d_up: ; 246c9 ld hl, wcfa6 bit 7, [hl] jp z, xor_a ld hl, wd0e4 ld a, [hl] and a - jr z, .asm_246dc + jr z, .xor_dec_up dec [hl] jp xor_a -.asm_246dc +.xor_dec_up jp xor_a_dec_a ; 246df -Function246df: ; 246df +.d_down: ; 246df ld hl, wcfa6 bit 7, [hl] jp z, xor_a @@ -23141,11 +23142,11 @@ Function246df: ; 246df ld b, a ld a, [wd144] cp b - jr c, .asm_246f9 + jr c, .xor_dec_down inc [hl] jp xor_a -.asm_246f9 +.xor_dec_down jp xor_a_dec_a ; 246fc @@ -23159,7 +23160,7 @@ Function246fc: ; 246fc ; 24706 Function24706: ; 24706 (9:4706) - call Function1cfd + call GetMemTileCoord ld de, $14 add hl, de ld de, $28 @@ -23326,7 +23327,7 @@ Function247f0: ; 247f0 ld [hl], $61 .asm_2480d - call Function1cfd + call GetMemTileCoord ld bc, $0015 add hl, bc ld a, [wcf92] @@ -23759,17 +23760,17 @@ Function24aab: ; 24aab (9:4aab) jr nz, Function24aab ret -Function24ab4: ; 0x24ab4 +PlaceMenuItemName: ; 0x24ab4 push de ld a, [MenuSelection] - ld [wd265], a + ld [wNamedObjectIndexBuffer], a call GetItemName pop hl call PlaceString ret ; 0x24ac3 -Function24ac3: ; 0x24ac3 +PlaceMenuItemQuantity: ; 0x24ac3 push de ld a, [MenuSelection] ld [CurItem], a @@ -23780,7 +23781,7 @@ Function24ac3: ; 0x24ac3 jr nz, .done ld de, $0015 add hl, de - ld [hl], $f1 + ld [hl], "×" inc hl ld de, wcf75 lb bc, 1, 2 @@ -23807,7 +23808,7 @@ Function24af8: ; 24af8 Function24b01: ; 24b01 call Function1cbb - call Function1cfd + call GetMemTileCoord ld de, $0015 add hl, de ld de, Money @@ -23832,7 +23833,8 @@ MenuDataHeader_0x24b1d: ; 0x24b1d db 1 ; default option ; 0x24b25 -Function24b25: ; 24b25 +Special_DisplayCoinCaseBalance: ; 24b25 + ; Place a text box of size 1x7 at 11, 0. hlcoord 11, 0 ld b, 1 ld c, 7 @@ -23841,7 +23843,7 @@ Function24b25: ; 24b25 ld de, CoinString call PlaceString hlcoord 17, 1 - ld de, String24b8e + ld de, ShowMoney_TerminatorString call PlaceString ld de, Coins lb bc, 2, 4 @@ -23850,10 +23852,10 @@ Function24b25: ; 24b25 ret ; 24b4e -Function24b4e: ; 24b4e +Special_DisplayMoneyAndCoinBalance: ; 24b4e hlcoord 5, 0 - ld b, $3 - ld c, $d + ld b, 3 + ld c, 13 call TextBox hlcoord 6, 1 ld de, MoneyString @@ -23876,7 +23878,7 @@ MoneyString: ; 24b83 db "MONEY@" CoinString: ; 24b89 db "COIN@" -String24b8e: ; 24b8e +ShowMoney_TerminatorString: ; 24b8e db "@" ; 24b8f @@ -23980,34 +23982,35 @@ String24c5e: ; 24c5e ; 24c64 -Function24c64: ; 24c64 +FindApricornsInBag: ; 24c64 +; Checks the bag for Apricorns. ld hl, Buffer1 xor a ld [hli], a dec a - ld bc, $000a + ld bc, 10 call ByteFill - ld hl, ApricornBalls -.asm_24c73 + ld hl, .ApricornBalls +.loop ld a, [hl] - cp $ff - jr z, .asm_24c8d + cp -1 + jr z, .done push hl ld [CurItem], a ld hl, NumItems call CheckItem pop hl - jr nc, .asm_24c89 + jr nc, .nope ld a, [hl] - call Function24c94 -.asm_24c89 + call .addtobuffer +.nope rept 2 inc hl endr - jr .asm_24c73 + jr .loop -.asm_24c8d +.done ld a, [Buffer1] and a ret nz @@ -24015,7 +24018,7 @@ endr ret ; 24c94 -Function24c94: ; 24c94 +.addtobuffer: ; 24c94 push hl ld hl, Buffer1 inc [hl] @@ -24027,7 +24030,7 @@ Function24c94: ; 24c94 ret ; 24ca0 -ApricornBalls: ; 24ca0 +.ApricornBalls: ; 24ca0 db RED_APRICORN, LEVEL_BALL db BLU_APRICORN, LURE_BALL db YLW_APRICORN, MOON_BALL @@ -24035,7 +24038,7 @@ ApricornBalls: ; 24ca0 db WHT_APRICORN, FAST_BALL db BLK_APRICORN, HEAVY_BALL db PNK_APRICORN, LOVE_BALL - db $ff + db -1 ; 24caf @@ -24154,7 +24157,7 @@ MonMenuLoop: ; 24d59 ; 24d91 PopulateMonMenu: ; 24d91 - call Function1cfd + call GetMemTileCoord ld bc, $002a ; 42 add hl, bc ld de, Buffer2 @@ -24301,7 +24304,7 @@ Function24e68: ; 24e68 xor a ld [Buffer1], a ld hl, Buffer2 - ld bc, $0009 + ld bc, 9 call ByteFill ret ; 24e76 @@ -24312,7 +24315,7 @@ Function24e76: ; 24e76 ld d, $0 ld hl, Buffer2 add hl, de - ld [hl], $ff + ld [hl], -1 ret ; 24e83 @@ -24642,7 +24645,7 @@ Function2500e: ; 2500e Function25072: ; 25072 call Function1cbb - call Function1cfd + call GetMemTileCoord ld de, $0015 add hl, de ld [hl], $f1 @@ -24766,8 +24769,8 @@ Function25105: ; 25105 ld a, [wcf63] bit 7, a jr nz, .asm_25132 - ld a, [$ffa9] - and $2 + ld a, [hJoyLast] + and B_BUTTON jr nz, .asm_25132 call Function2518e call DelayFrame @@ -24862,9 +24865,9 @@ Function251b6: ; 251b6 (9:51b6) Function251d7: ; 251d7 (9:51d7) call Function25415 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $11 + and D_RIGHT | A_BUTTON jr nz, .asm_251e3 ret .asm_251e3 @@ -24903,12 +24906,12 @@ Function251f4: ; 251f4 (9:51f4) Function25221: ; 25221 (9:5221) ld hl, Unknown_254c9 call Function25438 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $1 + and A_BUTTON jr nz, Function25246 ld a, [hl] - and $20 + and D_LEFT jr nz, .asm_25235 ret .asm_25235 @@ -24952,12 +24955,12 @@ Function2524c: ; 2524c (9:524c) Function25279: ; 25279 (9:5279) ld hl, Unknown_254c9 call Function25438 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $20 + and D_LEFT jr nz, .asm_2528d ld a, [hl] - and $10 + and D_RIGHT jr nz, .asm_25293 ret .asm_2528d @@ -25429,7 +25432,7 @@ ClearOakRatingBuffers: ; 0x26647 ClearOakRatingBuffer: ; 0x2665a push hl ld a, "@" - ld bc, $000d + ld bc, ITEM_NAME_LENGTH call ByteFill pop hl lb bc, PRINTNUM_RIGHTALIGN | 1, 3 @@ -25727,8 +25730,8 @@ Function26822: ; 26822 (9:6822) ld hl, StringBuffer2 xor a ld [hli], a - ld bc, $c - ld a, $ff + ld bc, ITEM_NAME_LENGTH - 1 + ld a, -1 call ByteFill ret @@ -28740,13 +28743,13 @@ Function28ade: ; 28ade ldcoord 9, 17 .asm_28ae3 call Functiona57 - ld a, [$ffa9] + ld a, [hJoyLast] and a jr z, .asm_28ae3 bit 0, a jr nz, .asm_28b0b push af - ld a, $7f + ld a, " " ldcoord 9, 17 pop af bit 6, a @@ -28790,12 +28793,12 @@ Function28b22: ; 28b22 Function28b42: ; 28b42 hlcoord 0, 16 - ld a, $7e - ld bc, $0028 + ld a, "┘" + ld bc, 2 * SCREEN_WIDTH call ByteFill hlcoord 1, 16 - ld a, $7f - ld bc, SCREEN_HEIGHT + ld a, " " + ld bc, SCREEN_WIDTH - 2 call ByteFill hlcoord 2, 16 ld de, String_28b61 @@ -29372,7 +29375,7 @@ Function28fdb: ; 28fdb ld a, $1 ld [rVBK], a ld hl, VTiles0 - ld bc, $2000 + ld bc, sScratch - VTiles0 xor a call ByteFill ld a, $0 @@ -29380,8 +29383,8 @@ Function28fdb: ; 28fdb .asm_2900b ld hl, VBGMap0 - ld bc, $0800 - ld a, $7f + ld bc, sScratch - VBGMap0 + ld a, " " call ByteFill ld hl, TradeGameBoyLZ ld de, VTiles2 tile $31 @@ -29689,8 +29692,8 @@ Function29229: ; 29229 call DisableLCD callab Function8cf53 ld hl, VBGMap0 - ld bc, $0800 - ld a, $7f + ld bc, sScratch - VBGMap0 + ld a, " " call ByteFill xor a ld [hSCX], a @@ -29814,11 +29817,11 @@ Function292f6: ; 292f6 call WhiteBGMap call WaitTop ld a, $9c - ld [$ffd7], a + ld [hBGMapAddress + 1], a call ClearTileMap hlcoord 0, 0 ld bc, SCREEN_WIDTH - ld a, $7a + ld a, "─" call ByteFill hlcoord 0, 1 ld de, wc736 @@ -29827,7 +29830,7 @@ Function292f6: ; 292f6 ld de, 0 .asm_2931e ld a, [hli] - cp $50 + cp "@" jr z, .asm_29326 dec de jr .asm_2931e @@ -29844,7 +29847,7 @@ Function292f6: ; 292f6 call WaitBGMap call WaitTop ld a, $98 - ld [$ffd7], a + ld [hBGMapAddress + 1], a call ClearTileMap ret ; 29348 @@ -29955,7 +29958,7 @@ Function293de: ; 293de Function293ea: ; 293ea call WaitTop ld a, $9c - ld [$ffd7], a + ld [hBGMapAddress + 1], a call WaitBGMap ld a, $7 ld [hWX], a @@ -29964,7 +29967,7 @@ Function293ea: ; 293ea call DelayFrame call WaitTop ld a, $98 - ld [$ffd7], a + ld [hBGMapAddress + 1], a call ClearTileMap call Function2910f ret @@ -29980,14 +29983,14 @@ Function2940c: ; 2940c .asm_29417 ld a, $9c - ld [$ffd7], a + ld [hBGMapAddress + 1], a call WaitBGMap ld a, $7 ld [hWX], a ld a, $90 ld [hWY], a ld a, $98 - ld [$ffd7], a + ld [hBGMapAddress + 1], a call Function29114 ret ; 2942e @@ -30174,7 +30177,7 @@ Function29573: ; 29573 call WaitTop call Function297cf ld a, $9c - ld [$ffd7], a + ld [hBGMapAddress + 1], a hlcoord 3, 0 ld b, $6 ld c, $d @@ -30196,7 +30199,7 @@ Function295a1: ; 295a1 call WaitTop call Function297cf ld a, $9c - ld [$ffd7], a + ld [hBGMapAddress + 1], a hlcoord 3, 0 ld b, $6 ld c, $d @@ -30218,7 +30221,7 @@ Function295d8: ; 295d8 call WaitBGMap call WaitTop ld a, $98 - ld [$ffd7], a + ld [hBGMapAddress + 1], a ret ; 295e3 @@ -30490,8 +30493,8 @@ UnknownText_0x29757: ; 0x29757 Function2975c: ; 2975c call WaitTop hlcoord 0, 10 - ld bc, $00a0 - ld a, $7f + ld bc, 8 * SCREEN_WIDTH + ld a, " " call ByteFill call WaitBGMap ld hl, UnknownText_0x2977a @@ -30566,7 +30569,7 @@ Function297c9: ; 297c9 Function297cf: ; 297cf hlcoord 0, 0 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - ld a, $7f + ld a, " " call ByteFill ret ; 297db @@ -33335,10 +33338,10 @@ Unknown_2c74a: ; 2c74a Function2c76f: ; 2c76f (b:476f) ld a, $1 - ld [$ffaa], a + ld [hInMenu], a call Function2c8d3 ld a, $0 - ld [$ffaa], a + ld [hInMenu], a ret nc call Function1bee call WaitBGMap @@ -34878,7 +34881,7 @@ Function41a7f: ; 41a7f ld [hl], $3b inc hl ld bc, $0013 - ld a, $7f + ld a, " " call ByteFill callba Function4424d call EnableLCD @@ -36140,23 +36143,23 @@ Function4456e: ; 4456e call Function44648 cp $a jr nc, .asm_445be - ld bc, $002f + ld bc, PartyMon1StatsEnd - PartyMon1Item ld hl, s0_a834 + 1 call AddNTimes ld d, h ld e, l ld a, [CurPartyMon] - ld bc, $002f + ld bc, PartyMon1StatsEnd - PartyMon1Item ld hl, s0_a600 call AddNTimes push hl ld a, BANK(s0_a834) call GetSRAMBank - ld bc, $002f + ld bc, PartyMon1StatsEnd - PartyMon1Item call CopyBytes pop hl xor a - ld bc, $002f + ld bc, PartyMon1StatsEnd - PartyMon1Item call ByteFill ld a, PartyMon1Item - PartyMon1 call GetPartyParamLocation @@ -36178,7 +36181,7 @@ Function445c0: ; 445c0 (11:45c0) ld a, b push bc ld hl, s0_a834 + 1 - ld bc, $2f + ld bc, PartyMon1StatsEnd - PartyMon1Item call AddNTimes push hl add hl, bc @@ -36189,7 +36192,7 @@ Function445c0: ; 445c0 (11:45c0) cp $9 jr z, .asm_445e4 push bc - ld bc, $2f + ld bc, PartyMon1StatsEnd - PartyMon1Item call CopyBytes pop bc inc b @@ -36198,7 +36201,7 @@ Function445c0: ; 445c0 (11:45c0) ld h, d ld l, e xor a - ld bc, $2f + ld bc, PartyMon1StatsEnd - PartyMon1Item call ByteFill ld hl, s0_a834 dec [hl] @@ -36208,7 +36211,7 @@ Function445c0: ; 445c0 (11:45c0) Function445f4: ; 445f4 ld a, b ld hl, s0_a834 + 1 - ld bc, $2f + ld bc, PartyMon1StatsEnd - PartyMon1Item call AddNTimes ld d, h ld e, l @@ -36220,22 +36223,22 @@ Function44607: ; 44607 call GetSRAMBank push bc ld a, b - ld bc, $2f + ld bc, PartyMon1StatsEnd - PartyMon1Item ld hl, s0_a834 + 1 call AddNTimes push hl ld a, [CurPartyMon] - ld bc, $2f + ld bc, PartyMon1StatsEnd - PartyMon1Item ld hl, s0_a600 call AddNTimes ld d, h ld e, l pop hl push hl - ld bc, $2f + ld bc, PartyMon1StatsEnd - PartyMon1Item call CopyBytes pop hl - ld de, $2e + ld de, PartyMon1StatsEnd - PartyMon1Moves add hl, de ld d, [hl] ld a, [CurPartyMon] @@ -36274,7 +36277,7 @@ Function44654:: ; 44654 call GetSRAMBank ld a, [CurPartyMon] ld hl, s0_a600 - ld bc, $002f + ld bc, PartyMon1StatsEnd - PartyMon1Item call AddNTimes ld d, h ld e, l @@ -36288,7 +36291,7 @@ Function44654:: ; 44654 ld c, a ld a, b call GetFarByte - cp $50 + cp "@" jr z, .asm_446ab cp c ld a, $0 @@ -37556,10 +37559,10 @@ Function4876f: ; 4876f (12:476f) call PlaceString ld hl, MenuDataHeader_0x48509 call LoadMenuDataHeader - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a hlcoord 10, 5 ld b, $1 ld c, $8 @@ -37605,7 +37608,7 @@ Function4876f: ; 4876f (12:476f) hlcoord 11, 6 call Function487ec pop af - ld [$ffaa], a + ld [hInMenu], a jp Function4840c Function487ec: ; 487ec (12:47ec) @@ -37643,7 +37646,7 @@ Function4880e: ; 4880e (12:480e) ld a, [hJoyPressed] ; $ff00+$a7 and B_BUTTON jp nz, Function488b4 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .asm_48843 @@ -37759,10 +37762,10 @@ Function488d3: ; 488d3 (12:48d3) jp c, Function4840c ld hl, MenuDataHeader_0x4850e call LoadMenuDataHeader - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a hlcoord 10, 9 ld b, $1 ld c, $8 @@ -37797,7 +37800,7 @@ asm_48922: ; 48922 (12:4922) bit 1, a jp nz, Function4896e ld a, [DefaultFlypoint] - and $cf + and %11001111 res 7, a ld [DefaultFlypoint], a pop bc @@ -37830,7 +37833,7 @@ Function4895a: ; 4895a jr asm_48972 .asm_48965 - ld a, [$ffa9] + ld a, [hJoyLast] and a jr z, asm_48972 @@ -37907,7 +37910,7 @@ asm_48972: ; 48972 (12:4972) ld bc, $108 call ClearBox pop af - ld [$ffaa], a + ld [hInMenu], a jp Function4840c Function489ea: ; 489ea (12:49ea) @@ -38084,18 +38087,18 @@ Function48ab5: ; 48ab5 (12:4ab5) dec a jr .asm_48b25 .asm_48b2c - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $40 + and D_UP jr nz, .asm_48b8d ld a, [hl] - and $80 + and D_DOWN jr nz, .asm_48b55 ld a, [hl] - and $20 + and D_LEFT jp nz, Function48bd7 ld a, [hl] - and $10 + and D_RIGHT jr nz, .asm_48b9d hlcoord 11, 10 call Function489ea @@ -38624,11 +38627,11 @@ Function48e14: ; 48e14 (12:4e14) call Function48000 call Functione5f hlcoord 0, 0 - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH ld a, $0 call ByteFill hlcoord 0, 0, AttrMap - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH xor a call ByteFill ret @@ -38847,7 +38850,7 @@ Function49336: ; 49336 Function49346: ; 49346 (12:5346) hlcoord 0, 0, AttrMap - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH xor a call ByteFill ret @@ -38905,7 +38908,7 @@ Function49384: ; 49384 (12:5384) ld a, $3 call Function49336 hlcoord 0, 12, AttrMap - ld bc, $78 + ld bc, 6 * SCREEN_WIDTH ld a, $7 call ByteFill ret @@ -38977,7 +38980,7 @@ Function4942f: ; 4942f xor a call ByteFill hlcoord 0, 14, AttrMap - ld bc, $0050 + ld bc, 4 * SCREEN_WIDTH ld a, $7 call ByteFill ld a, [DefaultFlypoint] @@ -39361,7 +39364,7 @@ endr ld [hl], a hlcoord 2, 17, AttrMap ld a, $3 - ld bc, $0006 + ld bc, 6 call ByteFill ret ; 49811 @@ -40745,17 +40748,17 @@ Function4a3aa: ; 4a3aa ; 4a449 (12:6449) Function4a449: ; 4a449 - ld bc, $003c + ld bc, 3 * SCREEN_WIDTH ld a, $0 hlcoord 0, 0 call ByteFill - ld bc, $0028 + ld bc, 2 * SCREEN_WIDTH ld a, $1 call ByteFill - ld bc, $0028 + ld bc, 2 * SCREEN_WIDTH ld a, $0 call ByteFill - ld bc, $0028 + ld bc, 2 * SCREEN_WIDTH ld a, $1 call ByteFill ld bc, SCREEN_WIDTH @@ -40765,7 +40768,7 @@ Function4a449: ; 4a449 ld a, $3 call ByteFill ld bc, SCREEN_WIDTH - ld a, $7f + ld a, " " call ByteFill ret ; 4a485 @@ -41489,9 +41492,9 @@ Function4a927: ; 4a927 Function4a94e: ; 4a94e call FadeToMenu - ld a, $ff + ld a, -1 ld hl, DefaultFlypoint - ld bc, $0003 + ld bc, 3 call ByteFill xor a ld [wd018], a @@ -41525,8 +41528,8 @@ Function4a94e: ; 4a94e .asm_4a990 call Function2b3c ld hl, DefaultFlypoint - ld a, $ff - ld bc, $0003 + ld a, -1 + ld bc, 3 call ByteFill scf jr .asm_4a9af @@ -41743,15 +41746,15 @@ Function4aad3: ; 4aad3 ld c, a xor a - ld [$ffb0], a + ld [hConnectedMapWidth], a .loop push bc push hl ld e, 0 callba Function8e83f - ld a, [$ffb0] + ld a, [hConnectedMapWidth] inc a - ld [$ffb0], a + ld [hConnectedMapWidth], a pop hl pop bc dec c @@ -42455,8 +42458,8 @@ Function4cf1f: ; 4cf1f Function4cf34: ; 4cf34 call GetSRAMBank - ld hl, $a000 - ld bc, $2000 + ld hl, sScratch + ld bc, StackBottom - sScratch xor a call ByteFill call CloseSRAM @@ -42503,7 +42506,7 @@ Function4cf45: ; 4cf45 (13:4f45) Function4cf80: ; 4cf80 (13:4f80) ld [hSPBuffer], sp ; $ffd9 ld sp, hl - ld a, [$ffd7] + ld a, [hBGMapAddress + 1] ld h, a ld l, $0 ld a, $12 @@ -42723,7 +42726,7 @@ Function4d188: ; 4d188 Function4d1cb: ; 4d1cb ld [hSPBuffer], sp ld sp, hl - ld a, [$ffd7] + ld a, [hBGMapAddress + 1] ld h, a ld l, $0 ld a, $12 @@ -43013,7 +43016,7 @@ Function4d41e: ; 4d41e call Function4d50f push de ld hl, StringBuffer2 - ld bc, $0005 + ld bc, 5 xor a call ByteFill ld a, $4 @@ -43024,12 +43027,12 @@ Function4d41e: ; 4d41e call Function4d468 .asm_4d43a call Functiona57 - ld a, [$ffa9] + ld a, [hJoyLast] ld b, a - and $1 + and A_BUTTON jr nz, .asm_4d453 ld a, b - and $f0 + and D_PAD jr z, .asm_4d43a call Function4d490 ld c, $3 @@ -43071,8 +43074,8 @@ Function4d468: ; 4d468 dec c jr nz, .asm_4d470 hlcoord 14, 16 - ld bc, $0005 - ld a, $7f + ld bc, 5 + ld a, " " call ByteFill hlcoord 14, 16 ld a, [StringBuffer2 + 5] @@ -43629,7 +43632,7 @@ endr db "@" ; 0x4d9d3 -Function4d9d3: ; 4d9d3 +Special_PrintTodaysLuckyNumber: ; 4d9d3 ld hl, StringBuffer3 ld de, wLuckyIDNumber lb bc, PRINTNUM_LEADINGZEROS | 2, 5 @@ -45520,7 +45523,7 @@ Function4e779: ; 4e779 call Functiona57 ld a, [hJoyDown] pop bc - and $2 + and B_BUTTON jr nz, .asm_4e78c .asm_4e787 dec c @@ -45654,8 +45657,8 @@ Function4e881: ; 4e881 call Functione51 call Functione58 ld hl, VBGMap0 - ld bc, $400 - ld a, $7f + ld bc, VBGMap1 - VBGMap0 + ld a, " " call ByteFill hlcoord 0, 0, AttrMap ld bc, SCREEN_WIDTH * SCREEN_HEIGHT @@ -45687,8 +45690,8 @@ Function4e8c2: ; 4e8c2 call Functione51 call Functione58 ld hl, VBGMap0 - ld bc, $400 - ld a, $7f + ld bc, VBGMap1 - VBGMap0 + ld a, " " call ByteFill hlcoord 0, 0, AttrMap ld bc, SCREEN_WIDTH * SCREEN_HEIGHT @@ -45697,9 +45700,9 @@ Function4e8c2: ; 4e8c2 ld hl, wd000 ld c, $40 .asm_4e8ee - ld a, $ff + ld a, -1 ld [hli], a - ld a, $7f + ld a, " " ld [hli], a dec c jr nz, .asm_4e8ee @@ -45718,8 +45721,8 @@ Function4e906: ; 4e906 ld a, $6 ld [rSVBK], a ld hl, w6_d000 - ld bc, $400 - ld a, $7f + ld bc, w6_d400 - w6_d000 + ld a, " " call ByteFill ld hl, VBGMap0 ld de, w6_d000 @@ -45902,7 +45905,7 @@ endr Function4e9e5: ; 4e9e5 ld hl, LYOverrides ld a, $90 - ld bc, $0090 + ld bc, SCREEN_HEIGHT_PX call ByteFill ret ; 4e9f1 @@ -46674,7 +46677,7 @@ Function503e0: ; 503e0 ret z ld c, a xor a - ld [$ffb0], a + ld [hConnectedMapWidth], a .asm_503ea push bc push hl @@ -46682,9 +46685,9 @@ Function503e0: ; 503e0 ld a, BANK(Function8e83f) ld e, $0 rst FarCall - ld a, [$ffb0] + ld a, [hConnectedMapWidth] inc a - ld [$ffb0], a + ld [hConnectedMapWidth], a pop hl pop bc dec c @@ -46764,7 +46767,7 @@ PartyMenuSelect: ; 0x50457 cp b jr z, .exitmenu ; CANCEL ld [wd0d8], a - ld a, [$ffa9] + ld a, [hJoyLast] ld b, a bit 1, b jr nz, .exitmenu ; B button? @@ -48401,10 +48404,10 @@ Function50f12: Function50f34: ; 50f34 (14:4f34) push af hlcoord 0, 1 - ld bc, $28 + ld bc, 2 * SCREEN_WIDTH call AddNTimes - ld bc, $28 - ld a, $7f + ld bc, 2 * SCREEN_WIDTH + ld a, " " call ByteFill pop af ld hl, Sprites @@ -49239,7 +49242,7 @@ GetMovementInput: ; 80017 ret z ld c, a - and $f0 + and D_PAD ret nz ld a, c @@ -49551,14 +49554,14 @@ TrySurfStep: ; 801c0 call CheckWaterPermissions ld [wd040], a - jr c, .asm_801f1 + jr c, .bump call IsNPCInFront ld [wd03f], a and a - jr z, .asm_801f1 + jr z, .bump cp 2 - jr z, .asm_801f1 + jr z, .bump ld a, [wd040] and a @@ -49578,7 +49581,7 @@ TrySurfStep: ; 801c0 scf ret -.asm_801f1 +.bump xor a ret ; 801f3 @@ -50315,10 +50318,10 @@ ColorTest: ; 818ac ret z .asm_818b5 - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a call DisableLCD call Function81948 call Function8197c @@ -50342,7 +50345,7 @@ ColorTest: ; 818ac .asm_818f0 pop af - ld [$ffaa], a + ld [hInMenu], a ret ; 818f4 @@ -50411,13 +50414,13 @@ Function81948: ; 81948 ld a, $1 ld [rVBK], a ld hl, VTiles0 - ld bc, $2000 + ld bc, sScratch - VTiles0 xor a call ByteFill ld a, $0 ld [rVBK], a ld hl, VTiles0 - ld bc, $2000 + ld bc, sScratch - VTiles0 xor a call ByteFill hlcoord 0, 0, AttrMap @@ -50593,12 +50596,12 @@ Function81a74: ; 81a74 ld a, [wcf63] cp $4 jr nc, .asm_81a8b - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $4 + and SELECT jr nz, .asm_81a9a ld a, [hl] - and $8 + and START jr nz, .asm_81aab .asm_81a8b @@ -50671,17 +50674,17 @@ Function81adb: ; 81adb ld a, $6f call ByteFill hlcoord 1, 3 - ld bc, $0712 + lb bc, 7, 18 ld a, $6c - call Function81efc + call Bank20_FillBoxWithByte hlcoord 11, 0 - ld bc, $0203 + lb bc, 2, 3 ld a, $6d - call Function81efc + call Bank20_FillBoxWithByte hlcoord 16, 0 - ld bc, $0203 + lb bc, 2, 3 ld a, $6e - call Function81efc + call Bank20_FillBoxWithByte call Function81bc0 call Function81bf4 ld a, [wcf66] @@ -50904,11 +50907,11 @@ Function81cbc: ; 81cbc ; 81cc2 Function81cc2: ; 81cc2 - ld a, [$ffa9] - and $2 + ld a, [hJoyLast] + and B_BUTTON jr nz, .asm_81cdf - ld a, [$ffa9] - and $1 + ld a, [hJoyLast] + and A_BUTTON jr nz, .asm_81ce5 ld a, [wcf64] and $3 @@ -50953,15 +50956,15 @@ Jumptable_81d02: ; 81d02 ; 81d0a Function81d0a: ; 81d0a - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $80 + and D_DOWN jr nz, Function81d89 ld a, [hl] - and $20 + and D_LEFT jr nz, .asm_81d1d ld a, [hl] - and $10 + and D_RIGHT jr nz, .asm_81d28 ret @@ -50980,40 +50983,40 @@ Function81d0a: ; 81d0a ret Function81d34: ; 81d34 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $80 + and D_DOWN jr nz, Function81d89 ld a, [hl] - and $40 + and D_UP jr nz, Function81d84 ld hl, wc608 + 10 jr Function81d63 Function81d46: ; 81d46 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $80 + and D_DOWN jr nz, Function81d89 ld a, [hl] - and $40 + and D_UP jr nz, Function81d84 ld hl, wc608 + 11 jr Function81d63 Function81d58: ; 81d58 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $40 + and D_UP jr nz, Function81d84 ld hl, wc608 + 12 Function81d63: ; 81d63 - ld a, [$ffa9] - and $10 + ld a, [hJoyLast] + and D_RIGHT jr nz, Function81d70 - ld a, [$ffa9] - and $20 + ld a, [hJoyLast] + and D_LEFT jr nz, Function81d77 ret @@ -51066,7 +51069,7 @@ Function81d8e: ; 81d8e Function81daf: ; 81daf ld hl, hJoyPressed ld a, [hl] - and $2 + and B_BUTTON jr nz, .asm_81dbb call Function81dc7 ret @@ -51084,12 +51087,12 @@ Function81dc1: ; 81dc1 ; 81dc7 Function81dc7: ; 81dc7 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $40 + and D_UP jr nz, .asm_81dd5 ld a, [hl] - and $80 + and D_DOWN jr nz, .asm_81de2 ret @@ -51284,20 +51287,21 @@ endr ret ; 81efc -Function81efc: ; 81efc -.asm_81efc +Bank20_FillBoxWithByte: ; 81efc +; For some reason, we have another copy of FillBoxWithByte here +.row push bc push hl -.asm_81efe +.col ld [hli], a dec c - jr nz, .asm_81efe + jr nz, .col pop hl ld bc, SCREEN_WIDTH add hl, bc pop bc dec b - jr nz, .asm_81efc + jr nz, .row ret ; 81f0c @@ -51382,7 +51386,7 @@ Function81f5e: ; 81f5e jr z, .asm_81f8d dec a hlcoord 1, 11 - ld bc, $0028 + ld bc, 2 * SCREEN_WIDTH call AddNTimes ld [hl], $ed @@ -51466,7 +51470,7 @@ TilesetColorTest: lb bc, BANK(DebugColorTestGFX), 1 call Request2bpp ld a, $9c - ld [$ffd7], a + ld [hBGMapAddress + 1], a hlcoord 0, 0 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT ld a, $6f @@ -51532,7 +51536,7 @@ Function821f4: ; 821f4 Function82203: ; 82203 ld a, $6a ld [hli], a - ld bc, $000f + ld bc, $10 - 1 ld a, $6b call ByteFill ret @@ -51563,12 +51567,12 @@ endr Function82236: ; 82236 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $4 + and SELECT jr nz, .loop7 ld a, [hl] - and $2 + and B_BUTTON jr nz, .asm_82299 call Function822f0 ret @@ -51660,7 +51664,7 @@ Function822f0: ; 822f0 and 3 ld e, a ld d, 0 - ld hl, Jumptable_82301 + ld hl, .jumptable rept 2 add hl, de endr @@ -51670,7 +51674,7 @@ endr jp [hl] ; 82301 -Jumptable_82301: ; 82301 +.jumptable: ; 82301 dw Function82309 dw Function82339 dw Function8234b @@ -51678,15 +51682,15 @@ Jumptable_82301: ; 82301 ; 82309 Function82309: ; 82309 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $80 + and D_DOWN jr nz, Function8238c ld a, [hl] - and $20 + and D_LEFT jr nz, .asm_8231c ld a, [hl] - and $10 + and D_RIGHT jr nz, .asm_82322 ret @@ -51714,40 +51718,40 @@ endr ret Function82339: ; 82338 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $80 + and D_DOWN jr nz, Function8238c ld a, [hl] - and $40 + and D_UP jr nz, Function82387 ld hl, wc608 + 10 jr Function82368 Function8234b: ; 8234b - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $80 + and D_DOWN jr nz, Function8238c ld a, [hl] - and $40 + and D_UP jr nz, Function82387 ld hl, wc608 + 11 jr Function82368 Function8235d: ; 8235d - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $40 + and D_UP jr nz, Function82387 ld hl, wc608 + 12 Function82368: ; 82368 - ld a, [$ffa9] - and $10 + ld a, [hJoyLast] + and D_RIGHT jr nz, .asm_82375 - ld a, [$ffa9] - and $20 + ld a, [hJoyLast] + and D_LEFT jr nz, .asm_8237c ret @@ -52836,7 +52840,7 @@ Function84688: ; 84688 Function846f6: ; 846f6 ld a, [hJoyDown] - and $2 + and B_BUTTON jr nz, .asm_846fe and a ret @@ -52890,7 +52894,7 @@ Function84742: ; 84742 ld [hJoyReleased], a ld [hJoyPressed], a ld [hJoyDown], a - ld [$ffa9], a + ld [hJoyLast], a ret ; 8474c @@ -53025,13 +53029,13 @@ Function84817: ; 84817 (21:4817) xor a ld [wd002], a hlcoord 0, 0 - ld bc, $168 - ld a, $7f + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH + ld a, " " call ByteFill call Function84a0e hlcoord 0, 0 - ld bc, $b4 - ld a, $7f + ld bc, 9 * SCREEN_WIDTH + ld a, " " call ByteFill call Function849e9 call Function849d7 @@ -53060,8 +53064,8 @@ String_84865: Function8486f: ; 8486f (21:486f) hlcoord 0, 0 - ld bc, $168 - ld a, $7f + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH + ld a, " " call ByteFill call Function84a0e call Function849e9 @@ -53077,8 +53081,8 @@ Function8486f: ; 8486f (21:486f) Function84893: ; 84893 (21:4893) hlcoord 0, 0 - ld bc, $168 - ld a, $7f + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH + ld a, " " call ByteFill call Function84a0e call Function849e9 @@ -53094,8 +53098,8 @@ Function84893: ; 84893 (21:4893) Function848b7: ; 848b7 (21:48b7) hlcoord 0, 0 - ld bc, $168 - ld a, $7f + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH + ld a, " " call ByteFill call Function84a0e hlcoord 1, 15 @@ -53132,7 +53136,7 @@ Function848ed: ; 848ed (21:48ed) push de push hl ld bc, $10 - ld a, $7f + ld a, " " call ByteFill pop hl push hl @@ -53153,7 +53157,7 @@ Function848ed: ; 848ed (21:48ed) ld [hli], a push hl ld bc, $e - ld a, $7f + ld a, " " call ByteFill pop hl push hl @@ -53474,7 +53478,7 @@ GetHallOfFameParty: ; 8653f ld c, 0 .next ld a, [hli] - cp $ff + cp -1 jr z, .done cp EGG jr nz, .mon @@ -53567,7 +53571,7 @@ endr predef GetUnownLetter hlcoord 0, 0 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - ld a, $7f + ld a, " " call ByteFill ld de, VTiles2 tile $31 predef GetBackpic @@ -53591,7 +53595,7 @@ endr ld [wc2c6], a hlcoord 0, 0 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - ld a, $7f + ld a, " " call ByteFill hlcoord 6, 5 call Function378b @@ -53649,15 +53653,15 @@ Function86665: ; 86665 jr c, .asm_86690 .asm_8666e call Functiona57 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $2 + and B_BUTTON jr nz, .asm_8668e ld a, [hl] - and $1 + and A_BUTTON jr nz, .asm_86688 ld a, [hl] - and $8 + and START jr nz, .asm_86690 call DelayFrame jr .asm_8666e @@ -53787,19 +53791,19 @@ Function86748: ; 86748 ld a, [hli] ld [TempMonLevel], a ld de, StringBuffer2 - ld bc, $000a + ld bc, 10 call CopyBytes - ld a, $50 + ld a, "@" ld [StringBuffer2 + 10], a hlcoord 0, 0 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - ld a, $7f + ld a, " " call ByteFill hlcoord 0, 0 - ld bc, $0312 + lb bc, 3, SCREEN_WIDTH - 2 call TextBox hlcoord 0, 12 - ld bc, $0412 + lb bc, 4, SCREEN_WIDTH - 2 call TextBox ld a, [TempMonSpecies] ld [CurPartySpecies], a @@ -53866,13 +53870,13 @@ Function86810: ; 86810 call Request2bpp hlcoord 0, 0 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - ld a, $7f + ld a, " " call ByteFill callba GetPlayerBackpic ld a, $31 ld [$ffad], a hlcoord 6, 6 - ld bc, $0606 + lb bc, 6, 6 predef FillBox ld a, $d0 ld [hSCY], a @@ -53890,7 +53894,7 @@ Function86810: ; 86810 ld [wc2c6], a hlcoord 0, 0 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - ld a, $7f + ld a, " " call ByteFill callba Function88840 xor a @@ -53950,417 +53954,16 @@ Function86810: ; 86810 SECTION "bank22", ROMX, BANK[$22] -Function88000: ; 88000 - ld hl, UnknownText_0x88007 - call PrintText - ret -; 88007 - -UnknownText_0x88007: ; 0x88007 - ; Which APRICORN should I use? - text_jump UnknownText_0x1bc06b - db "@" -; 0x8800c - -Function8800c: ; 8800c - ld hl, UnknownText_0x88013 - call PrintText - ret -; 88013 - -UnknownText_0x88013: ; 0x88013 - ; How many should I make? - text_jump UnknownText_0x1bc089 - db "@" -; 0x88018 - -Function88018: ; 88018 - call Function1d6e - ld c, $1 - xor a - ld [wd0e4], a - ld [wdca4], a -.asm_88024 - push bc - call Function88000 - pop bc - ld a, c - ld [MenuSelection], a - call Function88055 - ld a, c - ld [ScriptVar], a - and a - jr z, .asm_88051 - ld [CurItem], a - ld a, [wcfa9] - ld c, a - push bc - call Function8800c - call Function880c2 - pop bc - jr nc, .asm_88024 - ld a, [wd10c] - ld [wdca4], a - call Function88161 - -.asm_88051 - call Function1d7d - ret -; 88055 - -Function88055: ; 88055 - callba Function24c64 - jr c, .asm_88083 - ld hl, MenuDataHeader_0x88086 - call CopyMenuDataHeader - ld a, [MenuSelection] - ld [wcf88], a - xor a - ld [hBGMapMode], a - call Function352f - call UpdateSprites - call Function350c - ld a, [wcf73] - cp $2 - jr z, .asm_88083 - ld a, [MenuSelection] - cp $ff - jr nz, .asm_88084 - -.asm_88083 - xor a - -.asm_88084 - ld c, a - ret -; 88086 - -MenuDataHeader_0x88086: ; 0x88086 - db $40 ; flags - db 01, 01 ; start coords - db 10, 13 ; end coords - dw MenuData2_0x8808f - db 1 ; default option -; 0x8808e - - db 0 - -MenuData2_0x8808f: ; 0x8808f - db $10 ; flags - db 4, 7 - db 1 - dbw 0, wd1ea - dbw BANK(Function8809f), Function8809f - dbw BANK(Function880ab), Function880ab - dbw BANK(NULL), NULL - -Function8809f: ; 8809f - ld a, [MenuSelection] - and a - ret z - callba Function24ab4 - ret -; 880ab - -Function880ab: ; 880ab - ld a, [MenuSelection] - ld [CurItem], a - call Function88139 - ret z - ld a, [wd10c] - ld [wcf75], a - callba Function24ac3 - ret -; 880c2 - -Function880c2: ; 880c2 - ld a, [CurItem] - ld [MenuSelection], a - call Function88139 - jr z, .asm_88109 - ld a, [wd10c] - ld [wd10d], a - ld a, $1 - ld [wd10c], a - ld hl, MenuDataHeader_0x8810d - call LoadMenuDataHeader -.asm_880de - xor a - ld [hBGMapMode], a - call Function1cbb - call UpdateSprites - call Function88116 - call Function88126 - call Function321c - callba Function27a28 - jr nc, .asm_880de - push bc - call PlayClickSFX - pop bc - ld a, b - cp $ff - jr z, .asm_88109 - ld a, [wd10c] - ld [wd10c], a - scf - -.asm_88109 - call WriteBackup - ret -; 8810d - -MenuDataHeader_0x8810d: ; 0x8810d - db $40 ; flags - db 09, 06 ; start coords - db 12, 19 ; end coords - - db 0, 0, -1, 0 ; XXX - -Function88116: ; 88116 - call Function1cfd - ld de, $0015 - add hl, de - ld d, h - ld e, l - callba Function24ab4 - ret -; 88126 - -Function88126: ; 88126 - call Function1cfd - ld de, $0032 - add hl, de - ld [hl], $f1 - inc hl - ld de, wd10c - lb bc, PRINTNUM_LEADINGZEROS | 1, 2 - jp PrintNum -; 88139 - -Function88139: ; 88139 - push bc - ld hl, NumItems - ld a, [CurItem] - ld c, a - ld b, $0 -.asm_88143 - inc hl - ld a, [hli] - cp $ff - jr z, .asm_88153 - cp c - jr nz, .asm_88143 - ld a, [hl] - add b - ld b, a - jr nc, .asm_88143 - ld b, $ff - -.asm_88153 - ld a, b - sub $63 - jr c, .asm_8815a - ld b, $63 - -.asm_8815a - ld a, b - ld [wd10c], a - and a - pop bc - ret -; 88161 - -Function88161: ; 88161 - push de - push bc - ld hl, NumItems - ld a, [CurItem] - ld c, a - ld e, $0 - xor a - ld [wd107], a - ld a, $ff - ld [DefaultFlypoint], a -.asm_88175 - ld a, [wd107] - inc a - ld [wd107], a - inc hl - ld a, [hli] - cp $ff - jr z, .asm_88198 - cp c - jr nz, .asm_88175 - ld d, $0 - push hl - ld hl, DefaultFlypoint - add hl, de - inc e - ld a, [wd107] - dec a - ld [hli], a - ld a, $ff - ld [hl], a - pop hl - jr .asm_88175 - -.asm_88198 - ld a, e - and a - jr z, .asm_881fa - dec a - jr z, .asm_881d0 - ld hl, DefaultFlypoint -.asm_881a2 - ld a, [hl] - ld c, a - push hl -.asm_881a5 - inc hl - ld a, [hl] - cp $ff - jr z, .asm_881c9 - ld b, a - ld a, c - call Function88201 - ld e, a - ld a, b - call Function88201 - sub e - jr z, .asm_881bc - jr c, .asm_881c0 - jr .asm_881a5 - -.asm_881bc - ld a, c - sub b - jr nc, .asm_881a5 - -.asm_881c0 - ld a, c - ld c, b - ld [hl], a - ld a, c - pop hl - ld [hl], a - push hl - jr .asm_881a5 - -.asm_881c9 - pop hl - inc hl - ld a, [hl] - cp $ff - jr nz, .asm_881a2 - -.asm_881d0 - ld hl, DefaultFlypoint -.asm_881d3 - ld a, [hl] - cp $ff - jr z, .asm_881fa - push hl - ld [wd107], a - call Function88211 - pop hl - ld a, [wd10c] - and a - jr z, .asm_881fa - push hl - ld a, [hli] - ld c, a -.asm_881e9 - ld a, [hli] - cp $ff - jr z, .asm_881f6 - cp c - jr c, .asm_881e9 - dec a - dec hl - ld [hli], a - jr .asm_881e9 - -.asm_881f6 - pop hl - inc hl - jr .asm_881d3 - -.asm_881fa - ld a, [wd10c] - and a - pop bc - pop de - ret -; 88201 - -Function88201: ; 88201 - push hl - push bc - ld hl, NumItems - inc hl - ld c, a - ld b, $0 -rept 2 - add hl, bc -endr - inc hl - ld a, [hl] - pop bc - pop hl - ret -; 88211 - -Function88211: ; 88211 - push bc - ld hl, NumItems - ld a, [wd107] - ld c, a - ld b, $0 - inc hl -rept 2 - add hl, bc -endr - ld a, [CurItem] - ld c, a - ld a, [hli] - cp $ff - jr z, .asm_88243 - cp c - jr nz, .asm_88243 - ld a, [wd10c] - ld c, a - ld a, [hl] - sub c - ld b, c - jr nc, .asm_88235 - add c - ld b, a - -.asm_88235 - push bc - ld hl, NumItems - ld a, b - ld [wd10c], a - call TossItem - pop bc - ld a, c - sub b - -.asm_88243 - ld [wd10c], a - pop bc - ret -; 88248 - +INCLUDE "event/kurt.asm" Function88248: ; 88248 - ld c, $c + ld c, CAL ld a, [PlayerGender] bit 0, a - jr z, .asm_88253 - ld c, $e + jr z, .okay + ld c, KAREN -.asm_88253 +.okay ld a, c ld [TrainerClass], a ret @@ -54416,6817 +54019,248 @@ ShowPlayerNamingChoices: ; 88297 ld hl, ChrisNameMenuHeader ld a, [PlayerGender] bit 0, a - jr z, .GotClass + jr z, .GotGender ld hl, KrisNameMenuHeader -.GotClass +.GotGender call LoadMenuDataHeader call InterpretMenu2 ld a, [wcfa9] - dec a - call Function1db8 - call WriteBackup - ret -; 882b5 - -ChrisNameMenuHeader: ; 882b5 - db $40 ; flags - db 00, 00 ; start coords - db 11, 10 ; end coords - dw MenuData2_0x882be - db 1 ; ???? - db 0 ; default option -; 882be - -MenuData2_0x882be: ; 882be - db $91 ; flags - db 5 ; items - db "NEW NAME@" -Unknown_882c9: ; 882c9 - db "CHRIS@" - db "MAT@" - db "ALLAN@" - db "JON@" - db 2 ; displacement - db " NAME @" ; title -; 882e5 - -KrisNameMenuHeader: ; 882e5 - db $40 ; flags - db 00, 00 ; start coords - db 11, 10 ; end coords - dw MenuData2_0x882ee - db 1 ; ???? - db 0 ; default option -; 882ee - -MenuData2_0x882ee: ; 882ee - db $91 ; flags - db 5 ; items - db "NEW NAME@" -Unknown_882f9: ; 882f9 - db "KRIS@" - db "AMANDA@" - db "JUANA@" - db "JODI@" - db 2 ; displacement - db " NAME @" ; title -; 88318 - -GetPlayerNameArray: ; 88318 This Function is never called - ld hl, PlayerName - ld de, Unknown_882c9 - ld a, [PlayerGender] - bit 0, a - jr z, .done - ld de, Unknown_882f9 - -.done - call InitName - ret -; 8832c - -GetPlayerIcon: ; 8832c -; Get the player icon corresponding to gender - -; Male - ld de, ChrisSpriteGFX - ld b, BANK(ChrisSpriteGFX) - - ld a, [PlayerGender] - bit 0, a - jr z, .done - -; Female - ld de, KrisSpriteGFX - ld b, BANK(KrisSpriteGFX) - -.done - ret -; 8833e - -Function8833e: ; 8833e - ld hl, ChrisCardPic - ld a, [PlayerGender] - bit 0, a - jr z, .GotClass - ld hl, KrisCardPic -.GotClass - ld de, VTiles2 tile $00 - ld bc, $230 - ld a, BANK(ChrisCardPic) ; BANK(KrisCardPic) - call FarCopyBytes - ld hl, CardGFX - ld de, VTiles2 tile $23 - ld bc, $60 - ld a, BANK(CardGFX) - call FarCopyBytes - ret -; 88365 (22:4365) - -ChrisCardPic: ; 88365 -INCBIN "gfx/misc/chris_card.5x7.2bpp" -; 88595 - -KrisCardPic: ; 88595 -INCBIN "gfx/misc/kris_card.5x7.2bpp" -; 887c5 - -CardGFX: ; 887c5 -INCBIN "gfx/misc/trainer_card.2bpp" -; 88825 - - -GetPlayerBackpic: ; 88825 - ld a, [PlayerGender] - bit 0, a - jr z, GetChrisBackpic - call GetKrisBackpic - ret - -GetChrisBackpic: ; 88830 - ld hl, ChrisBackpic - ld b, BANK(ChrisBackpic) - ld de, VTiles2 tile $31 - ld c, 7 * 7 - predef DecompressPredef - ret -; 88840 - -Function88840: ; 88840 - call WaitBGMap - xor a - ld [hBGMapMode], a - ld e, 0 - ld a, [PlayerGender] - bit 0, a - jr z, .GotClass - ld e, 1 - -.GotClass - ld a, e - ld [TrainerClass], a - ld de, ChrisPic - ld a, [PlayerGender] - bit 0, a - jr z, .GotPic - ld de, KrisPic - -.GotPic - ld hl, VTiles2 - ld b, BANK(ChrisPic) ; BANK(KrisPic) - ld c, 7 * 7 - call Get2bpp - call WaitBGMap - ld a, $1 - ld [hBGMapMode], a - ret -; 88874 - - - -DrawIntroPlayerPic: ; 88874 -; Draw the player pic at (6,4). - -; Get class - ld e, 0 - ld a, [PlayerGender] - bit 0, a - jr z, .GotClass - ld e, 1 -.GotClass - ld a, e - ld [TrainerClass], a - -; Load pic - ld de, ChrisPic - ld a, [PlayerGender] - bit 0, a - jr z, .GotPic - ld de, KrisPic -.GotPic - ld hl, VTiles2 - ld b, BANK(ChrisPic) ; BANK(KrisPic) - ld c, 7 * 7 ; dimensions - call Get2bpp - -; Draw - xor a - ld [$ffad], a - hlcoord 6, 4 - lb bc, 7, 7 - predef FillBox - ret -; 888a9 - - -ChrisPic: ; 888a9 -INCBIN "gfx/misc/chris.7x7.2bpp" -; 88bb9 - -KrisPic: ; 88bb9 -INCBIN "gfx/misc/kris.7x7.2bpp" -; 88ec9 - - -GetKrisBackpic: ; 88ec9 -; Kris's backpic is uncompressed. - ld de, KrisBackpic - ld hl, VTiles2 tile $31 - lb bc, BANK(KrisBackpic), 7 * 7 ; dimensions - call Get2bpp - ret -; 88ed6 - -KrisBackpic: ; 88ed6 -INCBIN "gfx/misc/kris_back.6x6.2bpp" -; 89116 - - -String_89116: - db "-----@" -; 8911c - -String_8911c: ; 8911c - db "でんわばんごうが ただしく" ; Phone number is not - next "はいって いません!@" ; entered correctly! -; 89135 - -String_89135: ; 89135 - db "データが かわって いますが" ; The data has changed. - next "かきかえないで やめますか?@" ; Quit anyway? -; 89153 - -String_89153: ; 89153 - db "メッセージは ありません@" ; No message -; 89160 - -Function89160: ; 89160 - push af - ld a, $4 - call GetSRAMBank - pop af - ret -; 89168 - - -Function89168: ; 89168 (22:5168) - ld hl, GameTimerPause - set 7, [hl] - ret - -Function8916e: ; 8916e (22:516e) - ld hl, GameTimerPause - res 7, [hl] - ret - -Function89174: ; 89174 (22:5174) - ld hl, GameTimerPause - bit 7, [hl] - ret - -Function8917a: ; 8917a (22:517a) - ld hl, DefaultFlypoint - ld bc, $32 - xor a - call ByteFill - ret - -Function89185: ; 89185 (22:5185) -; Compares c bytes starting at de and hl and incrementing together until a match is found. - push de - push hl -.loop - ld a, [de] - inc de - cp [hl] - jr nz, .done - inc hl - dec c - jr nz, .loop -.done - pop hl - pop de - ret - -Function89193: ; 89193 -; Copies c bytes from hl to de. - push de - push hl -.loop - ld a, [hli] - ld [de], a - inc de - dec c - jr nz, .loop - pop hl - pop de - ret -; 8919e - - -Function8919e: ; 8919e (22:519e) -; Searches for the c'th string starting at de. Returns the pointer in de. - ld a, c - and a - ret z -.loop - ld a, [de] - inc de - cp "@" - jr nz, .loop - dec c - jr nz, .loop - ret - -Function891ab: ; 891ab - call Function89240 - callba Function104061 - call Function8923c - ret -; 891b8 - -Function891b8: ; 891b8 - call Function8923c - hlcoord 0, 0 - ld a, $7f - ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - call ByteFill - call DelayFrame - ret -; 891ca - - -Function891ca: ; 891ca (22:51ca) - push bc - call Function891b8 - call WaitBGMap - pop bc - ret - -Function891d3: ; 891d3 (22:51d3) - push bc - call Function891ca - ld c, $10 - call DelayFrames - pop bc - ret - -Function891de: ; 891de - call Function8923c - call ClearPalettes - hlcoord 0, 0, AttrMap - ld a, $7 - ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - call ByteFill - hlcoord 0, 0 - ld a, $7f - ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - call ByteFill - call Function891ab - ret -; 891fe - -Function891fe: ; 891fe - push bc - call Function891de - ld c, $10 - call DelayFrames - pop bc - ret -; 89209 - -Function89209: ; 89209 - ld a, 1 - ld [wc2ce], a - ret -; 8920f - -Function8920f: ; 8920f - ld a, 0 - ld [wc2ce], a - ret -; 89215 - -Function89215: ; 89215 - push hl - push bc - ld bc, AttrMap - TileMap - add hl, bc - ld [hl], a - pop bc - pop hl - ret -; 8921f - - -Function8921f: ; 8921f (22:521f) - push de - ld de, SCREEN_WIDTH - add hl, de - inc hl - ld a, $7f -.loop - push bc - push hl -.asm_89229 - ld [hli], a - dec c - jr nz, .asm_89229 - pop hl - add hl, de - pop bc - dec b - jr nz, .loop - pop de - ret - -Function89235: ; 89235 (22:5235) - call Functiona36 - call PlayClickSFX - ret - -Function8923c: ; 8923c - xor a - ld [hBGMapMode], a - ret -; 89240 - -Function89240: ; 89240 - ld a, $1 - ld [hBGMapMode], a - ret -; 89245 - - -Function89245: ; 89245 (22:5245) - callba TryLoadSaveFile - ret c - callba Function150b9 - and a - ret - -Function89254: ; 89254 (22:5254) - ld bc, $d07 - jr Function89261 - -Function89259: ; 89259 - ld bc, $0e07 - jr Function89261 - -Function8925e: ; 8925e - ld bc, $0e0c - -Function89261: ; 89261 - push af - push bc - ld hl, MenuDataHeader_0x892a3 - call CopyMenuDataHeader - pop bc - ld hl, wcf82 - ld a, c - ld [hli], a - ld a, b - ld [hli], a - ld a, c - add $4 - ld [hli], a - ld a, b - add $5 - ld [hl], a - pop af - ld [wcf88], a - call Function1c00 - call Function8923c - call Function89209 - call InterpretMenu2 - push af - ld c, $a - call DelayFrames - call WriteBackup - call Function8920f - pop af - jr c, .done - ld a, [wcfa9] - cp $2 - jr z, .done - and a - ret - -.done - scf - ret -; 892a3 - -MenuDataHeader_0x892a3: ; 0x892a3 - db $40 ; flags - db 05, 10 ; start coords - db 09, 15 ; end coords - dw MenuData2_0x892ab - db 1 ; default option -; 0x892ab - -MenuData2_0x892ab: ; 0x892ab - db $c0 ; flags - db 2 ; items - db "はい@" - db "いいえ@" -; 0x892b4 - -Function892b4: ; 892b4 (22:52b4) - call Function8931b - -Function892b7: ; 892b7 - ld d, b - ld e, c - ld hl, 0 - add hl, bc - ld a, "@" - ld bc, 6 - call ByteFill - ld b, d - ld c, e - ld hl, 6 - add hl, bc - ld a, "@" - ld bc, 6 - call ByteFill - ld b, d - ld c, e - ld hl, 12 - add hl, bc - xor a - ld [hli], a - ld [hl], a - ld hl, 14 - add hl, bc - ld [hli], a - ld [hl], a - ld hl, 16 - add hl, bc - ld [hl], a - ld hl, 17 - add hl, bc - ld a, -1 - ld bc, 8 - call ByteFill - ld b, d - ld c, e - ld e, 6 - ld hl, 25 - add hl, bc -.loop - ld a, -1 - ld [hli], a - ld a, -1 - ld [hli], a - dec e - jr nz, .loop - ret -; 89305 - - -Function89305: ; 89305 (22:5305) - xor a - ld [MenuSelection], a - ld c, 40 -.loop - ld a, [MenuSelection] - inc a - ld [MenuSelection], a - push bc - call Function892b4 - pop bc - dec c - jr nz, .loop - ret - -Function8931b: ; 8931b - push hl - ld hl, $a03b - ld a, [MenuSelection] - dec a - ld bc, $0025 - call AddNTimes - ld b, h - ld c, l - pop hl - ret -; 8932d - -Function8932d: ; 8932d - ld hl, 0 - add hl, bc - -Function89331: ; 89331 -; Scans up to 5 characters starting at hl, looking for a nonspace character up to the next terminator. Sets carry if it does not find a nonspace character. Returns the location of the following character in hl. - push bc - ld c, 5 -.loop - ld a, [hli] - cp "@" - jr z, .terminator - cp " " - jr nz, .nonspace - dec c - jr nz, .loop - -.terminator - scf - jr .done - -.nonspace - and a - -.done - pop bc - ret -; 89346 - - -Function89346: ; 89346 (22:5346) - ld h, b - ld l, c - jr _incave - -Function8934a: ; 8934a - ld hl, 6 - add hl, bc -_incave: -; Scans up to 5 characters starting at hl, looking for a nonspace character up to the next terminator. Sets carry if it does not find a nonspace character. Returns the location of the following character in hl. - push bc - ld c, 5 -.loop - ld a, [hli] - cp "@" - jr z, .terminator - cp " " - jr nz, .nonspace - dec c - jr nz, .loop - -.terminator - scf - jr .done - -.nonspace - and a - -.done - pop bc - ret -; 89363 - -Function89363: ; 89363 -; Scans six byte pairs starting at bc to find $ff. Sets carry if it does not find a $ff. Returns the location of the byte after the first $ff found in hl. - ld h, b - ld l, c - jr ._incave - - ld hl, 25 - add hl, bc - -._incave - push de - ld e, 6 -.loop - ld a, [hli] - cp -1 - jr nz, .ok - ld a, [hli] - cp -1 - jr nz, .ok - dec e - jr nz, .loop - scf - jr .done - -.ok - and a - -.done - pop de - ret -; 89381 - -Function89381: ; 89381 - push bc - push de - call Function89b45 - jr c, .ok - push hl - ld a, -1 - ld bc, 8 - call ByteFill - pop hl - -.ok - pop de - ld c, 8 - call Function89193 - pop bc - ret -; 8939a - -Function8939a: ; 8939a - push bc - ld hl, 0 - add hl, bc - ld de, DefaultFlypoint - ld c, 6 - call Function89193 - pop bc - ld hl, 17 - add hl, bc - ld de, wd008 - call Function89381 - ret -; 893b3 - - -Function893b3: ; 893b3 (22:53b3) - call DisableLCD - call ClearSprites - call Functione51 - call Functione5f - call Function893ef - call Function8942b - call Function89455 - call EnableLCD - ret - -Function893cc: ; 893cc - call DisableLCD - call ClearSprites - call Functione51 - call Functione5f - call Function893ef - call Function89464 - call EnableLCD - ret -; 893e2 - - -Function893e2: ; 893e2 (22:53e2) - call Function89b1e - call Function893b3 - call Function8a5b6 - call Function8949c - ret - -Function893ef: ; 893ef - ld de, VTiles0 - ld hl, GFX_8940b - ld bc, $20 - ld a, BANK(GFX_8940b) - call FarCopyBytes - ret -; 893fe - -Function893fe: ; 893fe - call DisableLCD - call Function893ef - call EnableLCD - call DelayFrame - ret -; 8940b - -GFX_8940b: ; 8940b -INCBIN "gfx/unknown/08940b.2bpp" -; 8942b - -Function8942b: ; 8942b (22:542b) - ld de, VTiles0 tile $02 - ld hl, MobileAdapterGFX + $7d0 - ld bc, $80 - ld a, BANK(MobileAdapterGFX) - call FarCopyBytes - ld de, VTiles0 tile $0a - ld hl, MobileAdapterGFX + $c60 - ld bc, $40 - ld a, BANK(MobileAdapterGFX) - call FarCopyBytes - ret - -Function89448: ; 89448 (22:5448) -; Clears the Sprites array - push af - ld hl, Sprites - ld d, $10 * 6 - xor a -.loop - ld [hli], a - dec d - jr nz, .loop - pop af - ret - -Function89455: ; 89455 (22:5455) - ld hl, MobileAdapterGFX + $7d0 - ld de, VTiles2 tile $0c - ld bc, $490 - ld a, BANK(MobileAdapterGFX) - call FarCopyBytes - ret - -Function89464: ; 89464 - ld hl, MobileAdapterGFX - ld de, VTiles2 - ld bc, $200 - ld a, BANK(MobileAdapterGFX) - call FarCopyBytes - ld hl, MobileAdapterGFX + $660 - ld de, VTiles2 tile $20 - ld bc, $170 - ld a, BANK(MobileAdapterGFX) - call FarCopyBytes - ret -; 89481 - -Function89481: ; 89481 - ld d, 2 - call Function8934a - ret c - ld d, 0 - ld hl, 16 - add hl, bc - bit 0, [hl] - ret z - inc d - ret -; 89492 - - -Function89492: ; 89492 (22:5492) - ld d, 0 - ld a, [PlayerGender] - bit 0, a - ret z - inc d - ret - -Function8949c: ; 8949c - ld a, [rSVBK] - push af - ld a, 5 - ld [rSVBK], a - ld hl, Palette_894b3 - ld de, Unkn1Pals + 8 * 7 - ld bc, 8 - call CopyBytes - pop af - ld [rSVBK], a - ret -; 894b3 - -Palette_894b3: ; 894b3 - RGB 31, 31, 31 - RGB 31, 31, 31 - RGB 31, 31, 31 - RGB 00, 00, 00 -; 894bb - -Function894bb: ; 894bb - call Function894dc - push bc - call Function8956f - call Function8949c - call Function8a60d - pop bc - ret -; 894ca - - -Function894ca: ; 894ca (22:54ca) - push bc - call Function894dc - call Function895c7 - call Function8949c - call Function8a60d - call Function32f9 - pop bc - ret - -Function894dc: ; 894dc - push bc - ld a, [rSVBK] - push af - ld a, 5 - ld [rSVBK], a - ld c, d - ld b, 0 - ld hl, Unknown_89509 -rept 2 - add hl, bc -endr - ld a, [hli] - ld h, [hl] - ld l, a - ld de, Unkn1Pals - ld bc, 24 - call CopyBytes - ld hl, Palette_89557 - ld de, wd018 - ld bc, 24 - call CopyBytes - pop af - ld [rSVBK], a - pop bc - ret -; 89509 - -Unknown_89509: ; 89509 - dw Palette_8950f - dw Palette_89527 - dw Palette_8953f -; 8950f - -Palette_8950f: ; 8950f - RGB 31, 31, 31 - RGB 10, 17, 13 - RGB 10, 08, 22 - RGB 00, 00, 00 - - RGB 31, 31, 31 - RGB 16, 20, 31 - RGB 10, 08, 22 - RGB 00, 00, 00 - - RGB 31, 31, 31 - RGB 16, 20, 31 - RGB 10, 17, 13 - RGB 00, 00, 00 - -Palette_89527: ; 89527 - RGB 31, 31, 31 - RGB 30, 22, 11 - RGB 31, 08, 15 - RGB 00, 00, 00 - - RGB 31, 31, 31 - RGB 16, 20, 31 - RGB 31, 08, 15 - RGB 00, 00, 00 - - RGB 31, 31, 31 - RGB 16, 20, 31 - RGB 30, 22, 11 - RGB 00, 00, 00 - -Palette_8953f: ; 8953f - RGB 31, 31, 31 - RGB 15, 20, 26 - RGB 25, 07, 20 - RGB 00, 00, 00 - - RGB 31, 31, 31 - RGB 16, 20, 31 - RGB 25, 07, 20 - RGB 00, 00, 00 - - RGB 31, 31, 31 - RGB 16, 20, 31 - RGB 15, 20, 26 - RGB 00, 00, 00 - -Palette_89557: ; 89557 - RGB 31, 31, 31 - RGB 31, 31, 31 - RGB 31, 13, 00 - RGB 14, 08, 00 - - RGB 31, 31, 31 - RGB 16, 16, 31 - RGB 00, 00, 31 - RGB 00, 00, 00 - - RGB 19, 31, 11 - RGB 00, 00, 00 - RGB 00, 00, 00 - RGB 00, 00, 00 -; 8956f - -Function8956f: ; 8956f - push bc - ld hl, 16 - add hl, bc - ld d, h - ld e, l - ld hl, $000c - add hl, bc - ld b, h - ld c, l - callba Function4e929 - ld a, c - ld [TrainerClass], a - ld a, [rSVBK] - push af - ld a, 5 - ld [rSVBK], a - ld hl, wd030 - ld a, -1 - ld [hli], a - ld a, " " - ld [hl], a - pop af - ld [rSVBK], a - ld a, [TrainerClass] - ld h, 0 - ld l, a -rept 2 - add hl, hl -endr - ld de, TrainerPalettes - add hl, de - ld a, [rSVBK] - push af - ld a, $5 - ld [rSVBK], a - ld de, wd032 - ld c, 4 -.loop - ld a, BANK(TrainerPalettes) - call GetFarByte - ld [de], a - inc de - inc hl - dec c - jr nz, .loop - ld hl, wd036 - xor a - ld [hli], a - ld [hl], a - pop af - ld [rSVBK], a - pop bc - ret -; 895c7 - - -Function895c7: ; 895c7 (22:55c7) - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, 5 - ld [rSVBK], a ; $ff00+$70 - ld hl, Palette_895de - ld de, wd030 - ld bc, 8 - call CopyBytes - pop af - ld [rSVBK], a ; $ff00+$70 - ret -; 895de (22:55de) - -Palette_895de: ; 895de - RGB 31, 31, 31 - RGB 07, 07, 06 - RGB 07, 07, 06 - RGB 00, 00, 00 -; 895e6 - -Function895e6: ; 895e6 - ld a, 7 - hlcoord 0, 0, AttrMap - ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - call ByteFill - ret -; 895f2 - -Function895f2: ; 895f2 - push bc - xor a - hlcoord 0, 0, AttrMap - ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - call ByteFill - call Function89605 - call Function89655 - pop bc - ret -; 89605 - -Function89605: ; 89605 - hlcoord 19, 2, AttrMap - ld a, 1 - ld de, SCREEN_WIDTH - ld c, 14 -.loop - ld [hl], a - dec c - jr z, .done - add hl, de - inc a - ld [hl], a - dec a - add hl, de - dec c - jr nz, .loop - -.done - hlcoord 0, 16, AttrMap - ld c, 10 - ld a, 2 -.loop2 - ld [hli], a - dec a - ld [hli], a - inc a - dec c - jr nz, .loop2 - hlcoord 1, 11, AttrMap - ld a, 4 - ld bc, 4 - call ByteFill - ld a, 5 - ld bc, 14 - call ByteFill - ret -; 8963d - -Function8963d: ; 8963d - hlcoord 12, 3, AttrMap - ld a, 6 - ld de, SCREEN_WIDTH - lb bc, 7, 7 -.loop - push hl - ld c, 7 -.next - ld [hli], a - dec c - jr nz, .next - pop hl - add hl, de - dec b - jr nz, .loop - ret -; 89655 - -Function89655: ; 89655 - hlcoord 1, 12, AttrMap - ld de, SCREEN_WIDTH - ld a, 5 - ld b, 4 -.loop - ld c, 18 - push hl -.next - ld [hli], a - dec c - jr nz, .next - pop hl - add hl, de - dec b - jr nz, .loop - ret -; 8966c - -Function8966c: ; 8966c - push bc - call Function89688 - hlcoord 4, 0 - ld c, 8 - call Function896f5 - pop bc - ret -; 8967a - - -Function8967a: ; 8967a (22:567a) - push bc - call Function89688 - hlcoord 2, 0 - ld c, 12 - call Function896f5 - pop bc - ret - -Function89688: ; 89688 - hlcoord 0, 0 - ld a, 1 - ld e, SCREEN_WIDTH - call Function896e1 - ld a, 2 - ld e, SCREEN_WIDTH - call Function896eb - ld a, 3 - ld [hli], a - ld a, 4 - ld e, SCREEN_HEIGHT - call Function896e1 - ld a, 6 - ld [hli], a - push bc - ld c, 13 -.loop - call Function896cb - dec c - jr z, .done - call Function896d6 - dec c - jr nz, .loop - -.done - pop bc - ld a, 25 - ld [hli], a - ld a, 26 - ld e, SCREEN_HEIGHT - call Function896e1 - ld a, 28 - ld [hli], a - ld a, 2 - ld e, SCREEN_WIDTH - call Function896eb - ret -; 896cb - -Function896cb: ; 896cb - ld de, SCREEN_WIDTH - 1 - ld a, 7 - ld [hl], a - add hl, de - ld a, 9 - ld [hli], a - ret -; 896d6 - -Function896d6: ; 896d6 - ld de, SCREEN_WIDTH - 1 - ld a, 10 - ld [hl], a - add hl, de - ld a, 11 - ld [hli], a - ret -; 896e1 - -Function896e1: ; 896e1 -.loop - ld [hli], a - inc a - dec e - ret z - ld [hli], a - dec a - dec e - jr nz, .loop - ret -; 896eb - -Function896eb: ; 896eb -.loop - ld [hli], a - dec a - dec e - ret z - ld [hli], a - inc a - dec e - jr nz, .loop - ret -; 896f5 - -Function896f5: ; 896f5 - call Function8971f - call Function89736 -rept 2 - inc hl -endr - ld b, 2 - -ClearScreenArea: ; 0x896ff -; clears an area of the screen -; INPUT: -; hl = address of upper left corner of the area -; b = height -; c = width - - ld a, " " ; blank tile - ld de, 20 ; screen width -.loop - push bc - push hl -.innerLoop - ld [hli], a - dec c - jr nz, .innerLoop - pop hl - pop bc - add hl, de - dec b - jr nz, .loop - - dec hl -rept 2 - inc c -endr -.asm_89713 - ld a, $36 - ld [hli], a - dec c - ret z - ld a, $18 - ld [hli], a - dec c - jr nz, .asm_89713 ; 0x8971c $f5 - ret -; 0x8971f - -Function8971f: ; 8971f - ld a, $2c - ld [hli], a - ld a, $2d - ld [hld], a - push hl - ld de, SCREEN_WIDTH - add hl, de - ld a, $31 - ld [hli], a - ld a, $32 - ld [hld], a - add hl, de - ld a, $35 - ld [hl], a - pop hl - ret -; 89736 - -Function89736: ; 89736 - push hl -rept 2 - inc hl -endr - ld e, c - ld d, $0 - add hl, de - ld a, $2f - ld [hli], a - ld a, $30 - ld [hld], a - ld de, SCREEN_WIDTH - add hl, de - ld a, $33 - ld [hli], a - ld a, $34 - ld [hl], a - add hl, de - ld a, $1f - ld [hl], a - pop hl - ret -; 89753 - -Function89753: ; 89753 - ld a, $c - ld [hl], a - xor a - call Function89215 - ret -; 8975b - -Function8975b: ; 8975b - ld a, $1d - ld [hli], a - inc a - ld [hli], a - ld a, $d - ld [hl], a -rept 2 - dec hl -endr - ld a, $4 - ld e, $3 -.asm_89769 - call Function89215 - inc hl - dec e - jr nz, .asm_89769 - ret -; 89771 - -Function89771: ; 89771 - ld a, $12 - ld [hl], a - ld a, $3 - call Function89215 - ret -; 8977a - -Function8977a: ; 8977a - ld e, $4 - ld d, $13 -.asm_8977e - ld a, d - ld [hl], a - ld a, $4 - call Function89215 - inc hl - inc d - dec e - jr nz, .asm_8977e - ld e, $e -.asm_8978c - ld a, d - ld [hl], a - xor a - call Function89215 - inc hl - dec e - jr nz, .asm_8978c - ret -; 89797 - -Function89797: ; 89797 - push bc - ld a, $e - ld [hl], a - ld bc, SCREEN_WIDTH - add hl, bc - ld a, $11 - ld [hli], a - ld a, $10 - ld c, $8 -.asm_897a6 - ld [hli], a - dec c - jr nz, .asm_897a6 - ld a, $f - ld [hl], a - pop bc - ret -; 897af - -Function897af: ; 897af - push bc - ld hl, $0010 - add hl, bc - ld d, h - ld e, l - ld hl, $000c - add hl, bc - ld b, h - ld c, l - callba Function4e929 - ld a, c - ld [TrainerClass], a - xor a - ld [CurPartySpecies], a - ld de, VTiles2 tile $37 - callba GetTrainerPic - pop bc - ret -; 897d5 - -Function897d5: ; 897d5 - push bc - call Function8934a - jr nc, .asm_897f3 - hlcoord 12, 3, AttrMap - xor a - ld de, SCREEN_WIDTH - lb bc, 7, 7 -.asm_897e5 - push hl - ld c, $7 -.asm_897e8 - ld [hli], a - dec c - jr nz, .asm_897e8 - pop hl - add hl, de - dec b - jr nz, .asm_897e5 - pop bc - ret - -.asm_897f3 - ld a, $37 - ld [$ffad], a - hlcoord 12, 3 - lb bc, 7, 7 - predef FillBox - call Function8963d - pop bc - ret -; 89807 - - -Function89807: ; 89807 (22:5807) - ld hl, MobileAdapterGFX + $200 - ld a, [PlayerGender] - bit 0, a - jr z, .asm_89814 - ld hl, MobileAdapterGFX + $200 + $230 -.asm_89814 - call DisableLCD - ld de, VTiles2 tile $37 - ld bc, $230 - ld a, BANK(MobileAdapterGFX) - call FarCopyBytes - call EnableLCD - call DelayFrame - ret - -Function89829: ; 89829 (22:5829) - push bc - ld bc, $705 - ld de, $14 - ld a, $37 -.asm_89832 - push bc - push hl -.asm_89834 - ld [hli], a - inc a - dec c - jr nz, .asm_89834 - pop hl - add hl, de - pop bc - dec b - jr nz, .asm_89832 - call Function8963d - pop bc - ret - -Function89844: ; 89844 - call Function89481 - call Function894bb - call Function897af - push bc - call Function3200 - call Function32f9 - pop bc - ret -; 89856 - -Function89856: ; 89856 - push bc - call Function891b8 - pop bc - call Function895f2 - call Function8966c - call Function899d3 - call Function898aa - call Function898be - call Function898dc - call Function898f3 - push bc - ld bc, wd008 - hlcoord 2, 10 - call Function89975 - pop bc - call Function897d5 - ret -; 8987f - - -Function8987f: ; 8987f (22:587f) - call Function891b8 - call Function895f2 - call Function8967a - call Function899d3 - hlcoord 5, 1 - call Function8999c - hlcoord 13, 3 - call Function89829 - call Function899b2 - hlcoord 5, 5 - call Function899c9 - ld bc, wd008 - hlcoord 2, 10 - call Function89975 - ret - -Function898aa: ; 898aa - ld a, [MenuSelection] - and a - ret z - push bc - hlcoord 6, 1 - ld de, MenuSelection - lb bc, PRINTNUM_LEADINGZEROS | 1, 2 - call PrintNum - pop bc - ret -; 898be - -Function898be: ; 898be - push bc - ld de, DefaultFlypoint - ld hl, DefaultFlypoint - call Function89331 - jr nc, .asm_898cd - ld de, String_89116 - -.asm_898cd - hlcoord 9, 1 - ld a, [MenuSelection] - and a - jr nz, .asm_898d7 - dec hl - -.asm_898d7 - call PlaceString - pop bc - ret -; 898dc - -Function898dc: ; 898dc - ld hl, $0006 - add hl, bc - push bc - ld d, h - ld e, l - call Function8934a - jr nc, .asm_898eb - ld de, String_89116 - -.asm_898eb - hlcoord 6, 4 - call PlaceString - pop bc - ret -; 898f3 - -Function898f3: ; 898f3 - push bc - ld hl, $000c - add hl, bc - ld d, h - ld e, l - call Function8934a - jr c, .asm_8990a - hlcoord 5, 5 - lb bc, PRINTNUM_LEADINGZEROS | 2, 5 - call PrintNum - jr .asm_89913 - -.asm_8990a - hlcoord 5, 5 - ld de, String_89116 - call PlaceString - -.asm_89913 - pop bc - ret -; 89915 - -Function89915: ; 89915 - push bc - push hl - ld de, Unknown_89942 - ld c, $8 -.asm_8991c - ld a, [de] - ld [hl], a - ld a, $4 - call Function89215 - inc hl - inc de - dec c - jr nz, .asm_8991c - pop hl - ld b, $4 - ld c, $2b - ld a, $8 - ld de, Unknown_8994a -.asm_89932 - push af - ld a, [de] - cp [hl] - jr nz, .asm_8993b - call Function8994e - inc de - -.asm_8993b - inc hl - pop af - dec a - jr nz, .asm_89932 - pop bc - ret -; 89942 - -Unknown_89942: ; 89942 - db $24, $25, $26, " ", $27, $28, $29, $2a -Unknown_8994a: ; 8994a - db $24, $27, $29, $ff -; 8994e - -Function8994e: ; 8994e - push hl - push de - ld de, SCREEN_WIDTH - ld a, l - sub e - ld l, a - ld a, h - sbc d - ld h, a - ld a, c - ld [hl], a - ld a, b - call Function89215 - pop de - pop hl - ret -; 89962 - -Function89962: ; 89962 - push bc - ld c, $4 - ld b, $20 -.asm_89967 - ld a, b - ld [hl], a - ld a, $4 - call Function89215 - inc hl - inc b - dec c - jr nz, .asm_89967 - pop bc - ret -; 89975 - -Function89975: ; 89975 - push bc - ld e, $8 -.asm_89978 - ld a, [bc] - ld d, a - call Function8998b - swap d - inc hl - ld a, d - call Function8998b - inc bc - inc hl - dec e - jr nz, .asm_89978 - pop bc - ret -; 8998b - -Function8998b: ; 8998b - push bc - and $f - cp $a - jr nc, .asm_89997 - ld c, $f6 - add c - jr .asm_89999 - -.asm_89997 - ld a, $7f - -.asm_89999 - ld [hl], a - pop bc - ret -; 8999c - - -Function8999c: ; 8999c (22:599c) - ld de, PlayerName - call PlaceString - inc bc - ld h, b - ld l, c - ld de, String_899ac - call PlaceString - ret -; 899ac (22:59ac) - -String_899ac: ; 899ac - db "の めいし@" -; 899b2 - -Function899b2: ; 899b2 (22:59b2) - ld bc, PlayerName - call Function89346 - jr c, .asm_899bf - ld de, PlayerName - jr .asm_899c2 -.asm_899bf - ld de, String_89116 -.asm_899c2 - hlcoord 6, 4 - call PlaceString - ret - -Function899c9: ; 899c9 (22:59c9) - ld de, PlayerID - lb bc, PRINTNUM_LEADINGZEROS | 2, 5 - call PrintNum - ret - -Function899d3: ; 899d3 - hlcoord 1, 4 - call Function89753 - hlcoord 2, 5 - call Function8975b - hlcoord 1, 9 - call Function89771 - hlcoord 1, 11 - call Function8977a - hlcoord 1, 5 - call Function89797 - hlcoord 2, 4 - call Function89962 - hlcoord 2, 9 - call Function89915 - ret -; 899fe - -Function899fe: ; 899fe - push bc - push hl - ld hl, $0019 - add hl, bc - ld b, h - ld c, l - pop hl - call Function89a0c - pop bc - ret -; 89a0c - -Function89a0c: ; 89a0c - push hl - call Function89363 - pop hl - jr c, .asm_89a1c - ld d, h - ld e, l - callba Function11c08f - ret - -.asm_89a1c - ld de, String_89153 - call PlaceString - ret -; 89a23 - - -Function89a23: ; 89a23 (22:5a23) - hlcoord 0, 11 - ld b, $4 - ld c, $12 - call Function8921f - ret - -Function89a2e: ; 89a2e (22:5a2e) - hlcoord 11, 12 - ld b, $2 - ld c, $6 - call TextBox - hlcoord 13, 13 - ld de, String_89a4e - call PlaceString - hlcoord 13, 14 - ld de, String_89a53 - call PlaceString - call Function89655 - ret -; 89a4e (22:5a4e) - -String_89a4e: ; 89a4e - db "けってい@" -; 89a53 - -String_89a53: ; 89a53 - db "やめる@" -; 89a57 - -Function89a57: ; 89a57 - call Function354b - bit 6, c - jr nz, .asm_89a78 - bit 7, c - jr nz, .asm_89a81 - bit 0, c - jr nz, .asm_89a70 - bit 1, c - jr nz, .asm_89a70 - bit 3, c - jr nz, .asm_89a74 - scf - ret - -.asm_89a70 - ld a, $1 - and a - ret - -.asm_89a74 - ld a, $2 - and a - ret - -.asm_89a78 - call Function89a9b - call nc, Function89a8a - ld a, $0 - ret - -.asm_89a81 - call Function89a93 - call nc, Function89a8a - ld a, $0 - ret -; 89a8a - -Function89a8a: ; 89a8a - push af - ld de, SFX_UNKNOWN_62 - call PlaySFX - pop af - ret -; 89a93 - -Function89a93: ; 89a93 - ld d, $28 - ld e, $1 - call Function89aa3 - ret -; 89a9b - -Function89a9b: ; 89a9b - ld d, $1 - ld e, $ff - call Function89aa3 - ret -; 89aa3 - -Function89aa3: ; 89aa3 - ld a, [MenuSelection] - ld c, a - push bc -.asm_89aa8 - ld a, [MenuSelection] - cp d - jr z, .asm_89ac0 - add e - jr nz, .asm_89ab2 - inc a - -.asm_89ab2 - ld [MenuSelection], a - call Function89ac7 - jr nc, .asm_89aa8 - call Function89ae6 - pop bc - and a - ret - -.asm_89ac0 - pop bc - ld a, c - ld [MenuSelection], a - scf - ret -; 89ac7 - -Function89ac7: ; 89ac7 - call Function89160 - call Function8931b - call Function89ad4 - call CloseSRAM - ret -; 89ad4 - -Function89ad4: ; 89ad4 - push de - call Function8932d - jr c, .asm_89ae3 - ld hl, $0011 - add hl, bc - call Function89b45 - jr c, .asm_89ae4 - -.asm_89ae3 - and a - -.asm_89ae4 - pop de - ret -; 89ae6 - -Function89ae6: ; 89ae6 - ld hl, wd031 - xor a - ld [hl], a - ld a, [MenuSelection] -.asm_89aee - cp $6 - jr c, .asm_89afc - sub $5 - ld c, a - ld a, [hl] - add $5 - ld [hl], a - ld a, c - jr .asm_89aee - -.asm_89afc - ld [wd030], a - ret -; 89b00 - - -Function89b00: ; 89b00 (22:5b00) - callba Function49351 - ret -; 89b07 (22:5b07) - -Function89b07: ; 89b07 - call Function8923c - call DelayFrame - callba Function4a3a7 - ret -; 89b14 - -Function89b14: ; 89b14 - call WhiteBGMap - call Function89b07 - call Function89b00 - ret -; 89b1e - -Function89b1e: ; 89b1e (22:5b1e) - callba Function4a485 - call Function89b00 - ret - -Function89b28: ; 89b28 (22:5b28) - call Function891de - call WhiteBGMap - call Function893e2 - call Function1d7d - call Function891ab - call Function32f9 - ret - -Function89b3b: ; 89b3b (22:5b3b) - call Function8923c - callba Function48cda - ret - -Function89b45: ; 89b45 - push hl - push bc - ld c, $10 - ld e, $0 -.asm_89b4b - ld a, [hli] - ld b, a - and $f - cp $a - jr c, .asm_89b5a - ld a, c - cp $b - jr nc, .asm_89b74 - jr .asm_89b71 - -.asm_89b5a - dec c - swap b - inc e - ld a, b - and $f - cp $a - jr c, .asm_89b6c - ld a, c - cp $b - jr nc, .asm_89b74 - jr .asm_89b71 - -.asm_89b6c - inc e - dec c - jr nz, .asm_89b4b - dec e - -.asm_89b71 - scf - jr .asm_89b75 - -.asm_89b74 - and a - -.asm_89b75 - pop bc - pop hl - ret -; 89b78 - - -Function89b78: ; 89b78 (22:5b78) - push bc - ld a, [wd010] - cp $10 - jr c, .asm_89b8c - ld a, e - and a - jr z, .asm_89b89 - ld c, e -.asm_89b85 - inc hl - dec c - jr nz, .asm_89b85 -.asm_89b89 - ld a, $7f - ld [hl], a -.asm_89b8c - ld a, [wd010] - inc a - and $1f - ld [wd010], a - pop bc - ret - -Function89b97: ; 89b97 (22:5b97) - call Function89c34 - jr c, .asm_89ba0 - call Function89448 - ret -.asm_89ba0 - ld a, [wd011] - ld hl, Unknown_89bd8 - and a - jr z, .asm_89bae -.asm_89ba9 -rept 2 - inc hl -endr - dec a - jr nz, .asm_89ba9 -.asm_89bae - ld a, [hli] - ld h, [hl] - ld l, a - ld de, Sprites -.asm_89bb4 - ld a, [hli] - cp $ff - ret z - ld c, a - ld b, $0 -.asm_89bbb - push hl - ld a, [hli] - ld [de], a - inc de - ld a, [hli] - add b - ld [de], a - inc de - ld a, $8 - add b - ld b, a - ld a, [hli] - ld [de], a - inc de - ld a, [hli] - ld [de], a - inc de - pop hl - dec c - jr nz, .asm_89bbb - ld b, $0 - ld c, $4 - add hl, bc - jr .asm_89bb4 -; 89bd8 (22:5bd8) - -Unknown_89bd8: ; 89bd8 - dw Unknown_89be0 - dw Unknown_89bf5 - dw Unknown_89c0a - dw Unknown_89c1f -; 89be0 - -Unknown_89be0: ; 89be0 - db $01, $12, $4e, $01, $00 - db $01, $19, $4e, $01, $40 - db $01, $12, $72, $01, $20 - db $01, $19, $72, $01, $60 - db $ff - -Unknown_89bf5: ; 89bf5 - db $01, $60, $16, $01, $00 - db $01, $62, $16, $01, $40 - db $01, $60, $92, $01, $20 - db $01, $62, $92, $01, $60 - db $ff - -Unknown_89c0a: ; 89c0a - db $01, $78, $66, $01, $00 - db $01, $78, $66, $01, $40 - db $01, $78, $92, $01, $20 - db $01, $78, $92, $01, $60 - db $ff - -Unknown_89c1f: ; 89c1f - db $01, $80, $66, $01, $00 - db $01, $80, $66, $01, $40 - db $01, $80, $92, $01, $20 - db $01, $80, $92, $01, $60 - db $ff -; 89c34 - -Function89c34: ; 89c34 (22:5c34) - push bc - ld a, [wd012] - ld c, a - inc a - and $f - ld [wd012], a - ld a, c - cp $8 - pop bc - ret - -Function89c44: ; 89c44 (22:5c44) - call Function89c34 - jr c, .asm_89c4f - push de - call Function89448 - pop de - ret -.asm_89c4f - ld hl, Sprites - push de - ld a, b - ld [hli], a - ld d, $8 - ld a, e - and a - ld a, c - jr z, .asm_89c60 -.asm_89c5c - add d - dec e - jr nz, .asm_89c5c -.asm_89c60 - pop de - ld [hli], a - ld a, d - ld [hli], a - xor a - ld [hli], a - ret - -Function89c67: ; 89c67 (22:5c67) - call Function354b - ld b, $0 - bit 0, c - jr z, .asm_89c74 - ld b, $1 - and a - ret -.asm_89c74 - bit 1, c - jr z, .asm_89c7a - scf - ret -.asm_89c7a - xor a - bit 6, c - jr z, .asm_89c81 - ld a, $1 -.asm_89c81 - bit 7, c - jr z, .asm_89c87 - ld a, $2 -.asm_89c87 - bit 5, c - jr z, .asm_89c8d - ld a, $3 -.asm_89c8d - bit 4, c - jr z, .asm_89c93 - ld a, $4 -.asm_89c93 - and a - ret z - dec a - ld c, a - ld d, $0 - ld hl, Unknown_89cbf - ld a, [wd02f] - and a - jr z, .asm_89ca5 - ld hl, Unknown_89ccf -.asm_89ca5 - ld a, [wd011] - and a - jr z, .asm_89cb1 - ld e, $4 -.asm_89cad - add hl, de - dec a - jr nz, .asm_89cad -.asm_89cb1 - ld e, c - add hl, de - ld a, [hl] - and a - ret z - dec a - ld [wd011], a - xor a - ld [wd012], a - ret -; 89cbf (22:5cbf) - -Unknown_89cbf: ; 89cbf - db 0, 2, 0, 0 - db 1, 3, 0, 0 - db 2, 4, 0, 0 - db 3, 0, 0, 0 - -Unknown_89ccf: ; 89ccf - db 0, 0, 0, 0 - db 0, 3, 0, 0 - db 2, 4, 0, 0 - db 3, 0, 0, 0 -; 89cdf - -Function89cdf: ; 89cdf (22:5cdf) - ld a, $10 - add b - ld b, a - ld a, $8 - add c - ld c, a - ld e, $2 - ld a, $2 - ld hl, Sprites -.asm_89cee - push af - push bc - ld d, $4 -.asm_89cf2 - ld a, b - ld [hli], a - ld a, c - ld [hli], a - ld a, e - ld [hli], a - ld a, $1 - ld [hli], a - ld a, $8 - add c - ld c, a - inc e - dec d - jr nz, .asm_89cf2 - pop bc - ld a, $8 - add b - ld b, a - pop af - dec a - jr nz, .asm_89cee - ret - -Function89d0d: ; 89d0d (22:5d0d) - call Function8923c - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $5 - ld [rSVBK], a ; $ff00+$70 - ld c, $8 - ld de, Unkn1Pals -.asm_89d1c - push bc - ld hl, Palette_89d4e - ld bc, $8 - call CopyBytes - pop bc - dec c - jr nz, .asm_89d1c - ld hl, Palette_89d56 - ld de, wd010 - ld bc, $8 - call CopyBytes - pop af - ld [rSVBK], a ; $ff00+$70 - call Function32f9 - callba Function845db - call Function89240 - ld c, $18 - call DelayFrames - call RestartMapMusic - ret -; 89d4e (22:5d4e) - -Palette_89d4e: ; 89d4e - RGB 31, 31, 31 - RGB 19, 19, 19 - RGB 15, 15, 15 - RGB 00, 00, 00 -; 89d56 - -Palette_89d56: ; 89d56 - RGB 31, 31, 31 - RGB 19, 19, 19 - RGB 19, 19, 19 - RGB 00, 00, 00 -; 89d5e - -Function89d5e: ; 89d5e (22:5d5e) - push af - call CopyMenuDataHeader - pop af - ld [wcf88], a - call Function8923c - call Function1c89 - call Function1c10 - ld hl, wcfa5 - set 7, [hl] - ret - -Function89d75: ; 89d75 (22:5d75) - push hl - call Function8923c - call _hl_ - callba Function104148 - pop hl - jr asm_89d90 - -Function89d85: ; 89d85 (22:5d85) - push hl - call Function8923c - call _hl_ - call Function3238 - pop hl - -asm_89d90: ; 89d90 (22:5d90) - call Function8923c - push hl - call _hl_ - call Function89dab - ld a, [wcfa9] - push af - call Function891ab - pop af - pop hl - jr c, .asm_89da9 - jr z, asm_89d90 - scf - ret -.asm_89da9 - and a - ret - -Function89dab: ; 89dab (22:5dab) - call Function8923c - callba Function241ba - call Function8923c - ld a, c - ld hl, wcfa8 - and [hl] - ret z - bit 0, a - jr nz, .asm_89dc7 - bit 1, a - jr nz, .asm_89dd9 - xor a - ret -.asm_89dc7 - call PlayClickSFX - ld a, [wcfa3] - ld c, a - ld a, [wcfa9] - cp c - jr z, .asm_89dd9 - call Function1bee - scf - ret -.asm_89dd9 - call PlayClickSFX - ld a, $1 - and a - ret - -Function89de0: ; 89de0 (22:5de0) - call ClearSprites - call Function89e0a - jr c, .asm_89e00 - ld c, $1 -.asm_89dea - call Function8a31c - jr z, .asm_89dfd - ld a, [wcfa9] - ld c, a - push bc - ld hl, Jumptable_89e04 - ld a, e - dec a - rst JumpTable - pop bc - jr .asm_89dea -.asm_89dfd - call Function891fe -.asm_89e00 - call Function8917a - ret - -Jumptable_89e04: ; 89e04 (22:5e04) - dw Function8a62c - dw Function8a999 - dw Function8ab93 - - -Function89e0a: ; 89e0a (22:5e0a) - call Function89160 - call Function8b3b0 - call CloseSRAM - ld hl, Jumptable_89e18 - rst JumpTable - ret - -Jumptable_89e18: ; 89e18 (22:5e18) - dw Function89e1e - dw Function8a116 - dw Function8a2aa - - -Function89e1e: ; 89e1e (22:5e1e) - call Function89160 - ld bc, $a037 - call Function8b36c - call CloseSRAM - xor a - ld [wd02d], a - -asm_89e2e: ; 89e2e (22:5e2e) - ld a, [wd02d] - ld hl, Jumptable_89e3c - rst JumpTable - ret - -Function89e36: ; 89e36 (22:5e36) - ld hl, wd02d - inc [hl] - jr asm_89e2e - -Jumptable_89e3c: ; 89e3c (22:5e3c) - dw Function89e6f - dw Function89fed - dw Function89ff6 - dw Function8a03d - dw Function89eb9 - dw Function89efd - dw Function89fce - dw Function8a04c - dw Function8a055 - dw Function8a0e6 - dw Function8a0ec - dw Function8a0f5 - dw Function89e58 - dw Function89e68 - - -Function89e58: ; 89e58 (22:5e58) - ld a, $1 - call Function8a2fe - call Function891fe - call Function893e2 - call Function89168 - and a - ret - -Function89e68: ; 89e68 (22:5e68) - call Function891fe - ld a, $1 - scf - ret - -Function89e6f: ; 89e6f (22:5e6f) - call Function891de - call Function89245 - call Function89ee1 - call Function89e9a - hlcoord 7, 4 - call Function8a58d - ld a, $5 - hlcoord 7, 4, AttrMap - call Function8a5a3 - ld a, $6 - hlcoord 10, 4, AttrMap - call Function8a5a3 - call Function891ab - call Function32f9 - jp Function89e36 - -Function89e9a: ; 89e9a (22:5e9a) - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $5 - ld [rSVBK], a ; $ff00+$70 - ld hl, Palette_89eb1 - ld de, wd028 - ld bc, $8 - call CopyBytes - pop af - ld [rSVBK], a ; $ff00+$70 - ret -; 89eb1 (22:5eb1) - -Palette_89eb1: ; 89eb1 - RGB 31, 31, 31 - RGB 31, 31, 31 - RGB 27, 19, 00 - RGB 00, 00, 00 -; 89eb9 - -Function89eb9: ; 89eb9 (22:5eb9) - call Function891fe - call Function89ee1 - call Function89e9a - hlcoord 7, 4 - call Function8a58d - ld a, $5 - hlcoord 7, 4, AttrMap - call Function8a5a3 - ld a, $6 - hlcoord 10, 4, AttrMap - call Function8a5a3 - call Function891ab - call Function32f9 - jp Function89e36 - -Function89ee1: ; 89ee1 (22:5ee1) - call WhiteBGMap - call Function893e2 - call Function8923c - callba Function4a3a7 - callba Function49384 - hlcoord 1, 0 - call Function8a53d - ret - -Function89efd: ; 89efd (22:5efd) - ld hl, wd012 - ld a, $ff - ld [hli], a - xor a -rept 4 - ld [hli], a -endr - ld [hl], a -.asm_89f09 - ld hl, wd012 - inc [hl] - ld a, [hli] - and $3 - jr nz, .asm_89f2e - ld a, [hl] - cp $4 - jr nc, .asm_89f2e - ld b, $32 - inc [hl] - ld a, [hl] - dec a - jr z, .asm_89f26 - ld c, a -.asm_89f1f - ld a, $b - add b - ld b, a - dec c - jr nz, .asm_89f1f -.asm_89f26 - ld c, $e8 - ld a, [wd013] - call Function89fa5 -.asm_89f2e - ld a, [wd013] - and a - jr z, .asm_89f58 -.asm_89f34 - call Function89f6a - ld e, a - ld a, c - cp $a8 - jr nc, .asm_89f4d - cp $46 - jr c, .asm_89f4d - ld d, $0 - dec e - ld hl, wd014 - add hl, de - set 0, [hl] - inc e - jr .asm_89f51 -.asm_89f4d - ld a, $2 - add c - ld c, a -.asm_89f51 - ld a, e - call Function89f77 - dec a - jr nz, .asm_89f34 -.asm_89f58 - call DelayFrame - ld hl, wd014 - ld c, $4 -.asm_89f60 - ld a, [hli] - and a - jr z, .asm_89f09 - dec c - jr nz, .asm_89f60 - jp Function89e36 - -Function89f6a: ; 89f6a (22:5f6a) - push af - ld de, $10 - call Function89f9a - ld a, [hli] - ld b, a - ld a, [hl] - ld c, a - pop af - ret - -Function89f77: ; 89f77 (22:5f77) - push af - ld de, $10 - call Function89f9a - ld d, $2 -.asm_89f80 - push bc - ld e, $2 -.asm_89f83 - ld a, b - ld [hli], a - ld a, c - ld [hli], a -rept 2 - inc hl -endr - ld a, $8 - add c - ld c, a - dec e - jr nz, .asm_89f83 - pop bc - ld a, $8 - add b - ld b, a - dec d - jr nz, .asm_89f80 - pop af - ret - -Function89f9a: ; 89f9a (22:5f9a) - dec a - ld hl, Sprites - and a - ret z -.asm_89fa0 - add hl, de - dec a - jr nz, .asm_89fa0 - ret - -Function89fa5: ; 89fa5 (22:5fa5) - ld de, $10 - call Function89f9a - ld e, $2 - ld d, $a -.asm_89faf - push bc - ld a, $2 -.asm_89fb2 - push af - ld a, b - ld [hli], a - ld a, c - ld [hli], a - ld a, d - inc d - ld [hli], a - ld a, $1 - ld [hli], a - ld a, $8 - add c - ld c, a - pop af - dec a - jr nz, .asm_89fb2 - pop bc - ld a, $8 - add b - ld b, a - dec e - jr nz, .asm_89faf - ret - -Function89fce: ; 89fce (22:5fce) - call Function8a5b6 - ld a, $5 - hlcoord 7, 4, AttrMap - call Function8a5a3 - ld a, $6 - hlcoord 10, 4, AttrMap - call Function8a5a3 - call Function89448 - call Function32f9 - call Function891ab - jp Function89e36 - -Function89fed: ; 89fed (22:5fed) - ld hl, UnknownText_0x8a102 - call PrintText - jp Function89e36 - -Function89ff6: ; 89ff6 (22:5ff6) - call Function891fe - call WhiteBGMap - call Function893cc - call Function89807 - call Function89492 - call Function894ca - call Function89160 - ld hl, $a603 - ld a, $ff - ld bc, $8 - call ByteFill - ld hl, $a603 - ld de, wd008 - call Function89381 - call CloseSRAM - call Function8987f - call Function89160 - hlcoord 1, 13 - ld bc, $a007 - call Function89a0c - call CloseSRAM - call Function891ab - call Function89235 - jp Function89e36 - -Function8a03d: ; 8a03d (22:603d) - ld hl, UnknownText_0x8a107 - call Function89209 - call PrintText - call Function8920f - jp Function89e36 - -Function8a04c: ; 8a04c (22:604c) - ld hl, UnknownText_0x8a10c - call PrintText - jp Function89e36 - -Function8a055: ; 8a055 (22:6055) - ld c, $7 - ld b, $4 -.asm_8a059 - call Function8a0a1 - inc c - call Function8a0c9 - push bc - call Function8a58d - pop bc - call Function8a0de - push bc - push hl - ld a, $5 - call Function8a5a3 - pop hl -rept 3 - inc hl -endr - ld a, $6 - call Function8a5a3 - call Function3238 - pop bc - ld a, c - cp $b - jr nz, .asm_8a059 - call Function8a0a1 - hlcoord 12, 4 - call Function8a58d - ld a, $5 - hlcoord 12, 4, AttrMap - call Function8a5a3 - pop hl - ld a, $6 - hlcoord 15, 4, AttrMap - call Function8a5a3 - call Function3238 - jp Function89e36 - -Function8a0a1: ; 8a0a1 (22:60a1) - call Function8923c - push bc - call Function8a0c9 - ld e, $6 -.asm_8a0aa - push hl - ld bc, $6 - add hl, bc - ld d, [hl] - call Function8a0c1 - pop hl - ld [hl], d - call Function89215 - ld bc, $14 - add hl, bc - dec e - jr nz, .asm_8a0aa - pop bc - ret - -Function8a0c1: ; 8a0c1 (22:60c1) - push hl - ld bc, AttrMap - TileMap - add hl, bc - ld a, [hl] - pop hl - ret - -Function8a0c9: ; 8a0c9 (22:60c9) - push bc - hlcoord 0, 0 - ld de, $14 - ld a, b - and a - jr z, .asm_8a0d8 -.asm_8a0d4 - add hl, de - dec b - jr nz, .asm_8a0d4 -.asm_8a0d8 - ld d, $0 - ld e, c - add hl, de - pop bc - ret - -Function8a0de: ; 8a0de (22:60de) - call Function8a0c9 - ld de, AttrMap - TileMap - add hl, de - ret - -Function8a0e6: ; 8a0e6 (22:60e6) - call Function8b539 - jp Function89e36 - -Function8a0ec: ; 8a0ec (22:60ec) - ld hl, UnknownText_0x8a111 - call PrintText - jp Function89e36 - -Function8a0f5: ; 8a0f5 (22:60f5) - call Function8b555 - jp nc, Function8a0ff - ld hl, wd02d - inc [hl] - -Function8a0ff: ; 8a0ff (22:60ff) - jp Function89e36 -; 8a102 (22:6102) - -UnknownText_0x8a102: ; 0x8a102 - ; The CARD FOLDER stores your and your friends' CARDS. A CARD contains information like the person's name, phone number and profile. - text_jump UnknownText_0x1c5238 - db "@" -; 0x8a107 - -UnknownText_0x8a107: ; 0x8a107 - ; This is your CARD. Once you've entered your phone number, you can trade CARDS with your friends. - text_jump UnknownText_0x1c52bc - db "@" -; 0x8a10c - -UnknownText_0x8a10c: ; 0x8a10c - ; If you have your friend's CARD, you can use it to make a call from a mobile phone on the 2nd floor of a #MON CENTER. - text_jump UnknownText_0x1c531e - db "@" -; 0x8a111 - -UnknownText_0x8a111: ; 0x8a111 - ; To safely store your collection of CARDS, you must set a PASSCODE for your CARD FOLDER. - text_jump UnknownText_0x1c5394 - db "@" -; 0x8a116 - -Function8a116: ; 8a116 (22:6116) - ld a, $1 - ld [wd030], a - ld hl, MenuDataHeader_0x8a176 - call LoadMenuDataHeader -.asm_8a121 - call Function8923c - call Function8a17b - jr c, .asm_8a16b - ld a, [wcfa9] - ld [wd030], a - dec d - jr z, .asm_8a140 - call Function8a20d - jr c, .asm_8a121 - xor a - call Function8a2fe - call Function8916e - jr .asm_8a16b -.asm_8a140 - call Function89174 - jr nz, .asm_8a14c - call Function8a241 - jr c, .asm_8a121 - jr .asm_8a15a -.asm_8a14c - call WaitSFX - ld de, SFX_TWINKLE - call PlaySFX - ld c, $10 - call DelayFrames -.asm_8a15a - call ExitMenu - call Function891de - call Function893e2 - call Function89245 - call Function89168 - and a - ret -.asm_8a16b - call Function89209 - call WriteBackup - call Function8920f - scf - ret -; 8a176 (22:6176) - -MenuDataHeader_0x8a176: ; 0x8a176 - db $40 ; flags - db 00, 14 ; start coords - db 06, 19 ; end coords -; 8a17b - -Function8a17b: ; 8a17b (22:617b) - decoord 14, 0 - ld b, $5 - ld c, $4 - call Function89b3b - ld hl, MenuDataHeader_0x8a19a - ld a, [wd030] - call Function89d5e - ld hl, Function8a1b0 - call Function89d75 - jr nc, .asm_8a198 - ld a, $0 -.asm_8a198 - ld d, a - ret -; 8a19a (22:619a) - -MenuDataHeader_0x8a19a: ; 0x8a19a - db $40 ; flags - db 00, 14 ; start coords - db 06, 19 ; end coords - dw MenuData2_0x8a1a2 - db 1 ; default option -; 0x8a1a2 - -MenuData2_0x8a1a2: ; 0x8a1a2 - db $e0 ; flags - db 3 ; items - db "ひらく@" - db "すてる@" - db "もどる@" -; 0x8a1b0 - -Function8a1b0: ; 8a1b0 - hlcoord 0, 12 - ld b, $4 - ld c, $12 - call TextBox - hlcoord 1, 14 - ld a, [wcfa9] - ld de, Strings_8a1cc - dec a - ld c, a - call Function8919e - call PlaceString - ret -; 8a1cc - -Strings_8a1cc: ; 8a1cc - db "めいし", $25, "せいりと へんしゅうを" - next "おこないます" - db "@" - - db "めいしフ,ルダー", $25, "めいしと" - next "あんしょうばんごう", $1f, "けします" - db "@" - - db "まえ", $25, "がめん", $1d, "もどります" - db "@" -; 8a20d - - -Function8a20d: ; 8a20d (22:620d) - ld hl, UnknownText_0x8a232 - call PrintText - ld a, $2 - call Function89259 - ret c - ld hl, UnknownText_0x8a237 - call PrintText - ld a, $2 - call Function89259 - ret c - xor a - call Function8a2fe - ld hl, UnknownText_0x8a23c - call PrintText - xor a - and a - ret -; 8a232 (22:6232) - -UnknownText_0x8a232: ; 0x8a232 - ; If the CARD FOLDER is deleted, all its CARDS and the PASSCODE will also be deleted. Beware--a deleted CARD FOLDER can't be restored. Want to delete your CARD FOLDER? - text_jump UnknownText_0x1c53ee - db "@" -; 0x8a237 - -UnknownText_0x8a237: ; 0x8a237 - ; Are you sure you want to delete it? - text_jump UnknownText_0x1c5494 - db "@" -; 0x8a23c - -UnknownText_0x8a23c: ; 0x8a23c - ; The CARD FOLDER has been deleted. - text_jump UnknownText_0x1c54b9 - db "@" -; 0x8a241 - -Function8a241: ; 8a241 (22:6241) - call Function1d6e - call Function891fe - call Function8a262 - jr nc, .asm_8a254 - call Function891fe - call Function89b28 - scf - ret -.asm_8a254 - call Function891de - call WhiteBGMap - call Function1d7d - call Function891de - and a - ret - -Function8a262: ; 8a262 (22:6262) - call WhiteBGMap - call Function893e2 - call Function8923c - callba Function4a3a7 - callba Function49384 - hlcoord 1, 0 - call Function8a53d - hlcoord 12, 4 - call Function8a58d - ld a, $5 - hlcoord 12, 4, AttrMap - call Function8a5a3 - ld a, $6 - hlcoord 15, 4, AttrMap - call Function8a5a3 - xor a - ld [wd02e], a - ld bc, wd013 - call Function8b36c - call Function8b493 - call Function891ab - call Function32f9 - call Function8b5e7 - ret - -Function8a2aa: ; 8a2aa (22:62aa) - ld hl, MenuDataHeader_0x8a2ef - call LoadMenuDataHeader - ld hl, UnknownText_0x8a2f4 - call PrintText - ld a, $1 - call Function89259 - jr nc, .asm_8a2cf - ld hl, UnknownText_0x8a2f9 - call PrintText - ld a, $2 - call Function89259 - jr c, .asm_8a2ea - call Function8a20d - jr .asm_8a2ea -.asm_8a2cf - call ExitMenu - call Function8a241 - jr c, .asm_8a2ed - ld a, $1 - call Function8a313 - call CloseSRAM - call Function891de - call Function89245 - call Function89168 - and a - ret -.asm_8a2ea - call WriteBackup -.asm_8a2ed - scf - ret -; 8a2ef (22:62ef) - -MenuDataHeader_0x8a2ef: ; 0x8a2ef - db $40 ; flags - db 12, 00 ; start coords - db 17, 19 ; end coords -; 8a2f4 - -UnknownText_0x8a2f4: ; 0x8a2f4 - ; There is an older CARD FOLDER from a previous journey. Do you want to open it? - text_jump UnknownText_0x1c54dd - db "@" -; 0x8a2f9 - -UnknownText_0x8a2f9: ; 0x8a2f9 - ; Delete the old CARD FOLDER? - text_jump UnknownText_0x1c552d - db "@" -; 0x8a2fe - -Function8a2fe: ; 8a2fe (22:62fe) - call Function8a313 - call Function89305 - ld hl, $a603 - ld bc, $8 - ld a, $ff - call ByteFill - call CloseSRAM - ret - -Function8a313: ; 8a313 (22:6313) - ld c, a - call Function89160 - ld a, c - ld [$a60b], a - ret - -Function8a31c: ; 8a31c (22:631c) - push bc - call Function8923c - callba Function4a3a7 - callba Function49384 - hlcoord 1, 0 - call Function8a53d - hlcoord 12, 4 - call Function8a58d - call Function8a3b2 - pop bc - ld a, c - ld [wcf88], a - ld [MenuSelection], a - call Function1c89 - call Function1c10 - ld hl, wcfa5 - set 7, [hl] -.asm_8a34e - call Function8a3a2 - call Function8923c - call Function8a453 - call Function8a4d3 - call Function8a4fc - call Function891ab - call Function32f9 - call Function8a383 - jr c, .asm_8a370 - jr z, .asm_8a34e -.asm_8a36a - call Function89448 - xor a - ld e, a - ret -.asm_8a370 - call Function89448 - call Function1bee - call Function8a3a2 - ld a, [MenuSelection] - cp $ff - jr z, .asm_8a36a - ld e, a - and a - ret - -Function8a383: ; 8a383 (22:6383) - callba Function241ba - ld a, c - ld hl, wcfa8 - and [hl] - ret z - bit 0, a - jr nz, .asm_8a399 - bit 1, a - jr nz, .asm_8a39e - xor a - ret -.asm_8a399 - call PlayClickSFX - scf - ret -.asm_8a39e - call PlayClickSFX - ret - -Function8a3a2: ; 8a3a2 (22:63a2) - ld a, [wcfa9] - dec a - ld hl, DefaultFlypoint - ld e, a - ld d, $0 - add hl, de - ld a, [hl] - ld [MenuSelection], a - ret - -Function8a3b2: ; 8a3b2 (22:63b2) - ld a, $1 - ld [MenuSelection], a - call Function8a4fc - call Function8a3df - jr nc, .asm_8a3ce - decoord 0, 2 - ld b, $6 - ld c, $9 - call Function89b3b - ld hl, MenuDataHeader_0x8a435 - jr .asm_8a3db -.asm_8a3ce - decoord 0, 2 - ld b, $8 - ld c, $9 - call Function89b3b - ld hl, MenuDataHeader_0x8a40f -.asm_8a3db - call CopyMenuDataHeader - ret - -Function8a3df: ; 8a3df (22:63df) - call Function89160 - ld hl, $a603 - call Function89b45 - call CloseSRAM - ld hl, DefaultFlypoint - jr c, .asm_8a3f8 - ld de, Unknown_8a408 - call Function8a400 - scf - ret -.asm_8a3f8 - ld de, Unknown_8a40b - call Function8a400 - and a - ret - -Function8a400: ; 8a400 (22:6400) - ld a, [de] - inc de - ld [hli], a - cp $ff - jr nz, Function8a400 - ret -; 8a408 (22:6408) - -Unknown_8a408: db 1, 2, -1 -Unknown_8a40b: db 1, 2, 3, -1 - -MenuDataHeader_0x8a40f: ; 0x8a40f - db $40 ; flags - db 02, 00 ; start coords - db 11, 10 ; end coords - dw MenuData2_0x8a417 - db 1 ; default option -; 0x8a417 - -MenuData2_0x8a417: ; 0x8a417 - db $a0 ; flags - db 4 ; items - db "めいしりスト@" - db "じぶんの めいし@" - db "めいしこうかん@" - db "やめる@" -; 0x8a435 - -MenuDataHeader_0x8a435: ; 0x8a435 - db $40 ; flags - db 02, 00 ; start coords - db 09, 10 ; end coords - dw MenuData2_0x8a43d - db 1 ; default option -; 0x8a43d - -MenuData2_0x8a43d: ; 0x8a43d - db $a0 ; flags - db 3 ; items - db "めいしりスト@" - db "じぶんの めいし@" - db "やめる@" -; 0x8a453 - -Function8a453: ; 8a453 (22:6453) - hlcoord 0, 12 - ld b, $4 - ld c, $12 - call TextBox - hlcoord 1, 14 - ld de, String_8a476 - ld a, [MenuSelection] - cp $ff - jr z, .asm_8a472 - ld de, Strings_8a483 - dec a - ld c, a - call Function8919e -.asm_8a472 - call PlaceString - ret -; 8a476 (22:6476) - -String_8a476: ; 8a476 - db "まえ", $25, "がめん", $1d, "もどります@" -; 8a483 - -Strings_8a483: ; 8a483 - db "おともだち", $25, "めいしは" - next "ここ", $1d, "いれておきます@" - - db "でんわばんごう", $1f, "いれると" - next "めいしこうかん", $4a, "できます@" - - db "ともだちと じぶん", $25, "めいしを" - next "せきがいせんで こうかん します@" -; 8a4d3 - -Function8a4d3: ; 8a4d3 (22:64d3) - ld a, [MenuSelection] - cp $1 - jr nz, .asm_8a4eb - ld a, $5 - hlcoord 12, 4, AttrMap - call Function8a5a3 - ld a, $7 - hlcoord 15, 4, AttrMap - call Function8a5a3 - ret -.asm_8a4eb - ld a, $7 - hlcoord 12, 4, AttrMap - call Function8a5a3 - ld a, $6 - hlcoord 15, 4, AttrMap - call Function8a5a3 - ret - -Function8a4fc: ; 8a4fc (22:64fc) - ld a, [MenuSelection] - cp $3 - jr nz, asm_8a529 - ld hl, wd012 - ld a, [hli] - ld b, a - ld a, [hld] - add b - ld [hl], a - ld b, a - ld c, $80 - call Function89cdf - call Function8a515 - ret - -Function8a515: ; 8a515 (22:6515) - ld hl, wd012 - ld a, [hl] - cp $38 - jr c, .asm_8a520 - cp $3c - ret c -.asm_8a520 - ld a, [wd013] - cpl - inc a - ld [wd013], a - ret - -asm_8a529: ; 8a529 (22:6529) - ld hl, wd012 - ld a, $3c - ld [hli], a - ld a, $ff - ld [hli], a - ld hl, Sprites - xor a - ld bc, $20 - call ByteFill - ret - -Function8a53d: ; 8a53d (22:653d) - push hl - ld a, $15 - ld c, $8 - ld de, $14 - call Function8a573 - ld a, $1d - ld c, $9 - call Function8a57c - inc a - ld [hl], a - call Function8a584 - pop hl - add hl, de - ld a, $1f - ld c, $8 - call Function8a573 - dec hl - ld a, $51 - ld [hli], a - ld a, $26 - ld c, $1 - call Function8a57c - ld a, $52 - ld c, $3 - call Function8a573 - ld a, $27 - ld c, $6 - -Function8a573: ; 8a573 (22:6573) - ld [hl], a - call Function8a584 - inc a - dec c - jr nz, Function8a573 - ret - -Function8a57c: ; 8a57c (22:657c) - ld [hl], a - call Function8a584 - dec c - jr nz, Function8a57c - ret - -Function8a584: ; 8a584 (22:6584) - push af - ld a, $4 - call Function89215 - inc hl - pop af - ret - -Function8a58d: ; 8a58d (22:658d) - ld a, $2d - ld bc, $606 - ld de, $14 -.asm_8a595 - push bc - push hl -.asm_8a597 - ld [hli], a - inc a - dec c - jr nz, .asm_8a597 - pop hl - add hl, de - pop bc - dec b - jr nz, .asm_8a595 - ret - -Function8a5a3: ; 8a5a3 (22:65a3) - ld bc, $603 - ld de, $14 -.asm_8a5a9 - push bc - push hl -.asm_8a5ab - ld [hli], a - dec c - jr nz, .asm_8a5ab - pop hl - add hl, de - pop bc - dec b - jr nz, .asm_8a5a9 - ret - -Function8a5b6: ; 8a5b6 (22:65b6) - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $5 - ld [rSVBK], a ; $ff00+$70 - ld hl, Palette_8a5e5 - ld de, wd020 - ld bc, $18 - call CopyBytes - ld hl, Palette_8a5fd - ld de, Unkn2Pals - ld bc, $8 - call CopyBytes - ld hl, Palette_8a605 - ld de, wd048 - ld bc, $8 - call CopyBytes - pop af - ld [rSVBK], a ; $ff00+$70 - ret -; 8a5e5 (22:65e5) - -Palette_8a5e5: ; 8a5e5 - RGB 31, 31, 31 - RGB 27, 19, 00 - RGB 07, 11, 22 - RGB 00, 00, 00 - RGB 31, 31, 31 - RGB 16, 16, 31 - RGB 27, 19, 00 - RGB 00, 00, 00 - RGB 31, 31, 31 - RGB 31, 00, 00 - RGB 27, 19, 00 - RGB 00, 00, 00 -; 8a5fd - -Palette_8a5fd: ; 8a5fd - RGB 00, 00, 00 - RGB 00, 00, 00 - RGB 00, 00, 00 - RGB 31, 31, 31 -; 8a605 - -Palette_8a605: ; 8a605 - RGB 00, 00, 00 - RGB 14, 18, 31 - RGB 16, 16, 31 - RGB 31, 31, 31 -; 8a60d - -Function8a60d: ; 8a60d - ld a, [rSVBK] - push af - ld a, $5 - ld [rSVBK], a - ld hl, Palette_8a624 - ld de, Unkn2Pals - ld bc, $0008 - call CopyBytes - pop af - ld [rSVBK], a - ret -; 8a624 - -Palette_8a624: ; 8a624 - RGB 31, 31, 31 - RGB 31, 31, 31 - RGB 31, 31, 31 - RGB 00, 00, 00 -; 8a62c - -Function8a62c: ; 8a62c (22:662c) - call Function1d6e - call Function891fe - xor a - call Function8b94a - call Function8b677 -.asm_8a639 - xor a - ld [wd033], a - ld [wd032], a - ld [wd0e3], a - call Function8b7bd - ld a, c - and a - jr z, .asm_8a66a - ld [MenuSelection], a - ld b, a - ld a, [wcf77] - inc a - ld [wd034], a - push bc - call Function8b960 - ld a, c - pop bc - jr z, .asm_8a639 - ld c, a - ld hl, Jumptable_8a671 - ld a, b - ld [MenuSelection], a - ld a, c - dec a - rst JumpTable - jr .asm_8a639 -.asm_8a66a - call Function891fe - call Function89b28 - ret - -Jumptable_8a671: ; 8a671 (22:6671) - dw Function8a679 - dw Function8a6cd - dw Function8a8c3 - dw Function8a930 - - -Function8a679: ; 8a679 (22:6679) - call Function891de - call WhiteBGMap - call Function893cc - call Function89160 - call Function8931b - call Function89844 - call CloseSRAM - call Function89160 - call Function8939a - call Function89856 - hlcoord 1, 13 - call Function899fe - call Function891ab - call CloseSRAM -.asm_8a6a3 - call Function89a57 - jr c, .asm_8a6a3 - and a - jr z, Function8a679 - ld hl, Jumptable_8a6bc - dec a - rst JumpTable - jr c, Function8a679 - call Function891fe - call Function8b677 - call Function89448 - ret - -Jumptable_8a6bc: ; 8a6bc (22:66bc) - dw Function8a6c0 - dw Function8a6c5 - - -Function8a6c0: ; 8a6c0 (22:66c0) - call PlayClickSFX - and a - ret - -Function8a6c5: ; 8a6c5 (22:66c5) - call PlayClickSFX - call Function89d0d - scf - ret - -Function8a6cd: ; 8a6cd (22:66cd) - call Function891de - call WhiteBGMap - call Function893cc - call Function89160 - call Function8931b - call Function89844 - call Function8a757 - call CloseSRAM -.asm_8a6e5 - call Function89160 - call Function8931b - call Function89856 - call Function89a2e - call Function891ab - xor a - ld [wd02f], a - call CloseSRAM -.asm_8a6fb - call Function89b97 - call Function89c67 - jr c, .asm_8a718 - ld a, b - and a - jr z, .asm_8a6fb - call PlayClickSFX - call Function89448 - ld a, [wd011] - ld hl, Jumptable_8a74f - rst JumpTable - jr nc, .asm_8a6e5 - jr .asm_8a742 -.asm_8a718 - call Function89160 - call Function8a765 - call CloseSRAM - jr nc, .asm_8a73f - call Function8923c - call Function89448 - call Function89a23 - hlcoord 1, 13 - ld de, String_89135 - call PlaceString - call WaitBGMap - ld a, $2 - call Function89254 - jr c, .asm_8a6e5 -.asm_8a73f - call CloseSRAM -.asm_8a742 - call WhiteBGMap - call Function89448 - call Function891d3 - call Function8b677 - ret - -Jumptable_8a74f: ; 8a74f (22:674f) - dw Function8a78c - dw Function8a7cb - dw Function8a818 - dw Function8a8a1 - - -Function8a757: ; 8a757 (22:6757) - call Function8939a - xor a - ld [wd010], a - ld [wd011], a - ld [wd012], a - ret - -Function8a765: ; 8a765 (22:6765) - call Function8931b - push bc - ld hl, $0 - add hl, bc - ld de, DefaultFlypoint - ld c, $6 - call Function89185 - pop bc - jr nz, .asm_8a78a - push bc - ld hl, $11 - add hl, bc - ld de, wd008 - ld c, $8 - call Function89185 - pop bc - jr nz, .asm_8a78a - and a - ret -.asm_8a78a - scf - ret - -Function8a78c: ; 8a78c (22:678c) - call Function891fe - ld de, DefaultFlypoint - ld b, $5 - callba Function116c1 - call Function89160 - call Function8931b - push bc - ld hl, $0 - add hl, bc - ld d, h - ld e, l - ld hl, DefaultFlypoint - call InitName - call CloseSRAM - call DelayFrame - call Functiona57 - call Function891de - call WhiteBGMap - call Function893cc - call Function89160 - pop bc - call Function89844 - call CloseSRAM - and a - ret - -Function8a7cb: ; 8a7cb (22:67cb) - ld a, [MenuSelection] - push af - call Function891de - ld de, wd008 - ld c, $0 - callba Function17a68f - jr c, .asm_8a7f4 - ld hl, wd008 - ld a, $ff - ld bc, $8 - call ByteFill - ld h, d - ld l, e - ld de, wd008 - ld c, $8 - call Function89193 -.asm_8a7f4 - pop af - ld [MenuSelection], a - call Function891de - call WhiteBGMap - call Function893cc - call Function89160 - call Function8931b - call Function89844 - call Function89856 - call Function89a2e - call Function891ab - call CloseSRAM - and a - ret - -Function8a818: ; 8a818 (22:6818) - call Function89a23 - ld hl, DefaultFlypoint - call Function89331 - jr c, .asm_8a875 - ld hl, wd008 - call Function89b45 - jr nc, .asm_8a87a - call Function89160 - call Function8a765 - jr nc, .asm_8a863 - call Function8931b - push bc - ld hl, $0 - add hl, bc - ld d, h - ld e, l - ld hl, DefaultFlypoint - ld c, $6 - call Function89193 - pop bc - ld hl, $11 - add hl, bc - ld d, h - ld e, l - ld hl, wd008 - ld c, $8 - call Function89193 - hlcoord 1, 13 - ld de, .string_8a868 - call PlaceString - call WaitBGMap - call Functiona36 -.asm_8a863 - call CloseSRAM - scf - ret -; 8a868 (22:6868) - -.string_8a868 - db "めいし", $1f, "かきかえ まし", $22, "@" - -.asm_8a875 - ld de, String_8a88b - jr .asm_8a87d -.asm_8a87a - ld de, String_8911c -.asm_8a87d - hlcoord 1, 13 - call PlaceString - call WaitBGMap - call Functiona36 - and a - ret -; 8a88b (22:688b) - -String_8a88b: ; 8a88b - db "おともだち", $25, "なまえが" - next "かかれて いません!@" -; 8a8a1 - -Function8a8a1: ; 8a8a1 (22:68a1) - call Function89160 - call Function8a765 - call CloseSRAM - jr nc, .asm_8a8bf - call Function89a23 - hlcoord 1, 13 - ld de, String_89135 - call PlaceString - ld a, $2 - call Function89254 - jr c, .asm_8a8c1 -.asm_8a8bf - scf - ret -.asm_8a8c1 - and a - ret - -Function8a8c3: ; 8a8c3 (22:68c3) - call Function891de - call WhiteBGMap - call Function893cc - call Function89160 - call Function8931b - call Function89844 - call Function8939a - call Function89856 - call CloseSRAM - call Function891ab - hlcoord 1, 13 - ld de, String_8a919 - call PlaceString - ld a, $2 - call Function89254 - jr c, .asm_8a90f - call Function89160 - call Function892b4 - call CloseSRAM - call Function89a23 - call Function8923c - hlcoord 1, 13 - ld de, String_8a926 - call PlaceString - call WaitBGMap - call Functiona36 -.asm_8a90f - call Function89448 - call Function891fe - call Function8b677 - ret -; 8a919 (22:6919) - -String_8a919: ; 8a919 - db "このデータ", $1f, "けしますか?@" -; 8a926 - -String_8a926: ; 8a926 - db "データ", $1f, "けしまし", $22, "@" -; 8a930 - -Function8a930: ; 8a930 (22:6930) - ld a, [MenuSelection] - push af - xor a - ld [wd032], a - ld a, $1 - ld [wd033], a - ld a, [wd034] - ld [wd0e3], a -.asm_8a943 - call Function8b7bd - ld a, [wcf73] - and $1 - jr nz, .asm_8a953 - ld a, c - and a - jr nz, .asm_8a943 - pop af - ret -.asm_8a953 - call Function89160 - pop af - cp c - jr z, .asm_8a995 - push bc - ld [MenuSelection], a - call Function8931b - push bc - ld h, b - ld l, c - ld de, DefaultFlypoint - ld bc, $25 - call CopyBytes - pop de - pop bc - ld a, c - ld [MenuSelection], a - call Function8931b - push bc - ld h, b - ld l, c - ld bc, $25 - call CopyBytes - pop de - ld hl, DefaultFlypoint - ld bc, $25 - call CopyBytes - ld de, SFX_SWITCH_POKEMON - call WaitPlaySFX - ld de, SFX_SWITCH_POKEMON - call WaitPlaySFX -.asm_8a995 - call CloseSRAM - ret - -Function8a999: ; 8a999 (22:6999) - ld hl, MenuDataHeader_0x8a9c9 - call LoadMenuDataHeader - ld c, $1 -.asm_8a9a1 - call Function8a9ce - jr c, .asm_8a9bb - push bc - push de - call Function1d6e - pop de - dec e - ld a, e - ld hl, Jumptable_8a9c5 - rst JumpTable - call Function891fe - call Function89b28 - pop bc - jr .asm_8a9a1 -.asm_8a9bb - call Function89209 - call WriteBackup - call Function8920f - ret - -Jumptable_8a9c5: ; 8a9c5 (22:69c5) - dw Function8aa0a - dw Function8ab3b -; 8a9c9 (22:69c9) - -MenuDataHeader_0x8a9c9: ; 0x8a9c9 - db $40 ; flags - db 04, 11 ; start coords - db 11, 18 ; end coords -; 8a9ce - -Function8a9ce: ; 8a9ce (22:69ce) - push bc - decoord 11, 4 - ld b, $6 - ld c, $6 - call Function89b3b - pop bc - ld a, c - ld hl, MenuDataHeader_0x8a9f2 - call Function89d5e - ld hl, Function8aa09 - call Function89d85 - jr c, .asm_8a9ed - ld c, a - ld e, a - and a - ret -.asm_8a9ed - ld c, a - ld e, $0 - scf - ret -; 8a9f2 (22:69f2) - -MenuDataHeader_0x8a9f2: ; 0x8a9f2 - db $40 ; flags - db 04, 11 ; start coords - db 11, 18 ; end coords - dw MenuData2_0x8a9fa - db 1 ; default option -; 0x8a9fa - -MenuData2_0x8a9fa: ; 0x8a9fa - db $a0 ; flags - db 3 ; items - db "へんしゅう@" - db "みる@" - db "やめる@" -; 0x8aa09 - -Function8aa09: ; 8aa09 - ret -; 8aa0a - -Function8aa0a: ; 8aa0a (22:6a0a) - ld a, $1 - ld [wd02f], a - ld [wd011], a - xor a - ld [wd010], a - ld [wd012], a - call Function89160 - ld hl, $a603 - ld de, wd008 - call Function89381 - call CloseSRAM - call Function891fe - call WhiteBGMap - call Function893cc - call Function89807 - call Function89492 - call Function894ca -.asm_8aa3a - call Function8987f - call Function89a2e - call Function891ab -.asm_8aa43 - call Function89b97 - call Function89c67 - jr c, .asm_8aa61 - ld a, b - and a - jr z, .asm_8aa43 - call PlayClickSFX - call Function89448 - ld a, [wd011] - dec a - ld hl, Jumptable_8aa6d - rst JumpTable - jr nc, .asm_8aa3a - jr .asm_8aa69 -.asm_8aa61 - call Function89448 - call Function8ab11 - jr nc, .asm_8aa3a -.asm_8aa69 - call Function89448 - ret - -Jumptable_8aa6d: ; 8aa6d (22:6a6d) - dw Function8aa73 - dw Function8aab6 - dw Function8ab11 - - -Function8aa73: ; 8aa73 (22:6a73) - ld a, [MenuSelection] - ld e, a - push de - call Function891de - ld de, wd008 - ld c, $0 - callba Function17a68f - jr c, .asm_8aa9d - ld hl, wd008 - ld a, $ff - ld bc, $8 - call ByteFill - ld h, d - ld l, e - ld de, wd008 - ld c, $8 - call Function89193 -.asm_8aa9d - call Function891fe - call WhiteBGMap - call Function893cc - call Function89807 - call Function89492 - call Function894ca - pop de - ld a, e - ld [MenuSelection], a - and a - ret - -Function8aab6: ; 8aab6 (22:6ab6) - call Function89a23 - ld hl, wd008 - call Function89b45 - jr nc, Function8ab00 - call Function89160 - ld de, wd008 - ld hl, $a603 - ld c, $8 - call Function89185 - jr z, .asm_8aaeb - ld hl, wd008 - ld de, $a603 - ld c, $8 - call Function89193 - hlcoord 1, 13 - ld de, String_8aaf0 - call PlaceString - call WaitBGMap - call Functiona36 -.asm_8aaeb - call CloseSRAM - scf - ret -; 8aaf0 (22:6af0) - -String_8aaf0: ; 8aaf0 - db "あたらしい めいし", $4a, "できまし", $22, "@" -; 8ab00 - -Function8ab00: ; 8ab00 - ld de, String_8911c - hlcoord 1, 13 - call PlaceString - call WaitBGMap - call Function89235 - and a - ret - -Function8ab11: ; 8ab11 (22:6b11) - call Function89160 - ld hl, $a603 - ld de, wd008 - ld c, $8 - call Function89185 - call CloseSRAM - jr z, .asm_8ab37 - call Function89a23 - hlcoord 1, 13 - ld de, String_89135 - call PlaceString - ld a, $2 - call Function89254 - jr c, .asm_8ab39 -.asm_8ab37 - scf - ret -.asm_8ab39 - and a - ret - -Function8ab3b: ; 8ab3b (22:6b3b) - call Function891fe - call WhiteBGMap - call Function893cc - call Function89807 - call Function89492 - call Function894ca - call Function89160 - ld hl, $a603 - ld de, wd008 - call Function89381 - call CloseSRAM - call Function8987f - call Function89160 - hlcoord 1, 13 - ld bc, $a007 - call Function89a0c - call CloseSRAM - call Function891ab - call Function8ab77 - jr c, Function8ab3b - ret - -Function8ab77: ; 8ab77 (22:6b77) - call Function354b - bit 0, c - jr nz, .asm_8ab8e - bit 1, c - jr nz, .asm_8ab8e - bit 3, c - jr z, Function8ab77 - call PlayClickSFX - call Function89d0d - scf - ret -.asm_8ab8e - call PlayClickSFX - and a - ret - -Function8ab93: ; 8ab93 (22:6b93) - call WhiteBGMap - call Function1d6e - callba Function105688 - call ClearSprites - call Function891fe - call Function89b28 - ret -; 8aba9 (22:6ba9) - -Function8aba9: ; 8aba9 - ld a, $2 - call Function8b94a - ld a, $1 - ld [wd032], a -.asm_8abb3 - call Function891fe - call Function8b677 -.asm_8abb9 - call Function8b7bd - jr z, .asm_8abdf - ld a, c - ld [MenuSelection], a - call Function89160 - call Function8931b - ld hl, $0011 - add hl, bc - call Function89b45 - call CloseSRAM - jr c, .asm_8abe2 - ld de, SFX_WRONG - call WaitPlaySFX - call CloseSRAM - jr .asm_8abb9 - -.asm_8abdf - xor a - ld c, a - ret - -.asm_8abe2 - call PlayClickSFX -.asm_8abe5 - call Function891de - call WhiteBGMap - call Function893cc - call Function89160 - call Function8931b - call Function89844 - call CloseSRAM - call Function89160 - call Function8939a - call Function89856 - hlcoord 1, 13 - call Function899fe - call CloseSRAM - call Function891ab -.asm_8ac0f - call Function89a57 - jr c, .asm_8ac0f - and a - jr z, .asm_8abe5 - cp $2 - jr z, .asm_8ac0f - hlcoord 0, 12 - ld b, $4 - ld c, $12 - call TextBox - hlcoord 1, 14 - ld de, String_8ac3b - call PlaceString - ld a, $1 - call Function8925e - jp c, .asm_8abb3 - ld a, [MenuSelection] - ld c, a - ret -; 8ac3b - -String_8ac3b: ; 8ac3b - db "こ", $25, "ともだち", $1d, "でんわを" - next "かけますか?@" -; 8ac4e - -Function8ac4e: ; 8ac4e - xor a - ld [MenuSelection], a - push de - call Function891de - call WhiteBGMap - call Function893cc - pop bc - call Function89844 - call Function8939a - call Function89856 - hlcoord 1, 13 - call Function899fe - call Function891ab - ret -; 8ac70 - -Function8ac70: ; 8ac70 - push de - ld a, $3 - call Function8b94a - -Function8ac76: ; 8ac76 - call Function891fe - call Function8b677 - -Function8ac7c: ; 8ac7c - call Function8b7bd - jr z, .asm_8acf0 - ld a, c - ld [wd02f], a - ld [MenuSelection], a - call Function89160 - call Function8931b - call Function8932d - call CloseSRAM - jr nc, .asm_8acb0 - call Function89160 - ld hl, $0011 - add hl, bc - call Function89b45 - call CloseSRAM - jr nc, .asm_8accc - call Function89160 - call Function892b7 - call CloseSRAM - jr .asm_8accc - -.asm_8acb0 - call Function8ad0b - jr c, Function8ac76 - and a - jr nz, .asm_8accc - call Function89160 - ld h, b - ld l, c - ld d, $0 - ld e, $6 - add hl, de - ld d, h - ld e, l - pop hl - ld c, $1f - call Function89193 - jr .asm_8ace4 - -.asm_8accc - pop hl - call Function89160 - ld d, b - ld e, c - ld c, $6 - call Function89193 - ld a, $6 - add e - ld e, a - ld a, $0 - adc d - ld d, a - ld c, $1f - call Function89193 - -.asm_8ace4 - call CloseSRAM - call Functione51 - ld a, [wd02f] - ld c, a - and a - ret - -.asm_8acf0 - ld hl, UnknownText_0x8ad06 - call PrintText - ld a, $2 - call Function89259 - jp c, Function8ac7c - call Functione51 - pop de - ld c, $0 - scf - ret -; 8ad06 - -UnknownText_0x8ad06: ; 0x8ad06 - ; Finish registering CARDS? - text_jump UnknownText_0x1c554a - db "@" -; 0x8ad0b - -Function8ad0b: ; 8ad0b -.asm_8ad0b - ld a, [MenuSelection] - ld [wd02f], a - call Function891de - call WhiteBGMap - call Function893cc - call Function89160 - call Function8931b - push bc - call Function89844 - call Function8939a - call Function89856 - hlcoord 1, 13 - call Function899fe - call CloseSRAM - call Function891ab - pop bc -.asm_8ad37 - push bc - call Function89a57 - pop bc - jr c, .asm_8ad37 - and a - jr z, .asm_8ad0b - cp $2 - jr z, .asm_8ad37 - call Function8923c - push bc - hlcoord 0, 12 - ld b, $4 - ld c, $12 - call TextBox - ld de, String_8ad89 - hlcoord 1, 14 - call PlaceString - ld a, $2 - call Function8925e - jr c, .asm_8ad87 - call Function8923c - hlcoord 0, 12 - ld b, $4 - ld c, $12 - call TextBox - ld de, String_8ad9c - hlcoord 1, 14 - call PlaceString - ld a, $1 - call Function8925e - jr c, .asm_8ad84 - ld a, $0 - jr .asm_8ad86 - -.asm_8ad84 - ld a, $1 - -.asm_8ad86 - and a - -.asm_8ad87 - pop bc - ret -; 8ad89 - -String_8ad89: ; 8ad89 - db "こ", $25, "めいし", $1f, "けして" - next "いれかえますか?@" -; 8ad9c - -String_8ad9c: ; 8ad9c - db "おともだち", $25, "なまえを" - next "のこして おきますか?@" -; 8adb3 - -Function8adb3: ; 8adb3 - call Function891de - call Function8a262 - push af - call Function891de - pop af - ret -; 8adbf - -Function8adbf: ; 8adbf - call Function89160 - ld hl, $a603 - call Function89b45 - call CloseSRAM - ret -; 8adcc - -Function8adcc: ; 8adcc - call Function89160 - call Function8b3b0 - call CloseSRAM - ret nc - cp $2 - ret z - scf - ret -; 8addb - - -SpecialHoOhChamber: ; 0x8addb - ld hl, PartySpecies - ld a, [hl] - cp HO_OH ; is Ho-oh the first Pokémon in the party? - jr nz, .done ; if not, we're done - call GetSecondaryMapHeaderPointer - ld de, EVENT_WALL_OPENED_IN_HO_OH_CHAMBER - ld b, SET_FLAG - call EventFlagAction -.done - ret -; 0x8adef - -SpecialOmanyteChamber: ; 8adef - call GetSecondaryMapHeaderPointer - ld de, EVENT_WALL_OPENED_IN_OMANYTE_CHAMBER - ld b, CHECK_FLAG - call EventFlagAction - ld a, c - and a - jr nz, .nope - - ld a, WATER_STONE - ld [CurItem], a - ld hl, NumItems - call CheckItem - jr c, .open - - ld a, [PartyCount] - ld b, a - inc b -.loop - dec b - jr z, .nope - ld a, b - dec a - ld [CurPartyMon], a - push bc - ld a, PartyMon1Item - PartyMon1 - call GetPartyParamLocation - pop bc - ld a, [hl] - cp WATER_STONE - jr nz, .loop - -.open - call GetSecondaryMapHeaderPointer - ld de, EVENT_WALL_OPENED_IN_OMANYTE_CHAMBER - ld b, SET_FLAG - call EventFlagAction - -.nope - ret -; 8ae30 - -SpecialAerodactylChamber: ; 8ae30 - push de - push bc - - call GetSecondaryMapHeaderPointer - ld a, h - cp RuinsofAlphAerodactylChamber_SecondMapHeader / $100 - jr nz, .nope - ld a, l - cp RuinsofAlphAerodactylChamber_SecondMapHeader % $100 - jr nz, .nope - - ld de, EVENT_WALL_OPENED_IN_AERODACTYL_CHAMBER - ld b, SET_FLAG - call EventFlagAction - - scf - jr .done - -.nope - and a - -.done - pop bc - pop de - ret -; 8ae4e - -SpecialKabutoChamber: ; 8ae4e - push hl - push de - - call GetSecondaryMapHeaderPointer - ld a, h - cp RuinsofAlphKabutoChamber_SecondMapHeader / $100 - jr nz, .done - ld a, l - cp RuinsofAlphKabutoChamber_SecondMapHeader % $100 - jr nz, .done - - ld de, EVENT_WALL_OPENED_IN_KABUTO_CHAMBER - ld b, SET_FLAG - call EventFlagAction - -.done - pop de - pop hl - ret -; 8ae68 - -Special_DisplayUnownWords: ; 8ae68 - ld a, [ScriptVar] - ld hl, MenuDataHeader_0x8aed5 - and a - jr z, .asm_8ae79 - - ld d, $0 - ld e, $5 -.asm_8ae75 - add hl, de - dec a - jr nz, .asm_8ae75 - -.asm_8ae79 - call LoadMenuDataHeader - xor a - ld [hBGMapMode], a - call Function1cbb - call UpdateSprites - call Function321c - call Function1cfd - inc hl - ld d, $0 - ld e, $14 -rept 2 - add hl, de -endr - ld a, [ScriptVar] - ld c, a - ld de, Unknown_8aebc - and a - jr z, .asm_8aea5 -.asm_8ae9c - ld a, [de] - inc de - cp $ff - jr nz, .asm_8ae9c - dec c - jr nz, .asm_8ae9c - -.asm_8aea5 - call Function8af09 - ld bc, AttrMap - TileMap - add hl, bc - call Function8aee9 - call Function3200 - call Functiona36 - call PlayClickSFX - call WriteBackup - ret -; 8aebc - -Unknown_8aebc: ; 8aebc - db $08, $44, $04, $00, $2e, $08, $ff - db $26, $20, $0c, $0e, $46, $ff - db $4c, $00, $46, $08, $42, $ff - db $0e, $2c, $64, $2c, $0e, $ff -; 8aed5 - -MenuDataHeader_0x8aed5: ; 0x8aed5 - db $40 ; flags - db 04, 03 ; start coords - db 09, 16 ; end coords - -MenuDataHeader_0x8aeda: ; 0x8aeda - db $40 ; flags - db 04, 04 ; start coords - db 09, 15 ; end coords - -MenuDataHeader_0x8aedf: ; 0x8aedf - db $40 ; flags - db 04, 04 ; start coords - db 09, 15 ; end coords - -MenuDataHeader_0x8aee4: ; 0x8aee4 - db $40 ; flags - db 04, 04 ; start coords - db 09, 15 ; end coords -; 8aee9 - -Function8aee9: ; 8aee9 -.asm_8aee9 - ld a, [de] - cp $ff - ret z - cp $60 - ld a, $d - jr c, .asm_8aef5 - ld a, $5 - -.asm_8aef5 - call Function8aefd -rept 2 - inc hl -endr - inc de - jr .asm_8aee9 -; 8aefd - -Function8aefd: ; 8aefd - push hl - ld [hli], a - ld [hld], a - ld b, $0 - ld c, $14 - add hl, bc - ld [hli], a - ld [hl], a - pop hl - ret -; 8af09 - -Function8af09: ; 8af09 - push hl - push de -.asm_8af0b - ld a, [de] - cp $ff - jr z, .asm_8af19 - ld c, a - call Function8af1c -rept 2 - inc hl -endr - inc de - jr .asm_8af0b - -.asm_8af19 - pop de - pop hl - ret -; 8af1c - -Function8af1c: ; 8af1c - push hl - ld a, c - cp $60 - jr z, .asm_8af3b - cp $62 - jr z, .asm_8af4b - cp $64 - jr z, .asm_8af5b - ld [hli], a - inc a - ld [hld], a - dec a - ld b, $0 - ld c, $14 - add hl, bc - ld c, $10 - add c - ld [hli], a - inc a - ld [hl], a - pop hl - ret - -.asm_8af3b - ld [hl], $5b - inc hl - ld [hl], $5c - ld bc, $0013 - add hl, bc - ld [hl], $4d - inc hl - ld [hl], $5d - pop hl - ret - -.asm_8af4b - ld [hl], $4e - inc hl - ld [hl], $4f - ld bc, $0013 - add hl, bc - ld [hl], $5e - inc hl - ld [hl], $5f - pop hl - ret - -.asm_8af5b - ld [hl], $2 - inc hl - ld [hl], $3 - ld bc, $0013 - add hl, bc - ld [hl], $3 - inc hl - ld [hl], $2 - pop hl - ret -; 8af6b - -SpecialBuenasPassword: ; 8af6b - xor a - ld [wcf76], a - ld hl, MenuDataHeader_0x8afa9 - call CopyMenuDataHeader - ld a, [wdc4a] - ld c, a - callba GetBuenasPassword - ld a, [wcf83] - add c - add $2 - ld [wcf85], a - call Function1c00 - call Function1e5d - callba Function4ae5e - ld b, $0 - ld a, [MenuSelection] - ld c, a - ld a, [wdc4a] - and $3 - cp c - jr nz, .asm_8afa4 - ld b, $1 - -.asm_8afa4 - ld a, b - ld [ScriptVar], a - ret -; 8afa9 - -MenuDataHeader_0x8afa9: ; 0x8afa9 - db $40 ; flags - db 00, 00 ; start coords - db 07, 10 ; end coords - dw MenuData2_0x8afb2 - db 1 ; default option -; 0x8afb1 - - db 0 - -MenuData2_0x8afb2: ; 0x8afb2 - db $81 ; flags - db 0 ; items - dw Unknown_8afb8 - dw Function8afbd -; 0x8afb4 - -Unknown_8afb8: ; 8afb8 - db 3 - db 0, 1, 2 - db -1 - -Function8afbd: ; 8afbd - push de - ld a, [wdc4a] - and $f0 - ld c, a - ld a, [MenuSelection] - add c - ld c, a - callba GetBuenasPassword - pop hl - call PlaceString - ret -; 8afd4 - -SpecialBuenaPrize: ; 8afd4 - xor a - ld [wd0e4], a - ld a, $1 - ld [MenuSelection], a - call Function8b0d6 - call Function8b090 - ld hl, UnknownText_0x8b072 - call PrintText - jr .asm_8aff1 - -.asm_8afeb - ld hl, UnknownText_0x8b072 - call Function105a - -.asm_8aff1 - call DelayFrame - call UpdateSprites - call Function8b097 - call Function8b0e2 - jr z, .asm_8b05f - ld [wcf75], a - call GetBuenaPrize - ld a, [hl] - ld [wd265], a - call GetItemName - ld hl, UnknownText_0x8b077 - call Function105a - call YesNoBox - jr c, .asm_8afeb - ld a, [wcf75] - call GetBuenaPrize - inc hl - ld a, [hld] - ld c, a - ld a, [wdc4b] - cp c - jr c, .asm_8b047 - ld a, [hli] - push hl - ld [CurItem], a - ld a, $1 - ld [wd10c], a - ld hl, NumItems - call ReceiveItem - pop hl - jr nc, .asm_8b04c - ld a, [hl] - ld c, a - ld a, [wdc4b] - sub c - ld [wdc4b], a - call Function8b097 - jr .asm_8b051 - -.asm_8b047 - ld hl, UnknownText_0x8b081 - jr .asm_8b05a - -.asm_8b04c - ld hl, UnknownText_0x8b086 - jr .asm_8b05a - -.asm_8b051 - ld de, SFX_TRANSACTION - call PlaySFX - ld hl, UnknownText_0x8b07c - -.asm_8b05a - call Function105a - jr .asm_8afeb - -.asm_8b05f - call WriteBackup - call WriteBackup - ld hl, UnknownText_0x8b08b - call PrintText - call Functiona36 - call PlayClickSFX - ret -; 8b072 - -UnknownText_0x8b072: ; 0x8b072 - ; Which prize would you like? - text_jump UnknownText_0x1c589f - db "@" -; 0x8b077 - -UnknownText_0x8b077: ; 0x8b077 - ; ? Is that right? - text_jump UnknownText_0x1c58bc - db "@" -; 0x8b07c - -UnknownText_0x8b07c: ; 0x8b07c - ; Here you go! - text_jump UnknownText_0x1c58d1 - db "@" -; 0x8b081 - -UnknownText_0x8b081: ; 0x8b081 - ; You don't have enough points. - text_jump UnknownText_0x1c58e0 - db "@" -; 0x8b086 - -UnknownText_0x8b086: ; 0x8b086 - ; You have no room for it. - text_jump UnknownText_0x1c58ff - db "@" -; 0x8b08b - -UnknownText_0x8b08b: ; 0x8b08b - ; Oh. Please come back again! - text_jump UnknownText_0x1c591a - db "@" -; 0x8b090 - -Function8b090: ; 8b090 - ld hl, MenuDataHeader_0x8b0d1 - call LoadMenuDataHeader - ret -; 8b097 - -Function8b097: ; 8b097 - ld de, wdc4b - call Function8b09e - ret -; 8b09e - -Function8b09e: ; 8b09e - push de - xor a - ld [hBGMapMode], a - ld hl, MenuDataHeader_0x8b0d1 - call CopyMenuDataHeader - call Function1cbb - call UpdateSprites - call Function1cfd - ld bc, $0015 - add hl, bc - ld de, String_8b0ca - call PlaceString - ld h, b - ld l, c - inc hl - ld a, $7f - ld [hli], a - ld [hld], a - pop de - lb bc, 1, 2 - call PrintNum - ret -; 8b0ca - -String_8b0ca: - db "Points@" -; 8b0d1 - -MenuDataHeader_0x8b0d1: ; 0x8b0d1 - db $40 ; flags - db 11, 00 ; start coords - db 13, 11 ; end coords -; 8b0d6 - -Function8b0d6: ; 8b0d6 - ld hl, MenuDataHeader_0x8b0dd - call LoadMenuDataHeader - ret -; 8b0dd - -MenuDataHeader_0x8b0dd: ; 0x8b0dd - db $40 ; flags - db 00, 00 ; start coords - db 11, 17 ; end coords -; 8b0e2 - -Function8b0e2: ; 8b0e2 - ld hl, MenuDataHeader_0x8b113 - call CopyMenuDataHeader - ld a, [MenuSelection] - ld [wcf88], a - xor a - ld [wcf76], a - ld [hBGMapMode], a - call Function352f - call UpdateSprites - call Function350c - ld a, [MenuSelection] - ld c, a - ld a, [wcfa9] - ld [MenuSelection], a - ld a, [wcf73] - cp $2 - jr z, .asm_8b111 - ld a, c - and a - ret nz - -.asm_8b111 - xor a - ret -; 8b113 - -MenuDataHeader_0x8b113: ; 0x8b113 - db $40 ; flags - db 01, 01 ; start coords - db 09, 16 ; end coords - dw MenuData2_0x8b11c - db 1 ; default option -; 0x8b11b - - db 0 - -MenuData2_0x8b11c: ; 0x8b11c - db $10 ; flags - db 4 ; items - db $d, $1 - dbw BANK(Unknown_8b129), Unknown_8b129 - dbw BANK(BuenaPrizeItem), BuenaPrizeItem - dbw BANK(BuenaPrizePoints), BuenaPrizePoints -; 8b129 - -Unknown_8b129: ; 8b129 - db 9 - db 1, 2, 3, 4, 5, 6, 7, 8, 9, $ff -; 8b134 - -BuenaPrizeItem: ; 8b134 - ld a, [MenuSelection] - call GetBuenaPrize - ld a, [hl] - push de - ld [wd265], a - call GetItemName - pop hl - call PlaceString - ret -; 8b147 - -BuenaPrizePoints: ; 8b147 - ld a, [MenuSelection] - call GetBuenaPrize - inc hl - ld a, [hl] - ld c, "0" - add c - ld [de], a - ret -; 8b154 - -GetBuenaPrize: ; 8b154 - dec a - ld hl, BuenaPrizes - ld b, 0 - ld c, a -rept 2 - add hl, bc -endr - ret -; 8b15e - -BuenaPrizes: ; 8b15e - db ULTRA_BALL, 2 - db FULL_RESTORE, 2 - db NUGGET, 3 - db RARE_CANDY, 3 - db PROTEIN, 5 - db IRON, 5 - db CARBOS, 5 - db CALCIUM, 5 - db HP_UP, 5 -; 8b170 - - -INCLUDE "event/dratini.asm" - - -Function8b1e1: ; 8b1e1 - ld de, Unknown_8b1ed - call Function8b25b - ret z - call Function8b231 - scf - ret -; 8b1ed - -Unknown_8b1ed: ; 8b1ed - db 2 - dw Unknown_8b1f2 - dw Unknown_8b1f6 - -Unknown_8b1f2: ; 8b1f2 - dw Function8b2bb - dw Function8b2c1 -; 8b1f6 - -Unknown_8b1f6: ; 8b1f6 - dw UnknownText_0x8b1fc - dw UnknownText_0x8b23d - dw UnknownText_0x8b242 -; 8b1fc - -UnknownText_0x8b1fc: ; 0x8b1fc - ; Excuse me! - text_jump UnknownText_0x1c5937 - db "@" -; 0x8b201 - -CheckForBattleTowerRules: ; 8b201 - ld hl, StringBuffer2 - ld [hl], "3" - inc hl - ld [hl], "@" - ld de, CheckForBattleTowerRules_FunctionsText - call Function8b25b - ret z - call Function8b231 - scf - ret -; 8b215 - -CheckForBattleTowerRules_FunctionsText: ; 8b215 - db 4 - dw CheckForBattleTowerRules_Functions - dw CheckForBattleTowerRules_Text - -CheckForBattleTowerRules_Functions: ; 8b21a - dw Function_PartyCountEq3 - dw Function8b2e2 - dw Function8b32a - dw Function_HasPartyAnEgg -; 8b222 - -CheckForBattleTowerRules_Text: ; 8b222 - dw JumpText_ExcuseMeYoureNotReady - dw JumbText_OnlyThreePkmnMayBeEntered - dw JumpText_ThePkmnMustAllBeDifferentKinds - dw JumpText_ThePkmnMustNotHoldTheSameItems - dw JumpText_YouCantTakeAnEgg -; 8b22c - -JumpText_ExcuseMeYoureNotReady: ; 0x8b22c - ; Excuse me. You're not ready. - text_jump Text_ExcuseMeYoureNotReady - db "@" -; 0x8b231 - -Function8b231: ; 8b231 - ld hl, UnknownText_0x8b238 - call PrintText - ret -; 8b238 - -UnknownText_0x8b238: ; 0x8b238 - ; Please return when you're ready. - text_jump UnknownText_0x1c5962 - db "@" -; 0x8b23d - -UnknownText_0x8b23d: ; 0x8b23d - ; You need at least three #MON. - text_jump UnknownText_0x1c5983 - db "@" -; 0x8b242 - -UnknownText_0x8b242: ; 0x8b242 - ; Sorry, an EGG doesn't qualify. - text_jump UnknownText_0x1c59a3 - db "@" -; 0x8b247 - -JumbText_OnlyThreePkmnMayBeEntered: ; 0x8b247 - ; Only three #MON may be entered. - text_jump Text_OnlyThreePkmnMayBeEntered - db "@" -; 0x8b24c - -JumpText_ThePkmnMustAllBeDifferentKinds: ; 0x8b24c - ; The @ #MON must all be different kinds. - text_jump Text_ThePkmnMustAllBeDifferentKinds - db "@" -; 0x8b251 - -JumpText_ThePkmnMustNotHoldTheSameItems: ; 0x8b251 - ; The @ #MON must not hold the same items. - text_jump Text_ThePkmnMustNotHoldTheSameItems - db "@" -; 0x8b256 - -JumpText_YouCantTakeAnEgg: ; 0x8b256 - ; You can't take an EGG! - text_jump Text_YouCantTakeAnEgg - db "@" -; 0x8b25b - -Function8b25b: ; 8b25b - ld bc, $0000 -.asm_8b25e - call Function8b26c - call c, Function8b28e - call Function8b276 - jr nz, .asm_8b25e - ld a, b - and a - ret -; 8b26c - -Function8b26c: ; 8b26c - push de - push bc - call Function8b27a - ld a, c - rst JumpTable - pop bc - pop de - ret -; 8b276 - -Function8b276: ; 8b276 - inc c - ld a, [de] - cp c - ret -; 8b27a - -Function8b27a: ; 8b27a - inc de - ld a, [de] - ld l, a - inc de - ld a, [de] - ld h, a - ret -; 8b281 - -Function8b281: ; 8b281 -rept 3 - inc de -endr - ld a, [de] - ld l, a - inc de - ld a, [de] - ld h, a - ret -; 8b28a - -Function8b28a: ; 8b28a - ld a, [hli] - ld h, [hl] - ld l, a - ret -; 8b28e - -Function8b28e: ; 8b28e - push de - push bc - ld a, b - and a - call z, Function8b29d - pop bc - call Function8b2a9 - ld b, $1 - pop de - ret -; 8b29d - -Function8b29d: ; 8b29d - push de - call Function8b281 - call Function8b28a - call PrintText - pop de - ret -; 8b2a9 - -Function8b2a9: ; 8b2a9 - push bc - call Function8b281 -rept 2 - inc hl -endr - ld b, $0 -rept 2 - add hl, bc -endr - call Function8b28a - call PrintText - pop bc - ret -; 8b2bb - -Function8b2bb: ; 8b2bb - ld a, [PartyCount] - cp 3 - ret -; 8b2c1 - -Function8b2c1: ; 8b2c1 - ld hl, PartyCount - ld a, [hli] - ld b, $0 - ld c, a -.asm_8b2c8 - ld a, [hli] - cp EGG - jr z, .asm_8b2ce - inc b - -.asm_8b2ce - dec c - jr nz, .asm_8b2c8 - ld a, [PartyCount] - cp b - ret z - ld a, b - cp 3 - ret -; 8b2da - -Function_PartyCountEq3: ; 8b2da - ld a, [PartyCount] - cp 3 - ret z - scf - ret -; 8b2e2 - -Function8b2e2: ; 8b2e2 - ld hl, PartyMon1Species - call Function8b2e9 - ret -; 8b2e9 - -Function8b2e9: ; 8b2e9 - ld de, PartyCount - ld a, [de] - inc de - dec a - jr z, .asm_8b314 - ld b, a -.asm_8b2f2 - push hl - push de - ld c, b - call Function8b322 - jr z, .asm_8b30c - ld a, [hl] - and a - jr z, .asm_8b30c -.asm_8b2fe - call Function8b31a - call Function8b322 - jr z, .asm_8b309 - cp [hl] - jr z, .asm_8b316 - -.asm_8b309 - dec c - jr nz, .asm_8b2fe - -.asm_8b30c - pop de - pop hl - call Function8b31a - dec b - jr nz, .asm_8b2f2 - -.asm_8b314 - and a - ret - -.asm_8b316 - pop de - pop hl - scf - ret -; 8b31a - -Function8b31a: ; 8b31a - push bc - ld bc, PartyMon2 - PartyMon1 - add hl, bc - inc de - pop bc - ret -; 8b322 - -Function8b322: ; 8b322 - push bc - ld b, a - ld a, [de] - cp EGG - ld a, b - pop bc - ret -; 8b32a - -Function8b32a: ; 8b32a - ld hl, PartyMon1Item - call Function8b2e9 - ret -; 8b331 - -Function_HasPartyAnEgg: ; 8b331 - ld hl, PartyCount - ld a, [hli] - ld c, a -.asm_8b336 - ld a, [hli] - cp EGG - jr z, .asm_8b340 - dec c - jr nz, .asm_8b336 - and a - ret - -.asm_8b340 - scf - ret -; 8b342 - - -Function8b342:: ; 8b342 - call GetSecondaryMapHeaderPointer - ld d, h - ld e, l - xor a -.asm_8b348 - push af - ld hl, Jumptable_8b354 - rst JumpTable - pop af - inc a - cp 3 - jr nz, .asm_8b348 - ret -; 8b354 - -Jumptable_8b354: ; 8b354 - dw Function8b35a - dw Function8b35b - dw Function8b35c -; 8b35a - -Function8b35a: ; 8b35a - ret -; 8b35b - -Function8b35b: ; 8b35b - ret -; 8b35c - -Function8b35c: ; 8b35c - ret -; 8b35d - -Function8b35d: ; 8b35d - ld a, h - cp d - ret nz - ld a, l - cp e - ret -; 8b363 - -Function8b363: ; 8b363 - push bc - callba Function10632f - pop bc - ret -; 8b36c - -Function8b36c: ; 8b36c (22:736c) - push bc - ld h, b - ld l, c - ld bc, $4 - ld a, $ff - call ByteFill - pop bc - ret - -Function8b379: ; 8b379 (22:7379) - push bc - ld a, c - add e - ld c, a - ld a, $0 - adc b - ld b, a - ld a, [bc] - ld d, a - pop bc - ret - -Function8b385: ; 8b385 (22:7385) - push bc - ld a, c - add e - ld c, a - ld a, $0 - adc b - ld b, a - ld a, d - ld [bc], a - pop bc - ret - -Function8b391: ; 8b391 (22:7391) - push bc - ld e, $0 - ld d, $4 -.asm_8b396 - ld a, [bc] - inc bc - cp $ff - jr z, .asm_8b3a2 - inc e - dec d - jr nz, .asm_8b396 - dec e - scf -.asm_8b3a2 - pop bc - ret - -Function8b3a4: ; 8b3a4 (22:73a4) - push de - push bc - ld d, b - ld e, c - ld c, $4 - call Function89185 - pop bc - pop de - ret - -Function8b3b0: ; 8b3b0 (22:73b0) - ld bc, $a037 - ld a, [$a60b] - and a - jr z, .asm_8b3c2 - cp $3 - jr nc, .asm_8b3c2 - call Function8b391 - jr c, .asm_8b3c9 -.asm_8b3c2 - call Function8b36c - xor a - ld [$a60b], a -.asm_8b3c9 - ld a, [$a60b] - ret - -Function8b3cd: ; 8b3cd (22:73cd) - push de - push bc - ld e, $4 -.asm_8b3d1 - ld a, [bc] - inc bc - call Function8998b - inc hl - dec e - jr nz, .asm_8b3d1 - pop bc - pop de - ret - -Function8b3dd: ; 8b3dd (22:73dd) - push de - push bc - call Function354b - ld a, c - pop bc - pop de - bit 0, a - jr nz, .asm_8b3f7 - bit 1, a - jr nz, .asm_8b40e - bit 6, a - jr nz, .asm_8b429 - bit 7, a - jr nz, .asm_8b443 - and a - ret -.asm_8b3f7 - ld a, e - cp $3 - jr z, .asm_8b407 - inc e - ld d, $0 - call Function8b385 - xor a - ld [wd010], a - ret -.asm_8b407 - call PlayClickSFX - ld d, $0 - scf - ret -.asm_8b40e - ld a, e - and a - jr nz, .asm_8b41e - call PlayClickSFX - ld d, $ff - call Function8b385 - ld d, $1 - scf - ret -.asm_8b41e - ld d, $ff - call Function8b385 - dec e - xor a - ld [wd010], a - ret -.asm_8b429 - call Function8b379 - ld a, d - cp $a - jr c, .asm_8b433 - ld d, $9 -.asm_8b433 - inc d - ld a, d - cp $a - jr c, .asm_8b43b - ld d, $0 -.asm_8b43b - call Function8b385 - xor a - ld [wd010], a - ret -.asm_8b443 - call Function8b379 - ld a, d - cp $a - jr c, .asm_8b44d - ld d, $0 -.asm_8b44d - ld a, d - dec d - and a - jr nz, .asm_8b454 - ld d, $9 -.asm_8b454 - call Function8b385 - xor a - ld [wd010], a - ret - -Function8b45c: ; 8b45c (22:745c) - call Function8b36c - xor a - ld [wd010], a - ld [wd012], a - call Function8b391 - ld d, $0 - call Function8b385 -.asm_8b46e - call Function8923c - call Function8b493 - call Function8b4cc - call Function8b518 - call Function89b78 - push bc - call Function8b4fd - call Function89c44 - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - pop bc - call Function8b3dd - jr nc, .asm_8b46e - ld a, d - and a - ret z - scf - ret - -Function8b493: ; 8b493 (22:7493) - push bc - call Function8923c - call Function8b521 - ld hl, Jumptable_8b4a0 - pop bc - rst JumpTable - ret - -Jumptable_8b4a0: ; 8b4a0 (22:74a0) - dw Function8b4a4 - dw Function8b4b8 - - -Function8b4a4: ; 8b4a4 (22:74a4) - push bc - push de - call Function8b4d8 - call TextBox - pop de - pop bc - call Function8b4cc - call Function8b518 - call Function8b3cd - ret - -Function8b4b8: ; 8b4b8 (22:74b8) - push bc - push de - call Function8b4ea - call Function89b3b - pop de - pop bc - call Function8b4cc - call Function8b518 - call Function8b3cd - ret - -Function8b4cc: ; 8b4cc (22:74cc) - push bc - ld hl, Unknown_8b529 - call Function8b50a - ld a, [hli] - ld h, [hl] - ld l, a - pop bc - ret - -Function8b4d8: ; 8b4d8 (22:74d8) - ld hl, Unknown_8b529 - call Function8b50a - push hl -rept 2 - inc hl -endr - ld a, [hli] - ld b, a - ld a, [hl] - ld c, a - pop hl - ld a, [hli] - ld h, [hl] - ld l, a - ret - -Function8b4ea: ; 8b4ea (22:74ea) - ld hl, Unknown_8b529 - call Function8b50a - push hl -rept 2 - inc hl -endr - ld a, [hli] - ld b, a - ld a, [hl] - ld c, a - pop hl - ld a, [hli] - ld e, a - ld a, [hl] - ld d, a - ret - -Function8b4fd: ; 8b4fd (22:74fd) - ld hl, Unknown_8b529 + 4 - call Function8b50a - ld a, [hli] - ld c, a - ld a, [hli] - ld b, a - ld a, [hli] - ld d, a - ret - -Function8b50a: ; 8b50a (22:750a) - ld a, [wd02e] - and a - ret z - ld b, $0 - ld c, $8 -.asm_8b513 - add hl, bc - dec a - jr nz, .asm_8b513 - ret - -Function8b518: ; 8b518 (22:7518) - push de - ld d, $0 - ld e, $14 - add hl, de - inc hl - pop de - ret - -Function8b521: ; 8b521 (22:7521) - ld hl, Unknown_8b529 + 7 - call Function8b50a - ld a, [hl] - ret -; 8b529 (22:7529) - -Unknown_8b529: ; 8b529 - dwcoord 2, 5 - db 1, 4, $20, $49, 0, 1 - dwcoord 7, 4 - db 1, 4, $48, $41, 0, 0 -; 8b539 - -Function8b539: ; 8b539 (22:7539) - ld bc, wd017 - call Function8b36c - xor a - ld [wd012], a - ld [wd02e], a - call Function8b493 - call Function8b4fd - ld e, $0 - call Function89c44 - call Function3238 - ret - -Function8b555: ; 8b555 (22:7555) - ld hl, UnknownText_0x8b5ce - call PrintText - ld bc, wd017 - call Function8b45c - jr c, .asm_8b5c8 - call Function89448 - ld bc, wd017 - call Function8b493 - ld bc, wd017 - call Function8b664 - jr nz, .asm_8b57c - ld hl, UnknownText_0x8b5e2 - call PrintText - jr Function8b555 -.asm_8b57c - ld hl, UnknownText_0x8b5d3 - call PrintText - ld bc, wd013 - call Function8b45c - jr c, Function8b555 - ld bc, wd017 - ld hl, wd013 - call Function8b3a4 - jr z, .asm_8b5a6 - call Function89448 - ld bc, wd013 - call Function8b493 - ld hl, UnknownText_0x8b5d8 - call PrintText - jr .asm_8b57c -.asm_8b5a6 - call Function89160 - ld hl, wd013 - ld de, $a037 - ld bc, $4 - call CopyBytes - call CloseSRAM - call Function89448 - ld bc, wd013 - call Function8b493 - ld hl, UnknownText_0x8b5dd - call PrintText - and a -.asm_8b5c8 - push af - call Function89448 - pop af - ret -; 8b5ce (22:75ce) - -UnknownText_0x8b5ce: ; 0x8b5ce - ; Please enter any four-digit number. - text_jump UnknownText_0x1bc187 - db "@" -; 0x8b5d3 - -UnknownText_0x8b5d3: ; 0x8b5d3 - ; Enter the same number to confirm. - text_jump UnknownText_0x1bc1ac - db "@" -; 0x8b5d8 - -UnknownText_0x8b5d8: ; 0x8b5d8 - ; That's not the same number. - text_jump UnknownText_0x1bc1cf - db "@" -; 0x8b5dd - -UnknownText_0x8b5dd: ; 0x8b5dd - ; Your PASSCODE has been set. Enter this number next time to open the CARD FOLDER. - text_jump UnknownText_0x1bc1eb - db "@" -; 0x8b5e2 - -UnknownText_0x8b5e2: ; 0x8b5e2 - ; 0000 is invalid! - text_jump UnknownText_0x1bc23e - db "@" -; 0x8b5e7 - -Function8b5e7: ; 8b5e7 (22:75e7) - ld bc, wd013 - call Function8b36c - xor a - ld [wd012], a - ld [wd02e], a - call Function8b493 - call Function891ab - call Function8b4fd - ld e, $0 - call Function89c44 -.asm_8b602 - ld hl, UnknownText_0x8b642 - call PrintText - ld bc, wd013 - call Function8b45c - jr c, .asm_8b63c - call Function89448 - ld bc, wd013 - call Function8b493 - call Function89160 - ld hl, $a037 - call Function8b3a4 - call CloseSRAM - jr z, .asm_8b635 - ld hl, UnknownText_0x8b647 - call PrintText - ld bc, wd013 - call Function8b36c - jr .asm_8b602 -.asm_8b635 - ld hl, UnknownText_0x8b64c - call PrintText - and a -.asm_8b63c - push af - call Function89448 - pop af - ret -; 8b642 (22:7642) - -UnknownText_0x8b642: ; 0x8b642 - ; Enter the CARD FOLDER PASSCODE. - text_jump UnknownText_0x1bc251 - db "@" -; 0x8b647 - -UnknownText_0x8b647: ; 0x8b647 - ; Incorrect PASSCODE! - text_jump UnknownText_0x1bc272 - db "@" -; 0x8b64c - -UnknownText_0x8b64c: ; 0x8b64c - ; CARD FOLDER open.@ @ - text_jump UnknownText_0x1bc288 - start_asm -; 0x8b651 - -Function8b651: ; 8b651 - ld de, SFX_TWINKLE - call PlaySFX - call WaitSFX - ld c, $8 - call DelayFrames - ld hl, .string_8b663 - ret -.string_8b663 - db "@" -; 8b664 - -Function8b664: ; 8b664 (22:7664) - push bc - ld de, $4 -.asm_8b668 - ld a, [bc] - cp $0 - jr nz, .asm_8b66e - inc d -.asm_8b66e - inc bc - dec e - jr nz, .asm_8b668 - pop bc - ld a, d - cp $4 - ret - -Function8b677: ; 8b677 - call WhiteBGMap - call DisableLCD - call Function8b690 - call Function8b6bb - call Function8b6ed - call EnableLCD - call Function891ab - call Function32f9 - ret -; 8b690 - -Function8b690: ; 8b690 - ld hl, GFX_17afa5 + $514 - ld de, VTiles2 - ld bc, $160 - ld a, BANK(GFX_17afa5) - call FarCopyBytes - ld hl, GFX_17afa5 + $514 + $160 - $10 - ld de, VTiles2 tile $61 - ld bc, $10 - ld a, BANK(GFX_17afa5) - call FarCopyBytes - ld hl, GFX_17afa5 + $514 + $160 - ld de, VTiles1 tile $6e - ld bc, $10 - ld a, BANK(GFX_17afa5) - call FarCopyBytes - ret -; 8b6bb - -Function8b6bb: ; 8b6bb - ld a, [rSVBK] - push af - ld a, $5 - ld [rSVBK], a - ld hl, Palette_8b6d5 - ld de, Unkn1Pals - ld bc, $0018 - call CopyBytes - pop af - ld [rSVBK], a - call Function8949c + dec a + call Function1db8 + call WriteBackup ret -; 8b6d5 +; 882b5 -Palette_8b6d5: ; 8b6d5 - RGB 31, 31, 31 - RGB 31, 21, 00 - RGB 14, 07, 03 - RGB 00, 00, 00 - RGB 31, 31, 31 - RGB 31, 21, 00 - RGB 22, 09, 17 - RGB 00, 00, 00 - RGB 31, 31, 31 - RGB 31, 21, 00 - RGB 06, 24, 08 - RGB 00, 00, 00 -; 8b6ed +ChrisNameMenuHeader: ; 882b5 + db $40 ; flags + db 00, 00 ; start coords + db 11, 10 ; end coords + dw MenuData2_0x882be + db 1 ; ???? + db 0 ; default option +; 882be -Function8b6ed: ; 8b6ed - hlcoord 0, 0, AttrMap - ld bc, $012c - xor a - call ByteFill - hlcoord 0, 14, AttrMap - ld bc, $0050 - ld a, $7 - call ByteFill - ret -; 8b703 +MenuData2_0x882be: ; 882be + db $91 ; flags + db 5 ; items + db "NEW NAME@" +Unknown_882c9: ; 882c9 + db "CHRIS@" + db "MAT@" + db "ALLAN@" + db "JON@" + db 2 ; displacement + db " NAME @" ; title +; 882e5 -Function8b703: ; 8b703 - call Function8923c - push hl - ld a, $c - ld [hli], a - inc a - call Function8b73e - inc a - ld [hl], a - pop hl - push hl - push bc - ld de, SCREEN_WIDTH - add hl, de -.asm_8b717 - push hl - ld a, $f - ld [hli], a - ld a, $7f - call Function8b73e - ld a, $11 - ld [hl], a - pop hl - ld de, SCREEN_WIDTH - add hl, de - dec b - jr nz, .asm_8b717 - call Function8b732 - pop bc - pop hl - jr Function8b744 -; 8b732 +KrisNameMenuHeader: ; 882e5 + db $40 ; flags + db 00, 00 ; start coords + db 11, 10 ; end coords + dw MenuData2_0x882ee + db 1 ; ???? + db 0 ; default option +; 882ee -Function8b732: ; 8b732 - ld a, $12 - ld [hli], a - ld a, $13 - call Function8b73e - ld a, $14 - ld [hl], a - ret -; 8b73e +MenuData2_0x882ee: ; 882ee + db $91 ; flags + db 5 ; items + db "NEW NAME@" +Unknown_882f9: ; 882f9 + db "KRIS@" + db "AMANDA@" + db "JUANA@" + db "JODI@" + db 2 ; displacement + db " NAME @" ; title +; 88318 -Function8b73e: ; 8b73e - ld d, c -.asm_8b73f - ld [hli], a - dec d - jr nz, .asm_8b73f - ret -; 8b744 +GetPlayerNameArray: ; 88318 This Function is never called + ld hl, PlayerName + ld de, Unknown_882c9 + ld a, [PlayerGender] + bit 0, a + jr z, .done + ld de, Unknown_882f9 -Function8b744: ; 8b744 - ld de, AttrMap - TileMap - add hl, de -rept 2 - inc b -endr -rept 2 - inc c -endr - xor a -.asm_8b74d - push bc - push hl -.asm_8b74f - ld [hli], a - dec c - jr nz, .asm_8b74f - pop hl - ld de, SCREEN_WIDTH - add hl, de - pop bc - dec b - jr nz, .asm_8b74d +.done + call InitName ret -; 8b75d +; 8832c -Function8b75d: ; 8b75d - call Function8923c - hlcoord 0, 0 - ld a, $1 - ld bc, SCREEN_WIDTH - call ByteFill - hlcoord 0, 1 - ld a, $2 - ld [hl], a - hlcoord 9, 1 - ld c, $b - call Function8b788 - hlcoord 1, 1 - ld a, $4 - ld e, $8 -.asm_8b780 - ld [hli], a - inc a - dec e - jr nz, .asm_8b780 - jr Function8b79e -; 8b787 +GetPlayerIcon: ; 8832c +; Get the player icon corresponding to gender -Function8b787: ; 8b787 - ret -; 8b788 +; Male + ld de, ChrisSpriteGFX + ld b, BANK(ChrisSpriteGFX) -Function8b788: ; 8b788 -.asm_8b788 - ld a, $2 - ld [hli], a - dec c - ret z - ld a, $1 - ld [hli], a - dec c - ret z - ld a, $3 - ld [hli], a - dec c - ret z - ld a, $1 - ld [hli], a - dec c - jr nz, .asm_8b788 - ret -; 8b79e + ld a, [PlayerGender] + bit 0, a + jr z, .done -Function8b79e: ; 8b79e - hlcoord 0, 1, AttrMap - ld a, $1 - ld [hli], a - hlcoord 9, 1, AttrMap - ld e, $b -.asm_8b7a9 - ld a, $2 - ld [hli], a - dec e - ret z - xor a - ld [hli], a - dec e - ret z - ld a, $1 - ld [hli], a - dec e - ret z - xor a - ld [hli], a - dec e - jr nz, .asm_8b7a9 - ret -; 8b7bd +; Female + ld de, KrisSpriteGFX + ld b, BANK(KrisSpriteGFX) -Function8b7bd: ; 8b7bd - call Function8b855 - ld hl, MenuDataHeader_0x8b867 - call CopyMenuDataHeader - ld a, [wd030] - ld [wcf88], a - ld a, [wd031] - ld [wd0e4], a - ld a, [wd032] - and a - jr z, .asm_8b7e0 - ld a, [wcf81] - set 3, a - ld [wcf81], a +.done + ret +; 8833e -.asm_8b7e0 - ld a, [wd0e3] - and a - jr z, .asm_8b7ea - dec a - ld [wcf77], a +Function8833e: ; 8833e + ld hl, ChrisCardPic + ld a, [PlayerGender] + bit 0, a + jr z, .GotClass + ld hl, KrisCardPic +.GotClass + ld de, VTiles2 tile $00 + ld bc, $230 + ld a, BANK(ChrisCardPic) ; BANK(KrisCardPic) + call FarCopyBytes + ld hl, CardGFX + ld de, VTiles2 tile $23 + ld bc, $60 + ld a, BANK(CardGFX) + call FarCopyBytes + ret +; 88365 (22:4365) -.asm_8b7ea - hlcoord 0, 2 - ld b, $b - ld c, $12 - call Function8b703 - call Function8b75d - call UpdateSprites - call Function89209 - call Function350c - call Function8920f - ld a, [wcf73] - cp $2 - jr z, .asm_8b823 - cp $20 - jr nz, .asm_8b813 - call Function8b832 - jr .asm_8b7ea +ChrisCardPic: ; 88365 +INCBIN "gfx/misc/chris_card.5x7.2bpp" +; 88595 -.asm_8b813 - cp $10 - jr nz, .asm_8b81c - call Function8b83e - jr .asm_8b7ea +KrisCardPic: ; 88595 +INCBIN "gfx/misc/kris_card.5x7.2bpp" +; 887c5 -.asm_8b81c - ld a, [MenuSelection] - cp $ff - jr nz, .asm_8b824 +CardGFX: ; 887c5 +INCBIN "gfx/misc/trainer_card.2bpp" +; 88825 -.asm_8b823 - xor a -.asm_8b824 - ld c, a - ld a, [wcfa9] - ld [wd030], a - ld a, [wd0e4] - ld [wd031], a +GetPlayerBackpic: ; 88825 + ld a, [PlayerGender] + bit 0, a + jr z, GetChrisBackpic + call GetKrisBackpic ret -; 8b832 -Function8b832: ; 8b832 - ld a, [wd0e4] - ld hl, wcf92 - sub [hl] - jr nc, Function8b84b - xor a - jr Function8b84b -; 8b83e - -Function8b83e: ; 8b83e - ld a, [wd0e4] - ld hl, wcf92 - add [hl] - cp $24 - jr c, Function8b84b - ld a, $24 - -Function8b84b: ; 8b84b - ld [wd0e4], a - ld a, [wcfa9] - ld [wcf88], a +GetChrisBackpic: ; 88830 + ld hl, ChrisBackpic + ld b, BANK(ChrisBackpic) + ld de, VTiles2 tile $31 + ld c, 7 * 7 + predef DecompressPredef ret -; 8b855 +; 88840 -Function8b855: ; 8b855 - ld a, $28 - ld hl, DefaultFlypoint - ld [hli], a - ld c, $28 +Function88840: ; 88840 + call WaitBGMap xor a -.asm_8b85e - inc a - ld [hli], a - dec c - jr nz, .asm_8b85e - ld a, $ff - ld [hl], a - ret -; 8b867 - -MenuDataHeader_0x8b867: ; 0x8b867 - db $40 ; flags - db 03, 01 ; start coords - db 13, 18 ; end coords - dw MenuData2_0x8b870 - db 1 ; default option -; 0x8b86f - - db 0 - -MenuData2_0x8b870: ; 0x8b870 - db $3c ; flags - db 5 ; items - db 3, 1 - dbw 0, wd002 - dbw BANK(Function8b880), Function8b880 - dbw BANK(Function8b88c), Function8b88c - dbw BANK(Function8b8c8), Function8b8c8 -; 8b880 - -Function8b880: ; 8b880 - ld h, d - ld l, e - ld de, MenuSelection - lb bc, PRINTNUM_LEADINGZEROS | 1, 2 - call PrintNum - ret -; 8b88c - -Function8b88c: ; 8b88c - call Function89160 - ld h, d - ld l, e - push hl - ld de, String_89116 - call Function8931b - call Function8932d - jr c, .asm_8b8a3 - ld hl, $0000 - add hl, bc - ld d, h - ld e, l + ld [hBGMapMode], a + ld e, 0 + ld a, [PlayerGender] + bit 0, a + jr z, .GotClass + ld e, 1 -.asm_8b8a3 - pop hl - push hl - call PlaceString - pop hl - ld d, $0 - ld e, $6 - add hl, de - push hl - ld de, String_89116 - call Function8931b - call Function8934a - jr c, .asm_8b8c0 - ld hl, $0006 - add hl, bc - ld d, h - ld e, l +.GotClass + ld a, e + ld [TrainerClass], a + ld de, ChrisPic + ld a, [PlayerGender] + bit 0, a + jr z, .GotPic + ld de, KrisPic -.asm_8b8c0 - pop hl - call PlaceString - call CloseSRAM +.GotPic + ld hl, VTiles2 + ld b, BANK(ChrisPic) ; BANK(KrisPic) + ld c, 7 * 7 + call Get2bpp + call WaitBGMap + ld a, $1 + ld [hBGMapMode], a ret -; 8b8c8 +; 88874 -Function8b8c8: ; 8b8c8 - hlcoord 0, 14 - ld b, $2 - ld c, $12 - call TextBox - ld a, [wd033] - ld b, 0 - ld c, a - ld hl, Unknown_8b903 -rept 2 - add hl, bc -endr - ld a, [hli] - ld h, [hl] - ld l, a - ld d, h - ld e, l - hlcoord 1, 16 - call PlaceString - hlcoord 0, 13 - ld a, $f - ld [hl], a - hlcoord 19, 13 - ld a, $11 - ld [hl], a - ld a, [wd0e4] - cp $24 - ret c - hlcoord 0, 13 - ld c, $12 - call Function8b732 - ret -; 8b903 -Unknown_8b903: ; 8b903 - dw String_8b90b - dw String_8b919 - dw String_8b92a - dw String_8b938 -String_8b90b: db "めいしを えらんでください@" ; Please select a noun. -String_8b919: db "どの めいしと いれかえますか?@" ; OK to swap with any noun? -String_8b92a: db "あいてを えらんでください@" ; Please select an opponent. -String_8b938: db "いれる ところを えらんでください@" ; Please select a location. -; 8b94a +DrawIntroPlayerPic: ; 88874 +; Draw the player pic at (6,4). -Function8b94a: ; 8b94a - ld [wd033], a - xor a - ld [wd0e4], a - ld [wd032], a - ld [wd0e3], a - ld [wd031], a - ld a, $1 - ld [wd030], a - ret -; 8b960 +; Get class + ld e, 0 + ld a, [PlayerGender] + bit 0, a + jr z, .GotClass + ld e, 1 +.GotClass + ld a, e + ld [TrainerClass], a +; Load pic + ld de, ChrisPic + ld a, [PlayerGender] + bit 0, a + jr z, .GotPic + ld de, KrisPic +.GotPic + ld hl, VTiles2 + ld b, BANK(ChrisPic) ; BANK(KrisPic) + ld c, 7 * 7 ; dimensions + call Get2bpp -Function8b960: ; 8b960 (22:7960) - ld hl, MenuDataHeader_0x8b9ac - call LoadMenuDataHeader - call Function8b9e9 - jr c, .asm_8b97a - hlcoord 11, 0 - ld b, $6 - ld c, $7 - call Function8b703 - ld hl, MenuDataHeader_0x8b9b1 - jr .asm_8b987 -.asm_8b97a - hlcoord 11, 0 - ld b, $a - ld c, $7 - call Function8b703 - ld hl, MenuDataHeader_0x8b9ca -.asm_8b987 - ld a, $1 - call Function89d5e - ld hl, Function8b9ab - call Function89d85 - call ExitMenu - jr c, .asm_8b99c - call Function8b99f - jr nz, .asm_8b99d -.asm_8b99c +; Draw xor a -.asm_8b99d - ld c, a + ld [$ffad], a + hlcoord 6, 4 + lb bc, 7, 7 + predef FillBox ret +; 888a9 -Function8b99f: ; 8b99f (22:799f) - ld hl, DefaultFlypoint - dec a - ld c, a - ld b, $0 - add hl, bc - ld a, [hl] - cp $ff - ret -; 8b9ab (22:79ab) -Function8b9ab: ; 8b9ab - ret -; 8b9ac +ChrisPic: ; 888a9 +INCBIN "gfx/misc/chris.7x7.2bpp" +; 88bb9 -MenuDataHeader_0x8b9ac: ; 0x8b9ac - db $40 ; flags - db 00, 11 ; start coords - db 11, 19 ; end coords +KrisPic: ; 88bb9 +INCBIN "gfx/misc/kris.7x7.2bpp" +; 88ec9 -MenuDataHeader_0x8b9b1: ; 0x8b9b1 - db $40 ; flags - db 00, 11 ; start coords - db 07, 19 ; end coords - dw MenuData2_0x8b9b9 - db 1 ; default option -; 0x8b9b9 -MenuData2_0x8b9b9: ; 0x8b9b9 - db $a0 ; flags - db 3 ; items - db "へんしゅう@" ; EDIT - db "いれかえ@" ; REPLACE - db "やめる@" ; QUIT -; 0x8b9ca +GetKrisBackpic: ; 88ec9 +; Kris's backpic is uncompressed. + ld de, KrisBackpic + ld hl, VTiles2 tile $31 + lb bc, BANK(KrisBackpic), 7 * 7 ; dimensions + call Get2bpp + ret +; 88ed6 -MenuDataHeader_0x8b9ca: ; 0x8b9ca - db $40 ; flags - db 00, 11 ; start coords - db 11, 19 ; end coords - dw MenuData2_0x8b9d2 - db 1 ; default option -; 0x8b9d2 +KrisBackpic: ; 88ed6 +INCBIN "gfx/misc/kris_back.6x6.2bpp" +; 89116 -MenuData2_0x8b9d2: ; 0x8b9d2 - db $a0 ; flags - db 5 ; items - db "みる@" ; VIEW - db "へんしゅう@" ; EDIT - db "いれかえ@" ; REPLACE - db "けす@" ; ERASE - db "やめる@" ; QUIT -; 0x8b9e9 - -Function8b9e9: ; 8b9e9 (22:79e9) - call Function89160 - call Function8931b - call Function8932d - jr nc, .asm_8b9f6 - jr .asm_8b9ff -.asm_8b9f6 - ld hl, $11 - add hl, bc - call Function89b45 - jr c, .asm_8ba08 -.asm_8b9ff - call Function892b4 - and a - ld de, Unknown_8ba1c - jr .asm_8ba0c -.asm_8ba08 - ld de, Unknown_8ba1f - scf -.asm_8ba0c - push af - ld hl, DefaultFlypoint -.asm_8ba10 - ld a, [de] - inc de - ld [hli], a - cp $ff - jr nz, .asm_8ba10 - call CloseSRAM - pop af - ret -; 8ba1c (22:7a1c) -Unknown_8ba1c: ; 8b1ac - db 2, 4, -1 +String_89116: + db "-----@" +; 8911c -Unknown_8ba1f: ; 8ba1f - db 1, 2, 4, 3, -1 -; 8ba24 +INCLUDE "misc/mobile_22.asm" +INCLUDE "event/unown.asm" +INCLUDE "event/buena.asm" +INCLUDE "event/dratini.asm" +INCLUDE "event/battle_tower.asm" +INCLUDE "misc/mobile_22_2.asm" SECTION "bank23", ROMX, BANK[$23] -Function8c000: ; 8c000 -Function8c000_2: +Predef35: ; 8c000 +Predef36: ret ; 8c001 @@ -61303,7 +54337,7 @@ _TimeOfDayPals:: ; 8c011 ; restore bg palette 8 - ld hl, wd03f ; last byte in Unkn1Pals + ld hl, Unkn2Pals - 1 ; last byte in Unkn1Pals ; save wram bank ld a, [rSVBK] @@ -62185,7 +55219,7 @@ Function8c5dc: ; 8c5dc (23:45dc) xor a ld [hBGMapMode], a ; $ff00+$d4 hlcoord 0, 0, AttrMap - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH inc b inc c jr .asm_8c5f4 @@ -66427,7 +59461,7 @@ Function8e862: ; 8e862 (23:6862) Function8e86c: ; 8e86c (23:686c) push bc - ld a, [$ffb0] + ld a, [hConnectedMapWidth] ld hl, PartyMon1Item ld bc, PartyMon2 - PartyMon1 call AddNTimes @@ -66499,7 +59533,7 @@ Function8e8d5: ; 8e8d5 (23:68d5) Function8e8df: ; 8e8df (23:68df) push bc - ld a, [$ffb0] + ld a, [hConnectedMapWidth] ld hl, PartyMon1Item ld bc, $30 call AddNTimes @@ -66527,7 +59561,7 @@ Function8e8df: ; 8e8df (23:68df) Function8e908: ; 8e908 (23:6908) ld a, [wc3b7] push af - ld a, [$ffb0] + ld a, [hConnectedMapWidth] ld hl, PartySpecies ld e, a ld d, $0 @@ -66536,7 +59570,7 @@ Function8e908: ; 8e908 (23:6908) call ReadMonMenuIcon ld [CurIcon], a call Function8e9db - ld a, [$ffb0] + ld a, [hConnectedMapWidth] rept 4 add a endr @@ -66553,7 +59587,7 @@ endr Function8e936: ; 8e936 (23:6936) push bc - ld a, [$ffb0] + ld a, [hConnectedMapWidth] ld b, a call Function8e94c ld a, b @@ -67685,10 +60719,10 @@ UnknownText_0x9066d: ; 0x9066d ; 0x90672 Function90672: ; 90672 (24:4672) - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a ld a, $0 ld [wc2ce], a ld a, $10 @@ -67791,14 +60825,14 @@ Function90672: ; 90672 (24:4672) call PrintText call Functiona80 pop af - ld [$ffaa], a + ld [hInMenu], a ret Function90783: ; 90783 (24:4783) xor a ld [hBGMapMode], a ; $ff00+$d4 hlcoord 0, 0 - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH xor a call ByteFill ld a, $1 @@ -67810,7 +60844,7 @@ Function90795: ; 90795 (24:4795) and A_BUTTON jr nz, .asm_907dc - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .up @@ -67901,9 +60935,9 @@ endr Function90810: ; 90810 (24:4810) ld a, [hJoyPressed] ; $ff00+$a7 - and $1 + and A_BUTTON jr nz, .asm_90857 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .asm_90835 @@ -68082,10 +61116,10 @@ INCBIN "gfx/unknown/09090b.2bpp" ; 90913 Special_SetDayOfWeek: ; 90913 - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a ld de, GFX_90903 ld hl, VTiles1 tile $6f lb bc, BANK(GFX_90903), 1 @@ -68131,7 +61165,7 @@ Special_SetDayOfWeek: ; 90913 call Function663 call Functione51 pop af - ld [$ffaa], a + ld [hInMenu], a ret ; 90993 @@ -68143,7 +61177,7 @@ Function90993: ; 90993 ret .asm_9099b - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .asm_909ba @@ -68451,10 +61485,10 @@ Function90b8d: ; 90b8d (24:4b8d) ld a, [hl] push af set NO_TEXT_SCROLL, [hl] - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a ld a, [VramState] push af xor a @@ -68480,7 +61514,7 @@ Function90b8d: ; 90b8d (24:4b8d) pop af ld [VramState], a pop af - ld [$ffaa], a + ld [hInMenu], a pop af ld [Options], a call WhiteBGMap @@ -68915,7 +61949,7 @@ Function90f2d: ; 90f2d (24:4f2d) Function90f3e: ; 90f3e (24:4f3e) call Function90f7b - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and A_BUTTON + B_BUTTON + START + SELECT @@ -69030,7 +62064,7 @@ Function90fee: ; 90fee (24:4fee) ld d, $2e ld e, $1 Function90ff2: ; 90ff2 (24:4ff2) - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and B_BUTTON jr nz, .cancel @@ -69071,7 +62105,7 @@ Function90ff2: ; 90ff2 (24:4ff2) ret Function9102f: ; 9102f (24:502f) - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .up @@ -69219,7 +62253,7 @@ Function910f9: ; 910f9 (24:50f9) ret Function91112: ; 91112 (24:5112) - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and B_BUTTON jr nz, .cancel @@ -69285,7 +62319,7 @@ Function91171: ; 91171 (24:5171) ld a, [hl] and A_BUTTON jr nz, .a - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_LEFT jr nz, .left @@ -69361,7 +62395,7 @@ Function911eb: ; 911eb (24:51eb) ld hl, Options res NO_TEXT_SCROLL, [hl] xor a - ld [$ffaa], a + ld [hInMenu], a ld de, SFX_CALL call PlaySFX ld hl, UnknownText_0x9124c @@ -69380,7 +62414,7 @@ Function911eb: ; 911eb (24:51eb) ld hl, Options set NO_TEXT_SCROLL, [hl] ld a, $1 - ld [$ffaa], a + ld [hInMenu], a call Function912b7 ld hl, wcf63 inc [hl] @@ -69410,7 +62444,7 @@ OutOfServiceAreaText: ; 0x91251 Function91256: ; 91256 (24:5256) ld a, [hJoyPressed] ; $ff00+$a7 - and $3 + and A_BUTTON | B_BUTTON ret z callba HangUp ld a, $8 @@ -69420,7 +62454,7 @@ Function91256: ; 91256 (24:5256) ret Function9126d: ; 9126d (24:526d) - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .up @@ -69599,7 +62633,7 @@ Function91342: ; 91342 (24:5342) ld h, a inc de push hl - ld bc, $ffd7 + ld bc, hBGMapAddress + 1 add hl, bc ld a, [de] inc de @@ -69875,10 +62909,10 @@ Function9191c: ; 9191c ld a, [hl] push af set 4, [hl] - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a ld a, [VramState] push af xor a @@ -69935,7 +62969,7 @@ Function9191c: ; 9191c pop af ld [VramState], a pop af - ld [$ffaa], a + ld [hInMenu], a pop af ld [Options], a call WhiteBGMap @@ -69949,7 +62983,7 @@ Function919b0: ; 919b0 ld a, [hl] and B_BUTTON ret nz - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .asm_919d4 @@ -70148,7 +63182,7 @@ _FlyMap: ; 91af3 call WhiteBGMap call ClearTileMap call ClearSprites - ld hl, $ffaa + ld hl, hInMenu ld a, [hl] push af ld [hl], $1 @@ -70196,14 +63230,14 @@ _FlyMap: ; 91af3 .exit ld [DefaultFlypoint], a pop af - ld [$ffaa], a + ld [hInMenu], a call WhiteBGMap ld a, $90 ld [hWY], a xor a ld [hBGMapAddress], a ld a, $98 - ld [$ffd7], a + ld [hBGMapAddress + 1], a ld a, [DefaultFlypoint] ld e, a ret @@ -70214,7 +63248,7 @@ FlyMapScroll: ; 91b73 ld e, a ld a, [EndFlypoint] ld d, a - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_UP jr nz, .ScrollNext @@ -70564,7 +63598,7 @@ Function91d11: ; 91d11 xor a ld [hBGMapMode], a ld a, $1 - ld [$ffaa], a + ld [hInMenu], a ld de, GFX_922d1 ld hl, VTiles0 tile $7f lb bc, BANK(GFX_922d1), 1 @@ -70595,10 +63629,10 @@ Function91d11: ; 91d11 call Functiona57 ld hl, hJoyPressed ld a, [hl] - and $3 + and A_BUTTON | B_BUTTON jr nz, .asm_91d8f ld a, [hJoypadDown] - and $4 + and SELECT jr nz, .asm_91d87 call Function91d9b call Function91dcd @@ -70847,7 +63881,7 @@ TownMapBGUpdate: ; 91ee4 ld a, l ld [hBGMapAddress], a ld a, h - ld [$ffd7], a + ld [hBGMapAddress + 1], a ; Only update palettes on CGB ld a, [hCGB] @@ -71067,7 +64101,7 @@ Function92311: ; 92311 call WhiteBGMap call ClearTileMap call ClearSprites - ld hl, $ffaa + ld hl, hInMenu ld a, [hl] push af ld [hl], $1 @@ -71128,21 +64162,21 @@ Function92311: ; 92311 .asm_9239f ld [DefaultFlypoint], a pop af - ld [$ffaa], a + ld [hInMenu], a call WhiteBGMap ld a, $90 ld [hWY], a xor a ld [hBGMapAddress], a ld a, $98 - ld [$ffd7], a + ld [hBGMapAddress + 1], a ld a, [DefaultFlypoint] ld e, a ret ; 923b8 Function923b8: ; 923b8 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_DOWN | D_RIGHT jr nz, .asm_923c6 @@ -71188,7 +64222,7 @@ Function923b8: ; 923b8 .asm_923f3 ld [hWY], a ld a, b - ld [$ffd7], a + ld [hBGMapAddress + 1], a call TownMapBubble call WaitBGMap xor a @@ -75861,8 +68895,8 @@ endr ld [wcf66], a .loop call Functiona57 - ld a, [$ffa9] - and $1 + ld a, [hJoyLast] + and A_BUTTON jr nz, .next ld de, SFX_KINESIS call PlaySFX @@ -75915,8 +68949,8 @@ endr call Functione0489 .betloop call Functiona57 - ld a, [$ffa9] - and $1 + ld a, [hJoyLast] + and A_BUTTON jr nz, .betdone call Functione089c call Functione0960 @@ -76203,7 +69237,7 @@ Functione04c1: ; e04c1 (38:44c1) xor a ld [hBGMapMode], a ; $ff00+$d4 hlcoord 0, 0 - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH ld a, $29 call ByteFill hlcoord 9, 0 @@ -76894,7 +69928,7 @@ Unknown_e0853: ; e0853 ; e089c Functione089c: ; e089c - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] and D_LEFT jp nz, Functione08b8 @@ -77270,7 +70304,7 @@ Functione0c37: ; e0c37 (38:4c37) and a ret z hlcoord 0, 0, AttrMap - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH xor a call ByteFill hlcoord 12, 1, AttrMap @@ -77384,10 +70418,10 @@ Unknown_e110c: ; e110c ; e1190 Functione1190: ; e1190 - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a call WhiteBGMap call ClearTileMap call ClearSprites @@ -77463,7 +70497,7 @@ Functione1190: ; e1190 .asm_e123d pop af - ld [$ffaa], a + ld [hInMenu], a call WhiteBGMap call ClearTileMap call ClearSprites @@ -77566,23 +70600,23 @@ Jumptable_e12d9: ; e12d9 Functione12db: ; e12db ld a, [hJoyPressed] - and $8 + and START jp nz, Functione13de ld a, [hJoyPressed] and A_BUTTON jp nz, Functione1376 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [hl] - and $40 + and D_UP jr nz, .asm_e1301 ld a, [hl] - and $80 + and D_DOWN jr nz, .asm_e130d ld a, [hl] - and $20 + and D_LEFT jr nz, .asm_e1325 ld a, [hl] - and $10 + and D_RIGHT jr nz, .asm_e1345 ret @@ -78262,7 +71296,7 @@ Functione1e67: ; e1e67 (38:5e67) ld [hli], a ld [hl], $0 hlcoord 0, 0 - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH xor a call ByteFill xor a @@ -78855,10 +71889,10 @@ Functione2391: ; e2391 (38:6391) push af xor a ld [VramState], a - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a xor a ld [$ffde], a call Functione2963 @@ -78876,7 +71910,7 @@ Functione2391: ; e2391 (38:6391) .asm_e23c6 call ClearSprites pop af - ld [$ffaa], a + ld [hInMenu], a pop af ld [VramState], a pop af @@ -79117,10 +72151,10 @@ Functione2583: ; e2583 (38:6583) push af xor a ld [VramState], a - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a xor a ld [$ffde], a call Functione2963 @@ -79138,7 +72172,7 @@ Functione2583: ; e2583 (38:6583) .asm_e25b9 call ClearSprites pop af - ld [$ffaa], a + ld [hInMenu], a pop af ld [VramState], a pop af @@ -79364,10 +72398,10 @@ Functione2759: ; e2759 push af xor a ld [VramState], a - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, $1 - ld [$ffaa], a + ld [hInMenu], a xor a ld [$ffde], a call Functione2963 @@ -79388,7 +72422,7 @@ Functione2759: ; e2759 .asm_e2793 call ClearSprites pop af - ld [$ffaa], a + ld [hInMenu], a pop af ld [VramState], a pop af @@ -79698,7 +72732,7 @@ Functione2998: ; e2998 (38:6998) jp Functione2a65 Functione29b5: ; e29b5 (38:69b5) - ld hl, $ffa9 + ld hl, hJoyLast ld a, [wcb2d] ld d, a ld a, [wcb2c] @@ -79716,7 +72750,7 @@ Functione29b5: ; e29b5 (38:69b5) ; e29d0 (38:69d0) Functione29d0: ; e29d0 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [wcb2d] ld d, a ld a, [wcb2c] @@ -79740,7 +72774,7 @@ Functione29d0: ; e29d0 jr Functione2a65 Functione29f4: ; e29f4 - ld hl, $ffa9 + ld hl, hJoyLast ld a, [wcb2d] ld d, a ld a, [wcb2c] @@ -81182,26 +74216,26 @@ PCString_NoReleasingEGGS: db "No releasing EGGS!@" Functione35aa: ; e35aa (38:75aa) call Function1d6e call Functione35e2 -.asm_e35b0 +.loop xor a ld [hBGMapMode], a ; $ff00+$d4 call Functione36cf call Functione379c - ld hl, MenuDataHeader_0xe35f1 + ld hl, Functione35aa_menudataheader call CopyMenuDataHeader xor a ld [wd0e4], a hlcoord 0, 4 - ld bc, $809 + lb bc, 8, 9 call TextBox call Function350c ld a, [wcf73] cp $2 - jr z, .asm_e35de + jr z, .done call Functione37af call Functione36f9 - jr .asm_e35b0 -.asm_e35de + jr .loop +.done call WriteBackup ret @@ -81209,37 +74243,37 @@ Functione35e2: ; e35e2 (38:75e2) xor a ld [hBGMapMode], a ; $ff00+$d4 hlcoord 0, 0 - ld bc, $168 - ld a, $7f + ld bc, SCREEN_WIDTH * SCREEN_HEIGHT + ld a, " " call ByteFill ret ; e35f1 (38:75f1) -MenuDataHeader_0xe35f1: ; 0xe35f1 +Functione35aa_menudataheader: ; 0xe35f1 db $40 ; flags db 05, 01 ; start coords db 12, 09 ; end coords - dw MenuData2_0xe35f9 + dw .menudata2 db 1 ; default option ; 0xe35f9 -MenuData2_0xe35f9: ; 0xe35f9 +.menudata2: ; 0xe35f9 db $22 ; flags db 4, 0 db 1 - dbw BANK(Unknown_e3609), Unknown_e3609 - dbw BANK(Functione3619), Functione3619 + dbw BANK(.boxes), .boxes + dbw BANK(.boxnames), .boxnames dbw BANK(NULL), NULL dbw BANK(Functione3632), Functione3632 ; e3609 -Unknown_e3609: ; e3609 +.boxes: ; e3609 db 14 db 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 db -1 ; e3619 -Functione3619: ; e3619 +.boxnames: ; e3619 push de ld a, [MenuSelection] dec a @@ -81260,15 +74294,15 @@ Functione3626: ; e3626 (38:7626) Functione3632: ; e3632 hlcoord 11, 7 - ld bc, $0507 + lb bc, 5, 7 call TextBox ld a, [MenuSelection] - cp $ff + cp -1 ret z hlcoord 12, 9 ld de, String_e3663 call PlaceString - call Functione366c + call GetBoxCount ld [wd265], a hlcoord 13, 11 ld de, wd265 @@ -81285,21 +74319,21 @@ String_e3663: ; e3663 String_e3668: ; e3668 db "/" - db "0" + MONS_PER_BOX / 10 - db "0" + MONS_PER_BOX % 10 + db "0" + MONS_PER_BOX / 10 ; "2" + db "0" + MONS_PER_BOX % 10 ; "0" db "@" ; e366c -Functione366c: ; e366c (38:766c) +GetBoxCount: ; e366c (38:766c) ld a, [wCurBox] ld c, a ld a, [MenuSelection] dec a cp c - jr z, .asm_e3697 + jr z, .activebox ld c, a ld b, 0 - ld hl, Unknown_e36a5 + ld hl, .boxbanks rept 3 add hl, bc endr @@ -81312,15 +74346,17 @@ endr ld a, [hl] call CloseSRAM ld c, a - ld a, [wd4b4] + ld a, [wSavedAtLeastOnce] and a - jr z, .asm_e3695 + jr z, .newfile ld a, c ret -.asm_e3695 + +.newfile xor a ret -.asm_e3697 + +.activebox ld a, BANK(sBoxCount) ld b, a call GetSRAMBank @@ -81330,7 +74366,7 @@ endr ret ; e36a5 (38:76a5) -Unknown_e36a5: ; e36a5 +.boxbanks: ; e36a5 dbw BANK(sBox1), sBox1 dbw BANK(sBox2), sBox2 dbw BANK(sBox3), sBox3 @@ -81384,7 +74420,7 @@ Functione36f9: ; e36f9 (38:76f9) ret .asm_e3717 - call Functione366c + call GetBoxCount and a jr z, .asm_e372f ld e, l @@ -81507,7 +74543,7 @@ INCBIN "gfx/misc/copyright.2bpp" ; e41d0 _OptionsMenu: ; e41d0 - ld hl, $ffaa + ld hl, hInMenu ld a, [hl] push af ld [hl], $1 @@ -81525,7 +74561,7 @@ _OptionsMenu: ; e41d0 .asm_e41f3 ;this next will display the settings of each option when the menu is opened push bc xor a - ld [$ffa9], a + ld [hJoyLast], a call GetOptionPointer pop bc ld hl, wcf63 @@ -81544,7 +74580,7 @@ _OptionsMenu: ; e41d0 .asm_e4217 call Functiona57 ld a, [hJoyPressed] - and $a + and START | B_BUTTON jr nz, .ExitOptions call OptionsControl jr c, .asm_e422a @@ -81562,7 +74598,7 @@ _OptionsMenu: ; e41d0 call PlaySFX call WaitSFX pop af - ld [$ffaa], a + ld [hInMenu], a ret ; e4241 @@ -82027,10 +75063,10 @@ Options_Cancel: ; e4520 OptionsControl: ; e452a ld hl, wcf63 - ld a, [$ffa9] - cp $80 + ld a, [hJoyLast] + cp D_DOWN jr z, .DownPressed - cp $40 + cp D_UP jr z, .UpPressed and a ret @@ -82096,7 +75132,7 @@ Functione4579: ; e4579 call WhiteBGMap call ClearTileMap ld a, $98 - ld [$ffd7], a + ld [hBGMapAddress + 1], a xor a ld [hBGMapAddress], a ld [hJoyDown], a @@ -82119,8 +75155,8 @@ Functione4579: ; e4579 call Functione45e8 .asm_e45c0 call Functiona57 - ld a, [$ffa9] - and $f + ld a, [hJoyLast] + and BUTTONS jr nz, .asm_e45de ld a, [wcf63] bit 7, a @@ -82458,17 +75494,17 @@ INCBIN "gfx/splash/logo.1bpp" CrystalIntro: ; e48ac ld a, [rSVBK] push af - ld a, $5 + ld a, 5 ld [rSVBK], a - ld a, [$ffaa] + ld a, [hInMenu] push af ld a, [hVBlank] push af call Functione4901 .loop: ; e48bc call Functiona57 - ld a, [$ffa9] - and $f + ld a, [hJoyLast] + and BUTTONS jr nz, .ShutOffMusic ld a, [wcf63] bit 7, a @@ -82496,7 +75532,7 @@ CrystalIntro: ; e48ac pop af ld [hVBlank], a pop af - ld [$ffaa], a + ld [hInMenu], a pop af ld [rSVBK], a ret @@ -82506,7 +75542,7 @@ Functione4901: ; e4901 xor a ld [hVBlank], a ld a, $1 - ld [$ffaa], a + ld [hInMenu], a xor a ld [$ffde], a ld [wcf63], a @@ -83991,7 +77027,7 @@ Functione5441: ; e5441 (39:5441) Functione5451: ; e5451 (39:5451) hlcoord 0, 0 - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH .asm_e5457 ld a, [hl] and a @@ -86691,7 +79727,7 @@ Function1040da: ; 1040da ld a, $3 ld [rSVBK], a ld de, $d800 - ld a, [$ffd7] + ld a, [hBGMapAddress + 1] ld [rHDMA1], a ld a, [hBGMapAddress] ld [rHDMA2], a @@ -86784,7 +79820,7 @@ Function104177: ; 104177 ld [$ffde], a ld a, [rSVBK] push af - ld a, $6 + ld a, 6 ld [rSVBK], a ld a, [rVBK] push af @@ -86819,7 +79855,7 @@ Function1041a4: ; 104a14 ret Function1041ad: ; 1041ad (41:41ad) - ld a, [$ffd7] + ld a, [hBGMapAddress + 1] ld d, a ld a, [hBGMapAddress] ; $ff00+$d6 ld e, a @@ -86827,7 +79863,7 @@ Function1041ad: ; 1041ad (41:41ad) jr Function104209 Function1041b7: ; 1041b7 (41:41b7) - ld a, [$ffd7] + ld a, [hBGMapAddress + 1] ld d, a ld a, [hBGMapAddress] ; $ff00+$d6 ld e, a @@ -86836,7 +79872,7 @@ Function1041b7: ; 1041b7 (41:41b7) ; 1041c1 (41:41c1) Function1041c1: ; 1041c1 - ld a, [$ffd7] + ld a, [hBGMapAddress + 1] ld d, a ld a, [hBGMapAddress] ld e, a @@ -86945,7 +79981,7 @@ Function10424e: ; 10424e (41:424e) ld [rHDMA1], a ; $ff00+$51 ld a, l ld [rHDMA2], a ; $ff00+$52 - ld a, [$ffd7] + ld a, [hBGMapAddress + 1] and $1f ld [rHDMA3], a ; $ff00+$53 ld a, [hBGMapAddress] ; $ff00+$d6 @@ -88824,7 +81860,7 @@ Function105153: ; 105153 (41:5153) call FarCopyBytes hlcoord 0, 0 ld a, $42 - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH call ByteFill hlcoord 3, 7 ld bc, $90f @@ -89093,7 +82129,7 @@ Function10578c: ; 10578c (41:578c) ld hl, sPlayerData + PlayerID - wPlayerData ld bc, 2 call CopyBytes - ld hl, sPlayerData + wd84a - wPlayerData + ld hl, sPlayerData + wSecretID - wPlayerData ld bc, 2 call CopyBytes call CloseSRAM @@ -89128,7 +82164,7 @@ Function1057d7: ; 1057d7 (41:57d7) call FarCopyBytes hlcoord 0, 0 ld a, $3f - ld bc, $168 + ld bc, SCREEN_HEIGHT * SCREEN_WIDTH call ByteFill hlcoord 3, 7 ld bc, $90f @@ -91388,14 +84424,14 @@ String_1de23c: ; 1de23c Function1de247: ; 1de247 ld a, [hBGMapAddress] ld l, a - ld a, [$ffd7] + ld a, [hBGMapAddress + 1] ld h, a push hl inc hl ld a, l ld [hBGMapAddress], a ld a, h - ld [$ffd7], a + ld [hBGMapAddress + 1], a hlcoord 19, 0 ld [hl], $66 hlcoord 19, 1 @@ -91414,7 +84450,7 @@ Function1de247: ; 1de247 ld a, l ld [hBGMapAddress], a ld a, h - ld [$ffd7], a + ld [hBGMapAddress + 1], a ret ; 1de27f -- cgit v1.2.3 From da7849d800d37156360845fa17e361d2521dce29 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 17 Oct 2015 12:58:26 -0400 Subject: Restructured functions in main.asm to resemble the home functions they clone --- main.asm | 849 ++++++++++++++++++++++++++------------------------------------- 1 file changed, 353 insertions(+), 496 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index 22a6a0286..c16169942 100644 --- a/main.asm +++ b/main.asm @@ -947,7 +947,7 @@ ShrinkPlayer: ; 610f ld c, 3 call DelayFrames - call Function61cd + call Intro_PlacePlayerSprite call Functione5f ld c, 50 @@ -1020,7 +1020,7 @@ ShrinkFrame: ; 61b4 ret ; 61cd -Function61cd: ; 61cd +Intro_PlacePlayerSprite: ; 61cd callba GetPlayerIcon ld c, $c @@ -1028,7 +1028,7 @@ Function61cd: ; 61cd call Request2bpp ld hl, Sprites - ld de, .data_61fe + ld de, .sprites ld a, [de] inc de @@ -1058,12 +1058,12 @@ Function61cd: ; 61cd ret ; 61fe -.data_61fe ; 61fe +.sprites ; 61fe db 4 - db $4c, $48, $00 - db $4c, $50, $01 - db $54, $48, $02 - db $54, $50, $03 + db $4c, $48, 0 + db $4c, $50, 1 + db $54, $48, 2 + db $54, $50, 3 ; 620b @@ -1123,7 +1123,7 @@ endr dw Function6389 dw Function620b dw Function620b - dw Function6392 + dw ResetClock ; 6274 @@ -1378,18 +1378,19 @@ Function6389: ; 6389 jp Init ; 6392 -Function6392: ; 6392 - callba Function4d3b1 +ResetClock: ; 6392 + callba _ResetClock jp Init ; 639b Function639b: ; 639b + ; If bit 0 or 1 of [wcf65] is set, we don't need to be here. ld a, [wcf65] and $3 ret nz ld bc, wc3a4 ld hl, $000a - add hl, bc + add hl, bc ; over-the-top compicated way to load wc3ae into hl ld l, [hl] ld h, 0 rept 2 @@ -1397,8 +1398,9 @@ rept 2 endr ld de, Data63ca add hl, de + ; If bit 2 of [wcf65] is set, get the second dw; else, get the first dw ld a, [wcf65] - and $4 + and %00000100 srl a srl a ld e, a @@ -1417,12 +1419,12 @@ endr ; 63ca Data63ca: ; 63ca - db $5c, $50, $00, $00 - db $5c, $68, $5c, $58 - db $5c, $68, $5c, $78 - db $5c, $88, $5c, $78 - db $00, $00, $5c, $78 - db $00, $00, $5c, $58 + dw $505c, $0000 + dw $685c, $585c + dw $685c, $785c + dw $885c, $785c + dw $0000, $785c + dw $0000, $585c ; 63e2 Copyright: ; 63e2 @@ -10752,7 +10754,7 @@ Function118ca: ; 118ca ; 11915 Function11915: ; 11915 - call Functiona57 + call JoyTextDelay ld a, [wcf63] bit 7, a jr nz, .asm_11930 @@ -11492,7 +11494,7 @@ Function11fa9: ; 11fa9 (4:5fa9) ret Function11fc0: ; 11fc0 (4:5fc0) - call Functiona57 + call JoyTextDelay ld a, [wcf63] bit 7, a jr nz, .asm_11fdb @@ -18956,7 +18958,7 @@ Function15cef: ; 15cef call TakeMoney ld a, $4 call Function15c7d - call Functiona36 + call JoyWaitAorB .asm_15d68 call SpeechTextBox @@ -18970,14 +18972,14 @@ Function15cef: ; 15cef .asm_15d6f ld a, $3 call Function15c7d - call Functiona36 + call JoyWaitAorB and a ret .asm_15d79 ld a, $2 call Function15c7d - call Functiona36 + call JoyWaitAorB and a ret ; 15d83 @@ -19036,7 +19038,7 @@ endr .asm_15dd8 ld a, $5 call Function15c7d - call Functiona36 + call JoyWaitAorB scf ret ; 15de2 @@ -19341,7 +19343,7 @@ Function15efd: ; 15efd call PrintTextBoxText call Function15fc3 callba Function24af0 - call Functiona36 + call JoyWaitAorB .asm_15f6e call ExitMenu @@ -19435,7 +19437,7 @@ Function15fc3: ; 15fc3 Function15fcd: ; 15fcd call MenuTextBox - call Functiona36 + call JoyWaitAorB call ExitMenu ret ; 15fd7 @@ -20490,7 +20492,7 @@ Function16be4: ; 16be4 call Function32f9 .asm_16c6b - call Functiona57 + call JoyTextDelay ld a, [hJoyPressed] and B_BUTTON @@ -22364,7 +22366,7 @@ Function24259: ; 24259 callab Function8cf62 .asm_24266 - call Functiona57 + call JoyTextDelay call Function1bdd and a ret z @@ -24765,7 +24767,7 @@ Function25105: ; 25105 call Function2513b .asm_25117 call UpdateTime - call Functiona57 + call JoyTextDelay ld a, [wcf63] bit 7, a jr nz, .asm_25132 @@ -25367,7 +25369,7 @@ ProfOaksPC: ; 0x265d3 .shutdown ld hl, OakPCText4 call PrintText - call Functiona36 + call JoyWaitAorB call ExitMenu ret ; 0x265ee @@ -25377,7 +25379,7 @@ ProfOaksPCBoot ; 0x265ee call PrintText call Rate call PlaySFX ; sfx loaded by previous Rate function call - call Functiona36 + call JoyWaitAorB call WaitSFX ret ; 0x26601 @@ -25389,7 +25391,7 @@ Function26601: ; 0x26601 call PlayMusic pop de call PlaySFX - call Functiona36 + call JoyWaitAorB call WaitSFX ret ; 0x26616 @@ -25409,7 +25411,7 @@ Rate: ; 0x26616 call ClearOakRatingBuffers ld hl, OakPCText3 call PrintText - call Functiona36 + call JoyWaitAorB ld a, [wd003] ld hl, OakRatings call FindOakRating @@ -28742,7 +28744,7 @@ Function28ade: ; 28ade ld a, $ed ldcoord 9, 17 .asm_28ae3 - call Functiona57 + call JoyTextDelay ld a, [hJoyLast] and a jr z, .asm_28ae3 @@ -37593,7 +37595,7 @@ Function4876f: ; 4876f (12:476f) ld a, [wd473] push af .asm_487c6 - call Functiona57 + call JoyTextDelay call Function4880e jr nc, .asm_487c6 ld a, $1 @@ -37791,7 +37793,7 @@ Function488d3: ; 488d3 (12:48d3) asm_48922: ; 48922 (12:4922) push bc - call Functiona57 + call JoyTextDelay ld a, [hJoyDown] ; $ff00+$a8 and a jp z, Function4896e @@ -40596,7 +40598,7 @@ Function4a28a: ; 4a28a (12:628a) call CloseSRAM ld hl, UnknownText_0x4a35d call PrintText - call Functiona36 + call JoyWaitAorB .asm_4a338 call ExitMenu .asm_4a33b @@ -42407,59 +42409,59 @@ TileCollisionTable:: ; 4ce1f ; 11 talkable water ; 1f talkable wall - db $00, $00, $00, $00, $00, $00, $00, $0f - db $00, $00, $00, $00, $00, $00, $00, $0f - db $00, $00, $1f, $00, $00, $1f, $00, $00 - db $00, $00, $1f, $00, $00, $1f, $00, $00 - db $01, $01, $11, $00, $11, $01, $01, $0f - db $01, $01, $11, $00, $11, $01, $01, $0f - db $01, $01, $01, $01, $01, $01, $01, $01 - db $01, $01, $01, $01, $01, $01, $01, $01 - - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $0f, $00, $00, $00, $00, $00 - db $00, $00, $0f, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - - db $0f, $0f, $0f, $0f, $0f, $00, $00, $00 - db $0f, $0f, $0f, $0f, $0f, $00, $00, $00 - db $0f, $0f, $0f, $0f, $0f, $0f, $0f, $0f - db $0f, $0f, $0f, $0f, $0f, $0f, $0f, $0f - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - - db $01, $01, $01, $01, $01, $01, $01, $01 - db $01, $01, $01, $01, $01, $01, $01, $01 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $0f + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + WATRTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + WATRTILE + db NULL + LANDTILE, NULL + LANDTILE, TALK + WATRTILE, NULL + LANDTILE, NULL + LANDTILE, TALK + WATRTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, TALK + WATRTILE, NULL + LANDTILE, NULL + LANDTILE, TALK + WATRTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + WALLTILE, NULL + WALLTILE, TALK + WALLTILE, NULL + LANDTILE, TALK + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WATRTILE + db NULL + WALLTILE, NULL + WALLTILE, TALK + WALLTILE, NULL + LANDTILE, TALK + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WATRTILE + db NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE + db NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE + + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + WATRTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + WATRTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + + db NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE + db NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE, NULL + WATRTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + + db NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE + db NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE, NULL + WALLTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE + db NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + LANDTILE, NULL + WATRTILE ; 4cf1f -Function4cf1f: ; 4cf1f +EmptyAllSRAMBanks: ; 4cf1f ld a, $0 - call Function4cf34 + call .EmptyBank ld a, $1 - call Function4cf34 + call .EmptyBank ld a, $2 - call Function4cf34 + call .EmptyBank ld a, $3 - call Function4cf34 + call .EmptyBank ret ; 4cf34 -Function4cf34: ; 4cf34 +.EmptyBank: ; 4cf34 call GetSRAMBank - ld hl, sScratch - ld bc, StackBottom - sScratch + ld hl, SRAM_Begin + ld bc, SRAM_End - SRAM_Begin xor a call ByteFill call CloseSRAM @@ -42471,6 +42473,8 @@ Function4cf45: ; 4cf45 (13:4f45) ld a, [hCGB] ; $ff00+$e6 and a jp z, WaitBGMap + +; The following is a modified version of Function3246. ld a, [hBGMapMode] ; $ff00+$d4 push af xor a @@ -42479,24 +42483,26 @@ Function4cf45: ; 4cf45 (13:4f45) push af xor a ld [$ffde], a -.asm_4cf57 +.WaitLY ld a, [rLY] ; $ff00+$44 cp $60 - jr c, .asm_4cf57 + jr c, .WaitLY + di - ld a, $1 + ld a, 1 ; BANK(VBGMap2) ld [rVBK], a ; $ff00+$4f hlcoord 0, 0, AttrMap call Function4cf80 - ld a, $0 + ld a, 0 ; BANK(VBGMap0) ld [rVBK], a ; $ff00+$4f hlcoord 0, 0 call Function4cf80 -.asm_4cf72 +.WaitLY2 ld a, [rLY] ; $ff00+$44 cp $60 - jr c, .asm_4cf72 + jr c, .WaitLY2 ei + pop af ld [$ffde], a pop af @@ -42508,111 +42514,35 @@ Function4cf80: ; 4cf80 (13:4f80) ld sp, hl ld a, [hBGMapAddress + 1] ld h, a - ld l, $0 - ld a, $12 + ld l, 0 + ld a, 18 ld [$ffd3], a - ld b, $2 - ld c, $41 -.asm_4cf91 - pop de -.asm_4cf92 - ld a, [$ff00+c] - and b - jr nz, .asm_4cf92 - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4cf9b - ld a, [$ff00+c] - and b - jr nz, .asm_4cf9b - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4cfa4 - ld a, [$ff00+c] - and b - jr nz, .asm_4cfa4 - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4cfad - ld a, [$ff00+c] - and b - jr nz, .asm_4cfad - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4cfb6 - ld a, [$ff00+c] - and b - jr nz, .asm_4cfb6 - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4cfbf - ld a, [$ff00+c] - and b - jr nz, .asm_4cfbf - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4cfc8 - ld a, [$ff00+c] - and b - jr nz, .asm_4cfc8 - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4cfd1 - ld a, [$ff00+c] - and b - jr nz, .asm_4cfd1 - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4cfda - ld a, [$ff00+c] - and b - jr nz, .asm_4cfda - ld [hl], e - inc l - ld [hl], d - inc l + ld b, 1 << 1 + ld c, rSTAT % $100 + +.loop +rept 20 / 2 pop de -.asm_4cfe3 +.loop\@ ld a, [$ff00+c] and b - jr nz, .asm_4cfe3 + jr nz, .loop\@ ld [hl], e inc l ld [hl], d inc l - ld de, $c +endr + + ld de, 32 - 20 add hl, de ld a, [$ffd3] dec a ld [$ffd3], a - jr nz, .asm_4cf91 + jr nz, .loop + ld a, [hSPBuffer] ; $ff00+$d9 ld l, a - ld a, [$ffda] + ld a, [hSPBuffer + 1] ld h, a ld sp, hl ret @@ -42627,15 +42557,15 @@ Function4cffe:: ; 4cffe ld c, a call CloseSRAM ld a, b - cp $63 - jr nz, .asm_4d01b + cp 99 + jr nz, .ok ld a, c - cp $7f - jr nz, .asm_4d01b + cp " " + jr nz, .ok ld c, $1 ret -.asm_4d01b +.ok ld c, $0 ret ; 4d01e @@ -42690,6 +42620,8 @@ Function4d188: ; 4d188 ld a, [wc2ce] cp $0 jp z, WaitBGMap + +; What follows is a modified version of Function3246. ld a, [hBGMapMode] push af xor a @@ -42698,24 +42630,26 @@ Function4d188: ; 4d188 push af xor a ld [$ffde], a -.asm_4d1a2 +.wait ld a, [rLY] cp $8f - jr c, .asm_4d1a2 + jr c, .wait + di - ld a, $1 + ld a, 1 ; BANK(VBGMap2) ld [rVBK], a hlcoord 0, 0, AttrMap call Function4d1cb - ld a, $0 + ld a, 0 ; BANK(VBGMap0) ld [rVBK], a hlcoord 0, 0 call Function4d1cb -.asm_4d1bd +.wait2 ld a, [rLY] cp $8f - jr c, .asm_4d1bd + jr c, .wait2 ei + pop af ld [$ffde], a pop af @@ -42728,111 +42662,35 @@ Function4d1cb: ; 4d1cb ld sp, hl ld a, [hBGMapAddress + 1] ld h, a - ld l, $0 - ld a, $12 + ld l, 0 + ld a, 18 ld [$ffd3], a - ld b, $2 - ld c, $41 -.asm_4d1dc - pop de -.asm_4d1dd - ld a, [$ff00+c] - and b - jr nz, .asm_4d1dd - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4d1e6 - ld a, [$ff00+c] - and b - jr nz, .asm_4d1e6 - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4d1ef - ld a, [$ff00+c] - and b - jr nz, .asm_4d1ef - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4d1f8 - ld a, [$ff00+c] - and b - jr nz, .asm_4d1f8 - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4d201 - ld a, [$ff00+c] - and b - jr nz, .asm_4d201 - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4d20a - ld a, [$ff00+c] - and b - jr nz, .asm_4d20a - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4d213 - ld a, [$ff00+c] - and b - jr nz, .asm_4d213 - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4d21c - ld a, [$ff00+c] - and b - jr nz, .asm_4d21c - ld [hl], e - inc l - ld [hl], d - inc l - pop de -.asm_4d225 - ld a, [$ff00+c] - and b - jr nz, .asm_4d225 - ld [hl], e - inc l - ld [hl], d - inc l + ld b, 1 << 1 ; not in v/hblank + ld c, rSTAT % $100 + +.loop +rept 20 / 2 pop de -.asm_4d22e +.loop\@ ld a, [$ff00+c] and b - jr nz, .asm_4d22e + jr nz, .loop\@ ld [hl], e inc l ld [hl], d inc l - ld de, $000c +endr + + ld de, 32 - 20 add hl, de ld a, [$ffd3] dec a ld [$ffd3], a - jr nz, .asm_4d1dc + jr nz, .loop + ld a, [hSPBuffer] ld l, a - ld a, [$ffda] + ld a, [hSPBuffer + 1] ld h, a ld sp, hl ret @@ -42889,19 +42747,19 @@ rept 2 inc c endr ld a, $7 -.asm_4d36e +.row push bc push hl -.asm_4d370 +.col ld [hli], a dec c - jr nz, .asm_4d370 + jr nz, .col pop hl ld de, SCREEN_WIDTH add hl, de pop bc dec b - jr nz, .asm_4d36e + jr nz, .row ret ; 4d37e @@ -42916,36 +42774,36 @@ Function4d37e: ; 4d37e pop hl ld de, SCREEN_WIDTH add hl, de -.asm_4d38d +.loop push hl - ld a, $79 + ld a, "┌" ld [hli], a - ld a, $7f + ld a, " " call Function4d3ab - ld [hl], $7a + ld [hl], "─" pop hl ld de, SCREEN_WIDTH add hl, de dec b - jr nz, .asm_4d38d - ld a, $7b + jr nz, .loop + ld a, "┐" ld [hli], a - ld a, $7c + ld a, "│" call Function4d3ab - ld [hl], $7d + ld [hl], "└" ret ; 4d3ab Function4d3ab: ; 4d3ab ld d, c -.asm_4d3ac +.loop ld [hli], a dec d - jr nz, .asm_4d3ac + jr nz, .loop ret ; 4d3b1 -Function4d3b1: ; 4d3b1 +_ResetClock: ; 4d3b1 callba Function8000 ld b, $8 call GetSGBLayout @@ -42953,67 +42811,67 @@ Function4d3b1: ; 4d3b1 call Functione5f ld de, MUSIC_MAIN_MENU call PlayMusic - ld hl, UnknownText_0x4d408 + ld hl, .text_askreset call PrintText - ld hl, MenuDataHeader_0x4d40d + ld hl, .NoYes_MenuDataHeader call CopyMenuDataHeader call InterpretMenu2 ret c ld a, [wcfa9] cp $1 ret z - call Function4d41e - jr c, .asm_4d3f7 + call ClockResetPassword + jr c, .wrongpassword ld a, BANK(s0_ac60) call GetSRAMBank ld a, $80 ld [s0_ac60], a call CloseSRAM - ld hl, UnknownText_0x4d3fe + ld hl, .text_okay call PrintText ret -.asm_4d3f7 - ld hl, UnknownText_0x4d403 +.wrongpassword + ld hl, .text_wrong call PrintText ret ; 4d3fe -UnknownText_0x4d3fe: ; 0x4d3fe +.text_okay: ; 0x4d3fe ; Password OK. Select CONTINUE & reset settings. text_jump UnknownText_0x1c55db db "@" ; 0x4d403 -UnknownText_0x4d403: ; 0x4d403 +.text_wrong: ; 0x4d403 ; Wrong password! text_jump UnknownText_0x1c560b db "@" ; 0x4d408 -UnknownText_0x4d408: ; 0x4d408 +.text_askreset: ; 0x4d408 ; Reset the clock? text_jump UnknownText_0x1c561c db "@" ; 0x4d40d -MenuDataHeader_0x4d40d: ; 0x4d40d +.NoYes_MenuDataHeader: ; 0x4d40d db $00 ; flags db 07, 14 ; start coords db 11, 19 ; end coords - dw MenuData2_0x4d415 + dw .NoYes_MenuData2 db 1 ; default option ; 0x4d415 -MenuData2_0x4d415: ; 0x4d415 +.NoYes_MenuData2: ; 0x4d415 db $c0 ; flags db 2 ; items db "NO@" db "YES@" ; 0x4d41e -Function4d41e: ; 4d41e - call Function4d50f +ClockResetPassword: ; 4d41e + call .CalculatePassword push de ld hl, StringBuffer2 ld bc, 5 @@ -43021,58 +42879,58 @@ Function4d41e: ; 4d41e call ByteFill ld a, $4 ld [StringBuffer2 + 5], a - ld hl, UnknownText_0x4d463 + ld hl, .pleaseenterpasswordtext call PrintText -.asm_4d437 - call Function4d468 -.asm_4d43a - call Functiona57 +.loop + call .updateIDdisplay +.loop2 + call JoyTextDelay ld a, [hJoyLast] ld b, a and A_BUTTON - jr nz, .asm_4d453 + jr nz, .confirm ld a, b and D_PAD - jr z, .asm_4d43a - call Function4d490 + jr z, .loop2 + call .dpadinput ld c, $3 call DelayFrames - jr .asm_4d437 + jr .loop -.asm_4d453 - call Function4d4e0 +.confirm + call .ConvertDecIDToBytes pop de ld a, e cp l - jr nz, .asm_4d461 + jr nz, .nope ld a, d cp h - jr nz, .asm_4d461 + jr nz, .nope and a ret -.asm_4d461 +.nope scf ret ; 4d463 -UnknownText_0x4d463: ; 0x4d463 +.pleaseenterpasswordtext: ; 0x4d463 ; Please enter the password. text_jump UnknownText_0x1c562e db "@" ; 0x4d468 -Function4d468: ; 4d468 +.updateIDdisplay: ; 4d468 hlcoord 14, 15 ld de, StringBuffer2 - ld c, $5 -.asm_4d470 + ld c, 5 +.loop3 ld a, [de] - add $f6 + add "0" ld [hli], a inc de dec c - jr nz, .asm_4d470 + jr nz, .loop3 hlcoord 14, 16 ld bc, 5 ld a, " " @@ -43086,22 +42944,22 @@ Function4d468: ; 4d468 ret ; 4d490 -Function4d490: ; 4d490 +.dpadinput: ; 4d490 ld a, b - and $20 - jr nz, .asm_4d4a5 + and D_LEFT + jr nz, .left ld a, b - and $10 - jr nz, .asm_4d4af + and D_RIGHT + jr nz, .right ld a, b - and $40 - jr nz, .asm_4d4ba + and D_UP + jr nz, .up ld a, b - and $80 - jr nz, .asm_4d4c8 + and D_DOWN + jr nz, .down ret -.asm_4d4a5 +.left ld a, [StringBuffer2 + 5] and a ret z @@ -43109,7 +42967,7 @@ Function4d490: ; 4d490 ld [StringBuffer2 + 5], a ret -.asm_4d4af +.right ld a, [StringBuffer2 + 5] cp $4 ret z @@ -43117,34 +42975,34 @@ Function4d490: ; 4d490 ld [StringBuffer2 + 5], a ret -.asm_4d4ba - call Function4d4d5 +.up + call .getcurrentdigit ld a, [hl] - cp $9 - jr z, .asm_4d4c5 + cp 9 + jr z, .wraparound_up inc a ld [hl], a ret -.asm_4d4c5 +.wraparound_up ld [hl], $0 ret -.asm_4d4c8 - call Function4d4d5 +.down + call .getcurrentdigit ld a, [hl] and a - jr z, .asm_4d4d2 + jr z, .wraparound_down dec a ld [hl], a ret -.asm_4d4d2 - ld [hl], $9 +.wraparound_down + ld [hl], 9 ret ; 4d4d5 -Function4d4d5: ; 4d4d5 +.getcurrentdigit: ; 4d4d5 ld a, [StringBuffer2 + 5] ld e, a ld d, $0 @@ -43153,19 +43011,19 @@ Function4d4d5: ; 4d4d5 ret ; 4d4e0 -Function4d4e0: ; 4d4e0 +.ConvertDecIDToBytes: ; 4d4e0 ld hl, 0 ld de, StringBuffer2 + 4 ld bc, 1 - call Function4d501 + call .ConvertToBytes ld bc, 10 - call Function4d501 + call .ConvertToBytes ld bc, 100 - call Function4d501 + call .ConvertToBytes ld bc, 1000 - call Function4d501 + call .ConvertToBytes ld bc, 10000 -Function4d501: ; 4d501 +.ConvertToBytes: ; 4d501 ld a, [de] dec de push hl @@ -43178,25 +43036,24 @@ Function4d501: ; 4d501 ret ; 4d50f -Function4d50f: ; 4d50f +.CalculatePassword: ; 4d50f ld a, BANK(sPlayerData) call GetSRAMBank ld de, $0000 - ld hl, sPlayerData + PlayerID - wPlayerData + ld hl, sPlayerData + (PlayerID - wPlayerData) ld c, $2 - call Function4d533 - ld hl, sPlayerData + PlayerName - wPlayerData + call .ComponentFromNumber + ld hl, sPlayerData + (PlayerName - wPlayerData) ld c, $5 - call Function4d53e - ld hl, sPlayerData + Money - wPlayerData + call .ComponentFromString + ld hl, sPlayerData + (Money - wPlayerData) ld c, $3 - call Function4d533 + call .ComponentFromNumber call CloseSRAM ret ; 4d533 -Function4d533: ; 4d533 -.asm_4d533 +.ComponentFromNumber: ; 4d533 ld a, [hli] add e ld e, a @@ -43204,12 +43061,11 @@ Function4d533: ; 4d533 adc d ld d, a dec c - jr nz, .asm_4d533 + jr nz, .ComponentFromNumber ret ; 4d53e -Function4d53e: ; 4d53e -.asm_4d53e +.ComponentFromString: ; 4d53e ld a, [hli] cp "@" ret z @@ -43219,7 +43075,7 @@ Function4d53e: ; 4d53e adc d ld d, a dec c - jr nz, .asm_4d53e + jr nz, .ComponentFromString ret ; 4d54c @@ -43240,7 +43096,7 @@ Function4d54c: ; 4d54c ld a, [wcfa9] cp $1 ret z - callba Function4cf1f + callba EmptyAllSRAMBanks ret ; 4d580 @@ -45520,7 +45376,7 @@ Function4e779: ; 4e779 .asm_4e779 call DelayFrame push bc - call Functiona57 + call JoyTextDelay ld a, [hJoyDown] pop bc and B_BUTTON @@ -50592,7 +50448,7 @@ Palette_81a34: ; 81a34 ; 81a74 Function81a74: ; 81a74 - call Functiona57 + call JoyTextDelay ld a, [wcf63] cp $4 jr nc, .asm_81a8b @@ -52438,7 +52294,7 @@ Function843e6: ; 843e6 (21:43e6) Function843f0: ; 843f0 .asm_843f0 - call Functiona57 + call JoyTextDelay call Function846f6 jr c, .asm_8440f ld a, [wcf63] @@ -52656,7 +52512,7 @@ Function84560: ; 84560 ld a, $9 ld [wcf65], a .asm_84597 - call Functiona57 + call JoyTextDelay call Function846f6 jr c, .asm_845c0 ld a, [wcf63] @@ -53652,7 +53508,7 @@ Function86665: ; 86665 call Function86692 jr c, .asm_86690 .asm_8666e - call Functiona57 + call JoyTextDelay ld hl, hJoyLast ld a, [hl] and B_BUTTON @@ -56601,6 +56457,7 @@ endr add hl, bc ld a, [wc3b4] ld [hli], a +; read from the table ld a, [de] ld [hli], a inc de @@ -56611,6 +56468,7 @@ endr call Function8d109 ld [hli], a pop de + ld hl, $0004 add hl, bc ld a, e @@ -56908,6 +56766,8 @@ endr ; 8d189 Function8d189: ; 8d189 + ; Get the [bc+10]th entry in the data table + ; indexed at [bc+1] in Unknown_8d6e6 ld hl, $0001 add hl, bc ld e, [hl] @@ -56962,51 +56822,51 @@ endr ; 8d1c4 Unknown_8d1c4: ; 8d1c4 - db $01, $01, $00 - db $07, $04, $00 - db $08, $05, $05 - db $0a, $06, $00 - db $0b, $07, $06 - db $0c, $08, $06 - db $0d, $09, $07 - db $0e, $0a, $07 - db $10, $0b, $07 - db $08, $0c, $05 - db $11, $00, $00 - db $12, $0d, $08 - db $12, $0e, $08 - db $12, $0f, $08 - db $13, $10, $00 - db $15, $00, $00 - db $16, $11, $00 - db $17, $12, $00 - db $18, $12, $00 - db $19, $13, $00 - db $1a, $14, $00 - db $1b, $00, $00 - db $1d, $15, $00 - db $1e, $00, $00 - db $1d, $17, $00 - db $1f, $00, $00 - db $24, $19, $00 - db $25, $00, $00 - db $20, $13, $00 - db $26, $1a, $00 - db $2d, $00, $00 - db $2e, $00, $00 - db $2f, $00, $00 - db $30, $00, $00 - db $31, $00, $00 - db $32, $1b, $00 - db $33, $1c, $00 - db $34, $00, $00 - db $35, $1d, $00 - db $37, $1e, $00 - db $38, $1e, $00 - db $39, $20, $00 - db $3f, $21, $00 - db $3e, $22, $00 - db $40, $00, $00 + db $01, $01, $00 ; 00 + db $07, $04, $00 ; 01 + db $08, $05, $05 ; 02 + db $0a, $06, $00 ; 03 + db $0b, $07, $06 ; 04 + db $0c, $08, $06 ; 05 + db $0d, $09, $07 ; 06 + db $0e, $0a, $07 ; 07 + db $10, $0b, $07 ; 08 + db $08, $0c, $05 ; 09 + db $11, $00, $00 ; 0a + db $12, $0d, $08 ; 0b + db $12, $0e, $08 ; 0c + db $12, $0f, $08 ; 0d + db $13, $10, $00 ; 0e + db $15, $00, $00 ; 0f + db $16, $11, $00 ; 10 + db $17, $12, $00 ; 11 + db $18, $12, $00 ; 12 + db $19, $13, $00 ; 13 + db $1a, $14, $00 ; 14 + db $1b, $00, $00 ; 15 + db $1d, $15, $00 ; 16 + db $1e, $00, $00 ; 17 + db $1d, $17, $00 ; 18 + db $1f, $00, $00 ; 19 + db $24, $19, $00 ; 1a + db $25, $00, $00 ; 1b + db $20, $13, $00 ; 1c + db $26, $1a, $00 ; 1d + db $2d, $00, $00 ; 1e + db $2e, $00, $00 ; 1f + db $2f, $00, $00 ; 20 + db $30, $00, $00 ; 21 + db $31, $00, $00 ; 22 + db $32, $1b, $00 ; 23 + db $33, $1c, $00 ; 24 + db $34, $00, $00 ; 25 + db $35, $1d, $00 ; 26 + db $37, $1e, $00 ; 27 + db $38, $1e, $00 ; 28 + db $39, $20, $00 ; 29 + db $3f, $21, $00 ; 2a + db $3e, $22, $00 ; 2b + db $40, $00, $00 ; 2c ; 8d24b @@ -59253,19 +59113,16 @@ Unknown_8e6a5: ; 8e6a5 ; 8e706 -Unknown_8e706: ; 8e706 - dbbw $80, $01, Unknown_8e72a - dbbw $80, $01, Unknown_8e72a - dbbw $80, $01, Unknown_8e72a - dbbw $80, $01, Unknown_8e72a - dbbw $10, $37, Unknown_8e72a - dbbw $10, $11, Unknown_8e72a - dbbw $10, $39, Unknown_8e72a - dbbw $10, $24, Unknown_8e72a - dbbw $10, $21, Unknown_8e72a - -Unknown_8e72a: - ; nothing to see here +Unknown_8e706: ; Broken 2bpp pointers + dbbw $80, $01, $672a ; 128-tile 2bpp at 1:672a (inside Multiply) + dbbw $80, $01, $672a + dbbw $80, $01, $672a + dbbw $80, $01, $672a + dbbw $10, $37, $672a ; 16-tile 2bpp at 37:672a (within Tileset11GFX) + dbbw $10, $11, $672a ; 16-tile 2bpp at 11:672a (empty data) + dbbw $10, $39, $672a ; 16-tile 2bpp at 39:672a (empty data) + dbbw $10, $24, $672a ; 16-tile 2bpp at 24:672a (inside Function926f7) + dbbw $10, $21, $672a ; 16-tile 2bpp at 21:672a (inside Function8671c) Function8e72a: ; 8e72a add $10 @@ -59281,7 +59138,7 @@ Function8e72c: ; 8e72c and $1f call Function8e741 ld a, h - xor $ff + xor $ff ; cpl inc a ret ; 8e741 @@ -60780,7 +60637,7 @@ Function90672: ; 90672 (24:4672) ld c, $a call DelayFrames .asm_9070d - call Functiona57 + call JoyTextDelay call Function90795 jr nc, .asm_9070d ld a, [wc608 + 20] @@ -60807,7 +60664,7 @@ Function90672: ; 90672 (24:4672) ld c, 10 call DelayFrames .asm_90752 - call Functiona57 + call JoyTextDelay call Function90810 jr nc, .asm_90752 ld a, [BattleMonNick + 5] @@ -61151,7 +61008,7 @@ Special_SetDayOfWeek: ; 90913 ld c, $a call DelayFrames .asm_9096a - call Functiona57 + call JoyTextDelay call Function90993 jr nc, .asm_9096a call ExitMenu @@ -61498,7 +61355,7 @@ Function90b8d: ; 90b8d (24:4b8d) .loop call UpdateTime - call Functiona57 + call JoyTextDelay ld a, [wcf63] bit 7, a jr nz, .done @@ -62654,7 +62511,7 @@ Function91342: ; 91342 (24:5342) .asm_91398 push de - call Functiona57 + call JoyTextDelay pop de ld hl, hJoyPressed ld a, [hl] @@ -62978,7 +62835,7 @@ Function9191c: ; 9191c Function919b0: ; 919b0 .asm_919b0 - call Functiona57 + call JoyTextDelay ld hl, hJoyPressed ld a, [hl] and B_BUTTON @@ -63081,7 +62938,7 @@ PlayRadio: ; 91a53 ld c, 100 call DelayFrames .loop - call Functiona57 + call JoyTextDelay ld a, [hJoyPressed] and A_BUTTON | B_BUTTON jr nz, .stop @@ -63200,7 +63057,7 @@ _FlyMap: ; 91af3 call GetSGBLayout call Function32f9 .loop - call Functiona57 + call JoyTextDelay ld hl, hJoyPressed ld a, [hl] and B_BUTTON @@ -63626,7 +63483,7 @@ Function91d11: ; 91d11 xor a call Function91e1e .asm_91d6e - call Functiona57 + call JoyTextDelay ld hl, hJoyPressed ld a, [hl] and A_BUTTON | B_BUTTON @@ -64132,7 +63989,7 @@ Function92311: ; 92311 call GetSGBLayout call Function32f9 .loop - call Functiona57 + call JoyTextDelay ld hl, hJoyPressed ld a, [hl] and B_BUTTON @@ -68894,7 +68751,7 @@ endr xor a ld [wcf66], a .loop - call Functiona57 + call JoyTextDelay ld a, [hJoyLast] and A_BUTTON jr nz, .next @@ -68948,7 +68805,7 @@ endr ld hl, .PlaceYourBetText call Functione0489 .betloop - call Functiona57 + call JoyTextDelay ld a, [hJoyLast] and A_BUTTON jr nz, .betdone @@ -70472,7 +70329,7 @@ Functione1190: ; e1190 ld [wd0ec], a call DelayFrame .asm_e1217 - call Functiona57 + call JoyTextDelay ld a, [wcf63] bit 7, a jr nz, .asm_e123d @@ -71793,7 +71650,7 @@ Functione21a1: ; e21a1 (38:61a1) ld a, [wcf63] cp $7 jr nc, .asm_e21c8 - call Functiona57 + call JoyTextDelay ld hl, hJoypadPressed ; $ffa3 ld a, [hl] and A_BUTTON @@ -71900,7 +71757,7 @@ Functione2391: ; e2391 (38:6391) ld [wcb2e], a call DelayFrame .asm_e23b4 - call Functiona57 + call JoyTextDelay ld a, [wcf63] bit 7, a jr nz, .asm_e23c6 @@ -72162,7 +72019,7 @@ Functione2583: ; e2583 (38:6583) ld [wcb2e], a call DelayFrame .asm_e25a7 - call Functiona57 + call JoyTextDelay ld a, [wcf63] bit 7, a jr nz, .asm_e25b9 @@ -72411,7 +72268,7 @@ Functione2759: ; e2759 ld [wcb2e], a call DelayFrame .asm_e2781 - call Functiona57 + call JoyTextDelay ld a, [wcf63] bit 7, a jr nz, .asm_e2793 @@ -74578,7 +74435,7 @@ _OptionsMenu: ; e41d0 call GetSGBLayout call Function32f9 .asm_e4217 - call Functiona57 + call JoyTextDelay ld a, [hJoyPressed] and START | B_BUTTON jr nz, .ExitOptions @@ -75154,7 +75011,7 @@ Functione4579: ; e4579 callba GBCOnlyScreen call Functione45e8 .asm_e45c0 - call Functiona57 + call JoyTextDelay ld a, [hJoyLast] and BUTTONS jr nz, .asm_e45de @@ -75502,7 +75359,7 @@ CrystalIntro: ; e48ac push af call Functione4901 .loop: ; e48bc - call Functiona57 + call JoyTextDelay ld a, [hJoyLast] and BUTTONS jr nz, .ShutOffMusic @@ -75596,7 +75453,7 @@ IntroScenes: ; e491e (39:491e) NextIntroScene: ; e4956 (39:4956) - ld hl, wcf63 + ld hl, wIntroSceneIndex inc [hl] ret @@ -75647,32 +75504,32 @@ IntroScene1: ; e495b (39:495b) callba Function8cf53 call Functione549e xor a - ld [wcf64], a + ld [wIntroSceneFrameCounter], a ld [wcf65], a call NextIntroScene ret IntroScene2: ; e49d6 (39:49d6) ; First Unown (A) fades in, pulses, then fades out. - ld hl, wcf64 + ld hl, wIntroSceneFrameCounter ld a, [hl] inc [hl] cp $80 - jr nc, .asm_e49f9 + jr nc, .endscene cp $60 - jr nz, .asm_e49f1 + jr nz, .DontPlaySound push af ld de, $5858 call Functione51dc ld de, SFX_INTRO_UNOWN_1 call PlaySFX pop af -.asm_e49f1 +.DontPlaySound ld [wcf65], a xor a call Functione5223 ret -.asm_e49f9 +.endscene call NextIntroScene ret @@ -75720,20 +75577,20 @@ IntroScene3: ; e49fd (39:49fd) call Functione5516 call Functione549e xor a - ld [wcf64], a + ld [wIntroSceneFrameCounter], a call NextIntroScene ret IntroScene4: ; e4a69 (39:4a69) ; Scroll the outdoor panorama for a bit. call Functione552f - ld hl, wcf64 + ld hl, wIntroSceneFrameCounter ld a, [hl] cp $80 - jr z, .asm_e4a76 + jr z, .endscene inc [hl] ret -.asm_e4a76 +.endscene call NextIntroScene ret @@ -75796,39 +75653,39 @@ IntroScene6: ; e4af7 (39:4af7) ld a, [hl] inc [hl] cp $80 - jr nc, .asm_e4b3b + jr nc, .endscene cp $60 - jr z, .asm_e4b24 + jr z, .SecondUnown cp $40 - jr nc, .asm_e4b32 + jr nc, .StopUnown cp $20 - jr z, .asm_e4b0e - jr .asm_e4b1c -.asm_e4b0e + jr z, .FirstUnown + jr .NoUnown +.FirstUnown push af ld de, $3878 call Functione51dc ld de, SFX_INTRO_UNOWN_2 call PlaySFX pop af -.asm_e4b1c +.NoUnown ld [wcf65], a xor a call Functione5223 ret -.asm_e4b24 +.SecondUnown push af ld de, $7030 call Functione51dc ld de, SFX_INTRO_UNOWN_1 call PlaySFX pop af -.asm_e4b32 +.StopUnown ld [wcf65], a ld a, $1 call Functione5223 ret -.asm_e4b3b +.endscene call NextIntroScene ret @@ -75888,14 +75745,14 @@ IntroScene7: ; e4b3f (39:4b3f) ld [wc3c0], a call Functione549e xor a - ld [wcf64], a + ld [wIntroSceneFrameCounter], a ld [wcf65], a call NextIntroScene ret IntroScene8: ; e4bd3 (39:4bd3) ; Scroll the scene, then show Suicune running across the screen. - ld hl, wcf64 + ld hl, wIntroSceneFrameCounter ld a, [hl] inc [hl] cp $40 @@ -76032,7 +75889,7 @@ IntroScene11: ; e4c86 (39:4c86) callba Function8cf53 call Functione549e xor a - ld [wcf64], a + ld [wIntroSceneFrameCounter], a ld [wcf65], a call NextIntroScene ret @@ -76040,7 +75897,7 @@ IntroScene11: ; e4c86 (39:4c86) IntroScene12: ; e4cfa (39:4cfa) ; Even more Unown. call Functione4d36 - ld hl, wcf64 + ld hl, wIntroSceneFrameCounter ld a, [hl] inc [hl] cp $c0 @@ -76074,20 +75931,20 @@ IntroScene12: ; e4cfa (39:4cfa) ret Functione4d36: ; e4d36 (39:4d36) - ld a, [wcf64] + ld a, [wIntroSceneFrameCounter] ld c, a - ld hl, Unknown_e4d54 -.asm_e4d3d + ld hl, .UnownSounds +.loop ld a, [hli] - cp $ff + cp -1 ret z cp c - jr z, .asm_e4d48 + jr z, .playsound rept 2 inc hl endr - jr .asm_e4d3d -.asm_e4d48 + jr .loop +.playsound ld a, [hli] ld d, [hl] ld e, a @@ -76098,7 +75955,7 @@ endr ret ; e4d54 (39:4d54) -Unknown_e4d54: ; e4d54 +.UnownSounds: ; e4d54 dbw $00, SFX_INTRO_UNOWN_3 dbw $20, SFX_INTRO_UNOWN_2 dbw $40, SFX_INTRO_UNOWN_1 @@ -76633,7 +76490,7 @@ IntroScene28: ; e5152 (39:5152) ret .done - ld hl, wcf63 + ld hl, wIntroSceneIndex set 7, [hl] ret @@ -80056,16 +79913,16 @@ endr ; 1042b2 Function1042b2:: ; 1042b2 -.asm_1042b2 +.loop ld a, c cp $10 - jp c, Function1042d6 - jp z, Function1042d6 + jp c, .asm_1042d6 + jp z, .asm_1042d6 push bc push hl push de ld c, $10 - call Function1042d6 + call .asm_1042d6 pop de ld hl, $0080 add hl, de @@ -80078,10 +79935,10 @@ Function1042b2:: ; 1042b2 ld a, c sub $10 ld c, a - jr .asm_1042b2 + jr .loop ; 1042d6 -Function1042d6: ; 1042d6 +.asm_1042d6: ; 1042d6 ld a, [rSVBK] push af ld a, $6 -- cgit v1.2.3 From f53d65c536096213b6826765f81a0f436c88fe72 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 17 Oct 2015 17:18:52 -0400 Subject: Battle intro animation function --- main.asm | 962 +++++++++++++++++++++++++++++++++------------------------------ 1 file changed, 510 insertions(+), 452 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index c16169942..dda78836f 100644 --- a/main.asm +++ b/main.asm @@ -1706,7 +1706,7 @@ ForgetMove: ; 65d3 ld bc, -NUM_MOVES add hl, bc push hl - ld de, wd25e + ld de, wListMoves_MoveIndicesBuffer ld bc, NUM_MOVES call CopyBytes pop hl @@ -10094,11 +10094,11 @@ Unknown_e66e: ; e66e dbw BANK(sBox7), sBox7 dbw BANK(sBox8), sBox8 dbw BANK(sBox9), sBox9 - dbw BANK(sBox10), sBox10 - dbw BANK(sBox11), sBox11 - dbw BANK(sBox12), sBox12 - dbw BANK(sBox13), sBox13 - dbw BANK(sBox14), sBox14 + dba sBox10 + dba sBox11 + dba sBox12 + dba sBox13 + dba sBox14 ; e698 Functione698: ; e698 @@ -13150,7 +13150,7 @@ PokemonActionSubmenu: ; 12a88 dbw 17, GiveTakePartyMonItem dbw 18, CancelPokemonAction dbw 19, Function12fba ; move - dbw 20, Function12d45 ; mail + dbw 20, MonMailAction ; mail ; 12aec @@ -13513,82 +13513,89 @@ Function12cfe: ; 12cfe (4:6cfe) call CloseSRAM ret -Function12d45: ; 12d45 +MonMailAction: ; 12d45 +; If in the time capsule or trade center, +; selecting the mail only allows you to +; read the mail. ld a, [InLinkBattle] - cp $1 - jr z, .asm_12d6d - cp $2 - jr z, .asm_12d6d - ld hl, MenuDataHeader_0x12dc9 + cp LINK_TIMECAPSULE + jr z, .read + cp LINK_TRADECENTER + jr z, .read + +; Show the READ/TAKE/QUIT menu. + ld hl, .MenuDataHeader call LoadMenuDataHeader call InterpretMenu2 call ExitMenu - jp c, .asm_12dc6 + +; Interpret the menu. + jp c, .done ld a, [wcfa9] cp $1 - jr z, .asm_12d6d + jr z, .read cp $2 - jr z, .asm_12d76 - jp .asm_12dc6 + jr z, .take + jp .done -.asm_12d6d - callba Functionb9229 +.read + callba ReadPartyMonMail ld a, $0 ret -.asm_12d76 - ld hl, UnknownText_0x12df1 +.take + ld hl, .sendmailtopctext call Function12cf5 - jr c, .asm_12d9a + jr c, .RemoveMailToBag ld a, [CurPartyMon] ld b, a callba Function4456e - jr c, .asm_12d92 - ld hl, UnknownText_0x12dfb + jr c, .MailboxFull + ld hl, .sentmailtopctext call MenuTextBoxBackup - jr .asm_12dc6 + jr .done -.asm_12d92 - ld hl, UnknownText_0x12df6 +.MailboxFull + ld hl, .mailboxfulltext call MenuTextBoxBackup - jr .asm_12dc6 + jr .done -.asm_12d9a - ld hl, UnknownText_0x12de2 +.RemoveMailToBag + ld hl, .mailwilllosemessagetext call Function12cf5 - jr c, .asm_12dc6 + jr c, .done call GetPartyItemLocation ld a, [hl] ld [CurItem], a call Function12cdf - jr nc, .asm_12dbe + jr nc, .BagIsFull call GetPartyItemLocation ld [hl], $0 call GetCurNick - ld hl, UnknownText_0x12de7 + ld hl, .tookmailfrommontext call MenuTextBoxBackup - jr .asm_12dc6 + jr .done -.asm_12dbe - ld hl, UnknownText_0x12dec +.BagIsFull + ld hl, .bagfulltext call MenuTextBoxBackup - jr .asm_12dc6 + jr .done -.asm_12dc6 +.done ld a, $3 ret ; 12dc9 -MenuDataHeader_0x12dc9: ; 0x12dc9 +.MenuDataHeader: ; 0x12dc9 db $40 ; flags db 10, 12 ; start coords db 17, 19 ; end coords - dw MenuData2_0x12dd1 + dw .MenuData2 db 1 ; default option ; 0x12dd1 -MenuData2_0x12dd1: ; 0x12dd1 +.MenuData2: ; 0x12dd1 db $80 ; flags db 3 ; items db "READ@" @@ -13597,32 +13604,38 @@ MenuData2_0x12dd1: ; 0x12dd1 ; 0x12de2 -UnknownText_0x12de2: ; 0x12de2 +.mailwilllosemessagetext: ; 0x12de2 +; The MAIL will lose its message. OK? text_jump UnknownText_0x1c1c22 db "@" ; 0x12de7 -UnknownText_0x12de7: ; 0x12de7 +.tookmailfrommontext: ; 0x12de7 +; MAIL detached from . text_jump UnknownText_0x1c1c47 db "@" ; 0x12dec -UnknownText_0x12dec: ; 0x12dec +.bagfulltext: ; 0x12dec +; There's no space for removing MAIL. text_jump UnknownText_0x1c1c62 db "@" ; 0x12df1 -UnknownText_0x12df1: ; 0x12df1 +.sendmailtopctext: ; 0x12df1 +; Send the removed MAIL to your PC? text_jump UnknownText_0x1c1c86 db "@" ; 0x12df6 -UnknownText_0x12df6: ; 0x12df6 +.mailboxfulltext: ; 0x12df6 +; Your PC's MAILBOX is full. text_jump UnknownText_0x1c1ca9 db "@" ; 0x12dfb -UnknownText_0x12dfb: ; 0x12dfb +.sentmailtopctext: ; 0x12dfb +; The MAIL was sent to your PC. text_jump UnknownText_0x1c1cc4 db "@" ; 0x12e00 @@ -14210,7 +14223,7 @@ Function131ef: ; 131ef ld [MonType], a predef Function5084a ld hl, TempMonMoves - ld de, wd25e + ld de, wListMoves_MoveIndicesBuffer ld bc, NUM_MOVES call CopyBytes ld a, SCREEN_WIDTH * 2 @@ -14770,9 +14783,9 @@ Elevator_MenuData2: ; 0x13558 db 4, 0 ; rows, columns db 1 ; horizontal spacing dbw 0, OBPals + 8 * 6 - dbw BANK(GetElevatorFlorStrings), GetElevatorFlorStrings - dbw BANK(NULL), NULL - dbw BANK(NULL), NULL + dba GetElevatorFlorStrings + dba NULL + dba NULL ; 13568 GetElevatorFlorStrings: ; 13568 @@ -18411,9 +18424,9 @@ MenuData15a08: ; 0x15a08 db 4, 8 ; rows/cols? db 2 ; horizontal spacing? dbw 0, PCItems - dbw BANK(PlaceMenuItemName), PlaceMenuItemName - dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity - dbw BANK(Function244c3), Function244c3 + dba PlaceMenuItemName + dba PlaceMenuItemQuantity + dba Function244c3 PC_DisplayText: ; 15a20 call MenuTextBox @@ -19099,9 +19112,9 @@ MenuData2_0x15e20: ; 0x15e20 db 4, 8 ; rows, columns db 1 ; horizontal spacing dbw 0, OBPals + 8 * 6 - dbw BANK(PlaceMenuItemName), PlaceMenuItemName - dbw BANK(Function15e30), Function15e30 - dbw BANK(Function244c3), Function244c3 + dba PlaceMenuItemName + dba Function15e30 + dba Function244c3 ; 15e30 Function15e30: ; 15e30 @@ -22570,6 +22583,7 @@ Function24374:: ; 24374 push af ld a, $7 ld [rSVBK], a + ld hl, wcf71 ld e, [hl] inc hl @@ -22577,19 +22591,21 @@ Function24374:: ; 24374 push de ld b, $10 ld hl, wcf81 -.asm_24387 + +.loop ld a, [hli] ld [de], a dec de dec b - jr nz, .asm_24387 + jr nz, .loop + ld a, [wcf81] bit 6, a - jr nz, .asm_24398 + jr nz, .bit_6 bit 7, a - jr z, .asm_243ae + jr z, .not_bit_7 -.asm_24398 +.bit_6 ld hl, wcf71 ld a, [hli] ld h, [hl] @@ -22599,9 +22615,9 @@ Function24374:: ; 24374 call Function243cd call Function1d19 call Function243cd - jr .asm_243b5 + jr .done -.asm_243ae +.not_bit_7 pop hl push hl ld a, [hld] @@ -22609,7 +22625,7 @@ Function24374:: ; 24374 ld h, a res 0, [hl] -.asm_243b5 +.done pop hl call Function243e7 ld a, h @@ -22622,6 +22638,7 @@ Function24374:: ; 24374 ld [hl], e inc hl ld [hl], d + pop af ld [rSVBK], a ld hl, wcf78 @@ -24438,7 +24455,7 @@ MenuData_0x24f34: ; 0x24f34 db $81 ; flags dn 2, 2 ; rows, columns db 6 ; spacing - dbw BANK(Strings24f3d), Strings24f3d + dba Strings24f3d dbw $09, $0000 ; 0x24f3d @@ -24462,8 +24479,8 @@ MenuData_0x24f56: ; 24f56 db $81 ; flags dn 2, 2 ; rows, columns db 11 ; spacing - dbw BANK(Strings24f5f), Strings24f5f - dbw BANK(Function24f7c), Function24f7c + dba Strings24f5f + dba Function24f7c ; 24f5f Strings24f5f: ; 24f5f @@ -24494,8 +24511,8 @@ MenuData_0x24f91: ; 24f91 db $81 ; flags dn 2, 2 ; rows, columns db 12 ; spacing - dbw BANK(Strings24f9a), Strings24f9a - dbw BANK(Function24fb2), Function24fb2 + dba Strings24f9a + dba Function24fb2 ; 24f9a Strings24f9a: ; 24f9a @@ -26050,7 +26067,7 @@ MenuData2_0x269cd: ; 0x269cd db 8, 0 ; rows, columns db 1 ; horizontal spacing dbw 0, wd002 ; text pointer - dbw BANK(DecorationMenuFunction), DecorationMenuFunction + dba DecorationMenuFunction dbw 0, 0 dbw 0, 0 ; 269dd @@ -27225,7 +27242,7 @@ LinkCommunications: ; 28000 ld [hli], a ld [hl], $50 ld a, [InLinkBattle] - cp $1 + cp LINK_TIMECAPSULE jp nz, Function28177 Function2805d: ; 2805d @@ -27423,7 +27440,7 @@ Function28177: ; 28177 ld bc, $00c8 call Function75f ld a, [InLinkBattle] - cp $2 + cp LINK_TRADECENTER jr nz, .asm_281fd ld hl, wc9f4 ld de, wcb84 @@ -27474,7 +27491,7 @@ Function28177: ; 28177 dec c jr nz, .asm_28224 ld a, [InLinkBattle] - cp $2 + cp LINK_TRADECENTER jp nz, .asm_282fe ld hl, wcb84 .asm_28254 @@ -27608,7 +27625,7 @@ Function28177: ; 28177 ld c, 66 call z, DelayFrames ld a, [InLinkBattle] - cp $3 + cp LINK_COLOSSEUM jr nz, .asm_283a9 ld a, CAL ld [OtherTrainerClass], a @@ -27622,7 +27639,7 @@ Function28177: ; 28177 ld [hl], a ld hl, wd26b ld de, OTName - ld bc, $000b + ld bc, NAME_LENGTH call CopyBytes call Function222a ld a, [wc2d7] @@ -27791,7 +27808,7 @@ endr jr nz, .asm_2847f push bc ld a, [InLinkBattle] - cp $1 + cp LINK_TIMECAPSULE ld b, $d jr z, .asm_2847a ld b, $27 @@ -28022,7 +28039,7 @@ Function28595: ; 28595 ld bc, $0042 call CopyBytes ld a, [InLinkBattle] - cp $2 + cp LINK_TRADECENTER ret nz ld de, wc9f4 ld a, $20 @@ -29142,7 +29159,7 @@ Function28b87: ; 28b87 call Function862 pop bc ld a, [InLinkBattle] - cp $1 + cp LINK_TIMECAPSULE jr z, .asm_28e63 ld a, b and a @@ -29168,7 +29185,7 @@ Function28b87: ; 28b87 ld c, $32 call DelayFrames ld a, [InLinkBattle] - cp $1 + cp LINK_TIMECAPSULE jp z, Function2805d jp Function28177 ; 28ea3 @@ -30435,7 +30452,7 @@ Function296f2: ; 296f2 (a:56f2) Function29701: ; 29701 ld a, [InLinkBattle] - cp $1 + cp LINK_TIMECAPSULE jr z, .asm_29725 ld hl, UnknownText_0x29737 call PrintText @@ -31204,7 +31221,7 @@ Special_CheckBothSelectedSameRoom: ; 29e82 ; 29eaf Special_TimeCapsule: ; 29eaf - ld a, $1 + ld a, LINK_TIMECAPSULE ld [InLinkBattle], a call Function2ed3 callab LinkCommunications @@ -31215,7 +31232,7 @@ Special_TimeCapsule: ; 29eaf ; 29ec4 Special_TradeCenter: ; 29ec4 - ld a, $2 + ld a, LINK_TRADECENTER ld [InLinkBattle], a call Function2ed3 callab LinkCommunications @@ -31226,7 +31243,7 @@ Special_TradeCenter: ; 29ec4 ; 29ed9 Special_Colosseum: ; 29ed9 - ld a, $3 + ld a, LINK_COLOSSEUM ld [InLinkBattle], a call Function2ed3 callab LinkCommunications @@ -34383,7 +34400,7 @@ GetTrainerClassName: ; 3952d ld [CurSpecies], a ld a, TRAINER_NAME - ld [wcf61], a + ld [wNamedObjectTypeBuffer], a call GetName ld de, StringBuffer1 ret @@ -34410,7 +34427,7 @@ Function39550: ; 39550 ld [CurSpecies], a ld a, TRAINER_NAME - ld [wcf61], a + ld [wNamedObjectTypeBuffer], a call GetName ld hl, StringBuffer1 @@ -35095,7 +35112,7 @@ endr jr z, .asm_422fd ld a, [InLinkBattle] - cp $1 + cp LINK_TIMECAPSULE jp z, .asm_423fa ld a, [TempMonItem] @@ -35981,7 +35998,7 @@ endr lb bc, 2, 36 call PrintNum hlcoord 14, 7 - ld [hl], $5e + ld [hl], "" pop af pop hl @@ -35996,7 +36013,7 @@ endr ld e, h ld a, e or d - jr z, .asm_442cd + jr z, .skip push de ld hl, [sp+$0] ld d, h @@ -36006,8 +36023,8 @@ endr call PrintNum pop de -.asm_442cd - ld bc, $0512 +.skip + lb bc, 5, SCREEN_WIDTH - 2 hlcoord 2, 11 call ClearBox hlcoord 1, 10 @@ -36015,13 +36032,13 @@ endr ld a, $61 call ByteFill hlcoord 1, 9 - ld [hl], $55 + ld [hl], "" inc hl - ld [hl], $55 + ld [hl], "" hlcoord 1, 10 - ld [hl], $56 + ld [hl], "<......>" inc hl - ld [hl], $57 + ld [hl], "" pop de inc de pop af @@ -36034,7 +36051,7 @@ endr ret z push bc push de - ld bc, $0512 + lb bc, 5, SCREEN_WIDTH - 2 hlcoord 2, 11 call ClearBox hlcoord 1, 10 @@ -36042,13 +36059,13 @@ endr ld a, $61 call ByteFill hlcoord 1, 9 - ld [hl], $55 + ld [hl], "" inc hl - ld [hl], $55 + ld [hl], "" hlcoord 1, 10 - ld [hl], $56 + ld [hl], "<......>" inc hl - ld [hl], $58 + ld [hl], "" pop de inc de pop af @@ -36106,25 +36123,25 @@ Function44355: ; 44355 push hl ld h, d ld l, e -.asm_4435b +.loop1 ld a, b call GetFarByte inc hl - cp $50 - jr nz, .asm_4435b + cp "@" + jr nz, .loop1 rept 4 inc hl endr dec c - jr z, .asm_44374 -.asm_4436b + jr z, .done +.loop2 ld a, b call GetFarByte inc hl - cp $50 - jr nz, .asm_4436b + cp "@" + jr nz, .loop2 -.asm_44374 +.done ld d, h ld e, l pop hl @@ -36146,7 +36163,7 @@ Function4456e: ; 4456e cp $a jr nc, .asm_445be ld bc, PartyMon1StatsEnd - PartyMon1Item - ld hl, s0_a834 + 1 + ld hl, s0_a835 call AddNTimes ld d, h ld e, l @@ -36182,24 +36199,24 @@ Function445c0: ; 445c0 (11:45c0) call GetSRAMBank ld a, b push bc - ld hl, s0_a834 + 1 + ld hl, s0_a835 ld bc, PartyMon1StatsEnd - PartyMon1Item call AddNTimes push hl add hl, bc pop de pop bc -.asm_445d4 +.loop ld a, b cp $9 - jr z, .asm_445e4 + jr z, .done push bc ld bc, PartyMon1StatsEnd - PartyMon1Item call CopyBytes pop bc inc b - jr .asm_445d4 -.asm_445e4 + jr .loop +.done ld h, d ld l, e xor a @@ -36210,14 +36227,14 @@ Function445c0: ; 445c0 (11:45c0) jp CloseSRAM ; 445f4 (11:45f4) -Function445f4: ; 445f4 +ReadMailMessage: ; 445f4 ld a, b - ld hl, s0_a834 + 1 + ld hl, s0_a835 ld bc, PartyMon1StatsEnd - PartyMon1Item call AddNTimes ld d, h ld e, l - callba Functionb9237 + callba ReadAnyMail ret Function44607: ; 44607 @@ -36226,7 +36243,7 @@ Function44607: ; 44607 push bc ld a, b ld bc, PartyMon1StatsEnd - PartyMon1Item - ld hl, s0_a834 + 1 + ld hl, s0_a835 call AddNTimes push hl ld a, [CurPartyMon] @@ -36490,7 +36507,7 @@ InitMail: ; 0x447b9 Function447da: ; 0x447da dec a - ld hl, s0_a834 + 1 + $21 + ld hl, s0_a835 + $21 ld bc, $002f call AddNTimes ld a, BANK(s0_a834) @@ -36573,7 +36590,7 @@ Function4484a: ; 0x4484a ld a, [MenuSelection] dec a ld b, a - call Function445f4 + call ReadMailMessage jp Function2b3c ; 0x44877 @@ -36620,7 +36637,7 @@ Function4484a: ; 0x4484a ld a, BANK(s0_a834) call GetSRAMBank pop af - ld hl, s0_a834 + 1 + $2e + ld hl, s0_a835 + $2e ld bc, $002f call AddNTimes ld a, [hl] @@ -36700,7 +36717,7 @@ MenuData4494c: ; 0x4494c db 4, 0 ; rows/columns? db 1 ; horizontal spacing? dbw 0,wd0f2 ; text pointer - dbw BANK(Function447fb), Function447fb + dba Function447fb dbw 0,0 dbw 0,0 @@ -41289,11 +41306,11 @@ BoxAddressTable1: ; 4a810 dbw BANK(sBox7), sBox7 dbw BANK(sBox8), sBox8 dbw BANK(sBox9), sBox9 - dbw BANK(sBox10), sBox10 - dbw BANK(sBox11), sBox11 - dbw BANK(sBox12), sBox12 - dbw BANK(sBox13), sBox13 - dbw BANK(sBox14), sBox14 + dba sBox10 + dba sBox11 + dba sBox12 + dba sBox13 + dba sBox14 ; 4a83a UpdateOTPointer: ; 0x4a83a @@ -41451,11 +41468,11 @@ BoxAddressTable2: ; 4a8f4 dbw BANK(sBox7), sBox7 dbw BANK(sBox8), sBox8 dbw BANK(sBox9), sBox9 - dbw BANK(sBox10), sBox10 - dbw BANK(sBox11), sBox11 - dbw BANK(sBox12), sBox12 - dbw BANK(sBox13), sBox13 - dbw BANK(sBox14), sBox14 + dba sBox10 + dba sBox11 + dba sBox12 + dba sBox13 + dba sBox14 ; 4a91e Function4a91e: ; 4a91e @@ -43469,11 +43486,11 @@ endr dbw BANK(sBox7), sBox7 dbw BANK(sBox8), sBox8 dbw BANK(sBox9), sBox9 - dbw BANK(sBox10), sBox10 - dbw BANK(sBox11), sBox11 - dbw BANK(sBox12), sBox12 - dbw BANK(sBox13), sBox13 - dbw BANK(sBox14), sBox14 + dba sBox10 + dba sBox11 + dba sBox12 + dba sBox13 + dba sBox14 ; 4d9c9 .FoundPartymonText: ; 0x4d9c9 @@ -43900,7 +43917,7 @@ RetroactivelyIgnoreEggs: ; 4dc67 Function4dc7b: ; 4dc7b (13:5c7b) ld a, [InLinkBattle] - cp $4 + cp LINK_MOBILE jr nz, StatsScreenInit ld a, [IsInBattle] ; wd22d (aliases: EnemyMonEnd) @@ -44581,7 +44598,7 @@ Function4e147: ; 4e147 (13:6147) hlcoord 0, 10 call PlaceString ld hl, TempMonMoves - ld de, wd25e + ld de, wListMoves_MoveIndicesBuffer ld bc, NUM_MOVES call CopyBytes hlcoord 8, 10 @@ -45827,7 +45844,7 @@ CheckBattleScene: ; 4ea44 ld a, 0 ld hl, InLinkBattle call GetFarWRAMByte - cp 4 + cp LINK_MOBILE jr z, .mobile ld a, [Options] @@ -46140,7 +46157,7 @@ Function50176: ; 50176 ld a, [de] cp 100 ; This is distinct from MAX_LEVEL. jr nc, .asm_501a1 - ld a, LV_CHAR + ld a, "" ld [hli], a ld bc, $4102 .asm_501a1 @@ -47944,19 +47961,19 @@ ParString: db "PAR@" ListMoves: ; 50d6f ; List moves at hl, spaced every [Buffer1] tiles. - ld de, wd25e + ld de, wListMoves_MoveIndicesBuffer ld b, $0 -.asm_50d74 +.moves_loop ld a, [de] inc de and a - jr z, .asm_50da7 + jr z, .no_more_moves push de push hl push hl ld [CurSpecies], a ld a, MOVE_NAME - ld [wcf61], a + ld [wNamedObjectTypeBuffer], a call GetName ld de, StringBuffer1 pop hl @@ -47976,12 +47993,12 @@ ListMoves: ; 50d6f pop de ld a, b cp NUM_MOVES - jr z, .asm_50db8 - jr .asm_50d74 + jr z, .done + jr .moves_loop -.asm_50da7 +.no_more_moves ld a, b -.asm_50da8 +.nonmove_loop push af ld [hl], "-" ld a, [Buffer1] @@ -47991,9 +48008,9 @@ ListMoves: ; 50d6f pop af inc a cp NUM_MOVES - jr nz, .asm_50da8 + jr nz, .nonmove_loop -.asm_50db8 +.done ret ; 50db9 @@ -48018,7 +48035,7 @@ Function50db9: ; 50db9 cp $5 jr nz, .check_item_name - ld hl, OBPals + 8 * 6 + ld hl, CurMart ld de, PokemonNames ld a, PKMN_NAME jr .done @@ -48032,12 +48049,12 @@ Function50db9: ; 50db9 jr .done .check_ob_item_name - ld hl, OBPals + 8 * 6 + ld hl, CurMart ld de, ItemNames ld a, ITEM_NAME .done - ld [wcf61], a + ld [wNamedObjectTypeBuffer], a ld a, l ld [wd100], a ld a, h @@ -48046,7 +48063,7 @@ Function50db9: ; 50db9 ld [wd102], a ld a, d ld [wd103], a - ld bc, $67c1 ; XXX ItemAttributes? + ld bc, ItemAttributes ld a, c ld [wd104], a ld a, b @@ -54550,15 +54567,16 @@ Function8c20f: ; 8c20f ld a, [hl] push af ld [hl], $1 -.asm_8c22b + +.loop ld a, [wcf63] bit 7, a - jr nz, .asm_8c23a - call Function8c314 + jr nz, .done + call FlashingPokeballAnimation call DelayFrame - jr .asm_8c22b + jr .loop -.asm_8c23a +.done ld a, [rSVBK] push af ld a, $5 @@ -54588,19 +54606,19 @@ Function8c20f: ; 8c20f Function8c26d: ; 8c26d ld a, [InLinkBattle] - cp $4 - jr z, .asm_8c288 + cp LINK_MOBILE + jr z, .mobile callba Function6454 call UpdateSprites call DelayFrame call Function8c2a0 call Function8cf4f - jr .asm_8c28b + jr .resume -.asm_8c288 +.mobile call Function8c2aa -.asm_8c28b +.resume ld a, $90 ld [hWY], a call DelayFrame @@ -54651,13 +54669,13 @@ Function8c2cf: ; 8c2cf push hl ld hl, w6_d000 ld bc, $28 * $10 -.asm_8c2dd - ld [hl], $ff +.loop + ld [hl], -1 inc hl dec bc ld a, c or b - jr nz, .asm_8c2dd + jr nz, .loop pop hl ld de, w6_d000 ld b, BANK(Function8c2cf) ; BANK(@) @@ -54672,11 +54690,11 @@ GFX_8c2f4: ; 8c2f4 INCBIN "gfx/unknown/08c2f4.2bpp" -Function8c314: ; 8c314 +FlashingPokeballAnimation: ; 8c314 ld a, [wcf63] ld e, a ld d, 0 - ld hl, Jumptable_8c323 + ld hl, .jumptable rept 2 add hl, de endr @@ -54686,143 +54704,158 @@ endr jp [hl] ; 8c323 -Jumptable_8c323: ; 8c323 (23:4323) - dw Function8c365 - dw Function8c5dc - dw Function8c3a1 - dw Function8c3ab - dw Function8c3ab - dw Function8c3ab - dw Function8c39c - dw Function8c3e8 - dw Function8c408 - dw Function8c5dc - dw Function8c3a1 - dw Function8c3ab - dw Function8c3ab - dw Function8c3ab - dw Function8c39c - dw Function8c768 - dw Function8c5dc - dw Function8c3a1 - dw Function8c3ab - dw Function8c3ab - dw Function8c3ab - dw Function8c39c - dw Function8c43d - dw Function8c44f - dw Function8c5dc - dw Function8c3a1 - dw Function8c3ab - dw Function8c3ab - dw Function8c3ab - dw Function8c39c - dw Function8c578 - dw Function8c58f - dw Function8c393 - - -Function8c365: ; 8c365 (23:4365) +.jumptable: ; 8c323 (23:4323) + dw .DetermineWhichAnimation ; 00 + + ; Animation 1: cave + dw StartTrainerBattle_LoadPokeBallGraphics ; 01 + dw StartTrainerBattle_SetUpBGMap ; 02 + dw StartTrainerBattle_Flash ; 03 + dw StartTrainerBattle_Flash ; 04 + dw StartTrainerBattle_Flash ; 05 + dw StartTrainerBattle_NextScene ; 06 + dw StartTrainerBattle_SetUpForWavyOutro ; 07 + dw StartTrainerBattle_SineWave ; 08 + + ; Animation 2: cave, stronger + dw StartTrainerBattle_LoadPokeBallGraphics ; 09 + dw StartTrainerBattle_SetUpBGMap ; 0a + dw StartTrainerBattle_Flash ; 0b + dw StartTrainerBattle_Flash ; 0c + dw StartTrainerBattle_Flash ; 0d + dw StartTrainerBattle_NextScene ; 0e + ; There is no setup for this one + dw StartTrainerBattle_ZoomToBlack ; 0f + + ; Animation 3: no cave + dw StartTrainerBattle_LoadPokeBallGraphics ; 10 + dw StartTrainerBattle_SetUpBGMap ; 11 + dw StartTrainerBattle_Flash ; 12 + dw StartTrainerBattle_Flash ; 13 + dw StartTrainerBattle_Flash ; 14 + dw StartTrainerBattle_NextScene ; 15 + dw StartTrainerBattle_SetUpForSpinOutro ; 16 + dw StartTrainerBattle_SpinToBlack ; 17 + + ; Animation 4: no cave, stronger + dw StartTrainerBattle_LoadPokeBallGraphics ; 18 + dw StartTrainerBattle_SetUpBGMap ; 19 + dw StartTrainerBattle_Flash ; 1a + dw StartTrainerBattle_Flash ; 1b + dw StartTrainerBattle_Flash ; 1c + dw StartTrainerBattle_NextScene ; 1d + dw StartTrainerBattle_SetUpForRandomScatterOutro ; 1e + dw StartTrainerBattle_SpeckleToBlack ; 1f + + ; All animations jump to here. + dw StartTrainerBattle_Finish ; 20 + + +.DetermineWhichAnimation: ; 8c365 (23:4365) +; The screen flashes a different number of +; times depending on the level of your lead +; Pokemon relative to the opponent's. ld de, 0 ld a, [BattleMonLevel] add 3 ld hl, EnemyMonLevel cp [hl] - jr nc, .asm_8c375 + jr nc, .okay set 0, e -.asm_8c375 +.okay ld a, [wPermission] - cp $4 - jr z, .asm_8c386 - cp $5 - jr z, .asm_8c386 - cp $7 - jr z, .asm_8c386 + cp CAVE + jr z, .okay2 + cp PERM_5 + jr z, .okay2 + cp DUNGEON + jr z, .okay2 set 1, e -.asm_8c386 - ld hl, Unknown_8c38f +.okay2 + ld hl, .StartingPoints add hl, de ld a, [hl] ld [wcf63], a ret ; 8c38f (23:438f) -Unknown_8c38f: ; 8c38f +.StartingPoints: ; 8c38f db 1, 9 db 16, 24 ; 8c393 -Function8c393: ; 8c393 (23:4393) +StartTrainerBattle_Finish: ; 8c393 (23:4393) call ClearSprites ld a, $80 ld [wcf63], a ret -Function8c39c: ; 8c39c (23:439c) +StartTrainerBattle_NextScene: ; 8c39c (23:439c) ld hl, wcf63 inc [hl] ret -Function8c3a1: ; 8c3a1 (23:43a1) - call Function8c39c +StartTrainerBattle_SetUpBGMap: ; 8c3a1 (23:43a1) + call StartTrainerBattle_NextScene xor a ld [wcf64], a ld [hBGMapMode], a ; $ff00+$d4 ret -Function8c3ab: ; 8c3ab (23:43ab) +StartTrainerBattle_Flash: ; 8c3ab (23:43ab) call Function8c3b3 ret nc - call Function8c39c + call StartTrainerBattle_NextScene ret Function8c3b3: ; 8c3b3 (23:43b3) ld a, [wd847] - cp $ff - jr z, .asm_8c3d5 + cp -1 + jr z, .done ld hl, wcf64 ld a, [hl] inc [hl] srl a ld e, a ld d, 0 - ld hl, Unknown_8c3db + ld hl, .pals add hl, de ld a, [hl] cp $1 - jr z, .asm_8c3d5 + jr z, .done ld [wcfc7], a call DmgToCgbBGPals and a ret -.asm_8c3d5 + +.done xor a ld [wcf64], a scf ret ; 8c3db (23:43db) -Unknown_8c3db: ; 8c3db - db $f9 ; 3321 - db $fe ; 3332 - db $ff ; 3333 - db $fe ; 3332 - db $f9 ; 3321 - db $e4 ; 3210 - db $90 ; 2100 - db $40 ; 1000 - db $00 ; 0000 - db $40 ; 1000 - db $90 ; 2100 - db $e4 ; 3210 - db $01 ; 0001 +.pals: ; 8c3db + db %11111001 ; 3321 + db %11111110 ; 3332 + db %11111111 ; 3333 + db %11111110 ; 3332 + db %11111001 ; 3321 + db %11100100 ; 3210 + db %10010000 ; 2100 + db %01000000 ; 1000 + db %00000000 ; 0000 + db %01000000 ; 1000 + db %10010000 ; 2100 + db %11100100 ; 3210 + db %00000001 ; 0001 ; 8c3e8 -Function8c3e8: ; 8c3e8 (23:43e8) +StartTrainerBattle_SetUpForWavyOutro: ; 8c3e8 (23:43e8) callba Function5602 ld a, $5 ld [rSVBK], a ; $ff00+$70 - call Function8c39c + call StartTrainerBattle_NextScene ld a, $43 ld [hLCDStatCustom], a ; $ff00+$c6 xor a @@ -54834,18 +54867,19 @@ Function8c3e8: ; 8c3e8 (23:43e8) ld [wcf65], a ret -Function8c408: ; 8c408 (23:4408) +StartTrainerBattle_SineWave: ; 8c408 (23:4408) ld a, [wcf64] cp $60 - jr nc, .asm_8c413 - call Function8c419 + jr nc, .end + call .DoSineWave ret -.asm_8c413 + +.end ld a, $20 ld [wcf63], a ret -Function8c419: ; 8c419 (23:4419) +.DoSineWave: ; 8c419 (23:4419) ld hl, wcf65 ld a, [hl] inc [hl] @@ -54856,11 +54890,12 @@ Function8c419: ; 8c419 (23:4419) ld a, $90 ld bc, wd100 ld e, $0 -.asm_8c42b + +.loop push af push de ld a, e - call Function8c6f7 + call StartTrainerBattle_DrawSineWave ld [bc], a inc bc pop de @@ -54869,33 +54904,46 @@ Function8c419: ; 8c419 (23:4419) ld e, a pop af dec a - jr nz, .asm_8c42b + jr nz, .loop ret -Function8c43d: ; 8c43d (23:443d) +StartTrainerBattle_SetUpForSpinOutro: ; 8c43d (23:443d) callba Function5602 ld a, $5 ld [rSVBK], a ; $ff00+$70 - call Function8c39c + call StartTrainerBattle_NextScene xor a ld [wcf64], a ret -Function8c44f: ; 8c44f (23:444f) +spintable_entry: MACRO + db \1 + dw .wedge\2 + dwcoord \3, \4 +ENDM + +; quadrants + const_def + const UPPER_LEFT + const UPPER_RIGHT + const LOWER_LEFT + const LOWER_RIGHT + +StartTrainerBattle_SpinToBlack: ; 8c44f (23:444f) xor a ld [hBGMapMode], a ; $ff00+$d4 ld a, [wcf64] ld e, a ld d, 0 - ld hl, Unknown_8c490 + ld hl, .spintable rept 5 add hl, de endr ld a, [hli] cp -1 - jr z, .asm_8c47a + jr z, .end ld [wcf65], a - call Function8c4f5 + call .load ld a, $1 ld [hBGMapMode], a ; $ff00+$d4 call DelayFrame @@ -54903,7 +54951,8 @@ endr ld hl, wcf64 inc [hl] ret -.asm_8c47a + +.end ld a, $1 ld [hBGMapMode], a ; $ff00+$d4 call DelayFrame @@ -54916,37 +54965,31 @@ endr ret ; 8c490 (23:4490) -Unknown_8c490: ; 8c490 -macro_8c490: MACRO - db \1 - dw \2 - dwcoord \3, \4 -ENDM - - macro_8c490 0, Unknown_8c538, 1, 6 - macro_8c490 0, Unknown_8c53e, 0, 3 - macro_8c490 0, Unknown_8c548, 1, 0 - macro_8c490 0, Unknown_8c55a, 5, 0 - macro_8c490 0, Unknown_8c568, 9, 0 - macro_8c490 1, Unknown_8c568, 10, 0 - macro_8c490 1, Unknown_8c55a, 14, 0 - macro_8c490 1, Unknown_8c548, 18, 0 - macro_8c490 1, Unknown_8c53e, 19, 3 - macro_8c490 1, Unknown_8c538, 18, 6 - macro_8c490 3, Unknown_8c538, 18, 11 - macro_8c490 3, Unknown_8c53e, 19, 14 - macro_8c490 3, Unknown_8c548, 18, 17 - macro_8c490 3, Unknown_8c55a, 14, 17 - macro_8c490 3, Unknown_8c568, 10, 17 - macro_8c490 2, Unknown_8c568, 9, 17 - macro_8c490 2, Unknown_8c55a, 5, 17 - macro_8c490 2, Unknown_8c548, 1, 17 - macro_8c490 2, Unknown_8c53e, 0, 14 - macro_8c490 2, Unknown_8c538, 1, 11 - db $ff +.spintable: ; 8c490 + spintable_entry UPPER_LEFT, 1, 1, 6 + spintable_entry UPPER_LEFT, 2, 0, 3 + spintable_entry UPPER_LEFT, 3, 1, 0 + spintable_entry UPPER_LEFT, 4, 5, 0 + spintable_entry UPPER_LEFT, 5, 9, 0 + spintable_entry UPPER_RIGHT, 5, 10, 0 + spintable_entry UPPER_RIGHT, 4, 14, 0 + spintable_entry UPPER_RIGHT, 3, 18, 0 + spintable_entry UPPER_RIGHT, 2, 19, 3 + spintable_entry UPPER_RIGHT, 1, 18, 6 + spintable_entry LOWER_RIGHT, 1, 18, 11 + spintable_entry LOWER_RIGHT, 2, 19, 14 + spintable_entry LOWER_RIGHT, 3, 18, 17 + spintable_entry LOWER_RIGHT, 4, 14, 17 + spintable_entry LOWER_RIGHT, 5, 10, 17 + spintable_entry LOWER_LEFT, 5, 9, 17 + spintable_entry LOWER_LEFT, 4, 5, 17 + spintable_entry LOWER_LEFT, 3, 1, 17 + spintable_entry LOWER_LEFT, 2, 0, 14 + spintable_entry LOWER_LEFT, 1, 1, 11 + db -1 ; 8c4f5 -Function8c4f5: ; 8c4f5 (23:44f5) +.load: ; 8c4f5 (23:44f5) ld a, [hli] ld e, a ld a, [hli] @@ -54954,85 +54997,86 @@ Function8c4f5: ; 8c4f5 (23:44f5) ld a, [hli] ld h, [hl] ld l, a -.asm_8c4fc +.loop push hl ld a, [de] ld c, a inc de -.asm_8c500 +.loop1 ld [hl], $ff ld a, [wcf65] bit 0, a - jr z, .asm_8c50c + jr z, .leftside inc hl - jr .asm_8c50d -.asm_8c50c + jr .okay1 +.leftside dec hl -.asm_8c50d +.okay1 dec c - jr nz, .asm_8c500 + jr nz, .loop1 pop hl ld a, [wcf65] bit 1, a - ld bc, $14 - jr z, .asm_8c51e - ld bc, $ffec -.asm_8c51e + ld bc, SCREEN_WIDTH + jr z, .upper + ld bc, -SCREEN_WIDTH +.upper add hl, bc ld a, [de] inc de - cp $ff + cp -1 ret z and a - jr z, .asm_8c4fc + jr z, .loop ld c, a -.asm_8c528 +.loop2 ld a, [wcf65] bit 0, a - jr z, .asm_8c532 + jr z, .leftside2 dec hl - jr .asm_8c533 -.asm_8c532 + jr .okay2 +.leftside2 inc hl -.asm_8c533 +.okay2 dec c - jr nz, .asm_8c528 - jr .asm_8c4fc + jr nz, .loop2 + jr .loop ; 8c538 (23:4538) -Unknown_8c538: db 2, 3, 5, 4, 9, $ff -Unknown_8c53e: db 1, 1, 2, 2, 4, 2, 4, 2, 3, $ff -Unknown_8c548: db 2, 1, 3, 1, 4, 1, 4, 1, 4, 1, 3, 1, 2, 1, 1, 1, 1, $ff -Unknown_8c55a: db 4, 1, 4, 0, 3, 1, 3, 0, 2, 1, 2, 0, 1, $ff -Unknown_8c568: db 4, 0, 3, 0, 3, 0, 2, 0, 2, 0, 1, 0, 1, 0, 1, $ff +.wedge1: db 2, 3, 5, 4, 9, -1 +.wedge2: db 1, 1, 2, 2, 4, 2, 4, 2, 3, -1 +.wedge3: db 2, 1, 3, 1, 4, 1, 4, 1, 4, 1, 3, 1, 2, 1, 1, 1, 1, -1 +.wedge4: db 4, 1, 4, 0, 3, 1, 3, 0, 2, 1, 2, 0, 1, -1 +.wedge5: db 4, 0, 3, 0, 3, 0, 2, 0, 2, 0, 1, 0, 1, 0, 1, -1 ; 8c578 -Function8c578: ; 8c578 (23:4578) +StartTrainerBattle_SetUpForRandomScatterOutro: ; 8c578 (23:4578) callba Function5602 ld a, $5 ld [rSVBK], a ; $ff00+$70 - call Function8c39c + call StartTrainerBattle_NextScene ld a, $10 ld [wcf64], a ld a, $1 ld [hBGMapMode], a ; $ff00+$d4 ret -Function8c58f: ; 8c58f (23:458f) +StartTrainerBattle_SpeckleToBlack: ; 8c58f (23:458f) ld hl, wcf64 ld a, [hl] and a - jr z, .asm_8c5a2 + jr z, .done dec [hl] ld c, $c -.asm_8c599 +.loop push bc - call Function8c5b8 + call .BlackOutRandomTile pop bc dec c - jr nz, .asm_8c599 + jr nz, .loop ret -.asm_8c5a2 + +.done ld a, $1 ld [hBGMapMode], a ; $ff00+$d4 call DelayFrame @@ -55044,61 +55088,69 @@ Function8c58f: ; 8c58f (23:458f) ld [wcf63], a ret -Function8c5b8: ; 8c5b8 (23:45b8) +.BlackOutRandomTile: ; 8c5b8 (23:45b8) +.y_loop call Random - cp $12 - jr nc, Function8c5b8 + cp SCREEN_HEIGHT + jr nc, .y_loop ld b, a -.asm_8c5c0 + +.x_loop call Random - cp $14 - jr nc, .asm_8c5c0 + cp SCREEN_WIDTH + jr nc, .x_loop ld c, a - ld hl, Sprites + $8c - ld de, $14 + + hlcoord 0, -1 + ld de, SCREEN_WIDTH inc b -.asm_8c5cf + +.row_loop add hl, de dec b - jr nz, .asm_8c5cf + jr nz, .row_loop add hl, bc + +; If the tile has already been blacked out, +; sample a new tile ld a, [hl] cp $ff - jr z, Function8c5b8 + jr z, .y_loop ld [hl], $ff ret -Function8c5dc: ; 8c5dc (23:45dc) +StartTrainerBattle_LoadPokeBallGraphics: ; 8c5dc (23:45dc) ld a, [OtherTrainerClass] and a - jp z, Function8c673 + jp z, .nextscene xor a ld [hBGMapMode], a ; $ff00+$d4 hlcoord 0, 0, AttrMap ld bc, SCREEN_HEIGHT * SCREEN_WIDTH inc b inc c - jr .asm_8c5f4 -.asm_8c5f0 + jr .enter_loop_midway + +.loop ld a, [hl] or $7 ld [hli], a -.asm_8c5f4 +.enter_loop_midway dec c - jr nz, .asm_8c5f0 + jr nz, .loop dec b - jr nz, .asm_8c5f0 - call Function8c6b1 + jr nz, .loop + call .loadpokeballgfx hlcoord 2, 1 ld b, $10 -.asm_8c602 +.loop2 push hl ld c, $2 -.asm_8c605 +.loop3 push hl ld a, [de] inc de -.asm_8c608 +.loop4 and a jr z, .asm_8c614 sla a @@ -55106,7 +55158,7 @@ Function8c5dc: ; 8c5dc (23:45dc) ld [hl], $fe .asm_8c611 inc hl - jr .asm_8c608 + jr .loop4 .asm_8c614 pop hl push bc @@ -55114,35 +55166,36 @@ Function8c5dc: ; 8c5dc (23:45dc) add hl, bc pop bc dec c - jr nz, .asm_8c605 + jr nz, .loop3 pop hl push bc ld bc, $14 add hl, bc pop bc dec b - jr nz, .asm_8c602 + jr nz, .loop2 ld a, [hCGB] ; $ff00+$e6 and a - jr nz, .asm_8c639 + jr nz, .cgb ld a, $1 ld [hBGMapMode], a ; $ff00+$d4 call DelayFrame call DelayFrame - jr Function8c673 -.asm_8c639 - ld hl, Unknown_8c6a1 + jr .nextscene + +.cgb + ld hl, .daypals ld a, [TimeOfDayPal] - and 3 + and (1 << 2) - 1 cp 3 - jr nz, .asm_8c648 - ld hl, Unknown_8c6a9 -.asm_8c648 + jr nz, .daytime + ld hl, .nightpals +.daytime ld a, [rSVBK] ; $ff00+$70 push af - ld a, $5 + ld a, $5 ; WRAM5 = palettes ld [rSVBK], a ; $ff00+$70 - call Function8c677 + call .copypals push hl ld de, Unkn1Pals + 8 * 7 ld bc, $8 @@ -55158,24 +55211,24 @@ Function8c5dc: ; 8c5dc (23:45dc) call DelayFrame call Function8cf4f -Function8c673: ; 8c673 (23:4673) - call Function8c39c +.nextscene: ; 8c673 (23:4673) + call StartTrainerBattle_NextScene ret -Function8c677: ; 8c677 (23:4677) +.copypals: ; 8c677 (23:4677) ld de, Unkn1Pals + 8 * 7 - call Function8c698 + call .copy ld de, BGPals + 8 * 7 - call Function8c698 + call .copy ld de, Unkn2Pals + 8 * 6 - call Function8c698 + call .copy ld de, OBPals + 8 * 6 - call Function8c698 + call .copy ld de, Unkn2Pals + 8 * 7 - call Function8c698 + call .copy ld de, OBPals + 8 * 7 -Function8c698: ; 8c698 (23:4698) +.copy: ; 8c698 (23:4698) push hl ld bc, $8 call CopyBytes @@ -55183,41 +55236,41 @@ Function8c698: ; 8c698 (23:4698) ret ; 8c6a1 (23:46a1) -Unknown_8c6a1: ; 8c6a1 +.daypals: ; 8c6a1 RGB 31, 18, 29 RGB 31, 11, 15 RGB 31, 05, 05 RGB 07, 07, 07 ; 8c6a9 -Unknown_8c6a9: ; 8c6a9 +.nightpals: ; 8c6a9 RGB 31, 18, 29 RGB 31, 05, 05 RGB 31, 05, 05 RGB 31, 05, 05 -Function8c6b1: +.loadpokeballgfx: ld a, [OtherTrainerClass] ld de, PokeBallTransition ret PokeBallTransition: - db %00000011,%11000000 - db %00001111,%11110000 - db %00111100,%00111100 - db %00110000,%00001100 - db %01100000,%00000110 - db %01100011,%11000110 - db %11000110,%01100011 - db %11111100,%00111111 - db %11111100,%00111111 - db %11000110,%01100011 - db %01100011,%11000110 - db %01100000,%00000110 - db %00110000,%00001100 - db %00111100,%00111100 - db %00001111,%11110000 - db %00000011,%11000000 + db %00000011, %11000000 + db %00001111, %11110000 + db %00111100, %00111100 + db %00110000, %00001100 + db %01100000, %00000110 + db %01100011, %11000110 + db %11000110, %01100011 + db %11111100, %00111111 + db %11111100, %00111111 + db %11000110, %01100011 + db %01100011, %11000110 + db %01100000, %00000110 + db %00110000, %00001100 + db %00111100, %00111100 + db %00001111, %11110000 + db %00000011, %11000000 Function8c6d8: ; 8c6d8 ld a, [rSVBK] @@ -55244,26 +55297,27 @@ Function8c6ef: ; 8c6ef ; 8c6f7 -Function8c6f7: ; 8c6f7 (23:46f7) - and $3f - cp $20 - jr nc, .asm_8c702 - call Function8c70c +StartTrainerBattle_DrawSineWave: ; 8c6f7 (23:46f7) + and (1 << 6) - 1 + cp 1 << 5 + jr nc, .okay + call .DoSineWave ld a, h ret -.asm_8c702 - and $1f - call Function8c70c + +.okay + and (1 << 5) - 1 + call .DoSineWave ld a, h - xor $ff + xor -1 ; cpl inc a ret -Function8c70c: ; 8c70c (23:470c) +.DoSineWave: ; 8c70c (23:470c) ld e, a ld a, d ld d, 0 - ld hl, Unknown_8c728 + ld hl, .sinewave rept 2 add hl, de endr @@ -55271,29 +55325,36 @@ endr inc hl ld d, [hl] ld hl, 0 -.asm_8c71b +.loop srl a - jr nc, .asm_8c720 + jr nc, .skip add hl, de -.asm_8c720 +.skip sla e rl d and a - jr nz, .asm_8c71b + jr nz, .loop ret ; 8c728 (23:4728) -Unknown_8c728: ; 8c728 +.sinewave: ; 8c728 sine_wave $100 ; 8c768 -Function8c768: ; 8c768 (23:4768) +macro_8c792: macro +; width, height, start y, start x + db \1, \2 + dwcoord \3, \4 +endm + +StartTrainerBattle_ZoomToBlack: ; 8c768 (23:4768) callba Function5602 - ld de, Unknown_8c792 -.asm_8c771 + ld de, .boxes + +.loop ld a, [de] - cp $ff - jr z, .asm_8c78c + cp -1 + jr z, .done inc de ld c, a ld a, [de] @@ -55307,20 +55368,17 @@ Function8c768: ; 8c768 (23:4768) ld h, a xor a ld [hBGMapMode], a ; $ff00+$d4 - call Function8c7b7 + call .Copy call WaitBGMap - jr .asm_8c771 -.asm_8c78c + jr .loop + +.done ld a, $20 ld [wcf63], a ret ; 8c792 (23:4792) -Unknown_8c792: ; 8c792 -macro_8c792: macro - db \1, \2 - dwcoord \3, \4 -endm +.boxes: ; 8c792 macro_8c792 4, 2, 8, 8 macro_8c792 6, 4, 7, 7 macro_8c792 8, 6, 6, 6 @@ -55330,24 +55388,24 @@ endm macro_8c792 16, 14, 2, 2 macro_8c792 18, 16, 1, 1 macro_8c792 20, 18, 0, 0 - db $ff + db -1 ; 8c7b7 -Function8c7b7: ; 8c7b7 (23:47b7) - ld a, $ff -.asm_8c7b9 +.Copy: ; 8c7b7 (23:47b7) + ld a, -1 +.row push bc push hl -.asm_8c7bb +.col ld [hli], a dec c - jr nz, .asm_8c7bb + jr nz, .col pop hl - ld bc, $14 + ld bc, SCREEN_WIDTH add hl, bc pop bc dec b - jr nz, .asm_8c7b9 + jr nz, .row ret ; 8c7c9 (23:47c9) @@ -59612,7 +59670,7 @@ endr GetGFXUnlessMobile: ; 8ea3f ld a, [InLinkBattle] - cp 4 ; Mobile Link Battle + cp LINK_MOBILE jp nz, Request2bpp jp Functiondc9 ; 8ea4a @@ -60122,7 +60180,7 @@ Function9020d: ; 9020d (24:420d) Unknown_90233: ; 90233 db 0, 0 - dbw BANK(UnknownScript_0x90238), UnknownScript_0x90238 + dba UnknownScript_0x90238 UnknownScript_0x90238: writetext UnknownText_0x9023c end @@ -60463,9 +60521,9 @@ phone: MACRO db \1, \2 ; trainer map \3 ; map db \4 - dbw BANK(\5), \5 ; script 1 + dba \5 ; script 1 db \6 - dbw BANK(\7), \7 ; script 2 + dba \7 ; script 2 ENDM phone 0, 0, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript @@ -60511,35 +60569,35 @@ ENDM SpecialPhoneCallList: ; 90627 dw Function90188 db 4 - dbw BANK(ElmPhoneScript2), ElmPhoneScript2 + dba ElmPhoneScript2 dw Function90188 db 4 - dbw BANK(ElmPhoneScript2), ElmPhoneScript2 + dba ElmPhoneScript2 dw Function90188 db 4 - dbw BANK(ElmPhoneScript2), ElmPhoneScript2 + dba ElmPhoneScript2 dw Function90188 db 4 - dbw BANK(ElmPhoneScript2), ElmPhoneScript2 + dba ElmPhoneScript2 dw Function90197 db 4 - dbw BANK(ElmPhoneScript2), ElmPhoneScript2 + dba ElmPhoneScript2 dw Function90197 db 2 - dbw BANK(BikeShopPhoneScript), BikeShopPhoneScript ; bike shop + dba BikeShopPhoneScript ; bike shop dw Function90197 db 1 - dbw BANK(MomPhoneLectureScript), MomPhoneLectureScript + dba MomPhoneLectureScript dw Function90188 db 4 - dbw BANK(ElmPhoneScript2), ElmPhoneScript2 + dba ElmPhoneScript2 ; 90657 UnknownScript_0x90657: ; 0x90657 @@ -67093,14 +67151,14 @@ INCBIN "gfx/unknown/0b8582.2bpp" INCLUDE "engine/radio.asm" -Functionb9229: ; b9229 +ReadPartyMonMail: ; b9229 ld a, [CurPartyMon] ld hl, s0_a600 - ld bc, $002f + ld bc, PartyMon1StatsEnd - PartyMon1Item call AddNTimes ld d, h ld e, l -Functionb9237: ; b9237 +ReadAnyMail: ; b9237 push de call WhiteBGMap call ClearSprites @@ -74000,11 +74058,11 @@ Unknown_e33a6: ; e33a6 dbw BANK(sBox7), sBox7 dbw BANK(sBox8), sBox8 dbw BANK(sBox9), sBox9 - dbw BANK(sBox10), sBox10 - dbw BANK(sBox11), sBox11 - dbw BANK(sBox12), sBox12 - dbw BANK(sBox13), sBox13 - dbw BANK(sBox14), sBox14 + dba sBox10 + dba sBox11 + dba sBox12 + dba sBox13 + dba sBox14 ; e33d0 Functione33d0: ; e33d0 (38:73d0) @@ -74118,10 +74176,10 @@ Functione35aa_menudataheader: ; 0xe35f1 db $22 ; flags db 4, 0 db 1 - dbw BANK(.boxes), .boxes - dbw BANK(.boxnames), .boxnames - dbw BANK(NULL), NULL - dbw BANK(Functione3632), Functione3632 + dba .boxes + dba .boxnames + dba NULL + dba Functione3632 ; e3609 .boxes: ; e3609 @@ -74233,11 +74291,11 @@ endr dbw BANK(sBox7), sBox7 dbw BANK(sBox8), sBox8 dbw BANK(sBox9), sBox9 - dbw BANK(sBox10), sBox10 - dbw BANK(sBox11), sBox11 - dbw BANK(sBox12), sBox12 - dbw BANK(sBox13), sBox13 - dbw BANK(sBox14), sBox14 + dba sBox10 + dba sBox11 + dba sBox12 + dba sBox13 + dba sBox14 ; e36cf Functione36cf: ; e36cf (38:76cf) @@ -77757,7 +77815,7 @@ Functionfb57e: ; fb57e cp 101 jr nc, .asm_fb5db ld a, [InLinkBattle] - cp $1 + cp LINK_TIMECAPSULE jr nz, .asm_fb5d9 ld hl, OTPartySpecies ld a, [wd003] -- cgit v1.2.3 From 52605b764a6ecfb781ca9e70d51dad909dabe7c3 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 17 Oct 2015 20:49:34 -0400 Subject: Add commented numbers to map/group constants --- main.asm | 113 ++++++++++++++++++++++++++++++++++++--------------------------- 1 file changed, 65 insertions(+), 48 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index dda78836f..10de1f4a5 100644 --- a/main.asm +++ b/main.asm @@ -111,7 +111,7 @@ Function5b44: ; 5b44 call ClearTileMap call Functione5f call Functione51 - call Function1fbf + call ResetTextRelatedRAM ret ; 5b54 @@ -1461,7 +1461,7 @@ CopyrightString: ; 63fd GameInit:: ; 642e callba Function14f1c - call Function1fbf + call ResetTextRelatedRAM call WhiteBGMap call ClearTileMap ld a, $98 @@ -1481,6 +1481,7 @@ Function6454:: ; 6454 call DelayFrame ld a, [hOAMUpdate] push af + ld a, $1 ld [hOAMUpdate], a ld a, [hBGMapMode] @@ -1488,6 +1489,7 @@ Function6454:: ; 6454 xor a ld [hBGMapMode], a call Function6473 + pop af ld [hBGMapMode], a pop af @@ -1504,7 +1506,7 @@ Function6473: ; 6473 ld a, $90 ld [hWY], a call Function2173 - ld a, $9c + ld a, VBGMap1 / $100 call Function64b9 call Function2e20 callba Function49409 @@ -1514,8 +1516,8 @@ Function6473: ; 6473 xor a ld [hBGMapMode], a ld [hWY], a - callba Function64db - ld a, $98 + callba Function64db ; no need to callba + ld a, VBGMap0 / $100 call Function64b9 xor a ld [wd152], a @@ -1540,7 +1542,9 @@ Function64bf:: ; 64bf push af ld a, $1 ld [hOAMUpdate], a + call Function64cd + pop af ld [hOAMUpdate], a ret @@ -12419,7 +12423,7 @@ UnknownText_0x125c8: ; 0x125c8 StartMenu:: ; 125cd - call Function1fbf + call ResetTextRelatedRAM ld de, SFX_MENU call PlaySFX @@ -14393,7 +14397,7 @@ SelectMenu:: ; 13327 jp UseRegisteredItem .NotRegistered - call Function2e08 + call LoadFont ld b, BANK(ItemMayBeRegisteredText) ld hl, ItemMayBeRegisteredText call MapTextbox @@ -14527,7 +14531,7 @@ UseRegisteredItem: ; 133c3 ; 133df .NoFunction ; 133df - call Function2e08 + call LoadFont call CantUseItem call Function2dcf and a @@ -14535,7 +14539,7 @@ UseRegisteredItem: ; 133c3 ; 133ea .Current ; 133ea - call Function2e08 + call LoadFont call DoItemEffect call Function2dcf and a @@ -32782,7 +32786,7 @@ Function2c10d: ; 2c10d ld de, OTPartyCount call Function2c059 ld hl, wcfc4 - ld a, $50 + ld a, "@" ld [hli], a ld [hl], $68 ld hl, Sprites + $18 @@ -32792,7 +32796,7 @@ Function2c10d: ; 2c10d Function2c143: ; 2c143 ld de, Buffer1 ld c, $6 -.asm_2c148 +.loop ld a, [wcfc5] ld [hli], a ld a, [wcfc4] @@ -32808,7 +32812,7 @@ Function2c143: ; 2c143 ld [wcfc4], a inc de dec c - jr nz, .asm_2c148 + jr nz, .loop ret ; 2c165 @@ -32828,20 +32832,20 @@ Function2c1b2: ; 2c1b2 call WhiteBGMap call Functione5f hlcoord 2, 3 - ld b, $9 - ld c, $e + ld b, 9 + ld c, 14 call TextBox hlcoord 4, 5 ld de, PlayerName call PlaceString hlcoord 4, 10 - ld de, wd26b + ld de, OTPlayerName call PlaceString hlcoord 9, 8 ld a, $69 ld [hli], a ld [hl], $6a - callba Function2c10d + callba Function2c10d ; no need to callba ld b, $8 call GetSGBLayout call Function32f9 @@ -34113,9 +34117,12 @@ ConvertBerriesToBerryJuice: ; 2ede6 ; 2ee18 Function2ee18: ; 2ee18 +; If we're not in a communications room, +; we don't need to be here. ld a, [InLinkBattle] and a ret z + callba Function2c1b2 ld c, 150 call DelayFrames @@ -34132,20 +34139,21 @@ Function2ee2f: ; 2ee2f ld b, 6 ld hl, PartyMon1HP ld de, PartyMon2 - PartyMon1 - 1 -.asm_2ee3d + +.loop ld a, [hli] or [hl] - jr nz, .asm_2ee45 + jr nz, .okay add hl, de dec b - jr nz, .asm_2ee3d + jr nz, .loop -.asm_2ee45 +.okay ld de, PartyMon1Level - PartyMon1HP add hl, de ld a, [hl] ld [BattleMonLevel], a - predef Function8c20f + predef Predef_StartBattle callba Function3ed9f ld a, 1 ld [hBGMapMode], a @@ -34305,7 +34313,7 @@ endr callab ResetEnemyStatLevels - call Function1fbf + call ResetTextRelatedRAM ld hl, hBGMapAddress xor a @@ -40135,7 +40143,7 @@ Function49ed0: ; 49ed0 call ClearTileMap call Functione5f call Functione51 - call Function1fbf + call ResetTextRelatedRAM ret ; 49ee0 @@ -54554,7 +54562,7 @@ endr ; 8c20f -Function8c20f: ; 8c20f +Predef_StartBattle: ; 8c20f call Function8c26d ld a, [rBGP] ld [wcfc7], a @@ -54581,13 +54589,16 @@ Function8c20f: ; 8c20f push af ld a, $5 ld [rSVBK], a + ld hl, Unkn1Pals ld bc, $0040 xor a call ByteFill + pop af ld [rSVBK], a - ld a, $ff + + ld a, %11111111 ld [wcfc7], a call DmgToCgbBGPals call DelayFrame @@ -54596,6 +54607,7 @@ Function8c20f: ; 8c20f ld [hLCDStatCustom + 1], a ld [hLCDStatCustom + 2], a ld [hSCY], a + ld a, $1 ld [rSVBK], a pop af @@ -54619,7 +54631,7 @@ Function8c26d: ; 8c26d call Function8c2aa .resume - ld a, $90 + ld a, SCREEN_HEIGHT_PX ld [hWY], a call DelayFrame xor a @@ -54630,7 +54642,7 @@ rept 2 ld [hli], a endr ld [hl], a - call Function8c6d8 + call WipeLYOverrides ret ; 8c2a0 @@ -54647,15 +54659,18 @@ Function8c2aa: ; 8c2aa ld b, BANK(GFX_8c2f4) ld c, 2 call Request2bpp + ld a, [rVBK] push af ld a, $1 ld [rVBK], a + ld de, GFX_8c2f4 - ld hl, VTiles1 tile $7e + ld hl, VTiles4 tile $7e ld b, BANK(GFX_8c2f4) ld c, 2 call Request2bpp + pop af ld [rVBK], a ret @@ -54669,6 +54684,7 @@ Function8c2cf: ; 8c2cf push hl ld hl, w6_d000 ld bc, $28 * $10 + .loop ld [hl], -1 inc hl @@ -54676,6 +54692,7 @@ Function8c2cf: ; 8c2cf ld a, c or b jr nz, .loop + pop hl ld de, w6_d000 ld b, BANK(Function8c2cf) ; BANK(@) @@ -54705,7 +54722,7 @@ endr ; 8c323 .jumptable: ; 8c323 (23:4323) - dw .DetermineWhichAnimation ; 00 + dw StartTrainerBattle_DetermineWhichAnimation ; 00 ; Animation 1: cave dw StartTrainerBattle_LoadPokeBallGraphics ; 01 @@ -54751,7 +54768,7 @@ endr dw StartTrainerBattle_Finish ; 20 -.DetermineWhichAnimation: ; 8c365 (23:4365) +StartTrainerBattle_DetermineWhichAnimation: ; 8c365 (23:4365) ; The screen flashes a different number of ; times depending on the level of your lead ; Pokemon relative to the opponent's. @@ -55272,27 +55289,27 @@ PokeBallTransition: db %00001111, %11110000 db %00000011, %11000000 -Function8c6d8: ; 8c6d8 +WipeLYOverrides: ; 8c6d8 ld a, [rSVBK] push af ld a, $5 ld [rSVBK], a ld hl, LYOverrides - call Function8c6ef + call .wipe ld hl, LYOverridesBackup - call Function8c6ef + call .wipe pop af ld [rSVBK], a ret ; 8c6ef -Function8c6ef: ; 8c6ef +.wipe: ; 8c6ef xor a - ld c, $90 -.asm_8c6f2 + ld c, SCREEN_HEIGHT_PX +.loop ld [hli], a dec c - jr nz, .asm_8c6f2 + jr nz, .loop ret ; 8c6f7 @@ -55341,7 +55358,7 @@ endr sine_wave $100 ; 8c768 -macro_8c792: macro +zoombox: macro ; width, height, start y, start x db \1, \2 dwcoord \3, \4 @@ -55379,20 +55396,20 @@ StartTrainerBattle_ZoomToBlack: ; 8c768 (23:4768) ; 8c792 (23:4792) .boxes: ; 8c792 - macro_8c792 4, 2, 8, 8 - macro_8c792 6, 4, 7, 7 - macro_8c792 8, 6, 6, 6 - macro_8c792 10, 8, 5, 5 - macro_8c792 12, 10, 4, 4 - macro_8c792 14, 12, 3, 3 - macro_8c792 16, 14, 2, 2 - macro_8c792 18, 16, 1, 1 - macro_8c792 20, 18, 0, 0 + zoombox 4, 2, 8, 8 + zoombox 6, 4, 7, 7 + zoombox 8, 6, 6, 6 + zoombox 10, 8, 5, 5 + zoombox 12, 10, 4, 4 + zoombox 14, 12, 3, 3 + zoombox 16, 14, 2, 2 + zoombox 18, 16, 1, 1 + zoombox 20, 18, 0, 0 db -1 ; 8c7b7 .Copy: ; 8c7b7 (23:47b7) - ld a, -1 + ld a, $ff .row push bc push hl -- cgit v1.2.3 From 0a244e043c83dff064d7e3ec054a587c7f999d0d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 19 Oct 2015 10:23:58 -0400 Subject: Move battle start animation functions to its own file --- main.asm | 1471 +++++--------------------------------------------------------- 1 file changed, 102 insertions(+), 1369 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index 10de1f4a5..ef5f7ab14 100644 --- a/main.asm +++ b/main.asm @@ -9,7 +9,7 @@ Function4000:: ; 4000 ld b, 1 ld c, 11 - ld a, [IsInBattle] + ld a, [wBattleMode] and a jr z, .notinbattle @@ -542,7 +542,7 @@ FinishContinueFunction: ; 5e5d .loop xor a ld [wc2c1], a - ld [InLinkBattle], a + ld [wLinkMode], a ld hl, GameTimerPause set 0, [hl] res 7, [hl] @@ -1620,7 +1620,7 @@ LearnMove: ; 6508 ld [wd265], a ld b, a - ld a, [IsInBattle] + ld a, [wBattleMode] and a jr z, .not_disabled ld a, [DisabledMove] @@ -1656,7 +1656,7 @@ LearnMove: ; 6508 ld [hl], a - ld a, [IsInBattle] + ld a, [wBattleMode] and a jp z, .learned @@ -2772,7 +2772,7 @@ endr .done ld [de], a - ld a, [IsInBattle] + ld a, [wBattleMode] and a ret z ld a, [CurPartyMon] @@ -8017,7 +8017,7 @@ GeneratePartyMonStats: ; d906 ld a, [BaseDexNo] ld [de], a inc de - ld a, [IsInBattle] + ld a, [wBattleMode] and a ld a, $0 jr z, .skipitem @@ -8029,7 +8029,7 @@ GeneratePartyMonStats: ; d906 push de ld h, d ld l, e - ld a, [IsInBattle] + ld a, [wBattleMode] and a jr z, .randomlygeneratemoves ld a, [MonType] @@ -8108,7 +8108,7 @@ endr pop de pop hl push hl - ld a, [IsInBattle] + ld a, [wBattleMode] and a jr nz, .copywildmonstats call Random @@ -8213,7 +8213,7 @@ endr inc de .next2 - ld a, [IsInBattle] + ld a, [wBattleMode] dec a jr nz, .generatestats ld hl, EnemyMonMaxHP @@ -9207,7 +9207,7 @@ Functione039: ; e039 ld a, [wd10b] and a jp nz, CloseSRAM - ld a, [InLinkBattle] + ld a, [wLinkMode] and a ret nz ld a, BANK(s0_a600) @@ -12723,7 +12723,7 @@ endr call .AppendMenuList .no_pokemon - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jr nz, .no_pack ld hl, StatusFlags2 @@ -12743,7 +12743,7 @@ endr ld a, 3 ; status call .AppendMenuList - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jr nz, .no_save ld hl, StatusFlags2 @@ -13521,7 +13521,7 @@ MonMailAction: ; 12d45 ; If in the time capsule or trade center, ; selecting the mail only allows you to ; read the mail. - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TIMECAPSULE jr z, .read cp LINK_TRADECENTER @@ -14103,7 +14103,7 @@ Function12fd5: ; 12fd5 ld bc, $0015 add hl, bc call Function1313a - ld a, [IsInBattle] + ld a, [wBattleMode] jr z, .asm_13113 ld hl, BattleMonMoves ld bc, $0020 @@ -24230,7 +24230,7 @@ Function24dd4: ; 24dd4 ld a, [CurPartySpecies] cp EGG jr z, .egg - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jr nz, .skip ld a, PartyMon1Moves - PartyMon1 @@ -24264,7 +24264,7 @@ Function24dd4: ; 24dd4 call Function24e83 ld a, $13 call Function24e83 - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jr nz, .skip2 push hl @@ -27157,7 +27157,7 @@ Function27192: ; 27192 ld a, [hBattleTurn] and a jr nz, .ourturn - ld a, [IsInBattle] + ld a, [wBattleMode] dec a jr z, .done @@ -27245,7 +27245,7 @@ LinkCommunications: ; 28000 xor a ld [hli], a ld [hl], $50 - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TIMECAPSULE jp nz, Function28177 @@ -27443,7 +27443,7 @@ Function28177: ; 28177 ld de, wc6d0 ld bc, $00c8 call Function75f - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TRADECENTER jr nz, .asm_281fd ld hl, wc9f4 @@ -27494,7 +27494,7 @@ Function28177: ; 28177 ld hl, wc90f dec c jr nz, .asm_28224 - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TRADECENTER jp nz, .asm_282fe ld hl, wcb84 @@ -27628,7 +27628,7 @@ Function28177: ; 28177 cp $2 ld c, 66 call z, DelayFrames - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_COLOSSEUM jr nz, .asm_283a9 ld a, CAL @@ -27811,7 +27811,7 @@ endr dec a jr nz, .asm_2847f push bc - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TIMECAPSULE ld b, $d jr z, .asm_2847a @@ -28042,7 +28042,7 @@ Function28595: ; 28595 ld hl, PartyMonNicknames ld bc, $0042 call CopyBytes - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TRADECENTER ret nz ld de, wc9f4 @@ -28585,7 +28585,7 @@ Function28926: ; 28926 .asm_28946 ld a, $7f - ldcoord 11, 16 + ldcoord_a 11, 16 ld a, $13 ld [wcfa8], a ld a, $1 @@ -28617,7 +28617,7 @@ Function28926: ; 28926 .asm_2898d ld a, $7f - ldcoord 1, 16 + ldcoord_a 1, 16 ld a, $23 ld [wcfa8], a ld a, $1 @@ -28763,7 +28763,7 @@ Function28ac9: ; 28ac9 Function28ade: ; 28ade .asm_28ade ld a, $ed - ldcoord 9, 17 + ldcoord_a 9, 17 .asm_28ae3 call JoyTextDelay ld a, [hJoyLast] @@ -28773,7 +28773,7 @@ Function28ade: ; 28ade jr nz, .asm_28b0b push af ld a, " " - ldcoord 9, 17 + ldcoord_a 9, 17 pop af bit 6, a jr z, .asm_28b03 @@ -28788,7 +28788,7 @@ Function28ade: ; 28ade .asm_28b0b ld a, $ec - ldcoord 9, 17 + ldcoord_a 9, 17 ld a, $f ld [wcf56], a callba Function16d6ce @@ -29162,7 +29162,7 @@ Function28b87: ; 28b87 push bc call Function862 pop bc - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TIMECAPSULE jr z, .asm_28e63 ld a, b @@ -29188,7 +29188,7 @@ Function28b87: ; 28b87 callba Function4d354 ld c, $32 call DelayFrames - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TIMECAPSULE jp z, Function2805d jp Function28177 @@ -30455,7 +30455,7 @@ Function296f2: ; 296f2 (a:56f2) ; 29701 (a:5701) Function29701: ; 29701 - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TIMECAPSULE jr z, .asm_29725 ld hl, UnknownText_0x29737 @@ -30891,7 +30891,7 @@ Special_EnterTimeCapsule: ; 29c7b xor a ld [hVBlank], a inc a - ld [InLinkBattle], a + ld [wLinkMode], a ret ; 29c92 @@ -30939,7 +30939,7 @@ Special_AbortLink: ; 29c92 ld [hli], a ld [hl], a ld [hVBlank], a - ld [InLinkBattle], a + ld [wLinkMode], a ret ; 29ce8 @@ -31211,7 +31211,7 @@ Special_CheckBothSelectedSameRoom: ; 29e82 jr nz, .asm_29eaa ld a, [wd265] inc a - ld [InLinkBattle], a + ld [wLinkMode], a xor a ld [hVBlank], a ld a, $1 @@ -31226,7 +31226,7 @@ Special_CheckBothSelectedSameRoom: ; 29e82 Special_TimeCapsule: ; 29eaf ld a, LINK_TIMECAPSULE - ld [InLinkBattle], a + ld [wLinkMode], a call Function2ed3 callab LinkCommunications call Function2ee4 @@ -31237,7 +31237,7 @@ Special_TimeCapsule: ; 29eaf Special_TradeCenter: ; 29ec4 ld a, LINK_TRADECENTER - ld [InLinkBattle], a + ld [wLinkMode], a call Function2ed3 callab LinkCommunications call Function2ee4 @@ -31248,7 +31248,7 @@ Special_TradeCenter: ; 29ec4 Special_Colosseum: ; 29ed9 ld a, LINK_COLOSSEUM - ld [InLinkBattle], a + ld [wLinkMode], a call Function2ed3 callab LinkCommunications call Function2ee4 @@ -31259,7 +31259,7 @@ Special_Colosseum: ; 29ed9 Special_CloseLink: ; 29eee xor a - ld [InLinkBattle], a + ld [wLinkMode], a ld c, $3 call DelayFrames jp Function29f04 @@ -32589,7 +32589,7 @@ Function2c000: ; 2c000 ld [rOBP0], a call Function2c165 call Function2c01c - ld a, [IsInBattle] + ld a, [wBattleMode] dec a ret z jp Function2c03a @@ -32730,7 +32730,7 @@ Function2c0c5: ; 2c0c5 hlcoord 1, 2 ld de, 1 call Function2c0f1 - ld a, [IsInBattle] + ld a, [wBattleMode] dec a ret nz ld a, [TempEnemyMonSpecies] @@ -34119,7 +34119,7 @@ ConvertBerriesToBerryJuice: ; 2ede6 Function2ee18: ; 2ee18 ; If we're not in a communications room, ; we don't need to be here. - ld a, [InLinkBattle] + ld a, [wLinkMode] and a ret z @@ -34245,7 +34245,7 @@ PlayBattleMusic: ; 2ee6c jr .done .othertrainer - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jr nz, .johtotrainer @@ -34424,7 +34424,7 @@ GetTrainerClassName: ; 3952d Function39550: ; 39550 ld hl, wd26b - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jr nz, .ok @@ -34476,7 +34476,7 @@ ReadTrainerParty: ; 39771 bit 0, a ret nz - ld a, [InLinkBattle] + ld a, [wLinkMode] and a ret nz @@ -35030,7 +35030,7 @@ endr cp EVOLVE_TRADE jr z, .trade - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jp nz, .asm_423f9 @@ -35107,7 +35107,7 @@ endr .trade - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jp z, .asm_423f9 @@ -35119,7 +35119,7 @@ endr inc a jr z, .asm_422fd - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TIMECAPSULE jp z, .asm_423fa @@ -35142,7 +35142,7 @@ endr ld a, [wd1e9] and a jp z, .asm_423fa - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jp nz, .asm_423fa jr .asm_422fd @@ -35303,10 +35303,10 @@ Function423ff: ; 423ff pop de pop bc pop hl - ld a, [InLinkBattle] + ld a, [wLinkMode] and a ret nz - ld a, [IsInBattle] + ld a, [wBattleMode] and a ret nz ld a, [wd268] @@ -35652,11 +35652,11 @@ AIChooseMove: ; 440ce ; Pick the move with the lowest score. ; Wildmons attack at random. - ld a, [IsInBattle] + ld a, [wBattleMode] dec a ret z - ld a, [InLinkBattle] + ld a, [wLinkMode] and a ret nz @@ -39350,8 +39350,8 @@ Function49797: ; 49797 ld a, $4 call Function49336 ld a, $3 - ldcoord 0, 1, AttrMap - ldcoord 0, 14, AttrMap + ldcoord_a 0, 1, AttrMap + ldcoord_a 0, 14, AttrMap hlcoord 2, 0, AttrMap ld bc, $0812 ld a, $5 @@ -43924,11 +43924,11 @@ RetroactivelyIgnoreEggs: ; 4dc67 Function4dc7b: ; 4dc7b (13:5c7b) - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_MOBILE jr nz, StatsScreenInit - ld a, [IsInBattle] ; wd22d (aliases: EnemyMonEnd) + ld a, [wBattleMode] ; wd22d (aliases: EnemyMonEnd) and a jr z, StatsScreenInit jr Function4dc8f @@ -45850,7 +45850,7 @@ CheckBattleScene: ; 4ea44 ; Return carry if battle scene is turned off. ld a, 0 - ld hl, InLinkBattle + ld hl, wLinkMode call GetFarWRAMByte cp LINK_MOBILE jr z, .mobile @@ -54146,1287 +54146,10 @@ Predef36: ; 8c001 -Function8c001:: ; 8c001 - call UpdateTime - ld a, [TimeOfDay] - ld [CurTimeOfDay], a - call GetTimePalette - ld [TimeOfDayPal], a - ret -; 8c011 - - -_TimeOfDayPals:: ; 8c011 -; return carry if pals are changed - -; forced pals? - ld hl, wd846 - bit 7, [hl] - jr nz, .dontchange - -; do we need to bother updating? - ld a, [TimeOfDay] - ld hl, CurTimeOfDay - cp [hl] - jr z, .dontchange - -; if so, the time of day has changed - ld a, [TimeOfDay] - ld [CurTimeOfDay], a - -; get palette id - call GetTimePalette - -; same palette as before? - ld hl, TimeOfDayPal - cp [hl] - jr z, .dontchange - -; update palette id - ld [TimeOfDayPal], a - - -; save bg palette 8 - ld hl, Unkn1Pals + 8 * 7 ; Unkn1Pals + 7 pals - -; save wram bank - ld a, [rSVBK] - ld b, a -; wram bank 5 - ld a, 5 - ld [rSVBK], a - -; push palette - ld c, 4 ; NUM_PAL_COLORS -.push - ld d, [hl] - inc hl - ld e, [hl] - inc hl - push de - dec c - jr nz, .push - -; restore wram bank - ld a, b - ld [rSVBK], a - - -; update sgb pals - ld b, $9 - call GetSGBLayout - - -; restore bg palette 8 - ld hl, Unkn2Pals - 1 ; last byte in Unkn1Pals - -; save wram bank - ld a, [rSVBK] - ld d, a -; wram bank 5 - ld a, 5 - ld [rSVBK], a - -; pop palette - ld e, 4 ; NUM_PAL_COLORS -.pop - pop bc - ld [hl], c - dec hl - ld [hl], b - dec hl - dec e - jr nz, .pop - -; restore wram bank - ld a, d - ld [rSVBK], a - -; update palettes - call _UpdateTimePals - call DelayFrame - -; successful change - scf - ret - -.dontchange -; no change occurred - and a - ret -; 8c070 - - -_UpdateTimePals:: ; 8c070 - ld c, $9 ; normal - call GetTimePalFade - call DmgToCgbTimePals - ret -; 8c079 - -FadeInBGMap:: ; 8c079 - ld c, $12 - call GetTimePalFade - ld b, $4 - call Function8c16d - ret -; 8c084 - -FadeBlackBGMap:: ; 8c084 - call Function8c0c1 - ld c, $9 - call GetTimePalFade - ld b, $4 - call Function8c15e - ret -; 8c092 - -Special_BattleTowerFade: ; 8c092 - call Function8c0c1 - ld c, $9 - call GetTimePalFade - ld b, $4 -.asm_8c09c - call DmgToCgbTimePals -rept 3 - inc hl -endr - ld c, $7 - call DelayFrames - dec b - jr nz, .asm_8c09c - ret -; 8c0ab - -Special_FadeInQuickly: ; 8c0ab - ld c, $0 - call GetTimePalFade - ld b, $4 - call Function8c15e - ret -; 8c0b6 - -Special_FadeBlackQuickly: ; 8c0b6 - ld c, $9 - call GetTimePalFade - ld b, $4 - call Function8c16d - ret -; 8c0c1 - - -Function8c0c1: ; 8c0c1 - ld a, [rSVBK] - push af - ld a, $5 - ld [rSVBK], a - ld hl, Unkn1Pals - ld a, [hli] - ld e, a - ld a, [hli] - ld d, a - ld hl, Unkn1Pals + 8 - ld c, $6 -.asm_8c0d4 - ld a, e - ld [hli], a - ld a, d - ld [hli], a -rept 6 - inc hl -endr - dec c - jr nz, .asm_8c0d4 - pop af - ld [rSVBK], a - ret -; 8c0e5 - -brightlevel: MACRO - db (\1 << 6) | (\2 << 4) | (\3 << 2) | \4 -ENDM - -Function8c0e5: ; 8c0e5 - ld hl, .BrightnessLevels - ld a, [wc2d0] - cp $4 ; Dark cave, needs Flash - jr z, .DarkCave - and $7 - add l - ld l, a - ld a, $0 - adc h - ld h, a - ld a, [hl] - ld [wd847], a - ret -.DarkCave - ld a, [StatusFlags] - bit 2, a - jr nz, .UsedFlash - ld a, $ff ; 3, 3, 3, 3 - ld [wd847], a - ret -.UsedFlash - ld a, $aa ; 2, 2, 2, 2 - ld [wd847], a - ret -; 8c10f (23:410f) - -.BrightnessLevels: ; 8c10f - brightlevel 3, 2, 1, 0 - brightlevel 1, 1, 1, 1 - brightlevel 2, 2, 2, 2 - brightlevel 0, 0, 0, 0 - brightlevel 3, 3, 3, 3 - brightlevel 3, 2, 1, 0 - brightlevel 3, 2, 1, 0 - brightlevel 3, 2, 1, 0 -; 8c117 - -GetTimePalette: ; 8c117 - ld a, [TimeOfDay] - ld e, a - ld d, 0 - ld hl, .TimePalettes -rept 2 - add hl, de -endr - ld a, [hli] - ld h, [hl] - ld l, a - jp [hl] -; 8c126 - -.TimePalettes - dw .MorningPalette - dw .DayPalette - dw .NitePalette - dw .DarknessPalette - -.MorningPalette - ld a, [wd847] - and %00000011 ; 0 - ret - -.DayPalette - ld a, [wd847] - and %00001100 ; 1 - srl a - srl a - ret - -.NitePalette - ld a, [wd847] - and %00110000 ; 2 - swap a - ret - -.DarknessPalette - ld a, [wd847] - and %11000000 ; 3 - rlca - rlca - ret -; 8c14e - - -DmgToCgbTimePals: ; 8c14e - push hl - push de - ld a, [hli] - call DmgToCgbBGPals - ld a, [hli] - ld e, a - ld a, [hli] - ld d, a - call DmgToCgbObjPals - pop de - pop hl - ret -; 8c15e - -Function8c15e: ; 8c15e -.asm_8c15e - call DmgToCgbTimePals -rept 3 - inc hl -endr - ld c, $2 - call DelayFrames - dec b - jr nz, .asm_8c15e - ret -; 8c16d - -Function8c16d: ; 8c16d -.asm_8c16d - call DmgToCgbTimePals -rept 3 - dec hl -endr - ld c, $2 - call DelayFrames - dec b - jr nz, .asm_8c16d - ret -; 8c17c - - -GetTimePalFade: ; 8c17c -; check cgb - ld a, [hCGB] - and a - jr nz, .cgb - -; else: dmg - -; index - ld a, [TimeOfDayPal] - and %11 - -; get fade table - push bc - ld c, a - ld b, $0 - ld hl, .dmgfades -rept 2 - add hl, bc -endr - ld a, [hli] - ld h, [hl] - ld l, a - pop bc - -; get place in fade table - ld b, $0 - add hl, bc - ret - -.cgb - ld hl, .cgbfade - ld b, $0 - add hl, bc - ret - -.dmgfades - dw .morn - dw .day - dw .nite - dw .darkness - -.morn - db %11111111, %11111111, %11111111 - db %11111110, %11111110, %11111110 - db %11111001, %11100100, %11100100 - db %11100100, %11010000, %11010000 - db %10010000, %10000000, %10000000 - db %01000000, %01000000, %01000000 - db %00000000, %00000000, %00000000 - -.day - db %11111111, %11111111, %11111111 - db %11111110, %11111110, %11111110 - db %11111001, %11100100, %11100100 - db %11100100, %11010000, %11010000 - db %10010000, %10000000, %10000000 - db %01000000, %01000000, %01000000 - db %00000000, %00000000, %00000000 - -.nite - db %11111111, %11111111, %11111111 - db %11111110, %11111110, %11111110 - db %11111001, %11100100, %11100100 - db %11101001, %11010000, %11010000 - db %10010000, %10000000, %10000000 - db %01000000, %01000000, %01000000 - db %00000000, %00000000, %00000000 - -.darkness - db %11111111, %11111111, %11111111 - db %11111110, %11111110, %11111111 - db %11111110, %11100100, %11111111 - db %11111101, %11010000, %11111111 - db %11111101, %10000000, %11111111 - db %00000000, %01000000, %00000000 - db %00000000, %00000000, %00000000 - -.cgbfade - db %11111111, %11111111, %11111111 - db %11111110, %11111110, %11111110 - db %11111001, %11111001, %11111001 - db %11100100, %11100100, %11100100 - db %10010000, %10010000, %10010000 - db %01000000, %01000000, %01000000 - db %00000000, %00000000, %00000000 -; 8c20f - - -Predef_StartBattle: ; 8c20f - call Function8c26d - ld a, [rBGP] - ld [wcfc7], a - ld a, [rOBP0] - ld [wcfc8], a - ld a, [rOBP1] - ld [wcfc9], a - call DelayFrame - ld hl, hVBlank - ld a, [hl] - push af - ld [hl], $1 - -.loop - ld a, [wcf63] - bit 7, a - jr nz, .done - call FlashingPokeballAnimation - call DelayFrame - jr .loop - -.done - ld a, [rSVBK] - push af - ld a, $5 - ld [rSVBK], a - - ld hl, Unkn1Pals - ld bc, $0040 - xor a - call ByteFill - - pop af - ld [rSVBK], a - - ld a, %11111111 - ld [wcfc7], a - call DmgToCgbBGPals - call DelayFrame - xor a - ld [hLCDStatCustom], a - ld [hLCDStatCustom + 1], a - ld [hLCDStatCustom + 2], a - ld [hSCY], a +INCLUDE "engine/timeofdaypals.asm" +INCLUDE "engine/battle_start.asm" - ld a, $1 - ld [rSVBK], a - pop af - ld [hVBlank], a - call DelayFrame - ret -; 8c26d - -Function8c26d: ; 8c26d - ld a, [InLinkBattle] - cp LINK_MOBILE - jr z, .mobile - callba Function6454 - call UpdateSprites - call DelayFrame - call Function8c2a0 - call Function8cf4f - jr .resume - -.mobile - call Function8c2aa - -.resume - ld a, SCREEN_HEIGHT_PX - ld [hWY], a - call DelayFrame - xor a - ld [hBGMapMode], a - ld hl, wcf63 - xor a -rept 2 - ld [hli], a -endr - ld [hl], a - call WipeLYOverrides - ret -; 8c2a0 - -Function8c2a0: ; 8c2a0 - call Function8c2aa - ld hl, VBGMap0 - call Function8c2cf - ret -; 8c2aa - -Function8c2aa: ; 8c2aa - ld de, GFX_8c2f4 - ld hl, VTiles1 tile $7e - ld b, BANK(GFX_8c2f4) - ld c, 2 - call Request2bpp - - ld a, [rVBK] - push af - ld a, $1 - ld [rVBK], a - - ld de, GFX_8c2f4 - ld hl, VTiles4 tile $7e - ld b, BANK(GFX_8c2f4) - ld c, 2 - call Request2bpp - - pop af - ld [rVBK], a - ret -; 8c2cf - -Function8c2cf: ; 8c2cf - ld a, [rSVBK] - push af - ld a, $6 - ld [rSVBK], a - push hl - ld hl, w6_d000 - ld bc, $28 * $10 - -.loop - ld [hl], -1 - inc hl - dec bc - ld a, c - or b - jr nz, .loop - - pop hl - ld de, w6_d000 - ld b, BANK(Function8c2cf) ; BANK(@) - ld c, $28 - call Request2bpp - pop af - ld [rSVBK], a - ret -; 8c2f4 - -GFX_8c2f4: ; 8c2f4 -INCBIN "gfx/unknown/08c2f4.2bpp" - - -FlashingPokeballAnimation: ; 8c314 - ld a, [wcf63] - ld e, a - ld d, 0 - ld hl, .jumptable -rept 2 - add hl, de -endr - ld a, [hli] - ld h, [hl] - ld l, a - jp [hl] -; 8c323 - -.jumptable: ; 8c323 (23:4323) - dw StartTrainerBattle_DetermineWhichAnimation ; 00 - - ; Animation 1: cave - dw StartTrainerBattle_LoadPokeBallGraphics ; 01 - dw StartTrainerBattle_SetUpBGMap ; 02 - dw StartTrainerBattle_Flash ; 03 - dw StartTrainerBattle_Flash ; 04 - dw StartTrainerBattle_Flash ; 05 - dw StartTrainerBattle_NextScene ; 06 - dw StartTrainerBattle_SetUpForWavyOutro ; 07 - dw StartTrainerBattle_SineWave ; 08 - - ; Animation 2: cave, stronger - dw StartTrainerBattle_LoadPokeBallGraphics ; 09 - dw StartTrainerBattle_SetUpBGMap ; 0a - dw StartTrainerBattle_Flash ; 0b - dw StartTrainerBattle_Flash ; 0c - dw StartTrainerBattle_Flash ; 0d - dw StartTrainerBattle_NextScene ; 0e - ; There is no setup for this one - dw StartTrainerBattle_ZoomToBlack ; 0f - - ; Animation 3: no cave - dw StartTrainerBattle_LoadPokeBallGraphics ; 10 - dw StartTrainerBattle_SetUpBGMap ; 11 - dw StartTrainerBattle_Flash ; 12 - dw StartTrainerBattle_Flash ; 13 - dw StartTrainerBattle_Flash ; 14 - dw StartTrainerBattle_NextScene ; 15 - dw StartTrainerBattle_SetUpForSpinOutro ; 16 - dw StartTrainerBattle_SpinToBlack ; 17 - - ; Animation 4: no cave, stronger - dw StartTrainerBattle_LoadPokeBallGraphics ; 18 - dw StartTrainerBattle_SetUpBGMap ; 19 - dw StartTrainerBattle_Flash ; 1a - dw StartTrainerBattle_Flash ; 1b - dw StartTrainerBattle_Flash ; 1c - dw StartTrainerBattle_NextScene ; 1d - dw StartTrainerBattle_SetUpForRandomScatterOutro ; 1e - dw StartTrainerBattle_SpeckleToBlack ; 1f - - ; All animations jump to here. - dw StartTrainerBattle_Finish ; 20 - - -StartTrainerBattle_DetermineWhichAnimation: ; 8c365 (23:4365) -; The screen flashes a different number of -; times depending on the level of your lead -; Pokemon relative to the opponent's. - ld de, 0 - ld a, [BattleMonLevel] - add 3 - ld hl, EnemyMonLevel - cp [hl] - jr nc, .okay - set 0, e -.okay - ld a, [wPermission] - cp CAVE - jr z, .okay2 - cp PERM_5 - jr z, .okay2 - cp DUNGEON - jr z, .okay2 - set 1, e -.okay2 - ld hl, .StartingPoints - add hl, de - ld a, [hl] - ld [wcf63], a - ret -; 8c38f (23:438f) - -.StartingPoints: ; 8c38f - db 1, 9 - db 16, 24 -; 8c393 - -StartTrainerBattle_Finish: ; 8c393 (23:4393) - call ClearSprites - ld a, $80 - ld [wcf63], a - ret - -StartTrainerBattle_NextScene: ; 8c39c (23:439c) - ld hl, wcf63 - inc [hl] - ret - -StartTrainerBattle_SetUpBGMap: ; 8c3a1 (23:43a1) - call StartTrainerBattle_NextScene - xor a - ld [wcf64], a - ld [hBGMapMode], a ; $ff00+$d4 - ret - -StartTrainerBattle_Flash: ; 8c3ab (23:43ab) - call Function8c3b3 - ret nc - call StartTrainerBattle_NextScene - ret - -Function8c3b3: ; 8c3b3 (23:43b3) - ld a, [wd847] - cp -1 - jr z, .done - ld hl, wcf64 - ld a, [hl] - inc [hl] - srl a - ld e, a - ld d, 0 - ld hl, .pals - add hl, de - ld a, [hl] - cp $1 - jr z, .done - ld [wcfc7], a - call DmgToCgbBGPals - and a - ret - -.done - xor a - ld [wcf64], a - scf - ret -; 8c3db (23:43db) - -.pals: ; 8c3db - db %11111001 ; 3321 - db %11111110 ; 3332 - db %11111111 ; 3333 - db %11111110 ; 3332 - db %11111001 ; 3321 - db %11100100 ; 3210 - db %10010000 ; 2100 - db %01000000 ; 1000 - db %00000000 ; 0000 - db %01000000 ; 1000 - db %10010000 ; 2100 - db %11100100 ; 3210 - db %00000001 ; 0001 -; 8c3e8 - -StartTrainerBattle_SetUpForWavyOutro: ; 8c3e8 (23:43e8) - callba Function5602 - ld a, $5 - ld [rSVBK], a ; $ff00+$70 - call StartTrainerBattle_NextScene - ld a, $43 - ld [hLCDStatCustom], a ; $ff00+$c6 - xor a - ld [hLCDStatCustom + 1], a - ld a, $90 - ld [hLCDStatCustom + 2], a - xor a - ld [wcf64], a - ld [wcf65], a - ret - -StartTrainerBattle_SineWave: ; 8c408 (23:4408) - ld a, [wcf64] - cp $60 - jr nc, .end - call .DoSineWave - ret - -.end - ld a, $20 - ld [wcf63], a - ret - -.DoSineWave: ; 8c419 (23:4419) - ld hl, wcf65 - ld a, [hl] - inc [hl] - ld hl, wcf64 - ld d, [hl] - add [hl] - ld [hl], a - ld a, $90 - ld bc, wd100 - ld e, $0 - -.loop - push af - push de - ld a, e - call StartTrainerBattle_DrawSineWave - ld [bc], a - inc bc - pop de - ld a, e - add $2 - ld e, a - pop af - dec a - jr nz, .loop - ret - -StartTrainerBattle_SetUpForSpinOutro: ; 8c43d (23:443d) - callba Function5602 - ld a, $5 - ld [rSVBK], a ; $ff00+$70 - call StartTrainerBattle_NextScene - xor a - ld [wcf64], a - ret - -spintable_entry: MACRO - db \1 - dw .wedge\2 - dwcoord \3, \4 -ENDM - -; quadrants - const_def - const UPPER_LEFT - const UPPER_RIGHT - const LOWER_LEFT - const LOWER_RIGHT - -StartTrainerBattle_SpinToBlack: ; 8c44f (23:444f) - xor a - ld [hBGMapMode], a ; $ff00+$d4 - ld a, [wcf64] - ld e, a - ld d, 0 - ld hl, .spintable -rept 5 - add hl, de -endr - ld a, [hli] - cp -1 - jr z, .end - ld [wcf65], a - call .load - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - call DelayFrame - call DelayFrame - ld hl, wcf64 - inc [hl] - ret - -.end - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - call DelayFrame - call DelayFrame - call DelayFrame - xor a - ld [hBGMapMode], a ; $ff00+$d4 - ld a, $20 - ld [wcf63], a - ret -; 8c490 (23:4490) - -.spintable: ; 8c490 - spintable_entry UPPER_LEFT, 1, 1, 6 - spintable_entry UPPER_LEFT, 2, 0, 3 - spintable_entry UPPER_LEFT, 3, 1, 0 - spintable_entry UPPER_LEFT, 4, 5, 0 - spintable_entry UPPER_LEFT, 5, 9, 0 - spintable_entry UPPER_RIGHT, 5, 10, 0 - spintable_entry UPPER_RIGHT, 4, 14, 0 - spintable_entry UPPER_RIGHT, 3, 18, 0 - spintable_entry UPPER_RIGHT, 2, 19, 3 - spintable_entry UPPER_RIGHT, 1, 18, 6 - spintable_entry LOWER_RIGHT, 1, 18, 11 - spintable_entry LOWER_RIGHT, 2, 19, 14 - spintable_entry LOWER_RIGHT, 3, 18, 17 - spintable_entry LOWER_RIGHT, 4, 14, 17 - spintable_entry LOWER_RIGHT, 5, 10, 17 - spintable_entry LOWER_LEFT, 5, 9, 17 - spintable_entry LOWER_LEFT, 4, 5, 17 - spintable_entry LOWER_LEFT, 3, 1, 17 - spintable_entry LOWER_LEFT, 2, 0, 14 - spintable_entry LOWER_LEFT, 1, 1, 11 - db -1 -; 8c4f5 - -.load: ; 8c4f5 (23:44f5) - ld a, [hli] - ld e, a - ld a, [hli] - ld d, a - ld a, [hli] - ld h, [hl] - ld l, a -.loop - push hl - ld a, [de] - ld c, a - inc de -.loop1 - ld [hl], $ff - ld a, [wcf65] - bit 0, a - jr z, .leftside - inc hl - jr .okay1 -.leftside - dec hl -.okay1 - dec c - jr nz, .loop1 - pop hl - ld a, [wcf65] - bit 1, a - ld bc, SCREEN_WIDTH - jr z, .upper - ld bc, -SCREEN_WIDTH -.upper - add hl, bc - ld a, [de] - inc de - cp -1 - ret z - and a - jr z, .loop - ld c, a -.loop2 - ld a, [wcf65] - bit 0, a - jr z, .leftside2 - dec hl - jr .okay2 -.leftside2 - inc hl -.okay2 - dec c - jr nz, .loop2 - jr .loop -; 8c538 (23:4538) - -.wedge1: db 2, 3, 5, 4, 9, -1 -.wedge2: db 1, 1, 2, 2, 4, 2, 4, 2, 3, -1 -.wedge3: db 2, 1, 3, 1, 4, 1, 4, 1, 4, 1, 3, 1, 2, 1, 1, 1, 1, -1 -.wedge4: db 4, 1, 4, 0, 3, 1, 3, 0, 2, 1, 2, 0, 1, -1 -.wedge5: db 4, 0, 3, 0, 3, 0, 2, 0, 2, 0, 1, 0, 1, 0, 1, -1 -; 8c578 - -StartTrainerBattle_SetUpForRandomScatterOutro: ; 8c578 (23:4578) - callba Function5602 - ld a, $5 - ld [rSVBK], a ; $ff00+$70 - call StartTrainerBattle_NextScene - ld a, $10 - ld [wcf64], a - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - ret - -StartTrainerBattle_SpeckleToBlack: ; 8c58f (23:458f) - ld hl, wcf64 - ld a, [hl] - and a - jr z, .done - dec [hl] - ld c, $c -.loop - push bc - call .BlackOutRandomTile - pop bc - dec c - jr nz, .loop - ret - -.done - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - call DelayFrame - call DelayFrame - call DelayFrame - xor a - ld [hBGMapMode], a ; $ff00+$d4 - ld a, $20 - ld [wcf63], a - ret - -.BlackOutRandomTile: ; 8c5b8 (23:45b8) -.y_loop - call Random - cp SCREEN_HEIGHT - jr nc, .y_loop - ld b, a - -.x_loop - call Random - cp SCREEN_WIDTH - jr nc, .x_loop - ld c, a - - hlcoord 0, -1 - ld de, SCREEN_WIDTH - inc b - -.row_loop - add hl, de - dec b - jr nz, .row_loop - add hl, bc - -; If the tile has already been blacked out, -; sample a new tile - ld a, [hl] - cp $ff - jr z, .y_loop - ld [hl], $ff - ret - -StartTrainerBattle_LoadPokeBallGraphics: ; 8c5dc (23:45dc) - ld a, [OtherTrainerClass] - and a - jp z, .nextscene - xor a - ld [hBGMapMode], a ; $ff00+$d4 - hlcoord 0, 0, AttrMap - ld bc, SCREEN_HEIGHT * SCREEN_WIDTH - inc b - inc c - jr .enter_loop_midway - -.loop - ld a, [hl] - or $7 - ld [hli], a -.enter_loop_midway - dec c - jr nz, .loop - dec b - jr nz, .loop - call .loadpokeballgfx - hlcoord 2, 1 - ld b, $10 -.loop2 - push hl - ld c, $2 -.loop3 - push hl - ld a, [de] - inc de -.loop4 - and a - jr z, .asm_8c614 - sla a - jr nc, .asm_8c611 - ld [hl], $fe -.asm_8c611 - inc hl - jr .loop4 -.asm_8c614 - pop hl - push bc - ld bc, $8 - add hl, bc - pop bc - dec c - jr nz, .loop3 - pop hl - push bc - ld bc, $14 - add hl, bc - pop bc - dec b - jr nz, .loop2 - ld a, [hCGB] ; $ff00+$e6 - and a - jr nz, .cgb - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - call DelayFrame - call DelayFrame - jr .nextscene - -.cgb - ld hl, .daypals - ld a, [TimeOfDayPal] - and (1 << 2) - 1 - cp 3 - jr nz, .daytime - ld hl, .nightpals -.daytime - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $5 ; WRAM5 = palettes - ld [rSVBK], a ; $ff00+$70 - call .copypals - push hl - ld de, Unkn1Pals + 8 * 7 - ld bc, $8 - call CopyBytes - pop hl - ld de, BGPals + 8 * 7 - ld bc, $8 - call CopyBytes - pop af - ld [rSVBK], a ; $ff00+$70 - ld a, $1 - ld [hCGBPalUpdate], a ; $ff00+$e5 - call DelayFrame - call Function8cf4f - -.nextscene: ; 8c673 (23:4673) - call StartTrainerBattle_NextScene - ret - -.copypals: ; 8c677 (23:4677) - ld de, Unkn1Pals + 8 * 7 - call .copy - ld de, BGPals + 8 * 7 - call .copy - ld de, Unkn2Pals + 8 * 6 - call .copy - ld de, OBPals + 8 * 6 - call .copy - ld de, Unkn2Pals + 8 * 7 - call .copy - ld de, OBPals + 8 * 7 - -.copy: ; 8c698 (23:4698) - push hl - ld bc, $8 - call CopyBytes - pop hl - ret -; 8c6a1 (23:46a1) - -.daypals: ; 8c6a1 - RGB 31, 18, 29 - RGB 31, 11, 15 - RGB 31, 05, 05 - RGB 07, 07, 07 -; 8c6a9 - -.nightpals: ; 8c6a9 - RGB 31, 18, 29 - RGB 31, 05, 05 - RGB 31, 05, 05 - RGB 31, 05, 05 - -.loadpokeballgfx: - ld a, [OtherTrainerClass] - ld de, PokeBallTransition - ret - -PokeBallTransition: - db %00000011, %11000000 - db %00001111, %11110000 - db %00111100, %00111100 - db %00110000, %00001100 - db %01100000, %00000110 - db %01100011, %11000110 - db %11000110, %01100011 - db %11111100, %00111111 - db %11111100, %00111111 - db %11000110, %01100011 - db %01100011, %11000110 - db %01100000, %00000110 - db %00110000, %00001100 - db %00111100, %00111100 - db %00001111, %11110000 - db %00000011, %11000000 - -WipeLYOverrides: ; 8c6d8 - ld a, [rSVBK] - push af - ld a, $5 - ld [rSVBK], a - ld hl, LYOverrides - call .wipe - ld hl, LYOverridesBackup - call .wipe - pop af - ld [rSVBK], a - ret -; 8c6ef - -.wipe: ; 8c6ef - xor a - ld c, SCREEN_HEIGHT_PX -.loop - ld [hli], a - dec c - jr nz, .loop - ret -; 8c6f7 - - -StartTrainerBattle_DrawSineWave: ; 8c6f7 (23:46f7) - and (1 << 6) - 1 - cp 1 << 5 - jr nc, .okay - call .DoSineWave - ld a, h - ret - -.okay - and (1 << 5) - 1 - call .DoSineWave - ld a, h - xor -1 ; cpl - inc a - ret - -.DoSineWave: ; 8c70c (23:470c) - ld e, a - ld a, d - ld d, 0 - ld hl, .sinewave -rept 2 - add hl, de -endr - ld e, [hl] - inc hl - ld d, [hl] - ld hl, 0 -.loop - srl a - jr nc, .skip - add hl, de -.skip - sla e - rl d - and a - jr nz, .loop - ret -; 8c728 (23:4728) - -.sinewave: ; 8c728 - sine_wave $100 -; 8c768 - -zoombox: macro -; width, height, start y, start x - db \1, \2 - dwcoord \3, \4 -endm - -StartTrainerBattle_ZoomToBlack: ; 8c768 (23:4768) - callba Function5602 - ld de, .boxes - -.loop - ld a, [de] - cp -1 - jr z, .done - inc de - ld c, a - ld a, [de] - inc de - ld b, a - ld a, [de] - inc de - ld l, a - ld a, [de] - inc de - ld h, a - xor a - ld [hBGMapMode], a ; $ff00+$d4 - call .Copy - call WaitBGMap - jr .loop - -.done - ld a, $20 - ld [wcf63], a - ret -; 8c792 (23:4792) - -.boxes: ; 8c792 - zoombox 4, 2, 8, 8 - zoombox 6, 4, 7, 7 - zoombox 8, 6, 6, 6 - zoombox 10, 8, 5, 5 - zoombox 12, 10, 4, 4 - zoombox 14, 12, 3, 3 - zoombox 16, 14, 2, 2 - zoombox 18, 16, 1, 1 - zoombox 20, 18, 0, 0 - db -1 -; 8c7b7 - -.Copy: ; 8c7b7 (23:47b7) - ld a, $ff -.row - push bc - push hl -.col - ld [hli], a - dec c - jr nz, .col - pop hl - ld bc, SCREEN_WIDTH - add hl, bc - pop bc - dec b - jr nz, .row - ret -; 8c7c9 (23:47c9) - -Function8c7c9: ; 8c7c9 +Function8c7c9: ; unreferenced ld a, $1 ld [hBGMapMode], a call WaitBGMap @@ -55475,25 +54198,25 @@ ShakeHeadbuttTree: ; 8c80a ld a, $90 ld [wc3b5], a callba Function8cf7a - call Function8c913 + call GetHeadbuttTreeRelativeLocation ld a, $20 ld [wcf64], a call WaitSFX ld de, SFX_SANDSTORM call PlaySFX -.asm_8c852 +.loop ld hl, wcf64 ld a, [hl] and a - jr z, .asm_8c86a + jr z, .done dec [hl] ld a, $90 ld [wc3b5], a callba Function8cf7a call DelayFrame - jr .asm_8c852 + jr .loop -.asm_8c86a +.done call Function2173 call WaitBGMap xor a @@ -55515,19 +54238,20 @@ HeadbuttTreeGFX: ; 8c893 INCBIN "gfx/unknown/08c893.2bpp" ; 8c913 -Function8c913: ; 8c913 +GetHeadbuttTreeRelativeLocation: ; 8c913 xor a ld [hBGMapMode], a ld a, [PlayerDirection] - and $c + and %00001100 srl a ld e, a ld d, 0 - ld hl, Unknown_8c938 + ld hl, TreeRelativeLocationTable add hl, de ld a, [hli] ld h, [hl] ld l, a + ld a, $5 ld [hli], a ld [hld], a @@ -55541,11 +54265,12 @@ Function8c913: ; 8c913 ret ; 8c938 -Unknown_8c938: ; 8c938 - dwcoord 8, 10 - dwcoord 8, 6 - dwcoord 6, 8 - dwcoord 10, 8 +TreeRelativeLocationTable: ; 8c938 + dwcoord 8, 8 + 2 ; RIGHT + dwcoord 8, 8 - 2 ; LEFT + dwcoord 8 - 2, 8 ; DOWN + dwcoord 8 + 2, 8 ; UP +; 8c940 ; 8c940 Function8c940: ; 8c940 @@ -56409,9 +55134,11 @@ Function8cf69: ; 8cf69 push de push bc push af + ld a, $0 ld [wc3b5], a call Function8cf7a + pop af pop bc pop de @@ -56422,6 +55149,7 @@ Function8cf69: ; 8cf69 Function8cf7a: ; 8cf7a ld hl, wPartyMonMenuIconAnims ld e, 10 ; Do this first loop 10 times + .loop ld a, [hl] and a @@ -56444,6 +55172,7 @@ Function8cf7a: ; 8cf7a ld a, [wc3b5] ld l, a ld h, Sprites / $0100 + .loop2 ; Clear (Sprites + [wc3b5] --> SpritesEnd) ld a, l cp SpritesEnd % $0100 @@ -56458,7 +55187,8 @@ Function8cf7a: ; 8cf7a Function8cfa8: ; 8cfa8 (23:4fa8) ld hl, wPartyMonMenuIconAnims - ld e, $a + ld e, 10 + .loop ld a, [hl] and a @@ -56472,21 +55202,24 @@ Function8cfa8: ; 8cfa8 (23:4fa8) pop de pop hl jr c, .done + .next - ld bc, $10 + ld bc, $0010 add hl, bc dec e jr nz, .loop + ld a, [wc3b5] ld l, a - ld h, $c4 + ld h, Sprites / $100 .loop2 ld a, l - cp $40 + cp 4 * 16 jr nc, .done xor a ld [hli], a jr .loop2 + .done ret @@ -57033,7 +55766,7 @@ endr ld hl, $7 add hl, bc ld a, d - and $10 + and $10 ; bit 4 jr z, .asm_8d2df ld a, e and a @@ -59686,7 +58419,7 @@ endr ; 8ea3f GetGFXUnlessMobile: ; 8ea3f - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_MOBILE jp nz, Request2bpp jp Functiondc9 @@ -60100,7 +58833,7 @@ Function90197: ; 90197 ret Function90199: ; 90199 (24:4199) - ld a, [InLinkBattle] + ld a, [wLinkMode] and a jr nz, .asm_901e7 call GetMapHeaderPhoneServiceNybble @@ -65997,13 +64730,13 @@ UnknownText_0x931b9: ; 0x931b9 Function931ba: ; 931ba ld a, [EffectFailed] add $25 - ldcoord 2, 13 + ldcoord_a 2, 13 inc a - ldcoord 2, 14 + ldcoord_a 2, 14 inc a - ldcoord 3, 13 + ldcoord_a 3, 13 inc a - ldcoord 3, 14 + ldcoord_a 3, 14 hlcoord 18, 17 ld [hl], $ee ld hl, UnknownText_0x931db @@ -77831,7 +76564,7 @@ Functionfb57e: ; fb57e ld a, [hl] cp 101 jr nc, .asm_fb5db - ld a, [InLinkBattle] + ld a, [wLinkMode] cp LINK_TIMECAPSULE jr nz, .asm_fb5d9 ld hl, OTPartySpecies @@ -84400,22 +83133,22 @@ Function1de27f: ; 1de27f -Function1de28a:: ; 1de28a +_DudeAutoInput_A:: ; 1de28a ld hl, DudeAutoInput_A - jr Function1de299 + jr _DudeAutoInput ; 1de28f -Function1de28f: ; 1de28f +_DudeAutoInput_RightA: ; 1de28f ld hl, DudeAutoInput_RightA - jr Function1de299 + jr _DudeAutoInput ; 1de294 -Function1de294: ; 1de294 +_DudeAutoInput_DownA: ; 1de294 ld hl, DudeAutoInput_DownA - jr Function1de299 + jr _DudeAutoInput ; 1de299 -Function1de299: ; 1de299 +_DudeAutoInput: ; 1de299 ld a, BANK(DudeAutoInputs) call StartAutoInput ret -- cgit v1.2.3 From 6c25592b8c43afe9780968da88f9b06cbb526e72 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 19 Oct 2015 16:49:29 -0400 Subject: So very jumb --- main.asm | 904 ++++++++++++++++++++++++++++++++------------------------------- 1 file changed, 460 insertions(+), 444 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index ef5f7ab14..f3b0ba040 100644 --- a/main.asm +++ b/main.asm @@ -727,7 +727,7 @@ DisplayGameTime: ; 5f84 OakSpeech: ; 0x5f99 - callba Function90672 + callba InitClock call Function4dd call ClearTileMap @@ -1082,6 +1082,7 @@ Function6219: ; 6219 .loop call Function627b jr nc, .loop + call ClearSprites call WhiteBGMap pop af @@ -1133,16 +1134,16 @@ TitleScreen: ; 6274 ; 627b Function627b: ; 627b - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a - jr nz, .true + jr nz, .done_title call TitleScreenScene callba Function10eea7 call DelayFrame and a ret -.true +.done_title scf ret ; 6292 @@ -1180,7 +1181,7 @@ endr ; 62b7 Function62b7: ; 62b7 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret ; 62bc @@ -1221,7 +1222,7 @@ TitleScreenEntrance: ; 62bc .done ; Next scene - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] xor a ld [hLCDStatCustom], a @@ -1239,7 +1240,7 @@ TitleScreenEntrance: ; 62bc TitleScreenTimer: ; 62f6 ; Next scene - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ; Start a timer @@ -1323,13 +1324,13 @@ TitleScreenMain: ; 6304 ld [wcf64], a ; Return to the intro sequence. - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret .end ; Next scene - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ; Fade out the title screen music @@ -1348,7 +1349,7 @@ TitleScreenMain: ; 6304 ld [wcf64], a ; Return to the intro sequence. - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret ; 6375 @@ -1368,7 +1369,7 @@ TitleScreenEnd: ; 6375 ld [wcf64], a ; Back to the intro. - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret ; 6389 @@ -1464,7 +1465,7 @@ GameInit:: ; 642e call ResetTextRelatedRAM call WhiteBGMap call ClearTileMap - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a xor a ld [hBGMapAddress], a @@ -10759,7 +10760,7 @@ Function118ca: ; 118ca Function11915: ; 11915 call JoyTextDelay - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_11930 call Function11968 @@ -10805,7 +10806,7 @@ Function11940: ; 11940 ; 11968 Function11968: ; 11968 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, $0 ld hl, Jumptable_11977 @@ -10842,7 +10843,7 @@ Function1197b: ; 1197b (4:597b) ld hl, $e add hl, bc ld [hl], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret @@ -10896,7 +10897,7 @@ Function119a1: ; 119a1 (4:59a1) .asm_119eb call Function11bf7 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -11326,7 +11327,7 @@ Function11c51: ; 11c51 ld [wc3bf], a ld [hSCX], a ld [wc3c0], a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld [wcf64], a ld [hBGMapMode], a ld [wc6d2], a @@ -11499,7 +11500,7 @@ Function11fa9: ; 11fa9 (4:5fa9) Function11fc0: ; 11fc0 (4:5fc0) call JoyTextDelay - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_11fdb call Function12008 @@ -11534,7 +11535,7 @@ Function11feb: ; 11feb (4:5feb) ret Function12008: ; 12008 (4:6008) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_12017 @@ -11565,7 +11566,7 @@ Function1201b: ; 1201b (4:601b) ld hl, $e add hl, bc ld [hl], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret @@ -11635,7 +11636,7 @@ Function1203a: ; 1203a (4:603a) .asm_120a1 call Function11bf7 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -20494,7 +20495,7 @@ Function16be4: ; 16be4 call PlaceString xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a call Function16cc8 call WaitBGMap @@ -20524,12 +20525,12 @@ Function16be4: ; 16be4 jr .asm_16c6b .asm_16c82 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] push af callba Function84560 call RestartMapMusic pop af - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a jr .asm_16c6b .asm_16c95 @@ -20551,7 +20552,7 @@ Function16ca0: ; 16ca0 ret .asm_16cad - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer ld a, [hl] and a jr nz, .asm_16cb6 @@ -20562,7 +20563,7 @@ Function16ca0: ; 16ca0 jr .asm_16cc4 .asm_16cb9 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer ld a, [hl] cp $1a jr c, .asm_16cc3 @@ -20577,7 +20578,7 @@ Function16ca0: ; 16ca0 ; 16cc8 Function16cc8: ; 16cc8 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] cp 26 jr z, Function16d20 inc a @@ -21430,7 +21431,7 @@ Function1727f: ; 1727f (5:727f) Function1728f: ; 1728f (5:728f) ld a, [wd265] - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld a, [CurSpecies] push af ld de, MUSIC_NONE @@ -21444,7 +21445,7 @@ Function1728f: ; 1728f (5:728f) call FarCopyBytes callba Function8cf53 ld de, VTiles2 tile $00 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] call Function1723c ld de, VTiles2 tile $31 ld a, EGG @@ -21502,11 +21503,11 @@ Function1728f: ; 1728f (5:728f) hlcoord 6, 3 ld b, $98 ld c, $0 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] call Function17254 call Function17418 call WaitSFX - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld [CurPartySpecies], a hlcoord 6, 3 ld d, $0 @@ -24789,7 +24790,7 @@ Function25105: ; 25105 .asm_25117 call UpdateTime call JoyTextDelay - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_25132 ld a, [hJoyLast] @@ -24831,7 +24832,7 @@ Function2513b: ; 2513b (9:513b) call GetSGBLayout call Function32f9 call WaitBGMap - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer xor a rept 3 ld [hli], a @@ -24840,7 +24841,7 @@ endr ret Function2518e: ; 2518e (9:518e) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, $0 ld hl, Jumptable_2519d @@ -24863,12 +24864,12 @@ Jumptable_2519d: ; 2519d (9:519d) Function251ab: ; 251ab (9:51ab) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret Function251b0: ; 251b0 (9:51b0) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -24895,7 +24896,7 @@ Function251d7: ; 251d7 (9:51d7) ret .asm_251e3 ld a, $2 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 251e9 (9:51e9) @@ -24904,7 +24905,7 @@ Function251e9: ; 251e9 and a ret z ld a, $4 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 251f4 @@ -24939,7 +24940,7 @@ Function25221: ; 25221 (9:5221) ret .asm_25235 ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 2523b (9:523b) @@ -24948,13 +24949,13 @@ Function2523b: ; 2523b and a ret z ld a, $4 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 25246 Function25246: ; 25246 ld a, $6 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function2524c: ; 2524c (9:524c) @@ -24988,11 +24989,11 @@ Function25279: ; 25279 (9:5279) ret .asm_2528d ld a, $2 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret .asm_25293 ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function25299: ; 25299 (9:5299) @@ -29385,7 +29386,7 @@ Function28fa1: ; 28fa1 Function28fdb: ; 28fdb xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a call WhiteBGMap call ClearSprites call ClearTileMap @@ -29451,7 +29452,7 @@ Function28fdb: ; 28fdb ; 29082 Function29082: ; 29082 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_2909b call Function290a0 @@ -29469,7 +29470,7 @@ Function29082: ; 29082 ; 290a0 Function290a0: ; 290a0 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, JumpTable290af @@ -29534,7 +29535,7 @@ JumpTable290af: ; 290af ; 2910f Function2910f: ; 2910f - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret ; 29114 @@ -29545,7 +29546,7 @@ Function29114: ; 29114 inc hl ld d, [hl] ld a, [de] - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a inc de ld [hl], d dec hl @@ -29554,7 +29555,7 @@ Function29114: ; 29114 ; 29123 Function29123: ; 29123 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret ; 29129 @@ -29839,7 +29840,7 @@ Function292f6: ; 292f6 push af call WhiteBGMap call WaitTop - ld a, $9c + ld a, VBGMap1 / $100 ld [hBGMapAddress + 1], a call ClearTileMap hlcoord 0, 0 @@ -29869,7 +29870,7 @@ Function292f6: ; 292f6 call ByteFill call WaitBGMap call WaitTop - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a call ClearTileMap ret @@ -29980,7 +29981,7 @@ Function293de: ; 293de Function293ea: ; 293ea call WaitTop - ld a, $9c + ld a, VBGMap1 / $100 ld [hBGMapAddress + 1], a call WaitBGMap ld a, $7 @@ -29989,7 +29990,7 @@ Function293ea: ; 293ea ld [hWY], a call DelayFrame call WaitTop - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a call ClearTileMap call Function2910f @@ -30005,14 +30006,14 @@ Function2940c: ; 2940c ret .asm_29417 - ld a, $9c + ld a, VBGMap1 / $100 ld [hBGMapAddress + 1], a call WaitBGMap ld a, $7 ld [hWX], a ld a, $90 ld [hWY], a - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a call Function29114 ret @@ -30199,7 +30200,7 @@ Function29549: ; 29549 Function29573: ; 29573 call WaitTop call Function297cf - ld a, $9c + ld a, VBGMap1 / $100 ld [hBGMapAddress + 1], a hlcoord 3, 0 ld b, $6 @@ -30221,7 +30222,7 @@ String29591: ; 29591 Function295a1: ; 295a1 call WaitTop call Function297cf - ld a, $9c + ld a, VBGMap1 / $100 ld [hBGMapAddress + 1], a hlcoord 3, 0 ld b, $6 @@ -30243,7 +30244,7 @@ String295c2: ; 295c2 Function295d8: ; 295d8 call WaitBGMap call WaitTop - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a ret ; 295e3 @@ -30898,7 +30899,7 @@ Special_EnterTimeCapsule: ; 29c7b Special_AbortLink: ; 29c92 ld c, $3 call DelayFrames - ld a, $ff + ld a, -1 ld [$ffcb], a xor a ld [rSB], a @@ -30924,7 +30925,7 @@ Special_AbortLink: ; 29c92 ld [rSC], a ld c, $3 call DelayFrames - ld a, $ff + ld a, -1 ld [$ffcb], a ld a, [rIF] push af @@ -30999,7 +31000,7 @@ Special_WaitForLinkedFriend: ; 29d11 jr z, .asm_29d79 cp $1 jr z, .asm_29d79 - ld a, $ff + ld a, -1 ld [$ffcb], a ld a, $2 ld [rSB], a @@ -31275,7 +31276,7 @@ Special_FailedLinkToPast: ; 29efa Function29f04: ; 29f04 ld c, $3 call DelayFrames - ld a, $ff + ld a, -1 ld [$ffcb], a ld a, $2 ld [rSB], a @@ -39477,7 +39478,7 @@ Special_CelebiShrineEvent: ; 4989a ld [wcf64], a ld d, $0 .loop - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .done push bc @@ -39532,7 +39533,7 @@ LoadCelebiGFX: ; 49912 lb bc, BANK(SpecialCelebiGFX), $10 call Request2bpp xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 49935 @@ -39545,7 +39546,7 @@ Function49935: ; 49935 ret .asm_4993e - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret ; 49944 @@ -40080,7 +40081,7 @@ Function49e3d: ; 49e3d decoord 4, 16 ld a, [hHours] ld c, a - callba Function90b3e + callba PrintHour ld [hl], ":" inc hl ld de, hMinutes @@ -43948,7 +43949,7 @@ StatsScreenInit_gotaddress: ; 4dc94 ld [$ffde], a ; disable overworld tile animations ld a, [wc2c6] ; whether sprite is to be mirrorred push af - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld b, a ld a, [wcf64] ld c, a @@ -43967,7 +43968,7 @@ StatsScreenInit_gotaddress: ; 4dc94 ; restore old values ld a, b - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld a, c ld [wcf64], a pop af @@ -43979,19 +43980,19 @@ StatsScreenInit_gotaddress: ; 4dc94 StatsScreenMain: ; 0x4dcd2 xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld [wcf64], a ld a, [wcf64] and $fc or $1 ld [wcf64], a .loop ; 4dce3 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] and $7f ld hl, StatsScreenPointerTable rst JumpTable call Function4dd3a ; check for keys? - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr z, .loop ret @@ -43999,7 +44000,7 @@ StatsScreenMain: ; 0x4dcd2 StatsScreenBattle: ; 4dcf7 xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld [wcf64], a ld a, [wcf64] and $fc @@ -44007,14 +44008,14 @@ StatsScreenBattle: ; 4dcf7 ld [wcf64], a .asm_4dd08 callba Function100dd2 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] and $7f ld hl, StatsScreenPointerTable rst JumpTable call Function4dd3a callba Function100dfd jr c, .asm_4dd29 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr z, .asm_4dd08 @@ -44054,14 +44055,14 @@ Function4dd3a: ; 4dd3a (13:5d3a) ret Function4dd62: ; 4dd62 (13:5d62) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] and $80 or h - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function4dd6c: ; 4dd6c (13:5d6c) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -44088,9 +44089,9 @@ Function4dd72: ; 4dd72 (13:5d72) EggStatsInit: ; 4dda1 call EggStatsScreen - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] inc a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 0x4ddac @@ -44115,9 +44116,9 @@ Function4ddc6: ; 4ddc6 (13:5dc6) call Function4dfb6 ld hl, wcf64 res 4, [hl] - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] inc a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function4ddd6: ; 4ddd6 (13:5dd6) @@ -44133,9 +44134,9 @@ Function4ddd6: ; 4ddd6 (13:5dd6) Function4dde6: ; 4dde6 (13:5de6) call IsSFXPlaying ret nc - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] inc a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function4ddf2: ; 4ddf2 (13:5df2) @@ -45436,7 +45437,7 @@ Function4e7a6: ; 4e7a6 ret nz ld de, SFX_EVOLVED call PlaySFX - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer ld a, [hl] push af ld [hl], $0 @@ -45453,12 +45454,12 @@ Function4e7a6: ; 4e7a6 dec c jr nz, .asm_4e7c4 pop af - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 4e7cf Function4e7cf: ; 4e7cf - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer ld a, [hl] cp $20 ret nc @@ -45483,7 +45484,7 @@ Function4e7e8: ; 4e7e8 call Function3b2a ld hl, $000b add hl, bc - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] and $e sla a pop de @@ -50212,11 +50213,11 @@ ColorTest: ; 818ac ld de, MUSIC_NONE call PlayMusic xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld [wcf66], a ld [wd003], a .asm_818de - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_818f0 call Function81a74 @@ -50474,7 +50475,7 @@ Palette_81a34: ; 81a34 Function81a74: ; 81a74 call JoyTextDelay - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] cp $4 jr nc, .asm_81a8b ld hl, hJoyLast @@ -50486,7 +50487,7 @@ Function81a74: ; 81a74 jr nz, .asm_81aab .asm_81a8b - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_81acf @@ -50521,7 +50522,7 @@ endr .asm_81aba ld [wcf66], a ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 81ac3 @@ -50630,7 +50631,7 @@ Function81adb: ; 81adb .asm_81ba9 ld a, $1 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 81baf @@ -50701,7 +50702,7 @@ Function81c18: ; 81c18 .asm_81c2a call WaitBGMap ld a, $2 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 81c33 @@ -50726,7 +50727,7 @@ Function81c33: ; 81c33 ld a, $1 ld [hCGBPalUpdate], a ld a, $3 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a pop af ld [rSVBK], a ret @@ -50761,7 +50762,7 @@ endr ld de, wc608 + 2 call Function81ca7 ld a, $3 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 81ca7 @@ -50809,7 +50810,7 @@ endr .asm_81cdf ld a, $4 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret .asm_81ce5 @@ -50825,7 +50826,7 @@ endr add hl, bc call Function818fd ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 81d02 @@ -50917,7 +50918,7 @@ Function81d77: ; 81d77 Function81d7b: ; 81d7b call Function81e67 ld a, $2 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function81d84: ; 81d84 @@ -50943,7 +50944,7 @@ Function81d8e: ; 81d8e ld [wd004], a call Function81df4 ld a, $5 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 81daf @@ -50957,12 +50958,12 @@ Function81daf: ; 81daf .asm_81dbb ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 81dc1 Function81dc1: ; 81dc1 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret ; 81dc7 @@ -51259,7 +51260,7 @@ Function81f5e: ; 81f5e ld [hl], a hlcoord 1, 15 ld [hl], a - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] cp $3 jr nz, .asm_81fc9 ld a, [wcf64] @@ -51332,7 +51333,7 @@ INCBIN "gfx/debug/color_test.2bpp" TilesetColorTest: ret xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld [wcf64], a ld [wcf65], a ld [wcf66], a @@ -51350,7 +51351,7 @@ TilesetColorTest: ld hl, VTiles1 lb bc, BANK(DebugColorTestGFX), 1 call Request2bpp - ld a, $9c + ld a, VBGMap1 / $100 ld [hBGMapAddress + 1], a hlcoord 0, 0 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT @@ -51375,7 +51376,7 @@ TilesetColorTest: call Function821f4 call Function8220f call Function3200 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld a, $40 ld [hWY], a ret @@ -51723,12 +51724,12 @@ Function84000: ; 84000 ld a, [GBPrinter] ld [wcbfb], a xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; 84022 Function84022: ; 84022 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_84031 @@ -51766,19 +51767,19 @@ Jumptable_84031: ; 84031 (21:4031) Function84059: ; 84059 (21:4059) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret Function8405e: ; 8405e (21:405e) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer dec [hl] ret Function84063: ; 84063 (21:4063) xor a ld [wca89], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -51788,7 +51789,7 @@ Function8406d: ; 8406d (21:406d) Function84071: ; 84071 (21:4071) ld a, $1 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function84077: ; 84077 (21:4077) @@ -51828,7 +51829,7 @@ Function84099: ; 84099 (21:4099) Function840c5: ; 840c5 (21:40c5) ld a, $6 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld hl, Unknown_842c9 call Function841e2 xor a @@ -51920,7 +51921,7 @@ Function84143: ; 84143 (21:4143) ld [wca88], a ld [wca89], a ld a, $e - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function84180: ; 84180 (21:4180) @@ -51940,7 +51941,7 @@ Function84180: ; 84180 (21:4180) ret .asm_8419b ld a, $12 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function841a1: ; 841a1 (21:41a1) @@ -51964,7 +51965,7 @@ Function841b3: ; 841b3 (21:41b3) and $f0 ret nz xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function841c3: ; 841c3 (21:41c3) @@ -52322,7 +52323,7 @@ Function843f0: ; 843f0 call JoyTextDelay call Function846f6 jr c, .asm_8440f - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_8440d call Function84022 @@ -52540,11 +52541,11 @@ Function84560: ; 84560 call JoyTextDelay call Function846f6 jr c, .asm_845c0 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_845c0 call Function84022 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] cp $2 jr nc, .asm_845b5 ld a, $3 @@ -53290,7 +53291,7 @@ Function864b4: ; 864b4 Function864c3: ; 864c3 xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a call Function8671c jr c, .done ld de, SCREEN_WIDTH @@ -53515,13 +53516,13 @@ endr Function86650: ; 86650 call Functione58 xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a .asm_86657 call Function8671c ret c call Function86665 ret c - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] jr .asm_86657 ; 86665 @@ -53630,7 +53631,7 @@ String_8670c: Function8671c: ; 8671c - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] cp NUM_HOF_TEAMS jr nc, .asm_86746 ld hl, sHallOfFame @@ -54276,13 +54277,13 @@ TreeRelativeLocationTable: ; 8c938 Function8c940: ; 8c940 ld a, e and $1 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a call Function8c96d call WaitSFX ld de, SFX_PLACE_PUZZLE_PIECE_DOWN call PlaySFX .asm_8c952 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_8c96c ld a, $90 @@ -54318,7 +54319,7 @@ INCBIN "gfx/unknown/08c9cc.2bpp" ; 8ca0c Function8ca0c: ; 8ca0c - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_8ca1b @@ -54348,7 +54349,7 @@ Function8ca23: ; 8ca23 (23:4a23) ld [hl], $84 ld a, $20 ld [wcf64], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer rept 2 inc [hl] endr @@ -54366,14 +54367,14 @@ Function8ca3c: ; 8ca3c (23:4a3c) call Function8ca73 ld a, $20 ld [wcf64], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret Function8ca5c: ; 8ca5c (23:4a5c) ld a, $1 ld [hBGMapMode], a ; $ff00+$d4 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] Function8ca64: ; 8ca64 (23:4a64) @@ -54384,7 +54385,7 @@ Function8ca64: ; 8ca64 (23:4a64) dec [hl] ret .asm_8ca6d - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -54491,7 +54492,7 @@ Function8caed: ; 8caed ld a, $80 ld [wcf64], a .asm_8cb14 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_8cb2e ld a, $0 @@ -54528,7 +54529,7 @@ Function8cb33: ; 8cb33 ld a, $40 ld [wcf64], a .asm_8cb60 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_8cb7a ld a, $0 @@ -54577,7 +54578,7 @@ Function8cb9b: ; 8cb9b (23:4b9b) ld e, $84 callba Function8e9bc xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function8cbc8: ; 8cbc8 (23:4bc8) @@ -54595,7 +54596,7 @@ Function8cbc8: ; 8cbc8 (23:4bc8) call PlaySFX ret .asm_8cbe0 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -54658,7 +54659,7 @@ Special_MagnetTrain: ; 8cc04 push af ld [hl], $1 .loop - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] and a jr z, .initialize bit 7, a @@ -54765,7 +54766,7 @@ Function8ccc9: ; 8ccc9 ld c, $4 call Request2bpp call Function8cda6 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer xor a ld [hli], a ld a, [wd192] @@ -54911,7 +54912,7 @@ SetMagnetTrainPals: ; 8cdc3 ; 8cdf7 Function8cdf7: ; 8cdf7 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_8ce06 @@ -54935,7 +54936,7 @@ Jumptable_8ce06: ; 8ce06 ; 8ce14 Function8ce14: ; 8ce14 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret ; 8ce19 @@ -55039,7 +55040,7 @@ endr Function8cea2: ; 8cea2 ld a, $80 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld de, SFX_TRAIN_ARRIVED call PlaySFX ret @@ -58661,9 +58662,9 @@ CheckPhoneCall:: ; 90074 (24:4074) jr nc, .no_call ld e, a - call Function9020d - ld a, BANK(UnknownScript_0x90241) - ld hl, UnknownScript_0x90241 + call LoadCallerScript + ld a, BANK(Script_SpecialPhoneCall) + ld hl, Script_SpecialPhoneCall call CallScript scf ret @@ -58761,7 +58762,8 @@ Function900de: ; 900de (24:40de) Function90136:: ; 90136 (24:4136) ld a, [wSpecialPhoneCallID] and a - jr z, .asm_90171 + jr z, .NoPhoneCall + dec a ld c, a ld b, 0 @@ -58772,15 +58774,16 @@ Function90136:: ; 90136 (24:4136) ld h, [hl] ld l, a call _hl_ - jr nc, .asm_90171 - call Function90178 + jr nc, .NoPhoneCall + + call .DoSpecialPhoneCall rept 2 inc hl endr ld a, [hli] ld e, a push hl - call Function9020d + call LoadCallerScript pop hl ld de, wd048 ld a, [hli] @@ -58791,22 +58794,22 @@ endr inc de ld a, [hli] ld [de], a - ld a, BANK(UnknownScript_0x90173) - ld hl, UnknownScript_0x90173 + ld a, BANK(.script) + ld hl, .script call CallScript scf ret -.asm_90171 +.NoPhoneCall xor a ret ; 90173 (24:4173) -UnknownScript_0x90173: ; 0x90173 +.script: ; 0x90173 pause 30 - jump UnknownScript_0x90241 + jump Script_SpecialPhoneCall ; 0x90178 -Function90178: ; 90178 (24:4178) +.DoSpecialPhoneCall: ; 90178 (24:4178) ld a, [wSpecialPhoneCallID] dec a ld c, a @@ -58816,19 +58819,20 @@ Function90178: ; 90178 (24:4178) call AddNTimes ret -Function90188: ; 90188 +SpecialCallOnlyWhenOutside: ; 90188 ld a, [wPermission] - cp $1 - jr z, .asm_90195 - cp $2 - jr z, .asm_90195 + cp TOWN + jr z, .outside + cp ROUTE + jr z, .outside xor a ret -.asm_90195 + +.outside scf ret -Function90197: ; 90197 +SpecialCallWhereverYouAre: ; 90197 scf ret @@ -58905,41 +58909,43 @@ UnknownScript_0x90209: ; 0x90209 return ; 0x9020d -Function9020d: ; 9020d (24:420d) +LoadCallerScript: ; 9020d (24:420d) nop nop ld a, e ld [wCurrentCaller], a and a - jr nz, .asm_9021d - ld a, BANK(Unknown_90233) - ld hl, Unknown_90233 - jr .asm_90229 -.asm_9021d + jr nz, .actualcaller + ld a, BANK(WrongNumber) + ld hl, WrongNumber + jr .proceed + +.actualcaller ld hl, PhoneContacts ld bc, 12 ld a, e call AddNTimes ld a, BANK(PhoneContacts) -.asm_90229 +.proceed ld de, wd03f ld bc, 12 call FarCopyBytes ret ; 90233 (24:4233) -Unknown_90233: ; 90233 - db 0, 0 - dba UnknownScript_0x90238 -UnknownScript_0x90238: - writetext UnknownText_0x9023c +WrongNumber: ; 90233 + db PHONE, PHONE_NONE + dba .script +.script: + writetext .text end -UnknownText_0x9023c: +.text: + ; Huh? Sorry, wrong number! text_jump UnknownText_0x1c5565 db "@" ; 90241 -UnknownScript_0x90241: ; 0x90241 +Script_SpecialPhoneCall: ; 0x90241 refreshscreen $0 callasm Function9026f ptcall wd048 @@ -58950,25 +58956,25 @@ UnknownScript_0x90241: ; 0x90241 end ; 0x90255 -UnknownScript_0x90255:: ; 0x90255 +Script_SpecialBillCall:: ; 0x90255 callasm Function9025c - jump UnknownScript_0x90241 + jump Script_SpecialPhoneCall ; 0x9025c Function9025c: ; 9025c - ld e, $3 - jp Function9020d + ld e, PHONE_BILL + jp LoadCallerScript ; 90261 UnknownScript_0x90261: ; 0x90261 callasm Function9026a pause 30 - jump UnknownScript_0x90241 + jump Script_SpecialPhoneCall ; 0x9026a Function9026a: ; 9026a - ld e, $4 - jp Function9020d + ld e, PHONE_ELM + jp LoadCallerScript ; 9026f Function9026f: ; 9026f @@ -59276,77 +59282,77 @@ phone: MACRO dba \7 ; script 2 ENDM - phone 0, 0, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone 0, 1, KRISS_HOUSE_1F, 7, MomPhoneScript, 0, UnusedPhoneScript - phone 0, 2, OAKS_LAB, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone 0, 3, N_A, 7, BillPhoneScript1, 0, BillPhoneScript2 - phone 0, 4, ELMS_LAB, 7, ElmPhoneScript1, 0, ElmPhoneScript2 - phone SCHOOLBOY, JACK1, NATIONAL_PARK, 7, JackPhoneScript1, 7, JackPhoneScript2 - phone POKEFANF, BEVERLY1, NATIONAL_PARK, 7, BeverlyPhoneScript1, 7, BeverlyPhoneScript2 - phone SAILOR, HUEY1, OLIVINE_LIGHTHOUSE_2F, 7, HueyPhoneScript1, 7, HueyPhoneScript2 - phone 0, 0, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone 0, 0, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone 0, 0, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone COOLTRAINERM, GAVEN3, ROUTE_26, 7, GavenPhoneScript1, 7, GavenPhoneScript2 - phone COOLTRAINERF, BETH1, ROUTE_26, 7, BethPhoneScript1, 7, BethPhoneScript2 - phone BIRD_KEEPER, JOSE2, ROUTE_27, 7, JosePhoneScript1, 7, JosePhoneScript2 - phone COOLTRAINERF, REENA1, ROUTE_27, 7, ReenaPhoneScript1, 7, ReenaPhoneScript2 - phone YOUNGSTER, JOEY1, ROUTE_30, 7, JoeyPhoneScript1, 7, JoeyPhoneScript2 - phone BUG_CATCHER, WADE1, ROUTE_31, 7, WadePhoneScript1, 7, WadePhoneScript2 - phone FISHER, RALPH1, ROUTE_32, 7, RalphPhoneScript1, 7, RalphPhoneScript2 - phone PICNICKER, LIZ1, ROUTE_32, 7, LizPhoneScript1, 7, LizPhoneScript2 - phone HIKER, ANTHONY2, ROUTE_33, 7, AnthonyPhoneScript1, 7, AnthonyPhoneScript2 - phone CAMPER, TODD1, ROUTE_34, 7, ToddPhoneScript1, 7, ToddPhoneScript2 - phone PICNICKER, GINA1, ROUTE_34, 7, GinaPhoneScript1, 7, GinaPhoneScript2 - phone JUGGLER, IRWIN1, ROUTE_35, 7, IrwinPhoneScript1, 7, IrwinPhoneScript2 - phone BUG_CATCHER, ARNIE1, ROUTE_35, 7, ArniePhoneScript1, 7, ArniePhoneScript2 - phone SCHOOLBOY, ALAN1, ROUTE_36, 7, AlanPhoneScript1, 7, AlanPhoneScript2 - phone 0, 0, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone LASS, DANA1, ROUTE_38, 7, DanaPhoneScript1, 7, DanaPhoneScript2 - phone SCHOOLBOY, CHAD1, ROUTE_38, 7, ChadPhoneScript1, 7, ChadPhoneScript2 - phone POKEFANM, DEREK1, ROUTE_39, 7, DerekPhoneScript1, 7, DerekPhoneScript2 - phone FISHER, TULLY1, ROUTE_42, 7, TullyPhoneScript1, 7, TullyPhoneScript2 - phone POKEMANIAC, BRENT1, ROUTE_43, 7, BrentPhoneScript1, 7, BrentPhoneScript2 - phone PICNICKER, TIFFANY3, ROUTE_43, 7, TiffanyPhoneScript1, 7, TiffanyPhoneScript2 - phone BIRD_KEEPER, VANCE1, ROUTE_44, 7, VancePhoneScript1, 7, VancePhoneScript2 - phone FISHER, WILTON1, ROUTE_44, 7, WiltonPhoneScript1, 7, WiltonPhoneScript2 - phone BLACKBELT_T, KENJI3, ROUTE_45, 7, KenjiPhoneScript1, 7, KenjiPhoneScript2 - phone HIKER, PARRY1, ROUTE_45, 7, ParryPhoneScript1, 7, ParryPhoneScript2 - phone PICNICKER, ERIN1, ROUTE_46, 7, ErinPhoneScript1, 7, ErinPhoneScript2 - phone 0, 5, GOLDENROD_DEPT_STORE_ROOF, 7, BuenaPhoneScript1, 7, BuenaPhoneScript2 + phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, PHONE_MOM, KRISS_HOUSE_1F, 7, MomPhoneScript, 0, UnusedPhoneScript + phone PHONE, PHONE_OAK, OAKS_LAB, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, PHONE_BILL, N_A, 7, BillPhoneScript1, 0, BillPhoneScript2 + phone PHONE, PHONE_ELM, ELMS_LAB, 7, ElmPhoneScript1, 0, ElmPhoneScript2 + phone SCHOOLBOY, JACK1, NATIONAL_PARK, 7, JackPhoneScript1, 7, JackPhoneScript2 + phone POKEFANF, BEVERLY1, NATIONAL_PARK, 7, BeverlyPhoneScript1, 7, BeverlyPhoneScript2 + phone SAILOR, HUEY1, OLIVINE_LIGHTHOUSE_2F, 7, HueyPhoneScript1, 7, HueyPhoneScript2 + phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone COOLTRAINERM, GAVEN3, ROUTE_26, 7, GavenPhoneScript1, 7, GavenPhoneScript2 + phone COOLTRAINERF, BETH1, ROUTE_26, 7, BethPhoneScript1, 7, BethPhoneScript2 + phone BIRD_KEEPER, JOSE2, ROUTE_27, 7, JosePhoneScript1, 7, JosePhoneScript2 + phone COOLTRAINERF, REENA1, ROUTE_27, 7, ReenaPhoneScript1, 7, ReenaPhoneScript2 + phone YOUNGSTER, JOEY1, ROUTE_30, 7, JoeyPhoneScript1, 7, JoeyPhoneScript2 + phone BUG_CATCHER, WADE1, ROUTE_31, 7, WadePhoneScript1, 7, WadePhoneScript2 + phone FISHER, RALPH1, ROUTE_32, 7, RalphPhoneScript1, 7, RalphPhoneScript2 + phone PICNICKER, LIZ1, ROUTE_32, 7, LizPhoneScript1, 7, LizPhoneScript2 + phone HIKER, ANTHONY2, ROUTE_33, 7, AnthonyPhoneScript1, 7, AnthonyPhoneScript2 + phone CAMPER, TODD1, ROUTE_34, 7, ToddPhoneScript1, 7, ToddPhoneScript2 + phone PICNICKER, GINA1, ROUTE_34, 7, GinaPhoneScript1, 7, GinaPhoneScript2 + phone JUGGLER, IRWIN1, ROUTE_35, 7, IrwinPhoneScript1, 7, IrwinPhoneScript2 + phone BUG_CATCHER, ARNIE1, ROUTE_35, 7, ArniePhoneScript1, 7, ArniePhoneScript2 + phone SCHOOLBOY, ALAN1, ROUTE_36, 7, AlanPhoneScript1, 7, AlanPhoneScript2 + phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone LASS, DANA1, ROUTE_38, 7, DanaPhoneScript1, 7, DanaPhoneScript2 + phone SCHOOLBOY, CHAD1, ROUTE_38, 7, ChadPhoneScript1, 7, ChadPhoneScript2 + phone POKEFANM, DEREK1, ROUTE_39, 7, DerekPhoneScript1, 7, DerekPhoneScript2 + phone FISHER, TULLY1, ROUTE_42, 7, TullyPhoneScript1, 7, TullyPhoneScript2 + phone POKEMANIAC, BRENT1, ROUTE_43, 7, BrentPhoneScript1, 7, BrentPhoneScript2 + phone PICNICKER, TIFFANY3, ROUTE_43, 7, TiffanyPhoneScript1, 7, TiffanyPhoneScript2 + phone BIRD_KEEPER, VANCE1, ROUTE_44, 7, VancePhoneScript1, 7, VancePhoneScript2 + phone FISHER, WILTON1, ROUTE_44, 7, WiltonPhoneScript1, 7, WiltonPhoneScript2 + phone BLACKBELT_T, KENJI3, ROUTE_45, 7, KenjiPhoneScript1, 7, KenjiPhoneScript2 + phone HIKER, PARRY1, ROUTE_45, 7, ParryPhoneScript1, 7, ParryPhoneScript2 + phone PICNICKER, ERIN1, ROUTE_46, 7, ErinPhoneScript1, 7, ErinPhoneScript2 + phone PHONE, PHONE_BUENA, GOLDENROD_DEPT_STORE_ROOF, 7, BuenaPhoneScript1, 7, BuenaPhoneScript2 ; 90627 SpecialPhoneCallList: ; 90627 - dw Function90188 - db 4 + dw SpecialCallOnlyWhenOutside + db PHONE_ELM dba ElmPhoneScript2 - dw Function90188 - db 4 + dw SpecialCallOnlyWhenOutside + db PHONE_ELM dba ElmPhoneScript2 - dw Function90188 - db 4 + dw SpecialCallOnlyWhenOutside + db PHONE_ELM dba ElmPhoneScript2 - dw Function90188 - db 4 + dw SpecialCallOnlyWhenOutside + db PHONE_ELM dba ElmPhoneScript2 - dw Function90197 - db 4 + dw SpecialCallWhereverYouAre + db PHONE_ELM dba ElmPhoneScript2 - dw Function90197 - db 2 + dw SpecialCallWhereverYouAre + db PHONE_OAK ; ???????? dba BikeShopPhoneScript ; bike shop - dw Function90197 - db 1 + dw SpecialCallWhereverYouAre + db PHONE_MOM dba MomPhoneLectureScript - dw Function90188 - db 4 + dw SpecialCallOnlyWhenOutside + db PHONE_ELM dba ElmPhoneScript2 ; 90657 @@ -59383,11 +59389,13 @@ UnknownText_0x9066d: ; 0x9066d db "@" ; 0x90672 -Function90672: ; 90672 (24:4672) +InitClock: ; 90672 (24:4672) +; Ask the player to set the time. ld a, [hInMenu] push af ld a, $1 ld [hInMenu], a + ld a, $0 ld [wc2ce], a ld a, $10 @@ -59418,82 +59426,89 @@ Function90672: ; 90672 (24:4672) ld hl, VTiles2 tile $02 lb bc, BANK(GFX_9090b), 1 call Request1bpp - call Function90783 + call .ClearScreen call WaitBGMap call Function4a3 ld hl, UnknownText_0x90874 call PrintText ld hl, wc608 - ld bc, $32 + ld bc, 50 xor a call ByteFill ld a, $a - ld [wc608 + 20], a -.asm_906e8 + ld [wInitHourBuffer], a + +.loop ld hl, UnknownText_0x90879 call PrintText hlcoord 3, 7 - ld b, $2 - ld c, $f + ld b, 2 + ld c, 15 call TextBox hlcoord 11, 7 ld [hl], $1 hlcoord 11, 10 ld [hl], $2 hlcoord 4, 9 - call Function907de + call DisplayHourOClock ld c, $a call DelayFrames -.asm_9070d + +.SetHourLoop call JoyTextDelay - call Function90795 - jr nc, .asm_9070d - ld a, [wc608 + 20] + call SetHour + jr nc, .SetHourLoop + + ld a, [wInitHourBuffer] ld [StringBuffer2 + 1], a - call Function90783 + call .ClearScreen ld hl, UnknownText_0x90886 call PrintText call YesNoBox - jr nc, .asm_9072e - call Function90783 - jr .asm_906e8 -.asm_9072e + jr nc, .HourIsSet + call .ClearScreen + jr .loop + +.HourIsSet ld hl, UnknownText_0x9089a call PrintText hlcoord 11, 7 - ld bc, $207 + lb bc, 2, 7 call TextBox hlcoord 15, 7 ld [hl], $1 hlcoord 15, 10 ld [hl], $2 hlcoord 12, 9 - call Function90859 + call DisplayMinutesWithMinString ld c, 10 call DelayFrames -.asm_90752 + +.SetMinutesLoop call JoyTextDelay - call Function90810 - jr nc, .asm_90752 + call SetMinutes + jr nc, .SetMinutesLoop + ld a, [BattleMonNick + 5] ld [StringBuffer2 + 2], a - call Function90783 + call .ClearScreen ld hl, UnknownText_0x908a4 call PrintText call YesNoBox - jr nc, .asm_90773 - call Function90783 - jr .asm_9072e -.asm_90773 + jr nc, .MinutesAreSet + call .ClearScreen + jr .HourIsSet + +.MinutesAreSet call Function658 - ld hl, UnknownText_0x908b8 + ld hl, OakText_ResponseToSetTime call PrintText call Functiona80 pop af ld [hInMenu], a ret -Function90783: ; 90783 (24:4783) +.ClearScreen: ; 90783 (24:4783) xor a ld [hBGMapMode], a ; $ff00+$d4 hlcoord 0, 0 @@ -59504,10 +59519,10 @@ Function90783: ; 90783 (24:4783) ld [hBGMapMode], a ; $ff00+$d4 ret -Function90795: ; 90795 (24:4795) +SetHour: ; 90795 (24:4795) ld a, [hJoyPressed] and A_BUTTON - jr nz, .asm_907dc + jr nz, .Confirm ld hl, hJoyLast ld a, [hl] @@ -59521,50 +59536,50 @@ Function90795: ; 90795 (24:4795) ret .down - ld hl, wc608 + 20 + ld hl, wInitHourBuffer ld a, [hl] and a - jr nz, .asm_907b6 + jr nz, .DecreaseThroughMidnight ld a, 23 + 1 -.asm_907b6 +.DecreaseThroughMidnight dec a ld [hl], a - jr .asm_907c6 + jr .okay .up - ld hl, wc608 + 20 + ld hl, wInitHourBuffer ld a, [hl] cp 23 - jr c, .asm_907c4 + jr c, .AdvanceThroughMidnight ld a, -1 -.asm_907c4 +.AdvanceThroughMidnight inc a ld [hl], a -.asm_907c6 +.okay hlcoord 4, 9 ld a, " " ld bc, 15 call ByteFill hlcoord 4, 9 - call Function907de + call DisplayHourOClock call WaitBGMap and a ret -.asm_907dc +.Confirm scf ret -Function907de: ; 907de (24:47de) +DisplayHourOClock: ; 907de (24:47de) push hl - ld a, [wc608 + 20] + ld a, [wInitHourBuffer] ld c, a ld e, l ld d, h - call Function90b3e + call PrintHour inc hl - ld de, String_9087e + ld de, String_oclock call PlaceString pop hl ret @@ -59574,7 +59589,7 @@ Function907f1: ; 907f1 ld h, d ld l, e push hl - call Function907de + call DisplayHourOClock pop de rept 2 inc de @@ -59591,14 +59606,14 @@ endr ld a, [de] ld [hl], a pop hl - call Function90859 + call DisplayMinutesWithMinString rept 3 inc hl endr ret ; 90810 -Function90810: ; 90810 (24:4810) +SetMinutes: ; 90810 (24:4810) ld a, [hJoyPressed] ; $ff00+$a7 and A_BUTTON jr nz, .asm_90857 @@ -59637,7 +59652,7 @@ Function90810: ; 90810 (24:4810) ld bc, 7 call ByteFill hlcoord 12, 9 - call Function90859 + call DisplayMinutesWithMinString call WaitBGMap and a ret @@ -59645,15 +59660,15 @@ Function90810: ; 90810 (24:4810) scf ret -Function90859: ; 90859 (24:4859) +DisplayMinutesWithMinString: ; 90859 (24:4859) ld de, BattleMonNick + 5 - call Function90867 + call PrintTwoDigitNumberRightAlign inc hl - ld de, String_9089f + ld de, String_min call PlaceString ret -Function90867: ; 90867 (24:4867) +PrintTwoDigitNumberRightAlign: ; 90867 (24:4867) push hl ld a, " " ld [hli], a @@ -59676,7 +59691,7 @@ UnknownText_0x90879: ; 0x90879 db "@" ; 0x9087e -String_9087e: +String_oclock: db "o'clock@" ; 90886 @@ -59685,7 +59700,7 @@ UnknownText_0x90886: ; 0x90886 text_jump UnknownText_0x1bc2fd start_asm hlcoord 1, 16 - call Function907de + call DisplayHourOClock ld hl, UnknownText_0x90895 ret ; 90895 (24:4895) @@ -59702,7 +59717,7 @@ UnknownText_0x9089a: ; 0x9089a db "@" ; 0x9089f -String_9089f: +String_min: db "min.@" ; 908a4 @@ -59712,7 +59727,7 @@ UnknownText_0x908a4: ; 0x908a4 start_asm ; 0x908a9 hlcoord 7, 14 - call Function90859 + call DisplayMinutesWithMinString ld hl, UnknownText_0x908b3 ret ; 908b3 (24:48b3) @@ -59723,12 +59738,12 @@ UnknownText_0x908b3: ; 0x908b3 db "@" ; 0x908b8 -UnknownText_0x908b8: ; 0x908b8 +OakText_ResponseToSetTime: ; 0x908b8 start_asm decoord 1, 14 - ld a, [wc608 + 20] + ld a, [wInitHourBuffer] ld c, a - call Function90b3e + call PrintHour ld [hl], ":" inc hl ld de, BattleMonNick + 5 @@ -59736,37 +59751,37 @@ UnknownText_0x908b8: ; 0x908b8 call PrintNum ld b, h ld c, l - ld a, [wc608 + 20] + ld a, [wInitHourBuffer] cp 4 - jr c, .asm_908e0 + jr c, .NITE cp 11 - jr c, .asm_908e4 + jr c, .MORN cp 18 - jr c, .asm_908e8 -.asm_908e0 - ld hl, UnknownText_0x908f6 + jr c, .DAY +.NITE + ld hl, .sodark ret -.asm_908e4 - ld hl, UnknownText_0x908ec +.MORN + ld hl, .overslept ret -.asm_908e8 - ld hl, UnknownText_0x908f1 +.DAY + ld hl, .yikes ret ; 908ec (24:48ec) -UnknownText_0x908ec: ; 0x908ec +.overslept: ; 0x908ec ; ! I overslept! text_jump UnknownText_0x1bc326 db "@" ; 0x908f1 -UnknownText_0x908f1: ; 0x908f1 +.yikes: ; 0x908f1 ; ! Yikes! I over- slept! text_jump UnknownText_0x1bc336 db "@" ; 0x908f6 -UnknownText_0x908f6: ; 0x908f6 +.sodark: ; 0x908f6 ; ! No wonder it's so dark! text_jump UnknownText_0x1bc34f db "@" @@ -59797,14 +59812,14 @@ Special_SetDayOfWeek: ; 90913 ld [DefaultFlypoint], a .asm_90936 hlcoord 0, 12 - ld bc, $0412 + lb bc, 4, 18 call TextBox call Function1d6e ld hl, UnknownText_0x90a3f call PrintText hlcoord 9, 3 - ld b, $2 - ld c, $9 + ld b, 2 + ld c, 9 call TextBox hlcoord 14, 3 ld [hl], $ef @@ -60010,7 +60025,7 @@ UnknownText_0x90ab7: ; 0x90ab7 Function90abc: ; 90abc hlcoord 1, 14 - ld bc, $0312 + lb bc, 3, 12 call ClearBox ld hl, UnknownText_0x90acc call PlaceWholeStringInBoxAtOnce @@ -60071,8 +60086,7 @@ UnknownText_0x90acc: ; 0x90acc ; 90b13 UnknownText_0x90b13: ; 0x90b13 - db $0 - para "Now on DEBUG…" + text "Now on DEBUG…" prompt ; 0x90b23 @@ -60092,23 +60106,23 @@ Function90b23: ; 90b23 ret ; 90b3e -Function90b3e: ; 90b3e (24:4b3e) +PrintHour: ; 90b3e (24:4b3e) ld l, e ld h, d push bc - call Function90b58 + call GetTimeOfDayString call PlaceString ld l, c ld h, b inc hl pop bc - call Function90b7f + call AdjustHourForAMorPM ld [wd265], a ld de, wd265 - call Function90867 + call PrintTwoDigitNumberRightAlign ret -Function90b58: ; 90b58 (24:4b58) +GetTimeOfDayString: ; 90b58 (24:4b58) ld a, c cp 4 jr c, .nite @@ -60117,31 +60131,33 @@ Function90b58: ; 90b58 (24:4b58) cp 18 jr c, .day .nite - ld de, String_90b71 + ld de, .NITE ret .morn - ld de, String_90b76 + ld de, .MORN ret .day - ld de, String_90b7b + ld de, .DAY ret ; 90b71 (24:4b71) -String_90b71: db "NITE@" -String_90b76: db "MORN@" -String_90b7b: db "DAY@" +.NITE: db "NITE@" +.MORN: db "MORN@" +.DAY: db "DAY@" ; 90b7f -Function90b7f: ; 90b7f (24:4b7f) +AdjustHourForAMorPM: +; Convert the hour stored in c (0-23) to a 1-12 value ld a, c or a - jr z, .asm_90b8a + jr z, .midnight cp 12 ret c ret z sub 12 ret -.asm_90b8a + +.midnight ld a, 12 ret @@ -60164,7 +60180,7 @@ Function90b8d: ; 90b8d (24:4b8d) .loop call UpdateTime call JoyTextDelay - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .done call Function90f04 @@ -60185,7 +60201,7 @@ Function90b8d: ; 90b8d (24:4b8d) call WhiteBGMap xor a ld [hBGMapAddress], a - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a ld a, $90 ld [hWY], a @@ -60211,7 +60227,7 @@ Function90bea: ; 90bea (24:4bea) ld [rLCDC], a call Function90d70 xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld [wcf64], a ld [wcf65], a ld [wcf66], a @@ -60367,7 +60383,7 @@ Function90d70: ; 90d70 (24:4d70) Function90d9e: ; 90d9e (24:4d9e) ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a xor a ld [wcf64], a ret @@ -60402,7 +60418,7 @@ Function90da8: ; 90da8 (24:4da8) xor a ld [hBGMapAddress], a - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a call Function90e00 ld a, $90 @@ -60411,7 +60427,7 @@ Function90da8: ; 90da8 (24:4da8) .asm_90de8 xor a ld [hBGMapAddress], a - ld a, $9c + ld a, VBGMap1 / $100 ld [hBGMapAddress + 1], a call Function90e00 xor a @@ -60575,7 +60591,7 @@ Function90ef7: ; 90ef7 (24:4ef7) ret Function90f04: ; 90f04 (24:4f04) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_90f13 @@ -60607,7 +60623,7 @@ Function90f2d: ; 90f2d (24:4f2d) call Function90da8 ld hl, UnknownText_0x914d3 call PrintText - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] call Function91492 ret @@ -60652,7 +60668,7 @@ Function90f3e: ; 90f3e (24:4f3e) ret .asm_90f75 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -60703,7 +60719,7 @@ Function90fb4: ; 90fb4 (24:4fb4) .kanto ld a, 5 .done - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a call Function91492 ret @@ -60717,7 +60733,7 @@ Function90fcd: ; 90fcd (24:4fcd) ld [wc6d5], a ld a, b ld [wc6d6], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret @@ -60765,7 +60781,7 @@ Function90ff2: ; 90ff2 (24:4ff2) call Function91480 ret .cancel - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -60913,7 +60929,7 @@ Function910f9: ; 910f9 (24:50f9) add hl, bc ld [hl], $8 call _UpdateRadioStation - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret @@ -60959,12 +60975,12 @@ Function91112: ; 91112 (24:5112) ret .cancel - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret Function91156: ; 91156 (24:5156) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] xor a ld [wc6d2], a @@ -61017,7 +61033,7 @@ Function91171: ; 91171 (24:5171) ret .b - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -61044,13 +61060,13 @@ Function91171: ; 91171 (24:5171) call Function91342 jr c, .asm_911e5 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret .asm_911e5 ld a, $8 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function911eb: ; 911eb (24:51eb) @@ -61081,7 +61097,7 @@ Function911eb: ; 911eb (24:51eb) ld a, $1 ld [hInMenu], a call Function912b7 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret .asm_91234 @@ -61089,7 +61105,7 @@ Function911eb: ; 911eb (24:51eb) ld hl, OutOfServiceAreaText call PrintText ld a, $8 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld hl, UnknownText_0x914ce call PrintText ret @@ -61113,7 +61129,7 @@ Function91256: ; 91256 (24:5256) ret z callba HangUp ld a, $8 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld hl, UnknownText_0x914ce call PrintText ret @@ -61482,7 +61498,7 @@ Function91480: ; 91480 (24:5480) ld de, SFX_READ_TEXT_2 call PlaySFX ld a, c - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld a, b ld [wcf64], a call Function914ab @@ -61901,7 +61917,7 @@ _FlyMap: ; 91af3 ld [hWY], a xor a ld [hBGMapAddress], a - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a ld a, [DefaultFlypoint] ld e, a @@ -62833,7 +62849,7 @@ Function92311: ; 92311 ld [hWY], a xor a ld [hBGMapAddress], a - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a ld a, [DefaultFlypoint] ld e, a @@ -62968,7 +62984,7 @@ Function926f7: ; 926f7 (24:66f7) ld [hli], a ld [hl], $40 xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld a, $ff ld [wc709], a ld de, MUSIC_GAME_CORNER @@ -62995,7 +63011,7 @@ Function9279b: ; 9279b (24:679b) ret Function927af: ; 927af (24:67af) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_927d1 call Function92844 @@ -63091,7 +63107,7 @@ endr ; 92844 Function92844: ; 92844 (24:6844) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_92853 @@ -63128,7 +63144,7 @@ Jumptable_92853: ; 92853 (24:6853) Function92879: ; 92879 (24:6879) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret @@ -63145,7 +63161,7 @@ Function9288e: ; 9288e (24:688e) call Function9307c jr nc, .asm_92899 ld a, $12 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret .asm_92899 call Function92879 @@ -63336,15 +63352,15 @@ Function929d9: ; 929d9 (24:69d9) call Function930e9 jr c, .asm_929ea ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret .asm_929ea ld a, $12 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Function929f0: ; 929f0 (24:69f0) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -65962,11 +65978,11 @@ Functionb929a: ; b929a ret .asm_b92a8 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] push af callab Function845d4 pop af - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a jr .asm_b929a ; b92b8 @@ -67414,14 +67430,14 @@ _CardFlip: ; e00ee (38:40ee) call DmgToCgbObjPals call DelayFrame xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld a, $2 ld [wcf64], a ld [wcf65], a ld de, MUSIC_GAME_CORNER call PlayMusic .MasterLoop - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .leavethegame call .CardFlip @@ -67437,7 +67453,7 @@ _CardFlip: ; e00ee (38:40ee) ret .CardFlip: ; e0191 (38:4191) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, .Jumptable @@ -67462,7 +67478,7 @@ endr ; e01b0 .Increment: ; e01b0 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret ; e01b5 @@ -67478,7 +67494,7 @@ endr .SaidNo ld a, $7 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e01cd @@ -67502,7 +67518,7 @@ endr ld hl, .NotEnoughCoinsText call Functione0489 ld a, $7 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret .deduct @@ -67699,7 +67715,7 @@ endr .LoopAround ld a, $1 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e0356 @@ -67716,7 +67732,7 @@ endr ; 0xe0360 .Quit: ; e0360 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret ; e0366 @@ -69120,7 +69136,7 @@ Functione1190: ; e1190 ld [hSCY], a ld [hSCX], a ld [rWY], a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld [wcf64], a ld [wcf65], a ld [wcf66], a @@ -69138,7 +69154,7 @@ Functione1190: ; e1190 call DelayFrame .asm_e1217 call JoyTextDelay - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_e123d call Functione12ca @@ -69246,7 +69262,7 @@ Functione128d: ; e128d ; e12ca Functione12ca: ; e12ca - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_e12d9 @@ -69420,7 +69436,7 @@ Functione1376: ; e1376 ld [wd0ec], a Functione13de: ; e13de - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -69968,7 +69984,7 @@ Functione1e67: ; e1e67 (38:5e67) ld [hSCY], a ; $ff00+$d0 ld [hSCX], a ; $ff00+$cf ld [rWY], a ; $ff00+$4a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld a, $1 ld [hBGMapMode], a ; $ff00+$d4 ld a, $e3 @@ -69980,7 +69996,7 @@ Functione1e67: ; e1e67 (38:5e67) ret Functione1ebb: ; e1ebb (38:5ebb) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_e1ed0 call Functione1ed2 @@ -69993,7 +70009,7 @@ Functione1ebb: ; e1ebb (38:5ebb) ret Functione1ed2: ; e1ed2 (38:5ed2) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_e1ee1 @@ -70020,7 +70036,7 @@ Jumptable_e1ee1: ; e1ee1 Functione1ef3: ; e1ef3 call Functione2152 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret ; e1efb @@ -70028,13 +70044,13 @@ Functione1ef3: ; e1ef3 Functione1efb: ; e1efb call Functione00ed jr nc, .asm_e1f06 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret .asm_e1f06 call Functione209d - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] xor a ld [wc708], a @@ -70063,7 +70079,7 @@ Functione1f1c: ; e1f1c call Function3b2a ld a, $5 ld [wc702], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret ; e1f42 @@ -70078,14 +70094,14 @@ Functione1f42: ; e1f42 and a jr nz, .asm_e1f58 ld a, $7 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret .asm_e1f58 dec [hl] xor a ld [wcf64], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] Functione1f61: ; e1f61 @@ -70108,7 +70124,7 @@ Functione1f61: ; e1f61 call Functione2128 xor a ld [wcf64], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret ; e1f8b @@ -70136,7 +70152,7 @@ Functione1f8b: ; e1f8b call Functione2128 ld a, $40 ld [wc708], a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] Functione1fba: ; e1fba @@ -70150,7 +70166,7 @@ Functione1fba: ; e1fba .asm_e1fc3 call Functione2010 ld a, $3 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e1fcc @@ -70184,19 +70200,19 @@ Functione1fcc: ; e1fcc .asm_e1ff9 call Functiona80 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] Functione2000: ; e2000 call Functione00ed jr nc, .asm_e200b - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret .asm_e200b xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e2010 @@ -70455,7 +70471,7 @@ Functione2183: ; e2183 ; e21a1 Functione21a1: ; e21a1 (38:61a1) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] cp $7 jr nc, .asm_e21c8 call JoyTextDelay @@ -70566,7 +70582,7 @@ Functione2391: ; e2391 (38:6391) call DelayFrame .asm_e23b4 call JoyTextDelay - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_e23c6 call Functione23d5 @@ -70583,7 +70599,7 @@ Functione2391: ; e2391 (38:6391) ret Functione23d5: ; e23d5 (38:63d5) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld hl, Jumptable_e23df call Functione33df jp [hl] @@ -70645,18 +70661,18 @@ Functione241a: ; e241a (38:641a) cp $ff jr z, .asm_e2457 ld a, $2 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e2452 (38:6452) .asm_e2452 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer dec [hl] ret .asm_e2457 ld a, $4 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret Functione245d: ; e245d (38:645d) @@ -70708,7 +70724,7 @@ BillsPCDepositFuncDeposit: ; e24a9 (38:64a9) call Functione307c jr c, .asm_e24c1 ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a xor a ld [wcb2b], a ld [wcb2a], a @@ -70755,7 +70771,7 @@ BillsPCDepositFuncRelease: ; e24e0 (38:64e0) callba Functione039 call Functione3180 ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a xor a ld [wcb2b], a ld [wcb2a], a @@ -70770,7 +70786,7 @@ BillsPCDepositFuncRelease: ; e24e0 (38:64e0) BillsPCDepositFuncCancel: ; e2537 (38:6537) ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e253d (38:653d) @@ -70828,7 +70844,7 @@ Functione2583: ; e2583 (38:6583) call DelayFrame .asm_e25a7 call JoyTextDelay - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_e25b9 call Functione25c8 @@ -70845,7 +70861,7 @@ Functione2583: ; e2583 (38:6583) ret Functione25c8: ; e25c8 (38:65c8) - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld hl, .jumptable call Functione33df jp [hl] @@ -70909,18 +70925,18 @@ Functione2612: ; e2612 (38:6612) cp $ff jr z, .asm_e264f ld a, $2 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e264a (38:664a) .asm_e264a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer dec [hl] ret .asm_e264f ld a, $4 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e2655 @@ -70973,7 +70989,7 @@ endr call TryWithdrawPokemon jr c, .FailedWithdraw ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a xor a ld [wcb2b], a ld [wcb2a], a @@ -71018,7 +71034,7 @@ endr callba Functione039 call Functione3180 ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a xor a ld [wcb2b], a ld [wcb2a], a @@ -71033,7 +71049,7 @@ endr .cancel: ; e272b (38:672b) ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e2731 (38:6731) @@ -71077,7 +71093,7 @@ Functione2759: ; e2759 call DelayFrame .asm_e2781 call JoyTextDelay - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_e2793 call Functione27a2 @@ -71096,7 +71112,7 @@ Functione2759: ; e2759 ; e27a2 Functione27a2: ; e27a2 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld hl, Jumptable_e27ac call Functione33df jp [hl] @@ -71162,7 +71178,7 @@ Functione27eb: ; e27eb ld [wcb2b], a ld [wcb2a], a ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret .asm_e2823 @@ -71172,16 +71188,16 @@ Functione27eb: ; e27eb cp $ff jr z, .asm_e2837 ld a, $2 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer dec [hl] ret .asm_e2837 ld a, $6 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e283d @@ -71239,7 +71255,7 @@ Functione2887: ; e2887 ld a, [wcb2e] ld [wcb31], a ld a, $4 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e28a5 @@ -71257,7 +71273,7 @@ Functione28a5: ; e28a5 Functione28bd: ; e28bd ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e28c3 @@ -71321,7 +71337,7 @@ Functione2903: ; e2903 ld [wcb2b], a ld [wcb2a], a ld a, $4 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret .asm_e2938 @@ -71329,11 +71345,11 @@ Functione2903: ; e2903 jr c, .asm_e2946 call Functione31e7 ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret .asm_e2946 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer dec [hl] ret @@ -71345,7 +71361,7 @@ Functione2903: ; e2903 ld a, [wcb31] ld [wcb2e], a ld a, $0 - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e2963 @@ -71359,7 +71375,7 @@ Functione2963: ; e2963 (38:6963) xor a call ByteFill xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld [wcf64], a ld [wcf65], a ld [wcf66], a @@ -71368,12 +71384,12 @@ Functione2963: ; e2963 (38:6963) ret Functione298d: ; e298d (38:698d) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret Functione2992: ; e2992 (38:6992) - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -73221,7 +73237,7 @@ _OptionsMenu: ; e41d0 ld de, StringOptions call PlaceString xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld c, $6 ;number of items on the menu minus 1 (for cancel) .asm_e41f3 ;this next will display the settings of each option when the menu is opened push bc @@ -73229,13 +73245,13 @@ _OptionsMenu: ; e41d0 ld [hJoyLast], a call GetOptionPointer pop bc - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] dec c jr nz, .asm_e41f3 call Functione4512 xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a inc a ld [hBGMapMode], a call WaitBGMap @@ -73287,7 +73303,7 @@ StringOptions: ; e4241 GetOptionPointer: ; e42d6 - ld a, [wcf63] ;load the cursor position to a + ld a, [wJumptableEntryIndexBuffer] ;load the cursor position to a ld e, a ;copy it to de ld d, 0 ld hl, .Pointers @@ -73727,7 +73743,7 @@ Options_Cancel: ; e4520 ; e452a OptionsControl: ; e452a - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer ld a, [hJoyLast] cp D_DOWN jr z, .DownPressed @@ -73784,7 +73800,7 @@ Functione455c: ; e455c jr nz, .asm_e4564 hlcoord 1, 2 ld bc, $0028 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] call AddNTimes ld [hl], $ed ret @@ -73796,7 +73812,7 @@ Functione4579: ; e4579 call PlayMusic call WhiteBGMap call ClearTileMap - ld a, $98 + ld a, VBGMap0 / $100 ld [hBGMapAddress + 1], a xor a ld [hBGMapAddress], a @@ -73823,7 +73839,7 @@ Functione4579: ; e4579 ld a, [hJoyLast] and BUTTONS jr nz, .asm_e45de - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .asm_e45e3 call Functione4670 @@ -73879,7 +73895,7 @@ Functione45e8: ; e45e8 add hl, bc ld [hl], $30 xor a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ld [wcf64], a ld [wcf65], a ld [hSCX], a @@ -73903,7 +73919,7 @@ Functione465e: ; e465e ; e4670 Functione4670: ; e4670 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, Jumptable_e467f @@ -73924,7 +73940,7 @@ Jumptable_e467f: ; e467f ; e4687 Functione4687: ; e4687 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer inc [hl] ret ; e468c @@ -73993,7 +74009,7 @@ Functione46dd: ; e46dd ret .asm_e46e7 - ld hl, wcf63 + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret ; e46ed @@ -74171,7 +74187,7 @@ CrystalIntro: ; e48ac ld a, [hJoyLast] and BUTTONS jr nz, .ShutOffMusic - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] bit 7, a jr nz, .done call IntroSceneJumper @@ -74210,12 +74226,12 @@ Functione4901: ; e4901 ld [hInMenu], a xor a ld [$ffde], a - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a ret ; e490f IntroSceneJumper: ; e490f - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld e, a ld d, 0 ld hl, IntroScenes @@ -74261,7 +74277,7 @@ IntroScenes: ; e491e (39:491e) NextIntroScene: ; e4956 (39:4956) - ld hl, wIntroSceneIndex + ld hl, wJumptableEntryIndexBuffer inc [hl] ret @@ -75298,7 +75314,7 @@ IntroScene28: ; e5152 (39:5152) ret .done - ld hl, wIntroSceneIndex + ld hl, wJumptableEntryIndexBuffer set 7, [hl] ret @@ -77374,7 +77390,7 @@ TRADE_AFTER EQU 4 NPCTrade:: ; fcba8 ld a, e - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a call Functionfcc59 ld b, CHECK_FLAG call TradeFlagAction @@ -77429,7 +77445,7 @@ NPCTrade:: ; fcba8 Functionfcc07: ; fcc07 call Function2ed3 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] push af ld a, [wcf64] push af @@ -77437,7 +77453,7 @@ Functionfcc07: ; fcc07 pop af ld [wcf64], a pop af - ld [wcf63], a + ld [wJumptableEntryIndexBuffer], a call Function2b74 ret ; fcc23 @@ -77473,7 +77489,7 @@ CheckTradeGender: ; fcc23 TradeFlagAction: ; fcc4a ld hl, wd960 - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] ld c, a predef FlagPredef ld a, c @@ -77655,7 +77671,7 @@ Functionfcc63: ; fcc63 GetTradeAttribute: ; 0xfcdc2 ld d, 0 push de - ld a, [wcf63] + ld a, [wJumptableEntryIndexBuffer] and $f swap a ld e, a @@ -77974,7 +77990,7 @@ TradeAfterText3: ; 0xfcfe7 ; 0xfcfec -Functionfcfec:: ; fcfec +MomTriesToBuySomething:: ; fcfec ld a, [wd45c] and a ret nz @@ -77996,7 +78012,7 @@ Functionfcfec:: ; fcfec UnknownScript_0xfd00f: ; 0xfd00f callasm Functionfd017 - farjump UnknownScript_0x90241 + farjump Script_SpecialPhoneCall ; 0xfd017 Functionfd017: ; fd017 -- cgit v1.2.3 From 97cc513f54b6213a31070b0875fd85e920a2109b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 21 Oct 2015 10:43:42 -0400 Subject: Plus 4 on person events; feeble attempt to annotate color functions --- main.asm | 188 +++++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 105 insertions(+), 83 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index f3b0ba040..b5cd9ea8b 100644 --- a/main.asm +++ b/main.asm @@ -1138,7 +1138,7 @@ Function627b: ; 627b bit 7, a jr nz, .done_title call TitleScreenScene - callba Function10eea7 + callba SuicuneFrameIterator call DelayFrame and a ret @@ -9729,7 +9729,7 @@ Functione41c: ; e41c (3:641c) call PrintText pop af ld [Options], a - call Functione58 + call LoadFontsBattleExtra ret ; e43a (3:643a) @@ -13238,7 +13238,7 @@ GiveTakePartyMonItem: ; 12b60 call ClearPalettes call Function12ba9 call ClearPalettes - call Functione58 + call LoadFontsBattleExtra call ExitMenu ld a, 0 ret @@ -13883,7 +13883,7 @@ Function12f5b: ; 12f5b ld a, [hl] push af set 4, [hl] - call Functione58 + call LoadFontsBattleExtra call Function12f73 pop bc ld a, b @@ -14180,7 +14180,7 @@ Function13172: ; 13172 xor a ld [hBGMapMode], a callba Functionfb571 - callba Function8e814 + callba InefficientlyClear121BytesAtwc300 ld a, [CurPartyMon] ld e, a ld d, $0 @@ -27228,7 +27228,7 @@ LinkCommunications: ; 28000 call ClearScreen call UpdateSprites call Functione51 - call Functione58 + call LoadFontsBattleExtra callba Function16d69a call Function3200 hlcoord 3, 8 @@ -29103,7 +29103,7 @@ Function28b87: ; 28b87 ld c, $64 call DelayFrames call ClearTileMap - call Functione58 + call LoadFontsBattleExtra ld b, $8 call GetSGBLayout ld a, [$ffcb] @@ -29391,7 +29391,7 @@ Function28fdb: ; 28fdb call ClearSprites call ClearTileMap call DisableLCD - call Functione58 + call LoadFontsBattleExtra callab Function8cf53 ld a, [hCGB] and a @@ -45537,7 +45537,7 @@ Function4e881: ; 4e881 call ClearSprites call DisableLCD call Functione51 - call Functione58 + call LoadFontsBattleExtra ld hl, VBGMap0 ld bc, VBGMap1 - VBGMap0 ld a, " " @@ -45570,7 +45570,7 @@ Function4e8c2: ; 4e8c2 call ClearSprites call DisableLCD call Functione51 - call Functione58 + call LoadFontsBattleExtra ld hl, VBGMap0 ld bc, VBGMap1 - VBGMap0 ld a, " " @@ -45945,9 +45945,9 @@ Function5003f: ; 5003f ; 5004f Function5004f: ; 5004f - call Functione58 - callab Function8ad1 - callab Function8e814 + call LoadFontsBattleExtra + callab Function8ad1 ; engine/color.asm + callab InefficientlyClear121BytesAtwc300 ret ; 5005f @@ -53514,7 +53514,7 @@ endr ; 86650 Function86650: ; 86650 - call Functione58 + call LoadFontsBattleExtra xor a ld [wJumptableEntryIndexBuffer], a .asm_86657 @@ -58048,20 +58048,20 @@ INCBIN "gfx/unknown/08e7f4.2bpp" GFX_8e804: ; 8e804 INCBIN "gfx/unknown/08e804.2bpp" -Function8e814: ; 8e814 +InefficientlyClear121BytesAtwc300: ; 8e814 push hl push de push bc push af ld hl, wc300 - ld bc, $00c1 -.asm_8e81e + ld bc, wc3c1 - wc300 +.loop ld [hl], $0 inc hl dec bc ld a, c or b - jr nz, .asm_8e81e + jr nz, .loop pop af pop bc pop de @@ -58934,7 +58934,7 @@ LoadCallerScript: ; 9020d (24:420d) ; 90233 (24:4233) WrongNumber: ; 90233 - db PHONE, PHONE_NONE + db PHONE, PHONE_00 dba .script .script: writetext .text @@ -59282,17 +59282,17 @@ phone: MACRO dba \7 ; script 2 ENDM - phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone PHONE, PHONE_MOM, KRISS_HOUSE_1F, 7, MomPhoneScript, 0, UnusedPhoneScript - phone PHONE, PHONE_OAK, OAKS_LAB, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone PHONE, PHONE_BILL, N_A, 7, BillPhoneScript1, 0, BillPhoneScript2 - phone PHONE, PHONE_ELM, ELMS_LAB, 7, ElmPhoneScript1, 0, ElmPhoneScript2 + phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, MOM_PHONE, KRISS_HOUSE_1F, 7, MomPhoneScript, 0, UnusedPhoneScript + phone PHONE, OAK_PHONE, OAKS_LAB, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, BILL_PHONE, N_A, 7, BillPhoneScript1, 0, BillPhoneScript2 + phone PHONE, ELM_PHONE, ELMS_LAB, 7, ElmPhoneScript1, 0, ElmPhoneScript2 phone SCHOOLBOY, JACK1, NATIONAL_PARK, 7, JackPhoneScript1, 7, JackPhoneScript2 phone POKEFANF, BEVERLY1, NATIONAL_PARK, 7, BeverlyPhoneScript1, 7, BeverlyPhoneScript2 phone SAILOR, HUEY1, OLIVINE_LIGHTHOUSE_2F, 7, HueyPhoneScript1, 7, HueyPhoneScript2 - phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript phone COOLTRAINERM, GAVEN3, ROUTE_26, 7, GavenPhoneScript1, 7, GavenPhoneScript2 phone COOLTRAINERF, BETH1, ROUTE_26, 7, BethPhoneScript1, 7, BethPhoneScript2 phone BIRD_KEEPER, JOSE2, ROUTE_27, 7, JosePhoneScript1, 7, JosePhoneScript2 @@ -59307,7 +59307,7 @@ ENDM phone JUGGLER, IRWIN1, ROUTE_35, 7, IrwinPhoneScript1, 7, IrwinPhoneScript2 phone BUG_CATCHER, ARNIE1, ROUTE_35, 7, ArniePhoneScript1, 7, ArniePhoneScript2 phone SCHOOLBOY, ALAN1, ROUTE_36, 7, AlanPhoneScript1, 7, AlanPhoneScript2 - phone PHONE, PHONE_NONE, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript + phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript phone LASS, DANA1, ROUTE_38, 7, DanaPhoneScript1, 7, DanaPhoneScript2 phone SCHOOLBOY, CHAD1, ROUTE_38, 7, ChadPhoneScript1, 7, ChadPhoneScript2 phone POKEFANM, DEREK1, ROUTE_39, 7, DerekPhoneScript1, 7, DerekPhoneScript2 @@ -59319,7 +59319,7 @@ ENDM phone BLACKBELT_T, KENJI3, ROUTE_45, 7, KenjiPhoneScript1, 7, KenjiPhoneScript2 phone HIKER, PARRY1, ROUTE_45, 7, ParryPhoneScript1, 7, ParryPhoneScript2 phone PICNICKER, ERIN1, ROUTE_46, 7, ErinPhoneScript1, 7, ErinPhoneScript2 - phone PHONE, PHONE_BUENA, GOLDENROD_DEPT_STORE_ROOF, 7, BuenaPhoneScript1, 7, BuenaPhoneScript2 + phone PHONE, BUENA_PHONE, GOLDENROD_DEPT_STORE_ROOF, 7, BuenaPhoneScript1, 7, BuenaPhoneScript2 ; 90627 SpecialPhoneCallList: ; 90627 @@ -60025,7 +60025,7 @@ UnknownText_0x90ab7: ; 0x90ab7 Function90abc: ; 90abc hlcoord 1, 14 - lb bc, 3, 12 + lb bc, 3, SCREEN_WIDTH - 2 call ClearBox ld hl, UnknownText_0x90acc call PlaceWholeStringInBoxAtOnce @@ -67091,7 +67091,7 @@ DisplayCaughtContestMonStats: ; cc000 call WhiteBGMap call ClearTileMap call ClearSprites - call Functione58 + call LoadFontsBattleExtra ld hl, Options ld a, [hl] @@ -72858,7 +72858,7 @@ Functione33e8: ; e33e8 (38:73e8) xor a call ByteFill call Functione51 - call Functione58 + call LoadFontsBattleExtra ld hl, PCMailGFX ld de, VTiles2 tile $5c ld bc, $40 @@ -73135,7 +73135,7 @@ Functione36f9: ; e36f9 (38:76f9) callba Function116c1 call ClearTileMap call Functione51 - call Functione58 + call LoadFontsBattleExtra ld a, [MenuSelection] dec a call Functione3626 @@ -76470,7 +76470,7 @@ Functionfb4b0:: ; fb4b0 ret ; fb4be -Functionfb4be:: ; fb4be +_LoadFontsBattleExtra:: ; fb4be ld de, FontBattleExtra ld hl, VTiles2 tile $60 lb bc, BANK(FontBattleExtra), $19 @@ -76528,7 +76528,7 @@ Functionfb50d: ; fb50d ; fb53e Functionfb53e: ; fb53e - call Functionfb4be + call _LoadFontsBattleExtra ld de, GFX_f8ac0 ld hl, VTiles2 tile $6c lb bc, BANK(GFX_f8ac0), 4 @@ -78289,7 +78289,7 @@ Function104000:: ; 104000 Function104006: ; 104006 decoord 0, 0, AttrMap - ld hl, w6_d000 + $400 + ld hl, w6_d400 call Function104263 decoord 0, 0 ld hl, w6_d000 @@ -78300,7 +78300,7 @@ Function104006: ; 104006 call Function10419d ld a, $1 ld [rVBK], a - ld hl, w6_d000 + $400 + ld hl, w6_d400 call Function10419d ret ; 10402d @@ -78328,11 +78328,11 @@ Function104047: ; 104047 Function10404d: ; 10404d decoord 0, 0, AttrMap - ld hl, $d400 + ld hl, w6_d400 call Function104263 ld a, $1 ld [rVBK], a ; $ff00+$4f - ld hl, $d400 + ld hl, w6_d400 call Function10419d ret ; 104061 @@ -78344,7 +78344,7 @@ Function104061:: ; 104061 Function104067: ; 104067 decoord 0, 0, AttrMap - ld hl, $d400 + ld hl, w6_d400 call Function104263 decoord 0, 0 ld hl, w6_d000 @@ -78355,7 +78355,7 @@ Function104067: ; 104067 push af ld a, $1 ld [rVBK], a ; $ff00+$4f - ld hl, $d400 + ld hl, w6_d400 call Function1041ad ld a, $0 ld [rVBK], a ; $ff00+$4f @@ -78374,7 +78374,7 @@ Function104099: ; 104099 Function1040a2: ; 1040a2 decoord 0, 0, AttrMap - ld hl, $d400 + ld hl, w6_d400 call Function104263 decoord 0, 0 ld hl, w6_d000 @@ -78385,7 +78385,7 @@ Function1040a2: ; 1040a2 push af ld a, $1 ld [rVBK], a - ld hl, $d400 + ld hl, w6_d400 call Function1041c1 ld a, $0 ld [rVBK], a @@ -78444,7 +78444,7 @@ Function104110:: ; 104110 Function104116: ; 104116 decoord 0, 0, AttrMap - ld hl, $d400 + ld hl, w6_d400 call Function104263 decoord 0, 0 ld hl, w6_d000 @@ -78455,7 +78455,7 @@ Function104116: ; 104116 push af ld a, $1 ld [rVBK], a ; $ff00+$4f - ld hl, $d400 + ld hl, w6_d400 call Function1041b7 ld a, $0 ld [rVBK], a ; $ff00+$4f @@ -78474,7 +78474,7 @@ Function104148: ; 104148 (41:4148) Function10414e: ; 10414e decoord 0, 0, AttrMap - ld hl, $d400 + ld hl, w6_d400 call Function104263 ld c, $ff decoord 0, 0 @@ -78482,7 +78482,7 @@ Function10414e: ; 10414e call Function104265 ld a, $1 ld [rVBK], a - ld hl, $d400 + ld hl, w6_d400 call Function1041ad ld a, $0 ld [rVBK], a @@ -78576,25 +78576,25 @@ Function1041c1: ; 1041c1 ld a, $7f sub c ld d, a -.asm_1041e4 +.loop1 ld a, [rLY] cp d - jr nc, .asm_1041e4 -.asm_1041e9 + jr nc, .loop1 +.loop2 ld a, [rSTAT] and $3 - jr z, .asm_1041e9 + jr z, .loop2 ld a, b ld [rHDMA5], a ld a, [rLY] inc c ld hl, rLY -.asm_1041f8 +.loop3 cp [hl] - jr z, .asm_1041f8 + jr z, .loop3 ld a, [hl] dec c - jr nz, .asm_1041f8 + jr nz, .loop3 ld hl, rHDMA5 res 7, [hl] ret @@ -78605,54 +78605,57 @@ asm_104205: jr asm_10420b -Function104209: ; 104209 +Function104209: +; LY magic ld b, $7f asm_10420b: ld a, h ld [rHDMA1], a ld a, l - and $f0 + and $f0 ; high nybble ld [rHDMA2], a ld a, d - and $1f + and $1f ; lower 5 bits ld [rHDMA3], a ld a, e - and $f0 + and $f0 ; high nybble ld [rHDMA4], a ld a, c dec c - or $80 + or $80 ; set 7, a ld e, a ld a, b sub c ld d, a -.asm_104225 +.ly_loop ld a, [rLY] cp d - jr nc, .asm_104225 + jr nc, .ly_loop + di -.asm_10422b +.rstat_loop_1 ld a, [rSTAT] and $3 - jr nz, .asm_10422b -.asm_104231 + jr nz, .rstat_loop_1 +.rstat_loop_2 ld a, [rSTAT] and $3 - jr z, .asm_104231 + jr z, .rstat_loop_2 ld a, e ld [rHDMA5], a ld a, [rLY] inc c ld hl, rLY -.asm_104240 +.final_ly_loop cp [hl] - jr z, .asm_104240 + jr z, .final_ly_loop ld a, [hl] dec c - jr nz, .asm_104240 + jr nz, .final_ly_loop ld hl, rHDMA5 res 7, [hl] ei + ret ; 10424e @@ -78677,60 +78680,79 @@ Function104263: ; 104263 (41:4263) ld c, $0 Function104265: ; 104265 (41:4265) +; back up the value of c to hConnectionStripLength ld a, [hConnectionStripLength] push af ld a, c ld [hConnectionStripLength], a - ld c, $12 -.asm_10426d - ld b, $14 -.asm_10426f + +; for each row on the screen + ld c, SCREEN_HEIGHT +.loop1 +; for each tile in the row + ld b, SCREEN_WIDTH +.loop2 +; copy from de to hl ld a, [de] inc de ld [hli], a dec b - jr nz, .asm_10426f + jr nz, .loop2 + +; load the original value of c into hl 12 times ld a, [hConnectionStripLength] - ld b, $c -.asm_104279 + ld b, 12 +.loop3 ld [hli], a dec b - jr nz, .asm_104279 + jr nz, .loop3 + dec c - jr nz, .asm_10426d + jr nz, .loop1 + +; restore the original value of hConnectionStripLength pop af ld [hConnectionStripLength], a ret Function104284:: ; 104284 + ; switch to WRAM bank 6 ld a, [rSVBK] push af ld a, $6 ld [rSVBK], a + push bc push hl - ld a, b - ld l, c + + ; Copy c tiles of the 2bpp from b:de to w6_d000 + ld a, b ; bank + ld l, c ; number of tiles ld h, $0 rept 4 - add hl, hl + add hl, hl ; multiply by 16 (16 bytes of a 2bpp = 8 x 8 tile) endr ld b, h ld c, l - ld h, d + ld h, d ; address ld l, e ld de, w6_d000 call FarCopyBytes + pop hl pop bc + push bc call DelayFrame pop bc + ld d, h ld e, l ld hl, w6_d000 call Function104209 + + ; restore the previous bank pop af ld [rSVBK], a ret @@ -82676,7 +82698,7 @@ Function1dc381: ; 1dc381 call ClearSprites xor a ld [hBGMapMode], a - call Functione58 + call LoadFontsBattleExtra ld de, MobileHPIcon ld hl, VTiles2 tile $71 @@ -82776,7 +82798,7 @@ Function1dc47b: ; 1dc47b call ClearSprites xor a ld [hBGMapMode], a - call Functione58 + call LoadFontsBattleExtra xor a ld [MonType], a callba Function5084a -- cgit v1.2.3 From 119d6b411922eb7b375691b81fc97c9b334f4167 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 24 Oct 2015 10:34:19 -0400 Subject: About time I got to these functions --- main.asm | 1620 +++++++++++++++----------------------------------------------- 1 file changed, 384 insertions(+), 1236 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index b5cd9ea8b..5a3dfe1d8 100644 --- a/main.asm +++ b/main.asm @@ -117,7 +117,7 @@ Function5b44: ; 5b44 MysteryGift: ; 5b54 call UpdateTime - callba Function11548 + callba DoMysteryGiftIfDayHasPassed callba DoMysteryGift ret ; 5b64 @@ -149,7 +149,7 @@ NewGame: ; 5b6b Function5b8f: ; 5b8f callba Function10632f jr c, .ok - callba Function48dcb + callba InitGender ret .ok @@ -380,7 +380,7 @@ InitializeNPCNames: ; 5ce9 InitializeWorld: ; 5d23 call ShrinkPlayer callba GetSpawnCoord - callba Function113d6 + callba _InitializeStartDay ret ; 5d33 @@ -3176,7 +3176,7 @@ Predef1: ; 747a SECTION "bank2", ROMX, BANK[$2] Function8000: ; 8000 - call Function2ed3 + call DisableSpriteUpdates xor a ld [hBGMapMode], a call WhiteBGMap @@ -3195,26 +3195,26 @@ Function8000: ; 8000 ; 8029 GetSpawnCoord: ; 8029 - ld a, $ff + ld a, -1 ld [wd4cd], a ld [wd4ce], a ld a, $0 ld hl, PlayerObjectTemplate call Function19a6 ld b, $0 - call Function808f + call PlayerSpawn_ConvertCoords ld a, $0 call GetMapObject ld hl, MAPOBJECT_COLOR add hl, bc - ld e, $80 - ld a, [wd45b] + ln e, (1 << 3) | PAL_OW_RED, $0 + ld a, [wPlayerSpriteSetupFlags] bit 2, a jr nz, .ok ld a, [PlayerGender] bit 0, a jr z, .ok - ld e, (PAL_OW_BLUE << 4) | $80 + ln e, (1 << 3) | PAL_OW_BLUE, $0 .ok ld [hl], e @@ -3234,11 +3234,10 @@ PlayerObjectTemplate: ; 8071 ; A dummy map object used to initialize the player object. ; Shorter than the actual amount copied by two bytes. ; Said bytes seem to be unused. - person_event SPRITE_CHRIS, 0, 0, $0b, 15, 15, -1, -1, 0, 0, 0, $0000, -1 - ; db $01, $00, $00, $0b, $ff, $ff, $ff, $00, $00, $00, $00, $ff, $ff + person_event SPRITE_CHRIS, -4, -4, $0b, 15, 15, -1, -1, 0, 0, 0, $0000, -1 ; 807e -Function807e:: ; 807e +CopyDECoordsToMapObject:: ; 807e push de ld a, b call GetMapObject @@ -3252,7 +3251,7 @@ Function807e:: ; 807e ret ; 808f -Function808f: ; 808f +PlayerSpawn_ConvertCoords: ; 808f push bc ld a, [XCoord] add 4 @@ -3261,7 +3260,7 @@ Function808f: ; 808f add 4 ld e, a pop bc - call Function807e + call CopyDECoordsToMapObject ret ; 80a1 @@ -3278,7 +3277,7 @@ Function80a1:: ; 80a1 ld e, [hl] ld a, [hConnectionStripLength] ld b, a - call Function807e + call CopyDECoordsToMapObject and a ret ; 80b8 @@ -4101,10 +4100,10 @@ CheckTime:: ; c000 ; c012 TimeOfDayTable: ; c012 - db MORN, 1 - db DAY, 2 - db NITE, 4 - db NITE, 4 + db MORN, 1 << MORN + db DAY, 1 << DAY + db NITE, 1 << NITE + db NITE, 1 << NITE db -1 ; c01b @@ -5031,7 +5030,7 @@ UsedSurfScript: ; c986 ; c9a2 Functionc9a2: ; c9a2 - callba Function1060bb ; empty + callba MobileFn_1060bb ; empty ret ; c9a9 @@ -5330,7 +5329,7 @@ CheckContinueWaterfall: ; cb38 ld a, [StandingTile] call CheckWaterfallTile ret z - callba Function1060c1 + callba MobileFn_1060c1 ld a, $1 ld [ScriptVar], a ret @@ -6606,7 +6605,7 @@ _ReceiveItem:: ; d1d5 push hl call CheckItemPocket pop de - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] dec a ld hl, .Pockets rst JumpTable @@ -6653,7 +6652,7 @@ _TossItem:: ; d20d push hl call CheckItemPocket pop de - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] dec a ld hl, .Pockets rst JumpTable @@ -6701,7 +6700,7 @@ _CheckItem:: ; d244 push hl call CheckItemPocket pop de - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] dec a ld hl, .Pockets rst JumpTable @@ -7138,50 +7137,50 @@ GetNumberedTMHM: ; d417 _CheckTossableItem:: ; d427 -; Return 1 in wd142 and carry if CurItem can't be removed from the bag. +; Return 1 in wItemAttributeParamBuffer and carry if CurItem can't be removed from the bag. ld a, ITEMATTR_PERMISSIONS call GetItemAttr bit 7, a - jr nz, Functiond47f + jr nz, ItemAttr_ReturnCarry and a ret ; d432 CheckSelectableItem: ; d432 -; Return 1 in wd142 and carry if CurItem can't be selected. +; Return 1 in wItemAttributeParamBuffer and carry if CurItem can't be selected. ld a, ITEMATTR_PERMISSIONS call GetItemAttr bit 6, a - jr nz, Functiond47f + jr nz, ItemAttr_ReturnCarry and a ret ; d43d CheckItemPocket:: ; d43d -; Return the pocket for CurItem in wd142. +; Return the pocket for CurItem in wItemAttributeParamBuffer. ld a, ITEMATTR_POCKET call GetItemAttr and $f - ld [wd142], a + ld [wItemAttributeParamBuffer], a ret ; d448 CheckItemContext: ; d448 -; Return the context for CurItem in wd142. +; Return the context for CurItem in wItemAttributeParamBuffer. ld a, ITEMATTR_HELP call GetItemAttr and $f - ld [wd142], a + ld [wItemAttributeParamBuffer], a ret ; d453 CheckItemMenu: ; d453 -; Return the menu for CurItem in wd142. +; Return the menu for CurItem in wItemAttributeParamBuffer. ld a, ITEMATTR_HELP call GetItemAttr swap a and $f - ld [wd142], a + ld [wItemAttributeParamBuffer], a ret ; d460 @@ -7197,7 +7196,7 @@ GetItemAttr: ; d460 add hl, bc xor a - ld [wd142], a + ld [wItemAttributeParamBuffer], a ld a, [CurItem] dec a @@ -7212,9 +7211,9 @@ GetItemAttr: ; d460 ret ; d47f -Functiond47f: ; d47f +ItemAttr_ReturnCarry: ; d47f ld a, 1 - ld [wd142], a + ld [wItemAttributeParamBuffer], a scf ret ; d486 @@ -7311,7 +7310,7 @@ Functiond508: ; d508 (3:5508) ret Functiond509: ; d509 (3:5509) - callba Function10602e + callba MobileFn_10602e ret Functiond510: ; d510 (3:5510) @@ -9504,14 +9503,14 @@ GivePoke:: ; e277 push af ld a, [CurItem] and a - jr z, .asm_e2e1 + jr z, .done ld a, [CurPartyMon] ld hl, PartyMon1Item ld bc, PartyMon2 - PartyMon1 call AddNTimes ld a, [CurItem] ld [hl], a - jr .asm_e2e1 + jr .done .failed ld a, [CurPartySpecies] @@ -9532,11 +9531,11 @@ GivePoke:: ; e277 push af ld a, [CurItem] and a - jr z, .asm_e2e1 + jr z, .done ld a, [CurItem] ld [sBoxMon1Item], a -.asm_e2e1 +.done ld a, [CurPartySpecies] ld [wd265], a ld [TempEnemyMonSpecies], a @@ -9570,6 +9569,7 @@ endr push de push bc jr nz, .asm_e35e + push hl ld a, [CurPartyMon] ld hl, PartyMonOT @@ -9577,14 +9577,14 @@ endr ld d, h ld e, l pop hl -.asm_e32f +.otnameloop ld a, [ScriptBank] call GetFarByte ld [de], a inc hl inc de cp "@" - jr nz, .asm_e32f + jr nz, .otnameloop ld a, [ScriptBank] call GetFarByte ld b, a @@ -9593,9 +9593,9 @@ endr ld hl, PartyMon1ID ld bc, PartyMon2 - PartyMon1 call AddNTimes - ld a, $3 + ld a, 01001 / $100 ld [hli], a - ld [hl], $e9 + ld [hl], 01001 % $100 pop bc callba SetPkmnCaughtData jr .asm_e3b2 @@ -9610,7 +9610,7 @@ endr ld [de], a inc hl inc de - cp $50 + cp "@" jr nz, .asm_e366 ld a, [ScriptBank] call GetFarByte @@ -9656,7 +9656,7 @@ endr call GetSRAMBank ld hl, wd050 ld de, sBoxMonNicknames - ld bc, $000b + ld bc, PKMN_NAME_LENGTH call CopyBytes call CloseSRAM ld b, $1 @@ -9679,7 +9679,7 @@ TextJump_WasSentToBillsPC: ; 0xe3d9 Functione3de: ; e3de push de call Function1d6e - call Function2ed3 + call DisableSpriteUpdates pop de push de ld b, $0 @@ -9748,14 +9748,14 @@ Functione443: ; e443 (3:6443) call LoadMenuDataHeader ld a, $1 .asm_e44b - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a call Function32f9 xor a ld [wcf76], a ld [hBGMapMode], a ; $ff00+$d4 call Function1e5d jr c, .asm_e46b - ld a, [wcf88] + ld a, [wPocketPointerLocationBuffer] push af ld a, [MenuSelection] ld hl, Jumptable_e4ba @@ -9953,7 +9953,7 @@ Functione583: ; e583 (3:6583) ret ClearPCItemScreen: ; e58b - call Function2ed3 + call DisableSpriteUpdates xor a ld [hBGMapMode], a call WhiteBGMap @@ -10425,7 +10425,7 @@ TMHMMoves: ; 1167a ; 116b7 _NamingScreen: ; 0x116b7 - call Function2ed3 + call DisableSpriteUpdates call Function116c1 call Function2b74 ret @@ -12260,7 +12260,7 @@ Function1250a: ; 1250a HalveMoney: ; 12513 ; Empty function... - callba Function1060c7 + callba MobileFn_1060c7 ; Halve the player's money. ld hl, Money @@ -12441,7 +12441,7 @@ StartMenu:: ; 125cd call LoadMenuDataHeader call .SetUpMenuItems ld a, [wd0d2] - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a call .DrawMenuAccount_ call MenuFunc_1e7f call .DrawBugContestStatusBox @@ -12457,13 +12457,13 @@ StartMenu:: ; 125cd call UpdateTimePals call .SetUpMenuItems ld a, [wd0d2] - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a .Select call .GetInput jr c, .Exit call .DrawMenuAccount - ld a, [wcf88] + ld a, [wPocketPointerLocationBuffer] ld [wd0d2], a call PlayClickSFX call Function1bee @@ -12502,7 +12502,7 @@ endr .ReturnEnd call ExitMenu .ReturnEnd2 - call Function2dcf + call LoadMoveSprites call UpdateTimePals ret @@ -12534,15 +12534,15 @@ endr .ReturnFour ; 12691 call ExitMenu - ld a, $80 - ld [$ffa0], a + ld a, HMENURETURN_SCRIPT + ld [hMenuReturn], a ret ; 12699 .ReturnThree ; 12699 call ExitMenu - ld a, $80 - ld [$ffa0], a + ld a, HMENURETURN_SCRIPT + ld [hMenuReturn], a jr .ReturnEnd2 ; 126a2 @@ -13019,7 +13019,7 @@ Function129f4: ; 129f4 push de call PartyMonItemName callba _CheckTossableItem - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] and a jr nz, .asm_12a3f ld hl, UnknownText_0x12a45 @@ -13270,7 +13270,7 @@ Function12ba9: ; 12ba9 jr z, .next call CheckTossableItem - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] and a jr nz, .next @@ -13683,7 +13683,7 @@ Function12e30: ; 12e30 jr z, .asm_12e4c cp $0 jr z, .asm_12e4f - callba Function1060b5 + callba MobileFn_1060b5 ld b, $4 ld a, $2 ret @@ -14403,7 +14403,7 @@ SelectMenu:: ; 13327 ld hl, ItemMayBeRegisteredText call MapTextbox call CloseText - jp Function2dcf + jp LoadMoveSprites ; 13340 @@ -14516,7 +14516,7 @@ endr UseRegisteredItem: ; 133c3 callba CheckItemMenu - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] ld hl, .SwitchTo rst JumpTable ret @@ -14534,7 +14534,7 @@ UseRegisteredItem: ; 133c3 .NoFunction ; 133df call LoadFont call CantUseItem - call Function2dcf + call LoadMoveSprites and a ret ; 133ea @@ -14542,7 +14542,7 @@ UseRegisteredItem: ; 133c3 .Current ; 133ea call LoadFont call DoItemEffect - call Function2dcf + call LoadMoveSprites and a ret ; 133f5 @@ -14552,7 +14552,7 @@ UseRegisteredItem: ; 133c3 call FadeToMenu call DoItemEffect call Function2b3c - call Function2dcf + call LoadMoveSprites and a ret ; 13406 @@ -14566,19 +14566,19 @@ UseRegisteredItem: ; 133c3 ld [wd0ef], a ld a, [wd0ec] cp 1 - jr nz, .asm_13425 + jr nz, ._cantuse scf - ld a, $80 - ld [$ffa0], a + ld a, HMENURETURN_SCRIPT + ld [hMenuReturn], a ret ; 13422 .CantUse ; 13422 call ResetWindow -.asm_13425 +._cantuse call CantUseItem - call Function2dcf + call LoadMoveSprites and a ret ; 1342d @@ -14878,7 +14878,7 @@ Special_GiveParkBalls: ; 135db ld [wContestMon], a ld a, 20 ld [wdc79], a - callba Function11490 + callba StartBugContestTimer ret ; 135eb @@ -15027,7 +15027,7 @@ Script_JumpStdFromRAM: ; 0x1369a _BugContestJudging: ; 1369d call ContestScore - callba Function105f79 + callba MobileFn_105f79 call Function13819 ld a, [wd00a] call LoadContestantName @@ -16072,11 +16072,13 @@ Function1409b: ; 1409b Function140ae: ; 140ae call Function6e3 ld c, a - and $c0 + and %11000000 jr nz, .asm_140c8 + ld a, c - and $20 + and %00100000 jr z, .asm_140eb + call UpdateTime ld a, [wRTC + 0] ld b, a @@ -16085,7 +16087,7 @@ Function140ae: ; 140ae jr c, .asm_140eb .asm_140c8 - callba Function113da + callba ClearDailyTimers callba Function170923 ld a, $5 call GetSRAMBank @@ -16218,7 +16220,7 @@ GetPlayerSprite: ; 14183 ; Get Chris or Kris's sprite. ld hl, .Chris - ld a, [wd45b] + ld a, [wPlayerSpriteSetupFlags] bit 2, a jr nz, .go ld a, [PlayerGender] @@ -18104,7 +18106,7 @@ KrisWithdrawItemMenu: ; 0x157d1 Function157e9: ; 0x157e9 ; check if the item has a quantity callba _CheckTossableItem - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] and a jr z, .askquantity @@ -18202,7 +18204,7 @@ KrisLogOffMenu: ; 0x15888 KrisDepositItemMenu: ; 0x1588b call Function158b8 jr c, .asm_158b6 - call Function2ed3 + call DisableSpriteUpdates call Function1d6e callba Function106a5 .asm_1589c @@ -18244,26 +18246,27 @@ Function158cc: ; 0x158cc ld a, $0 ld [wc2ce], a callba CheckItemMenu - ld a, [wd142] - ld hl, Jumptable_158e7 + ld a, [wItemAttributeParamBuffer] + ld hl, .jumptable rst JumpTable pop af ld [wc2ce], a ret ; 0x158e7 -Jumptable_158e7: ; 0x158e7 - dw .jump2 - dw .jump1 - dw .jump1 - dw .jump1 - dw .jump2 - dw .jump2 - dw .jump2 +.jumptable: ; 0x158e7 + dw .maybe_use + dw .no_use + dw .no_use + dw .no_use + dw .maybe_use + dw .maybe_use + dw .maybe_use -.jump1: +.no_use: ret -.jump2: + +.maybe_use: ld a, [Buffer1] push af ld a, [Buffer2] @@ -18278,7 +18281,7 @@ Jumptable_158e7: ; 0x158e7 Function1590a: ; 0x1590a callba _CheckTossableItem - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] and a jr z, .asm_1591d ld a, $1 @@ -18360,7 +18363,7 @@ Function15985: ; 0x15985 ld c, $12 call TextBox ld a, [wd0d7] - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a ld a, [wd0dd] ld [wd0e4], a call Function350c @@ -18936,7 +18939,7 @@ Function15cef: ; 15cef ld hl, MenuDataHeader_0x15e18 call CopyMenuDataHeader ld a, [WalkingX] - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a ld a, [WalkingY] ld [wd0e4], a call Function350c @@ -19269,7 +19272,7 @@ UnknownText_0x15eae: ; 0x15eae Function15eb3: ; 15eb3 - call Function2ed3 + call DisableSpriteUpdates callba Function106a5 .asm_15ebc callba Function106be @@ -19302,30 +19305,30 @@ UnknownText_0x15edb: ; 0x15edb Function15ee0: ; 15ee0 callba CheckItemMenu - ld a, [wd142] - ld hl, Jumptable_15eee + ld a, [wItemAttributeParamBuffer] + ld hl, .jumptable rst JumpTable ret ; 15eee -Jumptable_15eee: ; 15eee - dw Function15efd - dw Function15efc - dw Function15efc - dw Function15efc - dw Function15efd - dw Function15efd - dw Function15efd +.jumptable: ; 15eee + dw .maybe_use + dw .no_use + dw .no_use + dw .no_use + dw .maybe_use + dw .maybe_use + dw .maybe_use ; 15efc -Function15efc: ; 15efc +.no_use: ; 15efc ret ; 15efd -Function15efd: ; 15efd +.maybe_use: ; 15efd callba _CheckTossableItem - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] and a jr z, .asm_15f11 ld hl, UnknownText_0x15faf @@ -20690,7 +20693,7 @@ Function16dc7: ; 16dc7 jr z, .asm_16dfd ld hl, UnknownText_0x16e09 call PrintText - call Function2ed3 + call DisableSpriteUpdates callba Function8461a call Function2b74 ld a, [$ffac] @@ -20907,7 +20910,7 @@ Function16ed6: ; 16ed6 ret ; 16f3e -Function16f3e:: ; 16f3e +DoEggStep:: ; 16f3e ld de, PartySpecies ld hl, PartyMon1Happiness ld c, 0 @@ -20938,7 +20941,7 @@ OverworldHatchEgg:: ; 16f5e call Function16f70 call Function2b4d call RestartMapMusic - jp Function2dcf + jp LoadMoveSprites ; 16f70 Function16f70: ; 16f70 (5:6f70) @@ -20964,7 +20967,7 @@ Function16f7a: ; 16f7a (5:6f7a) push de callba Function4dbb8 - callba Function10608d + callba MobileFn_10608d ld a, [CurPartyMon] ld hl, PartyMons ; wdcdf (aliases: PartyMon1, PartyMon1Species) ld bc, PartyMon2 - PartyMon1 @@ -22049,7 +22052,7 @@ Function2403c:: ; 2403c ld c, a ld a, [wcfa3] call SimpleMultiply - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a and a ret ; 24085 @@ -22094,7 +22097,7 @@ Function24098: ; 24098 ld c, a ld a, [wcfaa] add c - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a and a ret @@ -22180,7 +22183,7 @@ Function2411a: ; 2411a (9:411a) call Function24193 ld a, [wcfa4] ld e, a - ld a, [wcf88] + ld a, [wPocketPointerLocationBuffer] ld b, a xor a ld d, $0 @@ -22583,7 +22586,7 @@ Function24329: ; 24329 ret ; 24374 -Function24374:: ; 24374 +_BackUpTiles:: ; 24374 ld a, [rSVBK] push af ld a, $7 @@ -22594,9 +22597,9 @@ Function24374:: ; 24374 inc hl ld d, [hl] push de + ld b, $10 ld hl, wcf81 - .loop ld a, [hli] ld [de], a @@ -22604,6 +22607,9 @@ Function24374:: ; 24374 dec b jr nz, .loop +; If bit 6 or 7 of the menu flags is set, set bit 0 of the address +; at 7:[wcf71], and draw the menu using the coordinates from the header. +; Otherwise, reset bit 0 of 7:[wcf71]. ld a, [wcf81] bit 6, a jr nz, .bit_6 @@ -22617,13 +22623,13 @@ Function24374:: ; 24374 ld l, a set 0, [hl] call GetMemTileCoord - call Function243cd - call Function1d19 - call Function243cd + call .copy + call GetMemAttrCoord + call .copy jr .done .not_bit_7 - pop hl + pop hl ; last-pushed register was de push hl ld a, [hld] ld l, [hl] @@ -22632,7 +22638,7 @@ Function24374:: ; 24374 .done pop hl - call Function243e7 + call .ret ; empty function ld a, h ld [de], a dec de @@ -22651,30 +22657,34 @@ Function24374:: ; 24374 ret ; 243cd -Function243cd: ; 243cd - call Function1c53 +.copy: ; 243cd + call GetMenuBoxDims inc b inc c - call Function243e7 -.asm_243d5 + call .ret ; empty function + +.row push bc push hl -.asm_243d7 + +.col ld a, [hli] ld [de], a dec de dec c - jr nz, .asm_243d7 + jr nz, .col + pop hl ld bc, SCREEN_WIDTH add hl, bc pop bc dec b - jr nz, .asm_243d5 + jr nz, .row + ret ; 243e7 -Function243e7: ; 243e7 +.ret: ; 243e7 ret ; 243e8 @@ -22699,7 +22709,7 @@ Function243e8:: ; 243e8 jr z, .next ld d, h ld e, l - call Function1c23 + call RestoreTileBackup .next call Function1c7e @@ -22768,7 +22778,7 @@ Function2446d:: ; 2446d ld a, [wcf91] ld b, a ld hl, wcfa1 - ld a, [wcf82] + ld a, [wMenuBorderTopCoord] inc a bit 6, b jr nz, .asm_2447d @@ -22776,7 +22786,7 @@ Function2446d:: ; 2446d .asm_2447d ld [hli], a - ld a, [wcf83] + ld a, [wMenuBorderLeftCoord] inc a ld [hli], a ld a, [wcf92] @@ -22807,7 +22817,7 @@ Function2446d:: ; 2446d .asm_244a9 ld [hli], a - ld a, [wcf88] + ld a, [wPocketPointerLocationBuffer] and a jr z, .asm_244b7 ld c, a @@ -22835,11 +22845,11 @@ Function244c3: ; 0x244c3 ld a, [MenuSelection] ld [CurSpecies], a hlcoord 0, 12 - ld b, $4 - ld c, $12 + ld b, 4 + ld c, SCREEN_WIDTH - 2 call TextBox ld a, [MenuSelection] - cp $ff + cp -1 ret z decoord 1, 14 callba PrintItemDescription @@ -22861,10 +22871,10 @@ Pokepic:: ; 244e3 call GetBaseData ld de, VTiles1 predef GetFrontpic - ld a, [wcf82] + ld a, [wMenuBorderTopCoord] inc a ld b, a - ld a, [wcf83] + ld a, [wMenuBorderLeftCoord] inc a ld c, a call GetTileCoord @@ -23185,18 +23195,19 @@ Function246fc: ; 246fc Function24706: ; 24706 (9:4706) call GetMemTileCoord - ld de, $14 + ld de, SCREEN_WIDTH add hl, de - ld de, $28 + ld de, 2 * SCREEN_WIDTH ld a, [wcf92] .asm_24713 - ld [hl], $7f + ld [hl], " " add hl, de dec a jr nz, .asm_24713 ret Function2471a: ; 2471a +; Get the value of (wcf95):(wcf96,wcf97) and store it in wd144. ld hl, wcf96 ld a, [hli] ld h, [hl] @@ -23204,30 +23215,33 @@ Function2471a: ; 2471a ld a, [wcf95] call GetFarByte ld [wd144], a +; Store [wcf92] + [wd0e4] in c ld a, [wcf92] ld c, a ld a, [wd0e4] add c ld c, a +; If [wd144] > c, skip this next part. ld a, [wd144] inc a cp c - jr nc, .asm_24748 + jr nc, .skip +; If [wd144] > [wcf92], store ([wd144] - [wcf92]) in [wd0e4]. Else, store 0 in [wd0e4]. ld a, [wcf92] ld c, a ld a, [wd144] inc a sub c - jr nc, .asm_24745 + jr nc, .store xor a -.asm_24745 +.store ld [wd0e4], a -.asm_24748 +.skip ld a, [wd0e4] ld c, a - ld a, [wcf88] + ld a, [wPocketPointerLocationBuffer] add c ld b, a ld a, [wd144] @@ -23240,7 +23254,7 @@ Function2471a: ; 2471a xor a ld [wd0e4], a ld a, $1 - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a .asm_24763 ret @@ -23251,10 +23265,10 @@ Function24764: ; 24764 ld c, a ld a, [wd144] ld b, a - ld a, [wcf82] + ld a, [wMenuBorderTopCoord] add $1 ld [wcfa1], a - ld a, [wcf83] + ld a, [wMenuBorderLeftCoord] add $0 ld [wcfa2], a ld a, [wcf92] @@ -23298,7 +23312,7 @@ Function24764: ; 24764 ld [wcfa8], a ld a, [wcfa3] ld b, a - ld a, [wcf88] + ld a, [wPocketPointerLocationBuffer] and a jr z, .asm_247c8 cp b @@ -23343,9 +23357,9 @@ Function247f0: ; 247f0 ld a, [wd0e4] and a jr z, .asm_2480d - ld a, [wcf82] + ld a, [wMenuBorderTopCoord] ld b, a - ld a, [wcf85] + ld a, [wMenuBorderRightCoord] ld c, a call GetTileCoord ld [hl], $61 @@ -23380,9 +23394,9 @@ Function247f0: ; 247f0 ld a, [wcf91] bit 4, a jr z, .asm_24850 - ld a, [wcf84] + ld a, [wMenuBorderBottomCoord] ld b, a - ld a, [wcf85] + ld a, [wMenuBorderRightCoord] ld c, a call GetTileCoord ld [hl], $ee @@ -23449,10 +23463,10 @@ Function2488b: ; 2488b add a add $1 ld c, a - ld a, [wcf82] + ld a, [wMenuBorderTopCoord] add c ld b, a - ld a, [wcf83] + ld a, [wMenuBorderLeftCoord] add $0 ld c, a call GetTileCoord @@ -23799,7 +23813,7 @@ PlaceMenuItemQuantity: ; 0x24ac3 ld a, [MenuSelection] ld [CurItem], a callba _CheckTossableItem - ld a, [wd142] + ld a, [wItemAttributeParamBuffer] pop hl and a jr nz, .done @@ -24138,10 +24152,10 @@ Function24d47: ; 24d47 inc a add a ld b, a - ld a, [wcf84] + ld a, [wMenuBorderBottomCoord] sub b inc a - ld [wcf82], a + ld [wMenuBorderTopCoord], a call Function1cbb ret ; 24d59 @@ -24416,9 +24430,9 @@ LoadBattleMenu: ; 24ef2 ld hl, BattleMenuDataHeader call LoadMenuDataHeader ld a, [wd0d2] - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a call Function2039 - ld a, [wcf88] + ld a, [wPocketPointerLocationBuffer] ld [wd0d2], a call ExitMenu ret @@ -24439,9 +24453,9 @@ ContestBattleMenu: ; 24f13 Function24f19: ; 24f19 ld a, [wd0d2] - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a call InterpretMenu - ld a, [wcf88] + ld a, [wPocketPointerLocationBuffer] ld [wd0d2], a call ExitMenu ret @@ -25681,7 +25695,7 @@ _KrisDecorationMenu: ; 0x2675c ld [wd1ef], a .asm_2676f ld a, [wd1ef] - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a call Function26806 call Function1e5d ld a, [wcfa9] @@ -29175,7 +29189,7 @@ Function28b87: ; 28b87 .asm_28e63 callba Function14a58 - callba Function1060af + callba MobileFn_1060af callba Function106187 ld c, $28 call DelayFrames @@ -31228,9 +31242,9 @@ Special_CheckBothSelectedSameRoom: ; 29e82 Special_TimeCapsule: ; 29eaf ld a, LINK_TIMECAPSULE ld [wLinkMode], a - call Function2ed3 + call DisableSpriteUpdates callab LinkCommunications - call Function2ee4 + call EnableSpriteUpdates xor a ld [hVBlank], a ret @@ -31239,9 +31253,9 @@ Special_TimeCapsule: ; 29eaf Special_TradeCenter: ; 29ec4 ld a, LINK_TRADECENTER ld [wLinkMode], a - call Function2ed3 + call DisableSpriteUpdates callab LinkCommunications - call Function2ee4 + call EnableSpriteUpdates xor a ld [hVBlank], a ret @@ -31250,9 +31264,9 @@ Special_TradeCenter: ; 29ec4 Special_Colosseum: ; 29ed9 ld a, LINK_COLOSSEUM ld [wLinkMode], a - call Function2ed3 + call DisableSpriteUpdates callab LinkCommunications - call Function2ee4 + call EnableSpriteUpdates xor a ld [hVBlank], a ret @@ -31723,7 +31737,7 @@ endr CheckRepelEffect:: ; 2a1df ; If there is no active Repel, there's no need to be here. - ld a, [wdca1] + ld a, [wRepelEffect] and a jr z, .encounter ; Get the first Pokemon in your party that isn't fainted. @@ -32446,23 +32460,23 @@ Function2b930: ; 2b930 jr nc, .asm_2b97f .asm_2b976 - ld a, [wd0ee] + ld a, [wBattleResult] and $f0 - ld [wd0ee], a + ld [wBattleResult], a ret .asm_2b97f - ld a, [wd0ee] + ld a, [wBattleResult] and $f0 add $1 - ld [wd0ee], a + ld [wBattleResult], a ret .asm_2b98a - ld a, [wd0ee] + ld a, [wBattleResult] and $f0 add $2 - ld [wd0ee], a + ld [wBattleResult], a ret ; 2b995 @@ -32829,7 +32843,7 @@ GFX_2c172: ; 2c172 INCBIN "gfx/battle/balls.2bpp" ; 2c1b2 -Function2c1b2: ; 2c1b2 +_ShowLinkBattleParticipants: ; 2c1b2 call WhiteBGMap call Functione5f hlcoord 2, 3 @@ -33510,7 +33524,7 @@ Function2c867: ; 2c867 and a jr z, .nope - callba Function106049 + callba MobileFn_106049 ld a, [CurItem] call IsHM ret c @@ -33583,7 +33597,7 @@ Function2c8d3: ; 2c8d3 (b:48d3) ld [wcfa7], a ld a, $f3 ld [wcfa8], a - ld a, [wd0dc] + ld a, [wTMHMPocketPointerLocation] inc a ld [wcfa9], a ld a, $1 @@ -33596,7 +33610,7 @@ Function2c915: ; 2c915 (b:4915) ld b, a ld a, [wcfa9] dec a - ld [wd0dc], a + ld [wTMHMPocketPointerLocation], a xor a ld [hBGMapMode], a ; $ff00+$d4 ld a, [wcfa6] @@ -34117,14 +34131,14 @@ ConvertBerriesToBerryJuice: ; 2ede6 ret ; 2ee18 -Function2ee18: ; 2ee18 +ShowLinkBattleParticipants: ; 2ee18 ; If we're not in a communications room, ; we don't need to be here. ld a, [wLinkMode] and a ret z - callba Function2c1b2 + callba _ShowLinkBattleParticipants ld c, 150 call DelayFrames call ClearTileMap @@ -34133,7 +34147,7 @@ Function2ee18: ; 2ee18 ; 2ee2f -Function2ee2f: ; 2ee2f +FindFirstAliveMon: ; 2ee2f xor a ld [$ffde], a call DelayFrame @@ -34275,7 +34289,7 @@ PlayBattleMusic: ; 2ee6c ClearBattleRAM: ; 2ef18 xor a ld [wd0ec], a - ld [wd0ee], a + ld [wBattleResult], a ld hl, wd0d8 rept 3 @@ -34441,7 +34455,7 @@ Function39550: ; 39550 ld hl, StringBuffer1 .ok - ld bc, $000d + ld bc, TRAINER_CLASS_NAME_LENGTH ld de, OTName push de call CopyBytes @@ -34456,7 +34470,7 @@ Function3957b: ; 3957b ld a, [TrainerClass] dec a ld hl, TrainerClassAttributes - ld bc, 7 + ld bc, NUM_TRAINER_ATTRIBUTES call AddNTimes ld de, wc650 ld a, [hli] @@ -35210,7 +35224,7 @@ endr push hl ld hl, UnknownText_0x42478 call PrintTextBoxText - callba Function106094 + callba MobileFn_106094 ld de, MUSIC_NONE call PlayMusic @@ -36554,7 +36568,7 @@ Function44806: ; 0x44806 call Function352f call UpdateSprites ld a, [wd0f1] - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a ld a, [OBPals + 8 * 6] ld [wd0e4], a call Function350c @@ -36760,6 +36774,7 @@ Function48000: ; 48000 ld [wd478], a ld [DefaultFlypoint], a ld [wd003], a + ; could have done "ld a, [wd479] \ and -4", saved four operations ld a, [wd479] res 0, a ld [wd479], a @@ -37072,7 +37087,7 @@ asm_4828d: ; 4828d (12:428d) call WaitBGMap ld a, [PlayerGender] inc a - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a call Function1bc9 call PlayClickSFX call ExitMenu @@ -37116,7 +37131,7 @@ Function48304: ; 48304 (12:4304) ld b, $c ld c, $8 call Function48cdc - ld a, [wcf88] + ld a, [wPocketPointerLocationBuffer] ld b, a ld a, [wd0e4] ld c, a @@ -37127,7 +37142,7 @@ Function48304: ; 48304 (12:4304) jr c, .asm_4833f sub $29 inc a - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a ld a, $29 .asm_4833f ld [wd0e4], a @@ -37140,7 +37155,7 @@ Function48304: ; 48304 (12:4304) ld d, a pop bc ld a, b - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a ld a, c ld [wd0e4], a ld a, d @@ -37189,7 +37204,7 @@ Function48383: ; 48383 (12:4383) .asm_483af ld hl, wcfa9 ld a, [hl] - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a scf .asm_483b7 pop bc @@ -38600,7 +38615,7 @@ Function48d94: ; 48d94 (12:4d94) ld [hl], a ret -Function48dcb: ; 48dcb (12:4dcb) +InitGender: ; 48dcb (12:4dcb) call Function48e14 call Function48e47 call Function48e64 @@ -38608,7 +38623,7 @@ Function48dcb: ; 48dcb (12:4dcb) call Function32f9 ld hl, UnknownText_0x48e0f call PrintText - ld hl, MenuDataHeader_0x48dfc + ld hl, .MenuDataHeader call LoadMenuDataHeader call Function3200 call InterpretMenu2 @@ -38616,20 +38631,20 @@ Function48dcb: ; 48dcb (12:4dcb) ld a, [wcfa9] dec a ld [PlayerGender], a - ld c, $a + ld c, 10 call DelayFrames ret ; 48dfc (12:4dfc) -MenuDataHeader_0x48dfc: ; 0x48dfc +.MenuDataHeader: ; 0x48dfc db $40 ; flags db 04, 06 ; start coords db 09, 12 ; end coords - dw MenuData2_0x48e04 + dw .MenuData2 db 1 ; default option ; 0x48e04 -MenuData2_0x48e04: ; 0x48e04 +.MenuData2: ; 0x48e04 db $a1 ; flags db 2 ; items db "Boy@" @@ -38693,7 +38708,7 @@ GFX_48e71: ; 48e71 INCBIN "gfx/unknown/048e71.2bpp" -Function48e81: ; 48e81 +DrawKrisPackGFX: ; 48e81 ld hl, PackFGFXPointers rept 2 add hl, de @@ -38726,7 +38741,7 @@ Function4925b: ; 4925b ld b, $14 call GetSGBLayout xor a - ld [wd142], a + ld [wItemAttributeParamBuffer], a call Function492a5 ld [wd265], a ld [wd262], a @@ -39794,7 +39809,7 @@ Function49bf3: ; 49bf3 ; 49bf9 Function49bf9: ; 49bf9 - ld a, [wd0ee] + ld a, [wBattleResult] bit 6, a jr z, .asm_49c07 ld a, $1 @@ -42069,20 +42084,20 @@ Function4acaa: ; 4acaa ld a, $2 ld [wcf92], a ld a, $c - ld [wcf82], a + ld [wMenuBorderTopCoord], a jr .asm_4accc .asm_4acc2 ld a, $4 ld [wcf92], a ld a, $8 - ld [wcf82], a + ld [wMenuBorderTopCoord], a .asm_4accc ld a, $b - ld [wcf83], a + ld [wMenuBorderLeftCoord], a ld a, $1 - ld [wcf88], a + ld [wPocketPointerLocationBuffer], a call Function1c10 ld hl, wcfa5 set 6, [hl] @@ -42290,14 +42305,14 @@ Function4ae1f: ; 4ae1f call CopyMenuDataHeader pop bc ld a, b - ld [wcf83], a + ld [wMenuBorderLeftCoord], a add $5 - ld [wcf85], a + ld [wMenuBorderRightCoord], a ld a, c - ld [wcf82], a + ld [wMenuBorderTopCoord], a add $4 - ld [wcf84], a - call Function1c00 + ld [wMenuBorderBottomCoord], a + call BackUpTiles call InterpretMenu2 push af ld c, $f @@ -42541,13 +42556,13 @@ Function4cf80: ; 4cf80 (13:4f80) ld a, [hBGMapAddress + 1] ld h, a ld l, 0 - ld a, 18 + ld a, SCREEN_HEIGHT ld [$ffd3], a ld b, 1 << 1 ld c, rSTAT % $100 .loop -rept 20 / 2 +rept SCREEN_WIDTH / 2 pop de .loop\@ ld a, [$ff00+c] @@ -42559,7 +42574,7 @@ rept 20 / 2 inc l endr - ld de, 32 - 20 + ld de, $20 - SCREEN_WIDTH add hl, de ld a, [$ffd3] dec a @@ -42689,13 +42704,13 @@ Function4d1cb: ; 4d1cb ld a, [hBGMapAddress + 1] ld h, a ld l, 0 - ld a, 18 + ld a, SCREEN_HEIGHT ld [$ffd3], a ld b, 1 << 1 ; not in v/hblank ld c, rSTAT % $100 .loop -rept 20 / 2 +rept SCREEN_WIDTH / 2 pop de .loop\@ ld a, [$ff00+c] @@ -42707,7 +42722,7 @@ rept 20 / 2 inc l endr - ld de, 32 - 20 + ld de, $20 - SCREEN_WIDTH add hl, de ld a, [$ffd3] dec a @@ -43396,7 +43411,7 @@ endr ld a, [ScriptVar] and a ret z ; found nothing - callba Function1060cd + callba MobileFn_1060cd ld a, [wFoundMatchingIDInParty] and a push af @@ -45905,7 +45920,7 @@ INCLUDE "event/poke_seer.asm" SECTION "bank14", ROMX, BANK[$14] SelectMonFromParty: ; 50000 - call Function2ed3 + call DisableSpriteUpdates xor a ld [PartyMenuActionText], a call WhiteBGMap @@ -45922,7 +45937,7 @@ SelectMonFromParty: ; 50000 Function5001d: ; 5001d ld a, b ld [PartyMenuActionText], a - call Function2ed3 + call DisableSpriteUpdates call WhiteBGMap call Function5003f call WaitBGMap @@ -46847,7 +46862,7 @@ endr ret ; 505da -Function505da:: ; 505da +DoPoisonStep:: ; 505da ld a, [PartyCount] and a jr z, .asm_5062c @@ -50037,12 +50052,12 @@ INCLUDE "engine/engine_flags.asm" _GetVarAction:: ; 80648 (20:4648) ld a, c cp NUM_VARS - jr c, .asm_8064e + jr c, .valid xor a -.asm_8064e +.valid ld c, a ld b, 0 - ld hl, VarActionTable + ld hl, .VarActionTable rept 3 add hl, bc endr @@ -50052,104 +50067,105 @@ endr inc hl ld b, [hl] ld a, b - and $80 - jr nz, .asm_80668 + and RETVAR_EXECUTE + jr nz, .call ld a, b - and $40 + and RETVAR_ADDR_DE ret nz ld a, [de] - jr Function8066c -.asm_80668 + jr .loadstringbuffer2 + +.call call _de_ ret -Function8066c: ; 8066c (20:466c) +.loadstringbuffer2: ; 8066c (20:466c) ld de, StringBuffer2 ld [de], a ret ; 80671 (20:4671) -VarActionTable: ; 80671 -; $00: return address -; $40: return at StringBuffer2 -; $80: return function result at StringBuffer2 - dwb StringBuffer2, $00 - dwb PartyCount, $00 - dwb Function80728, $80 - dwb BattleType, $40 - dwb TimeOfDay, $00 - dwb Function806c5, $80 - dwb Function806d3, $80 - dwb CountBadges, $80 - dwb PlayerState, $40 - dwb Function806ef, $80 - dwb hHours, $00 - dwb Function806f9, $80 - dwb MapGroup, $00 - dwb MapNumber, $00 - dwb Function806ff, $80 - dwb wPermission, $00 - dwb Function80715, $80 - dwb wd46c, $00 - dwb XCoord, $00 - dwb YCoord, $00 - dwb wSpecialPhoneCallID, $00 - dwb wcf64, $00 - dwb wdca4, $00 - dwb wCurrentCaller, $40 - dwb wdc4b, $40 - dwb wdc4a, $40 - dwb wdc58, $00 - dwb NULL, $00 +.VarActionTable: ; 80671 +; $00: copy [de] to StringBuffer2 +; $40: return address in de +; $80: call function + dwb StringBuffer2, RETVAR_STRBUF2 + dwb PartyCount, RETVAR_STRBUF2 + dwb .BattleResult, RETVAR_EXECUTE + dwb BattleType, RETVAR_ADDR_DE + dwb TimeOfDay, RETVAR_STRBUF2 + dwb .CountCaughtMons, RETVAR_EXECUTE + dwb .CountSeenMons, RETVAR_EXECUTE + dwb .CountBadges, RETVAR_EXECUTE + dwb PlayerState, RETVAR_ADDR_DE + dwb .PlayerFacing, RETVAR_EXECUTE + dwb hHours, RETVAR_STRBUF2 + dwb .DayOfWeek, RETVAR_EXECUTE + dwb MapGroup, RETVAR_STRBUF2 + dwb MapNumber, RETVAR_STRBUF2 + dwb .UnownCaught, RETVAR_EXECUTE + dwb wPermission, RETVAR_STRBUF2 + dwb .BoxFreeSpace, RETVAR_EXECUTE + dwb wBugContestMinsRemaining, RETVAR_STRBUF2 + dwb XCoord, RETVAR_STRBUF2 + dwb YCoord, RETVAR_STRBUF2 + dwb wSpecialPhoneCallID, RETVAR_STRBUF2 + dwb wcf64, RETVAR_STRBUF2 + dwb wKurtApricornQuantity, RETVAR_STRBUF2 + dwb wCurrentCaller, RETVAR_ADDR_DE + dwb wBlueCardBalance, RETVAR_ADDR_DE + dwb wBuenasPassword, RETVAR_ADDR_DE + dwb wdc58, RETVAR_STRBUF2 + dwb NULL, RETVAR_STRBUF2 ; 806c5 -Function806c5: ; 806c5 +.CountCaughtMons: ; 806c5 ; Caught mons. ld hl, PokedexCaught ld b, EndPokedexCaught - PokedexCaught call CountSetBits ld a, [wd265] - jp Function8066c + jp .loadstringbuffer2 ; 806d3 -Function806d3: ; 806d3 +.CountSeenMons: ; 806d3 ; Seen mons. ld hl, PokedexSeen ld b, EndPokedexSeen - PokedexSeen call CountSetBits ld a, [wd265] - jp Function8066c + jp .loadstringbuffer2 ; 806e1 -CountBadges: ; 806e1 +.CountBadges: ; 806e1 ; Number of owned badges. ld hl, Badges ld b, 2 call CountSetBits ld a, [wd265] - jp Function8066c + jp .loadstringbuffer2 ; 806ef -Function806ef: ; 806ef +.PlayerFacing: ; 806ef ; The direction the player is facing. ld a, [PlayerDirection] and $c rrca rrca - jp Function8066c + jp .loadstringbuffer2 ; 806f9 -Function806f9: ; 806f9 +.DayOfWeek: ; 806f9 ; The day of the week. call GetWeekday - jp Function8066c + jp .loadstringbuffer2 ; 806ff -Function806ff: ; 806ff +.UnownCaught: ; 806ff ; Number of unique Unown caught. call .count ld a, b - jp Function8066c + jp .loadstringbuffer2 .count ld hl, UnownDex @@ -50165,7 +50181,7 @@ Function806ff: ; 806ff ret ; 80715 -Function80715: ; 80715 +.BoxFreeSpace: ; 80715 ; Remaining slots in the current box. ld a, BANK(sBoxCount) call GetSRAMBank @@ -50175,13 +50191,13 @@ Function80715: ; 80715 ld b, a call CloseSRAM ld a, b - jp Function8066c + jp .loadstringbuffer2 ; 80728 -Function80728: ; 80728 - ld a, [wd0ee] +.BattleResult: ; 80728 + ld a, [wBattleResult] and $3f - jp Function8066c + jp .loadstringbuffer2 ; 80730 @@ -53211,7 +53227,7 @@ HallOfFame:: ; 0x8640e push af ld a, 1 ld [wc2cd], a - call Function2ed3 + call DisableSpriteUpdates ld a, SPAWN_LANCE ld [wSpawnAfterChampion], a @@ -53254,7 +53270,7 @@ RedCredits:: ; 86455 callba Function4e8c2 ld c, $8 call DelayFrames - call Function2ed3 + call DisableSpriteUpdates ld a, SPAWN_RED ld [wSpawnAfterChampion], a ld a, [StatusFlags] @@ -58518,876 +58534,7 @@ INCLUDE "menu/mon_icons.asm" SECTION "bank24", ROMX, BANK[$24] -AddPhoneNumber:: ; 90000 - call _CheckCellNum - jr c, .asm_9000d - call Function9002d - jr nc, .asm_9000d - ld [hl], c - xor a - ret - -.asm_9000d - scf - ret -; 9000f - - -DelCellNum:: ; 9000f - call _CheckCellNum - jr nc, .asm_90017 - xor a - ld [hl], a - ret - -.asm_90017 - scf - ret -; 90019 - -CheckCellNum:: ; 90019 - jp _CheckCellNum -; 9001c - -_CheckCellNum: ; 9001c - ld hl, wdc7c - ld b, $a -.asm_90021 - ld a, [hli] - cp c - jr z, .asm_9002a - dec b - jr nz, .asm_90021 - xor a - ret - -.asm_9002a - dec hl - scf - ret -; 9002d - -Function9002d: ; 9002d - call Function90040 - ld b, a - ld hl, wdc7c -.asm_90034 - ld a, [hli] - and a - jr z, .asm_9003d - dec b - jr nz, .asm_90034 - xor a - ret - -.asm_9003d - dec hl - scf - ret -; 90040 - -Function90040: ; 90040 - xor a - ld [Buffer1], a - ld hl, Unknown_90066 -.asm_90047 - ld a, [hli] - cp $ff - jr z, .asm_9005f - cp c - jr z, .asm_9005d - push bc - push hl - ld c, a - call _CheckCellNum - jr c, .asm_9005b - ld hl, Buffer1 - inc [hl] - -.asm_9005b - pop hl - pop bc - -.asm_9005d - jr .asm_90047 - -.asm_9005f - ld a, $a - ld hl, Buffer1 - sub [hl] - ret -; 90066 - -Unknown_90066: ; 90066 - db 1, 4, $ff -; 90069 - - -Function90069: ; 90069 - ld a, [hROMBank] - push af - ld a, b - rst Bankswitch - - call PlaceString - - pop af - rst Bankswitch - ret -; 90074 - - -CheckPhoneCall:: ; 90074 (24:4074) -; Check if the phone is ringing in the overworld. - - call CheckStandingOnEntrance - jr z, .no_call - - call Function900a6 - nop - jr nc, .no_call - - call Random - ld b, a - and $7f - cp b - jr nz, .no_call - - call GetMapHeaderPhoneServiceNybble - and a - jr nz, .no_call - - call Function900de - call Function900bf - jr nc, .no_call - - ld e, a - call LoadCallerScript - ld a, BANK(Script_SpecialPhoneCall) - ld hl, Script_SpecialPhoneCall - call CallScript - scf - ret - -.no_call - xor a - ret - -Function900a6: ; 900a6 (24:40a6) - callba Function11401 - ret - -Function900ad: ; 900ad (24:40ad) - push hl - push bc - push de - push af - callba CheckTime - pop af - and $7 - and c - pop de - pop bc - pop hl - ret - -Function900bf: ; 900bf (24:40bf) - ld a, [wd040] - and a - jr z, .asm_900dc - ld c, a - call Random - ld a, [hRandomAdd] ; $ff00+$e1 - swap a - and $1f - call SimpleDivide - ld c, a - ld b, $0 - ld hl, wd041 - add hl, bc - ld a, [hl] - scf - ret -.asm_900dc - xor a - ret - -Function900de: ; 900de (24:40de) - callba CheckTime - ld a, c - ld [EngineBuffer1], a ; wd03e (aliases: MenuItemsList, CurFruitTree, CurInput) - ld hl, wd040 - ld bc, $b - xor a - call ByteFill - ld de, wdc7c - ld a, $a -.asm_900f7 - ld [wd03f], a - ld a, [de] - and a - jr z, .asm_9012e - ld hl, PhoneContacts + 8 - ld bc, 12 - call AddNTimes - ld a, [EngineBuffer1] ; wd03e (aliases: MenuItemsList, CurFruitTree, CurInput) - and [hl] - jr z, .asm_9012e - ld bc, $fffa - add hl, bc - ld a, [MapGroup] - cp [hl] - jr nz, .asm_9011e - inc hl - ld a, [MapNumber] - cp [hl] - jr z, .asm_9012e -.asm_9011e - ld a, [wd040] - ld c, a - ld b, $0 - inc a - ld [wd040], a - ld hl, wd041 - add hl, bc - ld a, [de] - ld [hl], a -.asm_9012e - inc de - ld a, [wd03f] - dec a - jr nz, .asm_900f7 - ret - -Function90136:: ; 90136 (24:4136) - ld a, [wSpecialPhoneCallID] - and a - jr z, .NoPhoneCall - - dec a - ld c, a - ld b, 0 - ld hl, SpecialPhoneCallList - ld a, 6 - call AddNTimes - ld a, [hli] - ld h, [hl] - ld l, a - call _hl_ - jr nc, .NoPhoneCall - - call .DoSpecialPhoneCall -rept 2 - inc hl -endr - ld a, [hli] - ld e, a - push hl - call LoadCallerScript - pop hl - ld de, wd048 - ld a, [hli] - ld [de], a - inc de - ld a, [hli] - ld [de], a - inc de - ld a, [hli] - ld [de], a - ld a, BANK(.script) - ld hl, .script - call CallScript - scf - ret -.NoPhoneCall - xor a - ret -; 90173 (24:4173) - -.script: ; 0x90173 - pause 30 - jump Script_SpecialPhoneCall -; 0x90178 - -.DoSpecialPhoneCall: ; 90178 (24:4178) - ld a, [wSpecialPhoneCallID] - dec a - ld c, a - ld b, 0 - ld hl, SpecialPhoneCallList - ld a, 6 - call AddNTimes - ret - -SpecialCallOnlyWhenOutside: ; 90188 - ld a, [wPermission] - cp TOWN - jr z, .outside - cp ROUTE - jr z, .outside - xor a - ret - -.outside - scf - ret - -SpecialCallWhereverYouAre: ; 90197 - scf - ret - -Function90199: ; 90199 (24:4199) - ld a, [wLinkMode] - and a - jr nz, .asm_901e7 - call GetMapHeaderPhoneServiceNybble - and a - jr nz, .asm_901e7 - ld a, b - ld [wCurrentCaller], a - ld hl, PhoneContacts - ld bc, 12 - call AddNTimes - ld d, h - ld e, l - ld hl, 4 - add hl, de - ld a, [hl] - call Function900ad - jr z, .asm_901e7 - ld hl, 2 - add hl, de - ld a, [MapGroup] - cp [hl] - jr nz, .asm_901d9 - ld hl, $3 - add hl, de - ld a, [MapNumber] - cp [hl] - jr nz, .asm_901d9 - ld b, BANK(UnknownScript_0x90660) - ld hl, UnknownScript_0x90660 - jr .asm_901f0 - -.asm_901d9 - ld hl, $5 - add hl, de - ld b, [hl] - ld hl, $6 - add hl, de - ld a, [hli] - ld h, [hl] - ld l, a - jr .asm_901f0 - -.asm_901e7 - ld b, BANK(UnknownScript_0x90209) - ld de, UnknownScript_0x90209 - call ExecuteCallbackScript - ret - -.asm_901f0 - ld a, b - ld [wd002], a - ld a, l - ld [wd003], a - ld a, h - ld [wd004], a - ld b, BANK(UnknownScript_0x90205) - ld de, UnknownScript_0x90205 - call ExecuteCallbackScript - ret -; 90205 (24:4205) - -UnknownScript_0x90205: ; 0x90205 - ptcall wd002 - return -; 0x90209 - -UnknownScript_0x90209: ; 0x90209 - scall UnknownScript_0x90657 - return -; 0x9020d - -LoadCallerScript: ; 9020d (24:420d) - nop - nop - ld a, e - ld [wCurrentCaller], a - and a - jr nz, .actualcaller - ld a, BANK(WrongNumber) - ld hl, WrongNumber - jr .proceed - -.actualcaller - ld hl, PhoneContacts - ld bc, 12 - ld a, e - call AddNTimes - ld a, BANK(PhoneContacts) -.proceed - ld de, wd03f - ld bc, 12 - call FarCopyBytes - ret -; 90233 (24:4233) - -WrongNumber: ; 90233 - db PHONE, PHONE_00 - dba .script -.script: - writetext .text - end -.text: - ; Huh? Sorry, wrong number! - text_jump UnknownText_0x1c5565 - db "@" -; 90241 - -Script_SpecialPhoneCall: ; 0x90241 - refreshscreen $0 - callasm Function9026f - ptcall wd048 - closetext - callasm HangUp - loadmovesprites - callasm Function113e5 - end -; 0x90255 - -Script_SpecialBillCall:: ; 0x90255 - callasm Function9025c - jump Script_SpecialPhoneCall -; 0x9025c - -Function9025c: ; 9025c - ld e, PHONE_BILL - jp LoadCallerScript -; 90261 - -UnknownScript_0x90261: ; 0x90261 - callasm Function9026a - pause 30 - jump Script_SpecialPhoneCall -; 0x9026a - -Function9026a: ; 9026a - ld e, PHONE_ELM - jp LoadCallerScript -; 9026f - -Function9026f: ; 9026f - call Function9027c - call Function9027c - callba Function1060d3 - ret -; 9027c - -Function9027c: ; 9027c (24:427c) - call Phone_StartRinging - call Phone_Wait20Frames - call Phone_CallerTextboxWithName - call Phone_Wait20Frames - call Phone_CallerTextbox - call Phone_Wait20Frames - call Phone_CallerTextboxWithName - ret - -Phone_CallerTextboxWithName: ; 90292 (24:4292) - ld a, [wCurrentCaller] - ld b, a - call Function90363 - ret - - -PhoneCall:: ; 9029a - ld a, b - ld [PhoneScriptBank], a - ld a, e - ld [PhoneCallerLo], a - ld a, d - ld [PhoneCallerHi], a - call Phone_FirstOfTwoRings - call Phone_FirstOfTwoRings - callba Function1060d3 - ret -; 902b3 - -Phone_FirstOfTwoRings: ; 902b3 - call Phone_StartRinging - call Phone_Wait20Frames - call Phone_CallerTextboxWithName2 - call Phone_Wait20Frames - call Phone_CallerTextbox - call Phone_Wait20Frames - call Phone_CallerTextboxWithName2 - ret -; 902c9 - -Phone_CallerTextboxWithName2: ; 902c9 - call Phone_CallerTextbox - hlcoord 1, 2 - ld [hl], $62 -rept 2 - inc hl -endr - ld a, [PhoneScriptBank] - ld b, a - ld a, [PhoneCallerLo] - ld e, a - ld a, [PhoneCallerHi] - ld d, a - call Function90069 - ret -; 902e3 - - -Phone_NoSignal: ; 902e3 (24:42e3) - ld de, SFX_NO_SIGNAL - call PlaySFX - jr Phone_CallEnd - -HangUp:: ; 902eb - call HangUp_Beep - call HangUp_Wait20Frames -Phone_CallEnd: - call HangUp_BoopOn - call HangUp_Wait20Frames - call HangUp_BoopOff - call HangUp_Wait20Frames - call HangUp_BoopOn - call HangUp_Wait20Frames - call HangUp_BoopOff - call HangUp_Wait20Frames - call HangUp_BoopOn - call HangUp_Wait20Frames - call HangUp_BoopOff - call HangUp_Wait20Frames - ret -; 90316 - -Function90316: ; 90316 - ld de, SFX_SHUT_DOWN_PC - call PlaySFX - ret -; 9031d - -HangUp_Beep: ; 9031d - ld hl, UnknownText_0x9032a - call PrintText - ld de, SFX_HANG_UP - call PlaySFX - ret -; 9032a - -UnknownText_0x9032a: ; 9032a - text_jump UnknownText_0x1c5580 - db "@" -; 9032f - - -HangUp_BoopOn: ; 9032f - ld hl, UnknownText_0x90336 - call PrintText - ret -; 90336 - -UnknownText_0x90336: ; 0x90336 - text_jump UnknownText_0x1c5588 - db "@" -; 0x9033b - - -HangUp_BoopOff: ; 9033b - call SpeechTextBox - ret -; 9033f - -Phone_StartRinging: ; 9033f - call WaitSFX - ld de, SFX_CALL - call PlaySFX - call Phone_CallerTextbox - call UpdateSprites - callba Function4d188 - ret -; 90355 - -HangUp_Wait20Frames: ; 90355 - jr Phone_Wait20Frames - -Phone_Wait20Frames - ld c, 20 - call DelayFrames - callba Function4d188 - ret -; 90363 - - -Function90363: ; 90363 (24:4363) - push bc - call Phone_CallerTextbox - hlcoord 1, 1 - ld [hl], $62 -rept 2 - inc hl -endr - ld d, h - ld e, l - pop bc - call Function90380 - ret - - -Phone_CallerTextbox: ; 90375 - hlcoord 0, 0 - ld b, 2 - ld c, SCREEN_WIDTH - 2 - call TextBox - ret -; 90380 - - -Function90380: ; 90380 (24:4380) - ld h, d - ld l, e - ld a, b - call GetCallerTrainerClass - call GetCallerName - ret - -Function9038a: ; 9038a (24:438a) - ld a, c - call GetCallerTrainerClass - ld a, c - ret nz - ld a, b - cp $1 - ret z - cp $4 - ret z - ld c, $1 - ret - -GetCallerTrainerClass: ; 9039a - push hl - ld hl, PhoneContacts + 0 ; PHONE_CONTACT_TRAINER_CLASS - ld bc, 12 ; PHONE_TABLE_WIDTH - call AddNTimes - ld a, [hli] - ld b, [hl] - ld c, a - pop hl - ret -; 903a9 - - -GetCallerName: ; 903a9 (24:43a9) - ld a, c - and a - jr z, .NotTrainer - - call Phone_GetTrainerName - push hl - push bc - call PlaceString - ld a, ":" - ld [bc], a - pop bc - pop hl - ld de, SCREEN_WIDTH + 3 - add hl, de - call Phone_GetTrainerClassName - call PlaceString - ret - -.NotTrainer - push hl - ld c, b - ld b, 0 - ld hl, NonTrainerCallerNames -rept 2 - add hl, bc -endr - ld a, [hli] - ld e, a - ld d, [hl] - pop hl - call PlaceString - ret -; 903d6 (24:43d6) - -NonTrainerCallerNames: ; 903d6 - dw .none - dw .mom - dw .bikeshop - dw .bill - dw .elm - dw .buena - -.none: db "----------@" -.mom: db "MOM:@" -.bill: db "BILL:@" -.elm: db "PROF.ELM:@" -.bikeshop: db "BIKE SHOP:@" -.buena: db "BUENA:", $22, " DISC JOCKEY@" -; 90423 - -Phone_GetTrainerName: ; 90423 (24:4423) - push hl - push bc - callba GetTrainerName - pop bc - pop hl - ret - -Phone_GetTrainerClassName: ; 9042e (24:442e) - push hl - push bc - callba GetTrainerClassName - pop bc - pop hl - ret - -GetCallerLocation: ; 90439 - ld a, [wCurrentCaller] - call GetCallerTrainerClass - ld d, c - ld e, b - push de - ld a, [wCurrentCaller] - ld hl, PhoneContacts + 2 ; PHONE_CONTACT_MAP_GROUP - ld bc, 12 ; PHONE_TABLE_WIDTH - call AddNTimes - ld b, [hl] - inc hl - ld c, [hl] - push bc - call GetWorldMapLocation - ld e, a - callba GetLandmarkName - pop bc - pop de - ret -; 9045f - -PhoneContacts: ; 9045f -phone: MACRO - db \1, \2 ; trainer - map \3 ; map - db \4 - dba \5 ; script 1 - db \6 - dba \7 ; script 2 -ENDM - - phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone PHONE, MOM_PHONE, KRISS_HOUSE_1F, 7, MomPhoneScript, 0, UnusedPhoneScript - phone PHONE, OAK_PHONE, OAKS_LAB, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone PHONE, BILL_PHONE, N_A, 7, BillPhoneScript1, 0, BillPhoneScript2 - phone PHONE, ELM_PHONE, ELMS_LAB, 7, ElmPhoneScript1, 0, ElmPhoneScript2 - phone SCHOOLBOY, JACK1, NATIONAL_PARK, 7, JackPhoneScript1, 7, JackPhoneScript2 - phone POKEFANF, BEVERLY1, NATIONAL_PARK, 7, BeverlyPhoneScript1, 7, BeverlyPhoneScript2 - phone SAILOR, HUEY1, OLIVINE_LIGHTHOUSE_2F, 7, HueyPhoneScript1, 7, HueyPhoneScript2 - phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone COOLTRAINERM, GAVEN3, ROUTE_26, 7, GavenPhoneScript1, 7, GavenPhoneScript2 - phone COOLTRAINERF, BETH1, ROUTE_26, 7, BethPhoneScript1, 7, BethPhoneScript2 - phone BIRD_KEEPER, JOSE2, ROUTE_27, 7, JosePhoneScript1, 7, JosePhoneScript2 - phone COOLTRAINERF, REENA1, ROUTE_27, 7, ReenaPhoneScript1, 7, ReenaPhoneScript2 - phone YOUNGSTER, JOEY1, ROUTE_30, 7, JoeyPhoneScript1, 7, JoeyPhoneScript2 - phone BUG_CATCHER, WADE1, ROUTE_31, 7, WadePhoneScript1, 7, WadePhoneScript2 - phone FISHER, RALPH1, ROUTE_32, 7, RalphPhoneScript1, 7, RalphPhoneScript2 - phone PICNICKER, LIZ1, ROUTE_32, 7, LizPhoneScript1, 7, LizPhoneScript2 - phone HIKER, ANTHONY2, ROUTE_33, 7, AnthonyPhoneScript1, 7, AnthonyPhoneScript2 - phone CAMPER, TODD1, ROUTE_34, 7, ToddPhoneScript1, 7, ToddPhoneScript2 - phone PICNICKER, GINA1, ROUTE_34, 7, GinaPhoneScript1, 7, GinaPhoneScript2 - phone JUGGLER, IRWIN1, ROUTE_35, 7, IrwinPhoneScript1, 7, IrwinPhoneScript2 - phone BUG_CATCHER, ARNIE1, ROUTE_35, 7, ArniePhoneScript1, 7, ArniePhoneScript2 - phone SCHOOLBOY, ALAN1, ROUTE_36, 7, AlanPhoneScript1, 7, AlanPhoneScript2 - phone PHONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript - phone LASS, DANA1, ROUTE_38, 7, DanaPhoneScript1, 7, DanaPhoneScript2 - phone SCHOOLBOY, CHAD1, ROUTE_38, 7, ChadPhoneScript1, 7, ChadPhoneScript2 - phone POKEFANM, DEREK1, ROUTE_39, 7, DerekPhoneScript1, 7, DerekPhoneScript2 - phone FISHER, TULLY1, ROUTE_42, 7, TullyPhoneScript1, 7, TullyPhoneScript2 - phone POKEMANIAC, BRENT1, ROUTE_43, 7, BrentPhoneScript1, 7, BrentPhoneScript2 - phone PICNICKER, TIFFANY3, ROUTE_43, 7, TiffanyPhoneScript1, 7, TiffanyPhoneScript2 - phone BIRD_KEEPER, VANCE1, ROUTE_44, 7, VancePhoneScript1, 7, VancePhoneScript2 - phone FISHER, WILTON1, ROUTE_44, 7, WiltonPhoneScript1, 7, WiltonPhoneScript2 - phone BLACKBELT_T, KENJI3, ROUTE_45, 7, KenjiPhoneScript1, 7, KenjiPhoneScript2 - phone HIKER, PARRY1, ROUTE_45, 7, ParryPhoneScript1, 7, ParryPhoneScript2 - phone PICNICKER, ERIN1, ROUTE_46, 7, ErinPhoneScript1, 7, ErinPhoneScript2 - phone PHONE, BUENA_PHONE, GOLDENROD_DEPT_STORE_ROOF, 7, BuenaPhoneScript1, 7, BuenaPhoneScript2 -; 90627 - -SpecialPhoneCallList: ; 90627 - dw SpecialCallOnlyWhenOutside - db PHONE_ELM - dba ElmPhoneScript2 - - dw SpecialCallOnlyWhenOutside - db PHONE_ELM - dba ElmPhoneScript2 - - dw SpecialCallOnlyWhenOutside - db PHONE_ELM - dba ElmPhoneScript2 - - dw SpecialCallOnlyWhenOutside - db PHONE_ELM - dba ElmPhoneScript2 - - dw SpecialCallWhereverYouAre - db PHONE_ELM - dba ElmPhoneScript2 - - dw SpecialCallWhereverYouAre - db PHONE_OAK ; ???????? - dba BikeShopPhoneScript ; bike shop - - dw SpecialCallWhereverYouAre - db PHONE_MOM - dba MomPhoneLectureScript - - dw SpecialCallOnlyWhenOutside - db PHONE_ELM - dba ElmPhoneScript2 -; 90657 - -UnknownScript_0x90657: ; 0x90657 - writetext UnknownText_0x9065b - end -; 0x9065b - -UnknownText_0x9065b: ; 0x9065b - ; That number is out of the area. - text_jump UnknownText_0x1c558b - db "@" -; 0x90660 - -UnknownScript_0x90660: ; 0x90660 - writetext UnknownText_0x90664 - end -; 0x90664 - -UnknownText_0x90664: ; 0x90664 - ; Just go talk to that person! - text_jump UnknownText_0x1c55ac - db "@" -; 0x90669 - -UnknownScript_0x90669: ; 0x90669 - writetext UnknownText_0x9066d - end -; 0x9066d - -UnknownText_0x9066d: ; 0x9066d - ; Thank you! - text_jump UnknownText_0x1c55ca - db "@" -; 0x90672 +INCLUDE "engine/phone.asm" InitClock: ; 90672 (24:4672) ; Ask the player to set the time. @@ -61038,7 +60185,7 @@ Function91171: ; 91171 (24:5171) ret .a - ld hl, wdc7c + ld hl, wPhoneList ld a, [wc6d2] ld e, a ld d, 0 @@ -61225,7 +60372,7 @@ endr ld a, [wc6d2] ld e, a ld d, $0 - ld hl, wdc7c + ld hl, wPhoneList add hl, de xor a ld [wc6d0], a @@ -61253,7 +60400,7 @@ endr ; 9131e (24:531e) Function9131e: ; 9131e - ld hl, wdc7c + ld hl, wPhoneList ld a, [wc6d2] ld e, a ld d, 0 @@ -61263,7 +60410,7 @@ Function9131e: ; 9131e ld d, 0 add hl, de ld [hl], 0 - ld hl, wdc7c + ld hl, wPhoneList ld c, $a .asm_91336 ld a, [hli] @@ -61279,7 +60426,7 @@ Function9131e: ; 9131e ; 91342 Function91342: ; 91342 (24:5342) - ld hl, wdc7c + ld hl, wPhoneList ld a, [wc6d2] ld e, a ld d, 0 @@ -62928,7 +62075,7 @@ _SlotMachine: call PlaySFX call WaitSFX call WhiteBGMap - callba Function105fd0 + callba MobileFn_105fd0 ld hl, Options res 4, [hl] ld hl, rLCDC ; $ff40 @@ -64674,7 +63821,7 @@ Function93124: ; 93124 (24:7124) ld a, [hl] ld [wc711], a ld d, a - callba Function105fe3 + callba MobileFn_105fe3 ret .data_93145 @@ -64698,7 +63845,7 @@ Function93158: ; 93158 (24:7158) jr nz, .asm_9316c ld hl, UnknownText_0x931e0 call PrintText - callba Function105fd0 + callba MobileFn_105fd0 ret .asm_9316c srl a @@ -64720,7 +63867,7 @@ endr .asm_93188 ld hl, UnknownText_0x931b9 call PrintText - callba Function105f9f + callba MobileFn_105f9f ret ; 93195 (24:7195) @@ -65416,7 +64563,7 @@ CheckForSignpostItems: ; b8172 TreeMonEncounter: ; b81ea - callba Function1060ef + callba MobileFn_1060ef xor a ld [TempWildMonSpecies], a @@ -72104,7 +71251,7 @@ Functione2e01: ; e2e01 (38:6e01) .asm_e2e0b ld hl, Unknown_e2e2b ld de, Sprites -.asm_e2e11 +.done1 ld a, [hl] cp $ff ret z @@ -72124,7 +71271,7 @@ Functione2e01: ; e2e01 (38:6e01) ld a, [hli] ld [de], a inc de - jr .asm_e2e11 + jr .done1 ; e2e2b (38:6e2b) Unknown_e2e2b: ; e2e2b @@ -77444,7 +76591,7 @@ NPCTrade:: ; fcba8 ; fcc07 Functionfcc07: ; fcc07 - call Function2ed3 + call DisableSpriteUpdates ld a, [wJumptableEntryIndexBuffer] push af ld a, [wcf64] @@ -77991,7 +77138,7 @@ TradeAfterText3: ; 0xfcfe7 MomTriesToBuySomething:: ; fcfec - ld a, [wd45c] + ld a, [wMapReentryScriptQueueFlag] and a ret nz call GetMapHeaderPhoneServiceNybble @@ -78005,14 +77152,14 @@ MomTriesToBuySomething:: ; fcfec ret nc ld b, BANK(UnknownScript_0xfd00f) ld de, UnknownScript_0xfd00f - callba Function97c4f + callba LoadScriptBDE scf ret ; fd00f UnknownScript_0xfd00f: ; 0xfd00f callasm Functionfd017 - farjump Script_SpecialPhoneCall + farjump Script_ReceivePhoneCall ; 0xfd017 Functionfd017: ; fd017 @@ -79198,23 +78345,23 @@ RefreshMapSprites: ; 1047f0 call Function2914 callba Function579d callba Function154f7 - ld hl, wd45b + ld hl, wPlayerSpriteSetupFlags bit 6, [hl] jr nz, .asm_104817 ld hl, VramState set 0, [hl] call Function2e31 .asm_104817 - ld a, [wd45b] + ld a, [wPlayerSpriteSetupFlags] and $1c - ld [wd45b], a + ld [wPlayerSpriteSetupFlags], a ret CheckMovingOffEdgeOfMap:: ; 104820 (41:4820) ld a, [wd151] cp STANDING ret z - and a + and a ; DOWN jr z, .down cp UP jr z, .up @@ -79374,7 +78521,7 @@ DoMysteryGift: ; 1048ba (41:48ba) jr z, .asm_104963 call Function104a71 callba Function10619d - callba Function1060a9 + callba MobileFn_1060a9 callba Function106187 .asm_104963 ld a, [wc90f] @@ -79397,7 +78544,7 @@ DoMysteryGift: ; 1048ba (41:48ba) jr Function1049c5 .item - call Function105106 + call GetMysteryGiftBank ld a, [wc910] ld c, a callba MysteryGiftGetItem @@ -79481,13 +78628,13 @@ UnknownText_0x104a20: ; 104a20 ; 104a25 Function104a25: ; 104a25 (41:4a25) - call Function105106 + call GetMysteryGiftBank ld a, [s0_abe5] cp $5 jp CloseSRAM Function104a30: ; 104a30 (41:4a30) - call Function105106 + call GetMysteryGiftBank ld a, [wc901] ld b, a ld a, [wc902] @@ -79515,11 +78662,11 @@ Function104a30: ; 104a30 (41:4a30) jp CloseSRAM Function104a56: ; 104a56 (41:4a56) - call Function105106 + call GetMysteryGiftBank ld hl, s0_abe5 ld a, [hl] inc [hl] - ld hl, s0_abe6 + ld hl, s0_abe6 ; inc hl ld e, a ld d, $0 rept 2 @@ -79532,7 +78679,7 @@ endr jp CloseSRAM Function104a71: ; 104a71 (41:4a71) - call Function105106 + call GetMysteryGiftBank ld a, $1 ld [sMysteryGiftTrainerHouseFlag], a ld hl, wc903 @@ -80399,7 +79546,7 @@ endr ret Function105069: ; 105069 (41:5069) - call Function105106 + call GetMysteryGiftBank ld d, $0 ld b, $2 ld hl, s0_abf0 @@ -80413,7 +79560,7 @@ Function105069: ; 105069 (41:5069) pop bc pop hl ret nz - call Function105106 + call GetMysteryGiftBank ld b, $1 predef FlagPredef call CloseSRAM @@ -80421,7 +79568,7 @@ Function105069: ; 105069 (41:5069) ret Function105091: ; 105091 (41:5091) - call Function105106 + call GetMysteryGiftBank ld c, $0 .asm_105096 push bc @@ -80444,7 +79591,7 @@ Function105091: ; 105091 (41:5091) jp CloseSRAM Special_UnlockMysteryGift: ; 1050b9 - call Function105106 + call GetMysteryGiftBank ld hl, s0_abe3 ld a, [hl] inc a @@ -80456,19 +79603,19 @@ Special_UnlockMysteryGift: ; 1050b9 ; 1050c8 Function1050c8: ; 1050c8 - call Function105106 + call GetMysteryGiftBank ld a, [s0_abe5] cp $ff - jr z, .asm_1050d6 + jr z, .okay xor a ld [s0_abe5], a -.asm_1050d6 +.okay jp CloseSRAM ; 1050d9 Function1050d9: ; 1050d9 - call Function105106 + call GetMysteryGiftBank ld hl, sMysteryGiftItem ld de, s0_abe4 ld a, [hli] @@ -80481,7 +79628,7 @@ Function1050d9: ; 1050d9 Function1050ea: ; 1050ea (41:50ea) - call Function105106 + call GetMysteryGiftBank ld hl, s0_abe4 ld de, sMysteryGiftItem ld a, [hli] @@ -80502,7 +79649,7 @@ Function1050fb: ; 1050fb (41:50fb) ret -Function105106: ; 105106 +GetMysteryGiftBank: ; 105106 ld a, BANK(s0_abe4) jp GetSRAMBank ; 10510b @@ -80559,14 +79706,14 @@ Function105153: ; 105153 (41:5153) ld hl, MysteryGiftGFX ld de, VTiles2 tile $00 ld a, BANK(MysteryGiftGFX) - ld bc, $430 + ld bc, Function105688 - MysteryGiftGFX call FarCopyBytes hlcoord 0, 0 ld a, $42 ld bc, SCREEN_HEIGHT * SCREEN_WIDTH call ByteFill hlcoord 3, 7 - ld bc, $90f + lb bc, 9, 15 call ClearBox hlcoord 0, 0 ld a, $0 @@ -81455,7 +80602,7 @@ MagikarpLength_Mobile: mobile ; 105f33 ret ; 105f79 -Function105f79: mobile ; 105f79 +MobileFn_105f79: mobile ; 105f79 ld a, $5 call GetSRAMBank ld a, [hProduct] @@ -81484,7 +80631,7 @@ Function105f79: mobile ; 105f79 ret ; 105f9f -Function105f9f: mobile ; 105f9f +MobileFn_105f9f: mobile ; 105f9f ld a, $5 call GetSRAMBank ld hl, $a070 @@ -81521,7 +80668,7 @@ Function105f9f: mobile ; 105f9f ret ; 105fd0 -Function105fd0: mobile ; 105fd0 +MobileFn_105fd0: mobile ; 105fd0 ld a, $5 call GetSRAMBank ld hl, $a06f @@ -81533,7 +80680,7 @@ Function105fd0: mobile ; 105fd0 ret ; 105fe3 -Function105fe3: mobile ; 105fe3 +MobileFn_105fe3: mobile ; 105fe3 ld a, $5 call GetSRAMBank ld hl, $a076 @@ -81561,7 +80708,7 @@ endr ret ; 106008 -Function106008: mobile ; 106008 +MobileFn_106008: mobile ; 106008 ld a, $5 call GetSRAMBank ld hl, $a07a @@ -81591,11 +80738,11 @@ endr ret ; 10602e -Function10602e: mobile ; 10602e (41:602e) +MobileFn_10602e: mobile ; 10602e (41:602e) ld hl, $a010 jp Function106117 -Function106035: mobile ; 106035 +MobileFn_106035: mobile ; 106035 ld a, $5 call GetSRAMBank ld a, [$aa8d] @@ -81605,29 +80752,29 @@ Function106035: mobile ; 106035 ld hl, $a014 jp Function106123 -Function106049: mobile ; 106049 +MobileFn_106049: mobile ; 106049 ld hl, $a018 jp Function10611d -Function106050: mobile ; 106050 +MobileFn_106050: mobile ; 106050 ld a, [BattleType] cp BATTLETYPE_TUTORIAL ret z ld hl, $a01b jp Function10611d -Function10605d: mobile ; 10605d +MobileFn_10605d: mobile ; 10605d ld a, [BattleType] cp BATTLETYPE_TUTORIAL ret z ld hl, $a01e jp Function10611d -Function10606a: mobile ; 10606a +MobileFn_10606a: mobile ; 10606a ld hl, $a021 jp Function10611d -Function106071: mobile ; 106071 +MobileFn_106071: mobile ; 106071 ld hl, $a024 jp Function10611d @@ -81635,23 +80782,23 @@ Mobile_HallOfFame:: mobile ; 0x106078 ld hl, $a027 jp Function10611d -Function10607f: mobile ; 10607f (41:607f) +MobileFn_10607f: mobile ; 10607f (41:607f) ld hl, $a02a jp Function10611d -Function106086: mobile ; 106086 +MobileFn_106086: mobile ; 106086 ld hl, $a02d jp Function10611d -Function10608d: mobile ; 10608d (41:608d) +MobileFn_10608d: mobile ; 10608d (41:608d) ld hl, $a030 jp Function10611d -Function106094: mobile ; 106094 +MobileFn_106094: mobile ; 106094 ld hl, $a033 jp Function10611d -Function10609b: mobile ; 10609b +MobileFn_10609b: mobile ; 10609b ld hl, $a036 jp Function10611d @@ -81659,76 +80806,76 @@ Mobile_HealParty: mobile ; 1060a2 ld hl, $a039 jp Function10611d -Function1060a9: mobile ; 1060a9 (41:60a9) +MobileFn_1060a9: mobile ; 1060a9 (41:60a9) ld hl, $a03c jr Function10611d -Function1060af: mobile ; 1060af +MobileFn_1060af: mobile ; 1060af ld hl, $a03f jr Function10611d -Function1060b5: mobile ; 1060b5 +MobileFn_1060b5: mobile ; 1060b5 ld hl, $a042 jr Function10611d -Function1060bb: mobile ; 1060bb +MobileFn_1060bb: mobile ; 1060bb ld hl, $a045 jr Function10611d -Function1060c1: mobile ; 1060c1 +MobileFn_1060c1: mobile ; 1060c1 ld hl, $a048 jr Function10611d -Function1060c7: mobile ; 1060c7 +MobileFn_1060c7: mobile ; 1060c7 ld hl, $a04b jr Function10611d -Function1060cd: mobile ; 1060cd +MobileFn_1060cd: mobile ; 1060cd ld hl, $a04e jr Function106123 -Function1060d3: mobile ; 1060d3 +MobileFn_1060d3: mobile ; 1060d3 ld hl, $a051 jr Function10611d -Function1060d9: mobile ; 1060df +MobileFn_1060d9: mobile ; 1060df ld hl, $a054 jr Function10611d -Function1060df: mobile ; 1060df +MobileFn_1060df: mobile ; 1060df ld hl, $a057 jr Function10611d -Function1060e5: mobile ; 1060e5 +MobileFn_1060e5: mobile ; 1060e5 ld a, [hBattleTurn] and a ret nz ld hl, $a05a jr Function10611d -Function1060ef: mobile ; 1060ef +MobileFn_1060ef: mobile ; 1060ef ld hl, $a05d jr Function10611d -Function1060f5: mobile ; 1060f5 +MobileFn_1060f5: mobile ; 1060f5 ld hl, $a060 jr Function10611d -Function1060fb: mobile ; 1060fb +MobileFn_1060fb: mobile ; 1060fb ld hl, $a063 jr Function10611d -Function106101: mobile ; 106101 +MobileFn_106101: mobile ; 106101 ld hl, $a066 jr Function10611d ; 106107 -Function106107: mobile ; 106107 +MobileFn_106107: mobile ; 106107 ld hl, $a069 jr Function10611d ; 10610d -Function10610d: mobile ; 10610d +MobileFn_10610d: mobile ; 10610d ld a, [hBattleTurn] and a ret nz @@ -81794,7 +80941,7 @@ Function10612d: ; 10612d ret ; 106155 -Function106155: mobile ; 106155 +MobileFn_106155: mobile ; 106155 ld a, $5 call GetSRAMBank call Function106162 @@ -82108,7 +81255,7 @@ Function10630f: ; 10630f ret ; 106314 -Function106314: mobile ; 106314 +MobileFn_106314: mobile ; 106314 ld a, $4 call GetSRAMBank ld a, c @@ -82280,7 +81427,7 @@ Function106403: ; 106403 or c inc a ld c, a - call Function106314 + call MobileFn_106314 ld a, [wcd25] inc a ld [wcd25], a @@ -82298,7 +81445,7 @@ Function106403: ; 106403 .asm_106435 ld c, $0 - call Function106314 + call MobileFn_106314 ld a, [wcd25] inc a ld [wcd25], a @@ -82309,7 +81456,7 @@ Function106442: ; 106442 ld a, $36 call Function3e32 xor a - ld [$ffe9], a + ld [hMobile], a ld [$ffc9], a ld a, [wcd25] inc a @@ -83453,3 +82600,4 @@ ELSE INCBIN "misc/stadium2_1.bin" ENDC + -- cgit v1.2.3 From 4d17f6e1f6d41b91f5a5de71984a7c6f2bd0041c Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 24 Oct 2015 19:49:19 -0400 Subject: Address comments on PR 322 --- main.asm | 514 +++++++++++++++++++++++++++++++-------------------------------- 1 file changed, 257 insertions(+), 257 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index 5a3dfe1d8..592bdf6cf 100644 --- a/main.asm +++ b/main.asm @@ -1134,7 +1134,7 @@ TitleScreen: ; 6274 ; 627b Function627b: ; 627b - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .done_title call TitleScreenScene @@ -1181,7 +1181,7 @@ endr ; 62b7 Function62b7: ; 62b7 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret ; 62bc @@ -1222,7 +1222,7 @@ TitleScreenEntrance: ; 62bc .done ; Next scene - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] xor a ld [hLCDStatCustom], a @@ -1240,7 +1240,7 @@ TitleScreenEntrance: ; 62bc TitleScreenTimer: ; 62f6 ; Next scene - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ; Start a timer @@ -1324,13 +1324,13 @@ TitleScreenMain: ; 6304 ld [wcf64], a ; Return to the intro sequence. - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret .end ; Next scene - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ; Fade out the title screen music @@ -1349,7 +1349,7 @@ TitleScreenMain: ; 6304 ld [wcf64], a ; Return to the intro sequence. - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret ; 6375 @@ -1369,7 +1369,7 @@ TitleScreenEnd: ; 6375 ld [wcf64], a ; Back to the intro. - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret ; 6389 @@ -9748,14 +9748,14 @@ Functione443: ; e443 (3:6443) call LoadMenuDataHeader ld a, $1 .asm_e44b - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a call Function32f9 xor a ld [wcf76], a ld [hBGMapMode], a ; $ff00+$d4 call Function1e5d jr c, .asm_e46b - ld a, [wPocketPointerLocationBuffer] + ld a, [wPocketCursorBuffer] push af ld a, [MenuSelection] ld hl, Jumptable_e4ba @@ -10760,7 +10760,7 @@ Function118ca: ; 118ca Function11915: ; 11915 call JoyTextDelay - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_11930 call Function11968 @@ -10806,7 +10806,7 @@ Function11940: ; 11940 ; 11968 Function11968: ; 11968 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, $0 ld hl, Jumptable_11977 @@ -10843,7 +10843,7 @@ Function1197b: ; 1197b (4:597b) ld hl, $e add hl, bc ld [hl], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret @@ -10897,7 +10897,7 @@ Function119a1: ; 119a1 (4:59a1) .asm_119eb call Function11bf7 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -11327,7 +11327,7 @@ Function11c51: ; 11c51 ld [wc3bf], a ld [hSCX], a ld [wc3c0], a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld [wcf64], a ld [hBGMapMode], a ld [wc6d2], a @@ -11500,7 +11500,7 @@ Function11fa9: ; 11fa9 (4:5fa9) Function11fc0: ; 11fc0 (4:5fc0) call JoyTextDelay - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_11fdb call Function12008 @@ -11535,7 +11535,7 @@ Function11feb: ; 11feb (4:5feb) ret Function12008: ; 12008 (4:6008) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_12017 @@ -11566,7 +11566,7 @@ Function1201b: ; 1201b (4:601b) ld hl, $e add hl, bc ld [hl], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret @@ -11636,7 +11636,7 @@ Function1203a: ; 1203a (4:603a) .asm_120a1 call Function11bf7 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -12441,7 +12441,7 @@ StartMenu:: ; 125cd call LoadMenuDataHeader call .SetUpMenuItems ld a, [wd0d2] - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a call .DrawMenuAccount_ call MenuFunc_1e7f call .DrawBugContestStatusBox @@ -12457,13 +12457,13 @@ StartMenu:: ; 125cd call UpdateTimePals call .SetUpMenuItems ld a, [wd0d2] - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a .Select call .GetInput jr c, .Exit call .DrawMenuAccount - ld a, [wPocketPointerLocationBuffer] + ld a, [wPocketCursorBuffer] ld [wd0d2], a call PlayClickSFX call Function1bee @@ -18363,7 +18363,7 @@ Function15985: ; 0x15985 ld c, $12 call TextBox ld a, [wd0d7] - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a ld a, [wd0dd] ld [wd0e4], a call Function350c @@ -18939,7 +18939,7 @@ Function15cef: ; 15cef ld hl, MenuDataHeader_0x15e18 call CopyMenuDataHeader ld a, [WalkingX] - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a ld a, [WalkingY] ld [wd0e4], a call Function350c @@ -20498,7 +20498,7 @@ Function16be4: ; 16be4 call PlaceString xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a call Function16cc8 call WaitBGMap @@ -20528,12 +20528,12 @@ Function16be4: ; 16be4 jr .asm_16c6b .asm_16c82 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] push af callba Function84560 call RestartMapMusic pop af - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a jr .asm_16c6b .asm_16c95 @@ -20555,7 +20555,7 @@ Function16ca0: ; 16ca0 ret .asm_16cad - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex ld a, [hl] and a jr nz, .asm_16cb6 @@ -20566,7 +20566,7 @@ Function16ca0: ; 16ca0 jr .asm_16cc4 .asm_16cb9 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex ld a, [hl] cp $1a jr c, .asm_16cc3 @@ -20581,7 +20581,7 @@ Function16ca0: ; 16ca0 ; 16cc8 Function16cc8: ; 16cc8 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] cp 26 jr z, Function16d20 inc a @@ -21434,7 +21434,7 @@ Function1727f: ; 1727f (5:727f) Function1728f: ; 1728f (5:728f) ld a, [wd265] - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld a, [CurSpecies] push af ld de, MUSIC_NONE @@ -21448,7 +21448,7 @@ Function1728f: ; 1728f (5:728f) call FarCopyBytes callba Function8cf53 ld de, VTiles2 tile $00 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] call Function1723c ld de, VTiles2 tile $31 ld a, EGG @@ -21506,11 +21506,11 @@ Function1728f: ; 1728f (5:728f) hlcoord 6, 3 ld b, $98 ld c, $0 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] call Function17254 call Function17418 call WaitSFX - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld [CurPartySpecies], a hlcoord 6, 3 ld d, $0 @@ -22052,7 +22052,7 @@ Function2403c:: ; 2403c ld c, a ld a, [wcfa3] call SimpleMultiply - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a and a ret ; 24085 @@ -22097,7 +22097,7 @@ Function24098: ; 24098 ld c, a ld a, [wcfaa] add c - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a and a ret @@ -22183,7 +22183,7 @@ Function2411a: ; 2411a (9:411a) call Function24193 ld a, [wcfa4] ld e, a - ld a, [wPocketPointerLocationBuffer] + ld a, [wPocketCursorBuffer] ld b, a xor a ld d, $0 @@ -22817,7 +22817,7 @@ Function2446d:: ; 2446d .asm_244a9 ld [hli], a - ld a, [wPocketPointerLocationBuffer] + ld a, [wPocketCursorBuffer] and a jr z, .asm_244b7 ld c, a @@ -23241,7 +23241,7 @@ Function2471a: ; 2471a .skip ld a, [wd0e4] ld c, a - ld a, [wPocketPointerLocationBuffer] + ld a, [wPocketCursorBuffer] add c ld b, a ld a, [wd144] @@ -23254,7 +23254,7 @@ Function2471a: ; 2471a xor a ld [wd0e4], a ld a, $1 - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a .asm_24763 ret @@ -23312,7 +23312,7 @@ Function24764: ; 24764 ld [wcfa8], a ld a, [wcfa3] ld b, a - ld a, [wPocketPointerLocationBuffer] + ld a, [wPocketCursorBuffer] and a jr z, .asm_247c8 cp b @@ -24430,9 +24430,9 @@ LoadBattleMenu: ; 24ef2 ld hl, BattleMenuDataHeader call LoadMenuDataHeader ld a, [wd0d2] - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a call Function2039 - ld a, [wPocketPointerLocationBuffer] + ld a, [wPocketCursorBuffer] ld [wd0d2], a call ExitMenu ret @@ -24453,9 +24453,9 @@ ContestBattleMenu: ; 24f13 Function24f19: ; 24f19 ld a, [wd0d2] - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a call InterpretMenu - ld a, [wPocketPointerLocationBuffer] + ld a, [wPocketCursorBuffer] ld [wd0d2], a call ExitMenu ret @@ -24804,7 +24804,7 @@ Function25105: ; 25105 .asm_25117 call UpdateTime call JoyTextDelay - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_25132 ld a, [hJoyLast] @@ -24846,7 +24846,7 @@ Function2513b: ; 2513b (9:513b) call GetSGBLayout call Function32f9 call WaitBGMap - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex xor a rept 3 ld [hli], a @@ -24855,7 +24855,7 @@ endr ret Function2518e: ; 2518e (9:518e) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, $0 ld hl, Jumptable_2519d @@ -24878,12 +24878,12 @@ Jumptable_2519d: ; 2519d (9:519d) Function251ab: ; 251ab (9:51ab) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret Function251b0: ; 251b0 (9:51b0) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -24910,7 +24910,7 @@ Function251d7: ; 251d7 (9:51d7) ret .asm_251e3 ld a, $2 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 251e9 (9:51e9) @@ -24919,7 +24919,7 @@ Function251e9: ; 251e9 and a ret z ld a, $4 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 251f4 @@ -24954,7 +24954,7 @@ Function25221: ; 25221 (9:5221) ret .asm_25235 ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 2523b (9:523b) @@ -24963,13 +24963,13 @@ Function2523b: ; 2523b and a ret z ld a, $4 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 25246 Function25246: ; 25246 ld a, $6 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function2524c: ; 2524c (9:524c) @@ -25003,11 +25003,11 @@ Function25279: ; 25279 (9:5279) ret .asm_2528d ld a, $2 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret .asm_25293 ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function25299: ; 25299 (9:5299) @@ -25695,7 +25695,7 @@ _KrisDecorationMenu: ; 0x2675c ld [wd1ef], a .asm_2676f ld a, [wd1ef] - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a call Function26806 call Function1e5d ld a, [wcfa9] @@ -29400,7 +29400,7 @@ Function28fa1: ; 28fa1 Function28fdb: ; 28fdb xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a call WhiteBGMap call ClearSprites call ClearTileMap @@ -29466,7 +29466,7 @@ Function28fdb: ; 28fdb ; 29082 Function29082: ; 29082 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_2909b call Function290a0 @@ -29484,7 +29484,7 @@ Function29082: ; 29082 ; 290a0 Function290a0: ; 290a0 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, JumpTable290af @@ -29549,7 +29549,7 @@ JumpTable290af: ; 290af ; 2910f Function2910f: ; 2910f - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret ; 29114 @@ -29560,7 +29560,7 @@ Function29114: ; 29114 inc hl ld d, [hl] ld a, [de] - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a inc de ld [hl], d dec hl @@ -29569,7 +29569,7 @@ Function29114: ; 29114 ; 29123 Function29123: ; 29123 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret ; 29129 @@ -33597,7 +33597,7 @@ Function2c8d3: ; 2c8d3 (b:48d3) ld [wcfa7], a ld a, $f3 ld [wcfa8], a - ld a, [wTMHMPocketPointerLocation] + ld a, [wTMHMPocketCursor] inc a ld [wcfa9], a ld a, $1 @@ -33610,7 +33610,7 @@ Function2c915: ; 2c915 (b:4915) ld b, a ld a, [wcfa9] dec a - ld [wTMHMPocketPointerLocation], a + ld [wTMHMPocketCursor], a xor a ld [hBGMapMode], a ; $ff00+$d4 ld a, [wcfa6] @@ -36568,7 +36568,7 @@ Function44806: ; 0x44806 call Function352f call UpdateSprites ld a, [wd0f1] - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a ld a, [OBPals + 8 * 6] ld [wd0e4], a call Function350c @@ -37087,7 +37087,7 @@ asm_4828d: ; 4828d (12:428d) call WaitBGMap ld a, [PlayerGender] inc a - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a call Function1bc9 call PlayClickSFX call ExitMenu @@ -37131,7 +37131,7 @@ Function48304: ; 48304 (12:4304) ld b, $c ld c, $8 call Function48cdc - ld a, [wPocketPointerLocationBuffer] + ld a, [wPocketCursorBuffer] ld b, a ld a, [wd0e4] ld c, a @@ -37142,7 +37142,7 @@ Function48304: ; 48304 (12:4304) jr c, .asm_4833f sub $29 inc a - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a ld a, $29 .asm_4833f ld [wd0e4], a @@ -37155,7 +37155,7 @@ Function48304: ; 48304 (12:4304) ld d, a pop bc ld a, b - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a ld a, c ld [wd0e4], a ld a, d @@ -37204,7 +37204,7 @@ Function48383: ; 48383 (12:4383) .asm_483af ld hl, wcfa9 ld a, [hl] - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a scf .asm_483b7 pop bc @@ -39493,7 +39493,7 @@ Special_CelebiShrineEvent: ; 4989a ld [wcf64], a ld d, $0 .loop - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .done push bc @@ -39548,7 +39548,7 @@ LoadCelebiGFX: ; 49912 lb bc, BANK(SpecialCelebiGFX), $10 call Request2bpp xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 49935 @@ -39561,7 +39561,7 @@ Function49935: ; 49935 ret .asm_4993e - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret ; 49944 @@ -42097,7 +42097,7 @@ Function4acaa: ; 4acaa ld a, $b ld [wMenuBorderLeftCoord], a ld a, $1 - ld [wPocketPointerLocationBuffer], a + ld [wPocketCursorBuffer], a call Function1c10 ld hl, wcfa5 set 6, [hl] @@ -43964,7 +43964,7 @@ StatsScreenInit_gotaddress: ; 4dc94 ld [$ffde], a ; disable overworld tile animations ld a, [wc2c6] ; whether sprite is to be mirrorred push af - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld b, a ld a, [wcf64] ld c, a @@ -43983,7 +43983,7 @@ StatsScreenInit_gotaddress: ; 4dc94 ; restore old values ld a, b - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld a, c ld [wcf64], a pop af @@ -43995,19 +43995,19 @@ StatsScreenInit_gotaddress: ; 4dc94 StatsScreenMain: ; 0x4dcd2 xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld [wcf64], a ld a, [wcf64] and $fc or $1 ld [wcf64], a .loop ; 4dce3 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] and $7f ld hl, StatsScreenPointerTable rst JumpTable call Function4dd3a ; check for keys? - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr z, .loop ret @@ -44015,7 +44015,7 @@ StatsScreenMain: ; 0x4dcd2 StatsScreenBattle: ; 4dcf7 xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld [wcf64], a ld a, [wcf64] and $fc @@ -44023,14 +44023,14 @@ StatsScreenBattle: ; 4dcf7 ld [wcf64], a .asm_4dd08 callba Function100dd2 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] and $7f ld hl, StatsScreenPointerTable rst JumpTable call Function4dd3a callba Function100dfd jr c, .asm_4dd29 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr z, .asm_4dd08 @@ -44070,14 +44070,14 @@ Function4dd3a: ; 4dd3a (13:5d3a) ret Function4dd62: ; 4dd62 (13:5d62) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] and $80 or h - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function4dd6c: ; 4dd6c (13:5d6c) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -44104,9 +44104,9 @@ Function4dd72: ; 4dd72 (13:5d72) EggStatsInit: ; 4dda1 call EggStatsScreen - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] inc a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 0x4ddac @@ -44131,9 +44131,9 @@ Function4ddc6: ; 4ddc6 (13:5dc6) call Function4dfb6 ld hl, wcf64 res 4, [hl] - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] inc a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function4ddd6: ; 4ddd6 (13:5dd6) @@ -44149,9 +44149,9 @@ Function4ddd6: ; 4ddd6 (13:5dd6) Function4dde6: ; 4dde6 (13:5de6) call IsSFXPlaying ret nc - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] inc a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function4ddf2: ; 4ddf2 (13:5df2) @@ -45452,7 +45452,7 @@ Function4e7a6: ; 4e7a6 ret nz ld de, SFX_EVOLVED call PlaySFX - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex ld a, [hl] push af ld [hl], $0 @@ -45469,12 +45469,12 @@ Function4e7a6: ; 4e7a6 dec c jr nz, .asm_4e7c4 pop af - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 4e7cf Function4e7cf: ; 4e7cf - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex ld a, [hl] cp $20 ret nc @@ -45499,7 +45499,7 @@ Function4e7e8: ; 4e7e8 call Function3b2a ld hl, $000b add hl, bc - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] and $e sla a pop de @@ -50229,11 +50229,11 @@ ColorTest: ; 818ac ld de, MUSIC_NONE call PlayMusic xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld [wcf66], a ld [wd003], a .asm_818de - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_818f0 call Function81a74 @@ -50491,7 +50491,7 @@ Palette_81a34: ; 81a34 Function81a74: ; 81a74 call JoyTextDelay - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] cp $4 jr nc, .asm_81a8b ld hl, hJoyLast @@ -50503,7 +50503,7 @@ Function81a74: ; 81a74 jr nz, .asm_81aab .asm_81a8b - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_81acf @@ -50538,7 +50538,7 @@ endr .asm_81aba ld [wcf66], a ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 81ac3 @@ -50647,7 +50647,7 @@ Function81adb: ; 81adb .asm_81ba9 ld a, $1 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 81baf @@ -50718,7 +50718,7 @@ Function81c18: ; 81c18 .asm_81c2a call WaitBGMap ld a, $2 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 81c33 @@ -50743,7 +50743,7 @@ Function81c33: ; 81c33 ld a, $1 ld [hCGBPalUpdate], a ld a, $3 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a pop af ld [rSVBK], a ret @@ -50778,7 +50778,7 @@ endr ld de, wc608 + 2 call Function81ca7 ld a, $3 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 81ca7 @@ -50826,7 +50826,7 @@ endr .asm_81cdf ld a, $4 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret .asm_81ce5 @@ -50842,7 +50842,7 @@ endr add hl, bc call Function818fd ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 81d02 @@ -50934,7 +50934,7 @@ Function81d77: ; 81d77 Function81d7b: ; 81d7b call Function81e67 ld a, $2 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function81d84: ; 81d84 @@ -50960,7 +50960,7 @@ Function81d8e: ; 81d8e ld [wd004], a call Function81df4 ld a, $5 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 81daf @@ -50974,12 +50974,12 @@ Function81daf: ; 81daf .asm_81dbb ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 81dc1 Function81dc1: ; 81dc1 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret ; 81dc7 @@ -51276,7 +51276,7 @@ Function81f5e: ; 81f5e ld [hl], a hlcoord 1, 15 ld [hl], a - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] cp $3 jr nz, .asm_81fc9 ld a, [wcf64] @@ -51349,7 +51349,7 @@ INCBIN "gfx/debug/color_test.2bpp" TilesetColorTest: ret xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld [wcf64], a ld [wcf65], a ld [wcf66], a @@ -51392,7 +51392,7 @@ TilesetColorTest: call Function821f4 call Function8220f call Function3200 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld a, $40 ld [hWY], a ret @@ -51740,12 +51740,12 @@ Function84000: ; 84000 ld a, [GBPrinter] ld [wcbfb], a xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; 84022 Function84022: ; 84022 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_84031 @@ -51783,19 +51783,19 @@ Jumptable_84031: ; 84031 (21:4031) Function84059: ; 84059 (21:4059) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret Function8405e: ; 8405e (21:405e) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex dec [hl] ret Function84063: ; 84063 (21:4063) xor a ld [wca89], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -51805,7 +51805,7 @@ Function8406d: ; 8406d (21:406d) Function84071: ; 84071 (21:4071) ld a, $1 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function84077: ; 84077 (21:4077) @@ -51845,7 +51845,7 @@ Function84099: ; 84099 (21:4099) Function840c5: ; 840c5 (21:40c5) ld a, $6 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld hl, Unknown_842c9 call Function841e2 xor a @@ -51937,7 +51937,7 @@ Function84143: ; 84143 (21:4143) ld [wca88], a ld [wca89], a ld a, $e - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function84180: ; 84180 (21:4180) @@ -51957,7 +51957,7 @@ Function84180: ; 84180 (21:4180) ret .asm_8419b ld a, $12 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function841a1: ; 841a1 (21:41a1) @@ -51981,7 +51981,7 @@ Function841b3: ; 841b3 (21:41b3) and $f0 ret nz xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function841c3: ; 841c3 (21:41c3) @@ -52339,7 +52339,7 @@ Function843f0: ; 843f0 call JoyTextDelay call Function846f6 jr c, .asm_8440f - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_8440d call Function84022 @@ -52557,11 +52557,11 @@ Function84560: ; 84560 call JoyTextDelay call Function846f6 jr c, .asm_845c0 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_845c0 call Function84022 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] cp $2 jr nc, .asm_845b5 ld a, $3 @@ -53307,7 +53307,7 @@ Function864b4: ; 864b4 Function864c3: ; 864c3 xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a call Function8671c jr c, .done ld de, SCREEN_WIDTH @@ -53532,13 +53532,13 @@ endr Function86650: ; 86650 call LoadFontsBattleExtra xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a .asm_86657 call Function8671c ret c call Function86665 ret c - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] jr .asm_86657 ; 86665 @@ -53647,7 +53647,7 @@ String_8670c: Function8671c: ; 8671c - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] cp NUM_HOF_TEAMS jr nc, .asm_86746 ld hl, sHallOfFame @@ -54293,13 +54293,13 @@ TreeRelativeLocationTable: ; 8c938 Function8c940: ; 8c940 ld a, e and $1 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a call Function8c96d call WaitSFX ld de, SFX_PLACE_PUZZLE_PIECE_DOWN call PlaySFX .asm_8c952 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_8c96c ld a, $90 @@ -54335,7 +54335,7 @@ INCBIN "gfx/unknown/08c9cc.2bpp" ; 8ca0c Function8ca0c: ; 8ca0c - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_8ca1b @@ -54365,7 +54365,7 @@ Function8ca23: ; 8ca23 (23:4a23) ld [hl], $84 ld a, $20 ld [wcf64], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex rept 2 inc [hl] endr @@ -54383,14 +54383,14 @@ Function8ca3c: ; 8ca3c (23:4a3c) call Function8ca73 ld a, $20 ld [wcf64], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret Function8ca5c: ; 8ca5c (23:4a5c) ld a, $1 ld [hBGMapMode], a ; $ff00+$d4 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] Function8ca64: ; 8ca64 (23:4a64) @@ -54401,7 +54401,7 @@ Function8ca64: ; 8ca64 (23:4a64) dec [hl] ret .asm_8ca6d - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -54508,7 +54508,7 @@ Function8caed: ; 8caed ld a, $80 ld [wcf64], a .asm_8cb14 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_8cb2e ld a, $0 @@ -54545,7 +54545,7 @@ Function8cb33: ; 8cb33 ld a, $40 ld [wcf64], a .asm_8cb60 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_8cb7a ld a, $0 @@ -54594,7 +54594,7 @@ Function8cb9b: ; 8cb9b (23:4b9b) ld e, $84 callba Function8e9bc xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function8cbc8: ; 8cbc8 (23:4bc8) @@ -54612,7 +54612,7 @@ Function8cbc8: ; 8cbc8 (23:4bc8) call PlaySFX ret .asm_8cbe0 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -54675,7 +54675,7 @@ Special_MagnetTrain: ; 8cc04 push af ld [hl], $1 .loop - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] and a jr z, .initialize bit 7, a @@ -54782,7 +54782,7 @@ Function8ccc9: ; 8ccc9 ld c, $4 call Request2bpp call Function8cda6 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex xor a ld [hli], a ld a, [wd192] @@ -54928,7 +54928,7 @@ SetMagnetTrainPals: ; 8cdc3 ; 8cdf7 Function8cdf7: ; 8cdf7 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_8ce06 @@ -54952,7 +54952,7 @@ Jumptable_8ce06: ; 8ce06 ; 8ce14 Function8ce14: ; 8ce14 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret ; 8ce19 @@ -55056,7 +55056,7 @@ endr Function8cea2: ; 8cea2 ld a, $80 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld de, SFX_TRAIN_ARRIVED call PlaySFX ret @@ -59327,7 +59327,7 @@ Function90b8d: ; 90b8d (24:4b8d) .loop call UpdateTime call JoyTextDelay - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .done call Function90f04 @@ -59374,7 +59374,7 @@ Function90bea: ; 90bea (24:4bea) ld [rLCDC], a call Function90d70 xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld [wcf64], a ld [wcf65], a ld [wcf66], a @@ -59530,7 +59530,7 @@ Function90d70: ; 90d70 (24:4d70) Function90d9e: ; 90d9e (24:4d9e) ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a xor a ld [wcf64], a ret @@ -59738,7 +59738,7 @@ Function90ef7: ; 90ef7 (24:4ef7) ret Function90f04: ; 90f04 (24:4f04) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_90f13 @@ -59770,7 +59770,7 @@ Function90f2d: ; 90f2d (24:4f2d) call Function90da8 ld hl, UnknownText_0x914d3 call PrintText - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] call Function91492 ret @@ -59815,7 +59815,7 @@ Function90f3e: ; 90f3e (24:4f3e) ret .asm_90f75 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -59866,7 +59866,7 @@ Function90fb4: ; 90fb4 (24:4fb4) .kanto ld a, 5 .done - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a call Function91492 ret @@ -59880,7 +59880,7 @@ Function90fcd: ; 90fcd (24:4fcd) ld [wc6d5], a ld a, b ld [wc6d6], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret @@ -59928,7 +59928,7 @@ Function90ff2: ; 90ff2 (24:4ff2) call Function91480 ret .cancel - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -60076,7 +60076,7 @@ Function910f9: ; 910f9 (24:50f9) add hl, bc ld [hl], $8 call _UpdateRadioStation - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret @@ -60122,12 +60122,12 @@ Function91112: ; 91112 (24:5112) ret .cancel - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret Function91156: ; 91156 (24:5156) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] xor a ld [wc6d2], a @@ -60180,7 +60180,7 @@ Function91171: ; 91171 (24:5171) ret .b - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -60207,13 +60207,13 @@ Function91171: ; 91171 (24:5171) call Function91342 jr c, .asm_911e5 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret .asm_911e5 ld a, $8 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function911eb: ; 911eb (24:51eb) @@ -60244,7 +60244,7 @@ Function911eb: ; 911eb (24:51eb) ld a, $1 ld [hInMenu], a call Function912b7 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret .asm_91234 @@ -60252,7 +60252,7 @@ Function911eb: ; 911eb (24:51eb) ld hl, OutOfServiceAreaText call PrintText ld a, $8 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld hl, UnknownText_0x914ce call PrintText ret @@ -60276,7 +60276,7 @@ Function91256: ; 91256 (24:5256) ret z callba HangUp ld a, $8 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld hl, UnknownText_0x914ce call PrintText ret @@ -60645,7 +60645,7 @@ Function91480: ; 91480 (24:5480) ld de, SFX_READ_TEXT_2 call PlaySFX ld a, c - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld a, b ld [wcf64], a call Function914ab @@ -62131,7 +62131,7 @@ Function926f7: ; 926f7 (24:66f7) ld [hli], a ld [hl], $40 xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld a, $ff ld [wc709], a ld de, MUSIC_GAME_CORNER @@ -62158,7 +62158,7 @@ Function9279b: ; 9279b (24:679b) ret Function927af: ; 927af (24:67af) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_927d1 call Function92844 @@ -62254,7 +62254,7 @@ endr ; 92844 Function92844: ; 92844 (24:6844) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_92853 @@ -62291,7 +62291,7 @@ Jumptable_92853: ; 92853 (24:6853) Function92879: ; 92879 (24:6879) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret @@ -62308,7 +62308,7 @@ Function9288e: ; 9288e (24:688e) call Function9307c jr nc, .asm_92899 ld a, $12 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret .asm_92899 call Function92879 @@ -62499,15 +62499,15 @@ Function929d9: ; 929d9 (24:69d9) call Function930e9 jr c, .asm_929ea ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret .asm_929ea ld a, $12 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Function929f0: ; 929f0 (24:69f0) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -65125,11 +65125,11 @@ Functionb929a: ; b929a ret .asm_b92a8 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] push af callab Function845d4 pop af - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a jr .asm_b929a ; b92b8 @@ -66577,14 +66577,14 @@ _CardFlip: ; e00ee (38:40ee) call DmgToCgbObjPals call DelayFrame xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld a, $2 ld [wcf64], a ld [wcf65], a ld de, MUSIC_GAME_CORNER call PlayMusic .MasterLoop - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .leavethegame call .CardFlip @@ -66600,7 +66600,7 @@ _CardFlip: ; e00ee (38:40ee) ret .CardFlip: ; e0191 (38:4191) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, .Jumptable @@ -66625,7 +66625,7 @@ endr ; e01b0 .Increment: ; e01b0 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret ; e01b5 @@ -66641,7 +66641,7 @@ endr .SaidNo ld a, $7 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e01cd @@ -66665,7 +66665,7 @@ endr ld hl, .NotEnoughCoinsText call Functione0489 ld a, $7 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret .deduct @@ -66862,7 +66862,7 @@ endr .LoopAround ld a, $1 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e0356 @@ -66879,7 +66879,7 @@ endr ; 0xe0360 .Quit: ; e0360 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret ; e0366 @@ -68283,7 +68283,7 @@ Functione1190: ; e1190 ld [hSCY], a ld [hSCX], a ld [rWY], a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld [wcf64], a ld [wcf65], a ld [wcf66], a @@ -68301,7 +68301,7 @@ Functione1190: ; e1190 call DelayFrame .asm_e1217 call JoyTextDelay - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_e123d call Functione12ca @@ -68409,7 +68409,7 @@ Functione128d: ; e128d ; e12ca Functione12ca: ; e12ca - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_e12d9 @@ -68583,7 +68583,7 @@ Functione1376: ; e1376 ld [wd0ec], a Functione13de: ; e13de - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -69131,7 +69131,7 @@ Functione1e67: ; e1e67 (38:5e67) ld [hSCY], a ; $ff00+$d0 ld [hSCX], a ; $ff00+$cf ld [rWY], a ; $ff00+$4a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld a, $1 ld [hBGMapMode], a ; $ff00+$d4 ld a, $e3 @@ -69143,7 +69143,7 @@ Functione1e67: ; e1e67 (38:5e67) ret Functione1ebb: ; e1ebb (38:5ebb) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_e1ed0 call Functione1ed2 @@ -69156,7 +69156,7 @@ Functione1ebb: ; e1ebb (38:5ebb) ret Functione1ed2: ; e1ed2 (38:5ed2) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_e1ee1 @@ -69183,7 +69183,7 @@ Jumptable_e1ee1: ; e1ee1 Functione1ef3: ; e1ef3 call Functione2152 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret ; e1efb @@ -69191,13 +69191,13 @@ Functione1ef3: ; e1ef3 Functione1efb: ; e1efb call Functione00ed jr nc, .asm_e1f06 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret .asm_e1f06 call Functione209d - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] xor a ld [wc708], a @@ -69226,7 +69226,7 @@ Functione1f1c: ; e1f1c call Function3b2a ld a, $5 ld [wc702], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret ; e1f42 @@ -69241,14 +69241,14 @@ Functione1f42: ; e1f42 and a jr nz, .asm_e1f58 ld a, $7 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret .asm_e1f58 dec [hl] xor a ld [wcf64], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] Functione1f61: ; e1f61 @@ -69271,7 +69271,7 @@ Functione1f61: ; e1f61 call Functione2128 xor a ld [wcf64], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret ; e1f8b @@ -69299,7 +69299,7 @@ Functione1f8b: ; e1f8b call Functione2128 ld a, $40 ld [wc708], a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] Functione1fba: ; e1fba @@ -69313,7 +69313,7 @@ Functione1fba: ; e1fba .asm_e1fc3 call Functione2010 ld a, $3 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e1fcc @@ -69347,19 +69347,19 @@ Functione1fcc: ; e1fcc .asm_e1ff9 call Functiona80 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] Functione2000: ; e2000 call Functione00ed jr nc, .asm_e200b - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret .asm_e200b xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e2010 @@ -69618,7 +69618,7 @@ Functione2183: ; e2183 ; e21a1 Functione21a1: ; e21a1 (38:61a1) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] cp $7 jr nc, .asm_e21c8 call JoyTextDelay @@ -69729,7 +69729,7 @@ Functione2391: ; e2391 (38:6391) call DelayFrame .asm_e23b4 call JoyTextDelay - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_e23c6 call Functione23d5 @@ -69746,7 +69746,7 @@ Functione2391: ; e2391 (38:6391) ret Functione23d5: ; e23d5 (38:63d5) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld hl, Jumptable_e23df call Functione33df jp [hl] @@ -69808,18 +69808,18 @@ Functione241a: ; e241a (38:641a) cp $ff jr z, .asm_e2457 ld a, $2 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e2452 (38:6452) .asm_e2452 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex dec [hl] ret .asm_e2457 ld a, $4 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret Functione245d: ; e245d (38:645d) @@ -69871,7 +69871,7 @@ BillsPCDepositFuncDeposit: ; e24a9 (38:64a9) call Functione307c jr c, .asm_e24c1 ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a xor a ld [wcb2b], a ld [wcb2a], a @@ -69918,7 +69918,7 @@ BillsPCDepositFuncRelease: ; e24e0 (38:64e0) callba Functione039 call Functione3180 ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a xor a ld [wcb2b], a ld [wcb2a], a @@ -69933,7 +69933,7 @@ BillsPCDepositFuncRelease: ; e24e0 (38:64e0) BillsPCDepositFuncCancel: ; e2537 (38:6537) ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e253d (38:653d) @@ -69991,7 +69991,7 @@ Functione2583: ; e2583 (38:6583) call DelayFrame .asm_e25a7 call JoyTextDelay - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_e25b9 call Functione25c8 @@ -70008,7 +70008,7 @@ Functione2583: ; e2583 (38:6583) ret Functione25c8: ; e25c8 (38:65c8) - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld hl, .jumptable call Functione33df jp [hl] @@ -70072,18 +70072,18 @@ Functione2612: ; e2612 (38:6612) cp $ff jr z, .asm_e264f ld a, $2 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e264a (38:664a) .asm_e264a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex dec [hl] ret .asm_e264f ld a, $4 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e2655 @@ -70136,7 +70136,7 @@ endr call TryWithdrawPokemon jr c, .FailedWithdraw ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a xor a ld [wcb2b], a ld [wcb2a], a @@ -70181,7 +70181,7 @@ endr callba Functione039 call Functione3180 ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a xor a ld [wcb2b], a ld [wcb2a], a @@ -70196,7 +70196,7 @@ endr .cancel: ; e272b (38:672b) ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e2731 (38:6731) @@ -70240,7 +70240,7 @@ Functione2759: ; e2759 call DelayFrame .asm_e2781 call JoyTextDelay - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_e2793 call Functione27a2 @@ -70259,7 +70259,7 @@ Functione2759: ; e2759 ; e27a2 Functione27a2: ; e27a2 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld hl, Jumptable_e27ac call Functione33df jp [hl] @@ -70325,7 +70325,7 @@ Functione27eb: ; e27eb ld [wcb2b], a ld [wcb2a], a ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret .asm_e2823 @@ -70335,16 +70335,16 @@ Functione27eb: ; e27eb cp $ff jr z, .asm_e2837 ld a, $2 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex dec [hl] ret .asm_e2837 ld a, $6 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e283d @@ -70402,7 +70402,7 @@ Functione2887: ; e2887 ld a, [wcb2e] ld [wcb31], a ld a, $4 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e28a5 @@ -70420,7 +70420,7 @@ Functione28a5: ; e28a5 Functione28bd: ; e28bd ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e28c3 @@ -70484,7 +70484,7 @@ Functione2903: ; e2903 ld [wcb2b], a ld [wcb2a], a ld a, $4 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret .asm_e2938 @@ -70492,11 +70492,11 @@ Functione2903: ; e2903 jr c, .asm_e2946 call Functione31e7 ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret .asm_e2946 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex dec [hl] ret @@ -70508,7 +70508,7 @@ Functione2903: ; e2903 ld a, [wcb31] ld [wcb2e], a ld a, $0 - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e2963 @@ -70522,7 +70522,7 @@ Functione2963: ; e2963 (38:6963) xor a call ByteFill xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld [wcf64], a ld [wcf65], a ld [wcf66], a @@ -70531,12 +70531,12 @@ Functione2963: ; e2963 (38:6963) ret Functione298d: ; e298d (38:698d) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret Functione2992: ; e2992 (38:6992) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -72384,7 +72384,7 @@ _OptionsMenu: ; e41d0 ld de, StringOptions call PlaceString xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld c, $6 ;number of items on the menu minus 1 (for cancel) .asm_e41f3 ;this next will display the settings of each option when the menu is opened push bc @@ -72392,13 +72392,13 @@ _OptionsMenu: ; e41d0 ld [hJoyLast], a call GetOptionPointer pop bc - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] dec c jr nz, .asm_e41f3 call Functione4512 xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a inc a ld [hBGMapMode], a call WaitBGMap @@ -72450,7 +72450,7 @@ StringOptions: ; e4241 GetOptionPointer: ; e42d6 - ld a, [wJumptableEntryIndexBuffer] ;load the cursor position to a + ld a, [wJumptableIndex] ;load the cursor position to a ld e, a ;copy it to de ld d, 0 ld hl, .Pointers @@ -72890,7 +72890,7 @@ Options_Cancel: ; e4520 ; e452a OptionsControl: ; e452a - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex ld a, [hJoyLast] cp D_DOWN jr z, .DownPressed @@ -72947,7 +72947,7 @@ Functione455c: ; e455c jr nz, .asm_e4564 hlcoord 1, 2 ld bc, $0028 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] call AddNTimes ld [hl], $ed ret @@ -72986,7 +72986,7 @@ Functione4579: ; e4579 ld a, [hJoyLast] and BUTTONS jr nz, .asm_e45de - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .asm_e45e3 call Functione4670 @@ -73042,7 +73042,7 @@ Functione45e8: ; e45e8 add hl, bc ld [hl], $30 xor a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ld [wcf64], a ld [wcf65], a ld [hSCX], a @@ -73066,7 +73066,7 @@ Functione465e: ; e465e ; e4670 Functione4670: ; e4670 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, Jumptable_e467f @@ -73087,7 +73087,7 @@ Jumptable_e467f: ; e467f ; e4687 Functione4687: ; e4687 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret ; e468c @@ -73156,7 +73156,7 @@ Functione46dd: ; e46dd ret .asm_e46e7 - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret ; e46ed @@ -73334,7 +73334,7 @@ CrystalIntro: ; e48ac ld a, [hJoyLast] and BUTTONS jr nz, .ShutOffMusic - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] bit 7, a jr nz, .done call IntroSceneJumper @@ -73373,12 +73373,12 @@ Functione4901: ; e4901 ld [hInMenu], a xor a ld [$ffde], a - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a ret ; e490f IntroSceneJumper: ; e490f - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld e, a ld d, 0 ld hl, IntroScenes @@ -73424,7 +73424,7 @@ IntroScenes: ; e491e (39:491e) NextIntroScene: ; e4956 (39:4956) - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex inc [hl] ret @@ -74461,7 +74461,7 @@ IntroScene28: ; e5152 (39:5152) ret .done - ld hl, wJumptableEntryIndexBuffer + ld hl, wJumptableIndex set 7, [hl] ret @@ -76537,7 +76537,7 @@ TRADE_AFTER EQU 4 NPCTrade:: ; fcba8 ld a, e - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a call Functionfcc59 ld b, CHECK_FLAG call TradeFlagAction @@ -76592,7 +76592,7 @@ NPCTrade:: ; fcba8 Functionfcc07: ; fcc07 call DisableSpriteUpdates - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] push af ld a, [wcf64] push af @@ -76600,7 +76600,7 @@ Functionfcc07: ; fcc07 pop af ld [wcf64], a pop af - ld [wJumptableEntryIndexBuffer], a + ld [wJumptableIndex], a call Function2b74 ret ; fcc23 @@ -76636,7 +76636,7 @@ CheckTradeGender: ; fcc23 TradeFlagAction: ; fcc4a ld hl, wd960 - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] ld c, a predef FlagPredef ld a, c @@ -76818,7 +76818,7 @@ Functionfcc63: ; fcc63 GetTradeAttribute: ; 0xfcdc2 ld d, 0 push de - ld a, [wJumptableEntryIndexBuffer] + ld a, [wJumptableIndex] and $f swap a ld e, a -- cgit v1.2.3