5 ! BULLET- PRINT BULLETIN MASTER 6 !*****WRITTEN- OCT 16,1972 BY R BRANTON 10 OPEN "LP:" AS FILE 12 20 OPEN "**CLINF" AS FILE 1 : DIM# 1 ,C$( 2222 )=128 30 OPEN "**EXTRA" AS FILE 2 : DIM# 2 ,E7%( 2222 ) 40 OPEN "**TIME" AS FILE 7 : DIM# 7 ,T3%( 2222 ) 50 INPUT "IS THIS 0-TEST,1-RECORD,2-PLAYBACK MODE";M 60 IF M=0 THEN 70 65 OPEN "**PRINTR" AS FILE 3 : DIM# 3 ,R%(150,2),R$(50)=32 70 R1=0 : R2=0 80 PRINT #12, FOR I=1 TO 20 : PRINT #12,TAB(20);"*********************" : PRINT #12 81 PRINT #12, TAB(20);" BULLETIN PRINTOUT " 82 PRINT #12,TAB(20);DATE$(0),TIME$(0) : PRINT #12 83 PRINT #12,TAB(20);"***************************";CHR$(12) 90 DIM X(20),X1(20,2) 100 !*****SET PAGE TABS-SPACES AND FIELD LENGTHS****** 110 READ Y ! Y IS # OF FIELDS 120 DATA 8 130 READ X(I) FOR I=1 TO Y ! SPACES BETWEEN FIELDS 140 DATA 0,1,1,2,2,0,2,2 150 FOR I=1 TO Y 160 READ X1(I,1),X1(I,2) 170 NEXT I 175 INPUT "STARTING PAGE #";P7% 180 DATA 1,4,5,4,9,2,26,25,56,4,60,5,51,5,11,15 189 L8=74 190 L9=0 ! SET UP THE COUNT OF THE LINES 191 PRINT #12,CHR$(12) 200 !*****HEADING FOR DEPT****** 217 IF L9>L8-5 THEN GOSUB 1000% 220 PRINT #12 FOR K3=1 TO 3 221 L9=L9+3 224 R1=R1+1 225 IF M=2 THEN A$=R$(R1) : GOTO 235 230 PRINT "ENTER DEPT TITLE OR END*"; : INPUT LINE A$ 231 IF M=1 THEN R$(R1)=A$ 235 W=LEN(A$)/2-1 236 IF LEFT(A$,3)="END" THEN GOSUB 1000% : GOTO 9000% 240 PRINT #12,TAB(39-W);A$ : PRINT #12 241 L9=L9+2 300 R2=R2+1 301 IF M=2 THEN K1=R%(R2,1) : K2=R%(R2,2) :GOTO 310 303 INPUT "ST#,END# OR 0,0";K1,K2 305 IF M=1 THEN R%(R2,1)=K1 : R%(R2,2)=K2 310 IF K1=0 THEN 200 !NEW DEPT 320 IF K1>0 THEN 400 330 PRINT #12, FOR K3=1 TO 2 331 L9=L9+2 340 GOTO 300 400 FOR K=K1 TO K2 410 B$=MID(C$(K),X1(1,1),X1(1,2)) ! PICK UP 1ST FIELD 420 FOR I=2 TO Y 425 IF I=6 THEN B$=B$+SPACE$(49-LEN(B$)) 430 IF I=5 THEN 600 ! HANDLE TIME 440 B$=B$+SPACE$(X(I))+MID(C$(K),X1(I,1),X1(I,2)) 445 IF I=4 THEN B1$=SPACE$(LEN(B$)) 450 IF I=4 AND E7%(K)>0 THEN 500 !EXTRA DES 460 GOTO 700 500 !****EXTRA DESCRIPTION******* 510 Z=LEN(B$)-25 !SPACES TO DES FIELD 529 ! SET UP EXTRA DESCRIPTION 530 B1$=SPACE$(Z)+MID(C$(K),65,25) 580 GOTO 700 600 !**** FIX UP TIME FIELD TO PRINT******** 601 T9=0 605 X9=5 ! SPACE FOR TIME FIELD 610 T$=MID(C$(K),X1(I,1),X1(I,2)) 615 IF LEFT(T$,1)>"9" THEN B$=B$+SPACE$(X(I))+T$ : GOTO 640 620 T=INSTR(1,T$," ")-3 ! FIND THE SPOT FOR ":" 625 IF T<0 THEN T=2 630 B$=B$+SPACE$(X(I))+LEFT(T$,T)+":"+MID(T$,T+1,2) 640 IF T3%(K)=0 THEN 700 650 !**** ENDING TIME ********* 655 T$=MID(C$(K),97,16) 656 T7=INSTR(1,T$," ") 660 T$=LEFT(T$,T7-1) 665 IF MID(T$,2,1)>"9" THEN B$=B$+T$ : GOTO 700 670 T=LEN(T$)-2 675 IF T<0 THEN T=2 680 T1$=LEFT(T$,T)+":"+MID(T$,T+1,2) 681 B$=B$+"-" : T9=1 685 IF LEN(T1$)0% OR T9=1 THEN PRINT #12,B1$ : L9=L9+1 756 IF L9>L8-2 THEN GOSUB 1000% 800 NEXT K 810 IF L9>L8-3 THEN GOSUB 1000% 850 GOTO 300 ! GET NEXT BLOCK OF CLASSES 1000 ! *** FINISH UP THE PAGE *** 1005 & #12 FOR D7%=1% TO L8-L9 1010 & #12 : & #12,"* -GRADUATE CREDIT" : & #12 1030 P7$=NUM$(P7%): P7%=P7%+1%: P7$=RIGHT(P7$,2): P7$=LEFT(P7$,LEN(P7$)-1) 1040 & #12,TAB(39-LEN(P7$));"-";P7$;"-" 1050 & #12,CHR$(12) 1060 L9=0 1100 RETURN 9000 !***** CLOSE UP AND GO HOME ****** 9001 CLOSE 3 9010 CLOSE 1,2,4,7,12 10000 END