000257c8 - 00025820

From Final Fantasy Hacktics Wiki
Revision as of 10:57, 22 February 2022 by Talcall (talk | contribs)
Jump to navigation Jump to search

000257c8: 3c028003 lui r2,0x8003
000257cc: 24422894 addiu r2,r2,0x2894			0x80032894
000257d0: 90420000 lbu r2,0x0000(r2)			load byte there
000257d4: 00000000 nop
000257d8: 2442ffff addiu r2,r2,0xffff
000257dc: 2c420002 sltiu r2,r2,0x0002			set if less than 2
000257e0: 10400008 beq r2,r0,0x00025804		branch if ? > 2 (value 2 determines 0x0200 instead of 0x0800, and value 1 0x0400 instead of 0x1000)
000257e4: 00000000 nop
000257e8: 10a00002 beq r5,r0,0x000257f4		branch if value 2 = 0 (don't add 0x0800)
000257ec: 3c03e100 lui r3,0xe100			r3 = 0xe1000000
000257f0: 34630800 ori r3,r3,0x0800			r3 = 0xe1000800
000257f4: 10800009 beq r4,r0,0x0002581c		branch if value 1 = 0 (don't add 0x1000)
000257f8: 30c227ff andi r2,r6,0x27ff			r2 = value 3 0x27ff bitmasked 
000257fc: 08009607 j 0x0002581c
00025800: 34421000 ori r2,r2,0x1000			r2 = value 3 0x27ff bitmasked OR 0x1000
00025804: 10a00002 beq r5,r0,0x00025810		if ? > 2, branch if value 2 = 0
00025808: 3c03e100 lui r3,0xe100			r3 = 0xe1000000
0002580c: 34630200 ori r3,r3,0x0200			r3 = 0xe1000200
00025810: 10800002 beq r4,r0,0x0002581c		branch  if value 1 = 0 (don't add 0x0400)
00025814: 30c209ff andi r2,r6,0x09ff			r2 = value 3 0x09ff bitmasked
00025818: 34420400 ori r2,r2,0x0400			r2 = value 3 ox09ff bitmasked OR 0x0400
0002581c: 03e00008 jr r31
00025820: 00621025 or r2,r3,r2				returns r2 = 0xe1000000 + value 3 bitmasked, and various other flags determined by check