The UPDATE comaand returns a level
identifier and a MAC LIB list froa the 8ACS record of the control file. If the
identifier is TEXT, then that becomes the
filetype of the complete text deck;
otherwise the filetype is TXTxxxxx (for example, TXTup3m1). The EXEC procedure
then reads the MACLIB list passed by UPDATE and issues a GLOBAL command to prepare for
the assembly using the specified libraries.
The ASSEMBLE program is invoked with the
specified options. If no options are
specified for the ASSEMBLE command, the
defaults are: PRINT, NOTERM, LIST, NODECK, NORENT, SYSPARM(), and XREF(FULL). The options that can be specified for the VMFASM EXEC are: DISK, NOTERM, NOLIST, DECK, RENT, EXP, XREF, and RLD. The
defaults for the VMFASM EXEC are: PRINT, TERM, LIST, NODECK, NORENT, SYSPARM(SUP), XREF(SHORT), and NORLD. The VMFDATE program is used to construct
a record for each MACLIB used and for the ASSEMBLE file. Each record is placed in
the auxiliary file 'filename UPDATES'. The
text deck produced by the assembler is combined with the file produced by the VMFDATE program and is named 'filename TXTxxxxx', where 'filename' is that of the ASSEMBLE file, and 'TXTxxxxx' is
constructed from the update level
identifier returned by the UPDATE co.mand.
All intermediate files are erased, leaving
only the original ASSEMBLE and UPDTxxxx files, and the newly created text file. Procedure ------ The GENERATE procedure is generally used
during system generation. It can build a CP, CMS, or RSCS nucleus and punch or
create self-loading card decks for the four
standalone service programs (DMKDIR, DMKDDR, DMKFMT, and IBCDASDI). GENERATE
can also build a new VM/370 directory, a
new real I/O deck (DMKRIO), a new buffer
load (DMKFCB), a new system name table (DMKSNT), or a new system deck (DMKSYS). GENERATE can also load the IPCS modules from tape onto the IPCS A-disk. The
GENERATE procedure uses the V8FASM EXEC procedure to reassemble DMKRIO, DMKFCB, DMKSNT, and DMKSYS. It also uses the VMFLOAD program to build the CP, CMS, or
RSCS nucleus. VMFLOAD SERVICE PROGRAM The VMFLOAD program uses two user-supplied
procedures, a loadlist EXEC and a 'control'
file identical in foraat to the CNTRL file
used by V8FIS! and UPDATE, to produce a
punched deck comprised of several text files: The V!FLOAD progra. is invoked as a C8S command in the following way: V!FLOAD loadlist control
The loadlist is a user-supplied EXEC file consisting of several records of the
following format: &CONTROL OFF &1 &2 &3 filename [filetype]
&2 &2 &3 filename [filetype] The 'filename' specifies the name cfa
text file to be punched. The text files
are punched in the order specified. If a
filetype is specified, a search is made for
that specific file, and if it is found it
is punched without a header card, and "the
search then bypasses the contrel file.
If the filetype is not given, the
specified control file is used to search
for the highest level text file available,
and it is punched.
The VMFLOAD program displays a
confirmation or error message uFon completion. Before invoking the loadlist
procedure, a SPOOL PCB CCNT command line is
executed to assure that the punched files
appear as one deck. The command lines SPOOL PCE NOCONT and CLOSE PCB are executed uFon completion.
The control field is used only if the
filetype is not specified. The centrel
field specifies a user-suPFlied centrel
file with a filename of 'control' and a
filetype of CNTRL. This control file is of
the same type and format as the one used to
perform multilevel updates. Indeed, mest
often the file used to Iroduce the updated
and assemtled text decks is the one used to
load the text decks. V!FLOAt uses the control file to search
for the desired text deck in the order in
which the identifiers are specified in the
file. The first file lecated is punched,
and all lower files are igncred. If the
end is reached without finding a text file, VMFLOAD displays the message 'filename TEXT' NOT FOUND, and continues processing
with the next entry in the loadlist EXEC. It is quite possitle te have a comFleted load deck coaprised of different levels of
text decks. Chapter 7. Procedures for Generating and Updating VM/370 127
D!KLDOOE SERVICE PROGR1! The loader (DftKLDOOE) is a service progra.
that is used to generate a CP, C!S, or RSCS nucleus. The loader loads the text decks
supplied with it, resolves CCi addresses,
and resolves address constants. The sa.e
loader is used whether a virtual=real or
standard CP system is generated.
The loader is distributed with the
following default I/O addresses: Console=009 Printer=OOE These addresses can be overridden by a
control card that must be placed between
the loader END card and the first card of
the text decks. The format of the control
card is: Column Contents
1 0-2 punch
2-4 DEV 5 blank
6-13 PRNT=xxx (xxx is the printer
address)
14 blank
15-22 TYPi=xxx (XXX is the console
address)
The format of the other control cards
can be found in the discussion of the LOAD command in the !M/31Q and MacE2 The loader is self-relocating, that is,
it is initially loaded at address 8000 (decimal); it then relocates itself to the
top of storage. (For example, if the size
of the loader is 10K, and the storage size
of the system is 256K, the loader will occupy the area of storage between 246K and
256K.) After relocating itself, the loader
clears the storage it was originally loaded
in. Is the loader needs free storage to perform its operations, it extends downward
through storage.
The text decks being leaded must not try to overlay either the loader or any address between zero and 100 (hexadecimal). The text decks are loaded into storage in a
positive direction (that is, upward through
storage). If the text decks are going te
overlay the loader's free storage, the
operation is terminated. THl VMFMAC !ICRO LIBRARY UPDATE PROCEDURE The V!FM1C procedure applies updates to
copy or .acro files and builds a new macro library. The VMFMAC EXEC procedure is
invoked with the following com.and line: VMFMAC .aclibna.e cntrlname .aclibna.e is the filename of the file
that contains a list of the
.acro and copy files that are
to be included, or updated and
included. in the new macro library. This list file must have a filetype of EXEC and
each entry in the maclibname EXEC file has the following
for.at: cntrlnalle &1 &2 filename1
&1 &2 filename2
is the filename of the control
file used to apply the updates.
The control file (filetype CNTRL) may contain the actual
update or only the names of
other files that contain the
updates.
The UPtATE co.mand is issued for each macro or copy file. If the update
procedure is successful, the member is
added to the BEWM1C !ACLIB. After all macro and copy files have been processed,
any existing libname !ACLIE file is erased
and the NlWftAC ftACLIE is renamed to libnaae IUCLIE. 128 IBM VM/370 Service Routines Program Logic
Previous Page Next Page