000927bc - 00092d48
Jump to navigation
Jump to search
000927bc: 27bdffe0 addiu r29,r29,0xffe0 000927c0: 8fa20030 lw r2,0x0030(r29) Load ? 000927c4: 0080c021 addu r24,r4,r0 000927c8: afb10014 sw r17,0x0014(r29) 000927cc: 8fb10040 lw r17,0x0040(r29) r17 = Preset Value 000927d0: 97af0034 lhu r15,0x0034(r29) r15 = Red 000927d4: 97ae0038 lhu r14,0x0038(r29) r14 = Green 000927d8: 97ad003c lhu r13,0x003c(r29) r13 = Blue 000927dc: 34030001 ori r3,r0,0x0001 000927e0: afb20018 sw r18,0x0018(r29) 000927e4: 144300a9 bne r2,r3,0x00092a8c Branch if ? != 1 000927e8: afb00010 sw r16,0x0010(r29)
? = 1 000927ec: 00006021 addu r12,r0,r0 Counter = 0 000927f0: 00061080 sll r2,r6,0x02 Section ID * 0x4 000927f4: 00461021 addu r2,r2,r6 Section ID * 0x5 000927f8: 00021080 sll r2,r2,0x02 section ID * 0x14 000927fc: 00461023 subu r2,r2,r6 section ID * 0x15 00092800: 00021180 sll r2,r2,0x06 section ID * 0x540 00092804: 00461021 addu r2,r2,r6 section ID * 0x541 00092808: 00028040 sll r16,r2,0x01 section ID * 0xA82 0009280c: 0000c821 addu r25,r0,r0 00092810: 3c03800e lui r3,0x800e 00092814: 24634ea4 addiu r3,r3,0x4ea4 00092818: 00061240 sll r2,r6,0x09 section ID * 0x200 0009281c: 00433821 addu r7,r2,r3 0x800e4ea4 + ID * 0x200 00092820: 84a20000 lh r2,0x0000(r5) 00092824: 94a80000 lhu r8,0x0000(r5) 00092828: 10400042 beq r2,r0,0x00092934 0009282c: 34020005 ori r2,r0,0x0005 00092830: 1302000a beq r24,r2,0x0009285c 00092834: 2b020006 slti r2,r24,0x0006 00092838: 14400036 bne r2,r0,0x00092914 0009283c: 3102001f andi r2,r8,0x001f 00092840: 34020006 ori r2,r0,0x0006 00092844: 1302000f beq r24,r2,0x00092884 00092848: 34020007 ori r2,r0,0x0007 0009284c: 1302001d beq r24,r2,0x000928c4 00092850: 3103001f andi r3,r8,0x001f 00092854: 08024a45 j 0x00092914 00092858: 3102001f andi r2,r8,0x001f 0009285c: 3102001f andi r2,r8,0x001f 00092860: 00021043 sra r2,r2,0x01 00092864: 01e25021 addu r10,r15,r2 00092868: 310203e0 andi r2,r8,0x03e0 0009286c: 00021182 srl r2,r2,0x06 00092870: 01c24821 addu r9,r14,r2 00092874: 31027c00 andi r2,r8,0x7c00 00092878: 000212c2 srl r2,r2,0x0b 0009287c: 08024a52 j 0x00092948 00092880: 01a23021 addu r6,r13,r2 00092884: 3103001f andi r3,r8,0x001f 00092888: 310203e0 andi r2,r8,0x03e0 0009288c: 00023142 srl r6,r2,0x05 00092890: 31027c00 andi r2,r8,0x7c00 00092894: 00024a82 srl r9,r2,0x0a 00092898: 3c042aaa lui r4,0x2aaa 0009289c: 3484aaab ori r4,r4,0xaaab 000928a0: 00031840 sll r3,r3,0x01 000928a4: 00061040 sll r2,r6,0x01 000928a8: 00461021 addu r2,r2,r6 000928ac: 00621821 addu r3,r3,r2 000928b0: 00691821 addu r3,r3,r9 000928b4: 00640018 mult r3,r4 000928b8: 00001010 mfhi r2 000928bc: 08024a40 j 0x00092900 000928c0: 00031fc3 sra r3,r3,0x1f 000928c4: 310203e0 andi r2,r8,0x03e0 000928c8: 00023142 srl r6,r2,0x05 000928cc: 31027c00 andi r2,r8,0x7c00 000928d0: 00024a82 srl r9,r2,0x0a 000928d4: 3c042aaa lui r4,0x2aaa 000928d8: 3484aaab ori r4,r4,0xaaab 000928dc: 00031840 sll r3,r3,0x01 000928e0: 00061040 sll r2,r6,0x01 000928e4: 00461021 addu r2,r2,r6 000928e8: 00621821 addu r3,r3,r2 000928ec: 00691821 addu r3,r3,r9 000928f0: 00640018 mult r3,r4 000928f4: 00031fc3 sra r3,r3,0x1f 000928f8: 00001010 mfhi r2 000928fc: 00021043 sra r2,r2,0x01 00092900: 00431023 subu r2,r2,r3 00092904: 01e25021 addu r10,r15,r2 00092908: 01c24821 addu r9,r14,r2 0009290c: 08024a52 j 0x00092948 00092910: 01a23021 addu r6,r13,r2 00092914: 01e25021 addu r10,r15,r2 00092918: 310203e0 andi r2,r8,0x03e0 0009291c: 00021142 srl r2,r2,0x05 00092920: 01c24821 addu r9,r14,r2 00092924: 31027c00 andi r2,r8,0x7c00 00092928: 00021282 srl r2,r2,0x0a 0009292c: 08024a52 j 0x00092948 00092930: 01a23021 addu r6,r13,r2 00092934: 310a001f andi r10,r8,0x001f 00092938: 310203e0 andi r2,r8,0x03e0 0009293c: 00024942 srl r9,r2,0x05 00092940: 31027c00 andi r2,r8,0x7c00 00092944: 00023282 srl r6,r2,0x0a 00092948: 000a1400 sll r2,r10,0x10 0009294c: 00021403 sra r2,r2,0x10 00092950: 28420020 slti r2,r2,0x0020 00092954: 14400002 bne r2,r0,0x00092960 00092958: 00085bc2 srl r11,r8,0x0f 0009295c: 340a001f ori r10,r0,0x001f 00092960: 00091400 sll r2,r9,0x10 00092964: 00021403 sra r2,r2,0x10 00092968: 28420020 slti r2,r2,0x0020 0009296c: 14400002 bne r2,r0,0x00092978 00092970: 00061400 sll r2,r6,0x10 00092974: 3409001f ori r9,r0,0x001f 00092978: 00021403 sra r2,r2,0x10 0009297c: 28420020 slti r2,r2,0x0020 00092980: 14400002 bne r2,r0,0x0009298c 00092984: 000a1400 sll r2,r10,0x10 00092988: 3406001f ori r6,r0,0x001f 0009298c: 1c400002 bgtz r2,0x00092998 00092990: 00091400 sll r2,r9,0x10 00092994: 00005021 addu r10,r0,r0 00092998: 1c400002 bgtz r2,0x000929a4 0009299c: 00061400 sll r2,r6,0x10 000929a0: 00004821 addu r9,r0,r0 000929a4: 1c400002 bgtz r2,0x000929b0 000929a8: 01491025 or r2,r10,r9 000929ac: 00003021 addu r6,r0,r0 000929b0: 00c21025 or r2,r6,r2 000929b4: 00021400 sll r2,r2,0x10 000929b8: 14400004 bne r2,r0,0x000929cc 000929bc: 31027fff andi r2,r8,0x7fff 000929c0: 10400002 beq r2,r0,0x000929cc 000929c4: 00000000 nop 000929c8: 34060001 ori r6,r0,0x0001 000929cc: 1220001c beq r17,r0,0x00092a40 000929d0: 00091140 sll r2,r9,0x05 000929d4: 01421021 addu r2,r10,r2 000929d8: 00061a80 sll r3,r6,0x0a 000929dc: 00431021 addu r2,r2,r3 000929e0: 000b1bc0 sll r3,r11,0x0f 000929e4: 00431021 addu r2,r2,r3 000929e8: a4e20000 sh r2,0x0000(r7) 000929ec: 05810002 bgez r12,0x000929f8 000929f0: 01801021 addu r2,r12,r0 000929f4: 2582000f addiu r2,r12,0x000f 000929f8: 00021103 sra r2,r2,0x04 000929fc: 000210c0 sll r2,r2,0x03 00092a00: 00501021 addu r2,r2,r16 00092a04: 3c01800a lui r1,0x800a 00092a08: 00220821 addu r1,r1,r2 00092a0c: 902295f6 lbu r2,-0x6a0a(r1) 00092a10: 00000000 nop 00092a14: 1440000a bne r2,r0,0x00092a40 00092a18: 000c10c0 sll r2,r12,0x03 00092a1c: 3c03800a lui r3,0x800a 00092a20: 24639676 addiu r3,r3,0x9676 00092a24: 02031821 addu r3,r16,r3 00092a28: 004c1023 subu r2,r2,r12 00092a2c: 00621821 addu r3,r3,r2 00092a30: a06a0000 sb r10,0x0000(r3) 00092a34: a0690001 sb r9,0x0001(r3) 00092a38: a0660002 sb r6,0x0002(r3) 00092a3c: a06b0003 sb r11,0x0003(r3) 00092a40: 3c04800a lui r4,0x800a 00092a44: 24849d76 addiu r4,r4,0x9d76 00092a48: 02042021 addu r4,r16,r4 00092a4c: 03242021 addu r4,r25,r4 00092a50: 00091140 sll r2,r9,0x05 00092a54: 01421021 addu r2,r10,r2 00092a58: 00061a80 sll r3,r6,0x0a 00092a5c: 00431021 addu r2,r2,r3 00092a60: 000b1bc0 sll r3,r11,0x0f 00092a64: 00431021 addu r2,r2,r3 00092a68: a4820000 sh r2,0x0000(r4) 00092a6c: 27390002 addiu r25,r25,0x0002 00092a70: 24e70002 addiu r7,r7,0x0002 00092a74: 258c0001 addiu r12,r12,0x0001 00092a78: 29820100 slti r2,r12,0x0100 00092a7c: 1440ff68 bne r2,r0,0x00092820 00092a80: 24a50002 addiu r5,r5,0x0002 00092a84: 08024b4b j 0x00092d2c 00092a88: 34020001 ori r2,r0,0x0001
- ? != 1*
00092a8c: 00006021 addu r12,r0,r0 Counter = 0 00092a90: 3c03800e lui r3,0x800e 00092a94: 24634ea4 addiu r3,r3,0x4ea4 00092a98: 00061240 sll r2,r6,0x09 Section ID * 0x200 00092a9c: 00439021 addu r18,r2,r3 r18 = Modified Palette Pointer 00092aa0: 000718c0 sll r3,r7,0x03 Unit Misc ID * 8 00092aa4: 00061080 sll r2,r6,0x02 Section ID * 4 00092aa8: 00461021 addu r2,r2,r6 ID * 5 00092aac: 00021080 sll r2,r2,0x02 ID * 20 00092ab0: 00461023 subu r2,r2,r6 ID * 19 00092ab4: 00021180 sll r2,r2,0x06 ID * 1216 00092ab8: 00461021 addu r2,r2,r6 ID * 1217 00092abc: 00028040 sll r16,r2,0x01 ID * 2434 00092ac0: 0070c821 addu r25,r3,r16 r25 = Raw Palette Pointer
<loop> 00092ac4: 84a20000 lh r2,0x0000(r5) Load colour from other.bin 00092ac8: 94a80000 lhu r8,0x0000(r5) Ditto 00092acc: 10400042 beq r2,r0,0x00092bd8 skip if colour = 0 00092ad0: 34020005 ori r2,r0,0x0005 00092ad4: 1302000a beq r24,r2,0x00092b00 00092ad8: 2b020006 slti r2,r24,0x0006 00092adc: 14400036 bne r2,r0,0x00092bb8 00092ae0: 3102001f andi r2,r8,0x001f 00092ae4: 34020006 ori r2,r0,0x0006 00092ae8: 1302000f beq r24,r2,0x00092b28 00092aec: 34020007 ori r2,r0,0x0007 00092af0: 1302001d beq r24,r2,0x00092b68 00092af4: 3103001f andi r3,r8,0x001f 00092af8: 08024aee j 0x00092bb8 r2 = red from other.bin palette 00092afc: 3102001f andi r2,r8,0x001f
00092b00: 3102001f andi r2,r8,0x001f 00092b04: 00021043 sra r2,r2,0x01 00092b08: 01e25021 addu r10,r15,r2 00092b0c: 310203e0 andi r2,r8,0x03e0 00092b10: 00021182 srl r2,r2,0x06 00092b14: 01c24821 addu r9,r14,r2 00092b18: 31027c00 andi r2,r8,0x7c00 00092b1c: 000212c2 srl r2,r2,0x0b 00092b20: 08024afb j 0x00092bec 00092b24: 01a23021 addu r6,r13,r2 00092b28: 3103001f andi r3,r8,0x001f 00092b2c: 310203e0 andi r2,r8,0x03e0 00092b30: 00023142 srl r6,r2,0x05 00092b34: 31027c00 andi r2,r8,0x7c00 00092b38: 00024a82 srl r9,r2,0x0a 00092b3c: 3c042aaa lui r4,0x2aaa 00092b40: 3484aaab ori r4,r4,0xaaab 00092b44: 00031840 sll r3,r3,0x01 00092b48: 00061040 sll r2,r6,0x01 00092b4c: 00461021 addu r2,r2,r6 00092b50: 00621821 addu r3,r3,r2 00092b54: 00691821 addu r3,r3,r9 00092b58: 00640018 mult r3,r4 00092b5c: 00001010 mfhi r2 00092b60: 08024ae9 j 0x00092ba4 00092b64: 00031fc3 sra r3,r3,0x1f 00092b68: 310203e0 andi r2,r8,0x03e0 00092b6c: 00023142 srl r6,r2,0x05 00092b70: 31027c00 andi r2,r8,0x7c00 00092b74: 00024a82 srl r9,r2,0x0a 00092b78: 3c042aaa lui r4,0x2aaa 00092b7c: 3484aaab ori r4,r4,0xaaab 00092b80: 00031840 sll r3,r3,0x01 00092b84: 00061040 sll r2,r6,0x01 00092b88: 00461021 addu r2,r2,r6 00092b8c: 00621821 addu r3,r3,r2 00092b90: 00691821 addu r3,r3,r9 00092b94: 00640018 mult r3,r4 00092b98: 00031fc3 sra r3,r3,0x1f 00092b9c: 00001010 mfhi r2 00092ba0: 00021043 sra r2,r2,0x01 00092ba4: 00431023 subu r2,r2,r3 00092ba8: 01e25021 addu r10,r15,r2 00092bac: 01c24821 addu r9,r14,r2 00092bb0: 08024afb j 0x00092bec 00092bb4: 01a23021 addu r6,r13,r2
testing went here for sprite turning to crystal (colour from other.bin)
00092bb8: 01e25021 addu r10,r15,r2 red 00092bbc: 310203e0 andi r2,r8,0x03e0 00092bc0: 00021142 srl r2,r2,0x05 00092bc4: 01c24821 addu r9,r14,r2 green 00092bc8: 31027c00 andi r2,r8,0x7c00 00092bcc: 00021282 srl r2,r2,0x0a 00092bd0: 08024afb j 0x00092bec store 00092bd4: 01a23021 addu r6,r13,r2 blue
00092bd8: 310a001f andi r10,r8,0x001f 00092bdc: 310203e0 andi r2,r8,0x03e0 00092be0: 00024942 srl r9,r2,0x05 00092be4: 31027c00 andi r2,r8,0x7c00 00092be8: 00023282 srl r6,r2,0x0a 00092bec: 000a1400 sll r2,r10,0x10 00092bf0: 00021403 sra r2,r2,0x10 00092bf4: 28420020 slti r2,r2,0x0020 00092bf8: 14400002 bne r2,r0,0x00092c04 00092bfc: 00085bc2 srl r11,r8,0x0f 00092c00: 340a001f ori r10,r0,0x001f 00092c04: 00091400 sll r2,r9,0x10 00092c08: 00021403 sra r2,r2,0x10 00092c0c: 28420020 slti r2,r2,0x0020 00092c10: 14400002 bne r2,r0,0x00092c1c 00092c14: 00061400 sll r2,r6,0x10 00092c18: 3409001f ori r9,r0,0x001f 00092c1c: 00021403 sra r2,r2,0x10 00092c20: 28420020 slti r2,r2,0x0020 00092c24: 14400002 bne r2,r0,0x00092c30 00092c28: 000a1400 sll r2,r10,0x10 00092c2c: 3406001f ori r6,r0,0x001f 00092c30: 1c400002 bgtz r2,0x00092c3c 00092c34: 00091400 sll r2,r9,0x10 00092c38: 00005021 addu r10,r0,r0 00092c3c: 1c400002 bgtz r2,0x00092c48 00092c40: 00061400 sll r2,r6,0x10 00092c44: 00004821 addu r9,r0,r0 00092c48: 1c400002 bgtz r2,0x00092c54 00092c4c: 01491025 or r2,r10,r9 00092c50: 00003021 addu r6,r0,r0 00092c54: 00c21025 or r2,r6,r2 00092c58: 00021400 sll r2,r2,0x10 00092c5c: 14400004 bne r2,r0,0x00092c70 00092c60: 31027fff andi r2,r8,0x7fff 00092c64: 10400002 beq r2,r0,0x00092c70 00092c68: 00000000 nop 00092c6c: 34060001 ori r6,r0,0x0001 00092c70: 1220001c beq r17,r0,0x00092ce4 00092c74: 24a50002 addiu r5,r5,0x0002 00092c78: 00071100 sll r2,r7,0x04 00092c7c: 004c4021 addu r8,r2,r12 00092c80: 00082040 sll r4,r8,0x01 00092c84: 00922021 addu r4,r4,r18 00092c88: 00091140 sll r2,r9,0x05 00092c8c: 01421021 addu r2,r10,r2 00092c90: 00061a80 sll r3,r6,0x0a 00092c94: 00431021 addu r2,r2,r3 00092c98: 000b1bc0 sll r3,r11,0x0f 00092c9c: 00431021 addu r2,r2,r3 00092ca0: a4820000 sh r2,0x0000(r4) 00092ca4: 3c01800a lui r1,0x800a 00092ca8: 00390821 addu r1,r1,r25 00092cac: 902295f6 lbu r2,-0x6a0a(r1) 00092cb0: 00000000 nop 00092cb4: 1440000c bne r2,r0,0x00092ce8 00092cb8: 00072100 sll r4,r7,0x04 00092cbc: 3c03800a lui r3,0x800a 00092cc0: 24639676 addiu r3,r3,0x9676 00092cc4: 02031821 addu r3,r16,r3 00092cc8: 000810c0 sll r2,r8,0x03 00092ccc: 00481023 subu r2,r2,r8 00092cd0: 00621821 addu r3,r3,r2 00092cd4: a06a0000 sb r10,0x0000(r3) Store Red 00092cd8: a0690001 sb r9,0x0001(r3) 00092cdc: a0660002 sb r6,0x0002(r3) 00092ce0: a06b0003 sb r11,0x0003(r3) 00092ce4: 00072100 sll r4,r7,0x04 #some kind of displacement? 00092ce8: 008c2021 addu r4,r4,r12 #palette colour index + 00092cec: 3c02800a lui r2,0x800a 00092cf0: 24429d76 addiu r2,r2,0x9d76 00092cf4: 00042040 sll r4,r4,0x01 00092cf8: 02021021 addu r2,r16,r2 0x800a9d76 + section table entry 00092cfc: 00822021 addu r4,r4,r2 #VRAM palette 00092d00: 00091140 sll r2,r9,0x05 #green << 0x05? 00092d04: 01421021 addu r2,r10,r2 #red 00092d08: 00061a80 sll r3,r6,0x0a #blue << 0x0a? 00092d0c: 00431021 addu r2,r2,r3 #RGB 00092d10: 000b1bc0 sll r3,r11,0x0f #alpha 00092d14: 00431021 addu r2,r2,r3 #final colour with alpha 00092d18: a4820000 sh r2,0x0000(r4) #store colour to VRAM palette 00092d1c: 258c0001 addiu r12,r12,0x0001 #current palette colour index 00092d20: 29820010 slti r2,r12,0x0010 #do 0x10 times 00092d24: 1440ff67 bne r2,r0,0x00092ac4 00092d28: 34020001 ori r2,r0,0x0001 </loop>
00092d2c: 3c01800a lui r1,0x800a 00092d30: ac2295ec sw r2,-0x6a14(r1) 00092d34: 8fb20018 lw r18,0x0018(r29) 00092d38: 8fb10014 lw r17,0x0014(r29) 00092d3c: 8fb00010 lw r16,0x0010(r29) 00092d40: 27bd0020 addiu r29,r29,0x0020 00092d44: 03e00008 jr r31 00092d48: 00000000 nop