JOBSTTS.OUT 001e4ed0 - 001e4f78
Jump to navigation
Jump to search
001e4ed0: beq r4,r0,0x001e4f74 #skip routine if r4 is 0 001e4ed4: addu r2,r0,r0 #clear r2 001e4ed8: lui r2,0x801f 001e4edc: lbu r2,0x0044(r2) #r2 = byte at 0x801f0044 001e4ee0: nop 001e4ee4: beq r2,r0,0x001e4f00 #jump forward if r2 is empty 001e4ee8: addu r7,r0,r0 #clear r7 001e4eec: ori r2,r0,0x0007 #r2 = 7 001e4ef0: lui r1,0x801f 001e4ef4: sw r2,0x0048(r1) #store 7 in 0x801f0048 001e4ef8: lui r1,0x801f 001e4efc: sb r0,0x0044(r1) #clear 0x801f0044 001e4f00: addiu r4,r4,-0x0001 #r4-- 001e4f04: addiu r2,r0,-0x0001 #r2 = -1 001e4f08: beq r4,r2,0x001e4f74 #end routine if r4 is -1 001e4f0c: addu r2,r7,r0 #r7 is return value 001e4f10: ori r10,r0,0x0001 #r10 is 1 001e4f14: ori r9,r0,0x0007 #r9 is 7 001e4f18: addiu r8,r0,-0x0001 #r8 is -1 001e4f1c: lui r6,0x8020 001e4f20: lw r6,-0x58ec(r6) #r6 = word at 0x801fa714 001e4f24: lui r3,0x801f 001e4f28: lw r3,0x0048(r3) #r3 = word at 0x801f0048 (could be 7?) 001e4f2c: lbu r2,0x0000(r6) #r2 = value pointed at from 0x801fa714 pointer 001e4f30: addiu r5,r3,-0x0001 #r5 = r3 - 1 001e4f34: lui r1,0x801f 001e4f38: sw r5,0x0048(r1) #store r5 at 0x801f0048 001e4f3c: srav r2,r2,r3 #rightshift r2 by r3 bytes (could be 7?) 001e4f40: andi r2,r2,0x0001 #r2 = far right byte 001e4f44: beq r2,r0,0x001e4f50 #skip if r2 is odd 001e4f48: sllv r2,r10,r4 #r2 = r10 leftshifted r4 001e4f4c: or r7,r7,r2 #r7 = r7 U r2 001e4f50: bgez r5,0x001e4f6c #skip down if r5 is positive 001e4f54: addiu r4,r4,-0x0001 #r4-- 001e4f58: addiu r2,r6,0x0001 #r2 is r6 + 1 001e4f5c: lui r1,0x801f 001e4f60: sw r9,0x0048(r1) #store r9 in 0x801f0048 001e4f64: lui r1,0x8020 001e4f68: sw r2,-0x58ec(r1) #store r2 in 0x801fa714 001e4f6c: bne r4,r8,0x001e4f1c #loop if r4 and r8 aren't equal 001e4f70: addu r2,r7,r0 #return value is r7 001e4f74: jr r31 001e4f78: nop