100 IF XX=1 THEN 630 110 POKE 56,123:CLR:XX=1:FT=1 120 DIM T(29,2),R(7,7):OPEN 15,8,15 130 FOR X=0 TO 29:T(X,0)=33+X:NEXT 140 FOR X=0 TO 25:T(X,1)=65+X:NEXT 150 T(26,1)=31:T(27,1)=32:T(28,1)=0:T(29,1)=122 160 FOR X=0 TO 29:T(X,2)=X+1:NEXT 170 HH$="" 180 GG$=" " 190 POKE 53280,6:PRINT CHR$(8)CHR$(14)"[147][154] [198]ONT[205]AKER FOR [198]ONT[208]RINTER" 200 GOSUB 1710:PRINT" 12345678":PRINT" [176][192][192][192][192][192][192][192][192][174] F1 PIXEL ON" 210 PRINT" 1[221] [221] F2 PIXEL OFF" 220 PRINT" 2[221] [221] F3 ADD COLUMN" 230 PRINT" 3[221] [221] F4 DELETE COLUMN" 240 PRINT" 4[221] [221]" 250 PRINT" 5[221] [221] F5 KEYBOARD CHOICE" 260 PRINT" 6[221] [221] F6 NEW FONT NUMBER" 270 PRINT" 7[221] [221] F7 LOAD A FONT SET" 280 PRINT" [173][192][192][192][192][192][192][192][192][189] F8 SAVE A FONT SET" 290 PRINT" ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^" 300 PRINT" [193][194][195][196][197][198][199][200][201][202][203][204][205][206][207][208][209][210][211][212][213][214][215][216][217][218]?@[164][186]" 310 PRINT" !"+CHR$(34)+"#$%&'()*+,-./0123456789:;<=>" 320 X1=4:Y1=17 330 POKE 55296+40*Y1+X1,0:GOSUB 1680 340 GET A$:IF A$="" THEN 340 350 POKE 55296+40*Y1+X1,14 360 IF A$<>"" THEN 390 370 IF X1>32 THEN X1=3 380 X1=X1+1:GOTO 330 390 IF A$<>"[157]" THEN 420 400 IF X1<5 THEN X1=34 410 X1=X1-1:GOTO 330 420 IF A$<>"" THEN 450 430 IF Y1>18 THEN Y1=16 440 Y1=Y1+1:GOTO 330 450 IF A$<>"[145]" THEN480 460 IF Y1<18 THEN Y1=20 470 Y1=Y1-1:GOTO 330 480 IF A$<>"[139]" THEN 520 490 GOSUB 1680:PRINT"[211]WITCH TO WHICH FONT?" 500 GET B$:IF B$<"1" OR B$>"9" THEN 500 510 FT=ASC(B$)-48:GOSUB 1710:GOTO 330 520 IF A$<>"[136]" THEN 570 530 GOSUB 1680:PRINT"[204]OAD FILE[144]"; 540 S$="":INPUT S$:S$=LEFT$(S$,16):IF S$="" THEN 330 550 OPEN 1,8,8,S$+",P,R":INPUT#15,A,E$,B$,B$:CLOSE 1:IF A THEN 640 560 LOAD S$,8,1 570 IF A$<>"[140]" THEN 670 580 GOSUB 1680:PRINT"[211]AVE AS[144]"; 590 POKE 2,PEEK(45):POKE 3,PEEK(46):POKE 43,0:POKE 44,123:POKE 45,0:POKE 46,159 600 S$="":INPUT S$:S$=LEFT$(S$,16):IF S$="" THEN 620 610 SAVE S$,8 620 POKE 43,1:POKE 44,8:POKE 45,PEEK(2):POKE 46,PEEK(3) 630 INPUT#15,A,E$,B$,B$:IF A=0 THEN 330 640 GOSUB 1690:PRINT"[196]ISK [197]RROR:"A;E$ 650 GET A$:IF A$="" THEN 650 660 GOSUB 1690:GOTO 330 670 IF A$<>"[135]" THEN 780 680 OPEN 3,3:CMD 3:GOSUB 1690 690 PRINT"CHOICE: [144]";:INPUT A$ 700 PRINT#3:CLOSE 3 710 IF LEN(A$)=1 THEN A=ASC(A$):GOTO740 720 IF LEFT$(A$,1)<>"/" THEN A=0:GOTO 740 730 A=VAL(RIGHT$(A$,LEN(A$)-1)) 740 X2=5:Y2=7:GOSUB 1600:IF SC=1 THEN 1420 750 POKE 55296+40*Y1+X1,0 760 GET A$:IF A$="" THEN 760 770 GOSUB 1690:GOTO 350 780 IF A$=CHR$(13) THEN POKE 55296+40*Y1+X1,1:GOTO 820 790 A=ASC(A$+CHR$(0)):GOSUB 1600:IF SC=0 THEN 750 800 GOSUB 1690:PRINT"CHOICE:[144] "A$ 810 X2=5:Y2=7:GOTO 1420 820 X2=5:Y2=7:GOTO 1410 830 PRINT LEFT$(HH$,Y2+1)TAB(X2)"[154]"; 840 POKE 55296+40*Y2+X2,0 850 GET A$:IF A$="" THEN 850 860 POKE 55296+40*Y2+X2,14 870 IF A$<>"" THEN 910 880 IF WD=0 THEN 850 890 IF X2>3+WD THEN X2=5:GOTO 830 900 X2=X2+1:PRINT"";:GOTO 840 910 IF A$<>"[157]" THEN 940 920 IF X2<6THENX2=4+WD:GOTO 830 930 X2=X2-1:PRINT"[157]";:GOTO 840 940 IF A$<>"" THEN 970 950 IF Y2>12 THEN Y2=6:PRINT"[145][145][145][145][145][145][145]"; 960 Y2=Y2+1:PRINT"";:GOTO 840 970 IF A$<>"[145]" THEN1000 980 IF Y2<8 THEN Y2=14:PRINT""; 990 Y2=Y2-1:PRINT"[145]";:GOTO 840 1000 IFA$=CHR$(13) THEN 1570 1010 IF A$<>CHR$(141) THEN 1040 1020 GOSUB 1690:PRINT""LEFT$(HH$,8)TAB(5); 1030 FOR K=0 TO 7:PRINT" [157] [157] [157] [157] [157] [157] [145][145][145][145][145][145][145]";:NEXT:GOTO 330 1040 IF A$<>"[147]" THEN 1080 1050 PRINT LEFT$(HH$,8); 1060 FOR I=0 TO 6:PRINT TAB(5)""LEFT$(GG$,WD) 1070 FOR R=0 TO 7:R(R,I)=0:NEXT:NEXT:GOTO 830 1080 IF A$<>"" THEN 1110 1090 IF WD THEN X2=5 1100 Y2=7:GOTO 850 1110 IF A$<>"[137]" AND A$<>CHR$(32) THEN 1140 1120 IF WD=0 THEN 850 1130 PRINT" [157]";:R(X2-5,Y2-7)=0:GOTO 890 1140 IF A$<>"[134]" THEN 1190 1150 IF WD<8 THEN WD=WD+1:R(WD-1,7)=128 1160 FOR K=7 TO 13:POKE 55300+40*K+WD,14:NEXT 1170 IF WD=1 THEN 890 1180 GOTO 830 1190 IF A$<>"[138]" THEN 1240 1200 IF WD=0 THEN 830 1210 FOR K=7 TO 13:POKE55300+40*K+WD,6:NEXT 1220 R(WD-1,7)=0:WD=WD-1:IF X2>WD+4 THEN X2=WD+4 1230 GOTO 830 1240 IF A$<>"[139]" THEN 1280 1250 GOSUB 1690:PRINT"[211]WITCH TO WHICH FONT?" 1260 GET B$:IF B$<"1" OR B$>"9" THEN 1260 1270 FT=ASC(B$)-48:GOSUB 1710:GOSUB 1690:GOTO 830 1280 IF A$<>"[135]" THEN 1380 1290 OPEN 3,3:CMD 3:GOSUB 1690 1300 PRINT"CHOICE: [144]";:INPUT A$ 1310 PRINT#3:CLOSE 3 1320 IF LEN(A$)=1 THEN A=ASC(A$):GOTO 1340 1330 A=VAL(RIGHT$(A$,LEN(A$)-1)) 1340 GOSUB 1600:POKE 55296+40*Y2+X2,0 1350 IF SC=1 THEN POKE 55296+40*Y1+X1,14:GOTO 830 1360 GET A$:IF A$="" THEN 1360 1370 GOSUB 1690:PRINT LEFT$(HH$,Y2+1)TAB(X2)"";:GOTO 870 1380 IF A$="[136]" OR A$="[140]" THEN 830 1390 IF WD=0 THEN 850 1400 PRINT"*[157]";:R(X2-5,Y2-7)=2^(Y2-7):GOTO 890 1410 TT=8*T(X1-4,Y1-17)+30464 1420 SS=TT+FT*1024 1430 IF A$=CHR$(13) THEN GOSUB 1690 1440 PRINT"[154]"TAB(5);:R=0 1450 RR=PEEK(SS+R):IF RR<128 THEN 1520 1460 FOR I=0 TO 6:R(R,I)=RR AND 2^I 1470 IF R(R,I) THEN PRINT"*[157]";:GOTO 1490 1480 PRINT" [157]"; 1490 NEXT:R(R,7)=128:PRINT"[145][145][145][145][145][145][145]"; 1500 R=R+1:IF R<8 THEN 1450 1510 WD=R:GOTO 830 1520 IF R=0 THEN X2=4 1530 FOR RR=R TO 7:FOR I=0 TO 6 1540 R(RR,I)=0:PRINT" [157]";:NEXT 1550 R(R,7)=0:PRINT"[145][145][145][145][145][145][145]"; 1560 NEXT:WD=R:GOTO 830 1570 GOSUB 1690:SS=TT+FT*1024:PRINT""TAB(5); 1580 FOR R=0 TO 7:K=0:FOR I=0 TO 7:K=K+R(R,I):NEXT 1590 POKE SS+R,K:PRINT" [157] [157] [157] [157] [157] [157] [145][145][145][145][145][145][145]";:NEXT:GOTO 330 1600 SC=1:IF A>255 THEN 1670 1610 IF A=255 THEN TT=8*94+30464:RETURN 1620 IF A>127 THEN 1650 1630 IF A<32 THEN 1670 1640 TT=8*(A-32)+30464:RETURN 1650 IF A<160 THEN 1670 1660 TT=8*(A AND 127 OR64)+30464:RETURN 1670 GOSUB 1690:PRINT"[144]-INVALID CHARACTER":SC=0:RETURN 1680 PRINT HH$GG$:GOTO 1700 1690 PRINT "[146]"LEFT$(HH$,16)GG$ 1700 PRINT"[145]";:RETURN 1710 PRINT""TAB(12)"[154][195]URRENT FONT:"FT:RETURN