//Load links //ROM address: 0x00C08520 //RAM address: 0x803D9820 //Null relocation that is no longer needed: //ROM @ 0x00C24DDC: 00000000 .set noat .set noreorder .global loadlinks .ent loadlinks loadlinks: addiu $sp, $sp, 0xFFC0 sw $a0, 0x0040($sp) sw $a2, 0x0048($sp) sw $ra, 0x002C($sp) sw $a3, 0x004C($sp) lui $t0, 0x8022 ori $t0, $t0, 0x45B0 bne $t0, $s0, return nop ori $s7, $zero, 3 // $s7's value is unimportant at this point loop: lw $a1, 0x0040($sp) // arg 1 addiu $a0, $a1, 0x1C24 // arg 0 ori $a2, $zero, 0x0000 // Actor number lw $a3, 0x24($s0) lw $t1, 0x28($s0) // X pos sw $t1, 0x0010($sp) // Y pos lw $t1, 0x2C($s0) sw $t1, 0x0014($sp) // Z pos sd $zero, 0x0018($sp) // X/Y rot I used store double since I needed the space sw $zero, 0x0020($sp) // Z rot ori $t0, $zero, 0x0FFF jal ActorSpawn // actor spawn function sw $t0, 0x0024($sp) // Variable addiu $s7, $s7, 0xFFFF bne $s7, $zero, loop sb $s7, 0x001F($v0) // Controller number return: lw $ra, 0x002C($sp) jr $ra addiu $sp, $sp, 0x0040 .end loadlinks .set at .set reorder