20 MAXFILES=1:CLEAR500 30 DIMH$(15),M$(255,1) 60 FORA=0TO15:READH$(A):NEXT 70 FORA=0TO255:READM$(A,0):M$(A,1)="1":NEXT 80 FORA=1TO18:READB2:M$(B2,1)="2":NEXT 90 FORA=1TO26:READB3:M$(B3,1)="3":NEXT 100 CLS:PRINT 105 LINEINPUT"FILESPEC: ";FL$:OPENFL$FOROUTPUTAS1 110 INPUT"STARTING MEMORY LOCATION";S 120 INPUT"ENDING MEMORY LOCATION";E 130 G=0 200 FOR AD=S TO E 230 P=PEEK(AD) 240 DE=P:GOSUB1000:HD$=H2$ 250 C=P:GOSUB1200:CH$=C$ 260 DE=AD:GOSUB1100:AD$=H4$ 270 IFG<1THENPRINT#1,AD$;" ";ELSEG=G-1:GOTO320 280 PRINT#1,M$(P,0); 290 IFM$(P,1)="2"THENG=1:DE=PEEK(AD+1):GOSUB1000:HD$=HD$+H2$:W$="$"+H2$:PRINT#1,W$;:C=DE:GOSUB1200:CH$=CH$+C$ 300 IFM$(P,1)="3"THENG=2:DE=PEEK(AD+1):GOSUB1000:HD$=HD$+H2$:W$=H2$:C=DE:GOSUB1200:CH$=CH$+C$:DE=PEEK(AD+2):GOSUB1000:HD$=HD$+H2$:W$="$"+H2$+W$:C=DE:GOSUB1200:CH$=CH$+C$:PRINT#1,W$; 310 PRINT#1," ;";HD$;" ";CH$ 320 NEXT AD 998 END 999 REM 1 byte to 2 hex digits 1000 H2$=H$(DE\16)+H$(DEMOD16) 1010 RETURN 1099 REM 2 byte to 4 hex digits 1100 IFDE>32767THENH4$=H$(DE/4096):DE=DE-4096*FIX(DE/4096)ELSEH4$=H$(DE\4096):DE=DEMOD4096 1110 H4$=H4$+H$(DE\256):DE=DEMOD256 1120 GOSUB1000 1130 H4$=H4$+H2$ 1140 RETURN 1199 REM ctrl char filter 1200 IFC<32THENC$="^"+CHR$(C+64):RETURNELSEC$=CHR$(C):RETURN 9000 DATA "0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F" 9005 DATA"NOP ","LXI BC,","STAX BC","INX BC","INR B","DCR B","MVI B,","RLC "," ","DAD BC","LDAX BC","DCX BC","INR C","DCR C","MVI C,","RRC " 9010 DATA" ","LXI DE,","STAX DE","INX DE","INR D","DCR D","MVI D,","RAL "," ","DAD DE","LDAX DE","DCX DE","INR E","DCR E","MVI E,","RAR " 9020 DATA"RIM ","LXI HL,","SHLD ","INX HL","INR H","DCR H","MVI H,","DAA"," ","DAD HL","LHLD ","DCX HL","INR L","DRC L","MVI L,","CMA " 9030 DATA"SIM ","LXI SP,","STA ","INX SP","INR M","DCR M","MVI M,","STC "," ","DAD SP","LDA ","DCX SP","INR A","DCR A","MVI A,","CMC " 9040 DATA"MOV B,B","MOV B,C","MOV B,D","MOV B,E","MOV B,H","MOV B,L","MOV B,M","MOV B,A","MOV C,B","MOV C,C","MOV C,D","MOV C,E","MOV C,H","MOV C,L","MOV C,M","MOV C,A" 9050 DATA"MOV D,B","MOV D,C","MOV D,D","MOV D,E","MOV D,H","MOV D,L","MOV D,M","MOV D,A","MOV E,B","MOV E,C","MOV E,D","MOV E,E","MOV E,H","MOV E,L","MOV E,M","MOV E,A" 9060 DATA"MOV H,B","MOV H,C","MOV H,D","MOV H,E","MOV H,H","MOV H,L","MOV H,M","MOV H,A","MOV L,B","MOV L,C","MOV L,D","MOV L,E","MOV L,H","MOV L,L","MOV L,M","MOV L,A" 9070 DATA"MOV M,B","MOV M,C","MOV M,D","MOV M,E","MOV M,H","MOV M,L","HLT","MOV M,A","MOV A,B","MOV A,C","MOV A,D","MOV A,E","MOV A,H","MOV A,L","MOV A,M","MOV A,A" 9080 DATA"ADD B","ADD C","ADD D","ADD E","ADD H","ADD L","ADD M","ADD A","ADC B","ADC C","ADC D","ADC E","ADC H","ADC L","ADC M","ADC A" 9090 DATA"SUB B","SUB C","SUB D","SUB E","SUB H","SUB L","SUB M","SUB A","SBB B","SBB C","SBB D","SBB E","SBB H","SBB L","SBB M","SBB A" 9100 DATA"ANA B","ANA C","ANA D","ANA E","ANA H","ANA L","ANA M","ANA A","XRA B","XRA C","XRA D","XRA E","XRA H","XRA L","XRA M","XRA A" 9110 DATA"ORA B","ORA C","ORA D","ORA E","ORA H","ORA L","ORA M","ORA A","CMP B","CMP C","CMP D","CMP E","CMP H","CMP L","CMP M","CMP A" 9120 DATA"RNZ ","POP BC","JNZ ","JMP ","CNZ ","PUSH BC","ADI ","RST 0","RZ ","RET ","JZ "," ","CZ ","CALL ","ACI ","RST 1" 9130 DATA"RNC ","POP DE","JNC ","OUT ","CNC ","PUSH DE","SUI ","RST 2","RC "," ","JC ","IN ","CC "," ","SBI ","RST 3" 9140 DATA"RPO ","POP HL","JPO ","XTHL ","CPO ","PUSH HL","ANI ","RST 4","RPE ","PCHL ","JPE ","XCHG ","CPE "," ","XRI ","RST 5" 9150 DATA"RP ","POP AF","JP ","DI ","CP ","PUSH AF","ORI ","RST 6","RM ","SPHL ","JM ","EI ","CM "," ","CPI ","RST 7" 9300 DATA 6,14,22,30,38,46,54,62,198,206,211,214,219,222,230,238,246,254 9310 DATA 1,17,33,34,42,49,50,58,194,195,196,202,204,205,210,212,218,220,226,228,234,236,242,244,250,252