1000 ! FIO.BAS/B2S - Force Input Out protect <232> & ! & ! 10-Aug-87 F. Mitchell Erskine College & ! & ! 22-Mar-89 last edit *M & ! & ! Author: W. Franklin Mitchell, Jr. & ! Director of Computer Services & ! Erskine College, Due West, South Carolina & ! & ! Copyright (c) 1988, 1989 & ! Erskine College, Due West, South Carolina & ! & ! *********************************************************************** & ! * This software is furnished without charge by Erskine College and * & ! * may be copied only with the inclusion of the author's name and * & ! * copyright notice. No title to or ownership of this software is * & ! * hereby transmitted. Neither Erskine College nor the author assumes * & ! * any responsibility for the use or reliability of this software. The * & ! * author welcomes comments and/or bug reports mailed to Franklin * & ! * Mitchell, Erskine College, Box 86M, Due West, South Carolina 29639. * & ! *********************************************************************** & 1010 ! This program forces the string in core common (after "FIO ") to & ! your terminal. This program is useful in RSTS 9.4 or above. It & ! may be compiled via BASIC-PLUS or BP2/TKB. It can be linked to & ! CSPLIB. & ! & ! In RSTS V9.0 - 9.3, there exists from 12 to 15 words of extra & ! instructions per every out-going character in order to keep track & ! of the job's error status. The monitor must look for "??", "?", & ! or "%" not followed by a space at the beginning of each line of & ! output. If any are found, the DCL symbols $SEVERITY and $STATUS & ! are set accordanily. This overhead exists in RSTS V9.4 only & ! during the execution of a command file. & ! & ! FIO allows a DCL command file to terminate by forceing a command & ! and, thus, escape the error status checking overhead. & ! & ! There are no security issues to worry about with this program. It & ! allows a command file to force your terminal to do something you & ! could type anyway! & ! & ! Although FIO's purpose is allow DCL to execute a program or command & ! out from under DCL's error checking, it will function under PBS batch, & ! there's no advantage though. & 1020 ! Add to [0,1]START.COM: & ! & ! $_Define/System/Command FIO [p,pn]FIO.BAC /line=CCL & ! & ! [p,pn] is the account where you put FIO.BAC or FIO.TSK. I suggest & ! that you use [1,13] or [0,2xx]. & 2000 GOTO 32000 & ! & ! Don't allow RUN entries. & 30000 V$ = SYS(CHR$(7%)) & \ GOTO 32000 IF LEFT(V$, 4%) <> "FIO " & \ WHAT$ = RIGHT(V$, 5%) & \ GOTO 32767 IF LEN(WHAT$) = 0% & \ KB% = ASCII(MID(SYS(CHR$(6%) + CHR$(9%) + CHR$(0%)), 2%, 1%))/2% & \ V$ = SYS(CHR$(6%) + CHR$(-4%) + CHR$(KB%) + WHAT$ + CHR$(13%)) & \ GOTO 32767 & 32000 PRINT & \ PRINT "?Illegal entry to FIO." & 32767 END