Difference between revisions of "ATTACK.OUT Deployment Screen"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(This seems to be the code for handling the deployment screen, as I've found two checks of Var 0x1FF here. One that auto-deploys Ramza, and one that prevents his removal.)
 
(More comments)
 
(11 intermediate revisions by 2 users not shown)
Line 22: Line 22:
 
  001c3f98: 3c018017 lui r1,0x8017
 
  001c3f98: 3c018017 lui r1,0x8017
 
  001c3f9c: ac223cb8 sw r2,0x3cb8(r1)
 
  001c3f9c: ac223cb8 sw r2,0x3cb8(r1)
  001c3fa0: 0c009271 jal 0x000249c4
+
  001c3fa0: 0c009271 jal 0x000249c4                   # [[SYS MoveImage]]
 
  001c3fa4: 34120004 ori r18,r0,0x0004
 
  001c3fa4: 34120004 ori r18,r0,0x0004
 
  001c3fa8: 3c04801d lui r4,0x801d
 
  001c3fa8: 3c04801d lui r4,0x801d
Line 28: Line 28:
 
  001c3fb0: 3c05801d lui r5,0x801d
 
  001c3fb0: 3c05801d lui r5,0x801d
 
  001c3fb4: 24a5cfd4 addiu r5,r5,0xcfd4
 
  001c3fb4: 24a5cfd4 addiu r5,r5,0xcfd4
  001c3fb8: 0c00923f jal 0x000248fc
+
  001c3fb8: 0c00923f jal 0x000248fc                   # [[SYS LoadImage]]
 
  001c3fbc: 00000000 nop
 
  001c3fbc: 00000000 nop
  001c3fc0: 0c0532a0 jal 0x0014ca80
+
  001c3fc0: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c3fc4: 00000000 nop
 
  001c3fc4: 00000000 nop
  001c3fc8: 0c04ed64 jal 0x0013b590
+
  001c3fc8: 0c04ed64 jal 0x0013b590                   # [[Get Script Variable]]:
  001c3fcc: 34040035 ori r4,r0,0x0035
+
  001c3fcc: 34040035 ori r4,r0,0x0035                 # Var 0x35: Squad #1 ID
 
  001c3fd0: 00021840 sll r3,r2,0x01
 
  001c3fd0: 00021840 sll r3,r2,0x01
  001c3fd4: 00621821 addu r3,r3,r2
+
  001c3fd4: 00621821 addu r3,r3,r2                   # r3 = Squad ID * 3
 
  001c3fd8: 3c01801e lui r1,0x801e
 
  001c3fd8: 3c01801e lui r1,0x801e
  001c3fdc: ac22cc78 sw r2,-0x3388(r1)
+
  001c3fdc: ac22cc78 sw r2,-0x3388(r1)               # Save Squad ID to 0x801DCC78
 
  001c3fe0: 3c02801d lui r2,0x801d
 
  001c3fe0: 3c02801d lui r2,0x801d
  001c3fe4: 8c42d270 lw r2,-0x2d90(r2)
+
  001c3fe4: 8c42d270 lw r2,-0x2d90(r2)               # r2 = Squad Data pointer
  001c3fe8: 00031880 sll r3,r3,0x02
+
  001c3fe8: 00031880 sll r3,r3,0x02                   # r3 = Squad ID * 12
  001c3fec: 00621821 addu r3,r3,r2
+
  001c3fec: 00621821 addu r3,r3,r2                   # r3 = Squad ID * 12 + Squad Data pointer - pointer to the data for the current Squad
 
  001c3ff0: 3c01801d lui r1,0x801d
 
  001c3ff0: 3c01801d lui r1,0x801d
  001c3ff4: ac23d274 sw r3,-0x2d8c(r1)
+
  001c3ff4: ac23d274 sw r3,-0x2d8c(r1)               # Save Current Squad Data Pointer to 0x801CD274
  001c3ff8: 0c04f680 jal 0x0013da00
+
  001c3ff8: 0c04f680 jal 0x0013da00                   # [[Set Event Speed]]
  001c3ffc: 34040001 ori r4,r0,0x0001
+
  001c3ffc: 34040001 ori r4,r0,0x0001                 # r4 = 0x01 (normal speed?)
 
  001c4000: 340200ff ori r2,r0,0x00ff
 
  001c4000: 340200ff ori r2,r0,0x00ff
 
  001c4004: 3c018016 lui r1,0x8016
 
  001c4004: 3c018016 lui r1,0x8016
 
  001c4008: ac22603c sw r2,0x603c(r1)
 
  001c4008: ac22603c sw r2,0x603c(r1)
  001c400c: 0c0532a0 jal 0x0014ca80
+
  001c400c: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c4010: 00000000 nop
 
  001c4010: 00000000 nop
 
  001c4014: 340400ff ori r4,r0,0x00ff
 
  001c4014: 340400ff ori r4,r0,0x00ff
Line 63: Line 63:
 
  001c403c: ac20d060 sw r0,-0x2fa0(r1)
 
  001c403c: ac20d060 sw r0,-0x2fa0(r1)
 
  001c4040: 3c01801d lui r1,0x801d
 
  001c4040: 3c01801d lui r1,0x801d
  001c4044: ac20d064 sw r0,-0x2f9c(r1)
+
  001c4044: ac20d064 sw r0,-0x2f9c(r1)         # Clear the data for the current unit whose stats are shown?
 
  001c4048: 3c01801d lui r1,0x801d
 
  001c4048: 3c01801d lui r1,0x801d
 
  001c404c: ac20d070 sw r0,-0x2f90(r1)
 
  001c404c: ac20d070 sw r0,-0x2f90(r1)
Line 72: Line 72:
 
  001c4060: a0640000 sb r4,0x0000(r3)
 
  001c4060: a0640000 sb r4,0x0000(r3)
 
  001c4064: 2652ffff addiu r18,r18,0xffff
 
  001c4064: 2652ffff addiu r18,r18,0xffff
  001c4068: 0641fffd bgez r18,0x 001c4060
+
  001c4068: 0641fffd bgez r18,0x001c4060
 
  001c406c: 2463ffff addiu r3,r3,0xffff
 
  001c406c: 2463ffff addiu r3,r3,0xffff
 
  001c4070: 3c04801e lui r4,0x801e
 
  001c4070: 3c04801e lui r4,0x801e
  001c4074: 2484cadc addiu r4,r4,0xcadc
+
  001c4074: 2484cadc addiu r4,r4,0xcadc       # r4 = 0x801DCADC
 
  001c4078: 3c05801d lui r5,0x801d
 
  001c4078: 3c05801d lui r5,0x801d
  001c407c: 24a59fac addiu r5,r5,0x9fac
+
  001c407c: 24a59fac addiu r5,r5,0x9fac       # r5 = 0x801C9FAC
  001c4080: 0c052fd5 jal 0x0014bf54
+
  001c4080: 0c052fd5 jal 0x0014bf54           # [[Copy Bytes (0x14bf54)]]
  001c4084: 34060040 ori r6,r0,0x0040
+
  001c4084: 34060040 ori r6,r0,0x0040         # r6 = 0x40 bytes to copy
  001c4088: 0c070fb3 jal 0x 001c3ecc
+
  001c4088: 0c070fb3 jal 0x001c3ecc            # [[ATTACK.OUT 001c3ecc - 001c3f40]]
 
  001c408c: 00000000 nop
 
  001c408c: 00000000 nop
 
  001c4090: 3c04801e lui r4,0x801e
 
  001c4090: 3c04801e lui r4,0x801e
  001c4094: 2484b650 addiu r4,r4,0xb650
+
  001c4094: 2484b650 addiu r4,r4,0xb650       # r4 = 0x801DB650
  001c4098: 0c071ca2 jal 0x001c7288
+
  001c4098: 0c071ca2 jal 0x001c7288           # [[Prepare Valid Deployment Tiles]]
 
  001c409c: 00000000 nop
 
  001c409c: 00000000 nop
  001c40a0: 0c04ed64 jal 0x0013b590
+
  001c40a0: 0c04ed64 jal 0x0013b590           # [[Get Script Variable]]
  001c40a4: 340401ff ori r4,r0,0x01ff
+
  001c40a4: 340401ff ori r4,r0,0x01ff         # Var 0x1FF: Ramza Mandatory
  001c40a8: 10400019 beq r2,r0,0x 001c4110
+
  001c40a8: 10400019 beq r2,r0,0x001c4110    # Branch if Ramza is not mandatory
  001c40ac: 00000000 nop
+
  001c40ac: 00000000 nop                       # | Ramza mandatory: auto-deploy him
  001c40b0: 00008821 addu r17,r0,r0
+
  001c40b0: 00008821 addu r17,r0,r0           # | r17 = Current Row. Set to 0.
 
  001c40b4: 3c06801e lui r6,0x801e
 
  001c40b4: 3c06801e lui r6,0x801e
  001c40b8: 24c6cbe4 addiu r6,r6,0xcbe4
+
  001c40b8: 24c6cbe4 addiu r6,r6,0xcbe4       # | r6 = 0x801dcbe4. Starting address of deployed units on tiles by roster ID. Tiles without a unit have a value of 0xFF. Tiles with a unit have their Roster Slot ID.
 
  001c40bc: 3c05801e lui r5,0x801e
 
  001c40bc: 3c05801e lui r5,0x801e
  001c40c0: 24a5cbc8 addiu r5,r5,0xcbc8
+
  001c40c0: 24a5cbc8 addiu r5,r5,0xcbc8       # | r5 = 0x801dcbc8. Starting address of valid deployment tiles. Valid tiles have a value of 0x01, invalid 0x00.
  001c40c4: 00008021 addu r16,r0,r0
+
  001c40c4: 00008021 addu r16,r0,r0           # | r16 = Current Tile on Row. Set to 0.
  001c40c8: 00c02021 addu r4,r6,r0
+
  001c40c8: 00c02021 addu r4,r6,r0             # | r4 = Modified Deployed Unit Data
  001c40cc: 00a01821 addu r3,r5,r0
+
  001c40cc: 00a01821 addu r3,r5,r0             # | r3 = Modified Valid Deployment Tile Data
  001c40d0: 90620000 lbu r2,0x0000(r3)
+
  001c40d0: 90620000 lbu r2,0x0000(r3)         # | r2 = Current Deployment Tile
 
  001c40d4: 00000000 nop
 
  001c40d4: 00000000 nop
  001c40d8: 10400003 beq r2,r0,0x 001c40e8
+
  001c40d8: 10400003 beq r2,r0,0x001c40e8    # | Branch if current tile is not valid.
 
  001c40dc: 00000000 nop
 
  001c40dc: 00000000 nop
  001c40e0: 08071044 j 0x 001c4110
+
  001c40e0: 08071044 j 0x001c4110              # | | Valid tile found. Exit the loop.
  001c40e4: a0800000 sb r0,0x0000(r4)
+
  001c40e4: a0800000 sb r0,0x0000(r4)         # | | Save a value of 0 (Ramza's Roster ID) to the first valid tile. This will auto-deploy Ramza.
  001c40e8: 24840001 addiu r4,r4,0x0001
+
  001c40e8: 24840001 addiu r4,r4,0x0001       # | r4 = Deployed Unit Data ++
  001c40ec: 26100001 addiu r16,r16,0x0001
+
  001c40ec: 26100001 addiu r16,r16,0x0001     # | r16 = Current Tile on Row ++
  001c40f0: 2a020005 slti r2,r16,0x0005
+
  001c40f0: 2a020005 slti r2,r16,0x0005       # | r2 = 0x01 if this isn't the final tile on the row.
  001c40f4: 1440fff6 bne r2,r0,0x 001c40d0
+
  001c40f4: 1440fff6 bne r2,r0,0x001c40d0    # | Branch back if this row has more tiles left to check.
  001c40f8: 24630001 addiu r3,r3,0x0001
+
  001c40f8: 24630001 addiu r3,r3,0x0001       # | r3 = Valid Deployment Tile Data ++
  001c40fc: 24c60005 addiu r6,r6,0x0005
+
  001c40fc: 24c60005 addiu r6,r6,0x0005       # | r6 + 5: Next row for Starting Deployed Unit Data
  001c4100: 26310001 addiu r17,r17,0x0001
+
  001c4100: 26310001 addiu r17,r17,0x0001     # | r17 = Current Row ++
  001c4104: 2a220005 slti r2,r17,0x0005
+
  001c4104: 2a220005 slti r2,r17,0x0005       # | r2 = 0x01 if Current Row still below 0x05
  001c4108: 1440ffee bne r2,r0,0x 001c40c4
+
  001c4108: 1440ffee bne r2,r0,0x001c40c4    # | Branch back if there are more rows left to check.
  001c410c: 24a50005 addiu r5,r5,0x0005
+
  001c410c: 24a50005 addiu r5,r5,0x0005       # | r5 + 5: Next row for Starting Valid Deployment Tile data.
 
  001c4110: 3c05801c lui r5,0x801c
 
  001c4110: 3c05801c lui r5,0x801c
 
  001c4114: 24a567cc addiu r5,r5,0x67cc
 
  001c4114: 24a567cc addiu r5,r5,0x67cc
  001c4118: 0c053228 jal 0x0014c8a0
+
  001c4118: 0c053228 jal 0x0014c8a0             # [[Initialize Thread]]
 
  001c411c: 3404000f ori r4,r0,0x000f
 
  001c411c: 3404000f ori r4,r0,0x000f
 
  001c4120: 3404000f ori r4,r0,0x000f
 
  001c4120: 3404000f ori r4,r0,0x000f
 
  001c4124: 00002821 addu r5,r0,r0
 
  001c4124: 00002821 addu r5,r0,r0
 
  001c4128: 00003021 addu r6,r0,r0
 
  001c4128: 00003021 addu r6,r0,r0
  001c412c: 0c05328e jal 0x0014ca38
+
  001c412c: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c4130: 00003821 addu r7,r0,r0
 
  001c4130: 00003821 addu r7,r0,r0
  001c4134: 0c0716d4 jal 0x 001c5b50
+
  001c4134: 0c0716d4 jal 0x001c5b50              # [[Choose Unit for Deployment Screen Stats Display]]
 
  001c4138: 34160001 ori r22,r0,0x0001
 
  001c4138: 34160001 ori r22,r0,0x0001
 
  001c413c: 3c05801c lui r5,0x801c
 
  001c413c: 3c05801c lui r5,0x801c
 
  001c4140: 24a5f77c addiu r5,r5,0xf77c
 
  001c4140: 24a5f77c addiu r5,r5,0xf77c
  001c4144: 0c053228 jal 0x0014c8a0
+
  001c4144: 0c053228 jal 0x0014c8a0             # [[Initialize Thread]]
 
  001c4148: 34040008 ori r4,r0,0x0008
 
  001c4148: 34040008 ori r4,r0,0x0008
 
  001c414c: 34040008 ori r4,r0,0x0008
 
  001c414c: 34040008 ori r4,r0,0x0008
Line 133: Line 133:
 
  001c4154: 24a5d210 addiu r5,r5,0xd210
 
  001c4154: 24a5d210 addiu r5,r5,0xd210
 
  001c4158: 00003021 addu r6,r0,r0
 
  001c4158: 00003021 addu r6,r0,r0
  001c415c: 0c05328e jal 0x0014ca38
+
  001c415c: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c4160: 00003821 addu r7,r0,r0
 
  001c4160: 00003821 addu r7,r0,r0
 
  001c4164: 3c17801e lui r23,0x801e
 
  001c4164: 3c17801e lui r23,0x801e
Line 143: Line 143:
 
  001c417c: afa00010 sw r0,0x0010(r29)
 
  001c417c: afa00010 sw r0,0x0010(r29)
 
  001c4180: 3c01801e lui r1,0x801e
 
  001c4180: 3c01801e lui r1,0x801e
  001c4184: ac20cc7c sw r0,-0x3384(r1)
+
  001c4184: ac20cc7c sw r0,-0x3384(r1)                  # Save 0 to 0x801DCC7C (Squad Number?)
  001c4188: 0c04ed64 jal 0x0013b590
+
  001c4188: 0c04ed64 jal 0x0013b590                     # [[Get Script Variable]]
  001c418c: 34040034 ori r4,r0,0x0034
+
  001c418c: 34040034 ori r4,r0,0x0034                   # Var 0x34: Number of Squads
 
  001c4190: 3c04801e lui r4,0x801e
 
  001c4190: 3c04801e lui r4,0x801e
  001c4194: 8c84cc7c lw r4,-0x3384(r4)
+
  001c4194: 8c84cc7c lw r4,-0x3384(r4)                 # Load Squad Number
 
  001c4198: 00000000 nop
 
  001c4198: 00000000 nop
  001c419c: 0082102a slt r2,r4,r2
+
  001c419c: 0082102a slt r2,r4,r2                       # r2 = 0x01 if Squad Number is less than the Number of Squads
  001c41a0: 10400495 beq r2,r0,0x 001c53f8
+
  001c41a0: 10400495 beq r2,r0,0x001c53f8              # Branch way ahead if Squad Number is equal to or higher than the Number of Squads
 
  001c41a4: 00000000 nop
 
  001c41a4: 00000000 nop
  001c41a8: 0c04ed64 jal 0x0013b590
+
  001c41a8: 0c04ed64 jal 0x0013b590                     # [[Get Script Variable]]
  001c41ac: 24840035 addiu r4,r4,0x0035
+
  001c41ac: 24840035 addiu r4,r4,0x0035                 # Var 0x35 + Squad Number: Squad #1 ID (or Squad #2 ID)
 
  001c41b0: 00021840 sll r3,r2,0x01
 
  001c41b0: 00021840 sll r3,r2,0x01
  001c41b4: 00621821 addu r3,r3,r2
+
  001c41b4: 00621821 addu r3,r3,r2                     # r3 = Squad ID * 3
 
  001c41b8: 3c01801e lui r1,0x801e
 
  001c41b8: 3c01801e lui r1,0x801e
  001c41bc: ac22cc78 sw r2,-0x3388(r1)
+
  001c41bc: ac22cc78 sw r2,-0x3388(r1)                 # Save Squad ID to 0x801DCC78
 
  001c41c0: 3c02801d lui r2,0x801d
 
  001c41c0: 3c02801d lui r2,0x801d
  001c41c4: 8c42d270 lw r2,-0x2d90(r2)
+
  001c41c4: 8c42d270 lw r2,-0x2d90(r2)                 # r2 = Squad Data pointer
  001c41c8: 00031880 sll r3,r3,0x02
+
  001c41c8: 00031880 sll r3,r3,0x02                     # r3 = Squad ID * 12
  001c41cc: 00621821 addu r3,r3,r2
+
  001c41cc: 00621821 addu r3,r3,r2                     # r3 = Squad ID * 12 + Squad Data pointer - pointer to the data for the current Squad
 
  001c41d0: 3c01801d lui r1,0x801d
 
  001c41d0: 3c01801d lui r1,0x801d
  001c41d4: ac23d274 sw r3,-0x2d8c(r1)
+
  001c41d4: ac23d274 sw r3,-0x2d8c(r1)                 # Save Current Squad Data Pointer to 0x801CD274
  001c41d8: 0c04ed64 jal 0x0013b590
+
  001c41d8: 0c04ed64 jal 0x0013b590                     # [[Get Script Variable]]
  001c41dc: 340401fe ori r4,r0,0x01fe
+
  001c41dc: 340401fe ori r4,r0,0x01fe                   # Var 0x1FE: Next Random is World Debug Battle Style
  001c41e0: 10400005 beq r2,r0,0x 001c41f8
+
  001c41e0: 10400005 beq r2,r0,0x001c41f8
 
  001c41e4: 00008821 addu r17,r0,r0
 
  001c41e4: 00008821 addu r17,r0,r0
 
  001c41e8: 3c03801d lui r3,0x801d
 
  001c41e8: 3c03801d lui r3,0x801d
Line 184: Line 184:
 
  001c4220: 90620000 lbu r2,0x0000(r3)
 
  001c4220: 90620000 lbu r2,0x0000(r3)
 
  001c4224: 340b00ff ori r11,r0,0x00ff
 
  001c4224: 340b00ff ori r11,r0,0x00ff
  001c4228: 104b0007 beq r2,r11,0x 001c4248
+
  001c4228: 104b0007 beq r2,r11,0x001c4248
 
  001c422c: 24630001 addiu r3,r3,0x0001
 
  001c422c: 24630001 addiu r3,r3,0x0001
 
  001c4230: 3c02801d lui r2,0x801d
 
  001c4230: 3c02801d lui r2,0x801d
Line 193: Line 193:
 
  001c4244: ac22d058 sw r2,-0x2fa8(r1)
 
  001c4244: ac22d058 sw r2,-0x2fa8(r1)
 
  001c4248: 0065102a slt r2,r3,r5
 
  001c4248: 0065102a slt r2,r3,r5
  001c424c: 1440fff4 bne r2,r0,0x 001c4220
+
  001c424c: 1440fff4 bne r2,r0,0x001c4220
 
  001c4250: 00000000 nop
 
  001c4250: 00000000 nop
 
  001c4254: 26310001 addiu r17,r17,0x0001
 
  001c4254: 26310001 addiu r17,r17,0x0001
 
  001c4258: 2a220005 slti r2,r17,0x0005
 
  001c4258: 2a220005 slti r2,r17,0x0005
  001c425c: 1440ffee bne r2,r0,0x 001c4218
+
  001c425c: 1440ffee bne r2,r0,0x001c4218
 
  001c4260: 24840005 addiu r4,r4,0x0005
 
  001c4260: 24840005 addiu r4,r4,0x0005
  001c4264: 0c053274 jal 0x0014c9d0
+
  001c4264: 0c053274 jal 0x0014c9d0                     # [[Wait For Thread]]
 
  001c4268: 34040004 ori r4,r0,0x0004
 
  001c4268: 34040004 ori r4,r0,0x0004
 
  001c426c: 00008821 addu r17,r0,r0
 
  001c426c: 00008821 addu r17,r0,r0
Line 217: Line 217:
 
  001c42a4: 90620000 lbu r2,0x0000(r3)
 
  001c42a4: 90620000 lbu r2,0x0000(r3)
 
  001c42a8: 340a00ff ori r10,r0,0x00ff
 
  001c42a8: 340a00ff ori r10,r0,0x00ff
  001c42ac: 144a0051 bne r2,r10,0x 001c43f4
+
  001c42ac: 144a0051 bne r2,r10,0x001c43f4
 
  001c42b0: 00000000 nop
 
  001c42b0: 00000000 nop
 
  001c42b4: 26100001 addiu r16,r16,0x0001
 
  001c42b4: 26100001 addiu r16,r16,0x0001
 
  001c42b8: 2a020005 slti r2,r16,0x0005
 
  001c42b8: 2a020005 slti r2,r16,0x0005
  001c42bc: 1440fff8 bne r2,r0,0x 001c42a0
+
  001c42bc: 1440fff8 bne r2,r0,0x001c42a0
 
  001c42c0: 24640001 addiu r4,r3,0x0001
 
  001c42c0: 24640001 addiu r4,r3,0x0001
 
  001c42c4: 26310001 addiu r17,r17,0x0001
 
  001c42c4: 26310001 addiu r17,r17,0x0001
 
  001c42c8: 2a220005 slti r2,r17,0x0005
 
  001c42c8: 2a220005 slti r2,r17,0x0005
  001c42cc: 1440fff2 bne r2,r0,0x 001c4298
+
  001c42cc: 1440fff2 bne r2,r0,0x001c4298
 
  001c42d0: 24a50005 addiu r5,r5,0x0005
 
  001c42d0: 24a50005 addiu r5,r5,0x0005
 
  001c42d4: 8fab0010 lw r11,0x0010(r29)
 
  001c42d4: 8fab0010 lw r11,0x0010(r29)
 
  001c42d8: 00000000 nop
 
  001c42d8: 00000000 nop
  001c42dc: 15600003 bne r11,r0,0x 001c42ec
+
  001c42dc: 15600003 bne r11,r0,0x001c42ec
 
  001c42e0: 2402ffff addiu r2,r0,0xffff
 
  001c42e0: 2402ffff addiu r2,r0,0xffff
 
  001c42e4: 3c01801d lui r1,0x801d
 
  001c42e4: 3c01801d lui r1,0x801d
 
  001c42e8: ac22d068 sw r2,-0x2f98(r1)
 
  001c42e8: ac22d068 sw r2,-0x2f98(r1)
  001c42ec: 0c070f2a jal 0x 001c3ca8
+
  001c42ec: 0c070f2a jal 0x001c3ca8                    # [[ATTACK.OUT 001c3ca8 - 001c3d38]]
 
  001c42f0: 00000000 nop
 
  001c42f0: 00000000 nop
 
  001c42f4: 8faa0010 lw r10,0x0010(r29)
 
  001c42f4: 8faa0010 lw r10,0x0010(r29)
 
  001c42f8: 00000000 nop
 
  001c42f8: 00000000 nop
  001c42fc: 11400017 beq r10,r0,0x 001c435c
+
  001c42fc: 11400017 beq r10,r0,0x001c435c
 
  001c4300: 00000000 nop
 
  001c4300: 00000000 nop
 
  001c4304: 3c04801d lui r4,0x801d
 
  001c4304: 3c04801d lui r4,0x801d
Line 245: Line 245:
 
  001c4314: 9022cc64 lbu r2,-0x339c(r1)
 
  001c4314: 9022cc64 lbu r2,-0x339c(r1)
 
  001c4318: 00000000 nop
 
  001c4318: 00000000 nop
  001c431c: 14560006 bne r2,r22,0x 001c4338
+
  001c431c: 14560006 bne r2,r22,0x001c4338
 
  001c4320: 2402ffff addiu r2,r0,0xffff
 
  001c4320: 2402ffff addiu r2,r0,0xffff
 
  001c4324: 3c03801d lui r3,0x801d
 
  001c4324: 3c03801d lui r3,0x801d
 
  001c4328: 8c63d068 lw r3,-0x2f98(r3)
 
  001c4328: 8c63d068 lw r3,-0x2f98(r3)
 
  001c432c: 00000000 nop
 
  001c432c: 00000000 nop
  001c4330: 1062000a beq r3,r2,0x 001c435c
+
  001c4330: 1062000a beq r3,r2,0x001c435c
 
  001c4334: 00000000 nop
 
  001c4334: 00000000 nop
 
  001c4338: 3c02801d lui r2,0x801d
 
  001c4338: 3c02801d lui r2,0x801d
 
  001c433c: 8c42d068 lw r2,-0x2f98(r2)
 
  001c433c: 8c42d068 lw r2,-0x2f98(r2)
 
  001c4340: 00000000 nop
 
  001c4340: 00000000 nop
  001c4344: 10440005 beq r2,r4,0x 001c435c
+
  001c4344: 10440005 beq r2,r4,0x001c435c
 
  001c4348: 00000000 nop
 
  001c4348: 00000000 nop
 
  001c434c: 3c05801c lui r5,0x801c
 
  001c434c: 3c05801c lui r5,0x801c
 
  001c4350: 24a560e0 addiu r5,r5,0x60e0
 
  001c4350: 24a560e0 addiu r5,r5,0x60e0
  001c4354: 0c053228 jal 0x0014c8a0
+
  001c4354: 0c053228 jal 0x0014c8a0             # [[Initialize Thread]]
 
  001c4358: 34040004 ori r4,r0,0x0004
 
  001c4358: 34040004 ori r4,r0,0x0004
 
  001c435c: 8fab0010 lw r11,0x0010(r29)
 
  001c435c: 8fab0010 lw r11,0x0010(r29)
 
  001c4360: 00000000 nop
 
  001c4360: 00000000 nop
  001c4364: 1576002c bne r11,r22,0x 001c4418
+
  001c4364: 1576002c bne r11,r22,0x001c4418
 
  001c4368: 340b0002 ori r11,r0,0x0002
 
  001c4368: 340b0002 ori r11,r0,0x0002
 
  001c436c: 3404000e ori r4,r0,0x000e
 
  001c436c: 3404000e ori r4,r0,0x000e
 
  001c4370: 00002821 addu r5,r0,r0
 
  001c4370: 00002821 addu r5,r0,r0
 
  001c4374: 00003021 addu r6,r0,r0
 
  001c4374: 00003021 addu r6,r0,r0
  001c4378: 0c05328e jal 0x0014ca38
+
  001c4378: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c437c: 34070001 ori r7,r0,0x0001
 
  001c437c: 34070001 ori r7,r0,0x0001
 
  001c4380: 34020100 ori r2,r0,0x0100
 
  001c4380: 34020100 ori r2,r0,0x0100
Line 279: Line 279:
 
  001c439c: 00000000 nop
 
  001c439c: 00000000 nop
 
  001c43a0: 2c420002 sltiu r2,r2,0x0002
 
  001c43a0: 2c420002 sltiu r2,r2,0x0002
  001c43a4: 10400002 beq r2,r0,0x 001c43b0
+
  001c43a4: 10400002 beq r2,r0,0x001c43b0
 
  001c43a8: 00000000 nop
 
  001c43a8: 00000000 nop
 
  001c43ac: a0760000 sb r22,0x0000(r3)
 
  001c43ac: a0760000 sb r22,0x0000(r3)
 
  001c43b0: 24630001 addiu r3,r3,0x0001
 
  001c43b0: 24630001 addiu r3,r3,0x0001
 
  001c43b4: 0064102a slt r2,r3,r4
 
  001c43b4: 0064102a slt r2,r3,r4
  001c43b8: 1440fff7 bne r2,r0,0x 001c4398
+
  001c43b8: 1440fff7 bne r2,r0,0x001c4398
 
  001c43bc: 00009021 addu r18,r0,r0
 
  001c43bc: 00009021 addu r18,r0,r0
 
  001c43c0: 3c02801d lui r2,0x801d
 
  001c43c0: 3c02801d lui r2,0x801d
Line 292: Line 292:
 
  001c43d0: 3c01801d lui r1,0x801d
 
  001c43d0: 3c01801d lui r1,0x801d
 
  001c43d4: ac22d078 sw r2,-0x2f88(r1)
 
  001c43d4: ac22d078 sw r2,-0x2f88(r1)
  001c43d8: 0c0532a0 jal 0x0014ca80
+
  001c43d8: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c43dc: 26520008 addiu r18,r18,0x0008
 
  001c43dc: 26520008 addiu r18,r18,0x0008
 
  001c43e0: 2a420100 slti r2,r18,0x0100
 
  001c43e0: 2a420100 slti r2,r18,0x0100
  001c43e4: 1040002f beq r2,r0,0x 001c44a4
+
  001c43e4: 1040002f beq r2,r0,0x001c44a4
 
  001c43e8: 00000000 nop
 
  001c43e8: 00000000 nop
  001c43ec: 080710f0 j 0x 001c43c0
+
  001c43ec: 080710f0 j 0x001c43c0
 
  001c43f0: 00000000 nop
 
  001c43f0: 00000000 nop
 
  001c43f4: aeb00000 sw r16,0x0000(r21)
 
  001c43f4: aeb00000 sw r16,0x0000(r21)
Line 306: Line 306:
 
  001c4408: 3c01801d lui r1,0x801d
 
  001c4408: 3c01801d lui r1,0x801d
 
  001c440c: ac22d068 sw r2,-0x2f98(r1)
 
  001c440c: ac22d068 sw r2,-0x2f98(r1)
  001c4410: 080710b5 j 0x 001c42d4
+
  001c4410: 080710b5 j 0x001c42d4
 
  001c4414: 00000000 nop
 
  001c4414: 00000000 nop
 
  001c4418: 8faa0010 lw r10,0x0010(r29)
 
  001c4418: 8faa0010 lw r10,0x0010(r29)
 
  001c441c: 00000000 nop
 
  001c441c: 00000000 nop
  001c4420: 154b0020 bne r10,r11,0x 001c44a4
+
  001c4420: 154b0020 bne r10,r11,0x001c44a4
 
  001c4424: 3404000e ori r4,r0,0x000e
 
  001c4424: 3404000e ori r4,r0,0x000e
 
  001c4428: 00002821 addu r5,r0,r0
 
  001c4428: 00002821 addu r5,r0,r0
 
  001c442c: 00003021 addu r6,r0,r0
 
  001c442c: 00003021 addu r6,r0,r0
  001c4430: 0c05328e jal 0x0014ca38
+
  001c4430: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c4434: 34070001 ori r7,r0,0x0001
 
  001c4434: 34070001 ori r7,r0,0x0001
 
  001c4438: 2402ff00 addiu r2,r0,0xff00
 
  001c4438: 2402ff00 addiu r2,r0,0xff00
Line 325: Line 325:
 
  001c4454: 00000000 nop
 
  001c4454: 00000000 nop
 
  001c4458: 2c420002 sltiu r2,r2,0x0002
 
  001c4458: 2c420002 sltiu r2,r2,0x0002
  001c445c: 10400002 beq r2,r0,0x 001c4468
+
  001c445c: 10400002 beq r2,r0,0x001c4468
 
  001c4460: 00000000 nop
 
  001c4460: 00000000 nop
 
  001c4464: a0760000 sb r22,0x0000(r3)
 
  001c4464: a0760000 sb r22,0x0000(r3)
 
  001c4468: 24630001 addiu r3,r3,0x0001
 
  001c4468: 24630001 addiu r3,r3,0x0001
 
  001c446c: 0064102a slt r2,r3,r4
 
  001c446c: 0064102a slt r2,r3,r4
  001c4470: 1440fff7 bne r2,r0,0x 001c4450
+
  001c4470: 1440fff7 bne r2,r0,0x001c4450
 
  001c4474: 00009021 addu r18,r0,r0
 
  001c4474: 00009021 addu r18,r0,r0
 
  001c4478: 3c02801d lui r2,0x801d
 
  001c4478: 3c02801d lui r2,0x801d
Line 338: Line 338:
 
  001c4488: 3c01801d lui r1,0x801d
 
  001c4488: 3c01801d lui r1,0x801d
 
  001c448c: ac22d078 sw r2,-0x2f88(r1)
 
  001c448c: ac22d078 sw r2,-0x2f88(r1)
  001c4490: 0c0532a0 jal 0x0014ca80
+
  001c4490: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c4494: 26520008 addiu r18,r18,0x0008
 
  001c4494: 26520008 addiu r18,r18,0x0008
 
  001c4498: 2a420100 slti r2,r18,0x0100
 
  001c4498: 2a420100 slti r2,r18,0x0100
  001c449c: 1440fff6 bne r2,r0,0x 001c4478
+
  001c449c: 1440fff6 bne r2,r0,0x001c4478
 
  001c44a0: 00000000 nop
 
  001c44a0: 00000000 nop
 
  001c44a4: 8faa0018 lw r10,0x0018(r29)
 
  001c44a4: 8faa0018 lw r10,0x0018(r29)
 
  001c44a8: 00000000 nop
 
  001c44a8: 00000000 nop
  001c44ac: 1140003e beq r10,r0,0x 001c45a8
+
  001c44ac: 1140003e beq r10,r0,0x001c45a8
 
  001c44b0: 340b00ff ori r11,r0,0x00ff
 
  001c44b0: 340b00ff ori r11,r0,0x00ff
 
  001c44b4: 3c018016 lui r1,0x8016
 
  001c44b4: 3c018016 lui r1,0x8016
Line 354: Line 354:
 
  001c44c8: 8e020000 lw r2,0x0000(r16)
 
  001c44c8: 8e020000 lw r2,0x0000(r16)
 
  001c44cc: 00000000 nop
 
  001c44cc: 00000000 nop
  001c44d0: 10400002 beq r2,r0,0x 001c44dc
+
  001c44d0: 10400002 beq r2,r0,0x001c44dc
 
  001c44d4: 24420004 addiu r2,r2,0x0004
 
  001c44d4: 24420004 addiu r2,r2,0x0004
 
  001c44d8: ae020000 sw r2,0x0000(r16)
 
  001c44d8: ae020000 sw r2,0x0000(r16)
Line 360: Line 360:
 
  001c44e0: 8c42603c lw r2,0x603c(r2)
 
  001c44e0: 8c42603c lw r2,0x603c(r2)
 
  001c44e4: 00000000 nop
 
  001c44e4: 00000000 nop
  001c44e8: 10400007 beq r2,r0,0x 001c4508
+
  001c44e8: 10400007 beq r2,r0,0x001c4508
 
  001c44ec: 2442fff0 addiu r2,r2,0xfff0
 
  001c44ec: 2442fff0 addiu r2,r2,0xfff0
 
  001c44f0: 3c018016 lui r1,0x8016
 
  001c44f0: 3c018016 lui r1,0x8016
 
  001c44f4: ac22603c sw r2,0x603c(r1)
 
  001c44f4: ac22603c sw r2,0x603c(r1)
  001c44f8: 04410003 bgez r2,0x 001c4508
+
  001c44f8: 04410003 bgez r2,0x001c4508
 
  001c44fc: 00000000 nop
 
  001c44fc: 00000000 nop
 
  001c4500: 3c018016 lui r1,0x8016
 
  001c4500: 3c018016 lui r1,0x8016
Line 371: Line 371:
 
  001c450c: 8c63d214 lw r3,-0x2dec(r3)
 
  001c450c: 8c63d214 lw r3,-0x2dec(r3)
 
  001c4510: 2402fff8 addiu r2,r0,0xfff8
 
  001c4510: 2402fff8 addiu r2,r0,0xfff8
  001c4514: 14620008 bne r3,r2,0x 001c4538
+
  001c4514: 14620008 bne r3,r2,0x001c4538
 
  001c4518: 00000000 nop
 
  001c4518: 00000000 nop
 
  001c451c: 34120004 ori r18,r0,0x0004
 
  001c451c: 34120004 ori r18,r0,0x0004
Line 378: Line 378:
 
  001c4528: a0510000 sb r17,0x0000(r2)
 
  001c4528: a0510000 sb r17,0x0000(r2)
 
  001c452c: 2652ffff addiu r18,r18,0xffff
 
  001c452c: 2652ffff addiu r18,r18,0xffff
  001c4530: 0641fffd bgez r18,0x 001c4528
+
  001c4530: 0641fffd bgez r18,0x001c4528
 
  001c4534: 2442ffff addiu r2,r2,0xffff
 
  001c4534: 2442ffff addiu r2,r2,0xffff
 
  001c4538: 3c02801d lui r2,0x801d
 
  001c4538: 3c02801d lui r2,0x801d
 
  001c453c: 8c42d07c lw r2,-0x2f84(r2)
 
  001c453c: 8c42d07c lw r2,-0x2f84(r2)
 
  001c4540: 00000000 nop
 
  001c4540: 00000000 nop
  001c4544: 10400003 beq r2,r0,0x 001c4554
+
  001c4544: 10400003 beq r2,r0,0x001c4554
 
  001c4548: 2442fffc addiu r2,r2,0xfffc
 
  001c4548: 2442fffc addiu r2,r2,0xfffc
 
  001c454c: 3c01801d lui r1,0x801d
 
  001c454c: 3c01801d lui r1,0x801d
Line 390: Line 390:
 
  001c4558: 8c42603c lw r2,0x603c(r2)
 
  001c4558: 8c42603c lw r2,0x603c(r2)
 
  001c455c: 00000000 nop
 
  001c455c: 00000000 nop
  001c4560: 1440000b bne r2,r0,0x 001c4590
+
  001c4560: 1440000b bne r2,r0,0x001c4590
 
  001c4564: 00000000 nop
 
  001c4564: 00000000 nop
 
  001c4568: 3c02801d lui r2,0x801d
 
  001c4568: 3c02801d lui r2,0x801d
 
  001c456c: 8c42d214 lw r2,-0x2dec(r2)
 
  001c456c: 8c42d214 lw r2,-0x2dec(r2)
 
  001c4570: 00000000 nop
 
  001c4570: 00000000 nop
  001c4574: 14400006 bne r2,r0,0x 001c4590
+
  001c4574: 14400006 bne r2,r0,0x001c4590
 
  001c4578: 00000000 nop
 
  001c4578: 00000000 nop
 
  001c457c: 3c02801d lui r2,0x801d
 
  001c457c: 3c02801d lui r2,0x801d
 
  001c4580: 8c42d07c lw r2,-0x2f84(r2)
 
  001c4580: 8c42d07c lw r2,-0x2f84(r2)
 
  001c4584: 00000000 nop
 
  001c4584: 00000000 nop
  001c4588: 10400005 beq r2,r0,0x 001c45a0
+
  001c4588: 10400005 beq r2,r0,0x001c45a0
 
  001c458c: 00000000 nop
 
  001c458c: 00000000 nop
  001c4590: 0c0532a0 jal 0x0014ca80
+
  001c4590: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c4594: 00000000 nop
 
  001c4594: 00000000 nop
  001c4598: 08071132 j 0x 001c44c8
+
  001c4598: 08071132 j 0x001c44c8
 
  001c459c: 00000000 nop
 
  001c459c: 00000000 nop
  001c45a0: 08071170 j 0x 001c45c0
+
  001c45a0: 08071170 j 0x001c45c0
 
  001c45a4: afa00018 sw r0,0x0018(r29)
 
  001c45a4: afa00018 sw r0,0x0018(r29)
 
  001c45a8: 3c01801d lui r1,0x801d
 
  001c45a8: 3c01801d lui r1,0x801d
Line 416: Line 416:
 
  001c45c0: 3c05801c lui r5,0x801c
 
  001c45c0: 3c05801c lui r5,0x801c
 
  001c45c4: 24a57bec addiu r5,r5,0x7bec
 
  001c45c4: 24a57bec addiu r5,r5,0x7bec
  001c45c8: 0c053228 jal 0x0014c8a0
+
  001c45c8: 0c053228 jal 0x0014c8a0             # [[Initialize Thread]]
 
  001c45cc: 3404000e ori r4,r0,0x000e
 
  001c45cc: 3404000e ori r4,r0,0x000e
 
  001c45d0: 3404000e ori r4,r0,0x000e
 
  001c45d0: 3404000e ori r4,r0,0x000e
 
  001c45d4: 00002821 addu r5,r0,r0
 
  001c45d4: 00002821 addu r5,r0,r0
 
  001c45d8: 00003021 addu r6,r0,r0
 
  001c45d8: 00003021 addu r6,r0,r0
  001c45dc: 0c05328e jal 0x0014ca38
+
  001c45dc: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c45e0: 00003821 addu r7,r0,r0
 
  001c45e0: 00003821 addu r7,r0,r0
 
  001c45e4: 3c1e801d lui r30,0x801d
 
  001c45e4: 3c1e801d lui r30,0x801d
 
  001c45e8: 27def5f2 addiu r30,r30,0xf5f2
 
  001c45e8: 27def5f2 addiu r30,r30,0xf5f2
  001c45ec: 0c0532a0 jal 0x0014ca80
+
  001c45ec: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c45f0: 00000000 nop
 
  001c45f0: 00000000 nop
 
  001c45f4: 3c04801d lui r4,0x801d
 
  001c45f4: 3c04801d lui r4,0x801d
 
  001c45f8: 8c84d064 lw r4,-0x2f9c(r4)
 
  001c45f8: 8c84d064 lw r4,-0x2f9c(r4)
  001c45fc: 0c070f4f jal 0x 001c3d3c
+
  001c45fc: 0c070f4f jal 0x001c3d3c              # [[ATTACK.OUT 001c3d3c - 001c3d88]]
 
  001c4600: 00000000 nop
 
  001c4600: 00000000 nop
 
  001c4604: 3c01801d lui r1,0x801d
 
  001c4604: 3c01801d lui r1,0x801d
 
  001c4608: ac22d220 sw r2,-0x2de0(r1)
 
  001c4608: ac22d220 sw r2,-0x2de0(r1)
  001c460c: 0c05295e jal 0x0014a578
+
  001c460c: 0c05295e jal 0x0014a578             # [[0014a578 - 0014a594]]
 
  001c4610: 00002021 addu r4,r0,r0
 
  001c4610: 00002021 addu r4,r0,r0
 
  001c4614: 00409821 addu r19,r2,r0
 
  001c4614: 00409821 addu r19,r2,r0
Line 439: Line 439:
 
  001c461c: 00000000 nop
 
  001c461c: 00000000 nop
 
  001c4620: 30420100 andi r2,r2,0x0100
 
  001c4620: 30420100 andi r2,r2,0x0100
  001c4624: 1040000c beq r2,r0,0x 001c4658
+
  001c4624: 1040000c beq r2,r0,0x001c4658
 
  001c4628: 00000000 nop
 
  001c4628: 00000000 nop
 
  001c462c: 3c05801d lui r5,0x801d
 
  001c462c: 3c05801d lui r5,0x801d
 
  001c4630: 24a58cf0 addiu r5,r5,0x8cf0
 
  001c4630: 24a58cf0 addiu r5,r5,0x8cf0
  001c4634: 0c053228 jal 0x0014c8a0
+
  001c4634: 0c053228 jal 0x0014c8a0             # [[Initialize Thread]]
 
  001c4638: 34040003 ori r4,r0,0x0003
 
  001c4638: 34040003 ori r4,r0,0x0003
 
  001c463c: 34040003 ori r4,r0,0x0003
 
  001c463c: 34040003 ori r4,r0,0x0003
 
  001c4640: 34050001 ori r5,r0,0x0001
 
  001c4640: 34050001 ori r5,r0,0x0001
 
  001c4644: 00003021 addu r6,r0,r0
 
  001c4644: 00003021 addu r6,r0,r0
  001c4648: 0c05328e jal 0x0014ca38
+
  001c4648: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c464c: 00003821 addu r7,r0,r0
 
  001c464c: 00003821 addu r7,r0,r0
  001c4650: 0c053274 jal 0x0014c9d0
+
  001c4650: 0c053274 jal 0x0014c9d0                     # [[Wait For Thread]]
 
  001c4654: 34040003 ori r4,r0,0x0003
 
  001c4654: 34040003 ori r4,r0,0x0003
 
  001c4658: 93c20000 lbu r2,0x0000(r30)
 
  001c4658: 93c20000 lbu r2,0x0000(r30)
 
  001c465c: 00000000 nop
 
  001c465c: 00000000 nop
 
  001c4660: 2c420002 sltiu r2,r2,0x0002
 
  001c4660: 2c420002 sltiu r2,r2,0x0002
  001c4664: 10400014 beq r2,r0,0x 001c46b8
+
  001c4664: 10400014 beq r2,r0,0x001c46b8
 
  001c4668: 340a00ff ori r10,r0,0x00ff
 
  001c4668: 340a00ff ori r10,r0,0x00ff
 
  001c466c: 3c04801d lui r4,0x801d
 
  001c466c: 3c04801d lui r4,0x801d
Line 471: Line 471:
 
  001c469c: 90420000 lbu r2,0x0000(r2)
 
  001c469c: 90420000 lbu r2,0x0000(r2)
 
  001c46a0: 00000000 nop
 
  001c46a0: 00000000 nop
  001c46a4: 104a0003 beq r2,r10,0x 001c46b4
+
  001c46a4: 104a0003 beq r2,r10,0x001c46b4
 
  001c46a8: 00000000 nop
 
  001c46a8: 00000000 nop
  001c46ac: 080711ae j 0x 001c46b8
+
  001c46ac: 080711ae j 0x001c46b8
 
  001c46b0: a3c00000 sb r0,0x0000(r30)
 
  001c46b0: a3c00000 sb r0,0x0000(r30)
 
  001c46b4: a3d60000 sb r22,0x0000(r30)
 
  001c46b4: a3d60000 sb r22,0x0000(r30)
  001c46b8: 0c053287 jal 0x0014ca1c
+
  001c46b8: 0c053287 jal 0x0014ca1c                     # [[Check Thread r4 Running Status]]
 
  001c46bc: 3404000d ori r4,r0,0x000d
 
  001c46bc: 3404000d ori r4,r0,0x000d
  001c46c0: 14400009 bne r2,r0,0x 001c46e8
+
  001c46c0: 14400009 bne r2,r0,0x001c46e8
 
  001c46c4: 00000000 nop
 
  001c46c4: 00000000 nop
 
  001c46c8: 3c03801d lui r3,0x801d
 
  001c46c8: 3c03801d lui r3,0x801d
Line 485: Line 485:
 
  001c46d4: 00000000 nop
 
  001c46d4: 00000000 nop
 
  001c46d8: 2c420002 sltiu r2,r2,0x0002
 
  001c46d8: 2c420002 sltiu r2,r2,0x0002
  001c46dc: 10400002 beq r2,r0,0x 001c46e8
+
  001c46dc: 10400002 beq r2,r0,0x001c46e8
 
  001c46e0: 00000000 nop
 
  001c46e0: 00000000 nop
 
  001c46e4: a0600000 sb r0,0x0000(r3)
 
  001c46e4: a0600000 sb r0,0x0000(r3)
Line 493: Line 493:
 
  001c46f4: 00000000 nop
 
  001c46f4: 00000000 nop
 
  001c46f8: 2c420002 sltiu r2,r2,0x0002
 
  001c46f8: 2c420002 sltiu r2,r2,0x0002
  001c46fc: 10400009 beq r2,r0,0x 001c4724
+
  001c46fc: 10400009 beq r2,r0,0x001c4724
 
  001c4700: 00000000 nop
 
  001c4700: 00000000 nop
 
  001c4704: 3c02801d lui r2,0x801d
 
  001c4704: 3c02801d lui r2,0x801d
 
  001c4708: 8c42d058 lw r2,-0x2fa8(r2)
 
  001c4708: 8c42d058 lw r2,-0x2fa8(r2)
 
  001c470c: 00000000 nop
 
  001c470c: 00000000 nop
  001c4710: 14400003 bne r2,r0,0x 001c4720
+
  001c4710: 14400003 bne r2,r0,0x001c4720
 
  001c4714: 00000000 nop
 
  001c4714: 00000000 nop
  001c4718: 080711c9 j 0x 001c4724
+
  001c4718: 080711c9 j 0x001c4724
 
  001c471c: a0760000 sb r22,0x0000(r3)
 
  001c471c: a0760000 sb r22,0x0000(r3)
 
  001c4720: a0600000 sb r0,0x0000(r3)
 
  001c4720: a0600000 sb r0,0x0000(r3)
Line 508: Line 508:
 
  001c4730: 00000000 nop
 
  001c4730: 00000000 nop
 
  001c4734: 30428000 andi r2,r2,0x8000
 
  001c4734: 30428000 andi r2,r2,0x8000
  001c4738: 1040000c beq r2,r0,0x 001c476c
+
  001c4738: 1040000c beq r2,r0,0x001c476c
 
  001c473c: 0003902b sltu r18,r0,r3
 
  001c473c: 0003902b sltu r18,r0,r3
 
  001c4740: 00121080 sll r2,r18,0x02
 
  001c4740: 00121080 sll r2,r18,0x02
Line 515: Line 515:
 
  001c474c: 00000000 nop
 
  001c474c: 00000000 nop
 
  001c4750: 28620004 slti r2,r3,0x0004
 
  001c4750: 28620004 slti r2,r3,0x0004
  001c4754: 10400005 beq r2,r0,0x 001c476c
+
  001c4754: 10400005 beq r2,r0,0x001c476c
 
  001c4758: 24620001 addiu r2,r3,0x0001
 
  001c4758: 24620001 addiu r2,r3,0x0001
 
  001c475c: ac820000 sw r2,0x0000(r4)
 
  001c475c: ac820000 sw r2,0x0000(r4)
  001c4760: 34020003 ori r2,r0,0x0003
+
  001c4760: 34020003 ori r2,r0,0x0003             # Set sound effect ID to play: 0x03
 
  001c4764: 3c018016 lui r1,0x8016
 
  001c4764: 3c018016 lui r1,0x8016
  001c4768: ac225fb4 sw r2,0x5fb4(r1)
+
  001c4768: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x03, Move Cursor
 
  001c476c: 8e620000 lw r2,0x0000(r19)
 
  001c476c: 8e620000 lw r2,0x0000(r19)
 
  001c4770: 00000000 nop
 
  001c4770: 00000000 nop
 
  001c4774: 30422000 andi r2,r2,0x2000
 
  001c4774: 30422000 andi r2,r2,0x2000
  001c4778: 1040000a beq r2,r0,0x 001c47a4
+
  001c4778: 1040000a beq r2,r0,0x001c47a4
 
  001c477c: 00121080 sll r2,r18,0x02
 
  001c477c: 00121080 sll r2,r18,0x02
 
  001c4780: 00551821 addu r3,r2,r21
 
  001c4780: 00551821 addu r3,r2,r21
 
  001c4784: 8c620000 lw r2,0x0000(r3)
 
  001c4784: 8c620000 lw r2,0x0000(r3)
 
  001c4788: 00000000 nop
 
  001c4788: 00000000 nop
  001c478c: 18400005 blez r2,0x 001c47a4
+
  001c478c: 18400005 blez r2,0x001c47a4
 
  001c4790: 2442ffff addiu r2,r2,0xffff
 
  001c4790: 2442ffff addiu r2,r2,0xffff
 
  001c4794: ac620000 sw r2,0x0000(r3)
 
  001c4794: ac620000 sw r2,0x0000(r3)
  001c4798: 34020003 ori r2,r0,0x0003
+
  001c4798: 34020003 ori r2,r0,0x0003             # Set sound effect ID to play: 0x03
 
  001c479c: 3c018016 lui r1,0x8016
 
  001c479c: 3c018016 lui r1,0x8016
  001c47a0: ac225fb4 sw r2,0x5fb4(r1)
+
  001c47a0: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x03, Move Cursor
 
  001c47a4: 8e620000 lw r2,0x0000(r19)
 
  001c47a4: 8e620000 lw r2,0x0000(r19)
 
  001c47a8: 00000000 nop
 
  001c47a8: 00000000 nop
 
  001c47ac: 30421000 andi r2,r2,0x1000
 
  001c47ac: 30421000 andi r2,r2,0x1000
  001c47b0: 1040000b beq r2,r0,0x 001c47e0
+
  001c47b0: 1040000b beq r2,r0,0x001c47e0
 
  001c47b4: 00121080 sll r2,r18,0x02
 
  001c47b4: 00121080 sll r2,r18,0x02
 
  001c47b8: 00542021 addu r4,r2,r20
 
  001c47b8: 00542021 addu r4,r2,r20
Line 544: Line 544:
 
  001c47c0: 00000000 nop
 
  001c47c0: 00000000 nop
 
  001c47c4: 28620004 slti r2,r3,0x0004
 
  001c47c4: 28620004 slti r2,r3,0x0004
  001c47c8: 10400005 beq r2,r0,0x 001c47e0
+
  001c47c8: 10400005 beq r2,r0,0x001c47e0
 
  001c47cc: 24620001 addiu r2,r3,0x0001
 
  001c47cc: 24620001 addiu r2,r3,0x0001
 
  001c47d0: ac820000 sw r2,0x0000(r4)
 
  001c47d0: ac820000 sw r2,0x0000(r4)
  001c47d4: 34020003 ori r2,r0,0x0003
+
  001c47d4: 34020003 ori r2,r0,0x0003             # Set sound effect ID to play: 0x03
 
  001c47d8: 3c018016 lui r1,0x8016
 
  001c47d8: 3c018016 lui r1,0x8016
  001c47dc: ac225fb4 sw r2,0x5fb4(r1)
+
  001c47dc: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x03, Move Cursor
 
  001c47e0: 8e620000 lw r2,0x0000(r19)
 
  001c47e0: 8e620000 lw r2,0x0000(r19)
 
  001c47e4: 00000000 nop
 
  001c47e4: 00000000 nop
 
  001c47e8: 30424000 andi r2,r2,0x4000
 
  001c47e8: 30424000 andi r2,r2,0x4000
  001c47ec: 1040000a beq r2,r0,0x 001c4818
+
  001c47ec: 1040000a beq r2,r0,0x001c4818
 
  001c47f0: 00121080 sll r2,r18,0x02
 
  001c47f0: 00121080 sll r2,r18,0x02
 
  001c47f4: 00541821 addu r3,r2,r20
 
  001c47f4: 00541821 addu r3,r2,r20
 
  001c47f8: 8c620000 lw r2,0x0000(r3)
 
  001c47f8: 8c620000 lw r2,0x0000(r3)
 
  001c47fc: 00000000 nop
 
  001c47fc: 00000000 nop
  001c4800: 18400005 blez r2,0x 001c4818
+
  001c4800: 18400005 blez r2,0x001c4818
 
  001c4804: 2442ffff addiu r2,r2,0xffff
 
  001c4804: 2442ffff addiu r2,r2,0xffff
 
  001c4808: ac620000 sw r2,0x0000(r3)
 
  001c4808: ac620000 sw r2,0x0000(r3)
  001c480c: 34020003 ori r2,r0,0x0003
+
  001c480c: 34020003 ori r2,r0,0x0003             # Set sound effect ID to play: 0x03
 
  001c4810: 3c018016 lui r1,0x8016
 
  001c4810: 3c018016 lui r1,0x8016
  001c4814: ac225fb4 sw r2,0x5fb4(r1)
+
  001c4814: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x03, Move Cursor
 
  001c4818: 00121880 sll r3,r18,0x02
 
  001c4818: 00121880 sll r3,r18,0x02
 
  001c481c: 00751021 addu r2,r3,r21
 
  001c481c: 00751021 addu r2,r3,r21
Line 571: Line 571:
 
  001c482c: 8c42d074 lw r2,-0x2f8c(r2)
 
  001c482c: 8c42d074 lw r2,-0x2f8c(r2)
 
  001c4830: 8c710000 lw r17,0x0000(r3)
 
  001c4830: 8c710000 lw r17,0x0000(r3)
  001c4834: 14400024 bne r2,r0,0x 001c48c8
+
  001c4834: 14400024 bne r2,r0,0x001c48c8
 
  001c4838: 340b00ff ori r11,r0,0x00ff
 
  001c4838: 340b00ff ori r11,r0,0x00ff
 
  001c483c: 00111080 sll r2,r17,0x02
 
  001c483c: 00111080 sll r2,r17,0x02
Line 579: Line 579:
 
  001c484c: 90440000 lbu r4,0x0000(r2)
 
  001c484c: 90440000 lbu r4,0x0000(r2)
 
  001c4850: 00000000 nop
 
  001c4850: 00000000 nop
  001c4854: 148b0015 bne r4,r11,0x 001c48ac
+
  001c4854: 148b0015 bne r4,r11,0x001c48ac
 
  001c4858: 00000000 nop
 
  001c4858: 00000000 nop
 
  001c485c: 3c02801e lui r2,0x801e
 
  001c485c: 3c02801e lui r2,0x801e
Line 587: Line 587:
 
  001c486c: 90420000 lbu r2,0x0000(r2)
 
  001c486c: 90420000 lbu r2,0x0000(r2)
 
  001c4870: 00000000 nop
 
  001c4870: 00000000 nop
  001c4874: 10400029 beq r2,r0,0x 001c491c
+
  001c4874: 10400029 beq r2,r0,0x001c491c
 
  001c4878: 00000000 nop
 
  001c4878: 00000000 nop
 
  001c487c: 3c02801d lui r2,0x801d
 
  001c487c: 3c02801d lui r2,0x801d
Line 597: Line 597:
 
  001c4894: 00000000 nop
 
  001c4894: 00000000 nop
 
  001c4898: 0043102a slt r2,r2,r3
 
  001c4898: 0043102a slt r2,r2,r3
  001c489c: 1040001f beq r2,r0,0x 001c491c
+
  001c489c: 1040001f beq r2,r0,0x001c491c
 
  001c48a0: 00000000 nop
 
  001c48a0: 00000000 nop
  001c48a4: 08071243 j 0x 001c490c
+
  001c48a4: 08071243 j 0x001c490c
 
  001c48a8: 00000000 nop
 
  001c48a8: 00000000 nop
 
  001c48ac: 3c02801d lui r2,0x801d
 
  001c48ac: 3c02801d lui r2,0x801d
 
  001c48b0: 8c42d064 lw r2,-0x2f9c(r2)
 
  001c48b0: 8c42d064 lw r2,-0x2f9c(r2)
 
  001c48b4: 00000000 nop
 
  001c48b4: 00000000 nop
  001c48b8: 1044002e beq r2,r4,0x 001c4974
+
  001c48b8: 1044002e beq r2,r4,0x001c4974
 
  001c48bc: 34020003 ori r2,r0,0x0003
 
  001c48bc: 34020003 ori r2,r0,0x0003
  001c48c0: 08071262 j 0x 001c4988
+
  001c48c0: 08071262 j 0x001c4988
 
  001c48c4: 00000000 nop
 
  001c48c4: 00000000 nop
  001c48c8: 14560031 bne r2,r22,0x 001c4990
+
  001c48c8: 14560031 bne r2,r22,0x001c4990
 
  001c48cc: 00111080 sll r2,r17,0x02
 
  001c48cc: 00111080 sll r2,r17,0x02
 
  001c48d0: 00511821 addu r3,r2,r17
 
  001c48d0: 00511821 addu r3,r2,r17
Line 615: Line 615:
 
  001c48dc: 90440000 lbu r4,0x0000(r2)
 
  001c48dc: 90440000 lbu r4,0x0000(r2)
 
  001c48e0: 340b00ff ori r11,r0,0x00ff
 
  001c48e0: 340b00ff ori r11,r0,0x00ff
  001c48e4: 148b0011 bne r4,r11,0x 001c492c
+
  001c48e4: 148b0011 bne r4,r11,0x001c492c
 
  001c48e8: 00000000 nop
 
  001c48e8: 00000000 nop
 
  001c48ec: 3c02801e lui r2,0x801e
 
  001c48ec: 3c02801e lui r2,0x801e
Line 623: Line 623:
 
  001c48fc: 90420000 lbu r2,0x0000(r2)
 
  001c48fc: 90420000 lbu r2,0x0000(r2)
 
  001c4900: 00000000 nop
 
  001c4900: 00000000 nop
  001c4904: 10400005 beq r2,r0,0x 001c491c
+
  001c4904: 10400005 beq r2,r0,0x001c491c
 
  001c4908: 00000000 nop
 
  001c4908: 00000000 nop
 
  001c490c: 3c01801d lui r1,0x801d
 
  001c490c: 3c01801d lui r1,0x801d
 
  001c4910: ac20d070 sw r0,-0x2f90(r1)
 
  001c4910: ac20d070 sw r0,-0x2f90(r1)
  001c4914: 08071264 j 0x 001c4990
+
  001c4914: 08071264 j 0x001c4990
 
  001c4918: 00000000 nop
 
  001c4918: 00000000 nop
 
  001c491c: 3c01801d lui r1,0x801d
 
  001c491c: 3c01801d lui r1,0x801d
 
  001c4920: ac36d070 sw r22,-0x2f90(r1)
 
  001c4920: ac36d070 sw r22,-0x2f90(r1)
  001c4924: 08071264 j 0x 001c4990
+
  001c4924: 08071264 j 0x001c4990
 
  001c4928: 00000000 nop
 
  001c4928: 00000000 nop
 
  001c492c: 3c02801d lui r2,0x801d
 
  001c492c: 3c02801d lui r2,0x801d
Line 644: Line 644:
 
  001c4950: 90630000 lbu r3,0x0000(r3)
 
  001c4950: 90630000 lbu r3,0x0000(r3)
 
  001c4954: 00000000 nop
 
  001c4954: 00000000 nop
  001c4958: 1464000b bne r3,r4,0x 001c4988
+
  001c4958: 1464000b bne r3,r4,0x001c4988
 
  001c495c: 34020004 ori r2,r0,0x0004
 
  001c495c: 34020004 ori r2,r0,0x0004
 
  001c4960: 3c02801d lui r2,0x801d
 
  001c4960: 3c02801d lui r2,0x801d
 
  001c4964: 8c42d064 lw r2,-0x2f9c(r2)
 
  001c4964: 8c42d064 lw r2,-0x2f9c(r2)
 
  001c4968: 00000000 nop
 
  001c4968: 00000000 nop
  001c496c: 14430006 bne r2,r3,0x 001c4988
+
  001c496c: 14430006 bne r2,r3,0x001c4988
 
  001c4970: 34020003 ori r2,r0,0x0003
 
  001c4970: 34020003 ori r2,r0,0x0003
 
  001c4974: 340a0002 ori r10,r0,0x0002
 
  001c4974: 340a0002 ori r10,r0,0x0002
 
  001c4978: 3c01801d lui r1,0x801d
 
  001c4978: 3c01801d lui r1,0x801d
 
  001c497c: ac2ad070 sw r10,-0x2f90(r1)
 
  001c497c: ac2ad070 sw r10,-0x2f90(r1)
  001c4980: 08071264 j 0x 001c4990
+
  001c4980: 08071264 j 0x001c4990
 
  001c4984: 00000000 nop
 
  001c4984: 00000000 nop
 
  001c4988: 3c01801d lui r1,0x801d
 
  001c4988: 3c01801d lui r1,0x801d
Line 661: Line 661:
 
  001c4994: 3c04801e lui r4,0x801e
 
  001c4994: 3c04801e lui r4,0x801e
 
  001c4998: 30420800 andi r2,r2,0x0800
 
  001c4998: 30420800 andi r2,r2,0x0800
  001c499c: 10400095 beq r2,r0,0x 001c4bf4
+
  001c499c: 10400095 beq r2,r0,0x001c4bf4
 
  001c49a0: 8c84cc7c lw r4,-0x3384(r4)
 
  001c49a0: 8c84cc7c lw r4,-0x3384(r4)
 
  001c49a4: 8c22d058 lw r2,-0x2fa8(r1)
 
  001c49a4: 8c22d058 lw r2,-0x2fa8(r1)
 
  001c49a8: 00000000 nop
 
  001c49a8: 00000000 nop
 
  001c49ac: 00441021 addu r2,r2,r4
 
  001c49ac: 00441021 addu r2,r2,r4
  001c49b0: 14400015 bne r2,r0,0x 001c4a08
+
  001c49b0: 14400015 bne r2,r0,0x001c4a08
  001c49b4: 34020085 ori r2,r0,0x0085
+
  001c49b4: 34020085 ori r2,r0,0x0085             # Set sound effect to play: 0x85, saved at 001c4a0c
 
  001c49b8: 3404000d ori r4,r0,0x000d
 
  001c49b8: 3404000d ori r4,r0,0x000d
 
  001c49bc: 3c058014 lui r5,0x8014
 
  001c49bc: 3c058014 lui r5,0x8014
 
  001c49c0: 24a5b280 addiu r5,r5,0xb280
 
  001c49c0: 24a5b280 addiu r5,r5,0xb280
  001c49c4: 340b0005 ori r11,r0,0x0005
+
  001c49c4: 340b0005 ori r11,r0,0x0005           # Set sound effect to play: 0x05
 
  001c49c8: 3c10801d lui r16,0x801d
 
  001c49c8: 3c10801d lui r16,0x801d
 
  001c49cc: 2610d178 addiu r16,r16,0xd178
 
  001c49cc: 2610d178 addiu r16,r16,0xd178
 
  001c49d0: 2402900b addiu r2,r0,0x900b
 
  001c49d0: 2402900b addiu r2,r0,0x900b
 
  001c49d4: 3c018016 lui r1,0x8016
 
  001c49d4: 3c018016 lui r1,0x8016
  001c49d8: ac2b5fb4 sw r11,0x5fb4(r1)
+
  001c49d8: ac2b5fb4 sw r11,0x5fb4(r1)           # Save sound effect ID to play: 0x05, Invalid
  001c49dc: 0c053228 jal 0x0014c8a0
+
  001c49dc: 0c053228 jal 0x0014c8a0               # [[Initialize Thread]]
 
  001c49e0: a6020000 sh r2,0x0000(r16)
 
  001c49e0: a6020000 sh r2,0x0000(r16)
 
  001c49e4: 3404000d ori r4,r0,0x000d
 
  001c49e4: 3404000d ori r4,r0,0x000d
 
  001c49e8: 2605ffe4 addiu r5,r16,0xffe4
 
  001c49e8: 2605ffe4 addiu r5,r16,0xffe4
 
  001c49ec: 00003021 addu r6,r0,r0
 
  001c49ec: 00003021 addu r6,r0,r0
  001c49f0: 0c05328e jal 0x0014ca38
+
  001c49f0: 0c05328e jal 0x0014ca38               # [[Store Thread Function Parameters]]
 
  001c49f4: 00003821 addu r7,r0,r0
 
  001c49f4: 00003821 addu r7,r0,r0
  001c49f8: 0c053274 jal 0x0014c9d0
+
  001c49f8: 0c053274 jal 0x0014c9d0               # [[Wait For Thread]]
 
  001c49fc: 3404000d ori r4,r0,0x000d
 
  001c49fc: 3404000d ori r4,r0,0x000d
  001c4a00: 080712fd j 0x 001c4bf4
+
  001c4a00: 080712fd j 0x001c4bf4
 
  001c4a04: 00000000 nop
 
  001c4a04: 00000000 nop
 
  001c4a08: 3c018016 lui r1,0x8016
 
  001c4a08: 3c018016 lui r1,0x8016
  001c4a0c: ac225fb4 sw r2,0x5fb4(r1)
+
  001c4a0c: ac225fb4 sw r2,0x5fb4(r1)            # Save sound effect ID to play: 0x85, Crystal Pickup (Pressed Start)
 
  001c4a10: 34020007 ori r2,r0,0x0007
 
  001c4a10: 34020007 ori r2,r0,0x0007
 
  001c4a14: 3c01801d lui r1,0x801d
 
  001c4a14: 3c01801d lui r1,0x801d
 
  001c4a18: a022f5f4 sb r2,-0x0a0c(r1)
 
  001c4a18: a022f5f4 sb r2,-0x0a0c(r1)
  001c4a1c: 0c04ed64 jal 0x0013b590
+
  001c4a1c: 0c04ed64 jal 0x0013b590               # [[Get Script Variable]]
  001c4a20: 34040034 ori r4,r0,0x0034
+
  001c4a20: 34040034 ori r4,r0,0x0034             # Var 0x34: Number of Squads
 
  001c4a24: 3c03801e lui r3,0x801e
 
  001c4a24: 3c03801e lui r3,0x801e
 
  001c4a28: 8c63cc7c lw r3,-0x3384(r3)
 
  001c4a28: 8c63cc7c lw r3,-0x3384(r3)
  001c4a2c: 2442ffff addiu r2,r2,0xffff
+
  001c4a2c: 2442ffff addiu r2,r2,0xffff           # r2 = Number of Squads -1
  001c4a30: 1043002a beq r2,r3,0x 001c4adc
+
  001c4a30: 1043002a beq r2,r3,0x001c4adc        # Branch if only one squad
 
  001c4a34: 00000000 nop
 
  001c4a34: 00000000 nop
 
  001c4a38: 3c03801d lui r3,0x801d
 
  001c4a38: 3c03801d lui r3,0x801d
Line 706: Line 706:
 
  001c4a48: 00000000 nop
 
  001c4a48: 00000000 nop
 
  001c4a4c: 0043102a slt r2,r2,r3
 
  001c4a4c: 0043102a slt r2,r2,r3
  001c4a50: 10400022 beq r2,r0,0x 001c4adc
+
  001c4a50: 10400022 beq r2,r0,0x001c4adc
 
  001c4a54: 340a0005 ori r10,r0,0x0005
 
  001c4a54: 340a0005 ori r10,r0,0x0005
 
  001c4a58: 3c01801d lui r1,0x801d
 
  001c4a58: 3c01801d lui r1,0x801d
Line 716: Line 716:
 
  001c4a70: 00000000 nop
 
  001c4a70: 00000000 nop
 
  001c4a74: 2c420002 sltiu r2,r2,0x0002
 
  001c4a74: 2c420002 sltiu r2,r2,0x0002
  001c4a78: 10400002 beq r2,r0,0x 001c4a84
+
  001c4a78: 10400002 beq r2,r0,0x001c4a84
 
  001c4a7c: 00000000 nop
 
  001c4a7c: 00000000 nop
 
  001c4a80: a0760000 sb r22,0x0000(r3)
 
  001c4a80: a0760000 sb r22,0x0000(r3)
 
  001c4a84: 24630001 addiu r3,r3,0x0001
 
  001c4a84: 24630001 addiu r3,r3,0x0001
 
  001c4a88: 0064102a slt r2,r3,r4
 
  001c4a88: 0064102a slt r2,r3,r4
  001c4a8c: 1440fff7 bne r2,r0,0x 001c4a6c
+
  001c4a8c: 1440fff7 bne r2,r0,0x001c4a6c
 
  001c4a90: 00002821 addu r5,r0,r0
 
  001c4a90: 00002821 addu r5,r0,r0
 
  001c4a94: 3404000e ori r4,r0,0x000e
 
  001c4a94: 3404000e ori r4,r0,0x000e
 
  001c4a98: 00003021 addu r6,r0,r0
 
  001c4a98: 00003021 addu r6,r0,r0
  001c4a9c: 0c05328e jal 0x0014ca38
+
  001c4a9c: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c4aa0: 34070001 ori r7,r0,0x0001
 
  001c4aa0: 34070001 ori r7,r0,0x0001
 
  001c4aa4: 00009021 addu r18,r0,r0
 
  001c4aa4: 00009021 addu r18,r0,r0
Line 734: Line 734:
 
  001c4ab8: 3c01801d lui r1,0x801d
 
  001c4ab8: 3c01801d lui r1,0x801d
 
  001c4abc: ac22d078 sw r2,-0x2f88(r1)
 
  001c4abc: ac22d078 sw r2,-0x2f88(r1)
  001c4ac0: 0c0532a0 jal 0x0014ca80
+
  001c4ac0: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c4ac4: 26520008 addiu r18,r18,0x0008
 
  001c4ac4: 26520008 addiu r18,r18,0x0008
 
  001c4ac8: 2a420100 slti r2,r18,0x0100
 
  001c4ac8: 2a420100 slti r2,r18,0x0100
  001c4acc: 1440fff6 bne r2,r0,0x 001c4aa8
+
  001c4acc: 1440fff6 bne r2,r0,0x001c4aa8
 
  001c4ad0: 02e02821 addu r5,r23,r0
 
  001c4ad0: 02e02821 addu r5,r23,r0
  001c4ad4: 080712de j 0x 001c4b78
+
  001c4ad4: 080712de j 0x001c4b78
 
  001c4ad8: 00000000 nop
 
  001c4ad8: 00000000 nop
 
  001c4adc: 34040004 ori r4,r0,0x0004
 
  001c4adc: 34040004 ori r4,r0,0x0004
Line 747: Line 747:
 
  001c4aec: 3c058014 lui r5,0x8014
 
  001c4aec: 3c058014 lui r5,0x8014
 
  001c4af0: 24a5b280 addiu r5,r5,0xb280
 
  001c4af0: 24a5b280 addiu r5,r5,0xb280
  001c4af4: 0c053228 jal 0x0014c8a0
+
  001c4af4: 0c053228 jal 0x0014c8a0             # [[Initialize Thread]]
 
  001c4af8: ae160000 sw r22,0x0000(r16)
 
  001c4af8: ae160000 sw r22,0x0000(r16)
 
  001c4afc: 34040004 ori r4,r0,0x0004
 
  001c4afc: 34040004 ori r4,r0,0x0004
Line 754: Line 754:
 
  001c4b08: 8ca53cb8 lw r5,0x3cb8(r5)
 
  001c4b08: 8ca53cb8 lw r5,0x3cb8(r5)
 
  001c4b0c: 00003821 addu r7,r0,r0
 
  001c4b0c: 00003821 addu r7,r0,r0
  001c4b10: 0c05328e jal 0x0014ca38
+
  001c4b10: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c4b14: 24a500b4 addiu r5,r5,0x00b4
 
  001c4b14: 24a500b4 addiu r5,r5,0x00b4
  001c4b18: 0c053274 jal 0x0014c9d0
+
  001c4b18: 0c053274 jal 0x0014c9d0                     # [[Wait For Thread]]
 
  001c4b1c: 34040004 ori r4,r0,0x0004
 
  001c4b1c: 34040004 ori r4,r0,0x0004
  001c4b20: 0c053274 jal 0x0014c9d0
+
  001c4b20: 0c053274 jal 0x0014c9d0                     # [[Wait For Thread]]
 
  001c4b24: 34040003 ori r4,r0,0x0003
 
  001c4b24: 34040003 ori r4,r0,0x0003
 
  001c4b28: 3c02801e lui r2,0x801e
 
  001c4b28: 3c02801e lui r2,0x801e
 
  001c4b2c: 8442cbc4 lh r2,-0x343c(r2)
 
  001c4b2c: 8442cbc4 lh r2,-0x343c(r2)
 
  001c4b30: 00000000 nop
 
  001c4b30: 00000000 nop
  001c4b34: 1440fead bne r2,r0,0x 001c45ec
+
  001c4b34: 1440fead bne r2,r0,0x001c45ec
 
  001c4b38: ae120000 sw r18,0x0000(r16)
 
  001c4b38: ae120000 sw r18,0x0000(r16)
 
  001c4b3c: 3c05801e lui r5,0x801e
 
  001c4b3c: 3c05801e lui r5,0x801e
Line 776: Line 776:
 
  001c4b60: 000420c0 sll r4,r4,0x03
 
  001c4b60: 000420c0 sll r4,r4,0x03
 
  001c4b64: 00822021 addu r4,r4,r2
 
  001c4b64: 00822021 addu r4,r4,r2
  001c4b68: 0c052fd5 jal 0x0014bf54
+
  001c4b68: 0c052fd5 jal 0x0014bf54                     # [[Copy Bytes (0x14bf54)]]
 
  001c4b6c: 008b2021 addu r4,r4,r11
 
  001c4b6c: 008b2021 addu r4,r4,r11
  001c4b70: 080714ee j 0x 001c53b8
+
  001c4b70: 080714ee j 0x001c53b8
 
  001c4b74: 00000000 nop
 
  001c4b74: 00000000 nop
 
  001c4b78: 34060019 ori r6,r0,0x0019
 
  001c4b78: 34060019 ori r6,r0,0x0019
Line 789: Line 789:
 
  001c4b94: 000420c0 sll r4,r4,0x03
 
  001c4b94: 000420c0 sll r4,r4,0x03
 
  001c4b98: 00822021 addu r4,r4,r2
 
  001c4b98: 00822021 addu r4,r4,r2
  001c4b9c: 0c052fd5 jal 0x0014bf54
+
  001c4b9c: 0c052fd5 jal 0x0014bf54                     # [[Copy Bytes (0x14bf54)]]
 
  001c4ba0: 008a2021 addu r4,r4,r10
 
  001c4ba0: 008a2021 addu r4,r4,r10
 
  001c4ba4: 3c03801e lui r3,0x801e
 
  001c4ba4: 3c03801e lui r3,0x801e
Line 795: Line 795:
 
  001c4bac: 00000000 nop
 
  001c4bac: 00000000 nop
 
  001c4bb0: 28620003 slti r2,r3,0x0003
 
  001c4bb0: 28620003 slti r2,r3,0x0003
  001c4bb4: 1040000a beq r2,r0,0x 001c4be0
+
  001c4bb4: 1040000a beq r2,r0,0x001c4be0
 
  001c4bb8: 02e02021 addu r4,r23,r0
 
  001c4bb8: 02e02021 addu r4,r23,r0
 
  001c4bbc: 00032840 sll r5,r3,0x01
 
  001c4bbc: 00032840 sll r5,r3,0x01
Line 804: Line 804:
 
  001c4bd0: 256bcc19 addiu r11,r11,0xcc19
 
  001c4bd0: 256bcc19 addiu r11,r11,0xcc19
 
  001c4bd4: 00ab2821 addu r5,r5,r11
 
  001c4bd4: 00ab2821 addu r5,r5,r11
  001c4bd8: 0c052fd5 jal 0x0014bf54
+
  001c4bd8: 0c052fd5 jal 0x0014bf54                     # [[Copy Bytes (0x14bf54)]]
 
  001c4bdc: 34060019 ori r6,r0,0x0019
 
  001c4bdc: 34060019 ori r6,r0,0x0019
 
  001c4be0: 340a0002 ori r10,r0,0x0002
 
  001c4be0: 340a0002 ori r10,r0,0x0002
 
  001c4be4: 3c01801d lui r1,0x801d
 
  001c4be4: 3c01801d lui r1,0x801d
 
  001c4be8: ac20d074 sw r0,-0x2f8c(r1)
 
  001c4be8: ac20d074 sw r0,-0x2f8c(r1)
  001c4bec: 080714ee j 0x 001c53b8
+
  001c4bec: 080714ee j 0x001c53b8
 
  001c4bf0: afaa0010 sw r10,0x0010(r29)
 
  001c4bf0: afaa0010 sw r10,0x0010(r29)
 
  001c4bf4: 8e620000 lw r2,0x0000(r19)
 
  001c4bf4: 8e620000 lw r2,0x0000(r19)
 
  001c4bf8: 00000000 nop
 
  001c4bf8: 00000000 nop
 
  001c4bfc: 30420040 andi r2,r2,0x0040
 
  001c4bfc: 30420040 andi r2,r2,0x0040
  001c4c00: 10400052 beq r2,r0,0x 001c4d4c
+
  001c4c00: 10400052 beq r2,r0,0x001c4d4c
 
  001c4c04: 00000000 nop
 
  001c4c04: 00000000 nop
 
  001c4c08: 3c02801d lui r2,0x801d
 
  001c4c08: 3c02801d lui r2,0x801d
 
  001c4c0c: 8c42d074 lw r2,-0x2f8c(r2)
 
  001c4c0c: 8c42d074 lw r2,-0x2f8c(r2)
 
  001c4c10: 00000000 nop
 
  001c4c10: 00000000 nop
  001c4c14: 1440004d bne r2,r0,0x 001c4d4c
+
  001c4c14: 1440004d bne r2,r0,0x001c4d4c
 
  001c4c18: 00000000 nop
 
  001c4c18: 00000000 nop
 
  001c4c1c: 3c02801e lui r2,0x801e
 
  001c4c1c: 3c02801e lui r2,0x801e
 
  001c4c20: 8c42cc7c lw r2,-0x3384(r2)
 
  001c4c20: 8c42cc7c lw r2,-0x3384(r2)
 
  001c4c24: 00000000 nop
 
  001c4c24: 00000000 nop
  001c4c28: 10400048 beq r2,r0,0x 001c4d4c
+
  001c4c28: 10400048 beq r2,r0,0x001c4d4c
  001c4c2c: 340b0002 ori r11,r0,0x0002
+
  001c4c2c: 340b0002 ori r11,r0,0x0002           # Set sound effect ID to play: 0x02
 
  001c4c30: 3c03801d lui r3,0x801d
 
  001c4c30: 3c03801d lui r3,0x801d
 
  001c4c34: 2463f5f0 addiu r3,r3,0xf5f0
 
  001c4c34: 2463f5f0 addiu r3,r3,0xf5f0
 
  001c4c38: 24640005 addiu r4,r3,0x0005
 
  001c4c38: 24640005 addiu r4,r3,0x0005
 
  001c4c3c: 3c018016 lui r1,0x8016
 
  001c4c3c: 3c018016 lui r1,0x8016
  001c4c40: ac2b5fb4 sw r11,0x5fb4(r1)
+
  001c4c40: ac2b5fb4 sw r11,0x5fb4(r1)           # Save sound effect ID to play: 0x02, Cancel Selection
 
  001c4c44: 340a0005 ori r10,r0,0x0005
 
  001c4c44: 340a0005 ori r10,r0,0x0005
 
  001c4c48: 3c01801d lui r1,0x801d
 
  001c4c48: 3c01801d lui r1,0x801d
Line 837: Line 837:
 
  001c4c54: 00000000 nop
 
  001c4c54: 00000000 nop
 
  001c4c58: 2c420002 sltiu r2,r2,0x0002
 
  001c4c58: 2c420002 sltiu r2,r2,0x0002
  001c4c5c: 10400002 beq r2,r0,0x 001c4c68
+
  001c4c5c: 10400002 beq r2,r0,0x001c4c68
 
  001c4c60: 00000000 nop
 
  001c4c60: 00000000 nop
 
  001c4c64: a0760000 sb r22,0x0000(r3)
 
  001c4c64: a0760000 sb r22,0x0000(r3)
 
  001c4c68: 24630001 addiu r3,r3,0x0001
 
  001c4c68: 24630001 addiu r3,r3,0x0001
 
  001c4c6c: 0064102a slt r2,r3,r4
 
  001c4c6c: 0064102a slt r2,r3,r4
  001c4c70: 1440fff7 bne r2,r0,0x 001c4c50
+
  001c4c70: 1440fff7 bne r2,r0,0x001c4c50
 
  001c4c74: 00002821 addu r5,r0,r0
 
  001c4c74: 00002821 addu r5,r0,r0
 
  001c4c78: 3404000e ori r4,r0,0x000e
 
  001c4c78: 3404000e ori r4,r0,0x000e
 
  001c4c7c: 00003021 addu r6,r0,r0
 
  001c4c7c: 00003021 addu r6,r0,r0
  001c4c80: 0c05328e jal 0x0014ca38
+
  001c4c80: 0c05328e jal 0x0014ca38               # [[Store Thread Function Parameters]]
 
  001c4c84: 34070001 ori r7,r0,0x0001
 
  001c4c84: 34070001 ori r7,r0,0x0001
 
  001c4c88: 00009021 addu r18,r0,r0
 
  001c4c88: 00009021 addu r18,r0,r0
Line 855: Line 855:
 
  001c4c9c: 3c01801d lui r1,0x801d
 
  001c4c9c: 3c01801d lui r1,0x801d
 
  001c4ca0: ac22d078 sw r2,-0x2f88(r1)
 
  001c4ca0: ac22d078 sw r2,-0x2f88(r1)
  001c4ca4: 0c0532a0 jal 0x0014ca80
+
  001c4ca4: 0c0532a0 jal 0x0014ca80               # [[Switch To Next Thread]]
 
  001c4ca8: 26520008 addiu r18,r18,0x0008
 
  001c4ca8: 26520008 addiu r18,r18,0x0008
 
  001c4cac: 2a420100 slti r2,r18,0x0100
 
  001c4cac: 2a420100 slti r2,r18,0x0100
  001c4cb0: 1440fff6 bne r2,r0,0x 001c4c8c
+
  001c4cb0: 1440fff6 bne r2,r0,0x001c4c8c
 
  001c4cb4: 02e02821 addu r5,r23,r0
 
  001c4cb4: 02e02821 addu r5,r23,r0
 
  001c4cb8: 34060019 ori r6,r0,0x0019
 
  001c4cb8: 34060019 ori r6,r0,0x0019
Line 869: Line 869:
 
  001c4cd4: 000420c0 sll r4,r4,0x03
 
  001c4cd4: 000420c0 sll r4,r4,0x03
 
  001c4cd8: 00822021 addu r4,r4,r2
 
  001c4cd8: 00822021 addu r4,r4,r2
  001c4cdc: 0c052fd5 jal 0x0014bf54
+
  001c4cdc: 0c052fd5 jal 0x0014bf54               # [[Copy Bytes (0x14bf54)]]
 
  001c4ce0: 008b2021 addu r4,r4,r11
 
  001c4ce0: 008b2021 addu r4,r4,r11
 
  001c4ce4: 02e02021 addu r4,r23,r0
 
  001c4ce4: 02e02021 addu r4,r23,r0
Line 884: Line 884:
 
  001c4d10: 3c01801e lui r1,0x801e
 
  001c4d10: 3c01801e lui r1,0x801e
 
  001c4d14: ac22cc7c sw r2,-0x3384(r1)
 
  001c4d14: ac22cc7c sw r2,-0x3384(r1)
  001c4d18: 0c052fd5 jal 0x0014bf54
+
  001c4d18: 0c052fd5 jal 0x0014bf54                     # [[Copy Bytes (0x14bf54)]]
 
  001c4d1c: 00aa2821 addu r5,r5,r10
 
  001c4d1c: 00aa2821 addu r5,r5,r10
 
  001c4d20: 3c02801e lui r2,0x801e
 
  001c4d20: 3c02801e lui r2,0x801e
Line 895: Line 895:
 
  001c4d3c: 3c01801e lui r1,0x801e
 
  001c4d3c: 3c01801e lui r1,0x801e
 
  001c4d40: ac22cc7c sw r2,-0x3384(r1)
 
  001c4d40: ac22cc7c sw r2,-0x3384(r1)
  001c4d44: 080714ee j 0x 001c53b8
+
  001c4d44: 080714ee j 0x001c53b8
 
  001c4d48: 00000000 nop
 
  001c4d48: 00000000 nop
 
  001c4d4c: 8e620000 lw r2,0x0000(r19)
 
  001c4d4c: 8e620000 lw r2,0x0000(r19)
 
  001c4d50: 00000000 nop
 
  001c4d50: 00000000 nop
 
  001c4d54: 30420020 andi r2,r2,0x0020
 
  001c4d54: 30420020 andi r2,r2,0x0020
  001c4d58: 1040005c beq r2,r0,0x 001c4ecc
+
  001c4d58: 1040005c beq r2,r0,0x001c4ecc
 
  001c4d5c: 00000000 nop
 
  001c4d5c: 00000000 nop
 
  001c4d60: 3c02801d lui r2,0x801d
 
  001c4d60: 3c02801d lui r2,0x801d
 
  001c4d64: 8c42d074 lw r2,-0x2f8c(r2)
 
  001c4d64: 8c42d074 lw r2,-0x2f8c(r2)
 
  001c4d68: 00000000 nop
 
  001c4d68: 00000000 nop
  001c4d6c: 14400059 bne r2,r0,0x 001c4ed4
+
  001c4d6c: 14400059 bne r2,r0,0x001c4ed4
 
  001c4d70: 00121880 sll r3,r18,0x02
 
  001c4d70: 00121880 sll r3,r18,0x02
 
  001c4d74: 00751021 addu r2,r3,r21
 
  001c4d74: 00751021 addu r2,r3,r21
Line 919: Line 919:
 
  001c4d9c: 90420000 lbu r2,0x0000(r2)
 
  001c4d9c: 90420000 lbu r2,0x0000(r2)
 
  001c4da0: 00000000 nop
 
  001c4da0: 00000000 nop
  001c4da4: 10400047 beq r2,r0,0x 001c4ec4
+
  001c4da4: 10400047 beq r2,r0,0x001c4ec4
 
  001c4da8: 00771021 addu r2,r3,r23
 
  001c4da8: 00771021 addu r2,r3,r23
 
  001c4dac: 00509021 addu r18,r2,r16
 
  001c4dac: 00509021 addu r18,r2,r16
 
  001c4db0: 92420000 lbu r2,0x0000(r18)
 
  001c4db0: 92420000 lbu r2,0x0000(r18)
 
  001c4db4: 340a00ff ori r10,r0,0x00ff
 
  001c4db4: 340a00ff ori r10,r0,0x00ff
  001c4db8: 144a0039 bne r2,r10,0x 001c4ea0
+
  001c4db8: 144a0039 bne r2,r10,0x001c4ea0
  001c4dbc: 3403003c ori r3,r0,0x003c
+
  001c4dbc: 3403003c ori r3,r0,0x003c             # Set sound effect ID to play: 0x3C, saved at 001c4eac
 
  001c4dc0: 3c04801d lui r4,0x801d
 
  001c4dc0: 3c04801d lui r4,0x801d
 
  001c4dc4: 8c84d064 lw r4,-0x2f9c(r4)
 
  001c4dc4: 8c84d064 lw r4,-0x2f9c(r4)
  001c4dc8: 0c070f6d jal 0x 001c3db4
+
  001c4dc8: 0c070f6d jal 0x001c3db4              # [[ATTACK.OUT 001c3db4 - 001c3e00]]
 
  001c4dcc: 00000000 nop
 
  001c4dcc: 00000000 nop
  001c4dd0: 1440002b bne r2,r0,0x 001c4e80
+
  001c4dd0: 1440002b bne r2,r0,0x001c4e80
 
  001c4dd4: 02002021 addu r4,r16,r0
 
  001c4dd4: 02002021 addu r4,r16,r0
 
  001c4dd8: 3c02801d lui r2,0x801d
 
  001c4dd8: 3c02801d lui r2,0x801d
  001c4ddc: 8c42d274 lw r2,-0x2d8c(r2)
+
  001c4ddc: 8c42d274 lw r2,-0x2d8c(r2)           # r2 = Pointer to Current Squad Data
 
  001c4de0: 00000000 nop
 
  001c4de0: 00000000 nop
  001c4de4: 90430008 lbu r3,0x0008(r2)
+
  001c4de4: 90430008 lbu r3,0x0008(r2)           # r3 = Current Squad maximum number of deployed units
 
  001c4de8: 3c02801d lui r2,0x801d
 
  001c4de8: 3c02801d lui r2,0x801d
  001c4dec: 8c42d058 lw r2,-0x2fa8(r2)
+
  001c4dec: 8c42d058 lw r2,-0x2fa8(r2)           # *0x001CD058: Number of units set to be deployed for this squad
 
  001c4df0: 00000000 nop
 
  001c4df0: 00000000 nop
  001c4df4: 0043102a slt r2,r2,r3
+
  001c4df4: 0043102a slt r2,r2,r3                 # r2 = 0x01 if number of units deployed is less than the max
  001c4df8: 1040000e beq r2,r0,0x 001c4e34
+
  001c4df8: 1040000e beq r2,r0,0x001c4e34        # Branch if the maximum has been reached for this squad
 
  001c4dfc: 3404000d ori r4,r0,0x000d
 
  001c4dfc: 3404000d ori r4,r0,0x000d
 
  001c4e00: 3c02801d lui r2,0x801d
 
  001c4e00: 3c02801d lui r2,0x801d
 
  001c4e04: 9042d064 lbu r2,-0x2f9c(r2)
 
  001c4e04: 9042d064 lbu r2,-0x2f9c(r2)
 
  001c4e08: 3c018016 lui r1,0x8016
 
  001c4e08: 3c018016 lui r1,0x8016
  001c4e0c: ac365fb4 sw r22,0x5fb4(r1)
+
  001c4e0c: ac365fb4 sw r22,0x5fb4(r1)           # Set sound effect ID to play: 0x01, Confirm Selection
 
  001c4e10: a2420000 sb r2,0x0000(r18)
 
  001c4e10: a2420000 sb r2,0x0000(r18)
 
  001c4e14: 3c02801d lui r2,0x801d
 
  001c4e14: 3c02801d lui r2,0x801d
Line 953: Line 953:
 
  001c4e24: 3c01801d lui r1,0x801d
 
  001c4e24: 3c01801d lui r1,0x801d
 
  001c4e28: ac22d058 sw r2,-0x2fa8(r1)
 
  001c4e28: ac22d058 sw r2,-0x2fa8(r1)
  001c4e2c: 08071450 j 0x 001c5140
+
  001c4e2c: 08071450 j 0x001c5140
 
  001c4e30: 00000000 nop
 
  001c4e30: 00000000 nop
  001c4e34: 3c058014 lui r5,0x8014
+
  001c4e34: 3c058014 lui r5,0x8014               # Trying to deploy more than the maximum number
 
  001c4e38: 24a5b280 addiu r5,r5,0xb280
 
  001c4e38: 24a5b280 addiu r5,r5,0xb280
  001c4e3c: 340b0005 ori r11,r0,0x0005
+
  001c4e3c: 340b0005 ori r11,r0,0x0005           # Set sound effect ID to play: 0x05
 
  001c4e40: 3c10801d lui r16,0x801d
 
  001c4e40: 3c10801d lui r16,0x801d
 
  001c4e44: 2610d178 addiu r16,r16,0xd178
 
  001c4e44: 2610d178 addiu r16,r16,0xd178
 
  001c4e48: 2402900c addiu r2,r0,0x900c
 
  001c4e48: 2402900c addiu r2,r0,0x900c
  001c4e4c: 3c018016 lui r1,0x8016
+
  001c4e4c: 3c018016 lui r1,0x8016               # 001c4e3c: 340b0005 ori r11,r0,0x0005
  001c4e50: ac2b5fb4 sw r11,0x5fb4(r1)
+
  001c4e50: ac2b5fb4 sw r11,0x5fb4(r1)           # Save sound effect ID to play: 0x05, Invalid
  001c4e54: 0c053228 jal 0x0014c8a0
+
  001c4e54: 0c053228 jal 0x0014c8a0               # [[Initialize Thread]]
 
  001c4e58: a6020000 sh r2,0x0000(r16)
 
  001c4e58: a6020000 sh r2,0x0000(r16)
 
  001c4e5c: 3404000d ori r4,r0,0x000d
 
  001c4e5c: 3404000d ori r4,r0,0x000d
 
  001c4e60: 2605ffe4 addiu r5,r16,0xffe4
 
  001c4e60: 2605ffe4 addiu r5,r16,0xffe4
 
  001c4e64: 00003021 addu r6,r0,r0
 
  001c4e64: 00003021 addu r6,r0,r0
  001c4e68: 0c05328e jal 0x0014ca38
+
  001c4e68: 0c05328e jal 0x0014ca38               # [[Store Thread Function Parameters]]
 
  001c4e6c: 00003821 addu r7,r0,r0
 
  001c4e6c: 00003821 addu r7,r0,r0
  001c4e70: 0c053274 jal 0x0014c9d0
+
  001c4e70: 0c053274 jal 0x0014c9d0               # [[Wait For Thread]]
 
  001c4e74: 3404000d ori r4,r0,0x000d
 
  001c4e74: 3404000d ori r4,r0,0x000d
  001c4e78: 08071450 j 0x 001c5140
+
  001c4e78: 08071450 j 0x001c5140
 
  001c4e7c: 00000000 nop
 
  001c4e7c: 00000000 nop
 
  001c4e80: 3c06801d lui r6,0x801d
 
  001c4e80: 3c06801d lui r6,0x801d
 
  001c4e84: 8cc6d064 lw r6,-0x2f9c(r6)
 
  001c4e84: 8cc6d064 lw r6,-0x2f9c(r6)
 
  001c4e88: 3c018016 lui r1,0x8016
 
  001c4e88: 3c018016 lui r1,0x8016
  001c4e8c: ac365fb4 sw r22,0x5fb4(r1)
+
  001c4e8c: ac365fb4 sw r22,0x5fb4(r1)           # Save sound effect ID to play: 0x01, Confirm Selection
  001c4e90: 0c070f97 jal 0x 001c3e5c
+
  001c4e90: 0c070f97 jal 0x001c3e5c              # [[ATTACK.OUT 001c3e5c - 001c3ec8]]
 
  001c4e94: 02202821 addu r5,r17,r0
 
  001c4e94: 02202821 addu r5,r17,r0
  001c4e98: 08071450 j 0x 001c5140
+
  001c4e98: 08071450 j 0x001c5140
 
  001c4e9c: 00000000 nop
 
  001c4e9c: 00000000 nop
 
  001c4ea0: 8ea20000 lw r2,0x0000(r21)
 
  001c4ea0: 8ea20000 lw r2,0x0000(r21)
 
  001c4ea4: 8e840000 lw r4,0x0000(r20)
 
  001c4ea4: 8e840000 lw r4,0x0000(r20)
 
  001c4ea8: 3c018016 lui r1,0x8016
 
  001c4ea8: 3c018016 lui r1,0x8016
  001c4eac: ac235fb4 sw r3,0x5fb4(r1)
+
  001c4eac: ac235fb4 sw r3,0x5fb4(r1)             # Save sound effect ID to play: 0x3C, Menu Cursor Move 1
 
  001c4eb0: 3c01801d lui r1,0x801d
 
  001c4eb0: 3c01801d lui r1,0x801d
 
  001c4eb4: ac36d074 sw r22,-0x2f8c(r1)
 
  001c4eb4: ac36d074 sw r22,-0x2f8c(r1)
 
  001c4eb8: aea20004 sw r2,0x0004(r21)
 
  001c4eb8: aea20004 sw r2,0x0004(r21)
  001c4ebc: 08071450 j 0x 001c5140
+
  001c4ebc: 08071450 j 0x001c5140
 
  001c4ec0: ae840004 sw r4,0x0004(r20)
 
  001c4ec0: ae840004 sw r4,0x0004(r20)
  001c4ec4: 0807144e j 0x 001c5138
+
  001c4ec4: 0807144e j 0x001c5138
 
  001c4ec8: 340a0005 ori r10,r0,0x0005
 
  001c4ec8: 340a0005 ori r10,r0,0x0005
 
  001c4ecc: 3c02801d lui r2,0x801d
 
  001c4ecc: 3c02801d lui r2,0x801d
 
  001c4ed0: 8c42d074 lw r2,-0x2f8c(r2)
 
  001c4ed0: 8c42d074 lw r2,-0x2f8c(r2)
 
  001c4ed4: 00000000 nop
 
  001c4ed4: 00000000 nop
  001c4ed8: 14560099 bne r2,r22,0x 001c5140
+
  001c4ed8: 14560099 bne r2,r22,0x001c5140
 
  001c4edc: 00121080 sll r2,r18,0x02
 
  001c4edc: 00121080 sll r2,r18,0x02
 
  001c4ee0: 00551821 addu r3,r2,r21
 
  001c4ee0: 00551821 addu r3,r2,r21
Line 1,004: Line 1,004:
 
  001c4ef0: 8c510000 lw r17,0x0000(r2)
 
  001c4ef0: 8c510000 lw r17,0x0000(r2)
 
  001c4ef4: 30620020 andi r2,r3,0x0020
 
  001c4ef4: 30620020 andi r2,r3,0x0020
  001c4ef8: 1040008b beq r2,r0,0x 001c5128
+
  001c4ef8: 1040008b beq r2,r0,0x001c5128
 
  001c4efc: 30620040 andi r2,r3,0x0040
 
  001c4efc: 30620040 andi r2,r3,0x0040
 
  001c4f00: 3c02801e lui r2,0x801e
 
  001c4f00: 3c02801e lui r2,0x801e
Line 1,014: Line 1,014:
 
  001c4f18: 90420000 lbu r2,0x0000(r2)
 
  001c4f18: 90420000 lbu r2,0x0000(r2)
 
  001c4f1c: 00000000 nop
 
  001c4f1c: 00000000 nop
  001c4f20: 1040007d beq r2,r0,0x 001c5118
+
  001c4f20: 1040007d beq r2,r0,0x001c5118
  001c4f24: 340b0005 ori r11,r0,0x0005
+
  001c4f24: 340b0005 ori r11,r0,0x0005           # Set sound effect to play: 0x05, saved at 001c511c
 
  001c4f28: 8ea30000 lw r3,0x0000(r21)
 
  001c4f28: 8ea30000 lw r3,0x0000(r21)
 
  001c4f2c: 8ea20004 lw r2,0x0004(r21)
 
  001c4f2c: 8ea20004 lw r2,0x0004(r21)
 
  001c4f30: 00000000 nop
 
  001c4f30: 00000000 nop
  001c4f34: 14620063 bne r3,r2,0x 001c50c4
+
  001c4f34: 14620063 bne r3,r2,0x001c50c4
 
  001c4f38: 00000000 nop
 
  001c4f38: 00000000 nop
 
  001c4f3c: 8e830000 lw r3,0x0000(r20)
 
  001c4f3c: 8e830000 lw r3,0x0000(r20)
 
  001c4f40: 8e820004 lw r2,0x0004(r20)
 
  001c4f40: 8e820004 lw r2,0x0004(r20)
 
  001c4f44: 00000000 nop
 
  001c4f44: 00000000 nop
  001c4f48: 1462005e bne r3,r2,0x 001c50c4
+
  001c4f48: 1462005e bne r3,r2,0x001c50c4
  001c4f4c: 00971021 addu r2,r4,r23
+
  001c4f4c: 00971021 addu r2,r4,r23               # r2 = r4 (ID of current row's starting tile) + r23 (starting address of deployed units on tiles)
  001c4f50: 00501021 addu r2,r2,r16
+
  001c4f50: 00501021 addu r2,r2,r16               # r2 = r2 + r16 (ID of current column in row)
  001c4f54: 90420000 lbu r2,0x0000(r2)
+
  001c4f54: 90420000 lbu r2,0x0000(r2)           # Load the Roster Slot ID of the unit on this tile.
  001c4f58: 00000000 nop
+
  001c4f58: 00000000 nop  
  001c4f5c: 1440001b bne r2,r0,0x 001c4fcc
+
  001c4f5c: 1440001b bne r2,r0,0x001c4fcc        # Branch if not Ramza.
  001c4f60: 00111080 sll r2,r17,0x02
+
  001c4f60: 00111080 sll r2,r17,0x02             # r2 = r17 * 4. r17 might be the Current Row?
  001c4f64: 0c04ed64 jal 0x0013b590
+
  001c4f64: 0c04ed64 jal 0x0013b590               # [[Get Script Variable]] Var 0x01FF: Ramza Mandatory
  001c4f68: 340401ff ori r4,r0,0x01ff
+
  001c4f68: 340401ff ori r4,r0,0x01ff  
  001c4f6c: 14560017 bne r2,r22,0x 001c4fcc
+
  001c4f6c: 14560017 bne r2,r22,0x001c4fcc        # Branch if Ramza is not mandatory. (r22 = 1)
  001c4f70: 00111080 sll r2,r17,0x02
+
  001c4f70: 00111080 sll r2,r17,0x02             # r2 = r17 * 4. r17 might be the Current Row?
  001c4f74: 3404000d ori r4,r0,0x000d
+
  001c4f74: 3404000d ori r4,r0,0x000d             # r4 = 0x0D: Thread ID
  001c4f78: 3c058014 lui r5,0x8014
+
  001c4f78: 3c058014 lui r5,0x8014  
  001c4f7c: 24a5b280 addiu r5,r5,0xb280
+
  001c4f7c: 24a5b280 addiu r5,r5,0xb280           # r5 = 0x8013b280. Function pointer for Initialize Thread?
  001c4f80: 340b0005 ori r11,r0,0x0005
+
  001c4f80: 340b0005 ori r11,r0,0x0005           # r11 = 0x05
  001c4f84: 3c10801d lui r16,0x801d
+
  001c4f84: 3c10801d lui r16,0x801d  
  001c4f88: 2610d178 addiu r16,r16,0xd178
+
  001c4f88: 2610d178 addiu r16,r16,0xd178         # r16 = 0x801cd178. Purpose unknown.
  001c4f8c: 2402900d addiu r2,r0,0x900d
+
  001c4f8c: 2402900d addiu r2,r0,0x900d           # r2 = 0x900D. Determines which message to use. Change 900D to 900F to get "No Saved Data", for example.
  001c4f90: 3c018016 lui r1,0x8016
+
  001c4f90: 3c018016 lui r1,0x8016  
  001c4f94: ac2b5fb4 sw r11,0x5fb4(r1)
+
  001c4f94: ac2b5fb4 sw r11,0x5fb4(r1)           # Save sound effect ID to play: 0x05, Invalid
  001c4f98: 0c053228 jal 0x0014c8a0
+
  001c4f98: 0c053228 jal 0x0014c8a0               # [[Initialize Thread]] (0x0D)
  001c4f9c: a6020000 sh r2,0x0000(r16)
+
  001c4f9c: a6020000 sh r2,0x0000(r16)           # Save Message ID to 0x801CD178.
  001c4fa0: 3404000d ori r4,r0,0x000d
+
  001c4fa0: 3404000d ori r4,r0,0x000d             # r4 = 0x0D
  001c4fa4: 2605ffe4 addiu r5,r16,0xffe4
+
  001c4fa4: 2605ffe4 addiu r5,r16,0xffe4         # r5 = r16 - 0x1C  = 0x801CD15C. Purpose unknown.
  001c4fa8: 00003021 addu r6,r0,r0
+
  001c4fa8: 00003021 addu r6,r0,r0               # r6 = 0
  001c4fac: 0c05328e jal 0x0014ca38
+
  001c4fac: 0c05328e jal 0x0014ca38               # [[Store Thread Function Parameters]]
  001c4fb0: 00003821 addu r7,r0,r0
+
  001c4fb0: 00003821 addu r7,r0,r0               # r7 = 0
  001c4fb4: 0c053274 jal 0x0014c9d0
+
  001c4fb4: 0c053274 jal 0x0014c9d0               # [[Wait For Thread]]
  001c4fb8: 3404000d ori r4,r0,0x000d
+
  001c4fb8: 3404000d ori r4,r0,0x000d             # r4 = 0x0D
  001c4fbc: 8ea20004 lw r2,0x0004(r21)
+
  001c4fbc: 8ea20004 lw r2,0x0004(r21)           # During test: r2 ends up as 0, r21 ends up as 0x801CD24C. Purpose unknown.
  001c4fc0: 8e830004 lw r3,0x0004(r20)
+
  001c4fc0: 8e830004 lw r3,0x0004(r20)           # During test: r3 ends up as 1, r20 ends up as 0x801CD254. Purpose unknown.
  001c4fc4: 08071441 j 0x 001c5104
+
  001c4fc4: 08071441 j 0x001c5104 
  001c4fc8: 00000000 nop
+
  001c4fc8: 00000000 nop    
 
  001c4fcc: 00511021 addu r2,r2,r17
 
  001c4fcc: 00511021 addu r2,r2,r17
 
  001c4fd0: 00571021 addu r2,r2,r23
 
  001c4fd0: 00571021 addu r2,r2,r23
Line 1,064: Line 1,064:
 
  001c4fe0: 8c84d064 lw r4,-0x2f9c(r4)
 
  001c4fe0: 8c84d064 lw r4,-0x2f9c(r4)
 
  001c4fe4: 00000000 nop
 
  001c4fe4: 00000000 nop
  001c4fe8: 10440026 beq r2,r4,0x 001c5084
+
  001c4fe8: 10440026 beq r2,r4,0x001c5084
 
  001c4fec: 34020011 ori r2,r0,0x0011
 
  001c4fec: 34020011 ori r2,r0,0x0011
  001c4ff0: 0c070f6d jal 0x 001c3db4
+
  001c4ff0: 0c070f6d jal 0x001c3db4              # [[ATTACK.OUT 001c3db4 - 001c3e00]]
 
  001c4ff4: 00000000 nop
 
  001c4ff4: 00000000 nop
  001c4ff8: 10400016 beq r2,r0,0x 001c5054
+
  001c4ff8: 10400016 beq r2,r0,0x001c5054
  001c4ffc: 34020011 ori r2,r0,0x0011
+
  001c4ffc: 34020011 ori r2,r0,0x0011             # Set sound effect ID to play: 0x11, saved in a few spots
 
  001c5000: 3c04801d lui r4,0x801d
 
  001c5000: 3c04801d lui r4,0x801d
 
  001c5004: 8c84d064 lw r4,-0x2f9c(r4)
 
  001c5004: 8c84d064 lw r4,-0x2f9c(r4)
Line 1,075: Line 1,075:
 
  001c500c: ac20d074 sw r0,-0x2f8c(r1)
 
  001c500c: ac20d074 sw r0,-0x2f8c(r1)
 
  001c5010: 3c018016 lui r1,0x8016
 
  001c5010: 3c018016 lui r1,0x8016
  001c5014: ac225fb4 sw r2,0x5fb4(r1)
+
  001c5014: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x11, Zoom Out (Quick)?
  001c5018: 0c070f81 jal 0x 001c3e04
+
  001c5018: 0c070f81 jal 0x001c3e04              # [[ATTACK.OUT 001c3e04 - 001c3e58]]
 
  001c501c: 00000000 nop
 
  001c501c: 00000000 nop
 
  001c5020: 8ea20004 lw r2,0x0004(r21)
 
  001c5020: 8ea20004 lw r2,0x0004(r21)
Line 1,089: Line 1,089:
 
  001c5044: 3c01801d lui r1,0x801d
 
  001c5044: 3c01801d lui r1,0x801d
 
  001c5048: ac22d058 sw r2,-0x2fa8(r1)
 
  001c5048: ac22d058 sw r2,-0x2fa8(r1)
  001c504c: 08071450 j 0x 001c5140
+
  001c504c: 08071450 j 0x001c5140
 
  001c5050: a2030000 sb r3,0x0000(r16)
 
  001c5050: a2030000 sb r3,0x0000(r16)
 
  001c5054: 8ea20004 lw r2,0x0004(r21)
 
  001c5054: 8ea20004 lw r2,0x0004(r21)
Line 1,096: Line 1,096:
 
  001c5060: 9084d064 lbu r4,-0x2f9c(r4)
 
  001c5060: 9084d064 lbu r4,-0x2f9c(r4)
 
  001c5064: 3c018016 lui r1,0x8016
 
  001c5064: 3c018016 lui r1,0x8016
  001c5068: ac365fb4 sw r22,0x5fb4(r1)
+
  001c5068: ac365fb4 sw r22,0x5fb4(r1)           # Save sound effect ID to play: 0x01, Confirm Selection
 
  001c506c: 3c01801d lui r1,0x801d
 
  001c506c: 3c01801d lui r1,0x801d
 
  001c5070: ac20d074 sw r0,-0x2f8c(r1)
 
  001c5070: ac20d074 sw r0,-0x2f8c(r1)
 
  001c5074: aea20000 sw r2,0x0000(r21)
 
  001c5074: aea20000 sw r2,0x0000(r21)
 
  001c5078: ae830000 sw r3,0x0000(r20)
 
  001c5078: ae830000 sw r3,0x0000(r20)
  001c507c: 08071450 j 0x 001c5140
+
  001c507c: 08071450 j 0x001c5140
 
  001c5080: a2040000 sb r4,0x0000(r16)
 
  001c5080: a2040000 sb r4,0x0000(r16)
 
  001c5084: 8ea40004 lw r4,0x0004(r21)
 
  001c5084: 8ea40004 lw r4,0x0004(r21)
Line 1,108: Line 1,108:
 
  001c5090: 8c63d058 lw r3,-0x2fa8(r3)
 
  001c5090: 8c63d058 lw r3,-0x2fa8(r3)
 
  001c5094: 3c018016 lui r1,0x8016
 
  001c5094: 3c018016 lui r1,0x8016
  001c5098: ac225fb4 sw r2,0x5fb4(r1)
+
  001c5098: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x11, Zoom Out (Quick)?
 
  001c509c: 3c01801d lui r1,0x801d
 
  001c509c: 3c01801d lui r1,0x801d
 
  001c50a0: ac20d074 sw r0,-0x2f8c(r1)
 
  001c50a0: ac20d074 sw r0,-0x2f8c(r1)
Line 1,117: Line 1,117:
 
  001c50b4: ac23d058 sw r3,-0x2fa8(r1)
 
  001c50b4: ac23d058 sw r3,-0x2fa8(r1)
 
  001c50b8: 340a00ff ori r10,r0,0x00ff
 
  001c50b8: 340a00ff ori r10,r0,0x00ff
  001c50bc: 08071450 j 0x 001c5140
+
  001c50bc: 08071450 j 0x001c5140
 
  001c50c0: a20a0000 sb r10,0x0000(r16)
 
  001c50c0: a20a0000 sb r10,0x0000(r16)
 
  001c50c4: 3c03801d lui r3,0x801d
 
  001c50c4: 3c03801d lui r3,0x801d
Line 1,129: Line 1,129:
 
  001c50e4: 00431021 addu r2,r2,r3
 
  001c50e4: 00431021 addu r2,r2,r3
 
  001c50e8: 90460000 lbu r6,0x0000(r2)
 
  001c50e8: 90460000 lbu r6,0x0000(r2)
  001c50ec: 0c070f97 jal 0x 001c3e5c
+
  001c50ec: 0c070f97 jal 0x001c3e5c              # [[ATTACK.OUT 001c3e5c - 001c3ec8]]
 
  001c50f0: 02202821 addu r5,r17,r0
 
  001c50f0: 02202821 addu r5,r17,r0
 
  001c50f4: 8ea20004 lw r2,0x0004(r21)
 
  001c50f4: 8ea20004 lw r2,0x0004(r21)
 
  001c50f8: 8e830004 lw r3,0x0004(r20)
 
  001c50f8: 8e830004 lw r3,0x0004(r20)
 
  001c50fc: 3c018016 lui r1,0x8016
 
  001c50fc: 3c018016 lui r1,0x8016
  001c5100: ac365fb4 sw r22,0x5fb4(r1)
+
  001c5100: ac365fb4 sw r22,0x5fb4(r1)           # Save sound effect ID to play: 0x01, Confirm Selection
 
  001c5104: 3c01801d lui r1,0x801d
 
  001c5104: 3c01801d lui r1,0x801d
 
  001c5108: ac20d074 sw r0,-0x2f8c(r1)
 
  001c5108: ac20d074 sw r0,-0x2f8c(r1)
 
  001c510c: aea20000 sw r2,0x0000(r21)
 
  001c510c: aea20000 sw r2,0x0000(r21)
  001c5110: 08071450 j 0x 001c5140
+
  001c5110: 08071450 j 0x001c5140
 
  001c5114: ae830000 sw r3,0x0000(r20)
 
  001c5114: ae830000 sw r3,0x0000(r20)
 
  001c5118: 3c018016 lui r1,0x8016
 
  001c5118: 3c018016 lui r1,0x8016
  001c511c: ac2b5fb4 sw r11,0x5fb4(r1)
+
  001c511c: ac2b5fb4 sw r11,0x5fb4(r1)           # Save sound effect ID to play: 0x05, Invalid
  001c5120: 08071450 j 0x 001c5140
+
  001c5120: 08071450 j 0x001c5140
 
  001c5124: 00000000 nop
 
  001c5124: 00000000 nop
  001c5128: 10400005 beq r2,r0,0x 001c5140
+
  001c5128: 10400005 beq r2,r0,0x001c5140
  001c512c: 340a0002 ori r10,r0,0x0002
+
  001c512c: 340a0002 ori r10,r0,0x0002           # Set sound effect ID to play: 0x02
 
  001c5130: 3c01801d lui r1,0x801d
 
  001c5130: 3c01801d lui r1,0x801d
 
  001c5134: ac20d074 sw r0,-0x2f8c(r1)
 
  001c5134: ac20d074 sw r0,-0x2f8c(r1)
 
  001c5138: 3c018016 lui r1,0x8016
 
  001c5138: 3c018016 lui r1,0x8016
  001c513c: ac2a5fb4 sw r10,0x5fb4(r1)
+
  001c513c: ac2a5fb4 sw r10,0x5fb4(r1)           # Save sound effect ID to play: 0x02, Cancel Selection
  001c5140: 0c0716a5 jal 0x 001c5a94
+
  001c5140: 0c0716a5 jal 0x001c5a94              # [[ATTACK.OUT 001c5a94 - 001c5b4c]]
 
  001c5144: 00000000 nop
 
  001c5144: 00000000 nop
 
  001c5148: 8e620000 lw r2,0x0000(r19)
 
  001c5148: 8e620000 lw r2,0x0000(r19)
 
  001c514c: 00000000 nop
 
  001c514c: 00000000 nop
 
  001c5150: 30420080 andi r2,r2,0x0080
 
  001c5150: 30420080 andi r2,r2,0x0080
  001c5154: 1040005a beq r2,r0,0x 001c52c0
+
  001c5154: 1040005a beq r2,r0,0x001c52c0
 
  001c5158: 00000000 nop
 
  001c5158: 00000000 nop
 
  001c515c: 3c018016 lui r1,0x8016
 
  001c515c: 3c018016 lui r1,0x8016
  001c5160: ac365fb4 sw r22,0x5fb4(r1)
+
  001c5160: ac365fb4 sw r22,0x5fb4(r1)           # Save sound effect ID to play: 0x01, Confirm Selection
  001c5164: 0c04f680 jal 0x0013da00
+
  001c5164: 0c04f680 jal 0x0013da00               # [[Set Event Speed]]
  001c5168: 34040002 ori r4,r0,0x0002
+
  001c5168: 34040002 ori r4,r0,0x0002             # r4 = 2 (slow event speed)
 
  001c516c: 93c20000 lbu r2,0x0000(r30)
 
  001c516c: 93c20000 lbu r2,0x0000(r30)
 
  001c5170: 00000000 nop
 
  001c5170: 00000000 nop
 
  001c5174: 2c420002 sltiu r2,r2,0x0002
 
  001c5174: 2c420002 sltiu r2,r2,0x0002
  001c5178: 10400002 beq r2,r0,0x 001c5184
+
  001c5178: 10400002 beq r2,r0,0x001c5184
 
  001c517c: 00000000 nop
 
  001c517c: 00000000 nop
 
  001c5180: a3d60000 sb r22,0x0000(r30)
 
  001c5180: a3d60000 sb r22,0x0000(r30)
Line 1,170: Line 1,170:
 
  001c5188: 00000000 nop
 
  001c5188: 00000000 nop
 
  001c518c: 2c420002 sltiu r2,r2,0x0002
 
  001c518c: 2c420002 sltiu r2,r2,0x0002
  001c5190: 10400002 beq r2,r0,0x 001c519c
+
  001c5190: 10400002 beq r2,r0,0x001c519c
 
  001c5194: 34020011 ori r2,r0,0x0011
 
  001c5194: 34020011 ori r2,r0,0x0011
 
  001c5198: a3c20001 sb r2,0x0001(r30)
 
  001c5198: a3c20001 sb r2,0x0001(r30)
Line 1,176: Line 1,176:
 
  001c51a0: 00000000 nop
 
  001c51a0: 00000000 nop
 
  001c51a4: 2c420002 sltiu r2,r2,0x0002
 
  001c51a4: 2c420002 sltiu r2,r2,0x0002
  001c51a8: 10400002 beq r2,r0,0x 001c51b4
+
  001c51a8: 10400002 beq r2,r0,0x001c51b4
 
  001c51ac: 00000000 nop
 
  001c51ac: 00000000 nop
 
  001c51b0: a3d60002 sb r22,0x0002(r30)
 
  001c51b0: a3d60002 sb r22,0x0002(r30)
 
  001c51b4: 3c05801c lui r5,0x801c
 
  001c51b4: 3c05801c lui r5,0x801c
 
  001c51b8: 24a51954 addiu r5,r5,0x1954
 
  001c51b8: 24a51954 addiu r5,r5,0x1954
  001c51bc: 0c053228 jal 0x0014c8a0
+
  001c51bc: 0c053228 jal 0x0014c8a0                 # [[Initialize Thread]]
 
  001c51c0: 3404000c ori r4,r0,0x000c
 
  001c51c0: 3404000c ori r4,r0,0x000c
 
  001c51c4: 3404000c ori r4,r0,0x000c
 
  001c51c4: 3404000c ori r4,r0,0x000c
Line 1,187: Line 1,187:
 
  001c51cc: 24a5d224 addiu r5,r5,0xd224
 
  001c51cc: 24a5d224 addiu r5,r5,0xd224
 
  001c51d0: 00003021 addu r6,r0,r0
 
  001c51d0: 00003021 addu r6,r0,r0
  001c51d4: 0c05328e jal 0x0014ca38
+
  001c51d4: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c51d8: 00003821 addu r7,r0,r0
 
  001c51d8: 00003821 addu r7,r0,r0
 
  001c51dc: 3c05801c lui r5,0x801c
 
  001c51dc: 3c05801c lui r5,0x801c
 
  001c51e0: 24a50af4 addiu r5,r5,0x0af4
 
  001c51e0: 24a50af4 addiu r5,r5,0x0af4
  001c51e4: 0c053228 jal 0x0014c8a0
+
  001c51e4: 0c053228 jal 0x0014c8a0             # [[Initialize Thread]]
 
  001c51e8: 34040009 ori r4,r0,0x0009
 
  001c51e8: 34040009 ori r4,r0,0x0009
 
  001c51ec: 34040009 ori r4,r0,0x0009
 
  001c51ec: 34040009 ori r4,r0,0x0009
Line 1,197: Line 1,197:
 
  001c51f4: 24a5d238 addiu r5,r5,0xd238
 
  001c51f4: 24a5d238 addiu r5,r5,0xd238
 
  001c51f8: 00003021 addu r6,r0,r0
 
  001c51f8: 00003021 addu r6,r0,r0
  001c51fc: 0c05328e jal 0x0014ca38
+
  001c51fc: 0c05328e jal 0x0014ca38               # [[Store Thread Function Parameters]]
 
  001c5200: 00003821 addu r7,r0,r0
 
  001c5200: 00003821 addu r7,r0,r0
 
  001c5204: 3c05801c lui r5,0x801c
 
  001c5204: 3c05801c lui r5,0x801c
 
  001c5208: 24a53d8c addiu r5,r5,0x3d8c
 
  001c5208: 24a53d8c addiu r5,r5,0x3d8c
  001c520c: 0c053228 jal 0x0014c8a0
+
  001c520c: 0c053228 jal 0x0014c8a0               # [[Initialize Thread]]
 
  001c5210: 3404000d ori r4,r0,0x000d
 
  001c5210: 3404000d ori r4,r0,0x000d
  001c5214: 0c0532a0 jal 0x0014ca80
+
  001c5214: 0c0532a0 jal 0x0014ca80               # [[Switch To Next Thread]]
 
  001c5218: 00000000 nop
 
  001c5218: 00000000 nop
 
  001c521c: 8e620000 lw r2,0x0000(r19)
 
  001c521c: 8e620000 lw r2,0x0000(r19)
 
  001c5220: 00000000 nop
 
  001c5220: 00000000 nop
 
  001c5224: 30420100 andi r2,r2,0x0100
 
  001c5224: 30420100 andi r2,r2,0x0100
  001c5228: 1040000c beq r2,r0,0x 001c525c
+
  001c5228: 1040000c beq r2,r0,0x001c525c
 
  001c522c: 00000000 nop
 
  001c522c: 00000000 nop
 
  001c5230: 3c05801d lui r5,0x801d
 
  001c5230: 3c05801d lui r5,0x801d
 
  001c5234: 24a58cf0 addiu r5,r5,0x8cf0
 
  001c5234: 24a58cf0 addiu r5,r5,0x8cf0
  001c5238: 0c053228 jal 0x0014c8a0
+
  001c5238: 0c053228 jal 0x0014c8a0               # [[Initialize Thread]]
 
  001c523c: 34040003 ori r4,r0,0x0003
 
  001c523c: 34040003 ori r4,r0,0x0003
 
  001c5240: 34040003 ori r4,r0,0x0003
 
  001c5240: 34040003 ori r4,r0,0x0003
 
  001c5244: 00002821 addu r5,r0,r0
 
  001c5244: 00002821 addu r5,r0,r0
 
  001c5248: 00003021 addu r6,r0,r0
 
  001c5248: 00003021 addu r6,r0,r0
  001c524c: 0c05328e jal 0x0014ca38
+
  001c524c: 0c05328e jal 0x0014ca38               # [[Store Thread Function Parameters]]
 
  001c5250: 00003821 addu r7,r0,r0
 
  001c5250: 00003821 addu r7,r0,r0
  001c5254: 0c053274 jal 0x0014c9d0
+
  001c5254: 0c053274 jal 0x0014c9d0               # [[Wait For Thread]]
 
  001c5258: 34040003 ori r4,r0,0x0003
 
  001c5258: 34040003 ori r4,r0,0x0003
  001c525c: 0c0716a5 jal 0x 001c5a94
+
  001c525c: 0c0716a5 jal 0x001c5a94              # [[ATTACK.OUT 001c5a94 - 001c5b4c]]
 
  001c5260: 00000000 nop
 
  001c5260: 00000000 nop
 
  001c5264: 8e620000 lw r2,0x0000(r19)
 
  001c5264: 8e620000 lw r2,0x0000(r19)
 
  001c5268: 00000000 nop
 
  001c5268: 00000000 nop
 
  001c526c: 30420040 andi r2,r2,0x0040
 
  001c526c: 30420040 andi r2,r2,0x0040
  001c5270: 1040ffe8 beq r2,r0,0x 001c5214
+
  001c5270: 1040ffe8 beq r2,r0,0x001c5214
  001c5274: 340b0002 ori r11,r0,0x0002
+
  001c5274: 340b0002 ori r11,r0,0x0002           # Set sound effect ID to play: 0x02
 
  001c5278: 3c018016 lui r1,0x8016
 
  001c5278: 3c018016 lui r1,0x8016
  001c527c: ac2b5fb4 sw r11,0x5fb4(r1)
+
  001c527c: ac2b5fb4 sw r11,0x5fb4(r1)           # Save sound effect ID to play: 0x02, Cancel Selection
 
  001c5280: 3404000c ori r4,r0,0x000c
 
  001c5280: 3404000c ori r4,r0,0x000c
 
  001c5284: 00002821 addu r5,r0,r0
 
  001c5284: 00002821 addu r5,r0,r0
 
  001c5288: 00003021 addu r6,r0,r0
 
  001c5288: 00003021 addu r6,r0,r0
  001c528c: 0c05328e jal 0x0014ca38
+
  001c528c: 0c05328e jal 0x0014ca38               # [[Store Thread Function Parameters]]
 
  001c5290: 34070001 ori r7,r0,0x0001
 
  001c5290: 34070001 ori r7,r0,0x0001
 
  001c5294: 34040009 ori r4,r0,0x0009
 
  001c5294: 34040009 ori r4,r0,0x0009
 
  001c5298: 00002821 addu r5,r0,r0
 
  001c5298: 00002821 addu r5,r0,r0
 
  001c529c: 00003021 addu r6,r0,r0
 
  001c529c: 00003021 addu r6,r0,r0
  001c52a0: 0c05328e jal 0x0014ca38
+
  001c52a0: 0c05328e jal 0x0014ca38               # [[Store Thread Function Parameters]]
 
  001c52a4: 34070001 ori r7,r0,0x0001
 
  001c52a4: 34070001 ori r7,r0,0x0001
  001c52a8: 0c053274 jal 0x0014c9d0
+
  001c52a8: 0c053274 jal 0x0014c9d0               # [[Wait For Thread]]
 
  001c52ac: 3404000c ori r4,r0,0x000c
 
  001c52ac: 3404000c ori r4,r0,0x000c
  001c52b0: 0c053274 jal 0x0014c9d0
+
  001c52b0: 0c053274 jal 0x0014c9d0               # [[Wait For Thread]]
 
  001c52b4: 34040009 ori r4,r0,0x0009
 
  001c52b4: 34040009 ori r4,r0,0x0009
  001c52b8: 0c04f680 jal 0x0013da00
+
  001c52b8: 0c04f680 jal 0x0013da00               # [[Set Event Speed]]
  001c52bc: 34040001 ori r4,r0,0x0001
+
  001c52bc: 34040001 ori r4,r0,0x0001             # r4 = 1 (normal event speed)
 
  001c52c0: 8e620000 lw r2,0x0000(r19)
 
  001c52c0: 8e620000 lw r2,0x0000(r19)
 
  001c52c4: 00000000 nop
 
  001c52c4: 00000000 nop
 
  001c52c8: 30420010 andi r2,r2,0x0010
 
  001c52c8: 30420010 andi r2,r2,0x0010
  001c52cc: 10400036 beq r2,r0,0x 001c53a8
+
  001c52cc: 10400036 beq r2,r0,0x001c53a8
 
  001c52d0: 340a00ff ori r10,r0,0x00ff
 
  001c52d0: 340a00ff ori r10,r0,0x00ff
 
  001c52d4: 3c04801d lui r4,0x801d
 
  001c52d4: 3c04801d lui r4,0x801d
Line 1,265: Line 1,265:
 
  001c5304: 90420000 lbu r2,0x0000(r2)
 
  001c5304: 90420000 lbu r2,0x0000(r2)
 
  001c5308: 00000000 nop
 
  001c5308: 00000000 nop
  001c530c: 104a0026 beq r2,r10,0x 001c53a8
+
  001c530c: 104a0026 beq r2,r10,0x001c53a8
 
  001c5310: 34020007 ori r2,r0,0x0007
 
  001c5310: 34020007 ori r2,r0,0x0007
 
  001c5314: 3c01801d lui r1,0x801d
 
  001c5314: 3c01801d lui r1,0x801d
 
  001c5318: a022f5f2 sb r2,-0x0a0e(r1)
 
  001c5318: a022f5f2 sb r2,-0x0a0e(r1)
 
  001c531c: 3c018016 lui r1,0x8016
 
  001c531c: 3c018016 lui r1,0x8016
  001c5320: ac365fb4 sw r22,0x5fb4(r1)
+
  001c5320: ac365fb4 sw r22,0x5fb4(r1)           # Save sound effect ID to play: 0x01, Confirm Selection
  001c5324: 0c053287 jal 0x0014ca1c
+
  001c5324: 0c053287 jal 0x0014ca1c               # [[Check Thread r4 Running Status]]
 
  001c5328: 34040004 ori r4,r0,0x0004
 
  001c5328: 34040004 ori r4,r0,0x0004
  001c532c: 1440001e bne r2,r0,0x 001c53a8
+
  001c532c: 1440001e bne r2,r0,0x001c53a8
 
  001c5330: 00000000 nop
 
  001c5330: 00000000 nop
 
  001c5334: 3c04801d lui r4,0x801d
 
  001c5334: 3c04801d lui r4,0x801d
Line 1,292: Line 1,292:
 
  001c5370: 3c01801d lui r1,0x801d
 
  001c5370: 3c01801d lui r1,0x801d
 
  001c5374: ac22d068 sw r2,-0x2f98(r1)
 
  001c5374: ac22d068 sw r2,-0x2f98(r1)
  001c5378: 10620009 beq r3,r2,0x 001c53a0
+
  001c5378: 10620009 beq r3,r2,0x001c53a0
 
  001c537c: 2402ffff addiu r2,r0,0xffff
 
  001c537c: 2402ffff addiu r2,r0,0xffff
 
  001c5380: 3c05801c lui r5,0x801c
 
  001c5380: 3c05801c lui r5,0x801c
 
  001c5384: 24a560e0 addiu r5,r5,0x60e0
 
  001c5384: 24a560e0 addiu r5,r5,0x60e0
  001c5388: 0c053228 jal 0x0014c8a0
+
  001c5388: 0c053228 jal 0x0014c8a0             # [[Initialize Thread]]
 
  001c538c: 34040004 ori r4,r0,0x0004
 
  001c538c: 34040004 ori r4,r0,0x0004
  001c5390: 0c053274 jal 0x0014c9d0
+
  001c5390: 0c053274 jal 0x0014c9d0                     # [[Wait For Thread]]
 
  001c5394: 34040004 ori r4,r0,0x0004
 
  001c5394: 34040004 ori r4,r0,0x0004
  001c5398: 080714ea j 0x 001c53a8
+
  001c5398: 080714ea j 0x001c53a8
 
  001c539c: 00000000 nop
 
  001c539c: 00000000 nop
 
  001c53a0: 3c01801d lui r1,0x801d
 
  001c53a0: 3c01801d lui r1,0x801d
 
  001c53a4: ac22d068 sw r2,-0x2f98(r1)
 
  001c53a4: ac22d068 sw r2,-0x2f98(r1)
  001c53a8: 0c053250 jal 0x0014c940
+
  001c53a8: 0c053250 jal 0x0014c940             # [[Mark Thread As Stopped]]
 
  001c53ac: 3404000d ori r4,r0,0x000d
 
  001c53ac: 3404000d ori r4,r0,0x000d
  001c53b0: 0807117b j 0x 001c45ec
+
  001c53b0: 0807117b j 0x001c45ec
 
  001c53b4: 00000000 nop
 
  001c53b4: 00000000 nop
 
  001c53b8: 3c02801d lui r2,0x801d
 
  001c53b8: 3c02801d lui r2,0x801d
Line 1,314: Line 1,314:
 
  001c53c8: 00000000 nop
 
  001c53c8: 00000000 nop
 
  001c53cc: 0043102a slt r2,r2,r3
 
  001c53cc: 0043102a slt r2,r2,r3
  001c53d0: 10400009 beq r2,r0,0x 001c53f8
+
  001c53d0: 10400009 beq r2,r0,0x001c53f8
 
  001c53d4: 00000000 nop
 
  001c53d4: 00000000 nop
 
  001c53d8: 3c02801e lui r2,0x801e
 
  001c53d8: 3c02801e lui r2,0x801e
Line 1,322: Line 1,322:
 
  001c53e8: 3c01801e lui r1,0x801e
 
  001c53e8: 3c01801e lui r1,0x801e
 
  001c53ec: ac22cc7c sw r2,-0x3384(r1)
 
  001c53ec: ac22cc7c sw r2,-0x3384(r1)
  001c53f0: 08071062 j 0x 001c4188
+
  001c53f0: 08071062 j 0x001c4188
 
  001c53f4: 00000000 nop
 
  001c53f4: 00000000 nop
  001c53f8: 0c053216 jal 0x0014c858
+
  001c53f8: 0c053216 jal 0x0014c858                   # [[Wait]] (Switch To Next Thread Multiple Times)
 
  001c53fc: 34040020 ori r4,r0,0x0020
 
  001c53fc: 34040020 ori r4,r0,0x0020
 
  001c5400: 2402ffff addiu r2,r0,0xffff
 
  001c5400: 2402ffff addiu r2,r0,0xffff
Line 1,332: Line 1,332:
 
  001c5410: 00002821 addu r5,r0,r0
 
  001c5410: 00002821 addu r5,r0,r0
 
  001c5414: 00003021 addu r6,r0,r0
 
  001c5414: 00003021 addu r6,r0,r0
  001c5418: 0c05328e jal 0x0014ca38
+
  001c5418: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c541c: 34070001 ori r7,r0,0x0001
 
  001c541c: 34070001 ori r7,r0,0x0001
  001c5420: 0c0532a0 jal 0x0014ca80
+
  001c5420: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c5424: 00009021 addu r18,r0,r0
 
  001c5424: 00009021 addu r18,r0,r0
 
  001c5428: 3c10801d lui r16,0x801d
 
  001c5428: 3c10801d lui r16,0x801d
Line 1,349: Line 1,349:
 
  001c5454: ae120008 sw r18,0x0008(r16)
 
  001c5454: ae120008 sw r18,0x0008(r16)
 
  001c5458: ae12000c sw r18,0x000c(r16)
 
  001c5458: ae12000c sw r18,0x000c(r16)
  001c545c: 0c0532a0 jal 0x0014ca80
+
  001c545c: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c5460: ae120010 sw r18,0x0010(r16)
 
  001c5460: ae120010 sw r18,0x0010(r16)
 
  001c5464: 32420003 andi r2,r18,0x0003
 
  001c5464: 32420003 andi r2,r18,0x0003
  001c5468: 14400005 bne r2,r0,0x 001c5480
+
  001c5468: 14400005 bne r2,r0,0x001c5480
 
  001c546c: 26520002 addiu r18,r18,0x0002
 
  001c546c: 26520002 addiu r18,r18,0x0002
 
  001c5470: 8e220000 lw r2,0x0000(r17)
 
  001c5470: 8e220000 lw r2,0x0000(r17)
Line 1,359: Line 1,359:
 
  001c547c: ae220000 sw r2,0x0000(r17)
 
  001c547c: ae220000 sw r2,0x0000(r17)
 
  001c5480: 2a420100 slti r2,r18,0x0100
 
  001c5480: 2a420100 slti r2,r18,0x0100
  001c5484: 1440ffed bne r2,r0,0x 001c543c
+
  001c5484: 1440ffed bne r2,r0,0x001c543c
 
  001c5488: 00121023 subu r2,r0,r18
 
  001c5488: 00121023 subu r2,r0,r18
  001c548c: 0c053216 jal 0x0014c858
+
  001c548c: 0c053216 jal 0x0014c858                   # [[Wait]] (Switch To Next Thread Multiple Times)
 
  001c5490: 3404003c ori r4,r0,0x003c
 
  001c5490: 3404003c ori r4,r0,0x003c
 
  001c5494: 3c02801e lui r2,0x801e
 
  001c5494: 3c02801e lui r2,0x801e
Line 1,395: Line 1,395:
 
  001c550c: 3c01801e lui r1,0x801e
 
  001c550c: 3c01801e lui r1,0x801e
 
  001c5510: a022cad8 sb r2,-0x3528(r1)
 
  001c5510: a022cad8 sb r2,-0x3528(r1)
  001c5514: 0c04ed64 jal 0x0013b590
+
  001c5514: 0c04ed64 jal 0x0013b590                     # [[Get Script Variable]]
  001c5518: 34040034 ori r4,r0,0x0034
+
  001c5518: 34040034 ori r4,r0,0x0034                   # Var 0x34: Number of Squads
 
  001c551c: 0242102a slt r2,r18,r2
 
  001c551c: 0242102a slt r2,r18,r2
  001c5520: 10400104 beq r2,r0,0x 001c5934
+
  001c5520: 10400104 beq r2,r0,0x001c5934
 
  001c5524: 00000000 nop
 
  001c5524: 00000000 nop
  001c5528: 0c04ed64 jal 0x0013b590
+
  001c5528: 0c04ed64 jal 0x0013b590                     # [[Get Script Variable]]
  001c552c: 340401fe ori r4,r0,0x01fe
+
  001c552c: 340401fe ori r4,r0,0x01fe                   # Var 0x1FE: Next Random is World Debug Battle Style
  001c5530: 10400005 beq r2,r0,0x 001c5548
+
  001c5530: 10400005 beq r2,r0,0x001c5548              # Branch if not
 
  001c5534: 34020001 ori r2,r0,0x0001
 
  001c5534: 34020001 ori r2,r0,0x0001
  001c5538: 16420003 bne r18,r2,0x 001c5548
+
  001c5538: 16420003 bne r18,r2,0x001c5548              # Branch if r18 =/= 1
 
  001c553c: 00009821 addu r19,r0,r0
 
  001c553c: 00009821 addu r19,r0,r0
 
  001c5540: 3c14801e lui r20,0x801e
 
  001c5540: 3c14801e lui r20,0x801e
Line 1,410: Line 1,410:
 
  001c5548: 3c01801e lui r1,0x801e
 
  001c5548: 3c01801e lui r1,0x801e
 
  001c554c: ac32cc78 sw r18,-0x3388(r1)
 
  001c554c: ac32cc78 sw r18,-0x3388(r1)
  001c5550: 0c04ed64 jal 0x0013b590
+
  001c5550: 0c04ed64 jal 0x0013b590                     # [[Get Script Variable]]
  001c5554: 26440035 addiu r4,r18,0x0035
+
  001c5554: 26440035 addiu r4,r18,0x0035                 # Var (0x35 + r18): Squad #1 ID (or Squad #2 ID?)
 
  001c5558: 00021840 sll r3,r2,0x01
 
  001c5558: 00021840 sll r3,r2,0x01
  001c555c: 00621821 addu r3,r3,r2
+
  001c555c: 00621821 addu r3,r3,r2                       # r3 = Squad ID * 3
 
  001c5560: 3c01801e lui r1,0x801e
 
  001c5560: 3c01801e lui r1,0x801e
  001c5564: ac22cc78 sw r2,-0x3388(r1)
+
  001c5564: ac22cc78 sw r2,-0x3388(r1)                   # Save Squad ID to 0x801DCC78
  001c5568: 3c02801d lui r2,0x801d
+
  001c5568: 3c02801d lui r2,0x801d      
  001c556c: 8c42d270 lw r2,-0x2d90(r2)
+
  001c556c: 8c42d270 lw r2,-0x2d90(r2)                   # r2 = Squad Data pointer
  001c5570: 00031880 sll r3,r3,0x02
+
  001c5570: 00031880 sll r3,r3,0x02                     # r3 = Squad ID * 12
  001c5574: 00621821 addu r3,r3,r2
+
  001c5574: 00621821 addu r3,r3,r2                       # r3 = Squad ID * 12 + Squad Data pointer - pointer to the data for the current Squad
 
  001c5578: 3c01801d lui r1,0x801d
 
  001c5578: 3c01801d lui r1,0x801d
  001c557c: ac23d274 sw r3,-0x2d8c(r1)
+
  001c557c: ac23d274 sw r3,-0x2d8c(r1)                   # Save Current Squad Data Pointer to 0x801CD274
  001c5580: 90620007 lbu r2,0x0007(r3)
+
  001c5580: 90620007 lbu r2,0x0007(r3)                   # r2 = orientation byte from Squad data?
 
  001c5584: 00000000 nop
 
  001c5584: 00000000 nop
 
  001c5588: 3043000f andi r3,r2,0x000f
 
  001c5588: 3043000f andi r3,r2,0x000f
Line 1,428: Line 1,428:
 
  001c5590: 00021102 srl r2,r2,0x04
 
  001c5590: 00021102 srl r2,r2,0x04
 
  001c5594: 00621821 addu r3,r3,r2
 
  001c5594: 00621821 addu r3,r3,r2
  001c5598: 04610002 bgez r3,0x 001c55a4
+
  001c5598: 04610002 bgez r3,0x001c55a4
 
  001c559c: 00000000 nop
 
  001c559c: 00000000 nop
 
  001c55a0: 24630004 addiu r3,r3,0x0004
 
  001c55a0: 24630004 addiu r3,r3,0x0004
 
  001c55a4: 30630003 andi r3,r3,0x0003
 
  001c55a4: 30630003 andi r3,r3,0x0003
  001c55a8: 14600037 bne r3,r0,0x 001c5688
+
  001c55a8: 14600037 bne r3,r0,0x001c5688
 
  001c55ac: 34020001 ori r2,r0,0x0001
 
  001c55ac: 34020001 ori r2,r0,0x0001
 
  001c55b0: 00008821 addu r17,r0,r0
 
  001c55b0: 00008821 addu r17,r0,r0
Line 1,446: Line 1,446:
 
  001c55d8: 90830000 lbu r3,0x0000(r4)
 
  001c55d8: 90830000 lbu r3,0x0000(r4)
 
  001c55dc: 340200ff ori r2,r0,0x00ff
 
  001c55dc: 340200ff ori r2,r0,0x00ff
  001c55e0: 1062001f beq r3,r2,0x 001c5660
+
  001c55e0: 1062001f beq r3,r2,0x001c5660
 
  001c55e4: 00000000 nop
 
  001c55e4: 00000000 nop
 
  001c55e8: 90820000 lbu r2,0x0000(r4)
 
  001c55e8: 90820000 lbu r2,0x0000(r4)
Line 1,480: Line 1,480:
 
  001c5660: 26100001 addiu r16,r16,0x0001
 
  001c5660: 26100001 addiu r16,r16,0x0001
 
  001c5664: 2a020005 slti r2,r16,0x0005
 
  001c5664: 2a020005 slti r2,r16,0x0005
  001c5668: 1440ffda bne r2,r0,0x 001c55d4
+
  001c5668: 1440ffda bne r2,r0,0x001c55d4
 
  001c566c: 00f01021 addu r2,r7,r16
 
  001c566c: 00f01021 addu r2,r7,r16
 
  001c5670: 26310001 addiu r17,r17,0x0001
 
  001c5670: 26310001 addiu r17,r17,0x0001
 
  001c5674: 2a220005 slti r2,r17,0x0005
 
  001c5674: 2a220005 slti r2,r17,0x0005
  001c5678: 1440ffd0 bne r2,r0,0x 001c55bc
+
  001c5678: 1440ffd0 bne r2,r0,0x001c55bc
 
  001c567c: 24c60005 addiu r6,r6,0x0005
 
  001c567c: 24c60005 addiu r6,r6,0x0005
  001c5680: 0807164b j 0x 001c592c
+
  001c5680: 0807164b j 0x001c592c
 
  001c5684: 26b50019 addiu r21,r21,0x0019
 
  001c5684: 26b50019 addiu r21,r21,0x0019
  001c5688: 14620038 bne r3,r2,0x 001c576c
+
  001c5688: 14620038 bne r3,r2,0x001c576c
 
  001c568c: 34020002 ori r2,r0,0x0002
 
  001c568c: 34020002 ori r2,r0,0x0002
 
  001c5690: 00008821 addu r17,r0,r0
 
  001c5690: 00008821 addu r17,r0,r0
Line 1,502: Line 1,502:
 
  001c56b8: 90830000 lbu r3,0x0000(r4)
 
  001c56b8: 90830000 lbu r3,0x0000(r4)
 
  001c56bc: 340200ff ori r2,r0,0x00ff
 
  001c56bc: 340200ff ori r2,r0,0x00ff
  001c56c0: 10620020 beq r3,r2,0x 001c5744
+
  001c56c0: 10620020 beq r3,r2,0x001c5744
 
  001c56c4: 00000000 nop
 
  001c56c4: 00000000 nop
 
  001c56c8: 90820000 lbu r2,0x0000(r4)
 
  001c56c8: 90820000 lbu r2,0x0000(r4)
Line 1,537: Line 1,537:
 
  001c5744: 26100001 addiu r16,r16,0x0001
 
  001c5744: 26100001 addiu r16,r16,0x0001
 
  001c5748: 2a020005 slti r2,r16,0x0005
 
  001c5748: 2a020005 slti r2,r16,0x0005
  001c574c: 1440ffd9 bne r2,r0,0x 001c56b4
+
  001c574c: 1440ffd9 bne r2,r0,0x001c56b4
 
  001c5750: 00f01021 addu r2,r7,r16
 
  001c5750: 00f01021 addu r2,r7,r16
 
  001c5754: 26310001 addiu r17,r17,0x0001
 
  001c5754: 26310001 addiu r17,r17,0x0001
 
  001c5758: 2a220005 slti r2,r17,0x0005
 
  001c5758: 2a220005 slti r2,r17,0x0005
  001c575c: 1440ffcf bne r2,r0,0x 001c569c
+
  001c575c: 1440ffcf bne r2,r0,0x001c569c
 
  001c5760: 24c60005 addiu r6,r6,0x0005
 
  001c5760: 24c60005 addiu r6,r6,0x0005
  001c5764: 0807164b j 0x 001c592c
+
  001c5764: 0807164b j 0x001c592c
 
  001c5768: 26b50019 addiu r21,r21,0x0019
 
  001c5768: 26b50019 addiu r21,r21,0x0019
  001c576c: 14620038 bne r3,r2,0x 001c5850
+
  001c576c: 14620038 bne r3,r2,0x001c5850
 
  001c5770: 34020003 ori r2,r0,0x0003
 
  001c5770: 34020003 ori r2,r0,0x0003
 
  001c5774: 00008821 addu r17,r0,r0
 
  001c5774: 00008821 addu r17,r0,r0
Line 1,559: Line 1,559:
 
  001c579c: 90830000 lbu r3,0x0000(r4)
 
  001c579c: 90830000 lbu r3,0x0000(r4)
 
  001c57a0: 340200ff ori r2,r0,0x00ff
 
  001c57a0: 340200ff ori r2,r0,0x00ff
  001c57a4: 10620020 beq r3,r2,0x 001c5828
+
  001c57a4: 10620020 beq r3,r2,0x001c5828
 
  001c57a8: 00000000 nop
 
  001c57a8: 00000000 nop
 
  001c57ac: 90820000 lbu r2,0x0000(r4)
 
  001c57ac: 90820000 lbu r2,0x0000(r4)
Line 1,594: Line 1,594:
 
  001c5828: 26100001 addiu r16,r16,0x0001
 
  001c5828: 26100001 addiu r16,r16,0x0001
 
  001c582c: 2a020005 slti r2,r16,0x0005
 
  001c582c: 2a020005 slti r2,r16,0x0005
  001c5830: 1440ffd9 bne r2,r0,0x 001c5798
+
  001c5830: 1440ffd9 bne r2,r0,0x001c5798
 
  001c5834: 00f01021 addu r2,r7,r16
 
  001c5834: 00f01021 addu r2,r7,r16
 
  001c5838: 26310001 addiu r17,r17,0x0001
 
  001c5838: 26310001 addiu r17,r17,0x0001
 
  001c583c: 2a220005 slti r2,r17,0x0005
 
  001c583c: 2a220005 slti r2,r17,0x0005
  001c5840: 1440ffcf bne r2,r0,0x 001c5780
+
  001c5840: 1440ffcf bne r2,r0,0x001c5780
 
  001c5844: 24c60005 addiu r6,r6,0x0005
 
  001c5844: 24c60005 addiu r6,r6,0x0005
  001c5848: 0807164b j 0x 001c592c
+
  001c5848: 0807164b j 0x001c592c
 
  001c584c: 26b50019 addiu r21,r21,0x0019
 
  001c584c: 26b50019 addiu r21,r21,0x0019
  001c5850: 14620035 bne r3,r2,0x 001c5928
+
  001c5850: 14620035 bne r3,r2,0x001c5928
 
  001c5854: 02a04821 addu r9,r21,r0
 
  001c5854: 02a04821 addu r9,r21,r0
 
  001c5858: 00008821 addu r17,r0,r0
 
  001c5858: 00008821 addu r17,r0,r0
Line 1,615: Line 1,615:
 
  001c587c: 90830000 lbu r3,0x0000(r4)
 
  001c587c: 90830000 lbu r3,0x0000(r4)
 
  001c5880: 340200ff ori r2,r0,0x00ff
 
  001c5880: 340200ff ori r2,r0,0x00ff
  001c5884: 10620020 beq r3,r2,0x 001c5908
+
  001c5884: 10620020 beq r3,r2,0x001c5908
 
  001c5888: 00000000 nop
 
  001c5888: 00000000 nop
 
  001c588c: 90820000 lbu r2,0x0000(r4)
 
  001c588c: 90820000 lbu r2,0x0000(r4)
Line 1,650: Line 1,650:
 
  001c5908: 26100001 addiu r16,r16,0x0001
 
  001c5908: 26100001 addiu r16,r16,0x0001
 
  001c590c: 2a020005 slti r2,r16,0x0005
 
  001c590c: 2a020005 slti r2,r16,0x0005
  001c5910: 1440ffd9 bne r2,r0,0x 001c5878
+
  001c5910: 1440ffd9 bne r2,r0,0x001c5878
 
  001c5914: 00f01021 addu r2,r7,r16
 
  001c5914: 00f01021 addu r2,r7,r16
 
  001c5918: 26310001 addiu r17,r17,0x0001
 
  001c5918: 26310001 addiu r17,r17,0x0001
 
  001c591c: 2a220005 slti r2,r17,0x0005
 
  001c591c: 2a220005 slti r2,r17,0x0005
  001c5920: 1440ffcf bne r2,r0,0x 001c5860
+
  001c5920: 1440ffcf bne r2,r0,0x001c5860
 
  001c5924: 24c60005 addiu r6,r6,0x0005
 
  001c5924: 24c60005 addiu r6,r6,0x0005
 
  001c5928: 26b50019 addiu r21,r21,0x0019
 
  001c5928: 26b50019 addiu r21,r21,0x0019
  001c592c: 08071545 j 0x 001c5514
+
  001c592c: 08071545 j 0x001c5514
 
  001c5930: 26520001 addiu r18,r18,0x0001
 
  001c5930: 26520001 addiu r18,r18,0x0001
  001c5934: 0c0238c1 jal 0x0008e304
+
  001c5934: 0c0238c1 jal 0x0008e304             # [[0008e304 - 0008e314]]
 
  001c5938: 00000000 nop
 
  001c5938: 00000000 nop
  001c593c: 34040052 ori r4,r0,0x0052
+
  001c593c: 34040052 ori r4,r0,0x0052           # Var 0x52: number of units deployed
  001c5940: 0c04ed91 jal 0x0013b644
+
  001c5940: 0c04ed91 jal 0x0013b644             # [[Set Script Variable]]
 
  001c5944: 02602821 addu r5,r19,r0
 
  001c5944: 02602821 addu r5,r19,r0
 
  001c5948: 3c05801d lui r5,0x801d
 
  001c5948: 3c05801d lui r5,0x801d
 
  001c594c: 24a59d68 addiu r5,r5,0x9d68
 
  001c594c: 24a59d68 addiu r5,r5,0x9d68
  001c5950: 0c053228 jal 0x0014c8a0
+
  001c5950: 0c053228 jal 0x0014c8a0             # [[Initialize Thread]]
 
  001c5954: 3404000e ori r4,r0,0x000e
 
  001c5954: 3404000e ori r4,r0,0x000e
 
  001c5958: 3404000e ori r4,r0,0x000e
 
  001c5958: 3404000e ori r4,r0,0x000e
 
  001c595c: 00002821 addu r5,r0,r0
 
  001c595c: 00002821 addu r5,r0,r0
 
  001c5960: 00003021 addu r6,r0,r0
 
  001c5960: 00003021 addu r6,r0,r0
  001c5964: 0c05328e jal 0x0014ca38
+
  001c5964: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c5968: 00003821 addu r7,r0,r0
 
  001c5968: 00003821 addu r7,r0,r0
  001c596c: 0c053274 jal 0x0014c9d0
+
  001c596c: 0c053274 jal 0x0014c9d0                     # [[Wait For Thread]]
 
  001c5970: 3404000e ori r4,r0,0x000e
 
  001c5970: 3404000e ori r4,r0,0x000e
 
  001c5974: 3c02001e lui r2,0x001e
 
  001c5974: 3c02001e lui r2,0x001e
 
  001c5978: 3c018016 lui r1,0x8016
 
  001c5978: 3c018016 lui r1,0x8016
 
  001c597c: ac225fc0 sw r2,0x5fc0(r1)
 
  001c597c: ac225fc0 sw r2,0x5fc0(r1)
  001c5980: 0c053216 jal 0x0014c858
+
  001c5980: 0c053216 jal 0x0014c858                   # [[Wait]] (Switch To Next Thread Multiple Times)
 
  001c5984: 34040020 ori r4,r0,0x0020
 
  001c5984: 34040020 ori r4,r0,0x0020
 
  001c5988: 3c018016 lui r1,0x8016
 
  001c5988: 3c018016 lui r1,0x8016
 
  001c598c: ac20603c sw r0,0x603c(r1)
 
  001c598c: ac20603c sw r0,0x603c(r1)
  001c5990: 0c0532a0 jal 0x0014ca80
+
  001c5990: 0c0532a0 jal 0x0014ca80                   # [[Switch To Next Thread]]
 
  001c5994: 00000000 nop
 
  001c5994: 00000000 nop
 
  001c5998: 3c028016 lui r2,0x8016
 
  001c5998: 3c028016 lui r2,0x8016
Line 1,691: Line 1,691:
 
  001c59ac: ac22603c sw r2,0x603c(r1)
 
  001c59ac: ac22603c sw r2,0x603c(r1)
 
  001c59b0: 28420100 slti r2,r2,0x0100
 
  001c59b0: 28420100 slti r2,r2,0x0100
  001c59b4: 1440fff6 bne r2,r0,0x 001c5990
+
  001c59b4: 1440fff6 bne r2,r0,0x001c5990
 
  001c59b8: 3404000f ori r4,r0,0x000f
 
  001c59b8: 3404000f ori r4,r0,0x000f
 
  001c59bc: 00002821 addu r5,r0,r0
 
  001c59bc: 00002821 addu r5,r0,r0
 
  001c59c0: 00003021 addu r6,r0,r0
 
  001c59c0: 00003021 addu r6,r0,r0
  001c59c4: 0c05328e jal 0x0014ca38
+
  001c59c4: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c59c8: 34070001 ori r7,r0,0x0001
 
  001c59c8: 34070001 ori r7,r0,0x0001
 
  001c59cc: 34040008 ori r4,r0,0x0008
 
  001c59cc: 34040008 ori r4,r0,0x0008
 
  001c59d0: 00002821 addu r5,r0,r0
 
  001c59d0: 00002821 addu r5,r0,r0
 
  001c59d4: 00003021 addu r6,r0,r0
 
  001c59d4: 00003021 addu r6,r0,r0
  001c59d8: 0c05328e jal 0x0014ca38
+
  001c59d8: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c59dc: 34070001 ori r7,r0,0x0001
 
  001c59dc: 34070001 ori r7,r0,0x0001
 
  001c59e0: 34040007 ori r4,r0,0x0007
 
  001c59e0: 34040007 ori r4,r0,0x0007
 
  001c59e4: 00002821 addu r5,r0,r0
 
  001c59e4: 00002821 addu r5,r0,r0
 
  001c59e8: 00003021 addu r6,r0,r0
 
  001c59e8: 00003021 addu r6,r0,r0
  001c59ec: 0c05328e jal 0x0014ca38
+
  001c59ec: 0c05328e jal 0x0014ca38             # [[Store Thread Function Parameters]]
 
  001c59f0: 34070001 ori r7,r0,0x0001
 
  001c59f0: 34070001 ori r7,r0,0x0001
  001c59f4: 0c053216 jal 0x0014c858
+
  001c59f4: 0c053216 jal 0x0014c858             # [[Wait]] (Switch To Next Thread Multiple Times)
 
  001c59f8: 34040003 ori r4,r0,0x0003
 
  001c59f8: 34040003 ori r4,r0,0x0003
 
  001c59fc: 3c018016 lui r1,0x8016
 
  001c59fc: 3c018016 lui r1,0x8016
 
  001c5a00: ac20603c sw r0,0x603c(r1)
 
  001c5a00: ac20603c sw r0,0x603c(r1)
  001c5a04: 0c04f680 jal 0x0013da00
+
  001c5a04: 0c04f680 jal 0x0013da00             # [[Set Event Speed]]
  001c5a08: 34040001 ori r4,r0,0x0001
+
  001c5a08: 34040001 ori r4,r0,0x0001           # r4 = 1 (normal speed)
  001c5a0c: 0c010fc0 jal 0x00043f00
+
  001c5a0c: 0c010fc0 jal 0x00043f00             # [[00043f00 - 00043f34]]
 
  001c5a10: 00000000 nop
 
  001c5a10: 00000000 nop
  001c5a14: 0c053256 jal 0x0014c958
+
  001c5a14: 0c053256 jal 0x0014c958             # [[Stop Current Thread]]
 
  001c5a18: 00000000 nop
 
  001c5a18: 00000000 nop
 
  001c5a1c: 8fbf0044 lw r31,0x0044(r29)
 
  001c5a1c: 8fbf0044 lw r31,0x0044(r29)

Latest revision as of 20:37, 12 June 2025

001c3f44: 27bdffb8 addiu r29,r29,0xffb8
001c3f48: 340b0001 ori r11,r0,0x0001
001c3f4c: 3c04801d lui r4,0x801d
001c3f50: 24845af4 addiu r4,r4,0x5af4
001c3f54: afb20028 sw r18,0x0028(r29)
001c3f58: 3c05801d lui r5,0x801d
001c3f5c: 84a55afc lh r5,0x5afc(r5)
001c3f60: 3c06801d lui r6,0x801d
001c3f64: 84c65afe lh r6,0x5afe(r6)
001c3f68: 3c02801d lui r2,0x801d
001c3f6c: 2442d0e4 addiu r2,r2,0xd0e4
001c3f70: afbf0044 sw r31,0x0044(r29)
001c3f74: afbe0040 sw r30,0x0040(r29)
001c3f78: afb7003c sw r23,0x003c(r29)
001c3f7c: afb60038 sw r22,0x0038(r29)
001c3f80: afb50034 sw r21,0x0034(r29)
001c3f84: afb40030 sw r20,0x0030(r29)
001c3f88: afb3002c sw r19,0x002c(r29)
001c3f8c: afb10024 sw r17,0x0024(r29)
001c3f90: afb00020 sw r16,0x0020(r29)
001c3f94: afab0018 sw r11,0x0018(r29)
001c3f98: 3c018017 lui r1,0x8017
001c3f9c: ac223cb8 sw r2,0x3cb8(r1)
001c3fa0: 0c009271 jal 0x000249c4                   # SYS MoveImage
001c3fa4: 34120004 ori r18,r0,0x0004
001c3fa8: 3c04801d lui r4,0x801d
001c3fac: 2484d094 addiu r4,r4,0xd094
001c3fb0: 3c05801d lui r5,0x801d
001c3fb4: 24a5cfd4 addiu r5,r5,0xcfd4
001c3fb8: 0c00923f jal 0x000248fc                   # SYS LoadImage
001c3fbc: 00000000 nop
001c3fc0: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c3fc4: 00000000 nop
001c3fc8: 0c04ed64 jal 0x0013b590                   # Get Script Variable:
001c3fcc: 34040035 ori r4,r0,0x0035                 # Var 0x35: Squad #1 ID
001c3fd0: 00021840 sll r3,r2,0x01
001c3fd4: 00621821 addu r3,r3,r2                    # r3 = Squad ID * 3
001c3fd8: 3c01801e lui r1,0x801e
001c3fdc: ac22cc78 sw r2,-0x3388(r1)                # Save Squad ID to 0x801DCC78
001c3fe0: 3c02801d lui r2,0x801d
001c3fe4: 8c42d270 lw r2,-0x2d90(r2)                # r2 = Squad Data pointer
001c3fe8: 00031880 sll r3,r3,0x02                   # r3 = Squad ID * 12
001c3fec: 00621821 addu r3,r3,r2                    # r3 = Squad ID * 12 + Squad Data pointer - pointer to the data for the current Squad
001c3ff0: 3c01801d lui r1,0x801d
001c3ff4: ac23d274 sw r3,-0x2d8c(r1)                # Save Current Squad Data Pointer to 0x801CD274
001c3ff8: 0c04f680 jal 0x0013da00                   # Set Event Speed
001c3ffc: 34040001 ori r4,r0,0x0001                 # r4 = 0x01 (normal speed?)
001c4000: 340200ff ori r2,r0,0x00ff
001c4004: 3c018016 lui r1,0x8016
001c4008: ac22603c sw r2,0x603c(r1)
001c400c: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c4010: 00000000 nop
001c4014: 340400ff ori r4,r0,0x00ff
001c4018: 3c03801d lui r3,0x801d
001c401c: 2463f5f4 addiu r3,r3,0xf5f4
001c4020: 3402009c ori r2,r0,0x009c
001c4024: 3c01801d lui r1,0x801d
001c4028: ac22d07c sw r2,-0x2f84(r1)
001c402c: 2402ff64 addiu r2,r0,0xff64
001c4030: 3c01801d lui r1,0x801d
001c4034: ac20d058 sw r0,-0x2fa8(r1)
001c4038: 3c01801d lui r1,0x801d
001c403c: ac20d060 sw r0,-0x2fa0(r1)
001c4040: 3c01801d lui r1,0x801d
001c4044: ac20d064 sw r0,-0x2f9c(r1)         # Clear the data for the current unit whose stats are shown?
001c4048: 3c01801d lui r1,0x801d
001c404c: ac20d070 sw r0,-0x2f90(r1)
001c4050: 3c01801d lui r1,0x801d
001c4054: ac20d074 sw r0,-0x2f8c(r1)
001c4058: 3c01801d lui r1,0x801d
001c405c: ac22d214 sw r2,-0x2dec(r1)
001c4060: a0640000 sb r4,0x0000(r3)
001c4064: 2652ffff addiu r18,r18,0xffff
001c4068: 0641fffd bgez r18,0x001c4060
001c406c: 2463ffff addiu r3,r3,0xffff
001c4070: 3c04801e lui r4,0x801e
001c4074: 2484cadc addiu r4,r4,0xcadc        # r4 = 0x801DCADC
001c4078: 3c05801d lui r5,0x801d
001c407c: 24a59fac addiu r5,r5,0x9fac        # r5 = 0x801C9FAC
001c4080: 0c052fd5 jal 0x0014bf54            # Copy Bytes (0x14bf54)
001c4084: 34060040 ori r6,r0,0x0040          # r6 = 0x40 bytes to copy
001c4088: 0c070fb3 jal 0x001c3ecc            # ATTACK.OUT 001c3ecc - 001c3f40
001c408c: 00000000 nop
001c4090: 3c04801e lui r4,0x801e
001c4094: 2484b650 addiu r4,r4,0xb650        # r4 = 0x801DB650
001c4098: 0c071ca2 jal 0x001c7288            # Prepare Valid Deployment Tiles
001c409c: 00000000 nop
001c40a0: 0c04ed64 jal 0x0013b590            # Get Script Variable
001c40a4: 340401ff ori r4,r0,0x01ff          # Var 0x1FF: Ramza Mandatory
001c40a8: 10400019 beq r2,r0,0x001c4110     # Branch if Ramza is not mandatory
001c40ac: 00000000 nop                       # | Ramza mandatory: auto-deploy him
001c40b0: 00008821 addu r17,r0,r0            # | r17 = Current Row. Set to 0.
001c40b4: 3c06801e lui r6,0x801e
001c40b8: 24c6cbe4 addiu r6,r6,0xcbe4        # | r6 = 0x801dcbe4. Starting address of deployed units on tiles by roster ID. Tiles without a unit have a value of 0xFF. Tiles with a unit have their Roster Slot ID.
001c40bc: 3c05801e lui r5,0x801e
001c40c0: 24a5cbc8 addiu r5,r5,0xcbc8        # | r5 = 0x801dcbc8. Starting address of valid deployment tiles. Valid tiles have a value of 0x01, invalid 0x00.
001c40c4: 00008021 addu r16,r0,r0            # | r16 = Current Tile on Row. Set to 0.
001c40c8: 00c02021 addu r4,r6,r0             # | r4 = Modified Deployed Unit Data
001c40cc: 00a01821 addu r3,r5,r0             # | r3 = Modified Valid Deployment Tile Data
001c40d0: 90620000 lbu r2,0x0000(r3)         # | r2 = Current Deployment Tile
001c40d4: 00000000 nop
001c40d8: 10400003 beq r2,r0,0x001c40e8     # | Branch if current tile is not valid.
001c40dc: 00000000 nop
001c40e0: 08071044 j 0x001c4110              # | | Valid tile found. Exit the loop.
001c40e4: a0800000 sb r0,0x0000(r4)          # | | Save a value of 0 (Ramza's Roster ID) to the first valid tile. This will auto-deploy Ramza.
001c40e8: 24840001 addiu r4,r4,0x0001        # | r4 = Deployed Unit Data ++
001c40ec: 26100001 addiu r16,r16,0x0001      # | r16 = Current Tile on Row ++
001c40f0: 2a020005 slti r2,r16,0x0005        # | r2 = 0x01 if this isn't the final tile on the row.
001c40f4: 1440fff6 bne r2,r0,0x001c40d0     # | Branch back if this row has more tiles left to check.
001c40f8: 24630001 addiu r3,r3,0x0001        # | r3 = Valid Deployment Tile Data ++
001c40fc: 24c60005 addiu r6,r6,0x0005        # | r6 + 5: Next row for Starting Deployed Unit Data
001c4100: 26310001 addiu r17,r17,0x0001      # | r17 = Current Row ++
001c4104: 2a220005 slti r2,r17,0x0005        # | r2 = 0x01 if Current Row still below 0x05
001c4108: 1440ffee bne r2,r0,0x001c40c4     # | Branch back if there are more rows left to check.
001c410c: 24a50005 addiu r5,r5,0x0005        # | r5 + 5: Next row for Starting Valid Deployment Tile data.
001c4110: 3c05801c lui r5,0x801c
001c4114: 24a567cc addiu r5,r5,0x67cc
001c4118: 0c053228 jal 0x0014c8a0              # Initialize Thread
001c411c: 3404000f ori r4,r0,0x000f
001c4120: 3404000f ori r4,r0,0x000f
001c4124: 00002821 addu r5,r0,r0
001c4128: 00003021 addu r6,r0,r0
001c412c: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c4130: 00003821 addu r7,r0,r0
001c4134: 0c0716d4 jal 0x001c5b50              # Choose Unit for Deployment Screen Stats Display
001c4138: 34160001 ori r22,r0,0x0001
001c413c: 3c05801c lui r5,0x801c
001c4140: 24a5f77c addiu r5,r5,0xf77c
001c4144: 0c053228 jal 0x0014c8a0              # Initialize Thread
001c4148: 34040008 ori r4,r0,0x0008
001c414c: 34040008 ori r4,r0,0x0008
001c4150: 3c05801d lui r5,0x801d
001c4154: 24a5d210 addiu r5,r5,0xd210
001c4158: 00003021 addu r6,r0,r0
001c415c: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c4160: 00003821 addu r7,r0,r0
001c4164: 3c17801e lui r23,0x801e
001c4168: 26f7cbe4 addiu r23,r23,0xcbe4
001c416c: 3c15801d lui r21,0x801d
001c4170: 26b5d24c addiu r21,r21,0xd24c
001c4174: 3c14801d lui r20,0x801d
001c4178: 2694d254 addiu r20,r20,0xd254
001c417c: afa00010 sw r0,0x0010(r29)
001c4180: 3c01801e lui r1,0x801e
001c4184: ac20cc7c sw r0,-0x3384(r1)                  # Save 0 to 0x801DCC7C (Squad Number?)
001c4188: 0c04ed64 jal 0x0013b590                     # Get Script Variable
001c418c: 34040034 ori r4,r0,0x0034                   # Var 0x34: Number of Squads
001c4190: 3c04801e lui r4,0x801e
001c4194: 8c84cc7c lw r4,-0x3384(r4)                  # Load Squad Number
001c4198: 00000000 nop
001c419c: 0082102a slt r2,r4,r2                       # r2 = 0x01 if Squad Number is less than the Number of Squads
001c41a0: 10400495 beq r2,r0,0x001c53f8              # Branch way ahead if Squad Number is equal to or higher than the Number of Squads
001c41a4: 00000000 nop
001c41a8: 0c04ed64 jal 0x0013b590                     # Get Script Variable
001c41ac: 24840035 addiu r4,r4,0x0035                 # Var 0x35 + Squad Number: Squad #1 ID (or Squad #2 ID)
001c41b0: 00021840 sll r3,r2,0x01
001c41b4: 00621821 addu r3,r3,r2                      # r3 = Squad ID * 3
001c41b8: 3c01801e lui r1,0x801e
001c41bc: ac22cc78 sw r2,-0x3388(r1)                  # Save Squad ID to 0x801DCC78
001c41c0: 3c02801d lui r2,0x801d
001c41c4: 8c42d270 lw r2,-0x2d90(r2)                  # r2 = Squad Data pointer
001c41c8: 00031880 sll r3,r3,0x02                     # r3 = Squad ID * 12
001c41cc: 00621821 addu r3,r3,r2                      # r3 = Squad ID * 12 + Squad Data pointer - pointer to the data for the current Squad
001c41d0: 3c01801d lui r1,0x801d
001c41d4: ac23d274 sw r3,-0x2d8c(r1)                  # Save Current Squad Data Pointer to 0x801CD274
001c41d8: 0c04ed64 jal 0x0013b590                     # Get Script Variable
001c41dc: 340401fe ori r4,r0,0x01fe                   # Var 0x1FE: Next Random is World Debug Battle Style
001c41e0: 10400005 beq r2,r0,0x001c41f8
001c41e4: 00008821 addu r17,r0,r0
001c41e8: 3c03801d lui r3,0x801d
001c41ec: 8c63d274 lw r3,-0x2d8c(r3)
001c41f0: 34020004 ori r2,r0,0x0004
001c41f4: a0620008 sb r2,0x0008(r3)
001c41f8: 02e02021 addu r4,r23,r0
001c41fc: 340a0005 ori r10,r0,0x0005
001c4200: 3c01801d lui r1,0x801d
001c4204: ac20d058 sw r0,-0x2fa8(r1)
001c4208: 3c01801d lui r1,0x801d
001c420c: ac2ad070 sw r10,-0x2f90(r1)
001c4210: 3c01801d lui r1,0x801d
001c4214: ac20d074 sw r0,-0x2f8c(r1)
001c4218: 00801821 addu r3,r4,r0
001c421c: 24850005 addiu r5,r4,0x0005
001c4220: 90620000 lbu r2,0x0000(r3)
001c4224: 340b00ff ori r11,r0,0x00ff
001c4228: 104b0007 beq r2,r11,0x001c4248
001c422c: 24630001 addiu r3,r3,0x0001
001c4230: 3c02801d lui r2,0x801d
001c4234: 8c42d058 lw r2,-0x2fa8(r2)
001c4238: 00000000 nop
001c423c: 24420001 addiu r2,r2,0x0001
001c4240: 3c01801d lui r1,0x801d
001c4244: ac22d058 sw r2,-0x2fa8(r1)
001c4248: 0065102a slt r2,r3,r5
001c424c: 1440fff4 bne r2,r0,0x001c4220
001c4250: 00000000 nop
001c4254: 26310001 addiu r17,r17,0x0001
001c4258: 2a220005 slti r2,r17,0x0005
001c425c: 1440ffee bne r2,r0,0x001c4218
001c4260: 24840005 addiu r4,r4,0x0005
001c4264: 0c053274 jal 0x0014c9d0                     # Wait For Thread
001c4268: 34040004 ori r4,r0,0x0004
001c426c: 00008821 addu r17,r0,r0
001c4270: 02e02821 addu r5,r23,r0
001c4274: 2402ffff addiu r2,r0,0xffff
001c4278: 340a0002 ori r10,r0,0x0002
001c427c: 340b0002 ori r11,r0,0x0002
001c4280: aeaa0000 sw r10,0x0000(r21)
001c4284: ae8b0000 sw r11,0x0000(r20)
001c4288: 3c01801d lui r1,0x801d
001c428c: ac22d068 sw r2,-0x2f98(r1)
001c4290: aeaa0004 sw r10,0x0004(r21)
001c4294: ae8b0004 sw r11,0x0004(r20)
001c4298: 00008021 addu r16,r0,r0
001c429c: 00a02021 addu r4,r5,r0
001c42a0: 00801821 addu r3,r4,r0
001c42a4: 90620000 lbu r2,0x0000(r3)
001c42a8: 340a00ff ori r10,r0,0x00ff
001c42ac: 144a0051 bne r2,r10,0x001c43f4
001c42b0: 00000000 nop
001c42b4: 26100001 addiu r16,r16,0x0001
001c42b8: 2a020005 slti r2,r16,0x0005
001c42bc: 1440fff8 bne r2,r0,0x001c42a0
001c42c0: 24640001 addiu r4,r3,0x0001
001c42c4: 26310001 addiu r17,r17,0x0001
001c42c8: 2a220005 slti r2,r17,0x0005
001c42cc: 1440fff2 bne r2,r0,0x001c4298
001c42d0: 24a50005 addiu r5,r5,0x0005
001c42d4: 8fab0010 lw r11,0x0010(r29)
001c42d8: 00000000 nop
001c42dc: 15600003 bne r11,r0,0x001c42ec
001c42e0: 2402ffff addiu r2,r0,0xffff
001c42e4: 3c01801d lui r1,0x801d
001c42e8: ac22d068 sw r2,-0x2f98(r1)
001c42ec: 0c070f2a jal 0x001c3ca8                    # ATTACK.OUT 001c3ca8 - 001c3d38
001c42f0: 00000000 nop
001c42f4: 8faa0010 lw r10,0x0010(r29)
001c42f8: 00000000 nop
001c42fc: 11400017 beq r10,r0,0x001c435c
001c4300: 00000000 nop
001c4304: 3c04801d lui r4,0x801d
001c4308: 8c84d064 lw r4,-0x2f9c(r4)
001c430c: 3c01801e lui r1,0x801e
001c4310: 00240821 addu r1,r1,r4
001c4314: 9022cc64 lbu r2,-0x339c(r1)
001c4318: 00000000 nop
001c431c: 14560006 bne r2,r22,0x001c4338
001c4320: 2402ffff addiu r2,r0,0xffff
001c4324: 3c03801d lui r3,0x801d
001c4328: 8c63d068 lw r3,-0x2f98(r3)
001c432c: 00000000 nop
001c4330: 1062000a beq r3,r2,0x001c435c
001c4334: 00000000 nop
001c4338: 3c02801d lui r2,0x801d
001c433c: 8c42d068 lw r2,-0x2f98(r2)
001c4340: 00000000 nop
001c4344: 10440005 beq r2,r4,0x001c435c
001c4348: 00000000 nop
001c434c: 3c05801c lui r5,0x801c
001c4350: 24a560e0 addiu r5,r5,0x60e0
001c4354: 0c053228 jal 0x0014c8a0              # Initialize Thread
001c4358: 34040004 ori r4,r0,0x0004
001c435c: 8fab0010 lw r11,0x0010(r29)
001c4360: 00000000 nop
001c4364: 1576002c bne r11,r22,0x001c4418
001c4368: 340b0002 ori r11,r0,0x0002
001c436c: 3404000e ori r4,r0,0x000e
001c4370: 00002821 addu r5,r0,r0
001c4374: 00003021 addu r6,r0,r0
001c4378: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c437c: 34070001 ori r7,r0,0x0001
001c4380: 34020100 ori r2,r0,0x0100
001c4384: 3c01801d lui r1,0x801d
001c4388: ac22d078 sw r2,-0x2f88(r1)
001c438c: 3c03801d lui r3,0x801d
001c4390: 2463f5f0 addiu r3,r3,0xf5f0
001c4394: 24640005 addiu r4,r3,0x0005
001c4398: 90620000 lbu r2,0x0000(r3)
001c439c: 00000000 nop
001c43a0: 2c420002 sltiu r2,r2,0x0002
001c43a4: 10400002 beq r2,r0,0x001c43b0
001c43a8: 00000000 nop
001c43ac: a0760000 sb r22,0x0000(r3)
001c43b0: 24630001 addiu r3,r3,0x0001
001c43b4: 0064102a slt r2,r3,r4
001c43b8: 1440fff7 bne r2,r0,0x001c4398
001c43bc: 00009021 addu r18,r0,r0
001c43c0: 3c02801d lui r2,0x801d
001c43c4: 8c42d078 lw r2,-0x2f88(r2)
001c43c8: 00000000 nop
001c43cc: 2442fff8 addiu r2,r2,0xfff8
001c43d0: 3c01801d lui r1,0x801d
001c43d4: ac22d078 sw r2,-0x2f88(r1)
001c43d8: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c43dc: 26520008 addiu r18,r18,0x0008
001c43e0: 2a420100 slti r2,r18,0x0100
001c43e4: 1040002f beq r2,r0,0x001c44a4
001c43e8: 00000000 nop
001c43ec: 080710f0 j 0x001c43c0
001c43f0: 00000000 nop
001c43f4: aeb00000 sw r16,0x0000(r21)
001c43f8: ae910000 sw r17,0x0000(r20)
001c43fc: aeb00004 sw r16,0x0004(r21)
001c4400: ae910004 sw r17,0x0004(r20)
001c4404: 90820000 lbu r2,0x0000(r4)
001c4408: 3c01801d lui r1,0x801d
001c440c: ac22d068 sw r2,-0x2f98(r1)
001c4410: 080710b5 j 0x001c42d4
001c4414: 00000000 nop
001c4418: 8faa0010 lw r10,0x0010(r29)
001c441c: 00000000 nop
001c4420: 154b0020 bne r10,r11,0x001c44a4
001c4424: 3404000e ori r4,r0,0x000e
001c4428: 00002821 addu r5,r0,r0
001c442c: 00003021 addu r6,r0,r0
001c4430: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c4434: 34070001 ori r7,r0,0x0001
001c4438: 2402ff00 addiu r2,r0,0xff00
001c443c: 3c01801d lui r1,0x801d
001c4440: ac22d078 sw r2,-0x2f88(r1)
001c4444: 3c03801d lui r3,0x801d
001c4448: 2463f5f0 addiu r3,r3,0xf5f0
001c444c: 24640005 addiu r4,r3,0x0005
001c4450: 90620000 lbu r2,0x0000(r3)
001c4454: 00000000 nop
001c4458: 2c420002 sltiu r2,r2,0x0002
001c445c: 10400002 beq r2,r0,0x001c4468
001c4460: 00000000 nop
001c4464: a0760000 sb r22,0x0000(r3)
001c4468: 24630001 addiu r3,r3,0x0001
001c446c: 0064102a slt r2,r3,r4
001c4470: 1440fff7 bne r2,r0,0x001c4450
001c4474: 00009021 addu r18,r0,r0
001c4478: 3c02801d lui r2,0x801d
001c447c: 8c42d078 lw r2,-0x2f88(r2)
001c4480: 00000000 nop
001c4484: 24420008 addiu r2,r2,0x0008
001c4488: 3c01801d lui r1,0x801d
001c448c: ac22d078 sw r2,-0x2f88(r1)
001c4490: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c4494: 26520008 addiu r18,r18,0x0008
001c4498: 2a420100 slti r2,r18,0x0100
001c449c: 1440fff6 bne r2,r0,0x001c4478
001c44a0: 00000000 nop
001c44a4: 8faa0018 lw r10,0x0018(r29)
001c44a8: 00000000 nop
001c44ac: 1140003e beq r10,r0,0x001c45a8
001c44b0: 340b00ff ori r11,r0,0x00ff
001c44b4: 3c018016 lui r1,0x8016
001c44b8: ac2b603c sw r11,0x603c(r1)
001c44bc: 3c10801d lui r16,0x801d
001c44c0: 2610d214 addiu r16,r16,0xd214
001c44c4: 341100c0 ori r17,r0,0x00c0
001c44c8: 8e020000 lw r2,0x0000(r16)
001c44cc: 00000000 nop
001c44d0: 10400002 beq r2,r0,0x001c44dc
001c44d4: 24420004 addiu r2,r2,0x0004
001c44d8: ae020000 sw r2,0x0000(r16)
001c44dc: 3c028016 lui r2,0x8016
001c44e0: 8c42603c lw r2,0x603c(r2)
001c44e4: 00000000 nop
001c44e8: 10400007 beq r2,r0,0x001c4508
001c44ec: 2442fff0 addiu r2,r2,0xfff0
001c44f0: 3c018016 lui r1,0x8016
001c44f4: ac22603c sw r2,0x603c(r1)
001c44f8: 04410003 bgez r2,0x001c4508
001c44fc: 00000000 nop
001c4500: 3c018016 lui r1,0x8016
001c4504: ac20603c sw r0,0x603c(r1)
001c4508: 3c03801d lui r3,0x801d
001c450c: 8c63d214 lw r3,-0x2dec(r3)
001c4510: 2402fff8 addiu r2,r0,0xfff8
001c4514: 14620008 bne r3,r2,0x001c4538
001c4518: 00000000 nop
001c451c: 34120004 ori r18,r0,0x0004
001c4520: 3c02801d lui r2,0x801d
001c4524: 2442f5f4 addiu r2,r2,0xf5f4
001c4528: a0510000 sb r17,0x0000(r2)
001c452c: 2652ffff addiu r18,r18,0xffff
001c4530: 0641fffd bgez r18,0x001c4528
001c4534: 2442ffff addiu r2,r2,0xffff
001c4538: 3c02801d lui r2,0x801d
001c453c: 8c42d07c lw r2,-0x2f84(r2)
001c4540: 00000000 nop
001c4544: 10400003 beq r2,r0,0x001c4554
001c4548: 2442fffc addiu r2,r2,0xfffc
001c454c: 3c01801d lui r1,0x801d
001c4550: ac22d07c sw r2,-0x2f84(r1)
001c4554: 3c028016 lui r2,0x8016
001c4558: 8c42603c lw r2,0x603c(r2)
001c455c: 00000000 nop
001c4560: 1440000b bne r2,r0,0x001c4590
001c4564: 00000000 nop
001c4568: 3c02801d lui r2,0x801d
001c456c: 8c42d214 lw r2,-0x2dec(r2)
001c4570: 00000000 nop
001c4574: 14400006 bne r2,r0,0x001c4590
001c4578: 00000000 nop
001c457c: 3c02801d lui r2,0x801d
001c4580: 8c42d07c lw r2,-0x2f84(r2)
001c4584: 00000000 nop
001c4588: 10400005 beq r2,r0,0x001c45a0
001c458c: 00000000 nop
001c4590: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c4594: 00000000 nop
001c4598: 08071132 j 0x001c44c8
001c459c: 00000000 nop
001c45a0: 08071170 j 0x001c45c0
001c45a4: afa00018 sw r0,0x0018(r29)
001c45a8: 3c01801d lui r1,0x801d
001c45ac: a020f5f0 sb r0,-0x0a10(r1)
001c45b0: 3c01801d lui r1,0x801d
001c45b4: a020f5f1 sb r0,-0x0a0f(r1)
001c45b8: 3c01801d lui r1,0x801d
001c45bc: a020f5f3 sb r0,-0x0a0d(r1)
001c45c0: 3c05801c lui r5,0x801c
001c45c4: 24a57bec addiu r5,r5,0x7bec
001c45c8: 0c053228 jal 0x0014c8a0              # Initialize Thread
001c45cc: 3404000e ori r4,r0,0x000e
001c45d0: 3404000e ori r4,r0,0x000e
001c45d4: 00002821 addu r5,r0,r0
001c45d8: 00003021 addu r6,r0,r0
001c45dc: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c45e0: 00003821 addu r7,r0,r0
001c45e4: 3c1e801d lui r30,0x801d
001c45e8: 27def5f2 addiu r30,r30,0xf5f2
001c45ec: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c45f0: 00000000 nop
001c45f4: 3c04801d lui r4,0x801d
001c45f8: 8c84d064 lw r4,-0x2f9c(r4)
001c45fc: 0c070f4f jal 0x001c3d3c              # ATTACK.OUT 001c3d3c - 001c3d88
001c4600: 00000000 nop
001c4604: 3c01801d lui r1,0x801d
001c4608: ac22d220 sw r2,-0x2de0(r1)
001c460c: 0c05295e jal 0x0014a578              # 0014a578 - 0014a594
001c4610: 00002021 addu r4,r0,r0
001c4614: 00409821 addu r19,r2,r0
001c4618: 8e620000 lw r2,0x0000(r19)
001c461c: 00000000 nop
001c4620: 30420100 andi r2,r2,0x0100
001c4624: 1040000c beq r2,r0,0x001c4658
001c4628: 00000000 nop
001c462c: 3c05801d lui r5,0x801d
001c4630: 24a58cf0 addiu r5,r5,0x8cf0
001c4634: 0c053228 jal 0x0014c8a0              # Initialize Thread
001c4638: 34040003 ori r4,r0,0x0003
001c463c: 34040003 ori r4,r0,0x0003
001c4640: 34050001 ori r5,r0,0x0001
001c4644: 00003021 addu r6,r0,r0
001c4648: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c464c: 00003821 addu r7,r0,r0
001c4650: 0c053274 jal 0x0014c9d0                     # Wait For Thread
001c4654: 34040003 ori r4,r0,0x0003
001c4658: 93c20000 lbu r2,0x0000(r30)
001c465c: 00000000 nop
001c4660: 2c420002 sltiu r2,r2,0x0002
001c4664: 10400014 beq r2,r0,0x001c46b8
001c4668: 340a00ff ori r10,r0,0x00ff
001c466c: 3c04801d lui r4,0x801d
001c4670: 8c84d074 lw r4,-0x2f8c(r4)
001c4674: 00000000 nop
001c4678: 00042080 sll r4,r4,0x02
001c467c: 00941021 addu r2,r4,r20
001c4680: 8c430000 lw r3,0x0000(r2)
001c4684: 00952021 addu r4,r4,r21
001c4688: 00031080 sll r2,r3,0x02
001c468c: 00431021 addu r2,r2,r3
001c4690: 8c830000 lw r3,0x0000(r4)
001c4694: 00571021 addu r2,r2,r23
001c4698: 00431021 addu r2,r2,r3
001c469c: 90420000 lbu r2,0x0000(r2)
001c46a0: 00000000 nop
001c46a4: 104a0003 beq r2,r10,0x001c46b4
001c46a8: 00000000 nop
001c46ac: 080711ae j 0x001c46b8
001c46b0: a3c00000 sb r0,0x0000(r30)
001c46b4: a3d60000 sb r22,0x0000(r30)
001c46b8: 0c053287 jal 0x0014ca1c                     # Check Thread r4 Running Status
001c46bc: 3404000d ori r4,r0,0x000d
001c46c0: 14400009 bne r2,r0,0x001c46e8
001c46c4: 00000000 nop
001c46c8: 3c03801d lui r3,0x801d
001c46cc: 2463f5f3 addiu r3,r3,0xf5f3
001c46d0: 90620000 lbu r2,0x0000(r3)
001c46d4: 00000000 nop
001c46d8: 2c420002 sltiu r2,r2,0x0002
001c46dc: 10400002 beq r2,r0,0x001c46e8
001c46e0: 00000000 nop
001c46e4: a0600000 sb r0,0x0000(r3)
001c46e8: 3c03801d lui r3,0x801d
001c46ec: 2463f5f4 addiu r3,r3,0xf5f4
001c46f0: 90620000 lbu r2,0x0000(r3)
001c46f4: 00000000 nop
001c46f8: 2c420002 sltiu r2,r2,0x0002
001c46fc: 10400009 beq r2,r0,0x001c4724
001c4700: 00000000 nop
001c4704: 3c02801d lui r2,0x801d
001c4708: 8c42d058 lw r2,-0x2fa8(r2)
001c470c: 00000000 nop
001c4710: 14400003 bne r2,r0,0x001c4720
001c4714: 00000000 nop
001c4718: 080711c9 j 0x001c4724
001c471c: a0760000 sb r22,0x0000(r3)
001c4720: a0600000 sb r0,0x0000(r3)
001c4724: 3c03801d lui r3,0x801d
001c4728: 8c63d074 lw r3,-0x2f8c(r3)
001c472c: 8e620000 lw r2,0x0000(r19)
001c4730: 00000000 nop
001c4734: 30428000 andi r2,r2,0x8000
001c4738: 1040000c beq r2,r0,0x001c476c
001c473c: 0003902b sltu r18,r0,r3
001c4740: 00121080 sll r2,r18,0x02
001c4744: 00552021 addu r4,r2,r21
001c4748: 8c830000 lw r3,0x0000(r4)
001c474c: 00000000 nop
001c4750: 28620004 slti r2,r3,0x0004
001c4754: 10400005 beq r2,r0,0x001c476c
001c4758: 24620001 addiu r2,r3,0x0001
001c475c: ac820000 sw r2,0x0000(r4)
001c4760: 34020003 ori r2,r0,0x0003             # Set sound effect ID to play: 0x03
001c4764: 3c018016 lui r1,0x8016
001c4768: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x03, Move Cursor
001c476c: 8e620000 lw r2,0x0000(r19)
001c4770: 00000000 nop
001c4774: 30422000 andi r2,r2,0x2000
001c4778: 1040000a beq r2,r0,0x001c47a4
001c477c: 00121080 sll r2,r18,0x02
001c4780: 00551821 addu r3,r2,r21
001c4784: 8c620000 lw r2,0x0000(r3)
001c4788: 00000000 nop
001c478c: 18400005 blez r2,0x001c47a4
001c4790: 2442ffff addiu r2,r2,0xffff
001c4794: ac620000 sw r2,0x0000(r3)
001c4798: 34020003 ori r2,r0,0x0003             # Set sound effect ID to play: 0x03
001c479c: 3c018016 lui r1,0x8016
001c47a0: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x03, Move Cursor
001c47a4: 8e620000 lw r2,0x0000(r19)
001c47a8: 00000000 nop
001c47ac: 30421000 andi r2,r2,0x1000
001c47b0: 1040000b beq r2,r0,0x001c47e0
001c47b4: 00121080 sll r2,r18,0x02
001c47b8: 00542021 addu r4,r2,r20
001c47bc: 8c830000 lw r3,0x0000(r4)
001c47c0: 00000000 nop
001c47c4: 28620004 slti r2,r3,0x0004
001c47c8: 10400005 beq r2,r0,0x001c47e0
001c47cc: 24620001 addiu r2,r3,0x0001
001c47d0: ac820000 sw r2,0x0000(r4)
001c47d4: 34020003 ori r2,r0,0x0003             # Set sound effect ID to play: 0x03
001c47d8: 3c018016 lui r1,0x8016
001c47dc: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x03, Move Cursor
001c47e0: 8e620000 lw r2,0x0000(r19)
001c47e4: 00000000 nop
001c47e8: 30424000 andi r2,r2,0x4000
001c47ec: 1040000a beq r2,r0,0x001c4818
001c47f0: 00121080 sll r2,r18,0x02
001c47f4: 00541821 addu r3,r2,r20
001c47f8: 8c620000 lw r2,0x0000(r3)
001c47fc: 00000000 nop
001c4800: 18400005 blez r2,0x001c4818
001c4804: 2442ffff addiu r2,r2,0xffff
001c4808: ac620000 sw r2,0x0000(r3)
001c480c: 34020003 ori r2,r0,0x0003             # Set sound effect ID to play: 0x03
001c4810: 3c018016 lui r1,0x8016
001c4814: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x03, Move Cursor
001c4818: 00121880 sll r3,r18,0x02
001c481c: 00751021 addu r2,r3,r21
001c4820: 00741821 addu r3,r3,r20
001c4824: 8c500000 lw r16,0x0000(r2)
001c4828: 3c02801d lui r2,0x801d
001c482c: 8c42d074 lw r2,-0x2f8c(r2)
001c4830: 8c710000 lw r17,0x0000(r3)
001c4834: 14400024 bne r2,r0,0x001c48c8
001c4838: 340b00ff ori r11,r0,0x00ff
001c483c: 00111080 sll r2,r17,0x02
001c4840: 00511821 addu r3,r2,r17
001c4844: 00771021 addu r2,r3,r23
001c4848: 00501021 addu r2,r2,r16
001c484c: 90440000 lbu r4,0x0000(r2)
001c4850: 00000000 nop
001c4854: 148b0015 bne r4,r11,0x001c48ac
001c4858: 00000000 nop
001c485c: 3c02801e lui r2,0x801e
001c4860: 2442cbc8 addiu r2,r2,0xcbc8
001c4864: 00621021 addu r2,r3,r2
001c4868: 00501021 addu r2,r2,r16
001c486c: 90420000 lbu r2,0x0000(r2)
001c4870: 00000000 nop
001c4874: 10400029 beq r2,r0,0x001c491c
001c4878: 00000000 nop
001c487c: 3c02801d lui r2,0x801d
001c4880: 8c42d274 lw r2,-0x2d8c(r2)
001c4884: 00000000 nop
001c4888: 90430008 lbu r3,0x0008(r2)
001c488c: 3c02801d lui r2,0x801d
001c4890: 8c42d058 lw r2,-0x2fa8(r2)
001c4894: 00000000 nop
001c4898: 0043102a slt r2,r2,r3
001c489c: 1040001f beq r2,r0,0x001c491c
001c48a0: 00000000 nop
001c48a4: 08071243 j 0x001c490c
001c48a8: 00000000 nop
001c48ac: 3c02801d lui r2,0x801d
001c48b0: 8c42d064 lw r2,-0x2f9c(r2)
001c48b4: 00000000 nop
001c48b8: 1044002e beq r2,r4,0x001c4974
001c48bc: 34020003 ori r2,r0,0x0003
001c48c0: 08071262 j 0x001c4988
001c48c4: 00000000 nop
001c48c8: 14560031 bne r2,r22,0x001c4990
001c48cc: 00111080 sll r2,r17,0x02
001c48d0: 00511821 addu r3,r2,r17
001c48d4: 00771021 addu r2,r3,r23
001c48d8: 00501021 addu r2,r2,r16
001c48dc: 90440000 lbu r4,0x0000(r2)
001c48e0: 340b00ff ori r11,r0,0x00ff
001c48e4: 148b0011 bne r4,r11,0x001c492c
001c48e8: 00000000 nop
001c48ec: 3c02801e lui r2,0x801e
001c48f0: 2442cbc8 addiu r2,r2,0xcbc8
001c48f4: 00621021 addu r2,r3,r2
001c48f8: 00501021 addu r2,r2,r16
001c48fc: 90420000 lbu r2,0x0000(r2)
001c4900: 00000000 nop
001c4904: 10400005 beq r2,r0,0x001c491c
001c4908: 00000000 nop
001c490c: 3c01801d lui r1,0x801d
001c4910: ac20d070 sw r0,-0x2f90(r1)
001c4914: 08071264 j 0x001c4990
001c4918: 00000000 nop
001c491c: 3c01801d lui r1,0x801d
001c4920: ac36d070 sw r22,-0x2f90(r1)
001c4924: 08071264 j 0x001c4990
001c4928: 00000000 nop
001c492c: 3c02801d lui r2,0x801d
001c4930: 8c42d254 lw r2,-0x2dac(r2)
001c4934: 00000000 nop
001c4938: 00021880 sll r3,r2,0x02
001c493c: 00621821 addu r3,r3,r2
001c4940: 3c02801d lui r2,0x801d
001c4944: 8c42d24c lw r2,-0x2db4(r2)
001c4948: 00771821 addu r3,r3,r23
001c494c: 00621821 addu r3,r3,r2
001c4950: 90630000 lbu r3,0x0000(r3)
001c4954: 00000000 nop
001c4958: 1464000b bne r3,r4,0x001c4988
001c495c: 34020004 ori r2,r0,0x0004
001c4960: 3c02801d lui r2,0x801d
001c4964: 8c42d064 lw r2,-0x2f9c(r2)
001c4968: 00000000 nop
001c496c: 14430006 bne r2,r3,0x001c4988
001c4970: 34020003 ori r2,r0,0x0003
001c4974: 340a0002 ori r10,r0,0x0002
001c4978: 3c01801d lui r1,0x801d
001c497c: ac2ad070 sw r10,-0x2f90(r1)
001c4980: 08071264 j 0x001c4990
001c4984: 00000000 nop
001c4988: 3c01801d lui r1,0x801d
001c498c: ac22d070 sw r2,-0x2f90(r1)
001c4990: 8e620000 lw r2,0x0000(r19)
001c4994: 3c04801e lui r4,0x801e
001c4998: 30420800 andi r2,r2,0x0800
001c499c: 10400095 beq r2,r0,0x001c4bf4
001c49a0: 8c84cc7c lw r4,-0x3384(r4)
001c49a4: 8c22d058 lw r2,-0x2fa8(r1)
001c49a8: 00000000 nop
001c49ac: 00441021 addu r2,r2,r4
001c49b0: 14400015 bne r2,r0,0x001c4a08
001c49b4: 34020085 ori r2,r0,0x0085             # Set sound effect to play: 0x85, saved at 001c4a0c
001c49b8: 3404000d ori r4,r0,0x000d
001c49bc: 3c058014 lui r5,0x8014
001c49c0: 24a5b280 addiu r5,r5,0xb280
001c49c4: 340b0005 ori r11,r0,0x0005            # Set sound effect to play: 0x05
001c49c8: 3c10801d lui r16,0x801d
001c49cc: 2610d178 addiu r16,r16,0xd178
001c49d0: 2402900b addiu r2,r0,0x900b
001c49d4: 3c018016 lui r1,0x8016
001c49d8: ac2b5fb4 sw r11,0x5fb4(r1)            # Save sound effect ID to play: 0x05, Invalid
001c49dc: 0c053228 jal 0x0014c8a0               # Initialize Thread
001c49e0: a6020000 sh r2,0x0000(r16)
001c49e4: 3404000d ori r4,r0,0x000d
001c49e8: 2605ffe4 addiu r5,r16,0xffe4
001c49ec: 00003021 addu r6,r0,r0
001c49f0: 0c05328e jal 0x0014ca38               # Store Thread Function Parameters
001c49f4: 00003821 addu r7,r0,r0
001c49f8: 0c053274 jal 0x0014c9d0               # Wait For Thread
001c49fc: 3404000d ori r4,r0,0x000d
001c4a00: 080712fd j 0x001c4bf4
001c4a04: 00000000 nop
001c4a08: 3c018016 lui r1,0x8016
001c4a0c: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x85, Crystal Pickup (Pressed Start)
001c4a10: 34020007 ori r2,r0,0x0007
001c4a14: 3c01801d lui r1,0x801d
001c4a18: a022f5f4 sb r2,-0x0a0c(r1)
001c4a1c: 0c04ed64 jal 0x0013b590               # Get Script Variable
001c4a20: 34040034 ori r4,r0,0x0034             # Var 0x34: Number of Squads
001c4a24: 3c03801e lui r3,0x801e
001c4a28: 8c63cc7c lw r3,-0x3384(r3)
001c4a2c: 2442ffff addiu r2,r2,0xffff           # r2 = Number of Squads -1
001c4a30: 1043002a beq r2,r3,0x001c4adc         # Branch if only one squad
001c4a34: 00000000 nop
001c4a38: 3c03801d lui r3,0x801d
001c4a3c: 8c63d05c lw r3,-0x2fa4(r3)
001c4a40: 3c02801d lui r2,0x801d
001c4a44: 8c42d058 lw r2,-0x2fa8(r2)
001c4a48: 00000000 nop
001c4a4c: 0043102a slt r2,r2,r3
001c4a50: 10400022 beq r2,r0,0x001c4adc
001c4a54: 340a0005 ori r10,r0,0x0005
001c4a58: 3c01801d lui r1,0x801d
001c4a5c: ac2ad070 sw r10,-0x2f90(r1)
001c4a60: 3c03801d lui r3,0x801d
001c4a64: 2463f5f0 addiu r3,r3,0xf5f0
001c4a68: 24640005 addiu r4,r3,0x0005
001c4a6c: 90620000 lbu r2,0x0000(r3)
001c4a70: 00000000 nop
001c4a74: 2c420002 sltiu r2,r2,0x0002
001c4a78: 10400002 beq r2,r0,0x001c4a84
001c4a7c: 00000000 nop
001c4a80: a0760000 sb r22,0x0000(r3)
001c4a84: 24630001 addiu r3,r3,0x0001
001c4a88: 0064102a slt r2,r3,r4
001c4a8c: 1440fff7 bne r2,r0,0x001c4a6c
001c4a90: 00002821 addu r5,r0,r0
001c4a94: 3404000e ori r4,r0,0x000e
001c4a98: 00003021 addu r6,r0,r0
001c4a9c: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c4aa0: 34070001 ori r7,r0,0x0001
001c4aa4: 00009021 addu r18,r0,r0
001c4aa8: 3c02801d lui r2,0x801d
001c4aac: 8c42d078 lw r2,-0x2f88(r2)
001c4ab0: 00000000 nop
001c4ab4: 24420008 addiu r2,r2,0x0008
001c4ab8: 3c01801d lui r1,0x801d
001c4abc: ac22d078 sw r2,-0x2f88(r1)
001c4ac0: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c4ac4: 26520008 addiu r18,r18,0x0008
001c4ac8: 2a420100 slti r2,r18,0x0100
001c4acc: 1440fff6 bne r2,r0,0x001c4aa8
001c4ad0: 02e02821 addu r5,r23,r0
001c4ad4: 080712de j 0x001c4b78
001c4ad8: 00000000 nop
001c4adc: 34040004 ori r4,r0,0x0004
001c4ae0: 3c10801d lui r16,0x801d
001c4ae4: 2610d220 addiu r16,r16,0xd220
001c4ae8: 8e120000 lw r18,0x0000(r16)
001c4aec: 3c058014 lui r5,0x8014
001c4af0: 24a5b280 addiu r5,r5,0xb280
001c4af4: 0c053228 jal 0x0014c8a0              # Initialize Thread
001c4af8: ae160000 sw r22,0x0000(r16)
001c4afc: 34040004 ori r4,r0,0x0004
001c4b00: 00003021 addu r6,r0,r0
001c4b04: 3c058017 lui r5,0x8017
001c4b08: 8ca53cb8 lw r5,0x3cb8(r5)
001c4b0c: 00003821 addu r7,r0,r0
001c4b10: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c4b14: 24a500b4 addiu r5,r5,0x00b4
001c4b18: 0c053274 jal 0x0014c9d0                     # Wait For Thread
001c4b1c: 34040004 ori r4,r0,0x0004
001c4b20: 0c053274 jal 0x0014c9d0                     # Wait For Thread
001c4b24: 34040003 ori r4,r0,0x0003
001c4b28: 3c02801e lui r2,0x801e
001c4b2c: 8442cbc4 lh r2,-0x343c(r2)
001c4b30: 00000000 nop
001c4b34: 1440fead bne r2,r0,0x001c45ec
001c4b38: ae120000 sw r18,0x0000(r16)
001c4b3c: 3c05801e lui r5,0x801e
001c4b40: 24a5cbe4 addiu r5,r5,0xcbe4
001c4b44: 3c02801e lui r2,0x801e
001c4b48: 8c42cc7c lw r2,-0x3384(r2)
001c4b4c: 34060019 ori r6,r0,0x0019
001c4b50: 3c0b801e lui r11,0x801e
001c4b54: 256bcc00 addiu r11,r11,0xcc00
001c4b58: 00022040 sll r4,r2,0x01
001c4b5c: 00822021 addu r4,r4,r2
001c4b60: 000420c0 sll r4,r4,0x03
001c4b64: 00822021 addu r4,r4,r2
001c4b68: 0c052fd5 jal 0x0014bf54                     # Copy Bytes (0x14bf54)
001c4b6c: 008b2021 addu r4,r4,r11
001c4b70: 080714ee j 0x001c53b8
001c4b74: 00000000 nop
001c4b78: 34060019 ori r6,r0,0x0019
001c4b7c: 3c02801e lui r2,0x801e
001c4b80: 8c42cc7c lw r2,-0x3384(r2)
001c4b84: 3c0a801e lui r10,0x801e
001c4b88: 254acc00 addiu r10,r10,0xcc00
001c4b8c: 00022040 sll r4,r2,0x01
001c4b90: 00822021 addu r4,r4,r2
001c4b94: 000420c0 sll r4,r4,0x03
001c4b98: 00822021 addu r4,r4,r2
001c4b9c: 0c052fd5 jal 0x0014bf54                     # Copy Bytes (0x14bf54)
001c4ba0: 008a2021 addu r4,r4,r10
001c4ba4: 3c03801e lui r3,0x801e
001c4ba8: 8c63cc7c lw r3,-0x3384(r3)
001c4bac: 00000000 nop
001c4bb0: 28620003 slti r2,r3,0x0003
001c4bb4: 1040000a beq r2,r0,0x001c4be0
001c4bb8: 02e02021 addu r4,r23,r0
001c4bbc: 00032840 sll r5,r3,0x01
001c4bc0: 00a32821 addu r5,r5,r3
001c4bc4: 000528c0 sll r5,r5,0x03
001c4bc8: 00a32821 addu r5,r5,r3
001c4bcc: 3c0b801e lui r11,0x801e
001c4bd0: 256bcc19 addiu r11,r11,0xcc19
001c4bd4: 00ab2821 addu r5,r5,r11
001c4bd8: 0c052fd5 jal 0x0014bf54                     # Copy Bytes (0x14bf54)
001c4bdc: 34060019 ori r6,r0,0x0019
001c4be0: 340a0002 ori r10,r0,0x0002
001c4be4: 3c01801d lui r1,0x801d
001c4be8: ac20d074 sw r0,-0x2f8c(r1)
001c4bec: 080714ee j 0x001c53b8
001c4bf0: afaa0010 sw r10,0x0010(r29)
001c4bf4: 8e620000 lw r2,0x0000(r19)
001c4bf8: 00000000 nop
001c4bfc: 30420040 andi r2,r2,0x0040
001c4c00: 10400052 beq r2,r0,0x001c4d4c
001c4c04: 00000000 nop
001c4c08: 3c02801d lui r2,0x801d
001c4c0c: 8c42d074 lw r2,-0x2f8c(r2)
001c4c10: 00000000 nop
001c4c14: 1440004d bne r2,r0,0x001c4d4c
001c4c18: 00000000 nop
001c4c1c: 3c02801e lui r2,0x801e
001c4c20: 8c42cc7c lw r2,-0x3384(r2)
001c4c24: 00000000 nop
001c4c28: 10400048 beq r2,r0,0x001c4d4c
001c4c2c: 340b0002 ori r11,r0,0x0002            # Set sound effect ID to play: 0x02
001c4c30: 3c03801d lui r3,0x801d
001c4c34: 2463f5f0 addiu r3,r3,0xf5f0
001c4c38: 24640005 addiu r4,r3,0x0005
001c4c3c: 3c018016 lui r1,0x8016
001c4c40: ac2b5fb4 sw r11,0x5fb4(r1)            # Save sound effect ID to play: 0x02, Cancel Selection
001c4c44: 340a0005 ori r10,r0,0x0005
001c4c48: 3c01801d lui r1,0x801d
001c4c4c: ac2ad070 sw r10,-0x2f90(r1)
001c4c50: 90620000 lbu r2,0x0000(r3)
001c4c54: 00000000 nop
001c4c58: 2c420002 sltiu r2,r2,0x0002
001c4c5c: 10400002 beq r2,r0,0x001c4c68
001c4c60: 00000000 nop
001c4c64: a0760000 sb r22,0x0000(r3)
001c4c68: 24630001 addiu r3,r3,0x0001
001c4c6c: 0064102a slt r2,r3,r4
001c4c70: 1440fff7 bne r2,r0,0x001c4c50
001c4c74: 00002821 addu r5,r0,r0
001c4c78: 3404000e ori r4,r0,0x000e
001c4c7c: 00003021 addu r6,r0,r0
001c4c80: 0c05328e jal 0x0014ca38               # Store Thread Function Parameters
001c4c84: 34070001 ori r7,r0,0x0001
001c4c88: 00009021 addu r18,r0,r0
001c4c8c: 3c02801d lui r2,0x801d
001c4c90: 8c42d078 lw r2,-0x2f88(r2)
001c4c94: 00000000 nop
001c4c98: 2442fff8 addiu r2,r2,0xfff8
001c4c9c: 3c01801d lui r1,0x801d
001c4ca0: ac22d078 sw r2,-0x2f88(r1)
001c4ca4: 0c0532a0 jal 0x0014ca80               # Switch To Next Thread
001c4ca8: 26520008 addiu r18,r18,0x0008
001c4cac: 2a420100 slti r2,r18,0x0100
001c4cb0: 1440fff6 bne r2,r0,0x001c4c8c
001c4cb4: 02e02821 addu r5,r23,r0
001c4cb8: 34060019 ori r6,r0,0x0019
001c4cbc: 3c02801e lui r2,0x801e
001c4cc0: 8c42cc7c lw r2,-0x3384(r2)
001c4cc4: 3c0b801e lui r11,0x801e
001c4cc8: 256bcc00 addiu r11,r11,0xcc00
001c4ccc: 00022040 sll r4,r2,0x01
001c4cd0: 00822021 addu r4,r4,r2
001c4cd4: 000420c0 sll r4,r4,0x03
001c4cd8: 00822021 addu r4,r4,r2
001c4cdc: 0c052fd5 jal 0x0014bf54               # Copy Bytes (0x14bf54)
001c4ce0: 008b2021 addu r4,r4,r11
001c4ce4: 02e02021 addu r4,r23,r0
001c4ce8: 34060019 ori r6,r0,0x0019
001c4cec: 3c02801e lui r2,0x801e
001c4cf0: 8c42cc7c lw r2,-0x3384(r2)
001c4cf4: 3c0a801e lui r10,0x801e
001c4cf8: 254acc00 addiu r10,r10,0xcc00
001c4cfc: 2442ffff addiu r2,r2,0xffff
001c4d00: 00022840 sll r5,r2,0x01
001c4d04: 00a22821 addu r5,r5,r2
001c4d08: 000528c0 sll r5,r5,0x03
001c4d0c: 00a22821 addu r5,r5,r2
001c4d10: 3c01801e lui r1,0x801e
001c4d14: ac22cc7c sw r2,-0x3384(r1)
001c4d18: 0c052fd5 jal 0x0014bf54                     # Copy Bytes (0x14bf54)
001c4d1c: 00aa2821 addu r5,r5,r10
001c4d20: 3c02801e lui r2,0x801e
001c4d24: 8c42cc7c lw r2,-0x3384(r2)
001c4d28: 340b0001 ori r11,r0,0x0001
001c4d2c: afab0010 sw r11,0x0010(r29)
001c4d30: 3c01801d lui r1,0x801d
001c4d34: ac20d074 sw r0,-0x2f8c(r1)
001c4d38: 2442ffff addiu r2,r2,0xffff
001c4d3c: 3c01801e lui r1,0x801e
001c4d40: ac22cc7c sw r2,-0x3384(r1)
001c4d44: 080714ee j 0x001c53b8
001c4d48: 00000000 nop
001c4d4c: 8e620000 lw r2,0x0000(r19)
001c4d50: 00000000 nop
001c4d54: 30420020 andi r2,r2,0x0020
001c4d58: 1040005c beq r2,r0,0x001c4ecc
001c4d5c: 00000000 nop
001c4d60: 3c02801d lui r2,0x801d
001c4d64: 8c42d074 lw r2,-0x2f8c(r2)
001c4d68: 00000000 nop
001c4d6c: 14400059 bne r2,r0,0x001c4ed4
001c4d70: 00121880 sll r3,r18,0x02
001c4d74: 00751021 addu r2,r3,r21
001c4d78: 00741821 addu r3,r3,r20
001c4d7c: 8c500000 lw r16,0x0000(r2)
001c4d80: 8c710000 lw r17,0x0000(r3)
001c4d84: 3c02801e lui r2,0x801e
001c4d88: 2442cbc8 addiu r2,r2,0xcbc8
001c4d8c: 00111880 sll r3,r17,0x02
001c4d90: 00711821 addu r3,r3,r17
001c4d94: 00621021 addu r2,r3,r2
001c4d98: 00501021 addu r2,r2,r16
001c4d9c: 90420000 lbu r2,0x0000(r2)
001c4da0: 00000000 nop
001c4da4: 10400047 beq r2,r0,0x001c4ec4
001c4da8: 00771021 addu r2,r3,r23
001c4dac: 00509021 addu r18,r2,r16
001c4db0: 92420000 lbu r2,0x0000(r18)
001c4db4: 340a00ff ori r10,r0,0x00ff
001c4db8: 144a0039 bne r2,r10,0x001c4ea0
001c4dbc: 3403003c ori r3,r0,0x003c             # Set sound effect ID to play: 0x3C, saved at 001c4eac
001c4dc0: 3c04801d lui r4,0x801d
001c4dc4: 8c84d064 lw r4,-0x2f9c(r4)
001c4dc8: 0c070f6d jal 0x001c3db4               # ATTACK.OUT 001c3db4 - 001c3e00
001c4dcc: 00000000 nop
001c4dd0: 1440002b bne r2,r0,0x001c4e80
001c4dd4: 02002021 addu r4,r16,r0
001c4dd8: 3c02801d lui r2,0x801d
001c4ddc: 8c42d274 lw r2,-0x2d8c(r2)            # r2 = Pointer to Current Squad Data
001c4de0: 00000000 nop
001c4de4: 90430008 lbu r3,0x0008(r2)            # r3 = Current Squad maximum number of deployed units
001c4de8: 3c02801d lui r2,0x801d
001c4dec: 8c42d058 lw r2,-0x2fa8(r2)            # *0x001CD058: Number of units set to be deployed for this squad
001c4df0: 00000000 nop
001c4df4: 0043102a slt r2,r2,r3                 # r2 = 0x01 if number of units deployed is less than the max
001c4df8: 1040000e beq r2,r0,0x001c4e34         # Branch if the maximum has been reached for this squad
001c4dfc: 3404000d ori r4,r0,0x000d
001c4e00: 3c02801d lui r2,0x801d
001c4e04: 9042d064 lbu r2,-0x2f9c(r2)
001c4e08: 3c018016 lui r1,0x8016
001c4e0c: ac365fb4 sw r22,0x5fb4(r1)            # Set sound effect ID to play: 0x01, Confirm Selection
001c4e10: a2420000 sb r2,0x0000(r18)
001c4e14: 3c02801d lui r2,0x801d
001c4e18: 8c42d058 lw r2,-0x2fa8(r2)
001c4e1c: 00000000 nop
001c4e20: 24420001 addiu r2,r2,0x0001
001c4e24: 3c01801d lui r1,0x801d
001c4e28: ac22d058 sw r2,-0x2fa8(r1)
001c4e2c: 08071450 j 0x001c5140
001c4e30: 00000000 nop
001c4e34: 3c058014 lui r5,0x8014                # Trying to deploy more than the maximum number
001c4e38: 24a5b280 addiu r5,r5,0xb280
001c4e3c: 340b0005 ori r11,r0,0x0005            # Set sound effect ID to play: 0x05
001c4e40: 3c10801d lui r16,0x801d
001c4e44: 2610d178 addiu r16,r16,0xd178
001c4e48: 2402900c addiu r2,r0,0x900c
001c4e4c: 3c018016 lui r1,0x8016                # 001c4e3c: 340b0005 ori r11,r0,0x0005
001c4e50: ac2b5fb4 sw r11,0x5fb4(r1)            # Save sound effect ID to play: 0x05, Invalid
001c4e54: 0c053228 jal 0x0014c8a0               # Initialize Thread
001c4e58: a6020000 sh r2,0x0000(r16)
001c4e5c: 3404000d ori r4,r0,0x000d
001c4e60: 2605ffe4 addiu r5,r16,0xffe4
001c4e64: 00003021 addu r6,r0,r0
001c4e68: 0c05328e jal 0x0014ca38               # Store Thread Function Parameters
001c4e6c: 00003821 addu r7,r0,r0
001c4e70: 0c053274 jal 0x0014c9d0               # Wait For Thread
001c4e74: 3404000d ori r4,r0,0x000d
001c4e78: 08071450 j 0x001c5140
001c4e7c: 00000000 nop
001c4e80: 3c06801d lui r6,0x801d
001c4e84: 8cc6d064 lw r6,-0x2f9c(r6)
001c4e88: 3c018016 lui r1,0x8016
001c4e8c: ac365fb4 sw r22,0x5fb4(r1)            # Save sound effect ID to play: 0x01, Confirm Selection
001c4e90: 0c070f97 jal 0x001c3e5c               # ATTACK.OUT 001c3e5c - 001c3ec8
001c4e94: 02202821 addu r5,r17,r0
001c4e98: 08071450 j 0x001c5140
001c4e9c: 00000000 nop
001c4ea0: 8ea20000 lw r2,0x0000(r21)
001c4ea4: 8e840000 lw r4,0x0000(r20)
001c4ea8: 3c018016 lui r1,0x8016
001c4eac: ac235fb4 sw r3,0x5fb4(r1)             # Save sound effect ID to play: 0x3C, Menu Cursor Move 1
001c4eb0: 3c01801d lui r1,0x801d
001c4eb4: ac36d074 sw r22,-0x2f8c(r1)
001c4eb8: aea20004 sw r2,0x0004(r21)
001c4ebc: 08071450 j 0x001c5140
001c4ec0: ae840004 sw r4,0x0004(r20)
001c4ec4: 0807144e j 0x001c5138
001c4ec8: 340a0005 ori r10,r0,0x0005
001c4ecc: 3c02801d lui r2,0x801d
001c4ed0: 8c42d074 lw r2,-0x2f8c(r2)
001c4ed4: 00000000 nop
001c4ed8: 14560099 bne r2,r22,0x001c5140
001c4edc: 00121080 sll r2,r18,0x02
001c4ee0: 00551821 addu r3,r2,r21
001c4ee4: 00541021 addu r2,r2,r20
001c4ee8: 8c700000 lw r16,0x0000(r3)
001c4eec: 8e630000 lw r3,0x0000(r19)
001c4ef0: 8c510000 lw r17,0x0000(r2)
001c4ef4: 30620020 andi r2,r3,0x0020
001c4ef8: 1040008b beq r2,r0,0x001c5128
001c4efc: 30620040 andi r2,r3,0x0040
001c4f00: 3c02801e lui r2,0x801e
001c4f04: 2442cbc8 addiu r2,r2,0xcbc8
001c4f08: 00111880 sll r3,r17,0x02
001c4f0c: 00712021 addu r4,r3,r17
001c4f10: 00821021 addu r2,r4,r2
001c4f14: 00501021 addu r2,r2,r16
001c4f18: 90420000 lbu r2,0x0000(r2)
001c4f1c: 00000000 nop
001c4f20: 1040007d beq r2,r0,0x001c5118
001c4f24: 340b0005 ori r11,r0,0x0005            # Set sound effect to play: 0x05, saved at 001c511c
001c4f28: 8ea30000 lw r3,0x0000(r21)
001c4f2c: 8ea20004 lw r2,0x0004(r21)
001c4f30: 00000000 nop
001c4f34: 14620063 bne r3,r2,0x001c50c4
001c4f38: 00000000 nop
001c4f3c: 8e830000 lw r3,0x0000(r20)
001c4f40: 8e820004 lw r2,0x0004(r20)
001c4f44: 00000000 nop
001c4f48: 1462005e bne r3,r2,0x001c50c4
001c4f4c: 00971021 addu r2,r4,r23               # r2 = r4 (ID of current row's starting tile) + r23 (starting address of deployed units on tiles)
001c4f50: 00501021 addu r2,r2,r16               # r2 = r2 + r16 (ID of current column in row)
001c4f54: 90420000 lbu r2,0x0000(r2)            # Load the Roster Slot ID of the unit on this tile.
001c4f58: 00000000 nop    
001c4f5c: 1440001b bne r2,r0,0x001c4fcc         # Branch if not Ramza.
001c4f60: 00111080 sll r2,r17,0x02              # r2 = r17 * 4. r17 might be the Current Row?
001c4f64: 0c04ed64 jal 0x0013b590               # Get Script Variable Var 0x01FF: Ramza Mandatory
001c4f68: 340401ff ori r4,r0,0x01ff   
001c4f6c: 14560017 bne r2,r22,0x001c4fcc        # Branch if Ramza is not mandatory. (r22 = 1)
001c4f70: 00111080 sll r2,r17,0x02              # r2 = r17 * 4. r17 might be the Current Row?
001c4f74: 3404000d ori r4,r0,0x000d             # r4 = 0x0D: Thread ID
001c4f78: 3c058014 lui r5,0x8014   
001c4f7c: 24a5b280 addiu r5,r5,0xb280           # r5 = 0x8013b280. Function pointer for Initialize Thread?
001c4f80: 340b0005 ori r11,r0,0x0005            # r11 = 0x05
001c4f84: 3c10801d lui r16,0x801d   
001c4f88: 2610d178 addiu r16,r16,0xd178         # r16 = 0x801cd178. Purpose unknown.
001c4f8c: 2402900d addiu r2,r0,0x900d           # r2 = 0x900D. Determines which message to use. Change 900D to 900F to get "No Saved Data", for example.
001c4f90: 3c018016 lui r1,0x8016   
001c4f94: ac2b5fb4 sw r11,0x5fb4(r1)            # Save sound effect ID to play: 0x05, Invalid
001c4f98: 0c053228 jal 0x0014c8a0               # Initialize Thread (0x0D)
001c4f9c: a6020000 sh r2,0x0000(r16)            # Save Message ID to 0x801CD178.
001c4fa0: 3404000d ori r4,r0,0x000d             # r4 = 0x0D
001c4fa4: 2605ffe4 addiu r5,r16,0xffe4          # r5 = r16 - 0x1C  = 0x801CD15C. Purpose unknown.
001c4fa8: 00003021 addu r6,r0,r0                # r6 = 0
001c4fac: 0c05328e jal 0x0014ca38               # Store Thread Function Parameters
001c4fb0: 00003821 addu r7,r0,r0                # r7 = 0
001c4fb4: 0c053274 jal 0x0014c9d0               # Wait For Thread
001c4fb8: 3404000d ori r4,r0,0x000d             # r4 = 0x0D
001c4fbc: 8ea20004 lw r2,0x0004(r21)            # During test: r2 ends up as 0, r21 ends up as 0x801CD24C. Purpose unknown.
001c4fc0: 8e830004 lw r3,0x0004(r20)            # During test: r3 ends up as 1, r20 ends up as 0x801CD254. Purpose unknown.
001c4fc4: 08071441 j 0x001c5104   
001c4fc8: 00000000 nop     
001c4fcc: 00511021 addu r2,r2,r17
001c4fd0: 00571021 addu r2,r2,r23
001c4fd4: 00508021 addu r16,r2,r16
001c4fd8: 92020000 lbu r2,0x0000(r16)
001c4fdc: 3c04801d lui r4,0x801d
001c4fe0: 8c84d064 lw r4,-0x2f9c(r4)
001c4fe4: 00000000 nop
001c4fe8: 10440026 beq r2,r4,0x001c5084
001c4fec: 34020011 ori r2,r0,0x0011
001c4ff0: 0c070f6d jal 0x001c3db4               # ATTACK.OUT 001c3db4 - 001c3e00
001c4ff4: 00000000 nop
001c4ff8: 10400016 beq r2,r0,0x001c5054
001c4ffc: 34020011 ori r2,r0,0x0011             # Set sound effect ID to play: 0x11, saved in a few spots
001c5000: 3c04801d lui r4,0x801d
001c5004: 8c84d064 lw r4,-0x2f9c(r4)
001c5008: 3c01801d lui r1,0x801d
001c500c: ac20d074 sw r0,-0x2f8c(r1)
001c5010: 3c018016 lui r1,0x8016
001c5014: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x11, Zoom Out (Quick)?
001c5018: 0c070f81 jal 0x001c3e04               # ATTACK.OUT 001c3e04 - 001c3e58
001c501c: 00000000 nop
001c5020: 8ea20004 lw r2,0x0004(r21)
001c5024: 8e830004 lw r3,0x0004(r20)
001c5028: aea20000 sw r2,0x0000(r21)
001c502c: 3c02801d lui r2,0x801d
001c5030: 8c42d058 lw r2,-0x2fa8(r2)
001c5034: ae830000 sw r3,0x0000(r20)
001c5038: 3c03801d lui r3,0x801d
001c503c: 9063d064 lbu r3,-0x2f9c(r3)
001c5040: 2442ffff addiu r2,r2,0xffff
001c5044: 3c01801d lui r1,0x801d
001c5048: ac22d058 sw r2,-0x2fa8(r1)
001c504c: 08071450 j 0x001c5140
001c5050: a2030000 sb r3,0x0000(r16)
001c5054: 8ea20004 lw r2,0x0004(r21)
001c5058: 8e830004 lw r3,0x0004(r20)
001c505c: 3c04801d lui r4,0x801d
001c5060: 9084d064 lbu r4,-0x2f9c(r4)
001c5064: 3c018016 lui r1,0x8016
001c5068: ac365fb4 sw r22,0x5fb4(r1)            # Save sound effect ID to play: 0x01, Confirm Selection
001c506c: 3c01801d lui r1,0x801d
001c5070: ac20d074 sw r0,-0x2f8c(r1)
001c5074: aea20000 sw r2,0x0000(r21)
001c5078: ae830000 sw r3,0x0000(r20)
001c507c: 08071450 j 0x001c5140
001c5080: a2040000 sb r4,0x0000(r16)
001c5084: 8ea40004 lw r4,0x0004(r21)
001c5088: 8e850004 lw r5,0x0004(r20)
001c508c: 3c03801d lui r3,0x801d
001c5090: 8c63d058 lw r3,-0x2fa8(r3)
001c5094: 3c018016 lui r1,0x8016
001c5098: ac225fb4 sw r2,0x5fb4(r1)             # Save sound effect ID to play: 0x11, Zoom Out (Quick)?
001c509c: 3c01801d lui r1,0x801d
001c50a0: ac20d074 sw r0,-0x2f8c(r1)
001c50a4: 2463ffff addiu r3,r3,0xffff
001c50a8: aea40000 sw r4,0x0000(r21)
001c50ac: ae850000 sw r5,0x0000(r20)
001c50b0: 3c01801d lui r1,0x801d
001c50b4: ac23d058 sw r3,-0x2fa8(r1)
001c50b8: 340a00ff ori r10,r0,0x00ff
001c50bc: 08071450 j 0x001c5140
001c50c0: a20a0000 sb r10,0x0000(r16)
001c50c4: 3c03801d lui r3,0x801d
001c50c8: 8c63d254 lw r3,-0x2dac(r3)
001c50cc: 02002021 addu r4,r16,r0
001c50d0: 00031080 sll r2,r3,0x02
001c50d4: 00431021 addu r2,r2,r3
001c50d8: 3c03801d lui r3,0x801d
001c50dc: 8c63d24c lw r3,-0x2db4(r3)
001c50e0: 00571021 addu r2,r2,r23
001c50e4: 00431021 addu r2,r2,r3
001c50e8: 90460000 lbu r6,0x0000(r2)
001c50ec: 0c070f97 jal 0x001c3e5c               # ATTACK.OUT 001c3e5c - 001c3ec8
001c50f0: 02202821 addu r5,r17,r0
001c50f4: 8ea20004 lw r2,0x0004(r21)
001c50f8: 8e830004 lw r3,0x0004(r20)
001c50fc: 3c018016 lui r1,0x8016
001c5100: ac365fb4 sw r22,0x5fb4(r1)            # Save sound effect ID to play: 0x01, Confirm Selection
001c5104: 3c01801d lui r1,0x801d
001c5108: ac20d074 sw r0,-0x2f8c(r1)
001c510c: aea20000 sw r2,0x0000(r21)
001c5110: 08071450 j 0x001c5140
001c5114: ae830000 sw r3,0x0000(r20)
001c5118: 3c018016 lui r1,0x8016
001c511c: ac2b5fb4 sw r11,0x5fb4(r1)            # Save sound effect ID to play: 0x05, Invalid
001c5120: 08071450 j 0x001c5140
001c5124: 00000000 nop
001c5128: 10400005 beq r2,r0,0x001c5140
001c512c: 340a0002 ori r10,r0,0x0002            # Set sound effect ID to play: 0x02
001c5130: 3c01801d lui r1,0x801d
001c5134: ac20d074 sw r0,-0x2f8c(r1)
001c5138: 3c018016 lui r1,0x8016
001c513c: ac2a5fb4 sw r10,0x5fb4(r1)            # Save sound effect ID to play: 0x02, Cancel Selection
001c5140: 0c0716a5 jal 0x001c5a94               # ATTACK.OUT 001c5a94 - 001c5b4c
001c5144: 00000000 nop
001c5148: 8e620000 lw r2,0x0000(r19)
001c514c: 00000000 nop
001c5150: 30420080 andi r2,r2,0x0080
001c5154: 1040005a beq r2,r0,0x001c52c0
001c5158: 00000000 nop
001c515c: 3c018016 lui r1,0x8016
001c5160: ac365fb4 sw r22,0x5fb4(r1)            # Save sound effect ID to play: 0x01, Confirm Selection
001c5164: 0c04f680 jal 0x0013da00               # Set Event Speed
001c5168: 34040002 ori r4,r0,0x0002             # r4 = 2 (slow event speed)
001c516c: 93c20000 lbu r2,0x0000(r30)
001c5170: 00000000 nop
001c5174: 2c420002 sltiu r2,r2,0x0002
001c5178: 10400002 beq r2,r0,0x001c5184
001c517c: 00000000 nop
001c5180: a3d60000 sb r22,0x0000(r30)
001c5184: 93c20001 lbu r2,0x0001(r30)
001c5188: 00000000 nop
001c518c: 2c420002 sltiu r2,r2,0x0002
001c5190: 10400002 beq r2,r0,0x001c519c
001c5194: 34020011 ori r2,r0,0x0011
001c5198: a3c20001 sb r2,0x0001(r30)
001c519c: 93c20002 lbu r2,0x0002(r30)
001c51a0: 00000000 nop
001c51a4: 2c420002 sltiu r2,r2,0x0002
001c51a8: 10400002 beq r2,r0,0x001c51b4
001c51ac: 00000000 nop
001c51b0: a3d60002 sb r22,0x0002(r30)
001c51b4: 3c05801c lui r5,0x801c
001c51b8: 24a51954 addiu r5,r5,0x1954
001c51bc: 0c053228 jal 0x0014c8a0                 # Initialize Thread
001c51c0: 3404000c ori r4,r0,0x000c
001c51c4: 3404000c ori r4,r0,0x000c
001c51c8: 3c05801d lui r5,0x801d
001c51cc: 24a5d224 addiu r5,r5,0xd224
001c51d0: 00003021 addu r6,r0,r0
001c51d4: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c51d8: 00003821 addu r7,r0,r0
001c51dc: 3c05801c lui r5,0x801c
001c51e0: 24a50af4 addiu r5,r5,0x0af4
001c51e4: 0c053228 jal 0x0014c8a0              # Initialize Thread
001c51e8: 34040009 ori r4,r0,0x0009
001c51ec: 34040009 ori r4,r0,0x0009
001c51f0: 3c05801d lui r5,0x801d
001c51f4: 24a5d238 addiu r5,r5,0xd238
001c51f8: 00003021 addu r6,r0,r0
001c51fc: 0c05328e jal 0x0014ca38               # Store Thread Function Parameters
001c5200: 00003821 addu r7,r0,r0
001c5204: 3c05801c lui r5,0x801c
001c5208: 24a53d8c addiu r5,r5,0x3d8c
001c520c: 0c053228 jal 0x0014c8a0               # Initialize Thread
001c5210: 3404000d ori r4,r0,0x000d
001c5214: 0c0532a0 jal 0x0014ca80               # Switch To Next Thread
001c5218: 00000000 nop
001c521c: 8e620000 lw r2,0x0000(r19)
001c5220: 00000000 nop
001c5224: 30420100 andi r2,r2,0x0100
001c5228: 1040000c beq r2,r0,0x001c525c
001c522c: 00000000 nop
001c5230: 3c05801d lui r5,0x801d
001c5234: 24a58cf0 addiu r5,r5,0x8cf0
001c5238: 0c053228 jal 0x0014c8a0               # Initialize Thread
001c523c: 34040003 ori r4,r0,0x0003
001c5240: 34040003 ori r4,r0,0x0003
001c5244: 00002821 addu r5,r0,r0
001c5248: 00003021 addu r6,r0,r0
001c524c: 0c05328e jal 0x0014ca38               # Store Thread Function Parameters
001c5250: 00003821 addu r7,r0,r0
001c5254: 0c053274 jal 0x0014c9d0               # Wait For Thread
001c5258: 34040003 ori r4,r0,0x0003
001c525c: 0c0716a5 jal 0x001c5a94               # ATTACK.OUT 001c5a94 - 001c5b4c
001c5260: 00000000 nop
001c5264: 8e620000 lw r2,0x0000(r19)
001c5268: 00000000 nop
001c526c: 30420040 andi r2,r2,0x0040
001c5270: 1040ffe8 beq r2,r0,0x001c5214
001c5274: 340b0002 ori r11,r0,0x0002            # Set sound effect ID to play: 0x02
001c5278: 3c018016 lui r1,0x8016
001c527c: ac2b5fb4 sw r11,0x5fb4(r1)            # Save sound effect ID to play: 0x02, Cancel Selection
001c5280: 3404000c ori r4,r0,0x000c
001c5284: 00002821 addu r5,r0,r0
001c5288: 00003021 addu r6,r0,r0
001c528c: 0c05328e jal 0x0014ca38               # Store Thread Function Parameters
001c5290: 34070001 ori r7,r0,0x0001
001c5294: 34040009 ori r4,r0,0x0009
001c5298: 00002821 addu r5,r0,r0
001c529c: 00003021 addu r6,r0,r0
001c52a0: 0c05328e jal 0x0014ca38               # Store Thread Function Parameters
001c52a4: 34070001 ori r7,r0,0x0001
001c52a8: 0c053274 jal 0x0014c9d0               # Wait For Thread
001c52ac: 3404000c ori r4,r0,0x000c
001c52b0: 0c053274 jal 0x0014c9d0               # Wait For Thread
001c52b4: 34040009 ori r4,r0,0x0009
001c52b8: 0c04f680 jal 0x0013da00               # Set Event Speed
001c52bc: 34040001 ori r4,r0,0x0001             # r4 = 1 (normal event speed)
001c52c0: 8e620000 lw r2,0x0000(r19)
001c52c4: 00000000 nop
001c52c8: 30420010 andi r2,r2,0x0010
001c52cc: 10400036 beq r2,r0,0x001c53a8
001c52d0: 340a00ff ori r10,r0,0x00ff
001c52d4: 3c04801d lui r4,0x801d
001c52d8: 8c84d074 lw r4,-0x2f8c(r4)
001c52dc: 00000000 nop
001c52e0: 00042080 sll r4,r4,0x02
001c52e4: 00941021 addu r2,r4,r20
001c52e8: 8c430000 lw r3,0x0000(r2)
001c52ec: 00952021 addu r4,r4,r21
001c52f0: 00031080 sll r2,r3,0x02
001c52f4: 00431021 addu r2,r2,r3
001c52f8: 8c830000 lw r3,0x0000(r4)
001c52fc: 00571021 addu r2,r2,r23
001c5300: 00431021 addu r2,r2,r3
001c5304: 90420000 lbu r2,0x0000(r2)
001c5308: 00000000 nop
001c530c: 104a0026 beq r2,r10,0x001c53a8
001c5310: 34020007 ori r2,r0,0x0007
001c5314: 3c01801d lui r1,0x801d
001c5318: a022f5f2 sb r2,-0x0a0e(r1)
001c531c: 3c018016 lui r1,0x8016
001c5320: ac365fb4 sw r22,0x5fb4(r1)            # Save sound effect ID to play: 0x01, Confirm Selection
001c5324: 0c053287 jal 0x0014ca1c               # Check Thread r4 Running Status
001c5328: 34040004 ori r4,r0,0x0004
001c532c: 1440001e bne r2,r0,0x001c53a8
001c5330: 00000000 nop
001c5334: 3c04801d lui r4,0x801d
001c5338: 8c84d074 lw r4,-0x2f8c(r4)
001c533c: 00000000 nop
001c5340: 00042080 sll r4,r4,0x02
001c5344: 00941021 addu r2,r4,r20
001c5348: 8c430000 lw r3,0x0000(r2)
001c534c: 00952021 addu r4,r4,r21
001c5350: 00031080 sll r2,r3,0x02
001c5354: 00431021 addu r2,r2,r3
001c5358: 8c830000 lw r3,0x0000(r4)
001c535c: 00571021 addu r2,r2,r23
001c5360: 00431021 addu r2,r2,r3
001c5364: 90420000 lbu r2,0x0000(r2)
001c5368: 3c03801d lui r3,0x801d
001c536c: 8c63d064 lw r3,-0x2f9c(r3)
001c5370: 3c01801d lui r1,0x801d
001c5374: ac22d068 sw r2,-0x2f98(r1)
001c5378: 10620009 beq r3,r2,0x001c53a0
001c537c: 2402ffff addiu r2,r0,0xffff
001c5380: 3c05801c lui r5,0x801c
001c5384: 24a560e0 addiu r5,r5,0x60e0
001c5388: 0c053228 jal 0x0014c8a0              # Initialize Thread
001c538c: 34040004 ori r4,r0,0x0004
001c5390: 0c053274 jal 0x0014c9d0                     # Wait For Thread
001c5394: 34040004 ori r4,r0,0x0004
001c5398: 080714ea j 0x001c53a8
001c539c: 00000000 nop
001c53a0: 3c01801d lui r1,0x801d
001c53a4: ac22d068 sw r2,-0x2f98(r1)
001c53a8: 0c053250 jal 0x0014c940              # Mark Thread As Stopped
001c53ac: 3404000d ori r4,r0,0x000d
001c53b0: 0807117b j 0x001c45ec
001c53b4: 00000000 nop
001c53b8: 3c02801d lui r2,0x801d
001c53bc: 8c42d058 lw r2,-0x2fa8(r2)
001c53c0: 3c03801d lui r3,0x801d
001c53c4: 8c63d05c lw r3,-0x2fa4(r3)
001c53c8: 00000000 nop
001c53cc: 0043102a slt r2,r2,r3
001c53d0: 10400009 beq r2,r0,0x001c53f8
001c53d4: 00000000 nop
001c53d8: 3c02801e lui r2,0x801e
001c53dc: 8c42cc7c lw r2,-0x3384(r2)
001c53e0: 00000000 nop
001c53e4: 24420001 addiu r2,r2,0x0001
001c53e8: 3c01801e lui r1,0x801e
001c53ec: ac22cc7c sw r2,-0x3384(r1)
001c53f0: 08071062 j 0x001c4188
001c53f4: 00000000 nop
001c53f8: 0c053216 jal 0x0014c858                    # Wait (Switch To Next Thread Multiple Times)
001c53fc: 34040020 ori r4,r0,0x0020
001c5400: 2402ffff addiu r2,r0,0xffff
001c5404: 3c01801d lui r1,0x801d
001c5408: ac22d070 sw r2,-0x2f90(r1)
001c540c: 3404000e ori r4,r0,0x000e
001c5410: 00002821 addu r5,r0,r0
001c5414: 00003021 addu r6,r0,r0
001c5418: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c541c: 34070001 ori r7,r0,0x0001
001c5420: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c5424: 00009021 addu r18,r0,r0
001c5428: 3c10801d lui r16,0x801d
001c542c: 2610f5f8 addiu r16,r16,0xf5f8
001c5430: 3c11801d lui r17,0x801d
001c5434: 2631d02c addiu r17,r17,0xd02c
001c5438: 00121023 subu r2,r0,r18
001c543c: 3c01801d lui r1,0x801d
001c5440: ac22d214 sw r2,-0x2dec(r1)
001c5444: 3c01801d lui r1,0x801d
001c5448: ac32d07c sw r18,-0x2f84(r1)
001c544c: ae020000 sw r2,0x0000(r16)
001c5450: ae020004 sw r2,0x0004(r16)
001c5454: ae120008 sw r18,0x0008(r16)
001c5458: ae12000c sw r18,0x000c(r16)
001c545c: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c5460: ae120010 sw r18,0x0010(r16)
001c5464: 32420003 andi r2,r18,0x0003
001c5468: 14400005 bne r2,r0,0x001c5480
001c546c: 26520002 addiu r18,r18,0x0002
001c5470: 8e220000 lw r2,0x0000(r17)
001c5474: 00000000 nop
001c5478: 2442ffff addiu r2,r2,0xffff
001c547c: ae220000 sw r2,0x0000(r17)
001c5480: 2a420100 slti r2,r18,0x0100
001c5484: 1440ffed bne r2,r0,0x001c543c
001c5488: 00121023 subu r2,r0,r18
001c548c: 0c053216 jal 0x0014c858                    # Wait (Switch To Next Thread Multiple Times)
001c5490: 3404003c ori r4,r0,0x003c
001c5494: 3c02801e lui r2,0x801e
001c5498: 2442caac addiu r2,r2,0xcaac
001c549c: 0040a021 addu r20,r2,r0
001c54a0: 00009821 addu r19,r0,r0
001c54a4: 00009021 addu r18,r0,r0
001c54a8: 3c16801e lui r22,0x801e
001c54ac: 26d6cc00 addiu r22,r22,0xcc00
001c54b0: 0000a821 addu r21,r0,r0
001c54b4: 340200ff ori r2,r0,0x00ff
001c54b8: a2820000 sb r2,0x0000(r20)
001c54bc: 3c01801e lui r1,0x801e
001c54c0: a022cab0 sb r2,-0x3550(r1)
001c54c4: 3c01801e lui r1,0x801e
001c54c8: a022cab4 sb r2,-0x354c(r1)
001c54cc: 3c01801e lui r1,0x801e
001c54d0: a022cab8 sb r2,-0x3548(r1)
001c54d4: 3c01801e lui r1,0x801e
001c54d8: a022cabc sb r2,-0x3544(r1)
001c54dc: 3c01801e lui r1,0x801e
001c54e0: a022cac0 sb r2,-0x3540(r1)
001c54e4: 3c01801e lui r1,0x801e
001c54e8: a022cac4 sb r2,-0x353c(r1)
001c54ec: 3c01801e lui r1,0x801e
001c54f0: a022cac8 sb r2,-0x3538(r1)
001c54f4: 3c01801e lui r1,0x801e
001c54f8: a022cacc sb r2,-0x3534(r1)
001c54fc: 3c01801e lui r1,0x801e
001c5500: a022cad0 sb r2,-0x3530(r1)
001c5504: 3c01801e lui r1,0x801e
001c5508: a022cad4 sb r2,-0x352c(r1)
001c550c: 3c01801e lui r1,0x801e
001c5510: a022cad8 sb r2,-0x3528(r1)
001c5514: 0c04ed64 jal 0x0013b590                      # Get Script Variable
001c5518: 34040034 ori r4,r0,0x0034                    # Var 0x34: Number of Squads
001c551c: 0242102a slt r2,r18,r2
001c5520: 10400104 beq r2,r0,0x001c5934
001c5524: 00000000 nop
001c5528: 0c04ed64 jal 0x0013b590                      # Get Script Variable
001c552c: 340401fe ori r4,r0,0x01fe                    # Var 0x1FE: Next Random is World Debug Battle Style
001c5530: 10400005 beq r2,r0,0x001c5548               # Branch if not
001c5534: 34020001 ori r2,r0,0x0001
001c5538: 16420003 bne r18,r2,0x001c5548              # Branch if r18 =/= 1
001c553c: 00009821 addu r19,r0,r0
001c5540: 3c14801e lui r20,0x801e
001c5544: 2694cac4 addiu r20,r20,0xcac4
001c5548: 3c01801e lui r1,0x801e
001c554c: ac32cc78 sw r18,-0x3388(r1)
001c5550: 0c04ed64 jal 0x0013b590                      # Get Script Variable
001c5554: 26440035 addiu r4,r18,0x0035                 # Var (0x35 + r18): Squad #1 ID (or Squad #2 ID?)
001c5558: 00021840 sll r3,r2,0x01
001c555c: 00621821 addu r3,r3,r2                       # r3 = Squad ID * 3
001c5560: 3c01801e lui r1,0x801e
001c5564: ac22cc78 sw r2,-0x3388(r1)                   # Save Squad ID to 0x801DCC78
001c5568: 3c02801d lui r2,0x801d        
001c556c: 8c42d270 lw r2,-0x2d90(r2)                   # r2 = Squad Data pointer
001c5570: 00031880 sll r3,r3,0x02                      # r3 = Squad ID * 12
001c5574: 00621821 addu r3,r3,r2                       # r3 = Squad ID * 12 + Squad Data pointer - pointer to the data for the current Squad
001c5578: 3c01801d lui r1,0x801d
001c557c: ac23d274 sw r3,-0x2d8c(r1)                   # Save Current Squad Data Pointer to 0x801CD274
001c5580: 90620007 lbu r2,0x0007(r3)                   # r2 = orientation byte from Squad data?
001c5584: 00000000 nop
001c5588: 3043000f andi r3,r2,0x000f
001c558c: 2463ffff addiu r3,r3,0xffff
001c5590: 00021102 srl r2,r2,0x04
001c5594: 00621821 addu r3,r3,r2
001c5598: 04610002 bgez r3,0x001c55a4
001c559c: 00000000 nop
001c55a0: 24630004 addiu r3,r3,0x0004
001c55a4: 30630003 andi r3,r3,0x0003
001c55a8: 14600037 bne r3,r0,0x001c5688
001c55ac: 34020001 ori r2,r0,0x0001
001c55b0: 00008821 addu r17,r0,r0
001c55b4: 02a04821 addu r9,r21,r0
001c55b8: 00003021 addu r6,r0,r0
001c55bc: 00008021 addu r16,r0,r0
001c55c0: 01364021 addu r8,r9,r22
001c55c4: 00c03821 addu r7,r6,r0
001c55c8: 00131080 sll r2,r19,0x02
001c55cc: 00542821 addu r5,r2,r20
001c55d0: 00f01021 addu r2,r7,r16
001c55d4: 01022021 addu r4,r8,r2
001c55d8: 90830000 lbu r3,0x0000(r4)
001c55dc: 340200ff ori r2,r0,0x00ff
001c55e0: 1062001f beq r3,r2,0x001c5660
001c55e4: 00000000 nop
001c55e8: 90820000 lbu r2,0x0000(r4)
001c55ec: 00000000 nop
001c55f0: a0a20000 sb r2,0x0000(r5)
001c55f4: 3c02801d lui r2,0x801d
001c55f8: 8c42d274 lw r2,-0x2d8c(r2)
001c55fc: 00000000 nop
001c5600: 90420004 lbu r2,0x0004(r2)
001c5604: 00000000 nop
001c5608: 00501023 subu r2,r2,r16
001c560c: 24420002 addiu r2,r2,0x0002
001c5610: a0a20001 sb r2,0x0001(r5)
001c5614: 3c02801d lui r2,0x801d
001c5618: 8c42d274 lw r2,-0x2d8c(r2)
001c561c: 00000000 nop
001c5620: 90420005 lbu r2,0x0005(r2)
001c5624: 00000000 nop
001c5628: 00511021 addu r2,r2,r17
001c562c: 2442fffe addiu r2,r2,0xfffe
001c5630: a0a20002 sb r2,0x0002(r5)
001c5634: 3c02801d lui r2,0x801d
001c5638: 8c42d274 lw r2,-0x2d8c(r2)
001c563c: 26730001 addiu r19,r19,0x0001
001c5640: 90430006 lbu r3,0x0006(r2)
001c5644: 90a20003 lbu r2,0x0003(r5)
001c5648: 000319c0 sll r3,r3,0x07
001c564c: 3042007f andi r2,r2,0x007f
001c5650: 00431025 or r2,r2,r3
001c5654: 304200e0 andi r2,r2,0x00e0
001c5658: a0a20003 sb r2,0x0003(r5)
001c565c: 24a50004 addiu r5,r5,0x0004
001c5660: 26100001 addiu r16,r16,0x0001
001c5664: 2a020005 slti r2,r16,0x0005
001c5668: 1440ffda bne r2,r0,0x001c55d4
001c566c: 00f01021 addu r2,r7,r16
001c5670: 26310001 addiu r17,r17,0x0001
001c5674: 2a220005 slti r2,r17,0x0005
001c5678: 1440ffd0 bne r2,r0,0x001c55bc
001c567c: 24c60005 addiu r6,r6,0x0005
001c5680: 0807164b j 0x001c592c
001c5684: 26b50019 addiu r21,r21,0x0019
001c5688: 14620038 bne r3,r2,0x001c576c
001c568c: 34020002 ori r2,r0,0x0002
001c5690: 00008821 addu r17,r0,r0
001c5694: 02a04821 addu r9,r21,r0
001c5698: 00003021 addu r6,r0,r0
001c569c: 00008021 addu r16,r0,r0
001c56a0: 01364021 addu r8,r9,r22
001c56a4: 00c03821 addu r7,r6,r0
001c56a8: 00131080 sll r2,r19,0x02
001c56ac: 00542821 addu r5,r2,r20
001c56b0: 00f01021 addu r2,r7,r16
001c56b4: 01022021 addu r4,r8,r2
001c56b8: 90830000 lbu r3,0x0000(r4)
001c56bc: 340200ff ori r2,r0,0x00ff
001c56c0: 10620020 beq r3,r2,0x001c5744
001c56c4: 00000000 nop
001c56c8: 90820000 lbu r2,0x0000(r4)
001c56cc: 00000000 nop
001c56d0: a0a20000 sb r2,0x0000(r5)
001c56d4: 3c02801d lui r2,0x801d
001c56d8: 8c42d274 lw r2,-0x2d8c(r2)
001c56dc: 00000000 nop
001c56e0: 90420004 lbu r2,0x0004(r2)
001c56e4: 00000000 nop
001c56e8: 00511023 subu r2,r2,r17
001c56ec: 24420002 addiu r2,r2,0x0002
001c56f0: a0a20001 sb r2,0x0001(r5)
001c56f4: 3c02801d lui r2,0x801d
001c56f8: 8c42d274 lw r2,-0x2d8c(r2)
001c56fc: 00000000 nop
001c5700: 90420005 lbu r2,0x0005(r2)
001c5704: 00000000 nop
001c5708: 00501023 subu r2,r2,r16
001c570c: 24420002 addiu r2,r2,0x0002
001c5710: a0a20002 sb r2,0x0002(r5)
001c5714: 3c02801d lui r2,0x801d
001c5718: 8c42d274 lw r2,-0x2d8c(r2)
001c571c: 26730001 addiu r19,r19,0x0001
001c5720: 90430006 lbu r3,0x0006(r2)
001c5724: 90a20003 lbu r2,0x0003(r5)
001c5728: 000319c0 sll r3,r3,0x07
001c572c: 3042007f andi r2,r2,0x007f
001c5730: 00431025 or r2,r2,r3
001c5734: 34420003 ori r2,r2,0x0003
001c5738: 304200e3 andi r2,r2,0x00e3
001c573c: a0a20003 sb r2,0x0003(r5)
001c5740: 24a50004 addiu r5,r5,0x0004
001c5744: 26100001 addiu r16,r16,0x0001
001c5748: 2a020005 slti r2,r16,0x0005
001c574c: 1440ffd9 bne r2,r0,0x001c56b4
001c5750: 00f01021 addu r2,r7,r16
001c5754: 26310001 addiu r17,r17,0x0001
001c5758: 2a220005 slti r2,r17,0x0005
001c575c: 1440ffcf bne r2,r0,0x001c569c
001c5760: 24c60005 addiu r6,r6,0x0005
001c5764: 0807164b j 0x001c592c
001c5768: 26b50019 addiu r21,r21,0x0019
001c576c: 14620038 bne r3,r2,0x001c5850
001c5770: 34020003 ori r2,r0,0x0003
001c5774: 00008821 addu r17,r0,r0
001c5778: 02a04821 addu r9,r21,r0
001c577c: 00003021 addu r6,r0,r0
001c5780: 00008021 addu r16,r0,r0
001c5784: 01364021 addu r8,r9,r22
001c5788: 00c03821 addu r7,r6,r0
001c578c: 00131080 sll r2,r19,0x02
001c5790: 00542821 addu r5,r2,r20
001c5794: 00f01021 addu r2,r7,r16
001c5798: 01022021 addu r4,r8,r2
001c579c: 90830000 lbu r3,0x0000(r4)
001c57a0: 340200ff ori r2,r0,0x00ff
001c57a4: 10620020 beq r3,r2,0x001c5828
001c57a8: 00000000 nop
001c57ac: 90820000 lbu r2,0x0000(r4)
001c57b0: 00000000 nop
001c57b4: a0a20000 sb r2,0x0000(r5)
001c57b8: 3c02801d lui r2,0x801d
001c57bc: 8c42d274 lw r2,-0x2d8c(r2)
001c57c0: 00000000 nop
001c57c4: 90420004 lbu r2,0x0004(r2)
001c57c8: 00000000 nop
001c57cc: 00501021 addu r2,r2,r16
001c57d0: 2442fffe addiu r2,r2,0xfffe
001c57d4: a0a20001 sb r2,0x0001(r5)
001c57d8: 3c02801d lui r2,0x801d
001c57dc: 8c42d274 lw r2,-0x2d8c(r2)
001c57e0: 00000000 nop
001c57e4: 90420005 lbu r2,0x0005(r2)
001c57e8: 00000000 nop
001c57ec: 00511023 subu r2,r2,r17
001c57f0: 24420002 addiu r2,r2,0x0002
001c57f4: a0a20002 sb r2,0x0002(r5)
001c57f8: 3c02801d lui r2,0x801d
001c57fc: 8c42d274 lw r2,-0x2d8c(r2)
001c5800: 26730001 addiu r19,r19,0x0001
001c5804: 90430006 lbu r3,0x0006(r2)
001c5808: 90a20003 lbu r2,0x0003(r5)
001c580c: 000319c0 sll r3,r3,0x07
001c5810: 3042007f andi r2,r2,0x007f
001c5814: 00431025 or r2,r2,r3
001c5818: 34420002 ori r2,r2,0x0002
001c581c: 304200e2 andi r2,r2,0x00e2
001c5820: a0a20003 sb r2,0x0003(r5)
001c5824: 24a50004 addiu r5,r5,0x0004
001c5828: 26100001 addiu r16,r16,0x0001
001c582c: 2a020005 slti r2,r16,0x0005
001c5830: 1440ffd9 bne r2,r0,0x001c5798
001c5834: 00f01021 addu r2,r7,r16
001c5838: 26310001 addiu r17,r17,0x0001
001c583c: 2a220005 slti r2,r17,0x0005
001c5840: 1440ffcf bne r2,r0,0x001c5780
001c5844: 24c60005 addiu r6,r6,0x0005
001c5848: 0807164b j 0x001c592c
001c584c: 26b50019 addiu r21,r21,0x0019
001c5850: 14620035 bne r3,r2,0x001c5928
001c5854: 02a04821 addu r9,r21,r0
001c5858: 00008821 addu r17,r0,r0
001c585c: 00003021 addu r6,r0,r0
001c5860: 00008021 addu r16,r0,r0
001c5864: 01364021 addu r8,r9,r22
001c5868: 00c03821 addu r7,r6,r0
001c586c: 00131080 sll r2,r19,0x02
001c5870: 00542821 addu r5,r2,r20
001c5874: 00f01021 addu r2,r7,r16
001c5878: 01022021 addu r4,r8,r2
001c587c: 90830000 lbu r3,0x0000(r4)
001c5880: 340200ff ori r2,r0,0x00ff
001c5884: 10620020 beq r3,r2,0x001c5908
001c5888: 00000000 nop
001c588c: 90820000 lbu r2,0x0000(r4)
001c5890: 00000000 nop
001c5894: a0a20000 sb r2,0x0000(r5)
001c5898: 3c02801d lui r2,0x801d
001c589c: 8c42d274 lw r2,-0x2d8c(r2)
001c58a0: 00000000 nop
001c58a4: 90420004 lbu r2,0x0004(r2)
001c58a8: 00000000 nop
001c58ac: 00511021 addu r2,r2,r17
001c58b0: 2442fffe addiu r2,r2,0xfffe
001c58b4: a0a20001 sb r2,0x0001(r5)
001c58b8: 3c02801d lui r2,0x801d
001c58bc: 8c42d274 lw r2,-0x2d8c(r2)
001c58c0: 00000000 nop
001c58c4: 90420005 lbu r2,0x0005(r2)
001c58c8: 00000000 nop
001c58cc: 00501021 addu r2,r2,r16
001c58d0: 2442fffe addiu r2,r2,0xfffe
001c58d4: a0a20002 sb r2,0x0002(r5)
001c58d8: 3c02801d lui r2,0x801d
001c58dc: 8c42d274 lw r2,-0x2d8c(r2)
001c58e0: 26730001 addiu r19,r19,0x0001
001c58e4: 90430006 lbu r3,0x0006(r2)
001c58e8: 90a20003 lbu r2,0x0003(r5)
001c58ec: 000319c0 sll r3,r3,0x07
001c58f0: 3042007f andi r2,r2,0x007f
001c58f4: 00431025 or r2,r2,r3
001c58f8: 34420001 ori r2,r2,0x0001
001c58fc: 304200e1 andi r2,r2,0x00e1
001c5900: a0a20003 sb r2,0x0003(r5)
001c5904: 24a50004 addiu r5,r5,0x0004
001c5908: 26100001 addiu r16,r16,0x0001
001c590c: 2a020005 slti r2,r16,0x0005
001c5910: 1440ffd9 bne r2,r0,0x001c5878
001c5914: 00f01021 addu r2,r7,r16
001c5918: 26310001 addiu r17,r17,0x0001
001c591c: 2a220005 slti r2,r17,0x0005
001c5920: 1440ffcf bne r2,r0,0x001c5860
001c5924: 24c60005 addiu r6,r6,0x0005
001c5928: 26b50019 addiu r21,r21,0x0019
001c592c: 08071545 j 0x001c5514
001c5930: 26520001 addiu r18,r18,0x0001
001c5934: 0c0238c1 jal 0x0008e304              # 0008e304 - 0008e314
001c5938: 00000000 nop
001c593c: 34040052 ori r4,r0,0x0052            # Var 0x52: number of units deployed
001c5940: 0c04ed91 jal 0x0013b644              # Set Script Variable
001c5944: 02602821 addu r5,r19,r0
001c5948: 3c05801d lui r5,0x801d
001c594c: 24a59d68 addiu r5,r5,0x9d68
001c5950: 0c053228 jal 0x0014c8a0              # Initialize Thread
001c5954: 3404000e ori r4,r0,0x000e
001c5958: 3404000e ori r4,r0,0x000e
001c595c: 00002821 addu r5,r0,r0
001c5960: 00003021 addu r6,r0,r0
001c5964: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c5968: 00003821 addu r7,r0,r0
001c596c: 0c053274 jal 0x0014c9d0                     # Wait For Thread
001c5970: 3404000e ori r4,r0,0x000e
001c5974: 3c02001e lui r2,0x001e
001c5978: 3c018016 lui r1,0x8016
001c597c: ac225fc0 sw r2,0x5fc0(r1)
001c5980: 0c053216 jal 0x0014c858                    # Wait (Switch To Next Thread Multiple Times)
001c5984: 34040020 ori r4,r0,0x0020
001c5988: 3c018016 lui r1,0x8016
001c598c: ac20603c sw r0,0x603c(r1)
001c5990: 0c0532a0 jal 0x0014ca80                   # Switch To Next Thread
001c5994: 00000000 nop
001c5998: 3c028016 lui r2,0x8016
001c599c: 8c42603c lw r2,0x603c(r2)
001c59a0: 00000000 nop
001c59a4: 24420004 addiu r2,r2,0x0004
001c59a8: 3c018016 lui r1,0x8016
001c59ac: ac22603c sw r2,0x603c(r1)
001c59b0: 28420100 slti r2,r2,0x0100
001c59b4: 1440fff6 bne r2,r0,0x001c5990
001c59b8: 3404000f ori r4,r0,0x000f
001c59bc: 00002821 addu r5,r0,r0
001c59c0: 00003021 addu r6,r0,r0
001c59c4: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c59c8: 34070001 ori r7,r0,0x0001
001c59cc: 34040008 ori r4,r0,0x0008
001c59d0: 00002821 addu r5,r0,r0
001c59d4: 00003021 addu r6,r0,r0
001c59d8: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c59dc: 34070001 ori r7,r0,0x0001
001c59e0: 34040007 ori r4,r0,0x0007
001c59e4: 00002821 addu r5,r0,r0
001c59e8: 00003021 addu r6,r0,r0
001c59ec: 0c05328e jal 0x0014ca38              # Store Thread Function Parameters
001c59f0: 34070001 ori r7,r0,0x0001
001c59f4: 0c053216 jal 0x0014c858              # Wait (Switch To Next Thread Multiple Times)
001c59f8: 34040003 ori r4,r0,0x0003
001c59fc: 3c018016 lui r1,0x8016
001c5a00: ac20603c sw r0,0x603c(r1)
001c5a04: 0c04f680 jal 0x0013da00              # Set Event Speed
001c5a08: 34040001 ori r4,r0,0x0001            # r4 = 1 (normal speed)
001c5a0c: 0c010fc0 jal 0x00043f00              # 00043f00 - 00043f34
001c5a10: 00000000 nop
001c5a14: 0c053256 jal 0x0014c958              # Stop Current Thread
001c5a18: 00000000 nop
001c5a1c: 8fbf0044 lw r31,0x0044(r29)
001c5a20: 8fbe0040 lw r30,0x0040(r29)
001c5a24: 8fb7003c lw r23,0x003c(r29)
001c5a28: 8fb60038 lw r22,0x0038(r29)
001c5a2c: 8fb50034 lw r21,0x0034(r29)
001c5a30: 8fb40030 lw r20,0x0030(r29)
001c5a34: 8fb3002c lw r19,0x002c(r29)
001c5a38: 8fb20028 lw r18,0x0028(r29)
001c5a3c: 8fb10024 lw r17,0x0024(r29)
001c5a40: 8fb00020 lw r16,0x0020(r29)
001c5a44: 27bd0048 addiu r29,r29,0x0048
001c5a48: 03e00008 jr r31
001c5a4c: 00000000 nop