Begin transfer data to SPU

From Final Fantasy Hacktics Wiki
Revision as of 07:57, 21 January 2025 by Talcall (talk | contribs)
Jump to navigation Jump to search

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