100 ! LIST5 -- PRINTS STUDENT'S NAME, LOCAL ADDRESS, ! AND HOME ADDRESS IN STUDENT DIRECTORY FORMAT. ! FILE TYPE CSB ASSUMED. 120 ! SELECTION ROUTINE MAY BE INSERTED. 140 ! 03-DEC-73 J. WARDEN WABASH COLLEGE 160 PRINT"STUDENT DIRECTORY LISTING V02A" 280 DEF FNF$(X%)=MID(A$(A%),V2%(1%,X%),V2%(2,X%)) 300 N5%=1% : GOSUB 1080 320 ON ERROR GO TO 480 340 INPUT"INPUT FILE (DEV:FILE)";F1$ 360 INPUT"OUTPUT FILE (DEV:FILE)";F2$ 380 OPEN F1$ FOR INPUT AS FILE 1% 400 FIELD #1%,N1%*A% AS Z$,N1% AS A$(A%) FOR A%=0% TO N6% 420 OPEN F2$ FOR OUTPUT AS FILE 2% 460 GO TO 560 480 IF ERR<>5% THEN ON ERROR GO TO 0 500 PRINT CHR$(7%)+"** CAN'T FIND "+F1$+" **" : RESUME 520 520 INPUT"INPUT FILE (DEV:FILE)";F1$ ! TRY FOR INPUT FILE AGAIN 540 GO TO 380 560 ON ERROR GO TO 880 580 P%=1% 600 IF A%11% THEN ON ERROR GO TO 0 900 CLOSE 1%,2% : GO TO 1500 1060 ! === FILE ATTRIBUTES LOOKUP SUBROUTINE === 1080 DIM V2$(50),V2%(2,50) 1100 ON ERROR GO TO 1420 1120 F$="CSB" 1140 OPEN V1$+"$ATRIB" FOR INPUT AS FILE 1% 1160 FIELD #1%, 255%*A% AS Z$, 255% AS A$(A%) FOR A%=0% TO 1% 1180 IF A%<1% THEN A%=A%+1% ELSE A%=0% : GET #1% 1200 IF LEFT(A$(A%),3%)="\\\" THEN PRINT"NO SUCH FILE TYPE" : GO TO 1500 1220 IF LEFT(A$(A%),3%)<>F$ THEN 1180 1240 V2%(2%,0%),N%=VAL(MID(A$(A%),4%,2%)) : N9%=VAL(MID(A$(A%),6%,1%))*2% 1260 N1%=510%/N% : N2%=N1%-8% : N3%=N%*N1% : N6%=N%-1% 1280 FOR V%=1% TO 50% 1300 V2$(V%)=MID(A$(A%),42%+(V%-1%)*4%,2%) : IF V2$(V%)=" " THEN 1380 1320 V5%=CVT$%(MID(A$(A%),44%+(V%-1%)*4%,2%)) 1340 V2%(1%,V%)=ASCII(CHR$(V5%)) : V2%(2%,V%)=ASCII(CHR$(SWAP%(V5%))) 1360 NEXT V% 1380 V2%(1%,0%)=V%-1% : IF N5% THEN 1400 ELSE PRINT"CODES: "; : PRINT V2$(I%)+" "; FOR I%=1% TO V%-1% : PRINT 1400 CLOSE 1% : ON ERROR GO TO 0 : RETURN 1420 IF ERR<>5% AND ERR<>21% THEN 1480 ELSE RESUME 1440 1440 IF V1$="" THEN V1$="DK1:" : GO TO 1140 1480 PRINT"THE FILE '$ATRIB' HAS BEEN DELETED;" : PRINT"IT MUST BE REPLACED TO PROCEED." 1500 END