drl jout zero function,L(arglst) zero L(status),L(sydkin)
DRL JOUT is primarily used to by the JOUT subsystem to manipulate batch job output in the system spool area. The usual sequence of events is:
In addition, function 10, may be used to accomplish specific actions by sending almost arbitrary queue entries to GEOT. Function 11, is used to obtain a copy of the JOT entry, and a list of starting blinks for this job.
Besides its use in manipulating sysout, DRL JOUT can be used along with DRL PDIO to access arbitrary locations on disk. In this case just the allocate PAT, special update, and deallocate PAT functions would be used. See the special PAT update description below.
This function sends a queue entry to GEOT requesting a job be marked busy. It then waits for a reply from GEOT. The 3 word reply message is returned to the subsystem in registers X6, X7 A and Q. Because this function uses the allocated PAT field of the UST (.LACPT), it must be issued BEFORE function 2 (allocate PAT).
arglst null snumb bci 1,SSSSS Bits 30-35 ignored jobid zero blink,0 J* blink in bits 3-17
This function allocates a PAT for subsequent use with DRL PDIO. There is no exchange of queue messages with GEOT.
even sydkin zero 0,12 number of llinks per link zero 12,0 number of llinks per link zero 0,4 number of llinks per "fence"It is not known if any calls to DRL JOUT ever request this information since it is always constant. At one time (under GcosIII) the "fence" value might be returned as a 12, but today no one recalls what the significance of a "fence" was.
This function updates the device and offset fields of the JOUT PAT to point to a specific link in the sysout spool area.
arglst null handle dec *-* result from func 2 zero link#, put the link number here etc L(secsiz) point to sector size word
Clears the .LJSNB field in the UST, and sends a queue entry to GEOT. The queue entry asks GEOT to clear the "JOUT busy" and "JOUT hold" state bits, and send the output to the central site printers. Any output originally destined for remote stations will be redirected to the central site. Currently no reply is requested from GEOT, and DRL JOUT keeps retrying if the GEOT queue is full.
arglst null snumb bci 1,SSSSS Bits 30-35 ignored jobid zero blink,0 J* blink in bits 3-17
This behaves almost the same as function 4, but all output is redirected to a specific remote station.
arglst null snumb bci 1,SSSSS Bits 30-35 ignored jobid zero blink,0 J* blink in bits 3-17 stnid vfd 24/0,h12/** BCD remote id
This behaves much the same as function 4, but the output is discarded.
This behaves like function 4, but GEOT only clears the "JOUT busy" state bit, and the output is left as is. The "hold for JOUT" state bit is left set.
This releases the JOUT PAT allocated by function 2. This should always be done before exiting the subsytem, or calling another subsystem. Failure to deallocate the JOUT PAT can result in TSS running out of PAT space.
This works something like function 3, except that the caller is not restricted to the areas of disk used for sysout spooling. The caller specifies a disk SCT and a starting location; the JOUT PAT is updated to point to that area.
For AU oriented devices (ASD disks), the starting location is expressed in allocation units, and the extent size will be set to the larger of 1 AU, or 12 llinks. For all other disks, the starting location is expressed in llinks, and the extent size always be 12 llinks.
Although DRL JOUT will allow you to point the PAT anywhere, if you point the PAT at location zero, the seek address used for DRL PDIO may not refer to sectors 0 to 4. I.e. you may not access the label llink of the disk.
arglst null handle dec *-* result from func 2 zero sct, SCT for the disk etc start starting llink or au
This function is a generalized method of sending requests to GEOT, and can be used instead of functions 4 to 7, and to make other requests such as a partial redirect. In particular, it is the only method of requesting that GEOT unbusy a job from JOUT, and send the output to the destination(s) requested by the JCL. (I.e. don't redirect it all to a specific site.)
It is possible to perform functions that wait for a reply from GEOT. If so the reply will be returned in registers X6, X7, and the AQ as described for function 1. For example, you could access a job this way instead of using function 1, and TSS would update the appropriate UST fields. However, this approach is NOT recommended.
This function returns a copy of the JOT entry for a job, and a list of blink information words (SD.SBT entries) for the job. Only the blink words marked with BT.1ST are returned, so it is not clear if any useful information can be obtained from them. There is no exchange of queue messages with GEOT.
No explicit indication is given if the returned data is truncated because the buffer is too small. However, since there will be 1 blink word for each JOT destination word in the JOT, the required buffer size can be computed from the JOT field JC.SIZ.
arglst null snumb vfd h30/SNUMB, etc 2/0,1/1,3/0 Bit 32-> SNUMB zero L(buffer), Point to buffer etc bwords length in words or arglst null jobid vfd 3/0,15/blink, J* blink # etc 15/0,1/1,2/0 bit 33 -> blink zero L(buffer), Point to buffer etc bwords length in words
Copyright © 2000, Thinkage Ltd.