1 'DSPCHR.100 Program Dispatcher VM 1.0 2 '(c)Al Williams, 1984. Members of the Model 100 SIG of the Compuserve 3 'Information Service are authorized to copy the program for their personal use. 10 DEFINT I-O:CLEAR 256:TIME$ OFF:POWER CONT 12 CLS:PRINT@131,"Dispatcher Running";:PRINT@280,"Inpt";:GOSUB 200 14 IFOTHENCLOSE1 16 MAXFILES=1:ONERRORGOTO36:OPEN"runlst.do"FOR INPUTAS1:ONKEYGOSUB44,26,,,,,,42:KEY ON 18 LINE INPUT #1,S$:S1$=S$:ON ERROR GOTO40 20 T$=LEFT$(S1$,8):IFT$>TIME$GOTO24 22 LINE INPUT #1,S1$:GOTO20 24 P$=MID$(S1$,9,6):Q$=MID$(S1$,15,LEN(S1$)-14):ON TIME$=T$ GOSUB 28:TIME$ ON 26 PRINT@176,TIME$;:GOTO26 28 IFLEN(Q$)=0GOTO34 30 J=65451:K=0:FORI=1TOLEN(Q$):S$=MID$(Q$,I,1):IFS$="^"THENO1=1ELSEK=K+1:IFO1THENPOKEJ,ASC(S$)-64:O1=0ELSEPOKEJ,ASC(S$) 32 POKEJ+1,0:J=J+2:NEXTI:POKE65450,K 34 RUNP$ 36 IFERR=52THENRESUME44ELSEIFERR=54THENKILL"runlst.do":RESUME44 38 CLS:PRINT"Error ";ERR;" in line ";ERL:STOP 40 IFERR=54THENS1$=S$:T$=LEFT$(S1$,8):RESUME24ELSEGOTO38 42 POWER20:TIME$OFF:IFOTHENCLOSE1 43 MENU 44 CLS:PRINT"Dispatcher Input Routine":KEY OFF:TIME$ OFF:ONERRORGOTO38:MAXFILES=1:OPEN"runlst.do"FOROUTPUTAS1 45 O=-1:ON KEY GOSUB,12,,,,,,42:GOSUB 200:KEY ON:PRINT@43,"Enter in order by time.";:SA$=" " 46 PRINT@80,"Enter start time:";:GOSUB76:IFLEN(S$)=5THENS$=S$+":00" 48 IFLEN(S$)<>8GOTO50ELSES1$=LEFT$(S$,2):IFS1$<"00"ORS1$>"23"GOTO50ELSES1$=MID$(S$,4,2):IFS1$<"00"ORS1$>"59"GOTO50 49 S1$=MID$(S$,7,2):IFS1$<"00"ORS1$>"59"GOTO50ELSES1$=MID$(S$,3,1)+MID$(S$,6,1):IFS1$<>"::"ORSA$>S$GOTO50ELSESA$=S$:GOTO52 50 PRINT@97,SPACE$(20);:GOTO46 52 PRINT@120,"Enter .BA program name:";:GOSUB76:LI=LEN(S$):IFLI<1ORLI>6GOTO58 54 IFLI<>6THENSB$=S$+LEFT$(" ",6-LI)ELSESB$=S$ 56 GOTO60 58 PRINT@142,SPACE$(16);:GOTO52 60 PRINT@160,"Enter <=32 char input data:":GOSUB76 62 IFLEN(S$)<1GOTO66ELSEFORI=1TOLEN(S$):S1$=MID$(S$,I,1):LI=ASC(S1$):IFNOTO1GOTO64 63 O1=0:IFLI>96ANDLI<123THENMID$(S$,I)=CHR$(LI-32):GOTO65 64 IFS1$="^"THENO1=-1 65 NEXTI:IFLEN(S$)>32THENS$=LEFT$(S$,32) 66 PRINT@240,"All OK? "; 67 S1$=INKEY$:IFS1$=""GOTO67 68 ONINSTR("YyNn",S1$)GOTO70,70,72,72:GOTO67 70 PRINT#1,SA$;SB$;S$ 72 PRINTS1$;:PRINT@97,SPACE$(20);:PRINT@142,SPACE$(16);:PRINT@200,SPACE$(32);:PRINT@240,SPACE$(10);:GOTO46 76 BEEP:S$="":LI=0 78 S1$=INKEY$:IFS1$=""GOTO78 80 J=ASC(S1$):IFJ=8ANDLI>0THENPRINTCHR$(8);" ";CHR$(8);:LI=LI-1:S$=LEFT$(S$,LI):GOTO78 82 IFJ=13THENRETURNELSES$=S$+S1$:LI=LI+1:PRINTS1$;:GOTO78 200 PRINT@285,"Exec";:PRINT@315,"Menu";:RETURN