1 ! PLOP - TRANSFERS STANDARD FILES INTO 2 ! RECORD I/O FILES (MAX RECSIZE 510%) 3 ! BLOCKING OPTIONAL 10 DIM A$(85%),B$(85%) 20 PRINT"STD FILE TO RECORD I/O" 25 PRINT"COMMAND: DEV:RECIO.EXT/N < DEV:FILE.EXT" 30 OPEN"KB:" FOR INPUT AS FILE 9 35 PRINT"*"; : INPUT#9,C$ 40 C%=INSTR(1%,C$,"<") 45 IF C%=0% THEN PRINT"? "+C$ : GO TO 35 65 C9$=CHR$(13%)+CHR$(10%) 70 ON ERROR GO TO 200 80 F$=RIGHT(C$,C%+1%) 90 F2$=LEFT(C$,C%-1%) 100 D%=INSTR(1%,F2$,"/") 102 IF D% THEN 110 104 PRINT" RECORDS/BLOCK FOR "+F2$;:INPUT N% 106 GO TO 115 110 N%=VAL(RIGHT(F2$,D%+1%)) : F2$=LEFT(F2$,D%-1%) 115 OPEN F$ FOR INPUT AS FILE 1 120 OPEN F2$ FOR OUTPUT AS FILE 2 127 N1%=510%/N% : N6%=N%-1% : N2%=N1%-8% 128 N3%=N%*N1% : N7%=N1%-2% : N7$=SPACE$(N7%) 130 FIELD #2,N1%*J% AS Z$,N1% AS B$(J%) FOR J%=0% TO N6% 135 FOR K%=0% TO N6% 140 INPUT LINE#1,A$(K%) 141 A$(K%)=LEFT(A$(K%),LEN(A$(K%))-2%) 142 IF LEN(A$(K%))<6% THEN 140 145 LSET B$(K%)=LEFT(A$(K%)+N7$,N7%)+C9$ 150 NEXT K% 155 PUT #2,COUNT N3% 160 GO TO 135 190 ! WRITE END OF FILE MARKS 200 IF ERR<>11% THEN ON ERROR GO TO 0 202 FOR H%=K% TO N6% 204 LSET B$(H%)="\\\\\\"+SPACE$(N2%)+C9$ 206 NEXT H% 210 PUT #2,COUNT N3% 220 CLOSE 1,2 230 RESUME 35 999 END