diff options
-rw-r--r-- | asm/battle_anim.s | 32 | ||||
-rw-r--r-- | asm/battle_controller_link_opponent.s | 12 | ||||
-rw-r--r-- | asm/battle_controller_opponent.s | 12 | ||||
-rw-r--r-- | asm/battle_controller_player.s | 16 | ||||
-rw-r--r-- | asm/battle_gfx_sfx_util.s | 8 | ||||
-rw-r--r-- | asm/diploma.s | 2 | ||||
-rw-r--r-- | asm/hall_of_fame.s | 8 | ||||
-rw-r--r-- | asm/help_system.s | 16 | ||||
-rw-r--r-- | asm/item_use.s | 2 | ||||
-rw-r--r-- | asm/link.s | 12 | ||||
-rw-r--r-- | asm/overworld.s | 4 | ||||
-rw-r--r-- | asm/party_menu.s | 2 | ||||
-rw-r--r-- | asm/pokeball.s | 8 | ||||
-rw-r--r-- | asm/save_failed_screen.s | 8 | ||||
-rw-r--r-- | asm/scrcmd.s | 4 | ||||
-rw-r--r-- | asm/sound.s | 1541 | ||||
-rw-r--r-- | asm/unk_81507FC.s | 4 | ||||
-rw-r--r-- | common_syms/m4a_2.txt | 8 | ||||
-rw-r--r-- | common_syms/sound.txt | 1 | ||||
-rw-r--r-- | data/data.s | 2 | ||||
-rw-r--r-- | data/sound_data.s | 4 | ||||
-rw-r--r-- | include/constants/songs.h | 1 | ||||
-rw-r--r-- | include/gba/m4a_internal.h | 4 | ||||
-rw-r--r-- | ld_script.txt | 2 | ||||
-rw-r--r-- | src/m4a_2.c | 8 | ||||
-rw-r--r-- | src/sound.c | 628 | ||||
-rw-r--r-- | src/text.c | 8 | ||||
-rw-r--r-- | sym_bss.txt | 16 | ||||
-rw-r--r-- | sym_common.txt | 4 | ||||
-rw-r--r-- | sym_ewram.txt | 7 |
30 files changed, 730 insertions, 1654 deletions
diff --git a/asm/battle_anim.s b/asm/battle_anim.s index 4bed76663..c258fa7b1 100644 --- a/asm/battle_anim.s +++ b/asm/battle_anim.s @@ -272,7 +272,7 @@ _080726EE: beq _08072706 cmp r8, r0 bne _080726EC - ldr r0, _0807272C @ =gMPlay_BGM + ldr r0, _0807272C @ =gMPlayInfo_BGM movs r2, 0x80 bl m4aMPlayVolumeControl _08072706: @@ -295,7 +295,7 @@ _08072706: bx r0 .align 2, 0 _08072728: .4byte 0x0000ffff -_0807272C: .4byte gMPlay_BGM +_0807272C: .4byte gMPlayInfo_BGM _08072730: .4byte gUnknown_2022984 _08072734: .4byte gUnknown_2022986 _08072738: .4byte gUnknown_2022988 @@ -868,9 +868,9 @@ _08072B62: _08072B6C: .4byte gUnknown_2037F12 _08072B70: .4byte gUnknown_2037EE0 _08072B74: - ldr r0, _08072BE8 @ =gMPlay_SE1 + ldr r0, _08072BE8 @ =gMPlayInfo_SE1 bl m4aMPlayStop - ldr r0, _08072BEC @ =gMPlay_SE2 + ldr r0, _08072BEC @ =gMPlayInfo_SE2 bl m4aMPlayStop _08072B80: ldr r1, _08072BF0 @ =gUnknown_2037F12 @@ -905,7 +905,7 @@ _08072BB2: mov r1, r8 cmp r1, 0 bne _08072BDC - ldr r0, _08072C00 @ =gMPlay_BGM + ldr r0, _08072C00 @ =gMPlayInfo_BGM ldr r1, _08072BF4 @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -923,13 +923,13 @@ _08072BDC: pop {r0} bx r0 .align 2, 0 -_08072BE8: .4byte gMPlay_SE1 -_08072BEC: .4byte gMPlay_SE2 +_08072BE8: .4byte gMPlayInfo_SE1 +_08072BEC: .4byte gMPlayInfo_SE2 _08072BF0: .4byte gUnknown_2037F12 _08072BF4: .4byte 0x0000ffff _08072BF8: .4byte gUnknown_83ACC08 _08072BFC: .4byte gUnknown_2037EEE -_08072C00: .4byte gMPlay_BGM +_08072C00: .4byte gMPlayInfo_BGM _08072C04: .4byte gUnknown_2037EE1 thumb_func_end sub_8072B08 @@ -3652,17 +3652,17 @@ ScriptCmd_waitsound: @ 80740E0 lsrs r0, 16 cmp r0, 0x5A bls _0807412E - ldr r0, _08074120 @ =gMPlay_SE1 + ldr r0, _08074120 @ =gMPlayInfo_SE1 bl m4aMPlayStop - ldr r0, _08074124 @ =gMPlay_SE2 + ldr r0, _08074124 @ =gMPlayInfo_SE2 bl m4aMPlayStop strh r5, [r4] b _08074152 .align 2, 0 _08074118: .4byte gUnknown_2037EE3 _0807411C: .4byte gUnknown_2037F12 -_08074120: .4byte gMPlay_SE1 -_08074124: .4byte gMPlay_SE2 +_08074120: .4byte gMPlayInfo_SE1 +_08074124: .4byte gMPlayInfo_SE2 _08074128: ldr r1, _08074138 @ =gUnknown_2037F12 movs r0, 0 @@ -4088,9 +4088,9 @@ _08074454: .4byte gSprites thumb_func_start sub_8074458 sub_8074458: @ 8074458 push {lr} - ldr r0, _08074474 @ =gMPlay_SE1 + ldr r0, _08074474 @ =gMPlayInfo_SE1 bl m4aMPlayStop - ldr r0, _08074478 @ =gMPlay_SE2 + ldr r0, _08074478 @ =gMPlayInfo_SE2 bl m4aMPlayStop ldr r1, _0807447C @ =gUnknown_2037ED4 ldr r0, [r1] @@ -4099,8 +4099,8 @@ sub_8074458: @ 8074458 pop {r0} bx r0 .align 2, 0 -_08074474: .4byte gMPlay_SE1 -_08074478: .4byte gMPlay_SE2 +_08074474: .4byte gMPlayInfo_SE1 +_08074478: .4byte gMPlayInfo_SE2 _0807447C: .4byte gUnknown_2037ED4 thumb_func_end sub_8074458 diff --git a/asm/battle_controller_link_opponent.s b/asm/battle_controller_link_opponent.s index 8114a4c7b..405114d91 100644 --- a/asm/battle_controller_link_opponent.s +++ b/asm/battle_controller_link_opponent.s @@ -381,7 +381,7 @@ _0803A936: lsrs r0, 24 cmp r0, 0x1 bne _0803A988 - ldr r0, _0803A978 @ =gMPlay_BGM + ldr r0, _0803A978 @ =gMPlayInfo_BGM bl m4aMPlayContinue b _0803A988 .align 2, 0 @@ -392,9 +392,9 @@ _0803A968: .4byte SpriteCallbackDummy _0803A96C: .4byte gUnknown_2024018 _0803A970: .4byte 0x000027f9 _0803A974: .4byte gBattleTypeFlags -_0803A978: .4byte gMPlay_BGM +_0803A978: .4byte gMPlayInfo_BGM _0803A97C: - ldr r0, _0803A9B4 @ =gMPlay_BGM + ldr r0, _0803A9B4 @ =gMPlayInfo_BGM ldr r1, _0803A9B8 @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -424,7 +424,7 @@ _0803A9AA: pop {r0} bx r0 .align 2, 0 -_0803A9B4: .4byte gMPlay_BGM +_0803A9B4: .4byte gMPlayInfo_BGM _0803A9B8: .4byte 0x0000ffff _0803A9BC: .4byte gUnknown_2024018 _0803A9C0: .4byte gActiveBattler @@ -1078,7 +1078,7 @@ sub_803AEDC: @ 803AEDC lsls r0, 24 cmp r0, 0 bne _0803AF14 - ldr r0, _0803AF20 @ =gMPlay_BGM + ldr r0, _0803AF20 @ =gMPlayInfo_BGM ldr r1, _0803AF24 @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -1090,7 +1090,7 @@ _0803AF14: .align 2, 0 _0803AF18: .4byte gUnknown_2024018 _0803AF1C: .4byte gActiveBattler -_0803AF20: .4byte gMPlay_BGM +_0803AF20: .4byte gMPlayInfo_BGM _0803AF24: .4byte 0x0000ffff thumb_func_end sub_803AEDC diff --git a/asm/battle_controller_opponent.s b/asm/battle_controller_opponent.s index 9de63d725..5a7b6d684 100644 --- a/asm/battle_controller_opponent.s +++ b/asm/battle_controller_opponent.s @@ -394,7 +394,7 @@ _08035CD0: ands r0, r1 cmp r0, 0 beq _08035DA4 - ldr r0, _08035DA0 @ =gMPlay_BGM + ldr r0, _08035DA0 @ =gMPlayInfo_BGM bl m4aMPlayContinue b _08035DB0 .align 2, 0 @@ -405,9 +405,9 @@ _08035D90: .4byte SpriteCallbackDummy _08035D94: .4byte gUnknown_2024018 _08035D98: .4byte 0x000027f9 _08035D9C: .4byte gBattleTypeFlags -_08035DA0: .4byte gMPlay_BGM +_08035DA0: .4byte gMPlayInfo_BGM _08035DA4: - ldr r0, _08035DD8 @ =gMPlay_BGM + ldr r0, _08035DD8 @ =gMPlayInfo_BGM ldr r1, _08035DDC @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -435,7 +435,7 @@ _08035DD2: pop {r0} bx r0 .align 2, 0 -_08035DD8: .4byte gMPlay_BGM +_08035DD8: .4byte gMPlayInfo_BGM _08035DDC: .4byte 0x0000ffff _08035DE0: .4byte gUnknown_2024018 _08035DE4: .4byte gActiveBattler @@ -1074,7 +1074,7 @@ sub_80362E8: @ 80362E8 lsls r0, 24 cmp r0, 0 bne _08036320 - ldr r0, _0803632C @ =gMPlay_BGM + ldr r0, _0803632C @ =gMPlayInfo_BGM ldr r1, _08036330 @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -1086,7 +1086,7 @@ _08036320: .align 2, 0 _08036324: .4byte gUnknown_2024018 _08036328: .4byte gActiveBattler -_0803632C: .4byte gMPlay_BGM +_0803632C: .4byte gMPlayInfo_BGM _08036330: .4byte 0x0000ffff thumb_func_end sub_80362E8 diff --git a/asm/battle_controller_player.s b/asm/battle_controller_player.s index b036c9a78..6c6587e9c 100644 --- a/asm/battle_controller_player.s +++ b/asm/battle_controller_player.s @@ -2775,7 +2775,7 @@ _0802F934: ands r0, r1 cmp r0, 0 beq _0802F9D0 - ldr r0, _0802F9CC @ =gMPlay_BGM + ldr r0, _0802F9CC @ =gMPlayInfo_BGM bl m4aMPlayContinue b _0802F9DC .align 2, 0 @@ -2786,9 +2786,9 @@ _0802F9BC: .4byte SpriteCallbackDummy _0802F9C0: .4byte gUnknown_2024018 _0802F9C4: .4byte 0x000027f9 _0802F9C8: .4byte gBattleTypeFlags -_0802F9CC: .4byte gMPlay_BGM +_0802F9CC: .4byte gMPlayInfo_BGM _0802F9D0: - ldr r0, _0802FA38 @ =gMPlay_BGM + ldr r0, _0802FA38 @ =gMPlayInfo_BGM ldr r1, _0802FA3C @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -2840,7 +2840,7 @@ _0802FA32: pop {r0} bx r0 .align 2, 0 -_0802FA38: .4byte gMPlay_BGM +_0802FA38: .4byte gMPlayInfo_BGM _0802FA3C: .4byte 0x0000ffff _0802FA40: .4byte gBattlerPartyIndexes _0802FA44: .4byte gActiveBattler @@ -3153,7 +3153,7 @@ sub_802FCAC: @ 802FCAC lsls r0, 24 cmp r0, 0 bne _0802FCFA - ldr r0, _0802FD08 @ =gMPlay_BGM + ldr r0, _0802FD08 @ =gMPlayInfo_BGM ldr r1, _0802FD0C @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -3176,7 +3176,7 @@ _0802FCFA: .align 2, 0 _0802FD00: .4byte gUnknown_2024018 _0802FD04: .4byte gActiveBattler -_0802FD08: .4byte gMPlay_BGM +_0802FD08: .4byte gMPlayInfo_BGM _0802FD0C: .4byte 0x0000ffff _0802FD10: .4byte gBattlerPartyIndexes _0802FD14: .4byte gPlayerParty @@ -3291,7 +3291,7 @@ c3_0802FDF4: @ 802FDF4 lsls r0, 24 cmp r0, 0 bne _0802FE16 - ldr r0, _0802FE1C @ =gMPlay_BGM + ldr r0, _0802FE1C @ =gMPlayInfo_BGM ldr r1, _0802FE20 @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -3303,7 +3303,7 @@ _0802FE16: pop {r0} bx r0 .align 2, 0 -_0802FE1C: .4byte gMPlay_BGM +_0802FE1C: .4byte gMPlayInfo_BGM _0802FE20: .4byte 0x0000ffff thumb_func_end c3_0802FDF4 diff --git a/asm/battle_gfx_sfx_util.s b/asm/battle_gfx_sfx_util.s index c280b1ffd..e56df1923 100644 --- a/asm/battle_gfx_sfx_util.s +++ b/asm/battle_gfx_sfx_util.s @@ -676,9 +676,9 @@ mplay_80342A4: @ 80342A4 ldrb r0, [r0, 0x8] cmp r0, 0x1D bls _080342F0 - ldr r0, _080342FC @ =gMPlay_SE1 + ldr r0, _080342FC @ =gMPlayInfo_SE1 bl m4aMPlayStop - ldr r0, _08034300 @ =gMPlay_SE2 + ldr r0, _08034300 @ =gMPlayInfo_SE2 bl m4aMPlayStop _080342EC: cmp r5, 0 @@ -689,8 +689,8 @@ _080342F0: .align 2, 0 _080342F4: .4byte gUnknown_2024018 _080342F8: .4byte gActiveBattler -_080342FC: .4byte gMPlay_SE1 -_08034300: .4byte gMPlay_SE2 +_080342FC: .4byte gMPlayInfo_SE1 +_08034300: .4byte gMPlayInfo_SE2 _08034304: ldr r0, _0803431C @ =gUnknown_2024018 ldr r0, [r0] diff --git a/asm/diploma.s b/asm/diploma.s index 651264528..4ff605295 100644 --- a/asm/diploma.s +++ b/asm/diploma.s @@ -154,7 +154,7 @@ _080F4D30: cmp r0, 0 bne _080F4D50 movs r0, 0x5 - bl sub_8071BC4 + bl PlayFanfareByFanfareNum ldr r0, _080F4D68 @ =gTasks lsls r1, r4, 2 adds r1, r4 diff --git a/asm/hall_of_fame.s b/asm/hall_of_fame.s index a344a99c9..0f66e62de 100644 --- a/asm/hall_of_fame.s +++ b/asm/hall_of_fame.s @@ -2151,7 +2151,7 @@ _080F2F0C: cmp r0, 0 beq _080F2F26 bl StopCryAndClearCrySongs - ldr r0, _080F2F2C @ =gMPlay_BGM + ldr r0, _080F2F2C @ =gMPlayInfo_BGM ldr r1, _080F2F30 @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -2161,7 +2161,7 @@ _080F2F26: str r0, [r4] b _080F2FD8 .align 2, 0 -_080F2F2C: .4byte gMPlay_BGM +_080F2F2C: .4byte gMPlayInfo_BGM _080F2F30: .4byte 0x0000ffff _080F2F34: .4byte sub_80F2FEC _080F2F38: @@ -2174,7 +2174,7 @@ _080F2F38: cmp r0, 0 beq _080F2F5A bl StopCryAndClearCrySongs - ldr r0, _080F2F6C @ =gMPlay_BGM + ldr r0, _080F2F6C @ =gMPlayInfo_BGM ldr r1, _080F2F70 @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -2189,7 +2189,7 @@ _080F2F5A: str r0, [r1] b _080F2FD8 .align 2, 0 -_080F2F6C: .4byte gMPlay_BGM +_080F2F6C: .4byte gMPlayInfo_BGM _080F2F70: .4byte 0x0000ffff _080F2F74: .4byte gTasks _080F2F78: .4byte sub_80F2FEC diff --git a/asm/help_system.s b/asm/help_system.s index b19c6ea58..9a447ebbe 100644 --- a/asm/help_system.s +++ b/asm/help_system.s @@ -83,9 +83,9 @@ _0813B90C: .4byte gMain _0813B910: .4byte gUnknown_203F175 _0813B914: .4byte gUnknown_3005ECC _0813B918: - ldr r0, _0813B94C @ =gMPlay_SE1 + ldr r0, _0813B94C @ =gMPlayInfo_SE1 bl m4aMPlayStop - ldr r0, _0813B950 @ =gMPlay_SE2 + ldr r0, _0813B950 @ =gMPlayInfo_SE2 bl m4aMPlayStop movs r0, 0xFA bl PlaySE @@ -93,7 +93,7 @@ _0813B918: ldrb r0, [r0] cmp r0, 0 bne _0813B93C - ldr r0, _0813B958 @ =gMPlay_BGM + ldr r0, _0813B958 @ =gMPlayInfo_BGM ldr r1, _0813B95C @ =0x0000ffff movs r2, 0x80 bl m4aMPlayVolumeControl @@ -106,10 +106,10 @@ _0813B93C: movs r0, 0x1 b _0813BB22 .align 2, 0 -_0813B94C: .4byte gMPlay_SE1 -_0813B950: .4byte gMPlay_SE2 +_0813B94C: .4byte gMPlayInfo_SE1 +_0813B950: .4byte gMPlayInfo_SE2 _0813B954: .4byte gUnknown_203F174 -_0813B958: .4byte gMPlay_BGM +_0813B958: .4byte gMPlayInfo_BGM _0813B95C: .4byte 0x0000ffff _0813B960: .4byte gUnknown_203F177 _0813B964: .4byte gUnknown_203F178 @@ -269,7 +269,7 @@ _0813BAE0: ldrb r0, [r0] cmp r0, 0 bne _0813BAF4 - ldr r0, _0813BB08 @ =gMPlay_BGM + ldr r0, _0813BB08 @ =gMPlayInfo_BGM ldr r1, _0813BB0C @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -282,7 +282,7 @@ _0813BAF4: b _0813BB22 .align 2, 0 _0813BB04: .4byte gUnknown_203F174 -_0813BB08: .4byte gMPlay_BGM +_0813BB08: .4byte gMPlayInfo_BGM _0813BB0C: .4byte 0x0000ffff _0813BB10: .4byte gUnknown_203F178 _0813BB14: diff --git a/asm/item_use.s b/asm/item_use.s index cb8143749..e2cad1322 100644 --- a/asm/item_use.s +++ b/asm/item_use.s @@ -838,7 +838,7 @@ sub_80A1648: @ 80A1648 lsls r4, 24 lsrs r4, 24 movs r0, 0xB - bl sub_8071BC4 + bl PlayFanfareByFanfareNum ldr r1, _080A166C @ =gTasks lsls r0, r4, 2 adds r0, r4 diff --git a/asm/link.s b/asm/link.s index a08422258..0849f6590 100644 --- a/asm/link.s +++ b/asm/link.s @@ -3234,11 +3234,11 @@ c2_800ACD4: @ 800ACD4 movs r0, 0 movs r1, 0 bl SetGpuReg - ldr r0, _0800ADE0 @ =gMPlay_SE1 + ldr r0, _0800ADE0 @ =gMPlayInfo_SE1 bl m4aMPlayStop - ldr r0, _0800ADE4 @ =gMPlay_SE2 + ldr r0, _0800ADE4 @ =gMPlayInfo_SE2 bl m4aMPlayStop - ldr r0, _0800ADE8 @ =gMPlay_SE3 + ldr r0, _0800ADE8 @ =gMPlayInfo_SE3 bl m4aMPlayStop ldr r0, _0800ADEC @ =gHeap movs r1, 0xE0 @@ -3333,9 +3333,9 @@ _0800ADD8: pop {r0} bx r0 .align 2, 0 -_0800ADE0: .4byte gMPlay_SE1 -_0800ADE4: .4byte gMPlay_SE2 -_0800ADE8: .4byte gMPlay_SE3 +_0800ADE0: .4byte gMPlayInfo_SE1 +_0800ADE4: .4byte gMPlayInfo_SE2 +_0800ADE8: .4byte gMPlayInfo_SE3 _0800ADEC: .4byte gHeap _0800ADF0: .4byte gUnknown_3003F3C _0800ADF4: .4byte gUnknown_2022854 diff --git a/asm/overworld.s b/asm/overworld.s index 9dbce6c55..5e6315b9f 100644 --- a/asm/overworld.s +++ b/asm/overworld.s @@ -2409,7 +2409,7 @@ _08055DDC: subs r0, 0x7 cmp r0, 0xA bgt _08055E24 - ldr r0, _08055E1C @ =gMPlay_BGM + ldr r0, _08055E1C @ =gMPlayInfo_BGM ldr r1, [r0] ldr r0, _08055E20 @ =gUnknown_86E6B0C cmp r1, r0 @@ -2420,7 +2420,7 @@ _08055DDC: .align 2, 0 _08055E14: .4byte gSaveBlock1Ptr _08055E18: .4byte 0x00004f01 -_08055E1C: .4byte gMPlay_BGM +_08055E1C: .4byte gMPlayInfo_BGM _08055E20: .4byte gUnknown_86E6B0C _08055E24: bl sub_8055D8C diff --git a/asm/party_menu.s b/asm/party_menu.s index a0a504527..c23e401ef 100644 --- a/asm/party_menu.s +++ b/asm/party_menu.s @@ -15270,7 +15270,7 @@ sub_8126350: @ 8126350 adds r1, r4, 0 bl sub_80A2294 movs r0, 0 - bl sub_8071BC4 + bl PlayFanfareByFanfareNum ldrb r0, [r6, 0x9] adds r1, r4, 0 bl sub_8126440 diff --git a/asm/pokeball.s b/asm/pokeball.s index 77d9152c5..5408e5567 100644 --- a/asm/pokeball.s +++ b/asm/pokeball.s @@ -1287,7 +1287,7 @@ _0804B34E: lsls r0, 24 cmp r0, 0 beq _0804B3A6 - ldr r0, _0804B398 @ =gMPlay_BGM + ldr r0, _0804B398 @ =gMPlayInfo_BGM bl m4aMPlayStop b _0804B3A6 .align 2, 0 @@ -1295,9 +1295,9 @@ _0804B388: .4byte gBattlerPartyIndexes _0804B38C: .4byte gPlayerParty _0804B390: .4byte gUnknown_2024018 _0804B394: .4byte gBattleTypeFlags -_0804B398: .4byte gMPlay_BGM +_0804B398: .4byte gMPlayInfo_BGM _0804B39C: - ldr r0, _0804B3C4 @ =gMPlay_BGM + ldr r0, _0804B3C4 @ =gMPlayInfo_BGM ldr r1, _0804B3C8 @ =0x0000ffff movs r2, 0x80 bl m4aMPlayVolumeControl @@ -1318,7 +1318,7 @@ _0804B3C0: movs r4, 0 b _0804B3F2 .align 2, 0 -_0804B3C4: .4byte gMPlay_BGM +_0804B3C4: .4byte gMPlayInfo_BGM _0804B3C8: .4byte 0x0000ffff _0804B3CC: .4byte gUnknown_2024018 _0804B3D0: diff --git a/asm/save_failed_screen.s b/asm/save_failed_screen.s index 98706e4a8..ade020812 100644 --- a/asm/save_failed_screen.s +++ b/asm/save_failed_screen.s @@ -69,7 +69,7 @@ _080F515C: .align 2, 0 _080F5168: .4byte gUnknown_3005430 _080F516C: - ldr r0, _080F5184 @ =gMPlay_BGM + ldr r0, _080F5184 @ =gMPlayInfo_BGM ldr r1, _080F5188 @ =0x0000ffff movs r2, 0x80 bl m4aMPlayVolumeControl @@ -79,7 +79,7 @@ _080F516C: strb r0, [r1] b _080F52D6 .align 2, 0 -_080F5184: .4byte gMPlay_BGM +_080F5184: .4byte gMPlayInfo_BGM _080F5188: .4byte 0x0000ffff _080F518C: .4byte gUnknown_203AB50 _080F5190: @@ -206,7 +206,7 @@ _080F5298: .align 2, 0 _080F52B0: .4byte gUnknown_203AB50 _080F52B4: - ldr r0, _080F52DC @ =gMPlay_BGM + ldr r0, _080F52DC @ =gMPlayInfo_BGM ldr r1, _080F52E0 @ =0x0000ffff movs r2, 0x80 lsls r2, 1 @@ -225,7 +225,7 @@ _080F52D8: pop {r1} bx r1 .align 2, 0 -_080F52DC: .4byte gMPlay_BGM +_080F52DC: .4byte gMPlayInfo_BGM _080F52E0: .4byte 0x0000ffff _080F52E4: .4byte gUnknown_3005430 _080F52E8: .4byte gUnknown_203AB50 diff --git a/asm/scrcmd.s b/asm/scrcmd.s index 23d2bdc54..ec78da1d5 100644 --- a/asm/scrcmd.s +++ b/asm/scrcmd.s @@ -3897,7 +3897,7 @@ sub_806BB9C: @ 806BB9C bl sub_809D2F0 adds r0, r4, 0 movs r1, 0 - bl sub_8071F24 + bl PlayCry7 movs r0, 0 pop {r4,r5} pop {r1} @@ -5165,7 +5165,7 @@ ScrCmd_playmoncry: @ 806C508 lsls r1, 24 lsrs r1, 24 adds r0, r4, 0 - bl sub_8071F24 + bl PlayCry7 movs r0, 0 pop {r4,r5} pop {r1} diff --git a/asm/sound.s b/asm/sound.s deleted file mode 100644 index 2c2c1b379..000000000 --- a/asm/sound.s +++ /dev/null @@ -1,1541 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start InitMapMusic -InitMapMusic: @ 8071938 - push {lr} - ldr r1, _08071948 @ =gUnknown_3005080 - movs r0, 0 - strb r0, [r1] - bl ResetMapMusic - pop {r0} - bx r0 - .align 2, 0 -_08071948: .4byte gUnknown_3005080 - thumb_func_end InitMapMusic - - thumb_func_start MapMusicMain -MapMusicMain: @ 807194C - push {r4,r5,lr} - ldr r0, _08071964 @ =gUnknown_3000FC4 - ldrb r1, [r0] - adds r2, r0, 0 - cmp r1, 0x7 - bhi _08071A2E - lsls r0, r1, 2 - ldr r1, _08071968 @ =_0807196C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08071964: .4byte gUnknown_3000FC4 -_08071968: .4byte _0807196C - .align 2, 0 -_0807196C: - .4byte _08071A2E - .4byte _0807198C - .4byte _08071A2E - .4byte _08071A2E - .4byte _08071A2E - .4byte _080719A0 - .4byte _080719C0 - .4byte _080719FC -_0807198C: - movs r0, 0x2 - strb r0, [r2] - ldr r0, _0807199C @ =gUnknown_3000FC0 - ldrh r0, [r0] - bl PlayBGM - b _08071A2E - .align 2, 0 -_0807199C: .4byte gUnknown_3000FC0 -_080719A0: - bl IsBGMStopped - lsls r0, 24 - cmp r0, 0 - beq _08071A2E - ldr r0, _080719B8 @ =gUnknown_3000FC2 - movs r1, 0 - strh r1, [r0] - ldr r0, _080719BC @ =gUnknown_3000FC4 - strb r1, [r0] - b _08071A2E - .align 2, 0 -_080719B8: .4byte gUnknown_3000FC2 -_080719BC: .4byte gUnknown_3000FC4 -_080719C0: - bl IsBGMStopped - lsls r0, 24 - cmp r0, 0 - beq _08071A2E - bl IsFanfareTaskInactive - lsls r0, 24 - cmp r0, 0 - beq _08071A2E - ldr r2, _080719F0 @ =gUnknown_3000FC0 - ldr r1, _080719F4 @ =gUnknown_3000FC2 - ldrh r0, [r1] - strh r0, [r2] - movs r0, 0 - strh r0, [r1] - ldr r1, _080719F8 @ =gUnknown_3000FC4 - movs r0, 0x2 - strb r0, [r1] - ldrh r0, [r2] - bl PlayBGM - b _08071A2E - .align 2, 0 -_080719F0: .4byte gUnknown_3000FC0 -_080719F4: .4byte gUnknown_3000FC2 -_080719F8: .4byte gUnknown_3000FC4 -_080719FC: - bl IsBGMStopped - lsls r0, 24 - cmp r0, 0 - beq _08071A2E - bl IsFanfareTaskInactive - lsls r0, 24 - cmp r0, 0 - beq _08071A2E - ldr r4, _08071A34 @ =gUnknown_3000FC2 - ldrh r0, [r4] - ldr r5, _08071A38 @ =gUnknown_3000FC5 - ldrb r1, [r5] - bl FadeInNewBGM - ldr r1, _08071A3C @ =gUnknown_3000FC0 - ldrh r0, [r4] - strh r0, [r1] - movs r2, 0 - strh r2, [r4] - ldr r1, _08071A40 @ =gUnknown_3000FC4 - movs r0, 0x2 - strb r0, [r1] - strb r2, [r5] -_08071A2E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08071A34: .4byte gUnknown_3000FC2 -_08071A38: .4byte gUnknown_3000FC5 -_08071A3C: .4byte gUnknown_3000FC0 -_08071A40: .4byte gUnknown_3000FC4 - thumb_func_end MapMusicMain - - thumb_func_start ResetMapMusic -ResetMapMusic: @ 8071A44 - ldr r0, _08071A58 @ =gUnknown_3000FC0 - movs r1, 0 - strh r1, [r0] - ldr r0, _08071A5C @ =gUnknown_3000FC2 - strh r1, [r0] - ldr r0, _08071A60 @ =gUnknown_3000FC4 - strb r1, [r0] - ldr r0, _08071A64 @ =gUnknown_3000FC5 - strb r1, [r0] - bx lr - .align 2, 0 -_08071A58: .4byte gUnknown_3000FC0 -_08071A5C: .4byte gUnknown_3000FC2 -_08071A60: .4byte gUnknown_3000FC4 -_08071A64: .4byte gUnknown_3000FC5 - thumb_func_end ResetMapMusic - - thumb_func_start GetCurrentMapMusic -GetCurrentMapMusic: @ 8071A68 - ldr r0, _08071A70 @ =gUnknown_3000FC0 - ldrh r0, [r0] - bx lr - .align 2, 0 -_08071A70: .4byte gUnknown_3000FC0 - thumb_func_end GetCurrentMapMusic - - thumb_func_start PlayNewMapMusic -PlayNewMapMusic: @ 8071A74 - ldr r1, _08071A88 @ =gUnknown_3000FC0 - strh r0, [r1] - ldr r1, _08071A8C @ =gUnknown_3000FC2 - movs r0, 0 - strh r0, [r1] - ldr r1, _08071A90 @ =gUnknown_3000FC4 - movs r0, 0x1 - strb r0, [r1] - bx lr - .align 2, 0 -_08071A88: .4byte gUnknown_3000FC0 -_08071A8C: .4byte gUnknown_3000FC2 -_08071A90: .4byte gUnknown_3000FC4 - thumb_func_end PlayNewMapMusic - - thumb_func_start StopMapMusic -StopMapMusic: @ 8071A94 - ldr r0, _08071AA8 @ =gUnknown_3000FC0 - movs r1, 0 - strh r1, [r0] - ldr r0, _08071AAC @ =gUnknown_3000FC2 - strh r1, [r0] - ldr r1, _08071AB0 @ =gUnknown_3000FC4 - movs r0, 0x1 - strb r0, [r1] - bx lr - .align 2, 0 -_08071AA8: .4byte gUnknown_3000FC0 -_08071AAC: .4byte gUnknown_3000FC2 -_08071AB0: .4byte gUnknown_3000FC4 - thumb_func_end StopMapMusic - - thumb_func_start FadeOutMapMusic -FadeOutMapMusic: @ 8071AB4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsNotWaitingForBGMStop - lsls r0, 24 - cmp r0, 0 - beq _08071ACA - adds r0, r4, 0 - bl FadeOutBGM -_08071ACA: - ldr r0, _08071AE0 @ =gUnknown_3000FC0 - movs r1, 0 - strh r1, [r0] - ldr r0, _08071AE4 @ =gUnknown_3000FC2 - strh r1, [r0] - ldr r1, _08071AE8 @ =gUnknown_3000FC4 - movs r0, 0x5 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08071AE0: .4byte gUnknown_3000FC0 -_08071AE4: .4byte gUnknown_3000FC2 -_08071AE8: .4byte gUnknown_3000FC4 - thumb_func_end FadeOutMapMusic - - thumb_func_start FadeOutAndPlayNewMapMusic -FadeOutAndPlayNewMapMusic: @ 8071AEC - push {r4,lr} - adds r4, r0, 0 - adds r0, r1, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r0, 24 - lsrs r0, 24 - bl FadeOutMapMusic - ldr r1, _08071B14 @ =gUnknown_3000FC0 - movs r0, 0 - strh r0, [r1] - ldr r0, _08071B18 @ =gUnknown_3000FC2 - strh r4, [r0] - ldr r1, _08071B1C @ =gUnknown_3000FC4 - movs r0, 0x6 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08071B14: .4byte gUnknown_3000FC0 -_08071B18: .4byte gUnknown_3000FC2 -_08071B1C: .4byte gUnknown_3000FC4 - thumb_func_end FadeOutAndPlayNewMapMusic - - thumb_func_start FadeOutAndFadeInNewMapMusic -FadeOutAndFadeInNewMapMusic: @ 8071B20 - push {r4,r5,lr} - adds r4, r0, 0 - adds r0, r1, 0 - adds r5, r2, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r0, 24 - lsrs r0, 24 - lsls r5, 24 - lsrs r5, 24 - bl FadeOutMapMusic - ldr r1, _08071B54 @ =gUnknown_3000FC0 - movs r0, 0 - strh r0, [r1] - ldr r0, _08071B58 @ =gUnknown_3000FC2 - strh r4, [r0] - ldr r1, _08071B5C @ =gUnknown_3000FC4 - movs r0, 0x7 - strb r0, [r1] - ldr r0, _08071B60 @ =gUnknown_3000FC5 - strb r5, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08071B54: .4byte gUnknown_3000FC0 -_08071B58: .4byte gUnknown_3000FC2 -_08071B5C: .4byte gUnknown_3000FC4 -_08071B60: .4byte gUnknown_3000FC5 - thumb_func_end FadeOutAndFadeInNewMapMusic - - thumb_func_start FadeInNewMapMusic -FadeInNewMapMusic: @ 8071B64 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FadeInNewBGM - ldr r0, _08071B90 @ =gUnknown_3000FC0 - strh r4, [r0] - ldr r0, _08071B94 @ =gUnknown_3000FC2 - movs r2, 0 - strh r2, [r0] - ldr r1, _08071B98 @ =gUnknown_3000FC4 - movs r0, 0x2 - strb r0, [r1] - ldr r0, _08071B9C @ =gUnknown_3000FC5 - strb r2, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08071B90: .4byte gUnknown_3000FC0 -_08071B94: .4byte gUnknown_3000FC2 -_08071B98: .4byte gUnknown_3000FC4 -_08071B9C: .4byte gUnknown_3000FC5 - thumb_func_end FadeInNewMapMusic - - thumb_func_start IsNotWaitingForBGMStop -IsNotWaitingForBGMStop: @ 8071BA0 - push {lr} - ldr r0, _08071BB8 @ =gUnknown_3000FC4 - ldrb r0, [r0] - cmp r0, 0x6 - beq _08071BBC - cmp r0, 0x5 - beq _08071BBC - cmp r0, 0x7 - beq _08071BBC - movs r0, 0x1 - b _08071BBE - .align 2, 0 -_08071BB8: .4byte gUnknown_3000FC4 -_08071BBC: - movs r0, 0 -_08071BBE: - pop {r1} - bx r1 - thumb_func_end IsNotWaitingForBGMStop - - thumb_func_start sub_8071BC4 -sub_8071BC4: @ 8071BC4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08071BDC @ =gUnknown_203ADFA - ldrb r0, [r0] - cmp r0, 0x2 - bne _08071BE4 - ldr r1, _08071BE0 @ =gUnknown_3000FC6 - movs r0, 0xFF - strh r0, [r1] - b _08071BFC - .align 2, 0 -_08071BDC: .4byte gUnknown_203ADFA -_08071BE0: .4byte gUnknown_3000FC6 -_08071BE4: - ldr r0, _08071C04 @ =gMPlay_BGM - bl m4aMPlayStop - ldr r0, _08071C08 @ =gUnknown_83AC990 - lsls r1, r4, 2 - adds r1, r0 - ldrh r0, [r1] - ldr r2, _08071C0C @ =gUnknown_3000FC6 - ldrh r1, [r1, 0x2] - strh r1, [r2] - bl m4aSongNumStart -_08071BFC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08071C04: .4byte gMPlay_BGM -_08071C08: .4byte gUnknown_83AC990 -_08071C0C: .4byte gUnknown_3000FC6 - thumb_func_end sub_8071BC4 - - thumb_func_start WaitFanfare -WaitFanfare: @ 8071C10 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - ldr r2, _08071C28 @ =gUnknown_3000FC6 - ldrh r0, [r2] - cmp r0, 0 - beq _08071C2C - subs r0, 0x1 - strh r0, [r2] - movs r0, 0 - b _08071C44 - .align 2, 0 -_08071C28: .4byte gUnknown_3000FC6 -_08071C2C: - cmp r1, 0 - bne _08071C3C - ldr r0, _08071C38 @ =gMPlay_BGM - bl m4aMPlayContinue - b _08071C42 - .align 2, 0 -_08071C38: .4byte gMPlay_BGM -_08071C3C: - movs r0, 0 - bl m4aSongNumStart -_08071C42: - movs r0, 0x1 -_08071C44: - pop {r1} - bx r1 - thumb_func_end WaitFanfare - - thumb_func_start StopFanfareByFanfareNum -StopFanfareByFanfareNum: @ 8071C48 - push {lr} - lsls r0, 24 - ldr r1, _08071C5C @ =gUnknown_83AC990 - lsrs r0, 22 - adds r0, r1 - ldrh r0, [r0] - bl m4aSongNumStop - pop {r0} - bx r0 - .align 2, 0 -_08071C5C: .4byte gUnknown_83AC990 - thumb_func_end StopFanfareByFanfareNum - - thumb_func_start PlayFanfare -PlayFanfare: @ 8071C60 - push {lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r1, 0 - ldr r2, _08071C80 @ =gUnknown_83AC990 -_08071C6A: - ldrh r0, [r2] - cmp r0, r3 - bne _08071C84 - lsls r0, r1, 24 - lsrs r0, 24 - bl sub_8071BC4 - bl CreateFanfareTask - b _08071C96 - .align 2, 0 -_08071C80: .4byte gUnknown_83AC990 -_08071C84: - adds r2, 0x4 - adds r1, 0x1 - cmp r1, 0xD - bls _08071C6A - movs r0, 0 - bl sub_8071BC4 - bl CreateFanfareTask -_08071C96: - pop {r0} - bx r0 - thumb_func_end PlayFanfare - - thumb_func_start IsFanfareTaskInactive -IsFanfareTaskInactive: @ 8071C9C - push {lr} - ldr r0, _08071CB0 @ =Task_Fanfare - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08071CB4 - movs r0, 0x1 - b _08071CB6 - .align 2, 0 -_08071CB0: .4byte Task_Fanfare -_08071CB4: - movs r0, 0 -_08071CB6: - pop {r1} - bx r1 - thumb_func_end IsFanfareTaskInactive - - thumb_func_start Task_Fanfare -Task_Fanfare: @ 8071CBC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08071CD0 @ =gUnknown_3000FC6 - ldrh r0, [r1] - cmp r0, 0 - beq _08071CD4 - subs r0, 0x1 - strh r0, [r1] - b _08071CE0 - .align 2, 0 -_08071CD0: .4byte gUnknown_3000FC6 -_08071CD4: - ldr r0, _08071CE8 @ =gMPlay_BGM - bl m4aMPlayContinue - adds r0, r4, 0 - bl DestroyTask -_08071CE0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08071CE8: .4byte gMPlay_BGM - thumb_func_end Task_Fanfare - - thumb_func_start CreateFanfareTask -CreateFanfareTask: @ 8071CEC - push {r4,lr} - ldr r4, _08071D0C @ =Task_Fanfare - adds r0, r4, 0 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08071D06 - adds r0, r4, 0 - movs r1, 0x50 - bl CreateTask -_08071D06: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08071D0C: .4byte Task_Fanfare - thumb_func_end CreateFanfareTask - - thumb_func_start FadeInNewBGM -FadeInNewBGM: @ 8071D10 - push {r4-r7,lr} - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r0, _08071D58 @ =gUnknown_3005080 - ldrb r0, [r0] - cmp r0, 0 - beq _08071D24 - movs r5, 0 -_08071D24: - ldr r6, _08071D5C @ =0x0000ffff - cmp r5, r6 - bne _08071D2C - movs r5, 0 -_08071D2C: - adds r0, r5, 0 - bl m4aSongNumStart - ldr r4, _08071D60 @ =gMPlay_BGM - adds r0, r4, 0 - bl m4aMPlayImmInit - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl m4aMPlayVolumeControl - adds r0, r5, 0 - bl m4aSongNumStop - adds r0, r4, 0 - adds r1, r7, 0 - bl m4aMPlayFadeIn - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08071D58: .4byte gUnknown_3005080 -_08071D5C: .4byte 0x0000ffff -_08071D60: .4byte gMPlay_BGM - thumb_func_end FadeInNewBGM - - thumb_func_start FadeOutBGMTemporarily -FadeOutBGMTemporarily: @ 8071D64 - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _08071D78 @ =gMPlay_BGM - bl m4aMPlayFadeOutTemporarily - pop {r0} - bx r0 - .align 2, 0 -_08071D78: .4byte gMPlay_BGM - thumb_func_end FadeOutBGMTemporarily - - thumb_func_start IsBGMPausedOrStopped -IsBGMPausedOrStopped: @ 8071D7C - push {lr} - ldr r0, _08071D94 @ =gMPlay_BGM - ldr r1, [r0, 0x4] - cmp r1, 0 - blt _08071D9C - ldr r0, _08071D98 @ =0x0000ffff - ands r1, r0 - cmp r1, 0 - beq _08071D9C - movs r0, 0 - b _08071D9E - .align 2, 0 -_08071D94: .4byte gMPlay_BGM -_08071D98: .4byte 0x0000ffff -_08071D9C: - movs r0, 0x1 -_08071D9E: - pop {r1} - bx r1 - thumb_func_end IsBGMPausedOrStopped - - thumb_func_start FadeInBGM -FadeInBGM: @ 8071DA4 - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _08071DB8 @ =gMPlay_BGM - bl m4aMPlayFadeIn - pop {r0} - bx r0 - .align 2, 0 -_08071DB8: .4byte gMPlay_BGM - thumb_func_end FadeInBGM - - thumb_func_start FadeOutBGM -FadeOutBGM: @ 8071DBC - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _08071DD0 @ =gMPlay_BGM - bl m4aMPlayFadeOut - pop {r0} - bx r0 - .align 2, 0 -_08071DD0: .4byte gMPlay_BGM - thumb_func_end FadeOutBGM - - thumb_func_start IsBGMStopped -IsBGMStopped: @ 8071DD4 - push {lr} - ldr r0, _08071DE4 @ =gMPlay_BGM - ldrh r0, [r0, 0x4] - cmp r0, 0 - beq _08071DE8 - movs r0, 0 - b _08071DEA - .align 2, 0 -_08071DE4: .4byte gMPlay_BGM -_08071DE8: - movs r0, 0x1 -_08071DEA: - pop {r1} - bx r1 - thumb_func_end IsBGMStopped - - thumb_func_start PlayCry1 -PlayCry1: @ 8071DF0 - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - lsls r5, 16 - lsrs r5, 16 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08071E30 @ =gMPlay_BGM - ldr r1, _08071E34 @ =0x0000ffff - movs r2, 0x55 - bl m4aMPlayVolumeControl - lsls r4, 24 - asrs r4, 24 - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x78 - movs r3, 0xA - bl sub_8071F78 - ldr r1, _08071E38 @ =gUnknown_2037ED0 - movs r0, 0x2 - strb r0, [r1] - bl RestoreBGMVolumeAfterPokemonCry - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08071E30: .4byte gMPlay_BGM -_08071E34: .4byte 0x0000ffff -_08071E38: .4byte gUnknown_2037ED0 - thumb_func_end PlayCry1 - - thumb_func_start PlayCry2 -PlayCry2: @ 8071E3C - push {r4,lr} - sub sp, 0x4 - lsls r0, 16 - lsrs r0, 16 - lsls r3, 24 - lsrs r3, 24 - lsls r1, 24 - asrs r1, 24 - lsls r2, 24 - asrs r2, 24 - movs r4, 0 - str r4, [sp] - bl sub_8071F78 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end PlayCry2 - - thumb_func_start PlayCry3 -PlayCry3: @ 8071E60 - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r4, r2, 24 - cmp r4, 0x1 - bne _08071E86 - lsls r1, r5, 24 - asrs r1, 24 - str r4, [sp] - adds r0, r6, 0 - movs r2, 0x78 - movs r3, 0xA - bl sub_8071F78 - b _08071EAA -_08071E86: - ldr r0, _08071EB4 @ =gMPlay_BGM - ldr r1, _08071EB8 @ =0x0000ffff - movs r2, 0x55 - bl m4aMPlayVolumeControl - lsls r1, r5, 24 - asrs r1, 24 - str r4, [sp] - adds r0, r6, 0 - movs r2, 0x78 - movs r3, 0xA - bl sub_8071F78 - ldr r1, _08071EBC @ =gUnknown_2037ED0 - movs r0, 0x2 - strb r0, [r1] - bl RestoreBGMVolumeAfterPokemonCry -_08071EAA: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08071EB4: .4byte gMPlay_BGM -_08071EB8: .4byte 0x0000ffff -_08071EBC: .4byte gUnknown_2037ED0 - thumb_func_end PlayCry3 - - thumb_func_start PlayCry4 -PlayCry4: @ 8071EC0 - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 16 - lsrs r0, 16 - adds r6, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - adds r4, r2, 0 - cmp r2, 0x1 - bne _08071EEA - lsls r1, 24 - asrs r1, 24 - str r2, [sp] - movs r2, 0x78 - movs r3, 0xA - bl sub_8071F78 - b _08071F10 -_08071EEA: - ldr r0, _08071F18 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08071F00 - ldr r0, _08071F1C @ =gMPlay_BGM - ldr r1, _08071F20 @ =0x0000ffff - movs r2, 0x55 - bl m4aMPlayVolumeControl -_08071F00: - lsls r1, r5, 24 - asrs r1, 24 - str r4, [sp] - adds r0, r6, 0 - movs r2, 0x78 - movs r3, 0xA - bl sub_8071F78 -_08071F10: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08071F18: .4byte gBattleTypeFlags -_08071F1C: .4byte gMPlay_BGM -_08071F20: .4byte 0x0000ffff - thumb_func_end PlayCry4 - - thumb_func_start sub_8071F24 -sub_8071F24: @ 8071F24 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 24 - lsrs r4, r1, 24 - ldr r0, _08071F68 @ =gUnknown_203ADFA - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _08071F56 - ldr r0, _08071F6C @ =gMPlay_BGM - ldr r1, _08071F70 @ =0x0000ffff - movs r2, 0x55 - bl m4aMPlayVolumeControl - str r4, [sp] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x78 - movs r3, 0xA - bl sub_8071F78 -_08071F56: - ldr r1, _08071F74 @ =gUnknown_2037ED0 - movs r0, 0x2 - strb r0, [r1] - bl RestoreBGMVolumeAfterPokemonCry - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08071F68: .4byte gUnknown_203ADFA -_08071F6C: .4byte gMPlay_BGM -_08071F70: .4byte 0x0000ffff -_08071F74: .4byte gUnknown_2037ED0 - thumb_func_end sub_8071F24 - - thumb_func_start sub_8071F78 -sub_8071F78: @ 8071F78 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r4, [sp, 0x24] - lsls r0, 16 - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - str r3, [sp] - lsls r4, 24 - lsrs r1, r4, 24 - ldr r3, _08071FC0 @ =0xffff0000 - adds r0, r3 - lsrs r7, r0, 16 - movs r6, 0x8C - movs r0, 0 - mov r9, r0 - movs r5, 0 - movs r4, 0xF0 - lsls r4, 6 - mov r8, r5 - cmp r1, 0xC - bhi _0807208A - lsls r0, r1, 2 - ldr r1, _08071FC4 @ =_08071FC8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08071FC0: .4byte 0xffff0000 -_08071FC4: .4byte _08071FC8 - .align 2, 0 -_08071FC8: - .4byte _0807208A - .4byte _08071FFC - .4byte _08072002 - .4byte _08072010 - .4byte _08072020 - .4byte _08072038 - .4byte _08072044 - .4byte _08072054 - .4byte _0807205E - .4byte _08072068 - .4byte _08072078 - .4byte _08072088 - .4byte _08072084 -_08071FFC: - movs r6, 0x14 - movs r5, 0xE1 - b _0807208A -_08072002: - movs r5, 0xE1 - ldr r4, _0807200C @ =0x00003cf0 - movs r1, 0x14 - b _0807202C - .align 2, 0 -_0807200C: .4byte 0x00003cf0 -_08072010: - movs r6, 0x32 - movs r5, 0xC8 - ldr r4, _0807201C @ =0x00003db8 - movs r3, 0x14 - b _0807204A - .align 2, 0 -_0807201C: .4byte 0x00003db8 -_08072020: - movs r6, 0x19 - movs r0, 0x1 - mov r9, r0 - movs r5, 0x64 - ldr r4, _08072034 @ =0x00003cf0 - movs r1, 0xC0 -_0807202C: - mov r8, r1 - movs r2, 0x5A - b _0807208A - .align 2, 0 -_08072034: .4byte 0x00003cf0 -_08072038: - movs r5, 0xC8 - ldr r4, _08072040 @ =0x00003868 - b _0807208A - .align 2, 0 -_08072040: .4byte 0x00003868 -_08072044: - movs r5, 0xDC - ldr r4, _08072050 @ =0x00003cc3 - movs r3, 0xC0 -_0807204A: - mov r8, r3 - movs r2, 0x5A - b _0807208A - .align 2, 0 -_08072050: .4byte 0x00003cc3 -_08072054: - movs r6, 0xA - movs r5, 0x64 - movs r4, 0xE8 - lsls r4, 6 - b _0807208A -_0807205E: - movs r6, 0x3C - movs r5, 0xE1 - movs r4, 0xF4 - lsls r4, 6 - b _0807208A -_08072068: - movs r6, 0xF - movs r0, 0x1 - mov r9, r0 - movs r5, 0x7D - ldr r4, _08072074 @ =0x00003b60 - b _0807208A - .align 2, 0 -_08072074: .4byte 0x00003b60 -_08072078: - movs r6, 0x64 - movs r5, 0xE1 - ldr r4, _08072080 @ =0x00003b60 - b _0807208A - .align 2, 0 -_08072080: .4byte 0x00003b60 -_08072084: - movs r6, 0x14 - movs r5, 0xE1 -_08072088: - ldr r4, _080720E4 @ =0x00003a98 -_0807208A: - adds r0, r2, 0 - bl SetPokemonCryVolume - mov r1, r10 - lsls r0, r1, 24 - asrs r0, 24 - bl SetPokemonCryPanpot - adds r0, r4, 0 - bl SetPokemonCryPitch - adds r0, r6, 0 - bl SetPokemonCryLength - movs r0, 0 - bl SetPokemonCryProgress - adds r0, r5, 0 - bl SetPokemonCryRelease - mov r3, r8 - lsls r0, r3, 24 - asrs r0, 24 - bl SetPokemonCryChorus - ldr r0, [sp] - bl SetPokemonCryPriority - adds r0, r7, 0 - bl SpeciesToCryId - adds r7, r0, 0 - movs r1, 0x7F - ands r1, r7 - lsrs r0, r7, 7 - lsls r0, 24 - lsrs r0, 24 - adds r2, r0, 0 - cmp r0, 0x1 - beq _08072118 - cmp r0, 0x1 - bgt _080720E8 - cmp r0, 0 - beq _080720F2 - b _08072186 - .align 2, 0 -_080720E4: .4byte 0x00003a98 -_080720E8: - cmp r2, 0x2 - beq _0807213C - cmp r2, 0x3 - beq _08072160 - b _08072186 -_080720F2: - mov r0, r9 - cmp r0, 0 - beq _08072108 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08072104 @ =gUnknown_848DB44 - b _0807217C - .align 2, 0 -_08072104: .4byte gUnknown_848DB44 -_08072108: - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08072114 @ =gUnknown_848C914 - b _0807217C - .align 2, 0 -_08072114: .4byte gUnknown_848C914 -_08072118: - mov r3, r9 - cmp r3, 0 - beq _0807212C - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08072128 @ =gUnknown_848E144 - b _0807217C - .align 2, 0 -_08072128: .4byte gUnknown_848E144 -_0807212C: - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08072138 @ =gUnknown_848CF14 - b _0807217C - .align 2, 0 -_08072138: .4byte gUnknown_848CF14 -_0807213C: - mov r0, r9 - cmp r0, 0 - beq _08072150 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _0807214C @ =gUnknown_848E744 - b _0807217C - .align 2, 0 -_0807214C: .4byte gUnknown_848E744 -_08072150: - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _0807215C @ =gUnknown_848D514 - b _0807217C - .align 2, 0 -_0807215C: .4byte gUnknown_848D514 -_08072160: - mov r3, r9 - cmp r3, 0 - beq _08072174 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08072170 @ =gUnknown_848ED44 - b _0807217C - .align 2, 0 -_08072170: .4byte gUnknown_848ED44 -_08072174: - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08072198 @ =gUnknown_848DB14 -_0807217C: - adds r0, r1 - bl SetPokemonCryTone - ldr r1, _0807219C @ =gUnknown_2037ECC - str r0, [r1] -_08072186: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08072198: .4byte gUnknown_848DB14 -_0807219C: .4byte gUnknown_2037ECC - thumb_func_end sub_8071F78 - - thumb_func_start IsCryFinished -IsCryFinished: @ 80721A0 - push {lr} - ldr r0, _080721B8 @ =Task_DuckBGMForPokemonCry - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080721BC - bl ClearPokemonCrySongs - movs r0, 0x1 - b _080721BE - .align 2, 0 -_080721B8: .4byte Task_DuckBGMForPokemonCry -_080721BC: - movs r0, 0 -_080721BE: - pop {r1} - bx r1 - thumb_func_end IsCryFinished - - thumb_func_start StopCryAndClearCrySongs -StopCryAndClearCrySongs: @ 80721C4 - push {lr} - ldr r0, _080721D8 @ =gUnknown_2037ECC - ldr r0, [r0] - bl m4aMPlayStop - bl ClearPokemonCrySongs - pop {r0} - bx r0 - .align 2, 0 -_080721D8: .4byte gUnknown_2037ECC - thumb_func_end StopCryAndClearCrySongs - - thumb_func_start StopCry -StopCry: @ 80721DC - push {lr} - ldr r0, _080721EC @ =gUnknown_2037ECC - ldr r0, [r0] - bl m4aMPlayStop - pop {r0} - bx r0 - .align 2, 0 -_080721EC: .4byte gUnknown_2037ECC - thumb_func_end StopCry - - thumb_func_start IsCryPlayingOrClearCrySongs -IsCryPlayingOrClearCrySongs: @ 80721F0 - push {lr} - ldr r0, _08072208 @ =gUnknown_2037ECC - ldr r0, [r0] - bl IsPokemonCryPlaying - cmp r0, 0 - bne _0807220C - bl ClearPokemonCrySongs - movs r0, 0 - b _0807220E - .align 2, 0 -_08072208: .4byte gUnknown_2037ECC -_0807220C: - movs r0, 0x1 -_0807220E: - pop {r1} - bx r1 - thumb_func_end IsCryPlayingOrClearCrySongs - - thumb_func_start IsCryPlaying -IsCryPlaying: @ 8072214 - push {lr} - ldr r0, _08072228 @ =gUnknown_2037ECC - ldr r0, [r0] - bl IsPokemonCryPlaying - cmp r0, 0 - bne _0807222C - movs r0, 0 - b _0807222E - .align 2, 0 -_08072228: .4byte gUnknown_2037ECC -_0807222C: - movs r0, 0x1 -_0807222E: - pop {r1} - bx r1 - thumb_func_end IsCryPlaying - - thumb_func_start Task_DuckBGMForPokemonCry -Task_DuckBGMForPokemonCry: @ 8072234 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08072248 @ =gUnknown_2037ED0 - ldrb r0, [r1] - cmp r0, 0 - beq _0807224C - subs r0, 0x1 - strb r0, [r1] - b _0807226A - .align 2, 0 -_08072248: .4byte gUnknown_2037ED0 -_0807224C: - ldr r0, _08072270 @ =gUnknown_2037ECC - ldr r0, [r0] - bl IsPokemonCryPlaying - cmp r0, 0 - bne _0807226A - ldr r0, _08072274 @ =gMPlay_BGM - ldr r1, _08072278 @ =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl - adds r0, r4, 0 - bl DestroyTask -_0807226A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08072270: .4byte gUnknown_2037ECC -_08072274: .4byte gMPlay_BGM -_08072278: .4byte 0x0000ffff - thumb_func_end Task_DuckBGMForPokemonCry - - thumb_func_start RestoreBGMVolumeAfterPokemonCry -RestoreBGMVolumeAfterPokemonCry: @ 807227C - push {r4,lr} - ldr r4, _0807229C @ =Task_DuckBGMForPokemonCry - adds r0, r4, 0 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08072296 - adds r0, r4, 0 - movs r1, 0x50 - bl CreateTask -_08072296: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807229C: .4byte Task_DuckBGMForPokemonCry - thumb_func_end RestoreBGMVolumeAfterPokemonCry - - thumb_func_start PlayBGM -PlayBGM: @ 80722A0 - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _080722C4 @ =gUnknown_3005080 - ldrb r0, [r0] - cmp r0, 0 - beq _080722B0 - movs r1, 0 -_080722B0: - ldr r0, _080722C8 @ =0x0000ffff - cmp r1, r0 - bne _080722B8 - movs r1, 0 -_080722B8: - adds r0, r1, 0 - bl m4aSongNumStart - pop {r0} - bx r0 - .align 2, 0 -_080722C4: .4byte gUnknown_3005080 -_080722C8: .4byte 0x0000ffff - thumb_func_end PlayBGM - - thumb_func_start PlaySE -PlaySE: @ 80722CC - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _080722EC @ =gUnknown_2031DD8 - ldrb r0, [r0] - cmp r0, 0 - bne _080722E8 - ldr r0, _080722F0 @ =gUnknown_203ADFA - ldrb r0, [r0] - cmp r0, 0x2 - beq _080722E8 - adds r0, r1, 0 - bl m4aSongNumStart -_080722E8: - pop {r0} - bx r0 - .align 2, 0 -_080722EC: .4byte gUnknown_2031DD8 -_080722F0: .4byte gUnknown_203ADFA - thumb_func_end PlaySE - - thumb_func_start PlaySE12WithPanning -PlaySE12WithPanning: @ 80722F4 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r4, r1, 0 - lsls r0, 16 - lsrs r0, 16 - lsls r4, 24 - lsrs r4, 24 - bl m4aSongNumStart - ldr r6, _0807233C @ =gMPlay_SE1 - adds r0, r6, 0 - bl m4aMPlayImmInit - ldr r0, _08072340 @ =gMPlay_SE2 - mov r8, r0 - bl m4aMPlayImmInit - ldr r5, _08072344 @ =0x0000ffff - lsls r4, 24 - asrs r4, 24 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl m4aMPlayPanpotControl - mov r0, r8 - adds r1, r5, 0 - adds r2, r4, 0 - bl m4aMPlayPanpotControl - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807233C: .4byte gMPlay_SE1 -_08072340: .4byte gMPlay_SE2 -_08072344: .4byte 0x0000ffff - thumb_func_end PlaySE12WithPanning - - thumb_func_start PlaySE1WithPanning -PlaySE1WithPanning: @ 8072348 - push {r4,r5,lr} - adds r4, r1, 0 - lsls r0, 16 - lsrs r0, 16 - lsls r4, 24 - lsrs r4, 24 - bl m4aSongNumStart - ldr r5, _08072374 @ =gMPlay_SE1 - adds r0, r5, 0 - bl m4aMPlayImmInit - ldr r1, _08072378 @ =0x0000ffff - lsls r4, 24 - asrs r4, 24 - adds r0, r5, 0 - adds r2, r4, 0 - bl m4aMPlayPanpotControl - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08072374: .4byte gMPlay_SE1 -_08072378: .4byte 0x0000ffff - thumb_func_end PlaySE1WithPanning - - thumb_func_start PlaySE2WithPanning -PlaySE2WithPanning: @ 807237C - push {r4,r5,lr} - adds r4, r1, 0 - lsls r0, 16 - lsrs r0, 16 - lsls r4, 24 - lsrs r4, 24 - bl m4aSongNumStart - ldr r5, _080723A8 @ =gMPlay_SE2 - adds r0, r5, 0 - bl m4aMPlayImmInit - ldr r1, _080723AC @ =0x0000ffff - lsls r4, 24 - asrs r4, 24 - adds r0, r5, 0 - adds r2, r4, 0 - bl m4aMPlayPanpotControl - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080723A8: .4byte gMPlay_SE2 -_080723AC: .4byte 0x0000ffff - thumb_func_end PlaySE2WithPanning - - thumb_func_start SE12PanpotControl -SE12PanpotControl: @ 80723B0 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r0, _080723D4 @ =gMPlay_SE1 - ldr r5, _080723D8 @ =0x0000ffff - lsls r4, 24 - asrs r4, 24 - adds r1, r5, 0 - adds r2, r4, 0 - bl m4aMPlayPanpotControl - ldr r0, _080723DC @ =gMPlay_SE2 - adds r1, r5, 0 - adds r2, r4, 0 - bl m4aMPlayPanpotControl - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080723D4: .4byte gMPlay_SE1 -_080723D8: .4byte 0x0000ffff -_080723DC: .4byte gMPlay_SE2 - thumb_func_end SE12PanpotControl - - thumb_func_start IsSEPlaying -IsSEPlaying: @ 80723E0 - push {lr} - ldr r0, _08072410 @ =gMPlay_SE1 - ldr r1, [r0, 0x4] - movs r2, 0x80 - lsls r2, 24 - adds r3, r0, 0 - cmp r1, 0 - bge _080723FA - ldr r0, _08072414 @ =gMPlay_SE2 - ldr r0, [r0, 0x4] - ands r0, r2 - cmp r0, 0 - bne _0807240C -_080723FA: - ldr r1, _08072418 @ =0x0000ffff - ldrh r0, [r3, 0x4] - cmp r0, 0 - bne _0807241C - ldr r0, _08072414 @ =gMPlay_SE2 - ldr r0, [r0, 0x4] - ands r0, r1 - cmp r0, 0 - bne _0807241C -_0807240C: - movs r0, 0 - b _0807241E - .align 2, 0 -_08072410: .4byte gMPlay_SE1 -_08072414: .4byte gMPlay_SE2 -_08072418: .4byte 0x0000ffff -_0807241C: - movs r0, 0x1 -_0807241E: - pop {r1} - bx r1 - thumb_func_end IsSEPlaying - - thumb_func_start IsBGMPlaying -IsBGMPlaying: @ 8072424 - push {lr} - ldr r0, _0807243C @ =gMPlay_BGM - ldr r1, [r0, 0x4] - cmp r1, 0 - blt _08072444 - ldr r0, _08072440 @ =0x0000ffff - ands r1, r0 - cmp r1, 0 - beq _08072444 - movs r0, 0x1 - b _08072446 - .align 2, 0 -_0807243C: .4byte gMPlay_BGM -_08072440: .4byte 0x0000ffff -_08072444: - movs r0, 0 -_08072446: - pop {r1} - bx r1 - thumb_func_end IsBGMPlaying - - thumb_func_start IsSpecialSEPlaying -IsSpecialSEPlaying: @ 807244C - push {lr} - ldr r0, _08072464 @ =gMPlay_SE3 - ldr r1, [r0, 0x4] - cmp r1, 0 - blt _0807246C - ldr r0, _08072468 @ =0x0000ffff - ands r1, r0 - cmp r1, 0 - beq _0807246C - movs r0, 0x1 - b _0807246E - .align 2, 0 -_08072464: .4byte gMPlay_SE3 -_08072468: .4byte 0x0000ffff -_0807246C: - movs r0, 0 -_0807246E: - pop {r1} - bx r1 - thumb_func_end IsSpecialSEPlaying - - thumb_func_start sub_8072474 -sub_8072474: @ 8072474 - push {lr} - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - ldr r1, _08072490 @ =gUnknown_203F174 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _08072494 @ =gMPlay_BGM - ldr r1, _08072498 @ =0x0000ffff - bl m4aMPlayVolumeControl - pop {r0} - bx r0 - .align 2, 0 -_08072490: .4byte gUnknown_203F174 -_08072494: .4byte gMPlay_BGM -_08072498: .4byte 0x0000ffff - thumb_func_end sub_8072474 - - thumb_func_start sub_807249C -sub_807249C: @ 807249C - push {lr} - ldr r1, _080724B4 @ =gUnknown_203F174 - movs r0, 0 - strb r0, [r1] - ldr r0, _080724B8 @ =gMPlay_BGM - ldr r1, _080724BC @ =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl - pop {r0} - bx r0 - .align 2, 0 -_080724B4: .4byte gUnknown_203F174 -_080724B8: .4byte gMPlay_BGM -_080724BC: .4byte 0x0000ffff - thumb_func_end sub_807249C - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/unk_81507FC.s b/asm/unk_81507FC.s index 7f189f1d3..cb042d971 100644 --- a/asm/unk_81507FC.s +++ b/asm/unk_81507FC.s @@ -2859,7 +2859,7 @@ _08151E6C: cmp r0, 0x1 bne _08151E8C movs r0, 0xA - bl sub_8071BC4 + bl PlayFanfareByFanfareNum ldr r0, [r4] movs r2, 0xAA lsls r2, 1 @@ -3054,7 +3054,7 @@ _08151FF0: cmp r0, 0x1 bne _08152010 movs r0, 0xA - bl sub_8071BC4 + bl PlayFanfareByFanfareNum ldr r0, [r4] movs r3, 0xAA lsls r3, 1 diff --git a/common_syms/m4a_2.txt b/common_syms/m4a_2.txt index a80d8a79d..6e7b3c93e 100644 --- a/common_syms/m4a_2.txt +++ b/common_syms/m4a_2.txt @@ -5,8 +5,8 @@ gMPlayJumpTable gCgbChans gPokemonCryTracks gPokemonCrySong -gMPlay_BGM -gMPlay_SE1 -gMPlay_SE2 +gMPlayInfo_BGM +gMPlayInfo_SE1 +gMPlayInfo_SE2 gMPlayMemAccArea -gMPlay_SE3 +gMPlayInfo_SE3 diff --git a/common_syms/sound.txt b/common_syms/sound.txt new file mode 100644 index 000000000..0f6f2fc75 --- /dev/null +++ b/common_syms/sound.txt @@ -0,0 +1 @@ +gDisableMusic diff --git a/data/data.s b/data/data.s index 6f5459f4f..d1598bfbc 100644 --- a/data/data.s +++ b/data/data.s @@ -1553,7 +1553,7 @@ gUnknown_83AC960:: @ 83AC960 gUnknown_83AC970:: @ 83AC970 .incbin "baserom.gba", 0x3AC970, 0x20 -gUnknown_83AC990:: @ 83AC990 +sFanfares:: @ 83AC990 .incbin "baserom.gba", 0x3AC990, 0x278 gUnknown_83ACC08:: @ 83ACC08 diff --git a/data/sound_data.s b/data/sound_data.s index 8991dd7bf..4bbe6ce75 100644 --- a/data/sound_data.s +++ b/data/sound_data.s @@ -3,7 +3,7 @@ voicegroup_pokemon_cry:: @ 8489C8C .incbin "baserom.gba", 0x489C8C, 0x2C88 -gUnknown_848C914:: @ 848C914 +gCryTable:: @ 848C914 .incbin "baserom.gba", 0x48C914, 0x600 gUnknown_848CF14:: @ 848CF14 @@ -15,7 +15,7 @@ gUnknown_848D514:: @ 848D514 gUnknown_848DB14:: @ 848DB14 .incbin "baserom.gba", 0x48DB14, 0x30 -gUnknown_848DB44:: @ 848DB44 +gCryTable2:: @ 848DB44 .incbin "baserom.gba", 0x48DB44, 0x600 gUnknown_848E144:: @ 848E144 diff --git a/include/constants/songs.h b/include/constants/songs.h index 2e3adcbbf..e31a38fdc 100644 --- a/include/constants/songs.h +++ b/include/constants/songs.h @@ -1,6 +1,7 @@ #ifndef GUARD_CONSTANTS_SONGS_H #define GUARD_CONSTANTS_SONGS_H +#define MUS_DUMMY 0 #define SE_STOP 0 #define SE_KAIFUKU 1 #define SE_PC_LOGON 2 diff --git a/include/gba/m4a_internal.h b/include/gba/m4a_internal.h index ff92fcc40..89d5c1f5a 100644 --- a/include/gba/m4a_internal.h +++ b/include/gba/m4a_internal.h @@ -404,6 +404,10 @@ void SampleFreqSet(u32 freq); void m4aSoundVSyncOn(void); void m4aSoundVSyncOff(void); +void m4aMPlayTempoControl(struct MusicPlayerInfo *mplayInfo, u16 tempo); +void m4aMPlayVolumeControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u16 volume); +void m4aMPlayPitchControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, s16 pitch); +void m4aMPlayPanpotControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, s8 pan); void ClearModM(struct MusicPlayerTrack *track); void m4aMPlayModDepthSet(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u8 modDepth); void m4aMPlayLFOSpeedSet(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u8 lfoSpeed); diff --git a/ld_script.txt b/ld_script.txt index f7071f2be..1e1d66fbb 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -115,7 +115,7 @@ SECTIONS { asm/start_menu.o(.text); asm/tileset_anims.o(.text); asm/palette.o(.text); - asm/sound.o(.text); + src/sound.o(.text); asm/battle_anim.o(.text); asm/battle_anim_8074480.o(.text); src/task.o(.text); diff --git a/src/m4a_2.c b/src/m4a_2.c index 2d3c65848..0625f05d1 100644 --- a/src/m4a_2.c +++ b/src/m4a_2.c @@ -11,10 +11,10 @@ void *gMPlayJumpTable[36]; struct CgbChannel gCgbChans[4]; struct MusicPlayerTrack gPokemonCryTracks[MAX_POKEMON_CRIES * 2]; struct PokemonCrySong gPokemonCrySong; -struct MusicPlayerInfo gMPlay_BGM; -struct MusicPlayerInfo gMPlay_SE1; -struct MusicPlayerInfo gMPlay_SE2; -struct MusicPlayerInfo gMPlay_SE3; +struct MusicPlayerInfo gMPlayInfo_BGM; +struct MusicPlayerInfo gMPlayInfo_SE1; +struct MusicPlayerInfo gMPlayInfo_SE2; +struct MusicPlayerInfo gMPlayInfo_SE3; u8 gMPlayMemAccArea[0x10]; u32 MidiKeyToFreq(struct WaveData *wav, u8 key, u8 fineAdjust) diff --git a/src/sound.c b/src/sound.c new file mode 100644 index 000000000..b8814de81 --- /dev/null +++ b/src/sound.c @@ -0,0 +1,628 @@ +#include "global.h" +#include "gba/m4a_internal.h" +#include "sound.h" +#include "battle.h" +#include "m4a.h" +#include "main.h" +#include "pokemon.h" +#include "constants/songs.h" +#include "task.h" + +struct Fanfare +{ + u16 songNum; + u16 duration; +}; + +// TODO: what are these +extern u8 gUnknown_2031DD8; +extern u8 gUnknown_203ADFA; +extern u8 gUnknown_203F174; + +// ewram +EWRAM_DATA struct MusicPlayerInfo* gMPlay_PokemonCry = NULL; +EWRAM_DATA u8 gPokemonCryBGMDuckingCounter = 0; + +// iwram bss +IWRAM_DATA static u16 sCurrentMapMusic; +IWRAM_DATA static u16 sNextMapMusic; +IWRAM_DATA static u8 sMapMusicState; +IWRAM_DATA static u8 sMapMusicFadeInSpeed; +IWRAM_DATA static u16 sFanfareCounter; + +// iwram common +bool8 gDisableMusic; + +extern u32 gBattleTypeFlags; +extern struct MusicPlayerInfo gMPlayInfo_BGM; +extern struct MusicPlayerInfo gMPlayInfo_SE1; +extern struct MusicPlayerInfo gMPlayInfo_SE2; +extern struct MusicPlayerInfo gMPlayInfo_SE3; +extern struct ToneData gCryTable[]; +extern struct ToneData gCryTable2[]; +extern const struct Fanfare sFanfares[]; + +extern u16 SpeciesToCryId(u16); + +static void Task_Fanfare(u8 taskId); +static void CreateFanfareTask(void); +static void Task_DuckBGMForPokemonCry(u8 taskId); +static void RestoreBGMVolumeAfterPokemonCry(void); + +#define CRY_VOLUME 120 // was 125 in R/S + +void InitMapMusic(void) +{ + gDisableMusic = FALSE; + ResetMapMusic(); +} + +void MapMusicMain(void) +{ + switch (sMapMusicState) + { + case 0: + break; + case 1: + sMapMusicState = 2; + PlayBGM(sCurrentMapMusic); + break; + case 2: + case 3: + case 4: + break; + case 5: + if (IsBGMStopped()) + { + sNextMapMusic = 0; + sMapMusicState = 0; + } + break; + case 6: + if (IsBGMStopped() && IsFanfareTaskInactive()) + { + sCurrentMapMusic = sNextMapMusic; + sNextMapMusic = 0; + sMapMusicState = 2; + PlayBGM(sCurrentMapMusic); + } + break; + case 7: + if (IsBGMStopped() && IsFanfareTaskInactive()) + { + FadeInNewBGM(sNextMapMusic, sMapMusicFadeInSpeed); + sCurrentMapMusic = sNextMapMusic; + sNextMapMusic = 0; + sMapMusicState = 2; + sMapMusicFadeInSpeed = 0; + } + break; + } +} + +void ResetMapMusic(void) +{ + sCurrentMapMusic = 0; + sNextMapMusic = 0; + sMapMusicState = 0; + sMapMusicFadeInSpeed = 0; +} + +u16 GetCurrentMapMusic(void) +{ + return sCurrentMapMusic; +} + +void PlayNewMapMusic(u16 songNum) +{ + sCurrentMapMusic = songNum; + sNextMapMusic = 0; + sMapMusicState = 1; +} + +void StopMapMusic(void) +{ + sCurrentMapMusic = 0; + sNextMapMusic = 0; + sMapMusicState = 1; +} + +void FadeOutMapMusic(u8 speed) +{ + if (IsNotWaitingForBGMStop()) + FadeOutBGM(speed); + sCurrentMapMusic = 0; + sNextMapMusic = 0; + sMapMusicState = 5; +} + +void FadeOutAndPlayNewMapMusic(u16 songNum, u8 speed) +{ + FadeOutMapMusic(speed); + sCurrentMapMusic = 0; + sNextMapMusic = songNum; + sMapMusicState = 6; +} + +void FadeOutAndFadeInNewMapMusic(u16 songNum, u8 fadeOutSpeed, u8 fadeInSpeed) +{ + FadeOutMapMusic(fadeOutSpeed); + sCurrentMapMusic = 0; + sNextMapMusic = songNum; + sMapMusicState = 7; + sMapMusicFadeInSpeed = fadeInSpeed; +} + +void FadeInNewMapMusic(u16 songNum, u8 speed) +{ + FadeInNewBGM(songNum, speed); + sCurrentMapMusic = songNum; + sNextMapMusic = 0; + sMapMusicState = 2; + sMapMusicFadeInSpeed = 0; +} + +bool8 IsNotWaitingForBGMStop(void) +{ + if (sMapMusicState == 6) + return FALSE; + if (sMapMusicState == 5) + return FALSE; + if (sMapMusicState == 7) + return FALSE; + return TRUE; +} + +void PlayFanfareByFanfareNum(u8 fanfareNum) +{ + u16 songNum; + + if(gUnknown_203ADFA == 2) + { + sFanfareCounter = 0xFF; + } + else + { + m4aMPlayStop(&gMPlayInfo_BGM); + songNum = sFanfares[fanfareNum].songNum; + sFanfareCounter = sFanfares[fanfareNum].duration; + m4aSongNumStart(songNum); + } +} + +bool8 WaitFanfare(bool8 stop) +{ + if (sFanfareCounter) + { + sFanfareCounter--; + return FALSE; + } + else + { + if (!stop) + m4aMPlayContinue(&gMPlayInfo_BGM); + else + m4aSongNumStart(MUS_DUMMY); + + return TRUE; + } +} + +void StopFanfareByFanfareNum(u8 fanfareNum) +{ + m4aSongNumStop(sFanfares[fanfareNum].songNum); +} + +void PlayFanfare(u16 songNum) +{ + s32 i; + for (i = 0; (u32)i < 14; i++) + { + if (sFanfares[i].songNum == songNum) + { + PlayFanfareByFanfareNum(i); + CreateFanfareTask(); + return; + } + } + + PlayFanfareByFanfareNum(0); + CreateFanfareTask(); +} + +bool8 IsFanfareTaskInactive(void) +{ + if (FuncIsActiveTask(Task_Fanfare) == TRUE) + return FALSE; + return TRUE; +} + +static void Task_Fanfare(u8 taskId) +{ + if (sFanfareCounter) + { + sFanfareCounter--; + } + else + { + m4aMPlayContinue(&gMPlayInfo_BGM); + DestroyTask(taskId); + } +} + +static void CreateFanfareTask(void) +{ + if (FuncIsActiveTask(Task_Fanfare) != TRUE) + CreateTask(Task_Fanfare, 80); +} + +void FadeInNewBGM(u16 songNum, u8 speed) +{ + if (gDisableMusic) + songNum = 0; + if (songNum == 0xFFFF) + songNum = 0; + m4aSongNumStart(songNum); + m4aMPlayImmInit(&gMPlayInfo_BGM); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0); + m4aSongNumStop(songNum); + m4aMPlayFadeIn(&gMPlayInfo_BGM, speed); +} + +void FadeOutBGMTemporarily(u8 speed) +{ + m4aMPlayFadeOutTemporarily(&gMPlayInfo_BGM, speed); +} + +bool8 IsBGMPausedOrStopped(void) +{ + if (gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_PAUSE) + return TRUE; + if (!(gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_TRACK)) + return TRUE; + return FALSE; +} + +void FadeInBGM(u8 speed) +{ + m4aMPlayFadeIn(&gMPlayInfo_BGM, speed); +} + +void FadeOutBGM(u8 speed) +{ + m4aMPlayFadeOut(&gMPlayInfo_BGM, speed); +} + +bool8 IsBGMStopped(void) +{ + if (!(gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_TRACK)) + return TRUE; + return FALSE; +} + +void PlayCry1(u16 species, s8 pan) +{ + m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); + PlayCryInternal(species, pan, CRY_VOLUME, 10, 0); + gPokemonCryBGMDuckingCounter = 2; + RestoreBGMVolumeAfterPokemonCry(); +} + +void PlayCry2(u16 species, s8 pan, s8 volume, u8 priority) +{ + PlayCryInternal(species, pan, volume, priority, 0); +} + +void PlayCry3(u16 species, s8 pan, u8 mode) +{ + if (mode == 1) + { + PlayCryInternal(species, pan, CRY_VOLUME, 10, 1); + } + else + { + m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); + PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); + gPokemonCryBGMDuckingCounter = 2; + RestoreBGMVolumeAfterPokemonCry(); + } +} + +void PlayCry4(u16 species, s8 pan, u8 mode) +{ + if (mode == 1) + { + PlayCryInternal(species, pan, CRY_VOLUME, 10, 1); + } + else + { + if (!(gBattleTypeFlags & BATTLE_TYPE_MULTI)) + m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); + PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); + } +} + +// PlayCry5 and 6 are not in FR/LG. + +void PlayCry7(u16 species, u8 mode) // exclusive to FR/LG +{ + if((u8)(gUnknown_203ADFA - 2) >= 2) + { + m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); + PlayCryInternal(species, 0, CRY_VOLUME, 10, mode); + } + gPokemonCryBGMDuckingCounter = 2; + RestoreBGMVolumeAfterPokemonCry(); +} + +void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode) +{ + bool32 v0; + u32 release; + u32 length; + u32 pitch; + u32 chorus; + u32 index; + u8 table; + + species--; + length = 140; + v0 = FALSE; + release = 0; + pitch = 15360; + chorus = 0; + + switch (mode) + { + case 0: + break; + case 1: + length = 20; + release = 225; + break; + case 2: + release = 225; + pitch = 15600; + chorus = 20; + volume = 90; + break; + case 3: + length = 50; + release = 200; + pitch = 15800; + chorus = 20; + volume = 90; + break; + case 4: + length = 25; + v0 = TRUE; + release = 100; + pitch = 15600; + chorus = 192; + volume = 90; + break; + case 5: + release = 200; + pitch = 14440; + break; + case 6: // _08072044 + release = 220; + pitch = 15555; + chorus = 192; + volume = 90; // FR/LG changed this from 70 to 90 + break; + case 7: + length = 10; + release = 100; + pitch = 14848; + break; + case 8: + length = 60; + release = 225; + pitch = 15616; + break; + case 9: + length = 15; + v0 = TRUE; + release = 125; + pitch = 15200; + break; + case 10: + length = 100; + release = 225; + pitch = 15200; + break; + case 12: + length = 20; + release = 225; + case 11: + pitch = 15000; + break; + } + + SetPokemonCryVolume(volume); + SetPokemonCryPanpot(pan); + SetPokemonCryPitch(pitch); + SetPokemonCryLength(length); + SetPokemonCryProgress(0); + SetPokemonCryRelease(release); + SetPokemonCryChorus(chorus); + SetPokemonCryPriority(priority); + + // This is a fancy way to get a cry of a pokemon. + // It creates 4 sets of 128 mini cry tables. + // If you wish to expand pokemon, you need to + // append new cases to the switch. + species = SpeciesToCryId(species); + index = species & 0x7F; + table = species / 128; + + switch (table) + { + case 0: + gMPlay_PokemonCry = SetPokemonCryTone( + v0 ? &gCryTable2[(128 * 0) + index] : &gCryTable[(128 * 0) + index]); + break; + case 1: + gMPlay_PokemonCry = SetPokemonCryTone( + v0 ? &gCryTable2[(128 * 1) + index] : &gCryTable[(128 * 1) + index]); + break; + case 2: + gMPlay_PokemonCry = SetPokemonCryTone( + v0 ? &gCryTable2[(128 * 2) + index] : &gCryTable[(128 * 2) + index]); + break; + case 3: + gMPlay_PokemonCry = SetPokemonCryTone( + v0 ? &gCryTable2[(128 * 3) + index] : &gCryTable[(128 * 3) + index]); + break; + } +} + +bool8 IsCryFinished(void) +{ + if (FuncIsActiveTask(Task_DuckBGMForPokemonCry) == TRUE) + { + return FALSE; + } + else + { + ClearPokemonCrySongs(); + return TRUE; + } +} + +void StopCryAndClearCrySongs(void) +{ + m4aMPlayStop(gMPlay_PokemonCry); + ClearPokemonCrySongs(); +} + +void StopCry(void) +{ + m4aMPlayStop(gMPlay_PokemonCry); +} + +bool8 IsCryPlayingOrClearCrySongs(void) +{ + if (IsPokemonCryPlaying(gMPlay_PokemonCry)) + { + return TRUE; + } + else + { + ClearPokemonCrySongs(); + return FALSE; + } +} + +bool8 IsCryPlaying(void) +{ + if (IsPokemonCryPlaying(gMPlay_PokemonCry)) + return TRUE; + else + return FALSE; +} + +static void Task_DuckBGMForPokemonCry(u8 taskId) +{ + if (gPokemonCryBGMDuckingCounter) + { + gPokemonCryBGMDuckingCounter--; + return; + } + + if (!IsPokemonCryPlaying(gMPlay_PokemonCry)) + { + m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256); + DestroyTask(taskId); + } +} + +static void RestoreBGMVolumeAfterPokemonCry(void) +{ + if (FuncIsActiveTask(Task_DuckBGMForPokemonCry) != TRUE) + CreateTask(Task_DuckBGMForPokemonCry, 80); +} + +void PlayBGM(u16 songNum) +{ + if (gDisableMusic) + songNum = 0; + if (songNum == 0xFFFF) + songNum = 0; + m4aSongNumStart(songNum); +} + +void PlaySE(u16 songNum) +{ + if(gUnknown_2031DD8 == 0 && gUnknown_203ADFA != 2) + m4aSongNumStart(songNum); +} + +void PlaySE12WithPanning(u16 songNum, s8 pan) +{ + m4aSongNumStart(songNum); + m4aMPlayImmInit(&gMPlayInfo_SE1); + m4aMPlayImmInit(&gMPlayInfo_SE2); + m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan); +} + +void PlaySE1WithPanning(u16 songNum, s8 pan) +{ + m4aSongNumStart(songNum); + m4aMPlayImmInit(&gMPlayInfo_SE1); + m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan); +} + +void PlaySE2WithPanning(u16 songNum, s8 pan) +{ + m4aSongNumStart(songNum); + m4aMPlayImmInit(&gMPlayInfo_SE2); + m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan); +} + +void SE12PanpotControl(s8 pan) +{ + m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan); +} + +bool8 IsSEPlaying(void) +{ + if ((gMPlayInfo_SE1.status & MUSICPLAYER_STATUS_PAUSE) && (gMPlayInfo_SE2.status & MUSICPLAYER_STATUS_PAUSE)) + return FALSE; + if (!(gMPlayInfo_SE1.status & MUSICPLAYER_STATUS_TRACK) && !(gMPlayInfo_SE2.status & MUSICPLAYER_STATUS_TRACK)) + return FALSE; + return TRUE; +} + +bool8 IsBGMPlaying(void) +{ + if (gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_PAUSE) + return FALSE; + if (!(gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_TRACK)) + return FALSE; + return TRUE; +} + +bool8 IsSpecialSEPlaying(void) +{ + if (gMPlayInfo_SE3.status & MUSICPLAYER_STATUS_PAUSE) + return FALSE; + if (!(gMPlayInfo_SE3.status & MUSICPLAYER_STATUS_TRACK)) + return FALSE; + return TRUE; +} + +void sub_8072474(u16 volume) +{ + gUnknown_203F174 = 1; + m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, volume); +} + +void sub_807249C(void) +{ + gUnknown_203F174 = 0; + m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256); +} diff --git a/src/text.c b/src/text.c index 76c6dba63..7832d86f3 100644 --- a/src/text.c +++ b/src/text.c @@ -680,17 +680,17 @@ _08005A84:\n\ bl FillWindowPixelBuffer\n\ b _0800589E\n\ _08005A96:\n\ - ldr r0, _08005AA0 @ =gMPlay_BGM\n\ + ldr r0, _08005AA0 @ =gMPlayInfo_BGM\n\ bl m4aMPlayStop\n\ b _0800589E\n\ .align 2, 0\n\ -_08005AA0: .4byte gMPlay_BGM\n\ +_08005AA0: .4byte gMPlayInfo_BGM\n\ _08005AA4:\n\ - ldr r0, _08005AAC @ =gMPlay_BGM\n\ + ldr r0, _08005AAC @ =gMPlayInfo_BGM\n\ bl m4aMPlayContinue\n\ b _0800589E\n\ .align 2, 0\n\ -_08005AAC: .4byte gMPlay_BGM\n\ +_08005AAC: .4byte gMPlayInfo_BGM\n\ _08005AB0:\n\ ldr r0, [r6]\n\ ldrb r4, [r0]\n\ diff --git a/sym_bss.txt b/sym_bss.txt index ae92068d5..5abd54a10 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -129,21 +129,9 @@ gUnknown_3000FB8: @ 3000FB8 gUnknown_3000FBC: @ 3000FBC .space 0x4 -gUnknown_3000FC0: @ 3000FC0 - .space 0x2 - -gUnknown_3000FC2: @ 3000FC2 - .space 0x2 - -gUnknown_3000FC4: @ 3000FC4 - .space 0x1 - -gUnknown_3000FC5: @ 3000FC5 - .space 0x1 - -gUnknown_3000FC6: @ 3000FC6 - .space 0x2 + .include "src/sound.o" + .align 2 gUnknown_3000FC8: @ 3000FC8 .space 0x20 diff --git a/sym_common.txt b/sym_common.txt index 37c344e35..db9a63d4f 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -195,9 +195,7 @@ gUnknown_3005078: @ 3005078 gUnknown_300507C: @ 300507C .space 0x4 -gUnknown_3005080: @ 3005080 - .space 0x10 - + .include "sound.o" .include "task.o" @ what is this? diff --git a/sym_ewram.txt b/sym_ewram.txt index 57d3f4876..3864a27a7 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -815,12 +815,9 @@ gUnknown_2037AC8: @ 2037AC8 gUnknown_2037ACC: @ 2037ACC .space 0x400 -gUnknown_2037ECC: @ 2037ECC - .space 0x4 - -gUnknown_2037ED0: @ 2037ED0 - .space 0x4 + .include "src/sound.o" + .align 2 gUnknown_2037ED4: @ 2037ED4 .space 0x4 |