image of READY prompt

Wang2200.org

Listing of file='BDIAG12' on disk='vmedia/mvp-diag-3.5.wvd.zip'

# Sector 810, program filename = 'BDIAG12'
0020 PRINT AT(12,00);"NUM,POS........ <-- TESTING",
0080 S=SPACE
0090 DIM A$1,B$20,C$(513)1
0100 FOR I=1TO 7
   : READ A$,X
   : IF NUM(A$)<>XTHEN 8990
   : NEXT I
0110 DATA " ",0,".",0,"E",0,"+",0,"-",0,"0",1,"9",1
0120 FOR I=1TO 13
   : STR(B$,I)="0A"
   : IF NUM(B$)<>ITHEN 8990
   : NEXT I
0130 READ N
   : FOR I=1TO N
   : READ B$,X
   : IF NUM(B$)<>XTHEN 8990
   : NEXT I
0140 DATA 31
   : DATA "0+",1,"123-",3," 0 00123 E",9," . 0 E+",5,"0..1",2,".000123.",7,".0
     000000000001+2",14,"..1",0,"123456.7890123.",14,"12345.+",6,"00.000-",6,"
     +0-1",2,"-12345A",6,"+-123",0,"+123.4567890123E",15,"+.0.",3,"+12.A",4
0150 DATA "E1",0,"1E2.",3,"1234567890123E+01-",17,"9E-99E",5,".1E+9E",5,"1.E-9
     .1",5,"+123.4567890123E1A",17,"12345678901234",13,"1.2E123",6,"+",0,".",0
     ,"-",0,"-E1",0,".E1",0
0200 C$()=" "
   : IF NUM(C$())<>0THEN 8990
0210 C$(513)="1"
   : IF NUM(C$())<>513THEN 8990
   : IF NUM(STR(C$(),1,512))<>0THEN 8990
0300 STR(C$(),257)=ALL(FF)
   : FOR I=1TO 256
   : C$(I)=BIN(I-1)
   : NEXT I
0310 FOR I=2TO 225
   : A$=BIN(I-1)
0320 IF POS(C$()=A$)<>IOR POS(C$()<=A$)<>1OR POS(C$()<A$)<>1OR POS(C$()>=A$)<>
     IOR POS(C$()>A$)<>I+1OR POS(C$()<>A$)<>1THEN 8990
0325 IF POS(-C$()=A$)<>IOR POS(-C$()<=A$)<>IOR POS(-C$()<A$)<>I-1OR POS(-C$()>
     =A$)<>513OR POS(-C$()>A$)<>513OR POS(-STR(C$(),1,256)<>A$)<>256THEN 8990
0330 NEXT I
0400 A$,B$=" "
   : IF POS(A$=" ")<>1OR POS(A$=21)<>0OR POS(A$=60)<>0THEN 8990
   : IF POS(A$<" ")<>0OR POS(A$<21)<>1THEN 8990
   : IF POS(A$<=" ")<>1OR POS(A$<=21)<>1OR POS(A$<=1F)<>0THEN 8990
   : IF POS(A$>=" ")<>1OR POS(A$>=1F)<>1OR POS(A$>=21)<>0THEN 8990
   : IF POS(A$>" ")<>0OR POS(A$>1F)<>1THEN 8990
   : IF POS(A$<>" ")<>0OR POS(A$<>21)<>1THEN 8990
0410 IF POS(B$=" ")<>1OR POS(B$=21)<>0OR POS(B$=60)<>0THEN 8990
   : IF POS(B$<" ")<>0OR POS(B$<21)<>1THEN 8990
   : IF POS(B$<=" ")<>1OR POS(B$<=21)<>1OR POS(B$<=1F)<>0THEN 8990
   : IF POS(B$>=" ")<>1OR POS(B$>=1F)<>1OR POS(B$>=21)<>0THEN 8990
   : IF POS(B$>" ")<>0OR POS(B$>1F)<>1THEN 8990
   : IF POS(B$<>" ")<>0OR POS(B$<>21)<>1THEN 8990
0420 IF POS(-A$=" ")<>1OR POS(-A$<>20)<>0THEN 8990
0430 IF POS(-B$=20)<>20OR POS(-B$<HEX(20))<>0THEN 8990
0440 B$="BAAABCCCCBACACAC"
   : IF POS(B$="B")<>1OR POS(-B$="B")<>10OR POS(STR(B$,2)="B")<>4OR POS(STR(B$
     ,5)="B")<>1OR POS(-STR(B$,1,9)="B")<>5THEN 8990
0450 B$=HEX(A1BC)
   : IF POS(-B$=A1)<>1OR POS(B$=BC)<>2THEN 8990
8980 I=SPACE
   : IF I=STHEN 9000
8990 E(12)=E(12)+1
9000 PRINT AT(12,16,16);
   : IF E(12)=0THEN PRINT "OK"
   : ELSE PRINT E(12);"ERRORS"
9010 LOAD DC T"BDIAG13 "