If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Final Fantasy IX/ROM map/CD3: Difference between revisions
< Final Fantasy IX | ROM map
Jump to navigation
Jump to search
Mantidactyle (talk | contribs) (Tetra Master board blocks) |
Mantidactyle (talk | contribs) |
||
Line 41: | Line 41: | ||
000aeab8: 10600009 beq r3,r0,0x000aeae0 ;if((r2 & 3) == 0), branch to 0x000aeae0 | 000aeab8: 10600009 beq r3,r0,0x000aeae0 ;if((r2 & 3) == 0), branch to 0x000aeae0 | ||
000aeabc: 00000000 nop | 000aeabc: 00000000 nop | ||
000aeac0: 0802babf j 0x000aeafc | 000aeac0: 0802babf j 0x000aeafc ;'''error trap''', jump to 0x000aeafc | ||
000aeac4: 00000000 nop | 000aeac4: 00000000 nop | ||
000aeac8: 10740009 beq r3,r20,0x000aeaf0 | 000aeac8: 10740009 beq r3,r20,0x000aeaf0 ;if((r2 & 3) == 2), branch to 0x000aeaf0 | ||
000aeacc: 00000000 nop | 000aeacc: 00000000 nop | ||
000aead0: 10730009 beq r3,r19,0x000aeaf8 | 000aead0: 10730009 beq r3,r19,0x000aeaf8 ;if((r2 & 3) == 3), branch to 0x000aeaf8 | ||
000aead4: 00000000 nop | 000aead4: 00000000 nop | ||
000aead8: 0802babf j 0x000aeafc | 000aead8: 0802babf j 0x000aeafc ;'''error trap''', jump to 0x000aeafc | ||
000aeadc: 00000000 nop | 000aeadc: 00000000 nop | ||
000aeae0: 0802babf j 0x000aeafc | 000aeae0: 0802babf j 0x000aeafc ;jump to 0x000aeafc | ||
000aeae4: a2000003 sb r0,0x0003(r16) | 000aeae4: a2000003 sb r0,0x0003(r16) ;store 0 in (r16+0x3) | ||
000aeae8: 0802babf j 0x000aeafc | 000aeae8: 0802babf j 0x000aeafc ;jump to 0x000aeafc | ||
000aeaec: a2030003 sb r3,0x0003(r16) | 000aeaec: a2030003 sb r3,0x0003(r16) ;store r3 in (r16+0x3) | ||
000aeaf0: 0802babf j 0x000aeafc | 000aeaf0: 0802babf j 0x000aeafc ;jump to 0x000aeafc | ||
000aeaf4: a2130003 sb r19,0x0003(r16) | 000aeaf4: a2130003 sb r19,0x0003(r16) ;store 3 in (r16+0x3) | ||
000aeaf8: a2140003 sb r20,0x0003(r16) | 000aeaf8: a2140003 sb r20,0x0003(r16) ;store 2 in (r16+0x3) | ||
000aeafc: 0c018acf jal 0x00062b3c | 000aeafc: 0c018acf jal 0x00062b3c ;jump to 0x00062b3c and link | ||
000aeb00: 2652001e addiu r18,r18,0x001e | 000aeb00: 2652001e addiu r18,r18,0x001e ;r18 += 0x1e | ||
000aeb04: 0c018acf jal 0x00062b3c | 000aeb04: 0c018acf jal 0x00062b3c ;jump to 0x00062b3c and link | ||
000aeb08: a2020004 sb r2,0x0004(r16) | 000aeb08: a2020004 sb r2,0x0004(r16) ;store r2 in (r16+0x4) | ||
000aeb0c: a2020005 sb r2,0x0005(r16) | 000aeb0c: a2020005 sb r2,0x0005(r16) ;store r2 in (r16+0x5) | ||
000aeb10: 0c018acf jal 0x00062b3c | 000aeb10: 0c018acf jal 0x00062b3c ;jump to 0x00062b3c and link | ||
000aeb14: a2110000 sb r17,0x0000(r16) | 000aeb14: a2110000 sb r17,0x0000(r16) ;store r17 in (r16) | ||
000aeb18: a2020001 sb r2,0x0001(r16) | 000aeb18: a2020001 sb r2,0x0001(r16) ;store r2 in (r16+0x1) | ||
000aeb1c: 02201021 addu r2,r17,r0 | 000aeb1c: 02201021 addu r2,r17,r0 ;r2 = r17 | ||
000aeb20: 304200ff andi r2,r2,0x00ff | 000aeb20: 304200ff andi r2,r2,0x00ff ;r2 &= 0xFF | ||
000aeb24: 00021880 sll r3,r2,0x02 | 000aeb24: 00021880 sll r3,r2,0x02 ;r3 = r2 << 2 | ||
000aeb28: 00621821 addu r3,r3,r2 | 000aeb28: 00621821 addu r3,r3,r2 ;r3 += r2 | ||
000aeb2c: 00761821 addu r3,r3,r22 | 000aeb2c: 00761821 addu r3,r3,r22 ;r3 += r22 | ||
000aeb30: 90620000 lbu r2,0x0000(r3) | 000aeb30: 90620000 lbu r2,0x0000(r3) ;r2 = (r3) | ||
000aeb34: 00000000 nop | 000aeb34: 00000000 nop | ||
000aeb38: a2020002 sb r2,0x0002(r16) | 000aeb38: a2020002 sb r2,0x0002(r16) ;store r2 in (r16+0x2) | ||
000aeb3c: 90620001 lbu r2,0x0001(r3) | 000aeb3c: 90620001 lbu r2,0x0001(r3) ;r2 = (r3+0x1) | ||
000aeb40: 00000000 nop | 000aeb40: 00000000 nop | ||
000aeb44: a2020003 sb r2,0x0003(r16) | 000aeb44: a2020003 sb r2,0x0003(r16) ;store r2 in (r16+0x3) | ||
000aeb48: 90620002 lbu r2,0x0002(r3) | 000aeb48: 90620002 lbu r2,0x0002(r3) ;r2 = (r3+0x2) | ||
000aeb4c: 00000000 nop | 000aeb4c: 00000000 nop | ||
000aeb50: a2020004 sb r2,0x0004(r16) | 000aeb50: a2020004 sb r2,0x0004(r16) ;store r2 in (r16+0x4) | ||
000aeb54: 90620003 lbu r2,0x0003(r3) | 000aeb54: 90620003 lbu r2,0x0003(r3) ;r2 = (r3+0x3) | ||
000aeb58: 26310001 addiu r17,r17,0x0001 | 000aeb58: 26310001 addiu r17,r17,0x0001 ;r17++ | ||
000aeb5c: ae000034 sw r0,0x0034(r16) | 000aeb5c: ae000034 sw r0,0x0034(r16) ;store 0 in (r16+0x34) | ||
000aeb60: a2020005 sb r2,0x0005(r16) | 000aeb60: a2020005 sb r2,0x0005(r16) ;store r2 in (r16+0x5) | ||
000aeb64: 2a22000a slti r2,r17,0x000a | 000aeb64: 2a22000a slti r2,r17,0x000a | ||
000aeb68: 1440ffbf bne r2,r0,0x000aea68 | 000aeb68: 1440ffbf bne r2,r0,0x000aea68 ;if(r17<10), loop to 0x000aea68 | ||
000aeb6c: 2610003c addiu r16,r16,0x003c | 000aeb6c: 2610003c addiu r16,r16,0x003c ;r16 += 60 | ||
000aeb70: 24110005 addiu r17,r0,0x0005 | 000aeb70: 24110005 addiu r17,r0,0x0005 ;r17 = 5 | ||
000aeb74: 26a4012c addiu r4,r21,0x012c | 000aeb74: 26a4012c addiu r4,r21,0x012c ;r4 = r21 + 300 | ||
000aeb78: ac800034 sw r0,0x0034(r4) | 000aeb78: ac800034 sw r0,0x0034(r4) ;store r0 in (r4+0x34) | ||
000aeb7c: 26310001 addiu r17,r17,0x0001 | 000aeb7c: 26310001 addiu r17,r17,0x0001 ;r17++ | ||
000aeb80: 2a22000a slti r2,r17,0x000a | 000aeb80: 2a22000a slti r2,r17,0x000a | ||
000aeb84: 1440fffc bne r2,r0,0x000aeb78 | 000aeb84: 1440fffc bne r2,r0,0x000aeb78 ;if(r17<10), loop to 0x000aeb78 | ||
000aeb88: 2484003c addiu r4,r4,0x003c | 000aeb88: 2484003c addiu r4,r4,0x003c ;r4 += 60 | ||
000aeb8c: 8fbf002c lw r31,0x002c(r29) | 000aeb8c: 8fbf002c lw r31,0x002c(r29) ;r31 = (r29+0x2c) | ||
000aeb90: 8fb60028 lw r22,0x0028(r29) | 000aeb90: 8fb60028 lw r22,0x0028(r29) ;r22 = (r29+0x28) | ||
000aeb94: 8fb50024 lw r21,0x0024(r29) | 000aeb94: 8fb50024 lw r21,0x0024(r29) ;r21 = (r29+0x24) | ||
000aeb98: 8fb40020 lw r20,0x0020(r29) | 000aeb98: 8fb40020 lw r20,0x0020(r29) ;r20 = (r29+0x20) | ||
000aeb9c: 8fb3001c lw r19,0x001c(r29) | 000aeb9c: 8fb3001c lw r19,0x001c(r29) ;r19 = (r29+0x1c) | ||
000aeba0: 8fb20018 lw r18,0x0018(r29) | 000aeba0: 8fb20018 lw r18,0x0018(r29) ;r18 = (r29+0x18) | ||
000aeba4: 8fb10014 lw r17,0x0014(r29) | 000aeba4: 8fb10014 lw r17,0x0014(r29) ;r17 = (r29+0x14) | ||
000aeba8: 8fb00010 lw r16,0x0010(r29) | 000aeba8: 8fb00010 lw r16,0x0010(r29) ;r16 = (r29+0x10) | ||
000aebac: 03e00008 jr r31 | 000aebac: 03e00008 jr r31 ;jump to r31 | ||
000aebb0: 27bd0030 addiu r29,r29,0x0030 | 000aebb0: 27bd0030 addiu r29,r29,0x0030 ;r29 += 0x30 | ||
==Tetra Master PRNG call when entering the World Map, and ?== | ==Tetra Master PRNG call when entering the World Map, and ?== |
Revision as of 15:05, 19 October 2015
The following article is a ROM map for Final Fantasy IX/ROM map.
Tetra Master board blocks
000aea24: 27bdffd0 addiu r29,r29,0xffd0 ;r29 -= 0x30 000aea28: afb60028 sw r22,0x0028(r29) ;store r22 in (r29+0x28) 000aea2c: 3c168010 lui r22,0x8010 000aea30: 36d63800 ori r22,r22,0x3800 ;r22 = 0x80103800 000aea34: afb10014 sw r17,0x0014(r29) ;store r17 in (r29+0x14) 000aea38: 00008821 addu r17,r0,r0 ;r17 = 0 000aea3c: afb40020 sw r20,0x0020(r29) ;store r20 in (r29+0x20) 000aea40: 24140002 addiu r20,r0,0x0002 ;r20 = 2 000aea44: afb3001c sw r19,0x001c(r29) ;store r19 in (r29+0x1c) 000aea48: 24130003 addiu r19,r0,0x0003 ;r19 = 3 000aea4c: afb50024 sw r21,0x0024(r29) ;store r21 in (r29+0x24) 000aea50: 24950010 addiu r21,r4,0x0010 ;r21 = r4 + 0x10 000aea54: afb00010 sw r16,0x0010(r29) ;store r16 in (r29+0x10) 000aea58: 02a08021 addu r16,r21,r0 ;r16 = r21 000aea5c: afb20018 sw r18,0x0018(r29) ;store r18 in (r29+0x18) 000aea60: 02209021 addu r18,r17,r0 ;r18 = r17 000aea64: afbf002c sw r31,0x002c(r29) ;store r31 in (r29+0x2c) 000aea68: 240200dc addiu r2,r0,0x00dc ;r2 = 0xdc 000aea6c: ae02000c sw r2,0x000c(r16) ;store r2 in (r16+0xc) 000aea70: 24020028 addiu r2,r0,0x0028 ;r2 = 0x28 000aea74: ae120010 sw r18,0x0010(r16) ;store r18 in (r16+0x10) 000aea78: ae000014 sw r0,0x0014(r16) ;store 0 in (r16+0x14) 000aea7c: ae000018 sw r0,0x0018(r16) ;store 0 in (r16+0x18) 000aea80: ae000008 sw r0,0x0008(r16) ;store 0 in (r16+0x8) 000aea84: ae020030 sw r2,0x0030(r16) ;store r2 in (r16+0x30) 000aea88: 0c018acf jal 0x00062b3c ;PRNG call 000aea8c: a2000000 sb r0,0x0000(r16) ;store 0 in (r16) 000aea90: 0c018acf jal 0x00062b3c ;PRNG call 000aea94: a2020001 sb r2,0x0001(r16) ;store PRN[0;0x7FFF] in (r16+0x1) 000aea98: 0c018acf jal 0x00062b3c ;PRNG call 000aea9c: a2020002 sb r2,0x0002(r16) ;store PRN[0;0x7FFF] in (r16+0x2) 000aeaa0: 30430003 andi r3,r2,0x0003 000aeaa4: 24020001 addiu r2,r0,0x0001 000aeaa8: 1062000f beq r3,r2,0x000aeae8 ;if((r2 & 3) == 1), branch to 0x000aeae8 000aeaac: 28620002 slti r2,r3,0x0002 000aeab0: 10400005 beq r2,r0,0x000aeac8 ;if((r2 & 3) ≥ 2), branch to 0x000aeac8 000aeab4: 00000000 nop 000aeab8: 10600009 beq r3,r0,0x000aeae0 ;if((r2 & 3) == 0), branch to 0x000aeae0 000aeabc: 00000000 nop 000aeac0: 0802babf j 0x000aeafc ;error trap, jump to 0x000aeafc 000aeac4: 00000000 nop 000aeac8: 10740009 beq r3,r20,0x000aeaf0 ;if((r2 & 3) == 2), branch to 0x000aeaf0 000aeacc: 00000000 nop 000aead0: 10730009 beq r3,r19,0x000aeaf8 ;if((r2 & 3) == 3), branch to 0x000aeaf8 000aead4: 00000000 nop 000aead8: 0802babf j 0x000aeafc ;error trap, jump to 0x000aeafc 000aeadc: 00000000 nop 000aeae0: 0802babf j 0x000aeafc ;jump to 0x000aeafc 000aeae4: a2000003 sb r0,0x0003(r16) ;store 0 in (r16+0x3) 000aeae8: 0802babf j 0x000aeafc ;jump to 0x000aeafc 000aeaec: a2030003 sb r3,0x0003(r16) ;store r3 in (r16+0x3) 000aeaf0: 0802babf j 0x000aeafc ;jump to 0x000aeafc 000aeaf4: a2130003 sb r19,0x0003(r16) ;store 3 in (r16+0x3) 000aeaf8: a2140003 sb r20,0x0003(r16) ;store 2 in (r16+0x3) 000aeafc: 0c018acf jal 0x00062b3c ;jump to 0x00062b3c and link 000aeb00: 2652001e addiu r18,r18,0x001e ;r18 += 0x1e 000aeb04: 0c018acf jal 0x00062b3c ;jump to 0x00062b3c and link 000aeb08: a2020004 sb r2,0x0004(r16) ;store r2 in (r16+0x4) 000aeb0c: a2020005 sb r2,0x0005(r16) ;store r2 in (r16+0x5) 000aeb10: 0c018acf jal 0x00062b3c ;jump to 0x00062b3c and link 000aeb14: a2110000 sb r17,0x0000(r16) ;store r17 in (r16) 000aeb18: a2020001 sb r2,0x0001(r16) ;store r2 in (r16+0x1) 000aeb1c: 02201021 addu r2,r17,r0 ;r2 = r17 000aeb20: 304200ff andi r2,r2,0x00ff ;r2 &= 0xFF 000aeb24: 00021880 sll r3,r2,0x02 ;r3 = r2 << 2 000aeb28: 00621821 addu r3,r3,r2 ;r3 += r2 000aeb2c: 00761821 addu r3,r3,r22 ;r3 += r22 000aeb30: 90620000 lbu r2,0x0000(r3) ;r2 = (r3) 000aeb34: 00000000 nop 000aeb38: a2020002 sb r2,0x0002(r16) ;store r2 in (r16+0x2) 000aeb3c: 90620001 lbu r2,0x0001(r3) ;r2 = (r3+0x1) 000aeb40: 00000000 nop 000aeb44: a2020003 sb r2,0x0003(r16) ;store r2 in (r16+0x3) 000aeb48: 90620002 lbu r2,0x0002(r3) ;r2 = (r3+0x2) 000aeb4c: 00000000 nop 000aeb50: a2020004 sb r2,0x0004(r16) ;store r2 in (r16+0x4) 000aeb54: 90620003 lbu r2,0x0003(r3) ;r2 = (r3+0x3) 000aeb58: 26310001 addiu r17,r17,0x0001 ;r17++ 000aeb5c: ae000034 sw r0,0x0034(r16) ;store 0 in (r16+0x34) 000aeb60: a2020005 sb r2,0x0005(r16) ;store r2 in (r16+0x5) 000aeb64: 2a22000a slti r2,r17,0x000a 000aeb68: 1440ffbf bne r2,r0,0x000aea68 ;if(r17<10), loop to 0x000aea68 000aeb6c: 2610003c addiu r16,r16,0x003c ;r16 += 60 000aeb70: 24110005 addiu r17,r0,0x0005 ;r17 = 5 000aeb74: 26a4012c addiu r4,r21,0x012c ;r4 = r21 + 300 000aeb78: ac800034 sw r0,0x0034(r4) ;store r0 in (r4+0x34) 000aeb7c: 26310001 addiu r17,r17,0x0001 ;r17++ 000aeb80: 2a22000a slti r2,r17,0x000a 000aeb84: 1440fffc bne r2,r0,0x000aeb78 ;if(r17<10), loop to 0x000aeb78 000aeb88: 2484003c addiu r4,r4,0x003c ;r4 += 60 000aeb8c: 8fbf002c lw r31,0x002c(r29) ;r31 = (r29+0x2c) 000aeb90: 8fb60028 lw r22,0x0028(r29) ;r22 = (r29+0x28) 000aeb94: 8fb50024 lw r21,0x0024(r29) ;r21 = (r29+0x24) 000aeb98: 8fb40020 lw r20,0x0020(r29) ;r20 = (r29+0x20) 000aeb9c: 8fb3001c lw r19,0x001c(r29) ;r19 = (r29+0x1c) 000aeba0: 8fb20018 lw r18,0x0018(r29) ;r18 = (r29+0x18) 000aeba4: 8fb10014 lw r17,0x0014(r29) ;r17 = (r29+0x14) 000aeba8: 8fb00010 lw r16,0x0010(r29) ;r16 = (r29+0x10) 000aebac: 03e00008 jr r31 ;jump to r31 000aebb0: 27bd0030 addiu r29,r29,0x0030 ;r29 += 0x30
Tetra Master PRNG call when entering the World Map, and ?
000c4a5c: 27bdffd0 addiu r29,r29,0xffd0 000c4a60: afb10014 sw r17,0x0014(r29) ;store r17 in (r29+0x14) 000c4a64: 00008821 addu r17,r0,r0 ;r17 = 0 000c4a68: 3c02800d lui r2,0x800d 000c4a6c: afb50024 sw r21,0x0024(r29) 000c4a70: 245548f8 addiu r21,r2,0x48f8 000c4a74: 3c02800d lui r2,0x800d 000c4a78: afb40020 sw r20,0x0020(r29) 000c4a7c: 24544830 addiu r20,r2,0x4830 000c4a80: afb3001c sw r19,0x001c(r29) 000c4a84: 24130200 addiu r19,r0,0x0200 000c4a88: 3c02800d lui r2,0x800d 000c4a8c: afb20018 sw r18,0x0018(r29) 000c4a90: 24524870 addiu r18,r2,0x4870 000c4a94: afbf0028 sw r31,0x0028(r29) 000c4a98: afb00010 sw r16,0x0010(r29) 000c4a9c: 001111c0 sll r2,r17,0x07 ;r2 = r17 << 7 000c4aa0: 0c018acf jal 0x00062b3c ;PRNG call 000c4aa4: a6420000 sh r2,0x0000(r18) ;store r2 in (r18) 000c4aa8: 00401821 addu r3,r2,r0 ;r3 = prn[0;0x7FFF] 000c4aac: 04610002 bgez r3,0x000c4ab8 ;if(r3 ≥ 0), branch to 0x000c4ab8 000c4ab0: 001180c0 sll r16,r17,0x03 ;r16 = r17 << 3 000c4ab4: 24620fff addiu r2,r3,0x0fff ;r2 = r3 + 0xFFF 000c4ab8: 00021303 sra r2,r2,0x0c 000c4abc: 00021300 sll r2,r2,0x0c ;r2 &= 0xFFFFF000 000c4ac0: 00621023 subu r2,r3,r2 ;r2 = r3 - r2 000c4ac4: a6420002 sh r2,0x0002(r18) ;store r2 in (r18+0x2) 000c4ac8: 24020800 addiu r2,r0,0x0800 ;r2 = 0x800 000c4acc: a6400004 sh r0,0x0004(r18) ;store 0 in (r18+0x4) 000c4ad0: a6930000 sh r19,0x0000(r20) ;store r19 in (r20) 000c4ad4: a6a20000 sh r2,0x0000(r21) ;store r2 in (r21) 000c4ad8: 3c02800d lui r2,0x800d 000c4adc: 244248e8 addiu r2,r2,0x48e8 000c4ae0: 02221021 addu r2,r17,r2 ;r2 = 0x800d48e8 + r17 000c4ae4: 0c018acf jal 0x00062b3c ;PRNG call 000c4ae8: a0400000 sb r0,0x0000(r2) ;store 0 in (r2) 000c4aec: 00401821 addu r3,r2,r0 ;r3 = prn[0;0x7FFF] 000c4af0: 00602021 addu r4,r3,r0 ;r4 = r3 000c4af4: 3c02800d lui r2,0x800d 000c4af8: 24424910 addiu r2,r2,0x4910 ;r2 = 0x800dc4b08 000c4afc: 04610002 bgez r3,0x000c4b08 ;if(r3 ≥ 0), branch to 0x000c4b08 000c4b00: 02028021 addu r16,r16,r2 ;r16 += r2 000c4b04: 24640fff addiu r4,r3,0x0fff ;r4 = r3 + 0xFFF 000c4b08: 00041303 sra r2,r4,0x0c 000c4b0c: 00021300 sll r2,r2,0x0c ;r2 = r4 & 0xFFFFF000 000c4b10: 00621023 subu r2,r3,r2 ;r2 &= r3 - r2 000c4b14: 0c018acf jal 0x00062b3c ;PRNG call 000c4b18: a6020000 sh r2,0x0000(r16) ;store r2 in (r16) 000c4b1c: 00401821 addu r3,r2,r0 ;r3 = prn[0;0x7FFF] 000c4b20: 04610002 bgez r3,0x000c4b2c ;if(r3 ≥ 0), branch to 0x000c4b2c 000c4b24: 00000000 nop 000c4b28: 24620fff addiu r2,r3,0x0fff ;r2 = r3 + 0xFFF 000c4b2c: 26b50002 addiu r21,r21,0x0002 ;r21 += 2 000c4b30: 26940002 addiu r20,r20,0x0002 ;r20 += 2 000c4b34: 26730014 addiu r19,r19,0x0014 ;r19 += 20 000c4b38: 26520008 addiu r18,r18,0x0008 ;r18 += 8 000c4b3c: 26310001 addiu r17,r17,0x0001 ;r17++ 000c4b40: 00021303 sra r2,r2,0x0c 000c4b44: 00021300 sll r2,r2,0x0c ;r2 &= 0xFFFFF000 000c4b48: 00621023 subu r2,r3,r2 ;r2 = r3 - r2 000c4b4c: a6020002 sh r2,0x0002(r16) ;store r2 in (r16+0x2) 000c4b50: 2a22000a slti r2,r17,0x000a 000c4b54: 1440ffd1 bne r2,r0,0x000c4a9c ;if(r17 < 10), loop to 0x000c4a9c 000c4b58: a6000004 sh r0,0x0004(r16) ;store 0 in (r16+0x4) 000c4b5c: 00008821 addu r17,r0,r0 ;r17 = 0 000c4b60: 3c02800d lui r2,0x800d 000c4b64: 244449f0 addiu r4,r2,0x49f0 ;r4 = 0x800d49f0 000c4b68: 3c02800d lui r2,0x800d 000c4b6c: 24434960 addiu r3,r2,0x4960 ;r3 = 0x800d4960 000c4b70: ac600000 sw r0,0x0000(r3) ;store 0 to (0x800d4960) 000c4b74: ac600004 sw r0,0x0004(r3) ;store 0 to (0x800d4964) 000c4b78: ac600008 sw r0,0x0008(r3) ;store 0 to (0x800d4968) 000c4b7c: a4800000 sh r0,0x0000(r4) ;store 0 to (0x800d49f0) 000c4b80: a4800002 sh r0,0x0002(r4) ;store 0 to (0x800d49f2) 000c4b84: a4800004 sh r0,0x0004(r4) ;store 0 to (0x800d49f4) 000c4b88: 24840008 addiu r4,r4,0x0008 ;r4 += 8 000c4b8c: 26310001 addiu r17,r17,0x0001 ;r17++ 000c4b90: 2a220009 slti r2,r17,0x0009 000c4b94: 1440fff6 bne r2,r0,0x000c4b70 ;if(r17 < 10), loop to 0x000c4b70 000c4b98: 24630010 addiu r3,r3,0x0010 ;r3 += 0x10 000c4b9c: 3c030004 lui r3,0x0004 000c4ba0: 3463464c ori r3,r3,0x464c ;r3 = 0x4464c 000c4ba4: 3c05fffc lui r5,0xfffc 000c4ba8: 34a5d97f ori r5,r5,0xd97f 000c4bac: 3c040003 lui r4,0x0003 000c4bb0: 3484805b ori r4,r4,0x805b 000c4bb4: 3c07fffc lui r7,0xfffc 000c4bb8: 34e7f7b9 ori r7,r7,0xf7b9 000c4bbc: 3c060002 lui r6,0x0002 000c4bc0: 34c6fffa ori r6,r6,0xfffa 000c4bc4: 3c08fffe lui r8,0xfffe 000c4bc8: 3508bfae ori r8,r8,0xbfae 000c4bcc: 24110001 addiu r17,r0,0x0001 ;r17 = 1 000c4bd0: 3c02800d lui r2,0x800d 000c4bd4: 24424a40 addiu r2,r2,0x4a40 000c4bd8: 244b0050 addiu r11,r2,0x0050 000c4bdc: 00404821 addu r9,r2,r0 000c4be0: 25220028 addiu r2,r9,0x0028 000c4be4: 00405021 addu r10,r2,r0 000c4be8: 3c02800d lui r2,0x800d 000c4bec: ac434960 sw r3,0x4960(r2) 000c4bf0: 24424960 addiu r2,r2,0x4960 000c4bf4: 2403e198 addiu r3,r0,0xe198 000c4bf8: ac440010 sw r4,0x0010(r2) 000c4bfc: 24440010 addiu r4,r2,0x0010 000c4c00: ac430004 sw r3,0x0004(r2) 000c4c04: 240301f4 addiu r3,r0,0x01f4 000c4c08: ac450008 sw r5,0x0008(r2) 000c4c0c: ac830004 sw r3,0x0004(r4) 000c4c10: ac870008 sw r7,0x0008(r4) 000c4c14: 24440060 addiu r4,r2,0x0060 000c4c18: 2403d57e addiu r3,r0,0xd57e 000c4c1c: ac460060 sw r6,0x0060(r2) 000c4c20: ac830004 sw r3,0x0004(r4) 000c4c24: ac880008 sw r8,0x0008(r4) 000c4c28: 8c4c0010 lw r12,0x0010(r2) 000c4c2c: 8c4d0014 lw r13,0x0014(r2) 000c4c30: 8c4e0018 lw r14,0x0018(r2) 000c4c34: 8c4f001c lw r15,0x001c(r2) 000c4c38: ac4c0020 sw r12,0x0020(r2) 000c4c3c: ac4d0024 sw r13,0x0024(r2) 000c4c40: ac4e0028 sw r14,0x0028(r2) 000c4c44: ac4f002c sw r15,0x002c(r2) 000c4c48: 8c4c0010 lw r12,0x0010(r2) 000c4c4c: 8c4d0014 lw r13,0x0014(r2) 000c4c50: 8c4e0018 lw r14,0x0018(r2) 000c4c54: 8c4f001c lw r15,0x001c(r2) 000c4c58: ac4c0030 sw r12,0x0030(r2) 000c4c5c: ac4d0034 sw r13,0x0034(r2) 000c4c60: ac4e0038 sw r14,0x0038(r2) 000c4c64: ac4f003c sw r15,0x003c(r2) 000c4c68: 8c4c0010 lw r12,0x0010(r2) 000c4c6c: 8c4d0014 lw r13,0x0014(r2) 000c4c70: 8c4e0018 lw r14,0x0018(r2) 000c4c74: 8c4f001c lw r15,0x001c(r2) 000c4c78: ac4c0040 sw r12,0x0040(r2) 000c4c7c: ac4d0044 sw r13,0x0044(r2) 000c4c80: ac4e0048 sw r14,0x0048(r2) 000c4c84: ac4f004c sw r15,0x004c(r2) 000c4c88: 8c4c0010 lw r12,0x0010(r2) 000c4c8c: 8c4d0014 lw r13,0x0014(r2) 000c4c90: 8c4e0018 lw r14,0x0018(r2) 000c4c94: 8c4f001c lw r15,0x001c(r2) 000c4c98: ac4c0050 sw r12,0x0050(r2) 000c4c9c: ac4d0054 sw r13,0x0054(r2) 000c4ca0: ac4e0058 sw r14,0x0058(r2) 000c4ca4: ac4f005c sw r15,0x005c(r2) 000c4ca8: 8c4c0060 lw r12,0x0060(r2) 000c4cac: 8c4d0064 lw r13,0x0064(r2) 000c4cb0: 8c4e0068 lw r14,0x0068(r2) 000c4cb4: 8c4f006c lw r15,0x006c(r2) 000c4cb8: ac4c0070 sw r12,0x0070(r2) 000c4cbc: ac4d0074 sw r13,0x0074(r2) 000c4cc0: ac4e0078 sw r14,0x0078(r2) 000c4cc4: ac4f007c sw r15,0x007c(r2) 000c4cc8: 8c4c0060 lw r12,0x0060(r2) 000c4ccc: 8c4d0064 lw r13,0x0064(r2) 000c4cd0: 8c4e0068 lw r14,0x0068(r2) 000c4cd4: 8c4f006c lw r15,0x006c(r2) 000c4cd8: ac4c0080 sw r12,0x0080(r2) 000c4cdc: ac4d0084 sw r13,0x0084(r2) 000c4ce0: ac4e0088 sw r14,0x0088(r2) 000c4ce4: ac4f008c sw r15,0x008c(r2) 000c4ce8: 3c02800d lui r2,0x800d 000c4cec: 24424848 addiu r2,r2,0x4848 000c4cf0: ac400004 sw r0,0x0004(r2) 000c4cf4: ac490008 sw r9,0x0008(r2) 000c4cf8: ad220004 sw r2,0x0004(r9) 000c4cfc: ad2a0008 sw r10,0x0008(r9) 000c4d00: ad4b0008 sw r11,0x0008(r10) 000c4d04: 256b0028 addiu r11,r11,0x0028 000c4d08: ad490004 sw r9,0x0004(r10) 000c4d0c: 25290028 addiu r9,r9,0x0028 000c4d10: 26310001 addiu r17,r17,0x0001 ;r17++ 000c4d14: 2a22003b slti r2,r17,0x003b 000c4d18: 1440fff9 bne r2,r0,0x000c4d00 000c4d1c: 254a0028 addiu r10,r10,0x0028 000c4d20: 3c03800d lui r3,0x800d 000c4d24: 24634a40 addiu r3,r3,0x4a40 000c4d28: 00111080 sll r2,r17,0x02 ;r2 = r17 << 2 000c4d2c: 00511021 addu r2,r2,r17 ;r2 += r17 000c4d30: 000210c0 sll r2,r2,0x03 ;r2 = r2 << 3 000c4d34: 00432021 addu r4,r2,r3 000c4d38: 2463ffd8 addiu r3,r3,0xffd8 000c4d3c: 00431021 addu r2,r2,r3 000c4d40: ac820004 sw r2,0x0004(r4) 000c4d44: 3c02800d lui r2,0x800d 000c4d48: 244253e8 addiu r2,r2,0x53e8 000c4d4c: 3c03800d lui r3,0x800d 000c4d50: 246353a0 addiu r3,r3,0x53a0 000c4d54: ac820008 sw r2,0x0008(r4) 000c4d58: ac440004 sw r4,0x0004(r2) 000c4d5c: ac400008 sw r0,0x0008(r2) 000c4d60: 3c02800d lui r2,0x800d 000c4d64: 244248c0 addiu r2,r2,0x48c0 000c4d68: ac600004 sw r0,0x0004(r3) 000c4d6c: ac620008 sw r2,0x0008(r3) 000c4d70: ac430004 sw r3,0x0004(r2) 000c4d74: ac400008 sw r0,0x0008(r2) 000c4d78: 3c02800d lui r2,0x800d 000c4d7c: a440df82 sh r0,-0x207e(r2) 000c4d80: 3c02800d lui r2,0x800d 000c4d84: a440df8a sh r0,-0x2076(r2) 000c4d88: 3c02800d lui r2,0x800d 000c4d8c: a440df92 sh r0,-0x206e(r2) 000c4d90: 3c02800d lui r2,0x800d 000c4d94: 2442dfa0 addiu r2,r2,0xdfa0 000c4d98: a4400002 sh r0,0x0002(r2) 000c4d9c: a440000a sh r0,0x000a(r2) 000c4da0: a4400012 sh r0,0x0012(r2) 000c4da4: 8fbf0028 lw r31,0x0028(r29) 000c4da8: 8fb50024 lw r21,0x0024(r29) 000c4dac: 8fb40020 lw r20,0x0020(r29) 000c4db0: 8fb3001c lw r19,0x001c(r29) 000c4db4: 8fb20018 lw r18,0x0018(r29) 000c4db8: 8fb10014 lw r17,0x0014(r29) 000c4dbc: 8fb00010 lw r16,0x0010(r29) 000c4dc0: 3c02800d lui r2,0x800d 000c4dc4: ac404a38 sw r0,0x4a38(r2) 000c4dc8: 3c02800d lui r2,0x800d 000c4dcc: ac4053cc sw r0,0x53cc(r2) 000c4dd0: 03e00008 jr r31 000c4dd4: 27bd0030 addiu r29,r29,0x0030
Tetra Master PRNG
seed × 0x41C64E6D + 0x3039
07c02200: 3c03a001 lui r3,0xa001 07c02204: 8c639010 lw r3,-0x6ff0(r3) 07c02208: 3c0141c6 lui r1,0x41c6 07c0220c: 34214e6d ori r1,r1,0x4e6d 07c02210: 00610019 multu r3,r1 07c02214: 3c01a001 lui r1,0xa001 07c02218: 00001812 mflo r3 07c0221c: 24633039 addiu r3,r3,0x3039 07c02220: 00031402 srl r2,r3,0x10 07c02224: 30427fff andi r2,r2,0x7fff 07c02228: 03e00008 jr r31 07c0222c: ac239010 sw r3,-0x6ff0(r1)
0x07c02230
07c02230: 3c01a001 lui r1,0xa001 07c02234: 03e00008 jr r31 07c02238: ac249010 sw r4,-0x6ff0(r1)