From 2cb3f8e1b9e494f01ef2bcb65a0baf463d0efff8 Mon Sep 17 00:00:00 2001 From: yenatch Date: Wed, 21 May 2014 16:21:46 -0400 Subject: [PATCH] Comment music functions in home.asm. --- constants/misc_constants.asm | 1 + engine/scripting.asm | 340 +++++++++++++++++------------------ home.asm | 302 ++++++++++++++++--------------- home/init.asm | 2 +- home/map.asm | 55 +++--- main.asm | 88 ++++----- misc/crystal_misc.asm | 2 +- wram.asm | 3 +- 8 files changed, 407 insertions(+), 386 deletions(-) diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm index eb5d97abe..5af896533 100644 --- a/constants/misc_constants.asm +++ b/constants/misc_constants.asm @@ -2,6 +2,7 @@ ; name length PLAYER_NAME_LENGTH EQU 8 PKMN_NAME_LENGTH EQU 11 +NAME_LENGTH EQU 11 ; boxes NUM_BOXES EQU 14 diff --git a/engine/scripting.asm b/engine/scripting.asm index 4886327ca..43af00669 100644 --- a/engine/scripting.asm +++ b/engine/scripting.asm @@ -461,11 +461,11 @@ Script_yesorno: ; 0x96eed ; script command 0x4e call YesNoBox - ld a, $0 + ld a, 0 jr c, .asm_96ef6 ; 0x96ef2 $2 - ld a, $1 + ld a, 1 .asm_96ef6 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x96efa @@ -500,10 +500,10 @@ Script_pokepic: ; 0x96f16 call GetScriptByte and a - jr nz, .asm_96f1f ; 0x96f1a $3 - ld a, [$c2dd] -.asm_96f1f - ld [$d108], a + jr nz, .ok + ld a, [ScriptVar] +.ok + ld [CurPartySpecies], a callba Function244e3 ret ; 0x96f29 @@ -522,10 +522,10 @@ Script_interpretmenu2: ; 0x96f30 ld hl, Function1d81 rst FarCall ld a, [$cfa9] - jr nc, .asm_96f3d ; 0x96f3a $1 + jr nc, .ok xor a -.asm_96f3d - ld [$c2dd], a +.ok + ld [ScriptVar], a ret ; 0x96f41 @@ -536,10 +536,10 @@ Script_interpretmenu: ; 0x96f41 ld hl, Function202a rst FarCall ld a, [$cf88] - jr nc, .asm_96f4e ; 0x96f4b $1 + jr nc, .ok xor a -.asm_96f4e - ld [$c2dd], a +.ok + ld [ScriptVar], a ret ; 0x96f52 @@ -607,21 +607,21 @@ Script_verbosegiveitem2: ; 0x96f8e call GetScriptByte cp $ff - jr nz, .asm_96f98 ; 0x96f93 $3 - ld a, [$c2dd] -.asm_96f98 - ld [$d106], a + jr nz, .ok + ld a, [ScriptVar] +.ok + ld [CurItem], a call GetScriptByte - call Unknown_0x9769e + call Function9769e ld a, [de] ld [$d10c], a - ld hl, $d892 + ld hl, NumItems call ReceiveItem ld a, $1 - jr c, .asm_96fb0 ; 0x96fad $1 + jr c, .ok2 xor a -.asm_96fb0 - ld [$c2dd], a +.ok2 + ld [ScriptVar], a call CurItemName ld de, StringBuffer1 ld a, $1 @@ -745,7 +745,7 @@ Script_elevator: ; 0x9707c ; floor_list_pointer (PointerLabelParam) xor a - ld [$c2dd], a + ld [ScriptVar], a call GetScriptByte ld e, a call GetScriptByte @@ -755,7 +755,7 @@ Script_elevator: ; 0x9707c callba Function1342d ret c ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97099 @@ -812,7 +812,7 @@ Script_askforphonenumber: ; 0x970be call GetScriptByte ld a, $2 .asm_970db - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x970df @@ -895,7 +895,7 @@ Script_trainerstatus: ; 0x97132 ; action (SingleByteParam) xor a - ld [$c2dd], a + ld [ScriptVar], a ld hl, $d041 ld e, [hl] inc hl @@ -907,7 +907,7 @@ Script_trainerstatus: ; 0x97132 and a ret z ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x9714c @@ -943,12 +943,12 @@ Script_talkaftercheck: ; 0x9716b ; script command 0x67 ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ld a, [$d04d] and a ret nz xor a - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x9717a @@ -964,7 +964,7 @@ Script_playrammusic: ; 0x9717a Script_playmapmusic: ; 0x97185 ; script command 0x82 - call Function3cdf + call PlayMapMusic ret ; 0x97189 @@ -973,7 +973,7 @@ Script_playmusic: ; 0x97189 ; parameters: ; music_pointer (MultiByteParam) - ld de, $0000 + ld de, MUSIC_NONE call PlayMusic xor a ld [$c2a7], a @@ -993,9 +993,9 @@ Script_musicfadeout: ; 0x971a2 ; fadetime (SingleByteParam) call GetScriptByte - ld [$c2a9], a + ld [MusicFadeID], a call GetScriptByte - ld [$c2aa], a + ld [MusicFadeID + 1], a call GetScriptByte and $7f ld [$c2a7], a @@ -1041,13 +1041,13 @@ Script_cry: ; 0x971d1 pop af and a jr nz, .asm_971df ; 0x971da $3 - ld a, [$c2dd] + ld a, [ScriptVar] .asm_971df call Function37ce ret ; 0x971e3 -Unknown_0x971e3: ; 0x971e3 +Function971e3: ; 0x971e3 and a ret z cp $fe @@ -1062,7 +1062,7 @@ Script_setlasttalked: ; 0x971ea ; person (SingleByteParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 ld [$ffe0], a ret ; 0x971f3 @@ -1074,7 +1074,7 @@ Script_applymovement: ; 0x971f3 ; data (MovementPointerLabelParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 ld c, a ; 971fa @@ -1084,7 +1084,7 @@ Function971fa: ; 971fa callba Function585c pop bc push bc - call Unknown_0x97221 + call Function97221 pop bc call GetScriptByte ld l, a @@ -1100,7 +1100,7 @@ Function971fa: ; 971fa ret ; 0x97221 -Unknown_0x97221: ; 0x97221 +Function97221: ; 0x97221 callba Function5897 ret ; 0x97228 @@ -1131,7 +1131,7 @@ Script_faceplayer: ; 0x9722e ld e, a ld a, [$ffe0] ld d, a - call Unknown_0x9728b + call Function9728b ret ; 0x97248 @@ -1142,14 +1142,14 @@ Script_faceperson: ; 0x97248 ; person2 (SingleByteParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 cp $fe jr c, .asm_97254 ; 0x97250 $2 ld a, [$ffe0] .asm_97254 ld e, a call GetScriptByte - call Unknown_0x971e3 + call Function971e3 cp $fe jr nz, .asm_97261 ; 0x9725d $2 ld a, [$ffe0] @@ -1164,7 +1164,7 @@ Script_faceperson: ; 0x97248 add a ld e, a ld d, c - call Unknown_0x9728b + call Function9728b ret ; 0x97274 @@ -1175,7 +1175,7 @@ Script_spriteface: ; 0x97274 ; facing (SingleByteParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 cp $fe jr nz, .asm_97280 ; 0x9727c $2 ld a, [$ffe0] @@ -1185,11 +1185,11 @@ Script_spriteface: ; 0x97274 add a add a ld e, a - call Unknown_0x9728b + call Function9728b ret ; 0x9728b -Unknown_0x9728b: ; 0x9728b +Function9728b: ; 0x9728b ld a, d push de call Function18de @@ -1211,7 +1211,7 @@ Unknown_0x9728b: ; 0x9728b ld hl, $d0ed bit 6, [hl] jr nz, .asm_972b5 ; 0x972b0 $3 - call Unknown_0x972bc + call Function972bc .asm_972b5 call Function1ad2 ret @@ -1221,7 +1221,7 @@ Unknown_0x9728b: ; 0x9728b ret ; 0x972bc -Unknown_0x972bc: ; 0x972bc +Function972bc: ; 0x972bc call Function217a ld hl, TileMap ld bc, $0168 @@ -1257,11 +1257,11 @@ Script_appear: ; 0x972dd ; person (SingleByteParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 call Function1956 ld a, [$ffaf] ld b, $0 - call Unknown_0x9730b + call Function9730b ret ; 0x972ee @@ -1271,7 +1271,7 @@ Script_disappear: ; 0x972ee ; person (SingleByteParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 cp $fe jr nz, .asm_972fa ; 0x972f6 $2 ld a, [$ffe0] @@ -1279,12 +1279,12 @@ Script_disappear: ; 0x972ee call Function199f ld a, [$ffaf] ld b, $1 - call Unknown_0x9730b + call Function9730b callba Function5920 ret ; 0x9730b -Unknown_0x9730b: ; 0x9730b +Function9730b: ; 0x9730b push bc call GetMapObject ld hl, $000c @@ -1312,10 +1312,10 @@ Script_follow: ; 0x97325 ; person1 (SingleByteParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 ld b, a call GetScriptByte - call Unknown_0x971e3 + call Function971e3 ld c, a callba Function5803 ret @@ -1336,7 +1336,7 @@ Script_moveperson: ; 0x97341 ; y (SingleByteParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 ld b, a call GetScriptByte add $4 @@ -1354,7 +1354,7 @@ Script_writepersonxy: ; 0x9735b ; person (SingleByteParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 cp $fe jr nz, .asm_97367 ; 0x97363 $2 ld a, [$ffe0] @@ -1371,10 +1371,10 @@ Script_follownotexact: ; 0x9736f ; person1 (SingleByteParam) call GetScriptByte - call Unknown_0x971e3 + call Function971e3 ld b, a call GetScriptByte - call Unknown_0x971e3 + call Function971e3 ld c, a callba Function839e ret @@ -1388,7 +1388,7 @@ Script_loademote: ; 0x97384 call GetScriptByte cp $ff jr nz, .asm_9738e ; 0x97389 $3 - ld a, [$c2dd] + ld a, [ScriptVar] .asm_9738e ld c, a callba Function1442f @@ -1403,9 +1403,9 @@ Script_showemote: ; 0x97396 ; time (DecimalParam) call GetScriptByte - ld [$c2dd], a + ld [ScriptVar], a call GetScriptByte - call Unknown_0x971e3 + call Function971e3 cp $fe jr z, .asm_973a8 ; 0x973a4 $2 ld [$ffe0], a @@ -1473,7 +1473,7 @@ Script_loadpikachudata: ; 0x973f0 ld a, $19 ld [$d22e], a ld a, $5 - ld [$d143], a + ld [CurPartyLevel], a ret ; 0x973fb @@ -1508,7 +1508,7 @@ Script_loadpokedata: ; 0x97412 call GetScriptByte ld [$d22e], a call GetScriptByte - ld [$d143], a + ld [CurPartyLevel], a ret ; 0x97424 @@ -1535,7 +1535,7 @@ Script_startbattle: ; 0x97436 call Predef ld a, [$d0ee] and $3f - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97447 @@ -1663,7 +1663,7 @@ ScriptCall: ; 0x974cb ret ; 0x974f3 -Unknown_0x974f3:: ; 0x974f3 +Function974f3:: ; 0x974f3 ld a, [ScriptBank] or $80 ld [ScriptBank], a @@ -1720,7 +1720,7 @@ Script_iffalse: ; 0x9752c ; parameters: ; pointer (ScriptPointerLabelParam) - ld a, [$c2dd] + ld a, [ScriptVar] and a jp nz, SkipTwoScriptBytes jp Script_2jump @@ -1731,7 +1731,7 @@ Script_iftrue: ; 0x97536 ; parameters: ; pointer (ScriptPointerLabelParam) - ld a, [$c2dd] + ld a, [ScriptVar] and a jp nz, Script_2jump jp SkipTwoScriptBytes @@ -1744,7 +1744,7 @@ Script_if_equal: ; 0x97540 ; pointer (ScriptPointerLabelParam) call GetScriptByte - ld hl, $c2dd + ld hl, ScriptVar cp [hl] jr z, Script_2jump ; 0x97547 $b5 jr SkipTwoScriptBytes ; 0x97549 $4b @@ -1757,7 +1757,7 @@ Script_if_not_equal: ; 0x9754b ; pointer (ScriptPointerLabelParam) call GetScriptByte - ld hl, $c2dd + ld hl, ScriptVar cp [hl] jr nz, Script_2jump ; 0x97552 $aa jr SkipTwoScriptBytes ; 0x97554 $40 @@ -1769,7 +1769,7 @@ Script_if_greater_than: ; 0x97556 ; byte (SingleByteParam) ; pointer (ScriptPointerLabelParam) - ld a, [$c2dd] + ld a, [ScriptVar] ld b, a call GetScriptByte cp b @@ -1785,7 +1785,7 @@ Script_if_less_than: ; 0x97562 call GetScriptByte ld b, a - ld a, [$c2dd] + ld a, [ScriptVar] cp b jr c, Script_2jump ; 0x9756a $92 jr SkipTwoScriptBytes ; 0x9756c $28 @@ -1866,11 +1866,11 @@ Script_checktriggers: ; 0x975c2 call Function211b jr z, .asm_975cb ; 0x975c5 $4 - ld [$c2dd], a + ld [ScriptVar], a ret .asm_975cb ld a, $ff - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x975d1 @@ -1889,11 +1889,11 @@ Script_checkmaptriggers: ; 0x975d1 or e jr z, .asm_975e5 ; 0x975de $5 ld a, [de] - ld [$c2dd], a + ld [ScriptVar], a ret .asm_975e5 ld a, $ff - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x975eb @@ -1943,7 +1943,7 @@ Script_copybytetovar: ; 0x97609 call GetScriptByte ld h, a ld a, [hl] - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97616 @@ -1956,7 +1956,7 @@ Script_copyvartobyte: ; 0x97616 ld l, a call GetScriptByte ld h, a - ld a, [$c2dd] + ld a, [ScriptVar] ld [hl], a ret ; 0x97623 @@ -1982,7 +1982,7 @@ Script_writebyte: ; 0x97630 ; value (SingleByteParam) call GetScriptByte - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97637 @@ -1992,7 +1992,7 @@ Script_addvar: ; 0x97637 ; value (SingleByteParam) call GetScriptByte - ld hl, $c2dd + ld hl, ScriptVar add [hl] ld [hl], a ret @@ -2004,11 +2004,11 @@ Script_random: ; 0x97640 ; input (SingleByteParam) call GetScriptByte - ld [$c2dd], a + ld [ScriptVar], a and a ret z ld c, a - call Unknown_0x97673 + call Function97673 and a jr z, .asm_9765f ; 0x9764d $10 ld b, a @@ -2030,15 +2030,15 @@ Script_random: ; 0x97640 ld a, [$ffe1] .asm_97666 push af - ld a, [$c2dd] + ld a, [ScriptVar] ld c, a pop af call SimpleDivide - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97673 -Unknown_0x97673: ; 0x97673 +Function97673: ; 0x97673 xor a ld b, a sub c @@ -2057,9 +2057,9 @@ Script_checkcode: ; 0x9767d ; variable_id (SingleByteParam) call GetScriptByte - call Unknown_0x9769e + call Function9769e ld a, [de] - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97688 @@ -2069,8 +2069,8 @@ Script_writevarcode: ; 0x97688 ; variable_id (SingleByteParam) call GetScriptByte - call Unknown_0x9769e - ld a, [$c2dd] + call Function9769e + ld a, [ScriptVar] ld [de], a ret ; 0x97693 @@ -2082,13 +2082,13 @@ Script_writecode: ; 0x97693 ; value (SingleByteParam) call GetScriptByte - call Unknown_0x9769e + call Function9769e call GetScriptByte ld [de], a ret ; 0x9769e -Unknown_0x9769e: ; 0x9769e +Function9769e: ; 0x9769e ld c, a callba Function80648 ret @@ -2098,7 +2098,7 @@ Script_checkver: ; 0x976a6 ; script command 0x18 ld a, [Version] - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x976ad @@ -2115,7 +2115,7 @@ Script_pokenamemem: ; 0x976ae call GetScriptByte and a jr nz, .asm_976b7 ; 0x976b2 $3 - ld a, [$c2dd] + ld a, [ScriptVar] .asm_976b7 ld [$d265], a call GetPokemonName @@ -2146,7 +2146,7 @@ Script_itemtotext: ; 0x976d5 call GetScriptByte and a jr nz, .asm_976de ; 0x976d9 $3 - ld a, [$c2dd] + ld a, [ScriptVar] .asm_976de ld [$d265], a call GetItemName @@ -2228,8 +2228,8 @@ Script_readmoney: ; 0x97732 ; account (SingleByteParam) ; memory (SingleByteParam) - call Unknown_0x97771 - call Unknown_0x97861 + call Function97771 + call Function97861 ld hl, StringBuffer1 ld bc, $4306 call PrintNum @@ -2242,7 +2242,7 @@ Script_readcoins: ; 0x97747 ; parameters: ; memory (SingleByteParam) - call Unknown_0x97771 + call Function97771 ld hl, StringBuffer1 ld de, Coins ld bc, $4206 @@ -2256,8 +2256,8 @@ Script_RAM2MEM: ; 0x9775c ; parameters: ; memory (SingleByteParam) - call Unknown_0x97771 - ld de, $c2dd + call Function97771 + ld de, ScriptVar ld hl, StringBuffer1 ld bc, $4103 call PrintNum @@ -2265,7 +2265,7 @@ Script_RAM2MEM: ; 0x9775c jp Unknown_976c0 ; 0x97771 -Unknown_0x97771: ; 0x97771 +Function97771: ; 0x97771 ld hl, StringBuffer1 ld bc, $000b ld a, "@" @@ -2337,20 +2337,20 @@ Script_giveitem: ; 0x977ca call GetScriptByte cp $ff jr nz, .asm_977d4 ; 0x977cf $3 - ld a, [$c2dd] + ld a, [ScriptVar] .asm_977d4 - ld [$d106], a + ld [CurItem], a call GetScriptByte ld [$d10c], a - ld hl, $d892 + ld hl, NumItems call ReceiveItem jr nc, .asm_977eb ; 0x977e3 $6 ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ret .asm_977eb xor a - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x977f0 @@ -2361,18 +2361,18 @@ Script_takeitem: ; 0x977f0 ; quantity (DecimalParam) xor a - ld [$c2dd], a + ld [ScriptVar], a call GetScriptByte - ld [$d106], a + ld [CurItem], a call GetScriptByte ld [$d10c], a ld a, $ff ld [$d107], a - ld hl, $d892 + ld hl, NumItems call TossItem ret nc ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97812 @@ -2382,14 +2382,14 @@ Script_checkitem: ; 0x97812 ; item (ItemLabelByte) xor a - ld [$c2dd], a + ld [ScriptVar], a call GetScriptByte - ld [$d106], a - ld hl, $d892 + ld [CurItem], a + ld hl, NumItems call CheckItem ret nc - ld a, $1 - ld [$c2dd], a + ld a, 1 + ld [ScriptVar], a ret ; 0x97829 @@ -2399,8 +2399,8 @@ Script_givemoney: ; 0x97829 ; account (SingleByteParam) ; money (MoneyByteParam) - call Unknown_0x97861 - call Unknown_0x9786d + call Function97861 + call Function9786d callba Function15fd7 ret ; 0x97836 @@ -2411,8 +2411,8 @@ Script_takemoney: ; 0x97836 ; account (SingleByteParam) ; money (MoneyByteParam) - call Unknown_0x97861 - call Unknown_0x9786d + call Function97861 + call Function9786d callba Function15ffa ret ; 0x97843 @@ -2423,27 +2423,27 @@ Script_checkmoney: ; 0x97843 ; account (SingleByteParam) ; money (MoneyByteParam) - call Unknown_0x97861 - call Unknown_0x9786d + call Function97861 + call Function9786d callba Function1600b ; 0x9784f Unknown_9784f: ; 0x9784f - jr c, .asm_9785b ; 0x9784f $a - jr z, .asm_97857 ; 0x97851 $4 - ld a, $0 - jr .asm_9785d ; 0x97855 $6 -.asm_97857 - ld a, $1 - jr .asm_9785d ; 0x97859 $2 -.asm_9785b - ld a, $2 -.asm_9785d - ld [$c2dd], a + jr c, .two + jr z, .one + ld a, 0 + jr .done +.one + ld a, 1 + jr .done +.two + ld a, 2 +.done + ld [ScriptVar], a ret ; 0x97861 -Unknown_0x97861: ; 0x97861 +Function97861: ; 0x97861 call GetScriptByte and a ld de, $d84e @@ -2452,7 +2452,7 @@ Unknown_0x97861: ; 0x97861 ret ; 0x9786d -Unknown_0x9786d: ; 0x9786d +Function9786d: ; 0x9786d ld bc, $ffc3 push bc call GetScriptByte @@ -2512,13 +2512,13 @@ Script_checktime: ; 0x978ae ; time (SingleByteParam) xor a - ld [$c2dd], a + ld [ScriptVar], a callba Functionc000 call GetScriptByte and c ret z ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x978c3 @@ -2528,14 +2528,14 @@ Script_checkpoke: ; 0x978c3 ; pkmn (PokemonParam) xor a - ld [$c2dd], a + ld [ScriptVar], a call GetScriptByte - ld hl, $dcd8 - ld de, $0001 + ld hl, PartySpecies + ld de, 1 call IsInArray ret nc - ld a, $1 - ld [$c2dd], a + ld a, 1 + ld [ScriptVar], a ret ; 0x978da @@ -2545,13 +2545,13 @@ Script_addcellnum: ; 0x978da ; person (SingleByteParam) xor a - ld [$c2dd], a + ld [ScriptVar], a call GetScriptByte ld c, a callba Function90000 ret nc ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x978ef @@ -2561,13 +2561,13 @@ Script_delcellnum: ; 0x978ef ; person (SingleByteParam) xor a - ld [$c2dd], a + ld [ScriptVar], a call GetScriptByte ld c, a callba Function9000f ret nc ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97904 @@ -2577,13 +2577,13 @@ Script_checkcellnum: ; 0x97904 ; person (SingleByteParam) xor a - ld [$c2dd], a + ld [ScriptVar], a call GetScriptByte ld c, a callba Function90019 ret nc ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97919 @@ -2604,10 +2604,10 @@ Script_checkphonecall: ; 0x97926 ld a, [$dc31] and a - jr z, .asm_9792e ; 0x9792a $2 - ld a, $1 -.asm_9792e - ld [$c2dd], a + jr z, .ok + ld a, 1 +.ok + ld [ScriptVar], a ret ; 0x97932 @@ -2622,15 +2622,15 @@ Script_givepoke: ; 0x97932 ; pkmn_nickname (MultiByteParam) call GetScriptByte - ld [$d108], a + ld [CurPartySpecies], a call GetScriptByte - ld [$d143], a + ld [CurPartyLevel], a call GetScriptByte - ld [$d106], a + ld [CurItem], a call GetScriptByte and a ld b, a - jr z, .asm_9795d ; 0x97949 $12 + jr z, .ok ld hl, ScriptPos ld e, [hl] inc hl @@ -2639,10 +2639,10 @@ Script_givepoke: ; 0x97932 call GetScriptByte call GetScriptByte call GetScriptByte -.asm_9795d +.ok callba Functione277 ld a, b - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97968 @@ -2653,16 +2653,16 @@ Script_giveegg: ; 0x97968 ; level (DecimalParam) xor a - ld [$c2dd], a + ld [ScriptVar], a ld [$cf5f], a call GetScriptByte - ld [$d108], a + ld [CurPartySpecies], a call GetScriptByte - ld [$d143], a + ld [CurPartyLevel], a callba Functiondf8c ret nc ld a, $2 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97988 @@ -2710,7 +2710,7 @@ Script_checkevent: ; 0x979a4 jr z, .asm_979b7 ; 0x979b3 $2 ld a, $1 .asm_979b7 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x979bb @@ -2724,7 +2724,7 @@ Script_setflag: ; 0x979bb call GetScriptByte ld d, a ld b, $1 - call Unknown_0x979ee + call Function979ee ret ; 0x979c9 @@ -2738,7 +2738,7 @@ Script_clearflag: ; 0x979c9 call GetScriptByte ld d, a ld b, $0 - call Unknown_0x979ee + call Function979ee ret ; 0x979d7 @@ -2752,17 +2752,17 @@ Script_checkflag: ; 0x979d7 call GetScriptByte ld d, a ld b, $2 - call Unknown_0x979ee + call Function979ee ld a, c and a jr z, .asm_979ea ; 0x979e6 $2 ld a, $1 .asm_979ea - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x979ee -Unknown_0x979ee: ; 0x979ee +Function979ee: ; 0x979ee callba EngineFlagAction ret ; 0x979f5 @@ -2911,13 +2911,13 @@ Script_delcmdqueue: ; 0x97a9e ; byte (SingleByteParam) xor a - ld [$c2dd], a + ld [ScriptVar], a call GetScriptByte ld b, a callba Function97e5c ret c ld a, $1 - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97ab3 @@ -2978,7 +2978,7 @@ Script_warpcheck: ; 0x97af6 ret ; 0x97b01 -Unknown_0x97b01: ; 0x97b01 +Function97b01: ; 0x97b01 callba Function966d0 ret ; 0x97b08 @@ -3227,7 +3227,7 @@ Script_unknown0xa9: ; 0x97c15 callba Function4cffe ld a, c - ld [$c2dd], a + ld [ScriptVar], a ret ; 0x97c20 diff --git a/home.asm b/home.asm index caa595adb..fc923d3c8 100644 --- a/home.asm +++ b/home.asm @@ -57,6 +57,7 @@ INCLUDE "home/window.asm" Function2e4e:: ; 2e4e +; Unreferenced. scf ret ; 2e50 @@ -70,11 +71,10 @@ Function2ebb:: ; 2ebb bit 1, a ret z ld a, [hJoyDown] - bit A_BUTTON, a + bit 1, a ; B_BUTTON ret ; 2ec6 - Function2ec6:: ; 2ec6 xor a ret @@ -219,7 +219,7 @@ Function309d:: ; 309d ld [rSVBK], a ld hl, TileMap ld de, $d000 - ld bc, 360 + ld bc, TileMapEnd - TileMap call CopyBytes pop af ld [rSVBK], a @@ -242,7 +242,7 @@ Function30bf:: ; 30bf ld [rSVBK], a ld hl, $d000 ld de, TileMap - ld bc, 360 + ld bc, TileMapEnd - TileMap call CopyBytes pop af ld [rSVBK], a @@ -289,8 +289,8 @@ IsInArray:: ; 30e1 ; 30f4 SkipNames:: ; 0x30f4 -; skips n names where n = a - ld bc, $000b ; name length +; Skip a names. + ld bc, NAME_LENGTH and a ret z .loop @@ -301,7 +301,7 @@ SkipNames:: ; 0x30f4 ; 0x30fe AddNTimes:: ; 0x30fe -; adds bc n times where n = a +; Add bc * a to hl. and a ret z .loop @@ -400,7 +400,7 @@ PrintLetterDelay:: ; 313d CopyDataUntil:: ; 318c -; Copy [hl .. bc) to [de .. de + bc - hl). +; Copy [hl .. bc) to de. ; In other words, the source data is ; from hl up to but not including bc, @@ -550,13 +550,14 @@ WaitBGMap:: ; 31f6 Function3200:: ; 0x3200 ld a, [hCGB] and a - jr z, .asm_320e + jr z, .bg0 + ld a, 2 ld [hBGMapMode], a ld c, 4 call DelayFrames -.asm_320e +.bg0 ld a, 1 ld [hBGMapMode], a ld c, 4 @@ -575,17 +576,17 @@ Function3218:: ; 3218 Function321c:: ; 321c ld a, [hCGB] and a - jr z, .asm_322e + jr z, .dmg ld a, [$c2ce] cp 0 - jr z, .asm_322e + jr z, .dmg ld a, 1 ld [hBGMapMode], a jr Function323d -.asm_322e +.dmg ld a, 1 ld [hBGMapMode], a ld c, 4 @@ -616,10 +617,11 @@ Function3246:: ; 3246 push af xor a ld [$ffde], a -.asm_3252 +.wait ld a, [rLY] cp $7f - jr c, .asm_3252 ; 3256 $fa + jr c, .wait + di ld a, $1 ld [rVBK], a @@ -629,11 +631,12 @@ Function3246:: ; 3246 ld [rVBK], a ld hl, TileMap call Function327b -.asm_326d +.wait2 ld a, [rLY] cp $7f - jr c, .asm_326d ; 3271 $fa + jr c, .wait2 ei + pop af ld [$ffde], a pop af @@ -651,10 +654,10 @@ Function327b:: ; 327b ld [$ffd3], a ld b, $2 ld c, $41 -.asm_328c - pop de -rept 9 +.loop +rept 10 + pop de .loop\@ ld a, [$ff00+c] and b @@ -663,27 +666,18 @@ rept 9 inc l ld [hl], d inc l - pop de endr -.asm_32de - ld a, [$ff00+c] - and b - jr nz, .asm_32de - ld [hl], e - inc l - ld [hl], d - inc l - ld de, $000c add hl, de ld a, [$ffd3] dec a ld [$ffd3], a - jr nz, .asm_328c + jr nz, .loop + ld a, [hSPBuffer] ld l, a - ld a, [$ffda] + ld a, [hSPBuffer + 1] ld h, a ld sp, hl ret @@ -2464,6 +2458,7 @@ GetBattleAnimByte:: ; 3af0 ; 3b0c Function3b0c:: ; 3b0c + ld a, [hLCDStatCustom] and a ret z @@ -2486,14 +2481,17 @@ Function3b0c:: ; 3b0c Function3b2a:: ; 3b2a + ld [$c3b8], a ld a, [hROMBank] push af + ld a, BANK(Function8cfd6) rst Bankswitch - ld a, [$c3b8] + call Function8cfd6 + pop af rst Bankswitch @@ -2502,14 +2500,17 @@ Function3b2a:: ; 3b2a Function3b3c:: ; 3b3c + ld [$c3b8], a ld a, [hROMBank] push af + ld a, BANK(Function8d120) rst Bankswitch - ld a, [$c3b8] + call Function8d120 + pop af rst Bankswitch @@ -2659,23 +2660,21 @@ PlayMusic2:: ; 3bbc PlayCryHeader:: ; 3be3 -; Play a cry given parameters in header de +; Play a cry given parameters at header de push hl push de push bc push af -; Save current bank ld a, [hROMBank] push af -; Cry headers are stuck in one bank. + ; Cry headers are stuck in one bank. ld a, BANK(CryHeaders) ld [hROMBank], a ld [MBC3RomBank], a -; Each header is 6 bytes long: ld hl, CryHeaders add hl, de add hl, de @@ -2696,7 +2695,7 @@ PlayCryHeader:: ; 3be3 ld a, [hli] ld [CryLength], a ld a, [hl] - ld [CryLength+1], a + ld [CryLength + 1], a ld a, BANK(PlayCry) ld [hROMBank], a @@ -2725,20 +2724,21 @@ PlaySFX:: ; 3c23 push bc push af -; Is something already playing? + ; Is something already playing? call CheckSFX jr nc, .play -; Does it have priority? + + ; Does it have priority? ld a, [CurSFX] cp e - jr c, .quit + jr c, .done .play ld a, [hROMBank] push af ld a, BANK(_PlaySFX) ld [hROMBank], a - ld [MBC3RomBank], a ; bankswitch + ld [MBC3RomBank], a ld a, e ld [CurSFX], a @@ -2746,8 +2746,9 @@ PlaySFX:: ; 3c23 pop af ld [hROMBank], a - ld [MBC3RomBank], a ; bankswitch -.quit + ld [MBC3RomBank], a + +.done pop af pop bc pop de @@ -2768,47 +2769,47 @@ WaitSFX:: ; 3c55 push hl -.loop - ; ch5 on? - ld hl, Channel5 + Channel1Flags - Channel1 +.wait + ld hl, Channel5Flags bit 0, [hl] - jr nz, .loop - ; ch6 on? - ld hl, Channel6 + Channel1Flags - Channel1 + jr nz, .wait + ld hl, Channel6Flags bit 0, [hl] - jr nz, .loop - ; ch7 on? - ld hl, Channel7 + Channel1Flags - Channel1 + jr nz, .wait + ld hl, Channel7Flags bit 0, [hl] - jr nz, .loop - ; ch8 on? - ld hl, Channel8 + Channel1Flags - Channel1 + jr nz, .wait + ld hl, Channel8Flags bit 0, [hl] - jr nz, .loop + jr nz, .wait pop hl ret ; 3c74 -Function3c74:: ; 3c74 +IsSFXPlaying:: ; 3c74 +; Return carry if no sound effect is playing. +; The inverse of CheckSFX. push hl - ld hl, $c1cc + + ld hl, Channel5Flags bit 0, [hl] - jr nz, .asm_3c94 - ld hl, $c1fe + jr nz, .playing + ld hl, Channel6Flags bit 0, [hl] - jr nz, .asm_3c94 - ld hl, $c230 + jr nz, .playing + ld hl, Channel7Flags bit 0, [hl] - jr nz, .asm_3c94 - ld hl, $c262 + jr nz, .playing + ld hl, Channel8Flags bit 0, [hl] - jr nz, .asm_3c94 + jr nz, .playing + pop hl scf ret -.asm_3c94 +.playing pop hl and a ret @@ -2833,45 +2834,47 @@ VolumeOff:: ; 3ca3 ; 3ca8 Function3ca8:: ; 3ca8 - ld a, $4 + ld a, 4 ld [MusicFade], a ret ; 3cae Function3cae:: ; 3cae - ld a, $84 + ld a, 4 | 1 << 7 ld [MusicFade], a ret ; 3cb4 -Function3cb4:: ; 3cb4 -.asm_3cb4 +SkipMusic:: ; 3cb4 +; Skip a frames of music. and a ret z dec a call UpdateSound - jr .asm_3cb4 + jr SkipMusic ; 3cbc -Function3cbc:: ; 3cbc +FadeToMapMusic:: ; 3cbc push hl push de push bc push af - call Function3d97 - ld a, [CurMusic] + + call GetMapMusic + ld a, [wMapMusic] cp e - jr z, .asm_3cda - ld a, $8 + jr z, .done + + ld a, 8 ld [MusicFade], a ld a, e ld [MusicFadeIDLo], a ld a, d ld [MusicFadeIDHi], a ld a, e - ld [CurMusic], a + ld [wMapMusic], a -.asm_3cda +.done pop af pop bc pop de @@ -2879,25 +2882,27 @@ Function3cbc:: ; 3cbc ret ; 3cdf -Function3cdf:: ; 3cdf +PlayMapMusic:: ; 3cdf push hl push de push bc push af - call Function3d97 - ld a, [CurMusic] + + call GetMapMusic + ld a, [wMapMusic] cp e - jr z, .asm_3cfe + jr z, .done + push de ld de, MUSIC_NONE call PlayMusic call DelayFrame pop de ld a, e - ld [CurMusic], a + ld [wMapMusic], a call PlayMusic -.asm_3cfe +.done pop af pop bc pop de @@ -2905,27 +2910,30 @@ Function3cdf:: ; 3cdf ret ; 3d03 -Function3d03:: ; 3d03 +EnterMapMusic:: ; 3d03 push hl push de push bc push af + xor a ld [$c2c1], a ld de, MUSIC_BICYCLE ld a, [PlayerState] - cp $1 - jr z, .asm_3d18 - call Function3d97 -.asm_3d18 + cp PLAYER_BIKE + jr z, .play + call GetMapMusic +.play push de ld de, MUSIC_NONE call PlayMusic call DelayFrame pop de + ld a, e - ld [CurMusic], a + ld [wMapMusic], a call PlayMusic + pop af pop bc pop de @@ -2936,9 +2944,9 @@ Function3d03:: ; 3d03 Function3d2f:: ; 3d2f ld a, [$c2c1] and a - jr z, Function3d47 + jr z, RestartMapMusic xor a - ld [CurMusic], a + ld [wMapMusic], a ld de, MUSIC_NONE call PlayMusic call DelayFrame @@ -2947,7 +2955,7 @@ Function3d2f:: ; 3d2f ret ; 3d47 -Function3d47:: ; 3d47 +RestartMapMusic:: ; 3d47 push hl push de push bc @@ -2955,7 +2963,7 @@ Function3d47:: ; 3d47 ld de, MUSIC_NONE call PlayMusic call DelayFrame - ld a, [CurMusic] + ld a, [wMapMusic] ld e, a ld d, 0 call PlayMusic @@ -2966,52 +2974,58 @@ Function3d47:: ; 3d47 ret ; 3d62 -Function3d62:: ; 3d62 +SpecialMapMusic:: ; 3d62 ld a, [PlayerState] - cp $4 - jr z, .asm_3d7b - cp $8 - jr z, .asm_3d7b + cp PLAYER_SURF + jr z, .surf + cp PLAYER_SURF_PIKA + jr z, .surf + ld a, [StatusFlags2] bit 2, a - jr nz, .asm_3d80 -.asm_3d74 + jr nz, .contest + +.no and a ret - ld de, $0013 +.bike + ld de, MUSIC_BICYCLE scf ret -.asm_3d7b - ld de, $0021 +.surf + ld de, MUSIC_SURF scf ret -.asm_3d80 +.contest ld a, [MapGroup] - cp $a - jr nz, .asm_3d74 + cp GROUP_ROUTE_35_NATIONAL_PARK_GATE + jr nz, .no ld a, [MapNumber] - cp $f - jr z, .asm_3d92 - cp $11 - jr nz, .asm_3d74 + cp MAP_ROUTE_35_NATIONAL_PARK_GATE + jr z, .ranking + cp MAP_ROUTE_36_NATIONAL_PARK_GATE + jr nz, .no -.asm_3d92 - ld de, $0058 +.ranking + ld de, MUSIC_BUG_CATCHING_CONTEST_RANKING scf ret ; 3d97 -Function3d97:: ; 3d97 - call Function3d62 +GetMapMusic:: ; 3d97 + call SpecialMapMusic ret c - call Function2cbd + call GetMapHeaderMusic ret ; 3d9f Function3d9f:: ; 3d9f +; Places a BCD number at the +; upper center of the screen. +; Unreferenced. ld a, $20 ld [$c498], a ld [$c49c], a @@ -3024,44 +3038,44 @@ Function3d9f:: ; 3d9f ld [$c49f], a ld a, [$c296] cp $64 - jr nc, .asm_3dd5 - add $1 + jr nc, .max + add 1 daa ld b, a swap a and $f - add $f6 + add "0" ld [$c49a], a ld a, b and $f - add $f6 + add "0" ld [$c49e], a ret -.asm_3dd5 - ld a, $ff +.max + ld a, "9" ld [$c49a], a ld [$c49e], a ret ; 3dde CheckSFX:: ; 3dde -; returns carry if sfx channels are active - ld a, [$c1cc] ; 1 +; Return carry if any SFX channels are active. + ld a, [Channel5Flags] bit 0, a - jr nz, .quit - ld a, [$c1fe] ; 2 + jr nz, .playing + ld a, [Channel6Flags] bit 0, a - jr nz, .quit - ld a, [$c230] ; 3 + jr nz, .playing + ld a, [Channel7Flags] bit 0, a - jr nz, .quit - ld a, [$c262] ; 4 + jr nz, .playing + ld a, [Channel8Flags] bit 0, a - jr nz, .quit + jr nz, .playing and a ret -.quit +.playing scf ret ; 3dfe @@ -3083,9 +3097,9 @@ ChannelsOff:: ; 3e10 ; Quickly turn off music channels xor a ld [Channel1Flags], a - ld [$c136], a - ld [$c168], a - ld [$c19a], a + ld [Channel2Flags], a + ld [Channel3Flags], a + ld [Channel4Flags], a ld [SoundInput], a ret ; 3e21 @@ -3093,15 +3107,17 @@ ChannelsOff:: ; 3e10 SFXChannelsOff:: ; 3e21 ; Quickly turn off sound effect channels xor a - ld [$c1cc], a - ld [$c1fe], a - ld [$c230], a - ld [$c262], a + ld [Channel5Flags], a + ld [Channel6Flags], a + ld [Channel7Flags], a + ld [Channel8Flags], a ld [SoundInput], a ret ; 3e32 + Function3e32:: ; 3e32 +; Mobile cp $2 ld [$c988], a ld a, l @@ -3109,6 +3125,7 @@ Function3e32:: ; 3e32 ld a, h ld [$c987], a jr nz, .asm_3e4f + ld [$c982], a ld a, l ld [$c981], a @@ -3130,13 +3147,13 @@ Function3e32:: ; 3e32 jp Function110030 ; 3e60 - Function3e60:: ; 3e60 ld [$c986], a ld a, l ld [$c987], a ld a, h ld [$c988], a + pop bc ld a, b ld [$c981], a @@ -3152,7 +3169,6 @@ Function3e60:: ; 3e60 ret ; 3e80 - Function3e80:: ; 3e80 ld a, [hROMBank] push af diff --git a/home/init.asm b/home/init.asm index b879b9802..3d83a03cf 100644 --- a/home/init.asm +++ b/home/init.asm @@ -172,7 +172,7 @@ Init:: ; 17d call SoundRestart xor a - ld [CurMusic], a + ld [wMapMusic], a jp GameInit ; 245 diff --git a/home/map.asm b/home/map.asm index d581eb6b4..6c7a79592 100644 --- a/home/map.asm +++ b/home/map.asm @@ -1034,7 +1034,7 @@ Function2653:: ; 2653 ; 2674 Function2674:: ; 2674 - callba Unknown_0x974f3 + callba Function974f3 ld a, [ScriptMode] push af ld hl, ScriptFlags @@ -2021,8 +2021,8 @@ Function2bae:: ; 2bae callba Function8c001 call Function2173 call Function2821 - ld a, $9 - call Function3cb4 + ld a, 9 + call SkipMusic pop af rst Bankswitch @@ -2259,48 +2259,51 @@ GetWorldMapLocation:: ; 0x2caf ret ; 0x2cbd -Function2cbd:: ; 2cbd +GetMapHeaderMusic:: ; 2cbd +RADIO_TOWER_MUSIC EQU 7 + push hl push bc - ld de, $0006 + ld de, 6 ; music call GetMapHeaderMember ld a, c - cp $64 - jr z, .asm_2cee - bit 7, c - jr nz, .asm_2cda + cp MUSIC_MAHOGANY_MART + jr z, .mahoganymart + bit RADIO_TOWER_MUSIC, c + jr nz, .radiotower callba Function8b342 ld e, c - ld d, $0 -.asm_2cd7 + ld d, 0 +.done pop bc pop hl ret -.asm_2cda +.radiotower ld a, [StatusFlags2] bit 0, a - jr z, .asm_2ce6 - ld de, $0056 - jr .asm_2cd7 + jr z, .clearedradiotower + ld de, MUSIC_ROCKET_OVERTURE + jr .done -.asm_2ce6 +.clearedradiotower + ; the rest of the byte ld a, c - and $7f + and 1 << RADIO_TOWER_MUSIC - 1 ld e, a - ld d, $0 - jr .asm_2cd7 + ld d, 0 + jr .done -.asm_2cee +.mahoganymart ld a, [StatusFlags2] bit 7, a - jr z, .asm_2cfa - ld de, $0048 - jr .asm_2cd7 + jr z, .clearedmahogany + ld de, MUSIC_ROCKET_HIDEOUT + jr .done -.asm_2cfa - ld de, $0026 - jr .asm_2cd7 +.clearedmahogany + ld de, MUSIC_CHERRYGROVE_CITY + jr .done ; 2cff Function2cff:: ; 2cff diff --git a/main.asm b/main.asm index b4d1bd77b..e40adf0d2 100644 --- a/main.asm +++ b/main.asm @@ -3747,7 +3747,7 @@ Function5ae8: ; 5ae8 call DelayFrame ld de, MUSIC_MAIN_MENU ld a, e - ld [CurMusic], a + ld [wMapMusic], a call PlayMusic callba MainMenu jp Function6219 @@ -7940,8 +7940,8 @@ SpecialsPointers: ; c029 dbw BANK(Functionc230), Functionc230 dbw BANK(SpecialSeenMon), SpecialSeenMon dbw BANK(WaitSFX),WaitSFX - dbw BANK(Function3cdf), Function3cdf - dbw BANK(Function3d47), Function3d47 + dbw BANK(PlayMapMusic), PlayMapMusic + dbw BANK(RestartMapMusic), RestartMapMusic dbw BANK(Function12324), Function12324 dbw BANK(Function8379), Function8379 dbw BANK(Functionc25a), Functionc25a @@ -8402,7 +8402,7 @@ SpecialSnorlaxAwake: ; 0xc43d ; ScriptVar is 1 if the conditions are met, otherwise 0. ; check background music - ld a, [CurMusic] + ld a, [wMapMusic] cp MUSIC_POKE_FLUTE_CHANNEL jr nz, .nope @@ -10774,7 +10774,7 @@ Functiond0bc: ; d0bc call MaxVolume ld de, MUSIC_BICYCLE ld a, e - ld [CurMusic], a + ld [wMapMusic], a call PlayMusic ld a, $1 ret @@ -23072,6 +23072,8 @@ AddSpriteGFX: ; 142e5 LoadSpriteGFX: ; 14306 +; Bug: b is not preserved, so +; it's useless as a loop count. ld hl, UsedSprites ld b, $20 @@ -25882,11 +25884,11 @@ MapSetupCommands: ; 15440 dbw BANK(EnableLCD), EnableLCD dbw BANK(DisableLCD), DisableLCD dbw BANK(SoundRestart), SoundRestart - dbw BANK(Function3cdf), Function3cdf - dbw BANK(Function3d47), Function3d47 - dbw BANK(Function3cbc), Function3cbc + dbw BANK(PlayMapMusic), PlayMapMusic + dbw BANK(RestartMapMusic), RestartMapMusic + dbw BANK(FadeToMapMusic), FadeToMapMusic dbw BANK(Function15574), Function15574 - dbw BANK(Function3d03), Function3d03 + dbw BANK(EnterMapMusic), EnterMapMusic dbw BANK(Function15587), Function15587 dbw BANK(Function3cae), Function3cae dbw BANK(Function24cd), Function24cd @@ -26045,8 +26047,8 @@ Function1554e: ; 1554e (5:554e) ; 15567 Function15567: ; 15567 - ld a, $6 - call Function3cb4 + ld a, 6 + call SkipMusic ret ; 1556d @@ -29488,12 +29490,12 @@ Function16be4: ; 16be4 ld de, UnownDexATile ld hl, $8ef0 - ld bc, $0501 + lb bc, BANK(UnownDexBTile), 1 call Request1bpp ld de, UnownDexBTile ld hl, $8f50 - ld bc, $0501 + lb bc, BANK(UnownDexBTile), 1 call Request1bpp ld hl, TileMap @@ -29554,7 +29556,7 @@ Function16be4: ; 16be4 ld a, [$cf63] push af callba Function84560 - call Function3d47 + call RestartMapMusic pop af ld [$cf63], a jr .asm_16c6b @@ -29969,7 +29971,7 @@ Function16f5e:: ; 16f5e call Function1d6e call Function16f70 call Function2b4d - call Function3d47 + call RestartMapMusic jp Function2dcf ; 16f70 @@ -40609,7 +40611,7 @@ Function2a111: ; 2a111 Function2a124:: ; 2a124 ; Pokemon March and Ruins of Alph signal double encounter rate. ; Pokemon Lullaby halves encounter rate. - ld a, [CurMusic] + ld a, [wMapMusic] cp MUSIC_POKEMON_MARCH jr z, .asm_2a135 cp MUSIC_RUINS_OF_ALPH_RADIO @@ -47388,8 +47390,8 @@ Function414b7: ; 414b7 ld hl, PokedexSlowpokeLZ ld de, VTiles0 call Decompress - ld a, $6 - call Function3cb4 + ld a, 6 + call SkipMusic call EnableLCD ret @@ -47893,7 +47895,7 @@ Function423ff: ; 423ff ret nz ld a, [$d268] and a - call nz, Function3d47 + call nz, RestartMapMusic ret ; 42414 @@ -52964,7 +52966,7 @@ MainMenu_MysteryGift: ; 49ef5 MainMenu_Mobile: ; 49efc call WhiteBGMap ld a, MUSIC_MOBILE_ADAPTER_MENU - ld [CurMusic], a + ld [wMapMusic], a ld de, MUSIC_MOBILE_ADAPTER_MENU call Function4a6c5 Function49f0a: ; 49f0a @@ -53031,7 +53033,7 @@ Function49f16: ; 49f16 call WhiteBGMap call ClearTileMap ld a, MUSIC_MAIN_MENU - ld [CurMusic], a + ld [wMapMusic], a ld de, MUSIC_MAIN_MENU call Function4a6c5 ret @@ -57194,7 +57196,7 @@ Function4ddd6: ; 4ddd6 (13:5dd6) ; no known jump sources Function4dde6: ; 4dde6 (13:5de6) - call Function3c74 + call IsSFXPlaying ret nc ld a, [$cf63] inc a @@ -62432,7 +62434,7 @@ TryStep: ; 8016b call CheckLandPermissions jr c, .asm_801be - call Function80341 + call IsNPCInFront and a jr z, .asm_801be cp 2 @@ -62493,7 +62495,7 @@ TrySurfStep: ; 801c0 ld [$d040], a jr c, .asm_801f1 - call Function80341 + call IsNPCInFront ld [$d03f], a and a jr z, .asm_801f1 @@ -62511,7 +62513,7 @@ TrySurfStep: ; 801c0 .ExitWater call WaterToLandSprite - call Function3cdf ; PlayMapMusic + call PlayMapMusic ld a, STEP_WALK call DoStep ld a, 6 @@ -62773,7 +62775,7 @@ GetMovementAction: ; 802ec ; 80341 -Function80341: ; 80341 +IsNPCInFront: ; 80341 ld a, 0 ld [hConnectionStripLength], a @@ -65883,7 +65885,7 @@ Function8474c: ; 8474c ; 84753 Function84753: ; 84753 - call Function3d47 + call RestartMapMusic ret ; 84757 @@ -69841,7 +69843,7 @@ Function89d0d: ; 89d0d (22:5d0d) call Function89240 ld c, $18 call DelayFrames - call Function3d47 + call RestartMapMusic ret ; 89d4e (22:5d4e) @@ -81610,8 +81612,8 @@ Function90bea: ; 90bea (24:4bea) call Function90c4e callba Function8cf53 call Function90d32 - ld a, $8 - call Function3cb4 + ld a, 8 + call SkipMusic ld a, $e3 ld [rLCDC], a call Function90d70 @@ -82923,13 +82925,13 @@ Function91492: ; 91492 cp $fe jr z, .asm_914a3 cp $ff - call z, Function3d03 + call z, EnterMapMusic xor a ld [$c6dc], a ret .asm_914a3 - call Function3d47 + call RestartMapMusic xor a ld [$c6dc], a ret @@ -83359,7 +83361,7 @@ Function91854: ; 91854 (24:5854) call PlayMusic pop de ld a, e - ld [CurMusic], a ; $c2c0 + ld [wMapMusic], a call PlayMusic ret @@ -83446,8 +83448,8 @@ Function9191c: ; 9191c call DisableLCD call Function90c4e callba Function8cf53 - ld a, $8 - call Function3cb4 + ld a, 8 + call SkipMusic ld a, $e3 ld [rLCDC], a call Function90d56 @@ -96955,8 +96957,8 @@ Functione33e8: ; e33e8 (38:73e8) ld hl, PCSelectLZ ld de, $8000 call Decompress - ld a, $6 - call Function3cb4 + ld a, 6 + call SkipMusic call EnableLCD ret ; e3419 (38:7419) @@ -97617,7 +97619,7 @@ Options_Sound: ; e43dd .SetMono res 5, [hl] - call Function3d47 ;reload the music + call RestartMapMusic .ToggleMono ld de, .Mono @@ -97625,7 +97627,7 @@ Options_Sound: ; e43dd .SetStereo set 5, [hl] - call Function3d47 ;reload the music + call RestartMapMusic .ToggleStereo ld de, .Stereo @@ -101561,7 +101563,7 @@ NPCTrade:: ; fcba8 ld hl, TradedForText call PrintText - call Function3d47 + call RestartMapMusic ld a, TRADE_COMPLETE @@ -112685,7 +112687,7 @@ Function11b7e5: ; 11b7e5 .asm_11b872 call Function2b3c - call Function3d47 + call RestartMapMusic ret ; 11b879 @@ -117747,7 +117749,7 @@ Function17d2ce: ; 17d2ce ld [rSVBK], a ld de, MUSIC_MOBILE_CENTER ld a, e - ld [CurMusic], a + ld [wMapMusic], a ld [MusicFadeIDLo], a ld a, d ld [MusicFadeIDHi], a @@ -119158,7 +119160,7 @@ Function17ff23: ; 17ff23 ret z ld a, $8 ld [MusicFade], a - ld a, [CurMusic] + ld a, [wMapMusic] ld [MusicFadeIDLo], a xor a ld [MusicFadeIDHi], a diff --git a/misc/crystal_misc.asm b/misc/crystal_misc.asm index 2e27422fb..1b402b61c 100644 --- a/misc/crystal_misc.asm +++ b/misc/crystal_misc.asm @@ -257,7 +257,7 @@ Function17a7ff: ; 17a7ff (5e:67ff) ; no known jump sources Function17a81a: ; 17a81a (5e:681a) - call Function3c74 + call IsSFXPlaying ret nc ld a, [hJoyPressed] ; $ff00+$a7 and $3 diff --git a/wram.asm b/wram.asm index b2327d18a..bb510806a 100644 --- a/wram.asm +++ b/wram.asm @@ -365,8 +365,7 @@ CryTracks:: ; c2bd CurSFX:: ; c2bf ; id of sfx currently playing ds 1 -CurMusic:: ; c2c0 -; id of music currently playing +wMapMusic:: ; c2c0 ds 1 SECTION "auto",WRAM0[$c2c7]