image of READY prompt

Wang2200.org

Listing of file='2282' on disk='vmedia/mvp-diag-2.6.2.wvd.zip'

# Sector 3588, program filename = '2282'
0010 REM % Revised 4/84 by Paul J. Hossfeld to work under BASIC II and improve
      operation
0020 SELECT PRINT 005(80)
   : SELECT D
0030 SELECT PLOT 415
0040 DIM E$64,E(4),C$64,C$(8)64,C0$1,C0$(2)2,C1$(1)64,D$(3)1,A(2),B(2),Z$1,R$4
     0,J8$11,J9$13
0050 J8$="2282"
   : J9$="4441"
   : PRINT HEX(030A0A);TAB(17);"2282 GRAPHIC CRT EXERCISER    Rev. ";J9$
0060 PRINT HEX(0A);TAB(25);"EXERCISER OPTIONS"
0070 PRINT HEX(0A);"SF' 1  POWER-ON (E5)";
0080 PRINT TAB(37);"SF' 2  CLEAR CRT (03)"
0090 PRINT "SF' 3  PEN 1 (E1)";
0100 PRINT TAB(37);"SF' 4  PEN 3 (E3)"
0110 PRINT "SF' 5  PEN 2 (E2)";
0120 PRINT TAB(37);"SF' 6  SET HOME (E4)"
0130 PRINT "SF' 7  SHORT PLOT (E6)";
0140 PRINT TAB(37);"SF' 8  SELECT PRINTER (04)"
0150 PRINT "SF' 9  CHARACTER SET";
0160 PRINT TAB(37);"SF'10  CHARACTER SIZE & SPACING (0A,0D)"
0170 PRINT "SF'11  PEN UP (0E)";
0180 PRINT TAB(37);"SF'12  ENCLOSED SPIRAL"
0190 PRINT "SF'13  PRINTER COPY (E7)";
0200 PRINT TAB(37);"SF'14  ALL TESTS (2-13,17)"
0210 PRINT "SF'15  REPEAT CHARACTER";
0220 PRINT TAB(37);"SF'17  PRINTER SELECT SWITCH"
0230 PRINT
   : PRINT TAB(22);"SF'31  RETURN TO SYSTEM MENU"
0240 STOP "((DEPRESS DESIRED SPECIAL FUNCTION KEY))"
0250 DEFFN'1
   : GOSUB '200("POWER ON TEST")
0260 GOSUB '101
   : GOTO 50
0270 DEFFN'2
   : GOSUB '200("CLEAR CRT (03) TEST")
0280 GOSUB '102
   : GOTO 280
0290 DEFFN'3
   : GOSUB '200("PEN 1 (E1) TEST")
0300 GOSUB '103
   : GOTO 300
0310 DEFFN'4
   : GOSUB '200("PEN 3 (E3) TEST")
0320 GOSUB '104
   : GOTO 320
0330 DEFFN'5
   : GOSUB '200("PEN 2 (E2) TEST")
0340 GOSUB '105
   : GOTO 340
0350 DEFFN'6
   : GOSUB '200("SET HOME (E4) TEST")
0360 GOSUB '106
   : GOTO 360
0370 DEFFN'7
   : GOSUB '200("SHORT PLOT (E6) TEST")
0380 GOSUB '107
   : GOTO 380
0390 DEFFN'8
   : GOSUB '200("SELECT PRINTER (04) TEST")
0400 GOSUB '108
   : GOTO 400
0410 DEFFN'9
   : GOSUB '200("CHARACTER SET TEST")
0420 GOSUB '109
   : GOTO 420
0430 DEFFN'10
   : GOSUB '200("CHARACTER SIZE & SPACING TEST")
0440 GOSUB '110
   : GOTO 440
0450 DEFFN'11
   : GOSUB '200("PEN UP (0E) TEST")
0460 GOSUB '111
   : GOTO 460
0470 DEFFN'12
   : GOSUB '200("ENCLOSED SPIRAL")
0480 GOSUB '112
   : GOTO 480
0490 DEFFN'13
   : GOSUB '200("PRINTER COPY (E7) TEST")
0500 GOSUB '113
   : GOTO 500
0510 DEFFN'14
   : GOSUB '200("RUN ALL TESTS")
0520 INPUT "DO YOU HAVE A 2231W-3 PRINTER (Y OR N)",I$
   : IF I$="N"THEN 530
   : IF I$="Y"THEN 530
   : PRINT HEX(0C0D)
   : GOTO 520
0530 GOSUB '200("CLEAR CRT (03) TEST")
   : GOSUB '102
   : GOSUB '200("PEN 1 (E1) TEST")
   : GOSUB '103
   : GOSUB '200("PEN 3 (E3) TEST")
   : GOSUB '104
   : GOSUB '200("PEN 2 (E2) TEST")
   : GOSUB '105
0540 GOSUB '200("SET HOME (E4) TEST")
   : GOSUB '106
   : GOSUB '200("SHORT PLOT (E6) TEST")
   : GOSUB '107
0550 IF I$="N"THEN 560
   : GOSUB '200("SELECT PRINTER (04) TEST")
   : GOSUB '108
0560 GOSUB '200("CHARACTER SET TEST")
   : GOSUB '109
   : GOSUB '200("CHARACTER SIZE & SPACING TEST")
   : GOSUB '110
0570 GOSUB '200("PEN UP (0E) TEST")
   : GOSUB '111
   : GOSUB '200("ENCLOSED SPIRAL")
   : GOSUB '112
0580 IF I$="N"THEN 530
0590 GOSUB '200("PRINTER COPY (E7) TEST")
   : GOSUB '113
   : GOSUB '117
   : GOTO 530
0600 DEFFN'17
   : GOSUB '117
   : GOTO 600
0610 DEFFN'31
   : LOAD T"@MENU"
0620 STOP
0630 DEFFN'15
   : GOSUB '200("REPEAT CHARACTER TEST")
0640 GOSUB '115
0650 DEFFN'16
   : KEYIN P$,50,50
   :        FOR I=1 TO 3000
   : NEXT I
   : RETURN
0660 DEFFN'200(R$)
0670 PRINT HEX(030A0A0A0A0A)
0680 PRINT TAB(10);"* * * * * * * * * * * * * * * * * * * * * * * *"
0690 PRINT TAB(10);"*                                             *"
0700 PRINT TAB(10);"*";TAB(35-INT(LEN(R$)/2));R$;TAB(56);"*"
0710 PRINT TAB(10);"*                                             *"
0720 PRINT TAB(10);"*               TEST IN PROGRESS              *"
0730 PRINT TAB(10);"*                                             *"
0740 PRINT TAB(10);"* * * * * * * * * * * * * * * * * * * * * * * *"
0750 PRINT HEX(0A)
0760 PRINT TAB(10);"KEY ANY KEY TO RETURN TO MENU "
0770 PRINT HEX(0D)
0780 RETURN
0790 DEFFN'101
0800 PLOT <,,HEX(E503FA06E0000A000A0F545454)>
0810 PLOT <,,HEX(E0000A00000A)>,<,,"TEST 1">
0820 GOSUB '16
   : RETURN
0830 DEFFN'102
0840 PLOT <,,HEX(E503E003200200FA06E0000A000A)>
0850 PLOT <,,HEX(E0000A00000A)>,<,,"TEST 2">
0860 GOSUB '16
0870 PLOT <,,HEX(03E0000A0190E403)>
0880 PLOT <,,HEX(E0000A00000A)>,<,,"TEST 2">
0890 GOSUB '16
   : RETURN
0900 DEFFN'103
0910 PLOT <,,HEX(E50306E10FE003200200E5E0000A000A)>
0920 PLOT <,,HEX(E0000A00000A)>,<,,"TEST 3">
0930 GOSUB '16
   : RETURN
0940 DEFFN'104
0950 PLOT <,,HEX(E50306E30FE003200200E5E0000A000A)>
0960 PLOT <,,HEX(E0000A00000A)>,<,,"TEST 4">
0970 GOSUB '16
   : RETURN
0980 DEFFN'105
0990 PLOT <,,HEX(03E506)>,<5,255,>,<10,,S>,<1,,C>
1000 PLOT <,,"ATBECSDTE5F">,<,,R>,<5,255,>,<,,HEX(E2)>,<20,,S>,<,,"ABCDEF">
1010 GOSUB '16
   : RETURN
1020 DEFFN'106
1030 PLOT <,,HEX(E503060FE003200200E5E003200000)>
1040 PLOT <,,HEX(0FE0FCE00200FAE001900100E4FA)>
1050 PLOT <,,HEX(0FE00000FF00)>
1060 PLOT <,,HEX(FA0EE0000A00000A)>
1070 PLOT <,,"TEST 6">
1080 GOSUB '16
   : RETURN
1090 DEFFN'107
1100 PLOT <,,HEX(E503060FE67F7FE5E0000A000A)>
1110 PLOT <,,HEX(E0000A00000A)>,<,,"TEST 7">
1120 GOSUB '16
   : RETURN
1130 DEFFN'108
1140 PLOT <,,HEX(E50306E0000A000AE0000A00000A)>
1150 PLOT <,,"TEST 8">
1160 DIM X2$33
1170 X2$="THIS SHOULD NOT APPEAR ON THE CRT"
1180 $GIO/215(4004A000400D,P$)X2$
   : SELECT PRINT 215
   : PRINT HEX(06);
   : SELECT PRINT 005(64)
1190 GOSUB '16
   : RETURN
1200 DEFFN'109
1210 PLOT <,,HEX(E50306E0000A000AE0000A00000A)>
1220 PLOT <,,"TEST 9">
1230 GOSUB '16
1240 DIM W$40,U$40
1250 INIT(10)W$
   : INIT(11)U$
1260 FOR Q1=1TO 2
1270 PLOT <,,HEX(E50306)>
1280 PLOT <5,501,>
1290 FOR Q=1TO 25
1300 PLOT <,,HEX(E40E)>
1310 PLOT <10,,S>
1320 PLOT <,,W$>,<,,U$>,<,,R>
1330 PLOT <,-20,>
1340 ADD(W$,02)
   : ADD(U$,02)
1350 NEXT Q
1360 GOSUB '16
1370 NEXT Q1
1380 PLOT <,,HEX(E50306)>
1390 PLOT <5,501,>
1400 FOR Q=1TO 6
1410 PLOT <,,HEX(E40E)>
1420 PLOT <10,,S>
1430 PLOT <,,W$>,<,,U$>,<,,R>
1440 PLOT <,-20,>
1450 ADD(W$,02)
   : ADD(U$,02)
1460 NEXT Q
1470 PLOT <,,W$>
1480 PLOT <,,HEX(E506E0000A000AE0000A00000A)>
1490 PLOT <,,"TEST 9">
1500 GOSUB '16
   : RETURN
1510 DEFFN'110
1520 PLOT <,,HEX(E50306E0000A000AE0000A00000A)>
1530 PLOT <1,,C>,<10,,S>,<,,"TEST 10">
1540 GOSUB '16
1550 R=5
   : Z=10
1560 FOR Q=1TO 13
1570 PLOT <,,HEX(E50306)>
1580 PLOT <R,400,>,<Z,,S>,<Q,,C>
1590 PLOT <,,"SIZE">
1600 CONVERT QTO V$,(##)
1610 PLOT <,,V$>
1620 R=R+5
   : Z=Z+10
1630 GOSUB '16
1640 NEXT Q
1650 PLOT <,,HEX(E50306)>,<R,400,>,<Z,,S>
1660 Q=Q+1
   : PLOT <Q,,C>,<,,"SIZE">
1670 CONVERT QTO V$,(##)
1680 PLOT <,,R>,<100,150,>,<,,V$>,<1,,C>,<10,,S>
1690 GOSUB '16
   : IF Q<>15 THEN 1650
   : RETURN
1700 DEFFN'111
1710 PLOT <,,HEX(E50306E0000A000AE0000A00000A)>
1720 PLOT <,,"TEST 11">,<,,HEX(FA0EE003200200)>
1730 GOSUB '16
   : RETURN
1740 DEFFN'113
1750 GOSUB '112
   : PLOT <,,HEX(E5E2E0000A000AE0000A00000A)>,<,,"      2">,<-10,,>,<,,HEX(E1)
     >,<,,"3">
1760 PLOT <,,HEX(E7)>
   : FOR I=1TO 8
   : GOSUB '16
   : NEXT I
   : SELECT PRINT 215
   : PRINT HEX(040C06);
   : SELECT PRINT 005(64)
   : RETURN
1770 DEFFN'112
   : PLOT <,,HEX(03E506E0000A000AE0000A00000A)>,<,,"TEST 12">
1780 GOSUB '19(0,0,800,512,1)
1790 M=51
   : L1=145
   : L2=0
1800 N,J,K=0
1810 H=1
1820 G1=L1+5*M
1830 G2=L2+5*M
1840 J1=4*M
1850 N,L=N+1
1860 K=K+10
1870 IF K=190THEN 1970
1880 IF H<0THEN 1910
1890 GOSUB '25(G1+J1*COS(J),G2+J1*SIN(J),G1+J1*COS(J+K),G2+J1*SIN(J+K),0,3)
1900 GOTO 1920
1910 GOSUB '25(G1+J1*COS(J+K),G2+J1*SIN(J+K),G1+J1*COS(J),G2+J1*SIN(J),0,3)
1920 H=-H
1930 IF L=1THEN 1850
1940 L=L-1
1950 J=J+10
1960 GOTO 1880
1970 PLOT <,,R>,<799,0,D>,<0,511,D>,<-799,0,D>,<0,-511,D>
1980 GOSUB '16
   : RETURN
1990 DEFFN'29(A,B,D)
   : IF INT(D/2)=D/2THEN 2000
   : A=A(1)+A
   : B=B(1)+B
2000 A(2)=A
   : B(2)=B
   : D=INT((D+1)/2)
   : ON D+1GOTO 2110,2100,2020,2010,2020
   : STOP "ERROR - INVALID PLOT OPTION"
2010 IF SGN(A(2)-A9)+SGN(A8-A(2))=0THEN 2100
   : IF SGN(B(2)-B9)+SGN(B8-B(2))=0THEN 2100
   : GOSUB '30(A(2),B(2),2)
   : GOTO 2100
2020 BIN(D$(2))=15-8*SGN(SGN(B9-B(2))+1)-4*SGN(SGN(B(2)-B8)+1)-2*SGN(SGN(A9-A(
     2))+1)-SGN(SGN(A(2)-A8)+1)
   : BIN(D$(1))=15-8*SGN(SGN(B9-B(1))+1)-4*SGN(SGN(B(1)-B8)+1)-2*SGN(SGN(A9-A(
     1))+1)-SGN(SGN(A(1)-A8)+1)
   : IF VAL(D$(1))+VAL(D$(2))=0THEN 2080
2030 D$(3)=D$(1)
   : AND (D$(3),D$(2))
   : IF D$(3)<>HEX(00)THEN 2100
   : D1=1
   : D2=2
   : IF D$(1)<>HEX(00)THEN 2040
   : D1=2
   : D2=1
2040 IF A(D1)>=A8THEN 2050
   : B(D1)=B(D1)+(B(D2)-B(D1))*(A8-A(D1))/(A(D2)-A(D1))
   : A(D1)=A8
   : GOTO 2020
2050 IF A(D1)<=A9THEN 2060
   : B(D1)=B(D1)+(B(D2)-B(D1))*(A9-A(D1))/(A(D2)-A(D1))
   : A(D1)=A9
   : GOTO 2020
2060 IF B(D1)>=B8THEN 2070
   : A(D1)=A(D1)+(A(D2)-A(D1))*(B8-B(D1))/(B(D2)-B(D1))
   : B(D1)=B8
   : GOTO 2020
2070 IF B(D1)<=B9THEN 2020
   : A(D1)=A(D1)+(A(D2)-A(D1))*(B9-B(D1))/(B(D2)-B(D1))
   : B(D1)=B9
   : GOTO 2020
2080 IF D=2THEN 2090
   : GOSUB '30(A(1),B(1),0)
2090 GOSUB '30(A(2),B(2),1*SGN(D-2))
2100 A(1)=A
   : B(1)=B
   : RETURN
2110 GOSUB '30(0,0,3)
   : A0,B0,A(1),B(1)=0
   : RETURN
2120 DEFFN'30(A1,B1,D4)
   : IF D4>2THEN 2150
   : A2=INT(A1-A0)
   : B2=INT(B1-B0)
   : IF ABS(A2)+ABS(B2)=0THEN 2160
   : BIN(STR(B$,3,1))=ABS(A2/256)
   : BIN(STR(B$,4,1))=ABS(A2)-256*VAL(STR(B$,3,1))
   : IF A2>=0THEN 2130
   : BOOL3(STR(B$,3,2),00)
   : ADDC(STR(B$,3,2),01)
2130 BIN(STR(B$,5,1))=ABS(B2/256)
   : BIN(STR(B$,6,1))=ABS(B2)-256*VAL(STR(B$,5,1))
   : IF B2>=0THEN 2140
   : BOOL3(STR(B$,5,2),00)
   : ADDC(STR(B$,5,2),01)
2140 BIN(STR(B$,1,1))=15-ABS(D4-1)
   : STR(B$,2,1)=HEX(E0)
   : STR(B$,7,1)=HEX(00)
   : PLOT <,,B$>
   : A0=A0+A2
   : B0=B0+B2
2150 ON D4-1GOTO 2170,2180
2160 RETURN
2170 PLOT <,,D>,<,,>
   : RETURN
2180 PLOT <,,R>
   : RETURN
2190 DEFFN'25(C,C0,C1,C2,C3,C4)
   : GOSUB '29(C,C0,6-4*ABS(SGN(C4-1)))
   : IF C4=3THEN 2240
   : C=C1-C
   : C0=C2-C0
   : C5=INT(SQR(C*C+C0*C0)/C3)
   : C5=C5+1-SGN(C5-INT(C5/2)*2)
   : C=C/C5
   : C0=C0/C5
   : FOR C5=INT(C5/2)TO 1STEP -1
   : GOSUB '29(C,C0,5+2*ABS(SGN(C4-1)))
2200 ON C4GOTO 2210,2220
   : GOSUB '29(C,C0,1)
   : GOTO 2230
2210 GOSUB '29(C,C0,5)
   : GOTO 2230
2220 GOSUB '29(C/2,C0/2,5)
   : GOSUB '29(C/2,C0/2,1)
2230 NEXT C5
2240 GOSUB '29(C1,C2,6+2*ABS(SGN(C4-1)))
   : RETURN
2250 DEFFN'19(A8,B8,A9,B9,D4)
   : ON D4GOTO 2260,2270
   : RETURN
2260 GOSUB '29(0,0,0)
2270 GOSUB '29(A8,B8,4)
   : RETURN
2280 DEFFN'115
   : DIM S$1
2290 INPUT "TYPE THE CHARACTER YOU WANT TO SEND",S$
2300 PLOT <,,HEX(03E5E0000A000A)>,<1,,C>,<10,,S>
2310 FOR Y=1TO 80
2320 PLOT <,,S$>
2330 NEXT Y
   : GOSUB '16
2340 GOTO 2300
2350 DEFFN'117
   : PLOT <,,HEX(E503E0000A000A)>
2360 GOSUB '200("PRINTER SELECT TEST")
   : PRINT HEX(0D0A);"TURN ON - GRAPHIC CRT PRINTER SELECT SWITCH - THEN DEPRE
     SS ANY  ALPHANUMERIC KEY TO CONTINUE"
2370 KEYIN Z$,2380,2380
   : GOTO 2370
2380 SELECT PRINT 215
   : PRINT "THIS IS A TEST OF THE PRINTER SELECT SWITCH.";HEX(0D0A06);
   : SELECT PRINT 005(80)
   : RETURN