JASDriverIF, JASAiCtrl, JASDSPInterface (#1907)

* JASDriverIF

* JASDriverIF sinit

* JASAiCtrl

* JASDSPInterface
This commit is contained in:
Jcw87
2023-09-03 01:34:50 +03:00
committed by GitHub
parent 71b0551040
commit ce78c773b7
69 changed files with 787 additions and 1419 deletions
@@ -1,59 +0,0 @@
lbl_8029C900:
/* 8029C900 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029C904 7C 08 02 A6 */ mflr r0
/* 8029C908 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029C90C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8029C910 93 C1 00 08 */ stw r30, 8(r1)
/* 8029C914 80 6D 8D 24 */ lwz r3, sDspDacWriteBuffer__9JASDriver(r13)
/* 8029C918 38 63 00 01 */ addi r3, r3, 1
/* 8029C91C 88 0D 82 28 */ lbz r0, data_804507A8(r13)
/* 8029C920 7C 03 00 00 */ cmpw r3, r0
/* 8029C924 40 82 00 08 */ bne lbl_8029C92C
/* 8029C928 38 60 00 00 */ li r3, 0
lbl_8029C92C:
/* 8029C92C 80 0D 8D 28 */ lwz r0, sDspDacReadBuffer__9JASDriver(r13)
/* 8029C930 7C 03 00 00 */ cmpw r3, r0
/* 8029C934 40 82 00 10 */ bne lbl_8029C944
/* 8029C938 38 00 00 00 */ li r0, 0
/* 8029C93C 90 0D 8D 2C */ stw r0, sDspStatus__9JASDriver(r13)
/* 8029C940 48 00 00 84 */ b lbl_8029C9C4
lbl_8029C944:
/* 8029C944 90 6D 8D 24 */ stw r3, sDspDacWriteBuffer__9JASDriver(r13)
/* 8029C948 48 00 00 A9 */ bl getSubFrames__9JASDriverFv
/* 8029C94C 90 6D 8D 58 */ stw r3, snIntCount__14JASAudioThread(r13)
/* 8029C950 38 60 00 07 */ li r3, 7
/* 8029C954 3C 80 80 3A */ lis r4, JASAiCtrl__stringBase0@ha /* 0x8039B2F0@ha */
/* 8029C958 38 84 B2 F0 */ addi r4, r4, JASAiCtrl__stringBase0@l /* 0x8039B2F0@l */
/* 8029C95C 38 84 00 1C */ addi r4, r4, 0x1c
/* 8029C960 4B FF 45 85 */ bl start__8JASProbeFlPCc
/* 8029C964 48 00 00 A1 */ bl getFrameSamples__9JASDriverFv
/* 8029C968 7C 7E 1B 78 */ mr r30, r3
/* 8029C96C 80 6D 8D 20 */ lwz r3, sDspDacBuffer__9JASDriver(r13)
/* 8029C970 80 0D 8D 24 */ lwz r0, sDspDacWriteBuffer__9JASDriver(r13)
/* 8029C974 54 00 10 3A */ slwi r0, r0, 2
/* 8029C978 7F E3 00 2E */ lwzx r31, r3, r0
/* 8029C97C 48 00 00 75 */ bl getSubFrames__9JASDriverFv
/* 8029C980 7F E4 FB 78 */ mr r4, r31
/* 8029C984 57 C0 08 3C */ slwi r0, r30, 1
/* 8029C988 7C BF 02 14 */ add r5, r31, r0
/* 8029C98C 48 00 10 59 */ bl syncFrame__6JASDspFUlUlUl
/* 8029C990 38 00 00 01 */ li r0, 1
/* 8029C994 90 0D 8D 2C */ stw r0, sDspStatus__9JASDriver(r13)
/* 8029C998 4B FF FD 2D */ bl updateDSP__9JASDriverFv
/* 8029C99C 81 8D 8D 30 */ lwz r12, sDspDacCallback__9JASDriver(r13)
/* 8029C9A0 28 0C 00 00 */ cmplwi r12, 0
/* 8029C9A4 41 82 00 20 */ beq lbl_8029C9C4
/* 8029C9A8 80 6D 8D 20 */ lwz r3, sDspDacBuffer__9JASDriver(r13)
/* 8029C9AC 80 0D 8D 24 */ lwz r0, sDspDacWriteBuffer__9JASDriver(r13)
/* 8029C9B0 54 00 10 3A */ slwi r0, r0, 2
/* 8029C9B4 7C 63 00 2E */ lwzx r3, r3, r0
/* 8029C9B8 7F C4 F3 78 */ mr r4, r30
/* 8029C9BC 7D 89 03 A6 */ mtctr r12
/* 8029C9C0 4E 80 04 21 */ bctrl
lbl_8029C9C4:
/* 8029C9C4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8029C9C8 83 C1 00 08 */ lwz r30, 8(r1)
/* 8029C9CC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029C9D0 7C 08 03 A6 */ mtlr r0
/* 8029C9D4 38 21 00 10 */ addi r1, r1, 0x10
/* 8029C9D8 4E 80 00 20 */ blr
@@ -1,3 +0,0 @@
lbl_8029C9E8:
/* 8029C9E8 C0 2D 82 30 */ lfs f1, sDacRate__9JASDriver(r13)
/* 8029C9EC 4E 80 00 20 */ blr
@@ -1,4 +0,0 @@
lbl_8029C9F8:
/* 8029C9F8 80 0D 82 34 */ lwz r0, sSubFrames__9JASDriver(r13)
/* 8029C9FC 1C 60 00 A0 */ mulli r3, r0, 0xa0
/* 8029CA00 4E 80 00 20 */ blr
@@ -1,4 +0,0 @@
lbl_8029CA04:
/* 8029CA04 80 0D 82 34 */ lwz r0, sSubFrames__9JASDriver(r13)
/* 8029CA08 1C 60 00 50 */ mulli r3, r0, 0x50
/* 8029CA0C 4E 80 00 20 */ blr
@@ -1,4 +0,0 @@
lbl_8029C9DC:
/* 8029C9DC 90 6D 8D 3C */ stw r3, extMixCallback__9JASDriver(r13)
/* 8029C9E0 90 8D 82 2C */ stw r4, sMixMode__9JASDriver(r13)
/* 8029C9E4 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_8029C4E4:
/* 8029C4E4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029C4E8 7C 08 02 A6 */ mflr r0
/* 8029C4EC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029C4F0 48 0B 38 4D */ bl AIStartDMA
/* 8029C4F4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029C4F8 7C 08 03 A6 */ mtlr r0
/* 8029C4FC 38 21 00 10 */ addi r1, r1, 0x10
/* 8029C500 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_8029C504:
/* 8029C504 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029C508 7C 08 02 A6 */ mflr r0
/* 8029C50C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029C510 48 0B 38 45 */ bl AIStopDMA
/* 8029C514 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029C518 7C 08 03 A6 */ mtlr r0
/* 8029C51C 38 21 00 10 */ addi r1, r1, 0x10
/* 8029C520 4E 80 00 20 */ blr
@@ -1,32 +0,0 @@
lbl_8029E0BC:
/* 8029E0BC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8029E0C0 7C 08 02 A6 */ mflr r0
/* 8029E0C4 90 01 00 24 */ stw r0, 0x24(r1)
/* 8029E0C8 39 61 00 20 */ addi r11, r1, 0x20
/* 8029E0CC 48 0C 41 11 */ bl _savegpr_29
/* 8029E0D0 3B E0 00 00 */ li r31, 0
/* 8029E0D4 80 8D 8D 68 */ lwz r4, CH_BUF__6JASDsp(r13)
/* 8029E0D8 54 60 20 36 */ slwi r0, r3, 4
/* 8029E0DC 1C 00 01 80 */ mulli r0, r0, 0x180
/* 8029E0E0 7F C4 02 14 */ add r30, r4, r0
/* 8029E0E4 3B A0 00 00 */ li r29, 0
lbl_8029E0E8:
/* 8029E0E8 57 FF 0C 3C */ rlwinm r31, r31, 1, 0x10, 0x1e
/* 8029E0EC 7F C3 F3 78 */ mr r3, r30
/* 8029E0F0 4B FF FC 7D */ bl isActive__Q26JASDsp8TChannelCFv
/* 8029E0F4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8029E0F8 41 82 00 0C */ beq lbl_8029E104
/* 8029E0FC 63 E0 00 01 */ ori r0, r31, 1
/* 8029E100 54 1F 04 3E */ clrlwi r31, r0, 0x10
lbl_8029E104:
/* 8029E104 3B BD 00 01 */ addi r29, r29, 1
/* 8029E108 2C 1D 00 10 */ cmpwi r29, 0x10
/* 8029E10C 3B DE 01 80 */ addi r30, r30, 0x180
/* 8029E110 41 80 FF D8 */ blt lbl_8029E0E8
/* 8029E114 7F E3 FB 78 */ mr r3, r31
/* 8029E118 39 61 00 20 */ addi r11, r1, 0x20
/* 8029E11C 48 0C 41 0D */ bl _restgpr_29
/* 8029E120 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8029E124 7C 08 03 A6 */ mtlr r0
/* 8029E128 38 21 00 20 */ addi r1, r1, 0x20
/* 8029E12C 4E 80 00 20 */ blr
@@ -1,22 +0,0 @@
lbl_8029D958:
/* 8029D958 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029D95C 7C 08 02 A6 */ mflr r0
/* 8029D960 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029D964 88 0D 8D 75 */ lbz r0, struct_804512F4+0x1(r13)
/* 8029D968 7C 00 07 75 */ extsb. r0, r0
/* 8029D96C 40 82 00 10 */ bne lbl_8029D97C
/* 8029D970 38 00 00 01 */ li r0, 1
/* 8029D974 98 0D 8D 74 */ stb r0, struct_804512F4+0x0(r13)
/* 8029D978 98 0D 8D 75 */ stb r0, struct_804512F4+0x1(r13)
lbl_8029D97C:
/* 8029D97C 88 0D 8D 74 */ lbz r0, struct_804512F4+0x0(r13)
/* 8029D980 28 00 00 00 */ cmplwi r0, 0
/* 8029D984 41 82 00 10 */ beq lbl_8029D994
/* 8029D988 48 00 0D 99 */ bl DspBoot__FPFPv_v
/* 8029D98C 38 00 00 00 */ li r0, 0
/* 8029D990 98 0D 8D 74 */ stb r0, struct_804512F4+0x0(r13)
lbl_8029D994:
/* 8029D994 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029D998 7C 08 03 A6 */ mtlr r0
/* 8029D99C 38 21 00 10 */ addi r1, r1, 0x10
/* 8029D9A0 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_8029D9C4:
/* 8029D9C4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029D9C8 7C 08 02 A6 */ mflr r0
/* 8029D9CC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029D9D0 48 00 0F B1 */ bl DspFinishWork__FUs
/* 8029D9D4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029D9D8 7C 08 03 A6 */ mtlr r0
/* 8029D9DC 38 21 00 10 */ addi r1, r1, 0x10
/* 8029D9E0 4E 80 00 20 */ blr
@@ -1,14 +0,0 @@
lbl_8029DA6C:
/* 8029DA6C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029DA70 7C 08 02 A6 */ mflr r0
/* 8029DA74 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029DA78 80 6D 8D 68 */ lwz r3, CH_BUF__6JASDsp(r13)
/* 8029DA7C 38 80 60 00 */ li r4, 0x6000
/* 8029DA80 48 09 DB 2D */ bl DCFlushRange
/* 8029DA84 80 6D 8D 6C */ lwz r3, FX_BUF__6JASDsp(r13)
/* 8029DA88 38 80 00 80 */ li r4, 0x80
/* 8029DA8C 48 09 DB 21 */ bl DCFlushRange
/* 8029DA90 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029DA94 7C 08 03 A6 */ mtlr r0
/* 8029DA98 38 21 00 10 */ addi r1, r1, 0x10
/* 8029DA9C 4E 80 00 20 */ blr
@@ -1,10 +0,0 @@
lbl_8029DF8C:
/* 8029DF8C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029DF90 7C 08 02 A6 */ mflr r0
/* 8029DF94 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029DF98 38 80 01 80 */ li r4, 0x180
/* 8029DF9C 48 09 D6 11 */ bl DCFlushRange
/* 8029DFA0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029DFA4 7C 08 03 A6 */ mtlr r0
/* 8029DFA8 38 21 00 10 */ addi r1, r1, 0x10
/* 8029DFAC 4E 80 00 20 */ blr
@@ -1,4 +0,0 @@
lbl_8029DD60:
/* 8029DD60 38 00 00 01 */ li r0, 1
/* 8029DD64 B0 03 01 0A */ sth r0, 0x10a(r3)
/* 8029DD68 4E 80 00 20 */ blr
@@ -1,5 +0,0 @@
lbl_8029DA38:
/* 8029DA38 80 8D 8D 68 */ lwz r4, CH_BUF__6JASDsp(r13)
/* 8029DA3C 1C 03 01 80 */ mulli r0, r3, 0x180
/* 8029DA40 7C 64 02 14 */ add r3, r4, r0
/* 8029DA44 4E 80 00 20 */ blr
@@ -1,3 +0,0 @@
lbl_8029DA30:
/* 8029DA30 C0 2D 8D 70 */ lfs f1, sDSPVolume__6JASDsp(r13)
/* 8029DA34 4E 80 00 20 */ blr
@@ -1,13 +0,0 @@
lbl_8029DEC4:
/* 8029DEC4 A0 03 00 58 */ lhz r0, 0x58(r3)
/* 8029DEC8 28 00 00 00 */ cmplwi r0, 0
/* 8029DECC 41 82 00 10 */ beq lbl_8029DEDC
/* 8029DED0 A0 03 00 56 */ lhz r0, 0x56(r3)
/* 8029DED4 B0 03 00 54 */ sth r0, 0x54(r3)
/* 8029DED8 4E 80 00 20 */ blr
lbl_8029DEDC:
/* 8029DEDC 38 00 00 00 */ li r0, 0
/* 8029DEE0 B0 03 00 54 */ sth r0, 0x54(r3)
/* 8029DEE4 38 00 00 01 */ li r0, 1
/* 8029DEE8 B0 03 00 58 */ sth r0, 0x58(r3)
/* 8029DEEC 4E 80 00 20 */ blr
@@ -1,47 +0,0 @@
lbl_8029DAC8:
/* 8029DAC8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029DACC 7C 08 02 A6 */ mflr r0
/* 8029DAD0 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029DAD4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8029DAD8 38 60 60 00 */ li r3, 0x6000
/* 8029DADC 80 8D 8C 90 */ lwz r4, JASDram(r13)
/* 8029DAE0 38 A0 00 20 */ li r5, 0x20
/* 8029DAE4 48 03 12 2D */ bl __nwa__FUlP7JKRHeapi
/* 8029DAE8 90 6D 8D 68 */ stw r3, CH_BUF__6JASDsp(r13)
/* 8029DAEC 38 60 00 80 */ li r3, 0x80
/* 8029DAF0 80 8D 8C 90 */ lwz r4, JASDram(r13)
/* 8029DAF4 38 A0 00 20 */ li r5, 0x20
/* 8029DAF8 48 03 12 19 */ bl __nwa__FUlP7JKRHeapi
/* 8029DAFC 90 6D 8D 6C */ stw r3, FX_BUF__6JASDsp(r13)
/* 8029DB00 80 6D 8D 68 */ lwz r3, CH_BUF__6JASDsp(r13)
/* 8029DB04 38 80 60 00 */ li r4, 0x6000
/* 8029DB08 4B FF 19 79 */ bl bzero__7JASCalcFPvUl
/* 8029DB0C 80 6D 8D 6C */ lwz r3, FX_BUF__6JASDsp(r13)
/* 8029DB10 38 80 00 80 */ li r4, 0x80
/* 8029DB14 4B FF 19 6D */ bl bzero__7JASCalcFPvUl
/* 8029DB18 3B E0 00 00 */ li r31, 0
/* 8029DB1C 48 00 00 18 */ b lbl_8029DB34
lbl_8029DB20:
/* 8029DB20 7F E3 FB 78 */ mr r3, r31
/* 8029DB24 38 80 00 00 */ li r4, 0
/* 8029DB28 38 A0 00 00 */ li r5, 0
/* 8029DB2C 48 00 00 4D */ bl setFXLine__6JASDspFUcPsPQ26JASDsp13FxlineConfig_
/* 8029DB30 3B FF 00 01 */ addi r31, r31, 1
lbl_8029DB34:
/* 8029DB34 57 E0 06 3E */ clrlwi r0, r31, 0x18
/* 8029DB38 28 00 00 04 */ cmplwi r0, 4
/* 8029DB3C 41 80 FF E4 */ blt lbl_8029DB20
/* 8029DB40 38 60 00 40 */ li r3, 0x40
/* 8029DB44 80 8D 8D 68 */ lwz r4, CH_BUF__6JASDsp(r13)
/* 8029DB48 3C A0 80 3A */ lis r5, DSPRES_FILTER__6JASDsp@ha /* 0x8039B3A0@ha */
/* 8029DB4C 38 A5 B3 A0 */ addi r5, r5, DSPRES_FILTER__6JASDsp@l /* 0x8039B3A0@l */
/* 8029DB50 3C C0 80 3A */ lis r6, DSPADPCM_FILTER__6JASDsp@ha /* 0x8039B360@ha */
/* 8029DB54 38 C6 B3 60 */ addi r6, r6, DSPADPCM_FILTER__6JASDsp@l /* 0x8039B360@l */
/* 8029DB58 80 ED 8D 6C */ lwz r7, FX_BUF__6JASDsp(r13)
/* 8029DB5C 48 00 0A 05 */ bl DsetupTable__FUlUlUlUlUl
/* 8029DB60 4B FF FF 0D */ bl flushBuffer__6JASDspFv
/* 8029DB64 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8029DB68 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029DB6C 7C 08 03 A6 */ mtlr r0
/* 8029DB70 38 21 00 10 */ addi r1, r1, 0x10
/* 8029DB74 4E 80 00 20 */ blr
@@ -1,16 +0,0 @@
lbl_8029DCA4:
/* 8029DCA4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029DCA8 7C 08 02 A6 */ mflr r0
/* 8029DCAC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029DCB0 38 00 00 00 */ li r0, 0
/* 8029DCB4 B0 03 00 0C */ sth r0, 0xc(r3)
/* 8029DCB8 B0 03 00 02 */ sth r0, 2(r3)
/* 8029DCBC B0 03 01 0A */ sth r0, 0x10a(r3)
/* 8029DCC0 B0 03 00 00 */ sth r0, 0(r3)
/* 8029DCC4 B0 03 00 58 */ sth r0, 0x58(r3)
/* 8029DCC8 90 03 00 68 */ stw r0, 0x68(r3)
/* 8029DCCC 48 00 02 E5 */ bl initFilter__Q26JASDsp8TChannelFv
/* 8029DCD0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029DCD4 7C 08 03 A6 */ mtlr r0
/* 8029DCD8 38 21 00 10 */ addi r1, r1, 0x10
/* 8029DCDC 4E 80 00 20 */ blr
@@ -1,11 +0,0 @@
lbl_8029DAA0:
/* 8029DAA0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8029DAA4 7C 08 02 A6 */ mflr r0
/* 8029DAA8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8029DAAC 80 6D 8D 68 */ lwz r3, CH_BUF__6JASDsp(r13)
/* 8029DAB0 38 80 60 00 */ li r4, 0x6000
/* 8029DAB4 48 09 DA CD */ bl DCInvalidateRange
/* 8029DAB8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8029DABC 7C 08 03 A6 */ mtlr r0
/* 8029DAC0 38 21 00 10 */ addi r1, r1, 0x10
/* 8029DAC4 4E 80 00 20 */ blr
@@ -1,5 +0,0 @@
lbl_8029DD6C:
/* 8029DD6C A0 63 00 00 */ lhz r3, 0(r3)
/* 8029DD70 30 03 FF FF */ addic r0, r3, -1
/* 8029DD74 7C 60 19 10 */ subfe r3, r0, r3
/* 8029DD78 4E 80 00 20 */ blr

Some files were not shown because too many files have changed in this diff Show More