1000 CSI$=CHR$(155)
1010 DEF FNFP$(F,P)=CSI$+CHR$(48+F)+CHR$(59)+CHR$(48+P)+CHR$(120)
1020 DEF FNNV$(NV)=CSI$+CHR$(48+NV)+CHR$(119)
1030 DEF FNSCR$(R,C)=CHR$(27)+"="+CHR$(32+R)+CHR$(32+C)
1040 EOL$=CHR$(27)+"T"
1050 EOP$=CHR$(27)+"Y"
1060 RV$=CHR$(27)+"GD"
1070 RT$=CHR$(27)+"G@"
1080 GOSUB 1230
1090 LPRINT CHR$(12)
1095 LPRINT DEVICE$
1096 LPRINT
1100 LPRINT FONT$
1110 LPRINT PITCH$
1120 LPRINT LS$
1130 LPRINT
1140 LPRINT "COUNTRY: "NV$
1150 LPRINT
1160 FOR L=32 TO 127
1170 IF L=80 THEN LPRINT CHR$(12)
1180 LPRINT "DECIMAL VALUE =";L;" - CHARACTER = ";CHR$(L);REPEAT$
1190 NEXT L
1200 PRINT CHR$(12)
1205 LPRINT CHR$(12)
1206 FOR I=1 TO 1000
1207 LPRINT " ";
1208 NEXT I
1210 LPRINT CHR$(27)+CHR$(99)
1220 END
1230 PRINT CHR$(27)+"*"
1240 PRINT FNSCR$(1,1);RV$;"GENERAL PRINTER TEST PROGRAM FOR MICROSOFT BASIC";RT$
1250 PRINT FNSCR$(3,1);EOP$;
1260 PRINT "SELECT CHARACTER FONT:"
1270 PRINT 
1280 PRINT "1 - DATA (300 cps)"
1290 PRINT "2 - GOTHIC (80 cps)"
1291 PRINT "3 - OCR"
1292 PRINT "4 - MICRO"
1293 PRINT "5 - ORATOR"
1300 PRINT
1310 INPUT "WHAT NUMBER";N
1320 IF N<1 OR N>5 THEN 1250
1330 PRINT FNSCR$(3,1);EOP$;
1340 PRINT "SELECT NUMBER OF CHARACTERS PER INCH (PITCH):"
1350 PRINT
1360 PRINT "1 - 10 CHARACTERS PER INCH"
1370 PRINT "2 - 12 CHARACTERS PER INCH"
1380 PRINT "3 - 15 CHARACTERS PER INCH"
1390 PRINT "4 - PROPORTIONAL SPACING"
1400 PRINT
1410 INPUT "WHAT NUMBER";N1
1420 IF N1<1 OR N1>4 THEN 1330
1430 IF (N=1 AND N1=4) OR (N=2 AND N1=3) THEN 1460
1440 LPRINT FNFP$(N,N1)
1450 GOTO 1510
1460 PRINT
1470 PRINT "ILLEGAL COMBINATION OF FONT AND PITCH"
1480 FOR I=1 TO 1000
1490 NEXT I
1500 GOTO 1250
1510 IF N=1 THEN FONT$="DATA"
1520 IF N=2 THEN FONT$="GOTHIC"
1530 IF N1=1 THEN PITCH$="10 CHARACTERS PER INCH"
1540 IF N1=2 THEN PITCH$="12 CHARACTERS PER INCH"
1550 IF N1=3 THEN PITCH$="15 CHARACTERS PER INCH"
1560 IF N1=4 THEN PITCH$="PROPORTIONAL SPACING"
1570 PRINT FNSCR$(3,1);EOP$;
1580 PRINT "SELECT NATIONAL VERSION:"
1590 PRINT
1600 PRINT " 1 - GERMANY"
1610 PRINT " 2 - UNITED KINGDOM"
1620 PRINT " 3 - FRANCE"
1630 PRINT " 4 - SPAIN"
1640 PRINT " 5 - ITALY"
1650 PRINT " 6 - SWEDEN/FINLAND"
1660 PRINT " 7 - DENMARK/NORWAY"
1670 PRINT " 8 - PORTUGAL"
1680 PRINT " 9 - YUGOSLAVIA"
1690 PRINT "10 - U.S.A."
1700 PRINT "11 - SWEDEN/FINLAND (SIS)"
1710 PRINT
1720 INPUT "WHAT NUMBER";NV
1730 IF NV<1 OR NV>11 THEN 1570
1731 IF NV>=1 OR NV<=9 THEN 1740
1732 LPRINT CSI$+CHR$(49)+CHR$(48+NV-10*INT(NV/10))+CHR$(119)
1740 LPRINT FNNV$(NV)
1750 IF NV=1 THEN NV$="GERMANY"
1760 IF NV=2 THEN NV$="UNITED KINGDOM"
1770 IF NV=3 THEN NV$="FRANCE"
1780 IF NV=4 THEN NV$="SPAIN"
1790 IF NV=5 THEN NV$="ITALY"
1800 IF NV=6 THEN NV$="SWEDEN/FINLAND"
1810 IF NV=7 THEN NV$="DENMARK/NORWAY"
1820 IF NV=8 THEN NV$="PORTUGAL"
1830 IF NV=9 THEN NV$="YUGOSLAVIA"
1840 IF NV=10 THEN NV$="U.S.A."
1850 IF NV=11 THEN NV$="SWEDEN/FINLAND (SIS)"
1860 PRINT FNSCR$(3,1);EOP$;
1870 PRINT "SELECT LINE SPACING:"
1880 PRINT
1890 PRINT "1 - 6 LINES PER INCH"
1900 PRINT "2 - 8 LINES PER INCH"
1910 PRINT
1920 INPUT "WHAT NUMBER";LS
1930 IF LS<1 OR LS>2 THEN 1860
1940 IF LS=1 THEN LS$="6 LINES PER INCH"
1950 IF LS=2 THEN LS$="8 LINES PER INCH"
1960 IF LS=1 THEN LS=6
1970 IF LS=2 THEN LS=8
1980 LPRINT CSI$+CHR$(48+LS)+CHR$(123)
1990 PRINT FNSCR$(3,1);EOP$;
2000 PRINT "SELECT DEVICE:"
2010 PRINT
2020 PRINT "1 - FRONT FEED"
2030 PRINT "2 - TRACTOR FEED"
2040 PRINT
2050 INPUT "WHAT NUMBER";D
2060 IF D<1 OR D>2 THEN 1990
2080 IF D=1 THEN SM=1:RM=0:DEVICE$="FRONT FEED":D=0
2090 IF D=2 THEN SM=0:RM=1:DEVICE$="TRACTOR FEED":D=0
2100 IF RM=1 THEN LPRINT CSI$+CHR$(50)+CHR$(48+D)+CHR$(108)
2110 IF SM=1 THEN LPRINT CSI$+CHR$(50)+CHR$(48+D)+CHR$(104)
2120 PRINT FNSCR$(3,1);EOP$;
2130 PRINT "SELECT NUMBER OF TIMES EACH CHARACTER IS PRINTED"
2140 PRINT
2150 PRINT "1 - 1 TIME"
2160 PRINT "2 - 5 TIMES"
2170 PRINT "3 - 10 TIMES"
2180 PRINT "4 - 20 TIMES"
2190 PRINT
2200 INPUT "WHAT NUMBER";REP
2210 IF REP<1 OR REP>4 THEN 2120
2220 IF REP=1 THEN REPEAT$=""
2230 IF REP=2 THEN REPEAT$=CSI$+CHR$(52)+CHR$(98)
2240 IF REP=3 THEN REPEAT$=CSI$+CHR$(57)+CHR$(98)
2250 IF REP=4 THEN REPEAT$=CSI$+CHR$(49)+CHR$(57)+CHR$(98)
9000 PRINT FNSCR$(3,1);EOP$;
9010 PRINT "NOW PRINTING ACCORDING SPECIFIED PARAMETERS"
9020 RETURN
R$(49)+CHR$(57)+CHR$(98)
9000 PRINT FNSCR$(3,1);EOP$;
9010 PRINT "NOW PRINTING ACCORDING SPECIFIED PARAMETERS"
9020 RETU