Identify Cross Sections Routine (Clone)

From Final Fantasy Hacktics Wiki
Revision as of 19:20, 2 June 2014 by FFHGuest (talk | contribs) (Created page with "<pre> Cross Section Identification 2 0017a64c: 00003021 addu r6,r0,r0 r6 = 0 0017a650: 00002821 addu r5,r0,r0 r5 = Loop Counter 0017a654: 3407003f ori r7,r0,0x003f ...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Cross Section Identification 2

0017a64c: 00003021 addu r6,r0,r0					r6 = 0
0017a650: 00002821 addu r5,r0,r0					r5 = Loop Counter
0017a654: 3407003f ori r7,r0,0x003f					r7 = If Cross Section
0017a658: 3c038019 lui r3,0x8019
0017a65c: 2463f8cc addiu r3,r3,-0x0734				r3 = Tile Data (18f8cc)
0017a660: 3c048019 lui r4,0x8019
0017a664: 24842dd8 addiu r4,r4,0x2dd8				r4 = Tile Grid Data (192dd8)
0017a668: 90820001 lbu r2,0x0001(r4)				r2 = Load Tile Targeted
0017a66c: 00000000 nop
0017a670: 1040000f beq r2,r0,0x0017a6b0				Branch if not targeted
0017a674: 00000000 nop
0017a678: 90620006 lbu r2,0x0006(r3)				Load Tile Unselectable
0017a67c: 00000000 nop
0017a680: 30420001 andi r2,r2,0x0001				If Tile is Unselectable
0017a684: 1440000a bne r2,r0,0x0017a6b0				Branch if True
0017a688: 00000000 nop
0017a68c: 90620000 lbu r2,0x0000(r3)				Load Tile Geomancy
0017a690: 00000000 nop
0017a694: 3042003f andi r2,r2,0x003f				If Tile = Cross Section
0017a698: 10470005 beq r2,r7,0x0017a6b0				Branch if not Cross Section
0017a69c: 00000000 nop
0017a6a0: 90620005 lbu r2,0x0005(r3)				Load ?
0017a6a4: 24c60001 addiu r6,r6,0x0001				r6++
0017a6a8: 0805e9af j 0x0017a6bc
0017a6ac: 34420040 ori r2,r2,0x0040					5th byte = 0x0040
0017a6b0: 90620005 lbu r2,0x0005(r3)				Load ?
0017a6b4: 00000000 nop
0017a6b8: 304200bf andi r2,r2,0x00bf				5th byte = 0x00bf
0017a6bc: a0620005 sb r2,0x0005(r3)					Save 0x0040 or 0x00bf to 5th byte
0017a6c0: 24630008 addiu r3,r3,0x0008				Next Tile
0017a6c4: 24a50001 addiu r5,r5,0x0001				Loop Counter++
0017a6c8: 28a20200 slti r2,r5,0x0200				If Loop Counter < 0x0200
0017a6cc: 1440ffe6 bne r2,r0,0x0017a668				Branch Back if True
0017a6d0: 24840005 addiu r4,r4,0x0005				Next Tile
0017a6d4: 03e00008 jr r31
0017a6d8: 00c01021 addu r2,r6,r0					r2 = Number of loops

This is a clone of 0x0017a5bc