Difference between revisions of "BATTLE.BIN System Functions"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
m
Line 3: Line 3:
 
  Alternate documentation here: [[00141b0c - 00142504]]
 
  Alternate documentation here: [[00141b0c - 00142504]]
  
  00141b0c: 27bdffc8 addiu r29,r29,0xffc8
+
  00141b0c: 27bdffc8 addiu r29,r29,0xffc8         #
  00141b10: afb20018 sw r18,0x0018(r29)
+
  00141b10: afb20018 sw r18,0x0018(r29)           #
  00141b14: 00809021 addu r18,r4,r0
+
  00141b14: 00809021 addu r18,r4,r0               #r18 = r4 ?
  00141b18: afb3001c sw r19,0x001c(r29)
+
  00141b18: afb3001c sw r19,0x001c(r29)           #
  00141b1c: 00a09821 addu r19,r5,r0
+
  00141b1c: 00a09821 addu r19,r5,r0               #r19 = r5 ??
  00141b20: afb60028 sw r22,0x0028(r29)
+
  00141b20: afb60028 sw r22,0x0028(r29)           #
  00141b24: 00c0b021 addu r22,r6,r0
+
  00141b24: 00c0b021 addu r22,r6,r0               #r22 = r6 (Unit ID?)
  00141b28: afb10014 sw r17,0x0014(r29)
+
  00141b28: afb10014 sw r17,0x0014(r29)           #
  00141b2c: 00e08821 addu r17,r7,r0
+
  00141b2c: 00e08821 addu r17,r7,r0               #r17 = r7 ???
  00141b30: afb40020 sw r20,0x0020(r29)
+
  00141b30: afb40020 sw r20,0x0020(r29)           #
  00141b34: 8fb40048 lw r20,0x0048(r29)
+
  00141b34: 8fb40048 lw r20,0x0048(r29)           #r20 = Something from Stack?
  00141b38: afb7002c sw r23,0x002c(r29)
+
  00141b38: afb7002c sw r23,0x002c(r29)           #
  00141b3c: 8fb7004c lw r23,0x004c(r29)
+
  00141b3c: 8fb7004c lw r23,0x004c(r29)           #r23 = Some pointer from Stack??
  00141b40: 3c028016 lui r2,0x8016
+
  00141b40: 3c028016 lui r2,0x8016               #
  00141b44: 24426b10 addiu r2,r2,0x6b10
+
  00141b44: 24426b10 addiu r2,r2,0x6b10           #r2  = 0x80166b10 (Menu Data pointer?)
  00141b48: 3c018017 lui r1,0x8017
+
  00141b48: 3c018017 lui r1,0x8017               #
  00141b4c: ac223cb8 sw r2,0x3cb8(r1)
+
  00141b4c: ac223cb8 sw r2,0x3cb8(r1)             #Store r2 to 0x80173cb8
  00141b50: 2402ffff addiu r2,r0,0xffff
+
  00141b50: 2402ffff addiu r2,r0,0xffff           #r2  = -1
  00141b54: afbf0030 sw r31,0x0030(r29)
+
  00141b54: afbf0030 sw r31,0x0030(r29)           #
  00141b58: afb50024 sw r21,0x0024(r29)
+
  00141b58: afb50024 sw r21,0x0024(r29)           #
  00141b5c: afb00010 sw r16,0x0010(r29)
+
  00141b5c: afb00010 sw r16,0x0010(r29)           #
  00141b60: 3c018016 lui r1,0x8016
+
  00141b60: 3c018016 lui r1,0x8016               #
  00141b64: ac225f84 sw r2,0x5f84(r1)
+
  00141b64: ac225f84 sw r2,0x5f84(r1)            #Store r2 to 0x80165f84 (Menu/Message display byte)
  00141b68: 3c018015 lui r1,0x8015
+
  00141b68: 3c018015 lui r1,0x8015               #
  00141b6c: a020d324 sb r0,-0x2cdc(r1)
+
  00141b6c: a020d324 sb r0,-0x2cdc(r1)            #Clear 0x8014d324 (No Ability Selected?)
  00141b70: 0c0602bf jal 0x00180afc [[Get Unit's Data Pointer]]
+
  00141b70: 0c0602bf jal 0x00180afc               #[[Get Unit's Data Pointer]]
  00141b74: 02c02021 addu r4,r22,r0
+
  00141b74: 02c02021 addu r4,r22,r0               #r4  = r22 (Unit ID?)
  00141b78: 00408021 addu r16,r2,r0
+
  00141b78: 00408021 addu r16,r2,r0               #r16 = Unit's Data Pointer
  00141b7c: 34020008 ori r2,r0,0x0008
+
  00141b7c: 34020008 ori r2,r0,0x0008             #r3 = 8
00141b80: 164200a9 bne r18,r2,0x 00141e28
 
  00141b84: 00000000 nop
 
00141b88: 0c04ed64 jal 0x0013b590 [[Get Script Variable]]
 
00141b8c: 34040027 ori r4,r0,0x0027
 
00141b90: 00408821 addu r17,r2,r0
 
00141b94: 2622fe66 addiu r2,r17,0xfe66
 
00141b98: 2c420010 sltiu r2,r2,0x0010
 
00141b9c: 10400005 beq r2,r0,0x 00141bb4
 
00141ba0: 34020002 ori r2,r0,0x0002
 
00141ba4: 1262024c beq r19,r2,0x 001424d8
 
00141ba8: 34020001 ori r2,r0,0x0001
 
00141bac: 0805078c j 0x 00141e30
 
00141bb0: 00000000 nop
 
00141bb4: 3c028016 lui r2,0x8016
 
00141bb8: 94425ff6 lhu r2,0x5ff6(r2)
 
00141bbc: 00000000 nop
 
00141bc0: 10400005 beq r2,r0,0x 00141bd8
 
00141bc4: 34020002 ori r2,r0,0x0002
 
00141bc8: 12620243 beq r19,r2,0x 001424d8
 
00141bcc: 34020001 ori r2,r0,0x0001
 
00141bd0: 0805078c j 0x 00141e30
 
00141bd4: 00000000 nop
 
00141bd8: 34020001 ori r2,r0,0x0001
 
00141bdc: 12620094 beq r19,r2,0x 00141e30
 
00141be0: 00000000 nop
 
00141be4: 0c053325 jal 0x0014cc94 [[Check Thread Running Status]]
 
00141be8: 34040001 ori r4,r0,0x0001
 
00141bec: 10400009 beq r2,r0,0x 00141c14
 
00141bf0: 00009021 addu r18,r0,r0
 
00141bf4: 34040007 ori r4,r0,0x0007
 
00141bf8: 0c01127e jal 0x000449f8 jr r31
 
00141bfc: 34050003 ori r5,r0,0x0003
 
00141c00: 34020002 ori r2,r0,0x0002
 
00141c04: 12620234 beq r19,r2,0x 001424d8
 
00141c08: 34020001 ori r2,r0,0x0001
 
00141c0c: 0805078c j 0x 00141e30
 
00141c10: 00000000 nop
 
  
Gameover checks (both)
+
00141b80: 164200a9 bne r18,r2,0x00141e28        #If r18 (initial parameter r4) = 0x08    /Else Branch
 +
00141b84: 00000000 nop                          #
 +
00141b88: 0c04ed64 jal 0x0013b590                  #[[Get Script Variable]]
 +
00141b8c: 34040027 ori r4,r0,0x0027                #r4  = 0x27 (Current Event variable)
 +
00141b90: 00408821 addu r17,r2,r0                  #r17 = Current Event ID
 +
00141b94: 2622fe66 addiu r2,r17,0xfe66              #r2  = Current Event ID - 19A
 +
00141b98: 2c420010 sltiu r2,r2,0x0010              #Tutorial check?
 +
00141b9c: 10400005 beq r2,r0,0x00141bb4            #If not Tutorial Event?    /Else Branch
 +
00141ba0: 34020002 ori r2,r0,0x0002                    #r2  = 2
 +
00141ba4: 1262024c beq r19,r2,0x001424d8                #If r19 (initial parameter r5) is NOT 2    /Else Branch to END
 +
00141ba8: 34020001 ori r2,r0,0x0001                    #r2  = 1
 +
00141bac: 0805078c j 0x00141e30                            #Jump
 +
00141bb0: 00000000 nop                                      #
 +
00141bb4: 3c028016 lui r2,0x8016                    #
 +
00141bb8: 94425ff6 lhu r2,0x5ff6(r2)                #r2  = ??
 +
00141bbc: 00000000 nop                              #
 +
00141bc0: 10400005 beq r2,r0,0x00141bd8            #If ?? is NOT 0    /Else Branch
 +
00141bc4: 34020002 ori r2,r0,0x0002                    #r2  = 2
 +
00141bc8: 12620243 beq r19,r2,0x001424d8                #If r19 (initial parameter r5) is NOT 2    /Else Branch to END
 +
00141bcc: 34020001 ori r2,r0,0x0001                    #r2  = 1
 +
00141bd0: 0805078c j 0x00141e30                            #Jump
 +
00141bd4: 00000000 nop                                      #
 +
00141bd8: 34020001 ori r2,r0,0x0001                #r2  = 1
 +
00141bdc: 12620094 beq r19,r2,0x00141e30            #If r19 (initial parameter r5) is NOT 1    /Else Branch
 +
00141be0: 00000000 nop                              #
 +
00141be4: 0c053325 jal 0x0014cc94             #[[Check Thread Running Status]]
 +
00141be8: 34040001 ori r4,r0,0x0001                    #r4  = 1 (Thread ID for Events)
 +
00141bec: 10400009 beq r2,r0,0x00141c14                #If Event is already running    /Else Branch
 +
00141bf0: 00009021 addu r18,r0,r0                      #r18 = 0
 +
00141bf4: 34040007 ori r4,r0,0x0007                        #r4  = 7
 +
00141bf8: 0c01127e jal 0x000449f8                 #[[000449f8 - 000449fc]] Null Routine
 +
00141bfc: 34050003 ori r5,r0,0x0003                        #r5  = 3
 +
00141c00: 34020002 ori r2,r0,0x0002                        #r2  = 2
 +
00141c04: 12620234 beq r19,r2,0x001424d8                    #If r19 (initial parameter r5) is 2    /Else Branch to END
 +
00141c08: 34020001 ori r2,r0,0x0001                        #r2  = 1
 +
00141c0c: 0805078c j 0x00141e30                                #Jump
 +
00141c10: 00000000 nop                                          #
 +
00141c14: 3c018015 lui r1,0x8015                        #
 +
00141c18: ac36d304 sw r22,-0x2cfc(r1)                  #Store r22 (Unit ID?) to 0x8014d304
 +
00141c1c: 00002021 addu r4,r0,r0                        #r4  = 0 (kind of a counter)
 +
00141c20: 2414fffd addiu r20,r0,0xfffd                  #r20 = -3
 +
                                                        #Loop Start:
 +
00141c24: 24900001 addiu r16,r4,0x0001                      #r16 = r4 + 1
 +
00141c28: 0c0602cb jal 0x00180b2c                 #[[Check Base Class]] | [[Ramza Causes Game Over]]
 +
00141c2c: 02002021 addu r4,r16,r0                          #
 +
00141c30: 14540002 bne r2,r20,0x00141c3c                    #If Ramza is Crystal/Treasure/othwise disabled? (Petrified?)
 +
00141c34: 02002021 addu r4,r16,r0                          #
 +
00141c38: 26520001 addiu r18,r18,0x0001                        #Increment r18 if Ramza (any Chapter) is Crystal/Treasure/othwise disabled
 +
00141c3c: 28820003 slti r2,r4,0x0003                        #Check Ramza classes only
 +
00141c40: 1440fff8 bne r2,r0,0x00141c24                    #Loop
 +
00141c44: 00000000 nop                                      #
 +
00141c48: 0c060cdd jal 0x00183374             #[[Check Battle Outcome]] | [[Gameover by party incapacitated]]
 +
00141c4c: 00000000 nop                                  #
 +
00141c50: 04400003 bltz r2,0x00141c60                  #If battle has NOT been lost    /Else Branch
 +
00141c54: 00000000 nop                                  #
 +
00141c58: 12400018 beq r18,r0,0x00141cbc                    #If Ramza is Crystal/Treasure/othwise disabled    /Else Branch
 +
00141c5c: 00000000 nop                                      #
 +
 +
#Defeated
 +
00141c60: 0c04ed64 jal 0x0013b590             #[[Get Script Variable]]
 +
00141c64: 340401fd ori r4,r0,0x01fd                    #r4  = 0x01fd (Battle has not yet begun?)
 +
00141c68: 14400014 bne r2,r0,0x00141cbc                #If Battle has NOT begun?    /Else Branch
 +
00141c6c: 34020002 ori r2,r0,0x0002                        #r2  = 2
 +
00141c70: 12620010 beq r19,r2,0x00141cb4                    #If r19 (initial parameter r5) is NOT 2    /Else Branch
 +
00141c74: 34040027 ori r4,r0,0x0027                            #r4  = 0x27 (Current Event Variable ID)
 +
00141c78: 0c04ed91 jal 0x0013b644                     #[[Set Script Variable]]
 +
00141c7c: 34050190 ori r5,r0,0x0190                            #r5  = 0x0190 (Random Battle Setup ID)
 +
00141c80: 00002021 addu r4,r0,r0                                #r4  = 0
 +
00141c84: 340500ff ori r5,r0,0x00ff                            #r5  = 0xff
 +
00141c88: 0c04f58d jal 0x0013d634                     #[[Store unit names and some event block data]]
 +
00141c8c: 340600ff ori r6,r0,0x00ff                            #r6  = 0xff
 +
00141c90: 34020001 ori r2,r0,0x0001                            #r2  = 1
 +
00141c94: 3c018016 lui r1,0x8016                                #
 +
00141c98: a4226048 sh r2,0x6048(r1)                            #Store 1 at 0x80166048 (freezes control to go to next event?)
 +
00141c9c: 3c018017 lui r1,0x8017                                #
 +
00141ca0: a4223cb0 sh r2,0x3cb0(r1)                            #Store 1 at 0x80173cb0 (??)
 +
00141ca4: 0c04fcff jal 0x0013f3fc                     #[[0013f3fc - 0013f49c]]
 +
00141ca8: 00000000 nop                                          #
 +
00141cac: 08050936 j 0x001424d8                                #Jump to END
 +
00141cb0: 34020002 ori r2,r0,0x0002                            #r2  = 2
 +
00141cb4: 08050782 j 0x00141e08                            #Jump
 +
00141cb8: 34020190 ori r2,r0,0x0190                        #r2  = 0x0190 (Random Battle Setup Event ID)
 +
 +
#Not Defeated
 +
00141cbc: 3c028017 lui r2,0x8017                        #
 +
00141cc0: 84423cb0 lh r2,0x3cb0(r2)                    #r2  = Value at 0x80173cb0 (??)
 +
00141cc4: 00000000 nop                                  #
 +
00141cc8: 1040001e beq r2,r0,0x00141d44                #If ?? is NOT 0    /Else Branch
 +
00141ccc: 00000000 nop                                  #
 +
00141cd0: 0c05096c jal 0x001425b0                 #[[Process Scenario Conditionals]]
 +
00141cd4: 00000000 nop                                      #
 +
00141cd8: 10400016 beq r2,r0,0x00141d34                    #If an Event should be run    /Else Branch
 +
00141cdc: 34020002 ori r2,r0,0x0002                            #r2  = 2
 +
00141ce0: 1262000b beq r19,r2,0x00141d10                        #If r19 (initial parameter r5) is NOT 2    /Else Branch
 +
00141ce4: 00002021 addu r4,r0,r0                                    #r4  = 0
 +
00141ce8: 340500ff ori r5,r0,0x00ff                                #r5  = 0xff
 +
00141cec: 0c04f58d jal 0x0013d634                         #[[Store unit names and some event block data]]
 +
00141cf0: 340600ff ori r6,r0,0x00ff                                #r6  = 0xff
 +
00141cf4: 34020001 ori r2,r0,0x0001                                #r2  = 1
 +
00141cf8: 3c018016 lui r1,0x8016                                    #
 +
00141cfc: a4226048 sh r2,0x6048(r1)                                #Store 1 to 0x80166048 (freezes control to go to next event?)
 +
00141d00: 0c04fcff jal 0x0013f3fc                         #[[0013f3fc - 0013f49c]]
 +
00141d04: 00000000 nop                                              #
 +
00141d08: 08050936 j 0x001424d8                                    #Jump to END
 +
00141d0c: 34020002 ori r2,r0,0x0002                                #r2  = 2
 +
00141d10: 0c04ed64 jal 0x0013b590                     #[[Get Script Variable]]
 +
00141d14: 34040027 ori r4,r0,0x0027                            #r4  = 0x27 (Current Event Variable ID)
 +
00141d18: 3c018017 lui r1,0x8017                                #
 +
00141d1c: ac223c74 sw r2,0x3c74(r1)                            #Store 2 to 0x80173c74 (Next Event?)
 +
00141d20: 34040027 ori r4,r0,0x0027                            #r4  = 0x27 (Current Event Variable ID)
 +
00141d24: 0c04ed91 jal 0x0013b644                     #[[Set Script Variable]]
 +
00141d28: 02202821 addu r5,r17,r0                              #r5  = r17 (initial parameter r7 ???)
 +
00141d2c: 08050936 j 0x001424d8                                #Jump to END
 +
00141d30: 34020002 ori r2,r0,0x0002                            #r2  = 2
 +
00141d34: 126201e8 beq r19,r2,0x001424d8                    #If r19 (initial parameter r5) is NOT 2    /Else Branch to END
 +
00141d38: 34020001 ori r2,r0,0x0001                        #r2  = 1
 +
00141d3c: 0805078c j 0x00141e30                            #Jump
 +
00141d40: 00000000 nop                                      #
 +
00141d44: 0c04ed64 jal 0x0013b590             #[[Get Script Variable]]
 +
00141d48: 340401fd ori r4,r0,0x01fd                    #r4  = 0x01fd (Battle has not yet begun?)
 +
00141d4c: 10400018 beq r2,r0,0x00141db0                #If Battle has begun?    /Else Branch
 +
00141d50: 34020002 ori r2,r0,0x0002                        #r2  = 2
 +
00141d54: 12620014 beq r19,r2,0x00141da8                    #If r19 (initial parameter r5) is NOT 2    /Else Branch
 +
00141d58: 00002021 addu r4,r0,r0                                #r4  = 0
 +
00141d5c: 340500ff ori r5,r0,0x00ff                            #r5  = 0xff
 +
00141d60: 0c04f58d jal 0x0013d634                     #[[Store unit names and some event block data]]
 +
00141d64: 340600ff ori r6,r0,0x00ff                            #r6  = 0xff
 +
00141d68: 34020001 ori r2,r0,0x0001                            #r2  = 1
 +
00141d6c: 3c018016 lui r1,0x8016                                #
 +
00141d70: a4226048 sh r2,0x6048(r1)                            #Store 1 to 0x80166048 (freezes control to go to next event?)
 +
00141d74: 0c04ed64 jal 0x0013b590                     #[[Get Script Variable]]
 +
00141d78: 340401fe ori r4,r0,0x01fe                            #r4  = 0x01fe (Next Random is World Debug Battle Style?)
 +
00141d7c: 10400003 beq r2,r0,0x00141d8c                        #If Next Random is World Debug Battle Style?    /Else Branch
 +
00141d80: 34040027 ori r4,r0,0x0027                            #r4  = 0x27 (Current Event Variable ID)
 +
00141d84: 08050764 j 0x00141d90                                    #Jump
 +
00141d88: 34050193 ori r5,r0,0x0193                                #r5  = 0x0193 (DO NOT USE script?)
 +
00141d8c: 34050191 ori r5,r0,0x0191                            #r5  = 0x0191 (Random Battle Initiate Event ID)
 +
00141d90: 0c04ed91 jal 0x0013b644                     #[[Set Script Variable]]
 +
00141d94: 00000000 nop                                          #
 +
00141d98: 0c04fcff jal 0x0013f3fc                     #[[0013f3fc - 0013f49c]]
 +
00141d9c: 00000000 nop                                          #
 +
00141da0: 08050936 j 0x001424d8                                #Jump to END
 +
00141da4: 34020002 ori r2,r0,0x0002                            #r2  = 2
 +
00141da8: 08050782 j 0x00141e08                            #Jump
 +
00141dac: 34020191 ori r2,r0,0x0191                        #r2  = 0x0191 (Random Battle Initiate Event ID)
 +
 +
#Victorious
 +
00141db0: 0c060cdd jal 0x00183374             #[[Check Battle Outcome]] | [[Gameover by party incapacitated]]
 +
00141db4: 00000000 nop                                  #
 +
00141db8: 14400017 bne r2,r0,0x00141e18                #If Battle outcome is Victory    /Else Branch
 +
00141dbc: 34020002 ori r2,r0,0x0002                        #r2  = 2
 +
00141dc0: 12620010 beq r19,r2,0x00141e04                    #If r19 (initial parameter r5) is NOT 2    /Else Branch
 +
00141dc4: 00002021 addu r4,r0,r0                                #r4  = 0
 +
00141dc8: 340500ff ori r5,r0,0x00ff                            #r5  = 0xff
 +
00141dcc: 0c04f58d jal 0x0013d634                     #[[Store unit names and some event block data]]
 +
00141dd0: 340600ff ori r6,r0,0x00ff                            #r6  = 0xff
 +
00141dd4: 34040027 ori r4,r0,0x0027                            #r4  = 0x27 (Current Event Variable ID)
 +
00141dd8: 34100001 ori r16,r0,0x0001                            #r16 = 1
 +
00141ddc: 3c018016 lui r1,0x8016                                #
 +
00141de0: a4306048 sh r16,0x6048(r1)                            #Store 1 to 0x80166048 (freezes control to go to next event?)
 +
00141de4: 0c04ed91 jal 0x0013b644                     #[[Set Script Variable]]
 +
00141de8: 34050192 ori r5,r0,0x0192                            #r5  = 0x0192 (Random Battle Victory Event ID)
 +
00141dec: 3c018017 lui r1,0x8017                                #
 +
00141df0: a4303cb0 sh r16,0x3cb0(r1)                            #Store 1 to 0x80173cb0 (??)
 +
00141df4: 0c04fcff jal 0x0013f3fc                     #[[0013f3fc - 0013f49c]]
 +
00141df8: 00000000 nop                                          #
 +
00141dfc: 08050936 j 0x001424d8                                #Jump to END
 +
00141e00: 34020002 ori r2,r0,0x0002                            #r2  = 2
 +
00141e04: 34020192 ori r2,r0,0x0192                        #r2  = 0x0192 (Random Battle Victory Event ID)
 +
 +
00141e08: 3c018017 lui r1,0x8017                            #
 +
00141e0c: ac223c74 sw r2,0x3c74(r1)                        #Store r2 to 0x80173c74 (Next Event?)
 +
00141e10: 08050936 j 0x001424d8                            #Jump to END
 +
00141e14: 34020002 ori r2,r0,0x0002                        #r2  = 2
 +
00141e18: 126201af beq r19,r2,0x001424d8                #If r19 (initial parameter r5) is NOT 2    /Else Branch to END
 +
00141e1c: 34020001 ori r2,r0,0x0001                    #r2  = 1
 +
00141e20: 0805078c j 0x00141e30                            #Jump
 +
00141e24: 00000000 nop                                      #
  
  00141c14: 3c018015 lui r1,0x8015
+
  00141e28: 16800005 bne r20,r0,0x00141e40        #If Something from Stack? is 0    /Else Branch
00141c18: ac36d304 sw r22,-0x2cfc(r1)
+
  00141e2c: 34140001 ori r20,r0,0x0001           #r20 = 0x01
00141c1c: 00002021 addu r4,r0,r0
+
  00141e30: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]] (also the branch destination for section way above)
00141c20: 2414fffd addiu r20,r0,0xfffd
+
  00141e34: 34040008 ori r4,r0,0x0008                #r4  = 8
00141c24: 24900001 addiu r16,r4,0x0001
+
  00141e38: 08050936 j 0x001424d8                    #Jump to END
00141c28: 0c0602cb jal 0x00180b2c [[Check Base Class]] | [[Ramza Causes Game Over]]
+
  00141e3c: 34020001 ori r2,r0,0x0001                 #r2  = 1
00141c2c: 02002021 addu r4,r16,r0
 
00141c30: 14540002 bne r2,r20,0x 00141c3c
 
00141c34: 02002021 addu r4,r16,r0
 
00141c38: 26520001 addiu r18,r18,0x0001
 
00141c3c: 28820003 slti r2,r4,0x0003
 
00141c40: 1440fff8 bne r2,r0,0x 00141c24
 
00141c44: 00000000 nop
 
00141c48: 0c060cdd jal 0x00183374 [[Check Battle Outcome]] | [[Gameover by party incapacitated]]
 
00141c4c: 00000000 nop
 
00141c50: 04400003 bltz r2,0x 00141c60
 
00141c54: 00000000 nop
 
00141c58: 12400018 beq r18,r0,0x 00141cbc
 
00141c5c: 00000000 nop
 
00141c60: 0c04ed64 jal 0x0013b590 [[Get Script Variable]]
 
00141c64: 340401fd ori r4,r0,0x01fd
 
00141c68: 14400014 bne r2,r0,0x 00141cbc
 
  00141c6c: 34020002 ori r2,r0,0x0002
 
00141c70: 12620010 beq r19,r2,0x 00141cb4
 
00141c74: 34040027 ori r4,r0,0x0027
 
00141c78: 0c04ed91 jal 0x0013b644 [[Set Script Variable]]
 
00141c7c: 34050190 ori r5,r0,0x0190
 
00141c80: 00002021 addu r4,r0,r0
 
00141c84: 340500ff ori r5,r0,0x00ff
 
00141c88: 0c04f58d jal 0x0013d634 [[Store unit names and some event block data]]
 
00141c8c: 340600ff ori r6,r0,0x00ff
 
00141c90: 34020001 ori r2,r0,0x0001
 
  00141c94: 3c018016 lui r1,0x8016
 
00141c98: a4226048 sh r2,0x6048(r1)
 
00141c9c: 3c018017 lui r1,0x8017
 
00141ca0: a4223cb0 sh r2,0x3cb0(r1)
 
00141ca4: 0c04fcff jal 0x0013f3fc [[0013f3fc - 0013f49c]]
 
00141ca8: 00000000 nop
 
00141cac: 08050936 j 0x 001424d8
 
00141cb0: 34020002 ori r2,r0,0x0002
 
00141cb4: 08050782 j 0x 00141e08
 
00141cb8: 34020190 ori r2,r0,0x0190
 
00141cbc: 3c028017 lui r2,0x8017
 
00141cc0: 84423cb0 lh r2,0x3cb0(r2)
 
  00141cc4: 00000000 nop
 
00141cc8: 1040001e beq r2,r0,0x 00141d44
 
00141ccc: 00000000 nop
 
00141cd0: 0c05096c jal 0x 001425b0 [[Process Scenario Conditionals]]
 
00141cd4: 00000000 nop
 
00141cd8: 10400016 beq r2,r0,0x 00141d34
 
00141cdc: 34020002 ori r2,r0,0x0002
 
00141ce0: 1262000b beq r19,r2,0x 00141d10
 
00141ce4: 00002021 addu r4,r0,r0
 
00141ce8: 340500ff ori r5,r0,0x00ff
 
00141cec: 0c04f58d jal 0x0013d634 [[Store unit names and some event block data]]
 
00141cf0: 340600ff ori r6,r0,0x00ff
 
00141cf4: 34020001 ori r2,r0,0x0001
 
00141cf8: 3c018016 lui r1,0x8016
 
00141cfc: a4226048 sh r2,0x6048(r1)
 
00141d00: 0c04fcff jal 0x0013f3fc [[0013f3fc - 0013f49c]]
 
00141d04: 00000000 nop
 
00141d08: 08050936 j 0x 001424d8
 
00141d0c: 34020002 ori r2,r0,0x0002
 
00141d10: 0c04ed64 jal 0x0013b590 [[Get Script Variable]]
 
00141d14: 34040027 ori r4,r0,0x0027
 
00141d18: 3c018017 lui r1,0x8017
 
00141d1c: ac223c74 sw r2,0x3c74(r1)
 
00141d20: 34040027 ori r4,r0,0x0027
 
00141d24: 0c04ed91 jal 0x0013b644 [[Set Script Variable]]
 
  00141d28: 02202821 addu r5,r17,r0
 
  00141d2c: 08050936 j 0x 001424d8
 
00141d30: 34020002 ori r2,r0,0x0002
 
00141d34: 126201e8 beq r19,r2,0x 001424d8
 
00141d38: 34020001 ori r2,r0,0x0001
 
00141d3c: 0805078c j 0x 00141e30
 
00141d40: 00000000 nop
 
00141d44: 0c04ed64 jal 0x0013b590 [[Get Script Variable]]
 
00141d48: 340401fd ori r4,r0,0x01fd
 
00141d4c: 10400018 beq r2,r0,0x 00141db0
 
00141d50: 34020002 ori r2,r0,0x0002
 
00141d54: 12620014 beq r19,r2,0x 00141da8
 
00141d58: 00002021 addu r4,r0,r0
 
00141d5c: 340500ff ori r5,r0,0x00ff
 
00141d60: 0c04f58d jal 0x0013d634 [[Store unit names and some event block data]]
 
00141d64: 340600ff ori r6,r0,0x00ff
 
  00141d68: 34020001 ori r2,r0,0x0001
 
00141d6c: 3c018016 lui r1,0x8016
 
00141d70: a4226048 sh r2,0x6048(r1)
 
00141d74: 0c04ed64 jal 0x0013b590 [[Get Script Variable]]
 
00141d78: 340401fe ori r4,r0,0x01fe
 
  00141d7c: 10400003 beq r2,r0,0x 00141d8c
 
00141d80: 34040027 ori r4,r0,0x0027
 
00141d84: 08050764 j 0x 00141d90
 
00141d88: 34050193 ori r5,r0,0x0193
 
00141d8c: 34050191 ori r5,r0,0x0191
 
00141d90: 0c04ed91 jal 0x0013b644 [[Set Script Variable]]
 
00141d94: 00000000 nop
 
00141d98: 0c04fcff jal 0x0013f3fc [[0013f3fc - 0013f49c]]
 
00141d9c: 00000000 nop
 
00141da0: 08050936 j 0x 001424d8
 
00141da4: 34020002 ori r2,r0,0x0002
 
00141da8: 08050782 j 0x 00141e08
 
00141dac: 34020191 ori r2,r0,0x0191
 
  
Gameover (party incapacitated) checks
+
00141e40: 16540026 bne r18,r20,0x00141edc      #If r18 = 0x01    /Else Branch
 +
00141e44: 34030002 ori r3,r0,0x0002            #r3  = 0x02
 +
00141e48: 3c038015 lui r3,0x8015                    #
 +
00141e4c: 8c63d314 lw r3,-0x2cec(r3)               #r3  = Value at 0x8014d314 (Autobattle Setting?)
 +
00141e50: 00000000 nop                              #
 +
00141e54: 10600004 beq r3,r0,0x00141e68            #If Aitobattle is on    /Else Branch
 +
00141e58: 34110008 ori r17,r0,0x0008                    #r17 = 0x08
 +
00141e5c: 34020019 ori r2,r0,0x0019                    #r2  = 0x19
 +
00141e60: 14620006 bne r3,r2,0x00141e7c                #If Autobattle setting = 0x19 (???)    /Else Branch
 +
00141e64: 00000000 nop                                  #
 +
00141e68: 34020002 ori r2,r0,0x0002                #r2  = 2
 +
00141e6c: 166200d1 bne r19,r2,0x001421b4            #If r19 (initial parameter r5) is 2    /Else Branch
 +
00141e70: 34110007 ori r17,r0,0x0007                #r17 = 0x07
 +
00141e74: 0805086d j 0x001421b4                            #Jump
 +
00141e78: 34110031 ori r17,r0,0x0031                        #r17 = 0x31
 +
00141e7c: 14720008 bne r3,r18,0x00141ea0                #If Autobattle setting = r18    /Else Branch
 +
00141e80: 3402000c ori r2,r0,0x000c                    #r2  = 0x0c
 +
00141e84: 34020001 ori r2,r0,0x0001                        #r2  = 1
 +
00141e88: 3c018015 lui r1,0x8015                            #
 +
00141e8c: a022d324 sb r2,-0x2cdc(r1)                        #Store 1 to 0x8014d324 (Ability is Selected?)
 +
00141e90: 167200c8 bne r19,r18,0x001421b4                  #If r19 (initial parameter r5) = r18    /Else Branch
 +
00141e94: 34110006 ori r17,r0,0x0006                        #r17 = 0x06
 +
00141e98: 0805086d j 0x001421b4                                #Jump
 +
00141e9c: 34110029 ori r17,r0,0x0029                            #r17 = 0x29
 +
00141ea0: 14620003 bne r3,r2,0x00141eb0                #If Autobattle setting = Fight for your life    /Else Branch
 +
00141ea4: 3402000e ori r2,r0,0x000e                    #r2  = 0x0e
 +
00141ea8: 0805086d j 0x001421b4                            #Jump
 +
00141eac: 34110014 ori r17,r0,0x0014                        #r17 = 0x14
 +
00141eb0: 14620003 bne r3,r2,0x00141ec0                #If Autobattle setting = Protect Allies    /Else Branch
 +
00141eb4: 34020002 ori r2,r0,0x0002                    #r2  = 2
 +
00141eb8: 0805086d j 0x001421b4                            #Jump
 +
00141ebc: 34110015 ori r17,r0,0x0015                        #r17 = 0x15
 +
00141ec0: 3c038015 lui r3,0x8015                        #
 +
00141ec4: 8c63d30c lw r3,-0x2cf4(r3)                    #r3  = Value at 0x8014d30c (Used Skillset?)
 +
00141ec8: 00000000 nop                                  #
 +
00141ecc: 146200b9 bne r3,r2,0x001421b4                #If Used Skillset = Defend?    /Else Branch
 +
00141ed0: 00000000 nop                                  #
 +
00141ed4: 0805086d j 0x001421b4                            #Jump
 +
00141ed8: 3411001c ori r17,r0,0x001c                        #r17 = 0x1c
  
  00141db0: 0c060cdd jal 0x00183374 [[Check Battle Outcome]] | [[Gameover by party incapacitated]]
+
  00141edc: 16430017 bne r18,r3,0x00141f3c        #If r18 = 0x02    /Else Branch
00141db4: 00000000 nop
+
  00141ee0: 34150003 ori r21,r0,0x0003           #r21 = 0x03
00141db8: 14400017 bne r2,r0,0x 00141e18
+
  00141ee4: 0c04b747 jal 0x0012dd1c         #[[0012dd1c - 0012dd2c]]
00141dbc: 34020002 ori r2,r0,0x0002
+
  00141ee8: 00000000 nop                             #
00141dc0: 12620010 beq r19,r2,0x 00141e04
+
  00141eec: 1260016d beq r19,r0,0x001424a4            #If r19 (initial parameter r5) is NOT 0    /Else Branch
00141dc4: 00002021 addu r4,r0,r0
+
  00141ef0: 00000000 nop                             #
00141dc8: 340500ff ori r5,r0,0x00ff
+
  00141ef4: 16740005 bne r19,r20,0x00141f0c              #If r19 (initial parameter r5) is 1    /Else Branch
00141dcc: 0c04f58d jal 0x0013d634 [[Store unit names and some event block data]]
+
  00141ef8: 34020004 ori r2,r0,0x0004                     #r2  = 4
00141dd0: 340600ff ori r6,r0,0x00ff
+
  00141efc: 0c050595 jal 0x00141654                 #[[00141654 - 0014169c]]
00141dd4: 34040027 ori r4,r0,0x0027
+
  00141f00: 00002021 addu r4,r0,r0                           #r4  = 0
00141dd8: 34100001 ori r16,r0,0x0001
+
  00141f04: 08050932 j 0x001424c8                            #Jump
00141ddc: 3c018016 lui r1,0x8016
+
  00141f08: 34020001 ori r2,r0,0x0001                         #r2  = 1
00141de0: a4306048 sh r16,0x6048(r1)
+
  00141f0c: 16620005 bne r19,r2,0x00141f24                #If r19 (initial parameter r5) is 4    /Else Branch
00141de4: 0c04ed91 jal 0x0013b644 [[Set Script Variable]]
+
  00141f10: 00000000 nop                                 #
00141de8: 34050192 ori r5,r0,0x0192
+
  00141f14: 0c050595 jal 0x00141654                 #[[00141654 - 0014169c]]
00141dec: 3c018017 lui r1,0x8017
+
  00141f18: 34040030 ori r4,r0,0x0030                         #r4  = 0x30
00141df0: a4303cb0 sh r16,0x3cb0(r1)
+
  00141f1c: 08050932 j 0x001424c8                            #Jump
00141df4: 0c04fcff jal 0x0013f3fc [[0013f3fc - 0013f49c]]
+
  00141f20: 34020001 ori r2,r0,0x0001                         #r2  = 1
00141df8: 00000000 nop
+
  00141f24: 0c04b756 jal 0x0012dd58             #[[0012dd58 - 0012dd68]]
00141dfc: 08050936 j 0x 001424d8
+
  00141f28: 00000000 nop                                 #
00141e00: 34020002 ori r2,r0,0x0002
+
  00141f2c: 0c050595 jal 0x00141654             #[[00141654 - 0014169c]]
00141e04: 34020192 ori r2,r0,0x0192
+
  00141f30: 2664000d addiu r4,r19,0x000d                 #r4  = r19 + 0x0d
00141e08: 3c018017 lui r1,0x8017
+
  00141f34: 08050932 j 0x001424c8                        #Jump
00141e0c: ac223c74 sw r2,0x3c74(r1)
+
  00141f38: 34020001 ori r2,r0,0x0001                     #r2  = 1
00141e10: 08050936 j 0x 001424d8
 
00141e14: 34020002 ori r2,r0,0x0002
 
00141e18: 126201af beq r19,r2,0x 001424d8
 
00141e1c: 34020001 ori r2,r0,0x0001
 
00141e20: 0805078c j 0x 00141e30
 
00141e24: 00000000 nop
 
00141e28: 16800005 bne r20,r0,0x 00141e40
 
00141e2c: 34140001 ori r20,r0,0x0001
 
00141e30: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
 
00141e34: 34040008 ori r4,r0,0x0008
 
00141e38: 08050936 j 0x 001424d8
 
00141e3c: 34020001 ori r2,r0,0x0001
 
00141e40: 16540026 bne r18,r20,0x 00141edc
 
00141e44: 34030002 ori r3,r0,0x0002
 
00141e48: 3c038015 lui r3,0x8015
 
00141e4c: 8c63d314 lw r3,-0x2cec(r3)
 
00141e50: 00000000 nop
 
00141e54: 10600004 beq r3,r0,0x 00141e68
 
00141e58: 34110008 ori r17,r0,0x0008
 
00141e5c: 34020019 ori r2,r0,0x0019
 
00141e60: 14620006 bne r3,r2,0x 00141e7c
 
00141e64: 00000000 nop
 
00141e68: 34020002 ori r2,r0,0x0002
 
00141e6c: 166200d1 bne r19,r2,0x 001421b4
 
00141e70: 34110007 ori r17,r0,0x0007
 
00141e74: 0805086d j 0x 001421b4
 
00141e78: 34110031 ori r17,r0,0x0031
 
00141e7c: 14720008 bne r3,r18,0x 00141ea0
 
00141e80: 3402000c ori r2,r0,0x000c
 
00141e84: 34020001 ori r2,r0,0x0001
 
00141e88: 3c018015 lui r1,0x8015
 
00141e8c: a022d324 sb r2,-0x2cdc(r1)
 
00141e90: 167200c8 bne r19,r18,0x 001421b4
 
00141e94: 34110006 ori r17,r0,0x0006
 
00141e98: 0805086d j 0x 001421b4
 
00141e9c: 34110029 ori r17,r0,0x0029
 
00141ea0: 14620003 bne r3,r2,0x 00141eb0
 
00141ea4: 3402000e ori r2,r0,0x000e
 
00141ea8: 0805086d j 0x 001421b4
 
00141eac: 34110014 ori r17,r0,0x0014
 
00141eb0: 14620003 bne r3,r2,0x 00141ec0
 
00141eb4: 34020002 ori r2,r0,0x0002
 
00141eb8: 0805086d j 0x 001421b4
 
00141ebc: 34110015 ori r17,r0,0x0015
 
00141ec0: 3c038015 lui r3,0x8015
 
00141ec4: 8c63d30c lw r3,-0x2cf4(r3)
 
00141ec8: 00000000 nop
 
00141ecc: 146200b9 bne r3,r2,0x 001421b4
 
00141ed0: 00000000 nop
 
00141ed4: 0805086d j 0x 001421b4
 
00141ed8: 3411001c ori r17,r0,0x001c
 
00141edc: 16430017 bne r18,r3,0x 00141f3c
 
  00141ee0: 34150003 ori r21,r0,0x0003
 
  00141ee4: 0c04b747 jal 0x0012dd1c [[0012dd1c - 0012dd2c]]
 
  00141ee8: 00000000 nop
 
  00141eec: 1260016d beq r19,r0,0x 001424a4
 
  00141ef0: 00000000 nop
 
  00141ef4: 16740005 bne r19,r20,0x 00141f0c
 
  00141ef8: 34020004 ori r2,r0,0x0004
 
  00141efc: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
 
  00141f00: 00002021 addu r4,r0,r0
 
  00141f04: 08050932 j 0x 001424c8
 
  00141f08: 34020001 ori r2,r0,0x0001
 
  00141f0c: 16620005 bne r19,r2,0x 00141f24
 
  00141f10: 00000000 nop
 
  00141f14: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
 
  00141f18: 34040030 ori r4,r0,0x0030
 
  00141f1c: 08050932 j 0x 001424c8
 
  00141f20: 34020001 ori r2,r0,0x0001
 
  00141f24: 0c04b756 jal 0x0012dd58 [[0012dd58 - 0012dd68]]
 
  00141f28: 00000000 nop
 
  00141f2c: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
 
  00141f30: 2664000d addiu r4,r19,0x000d
 
00141f34: 08050932 j 0x 001424c8
 
00141f38: 34020001 ori r2,r0,0x0001
 
00141f3c: 1655000f bne r18,r21,0x 00141f7c
 
00141f40: 34020004 ori r2,r0,0x0004
 
00141f44: 3c028015 lui r2,0x8015
 
00141f48: 8c42d318 lw r2,-0x2ce8(r2)
 
00141f4c: 00000000 nop
 
00141f50: 14430006 bne r2,r3,0x 00141f6c
 
00141f54: 00000000 nop
 
00141f58: 3c028015 lui r2,0x8015
 
00141f5c: 8c42d31c lw r2,-0x2ce4(r2)
 
00141f60: 00000000 nop
 
00141f64: 1054014f beq r2,r20,0x 001424a4
 
00141f68: 00000000 nop
 
00141f6c: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
 
00141f70: 34040001 ori r4,r0,0x0001
 
  00141f74: 08050932 j 0x 001424c8
 
00141f78: 34020001 ori r2,r0,0x0001
 
00141f7c: 16420029 bne r18,r2,0x 00142024
 
00141f80: 34020005 ori r2,r0,0x0005
 
00141f84: 12620022 beq r19,r2,0x 00142010
 
  00141f88: 3411002f ori r17,r0,0x002f
 
00141f8c: 12740020 beq r19,r20,0x 00142010
 
00141f90: 3411000b ori r17,r0,0x000b
 
00141f94: 12630003 beq r19,r3,0x 00141fa4
 
00141f98: 3402fffe ori r2,r0,0xfffe
 
00141f9c: 1672000f bne r19,r18,0x 00141fdc
 
00141fa0: 00000000 nop
 
00141fa4: 3c038015 lui r3,0x8015
 
00141fa8: 8c63d310 lw r3,-0x2cf0(r3)
 
00141fac: 00000000 nop
 
00141fb0: 10620006 beq r3,r2,0x 00141fcc
 
00141fb4: 3411002d ori r17,r0,0x002d
 
00141fb8: 3c028015 lui r2,0x8015
 
00141fbc: 8c42d320 lw r2,-0x2ce0(r2)
 
00141fc0: 00000000 nop
 
00141fc4: 14400003 bne r2,r0,0x 00141fd4
 
00141fc8: 00000000 nop
 
00141fcc: 08050805 j 0x 00142014
 
00141fd0: 34020001 ori r2,r0,0x0001
 
00141fd4: 08050804 j 0x 00142010
 
00141fd8: 3411000c ori r17,r0,0x000c
 
00141fdc: 3c038015 lui r3,0x8015
 
00141fe0: 8c63d310 lw r3,-0x2cf0(r3)
 
00141fe4: 00000000 nop
 
00141fe8: 14620006 bne r3,r2,0x 00142004
 
00141fec: 3411002e ori r17,r0,0x002e
 
00141ff0: 3c028015 lui r2,0x8015
 
00141ff4: 8c42d320 lw r2,-0x2ce0(r2)
 
00141ff8: 00000000 nop
 
00141ffc: 14400003 bne r2,r0,0x 0014200c
 
00142000: 00000000 nop
 
00142004: 08050805 j 0x 00142014
 
00142008: 34020001 ori r2,r0,0x0001
 
0014200c: 3411000d ori r17,r0,0x000d
 
00142010: 34020001 ori r2,r0,0x0001
 
00142014: 3c018015 lui r1,0x8015
 
00142018: a022d324 sb r2,-0x2cdc(r1)
 
0014201c: 0805086d j 0x 001421b4
 
00142020: 00000000 nop
 
00142024: 16420011 bne r18,r2,0x 0014206c
 
00142028: 34020007 ori r2,r0,0x0007
 
0014202c: 96e20002 lhu r2,0x0002(r23)
 
00142030: 3c058014 lui r5,0x8014
 
00142034: 24a5bdcc addiu r5,r5,0xbdcc
 
00142038: 304201ff andi r2,r2,0x01ff
 
0014203c: 3c018015 lui r1,0x8015
 
00142040: ac22d308 sw r2,-0x2cf8(r1)
 
00142044: 0c053228 jal 0x0014c8a0 [[Initialize Thread]]
 
00142048: 34040004 ori r4,r0,0x0004
 
0014204c: 34040004 ori r4,r0,0x0004
 
00142050: 02c02821 addu r5,r22,r0
 
00142054: 3c068015 lui r6,0x8015
 
00142058: 8cc6d308 lw r6,-0x2cf8(r6)
 
0014205c: 0c05328e jal 0x0014ca38 [[Store Thread Function Parameters]]
 
00142060: 00003821 addu r7,r0,r0
 
00142064: 08050932 j 0x 001424c8
 
  00142068: 34020001 ori r2,r0,0x0001
 
0014206c: 16420037 bne r18,r2,0x 0014214c
 
  00142070: 34020006 ori r2,r0,0x0006
 
  
Calculator skillset loading?
+
00141f3c: 1655000f bne r18,r21,0x00141f7c      #If r18 = 0x03    /Else Branch
 +
00141f40: 34020004 ori r2,r0,0x0004            #r2  = 0x04
 +
00141f44: 3c028015 lui r2,0x8015                    #
 +
00141f48: 8c42d318 lw r2,-0x2ce8(r2)                #r2 = Value at 0x8014d318 (Function Setting 1?)
 +
00141f4c: 00000000 nop                              #
 +
00141f50: 14430006 bne r2,r3,0x00141f6c            #If Function Setting 1 = 4?    /Else Branch
 +
00141f54: 00000000 nop                              #
 +
00141f58: 3c028015 lui r2,0x8015                        #
 +
00141f5c: 8c42d31c lw r2,-0x2ce4(r2)                    #r2 = Value at 0x8014d31c (Function Setting 2?)
 +
00141f60: 00000000 nop                                  #
 +
00141f64: 1054014f beq r2,r20,0x001424a4                #If Function Setting 2 is NOT 1    /Else Branch
 +
00141f68: 00000000 nop                                  #
 +
00141f6c: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]]
 +
00141f70: 34040001 ori r4,r0,0x0001                #r4  = 1
 +
00141f74: 08050932 j 0x001424c8                    #Jump
 +
00141f78: 34020001 ori r2,r0,0x0001                #r2  = 1
  
  00142074: 0c04ebb7 jal 0x0013aedc [[0013aedc - 0013aee8]]
+
00141f7c: 16420029 bne r18,r2,0x00142024        #If r18 = 0x04    /Else Branch
  00142078: 3404003c ori r4,r0,0x003c
+
00141f80: 34020005 ori r2,r0,0x0005            #r2  = 0x05
  0014207c: 9202016f lbu r2,0x016f(r16)
+
00141f84: 12620022 beq r19,r2,0x00142010            #If r19 (initial parameter r5) is NOT 5    /Else Branch
  00142080: 3c018006 lui r1,0x8006
+
00141f88: 3411002f ori r17,r0,0x002f                #r17 = 0x2f
  00142084: 00220821 addu r1,r1,r2
+
00141f8c: 12740020 beq r19,r20,0x00142010              #If r19 (initial parameter r5) is NOT 1    /Else Branch
  00142088: 90225cb4 lbu r2,0x5cb4(r1) #load action menu byte
+
00141f90: 3411000b ori r17,r0,0x000b                    #r17 = 0x0b
  0014208c: 00000000 nop
+
00141f94: 12630003 beq r19,r3,0x00141fa4                    #If r19 (initial parameter r5) is NOT 2    /Else Branch
  00142090: 14550014 bne r2,r21,0x 001420e4
+
00141f98: 3402fffe ori r2,r0,0xfffe                        #r2  = -2
  00142094: 34020006 ori r2,r0,0x0006
+
00141f9c: 1672000f bne r19,r18,0x00141fdc                      #If r19 (initial parameter r5) = 4    /Else Branch
  00142098: 86020174 lh r2,0x0174(r16)
+
00141fa0: 00000000 nop                                          #
  0014209c: 00000000 nop
+
00141fa4: 3c038015 lui r3,0x8015                            #
  001420a0: 24427000 addiu r2,r2,0x7000
+
00141fa8: 8c63d310 lw r3,-0x2cf0(r3)                        #r3  = Value at 0x8014d310 (Used Item?)
  001420a4: 3c018016 lui r1,0x8016
+
00141fac: 00000000 nop                                      #
  001420a8: ac225ef8 sw r2,0x5ef8(r1)
+
00141fb0: 10620006 beq r3,r2,0x00141fcc                    #If Used Item is valid?    /Else Branch
  001420ac: 86020172 lh r2,0x0172(r16)
+
00141fb4: 3411002d ori r17,r0,0x002d                        #r17 = 0x2d
  001420b0: 00000000 nop
+
00141fb8: 3c028015 lui r2,0x8015                                #
  001420b4: 24427000 addiu r2,r2,0x7000
+
00141fbc: 8c42d320 lw r2,-0x2ce0(r2)                            #r2  = Value at 0x8014d320 (Ability CT?)
  001420b8: 3c018016 lui r1,0x8016
+
00141fc0: 00000000 nop                                          #
  001420bc: ac225ef4 sw r2,0x5ef4(r1)
+
00141fc4: 14400003 bne r2,r0,0x00141fd4                        #If Ability CT = 0?    /Else Branch
  001420c0: 86020170 lh r2,0x0170(r16)
+
00141fc8: 00000000 nop                                          #
  001420c4: 00000000 nop
+
00141fcc: 08050805 j 0x00142014                            #Jump
  001420c8: 24427000 addiu r2,r2,0x7000
+
00141fd0: 34020001 ori r2,r0,0x0001                        #r2  = 1
  001420cc: 3c018016 lui r1,0x8016
+
00141fd4: 08050804 j 0x00142010                                #Jump
  001420d0: ac225efc sw r2,0x5efc(r1)
+
00141fd8: 3411000c ori r17,r0,0x000c                            #r17 = 0x0c
  001420d4: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
00141fdc: 3c038015 lui r3,0x8015                                #
  001420d8: 3404002c ori r4,r0,0x002c
+
00141fe0: 8c63d310 lw r3,-0x2cf0(r3)                            #r3  = Value at 0x8014d310 (Used Item?)
  001420dc: 08050932 j 0x 001424c8
+
00141fe4: 00000000 nop                                          #
  001420e0: 34020001 ori r2,r0,0x0001
+
00141fe8: 14620006 bne r3,r2,0x00142004                        #If Used Item is valid?    /Else Branch
  001420e4: 92e30001 lbu r3,0x0001(r23)
+
00141fec: 3411002e ori r17,r0,0x002e                            #r17 = 0x2e
  001420e8: 00000000 nop
+
00141ff0: 3c028015 lui r2,0x8015                                    #
  001420ec: 10620004 beq r3,r2,0x 00142100
+
00141ff4: 8c42d320 lw r2,-0x2ce0(r2)                                #r2  = Value at 0x8014d320 (Ability CT?)
  001420f0: 00000000 nop
+
00141ff8: 00000000 nop                                              #
  001420f4: 34020014 ori r2,r0,0x0014
+
00141ffc: 14400003 bne r2,r0,0x0014200c                            #If Ability CT = 0?    /Else Branch
  001420f8: 14620004 bne r3,r2,0x 0014210c
+
00142000: 00000000 nop                                              #
  001420fc: 00000000 nop
+
00142004: 08050805 j 0x00142014                                #Jump
  00142100: 92e20008 lbu r2,0x0008(r23)
+
00142008: 34020001 ori r2,r0,0x0001                            #r2  = 1
  00142104: 0805084d j 0x 00142134
+
0014200c: 3411000d ori r17,r0,0x000d                                #r17 = 0x0d
  00142108: 24423800 addiu r2,r2,0x3800
+
00142010: 34020001 ori r2,r0,0x0001                #r2  = 1
  0014210c: 96e20002 lhu r2,0x0002(r23)
+
00142014: 3c018015 lui r1,0x8015                    #
  00142110: 00000000 nop
+
00142018: a022d324 sb r2,-0x2cdc(r1)                #Store 1 to 0x8014d324 (Ability is Selected?)
  00142114: 305101ff andi r17,r2,0x01ff
+
0014201c: 0805086d j 0x001421b4                    #Jump
  00142118: 2622ffc4 addiu r2,r17,0xffc4
+
00142020: 00000000 nop                              #
  0014211c: 2c42001a sltiu r2,r2,0x001a
+
 
  00142120: 10400003 beq r2,r0,0x 00142130
+
00142024: 16420011 bne r18,r2,0x0014206c        #If r18 = 0x05    /Else Branch
  00142124: 3402b7c4 ori r2,r0,0xb7c4
+
00142028: 34020007 ori r2,r0,0x0007            #r2  = 0x07
  00142128: 0805084d j 0x 00142134
+
0014202c: 96e20002 lhu r2,0x0002(r23)              #r2  = ??
  0014212c: 02221021 addu r2,r17,r2
+
00142030: 3c058014 lui r5,0x8014                    #
  00142130: 26227000 addiu r2,r17,0x7000
+
00142034: 24a5bdcc addiu r5,r5,0xbdcc              #r5  =
  00142134: 3c018016 lui r1,0x8016
+
00142038: 304201ff andi r2,r2,0x01ff                #r2  = ?? - 0x200 flag
  00142138: ac225ef4 sw r2,0x5ef4(r1)
+
0014203c: 3c018015 lui r1,0x8015                    #
  0014213c: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
00142040: ac22d308 sw r2,-0x2cf8(r1)                #Store r2 to 0x8014d308 (Used Ability for Spell Quotes?)
  00142140: 3404000a ori r4,r0,0x000a
+
00142044: 0c053228 jal 0x0014c8a0         #[[Initialize Thread]]
  00142144: 08050932 j 0x 001424c8
+
00142048: 34040004 ori r4,r0,0x0004                #r4  = 4
  00142148: 34020001 ori r2,r0,0x0001
+
0014204c: 34040004 ori r4,r0,0x0004                #r4  = 4
  0014214c: 124200d5 beq r18,r2,0x 001424a4
+
00142050: 02c02821 addu r5,r22,r0                  #r5  = Unit ID
  00142150: 34020009 ori r2,r0,0x0009
+
00142054: 3c068015 lui r6,0x8015                    #
  00142154: 1642001b bne r18,r2,0x 001421c4
+
00142058: 8cc6d308 lw r6,-0x2cf8(r6)                #r6  = Used Ability for Spell Quotes?
  00142158: 00000000 nop
+
0014205c: 0c05328e jal 0x0014ca38         #[[Store Thread Function Parameters]]
  0014215c: 16740003 bne r19,r20,0x 0014216c
+
00142060: 00003821 addu r7,r0,r0                    #r7  = 0
 +
00142064: 08050932 j 0x001424c8                    #Jump
 +
00142068: 34020001 ori r2,r0,0x0001                #r2  = 1
 +
 
 +
0014206c: 16420037 bne r18,r2,0x0014214c        #If r18 = 0x07    /Else Branch
 +
00142070: 34020006 ori r2,r0,0x0006            #r2  = 0x06
 +
  00142074: 0c04ebb7 jal 0x0013aedc         #[[0013aedc - 0013aee8]]
 +
  00142078: 3404003c ori r4,r0,0x003c                 #r4  = 0x3c
 +
  0014207c: 9202016f lbu r2,0x016f(r16)               #r2  = Skillset of Last Attack Used
 +
  00142080: 3c018006 lui r1,0x8006                   #
 +
  00142084: 00220821 addu r1,r1,r2                   #r1  = Skillset Data
 +
  00142088: 90225cb4 lbu r2,0x5cb4(r1)     #r2  = Skillset's Action Menu
 +
  0014208c: 00000000 nop                             #
 +
  00142090: 14550014 bne r2,r21,0x001420e4            #If Skillset's Action Menu = 3 (Math)    /Else Branch
 +
  00142094: 34020006 ori r2,r0,0x0006                 #r2  = 6
 +
  00142098: 86020174 lh r2,0x0174(r16)                   #r2  = Calculator Multiplier Ability ID
 +
  0014209c: 00000000 nop                                 #
 +
  001420a0: 24427000 addiu r2,r2,0x7000                  #r2  = Calculator Multiplier Ability ID + 0x7000
 +
  001420a4: 3c018016 lui r1,0x8016                       #
 +
  001420a8: ac225ef8 sw r2,0x5ef8(r1)                     #Store r2 to 0x80165ef8
 +
  001420ac: 86020172 lh r2,0x0172(r16)                   #r2  = Calculator Type Ability ID
 +
  001420b0: 00000000 nop                                 #
 +
  001420b4: 24427000 addiu r2,r2,0x7000                  #r2  = Calculator Type Ability ID + 0x7000
 +
  001420b8: 3c018016 lui r1,0x8016                       #
 +
  001420bc: ac225ef4 sw r2,0x5ef4(r1)                     #Store r2 to 0x80165ef4
 +
  001420c0: 86020170 lh r2,0x0170(r16)                   #r2  = Last Attack Used ID
 +
  001420c4: 00000000 nop                                 #
 +
  001420c8: 24427000 addiu r2,r2,0x7000                  #r2  = Last Attack Used ID + 0x7000
 +
  001420cc: 3c018016 lui r1,0x8016                       #
 +
  001420d0: ac225efc sw r2,0x5efc(r1)                     #Store r2 to 0x80165efc
 +
  001420d4: 0c050595 jal 0x00141654             #[[00141654 - 0014169c]]
 +
  001420d8: 3404002c ori r4,r0,0x002c                     #r4  = 0x2c
 +
  001420dc: 08050932 j 0x001424c8                        #Jump
 +
  001420e0: 34020001 ori r2,r0,0x0001                     #r2  = 1
 +
  001420e4: 92e30001 lbu r3,0x0001(r23)               #r3  = ?
 +
  001420e8: 00000000 nop                             #
 +
  001420ec: 10620004 beq r3,r2,0x00142100            #If ? = 6    /Else Branch
 +
  001420f0: 00000000 nop                             #
 +
  001420f4: 34020014 ori r2,r0,0x0014                     #r2  = 0x14
 +
  001420f8: 14620004 bne r3,r2,0x0014210c                #If ? = 0x14    /Else Branch
 +
  001420fc: 00000000 nop                                 #
 +
  00142100: 92e20008 lbu r2,0x0008(r23)               #r2  = ??
 +
  00142104: 0805084d j 0x00142134                    #Jump
 +
  00142108: 24423800 addiu r2,r2,0x3800              #r2  = ?? + 0x3800
 +
  0014210c: 96e20002 lhu r2,0x0002(r23)                   #r2  = ???
 +
  00142110: 00000000 nop                                 #
 +
  00142114: 305101ff andi r17,r2,0x01ff                   #r17 = ??? without 0x200 flag
 +
  00142118: 2622ffc4 addiu r2,r17,0xffc4                 #r2  = (??? without 0x200 flag) - 0x3c
 +
  0014211c: 2c42001a sltiu r2,r2,0x001a                   #Set if r2 is less than 0x1a
 +
  00142120: 10400003 beq r2,r0,0x00142130                #
 +
  00142124: 3402b7c4 ori r2,r0,0xb7c4                    #r2  = 0xb7c4
 +
  00142128: 0805084d j 0x00142134                            #Jump
 +
  0014212c: 02221021 addu r2,r17,r2                           #r2  = (??? without 0x200 flag) + 0xb7c4
 +
  00142130: 26227000 addiu r2,r17,0x7000                  #r2  = (??? without 0x200 flag) + 0x7000
 +
  00142134: 3c018016 lui r1,0x8016                   #
 +
  00142138: ac225ef4 sw r2,0x5ef4(r1)                 #Store r2 to 0x80165ef4
 +
  0014213c: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]]
 +
  00142140: 3404000a ori r4,r0,0x000a                 #r4  = 0x0a
 +
  00142144: 08050932 j 0x001424c8                    #Jump
 +
  00142148: 34020001 ori r2,r0,0x0001                 #r2  = 1
 +
 
 +
  0014214c: 124200d5 beq r18,r2,0x001424a4        #If r18 = 0x06    /Else Branch
 +
  00142150: 34020009 ori r2,r0,0x0009             #r2  = 0x09
 +
  00142154: 1642001b bne r18,r2,0x001421c4            #If r18 = 0x09    /Else Branch
 +
  00142158: 00000000 nop                             #
 +
  0014215c: 16740003 bne r19,r20,0x0014216c
 
  00142160: 34110008 ori r17,r0,0x0008
 
  00142160: 34110008 ori r17,r0,0x0008
  00142164: 0805086d j 0x 001421b4
+
  00142164: 0805086d j 0x001421b4                #Jump
 
  00142168: 34110016 ori r17,r0,0x0016
 
  00142168: 34110016 ori r17,r0,0x0016
  0014216c: 16630003 bne r19,r3,0x 0014217c
+
  0014216c: 16630003 bne r19,r3,0x0014217c
 
  00142170: 00000000 nop
 
  00142170: 00000000 nop
  00142174: 0805086d j 0x 001421b4
+
  00142174: 0805086d j 0x001421b4                #Jump
 
  00142178: 34110017 ori r17,r0,0x0017
 
  00142178: 34110017 ori r17,r0,0x0017
  0014217c: 16750003 bne r19,r21,0x 0014218c
+
  0014217c: 16750003 bne r19,r21,0x0014218c
 
  00142180: 3402000c ori r2,r0,0x000c
 
  00142180: 3402000c ori r2,r0,0x000c
  00142184: 0805086d j 0x 001421b4
+
  00142184: 0805086d j 0x001421b4                #Jump
 
  00142188: 34110020 ori r17,r0,0x0020
 
  00142188: 34110020 ori r17,r0,0x0020
 
  0014218c: 3c038015 lui r3,0x8015
 
  0014218c: 3c038015 lui r3,0x8015
 
  00142190: 8c63d314 lw r3,-0x2cec(r3)
 
  00142190: 8c63d314 lw r3,-0x2cec(r3)
 
  00142194: 00000000 nop
 
  00142194: 00000000 nop
  00142198: 14620003 bne r3,r2,0x 001421a8
+
  00142198: 14620003 bne r3,r2,0x001421a8
 
  0014219c: 3402000e ori r2,r0,0x000e
 
  0014219c: 3402000e ori r2,r0,0x000e
  001421a0: 0805086d j 0x 001421b4
+
  001421a0: 0805086d j 0x001421b4                #Jump
 
  001421a4: 3411001a ori r17,r0,0x001a
 
  001421a4: 3411001a ori r17,r0,0x001a
  001421a8: 14620002 bne r3,r2,0x 001421b4
+
  001421a8: 14620002 bne r3,r2,0x001421b4
 
  001421ac: 00000000 nop
 
  001421ac: 00000000 nop
 
  001421b0: 3411001b ori r17,r0,0x001b
 
  001421b0: 3411001b ori r17,r0,0x001b
  001421b4: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  001421b4: 0c050595 jal 0x00141654     #[[00141654 - 0014169c]]
 
  001421b8: 02202021 addu r4,r17,r0
 
  001421b8: 02202021 addu r4,r17,r0
  001421bc: 08050932 j 0x 001424c8
+
  001421bc: 08050932 j 0x001424c8                #Jump
  001421c0: 34020001 ori r2,r0,0x0001
+
  001421c0: 34020001 ori r2,r0,0x0001             #r2  = 1
 
  001421c4: 3402000a ori r2,r0,0x000a
 
  001421c4: 3402000a ori r2,r0,0x000a
  001421c8: 1642000f bne r18,r2,0x 00142208
+
 
  001421cc: 3402000b ori r2,r0,0x000b
+
  001421c8: 1642000f bne r18,r2,0x00142208        #If r18 = 0x0a    /Else Branch
 +
  001421cc: 3402000b ori r2,r0,0x000b             #r2  = 0x0b
 
  001421d0: 3c028004 lui r2,0x8004
 
  001421d0: 3c028004 lui r2,0x8004
 
  001421d4: 8c4273ac lw r2,0x73ac(r2)
 
  001421d4: 8c4273ac lw r2,0x73ac(r2)
 
  001421d8: 3c030018 lui r3,0x0018
 
  001421d8: 3c030018 lui r3,0x0018
 
  001421dc: 00431024 and r2,r2,r3
 
  001421dc: 00431024 and r2,r2,r3
  001421e0: 144000b0 bne r2,r0,0x 001424a4
+
  001421e0: 144000b0 bne r2,r0,0x001424a4
 
  001421e4: 322200ff andi r2,r17,0x00ff
 
  001421e4: 322200ff andi r2,r17,0x00ff
 
  001421e8: 3c018017 lui r1,0x8017
 
  001421e8: 3c018017 lui r1,0x8017
Line 455: Line 464:
 
  001421f0: 3c018016 lui r1,0x8016
 
  001421f0: 3c018016 lui r1,0x8016
 
  001421f4: ac225ef4 sw r2,0x5ef4(r1)
 
  001421f4: ac225ef4 sw r2,0x5ef4(r1)
  001421f8: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  001421f8: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]]
 
  001421fc: 3404001d ori r4,r0,0x001d
 
  001421fc: 3404001d ori r4,r0,0x001d
  00142200: 08050932 j 0x 001424c8
+
  00142200: 08050932 j 0x001424c8                    #Jump
  00142204: 34020001 ori r2,r0,0x0001
+
  00142204: 34020001 ori r2,r0,0x0001                 #r2  = 1
  00142208: 16420008 bne r18,r2,0x 0014222c
+
 
  0014220c: 3402000c ori r2,r0,0x000c
+
  00142208: 16420008 bne r18,r2,0x0014222c        #If r18 = 0x0b    /Else Branch
 +
  0014220c: 3402000c ori r2,r0,0x000c             #r2  = 0x0c
 
  00142210: 26627000 addiu r2,r19,0x7000
 
  00142210: 26627000 addiu r2,r19,0x7000
 
  00142214: 3c018016 lui r1,0x8016
 
  00142214: 3c018016 lui r1,0x8016
 
  00142218: ac225ef4 sw r2,0x5ef4(r1)
 
  00142218: ac225ef4 sw r2,0x5ef4(r1)
  0014221c: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  0014221c: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]]
 
  00142220: 3404001e ori r4,r0,0x001e
 
  00142220: 3404001e ori r4,r0,0x001e
  00142224: 08050932 j 0x 001424c8
+
  00142224: 08050932 j 0x001424c8                    #Jump
  00142228: 34020001 ori r2,r0,0x0001
+
  00142228: 34020001 ori r2,r0,0x0001                 #r2  = 1
  0014222c: 16420005 bne r18,r2,0x 00142244
+
 
  00142230: 3402000d ori r2,r0,0x000d
+
  0014222c: 16420005 bne r18,r2,0x00142244        #If r18 = 0x0c    /Else Branch
  00142234: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  00142230: 3402000d ori r2,r0,0x000d             #r2  = 0x0d
 +
  00142234: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]]
 
  00142238: 3404001f ori r4,r0,0x001f
 
  00142238: 3404001f ori r4,r0,0x001f
  0014223c: 08050932 j 0x 001424c8
+
  0014223c: 08050932 j 0x001424c8                    #Jump
  00142240: 34020001 ori r2,r0,0x0001
+
  00142240: 34020001 ori r2,r0,0x0001                 #r2  = 1
  00142244: 16420005 bne r18,r2,0x 0014225c
+
 
  00142248: 3402000e ori r2,r0,0x000e
+
  00142244: 16420005 bne r18,r2,0x0014225c        #If r18 = 0x0d    /Else Branch
  0014224c: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  00142248: 3402000e ori r2,r0,0x000e             #r2  = 0x0e
 +
  0014224c: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]]
 
  00142250: 34040021 ori r4,r0,0x0021
 
  00142250: 34040021 ori r4,r0,0x0021
  00142254: 08050932 j 0x 001424c8
+
  00142254: 08050932 j 0x001424c8                    #Jump
  00142258: 34020001 ori r2,r0,0x0001
+
  00142258: 34020001 ori r2,r0,0x0001                 #r2  = 1
  0014225c: 16420005 bne r18,r2,0x 00142274
+
 
  00142260: 3402000f ori r2,r0,0x000f
+
  0014225c: 16420005 bne r18,r2,0x00142274        #If r18 = 0x0e    /Else Branch
  00142264: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  00142260: 3402000f ori r2,r0,0x000f             #r2  = 0x0f
 +
  00142264: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]]
 
  00142268: 26640022 addiu r4,r19,0x0022
 
  00142268: 26640022 addiu r4,r19,0x0022
  0014226c: 08050932 j 0x 001424c8
+
  0014226c: 08050932 j 0x001424c8                    #Jump
  00142270: 34020001 ori r2,r0,0x0001
+
  00142270: 34020001 ori r2,r0,0x0001                 #r2  = 1
00142274: 16420030 bne r18,r2,0x 00142338
 
  00142278: 34020010 ori r2,r0,0x0010
 
  
recieve item whos quantity = 99 (increase gil)
+
Recieve item
 
+
00142274: 16420030 bne r18,r2,0x00142338        #If r18 = 0x0f    /Else Branch
  0014227c: 326400ff andi r4,r19,0x00ff
+
00142278: 34020010 ori r2,r0,0x0010            #r2  = 0x10
  00142280: 0c0178a2 jal 0x0005e288 [[Get Total Equipment Quantity (Equip Change/Formation Screen?)]]
+
  0014227c: 326400ff andi r4,r19,0x00ff               #r4  = r19 without 0x100 flag
  00142284: 34050001 ori r5,r0,0x0001
+
  00142280: 0c0178a2 jal 0x0005e288         #[[Get Total Equipment Quantity (Equip Change/Formation Screen?)]]
  00142288: 34030063 ori r3,r0,0x0063
+
  00142284: 34050001 ori r5,r0,0x0001                 #r5  = 1
  0014228c: 1443001a bne r2,r3,0x 001422f8
+
  00142288: 34030063 ori r3,r0,0x0063                 #r3  = 0x63 (99)
  00142290: 00000000 nop
+
  0014228c: 1443001a bne r2,r3,0x001422f8            #If Item quantity = 99    /Else Branch
  00142294: 0c016a21 jal 0x0005a884 [[Get Item Data Pointer]]
+
  00142290: 00000000 nop                             #
 +
  00142294: 0c016a21 jal 0x0005a884             #[[Get Item Data Pointer]]
 
  00142298: 02602021 addu r4,r19,r0
 
  00142298: 02602021 addu r4,r19,r0
 
  0014229c: 3c018016 lui r1,0x8016
 
  0014229c: 3c018016 lui r1,0x8016
Line 503: Line 515:
 
  001422a4: 3c018016 lui r1,0x8016
 
  001422a4: 3c018016 lui r1,0x8016
 
  001422a8: ac335ef8 sw r19,0x5ef8(r1)
 
  001422a8: ac335ef8 sw r19,0x5ef8(r1)
  001422ac: 0c016a21 jal 0x0005a884 [[Get Item Data Pointer]]
+
  001422ac: 0c016a21 jal 0x0005a884             #[[Get Item Data Pointer]]
 
  001422b0: 02602021 addu r4,r19,r0
 
  001422b0: 02602021 addu r4,r19,r0
  001422b4: 00408021 addu r16,r2,r0
+
  001422b4: 00408021 addu r16,r2,r0                       #r16 = Item Data Pointer
 
  001422b8: 96020008 lhu r2,0x0008(r16)
 
  001422b8: 96020008 lhu r2,0x0008(r16)
 
  001422bc: 00000000 nop
 
  001422bc: 00000000 nop
Line 511: Line 523:
 
  001422c4: 3c018016 lui r1,0x8016
 
  001422c4: 3c018016 lui r1,0x8016
 
  001422c8: ac225efc sw r2,0x5efc(r1)
 
  001422c8: ac225efc sw r2,0x5efc(r1)
  001422cc: 0c04ed64 jal 0x0013b590 [[Get Script Variable]]
+
  001422cc: 0c04ed64 jal 0x0013b590             #[[Get Script Variable]]
  001422d0: 3404002c ori r4,r0,0x002c
+
  001422d0: 3404002c ori r4,r0,0x002c                     #r4  = 0x2c (War Funds Variable ID)
  001422d4: 96050008 lhu r5,0x0008(r16)
+
  001422d4: 96050008 lhu r5,0x0008(r16)                   #r5  = Price of Item
  001422d8: 3404002c ori r4,r0,0x002c
+
  001422d8: 3404002c ori r4,r0,0x002c                     #r4  = 0x2c (War Funds Variable ID)
  001422dc: 00052882 srl r5,r5,0x02
+
  001422dc: 00052882 srl r5,r5,0x02                       #r5  = Price of Item / 4
  001422e0: 0c04ed91 jal 0x0013b644 [[Set Script Variable]]
+
  001422e0: 0c04ed91 jal 0x0013b644             #[[Set Script Variable]]
  001422e4: 00a22821 addu r5,r5,r2
+
  001422e4: 00a22821 addu r5,r5,r2                       #r5  = War Funds + (Price of Item / 4)
  001422e8: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  001422e8: 0c050595 jal 0x00141654             #[[00141654 - 0014169c]]
 
  001422ec: 34040026 ori r4,r0,0x0026
 
  001422ec: 34040026 ori r4,r0,0x0026
  001422f0: 08050932 j 0x 001424c8
+
  001422f0: 08050932 j 0x001424c8                        #Jump
 
  001422f4: 34020001 ori r2,r0,0x0001
 
  001422f4: 34020001 ori r2,r0,0x0001
 
+
  001422f8: 0c016a21 jal 0x0005a884         #[[Get Item Data Pointer]]
Increment item quantity
 
 
 
  001422f8: 0c016a21 jal 0x0005a884 [[Get Item Data Pointer]]
 
 
  001422fc: 02602021 addu r4,r19,r0
 
  001422fc: 02602021 addu r4,r19,r0
 
  00142300: 3c018016 lui r1,0x8016
 
  00142300: 3c018016 lui r1,0x8016
Line 531: Line 540:
 
  00142308: 3c018006 lui r1,0x8006
 
  00142308: 3c018006 lui r1,0x8006
 
  0014230c: 00330821 addu r1,r1,r19
 
  0014230c: 00330821 addu r1,r1,r19
  00142310: 902296e0 lbu r2,-0x6920(r1)
+
  00142310: 902296e0 lbu r2,-0x6920(r1)               #r2  = Quantity of Item owned
 
  00142314: 00000000 nop
 
  00142314: 00000000 nop
  00142318: 24420001 addiu r2,r2,0x0001
+
  00142318: 24420001 addiu r2,r2,0x0001               #r2  = Quantity of Item owned + 1
 
  0014231c: 3c018006 lui r1,0x8006
 
  0014231c: 3c018006 lui r1,0x8006
 
  00142320: 00330821 addu r1,r1,r19
 
  00142320: 00330821 addu r1,r1,r19
  00142324: a02296e0 sb r2,-0x6920(r1)
+
  00142324: a02296e0 sb r2,-0x6920(r1)               #Store new Quantity of Item owned
  00142328: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  00142328: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]]
  0014232c: 34040027 ori r4,r0,0x0027
+
  0014232c: 34040027 ori r4,r0,0x0027                 #r4  = 0x27
  00142330: 08050932 j 0x 001424c8
+
  00142330: 08050932 j 0x001424c8                    #Jump
  00142334: 34020001 ori r2,r0,0x0001
+
  00142334: 34020001 ori r2,r0,0x0001                 #r2  = 1
  00142338: 16420005 bne r18,r2,0x 00142350
+
 
  0014233c: 34020011 ori r2,r0,0x0011
+
  00142338: 16420005 bne r18,r2,0x00142350        #If r18 = 0x10    /Else Branch
  00142340: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  0014233c: 34020011 ori r2,r0,0x0011             #r2  = 0x11
  00142344: 34040028 ori r4,r0,0x0028
+
  00142340: 0c050595 jal 0x00141654         #[[00141654 - 0014169c]]
  00142348: 08050932 j 0x 001424c8
+
  00142344: 34040028 ori r4,r0,0x0028                 #r4  = 0x28
  0014234c: 34020001 ori r2,r0,0x0001
+
  00142348: 08050932 j 0x001424c8                    #Jump
  00142350: 16420058 bne r18,r2,0x 001424b4
+
  0014234c: 34020001 ori r2,r0,0x0001                 #r2  = 1
  00142354: 34040007 ori r4,r0,0x0007
+
 
 +
  00142350: 16420058 bne r18,r2,0x001424b4        #If r18 = 0x11    /Else Branch
 +
  00142354: 34040007 ori r4,r0,0x0007             #r2  = 0x07
 
  00142358: 3c058017 lui r5,0x8017
 
  00142358: 3c058017 lui r5,0x8017
  0014235c: 24a596a8 addiu r5,r5,0x96a8
+
  0014235c: 24a596a8 addiu r5,r5,0x96a8           #r5  = 0x801696a8
  00142360: 2662ffd9 addiu r2,r19,0xffd9
+
  00142360: 2662ffd9 addiu r2,r19,0xffd9         #r2  = r19 - 0x27
  00142364: 2c420007 sltiu r2,r2,0x0007
+
  00142364: 2c420007 sltiu r2,r2,0x0007           #Compare to 0x07
  00142368: 10400022 beq r2,r0,0x 001423f4
+
  00142368: 10400022 beq r2,r0,0x001423f4        #If ?    /Else Branch
  0014236c: 02201821 addu r3,r17,r0
+
  0014236c: 02201821 addu r3,r17,r0               #
 
  00142370: 2662506b addiu r2,r19,0x506b
 
  00142370: 2662506b addiu r2,r19,0x506b
 
  00142374: 3c018016 lui r1,0x8016
 
  00142374: 3c018016 lui r1,0x8016
Line 561: Line 572:
 
  00142380: 3c018016 lui r1,0x8016
 
  00142380: 3c018016 lui r1,0x8016
 
  00142384: ac365ef4 sw r22,0x5ef4(r1)
 
  00142384: ac365ef4 sw r22,0x5ef4(r1)
  00142388: 16620004 bne r19,r2,0x 0014239c
+
  00142388: 16620004 bne r19,r2,0x0014239c
 
  0014238c: 32220080 andi r2,r17,0x0080
 
  0014238c: 32220080 andi r2,r17,0x0080
  00142390: 10400002 beq r2,r0,0x 0014239c
+
  00142390: 10400002 beq r2,r0,0x0014239c
 
  00142394: 34030001 ori r3,r0,0x0001
 
  00142394: 34030001 ori r3,r0,0x0001
 
  00142398: 34030081 ori r3,r0,0x0081
 
  00142398: 34030081 ori r3,r0,0x0081
Line 569: Line 580:
 
  001423a0: 24845efc addiu r4,r4,0x5efc
 
  001423a0: 24845efc addiu r4,r4,0x5efc
 
  001423a4: 30620080 andi r2,r3,0x0080
 
  001423a4: 30620080 andi r2,r3,0x0080
  001423a8: 10400005 beq r2,r0,0x 001423c0
+
  001423a8: 10400005 beq r2,r0,0x001423c0
 
  001423ac: ac830000 sw r3,0x0000(r4)
 
  001423ac: ac830000 sw r3,0x0000(r4)
 
  001423b0: 3062007f andi r2,r3,0x007f
 
  001423b0: 3062007f andi r2,r3,0x007f
 
  001423b4: ac820000 sw r2,0x0000(r4)
 
  001423b4: ac820000 sw r2,0x0000(r4)
  001423b8: 080508f1 j 0x 001423c4
+
  001423b8: 080508f1 j 0x001423c4
 
  001423bc: 3402508c ori r2,r0,0x508c
 
  001423bc: 3402508c ori r2,r0,0x508c
 
  001423c0: 3402508d ori r2,r0,0x508d
 
  001423c0: 3402508d ori r2,r0,0x508d
 
  001423c4: a4a20002 sh r2,0x0002(r5)
 
  001423c4: a4a20002 sh r2,0x0002(r5)
 
  001423c8: 34020027 ori r2,r0,0x0027
 
  001423c8: 34020027 ori r2,r0,0x0027
  001423cc: 16620031 bne r19,r2,0x 00142494
+
  001423cc: 16620031 bne r19,r2,0x00142494
 
  001423d0: 340200ff ori r2,r0,0x00ff
 
  001423d0: 340200ff ori r2,r0,0x00ff
  001423d4: 14620003 bne r3,r2,0x 001423e4
+
  001423d4: 14620003 bne r3,r2,0x001423e4
 
  001423d8: 3402007f ori r2,r0,0x007f
 
  001423d8: 3402007f ori r2,r0,0x007f
  001423dc: 080508fb j 0x 001423ec
+
  001423dc: 080508fb j 0x001423ec
 
  001423e0: 3402509a ori r2,r0,0x509a
 
  001423e0: 3402509a ori r2,r0,0x509a
  001423e4: 1462002b bne r3,r2,0x 00142494
+
  001423e4: 1462002b bne r3,r2,0x00142494
 
  001423e8: 34025099 ori r2,r0,0x5099
 
  001423e8: 34025099 ori r2,r0,0x5099
  001423ec: 08050925 j 0x 00142494
+
  001423ec: 08050925 j 0x00142494
 
  001423f0: a4a20002 sh r2,0x0002(r5)
 
  001423f0: a4a20002 sh r2,0x0002(r5)
 
  001423f4: 3402002e ori r2,r0,0x002e
 
  001423f4: 3402002e ori r2,r0,0x002e
  001423f8: 16620008 bne r19,r2,0x 0014241c
+
  001423f8: 16620008 bne r19,r2,0x0014241c
 
  001423fc: 34040032 ori r4,r0,0x0032
 
  001423fc: 34040032 ori r4,r0,0x0032
  00142400: 06210002 bgez r17,0x 0014240c
+
  00142400: 06210002 bgez r17,0x0014240c
 
  00142404: 02201021 addu r2,r17,r0
 
  00142404: 02201021 addu r2,r17,r0
 
  00142408: 00021023 subu r2,r0,r2
 
  00142408: 00021023 subu r2,r0,r2
 
  0014240c: 3c018016 lui r1,0x8016
 
  0014240c: 3c018016 lui r1,0x8016
 
  00142410: ac225ef4 sw r2,0x5ef4(r1)
 
  00142410: ac225ef4 sw r2,0x5ef4(r1)
  00142414: 0805090f j 0x 0014243c
+
  00142414: 0805090f j 0x0014243c
 
  00142418: 3402508f ori r2,r0,0x508f
 
  00142418: 3402508f ori r2,r0,0x508f
 
  0014241c: 3402002f ori r2,r0,0x002f
 
  0014241c: 3402002f ori r2,r0,0x002f
  00142420: 1662000c bne r19,r2,0x 00142454
+
  00142420: 1662000c bne r19,r2,0x00142454
 
  00142424: 2662ffe4 addiu r2,r19,0xffe4
 
  00142424: 2662ffe4 addiu r2,r19,0xffe4
 
  00142428: 34040032 ori r4,r0,0x0032
 
  00142428: 34040032 ori r4,r0,0x0032
Line 608: Line 619:
 
  0014243c: 3c018017 lui r1,0x8017
 
  0014243c: 3c018017 lui r1,0x8017
 
  00142440: a42296aa sh r2,-0x6956(r1)
 
  00142440: a42296aa sh r2,-0x6956(r1)
  00142444: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  00142444: 0c050595 jal 0x00141654     #[[00141654 - 0014169c]]
 
  00142448: 00000000 nop
 
  00142448: 00000000 nop
  0014244c: 08050932 j 0x 001424c8
+
  0014244c: 08050932 j 0x001424c8
 
  00142450: 34020001 ori r2,r0,0x0001
 
  00142450: 34020001 ori r2,r0,0x0001
 
  00142454: 2c420002 sltiu r2,r2,0x0002
 
  00142454: 2c420002 sltiu r2,r2,0x0002
  00142458: 10400012 beq r2,r0,0x 001424a4
+
  00142458: 10400012 beq r2,r0,0x001424a4
 
  0014245c: 32228000 andi r2,r17,0x8000
 
  0014245c: 32228000 andi r2,r17,0x8000
  00142460: 10400006 beq r2,r0,0x 0014247c
+
  00142460: 10400006 beq r2,r0,0x0014247c
 
  00142464: 322200ff andi r2,r17,0x00ff
 
  00142464: 322200ff andi r2,r17,0x00ff
 
  00142468: 24423800 addiu r2,r2,0x3800
 
  00142468: 24423800 addiu r2,r2,0x3800
 
  0014246c: 3c018016 lui r1,0x8016
 
  0014246c: 3c018016 lui r1,0x8016
 
  00142470: ac225ef4 sw r2,0x5ef4(r1)
 
  00142470: ac225ef4 sw r2,0x5ef4(r1)
  00142474: 08050923 j 0x 0014248c
+
  00142474: 08050923 j 0x0014248c
 
  00142478: 3402509b ori r2,r0,0x509b
 
  00142478: 3402509b ori r2,r0,0x509b
 
  0014247c: 26223800 addiu r2,r17,0x3800
 
  0014247c: 26223800 addiu r2,r17,0x3800
Line 628: Line 639:
 
  0014248c: 3c018017 lui r1,0x8017
 
  0014248c: 3c018017 lui r1,0x8017
 
  00142490: a42296aa sh r2,-0x6956(r1)
 
  00142490: a42296aa sh r2,-0x6956(r1)
  00142494: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  00142494: 0c050595 jal 0x00141654     #[[00141654 - 0014169c]]
 
  00142498: 34040032 ori r4,r0,0x0032
 
  00142498: 34040032 ori r4,r0,0x0032
  0014249c: 08050932 j 0x 001424c8
+
  0014249c: 08050932 j 0x001424c8
 
  001424a0: 34020001 ori r2,r0,0x0001
 
  001424a0: 34020001 ori r2,r0,0x0001
  001424a4: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  001424a4: 0c050595 jal 0x00141654     #[[00141654 - 0014169c]]
 
  001424a8: 34040008 ori r4,r0,0x0008
 
  001424a8: 34040008 ori r4,r0,0x0008
  001424ac: 08050932 j 0x 001424c8
+
  001424ac: 08050932 j 0x001424c8
  001424b0: 34020001 ori r2,r0,0x0001
+
  001424b0: 34020001 ori r2,r0,0x0001             #r2 = 1
  001424b4: 0c01127e jal 0x000449f8 jr r31
+
 
 +
  001424b4: 0c01127e jal 0x000449f8     #[[000449f8 - 000449fc]] Null Routine
 
  001424b8: 34050005 ori r5,r0,0x0005
 
  001424b8: 34050005 ori r5,r0,0x0005
  001424bc: 0c050595 jal 0x 00141654 [[00141654 - 0014169c]]
+
  001424bc: 0c050595 jal 0x00141654     #[[00141654 - 0014169c]]
 
  001424c0: 34040008 ori r4,r0,0x0008
 
  001424c0: 34040008 ori r4,r0,0x0008
  001424c4: 00001021 addu r2,r0,r0
+
  001424c4: 00001021 addu r2,r0,r0               #r2 = 0
 +
 
  001424c8: 3c018015 lui r1,0x8015
 
  001424c8: 3c018015 lui r1,0x8015
 
  001424cc: ac32d318 sw r18,-0x2ce8(r1)
 
  001424cc: ac32d318 sw r18,-0x2ce8(r1)
 
  001424d0: 3c018015 lui r1,0x8015
 
  001424d0: 3c018015 lui r1,0x8015
 
  001424d4: ac33d31c sw r19,-0x2ce4(r1)
 
  001424d4: ac33d31c sw r19,-0x2ce4(r1)
 +
 +
END:
 
  001424d8: 8fbf0030 lw r31,0x0030(r29)
 
  001424d8: 8fbf0030 lw r31,0x0030(r29)
 
  001424dc: 8fb7002c lw r23,0x002c(r29)
 
  001424dc: 8fb7002c lw r23,0x002c(r29)

Revision as of 05:47, 12 May 2025

< BATTLE.BIN

Alternate documentation here: 00141b0c - 00142504
00141b0c: 27bdffc8 addiu r29,r29,0xffc8         #
00141b10: afb20018 sw r18,0x0018(r29)           #
00141b14: 00809021 addu r18,r4,r0               #r18 = r4 ?
00141b18: afb3001c sw r19,0x001c(r29)           #
00141b1c: 00a09821 addu r19,r5,r0               #r19 = r5 ??
00141b20: afb60028 sw r22,0x0028(r29)           #
00141b24: 00c0b021 addu r22,r6,r0               #r22 = r6 (Unit ID?)
00141b28: afb10014 sw r17,0x0014(r29)           #
00141b2c: 00e08821 addu r17,r7,r0               #r17 = r7 ???
00141b30: afb40020 sw r20,0x0020(r29)           #
00141b34: 8fb40048 lw r20,0x0048(r29)           #r20 = Something from Stack?
00141b38: afb7002c sw r23,0x002c(r29)           #
00141b3c: 8fb7004c lw r23,0x004c(r29)           #r23 = Some pointer from Stack??
00141b40: 3c028016 lui r2,0x8016                #
00141b44: 24426b10 addiu r2,r2,0x6b10           #r2  = 0x80166b10 (Menu Data pointer?)
00141b48: 3c018017 lui r1,0x8017                #
00141b4c: ac223cb8 sw r2,0x3cb8(r1)             #Store r2 to 0x80173cb8
00141b50: 2402ffff addiu r2,r0,0xffff           #r2  = -1
00141b54: afbf0030 sw r31,0x0030(r29)           #
00141b58: afb50024 sw r21,0x0024(r29)           #
00141b5c: afb00010 sw r16,0x0010(r29)           #
00141b60: 3c018016 lui r1,0x8016                #
00141b64: ac225f84 sw r2,0x5f84(r1)             #Store r2 to 0x80165f84 (Menu/Message display byte)
00141b68: 3c018015 lui r1,0x8015                #
00141b6c: a020d324 sb r0,-0x2cdc(r1)            #Clear 0x8014d324 (No Ability Selected?)
00141b70: 0c0602bf jal 0x00180afc               #Get Unit's Data Pointer
00141b74: 02c02021 addu r4,r22,r0               #r4  = r22 (Unit ID?)
00141b78: 00408021 addu r16,r2,r0               #r16 = Unit's Data Pointer
00141b7c: 34020008 ori r2,r0,0x0008             #r3  = 8
00141b80: 164200a9 bne r18,r2,0x00141e28        #If r18 (initial parameter r4) = 0x08    /Else Branch
00141b84: 00000000 nop                          #
00141b88: 0c04ed64 jal 0x0013b590                   #Get Script Variable
00141b8c: 34040027 ori r4,r0,0x0027                 #r4  = 0x27 (Current Event variable)
00141b90: 00408821 addu r17,r2,r0                   #r17 = Current Event ID
00141b94: 2622fe66 addiu r2,r17,0xfe66              #r2  = Current Event ID - 19A
00141b98: 2c420010 sltiu r2,r2,0x0010               #Tutorial check?
00141b9c: 10400005 beq r2,r0,0x00141bb4             #If not Tutorial Event?    /Else Branch
00141ba0: 34020002 ori r2,r0,0x0002                     #r2  = 2
00141ba4: 1262024c beq r19,r2,0x001424d8                #If r19 (initial parameter r5) is NOT 2    /Else Branch to END
00141ba8: 34020001 ori r2,r0,0x0001                     #r2  = 1
00141bac: 0805078c j 0x00141e30                             #Jump
00141bb0: 00000000 nop                                      #
00141bb4: 3c028016 lui r2,0x8016                    #
00141bb8: 94425ff6 lhu r2,0x5ff6(r2)                #r2  = ??
00141bbc: 00000000 nop                              #
00141bc0: 10400005 beq r2,r0,0x00141bd8             #If ?? is NOT 0    /Else Branch
00141bc4: 34020002 ori r2,r0,0x0002                     #r2  = 2
00141bc8: 12620243 beq r19,r2,0x001424d8                #If r19 (initial parameter r5) is NOT 2    /Else Branch to END
00141bcc: 34020001 ori r2,r0,0x0001                     #r2  = 1
00141bd0: 0805078c j 0x00141e30                             #Jump
00141bd4: 00000000 nop                                      #
00141bd8: 34020001 ori r2,r0,0x0001                 #r2  = 1
00141bdc: 12620094 beq r19,r2,0x00141e30            #If r19 (initial parameter r5) is NOT 1    /Else Branch
00141be0: 00000000 nop                              #
00141be4: 0c053325 jal 0x0014cc94			            #Check Thread Running Status
00141be8: 34040001 ori r4,r0,0x0001                     #r4  = 1 (Thread ID for Events)
00141bec: 10400009 beq r2,r0,0x00141c14                 #If Event is already running    /Else Branch
00141bf0: 00009021 addu r18,r0,r0                       #r18 = 0
00141bf4: 34040007 ori r4,r0,0x0007                         #r4  = 7
00141bf8: 0c01127e jal 0x000449f8			                #000449f8 - 000449fc Null Routine
00141bfc: 34050003 ori r5,r0,0x0003                         #r5  = 3
00141c00: 34020002 ori r2,r0,0x0002                         #r2  = 2
00141c04: 12620234 beq r19,r2,0x001424d8                    #If r19 (initial parameter r5) is 2    /Else Branch to END
00141c08: 34020001 ori r2,r0,0x0001                         #r2  = 1
00141c0c: 0805078c j 0x00141e30                                 #Jump
00141c10: 00000000 nop                                          #
00141c14: 3c018015 lui r1,0x8015                        #
00141c18: ac36d304 sw r22,-0x2cfc(r1)                   #Store r22 (Unit ID?) to 0x8014d304
00141c1c: 00002021 addu r4,r0,r0                        #r4  = 0 (kind of a counter)
00141c20: 2414fffd addiu r20,r0,0xfffd                  #r20 = -3
                                                        #Loop Start:
00141c24: 24900001 addiu r16,r4,0x0001                      #r16 = r4 + 1
00141c28: 0c0602cb jal 0x00180b2c			                #Check Base Class | Ramza Causes Game Over
00141c2c: 02002021 addu r4,r16,r0                           #
00141c30: 14540002 bne r2,r20,0x00141c3c                    #If Ramza is Crystal/Treasure/othwise disabled? (Petrified?)
00141c34: 02002021 addu r4,r16,r0                           #
00141c38: 26520001 addiu r18,r18,0x0001                         #Increment r18 if Ramza (any Chapter) is Crystal/Treasure/othwise disabled
00141c3c: 28820003 slti r2,r4,0x0003                        #Check Ramza classes only
00141c40: 1440fff8 bne r2,r0,0x00141c24                     #Loop
00141c44: 00000000 nop                                      #
00141c48: 0c060cdd jal 0x00183374			            #Check Battle Outcome | Gameover by party incapacitated
00141c4c: 00000000 nop                                  #
00141c50: 04400003 bltz r2,0x00141c60                   #If battle has NOT been lost    /Else Branch
00141c54: 00000000 nop                                  #
00141c58: 12400018 beq r18,r0,0x00141cbc                    #If Ramza is Crystal/Treasure/othwise disabled    /Else Branch
00141c5c: 00000000 nop                                      #

#Defeated
00141c60: 0c04ed64 jal 0x0013b590			            #Get Script Variable
00141c64: 340401fd ori r4,r0,0x01fd                     #r4  = 0x01fd (Battle has not yet begun?)
00141c68: 14400014 bne r2,r0,0x00141cbc                 #If Battle has NOT begun?    /Else Branch
00141c6c: 34020002 ori r2,r0,0x0002                         #r2  = 2
00141c70: 12620010 beq r19,r2,0x00141cb4                    #If r19 (initial parameter r5) is NOT 2    /Else Branch
00141c74: 34040027 ori r4,r0,0x0027                             #r4  = 0x27 (Current Event Variable ID)
00141c78: 0c04ed91 jal 0x0013b644			                    #Set Script Variable
00141c7c: 34050190 ori r5,r0,0x0190                             #r5  = 0x0190 (Random Battle Setup ID)
00141c80: 00002021 addu r4,r0,r0                                #r4  = 0
00141c84: 340500ff ori r5,r0,0x00ff                             #r5  = 0xff
00141c88: 0c04f58d jal 0x0013d634			                    #Store unit names and some event block data
00141c8c: 340600ff ori r6,r0,0x00ff                             #r6  = 0xff
00141c90: 34020001 ori r2,r0,0x0001                             #r2  = 1
00141c94: 3c018016 lui r1,0x8016                                #
00141c98: a4226048 sh r2,0x6048(r1)                             #Store 1 at 0x80166048 (freezes control to go to next event?)
00141c9c: 3c018017 lui r1,0x8017                                #
00141ca0: a4223cb0 sh r2,0x3cb0(r1)                             #Store 1 at 0x80173cb0 (??)
00141ca4: 0c04fcff jal 0x0013f3fc			                    #0013f3fc - 0013f49c
00141ca8: 00000000 nop                                          #
00141cac: 08050936 j 0x001424d8                                 #Jump to END
00141cb0: 34020002 ori r2,r0,0x0002                             #r2  = 2
00141cb4: 08050782 j 0x00141e08                             #Jump
00141cb8: 34020190 ori r2,r0,0x0190                         #r2  = 0x0190 (Random Battle Setup Event ID)

#Not Defeated
00141cbc: 3c028017 lui r2,0x8017                        #
00141cc0: 84423cb0 lh r2,0x3cb0(r2)                     #r2  = Value at 0x80173cb0 (??)
00141cc4: 00000000 nop                                  #
00141cc8: 1040001e beq r2,r0,0x00141d44                 #If ?? is NOT 0    /Else Branch
00141ccc: 00000000 nop                                  #
00141cd0: 0c05096c jal 0x001425b0			                #Process Scenario Conditionals
00141cd4: 00000000 nop                                      #
00141cd8: 10400016 beq r2,r0,0x00141d34                     #If an Event should be run    /Else Branch
00141cdc: 34020002 ori r2,r0,0x0002                             #r2  = 2
00141ce0: 1262000b beq r19,r2,0x00141d10                        #If r19 (initial parameter r5) is NOT 2    /Else Branch
00141ce4: 00002021 addu r4,r0,r0                                    #r4  = 0
00141ce8: 340500ff ori r5,r0,0x00ff                                 #r5  = 0xff
00141cec: 0c04f58d jal 0x0013d634			                        #Store unit names and some event block data
00141cf0: 340600ff ori r6,r0,0x00ff                                 #r6  = 0xff
00141cf4: 34020001 ori r2,r0,0x0001                                 #r2  = 1
00141cf8: 3c018016 lui r1,0x8016                                    #
00141cfc: a4226048 sh r2,0x6048(r1)                                 #Store 1 to 0x80166048 (freezes control to go to next event?)
00141d00: 0c04fcff jal 0x0013f3fc			                        #0013f3fc - 0013f49c
00141d04: 00000000 nop                                              #
00141d08: 08050936 j 0x001424d8                                     #Jump to END
00141d0c: 34020002 ori r2,r0,0x0002                                 #r2  = 2
00141d10: 0c04ed64 jal 0x0013b590			                    #Get Script Variable
00141d14: 34040027 ori r4,r0,0x0027                             #r4  = 0x27 (Current Event Variable ID)
00141d18: 3c018017 lui r1,0x8017                                #
00141d1c: ac223c74 sw r2,0x3c74(r1)                             #Store 2 to 0x80173c74 (Next Event?)
00141d20: 34040027 ori r4,r0,0x0027                             #r4  = 0x27 (Current Event Variable ID)
00141d24: 0c04ed91 jal 0x0013b644			                    #Set Script Variable
00141d28: 02202821 addu r5,r17,r0                               #r5  = r17 (initial parameter r7 ???)
00141d2c: 08050936 j 0x001424d8                                 #Jump to END
00141d30: 34020002 ori r2,r0,0x0002                             #r2  = 2
00141d34: 126201e8 beq r19,r2,0x001424d8                    #If r19 (initial parameter r5) is NOT 2    /Else Branch to END
00141d38: 34020001 ori r2,r0,0x0001                         #r2  = 1
00141d3c: 0805078c j 0x00141e30                             #Jump
00141d40: 00000000 nop                                      #
00141d44: 0c04ed64 jal 0x0013b590			            #Get Script Variable
00141d48: 340401fd ori r4,r0,0x01fd                     #r4  = 0x01fd (Battle has not yet begun?)
00141d4c: 10400018 beq r2,r0,0x00141db0                 #If Battle has begun?    /Else Branch
00141d50: 34020002 ori r2,r0,0x0002                         #r2  = 2
00141d54: 12620014 beq r19,r2,0x00141da8                    #If r19 (initial parameter r5) is NOT 2    /Else Branch
00141d58: 00002021 addu r4,r0,r0                                #r4  = 0
00141d5c: 340500ff ori r5,r0,0x00ff                             #r5  = 0xff
00141d60: 0c04f58d jal 0x0013d634			                    #Store unit names and some event block data
00141d64: 340600ff ori r6,r0,0x00ff                             #r6  = 0xff
00141d68: 34020001 ori r2,r0,0x0001                             #r2  = 1
00141d6c: 3c018016 lui r1,0x8016                                #
00141d70: a4226048 sh r2,0x6048(r1)                             #Store 1 to 0x80166048 (freezes control to go to next event?)
00141d74: 0c04ed64 jal 0x0013b590			                    #Get Script Variable
00141d78: 340401fe ori r4,r0,0x01fe                             #r4  = 0x01fe (Next Random is World Debug Battle Style?)
00141d7c: 10400003 beq r2,r0,0x00141d8c                         #If Next Random is World Debug Battle Style?    /Else Branch
00141d80: 34040027 ori r4,r0,0x0027                             #r4  = 0x27 (Current Event Variable ID)
00141d84: 08050764 j 0x00141d90                                     #Jump
00141d88: 34050193 ori r5,r0,0x0193                                 #r5  = 0x0193 (DO NOT USE script?)
00141d8c: 34050191 ori r5,r0,0x0191                             #r5  = 0x0191 (Random Battle Initiate Event ID)
00141d90: 0c04ed91 jal 0x0013b644			                    #Set Script Variable
00141d94: 00000000 nop                                          #
00141d98: 0c04fcff jal 0x0013f3fc			                    #0013f3fc - 0013f49c
00141d9c: 00000000 nop                                          #
00141da0: 08050936 j 0x001424d8                                 #Jump to END
00141da4: 34020002 ori r2,r0,0x0002                             #r2  = 2
00141da8: 08050782 j 0x00141e08                             #Jump
00141dac: 34020191 ori r2,r0,0x0191                         #r2  = 0x0191 (Random Battle Initiate Event ID)

#Victorious
00141db0: 0c060cdd jal 0x00183374			            #Check Battle Outcome | Gameover by party incapacitated
00141db4: 00000000 nop                                  #
00141db8: 14400017 bne r2,r0,0x00141e18                 #If Battle outcome is Victory    /Else Branch
00141dbc: 34020002 ori r2,r0,0x0002                         #r2  = 2
00141dc0: 12620010 beq r19,r2,0x00141e04                    #If r19 (initial parameter r5) is NOT 2    /Else Branch
00141dc4: 00002021 addu r4,r0,r0                                #r4  = 0
00141dc8: 340500ff ori r5,r0,0x00ff                             #r5  = 0xff
00141dcc: 0c04f58d jal 0x0013d634			                    #Store unit names and some event block data
00141dd0: 340600ff ori r6,r0,0x00ff                             #r6  = 0xff
00141dd4: 34040027 ori r4,r0,0x0027                             #r4  = 0x27 (Current Event Variable ID)
00141dd8: 34100001 ori r16,r0,0x0001                            #r16 = 1
00141ddc: 3c018016 lui r1,0x8016                                #
00141de0: a4306048 sh r16,0x6048(r1)                            #Store 1 to 0x80166048 (freezes control to go to next event?)
00141de4: 0c04ed91 jal 0x0013b644			                    #Set Script Variable
00141de8: 34050192 ori r5,r0,0x0192                             #r5  = 0x0192 (Random Battle Victory Event ID)
00141dec: 3c018017 lui r1,0x8017                                #
00141df0: a4303cb0 sh r16,0x3cb0(r1)                            #Store 1 to 0x80173cb0 (??)
00141df4: 0c04fcff jal 0x0013f3fc			                    #0013f3fc - 0013f49c
00141df8: 00000000 nop                                          #
00141dfc: 08050936 j 0x001424d8                                 #Jump to END
00141e00: 34020002 ori r2,r0,0x0002                             #r2  = 2
00141e04: 34020192 ori r2,r0,0x0192                         #r2  = 0x0192 (Random Battle Victory Event ID)

00141e08: 3c018017 lui r1,0x8017                            #
00141e0c: ac223c74 sw r2,0x3c74(r1)                         #Store r2 to 0x80173c74 (Next Event?)
00141e10: 08050936 j 0x001424d8                             #Jump to END
00141e14: 34020002 ori r2,r0,0x0002                         #r2  = 2
00141e18: 126201af beq r19,r2,0x001424d8                #If r19 (initial parameter r5) is NOT 2    /Else Branch to END
00141e1c: 34020001 ori r2,r0,0x0001                     #r2  = 1
00141e20: 0805078c j 0x00141e30                             #Jump
00141e24: 00000000 nop                                      #
00141e28: 16800005 bne r20,r0,0x00141e40        #If Something from Stack? is 0    /Else Branch
00141e2c: 34140001 ori r20,r0,0x0001            #r20 = 0x01
00141e30: 0c050595 jal 0x00141654			        #00141654 - 0014169c (also the branch destination for section way above)
00141e34: 34040008 ori r4,r0,0x0008                 #r4  = 8
00141e38: 08050936 j 0x001424d8                     #Jump to END
00141e3c: 34020001 ori r2,r0,0x0001                 #r2  = 1
00141e40: 16540026 bne r18,r20,0x00141edc       #If r18 = 0x01    /Else Branch
00141e44: 34030002 ori r3,r0,0x0002             #r3  = 0x02
00141e48: 3c038015 lui r3,0x8015                    #
00141e4c: 8c63d314 lw r3,-0x2cec(r3)                #r3  = Value at 0x8014d314 (Autobattle Setting?)
00141e50: 00000000 nop                              #
00141e54: 10600004 beq r3,r0,0x00141e68             #If Aitobattle is on    /Else Branch
00141e58: 34110008 ori r17,r0,0x0008                    #r17 = 0x08
00141e5c: 34020019 ori r2,r0,0x0019                     #r2  = 0x19
00141e60: 14620006 bne r3,r2,0x00141e7c                 #If Autobattle setting = 0x19 (???)    /Else Branch
00141e64: 00000000 nop                                  #
00141e68: 34020002 ori r2,r0,0x0002                 #r2  = 2
00141e6c: 166200d1 bne r19,r2,0x001421b4            #If r19 (initial parameter r5) is 2    /Else Branch
00141e70: 34110007 ori r17,r0,0x0007                #r17 = 0x07
00141e74: 0805086d j 0x001421b4                             #Jump
00141e78: 34110031 ori r17,r0,0x0031                        #r17 = 0x31
00141e7c: 14720008 bne r3,r18,0x00141ea0                #If Autobattle setting = r18    /Else Branch
00141e80: 3402000c ori r2,r0,0x000c                     #r2  = 0x0c
00141e84: 34020001 ori r2,r0,0x0001                         #r2  = 1
00141e88: 3c018015 lui r1,0x8015                            #
00141e8c: a022d324 sb r2,-0x2cdc(r1)                        #Store 1 to 0x8014d324 (Ability is Selected?)
00141e90: 167200c8 bne r19,r18,0x001421b4                   #If r19 (initial parameter r5) = r18    /Else Branch
00141e94: 34110006 ori r17,r0,0x0006                        #r17 = 0x06
00141e98: 0805086d j 0x001421b4                                 #Jump
00141e9c: 34110029 ori r17,r0,0x0029                            #r17 = 0x29
00141ea0: 14620003 bne r3,r2,0x00141eb0                 #If Autobattle setting = Fight for your life    /Else Branch
00141ea4: 3402000e ori r2,r0,0x000e                     #r2  = 0x0e
00141ea8: 0805086d j 0x001421b4                             #Jump
00141eac: 34110014 ori r17,r0,0x0014                        #r17 = 0x14
00141eb0: 14620003 bne r3,r2,0x00141ec0                 #If Autobattle setting = Protect Allies    /Else Branch
00141eb4: 34020002 ori r2,r0,0x0002                     #r2  = 2
00141eb8: 0805086d j 0x001421b4                             #Jump
00141ebc: 34110015 ori r17,r0,0x0015                        #r17 = 0x15
00141ec0: 3c038015 lui r3,0x8015                        #
00141ec4: 8c63d30c lw r3,-0x2cf4(r3)                    #r3  = Value at 0x8014d30c (Used Skillset?)
00141ec8: 00000000 nop                                  #
00141ecc: 146200b9 bne r3,r2,0x001421b4                 #If Used Skillset = Defend?    /Else Branch
00141ed0: 00000000 nop                                  #
00141ed4: 0805086d j 0x001421b4                             #Jump
00141ed8: 3411001c ori r17,r0,0x001c                        #r17 = 0x1c
00141edc: 16430017 bne r18,r3,0x00141f3c        #If r18 = 0x02    /Else Branch
00141ee0: 34150003 ori r21,r0,0x0003            #r21 = 0x03
00141ee4: 0c04b747 jal 0x0012dd1c			        #0012dd1c - 0012dd2c
00141ee8: 00000000 nop                              #
00141eec: 1260016d beq r19,r0,0x001424a4            #If r19 (initial parameter r5) is NOT 0    /Else Branch
00141ef0: 00000000 nop                              #
00141ef4: 16740005 bne r19,r20,0x00141f0c               #If r19 (initial parameter r5) is 1    /Else Branch
00141ef8: 34020004 ori r2,r0,0x0004                     #r2  = 4
00141efc: 0c050595 jal 0x00141654			                #00141654 - 0014169c
00141f00: 00002021 addu r4,r0,r0                            #r4  = 0
00141f04: 08050932 j 0x001424c8                             #Jump
00141f08: 34020001 ori r2,r0,0x0001                         #r2  = 1
00141f0c: 16620005 bne r19,r2,0x00141f24                #If r19 (initial parameter r5) is 4    /Else Branch
00141f10: 00000000 nop                                  #
00141f14: 0c050595 jal 0x00141654			                #00141654 - 0014169c
00141f18: 34040030 ori r4,r0,0x0030                         #r4  = 0x30
00141f1c: 08050932 j 0x001424c8                             #Jump
00141f20: 34020001 ori r2,r0,0x0001                         #r2  = 1
00141f24: 0c04b756 jal 0x0012dd58			            #0012dd58 - 0012dd68
00141f28: 00000000 nop                                  #
00141f2c: 0c050595 jal 0x00141654			            #00141654 - 0014169c
00141f30: 2664000d addiu r4,r19,0x000d                  #r4  = r19 + 0x0d
00141f34: 08050932 j 0x001424c8                         #Jump
00141f38: 34020001 ori r2,r0,0x0001                     #r2  = 1
00141f3c: 1655000f bne r18,r21,0x00141f7c       #If r18 = 0x03    /Else Branch
00141f40: 34020004 ori r2,r0,0x0004             #r2  = 0x04
00141f44: 3c028015 lui r2,0x8015                    #
00141f48: 8c42d318 lw r2,-0x2ce8(r2)                #r2 = Value at 0x8014d318 (Function Setting 1?)
00141f4c: 00000000 nop                              #
00141f50: 14430006 bne r2,r3,0x00141f6c             #If Function Setting 1 = 4?    /Else Branch
00141f54: 00000000 nop                              #
00141f58: 3c028015 lui r2,0x8015                        #
00141f5c: 8c42d31c lw r2,-0x2ce4(r2)                    #r2 = Value at 0x8014d31c (Function Setting 2?)
00141f60: 00000000 nop                                  #
00141f64: 1054014f beq r2,r20,0x001424a4                #If Function Setting 2 is NOT 1    /Else Branch
00141f68: 00000000 nop                                  #
00141f6c: 0c050595 jal 0x00141654			        #00141654 - 0014169c
00141f70: 34040001 ori r4,r0,0x0001                 #r4  = 1
00141f74: 08050932 j 0x001424c8                     #Jump
00141f78: 34020001 ori r2,r0,0x0001                 #r2  = 1
00141f7c: 16420029 bne r18,r2,0x00142024        #If r18 = 0x04    /Else Branch
00141f80: 34020005 ori r2,r0,0x0005             #r2  = 0x05
00141f84: 12620022 beq r19,r2,0x00142010            #If r19 (initial parameter r5) is NOT 5    /Else Branch
00141f88: 3411002f ori r17,r0,0x002f                #r17 = 0x2f
00141f8c: 12740020 beq r19,r20,0x00142010               #If r19 (initial parameter r5) is NOT 1    /Else Branch
00141f90: 3411000b ori r17,r0,0x000b                    #r17 = 0x0b
00141f94: 12630003 beq r19,r3,0x00141fa4                    #If r19 (initial parameter r5) is NOT 2    /Else Branch
00141f98: 3402fffe ori r2,r0,0xfffe                         #r2  = -2
00141f9c: 1672000f bne r19,r18,0x00141fdc                       #If r19 (initial parameter r5) = 4    /Else Branch
00141fa0: 00000000 nop                                          #
00141fa4: 3c038015 lui r3,0x8015                            #
00141fa8: 8c63d310 lw r3,-0x2cf0(r3)                        #r3  = Value at 0x8014d310 (Used Item?)
00141fac: 00000000 nop                                      #
00141fb0: 10620006 beq r3,r2,0x00141fcc                     #If Used Item is valid?    /Else Branch
00141fb4: 3411002d ori r17,r0,0x002d                        #r17 = 0x2d
00141fb8: 3c028015 lui r2,0x8015                                #
00141fbc: 8c42d320 lw r2,-0x2ce0(r2)                            #r2  = Value at 0x8014d320 (Ability CT?)
00141fc0: 00000000 nop                                          #
00141fc4: 14400003 bne r2,r0,0x00141fd4                         #If Ability CT = 0?    /Else Branch
00141fc8: 00000000 nop                                          #
00141fcc: 08050805 j 0x00142014                             #Jump
00141fd0: 34020001 ori r2,r0,0x0001                         #r2  = 1
00141fd4: 08050804 j 0x00142010                                 #Jump
00141fd8: 3411000c ori r17,r0,0x000c                            #r17 = 0x0c
00141fdc: 3c038015 lui r3,0x8015                                #
00141fe0: 8c63d310 lw r3,-0x2cf0(r3)                            #r3  = Value at 0x8014d310 (Used Item?)
00141fe4: 00000000 nop                                          #
00141fe8: 14620006 bne r3,r2,0x00142004                         #If Used Item is valid?    /Else Branch
00141fec: 3411002e ori r17,r0,0x002e                            #r17 = 0x2e
00141ff0: 3c028015 lui r2,0x8015                                    #
00141ff4: 8c42d320 lw r2,-0x2ce0(r2)                                #r2  = Value at 0x8014d320 (Ability CT?)
00141ff8: 00000000 nop                                              #
00141ffc: 14400003 bne r2,r0,0x0014200c                             #If Ability CT = 0?    /Else Branch
00142000: 00000000 nop                                              #
00142004: 08050805 j 0x00142014                                 #Jump
00142008: 34020001 ori r2,r0,0x0001                             #r2  = 1
0014200c: 3411000d ori r17,r0,0x000d                                #r17 = 0x0d
00142010: 34020001 ori r2,r0,0x0001                 #r2  = 1
00142014: 3c018015 lui r1,0x8015                    #
00142018: a022d324 sb r2,-0x2cdc(r1)                #Store 1 to 0x8014d324 (Ability is Selected?)
0014201c: 0805086d j 0x001421b4                     #Jump
00142020: 00000000 nop                              #
00142024: 16420011 bne r18,r2,0x0014206c        #If r18 = 0x05    /Else Branch
00142028: 34020007 ori r2,r0,0x0007             #r2  = 0x07
0014202c: 96e20002 lhu r2,0x0002(r23)               #r2  = ??
00142030: 3c058014 lui r5,0x8014                    #
00142034: 24a5bdcc addiu r5,r5,0xbdcc               #r5  = 
00142038: 304201ff andi r2,r2,0x01ff                #r2  = ?? - 0x200 flag
0014203c: 3c018015 lui r1,0x8015                    #
00142040: ac22d308 sw r2,-0x2cf8(r1)                #Store r2 to 0x8014d308 (Used Ability for Spell Quotes?)
00142044: 0c053228 jal 0x0014c8a0			        #Initialize Thread
00142048: 34040004 ori r4,r0,0x0004                 #r4  = 4
0014204c: 34040004 ori r4,r0,0x0004                 #r4  = 4
00142050: 02c02821 addu r5,r22,r0                   #r5  = Unit ID
00142054: 3c068015 lui r6,0x8015                    #
00142058: 8cc6d308 lw r6,-0x2cf8(r6)                #r6  = Used Ability for Spell Quotes?
0014205c: 0c05328e jal 0x0014ca38			        #Store Thread Function Parameters
00142060: 00003821 addu r7,r0,r0                    #r7  = 0
00142064: 08050932 j 0x001424c8                     #Jump
00142068: 34020001 ori r2,r0,0x0001                 #r2  = 1
0014206c: 16420037 bne r18,r2,0x0014214c        #If r18 = 0x07    /Else Branch
00142070: 34020006 ori r2,r0,0x0006             #r2  = 0x06
00142074: 0c04ebb7 jal 0x0013aedc			        #0013aedc - 0013aee8
00142078: 3404003c ori r4,r0,0x003c                 #r4  = 0x3c
0014207c: 9202016f lbu r2,0x016f(r16)               #r2  = Skillset of Last Attack Used
00142080: 3c018006 lui r1,0x8006                    #
00142084: 00220821 addu r1,r1,r2                    #r1  = Skillset Data
00142088: 90225cb4 lbu r2,0x5cb4(r1)			    #r2  = Skillset's Action Menu
0014208c: 00000000 nop                              #
00142090: 14550014 bne r2,r21,0x001420e4            #If Skillset's Action Menu = 3 (Math)    /Else Branch
00142094: 34020006 ori r2,r0,0x0006                 #r2  = 6
00142098: 86020174 lh r2,0x0174(r16)                    #r2  = Calculator Multiplier Ability ID
0014209c: 00000000 nop                                  #
001420a0: 24427000 addiu r2,r2,0x7000                   #r2  = Calculator Multiplier Ability ID + 0x7000
001420a4: 3c018016 lui r1,0x8016                        #
001420a8: ac225ef8 sw r2,0x5ef8(r1)                     #Store r2 to 0x80165ef8
001420ac: 86020172 lh r2,0x0172(r16)                    #r2  = Calculator Type Ability ID
001420b0: 00000000 nop                                  #
001420b4: 24427000 addiu r2,r2,0x7000                   #r2  = Calculator Type Ability ID + 0x7000
001420b8: 3c018016 lui r1,0x8016                        #
001420bc: ac225ef4 sw r2,0x5ef4(r1)                     #Store r2 to 0x80165ef4
001420c0: 86020170 lh r2,0x0170(r16)                    #r2  = Last Attack Used ID
001420c4: 00000000 nop                                  #
001420c8: 24427000 addiu r2,r2,0x7000                   #r2  = Last Attack Used ID + 0x7000
001420cc: 3c018016 lui r1,0x8016                        #
001420d0: ac225efc sw r2,0x5efc(r1)                     #Store r2 to 0x80165efc
001420d4: 0c050595 jal 0x00141654			            #00141654 - 0014169c
001420d8: 3404002c ori r4,r0,0x002c                     #r4  = 0x2c
001420dc: 08050932 j 0x001424c8                         #Jump
001420e0: 34020001 ori r2,r0,0x0001                     #r2  = 1
001420e4: 92e30001 lbu r3,0x0001(r23)               #r3  = ?
001420e8: 00000000 nop                              #
001420ec: 10620004 beq r3,r2,0x00142100             #If ? = 6    /Else Branch
001420f0: 00000000 nop                              #
001420f4: 34020014 ori r2,r0,0x0014                     #r2  = 0x14
001420f8: 14620004 bne r3,r2,0x0014210c                 #If ? = 0x14    /Else Branch
001420fc: 00000000 nop                                  #
00142100: 92e20008 lbu r2,0x0008(r23)               #r2  = ??
00142104: 0805084d j 0x00142134                     #Jump
00142108: 24423800 addiu r2,r2,0x3800               #r2  = ?? + 0x3800
0014210c: 96e20002 lhu r2,0x0002(r23)                   #r2  = ???
00142110: 00000000 nop                                  #
00142114: 305101ff andi r17,r2,0x01ff                   #r17 = ??? without 0x200 flag
00142118: 2622ffc4 addiu r2,r17,0xffc4                  #r2  = (??? without 0x200 flag) - 0x3c
0014211c: 2c42001a sltiu r2,r2,0x001a                   #Set if r2 is less than 0x1a
00142120: 10400003 beq r2,r0,0x00142130                 #
00142124: 3402b7c4 ori r2,r0,0xb7c4                     #r2  = 0xb7c4
00142128: 0805084d j 0x00142134                             #Jump
0014212c: 02221021 addu r2,r17,r2                           #r2  = (??? without 0x200 flag) + 0xb7c4
00142130: 26227000 addiu r2,r17,0x7000                  #r2  = (??? without 0x200 flag) + 0x7000
00142134: 3c018016 lui r1,0x8016                    #
00142138: ac225ef4 sw r2,0x5ef4(r1)                 #Store r2 to 0x80165ef4
0014213c: 0c050595 jal 0x00141654			        #00141654 - 0014169c
00142140: 3404000a ori r4,r0,0x000a                 #r4  = 0x0a
00142144: 08050932 j 0x001424c8                     #Jump
00142148: 34020001 ori r2,r0,0x0001                 #r2  = 1
0014214c: 124200d5 beq r18,r2,0x001424a4        #If r18 = 0x06    /Else Branch
00142150: 34020009 ori r2,r0,0x0009             #r2  = 0x09
00142154: 1642001b bne r18,r2,0x001421c4            #If r18 = 0x09    /Else Branch
00142158: 00000000 nop                              #
0014215c: 16740003 bne r19,r20,0x0014216c
00142160: 34110008 ori r17,r0,0x0008
00142164: 0805086d j 0x001421b4                 #Jump
00142168: 34110016 ori r17,r0,0x0016
0014216c: 16630003 bne r19,r3,0x0014217c
00142170: 00000000 nop
00142174: 0805086d j 0x001421b4                 #Jump
00142178: 34110017 ori r17,r0,0x0017
0014217c: 16750003 bne r19,r21,0x0014218c
00142180: 3402000c ori r2,r0,0x000c
00142184: 0805086d j 0x001421b4                 #Jump
00142188: 34110020 ori r17,r0,0x0020
0014218c: 3c038015 lui r3,0x8015
00142190: 8c63d314 lw r3,-0x2cec(r3)
00142194: 00000000 nop
00142198: 14620003 bne r3,r2,0x001421a8
0014219c: 3402000e ori r2,r0,0x000e
001421a0: 0805086d j 0x001421b4                 #Jump
001421a4: 3411001a ori r17,r0,0x001a
001421a8: 14620002 bne r3,r2,0x001421b4
001421ac: 00000000 nop
001421b0: 3411001b ori r17,r0,0x001b
001421b4: 0c050595 jal 0x00141654			    #00141654 - 0014169c
001421b8: 02202021 addu r4,r17,r0
001421bc: 08050932 j 0x001424c8                 #Jump
001421c0: 34020001 ori r2,r0,0x0001             #r2  = 1
001421c4: 3402000a ori r2,r0,0x000a
001421c8: 1642000f bne r18,r2,0x00142208        #If r18 = 0x0a    /Else Branch
001421cc: 3402000b ori r2,r0,0x000b             #r2  = 0x0b
001421d0: 3c028004 lui r2,0x8004
001421d4: 8c4273ac lw r2,0x73ac(r2)
001421d8: 3c030018 lui r3,0x0018
001421dc: 00431024 and r2,r2,r3
001421e0: 144000b0 bne r2,r0,0x001424a4
001421e4: 322200ff andi r2,r17,0x00ff
001421e8: 3c018017 lui r1,0x8017
001421ec: a4339506 sh r19,-0x6afa(r1)
001421f0: 3c018016 lui r1,0x8016
001421f4: ac225ef4 sw r2,0x5ef4(r1)
001421f8: 0c050595 jal 0x00141654			        #00141654 - 0014169c
001421fc: 3404001d ori r4,r0,0x001d
00142200: 08050932 j 0x001424c8                     #Jump
00142204: 34020001 ori r2,r0,0x0001                 #r2  = 1
00142208: 16420008 bne r18,r2,0x0014222c        #If r18 = 0x0b    /Else Branch
0014220c: 3402000c ori r2,r0,0x000c             #r2  = 0x0c
00142210: 26627000 addiu r2,r19,0x7000
00142214: 3c018016 lui r1,0x8016
00142218: ac225ef4 sw r2,0x5ef4(r1)
0014221c: 0c050595 jal 0x00141654			        #00141654 - 0014169c
00142220: 3404001e ori r4,r0,0x001e
00142224: 08050932 j 0x001424c8                     #Jump
00142228: 34020001 ori r2,r0,0x0001                 #r2  = 1
0014222c: 16420005 bne r18,r2,0x00142244        #If r18 = 0x0c    /Else Branch
00142230: 3402000d ori r2,r0,0x000d             #r2  = 0x0d
00142234: 0c050595 jal 0x00141654			        #00141654 - 0014169c
00142238: 3404001f ori r4,r0,0x001f
0014223c: 08050932 j 0x001424c8                     #Jump
00142240: 34020001 ori r2,r0,0x0001                 #r2  = 1
00142244: 16420005 bne r18,r2,0x0014225c        #If r18 = 0x0d    /Else Branch
00142248: 3402000e ori r2,r0,0x000e             #r2  = 0x0e
0014224c: 0c050595 jal 0x00141654			        #00141654 - 0014169c
00142250: 34040021 ori r4,r0,0x0021
00142254: 08050932 j 0x001424c8                     #Jump
00142258: 34020001 ori r2,r0,0x0001                 #r2  = 1
0014225c: 16420005 bne r18,r2,0x00142274        #If r18 = 0x0e    /Else Branch
00142260: 3402000f ori r2,r0,0x000f             #r2  = 0x0f
00142264: 0c050595 jal 0x00141654			        #00141654 - 0014169c
00142268: 26640022 addiu r4,r19,0x0022
0014226c: 08050932 j 0x001424c8                     #Jump
00142270: 34020001 ori r2,r0,0x0001                 #r2  = 1

Recieve item

00142274: 16420030 bne r18,r2,0x00142338        #If r18 = 0x0f    /Else Branch
00142278: 34020010 ori r2,r0,0x0010             #r2  = 0x10
0014227c: 326400ff andi r4,r19,0x00ff               #r4  = r19 without 0x100 flag
00142280: 0c0178a2 jal 0x0005e288			        #Get Total Equipment Quantity (Equip Change/Formation Screen?)
00142284: 34050001 ori r5,r0,0x0001                 #r5  = 1
00142288: 34030063 ori r3,r0,0x0063                 #r3  = 0x63 (99)
0014228c: 1443001a bne r2,r3,0x001422f8             #If Item quantity = 99    /Else Branch
00142290: 00000000 nop                              #
00142294: 0c016a21 jal 0x0005a884			            #Get Item Data Pointer
00142298: 02602021 addu r4,r19,r0
0014229c: 3c018016 lui r1,0x8016
001422a0: ac335ef4 sw r19,0x5ef4(r1)
001422a4: 3c018016 lui r1,0x8016
001422a8: ac335ef8 sw r19,0x5ef8(r1)
001422ac: 0c016a21 jal 0x0005a884			            #Get Item Data Pointer
001422b0: 02602021 addu r4,r19,r0
001422b4: 00408021 addu r16,r2,r0                       #r16 = Item Data Pointer
001422b8: 96020008 lhu r2,0x0008(r16)
001422bc: 00000000 nop
001422c0: 00021082 srl r2,r2,0x02
001422c4: 3c018016 lui r1,0x8016
001422c8: ac225efc sw r2,0x5efc(r1)
001422cc: 0c04ed64 jal 0x0013b590			            #Get Script Variable
001422d0: 3404002c ori r4,r0,0x002c                     #r4  = 0x2c (War Funds Variable ID)
001422d4: 96050008 lhu r5,0x0008(r16)                   #r5  = Price of Item
001422d8: 3404002c ori r4,r0,0x002c                     #r4  = 0x2c (War Funds Variable ID)
001422dc: 00052882 srl r5,r5,0x02                       #r5  = Price of Item / 4
001422e0: 0c04ed91 jal 0x0013b644			            #Set Script Variable
001422e4: 00a22821 addu r5,r5,r2                        #r5  = War Funds + (Price of Item / 4)
001422e8: 0c050595 jal 0x00141654			            #00141654 - 0014169c
001422ec: 34040026 ori r4,r0,0x0026
001422f0: 08050932 j 0x001424c8                         #Jump
001422f4: 34020001 ori r2,r0,0x0001
001422f8: 0c016a21 jal 0x0005a884			        #Get Item Data Pointer
001422fc: 02602021 addu r4,r19,r0
00142300: 3c018016 lui r1,0x8016
00142304: ac335ef4 sw r19,0x5ef4(r1)
00142308: 3c018006 lui r1,0x8006
0014230c: 00330821 addu r1,r1,r19
00142310: 902296e0 lbu r2,-0x6920(r1)               #r2  = Quantity of Item owned
00142314: 00000000 nop
00142318: 24420001 addiu r2,r2,0x0001               #r2  = Quantity of Item owned + 1
0014231c: 3c018006 lui r1,0x8006
00142320: 00330821 addu r1,r1,r19
00142324: a02296e0 sb r2,-0x6920(r1)                #Store new Quantity of Item owned
00142328: 0c050595 jal 0x00141654			        #00141654 - 0014169c
0014232c: 34040027 ori r4,r0,0x0027                 #r4  = 0x27
00142330: 08050932 j 0x001424c8                     #Jump
00142334: 34020001 ori r2,r0,0x0001                 #r2  = 1
00142338: 16420005 bne r18,r2,0x00142350        #If r18 = 0x10    /Else Branch
0014233c: 34020011 ori r2,r0,0x0011             #r2  = 0x11
00142340: 0c050595 jal 0x00141654			        #00141654 - 0014169c
00142344: 34040028 ori r4,r0,0x0028                 #r4  = 0x28
00142348: 08050932 j 0x001424c8                     #Jump
0014234c: 34020001 ori r2,r0,0x0001                 #r2  = 1
00142350: 16420058 bne r18,r2,0x001424b4        #If r18 = 0x11    /Else Branch
00142354: 34040007 ori r4,r0,0x0007             #r2  = 0x07
00142358: 3c058017 lui r5,0x8017
0014235c: 24a596a8 addiu r5,r5,0x96a8           #r5  = 0x801696a8
00142360: 2662ffd9 addiu r2,r19,0xffd9          #r2  = r19 - 0x27
00142364: 2c420007 sltiu r2,r2,0x0007           #Compare to 0x07
00142368: 10400022 beq r2,r0,0x001423f4         #If ?    /Else Branch
0014236c: 02201821 addu r3,r17,r0               #
00142370: 2662506b addiu r2,r19,0x506b
00142374: 3c018016 lui r1,0x8016
00142378: ac225ef8 sw r2,0x5ef8(r1)
0014237c: 3402002d ori r2,r0,0x002d
00142380: 3c018016 lui r1,0x8016
00142384: ac365ef4 sw r22,0x5ef4(r1)
00142388: 16620004 bne r19,r2,0x0014239c
0014238c: 32220080 andi r2,r17,0x0080
00142390: 10400002 beq r2,r0,0x0014239c
00142394: 34030001 ori r3,r0,0x0001
00142398: 34030081 ori r3,r0,0x0081
0014239c: 3c048016 lui r4,0x8016
001423a0: 24845efc addiu r4,r4,0x5efc
001423a4: 30620080 andi r2,r3,0x0080
001423a8: 10400005 beq r2,r0,0x001423c0
001423ac: ac830000 sw r3,0x0000(r4)
001423b0: 3062007f andi r2,r3,0x007f
001423b4: ac820000 sw r2,0x0000(r4)
001423b8: 080508f1 j 0x001423c4
001423bc: 3402508c ori r2,r0,0x508c
001423c0: 3402508d ori r2,r0,0x508d
001423c4: a4a20002 sh r2,0x0002(r5)
001423c8: 34020027 ori r2,r0,0x0027
001423cc: 16620031 bne r19,r2,0x00142494
001423d0: 340200ff ori r2,r0,0x00ff
001423d4: 14620003 bne r3,r2,0x001423e4
001423d8: 3402007f ori r2,r0,0x007f
001423dc: 080508fb j 0x001423ec
001423e0: 3402509a ori r2,r0,0x509a
001423e4: 1462002b bne r3,r2,0x00142494
001423e8: 34025099 ori r2,r0,0x5099
001423ec: 08050925 j 0x00142494
001423f0: a4a20002 sh r2,0x0002(r5)
001423f4: 3402002e ori r2,r0,0x002e
001423f8: 16620008 bne r19,r2,0x0014241c
001423fc: 34040032 ori r4,r0,0x0032
00142400: 06210002 bgez r17,0x0014240c
00142404: 02201021 addu r2,r17,r0
00142408: 00021023 subu r2,r0,r2
0014240c: 3c018016 lui r1,0x8016
00142410: ac225ef4 sw r2,0x5ef4(r1)
00142414: 0805090f j 0x0014243c
00142418: 3402508f ori r2,r0,0x508f
0014241c: 3402002f ori r2,r0,0x002f
00142420: 1662000c bne r19,r2,0x00142454
00142424: 2662ffe4 addiu r2,r19,0xffe4
00142428: 34040032 ori r4,r0,0x0032
0014242c: 3222007f andi r2,r17,0x007f
00142430: 3c018016 lui r1,0x8016
00142434: ac225ef4 sw r2,0x5ef4(r1)
00142438: 3402508e ori r2,r0,0x508e
0014243c: 3c018017 lui r1,0x8017
00142440: a42296aa sh r2,-0x6956(r1)
00142444: 0c050595 jal 0x00141654			    #00141654 - 0014169c
00142448: 00000000 nop
0014244c: 08050932 j 0x001424c8
00142450: 34020001 ori r2,r0,0x0001
00142454: 2c420002 sltiu r2,r2,0x0002
00142458: 10400012 beq r2,r0,0x001424a4
0014245c: 32228000 andi r2,r17,0x8000
00142460: 10400006 beq r2,r0,0x0014247c
00142464: 322200ff andi r2,r17,0x00ff
00142468: 24423800 addiu r2,r2,0x3800
0014246c: 3c018016 lui r1,0x8016
00142470: ac225ef4 sw r2,0x5ef4(r1)
00142474: 08050923 j 0x0014248c
00142478: 3402509b ori r2,r0,0x509b
0014247c: 26223800 addiu r2,r17,0x3800
00142480: 3c018016 lui r1,0x8016
00142484: ac225ef4 sw r2,0x5ef4(r1)
00142488: 26625074 addiu r2,r19,0x5074
0014248c: 3c018017 lui r1,0x8017
00142490: a42296aa sh r2,-0x6956(r1)
00142494: 0c050595 jal 0x00141654			    #00141654 - 0014169c
00142498: 34040032 ori r4,r0,0x0032
0014249c: 08050932 j 0x001424c8
001424a0: 34020001 ori r2,r0,0x0001
001424a4: 0c050595 jal 0x00141654			    #00141654 - 0014169c
001424a8: 34040008 ori r4,r0,0x0008
001424ac: 08050932 j 0x001424c8
001424b0: 34020001 ori r2,r0,0x0001             #r2 = 1
001424b4: 0c01127e jal 0x000449f8			    #000449f8 - 000449fc Null Routine
001424b8: 34050005 ori r5,r0,0x0005
001424bc: 0c050595 jal 0x00141654			    #00141654 - 0014169c
001424c0: 34040008 ori r4,r0,0x0008
001424c4: 00001021 addu r2,r0,r0                #r2 = 0

001424c8: 3c018015 lui r1,0x8015
001424cc: ac32d318 sw r18,-0x2ce8(r1)
001424d0: 3c018015 lui r1,0x8015
001424d4: ac33d31c sw r19,-0x2ce4(r1)
END:
001424d8: 8fbf0030 lw r31,0x0030(r29)
001424dc: 8fb7002c lw r23,0x002c(r29)
001424e0: 8fb60028 lw r22,0x0028(r29)
001424e4: 8fb50024 lw r21,0x0024(r29)
001424e8: 8fb40020 lw r20,0x0020(r29)
001424ec: 8fb3001c lw r19,0x001c(r29)
001424f0: 8fb20018 lw r18,0x0018(r29)
001424f4: 8fb10014 lw r17,0x0014(r29)
001424f8: 8fb00010 lw r16,0x0010(r29)
001424fc: 27bd0038 addiu r29,r29,0x0038
00142500: 03e00008 jr r31
00142504: 00000000 nop