8-Bit Software Online Conversion

Disassembler - Listing

0DATABRK 10DATA"ORA(&n,X)" 20DATA 30DATA 40DATATSB &n 50DATAORA &n 60DATAASL &n 70DATA 80DATAPHP 90DATAORA #&n 100DATAASL A 110DATA 120DATATSB &nn 130DATAORA &nn 140DATAASL &nn 150DATA 160DATABPL &n 170DATA"ORA(&n),Y" 180DATAORA(&n) 190DATA 200DATATRB &n 210DATA"ORA &n,X" 220DATA"ASL &n,X" 230DATA 240DATACLC 250DATA"ORA &nn,Y" 260DATAINC 270DATA 280DATATRB &nn 290DATA"ORA &nn,X" 300DATA"ASL &nn,X" 310DATA 320DATAJSR &nn 330DATA"AND (&n,X)" 340DATA 350DATA 360DATABIT &n 370DATAAND &n 380DATAROL &n 390DATA 400DATAPLP 410DATAAND #&n 420DATAROL A 430DATA 440DATABIT &nn 450DATAAND &nn 460DATAROL &nn 470DATA 480DATABMI &n 490DATA"AND (&n),Y" 500DATAAND (&n) 510DATA 520DATA"BIT (&n),X" 530DATA"AND &n,X" 540DATA"ROL &n,X" 550DATA 560DATASEC 570DATA"AND &nn,Y" 580DATADEA 590DATA 600DATA"BIT &nn,X" 610DATA"AND &nn,X" 620DATA"ROL &nn,X" 630DATA 640DATARTI 650DATA"EOR &n,X" 660DATA 670DATA 680DATA 690DATAEOR &n 700DATALSR &n 710DATA 720DATAPHA 730DATAEOR #&n 740DATALSR A 750DATA 760DATAJMP &nn 770DATAEOR &nn 780DATALSR &nn 790DATA 800DATABVC &n 810DATA"EOR (&n),Y" 820DATAEOR (&n) 830DATA 840DATA 850DATA"EOR &n,X" 860DATA"LSR &n,X" 870DATA 880DATACLI 890DATA"EOR &nn,Y" 900DATAPHY 910DATA 920DATA 930DATA"EOR &nn,X" 940DATA"LSR &nn,X" 950DATA 960DATARTS 970DATA"ADC (&n),X" 980DATA 990DATA 1000DATASTZ &n 1010DATAADC &n 1020DATAROR &n 1030DATA 1040DATAPLA 1050DATAADC #&n 1060DATAROR A 1070DATA 1080DATAJMP(&nn) 1090DATAADC &nn 1100DATAROR &nn 1110DATA 1120DATABVS &n 1130DATA"ADC (&n),Y" 1140DATAADC (&n) 1150DATA 1160DATA"STZ &n,X" 1170DATA"ADC &n,X" 1180DATA"ROR &n,X" 1190DATA 1200DATASEI 1210DATA"ADC &nn,Y" 1220DATAPLY 1230DATA 1240DATA"JMP (&nn,X)" 1250DATA"ADC &nn,X" 1260DATA"ROR &nn,X" 1270DATA 1280DATABRA &n 1290DATA"STA (&n,X)" 1300DATA 1310DATA 1320DATASTY &n 1330DATASTA &n 1340DATASTX &n 1350DATA 1360DATADEY 1370DATABIT #&n 1380DATATXA 1390DATA 1400DATASTY &nn 1410DATASTA &nn 1420DATASTX &nn 1430DATA 1440DATABCC &n 1450DATA"STA (&n),Y" 1460DATASTA (&n) 1470DATA 1480DATA"STY &n,X" 1490DATA"STA &n,X" 1500DATA"STX &n,Y" 1510DATA 1520DATATYA 1530DATA"STA &nn,Y" 1540DATATXS 1550DATA 1560DATASTZ &nn 1570DATA"STA &nn,X" 1580DATA"STZ &nn,X" 1590DATA 1600DATALDY #&n 1610DATA"LDA (&n,X)" 1620DATALDX #&n 1630DATA 1640DATALDY &n 1650DATALDA &n 1660DATALDX &n 1670DATA 1680DATATAY 1690DATALDA #&n 1700DATATAX 1710DATA 1720DATALDY &nn 1730DATALDA &nn 1740DATALDX &nn 1750DATA 1760DATABCS &n 1770DATA"LDA (&n),Y" 1780DATALDA (&n) 1790DATA 1800DATA"LDY &n,X" 1810DATA"LDA &n,X" 1820DATA"LDX &n,Y" 1830DATA 1840DATACLV 1850DATA"LDA &nn,Y" 1860DATATSX 1870DATA 1880DATA"LDY &nn,X" 1890DATA"LDA &nn,X" 1900DATA"LDX &nn,Y" 1910DATA 1920DATACPY #&n 1930DATA"CMP (&n,X)" 1940DATA 1950DATA 1960DATACPY &n 1970DATACMP &n 1980DATADEC &n 1990DATA 2000DATAINY 2010DATACMP #&n 2020DATADEX 2030DATA 2040DATACPY &nn 2050DATACMP &nn 2060DATADEC &nn 2070DATA 2080DATABNE &n 2090DATA"CMP (&n),Y" 2100DATACMP (&n) 2110DATA 2120DATA 2130DATA"CMP &n,X" 2140DATA"DEC &n,X" 2150DATA 2160DATACLD 2170DATA"CMP &nn,Y" 2180DATAPHX 2190DATA 2200DATA 2210DATA"CMP &nn,X" 2220DATA"DEC &nn,X" 2230DATA 2240DATACPX #&n 2250DATA"SBC (&n,X)" 2260DATA 2270DATA 2280DATACPX &n 2290DATASBC &n 2300DATAINC &n 2310DATA 2320DATA INX 2330DATASBC #&n 2340DATANOP 2350DATA 2360DATACPX &nn 2370DATASBC &nn 2380DATAINC &nn 2390DATA 2400DATABEQ &n 2410DATA"SBC (&n),Y" 2420DATASBC (&n) 2430DATA 2440DATA 2450DATA"SBC &n,X" 2460DATA"INC &n,X" 2470DATA 2480DATASED 2490DATA"SBC &nn,Y" 2500DATAPLX 2510DATA 2520DATA 2530DATA"SBC &nn,X" 2540DATA"INC &nn,X" 2550DATA 2560DEFFNS="DISM" 2570MODE7+128 2580ONERROR:VDU3:REPORT:PRINTERL:CLOSE# 0:END 2590PRINT':PROCp("Disc/Memory Disassemb le"):PRINT':PROCp("By C.J.Richardson.") 2600PRINT':PROCp("65C02 version. List t he program and"):PROCp("type GOTO 2870 t o convert to 6502"):PRINT' 2610PRINT" List opcodes? Y/N":IFGET$="Y ":VDU2:FORM%=0TO255STEP4:READA$,B$,C$,D$ :PRINT"&";÷M%;TAB(4);M%;TAB(8);A$;TAB(24 );"&";÷M%+1;TAB(28);M%+1;TAB(32);B$;TAB( 48);"&";÷M%+2;TAB(52);M%+2;TAB(56);C$;TA B(71);"&";÷M%+3;TAB(75);M%+3;TAB(79);D$: NEXT:VDU3 2620REPEAT:PRINT" Read from Disc or Mem ory D/M?":q$=GET$:UNTILq$="D"ORq$="M" 2630PRINT" Printout Y/N ":pr$=GET$:PRIN T" Single jumps or Relative S/R?":f$=GET $ 2640ct%=1:PRINT" Mode 7 OR 0?":IFGET$=" 0" MODE0+128 2650IF q$="M" m%=FNhex:REPEAT:PROCread: m%=m%+c%+1:UNTILFALSE 2660IF q$="D":INPUT"Filename to read "; fl$:FI%=OPENIN fl$:PTR#FI%=FNhex-1:REPEA T:PROCread:UNTILEOF#FI%:END 2670DEFPROCread:c%=0:mo$="":ct%=ct%+1:I Fpr$="Y"VDU2 2680IFq$="D" bt%=BGET#FI% ELSE bt%=?m% 2690RESTORE bt%*10:READ bt$:tem%=INSTR( bt$,"n"):IF tem% c%=1:s2$=MID$(bt$,tem%+ 1):IF LEFT$(s2$,1)="n" c%=2:s2$=RIGHT$(s 2$,LEN(s2$)-1) 2700IF q$="D" s1$=STR$÷PTR#FI% ELSE s1$ =STR$ ÷m% 2710s1$="&"+s1$:s1$=s1$+"=":IFc%=0 s1$= s1$+bt$ ELSE s1$=s1$+LEFT$(bt$,INSTR(bt$ ,"n")-1) 2720IF q$="M"IFc%=2 s1$=s1$+STR$÷(?(m%+ 1)+?(m%+2)*&100) 2730IF q$="M"IFc%=1 s1$=s1$+STR$÷?(m%+1 ) 2740IF q$="D"IFc%=2 s1$=s1$+STR$÷((BGET #FI%)+(BGET#FI%)*&100):IF f$="S":PTR#FI% =PTR#FI%-2 2750IF q$="D"IFc%=1 s1$=s1$+STR$÷(BGET# FI%):IF f$="S":PTR#FI%=PTR#FI%-1 2760IFc%<>0 PRINTs1$+s2$; ELSE PRINTs1$ ; 2770IFq$="M"IFc%=2PRINTTAB(20);"&";STR$ ÷(m%+1);"=&";STR$÷?(m%+1);" &";STR$÷(m%+ 2);"=&";STR$÷?(m%+2) ELSE IF q$="M"IFc%= 1PRINTTAB(20);"&";STR$÷(m%+1);"=&";STR$÷ ?(m%+1) ELSE PRINT 2780VDU3:IF q$="M"IF f$="S"c%=0 2790IFct%MOD10=0:OSCLI"FX21":mo$=GET$:I Fmo$="J" IF q$="M" m%=FNhex-1 ELSE IF mo $="J" IFq$="D":PTR#FI%=FNhex-1 2800IFmo$="B" IF q$="M" m%=m%-90 ELSE I Fmo$="B" IF q$="D":PTR#FI%=PTR#FI%-90 2810ENDPROC 2820DEFFNhex:INPUT"Read from where ";m$ :IF LEFT$(m$,1)<>"&":=VAL(m$) 2830m$="000"+MID$(m$,2):m$=RIGHT$(m$,4) :m%=0:FORHL=1TO4:te%=ASC(MID$(m$,HL)) 2840IFte%>57 te%=te%-55 ELSE te%=te%-48 2850m%=m%*16+te%:NEXT:=m% 2860DEFPROCp(A$):PRINTTAB(18-LENA$/2)"  2870*K.0 40D.|M120D.|M180D.|M200D.|M260 D.|M280D.|M520D.|M580D.|M600D.|M820D.|M9 00D.|M1000D.|M1140D.|M1240D.|M1280D.|M14 60D.|M1560D.|M1580D.|M1780D.|M2180D.|M24 20D.|M2500D.|M2560DEFFNS="DISB"|M2600PRO Cp("6502 version")|M2870|M2880|M 2880*FX138 0 128