From 6faf948c9a9eb6c71bc93332351f13d82c2c2ca2 Mon Sep 17 00:00:00 2001 From: Phillip Stephens Date: Thu, 7 Apr 2022 22:17:01 -0700 Subject: [PATCH] Split bss down to game data Former-commit-id: 0b3818ffc1af5f4cf1a014c55b7f205f68a290f3 --- asm/Dolphin/card/CARDBios.s | 5 + asm/Dolphin/card/CARDOpen.s | 4 + asm/Dolphin/dtk.s | 23 + asm/Dolphin/dvd/dvd.s | 11 + asm/Dolphin/dvd/dvdlow.s | 6 + asm/Dolphin/dvd/dvdqueue.s | 5 + asm/Dolphin/dvd/fstload.s | 6 + asm/Dolphin/exi/EXIBios.s | 5 + asm/Dolphin/gx/GXInit.s | 5 + asm/Dolphin/os/OS.s | 5 + asm/Dolphin/os/OSError.s | 5 + asm/Dolphin/os/OSFatal.s | 5 + asm/Dolphin/os/OSReboot.s | 5 + asm/Dolphin/os/OSRtc.s | 4 + asm/Dolphin/os/OSThread.s | 4 + asm/Dolphin/pad/pad.s | 6 + asm/Dolphin/si/SIBios.s | 21 + asm/Dolphin/thp/THPDec.s | 8 + asm/Dolphin/vi.s | 6 + asm/Runtime/Gecko_ExceptionPPC.s | 4 + asm/Runtime/abort_exit.s | 4 + asm/Runtime/alloc.s | 20 +- asm/bss.s | 274 ------ asm/musyx/hardware.s | 189 +++-- asm/musyx/hw_aramdma.s | 73 +- asm/musyx/hw_dolphin.s | 6 + asm/musyx/hw_dspctrl.s | 10 + asm/musyx/hw_volconv.s | 147 +++- asm/musyx/s_data.s | 24 +- asm/musyx/seq.s | 315 +++---- asm/musyx/seq_api.s | 4 +- asm/musyx/snd3d.s | 70 +- asm/musyx/snd_midictrl.s | 388 ++++++--- asm/musyx/snd_synthapi.s | 48 +- asm/musyx/stream.s | 337 ++++---- asm/musyx/synth.s | 101 ++- asm/musyx/synthdata.s | 1333 ++++++++++++++++++++++++++---- asm/musyx/synthmacros.s | 97 +-- asm/musyx/synthvoice.s | 30 +- src/musyx/dsp_import.c | 4 +- src/musyx/dsp_import.h | 4 +- 41 files changed, 2508 insertions(+), 1113 deletions(-) diff --git a/asm/Dolphin/card/CARDBios.s b/asm/Dolphin/card/CARDBios.s index 166422b7..fa708934 100644 --- a/asm/Dolphin/card/CARDBios.s +++ b/asm/Dolphin/card/CARDBios.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global lbl_80569A58 +lbl_80569A58: + .skip 0x220 + .section .data, "wa" lbl_803F6C90: .asciz "<< Dolphin SDK - CARD\trelease build: Sep 5 2002 05:35:20 (0x2301) >>" diff --git a/asm/Dolphin/card/CARDOpen.s b/asm/Dolphin/card/CARDOpen.s index 729473da..4089f970 100644 --- a/asm/Dolphin/card/CARDOpen.s +++ b/asm/Dolphin/card/CARDOpen.s @@ -1,5 +1,9 @@ .include "macros.inc" +.section .bss +lbl_80569C78: + .skip 0x20 + .section .text, "ax" .global __CARDCompareFileName diff --git a/asm/Dolphin/dtk.s b/asm/Dolphin/dtk.s index ca780512..ffaee414 100644 --- a/asm/Dolphin/dtk.s +++ b/asm/Dolphin/dtk.s @@ -1,5 +1,28 @@ .include "macros.inc" +.section .bss +.global lbl_80569908 +lbl_80569908: + .skip 0x30 +.global lbl_80569938 +lbl_80569938: + .skip 0x30 +.global lbl_80569968 +lbl_80569968: + .skip 0x30 +.global lbl_80569998 +lbl_80569998: + .skip 0x30 +.global lbl_805699C8 +lbl_805699C8: + .skip 0x30 +.global lbl_805699F8 +lbl_805699F8: + .skip 0x30 +.global lbl_80569A28 +lbl_80569A28: + .skip 0x30 + .section .sbss, "wa" .balign 4 .global lbl_805A9B98 diff --git a/asm/Dolphin/dvd/dvd.s b/asm/Dolphin/dvd/dvd.s index 1431503c..786fc96c 100644 --- a/asm/Dolphin/dvd/dvd.s +++ b/asm/Dolphin/dvd/dvd.s @@ -1,5 +1,16 @@ .include "macros.inc" +.section .bss +.global lbl_80540B60 +lbl_80540B60: + .skip 0x20 +.global lbl_80540B80 +lbl_80540B80: + .skip 0x20 +.global lbl_80540BA0 +lbl_80540BA0: + .skip 0x58 + .section .data .balign 8 .global lbl_803EFFC8 diff --git a/asm/Dolphin/dvd/dvdlow.s b/asm/Dolphin/dvd/dvdlow.s index 46a8e913..2aca7eac 100644 --- a/asm/Dolphin/dvd/dvdlow.s +++ b/asm/Dolphin/dvd/dvdlow.s @@ -1,5 +1,11 @@ .include "macros.inc" +.section .bss +lbl_80540A80: + .skip 0x68 +lbl_80540AE8: + .skip 0x78 + .section .text, "ax" .global __DVDInitWA diff --git a/asm/Dolphin/dvd/dvdqueue.s b/asm/Dolphin/dvd/dvdqueue.s index 6bf2c0e7..68fd9a3f 100644 --- a/asm/Dolphin/dvd/dvdqueue.s +++ b/asm/Dolphin/dvd/dvdqueue.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global lbl_80540BF8 +lbl_80540BF8: + .skip 0x20 + .section .text, "ax" .global __DVDClearWaitingQueue diff --git a/asm/Dolphin/dvd/fstload.s b/asm/Dolphin/dvd/fstload.s index a5f5bbf7..70bbe3a0 100644 --- a/asm/Dolphin/dvd/fstload.s +++ b/asm/Dolphin/dvd/fstload.s @@ -1,5 +1,11 @@ .include "macros.inc" +.section .bss +lbl_80540C18: + .skip 0x40 +lbl_80540C58: + .skip 0x30 + .section .data .balign 8 lbl_803F0578: diff --git a/asm/Dolphin/exi/EXIBios.s b/asm/Dolphin/exi/EXIBios.s index fee298cf..79dfd880 100644 --- a/asm/Dolphin/exi/EXIBios.s +++ b/asm/Dolphin/exi/EXIBios.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global lbl_80569E98 +lbl_80569E98: + .skip 0xC8 + .section .sdata, "wa" .global lbl_805A8C10 diff --git a/asm/Dolphin/gx/GXInit.s b/asm/Dolphin/gx/GXInit.s index df6cc431..ee55181f 100644 --- a/asm/Dolphin/gx/GXInit.s +++ b/asm/Dolphin/gx/GXInit.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global lbl_80540C88 +lbl_80540C88: + .skip 0x578 + .section .data .global lbl_803F062C lbl_803F062C: diff --git a/asm/Dolphin/os/OS.s b/asm/Dolphin/os/OS.s index 4b9a87e1..411943c3 100644 --- a/asm/Dolphin/os/OS.s +++ b/asm/Dolphin/os/OS.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global DriveInfo +DriveInfo: + .skip 0x50 + .section .data .global lbl_803F0DA0 lbl_803F0DA0: diff --git a/asm/Dolphin/os/OSError.s b/asm/Dolphin/os/OSError.s index 3726cd51..1f3c031f 100644 --- a/asm/Dolphin/os/OSError.s +++ b/asm/Dolphin/os/OSError.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global lbl_80541250 +lbl_80541250: + .skip 0x48 + .section .data .balign 8 diff --git a/asm/Dolphin/os/OSFatal.s b/asm/Dolphin/os/OSFatal.s index 0837206f..90b5d877 100644 --- a/asm/Dolphin/os/OSFatal.s +++ b/asm/Dolphin/os/OSFatal.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global lbl_80541298 +lbl_80541298: + .skip 0x2E8 + .section .text, "ax" .global ScreenReport diff --git a/asm/Dolphin/os/OSReboot.s b/asm/Dolphin/os/OSReboot.s index 23d73eff..14a309a7 100644 --- a/asm/Dolphin/os/OSReboot.s +++ b/asm/Dolphin/os/OSReboot.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global lbl_80541580 +lbl_80541580: + .skip 0x20 + .section .text, "ax" .global Run diff --git a/asm/Dolphin/os/OSRtc.s b/asm/Dolphin/os/OSRtc.s index 33a2b52f..84db8574 100644 --- a/asm/Dolphin/os/OSRtc.s +++ b/asm/Dolphin/os/OSRtc.s @@ -1,5 +1,9 @@ .include "macros.inc" +.section .bss +lbl_805415A0: + .skip 0x58 + .section .text, "ax" .global WriteSramCallback diff --git a/asm/Dolphin/os/OSThread.s b/asm/Dolphin/os/OSThread.s index fafd7a93..284d540b 100644 --- a/asm/Dolphin/os/OSThread.s +++ b/asm/Dolphin/os/OSThread.s @@ -1,5 +1,9 @@ .include "macros.inc" +.section .bss +lbl_805415F8: + .skip 0x9F8 + .section .text, "ax" .global DefaultSwitchThreadCallback diff --git a/asm/Dolphin/pad/pad.s b/asm/Dolphin/pad/pad.s index 9434af60..99d2a581 100644 --- a/asm/Dolphin/pad/pad.s +++ b/asm/Dolphin/pad/pad.s @@ -1,5 +1,11 @@ .include "macros.inc" +.section .bss +lbl_80541FF0: + .skip 0x10 +lbl_80542000: + .skip 0x40 + .section .sbss .balign 4 .global lbl_805A9930 diff --git a/asm/Dolphin/si/SIBios.s b/asm/Dolphin/si/SIBios.s index 41dd4632..9b3b262f 100644 --- a/asm/Dolphin/si/SIBios.s +++ b/asm/Dolphin/si/SIBios.s @@ -1,5 +1,26 @@ .include "macros.inc" +.section .bss +.global Packet +Packet: + .skip 0x80 +.global lbl_80569D18 +lbl_80569D18: + .skip 0xA0 +.global lbl_80569DB8 +lbl_80569DB8: + .skip 0x20 +.global lbl_80569DD8 +lbl_80569DD8: + .skip 0x20 +.global lbl_80569DF8 +lbl_80569DF8: + .skip 0x40 +.global lbl_80569E38 +lbl_80569E38: + .skip 0x60 + + .section .data, "wa" .global lbl_803F6EA0 diff --git a/asm/Dolphin/thp/THPDec.s b/asm/Dolphin/thp/THPDec.s index 5507f0e3..5e5024ef 100644 --- a/asm/Dolphin/thp/THPDec.s +++ b/asm/Dolphin/thp/THPDec.s @@ -1,5 +1,13 @@ .include "macros.inc" +.section .bss +.global lbl_80569F60 +lbl_80569F60: + .skip 0x118 +.global __THPMCUBuffer +__THPMCUBuffer: + .skip 0x28 + .section .rodata, "a" # 0x803CB3A0 - 0x803D8D60 __THPJpegNaturalOrder: # local object .4byte 0x00010810 diff --git a/asm/Dolphin/vi.s b/asm/Dolphin/vi.s index 87c73f48..2e817cee 100644 --- a/asm/Dolphin/vi.s +++ b/asm/Dolphin/vi.s @@ -1,5 +1,11 @@ .include "macros.inc" +.section .bss +lbl_80542040: + .skip 0xF0 +lbl_80542130: + .skip 0x58 + .section .data, "wa" .global lbl_803F23A8 lbl_803F23A8: diff --git a/asm/Runtime/Gecko_ExceptionPPC.s b/asm/Runtime/Gecko_ExceptionPPC.s index 3716292a..31bd24df 100644 --- a/asm/Runtime/Gecko_ExceptionPPC.s +++ b/asm/Runtime/Gecko_ExceptionPPC.s @@ -1,5 +1,9 @@ .include "macros.inc" +.section .bss +lbl_80542188: + .skip 0x10 + .section .text, "ax" .global __unregister_fragment diff --git a/asm/Runtime/abort_exit.s b/asm/Runtime/abort_exit.s index 6ad1fb26..7fda6f54 100644 --- a/asm/Runtime/abort_exit.s +++ b/asm/Runtime/abort_exit.s @@ -1,5 +1,9 @@ .include "macros.inc" +.section .bss +lbl_80542198: + .skip 0x100 + .section .sbss .balign 4 .global lbl_805A99B8 diff --git a/asm/Runtime/alloc.s b/asm/Runtime/alloc.s index 35a9f1d9..2364d70b 100644 --- a/asm/Runtime/alloc.s +++ b/asm/Runtime/alloc.s @@ -1,5 +1,9 @@ .include "macros.inc" +.section .bss +"protopool$192": + .skip 0x338 + .section .rodata .global lbl_803D85C0 lbl_803D85C0: @@ -25,17 +29,17 @@ calloc: /* 8038A2B0 00387210 88 0D AE 08 */ lbz r0, lbl_805A99C8@sda21(r13) /* 8038A2B4 00387214 28 00 00 00 */ cmplwi r0, 0 /* 8038A2B8 00387218 40 82 00 20 */ bne lbl_8038A2D8 -/* 8038A2BC 0038721C 3C 60 80 54 */ lis r3, lbl_80542298@ha +/* 8038A2BC 0038721C 3C 60 80 54 */ lis r3, "protopool$192"@ha /* 8038A2C0 00387220 38 80 00 00 */ li r4, 0 -/* 8038A2C4 00387224 38 63 22 98 */ addi r3, r3, lbl_80542298@l +/* 8038A2C4 00387224 38 63 22 98 */ addi r3, r3, "protopool$192"@l /* 8038A2C8 00387228 38 A0 00 34 */ li r5, 0x34 /* 8038A2CC 0038722C 4B C7 90 DD */ bl memset /* 8038A2D0 00387230 38 00 00 01 */ li r0, 1 /* 8038A2D4 00387234 98 0D AE 08 */ stb r0, lbl_805A99C8@sda21(r13) lbl_8038A2D8: /* 8038A2D8 00387238 7F DE F9 D7 */ mullw. r30, r30, r31 -/* 8038A2DC 0038723C 3C 60 80 54 */ lis r3, lbl_80542298@ha -/* 8038A2E0 00387240 38 63 22 98 */ addi r3, r3, lbl_80542298@l +/* 8038A2DC 0038723C 3C 60 80 54 */ lis r3, "protopool$192"@ha +/* 8038A2E0 00387240 38 63 22 98 */ addi r3, r3, "protopool$192"@l /* 8038A2E4 00387244 40 82 00 0C */ bne lbl_8038A2F0 /* 8038A2E8 00387248 3B E0 00 00 */ li r31, 0 /* 8038A2EC 0038724C 48 00 00 38 */ b lbl_8038A324 @@ -83,17 +87,17 @@ sub_8038a358: /* 8038A370 003872D0 88 0D AE 08 */ lbz r0, lbl_805A99C8@sda21(r13) /* 8038A374 003872D4 28 00 00 00 */ cmplwi r0, 0 /* 8038A378 003872D8 40 82 00 20 */ bne lbl_8038A398 -/* 8038A37C 003872DC 3C 60 80 54 */ lis r3, lbl_80542298@ha +/* 8038A37C 003872DC 3C 60 80 54 */ lis r3, "protopool$192"@ha /* 8038A380 003872E0 38 80 00 00 */ li r4, 0 -/* 8038A384 003872E4 38 63 22 98 */ addi r3, r3, lbl_80542298@l +/* 8038A384 003872E4 38 63 22 98 */ addi r3, r3, "protopool$192"@l /* 8038A388 003872E8 38 A0 00 34 */ li r5, 0x34 /* 8038A38C 003872EC 4B C7 90 1D */ bl memset /* 8038A390 003872F0 38 00 00 01 */ li r0, 1 /* 8038A394 003872F4 98 0D AE 08 */ stb r0, lbl_805A99C8@sda21(r13) lbl_8038A398: /* 8038A398 003872F8 28 1E 00 00 */ cmplwi r30, 0 -/* 8038A39C 003872FC 3C 60 80 54 */ lis r3, lbl_80542298@ha -/* 8038A3A0 00387300 3B E3 22 98 */ addi r31, r3, lbl_80542298@l +/* 8038A39C 003872FC 3C 60 80 54 */ lis r3, "protopool$192"@ha +/* 8038A3A0 00387300 3B E3 22 98 */ addi r31, r3, "protopool$192"@l /* 8038A3A4 00387304 41 82 00 D0 */ beq lbl_8038A474 /* 8038A3A8 00387308 80 7E FF FC */ lwz r3, -4(r30) /* 8038A3AC 0038730C 54 60 07 FF */ clrlwi. r0, r3, 0x1f diff --git a/asm/bss.s b/asm/bss.s index efc80ec5..a0234a73 100644 --- a/asm/bss.s +++ b/asm/bss.s @@ -424,277 +424,3 @@ lbl_80540A40: .global lbl_80540A4C lbl_80540A4C: .skip 0x34 -.global lbl_80540A80 -lbl_80540A80: - .skip 0x68 -.global lbl_80540AE8 -lbl_80540AE8: - .skip 0x78 -.global lbl_80540B60 -lbl_80540B60: - .skip 0x20 -.global lbl_80540B80 -lbl_80540B80: - .skip 0x20 -.global lbl_80540BA0 -lbl_80540BA0: - .skip 0x58 -.global lbl_80540BF8 -lbl_80540BF8: - .skip 0x20 -.global lbl_80540C18 -lbl_80540C18: - .skip 0x40 -.global lbl_80540C58 -lbl_80540C58: - .skip 0x30 -.global lbl_80540C88 -lbl_80540C88: - .skip 0x578 -.global DriveInfo -DriveInfo: - .skip 0x50 -.global lbl_80541250 -lbl_80541250: - .skip 0x48 -.global lbl_80541298 -lbl_80541298: - .skip 0x2E8 -.global lbl_80541580 -lbl_80541580: - .skip 0x20 -.global lbl_805415A0 -lbl_805415A0: - .skip 0x58 -.global lbl_805415F8 -lbl_805415F8: - .skip 0x9F8 -.global lbl_80541FF0 -lbl_80541FF0: - .skip 0x10 -.global lbl_80542000 -lbl_80542000: - .skip 0x40 -.global lbl_80542040 -lbl_80542040: - .skip 0xF0 -.global lbl_80542130 -lbl_80542130: - .skip 0x58 -.global lbl_80542188 -lbl_80542188: - .skip 0x10 -.global lbl_80542198 -lbl_80542198: - .skip 0x100 -.global lbl_80542298 -lbl_80542298: - .skip 0x338 -.global lbl_805425D0 -lbl_805425D0: - .skip 0x1400 -.global lbl_805439D0 -lbl_805439D0: - .skip 0xC340 -.global lbl_8054FD10 -lbl_8054FD10: - .skip 0x100 -.global lbl_8054FE10 -lbl_8054FE10: - .skip 0x240 -.global synthInfo -synthInfo: - .skip 0x214 -.global lbl_80550264 -lbl_80550264: - .skip 0x600 -.global lbl_80550864 -lbl_80550864: - .skip 0x40 -.global lbl_805508A4 -lbl_805508A4: - .skip 0x180 -.global lbl_80550A24 -lbl_80550A24: - .skip 0x20 -.global lbl_80550A44 -lbl_80550A44: - .skip 0x20 -.global lbl_80550A64 -lbl_80550A64: - .skip 0x20 -.global lbl_80550A84 -lbl_80550A84: - .skip 0x20 -.global lbl_80550AA4 -lbl_80550AA4: - .skip 0x10 -.global lbl_80550AB4 -lbl_80550AB4: - .skip 0x40 -.global lbl_80550AF4 -lbl_80550AF4: - .skip 0x480 -.global lbl_80550F74 -lbl_80550F74: - .skip 0x484 -.global lbl_805513F8 -lbl_805513F8: - .skip 0x1900 -.global lbl_80552CF8 -lbl_80552CF8: - .skip 0x800 -.global lbl_805534F8 -lbl_805534F8: - .skip 0xC00 -.global lbl_805540F8 -lbl_805540F8: - .skip 0x4000 -.global lbl_805580F8 -lbl_805580F8: - .skip 0x600 -.global lbl_805586F8 -lbl_805586F8: - .skip 0x400 -.global lbl_80558AF8 -lbl_80558AF8: - .skip 0x800 -.global lbl_805592F8 -lbl_805592F8: - .skip 0x4000 -.global lbl_8055D2F8 -lbl_8055D2F8: - .skip 0x20 -.global lbl_8055D318 -lbl_8055D318: - .skip 0xC -.global lbl_8055D324 -lbl_8055D324: - .skip 0xC -.global lbl_8055D330 -lbl_8055D330: - .skip 0x20 -.global vidList -vidList: - .skip 0xF00 -.global synth_last_fxstarted -synth_last_fxstarted: - .skip 0x40 -.global lbl_8055E290 -lbl_8055E290: - .skip 0x80 -.global vs -vs: - .skip 0x950 -.global lbl_8055EC60 -lbl_8055EC60: - .skip 0x600 -.global dspStudio -dspStudio: - .skip 0x5E0 -.global "voices$217" -"voices$217": - .skip 0x100 -.global lbl_8055F940 -lbl_8055F940: - .skip 0x50 -.global lbl_8055F990 -lbl_8055F990: - .skip 0x400 -.global lbl_8055FD90 -lbl_8055FD90: - .skip 0x300 -.global lbl_80560090 -lbl_80560090: - .skip 0x700 -.global lbl_80560790 -lbl_80560790: - .skip 0x200 -.global lbl_80560990 -lbl_80560990: - .skip 0x4300 -.global lbl_80564C90 -lbl_80564C90: - .skip 0x80 -.global lbl_80564D10 -lbl_80564D10: - .skip 0x2180 -.global inpFXChannelDefaults -inpFXChannelDefaults: - .skip 0x40 -.global lbl_80566ED0 -lbl_80566ED0: - .skip 0x80 -.global lbl_80566F50 -lbl_80566F50: - .skip 0x40 -.global lbl_80566F90 -lbl_80566F90: - .skip 0x284 -.global lbl_80567214 -lbl_80567214: - .skip 0x284 -.global lbl_80567498 -lbl_80567498: - .skip 0x408 -.global dsp_task -dsp_task: - .skip 0x60 -.global dram_image -dram_image: - .skip 0x2008 -.global lbl_80569908 -lbl_80569908: - .skip 0x30 -.global lbl_80569938 -lbl_80569938: - .skip 0x30 -.global lbl_80569968 -lbl_80569968: - .skip 0x30 -.global lbl_80569998 -lbl_80569998: - .skip 0x30 -.global lbl_805699C8 -lbl_805699C8: - .skip 0x30 -.global lbl_805699F8 -lbl_805699F8: - .skip 0x30 -.global lbl_80569A28 -lbl_80569A28: - .skip 0x30 -.global lbl_80569A58 -lbl_80569A58: - .skip 0x220 -.global lbl_80569C78 -lbl_80569C78: - .skip 0x20 -.global Packet -Packet: - .skip 0x80 -.global lbl_80569D18 -lbl_80569D18: - .skip 0xA0 -.global lbl_80569DB8 -lbl_80569DB8: - .skip 0x20 -.global lbl_80569DD8 -lbl_80569DD8: - .skip 0x20 -.global lbl_80569DF8 -lbl_80569DF8: - .skip 0x40 -.global lbl_80569E38 -lbl_80569E38: - .skip 0x60 -.global lbl_80569E98 -lbl_80569E98: - .skip 0xC8 -.global lbl_80569F60 -lbl_80569F60: - .skip 0x118 -.global __THPMCUBuffer -__THPMCUBuffer: - .skip 0x28 - diff --git a/asm/musyx/hardware.s b/asm/musyx/hardware.s index 97a1dcaa..603353c8 100644 --- a/asm/musyx/hardware.s +++ b/asm/musyx/hardware.s @@ -20,7 +20,7 @@ salAuxFrame: .global salFrame salFrame: .skip 0x1 - + .section .sdata, "wa" .global lbl_805A8BD8 lbl_805A8BD8: @@ -28,7 +28,7 @@ lbl_805A8BD8: .2byte 1 .2byte 2 .balign 4 - + .global lbl_805A8BE0 lbl_805A8BE0: .2byte 0 @@ -39,9 +39,74 @@ lbl_805A8BE0: .section .rodata .global lbl_803D8BD0 lbl_803D8BD0: - .incbin "baserom.dol", 0x3D5BD0, 0x100 - -.section .text, "ax" + # ROM: 0x3D5BD0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0x00000001 + .4byte 0x00010001 + .4byte 0x00010001 + .4byte 0x00010001 + .4byte 0x00020002 + .4byte 0x00020002 + .4byte 0x00020003 + .4byte 0x00030003 + .4byte 0x00030003 + .4byte 0x00040004 + .4byte 0x00040004 + .4byte 0x00050005 + .4byte 0x00050006 + .4byte 0x00060006 + .4byte 0x00070007 + .4byte 0x00070008 + .4byte 0x00080008 + .4byte 0x00090009 + .4byte 0x0009000A + .4byte 0x000A000A + .4byte 0x000B000B + .4byte 0x000C000C + .4byte 0x000C000D + .4byte 0x000D000D + .4byte 0x000E000E + .4byte 0x000F000F + .4byte 0x000F0010 + .4byte 0x00100011 + .4byte 0x00110011 + .4byte 0x00120012 + .4byte 0x00130013 + .4byte 0x00130014 + .4byte 0x00140014 + .4byte 0x00150015 + .4byte 0x00160016 + .4byte 0x00160017 + .4byte 0x00170017 + .4byte 0x00180018 + .4byte 0x00180019 + .4byte 0x00190019 + .4byte 0x001A001A + .4byte 0x001A001B + .4byte 0x001B001B + .4byte 0x001C001C + .4byte 0x001C001C + .4byte 0x001D001D + .4byte 0x001D001D + .4byte 0x001D001E + .4byte 0x001E001E + .4byte 0x001E001E + .4byte 0x001F001F + .4byte 0x001F001F + .4byte 0x001F001F + .4byte 0x001F0020 + .4byte 0x00200020 + .4byte 0x00200020 + .4byte 0x00200020 + .4byte 0x00200020 + .4byte 0x00200020 + + +.section .text, "ax" .global snd_handle_irq snd_handle_irq: @@ -134,7 +199,7 @@ lbl_803B308C: /* 803B3090 003AFFF0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803B3094 003AFFF4 7C 08 03 A6 */ mtlr r0 /* 803B3098 003AFFF8 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B309C 003AFFFC 4E 80 00 20 */ blr +/* 803B309C 003AFFFC 4E 80 00 20 */ blr .global sub_803b30a0 sub_803b30a0: @@ -185,7 +250,7 @@ lbl_803B3138: /* 803B3148 003B00A8 83 81 00 10 */ lwz r28, 0x10(r1) /* 803B314C 003B00AC 7C 08 03 A6 */ mtlr r0 /* 803B3150 003B00B0 38 21 00 20 */ addi r1, r1, 0x20 -/* 803B3154 003B00B4 4E 80 00 20 */ blr +/* 803B3154 003B00B4 4E 80 00 20 */ blr .global hwExit hwExit: @@ -201,17 +266,17 @@ hwExit: /* 803B317C 003B00DC 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3180 003B00E0 7C 08 03 A6 */ mtlr r0 /* 803B3184 003B00E4 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3188 003B00E8 4E 80 00 20 */ blr +/* 803B3188 003B00E8 4E 80 00 20 */ blr .global hwSetTimeOffset hwSetTimeOffset: /* 803B318C 003B00EC 98 6D AF 80 */ stb r3, salTimeOffset@sda21(r13) -/* 803B3190 003B00F0 4E 80 00 20 */ blr +/* 803B3190 003B00F0 4E 80 00 20 */ blr .global hwGetTimeOffset hwGetTimeOffset: /* 803B3194 003B00F4 88 6D AF 80 */ lbz r3, salTimeOffset@sda21(r13) -/* 803B3198 003B00F8 4E 80 00 20 */ blr +/* 803B3198 003B00F8 4E 80 00 20 */ blr .global hwIsActive hwIsActive: @@ -222,12 +287,12 @@ hwIsActive: /* 803B31AC 003B010C 7C 03 00 D0 */ neg r0, r3 /* 803B31B0 003B0110 7C 00 1B 78 */ or r0, r0, r3 /* 803B31B4 003B0114 54 03 0F FE */ srwi r3, r0, 0x1f -/* 803B31B8 003B0118 4E 80 00 20 */ blr +/* 803B31B8 003B0118 4E 80 00 20 */ blr .global hwSetMesgCallback hwSetMesgCallback: /* 803B31BC 003B011C 90 6D AF 58 */ stw r3, salMessageCallback@sda21(r13) -/* 803B31C0 003B0120 4E 80 00 20 */ blr +/* 803B31C0 003B0120 4E 80 00 20 */ blr .global hwSetPriority hwSetPriority: @@ -235,7 +300,7 @@ hwSetPriority: /* 803B31C8 003B0128 80 6D AF 54 */ lwz r3, dspVoice@sda21(r13) /* 803B31CC 003B012C 7C 63 02 14 */ add r3, r3, r0 /* 803B31D0 003B0130 90 83 00 1C */ stw r4, 0x1c(r3) -/* 803B31D4 003B0134 4E 80 00 20 */ blr +/* 803B31D4 003B0134 4E 80 00 20 */ blr .global hwInitSamplePlayback hwInitSamplePlayback: @@ -351,7 +416,7 @@ lbl_803B3364: /* 803B337C 003B02DC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 803B3380 003B02E0 7C 08 03 A6 */ mtlr r0 /* 803B3384 003B02E4 38 21 00 20 */ addi r1, r1, 0x20 -/* 803B3388 003B02E8 4E 80 00 20 */ blr +/* 803B3388 003B02E8 4E 80 00 20 */ blr .global hwBreak hwBreak: @@ -375,7 +440,7 @@ lbl_803B33B8: /* 803B33CC 003B032C 80 03 00 24 */ lwz r0, 0x24(r3) /* 803B33D0 003B0330 60 00 00 20 */ ori r0, r0, 0x20 /* 803B33D4 003B0334 90 03 00 24 */ stw r0, 0x24(r3) -/* 803B33D8 003B0338 4E 80 00 20 */ blr +/* 803B33D8 003B0338 4E 80 00 20 */ blr .global hwSetADSR hwSetADSR: @@ -492,7 +557,7 @@ lbl_803B3554: /* 803B3578 003B04D8 80 01 00 24 */ lwz r0, 0x24(r1) /* 803B357C 003B04DC 7C 08 03 A6 */ mtlr r0 /* 803B3580 003B04E0 38 21 00 20 */ addi r1, r1, 0x20 -/* 803B3584 003B04E4 4E 80 00 20 */ blr +/* 803B3584 003B04E4 4E 80 00 20 */ blr .global hwSetVirtualSampleLoopBuffer hwSetVirtualSampleLoopBuffer: @@ -503,7 +568,7 @@ hwSetVirtualSampleLoopBuffer: /* 803B3598 003B04F8 80 0D AF 54 */ lwz r0, dspVoice@sda21(r13) /* 803B359C 003B04FC 7C 60 32 14 */ add r3, r0, r6 /* 803B35A0 003B0500 90 A3 00 98 */ stw r5, 0x98(r3) -/* 803B35A4 003B0504 4E 80 00 20 */ blr +/* 803B35A4 003B0504 4E 80 00 20 */ blr .global hwGetVirtualSampleState hwGetVirtualSampleState: @@ -511,7 +576,7 @@ hwGetVirtualSampleState: /* 803B35AC 003B050C 80 6D AF 54 */ lwz r3, dspVoice@sda21(r13) /* 803B35B0 003B0510 7C 63 02 14 */ add r3, r3, r0 /* 803B35B4 003B0514 88 63 00 9C */ lbz r3, 0x9c(r3) -/* 803B35B8 003B0518 4E 80 00 20 */ blr +/* 803B35B8 003B0518 4E 80 00 20 */ blr .global hwGetSampleType hwGetSampleType: @@ -519,7 +584,7 @@ hwGetSampleType: /* 803B35C0 003B0520 80 6D AF 54 */ lwz r3, dspVoice@sda21(r13) /* 803B35C4 003B0524 7C 63 02 14 */ add r3, r3, r0 /* 803B35C8 003B0528 88 63 00 90 */ lbz r3, 0x90(r3) -/* 803B35CC 003B052C 4E 80 00 20 */ blr +/* 803B35CC 003B052C 4E 80 00 20 */ blr .global hwGetSampleID hwGetSampleID: @@ -527,7 +592,7 @@ hwGetSampleID: /* 803B35D4 003B0534 80 6D AF 54 */ lwz r3, dspVoice@sda21(r13) /* 803B35D8 003B0538 7C 63 02 14 */ add r3, r3, r0 /* 803B35DC 003B053C A0 63 00 70 */ lhz r3, 0x70(r3) -/* 803B35E0 003B0540 4E 80 00 20 */ blr +/* 803B35E0 003B0540 4E 80 00 20 */ blr .global hwSetStreamLoopPS hwSetStreamLoopPS: @@ -535,7 +600,7 @@ hwSetStreamLoopPS: /* 803B35E8 003B0548 80 6D AF 54 */ lwz r3, dspVoice@sda21(r13) /* 803B35EC 003B054C 7C 63 02 14 */ add r3, r3, r0 /* 803B35F0 003B0550 98 83 00 A0 */ stb r4, 0xa0(r3) -/* 803B35F4 003B0554 4E 80 00 20 */ blr +/* 803B35F4 003B0554 4E 80 00 20 */ blr .global hwStart hwStart: @@ -553,7 +618,7 @@ hwStart: /* 803B3624 003B0584 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3628 003B0588 7C 08 03 A6 */ mtlr r0 /* 803B362C 003B058C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3630 003B0590 4E 80 00 20 */ blr +/* 803B3630 003B0590 4E 80 00 20 */ blr .global hwKeyOff hwKeyOff: @@ -566,7 +631,7 @@ hwKeyOff: /* 803B364C 003B05AC 80 03 00 24 */ lwz r0, 0x24(r3) /* 803B3650 003B05B0 60 00 00 40 */ ori r0, r0, 0x40 /* 803B3654 003B05B4 90 03 00 24 */ stw r0, 0x24(r3) -/* 803B3658 003B05B8 4E 80 00 20 */ blr +/* 803B3658 003B05B8 4E 80 00 20 */ blr .global hwSetPitch hwSetPitch: @@ -586,7 +651,7 @@ lbl_803B3678: /* 803B368C 003B05EC 7C 65 1A 14 */ add r3, r5, r3 /* 803B3690 003B05F0 80 63 00 38 */ lwz r3, 0x38(r3) /* 803B3694 003B05F4 7C 03 00 40 */ cmplw r3, r0 -/* 803B3698 003B05F8 4D 82 00 20 */ beqlr +/* 803B3698 003B05F8 4D 82 00 20 */ beqlr lbl_803B369C: /* 803B369C 003B05FC 88 0D AF 80 */ lbz r0, salTimeOffset@sda21(r13) /* 803B36A0 003B0600 54 84 23 36 */ rlwinm r4, r4, 4, 0xc, 0x1b @@ -601,7 +666,7 @@ lbl_803B369C: /* 803B36C4 003B0624 90 03 00 24 */ stw r0, 0x24(r3) /* 803B36C8 003B0628 88 0D AF 80 */ lbz r0, salTimeOffset@sda21(r13) /* 803B36CC 003B062C 98 05 00 E4 */ stb r0, 0xe4(r5) -/* 803B36D0 003B0630 4E 80 00 20 */ blr +/* 803B36D0 003B0630 4E 80 00 20 */ blr .global sub_803b36d4 sub_803b36d4: @@ -615,7 +680,7 @@ sub_803b36d4: /* 803B36F0 003B0650 80 03 00 24 */ lwz r0, 0x24(r3) /* 803B36F4 003B0654 60 00 01 00 */ ori r0, r0, 0x100 /* 803B36F8 003B0658 90 03 00 24 */ stw r0, 0x24(r3) -/* 803B36FC 003B065C 4E 80 00 20 */ blr +/* 803B36FC 003B065C 4E 80 00 20 */ blr .global hwSetSRCType hwSetSRCType: @@ -629,7 +694,7 @@ hwSetSRCType: /* 803B371C 003B067C 80 03 00 24 */ lwz r0, 0x24(r3) /* 803B3720 003B0680 60 00 00 80 */ ori r0, r0, 0x80 /* 803B3724 003B0684 90 03 00 24 */ stw r0, 0x24(r3) -/* 803B3728 003B0688 4E 80 00 20 */ blr +/* 803B3728 003B0688 4E 80 00 20 */ blr .global hwSetITDMode hwSetITDMode: @@ -648,7 +713,7 @@ hwSetITDMode: /* 803B375C 003B06BC 80 0D AF 54 */ lwz r0, dspVoice@sda21(r13) /* 803B3760 003B06C0 7C 60 2A 14 */ add r3, r0, r5 /* 803B3764 003B06C4 B0 83 00 D2 */ sth r4, 0xd2(r3) -/* 803B3768 003B06C8 4E 80 00 20 */ blr +/* 803B3768 003B06C8 4E 80 00 20 */ blr lbl_803B376C: /* 803B376C 003B06CC 1C 03 00 F4 */ mulli r0, r3, 0xf4 /* 803B3770 003B06D0 80 6D AF 54 */ lwz r3, dspVoice@sda21(r13) @@ -656,7 +721,7 @@ lbl_803B376C: /* 803B3778 003B06D8 80 03 00 F0 */ lwz r0, 0xf0(r3) /* 803B377C 003B06DC 54 00 00 7E */ clrlwi r0, r0, 1 /* 803B3780 003B06E0 90 03 00 F0 */ stw r0, 0xf0(r3) -/* 803B3784 003B06E4 4E 80 00 20 */ blr +/* 803B3784 003B06E4 4E 80 00 20 */ blr .global hwSetVolume hwSetVolume: @@ -845,7 +910,7 @@ lbl_803B3A30: /* 803B3A38 003B0998 83 C1 00 48 */ lwz r30, 0x48(r1) /* 803B3A3C 003B099C 7C 08 03 A6 */ mtlr r0 /* 803B3A40 003B09A0 38 21 00 50 */ addi r1, r1, 0x50 -/* 803B3A44 003B09A4 4E 80 00 20 */ blr +/* 803B3A44 003B09A4 4E 80 00 20 */ blr .global sub_803b3a48 sub_803b3a48: @@ -859,7 +924,7 @@ sub_803b3a48: /* 803B3A64 003B09C4 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3A68 003B09C8 7C 08 03 A6 */ mtlr r0 /* 803B3A6C 003B09CC 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3A70 003B09D0 4E 80 00 20 */ blr +/* 803B3A70 003B09D0 4E 80 00 20 */ blr .global hwSetAUXProcessingCallbacks hwSetAUXProcessingCallbacks: @@ -872,7 +937,7 @@ hwSetAUXProcessingCallbacks: /* 803B3A8C 003B09EC 90 A3 00 B4 */ stw r5, 0xb4(r3) /* 803B3A90 003B09F0 90 C3 00 B0 */ stw r6, 0xb0(r3) /* 803B3A94 003B09F4 90 E3 00 B8 */ stw r7, 0xb8(r3) -/* 803B3A98 003B09F8 4E 80 00 20 */ blr +/* 803B3A98 003B09F8 4E 80 00 20 */ blr .global sub_803b3a9c sub_803b3a9c: @@ -883,7 +948,7 @@ sub_803b3a9c: /* 803B3AAC 003B0A0C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3AB0 003B0A10 7C 08 03 A6 */ mtlr r0 /* 803B3AB4 003B0A14 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3AB8 003B0A18 4E 80 00 20 */ blr +/* 803B3AB8 003B0A18 4E 80 00 20 */ blr .global sub_803b3abc sub_803b3abc: @@ -894,7 +959,7 @@ sub_803b3abc: /* 803B3ACC 003B0A2C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3AD0 003B0A30 7C 08 03 A6 */ mtlr r0 /* 803B3AD4 003B0A34 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3AD8 003B0A38 4E 80 00 20 */ blr +/* 803B3AD8 003B0A38 4E 80 00 20 */ blr .global sub_803b3adc sub_803b3adc: @@ -910,7 +975,7 @@ sub_803b3adc: /* 803B3B00 003B0A60 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3B04 003B0A64 7C 08 03 A6 */ mtlr r0 /* 803B3B08 003B0A68 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3B0C 003B0A6C 4E 80 00 20 */ blr +/* 803B3B0C 003B0A6C 4E 80 00 20 */ blr .global sub_803b3b10 sub_803b3b10: @@ -926,7 +991,7 @@ sub_803b3b10: /* 803B3B34 003B0A94 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3B38 003B0A98 7C 08 03 A6 */ mtlr r0 /* 803B3B3C 003B0A9C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3B40 003B0AA0 4E 80 00 20 */ blr +/* 803B3B40 003B0AA0 4E 80 00 20 */ blr .global sub_803b3b44 sub_803b3b44: @@ -940,7 +1005,7 @@ sub_803b3b44: /* 803B3B60 003B0AC0 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3B64 003B0AC4 7C 08 03 A6 */ mtlr r0 /* 803B3B68 003B0AC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3B6C 003B0ACC 4E 80 00 20 */ blr +/* 803B3B6C 003B0ACC 4E 80 00 20 */ blr .global sub_803b3b70 sub_803b3b70: @@ -951,7 +1016,7 @@ sub_803b3b70: /* 803B3B80 003B0AE0 28 00 00 02 */ cmplwi r0, 2 /* 803B3B84 003B0AE4 41 82 00 0C */ beq lbl_803B3B90 /* 803B3B88 003B0AE8 38 60 00 00 */ li r3, 0 -/* 803B3B8C 003B0AEC 4E 80 00 20 */ blr +/* 803B3B8C 003B0AEC 4E 80 00 20 */ blr lbl_803B3B90: /* 803B3B90 003B0AF0 88 04 00 90 */ lbz r0, 0x90(r4) /* 803B3B94 003B0AF4 2C 00 00 03 */ cmpwi r0, 3 @@ -964,10 +1029,10 @@ lbl_803B3B90: .global sub_803b3bb0 sub_803b3bb0: -/* 803B3BB0 003B0B10 4E 80 00 20 */ blr +/* 803B3BB0 003B0B10 4E 80 00 20 */ blr lbl_803B3BB4: /* 803B3BB4 003B0B14 2C 00 00 06 */ cmpwi r0, 6 -/* 803B3BB8 003B0B18 4C 80 00 20 */ bgelr +/* 803B3BB8 003B0B18 4C 80 00 20 */ bgelr lbl_803B3BBC: /* 803B3BBC 003B0B1C 7C 66 2A 14 */ add r3, r6, r5 /* 803B3BC0 003B0B20 80 03 00 78 */ lwz r0, 0x78(r3) @@ -978,21 +1043,21 @@ lbl_803B3BBC: /* 803B3BD4 003B0B34 54 00 E1 3E */ srwi r0, r0, 4 /* 803B3BD8 003B0B38 28 04 00 02 */ cmplwi r4, 2 /* 803B3BDC 003B0B3C 1C 60 00 0E */ mulli r3, r0, 0xe -/* 803B3BE0 003B0B40 4D 80 00 20 */ bltlr +/* 803B3BE0 003B0B40 4D 80 00 20 */ bltlr /* 803B3BE4 003B0B44 7C 64 1A 14 */ add r3, r4, r3 /* 803B3BE8 003B0B48 38 63 FF FE */ addi r3, r3, -2 -/* 803B3BEC 003B0B4C 4E 80 00 20 */ blr +/* 803B3BEC 003B0B4C 4E 80 00 20 */ blr lbl_803B3BF0: /* 803B3BF0 003B0B50 80 64 00 78 */ lwz r3, 0x78(r4) /* 803B3BF4 003B0B54 80 04 00 20 */ lwz r0, 0x20(r4) /* 803B3BF8 003B0B58 7C 63 00 50 */ subf r3, r3, r0 -/* 803B3BFC 003B0B5C 4E 80 00 20 */ blr +/* 803B3BFC 003B0B5C 4E 80 00 20 */ blr lbl_803B3C00: /* 803B3C00 003B0B60 80 64 00 78 */ lwz r3, 0x78(r4) /* 803B3C04 003B0B64 80 04 00 20 */ lwz r0, 0x20(r4) /* 803B3C08 003B0B68 54 63 F8 7E */ srwi r3, r3, 1 /* 803B3C0C 003B0B6C 7C 63 00 50 */ subf r3, r3, r0 -/* 803B3C10 003B0B70 4E 80 00 20 */ blr +/* 803B3C10 003B0B70 4E 80 00 20 */ blr .global hwFlushStream hwFlushStream: @@ -1031,7 +1096,7 @@ hwFlushStream: /* 803B3C94 003B0BF4 80 01 00 34 */ lwz r0, 0x34(r1) /* 803B3C98 003B0BF8 7C 08 03 A6 */ mtlr r0 /* 803B3C9C 003B0BFC 38 21 00 30 */ addi r1, r1, 0x30 -/* 803B3CA0 003B0C00 4E 80 00 20 */ blr +/* 803B3CA0 003B0C00 4E 80 00 20 */ blr .global sub_803b3ca4 sub_803b3ca4: @@ -1042,7 +1107,7 @@ sub_803b3ca4: /* 803B3CB4 003B0C14 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3CB8 003B0C18 7C 08 03 A6 */ mtlr r0 /* 803B3CBC 003B0C1C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3CC0 003B0C20 4E 80 00 20 */ blr +/* 803B3CC0 003B0C20 4E 80 00 20 */ blr .global sub_803b3cc4 sub_803b3cc4: @@ -1053,7 +1118,7 @@ sub_803b3cc4: /* 803B3CD4 003B0C34 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3CD8 003B0C38 7C 08 03 A6 */ mtlr r0 /* 803B3CDC 003B0C3C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3CE0 003B0C40 4E 80 00 20 */ blr +/* 803B3CE0 003B0C40 4E 80 00 20 */ blr .global sub_803b3ce4 sub_803b3ce4: @@ -1065,11 +1130,11 @@ sub_803b3ce4: /* 803B3CF8 003B0C58 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3CFC 003B0C5C 7C 08 03 A6 */ mtlr r0 /* 803B3D00 003B0C60 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3D04 003B0C64 4E 80 00 20 */ blr +/* 803B3D04 003B0C64 4E 80 00 20 */ blr .global hwTransAddr hwTransAddr: -/* 803B3D08 003B0C68 4E 80 00 20 */ blr +/* 803B3D08 003B0C68 4E 80 00 20 */ blr .global hwFrq2Pitch hwFrq2Pitch: @@ -1095,7 +1160,7 @@ hwFrq2Pitch: /* 803B3D58 003B0CB8 80 01 00 24 */ lwz r0, 0x24(r1) /* 803B3D5C 003B0CBC 7C 08 03 A6 */ mtlr r0 /* 803B3D60 003B0CC0 38 21 00 20 */ addi r1, r1, 0x20 -/* 803B3D64 003B0CC4 4E 80 00 20 */ blr +/* 803B3D64 003B0CC4 4E 80 00 20 */ blr .global sub_803b3d68 sub_803b3d68: @@ -1107,7 +1172,7 @@ sub_803b3d68: /* 803B3D7C 003B0CDC 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3D80 003B0CE0 7C 08 03 A6 */ mtlr r0 /* 803B3D84 003B0CE4 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3D88 003B0CE8 4E 80 00 20 */ blr +/* 803B3D88 003B0CE8 4E 80 00 20 */ blr .global sub_803b3d8c sub_803b3d8c: @@ -1118,7 +1183,7 @@ sub_803b3d8c: /* 803B3D9C 003B0CFC 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3DA0 003B0D00 7C 08 03 A6 */ mtlr r0 /* 803B3DA4 003B0D04 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3DA8 003B0D08 4E 80 00 20 */ blr +/* 803B3DA8 003B0D08 4E 80 00 20 */ blr .global sub_803b3dac sub_803b3dac: @@ -1162,7 +1227,7 @@ lbl_803B3E20: /* 803B3E30 003B0D90 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803B3E34 003B0D94 7C 08 03 A6 */ mtlr r0 /* 803B3E38 003B0D98 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3E3C 003B0D9C 4E 80 00 20 */ blr +/* 803B3E3C 003B0D9C 4E 80 00 20 */ blr .global sub_803b3e40 sub_803b3e40: @@ -1173,7 +1238,7 @@ sub_803b3e40: /* 803B3E50 003B0DB0 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3E54 003B0DB4 7C 08 03 A6 */ mtlr r0 /* 803B3E58 003B0DB8 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3E5C 003B0DBC 4E 80 00 20 */ blr +/* 803B3E5C 003B0DBC 4E 80 00 20 */ blr .global sub_803b3e60 sub_803b3e60: @@ -1213,7 +1278,7 @@ lbl_803B3EC8: /* 803B3ED4 003B0E34 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3ED8 003B0E38 7C 08 03 A6 */ mtlr r0 /* 803B3EDC 003B0E3C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3EE0 003B0E40 4E 80 00 20 */ blr +/* 803B3EE0 003B0E40 4E 80 00 20 */ blr .global hwSyncSampleMem hwSyncSampleMem: @@ -1224,11 +1289,11 @@ hwSyncSampleMem: /* 803B3EF4 003B0E54 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B3EF8 003B0E58 7C 08 03 A6 */ mtlr r0 /* 803B3EFC 003B0E5C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B3F00 003B0E60 4E 80 00 20 */ blr +/* 803B3F00 003B0E60 4E 80 00 20 */ blr .global nullsub_59 nullsub_59: -/* 803B3F04 003B0E64 4E 80 00 20 */ blr +/* 803B3F04 003B0E64 4E 80 00 20 */ blr .global sndSetHooks sndSetHooks: @@ -1236,13 +1301,13 @@ sndSetHooks: /* 803B3F0C 003B0E6C 80 03 00 04 */ lwz r0, 4(r3) /* 803B3F10 003B0E70 90 8D AF 84 */ stw r4, salHooks@sda21(r13) /* 803B3F14 003B0E74 90 0D AF 88 */ stw r0, salHooks+4@sda21(r13) -/* 803B3F18 003B0E78 4E 80 00 20 */ blr +/* 803B3F18 003B0E78 4E 80 00 20 */ blr .global sub_803b3f1c sub_803b3f1c: /* 803B3F1C 003B0E7C 38 00 00 00 */ li r0, 0 /* 803B3F20 003B0E80 90 0D AF 44 */ stw r0, dspHRTFOn@sda21(r13) -/* 803B3F24 003B0E84 4E 80 00 20 */ blr +/* 803B3F24 003B0E84 4E 80 00 20 */ blr .global hwGetVirtualSampleID hwGetVirtualSampleID: @@ -1253,10 +1318,10 @@ hwGetVirtualSampleID: /* 803B3F38 003B0E98 28 00 00 00 */ cmplwi r0, 0 /* 803B3F3C 003B0E9C 40 82 00 0C */ bne lbl_803B3F48 /* 803B3F40 003B0EA0 38 60 FF FF */ li r3, -1 -/* 803B3F44 003B0EA4 4E 80 00 20 */ blr +/* 803B3F44 003B0EA4 4E 80 00 20 */ blr lbl_803B3F48: /* 803B3F48 003B0EA8 80 63 00 E8 */ lwz r3, 0xe8(r3) -/* 803B3F4C 003B0EAC 4E 80 00 20 */ blr +/* 803B3F4C 003B0EAC 4E 80 00 20 */ blr .global hwVoiceInStartup hwVoiceInStartup: @@ -1267,4 +1332,4 @@ hwVoiceInStartup: /* 803B3F60 003B0EC0 20 00 00 01 */ subfic r0, r0, 1 /* 803B3F64 003B0EC4 7C 00 00 34 */ cntlzw r0, r0 /* 803B3F68 003B0EC8 54 03 D9 7E */ srwi r3, r0, 5 -/* 803B3F6C 003B0ECC 4E 80 00 20 */ blr +/* 803B3F6C 003B0ECC 4E 80 00 20 */ blr diff --git a/asm/musyx/hw_aramdma.s b/asm/musyx/hw_aramdma.s index eb1c939d..39e90741 100644 --- a/asm/musyx/hw_aramdma.s +++ b/asm/musyx/hw_aramdma.s @@ -1,4 +1,13 @@ .include "macros.inc" + +.section .bss +aramQueueLo: + .skip 0x284 +aramQueueHi: + .skip 0x284 +aramStreamBuffers: + .skip 0x408 + .section .sbss, "wa" .balign 4 .global aramIdleStreamBuffers @@ -37,13 +46,13 @@ aramQueueCallback: /* 803B3F84 003B0EE4 93 A1 00 14 */ stw r29, 0x14(r1) /* 803B3F88 003B0EE8 93 81 00 10 */ stw r28, 0x10(r1) /* 803B3F8C 003B0EEC 7C 7C 1B 78 */ mr r28, r3 -/* 803B3F90 003B0EF0 3C 60 80 56 */ lis r3, lbl_80566F90@ha +/* 803B3F90 003B0EF0 3C 60 80 56 */ lis r3, aramQueueLo@ha /* 803B3F94 003B0EF4 80 1C 00 0C */ lwz r0, 0xc(r28) -/* 803B3F98 003B0EF8 3B E3 6F 90 */ addi r31, r3, lbl_80566F90@l +/* 803B3F98 003B0EF8 3B E3 6F 90 */ addi r31, r3, aramQueueLo@l /* 803B3F9C 003B0EFC 28 00 00 01 */ cmplwi r0, 1 /* 803B3FA0 003B0F00 40 82 00 0C */ bne lbl_803B3FAC -/* 803B3FA4 003B0F04 3C 60 80 56 */ lis r3, lbl_80567214@ha -/* 803B3FA8 003B0F08 3B E3 72 14 */ addi r31, r3, lbl_80567214@l +/* 803B3FA4 003B0F04 3C 60 80 56 */ lis r3, aramQueueHi@ha +/* 803B3FA8 003B0F08 3B E3 72 14 */ addi r31, r3, aramQueueHi@l lbl_803B3FAC: /* 803B3FAC 003B0F0C 3B A0 00 00 */ li r29, 0 /* 803B3FB0 003B0F10 7F FE FB 78 */ mr r30, r31 @@ -87,12 +96,12 @@ aramUploadData: /* 803B4034 003B0F94 7C FC 3B 78 */ mr r28, r7 /* 803B4038 003B0F98 7D 1D 43 78 */ mr r29, r8 /* 803B403C 003B0F9C 41 82 00 10 */ beq lbl_803B404C -/* 803B4040 003B0FA0 3C 60 80 56 */ lis r3, lbl_80567214@ha -/* 803B4044 003B0FA4 3B E3 72 14 */ addi r31, r3, lbl_80567214@l +/* 803B4040 003B0FA0 3C 60 80 56 */ lis r3, aramQueueHi@ha +/* 803B4044 003B0FA4 3B E3 72 14 */ addi r31, r3, aramQueueHi@l /* 803B4048 003B0FA8 48 00 00 0C */ b lbl_803B4054 lbl_803B404C: -/* 803B404C 003B0FAC 3C 60 80 56 */ lis r3, lbl_80566F90@ha -/* 803B4050 003B0FB0 3B E3 6F 90 */ addi r31, r3, lbl_80566F90@l +/* 803B404C 003B0FAC 3C 60 80 56 */ lis r3, aramQueueLo@ha +/* 803B4050 003B0FB0 3B E3 6F 90 */ addi r31, r3, aramQueueLo@l lbl_803B4054: /* 803B4054 003B0FB4 4B FC D6 0D */ bl OSDisableInterrupts /* 803B4058 003B0FB8 88 1F 02 81 */ lbz r0, 0x281(r31) @@ -201,8 +210,8 @@ lbl_803B41D4: .global aramSyncTransferQueue aramSyncTransferQueue: -/* 803B41EC 003B114C 3C 60 80 56 */ lis r3, lbl_80566F90@ha -/* 803B41F0 003B1150 38 63 6F 90 */ addi r3, r3, lbl_80566F90@l +/* 803B41EC 003B114C 3C 60 80 56 */ lis r3, aramQueueLo@ha +/* 803B41F0 003B1150 38 63 6F 90 */ addi r3, r3, aramQueueLo@l lbl_803B41F4: /* 803B41F4 003B1154 88 03 02 81 */ lbz r0, 0x281(r3) /* 803B41F8 003B1158 28 00 00 00 */ cmplwi r0, 0 @@ -275,12 +284,12 @@ lbl_803B4240: /* 803B42E8 003B1248 7F 83 E3 78 */ mr r3, r28 /* 803B42EC 003B124C 38 80 05 00 */ li r4, 0x500 /* 803B42F0 003B1250 4B FC A7 C1 */ bl DCFlushRange -/* 803B42F4 003B1254 3C 80 80 56 */ lis r4, lbl_80566F90@ha -/* 803B42F8 003B1258 3C 60 80 56 */ lis r3, lbl_80567214@ha -/* 803B42FC 003B125C 3B E4 6F 90 */ addi r31, r4, lbl_80566F90@l +/* 803B42F4 003B1254 3C 80 80 56 */ lis r4, aramQueueLo@ha +/* 803B42F8 003B1258 3C 60 80 56 */ lis r3, aramQueueHi@ha +/* 803B42FC 003B125C 3B E4 6F 90 */ addi r31, r4, aramQueueLo@l /* 803B4300 003B1260 38 00 00 00 */ li r0, 0 /* 803B4304 003B1264 98 1F 02 81 */ stb r0, 0x281(r31) -/* 803B4308 003B1268 38 63 72 14 */ addi r3, r3, lbl_80567214@l +/* 803B4308 003B1268 38 63 72 14 */ addi r3, r3, aramQueueHi@l /* 803B430C 003B126C 98 1F 02 80 */ stb r0, 0x280(r31) /* 803B4310 003B1270 98 03 02 81 */ stb r0, 0x281(r3) /* 803B4314 003B1274 98 03 02 80 */ stb r0, 0x280(r3) @@ -465,9 +474,9 @@ sub_803b456c: /* 803B4598 003B14F8 40 82 01 A0 */ bne lbl_803B4738 /* 803B459C 003B14FC 7E E4 BB 78 */ mr r4, r23 /* 803B45A0 003B1500 4B FC A5 11 */ bl DCFlushRange -/* 803B45A4 003B1504 3C 60 80 56 */ lis r3, lbl_80566F90@ha +/* 803B45A4 003B1504 3C 60 80 56 */ lis r3, aramQueueLo@ha /* 803B45A8 003B1508 83 CD AF A8 */ lwz r30, aramWrite@sda21(r13) -/* 803B45AC 003B150C 3B 83 6F 90 */ addi r28, r3, lbl_80566F90@l +/* 803B45AC 003B150C 3B 83 6F 90 */ addi r28, r3, aramQueueLo@l lbl_803B45B0: /* 803B45B0 003B1510 4B FC D0 B1 */ bl OSDisableInterrupts /* 803B45B4 003B1514 88 1C 02 81 */ lbz r0, 0x281(r28) @@ -570,9 +579,9 @@ lbl_803B4724: /* 803B4730 003B1690 90 0D AF A8 */ stw r0, aramWrite@sda21(r13) /* 803B4734 003B1694 48 00 01 DC */ b lbl_803B4910 lbl_803B4738: -/* 803B4738 003B1698 3C 80 80 56 */ lis r4, lbl_80566F90@ha +/* 803B4738 003B1698 3C 80 80 56 */ lis r4, aramQueueLo@ha /* 803B473C 003B169C 3C 60 80 3B */ lis r3, aramQueueCallback@ha -/* 803B4740 003B16A0 3B C4 6F 90 */ addi r30, r4, lbl_80566F90@l +/* 803B4740 003B16A0 3B C4 6F 90 */ addi r30, r4, aramQueueLo@l /* 803B4744 003B16A4 3B E3 3F 70 */ addi r31, r3, aramQueueCallback@l /* 803B4748 003B16A8 48 00 01 BC */ b lbl_803B4904 lbl_803B474C: @@ -713,9 +722,9 @@ sub_803b4928: .global InitStreamBuffers InitStreamBuffers: -/* 803B4940 003B18A0 3C 60 80 56 */ lis r3, lbl_80567498@ha +/* 803B4940 003B18A0 3C 60 80 56 */ lis r3, aramStreamBuffers@ha /* 803B4944 003B18A4 38 80 00 00 */ li r4, 0 -/* 803B4948 003B18A8 38 63 74 98 */ addi r3, r3, lbl_80567498@l +/* 803B4948 003B18A8 38 63 74 98 */ addi r3, r3, aramStreamBuffers@l /* 803B494C 003B18AC 38 00 00 07 */ li r0, 7 /* 803B4950 003B18B0 90 8D AF 98 */ stw r4, aramUsedStreamBuffers@sda21(r13) /* 803B4954 003B18B4 38 E3 00 10 */ addi r7, r3, 0x10 @@ -742,9 +751,9 @@ lbl_803B4968: /* 803B49A4 003B1904 90 07 00 60 */ stw r0, 0x60(r7) /* 803B49A8 003B1908 38 E7 00 80 */ addi r7, r7, 0x80 /* 803B49AC 003B190C 42 00 FF BC */ bdnz lbl_803B4968 -/* 803B49B0 003B1910 3C 60 80 56 */ lis r3, lbl_80567498@ha +/* 803B49B0 003B1910 3C 60 80 56 */ lis r3, aramStreamBuffers@ha /* 803B49B4 003B1914 55 04 20 36 */ slwi r4, r8, 4 -/* 803B49B8 003B1918 38 63 74 98 */ addi r3, r3, lbl_80567498@l +/* 803B49B8 003B1918 38 63 74 98 */ addi r3, r3, aramStreamBuffers@l /* 803B49BC 003B191C 20 08 00 40 */ subfic r0, r8, 0x40 /* 803B49C0 003B1920 7C 63 22 14 */ add r3, r3, r4 /* 803B49C4 003B1924 7C 09 03 A6 */ mtctr r0 @@ -756,9 +765,9 @@ lbl_803B49D0: /* 803B49D8 003B1938 39 08 00 01 */ addi r8, r8, 1 /* 803B49DC 003B193C 42 00 FF F4 */ bdnz lbl_803B49D0 lbl_803B49E0: -/* 803B49E0 003B1940 3C 60 80 56 */ lis r3, lbl_80567498@ha +/* 803B49E0 003B1940 3C 60 80 56 */ lis r3, aramStreamBuffers@ha /* 803B49E4 003B1944 80 0D AF AC */ lwz r0, aramTop@sda21(r13) -/* 803B49E8 003B1948 38 83 74 98 */ addi r4, r3, lbl_80567498@l +/* 803B49E8 003B1948 38 83 74 98 */ addi r4, r3, aramStreamBuffers@l /* 803B49EC 003B194C 55 03 20 36 */ slwi r3, r8, 4 /* 803B49F0 003B1950 7C 64 1A 14 */ add r3, r4, r3 /* 803B49F4 003B1954 38 80 00 00 */ li r4, 0 @@ -837,8 +846,8 @@ lbl_803B4AE0: /* 803B4AE8 003B1A48 38 60 00 FF */ li r3, 0xff /* 803B4AEC 003B1A4C 4E 80 00 20 */ blr lbl_803B4AF0: -/* 803B4AF0 003B1A50 3C 60 80 56 */ lis r3, lbl_80567498@ha -/* 803B4AF4 003B1A54 38 03 74 98 */ addi r0, r3, lbl_80567498@l +/* 803B4AF0 003B1A50 3C 60 80 56 */ lis r3, aramStreamBuffers@ha +/* 803B4AF4 003B1A54 38 03 74 98 */ addi r0, r3, aramStreamBuffers@l /* 803B4AF8 003B1A58 7C 00 28 50 */ subf r0, r0, r5 /* 803B4AFC 003B1A5C 7C 00 26 70 */ srawi r0, r0, 4 /* 803B4B00 003B1A60 7C 00 01 94 */ addze r0, r0 @@ -849,25 +858,25 @@ lbl_803B4AF0: aramGetStreamBufferAddress: /* 803B4B0C 003B1A6C 28 04 00 00 */ cmplwi r4, 0 /* 803B4B10 003B1A70 41 82 00 1C */ beq lbl_803B4B2C -/* 803B4B14 003B1A74 3C A0 80 56 */ lis r5, lbl_80567498@ha +/* 803B4B14 003B1A74 3C A0 80 56 */ lis r5, aramStreamBuffers@ha /* 803B4B18 003B1A78 54 60 25 36 */ rlwinm r0, r3, 4, 0x14, 0x1b -/* 803B4B1C 003B1A7C 38 A5 74 98 */ addi r5, r5, lbl_80567498@l +/* 803B4B1C 003B1A7C 38 A5 74 98 */ addi r5, r5, aramStreamBuffers@l /* 803B4B20 003B1A80 7C A5 02 14 */ add r5, r5, r0 /* 803B4B24 003B1A84 80 05 00 08 */ lwz r0, 8(r5) /* 803B4B28 003B1A88 90 04 00 00 */ stw r0, 0(r4) lbl_803B4B2C: -/* 803B4B2C 003B1A8C 3C 80 80 56 */ lis r4, lbl_80567498@ha +/* 803B4B2C 003B1A8C 3C 80 80 56 */ lis r4, aramStreamBuffers@ha /* 803B4B30 003B1A90 54 60 25 36 */ rlwinm r0, r3, 4, 0x14, 0x1b -/* 803B4B34 003B1A94 38 64 74 98 */ addi r3, r4, lbl_80567498@l +/* 803B4B34 003B1A94 38 64 74 98 */ addi r3, r4, aramStreamBuffers@l /* 803B4B38 003B1A98 7C 63 02 14 */ add r3, r3, r0 /* 803B4B3C 003B1A9C 80 63 00 04 */ lwz r3, 4(r3) /* 803B4B40 003B1AA0 4E 80 00 20 */ blr .global aramFreeStreamBuffer aramFreeStreamBuffer: -/* 803B4B44 003B1AA4 3C 80 80 56 */ lis r4, lbl_80567498@ha +/* 803B4B44 003B1AA4 3C 80 80 56 */ lis r4, aramStreamBuffers@ha /* 803B4B48 003B1AA8 54 63 25 36 */ rlwinm r3, r3, 4, 0x14, 0x1b -/* 803B4B4C 003B1AAC 38 04 74 98 */ addi r0, r4, lbl_80567498@l +/* 803B4B4C 003B1AAC 38 04 74 98 */ addi r0, r4, aramStreamBuffers@l /* 803B4B50 003B1AB0 80 AD AF 98 */ lwz r5, aramUsedStreamBuffers@sda21(r13) /* 803B4B54 003B1AB4 38 C0 00 00 */ li r6, 0 /* 803B4B58 003B1AB8 7C 80 1A 14 */ add r4, r0, r3 diff --git a/asm/musyx/hw_dolphin.s b/asm/musyx/hw_dolphin.s index 47ec2bf6..7cc9f4f9 100644 --- a/asm/musyx/hw_dolphin.s +++ b/asm/musyx/hw_dolphin.s @@ -1,5 +1,11 @@ .include "macros.inc" +.section .bss +dsp_task: + .skip 0x60 +dram_image: + .skip 0x2008 + .section .sbss, "wa" .balign 4 .global oldState diff --git a/asm/musyx/hw_dspctrl.s b/asm/musyx/hw_dspctrl.s index 03256f08..debd5b2a 100644 --- a/asm/musyx/hw_dspctrl.s +++ b/asm/musyx/hw_dspctrl.s @@ -1,5 +1,15 @@ .include "macros.inc" +.section .bss +.global gs +gs: + .skip 0x600 +.global dspStudio +dspStudio: + .skip 0x5E0 +"voices$217": + .skip 0x100 + .section .sbss .balign 4 .global dspARAMZeroBuffer diff --git a/asm/musyx/hw_volconv.s b/asm/musyx/hw_volconv.s index 3c1f2f4f..21a6f608 100644 --- a/asm/musyx/hw_volconv.s +++ b/asm/musyx/hw_volconv.s @@ -4,9 +4,148 @@ .global lbl_803F3FC0 lbl_803F3FC0: - .incbin "baserom.dol", 0x3F0FC0, 0x228 - -.section .text, "ax" + # ROM: 0x3F0FC0 + .4byte 0 + .4byte 0x380000FD + .4byte 0x3920015F + .4byte 0x39D001AD + .4byte 0x3A380175 + .4byte 0x3A9400FE + .4byte 0x3AD801B4 + .4byte 0x3B12011F + .4byte 0x3B40018D + .4byte 0x3B7401F0 + .4byte 0x3B970123 + .4byte 0x3BB70174 + .4byte 0x3BDA01BF + .4byte 0x3C008104 + .4byte 0x3C158126 + .4byte 0x3C2C017B + .4byte 0x3C4401B8 + .4byte 0x3C5E01A8 + .4byte 0x3C7901DF + .4byte 0x3C8B4111 + .4byte 0x3C9A8120 + .4byte 0x3CAAC13F + .4byte 0x3CBBC177 + .4byte 0x3CCDC18A + .4byte 0x3CE081B5 + .4byte 0x3CF441F1 + .4byte 0x3D046108 + .4byte 0x3D0F2120 + .4byte 0x3D1A412A + .4byte 0x3D25C140 + .4byte 0x3D31E159 + .4byte 0x3D3E617F + .4byte 0x3D4B4197 + .4byte 0x3D58A1B7 + .4byte 0x3D6681C5 + .4byte 0x3D74E1F4 + .4byte 0x3D81D0FE + .4byte 0x3D897113 + .4byte 0x3D91511E + .4byte 0x3D99712D + .4byte 0x3DA1C143 + .4byte 0x3DAA514F + .4byte 0x3DB32160 + .4byte 0x3DBC417F + .4byte 0x3DC5918A + .4byte 0x3DCF2171 + .4byte 0x3DD8F1D4 + .4byte 0x3DE301A8 + .4byte 0x3DED51F8 + .4byte 0x3DF7E1B9 + .4byte 0x3E01611C + .4byte 0x3E06E8F3 + .4byte 0x3E0C9928 + .4byte 0x3E126916 + .4byte 0x3E185943 + .4byte 0x3E1E7147 + .4byte 0x3E24A16A + .4byte 0x3E2B0143 + .4byte 0x3E31797D + .4byte 0x3E38198F + .4byte 0x3E3EE17A + .4byte 0x3E45C183 + .4byte 0x3E4CD185 + .4byte 0x3E53F9A5 + .4byte 0x3E5B51BD + .4byte 0x3E62C9D1 + .4byte 0x3E6A69BE + .4byte 0x3E7229E9 + .4byte 0x3E7A11ED + .4byte 0x3E811106 + .4byte 0x3E852913 + .4byte 0x3E89591D + .4byte 0x3E8D9924 + .4byte 0x3E91ED18 + .4byte 0x3E965929 + .4byte 0x3E9AD539 + .4byte 0x3E9F6534 + .4byte 0x3EA4093E + .4byte 0x3EA8C155 + .4byte 0x3EAD9168 + .4byte 0x3EB27158 + .4byte 0x3EB76966 + .4byte 0x3EBC7582 + .4byte 0x3EC19589 + .4byte 0x3EC6CD8E + .4byte 0x3ECC19A0 + .4byte 0x3ED1799E + .4byte 0x3ED6F1BB + .4byte 0x3EDC7DC3 + .4byte 0x3EE221C9 + .4byte 0x3EE7DDCA + .4byte 0x3EEDADDA + .4byte 0x3EF395E6 + .4byte 0x3EF991FF + .4byte 0x3EFFA5F4 + .4byte 0x3F02EB0B + .4byte 0x3F060B0B + .4byte 0x3F093911 + .4byte 0x3F0C7315 + .4byte 0x3F0FB928 + .4byte 0x3F130B28 + .4byte 0x3F166927 + .4byte 0x3F19D335 + .4byte 0x3F1D4941 + .4byte 0x3F20CD42 + .4byte 0x3F245B4B + .4byte 0x3F27F951 + .4byte 0x3F2BA15E + .4byte 0x3F2F5760 + .4byte 0x3F331B69 + .4byte 0x3F36EB70 + .4byte 0x3F3AC97E + .4byte 0x3F3EB378 + .4byte 0x3F42AB8A + .4byte 0x3F46B192 + .4byte 0x3F4AC58F + .4byte 0x3F4EE59B + .4byte 0x3F5315A5 + .4byte 0x3F5751AD + .4byte 0x3F5B9BBB + .4byte 0x3F5FF5C7 + .4byte 0x3F645DC8 + .4byte 0x3F68D1D9 + .4byte 0x3F6D57DE + .4byte 0x3F71EBEA + .4byte 0x3F768BF4 + .4byte 0x3F7B3DF3 + .4byte 0x3F800000 + .4byte 0x3F800000 + .4byte 0 + .4byte 0x3F3538EF + .4byte 0x3F800000 + .4byte 0x3F800000 + .4byte 0x3F133333 + .4byte 0x3F3538EF + .4byte 0x3F800000 + .4byte 0x3F800000 + .4byte 0 + + +.section .text, "ax" .global salCalcVolume salCalcVolume: @@ -459,4 +598,4 @@ lbl_803AE788: /* 803AE7F0 003AB750 80 01 01 14 */ lwz r0, 0x114(r1) /* 803AE7F4 003AB754 7C 08 03 A6 */ mtlr r0 /* 803AE7F8 003AB758 38 21 01 10 */ addi r1, r1, 0x110 -/* 803AE7FC 003AB75C 4E 80 00 20 */ blr +/* 803AE7FC 003AB75C 4E 80 00 20 */ blr diff --git a/asm/musyx/s_data.s b/asm/musyx/s_data.s index af0942a5..3864a484 100644 --- a/asm/musyx/s_data.s +++ b/asm/musyx/s_data.s @@ -530,9 +530,9 @@ lbl_803AA474: /* 803AA478 003A73D8 7C 00 20 40 */ cmplw r0, r4 /* 803AA47C 003A73DC 40 82 02 A8 */ bne lbl_803AA724 /* 803AA480 003A73E0 1C 06 00 0C */ mulli r0, r6, 0xc -/* 803AA484 003A73E4 3C 80 80 56 */ lis r4, lbl_8055EC60@ha +/* 803AA484 003A73E4 3C 80 80 56 */ lis r4, gs@ha /* 803AA488 003A73E8 7C A3 2B 78 */ mr r3, r5 -/* 803AA48C 003A73EC 38 84 EC 60 */ addi r4, r4, lbl_8055EC60@l +/* 803AA48C 003A73EC 38 84 EC 60 */ addi r4, r4, gs@l /* 803AA490 003A73F0 7F E4 01 2E */ stwx r31, r4, r0 /* 803AA494 003A73F4 7C 84 02 14 */ add r4, r4, r0 /* 803AA498 003A73F8 93 64 00 08 */ stw r27, 8(r4) @@ -751,8 +751,8 @@ sndPopGroup: /* 803AA764 003A76C4 39 61 00 20 */ addi r11, r1, 0x20 /* 803AA768 003A76C8 4B FD F3 11 */ bl _savegpr_26 /* 803AA76C 003A76CC A8 AD AF 18 */ lha r5, sp@sda21(r13) -/* 803AA770 003A76D0 3C 60 80 56 */ lis r3, lbl_8055EC60@ha -/* 803AA774 003A76D4 38 83 EC 60 */ addi r4, r3, lbl_8055EC60@l +/* 803AA770 003A76D0 3C 60 80 56 */ lis r3, gs@ha +/* 803AA774 003A76D4 38 83 EC 60 */ addi r4, r3, gs@l /* 803AA778 003A76D8 38 65 FF FF */ addi r3, r5, -1 /* 803AA77C 003A76DC 7C 60 07 34 */ extsh r0, r3 /* 803AA780 003A76E0 B0 6D AF 18 */ sth r3, sp@sda21(r13) @@ -993,11 +993,11 @@ sub_803aaa94: /* 803AAAA0 003A7A00 39 61 00 30 */ addi r11, r1, 0x30 /* 803AAAA4 003A7A04 4B FD EF D1 */ bl _savegpr_25 /* 803AAAA8 003A7A08 A8 0D AF 18 */ lha r0, sp@sda21(r13) -/* 803AAAAC 003A7A0C 3D 20 80 56 */ lis r9, lbl_8055EC60@ha +/* 803AAAAC 003A7A0C 3D 20 80 56 */ lis r9, gs@ha /* 803AAAB0 003A7A10 7C BD 2B 78 */ mr r29, r5 /* 803AAAB4 003A7A14 7C DE 33 78 */ mr r30, r6 /* 803AAAB8 003A7A18 7C 7C 1B 78 */ mr r28, r3 -/* 803AAABC 003A7A1C 39 29 EC 60 */ addi r9, r9, lbl_8055EC60@l +/* 803AAABC 003A7A1C 39 29 EC 60 */ addi r9, r9, gs@l /* 803AAAC0 003A7A20 7D 1F 43 78 */ mr r31, r8 /* 803AAAC4 003A7A24 54 65 04 3E */ clrlwi r5, r3, 0x10 /* 803AAAC8 003A7A28 38 C0 00 00 */ li r6, 0 @@ -1010,8 +1010,8 @@ lbl_803AAAD8: /* 803AAAE0 003A7A40 7C 05 00 40 */ cmplw r5, r0 /* 803AAAE4 003A7A44 40 82 00 D4 */ bne lbl_803AABB8 /* 803AAAE8 003A7A48 1C A6 00 0C */ mulli r5, r6, 0xc -/* 803AAAEC 003A7A4C 3C 60 80 56 */ lis r3, lbl_8055EC60@ha -/* 803AAAF0 003A7A50 38 63 EC 60 */ addi r3, r3, lbl_8055EC60@l +/* 803AAAEC 003A7A4C 3C 60 80 56 */ lis r3, gs@ha +/* 803AAAF0 003A7A50 38 63 EC 60 */ addi r3, r3, gs@l /* 803AAAF4 003A7A54 7C C3 28 2E */ lwzx r6, r3, r5 /* 803AAAF8 003A7A58 A0 06 00 06 */ lhz r0, 6(r6) /* 803AAAFC 003A7A5C 28 00 00 00 */ cmplwi r0, 0 @@ -1089,11 +1089,11 @@ sndSeqPlayEx: /* 803AABEC 003A7B4C 39 61 00 30 */ addi r11, r1, 0x30 /* 803AABF0 003A7B50 4B FD EE 85 */ bl _savegpr_25 /* 803AABF4 003A7B54 A8 0D AF 18 */ lha r0, sp@sda21(r13) -/* 803AABF8 003A7B58 3D 00 80 56 */ lis r8, lbl_8055EC60@ha +/* 803AABF8 003A7B58 3D 00 80 56 */ lis r8, gs@ha /* 803AABFC 003A7B5C 7C BD 2B 78 */ mr r29, r5 /* 803AAC00 003A7B60 7C DE 33 78 */ mr r30, r6 /* 803AAC04 003A7B64 7C 7C 1B 78 */ mr r28, r3 -/* 803AAC08 003A7B68 39 08 EC 60 */ addi r8, r8, lbl_8055EC60@l +/* 803AAC08 003A7B68 39 08 EC 60 */ addi r8, r8, gs@l /* 803AAC0C 003A7B6C 7C FF 3B 78 */ mr r31, r7 /* 803AAC10 003A7B70 54 65 04 3E */ clrlwi r5, r3, 0x10 /* 803AAC14 003A7B74 38 C0 00 00 */ li r6, 0 @@ -1106,8 +1106,8 @@ lbl_803AAC24: /* 803AAC2C 003A7B8C 7C 05 00 40 */ cmplw r5, r0 /* 803AAC30 003A7B90 40 82 00 A0 */ bne lbl_803AACD0 /* 803AAC34 003A7B94 1C A6 00 0C */ mulli r5, r6, 0xc -/* 803AAC38 003A7B98 3C 60 80 56 */ lis r3, lbl_8055EC60@ha -/* 803AAC3C 003A7B9C 38 63 EC 60 */ addi r3, r3, lbl_8055EC60@l +/* 803AAC38 003A7B98 3C 60 80 56 */ lis r3, gs@ha +/* 803AAC3C 003A7B9C 38 63 EC 60 */ addi r3, r3, gs@l /* 803AAC40 003A7BA0 7C C3 28 2E */ lwzx r6, r3, r5 /* 803AAC44 003A7BA4 A0 06 00 06 */ lhz r0, 6(r6) /* 803AAC48 003A7BA8 28 00 00 00 */ cmplwi r0, 0 diff --git a/asm/musyx/seq.s b/asm/musyx/seq.s index ccd7f4ba..805ae33c 100644 --- a/asm/musyx/seq.s +++ b/asm/musyx/seq.s @@ -1,5 +1,16 @@ .include "macros.inc" +.section .bss +.global seqNote +seqNote: + .skip 0x1400 +.global seqInstance +seqInstance: + .skip 0xC340 +.global seqMIDIPriority +seqMIDIPriority: + .skip 0x100 + .section .sbss seq_next_id: .skip 0x4 @@ -17,14 +28,35 @@ seqPausedRoot: .skip 0x4 seqActiveRoot: .skip 0x4 - + .section .data, "wa" .global lbl_803F2F88 lbl_803F2F88: - .incbin "baserom.dol", 0x3EFF88, 0x50 - -.section .text, "ax" + # ROM: 0x3EFF88 + .4byte lbl_8039750C + .4byte lbl_8039753C + .4byte lbl_80397560 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397638 + .4byte lbl_80397588 + .4byte lbl_80397638 + .4byte lbl_803975A0 + + +.section .text, "ax" .global seqGetPrivateId seqGetPrivateId: @@ -38,7 +70,7 @@ lbl_80394D40: /* 80394D48 00391CA8 40 82 00 10 */ bne lbl_80394D58 /* 80394D4C 00391CAC 88 64 00 09 */ lbz r3, 9(r4) /* 80394D50 00391CB0 50 A3 00 00 */ rlwimi r3, r5, 0, 0, 0 -/* 80394D54 00391CB4 4E 80 00 20 */ blr +/* 80394D54 00391CB4 4E 80 00 20 */ blr lbl_80394D58: /* 80394D58 00391CB8 80 84 00 00 */ lwz r4, 0(r4) lbl_80394D5C: @@ -52,14 +84,14 @@ lbl_80394D6C: /* 80394D74 00391CD4 40 82 00 10 */ bne lbl_80394D84 /* 80394D78 00391CD8 88 64 00 09 */ lbz r3, 9(r4) /* 80394D7C 00391CDC 50 A3 00 00 */ rlwimi r3, r5, 0, 0, 0 -/* 80394D80 00391CE0 4E 80 00 20 */ blr +/* 80394D80 00391CE0 4E 80 00 20 */ blr lbl_80394D84: /* 80394D84 00391CE4 80 84 00 00 */ lwz r4, 0(r4) lbl_80394D88: /* 80394D88 00391CE8 28 04 00 00 */ cmplwi r4, 0 /* 80394D8C 00391CEC 40 82 FF E0 */ bne lbl_80394D6C /* 80394D90 00391CF0 38 60 FF FF */ li r3, -1 -/* 80394D94 00391CF4 4E 80 00 20 */ blr +/* 80394D94 00391CF4 4E 80 00 20 */ blr .global seqStartPlay seqStartPlay: @@ -479,10 +511,10 @@ lbl_8039537C: /* 8039538C 003922EC 3A F7 00 38 */ addi r23, r23, 0x38 /* 80395390 003922F0 41 80 FF B4 */ blt lbl_80395344 /* 80395394 003922F4 80 BC 00 00 */ lwz r5, 0(r28) -/* 80395398 003922F8 3C 60 80 55 */ lis r3, lbl_80550864@ha +/* 80395398 003922F8 3C 60 80 55 */ lis r3, synthTrackVolume@ha /* 8039539C 003922FC 39 40 00 00 */ li r10, 0 /* 803953A0 00392300 38 00 00 10 */ li r0, 0x10 -/* 803953A4 00392304 38 C3 08 64 */ addi r6, r3, lbl_80550864@l +/* 803953A4 00392304 38 C3 08 64 */ addi r6, r3, synthTrackVolume@l /* 803953A8 00392308 7D 05 E2 14 */ add r8, r5, r28 /* 803953AC 0039230C 7F 67 DB 78 */ mr r7, r27 /* 803953B0 00392310 7F 69 DB 78 */ mr r9, r27 @@ -594,10 +626,10 @@ lbl_80395510: /* 80395528 00392488 28 1D 00 00 */ cmplwi r29, 0 /* 8039552C 0039248C 41 82 01 30 */ beq lbl_8039565C /* 80395530 00392490 3C 80 00 01 */ lis r4, 0x0000FFFF@ha -/* 80395534 00392494 3C 60 80 55 */ lis r3, lbl_8054FD10@ha +/* 80395534 00392494 3C 60 80 55 */ lis r3, seqMIDIPriority@ha /* 80395538 00392498 3B 80 00 00 */ li r28, 0 /* 8039553C 0039249C 3B C4 FF FF */ addi r30, r4, 0x0000FFFF@l -/* 80395540 003924A0 3B E3 FD 10 */ addi r31, r3, lbl_8054FD10@l +/* 80395540 003924A0 3B E3 FD 10 */ addi r31, r3, seqMIDIPriority@l lbl_80395544: /* 80395544 003924A4 80 0D AE 30 */ lwz r0, curSeqId@sda21(r13) /* 80395548 003924A8 57 84 06 3E */ clrlwi r4, r28, 0x18 @@ -675,10 +707,10 @@ lbl_8039565C: /* 8039565C 003925BC 38 00 00 00 */ li r0, 0 /* 80395660 003925C0 2C 00 00 10 */ cmpwi r0, 0x10 /* 80395664 003925C4 40 80 00 5C */ bge lbl_803956C0 -/* 80395668 003925C8 3C 80 80 55 */ lis r4, lbl_8054FD10@ha +/* 80395668 003925C8 3C 80 80 55 */ lis r4, seqMIDIPriority@ha /* 8039566C 003925CC 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 80395670 003925D0 57 45 28 34 */ slwi r5, r26, 5 -/* 80395674 003925D4 38 84 FD 10 */ addi r4, r4, lbl_8054FD10@l +/* 80395674 003925D4 38 84 FD 10 */ addi r4, r4, seqMIDIPriority@l /* 80395678 003925D8 38 03 FF FF */ addi r0, r3, 0x0000FFFF@l /* 8039567C 003925DC 7C 64 2A 14 */ add r3, r4, r5 /* 80395680 003925E0 B0 03 00 00 */ sth r0, 0(r3) @@ -803,8 +835,8 @@ lbl_80395824: /* 80395828 00392788 28 00 FF FF */ cmplwi r0, 0xffff /* 8039582C 0039278C 41 82 FF 94 */ beq lbl_803957C0 /* 80395830 00392790 1C 1A 18 68 */ mulli r0, r26, 0x1868 -/* 80395834 00392794 3C 80 80 54 */ lis r4, lbl_805439D0@ha -/* 80395838 00392798 38 84 39 D0 */ addi r4, r4, lbl_805439D0@l +/* 80395834 00392794 3C 80 80 54 */ lis r4, seqInstance@ha +/* 80395838 00392798 38 84 39 D0 */ addi r4, r4, seqInstance@l /* 8039583C 0039279C 7C 84 02 14 */ add r4, r4, r0 /* 80395840 003927A0 90 64 00 0C */ stw r3, 0xc(r4) lbl_80395844: @@ -813,7 +845,7 @@ lbl_80395844: /* 8039584C 003927AC 80 01 00 44 */ lwz r0, 0x44(r1) /* 80395850 003927B0 7C 08 03 A6 */ mtlr r0 /* 80395854 003927B4 38 21 00 40 */ addi r1, r1, 0x40 -/* 80395858 003927B8 4E 80 00 20 */ blr +/* 80395858 003927B8 4E 80 00 20 */ blr .global StartPause StartPause: @@ -845,7 +877,7 @@ lbl_803958A8: /* 803958B0 00392810 90 83 00 04 */ stw r4, 4(r3) /* 803958B4 00392814 90 6D AE 40 */ stw r3, seqPausedRoot@sda21(r13) /* 803958B8 00392818 98 03 00 08 */ stb r0, 8(r3) -/* 803958BC 0039281C 4E 80 00 20 */ blr +/* 803958BC 0039281C 4E 80 00 20 */ blr .global seqPause seqPause: @@ -893,8 +925,8 @@ lbl_8039593C: /* 80395948 003928A8 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 8039594C 003928AC 40 82 01 A4 */ bne lbl_80395AF0 /* 80395950 003928B0 1C 84 18 68 */ mulli r4, r4, 0x1868 -/* 80395954 003928B4 3C 60 80 54 */ lis r3, lbl_805439D0@ha -/* 80395958 003928B8 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80395954 003928B4 3C 60 80 54 */ lis r3, seqInstance@ha +/* 80395958 003928B8 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 8039595C 003928BC 7F E0 22 14 */ add r31, r0, r4 /* 80395960 003928C0 88 1F 00 08 */ lbz r0, 8(r31) /* 80395964 003928C4 28 00 00 01 */ cmplwi r0, 1 @@ -1018,9 +1050,9 @@ lbl_80395ADC: /* 80395AEC 00392A4C 48 00 00 30 */ b lbl_80395B1C lbl_80395AF0: /* 80395AF0 00392A50 54 80 00 7E */ clrlwi r0, r4, 1 -/* 80395AF4 00392A54 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80395AF4 00392A54 3C 60 80 54 */ lis r3, seqInstance@ha /* 80395AF8 00392A58 1C 80 18 68 */ mulli r4, r0, 0x1868 -/* 80395AFC 00392A5C 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80395AFC 00392A5C 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80395B00 00392A60 7C 60 22 14 */ add r3, r0, r4 /* 80395B04 00392A64 88 03 00 08 */ lbz r0, 8(r3) /* 80395B08 00392A68 28 00 00 00 */ cmplwi r0, 0 @@ -1036,7 +1068,7 @@ lbl_80395B1C: /* 80395B2C 00392A8C 83 81 00 10 */ lwz r28, 0x10(r1) /* 80395B30 00392A90 7C 08 03 A6 */ mtlr r0 /* 80395B34 00392A94 38 21 00 20 */ addi r1, r1, 0x20 -/* 80395B38 00392A98 4E 80 00 20 */ blr +/* 80395B38 00392A98 4E 80 00 20 */ blr .global seqStop seqStop: @@ -1082,8 +1114,8 @@ lbl_80395BB0: /* 80395BBC 00392B1C 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 80395BC0 00392B20 40 82 01 EC */ bne lbl_80395DAC /* 80395BC4 00392B24 1F 64 18 68 */ mulli r27, r4, 0x1868 -/* 80395BC8 00392B28 3C 60 80 54 */ lis r3, lbl_805439D0@ha -/* 80395BCC 00392B2C 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80395BC8 00392B28 3C 60 80 54 */ lis r3, seqInstance@ha +/* 80395BCC 00392B2C 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80395BD0 00392B30 7F E0 DA 14 */ add r31, r0, r27 /* 80395BD4 00392B34 88 1F 00 08 */ lbz r0, 8(r31) /* 80395BD8 00392B38 2C 00 00 02 */ cmpwi r0, 2 @@ -1119,8 +1151,8 @@ lbl_80395C2C: /* 80395C38 00392B98 3B 9C 00 04 */ addi r28, r28, 4 /* 80395C3C 00392B9C 28 1E 00 02 */ cmplwi r30, 2 /* 80395C40 00392BA0 41 80 FF D8 */ blt lbl_80395C18 -/* 80395C44 00392BA4 3C 60 80 54 */ lis r3, lbl_805439D0@ha -/* 80395C48 00392BA8 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80395C44 00392BA4 3C 60 80 54 */ lis r3, seqInstance@ha +/* 80395C48 00392BA8 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80395C4C 00392BAC 7F 60 DA 14 */ add r27, r0, r27 /* 80395C50 00392BB0 87 9B 0E 6C */ lwzu r28, 0xe6c(r27) /* 80395C54 00392BB4 48 00 00 10 */ b lbl_80395C64 @@ -1229,9 +1261,9 @@ lbl_80395D94: /* 80395DA8 00392D08 48 00 00 2C */ b lbl_80395DD4 lbl_80395DAC: /* 80395DAC 00392D0C 54 80 00 7E */ clrlwi r0, r4, 1 -/* 80395DB0 00392D10 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80395DB0 00392D10 3C 60 80 54 */ lis r3, seqInstance@ha /* 80395DB4 00392D14 1C 80 18 68 */ mulli r4, r0, 0x1868 -/* 80395DB8 00392D18 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80395DB8 00392D18 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80395DBC 00392D1C 7C 60 22 14 */ add r3, r0, r4 /* 80395DC0 00392D20 88 03 00 08 */ lbz r0, 8(r3) /* 80395DC4 00392D24 28 00 00 00 */ cmplwi r0, 0 @@ -1244,7 +1276,7 @@ lbl_80395DD4: /* 80395DDC 00392D3C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80395DE0 00392D40 7C 08 03 A6 */ mtlr r0 /* 80395DE4 00392D44 38 21 00 20 */ addi r1, r1, 0x20 -/* 80395DE8 00392D48 4E 80 00 20 */ blr +/* 80395DE8 00392D48 4E 80 00 20 */ blr .global seqKillInstancesByGroupID seqKillInstancesByGroupID: @@ -1289,7 +1321,7 @@ lbl_80395E58: /* 80395E6C 00392DCC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80395E70 00392DD0 7C 08 03 A6 */ mtlr r0 /* 80395E74 00392DD4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80395E78 00392DD8 4E 80 00 20 */ blr +/* 80395E78 00392DD8 4E 80 00 20 */ blr .global seqSpeed seqSpeed: @@ -1327,8 +1359,8 @@ lbl_80395EDC: /* 80395EDC 00392E3C 54 A0 00 01 */ rlwinm. r0, r5, 0, 0, 0 /* 80395EE0 00392E40 40 82 00 58 */ bne lbl_80395F38 /* 80395EE4 00392E44 1C A5 18 68 */ mulli r5, r5, 0x1868 -/* 80395EE8 00392E48 3C 60 80 54 */ lis r3, lbl_805439D0@ha -/* 80395EEC 00392E4C 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80395EE8 00392E48 3C 60 80 54 */ lis r3, seqInstance@ha +/* 80395EEC 00392E4C 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80395EF0 00392E50 7C 60 2A 14 */ add r3, r0, r5 /* 80395EF4 00392E54 B0 83 15 1A */ sth r4, 0x151a(r3) /* 80395EF8 00392E58 B0 83 15 52 */ sth r4, 0x1552(r3) @@ -1346,18 +1378,18 @@ lbl_80395EDC: /* 80395F28 00392E88 B0 83 17 F2 */ sth r4, 0x17f2(r3) /* 80395F2C 00392E8C B0 83 18 2A */ sth r4, 0x182a(r3) /* 80395F30 00392E90 B0 83 18 62 */ sth r4, 0x1862(r3) -/* 80395F34 00392E94 4E 80 00 20 */ blr +/* 80395F34 00392E94 4E 80 00 20 */ blr lbl_80395F38: /* 80395F38 00392E98 54 A0 00 7E */ clrlwi r0, r5, 1 -/* 80395F3C 00392E9C 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80395F3C 00392E9C 3C 60 80 54 */ lis r3, seqInstance@ha /* 80395F40 00392EA0 1C A0 18 68 */ mulli r5, r0, 0x1868 -/* 80395F44 00392EA4 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80395F44 00392EA4 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80395F48 00392EA8 7C 60 2A 14 */ add r3, r0, r5 /* 80395F4C 00392EAC 88 03 0E DA */ lbz r0, 0xeda(r3) /* 80395F50 00392EB0 60 00 00 20 */ ori r0, r0, 0x20 /* 80395F54 00392EB4 98 03 0E DA */ stb r0, 0xeda(r3) /* 80395F58 00392EB8 B0 83 0E D8 */ sth r4, 0xed8(r3) -/* 80395F5C 00392EBC 4E 80 00 20 */ blr +/* 80395F5C 00392EBC 4E 80 00 20 */ blr .global seqContinue seqContinue: @@ -1395,12 +1427,12 @@ lbl_80395FC0: /* 80395FC0 00392F20 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 80395FC4 00392F24 40 82 00 80 */ bne lbl_80396044 /* 80395FC8 00392F28 1C 84 18 68 */ mulli r4, r4, 0x1868 -/* 80395FCC 00392F2C 3C 60 80 54 */ lis r3, lbl_805439D0@ha -/* 80395FD0 00392F30 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80395FCC 00392F2C 3C 60 80 54 */ lis r3, seqInstance@ha +/* 80395FD0 00392F30 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80395FD4 00392F34 7C 80 22 14 */ add r4, r0, r4 /* 80395FD8 00392F38 88 04 00 08 */ lbz r0, 8(r4) /* 80395FDC 00392F3C 28 00 00 02 */ cmplwi r0, 2 -/* 80395FE0 00392F40 4C 82 00 20 */ bnelr +/* 80395FE0 00392F40 4C 82 00 20 */ bnelr /* 80395FE4 00392F44 80 64 00 04 */ lwz r3, 4(r4) /* 80395FE8 00392F48 28 03 00 00 */ cmplwi r3, 0 /* 80395FEC 00392F4C 41 82 00 10 */ beq lbl_80395FFC @@ -1428,17 +1460,17 @@ lbl_8039602C: /* 80396034 00392F94 90 64 00 04 */ stw r3, 4(r4) /* 80396038 00392F98 90 8D AE 44 */ stw r4, seqActiveRoot@sda21(r13) /* 8039603C 00392F9C 98 04 00 08 */ stb r0, 8(r4) -/* 80396040 00392FA0 4E 80 00 20 */ blr +/* 80396040 00392FA0 4E 80 00 20 */ blr lbl_80396044: /* 80396044 00392FA4 54 80 00 7E */ clrlwi r0, r4, 1 -/* 80396048 00392FA8 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396048 00392FA8 3C 60 80 54 */ lis r3, seqInstance@ha /* 8039604C 00392FAC 1C 00 18 68 */ mulli r0, r0, 0x1868 -/* 80396050 00392FB0 38 63 39 D0 */ addi r3, r3, lbl_805439D0@l +/* 80396050 00392FB0 38 63 39 D0 */ addi r3, r3, seqInstance@l /* 80396054 00392FB4 7C 63 02 14 */ add r3, r3, r0 /* 80396058 00392FB8 88 03 0E DA */ lbz r0, 0xeda(r3) /* 8039605C 00392FBC 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 80396060 00392FC0 98 03 0E DA */ stb r0, 0xeda(r3) -/* 80396064 00392FC4 4E 80 00 20 */ blr +/* 80396064 00392FC4 4E 80 00 20 */ blr .global seqMute seqMute: @@ -1475,28 +1507,28 @@ lbl_803960BC: lbl_803960C8: /* 803960C8 00393028 3C 06 00 01 */ addis r0, r6, 1 /* 803960CC 0039302C 28 00 FF FF */ cmplwi r0, 0xffff -/* 803960D0 00393030 4D 82 00 20 */ beqlr +/* 803960D0 00393030 4D 82 00 20 */ beqlr /* 803960D4 00393034 54 C0 00 01 */ rlwinm. r0, r6, 0, 0, 0 /* 803960D8 00393038 40 82 00 20 */ bne lbl_803960F8 /* 803960DC 0039303C 1C C6 18 68 */ mulli r6, r6, 0x1868 -/* 803960E0 00393040 3C 60 80 54 */ lis r3, lbl_805439D0@ha -/* 803960E4 00393044 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803960E0 00393040 3C 60 80 54 */ lis r3, seqInstance@ha +/* 803960E4 00393044 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803960E8 00393048 7C 60 32 14 */ add r3, r0, r6 /* 803960EC 0039304C 90 83 01 1C */ stw r4, 0x11c(r3) /* 803960F0 00393050 90 A3 01 20 */ stw r5, 0x120(r3) -/* 803960F4 00393054 4E 80 00 20 */ blr +/* 803960F4 00393054 4E 80 00 20 */ blr lbl_803960F8: /* 803960F8 00393058 54 C0 00 7E */ clrlwi r0, r6, 1 -/* 803960FC 0039305C 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803960FC 0039305C 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396100 00393060 1C C0 18 68 */ mulli r6, r0, 0x1868 -/* 80396104 00393064 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80396104 00393064 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80396108 00393068 7C 60 32 14 */ add r3, r0, r6 /* 8039610C 0039306C 88 03 0E DA */ lbz r0, 0xeda(r3) /* 80396110 00393070 60 00 00 10 */ ori r0, r0, 0x10 /* 80396114 00393074 98 03 0E DA */ stb r0, 0xeda(r3) /* 80396118 00393078 90 83 0E D0 */ stw r4, 0xed0(r3) /* 8039611C 0039307C 90 A3 0E D4 */ stw r5, 0xed4(r3) -/* 80396120 00393080 4E 80 00 20 */ blr +/* 80396120 00393080 4E 80 00 20 */ blr .global seqVolume seqVolume: @@ -1545,16 +1577,16 @@ lbl_803961A4: /* 803961B0 00393110 54 60 00 01 */ rlwinm. r0, r3, 0, 0, 0 /* 803961B4 00393114 40 82 00 70 */ bne lbl_80396224 /* 803961B8 00393118 1F A3 18 68 */ mulli r29, r3, 0x1868 -/* 803961BC 0039311C 3C 80 80 54 */ lis r4, lbl_805439D0@ha +/* 803961BC 0039311C 3C 80 80 54 */ lis r4, seqInstance@ha /* 803961C0 00393120 7F C3 F3 78 */ mr r3, r30 -/* 803961C4 00393124 38 04 39 D0 */ addi r0, r4, lbl_805439D0@l +/* 803961C4 00393124 38 04 39 D0 */ addi r0, r4, seqInstance@l /* 803961C8 00393128 7C A0 EA 14 */ add r5, r0, r29 /* 803961CC 0039312C 7F E4 FB 78 */ mr r4, r31 /* 803961D0 00393130 88 A5 0E B0 */ lbz r5, 0xeb0(r5) /* 803961D4 00393134 48 00 52 15 */ bl synthVolume -/* 803961D8 00393138 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803961D8 00393138 3C 60 80 54 */ lis r3, seqInstance@ha /* 803961DC 0039313C 3B 60 00 00 */ li r27, 0 -/* 803961E0 00393140 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803961E0 00393140 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803961E4 00393144 7F 80 EA 14 */ add r28, r0, r29 /* 803961E8 00393148 3B BC 0E B0 */ addi r29, r28, 0xeb0 lbl_803961EC: @@ -1588,26 +1620,26 @@ lbl_80396244: /* 8039624C 003931AC 48 00 00 68 */ b lbl_803962B4 lbl_80396250: /* 80396250 003931B0 54 60 00 7E */ clrlwi r0, r3, 1 -/* 80396254 003931B4 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396254 003931B4 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396258 003931B8 1C 00 18 68 */ mulli r0, r0, 0x1868 -/* 8039625C 003931BC 38 63 39 D0 */ addi r3, r3, lbl_805439D0@l +/* 8039625C 003931BC 38 63 39 D0 */ addi r3, r3, seqInstance@l /* 80396260 003931C0 7C 63 02 14 */ add r3, r3, r0 /* 80396264 003931C4 9B C3 0E CC */ stb r30, 0xecc(r3) /* 80396268 003931C8 48 00 00 70 */ b lbl_803962D8 lbl_8039626C: /* 8039626C 003931CC 54 60 00 7E */ clrlwi r0, r3, 1 -/* 80396270 003931D0 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396270 003931D0 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396274 003931D4 1C 00 18 68 */ mulli r0, r0, 0x1868 /* 80396278 003931D8 38 80 00 00 */ li r4, 0 -/* 8039627C 003931DC 38 63 39 D0 */ addi r3, r3, lbl_805439D0@l +/* 8039627C 003931DC 38 63 39 D0 */ addi r3, r3, seqInstance@l /* 80396280 003931E0 7C 63 02 14 */ add r3, r3, r0 /* 80396284 003931E4 90 83 0E DC */ stw r4, 0xedc(r3) /* 80396288 003931E8 48 00 00 50 */ b lbl_803962D8 lbl_8039628C: /* 8039628C 003931EC 54 60 00 7E */ clrlwi r0, r3, 1 -/* 80396290 003931F0 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396290 003931F0 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396294 003931F4 1C 80 18 68 */ mulli r4, r0, 0x1868 -/* 80396298 003931F8 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80396298 003931F8 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 8039629C 003931FC 7C 60 22 14 */ add r3, r0, r4 /* 803962A0 00393200 88 03 0E DA */ lbz r0, 0xeda(r3) /* 803962A4 00393204 60 00 00 08 */ ori r0, r0, 8 @@ -1616,9 +1648,9 @@ lbl_8039628C: /* 803962B0 00393210 48 00 00 28 */ b lbl_803962D8 lbl_803962B4: /* 803962B4 00393214 54 60 00 7E */ clrlwi r0, r3, 1 -/* 803962B8 00393218 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803962B8 00393218 3C 60 80 54 */ lis r3, seqInstance@ha /* 803962BC 0039321C 1C 80 18 68 */ mulli r4, r0, 0x1868 -/* 803962C0 00393220 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803962C0 00393220 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803962C4 00393224 7C 60 22 14 */ add r3, r0, r4 /* 803962C8 00393228 88 03 0E DA */ lbz r0, 0xeda(r3) /* 803962CC 0039322C 60 00 00 80 */ ori r0, r0, 0x80 @@ -1630,7 +1662,7 @@ lbl_803962D8: /* 803962E0 00393240 80 01 00 24 */ lwz r0, 0x24(r1) /* 803962E4 00393244 7C 08 03 A6 */ mtlr r0 /* 803962E8 00393248 38 21 00 20 */ addi r1, r1, 0x20 -/* 803962EC 0039324C 4E 80 00 20 */ blr +/* 803962EC 0039324C 4E 80 00 20 */ blr .global seqCrossFade seqCrossFade: @@ -1679,10 +1711,10 @@ lbl_80396378: /* 8039637C 003932DC 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d /* 80396380 003932E0 41 82 00 8C */ beq lbl_8039640C /* 80396384 003932E4 1C C3 18 68 */ mulli r6, r3, 0x1868 -/* 80396388 003932E8 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396388 003932E8 3C 60 80 54 */ lis r3, seqInstance@ha /* 8039638C 003932EC 80 9F 00 00 */ lwz r4, 0(r31) /* 80396390 003932F0 38 00 00 01 */ li r0, 1 -/* 80396394 003932F4 38 A3 39 D0 */ addi r5, r3, lbl_805439D0@l +/* 80396394 003932F4 38 A3 39 D0 */ addi r5, r3, seqInstance@l /* 80396398 003932F8 80 7F 00 04 */ lwz r3, 4(r31) /* 8039639C 003932FC 7C A5 32 14 */ add r5, r5, r6 /* 803963A0 00393300 90 85 0E B4 */ stw r4, 0xeb4(r5) @@ -1760,17 +1792,17 @@ lbl_80396490: /* 8039649C 003933FC 54 60 00 01 */ rlwinm. r0, r3, 0, 0, 0 /* 803964A0 00393400 40 82 00 74 */ bne lbl_80396514 /* 803964A4 00393404 1F 43 18 68 */ mulli r26, r3, 0x1868 -/* 803964A8 00393408 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803964A8 00393408 3C 60 80 54 */ lis r3, seqInstance@ha /* 803964AC 0039340C 7F C4 F3 78 */ mr r4, r30 -/* 803964B0 00393410 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803964B0 00393410 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803964B4 00393414 7C 60 D2 14 */ add r3, r0, r26 /* 803964B8 00393418 38 C0 00 02 */ li r6, 2 /* 803964BC 0039341C 88 A3 0E B0 */ lbz r5, 0xeb0(r3) /* 803964C0 00393420 38 60 00 00 */ li r3, 0 /* 803964C4 00393424 48 00 4F 25 */ bl synthVolume -/* 803964C8 00393428 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803964C8 00393428 3C 60 80 54 */ lis r3, seqInstance@ha /* 803964CC 0039342C 3B 60 00 00 */ li r27, 0 -/* 803964D0 00393430 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803964D0 00393430 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803964D4 00393434 7F 20 D2 14 */ add r25, r0, r26 /* 803964D8 00393438 3B 59 0E B0 */ addi r26, r25, 0xeb0 lbl_803964DC: @@ -1791,9 +1823,9 @@ lbl_80396500: /* 80396510 00393470 48 00 02 98 */ b lbl_803967A8 lbl_80396514: /* 80396514 00393474 54 60 00 7E */ clrlwi r0, r3, 1 -/* 80396518 00393478 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396518 00393478 3C 60 80 54 */ lis r3, seqInstance@ha /* 8039651C 0039347C 1C 80 18 68 */ mulli r4, r0, 0x1868 -/* 80396520 00393480 38 63 39 D0 */ addi r3, r3, lbl_805439D0@l +/* 80396520 00393480 38 63 39 D0 */ addi r3, r3, seqInstance@l /* 80396524 00393484 38 00 00 00 */ li r0, 0 /* 80396528 00393488 7C 83 22 14 */ add r4, r3, r4 /* 8039652C 0039348C 88 64 0E DA */ lbz r3, 0xeda(r4) @@ -1840,17 +1872,17 @@ lbl_803965A4: /* 803965B0 00393510 54 60 00 01 */ rlwinm. r0, r3, 0, 0, 0 /* 803965B4 00393514 40 82 00 74 */ bne lbl_80396628 /* 803965B8 00393518 1F 23 18 68 */ mulli r25, r3, 0x1868 -/* 803965BC 0039351C 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803965BC 0039351C 3C 60 80 54 */ lis r3, seqInstance@ha /* 803965C0 00393520 7F C4 F3 78 */ mr r4, r30 -/* 803965C4 00393524 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803965C4 00393524 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803965C8 00393528 7C 60 CA 14 */ add r3, r0, r25 /* 803965CC 0039352C 38 C0 00 03 */ li r6, 3 /* 803965D0 00393530 88 A3 0E B0 */ lbz r5, 0xeb0(r3) /* 803965D4 00393534 38 60 00 00 */ li r3, 0 /* 803965D8 00393538 48 00 4E 11 */ bl synthVolume -/* 803965DC 0039353C 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803965DC 0039353C 3C 60 80 54 */ lis r3, seqInstance@ha /* 803965E0 00393540 3B 60 00 00 */ li r27, 0 -/* 803965E4 00393544 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803965E4 00393544 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803965E8 00393548 7F 20 CA 14 */ add r25, r0, r25 /* 803965EC 0039354C 3B 59 0E B0 */ addi r26, r25, 0xeb0 lbl_803965F0: @@ -1871,9 +1903,9 @@ lbl_80396614: /* 80396624 00393584 48 00 01 84 */ b lbl_803967A8 lbl_80396628: /* 80396628 00393588 54 60 00 7E */ clrlwi r0, r3, 1 -/* 8039662C 0039358C 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 8039662C 0039358C 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396630 00393590 1C 80 18 68 */ mulli r4, r0, 0x1868 -/* 80396634 00393594 38 63 39 D0 */ addi r3, r3, lbl_805439D0@l +/* 80396634 00393594 38 63 39 D0 */ addi r3, r3, seqInstance@l /* 80396638 00393598 38 00 00 00 */ li r0, 0 /* 8039663C 0039359C 7C 83 22 14 */ add r4, r3, r4 /* 80396640 003935A0 88 64 0E DA */ lbz r3, 0xeda(r4) @@ -1918,17 +1950,17 @@ lbl_803966B0: /* 803966BC 0039361C 54 60 00 01 */ rlwinm. r0, r3, 0, 0, 0 /* 803966C0 00393620 40 82 00 74 */ bne lbl_80396734 /* 803966C4 00393624 1F 23 18 68 */ mulli r25, r3, 0x1868 -/* 803966C8 00393628 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803966C8 00393628 3C 60 80 54 */ lis r3, seqInstance@ha /* 803966CC 0039362C 7F C4 F3 78 */ mr r4, r30 -/* 803966D0 00393630 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803966D0 00393630 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803966D4 00393634 7C 60 CA 14 */ add r3, r0, r25 /* 803966D8 00393638 38 C0 00 01 */ li r6, 1 /* 803966DC 0039363C 88 A3 0E B0 */ lbz r5, 0xeb0(r3) /* 803966E0 00393640 38 60 00 00 */ li r3, 0 /* 803966E4 00393644 48 00 4D 05 */ bl synthVolume -/* 803966E8 00393648 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803966E8 00393648 3C 60 80 54 */ lis r3, seqInstance@ha /* 803966EC 0039364C 3B 60 00 00 */ li r27, 0 -/* 803966F0 00393650 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803966F0 00393650 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803966F4 00393654 7F 20 CA 14 */ add r25, r0, r25 /* 803966F8 00393658 3B 59 0E B0 */ addi r26, r25, 0xeb0 lbl_803966FC: @@ -1949,10 +1981,10 @@ lbl_80396720: /* 80396730 00393690 48 00 00 78 */ b lbl_803967A8 lbl_80396734: /* 80396734 00393694 54 60 00 7E */ clrlwi r0, r3, 1 -/* 80396738 00393698 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396738 00393698 3C 60 80 54 */ lis r3, seqInstance@ha /* 8039673C 0039369C 1C 00 18 68 */ mulli r0, r0, 0x1868 /* 80396740 003936A0 38 80 00 00 */ li r4, 0 -/* 80396744 003936A4 38 63 39 D0 */ addi r3, r3, lbl_805439D0@l +/* 80396744 003936A4 38 63 39 D0 */ addi r3, r3, seqInstance@l /* 80396748 003936A8 7C 63 02 14 */ add r3, r3, r0 /* 8039674C 003936AC 90 83 0E DC */ stw r4, 0xedc(r3) /* 80396750 003936B0 48 00 00 58 */ b lbl_803967A8 @@ -2057,8 +2089,8 @@ lbl_80396894: /* 80396894 003937F4 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 80396898 003937F8 40 82 00 80 */ bne lbl_80396918 /* 8039689C 003937FC 1C 84 18 68 */ mulli r4, r4, 0x1868 -/* 803968A0 00393800 3C 60 80 54 */ lis r3, lbl_805439D0@ha -/* 803968A4 00393804 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803968A0 00393800 3C 60 80 54 */ lis r3, seqInstance@ha +/* 803968A4 00393804 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803968A8 00393808 7C 80 22 14 */ add r4, r0, r4 /* 803968AC 0039380C 88 04 00 08 */ lbz r0, 8(r4) /* 803968B0 00393810 28 00 00 02 */ cmplwi r0, 2 @@ -2093,9 +2125,9 @@ lbl_80396900: /* 80396914 00393874 48 00 00 24 */ b lbl_80396938 lbl_80396918: /* 80396918 00393878 54 80 00 7E */ clrlwi r0, r4, 1 -/* 8039691C 0039387C 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 8039691C 0039387C 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396920 00393880 1C 00 18 68 */ mulli r0, r0, 0x1868 -/* 80396924 00393884 38 63 39 D0 */ addi r3, r3, lbl_805439D0@l +/* 80396924 00393884 38 63 39 D0 */ addi r3, r3, seqInstance@l /* 80396928 00393888 7C 63 02 14 */ add r3, r3, r0 /* 8039692C 0039388C 88 03 0E DA */ lbz r0, 0xeda(r3) /* 80396930 00393890 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b @@ -2141,17 +2173,17 @@ lbl_803969A4: /* 803969B0 00393910 54 60 00 01 */ rlwinm. r0, r3, 0, 0, 0 /* 803969B4 00393914 40 82 00 74 */ bne lbl_80396A28 /* 803969B8 00393918 1F 23 18 68 */ mulli r25, r3, 0x1868 -/* 803969BC 0039391C 3C 80 80 54 */ lis r4, lbl_805439D0@ha +/* 803969BC 0039391C 3C 80 80 54 */ lis r4, seqInstance@ha /* 803969C0 00393920 7F 83 E3 78 */ mr r3, r28 -/* 803969C4 00393924 38 04 39 D0 */ addi r0, r4, lbl_805439D0@l +/* 803969C4 00393924 38 04 39 D0 */ addi r0, r4, seqInstance@l /* 803969C8 00393928 7C A0 CA 14 */ add r5, r0, r25 /* 803969CC 0039392C 7F C4 F3 78 */ mr r4, r30 /* 803969D0 00393930 88 A5 0E B0 */ lbz r5, 0xeb0(r5) /* 803969D4 00393934 38 C0 00 00 */ li r6, 0 /* 803969D8 00393938 48 00 4A 11 */ bl synthVolume -/* 803969DC 0039393C 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 803969DC 0039393C 3C 60 80 54 */ lis r3, seqInstance@ha /* 803969E0 00393940 3B 60 00 00 */ li r27, 0 -/* 803969E4 00393944 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 803969E4 00393944 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 803969E8 00393948 7F 20 CA 14 */ add r25, r0, r25 /* 803969EC 0039394C 3B 59 0E B0 */ addi r26, r25, 0xeb0 lbl_803969F0: @@ -2172,9 +2204,9 @@ lbl_80396A14: /* 80396A24 00393984 48 00 00 1C */ b lbl_80396A40 lbl_80396A28: /* 80396A28 00393988 54 60 00 7E */ clrlwi r0, r3, 1 -/* 80396A2C 0039398C 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396A2C 0039398C 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396A30 00393990 1C 00 18 68 */ mulli r0, r0, 0x1868 -/* 80396A34 00393994 38 63 39 D0 */ addi r3, r3, lbl_805439D0@l +/* 80396A34 00393994 38 63 39 D0 */ addi r3, r3, seqInstance@l /* 80396A38 00393998 7C 63 02 14 */ add r3, r3, r0 /* 80396A3C 0039399C 9B 83 0E CC */ stb r28, 0xecc(r3) lbl_80396A40: @@ -2221,17 +2253,17 @@ lbl_80396AB8: /* 80396AC4 00393A24 54 C0 00 01 */ rlwinm. r0, r6, 0, 0, 0 /* 80396AC8 00393A28 40 82 00 20 */ bne lbl_80396AE8 /* 80396ACC 00393A2C 1C C6 18 68 */ mulli r6, r6, 0x1868 -/* 80396AD0 00393A30 3C 60 80 54 */ lis r3, lbl_805439D0@ha -/* 80396AD4 00393A34 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80396AD0 00393A30 3C 60 80 54 */ lis r3, seqInstance@ha +/* 80396AD4 00393A34 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80396AD8 00393A38 7C 60 32 14 */ add r3, r0, r6 /* 80396ADC 00393A3C 90 83 01 1C */ stw r4, 0x11c(r3) /* 80396AE0 00393A40 90 A3 01 20 */ stw r5, 0x120(r3) /* 80396AE4 00393A44 48 00 00 2C */ b lbl_80396B10 lbl_80396AE8: /* 80396AE8 00393A48 54 C0 00 7E */ clrlwi r0, r6, 1 -/* 80396AEC 00393A4C 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396AEC 00393A4C 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396AF0 00393A50 1C C0 18 68 */ mulli r6, r0, 0x1868 -/* 80396AF4 00393A54 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80396AF4 00393A54 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80396AF8 00393A58 7C 60 32 14 */ add r3, r0, r6 /* 80396AFC 00393A5C 88 03 0E DA */ lbz r0, 0xeda(r3) /* 80396B00 00393A60 60 00 00 10 */ ori r0, r0, 0x10 @@ -2278,8 +2310,8 @@ lbl_80396B84: /* 80396B84 00393AE4 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 80396B88 00393AE8 40 82 00 58 */ bne lbl_80396BE0 /* 80396B8C 00393AEC 1C 84 18 68 */ mulli r4, r4, 0x1868 -/* 80396B90 00393AF0 3C 60 80 54 */ lis r3, lbl_805439D0@ha -/* 80396B94 00393AF4 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80396B90 00393AF0 3C 60 80 54 */ lis r3, seqInstance@ha +/* 80396B94 00393AF4 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80396B98 00393AF8 7C 60 22 14 */ add r3, r0, r4 /* 80396B9C 00393AFC B0 A3 15 1A */ sth r5, 0x151a(r3) /* 80396BA0 00393B00 B0 A3 15 52 */ sth r5, 0x1552(r3) @@ -2300,9 +2332,9 @@ lbl_80396B84: /* 80396BDC 00393B3C 48 00 00 78 */ b lbl_80396C54 lbl_80396BE0: /* 80396BE0 00393B40 54 80 00 7E */ clrlwi r0, r4, 1 -/* 80396BE4 00393B44 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396BE4 00393B44 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396BE8 00393B48 1C 80 18 68 */ mulli r4, r0, 0x1868 -/* 80396BEC 00393B4C 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80396BEC 00393B4C 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80396BF0 00393B50 7C 60 22 14 */ add r3, r0, r4 /* 80396BF4 00393B54 88 03 0E DA */ lbz r0, 0xeda(r3) /* 80396BF8 00393B58 60 00 00 20 */ ori r0, r0, 0x20 @@ -2426,18 +2458,18 @@ lbl_80396D88: /* 80396D94 00393CF4 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 80396D98 00393CF8 40 82 00 24 */ bne lbl_80396DBC /* 80396D9C 00393CFC 1C A4 18 68 */ mulli r5, r4, 0x1868 -/* 80396DA0 00393D00 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396DA0 00393D00 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396DA4 00393D04 38 80 00 00 */ li r4, 0 -/* 80396DA8 00393D08 38 03 39 D0 */ addi r0, r3, lbl_805439D0@l +/* 80396DA8 00393D08 38 03 39 D0 */ addi r0, r3, seqInstance@l /* 80396DAC 00393D0C 7C 60 2A 14 */ add r3, r0, r5 /* 80396DB0 00393D10 90 83 01 1C */ stw r4, 0x11c(r3) /* 80396DB4 00393D14 90 83 01 20 */ stw r4, 0x120(r3) /* 80396DB8 00393D18 48 00 00 78 */ b lbl_80396E30 lbl_80396DBC: /* 80396DBC 00393D1C 54 80 00 7E */ clrlwi r0, r4, 1 -/* 80396DC0 00393D20 3C 60 80 54 */ lis r3, lbl_805439D0@ha +/* 80396DC0 00393D20 3C 60 80 54 */ lis r3, seqInstance@ha /* 80396DC4 00393D24 1C 80 18 68 */ mulli r4, r0, 0x1868 -/* 80396DC8 00393D28 38 63 39 D0 */ addi r3, r3, lbl_805439D0@l +/* 80396DC8 00393D28 38 63 39 D0 */ addi r3, r3, seqInstance@l /* 80396DCC 00393D2C 38 00 00 00 */ li r0, 0 /* 80396DD0 00393D30 7C 83 22 14 */ add r4, r3, r4 /* 80396DD4 00393D34 88 64 0E DA */ lbz r3, 0xeda(r4) @@ -2470,7 +2502,7 @@ lbl_80396E30: /* 80396E38 00393D98 80 01 00 54 */ lwz r0, 0x54(r1) /* 80396E3C 00393D9C 7C 08 03 A6 */ mtlr r0 /* 80396E40 00393DA0 38 21 00 50 */ addi r1, r1, 0x50 -/* 80396E44 00393DA4 4E 80 00 20 */ blr +/* 80396E44 00393DA4 4E 80 00 20 */ blr .global GenerateNextTrackEvent GenerateNextTrackEvent: @@ -2501,7 +2533,7 @@ lbl_80396E94: /* 80396EA4 00393E04 38 00 00 00 */ li r0, 0 /* 80396EA8 00393E08 38 60 00 00 */ li r3, 0 /* 80396EAC 00393E0C 90 04 00 04 */ stw r0, 4(r4) -/* 80396EB0 00393E10 4E 80 00 20 */ blr +/* 80396EB0 00393E10 4E 80 00 20 */ blr lbl_80396EB4: /* 80396EB4 00393E14 28 00 FF FE */ cmplwi r0, 0xfffe /* 80396EB8 00393E18 40 82 00 8C */ bne lbl_80396F44 @@ -2515,7 +2547,7 @@ lbl_80396EB4: /* 80396ED8 00393E38 38 00 00 00 */ li r0, 0 /* 80396EDC 00393E3C 38 60 00 00 */ li r3, 0 /* 80396EE0 00393E40 90 04 00 04 */ stw r0, 4(r4) -/* 80396EE4 00393E44 4E 80 00 20 */ blr +/* 80396EE4 00393E44 4E 80 00 20 */ blr lbl_80396EE8: /* 80396EE8 00393E48 7C 07 30 AE */ lbzx r0, r7, r6 /* 80396EEC 00393E4C 1C 00 00 38 */ mulli r0, r0, 0x38 @@ -2526,7 +2558,7 @@ lbl_80396EE8: /* 80396F00 00393E60 38 00 00 00 */ li r0, 0 /* 80396F04 00393E64 38 60 00 00 */ li r3, 0 /* 80396F08 00393E68 90 04 00 04 */ stw r0, 4(r4) -/* 80396F0C 00393E6C 4E 80 00 20 */ blr +/* 80396F0C 00393E6C 4E 80 00 20 */ blr lbl_80396F10: /* 80396F10 00393E70 38 00 00 03 */ li r0, 3 /* 80396F14 00393E74 7C A3 2B 78 */ mr r3, r5 @@ -2540,7 +2572,7 @@ lbl_80396F10: /* 80396F34 00393E94 1C 00 00 0C */ mulli r0, r0, 0xc /* 80396F38 00393E98 7C 06 02 14 */ add r0, r6, r0 /* 80396F3C 00393E9C 90 04 00 04 */ stw r0, 4(r4) -/* 80396F40 00393EA0 4E 80 00 20 */ blr +/* 80396F40 00393EA0 4E 80 00 20 */ blr lbl_80396F44: /* 80396F44 00393EA4 38 00 00 04 */ li r0, 4 /* 80396F48 00393EA8 7C A3 2B 78 */ mr r3, r5 @@ -2553,7 +2585,7 @@ lbl_80396F44: /* 80396F64 00393EC4 80 A4 00 04 */ lwz r5, 4(r4) /* 80396F68 00393EC8 38 05 00 0C */ addi r0, r5, 0xc /* 80396F6C 00393ECC 90 04 00 04 */ stw r0, 4(r4) -/* 80396F70 00393ED0 4E 80 00 20 */ blr +/* 80396F70 00393ED0 4E 80 00 20 */ blr lbl_80396F74: /* 80396F74 00393ED4 81 48 00 18 */ lwz r10, 0x18(r8) /* 80396F78 00393ED8 81 68 00 24 */ lwz r11, 0x24(r8) @@ -2619,10 +2651,10 @@ lbl_8039703C: /* 8039704C 00393FAC 98 05 00 14 */ stb r0, 0x14(r5) lbl_80397050: /* 80397050 00393FB0 7C A3 2B 78 */ mr r3, r5 -/* 80397054 00393FB4 4E 80 00 20 */ blr +/* 80397054 00393FB4 4E 80 00 20 */ blr lbl_80397058: /* 80397058 00393FB8 38 60 00 00 */ li r3, 0 -/* 8039705C 00393FBC 4E 80 00 20 */ blr +/* 8039705C 00393FBC 4E 80 00 20 */ blr .global HandleEvent HandleEvent: @@ -2802,11 +2834,11 @@ lbl_803972A0: /* 803972C8 00394228 28 09 00 FF */ cmplwi r9, 0xff /* 803972CC 0039422C 41 82 00 CC */ beq lbl_80397398 /* 803972D0 00394230 80 0D AE 30 */ lwz r0, curSeqId@sda21(r13) -/* 803972D4 00394234 3C A0 80 55 */ lis r5, lbl_8054FD10@ha +/* 803972D4 00394234 3C A0 80 55 */ lis r5, seqMIDIPriority@ha /* 803972D8 00394238 89 04 00 28 */ lbz r8, 0x28(r4) /* 803972DC 0039423C 3C E0 00 01 */ lis r7, 0x0000FFFF@ha /* 803972E0 00394240 54 06 28 34 */ slwi r6, r0, 5 -/* 803972E4 00394244 38 05 FD 10 */ addi r0, r5, lbl_8054FD10@l +/* 803972E4 00394244 38 05 FD 10 */ addi r0, r5, seqMIDIPriority@l /* 803972E8 00394248 28 08 00 09 */ cmplwi r8, 9 /* 803972EC 0039424C 38 E7 FF FF */ addi r7, r7, 0x0000FFFF@l /* 803972F0 00394250 7C A0 32 14 */ add r5, r0, r6 @@ -2878,11 +2910,11 @@ lbl_803973BC: /* 803973EC 0039434C 48 00 00 EC */ b lbl_803974D8 lbl_803973F0: /* 803973F0 00394350 80 8D AE 30 */ lwz r4, curSeqId@sda21(r13) -/* 803973F4 00394354 3C 60 80 55 */ lis r3, lbl_8054FD10@ha +/* 803973F4 00394354 3C 60 80 55 */ lis r3, seqMIDIPriority@ha /* 803973F8 00394358 3C C0 00 01 */ lis r6, 0x0000FFFF@ha /* 803973FC 0039435C 28 09 00 09 */ cmplwi r9, 9 /* 80397400 00394360 54 85 28 34 */ slwi r5, r4, 5 -/* 80397404 00394364 38 83 FD 10 */ addi r4, r3, lbl_8054FD10@l +/* 80397404 00394364 38 83 FD 10 */ addi r4, r3, seqMIDIPriority@l /* 80397408 00394368 38 C6 FF FF */ addi r6, r6, 0x0000FFFF@l /* 8039740C 0039436C 55 23 0D FC */ rlwinm r3, r9, 1, 0x17, 0x1e /* 80397410 00394370 7C 84 2A 14 */ add r4, r4, r5 @@ -2950,7 +2982,8 @@ lbl_803974D8: /* 803974FC 0039445C 38 84 2F 88 */ addi r4, r4, lbl_803F2F88@l /* 80397500 00394460 7C 84 28 2E */ lwzx r4, r4, r5 /* 80397504 00394464 7C 89 03 A6 */ mtctr r4 -/* 80397508 00394468 4E 80 04 20 */ bctr +/* 80397508 00394468 4E 80 04 20 */ bctr +lbl_8039750C: /* 8039750C 0039446C 80 6D AE 38 */ lwz r3, cseq@sda21(r13) /* 80397510 00394470 88 03 0E E0 */ lbz r0, 0xee0(r3) /* 80397514 00394474 28 00 00 00 */ cmplwi r0, 0 @@ -2963,31 +2996,35 @@ lbl_803974D8: /* 80397530 00394490 38 00 00 00 */ li r0, 0 /* 80397534 00394494 98 03 0E E0 */ stb r0, 0xee0(r3) /* 80397538 00394498 48 00 05 9C */ b lbl_80397AD4 +lbl_8039753C: /* 8039753C 0039449C 80 8D AE 30 */ lwz r4, curSeqId@sda21(r13) -/* 80397540 003944A0 3C 60 80 55 */ lis r3, lbl_8054FD10@ha -/* 80397544 003944A4 38 63 FD 10 */ addi r3, r3, lbl_8054FD10@l +/* 80397540 003944A0 3C 60 80 55 */ lis r3, seqMIDIPriority@ha +/* 80397544 003944A4 38 63 FD 10 */ addi r3, r3, seqMIDIPriority@l /* 80397548 003944A8 54 05 06 7E */ clrlwi r5, r0, 0x19 /* 8039754C 003944AC 54 84 28 34 */ slwi r4, r4, 5 /* 80397550 003944B0 55 20 0D FC */ rlwinm r0, r9, 1, 0x17, 0x1e /* 80397554 003944B4 7C 63 22 14 */ add r3, r3, r4 /* 80397558 003944B8 7C A3 03 2E */ sthx r5, r3, r0 /* 8039755C 003944BC 48 00 05 78 */ b lbl_80397AD4 +lbl_80397560: /* 80397560 003944C0 80 8D AE 30 */ lwz r4, curSeqId@sda21(r13) /* 80397564 003944C4 54 05 06 7E */ clrlwi r5, r0, 0x19 -/* 80397568 003944C8 3C 60 80 55 */ lis r3, lbl_8054FD10@ha +/* 80397568 003944C8 3C 60 80 55 */ lis r3, seqMIDIPriority@ha /* 8039756C 003944CC 55 20 0D FC */ rlwinm r0, r9, 1, 0x17, 0x1e /* 80397570 003944D0 54 84 28 34 */ slwi r4, r4, 5 /* 80397574 003944D4 38 A5 00 80 */ addi r5, r5, 0x80 -/* 80397578 003944D8 38 63 FD 10 */ addi r3, r3, lbl_8054FD10@l +/* 80397578 003944D8 38 63 FD 10 */ addi r3, r3, seqMIDIPriority@l /* 8039757C 003944DC 7C 63 22 14 */ add r3, r3, r4 /* 80397580 003944E0 7C A3 03 2E */ sthx r5, r3, r0 /* 80397584 003944E4 48 00 05 50 */ b lbl_80397AD4 +lbl_80397588: /* 80397588 003944E8 80 0D AE 30 */ lwz r0, curSeqId@sda21(r13) /* 8039758C 003944EC 7D 23 4B 78 */ mr r3, r9 /* 80397590 003944F0 38 A0 00 00 */ li r5, 0 /* 80397594 003944F4 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 80397598 003944F8 48 01 A2 85 */ bl inpResetMidiCtrl /* 8039759C 003944FC 48 00 05 38 */ b lbl_80397AD4 +lbl_803975A0: /* 803975A0 00394500 3B A0 00 00 */ li r29, 0 /* 803975A4 00394504 7F BE EB 78 */ mr r30, r29 lbl_803975A8: @@ -3149,11 +3186,11 @@ lbl_803977C8: /* 803977C8 00394728 28 1E 00 00 */ cmplwi r30, 0 /* 803977CC 0039472C 41 82 03 08 */ beq lbl_80397AD4 /* 803977D0 00394730 83 8D AE 38 */ lwz r28, cseq@sda21(r13) -/* 803977D4 00394734 3C E0 80 55 */ lis r7, lbl_80550AA4@ha +/* 803977D4 00394734 3C E0 80 55 */ lis r7, synthITDDefault@ha /* 803977D8 00394738 8B 5F 00 15 */ lbz r26, 0x15(r31) /* 803977DC 0039473C 39 00 00 00 */ li r8, 0 /* 803977E0 00394740 8B 7C 0E E1 */ lbz r27, 0xee1(r28) -/* 803977E4 00394744 39 67 0A A4 */ addi r11, r7, lbl_80550AA4@l +/* 803977E4 00394744 39 67 0A A4 */ addi r11, r7, synthITDDefault@l /* 803977E8 00394748 89 4D AE 2C */ lbz r10, curFadeOutState@sda21(r13) /* 803977EC 0039474C 7F BC D2 14 */ add r29, r28, r26 /* 803977F0 00394750 57 6C 0D FC */ rlwinm r12, r27, 1, 0x17, 0x1e @@ -3373,7 +3410,7 @@ lbl_80397ADC: /* 80397AE4 00394A44 80 01 00 44 */ lwz r0, 0x44(r1) /* 80397AE8 00394A48 7C 08 03 A6 */ mtlr r0 /* 80397AEC 00394A4C 38 21 00 40 */ addi r1, r1, 0x40 -/* 80397AF0 00394A50 4E 80 00 20 */ blr +/* 80397AF0 00394A50 4E 80 00 20 */ blr .global InitTrackEvents InitTrackEvents: @@ -3489,7 +3526,7 @@ lbl_80397C54: /* 80397C58 00394BB8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80397C5C 00394BBC 7C 08 03 A6 */ mtlr r0 /* 80397C60 00394BC0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80397C64 00394BC4 4E 80 00 20 */ blr +/* 80397C64 00394BC4 4E 80 00 20 */ blr .global HandleTrackEvents HandleTrackEvents: @@ -3827,7 +3864,7 @@ lbl_803980E4: /* 803980F4 00395054 80 01 00 64 */ lwz r0, 0x64(r1) /* 803980F8 00395058 7C 08 03 A6 */ mtlr r0 /* 803980FC 0039505C 38 21 00 60 */ addi r1, r1, 0x60 -/* 80398100 00395060 4E 80 00 20 */ blr +/* 80398100 00395060 4E 80 00 20 */ blr .global sub_80398104 sub_80398104: @@ -4533,17 +4570,17 @@ lbl_80398AB8: /* 80398AE8 00395A48 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80398AEC 00395A4C 7C 08 03 A6 */ mtlr r0 /* 80398AF0 00395A50 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 80398AF4 00395A54 4E 80 00 20 */ blr +/* 80398AF4 00395A54 4E 80 00 20 */ blr .global seqInit seqInit: /* 80398AF8 00395A58 38 C0 00 00 */ li r6, 0 -/* 80398AFC 00395A5C 3C A0 80 54 */ lis r5, lbl_805439D0@ha -/* 80398B00 00395A60 3C 80 80 55 */ lis r4, lbl_8054FD10@ha +/* 80398AFC 00395A5C 3C A0 80 54 */ lis r5, seqInstance@ha +/* 80398B00 00395A60 3C 80 80 55 */ lis r4, seqMIDIPriority@ha /* 80398B04 00395A64 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 80398B08 00395A68 38 00 00 08 */ li r0, 8 -/* 80398B0C 00395A6C 38 E5 39 D0 */ addi r7, r5, lbl_805439D0@l -/* 80398B10 00395A70 39 04 FD 10 */ addi r8, r4, lbl_8054FD10@l +/* 80398B0C 00395A6C 38 E5 39 D0 */ addi r7, r5, seqInstance@l +/* 80398B10 00395A70 39 04 FD 10 */ addi r8, r4, seqMIDIPriority@l /* 80398B14 00395A74 90 CD AE 44 */ stw r6, seqActiveRoot@sda21(r13) /* 80398B18 00395A78 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l /* 80398B1C 00395A7C 39 20 00 00 */ li r9, 0 @@ -4558,10 +4595,10 @@ lbl_80398B28: /* 80398B3C 00395A9C 48 00 00 20 */ b lbl_80398B5C lbl_80398B40: /* 80398B40 00395AA0 38 09 FF FF */ addi r0, r9, -1 -/* 80398B44 00395AA4 3C 80 80 54 */ lis r4, lbl_805439D0@ha +/* 80398B44 00395AA4 3C 80 80 54 */ lis r4, seqInstance@ha /* 80398B48 00395AA8 1C A0 18 68 */ mulli r5, r0, 0x1868 /* 80398B4C 00395AAC 90 E7 E7 98 */ stw r7, -0x1868(r7) -/* 80398B50 00395AB0 38 04 39 D0 */ addi r0, r4, lbl_805439D0@l +/* 80398B50 00395AB0 38 04 39 D0 */ addi r0, r4, seqInstance@l /* 80398B54 00395AB4 7C 00 2A 14 */ add r0, r0, r5 /* 80398B58 00395AB8 90 07 00 04 */ stw r0, 4(r7) lbl_80398B5C: @@ -4589,10 +4626,10 @@ lbl_80398B5C: /* 80398BB0 00395B10 39 08 00 20 */ addi r8, r8, 0x20 /* 80398BB4 00395B14 42 00 FF 74 */ bdnz lbl_80398B28 /* 80398BB8 00395B18 1C 89 18 68 */ mulli r4, r9, 0x1868 -/* 80398BBC 00395B1C 3C A0 80 54 */ lis r5, lbl_805439D0@ha -/* 80398BC0 00395B20 3C 60 80 54 */ lis r3, lbl_805425D0@ha -/* 80398BC4 00395B24 38 A5 39 D0 */ addi r5, r5, lbl_805439D0@l -/* 80398BC8 00395B28 38 E3 25 D0 */ addi r7, r3, lbl_805425D0@l +/* 80398BBC 00395B1C 3C A0 80 54 */ lis r5, seqInstance@ha +/* 80398BC0 00395B20 3C 60 80 54 */ lis r3, seqNote@ha +/* 80398BC4 00395B24 38 A5 39 D0 */ addi r5, r5, seqInstance@l +/* 80398BC8 00395B28 38 E3 25 D0 */ addi r7, r3, seqNote@l /* 80398BCC 00395B2C 38 00 00 20 */ li r0, 0x20 /* 80398BD0 00395B30 7C 65 22 14 */ add r3, r5, r4 /* 80398BD4 00395B34 7C C4 33 78 */ mr r4, r6 @@ -4654,4 +4691,4 @@ lbl_80398C80: /* 80398C90 00395BF0 38 00 00 00 */ li r0, 0 /* 80398C94 00395BF4 90 06 00 00 */ stw r0, 0(r6) /* 80398C98 00395BF8 90 0D AE 28 */ stw r0, seq_next_id@sda21(r13) -/* 80398C9C 00395BFC 4E 80 00 20 */ blr +/* 80398C9C 00395BFC 4E 80 00 20 */ blr diff --git a/asm/musyx/seq_api.s b/asm/musyx/seq_api.s index c125d3c9..e9b9a85e 100644 --- a/asm/musyx/seq_api.s +++ b/asm/musyx/seq_api.s @@ -113,9 +113,9 @@ sndSeqVolume: .global seqGetMIDIPriority seqGetMIDIPriority: -/* 8039C174 003990D4 3C A0 80 55 */ lis r5, lbl_8054FD10@ha +/* 8039C174 003990D4 3C A0 80 55 */ lis r5, seqMIDIPriority@ha /* 8039C178 003990D8 54 66 2C F4 */ rlwinm r6, r3, 5, 0x13, 0x1a -/* 8039C17C 003990DC 38 65 FD 10 */ addi r3, r5, lbl_8054FD10@l +/* 8039C17C 003990DC 38 65 FD 10 */ addi r3, r5, seqMIDIPriority@l /* 8039C180 003990E0 54 80 0D FC */ rlwinm r0, r4, 1, 0x17, 0x1e /* 8039C184 003990E4 7C 63 32 14 */ add r3, r3, r6 /* 8039C188 003990E8 7C 63 02 2E */ lhzx r3, r3, r0 diff --git a/asm/musyx/snd3d.s b/asm/musyx/snd3d.s index 429aeb17..c514f5d7 100644 --- a/asm/musyx/snd3d.s +++ b/asm/musyx/snd3d.s @@ -1,5 +1,19 @@ .include "macros.inc" +.section .bss +.global "tmp_em$388" +"tmp_em$388": + .skip 0x50 +.global startGroup +startGroup: + .skip 0x400 +.global runList +runList: + .skip 0x300 +.global startListNum +startListNum: + .skip 0x700 + .section .sbss .balign 4 .global runListNum @@ -861,8 +875,8 @@ AddEmitter: /* 803AF380 003AC2E0 48 00 5D 3D */ bl hwDisableIrq /* 803AF384 003AC2E4 28 17 00 00 */ cmplwi r23, 0 /* 803AF388 003AC2E8 40 82 00 10 */ bne lbl_803AF398 -/* 803AF38C 003AC2EC 3C 60 80 56 */ lis r3, lbl_8055F940@ha -/* 803AF390 003AC2F0 3B C3 F9 40 */ addi r30, r3, lbl_8055F940@l +/* 803AF38C 003AC2EC 3C 60 80 56 */ lis r3, "tmp_em$388"@ha +/* 803AF390 003AC2F0 3B C3 F9 40 */ addi r30, r3, "tmp_em$388"@l /* 803AF394 003AC2F4 48 00 00 08 */ b lbl_803AF39C lbl_803AF398: /* 803AF398 003AC2F8 7E FE BB 78 */ mr r30, r23 @@ -1640,8 +1654,8 @@ lbl_803AFE48: .global sub_803afe5c sub_803afe5c: /* 803AFE5C 003ACDBC 88 CD AF 62 */ lbz r6, startGroupNum@sda21(r13) -/* 803AFE60 003ACDC0 3C 80 80 56 */ lis r4, lbl_8055F990@ha -/* 803AFE64 003ACDC4 38 A4 F9 90 */ addi r5, r4, lbl_8055F990@l +/* 803AFE60 003ACDC0 3C 80 80 56 */ lis r4, startGroup@ha +/* 803AFE64 003ACDC4 38 A4 F9 90 */ addi r5, r4, startGroup@l /* 803AFE68 003ACDC8 39 20 00 00 */ li r9, 0 /* 803AFE6C 003ACDCC 7C C9 03 A6 */ mtctr r6 /* 803AFE70 003ACDD0 2C 06 00 00 */ cmpwi r6, 0 @@ -1662,9 +1676,9 @@ lbl_803AFE94: /* 803AFEA4 003ACE04 38 60 00 00 */ li r3, 0 /* 803AFEA8 003ACE08 4E 80 00 20 */ blr lbl_803AFEAC: -/* 803AFEAC 003ACE0C 3C A0 80 56 */ lis r5, lbl_8055F990@ha +/* 803AFEAC 003ACE0C 3C A0 80 56 */ lis r5, startGroup@ha /* 803AFEB0 003ACE10 88 8D AF 62 */ lbz r4, startGroupNum@sda21(r13) -/* 803AFEB4 003ACE14 38 C5 F9 90 */ addi r6, r5, lbl_8055F990@l +/* 803AFEB4 003ACE14 38 C5 F9 90 */ addi r6, r5, startGroup@l /* 803AFEB8 003ACE18 55 28 20 36 */ slwi r8, r9, 4 /* 803AFEBC 003ACE1C 7C A6 42 14 */ add r5, r6, r8 /* 803AFEC0 003ACE20 38 E0 00 00 */ li r7, 0 @@ -1682,9 +1696,9 @@ lbl_803AFEE0: /* 803AFEEC 003ACE4C 38 60 00 00 */ li r3, 0 /* 803AFEF0 003ACE50 4E 80 00 20 */ blr lbl_803AFEF4: -/* 803AFEF4 003ACE54 3C 80 80 56 */ lis r4, lbl_8055F990@ha +/* 803AFEF4 003ACE54 3C 80 80 56 */ lis r4, startGroup@ha /* 803AFEF8 003ACE58 55 20 20 36 */ slwi r0, r9, 4 -/* 803AFEFC 003ACE5C 38 84 F9 90 */ addi r4, r4, lbl_8055F990@l +/* 803AFEFC 003ACE5C 38 84 F9 90 */ addi r4, r4, startGroup@l /* 803AFF00 003ACE60 7C E4 02 14 */ add r7, r4, r0 /* 803AFF04 003ACE64 80 C7 00 04 */ lwz r6, 4(r7) /* 803AFF08 003ACE68 38 E7 00 04 */ addi r7, r7, 4 @@ -1703,23 +1717,23 @@ lbl_803AFF2C: /* 803AFF34 003ACE94 40 82 FF E8 */ bne lbl_803AFF1C lbl_803AFF38: /* 803AFF38 003ACE98 1C A5 00 1C */ mulli r5, r5, 0x1c -/* 803AFF3C 003ACE9C 3C 80 80 56 */ lis r4, lbl_80560090@ha -/* 803AFF40 003ACEA0 38 04 00 90 */ addi r0, r4, lbl_80560090@l +/* 803AFF3C 003ACE9C 3C 80 80 56 */ lis r4, startListNum@ha +/* 803AFF40 003ACEA0 38 04 00 90 */ addi r0, r4, startListNum@l /* 803AFF44 003ACEA4 7C 80 2A 14 */ add r4, r0, r5 /* 803AFF48 003ACEA8 90 C4 00 00 */ stw r6, 0(r4) /* 803AFF4C 003ACEAC 90 88 00 00 */ stw r4, 0(r8) /* 803AFF50 003ACEB0 48 00 00 1C */ b lbl_803AFF6C lbl_803AFF54: /* 803AFF54 003ACEB4 1C A5 00 1C */ mulli r5, r5, 0x1c -/* 803AFF58 003ACEB8 3C 80 80 56 */ lis r4, lbl_80560090@ha -/* 803AFF5C 003ACEBC 38 04 00 90 */ addi r0, r4, lbl_80560090@l +/* 803AFF58 003ACEB8 3C 80 80 56 */ lis r4, startListNum@ha +/* 803AFF5C 003ACEBC 38 04 00 90 */ addi r0, r4, startListNum@l /* 803AFF60 003ACEC0 7C 80 2A 14 */ add r4, r0, r5 /* 803AFF64 003ACEC4 90 C4 00 00 */ stw r6, 0(r4) /* 803AFF68 003ACEC8 90 87 00 00 */ stw r4, 0(r7) lbl_803AFF6C: /* 803AFF6C 003ACECC 88 8D AF 61 */ lbz r4, startListNumnum@sda21(r13) -/* 803AFF70 003ACED0 3C A0 80 56 */ lis r5, lbl_80560090@ha -/* 803AFF74 003ACED4 38 A5 00 90 */ addi r5, r5, lbl_80560090@l +/* 803AFF70 003ACED0 3C A0 80 56 */ lis r5, startListNum@ha +/* 803AFF74 003ACED4 38 A5 00 90 */ addi r5, r5, startListNum@l /* 803AFF78 003ACED8 1C C4 00 1C */ mulli r6, r4, 0x1c /* 803AFF7C 003ACEDC 38 04 00 01 */ addi r0, r4, 1 /* 803AFF80 003ACEE0 98 0D AF 61 */ stb r0, startListNumnum@sda21(r13) @@ -1746,9 +1760,9 @@ sub_803affa8: /* 803AFFC8 003ACF28 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 /* 803AFFCC 003ACF2C 39 61 00 50 */ addi r11, r1, 0x50 /* 803AFFD0 003ACF30 4B FD 9A 99 */ bl sub_80389a68 -/* 803AFFD4 003ACF34 3C 60 80 56 */ lis r3, lbl_8055F990@ha +/* 803AFFD4 003ACF34 3C 60 80 56 */ lis r3, startGroup@ha /* 803AFFD8 003ACF38 3B 40 00 00 */ li r26, 0 -/* 803AFFDC 003ACF3C 3B 63 F9 90 */ addi r27, r3, lbl_8055F990@l +/* 803AFFDC 003ACF3C 3B 63 F9 90 */ addi r27, r3, startGroup@l /* 803AFFE0 003ACF40 48 00 03 3C */ b lbl_803B031C lbl_803AFFE4: /* 803AFFE4 003ACF44 83 3B 00 04 */ lwz r25, 4(r27) @@ -2190,8 +2204,8 @@ lbl_803B05D8: /* 803B05EC 003AD54C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 803B05F0 003AD550 41 82 01 28 */ beq lbl_803B0718 /* 803B05F4 003AD554 88 AD AF 62 */ lbz r5, startGroupNum@sda21(r13) -/* 803B05F8 003AD558 3C 60 80 56 */ lis r3, lbl_8055F990@ha -/* 803B05FC 003AD55C 38 83 F9 90 */ addi r4, r3, lbl_8055F990@l +/* 803B05F8 003AD558 3C 60 80 56 */ lis r3, startGroup@ha +/* 803B05FC 003AD55C 38 83 F9 90 */ addi r4, r3, startGroup@l /* 803B0600 003AD560 C0 21 00 18 */ lfs f1, 0x18(r1) /* 803B0604 003AD564 38 E0 00 00 */ li r7, 0 /* 803B0608 003AD568 7C A9 03 A6 */ mtctr r5 @@ -2208,11 +2222,11 @@ lbl_803B0614: lbl_803B0630: /* 803B0630 003AD590 7C 07 28 00 */ cmpw r7, r5 /* 803B0634 003AD594 40 82 00 38 */ bne lbl_803B066C -/* 803B0638 003AD598 3C 80 80 56 */ lis r4, lbl_8055F990@ha +/* 803B0638 003AD598 3C 80 80 56 */ lis r4, startGroup@ha /* 803B063C 003AD59C 88 6D AF 62 */ lbz r3, startGroupNum@sda21(r13) /* 803B0640 003AD5A0 54 E5 20 36 */ slwi r5, r7, 4 /* 803B0644 003AD5A4 38 C0 00 00 */ li r6, 0 -/* 803B0648 003AD5A8 38 84 F9 90 */ addi r4, r4, lbl_8055F990@l +/* 803B0648 003AD5A8 38 84 F9 90 */ addi r4, r4, startGroup@l /* 803B064C 003AD5AC 38 03 00 01 */ addi r0, r3, 1 /* 803B0650 003AD5B0 7C 84 2A 14 */ add r4, r4, r5 /* 803B0654 003AD5B4 90 C4 00 04 */ stw r6, 4(r4) @@ -2222,9 +2236,9 @@ lbl_803B0630: /* 803B0664 003AD5C4 90 64 00 00 */ stw r3, 0(r4) /* 803B0668 003AD5C8 98 0D AF 62 */ stb r0, startGroupNum@sda21(r13) lbl_803B066C: -/* 803B066C 003AD5CC 3C 60 80 56 */ lis r3, lbl_8055F990@ha +/* 803B066C 003AD5CC 3C 60 80 56 */ lis r3, startGroup@ha /* 803B0670 003AD5D0 54 E4 20 36 */ slwi r4, r7, 4 -/* 803B0674 003AD5D4 38 03 F9 90 */ addi r0, r3, lbl_8055F990@l +/* 803B0674 003AD5D4 38 03 F9 90 */ addi r0, r3, startGroup@l /* 803B0678 003AD5D8 38 A0 00 00 */ li r5, 0 /* 803B067C 003AD5DC 7C 80 22 14 */ add r4, r0, r4 /* 803B0680 003AD5E0 A0 64 00 0C */ lhz r3, 0xc(r4) @@ -2246,23 +2260,23 @@ lbl_803B06B4: /* 803B06B4 003AD614 28 05 00 00 */ cmplwi r5, 0 /* 803B06B8 003AD618 40 82 00 20 */ bne lbl_803B06D8 /* 803B06BC 003AD61C 88 8D AF 60 */ lbz r4, runListNum@sda21(r13) -/* 803B06C0 003AD620 3C 60 80 56 */ lis r3, lbl_8055FD90@ha -/* 803B06C4 003AD624 38 03 FD 90 */ addi r0, r3, lbl_8055FD90@l +/* 803B06C0 003AD620 3C 60 80 56 */ lis r3, runList@ha +/* 803B06C4 003AD624 38 03 FD 90 */ addi r0, r3, runList@l /* 803B06C8 003AD628 1C 64 00 0C */ mulli r3, r4, 0xc /* 803B06CC 003AD62C 7C 00 1A 14 */ add r0, r0, r3 /* 803B06D0 003AD630 90 07 00 00 */ stw r0, 0(r7) /* 803B06D4 003AD634 48 00 00 1C */ b lbl_803B06F0 lbl_803B06D8: /* 803B06D8 003AD638 88 8D AF 60 */ lbz r4, runListNum@sda21(r13) -/* 803B06DC 003AD63C 3C 60 80 56 */ lis r3, lbl_8055FD90@ha -/* 803B06E0 003AD640 38 03 FD 90 */ addi r0, r3, lbl_8055FD90@l +/* 803B06DC 003AD63C 3C 60 80 56 */ lis r3, runList@ha +/* 803B06E0 003AD640 38 03 FD 90 */ addi r0, r3, runList@l /* 803B06E4 003AD644 1C 64 00 0C */ mulli r3, r4, 0xc /* 803B06E8 003AD648 7C 00 1A 14 */ add r0, r0, r3 /* 803B06EC 003AD64C 90 05 00 00 */ stw r0, 0(r5) lbl_803B06F0: /* 803B06F0 003AD650 88 AD AF 60 */ lbz r5, runListNum@sda21(r13) -/* 803B06F4 003AD654 3C 60 80 56 */ lis r3, lbl_8055FD90@ha -/* 803B06F8 003AD658 38 63 FD 90 */ addi r3, r3, lbl_8055FD90@l +/* 803B06F4 003AD654 3C 60 80 56 */ lis r3, runList@ha +/* 803B06F8 003AD658 38 63 FD 90 */ addi r3, r3, runList@l /* 803B06FC 003AD65C 1C 85 00 0C */ mulli r4, r5, 0xc /* 803B0700 003AD660 38 05 00 01 */ addi r0, r5, 1 /* 803B0704 003AD664 98 0D AF 60 */ stb r0, runListNum@sda21(r13) diff --git a/asm/musyx/snd_midictrl.s b/asm/musyx/snd_midictrl.s index 62482bbb..b46e159f 100644 --- a/asm/musyx/snd_midictrl.s +++ b/asm/musyx/snd_midictrl.s @@ -1,20 +1,66 @@ .include "macros.inc" +.section .bss +inpGlobalMIDIDirtyFlags: + .skip 0x200 +midi_ctrl: + .skip 0x4300 +inpChannelDefaults: + .skip 0x80 +fx_ctrl: + .skip 0x2180 +inpFXChannelDefaults: + .skip 0x40 +midi_lastNote: + .skip 0x80 +fx_lastNote: + .skip 0x40 + .section .data, "wa" .global lbl_803F41E8 lbl_803F41E8: - .incbin "baserom.dol", 0x3F11E8, 0x10 - + # ROM: 0x3F11E8 + .4byte 0x80000001 + .4byte 0x80000002 + .4byte 0x80000004 + .4byte 0x80000008 + + lbl_803F41F8: - .incbin "baserom.dol", 0x3F11F8, 0x10 - + # ROM: 0x3F11F8 + .4byte 0x80000010 + .4byte 0x80000020 + .4byte 0x80000040 + .4byte 0x80000080 + + lbl_803F4208: - .incbin "baserom.dol", 0x3F1208, 0x24 - + # ROM: 0x3F1208 + .4byte 0x803B2A78 + .4byte 0x803B2A80 + .4byte 0x803B2A88 + .4byte 0x803B2A90 + .4byte 0x803B2A98 + .4byte 0x803B2AA0 + .4byte 0x803B2AA8 + .4byte 0x803B2AB0 + .4byte 0x803B2AB8 + + lbl_803F422C: - .incbin "baserom.dol", 0x3F122C, 0x24 - + # ROM: 0x3F122C + .4byte 0x803B2AF8 + .4byte 0x803B2B00 + .4byte 0x803B2B08 + .4byte 0x803B2B10 + .4byte 0x803B2B18 + .4byte 0x803B2B20 + .4byte 0x803B2B28 + .4byte 0x803B2B30 + .4byte 0x803B2B38 + + lbl_803F4250: .4byte lbl_803B2C2C .4byte lbl_803B2C34 @@ -30,25 +76,95 @@ lbl_803F4250: .section .rodata .global lbl_803D8AC0 lbl_803D8AC0: - .incbin "baserom.dol", 0x3D5AC0, 0x88 + # ROM: 0x3D5AC0 + .4byte 0 + .4byte 0x0000007F + .4byte 0x0000407F + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0x00007F7F + .4byte 0x7F7F0000 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0x40000000 + .4byte 0x40000000 + .global lbl_803D8B48 lbl_803D8B48: - .incbin "baserom.dol", 0x3D5B48, 0x88 + # ROM: 0x3D5B48 + .4byte 0xFF00FFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFF7F + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFF00FFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFF7F + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0 + .4byte 0xFF00FFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0xFFFFFFFF + .4byte 0x40FFFFFF + .4byte 0xFFFF0000 -.section .text, "ax" + +.section .text, "ax" .global inpSetGlobalMIDIDirtyFlag inpSetGlobalMIDIDirtyFlag: -/* 803B10CC 003AE02C 3C C0 80 56 */ lis r6, lbl_80560790@ha +/* 803B10CC 003AE02C 3C C0 80 56 */ lis r6, inpGlobalMIDIDirtyFlags@ha /* 803B10D0 003AE030 54 84 34 B2 */ rlwinm r4, r4, 6, 0x12, 0x19 -/* 803B10D4 003AE034 38 06 07 90 */ addi r0, r6, lbl_80560790@l +/* 803B10D4 003AE034 38 06 07 90 */ addi r0, r6, inpGlobalMIDIDirtyFlags@l /* 803B10D8 003AE038 54 63 15 BA */ rlwinm r3, r3, 2, 0x16, 0x1d /* 803B10DC 003AE03C 7C 80 22 14 */ add r4, r0, r4 /* 803B10E0 003AE040 7C 04 18 2E */ lwzx r0, r4, r3 /* 803B10E4 003AE044 7C 00 2B 78 */ or r0, r0, r5 /* 803B10E8 003AE048 7C 04 19 2E */ stwx r0, r4, r3 -/* 803B10EC 003AE04C 4E 80 00 20 */ blr +/* 803B10EC 003AE04C 4E 80 00 20 */ blr .global inpSetMidiCtrl inpSetMidiCtrl: @@ -58,9 +174,9 @@ inpSetMidiCtrl: /* 803B10FC 003AE05C 39 61 00 30 */ addi r11, r1, 0x30 /* 803B1100 003AE060 4B FD 89 75 */ bl _savegpr_25 /* 803B1104 003AE064 54 87 06 3E */ clrlwi r7, r4, 0x18 -/* 803B1108 003AE068 3D 00 80 56 */ lis r8, lbl_80560790@ha +/* 803B1108 003AE068 3D 00 80 56 */ lis r8, inpGlobalMIDIDirtyFlags@ha /* 803B110C 003AE06C 28 07 00 FF */ cmplwi r7, 0xff -/* 803B1110 003AE070 3B E8 07 90 */ addi r31, r8, lbl_80560790@l +/* 803B1110 003AE070 3B E8 07 90 */ addi r31, r8, inpGlobalMIDIDirtyFlags@l /* 803B1114 003AE074 41 82 05 CC */ beq lbl_803B16E0 /* 803B1118 003AE078 54 A0 06 3E */ clrlwi r0, r5, 0x18 /* 803B111C 003AE07C 28 00 00 FF */ cmplwi r0, 0xff @@ -485,7 +601,7 @@ lbl_803B16E0: /* 803B16E8 003AE648 80 01 00 34 */ lwz r0, 0x34(r1) /* 803B16EC 003AE64C 7C 08 03 A6 */ mtlr r0 /* 803B16F0 003AE650 38 21 00 30 */ addi r1, r1, 0x30 -/* 803B16F4 003AE654 4E 80 00 20 */ blr +/* 803B16F4 003AE654 4E 80 00 20 */ blr .global inpSetMidiCtrl14 inpSetMidiCtrl14: @@ -567,7 +683,7 @@ lbl_803B17FC: /* 803B180C 003AE76C 83 81 00 10 */ lwz r28, 0x10(r1) /* 803B1810 003AE770 7C 08 03 A6 */ mtlr r0 /* 803B1814 003AE774 38 21 00 20 */ addi r1, r1, 0x20 -/* 803B1818 003AE778 4E 80 00 20 */ blr +/* 803B1818 003AE778 4E 80 00 20 */ blr .global inpResetMidiCtrl inpResetMidiCtrl: @@ -589,18 +705,18 @@ lbl_803B1850: /* 803B1854 003AE7B4 28 04 00 FF */ cmplwi r4, 0xff /* 803B1858 003AE7B8 41 82 00 24 */ beq lbl_803B187C /* 803B185C 003AE7BC 57 C0 06 3E */ clrlwi r0, r30, 0x18 -/* 803B1860 003AE7C0 3C 60 80 56 */ lis r3, lbl_80560990@ha +/* 803B1860 003AE7C0 3C 60 80 56 */ lis r3, midi_ctrl@ha /* 803B1864 003AE7C4 1C 84 08 60 */ mulli r4, r4, 0x860 -/* 803B1868 003AE7C8 38 63 09 90 */ addi r3, r3, lbl_80560990@l +/* 803B1868 003AE7C8 38 63 09 90 */ addi r3, r3, midi_ctrl@l /* 803B186C 003AE7CC 1C 00 00 86 */ mulli r0, r0, 0x86 /* 803B1870 003AE7D0 7C 63 22 14 */ add r3, r3, r4 /* 803B1874 003AE7D4 7C 63 02 14 */ add r3, r3, r0 /* 803B1878 003AE7D8 48 00 00 18 */ b lbl_803B1890 lbl_803B187C: /* 803B187C 003AE7DC 57 C0 06 3E */ clrlwi r0, r30, 0x18 -/* 803B1880 003AE7E0 3C 60 80 56 */ lis r3, lbl_80564D10@ha +/* 803B1880 003AE7E0 3C 60 80 56 */ lis r3, fx_ctrl@ha /* 803B1884 003AE7E4 1C 80 00 86 */ mulli r4, r0, 0x86 -/* 803B1888 003AE7E8 38 03 4D 10 */ addi r0, r3, lbl_80564D10@l +/* 803B1888 003AE7E8 38 03 4D 10 */ addi r0, r3, fx_ctrl@l /* 803B188C 003AE7EC 7C 60 22 14 */ add r3, r0, r4 lbl_803B1890: /* 803B1890 003AE7F0 28 05 00 00 */ cmplwi r5, 0 @@ -638,7 +754,7 @@ lbl_803B18E4: /* 803B18FC 003AE85C 83 C1 00 08 */ lwz r30, 8(r1) /* 803B1900 003AE860 7C 08 03 A6 */ mtlr r0 /* 803B1904 003AE864 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B1908 003AE868 4E 80 00 20 */ blr +/* 803B1908 003AE868 4E 80 00 20 */ blr .global inpGetMidiCtrl inpGetMidiCtrl: @@ -652,9 +768,9 @@ inpGetMidiCtrl: /* 803B1928 003AE888 28 07 00 40 */ cmplwi r7, 0x40 /* 803B192C 003AE88C 40 80 00 3C */ bge lbl_803B1968 /* 803B1930 003AE890 1C A0 08 60 */ mulli r5, r0, 0x860 -/* 803B1934 003AE894 3C 80 80 56 */ lis r4, lbl_80560990@ha +/* 803B1934 003AE894 3C 80 80 56 */ lis r4, midi_ctrl@ha /* 803B1938 003AE898 54 66 06 FE */ clrlwi r6, r3, 0x1b -/* 803B193C 003AE89C 38 04 09 90 */ addi r0, r4, lbl_80560990@l +/* 803B193C 003AE89C 38 04 09 90 */ addi r0, r4, midi_ctrl@l /* 803B1940 003AE8A0 1C 68 00 86 */ mulli r3, r8, 0x86 /* 803B1944 003AE8A4 7C 00 2A 14 */ add r0, r0, r5 /* 803B1948 003AE8A8 7C 80 1A 14 */ add r4, r0, r3 @@ -664,14 +780,14 @@ inpGetMidiCtrl: /* 803B1958 003AE8B8 54 83 38 30 */ slwi r3, r4, 7 /* 803B195C 003AE8BC 7C 60 03 78 */ or r0, r3, r0 /* 803B1960 003AE8C0 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 803B1964 003AE8C4 4E 80 00 20 */ blr +/* 803B1964 003AE8C4 4E 80 00 20 */ blr lbl_803B1968: /* 803B1968 003AE8C8 28 07 00 46 */ cmplwi r7, 0x46 /* 803B196C 003AE8CC 40 80 00 3C */ bge lbl_803B19A8 /* 803B1970 003AE8D0 1C C0 08 60 */ mulli r6, r0, 0x860 -/* 803B1974 003AE8D4 3C 80 80 56 */ lis r4, lbl_80560990@ha +/* 803B1974 003AE8D4 3C 80 80 56 */ lis r4, midi_ctrl@ha /* 803B1978 003AE8D8 38 60 00 40 */ li r3, 0x40 -/* 803B197C 003AE8DC 38 A4 09 90 */ addi r5, r4, lbl_80560990@l +/* 803B197C 003AE8DC 38 A4 09 90 */ addi r5, r4, midi_ctrl@l /* 803B1980 003AE8E0 1C 88 00 86 */ mulli r4, r8, 0x86 /* 803B1984 003AE8E4 38 00 3F FF */ li r0, 0x3fff /* 803B1988 003AE8E8 7C A5 32 14 */ add r5, r5, r6 @@ -681,14 +797,14 @@ lbl_803B1968: /* 803B1998 003AE8F8 7C 63 19 10 */ subfe r3, r3, r3 /* 803B199C 003AE8FC 7C 00 18 78 */ andc r0, r0, r3 /* 803B19A0 003AE900 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 803B19A4 003AE904 4E 80 00 20 */ blr +/* 803B19A4 003AE904 4E 80 00 20 */ blr lbl_803B19A8: /* 803B19A8 003AE908 28 07 00 60 */ cmplwi r7, 0x60 /* 803B19AC 003AE90C 41 80 00 14 */ blt lbl_803B19C0 /* 803B19B0 003AE910 28 07 00 66 */ cmplwi r7, 0x66 /* 803B19B4 003AE914 40 80 00 0C */ bge lbl_803B19C0 /* 803B19B8 003AE918 38 60 00 00 */ li r3, 0 -/* 803B19BC 003AE91C 4E 80 00 20 */ blr +/* 803B19BC 003AE91C 4E 80 00 20 */ blr lbl_803B19C0: /* 803B19C0 003AE920 54 66 06 3E */ clrlwi r6, r3, 0x18 /* 803B19C4 003AE924 28 06 00 80 */ cmplwi r6, 0x80 @@ -699,9 +815,9 @@ lbl_803B19D4: /* 803B19D4 003AE934 54 A0 06 3E */ clrlwi r0, r5, 0x18 /* 803B19D8 003AE938 54 85 06 3E */ clrlwi r5, r4, 0x18 /* 803B19DC 003AE93C 1C C0 08 60 */ mulli r6, r0, 0x860 -/* 803B19E0 003AE940 3C 80 80 56 */ lis r4, lbl_80560990@ha +/* 803B19E0 003AE940 3C 80 80 56 */ lis r4, midi_ctrl@ha /* 803B19E4 003AE944 54 67 06 3C */ rlwinm r7, r3, 0, 0x18, 0x1e -/* 803B19E8 003AE948 38 04 09 90 */ addi r0, r4, lbl_80560990@l +/* 803B19E8 003AE948 38 04 09 90 */ addi r0, r4, midi_ctrl@l /* 803B19EC 003AE94C 1C 65 00 86 */ mulli r3, r5, 0x86 /* 803B19F0 003AE950 7C 00 32 14 */ add r0, r0, r6 /* 803B19F4 003AE954 7C 80 1A 14 */ add r4, r0, r3 @@ -711,7 +827,7 @@ lbl_803B19D4: /* 803B1A04 003AE964 54 83 38 30 */ slwi r3, r4, 7 /* 803B1A08 003AE968 7C 60 03 78 */ or r0, r3, r0 /* 803B1A0C 003AE96C 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 803B1A10 003AE970 4E 80 00 20 */ blr +/* 803B1A10 003AE970 4E 80 00 20 */ blr lbl_803B1A14: /* 803B1A14 003AE974 28 06 00 84 */ cmplwi r6, 0x84 /* 803B1A18 003AE978 41 82 00 0C */ beq lbl_803B1A24 @@ -721,9 +837,9 @@ lbl_803B1A24: /* 803B1A24 003AE984 54 A0 06 3E */ clrlwi r0, r5, 0x18 /* 803B1A28 003AE988 54 85 06 3E */ clrlwi r5, r4, 0x18 /* 803B1A2C 003AE98C 1C C0 08 60 */ mulli r6, r0, 0x860 -/* 803B1A30 003AE990 3C 80 80 56 */ lis r4, lbl_80560990@ha +/* 803B1A30 003AE990 3C 80 80 56 */ lis r4, midi_ctrl@ha /* 803B1A34 003AE994 54 67 06 3C */ rlwinm r7, r3, 0, 0x18, 0x1e -/* 803B1A38 003AE998 38 04 09 90 */ addi r0, r4, lbl_80560990@l +/* 803B1A38 003AE998 38 04 09 90 */ addi r0, r4, midi_ctrl@l /* 803B1A3C 003AE99C 1C 65 00 86 */ mulli r3, r5, 0x86 /* 803B1A40 003AE9A0 7C 00 32 14 */ add r0, r0, r6 /* 803B1A44 003AE9A4 7C 80 1A 14 */ add r4, r0, r3 @@ -733,27 +849,27 @@ lbl_803B1A24: /* 803B1A54 003AE9B4 54 83 38 30 */ slwi r3, r4, 7 /* 803B1A58 003AE9B8 7C 60 03 78 */ or r0, r3, r0 /* 803B1A5C 003AE9BC 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 803B1A60 003AE9C0 4E 80 00 20 */ blr +/* 803B1A60 003AE9C0 4E 80 00 20 */ blr lbl_803B1A64: /* 803B1A64 003AE9C4 54 A3 06 3E */ clrlwi r3, r5, 0x18 /* 803B1A68 003AE9C8 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 803B1A6C 003AE9CC 1C 83 08 60 */ mulli r4, r3, 0x860 -/* 803B1A70 003AE9D0 3C 60 80 56 */ lis r3, lbl_80560990@ha -/* 803B1A74 003AE9D4 38 63 09 90 */ addi r3, r3, lbl_80560990@l +/* 803B1A70 003AE9D0 3C 60 80 56 */ lis r3, midi_ctrl@ha +/* 803B1A74 003AE9D4 38 63 09 90 */ addi r3, r3, midi_ctrl@l /* 803B1A78 003AE9D8 1C 00 00 86 */ mulli r0, r0, 0x86 /* 803B1A7C 003AE9DC 7C 63 22 14 */ add r3, r3, r4 /* 803B1A80 003AE9E0 7C 63 02 14 */ add r3, r3, r0 /* 803B1A84 003AE9E4 7C 03 30 AE */ lbzx r0, r3, r6 /* 803B1A88 003AE9E8 54 03 3C 30 */ rlwinm r3, r0, 7, 0x10, 0x18 -/* 803B1A8C 003AE9EC 4E 80 00 20 */ blr +/* 803B1A8C 003AE9EC 4E 80 00 20 */ blr lbl_803B1A90: /* 803B1A90 003AE9F0 54 66 06 3E */ clrlwi r6, r3, 0x18 /* 803B1A94 003AE9F4 28 06 00 40 */ cmplwi r6, 0x40 /* 803B1A98 003AE9F8 40 80 00 34 */ bge lbl_803B1ACC /* 803B1A9C 003AE9FC 1C C8 00 86 */ mulli r6, r8, 0x86 -/* 803B1AA0 003AEA00 3C 80 80 56 */ lis r4, lbl_80564D10@ha +/* 803B1AA0 003AEA00 3C 80 80 56 */ lis r4, fx_ctrl@ha /* 803B1AA4 003AEA04 54 65 06 FE */ clrlwi r5, r3, 0x1b -/* 803B1AA8 003AEA08 38 04 4D 10 */ addi r0, r4, lbl_80564D10@l +/* 803B1AA8 003AEA08 38 04 4D 10 */ addi r0, r4, fx_ctrl@l /* 803B1AAC 003AEA0C 7C 80 32 14 */ add r4, r0, r6 /* 803B1AB0 003AEA10 7C 64 2A 14 */ add r3, r4, r5 /* 803B1AB4 003AEA14 7C 84 28 AE */ lbzx r4, r4, r5 @@ -761,14 +877,14 @@ lbl_803B1A90: /* 803B1ABC 003AEA1C 54 83 38 30 */ slwi r3, r4, 7 /* 803B1AC0 003AEA20 7C 60 03 78 */ or r0, r3, r0 /* 803B1AC4 003AEA24 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 803B1AC8 003AEA28 4E 80 00 20 */ blr +/* 803B1AC8 003AEA28 4E 80 00 20 */ blr lbl_803B1ACC: /* 803B1ACC 003AEA2C 28 06 00 46 */ cmplwi r6, 0x46 /* 803B1AD0 003AEA30 40 80 00 34 */ bge lbl_803B1B04 /* 803B1AD4 003AEA34 1C A8 00 86 */ mulli r5, r8, 0x86 -/* 803B1AD8 003AEA38 3C 80 80 56 */ lis r4, lbl_80564D10@ha +/* 803B1AD8 003AEA38 3C 80 80 56 */ lis r4, fx_ctrl@ha /* 803B1ADC 003AEA3C 38 60 00 40 */ li r3, 0x40 -/* 803B1AE0 003AEA40 38 04 4D 10 */ addi r0, r4, lbl_80564D10@l +/* 803B1AE0 003AEA40 38 04 4D 10 */ addi r0, r4, fx_ctrl@l /* 803B1AE4 003AEA44 7C 80 2A 14 */ add r4, r0, r5 /* 803B1AE8 003AEA48 38 00 3F FF */ li r0, 0x3fff /* 803B1AEC 003AEA4C 7C 84 30 AE */ lbzx r4, r4, r6 @@ -776,14 +892,14 @@ lbl_803B1ACC: /* 803B1AF4 003AEA54 7C 63 19 10 */ subfe r3, r3, r3 /* 803B1AF8 003AEA58 7C 00 18 78 */ andc r0, r0, r3 /* 803B1AFC 003AEA5C 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 803B1B00 003AEA60 4E 80 00 20 */ blr +/* 803B1B00 003AEA60 4E 80 00 20 */ blr lbl_803B1B04: /* 803B1B04 003AEA64 28 06 00 60 */ cmplwi r6, 0x60 /* 803B1B08 003AEA68 41 80 00 14 */ blt lbl_803B1B1C /* 803B1B0C 003AEA6C 28 06 00 66 */ cmplwi r6, 0x66 /* 803B1B10 003AEA70 40 80 00 0C */ bge lbl_803B1B1C /* 803B1B14 003AEA74 38 60 00 00 */ li r3, 0 -/* 803B1B18 003AEA78 4E 80 00 20 */ blr +/* 803B1B18 003AEA78 4E 80 00 20 */ blr lbl_803B1B1C: /* 803B1B1C 003AEA7C 54 65 06 3E */ clrlwi r5, r3, 0x18 /* 803B1B20 003AEA80 28 05 00 80 */ cmplwi r5, 0x80 @@ -792,10 +908,10 @@ lbl_803B1B1C: /* 803B1B2C 003AEA8C 40 82 00 38 */ bne lbl_803B1B64 lbl_803B1B30: /* 803B1B30 003AEA90 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 803B1B34 003AEA94 3C 80 80 56 */ lis r4, lbl_80564D10@ha +/* 803B1B34 003AEA94 3C 80 80 56 */ lis r4, fx_ctrl@ha /* 803B1B38 003AEA98 1C C0 00 86 */ mulli r6, r0, 0x86 /* 803B1B3C 003AEA9C 54 65 06 3C */ rlwinm r5, r3, 0, 0x18, 0x1e -/* 803B1B40 003AEAA0 38 04 4D 10 */ addi r0, r4, lbl_80564D10@l +/* 803B1B40 003AEAA0 38 04 4D 10 */ addi r0, r4, fx_ctrl@l /* 803B1B44 003AEAA4 7C 80 32 14 */ add r4, r0, r6 /* 803B1B48 003AEAA8 7C 64 2A 14 */ add r3, r4, r5 /* 803B1B4C 003AEAAC 7C 84 28 AE */ lbzx r4, r4, r5 @@ -803,7 +919,7 @@ lbl_803B1B30: /* 803B1B54 003AEAB4 54 83 38 30 */ slwi r3, r4, 7 /* 803B1B58 003AEAB8 7C 60 03 78 */ or r0, r3, r0 /* 803B1B5C 003AEABC 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 803B1B60 003AEAC0 4E 80 00 20 */ blr +/* 803B1B60 003AEAC0 4E 80 00 20 */ blr lbl_803B1B64: /* 803B1B64 003AEAC4 28 05 00 84 */ cmplwi r5, 0x84 /* 803B1B68 003AEAC8 41 82 00 0C */ beq lbl_803B1B74 @@ -811,10 +927,10 @@ lbl_803B1B64: /* 803B1B70 003AEAD0 40 82 00 38 */ bne lbl_803B1BA8 lbl_803B1B74: /* 803B1B74 003AEAD4 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 803B1B78 003AEAD8 3C 80 80 56 */ lis r4, lbl_80564D10@ha +/* 803B1B78 003AEAD8 3C 80 80 56 */ lis r4, fx_ctrl@ha /* 803B1B7C 003AEADC 1C C0 00 86 */ mulli r6, r0, 0x86 /* 803B1B80 003AEAE0 54 65 06 3C */ rlwinm r5, r3, 0, 0x18, 0x1e -/* 803B1B84 003AEAE4 38 04 4D 10 */ addi r0, r4, lbl_80564D10@l +/* 803B1B84 003AEAE4 38 04 4D 10 */ addi r0, r4, fx_ctrl@l /* 803B1B88 003AEAE8 7C 80 32 14 */ add r4, r0, r6 /* 803B1B8C 003AEAEC 7C 64 2A 14 */ add r3, r4, r5 /* 803B1B90 003AEAF0 7C 84 28 AE */ lbzx r4, r4, r5 @@ -822,35 +938,35 @@ lbl_803B1B74: /* 803B1B98 003AEAF8 54 83 38 30 */ slwi r3, r4, 7 /* 803B1B9C 003AEAFC 7C 60 03 78 */ or r0, r3, r0 /* 803B1BA0 003AEB00 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 803B1BA4 003AEB04 4E 80 00 20 */ blr +/* 803B1BA4 003AEB04 4E 80 00 20 */ blr lbl_803B1BA8: /* 803B1BA8 003AEB08 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 803B1BAC 003AEB0C 3C 60 80 56 */ lis r3, lbl_80564D10@ha +/* 803B1BAC 003AEB0C 3C 60 80 56 */ lis r3, fx_ctrl@ha /* 803B1BB0 003AEB10 1C 80 00 86 */ mulli r4, r0, 0x86 -/* 803B1BB4 003AEB14 38 03 4D 10 */ addi r0, r3, lbl_80564D10@l +/* 803B1BB4 003AEB14 38 03 4D 10 */ addi r0, r3, fx_ctrl@l /* 803B1BB8 003AEB18 7C 60 22 14 */ add r3, r0, r4 /* 803B1BBC 003AEB1C 7C 03 28 AE */ lbzx r0, r3, r5 /* 803B1BC0 003AEB20 54 03 3C 30 */ rlwinm r3, r0, 7, 0x10, 0x18 -/* 803B1BC4 003AEB24 4E 80 00 20 */ blr +/* 803B1BC4 003AEB24 4E 80 00 20 */ blr lbl_803B1BC8: /* 803B1BC8 003AEB28 38 60 00 00 */ li r3, 0 -/* 803B1BCC 003AEB2C 4E 80 00 20 */ blr +/* 803B1BCC 003AEB2C 4E 80 00 20 */ blr .global sub_803b1bd0 sub_803b1bd0: /* 803B1BD0 003AEB30 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 803B1BD4 003AEB34 3C A0 80 56 */ lis r5, lbl_80564C90@ha +/* 803B1BD4 003AEB34 3C A0 80 56 */ lis r5, inpChannelDefaults@ha /* 803B1BD8 003AEB38 28 00 00 FF */ cmplwi r0, 0xff /* 803B1BDC 003AEB3C 54 86 25 36 */ rlwinm r6, r4, 4, 0x14, 0x1b -/* 803B1BE0 003AEB40 38 05 4C 90 */ addi r0, r5, lbl_80564C90@l +/* 803B1BE0 003AEB40 38 05 4C 90 */ addi r0, r5, inpChannelDefaults@l /* 803B1BE4 003AEB44 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 803B1BE8 003AEB48 7C 00 32 14 */ add r0, r0, r6 /* 803B1BEC 003AEB4C 7C 60 22 14 */ add r3, r0, r4 -/* 803B1BF0 003AEB50 4C 82 00 20 */ bnelr +/* 803B1BF0 003AEB50 4C 82 00 20 */ bnelr /* 803B1BF4 003AEB54 3C 60 80 56 */ lis r3, inpFXChannelDefaults@ha /* 803B1BF8 003AEB58 38 03 6E 90 */ addi r0, r3, inpFXChannelDefaults@l /* 803B1BFC 003AEB5C 7C 60 22 14 */ add r3, r0, r4 -/* 803B1C00 003AEB60 4E 80 00 20 */ blr +/* 803B1C00 003AEB60 4E 80 00 20 */ blr .global inpResetChannelDefaults inpResetChannelDefaults: @@ -862,14 +978,14 @@ inpResetChannelDefaults: /* 803B1C18 003AEB78 38 A0 00 02 */ li r5, 2 /* 803B1C1C 003AEB7C 7C 60 32 14 */ add r3, r0, r6 /* 803B1C20 003AEB80 41 82 00 18 */ beq lbl_803B1C38 -/* 803B1C24 003AEB84 3C 60 80 56 */ lis r3, lbl_80564C90@ha +/* 803B1C24 003AEB84 3C 60 80 56 */ lis r3, inpChannelDefaults@ha /* 803B1C28 003AEB88 54 84 25 36 */ rlwinm r4, r4, 4, 0x14, 0x1b -/* 803B1C2C 003AEB8C 38 03 4C 90 */ addi r0, r3, lbl_80564C90@l +/* 803B1C2C 003AEB8C 38 03 4C 90 */ addi r0, r3, inpChannelDefaults@l /* 803B1C30 003AEB90 7C 00 22 14 */ add r0, r0, r4 /* 803B1C34 003AEB94 7C 60 32 14 */ add r3, r0, r6 lbl_803B1C38: /* 803B1C38 003AEB98 98 A3 00 00 */ stb r5, 0(r3) -/* 803B1C3C 003AEB9C 4E 80 00 20 */ blr +/* 803B1C3C 003AEB9C 4E 80 00 20 */ blr .global inpAddCtrl inpAddCtrl: @@ -914,7 +1030,7 @@ lbl_803B1CC0: /* 803B1CC8 003AEC28 80 01 00 24 */ lwz r0, 0x24(r1) /* 803B1CCC 003AEC2C 7C 08 03 A6 */ mtlr r0 /* 803B1CD0 003AEC30 38 21 00 20 */ addi r1, r1, 0x20 -/* 803B1CD4 003AEC34 4E 80 00 20 */ blr +/* 803B1CD4 003AEC34 4E 80 00 20 */ blr .global inpFXCopyCtrl inpFXCopyCtrl: @@ -926,9 +1042,9 @@ inpFXCopyCtrl: /* 803B1CEC 003AEC4C 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 803B1CF0 003AEC50 40 80 00 40 */ bge lbl_803B1D30 /* 803B1CF4 003AEC54 1C C0 00 86 */ mulli r6, r0, 0x86 -/* 803B1CF8 003AEC58 3C 80 80 56 */ lis r4, lbl_80564D10@ha +/* 803B1CF8 003AEC58 3C 80 80 56 */ lis r4, fx_ctrl@ha /* 803B1CFC 003AEC5C 54 65 06 FE */ clrlwi r5, r3, 0x1b -/* 803B1D00 003AEC60 38 84 4D 10 */ addi r4, r4, lbl_80564D10@l +/* 803B1D00 003AEC60 38 84 4D 10 */ addi r4, r4, fx_ctrl@l /* 803B1D04 003AEC64 1C E7 00 86 */ mulli r7, r7, 0x86 /* 803B1D08 003AEC68 7C 64 32 14 */ add r3, r4, r6 /* 803B1D0C 003AEC6C 7C 03 28 AE */ lbzx r0, r3, r5 @@ -939,7 +1055,7 @@ inpFXCopyCtrl: /* 803B1D20 003AEC80 7C 07 2A 14 */ add r0, r7, r5 /* 803B1D24 003AEC84 7C 68 18 AE */ lbzx r3, r8, r3 /* 803B1D28 003AEC88 7C 68 01 AE */ stbx r3, r8, r0 -/* 803B1D2C 003AEC8C 4E 80 00 20 */ blr +/* 803B1D2C 003AEC8C 4E 80 00 20 */ blr lbl_803B1D30: /* 803B1D30 003AEC90 28 06 00 80 */ cmplwi r6, 0x80 /* 803B1D34 003AEC94 41 82 00 0C */ beq lbl_803B1D40 @@ -947,9 +1063,9 @@ lbl_803B1D30: /* 803B1D3C 003AEC9C 40 82 00 40 */ bne lbl_803B1D7C lbl_803B1D40: /* 803B1D40 003AECA0 1C C0 00 86 */ mulli r6, r0, 0x86 -/* 803B1D44 003AECA4 3C 80 80 56 */ lis r4, lbl_80564D10@ha +/* 803B1D44 003AECA4 3C 80 80 56 */ lis r4, fx_ctrl@ha /* 803B1D48 003AECA8 54 65 06 3C */ rlwinm r5, r3, 0, 0x18, 0x1e -/* 803B1D4C 003AECAC 38 84 4D 10 */ addi r4, r4, lbl_80564D10@l +/* 803B1D4C 003AECAC 38 84 4D 10 */ addi r4, r4, fx_ctrl@l /* 803B1D50 003AECB0 7C 64 32 14 */ add r3, r4, r6 /* 803B1D54 003AECB4 1C E7 00 86 */ mulli r7, r7, 0x86 /* 803B1D58 003AECB8 7C 03 28 AE */ lbzx r0, r3, r5 @@ -960,7 +1076,7 @@ lbl_803B1D40: /* 803B1D6C 003AECCC 7C 07 2A 14 */ add r0, r7, r5 /* 803B1D70 003AECD0 7C 68 18 AE */ lbzx r3, r8, r3 /* 803B1D74 003AECD4 7C 68 01 AE */ stbx r3, r8, r0 -/* 803B1D78 003AECD8 4E 80 00 20 */ blr +/* 803B1D78 003AECD8 4E 80 00 20 */ blr lbl_803B1D7C: /* 803B1D7C 003AECDC 28 06 00 84 */ cmplwi r6, 0x84 /* 803B1D80 003AECE0 41 82 00 0C */ beq lbl_803B1D8C @@ -968,9 +1084,9 @@ lbl_803B1D7C: /* 803B1D88 003AECE8 40 82 00 40 */ bne lbl_803B1DC8 lbl_803B1D8C: /* 803B1D8C 003AECEC 1C C0 00 86 */ mulli r6, r0, 0x86 -/* 803B1D90 003AECF0 3C 80 80 56 */ lis r4, lbl_80564D10@ha +/* 803B1D90 003AECF0 3C 80 80 56 */ lis r4, fx_ctrl@ha /* 803B1D94 003AECF4 54 65 06 3C */ rlwinm r5, r3, 0, 0x18, 0x1e -/* 803B1D98 003AECF8 38 84 4D 10 */ addi r4, r4, lbl_80564D10@l +/* 803B1D98 003AECF8 38 84 4D 10 */ addi r4, r4, fx_ctrl@l /* 803B1D9C 003AECFC 7C 64 32 14 */ add r3, r4, r6 /* 803B1DA0 003AED00 1C E7 00 86 */ mulli r7, r7, 0x86 /* 803B1DA4 003AED04 7C 03 28 AE */ lbzx r0, r3, r5 @@ -981,55 +1097,55 @@ lbl_803B1D8C: /* 803B1DB8 003AED18 7C 07 2A 14 */ add r0, r7, r5 /* 803B1DBC 003AED1C 7C 68 18 AE */ lbzx r3, r8, r3 /* 803B1DC0 003AED20 7C 68 01 AE */ stbx r3, r8, r0 -/* 803B1DC4 003AED24 4E 80 00 20 */ blr +/* 803B1DC4 003AED24 4E 80 00 20 */ blr lbl_803B1DC8: /* 803B1DC8 003AED28 1C 80 00 86 */ mulli r4, r0, 0x86 -/* 803B1DCC 003AED2C 3C 60 80 56 */ lis r3, lbl_80564D10@ha -/* 803B1DD0 003AED30 38 A3 4D 10 */ addi r5, r3, lbl_80564D10@l +/* 803B1DCC 003AED2C 3C 60 80 56 */ lis r3, fx_ctrl@ha +/* 803B1DD0 003AED30 38 A3 4D 10 */ addi r5, r3, fx_ctrl@l /* 803B1DD4 003AED34 1C 07 00 86 */ mulli r0, r7, 0x86 /* 803B1DD8 003AED38 7C 65 22 14 */ add r3, r5, r4 /* 803B1DDC 003AED3C 7C 83 30 AE */ lbzx r4, r3, r6 /* 803B1DE0 003AED40 7C 65 02 14 */ add r3, r5, r0 /* 803B1DE4 003AED44 7C 83 31 AE */ stbx r4, r3, r6 -/* 803B1DE8 003AED48 4E 80 00 20 */ blr +/* 803B1DE8 003AED48 4E 80 00 20 */ blr .global inpSetMidiLastNote inpSetMidiLastNote: /* 803B1DEC 003AED4C 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 803B1DF0 003AED50 28 00 00 FF */ cmplwi r0, 0xff /* 803B1DF4 003AED54 41 82 00 20 */ beq lbl_803B1E14 -/* 803B1DF8 003AED58 3C C0 80 56 */ lis r6, lbl_80566ED0@ha +/* 803B1DF8 003AED58 3C C0 80 56 */ lis r6, midi_lastNote@ha /* 803B1DFC 003AED5C 54 87 25 36 */ rlwinm r7, r4, 4, 0x14, 0x1b -/* 803B1E00 003AED60 38 86 6E D0 */ addi r4, r6, lbl_80566ED0@l +/* 803B1E00 003AED60 38 86 6E D0 */ addi r4, r6, midi_lastNote@l /* 803B1E04 003AED64 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 803B1E08 003AED68 7C 64 3A 14 */ add r3, r4, r7 /* 803B1E0C 003AED6C 7C A3 01 AE */ stbx r5, r3, r0 -/* 803B1E10 003AED70 4E 80 00 20 */ blr +/* 803B1E10 003AED70 4E 80 00 20 */ blr lbl_803B1E14: -/* 803B1E14 003AED74 3C 80 80 56 */ lis r4, lbl_80566F50@ha +/* 803B1E14 003AED74 3C 80 80 56 */ lis r4, fx_lastNote@ha /* 803B1E18 003AED78 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 803B1E1C 003AED7C 38 64 6F 50 */ addi r3, r4, lbl_80566F50@l +/* 803B1E1C 003AED7C 38 64 6F 50 */ addi r3, r4, fx_lastNote@l /* 803B1E20 003AED80 7C A3 01 AE */ stbx r5, r3, r0 -/* 803B1E24 003AED84 4E 80 00 20 */ blr +/* 803B1E24 003AED84 4E 80 00 20 */ blr .global inpGetMidiLastNote inpGetMidiLastNote: /* 803B1E28 003AED88 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 803B1E2C 003AED8C 28 00 00 FF */ cmplwi r0, 0xff /* 803B1E30 003AED90 41 82 00 20 */ beq lbl_803B1E50 -/* 803B1E34 003AED94 3C A0 80 56 */ lis r5, lbl_80566ED0@ha +/* 803B1E34 003AED94 3C A0 80 56 */ lis r5, midi_lastNote@ha /* 803B1E38 003AED98 54 86 25 36 */ rlwinm r6, r4, 4, 0x14, 0x1b -/* 803B1E3C 003AED9C 38 85 6E D0 */ addi r4, r5, lbl_80566ED0@l +/* 803B1E3C 003AED9C 38 85 6E D0 */ addi r4, r5, midi_lastNote@l /* 803B1E40 003AEDA0 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 803B1E44 003AEDA4 7C 64 32 14 */ add r3, r4, r6 /* 803B1E48 003AEDA8 7C 63 00 AE */ lbzx r3, r3, r0 -/* 803B1E4C 003AEDAC 4E 80 00 20 */ blr +/* 803B1E4C 003AEDAC 4E 80 00 20 */ blr lbl_803B1E50: -/* 803B1E50 003AEDB0 3C 80 80 56 */ lis r4, lbl_80566F50@ha +/* 803B1E50 003AEDB0 3C 80 80 56 */ lis r4, fx_lastNote@ha /* 803B1E54 003AEDB4 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 803B1E58 003AEDB8 38 64 6F 50 */ addi r3, r4, lbl_80566F50@l +/* 803B1E58 003AEDB8 38 64 6F 50 */ addi r3, r4, fx_lastNote@l /* 803B1E5C 003AEDBC 7C 63 00 AE */ lbzx r3, r3, r0 -/* 803B1E60 003AEDC0 4E 80 00 20 */ blr +/* 803B1E60 003AEDC0 4E 80 00 20 */ blr .global _GetInputValue _GetInputValue: @@ -1386,7 +1502,7 @@ lbl_803B22D8: /* 803B22F4 003AF254 80 01 00 34 */ lwz r0, 0x34(r1) /* 803B22F8 003AF258 7C 08 03 A6 */ mtlr r0 /* 803B22FC 003AF25C 38 21 00 30 */ addi r1, r1, 0x30 -/* 803B2300 003AF260 4E 80 00 20 */ blr +/* 803B2300 003AF260 4E 80 00 20 */ blr .global sub_803b2304 sub_803b2304: @@ -1409,7 +1525,7 @@ lbl_803B233C: /* 803B233C 003AF29C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B2340 003AF2A0 7C 08 03 A6 */ mtlr r0 /* 803B2344 003AF2A4 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2348 003AF2A8 4E 80 00 20 */ blr +/* 803B2348 003AF2A8 4E 80 00 20 */ blr .global sub_803b234c sub_803b234c: @@ -1432,7 +1548,7 @@ lbl_803B2384: /* 803B2384 003AF2E4 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B2388 003AF2E8 7C 08 03 A6 */ mtlr r0 /* 803B238C 003AF2EC 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2390 003AF2F0 4E 80 00 20 */ blr +/* 803B2390 003AF2F0 4E 80 00 20 */ blr .global sub_803b2394 sub_803b2394: @@ -1455,7 +1571,7 @@ lbl_803B23CC: /* 803B23CC 003AF32C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B23D0 003AF330 7C 08 03 A6 */ mtlr r0 /* 803B23D4 003AF334 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B23D8 003AF338 4E 80 00 20 */ blr +/* 803B23D8 003AF338 4E 80 00 20 */ blr .global sub_803b23dc sub_803b23dc: @@ -1478,7 +1594,7 @@ lbl_803B2414: /* 803B2414 003AF374 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B2418 003AF378 7C 08 03 A6 */ mtlr r0 /* 803B241C 003AF37C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2420 003AF380 4E 80 00 20 */ blr +/* 803B2420 003AF380 4E 80 00 20 */ blr .global sub_803b2424 sub_803b2424: @@ -1501,7 +1617,7 @@ lbl_803B245C: /* 803B245C 003AF3BC 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B2460 003AF3C0 7C 08 03 A6 */ mtlr r0 /* 803B2464 003AF3C4 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2468 003AF3C8 4E 80 00 20 */ blr +/* 803B2468 003AF3C8 4E 80 00 20 */ blr .global sub_803b246c sub_803b246c: @@ -1524,7 +1640,7 @@ lbl_803B24A4: /* 803B24A4 003AF404 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B24A8 003AF408 7C 08 03 A6 */ mtlr r0 /* 803B24AC 003AF40C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B24B0 003AF410 4E 80 00 20 */ blr +/* 803B24B0 003AF410 4E 80 00 20 */ blr .global inpGetVolume inpGetVolume: @@ -1547,7 +1663,7 @@ lbl_803B24EC: /* 803B24EC 003AF44C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B24F0 003AF450 7C 08 03 A6 */ mtlr r0 /* 803B24F4 003AF454 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B24F8 003AF458 4E 80 00 20 */ blr +/* 803B24F8 003AF458 4E 80 00 20 */ blr .global sub_803b24fc sub_803b24fc: @@ -1570,7 +1686,7 @@ lbl_803B2534: /* 803B2534 003AF494 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B2538 003AF498 7C 08 03 A6 */ mtlr r0 /* 803B253C 003AF49C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2540 003AF4A0 4E 80 00 20 */ blr +/* 803B2540 003AF4A0 4E 80 00 20 */ blr .global sub_803b2544 sub_803b2544: @@ -1593,7 +1709,7 @@ lbl_803B257C: /* 803B257C 003AF4DC 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B2580 003AF4E0 7C 08 03 A6 */ mtlr r0 /* 803B2584 003AF4E4 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2588 003AF4E8 4E 80 00 20 */ blr +/* 803B2588 003AF4E8 4E 80 00 20 */ blr .global sub_803b258c sub_803b258c: @@ -1616,7 +1732,7 @@ lbl_803B25C4: /* 803B25C4 003AF524 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B25C8 003AF528 7C 08 03 A6 */ mtlr r0 /* 803B25CC 003AF52C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B25D0 003AF530 4E 80 00 20 */ blr +/* 803B25D0 003AF530 4E 80 00 20 */ blr .global sub_803b25d4 sub_803b25d4: @@ -1639,7 +1755,7 @@ lbl_803B260C: /* 803B260C 003AF56C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B2610 003AF570 7C 08 03 A6 */ mtlr r0 /* 803B2614 003AF574 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2618 003AF578 4E 80 00 20 */ blr +/* 803B2618 003AF578 4E 80 00 20 */ blr .global sub_803b261c sub_803b261c: @@ -1662,16 +1778,16 @@ lbl_803B2654: /* 803B2654 003AF5B4 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B2658 003AF5B8 7C 08 03 A6 */ mtlr r0 /* 803B265C 003AF5BC 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2660 003AF5C0 4E 80 00 20 */ blr +/* 803B2660 003AF5C0 4E 80 00 20 */ blr .global sub_803b2664 sub_803b2664: /* 803B2664 003AF5C4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803B2668 003AF5C8 7C 08 02 A6 */ mflr r0 -/* 803B266C 003AF5CC 3C E0 80 56 */ lis r7, lbl_80560790@ha +/* 803B266C 003AF5CC 3C E0 80 56 */ lis r7, inpGlobalMIDIDirtyFlags@ha /* 803B2670 003AF5D0 3D 20 80 3F */ lis r9, lbl_803F41E8@ha /* 803B2674 003AF5D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 803B2678 003AF5D8 38 07 07 90 */ addi r0, r7, lbl_80560790@l +/* 803B2678 003AF5D8 38 07 07 90 */ addi r0, r7, inpGlobalMIDIDirtyFlags@l /* 803B267C 003AF5DC 54 C8 34 B2 */ rlwinm r8, r6, 6, 0x12, 0x19 /* 803B2680 003AF5E0 38 E9 41 E8 */ addi r7, r9, lbl_803F41E8@l /* 803B2684 003AF5E4 54 8A 15 BA */ rlwinm r10, r4, 2, 0x16, 0x1d @@ -1691,9 +1807,9 @@ lbl_803B26B8: /* 803B26B8 003AF618 28 04 00 00 */ cmplwi r4, 0 /* 803B26BC 003AF61C 41 82 00 2C */ beq lbl_803B26E8 /* 803B26C0 003AF620 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 803B26C4 003AF624 3C 60 80 55 */ lis r3, lbl_80550F74@ha +/* 803B26C4 003AF624 3C 60 80 55 */ lis r3, inpAuxA@ha /* 803B26C8 003AF628 1C E0 00 90 */ mulli r7, r0, 0x90 -/* 803B26CC 003AF62C 38 83 0F 74 */ addi r4, r3, lbl_80550F74@l +/* 803B26CC 003AF62C 38 83 0F 74 */ addi r4, r3, inpAuxA@l /* 803B26D0 003AF630 38 60 00 00 */ li r3, 0 /* 803B26D4 003AF634 1C 0B 00 24 */ mulli r0, r11, 0x24 /* 803B26D8 003AF638 7C 84 3A 14 */ add r4, r4, r7 @@ -1702,9 +1818,9 @@ lbl_803B26B8: /* 803B26E4 003AF644 48 00 00 24 */ b lbl_803B2708 lbl_803B26E8: /* 803B26E8 003AF648 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 803B26EC 003AF64C 3C 80 80 55 */ lis r4, lbl_80550F74@ha +/* 803B26EC 003AF64C 3C 80 80 55 */ lis r4, inpAuxA@ha /* 803B26F0 003AF650 1C 60 00 90 */ mulli r3, r0, 0x90 -/* 803B26F4 003AF654 38 84 0F 74 */ addi r4, r4, lbl_80550F74@l +/* 803B26F4 003AF654 38 84 0F 74 */ addi r4, r4, inpAuxA@l /* 803B26F8 003AF658 1C 0B 00 24 */ mulli r0, r11, 0x24 /* 803B26FC 003AF65C 7C 64 1A 14 */ add r3, r4, r3 /* 803B2700 003AF660 7C 63 02 14 */ add r3, r3, r0 @@ -1713,16 +1829,16 @@ lbl_803B2708: /* 803B2708 003AF668 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B270C 003AF66C 7C 08 03 A6 */ mtlr r0 /* 803B2710 003AF670 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2714 003AF674 4E 80 00 20 */ blr +/* 803B2714 003AF674 4E 80 00 20 */ blr .global inpGetAuxA inpGetAuxA: /* 803B2718 003AF678 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803B271C 003AF67C 7C 08 02 A6 */ mflr r0 -/* 803B2720 003AF680 3C E0 80 56 */ lis r7, lbl_80560790@ha +/* 803B2720 003AF680 3C E0 80 56 */ lis r7, inpGlobalMIDIDirtyFlags@ha /* 803B2724 003AF684 3D 20 80 3F */ lis r9, lbl_803F41F8@ha /* 803B2728 003AF688 90 01 00 14 */ stw r0, 0x14(r1) -/* 803B272C 003AF68C 38 07 07 90 */ addi r0, r7, lbl_80560790@l +/* 803B272C 003AF68C 38 07 07 90 */ addi r0, r7, inpGlobalMIDIDirtyFlags@l /* 803B2730 003AF690 54 C8 34 B2 */ rlwinm r8, r6, 6, 0x12, 0x19 /* 803B2734 003AF694 38 E9 41 F8 */ addi r7, r9, lbl_803F41F8@l /* 803B2738 003AF698 54 8A 15 BA */ rlwinm r10, r4, 2, 0x16, 0x1d @@ -1742,9 +1858,9 @@ lbl_803B276C: /* 803B276C 003AF6CC 28 04 00 00 */ cmplwi r4, 0 /* 803B2770 003AF6D0 41 82 00 2C */ beq lbl_803B279C /* 803B2774 003AF6D4 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 803B2778 003AF6D8 3C 60 80 55 */ lis r3, lbl_80550AF4@ha +/* 803B2778 003AF6D8 3C 60 80 55 */ lis r3, inpAuxB@ha /* 803B277C 003AF6DC 1C E0 00 90 */ mulli r7, r0, 0x90 -/* 803B2780 003AF6E0 38 83 0A F4 */ addi r4, r3, lbl_80550AF4@l +/* 803B2780 003AF6E0 38 83 0A F4 */ addi r4, r3, inpAuxB@l /* 803B2784 003AF6E4 38 60 00 00 */ li r3, 0 /* 803B2788 003AF6E8 1C 0B 00 24 */ mulli r0, r11, 0x24 /* 803B278C 003AF6EC 7C 84 3A 14 */ add r4, r4, r7 @@ -1753,9 +1869,9 @@ lbl_803B276C: /* 803B2798 003AF6F8 48 00 00 24 */ b lbl_803B27BC lbl_803B279C: /* 803B279C 003AF6FC 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 803B27A0 003AF700 3C 80 80 55 */ lis r4, lbl_80550AF4@ha +/* 803B27A0 003AF700 3C 80 80 55 */ lis r4, inpAuxB@ha /* 803B27A4 003AF704 1C 60 00 90 */ mulli r3, r0, 0x90 -/* 803B27A8 003AF708 38 84 0A F4 */ addi r4, r4, lbl_80550AF4@l +/* 803B27A8 003AF708 38 84 0A F4 */ addi r4, r4, inpAuxB@l /* 803B27AC 003AF70C 1C 0B 00 24 */ mulli r0, r11, 0x24 /* 803B27B0 003AF710 7C 64 1A 14 */ add r3, r4, r3 /* 803B27B4 003AF714 7C 63 02 14 */ add r3, r3, r0 @@ -1764,7 +1880,7 @@ lbl_803B27BC: /* 803B27BC 003AF71C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B27C0 003AF720 7C 08 03 A6 */ mtlr r0 /* 803B27C4 003AF724 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B27C8 003AF728 4E 80 00 20 */ blr +/* 803B27C8 003AF728 4E 80 00 20 */ blr .global sub_803b27cc sub_803b27cc: @@ -1841,11 +1957,11 @@ sub_803b27cc: /* 803B28E4 003AF844 9B A3 00 A8 */ stb r29, 0xa8(r3) /* 803B28E8 003AF848 48 00 01 54 */ b lbl_803B2A3C lbl_803B28EC: -/* 803B28EC 003AF84C 3C 80 80 55 */ lis r4, lbl_80550F74@ha -/* 803B28F0 003AF850 3C 60 80 55 */ lis r3, lbl_80550AF4@ha -/* 803B28F4 003AF854 38 A3 0A F4 */ addi r5, r3, lbl_80550AF4@l +/* 803B28EC 003AF84C 3C 80 80 55 */ lis r4, inpAuxA@ha +/* 803B28F0 003AF850 3C 60 80 55 */ lis r3, inpAuxB@ha +/* 803B28F4 003AF854 38 A3 0A F4 */ addi r5, r3, inpAuxB@l /* 803B28F8 003AF858 38 00 00 02 */ li r0, 2 -/* 803B28FC 003AF85C 38 84 0F 74 */ addi r4, r4, lbl_80550F74@l +/* 803B28FC 003AF85C 38 84 0F 74 */ addi r4, r4, inpAuxA@l /* 803B2900 003AF860 38 60 00 00 */ li r3, 0 /* 803B2904 003AF864 7C 09 03 A6 */ mtctr r0 lbl_803B2908: @@ -1884,9 +2000,9 @@ lbl_803B2908: /* 803B2988 003AF8E8 98 65 02 3E */ stb r3, 0x23e(r5) /* 803B298C 003AF8EC 38 A5 02 40 */ addi r5, r5, 0x240 /* 803B2990 003AF8F0 42 00 FF 78 */ bdnz lbl_803B2908 -/* 803B2994 003AF8F4 3C 60 80 56 */ lis r3, lbl_80560790@ha +/* 803B2994 003AF8F4 3C 60 80 56 */ lis r3, inpGlobalMIDIDirtyFlags@ha /* 803B2998 003AF8F8 38 00 00 04 */ li r0, 4 -/* 803B299C 003AF8FC 38 A3 07 90 */ addi r5, r3, lbl_80560790@l +/* 803B299C 003AF8FC 38 A3 07 90 */ addi r5, r3, inpGlobalMIDIDirtyFlags@l /* 803B29A0 003AF900 38 60 00 00 */ li r3, 0 /* 803B29A4 003AF904 7C 09 03 A6 */ mtctr r0 lbl_803B29A8: @@ -1932,38 +2048,38 @@ lbl_803B2A3C: /* 803B2A40 003AF9A0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 803B2A44 003AF9A4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 803B2A48 003AF9A8 38 21 00 20 */ addi r1, r1, 0x20 -/* 803B2A4C 003AF9AC 4E 80 00 20 */ blr +/* 803B2A4C 003AF9AC 4E 80 00 20 */ blr .global inpTranslateExCtrl inpTranslateExCtrl: /* 803B2A50 003AF9B0 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 803B2A54 003AF9B4 38 04 FF 80 */ addi r0, r4, -128 /* 803B2A58 003AF9B8 28 00 00 08 */ cmplwi r0, 8 -/* 803B2A5C 003AF9BC 4D 81 00 20 */ bgtlr +/* 803B2A5C 003AF9BC 4D 81 00 20 */ bgtlr /* 803B2A60 003AF9C0 3C 80 80 3F */ lis r4, lbl_803F4208@ha /* 803B2A64 003AF9C4 54 00 10 3A */ slwi r0, r0, 2 /* 803B2A68 003AF9C8 38 84 42 08 */ addi r4, r4, lbl_803F4208@l /* 803B2A6C 003AF9CC 7C 04 00 2E */ lwzx r0, r4, r0 /* 803B2A70 003AF9D0 7C 09 03 A6 */ mtctr r0 -/* 803B2A74 003AF9D4 4E 80 04 20 */ bctr +/* 803B2A74 003AF9D4 4E 80 04 20 */ bctr /* 803B2A78 003AF9D8 38 60 00 80 */ li r3, 0x80 -/* 803B2A7C 003AF9DC 4E 80 00 20 */ blr +/* 803B2A7C 003AF9DC 4E 80 00 20 */ blr /* 803B2A80 003AF9E0 38 60 00 82 */ li r3, 0x82 -/* 803B2A84 003AF9E4 4E 80 00 20 */ blr +/* 803B2A84 003AF9E4 4E 80 00 20 */ blr /* 803B2A88 003AF9E8 38 60 00 A0 */ li r3, 0xa0 -/* 803B2A8C 003AF9EC 4E 80 00 20 */ blr +/* 803B2A8C 003AF9EC 4E 80 00 20 */ blr /* 803B2A90 003AF9F0 38 60 00 A1 */ li r3, 0xa1 -/* 803B2A94 003AF9F4 4E 80 00 20 */ blr +/* 803B2A94 003AF9F4 4E 80 00 20 */ blr /* 803B2A98 003AF9F8 38 60 00 83 */ li r3, 0x83 -/* 803B2A9C 003AF9FC 4E 80 00 20 */ blr +/* 803B2A9C 003AF9FC 4E 80 00 20 */ blr /* 803B2AA0 003AFA00 38 60 00 84 */ li r3, 0x84 -/* 803B2AA4 003AFA04 4E 80 00 20 */ blr +/* 803B2AA4 003AFA04 4E 80 00 20 */ blr /* 803B2AA8 003AFA08 38 60 00 A2 */ li r3, 0xa2 -/* 803B2AAC 003AFA0C 4E 80 00 20 */ blr +/* 803B2AAC 003AFA0C 4E 80 00 20 */ blr /* 803B2AB0 003AFA10 38 60 00 A3 */ li r3, 0xa3 -/* 803B2AB4 003AFA14 4E 80 00 20 */ blr +/* 803B2AB4 003AFA14 4E 80 00 20 */ blr /* 803B2AB8 003AFA18 38 60 00 A4 */ li r3, 0xa4 -/* 803B2ABC 003AFA1C 4E 80 00 20 */ blr +/* 803B2ABC 003AFA1C 4E 80 00 20 */ blr .global inpGetExCtrl inpGetExCtrl: @@ -1980,7 +2096,7 @@ inpGetExCtrl: /* 803B2AE8 003AFA48 38 A5 42 2C */ addi r5, r5, lbl_803F422C@l /* 803B2AEC 003AFA4C 7C 05 00 2E */ lwzx r0, r5, r0 /* 803B2AF0 003AFA50 7C 09 03 A6 */ mtctr r0 -/* 803B2AF4 003AFA54 4E 80 04 20 */ bctr +/* 803B2AF4 003AFA54 4E 80 04 20 */ bctr /* 803B2AF8 003AFA58 38 C0 00 80 */ li r6, 0x80 /* 803B2AFC 003AFA5C 48 00 00 40 */ b lbl_803B2B3C /* 803B2B00 003AFA60 38 C0 00 82 */ li r6, 0x82 @@ -2036,7 +2152,7 @@ lbl_803B2BAC: /* 803B2BAC 003AFB0C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803B2BB0 003AFB10 7C 08 03 A6 */ mtlr r0 /* 803B2BB4 003AFB14 38 21 00 10 */ addi r1, r1, 0x10 -/* 803B2BB8 003AFB18 4E 80 00 20 */ blr +/* 803B2BB8 003AFB18 4E 80 00 20 */ blr .global inpSetExCtrl inpSetExCtrl: @@ -2179,4 +2295,4 @@ lbl_803B2D80: /* 803B2D90 003AFCF0 83 81 00 10 */ lwz r28, 0x10(r1) /* 803B2D94 003AFCF4 7C 08 03 A6 */ mtlr r0 /* 803B2D98 003AFCF8 38 21 00 20 */ addi r1, r1, 0x20 -/* 803B2D9C 003AFCFC 4E 80 00 20 */ blr +/* 803B2D9C 003AFCFC 4E 80 00 20 */ blr diff --git a/asm/musyx/snd_synthapi.s b/asm/musyx/snd_synthapi.s index a8043fa1..b06dbd66 100644 --- a/asm/musyx/snd_synthapi.s +++ b/asm/musyx/snd_synthapi.s @@ -89,9 +89,9 @@ sndFXStartEx: /* 8039C2B4 00399214 93 81 00 10 */ stw r28, 0x10(r1) /* 8039C2B8 00399218 7C 7C 1B 78 */ mr r28, r3 /* 8039C2BC 0039921C 48 01 8E 01 */ bl hwDisableIrq -/* 8039C2C0 00399220 3C 60 80 55 */ lis r3, lbl_80550AA4@ha +/* 8039C2C0 00399220 3C 60 80 55 */ lis r3, synthITDDefault@ha /* 8039C2C4 00399224 57 E0 0D FC */ rlwinm r0, r31, 1, 0x17, 0x1e -/* 8039C2C8 00399228 38 83 0A A4 */ addi r4, r3, lbl_80550AA4@l +/* 8039C2C8 00399228 38 83 0A A4 */ addi r4, r3, synthITDDefault@l /* 8039C2CC 0039922C 7F E6 FB 78 */ mr r6, r31 /* 8039C2D0 00399230 7C A4 02 14 */ add r5, r4, r0 /* 8039C2D4 00399234 7F 83 E3 78 */ mr r3, r28 @@ -297,22 +297,22 @@ sndSetAuxProcessingCallbacks: /* 8039C58C 003994EC 41 82 00 58 */ beq lbl_8039C5E4 /* 8039C590 003994F0 7E E3 BB 78 */ mr r3, r23 /* 8039C594 003994F4 4B FF 87 9D */ bl seqGetPrivateId -/* 8039C598 003994F8 3C A0 80 55 */ lis r5, lbl_80550A44@ha -/* 8039C59C 003994FC 3C 80 80 55 */ lis r4, lbl_80550A24@ha +/* 8039C598 003994F8 3C A0 80 55 */ lis r5, synthAuxACallback@ha +/* 8039C59C 003994FC 3C 80 80 55 */ lis r4, synthAuxAUser@ha /* 8039C5A0 00399500 38 CD AE 5C */ addi r6, r13, synthAuxAMIDISet@sda21 /* 8039C5A4 00399504 57 00 10 3A */ slwi r0, r24, 2 -/* 8039C5A8 00399508 38 A5 0A 44 */ addi r5, r5, lbl_80550A44@l -/* 8039C5AC 0039950C 38 84 0A 24 */ addi r4, r4, lbl_80550A24@l +/* 8039C5A8 00399508 38 A5 0A 44 */ addi r5, r5, synthAuxACallback@l +/* 8039C5AC 0039950C 38 84 0A 24 */ addi r4, r4, synthAuxAUser@l /* 8039C5B0 00399510 7C 66 C1 AE */ stbx r3, r6, r24 /* 8039C5B4 00399514 7F 45 01 2E */ stwx r26, r5, r0 /* 8039C5B8 00399518 7F 64 01 2E */ stwx r27, r4, r0 /* 8039C5BC 0039951C 48 00 00 28 */ b lbl_8039C5E4 lbl_8039C5C0: -/* 8039C5C0 00399520 3C 60 80 55 */ lis r3, lbl_80550A44@ha +/* 8039C5C0 00399520 3C 60 80 55 */ lis r3, synthAuxACallback@ha /* 8039C5C4 00399524 57 27 06 3E */ clrlwi r7, r25, 0x18 /* 8039C5C8 00399528 57 25 15 BA */ rlwinm r5, r25, 2, 0x16, 0x1d /* 8039C5CC 0039952C 38 C0 00 00 */ li r6, 0 -/* 8039C5D0 00399530 38 83 0A 44 */ addi r4, r3, lbl_80550A44@l +/* 8039C5D0 00399530 38 83 0A 44 */ addi r4, r3, synthAuxACallback@l /* 8039C5D4 00399534 38 00 00 FF */ li r0, 0xff /* 8039C5D8 00399538 38 6D AE 64 */ addi r3, r13, synthAuxAMIDI@sda21 /* 8039C5DC 0039953C 7C C4 29 2E */ stwx r6, r4, r5 @@ -328,22 +328,22 @@ lbl_8039C5E4: /* 8039C600 00399560 41 82 00 58 */ beq lbl_8039C658 /* 8039C604 00399564 7F E3 FB 78 */ mr r3, r31 /* 8039C608 00399568 4B FF 87 29 */ bl seqGetPrivateId -/* 8039C60C 0039956C 3C A0 80 55 */ lis r5, lbl_80550A84@ha -/* 8039C610 00399570 3C 80 80 55 */ lis r4, lbl_80550A64@ha +/* 8039C60C 0039956C 3C A0 80 55 */ lis r5, synthAuxBCallback@ha +/* 8039C610 00399570 3C 80 80 55 */ lis r4, synthAuxBUser@ha /* 8039C614 00399574 38 CD AE 4C */ addi r6, r13, synthAuxBMidiSet@sda21 /* 8039C618 00399578 57 00 10 3A */ slwi r0, r24, 2 -/* 8039C61C 0039957C 38 A5 0A 84 */ addi r5, r5, lbl_80550A84@l -/* 8039C620 00399580 38 84 0A 64 */ addi r4, r4, lbl_80550A64@l +/* 8039C61C 0039957C 38 A5 0A 84 */ addi r5, r5, synthAuxBCallback@l +/* 8039C620 00399580 38 84 0A 64 */ addi r4, r4, synthAuxBUser@l /* 8039C624 00399584 7C 66 C1 AE */ stbx r3, r6, r24 /* 8039C628 00399588 7F 85 01 2E */ stwx r28, r5, r0 /* 8039C62C 0039958C 7F A4 01 2E */ stwx r29, r4, r0 /* 8039C630 00399590 48 00 00 28 */ b lbl_8039C658 lbl_8039C634: -/* 8039C634 00399594 3C 60 80 55 */ lis r3, lbl_80550A84@ha +/* 8039C634 00399594 3C 60 80 55 */ lis r3, synthAuxBCallback@ha /* 8039C638 00399598 57 27 06 3E */ clrlwi r7, r25, 0x18 /* 8039C63C 0039959C 57 25 15 BA */ rlwinm r5, r25, 2, 0x16, 0x1d /* 8039C640 003995A0 38 C0 00 00 */ li r6, 0 -/* 8039C644 003995A4 38 83 0A 84 */ addi r4, r3, lbl_80550A84@l +/* 8039C644 003995A4 38 83 0A 84 */ addi r4, r3, synthAuxBCallback@l /* 8039C648 003995A8 38 00 00 FF */ li r0, 0xff /* 8039C64C 003995AC 38 6D AE 54 */ addi r3, r13, synthAuxBMIDI@sda21 /* 8039C650 003995B0 7C C4 29 2E */ stwx r6, r4, r5 @@ -375,18 +375,18 @@ sub_8039c68c: /* 8039C6A8 00399608 93 A1 00 14 */ stw r29, 0x14(r1) /* 8039C6AC 0039960C 7C 7D 1B 78 */ mr r29, r3 /* 8039C6B0 00399610 48 01 8A 0D */ bl hwDisableIrq -/* 8039C6B4 00399614 3C 60 80 55 */ lis r3, lbl_80550AA4@ha -/* 8039C6B8 00399618 3C 80 80 55 */ lis r4, lbl_80550A44@ha -/* 8039C6BC 0039961C 38 C3 0A A4 */ addi r6, r3, lbl_80550AA4@l +/* 8039C6B4 00399614 3C 60 80 55 */ lis r3, synthITDDefault@ha +/* 8039C6B8 00399618 3C 80 80 55 */ lis r4, synthAuxACallback@ha +/* 8039C6BC 0039961C 38 C3 0A A4 */ addi r6, r3, synthITDDefault@l /* 8039C6C0 00399620 57 AC 0D FC */ rlwinm r12, r29, 1, 0x17, 0x1e /* 8039C6C4 00399624 7C 66 62 14 */ add r3, r6, r12 /* 8039C6C8 00399628 39 20 00 00 */ li r9, 0 /* 8039C6CC 0039962C 99 23 00 01 */ stb r9, 1(r3) -/* 8039C6D0 00399630 3C 60 80 55 */ lis r3, lbl_80550A84@ha +/* 8039C6D0 00399630 3C 60 80 55 */ lis r3, synthAuxBCallback@ha /* 8039C6D4 00399634 57 AB 06 3E */ clrlwi r11, r29, 0x18 /* 8039C6D8 00399638 57 AA 15 BA */ rlwinm r10, r29, 2, 0x16, 0x1d -/* 8039C6DC 0039963C 38 84 0A 44 */ addi r4, r4, lbl_80550A44@l -/* 8039C6E0 00399640 38 A3 0A 84 */ addi r5, r3, lbl_80550A84@l +/* 8039C6DC 0039963C 38 84 0A 44 */ addi r4, r4, synthAuxACallback@l +/* 8039C6E0 00399640 38 A3 0A 84 */ addi r5, r3, synthAuxBCallback@l /* 8039C6E4 00399644 38 00 00 FF */ li r0, 0xff /* 8039C6E8 00399648 39 0D AE 64 */ addi r8, r13, synthAuxAMIDI@sda21 /* 8039C6EC 0039964C 38 ED AE 54 */ addi r7, r13, synthAuxBMIDI@sda21 @@ -451,13 +451,13 @@ lbl_8039C7B8: /* 8039C7BC 0039971C 7C 1B 00 40 */ cmplw r27, r0 /* 8039C7C0 00399720 41 80 FF A4 */ blt lbl_8039C764 /* 8039C7C4 00399724 48 01 88 F9 */ bl hwDisableIrq -/* 8039C7C8 00399728 3C 80 80 55 */ lis r4, lbl_80550A44@ha -/* 8039C7CC 0039972C 3C 60 80 55 */ lis r3, lbl_80550A84@ha +/* 8039C7C8 00399728 3C 80 80 55 */ lis r4, synthAuxACallback@ha +/* 8039C7CC 0039972C 3C 60 80 55 */ lis r3, synthAuxBCallback@ha /* 8039C7D0 00399730 57 E9 06 3E */ clrlwi r9, r31, 0x18 /* 8039C7D4 00399734 57 E8 15 BA */ rlwinm r8, r31, 2, 0x16, 0x1d -/* 8039C7D8 00399738 38 C4 0A 44 */ addi r6, r4, lbl_80550A44@l +/* 8039C7D8 00399738 38 C4 0A 44 */ addi r6, r4, synthAuxACallback@l /* 8039C7DC 0039973C 38 E0 00 00 */ li r7, 0 -/* 8039C7E0 00399740 38 A3 0A 84 */ addi r5, r3, lbl_80550A84@l +/* 8039C7E0 00399740 38 A3 0A 84 */ addi r5, r3, synthAuxBCallback@l /* 8039C7E4 00399744 38 00 00 FF */ li r0, 0xff /* 8039C7E8 00399748 38 8D AE 64 */ addi r4, r13, synthAuxAMIDI@sda21 /* 8039C7EC 0039974C 38 6D AE 54 */ addi r3, r13, synthAuxBMIDI@sda21 diff --git a/asm/musyx/stream.s b/asm/musyx/stream.s index 85545bc6..a391751a 100644 --- a/asm/musyx/stream.s +++ b/asm/musyx/stream.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global streamInfo +streamInfo: + .skip 0x1900 + .section .sbss .balign 4 nextPublicID: @@ -27,9 +32,9 @@ streamInit: /* 8039C890 003997F0 38 C3 FF F8 */ addi r6, r3, -8 /* 8039C894 003997F4 40 81 00 4C */ ble lbl_8039C8E0 /* 8039C898 003997F8 38 06 00 07 */ addi r0, r6, 7 -/* 8039C89C 003997FC 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039C89C 003997FC 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039C8A0 00399800 54 00 E8 FE */ srwi r0, r0, 3 -/* 8039C8A4 00399804 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039C8A4 00399804 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039C8A8 00399808 7C 09 03 A6 */ mtctr r0 /* 8039C8AC 0039980C 2C 06 00 00 */ cmpwi r6, 0 /* 8039C8B0 00399810 40 81 00 30 */ ble lbl_8039C8E0 @@ -48,9 +53,9 @@ lbl_8039C8B4: lbl_8039C8E0: /* 8039C8E0 00399840 88 C4 02 10 */ lbz r6, 0x210(r4) /* 8039C8E4 00399844 1C A7 00 64 */ mulli r5, r7, 0x64 -/* 8039C8E8 00399848 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039C8E8 00399848 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039C8EC 0039984C 7C 07 30 50 */ subf r0, r7, r6 -/* 8039C8F0 00399850 38 83 13 F8 */ addi r4, r3, lbl_805513F8@l +/* 8039C8F0 00399850 38 83 13 F8 */ addi r4, r3, streamInfo@l /* 8039C8F4 00399854 38 60 00 00 */ li r3, 0 /* 8039C8F8 00399858 7C 84 2A 14 */ add r4, r4, r5 /* 8039C8FC 0039985C 7C 09 03 A6 */ mtctr r0 @@ -118,8 +123,8 @@ streamHandle: /* 8039C9D4 00399934 48 00 08 6C */ b lbl_8039D240 lbl_8039C9D8: /* 8039C9D8 00399938 88 8D AE 94 */ lbz r4, streamCallDelay@sda21(r13) -/* 8039C9DC 0039993C 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039C9E0 00399940 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039C9DC 0039993C 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039C9E0 00399940 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039C9E4 00399944 3C 60 80 55 */ lis r3, synthInfo@ha /* 8039C9E8 00399948 98 8D AE 95 */ stb r4, streamCallCnt@sda21(r13) /* 8039C9EC 0039994C 7C 1C 03 78 */ mr r28, r0 @@ -704,9 +709,9 @@ streamKill: /* 8039D25C 0039A1BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8039D260 0039A1C0 7C 08 02 A6 */ mflr r0 /* 8039D264 0039A1C4 1C 83 00 64 */ mulli r4, r3, 0x64 -/* 8039D268 0039A1C8 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039D268 0039A1C8 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039D26C 0039A1CC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8039D270 0039A1D0 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039D270 0039A1D0 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039D274 0039A1D4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8039D278 0039A1D8 7F E0 22 14 */ add r31, r0, r4 /* 8039D27C 0039A1DC 88 1F 00 0C */ lbz r0, 0xc(r31) @@ -740,9 +745,9 @@ lbl_8039D2CC: .global GetPrivateIndex GetPrivateIndex: -/* 8039D2E0 0039A240 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 8039D2E0 0039A240 3C 80 80 55 */ lis r4, streamInfo@ha /* 8039D2E4 0039A244 38 00 00 08 */ li r0, 8 -/* 8039D2E8 0039A248 38 84 13 F8 */ addi r4, r4, lbl_805513F8@l +/* 8039D2E8 0039A248 38 84 13 F8 */ addi r4, r4, streamInfo@l /* 8039D2EC 0039A24C 38 A0 00 00 */ li r5, 0 /* 8039D2F0 0039A250 7C 09 03 A6 */ mtctr r0 lbl_8039D2F4: @@ -851,9 +856,9 @@ sndStreamARAMUpdate: /* 8039D460 0039A3C0 7C DC 33 78 */ mr r28, r6 /* 8039D464 0039A3C4 7C FD 3B 78 */ mr r29, r7 /* 8039D468 0039A3C8 48 01 7C 55 */ bl hwDisableIrq -/* 8039D46C 0039A3CC 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039D46C 0039A3CC 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039D470 0039A3D0 38 00 00 08 */ li r0, 8 -/* 8039D474 0039A3D4 38 83 13 F8 */ addi r4, r3, lbl_805513F8@l +/* 8039D474 0039A3D4 38 83 13 F8 */ addi r4, r3, streamInfo@l /* 8039D478 0039A3D8 38 60 00 00 */ li r3, 0 /* 8039D47C 0039A3DC 7C 09 03 A6 */ mtctr r0 lbl_8039D480: @@ -944,8 +949,8 @@ lbl_8039D5A8: /* 8039D5AC 0039A50C 28 00 FF FF */ cmplwi r0, 0xffff /* 8039D5B0 0039A510 41 82 01 58 */ beq lbl_8039D708 /* 8039D5B4 0039A514 1F E3 00 64 */ mulli r31, r3, 0x64 -/* 8039D5B8 0039A518 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039D5BC 0039A51C 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039D5B8 0039A518 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039D5BC 0039A51C 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039D5C0 0039A520 7F C0 FA 14 */ add r30, r0, r31 /* 8039D5C4 0039A524 88 1E 00 0D */ lbz r0, 0xd(r30) /* 8039D5C8 0039A528 3B DE 00 0D */ addi r30, r30, 0xd @@ -989,9 +994,9 @@ lbl_8039D5F8: lbl_8039D658: /* 8039D658 0039A5B8 28 1B 00 00 */ cmplwi r27, 0 /* 8039D65C 0039A5BC 41 82 00 2C */ beq lbl_8039D688 -/* 8039D660 0039A5C0 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039D660 0039A5C0 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039D664 0039A5C4 7F 44 D3 78 */ mr r4, r26 -/* 8039D668 0039A5C8 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039D668 0039A5C8 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039D66C 0039A5CC 7F 65 DB 78 */ mr r5, r27 /* 8039D670 0039A5D0 7C C0 FA 14 */ add r6, r0, r31 /* 8039D674 0039A5D4 38 E0 00 00 */ li r7, 0 @@ -1002,9 +1007,9 @@ lbl_8039D658: lbl_8039D688: /* 8039D688 0039A5E8 28 1D 00 00 */ cmplwi r29, 0 /* 8039D68C 0039A5EC 41 82 00 2C */ beq lbl_8039D6B8 -/* 8039D690 0039A5F0 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039D690 0039A5F0 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039D694 0039A5F4 7F 84 E3 78 */ mr r4, r28 -/* 8039D698 0039A5F8 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039D698 0039A5F8 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039D69C 0039A5FC 7F A5 EB 78 */ mr r5, r29 /* 8039D6A0 0039A600 7C C0 FA 14 */ add r6, r0, r31 /* 8039D6A4 0039A604 38 E0 00 00 */ li r7, 0 @@ -1016,8 +1021,8 @@ lbl_8039D6B8: /* 8039D6B8 0039A618 88 1E 00 00 */ lbz r0, 0(r30) /* 8039D6BC 0039A61C 28 00 00 01 */ cmplwi r0, 1 /* 8039D6C0 0039A620 40 82 00 48 */ bne lbl_8039D708 -/* 8039D6C4 0039A624 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039D6C8 0039A628 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039D6C4 0039A624 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039D6C8 0039A628 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039D6CC 0039A62C 7C 80 FA 14 */ add r4, r0, r31 /* 8039D6D0 0039A630 80 64 00 14 */ lwz r3, 0x14(r4) /* 8039D6D4 0039A634 38 A4 00 0F */ addi r5, r4, 0xf @@ -1090,9 +1095,9 @@ streamOutputModeChanged: /* 8039D7AC 0039A70C 93 C1 00 28 */ stw r30, 0x28(r1) /* 8039D7B0 0039A710 93 A1 00 24 */ stw r29, 0x24(r1) /* 8039D7B4 0039A714 48 01 79 09 */ bl hwDisableIrq -/* 8039D7B8 0039A718 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 8039D7B8 0039A718 3C 80 80 55 */ lis r4, streamInfo@ha /* 8039D7BC 0039A71C 3C 60 80 55 */ lis r3, synthInfo@ha -/* 8039D7C0 0039A720 3B C4 13 F8 */ addi r30, r4, lbl_805513F8@l +/* 8039D7C0 0039A720 3B C4 13 F8 */ addi r30, r4, streamInfo@l /* 8039D7C4 0039A724 3B A0 00 00 */ li r29, 0 /* 8039D7C8 0039A728 3B E3 00 50 */ addi r31, r3, synthInfo@l /* 8039D7CC 0039A72C 48 00 00 D4 */ b lbl_8039D8A0 @@ -1187,9 +1192,9 @@ sndStreamAllocEx: /* 8039D910 0039A870 7D 33 4B 78 */ mr r19, r9 /* 8039D914 0039A874 7D 54 53 78 */ mr r20, r10 /* 8039D918 0039A878 48 01 77 A5 */ bl hwDisableIrq -/* 8039D91C 0039A87C 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039D91C 0039A87C 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039D920 0039A880 38 00 00 08 */ li r0, 8 -/* 8039D924 0039A884 38 C3 13 F8 */ addi r6, r3, lbl_805513F8@l +/* 8039D924 0039A884 38 C3 13 F8 */ addi r6, r3, streamInfo@l /* 8039D928 0039A888 38 E0 00 00 */ li r7, 0 /* 8039D92C 0039A88C 7C C3 33 78 */ mr r3, r6 /* 8039D930 0039A890 7C 09 03 A6 */ mtctr r0 @@ -1330,18 +1335,18 @@ lbl_8039DB14: /* 8039DB14 0039AA74 28 03 00 40 */ cmplwi r3, 0x40 /* 8039DB18 0039AA78 40 82 FE CC */ bne lbl_8039D9E4 /* 8039DB1C 0039AA7C 1E 07 00 64 */ mulli r16, r7, 0x64 -/* 8039DB20 0039AA80 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039DB20 0039AA80 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039DB24 0039AA84 90 8D AE 90 */ stw r4, nextPublicID@sda21(r13) /* 8039DB28 0039AA88 7E E4 BB 78 */ mr r4, r23 -/* 8039DB2C 0039AA8C 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039DB2C 0039AA8C 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039DB30 0039AA90 7C A0 82 14 */ add r5, r0, r16 /* 8039DB34 0039AA94 92 25 00 04 */ stw r17, 4(r5) /* 8039DB38 0039AA98 7F A3 EB 78 */ mr r3, r29 /* 8039DB3C 0039AA9C 92 E5 00 08 */ stw r23, 8(r5) /* 8039DB40 0039AAA0 48 00 04 A5 */ bl sndStreamAllocLength -/* 8039DB44 0039AAA4 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 8039DB44 0039AAA4 3C 80 80 55 */ lis r4, streamInfo@ha /* 8039DB48 0039AAA8 56 E0 07 FF */ clrlwi. r0, r23, 0x1f -/* 8039DB4C 0039AAAC 38 84 13 F8 */ addi r4, r4, lbl_805513F8@l +/* 8039DB4C 0039AAAC 38 84 13 F8 */ addi r4, r4, streamInfo@l /* 8039DB50 0039AAB0 7C 84 82 14 */ add r4, r4, r16 /* 8039DB54 0039AAB4 38 00 FF FF */ li r0, -1 /* 8039DB58 0039AAB8 93 84 00 14 */ stw r28, 0x14(r4) @@ -1387,9 +1392,9 @@ lbl_8039DB14: /* 8039DBF8 0039AB58 B0 A4 00 4A */ sth r5, 0x4a(r4) /* 8039DBFC 0039AB5C B0 04 00 24 */ sth r0, 0x24(r4) lbl_8039DC00: -/* 8039DC00 0039AB60 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 8039DC00 0039AB60 3C 80 80 55 */ lis r4, streamInfo@ha /* 8039DC04 0039AB64 38 A0 00 01 */ li r5, 1 -/* 8039DC08 0039AB68 38 04 13 F8 */ addi r0, r4, lbl_805513F8@l +/* 8039DC08 0039AB68 38 04 13 F8 */ addi r0, r4, streamInfo@l /* 8039DC0C 0039AB6C 7C 80 82 14 */ add r4, r0, r16 /* 8039DC10 0039AB70 98 A4 00 0D */ stb r5, 0xd(r4) /* 8039DC14 0039AB74 48 00 00 0C */ b lbl_8039DC20 @@ -1397,9 +1402,9 @@ lbl_8039DC18: /* 8039DC18 0039AB78 38 00 00 00 */ li r0, 0 /* 8039DC1C 0039AB7C 98 04 00 0D */ stb r0, 0xd(r4) lbl_8039DC20: -/* 8039DC20 0039AB80 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 8039DC20 0039AB80 3C 80 80 55 */ lis r4, streamInfo@ha /* 8039DC24 0039AB84 80 AD AE 74 */ lwz r5, synthFlags@sda21(r13) -/* 8039DC28 0039AB88 38 04 13 F8 */ addi r0, r4, lbl_805513F8@l +/* 8039DC28 0039AB88 38 04 13 F8 */ addi r0, r4, streamInfo@l /* 8039DC2C 0039AB8C 7E 68 9B 78 */ mr r8, r19 /* 8039DC30 0039AB90 7C 80 82 14 */ add r4, r0, r16 /* 8039DC34 0039AB94 7E 47 93 78 */ mr r7, r18 @@ -1418,9 +1423,9 @@ lbl_8039DC60: /* 8039DC64 0039ABC4 40 82 00 08 */ bne lbl_8039DC6C /* 8039DC68 0039ABC8 39 00 00 00 */ li r8, 0 lbl_8039DC6C: -/* 8039DC6C 0039ABCC 3C A0 80 55 */ lis r5, lbl_805513F8@ha +/* 8039DC6C 0039ABCC 3C A0 80 55 */ lis r5, streamInfo@ha /* 8039DC70 0039ABD0 38 80 FF FF */ li r4, -1 -/* 8039DC74 0039ABD4 38 C5 13 F8 */ addi r6, r5, lbl_805513F8@l +/* 8039DC74 0039ABD4 38 C5 13 F8 */ addi r6, r5, streamInfo@l /* 8039DC78 0039ABD8 38 00 00 03 */ li r0, 3 /* 8039DC7C 0039ABDC 7C A6 82 14 */ add r5, r6, r16 /* 8039DC80 0039ABE0 9B E5 00 59 */ stb r31, 0x59(r5) @@ -1433,9 +1438,9 @@ lbl_8039DC6C: /* 8039DC9C 0039ABFC 7C 86 81 2E */ stwx r4, r6, r16 /* 8039DCA0 0039AC00 98 05 00 0C */ stb r0, 0xc(r5) /* 8039DCA4 0039AC04 48 01 60 01 */ bl sub_803b3ca4 -/* 8039DCA8 0039AC08 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 8039DCA8 0039AC08 3C 80 80 55 */ lis r4, streamInfo@ha /* 8039DCAC 0039AC0C 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8039DCB0 0039AC10 38 84 13 F8 */ addi r4, r4, lbl_805513F8@l +/* 8039DCB0 0039AC10 38 84 13 F8 */ addi r4, r4, streamInfo@l /* 8039DCB4 0039AC14 7C 84 82 14 */ add r4, r4, r16 /* 8039DCB8 0039AC18 28 00 00 FF */ cmplwi r0, 0xff /* 8039DCBC 0039AC1C 98 64 00 0E */ stb r3, 0xe(r4) @@ -1561,9 +1566,9 @@ lbl_8039DDC8: /* 8039DE70 0039ADD0 38 60 FF FF */ li r3, -1 /* 8039DE74 0039ADD4 48 00 01 58 */ b lbl_8039DFCC lbl_8039DE78: -/* 8039DE78 0039ADD8 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 8039DE78 0039ADD8 3C 80 80 55 */ lis r4, streamInfo@ha /* 8039DE7C 0039ADDC 38 00 00 08 */ li r0, 8 -/* 8039DE80 0039ADE0 38 A4 13 F8 */ addi r5, r4, lbl_805513F8@l +/* 8039DE80 0039ADE0 38 A4 13 F8 */ addi r5, r4, streamInfo@l /* 8039DE84 0039ADE4 38 80 00 00 */ li r4, 0 /* 8039DE88 0039ADE8 7C 09 03 A6 */ mtctr r0 lbl_8039DE8C: @@ -1651,8 +1656,8 @@ lbl_8039DFA4: /* 8039DFB0 0039AF10 38 80 FF FF */ li r4, -1 lbl_8039DFB4: /* 8039DFB4 0039AF14 1C 04 00 64 */ mulli r0, r4, 0x64 -/* 8039DFB8 0039AF18 3C 80 80 55 */ lis r4, lbl_805513F8@ha -/* 8039DFBC 0039AF1C 38 84 13 F8 */ addi r4, r4, lbl_805513F8@l +/* 8039DFB8 0039AF18 3C 80 80 55 */ lis r4, streamInfo@ha +/* 8039DFBC 0039AF1C 38 84 13 F8 */ addi r4, r4, streamInfo@l /* 8039DFC0 0039AF20 7C 64 01 2E */ stwx r3, r4, r0 lbl_8039DFC4: /* 8039DFC4 0039AF24 48 01 70 C1 */ bl hwEnableIrq @@ -1696,9 +1701,9 @@ sndStreamADPCMParameter: /* 8039E03C 0039AF9C 7C 7A 1B 78 */ mr r26, r3 /* 8039E040 0039AFA0 7C 9B 23 78 */ mr r27, r4 /* 8039E044 0039AFA4 48 01 70 79 */ bl hwDisableIrq -/* 8039E048 0039AFA8 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039E048 0039AFA8 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039E04C 0039AFAC 38 00 00 08 */ li r0, 8 -/* 8039E050 0039AFB0 3B E3 13 F8 */ addi r31, r3, lbl_805513F8@l +/* 8039E050 0039AFB0 3B E3 13 F8 */ addi r31, r3, streamInfo@l /* 8039E054 0039AFB4 38 C0 00 00 */ li r6, 0 /* 8039E058 0039AFB8 7F E3 FB 78 */ mr r3, r31 /* 8039E05C 0039AFBC 7C 09 03 A6 */ mtctr r0 @@ -1789,9 +1794,9 @@ lbl_8039E188: /* 8039E188 0039B0E8 3C 06 00 01 */ addis r0, r6, 1 /* 8039E18C 0039B0EC 28 00 FF FF */ cmplwi r0, 0xffff /* 8039E190 0039B0F0 41 82 05 78 */ beq lbl_8039E708 -/* 8039E194 0039B0F4 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039E194 0039B0F4 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039E198 0039B0F8 A8 BB 00 00 */ lha r5, 0(r27) -/* 8039E19C 0039B0FC 38 83 13 F8 */ addi r4, r3, lbl_805513F8@l +/* 8039E19C 0039B0FC 38 83 13 F8 */ addi r4, r3, streamInfo@l /* 8039E1A0 0039B100 38 00 00 08 */ li r0, 8 /* 8039E1A4 0039B104 1C C6 00 64 */ mulli r6, r6, 0x64 /* 8039E1A8 0039B108 3B C4 00 2C */ addi r30, r4, 0x2c @@ -1928,10 +1933,10 @@ lbl_8039E388: /* 8039E38C 0039B2EC 28 00 FF FF */ cmplwi r0, 0xffff /* 8039E390 0039B2F0 41 82 03 74 */ beq lbl_8039E704 /* 8039E394 0039B2F4 1C A3 00 64 */ mulli r5, r3, 0x64 -/* 8039E398 0039B2F8 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039E398 0039B2F8 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039E39C 0039B2FC A8 9B 00 00 */ lha r4, 0(r27) /* 8039E3A0 0039B300 38 00 00 08 */ li r0, 8 -/* 8039E3A4 0039B304 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039E3A4 0039B304 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039E3A8 0039B308 7C DE 2A 14 */ add r6, r30, r5 /* 8039E3AC 0039B30C B0 86 00 00 */ sth r4, 0(r6) /* 8039E3B0 0039B310 7C FD 2A 14 */ add r7, r29, r5 @@ -2062,10 +2067,10 @@ lbl_8039E578: /* 8039E57C 0039B4DC 28 00 FF FF */ cmplwi r0, 0xffff /* 8039E580 0039B4E0 41 82 01 80 */ beq lbl_8039E700 /* 8039E584 0039B4E4 1C A3 00 64 */ mulli r5, r3, 0x64 -/* 8039E588 0039B4E8 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039E588 0039B4E8 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039E58C 0039B4EC A8 9B 00 00 */ lha r4, 0(r27) /* 8039E590 0039B4F0 38 00 00 08 */ li r0, 8 -/* 8039E594 0039B4F4 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039E594 0039B4F4 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039E598 0039B4F8 7C DE 2A 14 */ add r6, r30, r5 /* 8039E59C 0039B4FC B0 86 00 00 */ sth r4, 0(r6) /* 8039E5A0 0039B500 7C FD 2A 14 */ add r7, r29, r5 @@ -2111,10 +2116,10 @@ lbl_8039E578: /* 8039E640 0039B5A0 28 00 FF FF */ cmplwi r0, 0xffff /* 8039E644 0039B5A4 41 82 00 B8 */ beq lbl_8039E6FC /* 8039E648 0039B5A8 1C A3 00 64 */ mulli r5, r3, 0x64 -/* 8039E64C 0039B5AC 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039E64C 0039B5AC 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039E650 0039B5B0 A8 9B 00 00 */ lha r4, 0(r27) /* 8039E654 0039B5B4 38 00 00 08 */ li r0, 8 -/* 8039E658 0039B5B8 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039E658 0039B5B8 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039E65C 0039B5BC 7C DE 2A 14 */ add r6, r30, r5 /* 8039E660 0039B5C0 B0 86 00 00 */ sth r4, 0(r6) /* 8039E664 0039B5C4 7C FD 2A 14 */ add r7, r29, r5 @@ -2183,9 +2188,9 @@ sndStreamMixParameter: /* 8039E744 0039B6A4 7C DC 33 78 */ mr r28, r6 /* 8039E748 0039B6A8 7C FD 3B 78 */ mr r29, r7 /* 8039E74C 0039B6AC 48 01 69 71 */ bl hwDisableIrq -/* 8039E750 0039B6B0 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039E750 0039B6B0 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039E754 0039B6B4 38 00 00 08 */ li r0, 8 -/* 8039E758 0039B6B8 3B C3 13 F8 */ addi r30, r3, lbl_805513F8@l +/* 8039E758 0039B6B8 3B C3 13 F8 */ addi r30, r3, streamInfo@l /* 8039E75C 0039B6BC 38 60 00 00 */ li r3, 0 /* 8039E760 0039B6C0 7F C4 F3 78 */ mr r4, r30 /* 8039E764 0039B6C4 7C 09 03 A6 */ mtctr r0 @@ -2277,10 +2282,10 @@ lbl_8039E890: /* 8039E894 0039B7F4 28 00 FF FF */ cmplwi r0, 0xffff /* 8039E898 0039B7F8 41 82 03 7C */ beq lbl_8039EC14 /* 8039E89C 0039B7FC 1F E3 00 64 */ mulli r31, r3, 0x64 -/* 8039E8A0 0039B800 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039E8A0 0039B800 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039E8A4 0039B804 80 8D AE 74 */ lwz r4, synthFlags@sda21(r13) /* 8039E8A8 0039B808 7F 86 E3 78 */ mr r6, r28 -/* 8039E8AC 0039B80C 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039E8AC 0039B80C 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039E8B0 0039B810 7C 60 FA 14 */ add r3, r0, r31 /* 8039E8B4 0039B814 9B 63 00 5E */ stb r27, 0x5e(r3) /* 8039E8B8 0039B818 54 80 07 FF */ clrlwi. r0, r4, 0x1f @@ -2295,9 +2300,9 @@ lbl_8039E8D4: /* 8039E8D8 0039B838 40 82 00 08 */ bne lbl_8039E8E0 /* 8039E8DC 0039B83C 38 C0 00 00 */ li r6, 0 lbl_8039E8E0: -/* 8039E8E0 0039B840 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039E8E0 0039B840 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039E8E4 0039B844 3C E0 43 30 */ lis r7, 0x4330 -/* 8039E8E8 0039B848 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039E8E8 0039B848 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039E8EC 0039B84C 38 00 00 00 */ li r0, 0 /* 8039E8F0 0039B850 7D 03 FA 14 */ add r8, r3, r31 /* 8039E8F4 0039B854 90 E1 00 10 */ stw r7, 0x10(r1) @@ -2332,8 +2337,8 @@ lbl_8039E8E0: /* 8039E968 0039B8C8 EC 00 18 28 */ fsubs f0, f0, f3 /* 8039E96C 0039B8CC EC 64 00 32 */ fmuls f3, f4, f0 /* 8039E970 0039B8D0 48 01 4E 19 */ bl hwSetVolume -/* 8039E974 0039B8D4 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039E978 0039B8D8 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039E974 0039B8D4 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039E978 0039B8D8 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039E97C 0039B8DC 7F E3 F8 2E */ lwzx r31, r3, r31 /* 8039E980 0039B8E0 3C 1F 00 01 */ addis r0, r31, 1 /* 8039E984 0039B8E4 28 00 FF FF */ cmplwi r0, 0xffff @@ -2430,9 +2435,9 @@ lbl_8039EAC4: /* 8039EAC8 0039BA28 28 00 FF FF */ cmplwi r0, 0xffff /* 8039EACC 0039BA2C 41 82 01 44 */ beq lbl_8039EC10 /* 8039EAD0 0039BA30 1C 83 00 64 */ mulli r4, r3, 0x64 -/* 8039EAD4 0039BA34 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039EAD4 0039BA34 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039EAD8 0039BA38 9B 81 00 08 */ stb r28, 8(r1) -/* 8039EADC 0039BA3C 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039EADC 0039BA3C 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039EAE0 0039BA40 7F C0 22 14 */ add r30, r0, r4 /* 8039EAE4 0039BA44 9B 61 00 09 */ stb r27, 9(r1) /* 8039EAE8 0039BA48 38 61 00 09 */ addi r3, r1, 9 @@ -2487,9 +2492,9 @@ lbl_8039EAC4: /* 8039EBAC 0039BB0C 28 00 FF FF */ cmplwi r0, 0xffff /* 8039EBB0 0039BB10 41 82 00 5C */ beq lbl_8039EC0C /* 8039EBB4 0039BB14 1C A3 00 64 */ mulli r5, r3, 0x64 -/* 8039EBB8 0039BB18 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039EBB8 0039BB18 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039EBBC 0039BB1C 7F 44 D3 78 */ mr r4, r26 -/* 8039EBC0 0039BB20 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039EBC0 0039BB20 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039EBC4 0039BB24 7F C0 2A 14 */ add r30, r0, r5 /* 8039EBC8 0039BB28 7F 65 DB 78 */ mr r5, r27 /* 8039EBCC 0039BB2C 7F C3 F3 78 */ mr r3, r30 @@ -2535,9 +2540,9 @@ sndStreamMixParameterEx: /* 8039EC54 0039BBB4 7C FB 3B 78 */ mr r27, r7 /* 8039EC58 0039BBB8 7D 1C 43 78 */ mr r28, r8 /* 8039EC5C 0039BBBC 48 01 64 61 */ bl hwDisableIrq -/* 8039EC60 0039BBC0 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039EC60 0039BBC0 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039EC64 0039BBC4 38 00 00 08 */ li r0, 8 -/* 8039EC68 0039BBC8 3B C3 13 F8 */ addi r30, r3, lbl_805513F8@l +/* 8039EC68 0039BBC8 3B C3 13 F8 */ addi r30, r3, streamInfo@l /* 8039EC6C 0039BBCC 38 60 00 00 */ li r3, 0 /* 8039EC70 0039BBD0 7F C4 F3 78 */ mr r4, r30 /* 8039EC74 0039BBD4 7C 09 03 A6 */ mtctr r0 @@ -2629,10 +2634,10 @@ lbl_8039EDA0: /* 8039EDA4 0039BD04 28 00 FF FF */ cmplwi r0, 0xffff /* 8039EDA8 0039BD08 41 82 03 C8 */ beq lbl_8039F170 /* 8039EDAC 0039BD0C 1F E3 00 64 */ mulli r31, r3, 0x64 -/* 8039EDB0 0039BD10 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039EDB0 0039BD10 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039EDB4 0039BD14 80 8D AE 74 */ lwz r4, synthFlags@sda21(r13) /* 8039EDB8 0039BD18 7F 46 D3 78 */ mr r6, r26 -/* 8039EDBC 0039BD1C 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039EDBC 0039BD1C 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039EDC0 0039BD20 7C 60 FA 14 */ add r3, r0, r31 /* 8039EDC4 0039BD24 9B 23 00 5E */ stb r25, 0x5e(r3) /* 8039EDC8 0039BD28 54 80 07 FF */ clrlwi. r0, r4, 0x1f @@ -2647,8 +2652,8 @@ lbl_8039EDE4: /* 8039EDE8 0039BD48 40 82 00 08 */ bne lbl_8039EDF0 /* 8039EDEC 0039BD4C 38 C0 00 00 */ li r6, 0 lbl_8039EDF0: -/* 8039EDF0 0039BD50 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039EDF4 0039BD54 38 83 13 F8 */ addi r4, r3, lbl_805513F8@l +/* 8039EDF0 0039BD50 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039EDF4 0039BD54 38 83 13 F8 */ addi r4, r3, streamInfo@l /* 8039EDF8 0039BD58 7C E4 FA 14 */ add r7, r4, r31 /* 8039EDFC 0039BD5C 9B 07 00 59 */ stb r24, 0x59(r7) /* 8039EE00 0039BD60 7C EB 3B 78 */ mr r11, r7 @@ -2698,8 +2703,8 @@ lbl_8039EDF0: /* 8039EEB0 0039BE10 EC 64 00 32 */ fmuls f3, f4, f0 /* 8039EEB4 0039BE14 48 01 48 D5 */ bl hwSetVolume lbl_8039EEB8: -/* 8039EEB8 0039BE18 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039EEBC 0039BE1C 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039EEB8 0039BE18 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039EEBC 0039BE1C 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039EEC0 0039BE20 7F E3 F8 2E */ lwzx r31, r3, r31 /* 8039EEC4 0039BE24 3C 1F 00 01 */ addis r0, r31, 1 /* 8039EEC8 0039BE28 28 00 FF FF */ cmplwi r0, 0xffff @@ -2796,10 +2801,10 @@ lbl_8039F008: /* 8039F00C 0039BF6C 28 00 FF FF */ cmplwi r0, 0xffff /* 8039F010 0039BF70 41 82 01 5C */ beq lbl_8039F16C /* 8039F014 0039BF74 1F C3 00 64 */ mulli r30, r3, 0x64 -/* 8039F018 0039BF78 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039F018 0039BF78 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039F01C 0039BF7C 9B 41 00 08 */ stb r26, 8(r1) /* 8039F020 0039BF80 38 81 00 08 */ addi r4, r1, 8 -/* 8039F024 0039BF84 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039F024 0039BF84 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039F028 0039BF88 7F E0 F2 14 */ add r31, r0, r30 /* 8039F02C 0039BF8C 9B 3F 00 5E */ stb r25, 0x5e(r31) /* 8039F030 0039BF90 38 61 00 09 */ addi r3, r1, 9 @@ -2856,9 +2861,9 @@ lbl_8039F0D8: /* 8039F0F8 0039C058 28 00 FF FF */ cmplwi r0, 0xffff /* 8039F0FC 0039C05C 41 82 00 6C */ beq lbl_8039F168 /* 8039F100 0039C060 1F C3 00 64 */ mulli r30, r3, 0x64 -/* 8039F104 0039C064 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039F104 0039C064 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039F108 0039C068 7F 04 C3 78 */ mr r4, r24 -/* 8039F10C 0039C06C 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039F10C 0039C06C 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039F110 0039C070 7F E0 F2 14 */ add r31, r0, r30 /* 8039F114 0039C074 7F 25 CB 78 */ mr r5, r25 /* 8039F118 0039C078 7F E3 FB 78 */ mr r3, r31 @@ -2905,9 +2910,9 @@ sndStreamFrq: /* 8039F1A0 0039C100 7C 7B 1B 78 */ mr r27, r3 /* 8039F1A4 0039C104 7C 9C 23 78 */ mr r28, r4 /* 8039F1A8 0039C108 48 01 5F 15 */ bl hwDisableIrq -/* 8039F1AC 0039C10C 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039F1AC 0039C10C 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039F1B0 0039C110 38 00 00 08 */ li r0, 8 -/* 8039F1B4 0039C114 3B E3 13 F8 */ addi r31, r3, lbl_805513F8@l +/* 8039F1B4 0039C114 3B E3 13 F8 */ addi r31, r3, streamInfo@l /* 8039F1B8 0039C118 38 80 00 00 */ li r4, 0 /* 8039F1BC 0039C11C 7F E3 FB 78 */ mr r3, r31 /* 8039F1C0 0039C120 7C 09 03 A6 */ mtctr r0 @@ -2998,8 +3003,8 @@ lbl_8039F2EC: /* 8039F2EC 0039C24C 3C 04 00 01 */ addis r0, r4, 1 /* 8039F2F0 0039C250 28 00 FF FF */ cmplwi r0, 0xffff /* 8039F2F4 0039C254 41 82 04 E4 */ beq lbl_8039F7D8 -/* 8039F2F8 0039C258 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039F2FC 0039C25C 38 A3 13 F8 */ addi r5, r3, lbl_805513F8@l +/* 8039F2F8 0039C258 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039F2FC 0039C25C 38 A3 13 F8 */ addi r5, r3, streamInfo@l /* 8039F300 0039C260 1F 64 00 64 */ mulli r27, r4, 0x64 /* 8039F304 0039C264 3B C5 00 54 */ addi r30, r5, 0x54 /* 8039F308 0039C268 3B A5 00 0C */ addi r29, r5, 0xc @@ -3029,8 +3034,8 @@ lbl_8039F2EC: /* 8039F368 0039C2C8 80 81 00 1C */ lwz r4, 0x1c(r1) /* 8039F36C 0039C2CC 48 01 42 F1 */ bl hwSetPitch lbl_8039F370: -/* 8039F370 0039C2D0 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039F374 0039C2D4 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039F370 0039C2D0 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039F374 0039C2D4 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039F378 0039C2D8 7F 63 D8 2E */ lwzx r27, r3, r27 /* 8039F37C 0039C2DC 3C 1B 00 01 */ addis r0, r27, 1 /* 8039F380 0039C2E0 28 00 FF FF */ cmplwi r0, 0xffff @@ -3136,9 +3141,9 @@ lbl_8039F4C4: /* 8039F4E8 0039C448 3C 60 80 55 */ lis r3, synthInfo@ha /* 8039F4EC 0039C44C 93 81 00 1C */ stw r28, 0x1c(r1) /* 8039F4F0 0039C450 80 03 00 50 */ lwz r0, synthInfo@l(r3) -/* 8039F4F4 0039C454 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039F4F4 0039C454 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039F4F8 0039C458 90 81 00 18 */ stw r4, 0x18(r1) -/* 8039F4FC 0039C45C 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039F4FC 0039C45C 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039F500 0039C460 C8 42 D5 58 */ lfd f2, lbl_805AF278@sda21(r2) /* 8039F504 0039C464 7C 63 DA 14 */ add r3, r3, r27 /* 8039F508 0039C468 C8 01 00 18 */ lfd f0, 0x18(r1) @@ -3156,8 +3161,8 @@ lbl_8039F4C4: /* 8039F538 0039C498 80 81 00 0C */ lwz r4, 0xc(r1) /* 8039F53C 0039C49C 48 01 41 21 */ bl hwSetPitch lbl_8039F540: -/* 8039F540 0039C4A0 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039F544 0039C4A4 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039F540 0039C4A0 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039F544 0039C4A4 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039F548 0039C4A8 7F 63 D8 2E */ lwzx r27, r3, r27 /* 8039F54C 0039C4AC 3C 1B 00 01 */ addis r0, r27, 1 /* 8039F550 0039C4B0 28 00 FF FF */ cmplwi r0, 0xffff @@ -3262,9 +3267,9 @@ lbl_8039F690: /* 8039F6B4 0039C614 3C 60 80 55 */ lis r3, synthInfo@ha /* 8039F6B8 0039C618 93 81 00 1C */ stw r28, 0x1c(r1) /* 8039F6BC 0039C61C 80 03 00 50 */ lwz r0, synthInfo@l(r3) -/* 8039F6C0 0039C620 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039F6C0 0039C620 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039F6C4 0039C624 90 81 00 18 */ stw r4, 0x18(r1) -/* 8039F6C8 0039C628 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039F6C8 0039C628 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039F6CC 0039C62C C8 42 D5 58 */ lfd f2, lbl_805AF278@sda21(r2) /* 8039F6D0 0039C630 7C 63 DA 14 */ add r3, r3, r27 /* 8039F6D4 0039C634 C8 01 00 18 */ lfd f0, 0x18(r1) @@ -3282,8 +3287,8 @@ lbl_8039F690: /* 8039F704 0039C664 80 81 00 0C */ lwz r4, 0xc(r1) /* 8039F708 0039C668 48 01 3F 55 */ bl hwSetPitch lbl_8039F70C: -/* 8039F70C 0039C66C 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039F710 0039C670 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039F70C 0039C66C 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039F710 0039C670 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039F714 0039C674 7F 63 D8 2E */ lwzx r27, r3, r27 /* 8039F718 0039C678 3C 1B 00 01 */ addis r0, r27, 1 /* 8039F71C 0039C67C 28 00 FF FF */ cmplwi r0, 0xffff @@ -3303,9 +3308,9 @@ lbl_8039F70C: /* 8039F754 0039C6B4 3C 60 80 55 */ lis r3, synthInfo@ha /* 8039F758 0039C6B8 93 81 00 1C */ stw r28, 0x1c(r1) /* 8039F75C 0039C6BC 80 03 00 50 */ lwz r0, synthInfo@l(r3) -/* 8039F760 0039C6C0 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039F760 0039C6C0 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039F764 0039C6C4 90 81 00 18 */ stw r4, 0x18(r1) -/* 8039F768 0039C6C8 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039F768 0039C6C8 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039F76C 0039C6CC C8 42 D5 58 */ lfd f2, lbl_805AF278@sda21(r2) /* 8039F770 0039C6D0 7C 63 DA 14 */ add r3, r3, r27 /* 8039F774 0039C6D4 C8 01 00 18 */ lfd f0, 0x18(r1) @@ -3323,8 +3328,8 @@ lbl_8039F70C: /* 8039F7A4 0039C704 80 81 00 0C */ lwz r4, 0xc(r1) /* 8039F7A8 0039C708 48 01 3E B5 */ bl hwSetPitch lbl_8039F7AC: -/* 8039F7AC 0039C70C 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039F7B0 0039C710 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039F7AC 0039C70C 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039F7B0 0039C710 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039F7B4 0039C714 7C 63 D8 2E */ lwzx r3, r3, r27 /* 8039F7B8 0039C718 3C 03 00 01 */ addis r0, r3, 1 /* 8039F7BC 0039C71C 28 00 FF FF */ cmplwi r0, 0xffff @@ -3355,9 +3360,9 @@ sndStreamFree: /* 8039F804 0039C764 4B FE A2 71 */ bl _savegpr_25 /* 8039F808 0039C768 7C 79 1B 78 */ mr r25, r3 /* 8039F80C 0039C76C 48 01 58 B1 */ bl hwDisableIrq -/* 8039F810 0039C770 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039F810 0039C770 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039F814 0039C774 38 00 00 08 */ li r0, 8 -/* 8039F818 0039C778 3B C3 13 F8 */ addi r30, r3, lbl_805513F8@l +/* 8039F818 0039C778 3B C3 13 F8 */ addi r30, r3, streamInfo@l /* 8039F81C 0039C77C 3B 40 00 00 */ li r26, 0 /* 8039F820 0039C780 7F C3 F3 78 */ mr r3, r30 /* 8039F824 0039C784 7C 09 03 A6 */ mtctr r0 @@ -3450,14 +3455,14 @@ lbl_8039F950: /* 8039F958 0039C8B8 41 82 05 54 */ beq lbl_8039FEAC /* 8039F95C 0039C8BC 7F 23 CB 78 */ mr r3, r25 /* 8039F960 0039C8C0 48 00 0B C1 */ bl sndStreamDeactivate -/* 8039F964 0039C8C4 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039F968 0039C8C8 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039F964 0039C8C4 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039F968 0039C8C8 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039F96C 0039C8CC 1F FA 00 64 */ mulli r31, r26, 0x64 /* 8039F970 0039C8D0 3B A3 00 0E */ addi r29, r3, 0xe /* 8039F974 0039C8D4 7C 7D F8 AE */ lbzx r3, r29, r31 /* 8039F978 0039C8D8 48 01 43 4D */ bl sub_803b3cc4 -/* 8039F97C 0039C8DC 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039F980 0039C8E0 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039F97C 0039C8DC 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039F980 0039C8E0 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039F984 0039C8E4 7F 43 F8 2E */ lwzx r26, r3, r31 /* 8039F988 0039C8E8 3C 1A 00 01 */ addis r0, r26, 1 /* 8039F98C 0039C8EC 28 00 FF FF */ cmplwi r0, 0xffff @@ -3559,8 +3564,8 @@ lbl_8039FAD0: /* 8039FAE4 0039CA44 1F 9B 00 64 */ mulli r28, r27, 0x64 /* 8039FAE8 0039CA48 7C 7D E0 AE */ lbzx r3, r29, r28 /* 8039FAEC 0039CA4C 48 01 41 D9 */ bl sub_803b3cc4 -/* 8039FAF0 0039CA50 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039FAF4 0039CA54 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039FAF0 0039CA50 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039FAF4 0039CA54 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039FAF8 0039CA58 7F 43 E0 2E */ lwzx r26, r3, r28 /* 8039FAFC 0039CA5C 3C 1A 00 01 */ addis r0, r26, 1 /* 8039FB00 0039CA60 28 00 FF FF */ cmplwi r0, 0xffff @@ -3662,8 +3667,8 @@ lbl_8039FC44: /* 8039FC58 0039CBB8 1F 7B 00 64 */ mulli r27, r27, 0x64 /* 8039FC5C 0039CBBC 7C 7D D8 AE */ lbzx r3, r29, r27 /* 8039FC60 0039CBC0 48 01 40 65 */ bl sub_803b3cc4 -/* 8039FC64 0039CBC4 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039FC68 0039CBC8 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039FC64 0039CBC4 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039FC68 0039CBC8 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039FC6C 0039CBCC 7F 43 D8 2E */ lwzx r26, r3, r27 /* 8039FC70 0039CBD0 3C 1A 00 01 */ addis r0, r26, 1 /* 8039FC74 0039CBD4 28 00 FF FF */ cmplwi r0, 0xffff @@ -3764,8 +3769,8 @@ lbl_8039FDB4: /* 8039FDC8 0039CD28 1F D9 00 64 */ mulli r30, r25, 0x64 /* 8039FDCC 0039CD2C 7C 7D F0 AE */ lbzx r3, r29, r30 /* 8039FDD0 0039CD30 48 01 3E F5 */ bl sub_803b3cc4 -/* 8039FDD4 0039CD34 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039FDD8 0039CD38 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039FDD4 0039CD34 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039FDD8 0039CD38 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039FDDC 0039CD3C 7F 23 F0 2E */ lwzx r25, r3, r30 /* 8039FDE0 0039CD40 3C 19 00 01 */ addis r0, r25, 1 /* 8039FDE4 0039CD44 28 00 FF FF */ cmplwi r0, 0xffff @@ -3782,49 +3787,49 @@ lbl_8039FDB4: /* 8039FE10 0039CD70 1F 3A 00 64 */ mulli r25, r26, 0x64 /* 8039FE14 0039CD74 7C 7D C8 AE */ lbzx r3, r29, r25 /* 8039FE18 0039CD78 48 01 3E AD */ bl sub_803b3cc4 -/* 8039FE1C 0039CD7C 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 8039FE20 0039CD80 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 8039FE1C 0039CD7C 3C 60 80 55 */ lis r3, streamInfo@ha +/* 8039FE20 0039CD80 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 8039FE24 0039CD84 7C 63 C8 2E */ lwzx r3, r3, r25 /* 8039FE28 0039CD88 3C 03 00 01 */ addis r0, r3, 1 /* 8039FE2C 0039CD8C 28 00 FF FF */ cmplwi r0, 0xffff /* 8039FE30 0039CD90 41 82 00 08 */ beq lbl_8039FE38 /* 8039FE34 0039CD94 4B FF F9 C1 */ bl sndStreamFree lbl_8039FE38: -/* 8039FE38 0039CD98 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039FE38 0039CD98 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039FE3C 0039CD9C 38 80 00 00 */ li r4, 0 -/* 8039FE40 0039CDA0 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039FE40 0039CDA0 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039FE44 0039CDA4 7C 60 CA 14 */ add r3, r0, r25 /* 8039FE48 0039CDA8 98 83 00 0C */ stb r4, 0xc(r3) lbl_8039FE4C: /* 8039FE4C 0039CDAC 48 01 52 39 */ bl hwEnableIrq lbl_8039FE50: -/* 8039FE50 0039CDB0 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039FE50 0039CDB0 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039FE54 0039CDB4 38 80 00 00 */ li r4, 0 -/* 8039FE58 0039CDB8 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039FE58 0039CDB8 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039FE5C 0039CDBC 7C 60 F2 14 */ add r3, r0, r30 /* 8039FE60 0039CDC0 98 83 00 0C */ stb r4, 0xc(r3) lbl_8039FE64: /* 8039FE64 0039CDC4 48 01 52 21 */ bl hwEnableIrq lbl_8039FE68: -/* 8039FE68 0039CDC8 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039FE68 0039CDC8 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039FE6C 0039CDCC 38 80 00 00 */ li r4, 0 -/* 8039FE70 0039CDD0 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039FE70 0039CDD0 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039FE74 0039CDD4 7C 60 DA 14 */ add r3, r0, r27 /* 8039FE78 0039CDD8 98 83 00 0C */ stb r4, 0xc(r3) lbl_8039FE7C: /* 8039FE7C 0039CDDC 48 01 52 09 */ bl hwEnableIrq lbl_8039FE80: -/* 8039FE80 0039CDE0 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039FE80 0039CDE0 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039FE84 0039CDE4 38 80 00 00 */ li r4, 0 -/* 8039FE88 0039CDE8 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039FE88 0039CDE8 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039FE8C 0039CDEC 7C 60 E2 14 */ add r3, r0, r28 /* 8039FE90 0039CDF0 98 83 00 0C */ stb r4, 0xc(r3) lbl_8039FE94: /* 8039FE94 0039CDF4 48 01 51 F1 */ bl hwEnableIrq lbl_8039FE98: -/* 8039FE98 0039CDF8 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039FE98 0039CDF8 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039FE9C 0039CDFC 38 80 00 00 */ li r4, 0 -/* 8039FEA0 0039CE00 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 8039FEA0 0039CE00 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 8039FEA4 0039CE04 7C 60 FA 14 */ add r3, r0, r31 /* 8039FEA8 0039CE08 98 83 00 0C */ stb r4, 0xc(r3) lbl_8039FEAC: @@ -3848,9 +3853,9 @@ sndStreamActivate: /* 8039FEE4 0039CE44 93 81 00 10 */ stw r28, 0x10(r1) /* 8039FEE8 0039CE48 3B 80 00 00 */ li r28, 0 /* 8039FEEC 0039CE4C 48 01 51 D1 */ bl hwDisableIrq -/* 8039FEF0 0039CE50 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 8039FEF0 0039CE50 3C 60 80 55 */ lis r3, streamInfo@ha /* 8039FEF4 0039CE54 38 00 00 08 */ li r0, 8 -/* 8039FEF8 0039CE58 3B C3 13 F8 */ addi r30, r3, lbl_805513F8@l +/* 8039FEF8 0039CE58 3B C3 13 F8 */ addi r30, r3, streamInfo@l /* 8039FEFC 0039CE5C 38 80 00 00 */ li r4, 0 /* 8039FF00 0039CE60 7F C3 F3 78 */ mr r3, r30 /* 8039FF04 0039CE64 7C 09 03 A6 */ mtctr r0 @@ -3941,8 +3946,8 @@ lbl_803A0030: /* 803A0030 0039CF90 3C 04 00 01 */ addis r0, r4, 1 /* 803A0034 0039CF94 28 00 FF FF */ cmplwi r0, 0xffff /* 803A0038 0039CF98 41 82 04 C0 */ beq lbl_803A04F8 -/* 803A003C 0039CF9C 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0040 0039CFA0 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A003C 0039CF9C 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0040 0039CFA0 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A0044 0039CFA4 1F 84 00 64 */ mulli r28, r4, 0x64 /* 803A0048 0039CFA8 3B A3 00 0C */ addi r29, r3, 0xc /* 803A004C 0039CFAC 7C 1D E0 AE */ lbzx r0, r29, r28 @@ -3951,9 +3956,9 @@ lbl_803A0030: /* 803A0058 0039CFB8 7C 63 E2 14 */ add r3, r3, r28 /* 803A005C 0039CFBC 88 63 00 58 */ lbz r3, 0x58(r3) /* 803A0060 0039CFC0 48 00 86 A9 */ bl voiceBlock -/* 803A0064 0039CFC4 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 803A0064 0039CFC4 3C 80 80 55 */ lis r4, streamInfo@ha /* 803A0068 0039CFC8 3C 03 00 01 */ addis r0, r3, 1 -/* 803A006C 0039CFCC 38 84 13 F8 */ addi r4, r4, lbl_805513F8@l +/* 803A006C 0039CFCC 38 84 13 F8 */ addi r4, r4, streamInfo@l /* 803A0070 0039CFD0 7C 84 E2 14 */ add r4, r4, r28 /* 803A0074 0039CFD4 28 00 FF FF */ cmplwi r0, 0xffff /* 803A0078 0039CFD8 90 64 00 4C */ stw r3, 0x4c(r4) @@ -3967,8 +3972,8 @@ lbl_803A008C: /* 803A0094 0039CFF4 90 64 00 20 */ stw r3, 0x20(r4) /* 803A0098 0039CFF8 7C 1D E1 AE */ stbx r0, r29, r28 lbl_803A009C: -/* 803A009C 0039CFFC 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A00A0 0039D000 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A009C 0039CFFC 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A00A0 0039D000 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A00A4 0039D004 7F 83 E0 2E */ lwzx r28, r3, r28 /* 803A00A8 0039D008 3C 1C 00 01 */ addis r0, r28, 1 /* 803A00AC 0039D00C 28 00 FF FF */ cmplwi r0, 0xffff @@ -4070,14 +4075,14 @@ lbl_803A01F4: /* 803A0204 0039D164 7C 1D E0 AE */ lbzx r0, r29, r28 /* 803A0208 0039D168 28 00 00 03 */ cmplwi r0, 3 /* 803A020C 0039D16C 40 82 00 50 */ bne lbl_803A025C -/* 803A0210 0039D170 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0214 0039D174 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 803A0210 0039D170 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0214 0039D174 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 803A0218 0039D178 7C 60 E2 14 */ add r3, r0, r28 /* 803A021C 0039D17C 88 63 00 58 */ lbz r3, 0x58(r3) /* 803A0220 0039D180 48 00 84 E9 */ bl voiceBlock -/* 803A0224 0039D184 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 803A0224 0039D184 3C 80 80 55 */ lis r4, streamInfo@ha /* 803A0228 0039D188 3C 03 00 01 */ addis r0, r3, 1 -/* 803A022C 0039D18C 38 84 13 F8 */ addi r4, r4, lbl_805513F8@l +/* 803A022C 0039D18C 38 84 13 F8 */ addi r4, r4, streamInfo@l /* 803A0230 0039D190 7C 84 E2 14 */ add r4, r4, r28 /* 803A0234 0039D194 28 00 FF FF */ cmplwi r0, 0xffff /* 803A0238 0039D198 90 64 00 4C */ stw r3, 0x4c(r4) @@ -4091,8 +4096,8 @@ lbl_803A024C: /* 803A0254 0039D1B4 90 64 00 20 */ stw r3, 0x20(r4) /* 803A0258 0039D1B8 7C 1D E1 AE */ stbx r0, r29, r28 lbl_803A025C: -/* 803A025C 0039D1BC 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0260 0039D1C0 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A025C 0039D1BC 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0260 0039D1C0 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A0264 0039D1C4 7F 83 E0 2E */ lwzx r28, r3, r28 /* 803A0268 0039D1C8 3C 1C 00 01 */ addis r0, r28, 1 /* 803A026C 0039D1CC 28 00 FF FF */ cmplwi r0, 0xffff @@ -4193,14 +4198,14 @@ lbl_803A03B0: /* 803A03C0 0039D320 7C 1D E0 AE */ lbzx r0, r29, r28 /* 803A03C4 0039D324 28 00 00 03 */ cmplwi r0, 3 /* 803A03C8 0039D328 40 82 00 50 */ bne lbl_803A0418 -/* 803A03CC 0039D32C 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A03D0 0039D330 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 803A03CC 0039D32C 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A03D0 0039D330 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 803A03D4 0039D334 7C 60 E2 14 */ add r3, r0, r28 /* 803A03D8 0039D338 88 63 00 58 */ lbz r3, 0x58(r3) /* 803A03DC 0039D33C 48 00 83 2D */ bl voiceBlock -/* 803A03E0 0039D340 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 803A03E0 0039D340 3C 80 80 55 */ lis r4, streamInfo@ha /* 803A03E4 0039D344 3C 03 00 01 */ addis r0, r3, 1 -/* 803A03E8 0039D348 38 84 13 F8 */ addi r4, r4, lbl_805513F8@l +/* 803A03E8 0039D348 38 84 13 F8 */ addi r4, r4, streamInfo@l /* 803A03EC 0039D34C 7C 84 E2 14 */ add r4, r4, r28 /* 803A03F0 0039D350 28 00 FF FF */ cmplwi r0, 0xffff /* 803A03F4 0039D354 90 64 00 4C */ stw r3, 0x4c(r4) @@ -4214,8 +4219,8 @@ lbl_803A0408: /* 803A0410 0039D370 90 64 00 20 */ stw r3, 0x20(r4) /* 803A0414 0039D374 7C 1D E1 AE */ stbx r0, r29, r28 lbl_803A0418: -/* 803A0418 0039D378 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A041C 0039D37C 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A0418 0039D378 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A041C 0039D37C 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A0420 0039D380 7F 83 E0 2E */ lwzx r28, r3, r28 /* 803A0424 0039D384 3C 1C 00 01 */ addis r0, r28, 1 /* 803A0428 0039D388 28 00 FF FF */ cmplwi r0, 0xffff @@ -4231,14 +4236,14 @@ lbl_803A0418: /* 803A0450 0039D3B0 7C 1D E0 AE */ lbzx r0, r29, r28 /* 803A0454 0039D3B4 28 00 00 03 */ cmplwi r0, 3 /* 803A0458 0039D3B8 40 82 00 50 */ bne lbl_803A04A8 -/* 803A045C 0039D3BC 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0460 0039D3C0 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 803A045C 0039D3BC 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0460 0039D3C0 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 803A0464 0039D3C4 7C 60 E2 14 */ add r3, r0, r28 /* 803A0468 0039D3C8 88 63 00 58 */ lbz r3, 0x58(r3) /* 803A046C 0039D3CC 48 00 82 9D */ bl voiceBlock -/* 803A0470 0039D3D0 3C 80 80 55 */ lis r4, lbl_805513F8@ha +/* 803A0470 0039D3D0 3C 80 80 55 */ lis r4, streamInfo@ha /* 803A0474 0039D3D4 3C 03 00 01 */ addis r0, r3, 1 -/* 803A0478 0039D3D8 38 84 13 F8 */ addi r4, r4, lbl_805513F8@l +/* 803A0478 0039D3D8 38 84 13 F8 */ addi r4, r4, streamInfo@l /* 803A047C 0039D3DC 7C 84 E2 14 */ add r4, r4, r28 /* 803A0480 0039D3E0 28 00 FF FF */ cmplwi r0, 0xffff /* 803A0484 0039D3E4 90 64 00 4C */ stw r3, 0x4c(r4) @@ -4252,8 +4257,8 @@ lbl_803A0498: /* 803A04A0 0039D400 90 64 00 20 */ stw r3, 0x20(r4) /* 803A04A4 0039D404 7C 1D E1 AE */ stbx r0, r29, r28 lbl_803A04A8: -/* 803A04A8 0039D408 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A04AC 0039D40C 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A04A8 0039D408 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A04AC 0039D40C 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A04B0 0039D410 7C 63 E0 2E */ lwzx r3, r3, r28 /* 803A04B4 0039D414 3C 03 00 01 */ addis r0, r3, 1 /* 803A04B8 0039D418 28 00 FF FF */ cmplwi r0, 0xffff @@ -4303,9 +4308,9 @@ sndStreamDeactivate: /* 803A0534 0039D494 93 A1 00 14 */ stw r29, 0x14(r1) /* 803A0538 0039D498 7C 7D 1B 78 */ mr r29, r3 /* 803A053C 0039D49C 48 01 4B 81 */ bl hwDisableIrq -/* 803A0540 0039D4A0 3C 60 80 55 */ lis r3, lbl_805513F8@ha +/* 803A0540 0039D4A0 3C 60 80 55 */ lis r3, streamInfo@ha /* 803A0544 0039D4A4 38 00 00 08 */ li r0, 8 -/* 803A0548 0039D4A8 3B E3 13 F8 */ addi r31, r3, lbl_805513F8@l +/* 803A0548 0039D4A8 3B E3 13 F8 */ addi r31, r3, streamInfo@l /* 803A054C 0039D4AC 38 80 00 00 */ li r4, 0 /* 803A0550 0039D4B0 7F E3 FB 78 */ mr r3, r31 /* 803A0554 0039D4B4 7C 09 03 A6 */ mtctr r0 @@ -4396,8 +4401,8 @@ lbl_803A0680: /* 803A0680 0039D5E0 3C 04 00 01 */ addis r0, r4, 1 /* 803A0684 0039D5E4 28 00 FF FF */ cmplwi r0, 0xffff /* 803A0688 0039D5E8 41 82 05 8C */ beq lbl_803A0C14 -/* 803A068C 0039D5EC 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0690 0039D5F0 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A068C 0039D5EC 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0690 0039D5F0 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A0694 0039D5F4 1F A4 00 64 */ mulli r29, r4, 0x64 /* 803A0698 0039D5F8 3B C3 00 0C */ addi r30, r3, 0xc /* 803A069C 0039D5FC 7C 1E E8 AE */ lbzx r0, r30, r29 @@ -4406,16 +4411,16 @@ lbl_803A0680: /* 803A06A8 0039D608 28 00 00 02 */ cmplwi r0, 2 /* 803A06AC 0039D60C 40 82 00 20 */ bne lbl_803A06CC lbl_803A06B0: -/* 803A06B0 0039D610 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A06B4 0039D614 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 803A06B0 0039D610 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A06B4 0039D614 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 803A06B8 0039D618 7C 60 EA 14 */ add r3, r0, r29 /* 803A06BC 0039D61C 80 63 00 4C */ lwz r3, 0x4c(r3) /* 803A06C0 0039D620 48 00 81 45 */ bl voiceUnblock /* 803A06C4 0039D624 38 00 00 03 */ li r0, 3 /* 803A06C8 0039D628 7C 1E E9 AE */ stbx r0, r30, r29 lbl_803A06CC: -/* 803A06CC 0039D62C 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A06D0 0039D630 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A06CC 0039D62C 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A06D0 0039D630 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A06D4 0039D634 7F A3 E8 2E */ lwzx r29, r3, r29 /* 803A06D8 0039D638 3C 1D 00 01 */ addis r0, r29, 1 /* 803A06DC 0039D63C 28 00 FF FF */ cmplwi r0, 0xffff @@ -4519,16 +4524,16 @@ lbl_803A0820: /* 803A083C 0039D79C 28 00 00 02 */ cmplwi r0, 2 /* 803A0840 0039D7A0 40 82 00 20 */ bne lbl_803A0860 lbl_803A0844: -/* 803A0844 0039D7A4 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0848 0039D7A8 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 803A0844 0039D7A4 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0848 0039D7A8 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 803A084C 0039D7AC 7C 60 EA 14 */ add r3, r0, r29 /* 803A0850 0039D7B0 80 63 00 4C */ lwz r3, 0x4c(r3) /* 803A0854 0039D7B4 48 00 7F B1 */ bl voiceUnblock /* 803A0858 0039D7B8 38 00 00 03 */ li r0, 3 /* 803A085C 0039D7BC 7C 1E E9 AE */ stbx r0, r30, r29 lbl_803A0860: -/* 803A0860 0039D7C0 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0864 0039D7C4 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A0860 0039D7C0 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0864 0039D7C4 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A0868 0039D7C8 7F A3 E8 2E */ lwzx r29, r3, r29 /* 803A086C 0039D7CC 3C 1D 00 01 */ addis r0, r29, 1 /* 803A0870 0039D7D0 28 00 FF FF */ cmplwi r0, 0xffff @@ -4632,16 +4637,16 @@ lbl_803A09B4: /* 803A09D0 0039D930 28 00 00 02 */ cmplwi r0, 2 /* 803A09D4 0039D934 40 82 00 20 */ bne lbl_803A09F4 lbl_803A09D8: -/* 803A09D8 0039D938 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A09DC 0039D93C 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 803A09D8 0039D938 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A09DC 0039D93C 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 803A09E0 0039D940 7C 60 EA 14 */ add r3, r0, r29 /* 803A09E4 0039D944 80 63 00 4C */ lwz r3, 0x4c(r3) /* 803A09E8 0039D948 48 00 7E 1D */ bl voiceUnblock /* 803A09EC 0039D94C 38 00 00 03 */ li r0, 3 /* 803A09F0 0039D950 7C 1E E9 AE */ stbx r0, r30, r29 lbl_803A09F4: -/* 803A09F4 0039D954 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A09F8 0039D958 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A09F4 0039D954 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A09F8 0039D958 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A09FC 0039D95C 7F A3 E8 2E */ lwzx r29, r3, r29 /* 803A0A00 0039D960 3C 1D 00 01 */ addis r0, r29, 1 /* 803A0A04 0039D964 28 00 FF FF */ cmplwi r0, 0xffff @@ -4744,16 +4749,16 @@ lbl_803A0B44: /* 803A0B60 0039DAC0 28 00 00 02 */ cmplwi r0, 2 /* 803A0B64 0039DAC4 40 82 00 20 */ bne lbl_803A0B84 lbl_803A0B68: -/* 803A0B68 0039DAC8 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0B6C 0039DACC 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 803A0B68 0039DAC8 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0B6C 0039DACC 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 803A0B70 0039DAD0 7C 60 EA 14 */ add r3, r0, r29 /* 803A0B74 0039DAD4 80 63 00 4C */ lwz r3, 0x4c(r3) /* 803A0B78 0039DAD8 48 00 7C 8D */ bl voiceUnblock /* 803A0B7C 0039DADC 38 00 00 03 */ li r0, 3 /* 803A0B80 0039DAE0 7C 1E E9 AE */ stbx r0, r30, r29 lbl_803A0B84: -/* 803A0B84 0039DAE4 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0B88 0039DAE8 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A0B84 0039DAE4 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0B88 0039DAE8 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A0B8C 0039DAEC 7F A3 E8 2E */ lwzx r29, r3, r29 /* 803A0B90 0039DAF0 3C 1D 00 01 */ addis r0, r29, 1 /* 803A0B94 0039DAF4 28 00 FF FF */ cmplwi r0, 0xffff @@ -4771,16 +4776,16 @@ lbl_803A0B84: /* 803A0BC4 0039DB24 28 00 00 02 */ cmplwi r0, 2 /* 803A0BC8 0039DB28 40 82 00 20 */ bne lbl_803A0BE8 lbl_803A0BCC: -/* 803A0BCC 0039DB2C 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0BD0 0039DB30 38 03 13 F8 */ addi r0, r3, lbl_805513F8@l +/* 803A0BCC 0039DB2C 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0BD0 0039DB30 38 03 13 F8 */ addi r0, r3, streamInfo@l /* 803A0BD4 0039DB34 7C 60 EA 14 */ add r3, r0, r29 /* 803A0BD8 0039DB38 80 63 00 4C */ lwz r3, 0x4c(r3) /* 803A0BDC 0039DB3C 48 00 7C 29 */ bl voiceUnblock /* 803A0BE0 0039DB40 38 00 00 03 */ li r0, 3 /* 803A0BE4 0039DB44 7C 1E E9 AE */ stbx r0, r30, r29 lbl_803A0BE8: -/* 803A0BE8 0039DB48 3C 60 80 55 */ lis r3, lbl_805513F8@ha -/* 803A0BEC 0039DB4C 38 63 13 F8 */ addi r3, r3, lbl_805513F8@l +/* 803A0BE8 0039DB48 3C 60 80 55 */ lis r3, streamInfo@ha +/* 803A0BEC 0039DB4C 38 63 13 F8 */ addi r3, r3, streamInfo@l /* 803A0BF0 0039DB50 7C 63 E8 2E */ lwzx r3, r3, r29 /* 803A0BF4 0039DB54 3C 03 00 01 */ addis r0, r3, 1 /* 803A0BF8 0039DB58 28 00 FF FF */ cmplwi r0, 0xffff diff --git a/asm/musyx/synth.s b/asm/musyx/synth.s index e430ede9..d7fe4e13 100644 --- a/asm/musyx/synth.s +++ b/asm/musyx/synth.s @@ -1,5 +1,46 @@ .include "macros.inc" +.section .bss +.global synthTicksPerSecond +synthTicksPerSecond: + .skip 0x240 +.global synthInfo +synthInfo: + .skip 0x214 +.global synthMasterFader +synthMasterFader: + .skip 0x600 +.global synthTrackVolume +synthTrackVolume: + .skip 0x40 +.global synthJobTable +synthJobTable: + .skip 0x180 +.global synthAuxAUser +synthAuxAUser: + .skip 0x20 +.global synthAuxACallback +synthAuxACallback: + .skip 0x20 +.global synthAuxBUser +synthAuxBUser: + .skip 0x20 +.global synthAuxBCallback +synthAuxBCallback: + .skip 0x20 +.global synthITDDefault +synthITDDefault: + .skip 0x10 +.global synthGlobalVariable +synthGlobalVariable: + .skip 0x40 +.global inpAuxB +inpAuxB: + .skip 0x480 +.global inpAuxA +inpAuxA: + .skip 0x484 + .section .sbss .balign 4 .global sndActive @@ -54,11 +95,11 @@ lbl_80398CB0: /* 80398CB0 00395C10 54 60 18 38 */ slwi r0, r3, 3 /* 80398CB4 00395C14 3C C0 88 89 */ lis r6, 0x88888889@ha /* 80398CB8 00395C18 1C 00 06 00 */ mulli r0, r0, 0x600 -/* 80398CBC 00395C1C 3C 60 80 55 */ lis r3, lbl_8054FE10@ha +/* 80398CBC 00395C1C 3C 60 80 55 */ lis r3, synthTicksPerSecond@ha /* 80398CC0 00395C20 38 C6 88 89 */ addi r6, r6, 0x88888889@l /* 80398CC4 00395C24 54 84 34 B2 */ rlwinm r4, r4, 6, 0x12, 0x19 /* 80398CC8 00395C28 7C C6 00 16 */ mulhwu r6, r6, r0 -/* 80398CCC 00395C2C 38 63 FE 10 */ addi r3, r3, lbl_8054FE10@l +/* 80398CCC 00395C2C 38 63 FE 10 */ addi r3, r3, synthTicksPerSecond@l /* 80398CD0 00395C30 54 A0 15 BA */ rlwinm r0, r5, 2, 0x16, 0x1d /* 80398CD4 00395C34 7C 63 22 14 */ add r3, r3, r4 /* 80398CD8 00395C38 54 C4 C9 FE */ srwi r4, r6, 7 @@ -74,9 +115,9 @@ synthGetTicksPerSecond: /* 80398CF4 00395C54 7C 04 03 78 */ mr r4, r0 lbl_80398CF8: /* 80398CF8 00395C58 88 03 01 23 */ lbz r0, 0x123(r3) -/* 80398CFC 00395C5C 3C 60 80 55 */ lis r3, lbl_8054FE10@ha +/* 80398CFC 00395C5C 3C 60 80 55 */ lis r3, synthTicksPerSecond@ha /* 80398D00 00395C60 54 84 30 32 */ slwi r4, r4, 6 -/* 80398D04 00395C64 38 63 FE 10 */ addi r3, r3, lbl_8054FE10@l +/* 80398D04 00395C64 38 63 FE 10 */ addi r3, r3, synthTicksPerSecond@l /* 80398D08 00395C68 54 00 10 3A */ slwi r0, r0, 2 /* 80398D0C 00395C6C 7C 63 22 14 */ add r3, r3, r4 /* 80398D10 00395C70 7C 63 00 2E */ lwzx r3, r3, r0 @@ -1662,10 +1703,10 @@ lbl_8039A364: /* 8039A36C 003972CC 80 DE 01 14 */ lwz r6, 0x114(r30) /* 8039A370 003972D0 38 A0 EF FF */ li r5, -4097 /* 8039A374 003972D4 7C 84 18 38 */ and r4, r4, r3 -/* 8039A378 003972D8 3C 60 80 55 */ lis r3, lbl_80550264@ha +/* 8039A378 003972D8 3C 60 80 55 */ lis r3, synthMasterFader@ha /* 8039A37C 003972DC 90 9E 01 18 */ stw r4, 0x118(r30) /* 8039A380 003972E0 7C C4 28 38 */ and r4, r6, r5 -/* 8039A384 003972E4 38 A3 02 64 */ addi r5, r3, lbl_80550264@l +/* 8039A384 003972E4 38 A3 02 64 */ addi r5, r3, synthMasterFader@l /* 8039A388 003972E8 90 9E 01 14 */ stw r4, 0x114(r30) /* 8039A38C 003972EC 88 DE 01 1D */ lbz r6, 0x11d(r30) /* 8039A390 003972F0 88 7E 01 1E */ lbz r3, 0x11e(r30) @@ -1684,9 +1725,9 @@ lbl_8039A364: /* 8039A3C4 00397324 7C 05 1C 2E */ lfsx f0, r5, r3 /* 8039A3C8 00397328 EC 61 00 32 */ fmuls f3, f1, f0 /* 8039A3CC 0039732C 41 82 00 38 */ beq lbl_8039A404 -/* 8039A3D0 00397330 3C 80 80 55 */ lis r4, lbl_80550864@ha +/* 8039A3D0 00397330 3C 80 80 55 */ lis r4, synthTrackVolume@ha /* 8039A3D4 00397334 3C 60 43 30 */ lis r3, 0x4330 -/* 8039A3D8 00397338 38 84 08 64 */ addi r4, r4, lbl_80550864@l +/* 8039A3D8 00397338 38 84 08 64 */ addi r4, r4, synthTrackVolume@l /* 8039A3DC 0039733C 90 61 00 08 */ stw r3, 8(r1) /* 8039A3E0 00397340 7C 64 40 AE */ lbzx r3, r4, r8 /* 8039A3E4 00397344 C8 22 D5 38 */ lfd f1, lbl_805AF258@sda21(r2) @@ -2035,11 +2076,11 @@ lbl_8039A8A8: synthAddJob: /* 8039A8E8 00397848 88 0D AE 49 */ lbz r0, synthJobTableIndex@sda21(r13) /* 8039A8EC 0039784C 54 A6 C2 3E */ srwi r6, r5, 8 -/* 8039A8F0 00397850 3C A0 80 55 */ lis r5, lbl_805508A4@ha +/* 8039A8F0 00397850 3C A0 80 55 */ lis r5, synthJobTable@ha /* 8039A8F4 00397854 2C 04 00 01 */ cmpwi r4, 1 /* 8039A8F8 00397858 7C 06 02 14 */ add r0, r6, r0 /* 8039A8FC 0039785C 54 08 06 FE */ clrlwi r8, r0, 0x1b -/* 8039A900 00397860 38 05 08 A4 */ addi r0, r5, lbl_805508A4@l +/* 8039A900 00397860 38 05 08 A4 */ addi r0, r5, synthJobTable@l /* 8039A904 00397864 1C A8 00 0C */ mulli r5, r8, 0xc /* 8039A908 00397868 7C A0 2A 14 */ add r5, r0, r5 /* 8039A90C 0039786C 41 82 00 84 */ beq lbl_8039A990 @@ -2072,9 +2113,9 @@ lbl_8039A958: /* 8039A96C 003978CC 48 00 00 1C */ b lbl_8039A988 lbl_8039A970: /* 8039A970 003978D0 88 03 00 09 */ lbz r0, 9(r3) -/* 8039A974 003978D4 3C C0 80 55 */ lis r6, lbl_805508A4@ha +/* 8039A974 003978D4 3C C0 80 55 */ lis r6, synthJobTable@ha /* 8039A978 003978D8 80 E3 00 00 */ lwz r7, 0(r3) -/* 8039A97C 003978DC 38 66 08 A4 */ addi r3, r6, lbl_805508A4@l +/* 8039A97C 003978DC 38 66 08 A4 */ addi r3, r6, synthJobTable@l /* 8039A980 003978E0 1C 00 00 0C */ mulli r0, r0, 0xc /* 8039A984 003978E4 7C E3 01 2E */ stwx r7, r3, r0 lbl_8039A988: @@ -2101,8 +2142,8 @@ lbl_8039A9BC: /* 8039A9D0 00397930 48 00 00 20 */ b lbl_8039A9F0 lbl_8039A9D4: /* 8039A9D4 00397934 88 04 00 09 */ lbz r0, 9(r4) -/* 8039A9D8 00397938 3C 60 80 55 */ lis r3, lbl_805508A4@ha -/* 8039A9DC 0039793C 38 63 08 A4 */ addi r3, r3, lbl_805508A4@l +/* 8039A9D8 00397938 3C 60 80 55 */ lis r3, synthJobTable@ha +/* 8039A9DC 0039793C 38 63 08 A4 */ addi r3, r3, synthJobTable@l /* 8039A9E0 00397940 80 C4 00 00 */ lwz r6, 0(r4) /* 8039A9E4 00397944 1C 00 00 0C */ mulli r0, r0, 0xc /* 8039A9E8 00397948 7C 63 02 14 */ add r3, r3, r0 @@ -2198,9 +2239,9 @@ synthHandle: /* 8039AB10 00397A70 90 01 00 54 */ stw r0, 0x54(r1) /* 8039AB14 00397A74 39 61 00 50 */ addi r11, r1, 0x50 /* 8039AB18 00397A78 4B FE EF 49 */ bl _savegpr_20 -/* 8039AB1C 00397A7C 3C 80 80 55 */ lis r4, lbl_8054FE10@ha +/* 8039AB1C 00397A7C 3C 80 80 55 */ lis r4, synthTicksPerSecond@ha /* 8039AB20 00397A80 7C 79 1B 78 */ mr r25, r3 -/* 8039AB24 00397A84 3B E4 FE 10 */ addi r31, r4, lbl_8054FE10@l +/* 8039AB24 00397A84 3B E4 FE 10 */ addi r31, r4, synthTicksPerSecond@l /* 8039AB28 00397A88 38 9F 02 40 */ addi r4, r31, 0x240 /* 8039AB2C 00397A8C 80 04 00 04 */ lwz r0, 4(r4) /* 8039AB30 00397A90 28 00 00 00 */ cmplwi r0, 0 @@ -2867,8 +2908,8 @@ lbl_8039B460: /* 8039B460 003983C0 57 63 06 3E */ clrlwi r3, r27, 0x18 /* 8039B464 003983C4 3C 00 43 30 */ lis r0, 0x4330 /* 8039B468 003983C8 90 61 00 14 */ stw r3, 0x14(r1) -/* 8039B46C 003983CC 3C 60 80 55 */ lis r3, lbl_80550264@ha -/* 8039B470 003983D0 38 63 02 64 */ addi r3, r3, lbl_80550264@l +/* 8039B46C 003983CC 3C 60 80 55 */ lis r3, synthMasterFader@ha +/* 8039B470 003983D0 38 63 02 64 */ addi r3, r3, synthMasterFader@l /* 8039B474 003983D4 C8 22 D5 38 */ lfd f1, lbl_805AF258@sda21(r2) /* 8039B478 003983D8 90 01 00 10 */ stw r0, 0x10(r1) /* 8039B47C 003983DC 7C 7D 1B 78 */ mr r29, r3 @@ -2949,9 +2990,9 @@ lbl_8039B580: /* 8039B580 003984E0 57 63 06 3E */ clrlwi r3, r27, 0x18 /* 8039B584 003984E4 3C 00 43 30 */ lis r0, 0x4330 /* 8039B588 003984E8 90 61 00 14 */ stw r3, 0x14(r1) -/* 8039B58C 003984EC 3C 60 80 55 */ lis r3, lbl_80550264@ha +/* 8039B58C 003984EC 3C 60 80 55 */ lis r3, synthMasterFader@ha /* 8039B590 003984F0 C8 22 D5 38 */ lfd f1, lbl_805AF258@sda21(r2) -/* 8039B594 003984F4 3B A3 02 64 */ addi r29, r3, lbl_80550264@l +/* 8039B594 003984F4 3B A3 02 64 */ addi r29, r3, synthMasterFader@l /* 8039B598 003984F8 90 01 00 10 */ stw r0, 0x10(r1) /* 8039B59C 003984FC 3B 80 00 00 */ li r28, 0 /* 8039B5A0 00398500 C0 42 D5 10 */ lfs f2, lbl_805AF230@sda21(r2) @@ -3041,9 +3082,9 @@ lbl_8039B6B8: /* 8039B6B8 00398618 57 63 06 3E */ clrlwi r3, r27, 0x18 /* 8039B6BC 0039861C 3C 00 43 30 */ lis r0, 0x4330 /* 8039B6C0 00398620 90 61 00 14 */ stw r3, 0x14(r1) -/* 8039B6C4 00398624 3C 60 80 55 */ lis r3, lbl_80550264@ha +/* 8039B6C4 00398624 3C 60 80 55 */ lis r3, synthMasterFader@ha /* 8039B6C8 00398628 C8 22 D5 38 */ lfd f1, lbl_805AF258@sda21(r2) -/* 8039B6CC 0039862C 3B A3 02 64 */ addi r29, r3, lbl_80550264@l +/* 8039B6CC 0039862C 3B A3 02 64 */ addi r29, r3, synthMasterFader@l /* 8039B6D0 00398630 90 01 00 10 */ stw r0, 0x10(r1) /* 8039B6D4 00398634 54 9F 06 3E */ clrlwi r31, r4, 0x18 /* 8039B6D8 00398638 C0 42 D5 10 */ lfs f2, lbl_805AF230@sda21(r2) @@ -3118,10 +3159,10 @@ lbl_8039B7BC: /* 8039B7CC 0039872C 48 00 01 2C */ b lbl_8039B8F8 lbl_8039B7D0: /* 8039B7D0 00398730 57 A0 06 3E */ clrlwi r0, r29, 0x18 -/* 8039B7D4 00398734 3C 60 80 55 */ lis r3, lbl_80550264@ha +/* 8039B7D4 00398734 3C 60 80 55 */ lis r3, synthMasterFader@ha /* 8039B7D8 00398738 1C C0 00 30 */ mulli r6, r0, 0x30 /* 8039B7DC 0039873C 80 81 00 08 */ lwz r4, 8(r1) -/* 8039B7E0 00398740 38 A3 02 64 */ addi r5, r3, lbl_80550264@l +/* 8039B7E0 00398740 38 A3 02 64 */ addi r5, r3, synthMasterFader@l /* 8039B7E4 00398744 28 04 00 00 */ cmplwi r4, 0 /* 8039B7E8 00398748 7D 05 32 14 */ add r8, r5, r6 /* 8039B7EC 0039874C 9B C8 00 2C */ stb r30, 0x2c(r8) @@ -3210,9 +3251,9 @@ lbl_8039B8F8: .global synthIsFadeOutActive synthIsFadeOutActive: /* 8039B918 00398878 54 65 06 3E */ clrlwi r5, r3, 0x18 -/* 8039B91C 0039887C 3C 60 80 55 */ lis r3, lbl_80550264@ha +/* 8039B91C 0039887C 3C 60 80 55 */ lis r3, synthMasterFader@ha /* 8039B920 00398880 1C 85 00 30 */ mulli r4, r5, 0x30 -/* 8039B924 00398884 38 03 02 64 */ addi r0, r3, lbl_80550264@l +/* 8039B924 00398884 38 03 02 64 */ addi r0, r3, synthMasterFader@l /* 8039B928 00398888 7C 80 22 14 */ add r4, r0, r4 /* 8039B92C 0039888C 88 04 00 2D */ lbz r0, 0x2d(r4) /* 8039B930 00398890 28 00 00 04 */ cmplwi r0, 4 @@ -3238,9 +3279,9 @@ synthSetMusicVolumeType: /* 8039B970 003988D0 28 00 00 00 */ cmplwi r0, 0 /* 8039B974 003988D4 4D 82 00 20 */ beqlr /* 8039B978 003988D8 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8039B97C 003988DC 3C 60 80 55 */ lis r3, lbl_80550264@ha +/* 8039B97C 003988DC 3C 60 80 55 */ lis r3, synthMasterFader@ha /* 8039B980 003988E0 1C 00 00 30 */ mulli r0, r0, 0x30 -/* 8039B984 003988E4 38 63 02 64 */ addi r3, r3, lbl_80550264@l +/* 8039B984 003988E4 38 63 02 64 */ addi r3, r3, synthMasterFader@l /* 8039B988 003988E8 7C 63 02 14 */ add r3, r3, r0 /* 8039B98C 003988EC 98 83 00 2D */ stb r4, 0x2d(r3) /* 8039B990 003988F0 4E 80 00 20 */ blr @@ -3314,8 +3355,8 @@ synthInit: /* 8039BA70 003989D0 39 61 00 50 */ addi r11, r1, 0x50 /* 8039BA74 003989D4 4B FE DF D5 */ bl __save_gpr /* 8039BA78 003989D8 7C 8F 23 78 */ mr r15, r4 -/* 8039BA7C 003989DC 3C 80 80 55 */ lis r4, lbl_8054FE10@ha -/* 8039BA80 003989E0 3B E4 FE 10 */ addi r31, r4, lbl_8054FE10@l +/* 8039BA7C 003989DC 3C 80 80 55 */ lis r4, synthTicksPerSecond@ha +/* 8039BA80 003989E0 3B E4 FE 10 */ addi r31, r4, synthTicksPerSecond@l /* 8039BA84 003989E4 38 A0 00 00 */ li r5, 0 /* 8039BA88 003989E8 1D CF 04 04 */ mulli r14, r15, 0x404 /* 8039BA8C 003989EC 38 00 18 00 */ li r0, 0x1800 diff --git a/asm/musyx/synthdata.s b/asm/musyx/synthdata.s index 3cfdd235..89331aa4 100644 --- a/asm/musyx/synthdata.s +++ b/asm/musyx/synthdata.s @@ -1,5 +1,37 @@ .include "macros.inc" +.section .bss +.global dataKeymapTab +dataKeymapTab: + .skip 0x800 +.global dataLayerTab +dataLayerTab: + .skip 0xC00 +.global dataCurveTab +dataCurveTab: + .skip 0x4000 +.global dataSmpSDirs +dataSmpSDirs: + .skip 0x600 +.global dataFXGroups +dataFXGroups: + .skip 0x400 +.global dataMacMaintab +dataMacMaintab: + .skip 0x800 +.global dataMacSubTabmem +dataMacSubTabmem: + .skip 0x4000 +.global "key$731" +"key$731": + .skip 0x20 +.global "key$493" +"key$493": + .skip 0xC +.global "key$487" +"key$487": + .skip 0xC + .section .sbss .balign 4 "result$494": @@ -36,44 +68,1069 @@ dataCurveNum: .skip 0x2 dataSmpSDirNum: .skip 0x6 + .section .data, "wa" .global lbl_803F2FD8 lbl_803F2FD8: - .incbin "baserom.dol", 0x3EFFD8, 0x1C + # ROM: 0x3EFFD8 + .4byte 0x100010F3 + .4byte 0x11F51307 + .4byte 0x1428155B + .4byte 0x16A017F9 + .4byte 0x19661AE8 + .4byte 0x1C821E34 + .4byte 0x20000000 + .global lbl_803F2FF4 lbl_803F2FF4: - .incbin "baserom.dol", 0x3EFFF4, 0x204 + # ROM: 0x3EFFF4 + .4byte 0 + .4byte 0x0000000A + .4byte 0x00000014 + .4byte 0x0000001E + .4byte 0x00000028 + .4byte 0x00000032 + .4byte 0x0000003C + .4byte 0x00000046 + .4byte 0x00000050 + .4byte 0x0000005A + .4byte 0x00000064 + .4byte 0x0000006E + .4byte 0x0000006E + .4byte 0x00000078 + .4byte 0x00000082 + .4byte 0x0000008C + .4byte 0x00000096 + .4byte 0x000000A0 + .4byte 0x000000AA + .4byte 0x000000BE + .4byte 0x000000C8 + .4byte 0x000000DC + .4byte 0x000000E6 + .4byte 0x000000FA + .4byte 0x0000010E + .4byte 0x00000122 + .4byte 0x00000136 + .4byte 0x0000014A + .4byte 0x0000015E + .4byte 0x0000017C + .4byte 0x0000019A + .4byte 0x000001B8 + .4byte 0x000001D6 + .4byte 0x000001F4 + .4byte 0x0000021C + .4byte 0x00000244 + .4byte 0x0000026C + .4byte 0x00000294 + .4byte 0x000002C6 + .4byte 0x000002F8 + .4byte 0x00000334 + .4byte 0x00000370 + .4byte 0x000003AC + .4byte 0x000003E8 + .4byte 0x000003E8 + .4byte 0x0000044C + .4byte 0x000004B0 + .4byte 0x00000514 + .4byte 0x00000578 + .4byte 0x000005DC + .4byte 0x00000640 + .4byte 0x000006A4 + .4byte 0x00000708 + .4byte 0x000007D0 + .4byte 0x00000834 + .4byte 0x000008FC + .4byte 0x00000960 + .4byte 0x00000A28 + .4byte 0x00000AF0 + .4byte 0x00000BB8 + .4byte 0x00000C80 + .4byte 0x00000DAC + .4byte 0x00000E74 + .4byte 0x00000FA0 + .4byte 0x000010CC + .4byte 0x000011F8 + .4byte 0x00001324 + .4byte 0x000014B4 + .4byte 0x00001644 + .4byte 0x000017D4 + .4byte 0x00001964 + .4byte 0x00001B58 + .4byte 0x00001D4C + .4byte 0x00001FA4 + .4byte 0x00002198 + .4byte 0x00002454 + .4byte 0x000026AC + .4byte 0x00002710 + .4byte 0x00002AF8 + .4byte 0x00002EE0 + .4byte 0x000032C8 + .4byte 0x000036B0 + .4byte 0x00003A98 + .4byte 0x00003E80 + .4byte 0x00004268 + .4byte 0x00004650 + .4byte 0x00004A38 + .4byte 0x00005208 + .4byte 0x000055F0 + .4byte 0x00005DC0 + .4byte 0x00006590 + .4byte 0x00006D60 + .4byte 0x00007530 + .4byte 0x00007D00 + .4byte 0x000084D0 + .4byte 0x00009088 + .4byte 0x00009858 + .4byte 0x0000A410 + .4byte 0x0000AFC8 + .4byte 0x0000BF68 + .4byte 0x0000C350 + .4byte 0x0000D6D8 + .4byte 0x0000EA60 + .4byte 0x0000FDE8 + .4byte 0x00011170 + .4byte 0x000124F8 + .4byte 0x00013880 + .4byte 0x00014C08 + .4byte 0x00015F90 + .4byte 0x00017318 + .4byte 0x000186A0 + .4byte 0x00019A28 + .4byte 0x0001ADB0 + .4byte 0x0001C138 + .4byte 0x0001D4C0 + .4byte 0x0001E848 + .4byte 0x0001FBD0 + .4byte 0x00020F58 + .4byte 0x000222E0 + .4byte 0x00023668 + .4byte 0x000249F0 + .4byte 0x00025D78 + .4byte 0x00027100 + .4byte 0x00028488 + .4byte 0x00029810 + .4byte 0x0002AB98 + .4byte 0x0002BF20 + .4byte 0 + .4byte 0 + .global lbl_803F31F8 lbl_803F31F8: - .incbin "baserom.dol", 0x3F01F8, 0x20 + # ROM: 0x3F01F8 + .4byte 0x00000001 + .4byte 0 + .4byte 0x00000002 + .4byte 0 + .4byte 0x00000004 + .4byte 0 + .4byte 0x00000008 + .4byte 0 + .global lbl_803F3218 lbl_803F3218: - .incbin "baserom.dol", 0x3F0218, 0x10 + # ROM: 0x3F0218 + .4byte 0x80000001 + .4byte 0x80000002 + .4byte 0x80000004 + .4byte 0x80000008 + .global lbl_803F3228 lbl_803F3228: - .incbin "baserom.dol", 0x3F0228, 0x20 + # ROM: 0x3F0228 + .4byte 0x00000010 + .4byte 0 + .4byte 0x00000020 + .4byte 0 + .4byte 0x00000040 + .4byte 0 + .4byte 0x00000080 + .4byte 0 + .global lbl_803F3248 lbl_803F3248: - .incbin "baserom.dol", 0x3F0248, 0x10 + # ROM: 0x3F0248 + .4byte 0x80000010 + .4byte 0x80000020 + .4byte 0x80000040 + .4byte 0x80000080 + .global lbl_803F3258 lbl_803F3258: - .incbin "baserom.dol", 0x3F0258, 0x1C8 + # ROM: 0x3F0258 + .4byte 0x803A5E98 + .4byte 0x803A5EB0 + .4byte 0x803A5EC8 + .4byte 0x803A5F00 + .4byte 0x803A5F3C + .4byte 0x803A5F50 + .4byte 0x803A5F60 + .4byte 0x803A5FA8 + .4byte 0x803A5FC4 + .4byte 0x803A5FD4 + .4byte 0x803A6050 + .4byte 0x803A60A0 + .4byte 0x803A60F0 + .4byte 0x803A6100 + .4byte 0x803A6110 + .4byte 0x803A6120 + .4byte 0x803A6130 + .4byte 0x803A6140 + .4byte 0x803A6150 + .4byte 0x803A6168 + .4byte 0x803A61A8 + .4byte 0x803A61B8 + .4byte 0x803A61C8 + .4byte 0x803A61D8 + .4byte 0x803A61E8 + .4byte 0x803A61FC + .4byte 0x803A6250 + .4byte 0x803A62D0 + .4byte 0x803A62E0 + .4byte 0x803A62F0 + .4byte 0x803A6358 + .4byte 0x803A63C0 + .4byte 0x803A63F8 + .4byte 0x803A6408 + .4byte 0x803A6464 + .4byte 0x803A64E8 + .4byte 0x803A6504 + .4byte 0x803A6558 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A656C + .4byte 0x803A65E4 + .4byte 0x803A6628 + .4byte 0x803A6638 + .4byte 0x803A66A8 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A66B8 + .4byte 0x803A6724 + .4byte 0x803A674C + .4byte 0x803A6764 + .4byte 0x803A677C + .4byte 0x803A6794 + .4byte 0x803A67A8 + .4byte 0x803A67B8 + .4byte 0x803A67F8 + .4byte 0x803A6824 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6878 + .4byte 0x803A6888 + .4byte 0x803A6898 + .4byte 0x803A68A8 + .4byte 0x803A68B8 + .4byte 0x803A68C8 + .4byte 0x803A68D8 + .4byte 0x803A68E8 + .4byte 0x803A68F8 + .4byte 0x803A6908 + .4byte 0x803A6918 + .4byte 0x803A6928 + .4byte 0x803A6938 + .4byte 0x803A6948 + .4byte 0x803A6958 + .4byte 0x803A6B04 + .4byte 0x803A6968 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A69B8 + .4byte 0x803A69E4 + .4byte 0x803A69F4 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6A28 + .4byte 0x803A6A3C + .4byte 0x803A6A50 + .4byte 0x803A6A64 + .4byte 0x803A6A78 + .4byte 0x803A6A8C + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6B04 + .4byte 0x803A6AE0 + .4byte 0x803A6AF4 + .global lbl_803F3420 lbl_803F3420: - .incbin "baserom.dol", 0x3F0420, 0x200 + # ROM: 0x3F0420 + .4byte 0x3F800000 + .4byte 0x3F879C80 + .4byte 0x3F8FACD8 + .4byte 0x3F9837F0 + .4byte 0x3FA14518 + .4byte 0x3FAADC08 + .4byte 0x3FB504F8 + .4byte 0x3FBFC888 + .4byte 0x3FCB2FF8 + .4byte 0x3FD74500 + .4byte 0x3FE411F8 + .4byte 0x3FF1A1C0 + .4byte 0x40000004 + .4byte 0x40079C80 + .4byte 0x400FACD8 + .4byte 0x401837F4 + .4byte 0x4021451C + .4byte 0x402ADC0C + .4byte 0x403504F8 + .4byte 0x403FC88C + .4byte 0x404B2FFC + .4byte 0x40574504 + .4byte 0x406411F8 + .4byte 0x4071A1C4 + .4byte 0x40800004 + .4byte 0x40879C80 + .4byte 0x408FACDA + .4byte 0x409837F4 + .4byte 0x40A1451C + .4byte 0x40AADC0E + .4byte 0x40B504F8 + .4byte 0x40BFC88C + .4byte 0x40CB2FFC + .4byte 0x40D74504 + .4byte 0x40E411F8 + .4byte 0x40F1A1C6 + .4byte 0x41000004 + .4byte 0x41079C81 + .4byte 0x410FACDB + .4byte 0x411837F5 + .4byte 0x4121451D + .4byte 0x412ADC0E + .4byte 0x413504F9 + .4byte 0x413FC88D + .4byte 0x414B2FFC + .4byte 0x41574504 + .4byte 0x416411F8 + .4byte 0x4171A1C7 + .4byte 0x41800004 + .4byte 0x41879C81 + .4byte 0x418FACDB + .4byte 0x419837F5 + .4byte 0x41A1451D + .4byte 0x41AADC0E + .4byte 0x41B504F9 + .4byte 0x41BFC88D + .4byte 0x41CB2FFC + .4byte 0x41D74504 + .4byte 0x41E411F8 + .4byte 0x41F1A1C7 + .4byte 0x42000004 + .4byte 0x42079C81 + .4byte 0x420FACDB + .4byte 0x421837F5 + .4byte 0x4221451D + .4byte 0x422ADC0E + .4byte 0x423504F9 + .4byte 0x423FC88D + .4byte 0x424B2FFC + .4byte 0x42574504 + .4byte 0x426411F8 + .4byte 0x4271A1C7 + .4byte 0x42800004 + .4byte 0x42879C81 + .4byte 0x428FACDB + .4byte 0x429837F5 + .4byte 0x42A1451D + .4byte 0x42AADC0E + .4byte 0x42B504F9 + .4byte 0x42BFC88D + .4byte 0x42CB2FFC + .4byte 0x42D74504 + .4byte 0x42E411F8 + .4byte 0x42F1A1C7 + .4byte 0x43000004 + .4byte 0x43079C81 + .4byte 0x430FACDB + .4byte 0x431837F5 + .4byte 0x4321451D + .4byte 0x432ADC0E + .4byte 0x433504F9 + .4byte 0x433FC88D + .4byte 0x434B2FFC + .4byte 0x43574504 + .4byte 0x436411F8 + .4byte 0x4371A1C7 + .4byte 0x43800004 + .4byte 0x43879C81 + .4byte 0x438FACDB + .4byte 0x439837F5 + .4byte 0x43A1451D + .4byte 0x43AADC0E + .4byte 0x43B504F9 + .4byte 0x43BFC88D + .4byte 0x43CB2FFC + .4byte 0x43D74504 + .4byte 0x43E411F8 + .4byte 0x43F1A1C7 + .4byte 0x44000004 + .4byte 0x44079C81 + .4byte 0x440FACDB + .4byte 0x441837F5 + .4byte 0x4421451D + .4byte 0x442ADC0E + .4byte 0x443504F9 + .4byte 0x443FC88D + .4byte 0x444B2FFC + .4byte 0x44574504 + .4byte 0x446411F8 + .4byte 0x4471A1C7 + .4byte 0x44800004 + .4byte 0x44879C81 + .4byte 0x448FACDB + .4byte 0x449837F5 + .4byte 0x44A1451D + .4byte 0x44AADC0E + .4byte 0x44B504F9 + .4byte 0x44BFC88D + .global lbl_803F3620 lbl_803F3620: - .incbin "baserom.dol", 0x3F0620, 0x200 + # ROM: 0x3F0620 + .4byte 0x3F800000 + .4byte 0x3F71A1C0 + .4byte 0x3F6411F0 + .4byte 0x3F574500 + .4byte 0x3F4B2FF0 + .4byte 0x3F3FC880 + .4byte 0x3F3504F0 + .4byte 0x3F2ADC00 + .4byte 0x3F214510 + .4byte 0x3F1837F0 + .4byte 0x3F0FACD0 + .4byte 0x3F079C80 + .4byte 0x3F000000 + .4byte 0x3EF1A1C0 + .4byte 0x3EE411E0 + .4byte 0x3ED74500 + .4byte 0x3ECB3000 + .4byte 0x3EBFC880 + .4byte 0x3EB504E0 + .4byte 0x3EAADC00 + .4byte 0x3EA14520 + .4byte 0x3E9837E0 + .4byte 0x3E8FACE0 + .4byte 0x3E879C80 + .4byte 0x3E800000 + .4byte 0x3E71A1C0 + .4byte 0x3E641200 + .4byte 0x3E574500 + .4byte 0x3E4B3000 + .4byte 0x3E3FC880 + .4byte 0x3E350500 + .4byte 0x3E2ADC00 + .4byte 0x3E214500 + .4byte 0x3E183800 + .4byte 0x3E0FACC0 + .4byte 0x3E079C80 + .4byte 0x3E000000 + .4byte 0x3DF1A180 + .4byte 0x3DE41200 + .4byte 0x3DD74500 + .4byte 0x3DCB3000 + .4byte 0x3DBFC880 + .4byte 0x3DB50500 + .4byte 0x3DAADC00 + .4byte 0x3DA14500 + .4byte 0x3D983800 + .4byte 0x3D8FAD00 + .4byte 0x3D879C80 + .4byte 0x3D800000 + .4byte 0x3D71A200 + .4byte 0x3D641200 + .4byte 0x3D574500 + .4byte 0x3D4B3000 + .4byte 0x3D3FC900 + .4byte 0x3D350500 + .4byte 0x3D2ADC00 + .4byte 0x3D214500 + .4byte 0x3D183800 + .4byte 0x3D0FAD00 + .4byte 0x3D079C00 + .4byte 0x3D000000 + .4byte 0x3CF1A200 + .4byte 0x3CE41200 + .4byte 0x3CD74400 + .4byte 0x3CCB3000 + .4byte 0x3CBFC800 + .4byte 0x3CB50400 + .4byte 0x3CAADC00 + .4byte 0x3CA14600 + .4byte 0x3C983800 + .4byte 0x3C8FAC00 + .4byte 0x3C879C00 + .4byte 0x3C800000 + .4byte 0x3C71A000 + .4byte 0x3C641000 + .4byte 0x3C574400 + .4byte 0x3C4B3000 + .4byte 0x3C3FC800 + .4byte 0x3C350400 + .4byte 0x3C2ADC00 + .4byte 0x3C214400 + .4byte 0x3C183800 + .4byte 0x3C0FAC00 + .4byte 0x3C079C00 + .4byte 0x3C000000 + .4byte 0x3BF1A000 + .4byte 0x3BE41000 + .4byte 0x3BD74800 + .4byte 0x3BCB3000 + .4byte 0x3BBFC800 + .4byte 0x3BB50800 + .4byte 0x3BAAE000 + .4byte 0x3BA14800 + .4byte 0x3B983800 + .4byte 0x3B8FB000 + .4byte 0x3B87A000 + .4byte 0x3B800000 + .4byte 0x3B71A000 + .4byte 0x3B641000 + .4byte 0x3B574000 + .4byte 0x3B4B3000 + .4byte 0x3B3FD000 + .4byte 0x3B350000 + .4byte 0x3B2AE000 + .4byte 0x3B214000 + .4byte 0x3B183000 + .4byte 0x3B0FB000 + .4byte 0x3B07A000 + .4byte 0x3B000000 + .4byte 0x3AF1A000 + .4byte 0x3AE42000 + .4byte 0x3AD74000 + .4byte 0x3ACB2000 + .4byte 0x3ABFC000 + .4byte 0x3AB50000 + .4byte 0x3AAAE000 + .4byte 0x3AA14000 + .4byte 0x3A984000 + .4byte 0x3A8FA000 + .4byte 0x3A87A000 + .4byte 0x3A800000 + .4byte 0x3A71C000 + .4byte 0x3A640000 + .4byte 0x3A574000 + .4byte 0x3A4B4000 + .4byte 0x3A3FC000 + .4byte 0x3A350000 + .4byte 0x3A2AC000 + .global lbl_803F3820 lbl_803F3820: - .incbin "baserom.dol", 0x3F0820, 0x184 + # ROM: 0x3F0820 + .4byte 0x7FFF78D6 + .4byte 0x72136BB1 + .4byte 0x65AB5FFB + .4byte 0x5A9D558B + .4byte 0x50C24C3E + .4byte 0x47FA43F3 + .4byte 0x40263C8F + .4byte 0x392C35F9 + .4byte 0x32F4301B + .4byte 0x2D6A2ADF + .4byte 0x28792636 + .4byte 0x2412220E + .4byte 0x20261E5A + .4byte 0x1CA71B0D + .4byte 0x1989181C + .4byte 0x16C2157C + .4byte 0x14491326 + .4byte 0x12141111 + .4byte 0x101D0F36 + .4byte 0x0E5C0D8E + .4byte 0x0CCC0C15 + .4byte 0x0B680AC5 + .4byte 0x0A2A0999 + .4byte 0x090F088D + .4byte 0x0813079F + .4byte 0x073206CB + .4byte 0x066A060E + .4byte 0x05B70565 + .4byte 0x051804CF + .4byte 0x048A0449 + .4byte 0x040C03D2 + .4byte 0x039B0367 + .4byte 0x03370309 + .4byte 0x02DD02B4 + .4byte 0x028D0269 + .4byte 0x02460226 + .4byte 0x020701EA + .4byte 0x01CE01B4 + .4byte 0x019C0185 + .4byte 0x016F015B + .4byte 0x01470135 + .4byte 0x01240113 + .4byte 0x010400F5 + .4byte 0x00E700DA + .4byte 0x00CE00C3 + .4byte 0x00B800AD + .4byte 0x00A4009B + .4byte 0x0092008A + .4byte 0x0082007B + .4byte 0x0074006D + .4byte 0x00670061 + .4byte 0x005C0057 + .4byte 0x0052004D + .4byte 0x00490045 + .4byte 0x0041003D + .4byte 0x003A0037 + .4byte 0x00330031 + .4byte 0x002E002B + .4byte 0x00290026 + .4byte 0x00240022 + .4byte 0x0020001E + .4byte 0x001D001B + .4byte 0x001A0018 + .4byte 0x00170015 + .4byte 0x00140013 + .4byte 0x00120011 + .4byte 0x0010000F + .4byte 0x000E000D + .4byte 0x000D000C + .4byte 0x000B000A + .4byte 0x000A0009 + .4byte 0x00090008 + .4byte 0x00080007 + .4byte 0x00070006 + .4byte 0x00060006 + .4byte 0x00050005 + .4byte 0x00050004 + .4byte 0x00040004 + .4byte 0x00040003 + .4byte 0x00030003 + .4byte 0x00030003 + .4byte 0x00020002 + .4byte 0x00020002 + .4byte 0x00020002 + .4byte 0x00020001 + .4byte 0x00010001 + .4byte 0x00010001 + .4byte 0x00010001 + .4byte 0x00010001 + .4byte 0x00010001 + .4byte 0x00010000 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .global lbl_803F39A4 lbl_803F39A4: - .incbin "baserom.dol", 0x3F09A4, 0x400 + # ROM: 0x3F09A4 + .4byte 0xC1786C65 + .4byte 0x605C5957 + .4byte 0x5452504F + .4byte 0x4D4C4B49 + .4byte 0x48474645 + .4byte 0x44444342 + .4byte 0x4140403F + .4byte 0x3F3E3D3D + .4byte 0x3C3C3B3B + .4byte 0x3A3A3939 + .4byte 0x38383737 + .4byte 0x37363636 + .4byte 0x35353434 + .4byte 0x34333333 + .4byte 0x32323232 + .4byte 0x31313130 + .4byte 0x3030302F + .4byte 0x2F2F2F2E + .4byte 0x2E2E2E2D + .4byte 0x2D2D2D2C + .4byte 0x2C2C2C2C + .4byte 0x2B2B2B2B + .4byte 0x2B2A2A2A + .4byte 0x2A2A2929 + .4byte 0x29292929 + .4byte 0x28282828 + .4byte 0x28282727 + .4byte 0x27272727 + .4byte 0x26262626 + .4byte 0x26262625 + .4byte 0x25252525 + .4byte 0x25252424 + .4byte 0x24242424 + .4byte 0x24232323 + .4byte 0x23232323 + .4byte 0x23222222 + .4byte 0x22222222 + .4byte 0x22212121 + .4byte 0x21212121 + .4byte 0x21212020 + .4byte 0x20202020 + .4byte 0x2020201F + .4byte 0x1F1F1F1F + .4byte 0x1F1F1F1F + .4byte 0x1F1E1E1E + .4byte 0x1E1E1E1E + .4byte 0x1E1E1E1E + .4byte 0x1D1D1D1D + .4byte 0x1D1D1D1D + .4byte 0x1D1D1D1C + .4byte 0x1C1C1C1C + .4byte 0x1C1C1C1C + .4byte 0x1C1C1C1B + .4byte 0x1B1B1B1B + .4byte 0x1B1B1B1B + .4byte 0x1B1B1B1A + .4byte 0x1A1A1A1A + .4byte 0x1A1A1A1A + .4byte 0x1A1A1A1A + .4byte 0x19191919 + .4byte 0x19191919 + .4byte 0x19191919 + .4byte 0x19191818 + .4byte 0x18181818 + .4byte 0x18181818 + .4byte 0x18181818 + .4byte 0x18171717 + .4byte 0x17171717 + .4byte 0x17171717 + .4byte 0x17171717 + .4byte 0x17161616 + .4byte 0x16161616 + .4byte 0x16161616 + .4byte 0x16161616 + .4byte 0x16151515 + .4byte 0x15151515 + .4byte 0x15151515 + .4byte 0x15151515 + .4byte 0x15151514 + .4byte 0x14141414 + .4byte 0x14141414 + .4byte 0x14141414 + .4byte 0x14141414 + .4byte 0x14141313 + .4byte 0x13131313 + .4byte 0x13131313 + .4byte 0x13131313 + .4byte 0x13131313 + .4byte 0x13121212 + .4byte 0x12121212 + .4byte 0x12121212 + .4byte 0x12121212 + .4byte 0x12121212 + .4byte 0x12121111 + .4byte 0x11111111 + .4byte 0x11111111 + .4byte 0x11111111 + .4byte 0x11111111 + .4byte 0x11111111 + .4byte 0x10101010 + .4byte 0x10101010 + .4byte 0x10101010 + .4byte 0x10101010 + .4byte 0x10101010 + .4byte 0x10101010 + .4byte 0x0F0F0F0F + .4byte 0x0F0F0F0F + .4byte 0x0F0F0F0F + .4byte 0x0F0F0F0F + .4byte 0x0F0F0F0F + .4byte 0x0F0F0F0F + .4byte 0x0F0E0E0E + .4byte 0x0E0E0E0E + .4byte 0x0E0E0E0E + .4byte 0x0E0E0E0E + .4byte 0x0E0E0E0E + .4byte 0x0E0E0E0E + .4byte 0x0E0E0E0D + .4byte 0x0D0D0D0D + .4byte 0x0D0D0D0D + .4byte 0x0D0D0D0D + .4byte 0x0D0D0D0D + .4byte 0x0D0D0D0D + .4byte 0x0D0D0D0D + .4byte 0x0D0D0D0C + .4byte 0x0C0C0C0C + .4byte 0x0C0C0C0C + .4byte 0x0C0C0C0C + .4byte 0x0C0C0C0C + .4byte 0x0C0C0C0C + .4byte 0x0C0C0C0C + .4byte 0x0C0C0C0C + .4byte 0x0B0B0B0B + .4byte 0x0B0B0B0B + .4byte 0x0B0B0B0B + .4byte 0x0B0B0B0B + .4byte 0x0B0B0B0B + .4byte 0x0B0B0B0B + .4byte 0x0B0B0B0B + .4byte 0x0B0B0B0B + .4byte 0x0A0A0A0A + .4byte 0x0A0A0A0A + .4byte 0x0A0A0A0A + .4byte 0x0A0A0A0A + .4byte 0x0A0A0A0A + .4byte 0x0A0A0A0A + .4byte 0x0A0A0A0A + .4byte 0x0A0A0A0A + .4byte 0x0A090909 + .4byte 0x09090909 + .4byte 0x09090909 + .4byte 0x09090909 + .4byte 0x09090909 + .4byte 0x09090909 + .4byte 0x09090909 + .4byte 0x09090909 + .4byte 0x09090909 + .4byte 0x08080808 + .4byte 0x08080808 + .4byte 0x08080808 + .4byte 0x08080808 + .4byte 0x08080808 + .4byte 0x08080808 + .4byte 0x08080808 + .4byte 0x08080808 + .4byte 0x08080808 + .4byte 0x08070707 + .4byte 0x07070707 + .4byte 0x07070707 + .4byte 0x07070707 + .4byte 0x07070707 + .4byte 0x07070707 + .4byte 0x07070707 + .4byte 0x07070707 + .4byte 0x07070707 + .4byte 0x07070707 + .4byte 0x06060606 + .4byte 0x06060606 + .4byte 0x06060606 + .4byte 0x06060606 + .4byte 0x06060606 + .4byte 0x06060606 + .4byte 0x06060606 + .4byte 0x06060606 + .4byte 0x06060606 + .4byte 0x06060606 + .4byte 0x06060505 + .4byte 0x05050505 + .4byte 0x05050505 + .4byte 0x05050505 + .4byte 0x05050505 + .4byte 0x05050505 + .4byte 0x05050505 + .4byte 0x05050505 + .4byte 0x05050505 + .4byte 0x05050505 + .4byte 0x05050505 + .4byte 0x05050404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04040404 + .4byte 0x04030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030303 + .4byte 0x03030302 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020202 + .4byte 0x02020201 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010101 + .4byte 0x01010100 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .4byte 0 + .global lbl_803F3DA4 lbl_803F3DA4: - .incbin "baserom.dol", 0x3F0DA4, 0x204 - + # ROM: 0x3F0DA4 + .4byte 0 + .4byte 0x388205FF + .4byte 0x398205FF + .4byte 0x3A1246BF + .4byte 0x3A8205FF + .4byte 0x3ACB295F + .4byte 0x3B1246BF + .4byte 0x3B47192F + .4byte 0x3B8205FF + .4byte 0x3BA48F97 + .4byte 0x3BCB295F + .4byte 0x3BF5D356 + .4byte 0x3C1246BF + .4byte 0x3C2BABEB + .4byte 0x3C47192F + .4byte 0x3C648E8A + .4byte 0x3C8205FF + .4byte 0x3C92C8C5 + .4byte 0x3CA48F97 + .4byte 0x3CB75A75 + .4byte 0x3CCB295F + .4byte 0x3CDFFC54 + .4byte 0x3CF5D356 + .4byte 0x3D065732 + .4byte 0x3D1246BF + .4byte 0x3D1EB852 + .4byte 0x3D2BABEB + .4byte 0x3D39218A + .4byte 0x3D47192F + .4byte 0x3D5592DA + .4byte 0x3D648E8A + .4byte 0x3D740C41 + .4byte 0x3D8205FF + .4byte 0x3D8A46E1 + .4byte 0x3D92C8C5 + .4byte 0x3D9B8BAC + .4byte 0x3DA48F97 + .4byte 0x3DADD484 + .4byte 0x3DB75A75 + .4byte 0x3DC12168 + .4byte 0x3DCB295F + .4byte 0x3DD57258 + .4byte 0x3DDFFC54 + .4byte 0x3DEAC754 + .4byte 0x3DF5D356 + .4byte 0x3E00902E + .4byte 0x3E065732 + .4byte 0x3E0C3EB8 + .4byte 0x3E1246BF + .4byte 0x3E186F48 + .4byte 0x3E1EB852 + .4byte 0x3E2521DE + .4byte 0x3E2BABEB + .4byte 0x3E32567A + .4byte 0x3E39218A + .4byte 0x3E400D1B + .4byte 0x3E47192F + .4byte 0x3E4E45C3 + .4byte 0x3E5592DA + .4byte 0x3E5D0071 + .4byte 0x3E648E8A + .4byte 0x3E6C3D25 + .4byte 0x3E740C41 + .4byte 0x3E7BFBDF + .4byte 0x3E820621 + .4byte 0x3E861E71 + .4byte 0x3E8A4702 + .4byte 0x3E8E7FD4 + .4byte 0x3E92C8E7 + .4byte 0x3E97223A + .4byte 0x3E9B8BCE + .4byte 0x3EA005A3 + .4byte 0x3EA48FB8 + .4byte 0x3EA92A0F + .4byte 0x3EADD4A6 + .4byte 0x3EB28F7E + .4byte 0x3EB75A96 + .4byte 0x3EBC35F0 + .4byte 0x3EC1218A + .4byte 0x3EC61D65 + .4byte 0x3ECB2980 + .4byte 0x3ED045DD + .4byte 0x3ED5727A + .4byte 0x3EDAAF57 + .4byte 0x3EDFFC76 + .4byte 0x3EE559D5 + .4byte 0x3EEAC775 + .4byte 0x3EF04556 + .4byte 0x3EF5D378 + .4byte 0x3EFB71DA + .4byte 0x3F00903F + .4byte 0x3F036FB1 + .4byte 0x3F065743 + .4byte 0x3F0946F6 + .4byte 0x3F0C3EC9 + .4byte 0x3F0F3EBC + .4byte 0x3F1246D0 + .4byte 0x3F155704 + .4byte 0x3F186F58 + .4byte 0x3F1B8FCD + .4byte 0x3F1EB863 + .4byte 0x3F21E918 + .4byte 0x3F2521EE + .4byte 0x3F2862E5 + .4byte 0x3F2BABFC + .4byte 0x3F2EFD33 + .4byte 0x3F32568A + .4byte 0x3F35B802 + .4byte 0x3F39219B + .4byte 0x3F3C9353 + .4byte 0x3F400D3D + .4byte 0x3F438F36 + .4byte 0x3F471950 + .4byte 0x3F4AAB8A + .4byte 0x3F4E45E5 + .4byte 0x3F51E860 + .4byte 0x3F5592FB + .4byte 0x3F5945B7 + .4byte 0x3F5D0093 + .4byte 0x3F60C38F + .4byte 0x3F648EAC + .4byte 0x3F6861E9 + .4byte 0x3F6C3D47 + .4byte 0x3F7020C5 + .4byte 0x3F740C63 + .4byte 0x3F780022 + .4byte 0x3F7BFC01 + .4byte 0x3F800000 + .4byte 0x3F800000 + + .section .text, "ax" .global dataInsertKeymap @@ -86,9 +1143,9 @@ dataInsertKeymap: /* 803A0C48 0039DBA8 93 C1 00 08 */ stw r30, 8(r1) /* 803A0C4C 0039DBAC 7C 7E 1B 78 */ mr r30, r3 /* 803A0C50 0039DBB0 48 01 44 6D */ bl hwDisableIrq -/* 803A0C54 0039DBB4 3C 60 80 55 */ lis r3, lbl_80552CF8@ha +/* 803A0C54 0039DBB4 3C 60 80 55 */ lis r3, dataKeymapTab@ha /* 803A0C58 0039DBB8 A0 CD AE D6 */ lhz r6, dataKeymapNum@sda21(r13) -/* 803A0C5C 0039DBBC 38 83 2C F8 */ addi r4, r3, lbl_80552CF8@l +/* 803A0C5C 0039DBBC 38 83 2C F8 */ addi r4, r3, dataKeymapTab@l /* 803A0C60 0039DBC0 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 803A0C64 0039DBC4 38 E0 00 00 */ li r7, 0 /* 803A0C68 0039DBC8 48 00 00 0C */ b lbl_803A0C74 @@ -104,9 +1161,9 @@ lbl_803A0C74: lbl_803A0C88: /* 803A0C88 0039DBE8 7C 07 30 00 */ cmpw r7, r6 /* 803A0C8C 0039DBEC 40 80 01 34 */ bge lbl_803A0DC0 -/* 803A0C90 0039DBF0 3C 60 80 55 */ lis r3, lbl_80552CF8@ha +/* 803A0C90 0039DBF0 3C 60 80 55 */ lis r3, dataKeymapTab@ha /* 803A0C94 0039DBF4 54 E0 18 38 */ slwi r0, r7, 3 -/* 803A0C98 0039DBF8 38 A3 2C F8 */ addi r5, r3, lbl_80552CF8@l +/* 803A0C98 0039DBF8 38 A3 2C F8 */ addi r5, r3, dataKeymapTab@l /* 803A0C9C 0039DBFC 57 C3 04 3E */ clrlwi r3, r30, 0x10 /* 803A0CA0 0039DC00 7C 85 02 14 */ add r4, r5, r0 /* 803A0CA4 0039DC04 A0 04 00 04 */ lhz r0, 4(r4) @@ -198,9 +1255,9 @@ lbl_803A0DD8: /* 803A0DDC 0039DD3C 38 60 00 00 */ li r3, 0 /* 803A0DE0 0039DD40 48 00 00 2C */ b lbl_803A0E0C lbl_803A0DE4: -/* 803A0DE4 0039DD44 3C 60 80 55 */ lis r3, lbl_80552CF8@ha +/* 803A0DE4 0039DD44 3C 60 80 55 */ lis r3, dataKeymapTab@ha /* 803A0DE8 0039DD48 54 E5 18 38 */ slwi r5, r7, 3 -/* 803A0DEC 0039DD4C 38 83 2C F8 */ addi r4, r3, lbl_80552CF8@l +/* 803A0DEC 0039DD4C 38 83 2C F8 */ addi r4, r3, dataKeymapTab@l /* 803A0DF0 0039DD50 38 00 00 01 */ li r0, 1 /* 803A0DF4 0039DD54 7C 64 2A 14 */ add r3, r4, r5 /* 803A0DF8 0039DD58 B3 C3 00 04 */ sth r30, 4(r3) @@ -214,7 +1271,7 @@ lbl_803A0E0C: /* 803A0E14 0039DD74 83 C1 00 08 */ lwz r30, 8(r1) /* 803A0E18 0039DD78 7C 08 03 A6 */ mtlr r0 /* 803A0E1C 0039DD7C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A0E20 0039DD80 4E 80 00 20 */ blr +/* 803A0E20 0039DD80 4E 80 00 20 */ blr .global sub_803a0e24 sub_803a0e24: @@ -224,9 +1281,9 @@ sub_803a0e24: /* 803A0E30 0039DD90 93 E1 00 0C */ stw r31, 0xc(r1) /* 803A0E34 0039DD94 7C 7F 1B 78 */ mr r31, r3 /* 803A0E38 0039DD98 48 01 42 85 */ bl hwDisableIrq -/* 803A0E3C 0039DD9C 3C 60 80 55 */ lis r3, lbl_80552CF8@ha +/* 803A0E3C 0039DD9C 3C 60 80 55 */ lis r3, dataKeymapTab@ha /* 803A0E40 0039DDA0 A0 CD AE D6 */ lhz r6, dataKeymapNum@sda21(r13) -/* 803A0E44 0039DDA4 38 83 2C F8 */ addi r4, r3, lbl_80552CF8@l +/* 803A0E44 0039DDA4 38 83 2C F8 */ addi r4, r3, dataKeymapTab@l /* 803A0E48 0039DDA8 38 E0 00 00 */ li r7, 0 /* 803A0E4C 0039DDAC 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 803A0E50 0039DDB0 48 00 00 0C */ b lbl_803A0E5C @@ -242,9 +1299,9 @@ lbl_803A0E5C: lbl_803A0E70: /* 803A0E70 0039DDD0 7C 07 30 00 */ cmpw r7, r6 /* 803A0E74 0039DDD4 41 82 01 10 */ beq lbl_803A0F84 -/* 803A0E78 0039DDD8 3C 60 80 55 */ lis r3, lbl_80552CF8@ha +/* 803A0E78 0039DDD8 3C 60 80 55 */ lis r3, dataKeymapTab@ha /* 803A0E7C 0039DDDC 54 E0 18 38 */ slwi r0, r7, 3 -/* 803A0E80 0039DDE0 38 A3 2C F8 */ addi r5, r3, lbl_80552CF8@l +/* 803A0E80 0039DDE0 38 A3 2C F8 */ addi r5, r3, dataKeymapTab@l /* 803A0E84 0039DDE4 7C 85 02 14 */ add r4, r5, r0 /* 803A0E88 0039DDE8 A0 64 00 06 */ lhz r3, 6(r4) /* 803A0E8C 0039DDEC 38 63 FF FF */ addi r3, r3, -1 @@ -321,7 +1378,7 @@ lbl_803A0F8C: /* 803A0F90 0039DEF0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803A0F94 0039DEF4 7C 08 03 A6 */ mtlr r0 /* 803A0F98 0039DEF8 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A0F9C 0039DEFC 4E 80 00 20 */ blr +/* 803A0F9C 0039DEFC 4E 80 00 20 */ blr .global dataInsertLayer dataInsertLayer: @@ -335,9 +1392,9 @@ dataInsertLayer: /* 803A0FBC 0039DF1C 93 A1 00 14 */ stw r29, 0x14(r1) /* 803A0FC0 0039DF20 7C 7D 1B 78 */ mr r29, r3 /* 803A0FC4 0039DF24 48 01 40 F9 */ bl hwDisableIrq -/* 803A0FC8 0039DF28 3C 60 80 55 */ lis r3, lbl_805534F8@ha +/* 803A0FC8 0039DF28 3C 60 80 55 */ lis r3, dataLayerTab@ha /* 803A0FCC 0039DF2C A0 ED AE D4 */ lhz r7, dataLayerNum@sda21(r13) -/* 803A0FD0 0039DF30 38 83 34 F8 */ addi r4, r3, lbl_805534F8@l +/* 803A0FD0 0039DF30 38 83 34 F8 */ addi r4, r3, dataLayerTab@l /* 803A0FD4 0039DF34 57 A0 04 3E */ clrlwi r0, r29, 0x10 /* 803A0FD8 0039DF38 39 00 00 00 */ li r8, 0 /* 803A0FDC 0039DF3C 48 00 00 0C */ b lbl_803A0FE8 @@ -354,9 +1411,9 @@ lbl_803A0FFC: /* 803A0FFC 0039DF5C 7C 08 38 00 */ cmpw r8, r7 /* 803A1000 0039DF60 40 80 01 7C */ bge lbl_803A117C /* 803A1004 0039DF64 1C 08 00 0C */ mulli r0, r8, 0xc -/* 803A1008 0039DF68 3C 60 80 55 */ lis r3, lbl_805534F8@ha +/* 803A1008 0039DF68 3C 60 80 55 */ lis r3, dataLayerTab@ha /* 803A100C 0039DF6C 57 A6 04 3E */ clrlwi r6, r29, 0x10 -/* 803A1010 0039DF70 38 A3 34 F8 */ addi r5, r3, lbl_805534F8@l +/* 803A1010 0039DF70 38 A3 34 F8 */ addi r5, r3, dataLayerTab@l /* 803A1014 0039DF74 7C 85 02 14 */ add r4, r5, r0 /* 803A1018 0039DF78 A0 04 00 04 */ lhz r0, 4(r4) /* 803A101C 0039DF7C 7C 06 00 40 */ cmplw r6, r0 @@ -466,9 +1523,9 @@ lbl_803A1194: /* 803A119C 0039E0FC 48 00 00 30 */ b lbl_803A11CC lbl_803A11A0: /* 803A11A0 0039E100 1C A8 00 0C */ mulli r5, r8, 0xc -/* 803A11A4 0039E104 3C 60 80 55 */ lis r3, lbl_805534F8@ha +/* 803A11A4 0039E104 3C 60 80 55 */ lis r3, dataLayerTab@ha /* 803A11A8 0039E108 38 00 00 01 */ li r0, 1 -/* 803A11AC 0039E10C 38 83 34 F8 */ addi r4, r3, lbl_805534F8@l +/* 803A11AC 0039E10C 38 83 34 F8 */ addi r4, r3, dataLayerTab@l /* 803A11B0 0039E110 7C 64 2A 14 */ add r3, r4, r5 /* 803A11B4 0039E114 B3 A3 00 04 */ sth r29, 4(r3) /* 803A11B8 0039E118 7F C4 29 2E */ stwx r30, r4, r5 @@ -483,7 +1540,7 @@ lbl_803A11CC: /* 803A11D8 0039E138 83 A1 00 14 */ lwz r29, 0x14(r1) /* 803A11DC 0039E13C 7C 08 03 A6 */ mtlr r0 /* 803A11E0 0039E140 38 21 00 20 */ addi r1, r1, 0x20 -/* 803A11E4 0039E144 4E 80 00 20 */ blr +/* 803A11E4 0039E144 4E 80 00 20 */ blr .global dataRemoveLayer dataRemoveLayer: @@ -493,9 +1550,9 @@ dataRemoveLayer: /* 803A11F4 0039E154 93 E1 00 0C */ stw r31, 0xc(r1) /* 803A11F8 0039E158 7C 7F 1B 78 */ mr r31, r3 /* 803A11FC 0039E15C 48 01 3E C1 */ bl hwDisableIrq -/* 803A1200 0039E160 3C 60 80 55 */ lis r3, lbl_805534F8@ha +/* 803A1200 0039E160 3C 60 80 55 */ lis r3, dataLayerTab@ha /* 803A1204 0039E164 A0 CD AE D4 */ lhz r6, dataLayerNum@sda21(r13) -/* 803A1208 0039E168 38 83 34 F8 */ addi r4, r3, lbl_805534F8@l +/* 803A1208 0039E168 38 83 34 F8 */ addi r4, r3, dataLayerTab@l /* 803A120C 0039E16C 38 E0 00 00 */ li r7, 0 /* 803A1210 0039E170 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 803A1214 0039E174 48 00 00 0C */ b lbl_803A1220 @@ -512,8 +1569,8 @@ lbl_803A1234: /* 803A1234 0039E194 7C 07 30 00 */ cmpw r7, r6 /* 803A1238 0039E198 41 82 01 58 */ beq lbl_803A1390 /* 803A123C 0039E19C 1C 07 00 0C */ mulli r0, r7, 0xc -/* 803A1240 0039E1A0 3C 60 80 55 */ lis r3, lbl_805534F8@ha -/* 803A1244 0039E1A4 38 A3 34 F8 */ addi r5, r3, lbl_805534F8@l +/* 803A1240 0039E1A0 3C 60 80 55 */ lis r3, dataLayerTab@ha +/* 803A1244 0039E1A4 38 A3 34 F8 */ addi r5, r3, dataLayerTab@l /* 803A1248 0039E1A8 7C 85 02 14 */ add r4, r5, r0 /* 803A124C 0039E1AC A0 64 00 08 */ lhz r3, 8(r4) /* 803A1250 0039E1B0 38 63 FF FF */ addi r3, r3, -1 @@ -608,7 +1665,7 @@ lbl_803A1398: /* 803A139C 0039E2FC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803A13A0 0039E300 7C 08 03 A6 */ mtlr r0 /* 803A13A4 0039E304 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A13A8 0039E308 4E 80 00 20 */ blr +/* 803A13A8 0039E308 4E 80 00 20 */ blr .global dataInsertCurve dataInsertCurve: @@ -621,9 +1678,9 @@ dataInsertCurve: /* 803A13C4 0039E324 7C 7E 1B 78 */ mr r30, r3 /* 803A13C8 0039E328 93 A1 00 14 */ stw r29, 0x14(r1) /* 803A13CC 0039E32C 48 01 3C F1 */ bl hwDisableIrq -/* 803A13D0 0039E330 3C 60 80 55 */ lis r3, lbl_805540F8@ha +/* 803A13D0 0039E330 3C 60 80 55 */ lis r3, dataCurveTab@ha /* 803A13D4 0039E334 A0 CD AE D8 */ lhz r6, dataCurveNum@sda21(r13) -/* 803A13D8 0039E338 38 83 40 F8 */ addi r4, r3, lbl_805540F8@l +/* 803A13D8 0039E338 38 83 40 F8 */ addi r4, r3, dataCurveTab@l /* 803A13DC 0039E33C 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 803A13E0 0039E340 38 E0 00 00 */ li r7, 0 /* 803A13E4 0039E344 48 00 00 0C */ b lbl_803A13F0 @@ -639,9 +1696,9 @@ lbl_803A13F0: lbl_803A1404: /* 803A1404 0039E364 7C 07 30 00 */ cmpw r7, r6 /* 803A1408 0039E368 40 80 01 40 */ bge lbl_803A1548 -/* 803A140C 0039E36C 3C 60 80 55 */ lis r3, lbl_805540F8@ha +/* 803A140C 0039E36C 3C 60 80 55 */ lis r3, dataCurveTab@ha /* 803A1410 0039E370 54 FD 18 38 */ slwi r29, r7, 3 -/* 803A1414 0039E374 38 83 40 F8 */ addi r4, r3, lbl_805540F8@l +/* 803A1414 0039E374 38 83 40 F8 */ addi r4, r3, dataCurveTab@l /* 803A1418 0039E378 57 C5 04 3E */ clrlwi r5, r30, 0x10 /* 803A141C 0039E37C 7C 64 EA 14 */ add r3, r4, r29 /* 803A1420 0039E380 A0 03 00 04 */ lhz r0, 4(r3) @@ -716,9 +1773,9 @@ lbl_803A1518: /* 803A1520 0039E480 48 00 00 74 */ b lbl_803A1594 lbl_803A1524: /* 803A1524 0039E484 48 01 3B 61 */ bl hwEnableIrq -/* 803A1528 0039E488 3C 80 80 55 */ lis r4, lbl_805540F8@ha +/* 803A1528 0039E488 3C 80 80 55 */ lis r4, dataCurveTab@ha /* 803A152C 0039E48C 38 60 00 00 */ li r3, 0 -/* 803A1530 0039E490 38 04 40 F8 */ addi r0, r4, lbl_805540F8@l +/* 803A1530 0039E490 38 04 40 F8 */ addi r0, r4, dataCurveTab@l /* 803A1534 0039E494 7C A0 EA 14 */ add r5, r0, r29 /* 803A1538 0039E498 A0 85 00 06 */ lhz r4, 6(r5) /* 803A153C 0039E49C 38 04 00 01 */ addi r0, r4, 1 @@ -736,9 +1793,9 @@ lbl_803A1560: /* 803A1564 0039E4C4 38 60 00 00 */ li r3, 0 /* 803A1568 0039E4C8 48 00 00 2C */ b lbl_803A1594 lbl_803A156C: -/* 803A156C 0039E4CC 3C 60 80 55 */ lis r3, lbl_805540F8@ha +/* 803A156C 0039E4CC 3C 60 80 55 */ lis r3, dataCurveTab@ha /* 803A1570 0039E4D0 54 E5 18 38 */ slwi r5, r7, 3 -/* 803A1574 0039E4D4 38 83 40 F8 */ addi r4, r3, lbl_805540F8@l +/* 803A1574 0039E4D4 38 83 40 F8 */ addi r4, r3, dataCurveTab@l /* 803A1578 0039E4D8 38 00 00 01 */ li r0, 1 /* 803A157C 0039E4DC 7C 64 2A 14 */ add r3, r4, r5 /* 803A1580 0039E4E0 B3 C3 00 04 */ sth r30, 4(r3) @@ -753,7 +1810,7 @@ lbl_803A1594: /* 803A15A0 0039E500 83 A1 00 14 */ lwz r29, 0x14(r1) /* 803A15A4 0039E504 7C 08 03 A6 */ mtlr r0 /* 803A15A8 0039E508 38 21 00 20 */ addi r1, r1, 0x20 -/* 803A15AC 0039E50C 4E 80 00 20 */ blr +/* 803A15AC 0039E50C 4E 80 00 20 */ blr .global dataRemoveKeymap dataRemoveKeymap: @@ -763,9 +1820,9 @@ dataRemoveKeymap: /* 803A15BC 0039E51C 93 E1 00 0C */ stw r31, 0xc(r1) /* 803A15C0 0039E520 7C 7F 1B 78 */ mr r31, r3 /* 803A15C4 0039E524 48 01 3A F9 */ bl hwDisableIrq -/* 803A15C8 0039E528 3C 60 80 55 */ lis r3, lbl_805540F8@ha +/* 803A15C8 0039E528 3C 60 80 55 */ lis r3, dataCurveTab@ha /* 803A15CC 0039E52C A0 CD AE D8 */ lhz r6, dataCurveNum@sda21(r13) -/* 803A15D0 0039E530 38 83 40 F8 */ addi r4, r3, lbl_805540F8@l +/* 803A15D0 0039E530 38 83 40 F8 */ addi r4, r3, dataCurveTab@l /* 803A15D4 0039E534 38 E0 00 00 */ li r7, 0 /* 803A15D8 0039E538 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 803A15DC 0039E53C 48 00 00 0C */ b lbl_803A15E8 @@ -781,9 +1838,9 @@ lbl_803A15E8: lbl_803A15FC: /* 803A15FC 0039E55C 7C 07 30 00 */ cmpw r7, r6 /* 803A1600 0039E560 41 82 01 10 */ beq lbl_803A1710 -/* 803A1604 0039E564 3C 60 80 55 */ lis r3, lbl_805540F8@ha +/* 803A1604 0039E564 3C 60 80 55 */ lis r3, dataCurveTab@ha /* 803A1608 0039E568 54 E0 18 38 */ slwi r0, r7, 3 -/* 803A160C 0039E56C 38 A3 40 F8 */ addi r5, r3, lbl_805540F8@l +/* 803A160C 0039E56C 38 A3 40 F8 */ addi r5, r3, dataCurveTab@l /* 803A1610 0039E570 7C 85 02 14 */ add r4, r5, r0 /* 803A1614 0039E574 A0 64 00 06 */ lhz r3, 6(r4) /* 803A1618 0039E578 38 63 FF FF */ addi r3, r3, -1 @@ -860,16 +1917,16 @@ lbl_803A1718: /* 803A171C 0039E67C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803A1720 0039E680 7C 08 03 A6 */ mtlr r0 /* 803A1724 0039E684 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A1728 0039E688 4E 80 00 20 */ blr +/* 803A1728 0039E688 4E 80 00 20 */ blr .global dataInsertSDir dataInsertSDir: /* 803A172C 0039E68C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 803A1730 0039E690 7C 08 02 A6 */ mflr r0 -/* 803A1734 0039E694 3C A0 80 56 */ lis r5, lbl_805580F8@ha +/* 803A1734 0039E694 3C A0 80 56 */ lis r5, dataSmpSDirs@ha /* 803A1738 0039E698 90 01 00 24 */ stw r0, 0x24(r1) /* 803A173C 0039E69C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803A1740 0039E6A0 3B E5 80 F8 */ addi r31, r5, lbl_805580F8@l +/* 803A1740 0039E6A0 3B E5 80 F8 */ addi r31, r5, dataSmpSDirs@l /* 803A1744 0039E6A4 93 C1 00 18 */ stw r30, 0x18(r1) /* 803A1748 0039E6A8 93 A1 00 14 */ stw r29, 0x14(r1) /* 803A174C 0039E6AC 7C 9D 23 78 */ mr r29, r4 @@ -952,8 +2009,8 @@ lbl_803A1848: /* 803A184C 0039E7AC 7C 03 00 40 */ cmplw r3, r0 /* 803A1850 0039E7B0 41 80 FF 74 */ blt lbl_803A17C4 /* 803A1854 0039E7B4 A0 8D AE DA */ lhz r4, dataSmpSDirNum@sda21(r13) -/* 803A1858 0039E7B8 3C 60 80 56 */ lis r3, lbl_805580F8@ha -/* 803A185C 0039E7BC 38 63 80 F8 */ addi r3, r3, lbl_805580F8@l +/* 803A1858 0039E7B8 3C 60 80 56 */ lis r3, dataSmpSDirs@ha +/* 803A185C 0039E7BC 38 63 80 F8 */ addi r3, r3, dataSmpSDirs@l /* 803A1860 0039E7C0 1C A4 00 0C */ mulli r5, r4, 0xc /* 803A1864 0039E7C4 38 04 00 01 */ addi r0, r4, 1 /* 803A1868 0039E7C8 B0 0D AE DA */ sth r0, dataSmpSDirNum@sda21(r13) @@ -977,16 +2034,16 @@ lbl_803A1894: /* 803A18A4 0039E804 83 81 00 10 */ lwz r28, 0x10(r1) /* 803A18A8 0039E808 7C 08 03 A6 */ mtlr r0 /* 803A18AC 0039E80C 38 21 00 20 */ addi r1, r1, 0x20 -/* 803A18B0 0039E810 4E 80 00 20 */ blr +/* 803A18B0 0039E810 4E 80 00 20 */ blr .global sub_803a18b4 sub_803a18b4: /* 803A18B4 0039E814 94 21 FF E0 */ stwu r1, -0x20(r1) /* 803A18B8 0039E818 7C 08 02 A6 */ mflr r0 -/* 803A18BC 0039E81C 3C 80 80 56 */ lis r4, lbl_805580F8@ha +/* 803A18BC 0039E81C 3C 80 80 56 */ lis r4, dataSmpSDirs@ha /* 803A18C0 0039E820 90 01 00 24 */ stw r0, 0x24(r1) /* 803A18C4 0039E824 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803A18C8 0039E828 3B E4 80 F8 */ addi r31, r4, lbl_805580F8@l +/* 803A18C8 0039E828 3B E4 80 F8 */ addi r31, r4, dataSmpSDirs@l /* 803A18CC 0039E82C 93 C1 00 18 */ stw r30, 0x18(r1) /* 803A18D0 0039E830 3B C0 00 00 */ li r30, 0 /* 803A18D4 0039E834 93 A1 00 14 */ stw r29, 0x14(r1) @@ -1092,9 +2149,9 @@ lbl_803A1A10: /* 803A1A1C 0039E97C 38 FE 00 01 */ addi r7, r30, 1 /* 803A1A20 0039E980 A0 CD AE DA */ lhz r6, dataSmpSDirNum@sda21(r13) /* 803A1A24 0039E984 1C 87 00 0C */ mulli r4, r7, 0xc -/* 803A1A28 0039E988 3C 60 80 56 */ lis r3, lbl_805580F8@ha +/* 803A1A28 0039E988 3C 60 80 56 */ lis r3, dataSmpSDirs@ha /* 803A1A2C 0039E98C 7C 07 30 00 */ cmpw r7, r6 -/* 803A1A30 0039E990 38 03 80 F8 */ addi r0, r3, lbl_805580F8@l +/* 803A1A30 0039E990 38 03 80 F8 */ addi r0, r3, dataSmpSDirs@l /* 803A1A34 0039E994 7C A0 22 14 */ add r5, r0, r4 /* 803A1A38 0039E998 7C 67 30 50 */ subf r3, r7, r6 /* 803A1A3C 0039E99C 40 80 01 04 */ bge lbl_803A1B40 @@ -1183,16 +2240,16 @@ lbl_803A1B60: /* 803A1B6C 0039EACC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 803A1B70 0039EAD0 7C 08 03 A6 */ mtlr r0 /* 803A1B74 0039EAD4 38 21 00 20 */ addi r1, r1, 0x20 -/* 803A1B78 0039EAD8 4E 80 00 20 */ blr +/* 803A1B78 0039EAD8 4E 80 00 20 */ blr .global sub_803a1b7c sub_803a1b7c: /* 803A1B7C 0039EADC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 803A1B80 0039EAE0 7C 08 02 A6 */ mflr r0 -/* 803A1B84 0039EAE4 3C 80 80 56 */ lis r4, lbl_805580F8@ha +/* 803A1B84 0039EAE4 3C 80 80 56 */ lis r4, dataSmpSDirs@ha /* 803A1B88 0039EAE8 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 803A1B8C 0039EAEC 90 01 00 24 */ stw r0, 0x24(r1) -/* 803A1B90 0039EAF0 38 84 80 F8 */ addi r4, r4, lbl_805580F8@l +/* 803A1B90 0039EAF0 38 84 80 F8 */ addi r4, r4, dataSmpSDirs@l /* 803A1B94 0039EAF4 38 A0 00 00 */ li r5, 0 /* 803A1B98 0039EAF8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 803A1B9C 0039EAFC 3B E0 00 00 */ li r31, 0 @@ -1225,10 +2282,10 @@ lbl_803A1BF0: /* 803A1BF4 0039EB54 28 00 00 00 */ cmplwi r0, 0 /* 803A1BF8 0039EB58 40 82 00 38 */ bne lbl_803A1C30 /* 803A1BFC 0039EB5C 1C 65 00 0C */ mulli r3, r5, 0xc -/* 803A1C00 0039EB60 3C 80 80 56 */ lis r4, lbl_805580F8@ha +/* 803A1C00 0039EB60 3C 80 80 56 */ lis r4, dataSmpSDirs@ha /* 803A1C04 0039EB64 80 DF 00 04 */ lwz r6, 4(r31) /* 803A1C08 0039EB68 38 1F 00 0C */ addi r0, r31, 0xc -/* 803A1C0C 0039EB6C 38 84 80 F8 */ addi r4, r4, lbl_805580F8@l +/* 803A1C0C 0039EB6C 38 84 80 F8 */ addi r4, r4, dataSmpSDirs@l /* 803A1C10 0039EB70 7C 64 1A 14 */ add r3, r4, r3 /* 803A1C14 0039EB74 80 A3 00 04 */ lwz r5, 4(r3) /* 803A1C18 0039EB78 38 61 00 08 */ addi r3, r1, 8 @@ -1246,15 +2303,15 @@ lbl_803A1C30: /* 803A1C44 0039EBA4 80 01 00 24 */ lwz r0, 0x24(r1) /* 803A1C48 0039EBA8 7C 08 03 A6 */ mtlr r0 /* 803A1C4C 0039EBAC 38 21 00 20 */ addi r1, r1, 0x20 -/* 803A1C50 0039EBB0 4E 80 00 20 */ blr +/* 803A1C50 0039EBB0 4E 80 00 20 */ blr .global sub_803a1c54 sub_803a1c54: /* 803A1C54 0039EBB4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803A1C58 0039EBB8 7C 08 02 A6 */ mflr r0 -/* 803A1C5C 0039EBBC 3C 80 80 56 */ lis r4, lbl_805580F8@ha +/* 803A1C5C 0039EBBC 3C 80 80 56 */ lis r4, dataSmpSDirs@ha /* 803A1C60 0039EBC0 90 01 00 14 */ stw r0, 0x14(r1) -/* 803A1C64 0039EBC4 38 84 80 F8 */ addi r4, r4, lbl_805580F8@l +/* 803A1C64 0039EBC4 38 84 80 F8 */ addi r4, r4, dataSmpSDirs@l /* 803A1C68 0039EBC8 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 803A1C6C 0039EBCC A0 AD AE DA */ lhz r5, dataSmpSDirNum@sda21(r13) /* 803A1C70 0039EBD0 7C A9 03 A6 */ mtctr r5 @@ -1294,15 +2351,15 @@ lbl_803A1CDC: /* 803A1CDC 0039EC3C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803A1CE0 0039EC40 7C 08 03 A6 */ mtlr r0 /* 803A1CE4 0039EC44 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A1CE8 0039EC48 4E 80 00 20 */ blr +/* 803A1CE8 0039EC48 4E 80 00 20 */ blr .global dataInsertFX dataInsertFX: /* 803A1CEC 0039EC4C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 803A1CF0 0039EC50 7C 08 02 A6 */ mflr r0 -/* 803A1CF4 0039EC54 3C C0 80 56 */ lis r6, lbl_805586F8@ha +/* 803A1CF4 0039EC54 3C C0 80 56 */ lis r6, dataFXGroups@ha /* 803A1CF8 0039EC58 90 01 00 24 */ stw r0, 0x24(r1) -/* 803A1CFC 0039EC5C 38 C6 86 F8 */ addi r6, r6, lbl_805586F8@l +/* 803A1CFC 0039EC5C 38 C6 86 F8 */ addi r6, r6, dataFXGroups@l /* 803A1D00 0039EC60 93 E1 00 1C */ stw r31, 0x1c(r1) /* 803A1D04 0039EC64 7C BF 2B 78 */ mr r31, r5 /* 803A1D08 0039EC68 93 C1 00 18 */ stw r30, 0x18(r1) @@ -1329,8 +2386,8 @@ lbl_803A1D44: /* 803A1D50 0039ECB0 40 80 00 98 */ bge lbl_803A1DE8 /* 803A1D54 0039ECB4 48 01 33 69 */ bl hwDisableIrq /* 803A1D58 0039ECB8 A0 0D AE D0 */ lhz r0, dataFXGroupNum@sda21(r13) -/* 803A1D5C 0039ECBC 3C 80 80 56 */ lis r4, lbl_805586F8@ha -/* 803A1D60 0039ECC0 38 84 86 F8 */ addi r4, r4, lbl_805586F8@l +/* 803A1D5C 0039ECBC 3C 80 80 56 */ lis r4, dataFXGroups@ha +/* 803A1D60 0039ECC0 38 84 86 F8 */ addi r4, r4, dataFXGroups@l /* 803A1D64 0039ECC4 57 E5 04 3F */ clrlwi. r5, r31, 0x10 /* 803A1D68 0039ECC8 54 00 18 38 */ slwi r0, r0, 3 /* 803A1D6C 0039ECCC 38 60 00 1F */ li r3, 0x1f @@ -1377,16 +2434,16 @@ lbl_803A1DEC: /* 803A1DF8 0039ED58 83 A1 00 14 */ lwz r29, 0x14(r1) /* 803A1DFC 0039ED5C 7C 08 03 A6 */ mtlr r0 /* 803A1E00 0039ED60 38 21 00 20 */ addi r1, r1, 0x20 -/* 803A1E04 0039ED64 4E 80 00 20 */ blr +/* 803A1E04 0039ED64 4E 80 00 20 */ blr .global sub_803a1e08 sub_803a1e08: /* 803A1E08 0039ED68 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803A1E0C 0039ED6C 7C 08 02 A6 */ mflr r0 -/* 803A1E10 0039ED70 3C 80 80 56 */ lis r4, lbl_805586F8@ha +/* 803A1E10 0039ED70 3C 80 80 56 */ lis r4, dataFXGroups@ha /* 803A1E14 0039ED74 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 803A1E18 0039ED78 90 01 00 14 */ stw r0, 0x14(r1) -/* 803A1E1C 0039ED7C 38 84 86 F8 */ addi r4, r4, lbl_805586F8@l +/* 803A1E1C 0039ED7C 38 84 86 F8 */ addi r4, r4, dataFXGroups@l /* 803A1E20 0039ED80 93 E1 00 0C */ stw r31, 0xc(r1) /* 803A1E24 0039ED84 3B E0 00 00 */ li r31, 0 /* 803A1E28 0039ED88 A0 AD AE D0 */ lhz r5, dataFXGroupNum@sda21(r13) @@ -1406,10 +2463,10 @@ lbl_803A1E4C: /* 803A1E54 0039EDB4 48 01 32 69 */ bl hwDisableIrq /* 803A1E58 0039EDB8 A0 AD AE D0 */ lhz r5, dataFXGroupNum@sda21(r13) /* 803A1E5C 0039EDBC 38 DF 00 01 */ addi r6, r31, 1 -/* 803A1E60 0039EDC0 3C 60 80 56 */ lis r3, lbl_805586F8@ha +/* 803A1E60 0039EDC0 3C 60 80 56 */ lis r3, dataFXGroups@ha /* 803A1E64 0039EDC4 7C 06 28 00 */ cmpw r6, r5 /* 803A1E68 0039EDC8 54 C4 18 38 */ slwi r4, r6, 3 -/* 803A1E6C 0039EDCC 38 03 86 F8 */ addi r0, r3, lbl_805586F8@l +/* 803A1E6C 0039EDCC 38 03 86 F8 */ addi r0, r3, dataFXGroups@l /* 803A1E70 0039EDD0 7C 66 28 50 */ subf r3, r6, r5 /* 803A1E74 0039EDD4 7C A0 22 14 */ add r5, r0, r4 /* 803A1E78 0039EDD8 40 80 00 BC */ bge lbl_803A1F34 @@ -1476,7 +2533,7 @@ lbl_803A1F50: /* 803A1F54 0039EEB4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803A1F58 0039EEB8 7C 08 03 A6 */ mtlr r0 /* 803A1F5C 0039EEBC 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A1F60 0039EEC0 4E 80 00 20 */ blr +/* 803A1F60 0039EEC0 4E 80 00 20 */ blr .global sub_803a1f64 sub_803a1f64: @@ -1488,9 +2545,9 @@ sub_803a1f64: /* 803A1F78 0039EED8 93 C1 00 08 */ stw r30, 8(r1) /* 803A1F7C 0039EEDC 7C 7E 1B 78 */ mr r30, r3 /* 803A1F80 0039EEE0 48 01 31 3D */ bl hwDisableIrq -/* 803A1F84 0039EEE4 3C 60 80 56 */ lis r3, lbl_80558AF8@ha +/* 803A1F84 0039EEE4 3C 60 80 56 */ lis r3, dataMacMaintab@ha /* 803A1F88 0039EEE8 57 C0 E5 3A */ rlwinm r0, r30, 0x1c, 0x14, 0x1d -/* 803A1F8C 0039EEEC 38 63 8A F8 */ addi r3, r3, lbl_80558AF8@l +/* 803A1F8C 0039EEEC 38 63 8A F8 */ addi r3, r3, dataMacMaintab@l /* 803A1F90 0039EEF0 57 C6 04 3E */ clrlwi r6, r30, 0x10 /* 803A1F94 0039EEF4 7C E3 02 2E */ lhzx r7, r3, r0 /* 803A1F98 0039EEF8 28 07 00 00 */ cmplwi r7, 0 @@ -1503,9 +2560,9 @@ sub_803a1f64: /* 803A1FB4 0039EF14 48 00 00 88 */ b lbl_803A203C lbl_803A1FB8: /* 803A1FB8 0039EF18 7C A3 02 14 */ add r5, r3, r0 -/* 803A1FBC 0039EF1C 3C 80 80 56 */ lis r4, lbl_805592F8@ha +/* 803A1FBC 0039EF1C 3C 80 80 56 */ lis r4, dataMacSubTabmem@ha /* 803A1FC0 0039EF20 A1 05 00 02 */ lhz r8, 2(r5) -/* 803A1FC4 0039EF24 38 A4 92 F8 */ addi r5, r4, lbl_805592F8@l +/* 803A1FC4 0039EF24 38 A4 92 F8 */ addi r5, r4, dataMacSubTabmem@l /* 803A1FC8 0039EF28 39 20 00 00 */ li r9, 0 /* 803A1FCC 0039EF2C 48 00 00 08 */ b lbl_803A1FD4 lbl_803A1FD0: @@ -1523,8 +2580,8 @@ lbl_803A1FF4: /* 803A1FF4 0039EF54 7C 09 38 00 */ cmpw r9, r7 /* 803A1FF8 0039EF58 40 80 00 40 */ bge lbl_803A2038 /* 803A1FFC 0039EF5C 7C 88 4A 14 */ add r4, r8, r9 -/* 803A2000 0039EF60 3C A0 80 56 */ lis r5, lbl_805592F8@ha -/* 803A2004 0039EF64 38 A5 92 F8 */ addi r5, r5, lbl_805592F8@l +/* 803A2000 0039EF60 3C A0 80 56 */ lis r5, dataMacSubTabmem@ha +/* 803A2004 0039EF64 38 A5 92 F8 */ addi r5, r5, dataMacSubTabmem@l /* 803A2008 0039EF68 57 C7 04 3E */ clrlwi r7, r30, 0x10 /* 803A200C 0039EF6C 54 86 18 38 */ slwi r6, r4, 3 /* 803A2010 0039EF70 7C C5 32 14 */ add r6, r5, r6 @@ -1543,9 +2600,9 @@ lbl_803A203C: /* 803A203C 0039EF9C A0 AD AE D2 */ lhz r5, dataMacTotal@sda21(r13) /* 803A2040 0039EFA0 28 05 08 00 */ cmplwi r5, 0x800 /* 803A2044 0039EFA4 40 80 02 04 */ bge lbl_803A2248 -/* 803A2048 0039EFA8 3C C0 80 56 */ lis r6, lbl_80558AF8@ha +/* 803A2048 0039EFA8 3C C0 80 56 */ lis r6, dataMacMaintab@ha /* 803A204C 0039EFAC 38 A0 00 40 */ li r5, 0x40 -/* 803A2050 0039EFB0 38 C6 8A F8 */ addi r6, r6, lbl_80558AF8@l +/* 803A2050 0039EFB0 38 C6 8A F8 */ addi r6, r6, dataMacMaintab@l /* 803A2054 0039EFB4 38 E0 00 00 */ li r7, 0 /* 803A2058 0039EFB8 7C A9 03 A6 */ mtctr r5 lbl_803A205C: @@ -1608,8 +2665,8 @@ lbl_803A2118: /* 803A211C 0039F07C 38 E7 00 07 */ addi r7, r7, 7 /* 803A2120 0039F080 42 00 FF 3C */ bdnz lbl_803A205C /* 803A2124 0039F084 A0 CD AE D2 */ lhz r6, dataMacTotal@sda21(r13) -/* 803A2128 0039F088 3C A0 80 56 */ lis r5, lbl_805592F8@ha -/* 803A212C 0039F08C 38 A5 92 F8 */ addi r5, r5, lbl_805592F8@l +/* 803A2128 0039F088 3C A0 80 56 */ lis r5, dataMacSubTabmem@ha +/* 803A212C 0039F08C 38 A5 92 F8 */ addi r5, r5, dataMacSubTabmem@l /* 803A2130 0039F090 38 C6 FF FF */ addi r6, r6, -1 /* 803A2134 0039F094 7C 06 20 00 */ cmpw r6, r4 /* 803A2138 0039F098 54 C7 18 38 */ slwi r7, r6, 3 @@ -1667,9 +2724,9 @@ lbl_803A21EC: /* 803A21FC 0039F15C 39 08 FF F8 */ addi r8, r8, -8 /* 803A2200 0039F160 42 00 FF EC */ bdnz lbl_803A21EC lbl_803A2204: -/* 803A2204 0039F164 3C C0 80 56 */ lis r6, lbl_805592F8@ha +/* 803A2204 0039F164 3C C0 80 56 */ lis r6, dataMacSubTabmem@ha /* 803A2208 0039F168 7C A3 02 2E */ lhzx r5, r3, r0 -/* 803A220C 0039F16C 39 06 92 F8 */ addi r8, r6, lbl_805592F8@l +/* 803A220C 0039F16C 39 06 92 F8 */ addi r8, r6, dataMacSubTabmem@l /* 803A2210 0039F170 54 89 18 38 */ slwi r9, r4, 3 /* 803A2214 0039F174 7C E8 4A 14 */ add r7, r8, r9 /* 803A2218 0039F178 A0 8D AE D2 */ lhz r4, dataMacTotal@sda21(r13) @@ -1693,7 +2750,7 @@ lbl_803A2250: /* 803A2258 0039F1B8 83 C1 00 08 */ lwz r30, 8(r1) /* 803A225C 0039F1BC 7C 08 03 A6 */ mtlr r0 /* 803A2260 0039F1C0 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A2264 0039F1C4 4E 80 00 20 */ blr +/* 803A2264 0039F1C4 4E 80 00 20 */ blr .global dataRemoveMacro dataRemoveMacro: @@ -1703,17 +2760,17 @@ dataRemoveMacro: /* 803A2274 0039F1D4 93 E1 00 0C */ stw r31, 0xc(r1) /* 803A2278 0039F1D8 7C 7F 1B 78 */ mr r31, r3 /* 803A227C 0039F1DC 48 01 2E 41 */ bl hwDisableIrq -/* 803A2280 0039F1E0 3C 60 80 56 */ lis r3, lbl_80558AF8@ha +/* 803A2280 0039F1E0 3C 60 80 56 */ lis r3, dataMacMaintab@ha /* 803A2284 0039F1E4 57 E0 E5 3A */ rlwinm r0, r31, 0x1c, 0x14, 0x1d -/* 803A2288 0039F1E8 38 63 8A F8 */ addi r3, r3, lbl_80558AF8@l +/* 803A2288 0039F1E8 38 63 8A F8 */ addi r3, r3, dataMacMaintab@l /* 803A228C 0039F1EC 57 E7 04 3E */ clrlwi r7, r31, 0x10 /* 803A2290 0039F1F0 7D 03 02 2E */ lhzx r8, r3, r0 /* 803A2294 0039F1F4 28 08 00 00 */ cmplwi r8, 0 /* 803A2298 0039F1F8 41 82 02 38 */ beq lbl_803A24D0 /* 803A229C 0039F1FC 7C 83 02 14 */ add r4, r3, r0 -/* 803A22A0 0039F200 3C A0 80 56 */ lis r5, lbl_805592F8@ha +/* 803A22A0 0039F200 3C A0 80 56 */ lis r5, dataMacSubTabmem@ha /* 803A22A4 0039F204 A0 84 00 02 */ lhz r4, 2(r4) -/* 803A22A8 0039F208 38 C5 92 F8 */ addi r6, r5, lbl_805592F8@l +/* 803A22A8 0039F208 38 C5 92 F8 */ addi r6, r5, dataMacSubTabmem@l /* 803A22AC 0039F20C 39 20 00 00 */ li r9, 0 /* 803A22B0 0039F210 48 00 00 08 */ b lbl_803A22B8 lbl_803A22B4: @@ -1730,9 +2787,9 @@ lbl_803A22B8: lbl_803A22D8: /* 803A22D8 0039F238 7C 09 40 00 */ cmpw r9, r8 /* 803A22DC 0039F23C 40 80 01 F4 */ bge lbl_803A24D0 -/* 803A22E0 0039F240 3C A0 80 56 */ lis r5, lbl_805592F8@ha +/* 803A22E0 0039F240 3C A0 80 56 */ lis r5, dataMacSubTabmem@ha /* 803A22E4 0039F244 7D 24 4A 14 */ add r9, r4, r9 -/* 803A22E8 0039F248 39 05 92 F8 */ addi r8, r5, lbl_805592F8@l +/* 803A22E8 0039F248 39 05 92 F8 */ addi r8, r5, dataMacSubTabmem@l /* 803A22EC 0039F24C 55 25 18 38 */ slwi r5, r9, 3 /* 803A22F0 0039F250 7C E8 2A 14 */ add r7, r8, r5 /* 803A22F4 0039F254 A0 A7 00 06 */ lhz r5, 6(r7) @@ -1797,9 +2854,9 @@ lbl_803A23C4: /* 803A23D4 0039F334 39 08 00 08 */ addi r8, r8, 8 /* 803A23D8 0039F338 42 00 FF EC */ bdnz lbl_803A23C4 lbl_803A23DC: -/* 803A23DC 0039F33C 3C C0 80 56 */ lis r6, lbl_80558AF8@ha +/* 803A23DC 0039F33C 3C C0 80 56 */ lis r6, dataMacMaintab@ha /* 803A23E0 0039F340 38 A0 00 40 */ li r5, 0x40 -/* 803A23E4 0039F344 38 C6 8A F8 */ addi r6, r6, lbl_80558AF8@l +/* 803A23E4 0039F344 38 C6 8A F8 */ addi r6, r6, dataMacMaintab@l /* 803A23E8 0039F348 38 E0 00 00 */ li r7, 0 /* 803A23EC 0039F34C 7C A9 03 A6 */ mtctr r5 lbl_803A23F0: @@ -1874,23 +2931,23 @@ lbl_803A24D0: /* 803A24DC 0039F43C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803A24E0 0039F440 7C 08 03 A6 */ mtlr r0 /* 803A24E4 0039F444 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A24E8 0039F448 4E 80 00 20 */ blr +/* 803A24E8 0039F448 4E 80 00 20 */ blr .global sub_803a24ec sub_803a24ec: /* 803A24EC 0039F44C A0 84 00 04 */ lhz r4, 4(r4) /* 803A24F0 0039F450 A0 03 00 04 */ lhz r0, 4(r3) /* 803A24F4 0039F454 7C 64 00 50 */ subf r3, r4, r0 -/* 803A24F8 0039F458 4E 80 00 20 */ blr +/* 803A24F8 0039F458 4E 80 00 20 */ blr .global dataGetMacro dataGetMacro: /* 803A24FC 0039F45C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803A2500 0039F460 7C 08 02 A6 */ mflr r0 -/* 803A2504 0039F464 3C 80 80 56 */ lis r4, lbl_80558AF8@ha +/* 803A2504 0039F464 3C 80 80 56 */ lis r4, dataMacMaintab@ha /* 803A2508 0039F468 54 66 E5 3A */ rlwinm r6, r3, 0x1c, 0x14, 0x1d /* 803A250C 0039F46C 90 01 00 14 */ stw r0, 0x14(r1) -/* 803A2510 0039F470 38 84 8A F8 */ addi r4, r4, lbl_80558AF8@l +/* 803A2510 0039F470 38 84 8A F8 */ addi r4, r4, dataMacMaintab@l /* 803A2514 0039F474 54 60 D5 BE */ rlwinm r0, r3, 0x1a, 0x16, 0x1f /* 803A2518 0039F478 7C A4 32 2E */ lhzx r5, r4, r6 /* 803A251C 0039F47C 90 0D AE C8 */ stw r0, "main$712"@sda21(r13) @@ -1899,10 +2956,10 @@ dataGetMacro: /* 803A2528 0039F488 7C 84 32 14 */ add r4, r4, r6 /* 803A252C 0039F48C 38 ED AE C0 */ addi r7, r13, "key$713"@sda21 /* 803A2530 0039F490 A1 04 00 02 */ lhz r8, 2(r4) -/* 803A2534 0039F494 3C C0 80 56 */ lis r6, lbl_805592F8@ha +/* 803A2534 0039F494 3C C0 80 56 */ lis r6, dataMacSubTabmem@ha /* 803A2538 0039F498 B0 67 00 04 */ sth r3, 4(r7) /* 803A253C 0039F49C 3C 80 80 3A */ lis r4, sub_803a24ec@ha -/* 803A2540 0039F4A0 38 06 92 F8 */ addi r0, r6, lbl_805592F8@l +/* 803A2540 0039F4A0 38 06 92 F8 */ addi r0, r6, dataMacSubTabmem@l /* 803A2544 0039F4A4 55 03 18 38 */ slwi r3, r8, 3 /* 803A2548 0039F4A8 38 E4 24 EC */ addi r7, r4, sub_803a24ec@l /* 803A254C 0039F4AC 91 0D AE CC */ stw r8, "base$711"@sda21(r13) @@ -1921,14 +2978,14 @@ lbl_803A2578: /* 803A2578 0039F4D8 80 01 00 14 */ lwz r0, 0x14(r1) /* 803A257C 0039F4DC 7C 08 03 A6 */ mtlr r0 /* 803A2580 0039F4E0 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A2584 0039F4E4 4E 80 00 20 */ blr +/* 803A2584 0039F4E4 4E 80 00 20 */ blr .global sub_803a2588 sub_803a2588: /* 803A2588 0039F4E8 A0 84 00 00 */ lhz r4, 0(r4) /* 803A258C 0039F4EC A0 03 00 00 */ lhz r0, 0(r3) /* 803A2590 0039F4F0 7C 64 00 50 */ subf r3, r4, r0 -/* 803A2594 0039F4F4 4E 80 00 20 */ blr +/* 803A2594 0039F4F4 4E 80 00 20 */ blr .global sub_803a2598 sub_803a2598: @@ -1937,13 +2994,13 @@ sub_803a2598: /* 803A25A0 0039F500 90 01 00 24 */ stw r0, 0x24(r1) /* 803A25A4 0039F504 39 61 00 20 */ addi r11, r1, 0x20 /* 803A25A8 0039F508 4B FE 74 D5 */ bl _savegpr_27 -/* 803A25AC 0039F50C 3C A0 80 56 */ lis r5, lbl_8055D2F8@ha -/* 803A25B0 0039F510 3C C0 80 56 */ lis r6, lbl_805580F8@ha -/* 803A25B4 0039F514 3B 85 D2 F8 */ addi r28, r5, lbl_8055D2F8@l +/* 803A25AC 0039F50C 3C A0 80 56 */ lis r5, "key$731"@ha +/* 803A25B0 0039F510 3C C0 80 56 */ lis r6, dataSmpSDirs@ha +/* 803A25B4 0039F514 3B 85 D2 F8 */ addi r28, r5, "key$731"@l /* 803A25B8 0039F518 7C 9E 23 78 */ mr r30, r4 /* 803A25BC 0039F51C 3C A0 80 3A */ lis r5, sub_803a2588@ha /* 803A25C0 0039F520 B0 7C 00 00 */ sth r3, 0(r28) -/* 803A25C4 0039F524 3B 66 80 F8 */ addi r27, r6, lbl_805580F8@l +/* 803A25C4 0039F524 3B 66 80 F8 */ addi r27, r6, dataSmpSDirs@l /* 803A25C8 0039F528 3B E0 00 00 */ li r31, 0 /* 803A25CC 0039F52C 3B A5 25 88 */ addi r29, r5, sub_803a2588@l /* 803A25D0 0039F530 48 00 00 C8 */ b lbl_803A2698 @@ -1988,8 +3045,8 @@ lbl_803A25D4: /* 803A2668 0039F5C8 28 04 00 00 */ cmplwi r4, 0 /* 803A266C 0039F5CC 41 82 00 1C */ beq lbl_803A2688 /* 803A2670 0039F5D0 1C 1F 00 0C */ mulli r0, r31, 0xc -/* 803A2674 0039F5D4 3C 60 80 56 */ lis r3, lbl_805580F8@ha -/* 803A2678 0039F5D8 38 63 80 F8 */ addi r3, r3, lbl_805580F8@l +/* 803A2674 0039F5D4 3C 60 80 56 */ lis r3, dataSmpSDirs@ha +/* 803A2678 0039F5D8 38 63 80 F8 */ addi r3, r3, dataSmpSDirs@l /* 803A267C 0039F5DC 7C 03 00 2E */ lwzx r0, r3, r0 /* 803A2680 0039F5E0 7C 04 02 14 */ add r0, r4, r0 /* 803A2684 0039F5E4 90 1E 00 08 */ stw r0, 8(r30) @@ -2010,25 +3067,25 @@ lbl_803A26A8: /* 803A26B0 0039F610 80 01 00 24 */ lwz r0, 0x24(r1) /* 803A26B4 0039F614 7C 08 03 A6 */ mtlr r0 /* 803A26B8 0039F618 38 21 00 20 */ addi r1, r1, 0x20 -/* 803A26BC 0039F61C 4E 80 00 20 */ blr +/* 803A26BC 0039F61C 4E 80 00 20 */ blr .global sub_803a26c0 sub_803a26c0: /* 803A26C0 0039F620 A0 84 00 04 */ lhz r4, 4(r4) /* 803A26C4 0039F624 A0 03 00 04 */ lhz r0, 4(r3) /* 803A26C8 0039F628 7C 64 00 50 */ subf r3, r4, r0 -/* 803A26CC 0039F62C 4E 80 00 20 */ blr +/* 803A26CC 0039F62C 4E 80 00 20 */ blr .global dataGetCurve dataGetCurve: /* 803A26D0 0039F630 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803A26D4 0039F634 7C 08 02 A6 */ mflr r0 -/* 803A26D8 0039F638 3C 80 80 55 */ lis r4, lbl_805540F8@ha +/* 803A26D8 0039F638 3C 80 80 55 */ lis r4, dataCurveTab@ha /* 803A26DC 0039F63C 3C C0 80 3A */ lis r6, sub_803a26c0@ha /* 803A26E0 0039F640 90 01 00 14 */ stw r0, 0x14(r1) /* 803A26E4 0039F644 38 AD AE AC */ addi r5, r13, "key$759"@sda21 /* 803A26E8 0039F648 38 E6 26 C0 */ addi r7, r6, sub_803a26c0@l -/* 803A26EC 0039F64C 38 84 40 F8 */ addi r4, r4, lbl_805540F8@l +/* 803A26EC 0039F64C 38 84 40 F8 */ addi r4, r4, dataCurveTab@l /* 803A26F0 0039F650 B0 65 00 04 */ sth r3, 4(r5) /* 803A26F4 0039F654 38 6D AE AC */ addi r3, r13, "key$759"@sda21 /* 803A26F8 0039F658 A0 AD AE D8 */ lhz r5, dataCurveNum@sda21(r13) @@ -2045,18 +3102,18 @@ lbl_803A271C: /* 803A271C 0039F67C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803A2720 0039F680 7C 08 03 A6 */ mtlr r0 /* 803A2724 0039F684 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A2728 0039F688 4E 80 00 20 */ blr +/* 803A2728 0039F688 4E 80 00 20 */ blr .global sub_803a272c sub_803a272c: /* 803A272C 0039F68C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803A2730 0039F690 7C 08 02 A6 */ mflr r0 -/* 803A2734 0039F694 3C 80 80 55 */ lis r4, lbl_80552CF8@ha +/* 803A2734 0039F694 3C 80 80 55 */ lis r4, dataKeymapTab@ha /* 803A2738 0039F698 3C C0 80 3A */ lis r6, sub_803a26c0@ha /* 803A273C 0039F69C 90 01 00 14 */ stw r0, 0x14(r1) /* 803A2740 0039F6A0 38 AD AE A0 */ addi r5, r13, "key$767"@sda21 /* 803A2744 0039F6A4 38 E6 26 C0 */ addi r7, r6, sub_803a26c0@l -/* 803A2748 0039F6A8 38 84 2C F8 */ addi r4, r4, lbl_80552CF8@l +/* 803A2748 0039F6A8 38 84 2C F8 */ addi r4, r4, dataKeymapTab@l /* 803A274C 0039F6AC B0 65 00 04 */ sth r3, 4(r5) /* 803A2750 0039F6B0 38 6D AE A0 */ addi r3, r13, "key$767"@sda21 /* 803A2754 0039F6B4 A0 AD AE D6 */ lhz r5, dataKeymapNum@sda21(r13) @@ -2073,25 +3130,25 @@ lbl_803A2778: /* 803A2778 0039F6D8 80 01 00 14 */ lwz r0, 0x14(r1) /* 803A277C 0039F6DC 7C 08 03 A6 */ mtlr r0 /* 803A2780 0039F6E0 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A2784 0039F6E4 4E 80 00 20 */ blr +/* 803A2784 0039F6E4 4E 80 00 20 */ blr .global sub_803a2788 sub_803a2788: /* 803A2788 0039F6E8 A0 84 00 04 */ lhz r4, 4(r4) /* 803A278C 0039F6EC A0 03 00 04 */ lhz r0, 4(r3) /* 803A2790 0039F6F0 7C 64 00 50 */ subf r3, r4, r0 -/* 803A2794 0039F6F4 4E 80 00 20 */ blr +/* 803A2794 0039F6F4 4E 80 00 20 */ blr .global dataGetLayer dataGetLayer: /* 803A2798 0039F6F8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803A279C 0039F6FC 7C 08 02 A6 */ mflr r0 -/* 803A27A0 0039F700 3C A0 80 56 */ lis r5, lbl_8055D318@ha -/* 803A27A4 0039F704 3C C0 80 55 */ lis r6, lbl_805534F8@ha +/* 803A27A0 0039F700 3C A0 80 56 */ lis r5, "key$493"@ha +/* 803A27A4 0039F704 3C C0 80 55 */ lis r6, dataLayerTab@ha /* 803A27A8 0039F708 90 01 00 14 */ stw r0, 0x14(r1) -/* 803A27AC 0039F70C 39 05 D3 18 */ addi r8, r5, lbl_8055D318@l +/* 803A27AC 0039F70C 39 05 D3 18 */ addi r8, r5, "key$493"@l /* 803A27B0 0039F710 3C A0 80 3A */ lis r5, sub_803a2788@ha -/* 803A27B4 0039F714 38 06 34 F8 */ addi r0, r6, lbl_805534F8@l +/* 803A27B4 0039F714 38 06 34 F8 */ addi r0, r6, dataLayerTab@l /* 803A27B8 0039F718 93 E1 00 0C */ stw r31, 0xc(r1) /* 803A27BC 0039F71C 38 E5 27 88 */ addi r7, r5, sub_803a2788@l /* 803A27C0 0039F720 7C 9F 23 78 */ mr r31, r4 @@ -2116,28 +3173,28 @@ lbl_803A2800: /* 803A2804 0039F764 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803A2808 0039F768 7C 08 03 A6 */ mtlr r0 /* 803A280C 0039F76C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A2810 0039F770 4E 80 00 20 */ blr +/* 803A2810 0039F770 4E 80 00 20 */ blr .global sub_803a2814 sub_803a2814: /* 803A2814 0039F774 A0 84 00 00 */ lhz r4, 0(r4) /* 803A2818 0039F778 A0 03 00 00 */ lhz r0, 0(r3) /* 803A281C 0039F77C 7C 64 00 50 */ subf r3, r4, r0 -/* 803A2820 0039F780 4E 80 00 20 */ blr +/* 803A2820 0039F780 4E 80 00 20 */ blr .global dataGetFX dataGetFX: /* 803A2824 0039F784 94 21 FF E0 */ stwu r1, -0x20(r1) /* 803A2828 0039F788 7C 08 02 A6 */ mflr r0 -/* 803A282C 0039F78C 3C 80 80 56 */ lis r4, lbl_8055D324@ha -/* 803A2830 0039F790 3C A0 80 56 */ lis r5, lbl_805586F8@ha +/* 803A282C 0039F78C 3C 80 80 56 */ lis r4, "key$487"@ha +/* 803A2830 0039F790 3C A0 80 56 */ lis r5, dataFXGroups@ha /* 803A2834 0039F794 90 01 00 24 */ stw r0, 0x24(r1) /* 803A2838 0039F798 93 E1 00 1C */ stw r31, 0x1c(r1) /* 803A283C 0039F79C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 803A2840 0039F7A0 3B C4 D3 24 */ addi r30, r4, lbl_8055D324@l +/* 803A2840 0039F7A0 3B C4 D3 24 */ addi r30, r4, "key$487"@l /* 803A2844 0039F7A4 3C 80 80 3A */ lis r4, sub_803a2814@ha /* 803A2848 0039F7A8 93 A1 00 14 */ stw r29, 0x14(r1) -/* 803A284C 0039F7AC 3B A5 86 F8 */ addi r29, r5, lbl_805586F8@l +/* 803A284C 0039F7AC 3B A5 86 F8 */ addi r29, r5, dataFXGroups@l /* 803A2850 0039F7B0 3B E4 28 14 */ addi r31, r4, sub_803a2814@l /* 803A2854 0039F7B4 93 81 00 10 */ stw r28, 0x10(r1) /* 803A2858 0039F7B8 3B 80 00 00 */ li r28, 0 @@ -2169,7 +3226,7 @@ lbl_803A28A0: /* 803A28B0 0039F810 83 81 00 10 */ lwz r28, 0x10(r1) /* 803A28B4 0039F814 7C 08 03 A6 */ mtlr r0 /* 803A28B8 0039F818 38 21 00 20 */ addi r1, r1, 0x20 -/* 803A28BC 0039F81C 4E 80 00 20 */ blr +/* 803A28BC 0039F81C 4E 80 00 20 */ blr .global dataInit dataInit: @@ -2186,9 +3243,9 @@ dataInit: /* 803A28E8 0039F848 B0 0D AE D0 */ sth r0, dataFXGroupNum@sda21(r13) /* 803A28EC 0039F84C B0 0D AE D2 */ sth r0, dataMacTotal@sda21(r13) /* 803A28F0 0039F850 40 80 00 A0 */ bge lbl_803A2990 -/* 803A28F4 0039F854 3C A0 80 56 */ lis r5, lbl_80558AF8@ha +/* 803A28F4 0039F854 3C A0 80 56 */ lis r5, dataMacMaintab@ha /* 803A28F8 0039F858 38 00 00 20 */ li r0, 0x20 -/* 803A28FC 0039F85C 38 A5 8A F8 */ addi r5, r5, lbl_80558AF8@l +/* 803A28FC 0039F85C 38 A5 8A F8 */ addi r5, r5, dataMacMaintab@l /* 803A2900 0039F860 7C 09 03 A6 */ mtctr r0 lbl_803A2904: /* 803A2904 0039F864 38 00 00 00 */ li r0, 0 @@ -2231,7 +3288,7 @@ lbl_803A2990: /* 803A2994 0039F8F4 80 01 00 14 */ lwz r0, 0x14(r1) /* 803A2998 0039F8F8 7C 08 03 A6 */ mtlr r0 /* 803A299C 0039F8FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A29A0 0039F900 4E 80 00 20 */ blr +/* 803A29A0 0039F900 4E 80 00 20 */ blr .global dataExit dataExit: @@ -2242,4 +3299,4 @@ dataExit: /* 803A29B4 0039F914 80 01 00 14 */ lwz r0, 0x14(r1) /* 803A29B8 0039F918 7C 08 03 A6 */ mtlr r0 /* 803A29BC 0039F91C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803A29C0 0039F920 4E 80 00 20 */ blr +/* 803A29C0 0039F920 4E 80 00 20 */ blr diff --git a/asm/musyx/synthmacros.s b/asm/musyx/synthmacros.s index 4d1f838d..8eceafe9 100644 --- a/asm/musyx/synthmacros.s +++ b/asm/musyx/synthmacros.s @@ -1,5 +1,10 @@ .include "macros.inc" +.section .bss +.global "newsmp$473" +"newsmp$473": + .skip 0x20 + .section .sbss "cstep$1643": .skip 0x8 @@ -558,9 +563,9 @@ sub_803a313c: /* 803A3150 003A00B0 7C 7E 1B 78 */ mr r30, r3 /* 803A3154 003A00B4 93 A1 00 14 */ stw r29, 0x14(r1) /* 803A3158 003A00B8 7C 9D 23 78 */ mr r29, r4 -/* 803A315C 003A00BC 3C 80 80 56 */ lis r4, lbl_8055D330@ha +/* 803A315C 003A00BC 3C 80 80 56 */ lis r4, "newsmp$473"@ha /* 803A3160 003A00C0 80 1D 00 00 */ lwz r0, 0(r29) -/* 803A3164 003A00C4 38 84 D3 30 */ addi r4, r4, lbl_8055D330@l +/* 803A3164 003A00C4 38 84 D3 30 */ addi r4, r4, "newsmp$473"@l /* 803A3168 003A00C8 54 1F C4 3E */ rlwinm r31, r0, 0x18, 0x10, 0x1f /* 803A316C 003A00CC 7F E3 FB 78 */ mr r3, r31 /* 803A3170 003A00D0 4B FF F4 29 */ bl sub_803a2598 @@ -579,20 +584,20 @@ lbl_803A319C: /* 803A31A0 003A0100 40 80 00 9C */ bge lbl_803A323C /* 803A31A4 003A0104 48 00 00 5C */ b lbl_803A3200 lbl_803A31A8: -/* 803A31A8 003A0108 3C 60 80 56 */ lis r3, lbl_8055D330@ha +/* 803A31A8 003A0108 3C 60 80 56 */ lis r3, "newsmp$473"@ha /* 803A31AC 003A010C 80 1D 00 04 */ lwz r0, 4(r29) -/* 803A31B0 003A0110 38 63 D3 30 */ addi r3, r3, lbl_8055D330@l +/* 803A31B0 003A0110 38 63 D3 30 */ addi r3, r3, "newsmp$473"@l /* 803A31B4 003A0114 90 03 00 0C */ stw r0, 0xc(r3) /* 803A31B8 003A0118 48 00 00 94 */ b lbl_803A324C lbl_803A31BC: /* 803A31BC 003A011C 80 BE 01 54 */ lwz r5, 0x154(r30) /* 803A31C0 003A0120 3C 80 02 04 */ lis r4, 0x02040811@ha -/* 803A31C4 003A0124 3C 60 80 56 */ lis r3, lbl_8055D330@ha +/* 803A31C4 003A0124 3C 60 80 56 */ lis r3, "newsmp$473"@ha /* 803A31C8 003A0128 80 1D 00 04 */ lwz r0, 4(r29) /* 803A31CC 003A012C 54 A5 84 3E */ srwi r5, r5, 0x10 /* 803A31D0 003A0130 38 C4 08 11 */ addi r6, r4, 0x02040811@l /* 803A31D4 003A0134 20 85 00 7F */ subfic r4, r5, 0x7f -/* 803A31D8 003A0138 38 63 D3 30 */ addi r3, r3, lbl_8055D330@l +/* 803A31D8 003A0138 38 63 D3 30 */ addi r3, r3, "newsmp$473"@l /* 803A31DC 003A013C 54 84 06 3E */ clrlwi r4, r4, 0x18 /* 803A31E0 003A0140 7C 00 21 D6 */ mullw r0, r0, r4 /* 803A31E4 003A0144 7C 86 00 16 */ mulhwu r4, r6, r0 @@ -606,11 +611,11 @@ lbl_803A3200: /* 803A3200 003A0160 80 BE 01 54 */ lwz r5, 0x154(r30) /* 803A3204 003A0164 3C 80 02 04 */ lis r4, 0x02040811@ha /* 803A3208 003A0168 80 1D 00 04 */ lwz r0, 4(r29) -/* 803A320C 003A016C 3C 60 80 56 */ lis r3, lbl_8055D330@ha +/* 803A320C 003A016C 3C 60 80 56 */ lis r3, "newsmp$473"@ha /* 803A3210 003A0170 54 A5 86 3E */ rlwinm r5, r5, 0x10, 0x18, 0x1f /* 803A3214 003A0174 38 84 08 11 */ addi r4, r4, 0x02040811@l /* 803A3218 003A0178 7C 00 29 D6 */ mullw r0, r0, r5 -/* 803A321C 003A017C 38 63 D3 30 */ addi r3, r3, lbl_8055D330@l +/* 803A321C 003A017C 38 63 D3 30 */ addi r3, r3, "newsmp$473"@l /* 803A3220 003A0180 7C 84 00 16 */ mulhwu r4, r4, r0 /* 803A3224 003A0184 7C 04 00 50 */ subf r0, r4, r0 /* 803A3228 003A0188 54 00 F8 7E */ srwi r0, r0, 1 @@ -619,13 +624,13 @@ lbl_803A3200: /* 803A3234 003A0194 90 03 00 0C */ stw r0, 0xc(r3) /* 803A3238 003A0198 48 00 00 14 */ b lbl_803A324C lbl_803A323C: -/* 803A323C 003A019C 3C 60 80 56 */ lis r3, lbl_8055D330@ha +/* 803A323C 003A019C 3C 60 80 56 */ lis r3, "newsmp$473"@ha /* 803A3240 003A01A0 38 00 00 00 */ li r0, 0 -/* 803A3244 003A01A4 38 63 D3 30 */ addi r3, r3, lbl_8055D330@l +/* 803A3244 003A01A4 38 63 D3 30 */ addi r3, r3, "newsmp$473"@l /* 803A3248 003A01A8 90 03 00 0C */ stw r0, 0xc(r3) lbl_803A324C: -/* 803A324C 003A01AC 3C 60 80 56 */ lis r3, lbl_8055D330@ha -/* 803A3250 003A01B0 38 63 D3 30 */ addi r3, r3, lbl_8055D330@l +/* 803A324C 003A01AC 3C 60 80 56 */ lis r3, "newsmp$473"@ha +/* 803A3250 003A01B0 38 63 D3 30 */ addi r3, r3, "newsmp$473"@l /* 803A3254 003A01B4 80 03 00 0C */ lwz r0, 0xc(r3) /* 803A3258 003A01B8 80 83 00 10 */ lwz r4, 0x10(r3) /* 803A325C 003A01BC 7C 00 20 40 */ cmplw r0, r4 @@ -648,7 +653,7 @@ lbl_803A326C: /* 803A329C 003A01FC 7D 24 52 78 */ xor r4, r9, r10 /* 803A32A0 003A0200 7C C6 52 78 */ xor r6, r6, r10 /* 803A32A4 003A0204 7C 86 33 78 */ or r6, r4, r6 -/* 803A32A8 003A0208 3C A0 80 56 */ lis r5, lbl_8055D330@ha +/* 803A32A8 003A0208 3C A0 80 56 */ lis r5, "newsmp$473"@ha /* 803A32AC 003A020C 7C C6 00 34 */ cntlzw r6, r6 /* 803A32B0 003A0210 7C 00 52 78 */ xor r0, r0, r10 /* 803A32B4 003A0214 7C 69 52 78 */ xor r9, r3, r10 @@ -656,15 +661,15 @@ lbl_803A326C: /* 803A32BC 003A021C 7C 09 4B 78 */ or r9, r0, r9 /* 803A32C0 003A0220 89 5E 01 93 */ lbz r10, 0x193(r30) /* 803A32C4 003A0224 7D 29 00 34 */ cntlzw r9, r9 -/* 803A32C8 003A0228 38 A5 D3 30 */ addi r5, r5, lbl_8055D330@l +/* 803A32C8 003A0228 38 A5 D3 30 */ addi r5, r5, "newsmp$473"@l /* 803A32CC 003A022C 7F E4 FB 78 */ mr r4, r31 /* 803A32D0 003A0230 54 C6 D9 7E */ srwi r6, r6, 5 /* 803A32D4 003A0234 55 03 06 3E */ clrlwi r3, r8, 0x18 /* 803A32D8 003A0238 55 29 D9 7E */ srwi r9, r9, 5 /* 803A32DC 003A023C 51 67 C0 0E */ rlwimi r7, r11, 0x18, 0, 7 /* 803A32E0 003A0240 48 00 FE F9 */ bl hwInitSamplePlayback -/* 803A32E4 003A0244 3C 60 80 56 */ lis r3, lbl_8055D330@ha -/* 803A32E8 003A0248 80 03 D3 30 */ lwz r0, lbl_8055D330@l(r3) +/* 803A32E4 003A0244 3C 60 80 56 */ lis r3, "newsmp$473"@ha +/* 803A32E8 003A0248 80 03 D3 30 */ lwz r0, "newsmp$473"@l(r3) /* 803A32EC 003A024C 90 1E 01 24 */ stw r0, 0x124(r30) /* 803A32F0 003A0250 80 7E 01 28 */ lwz r3, 0x128(r30) /* 803A32F4 003A0254 3C 03 00 01 */ addis r0, r3, 1 @@ -2735,11 +2740,11 @@ sub_803a4ffc: /* 803A5034 003A1F94 54 06 5D 78 */ rlwinm r6, r0, 0xb, 0x15, 0x1c /* 803A5038 003A1F98 80 FE 01 14 */ lwz r7, 0x114(r30) /* 803A503C 003A1F9C 7D 05 32 14 */ add r8, r5, r6 -/* 803A5040 003A1FA0 3C A0 80 55 */ lis r5, lbl_80550F74@ha +/* 803A5040 003A1FA0 3C A0 80 55 */ lis r5, inpAuxA@ha /* 803A5044 003A1FA4 83 A8 00 00 */ lwz r29, 0(r8) /* 803A5048 003A1FA8 1D 43 00 90 */ mulli r10, r3, 0x90 /* 803A504C 003A1FAC 83 88 00 04 */ lwz r28, 4(r8) -/* 803A5050 003A1FB0 39 25 0F 74 */ addi r9, r5, lbl_80550F74@l +/* 803A5050 003A1FB0 39 25 0F 74 */ addi r9, r5, inpAuxA@l /* 803A5054 003A1FB4 81 1E 01 18 */ lwz r8, 0x118(r30) /* 803A5058 003A1FB8 38 C0 00 00 */ li r6, 0 /* 803A505C 003A1FBC 7C E3 E8 38 */ and r3, r7, r29 @@ -2839,11 +2844,11 @@ mcmdAuxAFXSelect: /* 803A51B0 003A2110 54 06 5D 78 */ rlwinm r6, r0, 0xb, 0x15, 0x1c /* 803A51B4 003A2114 80 FE 01 14 */ lwz r7, 0x114(r30) /* 803A51B8 003A2118 7D 05 32 14 */ add r8, r5, r6 -/* 803A51BC 003A211C 3C A0 80 55 */ lis r5, lbl_80550AF4@ha +/* 803A51BC 003A211C 3C A0 80 55 */ lis r5, inpAuxB@ha /* 803A51C0 003A2120 83 A8 00 00 */ lwz r29, 0(r8) /* 803A51C4 003A2124 1D 43 00 90 */ mulli r10, r3, 0x90 /* 803A51C8 003A2128 83 88 00 04 */ lwz r28, 4(r8) -/* 803A51CC 003A212C 39 25 0A F4 */ addi r9, r5, lbl_80550AF4@l +/* 803A51CC 003A212C 39 25 0A F4 */ addi r9, r5, inpAuxB@l /* 803A51D0 003A2130 81 1E 01 18 */ lwz r8, 0x118(r30) /* 803A51D4 003A2134 38 C0 00 00 */ li r6, 0 /* 803A51D8 003A2138 7C E3 E8 38 */ and r3, r7, r29 @@ -3046,9 +3051,9 @@ lbl_803A547C: /* 803A5490 003A23F0 80 03 00 AC */ lwz r0, 0xac(r3) /* 803A5494 003A23F4 48 00 00 18 */ b lbl_803A54AC lbl_803A5498: -/* 803A5498 003A23F8 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A5498 003A23F8 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A549C 003A23FC 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A54A0 003A2400 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A54A0 003A2400 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A54A4 003A2404 7C 63 02 14 */ add r3, r3, r0 /* 803A54A8 003A2408 80 03 FF C0 */ lwz r0, -0x40(r3) lbl_803A54AC: @@ -3085,9 +3090,9 @@ lbl_803A5500: /* 803A5514 003A2474 80 63 00 AC */ lwz r3, 0xac(r3) /* 803A5518 003A2478 48 00 00 18 */ b lbl_803A5530 lbl_803A551C: -/* 803A551C 003A247C 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A551C 003A247C 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A5520 003A2480 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A5524 003A2484 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A5524 003A2484 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A5528 003A2488 7C 63 02 14 */ add r3, r3, r0 /* 803A552C 003A248C 80 63 FF C0 */ lwz r3, -0x40(r3) lbl_803A5530: @@ -3117,9 +3122,9 @@ lbl_803A5570: /* 803A5584 003A24E4 80 03 00 AC */ lwz r0, 0xac(r3) /* 803A5588 003A24E8 48 00 00 18 */ b lbl_803A55A0 lbl_803A558C: -/* 803A558C 003A24EC 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A558C 003A24EC 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A5590 003A24F0 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A5594 003A24F4 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A5594 003A24F4 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A5598 003A24F8 7C 63 02 14 */ add r3, r3, r0 /* 803A559C 003A24FC 80 03 FF C0 */ lwz r0, -0x40(r3) lbl_803A55A0: @@ -3207,9 +3212,9 @@ lbl_803A56A0: /* 803A56A8 003A2608 41 81 00 08 */ bgt lbl_803A56B0 /* 803A56AC 003A260C 7F C4 F3 78 */ mr r4, r30 lbl_803A56B0: -/* 803A56B0 003A2610 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A56B0 003A2610 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A56B4 003A2614 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A56B8 003A2618 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A56B8 003A2618 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A56BC 003A261C 7C 84 07 34 */ extsh r4, r4 /* 803A56C0 003A2620 7C 63 02 14 */ add r3, r3, r0 /* 803A56C4 003A2624 90 83 FF C0 */ stw r4, -0x40(r3) @@ -3247,9 +3252,9 @@ lbl_803A571C: /* 803A5730 003A2690 83 63 00 AC */ lwz r27, 0xac(r3) /* 803A5734 003A2694 48 00 00 18 */ b lbl_803A574C lbl_803A5738: -/* 803A5738 003A2698 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A5738 003A2698 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A573C 003A269C 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A5740 003A26A0 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A5740 003A26A0 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A5744 003A26A4 7C 63 02 14 */ add r3, r3, r0 /* 803A5748 003A26A8 83 63 FF C0 */ lwz r27, -0x40(r3) lbl_803A574C: @@ -3271,9 +3276,9 @@ lbl_803A5770: /* 803A5784 003A26E4 80 83 00 AC */ lwz r4, 0xac(r3) /* 803A5788 003A26E8 48 00 00 18 */ b lbl_803A57A0 lbl_803A578C: -/* 803A578C 003A26EC 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A578C 003A26EC 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A5790 003A26F0 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A5794 003A26F4 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A5794 003A26F4 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A5798 003A26F8 7C 63 02 14 */ add r3, r3, r0 /* 803A579C 003A26FC 80 83 FF C0 */ lwz r4, -0x40(r3) lbl_803A57A0: @@ -3336,9 +3341,9 @@ mcmdSendMessage: /* 803A5860 003A27C0 83 A5 00 AC */ lwz r29, 0xac(r5) /* 803A5864 003A27C4 48 00 00 18 */ b lbl_803A587C lbl_803A5868: -/* 803A5868 003A27C8 3C A0 80 55 */ lis r5, lbl_80550AB4@ha +/* 803A5868 003A27C8 3C A0 80 55 */ lis r5, synthGlobalVariable@ha /* 803A586C 003A27CC 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A5870 003A27D0 38 A5 0A B4 */ addi r5, r5, lbl_80550AB4@l +/* 803A5870 003A27D0 38 A5 0A B4 */ addi r5, r5, synthGlobalVariable@l /* 803A5874 003A27D4 7C A5 02 14 */ add r5, r5, r0 /* 803A5878 003A27D8 83 A5 FF C0 */ lwz r29, -0x40(r5) lbl_803A587C: @@ -3426,9 +3431,9 @@ lbl_803A5998: /* 803A59AC 003A290C 80 63 00 AC */ lwz r3, 0xac(r3) /* 803A59B0 003A2910 48 00 00 18 */ b lbl_803A59C8 lbl_803A59B4: -/* 803A59B4 003A2914 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A59B4 003A2914 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A59B8 003A2918 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A59BC 003A291C 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A59BC 003A291C 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A59C0 003A2920 7C 63 02 14 */ add r3, r3, r0 /* 803A59C4 003A2924 80 63 FF C0 */ lwz r3, -0x40(r3) lbl_803A59C8: @@ -3491,9 +3496,9 @@ mcmdGetVID: /* 803A5A98 003A29F8 90 83 00 AC */ stw r4, 0xac(r3) /* 803A5A9C 003A29FC 4E 80 00 20 */ blr lbl_803A5AA0: -/* 803A5AA0 003A2A00 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A5AA0 003A2A00 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A5AA4 003A2A04 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A5AA8 003A2A08 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A5AA8 003A2A08 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A5AAC 003A2A0C 7C 63 02 14 */ add r3, r3, r0 /* 803A5AB0 003A2A10 90 83 FF C0 */ stw r4, -0x40(r3) /* 803A5AB4 003A2A14 4E 80 00 20 */ blr @@ -3507,9 +3512,9 @@ lbl_803A5AB8: /* 803A5AD0 003A2A30 90 83 00 AC */ stw r4, 0xac(r3) /* 803A5AD4 003A2A34 4E 80 00 20 */ blr lbl_803A5AD8: -/* 803A5AD8 003A2A38 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A5AD8 003A2A38 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A5ADC 003A2A3C 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 803A5AE0 003A2A40 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A5AE0 003A2A40 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A5AE4 003A2A44 7C 63 02 14 */ add r3, r3, r0 /* 803A5AE8 003A2A48 90 83 FF C0 */ stw r4, -0x40(r3) /* 803A5AEC 003A2A4C 4E 80 00 20 */ blr @@ -4298,9 +4303,9 @@ lbl_803A6670: /* 803A6688 003A35E8 7C BF 01 2E */ stwx r5, r31, r0 /* 803A668C 003A35EC 48 00 04 78 */ b lbl_803A6B04 lbl_803A6690: -/* 803A6690 003A35F0 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A6690 003A35F0 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A6694 003A35F4 54 04 15 BA */ rlwinm r4, r0, 2, 0x16, 0x1d -/* 803A6698 003A35F8 38 03 0A B4 */ addi r0, r3, lbl_80550AB4@l +/* 803A6698 003A35F8 38 03 0A B4 */ addi r0, r3, synthGlobalVariable@l /* 803A669C 003A35FC 7C 60 22 14 */ add r3, r0, r4 /* 803A66A0 003A3600 90 A3 FF C0 */ stw r5, -0x40(r3) /* 803A66A4 003A3604 48 00 04 60 */ b lbl_803A6B04 @@ -4348,10 +4353,10 @@ lbl_803A6704: /* 803A6740 003A36A0 50 A4 C0 0E */ rlwimi r4, r5, 0x18, 0, 7 /* 803A6744 003A36A4 48 00 CA 81 */ bl hwSetPriority /* 803A6748 003A36A8 48 00 03 BC */ b lbl_803A6B04 -/* 803A674C 003A36AC 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A674C 003A36AC 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A6750 003A36B0 57 44 86 3E */ rlwinm r4, r26, 0x10, 0x18, 0x1f /* 803A6754 003A36B4 57 40 D5 BA */ rlwinm r0, r26, 0x1a, 0x16, 0x1d -/* 803A6758 003A36B8 38 63 0A B4 */ addi r3, r3, lbl_80550AB4@l +/* 803A6758 003A36B8 38 63 0A B4 */ addi r3, r3, synthGlobalVariable@l /* 803A675C 003A36BC 7C 83 01 2E */ stwx r4, r3, r0 /* 803A6760 003A36C0 48 00 03 A4 */ b lbl_803A6B04 /* 803A6764 003A36C4 57 40 86 3E */ rlwinm r0, r26, 0x10, 0x18, 0x1f @@ -4578,9 +4583,9 @@ lbl_803A6AAC: /* 803A6AC0 003A3A20 7C BF 01 2E */ stwx r5, r31, r0 /* 803A6AC4 003A3A24 48 00 00 40 */ b lbl_803A6B04 lbl_803A6AC8: -/* 803A6AC8 003A3A28 3C 60 80 55 */ lis r3, lbl_80550AB4@ha +/* 803A6AC8 003A3A28 3C 60 80 55 */ lis r3, synthGlobalVariable@ha /* 803A6ACC 003A3A2C 54 04 15 BA */ rlwinm r4, r0, 2, 0x16, 0x1d -/* 803A6AD0 003A3A30 38 03 0A B4 */ addi r0, r3, lbl_80550AB4@l +/* 803A6AD0 003A3A30 38 03 0A B4 */ addi r0, r3, synthGlobalVariable@l /* 803A6AD4 003A3A34 7C 60 22 14 */ add r3, r0, r4 /* 803A6AD8 003A3A38 90 A3 FF C0 */ stw r5, -0x40(r3) /* 803A6ADC 003A3A3C 48 00 00 28 */ b lbl_803A6B04 diff --git a/asm/musyx/synthvoice.s b/asm/musyx/synthvoice.s index dc2c7098..398ad892 100644 --- a/asm/musyx/synthvoice.s +++ b/asm/musyx/synthvoice.s @@ -1,5 +1,19 @@ .include "macros.inc" +.section .bss +.global vidList +vidList: + .skip 0xF00 +.global synth_last_fxstarted +synth_last_fxstarted: + .skip 0x40 +.global synth_last_started +synth_last_started: + .skip 0x80 +.global vs +vs: + .skip 0x950 + .section .sbss .balign 4 .global vidFree @@ -1817,9 +1831,9 @@ voiceIsLastStarted: /* 803A8EB0 003A5E10 38 60 00 01 */ li r3, 1 /* 803A8EB4 003A5E14 4E 80 00 20 */ blr lbl_803A8EB8: -/* 803A8EB8 003A5E18 3C 60 80 56 */ lis r3, lbl_8055E290@ha +/* 803A8EB8 003A5E18 3C 60 80 56 */ lis r3, synth_last_started@ha /* 803A8EBC 003A5E1C 54 04 25 36 */ rlwinm r4, r0, 4, 0x14, 0x1b -/* 803A8EC0 003A5E20 38 03 E2 90 */ addi r0, r3, lbl_8055E290@l +/* 803A8EC0 003A5E20 38 03 E2 90 */ addi r0, r3, synth_last_started@l /* 803A8EC4 003A5E24 7C 60 22 14 */ add r3, r0, r4 /* 803A8EC8 003A5E28 7C 03 28 AE */ lbzx r0, r3, r5 /* 803A8ECC 003A5E2C 7C 06 00 40 */ cmplw r6, r0 @@ -1848,9 +1862,9 @@ voiceSetLastStarted: /* 803A8F18 003A5E78 7C C3 31 AE */ stbx r6, r3, r6 /* 803A8F1C 003A5E7C 4E 80 00 20 */ blr lbl_803A8F20: -/* 803A8F20 003A5E80 3C 60 80 56 */ lis r3, lbl_8055E290@ha +/* 803A8F20 003A5E80 3C 60 80 56 */ lis r3, synth_last_started@ha /* 803A8F24 003A5E84 54 04 25 36 */ rlwinm r4, r0, 4, 0x14, 0x1b -/* 803A8F28 003A5E88 38 03 E2 90 */ addi r0, r3, lbl_8055E290@l +/* 803A8F28 003A5E88 38 03 E2 90 */ addi r0, r3, synth_last_started@l /* 803A8F2C 003A5E8C 7C 60 22 14 */ add r3, r0, r4 /* 803A8F30 003A5E90 7C C3 29 AE */ stbx r6, r3, r5 /* 803A8F34 003A5E94 4E 80 00 20 */ blr @@ -1877,9 +1891,9 @@ voiceResetLastStarted: /* 803A8F7C 003A5EDC 7C 03 31 AE */ stbx r0, r3, r6 /* 803A8F80 003A5EE0 4E 80 00 20 */ blr lbl_803A8F84: -/* 803A8F84 003A5EE4 3C 60 80 56 */ lis r3, lbl_8055E290@ha +/* 803A8F84 003A5EE4 3C 60 80 56 */ lis r3, synth_last_started@ha /* 803A8F88 003A5EE8 54 04 25 36 */ rlwinm r4, r0, 4, 0x14, 0x1b -/* 803A8F8C 003A5EEC 38 03 E2 90 */ addi r0, r3, lbl_8055E290@l +/* 803A8F8C 003A5EEC 38 03 E2 90 */ addi r0, r3, synth_last_started@l /* 803A8F90 003A5EF0 7C 60 22 14 */ add r3, r0, r4 /* 803A8F94 003A5EF4 7C 03 28 AE */ lbzx r0, r3, r5 /* 803A8F98 003A5EF8 7C 06 00 40 */ cmplw r6, r0 @@ -1890,9 +1904,9 @@ lbl_803A8F84: .global voiceInitLastStarted voiceInitLastStarted: -/* 803A8FAC 003A5F0C 3C 60 80 56 */ lis r3, lbl_8055E290@ha +/* 803A8FAC 003A5F0C 3C 60 80 56 */ lis r3, synth_last_started@ha /* 803A8FB0 003A5F10 38 00 00 04 */ li r0, 4 -/* 803A8FB4 003A5F14 38 A3 E2 90 */ addi r5, r3, lbl_8055E290@l +/* 803A8FB4 003A5F14 38 A3 E2 90 */ addi r5, r3, synth_last_started@l /* 803A8FB8 003A5F18 38 C0 00 00 */ li r6, 0 /* 803A8FBC 003A5F1C 7C 09 03 A6 */ mtctr r0 lbl_803A8FC0: diff --git a/src/musyx/dsp_import.c b/src/musyx/dsp_import.c index f843c7ea..80b65b85 100644 --- a/src/musyx/dsp_import.c +++ b/src/musyx/dsp_import.c @@ -1,6 +1,6 @@ #include "src/musyx/dsp_import.h" -#ifdef __cpluplus +#ifdef __cplusplus extern "C" { #endif char dspSlave[0x19E0] = @@ -215,6 +215,6 @@ char dspSlave[0x19E0] = }; short dspSlaveLength = sizeof(dspSlave); -#ifdef __cpluplus +#ifdef __cplusplus } #endif diff --git a/src/musyx/dsp_import.h b/src/musyx/dsp_import.h index ad4423e7..6f79b4a1 100644 --- a/src/musyx/dsp_import.h +++ b/src/musyx/dsp_import.h @@ -1,12 +1,12 @@ #ifndef MUSYX_DSP_IMPORT_H #define MUSYX_DSP_IMPORT_H -#ifdef __cpluplus +#ifdef __cplusplus extern "C" { #endif char dspSlave[]; short dspSlaveLength; -#ifdef __cpluplus +#ifdef __cplusplus } #endif #endif