Check some list for Unit Battle ID

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search

Check some list for Unit Battle ID 0x1834bc: 001834bc - 00183540

	001835a8: Unit doesn't exist/deadcrystaltreasurepetrify/being ridden check
	0018370c: Calculate AT List

001834bc: 27bdff48 addiu r29,r29,0xff48			
001834c0: afb000b0 sw r16,0x00b0(r29)			Store 0x0 onto Stack
001834c4: 00808021 addu r16,r4,r0
001834c8: afbf00b4 sw r31,0x00b4(r29)			Store 0x0 onto Stack
001834cc: 92030001 lbu r3,0x0001(r16)			Load Battle Unit ID 
001834d0: 340200ff ori r2,r0,0x00ff			r2 = (0xFF) 255
001834d4: 10620016 beq r3,r2,0x00183530			Branch if Battle Unit ID  == FF (255)
001834d8: 2402ffff addiu r2,r0,0xffff
001834dc: 0c060d6a jal 0x001835a8			Unit doesn't exist/deadcrystaltreasurepetrify/being ridden check
001834e0: 02002021 addu r4,r16,r0
001834e4: 14400012 bne r2,r0,0x00183530			Branch if -0x1 != 0x0
001834e8: 2402fffd addiu r2,r0,0xfffd
001834ec: 27a40010 addiu r4,r29,0x0010
001834f0: 9210018a lbu r16,0x018a(r16)			Load Unit ID (without "Unit Exists" check)
001834f4: 0c060dc3 jal 0x0018370c			Calculate AT List
001834f8: 34050001 ori r5,r0,0x0001			r5 = (0x1) 1
001834fc: 00001821 addu r3,r0,r0
00183500: 27a40010 addiu r4,r29,0x0010
00183504: 321000ff andi r16,r16,0x00ff			Mask second byte
00183508: 90820000 lbu r2,0x0000(r4)			Load ???
0018350c: 00000000 nop
00183510: 3042001f andi r2,r2,0x001f			 & 0x1F
00183514: 10500006 beq r2,r16,0x00183530			Branch if  & 0x1F == 
00183518: 00601021 addu r2,r3,r0
0018351c: 24630001 addiu r3,r3,0x0001
00183520: 28620028 slti r2,r3,0x0028			Set if 0x2 < 40
00183524: 1440fff8 bne r2,r0,0x00183508			Branch if so
00183528: 24840004 addiu r4,r4,0x0004
0018352c: 2402fffe addiu r2,r0,0xfffe
00183530: 8fbf00b4 lw r31,0x00b4(r29)			Load Stack + 0xB4
00183534: 8fb000b0 lw r16,0x00b0(r29)			Load Stack + 0xB0
00183538: 27bd00b8 addiu r29,r29,0x00b8			
0018353c: 03e00008 jr r31			Jump to Address
00183540: 00000000 nop