BK2 -- Breakpoint Print File Utility, Part 2
BK2 is the second part of the processor pair BK1/BK2. When called after the print file has been diverted via BK1, it will return the print file to PRINT$ (or the terminal), and queue the breakpointed print to a specified site. Format:
@BK2[,options] siteid/banner(copies), siteid/banner(copies), ...
This will restore printing to PRINT$ or the demand terminal, and send the print file to the specified site or group (example: '@BK2 PR'). If the file used by BK1 was temporary (@BK1,T), BK2 will not @FREE or @SYM the file.
Siteid is any configured printer, terminal or station. If siteid is omitted, the print will be directed to the implied output device for the input device where the BK2 call is made -- usually the system's default print queue, unless it is a configured demand site (@SYM to terminal id) or a generic one (@SYM to userid).
Siteid may also be a userid, and banner a "U", to direct @SYMing to a userid. If banner is "U" and siteid is omitted, the user's own id is assumed.
Copies may be 1 to 63. If omitted, 1 is assumed.
A 1-12 character banner may be included to specify the block letters that will appear on the print file's header page. This banner will be used instead of the runid that created the file (example: '@BK2 PR/NEW-LIST'). If banner is omitted, the runid of the user @SYMing the file will be used.
If the file is write-enabled, BK2 will place its actual filename in the label block, so it will appear on the header page instead of the special BK1/BK2 internal name.
None - @FREE the file and @SYM it. File will be deleted after printing.
A - This option allows any previously created mass storage print file to be @SYM'ed or examined, rather than the current BK1 file. The filename must be coded in the 1st field; the siteid and other items, if any, may immediately follow the period, or may occur starting in the second field. Format:
@BK2,A filenm.siteid/banner(copies), ...
Or: @BK2,A filenm.,siteid/banner(copies), ...
The file may be catalogued but not assigned, catalogued and assigned, or assigned to-be-catalogued (@ASG,C/@ASG,U): In the first two cases, BK2 will leave the file in its original status, the way system processors do; in the third case, the file will be @FREE'd and catalogued. If the file is to be @SYM'ed, the @SYM card will assume the U option unless '@BK2,AD' was used. If the file is to be examined, or just assigned (E or N option), the @USE name 'BK$' will be attached to it; therefore it may be @SYM'ed or deleted later by a normal @BK2 command.
B - Prevent extra '@BRKPT PRINT$'s. This can be useful, for instance, to a batch run which does a @BK2,E of a file before @SYMing it. The B option ensures that a '@BRKPT PRINT$' command will be issued, not just any time BK2 is called, but only when actually closing out a BK1 breakpoint file and returning to PRINT$. The latter condition is determined by whether a special internal name, '-BK1-$$-BK2-', is attached to the file when BK2 is called.
The A and B options allow a more sophisticated use of BK1 and BK2 than previously possible, as shown by the example below:
@BK1,CUPY F1(+1). . Catalogue next cycle of file F1 & @BRKPT PRINT$ to it; delete the print prior to this with a '@SYM,D PRINT$'. @XQT MYFILE.PROG . Execute a program that creates long output. @BK1,D F2. . Close out F1; @ASG,CPR file F2 & @BRKPT to it; ensure F2 is deleted before trying to assign it. @BK2,ABE F1. . Examine F1 while still breakpointed to F2. P 1 50 . Print 1st 50 lines of program's output. @BK2,A F2.PR/USER4(2) . Return print file to PRINT$, @SYM 2 copies of the 1st 50 lines for USER4, and save file F2. @BK2,ABDY F1.PR . @SYM, then delete, 1 copy of file with complete output. Delete the print file following this BK2 (and also following the previous BK2, since the B option prevented an additional @BRKPT PRINT$).
D - Delete the file without @SYMing it. The output will be discarded. If used with A option, the file will be deleted after @SYMing.
E - Examine the print file with the Editor instead of @SYMing it. The @USE name BK$ will be attached to the file for the user's convenience, and then an "@ED,R BK$." will be done. (If the Editor UP command is entered to update the file, and the file is ASCII, be sure to enter the ASCII ON command [or use "@BK2,EQ"], or else the file will be converted to Fieldata on exit. CASE NORMAL may also be needed if lower case strings are searched for. See also P and Q options.)
If E is accompanied or replaced by an additional option, an editor other then ED may be invoked against the file: Z for ZIP, I for IPF, M for MORE, T for TOCED, F for FSED, or S for SPED, a generic name for some special editor call. If there is no actual editor called SPED, it may be defined using the PATH utility.
By default, these editor options will merely invoke the corresponding processors against the file (@ZIP file., @MORE file., etc.). If any of these editors is in an alternate file or needs special calling parameters, individually tailored calls to any of them may be defined by assigning a temporary file called BK2$EDCALL (or BK2$IPFCALL, BK2$ZIPCALL, BK2$MORECALL, BK2$TCEDCALL [note abbreviation], BK2$SPEDCALL) and building into it whatever @ADD stream the user wants. Example:
@ASG,T BK2$EDCALL. @ED,I BK2$EDCALL. @EDIT MSCHAR ] ]ED,R BK$. REM! THIS SPECIAL EDITOR CALL WILL LOOK AT THE FIRST 10 LINES. P 10 OMIT @EOF
After examining the file, the user may subsequently decide to @SYM it (another @BK2 command without the E option) or delete it (@BK2,D).
HELP - Print a Help Page summarizing BK2 calls and options.
I - Used to examine the file with IPF. In nonbreakpointed demand, IPF will be placed in full-screen mode; and the variables $COMMANDREGION and $RESPONSELINES will be set to FALSE and 1, respectively. See also E.
L - List each @SYM command submitted. When used with E, do an "@ADD,L" of the call to the Editor.
M - Used to examine the file with the MORE utility. See E.
N - Do not @SYM the file, but leave it assigned to the user. The @USE name 'BK$' will be attached to the file for the user's convenience. The file may be subsequently @SYM'ed or deleted as with @BK2,E.
If 'siteid' is specified when the E or N options are used, BK2 will attach that name to the file in addition to the default 'BK$'.
P - Used with Q & E options to force a 'CASE UPPER' after invoking the Editor on an ASCII file.
Q - Used along with E option to force an '@ED,RQ' call on a breakpoint print file containing ASCII.
S - Used to examine the file with a special editor call, @SPED. See E.
T - Used to examine the file with the TOCED utility. See E.
U - Attach the U option to the @SYM of the file to prevent its being deleted. Allowed only for user-defined files (i.e., name specified on @BK1 command). Assumed if A option used, unless D also specified.
W - "Wake-up call" / Wait option. BK2 will suspend just before exiting (or just before @ADDing the @ED call if E option used) and beep the terminal every 15 seconds until the XMIT button is hit. Thus, '@BK2,WE' could be used to signal the end of a processing sequence and alert the user, who would then hit XMIT and go into the Editor to examine the print file. If the '@BK2,WE' is part of a runstream, it must be the last image, since anything after it, such as an 'FC END', would cancel the wait routine.
Y - Submit a '@SYM,D PRINT$' via CSF$ just before exiting from BK2. This will cause the current print file (following the BK2) to be deleted. This may be desirable at the end of a batch run which has been breakpointed by BK1; it will eliminate the trailing accounting sheet.
Z - Used to examine the file with the ZIP utility. See E.