Input Control Statement
Processing Identify the control statement
and perform the appropriate
processing.
2 If a USE R control statement, build a UMACBLOK and create
the UDIRBLOK. 3 If an ACCOUNT control
statement, update the UMACB LOK with the account number and
distribution code.
Output
First
Record UDIRBLOK UDIRBLOK UDIRBLOK 4 If an OPTION control statement,
update the UMACBLOK with the
machine options. ======> 5 If an MDISK control statement, build a UDEVBlOK and chain
it. L--J rL. Second
Record UMACBLOK UDEVBLOK
UDEVBLOK UMACBLOK UDEVBLOK
UDEVBLOK
Notes Module Label Ref Notes Module Label Ref
1 The READ routine branches and links DMKDIR REAI3 to the SCANNAME routine wit'l register 4 pointing to TABlE1. i&'AN
NAME
TABLE1 is searched for a keyword
4 If the OPTION control statement DMKDIR SCANOPTI does not follow a USER or IPl control statement, ERROR52 DMKDIR752E STATEMENT matching the control statement name
and control is passed to the routine SEQUENCE ERROR FOLLOW- ING USER user
indicated in the corresponding ADCON. appears on the console followed by ,2 If the USER control statement follows DMKDIR jsCANUSER a USER, ACCOUNT, OPTION, or IPl control statement, ERROR52 the statement that was out of
sequence. Directory processing is
terminated after scanning the
remaining statements for syntax. DMKDIR752E STATEMENT SEQUENCE ERROR FOlLOW- ING USER user
The SCANOPTI routine sets fields in
the UMACBlOK to indicate the
appears on the console followed by
machine options.
the statement that was out of sequence_
Directory processing is terminated after
5 The SCANMDIS routine branches DMKDIR SCANMDIS and links to the SCANNAME routine
scanning the remaining statements
for syntax.
with register 4 pointing to TABlE4. SCANNAME
TABlE4 is scanned by device type to
The last UDIRBlOK and UMACBlOK are masked off. Update the pointers
to the buffers and write out the
buffers that are fulL The SCANUSER routine locates a UDIRBlOK and
initializes it. Then the UMACBlOK is located and initialized.
get the corresponding device class_
The SCANMDIS routine then updates
the device type (UDEVTYPE) and class (UDEVTYPC) fields in the UDEVBlOK. The UDEVSTAT field is updated to indicate aT-disk
or long block, if either is present,
and the number of cylinders is updated.
3 If the ACCOUNT control card does DMKDIR not follow a USER, OPTION, or IPl control statement, ERROR52 For all disks other than T-disk, the
volume serial number, mode, and
password field of the UDEVBlOK are initialized. The mode is updated
DMKDIR752E STATEMENT (except for aT-disk). SEQUENCE ERROR FOllOW- ING USER user label Value Comments appears on the console followed by the UDEVR 00 R link-mode
statement that was out of sequence. UDEVRR 04 RR link-mode
Directory processing is terminated UDEVW 08 W link-mode
after scanning the remaining state-UDEVWR 12 WR link-mode
ments for syntax. UDEVM 16 M link-mode
UDEVMR 20 MR link-mode The SCANACCO routine updates the UDEVMW 24 MWlink-mode account number (UMACACCT) and
distribution code (UMACDIST) fields The SCANMDI S routine then branches CHAINDEV of the UMACBlOK. to the CHAINDEV routine to chain
the UDEVBlOK to the UMACBlOK. Diagram 4-2. DftKDIR Control statement Processinq
84 IBM VM/370 Service Routines Prograa Logic
-!. _______ " j,ocess;n
g
--:------'11") If a SPOO L control statement,
Control Statements
Notes
1 The SCANSPOO routine builds a UDEVBLOK. The UDEVSTAT field is set to X'OS' to indicate a spool device. The virtual device ad-
dress is stored in the UDEVADD f-'-I -lid .... 1- 5 .... 001 is stored :n 1t:IU CI lhc tJ the UDEVCLAS field. The SCANSPOO routine branches and links to the SCANNAME routine with
register 4 pointing to TABLE5. For all device types except the 2540, the spool class is picked up directly from
TABLE5. For a 2540 device, the
device class is determined in the SCAN2540 routine. The default
class is A, except for readers (readers
default to class*).
The SCANSPOO routine then branches
to the CHAINDEV routine to chain
the UDEVBLOK to the UMACBLOK.
2 The SCANDEDI routine builds a UDEVBLOK. The UDEVSTAT field
is set to X'SO' to indicate a dedicated
device. The virtual device address is
stored in UDEVADD field. And, either the volume serial number (UDEVVSERI or user link to disk (UDEVLlNKI fields are updated.
The SCANDEDI routine then branches
to the CHAINDEV routine to chain
the UDEVBLOK to the UMACBLOK.
Module DMKDIR build a UDEVBLOK and chain it.
2 If a DEDICATE control statement, build a UDEVBLOK and chain it. Label Ref Notes SCANSPOO I II CHAINDE DMKDIR SCANDEDI CHAINDEj Diagram 4-3. DMKDIR Centrol Statement Processing Chapter ======> Output
First
Record UDIRBLOK UDIRBLOK UDIRBLOK Module lr 1. Second
Record
UMACBLOK UDEVBLOK UDEVBLOK UMACBLOK UDEVBLOK UDEVBLOK Label Ref 11 .... tMKDIR--Tbe Directory Prcgram 85
Previous Page Next Page