Begin transfer data to SPU
Revision as of 07:57, 21 January 2025 by Talcall (talk | contribs) (Talcall moved page 0001915c - 000191c0 to Begin transfer data to SPU)
p1 = ram memory address to read from p2 = size (bytes) of data to transfer
0001915c: 27bdffe0 addiu r29,r29,0xffe0 00019160: afb10014 sw r17,0x0014(r29) 00019164: 00808821 addu r17,r4,r0 00019168: afb00010 sw r16,0x0010(r29) 0001916c: 00a08021 addu r16,r5,r0 00019170: 3c028003 lui r2,0x8003 00019174: 9442ad5c lhu r2,-0x52a4(r2) instruction to parse 00019178: 3c058003 lui r5,0x8003 0001917c: 8ca5ad6c lw r5,-0x5294(r5) 3 00019180: 34040002 ori r4,r0,0x0002 00019184: afbf0018 sw r31,0x0018(r29) 00019188: 0c006391 jal 0x00018e44 00018e44 - 000190d0 (2, instruction, null, null) 0001918c: 00a22804 sllv r5,r2,r5 instruction to parse to spu sound data transfer << 3 (the shift is just undone in the routine I'm going to stab someone) 00019190: 0c006391 jal 0x00018e44 00018e44 - 000190d0 (0, null, null, null) 00019194: 00002021 addu r4,r0,r0 00019198: 34040003 ori r4,r0,0x0003 0001919c: 02202821 addu r5,r17,r0 000191a0: 0c006391 jal 0x00018e44 00018e44 - 000190d0 (3, p1, p2, null) 000191a4: 02003021 addu r6,r16,r0 000191a8: 02001021 addu r2,r16,r0 return p2 000191ac: 8fbf0018 lw r31,0x0018(r29) 000191b0: 8fb10014 lw r17,0x0014(r29) 000191b4: 8fb00010 lw r16,0x0010(r29) 000191b8: 27bd0020 addiu r29,r29,0x0020 000191bc: 03e00008 jr r31 000191c0: 00000000 nop