If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Final Fantasy VI/ROM map/Assembly C12
< Final Fantasy VI | ROM map
Jump to navigation
Jump to search
This is a sub-page of Final Fantasy VI/ROM map.
C1/2020 unknow
C1/2020: 7B TDC (from C1/23DA, C1/2499, C1/257C) C1/2021: AA TAX C1/2022: 9D3FAE STA $AE3F,X C1/2025: 9D3FBE STA $BE3F,X C1/2028: E8 INX C1/2029: E00010 CPX #$1000 C1/202C: D0F4 BNE $2022 C1/202E: 60 RTS
C1/202F unknow
C1/202F: AD A7 81 LDA $81A7 (enemy # in formation?) (from only C1/2084?) C1/2032: 0A ASL C1/2033: A8 TAY (Y = enemy # in formation * 2) C1/2034: C2 20 REP #$20 (set 16-bit accumulator) C1/2036: B9 2F 81 LDA $812F,Y (adjusted enemy width/8 and height/8) C1/2039: 85 22 STA $22 (store it: $22 = width, $23 = height) C1/203B: 29 FF 00 AND #$00FF (isolate the width/8) C1/203E: 0A ASL (width/8 * 2) C1/203F: AA TAX C1/2040: BF 70 BB C2 LDA $C2BB70,X (lookup some other width from tiles-width pointer?) C1/2044: 85 26 STA $26 C1/2046: A5 23 LDA $23 C1/2048: 29 FF 00 AND #$00FF (now isolate height/8) C1/204B: 0A ASL (height/8 * 2) C1/204C: AA TAX C1/204D: BF 92 BB C2 LDA $C2BB92,X (lookup some other height from tiles-height pointer?) C1/2051: 18 CLC C1/2052: 65 26 ADC $26 C1/2054: 85 26 STA $26 (bottom byte of $26 = some width, top = some height) C1/2056: 7B TDC C1/2057: E2 20 SEP #$20 (set 8-bit accumulator) C1/2059: 60 RTS
C1/205A unknow
C1/205A: 8D A7 81 STA $81A7 C1/205D: 0A ASL (monster index in formation * 2) C1/205E: AA TAX C1/205F: DA PHX C1/2060: C2 20 REP #$20 (Set 16-bit accumulator) C1/2062: 64 26 STZ $26 C1/2064: BD 01 20 LDA $2001,X (get monster #) C1/2067: 0A ASL C1/2068: 0A ASL C1/2069: 18 CLC C1/206A: 7D 01 20 ADC $2001,X C1/206D: AA TAX (X = monster # x 5) C1/206E: BF 02 70 D2 LDA $D27002,X (get index to palette) C1/2072: EB XBA C1/2073: 29 FF 03 AND #$03FF (save palette index, zeroing out stencil bit and others) C1/2076: 85 16 STA $16 C1/2078: 7B TDC C1/2079: E2 20 SEP #$20 (Set 8-bit accumulator) C1/207B: AD A7 81 LDA $81A7 C1/207E: A8 TAY C1/207F: B9 C2 62 LDA $62C2,Y C1/2082: F0 06 BEQ $208A C1/2084: 20 2F 20 JSR $202F C1/2087: A2 16 08 LDX #$0816 C1/208A: C2 20 REP #$20 (set 16-bit accumulator) C1/208C: BF 00 70 D2 LDA $D27000,X (tile bank pointer) C1/2090: 29 FF 7F AND #$7FFF (zero out top bit that indicates 8 vs 16 colors) C1/2093: 8D A8 81 STA $81A8 C1/2096: 7B TDC (clear accumulator) C1/2097: E2 20 SEP #$20 (Set 8-bit accumulator) C1/2099: BF 01 70 D2 LDA $D27001,X C1/209D: 29 80 AND #$80 (get bit indicating 8 vs 16 color bitmap) C1/209F: 8D AC 81 STA $81AC C1/20A2: BF 02 70 D2 LDA $D27002,X C1/20A6: 4A LSR C1/20A7: 0D AC 81 ORA $81AC C1/20AA: 8D AC 81 STA $81AC C1/20AD: 4A LSR C1/20AE: 4A LSR C1/20AF: 4A LSR C1/20B0: 4A LSR C1/20B1: 4A LSR C1/20B2: 29 01 AND #$01 (isolate stencil bit) C1/20B4: 8D AB 81 STA $81AB C1/20B7: BF 04 70 D2 LDA $D27004,X (index to map used) C1/20BB: 8D AA 81 STA $81AA C1/20BE: AD A7 81 LDA $81A7 C1/20C1: 0A ASL C1/20C2: 0A ASL C1/20C3: AA TAX (X = monster # in formation * 4) C1/20C4: 86 10 STX $10 (^mould templates are 4 bytes each) C1/20C6: A9 C2 LDA #$C2 C1/20C8: 85 14 STA $14 C1/20CA: AD 00 20 LDA $2000 (group formation mould index?) C1/20CD: 0A ASL C1/20CE: AA TAX C1/20CF: C2 20 REP #$20 (Set 16-bit Accumulator) C1/20D1: BF 1A D0 C2 LDA $C2D01A,X (pointer table to mould info) C1/20D5: 18 CLC C1/20D6: 65 10 ADC $10 C1/20D8: 85 12 STA $12 (point to special mould index, specific enemy slot) C1/20DA: A7 12 LDA [$12] (get 1st two bytes, which seem to be byte panning) C1/20DC: 18 CLC C1/20DD: 69 3F AE ADC #$AE3F C1/20E0: 65 26 ADC $26 C1/20E2: 85 61 STA $61 C1/20E4: E6 12 INC $12 C1/20E6: E6 12 INC $12 (point to mould info bytes 3 and 4) C1/20E8: A7 12 LDA [$12] C1/20EA: 8D 56 82 STA $8256 (save width/8 in 8256, and height/8 in 8257) C1/20ED: AD A8 81 LDA $81A8 (get tile bank pointer) C1/20F0: 0A ASL C1/20F1: 0A ASL C1/20F2: 0A ASL (multiply by 8) C1/20F3: 85 64 STA $64 C1/20F5: 9C 54 82 STZ $8254 C1/20F8: FA PLX (retrieve X, which was monster formation # x 2) C1/20F9: A5 16 LDA $16 (palette index) C1/20FB: 9D 17 81 STA $8117,X C1/20FE: 7B TDC (clear accumulator) C1/20FF: E2 20 SEP #$20 (set 8-bit accumulator) C1/2101: AD A9 81 LDA $81A9 C1/2104: 4A LSR C1/2105: 4A LSR C1/2106: 4A LSR C1/2107: 4A LSR C1/2108: 4A LSR C1/2109: 85 66 STA $66 C1/210B: A5 64 LDA $64 C1/210D: 18 CLC C1/210E: 69 00 ADC #$00 C1/2110: 85 64 STA $64 C1/2112: A5 65 LDA $65 C1/2114: 69 70 ADC #$70 C1/2116: 85 65 STA $65 C1/2118: A5 66 LDA $66 C1/211A: 69 E9 ADC #$E9 C1/211C: 85 66 STA $66 C1/211E: 60 RTS
C1/211F unknow
C1/211F: 20 5F 21 JSR $215F C1/2122: AD 58 82 LDA $8258 C1/2125: AA TAX C1/2126: BD C2 62 LDA $62C2,X C1/2129: D0 33 BNE $215E C1/212B: AD 58 82 LDA $8258 C1/212E: 0A ASL C1/212F: AA TAX (X = enemy # in formation * 2) C1/2130: AD 51 82 LDA $8251 C1/2133: 9D 2F 81 STA $812F,X (save adjusted enemy width/8) C1/2136: AD 53 82 LDA $8253 C1/2139: 9D 30 81 STA $8130,X (save adjusted enemy height/8) C1/213C: DA PHX C1/213D: C2 20 REP #$20 (set 16-bit accumulator) C1/213F: BD 01 20 LDA $2001,X C1/2142: C9 06 01 CMP #$0106 (is enemy the GhostTrain?) C1/2145: D0 08 BNE $214F (if not, branch) C1/2147: 48 PHA (save accumulator) C1/2148: A9 10 0E LDA #$0E10 (if it was, use hardcoded image dimensions) C1/214B: 9D 2F 81 STA $812F,X (Store that adjusted width/8 and height/8) C1/214E: 68 PLA (restore accumulator) C1/214F: AA TAX C1/2150: BF 00 36 CF LDA $CF3600,X C1/2154: FA PLX C1/2155: 29 FF 00 AND #$00FF C1/2158: 9D 57 80 STA $8057,X C1/215B: 7B TDC C1/215C: E2 20 SEP #$20 C1/215E: 60 RTS
C1/215F unknow
C1/215F: 7B TDC (from C1/211F, C1/24E5) C1/2160: AA TAX C1/2161: 9D2D82 STA $822D,X C1/2164: E8 INX C1/2165: E02000 CPX #$0020 C1/2168: D0F7 BNE $2161 C1/216A: ADAC81 LDA $81AC C1/216D: 2940 AND #$40 C1/216F: D024 BNE $2195 C1/2171: C220 REP #$20 C1/2173: ADAA81 LDA $81AA C1/2176: 0A ASL A C1/2177: 0A ASL A C1/2178: 0A ASL A C1/2179: 18 CLC C1/217A: 6F20A8D2 ADC $D2A820 C1/217E: AA TAX C1/217F: 7B TDC C1/2180: E220 SEP #$20 C1/2182: A400 LDY $00 C1/2184: BF0000D2 LDA $D20000,X C1/2188: 992D82 STA $822D,Y C1/218B: C8 INY C1/218C: C8 INY C1/218D: E8 INX C1/218E: C01000 CPY #$0010 C1/2191: D0F1 BNE $2184 C1/2193: 8023 BRA $21B8 C1/2195: C220 REP #$20 C1/2197: ADAA81 LDA $81AA C1/219A: 0A ASL A C1/219B: 0A ASL A C1/219C: 0A ASL A C1/219D: 0A ASL A C1/219E: 0A ASL A C1/219F: 18 CLC C1/21A0: 6F22A8D2 ADC $D2A822 (Load Pointer to 16-High Monster Composition Data) C1/21A4: AA TAX C1/21A5: 7B TDC C1/21A6: E220 SEP #$20 C1/21A8: A400 LDY $00 C1/21AA: BF0000D2 LDA $D20000,X C1/21AE: 992D82 STA $822D,Y C1/21B1: C8 INY C1/21B2: E8 INX C1/21B3: C02000 CPY #$0020 C1/21B6: D0F2 BNE $21AA C1/21B8: A600 LDX $00 C1/21BA: C220 REP #$20 C1/21BC: 6410 STZ $10 C1/21BE: BD2D82 LDA $822D,X C1/21C1: F00B BEQ $21CE C1/21C3: 0510 ORA $10 C1/21C5: 8510 STA $10 C1/21C7: E8 INX C1/21C8: E8 INX C1/21C9: E02000 CPX #$0020 C1/21CC: D0F0 BNE $21BE C1/21CE: A400 LDY $00 C1/21D0: A510 LDA $10 C1/21D2: EB XBA C1/21D3: 8510 STA $10 C1/21D5: 0610 ASL $10 C1/21D7: 9002 BCC $21DB C1/21D9: 8412 STY $12 C1/21DB: C8 INY C1/21DC: C01000 CPY #$0010 C1/21DF: D0F4 BNE $21D5 C1/21E1: 7B TDC C1/21E2: E220 SEP #$20 C1/21E4: 8A TXA C1/21E5: 4A LSR A C1/21E6: CD5782 CMP $8257 C1/21E9: 9003 BCC $21EE C1/21EB: AD5782 LDA $8257 C1/21EE: 8D5382 STA $8253 C1/21F1: A512 LDA $12 C1/21F3: 1A INC A C1/21F4: CD5682 CMP $8256 C1/21F7: 9003 BCC $21FC C1/21F9: AD5682 LDA $8256 C1/21FC: 8D5182 STA $8251 C1/21FF: 8D5282 STA $8252 C1/2202: 9C4D82 STZ $824D C1/2205: 9C4E82 STZ $824E C1/2208: 60 RTS
C1/2209 unknow
C1/2209: AD4D82 LDA $824D (from C1/22A7, C1/237F) C1/220C: D01B BNE $2229 C1/220E: A910 LDA #$10 C1/2210: 8D4D82 STA $824D C1/2213: AD4E82 LDA $824E C1/2216: AA TAX C1/2217: BD2D82 LDA $822D,X C1/221A: 8D5082 STA $8250 C1/221D: BD2E82 LDA $822E,X C1/2220: 8D4F82 STA $824F C1/2223: EE4E82 INC $824E C1/2226: EE4E82 INC $824E C1/2229: CE4D82 DEC $824D C1/222C: 0E4F82 ASL $824F C1/222F: 2E5082 ROL $8250 C1/2232: 60 RTS
C1/2233 unknow
C1/2233: 5A PHY (from C1/22AC, C1/2384) C1/2234: C220 REP #$20 C1/2236: 98 TYA C1/2237: 18 CLC C1/2238: 6561 ADC $61 C1/223A: 8510 STA $10 C1/223C: 7B TDC C1/223D: E220 SEP #$20 C1/223F: ADAC81 LDA $81AC C1/2242: 1037 BPL $227B C1/2244: C220 REP #$20 C1/2246: AD5482 LDA $8254 C1/2249: A8 TAY C1/224A: 18 CLC C1/224B: 691800 ADC #$0018 C1/224E: 8D5482 STA $8254 C1/2251: A90800 LDA #$0008 C1/2254: 8512 STA $12 C1/2256: B764 LDA [$64],Y C1/2258: 9210 STA ($10) C1/225A: E610 INC $10 C1/225C: E610 INC $10 C1/225E: C8 INY C1/225F: C8 INY C1/2260: C612 DEC $12 C1/2262: D0F2 BNE $2256 C1/2264: A90800 LDA #$0008 C1/2267: 8512 STA $12 C1/2269: B764 LDA [$64],Y C1/226B: 29FF00 AND #$00FF C1/226E: 9210 STA ($10) C1/2270: E610 INC $10 C1/2272: E610 INC $10 C1/2274: C8 INY C1/2275: C612 DEC $12 C1/2277: D0F0 BNE $2269 C1/2279: 8020 BRA $229B C1/227B: C220 REP #$20 C1/227D: AD5482 LDA $8254 C1/2280: A8 TAY C1/2281: 18 CLC C1/2282: 692000 ADC #$0020 C1/2285: 8D5482 STA $8254 C1/2288: A91000 LDA #$0010 C1/228B: 8512 STA $12 C1/228D: B764 LDA [$64],Y C1/228F: 9210 STA ($10) C1/2291: E610 INC $10 C1/2293: E610 INC $10 C1/2295: C8 INY C1/2296: C8 INY C1/2297: C612 DEC $12 C1/2299: D0F2 BNE $228D C1/229B: 68 PLA C1/229C: 18 CLC C1/229D: 692000 ADC #$0020 C1/22A0: A8 TAY C1/22A1: 7B TDC C1/22A2: E220 SEP #$20 C1/22A4: 60 RTS
C1/22A5 unknow
C1/22A5: A400 LDY $00 (from C1/24A2, C1/25AA) C1/22A7: 200922 JSR $2209 C1/22AA: 9005 BCC $22B1 C1/22AC: 203322 JSR $2233 C1/22AF: 800B BRA $22BC C1/22B1: C220 REP #$20 C1/22B3: 98 TYA C1/22B4: 18 CLC C1/22B5: 692000 ADC #$0020 C1/22B8: A8 TAY C1/22B9: 7B TDC C1/22BA: E220 SEP #$20 C1/22BC: CE5282 DEC $8252 C1/22BF: D0E6 BNE $22A7 C1/22C1: 9C4D82 STZ $824D C1/22C4: AD5182 LDA $8251 C1/22C7: 8D5282 STA $8252 C1/22CA: C220 REP #$20 C1/22CC: A561 LDA $61 C1/22CE: 18 CLC C1/22CF: 690002 ADC #$0200 C1/22D2: 8561 STA $61 C1/22D4: 7B TDC C1/22D5: E220 SEP #$20 C1/22D7: CE5382 DEC $8253 C1/22DA: D0C9 BNE $22A5 C1/22DC: 60 RTS
C1/22DD unknow
C1/22DD: C220 REP #$20 (from C1/1118, C1/936C) C1/22DF: 6410 STZ $10 C1/22E1: A600 LDX $00 C1/22E3: BD1781 LDA $8117,X C1/22E6: C9FFFF CMP #$FFFF C1/22E9: F017 BEQ $2302 C1/22EB: A400 LDY $00 C1/22ED: D92381 CMP $8123,Y C1/22F0: F010 BEQ $2302 C1/22F2: C8 INY C1/22F3: C8 INY C1/22F4: C00C00 CPY #$000C C1/22F7: D0F4 BNE $22ED C1/22F9: A410 LDY $10 C1/22FB: 992381 STA $8123,Y C1/22FE: C8 INY C1/22FF: C8 INY C1/2300: 8410 STY $10 C1/2302: E8 INX C1/2303: E8 INX C1/2304: E00C00 CPX #$000C C1/2307: D0DA BNE $22E3 C1/2309: A600 LDX $00 C1/230B: BD1781 LDA $8117,X C1/230E: A400 LDY $00 C1/2310: D92381 CMP $8123,Y C1/2313: F009 BEQ $231E C1/2315: C8 INY C1/2316: C8 INY C1/2317: C00600 CPY #$0006 C1/231A: D0F4 BNE $2310 C1/231C: A400 LDY $00 C1/231E: 98 TYA C1/231F: 4A LSR A C1/2320: 0A ASL A C1/2321: 9DDB80 STA $80DB,X C1/2324: A93100 LDA #$0031 C1/2327: 9DDC80 STA $80DC,X C1/232A: A92000 LDA #$0020 C1/232D: 9D0081 STA $8100,X C1/2330: E8 INX C1/2331: E8 INX C1/2332: E00C00 CPX #$000C C1/2335: D0D4 BNE $230B C1/2337: A9007F LDA #$7F00 C1/233A: 8510 STA $10 C1/233C: A400 LDY $00 C1/233E: B92381 LDA $8123,Y C1/2341: 0A ASL A C1/2342: 0A ASL A C1/2343: 0A ASL A C1/2344: 0A ASL A C1/2345: AA TAX C1/2346: 5A PHY C1/2347: A400 LDY $00 C1/2349: BF2078D2 LDA $D27820,X (Monster palette) C1/234D: 9110 STA ($10),Y C1/234F: E8 INX C1/2350: E8 INX C1/2351: C8 INY C1/2352: C8 INY C1/2353: C02000 CPY #$0020 C1/2356: D0F1 BNE $2349 C1/2358: A510 LDA $10 C1/235A: 18 CLC C1/235B: 692000 ADC #$0020 C1/235E: 8510 STA $10 C1/2360: 7A PLY C1/2361: C8 INY C1/2362: C8 INY C1/2363: C00600 CPY #$0006 C1/2366: D0D6 BNE $233E C1/2368: 7B TDC C1/2369: E220 SEP #$20 C1/236B: 60 RTS
C1/236C unknow
C1/236C: A000C5 LDY #$C500 (from only C1/2403) C1/236F: 8414 STY $14 C1/2371: A97F LDA #$7F C1/2373: 8516 STA $16 C1/2375: 6418 STZ $18 C1/2377: 7B TDC C1/2378: AA TAX C1/2379: 861A STX $1A C1/237B: A400 LDY $00 C1/237D: 641C STZ $1C C1/237F: 200922 JSR $2209 C1/2382: 9015 BCC $2399 C1/2384: 203322 JSR $2233 C1/2387: 5A PHY C1/2388: A41A LDY $1A C1/238A: A518 LDA $18 C1/238C: 9714 STA [$14],Y C1/238E: C8 INY C1/238F: C8 INY C1/2390: 841A STY $1A C1/2392: E618 INC $18 C1/2394: E61C INC $1C C1/2396: 7A PLY C1/2397: 800C BRA $23A5 C1/2399: 5A PHY C1/239A: A41A LDY $1A C1/239C: A93F LDA #$3F C1/239E: 9714 STA [$14],Y C1/23A0: C8 INY C1/23A1: C8 INY C1/23A2: 841A STY $1A C1/23A4: 7A PLY C1/23A5: CE5282 DEC $8252 C1/23A8: D0D5 BNE $237F C1/23AA: 9C4D82 STZ $824D C1/23AD: AD5182 LDA $8251 C1/23B0: 8D5282 STA $8252 C1/23B3: A51C LDA $1C C1/23B5: C220 REP #$20 C1/23B7: 0A ASL A C1/23B8: 0A ASL A C1/23B9: 0A ASL A C1/23BA: 0A ASL A C1/23BB: 0A ASL A C1/23BC: 851C STA $1C C1/23BE: A514 LDA $14 C1/23C0: 18 CLC C1/23C1: 690001 ADC #$0100 C1/23C4: 8514 STA $14 C1/23C6: A561 LDA $61 C1/23C8: 18 CLC C1/23C9: 651C ADC $1C C1/23CB: 8561 STA $61 C1/23CD: 641A STZ $1A C1/23CF: 7B TDC C1/23D0: E220 SEP #$20 C1/23D2: CE5382 DEC $8253 C1/23D5: D0A4 BNE $237B C1/23D7: 60 RTS
C1/23D8 unknow
C1/23D8: 8610 STX $10 (from C1/2400, C1/240A) C1/23DA: 202020 JSR $2020 C1/23DD: 20F524 JSR $24F5 C1/23E0: 4CE524 JMP $24E5
C1/23E3 unknow
C1/23E3: A93F LDA #$3F (from C1/2406, C1/244E) C1/23E5: 8514 STA $14 C1/23E7: A97E LDA #$7E C1/23E9: A23FAE LDX #$AE3F C1/23EC: 2227C0C2 JSL $C2C027 C1/23F0: A20020 LDX #$2000 C1/23F3: 8610 STX $10 C1/23F5: A200C4 LDX #$C400 C1/23F8: A00000 LDY #$0000 C1/23FB: A97F LDA #$7F C1/23FD: 4C8D19 JMP $198D
C1/2400 unknow
C1/2400: 20D823 JSR $23D8 C1/2403: 206C23 JSR $236C C1/2406: 20E323 JSR $23E3 C1/2409: 6B RTL
C1/240A unknow
C1/240A: 20D823 JSR $23D8 C1/240D: A000CA LDY #$CA00 C1/2410: 206F23 JSR $236F C1/2413: 8B PHB C1/2414: A97F LDA #$7F C1/2416: 48 PHA C1/2417: AB PLB C1/2418: 7B TDC C1/2419: AA TAX C1/241A: BD10CA LDA $CA10,X C1/241D: 9D00CE STA $CE00,X C1/2420: A93F LDA #$3F C1/2422: 9D10CA STA $CA10,X C1/2425: BD10CB LDA $CB10,X C1/2428: 9D00CF STA $CF00,X C1/242B: A93F LDA #$3F C1/242D: 9D10CB STA $CB10,X C1/2430: BD10CC LDA $CC10,X C1/2433: 9D00D0 STA $D000,X C1/2436: A93F LDA #$3F C1/2438: 9D10CC STA $CC10,X C1/243B: BD10CD LDA $CD10,X C1/243E: 9D00D1 STA $D100,X C1/2441: A93F LDA #$3F C1/2443: 9D10CD STA $CD10,X C1/2446: E8 INX C1/2447: E8 INX C1/2448: E01000 CPX #$0010 C1/244B: D0CD BNE $241A C1/244D: AB PLB C1/244E: 20E323 JSR $23E3 C1/2451: 6B RTL
C1/2452 unknow
C1/2452: 205624 JSR $2456 (from C2/EAB6, C2/F10C, C2/F198, C2/F206, C2/F234) C1/2455: 6B RTL
C1/2456: 209724 JSR $2497 (from only C1/2452) C1/2459: A20018 LDX #$1800 C1/245C: 8610 STX $10 C1/245E: A23FAE LDX #$AE3F C1/2461: A00000 LDY #$0000 C1/2464: A97E LDA #$7E C1/2466: 4C8D19 JMP $198D
C1/2469 unknow
C1/2469: A28F01 LDX #$018F (from C2/BBB8) C1/246C: 209724 JSR $2497 C1/246F: A20008 LDX #$0800 C1/2472: 8610 STX $10 C1/2474: A23FAE LDX #$AE3F C1/2477: A00020 LDY #$2000 C1/247A: A97E LDA #$7E C1/247C: 208D19 JSR $198D C1/247F: 6B RTL
C1/2480 unknow
C1/2480: 208424 JSR $2484 C1/2483: 6B RTL
C1/2484: 209724 JSR $2497 C1/2487: A20014 LDX #$1400 C1/248A: 8610 STX $10 C1/248C: A23FAE LDX #$AE3F C1/248F: A00024 LDY #$2400 C1/2492: A97E LDA #$7E C1/2494: 4C8D19 JMP $198D
C1/2497 unknow
C1/2497: 8610 STX $10 (from C1/2456, C1/246C, C1/2484, C1/24A9, C1/24D1) C1/2499: 202020 JSR $2020 C1/249C: 20F524 JSR $24F5 C1/249F: 20E524 JSR $24E5 C1/24A2: 4CA522 JMP $22A5
C1/24A5 unknow
C1/24A5: 20A924 JSR $24A9 C1/24A8: 6B RTL
C1/24A9: 209724 JSR $2497 (from only C1/24A5) C1/24AC: 7B TDC C1/24AD: AA TAX C1/24AE: 48 PHA C1/24AF: C220 REP #$20 C1/24B1: A98001 LDA #$0180 C1/24B4: 8510 STA $10 C1/24B6: BF73D4C2 LDA $C2D473,X C1/24BA: A8 TAY C1/24BB: BF71D4C2 LDA $C2D471,X C1/24BF: AA TAX C1/24C0: 7B TDC C1/24C1: E220 SEP #$20 C1/24C3: A97E LDA #$7E C1/24C5: 208D19 JSR $198D C1/24C8: 68 PLA C1/24C9: 18 CLC C1/24CA: 6904 ADC #$04 C1/24CC: C928 CMP #$28 C1/24CE: D0DD BNE $24AD C1/24D0: 60 RTS
C1/24D1 unknow
C1/24D1: 209724 JSR $2497 C1/24D4: A20020 LDX #$2000 C1/24D7: 8610 STX $10 C1/24D9: A23FAE LDX #$AE3F C1/24DC: A00000 LDY #$0000 C1/24DF: A97E LDA #$7E C1/24E1: 208D19 JSR $198D C1/24E4: 6B RTL
C1/24E5 unknow
C1/24E5: 205F21 JSR $215F (from C1/23E0, C1/249F) C1/24E8: AD5182 LDA $8251 C1/24EB: 8D6B61 STA $616B C1/24EE: AD5382 LDA $8253 C1/24F1: 8D6C61 STA $616C C1/24F4: 60 RTS
C1/24F5 unknow
C1/24F5: C220 REP #$20 (from C1/23DD, C1/249C) C1/24F7: A510 LDA $10 C1/24F9: 0A ASL A C1/24FA: 0A ASL A C1/24FB: 18 CLC C1/24FC: 6510 ADC $10 C1/24FE: AA TAX C1/24FF: BF0270D2 LDA $D27002,X (Monster visual specs) C1/2503: EB XBA C1/2504: 29FF03 AND #$03FF C1/2507: 0A ASL A C1/2508: 0A ASL A C1/2509: 0A ASL A C1/250A: 0A ASL A C1/250B: 8D6961 STA $6169 C1/250E: BF0070D2 LDA $D27000,X (Monster visual specs) C1/2512: 29FF7F AND #$7FFF C1/2515: 8DA881 STA $81A8 C1/2518: 7B TDC C1/2519: E220 SEP #$20 C1/251B: BF0170D2 LDA $D27001,X (Monster visual specs) C1/251F: 2980 AND #$80 C1/2521: 8DAC81 STA $81AC C1/2524: BF0270D2 LDA $D27002,X (Monster visual specs) C1/2528: 4A LSR A C1/2529: 0DAC81 ORA $81AC C1/252C: 8DAC81 STA $81AC C1/252F: 4A LSR A C1/2530: 4A LSR A C1/2531: 4A LSR A C1/2532: 4A LSR A C1/2533: 4A LSR A C1/2534: 2901 AND #$01 C1/2536: 8DAB81 STA $81AB C1/2539: BF0470D2 LDA $D27004,X (Monster visual specs) C1/253D: 8DAA81 STA $81AA C1/2540: A9C2 LDA #$C2 C1/2542: 8514 STA $14 C1/2544: A906 LDA #$06 C1/2546: 0A ASL A C1/2547: AA TAX C1/2548: C220 REP #$20 C1/254A: BF1AD0C2 LDA $C2D01A,X (Load pointer to monster formation size templates) C1/254E: 8512 STA $12 C1/2550: A712 LDA [$12] C1/2552: 18 CLC C1/2553: 693FAE ADC #$AE3F C1/2556: 8561 STA $61 C1/2558: E612 INC $12 C1/255A: E612 INC $12 C1/255C: A712 LDA [$12] C1/255E: 8D5682 STA $8256 C1/2561: ADA881 LDA $81A8 C1/2564: 0A ASL A C1/2565: 0A ASL A C1/2566: 0A ASL A C1/2567: 8564 STA $64 C1/2569: 9C5482 STZ $8254 C1/256C: 7B TDC C1/256D: E220 SEP #$20 C1/256F: ADA981 LDA $81A9 C1/2572: 4A LSR A C1/2573: 4A LSR A C1/2574: 4A LSR A C1/2575: 4A LSR A C1/2576: 4A LSR A C1/2577: 8566 STA $66 C1/2579: 4C0B21 JMP $210B
C1/257C unknow
C1/257C: 202020 JSR $2020 (from C1/1115, C1/91D4, C1/9369, C1/93C5, C1/D71F) C1/257F: 7B TDC C1/2580: AA TAX C1/2581: A9FF LDA #$FF C1/2583: 9D1781 STA $8117,X C1/2586: 9D2381 STA $8123,X C1/2589: E8 INX C1/258A: E00C00 CPX #$000C C1/258D: D0F4 BNE $2583 C1/258F: 9C5882 STZ $8258 C1/2592: AD5882 LDA $8258 C1/2595: 0A ASL A C1/2596: AA TAX C1/2597: BD0220 LDA $2002,X C1/259A: C9FF CMP #$FF C1/259C: F014 BEQ $25B2 C1/259E: DA PHX C1/259F: DA PHX C1/25A0: AD5882 LDA $8258 C1/25A3: 205A20 JSR $205A C1/25A6: FA PLX C1/25A7: 201F21 JSR $211F C1/25AA: 20A522 JSR $22A5 C1/25AD: FA PLX C1/25AE: 2232B5C2 JSL $C2B532 C1/25B2: EE5882 INC $8258 C1/25B5: AD5882 LDA $8258 C1/25B8: C906 CMP #$06 C1/25BA: D0D6 BNE $2592 C1/25BC: 60 RTS
C1/25BD unknow
C1/25BD: 20C125 JSR $25C1 C1/25C0: 6B RTL
C1/25C1: A20020 LDX #$2000 (from C1/25BD, C1/9375, C1/93C8, C1/D722) C1/25C4: 8610 STX $10 C1/25C6: A23FAE LDX #$AE3F C1/25C9: A00030 LDY #$3000 C1/25CC: A97E LDA #$7E C1/25CE: 4C8D19 JMP $198D
C1/25D1 unknow
C1/25D1: A20020 LDX #$2000 C1/25D4: 8636 STX $36 C1/25D6: A23FAE LDX #$AE3F C1/25D9: A00030 LDY #$3000 C1/25DC: A97E LDA #$7E C1/25DE: 4C2B1A JMP $1A2B
C1/25E1 unknow
C1/25E1: ADD162 LDA $62D1 C1/25E4: F022 BEQ $2608 C1/25E6: 7B TDC C1/25E7: A8 TAY C1/25E8: A57B LDA $7B C1/25EA: D94261 CMP $6142,Y C1/25ED: D012 BNE $2601 C1/25EF: 5A PHY C1/25F0: 98 TYA C1/25F1: 0A ASL A C1/25F2: AA TAX C1/25F3: C220 REP #$20 C1/25F5: BF8BCEC2 LDA $C2CE8B,X C1/25F9: AA TAX C1/25FA: 7B TDC C1/25FB: E220 SEP #$20 C1/25FD: 200826 JSR $2608 C1/2600: 7A PLY C1/2601: C8 INY C1/2602: C00A00 CPY #$000A C1/2605: D0E1 BNE $25E8 C1/2607: 60 RTS
C1/2608 unknow
C1/2608: ADAA60 LDA $60AA (from C1/25E4, C1/25FD) C1/260B: F00A BEQ $2617 C1/260D: A50E LDA $0E C1/260F: 2901 AND #$01 C1/2611: F004 BEQ $2617 C1/2613: A902 LDA #$02 C1/2615: 8003 BRA $261A C1/2617: AD0D7B LDA $7B0D C1/261A: 3025 BMI $2641 C1/261C: 290F AND #$0F C1/261E: 8DFC7A STA $7AFC C1/2621: BDDE64 LDA $64DE,X C1/2624: F00B BEQ $2631 C1/2626: BDE764 LDA $64E7,X C1/2629: F006 BEQ $2631 C1/262B: 20AA26 JSR $26AA C1/262E: AEFA7A LDX $7AFA C1/2631: C220 REP #$20 C1/2633: 8A TXA C1/2634: 18 CLC C1/2635: 691000 ADC #$0010 C1/2638: AA TAX C1/2639: 7B TDC C1/263A: E220 SEP #$20 C1/263C: CEFC7A DEC $7AFC C1/263F: D0E0 BNE $2621 C1/2641: 60 RTS
C1/2642 unknow
C1/2642: ADD162 LDA $62D1 (from C1/27D5, C1/2944) C1/2645: F022 BEQ $2669 C1/2647: 7B TDC C1/2648: A8 TAY C1/2649: A57B LDA $7B C1/264B: D94261 CMP $6142,Y C1/264E: D012 BNE $2662 C1/2650: 5A PHY C1/2651: 98 TYA C1/2652: 0A ASL A C1/2653: AA TAX C1/2654: C220 REP #$20 C1/2656: BF8BCEC2 LDA $C2CE8B,X C1/265A: AA TAX C1/265B: 7B TDC C1/265C: E220 SEP #$20 C1/265E: 206926 JSR $2669 C1/2661: 7A PLY C1/2662: C8 INY C1/2663: C00A00 CPY #$000A C1/2666: D0E1 BNE $2649 C1/2668: 60 RTS
C1/2669 unknow
C1/2669: ADAA60 LDA $60AA C1/266C: F00A BEQ $2678 C1/266E: A50E LDA $0E C1/2670: 2901 AND #$01 C1/2672: F004 BEQ $2678 C1/2674: A902 LDA #$02 C1/2676: 8003 BRA $267B C1/2678: AD0D7B LDA $7B0D C1/267B: 302C BMI $26A9 C1/267D: 290F AND #$0F C1/267F: 8DFC7A STA $7AFC C1/2682: BDDE64 LDA $64DE,X C1/2685: F012 BEQ $2699 C1/2687: BD866F LDA $6F86,X C1/268A: 2903 AND #$03 C1/268C: D00B BNE $2699 C1/268E: BDE764 LDA $64E7,X C1/2691: D006 BNE $2699 C1/2693: 20AA26 JSR $26AA C1/2696: AEFA7A LDX $7AFA C1/2699: C220 REP #$20 C1/269B: 8A TXA C1/269C: 18 CLC C1/269D: 691000 ADC #$0010 C1/26A0: AA TAX C1/26A1: 7B TDC C1/26A2: E220 SEP #$20 C1/26A4: CEFC7A DEC $7AFC C1/26A7: D0D9 BNE $2682 C1/26A9: 60 RTS
C1/26AA unknow
C1/26AA: 8EFA7A STX $7AFA (from C1/262B, C1/2693) C1/26AD: BDE464 LDA $64E4,X C1/26B0: 853C STA $3C C1/26B2: C220 REP #$20 C1/26B4: BDDF64 LDA $64DF,X C1/26B7: 8536 STA $36 C1/26B9: BDE164 LDA $64E1,X C1/26BC: 8538 STA $38 C1/26BE: BDE564 LDA $64E5,X C1/26C1: 853A STA $3A C1/26C3: BDE364 LDA $64E3,X C1/26C6: 29FF00 AND #$00FF C1/26C9: 0A ASL A C1/26CA: AA TAX C1/26CB: A53A LDA $3A C1/26CD: 294000 AND #$0040 C1/26D0: F006 BEQ $26D8 C1/26D2: BF24C4C2 LDA $C2C424,X C1/26D6: 8004 BRA $26DC C1/26D8: BFE4C3C2 LDA $C2C3E4,X C1/26DC: AA TAX C1/26DD: A571 LDA $71 C1/26DF: 29FF00 AND #$00FF C1/26E2: 0A ASL A C1/26E3: 0A ASL A C1/26E4: A8 TAY C1/26E5: 7B TDC C1/26E6: E220 SEP #$20 C1/26E8: BD0000 LDA $0000,X C1/26EB: C9FF CMP #$FF C1/26ED: F07C BEQ $276B C1/26EF: 100C BPL $26FD C1/26F1: 18 CLC C1/26F2: 6536 ADC $36 C1/26F4: 990003 STA $0300,Y C1/26F7: A537 LDA $37 C1/26F9: 6901 ADC #$01 C1/26FB: 800A BRA $2707 C1/26FD: 18 CLC C1/26FE: 6536 ADC $36 C1/2700: 990003 STA $0300,Y C1/2703: A537 LDA $37 C1/2705: 6900 ADC #$00 C1/2707: 2901 AND #$01 C1/2709: F011 BEQ $271C C1/270B: 863E STX $3E C1/270D: B97FA1 LDA $A17F,Y C1/2710: AA TAX C1/2711: BD0005 LDA $0500,X C1/2714: 197FA7 ORA $A77F,Y C1/2717: 9D0005 STA $0500,X C1/271A: A63E LDX $3E C1/271C: 18 CLC C1/271D: BD0100 LDA $0001,X C1/2720: 100B BPL $272D C1/2722: 6538 ADC $38 C1/2724: 853E STA $3E C1/2726: A539 LDA $39 C1/2728: 6901 ADC #$01 C1/272A: 4C3527 JMP $2735 C1/272D: 6538 ADC $38 C1/272F: 853E STA $3E C1/2731: A539 LDA $39 C1/2733: 6900 ADC #$00 C1/2735: 2901 AND #$01 C1/2737: F009 BEQ $2742 C1/2739: A53E LDA $3E C1/273B: C9E0 CMP #$E0 C1/273D: B00B BCS $274A C1/273F: 4C4827 JMP $2748 C1/2742: A53E LDA $3E C1/2744: C997 CMP #$97 C1/2746: 9002 BCC $274A C1/2748: A9E0 LDA #$E0 C1/274A: 990103 STA $0301,Y C1/274D: BD0200 LDA $0002,X C1/2750: 18 CLC C1/2751: 653C ADC $3C C1/2753: 990203 STA $0302,Y C1/2756: BD0300 LDA $0003,X C1/2759: 053B ORA $3B C1/275B: 990303 STA $0303,Y C1/275E: E8 INX C1/275F: E8 INX C1/2760: E8 INX C1/2761: E8 INX C1/2762: C8 INY C1/2763: C8 INY C1/2764: C8 INY C1/2765: C8 INY C1/2766: E671 INC $71 C1/2768: 4CE826 JMP $26E8 C1/276B: 60 RTS
C1/276C unknow
C1/276C: AD1E20 LDA $201E (Load valid monster targets) (from only C1/0CC6) C1/276F: 2DAB61 AND $61AB C1/2772: 2DAB60 AND $60AB C1/2775: 8DD188 STA $88D1 C1/2778: 7B TDC C1/2779: AA TAX C1/277A: BD1A63 LDA $631A,X C1/277D: 297F AND #$7F C1/277F: F029 BEQ $27AA C1/2781: BD1E63 LDA $631E,X C1/2784: C904 CMP #$04 C1/2786: 9012 BCC $279A C1/2788: 38 SEC C1/2789: E904 SBC #$04 C1/278B: DA PHX C1/278C: 20091A JSR $1A09 C1/278F: FA PLX C1/2790: 2DD188 AND $88D1 C1/2793: D015 BNE $27AA C1/2795: 9E1A63 STZ $631A,X C1/2798: 8010 BRA $27AA C1/279A: DA PHX C1/279B: 20091A JSR $1A09 C1/279E: FA PLX C1/279F: 2D1D20 AND $201D (Remove any invalid character targets) C1/27A2: 2DAC61 AND $61AC C1/27A5: D003 BNE $27AA C1/27A7: 9E1A63 STZ $631A,X C1/27AA: E8 INX C1/27AB: E00400 CPX #$0004 C1/27AE: D0CA BNE $277A C1/27B0: AD677B LDA $7B67 C1/27B3: 0A ASL A C1/27B4: AA TAX C1/27B5: 7CB827 JMP ($27B8,X)
C1/27B8 unknow (2-byte pointers)
C1/27B8: BC27 (0) C1/27BA: BF27 (1) (why not go directly there?)
C1/27BC unknow
C1/27BC: 4C9728 JMP $2897 (from C1/27B5, X = 0) C1/27BF: 4C6928 JMP $2869 (from C1/27B5, X = 1)
C1/27C2 unknow
C1/27C2: ADD288 LDA $88D2 (from only C1/2923) C1/27C5: 48 PHA C1/27C6: 857B STA $7B C1/27C8: 0A ASL A C1/27C9: AA TAX C1/27CA: C220 REP #$20 C1/27CC: BF93CEC2 LDA $C2CE93,X C1/27D0: AA TAX C1/27D1: 7B TDC C1/27D2: E220 SEP #$20 C1/27D4: DA PHX C1/27D5: 204226 JSR $2642 C1/27D8: ADD288 LDA $88D2 C1/27DB: 202A2B JSR $2B2A C1/27DE: A571 LDA $71 C1/27E0: 8D6000 STA $0060 C1/27E3: ADD288 LDA $88D2 C1/27E6: 20091A JSR $1A09 C1/27E9: 2DD188 AND $88D1 C1/27EC: 2D1E20 AND $201E (Remove any invalid monster targets) C1/27EF: 2DAB61 AND $61AB C1/27F2: 2DE6E9 AND $E9E6 C1/27F5: 2D9161 AND $6191 C1/27F8: F064 BEQ $285E C1/27FA: 203539 JSR $3935 C1/27FD: ADD288 LDA $88D2 C1/2800: 2907 AND #$07 C1/2802: 20091A JSR $1A09 C1/2805: 2D9D61 AND $619D (mirrored enemies byte) C1/2808: F054 BEQ $285E C1/280A: ADD288 LDA $88D2 C1/280D: 2907 AND #$07 C1/280F: 0A ASL A C1/2810: AA TAX C1/2811: BD3081 LDA $8130,X C1/2814: C220 REP #$20 C1/2816: 0A ASL A C1/2817: 0A ASL A C1/2818: 0A ASL A C1/2819: 8536 STA $36 C1/281B: BDCF80 LDA $80CF,X C1/281E: 48 PHA C1/281F: 18 CLC C1/2820: 6536 ADC $36 C1/2822: 9DCF80 STA $80CF,X C1/2825: 7B TDC C1/2826: E220 SEP #$20 C1/2828: BDDC80 LDA $80DC,X C1/282B: 48 PHA C1/282C: BDF380 LDA $80F3,X C1/282F: 5D7E61 EOR $617E,X C1/2832: 48 PHA C1/2833: DA PHX C1/2834: BDF380 LDA $80F3,X C1/2837: 5D7E61 EOR $617E,X C1/283A: 0902 ORA #$02 C1/283C: 9DF380 STA $80F3,X C1/283F: BDDC80 LDA $80DC,X C1/2842: 29CF AND #$CF C1/2844: 0920 ORA #$20 C1/2846: 9DDC80 STA $80DC,X C1/2849: 203539 JSR $3935 C1/284C: FA PLX C1/284D: 68 PLA C1/284E: 9DF380 STA $80F3,X C1/2851: 68 PLA C1/2852: 9DDC80 STA $80DC,X C1/2855: C220 REP #$20 C1/2857: 68 PLA C1/2858: 9DCF80 STA $80CF,X C1/285B: 7B TDC C1/285C: E220 SEP #$20 C1/285E: AD6000 LDA $0060 C1/2861: 8571 STA $71 C1/2863: FA PLX C1/2864: 20E125 JSR $25E1 C1/2867: 68 PLA C1/2868: 60 RTS
C1/2869 unknow
C1/2869: 207A28 JSR $287A (from only C1/27BF) C1/286C: 49FF EOR #$FF C1/286E: 2D1E20 AND $201E (Remove any invalid monster targets) C1/2871: 2DAB61 AND $61AB C1/2874: 8DD188 STA $88D1 C1/2877: 4C9728 JMP $2897
C1/287A unknow
C1/287A: 7B TDC (atomic, from only C1/2869) C1/287B: AA TAX C1/287C: 9CD188 STZ $88D1 C1/287F: BDF480 LDA $80F4,X C1/2882: 4A LSR A C1/2883: 0DD188 ORA $88D1 C1/2886: 6A ROR A C1/2887: 8DD188 STA $88D1 C1/288A: E8 INX C1/288B: E8 INX C1/288C: E00C00 CPX #$000C C1/288F: D0EE BNE $287F C1/2891: 4A LSR A C1/2892: 4A LSR A C1/2893: 8DD188 STA $88D1 C1/2896: 60 RTS
C1/2897 unknow
C1/2897: AD0C7B LDA $7B0C (from C1/27BC, C1/2877) C1/289A: F02E BEQ $28CA C1/289C: 9C0C7B STZ $7B0C C1/289F: 7B TDC C1/28A0: AA TAX C1/28A1: C220 REP #$20 C1/28A3: E210 SEP #$10 C1/28A5: BD1F7A LDA $7A1F,X C1/28A8: 9D477A STA $7A47,X C1/28AB: BD217A LDA $7A21,X C1/28AE: 9D497A STA $7A49,X C1/28B1: BD337A LDA $7A33,X C1/28B4: 9D5B7A STA $7A5B,X C1/28B7: BD357A LDA $7A35,X C1/28BA: 9D5D7A STA $7A5D,X C1/28BD: E8 INX C1/28BE: E8 INX C1/28BF: E8 INX C1/28C0: E8 INX C1/28C1: E014 CPX #$14 C1/28C3: D0E0 BNE $28A5 C1/28C5: 7B TDC C1/28C6: E220 SEP #$20 C1/28C8: C210 REP #$10 C1/28CA: 20263A JSR $3A26 C1/28CD: ADB062 LDA $62B0 C1/28D0: D00B BNE $28DD C1/28D2: A901 LDA #$01 C1/28D4: 8D0D7B STA $7B0D C1/28D7: A22005 LDX #$0520 C1/28DA: 206926 JSR $2669 C1/28DD: A901 LDA #$01 C1/28DF: 8D0D7B STA $7B0D C1/28E2: A23005 LDX #$0530 C1/28E5: 206926 JSR $2669 C1/28E8: A901 LDA #$01 C1/28EA: 8D0D7B STA $7B0D C1/28ED: A24005 LDX #$0540 C1/28F0: 206926 JSR $2669 C1/28F3: 7B TDC C1/28F4: AA TAX C1/28F5: DA PHX C1/28F6: AD0E7B LDA $7B0E C1/28F9: 8D0D7B STA $7B0D C1/28FC: BD497A LDA $7A49,X C1/28FF: C904 CMP #$04 C1/2901: 9025 BCC $2928 C1/2903: C90A CMP #$0A C1/2905: B054 BCS $295B C1/2907: 38 SEC C1/2908: E904 SBC #$04 C1/290A: AA TAX C1/290B: 8DD288 STA $88D2 C1/290E: BF011AC1 LDA $C11A01,X C1/2912: 2DAF62 AND $62AF C1/2915: D00C BNE $2923 C1/2917: BF011AC1 LDA $C11A01,X C1/291B: 2D1E20 AND $201E (Remove any invalid monster targets) C1/291E: 2DAB61 AND $61AB C1/2921: F038 BEQ $295B C1/2923: 20C227 JSR $27C2 C1/2926: 8033 BRA $295B C1/2928: 0980 ORA #$80 C1/292A: 857B STA $7B C1/292C: 2903 AND #$03 C1/292E: 0A ASL A C1/292F: AA TAX C1/2930: C220 REP #$20 C1/2932: BF8BCEC2 LDA $C2CE8B,X C1/2936: AA TAX C1/2937: 7B TDC C1/2938: E220 SEP #$20 C1/293A: AD0F7B LDA $7B0F C1/293D: 8D0D7B STA $7B0D C1/2940: DA PHX C1/2941: A57B LDA $7B C1/2943: 48 PHA C1/2944: 204226 JSR $2642 C1/2947: 68 PLA C1/2948: 207F29 JSR $297F C1/294B: 297F AND #$7F C1/294D: CD687B CMP $7B68 C1/2950: D003 BNE $2955 C1/2952: 20922D JSR $2D92 C1/2955: FA PLX C1/2956: 48 PHA C1/2957: 20E125 JSR $25E1 C1/295A: 68 PLA C1/295B: FA PLX C1/295C: E8 INX C1/295D: E8 INX C1/295E: E8 INX C1/295F: E8 INX C1/2960: E02800 CPX #$0028 C1/2963: D090 BNE $28F5 C1/2965: ADB062 LDA $62B0 C1/2968: F00B BEQ $2975 C1/296A: A901 LDA #$01 C1/296C: 8D0D7B STA $7B0D C1/296F: A22005 LDX #$0520 C1/2972: 206926 JSR $2669 C1/2975: AD687B LDA $7B68 C1/2978: 1A INC A C1/2979: 2903 AND #$03 C1/297B: 8D687B STA $7B68 C1/297E: 60 RTS
C1/297F unknow
C1/297F: 48 PHA (from only C1/2948) C1/2980: 2903 AND #$03 C1/2982: AA TAX C1/2983: DA PHX C1/2984: BF011AC1 LDA $C11A01,X C1/2988: 852C STA $2C C1/298A: FA PLX C1/298B: AD1D20 LDA $201D (Load valid character targets) C1/298E: 2DAC61 AND $61AC C1/2991: 252C AND $2C C1/2993: D003 BNE $2998 C1/2995: 4C252A JMP $2A25 C1/2998: BF5BCFC2 LDA $C2CF5B,X C1/299C: AA TAX C1/299D: BDAE2E LDA $2EAE,X C1/29A0: C9FF CMP #$FF C1/29A2: F0F1 BEQ $2995 C1/29A4: BDC02E LDA $2EC0,X C1/29A7: 2920 AND #$20 C1/29A9: D07A BNE $2A25 C1/29AB: 68 PLA C1/29AC: 202A2B JSR $2B2A C1/29AF: 8536 STA $36 C1/29B1: ADBD62 LDA $62BD C1/29B4: D06E BNE $2A24 C1/29B6: A536 LDA $36 C1/29B8: 48 PHA C1/29B9: ADBA64 LDA $64BA C1/29BC: D05A BNE $2A18 C1/29BE: 68 PLA C1/29BF: 20A333 JSR $33A3 C1/29C2: 20DB34 JSR $34DB C1/29C5: 48 PHA C1/29C6: 2903 AND #$03 C1/29C8: 8536 STA $36 C1/29CA: 20091A JSR $1A09 C1/29CD: 2D9C61 AND $619C (Characters marked to be mirrored) C1/29D0: F03C BEQ $2A0E C1/29D2: A536 LDA $36 C1/29D4: 2903 AND #$03 C1/29D6: AA TAX C1/29D7: BF5BCFC2 LDA $C2CF5B,X C1/29DB: AA TAX C1/29DC: C220 REP #$20 C1/29DE: BDB961 LDA $61B9,X C1/29E1: 48 PHA C1/29E2: 18 CLC C1/29E3: 691800 ADC #$0018 C1/29E6: 9DB961 STA $61B9,X C1/29E9: BDBD61 LDA $61BD,X C1/29EC: 48 PHA C1/29ED: DA PHX C1/29EE: 7B TDC C1/29EF: E220 SEP #$20 C1/29F1: BDBD61 LDA $61BD,X C1/29F4: 29CF AND #$CF C1/29F6: 09A0 ORA #$A0 C1/29F8: 9DBD61 STA $61BD,X C1/29FB: A536 LDA $36 C1/29FD: 20DB34 JSR $34DB C1/2A00: C220 REP #$20 C1/2A02: FA PLX C1/2A03: 68 PLA C1/2A04: 9DBD61 STA $61BD,X C1/2A07: 68 PLA C1/2A08: 9DB961 STA $61B9,X C1/2A0B: 7B TDC C1/2A0C: E220 SEP #$20 C1/2A0E: 68 PLA C1/2A0F: 20272A JSR $2A27 C1/2A12: 204A2A JSR $2A4A C1/2A15: 4C7531 JMP $3175 C1/2A18: 68 PLA C1/2A19: 48 PHA C1/2A1A: 20DB34 JSR $34DB C1/2A1D: 20272A JSR $2A27 C1/2A20: 209F32 JSR $329F C1/2A23: 68 PLA C1/2A24: 60 RTS
C1/2A25 unknow
C1/2A25: 68 PLA (from C1/2995, C1/29A9) C1/2A26: 60 RTS
C1/2A27 unknow
C1/2A27: 48 PHA (from C1/2A0F, C1/2A1D) C1/2A28: 2903 AND #$03 C1/2A2A: 0A ASL A C1/2A2B: A8 TAY C1/2A2C: AA TAX C1/2A2D: ADDAE9 LDA $E9DA C1/2A30: 4A LSR A C1/2A31: 2908 AND #$08 C1/2A33: 8536 STA $36 C1/2A35: 8A TXA C1/2A36: 18 CLC C1/2A37: 6536 ADC $36 C1/2A39: AA TAX C1/2A3A: BF43BFC2 LDA $C2BF43,X C1/2A3E: 99D2E9 STA $E9D2,Y C1/2A41: BF44BFC2 LDA $C2BF44,X C1/2A45: 99D3E9 STA $E9D3,Y C1/2A48: 68 PLA C1/2A49: 60 RTS
C1/2A4A unknow
C1/2A4A: 48 PHA (from only C1/2A12) C1/2A4B: 2903 AND #$03 C1/2A4D: CDD362 CMP $62D3 (Sprites that get an echo effect) C1/2A50: D005 BNE $2A57 C1/2A52: ADD462 LDA $62D4 (Echo on? 1 = yes) C1/2A55: D002 BNE $2A59 C1/2A57: 68 PLA C1/2A58: 60 RTS
C1/2A59 unknow
C1/2A59: A50E LDA $0E (from only C1/2A55) C1/2A5B: 2DD562 AND $62D5 (Echo speed. 00 is fastst, 7F is slowest) C1/2A5E: D047 BNE $2AA7 C1/2A60: A23800 LDX #$0038 C1/2A63: C220 REP #$20 C1/2A65: BDCE62 LDA $62CE,X C1/2A68: 9DD662 STA $62D6,X (The echo buffer) C1/2A6B: BDD062 LDA $62D0,X C1/2A6E: 9DD862 STA $62D8,X C1/2A71: BDD262 LDA $62D2,X C1/2A74: 9DDA62 STA $62DA,X C1/2A77: BDD462 LDA $62D4,X C1/2A7A: 9DDC62 STA $62DC,X C1/2A7D: 8A TXA C1/2A7E: 38 SEC C1/2A7F: E90800 SBC #$0008 C1/2A82: AA TAX C1/2A83: D0E0 BNE $2A65 C1/2A85: A571 LDA $71 C1/2A87: 29FF00 AND #$00FF C1/2A8A: 3A DEC A C1/2A8B: 3A DEC A C1/2A8C: 0A ASL A C1/2A8D: 0A ASL A C1/2A8E: AA TAX C1/2A8F: BD0003 LDA $0300,X C1/2A92: 8DD662 STA $62D6 C1/2A95: BD0203 LDA $0302,X C1/2A98: 8DD862 STA $62D8 C1/2A9B: BD0403 LDA $0304,X C1/2A9E: 8DDA62 STA $62DA C1/2AA1: BD0603 LDA $0306,X C1/2AA4: 8DDC62 STA $62DC C1/2AA7: C220 REP #$20 C1/2AA9: A571 LDA $71 C1/2AAB: 29FF00 AND #$00FF C1/2AAE: 0A ASL A C1/2AAF: 0A ASL A C1/2AB0: AA TAX C1/2AB1: A50E LDA $0E C1/2AB3: 290100 AND #$0001 C1/2AB6: F005 BEQ $2ABD C1/2AB8: A00800 LDY #$0008 C1/2ABB: 8001 BRA $2ABE C1/2ABD: A8 TAY C1/2ABE: B9D662 LDA $62D6,Y C1/2AC1: 9D0003 STA $0300,X C1/2AC4: B9D862 LDA $62D8,Y C1/2AC7: 9D0203 STA $0302,X C1/2ACA: B9DA62 LDA $62DA,Y C1/2ACD: 9D0403 STA $0304,X C1/2AD0: B9DC62 LDA $62DC,Y C1/2AD3: 9D0603 STA $0306,X C1/2AD6: B9E662 LDA $62E6,Y C1/2AD9: 9D0803 STA $0308,X C1/2ADC: B9E862 LDA $62E8,Y C1/2ADF: 9D0A03 STA $030A,X C1/2AE2: B9EA62 LDA $62EA,Y C1/2AE5: 9D0C03 STA $030C,X C1/2AE8: B9EC62 LDA $62EC,Y C1/2AEB: 9D0E03 STA $030E,X C1/2AEE: B9F662 LDA $62F6,Y C1/2AF1: 9D1003 STA $0310,X C1/2AF4: B9F862 LDA $62F8,Y C1/2AF7: 9D1203 STA $0312,X C1/2AFA: B9FA62 LDA $62FA,Y C1/2AFD: 9D1403 STA $0314,X C1/2B00: B9FC62 LDA $62FC,Y C1/2B03: 9D1603 STA $0316,X C1/2B06: B90663 LDA $6306,Y C1/2B09: 9D1803 STA $0318,X C1/2B0C: B90863 LDA $6308,Y C1/2B0F: 9D1A03 STA $031A,X C1/2B12: B90A63 LDA $630A,Y C1/2B15: 9D1C03 STA $031C,X C1/2B18: B90C63 LDA $630C,Y C1/2B1B: 9D1E03 STA $031E,X C1/2B1E: 7B TDC C1/2B1F: E220 SEP #$20 C1/2B21: A571 LDA $71 C1/2B23: 18 CLC C1/2B24: 6908 ADC #$08 C1/2B26: 8571 STA $71 C1/2B28: 68 PLA C1/2B29: 60 RTS
C1/2B2A unknow
C1/2B2A: 20672C JSR $2C67 (from C1/27DB, C1/29AC) C1/2B2D: 48 PHA C1/2B2E: 853A STA $3A C1/2B30: AD3E7B LDA $7B3E C1/2B33: F01F BEQ $2B54 C1/2B35: 20FC2B JSR $2BFC C1/2B38: B011 BCS $2B4B C1/2B3A: A53A LDA $3A C1/2B3C: AA TAX C1/2B3D: BD3F7B LDA $7B3F,X C1/2B40: 297F AND #$7F C1/2B42: F007 BEQ $2B4B C1/2B44: BD497B LDA $7B49,X C1/2B47: C940 CMP #$40 C1/2B49: D00C BNE $2B57 C1/2B4B: A53A LDA $3A C1/2B4D: AA TAX C1/2B4E: 9E3F7B STZ $7B3F,X C1/2B51: 9E497B STZ $7B49,X C1/2B54: 4CFA2B JMP $2BFA C1/2B57: DA PHX C1/2B58: AA TAX C1/2B59: BF93CFC2 LDA $C2CF93,X C1/2B5D: 853C STA $3C C1/2B5F: FA PLX C1/2B60: FE497B INC $7B49,X C1/2B63: 6441 STZ $41 C1/2B65: BD537B LDA $7B53,X C1/2B68: 8540 STA $40 C1/2B6A: 1002 BPL $2B6E C1/2B6C: C641 DEC $41 C1/2B6E: C220 REP #$20 C1/2B70: A536 LDA $36 C1/2B72: 38 SEC C1/2B73: E540 SBC $40 C1/2B75: 8536 STA $36 C1/2B77: 7B TDC C1/2B78: E220 SEP #$20 C1/2B7A: A538 LDA $38 C1/2B7C: 38 SEC C1/2B7D: E53C SBC $3C C1/2B7F: 8538 STA $38 C1/2B81: A571 LDA $71 C1/2B83: C220 REP #$20 C1/2B85: 0A ASL A C1/2B86: 0A ASL A C1/2B87: A8 TAY C1/2B88: 7B TDC C1/2B89: E220 SEP #$20 C1/2B8B: A53A LDA $3A C1/2B8D: AA TAX C1/2B8E: BD3F7B LDA $7B3F,X C1/2B91: 2980 AND #$80 C1/2B93: D004 BNE $2B99 C1/2B95: A938 LDA #$38 C1/2B97: 8002 BRA $2B9B C1/2B99: A93A LDA #$3A C1/2B9B: 990303 STA $0303,Y C1/2B9E: 990703 STA $0307,Y C1/2BA1: A536 LDA $36 C1/2BA3: 990003 STA $0300,Y C1/2BA6: A537 LDA $37 C1/2BA8: 2901 AND #$01 C1/2BAA: F00F BEQ $2BBB C1/2BAC: DA PHX C1/2BAD: B97FA1 LDA $A17F,Y C1/2BB0: AA TAX C1/2BB1: BD0005 LDA $0500,X C1/2BB4: 197FA7 ORA $A77F,Y C1/2BB7: 9D0005 STA $0500,X C1/2BBA: FA PLX C1/2BBB: C220 REP #$20 C1/2BBD: A536 LDA $36 C1/2BBF: 18 CLC C1/2BC0: 691000 ADC #$0010 C1/2BC3: 8536 STA $36 C1/2BC5: 7B TDC C1/2BC6: E220 SEP #$20 C1/2BC8: A536 LDA $36 C1/2BCA: 990403 STA $0304,Y C1/2BCD: A537 LDA $37 C1/2BCF: 2901 AND #$01 C1/2BD1: F00F BEQ $2BE2 C1/2BD3: DA PHX C1/2BD4: B983A1 LDA $A183,Y C1/2BD7: AA TAX C1/2BD8: BD0005 LDA $0500,X C1/2BDB: 1983A7 ORA $A783,Y C1/2BDE: 9D0005 STA $0500,X C1/2BE1: FA PLX C1/2BE2: A538 LDA $38 C1/2BE4: 990103 STA $0301,Y C1/2BE7: 990503 STA $0305,Y C1/2BEA: BF98E3C2 LDA $C2E398,X C1/2BEE: 990203 STA $0302,Y C1/2BF1: 1A INC A C1/2BF2: 1A INC A C1/2BF3: 990603 STA $0306,Y C1/2BF6: E671 INC $71 C1/2BF8: E671 INC $71 C1/2BFA: 68 PLA C1/2BFB: 60 RTS
C1/2BFC unknow
C1/2BFC: A53A LDA $3A (from C1/2B35, C1/2C6C, C1/2CAC) C1/2BFE: 102A BPL $2C2A C1/2C00: 2903 AND #$03 C1/2C02: 853A STA $3A C1/2C04: 20091A JSR $1A09 C1/2C07: 2D1D20 AND $201D (Remove any invalid character targets) C1/2C0A: 2DAC61 AND $61AC C1/2C0D: D002 BNE $2C11 C1/2C0F: 38 SEC C1/2C10: 60 RTS
C1/2C11 unknow
C1/2C11: BD107B LDA $7B10,X (from only C1/2C0D) C1/2C14: 852C STA $2C C1/2C16: 8A TXA C1/2C17: 0A ASL A C1/2C18: AA TAX C1/2C19: BD4380 LDA $8043,X C1/2C1C: 8538 STA $38 C1/2C1E: BD3480 LDA $8034,X C1/2C21: 8537 STA $37 C1/2C23: BD3380 LDA $8033,X C1/2C26: 8536 STA $36 C1/2C28: 8032 BRA $2C5C C1/2C2A: A53A LDA $3A C1/2C2C: 20091A JSR $1A09 C1/2C2F: 2D1E20 AND $201E (Remove any invalid monster targets) C1/2C32: 2DAB61 AND $61AB C1/2C35: F027 BEQ $2C5E C1/2C37: 8A TXA C1/2C38: 0A ASL A C1/2C39: AA TAX C1/2C3A: BD2780 LDA $8027,X (bottom Y-coordinate of monster - 8) C1/2C3D: 8538 STA $38 C1/2C3F: BD0F80 LDA $800F,X (Get X-coordinate of middle of monster) C1/2C42: 8536 STA $36 C1/2C44: BD1080 LDA $8010,X C1/2C47: 8537 STA $37 C1/2C49: BDF380 LDA $80F3,X C1/2C4C: 5D7E61 EOR $617E,X C1/2C4F: 2901 AND #$01 C1/2C51: 4901 EOR #$01 C1/2C53: 852C STA $2C C1/2C55: A53A LDA $3A C1/2C57: 18 CLC C1/2C58: 6904 ADC #$04 C1/2C5A: 853A STA $3A C1/2C5C: 18 CLC C1/2C5D: 60 RTS
C1/2C5E unknow
C1/2C5E: A53A LDA $3A (from only C1/2C35) C1/2C60: 18 CLC C1/2C61: 6904 ADC #$04 C1/2C63: 853A STA $3A C1/2C65: 38 SEC C1/2C66: 60 RTS
C1/2C67 unknow
C1/2C67: 8D4161 STA $6141 C1/2C6A: 853A STA $3A C1/2C6C: 20FC2B JSR $2BFC C1/2C6F: 9020 BCC $2C91 C1/2C71: 7B TDC C1/2C72: AA TAX C1/2C73: BD1A63 LDA $631A,X C1/2C76: 297F AND #$7F C1/2C78: F00D BEQ $2C87 C1/2C7A: BD1E63 LDA $631E,X C1/2C7D: C53A CMP $3A C1/2C7F: D006 BNE $2C87 C1/2C81: 9E1A63 STZ $631A,X C1/2C84: 9E2263 STZ $6322,X C1/2C87: E8 INX C1/2C88: E00400 CPX #$0004 C1/2C8B: D0E6 BNE $2C73 C1/2C8D: AD4161 LDA $6141 C1/2C90: 60 RTS
C1/2C91 unknow
C1/2C91: 7B TDC C1/2C92: AA TAX C1/2C93: BD1A63 LDA $631A,X C1/2C96: 297F AND #$7F C1/2C98: F01E BEQ $2CB8 C1/2C9A: BD1E63 LDA $631E,X C1/2C9D: C53A CMP $3A C1/2C9F: D017 BNE $2CB8 C1/2CA1: A53A LDA $3A C1/2CA3: 48 PHA C1/2CA4: DA PHX C1/2CA5: 863C STX $3C C1/2CA7: AD4161 LDA $6141 C1/2CAA: 853A STA $3A C1/2CAC: 20FC2B JSR $2BFC C1/2CAF: A63C LDX $3C C1/2CB1: 20C22C JSR $2CC2 C1/2CB4: FA PLX C1/2CB5: 68 PLA C1/2CB6: 853A STA $3A C1/2CB8: E8 INX C1/2CB9: E00400 CPX #$0004 C1/2CBC: D0D5 BNE $2C93 C1/2CBE: AD4161 LDA $6141 C1/2CC1: 60 RTS
C1/2CC2 unknow
C1/2CC2: 48 PHA C1/2CC3: BD2263 LDA $6322,X C1/2CC6: C940 CMP #$40 C1/2CC8: D008 BNE $2CD2 C1/2CCA: 9E1A63 STZ $631A,X C1/2CCD: 9E2263 STZ $6322,X C1/2CD0: 68 PLA C1/2CD1: 60 RTS
C1/2CD2 unknow
C1/2CD2: DA PHX C1/2CD3: AA TAX C1/2CD4: BF93CFC2 LDA $C2CF93,X C1/2CD8: 853C STA $3C C1/2CDA: FA PLX C1/2CDB: FE2263 INC $6322,X C1/2CDE: 6441 STZ $41 C1/2CE0: BD2663 LDA $6326,X C1/2CE3: 8540 STA $40 C1/2CE5: 1002 BPL $2CE9 C1/2CE7: C641 DEC $41 C1/2CE9: C220 REP #$20 C1/2CEB: A536 LDA $36 C1/2CED: 38 SEC C1/2CEE: E540 SBC $40 C1/2CF0: 8536 STA $36 C1/2CF2: 7B TDC C1/2CF3: E220 SEP #$20 C1/2CF5: A538 LDA $38 C1/2CF7: 38 SEC C1/2CF8: E53C SBC $3C C1/2CFA: 8538 STA $38 C1/2CFC: A53A LDA $3A C1/2CFE: C904 CMP #$04 C1/2D00: 900C BCC $2D0E C1/2D02: 38 SEC C1/2D03: E904 SBC #$04 C1/2D05: 0A ASL A C1/2D06: A8 TAY C1/2D07: B9E880 LDA $80E8,Y C1/2D0A: 853A STA $3A C1/2D0C: 8004 BRA $2D12 C1/2D0E: A9FF LDA #$FF C1/2D10: 853A STA $3A C1/2D12: A571 LDA $71 C1/2D14: C220 REP #$20 C1/2D16: 0A ASL A C1/2D17: 0A ASL A C1/2D18: A8 TAY C1/2D19: 7B TDC C1/2D1A: E220 SEP #$20 C1/2D1C: BD1A63 LDA $631A,X C1/2D1F: 2980 AND #$80 C1/2D21: D004 BNE $2D27 C1/2D23: A938 LDA #$38 C1/2D25: 8002 BRA $2D29 C1/2D27: A93A LDA #$3A C1/2D29: 253A AND $3A C1/2D2B: 990303 STA $0303,Y C1/2D2E: 990703 STA $0307,Y C1/2D31: A536 LDA $36 C1/2D33: 990003 STA $0300,Y C1/2D36: A537 LDA $37 C1/2D38: 2901 AND #$01 C1/2D3A: F00F BEQ $2D4B C1/2D3C: DA PHX C1/2D3D: B97FA1 LDA $A17F,Y C1/2D40: AA TAX C1/2D41: BD0005 LDA $0500,X C1/2D44: 197FA7 ORA $A77F,Y C1/2D47: 9D0005 STA $0500,X C1/2D4A: FA PLX C1/2D4B: C220 REP #$20 C1/2D4D: A536 LDA $36 C1/2D4F: 18 CLC C1/2D50: 691000 ADC #$0010 C1/2D53: 8536 STA $36 C1/2D55: 7B TDC C1/2D56: E220 SEP #$20 C1/2D58: A536 LDA $36 C1/2D5A: 990403 STA $0304,Y C1/2D5D: A537 LDA $37 C1/2D5F: 2901 AND #$01 C1/2D61: F00F BEQ $2D72 C1/2D63: DA PHX C1/2D64: B983A1 LDA $A183,Y C1/2D67: AA TAX C1/2D68: BD0005 LDA $0500,X C1/2D6B: 1983A7 ORA $A783,Y C1/2D6E: 9D0005 STA $0500,X C1/2D71: FA PLX C1/2D72: A538 LDA $38 C1/2D74: C997 CMP #$97 C1/2D76: 9002 BCC $2D7A C1/2D78: A9E0 LDA #$E0 C1/2D7A: 990103 STA $0301,Y C1/2D7D: 990503 STA $0305,Y C1/2D80: BF94E3C2 LDA $C2E394,X C1/2D84: 990203 STA $0302,Y C1/2D87: 1A INC A C1/2D88: 1A INC A C1/2D89: 990603 STA $0306,Y C1/2D8C: E671 INC $71 C1/2D8E: E671 INC $71 C1/2D90: 68 PLA C1/2D91: 60 RTS
C1/2D92 unknow
C1/2D92: 48 PHA C1/2D93: AD687B LDA $7B68 C1/2D96: AA TAX C1/2D97: DA PHX C1/2D98: BF011AC1 LDA $C11A01,X C1/2D9C: 852C STA $2C C1/2D9E: FA PLX C1/2D9F: AD1D20 LDA $201D (Load valid character targets) C1/2DA2: 2DAC61 AND $61AC C1/2DA5: 252C AND $2C C1/2DA7: F028 BEQ $2DD1 C1/2DA9: BF5BCFC2 LDA $C2CF5B,X C1/2DAD: AA TAX C1/2DAE: BDAE2E LDA $2EAE,X C1/2DB1: C9FF CMP #$FF C1/2DB3: F01C BEQ $2DD1 C1/2DB5: BDC02E LDA $2EC0,X C1/2DB8: 2920 AND #$20 C1/2DBA: D015 BNE $2DD1 C1/2DBC: BDC22E LDA $2EC2,X C1/2DBF: 2904 AND #$04 C1/2DC1: F00E BEQ $2DD1 C1/2DC3: A901 LDA #$01 C1/2DC5: 8D697B STA $7B69 C1/2DC8: AD687B LDA $7B68 C1/2DCB: 20DB34 JSR $34DB C1/2DCE: 9C697B STZ $7B69 C1/2DD1: 68 PLA C1/2DD2: 60 RTS
C1/2DD3 unknow
C1/2DD3: AD9800 LDA $0098 (from C1/0CDA, C1/3D33) C1/2DD6: 1A INC A C1/2DD7: 2903 AND #$03 C1/2DD9: 0A ASL A C1/2DDA: 0A ASL A C1/2DDB: 0A ASL A C1/2DDC: 0A ASL A C1/2DDD: 0A ASL A C1/2DDE: A8 TAY C1/2DDF: 5A PHY C1/2DE0: A21800 LDX #$0018 C1/2DE3: B9AD81 LDA $81AD,Y C1/2DE6: 99807F STA $7F80,Y (set character palette's 1 - 4) C1/2DE9: C8 INY C1/2DEA: CA DEX C1/2DEB: D0F6 BNE $2DE3 C1/2DED: 7A PLY C1/2DEE: B9CD61 LDA $61CD,Y C1/2DF1: F012 BEQ $2E05 C1/2DF3: 3A DEC A C1/2DF4: 3A DEC A C1/2DF5: 99CD61 STA $61CD,Y C1/2DF8: D003 BNE $2DFD C1/2DFA: 9C6A7B STZ $7B6A C1/2DFD: A905 LDA #$05 C1/2DFF: 20B52E JSR $2EB5 C1/2E02: 4CB42E JMP $2EB4 (uhhh, this jumps to an RTS...)
C1/2E05 unknow
C1/2E05: C220 REP #$20 (from C1/2DF1) C1/2E07: B9C12E LDA $2EC1,Y C1/2E0A: 8536 STA $36 C1/2E0C: B9C32E LDA $2EC3,Y C1/2E0F: 8538 STA $38 C1/2E11: 7B TDC C1/2E12: E220 SEP #$20 C1/2E14: A536 LDA $36 C1/2E16: 2940 AND #$40 C1/2E18: F013 BEQ $2E2D C1/2E1A: 7B TDC C1/2E1B: AA TAX C1/2E1C: BFECCFC2 LDA $C2CFEC,X C1/2E20: 99827F STA $7F82,Y C1/2E23: C8 INY C1/2E24: E8 INX C1/2E25: E01600 CPX #$0016 C1/2E28: D0F2 BNE $2E1C C1/2E2A: 4CB42E JMP $2EB4 (uhhh, this jumps to an RTS...)
C1/2E2D unknow
C1/2E2D: A539 LDA $39 (from C1/2E18) C1/2E2F: 2902 AND #$02 C1/2E31: F012 BEQ $2E45 (Branch if not frozen) C1/2E33: 7B TDC C1/2E34: AA TAX C1/2E35: 5A PHY C1/2E36: BF04D0C2 LDA $C2D004,X C1/2E3A: 99827F STA $7F82,Y C1/2E3D: C8 INY C1/2E3E: E8 INX C1/2E3F: E01600 CPX #$0016 C1/2E42: D0F2 BNE $2E36 C1/2E44: 7A PLY C1/2E45: A536 LDA $36 C1/2E47: 2904 AND #$04 C1/2E49: F006 BEQ $2E51 (Branch if not poisoned) C1/2E4B: 7B TDC C1/2E4C: 200D2F JSR $2F0D C1/2E4F: 8063 BRA $2EB4 C1/2E51: A536 LDA $36 C1/2E53: 2902 AND #$02 C1/2E55: F007 BEQ $2E5E (Branch if not zombied) C1/2E57: A901 LDA #$01 C1/2E59: 200D2F JSR $2F0D C1/2E5C: 8056 BRA $2EB4 C1/2E5E: A537 LDA $37 C1/2E60: 2910 AND #$10 C1/2E62: F007 BEQ $2E6B (Branch if not berzerked) C1/2E64: A902 LDA #$02 C1/2E66: 200D2F JSR $2F0D C1/2E69: 8049 BRA $2EB4 C1/2E6B: A538 LDA $38 C1/2E6D: 1006 BPL $2E75 (Branch if not reflect) C1/2E6F: 7B TDC C1/2E70: 20C32E JSR $2EC3 C1/2E73: 803F BRA $2EB4 C1/2E75: 2940 AND #$40 C1/2E77: F007 BEQ $2E80 (Branch if not safe) C1/2E79: A901 LDA #$01 C1/2E7B: 20C32E JSR $2EC3 C1/2E7E: 8034 BRA $2EB4 C1/2E80: A538 LDA $38 C1/2E82: 2920 AND #$20 C1/2E84: F007 BEQ $2E8D (Branch if not shell) C1/2E86: A902 LDA #$02 C1/2E88: 20C32E JSR $2EC3 C1/2E8B: 8027 BRA $2EB4 C1/2E8D: A538 LDA $38 C1/2E8F: 2910 AND #$10 C1/2E91: F007 BEQ $2E9A (Branch if not stop) C1/2E93: A907 LDA #$07 C1/2E95: 20C32E JSR $2EC3 C1/2E98: 801A BRA $2EB4 C1/2E9A: A538 LDA $38 C1/2E9C: 2908 AND #$08 C1/2E9E: F007 BEQ $2EA7 (Branch if not haste) C1/2EA0: A903 LDA #$03 C1/2EA2: 20C32E JSR $2EC3 C1/2EA5: 800D BRA $2EB4 C1/2EA7: A538 LDA $38 C1/2EA9: 2904 AND #$04 C1/2EAB: F007 BEQ $2EB4 (Branch if not slow) C1/2EAD: A904 LDA #$04 C1/2EAF: 20C32E JSR $2EC3 C1/2EB2: 8000 BRA $2EB4 C1/2EB4: 60 RTS
C1/2EB5 unknow
C1/2EB5: 48 PHA (from only C1/2DFF) C1/2EB6: B9CD61 LDA $61CD,Y C1/2EB9: 0A ASL A C1/2EBA: 0A ASL A C1/2EBB: 18 CLC C1/2EBC: 6940 ADC #$40 C1/2EBE: 852C STA $2C C1/2EC0: 68 PLA C1/2EC1: 8006 BRA $2EC9
C1/2EC3 change outline color for status
C1/2EC3: 48 PHA C1/2EC4: A50E LDA $0E C1/2EC6: 852C STA $2C C1/2EC8: 68 PLA C1/2EC9: 48 PHA (why such redundancy?) C1/2ECA: A52C LDA $2C C1/2ECC: 2903 AND #$03 C1/2ECE: AA TAX C1/2ECF: BFAAE3C2 LDA $C2E3AA,X C1/2ED3: 18 CLC C1/2ED4: 652C ADC $2C C1/2ED6: 8536 STA $36 C1/2ED8: 2940 AND #$40 C1/2EDA: F012 BEQ $2EEE C1/2EDC: A536 LDA $36 C1/2EDE: 293C AND #$3C C1/2EE0: 4A LSR A C1/2EE1: 852C STA $2C C1/2EE3: A91F LDA #$1F C1/2EE5: 38 SEC C1/2EE6: E52C SBC $2C C1/2EE8: 852C STA $2C C1/2EEA: 642D STZ $2D C1/2EEC: 8009 BRA $2EF7 C1/2EEE: A536 LDA $36 C1/2EF0: 293C AND #$3C C1/2EF2: 4A LSR A C1/2EF3: 852C STA $2C C1/2EF5: 642D STZ $2D C1/2EF7: 68 PLA C1/2EF8: 0A ASL A C1/2EF9: AA TAX C1/2EFA: C220 REP #$20 (16 bit accum./memory) C1/2EFC: 20E441 JSR $41E4 C1/2EFF: BFBAE3C2 LDA $C2E3BA,X C1/2F03: 200242 JSR $4202 C1/2F06: 99827F STA $7F82,Y C1/2F09: 7B TDC C1/2F0A: E220 SEP #$20 (8 bit accum./memory) C1/2F0C: 60 RTS
C1/2F0D change flesh color for status
C1/2F0D: 0A ASL A (from C1/2E4C, C1/2E59, C1/2E66) C1/2F0E: 0A ASL A C1/2F0F: AA TAX C1/2F10: C220 REP #$20 (16 bit accum./memory) C1/2F12: BFAEE3C2 LDA $C2E3AE,X C1/2F16: 998C7F STA $7F8C,Y C1/2F19: BFB0E3C2 LDA $C2E3B0,X C1/2F1D: 998E7F STA $7F8E,Y C1/2F20: 7B TDC C1/2F21: E220 SEP #$20 (8 bit accum./memory) C1/2F23: 60 RTS
C1/2F24 setup head graphics for character with status
C1/2F24: DA PHX C1/2F25: BDBE2E LDA $2EBE,X C1/2F28: 8510 STA $10 C1/2F2A: 1004 BPL $2F30 C1/2F2C: A906 LDA #$06 C1/2F2E: 8040 BRA $2F70 C1/2F30: A510 LDA $10 C1/2F32: 2920 AND #$20 C1/2F34: F004 BEQ $2F3A C1/2F36: A902 LDA #$02 C1/2F38: 8036 BRA $2F70 C1/2F3A: A510 LDA $10 C1/2F3C: 2910 AND #$10 C1/2F3E: F004 BEQ $2F44 C1/2F40: A904 LDA #$04 C1/2F42: 802C BRA $2F70 C1/2F44: BDC02E LDA $2EC0,X C1/2F47: 2901 AND #$01 C1/2F49: F004 BEQ $2F4F C1/2F4B: A904 LDA #$04 C1/2F4D: 8021 BRA $2F70 C1/2F4F: BDBD2E LDA $2EBD,X C1/2F52: 2904 AND #$04 C1/2F54: F004 BEQ $2F5A C1/2F56: A901 LDA #$01 C1/2F58: 8016 BRA $2F70 C1/2F5A: BDBD2E LDA $2EBD,X C1/2F5D: 2901 AND #$01 C1/2F5F: F004 BEQ $2F65 C1/2F61: A903 LDA #$03 C1/2F63: 800B BRA $2F70 C1/2F65: A510 LDA $10 C1/2F67: 2908 AND #$08 C1/2F69: F004 BEQ $2F6F C1/2F6B: A905 LDA #$05 C1/2F6D: 8001 BRA $2F70 C1/2F6F: 7B TDC C1/2F70: 9DCF61 STA $61CF,X C1/2F73: FA PLX C1/2F74: 60 RTS
C1/2F75 unknow
C1/2F75: 20792F JSR $2F79 (from C2/C165) C1/2F78: 6B RTL
C1/2F79: AD787B LDA $7B78 C1/2F7C: 2903 AND #$03 C1/2F7E: A8 TAY C1/2F7F: 0A ASL A C1/2F80: 0A ASL A C1/2F81: 0A ASL A C1/2F82: 0A ASL A C1/2F83: 0A ASL A C1/2F84: AA TAX C1/2F85: BDCD61 LDA $61CD,X C1/2F88: F003 BEQ $2F8D C1/2F8A: 4C4C30 JMP $304C
C1/2F8D: A901 LDA #$01 C1/2F8F: 9DCE61 STA $61CE,X C1/2F92: AD4B2F LDA $2F4B (Monst. Form. Aux. Byte 4) C1/2F95: 2901 AND #$01 C1/2F97: D038 BNE $2FD1 C1/2F99: BDC02E LDA $2EC0,X C1/2F9C: 2908 AND #$08 C1/2F9E: F015 BEQ $2FB5 C1/2FA0: B96C7B LDA $7B6C,Y C1/2FA3: C912 CMP #$12 C1/2FA5: F03F BEQ $2FE6 C1/2FA7: A912 LDA #$12 C1/2FA9: 996C7B STA $7B6C,Y C1/2FAC: 205731 JSR $3157 C1/2FAF: 7B TDC C1/2FB0: 99707B STA $7B70,Y C1/2FB3: 8031 BRA $2FE6 C1/2FB5: BDBD2E LDA $2EBD,X C1/2FB8: 2920 AND #$20 C1/2FBA: F015 BEQ $2FD1 C1/2FBC: B96C7B LDA $7B6C,Y C1/2FBF: C90F CMP #$0F C1/2FC1: F023 BEQ $2FE6 C1/2FC3: A90F LDA #$0F C1/2FC5: 996C7B STA $7B6C,Y C1/2FC8: 205731 JSR $3157 C1/2FCB: 7B TDC C1/2FCC: 99707B STA $7B70,Y C1/2FCF: 8015 BRA $2FE6 C1/2FD1: B96C7B LDA $7B6C,Y C1/2FD4: DDAE2E CMP $2EAE,X C1/2FD7: F00D BEQ $2FE6 C1/2FD9: BDAE2E LDA $2EAE,X C1/2FDC: 996C7B STA $7B6C,Y C1/2FDF: 205731 JSR $3157 C1/2FE2: 7B TDC C1/2FE3: 99707B STA $7B70,Y C1/2FE6: AD4B2F LDA $2F4B (Monst. Form. Aux. Byte 4) C1/2FE9: 2901 AND #$01 C1/2FEB: D026 BNE $3013 C1/2FED: BDBD2E LDA $2EBD,X C1/2FF0: 2910 AND #$10 C1/2FF2: F01F BEQ $3013 C1/2FF4: B9707B LDA $7B70,Y C1/2FF7: D039 BNE $3032 C1/2FF9: AD6A7B LDA $7B6A C1/2FFC: D034 BNE $3032 C1/2FFE: EE6A7B INC $7B6A C1/3001: 205030 JSR $3050 C1/3004: 200631 JSR $3106 C1/3007: A901 LDA #$01 C1/3009: 99707B STA $7B70,Y C1/300C: A91E LDA #$1E C1/300E: 9DCD61 STA $61CD,X C1/3011: 801F BRA $3032 C1/3013: B9707B LDA $7B70,Y C1/3016: F01A BEQ $3032 C1/3018: AD6A7B LDA $7B6A C1/301B: D015 BNE $3032 C1/301D: EE6A7B INC $7B6A C1/3020: 205030 JSR $3050 C1/3023: B96C7B LDA $7B6C,Y C1/3026: 205731 JSR $3157 C1/3029: 7B TDC C1/302A: 99707B STA $7B70,Y C1/302D: A91E LDA #$1E C1/302F: 9DCD61 STA $61CD,X C1/3032: 9ECE61 STZ $61CE,X C1/3035: 207130 JSR $3071 C1/3038: 20242F JSR $2F24 (Setup the status graphics for character X) C1/303B: C220 REP #$20 C1/303D: BDBD2E LDA $2EBD,X C1/3040: 9DC12E STA $2EC1,X C1/3043: BDBF2E LDA $2EBF,X C1/3046: 9DC32E STA $2EC3,X C1/3049: 7B TDC C1/304A: E220 SEP #$20 C1/304C: EE787B INC $7B78 C1/304F: 60 RTS