summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJcw87 <Jcw87@users.noreply.github.com>2023-09-01 01:55:46 -0700
committerGitHub <noreply@github.com>2023-09-01 11:55:46 +0300
commit2d45b68231560eaf0001914c8f2da4bd81f9dd59 (patch)
tree1ea5d930006125c74a8cbf65337c539158eca0ce
parent6c4509ceed79f74c77e3b05c4f6e890063b16a26 (diff)
JASTrackPort, JASSeqCtrl.h, JASSeqParser (#1904)
* JASTrackPort OK * JASSeqCtrl.h * JASSeqParser * progress * Move JSU inlines
-rw-r--r--Progress.md22
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/__sinit_JASSeqParser_cpp.s495
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdBankPrg__12JASSeqParserFP8JASTrackPUl.s8
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdBank__12JASSeqParserFP8JASTrackPUl.s6
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdBusConnect__12JASSeqParserFP8JASTrackPUl.s13
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdCallF__12JASSeqParserFP8JASTrackPUl.s23
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdCall__12JASSeqParserFP8JASTrackPUl.s12
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortExport__12JASSeqParserFP8JASTrackPUl.s20
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortImport__12JASSeqParserFP8JASTrackPUl.s20
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdChildReadPort__12JASSeqParserFP8JASTrackPUl.s32
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdChildWritePort__12JASSeqParserFP8JASTrackPUl.s21
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdCloseTrack__12JASSeqParserFP8JASTrackPUl.s12
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdClrI__12JASSeqParserFP8JASTrackPUl.s13
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdDisInterrupt__12JASSeqParserFP8JASTrackPUl.s12
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdDump__12JASSeqParserFP8JASTrackPUl.s122
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdEnvSet__12JASSeqParserFP8JASTrackPUl.s16
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdFIRSet__12JASSeqParserFP8JASTrackPUl.s15
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdIIRCutOff__12JASSeqParserFP8JASTrackPUl.s19
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdIIRSet__12JASSeqParserFP8JASTrackPUl.s23
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdIntTimer__12JASSeqParserFP8JASTrackPUl.s8
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdJmpF__12JASSeqParserFP8JASTrackPUl.s24
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdJmp__12JASSeqParserFP8JASTrackPUl.s7
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdLoopE__12JASSeqParserFP8JASTrackPUl.s11
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdLoopS__12JASSeqParserFP8JASTrackPUl.s12
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdNoteOff__12JASSeqParserFP8JASTrackPUl.s14
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdNoteOn__12JASSeqParserFP8JASTrackPUl.s17
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdNote__12JASSeqParserFP8JASTrackPUl.s18
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdOpenTrack__12JASSeqParserFP8JASTrackPUl.s29
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdParentReadPort__12JASSeqParserFP8JASTrackPUl.s28
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdParentWritePort__12JASSeqParserFP8JASTrackPUl.s17
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdPrg__12JASSeqParserFP8JASTrackPUl.s6
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdReadPort__12JASSeqParserFP8JASTrackPUl.s25
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdRegLoad__12JASSeqParserFP8JASTrackPUl.s13
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdRegUni__12JASSeqParserFP8JASTrackPUl.s34
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdRetF__12JASSeqParserFP8JASTrackPUl.s24
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdRetI__12JASSeqParserFP8JASTrackPUl.s16
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdRet__12JASSeqParserFP8JASTrackPUl.s15
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdSetIntTable__12JASSeqParserFP8JASTrackPUl.s5
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdSetInterrupt__12JASSeqParserFP8JASTrackPUl.s12
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdSetLastNote__12JASSeqParserFP8JASTrackPUl.s16
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdSimpleADSR__12JASSeqParserFP8JASTrackPUl.s22
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdSyncCPU__12JASSeqParserFP8JASTrackPUl.s28
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdTempo__12JASSeqParserFP8JASTrackPUl.s13
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdWaitByte__12JASSeqParserFP8JASTrackPUl.s5
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdWait__12JASSeqParserFP8JASTrackPUl.s15
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/cmdWritePort__12JASSeqParserFP8JASTrackPUl.s14
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/execCommand__12JASSeqParserFP8JASTrackM12JASSeqParserFPCvPvP8JASTrackPUl_lUlPUl.s12
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/execNoteOff__12JASSeqParserFP8JASTrackUl.s12
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/execNoteOnMidi__12JASSeqParserFP8JASTrackUlUlUl.s13
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/parseNoteOff__12JASSeqParserFP8JASTrackUc.s16
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/parseNoteOn__12JASSeqParserFP8JASTrackUc.s47
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/parseRegCommand__12JASSeqParserFP8JASTracki.s32
-rw-r--r--asm/JSystem/JAudio2/JASSeqParser/parse__12JASSeqParserFP8JASTrack.s37
-rw-r--r--asm/JSystem/JAudio2/JASTrackPort/checkExport__12JASTrackPortCFUl.s8
-rw-r--r--asm/JSystem/JAudio2/JASTrackPort/checkImport__12JASTrackPortCFUl.s8
-rw-r--r--asm/JSystem/JAudio2/JASTrackPort/init__12JASTrackPortFv.s14
-rw-r--r--asm/JSystem/JAudio2/JASTrackPort/readExport__12JASTrackPortFUl.s10
-rw-r--r--asm/JSystem/JAudio2/JASTrackPort/readImport__12JASTrackPortFUl.s10
-rw-r--r--asm/JSystem/JAudio2/JASTrackPort/writeExport__12JASTrackPortFUlUs.s10
-rw-r--r--asm/JSystem/JAudio2/JASTrackPort/writeImport__12JASTrackPortFUlUs.s10
-rw-r--r--include/JSystem/JAudio2/JASCalc.h2
-rw-r--r--include/JSystem/JAudio2/JASRegisterParam.h8
-rw-r--r--include/JSystem/JAudio2/JASSeqCtrl.h70
-rw-r--r--include/JSystem/JAudio2/JASSeqParser.h88
-rw-r--r--include/JSystem/JAudio2/JASSeqReader.h19
-rw-r--r--include/JSystem/JAudio2/JASTrack.h106
-rw-r--r--include/JSystem/JAudio2/JASTrackPort.h19
-rw-r--r--include/JSystem/JSupport/JSupport.h5
-rw-r--r--libs/JSystem/JAudio2/JASCalc.cpp194
-rw-r--r--libs/JSystem/JAudio2/JASSeqCtrl.cpp74
-rw-r--r--libs/JSystem/JAudio2/JASSeqParser.cpp2441
-rw-r--r--libs/JSystem/JAudio2/JASTrack.cpp35
-rw-r--r--libs/JSystem/JAudio2/JASTrackPort.cpp106
73 files changed, 1376 insertions, 3382 deletions
diff --git a/Progress.md b/Progress.md
index eb1766199e..c1c48513cc 100644
--- a/Progress.md
+++ b/Progress.md
@@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes)
.init | 97.972973% | 9280 | 9472
.extab | 100.000000% | 96 | 96
.extabindex | 100.000000% | 96 | 96
-.text | 31.572087% | 1135504 | 3596544
+.text | 31.880161% | 1146584 | 3596544
.ctors | 100.000000% | 448 | 448
.dtors | 100.000000% | 32 | 32
.rodata | 100.000000% | 193856 | 193856
.data | 100.000000% | 197632 | 197632
.sdata | 100.000000% | 1408 | 1408
.sdata2 | 100.000000% | 20832 | 20832
-Total | 38.785556% | 1559440 | 4020672
+Total | 39.061132% | 1570520 | 4020672
## Total
Section | Percentage | Decompiled (bytes) | Total (bytes)
---|---|---|---
-main.dol | 38.785556% | 1559440 | 4020672
-RELs | 34.306025% | 3945304 | 11500324
-Total | 35.466435% | 5504744 | 15520996
+main.dol | 39.061132% | 1570520 | 4020672
+RELs | 34.390440% | 3955012 | 11500324
+Total | 35.600370% | 5525532 | 15520996
## RELs
@@ -432,7 +432,7 @@ d_a_obj_hakai_ftr | 42.324888% | 2272 | 5368
d_a_obj_hasu2 | 41.190476% | 1384 | 3360
d_a_obj_hata | 39.059081% | 1428 | 3656
d_a_obj_hb | 29.310936% | 3420 | 11668
-d_a_obj_hbombkoya | 47.549020% | 3104 | 6528
+d_a_obj_hbombkoya | 78.615196% | 5132 | 6528
d_a_obj_heavySw | 41.214623% | 2796 | 6784
d_a_obj_hfuta | 39.073970% | 2768 | 7084
d_a_obj_hhashi | 33.138856% | 3408 | 10284
@@ -542,15 +542,15 @@ d_a_obj_metalbox | 50.268097% | 1500 | 2984
d_a_obj_mgate | 100.000000% | 4152 | 4152
d_a_obj_mhole | 35.548173% | 2140 | 6020
d_a_obj_mie | 34.891676% | 3672 | 10524
-d_a_obj_mirror_6pole | 49.656751% | 1736 | 3496
+d_a_obj_mirror_6pole | 100.000000% | 3496 | 3496
d_a_obj_mirror_chain | 34.916201% | 3500 | 10024
-d_a_obj_mirror_sand | 46.972860% | 1800 | 3832
+d_a_obj_mirror_sand | 100.000000% | 3832 | 3832
d_a_obj_mirror_screw | 40.374532% | 2156 | 5340
d_a_obj_mirror_table | 38.664122% | 4052 | 10480
d_a_obj_movebox | 36.691330% | 7736 | 21084
d_a_obj_msima | 35.108959% | 3480 | 9912
d_a_obj_mvstair | 35.209479% | 3328 | 9452
-d_a_obj_myogan | 51.677852% | 1848 | 3576
+d_a_obj_myogan | 100.000000% | 3576 | 3576
d_a_obj_nagaisu | 37.130271% | 2360 | 6356
d_a_obj_nameplate | 39.726962% | 2328 | 5860
d_a_obj_nan | 33.293811% | 5616 | 16868
@@ -723,7 +723,7 @@ d_a_tag_escape | 100.000000% | 712 | 712
d_a_tag_event | 31.075697% | 1248 | 4016
d_a_tag_evt | 37.815126% | 1620 | 4284
d_a_tag_evtarea | 100.000000% | 3548 | 3548
-d_a_tag_evtmsg | 39.491150% | 1428 | 3616
+d_a_tag_evtmsg | 99.225664% | 3588 | 3616
d_a_tag_firewall | 35.325132% | 1608 | 4552
d_a_tag_gra | 100.000000% | 800 | 800
d_a_tag_gstart | 100.000000% | 1208 | 1208
@@ -785,4 +785,4 @@ d_a_vrbox2 | 44.907111% | 2804 | 6244
d_a_warp_bug | 100.000000% | 2024 | 2024
d_a_ykgr | 44.400631% | 2252 | 5072
f_pc_profile_lst | 100.000000% | 28156 | 28156
-Total | 34.306025% | 3945304 | 11500324
+Total | 34.390440% | 3955012 | 11500324
diff --git a/asm/JSystem/JAudio2/JASSeqParser/__sinit_JASSeqParser_cpp.s b/asm/JSystem/JAudio2/JASSeqParser/__sinit_JASSeqParser_cpp.s
deleted file mode 100644
index 0dabf3160d..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/__sinit_JASSeqParser_cpp.s
+++ /dev/null
@@ -1,495 +0,0 @@
-lbl_80295950:
-/* 80295950 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80295954 3C 60 80 3C */ lis r3, lit_486@ha /* 0x803C5BE0@ha */
-/* 80295958 38 C3 5B E0 */ addi r6, r3, lit_486@l /* 0x803C5BE0@l */
-/* 8029595C 3C 60 80 3A */ lis r3, __ptmf_null@ha /* 0x803A2180@ha */
-/* 80295960 84 A3 21 80 */ lwzu r5, __ptmf_null@l(r3) /* 0x803A2180@l */
-/* 80295964 80 83 00 04 */ lwz r4, 4(r3)
-/* 80295968 90 A1 00 08 */ stw r5, 8(r1)
-/* 8029596C 90 81 00 0C */ stw r4, 0xc(r1)
-/* 80295970 80 03 00 08 */ lwz r0, 8(r3)
-/* 80295974 90 01 00 10 */ stw r0, 0x10(r1)
-/* 80295978 90 A6 02 A0 */ stw r5, 0x2a0(r6)
-/* 8029597C 90 86 02 A4 */ stw r4, 0x2a4(r6)
-/* 80295980 90 06 02 A8 */ stw r0, 0x2a8(r6)
-/* 80295984 38 66 02 A0 */ addi r3, r6, 0x2a0
-/* 80295988 90 A3 00 10 */ stw r5, 0x10(r3)
-/* 8029598C 90 83 00 14 */ stw r4, 0x14(r3)
-/* 80295990 90 03 00 18 */ stw r0, 0x18(r3)
-/* 80295994 90 A3 00 20 */ stw r5, 0x20(r3)
-/* 80295998 90 83 00 24 */ stw r4, 0x24(r3)
-/* 8029599C 90 03 00 28 */ stw r0, 0x28(r3)
-/* 802959A0 90 A3 00 30 */ stw r5, 0x30(r3)
-/* 802959A4 90 83 00 34 */ stw r4, 0x34(r3)
-/* 802959A8 90 03 00 38 */ stw r0, 0x38(r3)
-/* 802959AC 90 A3 00 40 */ stw r5, 0x40(r3)
-/* 802959B0 90 83 00 44 */ stw r4, 0x44(r3)
-/* 802959B4 90 03 00 48 */ stw r0, 0x48(r3)
-/* 802959B8 90 A3 00 50 */ stw r5, 0x50(r3)
-/* 802959BC 90 83 00 54 */ stw r4, 0x54(r3)
-/* 802959C0 90 03 00 58 */ stw r0, 0x58(r3)
-/* 802959C4 90 A3 00 60 */ stw r5, 0x60(r3)
-/* 802959C8 90 83 00 64 */ stw r4, 0x64(r3)
-/* 802959CC 90 03 00 68 */ stw r0, 0x68(r3)
-/* 802959D0 90 A3 00 70 */ stw r5, 0x70(r3)
-/* 802959D4 90 83 00 74 */ stw r4, 0x74(r3)
-/* 802959D8 90 03 00 78 */ stw r0, 0x78(r3)
-/* 802959DC 90 A3 00 80 */ stw r5, 0x80(r3)
-/* 802959E0 90 83 00 84 */ stw r4, 0x84(r3)
-/* 802959E4 90 03 00 88 */ stw r0, 0x88(r3)
-/* 802959E8 90 A3 00 90 */ stw r5, 0x90(r3)
-/* 802959EC 90 83 00 94 */ stw r4, 0x94(r3)
-/* 802959F0 90 03 00 98 */ stw r0, 0x98(r3)
-/* 802959F4 90 A3 00 A0 */ stw r5, 0xa0(r3)
-/* 802959F8 90 83 00 A4 */ stw r4, 0xa4(r3)
-/* 802959FC 90 03 00 A8 */ stw r0, 0xa8(r3)
-/* 80295A00 90 A3 00 B0 */ stw r5, 0xb0(r3)
-/* 80295A04 90 83 00 B4 */ stw r4, 0xb4(r3)
-/* 80295A08 90 03 00 B8 */ stw r0, 0xb8(r3)
-/* 80295A0C 90 A3 00 C0 */ stw r5, 0xc0(r3)
-/* 80295A10 90 83 00 C4 */ stw r4, 0xc4(r3)
-/* 80295A14 90 03 00 C8 */ stw r0, 0xc8(r3)
-/* 80295A18 90 A3 00 D0 */ stw r5, 0xd0(r3)
-/* 80295A1C 90 83 00 D4 */ stw r4, 0xd4(r3)
-/* 80295A20 90 03 00 D8 */ stw r0, 0xd8(r3)
-/* 80295A24 90 A3 00 E0 */ stw r5, 0xe0(r3)
-/* 80295A28 90 83 00 E4 */ stw r4, 0xe4(r3)
-/* 80295A2C 90 03 00 E8 */ stw r0, 0xe8(r3)
-/* 80295A30 90 A3 00 F0 */ stw r5, 0xf0(r3)
-/* 80295A34 90 83 00 F4 */ stw r4, 0xf4(r3)
-/* 80295A38 90 03 00 F8 */ stw r0, 0xf8(r3)
-/* 80295A3C 90 A3 01 00 */ stw r5, 0x100(r3)
-/* 80295A40 90 83 01 04 */ stw r4, 0x104(r3)
-/* 80295A44 90 03 01 08 */ stw r0, 0x108(r3)
-/* 80295A48 81 06 00 00 */ lwz r8, 0(r6)
-/* 80295A4C 80 E6 00 04 */ lwz r7, 4(r6)
-/* 80295A50 91 03 01 10 */ stw r8, 0x110(r3)
-/* 80295A54 90 E3 01 14 */ stw r7, 0x114(r3)
-/* 80295A58 80 E6 00 08 */ lwz r7, 8(r6)
-/* 80295A5C 90 E3 01 18 */ stw r7, 0x118(r3)
-/* 80295A60 81 06 00 0C */ lwz r8, 0xc(r6)
-/* 80295A64 80 E6 00 10 */ lwz r7, 0x10(r6)
-/* 80295A68 91 03 01 20 */ stw r8, 0x120(r3)
-/* 80295A6C 90 E3 01 24 */ stw r7, 0x124(r3)
-/* 80295A70 80 E6 00 14 */ lwz r7, 0x14(r6)
-/* 80295A74 90 E3 01 28 */ stw r7, 0x128(r3)
-/* 80295A78 81 06 00 18 */ lwz r8, 0x18(r6)
-/* 80295A7C 80 E6 00 1C */ lwz r7, 0x1c(r6)
-/* 80295A80 91 03 01 30 */ stw r8, 0x130(r3)
-/* 80295A84 90 E3 01 34 */ stw r7, 0x134(r3)
-/* 80295A88 80 E6 00 20 */ lwz r7, 0x20(r6)
-/* 80295A8C 90 E3 01 38 */ stw r7, 0x138(r3)
-/* 80295A90 81 06 00 24 */ lwz r8, 0x24(r6)
-/* 80295A94 80 E6 00 28 */ lwz r7, 0x28(r6)
-/* 80295A98 91 03 01 40 */ stw r8, 0x140(r3)
-/* 80295A9C 90 E3 01 44 */ stw r7, 0x144(r3)
-/* 80295AA0 80 E6 00 2C */ lwz r7, 0x2c(r6)
-/* 80295AA4 90 E3 01 48 */ stw r7, 0x148(r3)
-/* 80295AA8 90 A3 01 50 */ stw r5, 0x150(r3)
-/* 80295AAC 90 83 01 54 */ stw r4, 0x154(r3)
-/* 80295AB0 90 03 01 58 */ stw r0, 0x158(r3)
-/* 80295AB4 90 A3 01 60 */ stw r5, 0x160(r3)
-/* 80295AB8 90 83 01 64 */ stw r4, 0x164(r3)
-/* 80295ABC 90 03 01 68 */ stw r0, 0x168(r3)
-/* 80295AC0 90 A3 01 70 */ stw r5, 0x170(r3)
-/* 80295AC4 90 83 01 74 */ stw r4, 0x174(r3)
-/* 80295AC8 90 03 01 78 */ stw r0, 0x178(r3)
-/* 80295ACC 81 06 00 30 */ lwz r8, 0x30(r6)
-/* 80295AD0 80 E6 00 34 */ lwz r7, 0x34(r6)
-/* 80295AD4 91 03 01 80 */ stw r8, 0x180(r3)
-/* 80295AD8 90 E3 01 84 */ stw r7, 0x184(r3)
-/* 80295ADC 80 E6 00 38 */ lwz r7, 0x38(r6)
-/* 80295AE0 90 E3 01 88 */ stw r7, 0x188(r3)
-/* 80295AE4 81 06 00 3C */ lwz r8, 0x3c(r6)
-/* 80295AE8 80 E6 00 40 */ lwz r7, 0x40(r6)
-/* 80295AEC 91 03 01 90 */ stw r8, 0x190(r3)
-/* 80295AF0 90 E3 01 94 */ stw r7, 0x194(r3)
-/* 80295AF4 80 E6 00 44 */ lwz r7, 0x44(r6)
-/* 80295AF8 90 E3 01 98 */ stw r7, 0x198(r3)
-/* 80295AFC 81 06 00 48 */ lwz r8, 0x48(r6)
-/* 80295B00 80 E6 00 4C */ lwz r7, 0x4c(r6)
-/* 80295B04 91 03 01 A0 */ stw r8, 0x1a0(r3)
-/* 80295B08 90 E3 01 A4 */ stw r7, 0x1a4(r3)
-/* 80295B0C 80 E6 00 50 */ lwz r7, 0x50(r6)
-/* 80295B10 90 E3 01 A8 */ stw r7, 0x1a8(r3)
-/* 80295B14 81 06 00 54 */ lwz r8, 0x54(r6)
-/* 80295B18 80 E6 00 58 */ lwz r7, 0x58(r6)
-/* 80295B1C 91 03 01 B0 */ stw r8, 0x1b0(r3)
-/* 80295B20 90 E3 01 B4 */ stw r7, 0x1b4(r3)
-/* 80295B24 80 E6 00 5C */ lwz r7, 0x5c(r6)
-/* 80295B28 90 E3 01 B8 */ stw r7, 0x1b8(r3)
-/* 80295B2C 90 A3 01 C0 */ stw r5, 0x1c0(r3)
-/* 80295B30 90 83 01 C4 */ stw r4, 0x1c4(r3)
-/* 80295B34 90 03 01 C8 */ stw r0, 0x1c8(r3)
-/* 80295B38 90 A3 01 D0 */ stw r5, 0x1d0(r3)
-/* 80295B3C 90 83 01 D4 */ stw r4, 0x1d4(r3)
-/* 80295B40 90 03 01 D8 */ stw r0, 0x1d8(r3)
-/* 80295B44 90 A3 01 E0 */ stw r5, 0x1e0(r3)
-/* 80295B48 90 83 01 E4 */ stw r4, 0x1e4(r3)
-/* 80295B4C 90 03 01 E8 */ stw r0, 0x1e8(r3)
-/* 80295B50 90 A3 01 F0 */ stw r5, 0x1f0(r3)
-/* 80295B54 90 83 01 F4 */ stw r4, 0x1f4(r3)
-/* 80295B58 90 03 01 F8 */ stw r0, 0x1f8(r3)
-/* 80295B5C 90 A3 02 00 */ stw r5, 0x200(r3)
-/* 80295B60 90 83 02 04 */ stw r4, 0x204(r3)
-/* 80295B64 90 03 02 08 */ stw r0, 0x208(r3)
-/* 80295B68 81 06 00 60 */ lwz r8, 0x60(r6)
-/* 80295B6C 80 E6 00 64 */ lwz r7, 0x64(r6)
-/* 80295B70 91 03 02 10 */ stw r8, 0x210(r3)
-/* 80295B74 90 E3 02 14 */ stw r7, 0x214(r3)
-/* 80295B78 80 E6 00 68 */ lwz r7, 0x68(r6)
-/* 80295B7C 90 E3 02 18 */ stw r7, 0x218(r3)
-/* 80295B80 81 06 00 6C */ lwz r8, 0x6c(r6)
-/* 80295B84 80 E6 00 70 */ lwz r7, 0x70(r6)
-/* 80295B88 91 03 02 20 */ stw r8, 0x220(r3)
-/* 80295B8C 90 E3 02 24 */ stw r7, 0x224(r3)
-/* 80295B90 80 E6 00 74 */ lwz r7, 0x74(r6)
-/* 80295B94 90 E3 02 28 */ stw r7, 0x228(r3)
-/* 80295B98 81 06 00 78 */ lwz r8, 0x78(r6)
-/* 80295B9C 80 E6 00 7C */ lwz r7, 0x7c(r6)
-/* 80295BA0 91 03 02 30 */ stw r8, 0x230(r3)
-/* 80295BA4 90 E3 02 34 */ stw r7, 0x234(r3)
-/* 80295BA8 80 E6 00 80 */ lwz r7, 0x80(r6)
-/* 80295BAC 90 E3 02 38 */ stw r7, 0x238(r3)
-/* 80295BB0 81 06 00 84 */ lwz r8, 0x84(r6)
-/* 80295BB4 80 E6 00 88 */ lwz r7, 0x88(r6)
-/* 80295BB8 91 03 02 40 */ stw r8, 0x240(r3)
-/* 80295BBC 90 E3 02 44 */ stw r7, 0x244(r3)
-/* 80295BC0 80 E6 00 8C */ lwz r7, 0x8c(r6)
-/* 80295BC4 90 E3 02 48 */ stw r7, 0x248(r3)
-/* 80295BC8 81 06 00 90 */ lwz r8, 0x90(r6)
-/* 80295BCC 80 E6 00 94 */ lwz r7, 0x94(r6)
-/* 80295BD0 91 03 02 50 */ stw r8, 0x250(r3)
-/* 80295BD4 90 E3 02 54 */ stw r7, 0x254(r3)
-/* 80295BD8 80 E6 00 98 */ lwz r7, 0x98(r6)
-/* 80295BDC 90 E3 02 58 */ stw r7, 0x258(r3)
-/* 80295BE0 81 06 00 9C */ lwz r8, 0x9c(r6)
-/* 80295BE4 80 E6 00 A0 */ lwz r7, 0xa0(r6)
-/* 80295BE8 91 03 02 60 */ stw r8, 0x260(r3)
-/* 80295BEC 90 E3 02 64 */ stw r7, 0x264(r3)
-/* 80295BF0 80 E6 00 A4 */ lwz r7, 0xa4(r6)
-/* 80295BF4 90 E3 02 68 */ stw r7, 0x268(r3)
-/* 80295BF8 81 06 00 A8 */ lwz r8, 0xa8(r6)
-/* 80295BFC 80 E6 00 AC */ lwz r7, 0xac(r6)
-/* 80295C00 91 03 02 70 */ stw r8, 0x270(r3)
-/* 80295C04 90 E3 02 74 */ stw r7, 0x274(r3)
-/* 80295C08 80 E6 00 B0 */ lwz r7, 0xb0(r6)
-/* 80295C0C 90 E3 02 78 */ stw r7, 0x278(r3)
-/* 80295C10 81 06 00 B4 */ lwz r8, 0xb4(r6)
-/* 80295C14 80 E6 00 B8 */ lwz r7, 0xb8(r6)
-/* 80295C18 91 03 02 80 */ stw r8, 0x280(r3)
-/* 80295C1C 90 E3 02 84 */ stw r7, 0x284(r3)
-/* 80295C20 80 E6 00 BC */ lwz r7, 0xbc(r6)
-/* 80295C24 90 E3 02 88 */ stw r7, 0x288(r3)
-/* 80295C28 81 06 00 C0 */ lwz r8, 0xc0(r6)
-/* 80295C2C 80 E6 00 C4 */ lwz r7, 0xc4(r6)
-/* 80295C30 91 03 02 90 */ stw r8, 0x290(r3)
-/* 80295C34 90 E3 02 94 */ stw r7, 0x294(r3)
-/* 80295C38 80 E6 00 C8 */ lwz r7, 0xc8(r6)
-/* 80295C3C 90 E3 02 98 */ stw r7, 0x298(r3)
-/* 80295C40 81 06 00 CC */ lwz r8, 0xcc(r6)
-/* 80295C44 80 E6 00 D0 */ lwz r7, 0xd0(r6)
-/* 80295C48 91 03 02 A0 */ stw r8, 0x2a0(r3)
-/* 80295C4C 90 E3 02 A4 */ stw r7, 0x2a4(r3)
-/* 80295C50 80 E6 00 D4 */ lwz r7, 0xd4(r6)
-/* 80295C54 90 E3 02 A8 */ stw r7, 0x2a8(r3)
-/* 80295C58 81 06 00 D8 */ lwz r8, 0xd8(r6)
-/* 80295C5C 80 E6 00 DC */ lwz r7, 0xdc(r6)
-/* 80295C60 91 03 02 B0 */ stw r8, 0x2b0(r3)
-/* 80295C64 90 E3 02 B4 */ stw r7, 0x2b4(r3)
-/* 80295C68 80 E6 00 E0 */ lwz r7, 0xe0(r6)
-/* 80295C6C 90 E3 02 B8 */ stw r7, 0x2b8(r3)
-/* 80295C70 81 06 00 E4 */ lwz r8, 0xe4(r6)
-/* 80295C74 80 E6 00 E8 */ lwz r7, 0xe8(r6)
-/* 80295C78 91 03 02 C0 */ stw r8, 0x2c0(r3)
-/* 80295C7C 90 E3 02 C4 */ stw r7, 0x2c4(r3)
-/* 80295C80 80 E6 00 EC */ lwz r7, 0xec(r6)
-/* 80295C84 90 E3 02 C8 */ stw r7, 0x2c8(r3)
-/* 80295C88 90 A3 02 D0 */ stw r5, 0x2d0(r3)
-/* 80295C8C 90 83 02 D4 */ stw r4, 0x2d4(r3)
-/* 80295C90 90 03 02 D8 */ stw r0, 0x2d8(r3)
-/* 80295C94 90 A3 02 E0 */ stw r5, 0x2e0(r3)
-/* 80295C98 90 83 02 E4 */ stw r4, 0x2e4(r3)
-/* 80295C9C 90 03 02 E8 */ stw r0, 0x2e8(r3)
-/* 80295CA0 90 A3 02 F0 */ stw r5, 0x2f0(r3)
-/* 80295CA4 90 83 02 F4 */ stw r4, 0x2f4(r3)
-/* 80295CA8 90 03 02 F8 */ stw r0, 0x2f8(r3)
-/* 80295CAC 81 06 00 F0 */ lwz r8, 0xf0(r6)
-/* 80295CB0 80 E6 00 F4 */ lwz r7, 0xf4(r6)
-/* 80295CB4 91 03 03 00 */ stw r8, 0x300(r3)
-/* 80295CB8 90 E3 03 04 */ stw r7, 0x304(r3)
-/* 80295CBC 80 E6 00 F8 */ lwz r7, 0xf8(r6)
-/* 80295CC0 90 E3 03 08 */ stw r7, 0x308(r3)
-/* 80295CC4 81 06 00 FC */ lwz r8, 0xfc(r6)
-/* 80295CC8 80 E6 01 00 */ lwz r7, 0x100(r6)
-/* 80295CCC 91 03 03 10 */ stw r8, 0x310(r3)
-/* 80295CD0 90 E3 03 14 */ stw r7, 0x314(r3)
-/* 80295CD4 80 E6 01 04 */ lwz r7, 0x104(r6)
-/* 80295CD8 90 E3 03 18 */ stw r7, 0x318(r3)
-/* 80295CDC 81 06 01 08 */ lwz r8, 0x108(r6)
-/* 80295CE0 80 E6 01 0C */ lwz r7, 0x10c(r6)
-/* 80295CE4 91 03 03 20 */ stw r8, 0x320(r3)
-/* 80295CE8 90 E3 03 24 */ stw r7, 0x324(r3)
-/* 80295CEC 80 E6 01 10 */ lwz r7, 0x110(r6)
-/* 80295CF0 90 E3 03 28 */ stw r7, 0x328(r3)
-/* 80295CF4 81 06 01 14 */ lwz r8, 0x114(r6)
-/* 80295CF8 80 E6 01 18 */ lwz r7, 0x118(r6)
-/* 80295CFC 91 03 03 30 */ stw r8, 0x330(r3)
-/* 80295D00 90 E3 03 34 */ stw r7, 0x334(r3)
-/* 80295D04 80 E6 01 1C */ lwz r7, 0x11c(r6)
-/* 80295D08 90 E3 03 38 */ stw r7, 0x338(r3)
-/* 80295D0C 81 06 01 20 */ lwz r8, 0x120(r6)
-/* 80295D10 80 E6 01 24 */ lwz r7, 0x124(r6)
-/* 80295D14 91 03 03 40 */ stw r8, 0x340(r3)
-/* 80295D18 90 E3 03 44 */ stw r7, 0x344(r3)
-/* 80295D1C 80 E6 01 28 */ lwz r7, 0x128(r6)
-/* 80295D20 90 E3 03 48 */ stw r7, 0x348(r3)
-/* 80295D24 81 06 01 2C */ lwz r8, 0x12c(r6)
-/* 80295D28 80 E6 01 30 */ lwz r7, 0x130(r6)
-/* 80295D2C 91 03 03 50 */ stw r8, 0x350(r3)
-/* 80295D30 90 E3 03 54 */ stw r7, 0x354(r3)
-/* 80295D34 80 E6 01 34 */ lwz r7, 0x134(r6)
-/* 80295D38 90 E3 03 58 */ stw r7, 0x358(r3)
-/* 80295D3C 81 06 01 38 */ lwz r8, 0x138(r6)
-/* 80295D40 80 E6 01 3C */ lwz r7, 0x13c(r6)
-/* 80295D44 91 03 03 60 */ stw r8, 0x360(r3)
-/* 80295D48 90 E3 03 64 */ stw r7, 0x364(r3)
-/* 80295D4C 80 E6 01 40 */ lwz r7, 0x140(r6)
-/* 80295D50 90 E3 03 68 */ stw r7, 0x368(r3)
-/* 80295D54 81 06 01 44 */ lwz r8, 0x144(r6)
-/* 80295D58 80 E6 01 48 */ lwz r7, 0x148(r6)
-/* 80295D5C 91 03 03 70 */ stw r8, 0x370(r3)
-/* 80295D60 90 E3 03 74 */ stw r7, 0x374(r3)
-/* 80295D64 80 E6 01 4C */ lwz r7, 0x14c(r6)
-/* 80295D68 90 E3 03 78 */ stw r7, 0x378(r3)
-/* 80295D6C 81 06 01 50 */ lwz r8, 0x150(r6)
-/* 80295D70 80 E6 01 54 */ lwz r7, 0x154(r6)
-/* 80295D74 91 03 03 80 */ stw r8, 0x380(r3)
-/* 80295D78 90 E3 03 84 */ stw r7, 0x384(r3)
-/* 80295D7C 80 E6 01 58 */ lwz r7, 0x158(r6)
-/* 80295D80 90 E3 03 88 */ stw r7, 0x388(r3)
-/* 80295D84 81 06 01 5C */ lwz r8, 0x15c(r6)
-/* 80295D88 80 E6 01 60 */ lwz r7, 0x160(r6)
-/* 80295D8C 91 03 03 90 */ stw r8, 0x390(r3)
-/* 80295D90 90 E3 03 94 */ stw r7, 0x394(r3)
-/* 80295D94 80 E6 01 64 */ lwz r7, 0x164(r6)
-/* 80295D98 90 E3 03 98 */ stw r7, 0x398(r3)
-/* 80295D9C 81 06 01 68 */ lwz r8, 0x168(r6)
-/* 80295DA0 80 E6 01 6C */ lwz r7, 0x16c(r6)
-/* 80295DA4 91 03 03 A0 */ stw r8, 0x3a0(r3)
-/* 80295DA8 90 E3 03 A4 */ stw r7, 0x3a4(r3)
-/* 80295DAC 80 E6 01 70 */ lwz r7, 0x170(r6)
-/* 80295DB0 90 E3 03 A8 */ stw r7, 0x3a8(r3)
-/* 80295DB4 81 06 01 74 */ lwz r8, 0x174(r6)
-/* 80295DB8 80 E6 01 78 */ lwz r7, 0x178(r6)
-/* 80295DBC 91 03 03 B0 */ stw r8, 0x3b0(r3)
-/* 80295DC0 90 E3 03 B4 */ stw r7, 0x3b4(r3)
-/* 80295DC4 80 E6 01 7C */ lwz r7, 0x17c(r6)
-/* 80295DC8 90 E3 03 B8 */ stw r7, 0x3b8(r3)
-/* 80295DCC 81 06 01 80 */ lwz r8, 0x180(r6)
-/* 80295DD0 80 E6 01 84 */ lwz r7, 0x184(r6)
-/* 80295DD4 91 03 03 C0 */ stw r8, 0x3c0(r3)
-/* 80295DD8 90 E3 03 C4 */ stw r7, 0x3c4(r3)
-/* 80295DDC 80 E6 01 88 */ lwz r7, 0x188(r6)
-/* 80295DE0 90 E3 03 C8 */ stw r7, 0x3c8(r3)
-/* 80295DE4 90 A3 03 D0 */ stw r5, 0x3d0(r3)
-/* 80295DE8 90 83 03 D4 */ stw r4, 0x3d4(r3)
-/* 80295DEC 90 03 03 D8 */ stw r0, 0x3d8(r3)
-/* 80295DF0 90 A3 03 E0 */ stw r5, 0x3e0(r3)
-/* 80295DF4 90 83 03 E4 */ stw r4, 0x3e4(r3)
-/* 80295DF8 90 03 03 E8 */ stw r0, 0x3e8(r3)
-/* 80295DFC 90 A3 03 F0 */ stw r5, 0x3f0(r3)
-/* 80295E00 90 83 03 F4 */ stw r4, 0x3f4(r3)
-/* 80295E04 90 03 03 F8 */ stw r0, 0x3f8(r3)
-/* 80295E08 81 06 01 8C */ lwz r8, 0x18c(r6)
-/* 80295E0C 80 E6 01 90 */ lwz r7, 0x190(r6)
-/* 80295E10 91 03 04 00 */ stw r8, 0x400(r3)
-/* 80295E14 90 E3 04 04 */ stw r7, 0x404(r3)
-/* 80295E18 80 E6 01 94 */ lwz r7, 0x194(r6)
-/* 80295E1C 90 E3 04 08 */ stw r7, 0x408(r3)
-/* 80295E20 81 06 01 98 */ lwz r8, 0x198(r6)
-/* 80295E24 80 E6 01 9C */ lwz r7, 0x19c(r6)
-/* 80295E28 91 03 04 10 */ stw r8, 0x410(r3)
-/* 80295E2C 90 E3 04 14 */ stw r7, 0x414(r3)
-/* 80295E30 80 E6 01 A0 */ lwz r7, 0x1a0(r6)
-/* 80295E34 90 E3 04 18 */ stw r7, 0x418(r3)
-/* 80295E38 81 06 01 A4 */ lwz r8, 0x1a4(r6)
-/* 80295E3C 80 E6 01 A8 */ lwz r7, 0x1a8(r6)
-/* 80295E40 91 03 04 20 */ stw r8, 0x420(r3)
-/* 80295E44 90 E3 04 24 */ stw r7, 0x424(r3)
-/* 80295E48 80 E6 01 AC */ lwz r7, 0x1ac(r6)
-/* 80295E4C 90 E3 04 28 */ stw r7, 0x428(r3)
-/* 80295E50 81 06 01 B0 */ lwz r8, 0x1b0(r6)
-/* 80295E54 80 E6 01 B4 */ lwz r7, 0x1b4(r6)
-/* 80295E58 91 03 04 30 */ stw r8, 0x430(r3)
-/* 80295E5C 90 E3 04 34 */ stw r7, 0x434(r3)
-/* 80295E60 80 E6 01 B8 */ lwz r7, 0x1b8(r6)
-/* 80295E64 90 E3 04 38 */ stw r7, 0x438(r3)
-/* 80295E68 90 A3 04 40 */ stw r5, 0x440(r3)
-/* 80295E6C 90 83 04 44 */ stw r4, 0x444(r3)
-/* 80295E70 90 03 04 48 */ stw r0, 0x448(r3)
-/* 80295E74 90 A3 04 50 */ stw r5, 0x450(r3)
-/* 80295E78 90 83 04 54 */ stw r4, 0x454(r3)
-/* 80295E7C 90 03 04 58 */ stw r0, 0x458(r3)
-/* 80295E80 90 A3 04 60 */ stw r5, 0x460(r3)
-/* 80295E84 90 83 04 64 */ stw r4, 0x464(r3)
-/* 80295E88 90 03 04 68 */ stw r0, 0x468(r3)
-/* 80295E8C 81 06 01 BC */ lwz r8, 0x1bc(r6)
-/* 80295E90 80 E6 01 C0 */ lwz r7, 0x1c0(r6)
-/* 80295E94 91 03 04 70 */ stw r8, 0x470(r3)
-/* 80295E98 90 E3 04 74 */ stw r7, 0x474(r3)
-/* 80295E9C 80 E6 01 C4 */ lwz r7, 0x1c4(r6)
-/* 80295EA0 90 E3 04 78 */ stw r7, 0x478(r3)
-/* 80295EA4 81 06 01 C8 */ lwz r8, 0x1c8(r6)
-/* 80295EA8 80 E6 01 CC */ lwz r7, 0x1cc(r6)
-/* 80295EAC 91 03 04 80 */ stw r8, 0x480(r3)
-/* 80295EB0 90 E3 04 84 */ stw r7, 0x484(r3)
-/* 80295EB4 80 E6 01 D0 */ lwz r7, 0x1d0(r6)
-/* 80295EB8 90 E3 04 88 */ stw r7, 0x488(r3)
-/* 80295EBC 81 06 01 D4 */ lwz r8, 0x1d4(r6)
-/* 80295EC0 80 E6 01 D8 */ lwz r7, 0x1d8(r6)
-/* 80295EC4 91 03 04 90 */ stw r8, 0x490(r3)
-/* 80295EC8 90 E3 04 94 */ stw r7, 0x494(r3)
-/* 80295ECC 80 E6 01 DC */ lwz r7, 0x1dc(r6)
-/* 80295ED0 90 E3 04 98 */ stw r7, 0x498(r3)
-/* 80295ED4 81 06 01 E0 */ lwz r8, 0x1e0(r6)
-/* 80295ED8 80 E6 01 E4 */ lwz r7, 0x1e4(r6)
-/* 80295EDC 91 03 04 A0 */ stw r8, 0x4a0(r3)
-/* 80295EE0 90 E3 04 A4 */ stw r7, 0x4a4(r3)
-/* 80295EE4 80 E6 01 E8 */ lwz r7, 0x1e8(r6)
-/* 80295EE8 90 E3 04 A8 */ stw r7, 0x4a8(r3)
-/* 80295EEC 81 06 01 EC */ lwz r8, 0x1ec(r6)
-/* 80295EF0 80 E6 01 F0 */ lwz r7, 0x1f0(r6)
-/* 80295EF4 91 03 04 B0 */ stw r8, 0x4b0(r3)
-/* 80295EF8 90 E3 04 B4 */ stw r7, 0x4b4(r3)
-/* 80295EFC 80 E6 01 F4 */ lwz r7, 0x1f4(r6)
-/* 80295F00 90 E3 04 B8 */ stw r7, 0x4b8(r3)
-/* 80295F04 81 06 01 F8 */ lwz r8, 0x1f8(r6)
-/* 80295F08 80 E6 01 FC */ lwz r7, 0x1fc(r6)
-/* 80295F0C 91 03 04 C0 */ stw r8, 0x4c0(r3)
-/* 80295F10 90 E3 04 C4 */ stw r7, 0x4c4(r3)
-/* 80295F14 80 E6 02 00 */ lwz r7, 0x200(r6)
-/* 80295F18 90 E3 04 C8 */ stw r7, 0x4c8(r3)
-/* 80295F1C 81 06 02 04 */ lwz r8, 0x204(r6)
-/* 80295F20 80 E6 02 08 */ lwz r7, 0x208(r6)
-/* 80295F24 91 03 04 D0 */ stw r8, 0x4d0(r3)
-/* 80295F28 90 E3 04 D4 */ stw r7, 0x4d4(r3)
-/* 80295F2C 80 E6 02 0C */ lwz r7, 0x20c(r6)
-/* 80295F30 90 E3 04 D8 */ stw r7, 0x4d8(r3)
-/* 80295F34 90 A3 04 E0 */ stw r5, 0x4e0(r3)
-/* 80295F38 90 83 04 E4 */ stw r4, 0x4e4(r3)
-/* 80295F3C 90 03 04 E8 */ stw r0, 0x4e8(r3)
-/* 80295F40 90 A3 04 F0 */ stw r5, 0x4f0(r3)
-/* 80295F44 90 83 04 F4 */ stw r4, 0x4f4(r3)
-/* 80295F48 90 03 04 F8 */ stw r0, 0x4f8(r3)
-/* 80295F4C 81 06 02 10 */ lwz r8, 0x210(r6)
-/* 80295F50 80 E6 02 14 */ lwz r7, 0x214(r6)
-/* 80295F54 91 03 05 00 */ stw r8, 0x500(r3)
-/* 80295F58 90 E3 05 04 */ stw r7, 0x504(r3)
-/* 80295F5C 80 E6 02 18 */ lwz r7, 0x218(r6)
-/* 80295F60 90 E3 05 08 */ stw r7, 0x508(r3)
-/* 80295F64 81 06 02 1C */ lwz r8, 0x21c(r6)
-/* 80295F68 80 E6 02 20 */ lwz r7, 0x220(r6)
-/* 80295F6C 91 03 05 10 */ stw r8, 0x510(r3)
-/* 80295F70 90 E3 05 14 */ stw r7, 0x514(r3)
-/* 80295F74 80 E6 02 24 */ lwz r7, 0x224(r6)
-/* 80295F78 90 E3 05 18 */ stw r7, 0x518(r3)
-/* 80295F7C 90 A3 05 20 */ stw r5, 0x520(r3)
-/* 80295F80 90 83 05 24 */ stw r4, 0x524(r3)
-/* 80295F84 90 03 05 28 */ stw r0, 0x528(r3)
-/* 80295F88 81 06 02 28 */ lwz r8, 0x228(r6)
-/* 80295F8C 80 E6 02 2C */ lwz r7, 0x22c(r6)
-/* 80295F90 91 03 05 30 */ stw r8, 0x530(r3)
-/* 80295F94 90 E3 05 34 */ stw r7, 0x534(r3)
-/* 80295F98 80 E6 02 30 */ lwz r7, 0x230(r6)
-/* 80295F9C 90 E3 05 38 */ stw r7, 0x538(r3)
-/* 80295FA0 81 06 02 34 */ lwz r8, 0x234(r6)
-/* 80295FA4 80 E6 02 38 */ lwz r7, 0x238(r6)
-/* 80295FA8 91 03 05 40 */ stw r8, 0x540(r3)
-/* 80295FAC 90 E3 05 44 */ stw r7, 0x544(r3)
-/* 80295FB0 80 E6 02 3C */ lwz r7, 0x23c(r6)
-/* 80295FB4 90 E3 05 48 */ stw r7, 0x548(r3)
-/* 80295FB8 81 06 02 40 */ lwz r8, 0x240(r6)
-/* 80295FBC 80 E6 02 44 */ lwz r7, 0x244(r6)
-/* 80295FC0 91 03 05 50 */ stw r8, 0x550(r3)
-/* 80295FC4 90 E3 05 54 */ stw r7, 0x554(r3)
-/* 80295FC8 80 E6 02 48 */ lwz r7, 0x248(r6)
-/* 80295FCC 90 E3 05 58 */ stw r7, 0x558(r3)
-/* 80295FD0 81 06 02 4C */ lwz r8, 0x24c(r6)
-/* 80295FD4 80 E6 02 50 */ lwz r7, 0x250(r6)
-/* 80295FD8 91 03 05 60 */ stw r8, 0x560(r3)
-/* 80295FDC 90 E3 05 64 */ stw r7, 0x564(r3)
-/* 80295FE0 80 E6 02 54 */ lwz r7, 0x254(r6)
-/* 80295FE4 90 E3 05 68 */ stw r7, 0x568(r3)
-/* 80295FE8 81 06 02 58 */ lwz r8, 0x258(r6)
-/* 80295FEC 80 E6 02 5C */ lwz r7, 0x25c(r6)
-/* 80295FF0 91 03 05 70 */ stw r8, 0x570(r3)
-/* 80295FF4 90 E3 05 74 */ stw r7, 0x574(r3)
-/* 80295FF8 80 E6 02 60 */ lwz r7, 0x260(r6)
-/* 80295FFC 90 E3 05 78 */ stw r7, 0x578(r3)
-/* 80296000 81 06 02 64 */ lwz r8, 0x264(r6)
-/* 80296004 80 E6 02 68 */ lwz r7, 0x268(r6)
-/* 80296008 91 03 05 80 */ stw r8, 0x580(r3)
-/* 8029600C 90 E3 05 84 */ stw r7, 0x584(r3)
-/* 80296010 80 E6 02 6C */ lwz r7, 0x26c(r6)
-/* 80296014 90 E3 05 88 */ stw r7, 0x588(r3)
-/* 80296018 81 06 02 70 */ lwz r8, 0x270(r6)
-/* 8029601C 80 E6 02 74 */ lwz r7, 0x274(r6)
-/* 80296020 91 03 05 90 */ stw r8, 0x590(r3)
-/* 80296024 90 E3 05 94 */ stw r7, 0x594(r3)
-/* 80296028 80 E6 02 78 */ lwz r7, 0x278(r6)
-/* 8029602C 90 E3 05 98 */ stw r7, 0x598(r3)
-/* 80296030 90 A3 05 A0 */ stw r5, 0x5a0(r3)
-/* 80296034 90 83 05 A4 */ stw r4, 0x5a4(r3)
-/* 80296038 90 03 05 A8 */ stw r0, 0x5a8(r3)
-/* 8029603C 90 A3 05 B0 */ stw r5, 0x5b0(r3)
-/* 80296040 90 83 05 B4 */ stw r4, 0x5b4(r3)
-/* 80296044 90 03 05 B8 */ stw r0, 0x5b8(r3)
-/* 80296048 90 A3 05 C0 */ stw r5, 0x5c0(r3)
-/* 8029604C 90 83 05 C4 */ stw r4, 0x5c4(r3)
-/* 80296050 90 03 05 C8 */ stw r0, 0x5c8(r3)
-/* 80296054 81 06 02 7C */ lwz r8, 0x27c(r6)
-/* 80296058 80 E6 02 80 */ lwz r7, 0x280(r6)
-/* 8029605C 91 03 05 D0 */ stw r8, 0x5d0(r3)
-/* 80296060 90 E3 05 D4 */ stw r7, 0x5d4(r3)
-/* 80296064 80 E6 02 84 */ lwz r7, 0x284(r6)
-/* 80296068 90 E3 05 D8 */ stw r7, 0x5d8(r3)
-/* 8029606C 81 06 02 88 */ lwz r8, 0x288(r6)
-/* 80296070 80 E6 02 8C */ lwz r7, 0x28c(r6)
-/* 80296074 91 03 05 E0 */ stw r8, 0x5e0(r3)
-/* 80296078 90 E3 05 E4 */ stw r7, 0x5e4(r3)
-/* 8029607C 80 E6 02 90 */ lwz r7, 0x290(r6)
-/* 80296080 90 E3 05 E8 */ stw r7, 0x5e8(r3)
-/* 80296084 81 06 02 94 */ lwz r8, 0x294(r6)
-/* 80296088 80 E6 02 98 */ lwz r7, 0x298(r6)
-/* 8029608C 91 03 05 F0 */ stw r8, 0x5f0(r3)
-/* 80296090 90 E3 05 F4 */ stw r7, 0x5f4(r3)
-/* 80296094 80 E6 02 9C */ lwz r7, 0x29c(r6)
-/* 80296098 90 E3 05 F8 */ stw r7, 0x5f8(r3)
-/* 8029609C 90 A6 08 AC */ stw r5, 0x8ac(r6)
-/* 802960A0 90 86 08 B0 */ stw r4, 0x8b0(r6)
-/* 802960A4 90 06 08 B4 */ stw r0, 0x8b4(r6)
-/* 802960A8 39 06 08 AC */ addi r8, r6, 0x8ac
-/* 802960AC 80 E6 08 A0 */ lwz r7, 0x8a0(r6)
-/* 802960B0 80 66 08 A4 */ lwz r3, 0x8a4(r6)
-/* 802960B4 90 E8 00 10 */ stw r7, 0x10(r8)
-/* 802960B8 90 68 00 14 */ stw r3, 0x14(r8)
-/* 802960BC 80 66 08 A8 */ lwz r3, 0x8a8(r6)
-/* 802960C0 90 68 00 18 */ stw r3, 0x18(r8)
-/* 802960C4 90 A8 00 20 */ stw r5, 0x20(r8)
-/* 802960C8 90 88 00 24 */ stw r4, 0x24(r8)
-/* 802960CC 90 08 00 28 */ stw r0, 0x28(r8)
-/* 802960D0 90 A8 00 30 */ stw r5, 0x30(r8)
-/* 802960D4 90 88 00 34 */ stw r4, 0x34(r8)
-/* 802960D8 90 08 00 38 */ stw r0, 0x38(r8)
-/* 802960DC 90 A8 00 40 */ stw r5, 0x40(r8)
-/* 802960E0 90 88 00 44 */ stw r4, 0x44(r8)
-/* 802960E4 90 08 00 48 */ stw r0, 0x48(r8)
-/* 802960E8 90 A8 00 50 */ stw r5, 0x50(r8)
-/* 802960EC 90 88 00 54 */ stw r4, 0x54(r8)
-/* 802960F0 90 08 00 58 */ stw r0, 0x58(r8)
-/* 802960F4 90 A8 00 60 */ stw r5, 0x60(r8)
-/* 802960F8 90 88 00 64 */ stw r4, 0x64(r8)
-/* 802960FC 90 08 00 68 */ stw r0, 0x68(r8)
-/* 80296100 38 21 00 20 */ addi r1, r1, 0x20
-/* 80296104 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdBankPrg__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdBankPrg__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index a932163876..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdBankPrg__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,8 +0,0 @@
-lbl_80294BB4:
-/* 80294BB4 80 65 00 00 */ lwz r3, 0(r5)
-/* 80294BB8 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f
-/* 80294BBC B0 04 02 2C */ sth r0, 0x22c(r4)
-/* 80294BC0 54 60 06 3E */ clrlwi r0, r3, 0x18
-/* 80294BC4 B0 04 02 2E */ sth r0, 0x22e(r4)
-/* 80294BC8 38 60 00 00 */ li r3, 0
-/* 80294BCC 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdBank__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdBank__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index bd978efc49..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdBank__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,6 +0,0 @@
-lbl_80294BD0:
-/* 80294BD0 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294BD4 54 00 06 3E */ clrlwi r0, r0, 0x18
-/* 80294BD8 B0 04 02 2C */ sth r0, 0x22c(r4)
-/* 80294BDC 38 60 00 00 */ li r3, 0
-/* 80294BE0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdBusConnect__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdBusConnect__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 2854561327..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdBusConnect__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,13 +0,0 @@
-lbl_8029491C:
-/* 8029491C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294920 7C 08 02 A6 */ mflr r0
-/* 80294924 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294928 7C 83 23 78 */ mr r3, r4
-/* 8029492C 80 85 00 00 */ lwz r4, 0(r5)
-/* 80294930 80 A5 00 04 */ lwz r5, 4(r5)
-/* 80294934 4B FF D4 79 */ bl connectBus__8JASTrackFii
-/* 80294938 38 60 00 00 */ li r3, 0
-/* 8029493C 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294940 7C 08 03 A6 */ mtlr r0
-/* 80294944 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294948 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdCallF__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdCallF__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index a5d940b10d..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdCallF__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,23 +0,0 @@
-lbl_80294248:
-/* 80294248 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 8029424C 7C 08 02 A6 */ mflr r0
-/* 80294250 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294254 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80294258 93 C1 00 08 */ stw r30, 8(r1)
-/* 8029425C 7C 9E 23 78 */ mr r30, r4
-/* 80294260 7C BF 2B 78 */ mr r31, r5
-/* 80294264 80 A5 00 00 */ lwz r5, 0(r5)
-/* 80294268 4B FF FA 8D */ bl conditionCheck__12JASSeqParserFP8JASTrackQ212JASSeqParser15BranchCondition
-/* 8029426C 54 60 06 3F */ clrlwi. r0, r3, 0x18
-/* 80294270 41 82 00 10 */ beq lbl_80294280
-/* 80294274 7F C3 F3 78 */ mr r3, r30
-/* 80294278 80 9F 00 04 */ lwz r4, 4(r31)
-/* 8029427C 48 00 1F 11 */ bl call__12JASSeqReaderFUl
-lbl_80294280:
-/* 80294280 38 60 00 00 */ li r3, 0
-/* 80294284 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80294288 83 C1 00 08 */ lwz r30, 8(r1)
-/* 8029428C 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294290 7C 08 03 A6 */ mtlr r0
-/* 80294294 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294298 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdCall__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdCall__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 93b1cc6c65..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdCall__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,12 +0,0 @@
-lbl_8029421C:
-/* 8029421C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294220 7C 08 02 A6 */ mflr r0
-/* 80294224 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294228 7C 83 23 78 */ mr r3, r4
-/* 8029422C 80 85 00 00 */ lwz r4, 0(r5)
-/* 80294230 48 00 1F 5D */ bl call__12JASSeqReaderFUl
-/* 80294234 38 60 00 00 */ li r3, 0
-/* 80294238 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 8029423C 7C 08 03 A6 */ mtlr r0
-/* 80294240 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294244 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortExport__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortExport__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 8d3bd91d44..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortExport__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,20 +0,0 @@
-lbl_80294770:
-/* 80294770 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294774 7C 08 02 A6 */ mflr r0
-/* 80294778 90 01 00 14 */ stw r0, 0x14(r1)
-/* 8029477C 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80294780 7C 9F 23 78 */ mr r31, r4
-/* 80294784 38 7F 00 5C */ addi r3, r31, 0x5c
-/* 80294788 80 85 00 00 */ lwz r4, 0(r5)
-/* 8029478C 4B FF EE 9D */ bl checkExport__12JASTrackPortCFUl
-/* 80294790 7C 60 1B 78 */ mr r0, r3
-/* 80294794 38 7F 00 80 */ addi r3, r31, 0x80
-/* 80294798 38 80 00 03 */ li r4, 3
-/* 8029479C 54 05 06 3E */ clrlwi r5, r0, 0x18
-/* 802947A0 4B FF EE E5 */ bl write__16JASRegisterParamFQ216JASRegisterParam5RegIDUl
-/* 802947A4 38 60 00 00 */ li r3, 0
-/* 802947A8 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 802947AC 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802947B0 7C 08 03 A6 */ mtlr r0
-/* 802947B4 38 21 00 10 */ addi r1, r1, 0x10
-/* 802947B8 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortImport__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortImport__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 85b1279639..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortImport__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,20 +0,0 @@
-lbl_80294724:
-/* 80294724 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294728 7C 08 02 A6 */ mflr r0
-/* 8029472C 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294730 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80294734 7C 9F 23 78 */ mr r31, r4
-/* 80294738 38 7F 00 5C */ addi r3, r31, 0x5c
-/* 8029473C 80 85 00 00 */ lwz r4, 0(r5)
-/* 80294740 4B FF EE CD */ bl checkImport__12JASTrackPortCFUl
-/* 80294744 7C 60 1B 78 */ mr r0, r3
-/* 80294748 38 7F 00 80 */ addi r3, r31, 0x80
-/* 8029474C 38 80 00 03 */ li r4, 3
-/* 80294750 54 05 06 3E */ clrlwi r5, r0, 0x18
-/* 80294754 4B FF EF 31 */ bl write__16JASRegisterParamFQ216JASRegisterParam5RegIDUl
-/* 80294758 38 60 00 00 */ li r3, 0
-/* 8029475C 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80294760 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294764 7C 08 03 A6 */ mtlr r0
-/* 80294768 38 21 00 10 */ addi r1, r1, 0x10
-/* 8029476C 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdChildReadPort__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdChildReadPort__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 334481aecc..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdChildReadPort__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,32 +0,0 @@
-lbl_802946AC:
-/* 802946AC 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 802946B0 7C 08 02 A6 */ mflr r0
-/* 802946B4 90 01 00 24 */ stw r0, 0x24(r1)
-/* 802946B8 39 61 00 20 */ addi r11, r1, 0x20
-/* 802946BC 48 0C DB 21 */ bl _savegpr_29
-/* 802946C0 7C 7D 1B 78 */ mr r29, r3
-/* 802946C4 7C 9E 23 78 */ mr r30, r4
-/* 802946C8 7C BF 2B 78 */ mr r31, r5
-/* 802946CC 80 05 00 00 */ lwz r0, 0(r5)
-/* 802946D0 54 04 06 3E */ clrlwi r4, r0, 0x18
-/* 802946D4 54 00 F6 BA */ rlwinm r0, r0, 0x1e, 0x1a, 0x1d
-/* 802946D8 7C 7E 02 14 */ add r3, r30, r0
-/* 802946DC 80 63 01 30 */ lwz r3, 0x130(r3)
-/* 802946E0 28 03 00 00 */ cmplwi r3, 0
-/* 802946E4 41 82 00 24 */ beq lbl_80294708
-/* 802946E8 54 84 07 3E */ clrlwi r4, r4, 0x1c
-/* 802946EC 4B FF E2 91 */ bl readPort__8JASTrackFUl
-/* 802946F0 7C 60 1B 78 */ mr r0, r3
-/* 802946F4 7F A3 EB 78 */ mr r3, r29
-/* 802946F8 7F C4 F3 78 */ mr r4, r30
-/* 802946FC 80 BF 00 04 */ lwz r5, 4(r31)
-/* 80294700 54 06 04 3E */ clrlwi r6, r0, 0x10
-/* 80294704 4B FF F6 C1 */ bl writeReg__12JASSeqParserFP8JASTrackUlUl
-lbl_80294708:
-/* 80294708 38 60 00 00 */ li r3, 0
-/* 8029470C 39 61 00 20 */ addi r11, r1, 0x20
-/* 80294710 48 0C DB 19 */ bl _restgpr_29
-/* 80294714 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 80294718 7C 08 03 A6 */ mtlr r0
-/* 8029471C 38 21 00 20 */ addi r1, r1, 0x20
-/* 80294720 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdChildWritePort__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdChildWritePort__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index d00a63de5e..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdChildWritePort__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,21 +0,0 @@
-lbl_802945F8:
-/* 802945F8 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802945FC 7C 08 02 A6 */ mflr r0
-/* 80294600 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294604 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294608 54 06 06 3E */ clrlwi r6, r0, 0x18
-/* 8029460C 54 00 F6 BA */ rlwinm r0, r0, 0x1e, 0x1a, 0x1d
-/* 80294610 7C 64 02 14 */ add r3, r4, r0
-/* 80294614 80 63 01 30 */ lwz r3, 0x130(r3)
-/* 80294618 28 03 00 00 */ cmplwi r3, 0
-/* 8029461C 41 82 00 14 */ beq lbl_80294630
-/* 80294620 54 C4 07 3E */ clrlwi r4, r6, 0x1c
-/* 80294624 80 05 00 04 */ lwz r0, 4(r5)
-/* 80294628 54 05 04 3E */ clrlwi r5, r0, 0x10
-/* 8029462C 4B FF E2 ED */ bl writePort__8JASTrackFUlUs
-lbl_80294630:
-/* 80294630 38 60 00 00 */ li r3, 0
-/* 80294634 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294638 7C 08 03 A6 */ mtlr r0
-/* 8029463C 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294640 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdCloseTrack__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdCloseTrack__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 6917ee3dc6..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdCloseTrack__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,12 +0,0 @@
-lbl_802941F0:
-/* 802941F0 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802941F4 7C 08 02 A6 */ mflr r0
-/* 802941F8 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802941FC 7C 83 23 78 */ mr r3, r4
-/* 80294200 80 85 00 00 */ lwz r4, 0(r5)
-/* 80294204 4B FF D9 B5 */ bl closeChild__8JASTrackFUl
-/* 80294208 38 60 00 00 */ li r3, 0
-/* 8029420C 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294210 7C 08 03 A6 */ mtlr r0
-/* 80294214 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294218 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdClrI__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdClrI__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 8de863f9fb..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdClrI__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,13 +0,0 @@
-lbl_802949B4:
-/* 802949B4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802949B8 7C 08 02 A6 */ mflr r0
-/* 802949BC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802949C0 38 00 00 00 */ li r0, 0
-/* 802949C4 90 04 00 44 */ stw r0, 0x44(r4)
-/* 802949C8 7C 83 23 78 */ mr r3, r4
-/* 802949CC 4B FF F1 AD */ bl checkIntr__10JASSeqCtrlFv
-/* 802949D0 38 60 00 00 */ li r3, 0
-/* 802949D4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802949D8 7C 08 03 A6 */ mtlr r0
-/* 802949DC 38 21 00 10 */ addi r1, r1, 0x10
-/* 802949E0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdDisInterrupt__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdDisInterrupt__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 3faec48235..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdDisInterrupt__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,12 +0,0 @@
-lbl_80294988:
-/* 80294988 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 8029498C 7C 08 02 A6 */ mflr r0
-/* 80294990 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294994 7C 83 23 78 */ mr r3, r4
-/* 80294998 80 85 00 00 */ lwz r4, 0(r5)
-/* 8029499C 4B FF F1 55 */ bl clrIntrMask__10JASSeqCtrlFUl
-/* 802949A0 38 60 00 00 */ li r3, 0
-/* 802949A4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802949A8 7C 08 03 A6 */ mtlr r0
-/* 802949AC 38 21 00 10 */ addi r1, r1, 0x10
-/* 802949B0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdDump__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdDump__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 087b3615b7..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdDump__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,122 +0,0 @@
-lbl_80295088:
-/* 80295088 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8029508C 7C 08 02 A6 */ mflr r0
-/* 80295090 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80295094 39 61 00 20 */ addi r11, r1, 0x20
-/* 80295098 48 0C D1 41 */ bl _savegpr_28
-/* 8029509C 7C 7C 1B 78 */ mr r28, r3
-/* 802950A0 7C 9F 23 78 */ mr r31, r4
-/* 802950A4 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 802950A8 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 802950AC 4C C6 31 82 */ crclr 6
-/* 802950B0 4B FF BE B5 */ bl JASReport__FPCce
-/* 802950B4 80 BF 00 04 */ lwz r5, 4(r31)
-/* 802950B8 80 9F 00 00 */ lwz r4, 0(r31)
-/* 802950BC 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 802950C0 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 802950C4 38 63 00 35 */ addi r3, r3, 0x35
-/* 802950C8 7C C4 28 50 */ subf r6, r4, r5
-/* 802950CC 4C C6 31 82 */ crclr 6
-/* 802950D0 4B FF BE 95 */ bl JASReport__FPCce
-/* 802950D4 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 802950D8 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 802950DC 38 63 00 57 */ addi r3, r3, 0x57
-/* 802950E0 4C C6 31 82 */ crclr 6
-/* 802950E4 4B FF BE 81 */ bl JASReport__FPCce
-/* 802950E8 7F 83 E3 78 */ mr r3, r28
-/* 802950EC 7F E4 FB 78 */ mr r4, r31
-/* 802950F0 38 A0 00 02 */ li r5, 2
-/* 802950F4 4B FF EE D5 */ bl readReg__12JASSeqParserCFP8JASTrackUl
-/* 802950F8 7C 7E 1B 78 */ mr r30, r3
-/* 802950FC 7F 83 E3 78 */ mr r3, r28
-/* 80295100 7F E4 FB 78 */ mr r4, r31
-/* 80295104 38 A0 00 01 */ li r5, 1
-/* 80295108 4B FF EE C1 */ bl readReg__12JASSeqParserCFP8JASTrackUl
-/* 8029510C 7C 7D 1B 78 */ mr r29, r3
-/* 80295110 7F 83 E3 78 */ mr r3, r28
-/* 80295114 7F E4 FB 78 */ mr r4, r31
-/* 80295118 38 A0 00 00 */ li r5, 0
-/* 8029511C 4B FF EE AD */ bl readReg__12JASSeqParserCFP8JASTrackUl
-/* 80295120 7C 64 1B 78 */ mr r4, r3
-/* 80295124 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 80295128 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 8029512C 38 63 00 58 */ addi r3, r3, 0x58
-/* 80295130 7F A5 EB 78 */ mr r5, r29
-/* 80295134 7F C6 F3 78 */ mr r6, r30
-/* 80295138 4C C6 31 82 */ crclr 6
-/* 8029513C 4B FF BE 29 */ bl JASReport__FPCce
-/* 80295140 7F 83 E3 78 */ mr r3, r28
-/* 80295144 7F E4 FB 78 */ mr r4, r31
-/* 80295148 38 A0 00 03 */ li r5, 3
-/* 8029514C 4B FF EE 7D */ bl readReg__12JASSeqParserCFP8JASTrackUl
-/* 80295150 7C 7D 1B 78 */ mr r29, r3
-/* 80295154 7F 83 E3 78 */ mr r3, r28
-/* 80295158 7F E4 FB 78 */ mr r4, r31
-/* 8029515C 38 A0 00 05 */ li r5, 5
-/* 80295160 4B FF EE 69 */ bl readReg__12JASSeqParserCFP8JASTrackUl
-/* 80295164 7C 7E 1B 78 */ mr r30, r3
-/* 80295168 7F 83 E3 78 */ mr r3, r28
-/* 8029516C 7F E4 FB 78 */ mr r4, r31
-/* 80295170 38 A0 00 04 */ li r5, 4
-/* 80295174 4B FF EE 55 */ bl readReg__12JASSeqParserCFP8JASTrackUl
-/* 80295178 7C 64 1B 78 */ mr r4, r3
-/* 8029517C 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 80295180 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 80295184 38 63 00 83 */ addi r3, r3, 0x83
-/* 80295188 7F C5 F3 78 */ mr r5, r30
-/* 8029518C 7F A6 EB 78 */ mr r6, r29
-/* 80295190 4C C6 31 82 */ crclr 6
-/* 80295194 4B FF BD D1 */ bl JASReport__FPCce
-/* 80295198 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 8029519C 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 802951A0 38 63 00 57 */ addi r3, r3, 0x57
-/* 802951A4 4C C6 31 82 */ crclr 6
-/* 802951A8 4B FF BD BD */ bl JASReport__FPCce
-/* 802951AC 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 802951B0 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 802951B4 38 63 00 AE */ addi r3, r3, 0xae
-/* 802951B8 A0 9F 00 60 */ lhz r4, 0x60(r31)
-/* 802951BC A0 BF 00 62 */ lhz r5, 0x62(r31)
-/* 802951C0 A0 DF 00 64 */ lhz r6, 0x64(r31)
-/* 802951C4 A0 FF 00 66 */ lhz r7, 0x66(r31)
-/* 802951C8 4C C6 31 82 */ crclr 6
-/* 802951CC 4B FF BD 99 */ bl JASReport__FPCce
-/* 802951D0 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 802951D4 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 802951D8 38 63 00 D5 */ addi r3, r3, 0xd5
-/* 802951DC A0 9F 00 68 */ lhz r4, 0x68(r31)
-/* 802951E0 A0 BF 00 6A */ lhz r5, 0x6a(r31)
-/* 802951E4 A0 DF 00 6C */ lhz r6, 0x6c(r31)
-/* 802951E8 A0 FF 00 6E */ lhz r7, 0x6e(r31)
-/* 802951EC 4C C6 31 82 */ crclr 6
-/* 802951F0 4B FF BD 75 */ bl JASReport__FPCce
-/* 802951F4 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 802951F8 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 802951FC 38 63 00 FC */ addi r3, r3, 0xfc
-/* 80295200 A0 9F 00 70 */ lhz r4, 0x70(r31)
-/* 80295204 A0 BF 00 72 */ lhz r5, 0x72(r31)
-/* 80295208 A0 DF 00 74 */ lhz r6, 0x74(r31)
-/* 8029520C A0 FF 00 76 */ lhz r7, 0x76(r31)
-/* 80295210 4C C6 31 82 */ crclr 6
-/* 80295214 4B FF BD 51 */ bl JASReport__FPCce
-/* 80295218 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 8029521C 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 80295220 38 63 01 23 */ addi r3, r3, 0x123
-/* 80295224 A0 9F 00 78 */ lhz r4, 0x78(r31)
-/* 80295228 A0 BF 00 7A */ lhz r5, 0x7a(r31)
-/* 8029522C A0 DF 00 7C */ lhz r6, 0x7c(r31)
-/* 80295230 A0 FF 00 7E */ lhz r7, 0x7e(r31)
-/* 80295234 4C C6 31 82 */ crclr 6
-/* 80295238 4B FF BD 2D */ bl JASReport__FPCce
-/* 8029523C 3C 60 80 3A */ lis r3, JASSeqParser__stringBase0@ha /* 0x8039B018@ha */
-/* 80295240 38 63 B0 18 */ addi r3, r3, JASSeqParser__stringBase0@l /* 0x8039B018@l */
-/* 80295244 38 63 00 57 */ addi r3, r3, 0x57
-/* 80295248 4C C6 31 82 */ crclr 6
-/* 8029524C 4B FF BD 19 */ bl JASReport__FPCce
-/* 80295250 38 60 00 00 */ li r3, 0
-/* 80295254 39 61 00 20 */ addi r11, r1, 0x20
-/* 80295258 48 0C CF CD */ bl _restgpr_28
-/* 8029525C 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 80295260 7C 08 03 A6 */ mtlr r0
-/* 80295264 38 21 00 20 */ addi r1, r1, 0x20
-/* 80295268 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdEnvSet__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdEnvSet__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 5ebafb3da4..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdEnvSet__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,16 +0,0 @@
-lbl_8029488C:
-/* 8029488C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294890 7C 08 02 A6 */ mflr r0
-/* 80294894 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294898 80 64 00 00 */ lwz r3, 0(r4)
-/* 8029489C 80 05 00 04 */ lwz r0, 4(r5)
-/* 802948A0 7C 03 02 14 */ add r0, r3, r0
-/* 802948A4 7C 83 23 78 */ mr r3, r4
-/* 802948A8 80 85 00 00 */ lwz r4, 0(r5)
-/* 802948AC 7C 05 03 78 */ mr r5, r0
-/* 802948B0 4B FF DF 39 */ bl setOscTable__8JASTrackFUlPCQ213JASOscillator5Point
-/* 802948B4 38 60 00 00 */ li r3, 0
-/* 802948B8 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802948BC 7C 08 03 A6 */ mtlr r0
-/* 802948C0 38 21 00 10 */ addi r1, r1, 0x10
-/* 802948C4 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdFIRSet__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdFIRSet__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index d41f28726b..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdFIRSet__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,15 +0,0 @@
-lbl_80294AE4:
-/* 80294AE4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294AE8 7C 08 02 A6 */ mflr r0
-/* 80294AEC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294AF0 80 64 00 00 */ lwz r3, 0(r4)
-/* 80294AF4 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294AF8 7C 03 02 14 */ add r0, r3, r0
-/* 80294AFC 7C 83 23 78 */ mr r3, r4
-/* 80294B00 7C 04 03 78 */ mr r4, r0
-/* 80294B04 4B FF DD 59 */ bl setFIR__8JASTrackFPCs
-/* 80294B08 38 60 00 00 */ li r3, 0
-/* 80294B0C 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294B10 7C 08 03 A6 */ mtlr r0
-/* 80294B14 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294B18 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdIIRCutOff__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdIIRCutOff__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 5e7102816d..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdIIRCutOff__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,19 +0,0 @@
-lbl_80294B70:
-/* 80294B70 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294B74 7C 08 02 A6 */ mflr r0
-/* 80294B78 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294B7C 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294B80 28 00 00 80 */ cmplwi r0, 0x80
-/* 80294B84 40 80 00 1C */ bge lbl_80294BA0
-/* 80294B88 7C 83 23 78 */ mr r3, r4
-/* 80294B8C 54 05 18 38 */ slwi r5, r0, 3
-/* 80294B90 3C 80 80 3A */ lis r4, CUTOFF_TO_IIR_TABLE__7JASCalc@ha /* 0x8039ABB8@ha */
-/* 80294B94 38 04 AB B8 */ addi r0, r4, CUTOFF_TO_IIR_TABLE__7JASCalc@l /* 0x8039ABB8@l */
-/* 80294B98 7C 80 2A 14 */ add r4, r0, r5
-/* 80294B9C 4B FF DD 01 */ bl setIIR__8JASTrackFPCs
-lbl_80294BA0:
-/* 80294BA0 38 60 00 00 */ li r3, 0
-/* 80294BA4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294BA8 7C 08 03 A6 */ mtlr r0
-/* 80294BAC 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294BB0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdIIRSet__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdIIRSet__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index ecdcf22694..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdIIRSet__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,23 +0,0 @@
-lbl_80294B1C:
-/* 80294B1C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294B20 7C 08 02 A6 */ mflr r0
-/* 80294B24 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294B28 38 60 00 00 */ li r3, 0
-/* 80294B2C 38 C0 00 00 */ li r6, 0
-/* 80294B30 38 E1 00 08 */ addi r7, r1, 8
-/* 80294B34 38 00 00 04 */ li r0, 4
-/* 80294B38 7C 09 03 A6 */ mtctr r0
-lbl_80294B3C:
-/* 80294B3C 7C 05 30 2E */ lwzx r0, r5, r6
-/* 80294B40 7C 07 1B 2E */ sthx r0, r7, r3
-/* 80294B44 38 63 00 02 */ addi r3, r3, 2
-/* 80294B48 38 C6 00 04 */ addi r6, r6, 4
-/* 80294B4C 42 00 FF F0 */ bdnz lbl_80294B3C
-/* 80294B50 7C 83 23 78 */ mr r3, r4
-/* 80294B54 38 81 00 08 */ addi r4, r1, 8
-/* 80294B58 4B FF DD 45 */ bl setIIR__8JASTrackFPCs
-/* 80294B5C 38 60 00 00 */ li r3, 0
-/* 80294B60 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294B64 7C 08 03 A6 */ mtlr r0
-/* 80294B68 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294B6C 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdIntTimer__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdIntTimer__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 986894d926..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdIntTimer__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,8 +0,0 @@
-lbl_80294A20:
-/* 80294A20 80 65 00 04 */ lwz r3, 4(r5)
-/* 80294A24 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294A28 98 04 00 50 */ stb r0, 0x50(r4)
-/* 80294A2C 90 64 00 54 */ stw r3, 0x54(r4)
-/* 80294A30 90 64 00 58 */ stw r3, 0x58(r4)
-/* 80294A34 38 60 00 00 */ li r3, 0
-/* 80294A38 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdJmpF__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdJmpF__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index ff9ad2fa7a..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdJmpF__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,24 +0,0 @@
-lbl_80294340:
-/* 80294340 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294344 7C 08 02 A6 */ mflr r0
-/* 80294348 90 01 00 14 */ stw r0, 0x14(r1)
-/* 8029434C 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80294350 93 C1 00 08 */ stw r30, 8(r1)
-/* 80294354 7C 9E 23 78 */ mr r30, r4
-/* 80294358 7C BF 2B 78 */ mr r31, r5
-/* 8029435C 80 A5 00 00 */ lwz r5, 0(r5)
-/* 80294360 4B FF F9 95 */ bl conditionCheck__12JASSeqParserFP8JASTrackQ212JASSeqParser15BranchCondition
-/* 80294364 54 60 06 3F */ clrlwi. r0, r3, 0x18
-/* 80294368 41 82 00 14 */ beq lbl_8029437C
-/* 8029436C 80 7E 00 00 */ lwz r3, 0(r30)
-/* 80294370 80 1F 00 04 */ lwz r0, 4(r31)
-/* 80294374 7C 03 02 14 */ add r0, r3, r0
-/* 80294378 90 1E 00 04 */ stw r0, 4(r30)
-lbl_8029437C:
-/* 8029437C 38 60 00 00 */ li r3, 0
-/* 80294380 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80294384 83 C1 00 08 */ lwz r30, 8(r1)
-/* 80294388 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 8029438C 7C 08 03 A6 */ mtlr r0
-/* 80294390 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294394 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdJmp__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdJmp__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index b037003898..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdJmp__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,7 +0,0 @@
-lbl_80294328:
-/* 80294328 80 64 00 00 */ lwz r3, 0(r4)
-/* 8029432C 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294330 7C 03 02 14 */ add r0, r3, r0
-/* 80294334 90 04 00 04 */ stw r0, 4(r4)
-/* 80294338 38 60 00 00 */ li r3, 0
-/* 8029433C 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdLoopE__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdLoopE__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 5403b8f922..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdLoopE__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,11 +0,0 @@
-lbl_80294448:
-/* 80294448 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 8029444C 7C 08 02 A6 */ mflr r0
-/* 80294450 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294454 7C 83 23 78 */ mr r3, r4
-/* 80294458 48 00 1D B9 */ bl loopEnd__12JASSeqReaderFv
-/* 8029445C 38 60 00 00 */ li r3, 0
-/* 80294460 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294464 7C 08 03 A6 */ mtlr r0
-/* 80294468 38 21 00 10 */ addi r1, r1, 0x10
-/* 8029446C 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdLoopS__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdLoopS__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 94ad2e8be3..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdLoopS__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,12 +0,0 @@
-lbl_8029441C:
-/* 8029441C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294420 7C 08 02 A6 */ mflr r0
-/* 80294424 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294428 7C 83 23 78 */ mr r3, r4
-/* 8029442C 80 85 00 00 */ lwz r4, 0(r5)
-/* 80294430 48 00 1D 9D */ bl loopStart__12JASSeqReaderFUl
-/* 80294434 38 60 00 00 */ li r3, 0
-/* 80294438 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 8029443C 7C 08 03 A6 */ mtlr r0
-/* 80294440 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294444 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdNoteOff__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdNoteOff__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index e9d4a28c73..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdNoteOff__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,14 +0,0 @@
-lbl_802944F4:
-/* 802944F4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802944F8 7C 08 02 A6 */ mflr r0
-/* 802944FC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294500 80 A5 00 00 */ lwz r5, 0(r5)
-/* 80294504 81 83 00 00 */ lwz r12, 0(r3)
-/* 80294508 81 8C 00 18 */ lwz r12, 0x18(r12)
-/* 8029450C 7D 89 03 A6 */ mtctr r12
-/* 80294510 4E 80 04 21 */ bctrl
-/* 80294514 38 60 00 00 */ li r3, 0
-/* 80294518 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 8029451C 7C 08 03 A6 */ mtlr r0
-/* 80294520 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294524 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdNoteOn__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdNoteOn__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 94a84650b8..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdNoteOn__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,17 +0,0 @@
-lbl_802944B4:
-/* 802944B4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802944B8 7C 08 02 A6 */ mflr r0
-/* 802944BC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802944C0 7C A7 2B 78 */ mr r7, r5
-/* 802944C4 80 A5 00 04 */ lwz r5, 4(r5)
-/* 802944C8 80 C7 00 00 */ lwz r6, 0(r7)
-/* 802944CC 80 E7 00 08 */ lwz r7, 8(r7)
-/* 802944D0 81 83 00 00 */ lwz r12, 0(r3)
-/* 802944D4 81 8C 00 10 */ lwz r12, 0x10(r12)
-/* 802944D8 7D 89 03 A6 */ mtctr r12
-/* 802944DC 4E 80 04 21 */ bctrl
-/* 802944E0 38 60 00 00 */ li r3, 0
-/* 802944E4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802944E8 7C 08 03 A6 */ mtlr r0
-/* 802944EC 38 21 00 10 */ addi r1, r1, 0x10
-/* 802944F0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdNote__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdNote__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 257bd4c655..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdNote__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,18 +0,0 @@
-lbl_80294470:
-/* 80294470 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294474 7C 08 02 A6 */ mflr r0
-/* 80294478 90 01 00 14 */ stw r0, 0x14(r1)
-/* 8029447C 7C A8 2B 78 */ mr r8, r5
-/* 80294480 80 A5 00 04 */ lwz r5, 4(r5)
-/* 80294484 80 C8 00 08 */ lwz r6, 8(r8)
-/* 80294488 80 E8 00 0C */ lwz r7, 0xc(r8)
-/* 8029448C 81 08 00 00 */ lwz r8, 0(r8)
-/* 80294490 81 83 00 00 */ lwz r12, 0(r3)
-/* 80294494 81 8C 00 14 */ lwz r12, 0x14(r12)
-/* 80294498 7D 89 03 A6 */ mtctr r12
-/* 8029449C 4E 80 04 21 */ bctrl
-/* 802944A0 38 60 00 00 */ li r3, 0
-/* 802944A4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802944A8 7C 08 03 A6 */ mtlr r0
-/* 802944AC 38 21 00 10 */ addi r1, r1, 0x10
-/* 802944B0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdOpenTrack__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdOpenTrack__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 02298c636d..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdOpenTrack__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,29 +0,0 @@
-lbl_80294188:
-/* 80294188 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8029418C 7C 08 02 A6 */ mflr r0
-/* 80294190 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80294194 39 61 00 20 */ addi r11, r1, 0x20
-/* 80294198 48 0C E0 45 */ bl _savegpr_29
-/* 8029419C 7C 9D 23 78 */ mr r29, r4
-/* 802941A0 83 E5 00 04 */ lwz r31, 4(r5)
-/* 802941A4 7F A3 EB 78 */ mr r3, r29
-/* 802941A8 80 85 00 00 */ lwz r4, 0(r5)
-/* 802941AC 4B FF DA 85 */ bl openChild__8JASTrackFUl
-/* 802941B0 7C 7E 1B 79 */ or. r30, r3, r3
-/* 802941B4 40 82 00 0C */ bne lbl_802941C0
-/* 802941B8 38 60 00 00 */ li r3, 0
-/* 802941BC 48 00 00 1C */ b lbl_802941D8
-lbl_802941C0:
-/* 802941C0 80 9D 00 00 */ lwz r4, 0(r29)
-/* 802941C4 7F E5 FB 78 */ mr r5, r31
-/* 802941C8 4B FF D8 41 */ bl setSeqData__8JASTrackFPvUl
-/* 802941CC 7F C3 F3 78 */ mr r3, r30
-/* 802941D0 4B FF D8 ED */ bl start__8JASTrackFv
-/* 802941D4 38 60 00 00 */ li r3, 0
-lbl_802941D8:
-/* 802941D8 39 61 00 20 */ addi r11, r1, 0x20
-/* 802941DC 48 0C E0 4D */ bl _restgpr_29
-/* 802941E0 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 802941E4 7C 08 03 A6 */ mtlr r0
-/* 802941E8 38 21 00 20 */ addi r1, r1, 0x20
-/* 802941EC 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdParentReadPort__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdParentReadPort__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index bf7c22c7e8..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdParentReadPort__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,28 +0,0 @@
-lbl_80294644:
-/* 80294644 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80294648 7C 08 02 A6 */ mflr r0
-/* 8029464C 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80294650 39 61 00 20 */ addi r11, r1, 0x20
-/* 80294654 48 0C DB 89 */ bl _savegpr_29
-/* 80294658 7C 7D 1B 78 */ mr r29, r3
-/* 8029465C 7C 9E 23 78 */ mr r30, r4
-/* 80294660 7C BF 2B 78 */ mr r31, r5
-/* 80294664 80 64 01 2C */ lwz r3, 0x12c(r4)
-/* 80294668 28 03 00 00 */ cmplwi r3, 0
-/* 8029466C 41 82 00 24 */ beq lbl_80294690
-/* 80294670 80 9F 00 00 */ lwz r4, 0(r31)
-/* 80294674 4B FF E3 09 */ bl readPort__8JASTrackFUl
-/* 80294678 7C 60 1B 78 */ mr r0, r3
-/* 8029467C 7F A3 EB 78 */ mr r3, r29
-/* 80294680 7F C4 F3 78 */ mr r4, r30
-/* 80294684 80 BF 00 04 */ lwz r5, 4(r31)
-/* 80294688 54 06 04 3E */ clrlwi r6, r0, 0x10
-/* 8029468C 4B FF F7 39 */ bl writeReg__12JASSeqParserFP8JASTrackUlUl
-lbl_80294690:
-/* 80294690 38 60 00 00 */ li r3, 0
-/* 80294694 39 61 00 20 */ addi r11, r1, 0x20
-/* 80294698 48 0C DB 91 */ bl _restgpr_29
-/* 8029469C 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 802946A0 7C 08 03 A6 */ mtlr r0
-/* 802946A4 38 21 00 20 */ addi r1, r1, 0x20
-/* 802946A8 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdParentWritePort__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdParentWritePort__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 2d5a4fb4f4..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdParentWritePort__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,17 +0,0 @@
-lbl_802945BC:
-/* 802945BC 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802945C0 7C 08 02 A6 */ mflr r0
-/* 802945C4 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802945C8 80 64 01 2C */ lwz r3, 0x12c(r4)
-/* 802945CC 28 03 00 00 */ cmplwi r3, 0
-/* 802945D0 41 82 00 14 */ beq lbl_802945E4
-/* 802945D4 80 85 00 00 */ lwz r4, 0(r5)
-/* 802945D8 80 05 00 04 */ lwz r0, 4(r5)
-/* 802945DC 54 05 04 3E */ clrlwi r5, r0, 0x10
-/* 802945E0 4B FF E3 39 */ bl writePort__8JASTrackFUlUs
-lbl_802945E4:
-/* 802945E4 38 60 00 00 */ li r3, 0
-/* 802945E8 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802945EC 7C 08 03 A6 */ mtlr r0
-/* 802945F0 38 21 00 10 */ addi r1, r1, 0x10
-/* 802945F4 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdPrg__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdPrg__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 55e1adeba8..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdPrg__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,6 +0,0 @@
-lbl_80294BE4:
-/* 80294BE4 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294BE8 54 00 06 3E */ clrlwi r0, r0, 0x18
-/* 80294BEC B0 04 02 2E */ sth r0, 0x22e(r4)
-/* 80294BF0 38 60 00 00 */ li r3, 0
-/* 80294BF4 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdReadPort__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdReadPort__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index a0ddca6e5f..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdReadPort__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,25 +0,0 @@
-lbl_80294528:
-/* 80294528 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8029452C 7C 08 02 A6 */ mflr r0
-/* 80294530 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80294534 39 61 00 20 */ addi r11, r1, 0x20
-/* 80294538 48 0C DC A5 */ bl _savegpr_29
-/* 8029453C 7C 7D 1B 78 */ mr r29, r3
-/* 80294540 7C 9E 23 78 */ mr r30, r4
-/* 80294544 7C BF 2B 78 */ mr r31, r5
-/* 80294548 7F C3 F3 78 */ mr r3, r30
-/* 8029454C 80 85 00 00 */ lwz r4, 0(r5)
-/* 80294550 4B FF E3 81 */ bl readPortSelf__8JASTrackFUl
-/* 80294554 7C 60 1B 78 */ mr r0, r3
-/* 80294558 7F A3 EB 78 */ mr r3, r29
-/* 8029455C 7F C4 F3 78 */ mr r4, r30
-/* 80294560 80 BF 00 04 */ lwz r5, 4(r31)
-/* 80294564 54 06 04 3E */ clrlwi r6, r0, 0x10
-/* 80294568 4B FF F8 5D */ bl writeReg__12JASSeqParserFP8JASTrackUlUl
-/* 8029456C 38 60 00 00 */ li r3, 0
-/* 80294570 39 61 00 20 */ addi r11, r1, 0x20
-/* 80294574 48 0C DC B5 */ bl _restgpr_29
-/* 80294578 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8029457C 7C 08 03 A6 */ mtlr r0
-/* 80294580 38 21 00 20 */ addi r1, r1, 0x20
-/* 80294584 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdRegLoad__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdRegLoad__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 7842c48571..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdRegLoad__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,13 +0,0 @@
-lbl_80294F10:
-/* 80294F10 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294F14 7C 08 02 A6 */ mflr r0
-/* 80294F18 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294F1C 7C A6 2B 78 */ mr r6, r5
-/* 80294F20 80 A5 00 00 */ lwz r5, 0(r5)
-/* 80294F24 80 C6 00 04 */ lwz r6, 4(r6)
-/* 80294F28 4B FF EE 9D */ bl writeReg__12JASSeqParserFP8JASTrackUlUl
-/* 80294F2C 38 60 00 00 */ li r3, 0
-/* 80294F30 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294F34 7C 08 03 A6 */ mtlr r0
-/* 80294F38 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294F3C 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdRegUni__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdRegUni__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 772b959436..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdRegUni__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,34 +0,0 @@
-lbl_80294F40:
-/* 80294F40 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80294F44 7C 08 02 A6 */ mflr r0
-/* 80294F48 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80294F4C 39 61 00 20 */ addi r11, r1, 0x20
-/* 80294F50 48 0C D2 8D */ bl _savegpr_29
-/* 80294F54 7C 7D 1B 78 */ mr r29, r3
-/* 80294F58 7C 9E 23 78 */ mr r30, r4
-/* 80294F5C 83 E5 00 04 */ lwz r31, 4(r5)
-/* 80294F60 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294F64 2C 00 00 0B */ cmpwi r0, 0xb
-/* 80294F68 41 82 00 08 */ beq lbl_80294F70
-/* 80294F6C 48 00 00 14 */ b lbl_80294F80
-lbl_80294F70:
-/* 80294F70 7F E5 FB 78 */ mr r5, r31
-/* 80294F74 4B FF F0 55 */ bl readReg__12JASSeqParserCFP8JASTrackUl
-/* 80294F78 7C C3 00 D0 */ neg r6, r3
-/* 80294F7C 48 00 00 0C */ b lbl_80294F88
-lbl_80294F80:
-/* 80294F80 38 60 00 00 */ li r3, 0
-/* 80294F84 48 00 00 18 */ b lbl_80294F9C
-lbl_80294F88:
-/* 80294F88 7F A3 EB 78 */ mr r3, r29
-/* 80294F8C 7F C4 F3 78 */ mr r4, r30
-/* 80294F90 7F E5 FB 78 */ mr r5, r31
-/* 80294F94 4B FF EE 31 */ bl writeReg__12JASSeqParserFP8JASTrackUlUl
-/* 80294F98 38 60 00 00 */ li r3, 0
-lbl_80294F9C:
-/* 80294F9C 39 61 00 20 */ addi r11, r1, 0x20
-/* 80294FA0 48 0C D2 89 */ bl _restgpr_29
-/* 80294FA4 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 80294FA8 7C 08 03 A6 */ mtlr r0
-/* 80294FAC 38 21 00 20 */ addi r1, r1, 0x20
-/* 80294FB0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdRetF__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdRetF__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 2f976ca1a4..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdRetF__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,24 +0,0 @@
-lbl_802942D4:
-/* 802942D4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802942D8 7C 08 02 A6 */ mflr r0
-/* 802942DC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802942E0 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 802942E4 7C 9F 23 78 */ mr r31, r4
-/* 802942E8 80 A5 00 00 */ lwz r5, 0(r5)
-/* 802942EC 4B FF FA 09 */ bl conditionCheck__12JASSeqParserFP8JASTrackQ212JASSeqParser15BranchCondition
-/* 802942F0 54 60 06 3F */ clrlwi. r0, r3, 0x18
-/* 802942F4 41 82 00 1C */ beq lbl_80294310
-/* 802942F8 7F E3 FB 78 */ mr r3, r31
-/* 802942FC 48 00 1F 81 */ bl ret__12JASSeqReaderFv
-/* 80294300 54 60 06 3F */ clrlwi. r0, r3, 0x18
-/* 80294304 40 82 00 0C */ bne lbl_80294310
-/* 80294308 38 60 00 00 */ li r3, 0
-/* 8029430C 48 00 00 08 */ b lbl_80294314
-lbl_80294310:
-/* 80294310 38 60 00 00 */ li r3, 0
-lbl_80294314:
-/* 80294314 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80294318 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 8029431C 7C 08 03 A6 */ mtlr r0
-/* 80294320 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294324 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdRetI__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdRetI__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 74c5781a0e..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdRetI__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,16 +0,0 @@
-lbl_802949E4:
-/* 802949E4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802949E8 7C 08 02 A6 */ mflr r0
-/* 802949EC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802949F0 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 802949F4 7C 9F 23 78 */ mr r31, r4
-/* 802949F8 7F E3 FB 78 */ mr r3, r31
-/* 802949FC 4B FF F1 05 */ bl retIntr__10JASSeqCtrlFv
-/* 80294A00 7F E3 FB 78 */ mr r3, r31
-/* 80294A04 4B FF F1 75 */ bl checkIntr__10JASSeqCtrlFv
-/* 80294A08 38 60 00 00 */ li r3, 0
-/* 80294A0C 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80294A10 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294A14 7C 08 03 A6 */ mtlr r0
-/* 80294A18 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294A1C 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdRet__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdRet__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 5c2e0462d9..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdRet__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,15 +0,0 @@
-lbl_8029429C:
-/* 8029429C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802942A0 7C 08 02 A6 */ mflr r0
-/* 802942A4 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802942A8 7C 83 23 78 */ mr r3, r4
-/* 802942AC 48 00 1F D1 */ bl ret__12JASSeqReaderFv
-/* 802942B0 54 60 06 3E */ clrlwi r0, r3, 0x18
-/* 802942B4 20 00 00 00 */ subfic r0, r0, 0
-/* 802942B8 7C 60 01 10 */ subfe r3, r0, r0
-/* 802942BC 38 00 00 00 */ li r0, 0
-/* 802942C0 7C 03 18 78 */ andc r3, r0, r3
-/* 802942C4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802942C8 7C 08 03 A6 */ mtlr r0
-/* 802942CC 38 21 00 10 */ addi r1, r1, 0x10
-/* 802942D0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdSetIntTable__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdSetIntTable__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index fae51675c6..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdSetIntTable__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,5 +0,0 @@
-lbl_8029494C:
-/* 8029494C 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294950 90 04 00 48 */ stw r0, 0x48(r4)
-/* 80294954 38 60 00 00 */ li r3, 0
-/* 80294958 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdSetInterrupt__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdSetInterrupt__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index a389c6924d..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdSetInterrupt__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,12 +0,0 @@
-lbl_8029495C:
-/* 8029495C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294960 7C 08 02 A6 */ mflr r0
-/* 80294964 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294968 7C 83 23 78 */ mr r3, r4
-/* 8029496C 80 85 00 00 */ lwz r4, 0(r5)
-/* 80294970 4B FF F1 71 */ bl setIntrMask__10JASSeqCtrlFUl
-/* 80294974 38 60 00 00 */ li r3, 0
-/* 80294978 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 8029497C 7C 08 03 A6 */ mtlr r0
-/* 80294980 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294984 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdSetLastNote__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdSetLastNote__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index a0cfa79a77..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdSetLastNote__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,16 +0,0 @@
-lbl_80294804:
-/* 80294804 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294808 7C 08 02 A6 */ mflr r0
-/* 8029480C 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294810 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294814 28 00 01 00 */ cmplwi r0, 0x100
-/* 80294818 40 80 00 10 */ bge lbl_80294828
-/* 8029481C 7C 83 23 78 */ mr r3, r4
-/* 80294820 54 04 06 3E */ clrlwi r4, r0, 0x18
-/* 80294824 4B FF D5 99 */ bl setLatestKey__8JASTrackFUc
-lbl_80294828:
-/* 80294828 38 60 00 00 */ li r3, 0
-/* 8029482C 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294830 7C 08 03 A6 */ mtlr r0
-/* 80294834 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294838 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdSimpleADSR__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdSimpleADSR__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 5e744a73af..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdSimpleADSR__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,22 +0,0 @@
-lbl_802948C8:
-/* 802948C8 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802948CC 7C 08 02 A6 */ mflr r0
-/* 802948D0 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802948D4 7C A8 2B 78 */ mr r8, r5
-/* 802948D8 7C 83 23 78 */ mr r3, r4
-/* 802948DC 80 05 00 00 */ lwz r0, 0(r5)
-/* 802948E0 7C 04 07 34 */ extsh r4, r0
-/* 802948E4 80 05 00 04 */ lwz r0, 4(r5)
-/* 802948E8 7C 05 07 34 */ extsh r5, r0
-/* 802948EC 80 08 00 08 */ lwz r0, 8(r8)
-/* 802948F0 7C 06 07 34 */ extsh r6, r0
-/* 802948F4 80 08 00 0C */ lwz r0, 0xc(r8)
-/* 802948F8 7C 07 07 34 */ extsh r7, r0
-/* 802948FC 80 08 00 10 */ lwz r0, 0x10(r8)
-/* 80294900 54 08 04 3E */ clrlwi r8, r0, 0x10
-/* 80294904 4B FF DF 05 */ bl setOscAdsr__8JASTrackFssssUs
-/* 80294908 38 60 00 00 */ li r3, 0
-/* 8029490C 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294910 7C 08 03 A6 */ mtlr r0
-/* 80294914 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294918 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdSyncCPU__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdSyncCPU__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 60cf467c48..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdSyncCPU__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,28 +0,0 @@
-lbl_80294A3C:
-/* 80294A3C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294A40 7C 08 02 A6 */ mflr r0
-/* 80294A44 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294A48 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80294A4C 7C 9F 23 78 */ mr r31, r4
-/* 80294A50 3C 60 00 01 */ lis r3, 0x0001 /* 0x0000FFFF@ha */
-/* 80294A54 38 03 FF FF */ addi r0, r3, 0xFFFF /* 0x0000FFFF@l */
-/* 80294A58 81 8D 8C C0 */ lwz r12, sCallBackFunc__12JASSeqParser(r13)
-/* 80294A5C 28 0C 00 00 */ cmplwi r12, 0
-/* 80294A60 41 82 00 1C */ beq lbl_80294A7C
-/* 80294A64 7F E3 FB 78 */ mr r3, r31
-/* 80294A68 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294A6C 54 04 04 3E */ clrlwi r4, r0, 0x10
-/* 80294A70 7D 89 03 A6 */ mtctr r12
-/* 80294A74 4E 80 04 21 */ bctrl
-/* 80294A78 7C 60 1B 78 */ mr r0, r3
-lbl_80294A7C:
-/* 80294A7C 38 7F 00 80 */ addi r3, r31, 0x80
-/* 80294A80 38 80 00 03 */ li r4, 3
-/* 80294A84 54 05 04 3E */ clrlwi r5, r0, 0x10
-/* 80294A88 4B FF EB FD */ bl write__16JASRegisterParamFQ216JASRegisterParam5RegIDUl
-/* 80294A8C 38 60 00 00 */ li r3, 0
-/* 80294A90 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80294A94 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294A98 7C 08 03 A6 */ mtlr r0
-/* 80294A9C 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294AA0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdTempo__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdTempo__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index ce941bc789..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdTempo__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,13 +0,0 @@
-lbl_80294AA4:
-/* 80294AA4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80294AA8 7C 08 02 A6 */ mflr r0
-/* 80294AAC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294AB0 7C 83 23 78 */ mr r3, r4
-/* 80294AB4 80 05 00 00 */ lwz r0, 0(r5)
-/* 80294AB8 54 04 04 3E */ clrlwi r4, r0, 0x10
-/* 80294ABC 4B FF E0 9D */ bl setTempo__8JASTrackFUs
-/* 80294AC0 38 60 00 00 */ li r3, 0
-/* 80294AC4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80294AC8 7C 08 03 A6 */ mtlr r0
-/* 80294ACC 38 21 00 10 */ addi r1, r1, 0x10
-/* 80294AD0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdWaitByte__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdWaitByte__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index e81de22a81..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdWaitByte__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,5 +0,0 @@
-lbl_802947F4:
-/* 802947F4 80 05 00 00 */ lwz r0, 0(r5)
-/* 802947F8 90 04 00 40 */ stw r0, 0x40(r4)
-/* 802947FC 38 60 00 00 */ li r3, 0
-/* 80294800 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdWait__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdWait__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index d324674761..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdWait__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,15 +0,0 @@
-lbl_802947BC:
-/* 802947BC 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802947C0 7C 08 02 A6 */ mflr r0
-/* 802947C4 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802947C8 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 802947CC 7C 9F 23 78 */ mr r31, r4
-/* 802947D0 7F E3 FB 78 */ mr r3, r31
-/* 802947D4 48 00 1A DD */ bl readMidiValue__12JASSeqReaderFv
-/* 802947D8 90 7F 00 40 */ stw r3, 0x40(r31)
-/* 802947DC 38 60 00 00 */ li r3, 0
-/* 802947E0 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 802947E4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802947E8 7C 08 03 A6 */ mtlr r0
-/* 802947EC 38 21 00 10 */ addi r1, r1, 0x10
-/* 802947F0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/cmdWritePort__12JASSeqParserFP8JASTrackPUl.s b/asm/JSystem/JAudio2/JASSeqParser/cmdWritePort__12JASSeqParserFP8JASTrackPUl.s
deleted file mode 100644
index 32fa7c4d4b..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/cmdWritePort__12JASSeqParserFP8JASTrackPUl.s
+++ /dev/null
@@ -1,14 +0,0 @@
-lbl_80294588:
-/* 80294588 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 8029458C 7C 08 02 A6 */ mflr r0
-/* 80294590 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80294594 7C 83 23 78 */ mr r3, r4
-/* 80294598 80 85 00 00 */ lwz r4, 0(r5)
-/* 8029459C 80 05 00 04 */ lwz r0, 4(r5)
-/* 802945A0 54 05 04 3E */ clrlwi r5, r0, 0x10
-/* 802945A4 4B FF E3 51 */ bl writePortSelf__8JASTrackFUlUs
-/* 802945A8 38 60 00 00 */ li r3, 0
-/* 802945AC 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802945B0 7C 08 03 A6 */ mtlr r0
-/* 802945B4 38 21 00 10 */ addi r1, r1, 0x10
-/* 802945B8 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/execCommand__12JASSeqParserFP8JASTrackM12JASSeqParserFPCvPvP8JASTrackPUl_lUlPUl.s b/asm/JSystem/JAudio2/JASSeqParser/execCommand__12JASSeqParserFP8JASTrackM12JASSeqParserFPCvPvP8JASTrackPUl_lUlPUl.s
deleted file mode 100644
index b1aa34bcdc..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/execCommand__12JASSeqParserFP8JASTrackM12JASSeqParserFPCvPvP8JASTrackPUl_lUlPUl.s
+++ /dev/null
@@ -1,12 +0,0 @@
-lbl_8029559C:
-/* 8029559C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802955A0 7C 08 02 A6 */ mflr r0
-/* 802955A4 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802955A8 7C AC 2B 78 */ mr r12, r5
-/* 802955AC 7C E5 3B 78 */ mr r5, r7
-/* 802955B0 48 0C CA D5 */ bl __ptmf_scall
-/* 802955B4 60 00 00 00 */ nop
-/* 802955B8 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802955BC 7C 08 03 A6 */ mtlr r0
-/* 802955C0 38 21 00 10 */ addi r1, r1, 0x10
-/* 802955C4 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/execNoteOff__12JASSeqParserFP8JASTrackUl.s b/asm/JSystem/JAudio2/JASSeqParser/execNoteOff__12JASSeqParserFP8JASTrackUl.s
deleted file mode 100644
index ff642a5bca..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/execNoteOff__12JASSeqParserFP8JASTrackUl.s
+++ /dev/null
@@ -1,12 +0,0 @@
-lbl_80295570:
-/* 80295570 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80295574 7C 08 02 A6 */ mflr r0
-/* 80295578 90 01 00 14 */ stw r0, 0x14(r1)
-/* 8029557C 7C 83 23 78 */ mr r3, r4
-/* 80295580 7C A4 2B 78 */ mr r4, r5
-/* 80295584 38 A0 00 00 */ li r5, 0
-/* 80295588 4B FF CC 11 */ bl noteOff__8JASTrackFUlUs
-/* 8029558C 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80295590 7C 08 03 A6 */ mtlr r0
-/* 80295594 38 21 00 10 */ addi r1, r1, 0x10
-/* 80295598 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/execNoteOnMidi__12JASSeqParserFP8JASTrackUlUlUl.s b/asm/JSystem/JAudio2/JASSeqParser/execNoteOnMidi__12JASSeqParserFP8JASTrackUlUlUl.s
deleted file mode 100644
index 1ccce3f037..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/execNoteOnMidi__12JASSeqParserFP8JASTrackUlUlUl.s
+++ /dev/null
@@ -1,13 +0,0 @@
-lbl_80295540:
-/* 80295540 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80295544 7C 08 02 A6 */ mflr r0
-/* 80295548 90 01 00 14 */ stw r0, 0x14(r1)
-/* 8029554C 7C 83 23 78 */ mr r3, r4
-/* 80295550 7C A4 2B 78 */ mr r4, r5
-/* 80295554 7C C5 33 78 */ mr r5, r6
-/* 80295558 7C E6 3B 78 */ mr r6, r7
-/* 8029555C 4B FF C9 DD */ bl noteOn__8JASTrackFUlUlUl
-/* 80295560 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80295564 7C 08 03 A6 */ mtlr r0
-/* 80295568 38 21 00 10 */ addi r1, r1, 0x10
-/* 8029556C 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/parseNoteOff__12JASSeqParserFP8JASTrackUc.s b/asm/JSystem/JAudio2/JASSeqParser/parseNoteOff__12JASSeqParserFP8JASTrackUc.s
deleted file mode 100644
index d777ef81fb..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/parseNoteOff__12JASSeqParserFP8JASTrackUc.s
+++ /dev/null
@@ -1,16 +0,0 @@
-lbl_802955C8:
-/* 802955C8 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802955CC 7C 08 02 A6 */ mflr r0
-/* 802955D0 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802955D4 54 A5 07 7F */ clrlwi. r5, r5, 0x1d
-/* 802955D8 41 82 00 14 */ beq lbl_802955EC
-/* 802955DC 81 83 00 00 */ lwz r12, 0(r3)
-/* 802955E0 81 8C 00 18 */ lwz r12, 0x18(r12)
-/* 802955E4 7D 89 03 A6 */ mtctr r12
-/* 802955E8 4E 80 04 21 */ bctrl
-lbl_802955EC:
-/* 802955EC 38 60 00 00 */ li r3, 0
-/* 802955F0 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802955F4 7C 08 03 A6 */ mtlr r0
-/* 802955F8 38 21 00 10 */ addi r1, r1, 0x10
-/* 802955FC 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/parseNoteOn__12JASSeqParserFP8JASTrackUc.s b/asm/JSystem/JAudio2/JASSeqParser/parseNoteOn__12JASSeqParserFP8JASTrackUc.s
deleted file mode 100644
index 7e453fb6a2..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/parseNoteOn__12JASSeqParserFP8JASTrackUc.s
+++ /dev/null
@@ -1,47 +0,0 @@
-lbl_80295600:
-/* 80295600 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80295604 7C 08 02 A6 */ mflr r0
-/* 80295608 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8029560C 39 61 00 20 */ addi r11, r1, 0x20
-/* 80295610 48 0C CB C5 */ bl _savegpr_27
-/* 80295614 7C 7B 1B 78 */ mr r27, r3
-/* 80295618 7C 9C 23 78 */ mr r28, r4
-/* 8029561C 7C BD 2B 78 */ mr r29, r5
-/* 80295620 80 A4 00 04 */ lwz r5, 4(r4)
-/* 80295624 38 05 00 01 */ addi r0, r5, 1
-/* 80295628 90 04 00 04 */ stw r0, 4(r4)
-/* 8029562C 8B E5 00 00 */ lbz r31, 0(r5)
-/* 80295630 80 A4 00 04 */ lwz r5, 4(r4)
-/* 80295634 38 05 00 01 */ addi r0, r5, 1
-/* 80295638 90 04 00 04 */ stw r0, 4(r4)
-/* 8029563C 8B C5 00 00 */ lbz r30, 0(r5)
-/* 80295640 57 E5 07 7F */ clrlwi. r5, r31, 0x1d
-/* 80295644 40 82 00 38 */ bne lbl_8029567C
-/* 80295648 7F 83 E3 78 */ mr r3, r28
-/* 8029564C 48 00 0C 65 */ bl readMidiValue__12JASSeqReaderFv
-/* 80295650 7C 67 1B 78 */ mr r7, r3
-/* 80295654 7F 63 DB 78 */ mr r3, r27
-/* 80295658 7F 84 E3 78 */ mr r4, r28
-/* 8029565C 57 A5 06 3E */ clrlwi r5, r29, 0x18
-/* 80295660 7F C6 F3 78 */ mr r6, r30
-/* 80295664 7F E8 FB 78 */ mr r8, r31
-/* 80295668 81 9B 00 00 */ lwz r12, 0(r27)
-/* 8029566C 81 8C 00 14 */ lwz r12, 0x14(r12)
-/* 80295670 7D 89 03 A6 */ mtctr r12
-/* 80295674 4E 80 04 21 */ bctrl
-/* 80295678 48 00 00 1C */ b lbl_80295694
-lbl_8029567C:
-/* 8029567C 57 A6 06 3E */ clrlwi r6, r29, 0x18
-/* 80295680 7F C7 F3 78 */ mr r7, r30
-/* 80295684 81 83 00 00 */ lwz r12, 0(r3)
-/* 80295688 81 8C 00 10 */ lwz r12, 0x10(r12)
-/* 8029568C 7D 89 03 A6 */ mtctr r12
-/* 80295690 4E 80 04 21 */ bctrl
-lbl_80295694:
-/* 80295694 38 60 00 00 */ li r3, 0
-/* 80295698 39 61 00 20 */ addi r11, r1, 0x20
-/* 8029569C 48 0C CB 85 */ bl _restgpr_27
-/* 802956A0 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 802956A4 7C 08 03 A6 */ mtlr r0
-/* 802956A8 38 21 00 20 */ addi r1, r1, 0x20
-/* 802956AC 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/parseRegCommand__12JASSeqParserFP8JASTracki.s b/asm/JSystem/JAudio2/JASSeqParser/parseRegCommand__12JASSeqParserFP8JASTracki.s
deleted file mode 100644
index 91ede5074a..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/parseRegCommand__12JASSeqParserFP8JASTracki.s
+++ /dev/null
@@ -1,32 +0,0 @@
-lbl_80295864:
-/* 80295864 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80295868 7C 08 02 A6 */ mflr r0
-/* 8029586C 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80295870 80 C4 00 04 */ lwz r6, 4(r4)
-/* 80295874 38 06 00 01 */ addi r0, r6, 1
-/* 80295878 90 04 00 04 */ stw r0, 4(r4)
-/* 8029587C 88 E6 00 00 */ lbz r7, 0(r6)
-/* 80295880 38 C0 00 00 */ li r6, 0
-/* 80295884 39 00 00 03 */ li r8, 3
-/* 80295888 7C A9 03 A6 */ mtctr r5
-/* 8029588C 2C 05 00 00 */ cmpwi r5, 0
-/* 80295890 40 81 00 20 */ ble lbl_802958B0
-lbl_80295894:
-/* 80295894 54 E0 06 31 */ rlwinm. r0, r7, 0, 0x18, 0x18
-/* 80295898 41 82 00 0C */ beq lbl_802958A4
-/* 8029589C 7C C0 43 78 */ or r0, r6, r8
-/* 802958A0 54 06 04 3E */ clrlwi r6, r0, 0x10
-lbl_802958A4:
-/* 802958A4 54 E7 0E 3C */ rlwinm r7, r7, 1, 0x18, 0x1e
-/* 802958A8 55 08 14 3A */ rlwinm r8, r8, 2, 0x10, 0x1d
-/* 802958AC 42 00 FF E8 */ bdnz lbl_80295894
-lbl_802958B0:
-/* 802958B0 80 A4 00 04 */ lwz r5, 4(r4)
-/* 802958B4 38 05 00 01 */ addi r0, r5, 1
-/* 802958B8 90 04 00 04 */ stw r0, 4(r4)
-/* 802958BC 88 A5 00 00 */ lbz r5, 0(r5)
-/* 802958C0 4B FF FD F1 */ bl parseCommand__12JASSeqParserFP8JASTrackUcUs
-/* 802958C4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802958C8 7C 08 03 A6 */ mtlr r0
-/* 802958CC 38 21 00 10 */ addi r1, r1, 0x10
-/* 802958D0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASSeqParser/parse__12JASSeqParserFP8JASTrack.s b/asm/JSystem/JAudio2/JASSeqParser/parse__12JASSeqParserFP8JASTrack.s
deleted file mode 100644
index b366c0e3a2..0000000000
--- a/asm/JSystem/JAudio2/JASSeqParser/parse__12JASSeqParserFP8JASTrack.s
+++ /dev/null
@@ -1,37 +0,0 @@
-lbl_802958D4:
-/* 802958D4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802958D8 7C 08 02 A6 */ mflr r0
-/* 802958DC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802958E0 80 A4 00 04 */ lwz r5, 4(r4)
-/* 802958E4 38 05 00 01 */ addi r0, r5, 1
-/* 802958E8 90 04 00 04 */ stw r0, 4(r4)
-/* 802958EC 88 A5 00 00 */ lbz r5, 0(r5)
-/* 802958F0 54 A0 06 31 */ rlwinm. r0, r5, 0, 0x18, 0x18
-/* 802958F4 40 82 00 0C */ bne lbl_80295900
-/* 802958F8 4B FF FD 09 */ bl parseNoteOn__12JASSeqParserFP8JASTrackUc
-/* 802958FC 48 00 00 44 */ b lbl_80295940
-lbl_80295900:
-/* 80295900 54 A0 06 36 */ rlwinm r0, r5, 0, 0x18, 0x1b
-/* 80295904 2C 00 00 90 */ cmpwi r0, 0x90
-/* 80295908 41 82 00 20 */ beq lbl_80295928
-/* 8029590C 40 80 00 2C */ bge lbl_80295938
-/* 80295910 2C 00 00 80 */ cmpwi r0, 0x80
-/* 80295914 41 82 00 08 */ beq lbl_8029591C
-/* 80295918 48 00 00 20 */ b lbl_80295938
-lbl_8029591C:
-/* 8029591C 54 A5 07 3E */ clrlwi r5, r5, 0x1c
-/* 80295920 4B FF FC A9 */ bl parseNoteOff__12JASSeqParserFP8JASTrackUc
-/* 80295924 48 00 00 1C */ b lbl_80295940
-lbl_80295928:
-/* 80295928 54 A5 07 7E */ clrlwi r5, r5, 0x1d
-/* 8029592C 38 A5 00 01 */ addi r5, r5, 1
-/* 80295930 4B FF FF 35 */ bl parseRegCommand__12JASSeqParserFP8JASTracki
-/* 80295934 48 00 00 0C */ b lbl_80295940
-lbl_80295938:
-/* 80295938 38 C0 00 00 */ li r6, 0
-/* 8029593C 4B FF FD 75 */ bl parseCommand__12JASSeqParserFP8JASTrackUcUs
-lbl_80295940:
-/* 80295940 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80295944 7C 08 03 A6 */ mtlr r0
-/* 80295948 38 21 00 10 */ addi r1, r1, 0x10
-/* 8029594C 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASTrackPort/checkExport__12JASTrackPortCFUl.s b/asm/JSystem/JAudio2/JASTrackPort/checkExport__12JASTrackPortCFUl.s
deleted file mode 100644
index 6ee31c337d..0000000000
--- a/asm/JSystem/JAudio2/JASTrackPort/checkExport__12JASTrackPortCFUl.s
+++ /dev/null
@@ -1,8 +0,0 @@
-lbl_80293628:
-/* 80293628 A0 63 00 02 */ lhz r3, 2(r3)
-/* 8029362C 38 00 00 01 */ li r0, 1
-/* 80293630 7C 00 20 30 */ slw r0, r0, r4
-/* 80293634 7C 63 00 38 */ and r3, r3, r0
-/* 80293638 30 03 FF FF */ addic r0, r3, -1
-/* 8029363C 7C 60 19 10 */ subfe r3, r0, r3
-/* 80293640 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASTrackPort/checkImport__12JASTrackPortCFUl.s b/asm/JSystem/JAudio2/JASTrackPort/checkImport__12JASTrackPortCFUl.s
deleted file mode 100644
index d6a47a9db5..0000000000
--- a/asm/JSystem/JAudio2/JASTrackPort/checkImport__12JASTrackPortCFUl.s
+++ /dev/null
@@ -1,8 +0,0 @@
-lbl_8029360C:
-/* 8029360C A0 63 00 00 */ lhz r3, 0(r3)
-/* 80293610 38 00 00 01 */ li r0, 1
-/* 80293614 7C 00 20 30 */ slw r0, r0, r4
-/* 80293618 7C 63 00 38 */ and r3, r3, r0
-/* 8029361C 30 03 FF FF */ addic r0, r3, -1
-/* 80293620 7C 60 19 10 */ subfe r3, r0, r3
-/* 80293624 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASTrackPort/init__12JASTrackPortFv.s b/asm/JSystem/JAudio2/JASTrackPort/init__12JASTrackPortFv.s
deleted file mode 100644
index 8cc3b95e46..0000000000
--- a/asm/JSystem/JAudio2/JASTrackPort/init__12JASTrackPortFv.s
+++ /dev/null
@@ -1,14 +0,0 @@
-lbl_8029354C:
-/* 8029354C 38 80 00 00 */ li r4, 0
-/* 80293550 7C 85 23 78 */ mr r5, r4
-/* 80293554 38 00 00 10 */ li r0, 0x10
-/* 80293558 7C 09 03 A6 */ mtctr r0
-lbl_8029355C:
-/* 8029355C 38 04 00 04 */ addi r0, r4, 4
-/* 80293560 7C A3 03 2E */ sthx r5, r3, r0
-/* 80293564 38 84 00 02 */ addi r4, r4, 2
-/* 80293568 42 00 FF F4 */ bdnz lbl_8029355C
-/* 8029356C 38 00 00 00 */ li r0, 0
-/* 80293570 B0 03 00 00 */ sth r0, 0(r3)
-/* 80293574 B0 03 00 02 */ sth r0, 2(r3)
-/* 80293578 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASTrackPort/readExport__12JASTrackPortFUl.s b/asm/JSystem/JAudio2/JASTrackPort/readExport__12JASTrackPortFUl.s
deleted file mode 100644
index 9d5c327084..0000000000
--- a/asm/JSystem/JAudio2/JASTrackPort/readExport__12JASTrackPortFUl.s
+++ /dev/null
@@ -1,10 +0,0 @@
-lbl_802935A0:
-/* 802935A0 A0 A3 00 02 */ lhz r5, 2(r3)
-/* 802935A4 38 00 00 01 */ li r0, 1
-/* 802935A8 7C 00 20 30 */ slw r0, r0, r4
-/* 802935AC 7C A0 00 78 */ andc r0, r5, r0
-/* 802935B0 B0 03 00 02 */ sth r0, 2(r3)
-/* 802935B4 54 80 08 3C */ slwi r0, r4, 1
-/* 802935B8 7C 63 02 14 */ add r3, r3, r0
-/* 802935BC A0 63 00 04 */ lhz r3, 4(r3)
-/* 802935C0 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASTrackPort/readImport__12JASTrackPortFUl.s b/asm/JSystem/JAudio2/JASTrackPort/readImport__12JASTrackPortFUl.s
deleted file mode 100644
index e953ff4a7d..0000000000
--- a/asm/JSystem/JAudio2/JASTrackPort/readImport__12JASTrackPortFUl.s
+++ /dev/null
@@ -1,10 +0,0 @@
-lbl_8029357C:
-/* 8029357C A0 A3 00 00 */ lhz r5, 0(r3)
-/* 80293580 38 00 00 01 */ li r0, 1
-/* 80293584 7C 00 20 30 */ slw r0, r0, r4
-/* 80293588 7C A0 00 78 */ andc r0, r5, r0
-/* 8029358C B0 03 00 00 */ sth r0, 0(r3)
-/* 80293590 54 80 08 3C */ slwi r0, r4, 1
-/* 80293594 7C 63 02 14 */ add r3, r3, r0
-/* 80293598 A0 63 00 04 */ lhz r3, 4(r3)
-/* 8029359C 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASTrackPort/writeExport__12JASTrackPortFUlUs.s b/asm/JSystem/JAudio2/JASTrackPort/writeExport__12JASTrackPortFUlUs.s
deleted file mode 100644
index c1d2e48710..0000000000
--- a/asm/JSystem/JAudio2/JASTrackPort/writeExport__12JASTrackPortFUlUs.s
+++ /dev/null
@@ -1,10 +0,0 @@
-lbl_802935E8:
-/* 802935E8 A0 C3 00 02 */ lhz r6, 2(r3)
-/* 802935EC 38 00 00 01 */ li r0, 1
-/* 802935F0 7C 00 20 30 */ slw r0, r0, r4
-/* 802935F4 7C C0 03 78 */ or r0, r6, r0
-/* 802935F8 B0 03 00 02 */ sth r0, 2(r3)
-/* 802935FC 54 80 08 3C */ slwi r0, r4, 1
-/* 80293600 7C 63 02 14 */ add r3, r3, r0
-/* 80293604 B0 A3 00 04 */ sth r5, 4(r3)
-/* 80293608 4E 80 00 20 */ blr
diff --git a/asm/JSystem/JAudio2/JASTrackPort/writeImport__12JASTrackPortFUlUs.s b/asm/JSystem/JAudio2/JASTrackPort/writeImport__12JASTrackPortFUlUs.s
deleted file mode 100644
index 6cdaf4882e..0000000000
--- a/asm/JSystem/JAudio2/JASTrackPort/writeImport__12JASTrackPortFUlUs.s
+++ /dev/null
@@ -1,10 +0,0 @@
-lbl_802935C4:
-/* 802935C4 A0 C3 00 00 */ lhz r6, 0(r3)
-/* 802935C8 38 00 00 01 */ li r0, 1
-/* 802935CC 7C 00 20 30 */ slw r0, r0, r4
-/* 802935D0 7C C0 03 78 */ or r0, r6, r0
-/* 802935D4 B0 03 00 00 */ sth r0, 0(r3)
-/* 802935D8 54 80 08 3C */ slwi r0, r4, 1
-/* 802935DC 7C 63 02 14 */ add r3, r3, r0
-/* 802935E0 B0 A3 00 04 */ sth r5, 4(r3)
-/* 802935E4 4E 80 00 20 */ blr
diff --git a/include/JSystem/JAudio2/JASCalc.h b/include/JSystem/JAudio2/JASCalc.h
index 6a8f9c6dd3..0693b35527 100644
--- a/include/JSystem/JAudio2/JASCalc.h
+++ b/include/JSystem/JAudio2/JASCalc.h
@@ -23,7 +23,7 @@ struct JASCalc {
f32 fake2(long x);
f32 fake3();
- static u8 const CUTOFF_TO_IIR_TABLE[1024];
+ static s16 const CUTOFF_TO_IIR_TABLE[128][4];
};
#endif /* JASCALC_H */
diff --git a/include/JSystem/JAudio2/JASRegisterParam.h b/include/JSystem/JAudio2/JASRegisterParam.h
index 76cacdf259..8a5c466555 100644
--- a/include/JSystem/JAudio2/JASRegisterParam.h
+++ b/include/JSystem/JAudio2/JASRegisterParam.h
@@ -3,9 +3,13 @@
#include "dolphin/types.h"
-struct JASRegisterParam {
+class JASRegisterParam {
+public:
enum RegID {
-
+ REG0,
+ REG1,
+ REG2,
+ REG3,
};
/* 80293644 */ JASRegisterParam();
diff --git a/include/JSystem/JAudio2/JASSeqCtrl.h b/include/JSystem/JAudio2/JASSeqCtrl.h
index 62391b9db5..90ead911eb 100644
--- a/include/JSystem/JAudio2/JASSeqCtrl.h
+++ b/include/JSystem/JAudio2/JASSeqCtrl.h
@@ -1,5 +1,75 @@
#ifndef JASSEQCTRL_H
#define JASSEQCTRL_H
+#include "JSystem/JAudio2/JASSeqReader.h"
+
+class JASTrack;
+class JASSeqParser;
+
+class JASSeqCtrl {
+public:
+ enum IntrType {
+ INTRTYPE_VALUE_0,
+ INTRTYPE_VALUE_1,
+ INTRTYPE_VALUE_2,
+ INTRTYPE_VALUE_3,
+ INTRTYPE_VALUE_4,
+ INTRTYPE_VALUE_5,
+ INTRTYPE_VALUE_6,
+ };
+
+ /* 802938BC */ JASSeqCtrl();
+ /* 80293924 */ void init();
+ /* 80293980 */ void start(void*, u32);
+ /* 802939C4 */ int tickProc(JASTrack*);
+ /* 80293ABC */ void interrupt(JASSeqCtrl::IntrType);
+ /* 80293AE0 */ void setIntrMask(u32);
+ /* 80293AF0 */ void clrIntrMask(u32);
+ /* 80293B00 */ int retIntr();
+ /* 80293B28 */ int findIntr();
+ /* 80293B78 */ void checkIntr();
+ /* 80293BE8 */ void timerProcess();
+
+ const JASSeqReader* getSeqReader() const { return &mReader; }
+ void* getBase() { return mReader.getBase(); }
+ void* getAddr(u32 param_0) { return mReader.getAddr(param_0); }
+ u8 getByte(u32 param_0) { return mReader.getByte(param_0); }
+ u16 get16(u32 param_0) { return mReader.get16(param_0); }
+ u32 get24(int param_0) { return mReader.get24(param_0); }
+ u32 get32(u32 param_0) { return mReader.get32(param_0); }
+ void* getCur() { return mReader.getCur(); }
+ u32 readByte() { return mReader.readByte(); }
+ u32 read16() { return mReader.read16(); }
+ u32 read24() { return mReader.read24(); }
+ bool call(u32 param_0) { return mReader.call(param_0); }
+ bool ret() { return mReader.ret(); }
+ void jump(u32 param_0) { mReader.jump(param_0); }
+ bool loopStart(u32 param_0) { return mReader.loopStart(param_0); }
+ bool loopEnd() { return mReader.loopEnd(); }
+ int readMidiValue() { return mReader.readMidiValue(); }
+ void wait(s32 param_0) { field_0x40 = param_0; }
+ void clrIntr() { field_0x44 = NULL; }
+ void setIntrTable(u32 param_0) { field_0x48 = param_0; }
+ void setIntrTimer(u32 param_0, u32 param_1) {
+ field_0x50 = param_0;
+ field_0x54 = param_1;
+ field_0x58 = param_1;
+ }
+ void waitNoteFinish() { field_0x51 = 1; }
+
+ /* 0x00 */ JASSeqReader mReader;
+ /* 0x3c */ JASSeqParser* field_0x3c;
+ /* 0x40 */ s32 field_0x40;
+ /* 0x44 */ void* field_0x44;
+ /* 0x48 */ u32 field_0x48;
+ /* 0x4c */ u16 field_0x4c;
+ /* 0x4e */ u16 field_0x4e;
+ /* 0x50 */ u8 field_0x50;
+ /* 0x51 */ u8 field_0x51;
+ /* 0x52 */ u16 field_0x52;
+ /* 0x54 */ u32 field_0x54;
+ /* 0x58 */ u32 field_0x58;
+ static JASSeqParser sDefaultParser;
+};
#endif /* JASSEQCTRL_H */
diff --git a/include/JSystem/JAudio2/JASSeqParser.h b/include/JSystem/JAudio2/JASSeqParser.h
index 8cff781352..a9f27ba6f8 100644
--- a/include/JSystem/JAudio2/JASSeqParser.h
+++ b/include/JSystem/JAudio2/JASSeqParser.h
@@ -3,4 +3,92 @@
#include "dolphin/types.h"
+class JASTrack;
+
+class JASSeqParser {
+public:
+ enum BranchCondition {};
+
+ struct CmdInfo {
+ s32 (JASSeqParser::*field_0x0)(JASTrack*, u32*);
+ u16 field_0xc;
+ u16 field_0xe;
+ };
+
+ /* 80293CAC */ virtual ~JASSeqParser() {}
+ /* 802958D4 */ virtual s32 parse(JASTrack*);
+ /* 80295540 */ virtual s32 execNoteOnMidi(JASTrack*, u32, u32, u32);
+ /* 80295498 */ virtual s32 execNoteOnGate(JASTrack*, u32, u32, u32, u32);
+ /* 80295570 */ virtual s32 execNoteOff(JASTrack*, u32);
+ /* 8029559C */ virtual s32 execCommand(JASTrack*, s32 (JASSeqParser::*)(JASTrack*, u32*), u32, u32*);
+
+ /* 80293CF4 */ bool conditionCheck(JASTrack*, JASSeqParser::BranchCondition);
+ /* 80293DC4 */ void writeReg(JASTrack*, u32, u32);
+ /* 80293FC8 */ u32 readReg(JASTrack*, u32) const;
+ /* 80294188 */ s32 cmdOpenTrack(JASTrack*, u32*);
+ /* 802941F0 */ s32 cmdCloseTrack(JASTrack*, u32*);
+ /* 8029421C */ s32 cmdCall(JASTrack*, u32*);
+ /* 80294248 */ s32 cmdCallF(JASTrack*, u32*);
+ /* 8029429C */ s32 cmdRet(JASTrack*, u32*);
+ /* 802942D4 */ s32 cmdRetF(JASTrack*, u32*);
+ /* 80294328 */ s32 cmdJmp(JASTrack*, u32*);
+ /* 80294340 */ s32 cmdJmpF(JASTrack*, u32*);
+ /* 80294398 */ s32 cmdJmpTable(JASTrack*, u32*);
+ /* 802943CC */ s32 cmdCallTable(JASTrack*, u32*);
+ /* 8029441C */ s32 cmdLoopS(JASTrack*, u32*);
+ /* 80294448 */ s32 cmdLoopE(JASTrack*, u32*);
+ /* 80294470 */ s32 cmdNote(JASTrack*, u32*);
+ /* 802944B4 */ s32 cmdNoteOn(JASTrack*, u32*);
+ /* 802944F4 */ s32 cmdNoteOff(JASTrack*, u32*);
+ /* 80294528 */ s32 cmdReadPort(JASTrack*, u32*);
+ /* 80294588 */ s32 cmdWritePort(JASTrack*, u32*);
+ /* 802945BC */ s32 cmdParentWritePort(JASTrack*, u32*);
+ /* 802945F8 */ s32 cmdChildWritePort(JASTrack*, u32*);
+ /* 80294644 */ s32 cmdParentReadPort(JASTrack*, u32*);
+ /* 802946AC */ s32 cmdChildReadPort(JASTrack*, u32*);
+ /* 80294724 */ s32 cmdCheckPortImport(JASTrack*, u32*);
+ /* 80294770 */ s32 cmdCheckPortExport(JASTrack*, u32*);
+ /* 802947BC */ s32 cmdWait(JASTrack*, u32*);
+ /* 802947F4 */ s32 cmdWaitByte(JASTrack*, u32*);
+ /* 80294804 */ s32 cmdSetLastNote(JASTrack*, u32*);
+ /* 8029483C */ s32 cmdEnvScaleSet(JASTrack*, u32*);
+ /* 8029488C */ s32 cmdEnvSet(JASTrack*, u32*);
+ /* 802948C8 */ s32 cmdSimpleADSR(JASTrack*, u32*);
+ /* 8029491C */ s32 cmdBusConnect(JASTrack*, u32*);
+ /* 8029494C */ s32 cmdSetIntTable(JASTrack*, u32*);
+ /* 8029495C */ s32 cmdSetInterrupt(JASTrack*, u32*);
+ /* 80294988 */ s32 cmdDisInterrupt(JASTrack*, u32*);
+ /* 802949B4 */ s32 cmdClrI(JASTrack*, u32*);
+ /* 802949E4 */ s32 cmdRetI(JASTrack*, u32*);
+ /* 80294A20 */ s32 cmdIntTimer(JASTrack*, u32*);
+ /* 80294A3C */ s32 cmdSyncCPU(JASTrack*, u32*);
+ /* 80294AA4 */ s32 cmdTempo(JASTrack*, u32*);
+ /* 80294AD4 */ s32 cmdFinish(JASTrack*, u32*);
+ /* 80294ADC */ s32 cmdNop(JASTrack*, u32*);
+ /* 80294AE4 */ s32 cmdFIRSet(JASTrack*, u32*);
+ /* 80294B1C */ s32 cmdIIRSet(JASTrack*, u32*);
+ /* 80294B70 */ s32 cmdIIRCutOff(JASTrack*, u32*);
+ /* 80294BB4 */ s32 cmdBankPrg(JASTrack*, u32*);
+ /* 80294BD0 */ s32 cmdBank(JASTrack*, u32*);
+ /* 80294BE4 */ s32 cmdPrg(JASTrack*, u32*);
+ /* 80294BF8 */ s32 cmdParamI(JASTrack*, u32*);
+ /* 80294C54 */ s32 cmdParamII(JASTrack*, u32*);
+ /* 80294CB0 */ s32 cmdParamE(JASTrack*, u32*);
+ /* 80294D2C */ s32 cmdParamEI(JASTrack*, u32*);
+ /* 80294DA8 */ s32 cmdReg(JASTrack*, u32*);
+ /* 80294F10 */ s32 cmdRegLoad(JASTrack*, u32*);
+ /* 80294F40 */ s32 cmdRegUni(JASTrack*, u32*);
+ /* 80294FB4 */ s32 cmdRegTblLoad(JASTrack*, u32*);
+ /* 80295088 */ s32 cmdDump(JASTrack*, u32*);
+ /* 8029526C */ s32 cmdPrintf(JASTrack*, u32*);
+ /* 802955C8 */ s32 parseNoteOff(JASTrack*, u8);
+ /* 80295600 */ s32 parseNoteOn(JASTrack*, u8);
+ /* 802956B0 */ s32 parseCommand(JASTrack*, u8, u16);
+ /* 80295864 */ s32 parseRegCommand(JASTrack*, int);
+
+ static CmdInfo sCmdInfo[96];
+ static CmdInfo sExtCmdInfo[255];
+ static u16 (*sCallBackFunc)(JASTrack*, u16);
+};
+
#endif /* JASSEQPARSER_H */
diff --git a/include/JSystem/JAudio2/JASSeqReader.h b/include/JSystem/JAudio2/JASSeqReader.h
index 89e44f1441..6745a63978 100644
--- a/include/JSystem/JAudio2/JASSeqReader.h
+++ b/include/JSystem/JAudio2/JASSeqReader.h
@@ -26,13 +26,24 @@ public:
}
u32* getBase() { return field_0x00; }
+ void* getAddr(u32 param_0) { return (u8*)field_0x00 + param_0; }
+ u8 getByte(u32 param_0) { return *((u8*)field_0x00 + param_0); }
+ u16 get16(u32 param_0) { return *(u16*)((u8*)field_0x00 + param_0); }
+ u32 get32(u32 param_0) { return *(u32*)((u8*)field_0x00 + param_0); }
u8* getCur() { return field_0x04; }
-
- u8 readByte() {
- u8* tmp = field_0x04;
- field_0x04 += 1;
+ u32 readByte() { return *field_0x04++; }
+ u32 read16() {
+ u16* tmp = (u16*)field_0x04;
+ field_0x04 += 2;
return *tmp;
}
+ u32 read24() {
+ field_0x04--;
+ u32* tmp = (u32*)field_0x04;
+ field_0x04 += 4;
+ return *tmp & 0x00ffffff;
+ }
+ u16 getLoopCount() const { return field_0x08 == 0 ? 0 : field_0x2c[field_0x08 - 1]; }
/* 0x00 */ u32* field_0x00;
/* 0x04 */ u8* field_0x04;
diff --git a/include/JSystem/JAudio2/JASTrack.h b/include/JSystem/JAudio2/JASTrack.h
index 3d62e1ccc9..bc8b332fa3 100644
--- a/include/JSystem/JAudio2/JASTrack.h
+++ b/include/JSystem/JAudio2/JASTrack.h
@@ -3,6 +3,9 @@
#include "JSystem/JAudio2/JASGadget.h"
#include "JSystem/JAudio2/JASOscillator.h"
+#include "JSystem/JAudio2/JASRegisterParam.h"
+#include "JSystem/JAudio2/JASSeqCtrl.h"
+#include "JSystem/JAudio2/JASTrackPort.h"
struct JASSoundParams;
@@ -73,13 +76,13 @@ struct JASTrack {
/* 80291AC8 */ void close();
/* 80291B8C */ void connectChild(u32, JASTrack*);
/* 80291BB8 */ void closeChild(u32);
- /* 80291C30 */ void openChild(u32);
+ /* 80291C30 */ JASTrack* openChild(u32);
/* 80291DAC */ void connectBus(int, int);
/* 80291DBC */ void setLatestKey(u8);
/* 80291DF8 */ void channelStart(JASTrack::TChannelMgr*, u32, u32, u32);
- /* 80291F38 */ void noteOn(u32, u32, u32);
- /* 80292008 */ void gateOn(u32, u32, f32, u32);
- /* 80292198 */ void noteOff(u32, u16);
+ /* 80291F38 */ int noteOn(u32, u32, u32);
+ /* 80292008 */ int gateOn(u32, u32, f32, u32);
+ /* 80292198 */ int noteOff(u32, u16);
/* 80292220 */ bool checkNoteStop(u32) const;
/* 8029226C */ void overwriteOsc(JASChannel*);
/* 802922D8 */ void updateTimedParam();
@@ -95,10 +98,10 @@ struct JASTrack {
/* 80292808 */ void setOscAdsr(s16, s16, s16, s16, u16);
/* 8029285C */ void setFIR(s16 const*);
/* 8029289C */ void setIIR(s16 const*);
- /* 802928D0 */ void readPortSelf(u32);
+ /* 802928D0 */ u16 readPortSelf(u32);
/* 802928F4 */ void writePortSelf(u32, u16);
/* 80292918 */ void writePort(u32, u16);
- /* 8029297C */ void readPort(u32);
+ /* 8029297C */ u16 readPort(u32);
/* 802929A0 */ void setChannelPauseFlag(bool);
/* 80292A3C */ void pause(bool);
/* 80292AA4 */ void getTransposeTotal() const;
@@ -118,33 +121,72 @@ struct JASTrack {
static u8 sDefaultBankTable[1036];
static u8 sTrackList[16];
+ JASSeqCtrl* getSeqCtrl() { return &mSeqCtrl; }
+ u16 getPort(u32 param_0) { return mTrackPort.get(param_0); }
+ void setPort(u32 param_0, u16 param_1) { mTrackPort.set(param_0, param_1); }
+ u32 checkPortIn(u32 param_0) { return mTrackPort.checkImport(param_0); }
+ u32 checkPort(u32 param_0) { return mTrackPort.checkExport(param_0); }
+ u32 readReg(JASRegisterParam::RegID param_0) { return mRegisterParam.read(param_0); }
+ void writeReg(JASRegisterParam::RegID param_0, u32 param_1) { mRegisterParam.write(param_0, param_1); }
+ JASTrack* getParent() { return mParent; }
+ JASTrack* getChild(u32 index) { return mChildren[index]; }
int getChannelMgrCount() { return channelMgrCount; }
+ f32 getVibDepth() const { return mVibDepth; }
+ void setVibDepth(f32 param_0) { mVibDepth = param_0; }
+ f32 getVibPitch() const { return mVibPitch; }
+ void setVibPitch(f32 param_0) { mVibPitch = param_0; }
+ f32 getTremDepth() const { return mTremDepth; }
+ void setTremDepth(f32 param_0) { mTremDepth = param_0; }
+ f32 getTremPitch() const { return mTremPitch; }
+ void setTremPitch(f32 param_0) { mTremPitch = param_0; }
+ u16 getVibDelay() const { return mVibDelay; }
+ void setVibDelay(u32 param_0) { mVibDelay = param_0; }
+ u16 getTremDelay() const { return mTremDelay; }
+ void setTremDelay(u32 param_0) { mTremDelay = param_0; }
u8 getStatus() const { return mStatus; }
- JASTrack* getChild(u32 index) { return field_0x130[index]; }
- inline void setAutoDelete(u8 param_0) {
- field_0x216.autoDelete = param_0;
- }
-
- /* 0x000 */ u8 field_0x0[0x5c]; // JASSeqCtrl
- /* 0x05C */ u8 field_0x5c[0x24]; // JASTrackPort
- /* 0x080 */ u8 field_0x80[0x1c]; // JASRegisterParam
+ void setAutoDelete(u8 param_0) { field_0x216.autoDelete = param_0; }
+ f32 getPanPower() const { return mPanPower; }
+ void setPanPower(f32 param_0) { mPanPower = param_0; }
+ u32 getSkipSample() const { return mSkipSample; }
+ void setSkipSample(u32 param_0) { mSkipSample = param_0; }
+ u16 getDirectRelease() const { return mDirectRelease; }
+ void setDirectRelease(u16 param_0) {mDirectRelease = param_0; }
+ u16 getTimebase() const { return mTimebase; }
+ s8 getTranspose() const { return mTranspose; }
+ void setTranspose(u32 param_0) { mTranspose = param_0; }
+ u16 getBankNumber() const { return mBankNumber; }
+ void setBankNumber(u16 param_0) { mBankNumber = param_0; }
+ u16 getProgNumber() const { return mProgNumber; }
+ void setProgNumber(u16 param_0) { mProgNumber = param_0; }
+ u8 getBendSense() const { return mBendSense; }
+ void setBendSense(u8 param_0) { mBendSense = param_0; }
+ u8 getNoteOnPrio() const { return mNoteOnPrio; }
+ void setNoteOnPrio(u8 param_0) { mNoteOnPrio = param_0; }
+ u8 getReleasePrio() const { return mReleasePrio; }
+ void setReleasePrio(u8 param_0) { mReleasePrio = param_0; }
+ u8 getGateRate() const { return mGateRate; }
+ void setGateRate(u8 param_0) { mGateRate = param_0; }
+
+ /* 0x000 */ JASSeqCtrl mSeqCtrl;
+ /* 0x05C */ JASTrackPort mTrackPort;
+ /* 0x080 */ JASRegisterParam mRegisterParam;
/* 0x09C */ MoveParam_ field_0x9c[6];
/* 0x0e4 */ u8 mOscParam[0x30]; // JASOscillator::Data[2]
/* 0x114 */ u8 field_0x114[0x18]; // JASOscillator::Point[4]
/* 0x12C */ JASTrack* mParent;
- /* 0x130 */ JASTrack* field_0x130[16];
+ /* 0x130 */ JASTrack* mChildren[16];
/* 0x170 */ TChannelMgr* field_0x170[4];
/* 0x180 */ TChannelMgr field_0x180;
/* 0x1D0 */ int channelMgrCount;
/* 0x1D4 */ void* field_0x1d4;
/* 0x1D8 */ f32 field_0x1d8;
/* 0x1DC */ f32 field_0x1dc;
- /* 0x1E0 */ f32 field_0x1e0;
- /* 0x1E4 */ f32 field_0x1e4;
- /* 0x1E8 */ f32 field_0x1e8;
- /* 0x1EC */ f32 field_0x1ec;
- /* 0x1F0 */ u16 field_0x1f0;
- /* 0x1F2 */ u16 field_0x1f2;
+ /* 0x1E0 */ f32 mVibDepth;
+ /* 0x1E4 */ f32 mVibPitch;
+ /* 0x1E8 */ f32 mTremDepth;
+ /* 0x1EC */ f32 mTremPitch;
+ /* 0x1F0 */ u16 mVibDelay;
+ /* 0x1F2 */ u16 mTremDelay;
/* 0x1F4 */ short field_0x1f4[8];
/* 0x204 */ short field_0x204[8];
/* 0x214 */ char field_0x214;
@@ -159,20 +201,20 @@ struct JASTrack {
u8 flag6 : 1;
u8 flag7 : 1;
} field_0x216;
- /* 0x218 */ f32 field_0x218;
+ /* 0x218 */ f32 mPanPower;
/* 0x21C */ f32 field_0x21c;
- /* 0x220 */ u32 field_0x220;
- /* 0x224 */ short field_0x224;
+ /* 0x220 */ u32 mSkipSample;
+ /* 0x224 */ u16 mDirectRelease;
/* 0x226 */ u16 field_0x226;
- /* 0x228 */ u16 field_0x228;
- /* 0x22A */ s8 field_0x22a;
+ /* 0x228 */ u16 mTimebase;
+ /* 0x22A */ s8 mTranspose;
/* 0x22B */ char field_0x22b;
- /* 0x22C */ short field_0x22c;
- /* 0x22E */ short field_0x22e;
- /* 0x230 */ char field_0x230;
- /* 0x231 */ char field_0x231;
- /* 0x232 */ char field_0x232;
- /* 0x233 */ char field_0x233;
+ /* 0x22C */ u16 mBankNumber;
+ /* 0x22E */ u16 mProgNumber;
+ /* 0x230 */ u8 mBendSense;
+ /* 0x231 */ u8 mNoteOnPrio;
+ /* 0x232 */ u8 mReleasePrio;
+ /* 0x233 */ u8 mGateRate;
/* 0x234 */ u16 field_0x234[6];
/* 0x240 */ u8 field_0x240[0x08]; // TLinkListNode
};
diff --git a/include/JSystem/JAudio2/JASTrackPort.h b/include/JSystem/JAudio2/JASTrackPort.h
index f04d3a5d61..6478838258 100644
--- a/include/JSystem/JAudio2/JASTrackPort.h
+++ b/include/JSystem/JAudio2/JASTrackPort.h
@@ -1,5 +1,24 @@
#ifndef JASTRACKPORT_H
#define JASTRACKPORT_H
+#include "dolphin/types.h"
+
+class JASTrackPort {
+public:
+ /* 8029354C */ void init();
+ /* 8029357C */ u16 readImport(u32);
+ /* 802935A0 */ u16 readExport(u32);
+ /* 802935C4 */ void writeImport(u32, u16);
+ /* 802935E8 */ void writeExport(u32, u16);
+ /* 8029360C */ u32 checkImport(u32) const;
+ /* 80293628 */ u32 checkExport(u32) const;
+
+ u16 get(u32 param_0) { return field_0x4[param_0]; }
+ void set(u32 param_0, u16 param_1) { field_0x4[param_0] = param_1; }
+
+ u16 field_0x0;
+ u16 field_0x2;
+ u16 field_0x4[16];
+};
#endif /* JASTRACKPORT_H */
diff --git a/include/JSystem/JSupport/JSupport.h b/include/JSystem/JSupport/JSupport.h
index 93e4077b26..0e46c55826 100644
--- a/include/JSystem/JSupport/JSupport.h
+++ b/include/JSystem/JSupport/JSupport.h
@@ -11,6 +11,9 @@ T* JSUConvertOffsetToPtr(const void* ptr, const void* offset) {
}
}
+inline u8 JSULoNibble(u8 param_0) { return param_0 & 0x0f; }
+inline u8 JSUHiNibble(u8 param_0) {return param_0 >> 4; }
+
inline u8 JSULoByte(u16 in) {
return in & 0xff;
}
@@ -19,4 +22,6 @@ inline u8 JSUHiByte(u16 in) {
return in >> 8;
}
+inline u16 JSULoHalf(u32 param_0) {return param_0; }
+
#endif
diff --git a/libs/JSystem/JAudio2/JASCalc.cpp b/libs/JSystem/JAudio2/JASCalc.cpp
index e47fb092dc..a1eb118308 100644
--- a/libs/JSystem/JAudio2/JASCalc.cpp
+++ b/libs/JSystem/JAudio2/JASCalc.cpp
@@ -153,71 +153,135 @@ void JASCalc::bzero(void *dest, u32 size) {
/* ############################################################################################## */
/* 8039ABB8-8039AFB8 027218 0400+00 0/0 4/4 0/0 .rodata CUTOFF_TO_IIR_TABLE__7JASCalc */
-SECTION_RODATA u8 const JASCalc::CUTOFF_TO_IIR_TABLE[1024] = {
- 0x0F, 0x5C, 0x0A, 0x3D, 0x46, 0x65, 0x1E, 0x73, 0x0F, 0x5E, 0x0A, 0x3D, 0x46, 0x64, 0x1E, 0x73,
- 0x0F, 0x63, 0x0A, 0x3C, 0x46, 0x61, 0x1E, 0x71, 0x0F, 0x6C, 0x0A, 0x3C, 0x46, 0x5B, 0x1E, 0x6F,
- 0x0F, 0x79, 0x0A, 0x3A, 0x46, 0x53, 0x1E, 0x6B, 0x0F, 0x89, 0x0A, 0x39, 0x46, 0x49, 0x1E, 0x67,
- 0x0F, 0x9C, 0x0A, 0x37, 0x46, 0x3D, 0x1E, 0x62, 0x0F, 0xB4, 0x0A, 0x35, 0x46, 0x2E, 0x1E, 0x5B,
- 0x0F, 0xCE, 0x0A, 0x33, 0x46, 0x1D, 0x1E, 0x54, 0x0F, 0xED, 0x0A, 0x30, 0x46, 0x0A, 0x1E, 0x4C,
- 0x10, 0x0F, 0x0A, 0x2D, 0x45, 0xF5, 0x1E, 0x43, 0x10, 0x34, 0x0A, 0x29, 0x45, 0xDE, 0x1E, 0x39,
- 0x10, 0x5D, 0x0A, 0x26, 0x45, 0xC4, 0x1E, 0x2D, 0x10, 0x8A, 0x0A, 0x22, 0x45, 0xA8, 0x1E, 0x21,
- 0x10, 0xBA, 0x0A, 0x1D, 0x45, 0x8A, 0x1E, 0x14, 0x10, 0xEE, 0x0A, 0x18, 0x45, 0x6A, 0x1E, 0x06,
- 0x11, 0x26, 0x0A, 0x13, 0x45, 0x47, 0x1D, 0xF7, 0x11, 0x61, 0x0A, 0x0E, 0x45, 0x22, 0x1D, 0xE7,
- 0x11, 0x9F, 0x0A, 0x08, 0x44, 0xFB, 0x1D, 0xD6, 0x11, 0xE1, 0x0A, 0x02, 0x44, 0xD2, 0x1D, 0xC5,
- 0x12, 0x27, 0x09, 0xFC, 0x44, 0xA6, 0x1D, 0xB2, 0x12, 0x70, 0x09, 0xF5, 0x44, 0x78, 0x1D, 0x9E,
- 0x12, 0xBD, 0x09, 0xEE, 0x44, 0x48, 0x1D, 0x89, 0x13, 0x0E, 0x09, 0xE7, 0x44, 0x16, 0x1D, 0x73,
- 0x13, 0x62, 0x09, 0xDF, 0x43, 0xE1, 0x1D, 0x5D, 0x13, 0xB9, 0x09, 0xD7, 0x43, 0xAB, 0x1D, 0x45,
- 0x14, 0x15, 0x09, 0xCF, 0x43, 0x72, 0x1D, 0x2C, 0x14, 0x73, 0x09, 0xC7, 0x43, 0x36, 0x1D, 0x13,
- 0x14, 0xD6, 0x09, 0xBE, 0x42, 0xF9, 0x1C, 0xF8, 0x15, 0x3C, 0x09, 0xB4, 0x42, 0xB9, 0x1C, 0xDD,
- 0x15, 0xA5, 0x09, 0xAB, 0x42, 0x77, 0x1C, 0xC0, 0x16, 0x12, 0x09, 0xA1, 0x42, 0x33, 0x1C, 0xA3,
- 0x16, 0x83, 0x09, 0x97, 0x41, 0xED, 0x1C, 0x84, 0x16, 0xF7, 0x09, 0x8C, 0x41, 0xA4, 0x1C, 0x65,
- 0x17, 0x6F, 0x09, 0x81, 0x41, 0x59, 0x1C, 0x44, 0x17, 0xEA, 0x09, 0x76, 0x41, 0x0C, 0x1C, 0x23,
- 0x18, 0x69, 0x09, 0x6A, 0x40, 0xBD, 0x1C, 0x01, 0x18, 0xEB, 0x09, 0x5F, 0x40, 0x6B, 0x1B, 0xDD,
- 0x19, 0x72, 0x09, 0x52, 0x40, 0x18, 0x1B, 0xB9, 0x19, 0xFB, 0x09, 0x46, 0x3F, 0xC2, 0x1B, 0x94,
- 0x1A, 0x88, 0x09, 0x39, 0x3F, 0x69, 0x1B, 0x6E, 0x1B, 0x19, 0x09, 0x2C, 0x3F, 0x0F, 0x1B, 0x47,
- 0x1B, 0xAE, 0x09, 0x1E, 0x3E, 0xB2, 0x1B, 0x1E, 0x1C, 0x46, 0x09, 0x11, 0x3E, 0x53, 0x1A, 0xF5,
- 0x1C, 0xE1, 0x09, 0x02, 0x3D, 0xF2, 0x1A, 0xCB, 0x1D, 0x80, 0x08, 0xF4, 0x3D, 0x8E, 0x1A, 0xA0,
- 0x1E, 0x23, 0x08, 0xE5, 0x3D, 0x29, 0x1A, 0x74, 0x1E, 0xC9, 0x08, 0xD6, 0x3C, 0xC1, 0x1A, 0x47,
- 0x1F, 0x73, 0x08, 0xC7, 0x3C, 0x57, 0x1A, 0x19, 0x20, 0x20, 0x08, 0xB7, 0x3B, 0xEA, 0x19, 0xEB,
- 0x20, 0xD1, 0x08, 0xA7, 0x3B, 0x7C, 0x19, 0xBB, 0x21, 0x86, 0x08, 0x96, 0x3B, 0x0B, 0x19, 0x8A,
- 0x22, 0x3E, 0x08, 0x86, 0x3A, 0x98, 0x19, 0x58, 0x22, 0xFA, 0x08, 0x75, 0x3A, 0x22, 0x19, 0x25,
- 0x23, 0xB9, 0x08, 0x63, 0x39, 0xAB, 0x18, 0xF2, 0x24, 0x7C, 0x08, 0x51, 0x39, 0x31, 0x18, 0xBD,
- 0x25, 0x42, 0x08, 0x3F, 0x38, 0xB5, 0x18, 0x87, 0x26, 0x0C, 0x08, 0x2D, 0x38, 0x37, 0x18, 0x51,
- 0x26, 0xDA, 0x08, 0x1A, 0x37, 0xB6, 0x18, 0x19, 0x27, 0xAB, 0x08, 0x07, 0x37, 0x34, 0x17, 0xE1,
- 0x28, 0x80, 0x07, 0xF4, 0x36, 0xAF, 0x17, 0xA7, 0x29, 0x58, 0x07, 0xE0, 0x36, 0x28, 0x17, 0x6D,
- 0x2A, 0x34, 0x07, 0xCC, 0x35, 0x9E, 0x17, 0x31, 0x2B, 0x14, 0x07, 0xB8, 0x35, 0x12, 0x16, 0xF5,
- 0x2B, 0xF7, 0x07, 0xA3, 0x34, 0x85, 0x16, 0xB7, 0x2C, 0xDD, 0x07, 0x8E, 0x33, 0xF4, 0x16, 0x79,
- 0x2D, 0xC8, 0x07, 0x79, 0x33, 0x62, 0x16, 0x3A, 0x2E, 0xB5, 0x07, 0x64, 0x32, 0xCD, 0x15, 0xFA,
- 0x2F, 0xA7, 0x07, 0x4E, 0x32, 0x37, 0x15, 0xB8, 0x30, 0x9C, 0x07, 0x37, 0x31, 0x9E, 0x15, 0x76,
- 0x31, 0x94, 0x07, 0x21, 0x31, 0x02, 0x15, 0x33, 0x32, 0x90, 0x07, 0x0A, 0x30, 0x65, 0x14, 0xEF,
- 0x33, 0x90, 0x06, 0xF3, 0x2F, 0xC5, 0x14, 0xAA, 0x34, 0x93, 0x06, 0xDB, 0x2F, 0x23, 0x14, 0x64,
- 0x35, 0x9A, 0x06, 0xC3, 0x2E, 0x7F, 0x14, 0x1C, 0x36, 0xA4, 0x06, 0xAB, 0x2D, 0xD8, 0x13, 0xD4,
- 0x37, 0xB2, 0x06, 0x92, 0x2D, 0x2F, 0x13, 0x8C, 0x38, 0xC4, 0x06, 0x7A, 0x2C, 0x85, 0x13, 0x42,
- 0x39, 0xD9, 0x06, 0x60, 0x2B, 0xD7, 0x12, 0xF7, 0x3A, 0xF1, 0x06, 0x47, 0x2B, 0x28, 0x12, 0xAB,
- 0x3C, 0x0E, 0x06, 0x2D, 0x2A, 0x76, 0x12, 0x5E, 0x3D, 0x2E, 0x06, 0x13, 0x29, 0xC2, 0x12, 0x10,
- 0x3E, 0x51, 0x05, 0xF8, 0x29, 0x0C, 0x11, 0xC1, 0x3F, 0x78, 0x05, 0xDE, 0x28, 0x54, 0x11, 0x72,
- 0x40, 0xA3, 0x05, 0xC2, 0x27, 0x99, 0x11, 0x21, 0x41, 0xD1, 0x05, 0xA7, 0x26, 0xDC, 0x10, 0xCF,
- 0x43, 0x02, 0x05, 0x8B, 0x26, 0x1D, 0x10, 0x7D, 0x44, 0x38, 0x05, 0x6F, 0x25, 0x5C, 0x10, 0x29,
- 0x45, 0x71, 0x05, 0x53, 0x24, 0x99, 0x0F, 0xD4, 0x46, 0xAD, 0x05, 0x36, 0x23, 0xD3, 0x0F, 0x7F,
- 0x47, 0xED, 0x05, 0x19, 0x23, 0x0B, 0x0F, 0x28, 0x49, 0x31, 0x04, 0xFB, 0x22, 0x41, 0x0E, 0xD1,
- 0x4A, 0x78, 0x04, 0xDE, 0x21, 0x74, 0x0E, 0x78, 0x4B, 0xC2, 0x04, 0xC0, 0x20, 0xA5, 0x0E, 0x1F,
- 0x4D, 0x11, 0x04, 0xA1, 0x1F, 0xD4, 0x0D, 0xC5, 0x4E, 0x63, 0x04, 0x82, 0x1F, 0x01, 0x0D, 0x69,
- 0x4F, 0xB8, 0x04, 0x63, 0x1E, 0x2C, 0x0D, 0x0D, 0x51, 0x11, 0x04, 0x44, 0x1D, 0x54, 0x0C, 0xB0,
- 0x52, 0x6E, 0x04, 0x24, 0x1C, 0x7A, 0x0C, 0x51, 0x53, 0xCE, 0x04, 0x04, 0x1B, 0x9E, 0x0B, 0xF2,
- 0x55, 0x32, 0x03, 0xE4, 0x1A, 0xC0, 0x0B, 0x92, 0x56, 0x99, 0x03, 0xC3, 0x19, 0xDF, 0x0B, 0x31,
- 0x58, 0x04, 0x03, 0xA2, 0x18, 0xFD, 0x0A, 0xCF, 0x59, 0x72, 0x03, 0x81, 0x18, 0x18, 0x0A, 0x6C,
- 0x5A, 0xE5, 0x03, 0x5F, 0x17, 0x30, 0x0A, 0x08, 0x5C, 0x5A, 0x03, 0x3D, 0x16, 0x47, 0x09, 0xA3,
- 0x5D, 0xD3, 0x03, 0x1B, 0x15, 0x5B, 0x09, 0x3D, 0x5F, 0x50, 0x02, 0xF9, 0x14, 0x6D, 0x08, 0xD6,
- 0x60, 0xD1, 0x02, 0xD6, 0x13, 0x7D, 0x08, 0x6E, 0x62, 0x55, 0x02, 0xB2, 0x12, 0x8A, 0x08, 0x05,
- 0x63, 0xDC, 0x02, 0x8F, 0x11, 0x96, 0x07, 0x9B, 0x65, 0x67, 0x02, 0x6B, 0x10, 0x9F, 0x07, 0x30,
- 0x66, 0xF6, 0x02, 0x47, 0x0F, 0xA6, 0x06, 0xC5, 0x68, 0x88, 0x02, 0x22, 0x0E, 0xAA, 0x06, 0x58,
- 0x6A, 0x1E, 0x01, 0xFD, 0x0D, 0xAD, 0x05, 0xEA, 0x6B, 0xB7, 0x01, 0xD8, 0x0C, 0xAD, 0x05, 0x7B,
- 0x6D, 0x54, 0x01, 0xB2, 0x0B, 0xAB, 0x05, 0x0C, 0x6E, 0xF5, 0x01, 0x8D, 0x0A, 0xA6, 0x04, 0x9B,
- 0x70, 0x99, 0x01, 0x66, 0x09, 0xA0, 0x04, 0x2A, 0x72, 0x41, 0x01, 0x40, 0x08, 0x97, 0x03, 0xB7,
- 0x73, 0xEC, 0x01, 0x19, 0x07, 0x8C, 0x03, 0x44, 0x75, 0x9B, 0x00, 0xF2, 0x06, 0x7F, 0x02, 0xCF,
- 0x77, 0x4D, 0x00, 0xCA, 0x05, 0x6F, 0x02, 0x5A, 0x79, 0x03, 0x00, 0xA3, 0x04, 0x5D, 0x01, 0xE3,
- 0x7A, 0xBD, 0x00, 0x7A, 0x03, 0x49, 0x01, 0x6C, 0x7C, 0x7A, 0x00, 0x52, 0x02, 0x33, 0x00, 0xF4,
- 0x7E, 0x3B, 0x00, 0x29, 0x01, 0x1B, 0x00, 0x7A, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+SECTION_RODATA s16 const JASCalc::CUTOFF_TO_IIR_TABLE[128][4] = {
+ 0x0F5C, 0x0A3D, 0x4665, 0x1E73,
+ 0x0F5E, 0x0A3D, 0x4664, 0x1E73,
+ 0x0F63, 0x0A3C, 0x4661, 0x1E71,
+ 0x0F6C, 0x0A3C, 0x465B, 0x1E6F,
+ 0x0F79, 0x0A3A, 0x4653, 0x1E6B,
+ 0x0F89, 0x0A39, 0x4649, 0x1E67,
+ 0x0F9C, 0x0A37, 0x463D, 0x1E62,
+ 0x0FB4, 0x0A35, 0x462E, 0x1E5B,
+ 0x0FCE, 0x0A33, 0x461D, 0x1E54,
+ 0x0FED, 0x0A30, 0x460A, 0x1E4C,
+ 0x100F, 0x0A2D, 0x45F5, 0x1E43,
+ 0x1034, 0x0A29, 0x45DE, 0x1E39,
+ 0x105D, 0x0A26, 0x45C4, 0x1E2D,
+ 0x108A, 0x0A22, 0x45A8, 0x1E21,
+ 0x10BA, 0x0A1D, 0x458A, 0x1E14,
+ 0x10EE, 0x0A18, 0x456A, 0x1E06,
+ 0x1126, 0x0A13, 0x4547, 0x1DF7,
+ 0x1161, 0x0A0E, 0x4522, 0x1DE7,
+ 0x119F, 0x0A08, 0x44FB, 0x1DD6,
+ 0x11E1, 0x0A02, 0x44D2, 0x1DC5,
+ 0x1227, 0x09FC, 0x44A6, 0x1DB2,
+ 0x1270, 0x09F5, 0x4478, 0x1D9E,
+ 0x12BD, 0x09EE, 0x4448, 0x1D89,
+ 0x130E, 0x09E7, 0x4416, 0x1D73,
+ 0x1362, 0x09DF, 0x43E1, 0x1D5D,
+ 0x13B9, 0x09D7, 0x43AB, 0x1D45,
+ 0x1415, 0x09CF, 0x4372, 0x1D2C,
+ 0x1473, 0x09C7, 0x4336, 0x1D13,
+ 0x14D6, 0x09BE, 0x42F9, 0x1CF8,
+ 0x153C, 0x09B4, 0x42B9, 0x1CDD,
+ 0x15A5, 0x09AB, 0x4277, 0x1CC0,
+ 0x1612, 0x09A1, 0x4233, 0x1CA3,
+ 0x1683, 0x0997, 0x41ED, 0x1C84,
+ 0x16F7, 0x098C, 0x41A4, 0x1C65,
+ 0x176F, 0x0981, 0x4159, 0x1C44,
+ 0x17EA, 0x0976, 0x410C, 0x1C23,
+ 0x1869, 0x096A, 0x40BD, 0x1C01,
+ 0x18EB, 0x095F, 0x406B, 0x1BDD,
+ 0x1972, 0x0952, 0x4018, 0x1BB9,
+ 0x19FB, 0x0946, 0x3FC2, 0x1B94,
+ 0x1A88, 0x0939, 0x3F69, 0x1B6E,
+ 0x1B19, 0x092C, 0x3F0F, 0x1B47,
+ 0x1BAE, 0x091E, 0x3EB2, 0x1B1E,
+ 0x1C46, 0x0911, 0x3E53, 0x1AF5,
+ 0x1CE1, 0x0902, 0x3DF2, 0x1ACB,
+ 0x1D80, 0x08F4, 0x3D8E, 0x1AA0,
+ 0x1E23, 0x08E5, 0x3D29, 0x1A74,
+ 0x1EC9, 0x08D6, 0x3CC1, 0x1A47,
+ 0x1F73, 0x08C7, 0x3C57, 0x1A19,
+ 0x2020, 0x08B7, 0x3BEA, 0x19EB,
+ 0x20D1, 0x08A7, 0x3B7C, 0x19BB,
+ 0x2186, 0x0896, 0x3B0B, 0x198A,
+ 0x223E, 0x0886, 0x3A98, 0x1958,
+ 0x22FA, 0x0875, 0x3A22, 0x1925,
+ 0x23B9, 0x0863, 0x39AB, 0x18F2,
+ 0x247C, 0x0851, 0x3931, 0x18BD,
+ 0x2542, 0x083F, 0x38B5, 0x1887,
+ 0x260C, 0x082D, 0x3837, 0x1851,
+ 0x26DA, 0x081A, 0x37B6, 0x1819,
+ 0x27AB, 0x0807, 0x3734, 0x17E1,
+ 0x2880, 0x07F4, 0x36AF, 0x17A7,
+ 0x2958, 0x07E0, 0x3628, 0x176D,
+ 0x2A34, 0x07CC, 0x359E, 0x1731,
+ 0x2B14, 0x07B8, 0x3512, 0x16F5,
+ 0x2BF7, 0x07A3, 0x3485, 0x16B7,
+ 0x2CDD, 0x078E, 0x33F4, 0x1679,
+ 0x2DC8, 0x0779, 0x3362, 0x163A,
+ 0x2EB5, 0x0764, 0x32CD, 0x15FA,
+ 0x2FA7, 0x074E, 0x3237, 0x15B8,
+ 0x309C, 0x0737, 0x319E, 0x1576,
+ 0x3194, 0x0721, 0x3102, 0x1533,
+ 0x3290, 0x070A, 0x3065, 0x14EF,
+ 0x3390, 0x06F3, 0x2FC5, 0x14AA,
+ 0x3493, 0x06DB, 0x2F23, 0x1464,
+ 0x359A, 0x06C3, 0x2E7F, 0x141C,
+ 0x36A4, 0x06AB, 0x2DD8, 0x13D4,
+ 0x37B2, 0x0692, 0x2D2F, 0x138C,
+ 0x38C4, 0x067A, 0x2C85, 0x1342,
+ 0x39D9, 0x0660, 0x2BD7, 0x12F7,
+ 0x3AF1, 0x0647, 0x2B28, 0x12AB,
+ 0x3C0E, 0x062D, 0x2A76, 0x125E,
+ 0x3D2E, 0x0613, 0x29C2, 0x1210,
+ 0x3E51, 0x05F8, 0x290C, 0x11C1,
+ 0x3F78, 0x05DE, 0x2854, 0x1172,
+ 0x40A3, 0x05C2, 0x2799, 0x1121,
+ 0x41D1, 0x05A7, 0x26DC, 0x10CF,
+ 0x4302, 0x058B, 0x261D, 0x107D,
+ 0x4438, 0x056F, 0x255C, 0x1029,
+ 0x4571, 0x0553, 0x2499, 0x0FD4,
+ 0x46AD, 0x0536, 0x23D3, 0x0F7F,
+ 0x47ED, 0x0519, 0x230B, 0x0F28,
+ 0x4931, 0x04FB, 0x2241, 0x0ED1,
+ 0x4A78, 0x04DE, 0x2174, 0x0E78,
+ 0x4BC2, 0x04C0, 0x20A5, 0x0E1F,
+ 0x4D11, 0x04A1, 0x1FD4, 0x0DC5,
+ 0x4E63, 0x0482, 0x1F01, 0x0D69,
+ 0x4FB8, 0x0463, 0x1E2C, 0x0D0D,
+ 0x5111, 0x0444, 0x1D54, 0x0CB0,
+ 0x526E, 0x0424, 0x1C7A, 0x0C51,
+ 0x53CE, 0x0404, 0x1B9E, 0x0BF2,
+ 0x5532, 0x03E4, 0x1AC0, 0x0B92,
+ 0x5699, 0x03C3, 0x19DF, 0x0B31,
+ 0x5804, 0x03A2, 0x18FD, 0x0ACF,
+ 0x5972, 0x0381, 0x1818, 0x0A6C,
+ 0x5AE5, 0x035F, 0x1730, 0x0A08,
+ 0x5C5A, 0x033D, 0x1647, 0x09A3,
+ 0x5DD3, 0x031B, 0x155B, 0x093D,
+ 0x5F50, 0x02F9, 0x146D, 0x08D6,
+ 0x60D1, 0x02D6, 0x137D, 0x086E,
+ 0x6255, 0x02B2, 0x128A, 0x0805,
+ 0x63DC, 0x028F, 0x1196, 0x079B,
+ 0x6567, 0x026B, 0x109F, 0x0730,
+ 0x66F6, 0x0247, 0x0FA6, 0x06C5,
+ 0x6888, 0x0222, 0x0EAA, 0x0658,
+ 0x6A1E, 0x01FD, 0x0DAD, 0x05EA,
+ 0x6BB7, 0x01D8, 0x0CAD, 0x057B,
+ 0x6D54, 0x01B2, 0x0BAB, 0x050C,
+ 0x6EF5, 0x018D, 0x0AA6, 0x049B,
+ 0x7099, 0x0166, 0x09A0, 0x042A,
+ 0x7241, 0x0140, 0x0897, 0x03B7,
+ 0x73EC, 0x0119, 0x078C, 0x0344,
+ 0x759B, 0x00F2, 0x067F, 0x02CF,
+ 0x774D, 0x00CA, 0x056F, 0x025A,
+ 0x7903, 0x00A3, 0x045D, 0x01E3,
+ 0x7ABD, 0x007A, 0x0349, 0x016C,
+ 0x7C7A, 0x0052, 0x0233, 0x00F4,
+ 0x7E3B, 0x0029, 0x011B, 0x007A,
+ 0x7FFF, 0x0000, 0x0000, 0x0000,
};
COMPILER_STRIP_GATE(0x8039ABB8, &JASCalc::CUTOFF_TO_IIR_TABLE);
diff --git a/libs/JSystem/JAudio2/JASSeqCtrl.cpp b/libs/JSystem/JAudio2/JASSeqCtrl.cpp
index 76ce2bab09..3bfbf12d2c 100644
--- a/libs/JSystem/JAudio2/JASSeqCtrl.cpp
+++ b/libs/JSystem/JAudio2/JASSeqCtrl.cpp
@@ -4,81 +4,9 @@
//
#include "JSystem/JAudio2/JASSeqCtrl.h"
-#include "JSystem/JAudio2/JASSeqReader.h"
+#include "JSystem/JAudio2/JASSeqParser.h"
#include "JSystem/JAudio2/JASTrack.h"
-//
-// Types:
-//
-
-// TODO: Use JASSeqParser.hh when possible
-struct JASSeqParser {
- /* 80293CAC */ inline virtual ~JASSeqParser() {}
- /* 802958D4 */ virtual int parse(JASTrack*);
- /* 80295540 */ virtual void execNoteOnMidi(JASTrack*, u32, u32, u32);
- /* 80295498 */ virtual void execNoteOnGate(JASTrack*, u32, u32, u32, u32);
- /* 80295570 */ virtual void execNoteOff(JASTrack*, u32);
- /* 8029559C */ virtual void execCommand(JASTrack*, s32 (JASSeqParser::*)(JASTrack*, u32*), u32, u32*);
-
- static u8 sCmdInfo[1536];
- static u8 sExtCmdInfo[4080];
- static u8 sCallBackFunc[4];
-};
-
-struct JASSeqCtrl {
- enum IntrType {
- INTRTYPE_VALUE_0,
- INTRTYPE_VALUE_1,
- INTRTYPE_VALUE_2,
- INTRTYPE_VALUE_3,
- INTRTYPE_VALUE_4,
- INTRTYPE_VALUE_5,
- INTRTYPE_VALUE_6,
- };
-
- /* 802938BC */ JASSeqCtrl();
- /* 80293924 */ void init();
- /* 80293980 */ void start(void*, u32);
- /* 802939C4 */ int tickProc(JASTrack*);
- /* 80293ABC */ void interrupt(JASSeqCtrl::IntrType);
- /* 80293AE0 */ void setIntrMask(u32);
- /* 80293AF0 */ void clrIntrMask(u32);
- /* 80293B00 */ int retIntr();
- /* 80293B28 */ int findIntr();
- /* 80293B78 */ void checkIntr();
- /* 80293BE8 */ void timerProcess();
-
- u32 get24(int param_0) {
- return mReader.get24(param_0);
- }
-
- /* 0x00 */ JASSeqReader mReader;
- /* 0x3c */ JASSeqParser* field_0x3c;
- /* 0x40 */ s32 field_0x40;
- /* 0x44 */ void* field_0x44;
- /* 0x48 */ u32 field_0x48;
- /* 0x4c */ u16 field_0x4c;
- /* 0x4e */ u16 field_0x4e;
- /* 0x50 */ u8 field_0x50;
- /* 0x51 */ u8 field_0x51;
- /* 0x52 */ u16 field_0x52;
- /* 0x54 */ u32 field_0x54;
- /* 0x58 */ u32 field_0x58;
- static JASSeqParser sDefaultParser;
-};
-
-//
-// Forward References:
-//
-
-//
-// External References:
-//
-
-//
-// Declarations:
-//
-
/* ############################################################################################## */
/* 80451238-80451240 000738 0004+04 3/3 0/0 0/0 .sbss sDefaultParser__10JASSeqCtrl */
JASSeqParser JASSeqCtrl::sDefaultParser;
diff --git a/libs/JSystem/JAudio2/JASSeqParser.cpp b/libs/JSystem/JAudio2/JASSeqParser.cpp
index 79d0fb03cf..52b113fcf2 100644
--- a/libs/JSystem/JAudio2/JASSeqParser.cpp
+++ b/libs/JSystem/JAudio2/JASSeqParser.cpp
@@ -4,150 +4,16 @@
//
#include "JSystem/JAudio2/JASSeqParser.h"
+#include "JSystem/JAudio2/JASCalc.h"
+#include "JSystem/JAudio2/JASReport.h"
+#include "JSystem/JAudio2/JASSeqCtrl.h"
+#include "JSystem/JAudio2/JASTrack.h"
+#include "JSystem/JAudio2/JASTrackPort.h"
+#include "JSystem/JMath/random.h"
+#include "JSystem/JSupport/JSupport.h"
#include "dol2asm.h"
//
-// Types:
-//
-
-struct JASTrackPort {
- /* 8029360C */ void checkImport(u32) const;
- /* 80293628 */ void checkExport(u32) const;
-};
-
-struct JASOscillator {
- struct Point {};
-};
-
-struct JASTrack {
- /* 80291A08 */ void setSeqData(void*, u32);
- /* 80291ABC */ void start();
- /* 80291BB8 */ void closeChild(u32);
- /* 80291C30 */ void openChild(u32);
- /* 80291DAC */ void connectBus(int, int);
- /* 80291DBC */ void setLatestKey(u8);
- /* 80291F38 */ void noteOn(u32, u32, u32);
- /* 80292008 */ void gateOn(u32, u32, f32, u32);
- /* 80292198 */ void noteOff(u32, u16);
- /* 802926E0 */ void setParam(u32, f32, u32);
- /* 802927D8 */ void setOscScale(u32, f32);
- /* 802927E8 */ void setOscTable(u32, JASOscillator::Point const*);
- /* 80292808 */ void setOscAdsr(s16, s16, s16, s16, u16);
- /* 8029285C */ void setFIR(s16 const*);
- /* 8029289C */ void setIIR(s16 const*);
- /* 802928D0 */ void readPortSelf(u32);
- /* 802928F4 */ void writePortSelf(u32, u16);
- /* 80292918 */ void writePort(u32, u16);
- /* 8029297C */ void readPort(u32);
- /* 80292B58 */ void setTempo(u16);
- /* 80292BC0 */ void setTimebase(u16);
-};
-
-struct JASSeqReader {
- /* 8029618C */ void call(u32);
- /* 802961CC */ void loopStart(u32);
- /* 80296210 */ void loopEnd();
- /* 8029627C */ void ret();
- /* 802962B0 */ void readMidiValue();
-};
-
-struct JASSeqParser {
- struct BranchCondition {};
-
- /* 80293CAC */ ~JASSeqParser();
- /* 80293CF4 */ void conditionCheck(JASTrack*, JASSeqParser::BranchCondition);
- /* 80293DC4 */ void writeReg(JASTrack*, u32, u32);
- /* 80293FC8 */ void readReg(JASTrack*, u32) const;
- /* 80294188 */ void cmdOpenTrack(JASTrack*, u32*);
- /* 802941F0 */ void cmdCloseTrack(JASTrack*, u32*);
- /* 8029421C */ void cmdCall(JASTrack*, u32*);
- /* 80294248 */ void cmdCallF(JASTrack*, u32*);
- /* 8029429C */ void cmdRet(JASTrack*, u32*);
- /* 802942D4 */ void cmdRetF(JASTrack*, u32*);
- /* 80294328 */ void cmdJmp(JASTrack*, u32*);
- /* 80294340 */ void cmdJmpF(JASTrack*, u32*);
- /* 80294398 */ void cmdJmpTable(JASTrack*, u32*);
- /* 802943CC */ void cmdCallTable(JASTrack*, u32*);
- /* 8029441C */ void cmdLoopS(JASTrack*, u32*);
- /* 80294448 */ void cmdLoopE(JASTrack*, u32*);
- /* 80294470 */ void cmdNote(JASTrack*, u32*);
- /* 802944B4 */ void cmdNoteOn(JASTrack*, u32*);
- /* 802944F4 */ void cmdNoteOff(JASTrack*, u32*);
- /* 80294528 */ void cmdReadPort(JASTrack*, u32*);
- /* 80294588 */ void cmdWritePort(JASTrack*, u32*);
- /* 802945BC */ void cmdParentWritePort(JASTrack*, u32*);
- /* 802945F8 */ void cmdChildWritePort(JASTrack*, u32*);
- /* 80294644 */ void cmdParentReadPort(JASTrack*, u32*);
- /* 802946AC */ void cmdChildReadPort(JASTrack*, u32*);
- /* 80294724 */ void cmdCheckPortImport(JASTrack*, u32*);
- /* 80294770 */ void cmdCheckPortExport(JASTrack*, u32*);
- /* 802947BC */ void cmdWait(JASTrack*, u32*);
- /* 802947F4 */ void cmdWaitByte(JASTrack*, u32*);
- /* 80294804 */ void cmdSetLastNote(JASTrack*, u32*);
- /* 8029483C */ void cmdEnvScaleSet(JASTrack*, u32*);
- /* 8029488C */ void cmdEnvSet(JASTrack*, u32*);
- /* 802948C8 */ void cmdSimpleADSR(JASTrack*, u32*);
- /* 8029491C */ void cmdBusConnect(JASTrack*, u32*);
- /* 8029494C */ void cmdSetIntTable(JASTrack*, u32*);
- /* 8029495C */ void cmdSetInterrupt(JASTrack*, u32*);
- /* 80294988 */ void cmdDisInterrupt(JASTrack*, u32*);
- /* 802949B4 */ void cmdClrI(JASTrack*, u32*);
- /* 802949E4 */ void cmdRetI(JASTrack*, u32*);
- /* 80294A20 */ void cmdIntTimer(JASTrack*, u32*);
- /* 80294A3C */ void cmdSyncCPU(JASTrack*, u32*);
- /* 80294AA4 */ void cmdTempo(JASTrack*, u32*);
- /* 80294AD4 */ s32 cmdFinish(JASTrack*, u32*);
- /* 80294ADC */ bool cmdNop(JASTrack*, u32*);
- /* 80294AE4 */ void cmdFIRSet(JASTrack*, u32*);
- /* 80294B1C */ void cmdIIRSet(JASTrack*, u32*);
- /* 80294B70 */ void cmdIIRCutOff(JASTrack*, u32*);
- /* 80294BB4 */ void cmdBankPrg(JASTrack*, u32*);
- /* 80294BD0 */ void cmdBank(JASTrack*, u32*);
- /* 80294BE4 */ void cmdPrg(JASTrack*, u32*);
- /* 80294BF8 */ void cmdParamI(JASTrack*, u32*);
- /* 80294C54 */ void cmdParamII(JASTrack*, u32*);
- /* 80294CB0 */ void cmdParamE(JASTrack*, u32*);
- /* 80294D2C */ void cmdParamEI(JASTrack*, u32*);
- /* 80294DA8 */ void cmdReg(JASTrack*, u32*);
- /* 80294F10 */ void cmdRegLoad(JASTrack*, u32*);
- /* 80294F40 */ void cmdRegUni(JASTrack*, u32*);
- /* 80294FB4 */ void cmdRegTblLoad(JASTrack*, u32*);
- /* 80295088 */ void cmdDump(JASTrack*, u32*);
- /* 8029526C */ void cmdPrintf(JASTrack*, u32*);
- /* 80295498 */ void execNoteOnGate(JASTrack*, u32, u32, u32, u32);
- /* 80295540 */ void execNoteOnMidi(JASTrack*, u32, u32, u32);
- /* 80295570 */ void execNoteOff(JASTrack*, u32);
- /* 8029559C */ void execCommand(JASTrack*, s32 (JASSeqParser::*)(JASTrack*, u32*), u32, u32*);
- /* 802955C8 */ void parseNoteOff(JASTrack*, u8);
- /* 80295600 */ void parseNoteOn(JASTrack*, u8);
- /* 802956B0 */ void parseCommand(JASTrack*, u8, u16);
- /* 80295864 */ void parseRegCommand(JASTrack*, int);
- /* 802958D4 */ void parse(JASTrack*);
-
- static u8 sCmdInfo[1536];
- static u8 sExtCmdInfo[4080];
- static u8 sCallBackFunc[4];
-};
-
-struct JASSeqCtrl {
- /* 80293AE0 */ void setIntrMask(u32);
- /* 80293AF0 */ void clrIntrMask(u32);
- /* 80293B00 */ void retIntr();
- /* 80293B78 */ void checkIntr();
-};
-
-struct JASRegisterParam {
- struct RegID {};
-
- /* 80293684 */ void write(JASRegisterParam::RegID, u32);
- /* 802937B8 */ void read(JASRegisterParam::RegID);
-};
-
-struct JASCalc {
- static u8 const CUTOFF_TO_IIR_TABLE[1024];
-};
-
-//
// Forward References:
//
@@ -287,940 +153,147 @@ extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */];
/* 80293CF4-80293DC4 28E634 00D0+00 3/3 0/0 0/0 .text
* conditionCheck__12JASSeqParserFP8JASTrackQ212JASSeqParser15BranchCondition */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::conditionCheck(JASTrack* param_0, JASSeqParser::BranchCondition param_1) {
+// regswap
+#ifdef NONMATCHING
+bool JASSeqParser::conditionCheck(JASTrack* param_0, JASSeqParser::BranchCondition param_1) {
+ u16 reg = readReg(param_0, 3);
+ switch (param_1) {
+ case 0:
+ return 1;
+ case 1:
+ return reg == 0;
+ case 2:
+ return reg != 0;
+ case 3:
+ return reg == 1;
+ case 4:
+ return reg <= 0x8000;
+ case 5:
+ return reg > 0x8000;
+ default:
+ return 0;
+ }
+}
+#else
+#pragma push
+#pragma optimization_level 0
+#pragma optimizewithasm off
+asm bool JASSeqParser::conditionCheck(JASTrack* param_0, JASSeqParser::BranchCondition param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/conditionCheck__12JASSeqParserFP8JASTrackQ212JASSeqParser15BranchCondition.s"
}
#pragma pop
-
-/* ############################################################################################## */
-/* 803C5BE0-803C5BEC -00001 000C+00 1/1 0/0 0/0 .data @486 */
-SECTION_DATA static void* lit_486[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdNoteOn__12JASSeqParserFP8JASTrackPUl,
-};
-
-/* 803C5BEC-803C5BF8 -00001 000C+00 0/1 0/0 0/0 .data @487 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_487[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdNoteOff__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5BF8-803C5C04 -00001 000C+00 0/1 0/0 0/0 .data @488 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_488[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdNote__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C04-803C5C10 -00001 000C+00 0/1 0/0 0/0 .data @489 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_489[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdSetLastNote__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C10-803C5C1C -00001 000C+00 0/1 0/0 0/0 .data @490 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_490[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdParamE__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C1C-803C5C28 -00001 000C+00 0/1 0/0 0/0 .data @491 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_491[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdParamI__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C28-803C5C34 -00001 000C+00 0/1 0/0 0/0 .data @492 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_492[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdParamEI__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C34-803C5C40 -00001 000C+00 0/1 0/0 0/0 .data @493 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_493[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdParamII__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C40-803C5C4C -00001 000C+00 0/1 0/0 0/0 .data @494 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_494[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdOpenTrack__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C4C-803C5C58 -00001 000C+00 0/1 0/0 0/0 .data @495 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_495[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdCloseTrack__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C58-803C5C64 -00001 000C+00 0/1 0/0 0/0 .data @496 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_496[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdCall__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C64-803C5C70 -00001 000C+00 0/1 0/0 0/0 .data @497 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_497[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdCallF__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C70-803C5C7C -00001 000C+00 0/1 0/0 0/0 .data @498 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_498[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdRet__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C7C-803C5C88 -00001 000C+00 0/1 0/0 0/0 .data @499 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_499[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdRetF__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C88-803C5C94 -00001 000C+00 0/1 0/0 0/0 .data @500 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_500[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdJmp__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5C94-803C5CA0 -00001 000C+00 0/1 0/0 0/0 .data @501 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_501[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdJmpF__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5CA0-803C5CAC -00001 000C+00 0/1 0/0 0/0 .data @502 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_502[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdJmpTable__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5CAC-803C5CB8 -00001 000C+00 0/1 0/0 0/0 .data @503 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_503[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdCallTable__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5CB8-803C5CC4 -00001 000C+00 0/1 0/0 0/0 .data @504 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_504[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdLoopS__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5CC4-803C5CD0 -00001 000C+00 0/1 0/0 0/0 .data @505 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_505[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdLoopE__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5CD0-803C5CDC -00001 000C+00 0/1 0/0 0/0 .data @506 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_506[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdReadPort__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5CDC-803C5CE8 -00001 000C+00 0/1 0/0 0/0 .data @507 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_507[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdWritePort__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5CE8-803C5CF4 -00001 000C+00 0/1 0/0 0/0 .data @508 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_508[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdCheckPortImport__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5CF4-803C5D00 -00001 000C+00 0/1 0/0 0/0 .data @509 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_509[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdCheckPortExport__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D00-803C5D0C -00001 000C+00 0/1 0/0 0/0 .data @510 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_510[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdParentWritePort__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D0C-803C5D18 -00001 000C+00 0/1 0/0 0/0 .data @511 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_511[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdChildWritePort__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D18-803C5D24 -00001 000C+00 0/1 0/0 0/0 .data @512 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_512[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdParentReadPort__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D24-803C5D30 -00001 000C+00 0/1 0/0 0/0 .data @513 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_513[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdChildReadPort__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D30-803C5D3C -00001 000C+00 0/1 0/0 0/0 .data @514 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_514[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdRegLoad__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D3C-803C5D48 -00001 000C+00 0/1 0/0 0/0 .data @515 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_515[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdReg__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D48-803C5D54 -00001 000C+00 0/1 0/0 0/0 .data @516 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_516[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdReg__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D54-803C5D60 -00001 000C+00 0/1 0/0 0/0 .data @517 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_517[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdRegUni__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D60-803C5D6C -00001 000C+00 0/1 0/0 0/0 .data @518 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_518[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdRegTblLoad__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D6C-803C5D78 -00001 000C+00 0/1 0/0 0/0 .data @519 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_519[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdTempo__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D78-803C5D84 -00001 000C+00 0/1 0/0 0/0 .data @520 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_520[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdBankPrg__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D84-803C5D90 -00001 000C+00 0/1 0/0 0/0 .data @521 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_521[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdBank__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D90-803C5D9C -00001 000C+00 0/1 0/0 0/0 .data @522 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_522[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdPrg__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5D9C-803C5DA8 -00001 000C+00 0/1 0/0 0/0 .data @523 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_523[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdEnvScaleSet__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5DA8-803C5DB4 -00001 000C+00 0/1 0/0 0/0 .data @524 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_524[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdEnvSet__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5DB4-803C5DC0 -00001 000C+00 0/1 0/0 0/0 .data @525 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_525[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdSimpleADSR__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5DC0-803C5DCC -00001 000C+00 0/1 0/0 0/0 .data @526 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_526[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdBusConnect__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5DCC-803C5DD8 -00001 000C+00 0/1 0/0 0/0 .data @527 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_527[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdIIRCutOff__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5DD8-803C5DE4 -00001 000C+00 0/1 0/0 0/0 .data @528 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_528[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdIIRSet__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5DE4-803C5DF0 -00001 000C+00 0/1 0/0 0/0 .data @529 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_529[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdFIRSet__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5DF0-803C5DFC -00001 000C+00 0/1 0/0 0/0 .data @530 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_530[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdWait__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5DFC-803C5E08 -00001 000C+00 0/1 0/0 0/0 .data @531 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_531[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdWaitByte__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E08-803C5E14 -00001 000C+00 0/1 0/0 0/0 .data @532 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_532[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdSetIntTable__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E14-803C5E20 -00001 000C+00 0/1 0/0 0/0 .data @533 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_533[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdSetInterrupt__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E20-803C5E2C -00001 000C+00 0/1 0/0 0/0 .data @534 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_534[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdDisInterrupt__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E2C-803C5E38 -00001 000C+00 0/1 0/0 0/0 .data @535 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_535[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdRetI__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E38-803C5E44 -00001 000C+00 0/1 0/0 0/0 .data @536 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_536[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdClrI__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E44-803C5E50 -00001 000C+00 0/1 0/0 0/0 .data @537 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_537[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdIntTimer__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E50-803C5E5C -00001 000C+00 0/1 0/0 0/0 .data @538 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_538[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdSyncCPU__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E5C-803C5E68 -00001 000C+00 0/1 0/0 0/0 .data @539 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_539[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdPrintf__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E68-803C5E74 -00001 000C+00 0/1 0/0 0/0 .data @540 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_540[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdNop__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
-/* 803C5E74-803C5E80 -00001 000C+00 0/1 0/0 0/0 .data @541 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_541[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdFinish__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
+#endif
/* 803C5E80-803C6480 022FA0 0600+00 1/2 0/0 0/0 .data sCmdInfo__12JASSeqParser */
-SECTION_DATA u8 JASSeqParser::sCmdInfo[1536] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x40,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x10,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x14,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x0B,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x0B,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x0C,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x0C,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x0C,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x30,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x10,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0xE0,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x01, 0x55,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x55,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+SECTION_DATA JASSeqParser::CmdInfo JASSeqParser::sCmdInfo[96] = {
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdNoteOn, 0x0003, 0x0000,
+ &JASSeqParser::cmdNoteOff, 0x0001, 0x0000,
+ &JASSeqParser::cmdNote, 0x0004, 0x0040,
+ &JASSeqParser::cmdSetLastNote, 0x0001, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdParamE, 0x0002, 0x0000,
+ &JASSeqParser::cmdParamI, 0x0002, 0x0004,
+ &JASSeqParser::cmdParamEI, 0x0003, 0x0010,
+ &JASSeqParser::cmdParamII, 0x0003, 0x0014,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdOpenTrack, 0x0002, 0x0008,
+ &JASSeqParser::cmdCloseTrack, 0x0001, 0x0000,
+ &JASSeqParser::cmdCall, 0x0001, 0x0002,
+ &JASSeqParser::cmdCallF, 0x0002, 0x0008,
+ &JASSeqParser::cmdRet, 0x0000, 0x0000,
+ &JASSeqParser::cmdRetF, 0x0001, 0x0000,
+ &JASSeqParser::cmdJmp, 0x0001, 0x0002,
+ &JASSeqParser::cmdJmpF, 0x0002, 0x0008,
+ &JASSeqParser::cmdJmpTable, 0x0002, 0x000B,
+ &JASSeqParser::cmdCallTable, 0x0002, 0x000B,
+ &JASSeqParser::cmdLoopS, 0x0001, 0x0001,
+ &JASSeqParser::cmdLoopE, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdReadPort, 0x0002, 0x0000,
+ &JASSeqParser::cmdWritePort, 0x0002, 0x000C,
+ &JASSeqParser::cmdCheckPortImport, 0x0001, 0x0000,
+ &JASSeqParser::cmdCheckPortExport, 0x0001, 0x0000,
+ &JASSeqParser::cmdParentWritePort, 0x0002, 0x000C,
+ &JASSeqParser::cmdChildWritePort, 0x0002, 0x000C,
+ &JASSeqParser::cmdParentReadPort, 0x0002, 0x0000,
+ &JASSeqParser::cmdChildReadPort, 0x0002, 0x0000,
+ &JASSeqParser::cmdRegLoad, 0x0002, 0x0004,
+ &JASSeqParser::cmdReg, 0x0003, 0x0030,
+ &JASSeqParser::cmdReg, 0x0003, 0x0010,
+ &JASSeqParser::cmdRegUni, 0x0002, 0x0000,
+ &JASSeqParser::cmdRegTblLoad, 0x0004, 0x00E0,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdTempo, 0x0001, 0x0001,
+ &JASSeqParser::cmdBankPrg, 0x0001, 0x0001,
+ &JASSeqParser::cmdBank, 0x0001, 0x0000,
+ &JASSeqParser::cmdPrg, 0x0001, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdEnvScaleSet, 0x0002, 0x0004,
+ &JASSeqParser::cmdEnvSet, 0x0002, 0x0008,
+ &JASSeqParser::cmdSimpleADSR, 0x0005, 0x0155,
+ &JASSeqParser::cmdBusConnect, 0x0002, 0x0004,
+ &JASSeqParser::cmdIIRCutOff, 0x0001, 0x0000,
+ &JASSeqParser::cmdIIRSet, 0x0004, 0x0055,
+ &JASSeqParser::cmdFIRSet, 0x0001, 0x0002,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdWait, 0x0000, 0x0000,
+ &JASSeqParser::cmdWaitByte, 0x0001, 0x0000,
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdSetIntTable, 0x0001, 0x0002,
+ &JASSeqParser::cmdSetInterrupt, 0x0001, 0x0001,
+ &JASSeqParser::cmdDisInterrupt, 0x0001, 0x0001,
+ &JASSeqParser::cmdRetI, 0x0000, 0x0000,
+ &JASSeqParser::cmdClrI, 0x0000, 0x0000,
+ &JASSeqParser::cmdIntTimer, 0x0002, 0x0004,
+ &JASSeqParser::cmdSyncCPU, 0x0001, 0x0001,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdPrintf, 0x0000, 0x0000,
+ &JASSeqParser::cmdNop, 0x0000, 0x0000,
+ &JASSeqParser::cmdFinish, 0x0000, 0x0000,
};
-/* 803C6480-803C648C -00001 000C+00 0/1 0/0 0/0 .data @542 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_542[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cmdDump__12JASSeqParserFP8JASTrackPUl,
-};
-#pragma pop
-
/* 803C648C-803C747C 0235AC 0FF0+00 1/2 0/0 0/0 .data sExtCmdInfo__12JASSeqParser */
-SECTION_DATA u8 JASSeqParser::sExtCmdInfo[4080] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+SECTION_DATA JASSeqParser::CmdInfo JASSeqParser::sExtCmdInfo[255] = {
+ NULL, 0x0000, 0x0000,
+ &JASSeqParser::cmdDump, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
+ NULL, 0x0000, 0x0000,
};
/* 803C747C-803C7550 -00001 00D4+00 1/1 0/0 0/0 .data @632 */
@@ -1303,6 +376,99 @@ SECTION_SDATA2 static f32 lit_631[1 + 1 /* padding */] = {
SECTION_SDATA2 static f64 lit_634 = 4503599627370496.0 /* cast u32 to float */;
/* 80293DC4-80293FC8 28E704 0204+00 8/7 0/0 0/0 .text writeReg__12JASSeqParserFP8JASTrackUlUl */
+// matches with literals
+#ifdef NONMATCHING
+void JASSeqParser::writeReg(JASTrack* param_0, u32 param_1, u32 param_2) {
+ param_0->writeReg(JASRegisterParam::REG3, param_2);
+ if (param_1 < 0x40) {
+ param_0->writeReg(JASRegisterParam::RegID(param_1), param_2);
+ return;
+ }
+ switch (param_1) {
+ case 0x40:
+ case 0x41:
+ case 0x42:
+ case 0x43:
+ case 0x44:
+ case 0x45:
+ case 0x46:
+ case 0x47:
+ case 0x48:
+ case 0x49:
+ case 0x4a:
+ case 0x4b:
+ case 0x4c:
+ case 0x4d:
+ case 0x4e:
+ case 0x4f:
+ param_0->setPort(param_1 - 0x40, param_2);
+ break;
+ case 0x60:
+ case 0x61:
+ break;
+ case 0x62:
+ param_0->setTimebase(param_2);
+ break;
+ case 0x63:
+ param_0->setTranspose(param_2);
+ break;
+ case 0x64:
+ param_0->setBendSense(param_2);
+ break;
+ case 0x65:
+ param_0->setGateRate(param_2);
+ break;
+ case 0x66:
+ param_0->setSkipSample(param_2);
+ break;
+ case 0x67:
+ param_0->setBankNumber(u8(param_2));
+ break;
+ case 0x68:
+ param_0->setProgNumber(u8(param_2));
+ break;
+ case 0x69:
+ param_0->setPanPower(param_2 / 32767.0f);
+ break;
+ case 0x6a:
+ param_0->setReleasePrio(JSUHiByte(param_2));
+ param_0->setNoteOnPrio(JSULoByte(param_2));
+ break;
+ case 0x6b:
+ param_0->setNoteOnPrio(param_2);
+ break;
+ case 0x6c:
+ param_0->setReleasePrio(param_2);
+ break;
+ case 0x6d:
+ param_0->setDirectRelease(param_2);
+ break;
+ case 0x6e:
+ param_0->setVibDepth(param_2 / 1524.0f);
+ break;
+ case 0x6f:
+ param_0->setVibDepth(param_2 / 12192.0f);
+ break;
+ case 0x70:
+ param_0->setTremDepth(param_2 / 256.0f);
+ break;
+ case 0x71:
+ param_0->setVibPitch(param_2 / 64.0f);
+ break;
+ case 0x72:
+ param_0->setTremPitch(param_2 / 64.0f);
+ break;
+ case 0x73:
+ param_0->setVibDelay(param_2);
+ break;
+ case 0x74:
+ param_0->setTremDelay(param_2);
+ break;
+ default:
+ break;
+ }
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -1311,6 +477,7 @@ asm void JASSeqParser::writeReg(JASTrack* param_0, u32 param_1, u32 param_2) {
#include "asm/JSystem/JAudio2/JASSeqParser/writeReg__12JASSeqParserFP8JASTrackUlUl.s"
}
#pragma pop
+#endif
/* ############################################################################################## */
/* 803C7550-803C7624 -00001 00D4+00 1/1 0/0 0/0 .data @720 */
@@ -1377,285 +544,358 @@ SECTION_SDATA2 static f32 lit_718 = 256.0f;
SECTION_SDATA2 static f32 lit_719 = 64.0f;
/* 80293FC8-80294188 28E908 01C0+00 7/6 0/0 0/0 .text readReg__12JASSeqParserCFP8JASTrackUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::readReg(JASTrack* param_0, u32 param_1) const {
+// extra mr instrucions
+#ifdef NONMATCHING
+u32 JASSeqParser::readReg(JASTrack* param_0, u32 param_1) const {
+ if (param_1 < 0x40) {
+ return param_0->readReg(JASRegisterParam::RegID(param_1));
+ }
+ u32 result = 0;
+ switch (param_1) {
+ case 0x40:
+ case 0x41:
+ case 0x42:
+ case 0x43:
+ case 0x44:
+ case 0x45:
+ case 0x46:
+ case 0x47:
+ case 0x48:
+ case 0x49:
+ case 0x4a:
+ case 0x4b:
+ case 0x4c:
+ case 0x4d:
+ case 0x4e:
+ case 0x4f:
+ result = param_0->getPort(param_1 - 0x40);
+ break;
+ case 0x60:
+ u16 r27 = 1;
+ for (int i = 0; i < 16; i++) {
+ JASTrack* child = param_0->getChild(i);
+ if (child && child->getStatus() == 1) {
+ result |= r27;
+ }
+ r27 <<= 1;
+ }
+ break;
+ case 0x61:
+ result = param_0->getSeqCtrl()->getSeqReader()->getLoopCount();
+ break;
+ case 0x62:
+ result = param_0->getTimebase();
+ break;
+ case 0x63:
+ result = param_0->getTranspose();
+ break;
+ case 0x64:
+ result = param_0->getBendSense();
+ break;
+ case 0x65:
+ result = param_0->getGateRate();
+ break;
+ case 0x66:
+ result = param_0->getSkipSample();
+ break;
+ case 0x67:
+ result = param_0->getBankNumber();
+ break;
+ case 0x68:
+ result = param_0->getProgNumber();
+ break;
+ case 0x69:
+ result = param_0->getPanPower() * 32767.0f;
+ break;
+ case 0x6a:
+ result = param_0->getReleasePrio() | param_0->getNoteOnPrio();
+ break;
+ case 0x6b:
+ result = param_0->getNoteOnPrio();
+ break;
+ case 0x6c:
+ result = param_0->getReleasePrio();
+ break;
+ case 0x6d:
+ result = param_0->getDirectRelease();
+ break;
+ case 0x6e:
+ result = param_0->getVibDepth() * 1524.0f;
+ break;
+ case 0x6f:
+ result = param_0->getVibDepth() * 12192.0f;
+ break;
+ case 0x70:
+ result = param_0->getTremDepth() * 256.0f;
+ break;
+ case 0x71:
+ result = param_0->getVibPitch() * 64.0f;
+ break;
+ case 0x72:
+ result = param_0->getTremPitch() * 64.0f;
+ break;
+ case 0x73:
+ result = param_0->getVibDelay();
+ break;
+ case 0x74:
+ result = param_0->getTremDelay();
+ break;
+ default:
+ break;
+ }
+ return result;
+}
+#else
+#pragma push
+#pragma optimization_level 0
+#pragma optimizewithasm off
+asm u32 JASSeqParser::readReg(JASTrack* param_0, u32 param_1) const {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/readReg__12JASSeqParserCFP8JASTrackUl.s"
}
#pragma pop
+#endif
/* 80294188-802941F0 28EAC8 0068+00 1/0 0/0 0/0 .text cmdOpenTrack__12JASSeqParserFP8JASTrackPUl
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdOpenTrack(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdOpenTrack__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdOpenTrack(JASTrack* param_0, u32* param_1) {
+ u32 r29 = param_1[0];
+ u32 r28 = param_1[1];
+ JASTrack* child = param_0->openChild(r29);
+ if (!child) {
+ return 0;
+ }
+ child->setSeqData(param_0->getSeqCtrl()->getBase(), r28);
+ child->start();
+ return 0;
}
-#pragma pop
/* 802941F0-8029421C 28EB30 002C+00 1/0 0/0 0/0 .text cmdCloseTrack__12JASSeqParserFP8JASTrackPUl
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdCloseTrack(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdCloseTrack__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdCloseTrack(JASTrack* param_0, u32* param_1) {
+ param_0->closeChild(*param_1);
+ return 0;
}
-#pragma pop
/* 8029421C-80294248 28EB5C 002C+00 1/0 0/0 0/0 .text cmdCall__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdCall(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdCall__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdCall(JASTrack* param_0, u32* param_1) {
+ param_0->getSeqCtrl()->call(*param_1);
+ return 0;
}
-#pragma pop
/* 80294248-8029429C 28EB88 0054+00 1/0 0/0 0/0 .text cmdCallF__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdCallF(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdCallF__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdCallF(JASTrack* param_0, u32* param_1) {
+ if (conditionCheck(param_0, BranchCondition(param_1[0]))) {
+ param_0->getSeqCtrl()->call(param_1[1]);
+ }
+ return 0;
}
-#pragma pop
/* 8029429C-802942D4 28EBDC 0038+00 1/0 0/0 0/0 .text cmdRet__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdRet(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdRet__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdRet(JASTrack* param_0, u32* param_1) {
+ if (!param_0->getSeqCtrl()->ret()) {
+ return 0;
+ }
+ return 0;
}
-#pragma pop
/* 802942D4-80294328 28EC14 0054+00 1/0 0/0 0/0 .text cmdRetF__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdRetF(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdRetF__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdRetF(JASTrack* param_0, u32* param_1) {
+ if (conditionCheck(param_0, BranchCondition(param_1[0]))) {
+ if (!param_0->getSeqCtrl()->ret()) {
+ return 0;
+ }
+ }
+ return 0;
}
-#pragma pop
/* 80294328-80294340 28EC68 0018+00 1/0 0/0 0/0 .text cmdJmp__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdJmp(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdJmp__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdJmp(JASTrack* param_0, u32* param_1) {
+ param_0->getSeqCtrl()->jump(param_1[0]);
+ return 0;
}
-#pragma pop
/* 80294340-80294398 28EC80 0058+00 1/0 0/0 0/0 .text cmdJmpF__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdJmpF(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdJmpF__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdJmpF(JASTrack* param_0, u32* param_1) {
+ if (conditionCheck(param_0, BranchCondition(param_1[0]))) {
+ param_0->getSeqCtrl()->jump(param_1[1]);
+ }
+ return 0;
}
-#pragma pop
/* 80294398-802943CC 28ECD8 0034+00 1/0 0/0 0/0 .text cmdJmpTable__12JASSeqParserFP8JASTrackPUl */
+// instruction order
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdJmpTable(JASTrack* param_0, u32* param_1) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ seqCtrl->jump(seqCtrl->get24(param_1[1] + param_1[0] * 2 + param_1[0]));
+ return 0;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASSeqParser::cmdJmpTable(JASTrack* param_0, u32* param_1) {
+asm s32 JASSeqParser::cmdJmpTable(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdJmpTable__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
+#endif
/* 802943CC-8029441C 28ED0C 0050+00 1/0 0/0 0/0 .text cmdCallTable__12JASSeqParserFP8JASTrackPUl
*/
+// instruction order
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdCallTable(JASTrack* param_0, u32* param_1) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ seqCtrl->call(seqCtrl->get24(param_1[1] + param_1[0] * 2 + param_1[0]));
+ return 0;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASSeqParser::cmdCallTable(JASTrack* param_0, u32* param_1) {
+asm s32 JASSeqParser::cmdCallTable(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdCallTable__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
+#endif
/* 8029441C-80294448 28ED5C 002C+00 1/0 0/0 0/0 .text cmdLoopS__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdLoopS(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdLoopS__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdLoopS(JASTrack* param_0, u32* param_1) {
+ param_0->getSeqCtrl()->loopStart(param_1[0]);
+ return 0;
}
-#pragma pop
/* 80294448-80294470 28ED88 0028+00 1/0 0/0 0/0 .text cmdLoopE__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdLoopE(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdLoopE__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdLoopE(JASTrack* param_0, u32* param_1) {
+ param_0->getSeqCtrl()->loopEnd();
+ return 0;
}
-#pragma pop
/* 80294470-802944B4 28EDB0 0044+00 1/0 0/0 0/0 .text cmdNote__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdNote(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdNote__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdNote(JASTrack* param_0, u32* param_1) {
+ execNoteOnGate(param_0, param_1[1], param_1[2], param_1[3], param_1[0]);
+ return 0;
}
-#pragma pop
/* 802944B4-802944F4 28EDF4 0040+00 1/0 0/0 0/0 .text cmdNoteOn__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdNoteOn(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdNoteOn__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdNoteOn(JASTrack* param_0, u32* param_1) {
+ execNoteOnMidi(param_0, param_1[1], param_1[0], param_1[2]);
+ return 0;
}
-#pragma pop
/* 802944F4-80294528 28EE34 0034+00 1/0 0/0 0/0 .text cmdNoteOff__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdNoteOff(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdNoteOff__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdNoteOff(JASTrack* param_0, u32* param_1) {
+ execNoteOff(param_0, param_1[0]);
+ return 0;
}
-#pragma pop
/* 80294528-80294588 28EE68 0060+00 1/0 0/0 0/0 .text cmdReadPort__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdReadPort(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdReadPort__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdReadPort(JASTrack* param_0, u32* param_1) {
+ u16 tmp = param_0->readPortSelf(param_1[0]);
+ writeReg(param_0, param_1[1], tmp);
+ return 0;
}
-#pragma pop
/* 80294588-802945BC 28EEC8 0034+00 1/0 0/0 0/0 .text cmdWritePort__12JASSeqParserFP8JASTrackPUl
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdWritePort(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdWritePort__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdWritePort(JASTrack* param_0, u32* param_1) {
+ param_0->writePortSelf(param_1[0], param_1[1]);
+ return 0;
}
-#pragma pop
/* 802945BC-802945F8 28EEFC 003C+00 1/0 0/0 0/0 .text
* cmdParentWritePort__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdParentWritePort(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdParentWritePort__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdParentWritePort(JASTrack* param_0, u32* param_1) {
+ JASTrack* parent = param_0->getParent();
+ if (parent) {
+ parent->writePort(param_1[0], param_1[1]);
+ } else {
+
+ }
+ return 0;
}
-#pragma pop
/* 802945F8-80294644 28EF38 004C+00 1/0 0/0 0/0 .text
* cmdChildWritePort__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdChildWritePort(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdChildWritePort__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdChildWritePort(JASTrack* param_0, u32* param_1) {
+ JASTrack* child = param_0->getChild(JSUHiNibble(param_1[0]));
+ if (child) {
+ child->writePort(JSULoNibble(param_1[0]), param_1[1]);
+ } else {
+
+ }
+ return 0;
}
-#pragma pop
/* 80294644-802946AC 28EF84 0068+00 1/0 0/0 0/0 .text
* cmdParentReadPort__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdParentReadPort(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdParentReadPort__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdParentReadPort(JASTrack* param_0, u32* param_1) {
+ JASTrack* parent = param_0->getParent();
+ if (parent) {
+ u16 tmp = parent->readPort(param_1[0]);
+ writeReg(param_0, param_1[1], tmp);
+ } else {
+
+ }
+ return 0;
}
-#pragma pop
/* 802946AC-80294724 28EFEC 0078+00 1/0 0/0 0/0 .text
* cmdChildReadPort__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdChildReadPort(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdChildReadPort__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdChildReadPort(JASTrack* param_0, u32* param_1) {
+ JASTrack* child = param_0->getChild(JSUHiNibble(param_1[0]));
+ if (child) {
+ u16 tmp = child->readPort(JSULoNibble(param_1[0]));
+ writeReg(param_0, param_1[1], tmp);
+ } else {
+
+ }
+ return 0;
}
-#pragma pop
/* 80294724-80294770 28F064 004C+00 1/0 0/0 0/0 .text
* cmdCheckPortImport__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdCheckPortImport(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortImport__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdCheckPortImport(JASTrack* param_0, u32* param_1) {
+ u8 tmp = param_0->checkPortIn(param_1[0]);
+ param_0->writeReg(JASRegisterParam::REG3, tmp);
+ return 0;
}
-#pragma pop
/* 80294770-802947BC 28F0B0 004C+00 1/0 0/0 0/0 .text
* cmdCheckPortExport__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdCheckPortExport(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdCheckPortExport__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdCheckPortExport(JASTrack* param_0, u32* param_1) {
+ u8 tmp = param_0->checkPort(param_1[0]);
+ param_0->writeReg(JASRegisterParam::REG3, tmp);
+ return 0;
}
-#pragma pop
/* 802947BC-802947F4 28F0FC 0038+00 1/0 0/0 0/0 .text cmdWait__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdWait(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdWait__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdWait(JASTrack* param_0, u32* param_1) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ seqCtrl->wait(seqCtrl->readMidiValue());
+ return 0;
}
-#pragma pop
/* 802947F4-80294804 28F134 0010+00 1/0 0/0 0/0 .text cmdWaitByte__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdWaitByte(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdWaitByte__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdWaitByte(JASTrack* param_0, u32* param_1) {
+ param_0->getSeqCtrl()->wait(param_1[0]);
+ return 0;
}
-#pragma pop
/* 80294804-8029483C 28F144 0038+00 1/0 0/0 0/0 .text cmdSetLastNote__12JASSeqParserFP8JASTrackPUl
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdSetLastNote(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdSetLastNote__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdSetLastNote(JASTrack* param_0, u32* param_1) {
+ u32 r31 = param_1[0];
+ if (r31 < 256) {
+ param_0->setLatestKey(r31);
+ } else {
+
+ }
+ return 0;
}
-#pragma pop
/* ############################################################################################## */
/* 80455600-80455608 003C00 0004+04 1/1 0/0 0/0 .sdata2 @931 */
@@ -1667,133 +907,105 @@ SECTION_SDATA2 static f32 lit_931[1 + 1 /* padding */] = {
/* 8029483C-8029488C 28F17C 0050+00 1/0 0/0 0/0 .text cmdEnvScaleSet__12JASSeqParserFP8JASTrackPUl
*/
+// matches with literals
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdEnvScaleSet(JASTrack* param_0, u32* param_1) {
+ param_0->setOscScale(param_1[0], param_1[1] / 16383.0f);
+ return 0;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASSeqParser::cmdEnvScaleSet(JASTrack* param_0, u32* param_1) {
+asm s32 JASSeqParser::cmdEnvScaleSet(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdEnvScaleSet__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
+#endif
/* 8029488C-802948C8 28F1CC 003C+00 1/0 0/0 0/0 .text cmdEnvSet__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdEnvSet(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdEnvSet__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdEnvSet(JASTrack* param_0, u32* param_1) {
+ param_0->setOscTable(param_1[0], (JASOscillator::Point*)param_0->getSeqCtrl()->getAddr(param_1[1]));
+ return 0;
}
-#pragma pop
/* 802948C8-8029491C 28F208 0054+00 1/0 0/0 0/0 .text cmdSimpleADSR__12JASSeqParserFP8JASTrackPUl
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdSimpleADSR(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdSimpleADSR__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdSimpleADSR(JASTrack* param_0, u32* param_1) {
+ param_0->setOscAdsr(param_1[0], param_1[1], param_1[2], param_1[3], param_1[4]);
+ return 0;
}
-#pragma pop
/* 8029491C-8029494C 28F25C 0030+00 1/0 0/0 0/0 .text cmdBusConnect__12JASSeqParserFP8JASTrackPUl
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdBusConnect(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdBusConnect__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdBusConnect(JASTrack* param_0, u32* param_1) {
+ param_0->connectBus(param_1[0], param_1[1]);
+ return 0;
}
-#pragma pop
/* 8029494C-8029495C 28F28C 0010+00 1/0 0/0 0/0 .text cmdSetIntTable__12JASSeqParserFP8JASTrackPUl
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdSetIntTable(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdSetIntTable__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdSetIntTable(JASTrack* param_0, u32* param_1) {
+ param_0->getSeqCtrl()->setIntrTable(param_1[0]);
+ return 0;
}
-#pragma pop
/* 8029495C-80294988 28F29C 002C+00 1/0 0/0 0/0 .text
* cmdSetInterrupt__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdSetInterrupt(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdSetInterrupt__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdSetInterrupt(JASTrack* param_0, u32* param_1) {
+ param_0->getSeqCtrl()->setIntrMask(param_1[0]);
+ return 0;
}
-#pragma pop
/* 80294988-802949B4 28F2C8 002C+00 1/0 0/0 0/0 .text
* cmdDisInterrupt__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdDisInterrupt(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdDisInterrupt__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdDisInterrupt(JASTrack* param_0, u32* param_1) {
+ param_0->getSeqCtrl()->clrIntrMask(param_1[0]);
+ return 0;
}
-#pragma pop
/* 802949B4-802949E4 28F2F4 0030+00 1/0 0/0 0/0 .text cmdClrI__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdClrI(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdClrI__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdClrI(JASTrack* param_0, u32* param_1) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ seqCtrl->clrIntr();
+ seqCtrl->checkIntr();
+ return 0;
}
-#pragma pop
/* 802949E4-80294A20 28F324 003C+00 1/0 0/0 0/0 .text cmdRetI__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdRetI(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdRetI__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdRetI(JASTrack* param_0, u32* param_1) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ seqCtrl->retIntr();
+ seqCtrl->checkIntr();
+ return 0;
}
-#pragma pop
/* 80294A20-80294A3C 28F360 001C+00 1/0 0/0 0/0 .text cmdIntTimer__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdIntTimer(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdIntTimer__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdIntTimer(JASTrack* param_0, u32* param_1) {
+ param_0->getSeqCtrl()->setIntrTimer(param_1[0], param_1[1]);
+ return 0;
}
-#pragma pop
/* ############################################################################################## */
/* 80451240-80451244 000740 0004+00 1/1 1/1 0/0 .sbss sCallBackFunc__12JASSeqParser */
-u8 JASSeqParser::sCallBackFunc[4];
+u16 (*JASSeqParser::sCallBackFunc)(JASTrack*, u16);
/* 80294A3C-80294AA4 28F37C 0068+00 1/0 0/0 0/0 .text cmdSyncCPU__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdSyncCPU(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdSyncCPU__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdSyncCPU(JASTrack* param_0, u32* param_1) {
+ u16 r31 = 0xffff;
+ if (sCallBackFunc) {
+ r31 = sCallBackFunc(param_0, param_1[0]);
+ }
+ param_0->writeReg(JASRegisterParam::REG3, r31);
+ return 0;
}
-#pragma pop
/* 80294AA4-80294AD4 28F3E4 0030+00 1/0 0/0 0/0 .text cmdTempo__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdTempo(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdTempo__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdTempo(JASTrack* param_0, u32* param_1) {
+ param_0->setTempo(param_1[0]);
+ return 0;
}
-#pragma pop
/* 80294AD4-80294ADC 28F414 0008+00 1/0 0/0 0/0 .text cmdFinish__12JASSeqParserFP8JASTrackPUl */
s32 JASSeqParser::cmdFinish(JASTrack* param_0, u32* param_1) {
@@ -1801,114 +1013,143 @@ s32 JASSeqParser::cmdFinish(JASTrack* param_0, u32* param_1) {
}
/* 80294ADC-80294AE4 28F41C 0008+00 1/0 0/0 0/0 .text cmdNop__12JASSeqParserFP8JASTrackPUl */
-bool JASSeqParser::cmdNop(JASTrack* param_0, u32* param_1) {
- return false;
+s32 JASSeqParser::cmdNop(JASTrack* param_0, u32* param_1) {
+ return 0;
}
/* 80294AE4-80294B1C 28F424 0038+00 1/0 0/0 0/0 .text cmdFIRSet__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdFIRSet(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdFIRSet__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdFIRSet(JASTrack* param_0, u32* param_1) {
+ param_0->setFIR((s16*)param_0->getSeqCtrl()->getAddr(param_1[0]));
+ return 0;
}
-#pragma pop
/* 80294B1C-80294B70 28F45C 0054+00 1/0 0/0 0/0 .text cmdIIRSet__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdIIRSet(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdIIRSet__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdIIRSet(JASTrack* param_0, u32* param_1) {
+ s16 stack_10[4];
+ for (int i = 0; i < 4; i++) {
+ stack_10[i] = param_1[i];
+ }
+ param_0->setIIR(stack_10);
+ return 0;
}
-#pragma pop
/* 80294B70-80294BB4 28F4B0 0044+00 1/0 0/0 0/0 .text cmdIIRCutOff__12JASSeqParserFP8JASTrackPUl
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdIIRCutOff(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdIIRCutOff__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdIIRCutOff(JASTrack* param_0, u32* param_1) {
+ u32 r31 = param_1[0];
+ if (r31 < 128) {
+ param_0->setIIR(JASCalc::CUTOFF_TO_IIR_TABLE[r31]);
+ } else {
+
+ }
+ return 0;
}
-#pragma pop
/* 80294BB4-80294BD0 28F4F4 001C+00 1/0 0/0 0/0 .text cmdBankPrg__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdBankPrg(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdBankPrg__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdBankPrg(JASTrack* param_0, u32* param_1) {
+ u16 r31 = JSULoHalf(param_1[0]);
+ param_0->setBankNumber(JSUHiByte(r31));
+ param_0->setProgNumber(JSULoByte(r31));
+ return 0;
}
-#pragma pop
/* 80294BD0-80294BE4 28F510 0014+00 1/0 0/0 0/0 .text cmdBank__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdBank(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdBank__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdBank(JASTrack* param_0, u32* param_1) {
+ param_0->setBankNumber(param_1[0] & 0xff);
+ return 0;
}
-#pragma pop
/* 80294BE4-80294BF8 28F524 0014+00 1/0 0/0 0/0 .text cmdPrg__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdPrg(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdPrg__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdPrg(JASTrack* param_0, u32* param_1) {
+ param_0->setProgNumber(param_1[0] & 0xff);
+ return 0;
}
-#pragma pop
/* ############################################################################################## */
/* 80455608-80455610 003C08 0008+00 4/4 0/0 0/0 .sdata2 @1064 */
SECTION_SDATA2 static f64 lit_1064 = 4503601774854144.0 /* cast s32 to float */;
/* 80294BF8-80294C54 28F538 005C+00 1/0 0/0 0/0 .text cmdParamI__12JASSeqParserFP8JASTrackPUl */
+// matches with literals
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdParamI(JASTrack* param_0, u32* param_1) {
+ param_0->setParam(param_1[0], s16(param_1[1]) / 32767.0f, 0);
+ return 0;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASSeqParser::cmdParamI(JASTrack* param_0, u32* param_1) {
+asm s32 JASSeqParser::cmdParamI(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdParamI__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
+#endif
/* 80294C54-80294CB0 28F594 005C+00 1/0 0/0 0/0 .text cmdParamII__12JASSeqParserFP8JASTrackPUl */
+// matches with literals
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdParamII(JASTrack* param_0, u32* param_1) {
+ param_0->setParam(param_1[0], s16(param_1[1]) / 32767.0f, param_1[2]);
+ return 0;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASSeqParser::cmdParamII(JASTrack* param_0, u32* param_1) {
+asm s32 JASSeqParser::cmdParamII(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdParamII__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
+#endif
/* 80294CB0-80294D2C 28F5F0 007C+00 1/0 0/0 0/0 .text cmdParamE__12JASSeqParserFP8JASTrackPUl */
+// matches with literals
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdParamE(JASTrack* param_0, u32* param_1) {
+ s32* r31 = (s32*)param_1 + 1;
+ s16 r30 = *r31 << 8;
+ if ((*r31 & 0x80) == 0) {
+ r30 = r30 | s16(*r31 << 1);
+ }
+ param_0->setParam(param_1[0], r30 / 32767.0f, 0);
+ return 0;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASSeqParser::cmdParamE(JASTrack* param_0, u32* param_1) {
+asm s32 JASSeqParser::cmdParamE(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdParamE__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
+#endif
/* 80294D2C-80294DA8 28F66C 007C+00 1/0 0/0 0/0 .text cmdParamEI__12JASSeqParserFP8JASTrackPUl */
+// matches with literals
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdParamEI(JASTrack* param_0, u32* param_1) {
+ s32* r31 = (s32*)param_1 + 1;
+ s16 r30 = *r31 << 8;
+ if ((*r31 & 0x80) == 0) {
+ r30 = r30 | s16(*r31 << 1);
+ }
+ param_0->setParam(param_1[0], r30 / 32767.0f, param_1[2]);
+ return 0;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASSeqParser::cmdParamEI(JASTrack* param_0, u32* param_1) {
+asm s32 JASSeqParser::cmdParamEI(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdParamEI__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
+#endif
/* ############################################################################################## */
/* 803C7624-803C7650 -00001 002C+00 1/1 0/0 0/0 .data @1124 */
@@ -1933,214 +1174,390 @@ static u8 data_80451244[4];
static u8 oRandom[4 + 4 /* padding */];
/* 80294DA8-80294F10 28F6E8 0168+00 3/0 0/0 0/0 .text cmdReg__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdReg(JASTrack* param_0, u32* param_1) {
+// mullw operand flipped
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdReg(JASTrack* param_0, u32* param_1) {
+ u32 r29 = param_1[1];
+ u32 r30 = param_1[2];
+ switch (param_1[0]) {
+ case 0:
+ break;
+ case 1:
+ r30 += readReg(param_0, r29);
+ break;
+ case 2:
+ r30 = readReg(param_0, r29) - r30;
+ break;
+ case 3:
+ r30 = readReg(param_0, r29) - r30;
+ r29 = 3;
+ break;
+ case 4:
+ r30 *= readReg(param_0, r29);
+ r29 = 0x21;
+ break;
+ case 5:
+ r30 &= readReg(param_0, r29);
+ break;
+ case 6:
+ r30 |= readReg(param_0, r29);
+ break;
+ case 7:
+ r30 ^= readReg(param_0, r29);
+ break;
+ case 8:
+ static JMath::TRandom_fast_ oRandom(0);
+ u32 tmp = oRandom.get_bit32() >> 9;
+ r30 = tmp - tmp / r30 * r30;
+ break;
+ case 9:
+ r30 = readReg(param_0, r29) << r30;
+ break;
+ case 10:
+ r30 = readReg(param_0, r29) >> r30;
+ break;
+ default:
+ return 0;
+ }
+ writeReg(param_0, r29, r30);
+ return 0;
+}
+#else
+#pragma push
+#pragma optimization_level 0
+#pragma optimizewithasm off
+asm s32 JASSeqParser::cmdReg(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdReg__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
+#endif
/* 80294F10-80294F40 28F850 0030+00 1/0 0/0 0/0 .text cmdRegLoad__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdRegLoad(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdRegLoad__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdRegLoad(JASTrack* param_0, u32* param_1) {
+ writeReg(param_0, param_1[0], param_1[1]);
+ return 0;
}
-#pragma pop
/* 80294F40-80294FB4 28F880 0074+00 1/0 0/0 0/0 .text cmdRegUni__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdRegUni(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdRegUni__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdRegUni(JASTrack* param_0, u32* param_1) {
+ u32 r31 = param_1[1];
+ s32 r30 = 0;
+ switch (param_1[0]) {
+ case 11:
+ r30 = -readReg(param_0, r31);
+ break;
+ default:
+ return 0;
+ }
+ writeReg(param_0, r31, r30);
+ return 0;
}
-#pragma pop
/* 80294FB4-80295088 28F8F4 00D4+00 1/0 0/0 0/0 .text cmdRegTblLoad__12JASSeqParserFP8JASTrackPUl
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdRegTblLoad(JASTrack* param_0, u32* param_1) {
+// case 12, case 14
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdRegTblLoad(JASTrack* param_0, u32* param_1) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ u32 p1 = param_1[1];
+ u32 p2 = param_1[2];
+ u32 p3 = param_1[3];
+ u32 r27;
+ switch (param_1[0]) {
+ case 12:
+ r27 = seqCtrl->getByte(p2 + p3);
+ break;
+ case 13:
+ r27 = seqCtrl->get16(p2 + p3 * 2);
+ break;
+ case 14:
+ r27 = seqCtrl->get24(p2 + p3 * 2 + p3);
+ break;
+ case 15:
+ r27 = seqCtrl->get32(p2 + p3 * 4);
+ break;
+ case 16:
+ r27 = seqCtrl->get32(p2 + p3);
+ break;
+ default:
+ return 0;
+ }
+ writeReg(param_0, p1, r27);
+ return 0;
+}
+#else
+#pragma push
+#pragma optimization_level 0
+#pragma optimizewithasm off
+asm s32 JASSeqParser::cmdRegTblLoad(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdRegTblLoad__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
-
-/* ############################################################################################## */
-/* 8039B018-8039B018 027678 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039B018 =
- "--------------- JASTrack (%8x) dump ------------"
- "----";
-SECTION_DEAD static char const* const stringBase_8039B04D = " Base: 0x%08x Cur: 0x%08x(0x%06x)";
-SECTION_DEAD static char const* const stringBase_8039B06F = "";
-SECTION_DEAD static char const* const stringBase_8039B070 =
- " REG_A: 0x%04x REG_B: 0x%04x REG_S: 0x%04x";
-SECTION_DEAD static char const* const stringBase_8039B09B =
- " REG_X: 0x%04x REG_Y: 0x%04x REG_F: 0x%04x";
-SECTION_DEAD static char const* const stringBase_8039B0C6 =
- " PORT 0-3: 0x%04x 0x%04x 0x%04x 0x%04x";
-SECTION_DEAD static char const* const stringBase_8039B0ED =
- " PORT 4-7: 0x%04x 0x%04x 0x%04x 0x%04x";
-SECTION_DEAD static char const* const stringBase_8039B114 =
- " PORT 8-B: 0x%04x 0x%04x 0x%04x 0x%04x";
-SECTION_DEAD static char const* const stringBase_8039B13B =
- " PORT C-F: 0x%04x 0x%04x 0x%04x 0x%04x";
-/* @stringBase0 padding */
-SECTION_DEAD static char const* const pad_8039B162 = "\0\0\0\0\0";
-#pragma pop
+#endif
/* 80295088-8029526C 28F9C8 01E4+00 1/0 0/0 0/0 .text cmdDump__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdDump(JASTrack* param_0, u32* param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/cmdDump__12JASSeqParserFP8JASTrackPUl.s"
+s32 JASSeqParser::cmdDump(JASTrack* param_0, u32* param_1) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ JASReport("--------------- JASTrack (%8x) dump ----------------", param_0);
+ JASReport(" Base: 0x%08x Cur: 0x%08x(0x%06x)", seqCtrl->getBase(), seqCtrl->getCur(), (u8*)seqCtrl->getCur() - (u8*)seqCtrl->getBase());
+ JASReport("");
+ JASReport(" REG_A: 0x%04x REG_B: 0x%04x REG_S: 0x%04x", readReg(param_0, 0), readReg(param_0, 1), readReg(param_0, 2));
+ JASReport(" REG_X: 0x%04x REG_Y: 0x%04x REG_F: 0x%04x", readReg(param_0, 4), readReg(param_0, 5), readReg(param_0, 3));
+ JASReport("");
+ JASReport(" PORT 0-3: 0x%04x 0x%04x 0x%04x 0x%04x", param_0->getPort(0x0), param_0->getPort(0x1), param_0->getPort(0x2), param_0->getPort(0x3));
+ JASReport(" PORT 4-7: 0x%04x 0x%04x 0x%04x 0x%04x", param_0->getPort(0x4), param_0->getPort(0x5), param_0->getPort(0x6), param_0->getPort(0x7));
+ JASReport(" PORT 8-B: 0x%04x 0x%04x 0x%04x 0x%04x", param_0->getPort(0x8), param_0->getPort(0x9), param_0->getPort(0xa), param_0->getPort(0xb));
+ JASReport(" PORT C-F: 0x%04x 0x%04x 0x%04x 0x%04x", param_0->getPort(0xc), param_0->getPort(0xd), param_0->getPort(0xe), param_0->getPort(0xf));
+ JASReport("");
+ return 0;
}
-#pragma pop
/* 8029526C-80295498 28FBAC 022C+00 1/0 0/0 0/0 .text cmdPrintf__12JASSeqParserFP8JASTrackPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::cmdPrintf(JASTrack* param_0, u32* param_1) {
+// many things
+#ifdef NONMATCHING
+s32 JASSeqParser::cmdPrintf(JASTrack* param_0, u32* param_1) {
+ char stack_c[4];
+ u32 stack_10[4];
+ char buffer[128];
+
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ int r30 = 0;
+ for (u8 i = 0; i < 128; i++) {
+ buffer[i] = seqCtrl->readByte();
+ if (buffer[i] == 0) {
+ break;
+ }
+ if (buffer[i] == '\\') {
+ buffer[i] = seqCtrl->readByte();
+ if (buffer[i] == 0) {
+ break;
+ }
+ if (buffer[i] == 'n') {
+ buffer[i] = '\r';
+ }
+ } else if (buffer[i] == '%') {
+ buffer[i + 1] = seqCtrl->readByte();
+ if (buffer[i + 1] == 0) {
+ break;
+ }
+ switch (buffer[i + 1]) {
+ case 'd':
+ stack_c[r30] = 0;
+ break;
+ case 'x':
+ stack_c[r30] = 1;
+ break;
+ case 's':
+ stack_c[r30] = 2;
+ break;
+ case 'r':
+ stack_c[r30] = 3;
+ buffer[i + 1] = 'd';
+ break;
+ case 'R':
+ stack_c[r30] = 4;
+ buffer[i + 1] = 'x';
+ break;
+ default:
+ break;
+ }
+ r30++;
+ }
+ }
+ for (u32 i = 0; i < r30; i++) {
+ stack_10[i] = seqCtrl->readByte();
+ switch (stack_c[i]) {
+ case 2:
+ stack_10[i] = (u32)seqCtrl->getAddr(stack_10[i]);
+ break;
+ case 3:
+ case 4:
+ stack_10[i] = readReg(param_0, stack_10[i] & 0xff);
+ break;
+ default:
+ break;
+ }
+ }
+ JASReport(buffer, stack_10[0], stack_10[1], stack_10[2], stack_10[3]);
+ return 0;
+}
+#else
+#pragma push
+#pragma optimization_level 0
+#pragma optimizewithasm off
+asm s32 JASSeqParser::cmdPrintf(JASTrack* param_0, u32* param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/cmdPrintf__12JASSeqParserFP8JASTrackPUl.s"
}
#pragma pop
+#endif
/* 80295498-80295540 28FDD8 00A8+00 1/0 0/0 0/0 .text
* execNoteOnGate__12JASSeqParserFP8JASTrackUlUlUlUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::execNoteOnGate(JASTrack* param_0, u32 param_1, u32 param_2, u32 param_3,
+// stack shenanigans
+#ifdef NONMATCHING
+s32 JASSeqParser::execNoteOnGate(JASTrack* param_0, u32 param_1, u32 param_2, u32 param_3,
+ u32 param_4) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ u8 tmp = param_4;
+ int r31 = 0;
+ if (tmp >> 6 & 1) {
+ r31 |= 2;
+ }
+ if (tmp >> 7 & 1) {
+ r31 |= 1;
+ }
+ if (param_3 == 0) {
+ r31 |= 4;
+ }
+ int result = param_0->gateOn(param_1, param_2, param_3, r31);
+ if (param_3) {
+ seqCtrl->wait(param_3);
+ } else {
+ seqCtrl->waitNoteFinish();
+ }
+ return result;
+}
+#else
+#pragma push
+#pragma optimization_level 0
+#pragma optimizewithasm off
+asm s32 JASSeqParser::execNoteOnGate(JASTrack* param_0, u32 param_1, u32 param_2, u32 param_3,
u32 param_4) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/execNoteOnGate__12JASSeqParserFP8JASTrackUlUlUlUl.s"
}
#pragma pop
+#endif
/* 80295540-80295570 28FE80 0030+00 1/0 0/0 0/0 .text
* execNoteOnMidi__12JASSeqParserFP8JASTrackUlUlUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::execNoteOnMidi(JASTrack* param_0, u32 param_1, u32 param_2, u32 param_3) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/execNoteOnMidi__12JASSeqParserFP8JASTrackUlUlUl.s"
+s32 JASSeqParser::execNoteOnMidi(JASTrack* param_0, u32 param_1, u32 param_2, u32 param_3) {
+ return param_0->noteOn(param_1, param_2, param_3);
}
-#pragma pop
/* 80295570-8029559C 28FEB0 002C+00 1/0 0/0 0/0 .text execNoteOff__12JASSeqParserFP8JASTrackUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::execNoteOff(JASTrack* param_0, u32 param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/execNoteOff__12JASSeqParserFP8JASTrackUl.s"
+s32 JASSeqParser::execNoteOff(JASTrack* param_0, u32 param_1) {
+ return param_0->noteOff(param_1, 0);
}
-#pragma pop
/* 8029559C-802955C8 28FEDC 002C+00 1/0 0/0 0/0 .text
* execCommand__12JASSeqParserFP8JASTrackM12JASSeqParserFPCvPvP8JASTrackPUl_lUlPUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::execCommand(JASTrack* param_0, s32 (JASSeqParser::*param_1)(JASTrack*, u32*),
+s32 JASSeqParser::execCommand(JASTrack* param_0, s32 (JASSeqParser::*param_1)(JASTrack*, u32*),
u32 param_2, u32* param_3) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/execCommand__12JASSeqParserFP8JASTrackM12JASSeqParserFPCvPvP8JASTrackPUl_lUlPUl.s"
+ return (this->*param_1)(param_0, param_3);
}
-#pragma pop
/* 802955C8-80295600 28FF08 0038+00 1/1 0/0 0/0 .text parseNoteOff__12JASSeqParserFP8JASTrackUc */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::parseNoteOff(JASTrack* param_0, u8 param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/parseNoteOff__12JASSeqParserFP8JASTrackUc.s"
+s32 JASSeqParser::parseNoteOff(JASTrack* param_0, u8 param_1) {
+ if (param_1 & 7) {
+ execNoteOff(param_0, param_1 & 7);
+ } else {
+
+ }
+ return 0;
}
-#pragma pop
/* 80295600-802956B0 28FF40 00B0+00 1/1 0/0 0/0 .text parseNoteOn__12JASSeqParserFP8JASTrackUc */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::parseNoteOn(JASTrack* param_0, u8 param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/parseNoteOn__12JASSeqParserFP8JASTrackUc.s"
+s32 JASSeqParser::parseNoteOn(JASTrack* param_0, u8 param_1) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ u32 r28 = seqCtrl->readByte();
+ u32 r27 = seqCtrl->readByte();
+ if ((r28 & 7) == 0) {
+ execNoteOnGate(param_0, param_1, r27, seqCtrl->readMidiValue(), r28);
+ } else {
+ execNoteOnMidi(param_0, r28 & 7, param_1, r27);
+ }
+ return 0;
}
-#pragma pop
/* 802956B0-80295864 28FFF0 01B4+00 2/2 0/0 0/0 .text parseCommand__12JASSeqParserFP8JASTrackUcUs
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::parseCommand(JASTrack* param_0, u8 param_1, u16 param_2) {
+// ptmf stack
+#ifdef NONMATCHING
+s32 JASSeqParser::parseCommand(JASTrack* param_0, u8 cmd, u16 param_2) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ CmdInfo* cmdInfo = NULL;
+ if (cmd != 0xb0) {
+ cmdInfo = &sCmdInfo[cmd - 0xa0];
+ } else {
+ cmdInfo = &sExtCmdInfo[seqCtrl->readByte() & 0xff];
+ }
+ u16 r28 = cmdInfo->field_0xe | param_2;
+ u32 stack_28[8];
+ for (int i = 0; i < cmdInfo->field_0xc; i++) {
+ int r27 = 0;
+ switch (r28 & 3) {
+ case 0:
+ r27 = seqCtrl->readByte();
+ break;
+ case 1:
+ r27 = seqCtrl->read16();
+ break;
+ case 2:
+ r27 = seqCtrl->read24();
+ break;
+ case 3:
+ r27 = readReg(param_0, seqCtrl->readByte());
+ break;
+ }
+ stack_28[i] = r27;
+ r28 >>= 2;
+ }
+ s32 (JASSeqParser::*ptr)(JASTrack*, u32*);
+ if (!ptr) {
+ return 0;
+ }
+ return execCommand(param_0, ptr, cmdInfo->field_0xc, stack_28);
+}
+#else
+#pragma push
+#pragma optimization_level 0
+#pragma optimizewithasm off
+asm s32 JASSeqParser::parseCommand(JASTrack* param_0, u8 param_1, u16 param_2) {
nofralloc
#include "asm/JSystem/JAudio2/JASSeqParser/parseCommand__12JASSeqParserFP8JASTrackUcUs.s"
}
#pragma pop
+#endif
/* 80295864-802958D4 2901A4 0070+00 1/1 0/0 0/0 .text parseRegCommand__12JASSeqParserFP8JASTracki
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::parseRegCommand(JASTrack* param_0, int param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/parseRegCommand__12JASSeqParserFP8JASTracki.s"
+s32 JASSeqParser::parseRegCommand(JASTrack* param_0, int param_1) {
+ JASSeqCtrl* seqCtrl = param_0->getSeqCtrl();
+ u8 r30 = seqCtrl->readByte();
+ u16 r29 = 0;
+ u16 r28 = 3;
+ for (int i = 0; i < param_1; i++) {
+ if (r30 & 0x80) {
+ r29 |= r28;
+ }
+ r30 <<= 1;
+ r28 <<= 2;
+ }
+ return parseCommand(param_0, seqCtrl->readByte(), r29);
}
-#pragma pop
/* 802958D4-80295950 290214 007C+00 1/0 0/0 0/0 .text parse__12JASSeqParserFP8JASTrack */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASSeqParser::parse(JASTrack* param_0) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/parse__12JASSeqParserFP8JASTrack.s"
-}
-#pragma pop
-
-/* 80295950-80296108 290290 07B8+00 0/0 1/0 0/0 .text __sinit_JASSeqParser_cpp */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void __sinit_JASSeqParser_cpp() {
- nofralloc
-#include "asm/JSystem/JAudio2/JASSeqParser/__sinit_JASSeqParser_cpp.s"
+s32 JASSeqParser::parse(JASTrack* param_0) {
+ u32 r31 = param_0->getSeqCtrl()->readByte();
+ s32 r30 = 0;
+ if ((r31 & 0x80) == 0) {
+ r30 = parseNoteOn(param_0, r31);
+ } else {
+ switch (r31 & 0xf0) {
+ case 0x80:
+ r30 = parseNoteOff(param_0, r31 & 0xf);
+ break;
+ case 0x90:
+ r30 = parseRegCommand(param_0, (r31 & 7) + 1);
+ break;
+ default:
+ r30 = parseCommand(param_0, r31, 0);
+ break;
+ }
+ }
+ return r30;
}
-#pragma pop
-
-#pragma push
-#pragma force_active on
-REGISTER_CTORS(0x80295950, __sinit_JASSeqParser_cpp);
-#pragma pop
-
-/* ############################################################################################## */
-/* 803C7650-803C7670 024770 0020+00 0/0 2/2 0/0 .data __vt__12JASSeqParser */
-SECTION_DATA extern void* __vt__12JASSeqParser[8] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__12JASSeqParserFv,
- (void*)parse__12JASSeqParserFP8JASTrack,
- (void*)execNoteOnMidi__12JASSeqParserFP8JASTrackUlUlUl,
- (void*)execNoteOnGate__12JASSeqParserFP8JASTrackUlUlUlUl,
- (void*)execNoteOff__12JASSeqParserFP8JASTrackUl,
- (void*)execCommand__12JASSeqParserFP8JASTrackM12JASSeqParserFPCvPvP8JASTrackPUl_lUlPUl,
-};
-
-/* 8039B018-8039B018 027678 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
diff --git a/libs/JSystem/JAudio2/JASTrack.cpp b/libs/JSystem/JAudio2/JASTrack.cpp
index 86d4be276a..0a9122bd61 100644
--- a/libs/JSystem/JAudio2/JASTrack.cpp
+++ b/libs/JSystem/JAudio2/JASTrack.cpp
@@ -23,29 +23,6 @@ struct TNodeLinkList {
}; // namespace JGadget
-struct JASTrackPort {
- /* 8029354C */ void init();
- /* 8029357C */ void readImport(u32);
- /* 802935A0 */ void readExport(u32);
- /* 802935C4 */ void writeImport(u32, u16);
- /* 802935E8 */ void writeExport(u32, u16);
-};
-
-struct JASSeqCtrl {
- struct IntrType {};
-
- /* 802938BC */ JASSeqCtrl();
- /* 80293924 */ void init();
- /* 80293980 */ void start(void*, u32);
- /* 802939C4 */ void tickProc(JASTrack*);
- /* 80293ABC */ void interrupt(JASSeqCtrl::IntrType);
-};
-
-struct JASRegisterParam {
- /* 80293644 */ JASRegisterParam();
- /* 80293664 */ void init();
-};
-
template <typename A0>
struct JASMemPool_MultiThreaded {};
/* JASMemPool_MultiThreaded<JASTrack> */
@@ -442,7 +419,7 @@ asm void JASTrack::closeChild(u32 param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASTrack::openChild(u32 param_0) {
+asm JASTrack* JASTrack::openChild(u32 param_0) {
nofralloc
#include "asm/JSystem/JAudio2/JASTrack/openChild__8JASTrackFUl.s"
}
@@ -484,7 +461,7 @@ asm void JASTrack::channelStart(JASTrack::TChannelMgr* param_0, u32 param_1, u32
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASTrack::noteOn(u32 param_0, u32 param_1, u32 param_2) {
+asm int JASTrack::noteOn(u32 param_0, u32 param_1, u32 param_2) {
nofralloc
#include "asm/JSystem/JAudio2/JASTrack/noteOn__8JASTrackFUlUlUl.s"
}
@@ -501,7 +478,7 @@ SECTION_SDATA2 static f64 lit_954 = 4503599627370496.0 /* cast u32 to float */;
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASTrack::gateOn(u32 param_0, u32 param_1, f32 param_2, u32 param_3) {
+asm int JASTrack::gateOn(u32 param_0, u32 param_1, f32 param_2, u32 param_3) {
nofralloc
#include "asm/JSystem/JAudio2/JASTrack/gateOn__8JASTrackFUlUlfUl.s"
}
@@ -511,7 +488,7 @@ asm void JASTrack::gateOn(u32 param_0, u32 param_1, f32 param_2, u32 param_3) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASTrack::noteOff(u32 param_0, u16 param_1) {
+asm int JASTrack::noteOff(u32 param_0, u16 param_1) {
nofralloc
#include "asm/JSystem/JAudio2/JASTrack/noteOff__8JASTrackFUlUs.s"
}
@@ -694,7 +671,7 @@ asm void JASTrack::setIIR(s16 const* param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASTrack::readPortSelf(u32 param_0) {
+asm u16 JASTrack::readPortSelf(u32 param_0) {
nofralloc
#include "asm/JSystem/JAudio2/JASTrack/readPortSelf__8JASTrackFUl.s"
}
@@ -724,7 +701,7 @@ asm void JASTrack::writePort(u32 param_0, u16 param_1) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void JASTrack::readPort(u32 param_0) {
+asm u16 JASTrack::readPort(u32 param_0) {
nofralloc
#include "asm/JSystem/JAudio2/JASTrack/readPort__8JASTrackFUl.s"
}
diff --git a/libs/JSystem/JAudio2/JASTrackPort.cpp b/libs/JSystem/JAudio2/JASTrackPort.cpp
index 1daa7dc839..beeaaf5488 100644
--- a/libs/JSystem/JAudio2/JASTrackPort.cpp
+++ b/libs/JSystem/JAudio2/JASTrackPort.cpp
@@ -4,108 +4,46 @@
//
#include "JSystem/JAudio2/JASTrackPort.h"
-#include "dolphin/types.h"
-
-//
-// Types:
-//
-
-struct JASTrackPort {
- /* 8029354C */ void init();
- /* 8029357C */ void readImport(u32);
- /* 802935A0 */ void readExport(u32);
- /* 802935C4 */ void writeImport(u32, u16);
- /* 802935E8 */ void writeExport(u32, u16);
- /* 8029360C */ void checkImport(u32) const;
- /* 80293628 */ void checkExport(u32) const;
-};
-
-//
-// Forward References:
-//
-
-extern "C" void init__12JASTrackPortFv();
-extern "C" void readImport__12JASTrackPortFUl();
-extern "C" void readExport__12JASTrackPortFUl();
-extern "C" void writeImport__12JASTrackPortFUlUs();
-extern "C" void writeExport__12JASTrackPortFUlUs();
-extern "C" void checkImport__12JASTrackPortCFUl();
-extern "C" void checkExport__12JASTrackPortCFUl();
-
-//
-// External References:
-//
-
-//
-// Declarations:
-//
/* 8029354C-8029357C 28DE8C 0030+00 0/0 1/1 0/0 .text init__12JASTrackPortFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASTrackPort::init() {
- nofralloc
-#include "asm/JSystem/JAudio2/JASTrackPort/init__12JASTrackPortFv.s"
+void JASTrackPort::init() {
+ for (int i = 0; i < 16; i++) {
+ field_0x4[i] = 0;
+ }
+ field_0x0 = 0;
+ field_0x2 = 0;
}
-#pragma pop
/* 8029357C-802935A0 28DEBC 0024+00 0/0 1/1 0/0 .text readImport__12JASTrackPortFUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASTrackPort::readImport(u32 param_0) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASTrackPort/readImport__12JASTrackPortFUl.s"
+u16 JASTrackPort::readImport(u32 port_num) {
+ field_0x0 = field_0x0 & ~(1 << port_num);
+ return field_0x4[port_num];
}
-#pragma pop
/* 802935A0-802935C4 28DEE0 0024+00 0/0 1/1 0/0 .text readExport__12JASTrackPortFUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASTrackPort::readExport(u32 param_0) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASTrackPort/readExport__12JASTrackPortFUl.s"
+u16 JASTrackPort::readExport(u32 port_num) {
+ field_0x2 = field_0x2 & ~(1 << port_num);
+ return field_0x4[port_num];
}
-#pragma pop
/* 802935C4-802935E8 28DF04 0024+00 0/0 1/1 0/0 .text writeImport__12JASTrackPortFUlUs */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASTrackPort::writeImport(u32 param_0, u16 param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASTrackPort/writeImport__12JASTrackPortFUlUs.s"
+void JASTrackPort::writeImport(u32 port_num, u16 param_1) {
+ field_0x0 = field_0x0 | (1 << port_num);
+ field_0x4[port_num] = param_1;
}
-#pragma pop
/* 802935E8-8029360C 28DF28 0024+00 0/0 1/1 0/0 .text writeExport__12JASTrackPortFUlUs */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASTrackPort::writeExport(u32 param_0, u16 param_1) {
- nofralloc
-#include "asm/JSystem/JAudio2/JASTrackPort/writeExport__12JASTrackPortFUlUs.s"
+void JASTrackPort::writeExport(u32 port_num, u16 param_1) {
+ field_0x2 = field_0x2 | (1 << port_num);
+ field_0x4[port_num] = param_1;
}
-#pragma pop
/* 8029360C-80293628 28DF4C 001C+00 0/0 1/1 0/0 .text checkImport__12JASTrackPortCFUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASTrackPort::checkImport(u32 param_0) const {
- nofralloc
-#include "asm/JSystem/JAudio2/JASTrackPort/checkImport__12JASTrackPortCFUl.s"
+u32 JASTrackPort::checkImport(u32 param_0) const {
+ return field_0x0 & 1 << param_0 ? 1 : 0;
}
-#pragma pop
/* 80293628-80293644 28DF68 001C+00 0/0 1/1 0/0 .text checkExport__12JASTrackPortCFUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void JASTrackPort::checkExport(u32 param_0) const {
- nofralloc
-#include "asm/JSystem/JAudio2/JASTrackPort/checkExport__12JASTrackPortCFUl.s"
+u32 JASTrackPort::checkExport(u32 param_0) const {
+ return field_0x2 & 1 << param_0 ? 1 : 0;
}
-#pragma pop