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 C14
< Final Fantasy VI | ROM map
Jump to navigation
Jump to search
This is a sub-page of Final Fantasy VI/ROM map.
C1/4010: AD342F LDA $2F34 (Wallpaper selection) (from C1/4034, C1/403F) C1/4013: 2907 AND #$07 (Zero out upper nibble) C1/4015: 8D342F STA $2F34 (Store as the wallpaper selection) C1/4018: 0A ASL A (Double it) C1/4019: 18 CLC C1/401A: 6D342F ADC $2F34 (Add in the original [now A holds Wallpaper # times 3]) C1/401D: AA TAX C1/401E: BFE23FC1 LDA $C13FE2,X (load upper byte of address of menu window graphics) C1/4022: 8512 STA $12 C1/4024: C220 REP #$20 C1/4026: BFE03FC1 LDA $C13FE0,X (load lower two bytes of address of menu window graphics) C1/402A: AA TAX C1/402B: 7B TDC C1/402C: E220 SEP #$20 C1/402E: A08003 LDY #$0380 C1/4031: 8410 STY $10 C1/4033: 60 RTS C1/4034: 201040 JSR $4010 C1/4037: A0000A LDY #$0A00 C1/403A: A512 LDA $12 C1/403C: 4C8D19 JMP $198D C1/403F: 201040 JSR $4010 (from only C1/1124) C1/4042: A410 LDY $10 C1/4044: 8436 STY $36 C1/4046: A512 LDA $12 C1/4048: A00042 LDY #$4200 C1/404B: 202B1A JSR $1A2B C1/404E: A20008 LDX #$0800 C1/4051: 8636 STX $36 C1/4053: A200F0 LDX #$F000 C1/4056: A00044 LDY #$4400 C1/4059: A9D2 LDA #$D2 C1/405B: 202B1A JSR $1A2B (slot graphics loader?, DMA style) C1/405E: A20010 LDX #$1000 C1/4061: 8636 STX $36 C1/4063: A2C07F LDX #$7FC0 C1/4066: A00058 LDY #$5800 C1/4069: A9C4 LDA #$C4 (FWF position) C1/406B: 202B1A JSR $1A2B (FWF font loader, DMA style) C1/406E: AD342F LDA $2F34 (Wallpaper selection) C1/4071: 2907 AND #$07 C1/4073: 8D342F STA $2F34 (Store as wallpaper selection) C1/4076: 0A ASL A C1/4077: 18 CLC C1/4078: 6D342F ADC $2F34 (Add in original value [now A holds wallpaper # times 3]) C1/407B: AA TAX C1/407C: BFFA3FC1 LDA $C13FFA,X C1/4080: 8538 STA $38 C1/4082: C220 REP #$20 C1/4084: BFF83FC1 LDA $C13FF8,X C1/4088: 8536 STA $36 C1/408A: 7B TDC (set A to 0) C1/408B: AA TAX (set X to 0) C1/408C: A8 TAY (set Y to 0) C1/408D: A90800 LDA #$0008 C1/4090: 852C STA $2C C1/4092: 20E441 JSR $41E4 C1/4095: B736 LDA [$36],Y C1/4097: 207E41 JSR $417E C1/409A: 9D427E STA $7E42,X C1/409D: C8 INY C1/409E: C8 INY C1/409F: E8 INX C1/40A0: E8 INX C1/40A1: E00E00 CPX #$000E C1/40A4: D0EF BNE $4095 C1/40A6: 7B TDC C1/40A7: AA TAX C1/40A8: BFC062ED LDA $ED62C0,X (Load battle text palettes (white and gray)) C1/40AC: 9D007E STA $7E00,X C1/40AF: BFD062ED LDA $ED62D0,X (Load battle text palettes (yellow and cyan)) C1/40B3: 9D107E STA $7E10,X C1/40B6: E8 INX C1/40B7: E8 INX C1/40B8: E01000 CPX #$0010 C1/40BB: D0EB BNE $40A8 C1/40BD: AD551D LDA $1D55 (Load the custom font color) C1/40C0: 8D067E STA $7E06 (Store that to the $7E06 palette entry) C1/40C3: 7B TDC C1/40C4: E220 SEP #$20 C1/40C6: A08040 LDY #$4080 C1/40C9: 7B TDC C1/40CA: AA TAX C1/40CB: BFCB3FC1 LDA $C13FCB,X (load the ATB character) C1/40CF: DA PHX C1/40D0: C220 REP #$20 C1/40D2: 0A ASL A C1/40D3: 0A ASL A C1/40D4: 0A ASL A C1/40D5: 0A ASL A C1/40D6: 18 CLC C1/40D7: 69C07F ADC #$7FC0 (add the font's starting position to get to the ATB bar) C1/40DA: AA TAX C1/40DB: A91000 LDA #$0010 C1/40DE: 8536 STA $36 C1/40E0: 7B TDC C1/40E1: E220 SEP #$20 C1/40E3: A9C4 LDA #$C4 C1/40E5: 202B1A JSR $1A2B C1/40E8: FA PLX C1/40E9: C220 REP #$20 C1/40EB: 98 TYA C1/40EC: 18 CLC C1/40ED: 691000 ADC #$0010 C1/40F0: A8 TAY C1/40F1: 7B TDC C1/40F2: E220 SEP #$20 C1/40F4: E8 INX C1/40F5: E01500 CPX #$0015 C1/40F8: D0D1 BNE $40CB C1/40FA: 20FE40 JSR $40FE C1/40FD: 60 RTS C1/40FE: 7B TDC C1/40FF: AA TAX C1/4100: BFE862ED LDA $ED62E8,X (Load battle gauge palette) C1/4104: 9D287E STA $7E28,X C1/4107: E8 INX C1/4108: E01800 CPX #$0018 C1/410B: D0F3 BNE $4100 C1/410D: 60 RTS C1/410E: 7B TDC C1/410F: AA TAX C1/4110: BF4E41C1 LDA $C1414E,X C1/4114: 9D507E STA $7E50,X C1/4117: E8 INX C1/4118: E01000 CPX #$0010 C1/411B: D0F3 BNE $4110 C1/411D: 60 RTS C1/411E: 7B TDC C1/411F: AA TAX C1/4120: 9D507E STA $7E50,X C1/4123: E8 INX C1/4124: E01000 CPX #$0010 C1/4127: D0F7 BNE $4120 C1/4129: 60 RTS C1/412A: 7B TDC C1/412B: AA TAX C1/412C: C220 REP #$20 C1/412E: BF6641C1 LDA $C14166,X C1/4132: 49FFFF EOR #$FFFF C1/4135: 9D287E STA $7E28,X C1/4138: E8 INX C1/4139: E8 INX C1/413A: E01800 CPX #$0018 C1/413D: D0EF BNE $412E C1/413F: 7B TDC C1/4140: E220 SEP #$20 C1/4142: 60 RTS C1/4143: 7B TDC C1/4144: 9E287E STZ $7E28,X C1/4147: E8 INX C1/4148: E01800 CPX #$0018 C1/414B: D0F7 BNE $4144 C1/414D: 60 RTS C1/414E: 9C7318 C1/4151: 639452 C1/4154: 10428C C1/4157: 310821 C1/4159: 841000 C1/415D: 000000 smells like data C1/4160: E07F C1/4162: E07F C1/4164: E07F C1/4166: 186F C1/4168: 10 C1/4169: 4A C1/416A: 28 PLP C1/416B: 297F AND #$7F C1/416D: 0354 ORA $54,S C1/416F: 028E COP #$8E C1/4171: 011F ORA ($1F,X) C1/4173: 0016 BRK #$16 C1/4175: 00C1 BRK #$C1 C1/4177: 7CE36C JMP ($6CE3,X) C1/417A: FF7F0000 SBC $00007F,X C1/417E: 8532 STA $32 C1/4180: 291F AND #$1F C1/4182: 0018 BRK #$18 C1/4184: 652C ADC $2C C1/4186: 8534 STA $34 C1/4188: 29E0 AND #$E0 C1/418A: 7FD00BA5 ADC $A50BD0,X C1/418E: 3229 AND ($29) C1/4190: E07F05 CPX #$057F C1/4193: 3485 BIT $85,X C1/4195: 3280 AND ($80) C1/4197: 07A5 ORA [$A5] C1/4199: 3209 AND ($09) C1/419B: 1F008532 ORA $328500,X C1/419F: A532 LDA $32 C1/41A1: 29E0 AND #$E0 C1/41A3: 0318 ORA $18,S C1/41A5: 652E ADC $2E C1/41A7: 8534 STA $34 C1/41A9: 291F AND #$1F C1/41AB: 7CD00B JMP ($0BD0,X) C1/41AE: A532 LDA $32 C1/41B0: 291F AND #$1F C1/41B2: 7C0534 JMP ($3405,X) C1/41B5: 8532 STA $32 C1/41B7: 8007 BRA $41C0 C1/41B9: A532 LDA $32 C1/41BB: 09E0 ORA #$E0 C1/41BD: 0385 ORA $85,S C1/41BF: 32A5 AND ($A5) C1/41C1: 3229 AND ($29) C1/41C3: 007C BRK #$7C C1/41C5: 18 CLC C1/41C6: 6530 ADC $30 C1/41C8: 8534 STA $34 C1/41CA: 29FF AND #$FF C1/41CC: 83D0 STA $D0,S C1/41CE: 0B PHD C1/41CF: A532 LDA $32 C1/41D1: 29FF AND #$FF C1/41D3: 0305 ORA $05,S C1/41D5: 3485 BIT $85,X C1/41D7: 3280 AND ($80) C1/41D9: 07A5 ORA [$A5] C1/41DB: 3209 AND ($09) C1/41DD: 007C BRK #$7C C1/41DF: 8532 STA $32 C1/41E1: A532 LDA $32 C1/41E3: 60 RTS C1/41E4: A52C LDA $2C C1/41E6: 0A ASL A C1/41E7: 0A ASL A C1/41E8: 0A ASL A C1/41E9: 0A ASL A C1/41EA: 0A ASL A C1/41EB: 29E003 AND #$03E0 C1/41EE: 852E STA $2E C1/41F0: 0A ASL A C1/41F1: 0A ASL A C1/41F2: 0A ASL A C1/41F3: 0A ASL A C1/41F4: 0A ASL A C1/41F5: 29007C AND #$7C00 C1/41F8: 8530 STA $30 C1/41FA: A52C LDA $2C C1/41FC: 291F00 AND #$001F C1/41FF: 852C STA $2C C1/4201: 60 RTS C1/4202: 8532 LDA $32 C1/4204: 291F00 AND #$001F C1/4207: 38 SEC C1/4208: E52C SBC $2C C1/420A: 8534 STA $34 C1/420C: 29E07F AND #$7FE0 C1/420F: D00B BNE $421D C1/4211: A532 LDA $32 C1/4213: 29E07F AND #$7FE0 C1/4216: 0534 ORA $34 C1/4218: 8532 STA $32 C1/421A: 8007 BRA $4224 C1/421C: A532 LDA $32 C1/421E: 29E07F AND #$7FE0 C1/4221: 8532 STA $32 C1/4223: A532 LDA $32 C1/4225: 29E003 AND #$03EO C1/4228: 38 SEC C1/4229: E52E SBC $2E C1/422B: 8534 STA $34 C1/422D: 291F7C AND #$7C1F C1/4230: D00B BNE $423D C1/4232: A532 LDA $32 C1/4234: 291F7C AND #$7C1F C1/4237: 0534 ORA $34 C1/4239: 8532 STA $32 C1/423B: 8007 BRA $4244 C1/423D: A532 LDA $32 C1/423F: 291F7C AND #$7C1F C1/4242: 8532 STA $32 C1/4244: A532 LDA $32 C1/4246: 29007C AND #$7C00 C1/4249: 38 SEC C1/424A: E530 SBC $30 C1/424C: 8534 STA $34 C1/424E: 29FF83 AND #$83FF C1/4251: D00B BNE $425E C1/4253: A532 LDA $32 C1/4255: 29FF03 AND #$03FF C1/4258: 0534 ORA $34 C1/425A: 8532 STA $32 C1/425C: 8007 BRA $4265 C1/425E: A532 LDA $32 C1/4260: 29FF03 AND #$03FF C1/4263: 8532 STA $32 C1/4265: A532 LDA $32 C1/4267: 60 RTS C1/4268: AD837B LDA $7B83 (from C1/5529, X = 39) C1/426B: 1005 BPL $4272 C1/426D: A91C LDA #$1C C1/426F: 8D837B STA $7B83 C1/4272: 208642 JSR $4286 C1/4275: AD837B LDA $7B83 C1/4278: 38 SEC C1/4279: E904 SBC #$04 C1/427B: 8D837B STA $7B83 C1/427E: C9FC CMP #$FC C1/4280: D003 BNE $4285 C1/4282: 4C4A5A JMP $5A4A C1/4285: 60 RTS C1/4286: 7B TDC C1/4287: AA TAX C1/4288: C220 REP #$20 C1/428A: AD837B LDA $7B83 C1/428D: 852C STA $2C C1/428F: 20E441 JSR $41E4 C1/4292: BF6641C1 LDA $C14166,X C1/4296: 49FFFF EOR #$FFFF C1/4299: 200242 JSR $4202 C1/429C: 9D287E STA $7E28,X C1/429F: E8 INX C1/42A0: E8 INX C1/42A1: E01800 CPX #$0018 C1/42A4: D0EC BNE $4292 C1/42A6: 7B TDC C1/42A7: AA TAX C1/42A8: AD837B LDA $7B83 C1/42AB: 852C STA $2C C1/42AD: 20E441 JSR $41E4 C1/42B0: BF4E41C1 LDA $C1414E,X C1/42B4: 49FFFF EOR #$FFFF C1/42B7: 200242 JSR $4202 C1/42BA: 9D507E STA $7E50,X C1/42BD: E8 INX C1/42BE: E8 INX C1/42BF: E01000 CPX #$0010 C1/42C2: D0EC BNE $42B0 C1/42C4: 7B TDC C1/42C5: E220 SEP #$20 C1/42C7: 60 RTS C1/42C8: AD837B LDA $7B83 (from C1/5529, X = 3A) C1/42CB: 1003 BPL $42D0 C1/42CD: 9C837B STZ $7B83 C1/42D0: 208642 JSR $4286 C1/42D3: AD837B LDA $7B83 C1/42D6: 18 CLC C1/42D7: 6904 ADC #$04 C1/42D9: 8D837B STA $7B83 C1/42DC: C920 CMP #$20 C1/42DE: D003 BNE $42E3 C1/42E0: 4C4A5A JMP $5A4A C1/42E3: 60 RTS C1/42E4: 20BB5D JSR $5DBB C1/42E7: A20058 LDX #$5800 C1/42EA: 8EBFE9 STX $E9BF C1/42ED: 209B63 JSR $639B C1/42F0: A2005A LDX #$5A00 C1/42F3: 8EBFE9 STX $E9BF C1/42F6: 209B63 JSR $639B C1/42F9: A2005C LDX #$5C00 C1/42FC: 8EBFE9 STX $E9BF C1/42FF: 209B63 JSR $639B C1/4302: A2005E LDX #$5E00 C1/4305: 8EBFE9 STX $E9BF C1/4308: 209B63 JSR $639B C1/430B: 206D43 JSR $436D C1/430E: 20AC99 JSR $99AC C1/4311: 60 RTS C1/4312: A2FFFF LDX #$FFFF C1/4315: 8E0140 STX $4001 C1/4318: 8E0340 STX $4003 C1/431B: ADCA7B LDA $7BCA C1/431E: F005 BEQ $4325 C1/4320: 202A02 JSR $022A C1/4323: 80ED BRA $4312 C1/4325: ADD564 LDA $64D5 C1/4328: D020 BNE $434A C1/432A: 204B43 JSR $434B C1/432D: EED564 INC $64D5 C1/4330: A93B LDA #$3B C1/4332: 8DC37B STA $7BC3 C1/4335: A901 LDA #$01 C1/4337: 8DC27B STA $7BC2 (queue up to execute at C1/5A41) C1/433A: ADF07B LDA $7BF0 C1/433D: 0DC27B ORA $7BC2 (ORA #$01?) C1/4340: F005 BEQ $4347 C1/4342: 202A02 JSR $022A C1/4345: 80F3 BRA $433A C1/4347: 20E442 JSR $42E4 C1/434A: 60 RTS C1/434B: 204C99 JSR $994C C1/434E: A0007C LDY #$7C00 C1/4351: 20AC43 JSR $43AC C1/4354: A0407C LDY #$7C40 C1/4357: 20AC43 JSR $43AC C1/435A: A0807C LDY #$7C80 C1/435D: 20AC43 JSR $43AC C1/4360: A0C07C LDY #$7CC0 C1/4363: 20AC43 JSR $43AC C1/4366: A0007D LDY #$7D00 C1/4369: 20AC43 JSR $43AC C1/436C: 60 RTS C1/436D: 204C99 JSR $994C C1/4370: A20031 LDX #$3100 C1/4373: A0007C LDY #$7C00 C1/4376: 209543 JSR $4395 C1/4379: A24031 LDX #$3140 C1/437C: A0407C LDY #$7C40 C1/437F: 209543 JSR $4395 C1/4382: A28031 LDX #$3180 C1/4385: A0807C LDY #$7C80 C1/4388: 209543 JSR $4395 C1/438B: A2C031 LDX #$31C0 C1/438E: A0C07C LDY #$7CC0 C1/4391: 209543 JSR $4395 C1/4394: 60 RTS C1/4395: C220 REP #$20 (from C1/4376, C1/437F, C1/4388, C1/4391) C1/4397: 8A TXA C1/4398: A600 LDX $00 C1/439A: 9D45E7 STA $E745,X C1/439D: 1A INC A C1/439E: 9D85E7 STA $E785,X C1/43A1: 1A INC A C1/43A2: E8 INX C1/43A3: E8 INX C1/43A4: E03400 CPX #$0034 C1/43A7: D0F1 BNE $439A C1/43A9: 7B TDC C1/43AA: E220 SEP #$20 C1/43AC: A28000 LDX #$0080 C1/43AF: 8610 STX $10 C1/43B1: A23FE7 LDX #$E73F C1/43B4: A97E LDA #$7E C1/43B6: 4C8D19 JMP $198D C1/43B9: 204B43 JSR $434B C1/43BC: A20010 LDX #$1000 C1/43BF: 8610 STX $10 C1/43C1: A2C07F LDX #$7FC0 C1/43C4: A00058 LDY #$5800 C1/43C7: A9C4 LDA #$C4 (FWF position) C1/43C9: 4C8D19 JMP $198D C1/43CC: ADD564 LDA $64D5 C1/43CF: F010 BEQ $43E1 C1/43D1: 20B943 JSR $43B9 C1/43D4: A93C LDA #$3C C1/43D6: 8DC37B STA $7BC3 C1/43D9: A902 LDA #$02 C1/43DB: 8DC27B STA $7BC2 (queue up to execute at C1/5A4A) C1/43DE: 9CD564 STZ $64D5 C1/43E1: 60 RTS C1/43E2: AECA62 LDX $62CA (from C1/4512, X = 22) C1/43E5: ADCC7B LDA $7BCC C1/43E8: D004 BNE $43EE C1/43EA: A9FF LDA #$FF C1/43EC: 8038 BRA $4426 C1/43EE: C902 CMP #$02 C1/43F0: D032 BNE $4424 C1/43F2: 7B TDC C1/43F3: AA TAX C1/43F4: BD0140 LDA $4001,X C1/43F7: C9FF CMP #$FF C1/43F9: F003 BEQ $43FE C1/43FB: FE0140 INC $4001,X C1/43FE: E8 INX C1/43FF: E00400 CPX #$0004 C1/4402: D0F0 BNE $43F4 C1/4404: 7B TDC C1/4405: AA TAX C1/4406: 6410 STZ $10 C1/4408: 8612 STX $12 C1/440A: BD0140 LDA $4001,X C1/440D: C9FF CMP #$FF C1/440F: F008 BEQ $4419 C1/4411: C510 CMP $10 C1/4413: 9004 BCC $4419 C1/4415: 8510 STA $10 C1/4417: 8612 STX $12 C1/4419: E8 INX C1/441A: E00400 CPX #$0004 C1/441D: D0EB BNE $440A C1/441F: A612 LDX $12 C1/4421: 7B TDC C1/4422: 8002 BRA $4426 C1/4424: A904 LDA #$04 C1/4426: 8514 STA $14 C1/4428: BD0140 LDA $4001,X C1/442B: C9FF CMP #$FF C1/442D: F005 BEQ $4434 C1/442F: A514 LDA $14 C1/4431: 9D0140 STA $4001,X C1/4434: 9C412F STZ $2F41 C1/4437: 9CCA7B STZ $7BCA C1/443A: 9CCC7B STZ $7BCC C1/443D: 20E950 JSR $50E9 C1/4440: 229701C1 JSL $C10197 C1/4444: 60 RTS C1/4445: ADDB64 LDA $64DB (from C1/00AB, (branch back) C1/449E, C1/44A7) C1/4448: 290F AND #$0F C1/444A: 8510 STA $10 C1/444C: 0A ASL A C1/444D: 0A ASL A C1/444E: 18 CLC C1/444F: 6510 ADC $10 (Multipliers by 5) C1/4451: A8 TAY C1/4452: 8412 STY $12 C1/4454: B92D60 LDA $602D,Y C1/4457: C9FF CMP #$FF C1/4459: F046 BEQ $44A1 C1/445B: A20000 LDX #$0000 C1/445E: DD8626 CMP $2686,X (Does this entry have the same index as 602D,Y?) C1/4461: F021 BEQ $4484 (If it matches, branch) C1/4463: E8 INX C1/4464: E8 INX C1/4465: E8 INX C1/4466: E8 INX C1/4467: E8 INX (increment X by 5, since this struct is 5 words wide) C1/4468: E00005 CPX #$0500 (have we left the bounds of the table yet?) C1/446B: D0F1 BNE $445E (if not, do it again) C1/446D: 20D28C JSR $8CD2 (remove any null items stored to the struct at 2686) C1/4470: B02F BCS $44A1 C1/4472: A905 LDA #$05 C1/4474: 8510 STA $10 C1/4476: B92D60 LDA $602D,Y C1/4479: 9D8626 STA $2686,X C1/447C: C8 INY C1/447D: E8 INX C1/447E: C610 DEC $10 C1/4480: D0F4 BNE $4476 C1/4482: 8010 BRA $4494 C1/4484: B93060 LDA $6030,Y (Load the quantity) C1/4487: 18 CLC C1/4488: 7D8926 ADC $2689,X (add it to the inventory quantity) C1/448B: C964 CMP #$64 (is it 100 yet?) C1/448D: 9002 BCC $4491 (if less, store the quantity now!) C1/448F: A963 LDA #$63 (otherwise, set it to 99) C1/4491: 9D8926 STA $2689,X (and store that quantity) C1/4494: A412 LDY $12 C1/4496: A9FF LDA #$FF C1/4498: 992D60 STA $602D,Y C1/449B: EEDB64 INC $64DB C1/449E: 4C4544 JMP $4445 (BRA would be better) C1/44A1: 60 RTS C1/44A2: A901 LDA #$01 C1/44A4: 8D987B STA $7B98 C1/44A7: 204544 JSR $4445 C1/44AA: 205947 JSR $4759 C1/44AD: A904 LDA #$04 C1/44AF: 8DC37B STA $7BC3 C1/44B2: A901 LDA #$01 C1/44B4: 8DC27B STA $7BC2 (queue up to execute at C1/5A41) C1/44B7: EEBB7B INC $7BBB C1/44BA: EECA7B INC $7BCA C1/44BD: 60 RTS C1/44BE: AD987B LDA $7B98 (from C1/020C) C1/44C1: 0D9C7B ORA $7B9C C1/4B45: D011 BNE $44D7 C1/44C6: AD997B LDA $7B99 C1/44C9: 0A ASL A C1/44CA: AA TAX C1/44CB: FCED44 JSR ($44ED,X) C1/44CE: AD997B LDA $7B99 C1/44D1: 1A INC A C1/44D2: 2907 AND #$07 C1/44D4: 8D997B STA $7B99 C1/44D7: AD9A7B LDA $7B9A (from C1/4B45) C1/44DA: 1A INC A C1/44DB: 2903 AND #$03 C1/44DD: 8D9A7B STA $7B9A C1/44E0: 0A ASL A C1/44E1: AA TAX C1/44E2: 7CE544 JMP ($44E5,X) Pointers (called from C1/44E2) (function) (value) C1/44E5: BC4A (0) C1/44E7: CA4A (1) C1/44E9: DB4A (2) C1/44EB: EC4A (3) C1/44ED: FD4A (4) C1/44EF: 0045 (5) C1/44F1: 044B (6) C1/44F3: 0045 (7) C1/44F5: 0D4B (8) C1/44F7: 0045 (9) C1/44F9: 164B (A) C1/44FB: FD44 (B) C1/44FD: 203E4B JSR $4B3E (from C1/44E2, X = B) C1/4500: EE9C7B INC $7B9C (from C1/44E2, X = 5, 7, or 9) C1/4503: 60 RTS C1/4504: ADBB7B LDA $7BBB (from C1/022F) C1/4507: D00C BNE $4515 C1/4509: A600 LDX $00 C1/450B: 8610 STX $10 C1/450D: ADF07B LDA $7BF0 C1/4510: 0A ASL A C1/4511: AA TAX C1/4512: 7C1745 JMP ($4517,X) C1/4515: 60 RTS C1/4516: 60 RTS (from C1/4512, X = 0, F, 23, or 24) Function Pointers (from C1/4512, index $7BF0) (Function) (value of $7BF0) (where assigned) C1/4517: 1645 (0) () C1/4519: CE50 (1) ($4650, $4F7C) C1/451B: DD50 (2) ($4682, $4F8E) C1/451D: 3746 (3) () C1/451F: F34F (4) ($59CD) C1/4521: 6B46 (5) ($568A) C1/4523: AD50 (6) ($56D9) C1/4525: 8850 (7) ($5797) C1/4527: B650 (8) ($56F4) C1/4529: B74F (9) ($5653) C1/452B: C44F (A) ($5669) C1/452D: 9850 (B) ($57D1) C1/452F: B650 (C) ($56EB) C1/4531: 9B4F (D) ($5A0F) C1/4533: A84F (E) ($571F) C1/4535: 1645 (F) () C1/4537: E950 (10) () C1/4539: 9850 (11) ($591E) C1/453B: B650 (12) ($56FD) C1/453D: 8850 (13) ($594F) C1/453F: B650 (14) ($5704) C1/4541: 8850 (15) ($597A) C1/4543: B650 (16) ($570F) C1/4545: 074F (17) ($5633) C1/4547: 464F (18) ($567C) C1/4549: 184F (19) ($563D) C1/454B: 464F (1A) ($5675) C1/454D: 8850 (1B) ($59A5) C1/454F: B650 (1C) ($5718) C1/4551: 8850 (1D) ($58A8) C1/4553: B650 (1E) ($56E2) C1/4555: C850 (1F) () C1/4557: 8850 (20) ($58E4) C1/4559: B650 (21) ($5699) C1/455B: E243 (22) ($5660) C1/455D: 1645 (23) () C1/455F: 1645 (24) () C1/4561: DA4E (25) ($5620) C1/4563: F24E (26) ($5628) C1/4565: 3E50 (27) ($5757) C1/4568: 6250 (28) ($5761) C1/456A: 2052 (29) ($59F0) C1/456C: 3552 (2A) () C1/456D: FE45 (2B) ($55B2) C1/456F: 7145 (2C) ($55BA) C1/4571: E610 INC $10 (from C1/4512, X = 2D) C1/4573: A91A LDA #$1A C1/4575: 18 CLC C1/4576: 6DBAEC ADC $ECBA C1/4579: 20FB50 JSR $50FB C1/457C: A90A LDA #$0A C1/457E: 206551 JSR $5165 C1/4581: 208C4F JSR $4F8C C1/4584: 4CF248 JMP $48F2 Start from status byte 1, and find first status to output to text C1/4587: C220 REP #$20 (from C1/45CE, C1/45DB, C1/45E8, C1/45F5) C1/4589: BDBD2E LDA $2EBD,X (status bytes 1 & 2) C1/458C: F011 BEQ $459F (branch if no status inflicted) C1/458E: EB XBA C1/458F: A20000 LDX #$0000 C1/4592: 0A ASL A C1/4593: B006 BCS $459B C1/4595: E8 INX C1/4596: E01000 CPX #$0010 C1/4599: D0F7 BNE $4592 C1/459B: 8A TXA C1/459C: E220 SEP #$20 C1/459E: 60 RTS C1/459F: BDBF2E LDA $2EBF,X (status bytes 3 & 4, from only C1/458C) C1/45A2: A21000 LDX #$0010 C1/45A5: EB XBA C1/45A6: 0A ASL A C1/45A7: B006 BCS $45AF C1/45A9: E8 INX C1/45AA: E01F00 CPX #$001F C1/45AD: D0F7 BNE $45A6 C1/45AF: 8A TXA C1/45B0: E220 SEP #$20 C1/45B2: 60 RTS Based on A (0 - 3), check to see if a character is in that slot C1/45B3: AA TAX (from C1/45C9, C1/45D6, C1/45E3, C1/45F0) C1/45B4: BDD664 LDA $64D6,X C1/45B7: 3008 BMI $45C1 C1/45B9: 0A ASL A C1/45BA: 0A ASL A C1/45BB: 0A ASL A C1/45BC: 0A ASL A C1/45BD: 0A ASL A C1/45BE: AA TAX C1/45BF: 38 SEC (character in slot) C1/45C0: 60 RTS C1/45C1: 18 CLC (no character in slot) C1/45C2: 60 RTS Draw the status names C1/45C3: A921 LDA #$21 (load pointer #$21, from only C1/4606) C1/45C5: 205A4E JSR $4E5A (draw status names if any need to be) C1/45C8: 7B TDC C1/45C9: 20B345 JSR $45B3 (check to see if any character is in slot 1) C1/45CC: 902D BCC $45FB (branch if no character) C1/45CE: 208745 JSR $4587 (get status to draw) C1/45D1: 8DD656 STA $56D6 C1/45D4: A901 LDA #$01 C1/45D6: 20B345 JSR $45B3 (check to see if any character is in slot 2) C1/45D9: 9020 BCC $45FB (branch if no character) C1/45DB: 208745 JSR $4587 (get status to draw) C1/45DE: 8DD956 STA $56D9 C1/45E1: A902 LDA #$02 C1/45E3: 20B345 JSR $45B3 (check to see if any character is in slot 3) C1/45E6: 9013 BCC $45FB (branch if no character) C1/45E8: 208745 JSR $4587 (get status to draw) C1/45EB: 8DDC56 STA $56DC C1/45EE: A903 LDA #$03 C1/45F0: 20B345 JSR $45B3 (check to see if any character is in slot 4) C1/45F3: 9006 BCC $45FB (branch if no character) C1/45F5: 208745 JSR $4587 (get status to draw) C1/45F8: 8DDF56 STA $56DF C1/45FB: 4CB166 JMP $66B1 C1/45FE: A922 LDA #$22 (load pointer #$22) C1/4600: 205A4E JSR $4E5A (blank all character names and HP) C1/4603: 20B166 JSR $66B1 C1/4606: 20C345 JSR $45C3 C1/4609: A911 LDA #$11 C1/460B: 200447 JSR $4704 C1/460E: 1A INC A C1/460F: 200447 JSR $4704 C1/4612: A902 LDA #$02 C1/4614: 200447 JSR $4704 C1/4617: 1A INC A C1/4618: 200447 JSR $4704 C1/461B: A902 LDA #$02 C1/461D: A0538D LDY #$8D53 C1/4620: 202147 JSR $4721 C1/4623: A901 LDA #$01 C1/4625: 8D857B STA $7B85 C1/4628: 6410 STZ $10 C1/462A: A919 LDA #$19 C1/462C: 20FB50 JSR $50FB C1/462F: A90A LDA #$0A C1/4631: 206551 JSR $5165 C1/4634: 4C774F JMP $4F77 C1/4637: AECA62 LDX $62CA (from C1/4512, X = 3) C1/463A: BDCC62 LDA $62CC,X C1/463D: D009 BNE $4648 C1/463F: AD2E2F LDA $2F2E C1/4642: F004 BEQ $4648 C1/4644: A916 LDA #$16 C1/4646: 8002 BRA $464A C1/4648: A901 LDA #$01 C1/464A: 20FB50 JSR $50FB C1/464D: 7B TDC C1/464E: 206551 JSR $5165 C1/4651: 20AC47 JSR $47AC C1/4654: 20774F JSR $4F77 C1/4657: EEBB7B INC $7BBB C1/465A: A901 LDA #$01 C1/465C: 8DF07B STA $7BF0 C1/465F: 8D857B STA $7B85 C1/4662: EEDD7B INC $7BDD C1/4665: EED17B INC $7BD1 C1/4668: E693 INC $93 C1/466A: 60 RTS C1/466B: E610 INC $10 (from C1/4512, X = 5) C1/466D: 7B TDC C1/466E: 20FB50 JSR $50FB C1/4671: 202B4B JSR $4B2B C1/4674: A921 LDA #$21 C1/4676: 208047 JSR $4780 C1/4679: 7B TDC C1/467A: 206551 JSR $5165 C1/467D: EEEE7B INC $7BEE C1/4680: A902 LDA #$02 C1/4682: 8DF07B STA $7BF0 C1/4685: 9C857B STZ $7B85 C1/4688: EEDD7B INC $7BDD C1/468B: EED17B INC $7BD1 C1/468E: 60 RTS C1/468F: A0EE01 LDY #$01EE (from C1/0094, C1/1136) C1/4692: C220 REP #$20 C1/4694: A600 LDX $00 C1/4696: 98 TYA C1/4697: 9D5558 STA $5855,X C1/469A: E8 INX C1/469B: E8 INX C1/469C: E08002 CPX #$0280 C1/469F: D0F6 BNE $4697 C1/46A1: 7B TDC C1/46A2: E220 SEP #$20 C1/46A4: 60 RTS C1/46A5: A904 LDA #$04 C1/46A7: 8DFD7A STA $7AFD C1/46AA: E210 SEP #$10 C1/46AC: C220 REP #$20 C1/46AE: 0B PHD C1/46AF: A90001 LDA #$0100 C1/46B2: 48 PHA C1/46B3: 2B PLD C1/46B4: A200 LDX #$00 C1/46B6: BD0743 LDA $4307,X C1/46B9: 9502 STA $02,X C1/46BB: 9DF751 STA $51F7,X C1/46BE: E8 INX C1/46BF: E8 INX C1/46C0: E8 INX C1/46C1: E8 INX C1/46C2: E0C0 CPX #$C0 C1/46C4: D0F0 BNE $46B6 C1/46C6: BD0743 LDA $4307,X C1/46C9: 9502 STA $02,X C1/46CB: E8 INX C1/46CC: E8 INX C1/46CD: E8 INX C1/46CE: E8 INX C1/46CF: E0F0 CPX #$F0 C1/46D1: D0F3 BNE $46C6 C1/46D3: 2B PLD C1/46D4: 7B TDC C1/46D5: E220 SEP #$20 C1/46D7: C210 REP #$10 C1/46D9: 60 RTS C1/46DA: E210 SEP #$10 C1/46DC: C220 REP #$20 C1/46DE: A616 LDX $16 C1/46E0: A400 LDY $00 C1/46E2: B110 LDA ($10),Y C1/46E4: 9112 STA ($12),Y C1/46E6: C8 INY C1/46E7: C8 INY C1/46E8: C414 CPY $14 C1/46EA: D0F6 BNE $46E2 C1/46EC: A510 LDA $10 C1/46EE: 18 CLC C1/46EF: 6514 ADC $14 C1/46F1: 8510 STA $10 C1/46F3: A512 LDA $12 C1/46F5: 18 CLC C1/46F6: 694000 ADC #$0040 C1/46F9: 8512 STA $12 C1/46FB: CA DEX C1/46FC: D0E2 BNE $46E0 C1/46FE: 7B TDC C1/46FF: C210 REP #$10 C1/4701: E220 SEP #$20 C1/4703: 60 RTS C1/4704: 48 PHA C1/4705: 0A ASL A C1/4706: 0A ASL A C1/4707: 0A ASL A C1/4708: AA TAX C1/4709: A400 LDY $00 C1/470B: BF9EDFC2 LDA $C2DF9E,X C1/470F: 991000 STA $0010,Y C1/4712: E8 INX C1/4713: C8 INY C1/4714: C00800 CPY #$0008 C1/4717: D0F2 BNE $470B C1/4719: 20DA46 JSR $46DA C1/471C: 68 PLA C1/471D: 60 RTS C1/471E: A05558 LDY #$5855 C1/4721: 5A PHY C1/4722: 48 PHA C1/4723: ADBB7B LDA $7BBB C1/4726: F005 BEQ $472D C1/4728: 20241A JSR $1A24 C1/472B: 80F6 BRA $4723 C1/472D: 68 PLA C1/472E: 0A ASL A C1/472F: 0A ASL A C1/4730: AA TAX C1/4731: C220 REP #$20 C1/4733: BF4947C1 LDA $C14749,X C1/4737: 8DBC7B STA $7BBC C1/473A: BF4B47C1 LDA $C1474B,X C1/473E: 8DBE7B STA $7BBE C1/4741: 7A PLY C1/4742: 8CC07B STY $7BC0 C1/4745: 7B TDC C1/4746: E220 SEP #$20 C1/4748: 60 RTS Data of some kind C1/4749: 0002 0078 C1/474D: 0002 0079 C1/4751: 0002 007A C1/4755: 8002 007C C1/4759: 7B TDC C1/475A: 200447 JSR $4704 C1/475D: 1A INC A C1/475E: 200447 JSR $4704 C1/4761: 1A INC A C1/4762: 200447 JSR $4704 C1/4765: 1A INC A C1/4766: 200447 JSR $4704 C1/4769: 7B TDC C1/476A: 4C1E47 JMP $471E C1/476D: 001C BRK #$1C C1/476F: 38 SEC C1/4770: 547BAA MVN $7B,$AA C1/4773: A921 LDA #$21 C1/4775: 9D965B STA $5B96,X C1/4778: E8 INX C1/4779: E8 INX C1/477A: E07000 CPX #$0070 C1/477D: D0F6 BNE $4775 C1/477F: 60 RTS C1/4780: 48 PHA C1/4781: DA PHX C1/4782: 7B TDC C1/4783: AA TAX C1/4784: A921 LDA #$21 C1/4786: 209147 JSR $4791 C1/4789: E8 INX C1/478A: E00400 CPX #$0004 C1/478D: D0F5 BNE $4784 C1/478F: FA PLX C1/4790: 68 PLA C1/4791: DA PHX C1/4792: 48 PHA C1/4793: 8A TXA C1/4794: 2903 AND #$03 C1/4796: AA TAX C1/4797: BF6D47C1 LDA $C1476D,X C1/479B: AA TAX C1/479C: A90E LDA #$0E C1/479E: 8512 STA $12 C1/47A0: 68 PLA C1/47A1: 9D965B STA $5B96,X C1/47A4: E8 INX C1/47A5: E8 INX C1/47A6: C612 DEC $12 C1/47A8: D0F7 BNE $47A1 C1/47AA: FA PLX C1/47AB: 60 RTS C1/47AC: AECA62 LDX $62CA C1/47AF: BDCC62 LDA $62CC,X C1/47B2: D03A BNE $47EE C1/47B4: AD2E2F LDA $2F2E C1/47B7: F077 BEQ $4830 C1/47B9: A91F LDA #$1F C1/47BB: 205A4E JSR $4E5A C1/47BE: AECA62 LDX $62CA C1/47C1: BF5B4BC1 LDA $C14B5B,X C1/47C5: AA TAX C1/47C6: 7B TDC C1/47C7: A8 TAY C1/47C8: BD2E20 LDA $202E,X C1/47CB: 99DA56 STA $56DA,Y C1/47CE: BD2F20 LDA $202F,X C1/47D1: 206B4B JSR $4B6B (Clear all but bit 7, then shift it to bit 2) C1/47D4: 19D856 ORA $56D8,Y C1/47D7: 99D856 STA $56D8,Y C1/47DA: E8 INX C1/47DB: E8 INX C1/47DC: E8 INX C1/47DD: 98 TYA C1/47DE: 18 CLC C1/47DF: 6909 ADC #$09 C1/47E1: A8 TAY C1/47E2: C924 CMP #$24 C1/47E4: D0E2 BNE $47C8 C1/47E6: 20B166 JSR $66B1 C1/47E9: A901 LDA #$01 C1/47EB: 4C1E47 JMP $471E C1/47EE: 202B4B JSR $4B2B C1/47F1: A929 LDA #$29 C1/47F3: 208047 JSR $4780 C1/47F6: A901 LDA #$01 C1/47F8: 200447 JSR $4704 C1/47FB: A920 LDA #$20 C1/47FD: 205A4E JSR $4E5A C1/4800: AECA62 LDX $62CA C1/4803: BF5B4BC1 LDA $C14B5B,X C1/4807: AA TAX C1/4808: 7B TDC C1/4809: A8 TAY C1/480A: BD5E20 LDA $205E,X C1/480D: 99D956 STA $56D9,Y C1/4810: BD5F20 LDA $205F,X C1/4813: 206B4B JSR $4B6B (Clear all but bit 7, then shift it to bit 2) C1/4816: 19D756 ORA $56D7,Y C1/4819: 99D756 STA $56D7,Y C1/481C: E8 INX C1/481D: E8 INX C1/481E: E8 INX C1/481F: 98 TYA C1/4820: 18 CLC C1/4821: 6908 ADC #$08 C1/4823: A8 TAY C1/4824: C920 CMP #$20 C1/4826: D0E2 BNE $480A C1/4828: 20B166 JSR $66B1 C1/482B: A901 LDA #$01 C1/482D: 4C1E47 JMP $471E C1/4830: 202B4B JSR $4B2B C1/4833: A929 LDA #$29 C1/4835: 208047 JSR $4780 C1/4838: A901 LDA #$01 C1/483A: 200447 JSR $4704 C1/483D: A904 LDA #$04 C1/483F: 205A4E JSR $4E5A C1/4842: AECA62 LDX $62CA C1/4845: BF5B4BC1 LDA $C14B5B,X C1/4849: AA TAX C1/484A: 7B TDC C1/484B: A8 TAY C1/484C: BD2E20 LDA $202E,X C1/484F: 99DA56 STA $56DA,Y C1/4852: BD2F20 LDA $202F,X C1/4855: 206B4B JSR $4B6B C1/4858: 19D856 ORA $56D8,Y C1/485B: 99D856 STA $56D8,Y C1/485E: E8 INX C1/485F: E8 INX C1/4860: E8 INX C1/4861: 98 TYA C1/4862: 18 CLC C1/4863: 6908 ADC #$08 C1/4865: A8 TAY C1/4866: C920 CMP #$20 C1/4868: D0E2 BNE $484C C1/486A: 20B166 JSR $66B1 C1/486D: A901 LDA #$01 C1/486F: 4C1E47 JMP $471E C1/4872: AECA62 LDX $62CA C1/4875: A907 LDA #$07 C1/4877: 38 SEC C1/4878: ED2020 SBC $2020 (Subtract (number of swdtechs known - 1)) C1/487B: AA TAX C1/487C: 7B TDC C1/487D: A8 TAY C1/487E: BF60A8C2 LDA $C2A860,X C1/4882: 99DA5D STA $5DDA,Y C1/4885: E8 INX C1/4886: C8 INY C1/4887: C8 INY C1/4888: C01000 CPY #$0010 C1/488B: D0F1 BNE $487E C1/488D: A90C LDA #$0C C1/488F: 200447 JSR $4704 C1/4892: A90D LDA #$0D C1/4894: 200447 JSR $4704 C1/4897: A90E LDA #$0E C1/4899: 200447 JSR $4704 C1/489C: A902 LDA #$02 C1/489E: A0538D LDY #$8D53 C1/48A1: 4C2147 JMP $4721 C1/48A4: A90C LDA #$0C C1/48A6: 200447 JSR $4704 C1/48A9: A90D LDA #$0D C1/48AB: 200447 JSR $4704 C1/48AE: AD2E2F LDA $2F2E C1/48B1: F004 BEQ $48B7 C1/48B3: A910 LDA #$10 C1/48B5: 8009 BRA $48C0 C1/48B7: AECA62 LDX $62CA C1/48BA: BD0F89 LDA $890F,X (Cursor memory) C1/48BD: 18 CLC C1/48BE: 6908 ADC #$08 C1/48C0: 200447 JSR $4704 C1/48C3: A902 LDA #$02 C1/48C5: A0538D LDY #$8D53 C1/48C8: 4C2147 JMP $4721 C1/48CB: A90C LDA #$0C C1/48CD: 200447 JSR $4704 C1/48D0: A90D LDA #$0D C1/48D2: 200447 JSR $4704 C1/48D5: AD2E2F LDA $2F2E C1/48D8: F004 BEQ $48DE C1/48DA: A90F LDA #$0F C1/48DC: 8009 BRA $48E7 C1/48DE: AECA62 LDX $62CA C1/48E1: BD0F89 LDA $890F,X (Cursor memory) C1/48E4: 18 CLC C1/48E5: 6904 ADC #$04 C1/48E7: 200447 JSR $4704 C1/48EA: A902 LDA #$02 C1/48EC: A0538D LDY #$8D53 C1/48EF: 4C2147 JMP $4721 C1/48F2: 8B PHB (atomic, from C1/4584, C1/4F04, C1/4F74, C1/50C8) C1/48F3: C220 REP #$20 C1/48F5: A25558 LDX #$5855 C1/48F8: A0538D LDY #$8D53 C1/48FB: A9FF01 LDA #$01FF C1/48FE: 547E7E MVN $7E,$7E C1/4901: 7B TDC C1/4902: E220 SEP #$20 C1/4904: AB PLB C1/4905: 60 RTS C1/4906: 8410 STY $10 C1/4908: C220 REP #$20 C1/490A: A91000 LDA #$0010 C1/490D: 8518 STA $18 C1/490F: BF00A8C2 LDA $C2A800,X C1/4913: 0A ASL A C1/4914: DA PHX C1/4915: AA TAX C1/4916: BF5B49C1 LDA $C1495B,X C1/491A: 8516 STA $16 C1/491C: FA PLX C1/491D: A90200 LDA #$0002 C1/4920: 8514 STA $14 C1/4922: A510 LDA $10 C1/4924: 8F162100 STA $002116 C1/4928: A516 LDA $16 C1/492A: 8F182100 STA $002118 C1/492E: 1A INC A C1/492F: 8F182100 STA $002118 C1/4933: 1A INC A C1/4934: 8F182100 STA $002118 C1/4938: 1A INC A C1/4939: 8F182100 STA $002118 C1/493D: A510 LDA $10 C1/493F: 18 CLC C1/4940: 692000 ADC #$0020 C1/4943: 8510 STA $10 C1/4945: A516 LDA $16 C1/4947: 18 CLC C1/4948: 691000 ADC #$0010 C1/494B: 8516 STA $16 C1/494D: C614 DEC $14 C1/494F: D0D1 BNE $4922 C1/4951: E8 INX C1/4952: E8 INX C1/4953: C618 DEC $18 C1/4955: D0B8 BNE $490F C1/4957: 7B TDC C1/4958: E220 SEP #$20 C1/495A: 60 RTS C1/495B: 40 C1/495C: 0644 C1/495E: 0648 C1/4960: 064C C1/4962: 0660 C1/4964: 0664 C1/4966: 0668 C1/4968: 066C C1/496A: 06 C1/496B: A0096C LDY #$6C09 C1/496E: A20000 LDX #$0000 C1/4971: 200649 JSR $4906 (set slots, drum 1) C1/4974: A00E6C LDY #$6C0E C1/4977: A22000 LDX #$0020 C1/497A: 200649 JSR $4906 (set slots, drum 2) C1/497D: A0136C LDY #$6C13 C1/4980: A24000 LDX #$0040 C1/4983: 200649 JSR $4906 (set slots, drum 3) C1/4986: A0EE00 LDY #$00EE C1/4989: 209246 JSR $4692 C1/498C: 7B TDC C1/498D: AA TAX C1/498E: A8 TAY C1/498F: BF374AC1 LDA $C14A37,X C1/4993: 998358 STA $5883,Y C1/4996: BF4C4AC1 LDA $C14A4C,X C1/499A: 998458 STA $5884,Y C1/499D: BF3E4AC1 LDA $C14A3E,X C1/49A1: 990359 STA $5903,Y C1/49A4: BF534AC1 LDA $C14A53,X C1/49A8: 990459 STA $5904,Y C1/49AB: BF454AC1 LDA $C14A45,X C1/49AF: 998359 STA $5983,Y C1/49B2: BF5A4AC1 LDA $C14A5A,X C1/49B6: 998459 STA $5984,Y C1/49B9: C8 INY C1/49BA: C8 INY C1/49BB: E8 INX C1/49BC: E00700 CPX #$0007 C1/49BF: D0CE BNE $498F C1/49C1: A28001 LDX #$0180 C1/49C4: 8636 STX $36 C1/49C6: A25558 LDX #$5855 C1/49C9: A0A06A LDY #$6AA0 C1/49CC: A97E LDA #$7E C1/49CE: 202B1A JSR $1A2B C1/49D1: 7B TDC C1/49D2: A8 TAY C1/49D3: B98358 LDA $5883,Y C1/49D6: 99155D STA $5D15,Y C1/49D9: B90359 LDA $5903,Y C1/49DC: 99235D STA $5D23,Y C1/49DF: C8 INY C1/49E0: C00E00 CPY #$000E C1/49E3: D0EE BNE $49D3 C1/49E5: 20175A JSR $5A17 C1/49E8: A906 LDA #$06 C1/49EA: 205A4E JSR $4E5A C1/49ED: 20B166 JSR $66B1 C1/49F0: A28000 LDX #$0080 C1/49F3: 8636 STX $36 C1/49F5: A24D5E LDX #$5E4D C1/49F8: A97E LDA #$7E C1/49FA: A0007E LDY #$7E00 C1/49FD: 202B1A JSR $1A2B C1/4A00: 60 RTS C1/4A01: 20614A JSR $4A61 C1/4A04: 208F4A JSR $4A8F C1/4A07: 20234B JSR $4B23 C1/4A0A: 204B4B JSR $4B4B C1/4A0D: 20684A JSR $4A68 C1/4A10: A91E LDA #$1E C1/4A12: 205A4E JSR $4E5A C1/4A15: AECA62 LDX $62CA C1/4A18: A907 LDA #$07 C1/4A1A: 38 SEC C1/4A1B: ED2020 SBC $2020 C1/4A1E: AA TAX C1/4A1F: 7B TDC C1/4A20: A8 TAY C1/4A21: BF60A8C2 LDA $C2A860,X C1/4A25: 99D856 STA $56D8,Y C1/4A28: E8 INX C1/4A29: C8 INY C1/4A2A: C8 INY C1/4A2B: C8 INY C1/4A2C: C01800 CPY #$0018 C1/4A2F: D0F0 BNE $4A21 C1/49ED: 20B166 JSR $66B1 C1/4A34: 4C534B JMP $4B53 Data: "nnn/nnn MP needed" C1/4A37: 08 (0) C1/4A38: 08 (0) C1/4A39: 08 (0) C1/4A3A: 15 (/) C1/4A3B: 08 (0) C1/4A3C: 08 (0) C1/4A3D: 08 (0) C1/4A3E: 08 (0) C1/4A3F: 08 (0) C1/4A40: 08 (0) C1/4A41: FF191AFF ( MP ) C1/4A45: FF161717181718 ( Needed) C1/4A4C: 0202 C1/4A4E: 0202 C1/4A50: 0202 C1/4A52: 0202 C1/4A54: 0202 C1/4A56: 0002 C1/4A58: 0200 C1/4A5A: 0002 C1/4A5C: 0202 C1/4A5E: 0202 C1/4A60: 02 C1/4A61: 7B TDC (from C1/01AD) C1/4A62: 205A4E JSR $4E5A C1/4A65: 4CB166 JMP $66B1 C1/4A68: 7B TDC C1/4A69: AA TAX C1/4A6A: C220 REP #$20 C1/4A6C: A9FF01 LDA #$01FF C1/4A6F: 9D315D STA $5D31,X C1/4A72: 9D775D STA $5D77,X C1/4A75: E8 INX C1/4A76: E8 INX C1/4A77: E04600 CPX #$0046 C1/4A7A: D0F3 BNE $4A6F C1/4A7C: 7B TDC C1/4A7D: E220 SEP #$20 C1/4A7F: A908 LDA #$08 C1/4A81: 205A4E JSR $4E5A C1/4A84: 20B166 JSR $66B1 C1/4A87: A909 LDA #$09 C1/4A89: 205A4E JSR $4E5A C1/4A8C: 4CB166 JMP $66B1 C1/4A8F: A901 LDA #$01 C1/4A91: 205A4E JSR $4E5A C1/4A94: 4CB166 JMP $66B1 C1/4A97: AA TAX C1/4A98: BDD664 LDA $64D6,X C1/4A9B: 301D BMI $4ABA C1/4A9D: 2903 AND #$03 C1/4A9F: AA TAX C1/4AA0: BD2220 LDA $2022,X C1/4AA3: 9D9E61 STA $619E,X C1/4AA6: BD2620 LDA $2026,X C1/4AA9: 9DA261 STA $61A2,X C1/4AAC: BD2A20 LDA $202A,X C1/4AAF: 9DA661 STA $61A6,X C1/4AB2: BD2620 LDA $2026,X C1/4AB5: F003 BEQ $4ABA C1/4AB7: A904 LDA #$04 C1/4AB9: 60 RTS C1/4ABA: 7B TDC C1/4ABB: 60 RTS C1/4ABC: 7B TDC (from C1/44E2, X = 0) C1/4ABD: 20974A JSR $4A97 C1/4AC0: 18 CLC C1/4AC1: 6912 ADC #$12 C1/4AC3: 201D4B JSR $4B1D C1/4AC6: 9C9B7B STZ $7B9B C1/4AC9: 60 RTS C1/4ACA: A901 LDA #$01 (from C1/44E2, X = 1) C1/4ACC: 20974A JSR $4A97 C1/4ACF: 18 CLC C1/4AD0: 6913 ADC #$13 C1/4AD2: 201D4B JSR $4B1D C1/4AD5: A901 LDA #$01 C1/4AD7: 8D9B7B STA $7B9B C1/4ADA: 60 RTS C1/4ADB: A902 LDA #$02 (from C1/44E2, X = 2) C1/4ADD: 20974A JSR $4A97 C1/4AE0: 18 CLC C1/4AE1: 6914 ADC #$14 C1/4AE3: 201D4B JSR $4B1D C1/4AE6: A902 LDA #$02 C1/4AE8: 8D9B7B STA $7B9B C1/4AEB: 60 RTS C1/4AEC: A903 LDA #$03 (from C1/44E2, X = 3) C1/4AEE: 20974A JSR $4A97 C1/4AF1: 18 CLC C1/4AF2: 6915 ADC #$15 C1/4AF4: 201D4B JSR $4B1D C1/4AF7: A903 LDA #$03 C1/4AF9: 8D9B7B STA $7B9B C1/4AFC: 60 RTS C1/4AFD: 9C9D7B STZ $7B9D (from C1/44E2, X = 4) C1/4B00: A90E LDA #$0E C1/4B02: 8019 BRA $4B1D C1/4B04: A901 LDA #$01 (from C1/44E2, X = 6) C1/4B06: 8D9D7B STA $7B9D C1/4B09: A90F LDA #$0F C1/4B0B: 8010 BRA $4B1D C1/4B0D: A902 LDA #$02 (from C1/44E2, X = 8) C1/4B0F: 8D9D7B STA $7B9D C1/4B12: A910 LDA #$10 C1/4B14: 8007 BRA $4B1D C1/4B16: A903 LDA #$03 (from C1/44E2, X = A) C1/4B18: 8D9D7B STA $7B9D C1/4B1B: A911 LDA #$11 C1/4B1D: 205A4E JSR $4E5A C1/4B20: 4CB166 JMP $66B1 C1/4B23: A902 LDA #$02 C1/4B25: 205A4E JSR $4E5A C1/4B28: 4CB166 JMP $66B1 C1/4B2B: 7B TDC C1/4B2C: AA TAX C1/4B2D: ADCA62 LDA $62CA C1/4B30: DDD664 CMP $64D6,X C1/4B33: F008 BEQ $4B3D C1/4B35: E8 INX C1/4B36: E00400 CPX #$0004 C1/4B39: D0F5 BNE $4B30 C1/4B3B: 7B TDC C1/4B3C: AA TAX C1/4B3D: 60 RTS C1/4B3E: 202B4B JSR $4B2B (from C1/44FD) C1/4B41: 8A TXA C1/4B42: 18 CLC C1/4B43: 690A ADC #$0A C1/4B45: 205A4E JSR $4E5A C1/4B48: 4CB166 JMP $66B1 C1/4B4B: A907 LDA #$07 C1/4B4D: 205A4E JSR $4E5A C1/4B50: 4CB166 JMP $66B1 C1/4B53: A903 LDA #$03 C1/4B55: 205A4E JSR $4E5A C1/4B58: 4CB166 JMP $66B1 C1/4B5B: 00 0C 18 24 C1/4B5F: 0000 C1/4B61: 3C01 C1/4B63: 7802 C1/4B65: B403 C1/4B67: 0005 C1/4B69: 0A0F Clear all but bit 7, then shift it to bit 2 C1/4B6B: 2980 AND #$80 C1/4B6D: 4A LSR A C1/4B6E: 4A LSR A C1/4B6F: 4A LSR A C1/4B70: 4A LSR A C1/4B71: 4A LSR A C1/4B72: 60 RTS C1/4B73: 2540 AND $40 C1/4B75: F003 BEQ $4B7A C1/4B77: A904 LDA #$04 C1/4B79: 60 RTS C1/4B7A: AD0D89 LDA $890D C1/4B7D: C9FF CMP #$FF C1/4B7F: F028 BEQ $4BA9 C1/4B81: A52C LDA $2C C1/4B83: C9FF CMP #$FF C1/4B85: F022 BEQ $4BA9 C1/4B87: AECA62 LDX $62CA C1/4B8A: BD6E2E LDA $2E6E,X C1/4B8D: F00F BEQ $4B9E C1/4B8F: AD0E89 LDA $890E C1/4B92: 2908 AND #$08 C1/4B94: F013 BEQ $4BA9 C1/4B96: A52D LDA $2D C1/4B98: 2908 AND #$08 C1/4B9A: D0DB BNE $4B77 C1/4B9C: 800B BRA $4BA9 C1/4B9E: A52D LDA $2D C1/4BA0: 0D0E89 ORA $890E C1/4BA3: 2918 AND #$18 C1/4BA5: C918 CMP #$18 C1/4BA7: D0CE BNE $4B77 C1/4BA9: A908 LDA #$08 C1/4BAB: 60 RTS C1/4BAC: 0502 C1/4BAE: 0421 C1/4BB0: 0E00FF C1/4BB3: FF04210E C1/4BB7: 00FF C1/4BB9: 00 C1/4BBA: 7B TDC (from C1/5645, C1/8E34, C1/8EA7, C1/8F0E) C1/4BBB: AA TAX C1/4BBC: BFAC4BC1 LDA $C14BAC,X C1/4BC0: 9D5557 STA $5755,X C1/4BC3: E8 INX C1/4BC4: E01300 CPX #$0013 C1/4BC7: D0F3 BNE $4BBC C1/4BC9: AECA62 LDX $62CA C1/4BCC: BF674BC1 LDA $C14B67,X C1/4BD0: A8 TAY C1/4BD1: BF011AC1 LDA $C11A01,X C1/4BD5: 8540 STA $40 C1/4BD7: B9862B LDA $2B86,Y C1/4BDA: 8D5A57 STA $575A C1/4BDD: B99A2B LDA $2B9A,Y C1/4BE0: 8D6057 STA $5760 C1/4BE3: 20074E JSR $4E07 C1/4BE6: 4CAB63 JMP $63AB C1/4BE9: 0502 C1/4BEB: 0421 C1/4BED: 0E00 C1/4BEF: FFFF C1/4BF1: 0421 C1/4BF3: 0E00 C1/4BF5: FF00 C1/4BF7: 5A PHY C1/4BF8: C220 REP #$20 C1/4BFA: 0A ASL A C1/4BFB: 8540 STA $40 C1/4BFD: 0A ASL A C1/4BFE: 18 CLC C1/4BFF: 6540 ADC $40 C1/4C01: A8 TAY C1/4C02: 7B TDC C1/4C03: E220 SEP #$20 C1/4C05: AA TAX C1/4C06: BFE94BC1 LDA $C14BE9,X C1/4C0A: 9D5557 STA $5755,X C1/4C0D: E8 INX C1/4C0E: E01300 CPX #$0013 C1/4C11: D0F3 BNE $4C06 C1/4C13: B90540 LDA $4005,Y C1/4C16: 8D5A57 STA $575A C1/4C19: B90840 LDA $4008,Y C1/4C1C: 8D6057 STA $5760 C1/4C1F: 20074E JSR $4E07 C1/4C22: 20AB63 JSR $63AB C1/4C25: 7A PLY C1/4C26: 60 RTS Build the Item/Throw menu C1/4C27: 5A PHY (from C1/589B, C1/875F, C1/877A) C1/4C28: C220 REP #$20 C1/4C2A: 8540 STA $40 C1/4C2C: 0A ASL A C1/4C2D: 18 CLC C1/4C2E: 6540 ADC $40 C1/4C30: A8 TAY C1/4C31: 7B TDC C1/4C32: E220 SEP #$20 C1/4C34: AA TAX C1/4C35: BF74E0C2 LDA $C2E074,X (format for drawing item menu) C1/4C39: 9D5557 STA $5755,X C1/4C3C: E8 INX C1/4C3D: E01300 CPX #$0013 (did we get 19 bytes?) C1/4C40: D0F3 BNE $4C35 (branch if not) C1/4C42: B90540 LDA $4005,Y C1/4C45: C9FF CMP #$FF C1/4C47: F008 BEQ $4C51 C1/4C49: B90640 LDA $4006,Y C1/4C4C: 8D5D57 STA $575D C1/4C4F: D009 BNE $4C5A C1/4C51: 7B TDC C1/4C52: 8D5D57 STA $575D C1/4C55: A9FF LDA #$FF C1/4C57: 8D5B57 STA $575B C1/4C5A: B90540 LDA $4005,Y C1/4C5D: 8D5A57 STA $575A C1/4C60: 8D6157 STA $5761 C1/4C63: 20074E JSR $4E07 C1/4C66: 20AB63 JSR $63AB C1/4C69: 7A PLY C1/4C6A: 60 RTS Build the Item/Throw menu C1/4C6B: 5A PHY (from C1/578D, C1/8CEC, C1/8D11, C1/8D41) C1/4C6C: C220 REP #$20 C1/4C6E: 8540 STA $40 C1/4C70: 0A ASL A C1/4C71: 0A ASL A C1/4C72: 18 CLC C1/4C73: 6540 ADC $40 C1/4C75: A8 TAY C1/4C76: 7B TDC C1/4C77: E220 SEP #$20 C1/4C79: AA TAX C1/4C7A: BF74E0C2 LDA $C2E074,X (format for drawing item menu) C1/4C7E: 9D5557 STA $5755,X C1/4C81: E8 INX C1/4C82: E01300 CPX #$0013 (did we get 19 bytes?) C1/4C85: D0F3 BNE $4C7A (branch if not) C1/4C87: AECA62 LDX $62CA C1/4C8A: BF011AC1 LDA $C11A01,X C1/4C8E: 8540 STA $40 C1/4C90: B98626 LDA $2686,Y C1/4C93: C9FF CMP #$FF C1/4C95: F008 BEQ $4C9F C1/4C97: B98926 LDA $2689,Y C1/4C9A: 8D5D57 STA $575D C1/4C9D: D009 BNE $4CA8 C1/4C9F: 7B TDC C1/4CA0: 8D5D57 STA $575D C1/4CA3: A9FF LDA #$FF C1/4CA5: 8D5B57 STA $575B C1/4CA8: B98626 LDA $2686,Y C1/4CAB: 8D5A57 STA $575A C1/4CAE: 8D6157 STA $5761 C1/4CB1: AD0C89 LDA $890C C1/4CB4: F018 BEQ $4CCE C1/4CB6: B98626 LDA $2686,Y C1/4CB9: 852C STA $2C C1/4CBB: B98726 LDA $2687,Y C1/4CBE: 852D STA $2D C1/4CC0: B98A26 LDA $268A,Y C1/4CC3: 20734B JSR $4B73 C1/4CC6: 0D5857 ORA $5758 C1/4CC9: 8D5857 STA $5758 C1/4CCC: 800C BRA $4CDA C1/4CCE: B98726 LDA $2687,Y C1/4CD1: 206B4B JSR $4B6B (Clear all but bit 7, then shift it to bit 2) C1/4CD4: 0D5857 ORA $5758 C1/4CD7: 8D5857 STA $5758 C1/4CDA: 20074E JSR $4E07 C1/4CDD: 20AB63 JSR $63AB C1/4CE0: 7A PLY C1/4CE1: 60 RTS Build the Rage menu C1/4CE2: 5A PHY (from only C1/5945) C1/4CE3: 0A ASL A C1/4CE4: A8 TAY C1/4CE5: 7B TDC C1/4CE6: AA TAX C1/4CE7: BF67E0C2 LDA $C2E067,X (format for drawing rage menu) C1/4CEB: 9D5557 STA $5755,X C1/4CEE: E8 INX C1/4CEF: E00D00 CPX #$000D (did we get 13 bytes?) C1/4CF2: D0F3 BNE $4CE7 (branch if not) C1/4CF4: B97E25 LDA $257E,Y (List of known rages, even (left)) C1/4CF7: 8D5A57 STA $575A C1/4CFA: B97F25 LDA $257F,Y (List of known rages, odd (right)) C1/4CFD: 8D6057 STA $5760 C1/4D00: 20074E JSR $4E07 C1/4D03: 20AB63 JSR $63AB C1/4D06: 7A PLY C1/4D07: 60 RTS Build the Dance menu C1/4D08: 5A PHY C1/4D09: 0A ASL A C1/4D0A: A8 TAY C1/4D0B: 7B TDC C1/4D0C: AA TAX C1/4D0D: BF5AE0C2 LDA $C2E05A,X (format for drawing dance menu) C1/4D11: 9D5557 STA $5755,X C1/4D14: E8 INX C1/4D15: E00D00 CPX #$000D (did we get 13 bytes?) C1/4D18: D0F3 BNE $4D0D (branch if not) C1/4D1A: B97E26 LDA $267E,Y (List of known dances, even (left)) C1/4D1D: 8D5A57 STA $575A C1/4D20: B97F26 LDA $267F,Y (List of known dances, odd (right)) C1/4D23: 8D6057 STA $5760 C1/4D26: 20074E JSR $4E07 C1/4D29: 20AB63 JSR $63AB C1/4D2C: 7A PLY C1/4D2D: 60 RTS Build the Magitek menu C1/4D2E: 5A PHY (from only C1/599B) C1/4D2F: 0A ASL A C1/4D30: A8 TAY C1/4D31: 7B TDC C1/4D32: AA TAX C1/4D33: BF4DE0C2 LDA $C2E04D,X (format for drawing magitek menu) C1/4D37: 9D5557 STA $5755,X C1/4D3A: E8 INX C1/4D3B: E00D00 CPX #$000D (did we get 13 bytes?) C1/4D3E: D0F3 BNE $4D33 (branch if not) C1/4D40: 98 TYA C1/4D41: AA TAX C1/4D42: ADCA62 LDA $62CA C1/4D45: 0A ASL A C1/4D46: 0A ASL A C1/4D47: 0A ASL A C1/4D48: 0A ASL A C1/4D49: 0A ASL A C1/4D4A: A8 TAY C1/4D4B: B9AE2E LDA $2EAE,Y C1/4D4E: D010 BNE $4D60 (branch if not Terra) C1/4D50: BF0C91C1 LDA $C1910C,X (Left column M-tek attacks for Terra) C1/4D54: 8D5A57 STA $575A C1/4D57: BF0D91C1 LDA $C1910D,X (Right column M-tek attacks for Terra) C1/4D5B: 8D6057 STA $5760 C1/4D5E: 800E BRA $4D6E C1/4D60: BF1491C1 LDA $C19114,X (Left column M-tek attacks for everyone but Terra) C1/4D64: 8D5A57 STA $575A C1/4D67: BF1591C1 LDA $C19115,X (Right column M-tek attacks for everyone but Terra) C1/4D6B: 8D6057 STA $5760 C1/4D6E: 20074E JSR $4E07 C1/4D71: 20AB63 JSR $63AB C1/4D74: 7A PLY C1/4D75: 60 RTS Build the Lore menu C1/4D76: 5A PHY (from C1/5914, C1/83B9, C1/83D4) C1/4D77: 8540 STA $40 C1/4D79: ADCA62 LDA $62CA C1/4D7C: 0A ASL A C1/4D7D: AA TAX C1/4D7E: A540 LDA $40 C1/4D80: C220 REP #$20 C1/4D82: 0A ASL A C1/4D83: 0A ASL A C1/4D84: 18 CLC C1/4D85: 7F5F4BC1 ADC $C14B5F,X C1/4D89: A8 TAY C1/4D8A: 7B TDC C1/4D8B: E220 SEP #$20 C1/4D8D: AA TAX C1/4D8E: BF45E0C2 LDA $C2E045,X (format for drawing lore menu) C1/4D92: 9D5557 STA $5755,X C1/4D95: E8 INX C1/4D96: E00E00 CPX #$000E C1/4D99: D0F3 BNE $4D8E C1/4D9B: B96A21 LDA $216A,Y C1/4D9E: 8D5B57 STA $575B C1/4DA1: B96B21 LDA $216B,Y C1/4DA4: 206B4B JSR $4B6B (Clear all but bit 7, then shift it to bit 2) C1/4DA7: 0D5957 ORA $5759 C1/4DAA: 8D5957 STA $5759 C1/4DAD: 20074E JSR $4E07 C1/4DB0: 20AB63 JSR $63AB C1/4DB3: 7A PLY C1/4DB4: 60 RTS Build the Magic menu C1/4DB5: 5A PHY (from C1/57C7, C1/822B, C1/8246) C1/4DB6: 0A ASL A C1/4DB7: 8540 STA $40 C1/4DB9: ADCA62 LDA $62CA C1/4DBC: 0A ASL A C1/4DBD: AA TAX C1/4DBE: A540 LDA $40 C1/4DC0: C220 REP #$20 C1/4DC2: 0A ASL A C1/4DC3: 0A ASL A C1/4DC4: 18 CLC C1/4DC5: 7F5F4BC1 ADC $C14B5F,X C1/4DC9: A8 TAY C1/4DCA: 7B TDC C1/4DCB: E220 SEP #$20 C1/4DCD: AA TAX C1/4DCE: BF36E0C2 LDA $C2E036,X (format for drawing magic menu) C1/4DD2: 9D5557 STA $5755,X C1/4DD5: E8 INX C1/4DD6: E01000 CPX #$0010 (did we get 16 bytes?) C1/4DD9: D0F3 BNE $4DCE (branch if not) C1/4DDB: B99220 LDA $2092,Y C1/4DDE: 8D5A57 STA $575A C1/4DE1: B99620 LDA $2096,Y C1/4DE4: 8D6057 STA $5760 C1/4DE7: B99320 LDA $2093,Y C1/4DEA: 206B4B JSR $4B6B (Clear all but bit 7, then shift it to bit 2) C1/4DED: 0D5857 ORA $5758 C1/4DF0: 8D5857 STA $5758 C1/4DF3: B99720 LDA $2097,Y C1/4DF6: 206B4B JSR $4B6B (Clear all but bit 7, then shift it to bit 2) C1/4DF9: 0D5E57 ORA $575E C1/4DFC: 8D5E57 STA $575E C1/4DFF: 20074E JSR $4E07 C1/4E02: 20AB63 JSR $63AB C1/4E05: 7A PLY C1/4E06: 60 RTS C1/4E07: A25557 LDX #$5755 (from C1/4BE3, C1/4C1F, C1/4C63, C1/4CDA, C1/4D00, C1/4D26, C1/4D6E, C1/4DFF, C1/4E54) C1/4E0A: 8EDD88 STX $88DD C1/4E0D: A24D5E LDX #$5E4D C1/4E10: 8EDF88 STX $88DF C1/4E13: A920 LDA #$20 C1/4E15: 8DE188 STA $88E1 C1/4E18: A921 LDA #$21 C1/4E1A: 8DE288 STA $88E2 C1/4E1D: 60 RTS Build the Esper menu C1/4E1E: 7B TDC (from only C1/5A01) C1/4E1F: AA TAX C1/4E20: BF83E0C2 LDA $C2E083,X (format for drawing esper menu) C1/4E24: 9D5557 STA $5755,X C1/4E27: E8 INX C1/4E28: E01700 CPX #$0017 (did we get 23 bytes?) C1/4E2B: D0F3 BNE $4E20 (branch if not) C1/4E2D: ADCA62 LDA $62CA C1/4E30: 0A ASL A C1/4E31: AA TAX C1/4E32: C220 REP #$20 C1/4E34: BF5F4BC1 LDA $C14B5F,X C1/4E38: AA TAX C1/4E39: 7B TDC C1/4E3A: E220 SEP #$20 C1/4E3C: BD8E20 LDA $208E,X C1/4E3F: 8D6157 STA $5761 C1/4E42: BD9120 LDA $2091,X C1/4E45: 8D6A57 STA $576A C1/4E48: BD8F20 LDA $208F,X C1/4E4B: 206B4B JSR $4B6B (Clear all but bit 7, then shift it to bit 2) C1/4E4E: 0D5F57 ORA $575F C1/4E51: 8D5F57 STA $575F C1/4E54: 20074E JSR $4E07 C1/4E57: 4CAB63 JMP $63AB C1/4E5A: 48 PHA (from C1/45C5, C1/4600, C1/47BB, C1/47FD, C1/483F, C1/49EA, C1/4A12, C1/4A62, C1/4A81, C1/4A89, C1/4A91, C1/4B1D, C1/4B25, C1/4B45, C1/4B4D, C1/4B55) C1/4E5B: 0A ASL A C1/4E5C: AA TAX C1/4E5D: A9C2 LDA #$C2 C1/4E5F: 8512 STA $12 C1/4E61: C220 REP #$20 C1/4E63: BF9AE0C2 LDA $C2E09A,X (pointers for drawing the various menus) C1/4E67: 8510 STA $10 C1/4E69: A400 LDY $00 C1/4E6B: B710 LDA [$10],Y C1/4E6D: 99D556 STA $56D5,Y C1/4E70: C8 INY C1/4E71: C8 INY C1/4E72: C04000 CPY #$0040 C1/4E75: D0F4 BNE $4E6B C1/4E77: 7B TDC C1/4E78: E220 SEP #$20 C1/4E7A: 68 PLA C1/4E7B: 0A ASL A C1/4E7C: 0A ASL A C1/4E7D: AA TAX C1/4E7E: BF12DFC2 LDA $C2DF12,X C1/4E82: 8DD988 STA $88D9 C1/4E85: BF13DFC2 LDA $C2DF13,X C1/4E89: 8DDA88 STA $88DA C1/4E8C: BF14DFC2 LDA $C2DF14,X C1/4E90: 8DDB88 STA $88DB C1/4E93: A921 LDA #$21 C1/4E95: 8DDC88 STA $88DC C1/4E98: A2D556 LDX #$56D5 C1/4E9B: 8ED788 STX $88D7 (eventually becomes D556xxxxxx21) C1/4E9E: 60 RTS C1/4E9F: AD2E2F LDA $2F2E (from C1/4F0C, C1/4F1D) C1/4EA2: F00A BEQ $4EAE C1/4EA4: A917 LDA #$17 C1/4EA6: 20FB50 JSR $50FB C1/4EA9: A905 LDA #$05 C1/4EAB: 4C6551 JMP $5165 C1/4EAE: AECA62 LDX $62CA (from only C1/4EA2) C1/4EB1: BD0F89 LDA $890F,X (Cursor memory) C1/4EB4: 48 PHA C1/4EB5: 18 CLC C1/4EB6: 690A ADC #$0A C1/4EB8: 20FB50 JSR $50FB C1/4EBB: 68 PLA C1/4EBC: 18 CLC C1/4EBD: 6905 ADC #$05 C1/4EBF: 4C6551 JMP $5165 C1/4EC2: A600 LDX $00 (from C1/4EDC, C1/4F09, C1/4F1A, C1/509A) C1/4EC4: 9DF18B STA $8BF1,X C1/4EC7: 9D398C STA $8C39,X C1/4ECA: 9D818C STA $8C81,X C1/4ECD: 9DC98C STA $8CC9,X C1/4ED0: E8 INX C1/4ED1: E8 INX C1/4ED2: E8 INX C1/4ED3: E8 INX C1/4ED4: E04800 CPX #$0048 C1/4ED7: D0EB BNE $4EC4 C1/4ED9: 60 RTS C1/4EDA: A983 LDA #$83 (from C1/4512, X = 25) C1/4EDC: 20C24E JSR $4EC2 C1/4EDF: A912 LDA #$12 C1/4EE1: 20FB50 JSR $50FB C1/4EE4: A909 LDA #$09 C1/4EE6: 206551 JSR $5165 C1/4EE9: EEDB7B INC $7BDB C1/4EEC: 207248 JSR $4872 C1/4EEF: 4C774F JMP $4F77 C1/4EF2: E610 INC $10 (from C1/4512, X = 26) C1/4EF4: A913 LDA #$13 C1/4EF6: 20FB50 JSR $50FB C1/4EF9: EEDB7B INC $7BDB C1/4EFC: A909 LDA #$09 C1/4EFE: 206551 JSR $5165 C1/4F01: 208C4F JSR $4F8C C1/4F04: 4CF248 JMP $48F2 C1/4F07: A983 LDA #$83 (from C1/4512, X = 17) C1/4F09: 20C24E JSR $4EC2 C1/4F0C: 209F4E JSR $4E9F C1/4F0F: 20CB48 JSR $48CB C1/4F12: EEDB7B INC $7BDB C1/4F15: 4C774F JMP $4F77 C1/4F18: A983 LDA #$83 (from C1/4512, X = 19) C1/4F1A: 20C24E JSR $4EC2 C1/4F1D: 209F4E JSR $4E9F C1/4F20: 20A448 JSR $48A4 C1/4F23: AD2E2F LDA $2F2E C1/4F26: F004 BEQ $4F2C C1/4F28: A960 LDA #$60 C1/4F2A: 8002 BRA $4F2E C1/4F2C: A930 LDA #$30 C1/4F2E: 8510 STA $10 C1/4F30: 6411 STZ $11 C1/4F32: C220 REP #$20 C1/4F34: ADD27B LDA $7BD2 C1/4F37: 38 SEC C1/4F38: E510 SBC $10 C1/4F3A: 8DD27B STA $7BD2 C1/4F3D: 7B TDC C1/4F3E: E220 SEP #$20 C1/4F40: EEDB7B INC $7BDB C1/4F43: 4C774F JMP $4F77 C1/4F46: E610 INC $10 (from C1/4512, X = 18 or 1A) C1/4F48: A901 LDA #$01 C1/4F4A: 206551 JSR $5165 C1/4F4D: AD2E2F LDA $2F2E C1/4F50: F008 BEQ $4F5A C1/4F52: A918 LDA #$18 C1/4F54: 20FB50 JSR $50FB C1/4F57: 7B TDC C1/4F58: 800E BRA $4F68 C1/4F5A: AECA62 LDX $62CA C1/4F5D: BD0F89 LDA $890F,X (Cursor memory) C1/4F60: 48 PHA C1/4F61: 18 CLC C1/4F62: 690E ADC #$0E C1/4F64: 20FB50 JSR $50FB C1/4F67: 68 PLA C1/4F68: 18 CLC C1/4F69: 6905 ADC #$05 C1/4F6B: 206551 JSR $5165 C1/4F6E: EEDB7B INC $7BDB C1/4F71: 208C4F JSR $4F8C C1/4F74: 4CF248 JMP $48F2 C1/4F77: EEBB7B INC $7BBB C1/4F7A: A901 LDA #$01 C1/4F7C: 8DF07B STA $7BF0 C1/4F7F: 9C857B STZ $7B85 C1/4F82: EEDD7B INC $7BDD C1/4F85: EED17B INC $7BD1 C1/4F88: 60 RTS C1/4F89: EEBB7B INC $7BBB C1/4F8C: A902 LDA #$02 C1/4F8E: 8DF07B STA $7BF0 C1/4F91: 9C857B STZ $7B85 C1/4F94: EEDD7B INC $7BDD C1/4F97: EED17B INC $7BD1 C1/4F9A: 60 RTS C1/4F9B: A908 LDA #$08 (from C1/4512, X = D) C1/4F9D: 20FB50 JSR $50FB C1/4FA0: A903 LDA #$03 C1/4FA2: 206551 JSR $5165 C1/4FA5: 4C7A4F JMP $4F7A C1/4FA8: E610 INC $10 (from C1/4512, X = E) C1/4FAA: A909 LDA #$09 C1/4FAC: 20FB50 JSR $50FB C1/4FAF: A903 LDA #$03 C1/4FB1: 206551 JSR $5165 C1/4FB4: 4C8C4F JMP $4F8C C1/4FB7: A905 LDA #$05 (from C1/4512, X = 9) C1/4FB9: 20FB50 JSR $50FB C1/4FBC: A904 LDA #$04 C1/4FBE: 206551 JSR $5165 C1/4FC1: 4C7A4F JMP $4F7A C1/4FC4: E610 INC $10 (from C1/4512, X = A) C1/4FC6: A907 LDA #$07 C1/4FC8: 20FB50 JSR $50FB C1/4FCB: A904 LDA #$04 C1/4FCD: 206551 JSR $5165 C1/4FD0: 4C8C4F JMP $4F8C C1/4FD3: C220 REP #$20 (from C1/4FFC, C1/50B0) C1/4FD5: 8622 STX $22 (Animation Script pointer) C1/4FD7: 8424 STY $24 C1/4FD9: A28C02 LDX #$028C C1/4FDC: A522 LDA $22 (Animation Script pointer) C1/4FDE: 9DF543 STA $43F5,X C1/4FE1: A524 LDA $24 C1/4FE3: 9DF743 STA $43F7,X C1/4FE6: E8 INX C1/4FE7: E8 INX C1/4FE8: E8 INX C1/4FE9: E8 INX C1/4FEA: E04C03 CPX #$034C C1/4FED: D0ED BNE $4FDC C1/4FEF: 7B TDC C1/4FF0: E220 SEP #$20 C1/4FF2: 60 RTS C1/4FF3: 20A546 JSR $46A5 C1/4FF6: A04C00 LDY #$004C C1/4FF9: A20001 LDX #$0100 C1/4FFC: 20D34F JSR $4FD3 C1/4FFF: A902 LDA #$02 C1/5001: 20FB50 JSR $50FB C1/5004: A902 LDA #$02 C1/5006: 206551 JSR $5165 C1/5009: 4C7A4F JMP $4F7A