Trailing-Edge
-
PDP-10 Archives
-
decuslib10-04
-
43,50343/rec.bas
There is 1 other file named rec.bas in the archive. Click here to see a list.
00100 DIM X(200)
00110 PRINT "TAPES OR DISKS";
00120 INPUT A$
00130 IF A$="" GOTO 740
00140 IF A$="TAPE" GOTO 410
00150 IF A$="DISK" GOTO 190
00160 PRINT "TYPE IT AGAIN."
00170 PRINT
00180 GOTO 110
00190 PRINT "RECORD SIZE IN CHARACTERS";
00200 INPUT K$
00210 IF K$="" GOTO 740
00220 LET X$=K$
00230 GOSUB 620
00240 LET C=VAL(K$)
00250 PRINT "NUMBER OF ITTERATIONS";
00260 INPUT K$
00270 IF K$="" GOTO 740
00280 LET X$=K$
00290 GOSUB 620
00300 IF F=1 GOTO 250
00310 PRINT
00320 LET X=INT((C+11)/6)
00330 PRINT "WORDS USED BY ONE RECORD";X
00340 FOR I=1 TO VAL(K$) STEP 1
00350 LET X=INT((C+11)/6)
00360 PRINT USING 400,I, INT(128*I/X), INT(128*I-(INT(128*I/X)*X))
00370 NEXT I
00380 PRINT
00390 GOTO 110
00400 :DISK BLOCKS #### BLOCKING FACTOR #### WASTED WORDS ###.
00410 PRINT "SIZE OF BUFFER IN K";
00420 INPUT K$
00430 IF K$="" GOTO 740
00440 LET X$=K$
00450 GOSUB 620
00460 IF F=1 GOTO 410
00470 LET K=VAL(K$)
00480 LET C=K*1024
00490 PRINT "RECORD SIZE";
00500 INPUT R$
00510 IF R$="" GOTO 740
00520 LET X$=R$
00530 GOSUB 620
00540 IF F=1 GOTO 490
00550 LET R=VAL(R$)
00560 LET W=(R+6)/6
00570 IF W=INT((6+R)/6) THEN 590
00580 LET W=INT(W+1)
00590 PRINT "BLOCKING FACTOR FOR ";STR$(K);"K BUFFER =";INT(C/W)
00600 PRINT
00610 GOTO 110
00620 LET F=0
00630 CHANGE X$ TO X
00640 FOR I=1 TO X(0)
00650 IF X(I)=ASC(.) GOTO 680
00660 IF X(I)<48 GOTO 700
00670 IF X(I)>57 GOTO 700
00680 NEXT I
00690 RETURN
00700 LET F=1
00710 PRINT "? ILLEGAL NUMERIC ARGUMENT."
00720 PRINT
00730 RETURN
00740 END