Difference between revisions of "Game Flow Control routine"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
m
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
+
alt notes: [[Main BATTLE.BIN Loop]]
 
  00079a98: 27bdffe0 addiu r29,r29,0xffe0
 
  00079a98: 27bdffe0 addiu r29,r29,0xffe0
 
  00079a9c: afbf001c sw r31,0x001c(r29)
 
  00079a9c: afbf001c sw r31,0x001c(r29)
Line 86: Line 86:
 
  00079be8: ac20612c sw r0,0x612c(r1)
 
  00079be8: ac20612c sw r0,0x612c(r1)
 
  00079bec: 3c038009 lui r3,0x8009
 
  00079bec: 3c038009 lui r3,0x8009
  00079bf0: 8c6360e4 lw r3,0x60e4(r3) load display byte
+
  00079bf0: 8c6360e4 lw r3,0x60e4(r3) load gamestate value
 
  00079bf4: 00000000 nop
 
  00079bf4: 00000000 nop
 
  00079bf8: 2c62003c sltiu r2,r3,0x003c
 
  00079bf8: 2c62003c sltiu r2,r3,0x003c
Line 99: Line 99:
  
  
000676a8: 80079c1c lb r7,-0x63e4(r0) Free Cursor
+
Free Cursor
000676ac: 80079c2c lb r7,-0x63d4(r0)
+
00079c1c: 0c01d2fe jal 0x00074bf8
000676b0: 80079c3c lb r7,-0x63c4(r0)
+
00079c20: 00000000 nop
000676b4: 80079c4c lb r7,-0x63b4(r0) Action menus
+
00079c24: 0801e7f1 j 0x 00079fc4
000676b8: 80079c5c lb r7,-0x63a4(r0)
+
00079c28: 00000000 nop
000676bc: 80079c6c lb r7,-0x6394(r0)
+
 
000676c0: 80079c7c lb r7,-0x6384(r0)
+
00079c2c: 0c01d374 jal 0x00074dd0
000676c4: 80079c8c lb r7,-0x6374(r0) AT/Options/Unit list
+
00079c30: 00000000 nop
000676c8: 80079c9c lb r7,-0x6364(r0)
+
00079c34: 0801e7f1 j 0x 00079fc4
000676cc: 80079cac lb r7,-0x6354(r0)
+
00079c38: 00000000 nop
000676d0: 80079cbc lb r7,-0x6344(r0)
+
 
000676d4: 80079cfc lb r7,-0x6304(r0)
+
00079c3c: 0c01d38b jal 0x00074e2c
000676d8: 80079d0c lb r7,-0x62f4(r0)
+
00079c40: 00000000 nop
000676dc: 80079d1c lb r7,-0x62e4(r0)
+
00079c44: 0801e7f1 j 0x 00079fc4
000676e0: 80079d2c lb r7,-0x62d4(r0)
+
00079c48: 00000000 nop
000676e4: 80079d3c lb r7,-0x62c4(r0)
+
Action Menus
000676e8: 80079d4c lb r7,-0x62b4(r0)
+
00079c4c: 0c01d3a5 jal 0x00074e94
000676ec: 80079d5c lb r7,-0x62a4(r0)
+
00079c50: 00000000 nop
000676f0: 80079d6c lb r7,-0x6294(r0) selecting direction for wait
+
00079c54: 0801e7f1 j 0x 00079fc4
000676f4: 80079d7c lb r7,-0x6284(r0) specify direction for wait message
+
00079c58: 00000000 nop
000676f8: 80079d8c lb r7,-0x6274(r0)
+
AI?
000676fc: 80079d9c lb r7,-0x6264(r0) specify target with cursor message / can't execute action
+
00079c5c: 0c01d3d7 jal 0x00074f5c
00067700: 80079dac lb r7,-0x6254(r0) Targeting, no target selected
+
00079c60: 00000000 nop
00067704: 80079dbc lb r7,-0x6244(r0) Select target within firing range message
+
00079c64: 0801e7f1 j 0x 00079fc4
00067708: 80079dcc lb r7,-0x6234(r0) Targeting, target selected
+
00079c68: 00000000 nop
0006770c: 80079ddc lb r7,-0x6224(r0)
+
AI
00067710: 80079dec lb r7,-0x6214(r0) Confirm action
+
00079c6c: 0c01d4c4 jal 0x00075310
00067714: 80079dfc lb r7,-0x6204(r0)
+
00079c70: 00000000 nop
00067718: 80079e0c lb r7,-0x61f4(r0)
+
00079c74: 0801e7f1 j 0x 00079fc4
0006771c: 80079e1c lb r7,-0x61e4(r0)
+
00079c78: 00000000 nop
00067720: 80079e2c lb r7,-0x61d4(r0) 0x29 - Action being taken
+
 
00067724: 80079edc lb r7,-0x6124(r0)
+
00079c7c: 0c01d57f jal 0x000755fc
00067728: 80079eec lb r7,-0x6114(r0) 0x2B - ability effect?
+
00079c80: 00000000 nop
0006772c: 80079efc lb r7,-0x6104(r0)
+
00079c84: 0801e7f1 j 0x 00079fc4
00067730: 80079f0c lb r7,-0x60f4(r0)
+
00079c88: 00000000 nop
00067734: 80079f1c lb r7,-0x60e4(r0)
+
00079c8c: 0c01d5a4 jal 0x00075690
00067738: 80079f2c lb r7,-0x60d4(r0)
+
00079c90: 00000000 nop
0006773c: 80079ccc lb r7,-0x6334(r0)
+
00079c94: 0801e7f1 j 0x 00079fc4
00067740: 80079cdc lb r7,-0x6324(r0)
+
00079c98: 00000000 nop
00067744: 80079cec lb r7,-0x6314(r0) JP/Exp gain
+
00079c9c: 0c01d5c7 jal 0x0007571c
00067748: 80079eac lb r7,-0x6154(r0)
+
00079ca0: 00000000 nop
0006774c: 80079e3c lb r7,-0x61c4(r0)
+
00079ca4: 0801e7f1 j 0x 00079fc4
00067750: 80079e4c lb r7,-0x61b4(r0) Ability effect 1
+
00079ca8: 00000000 nop
00067754: 80079e5c lb r7,-0x61a4(r0) ability effect 2
+
00079cac: 0c01d5f1 jal 0x000757c4
00067758: 80079e6c lb r7,-0x6194(r0) ability effect 3
+
00079cb0: 00000000 nop
0006775c: 80079e7c lb r7,-0x6184(r0)
+
00079cb4: 0801e7f1 j 0x 00079fc4
00067760: 80079e8c lb r7,-0x6174(r0)
+
00079cb8: 00000000 nop
00067764: 80079e9c lb r7,-0x6164(r0)
+
00079cbc: 0c01d608 jal 0x00075820
00067768: 80079ebc lb r7,-0x6144(r0)
+
00079cc0: 00000000 nop
0006776c: 80079ecc lb r7,-0x6134(r0)
+
00079cc4: 0801e7f1 j 0x 00079fc4
00067770: 80079c1c lb r7,-0x63e4(r0)
+
00079cc8: 00000000 nop
00067774: 80079f3c lb r7,-0x60c4(r0)
+
00079ccc: 0c01e028 jal 0x000780a0
00067778: 80079f4c lb r7,-0x60b4(r0)
+
00079cd0: 00000000 nop
0006777c: 80079f5c lb r7,-0x60a4(r0)
+
00079cd4: 0801e7f1 j 0x 00079fc4
00067780: 80079f6c lb r7,-0x6094(r0)
+
00079cd8: 00000000 nop
00067784: 80079f7c lb r7,-0x6084(r0)
+
00079cdc: 0c01e052 jal 0x00078148
00067788: 80079f8c lb r7,-0x6074(r0)
+
00079ce0: 00000000 nop
0006778c: 80079f9c lb r7,-0x6064(r0)
+
00079ce4: 0801e7f1 j 0x 00079fc4
00067790: 80079fac lb r7,-0x6054(r0)
+
00079ce8: 00000000 nop
00067794: 80079fbc lb r7,-0x6044(r0)
+
00079cec: 0c01e0ca jal 0x00078328
 +
00079cf0: 00000000 nop
 +
00079cf4: 0801e7f1 j 0x 00079fc4
 +
00079cf8: 00000000 nop
 +
00079cfc: 0c01e10f jal 0x0007843c
 +
00079d00: 00000000 nop
 +
00079d04: 0801e7f1 j 0x 00079fc4
 +
00079d08: 00000000 nop
 +
00079d0c: 0c01d61f jal 0x0007587c
 +
00079d10: 00000000 nop
 +
00079d14: 0801e7f1 j 0x 00079fc4
 +
00079d18: 00000000 nop
 +
00079d1c: 0c01d644 jal 0x00075910
 +
00079d20: 00000000 nop
 +
00079d24: 0801e7f1 j 0x 00079fc4
 +
00079d28: 00000000 nop
 +
00079d2c: 0c01d70d jal 0x00075c34
 +
00079d30: 00000000 nop
 +
00079d34: 0801e7f1 j 0x 00079fc4
 +
00079d38: 00000000 nop
 +
00079d3c: 0c01d728 jal 0x00075ca0
 +
00079d40: 00000000 nop
 +
00079d44: 0801e7f1 j 0x 00079fc4
 +
00079d48: 00000000 nop
 +
00079d4c: 0c01d743 jal 0x00075d0c
 +
00079d50: 00000000 nop
 +
00079d54: 0801e7f1 j 0x 00079fc4
 +
00079d58: 00000000 nop
 +
00079d5c: 0c01d76c jal 0x00075db0
 +
00079d60: 00000000 nop
 +
00079d64: 0801e7f1 j 0x 00079fc4
 +
00079d68: 00000000 nop
 +
00079d6c: 0c01d873 jal 0x000761cc
 +
00079d70: 00000000 nop
 +
00079d74: 0801e7f1 j 0x 00079fc4
 +
00079d78: 00000000 nop
 +
00079d7c: 0c01d90c jal 0x00076430
 +
00079d80: 00000000 nop
 +
00079d84: 0801e7f1 j 0x 00079fc4
 +
00079d88: 00000000 nop
 +
 
 +
Change of turn?
 +
00079d8c: 0c01d8a7 jal 0x0007629c
 +
00079d90: 00000000 nop
 +
00079d94: 0801e7f1 j 0x 00079fc4
 +
00079d98: 00000000 nop
 +
00079d9c: 0c01d996 jal 0x00076658
 +
00079da0: 00000000 nop
 +
00079da4: 0801e7f1 j 0x 00079fc4
 +
00079da8: 00000000 nop
 +
00079dac: 0c01da47 jal 0x0007691c
 +
00079db0: 00000000 nop
 +
00079db4: 0801e7f1 j 0x 00079fc4
 +
00079db8: 00000000 nop
 +
00079dbc: 0c01da6c jal 0x000769b0
 +
00079dc0: 00000000 nop
 +
00079dc4: 0801e7f1 j 0x 00079fc4
 +
00079dc8: 00000000 nop
 +
00079dcc: 0c01dadf jal 0x00076b7c
 +
00079dd0: 00000000 nop
 +
00079dd4: 0801e7f1 j 0x 00079fc4
 +
00079dd8: 00000000 nop
 +
00079ddc: 0c01db14 jal 0x00076c50
 +
00079de0: 00000000 nop
 +
00079de4: 0801e7f1 j 0x 00079fc4
 +
00079de8: 00000000 nop
 +
00079dec: 0c01dafa jal 0x00076be8
 +
00079df0: 00000000 nop
 +
00079df4: 0801e7f1 j 0x 00079fc4
 +
00079df8: 00000000 nop
 +
 
 +
Attack
 +
00079dfc: 0c01db61 jal 0x00076d84                      [[00076d84 - 00076f10]]
 +
00079e00: 00000000 nop
 +
00079e04: 0801e7f1 j 0x 00079fc4
 +
00079e08: 00000000 nop
 +
 
 +
00079e0c: 0c01dbc5 jal 0x00076f14 [[00076f14 - 00076fcc]] Store animation/facing
 +
00079e10: 00000000 nop
 +
00079e14: 0801e7f1 j 0x 00079fc4
 +
00079e18: 00000000 nop
 +
 
 +
AI?
 +
00079e1c: 0c01dbf4 jal 0x00076fd0                      [[00076fd0 - 00077094]]
 +
00079e20: 00000000 nop
 +
00079e24: 0801e7f1 j 0x 00079fc4
 +
00079e28: 00000000 nop
 +
 
 +
Commence attack
 +
00079e2c: 0c01dc26 jal 0x00077098 [[00077098 - 00077130]] Sets current action phase to pre-attack and queues action phase control.
 +
00079e30: 00000000 nop
 +
00079e34: 0801e7f1 j 0x 00079fc4
 +
00079e38: 00000000 nop
 +
 
 +
Commence effect damage display
 +
00079e3c: 0c01dc4d jal 0x00077134                      [[00077134 - 0007719c]]
 +
00079e40: 00000000 nop
 +
00079e44: 0801e7f1 j 0x 00079fc4
 +
00079e48: 00000000 nop
 +
 
 +
Load SP2
 +
00079e4c: 0c01dc68 jal 0x000771a0 [[Before attack: Load SP2]] for monsters, typically.
 +
00079e50: 00000000 nop
 +
00079e54: 0801e7f1 j 0x 00079fc4
 +
00079e58: 00000000 nop
 +
 
 +
Commence effect opening
 +
00079e5c: 0c01dcc5 jal 0x00077314 [[00077314 - 00077374]] sets display to 0x2a
 +
00079e60: 00000000 nop
 +
00079e64: 0801e7f1 j 0x 00079fc4
 +
00079e68: 00000000 nop
 +
 
 +
Commence secondary effect animations
 +
00079e6c: 0c01dcde jal 0x00077378 [[00077378 - 000773b0]] Moogle (0x2C)??
 +
00079e70: 00000000 nop
 +
00079e74: 0801e7f1 j 0x 00079fc4
 +
00079e78: 00000000 nop
 +
 
 +
Calculate whether or not to display damage/effects? (also does recoil?)
 +
00079e7c: 0c01dcfe jal 0x000773f8                      [[000773f8 - 0007775c]]
 +
00079e80: 00000000 nop
 +
00079e84: 0801e7f1 j 0x 00079fc4
 +
00079e88: 00000000 nop
 +
 
 +
Controller input during ability quote/name text?
 +
00079e8c: 0c01ddd8 jal 0x00077760                      [[Controller input during proposition description?]]
 +
00079e90: 00000000 nop
 +
00079e94: 0801e7f1 j 0x 00079fc4
 +
00079e98: 00000000 nop
 +
 
 +
Recommence Attack/handle reactions.
 +
00079e9c: 0c01ddfb jal 0x000777ec                      [[000777ec - 0007799c]] Recommence attack phase control. (if hamedo triggered, skips)
 +
00079ea0: 00000000 nop
 +
00079ea4: 0801e7f1 j 0x 00079fc4
 +
00079ea8: 00000000 nop
 +
 
 +
Learn abilities on hit
 +
00079eac: 0c01de68 jal 0x000779a0                      [[000779a0 - 00077b54]]
 +
00079eb0: 00000000 nop
 +
00079eb4: 0801e7f1 j 0x 00079fc4
 +
00079eb8: 00000000 nop
 +
 
 +
finishes up attack?
 +
00079ebc: 0c01def6 jal 0x00077bd8                      [[00077bd8 - 00077c04]]
 +
00079ec0: 00000000 nop
 +
00079ec4: 0801e7f1 j 0x 00079fc4
 +
00079ec8: 00000000 nop
 +
 
 +
Finishes up attack/calculator math/checks game over.
 +
00079ecc: 0c01df02 jal 0x00077c08                      [[00077c08 - 00077c34]]
 +
00079ed0: 00000000 nop
 +
00079ed4: 0801e7f1 j 0x 00079fc4
 +
00079ed8: 00000000 nop
 +
 
 +
AI?
 +
00079edc: 0c01df0e jal 0x00077c38
 +
00079ee0: 00000000 nop
 +
00079ee4: 0801e7f1 j 0x 00079fc4
 +
00079ee8: 00000000 nop
 +
 
 +
dense
 +
00079eec: 0c01df29 jal 0x00077ca4
 +
00079ef0: 00000000 nop
 +
00079ef4: 0801e7f1 j 0x 00079fc4
 +
00079ef8: 00000000 nop
 +
 
 +
AI?
 +
00079efc: 0c01df87 jal 0x00077e1c
 +
00079f00: 00000000 nop
 +
00079f04: 0801e7f1 j 0x 00079fc4
 +
00079f08: 00000000 nop
 +
 
 +
AI Target processing
 +
00079f0c: 0c01dfa2 jal 0x00077e88
 +
00079f10: 00000000 nop
 +
00079f14: 0801e7f1 j 0x 00079fc4
 +
00079f18: 00000000 nop
 +
 
 +
AI?
 +
00079f1c: 0c01dfda jal 0x00077f68
 +
00079f20: 00000000 nop
 +
00079f24: 0801e7f1 j 0x 00079fc4
 +
00079f28: 00000000 nop
 +
 
 +
AI?
 +
00079f2c: 0c01e00c jal 0x00078030
 +
00079f30: 00000000 nop
 +
00079f34: 0801e7f1 j 0x 00079fc4
 +
00079f38: 00000000 nop
 +
 
 +
Seems related to finishes up attack, missing effects checks?
 +
00079f3c: 0c01e141 jal 0x00078504
 +
00079f40: 00000000 nop
 +
00079f44: 0801e7f1 j 0x 00079fc4
 +
00079f48: 00000000 nop
 +
 
 +
dense
 +
00079f4c: 0c01e16b jal 0x000785ac
 +
00079f50: 00000000 nop
 +
00079f54: 0801e7f1 j 0x 00079fc4
 +
00079f58: 00000000 nop
 +
 
 +
dense
 +
00079f5c: 0c01e1ff jal 0x000787fc
 +
00079f60: 00000000 nop
 +
00079f64: 0801e7f1 j 0x 00079fc4
 +
00079f68: 00000000 nop
 +
00079f6c: 0c01e2fd jal 0x00078bf4
 +
00079f70: 00000000 nop
 +
00079f74: 0801e7f1 j 0x 00079fc4
 +
00079f78: 00000000 nop
 +
00079f7c: 0c01e396 jal 0x00078e58
 +
00079f80: 00000000 nop
 +
00079f84: 0801e7f1 j 0x 00079fc4
 +
00079f88: 00000000 nop
 +
00079f8c: 0c01e259 jal 0x00078964
 +
00079f90: 00000000 nop
 +
00079f94: 0801e7f1 j 0x 00079fc4
 +
00079f98: 00000000 nop
 +
00079f9c: 0c01e348 jal 0x00078d20
 +
00079fa0: 00000000 nop
 +
00079fa4: 0801e7f1 j 0x 00079fc4
 +
00079fa8: 00000000 nop
 +
00079fac: 0c01e3ed jal 0x00078fb4
 +
00079fb0: 00000000 nop
 +
00079fb4: 0801e7f1 j 0x 00079fc4
 +
00079fb8: 00000000 nop
 +
00079fbc: 0c01e2b3 jal 0x00078acc
 +
00079fc0: 00000000 nop
 +
 
 +
 
 +
00079fc4: 0c01bbc0 jal 0x0006ef00
 +
00079fc8: 00000000 nop
 +
00079fcc: 0c01bcc8 jal 0x0006f320
 +
00079fd0: 00000000 nop
 +
00079fd4: 0c01bd9e jal 0x0006f678
 +
00079fd8: 00000000 nop
 +
00079fdc: 0c01be6b jal 0x0006f9ac
 +
00079fe0: 00000000 nop
 +
00079fe4: 0c0244a9 jal 0x000912a4
 +
00079fe8: 00000000 nop
 +
00079fec: 0c010f78 jal 0x00043de0
 +
00079ff0: 00000000 nop
 +
00079ff4: 3c038009 lui r3,0x8009
 +
00079ff8: 8c6360e4 lw r3,0x60e4(r3) load game flow byte
 +
00079ffc: 3402003b ori r2,r0,0x003b
 +
0007a000: 1062005c beq r3,r2,0x 0007a174 branch if 3b
 +
0007a004: 00000000 nop
 +
0007a008: 3c048005 lui r4,0x8005
 +
0007a00c: 2484eaf4 addiu r4,r4,0xeaf4
 +
0007a010: 0c00478e jal 0x00011e38
 +
0007a014: 00000000 nop
 +
0007a018: 3c028004 lui r2,0x8004
 +
0007a01c: 8c42597c lw r2,0x597c(r2)
 +
0007a020: 3c038004 lui r3,0x8004
 +
0007a024: 8c635994 lw r3,0x5994(r3)
 +
0007a028: 2c420001 sltiu r2,r2,0x0001
 +
0007a02c: 24630001 addiu r3,r3,0x0001
 +
0007a030: 3c018004 lui r1,0x8004
 +
0007a034: ac22597c sw r2,0x597c(r1)
 +
0007a038: 3c018004 lui r1,0x8004
 +
0007a03c: ac235994 sw r3,0x5994(r1)
 +
0007a040: 0c024be6 jal 0x00092f98
 +
0007a044: 00000000 nop
 +
0007a048: 0c011298 jal 0x00044a60
 +
0007a04c: 00000000 nop
 +
0007a050: 0c024ea6 jal 0x00093a98
 +
0007a054: 244405fc addiu r4,r2,0x05fc
 +
0007a058: 3c038004 lui r3,0x8004
 +
0007a05c: 8c635988 lw r3,0x5988(r3)
 +
0007a060: 3c018004 lui r1,0x8004
 +
0007a064: ac225984 sw r2,0x5984(r1)
 +
0007a068: 0062182a slt r3,r3,r2
 +
0007a06c: 10600003 beq r3,r0,0x 0007a07c
 +
0007a070: 00002821 addu r5,r0,r0
 +
0007a074: 3c018004 lui r1,0x8004
 +
0007a078: ac225988 sw r2,0x5988(r1)
 +
0007a07c: 340600fe ori r6,r0,0x00fe
 +
0007a080: 3c04800a lui r4,0x800a
 +
0007a084: 248477c4 addiu r4,r4,0x77c4 #position of misc unit ID & 0x80/0x40/0x20 flags?
 +
0007a088: 00001821 addu r3,r0,r0
 +
0007a08c: 3c01800a lui r1,0x800a
 +
0007a090: 00230821 addu r1,r1,r3
 +
0007a094: 8c2277c8 lw r2,0x77c8(r1) global timer...?
 +
0007a098: 00000000 nop
 +
0007a09c: 10400004 beq r2,r0,0x 0007a0b0
 +
0007a0a0: 24637564 addiu r3,r3,0x7564
 +
0007a0a4: 10460002 beq r2,r6,0x 0007a0b0 #branch if 0 or 0xfe?
 +
0007a0a8: 2442ffff addiu r2,r2,0xffff
 +
0007a0ac: ac820004 sw r2,0x0004(r4) #subtract 1, save again.
 +
0007a0b0: 24a50001 addiu r5,r5,0x0001
 +
0007a0b4: 28a20002 slti r2,r5,0x0002
 +
0007a0b8: 1440fff4 bne r2,r0,0x 0007a08c #loop
 +
0007a0bc: 24847564 addiu r4,r4,0x7564 #next slot?
 +
0007a0c0: 3c038009 lui r3,0x8009
 +
0007a0c4: 8c6360e4 lw r3,0x60e4(r3)
 +
0007a0c8: 34020033 ori r2,r0,0x0033
 +
0007a0cc: 10620003 beq r3,r2,0x 0007a0dc #branch if gameflow state is 0x33 (n... none of them?)
 +
0007a0d0: 3402002d ori r2,r0,0x002d
 +
0007a0d4: 14620021 bne r3,r2,0x 0007a15c #branch if not 2d?
 +
0007a0d8: 00000000 nop
 +
0007a0dc: 3c038004 lui r3,0x8004
 +
0007a0e0: 8c635980 lw r3,0x5980(r3)
 +
0007a0e4: 34020001 ori r2,r0,0x0001
 +
0007a0e8: 14620005 bne r3,r2,0x 0007a100
 +
0007a0ec: 00000000 nop
 +
0007a0f0: 3c018004 lui r1,0x8004
 +
0007a0f4: ac20598c sw r0,0x598c(r1)
 +
0007a0f8: 0801e857 j 0x 0007a15c
 +
0007a0fc: 00000000 nop
 +
0007a100: 3c028004 lui r2,0x8004
 +
0007a104: 8c425990 lw r2,0x5990(r2)
 +
0007a108: 00000000 nop
 +
0007a10c: 14400013 bne r2,r0,0x 0007a15c
 +
0007a110: 00000000 nop
 +
0007a114: 3c038004 lui r3,0x8004
 +
0007a118: 8c635984 lw r3,0x5984(r3)
 +
0007a11c: 00000000 nop
 +
0007a120: 28620301 slti r2,r3,0x0301
 +
0007a124: 14400003 bne r2,r0,0x 0007a134
 +
0007a128: 28620201 slti r2,r3,0x0201
 +
0007a12c: 0801e855 j 0x 0007a154
 +
0007a130: 3402001e ori r2,r0,0x001e
 +
0007a134: 14400009 bne r2,r0,0x 0007a15c
 +
0007a138: 00000000 nop
 +
0007a13c: 3c028004 lui r2,0x8004
 +
0007a140: 8c42598c lw r2,0x598c(r2)
 +
0007a144: 00000000 nop
 +
0007a148: 2842000f slti r2,r2,0x000f
 +
0007a14c: 10400003 beq r2,r0,0x 0007a15c
 +
0007a150: 3402000f ori r2,r0,0x000f
 +
0007a154: 3c018004 lui r1,0x8004
 +
0007a158: ac22598c sw r2,0x598c(r1)
 +
0007a15c: 3c018004 lui r1,0x8004
 +
0007a160: ac205990 sw r0,0x5990(r1)
 +
0007a164: 0c01127b jal 0x000449ec
 +
0007a168: 00000000 nop
 +
0007a16c: 0801e6c5 j 0x 00079b14
 +
0007a170: 00000000 nop
 +
0007a174: 0c01e1f7 jal 0x000787dc
 +
0007a178: 00000000 nop
 +
0007a17c: 0c021c19 jal 0x00087064
 +
0007a180: 00000000 nop
 +
0007a184: 3c02800a lui r2,0x800a
 +
0007a188: 8c42778c lw r2,0x778c(r2)
 +
0007a18c: 00000000 nop
 +
0007a190: 1040fe57 beq r2,r0,0x 00079af0
 +
0007a194: 00000000 nop
 +
0007a198: 0c0091b5 jal 0x000246d4
 +
0007a19c: 00002021 addu r4,r0,r0
 +
0007a1a0: 0c0076ea jal 0x0001dba8
 +
0007a1a4: 00002021 addu r4,r0,r0
 +
0007a1a8: 0c0091b5 jal 0x000246d4
 +
0007a1ac: 00002021 addu r4,r0,r0
 +
0007a1b0: 0c0076ea jal 0x0001dba8
 +
0007a1b4: 00002021 addu r4,r0,r0
 +
0007a1b8: 8fbf001c lw r31,0x001c(r29)
 +
0007a1bc: 8fb20018 lw r18,0x0018(r29)
 +
0007a1c0: 8fb10014 lw r17,0x0014(r29)
 +
0007a1c4: 8fb00010 lw r16,0x0010(r29)
 +
0007a1c8: 27bd0020 addiu r29,r29,0x0020
 +
0007a1cc: 03e00008 jr r31
 +
0007a1d0: 00000000 nop

Latest revision as of 23:07, 1 May 2024

alt notes: Main BATTLE.BIN Loop

00079a98: 27bdffe0 addiu r29,r29,0xffe0
00079a9c: afbf001c sw r31,0x001c(r29)
00079aa0: afb20018 sw r18,0x0018(r29)
00079aa4: afb10014 sw r17,0x0014(r29)
00079aa8: 0c03b841 jal 0x000ee104
00079aac: afb00010 sw r16,0x0010(r29)
00079ab0: 0c01eaf4 jal 0x0007abd0			initialize a bunch of data
00079ab4: 00000000 nop
00079ab8: 0c06b58b jal 0x001ad62c			initialize data
00079abc: 00000000 nop
00079ac0: 3c020001 lui r2,0x0001
00079ac4: 344296b0 ori r2,r2,0x96b0
00079ac8: 3c01800c lui r1,0x800c
00079acc: 00220821 addu r1,r1,r2
00079ad0: a0207ce9 sb r0,0x7ce9(r1)
00079ad4: 2442cd2a addiu r2,r2,0xcd2a
00079ad8: 0441fffb bgez r2,0x 00079ac8
00079adc: 00000000 nop
00079ae0: 3c12800f lui r18,0x800f
00079ae4: 26525b9c addiu r18,r18,0x5b9c
00079ae8: 3c11800e lui r17,0x800e
00079aec: 26314e74 addiu r17,r17,0x4e74
00079af0: 0c01e4a8 jal 0x 000792a0			panel/tile initialization
00079af4: 00000000 nop
00079af8: 3c028004 lui r2,0x8004
00079afc: 8c4273ac lw r2,0x73ac(r2)
00079b00: 3c01800e lui r1,0x800e
00079b04: ac204e8c sw r0,0x4e8c(r1)
00079b08: 30420007 andi r2,r2,0x0007
00079b0c: 3c018009 lui r1,0x8009
00079b10: ac2260c0 sw r2,0x60c0(r1)
00079b14: 0c024d95 jal 0x00093654
00079b18: 00000000 nop
00079b1c: 0c01ebb5 jal 0x0007aed4
00079b20: 00000000 nop
00079b24: 0c007472 jal 0x0001d1c8
00079b28: 34040200 ori r4,r0,0x0200
00079b2c: 0c01129f jal 0x00044a7c
00079b30: 00000000 nop
00079b34: 0c01c0b9 jal 0x000702e4
00079b38: 00000000 nop
00079b3c: 8e220000 lw r2,0x0000(r17)
00079b40: 00000000 nop
00079b44: 00021023 subu r2,r0,r2
00079b48: 04410002 bgez r2,0x 00079b54
00079b4c: 00000000 nop
00079b50: 24420fff addiu r2,r2,0x0fff
00079b54: 8e230004 lw r3,0x0004(r17)
00079b58: 00021303 sra r2,r2,0x0c
00079b5c: a6420000 sh r2,0x0000(r18)
00079b60: 00031023 subu r2,r0,r3
00079b64: 04410002 bgez r2,0x 00079b70
00079b68: 00000000 nop
00079b6c: 24420fff addiu r2,r2,0x0fff
00079b70: 8e230008 lw r3,0x0008(r17)
00079b74: 00021303 sra r2,r2,0x0c
00079b78: a6420002 sh r2,0x0002(r18)
00079b7c: 00031023 subu r2,r0,r3
00079b80: 04410002 bgez r2,0x 00079b8c
00079b84: 00000000 nop
00079b88: 24420fff addiu r2,r2,0x0fff
00079b8c: 00021303 sra r2,r2,0x0c
00079b90: a6420004 sh r2,0x0004(r18)
00079b94: 3c10800a lui r16,0x800a
00079b98: 26108a24 addiu r16,r16,0x8a24
00079b9c: 3c05800a lui r5,0x800a
00079ba0: 24a57784 addiu r5,r5,0x7784
00079ba4: 3c06800a lui r6,0x800a
00079ba8: 24c677b0 addiu r6,r6,0x77b0
00079bac: 3c07800c lui r7,0x800c
00079bb0: 24e77ca0 addiu r7,r7,0x7ca0
00079bb4: 0c03ba57 jal 0x000ee95c
00079bb8: 02002021 addu r4,r16,r0
00079bbc: 0c03a103 jal 0x000e840c
00079bc0: 02002021 addu r4,r16,r0
00079bc4: 0c068710 jal 0x001a1c40
00079bc8: 00000000 nop
00079bcc: 10400005 beq r2,r0,0x 00079be4
00079bd0: 34020002 ori r2,r0,0x0002
00079bd4: 3c018009 lui r1,0x8009
00079bd8: ac22612c sw r2,0x612c(r1)
00079bdc: 0801e6fb j 0x 00079bec
00079be0: 00000000 nop
00079be4: 3c018009 lui r1,0x8009
00079be8: ac20612c sw r0,0x612c(r1)
00079bec: 3c038009 lui r3,0x8009
00079bf0: 8c6360e4 lw r3,0x60e4(r3)			load gamestate value
00079bf4: 00000000 nop
00079bf8: 2c62003c sltiu r2,r3,0x003c
00079bfc: 10400007 beq r2,r0,0x 00079c1c
00079c00: 00031080 sll r2,r3,0x02
00079c04: 3c018006 lui r1,0x8006
00079c08: 00220821 addu r1,r1,r2
00079c0c: 8c2276a8 lw r2,0x76a8(r1)			
00079c10: 00000000 nop
00079c14: 00400008 jr r2
00079c18: 00000000 nop


Free Cursor

00079c1c: 0c01d2fe jal 0x00074bf8
00079c20: 00000000 nop
00079c24: 0801e7f1 j 0x 00079fc4
00079c28: 00000000 nop
00079c2c: 0c01d374 jal 0x00074dd0
00079c30: 00000000 nop
00079c34: 0801e7f1 j 0x 00079fc4
00079c38: 00000000 nop
00079c3c: 0c01d38b jal 0x00074e2c
00079c40: 00000000 nop
00079c44: 0801e7f1 j 0x 00079fc4
00079c48: 00000000 nop

Action Menus

00079c4c: 0c01d3a5 jal 0x00074e94
00079c50: 00000000 nop
00079c54: 0801e7f1 j 0x 00079fc4
00079c58: 00000000 nop

AI?

00079c5c: 0c01d3d7 jal 0x00074f5c
00079c60: 00000000 nop
00079c64: 0801e7f1 j 0x 00079fc4
00079c68: 00000000 nop

AI

00079c6c: 0c01d4c4 jal 0x00075310
00079c70: 00000000 nop
00079c74: 0801e7f1 j 0x 00079fc4
00079c78: 00000000 nop
00079c7c: 0c01d57f jal 0x000755fc
00079c80: 00000000 nop
00079c84: 0801e7f1 j 0x 00079fc4
00079c88: 00000000 nop
00079c8c: 0c01d5a4 jal 0x00075690
00079c90: 00000000 nop
00079c94: 0801e7f1 j 0x 00079fc4
00079c98: 00000000 nop
00079c9c: 0c01d5c7 jal 0x0007571c
00079ca0: 00000000 nop
00079ca4: 0801e7f1 j 0x 00079fc4
00079ca8: 00000000 nop
00079cac: 0c01d5f1 jal 0x000757c4
00079cb0: 00000000 nop
00079cb4: 0801e7f1 j 0x 00079fc4
00079cb8: 00000000 nop
00079cbc: 0c01d608 jal 0x00075820
00079cc0: 00000000 nop
00079cc4: 0801e7f1 j 0x 00079fc4
00079cc8: 00000000 nop
00079ccc: 0c01e028 jal 0x000780a0
00079cd0: 00000000 nop
00079cd4: 0801e7f1 j 0x 00079fc4
00079cd8: 00000000 nop
00079cdc: 0c01e052 jal 0x00078148
00079ce0: 00000000 nop
00079ce4: 0801e7f1 j 0x 00079fc4
00079ce8: 00000000 nop
00079cec: 0c01e0ca jal 0x00078328
00079cf0: 00000000 nop
00079cf4: 0801e7f1 j 0x 00079fc4
00079cf8: 00000000 nop
00079cfc: 0c01e10f jal 0x0007843c
00079d00: 00000000 nop
00079d04: 0801e7f1 j 0x 00079fc4
00079d08: 00000000 nop
00079d0c: 0c01d61f jal 0x0007587c
00079d10: 00000000 nop
00079d14: 0801e7f1 j 0x 00079fc4
00079d18: 00000000 nop
00079d1c: 0c01d644 jal 0x00075910
00079d20: 00000000 nop
00079d24: 0801e7f1 j 0x 00079fc4
00079d28: 00000000 nop
00079d2c: 0c01d70d jal 0x00075c34
00079d30: 00000000 nop
00079d34: 0801e7f1 j 0x 00079fc4
00079d38: 00000000 nop
00079d3c: 0c01d728 jal 0x00075ca0
00079d40: 00000000 nop
00079d44: 0801e7f1 j 0x 00079fc4
00079d48: 00000000 nop
00079d4c: 0c01d743 jal 0x00075d0c
00079d50: 00000000 nop
00079d54: 0801e7f1 j 0x 00079fc4
00079d58: 00000000 nop
00079d5c: 0c01d76c jal 0x00075db0
00079d60: 00000000 nop
00079d64: 0801e7f1 j 0x 00079fc4
00079d68: 00000000 nop
00079d6c: 0c01d873 jal 0x000761cc
00079d70: 00000000 nop
00079d74: 0801e7f1 j 0x 00079fc4
00079d78: 00000000 nop
00079d7c: 0c01d90c jal 0x00076430
00079d80: 00000000 nop
00079d84: 0801e7f1 j 0x 00079fc4
00079d88: 00000000 nop

Change of turn?

00079d8c: 0c01d8a7 jal 0x0007629c
00079d90: 00000000 nop
00079d94: 0801e7f1 j 0x 00079fc4
00079d98: 00000000 nop
00079d9c: 0c01d996 jal 0x00076658
00079da0: 00000000 nop
00079da4: 0801e7f1 j 0x 00079fc4
00079da8: 00000000 nop
00079dac: 0c01da47 jal 0x0007691c
00079db0: 00000000 nop
00079db4: 0801e7f1 j 0x 00079fc4
00079db8: 00000000 nop
00079dbc: 0c01da6c jal 0x000769b0
00079dc0: 00000000 nop
00079dc4: 0801e7f1 j 0x 00079fc4
00079dc8: 00000000 nop
00079dcc: 0c01dadf jal 0x00076b7c
00079dd0: 00000000 nop
00079dd4: 0801e7f1 j 0x 00079fc4
00079dd8: 00000000 nop
00079ddc: 0c01db14 jal 0x00076c50
00079de0: 00000000 nop
00079de4: 0801e7f1 j 0x 00079fc4
00079de8: 00000000 nop
00079dec: 0c01dafa jal 0x00076be8
00079df0: 00000000 nop
00079df4: 0801e7f1 j 0x 00079fc4
00079df8: 00000000 nop

Attack

00079dfc: 0c01db61 jal 0x00076d84                      00076d84 - 00076f10
00079e00: 00000000 nop
00079e04: 0801e7f1 j 0x 00079fc4
00079e08: 00000000 nop
00079e0c: 0c01dbc5 jal 0x00076f14			00076f14 - 00076fcc Store animation/facing
00079e10: 00000000 nop
00079e14: 0801e7f1 j 0x 00079fc4
00079e18: 00000000 nop

AI?

00079e1c: 0c01dbf4 jal 0x00076fd0                      00076fd0 - 00077094
00079e20: 00000000 nop
00079e24: 0801e7f1 j 0x 00079fc4
00079e28: 00000000 nop

Commence attack

00079e2c: 0c01dc26 jal 0x00077098			00077098 - 00077130 Sets current action phase to pre-attack and queues action phase control.
00079e30: 00000000 nop
00079e34: 0801e7f1 j 0x 00079fc4
00079e38: 00000000 nop

Commence effect damage display

00079e3c: 0c01dc4d jal 0x00077134                      00077134 - 0007719c
00079e40: 00000000 nop
00079e44: 0801e7f1 j 0x 00079fc4
00079e48: 00000000 nop

Load SP2

00079e4c: 0c01dc68 jal 0x000771a0			Before attack: Load SP2 for monsters, typically.
00079e50: 00000000 nop
00079e54: 0801e7f1 j 0x 00079fc4
00079e58: 00000000 nop

Commence effect opening

00079e5c: 0c01dcc5 jal 0x00077314			00077314 - 00077374 sets display to 0x2a
00079e60: 00000000 nop
00079e64: 0801e7f1 j 0x 00079fc4
00079e68: 00000000 nop

Commence secondary effect animations

00079e6c: 0c01dcde jal 0x00077378			00077378 - 000773b0 Moogle (0x2C)??
00079e70: 00000000 nop
00079e74: 0801e7f1 j 0x 00079fc4
00079e78: 00000000 nop

Calculate whether or not to display damage/effects? (also does recoil?)

00079e7c: 0c01dcfe jal 0x000773f8                      000773f8 - 0007775c
00079e80: 00000000 nop
00079e84: 0801e7f1 j 0x 00079fc4
00079e88: 00000000 nop

Controller input during ability quote/name text?

00079e8c: 0c01ddd8 jal 0x00077760                      Controller input during proposition description?
00079e90: 00000000 nop
00079e94: 0801e7f1 j 0x 00079fc4
00079e98: 00000000 nop

Recommence Attack/handle reactions.

00079e9c: 0c01ddfb jal 0x000777ec                      000777ec - 0007799c Recommence attack phase control. (if hamedo triggered, skips)
00079ea0: 00000000 nop
00079ea4: 0801e7f1 j 0x 00079fc4
00079ea8: 00000000 nop

Learn abilities on hit

00079eac: 0c01de68 jal 0x000779a0                      000779a0 - 00077b54
00079eb0: 00000000 nop
00079eb4: 0801e7f1 j 0x 00079fc4
00079eb8: 00000000 nop

finishes up attack?

00079ebc: 0c01def6 jal 0x00077bd8                      00077bd8 - 00077c04
00079ec0: 00000000 nop
00079ec4: 0801e7f1 j 0x 00079fc4
00079ec8: 00000000 nop

Finishes up attack/calculator math/checks game over.

00079ecc: 0c01df02 jal 0x00077c08                      00077c08 - 00077c34
00079ed0: 00000000 nop
00079ed4: 0801e7f1 j 0x 00079fc4
00079ed8: 00000000 nop

AI?

00079edc: 0c01df0e jal 0x00077c38
00079ee0: 00000000 nop
00079ee4: 0801e7f1 j 0x 00079fc4
00079ee8: 00000000 nop

dense

00079eec: 0c01df29 jal 0x00077ca4
00079ef0: 00000000 nop
00079ef4: 0801e7f1 j 0x 00079fc4
00079ef8: 00000000 nop

AI?

00079efc: 0c01df87 jal 0x00077e1c
00079f00: 00000000 nop
00079f04: 0801e7f1 j 0x 00079fc4
00079f08: 00000000 nop

AI Target processing

00079f0c: 0c01dfa2 jal 0x00077e88
00079f10: 00000000 nop
00079f14: 0801e7f1 j 0x 00079fc4
00079f18: 00000000 nop

AI?

00079f1c: 0c01dfda jal 0x00077f68
00079f20: 00000000 nop
00079f24: 0801e7f1 j 0x 00079fc4
00079f28: 00000000 nop

AI?

00079f2c: 0c01e00c jal 0x00078030
00079f30: 00000000 nop
00079f34: 0801e7f1 j 0x 00079fc4
00079f38: 00000000 nop

Seems related to finishes up attack, missing effects checks?

00079f3c: 0c01e141 jal 0x00078504
00079f40: 00000000 nop
00079f44: 0801e7f1 j 0x 00079fc4
00079f48: 00000000 nop

dense

00079f4c: 0c01e16b jal 0x000785ac
00079f50: 00000000 nop
00079f54: 0801e7f1 j 0x 00079fc4
00079f58: 00000000 nop

dense

00079f5c: 0c01e1ff jal 0x000787fc
00079f60: 00000000 nop
00079f64: 0801e7f1 j 0x 00079fc4
00079f68: 00000000 nop
00079f6c: 0c01e2fd jal 0x00078bf4
00079f70: 00000000 nop
00079f74: 0801e7f1 j 0x 00079fc4
00079f78: 00000000 nop
00079f7c: 0c01e396 jal 0x00078e58
00079f80: 00000000 nop
00079f84: 0801e7f1 j 0x 00079fc4
00079f88: 00000000 nop
00079f8c: 0c01e259 jal 0x00078964
00079f90: 00000000 nop
00079f94: 0801e7f1 j 0x 00079fc4
00079f98: 00000000 nop
00079f9c: 0c01e348 jal 0x00078d20
00079fa0: 00000000 nop
00079fa4: 0801e7f1 j 0x 00079fc4
00079fa8: 00000000 nop
00079fac: 0c01e3ed jal 0x00078fb4
00079fb0: 00000000 nop
00079fb4: 0801e7f1 j 0x 00079fc4
00079fb8: 00000000 nop
00079fbc: 0c01e2b3 jal 0x00078acc
00079fc0: 00000000 nop


00079fc4: 0c01bbc0 jal 0x0006ef00
00079fc8: 00000000 nop
00079fcc: 0c01bcc8 jal 0x0006f320
00079fd0: 00000000 nop
00079fd4: 0c01bd9e jal 0x0006f678
00079fd8: 00000000 nop
00079fdc: 0c01be6b jal 0x0006f9ac
00079fe0: 00000000 nop
00079fe4: 0c0244a9 jal 0x000912a4
00079fe8: 00000000 nop
00079fec: 0c010f78 jal 0x00043de0
00079ff0: 00000000 nop
00079ff4: 3c038009 lui r3,0x8009
00079ff8: 8c6360e4 lw r3,0x60e4(r3)				load game flow byte
00079ffc: 3402003b ori r2,r0,0x003b
0007a000: 1062005c beq r3,r2,0x 0007a174			branch if 3b
0007a004: 00000000 nop
0007a008: 3c048005 lui r4,0x8005
0007a00c: 2484eaf4 addiu r4,r4,0xeaf4
0007a010: 0c00478e jal 0x00011e38
0007a014: 00000000 nop
0007a018: 3c028004 lui r2,0x8004
0007a01c: 8c42597c lw r2,0x597c(r2)
0007a020: 3c038004 lui r3,0x8004
0007a024: 8c635994 lw r3,0x5994(r3)
0007a028: 2c420001 sltiu r2,r2,0x0001
0007a02c: 24630001 addiu r3,r3,0x0001
0007a030: 3c018004 lui r1,0x8004
0007a034: ac22597c sw r2,0x597c(r1)
0007a038: 3c018004 lui r1,0x8004
0007a03c: ac235994 sw r3,0x5994(r1)
0007a040: 0c024be6 jal 0x00092f98
0007a044: 00000000 nop
0007a048: 0c011298 jal 0x00044a60
0007a04c: 00000000 nop
0007a050: 0c024ea6 jal 0x00093a98
0007a054: 244405fc addiu r4,r2,0x05fc
0007a058: 3c038004 lui r3,0x8004
0007a05c: 8c635988 lw r3,0x5988(r3)
0007a060: 3c018004 lui r1,0x8004
0007a064: ac225984 sw r2,0x5984(r1)
0007a068: 0062182a slt r3,r3,r2
0007a06c: 10600003 beq r3,r0,0x 0007a07c
0007a070: 00002821 addu r5,r0,r0
0007a074: 3c018004 lui r1,0x8004
0007a078: ac225988 sw r2,0x5988(r1)
0007a07c: 340600fe ori r6,r0,0x00fe
0007a080: 3c04800a lui r4,0x800a
0007a084: 248477c4 addiu r4,r4,0x77c4			#position of misc unit ID & 0x80/0x40/0x20 flags?
0007a088: 00001821 addu r3,r0,r0
0007a08c: 3c01800a lui r1,0x800a
0007a090: 00230821 addu r1,r1,r3
0007a094: 8c2277c8 lw r2,0x77c8(r1)			global timer...?
0007a098: 00000000 nop
0007a09c: 10400004 beq r2,r0,0x 0007a0b0
0007a0a0: 24637564 addiu r3,r3,0x7564
0007a0a4: 10460002 beq r2,r6,0x 0007a0b0		#branch if 0 or 0xfe?
0007a0a8: 2442ffff addiu r2,r2,0xffff
0007a0ac: ac820004 sw r2,0x0004(r4)			#subtract 1, save again.
0007a0b0: 24a50001 addiu r5,r5,0x0001
0007a0b4: 28a20002 slti r2,r5,0x0002
0007a0b8: 1440fff4 bne r2,r0,0x 0007a08c		#loop
0007a0bc: 24847564 addiu r4,r4,0x7564			#next slot?
0007a0c0: 3c038009 lui r3,0x8009
0007a0c4: 8c6360e4 lw r3,0x60e4(r3)
0007a0c8: 34020033 ori r2,r0,0x0033
0007a0cc: 10620003 beq r3,r2,0x 0007a0dc		#branch if gameflow state is 0x33 (n... none of them?)
0007a0d0: 3402002d ori r2,r0,0x002d
0007a0d4: 14620021 bne r3,r2,0x 0007a15c		#branch if not 2d?
0007a0d8: 00000000 nop
0007a0dc: 3c038004 lui r3,0x8004
0007a0e0: 8c635980 lw r3,0x5980(r3)
0007a0e4: 34020001 ori r2,r0,0x0001
0007a0e8: 14620005 bne r3,r2,0x 0007a100
0007a0ec: 00000000 nop
0007a0f0: 3c018004 lui r1,0x8004
0007a0f4: ac20598c sw r0,0x598c(r1)
0007a0f8: 0801e857 j 0x 0007a15c
0007a0fc: 00000000 nop
0007a100: 3c028004 lui r2,0x8004
0007a104: 8c425990 lw r2,0x5990(r2)
0007a108: 00000000 nop
0007a10c: 14400013 bne r2,r0,0x 0007a15c
0007a110: 00000000 nop
0007a114: 3c038004 lui r3,0x8004
0007a118: 8c635984 lw r3,0x5984(r3)
0007a11c: 00000000 nop
0007a120: 28620301 slti r2,r3,0x0301
0007a124: 14400003 bne r2,r0,0x 0007a134
0007a128: 28620201 slti r2,r3,0x0201
0007a12c: 0801e855 j 0x 0007a154
0007a130: 3402001e ori r2,r0,0x001e
0007a134: 14400009 bne r2,r0,0x 0007a15c
0007a138: 00000000 nop
0007a13c: 3c028004 lui r2,0x8004
0007a140: 8c42598c lw r2,0x598c(r2)
0007a144: 00000000 nop
0007a148: 2842000f slti r2,r2,0x000f
0007a14c: 10400003 beq r2,r0,0x 0007a15c
0007a150: 3402000f ori r2,r0,0x000f
0007a154: 3c018004 lui r1,0x8004
0007a158: ac22598c sw r2,0x598c(r1)
0007a15c: 3c018004 lui r1,0x8004
0007a160: ac205990 sw r0,0x5990(r1)
0007a164: 0c01127b jal 0x000449ec
0007a168: 00000000 nop
0007a16c: 0801e6c5 j 0x 00079b14
0007a170: 00000000 nop
0007a174: 0c01e1f7 jal 0x000787dc
0007a178: 00000000 nop
0007a17c: 0c021c19 jal 0x00087064
0007a180: 00000000 nop
0007a184: 3c02800a lui r2,0x800a
0007a188: 8c42778c lw r2,0x778c(r2)
0007a18c: 00000000 nop
0007a190: 1040fe57 beq r2,r0,0x 00079af0
0007a194: 00000000 nop
0007a198: 0c0091b5 jal 0x000246d4
0007a19c: 00002021 addu r4,r0,r0
0007a1a0: 0c0076ea jal 0x0001dba8
0007a1a4: 00002021 addu r4,r0,r0
0007a1a8: 0c0091b5 jal 0x000246d4
0007a1ac: 00002021 addu r4,r0,r0
0007a1b0: 0c0076ea jal 0x0001dba8
0007a1b4: 00002021 addu r4,r0,r0
0007a1b8: 8fbf001c lw r31,0x001c(r29)
0007a1bc: 8fb20018 lw r18,0x0018(r29)
0007a1c0: 8fb10014 lw r17,0x0014(r29)
0007a1c4: 8fb00010 lw r16,0x0010(r29)
0007a1c8: 27bd0020 addiu r29,r29,0x0020
0007a1cc: 03e00008 jr r31
0007a1d0: 00000000 nop