Difference between revisions of "Begin transfer data to SPU"
Jump to navigation
Jump to search
(Created page with "<font face='Courier New'> 0001915c: 27bdffe0 addiu r29,r29,0xffe0 00019160: afb10014 sw r17,0x0014(r29) 00019164: 00808821 addu r17,r4,r0 00019168: afb00010 sw r16,0x001...") |
m |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<font face='Courier New'> | <font face='Courier New'> | ||
− | + | p1 = ram memory address to read from | |
+ | p2 = size (bytes) of data to transfer | ||
+ | |||
0001915c: 27bdffe0 addiu r29,r29,0xffe0 | 0001915c: 27bdffe0 addiu r29,r29,0xffe0 | ||
00019160: afb10014 sw r17,0x0014(r29) | 00019160: afb10014 sw r17,0x0014(r29) | ||
Line 7: | Line 9: | ||
0001916c: 00a08021 addu r16,r5,r0 | 0001916c: 00a08021 addu r16,r5,r0 | ||
00019170: 3c028003 lui r2,0x8003 | 00019170: 3c028003 lui r2,0x8003 | ||
− | 00019174: 9442ad5c lhu r2,-0x52a4(r2) | + | 00019174: 9442ad5c lhu r2,-0x52a4(r2) instruction to parse |
00019178: 3c058003 lui r5,0x8003 | 00019178: 3c058003 lui r5,0x8003 | ||
− | 0001917c: 8ca5ad6c lw r5,-0x5294(r5) | + | 0001917c: 8ca5ad6c lw r5,-0x5294(r5) 3 |
00019180: 34040002 ori r4,r0,0x0002 | 00019180: 34040002 ori r4,r0,0x0002 | ||
00019184: afbf0018 sw r31,0x0018(r29) | 00019184: afbf0018 sw r31,0x0018(r29) | ||
− | 00019188: 0c006391 jal 0x00018e44 | + | 00019188: 0c006391 jal 0x00018e44 [[SPU transfer control]] (2, instruction, null, null) |
− | 0001918c: 00a22804 sllv r5,r2,r5 | + | 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 | + | 00019190: 0c006391 jal 0x00018e44 [[SPU transfer control]] (0, null, null, null) |
00019194: 00002021 addu r4,r0,r0 | 00019194: 00002021 addu r4,r0,r0 | ||
00019198: 34040003 ori r4,r0,0x0003 | 00019198: 34040003 ori r4,r0,0x0003 | ||
0001919c: 02202821 addu r5,r17,r0 | 0001919c: 02202821 addu r5,r17,r0 | ||
− | 000191a0: 0c006391 jal 0x00018e44 | + | 000191a0: 0c006391 jal 0x00018e44 [[SPU transfer control]] (3, p1, p2, null) |
000191a4: 02003021 addu r6,r16,r0 | 000191a4: 02003021 addu r6,r16,r0 | ||
− | 000191a8: 02001021 addu r2,r16,r0 | + | 000191a8: 02001021 addu r2,r16,r0 return p2 |
000191ac: 8fbf0018 lw r31,0x0018(r29) | 000191ac: 8fbf0018 lw r31,0x0018(r29) | ||
000191b0: 8fb10014 lw r17,0x0014(r29) | 000191b0: 8fb10014 lw r17,0x0014(r29) |
Latest revision as of 00:51, 22 January 2025
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 SPU transfer control (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 SPU transfer control (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 SPU transfer control (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