Check for Present Flags

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
0012b1ec: 10800028 beq r4,r0,0x0012b290		Branch if Counter = 0
0012b1f0: 00001021 addu r2,r0,r0		r2 = 0
0012b1f4: 3c028019 lui r2,0x8019
0012b1f8: 9042e47c lbu r2,-0x1b84(r2)		Load New Current Bit Flag
0012b1fc: 00000000 nop
0012b200: 10400006 beq r2,r0,0x0012b21c		Branch if not resetting Current Bit
0012b204: 00003821 addu r7,r0,r0		Active Flags = 0
0012b208: 34020007 ori r2,r0,0x0007		r2 = 7
0012b20c: 3c018019 lui r1,0x8019
0012b210: ac22e480 sw r2,-0x1b80(r1)		Store Current Bit = 7
0012b214: 3c018019 lui r1,0x8019
0012b218: a020e47c sb r0,-0x1b84(r1)		Store New Current Bit Flag = False
0012b21c: 2484ffff addiu r4,r4,0xffff		Counter --
0012b220: 2402ffff addiu r2,r0,0xffff
0012b224: 1082001a beq r4,r2,0x0012b290		Branch if Counter = -1
0012b228: 00e01021 addu r2,r7,r0		r2 = Active Flags
0012b22c: 340a0001 ori r10,r0,0x0001		Bit Mod = 1
0012b230: 34090007 ori r9,r0,0x0007		Current Bit = 7
0012b234: 2408ffff addiu r8,r0,0xffff		r8 = -1
0012b238: 3c06801d lui r6,0x801d
0012b23c: 8cc6a6f0 lw r6,-0x5910(r6)		Load Temp Data Pointer
0012b240: 3c038019 lui r3,0x8019
0012b244: 8c63e480 lw r3,-0x1b80(r3)		Load Current Bit
0012b248: 90c20000 lbu r2,0x0000(r6)		Load Data
0012b24c: 2465ffff addiu r5,r3,0xffff		Current Bit --
0012b250: 3c018019 lui r1,0x8019
0012b254: ac25e480 sw r5,-0x1b80(r1)		Store new Current Bit
0012b258: 00621007 srav r2,r2,r3
0012b25c: 30420001 andi r2,r2,0x0001
0012b260: 10400002 beq r2,r0,0x0012b26c		Branch if Current Flag isn't present
0012b264: 008a1004 sllv r2,r10,r4		Bit to enable = 1 * 2^Counter
0012b268: 00e23825 or r7,r7,r2			Enable Bit
0012b26c: 04a10006 bgez r5,0x0012b288		Branch if Current Bit >= 0
0012b270: 2484ffff addiu r4,r4,0xffff		Counter --
0012b274: 24c20001 addiu r2,r6,0x0001		Pointer ++
0012b278: 3c018019 lui r1,0x8019
0012b27c: ac29e480 sw r9,-0x1b80(r1)		Store Current Bit = 7
0012b280: 3c01801d lui r1,0x801d
0012b284: ac22a6f0 sw r2,-0x5910(r1)		Store new Data Pointer
0012b288: 1488ffeb bne r4,r8,0x0012b238		Branch if Counter != -1
0012b28c: 00e01021 addu r2,r7,r0		r2 = Active Flags
0012b290: 03e00008 jr r31
0012b294: 00000000 nop