Handle Tutorial Command: Shift
Jump to navigation
Jump to search
8012ddc8: 27bdffe8 addiu r29,r29,-0x0018 8012ddcc: afbf0014 sw r31,0x0014(r29) 8012ddd0: afbe0010 sw r30,0x0010(r29) 8012ddd4: 03a0f021 addu r30,r29,r0 8012ddd8: 3c02801d lui r2,0x801d 8012dddc: 8c42c574 lw r2,-0x3a8c(r2) # *0x801cc574 8012dde0: 00000000 nop 8012dde4: 1040001b beq r2,r0,0x8012de54 # if (*0x801cc574 != 0) { 8012dde8: 00000000 nop 8012ddec: 0c0498ea jal 0x801263a8 # result_0x1263a8 = 0x1263a8 (); // Returns *0x8018df7c unless it's zero (then it returns 1). 8012ddf0: 00000000 nop 8012ddf4: 3c03801d lui r3,0x801d 8012ddf8: 8c63c574 lw r3,-0x3a8c(r3) # *0x801cc574 8012ddfc: 00000000 nop 8012de00: 00621023 subu r2,r3,r2 # *0x801cc574 - result_0x1263a8 8012de04: 3c01801d lui r1,0x801d 8012de08: ac22c574 sw r2,-0x3a8c(r1) # *0x801cc574 = *0x801cc574 - result_0x1263a8 8012de0c: 3c01801d lui r1,0x801d 8012de10: a420d810 sh r0,-0x27f0(r1) # *0x801cd810 = 0 8012de14: 3c02801d lui r2,0x801d 8012de18: 8c42c574 lw r2,-0x3a8c(r2) # *0x801cc574 8012de1c: 00000000 nop 8012de20: 1c40000a bgtz r2,0x8012de4c # if (*0x801cc574 <= 0) { 8012de24: 00000000 nop 8012de28: 3c01801d lui r1,0x801d 8012de2c: ac20c574 sw r0,-0x3a8c(r1) # *0x801cc574 = 0 8012de30: 3c03801d lui r3,0x801d 8012de34: 8c63c570 lw r3,-0x3a90(r3) # commandPtr 8012de38: 00000000 nop 8012de3c: 24620001 addiu r2,r3,0x0001 # commandPtr + 1 8012de40: 00401821 addu r3,r2,r0 8012de44: 3c01801d lui r1,0x801d # commandPtr = commandPtr + 1 8012de48: ac23c570 sw r3,-0x3a90(r1) # 8012de4c: 0804b7a0 j 0x8012de80 # } 8012de50: 00000000 nop # } else { 8012de54: 3402001e ori r2,r0,0x001e 8012de58: 3c01801d lui r1,0x801d 8012de5c: ac22c574 sw r2,-0x3a8c(r1) # *0x801cc574 = 0x1e 8012de60: 3c02801d lui r2,0x801d 8012de64: 8c42c570 lw r2,-0x3a90(r2) # commandPtr 8012de68: 00000000 nop 8012de6c: 90430000 lbu r3,0x0000(r2) # command 8012de70: 34040001 ori r4,r0,0x0001 8012de74: 00641004 sllv r2,r4,r3 # 1 << command 8012de78: 3c01801d lui r1,0x801d 8012de7c: a422d810 sh r2,-0x27f0(r1) # *0x801cd810 = (1 << command) # } 8012de80: 03c0e821 addu r29,r30,r0 8012de84: 8fbf0014 lw r31,0x0014(r29) 8012de88: 8fbe0010 lw r30,0x0010(r29) 8012de8c: 27bd0018 addiu r29,r29,0x0018 8012de90: 03e00008 jr r31 8012de94: 00000000 nop