Difference between revisions of "00071008 - 000711a0"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "<font face='Courier New'> 00071008: 27bdffe8 addiu r29,r29,0xffe8 0007100c: afbf0014 sw r31,0x0014(r29) 00071010: 0c01c377 jal 0x00070ddc 00071014: afb00010 sw r16,0x001...")
 
(This page was missing notes.)
 
Line 3: Line 3:
 
  00071008: 27bdffe8 addiu r29,r29,0xffe8
 
  00071008: 27bdffe8 addiu r29,r29,0xffe8
 
  0007100c: afbf0014 sw r31,0x0014(r29)
 
  0007100c: afbf0014 sw r31,0x0014(r29)
  00071010: 0c01c377 jal 0x00070ddc
+
  00071010: 0c01c377 jal 0x00070ddc           [[00070ddc - 00070e20]]
 
  00071014: afb00010 sw r16,0x0010(r29)
 
  00071014: afb00010 sw r16,0x0010(r29)
 
  00071018: 1440005d bne r2,r0,0x00071190
 
  00071018: 1440005d bne r2,r0,0x00071190
 
  0007101c: 00000000 nop
 
  0007101c: 00000000 nop
  00071020: 0c01a1e5 jal 0x00068794
+
  00071020: 0c01a1e5 jal 0x00068794           [[Clear AT list ID]]
 
  00071024: 00000000 nop
 
  00071024: 00000000 nop
  00071028: 34020001 ori r2,r0,0x0001
+
  00071028: 34020001 ori r2,r0,0x0001         r2 = 0x1
 
  0007102c: 3c018004 lui r1,0x8004
 
  0007102c: 3c018004 lui r1,0x8004
 
  00071030: ac225980 sw r2,0x5980(r1)
 
  00071030: ac225980 sw r2,0x5980(r1)
  00071034: 0c01c39b jal 0x00070e6c
+
  00071034: 0c01c39b jal 0x00070e6c           [[In between turn events]]
 
  00071038: 00000000 nop
 
  00071038: 00000000 nop
  0007103c: 0c01e886 jal 0x0007a218
+
  0007103c: 0c01e886 jal 0x0007a218           [[Get Casting units Misc Data]]
 
  00071040: 00000000 nop
 
  00071040: 00000000 nop
  00071044: 00408021 addu r16,r2,r0
+
  00071044: 00408021 addu r16,r2,r0           moves unit data pointer to r16
  00071048: 12000051 beq r16,r0,0x00071190
+
  00071048: 12000051 beq r16,r0,0x00071190     branches if unit's Misc data pointer is null
 
  0007104c: 00000000 nop
 
  0007104c: 00000000 nop
  00071050: 92020004 lbu r2,0x0004(r16)
+
  00071050: 92020004 lbu r2,0x0004(r16)       loads byte of data*
 
  00071054: 3c018009 lui r1,0x8009
 
  00071054: 3c018009 lui r1,0x8009
  00071058: ac22611c sw r2,0x611c(r1)
+
  00071058: ac22611c sw r2,0x611c(r1)         saves sound effect ID
  0007105c: 0c01c2df jal 0x00070b7c
+
  0007105c: 0c01c2df jal 0x00070b7c           [[Store ENTD flags into misc data w/o control flag]]
  00071060: 02002021 addu r4,r16,r0
+
  00071060: 02002021 addu r4,r16,r0           r4 = unit's misc ID pointer
  00071064: 8e020134 lw r2,0x0134(r16)
+
  00071064: 8e020134 lw r2,0x0134(r16)        acquires a word of unit Misc data (another pointer?)
 
  00071068: 00000000 nop
 
  00071068: 00000000 nop
  0007106c: 10400046 beq r2,r0,0x00071188
+
  0007106c: 10400046 beq r2,r0,0x00071188     branches if this data is null
 
  00071070: 00000000 nop
 
  00071070: 00000000 nop
  00071074: 9044018a lbu r4,0x018a(r2)
+
  00071074: 9044018a lbu r4,0x018a(r2)         loads a byte of data from the new pointer
  00071078: 0c04fe40 jal 0x0013f900
+
  00071078: 0c04fe40 jal 0x0013f900           [[0013f900 - 0013f974]]
 
  0007107c: 00000000 nop
 
  0007107c: 00000000 nop
  00071080: 0c01c2df jal 0x00070b7c
+
  00071080: 0c01c2df jal 0x00070b7c           jumps part-way through [[00070aa8 - 00070be0]]
  00071084: 02002021 addu r4,r16,r0
+
  00071084: 02002021 addu r4,r16,r0           r4 = unit's misc ID pointer
 
  00071088: 3c028009 lui r2,0x8009
 
  00071088: 3c028009 lui r2,0x8009
  0007108c: 8c4260f8 lw r2,0x60f8(r2)
+
  0007108c: 8c4260f8 lw r2,0x60f8(r2)         loads undocumented data
 
  00071090: 00000000 nop
 
  00071090: 00000000 nop
  00071094: 10400018 beq r2,r0,0x000710f8
+
  00071094: 10400018 beq r2,r0,0x000710f8     branches if this data is null
 
  00071098: 00000000 nop
 
  00071098: 00000000 nop
  0007109c: 9202013d lbu r2,0x013d(r16)
+
  0007109c: 9202013d lbu r2,0x013d(r16)       loads a byte of unit Misc data
 
  000710a0: 00000000 nop
 
  000710a0: 00000000 nop
  000710a4: 30420008 andi r2,r2,0x0008
+
  000710a4: 30420008 andi r2,r2,0x0008         if byte = 0x8, return true
  000710a8: 14400013 bne r2,r0,0x000710f8
+
  000710a8: 14400013 bne r2,r0,0x000710f8     branches if this returns false
  000710ac: 34020100 ori r2,r0,0x0100
+
  000710ac: 34020100 ori r2,r0,0x0100          r2 = 0x0100
 
  000710b0: 3c03800a lui r3,0x800a
 
  000710b0: 3c03800a lui r3,0x800a
  000710b4: 8c638d84 lw r3,-0x727c(r3)
+
  000710b4: 8c638d84 lw r3,-0x727c(r3)         loads type of action?
 
  000710b8: 00000000 nop
 
  000710b8: 00000000 nop
  000710bc: 14620011 bne r3,r2,0x00071104
+
  000710bc: 14620011 bne r3,r2,0x00071104     branches if type of action =/= active turn?
 
  000710c0: 00000000 nop
 
  000710c0: 00000000 nop
  000710c4: 92040004 lbu r4,0x0004(r16)
+
  000710c4: 92040004 lbu r4,0x0004(r16)        loads byte of data* (same as indexed above)
  000710c8: 0c01a38c jal 0x00068e30
+
  000710c8: 0c01a38c jal 0x00068e30           [[Jump to 68d08]]
 
  000710cc: 00000000 nop
 
  000710cc: 00000000 nop
  000710d0: 0c010ffe jal 0x00043ff8
+
  000710d0: 0c010ffe jal 0x00043ff8           [[Play Sound Effect]]?
  000710d4: 34040071 ori r4,r0,0x0071
+
  000710d4: 34040071 ori r4,r0,0x0071         r4 = sound effect ID 0x71?
  000710d8: 0c01a1da jal 0x00068768
+
  000710d8: 0c01a1da jal 0x00068768           [[0006872c - 00068a64]]
 
  000710dc: 00000000 nop
 
  000710dc: 00000000 nop
  000710e0: 0c01a1ac jal 0x000686b0
+
  000710e0: 0c01a1ac jal 0x000686b0           [[000686b0 - 00068764]]
 
  000710e4: 00000000 nop
 
  000710e4: 00000000 nop
  000710e8: 0c01c301 jal 0x00070c04
+
  000710e8: 0c01c301 jal 0x00070c04           [[Set next script = action menus]]
 
  000710ec: 00000000 nop
 
  000710ec: 00000000 nop
  000710f0: 0801c464 j 0x00071190
+
  000710f0: 0801c464 j 0x00071190             accesses jump return inside [[000710e8 - 00071194]]. seems to serve no other purpose
 
  000710f4: 00000000 nop
 
  000710f4: 00000000 nop
 +
 
  000710f8: 3c03800a lui r3,0x800a
 
  000710f8: 3c03800a lui r3,0x800a
  000710fc: 8c638d84 lw r3,-0x727c(r3)
+
  000710fc: 8c638d84 lw r3,-0x727c(r3)         loads Type of action
  00071100: 34020100 ori r2,r0,0x0100
+
  00071100: 34020100 ori r2,r0,0x0100          r2 = 0x0100
 
  00071104: 3c01800a lui r1,0x800a
 
  00071104: 3c01800a lui r1,0x800a
  00071108: ac208db8 sw r0,-0x7248(r1)
+
  00071108: ac208db8 sw r0,-0x7248(r1)         clears "?? cleared after post action"
  0007110c: 10620003 beq r3,r2,0x0007111c
+
  0007110c: 10620003 beq r3,r2,0x0007111c     branches if type of action = active turn?
  00071110: 3402ff00 ori r2,r0,0xff00
+
  00071110: 3402ff00 ori r2,r0,0xff00          r2 = 0xff00
  00071114: 14620004 bne r3,r2,0x00071128
+
  00071114: 14620004 bne r3,r2,0x00071128     branches if type of action =/= 0xff00?
 
  00071118: 00000000 nop
 
  00071118: 00000000 nop
  0007111c: 92040004 lbu r4,0x0004(r16)
+
  0007111c: 92040004 lbu r4,0x0004(r16)        loads byte of Unit Misc data* (Same as indexed above)
  00071120: 0c01a38c jal 0x00068e30
+
  00071120: 0c01a38c jal 0x00068e30           [[Jump to 68d08]]
 
  00071124: 00000000 nop
 
  00071124: 00000000 nop
  00071128: 0c01c28e jal 0x00070a38
+
  00071128: 0c01c28e jal 0x00070a38           [[00070968 - 00070aa4]]
  0007112c: 02002021 addu r4,r16,r0
+
  0007112c: 02002021 addu r4,r16,r0           r4 = Misc unit data pointer
  00071130: 1440000e bne r2,r0,0x0007116c
+
  00071130: 1440000e bne r2,r0,0x0007116c     branch if previous routine returns r2 =/= 0x0
  00071134: 34040001 ori r4,r0,0x0001
+
  00071134: 34040001 ori r4,r0,0x0001         r4 = 0x1
  00071138: 340500ff ori r5,r0,0x00ff
+
  00071138: 340500ff ori r5,r0,0x00ff         r5 = 0xff
  0007113c: 0c04f58d jal 0x0013d634
+
  0007113c: 0c04f58d jal 0x0013d634           [[Store unit names and some event block data]]
  00071140: 340600ff ori r6,r0,0x00ff
+
  00071140: 340600ff ori r6,r0,0x00ff         r6 = 0xff
  00071144: 34020027 ori r2,r0,0x0027
+
  00071144: 34020027 ori r2,r0,0x0027         r2 = specify direction for wait message + selecting direction for wait
 
  00071148: 3c018009 lui r1,0x8009
 
  00071148: 3c018009 lui r1,0x8009
  0007114c: ac2260e4 sw r2,0x60e4(r1)
+
  0007114c: ac2260e4 sw r2,0x60e4(r1)         saves r2 to type of display
  00071150: 0c066b8c jal 0x0019ae30
+
  00071150: 0c066b8c jal 0x0019ae30           [[0019ae30 - 0019ae54]]
 
  00071154: 00000000 nop
 
  00071154: 00000000 nop
  00071158: 34020001 ori r2,r0,0x0001
+
  00071158: 34020001 ori r2,r0,0x0001         r2 = 0x1
 
  0007115c: 3c01800e lui r1,0x800e
 
  0007115c: 3c01800e lui r1,0x800e
  00071160: ac224e8c sw r2,0x4e8c(r1)
+
  00071160: ac224e8c sw r2,0x4e8c(r1)          saves 0x1 to undocumented data (occurs 1 word before curser X coordinate)
  00071164: 0801c45e j 0x00071178
+
  00071164: 0801c45e j 0x00071178             reuses some code from [[000710e8 - 00071194]] and jump returns
 
  00071168: 00000000 nop
 
  00071168: 00000000 nop
  0007116c: 92040004 lbu r4,0x0004(r16)
+
 
  00071170: 0c01a38c jal 0x00068e30
+
  0007116c: 92040004 lbu r4,0x0004(r16)        load byte of Misc unit data* (Same as indexed above)
 +
  00071170: 0c01a38c jal 0x00068e30           [[Jump to 68d08]]
 
  00071174: 00000000 nop
 
  00071174: 00000000 nop
 
  00071178: 3c018009 lui r1,0x8009
 
  00071178: 3c018009 lui r1,0x8009
  0007117c: ac2060f8 sw r0,0x60f8(r1)
+
  0007117c: ac2060f8 sw r0,0x60f8(r1)         clears undocumented data
  00071180: 0801c464 j 0x00071190
+
  00071180: 0801c464 j 0x00071190             access jump return from [[000710e8 - 00071194]]. seems to serve no other purpose
 
  00071184: 00000000 nop
 
  00071184: 00000000 nop
  00071188: 0c01c31e jal 0x00070c78
+
 
 +
  00071188: 0c01c31e jal 0x00070c78           [[00070c78 - 00070cd8]]
 
  0007118c: 00000000 nop
 
  0007118c: 00000000 nop
 
  00071190: 8fbf0014 lw r31,0x0014(r29)
 
  00071190: 8fbf0014 lw r31,0x0014(r29)

Latest revision as of 03:48, 6 November 2020

00071008: 27bdffe8 addiu r29,r29,0xffe8
0007100c: afbf0014 sw r31,0x0014(r29)
00071010: 0c01c377 jal 0x00070ddc            00070ddc - 00070e20
00071014: afb00010 sw r16,0x0010(r29)
00071018: 1440005d bne r2,r0,0x00071190
0007101c: 00000000 nop
00071020: 0c01a1e5 jal 0x00068794            Clear AT list ID
00071024: 00000000 nop
00071028: 34020001 ori r2,r0,0x0001          r2 = 0x1
0007102c: 3c018004 lui r1,0x8004
00071030: ac225980 sw r2,0x5980(r1)
00071034: 0c01c39b jal 0x00070e6c            In between turn events
00071038: 00000000 nop
0007103c: 0c01e886 jal 0x0007a218            Get Casting units Misc Data
00071040: 00000000 nop
00071044: 00408021 addu r16,r2,r0            moves unit data pointer to r16
00071048: 12000051 beq r16,r0,0x00071190     branches if unit's Misc data pointer is null
0007104c: 00000000 nop
00071050: 92020004 lbu r2,0x0004(r16)        loads byte of data*
00071054: 3c018009 lui r1,0x8009
00071058: ac22611c sw r2,0x611c(r1)          saves sound effect ID
0007105c: 0c01c2df jal 0x00070b7c            Store ENTD flags into misc data w/o control flag
00071060: 02002021 addu r4,r16,r0            r4 = unit's misc ID pointer
00071064: 8e020134 lw r2,0x0134(r16)         acquires a word of unit Misc data (another pointer?)
00071068: 00000000 nop
0007106c: 10400046 beq r2,r0,0x00071188      branches if this data is null
00071070: 00000000 nop
00071074: 9044018a lbu r4,0x018a(r2)         loads a byte of data from the new pointer
00071078: 0c04fe40 jal 0x0013f900            0013f900 - 0013f974
0007107c: 00000000 nop
00071080: 0c01c2df jal 0x00070b7c            jumps part-way through 00070aa8 - 00070be0
00071084: 02002021 addu r4,r16,r0            r4 = unit's misc ID pointer
00071088: 3c028009 lui r2,0x8009
0007108c: 8c4260f8 lw r2,0x60f8(r2)          loads undocumented data 
00071090: 00000000 nop
00071094: 10400018 beq r2,r0,0x000710f8      branches if this data is null
00071098: 00000000 nop
0007109c: 9202013d lbu r2,0x013d(r16)        loads a byte of unit Misc data
000710a0: 00000000 nop
000710a4: 30420008 andi r2,r2,0x0008         if byte = 0x8, return true
000710a8: 14400013 bne r2,r0,0x000710f8      branches if this returns false
000710ac: 34020100 ori r2,r0,0x0100          r2 = 0x0100
000710b0: 3c03800a lui r3,0x800a
000710b4: 8c638d84 lw r3,-0x727c(r3)         loads type of action?
000710b8: 00000000 nop
000710bc: 14620011 bne r3,r2,0x00071104      branches if type of action =/= active turn?
000710c0: 00000000 nop
000710c4: 92040004 lbu r4,0x0004(r16)        loads byte of data* (same as indexed above)
000710c8: 0c01a38c jal 0x00068e30            Jump to 68d08
000710cc: 00000000 nop
000710d0: 0c010ffe jal 0x00043ff8            Play Sound Effect?
000710d4: 34040071 ori r4,r0,0x0071          r4 = sound effect ID 0x71?
000710d8: 0c01a1da jal 0x00068768            0006872c - 00068a64
000710dc: 00000000 nop
000710e0: 0c01a1ac jal 0x000686b0            000686b0 - 00068764
000710e4: 00000000 nop
000710e8: 0c01c301 jal 0x00070c04            Set next script = action menus
000710ec: 00000000 nop
000710f0: 0801c464 j 0x00071190              accesses jump return inside 000710e8 - 00071194. seems to serve no other purpose
000710f4: 00000000 nop
000710f8: 3c03800a lui r3,0x800a
000710fc: 8c638d84 lw r3,-0x727c(r3)         loads Type of action
00071100: 34020100 ori r2,r0,0x0100          r2 = 0x0100
00071104: 3c01800a lui r1,0x800a
00071108: ac208db8 sw r0,-0x7248(r1)         clears "?? cleared after post action"
0007110c: 10620003 beq r3,r2,0x0007111c      branches if type of action = active turn?
00071110: 3402ff00 ori r2,r0,0xff00          r2 = 0xff00
00071114: 14620004 bne r3,r2,0x00071128      branches if type of action =/= 0xff00?
00071118: 00000000 nop
0007111c: 92040004 lbu r4,0x0004(r16)        loads byte of Unit Misc data* (Same as indexed above)
00071120: 0c01a38c jal 0x00068e30            Jump to 68d08
00071124: 00000000 nop
00071128: 0c01c28e jal 0x00070a38            00070968 - 00070aa4
0007112c: 02002021 addu r4,r16,r0            r4 = Misc unit data pointer
00071130: 1440000e bne r2,r0,0x0007116c      branch if previous routine returns r2 =/= 0x0
00071134: 34040001 ori r4,r0,0x0001          r4 = 0x1
00071138: 340500ff ori r5,r0,0x00ff          r5 = 0xff
0007113c: 0c04f58d jal 0x0013d634            Store unit names and some event block data
00071140: 340600ff ori r6,r0,0x00ff          r6 = 0xff
00071144: 34020027 ori r2,r0,0x0027          r2 = specify direction for wait message + selecting direction for wait
00071148: 3c018009 lui r1,0x8009
0007114c: ac2260e4 sw r2,0x60e4(r1)          saves r2 to type of display
00071150: 0c066b8c jal 0x0019ae30            0019ae30 - 0019ae54
00071154: 00000000 nop
00071158: 34020001 ori r2,r0,0x0001          r2 = 0x1
0007115c: 3c01800e lui r1,0x800e
00071160: ac224e8c sw r2,0x4e8c(r1)          saves 0x1 to undocumented data (occurs 1 word before curser X coordinate)
00071164: 0801c45e j 0x00071178              reuses some code from 000710e8 - 00071194 and jump returns
00071168: 00000000 nop
0007116c: 92040004 lbu r4,0x0004(r16)        load byte of Misc unit data* (Same as indexed above)
00071170: 0c01a38c jal 0x00068e30            Jump to 68d08
00071174: 00000000 nop
00071178: 3c018009 lui r1,0x8009
0007117c: ac2060f8 sw r0,0x60f8(r1)          clears undocumented data
00071180: 0801c464 j 0x00071190              access jump return from 000710e8 - 00071194. seems to serve no other purpose
00071184: 00000000 nop
00071188: 0c01c31e jal 0x00070c78            00070c78 - 00070cd8
0007118c: 00000000 nop
00071190: 8fbf0014 lw r31,0x0014(r29)
00071194: 8fb00010 lw r16,0x0010(r29)
00071198: 27bd0018 addiu r29,r29,0x0018
0007119c: 03e00008 jr r31
000711a0: 00000000 nop