1 'CVT8-7 10 G$="r986018040038B44280038B4428007<1028A44007<2010087<007<21120970036B4936000301790503F007?06084979413>003>5149453>A008060C00070007A004<2:1=2:48A00070007C0024B003>41A493:003>A41" 20 DATA229,205,92,118,33,84,254,205,59,117,30,0,225,126,230,63,50,30,254,35,62,64,87,211,254,6,50,126,230,207,28,7,7,210,48,254,126,230,63,95,35,195,31,254,35,7,7 30 DATA79,126,35,230,207,129,211,255,29,202,70,254,5,205,72,117,195,57,254,5,194,31,254,126,254,34,200,122,198,64,195,26,254,4,0 40 CLS:FORX=-508TO-427:READA:POKEX,A:NEXT:U=VARPTR(G$)+1:LINE(99,6)-(150,33),1,B:LINE(97,4)-(152,35),1,B:CALL-508,0,PEEK(U)+256*PEEK(U+1) 50 PRINT@204,"8-bit to 7-bit Program Converter":PRINT@248,"by Neil Wick [71056,613]" 60 MAXFILES=2:CLEAR800:DIMOF(2):OF(1)=93:OF(2)=157:FORX=1TO1500:IFINKEY$=""THENNEXT 70 CLS:PRINT:PRINT" ";:FORY=-1617TO-1408STEP11:IF(PEEK(Y)AND192)=192THENFORZ=3TO8:PRINTCHR$(PEEK(Y+Z));:NEXT:PRINT" "; 80 NEXT:PRINT:PRINT:INPUT" File to convert";F1$ 90 OPENF1$FORINPUTAS1 100 INPUT" New File ";F2$ 110 OPENF2$FOROUTPUTAS2 120 CLS:PRINT:PRINT"Processing Line #"; 130 LINEINPUT#1,A$:PRINT#2,"0RUN65000:";:GOSUB180:LN=65008 140 IFEOF(1)THEN230ELSELINEINPUT#1,A$:PRINT@57,VAL(A$):F=0:FORX=1TOLEN(A$):IFASC(MID$(A$,X))>122THENF=1 150 NEXT 160 IFF=0THENPRINT#2,A$ELSEPRINT#2,USING"#####";LN;:GOSUB180 170 GOTO140 180 PRINT#2,"Data"CHR$(34);:LN=LN+1 190 FORX=1TOLEN(A$):A=ASC(MID$(A$,X)):OF=NF:IFA>191THENNF=2ELSEIFA>127THENNF=1ELSENF=0 200 IFNF<>OFTHENPRINT#2,CHR$(124+NF); 210 IFA=34THENPRINT#2,"{";ELSEIFA>122ANDA<127THENPRINT#2,"}"CHR$(A);ELSEPRINT#2,CHR$(A-OF(NF)); 220 NEXT:PRINT#2,:RETURN 230 PRINT#2,LN"Data" 240 PRINT#2,"65000CLS:?:?"CHR$(34)"Translating Line #"CHR$(34)":DIMOF(2):OF(1)=93:OF(2)=157:OPEN"CHR$(34)"TEMP8B"CHR$(34)"FOROUTPUTAS1:FORLN=65000TO65007:?#1,LN:NEXT 250 PRINT#2,"65001?@58,VAL(A$):READA$:IFA$="STRING$(2,34)"THEN65006ELSE?#1,LN:F=0:FORX=1TOLEN(A$):A=ASC(MID$(A$,X)) 260 PRINT#2,"65002IFA>123THENIFA<>125THENF=A-124:GOTO65005ELSEX=X+1:B=ASC(MID$(A$,X)):IFB>122THEN?#1,CHR$(B);:GOTO65005ELSEF=A-124:A=B 270 PRINT#2,"65003IFA=123THENA=34 280 PRINT#2,"65004?#1,CHR$(A+OF(F));:IFVAL(A$)=0THENRESTORE65000 290 PRINT#2,"65005NEXT:?#1,:LN=LN+1:GOTO65001 300 PRINT#2,"65006K$="CHR$(34)"KILL"CHR$(34)"+CHR$(34)+"CHR$(34)"TEMP8B.DO"CHR$(34)"+CHR$(34)+CHR$(13)+"CHR$(34)"RUN"CHR$(34)"+CHR$(13) 310 PRINT#2,"65007?#1,0:CLOSE:POKE65450,20:FORP=1TO20:POKE65449+2*P,ASC(MID$(K$,P)):POKE65450+2*P,0:NEXT:MERGE"CHR$(34)"TEMP8B.DO 320 BEEP:PRINT"Done"