image of READY prompt

Wang2200.org

Listing of file='OP5D050A' on disk='vmedia/701-2046C.wvd.zip'

# Sector 218, program filename = 'OP5D050A'
0010 REM .     OP5D050A,  00-00 (6/28/75),   12002
0100 DIM D$1,A$(1),B$(1)18,C$(1,1)1,E$(1)1,F$(1)64,G$(1)64,Z$64
   : DIM S$(6,100)1,T$(6,100)1,P$1
   : X=RND(0)
   : PRINT "MAT COPY",
   : D$="Z"
   : A$(1)="ABCDEFGHIJKLMNOP"
   : INIT(FF)B$()
   : MAT COPY A$()TO B$()
   : IF B$(1)<>A$(1)THEN 1000
0190 INIT(FF)B$()
   : MAT COPY A$()TO -B$()
   : IF B$(1)<>"  PONMLKJIHGFEDCBA"THEN 1000
   : INIT(FF)B$()
   : MAT COPY -A$()TO B$()
   : IF B$(1)<>"PONMLKJIHGFEDCBA"THEN 1000
   : INIT(FF)B$()
   : MAT COPY -A$()TO -B$()
   : IF B$(1)<>"  ABCDEFGHIJKLMNOP"THEN 1000
0280 MAT COPY A$()TO A$()
   : IF A$(1)<>STR(B$(1),3)THEN 1000
   : MAT COPY -A$()TO -A$()
   : IF A$(1)<>STR(B$(1),3)THEN 1000
   : INIT(FF)B$(),Z$
   : MAT COPY A$()<5,0>TO B$()
   : IF B$(1)<>" "THEN 1000
   : INIT(FF)B$()
   : MAT COPY A$()TO B$()<5,0>
   : IF B$(1)<>STR(Z$,1,18)THEN 1000
0380 C$(1,1)="X"
   : MAT COPY C$()TO E$()
   : IF E$(1)<>"X"THEN 1000
   : E$(1)=" "
   : MAT COPY C$()TO -E$()
   : IF E$(1)<>"X"THEN 1000
   : E$(1)=" "
   : MAT COPY -C$()TO E$()
   : IF E$(1)<>"X"THEN 1000
   : C$(1,1)=" "
   : MAT COPY -E$()TO -C$()
   : IF C$(1,1)<>"X"THEN 1000
   : FOR I=1TO 64
0510 BIN(STR(F$(1),I))=I
   : NEXT I
   : FOR S=1TO 32
   : INIT(FF)G$()
   : MAT COPY F$()<S,S>TO G$()
   : IF STR(G$(1),1,S)<>STR(F$(1),S,S)THEN 1000
   : NEXT S
   : FOR S=2TO 32
   : INIT(FF)G$()
   : MAT COPY -F$()TO -G$()<S,S>
   : IF STR(G$(1),S,S)<>STR(F$(1),65-S,S)THEN 1000
0620 IF STR(G$(1),1,S-1)<>STR(Z$,1,S-1)THEN 1000
   : IF STR(G$(1),S+S)<>STR(Z$,1,65-S-S)THEN 1000
   : NEXT S
   : P$=HEX(01)
   : FOR I=1TO 6
   : FOR J=1TO 100
   : S$(I,J)=P$
   : ADD(P$,01)
   : NEXT J
   : NEXT I
   : FOR K=1TO 20
   : S=100*INT(RND(1)*6)+INT(RND(1)*100)+1
   : N0=INT(RND(1)*(600-S))+1
0750 INIT(FF)T$()
   : MAT COPY S$()<S,N0>TO T$()<S,N0>
   : GOSUB '40(S)
   : I1=X
   : J1=Y
   : GOSUB '40(S+N0-1)
   : I2=X
   : J2=Y
   : FOR I=I1TO I2
   : FOR J=J1TO 100
   : IF I<I2THEN 890
   : IF J<=J2THEN 890
   : J=100
   : GOTO 900
0890 IF T$(I,J)<>S$(I,J)THEN 1000
0900 NEXT J
   : NEXT I
   : IF S=1THEN 950
   : GOSUB '40(S-1)
   : IF T$(X,Y)<>HEX(FF)THEN 1000
0950 IF S+N0=601THEN 980
   : GOSUB '40(S+N0)
   : IF T$(X,Y)<>HEX(FF)THEN 1000
0980 NEXT K
   : GOTO 1010
1000 E(6)=E(6)+1
1010 IF E(6)>0THEN 1040
   : PRINT "OK"
   : GOTO 1060
1040 PRINT TAB(40);E(6);"ERRORS"
   : E9$(P9)="NG"
1060 LOAD DC T#6,"OP5D060A"
1070 DEFFN'40(Z)
   : X=INT((Z-1)/100)+1
   : Y=Z-(X-1)*100
   : RETURN
1110 DEFFN'15
   : COM CLEAR
   : LOAD DC T#6,"START"