Listing of file='BSORT6' on disk='vmedia/732-0050A.wvd.zip'
# Sector 325, program filename = 'BSORT6'
0020 PRINT AT(6,00);"MATMERGE....... <-- TESTING",
0030 S=SPACE
0090 DIM M$(5,4)3,C$10,W$64,L$(25)2,A$(6,5)1,B$(25)1,L1$(5)2,D$(3,3)5,M9$(10,1
0)2,R$(10),T$(100)2
0100 M$()=" "
: C$=ALL(01)
: STR(C$,6)=ALL(5A)
: FOR I=1TO 5
: L$()=ALL(FF)
: MAT MERGEM$()TO C$,W$,L$()
: IF POS(C$<>HEX(FF))<>I+1THEN 8990
: FOR J=1TO 4
: IF VAL(L$(J),2)<>256*I+JTHEN 8990
: NEXT J
: IF VAL(STR(C$,10))<>ITHEN 8990
: IF L$(5)<>HEX(0000)THEN 8990
: NEXT I
: IF C$<>HEX(FFFFFFFFFF5A5A5A5A05)THEN 8990
0110 A$()="EQRW^ITUY^AOPS^DFGH^JKLXZBCNV^"
: C$=ALL(01)
: MAT MERGEA$()TO C$,W$,L$()
: IF C$<>HEX(05050505FF0501010105)THEN 8990
: MAT MOVE A$(),L$()TO B$()
: IF B$()<>"ABCDEFGHIJKLNOPQRSTUVWXYZ"THEN 8990
0120 A$()="EQRW^ITUY^AOPS^DFGH^JKLXZBCNV^"
: B$()=" "
: C$=ALL(01)
: MAT MERGEA$()(1)TO C$,W$,L$()
: IF C$<>HEX(05050505FF0501010105)THEN 8990
: MAT MOVE A$(),L$()TO B$()
: IF B$()<>"ABCDEFGHIJKLNOPQRSTUVWXYZ"THEN 8990
0130 A$()="EQRW^ITUY^AOPS^DFGH^JKLXZBCNV^"
: B$()=" "
: C$=ALL(01)
: MAT MERGEA$()TO C$,W$,L1$()
: IF C$<>HEX(02010202010301010100)THEN 8990
: MAT MOVE A$(),L1$()TO B$()
: IF B$()<>"ABCDE"THEN 8990
0150 D$()="A113AB115BC116CD112DE114EF118FG110GH111HI117I"
: C$=ALL(01)
: L$()=ALL(FF)
: MAT MERGED$()(2,2+1)TO C$,W$,L$()
: IF STR(L$(),,18)<>HEX(03010302020101010202010201030000FFFF)THEN 8990
0160 A$()="EQRW^ITUY^AOPS^DFGH^JKLXZBCNV^"
: C$=HEX(02010302040101010101)
: MAT MERGEA$()TO C$,W$,L$()
: IF C$<>HEX(05050505FF0501010105)THEN 8990
: B$()=" "
: MAT MOVE A$(),L$()TO B$()
: IF B$()<>"BCFGHINPQRSTUVWXYZ"THEN 8990
0500 FOR R=2TO 9
: FOR C=1TO 10
: MAT REDIM R$(C)2,M9$(R,C)2
0510 FOR I=1TO R
: FOR J=1TO C
: CONVERT RND(1)*100TO R$(J),(##)
: NEXT J
: MAT SORTR$()TO W$,L$()
: MAT MOVE R$(),L$()TO M9$(I,1)
: NEXT I
0525 C$=ALL(01)
: T=1
0530 MAT MERGEM9$()TO C$,W$,L$()
: N=1000
: MAT MOVE M9$(),L$(),NTO T$(T)
: T=T+N
: IF N>0THEN 530
0540 IF T-1<>C*RTHEN 8990
: FOR I=1TO T-2
: IF T$(I)>T$(I+1)THEN 8990
: NEXT I,C,R
8980 X=SPACE
: IF S=XTHEN 9000
8990 E(6)=E(6)+1
9000 PRINT AT(6,16,16);
: IF E(6)=0THEN PRINT "OK"
: ELSE PRINT E(6);"ERRORS"
9010 FOR I=1TO 6
: IF E(I)<>0THEN LOAD T"SORTSTRT"
: NEXT I
9020 P=P-1
: LOAD T"START$PU"