C2/0000: 4C 0C 00 JMP $000C C2/0003: 4C 1B 11 JMP $111B C2/0006: 4C 77 0E JMP $0E77 C2/0009: 4C 30 47 JMP $4730 C2/000C: 08 PHP C2/000D: E2 30 SEP #$30 C2/000F: A9 7E LDA #$7E C2/0011: 48 PHA C2/0012: AB PLB C2/0013: 20 1E 26 JSR $261E C2/0016: 20 ED 23 JSR $23ED C2/0019: E6 BE INC $BE C2/001B: AD 02 34 LDA $3402 C2/001E: D0 03 BNE $0023 C2/0020: CE 02 34 DEC $3402 C2/0023: A9 01 LDA #$01 C2/0025: 20 11 64 JSR $6411 C2/0028: 20 95 20 JSR $2095 C2/002B: AD 58 3A LDA $3A58 C2/002E: F0 03 BEQ $0033 C2/0030: 20 CC 00 JSR $00CC C2/0033: AD 0A 34 LDA $340A C2/0036: C9 FF CMP #$FF C2/0038: F0 03 BEQ $003D C2/003A: 4C 63 21 JMP $2163 C2/003D: A9 04 LDA #$04 C2/003F: 1C 46 3A TRB $3A46 C2/0042: F0 05 BEQ $0049 C2/0044: 20 91 0A JSR $0A91 C2/0047: 80 D0 BRA $0019 C2/0049: AE 07 34 LDX $3407 C2/004C: 10 11 BPL $005F C2/004E: AE 68 3A LDX $3A68 C2/0051: EC 69 3A CPX $3A69 C2/0054: F0 0C BEQ $0062 C2/0056: EE 68 3A INC $3A68 C2/0059: BD 20 39 LDA $3920,X C2/005C: 30 F0 BMI $004E C2/005E: AA TAX C2/005F: 4C 7B 4B JMP $4B7B C2/0062: AD 3A 3A LDA $3A3A C2/0065: 2D 2F 2F AND $2F2F C2/0068: F0 05 BEQ $006F C2/006A: 1C 2F 2F TRB $2F2F C2/006D: 80 AA BRA $0019 C2/006F: A9 20 LDA #$20 C2/0071: 14 B0 TRB $B0 C2/0073: F0 08 BEQ $007D C2/0075: 20 73 5C JSR $5C73 C2/0078: A9 06 LDA #$06 C2/007A: 20 11 64 JSR $6411 C2/007D: A9 04 LDA #$04 C2/007F: 14 B0 TRB $B0 C2/0081: 20 ED 47 JSR $47ED C2/0084: A9 FF LDA #$FF C2/0086: A2 03 LDX #$03 C2/0088: 9D FC 33 STA $33FC,X C2/008B: CA DEX C2/008C: 10 FA BPL $0088 C2/008E: A9 01 LDA #$01 C2/0090: 14 B1 TRB $B1 C2/0092: AE 64 3A LDX $3A64 C2/0095: EC 65 3A CPX $3A65 C2/0098: F0 0C BEQ $00A6 C2/009A: EE 64 3A INC $3A64 C2/009D: BD 20 37 LDA $3720,X C2/00A0: 30 F0 BMI $0092 C2/00A2: AA TAX C2/00A3: 4C 88 21 JMP $2188 C2/00A6: AE 06 34 LDX $3406 C2/00A9: 10 17 BPL $00C2 C2/00AB: AE 66 3A LDX $3A66 C2/00AE: EC 67 3A CPX $3A67 C2/00B1: D0 06 BNE $00B9 C2/00B3: 9C 95 3A STZ $3A95 C2/00B6: 4C 19 00 JMP $0019 C2/00B9: EE 66 3A INC $3A66 C2/00BC: BD 20 38 LDA $3820,X C2/00BF: 30 EA BMI $00AB C2/00C1: AA TAX C2/00C2: 4C F9 00 JMP $00F9 C2/00C5: A9 09 LDA #$09 C2/00C7: 20 11 64 JSR $6411 C2/00CA: 28 PLP C2/00CB: 6B RTL C2/00CC: A2 06 LDX #$06 C2/00CE: BD 18 30 LDA $3018,X C2/00D1: 1C 58 3A TRB $3A58 C2/00D4: F0 09 BEQ $00DF C2/00D6: 86 10 STX $10 C2/00D8: 46 10 LSR $10 C2/00DA: A9 0B LDA #$0B C2/00DC: 20 11 64 JSR $6411 C2/00DF: CA DEX C2/00E0: CA DEX C2/00E1: 10 EB BPL $00CE C2/00E3: 60 RTS C2/00E4: 0C 2C 3F TSB $3F2C C2/00E7: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/00E9: BD A0 3A LDA $3AA0,X C2/00EC: 09 08 ORA #$08 C2/00EE: 29 DF AND #$DF C2/00F0: 9D A0 3A STA $3AA0,X C2/00F3: 9E B5 3A STZ $3AB5,X C2/00F6: 4C 66 4E JMP $4E66 C2/00F9: 38 SEC C2/00FA: 6E 06 34 ROR $3406 C2/00FD: F4 18 00 PEA $0018 C2/0100: A9 12 LDA #$12 C2/0102: 85 B5 STA $B5 (Set command to Mimic) C2/0104: 8D 7C 3A STA $3A7C C2/0107: BD CC 32 LDA $32CC,X C2/010A: 30 77 BMI $0183 C2/010C: 0A ASL C2/010D: A8 TAY C2/010E: B9 20 34 LDA $3420,Y C2/0111: C9 12 CMP #$12 C2/0113: D0 03 BNE $0118 (Branch if not mimic) C2/0115: 20 D9 01 JSR $01D9 C2/0118: 38 SEC C2/0119: 20 76 02 JSR $0276 C2/011C: C9 1F CMP #$1F C2/011E: D0 1E BNE $013E C2/0120: 20 01 03 JSR $0301 C2/0123: AD 97 3A LDA $3A97 C2/0126: D0 0C BNE $0134 C2/0128: BD 95 33 LDA $3395,X C2/012B: 10 07 BPL $0134 (If the monster is charmed) C2/012D: BD E5 3E LDA $3EE5,X C2/0130: 89 30 BIT #$30 C2/0132: F0 05 BEQ $0139 (Branch if not Berserk or confuse) C2/0134: 20 34 06 JSR $0634 (Picked confused command for monsters) C2/0137: 80 C7 BRA $0100 C2/0139: 20 DC 02 JSR $02DC (Pick command for monster) C2/013C: 80 C2 BRA $0100 C2/013E: C9 16 CMP #$16 C2/0140: D0 0C BNE $014E C2/0142: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0144: BD 18 30 LDA $3018,X C2/0147: 1C 2C 3F TRB $3F2C C2/014A: F0 98 BEQ $00E4 C2/014C: E2 20 SEP #$20 C2/014E: BD CC 32 LDA $32CC,X C2/0151: A8 TAY C2/0152: B9 84 31 LDA $3184,Y C2/0155: DD CC 32 CMP $32CC,X C2/0158: D0 13 BNE $016D C2/015A: A9 80 LDA #$80 C2/015C: 14 B1 TRB $B1 C2/015E: A9 FF LDA #$FF C2/0160: EC 04 34 CPX $3404 C2/0163: D0 08 BNE $016D C2/0165: CE 02 34 DEC $3402 C2/0168: D0 03 BNE $016D C2/016A: 8D 04 34 STA $3404 C2/016D: EB XBA C2/016E: BD A0 3A LDA $3AA0,X C2/0171: 89 50 BIT #$50 C2/0173: F0 05 BEQ $017A C2/0175: A9 80 LDA #$80 C2/0177: 4C AB 5B JMP $5BAB C2/017A: A9 FF LDA #$FF C2/017C: 99 84 31 STA $3184,Y C2/017F: EB XBA C2/0180: 9D CC 32 STA $32CC,X C2/0183: BD A0 3A LDA $3AA0,X C2/0186: 29 D7 AND #$D7 C2/0188: 09 40 ORA #$40 C2/018A: 9D A0 3A STA $3AA0,X C2/018D: 4A LSR C2/018E: 90 16 BCC $01A6 C2/0190: BD 04 32 LDA $3204,X C2/0193: 09 04 ORA #$04 C2/0195: 9D 04 32 STA $3204,X C2/0198: BD 05 32 LDA $3205,X C2/019B: 09 80 ORA #$80 C2/019D: 9D 05 32 STA $3205,X C2/01A0: 20 D3 13 JSR $13D3 C2/01A3: 20 1E 02 JSR $021E C2/01A6: A9 A0 LDA #$A0 C2/01A8: 04 B0 TSB $B0 C2/01AA: A9 10 LDA #$10 C2/01AC: 1C 46 3A TRB $3A46 C2/01AF: D0 06 BNE $01B7 C2/01B1: BD CC 32 LDA $32CC,X C2/01B4: 1A INC C2/01B5: D0 1E BNE $01D5 C2/01B7: BD A0 3A LDA $3AA0,X C2/01BA: 89 08 BIT #$08 C2/01BC: D0 08 BNE $01C6 C2/01BE: FE 19 32 INC $3219,X C2/01C1: D0 03 BNE $01C6 C2/01C3: DE 19 32 DEC $3219,X C2/01C6: A9 FF LDA #$FF C2/01C8: 9D 2C 32 STA $322C,X C2/01CB: 9E B5 3A STZ $3AB5,X C2/01CE: A9 80 LDA #$80 C2/01D0: 14 B0 TRB $B0 C2/01D2: 4C 67 02 JMP $0267 C2/01D5: 8E 06 34 STX $3406 C2/01D8: 60 RTS Mimic C2/01D9: AD 28 3F LDA $3F28 C2/01DC: C9 16 CMP #$16 C2/01DE: D0 11 BNE $01F1 C2/01E0: C2 20 REP #$20 C2/01E2: AD 28 3F LDA $3F28 C2/01E5: 99 20 34 STA $3420,Y C2/01E8: AD 2A 3F LDA $3F2A C2/01EB: 99 20 35 STA $3520,Y C2/01EE: E2 20 SEP #$20 C2/01F0: 60 RTS C2/01F1: C2 20 REP #$20 C2/01F3: AD 20 3F LDA $3F20 C2/01F6: 99 20 34 STA $3420,Y C2/01F9: AD 22 3F LDA $3F22 C2/01FC: 99 20 35 STA $3520,Y C2/01FF: E2 20 SEP #$20 C2/0201: AD 24 3F LDA $3F24 C2/0204: C9 12 CMP #$12 C2/0206: F0 D0 BEQ $01D8 C2/0208: C2 20 REP #$20 C2/020A: AD 24 3F LDA $3F24 C2/020D: 8D 7A 3A STA $3A7A C2/0210: AD 26 3F LDA $3F26 C2/0213: 85 B8 STA $B8 C2/0215: E2 20 SEP #$20 C2/0217: A9 40 LDA #$40 C2/0219: 04 B1 TSB $B1 C2/021B: 4C CB 4E JMP $4ECB C2/021E: DA PHX C2/021F: 08 PHP C2/0220: E0 08 CPX #$08 C2/0222: B0 40 BCS $0264 C2/0224: AD 7C 3A LDA $3A7C C2/0227: C9 1E CMP #$1E C2/0229: B0 39 BCS $0264 C2/022B: 0A ASL C2/022C: AA TAX C2/022D: BF 00 FE CF LDA $CFFE00,X C2/0231: 89 02 BIT #$02 C2/0233: F0 2F BEQ $0264 C2/0235: A9 12 LDA #$12 C2/0237: 8D 28 3F STA $3F28 C2/023A: AD 7C 3A LDA $3A7C C2/023D: C9 17 CMP #$17 C2/023F: F0 15 BEQ $0256 C2/0241: A9 12 LDA #$12 C2/0243: 8D 24 3F STA $3F24 C2/0246: C2 20 REP #$20 C2/0248: AD 7C 3A LDA $3A7C C2/024B: 8D 20 3F STA $3F20 C2/024E: AD 30 3A LDA $3A30 C2/0251: 8D 22 3F STA $3F22 C2/0254: 80 0E BRA $0264 C2/0256: C2 20 REP #$20 C2/0258: AD 7C 3A LDA $3A7C C2/025B: 8D 24 3F STA $3F24 C2/025E: AD 30 3A LDA $3A30 C2/0261: 8D 26 3F STA $3F26 C2/0264: 28 PLP C2/0265: FA PLX C2/0266: 60 RTS C2/0267: A9 0D LDA #$0D C2/0269: 8D 6E 2D STA $2D6E C2/026C: A9 FF LDA #$FF C2/026E: 8D 72 2D STA $2D72 C2/0271: A9 04 LDA #$04 C2/0273: 4C 11 64 JMP $6411 C2/0276: 08 PHP C2/0277: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0279: B9 20 35 LDA $3520,Y C2/027C: 85 B8 STA $B8 C2/027E: B9 20 34 LDA $3420,Y C2/0281: 8D 7C 3A STA $3A7C C2/0284: 85 B5 STA $B5 C2/0286: 28 PLP C2/0287: 48 PHA C2/0288: 90 10 BCC $029A C2/028A: C9 1D CMP #$1D C2/028C: B0 0C BCS $029A (Branch if not character command) C2/028E: BD 18 30 LDA $3018,X C2/0291: 1C 4A 3A TRB $3A4A C2/0294: F0 04 BEQ $029A C2/0296: 64 B8 STZ $B8 C2/0298: 64 B9 STZ $B9 C2/029A: B9 20 36 LDA $3620,Y C2/029D: 8D 4C 3A STA $3A4C C2/02A0: BD E4 3E LDA $3EE4,X C2/02A3: 89 20 BIT #$20 (Check for Imp Status) C2/02A5: F0 33 BEQ $02DA (If not imp) C2/02A7: A5 B5 LDA $B5 C2/02A9: C9 1E CMP #$1E C2/02AB: B0 2D BCS $02DA C2/02AD: DA PHX C2/02AE: 0A ASL C2/02AF: AA TAX C2/02B0: BF 00 FE CF LDA $CFFE00,X C2/02B4: FA PLX C2/02B5: 89 04 BIT #$04 C2/02B7: D0 21 BNE $02DA C2/02B9: 9C 4C 3A STZ $3A4C C2/02BC: DA PHX C2/02BD: 7B TDC C2/02BE: E0 08 CPX #$08 C2/02C0: 2A ROL C2/02C1: AA TAX C2/02C2: B5 B8 LDA $B8,X C2/02C4: 3D 40 3A AND $3A40,X C2/02C7: 95 B8 STA $B8,X C2/02C9: C2 20 REP #$20 C2/02CB: 9C 7C 3A STZ $3A7C C2/02CE: 64 B5 STZ $B5 C2/02D0: A5 B8 LDA $B8 C2/02D2: 20 2A 52 JSR $522A C2/02D5: 85 B8 STA $B8 C2/02D7: E2 20 SEP #$20 C2/02D9: FA PLX C2/02DA: 68 PLA C2/02DB: 60 RTS C2/02DC: C2 20 REP #$20 C2/02DE: 9C 98 3A STZ $3A98 C2/02E1: BD 54 32 LDA $3254,X C2/02E4: 85 F0 STA $F0 C2/02E6: BD 0C 3D LDA $3D0C,X C2/02E9: 85 F2 STA $F2 C2/02EB: BD 40 32 LDA $3240,X C2/02EE: 85 F4 STA $F4 C2/02F0: 18 CLC C2/02F1: 20 2F 1A JSR $1A2F C2/02F4: A5 F2 LDA $F2 C2/02F6: 9D 0C 3D STA $3D0C,X C2/02F9: E2 20 SEP #$20 C2/02FB: A5 F5 LDA $F5 C2/02FD: 9D 40 32 STA $3240,X C2/0300: 60 RTS C2/0301: BD CC 32 LDA $32CC,X C2/0304: 30 15 BMI $031B C2/0306: 5A PHY C2/0307: A8 TAY C2/0308: B9 84 31 LDA $3184,Y C2/030B: DD CC 32 CMP $32CC,X C2/030E: D0 02 BNE $0312 C2/0310: A9 FF LDA #$FF C2/0312: 9D CC 32 STA $32CC,X C2/0315: A9 FF LDA #$FF C2/0317: 99 84 31 STA $3184,Y C2/031A: 7A PLY C2/031B: 60 RTS C2/031C: 64 B8 STZ $B8 C2/031E: 64 B9 STZ $B9 C2/0320: FE 2C 32 INC $322C,X C2/0323: F0 03 BEQ $0328 C2/0325: DE 2C 32 DEC $322C,X C2/0328: 20 41 0A JSR $0A41 (Clear defend bit) C2/032B: BD 4C 3E LDA $3E4C,X C2/032E: 29 FA AND #$FA C2/0330: 9D 4C 3E STA $3E4C,X (Clear bit retort and runic) C2/0333: E0 08 CPX #$08 C2/0335: 90 0D BCC $0344 C2/0337: BD CC 32 LDA $32CC,X C2/033A: 10 1B BPL $0357 C2/033C: A9 1F LDA #$1F C2/033E: 8D 7A 3A STA $3A7A C2/0341: 4C CB 4E JMP $4ECB C2/0344: BD 18 30 LDA $3018,X C2/0347: 1C 4A 3A TRB $3A4A C2/034A: BD 55 32 LDA $3255,X C2/034D: 30 03 BMI $0352 C2/034F: 4C DC 02 JMP $02DC C2/0352: BD CC 32 LDA $32CC,X C2/0355: 30 24 BMI $037B C2/0357: 48 PHA C2/0358: 0A ASL C2/0359: A8 TAY C2/035A: C2 20 REP #$20 C2/035C: B9 20 35 LDA $3520,Y C2/035F: 85 B8 STA $B8 C2/0361: B9 20 34 LDA $3420,Y C2/0364: 20 E4 03 JSR $03E4 C2/0367: A5 B8 LDA $B8 C2/0369: 99 20 35 STA $3520,Y C2/036C: E2 20 SEP #$20 C2/036E: 68 PLA C2/036F: A8 TAY C2/0370: D9 84 31 CMP $3184,Y C2/0373: F0 05 BEQ $037A C2/0375: B9 84 31 LDA $3184,Y C2/0378: 80 DD BRA $0357 C2/037A: 60 RTS Pick an action if confused, berserked, or in colloseum C2/037B: BD F8 3E LDA $3EF8,X C2/037E: 4A LSR C2/037F: B0 56 BCS $03D7 (Branch if Dance) C2/0381: BD F9 3E LDA $3EF9,X C2/0384: 4A LSR C2/0385: B0 47 BCS $03CE (Branch if Rage) C2/0387: BD E4 3E LDA $3EE4,X C2/038A: 89 08 BIT #$08 C2/038C: D0 38 BNE $03C6 (Branch if M-Tek Status) C2/038E: 20 20 04 JSR $0420 (Pick which action to use) C2/0391: C9 17 CMP #$17 C2/0393: D0 1B BNE $03B0 (Branch if not X-Magic) C2/0395: 48 PHA C2/0396: EB XBA C2/0397: 48 PHA C2/0398: 48 PHA C2/0399: 9B TXY C2/039A: 20 1A 05 JSR $051A (Pick another spell for X-Magic to use) C2/039D: 83 01 STA $01,S C2/039F: 68 PLA C2/03A0: EB XBA C2/03A1: A9 02 LDA #$02 C2/03A3: 20 E4 03 JSR $03E4 C2/03A6: 20 CB 4E JSR $4ECB C2/03A9: 64 B8 STZ $B8 C2/03AB: 64 B9 STZ $B9 C2/03AD: 68 PLA C2/03AE: EB XBA C2/03AF: 68 PLA C2/03B0: 20 B9 03 JSR $03B9 C2/03B3: 20 E4 03 JSR $03E4 C2/03B6: 4C CB 4E JMP $4ECB C2/03B9: 08 PHP C2/03BA: C2 20 REP #$20 C2/03BC: C9 0C 8C CMP #$8C0C C2/03BF: D0 03 BNE $03C4 C2/03C1: A9 1E 8C LDA #$8C1E C2/03C4: 28 PLP C2/03C5: 60 RTS C2/03C6: 20 84 05 JSR $0584 C2/03C9: EB XBA C2/03CA: A9 1D LDA #$1D C2/03CC: 80 10 BRA $03DE Pick which rage action to use while confused and raging C2/03CE: 9B TXY C2/03CF: 20 D1 05 JSR $05D1 C2/03D2: EB XBA C2/03D3: A9 10 LDA #$10 C2/03D5: 80 07 BRA $03DE Pick a dance move to use while confused and dancing C2/03D7: 9B TXY C2/03D8: 20 9C 05 JSR $059C (Pick a dance move to use) C2/03DB: EB XBA C2/03DC: A9 13 LDA #$13 C2/03DE: 20 E4 03 JSR $03E4 C2/03E1: 4C CB 4E JMP $4ECB C2/03E4: 08 PHP C2/03E5: E2 30 SEP #$30 (Set 8-bit A,X, & Y) C2/03E7: 8D 7A 3A STA $3A7A (Set Command to low byte of A) C2/03EA: EB XBA C2/03EB: 8D 7B 3A STA $3A7B (Set Attack to high byte of a) C2/03EE: EB XBA C2/03EF: C9 1E CMP #$1E (Check if it's a standard or special command) C2/03F1: B0 2B BCS $041E C2/03F3: 48 PHA C2/03F4: DA PHX C2/03F5: AA TAX C2/03F6: BF 7B 06 C2 LDA $C2067B,X C2/03FA: FA PLX C2/03FB: 18 CLC C2/03FC: 7D 2C 32 ADC $322C,X C2/03FF: B0 03 BCS $0404 C2/0401: 1A INC C2/0402: D0 02 BNE $0406 C2/0404: A9 FF LDA #$FF C2/0406: 3A DEC C2/0407: 9D 2C 32 STA $322C,X C2/040A: 68 PLA C2/040B: 20 D3 26 JSR $26D3 C2/040E: A9 04 LDA #$04 C2/0410: 14 BA TRB $BA C2/0412: C2 20 REP #$20 C2/0414: A5 B8 LDA $B8 C2/0416: D0 06 BNE $041E C2/0418: 9C 4E 3A STZ $3A4E C2/041B: 20 7E 58 JSR $587E C2/041E: 28 PLP C2/041F: 60 RTS Pick action to take if confused, berserked, or in colloseum C2/0420: 8A TXA C2/0421: EB XBA C2/0422: A9 06 LDA #$06 C2/0424: 20 81 47 JSR $4781 (X * 6) C2/0427: A8 TAY C2/0428: 64 FE STZ $FE C2/042A: 64 FF STZ $FF C2/042C: B9 2E 20 LDA $202E,Y C2/042F: 85 F6 STA $F6 C2/0431: B9 31 20 LDA $2031,Y C2/0434: 85 F8 STA $F8 C2/0436: B9 34 20 LDA $2034,Y C2/0439: 85 FA STA $FA C2/043B: B9 37 20 LDA $2037,Y C2/043E: 85 FC STA $FC C2/0440: A9 05 LDA #$05 C2/0442: 85 F5 STA $F5 C2/0444: BD E5 3E LDA $3EE5,X C2/0447: 0A ASL C2/0448: 0A ASL C2/0449: 85 F4 STA $F4 C2/044B: 0A ASL C2/044C: 10 04 BPL $0452 (Branch if no Berserk status) C2/044E: 64 F4 STZ $F4 C2/0450: 80 0C BRA $045E C2/0452: BD 95 33 LDA $3395,X (Which target charmed you) C2/0455: 49 80 EOR #$80 (Toggle bit 7) C2/0457: 04 F4 TSB $F4 C2/0459: AD 97 3A LDA $3A97 C2/045C: 04 F4 TSB $F4 C2/045E: 9B TXY C2/045F: DA PHX C2/0460: A2 06 LDX #$06 C2/0462: DA PHX C2/0463: B5 F6 LDA $F6,X C2/0465: 48 PHA C2/0466: 30 1A BMI $0482 C2/0468: 18 CLC C2/0469: 20 17 52 JSR $5217 (X=A DIV 8, A=2^(A MOD 8)) C2/046C: 3F D0 04 C2 AND $C204D0,X (Check if command can be used confused) C2/0470: F0 10 BEQ $0482 (Branch if command can't be used while confused) C2/0472: A5 F4 LDA $F4 C2/0474: 30 12 BMI $0488 (Branch if confused but not Berserked) C2/0476: A3 01 LDA $01,S C2/0478: 18 CLC C2/0479: 20 17 52 JSR $5217 (X=A DIV 8, A=2^(A MOD 8)) C2/047C: 3F D4 04 C2 AND $C204D4,X C2/0480: D0 06 BNE $0488 (Branch if command can be used while Berserk) C2/0482: A9 FF LDA #$FF (Set command to not used) C2/0484: 83 01 STA $01,S C2/0486: C6 F5 DEC $F5 (Reduce number of usable commands) C2/0488: 7B TDC C2/0489: A3 01 LDA $01,S C2/048B: A2 08 LDX #$08 C2/048D: DF D8 04 C2 CMP $C204D8,X C2/0491: D0 06 BNE $0499 C2/0493: FC E2 04 JSR ($04E2,X) (Set action to specific spell, swdtech, blitz, etc.) C2/0496: EB XBA C2/0497: 80 10 BRA $04A9 C2/0499: DF D9 04 C2 CMP $C204D9,X C2/049D: D0 06 BNE $04A5 C2/049F: FC EC 04 JSR ($04EC,X) (Set action to specific spell, swdtech, blitz, etc.) C2/04A2: EB XBA C2/04A3: 80 04 BRA $04A9 C2/04A5: CA DEX C2/04A6: CA DEX C2/04A7: 10 E4 BPL $048D C2/04A9: 68 PLA C2/04AA: FA PLX C2/04AB: 95 F6 STA $F6,X C2/04AD: EB XBA C2/04AE: 95 F7 STA $F7,X C2/04B0: CA DEX C2/04B1: CA DEX C2/04B2: 10 AE BPL $0462 C2/04B4: A5 F5 LDA $F5 (Number of usable commands) C2/04B6: 20 65 4B JSR $4B65 (Pick a command to use) C2/04B9: A8 TAY C2/04BA: A2 08 LDX #$08 C2/04BC: B5 F6 LDA $F6,X C2/04BE: 30 03 BMI $04C3 (Branch if not a usable command) C2/04C0: 88 DEY C2/04C1: 30 07 BMI $04CA C2/04C3: CA DEX C2/04C4: CA DEX C2/04C5: 10 F5 BPL $04BC C2/04C7: 7B TDC C2/04C8: 80 04 BRA $04CE C2/04CA: EB XBA C2/04CB: B5 F7 LDA $F7,X (Load command to use) C2/04CD: EB XBA C2/04CE: FA PLX C2/04CF: 60 RTS Commands capable of being used while confused or berserked C2/04D0: ED (Fight, Magic, Morph, Steal, Capture, Swdtech) C2/04D1: 3E (Tools, Blitz, Runic, Lore, Sketch) C2/04D2: DD (Rage, Mimic, Dance, Row, Jump, X-Magic) C2/04D3: 2D (GP rain, Health, Shock, Magitek) Commands capable of being used while berserked C2/04D4: 41 (Fight, Capture) C2/04D5: 00 C2/04D6: 41 (Rage, Jump) C2/04D7: 20 (Magitek) Commands C2/04D8: 02 (Magic) C2/04D9: 17 (X-Magic) C2/04DA: 07 (Swdtech) C2/04DB: 0A (Blitz) C2/04DC: 10 (Rage) C2/04DD: 13 (Dance) C2/04DE: 0C (Lore) C2/04DF: 03 (Morph) C2/04E0: 1D (Magitek) C2/04E1: 09 (Tools) Code pointers C2/04E2: 1A 05 (Magic) C2/04E4: 60 05 (Swdtech) C2/04E6: D1 05 (Rage) C2/04E8: F6 04 (Lore) C2/04EA: 84 04 (Magitek) C2/04EC: 1A 05 (X-Magic) C2/04EE: 75 05 (Blitz) C2/04F0: 9C 05 (Dance) C2/04F2: 57 05 (Morph) C2/04F4: 8D 05 (Tools) Pick a Lore to use C2/04F6: B9 E5 3E LDA $3EE5,Y C2/04F9: 89 08 BIT #$08 C2/04FB: D0 52 BNE $054F (If mute, won't use Lore) C2/04FD: AD 87 3A LDA $3A87 (Check number of lores known) C2/0500: F0 4D BEQ $054F (Won't use Lore if no Lores known) C2/0502: 48 PHA C2/0503: C2 21 REP #$21 C2/0505: B9 2C 30 LDA $302C,Y C2/0508: 69 D8 00 ADC #$00D8 C2/050B: 85 EE STA $EE C2/050D: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/050F: 68 PLA C2/0510: EB XBA C2/0511: A9 60 LDA #$60 C2/0513: 20 34 05 JSR $0534 C2/0516: 18 CLC C2/0517: 69 8B ADC #$8B C2/0519: 60 RTS Pick a Spell to cast C2/051A: B9 E5 3E LDA $3EE5,Y C2/051D: 89 08 BIT #$08 C2/051F: D0 2E BNE $054F (If Mute won't use Magic or X-magic) C2/0521: B9 F8 3C LDA $3CF8,Y C2/0524: F0 29 BEQ $054F C2/0526: 48 PHA C2/0527: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0529: B9 2C 30 LDA $302C,Y C2/052C: 85 EE STA $EE C2/052E: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/0530: 68 PLA C2/0531: EB XBA C2/0532: A9 D8 LDA #$D8 C2/0534: DA PHX C2/0535: 5A PHY C2/0536: A8 TAY C2/0537: EB XBA C2/0538: 20 65 4B JSR $4B65 (0 to A - 1) C2/053B: AA TAX C2/053C: B1 EE LDA ($EE),Y C2/053E: C9 FF CMP #$FF C2/0540: F0 03 BEQ $0545 C2/0542: CA DEX C2/0543: 30 07 BMI $054C C2/0545: 88 DEY C2/0546: 88 DEY C2/0547: 88 DEY C2/0548: 88 DEY C2/0549: D0 F1 BNE $053C C2/054B: 7B TDC C2/054C: 7A PLY C2/054D: FA PLX C2/054E: 60 RTS Remove command from usable command list C2/054F: C6 F5 DEC $F5 C2/0551: A9 FF LDA #$FF C2/0553: 83 03 STA $03,S C2/0555: 7B TDC C2/0556: 60 RTS Check if enough Morph time is left to Morph C2/0557: A9 0F LDA #$0F C2/0559: CD F6 1C CMP $1CF6 C2/055C: 7B TDC C2/055D: B0 F0 BCS $054F (Morph won't be used if morph time is under 16) C2/055F: 60 RTS Pick a Swdtech to use C2/0560: B9 A4 3B LDA $3BA4,Y C2/0563: 19 A5 3B ORA $3BA5,Y C2/0566: 89 02 BIT #$02 C2/0568: F0 E5 BEQ $054F (Remove from command list if equipped weapon can't Swdtech) C2/056A: AD 20 20 LDA $2020 (# of known Swdtechs) C2/056D: 1A INC C2/056E: 20 65 4B JSR $4B65 (Pick a known Swdtech) C2/0571: 18 CLC C2/0572: 69 55 ADC #$55 C2/0574: 60 RTS Pick a blitz to use C2/0575: 7B TDC C2/0576: AD 28 1D LDA $1D28 (Known Blitzes) C2/0579: 20 2A 52 JSR $522A (Pick a random known blitz) C2/057C: 20 F0 51 JSR $51F0 C2/057F: 8A TXA C2/0580: 18 CLC C2/0581: 69 5D ADC #$5D C2/0583: 60 RTS C2/0584: A9 03 LDA #$03 C2/0586: 20 65 4B JSR $4B65 (0 to 2) C2/0589: 18 CLC C2/058A: 69 83 ADC #$83 C2/058C: 60 RTS Pick a tool to use C2/058D: 7B TDC C2/058E: AD 9B 3A LDA $3A9B (Which tools are owned C2/0591: 20 2A 52 JSR $522A (Pick a random tool that is owned) C2/0594: 20 F0 51 JSR $51F0 C2/0597: 8A TXA C2/0598: 18 CLC C2/0599: 69 A3 ADC #$A3 C2/059B: 60 RTS Picks dance, and dance move C2/059C: DA PHX C2/059D: B9 E1 32 LDA $32E1,Y C2/05A0: C9 FF CMP #$FF C2/05A2: D0 0E BNE $05B2 (Don't pick a new dance if one is already selected) C2/05A4: 7B TDC C2/05A5: AD 4C 1D LDA $1D4C C2/05A8: 20 2A 52 JSR $522A (Pick a random bit that is set) C2/05AB: 20 F0 51 JSR $51F0 (Get which bit is set) C2/05AE: 8A TXA C2/05AF: 99 E1 32 STA $32E1,Y (Set dance to use) C2/05B2: 0A ASL C2/05B3: 0A ASL C2/05B4: 85 EE STA $EE C2/05B6: 20 5A 4B JSR $4B5A (0 to 255) C2/05B9: A2 02 LDX #$02 C2/05BB: DF CE 05 C2 CMP $C205CE,X C2/05BF: B0 02 BCS $05C3 C2/05C1: E6 EE INC $EE C2/05C3: CA DEX C2/05C4: 10 F5 BPL $05BB C2/05C6: A6 EE LDX $EE C2/05C8: BF 80 FE CF LDA $CFFE80,X (Set dance move used) C2/05CC: FA PLX C2/05CD: 60 RTS Data for how often to do each dance move C2/05CE: 10 30 90 Pick which rage and rage action to use C2/05D1: DA PHX C2/05D2: 08 PHP C2/05D3: 7B TDC C2/05D4: 99 A9 33 STA $33A9,Y C2/05D7: B9 A8 33 LDA $33A8,Y (Which rage is being used) C2/05DA: C9 FF CMP #$FF C2/05DC: D0 22 BNE $0600 (Branch if already raging) C2/05DE: 1A INC C2/05DF: 99 A8 33 STA $33A8,Y C2/05E2: AD 9A 3A LDA $3A9A (Number of rages known) C2/05E5: 20 65 4B JSR $4B65 C2/05E8: 1A INC (Random Number: 1 to # of rages) C2/05E9: 85 EE STA $EE C2/05EB: A2 00 LDX #$00 C2/05ED: BD 7E 25 LDA $257E,X C2/05F0: C9 FF CMP #$FF C2/05F2: F0 0C BEQ $0600 C2/05F4: C6 EE DEC $EE C2/05F6: F0 05 BEQ $05FD C2/05F8: E8 INX C2/05F9: D0 F2 BNE $05ED C2/05FB: 80 03 BRA $0600 C2/05FD: 99 A8 33 STA $33A8,Y (Set to which rage to use) C2/0600: 20 53 4B JSR $4B53 (Pick which rage action to use) C2/0603: C2 30 REP #$30 (Set 16-bit A, X, & Y) C2/0605: 2A ROL C2/0606: AA TAX C2/0607: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/0609: BF 00 46 CF LDA $CF4600,X (Rage Actions) C2/060D: 28 PLP C2/060E: FA PLX C2/060F: 60 RTS Set Statuses, elemental resistances, etc. for raged character C2/0610: 08 PHP C2/0611: B9 A8 33 LDA $33A8,Y (Which rage is used) C2/0614: AA TAX C2/0615: EB XBA C2/0616: BF C0 37 CF LDA $CF37C0,X C2/061A: 99 81 3C STA $3C81,Y C2/061D: A9 20 LDA #$20 C2/061F: 20 81 47 JSR $4781 C2/0622: C2 10 REP #$10 (Set 16-bit X & Y) C2/0624: AA TAX C2/0625: BF 1A 00 CF LDA $CF001A,X (Attack Type for monster) C2/0629: 99 A8 3C STA $3CA8,Y (Right hand weapon) C2/062C: 99 A9 3C STA $3CA9,Y (Left hand weapon) C2/062F: 20 C1 2D JSR $2DC1 C2/0632: 28 PLP C2/0633: 60 RTS Picks command for confused monsters C2/0634: DA PHX C2/0635: C2 30 REP #$30 (Set 16-bit A,X & Y) C2/0637: BD F9 1F LDA $1FF9,X (Which monster it is) C2/063A: 0A ASL C2/063B: 0A ASL C2/063C: AA TAX C2/063D: BF 00 3D CF LDA $CF3D00,X (Confused commands) C2/0641: 85 F0 STA $F0 C2/0643: BF 02 3D CF LDA $CF3D02,X (Confused commands) C2/0647: 85 F2 STA $F2 C2/0649: E2 30 SEP #$30 (Set 8-bit A,X, & Y) C2/064B: 64 EE STZ $EE C2/064D: 20 5A 4B JSR $4B5A (0 to 255) C2/0650: 29 03 AND #$03 (0 to 3) C2/0652: AA TAX C2/0653: B5 F0 LDA $F0,X C2/0655: C9 FF CMP #$FF C2/0657: D0 0B BNE $0664 (If command does not equal nothing) C2/0659: CA DEX C2/065A: 10 F7 BPL $0653 C2/065C: E6 EE INC $EE C2/065E: F0 04 BEQ $0664 C2/0660: A2 03 LDX #$03 C2/0662: 80 EF BRA $0653 C2/0664: FA PLX C2/0665: 48 PHA C2/0666: BD E5 3E LDA $3EE5,X C2/0669: 89 10 BIT #$10 C2/066B: F0 04 BEQ $0671 (Branch if not Berserk) C2/066D: A9 EE LDA #$EE C2/066F: 83 01 STA $01,S (Set command to fight if berserked) C2/0671: 68 PLA C2/0672: 20 BF 1D JSR $1DBF C2/0675: 20 E4 03 JSR $03E4 C2/0678: 4C CB 4E JMP $4ECB Data C2/067B: 10 10 BPL $068D C2/067D: 20 00 00 JSR $0000 C2/0680: 10 10 BPL $0692 C2/0682: 10 10 BPL $0694 C2/0684: 10 10 BPL $0696 C2/0686: 10 20 BPL $06A8 C2/0688: 10 10 BPL $069A C2/068A: 10 10 BPL $069C C2/068C: 10 10 BPL $069E C2/068E: 10 10 BPL $06A0 C2/0690: 10 E0 BPL $0672 C2/0692: 20 10 10 JSR $1010 C2/0695: 20 20 10 JSR $1020 C2/0698: 10 00 BPL $069A C2/069A: 00 C2/069B: A2 12 LDX #$12 C2/069D: BD A0 3A LDA $3AA0,X C2/06A0: 4A LSR C2/06A1: 90 5D BCC $0700 C2/06A3: C2 20 REP #$20 C2/06A5: BD 18 30 LDA $3018,X C2/06A8: 2C 4E 2F BIT $2F4E C2/06AB: E2 20 SEP #$20 C2/06AD: D0 51 BNE $0700 C2/06AF: 20 AD 07 JSR $07AD C2/06B2: BD E4 3E LDA $3EE4,X C2/06B5: 89 82 BIT #$82 (Check for Dead or Zombie Status) C2/06B7: F0 06 BEQ $06BF C2/06B9: 9E F4 3B STZ $3BF4,X (Set HP to 0) C2/06BC: 9E F5 3B STZ $3BF5,X C2/06BF: BD E4 3E LDA $3EE4,X C2/06C2: 89 C2 BIT #$C2 (Check for Dead, Zombie, or Stone Status) C2/06C4: F0 09 BEQ $06CF C2/06C6: BD 19 30 LDA $3019,X C2/06C9: 0C 3A 3A TSB $3A3A C2/06CC: 20 C8 07 JSR $07C8 C2/06CF: BD E4 3E LDA $3EE4,X C2/06D2: 10 2C BPL $0700 (Branch if alive) C2/06D4: E0 08 CPX #$08 C2/06D6: B0 0C BCS $06E4 (Branch if not a character) C2/06D8: BD D8 3E LDA $3ED8,X (Which character attacker is) C2/06DB: C9 0E CMP #$0E C2/06DD: D0 05 BNE $06E4 (Branch if not Banon) C2/06DF: A9 06 LDA #$06 C2/06E1: 8D 6E 3A STA $3A6E (Method used to end combat) C2/06E4: 20 10 07 JSR $0710 C2/06E7: BD E4 3E LDA $3EE4,X C2/06EA: 89 02 BIT #$02 (Check for Zombie Status) C2/06EC: F0 03 BEQ $06F1 C2/06EE: 20 28 07 JSR $0728 C2/06F1: BD E4 3E LDA $3EE4,X C2/06F4: 10 0A BPL $0700 (Branch if alive) C2/06F6: BD F9 3E LDA $3EF9,X C2/06F9: 89 04 BIT #$04 C2/06FB: F0 03 BEQ $0700 C2/06FD: 20 99 07 JSR $0799 C2/0700: CA DEX C2/0701: CA DEX C2/0702: 10 99 BPL $069D C2/0704: A2 12 LDX #$12 C2/0706: 20 39 07 JSR $0739 C2/0709: CA DEX C2/070A: CA DEX C2/070B: 10 F9 BPL $0706 C2/070D: 4C 26 5D JMP $5D26 C2/0710: C2 20 REP #$20 C2/0712: BD 18 30 LDA $3018,X C2/0715: 2C 2C 3F BIT $3F2C C2/0718: E2 20 SEP #$20 C2/071A: F0 0B BEQ $0727 (Exit function) C2/071C: 20 28 07 JSR $0728 C2/071F: BD 05 32 LDA $3205,X C2/0722: 29 FB AND #$FB C2/0724: 9D 05 32 STA $3205,X (Set Air Anchor effect) C2/0727: 60 RTS C2/0728: BD E4 3E LDA $3EE4,X C2/072B: 29 7F AND #$7F (Clear death status) C2/072D: 9D E4 3E STA $3EE4,X C2/0730: BD 04 32 LDA $3204,X C2/0733: 29 BF AND #$BF C2/0735: 9D 04 32 STA $3204,X C2/0738: 60 RTS C2/0739: BD B9 32 LDA $32B9,X C2/073C: C9 FF CMP #$FF C2/073E: F0 08 BEQ $0748 C2/0740: 10 06 BPL $0748 C2/0742: 29 7F AND #$7F C2/0744: A8 TAY C2/0745: 20 5B 07 JSR $075B C2/0748: BD B8 32 LDA $32B8,X C2/074B: C9 FF CMP #$FF C2/074D: F0 0B BEQ $075A C2/074F: 10 09 BPL $075A C2/0751: 29 7F AND #$7F C2/0753: DA PHX C2/0754: 9B TXY C2/0755: AA TAX C2/0756: 20 5B 07 JSR $075B C2/0759: FA PLX C2/075A: 60 RTS C2/075B: B9 4D 3E LDA $3E4D,Y C2/075E: 29 FE AND #$FE C2/0760: 99 4D 3E STA $3E4D,Y C2/0763: B9 F9 3E LDA $3EF9,Y C2/0766: 29 EF AND #$EF C2/0768: 99 F9 3E STA $3EF9,Y C2/076B: A9 FF LDA #$FF C2/076D: 9D B9 32 STA $32B9,X C2/0770: 99 B8 32 STA $32B8,Y C2/0773: BD 19 30 LDA $3019,X C2/0776: 1C 54 2F TRB $2F54 C2/0779: DA PHX C2/077A: 20 83 07 JSR $0783 C2/077D: BB TYX C2/077E: 20 83 07 JSR $0783 C2/0781: FA PLX C2/0782: 60 RTS C2/0783: A9 40 LDA #$40 C2/0785: 20 AB 5B JSR $5BAB C2/0788: BD 04 32 LDA $3204,X C2/078B: 09 40 ORA #$40 C2/078D: 9D 04 32 STA $3204,X C2/0790: A9 7F LDA #$7F C2/0792: 3D A0 3A AND $3AA0,X C2/0795: 9D A0 3A STA $3AA0,X C2/0798: 60 RTS C2/0799: 29 FB AND #$FB C2/079B: 9D F9 3E STA $3EF9,X C2/079E: BD 19 30 LDA $3019,X C2/07A1: 1C 2F 2F TRB $2F2F C2/07A4: A9 30 LDA #$30 C2/07A6: 85 B8 STA $B8 C2/07A8: A9 26 LDA #$26 C2/07AA: 4C 91 4E JMP $4E91 C2/07AD: F4 C2 B0 PEA $B0C2 (Sleep, Confuse, Berserk, Death, Stone, Zombie) C2/07B0: F4 11 03 PEA $0311 (Rage, Freeze, Dance, Stop) C2/07B3: 9B TXY C2/07B4: 20 64 58 JSR $5864 C2/07B7: B0 0E BCS $07C7 (Exit function if any not set) C2/07B9: 1E B8 32 ASL $32B8,X C2/07BC: 38 SEC C2/07BD: 7E B8 32 ROR $32B8,X C2/07C0: 1E B9 32 ASL $32B9,X C2/07C3: 38 SEC C2/07C4: 7E B9 32 ROR $32B9,X C2/07C7: 60 RTS C2/07C8: EC F9 33 CPX $33F9 C2/07CB: D0 28 BNE $07F5 C2/07CD: DA PHX C2/07CE: AE F8 33 LDX $33F8 C2/07D1: BD 19 30 LDA $3019,X C2/07D4: 85 B9 STA $B9 C2/07D6: A9 04 LDA #$04 C2/07D8: 85 B8 STA $B8 C2/07DA: A2 00 LDX #$00 C2/07DC: A9 24 LDA #$24 C2/07DE: 20 91 4E JSR $4E91 C2/07E1: A9 02 LDA #$02 C2/07E3: 85 B8 STA $B8 C2/07E5: A2 08 LDX #$08 C2/07E7: A9 24 LDA #$24 C2/07E9: 20 91 4E JSR $4E91 C2/07EC: A9 FF LDA #$FF C2/07EE: 8D F8 33 STA $33F8 C2/07F1: 8D F9 33 STA $33F9 C2/07F4: FA PLX C2/07F5: BD 6C 33 LDA $336C,X C2/07F8: 30 04 BMI $07FE C2/07FA: A8 TAY C2/07FB: 20 2D 08 JSR $082D (Clear Love Token) C2/07FE: BD 6D 33 LDA $336D,X C2/0801: 30 07 BMI $080A C2/0803: DA PHX C2/0804: 9B TXY C2/0805: AA TAX C2/0806: 20 2D 08 JSR $082D (Clear Love Token) C2/0809: FA PLX C2/080A: BD 94 33 LDA $3394,X C2/080D: 30 04 BMI $0813 C2/080F: A8 TAY C2/0810: 20 36 08 JSR $0836 (Clear Charm) C2/0813: BD 95 33 LDA $3395,X C2/0816: 30 07 BMI $081F (Branch if charmed) C2/0818: DA PHX C2/0819: 9B TXY C2/081A: AA TAX C2/081B: 20 36 08 JSR $0836 (Clear Charm) C2/081E: FA PLX C2/081F: EC 04 34 CPX $3404 C2/0822: D0 08 BNE $082C (Exit If this actor does not get extra turn due to quick) C2/0824: A9 FF LDA #$FF C2/0826: 8D 04 34 STA $3404 C2/0829: 8D 02 34 STA $3402 C2/082C: 60 RTS Clear Love Toekn effects C2/082D: A9 FF LDA #$FF C2/082F: 9D 6C 33 STA $336C,X C2/0832: 99 6D 33 STA $336D,Y C2/0835: 60 RTS Clear Charm effects C2/0836: A9 FF LDA #$FF C2/0838: 9D 94 33 STA $3394,X C2/083B: 99 95 33 STA $3395,Y C2/083E: 60 RTS C2/083F: A2 12 LDX #$12 C2/0841: BD A0 3A LDA $3AA0,X C2/0844: 4A LSR C2/0845: 90 77 BCC $08BE C2/0847: 1E E0 32 ASL $32E0,X C2/084A: 5E E0 32 LSR $32E0,X C2/084D: BD E4 3E LDA $3EE4,X C2/0850: 30 07 BMI $0859 (Branch if dead) C2/0852: BD A1 3A LDA $3AA1,X C2/0855: 89 40 BIT #$40 C2/0857: F0 03 BEQ $085C (Branch if controlled) C2/0859: 20 77 09 JSR $0977 C2/085C: BD 04 32 LDA $3204,X C2/085F: F0 4A BEQ $08AB C2/0861: 4A LSR C2/0862: 90 03 BCC $0867 C2/0864: 20 4A 0B JSR $0B4A (If bit 0 of $3204,X is set) C2/0867: 1E 04 32 ASL $3204,X C2/086A: 90 03 BCC $086F C2/086C: 20 63 57 JSR $5763 (If bit 7 of $3204,X is set) C2/086F: 1E 04 32 ASL $3204,X C2/0872: 90 08 BCC $087C C2/0874: 20 0F 0A JSR $0A0F (If bit 6 of $3204,X is set) C2/0877: A9 80 LDA #$80 C2/0879: 20 AB 5B JSR $5BAB (Set bit 7 of $3AA1) C2/087C: 1E 04 32 ASL $3204,X C2/087F: 90 03 BCC $0884 C2/0881: 20 B4 09 JSR $09B4 (If bit 5 0f $3204,X is set) C2/0884: 1E 04 32 ASL $3204,X C2/0887: 90 03 BCC $088C C2/0889: 20 CE 09 JSR $09CE (If bit 4 of $3204,X is set) C2/088C: 1E 04 32 ASL $3204,X C2/088F: 90 07 BCC $0898 C2/0891: E0 08 CPX #$08 (If bit 3 of $3204,X is set) C2/0893: B0 03 BCS $0898 "" C2/0895: 20 7D 52 JSR $527D "" C2/0898: 1E 04 32 ASL $3204,X C2/089B: 90 03 BCC $08A0 C2/089D: 20 D2 09 JSR $09D2 (If bit 2 of $3204,X is set) C2/08A0: 1E 04 32 ASL $3204,X C2/08A3: 90 03 BCC $08A8 C2/08A5: 20 A8 0A JSR $0AA8 (If bit 1 of $3204,X is set) C2/08A8: 1E 04 32 ASL $3204,X C2/08AB: 20 1F 09 JSR $091F C2/08AE: 20 C6 08 JSR $08C6 C2/08B1: BD A0 3A LDA $3AA0,X C2/08B4: 89 50 BIT #$50 C2/08B6: F0 03 BEQ $08BB C2/08B8: 20 41 0A JSR $0A41 (Clear defend bit) C2/08BB: 20 4A 0A JSR $0A4A C2/08BE: CA DEX C2/08BF: CA DEX C2/08C0: 30 03 BMI $08C5 C2/08C2: 4C 41 08 JMP $0841 C2/08C5: 60 RTS C2/08C6: A9 50 LDA #$50 C2/08C8: 20 B4 11 JSR $11B4 C2/08CB: AD 04 34 LDA $3404 C2/08CE: 30 05 BMI $08D5 C2/08D0: EC 04 34 CPX $3404 C2/08D3: D0 F0 BNE $08C5 C2/08D5: BD E4 3E LDA $3EE4,X C2/08D8: 89 C0 BIT #$C0 C2/08DA: D0 E9 BNE $08C5 (Exit if dead or stone) C2/08DC: BD F8 3E LDA $3EF8,X C2/08DF: 89 10 BIT #$10 C2/08E1: D0 E2 BNE $08C5 (Exit if stop) C2/08E3: A9 EF LDA #$EF C2/08E5: 20 92 07 JSR $0792 C2/08E8: BD B9 32 LDA $32B9,X C2/08EB: 10 D8 BPL $08C5 (Exit if you are controlled) C2/08ED: BD E5 3E LDA $3EE5,X C2/08F0: 30 D3 BMI $08C5 (Exit if asleep) C2/08F2: BD F9 3E LDA $3EF9,X C2/08F5: 89 02 BIT #$02 C2/08F7: D0 CC BNE $08C5 (Exit if life 3) C2/08F9: BD 59 33 LDA $3359,X C2/08FC: 10 C7 BPL $08C5 (Exit if seized) C2/08FE: A9 BF LDA #$BF C2/0900: 20 92 07 JSR $0792 C2/0903: BD A1 3A LDA $3AA1,X C2/0906: 10 BD BPL $08C5 (Exit if bit 7 of $3AA1 is not set) C2/0908: 29 7F AND #$7F (Clear bit 7) C2/090A: 9D A1 3A STA $3AA1,X C2/090D: BD CC 32 LDA $32CC,X C2/0910: 1A INC C2/0911: F0 B2 BEQ $08C5 (Exit if $32CC is #$FF) C2/0913: BD A1 3A LDA $3AA1,X C2/0916: 4A LSR C2/0917: 90 03 BCC $091C (Branch if bit 0 of $3AA1 is not set) C2/0919: 4C 77 4E JMP $4E77 C2/091C: 4C 66 4E JMP $4E66 C2/091F: E0 08 CPX #$08 C2/0921: B0 A2 BCS $08C5 C2/0923: BD D8 3E LDA $3ED8,X (Which character it is) C2/0926: C9 0D CMP #$0D C2/0928: F0 9B BEQ $08C5 (Exit if Umaro) C2/092A: BD 55 32 LDA $3255,X C2/092D: 10 96 BPL $08C5 C2/092F: AD 97 3A LDA $3A97 C2/0932: D0 91 BNE $08C5 C2/0934: A9 02 LDA #$02 C2/0936: 85 EE STA $EE C2/0938: EC 04 34 CPX $3404 C2/093B: D0 04 BNE $0941 C2/093D: A9 88 LDA #$88 C2/093F: 04 EE TSB $EE C2/0941: A5 EE LDA $EE C2/0943: 20 B4 11 JSR $11B4 C2/0946: BD 18 30 LDA $3018,X C2/0949: 2C 4C 2F BIT $2F4C C2/094C: D0 38 BNE $0986 C2/094E: BD 59 33 LDA $3359,X C2/0951: 3D 95 33 AND $3395,X C2/0954: 10 30 BPL $0986 (If not seized or charmed) C2/0956: F4 C2 B0 PEA $B0C2 (Sleep, Confuse, Berserk, Death, Stone, Zombie) C2/0959: F4 01 21 PEA $2101 (Dance, Hide, Rage) C2/095C: 9B TXY C2/095D: 20 64 58 JSR $5864 C2/0960: 90 24 BCC $0986 (Branch if any set) C2/0962: BD A0 3A LDA $3AA0,X C2/0965: 10 66 BPL $09CD C2/0967: BD CC 32 LDA $32CC,X C2/096A: 10 61 BPL $09CD C2/096C: BD A0 3A LDA $3AA0,X C2/096F: 09 08 ORA #$08 C2/0971: 9D A0 3A STA $3AA0,X C2/0974: 4C EF 11 JMP $11EF C2/0977: C2 20 REP #$20 C2/0979: A9 D3 LDA #$D3 C2/097B: BF 20 92 07 LDA $079220,X C2/097F: E2 20 SEP #$20 C2/0981: A9 01 LDA #$01 C2/0983: 9D 19 32 STA $3219,X C2/0986: A9 F9 LDA #$F9 C2/0988: EB XBA C2/0989: BD F9 3E LDA $3EF9,X C2/098C: 89 20 BIT #$20 C2/098E: D0 13 BNE $09A3 (Branch if Hide status) C2/0990: BD 18 30 LDA $3018,X C2/0993: 2C 4C 2F BIT $2F4C C2/0996: D0 0B BNE $09A3 C2/0998: BD A0 3A LDA $3AA0,X C2/099B: 10 06 BPL $09A3 (Branch if bit 7 of $3AA0 is not set) C2/099D: A9 79 LDA #$79 C2/099F: EB XBA C2/09A0: 20 66 4E JSR $4E66 C2/09A3: EB XBA C2/09A4: 20 92 07 JSR $0792 C2/09A7: E0 08 CPX #$08 C2/09A9: B0 22 BCS $09CD (Exit function) C2/09AB: 8A TXA C2/09AC: 4A LSR C2/09AD: 85 10 STA $10 C2/09AF: A9 03 LDA #$03 C2/09B1: 4C 11 64 JMP $6411 Set Doom Countdown counter C2/09B4: AD AF 11 LDA $11AF (Level) C2/09B7: 20 65 4B JSR $4B65 (0 to Level - 1) C2/09BA: 18 CLC C2/09BB: 6D AF 11 ADC $11AF (Add to level) C2/09BE: 85 EE STA $EE C2/09C0: 38 SEC C2/09C1: A9 3C LDA #$3C C2/09C3: E5 EE SBC $EE (Subtract from #$3B) C2/09C5: B0 01 BCS $09C8 C2/09C7: 7B TDC (Set to 0 if less than 0) C2/09C8: 69 14 ADC #$14 (Add #$14) C2/09CA: 9D 05 3B STA $3B05,X (Set countdown counter) C2/09CD: 60 RTS C2/09CE: 9E 05 3B STZ $3B05,X (Set countdown counter to 0) C2/09D1: 60 RTS Battle Time Counter function C2/09D2: 08 PHP C2/09D3: A0 20 LDY #$20 (ATB multiplier = 32 if slowed)) C2/09D5: BD F8 3E LDA $3EF8,X C2/09D8: 89 04 BIT #$04 C2/09DA: D0 08 BNE $09E4 (Branch if Slow) C2/09DC: A0 40 LDY #$40 (ATB multiplier = 64 normally) C2/09DE: 89 08 BIT #$08 C2/09E0: F0 02 BEQ $09E4 (Branch if not Haste) C2/09E2: A0 54 LDY #$54 (ATB multiplier = 84 if hasted) C2/09E4: 98 TYA C2/09E5: 9D DD 3A STA $3ADD,X (ATB multiplier) C2/09E8: 98 TYA C2/09E9: 48 PHA C2/09EA: 18 CLC C2/09EB: 4A LSR C2/09EC: 63 01 ADC $01,S C2/09EE: 83 01 STA $01,S (ATB multiplier *= 1.5) C2/09F0: BD 19 3B LDA $3B19,X (Speed) C2/09F3: 69 14 ADC #$14 (Add 20) C2/09F5: EB XBA C2/09F6: E0 08 CPX #$08 C2/09F8: 90 06 BCC $0A00 (Branch if character) C2/09FA: AD 90 3A LDA $3A90 (256 - (Battle Speed - 1) * 24) C2/09FD: 20 81 47 JSR $4781 (For monsters, multiplier *= $3A90 / 256) C2/0A00: 68 PLA C2/0A01: 20 81 47 JSR $4781 (ATB multiplier * (speed + 20)) C2/0A04: C2 20 REP #$20 (Set 16-bit A) C2/0A06: 4A LSR C2/0A07: 4A LSR C2/0A08: 4A LSR C2/0A09: 4A LSR C2/0A0A: 9D C8 3A STA $3AC8,X (Amount to add to gauge = (ATB multiplier * (speed + 20)) / 16 C2/0A0D: 28 PLP C2/0A0E: 60 RTS C2/0A0F: 20 01 03 JSR $0301 C2/0A12: BD CC 32 LDA $32CC,X C2/0A15: 10 F8 BPL $0A0F C2/0A17: AC 64 3A LDY $3A64 C2/0A1A: 8A TXA C2/0A1B: D9 20 37 CMP $3720,Y C2/0A1E: D0 05 BNE $0A25 C2/0A20: A9 FF LDA #$FF C2/0A22: 99 20 37 STA $3720,Y C2/0A25: C8 INY C2/0A26: CC 65 3A CPY $3A65 C2/0A29: 90 EF BCC $0A1A C2/0A2B: BD 19 32 LDA $3219,X C2/0A2E: D0 08 BNE $0A38 C2/0A30: DE 19 32 DEC $3219,X C2/0A33: A9 D3 LDA #$D3 C2/0A35: 20 92 07 JSR $0792 C2/0A38: E0 08 CPX #$08 C2/0A3A: B0 0D BCS $0A49 C2/0A3C: A9 2C LDA #$2C C2/0A3E: 4C 91 4E JMP $4E91 Clear defend bit C2/0A41: A9 FD LDA #$FD C2/0A43: 3D A1 3A AND $3AA1,X C2/0A46: 9D A1 3A STA $3AA1,X (Clear defend) C2/0A49: 60 RTS C2/0A4A: BD A0 3A LDA $3AA0,X C2/0A4D: 89 10 BIT #$10 C2/0A4F: D0 3F BNE $0A90 (Exit function if bit 4 of $3AA0,X is set) C2/0A51: A9 02 LDA #$02 C2/0A53: 3C E5 3E BIT $3EE5,X C2/0A56: F0 38 BEQ $0A90 (Branch if not Weak) C2/0A58: 3C 05 32 BIT $3205,X C2/0A5B: F0 33 BEQ $0A90 C2/0A5D: 5D 05 32 EOR $3205,X C2/0A60: 9D 05 32 STA $3205,X C2/0A63: BD 59 3C LDA $3C59,X C2/0A66: 4A LSR C2/0A67: 90 0B BCC $0A74 (Branch if not shell when low HP) C2/0A69: 48 PHA C2/0A6A: A9 25 LDA #$25 C2/0A6C: 85 B8 STA $B8 C2/0A6E: A9 26 LDA #$26 C2/0A70: 20 91 4E JSR $4E91 C2/0A73: 68 PLA C2/0A74: 4A LSR C2/0A75: 90 0B BCC $0A82 C2/0A77: 48 PHA C2/0A78: A9 1C LDA #$1C C2/0A7A: 85 B8 STA $B8 C2/0A7C: A9 26 LDA #$26 C2/0A7E: 20 91 4E JSR $4E91 C2/0A81: 68 PLA C2/0A82: 4A LSR C2/0A83: 90 0B BCC $0A90 C2/0A85: 48 PHA C2/0A86: A9 24 LDA #$24 C2/0A88: 85 B8 STA $B8 C2/0A8A: A9 26 LDA #$26 C2/0A8C: 20 91 4E JSR $4E91 C2/0A8F: 68 PLA C2/0A90: 60 RTS C2/0A91: A2 06 LDX #$06 C2/0A93: BD 18 30 LDA $3018,X C2/0A96: 2C 74 3A BIT $3A74 (Characters that are alive and present) C2/0A99: F0 08 BEQ $0AA3 C2/0A9B: 2C 2C 3F BIT $3F2C C2/0A9E: D0 03 BNE $0AA3 C2/0AA0: 20 0F 0A JSR $0A0F C2/0AA3: CA DEX C2/0AA4: CA DEX C2/0AA5: 10 EC BPL $0A93 C2/0AA7: 60 RTS C2/0AA8: A5 B1 LDA $B1 C2/0AAA: 4A LSR C2/0AAB: B0 0A BCS $0AB7 C2/0AAD: BD 19 32 LDA $3219,X C2/0AB0: D0 05 BNE $0AB7 C2/0AB2: A9 88 LDA #$88 C2/0AB4: 20 B4 11 JSR $11B4 C2/0AB7: DA PHX C2/0AB8: BD F9 3E LDA $3EF9,X C2/0ABB: 49 08 EOR #$08 (Toggle Morph status) C2/0ABD: 4A LSR C2/0ABE: 4A LSR C2/0ABF: 4A LSR C2/0AC0: 4A LSR C2/0AC1: 08 PHP C2/0AC2: 7B TDC C2/0AC3: 69 03 ADC #$03 C2/0AC5: 85 EE STA $EE C2/0AC7: 8A TXA C2/0AC8: EB XBA C2/0AC9: A9 06 LDA #$06 C2/0ACB: 20 81 47 JSR $4781 C2/0ACE: AA TAX C2/0ACF: A0 04 LDY #$04 C2/0AD1: BD 2E 20 LDA $202E,X C2/0AD4: C5 EE CMP $EE C2/0AD6: D0 05 BNE $0ADD C2/0AD8: 49 07 EOR #$07 C2/0ADA: 9D 2E 20 STA $202E,X C2/0ADD: E8 INX C2/0ADE: E8 INX C2/0ADF: E8 INX C2/0AE0: 88 DEY C2/0AE1: D0 EE BNE $0AD1 C2/0AE3: 28 PLP C2/0AE4: FA PLX C2/0AE5: 90 1A BCC $0B01 (Branch if not morph after toggle) C2/0AE7: 08 PHP C2/0AE8: 20 36 0B JSR $0B36 C2/0AEB: A9 FF LDA #$FF C2/0AED: 8D E2 3E STA $3EE2 C2/0AF0: 9E 04 3B STZ $3B04,X C2/0AF3: E0 08 CPX #$08 C2/0AF5: B0 03 BCS $0AFA C2/0AF7: 20 7D 52 JSR $527D C2/0AFA: C2 20 REP #$20 C2/0AFC: 9C 30 3F STZ $3F30 C2/0AFF: 28 PLP C2/0B00: 60 RTS C2/0B01: DA PHX C2/0B02: 08 PHP C2/0B03: AD E2 3E LDA $3EE2 C2/0B06: 10 2B BPL $0B33 (Exit function if bit 7 of $3EE2 not set) C2/0B08: AD BB 3E LDA $3EBB C2/0B0B: 4A LSR C2/0B0C: 4A LSR C2/0B0D: 6A ROR C2/0B0E: B0 23 BCS $0B33 (Exit function if bit 2 of $3EBB is set) C2/0B10: 0A ASL C2/0B11: 8E E2 3E STX $3EE2 C2/0B14: 7B TDC C2/0B15: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0B17: 3A DEC C2/0B18: 8D 30 3F STA $3F30 (Morph time counter) C2/0B1B: AE F6 1C LDX $1CF6 (Morph length counter) C2/0B1E: 20 92 47 JSR $4792 C2/0B21: 90 01 BCC $0B24 (Branch if bit 1 of $3EBB not set) C2/0B23: 4A LSR C2/0B24: 4A LSR C2/0B25: 4A LSR C2/0B26: 4A LSR C2/0B27: C9 00 08 CMP #$0800 C2/0B2A: 90 03 BCC $0B2F C2/0B2C: A9 FF 07 LDA #$07FF C2/0B2F: 1A INC C2/0B30: 8D 32 3F STA $3F32 (Amount to decrement morph time counter) C2/0B33: 28 PLP C2/0B34: FA PLX C2/0B35: 60 RTS C2/0B36: AD E2 3E LDA $3EE2 C2/0B39: 30 0E BMI $0B49 C2/0B3B: AD F6 1C LDA $1CF6 C2/0B3E: EB XBA C2/0B3F: AD 31 3F LDA $3F31 C2/0B42: 20 81 47 JSR $4781 C2/0B45: EB XBA C2/0B46: 8D F6 1C STA $1CF6 C2/0B49: 60 RTS C2/0B4A: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0B4C: BD 18 30 LDA $3018,X C2/0B4F: 0C 2C 3F TSB $3F2C C2/0B52: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/0B54: BD A0 3A LDA $3AA0,X C2/0B57: 29 9B AND #$9B C2/0B59: 09 08 ORA #$08 C2/0B5B: 9D A0 3A STA $3AA0,X C2/0B5E: AC 66 3A LDY $3A66 C2/0B61: 8A TXA C2/0B62: D9 20 38 CMP $3820,Y C2/0B65: D0 05 BNE $0B6C C2/0B67: A9 FF LDA #$FF C2/0B69: 99 20 38 STA $3820,Y C2/0B6C: C8 INY C2/0B6D: CC 67 3A CPY $3A67 C2/0B70: 90 EF BCC $0B61 C2/0B72: BD 05 32 LDA $3205,X C2/0B75: 29 7F AND #$7F C2/0B77: 9D 05 32 STA $3205,X C2/0B7A: 9E B5 3A STZ $3AB5,X C2/0B7D: A9 E0 LDA #$E0 C2/0B7F: 9D 2C 32 STA $322C,X C2/0B82: 60 RTS Modify Damage, Heal Undead, and Elemental modification C2/0B83: 08 PHP C2/0B84: E2 20 SEP #$20 C2/0B86: AD A6 11 LDA $11A6 (Battle Power) C2/0B89: D0 03 BNE $0B8E (Branch if not 0) C2/0B8B: 4C 2B 0C JMP $0C2B (Exit function if Battle Power is 0) C2/0B8E: AD A4 11 LDA $11A4 (Special Byte 2) C2/0B91: 30 05 BMI $0B98 (Branch if power = factor of HP) C2/0B93: 20 9E 0C JSR $0C9E (Damage modification) C2/0B96: 80 03 BRA $0B9B C2/0B98: 20 87 0D JSR $0D87 (Figure HP based damage) C2/0B9B: 64 F2 STZ $F2 C2/0B9D: B9 E4 3E LDA $3EE4,Y (Status byte 1 of target) C2/0BA0: 0A ASL C2/0BA1: 30 57 BMI $0BFA (Branch if target is Stone, damage = 0) C2/0BA3: AD A4 11 LDA $11A4 C2/0BA6: 85 F2 STA $F2 (Store special byte 2 in $F2) C2/0BA8: AD A2 11 LDA $11A2 C2/0BAB: 89 08 BIT #$08 C2/0BAD: F0 24 BEQ $0BD3 (Branch if not heal undead) C2/0BAF: B9 95 3C LDA $3C95,Y C2/0BB2: 10 0B BPL $0BBF (If not undead) C2/0BB4: AD AA 11 LDA $11AA C2/0BB7: 89 82 BIT #$82 (Check if dead or zombie attack) C2/0BB9: D0 70 BNE $0C2B (Exit if ^) C2/0BBB: 64 F2 STZ $F2 (Clear heal) C2/0BBD: 80 07 BRA $0BC6 C2/0BBF: B9 E4 3E LDA $3EE4,Y C2/0BC2: 89 02 BIT #$02 (Check for Zombie status) C2/0BC4: F0 0D BEQ $0BD3 (Branch if not zombie) C2/0BC6: AD A4 11 LDA $11A4 C2/0BC9: 89 02 BIT #$02 C2/0BCB: F0 06 BEQ $0BD3 (Branch if not redirection) C2/0BCD: A5 F2 LDA $F2 C2/0BCF: 49 01 EOR #$01 C2/0BD1: 85 F2 STA $F2 (Toggle heal status) C2/0BD3: AD A1 11 LDA $11A1 C2/0BD6: F0 46 BEQ $0C1E (Branch if non-elemental) C2/0BD8: AD C8 3E LDA $3EC8 (Forcefield nullified elements) C2/0BDB: 49 FF EOR #$FF C2/0BDD: 2D A1 11 AND $11A1 C2/0BE0: F0 18 BEQ $0BFA (Set damage to 0 if element nullified) C2/0BE2: B9 CC 3B LDA $3BCC,Y (Absorbed elements) C2/0BE5: 2C A1 11 BIT $11A1 C2/0BE8: F0 08 BEQ $0BF2 C2/0BEA: A5 F2 LDA $F2 C2/0BEC: 49 01 EOR #$01 (Toggle heal) C2/0BEE: 85 F2 STA $F2 C2/0BF0: 80 2C BRA $0C1E C2/0BF2: B9 CD 3B LDA $3BCD,Y (Nullified elements) C2/0BF5: 2C A1 11 BIT $11A1 C2/0BF8: F0 06 BEQ $0C00 C2/0BFA: 64 F0 STZ $F0 C2/0BFC: 64 F1 STZ $F1 (Set damage to 0) C2/0BFE: 80 1E BRA $0C1E C2/0C00: B9 E1 3B LDA $3BE1,Y (Elements cut in half) C2/0C03: 2C A1 11 BIT $11A1 C2/0C06: F0 06 BEQ $0C0E C2/0C08: 46 F1 LSR $F1 C2/0C0A: 66 F0 ROR $F0 (Cut damage in half) C2/0C0C: 80 10 BRA $0C1E C2/0C0E: B9 E0 3B LDA $3BE0,Y (Weak elements) C2/0C11: 2C A1 11 BIT $11A1 C2/0C14: F0 08 BEQ $0C1E C2/0C16: A5 F1 LDA $F1 C2/0C18: 30 04 BMI $0C1E (Don't double if over 32768) C2/0C1A: 06 F0 ASL $F0 C2/0C1C: 26 F1 ROL $F1 (Double damage) C2/0C1E: AD A9 11 LDA $11A9 C2/0C21: C9 04 CMP #$04 C2/0C23: D0 03 BNE $0C28 (If not Atma weapon) C2/0C25: 20 39 0E JSR $0E39 (Atma weapon damage modification) C2/0C28: 20 2D 0C JSR $0C2D C2/0C2B: 28 PLP C2/0C2C: 60 RTS C2/0C2D: AD A2 11 LDA $11A2 C2/0C30: 4A LSR C2/0C31: 90 2A BCC $0C5D (Branch if not physical damage) C2/0C33: AD 82 3A LDA $3A82 C2/0C36: 2D 83 3A AND $3A83 C2/0C39: 10 22 BPL $0C5D (Branch if blocked by Golem or dog) C2/0C3B: BD E4 3E LDA $3EE4,X C2/0C3E: 89 02 BIT #$02 (Check for Zombie Status) C2/0C40: F0 03 BEQ $0C45 (Branch if no zombie) C2/0C42: 20 21 0E JSR $0E21 (Poison / Zombie status for zombies) C2/0C45: AD AB 11 LDA $11AB (Status set by attack 2) C2/0C48: 49 A0 EOR #$A0 (Sleep & Confuse) C2/0C4A: 29 A0 AND #$A0 C2/0C4C: 39 E5 3E AND $3EE5,Y (Status byte 2) C2/0C4F: 19 FD 3D ORA $3DFD,Y C2/0C52: 99 FD 3D STA $3DFD,Y (Clear Sleep & Confuse) C2/0C55: B9 B9 32 LDA $32B9,Y C2/0C58: 09 80 ORA #$80 C2/0C5A: 99 B9 32 STA $32B9,Y (Set to no target controlling you) C2/0C5D: AD A4 11 LDA $11A4 C2/0C60: 89 02 BIT #$02 C2/0C62: F0 11 BEQ $0C75 (Branch if not redirection) C2/0C64: 20 ED 0D JSR $0DED C2/0C67: DA PHX C2/0C68: 5A PHY C2/0C69: 5A PHY C2/0C6A: 9B TXY C2/0C6B: FA PLX C2/0C6C: 20 2F 36 JSR $362F C2/0C6F: 38 SEC C2/0C70: 20 76 0C JSR $0C76 C2/0C73: 7A PLY C2/0C74: FA PLX C2/0C75: 18 CLC C2/0C76: 5A PHY C2/0C77: 08 PHP C2/0C78: 2A ROL C2/0C79: 45 F2 EOR $F2 C2/0C7B: 4A LSR C2/0C7C: 90 04 BCC $0C82 C2/0C7E: 98 TYA C2/0C7F: 69 13 ADC #$13 C2/0C81: A8 TAY C2/0C82: C2 20 REP #$20 C2/0C84: B9 D0 33 LDA $33D0,Y (Damage Taken) C2/0C87: 1A INC C2/0C88: F0 01 BEQ $0C8B C2/0C8A: 3A DEC C2/0C8B: 18 CLC C2/0C8C: 65 F0 ADC $F0 C2/0C8E: B0 05 BCS $0C95 C2/0C90: C9 10 27 CMP #$2710 (If over 9999) C2/0C93: 90 03 BCC $0C98 C2/0C95: A9 0F 27 LDA #$270F (Truncate Damage to 9999) C2/0C98: 99 D0 33 STA $33D0,Y (Damage Taken) C2/0C9B: 28 PLP C2/0C9C: 7A PLY C2/0C9D: 60 RTS Damage modification (Randomness, Row, Self Damage, and more) C2/0C9E: 08 PHP C2/0C9F: C2 20 REP #$20 C2/0CA1: AD B0 11 LDA $11B0 (Maximum Damage) C2/0CA4: 85 F0 STA $F0 C2/0CA6: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/0CA8: AD 14 34 LDA $3414 C2/0CAB: D0 03 BNE $0CB0 C2/0CAD: 4C 3B 0D JMP $0D3B (Exit if $3414 = 0) C2/0CB0: 20 5A 4B JSR $4B5A (Random number 0 to 255) C2/0CB3: 09 E0 ORA #$E0 (Set bits 7,6,5, bits 0,1,2,3,4 are random)) C2/0CB5: 85 E8 STA $E8 (Random number [224..255]) C2/0CB7: 20 3D 0D JSR $0D3D (Damage randomness) C2/0CBA: 18 CLC C2/0CBB: AD A3 11 LDA $11A3 C2/0CBE: 30 04 BMI $0CC4 (Branch if Concern MP) C2/0CC0: AD A2 11 LDA $11A2 C2/0CC3: 4A LSR C2/0CC4: AD A2 11 LDA $11A2 C2/0CC7: 89 20 BIT #$20 C2/0CC9: D0 57 BNE $0D22 (Branch if ignores defense) C2/0CCB: 08 PHP C2/0CCC: B9 B9 3B LDA $3BB9,Y (Magic Defense) C2/0CCF: 90 03 BCC $0CD4 (Branch if concern MP or Magical damage) C2/0CD1: B9 B8 3B LDA $3BB8,Y (Defense) C2/0CD4: 1A INC C2/0CD5: F0 10 BEQ $0CE7 (If = 255) C2/0CD7: EB XBA C2/0CD8: AD 82 3A LDA $3A82 C2/0CDB: 2D 83 3A AND $3A83 C2/0CDE: 30 03 BMI $0CE3 (If Blocked by Golem or Dog, defense = 192) C2/0CE0: A9 C1 LDA #$C1 C2/0CE2: EB XBA C2/0CE3: EB XBA C2/0CE4: 3A DEC C2/0CE5: 49 FF EOR #$FF C2/0CE7: 85 E8 STA $E8 C2/0CE9: 20 3D 0D JSR $0D3D (Multiply damage by 255 - Defense / 256) C2/0CEC: A3 01 LDA $01,S C2/0CEE: 4A LSR C2/0CEF: B9 F8 3E LDA $3EF8,Y (Status byte 3) C2/0CF2: B0 01 BCS $0CF5 (Branch if physical attack) C2/0CF4: 0A ASL C2/0CF5: 0A ASL C2/0CF6: 10 07 BPL $0CFF (Branch if no safe / shell) C2/0CF8: A9 AA LDA #$AA C2/0CFA: 85 E8 STA $E8 C2/0CFC: 20 3D 0D JSR $0D3D (Multiply damage by 170 / 256) (roughly 2/3) C2/0CFF: 28 PLP C2/0D00: 90 15 BCC $0D17 (Skip row check if magical attack) C2/0D02: B9 A1 3A LDA $3AA1,Y C2/0D05: 89 02 BIT #$02 C2/0D07: F0 04 BEQ $0D0D (Branch if not defending) C2/0D09: 46 F1 LSR $F1 C2/0D0B: 66 F0 ROR $F0 (Cut damage in half) C2/0D0D: 89 20 BIT #$20 (Check row) C2/0D0F: F0 11 BEQ $0D22 (Branch if target in front row) C2/0D11: 46 F1 LSR $F1 C2/0D13: 66 F0 ROR $F0 (Cut damage in half) C2/0D15: 80 0B BRA $0D22 (Skip morph if physical attack) C2/0D17: B9 F9 3E LDA $3EF9,Y C2/0D1A: 89 08 BIT #$08 C2/0D1C: F0 04 BEQ $0D22 (Branch if not morph) C2/0D1E: 46 F1 LSR $F1 C2/0D20: 66 F0 ROR $F0 (Cut damage in half) C2/0D22: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0D24: AD A4 11 LDA $11A4 C2/0D27: 4A LSR C2/0D28: B0 0A BCS $0D34 (Branch if heal, heal skips self damage) C2/0D2A: C0 08 CPY #$08 C2/0D2C: B0 06 BCS $0D34 (Branch if target is a monster) C2/0D2E: E0 08 CPX #$08 C2/0D30: B0 02 BCS $0D34 (Branch if attacker is monster) C2/0D32: 46 F0 LSR $F0 (Cut damage in half if party attacks party) C2/0D34: A5 F0 LDA $F0 C2/0D36: 20 0B 37 JSR $370B (Increment damage using $BC) C2/0D39: 85 F0 STA $F0 C2/0D3B: 28 PLP C2/0D3C: 60 RTS Multiplies damage by $E8 / 256 and adds 1 (Used by damage randomness etc.) C2/0D3D: 08 PHP C2/0D3E: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0D40: A5 F0 LDA $F0 (Load damage) C2/0D42: 20 B7 47 JSR $47B7 (Multiply by randomness byte) C2/0D45: 1A INC (Add 1 to damage) C2/0D46: 85 F0 STA $F0 C2/0D48: 28 PLP C2/0D49: 60 RTS Atlas Armlet / Earring Function C2/0D4A: 08 PHP C2/0D4B: AD A4 11 LDA $11A4 (s Byte 2) C2/0D4E: 4A LSR C2/0D4F: B0 34 BCS $0D85 (Exits function if attack heals) C2/0D51: AD A3 11 LDA $11A3 C2/0D54: 30 04 BMI $0D5A (Branch if concern MP) C2/0D56: AD A2 11 LDA $11A2 (Special Byte 1) C2/0D59: 4A LSR (Check for physical / magic) C2/0D5A: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0D5C: AD B0 11 LDA $11B0 (Max Damage) C2/0D5F: 85 EE STA $EE (Stores damage at $EE) C2/0D61: BD 44 3C LDA $3C44,X (Relic effects) C2/0D64: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/0D66: B0 06 BCS $0D6E (Branch if physical damage unless concerns mp) C2/0D68: 89 02 BIT #$02 C2/0D6A: D0 09 BNE $0D75 (Branch double earrings - add 50% damage) C2/0D6C: EB XBA C2/0D6D: 4A LSR C2/0D6E: 4A LSR C2/0D6F: 90 14 BCC $0D85 (Exits function if not Atlas Armlet / Earring) C2/0D71: 46 EF LSR $EF (Halves damage) C2/0D73: 66 EE ROR $EE C2/0D75: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0D77: A5 EE LDA $EE C2/0D79: 4A LSR (Halves damage) C2/0D7A: 18 CLC C2/0D7B: 6D B0 11 ADC $11B0 (Adds to damage) C2/0D7E: 90 02 BCC $0D82 C2/0D80: 7B TDC C2/0D81: 3A DEC C2/0D82: 8D B0 11 STA $11B0 (Stores result back in damage) C2/0D85: 28 PLP C2/0D86: 60 RTS Figure damage if based on HP C2/0D87: DA PHX C2/0D88: 5A PHY C2/0D89: 08 PHP C2/0D8A: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0D8C: B9 D0 33 LDA $33D0,Y (Damage Taken) C2/0D8F: 1A INC C2/0D90: F0 01 BEQ $0D93 (If damage taken is none set to 0) C2/0D92: 3A DEC C2/0D93: 85 EE STA $EE C2/0D95: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/0D97: 20 DD 0D JSR $0DDD (Use MP if concerns MP) C2/0D9A: AD A6 11 LDA $11A6 (Spell Power) C2/0D9D: 85 E8 STA $E8 C2/0D9F: A5 B5 LDA $B5 C2/0DA1: C9 01 CMP #$01 C2/0DA3: F0 06 BEQ $0DAB (if command = item, then always use Max HP) C2/0DA5: AD A2 11 LDA $11A2 C2/0DA8: 4A LSR C2/0DA9: 4A LSR C2/0DAA: 4A LSR C2/0DAB: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0DAD: B0 0B BCS $0DBA (If Target only dead allies, then use Max HP) C2/0DAF: 38 SEC (Else use current HP) C2/0DB0: B9 F4 3B LDA $3BF4,Y (HP) C2/0DB3: E5 EE SBC $EE (Subtract damage taken) C2/0DB5: B0 06 BCS $0DBD C2/0DB7: 7B TDC C2/0DB8: 80 03 BRA $0DBD C2/0DBA: B9 1C 3C LDA $3C1C,Y (Max HP) C2/0DBD: 20 CB 0D JSR $0DCB C2/0DC0: 48 PHA C2/0DC1: 68 PLA C2/0DC2: D0 01 BNE $0DC5 C2/0DC4: 1A INC C2/0DC5: 85 F0 STA $F0 C2/0DC7: 28 PLP C2/0DC8: 7A PLY C2/0DC9: FA PLX C2/0DCA: 60 RTS Spell Power * HP / 16 C2/0DCB: 20 B7 47 JSR $47B7 C2/0DCE: A9 03 LDA #$0003 C2/0DD1: DA PHX C2/0DD2: AA TAX C2/0DD3: A5 E8 LDA $E8 (Spell Power * HP) C2/0DD5: 46 EA LSR $EA (Cut in half) C2/0DD7: 6A ROR C2/0DD8: CA DEX C2/0DD9: 10 FA BPL $0DD5 (Do 4 times) C2/0DDB: FA PLX C2/0DDC: 60 RTS Make damage affect MP if concerns MP C2/0DDD: AD A3 11 LDA $11A3 C2/0DE0: 10 0A BPL $0DEC (Branch if not Concern MP) C2/0DE2: 98 TYA C2/0DE3: 18 CLC C2/0DE4: 69 14 ADC #$14 C2/0DE6: A8 TAY C2/0DE7: 8A TXA C2/0DE8: 18 CLC C2/0DE9: 69 14 ADC #$14 C2/0DEB: AA TAX C2/0DEC: 60 RTS Set $F0 to lowest of ($F0, HP of target, Max HP - HP of attacker) If bit 7 of $F2 is not set switch attacker and target If bit 7 of $B1 is not set compare only $F0 and HP of target C2/0DED: DA PHX C2/0DEE: 5A PHY C2/0DEF: 08 PHP C2/0DF0: 20 DD 0D JSR $0DDD (Set to use MP if concern MP) C2/0DF3: AD 14 34 LDA $3414 C2/0DF6: 10 25 BPL $0E1D (Exit if bit 7 $3414 is 0) C2/0DF8: C2 20 REP #$20 C2/0DFA: A5 F2 LDA $F2 C2/0DFC: 4A LSR C2/0DFD: 90 03 BCC $0E02 C2/0DFF: DA PHX C2/0E00: BB TYX C2/0E01: 7A PLY (Switch target and attacker) C2/0E02: B9 F4 3B LDA $3BF4,Y (HP of target) C2/0E05: C5 F0 CMP $F0 C2/0E07: B0 02 BCS $0E0B (If HP >= $F0) C2/0E09: 85 F0 STA $F0 C2/0E0B: A5 B1 LDA $B1 C2/0E0D: 10 0E BPL $0E1D C2/0E0F: 9B TXY (Make attacker the target) C2/0E10: 38 SEC C2/0E11: B9 1C 3C LDA $3C1C,Y (Max HP of target) C2/0E14: F9 F4 3B SBC $3BF4,Y (HP of target) C2/0E17: C5 F0 CMP $F0 C2/0E19: B0 02 BCS $0E1D (If >= $F0) C2/0E1B: 85 F0 STA $F0 C2/0E1D: 28 PLP C2/0E1E: 7A PLY C2/0E1F: FA PLX C2/0E20: 60 RTS Called if zombie 1 in 16 chance inflict blind 1 in 16 chance inflict poison C2/0E21: 20 5A 4B JSR $4B5A (Random number 0 to 255) C2/0E24: C9 10 CMP #$10 C2/0E26: B0 04 BCS $0E2C C2/0E28: A9 04 LDA #$04 C2/0E2A: 80 06 BRA $0E32 C2/0E2C: C9 20 CMP #$20 C2/0E2E: B0 F0 BCS $0E20 (Exit function) C2/0E30: A9 01 LDA #$01 C2/0E32: 19 D4 3D ORA $3DD4,Y (Status to set byte 1) C2/0E35: 99 D4 3D STA $3DD4,Y C2/0E38: 60 RTS Atma Weapon Damage C2/0E39: 08 PHP C2/0E3A: DA PHX C2/0E3B: 5A PHY C2/0E3C: 9B TXY C2/0E3D: B9 F5 3B LDA $3BF5,Y (HP / 256) C2/0E40: 1A INC ((HP / 256) + 1)) C2/0E41: EB XBA C2/0E42: B9 18 3B LDA $3B18,Y (Level) C2/0E45: 20 81 47 JSR $4781 (Level * ((HP / 256) + 1)) C2/0E48: BE 1D 3C LDX $3C1D,Y (Max HP / 256) C2/0E4B: E8 INX ((Max HP / 256) + 1)) C2/0E4C: 20 92 47 JSR $4792 ((Level * ((HP / 256) + 1)) / ((Max HP / 256) + 1)) C2/0E4F: 85 E8 STA $E8 C2/0E51: C2 20 REP #$20 (Set 16-bit A) C2/0E53: A5 F0 LDA $F0 C2/0E55: 20 B7 47 JSR $47B7 ($E8 * damage) C2/0E58: A9 05 00 LDA #$0005 C2/0E5B: 20 D1 0D JSR $0DD1 (Final Damage / 64) C2/0E5E: 1A INC (+1) C2/0E5F: 85 F0 STA $F0 C2/0E61: C9 F5 01 CMP #$01F5 (501) C2/0E64: 90 0D BCC $0E73 C2/0E66: A2 5B LDX #$5B C2/0E68: C9 E9 03 CMP #$03E9 (1001) C2/0E6B: 90 01 BCC $0E6E C2/0E6D: E8 INX C2/0E6E: 86 B7 STX $B7 C2/0E70: 20 BB 35 JSR $35BB C2/0E73: 7A PLY C2/0E74: FA PLX C2/0E75: 28 PLP C2/0E76: 60 RTS ??? Function (Called from other bank) C2/0E77: DA PHX C2/0E78: 5A PHY C2/0E79: 8B PHB C2/0E7A: 08 PHP C2/0E7B: E2 30 SEP #$30 C2/0E7D: 48 PHA C2/0E7E: 29 0F AND #$0F C2/0E80: A9 7E LDA #$7E C2/0E82: 48 PHA C2/0E83: AB PLB C2/0E84: 68 PLA C2/0E85: A2 3E LDX #$3E C2/0E87: 9E A0 11 STZ $11A0,X C2/0E8A: CA DEX C2/0E8B: 10 FA BPL $0E87 C2/0E8D: 1A INC C2/0E8E: EB XBA C2/0E8F: A9 25 LDA #$25 C2/0E91: 20 81 47 JSR $4781 C2/0E94: C2 10 REP #$10 C2/0E96: AA TAX C2/0E97: BD DB 15 LDA $15DB,X C2/0E9A: EB XBA C2/0E9B: A9 16 LDA #$16 C2/0E9D: 20 81 47 JSR $4781 C2/0EA0: DA PHX C2/0EA1: AA TAX C2/0EA2: BF AA 7C ED LDA $ED7CAA,X C2/0EA6: 8D AC 11 STA $11AC C2/0EA9: 8D AD 11 STA $11AD C2/0EAC: C2 20 REP #$20 C2/0EAE: BF AB 7C ED LDA $ED7CAB,X C2/0EB2: 8D BA 11 STA $11BA C2/0EB5: BF AD 7C ED LDA $ED7CAD,X C2/0EB9: E2 20 SEP #$20 C2/0EBB: 8D A8 11 STA $11A8 C2/0EBE: EB XBA C2/0EBF: 8D AA 11 STA $11AA C2/0EC2: BF B5 7C ED LDA $ED7CB5,X ("Lev. Factor") C2/0EC6: 29 03 AND #$03 C2/0EC8: 49 03 EOR #$03 C2/0ECA: 1A INC C2/0ECB: 1A INC C2/0ECC: 8D DC 11 STA $11DC C2/0ECF: FA PLX C2/0ED0: A0 06 00 LDY #$0006 C2/0ED3: BD F5 15 LDA $15F5,X C2/0ED4: F5 15 SBC $15,X C2/0ED6: 99 A0 11 STA $11A0,Y C2/0ED9: E8 INX C2/0EDA: 88 DEY C2/0EDB: 88 DEY C2/0EDC: 10 F5 BPL $0ED3 C2/0EDE: BD EB 15 LDA $15EB,X C2/0EE1: 85 FE STA $FE C2/0EE3: A0 05 00 LDY #$0005 C2/0EE6: BD FB 15 LDA $15FB,X C2/0EE8: 99 C6 11 STA $11C6,Y C2/0EEC: 20 9A 0F JSR $0F9A C2/0EEF: CA DEX C2/0EF0: 88 DEY C2/0EF1: 10 F3 BPL $0EE6 C2/0EF3: BD ED 15 LDA $15ED,X C2/0EF6: 29 3F AND #$3F C2/0EF8: 85 FF STA $FF C2/0EFA: A9 40 LDA #$40 C2/0EFC: 20 7D 0F JSR $0F7D C2/0EFF: 05 FF ORA $FF C2/0F01: 9D ED 15 STA $15ED,X C2/0F04: BD E9 15 LDA $15E9,X C2/0F07: 29 3F AND #$3F C2/0F09: 85 FF STA $FF C2/0F0B: A9 08 LDA #$08 C2/0F0D: 20 7D 0F JSR $0F7D C2/0F10: 05 FF ORA $FF C2/0F12: 9D E9 15 STA $15E9,X C2/0F15: A2 0A 00 LDX #$000A C2/0F18: BD A1 11 LDA $11A1,X C2/0F1B: F0 09 BEQ $0F26 C2/0F1D: 0A ASL C2/0F1E: 7B TDC C2/0F1F: B0 02 BCS $0F23 C2/0F21: A9 FF LDA #$FF C2/0F23: 9D A0 11 STA $11A0,X C2/0F26: CA DEX C2/0F27: CA DEX C2/0F28: 10 EE BPL $0F18 C2/0F2A: AE CE 11 LDX $11CE C2/0F2D: FC 47 0F JSR ($0F47,X) C2/0F30: AD D7 11 LDA $11D7 C2/0F33: 10 0D BPL $0F42 C2/0F35: C2 20 REP #$20 (Set 16-bit Accumulator) C2/0F37: AD A6 11 LDA $11A6 C2/0F3A: 4A LSR C2/0F3B: 18 CLC C2/0F3C: 6D A6 11 ADC $11A6 C2/0F3F: 8D A6 11 STA $11A6 C2/0F42: 28 PLP C2/0F43: AB PLB C2/0F44: 7A PLY C2/0F45: FA PLX C2/0F46: 6B RTL Code Pointers C2/0F47: 67 0F (Do nothing) C2/0F49: 61 0F C2/0F4B: 68 0F C2/0F4D: 6F 0F C2/0F4F: 61 0F C2/0F51: 67 0F (Do nothing) C2/0F53: 6B 0F C2/0F55: 67 0F (Do nothing) C2/0F57: 68 0F C2/0F59: 64 0F C2/0F5B: 67 0F (Do nothing) C2/0F5D: 67 0F (Do nothing) C2/0F5F: 68 0F C2/0F61: 20 74 0F JSR $0F74 C2/0F64: 9C AC 11 STZ $11AC C2/0F67: 60 RTS C2/0F68: 20 74 0F JSR $0F74 C2/0F6B: 9C AD 11 STZ $11AD C2/0F6E: 60 RTS C2/0F6F: A9 10 LDA #$10 (Genji Glove Effect) C2/0F71: 0C CF 11 TSB $11CF (Sets Genji Glove effect to be cleared) C2/0F74: A9 40 LDA #$40 C2/0F76: 1C DA 11 TRB $11DA C2/0F79: 1C DB 11 TRB $11DB C2/0F7C: 60 RTS C2/0F7D: 2C D5 11 BIT $11D5 C2/0F80: F0 03 BEQ $0F85 C2/0F82: A9 80 LDA #$80 C2/0F84: 60 RTS C2/0F85: 4A LSR C2/0F86: 2C D5 11 BIT $11D5 C2/0F89: F0 03 BEQ $0F8E C2/0F8B: A9 40 LDA #$40 C2/0F8D: 60 RTS C2/0F8E: 0A ASL C2/0F8F: 0A ASL C2/0F90: 2C D5 11 BIT $11D5 C2/0F93: F0 03 BEQ $0F98 C2/0F95: A9 C0 LDA #$C0 C2/0F97: 60 RTS C2/0F98: 7B TDC C2/0F99: 60 RTS Loads item data into memory C2/0F9A: DA PHX C2/0F9B: 5A PHY C2/0F9C: EB XBA C2/0F9D: A9 1E LDA #$1E C2/0F9F: 20 81 47 JSR $4781 (Multiply index by size of item data block) C2/0FA2: AA TAX C2/0FA3: BF 05 50 D8 LDA $D85005,X C2/0FA7: 0C DF 11 TSB $11DF C2/0FAA: C2 20 REP #$20 C2/0FAC: BF 06 50 D8 LDA $D85006,X C2/0FB0: 0C D2 11 TSB $11D2 C2/0FB3: BF 08 50 D8 LDA $D85008,X C2/0FB7: 0C D4 11 TSB $11D4 (Equipment status byte 3) C2/0FBA: BF 0A 50 D8 LDA $D8500A,X C2/0FBE: 0C D6 11 TSB $11D6 C2/0FC1: BF 0C 50 D8 LDA $D8500C,X C2/0FC5: 0C D8 11 TSB $11D8 C2/0FC8: BF 10 50 D8 LDA $D85010,X C2/0FCC: A0 06 00 LDY #$0006 C2/0FCF: 48 PHA C2/0FD0: 29 0F AND #$000F C2/0FD3: 89 08 00 BIT #$0008 C2/0FD6: F0 04 BEQ $0FDB C2/0FD8: 49 F7 FF EOR #$FFF7 C2/0FDB: 1A INC C2/0FDC: 18 CLC C2/0FDD: 79 A0 11 ADC $11A0,Y C2/0FE0: 99 A0 11 STA $11A0,Y C2/0FE3: 68 PLA C2/0FE4: 4A LSR C2/0FE5: 4A LSR C2/0FE6: 4A LSR C2/0FE7: 4A LSR C2/0FE8: 88 DEY C2/0FE9: 88 DEY C2/0FEA: 10 E3 BPL $0FCF C2/0FEC: BF 1A 50 D8 LDA $D8501A,X C2/0FF0: DA PHX C2/0FF1: 48 PHA C2/0FF2: 29 0F 00 AND #$000F C2/0FF5: 0A ASL C2/0FF6: AA TAX C2/0FF7: BF 05 11 C2 LDA $C21105,X C2/0FFB: 18 CLC C2/0FFC: 6D A8 11 ADC $11A8 C2/0FFF: 8D A8 11 STA $11A8 C2/1002: 68 PLA C2/1003: 29 F0 00 AND #$00F0 C2/1006: 4A LSR C2/1007: 4A LSR C2/1008: 4A LSR C2/1009: AA TAX C2/100A: BF 05 11 C2 LDA $C21105,X C2/100E: 18 CLC C2/100F: 6D AA 11 ADC $11AA C2/1012: 8D AA 11 STA $11AA C2/1015: FA PLX C2/1016: E2 20 SEP #$20 C2/1018: BF 14 50 D8 LDA $D85014,X C2/101C: EB XBA C2/101D: BF 02 50 D8 LDA $D85002,X C2/1021: 0A ASL C2/1022: 0A ASL C2/1023: A5 FE LDA $FE C2/1025: B0 02 BCS $1029 C2/1027: 49 20 EOR #$20 C2/1029: 89 20 BIT #$20 C2/102B: D0 03 BNE $1030 C2/102D: A9 01 LDA #$01 C2/102F: EB XBA C2/1030: EB XBA C2/1031: 85 FD STA $FD C2/1033: BF 00 50 D8 LDA $D85000,X (Item type) C2/1037: 29 07 AND #$07 (Isolate classification) C2/1039: 3A DEC C2/103A: F0 76 BEQ $10B2 (if it's a weapon, branch) C2/103C: BF 19 50 D8 LDA $D85019,X C2/1040: 0C BC 11 TSB $11BC (Equipment status byte 2) C2/1043: BF 0F 50 D8 LDA $D8500F,X C2/1047: EB XBA C2/1048: BF 18 50 D8 LDA $D85018,X C2/104C: C2 20 REP #$20 C2/104E: 0C B8 11 TSB $11B8 C2/1051: BF 16 50 D8 LDA $D85016,X C2/1055: 0C B6 11 TSB $11B6 C2/1058: E2 20 SEP #$20 C2/105A: 18 CLC C2/105B: A5 FD LDA $FD C2/105D: 6D BA 11 ADC $11BA C2/1060: 90 02 BCC $1064 C2/1062: A9 FF LDA #$FF C2/1064: 8D BA 11 STA $11BA C2/1067: 18 CLC C2/1068: BF 15 50 D8 LDA $D85015,X C2/106C: 6D BB 11 ADC $11BB C2/106F: 90 02 BCC $1073 C2/1071: A9 FF LDA #$FF C2/1073: 8D BB 11 STA $11BB C2/1076: 7A PLY C2/1077: A9 02 LDA #$02 C2/1079: 1C D5 11 TRB $11D5 C2/107C: F0 08 BEQ $1086 C2/107E: 0C D7 11 TSB $11D7 C2/1081: F0 03 BEQ $1086 C2/1083: 0C D5 11 TSB $11D5 C2/1086: 7B TDC C2/1087: BF 1B 50 D8 LDA $D8501B,X (Item byte 1B, special action) C2/108B: 99 BE 11 STA $11BE,Y C2/108E: 89 0C BIT #$0C (Shield animation for blocked physical/magic attacks or weapon parry?) C2/1090: F0 1E BEQ $10B0 (if none of above, branch) C2/1092: 48 PHA (save old Byte 1B) C2/1093: 29 03 AND #$03 (isolate bottom 2 bits. for a given item: bit 0 = big weapon parry anim. bit 1 = "any" shield block, all except cursed shld. both = zephyr cape. neither = small weapon parry bit 2 = physical shield block, or weapon parry bit 3 = magical shield block. shields only? ) C2/1095: AA TAX (Put Acc in X. Following loop gives us 2^X) C2/1096: 7B TDC (Clear Acc) C2/1097: 38 SEC (Set carry flag) C2/1098: 2A ROL (Rotate carry into lowest bit of Acc) C2/1099: CA DEX (Decrement X, which was 0-3) C2/109A: 10 FC BPL $1098 (Loop if X>=0) C2/109C: EB XBA C2/109D: 68 PLA (Retrieve item byte 1B) C2/109E: 89 04 BIT #$04 C2/10A0: F0 05 BEQ $10A7 (Branch if physical shield or weapon parry not set) C2/10A2: EB XBA C2/10A3: 0C D0 11 TSB $11D0 (If one of above was set, store our 2^X value) C2/10A6: EB XBA C2/10A7: 89 08 BIT #$08 C2/10A9: F0 05 BEQ $10B0 (If no magic attack block for shield, branch) C2/10AB: EB XBA C2/10AC: 0C D1 11 TSB $11D1 (If there was, store our 2^X value) C2/10AF: EB XBA C2/10B0: FA PLX C2/10B1: 60 RTS C2/10B2: 7B TDC C2/10B3: 1A INC C2/10B4: A8 TAY C2/10B5: 1A INC C2/10B6: 85 FF STA $FF C2/10B8: A3 01 LDA $01,S C2/10BA: C9 02 CMP #$02 C2/10BC: B0 B8 BCS $1076 C2/10BE: 3A DEC C2/10BF: F0 03 BEQ $10C4 C2/10C1: 88 DEY C2/10C2: 06 FF ASL $FF C2/10C4: B9 C6 11 LDA $11C6,Y C2/10C7: 1A INC C2/10C8: D0 04 BNE $10CE C2/10CA: 06 FF ASL $FF C2/10CC: 06 FF ASL $FF C2/10CE: A5 FF LDA $FF C2/10D0: 0C CE 11 TSB $11CE C2/10D3: BF 16 50 D8 LDA $D85016,X C2/10D7: 99 B2 11 STA $11B2,Y C2/10DA: BF 0F 50 D8 LDA $D8500F,X C2/10DE: 99 B0 11 STA $11B0,Y C2/10E1: A5 FD LDA $FD C2/10E3: 79 AC 11 ADC $11AC,Y C2/10E6: 90 02 BCC $10EA C2/10E8: A9 FF LDA #$FF C2/10EA: 99 AC 11 STA $11AC,Y C2/10ED: BF 15 50 D8 LDA $D85015,X C2/10F1: 99 AE 11 STA $11AE,Y C2/10F4: BF 12 50 D8 LDA $D85012,X C2/10F8: 99 B4 11 STA $11B4,Y C2/10FB: BF 13 50 D8 LDA $D85013,X C2/10FF: 99 DA 11 STA $11DA,Y C2/1102: 4C 76 10 JMP $1076 Data C2/1105: 00 00 BRK $00 C2/1107: 0A ASL C2/1108: 00 14 BRK $14 C2/110A: 00 1E BRK $1E C2/110C: 00 28 BRK $28 C2/110E: 00 32 BRK $32 C2/1110: 00 F6 BRK $F6 C2/1112: FF EC FF E2 SBC $E2FFEC,X C2/1116: FF D8 FF CE SBC $CEFFD8,X C2/111A: FF C2/111B :08 PHP C2/111C: E2 30 SEP #$30 (Set 8-bit A, X, & Y) C2/111E: 20 1F 4D JSR $4D1F C2/1121: AD 41 2F LDA $2F41 C2/1124: 2D 8F 3A AND $3A8F C2/1127: D0 62 BNE $118B (Exit function if set to wait battle and in a menu) C2/1129: AD 6C 3A LDA $3A6C C2/112C: A2 02 LDX #$02 C2/112E: C5 0E CMP $0E C2/1130: F0 5E BEQ $1190 (Exit function if $3A6C = $000E) (Exit if function called last frame) C2/1132: 1A INC C2/1133: CA DEX C2/1134: D0 F8 BNE $112E (Check and exit if $3A6C + 1 = $000E) C2/1136: EE 3E 3A INC $3A3E (Increment battle time counter) C2/1139: D0 03 BNE $113E C2/113B: EE 3F 3A INC $3A3F (Increment battle time counter) C2/113E: 20 83 5A JSR $5A83 C2/1141: A2 12 LDX #$12 C2/1143: EC E2 3E CPX $3EE2 C2/1146: D0 03 BNE $114B C2/1148: 20 11 12 JSR $1211 C2/114B: BD A0 3A LDA $3AA0,X C2/114E: 4A LSR C2/114F: 90 33 BCC $1184 (Branch if bit 0 of $3AA0,X is not set) C2/1151: EC F8 33 CPX $33F8 C2/1154: F0 2E BEQ $1184 (Branch if X = $33F8) C2/1156: 89 3A BIT #$3A C2/1158: D0 2A BNE $1184 (Branch if bits 1,3,4,5 of $3AA0,X not all 0) C2/115A: 89 04 BIT #$04 C2/115C: F0 1E BEQ $117C (Branch if bit 2 of $3AA0,X is not set) C2/115E: AD 45 2F LDA $2F45 C2/1161: F0 16 BEQ $1179 (Branch if $2F45 = 0) C2/1163: BD E4 3E LDA $3EE4,X C2/1166: 89 02 BIT #$02 (Check for Zombie Status) C2/1168: D0 0F BNE $1179 (Branch if zombie) C2/116A: BD 18 30 LDA $3018,X C2/116D: F0 0A BEQ $1179 (Branch if monster) C2/116F: 2C 2C 3F BIT $3F2C C2/1172: D0 05 BNE $1179 C2/1174: 2C 40 3A BIT $3A40 C2/1177: F0 03 BEQ $117C C2/1179: 20 93 11 JSR $1193 (Advance ATB counter) C2/117C: BD 19 32 LDA $3219,X C2/117F: F0 03 BEQ $1184 C2/1181: 20 BB 11 JSR $11BB C2/1184: CA DEX C2/1185: CA DEX C2/1186: 10 BB BPL $1143 C2/1188: 20 54 5C JSR $5C54 C2/118B: A5 0E LDA $0E C2/118D: 8D 6C 3A STA $3A6C C2/1190: 7B TDC C2/1191: 28 PLP C2/1192: 6B RTL C2/1193: C2 20 REP #$20 (Set 16-bit A) C2/1195: BD C8 3A LDA $3AC8,X (Amount to add to ATB gauge) C2/1198: 4A LSR C2/1199: 18 CLC C2/119A: 7D B4 3A ADC $3AB4,X C2/119D: 9D B4 3A STA $3AB4,X C2/11A0: E2 20 SEP #$20 (Set 8-bit A) C2/11A2: B0 06 BCS $11AA C2/11A4: EB XBA C2/11A5: DD 2C 32 CMP $322C,X C2/11A8: 90 10 BCC $11BA C2/11AA: A9 FF LDA #$FF C2/11AC: 9D 2C 32 STA $322C,X C2/11AF: 20 77 4E JSR $4E77 C2/11B2: A9 20 LDA #$20 C2/11B4: 1D A0 3A ORA $3AA0,X C2/11B7: 9D A0 3A STA $3AA0,X C2/11BA: 60 RTS C2/11BB: C2 21 REP #$21 C2/11BD: BD 18 32 LDA $3218,X C2/11C0: 7D C8 3A ADC $3AC8,X C2/11C3: 9D 18 32 STA $3218,X C2/11C6: E2 20 SEP #$20 C2/11C8: 90 F0 BCC $11BA C2/11CA: E0 08 CPX #$08 C2/11CC: B0 03 BCS $11D1 C2/11CE: 20 E2 5B JSR $5BE2 C2/11D1: 9E 19 32 STZ $3219,X C2/11D4: 9E B5 3A STZ $3AB5,X C2/11D7: A9 FF LDA #$FF C2/11D9: 9D 2C 32 STA $322C,X C2/11DC: A9 08 LDA #$08 C2/11DE: 3C A0 3A BIT $3AA0,X C2/11E1: D0 07 BNE $11EA C2/11E3: 20 B4 11 JSR $11B4 C2/11E6: 89 02 BIT #$02 C2/11E8: F0 24 BEQ $120E C2/11EA: A9 80 LDA #$80 C2/11EC: 20 B4 11 JSR $11B4 C2/11EF: E0 08 CPX #$08 C2/11F1: B0 1B BCS $120E C2/11F3: BD 05 32 LDA $3205,X C2/11F6: 10 C2 BPL $11BA (Exit function) C2/11F8: A5 B1 LDA $B1 C2/11FA: 30 BE BMI $11BA (Exit function) C2/11FC: A9 04 LDA #$04 C2/11FE: 20 B4 11 JSR $11B4 C2/1201: BD 4D 3E LDA $3E4D,X C2/1204: 4A LSR C2/1205: 8A TXA C2/1206: 6A ROR C2/1207: 85 10 STA $10 C2/1209: A9 02 LDA #$02 C2/120B: 4C 11 64 JMP $6411 C2/120E: 4C 66 4E JMP $4E66 C2/1211: C2 20 REP #$20 (Set 16-bit A) C2/1213: 38 SEC C2/1214: AD 30 3F LDA $3F30 C2/1217: ED 32 3F SBC $3F32 C2/121A: 8D 30 3F STA $3F30 C2/121D: E2 20 SEP #$20 C2/121F: B0 13 BCS $1234 C2/1221: 9C 31 3F STZ $3F31 C2/1224: 20 36 0B JSR $0B36 C2/1227: A9 FF LDA #$FF C2/1229: 8D E2 3E STA $3EE2 C2/122C: A9 04 LDA #$04 C2/122E: 8D 7A 3A STA $3A7A C2/1231: 20 B2 4E JSR $4EB2 C2/1234: AD 31 3F LDA $3F31 C2/1237: 9D 04 3B STA $3B04,X C2/123A: 60 RTS True Knight and Love Token C2/123B: DA PHX C2/123C: 08 PHP C2/123D: A5 B2 LDA $B2 C2/123F: 89 02 00 BIT #$0002 C2/1242: D0 61 BNE $12A5 (Exit) C2/1244: A5 B8 LDA $B8 C2/1246: F0 5D BEQ $12A5 (Exit) C2/1248: A0 FF LDY #$FF C2/124A: 84 F4 STY $F4 C2/124C: 20 F9 51 JSR $51F9 C2/124F: 84 F8 STY $F8 C2/1251: 64 F2 STZ $F2 C2/1253: DA PHX C2/1254: BE 6C 33 LDX $336C,Y (Which target you take damage for) C2/1257: 30 06 BMI $125F (Branch if don't take damage for others) C2/1259: 20 C0 12 JSR $12C0 C2/125C: 20 A8 12 JSR $12A8 C2/125F: FA PLX C2/1260: B9 E4 3E LDA $3EE4,Y C2/1263: 89 00 02 BIT #$0200 C2/1266: F0 3D BEQ $12A5 (Branch if not Weak) C2/1268: 89 10 00 BIT #$0010 C2/126B: D0 38 BNE $12A5 (Branch if M-Tek) C2/126D: B9 58 33 LDA $3358,Y C2/1270: 10 33 BPL $12A5 (Branch if target is seized) C2/1272: A9 0F 00 LDA #$000F C2/1275: C0 08 CPY #$08 C2/1277: 90 03 BCC $127C (Branch if monster?) C2/1279: A9 00 3F LDA #$3F00 C2/127C: 85 F0 B9 STA $F0 C2/127E: B9 18 30 LDA $3018,X C2/1281: 1D 18 30 ORA $3018,X (??) C2/1284: 14 F0 TRB $F0 (Clear attacker from $F0) C2/1286: A2 12 LDX #$12 C2/1288: BD 58 3C LDA $3C58,X C2/128B: 89 40 00 BIT #$0040 C2/128E: F0 0A BEQ $129A (Branch if no True Knight effect) C2/1290: BD 18 30 LDA $3018,X C2/1293: 24 F0 BIT $F0 C2/1295: F0 03 BEQ $129A (Branch if attacker has true knight)? C2/1297: 20 C0 12 JSR $12C0 C2/129A: CA DEX C2/129B: CA DEX C2/129C: 10 EA BPL $1288 (Do for all characters and monsters) C2/129E: A5 F2 LDA $F2 C2/12A0: F0 03 BEQ $12A5 C2/12A2: 20 A8 12 JSR $12A8 C2/12A5: 28 PLP C2/12A6: FA PLX C2/12A7: 60 RTS C2/12A8: A6 F4 LDX $F4 C2/12AA: 30 13 BMI $12BF (Exit) C2/12AC: C4 F8 CPY $F8 C2/12AE: D0 0F BNE $12BF (Exit) C2/12B0: 86 F8 STX $F8 C2/12B2: 84 A8 STY $A8 C2/12B4: 46 A8 LSR $A8 C2/12B6: 08 PHP C2/12B7: C2 20 REP #$20 C2/12B9: BD 18 30 LDA $3018,X C2/12BC: 85 B8 STA $B8 C2/12BE: 28 PLP C2/12BF: 60 RTS C2/12C0: 08 PHP C2/12C1: C2 20 REP #$20 (Set 16-bit Accumulator) C2/12C3: BD A0 3A LDA $3AA0,X C2/12C6: 4A LSR C2/12C7: 90 2A BCC $12F3 (Exit function if bit 0 of $3AA0,X is clear) C2/12C9: BD B8 32 LDA $32B8,X (Which target you control) C2/12CC: 10 25 BPL $12F3 (Exit if control a target)? C2/12CE: BD 58 33 LDA $3358,X (Which target you have seized) C2/12D1: 10 20 BPL $12F3 (Exit if you have a target seized)? C2/12D3: BD E4 3E LDA $3EE4,X C2/12D6: 89 D2 A0 BIT #$A0D2 (Death, Stone, Invisible, Zombie, Sleep, Confuse) C2/12D9: D0 18 BNE $12F3 (Exit if any set) C2/12DB: BD F8 3E LDA $3EF8,X C2/12DE: 89 10 32 BIT #$3210 (Stop, Freeze, Spell, Hide) C2/12E1: D0 10 BNE $12F3 (Exit if any set) C2/12E3: BD 18 30 LDA $3018,X C2/12E6: 04 A6 TSB $A6 C2/12E8: BD F4 3B LDA $3BF4,X (HP) C2/12EB: C5 F2 CMP $F2 C2/12ED: 90 04 BCC $12F3 (Exit if HP >= $F2?) C2/12EF: 85 F2 STA $F2 C2/12F1: 86 F4 INC $F4,X C2/12F3: 28 PLP C2/12F4: 60 RTS C2/12F5: DA PHX C2/12F6: 08 PHP C2/12F7: A2 02 LDX #$02 C2/12F9: AD A2 11 LDA $11A2 C2/12FC: 30 02 BMI $1300 (Branch if concerns MP) C2/12FE: A2 00 LDX #$00 C2/1300: FC 1F 13 JSR ($131F,X) (Deal damage) C2/1303: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/1305: 90 15 BCC $131C (Branch if target not dead from this damage) C2/1307: A3 02 LDA $02,S C2/1309: AA TAX C2/130A: 86 EE STX $EE C2/130C: 20 2F 36 JSR $362F C2/130F: C4 EE CPY $EE C2/1311: F0 09 BEQ $131C C2/1313: 99 7C 32 STA $327C,Y C2/1316: B9 18 30 LDA $3018,Y C2/1319: 1C 19 34 TRB $3419 C2/131C: 28 PLP C2/131D: FA PLX C2/131E: 60 RTS Code pointers C2/131F: 23 13 (HP damage) C2/1321: 50 13 (MP damage) Deal HP damage C2/1323: 20 A7 13 JSR $13A7 C2/1326: F0 13 BEQ $133B (Exit function if 0 damage) C2/1328: 90 13 BCC $133D (Deal HP damage) C2/132A: 18 CLC C2/132B: 79 F4 3B ADC $3BF4,Y (Add to HP) C2/132E: B0 05 BCS $1335 C2/1330: D9 1C 3C CMP $3C1C,Y C2/1333: 90 03 BCC $1338 C2/1335: B9 1C 3C LDA $3C1C,Y (If over Max HP set to Max HP) C2/1338: 99 F4 3B STA $3BF4,Y C2/133B: 18 CLC C2/133C: 60 RTS C2/133D: 49 FF FF EOR #$FFFF C2/1340: 85 EE STA $EE C2/1342: B9 F4 3B LDA $3BF4,Y C2/1345: E5 EE SBC $EE (Subtract damage from HP) C2/1347: 99 F4 3B STA $3BF4,Y C2/134A: F0 44 BEQ $1390 (If 0 HP) C2/134C: B0 EE BCS $133C (Exit If > 0 HP) C2/134E: 80 40 BRA $1390 (If < 0 HP) Deal MP Damage C2/1350: 20 A7 13 JSR $13A7 C2/1353: F0 E6 BEQ $133B (Exit function if 0 damage) C2/1355: 90 14 BCC $136B C2/1357: 18 CLC C2/1358: 79 08 3C ADC $3C08,Y (Add A to MP) C2/135B: B0 05 BCS $1362 C2/135D: D9 30 3C CMP $3C30,Y C2/1360: 90 03 BCC $1365 C2/1362: B9 30 3C LDA $3C30,Y (If over Max MP set to Max MP) C2/1365: 99 08 3C STA $3C08,Y C2/1368: 18 CLC C2/1369: 80 1F BRA $138A C2/136B: 49 FF FF EOR #$FFFF C2/136E: 85 EE STA $EE C2/1370: B9 08 3C LDA $3C08,Y C2/1373: E5 EE SBC $EE C2/1375: 99 08 3C STA $3C08,Y (Subtract from MP) C2/1378: F0 02 BEQ $137C (If = 0) C2/137A: B0 0E BCS $138A (If > 0) C2/137C: 7B TDC C2/137D: 99 08 3C STA $3C08,Y (Store 0 in MP) C2/1380: B9 95 3C LDA $3C95,Y C2/1383: 4A LSR C2/1384: 90 03 BCC $1389 (If not die at 0 MP) C2/1386: 20 90 13 JSR $1390 (Call lethal damage function if dies at 0 MP) C2/1389: 38 SEC C2/138A: A9 80 00 LDA #$0080 C2/138D: 4C 4C 46 JMP $464C If monster takes lethal damage C2/1390: 38 SEC C2/1391: 7B TDC (Clear accumulator) C2/1392: AA TAX C2/1393: 8E 89 3A STX $3A89 (Set to use no addition magic) C2/1396: 99 F4 3B STA $3BF4,Y (Set HP to 0) C2/1399: B9 E4 3E LDA $3EE4,Y C2/139C: 89 02 00 BIT #$0002 C2/139F: D0 9B BNE $133C (Exit function if Zombie) C2/13A1: A9 80 00 LDA #$0080 C2/13A4: 4C 32 0E JMP $0E32 (Sets $3DD4 for death status) Returns Damage Healed - Damage Taken C2/13A7: B9 D0 33 LDA $33D0,Y (Damage Taken) C2/13AA: 1A INC C2/13AB: F0 0F BEQ $13BC (If no damage) C2/13AD: B9 18 30 LDA $3018,Y C2/13B0: 2C 3C 3A BIT $3A3C C2/13B3: F0 04 BEQ $13B9 (Branch if not invincible) C2/13B5: 7B TDC C2/13B6: 99 D0 33 STA $33D0,Y (Set damage to 0) C2/13B9: B9 D0 33 LDA $33D0,Y C2/13BC: 85 EE STA $EE C2/13BE: AD 81 3A LDA $3A81 C2/13C1: 2D 82 3A AND $3A82 C2/13C4: 30 02 BMI $13C8 (Branch if no Golem or dog block) C2/13C6: 64 EE STZ $EE (Set damage to 0) C2/13C8: B9 E4 33 LDA $33E4,Y (Damage Healed) C2/13CB: 1A INC C2/13CC: F0 01 BEQ $13CF C2/13CE: 3A DEC C2/13CF: 38 SEC C2/13D0: E5 EE SBC $EE (Subtract damage) C2/13D2: 60 RTS Combat Code C2/13D3: DA PHX C2/13D4: 08 PHP C2/13D5: 20 39 26 JSR $2639 C2/13D8: A9 10 LDA #$10 C2/13DA: 04 B0 TSB $B0 C2/13DC: A9 06 LDA #$06 C2/13DE: 85 B4 STA $B4 C2/13E0: 64 BD STZ $BD C2/13E2: 9C 89 3A STZ $3A89 C2/13E5: 9C C9 3E STZ $3EC9 C2/13E8: 9C 8E 3A STZ $3A8E C2/13EB: 9B TXY C2/13EC: A9 FF LDA #$FF C2/13EE: 85 B2 STA $B2 C2/13F0: 85 B3 STA $B3 C2/13F2: A2 0F LDX #$0F C2/13F4: 9D 10 34 STA $3410,X C2/13F7: CA DEX C2/13F8: 10 FA BPL $13F4 C2/13FA: A5 B5 LDA $B5 (Load command) C2/13FC: 0A ASL C2/13FD: AA TAX C2/13FE: FC C7 19 JSR ($19C7,X) C2/1401: A9 FF LDA #$FF C2/1403: 8D 17 34 STA $3417 C2/1406: 20 9B 62 JSR $629B C2/1409: 20 9B 06 JSR $069B C2/140C: 20 5B 4C JSR $4C5B C2/140F: 20 29 14 JSR $1429 C2/1412: A9 04 LDA #$04 C2/1414: 20 11 64 JSR $6411 (Shows action?) C2/1417: 20 B9 4A JSR $4AB9 C2/141A: 20 7A 14 JSR $147A C2/141D: 20 3F 08 JSR $083F C2/1420: 20 4F 14 JSR $144F C2/1423: 20 C7 62 JSR $62C7 C2/1426: 28 PLP C2/1427: FA PLX C2/1428: 60 RTS C2/1429: A2 0A LDX #$0A C2/142B: BD 21 30 LDA $3021,X C2/142E: 2C 3A 3A BIT $3A3A C2/1431: F0 17 BEQ $144A C2/1433: EB XBA C2/1434: BD 01 3F LDA $3F01,X C2/1437: 89 20 BIT #$20 C2/1439: D0 0B BNE $1446 C2/143B: BD 54 3E LDA $3E54,X C2/143E: 30 06 BMI $1446 C2/1440: BD D5 32 LDA $32D5,X C2/1443: 1A INC C2/1444: D0 04 BNE $144A C2/1446: EB XBA C2/1447: 1C 2F 2F TRB $2F2F C2/144A: CA DEX C2/144B: CA DEX C2/144C: 10 DD BPL $142B C2/144E: 60 RTS C2/144F: 08 PHP C2/1450: C2 20 REP #$20 C2/1452: A2 12 LDX #$12 C2/1454: BD 18 30 LDA $3018,X C2/1457: 1C 4C 2F TRB $2F4C C2/145A: F0 18 BEQ $1474 C2/145C: E2 20 SEP #$20 C2/145E: EB XBA C2/145F: 1C 2F 2F TRB $2F2F C2/1462: A9 FE LDA #$FE C2/1464: 20 92 07 JSR $0792 C2/1467: BD F9 3E LDA $3EF9,X C2/146A: 09 20 ORA #$20 C2/146C: 9D F9 3E STA $3EF9,X (Set Hide status) C2/146F: 20 C8 07 JSR $07C8 C2/1472: C2 20 REP #$20 C2/1474: CA DEX C2/1475: CA DEX C2/1476: 10 DC BPL $1454 C2/1478: 28 PLP C2/1479: 60 RTS C2/147A: 08 PHP C2/147B: C2 20 REP #$20 C2/147D: A2 12 LDX #$12 C2/147F: BD 18 30 LDA $3018,X C2/1482: 1C 4E 2F TRB $2F4E C2/1485: F0 20 BEQ $14A7 C2/1487: E2 20 SEP #$20 C2/1489: EB XBA C2/148A: 0C 2F 2F TSB $2F2F C2/148D: A9 01 LDA #$01 C2/148F: 20 B4 11 JSR $11B4 C2/1492: BD E4 3E LDA $3EE4,X C2/1495: 29 1D AND #$1D C2/1497: 9D E4 3E STA $3EE4,X (Clear Zombie, Imp, Stone, Death) C2/149A: BD F9 3E LDA $3EF9,X C2/149D: 29 DF AND #$DF C2/149F: 9D F9 3E STA $3EF9,X (Clear Hide) C2/14A2: 20 A0 2D JSR $2DA0 C2/14A5: C2 20 REP #$20 C2/14A7: CA DEX C2/14A8: CA DEX C2/14A9: 10 D4 BPL $147F C2/14AB: 28 PLP C2/14AC: 60 RTS Check if hitting target(s) in back C2/14AD: AD A2 11 LDA $11A2 C2/14B0: 4A LSR C2/14B1: 90 5E BCC $1511 (Exit function if magical damage) C2/14B3: E0 08 CPX #$08 C2/14B5: B0 2E BCS $14E5 (Branch if monster) C2/14B7: AD 1F 20 LDA $201F C2/14BA: C9 03 CMP #$03 C2/14BC: D0 53 BNE $1511 (Exit function if not Side attack) C2/14BE: BD 18 30 LDA $3018,X C2/14C1: 2D 50 2F AND $2F50 (Monster facing) C2/14C4: 85 EE STA $EE C2/14C6: A0 0A LDY #$0A C2/14C8: A5 EE LDA $EE C2/14CA: EB XBA C2/14CB: B9 21 30 LDA $3021,Y C2/14CE: 2C 51 2F BIT $2F51 (Character facing) C2/14D1: F0 05 BEQ $14D8 C2/14D3: EB XBA C2/14D4: 5D 18 30 EOR $3018,X C2/14D7: EB XBA C2/14D8: EB XBA C2/14D9: D0 04 BNE $14DF C2/14DB: EB XBA C2/14DC: 0C 55 3A TSB $3A55 C2/14DF: 88 DEY C2/14E0: 88 DEY C2/14E1: 10 E5 BPL $14C8 C2/14E3: 80 2C BRA $1511 (Exit Function) C2/14E5: AD 1F 20 LDA $201F C2/14E8: C9 02 CMP #$02 C2/14EA: D0 25 BNE $1511 (Branch if not pincer attack) C2/14EC: BD 19 30 LDA $3019,X C2/14EF: 2D 51 2F AND $2F51 (Character facing) C2/14F2: 85 EE STA $EE C2/14F4: A0 06 LDY #$06 C2/14F6: A5 EE LDA $EE C2/14F8: EB XBA C2/14F9: B9 18 30 LDA $3018,Y C2/14FC: 2C 50 2F BIT $2F50 (Monster facing) C2/14FF: F0 05 BEQ $1506 C2/1501: EB XBA C2/1502: 5D 19 30 EOR $3019,X C2/1505: EB XBA C2/1506: EB XBA C2/1507: D0 04 BNE $150D C2/1509: EB XBA C2/150A: 0C 54 3A TSB $3A54 C2/150D: 88 DEY C2/150E: 88 DEY C2/150F: 10 E5 BPL $14F6 C2/1511: 60 RTS Set $BD to 2 if A is between $1D and $24 (inclusive) Increment damage if weapon is spear C2/1512: C9 1D CMP #$1D C2/1514: 90 08 BCC $151E (Exit) C2/1516: C9 25 CMP #$25 C2/1518: B0 04 BCS $151E (Exit) C2/151A: A9 02 LDA #$02 C2/151C: 85 BD STA $BD C2/151E: 60 RTS Sketch C2/151F: BB TYX C2/1520: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/1523: A9 FF LDA #$FF C2/1525: 85 B7 STA $B7 C2/1527: A9 AA LDA #$AA C2/1529: 8D A9 11 STA $11A9 (Store sketch in special effect) C2/152C: 20 7B 31 JSR $317B C2/152F: AC 17 34 LDY $3417 C2/1532: 30 EA BMI $151E (Exit) C2/1534: 8E 17 34 STX $3417 C2/1537: B9 81 3C LDA $3C81,Y C2/153A: 9D 81 3C STA $3C81,X C2/153D: B9 2D 32 LDA $322D,Y C2/1540: 9D 2D 32 STA $322D,X C2/1543: 9C 15 34 STZ $3415 C2/1546: AD 00 34 LDA $3400 C2/1549: 85 B6 STA $B6 C2/154B: A9 FF LDA #$FF C2/154D: 8D 00 34 STA $3400 C2/1550: A9 01 LDA #$01 C2/1552: 04 B2 TSB $B2 C2/1554: A5 B6 LDA $B6 C2/1556: 20 BF 1D JSR $1DBF C2/1559: 85 B5 STA $B5 C2/155B: 0A ASL C2/155C: AA TAX C2/155D: 7C C7 19 JMP ($19C7,X) Rage C2/1560: B9 A8 33 LDA $33A8,Y C2/1563: 1A INC C2/1564: D0 13 BNE $1579 (Branch if already raging) C2/1566: AE 93 3A LDX $3A93 C2/1569: E0 14 CPX #$14 C2/156B: 90 02 BCC $156F C2/156D: A2 00 LDX #$00 C2/156F: BD A8 33 LDA $33A8,X C2/1572: 99 A8 33 STA $33A8,Y C2/1575: 7B TDC C2/1576: 99 A9 33 STA $33A9,Y C2/1579: 8C 93 3A STY $3A93 C2/157C: B9 F9 3E LDA $3EF9,Y C2/157F: 09 01 ORA #$01 C2/1581: 99 F9 3E STA $3EF9,Y (Set Rage status) C2/1584: 20 10 06 JSR $0610 (Set statuses, elemental resistances, etc.) C2/1587: BB TYX C2/1588: 20 50 26 JSR $2650 C2/158B: 20 54 15 JSR $1554 (Commands code) C2/158E: 4C 75 26 JMP $2675 Steal C2/1591: BB TYX C2/1592: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/1595: A9 A4 LDA #$A4 C2/1597: 8D A9 11 STA $11A9 (Store steal in special effect) C2/159A: 4C 7B 31 JMP $317B Blitz C2/159D: A5 B6 LDA $B6 C2/159F: 10 0F BPL $15B0 C2/15A1: A9 01 LDA #$01 C2/15A3: 14 B3 TRB $B3 C2/15A5: A9 43 LDA #$43 C2/15A7: 8D 01 34 STA $3401 C2/15AA: A9 5D LDA #$5D C2/15AC: 85 B6 STA $B6 C2/15AE: 80 05 BRA $15B5 C2/15B0: A9 08 LDA #$08 C2/15B2: 8D 12 34 STA $3412 C2/15B5: A5 B6 LDA $B6 C2/15B7: 48 PHA C2/15B8: 38 SEC C2/15B9: E9 5D SBC #$5D C2/15BB: 85 B6 STA $B6 C2/15BD: 68 PLA C2/15BE: BB TYX C2/15BF: 20 C1 19 JSR $19C1 C2/15C2: 20 51 29 JSR $2951 C2/15C5: 4C 7B 31 JMP $317B Desperation attack C2/15C8: C0 08 CPY #$08 C2/15CA: B0 44 BCS $1610 (No DA if monster) C2/15CC: AD 3F 3A LDA $3A3F C2/15CF: C9 03 CMP #$03 C2/15D1: 90 3D BCC $1610 (No DA if time counter is 767 or less) C2/15D3: B9 E5 3E LDA $3EE5,Y C2/15D6: 89 02 BIT #$02 C2/15D8: F0 36 BEQ $1610 (No DA If not weak) C2/15DA: 89 24 BIT #$24 C2/15DC: D0 32 BNE $1610 (No DA If Confuse or Image) C2/15DE: B9 E4 3E LDA $3EE4,Y C2/15E1: 89 12 BIT #$12 C2/15E3: D0 2B BNE $1610 (No DA If Vanish or Zombie) C2/15E5: A5 B9 LDA $B9 C2/15E7: F0 27 BEQ $1610 (No DA if $B9 = 0) C2/15E9: 20 5A 4B JSR $4B5A (Random number 0 to 255) C2/15EC: 29 0F AND #$0F (0 to 15) C2/15EE: D0 20 BNE $1610 (1 in 16 chance for DA) C2/15F0: B9 18 30 LDA $3018,Y C2/15F3: 0C 2F 3F TSB $3F2F C2/15F6: D0 18 BNE $1610 (No DA if this character already used it this combat) C2/15F8: B9 D8 3E LDA $3ED8,Y (Which character it is) C2/15FB: C9 0C CMP #$0C C2/15FD: F0 05 BEQ $1604 (Branch if Gogo) C2/15FF: C9 0B CMP #$0B C2/1601: B0 0D BCS $1610 (Branch if Gau, Gogo, Umaro, or special character) C2/1603: 1A INC C2/1604: 3A DEC C2/1605: 09 F0 ORA #$F0 C2/1607: 85 B6 STA $B6 (Spell animation) C2/1609: A9 10 LDA #$10 C2/160B: 14 B0 TRB $B0 C2/160D: 4C 14 17 JMP $1714 C2/1610: C0 08 CPY #$08 C2/1612: B0 07 BCS $161B (If monster) C2/1614: B9 D8 3E LDA $3ED8,Y (Which character it is) C2/1617: C9 0D CMP #$0D C2/1619: F0 20 BEQ $163B (Branch if Umaro) C2/161B: BB TYX C2/161C: BD 58 3C LDA $3C58,X C2/161F: 4A LSR C2/1620: A9 01 LDA #$01 C2/1622: 90 02 BCC $1626 (Branch if no offering) C2/1624: A9 07 LDA #$07 C2/1626: 8D 70 3A STA $3A70 (# of attacks) C2/1629: 20 4D 5A JSR $5A4D (Remove dead and hidden targets) C2/162C: 20 65 38 JSR $3865 C2/162F: A9 02 LDA #$02 C2/1631: 14 B2 TRB $B2 (Clear no critical & ignore true knight) C2/1633: A5 B5 LDA $B5 C2/1635: 8D 13 34 STA $3413 C2/1638: 4C 7B 31 JMP $317B Determine which type of attack Umaro uses C2/163B: 64 FE STZ $FE C2/163D: A9 C6 LDA #$C6 C2/163F: D9 D0 3C CMP $3CD0,Y C2/1642: F0 05 BEQ $1649 (Branch if Rage Ring equipped in slot 1) C2/1644: D9 D1 3C CMP $3CD1,Y (Check Slot 2) C2/1647: D0 0D BNE $1656 (Branch if Rage Ring not equipped) C2/1649: 7B TDC C2/164A: B9 18 30 LDA $3018,Y C2/164D: 4D 74 3A EOR $3A74 C2/1650: F0 04 BEQ $1656 (Branch if Umaro is the only character alive) C2/1652: A9 04 LDA #$04 C2/1654: 04 FE TSB $FE C2/1656: A9 C5 LDA #$C5 C2/1658: D9 D0 3C CMP $3CD0,Y C2/165B: F0 05 BEQ $1662 (Branch if Blizzard Orb equipped in slot 1) C2/165D: D9 D1 3C CMP $3CD1,Y (Check Slot 2) C2/1660: D0 04 BNE $1666 (Branch if Blizzard Orb not equipped) C2/1662: A9 08 LDA #$08 C2/1664: 04 FE TSB $FE C2/1666: A5 FE LDA $FE C2/1668: AA TAX C2/1669: 09 30 ORA #$30 C2/166B: 0A ASL C2/166C: 0A ASL C2/166D: 20 47 52 JSR $5247 (Pick attack type to use) C2/1670: 8A TXA C2/1671: 0A ASL C2/1672: AA TAX C2/1673: 7C 76 16 JMP ($1676,X) Code pointers C2/1676: 92 16 (Throw character) C2/1678: 0D 17 (Storm) C2/167A: 7E 16 (Charge) C2/167C: 1B 16 (Normal attack) Umaro's Charge attack C2/167E: BB TYX C2/167F: 20 C7 17 JSR $17C7 C2/1682: A9 20 LDA #$20 C2/1684: 0C A2 11 TSB $11A2 (Set ignore defense) C2/1687: A9 02 LDA #$02 C2/1689: 14 B2 TRB $B2 (Clear no critical and ignore True Knight) C2/168B: A9 23 LDA #$23 C2/168D: 85 B5 STA $B5 (Set command to #$23) C2/168F: 4C 7B 31 JMP $317B Umaro's Throw character attack C2/1692: BB TYX C2/1693: 20 C7 17 JSR $17C7 C2/1696: BD 18 30 LDA $3018,X C2/1699: 4D 74 3A EOR $3A74 (Remove Umaro from possible characters to throw) C2/169C: A2 06 LDX #$06 C2/169E: 3C 18 30 BIT $3018,X (Check each character) C2/16A1: F0 1C BEQ $16BF (Chance next character if this one is not present) C2/16A3: EB XBA C2/16A4: BD F9 3E LDA $3EF9,X C2/16A7: 89 20 BIT #$20 C2/16A9: F0 07 BEQ $16B2 (Branch if not hide) C2/16AB: EB XBA C2/16AC: 5D 18 30 EOR $3018,X (Remove this character from list of characters to throw) C2/16AF: EB XBA C2/16B0: 80 0C BRA $16BE (Check next character) C2/16B2: BD E5 3E LDA $3EE5,X C2/16B5: 89 A0 BIT #$A0 C2/16B7: F0 05 BEQ $16BE (Branch if no confuse or sleep) C2/16B9: EB XBA C2/16BA: BD 18 30 LDA $3018,X (Set to automatically throw this character) C2/16BD: EB XBA C2/16BE: EB XBA C2/16BF: CA DEX C2/16C0: CA DEX C2/16C1: 10 DB BPL $169E C2/16C3: 48 PHA C2/16C4: 7B TDC C2/16C5: 68 PLA C2/16C6: F0 B6 BEQ $167E (Do Umaro's charge attack if no characters can be thrown) C2/16C8: 20 2A 52 JSR $522A (Pick a random character to throw) C2/16CB: 20 F9 51 JSR $51F9 (Set Y to character thrown) C2/16CE: BB TYX C2/16CF: BD D8 3E LDA $3ED8,X (Which character is thrown) C2/16D2: C9 0A CMP #$0A C2/16D4: D0 04 BNE $16DA (Branch if not Mog) C2/16D6: A9 02 LDA #$02 C2/16D8: 14 B3 TRB $B3 (Set always critical) C2/16DA: BD 68 3B LDA $3B68,X (Battle power of thrown character) C2/16DD: 7D 69 3B ADC $3B69,X C2/16E0: 90 02 BCC $16E4 C2/16E2: A9 FE LDA #$FE C2/16E4: 6D A6 11 ADC $11A6 (Add battle power of attack) C2/16E7: 90 02 BCC $16EB C2/16E9: A9 FF LDA #$FF C2/16EB: 8D A6 11 STA $11A6 (Store in new battle power for attack) C2/16EE: A9 24 LDA #$24 C2/16F0: 85 B5 STA $B5 (Set command to #$24) C2/16F2: A9 20 LDA #$20 C2/16F4: 0C A2 11 TSB $11A2 (Set ignore defense) C2/16F7: A9 02 LDA #$02 C2/16F9: 14 B2 TRB $B2 (Clear no critical and ignore True Knight) C2/16FB: A9 01 LDA #$01 C2/16FD: 04 BA TSB $BA C2/16FF: BD E5 3E LDA $3EE5,X C2/1702: 29 A0 AND #$A0 C2/1704: 1D FD 3D ORA $3DFD,X C2/1707: 9D FD 3D STA $3DFD,X (Set to clear sleep and confuse on thrown character) C2/170A: 4C 7B 31 JMP $317B Storm C2/170D: 9C 15 34 STZ $3415 C2/1710: A9 54 LDA #$54 (Storm) C2/1712: 85 B6 STA $B6 (Set spell/animation) C2/1714: A9 02 LDA #$02 (Magic) C2/1716: 85 B5 STA $B5 (Set command) C2/1718: 80 45 BRA $175F Shock C2/171A: A9 82 LDA #$82 C2/171C: 80 02 BRA $1720 Health C2/171E: A9 2E LDA #$2E C2/1720: 85 B6 STA $B6 C2/1722: A9 05 LDA #$05 C2/1724: 80 3F BRA $1765 Slot C2/1726: A9 10 LDA #$10 C2/1728: 14 B0 TRB $B0 C2/172A: A5 B6 LDA $B6 C2/172C: C9 94 CMP #$94 C2/172E: D0 04 BNE $1734 C2/1730: A9 07 LDA #$07 C2/1732: 80 31 BRA $1765 C2/1734: C9 51 CMP #$51 C2/1736: 90 2B BCC $1763 C2/1738: C9 FE CMP #$FE C2/173A: D0 05 BNE $1741 (Branch if not Lagomorph) C2/173C: A9 07 LDA #$07 C2/173E: 8D 01 34 STA $3401 (Set to display text 7) C2/1741: C0 08 CPY #$08 C2/1743: B0 1A BCS $175F (Branch if target is monster) C2/1745: B9 D8 3E LDA $3ED8,Y C2/1748: C9 00 CMP #$00 C2/174A: D0 13 BNE $175F (Branch if not Terra) C2/174C: A9 02 LDA #$02 C2/174E: 1C BC 3E TRB $3EBC C2/1751: F0 0C BEQ $175F C2/1753: A2 06 LDX #$06 (Attack) C2/1755: A9 23 LDA #$23 (Command) C2/1757: 20 91 4E JSR $4E91 C2/175A: A9 20 LDA #$20 C2/175C: 0C A4 11 TSB $11A4 (Set can't be dodged) C2/175F: A9 00 LDA #$00 (Magitek command jumps here) C2/1761: 80 02 BRA $1765 C2/1763: A9 02 LDA #$02 C2/1765: 8D 12 34 STA $3412 C2/1768: BB TYX C2/1769: A5 B6 LDA $B6 C2/176B: 20 C1 19 JSR $19C1 C2/176E: 20 51 29 JSR $2951 C2/1771: A5 B5 LDA $B5 C2/1773: C9 0F CMP #$0F C2/1775: D0 03 BNE $177A C2/1777: 9C A5 11 STZ $11A5 (Set MP cost to 0) C2/177A: 4C 7B 31 JMP $317B Dance C2/177D: B9 F8 3E LDA $3EF8,Y C2/1780: 09 01 ORA #$01 C2/1782: 99 F8 3E STA $3EF8,Y (Set Dance) C2/1785: A9 FF LDA #$FF C2/1787: 85 B7 STA $B7 C2/1789: B9 E1 32 LDA $32E1,Y (Which dance is selected) C2/178C: 10 06 BPL $1794 C2/178E: AD 6F 3A LDA $3A6F C2/1791: 99 E1 32 STA $32E1,Y C2/1794: AE E2 11 LDX $11E2 C2/1797: DF 5B 8E ED CMP $ED8E5B,X (Check if background is same as dance) C2/179B: F0 A4 BEQ $1741 (Branch if it is) C2/179D: 20 53 4B JSR $4B53 C2/17A0: 90 0D BCC $17AF (50% chance of branch) C2/17A2: AA TAX C2/17A3: BF AB F9 D1 LDA $D1F9AB,X C2/17A7: 85 B7 STA $B7 C2/17A9: 8D E2 11 STA $11E2 (Change background to dance background) C2/17AC: 4C 41 17 JMP $1741 Stumble when trying to dance C2/17AF: B9 F8 3E LDA $3EF8,Y C2/17B2: 29 FE AND #$FE C2/17B4: 99 F8 3E STA $3EF8,Y (Clear dance) C2/17B7: BB TYX C2/17B8: A9 06 LDA #$06 C2/17BA: 8D 01 34 STA $3401 (Set to display stumble message) C2/17BD: A9 20 LDA #$20 C2/17BF: 85 B5 STA $B5 C2/17C1: 20 8D 29 JSR $298D C2/17C4: 4C 67 31 JMP $3167 C2/17C7: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/17CA: 18 CLC C2/17CB: BD 68 3B LDA $3B68,X (Battle Power) C2/17CE: 7D 69 3B ADC $3B69,X (???) C2/17D1: 90 02 BCC $17D5 C2/17D3: A9 FF LDA #$FF C2/17D5: 8D A6 11 STA $11A6 (Battle Power or Spell Power) C2/17D8: BD 18 3B LDA $3B18,X (Level) C2/17DB: 8D AF 11 STA $11AF (Level) C2/17DE: BD 2C 3B LDA $3B2C,X (Vigor * 2) C2/17E1: 8D AE 11 STA $11AE (Vigor * 2 or Magic Power) C2/17E4: 60 RTS Possess C2/17E5: BB TYX C2/17E6: 20 C1 19 JSR $19C1 C2/17E9: A9 20 LDA #$20 C2/17EB: 0C A4 11 TSB $11A4 (Set can't be dodged) C2/17EE: A9 A0 LDA #$A0 C2/17F0: 8D A9 11 STA $11A9 (Stores Possess in special effect) C2/17F3: 4C 7B 31 JMP $317B Jump C2/17F6: BB TYX C2/17F7: 20 C1 19 JSR $19C1 C2/17FA: BD 69 3B LDA $3B69,X C2/17FD: F0 09 BEQ $1808 C2/17FF: 38 SEC C2/1800: BD 68 3B LDA $3B68,X (Battle Power) C2/1803: F0 03 BEQ $1808 C2/1805: 20 53 4B JSR $4B53 (0 or 1) C2/1808: 20 9F 29 JSR $299F (Sniper, Offering and more) C2/180B: A9 20 LDA #$20 C2/180D: 8D A4 11 STA $11A4 (Set can't be dodged only) C2/1810: 04 B3 TSB $B3 (Set ignore row) C2/1812: E6 BD INC $BD (Increment damage) C2/1814: BD A8 3C LDA $3CA8,X (Weapon in right hand) C2/1817: 20 12 15 JSR $1512 (Set BD to 2 if spear) C2/181A: BD A9 3C LDA $3CA9,X (Weapon in left hand) C2/181D: 20 12 15 JSR $1512 (Set BD to 2 if spear) C2/1820: BD 44 3C LDA $3C44,X C2/1823: 10 17 BPL $183C (Branch if not jump continously) C2/1825: CE 8E 3A DEC $3A8E C2/1828: 20 5A 4B JSR $4B5A (0 to 255) C2/182B: EE 70 3A INC $3A70 (Add 1 attack) C2/182E: C9 40 CMP #$40 C2/1830: B0 0A BCS $183C (75% chance branch) C2/1832: EE 70 3A INC $3A70 (Add 1 attack) C2/1835: C9 10 CMP #$10 C2/1837: B0 03 BCS $183C (15 in 16 chance branch) C2/1839: EE 70 3A INC $3A70 (Add 1 attack) C2/183C: BD F9 3E LDA $3EF9,X C2/183F: 29 DF AND #$DF C2/1841: 9D F9 3E STA $3EF9,X (Clear hide) C2/1844: 4C 7B 31 JMP $317B Swdtech C2/1847: BB TYX C2/1848: A5 B6 LDA $B6 (Battle animation) C2/184A: 48 PHA C2/184B: 38 SEC C2/184C: E9 55 SBC #$55 C2/184E: 85 B6 STA $B6 C2/1850: 68 PLA C2/1851: 20 C1 19 JSR $19C1 C2/1854: 20 51 29 JSR $2951 C2/1857: A5 B6 LDA $B6 C2/1859: C9 01 CMP #$01 C2/185B: D0 20 BNE $187D C2/185D: BD 4C 3E LDA $3E4C,X C2/1860: 49 01 EOR #$01 C2/1862: 9D 4C 3E STA $3E4C,X (Toggle retort) C2/1865: 4A LSR C2/1866: 90 11 BCC $1879 C2/1868: 66 B6 ROR $B6 C2/186A: 9C A6 11 STZ $11A6 (Sets power to 0) C2/186D: A9 20 LDA #$20 C2/186F: 0C A4 11 TSB $11A4 (Set can't be dodged) C2/1872: A9 01 LDA #$01 C2/1874: 1C A2 11 TRB $11A2 (Sets to magical damage) C2/1877: 80 09 BRA $1882 C2/1879: A9 10 LDA #$10 C2/187B: 14 B0 TRB $B0 C2/187D: A9 04 LDA #$04 C2/187F: 8D 12 34 STA $3412 C2/1882: 4C 7B 31 JMP $317B C2/1885: A5 B6 LDA $B6 C2/1887: E9 A2 SBC #$A2 C2/1889: 85 B6 STA $B6 C2/188B: 80 11 BRA $189E Throw C2/188D: A9 02 LDA #$02 C2/188F: 85 BD STA $BD (Set to increment damage by 100%) C2/1891: A9 10 LDA #$10 C2/1893: 14 B3 TRB $B3 (Clear ignore increment on ignore defense) C2/1895: 80 07 BRA $189E Set to item magic C2/1897: 9C 14 34 STZ $3414 (Set ignore damage modification) C2/189A: A9 80 LDA #$80 C2/189C: 14 B3 TRB $B3 (Set ignore vanish) C2/189E: BB TYX C2/189F: A9 01 LDA #$01 C2/18A1: 8D 12 34 STA $3412 C2/18A4: AD 7D 3A LDA $3A7D C2/18A7: 20 C1 19 JSR $19C1 C2/18AA: A9 10 LDA #$10 C2/18AC: 14 B1 TRB $B1 C2/18AE: D0 05 BNE $18B5 C2/18B0: A9 FF LDA #$FF C2/18B2: 9D F4 32 STA $32F4,X C2/18B5: BD 18 30 LDA $3018,X C2/18B8: 0C 8C 3A TSB $3A8C C2/18BB: A5 B5 LDA $B5 C2/18BD: 90 24 BCC $18E3 C2/18BF: C9 02 CMP #$02 C2/18C1: AD 11 34 LDA $3411 C2/18C4: 20 37 2A JSR $2A37 C2/18C7: AD AA 11 LDA $11AA C2/18CA: 89 C2 BIT #$C2 (Check if Dead, Stone or Zombie attack) C2/18CC: D0 12 BNE $18E0 (Branch if any set) C2/18CE: C2 20 REP #$20 C2/18D0: AD 74 3A LDA $3A74 (Characters that are alive and present) C2/18D3: 0D 42 3A ORA $3A42 C2/18D6: 25 B8 AND $B8 C2/18D8: 85 B8 STA $B8 C2/18DA: E2 20 SEP #$20 C2/18DC: A9 04 LDA #$04 C2/18DE: 14 B3 TRB $B3 C2/18E0: 4C 7B 31 JMP $317B C2/18E3: C9 01 CMP #$01 C2/18E5: D0 07 BNE $18EE C2/18E7: E6 B5 INC $B5 C2/18E9: AD 10 34 LDA $3410 C2/18EC: 85 B6 STA $B6 C2/18EE: 64 BD STZ $BD C2/18F0: 20 51 29 JSR $2951 C2/18F3: A9 02 LDA #$02 C2/18F5: 0C A3 11 TSB $11A3 (Set Not reflectable) C2/18F8: A9 20 LDA #$20 C2/18FA: 0C A4 11 TSB $11A4 (Set unblockable) C2/18FD: A9 08 LDA #$08 C2/18FF: 14 BA TRB $BA (Clear target only dead allies) C2/1901: 9C A5 11 STZ $11A5 C2/1904: 4C 7B 31 JMP $317B GP Rain C2/1907: BB TYX C2/1908: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/190B: EE A6 11 INC $11A6 (Set spell power to 1) C2/190E: A9 60 LDA #$60 C2/1910: 0C A2 11 TSB $11A2 (Set ignore defense, no split damage) C2/1913: 9C 14 34 STZ $3414 (Skip damage modification) C2/1916: E0 08 CPX #$08 C2/1918: 90 05 BCC $191F C2/191A: A9 05 LDA #$05 C2/191C: 8D 12 34 STA $3412 C2/191F: A9 A2 LDA #$A2 C2/1921: 8D A9 11 STA $11A9 (Store GP Rain in special effect) C2/1924: 4C 7B 31 JMP $317B C2/1927: B9 F9 3E LDA $3EF9,Y C2/192A: 89 08 BIT #$08 C2/192C: D0 09 BNE $1937 (Branch if not morph) C2/192E: 98 TYA C2/192F: 4A LSR C2/1930: EB XBA C2/1931: A9 0E LDA #$0E C2/1933: 4C BF 62 JMP $62BF C2/1936: 38 SEC C2/1937: 08 PHP C2/1938: BB TYX C2/1939: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/193C: 28 PLP C2/193D: A9 08 LDA #$08 C2/193F: 8D AD 11 STA $11AD C2/1942: 90 01 BCC $1945 C2/1944: 7B TDC C2/1945: 4A LSR C2/1946: 0C A4 11 TSB $11A4 C2/1949: 4C 67 31 JMP $3167 Row C2/194C: BB TYX C2/194D: BD A1 3A LDA $3AA1,X C2/1950: 49 20 EOR #$20 C2/1952: 9D A1 3A STA $3AA1,X (Toggle Row) C2/1955: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/1958: 4C 67 31 JMP $3167 Runic C2/195B: BB TYX C2/195C: BD 4C 3E LDA $3E4C,X C2/195F: 09 04 ORA #$04 C2/1961: 9D 4C 3E STA $3E4C,X (Set runic) C2/1964: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/1967: 4C 67 31 JMP $3167 C2/196A: BB TYX C2/196B: A9 02 LDA #$02 C2/196D: 20 AB 5B JSR $5BAB C2/1970: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/1973: 4C 67 31 JMP $3167 Control C2/1976: B9 F9 3E LDA $3EF9,Y C2/1979: 89 10 BIT #$10 C2/197B: F0 0A BEQ $1987 (If no spell status) C2/197D: 20 2E 19 JSR $192E C2/1980: B9 B8 32 LDA $32B8,Y C2/1983: A8 TAY C2/1984: 4C 54 15 JMP $1554 (Commands code) C2/1987: BB TYX C2/1988: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/198B: A9 A6 LDA #$A6 C2/198D: 8D A9 11 STA $11A9 (Store control in special effect) C2/1990: A9 01 LDA #$01 C2/1992: 1C A2 11 TRB $11A2 (Sets to magical damage) C2/1995: A9 20 LDA #$20 C2/1997: 0C A4 11 TSB $11A4 (Sets unblockable) C2/199A: 4C 7B 31 JMP $317B Leap C2/199D: BB TYX C2/199E: 20 8A 29 JSR $298A (Clear special effect, magic power, etc.) C2/19A1: A9 A8 LDA #$A8 C2/19A3: 8D A9 11 STA $11A9 (Store Leap in special effect) C2/19A6: A9 01 LDA #$01 C2/19A8: 1C A2 11 TRB $11A2 (Sets to magical damage) C2/19AB: A9 40 LDA #$40 C2/19AD: 85 BB STA $BB (Sets to Cursor start on enemy only) C2/19AF: 4C 7B 31 JMP $317B C2/19B2: A9 0C LDA #$0C C2/19B4: 85 B5 STA $B5 (Sets command to Lore) C2/19B6: 20 5F 17 JSR $175F C2/19B9: A9 21 LDA #$21 C2/19BB: EB XBA C2/19BC: A9 06 LDA #$06 C2/19BE: 4C BF 62 JMP $62BF C2/19C1: EB XBA C2/19C2: A5 B5 LDA $B5 C2/19C4: 4C D3 26 JMP $26D3 Code pointers for commands C2/19C7: C8 15 (Fight) C2/19C9: 97 18 (Item) C2/19CB: 41 17 (Magic) C2/19CD: 36 19 (Morph) C2/19CF: 27 19 (Revert) C2/19D1: 91 15 (Steal) (05) C2/19D3: 10 16 (Capture) C2/19D5: 47 18 (Swdtech) C2/19D7: 8D 18 (Throw) C2/19D9: 85 18 (Tools) C2/19DB: 9D 15 (Blitz) (0A) C2/19DD: 5B 19 (Runic) C2/19DF: 5F 17 (Lore) C2/19E1: 1F 15 (Sketch) C2/19E3: 76 19 (Control) C2/19E5: 26 17 (Slot) C2/19E7: 60 15 (Rage) (10) C2/19E9: 9D 19 (Leap) C2/19EB: 1E 15 (Mimic) C2/19ED: 7D 17 (Dance) C2/19EF: 4C 19 (Row) C2/19F1: 6A 19 (Def.) (15) C2/19F3: F6 17 (Jump) C2/19F5: 41 17 (X-Magic) C2/19F7: 07 19 (GP Rain) C2/19F9: 63 17 (Summon) C2/19FB: 1E 17 (Health) (1A) C2/19FD: 1A 17 (Shock) C2/19FF: E5 17 (Possess) C2/1A01: 5F 17 (Magitek) Code pointers for special commands C2/1A03: B2 19 (1E) C2/1A05: 1E 15 (1F) (Jumps to RTS) C2/1A07: 72 50 (20) (#$F2 Command script) C2/1A09: D1 50 (21) (#$F3 Command script) C2/1A0B: 0B 50 (22) (Poison, Regen, and Seizure Damage) C2/1A0D: 57 4F (23) (#$F7 Command script) C2/1A0F: 97 4F (24) (#$F5 Command script) C2/1A11: CD 50 (25) C2/1A13: 5F 4F (26) (Doom countdown) C2/1A15: DD 50 (27) C1/1A17: 1E 15 (28) (Jumps to RTS) C2/1A19: 61 51 (29) (Remove Stop, Wall, Freeze, or Sleep when time is up) C2/1A1B: DE 20 (2A) (Run) C2/1A1D: 2D 64 (2B) (#$FA Command script) C2/1A1F: A8 51 (2C) C2/1A21: B2 51 (2D) (Drain from being seized) C2/1A23: FA 1D (2E) (#$F8 Command script) C2/1A25: 1A 1E (2F) (#$F9 Command script) C2/1A27: 5E 1E (30) (#$FB Command script) C2/1A29: 1E 15 (31) (Jumps to RTS) C2/1A2B: 1E 15 (32) (Jumps to RTS) C2/1A2D: 1E 15 (33) (Jumps to RTS) C2/1A2F: DA PHX C2/1A30: 08 PHP C2/1A31: A5 B8 LDA $B8 (Targets of attack) C2/1A33: 85 FC STA $FC C2/1A35: 85 FE STA $FE C2/1A37: E2 20 SEP #$20 C2/1A39: 64 F5 STZ $F5 C2/1A3B: 86 F6 STX $F6 C2/1A3D: 20 AF 1A JSR $1AAF C2/1A40: 28 PLP C2/1A41: FA PLX C2/1A42: 60 RTS Read command script C2/1A43: 7B TDC C2/1A44: BF 00 87 CF LDA $CF8700,X C2/1A48: E8 INX C2/1A49: C9 FE CMP #$FE C2/1A4B: B0 F5 BCS $1A42 (Exit if #$FE or #$FF - Done with commands) C2/1A4D: E9 EF SBC #$EF C2/1A4F: 90 F3 BCC $1A44 (Branch if not control command) C2/1A51: DA PHX C2/1A52: AA TAX C2/1A53: BF AF 1D C2 LDA $C21DAF,X (# of bytes following control command) C2/1A57: FA PLX C2/1A58: CA DEX C2/1A59: E8 INX C2/1A5A: 3A DEC C2/1A5B: D0 FC BNE $1A59 C2/1A5D: 80 E5 BRA $1A44 Read 4 bytes from command script C2/1A5F: 08 PHP C2/1A60: C2 20 REP #$20 C2/1A62: A6 F0 LDX $F0 C2/1A64: BF 02 87 CF LDA $CF8702,X C2/1A68: 8D 2E 3A STA $3A2E C2/1A6B: BF 00 87 CF LDA $CF8700,X (Command scripts) C2/1A6F: 8D 2C 3A STA $3A2C C2/1A72: 28 PLP C2/1A73: 60 RTS Command Script #$FD C2/1A74: C2 20 REP #$20 (Set 16-bit Accumulator) C2/1A76: A5 F0 LDA $F0 C2/1A78: 85 F2 STA $F2 C2/1A7A: 60 RTS Command Script #$FE and #$FF C2/1A7B: A9 FF LDA #$FF C2/1A7D: 85 F5 STA $F5 C2/1A7F: 60 RTS C2/1A80: A9 03 LDA #$03 C2/1A82: 20 65 4B JSR $4B65 (0 to 2) C2/1A85: AA TAX C2/1A86: BD 2D 3A LDA $3A2D,X (Byte 1 to 3 of 4 byte command) C2/1A89: C9 FE CMP #$FE C2/1A8B: D0 B5 BNE $1A42 (Exit) C2/1A8D: 68 PLA C2/1A8E: 68 PLA C2/1A8F: 80 23 BRA $1AB4 Command Script #$FC C2/1A91: AD 2D 3A LDA $3A2D (Byte 1 of command) C2/1A94: 0A ASL C2/1A95: AA TAX C2/1A96: FC 55 1D JSR ($1D55,X) C2/1A99: B0 19 BCS $1AB4 C2/1A9B: C2 30 REP #$30 (Set 16-bit A,X, & Y) C2/1A9D: A5 FE LDA $FE C2/1A9F: 85 FC STA $FC C2/1AA1: E2 20 SEP #$20 (Set 8-bit A) C2/1AA3: A6 F0 LDX $F0 C2/1AA5: 20 43 1A JSR $1A43 (Read command script) C2/1AA8: 1A INC C2/1AA9: F0 D0 BEQ $1A7B C2/1AAB: 86 F0 STX $F0 C2/1AAD: E6 F5 INC $F5 C2/1AAF: AD 98 3A LDA $3A98 C2/1AB2: 85 F8 STA $F8 C2/1AB4: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/1AB6: C2 10 REP #$10 (Set 16-bit X, & Y) C2/1AB8: 20 5F 1A JSR $1A5F (Read 4 bytes from command script) C2/1ABB: C9 FC CMP #$FC C2/1ABD: B0 11 BCS $1AD0 (Branch if FD or FE) C2/1ABF: A5 F5 LDA $F5 C2/1AC1: C5 F4 CMP $F4 C2/1AC3: D0 0B BNE $1AD0 C2/1AC5: A9 FF LDA #$FF C2/1AC7: 85 F4 STA $F4 C2/1AC9: A6 F2 LDX $F2 C2/1ACB: 86 F0 STX $F0 C2/1ACD: 20 5F 1A JSR $1A5F (Read 4 bytes from command script) C2/1AD0: 7B TDC C2/1AD1: 38 SEC C2/1AD2: 9B TXY C2/1AD3: AD 2C 3A LDA $3A2C (Command to execute) C2/1AD6: E9 F0 SBC #$F0 C2/1AD8: B0 02 BCS $1ADC (Branch if control command) C2/1ADA: A9 0F LDA #$0F C2/1ADC: AA TAX C2/1ADD: BF AF 1D C2 LDA $C21DAF,X (# of bytes following command) C2/1AE1: AA TAX C2/1AE2: C8 INY C2/1AE3: CA DEX C2/1AE4: D0 FC BNE $1AE2 C2/1AE6: 84 F0 STY $F0 C2/1AE8: E2 10 SEP #$10 (Set 8-bit X, & Y) C2/1AEA: A5 F8 LDA $F8 C2/1AEC: F0 07 BEQ $1AF5 C2/1AEE: AD 2C 3A LDA $3A2C (Command to execute) C2/1AF1: C9 FC CMP #$FC C2/1AF3: 90 A6 BCC $1A9B C2/1AF5: A4 F6 LDY $F6 C2/1AF7: AD 2C 3A LDA $3A2C (Command to execute) C2/1AFA: C9 F0 CMP #$F0 C2/1AFC: 90 27 BCC $1B25 (Branch if not control command) C2/1AFE: 29 0F AND #$0F C2/1B00: 0A ASL C2/1B01: AA TAX C2/1B02: 7C 8F 1D JMP ($1D8F,X) Command Script #$F6 C2/1B05: A9 01 LDA #$01 C2/1B07: EB XBA C2/1B08: AD 2D 3A LDA $3A2D (Item or Throw) C2/1B0B: F0 03 BEQ $1B10 (Branch if item) C2/1B0D: A9 08 LDA #$08 C2/1B0F: EB XBA C2/1B10: AD 2E 3A LDA $3A2E (Item to use or throw) C2/1B13: 8D 2D 3A STA $3A2D C2/1B16: 20 80 1A JSR $1A80 C2/1B19: EB XBA C2/1B1A: 80 0C BRA $1B28 Command Script #$F4 C2/1B1C: 7B TDC C2/1B1D: 20 80 1A JSR $1A80 C2/1B20: 80 06 BRA $1B28 Command Script #$F0 C2/1B22: 20 80 1A JSR $1A80 (Pick which command to use) C2/1B25: 20 BF 1D JSR $1DBF C2/1B28: BB TYX C2/1B29: C2 20 REP #$20 C2/1B2B: 48 PHA C2/1B2C: A5 FC LDA $FC C2/1B2E: 85 B8 STA $B8 C2/1B30: BD E4 3E LDA $3EE4,X C2/1B33: 89 00 20 BIT #$2000 C2/1B36: F0 02 BEQ $1B3A (If not Confuse) C2/1B38: 64 B8 STZ $B8 C2/1B3A: 68 PLA C2/1B3B: 20 B9 03 JSR $03B9 C2/1B3E: 20 E4 03 JSR $03E4 C2/1B41: 20 AD 4E JSR $4EAD C2/1B44: 4C B4 1A JMP $1AB4 Command Script #$F1 C2/1B47: AD 2D 3A LDA $3A2D (Script byte 1) C2/1B4A: 18 CLC C2/1B4B: 20 25 1F JSR $1F25 C2/1B4E: C2 20 REP #$20 C2/1B50: A5 B8 LDA $B8 C2/1B52: 85 FC STA $FC C2/1B54: 4C B4 1A JMP $1AB4 Command Script #$F5 C2/1B57: AD 2F 3A LDA $3A2F C2/1B5A: D0 06 BNE $1B62 C2/1B5C: B9 19 30 LDA $3019,Y C2/1B5F: 8D 2F 3A STA $3A2F C2/1B62: A9 24 LDA #$24 C2/1B64: 80 12 BRA $1B78 Command Script #$F3 C2/1B66: A9 21 LDA #$21 C2/1B68: 80 0E BRA $1B78 Command Script #$FB C2/1B6A: A9 30 LDA #$30 C2/1B6C: 80 0A BRA $1B78 Command Script #$F2 C2/1B6E: A9 20 LDA #$20 C2/1B70: 80 06 BRA $1B78 Command Script #$F8 C2/1B72: A9 2E LDA #$2E C2/1B74: 80 02 BRA $1B78 Command Script #$F9 C2/1B76: A9 2F LDA #$2F C2/1B78: EB XBA C2/1B79: AD 2D 3A LDA $3A2D C2/1B7C: EB XBA C2/1B7D: C2 20 REP #$20 (Set 16-bit Accumulator) C2/1B7F: 8D 7A 3A STA $3A7A C2/1B82: AD 2E 3A LDA $3A2E C2/1B85: 85 B8 STA $B8 C2/1B87: BB TYX C2/1B88: 20 AD 4E JSR $4EAD C2/1B8B: 4C B4 1A JMP $1AB4 Command Script #$F7 C2/1B8E: BB TYX C2/1B8F: A9 23 LDA #$23 C2/1B91: 8D 7A 3A STA $3A7A C2/1B94: AD 2D 3A LDA $3A2D C2/1B97: 8D 7B 3A STA $3A7B C2/1B9A: 20 AD 4E JSR $4EAD C2/1B9D: 4C B4 1A JMP $1AB4 Command Script #$FA C2/1BA0: BB TYX C2/1BA1: AD 2D 3A LDA $3A2D C2/1BA4: EB XBA C2/1BA5: A9 2B LDA #$2B C2/1BA7: C2 20 REP #$20 C2/1BA9: 8D 7A 3A STA $3A7A C2/1BAC: AD 2E 3A LDA $3A2E C2/1BAF: 85 B8 STA $B8 C2/1BB1: 20 AD 4E JSR $4EAD C2/1BB4: 4C B4 1A JMP $1AB4 Command 06 for FC C2/1BB7: 20 34 1D JSR $1D34 (Set who to check for using command 17) C2/1BBA: 90 0B BCC $1BC7 (Exit if no counter for command 17) C2/1BBC: 7B TDC C2/1BBD: AD 2F 3A LDA $3A2F C2/1BC0: EB XBA C2/1BC1: C2 20 REP #$20 C2/1BC3: 4A LSR C2/1BC4: D9 F4 3B CMP $3BF4,Y (Compare HP vs. second byte * 128) C2/1BC7: 60 RTS Command 07 for FC C2/1BC8: 20 34 1D JSR $1D34 (Do command 17 for FC) C2/1BCB: 90 09 BCC $1BD6 (Exit if no counter for command 17) C2/1BCD: 7B TDC C2/1BCE: AD 2F 3A LDA $3A2F (Second byte for FC) C2/1BD1: C2 20 REP #$20 C2/1BD3: D9 08 3C CMP $3C08,Y (Compare MP vs. second byte) C2/1BD6: 60 RTS Command 08 for FC C2/1BD7: 20 34 1D JSR $1D34 (Do command 17 for FC) C2/1BDA: 90 49 BCC $1C25 (Exit if no counter for command 17) C2/1BDC: AD 2F 3A LDA $3A2F (Second byte for FC) C2/1BDF: C9 10 CMP #$10 C2/1BE1: 90 0B BCC $1BEE (Branch if less than #$10) C2/1BE3: C2 20 REP #$20 (Set 8-bit A) C2/1BE5: AD 74 3A LDA $3A74 C2/1BE8: 25 FC AND $FC (Clear dead targets) C2/1BEA: 85 FC STA $FC C2/1BEC: E2 20 SEP #$20 (Set 8-bit Accumulator) C2/1BEE: A9 10 LDA #$10 C2/1BF0: 1C 2F 3A TRB $3A2F (Second byte for FC) C2/1BF3: C2 20 REP #$20 (Set 16-bit Accumulator) C2/1BF5: D0 05 BNE $1BFC (Branch if FC over #$10) C2/1BF7: A9 E4 3E LDA #$3EE4 (Status byte 1) C2/1BFA: 80 03 BRA $1BFF C2/1BFC: A9 F8 3E LDA #$3EF8 (Status byte 3) C2/1BFF: 85 FA STA $FA C2/1C01: AE 2F 3A LDX $3A2F (Second byte for FC) C2/1C04: 20 2D 1D JSR $1D2D (Set bit #X in A) C2/1C07: 85 EE STA $EE C2/1C09: A0 12 LDY #$12 C2/1C0B: B1 FA LDA ($FA),Y C2/1C0D: 24 EE BIT $EE C2/1C0F: D0 05 BNE $1C16 C2/1C11: B9 18 30 LDA $3018,Y C2/1C14: 14 FC TRB $FC C2/1C16: 88 DEY C2/1C17: 88 DEY C2/1C18: 10 F1 BPL $1C0B C2/1C1A: 18 CLC C2/1C1B: A5 FC LDA $FC C2/1C1D: F0 06 BEQ $1C25 C2/1C1F: 20 2A 52 JSR $522A (Pick a random bit that is set) C2/1C22: 85 FC STA $FC C2/1C24: 38 SEC C2/1C25: 60 RTS Command 09 for FC C2/1C26: 20 D7 1B JSR $1BD7 (Do command 08 for FC) C2/1C29: 4C 26 1D JMP $1D26 Command 1A for FC C2/1C2C: 20 34 1D JSR $1D34 (Do command 17 for FC) C2/1C2F: 90 09 BCC $1C3A C2/1C31: B9 E0 3B LDA $3BE0,Y C2/1C34: 2C 2F 3A BIT $3A2F C2/1C37: D0 01 BNE $1C3A C2/1C39: 18 CLC C2/1C3A: 60 RTS Command 02 for FC C2/1C3B: 98 TYA C2/1C3C: 69 13 ADC #$13 C2/1C3E: A8 TAY C2/1C3F: C8 INY (Command 03 for FC jumps here) C2/1C40: BB TYX (Command 01 for FC jumps here) C2/1C41: BC 90 32 LDY $3290,X C2/1C44: 30 0D BMI $1C53 C2/1C46: BD 48 3D LDA $3D48,X C2/1C49: CD 2E 3A CMP $3A2E C2/1C4C: F0 07 BEQ $1C55 C2/1C4E: CD 2F 3A CMP $3A2F C2/1C51: F0 02 BEQ $1C55 C2/1C53: 18 CLC C2/1C54: 60 RTS C2/1C55: C2 20 REP #$20 C2/1C57: B9 18 30 LDA $3018,Y C2/1C5A: 85 FC STA $FC C2/1C5C: 38 SEC C2/1C5D: 60 RTS Command 04 for FC C2/1C5E: 98 TYA C2/1C5F: 69 15 ADC #$15 C2/1C61: AA TAX C2/1C62: BC 90 32 LDY $3290,X C2/1C65: 30 08 BMI $1C6F C2/1C67: BD 48 3D LDA $3D48,X C2/1C6A: 2C 2E 3A BIT $3A2E C2/1C6D: D0 E6 BNE $1C55 C2/1C6F: 60 RTS Command 05 for FC C2/1C70: BB TYX C2/1C71: BC 7C 32 LDY $327C,X C2/1C74: 30 08 BMI $1C7E C2/1C76: C2 20 REP #$20 C2/1C78: B9 18 30 LDA $3018,Y C2/1C7B: 85 FC STA $FC C2/1C7D: 38 SEC C2/1C7E: 60 RTS Command 16 for FC C2/1C7F: C2 20 REP #$20 C2/1C81: AD 44 3A LDA $3A44 C2/1C84: 80 05 BRA $1C8B Command 0B for FC C2/1C86: C2 20 REP #$20 C2/1C88: B9 C0 3D LDA $3DC0,Y C2/1C8B: 4A LSR C2/1C8C: CD 2E 3A CMP $3A2E C2/1C8F: 60 RTS Command 0D for FC C2/1C90: AE 2E 3A LDX $3A2E (First byte for FC) C2/1C93: 20 45 1E JSR $1E45 ($EE = variable #X) C2/1C96: A5 EE LDA $EE C2/1C98: CD 2F 3A CMP $3A2F C2/1C9B: 60 RTS Command 0C for FC C2/1C9C: 20 90 1C JSR $1C90 (Do command 0D for FC) C2/1C9F: 4C 26 1D JMP $1D26 Command 14 for FC C2/1CA2: AE 2F 3A LDX $3A2F (Second byte for FC) C2/1CA5: 20 2D 1D JSR $1D2D (Set bit #X in A) C2/1CA8: AE 2E 3A LDX $3A2E (First byte for FC) C2/1CAB: 20 45 1E JSR $1E45 ($EE = variable #X) C2/1CAE: 24 EE BIT $EE C2/1CB0: F0 01 BEQ $1CB3 C2/1CB2: 38 SEC C2/1CB3: 60 RTS Command 15 for FC C2/1CB4: 20 A2 1C JSR $1CA2 (Do command 14 for FC) C2/1CB7: 4C 26 1D JMP $1D26 Command 0F for FC C2/1CBA: 20 34 1D JSR $1D34 (Do command 17 for FC) C2/1CBD: 90 06 BCC $1CC5 C2/1CBF: B9 18 3B LDA $3B18,Y (Level) C2/1CC2: CD 2F 3A CMP $3A2F C2/1CC5: 60 RTS Command 0E for FC C2/1CC6: 20 BA 1C JSR $1CBA (Do command 0F for FC) C2/1CC9: 4C 26 1D JMP $1D26 Command 10 for FC C2/1CCC: A9 01 LDA #$01 C2/1CCE: CD CA 3E CMP $3ECA (Only counter if one type of monster active) C2/1CD1: 60 RTS Command 19 for FC C2/1CD2: B9 19 30 LDA $3019,Y C2/1CD5: 2C 2E 3A BIT $3A2E C2/1CD8: F0 01 BEQ $1CDB C2/1CDA: 38 SEC C2/1CDB: 60 RTS Command 11 for FC C2/1CDC: 20 EE 1D JSR $1DEE C2/1CDF: AD 75 3A LDA $3A75 C2/1CE2: 80 0B BRA $1CEF Command 12 for FC C2/1CE4: 64 F8 STZ $F8 C2/1CE6: 20 EE 1D JSR $1DEE C2/1CE9: AD 73 3A LDA $3A73 C2/1CEC: 4D 75 3A EOR $3A75 C2/1CEF: 2D 2E 3A AND $3A2E C2/1CF2: CD 2E 3A CMP $3A2E C2/1CF5: 18 CLC C2/1CF6: D0 01 BNE $1CF9 C2/1CF8: 38 SEC C2/1CF9: 60 RTS Command 13 for FC C2/1CFA: AD 2E 3A LDA $3A2E (First byte for FC) C2/1CFD: D0 07 BNE $1D06 C2/1CFF: AD 76 3A LDA $3A76 C2/1D02: CD 2F 3A CMP $3A2F (Second byte for FC) C2/1D05: 60 RTS C2/1D06: AD 2F 3A LDA $3A2F (Second byte for FC) C2/1D09: CD 77 3A CMP $3A77 C2/1D0C: 60 RTS Command 18 for FC C2/1D0D: AD DF 1E LDA $1EDF C2/1D10: 89 08 BIT #$08 C2/1D12: D0 01 BNE $1D15 C2/1D14: 38 SEC C2/1D15: 60 RTS Command 1B for FC C2/1D16: C2 20 REP #$20 C2/1D18: AD 2E 3A LDA $3A2E (First byte for FC) C2/1D1B: CD E0 11 CMP $11E0 (Battle formation) C2/1D1E: F0 01 BEQ $1D21 C2/1D20: 18 CLC C2/1D21: 60 RTS