GH20•0857-1(
Type 111 . Class A Program(

Control Program-67/Cambridge Monitor System(CP-67 /CMS) Version 3.1
Program Number 3600-05.2.005
Installation Guide

The purpose of this document is to provide theinstallation with instructions on creating a runnable
CP-67/CMS system tailored to its configuration. There
are also considerations for tuning the system as wellas maintaining both CP-67 and CMS.
This manual should be read in its entirety before
installing the system, as procedures have changed
since Version 3, Modification Level 0.

(PREFACE

The
manual:following

publicationsare

CP-67/CMS User's Guide

GH20-0859

CP-67 Operator's Guide

GH20-0856

referenced

in

this

a

MachineOperating System 360: Utilities
CP-67:

Operating
GH20-1029

Systemsin

OS/360 ISAM Program Logic ManualThefollowing
publications
information on CP-67/CMS:

GY28-6618
provideCP-67/CMS System Description Manual
CP-67 Program Logic Manual

Virtualadditional

GH20-0802

GY20-0590

CMS Program Logic Manual

GY20- 0591

CMS SCRIP!' User's Manual

GH20-0860

CP-67/CMS Hardware Maintainability Guide

GH20-0858

Second Edition (October 1971)
This Type III Program performs functions that may be fundamental to the operation and maintenanceofa system.
It has not been subjected to formal test by IBM.

Until the program is reclassified, IBM will provide for it: (a) Central Programming Service, including
design error correction and automatic distribution of corrections; and (b) FE Programming Service,including design error verification, AP AR documentation and submission, and application of Program
Temporary Fixes or development of an emergency bypass when required. IBM does not guarantee
service results or represent or warrant that all errors will be corrected.
You are expected to make the final evaluation as to the usefulness of this program in your own
environment.
THE FOREGOING IS IN LIEU OF ALL WARRANTIES EXPRESSED OR IMPLIED, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESSFOR A PARTICULAR PURPOSE.
.
This edition applies to Version 3, Modification Level 1, of Control Program-67/Cambridge Monitor
System (360D-05 .2.005) and to all subsequent versions and modifications until otherwise indicated in
new editions or Technical Newsletters.
Changes are continually made to the information herein. Therefore, before using this publication,
consult the latest System/360 SRL Newsletter (GN20-0360) for the editions that are applicable andcurrent.
Copies of this and other IBM publications can be obtained through IBM branch offices.
A form has been provided at the back of this publication for readers' comments. If this form has
been removed, address comments to: IBM Corporation, Technical Publications Department,
1133 Westchester Avenue, White Plains, New York 10604.

I

CONTENTS
Introduction
Section 1:

1

Installing CP-67

2

CMS for CP-67 SYSGEN

2Machine Configuration Definition for CP-67

4

Machine Configuration Macros
REALIO Macro
SIMPLBX f.'.lacro
I/O Block Definition Macros
Define Channel Macro
Define Control Unit Macro
Define Device Macro
Define Multiplexer Device Macro

5
5
6
6
6
7
7

setup of Installation Parameters
SYSRES Macro
SYSGEN Macro
Selection Of SYSGEN Options
Real Timer--&RTIMR
Virtual 67--&V67
ISAM Option--&ISAM
TRACE--£TRACE
Obtaining CP-6 7
Obtaining the Utilities
Formatting of Volumes
Allocation and Directory Creation
Allocation
Directory creation
Creation of Permanent Residence Volume
Obtaining CP-67 from an Existing CMS

9

10
10
11

12
12
13
47
15
16
17
19
19
21
29
30

Generating "Named" Operating Systems
under CP-67
Operational Procedures

32
35

Tuning CP-67

35

Obtaining CP-67 Dumps -- VDUMP,FDUMP,EDITDUMP

38

CP-67 EXEC Procedures
CPASMGENCPGENCPLIST
CPMACADD
CPMACGENCPMACREP
CPPTF
CPPUNCHCPSYS
CPTGENCPUPASMCPUPMACLDRG
VD UMP

40
40
40
41
41
41
41
41
42
42
42
42
43
43
43

CP-67 Deck Formats

44

CP-67 System
CP Utilities

44
45

CP-67 Maintenance Proc.edures
CPPTF

46
46

CP-67 Trace Facilities

47

Installing CMS

48

DUMP/RESTORE Utility
CMS System Disk
Block Information
Bare Machine--CMSCMS source Disk

48
50
50
51
51

Altering the CMS System Disk

52

Section 2:

Nucleus·
IPL'able System Disk
Saving CMS under CP-67
CMS EXEC Procedures
ASMGEND,FORGEND,PLIGENDCMS GENOCMSPTFCMS SORTCMSUPASM

52
53
54
56
56
57
57
57
58

I

NUCLEUS/PUNCH
Maintaining the CMS System DiskCMS Maintenance Procedures
CMSPTF EXEC

I
I
I

59
59
59

Changing or Adding Nucleus Resident Commands 60
Changing Disk-Resident commands
61
Management of TEXT Files for Language
Processors
61
Modifications to PID TEXT decks for CMS
61
C-Disk as a Read-Only Extension of S-Disk
63
CMS Considerations
Formatting the P-Disk
Version 3--version 2 Compatibility
Obtaining a Nucleus Load Map
P-Disk Considerations for the Bare Machinecommand Abbreviations
Installation of the CMS Batch Monitor
Sample Problem
Index

i (

58

64
64
64
64
65
65
66
66
70

I

INTRODUCTION
The initial installation of CP-67/CMS involves
running CMS on the bare machine.
CMS is used to load
the CP-67 basic distribution tape onto a disk, read in
the REALIO configuration and SYSDESCR module for the
installation and assemble the REALIO, SYSDESCR and othermodules, if necessary, to select the desired options.
Once this is done, an EXEC procedure is invoked to punch
the CP-67 nucleus, utilities, and loaders. The puncheddecks are then used on the bare machine to format the
CP-67 volumes Csysres, drums, etc.) and to load thenucleus and directory on the residence volume. If CP-67
is already installed, regenerations or new installations
can be performed from a CMS virtual machine.

(

The basic CMS system tape contains an IPLable
dump/restore of a System disk. After restoring the tapefile, a Primary disk is formatted. Using the restored
System disk and formatted Primary disk, the CMS source
tape and the CP basic System tape can be read onto thePrimary disk, and SYSGEN of the system can then be
accomplished.
The minidisk, or partial volume disk allocation,
provides economical use of direct access storage space.
Minidisks are available to both CMS and OS users, andcan be used for both system residence and user-data
volumes. Formatting of OS volumes is performed by the CP
utility MINIDASD: the CMS FORMAT command is used for CMS
volumes. In addition to formatting the disk for OS use,
MINIDASD writes an appropriate VTOC which determines theamount of space available on the volume. Minidisks canbe dumped to tape, and restored, using the CPDMPRST
program, as a means of periodic backup.
Version 3 Level O of CP-67 contained many new
features thatmade it incompatible
with previous
versions. Version 3 Level 1 is an extension of Version
3 Level O.
For this reason, utilities, loaders, or
nucleus decks from releases prior to Version 3 must not
be used.
In particular, the real machine configuration
description requires additional information to produce a
valid RIO and SYSDESCR module. With Version 3 Level 1
virtual machines are dispatched on the basis of theirpriority defined in the directory.

- 1 -SECTION 1: INSTALLING CP-67
CMS FOR CP-67 SYSGENTo obtain CP-67, CMS is utilized.
A description
follows of how to obtain CMS and run i t on the real machine<not under CP).
This description is intended
as aconvenient summary, as more detailed information can befound under "Installing.CMS•.

disk.

First, restore the DUMP/RESTORE copy of the CMS System
The CMS System tape contains the following files:
file 1--IPL'able DUMP/RESTORE
file 2--a D/R copy of the CMS System disk.
file 3--a tape-dump of the CMS system disk.

Then, IPL the restored disk. Hit REQUEST on the 1052
console if its real address is not X'009' or X'OlF'. CMS now
allows you to reconfigure the CMS device address table tomatch the real device configuration of the installation. The
following question is asked:
Ql:

REDEFINE ADDRESSES? CYES,NO):
Answer YES, if the real addresses are different
from the standard CMS virtual addresses listed
below.

It is then necessary to enter the four-digit addresses
for the following devices on the real machine if they differ
from the address specified in the standard CMS device table:
console, s-disk, P-disk, reader, punch, printer, tape one,and tape two.
In looking for the 1052 console when CMS is
IPLed on the real machine, CMS looks for device 009 and then
OlF before waiting for the first interrupt denoting theconsole.
Q2:

WILL THE CP-SAVE FUNCTION BE USED? (YES,NO):

Answer NO to the CP-SAVE question.
The standard CMS device addresses are as follows:
DeviceVirtualAddress

Symbolic
Name

1052
2311,2314
2311,2314

009
190
191**

CONl
DSKl

- 2 -

DSK2

consolesystem disk <read-only>
permanent disk <user files>

I

f
',

•2311,2314•2311,2314•2311,2311l•2311,2314
1403
2540
2540
*2400
•2400

192**
000**
000••
19C**

OOE

ooc
000
180
181

DSK3
DSK4
DSKS
DSK6
PRNl.
RDRl
PCHl
TAPl
TAP2

temporary disk (workspace>
A disk Cuser files>
B disk <user files>
c disk <user files>
line printercard reader
card punchtape drive
tape drive*

The 2311 or 2314 for the temp:>rary disk, the A, B, anddisks, and the two 2400 tape drives are optional
devices; they
are not
included in
the minimum
configuration.

**

The reference between the virtual address and I/O
device may be changed at any time by the CMS LOGIN
command.

c

After entering the real device addresses, the CMS
initialization message is typed
CMS • • VE RSI ON n

LEVEL

m

Issue the CMS command
FORMAT P ALL(

to format the P-disk to be used forcard punch and printer should bestatus.
Place theTAP2 and issue

CP-67 SYSGEN. The
placed in READY

CP distribution tape on

symbolic drive

TAPE LOAD 4
All necessary CP files are loaded onto the P-disk.
These files
are of the following
filetypes forgeneration of CP-67 and the utilities:
SYSIN files, which are the CP source
Assembler Language;

decks written in

EXEC files, which contain procedures for assembling andupdating:
TEXT files containing
system;theassembled

modules ofthe

MACLIB files containing CP-67 macros for assembling thesystem and the real machine configuration;

(.
-

3 -

ASP360 and COPY files for creating and changing
macro library CPMACS MACLIB, when necessary;

the

LOADER
files containing
relocating loaderswithdifferent printer addresses (that is, 000, OOE, OOF,
010, 030, 040);
SAMPLE files containing examples of therequired for system setup.
It is from this P-disk (on which theloaded> that the CP system is obtained.

various deqks

above CPfiles areNote. While executing CMS on the real machine, the lastcard of any punched deck must be manually run out from thecard punch.

MACHINE CONFIGURATION DEFINITION
FOR CP-67
A description of the physical machine must be provided
for CP-67. This description is contained in a SYSIN or
source deck called
RIOxxx, where xxx are
any threecharacters specified by the installation. This SYSIN deckis assembled via the CMS ASSEMBLE command, and the resultant
text or object deck placed in the CP-67 system.
Samesimplex and duplex machine configurations are distributed
among the P-disk files with the identifiers of RIOCSC SYSIN,SIMPLEX SAMPLE, and DUPLEX SAMPLE.
If the distributed
RIOCSC SYSIN does not meet the installation's configuration,a new RIOxxx deck must be constructed from the macros below,
assembled, and used in place of the distributed RIOCSC textdeck.
To get the real I/O
definitions for the target
configuration read onto the P-disk,
from the card reader,
place the RIOxxx deck into the reader, ready it, and issue
the CMS command
OFFLINE READ RIOxxx SYSIN
where xxx are any threecharacters specified by the
installation. If csc is chosen for xxx, the existing file
RIOCSC SYSIN is erased.
To assemble the real I/O configuration deck, produce
the text deck, and print the listing, issue the CMS command

- 4 -

I

CPUPASM RIOxxx
where xxx are the same three characters specified with the
OFFLINE READ command.
The TEXT deck is not punched but
remains on the P-disk for the generation of CP.
The physical <real) machine is described to CP via
control blocks containing information about the input/output
devices, channels, and control units. These control blocks
are generated by the following CP-67 macros which aredescribed below: REALIO, SIMPLEX, DRCH, DRCU, DRDEV, and
DMXDV.
The following conventions are used throughout thisdescription:
1. variable information
is indicated inlowercase and system key-words are indicated in uppercase
letters, whereas both are written in uppercase when macros
are punched in cards; 2.
< and > are used to bracket
choices and the brackets are
not part of the macrodefinition (for example, RDEVPNT=<O,dlabel>> would be used
to indicate that RDEVPNT=O or RDEVPNT=dlabel could be used;
3. a pair of J's is used to indicate an optional parameterand the I 's are not a part of the macro definition (forexample, SIMPLEX lnl would be used to indicate that SIMPLEX
or SIMPLEX n could be used).
MACHINE CONFIGURATION MACROSREALIO MACROThe REALIO macro is the first card of the deck. Its
purpose is to generate the prerequisite entry points for use
by the system and to give a CSECT name to the deck. Its use
isllabell

REALIOITITLE='Listing Header' I

where "label" becomes the alphabetic serialization of thetext deck and title appears at the top of the pages in thelisting.
Note. label must be four or fewer characters.
SIMPLEX MACROThe SIMPLEX macro follows the unit, control unit, andchannel specifications for any given CPU. It provides forthe creation of the necessary tables required by CP and isdependent on the configuration specified.
If a simplex-

5 -configuration is described, the .SIMPLEX macro must be
followed by the END card. If a duplex configuration is being
described, two SIMPLEX macros are required: the first
SIMPLEX macro is followed by the I/O definitions for anotherCPU; the second SIMPLEX macro is followed by the END card.
SIMPLEX Inf
where 'n' is either null for a simplex system, '1' for the
first half of a duplex specification, or '2' for the second
half of_ a duplex configuration.

I/O BLOCK DEFINITION MACROSThe following macros are used
input/output units available:

to describe the physicalDefine Channel Macroflabell

DRCH

fCBANPNT=<O,chlabel>f,
RCULIST=list,CHANADD=c

where •1abe1• is the symbolic label of this channel; chlabel
is the symbolic label of the next channel in the channel
list; list is the symbolic label of the first control unit
on this channel; and c is the channel address.

Define Control Unit Macrollabelf

DRCU

fRCUPNT=<O,culabel>I,
DEVLIST=dlabel,RCUADD=c,
IRCUPATH=<O,path>l,CUTAILl=taill

where •1abe1• is the symbolic label of this control unit;
culabel is the symbolic label of the next DRCU macro for the
next control unit on this channel, if any;dlabel is the
symbolic label of the first device defined for this control

-

6 -

I

unit; c is the control unit address; path is the value(hexadecimal) of the logical path for this control unit
<each control unit on a channel has a unique bit of theeight bits assigned to the channel and this bit or pathdefines which devices are accessed through this controlunit); taill provides a connection to this control unit fromthe channel--use the symbolic label of the channel on which
this control unit resides.

Define Device Macrollabell

DRDEV

IRDEVPNT=<O.dlabel>I,
RDEVCU=culabel.RDEVADD=ccu.
TYPE=type,DECUPI'H=path,(where "label" is the symbolic label for this device; dlabel
is the symbolic label of the next device on this control
unit; culabel is the label of the control unit on which
this device resides; ccu is the channel. control unit, andunit address of this device; type is the device type(specified as xxxx where xxxx is 2311, 2314, 2321, 2301.
2303, 2400, 1403, 2540P, 2540R, 2701, 2702. 2703, or 2250;"path" is identical to the control units path (RCUPATH in
DRCU) for this device and defines which control unit thisdevice uses.
Define Multiplexor Device MacrollabellDMXDVRDEVADD=ccu,TYPE=type,1sAD=n1,
IRDEVPNT=<O,mlabel>I(

where "label" is the symbolic label of this multiplexor
device; ccu is the channel. control unit. and unit addressof this device; type is the device type, which is one of
the following: 1052, 1403, 2540RDR, 2540PCH, 2701T, 2702T.
2703T, or T!'35T ( where the 2701T, 2702T, 2703T implies a1052, 2741-BCD or 2741-correspondence terminal coming into a
2701, 2702, or 2703 and the TT35T is a teletype 33 or 35); n
is the SAD address of the 2701, 2702, or 2703 andhas avalue of O, 1. 2. 3. or 4 (the SAD address does not indicate
terminal type); For a 2701 which does not require a SAD
command, specify a value of 4. For a 2703 which ignores SAD
commands, a value of 4 can also be specified. For a 2702,
the correct SAD value for the particular line must be
specified ( 0, 1, 2, and 3 are valid). Your local IBM CE-

1 -can supply you with the SAD numbers for each 2702 line: andmlabel is the symbolic label of the next multiplexor device
in the chain. There must be one DMXDV macro defined for each
2701, 2702, or 2703 line.

Note.
The ordered arrangement of the real I/O macros isrequired to properly generate the correct entries andtables.
The multiplexor devices must be defined before theselector channel devices. Each selector channel must becompletely defined in terms of devices, control unit, andthen channel (in that order>
before the next selector
channel is defined.
If a simplex configuration is being
described, the SIMPLEX macro must be followed by the END
card.
If a duplex configuration is being described, two
SIMPLEX macros are required: the first SIMPLEX macro isfollowed by the I/O definitions for another CPU: the second
SIMPLEX macro is followed by the END card.
An example of a real I/O
configuration is as follows:source deckfor asimplexRIOSREALIO TITLE=•SAMPLE SIMPLEX'OPCONSOL DMXDV RDEVPNT=PRINTER1,RDEVADD=009,TYPE=1052
PRINTER! DMXDV RDEVPNT=CARDRDR1,RDEVADD=030 ,TYPE=1403
CARDRDRl DMXDV RDEVPNT=PUNCH1,RDEVADD=031,TYPE=2540RDR
PUNCHlDMXDV RDEVPNT=TERM01,RDEVADD=032,TYPE=2540PCHTERMOlDMXDV RDEVPNT=TERM02,RDEVADD=020,TYPE=2702T,SAD=lTERM02DMXDV RDEVPNT=TERM03,RDEVADD=021,TYPE=2702T,SAD=lTERM03DMXDV RDEVPNT=TERM04,RDEVADD=023,TYPE=TT35T,SAD=2
TER.M4E
DRUM2
R2820ACHANl
DISK30DISK31DISK37
R2314
CHAN2
DRUMl
DISK4

-

8 -

.....
. .. . .

DMXDV RDEVADD=04E,TYPE=2703T,SAD=4DRDEV RDEVCU=R2820A,RDEVADD=100,TYPE=2301,DECUPTH=80
DRCU DEVLIST=DRUM2,RCUADD=O,CUTAILl=CHANl,RCUPATH=80
DRCH RCULIST=R2820A,CHANADD=l,CHANPNT=CHAN2DRDEV RDEVCU=R2314,RDEVADD=230,TYPE=2314,DECUPTH=40,
RDEVPNT=DISK31DRDEV RDEVCU=R2314,RDEVADD=231,TYPE=2314,DECUPTH=40,
RDEVPNT=DISK32**DRDEV RDEVCU=R2314 ,RDEVADD=237, TYPE=2314, DECUPTH=40
DRCU DEVLIST=DISK30,RCUADD=3,CUTAIL1=CHAN2,RCUPATH=40
DRCH RCULIST=R2314,CHANADD=2,CHANPNT=CHAN3DRDEV RDEVCU=R2841B,RDEVADD=393,TYPE=2303,DECUPTH=80,
RDEVPNT=DISK4DRDEV RDEVCU=R2841B,DEVADD=390,TYPE=2311,DECUPTH=80,
RDEVPNT=DISKS*·*.. . . .
. . .. .

R2841B
SCOPE!
R2250
CHAN3
TAPE1
TAPE2
R2400A
CHANO
D2701A
R2701A
CHANOA
D2701B
R2701B
CHAN OBDRCU

DEVLIST=DRUM1,RCUADD=9,CUTAIL1=CHAN3,RCUPATH=80,
RCUPNT=R2250
DRDEV RDEVCU=R2250,RDEVADD=306,TYPE=2250,DECUPTH=40
DRCU DEVLIST=SCOPE1,RCUADD=0,CUTAIL1=CHAN3,RCUPATH=40
DRCH RCULIST=R2841B,CHANADD=3,CHANPNT=CHANODRDEV RDEVCU=R2400A,RDEVADD=OCO,TYPE=2400,DECUPTH=80
RDEVPNT=TAPE2DRDEV RDEVCU=R2400A,RDEVADD=OC1,TYPE=2400,DECUPTH=80
DRCU DEVLIST=TAPE1,RCUADD=C,CUTAIL1=CHANO,RCUPATH=80
DRCH RCULIST=R2400A,CHANADD=O,CHANPNT=CHANOADRDEV RDEVCU=R2701A,RDEVADD=010,TYPE=2701,DECUPTH=80
DRCU DEVLIST=D2701A,RCUADD=1,CUTAIL1=CHANOA,RCUPATH=8
DRCH RCULIST=R2701A,CHANADD=O,CHANPNT=CHANOBDRDEV RDEVCU=R2701B,RDEVADD=012,TYPE=2701,DECUPTH=80
DRCU DEVLIST=D2701B,RCUADD=l,CUTAIL1=CHANOB,RCUPATH=8
DRCH RCULIST=R2701B,CHANADD=0SIMPLEXEND

Note.
Nonshared multiplexor devices, except for tapes,
should be defined as separate channel, control unit, anddevice blocks (macros>: that is, each device has its own
set, as shown for D2701A and D2701B above. This avoids
lock-out problems on that channel if unusual I/O operations
are performed by users on a particular device.

(

Further examples of REAL I/O configuration decks areavailable from the CP-67 distributed P-disk files: SIMPLEXSAMPLE, DUPLEX SAMPLE, and RIOCSC SYSIN.

SETUP OF INSTALLATION PARAMETERS
Installation parameters must be provided for CP-67 justas the machine description was provided.
Installation
parameters are described in a SYSIN deck called SYSDESCR,
which is assembled and the resultant TEXT deck placed in
CP-67. The SYSDESCR deck contains the following items: theSYSRES macro which describes the system residence volume,
the SYSGEN macro which defines installation variables, a
constant called SCREDAT which is the creation date andcharacter string printed on the 1052 at system IPL, and aconstant called SYSCHAR which is the character to be printed
when CP console function mode is entered or a CP console
function error occurs.
A sample SYSDESCR SYSIN deck is
distributed with the P-disk files along with the SYSDESCRTEXT deck.
If the distributed SYSDESCR SYSIN does not meetthe installation's needs, it should be altered as needed andreassembled as described for RIOxxx SYSIN in "Machine- 9 -configuration Definition for CP-67•.
The SYSRES and SYSGEN macros are described below. The
SCREDAT and SYSCHAR constants are illustrated in the example
below as well as in the distributed sample SYSDESCR SYSINdeck.
SYSRES MACROThe SYSRES macro is used
residence volume. Its format istodescribethesystemSYSRES SYSRES=ccu, SYSTYPE=type, SYSVOL--vol id, SYSERR=aaa,
SYSDNC=bbb,SYSWRM=ccc
where ccu is the address of the disk onto which the nucleus
is written: type is 2311 or 2314: volid is the CP-67
formatted label of the volume (that is, CPDSK1>; aaa is thecylinder allocated as permanent for error recording; bbb isthe starting cylinder for nucleus residence; and ccc is thecylinder for warm start control.
SYSGEN MACRO'The SYSGEN macro is used to describe certain installation
variables used for system operation. Its format is
SYSGEN SYSOPER=userid,SYSDUMP=dumpid,SYSEMRG=xxx,
SYSCNSL=aaa,SYSPRT=bbb,SYSPUN=ccc,SYSCORE=ddd.K
where userid is the operator's id for.AUTO LOGIN; dumpid isthe user's id for whom system dumi:s are made available fromspooling files: xxx is the 270x line address for the
emergency console startup; aaa
is the system console
address; bbb is the system line printer; ccc is the s.yst:em
punch, and ddd is the storage size of the real systemexpressed in K.
An example of a SYSDESCR SYSIN follows:
SYSD
TITLE 'SYSDESCRVERSION 3, LEVEL 1'
SYSDESCR START 0
ENTRY SCREDAT
DC
ALl(SCREDATF-SCREDAT)LENGTH OF MESSAGE
SCREDAT DC
CL10'08/30/71'
DC
C'CP-67 Version 3 Level 1'
SCREDATF EQU*SPACE 1
ENI'RY SYSCHAR- 10 -J

SYSCHARDCC'CP'SPACE 1DSOD
SYSRES SYSRES=230,SYSTYPE=2314,SYSVOL=CPDSK1 ••••
SYSGEN SYSOPER=CPSYS,SYSDUMP=OOE, SYSEMRG=02F .••••END

In the above example, the SCREDAT field can be set to thedate of system creation. This date and the following
character string are printed on the 1052 at system IPL time.
The SYSCHAR characters are printed to show the level of thevirtual machine; that is, when the virtual machine is inconsole function mode, these characters are printed forcommand errors and verification.

SELECI'ION OF SYSGEN OPTIONS(

currently there are several options to be chosen duringsystem generation: the real timer, the virtual 67, thestatistical gathering/tracing options, and ISAM. To obtain
the options, the file LOCAL COPY on the P-disk must bechanged by using the CMS command EDIT. For each option there
is a corresponding statement in the LOCAL COPY file, forexample:columns 1
option name

10
SETA

16
0

A 0 or 'NO' means the option is not selected; a nonzero
numeric or 'YES' in the operand field means the option is
selected. Therefore, to obtain each option, the appropriate
operand field must be chosen. Once the options have been
selected, the corresponding CP-67 module must be updated andassembled by issuing the following CMS command:
CPUPASM nameNote. After the LOCAL COPY file has been edited for theselection of options, the COPY file must be placed in a
MACLIB for access by the ASSEMBLER. To add the LOCAL COPY
file to a MACLIB (for example, MACUP), issue the CMS command
CPMACADD maclib LOCAL
To replace it in an existing MACLIB
issue the CMS command(for example, CPMACS),

CPMACREP maclib LOCAL

-

11 -

where maclib is the name of the macro library involved.
The assembled modules distributed
contain the following options:&RTIMR&V67&ISAM&TRACE(5)&TRACE(6)

SETA
SETA
SETC

6
1

SETB

1
1

SEIB

with

this

system•YES•

If these options are not desired or are to be changed,
update the LOCAL COPY file and reassemble the modules
affected, as described for each option below.
Note: Use of these options affects system performance andshould be selected with care. The TRACE options involve
especially heavy overhead.
Real Timer--6RTIMR
The real timer option 6RTIMR provides for updating avirtual machines timer when the machine is in wait state, if
that virtual machine has the REAL TIMER option in the
DIRECTORY. This option allows
a dormant machine (forexample, APL) to be awakened by a timer interrupt.
(See"Directory Creation" for details.)
The modules to be assembled for the
DISPATCH and SCHEDULE.

&RTIMR option are

For the real timer option the SETA symbol is set to thenumber of concurrent real timers that the installation iswilling to support. For instance, the statement
6RTIMR
produces code intimers.

SETA

6the dispatcher to maintain up

to six real

Virtual 360/67 Option--6V67
The virtual 67 option, 6V67, provides code in the CP-67
nucleus to support virtual machines in which CP-67 can berun. Those virtual machines with the virtual 67 option
specified in the directory have the facility to operate invirtual extended PSW mode with 24-bit addressing. The
distributed system has the &V67 option selected. If the- 12 -

I

option is not desired. change the LOCAL COPY value to&V67 SETA 0
and use the EXEC
following modules:

procedure

CPUPASMtoreassemble

the

CFSIV.IAIN
DISPATCH
IOINI'LOGON
MVIOEXECPAGTRANSPRIVLGEDPROGINTQUEVIORESINTPSA
UNSTIOUSEROFF
VIOEXECISAM Option--&ISAM('·

Certain
OS/360ISAM
channelprograms
useaself-modifying operation which under normal CP-67 processing
is not allowed.
With the &ISAM option selected. CP candetect the specific OS/360 ISAM cnannel programs and makechanges in the translated channel program to handle theself-modifying sequence. With the option selected and withthe virtual machine using OS/360 ISAM. CP restricts somewhat
the location of the ISAM CCW's. Four critical double words
in certain channel programs cannot cross a page boundary.
Ref ering to the OS/360 ISAM Program Logic Manual (Form
GY28-6618) the following table lists the restricted channel
program and the critical double words:
Channel Program

Critical Double Words------------------~--

CP1
CP4/5
CP6
CPS
CP23
CP23
CP26

cs. C9. ClO. C10A
CA12. CA13. CA14. CA15
CA34. CA35. CA36. CA37
CB10. CB11, CB12.-CB16
CS6. CS7, csa, CS9
CS17. cs1a. CS19, CS19A
CS34. CS35. CS36, CS37

Only those users with the ISAM option in the DIRECTORY
have their ccw strings checked for self-modifying operation:
thus not all users incur the additional CP overhead. This
option is not needed for DOS ISAM.

- 13 -The
CCWTRAN.

module to be assembled for the &ISAM option is
The distributed version has the option selected.

If thevalue tooption is&ISAM

not desired,SETCchange the

LOCAL COPY

'NO'

and issue the CMS command
CPUPASM CCWTRAN
Statistical Gathering / Tracinq--&TRACE
This option is a binary array of 25 entries.
Eachelement controls the selectionof certain statisticalgathering and tracing functions in CP-67. The following 6
elements are currently implemented.
&TRACE(l) SETB 1
used in module PSA to trace CP-67 SVC calls in an SVC
trace table in that module.
To select the option,enter the statement in the L~AL COPY file, update the
MACLIB and CPUPASM the PSA SYSIN file.
&TRACE(2) SETB 1&TRACE( 3) SETB 1
these two options control the tracing of selector andmultiplexor interrupts Creal hardware) respectively.
The trace table and code selection is in the IOINT
module. To select either or both options, enter thestatements in the LOCAL COPY file, update the MACLIB,
and CPUPASM the IOINT SYSIN file.
&TRACE(4) SETB 1
thisoption is
used
for FREE/FRET
statisticalgathering.
With the option selected, such data as
number of calls, number of elements, etc. is gatheredby the FREE module. To select the option, enter thestatement in the LOCAL COPY file, update the MACLIB,
and CPUPASM the FREE SYSIN file.
&TRACEC5) SETB 1(selected in the distributed system>
this option is used to gather counts of user privileged
instruction execution. The file STAT COPY defines thecounters in low core that are used.
To select theoption, enter the statement in the LOCAL COPY file,
update the MACLIB, and CPUPASM the .files PRIVLGED
SYSIN, PROGINT SYSIN and VIOEXEC SYSIN.
&TRACE{6) SETB 1(selected in distributed system>
this option is used to select the virtual machine
tracing and address stop functions invoked with the SET

-

14 -

I

TRACE and SET ADSTOP console functions. To select theoption, enter the statement in the LOCAL COPY file,
update the MACLIB, and CPUPASM the files PSA SYSIN,PROGINT SYSIN, VIOEXEC SYSIN, UNSTIO SYSIN, DISPATCH
SYSIN, RESINT SYSIN, TRACER SYSIN, and CFSSET S~SIN.
The &TRACE
use.

elements 7

through 25

are reserved

for futureNote. The above procedure for options can also be applied
tocode added by an installation.
The module can beassembled to selectively contain the installation's code
(1) by placing a COPY OPTIONS and a
COPY LOCAL instruction
before the START card in the module being modified, (2) byadding a SETA instruction in the LCX::AL COPY file, that is,&LOCALl

SETA

1(where &LOCALl might mean all local modifications made byprogrammer number 1), and (3) by checking for the setting of
the option in the module.
OBTAINING CP-67(

To obtain the tailored cP-67 system, a card load deck
must be punched out and then loaded onto a properly
To punch the CP card load deck, the CP
formatted volume.
utilities and card loaders, verify that the card punch is in
READY status, then issue the CMS command:
CPGEN &1 &2
where
&1

is the address of the printer that the loader
uses to print the CP load map. A loader
called RELDRxxx punches at the startof the deck, where xxx, specified in &1, isthe printer address in 3 hex characters(for example, OOE or 030).

&2

is the full name of the real I/O configuration deckthat was specifically assembled for the systemin the procedure above (for example, RIOCSC or
RIOABC).

The above command punches out the complete CP load deck
(about 2500 cards with each text deck uniquely identified incolumns 73-75) and each deck is separated by an identifying
card with the format
OFFLINE READ f name ftype- 15 -

where fname is the object deck filename and ftype is TEXT.
Note. There is a pause after punching the CP-67 LOAD DECK
to allow the user to clear the punch and get the last card.
The user can continue by typing "ready" or he may stop hereby typing "quit". This is clearly stated on the terminal as
the CPGEN operation proceeds.
OBTAINING THE UTILITIESThe utilities supplied with CP-67 are as follows:
BUZZARD
DIRECT
FORMATSAVESYS
VD UMPFDUMPEDI TD UMP
MINIDASD
CPDMPRSTSAVEOS
CPI PLThe CP utilities are punched out as part of the CPGEN
procedure above. The second file output contains all theutilities, each identified by a deck separator of the
OFFLINE READ f orrn (as outlined above for the CP load deck) •The CPutilities, BUZZARD,FORMAT and
SAVESYS, arestand-alone programs and must have the appropriate loader on
the front that reflects the correct printer address. The
DIRECI' utility runs stand-alone or under CMS. If it is run
stand-alone, it requires a loader. The VDUMP utility runs
only under CMS. It is used to retrieve CP-67 dumps fromdisk after an ABEND in the CP supervisor. The VDUMP utility
is run by the user specified in the SYSGEN macro of SYSDESCR
as the SYSDUMP parameter.
In addition to the standard CMS
machine configuration, the user must also have a reader
printer device in his virtual machine as
UNIT

OFl,RPRT

in order to run VDUMP.
for details.

See "Obtaining

CP-67 Dwnps--VDUMP"SAVEOS and CPIPL are OS programs, to be run in an OS virtual
machine, and are equivalent to SAVESYS for an OS system.

- 16 -

The CMS files for implementation are: SAVEOS JOB, SAVEOSSYSIN, and CPIPL SYSIN. Reference Operating systems in~
Virtual Machine for further information.
See the CP-67 Operator's Guide
for a description Of
CPDMPRST, a CMS program that dumps and restores 2311 or 2314
volumes between disk and tape.
Detailed descriptions of eachfound in the ensuing sections.
To obtainof theother utilities

arecopies of the loader, issue the CMS command
OFFLINE PUNCH name LOADER

where name is either RELDROOO, RELDROlO, RELDR030, RELDROOE,RELDROOF, or RELDR040, depending on the real address of theprinter.
If an installation has a printer of any other address,
use the RELDROOO LOADER and immediately after the loader andbefore the TEXT fileCs> to be loaded place the following
control card:
column

1 2
CTL

6

10

'WTR

CCU

column 1 - 12, 2, 9 punch
where ccu is the desired printer address.
The CPGEN procedure punches out three loaders for the
specified printer address '1 (that is, OOE> to be used withvarious loading functions and also three loaders with a zeroaddress CRELDROOO), which are useful when loading the CP
utilities.
Note.
If a loader REIDROOO is used, no load map is
produced, but the loading function proceeds. A load map isvery useful for the CP-67 system, but of little use whenloading the utilities, thus RELDROOO can be used by an
installation to load a program without using the printer.
FORMATTING OF VOLUMES(.

-

Once the CP utilities have been punched out, thedirect-access volumes used by the system (for paging,spooling, nucleus residence, and directory> must be properly
formatted.
This is accomplished by means of the FORMAT
utility. The detailed instructions for operating FORMAT
follow .
- 17 -

Aftertypes

the operator's

console has

been identified,itbeing formatted

byCP/67 DASD FORMAT PROGRAM
Then it requests
typingthetype ofdeviceDEVICE TYPE
where the response may be four digits indicating the type ofdevice (that is, 2301, 2303, 2311, 2314) and an optional
fifth character, p, which causes only partial formatting totake place (that is, 2314p).
If the device type isthe unit address

recognizedr thesystem requests

DASO ADDRESS =where the response is the channel and unit address as threehexadecimal digits (for example, 100r lCO, 230, A30r 9CO).
If the device is ready, thelabel to be written by typing

system asks

for thenewwhere theresponse issix characters<uppercase
lowercase> written on the label record of the volume.

or

VOLUME LABEL =If p was specified when indicating device type, thesystem now asks the operator to define the area to beformatted by typing
START CYL.(HEX) =where the response is null for cylinder 0, "lo" if only thelabel is to be written, or two hexadecimal digits specifying
the starting cylinder. The system then requests the ending
cylinder by typing

END CYL.CHEX)=

where the response is null for the entire volume Cwhose
actual value
differs with thedevice type>or twohexadecimal digits for a specific cylinder.

-

18 ~

I

The system indicates that the format operation hascommenced when its data is complete. At termination, theprogram will so indicate and may be restarted by pushing
REQUEST.
The system's residence volume
for CP is usuallyformatted with the label CPDSKl, as that label is required
for IPL'ing by name. If it is desired to change the volume
label, the file SYSTEM SYSIN must be modified to reflect thedesired system's residence volume label and SYSTEM SYSIN
must be reassembled and replaced in the CP load deck.
ALLOCATION AND DIRECTORY CREATION
Allocation(

All 2314 and 2311 volumes to be used for CP-67 spooling
and/or paging must havespace allocated.
The system
residence volume must have space allocated for the system
directory and the nucleus.
Note: 2301 and 2303 drums must .!!Q!:. be allocated since they
are specially formatted for dynamic paging allocation. The
DIRECT utility <ALLOCATE control cards) is used to allocate
space for the system residence volume and others, if
necessary. For 2314 residence, the following space must be
allocated as permanent:

to

Cyl.

Usage

0

IPL and file directory
error recording Cl cyl required)warm start control (1 cyl required)nucleus residence (2 cyl required)nucleus residence'SYSERR''SYSWRM''SYSDNC''SYSDNC+l'

The values for the symbolic cylinder locations
defined in the SYSDESCR deck with the SYSRES macro.

are

For 2311 residence,
allocated as permanent:

be

to

the

following

space

Cyl.

Usage

0--1
'SYSERR''SYSWRM''SYSDNC''SYSDNC+4'

IPL and file directory
error recording (1 cyl required)warm start control (1 cyl required)nucleus residence (5 cyl required>nucleus residencemust- 19 ....

The symbolic values are obtained from the SYSRES macro
specified in the real machine configuration description.
Cylinder O and others may be allocated as DRCT space.
In addition, some cylinders may be allocated as permanent
for user file space or named system residence.
othercylinders must be allocated as TEMP (for spooling or paging>or TDSK.
CP-67 requires an allocation record to be written behindthe volume label on cylinder O head 0 record 3 of each diskthat is to contain space for the directory, paging, andspooling.
The allocation record specifies which cylinders
on the disk are used as permanent space and which aretemporary space.
Permanent space on a volume consists of
the areas reserved for user files and system residence.
Temporary space consists of those areas used for paging andspooling by CP-67.
There are five types of allocation control
ALLOCATE, DRCT, TEMP, TDSK, and PERM.
The format
ALLOCATE card iscards:of theALLOCATE UNIT=ccu,VOLID=xxxxxx
ccu

is theaddress
allocated.

ofxxxxxxis the six-characterto be allocated.

thedevicetobelabel of the volume

ALLOCATE must start in column 1 and UNIT in column 11.
DRCT space is used for CP-67 directory residence.
TEMP space is used for CP-67 spooling and paging.
PERM space is for user direct-access files.
TDSK is for
DASD units in theuser machine
descriptions that are to be allocated at login timefrom a pool of temporary disk space. The TDSK area
is not used by CP for spooling and paging.
The control cards for the allocation of space are
DRCT

TEMP
PERM
TDSK

-

20 -

xxx,yyyxxx,yyyxxx,yyyxxx,yyy

I

~
~

··..

where DRCT, TEMP, PERM and TDSK start in column 10, and thecylinder designations in decimal form <with leading zeros tomake three characters each) start in column 16. xxx is thefirst cylinder and yyy is the last cylinder.
There must be one ALLOCATE card for the CP residence
volume and for each disk that contains temporary space (TEMPand TDSK). Each ALLOCATE card must be followed by thecontrol cards for that volume.
When all the allocation fora device has been specified, the following card is used toindicate the end of allocation cards for the volume:*EOA*
The *EOA* begins in column 10.
The *EOA* card isfollowed by another ALLOCATE card or a DIRECTORY card.

thenNote that the system always makes cylinder 0 permanent
for the volume label
and allocation table residence.
Therefore, do not begin user fil.es 2!!. real cylinder O of
those disks that are being allocated. Checks are also madefor exceeding device limits on the device address specified.

(

The allocation of volumes can be a separate run fromthat of the directory. Also, each volume can be allocatedindependently of the others.
The directory must be created after the direct-accessvolumes are properly formatted. A sample directory is
contained on the P-disk in the file DIRECT SAMPLE. To obtaina printout of that file, issue the CMS command
OFFLINE PRIN'l' DIRECT SAMPLE
The directory is created by the utility DIRECT, theinstructions will be found in the next paragraphs. The
allocation of space on the residence volume Cas describedabove> must precede the directory creation.
Directory Creation
The CP system residence volume must contain a directorythat describes the users and their virtual machine.
The
directory portion of this utility accepts the descriptionsof the users and their virtual machines from the card reader
specified at the operator's console and writes the directory

-

21 -

in the temporary space previously allocated on the system
residence volume (initially thedisk must be formatted
before ALLOCATE' ing and DIRECTORY take place) •Depending'upon the size of the directory and the device type of thesystem residence volume (that is, 2311 or 2314), at least
the first two or three cylinders should be allocated as DRCT
space on the CP system residence volume. Estimates on spacerequirements for the system directory are as follows:
2314-- 150 USER virtual machine
descriptions per cylinder
2311-- 40 USER virtual machine
descriptions per cylinder
These space requirements are in addition to cylinder O of
the residence volume, which is used as the master directory.
Thus, the directory allocation control card,
DRCT

000,003is sufficient to provide space on three cylinders {1, 2, and
3) for virtual machine descriptions.
Every user who is to be permitted to log in to CP-67
must be described in the directory, including the system
operator.
The directory description must begin with the following
control card:
DIRECTORY UNIT=ccu,VOLID=xxxxxx
CCU

is the real address of the CP system's
residence volume on which the directory
is to be written.

xxxxxxis the six-character volid of the disk onwhich the directory is written.

DIRECTORY must start in column 1 and UNIT in column 11.
After theIts format is
OWN

DIRECTORY control cardcomes theOWN card.

aaaaaa,bbbbbb, ••• ,hhhhhh

where "aaaaaa,bbbbbb, ••• ,hhhhhh" are the volume labels ofdisks that contain allocation tables. OWN must start incolumn 10 and the volume labels in column 16. Only eightlabels can be specified in one card. To name more thaneight, use multiple OWN cards. A maximum of 40 owned volumes
is allowed.

- 22 -

Note that the only volumes specified in the owned list
are those that CP can use for TDSK allocations, paging andspooling, such as drums, and the system residence volume.
Volumes that have no TEMP, DRCT, or TDSK space (forinstance, OS, DOS, CMS volumes) should not be in the owned
list, as it is obviously not necessary to allocate volumes
that are all PERM space.
Next are the cards that describe a user and his virtual
nachine. These cards are described below.
(Note that thelabel field always starts in column 1, the operand field,that is, card type, in column 10, and the arguments incolumn 16.)
use rid

USER

password,account,priv-class,priority,options

The USER card initiates a new machine description fileand creates a user directory entry for the specified user.
•userid" is the eight-character external name by which
the user and all spooling output are labeled: it must be
left-justified and trailing blanks included if userid is noteight characters.

("Password" is the key by which the user must respondwhen trying to login to the system. The password must be
specified as eight characters, left-justified, with trailingblanks if eight characters are not specified. Note that if
the terminal has the print inhibit feature, the system turns
off the printing mechanism to maintain the security of thepassword, or if the user issues the LOGIN command with amask character, one line of overprinting occurs before theuser is allowed to enter his password.
"Account• is any eight-characterinstallation accounting uses.

identificationfor"Priv-class• is the user's privilege class: A forsystem operator, B for system administrator, c for IBM
customer engineering use, and D for normal users.
This
privilege class determines what console functions in thesystem the user may exercise. (See Appendix A in the CP-67
Operator's Guide for a table of console functions available
to each privilege class.)
Note: users with privilege classc do not have I/O errors
recorded for them by CP-67. Use of this class should
therefore be carefully restricted.
Privilege class c canalso execute certain DIAGNOSE functions to maintain theerror-recording cylinder.

- 23 -

•Priority• is used by the dispatching scheme.
Thedecimal number may range from 00 99, with 00 being thehighest priority.
•options• isa hexadecimal numberthat selects
specific options available to users at login time andexecution time. Th.ere are currently three user options
available.
(See •selection of SYSGEN Options">
They, and
their hex values, are:
REAL timer support
ISAM support
VIRTUAL 360/67 support

X' 80'
X' 40'
X'20'

Note: The &ISAM option allows the user to do I/O operations
as used by OS/360 ISAM. It is not required for DOS ISAM.
Multiple options can be selected by combining thevalues. For instance, real timer and virtual 67 would bespecified as
USER••••• , X' AO'

The core card specifies thememory.
CORE

size of the user's virtual

I dddd I
I dddK I
I dddM I

It may be specified as dddd where dddd is a decimal numberthat is a multiple of 8'19 2 bytes, or by one or more decimal
digits followed by K or M, indicating a multiplier of 1024
bytes or 1,048,576 bytes respectively. The core size must
be a multiple of 8K, where 8K is the minimum • . When a user
101s in to CP-67, he receives a virtual machine of thissize. Paging space is not selected for this virtual machine
until the user references core storage: space on the paging
device is then selected one page at a time. If a user does
not need a large core space, allocate him a small one--forexample, give the system operator 8K core.
UNIT

ccu,devtype
I ,<xxxxxx, (TEMP) ,REM=IDccu, CON=YES,DED=IDccu>I
I ,<relno,zzz>II ,last!
l,RDONLYI- 24 -I

I ,RDSHAR=passwordl
I ,WRMULTIl,WRSHAR=passwordl
The UNIT card is used to specify the input/output units
available to a user and where and on which volumes his
permanent files reside.
ccu

is the virtual address of the device.

devtypeis the device type, which may be one of
the following:
1052
2540P
2540R
1403
2250
2311 or 2312
2314
2400
2701
2702
2703
TIMR
RPRT
RPUN

(

where a 2312 is used to designate thebottom half of a 2314 drive used as a
virtual 2311.
A 2312 device type is treated as a 2311 by CP-67. User seekcommands issued to the pseudo 2311 have the head address
relocated Chy adding decimal 10) to access the bottom halfof the 2314 disk. It should be noted that 2311 device types
supported on the top half of a 2314 pack may experience
difficulties
if multitrack
operations areattempted;
however, multitrack operations on the 2312 <pseudo 2311)
device typeshould work
correctly sincea physicalend-of-cylinder condition is recognizable.
TIMR is a pseudo-timer device which can provide the time ofday, date, virtual CPU time, and total CPU time to a virtual
machine. It should be specified for every CMS user. Its
format is
UNIT

OFF,TIMRRPRT and RPUN are special device types that allow the user
to access the disk dump created by a CP-67 system abend.

- 25 -

For the desired
VDUMP) specify
UNIT

userid to receive the dump

Csee section on

OFl ,RPRT

xxxxxxis the volume label of the disk that is being
described.
(TEMP)
specifies that the disk space is to beobtained at logon time from that allocated as TDSK
space and then removed from the user at CP-67
log off.
REM=IDccu specifies a remote device with real address
ccu that is to be used for spooled output fromthis defined user. It has the same function as
the SPOOL console commands for directing spooled
output. See CP-67/CMS User's Guide for details.
The only device types supported as remote devices
are the 2540P and the 1403.
DED=IDccu specifies a device with real address ccu thatis dedicated to this user at login time andunavailable to other users.
The device types
supported are the 1403, 2540R, 2540P, 2250, 2400,
2701, 2702, and the 2703. If the specified device
is not available or in use when the user logs in,
he is so informed and the device is not attachedto him. Note that a 2250 or 2400, if specified,must be defined as a dedicated device.
CON=YES
specifies that continuous spooled input isdesired for this virtual card reader; that is, if
there is more than one spooled input file for thecard reader, they are read as ~ continuous file
before end-of-data is given.
This has the samefunction as the SPOOL ccu CONT console function- (see CP-67/CMS User's Guide for details.>
relno

is a three-digit decimal cylinder relocation
factor to be applied to this device; for example,
if a user's permanent files started at cylinder 54of th~ specified volume, relno would be specified
as 054.

zzz

is a three-digit decimal number specifying thenumber of temporary cylinders to be obtained atlogon. zzz is used only if (TEMP) was specified.

last is a three-digit decimal number specifying thelast cylinder of the user's file space. If relno
is 054 and the user is allowed 20 cylinders ofspace, last would be specified as 073.

- 26 -

RDONLY
specifies that thevirtual direct-accessvolume can only be read and not written upon. If
RDONLY is not specified, the user has read/write
access to the volume by himself, and no other user
can read or write that volume unless WRMULT is
specified for those users.
(See WRMULT.) If thevolume being described is the CMS system disk,
RDONLY should be specified for each user.
RDSHAR=password
is
a
one
to
eight-character
password that allows this volume to be shared forreading by users knowing the proper password. If
ALL is specified as a password, all users haveaccess to the volume for read-sharing. RDSHAR isonly used for permanent volumes and not temporary
ones. If either WRSHAR or WRMULT is specified,but not RDSHAR, a comma must be used to show that
RDSHAR is omitted.
WRMULT
allows the user to have access to the volume
regardless of other users. If WRMULT and ROONLY
are both specified for a user's volume, he will
have read-only access to that volume, regardlessof other users. If only WRMULT is specified, he
has read/write access regardless of other users onthat same volume. This parameter is intended foruse by users using operating systems which provide
an interlocking mechanism to protect files or forsystems programmers who know what they are doing.
CMS does not have an interlocking mechanism.
WRSHAR=password
is
a
one
to
eight~character
password that allows the volume to be shared forwriting as well as reading, but only one user canhave access to the volume at a time. The volume
is shared among users knawing the proper password.
If ALL is specified as a password, all users havewrite-sharing privileges on the volume.
Note. RDONLY is inconsistent with WRSHAR and consequently
they may not be specified together. If RDONLY is specified
on a volume for all users but one, and that one user logs infirst, he will use the volume in a read/write status andother users will have no access to that volume unless they
have the WR.MOLT parameter. When the RDONLY users log in,they receive the message
DEV CCU IN USE BY userid: NOT ATTACHEDThe RDONLY users should either log out and then log back in
or issue LINR console function after userid logs out or
userid detaches that device from his virtual machine. If
that read/write user logs in after a RDONLY user, he will

(
-

27 -

receive the message
DEV CCU IN USE BY userid; SET TO R/Oand he wi 11 have read-only access to that volume..
Theuserid will be one of the RDONLY users who logged on first.
If a read/write WRMULT user lags in after a RDONLY or aread/write user, the WRMULT user will have read/write accessregardless of the other users on that volume, and he will
receive the message
DEVICE CCU IN USE BY userid
If a RDONLY, WRMULT user logs in after any other user, he
has read-only access to the volume, regardless of otherusers, and he receives no message.
The parameters specified with the UNIT control card are
positional, therefore they must be specified in order and acomma must be used for each parameter omitted.
Each user's machine description is terminated by a card
with
*EOU*
beginning in column 10. At thedescriptions, a card withend of alluser directory*EOD*
beginning in column 10 is used to terminate the directory
creation process and to rettirn to the ALLOCATE and DIRECTORY
card-scan routine. If there are no additional ALLOCATE or
DIRECTORY cards,
DIRECT is terminated; if
there areadditional ALLOCATE or DIRECTORY cards, DIRECT is executed
again.
A sample allocation and directory deck are as follows:
ALLOCATE

UNIT=230,VOLID=CPDSK1DRCT 000,003
PERM 004,004
TEMP 005,197
PERM 198,202*EOA*
ALLOCATE UNIT=235,VOLID=CPDSK5PERM 000,000
PERM 001,075
TDSK 076,165
PERM 166,202*EOA*- 28 -

(

DIRECTORY UNIT=230.VOLID=CPDSK1OWNCPDSK1,CPDR01,CPDSK5OPERATOR USER CSC,A1234,A,80
CORE 8K
UNIT 009,1052
*EOU*
, 222
,D, 30
USERl
USER PASSl
CORE 256K
UNIT 009,1052
UNIT OOE,1403
UNIT OOC,2540R
OOD,2540P
UNIT
UNIT OFF,TIMRUNIT 190,2314,CMS190,000,053,RDONLYUNIT 191,2314,CPDSK5,166,175
*EOU*
,A590
,C, 30,X' 80'
USER2
USER PASS2
CORE 2561<
UNIT OOE,1403,DED=ID030
UNIT 009,1052
UNIT OOC,2540R
UNIT OOD,2540P
UNIT 106,2250,DED=ID106
UNIT OFF,TIMRUNIT 190,2314,CMS190,000,053,RDONLYUNIT 191,2312,CPDSK6,148,152,,,WRMULT
UNIT 193,2311,KVR999,000,202*EOU*,X3214567,C,30,X'CO'
USER3USER PASS3
CORE 256K
UNIT 009,1052
UNIT OOE,1403
UNIT OOD,2540P
UNIT OOC,2540R
UNIT 190,2314,CMS190,000,053,RDONLY,WRMULT
UNIT 191,2314,CPDSK3,050,060,,RDSHAR=RDXXUNIT 192,2314,CPDSK5,001,075,,,,WRSHAR=MYPASS
*EOU*
*EOD*
CREATION OF PERMANENT RESIDENCE VOLUME
Once the volumes have been formatted and the directory
created, the permanent CP residence nucleus should becreated from the CP LOAD DECK. The last module in the CP
load deck is the SAVECP module (serialization SCP) •The
function of this module is to create, after the load throughthe card reader, an IPL'able copy of CP on the residence
volume from the core image.
The volume address, label, andnucleus cylinders are indicated to SAVECP from information
contained in
the RIOxxx
module, inparticular, theinformation from the SYSRES macro.

- 29 -

To create the permanent CP residence volume, ready the
CP load deck into an available reader. The first module in
the load deck must be the relocating loader, which prints
the load map of the system onto the printer. Perform an IPL
sequence on the card reader. The volume must be mounted andready before the load completes. It is advisable to clear
core before loading. If the disk is not ready, the message**** DISK CUU NOT READY ****
is printed.
If the label on the disk is incorrect, the message**** VOLID NOT dlabel ****
is printed.
If either message is printed, remedy the situation and press
the EXTERNAL button to retry, or start from the card load.
At the termination of the load and theresidence volume, the following message
operator's terminal:creation of
appears on

the
the

DISK LOAD OK
At this time, the permanent CP residence volume has beencreated and may be IPL'ed to initiate system operation.
OBTAINING CP-67 FROM AN EXISTING CMS
For thoseinstallations thathave anoperating
CP-67/CMS system, the CMS restore procedure outlined above
can be bypassed. The following steps can be used to obtain
CP-67:

1. Mount the distribution tape on an available tapedrive attached to the desired userid as '181'.
2.
Using CMS issue a TAPE LOAD 4 command. The four
files will then load in their entirety onto the user's
P-disk space.
Note. About 50 cylinders of 2314 space are adequate tohold all the files and do assemblies.
3. Perform any necessary assemblies for configuration
or options
as outlined under "Setup
of Machine
Configuration" and •selection of SYSGEN Options".

-

30 .... -I

4. Follow the procedure
the CPGEN command.

'~

under •obtaining CP-67• using

5. BE SURE TO USE THE VERSION 3 UTILITIES AND LOADERS
WITH VERSION 3 OF CP-67.

'- 31 -

GENERATING "NAMED" OPERATING SYSTEMSUNDER CP-67
Providing a user with the capability of performing an
IPL function by name, rather than by device, requires theinstallation to save a copy of this system on a DASD devicein paging form.
The self-loading deck which performs thisis entitled SAVESYS. It accepts a control card of the form
SAVE VOLID=cccccc,UNIT=ccu,FP=nn,LP=mm,CYL=ppp,DISK=tttt,
TRK=hhwhere
SAVE must begin in column 1;
VOLID must begin in column 6;
cccccc is the volume label of the receiving DASO
volume, which must have been formatted by CP FORMAT;
ccu is the channel, control unit, and device address of
the receiving volume;nn is the page number of the first page(in hexadecimal);

to be written

mm is the page number of the last page
Cin hexadecimal).

to be written

ppp is the starting cylinder of the image; thisreal address, that is, a minidisk cannot be used;

is atttt is the device type <either 2311 or 2314).
hh is the starting track number of the image.
Ifomitted, zero is assumed. If specified, it must be aneven track number.
Note: Be sure that theparameters on the SAVE cardcorrespond with those defined in the SYSTEM and SWPTABLE
macros in the SYSTEM module.
The space indicated on the card must have been previously
allocated as permanent space on the volume. The informationon the control card must match that information provided in
the SYSTEM module assembled and loaded with the system. In
that module the system name, location, shared pages, if any,andoperatingconventions are
established.
Inthedistributed SYSTEM module, the system name is CMS, andeighteen pages are saved, beginning at page O, up to andincluding page X'll'.
The saved copy of CMS is written on
the 2314 volume labeled CPDSKl at cylinder 200.

- 32 -

I

'!he SYSTEM SYSIN filemacro, which has the format
SYSTEMis constructedusing aSYSTEM

NAME=nnn,FIRSTP=aa,LASTP=bb,TABLE=ttt,
VOLID=xxx,EXADD=ccc,SYSMASK=sss,RUNKEY=kkk,
SYSTAB=yyy

where
nnn
aa
bb
ttt
xxx
ccc
sss
kkk
yyy

is the name for the system;
is the first page saved;is the last page saved;is the label of the SWPTABLE macro
associated with this system;
is the label of the volume on which thesystem is saved;is the virtual machine execution address;is the virtual machine system mask;
is the virtual machine protection key;is the label of the shared page tablein PAGTRANS if this system has sharedpages; otherwise it is zero.

The SWPI'ABLE macro
following format:
ttt

used with the SYSTEM

macro has the

SWPI'ABLE DASDORG=ccc,FIRSTP=aa,LASTP=bb,
FIRSTSP=xx,LASTSP=yy,DISK=ddd

where
ttt
CCC

aa
bb

xx
yy
ddd

is a label <same as ttt in SYSTEM macro>;is the cylinder address where the system is saved;is the first page saved;is the last page saved;is the first shared page, if any;is the last shared page, if any;is the disk type where saved, 2311 or 2314.

The SYSTEM macro builds a table to define the name andrunning attributes of the saved system. The SWPTABLE macrobuilds a model SWPI'ABLE that is mapped to the virtual
machine SWPTABLE in core to give that machine access(through paging) to the saved system.
Pages defined as shared in SWPTABLE are automatically
LOCKed in core once the saved system is IPLed; they remain
locked until nobody is using the saved system.
The number of cylinders required to hold a named systemdepends upon the number of pages saved and the device type.

-

33 -

For a 2314, one cylinder holds 30 pages; a 2311 cylinderholds 8 pages, Thus, CMS with 17 pages requires one 2314
cylinder or three 2311 cylinders.
Models of the SYSTEM and SWPTABLE macros are given below.
The named system •os• will be saved starting at real
cylinder address 86 on the 2314 volume CPVOL1.
64 pages
will be saved. When ipl-ed, execution will begin at X'88'.
SYSTEM NAME=OS,FIRSTP=OO,LASTP=3F,
TABLE=OSTBL,VOLID=CPVOL1,
EXADD=88,SYSMASK=OO,RUNKEY=OO
OSTBL SWPTABLE DASDORG=086,FIRSTP=OO,
IASTP=3F,DISK=2314
When SAVESYS saves a copy of the system, it saves fromFP to LP. If LP is greater than X'20', the SAVESYS module
must be loaded into higher core, as it normally loads into
X'20000'. To load SAVESYS into higher core, change theaddress in the SLC 20000 card at the front of the SAVESYS
text deck.
The procedure
follows:
1.

2.

for creating

the page-form

copy isas

Load the required system into memory, with an addressstop set to a location within that system where
execution may be resumed without the system assuming
any previous state in the machine Cthat is, registers,
lower core locations, etc.). For CMS the address stop
location is X'88'.
ATTACH the direct access device on which the system is
to be saved to the virtual machine being used. The
cylinders on which the saved system is to be stored
must be formatted for CP file residence by the CP-67
utility program FORMAT. Follow the procedures outlinedin this manual under •Formatting of Volt~mes•. For the
purpose of formatting an area which will hold apageable copy of os, the full volume must be ATTACHed,and the cylinder addresses specified must be real(i.e., it is not possible to use a minidisk). Do not
attempt to use a 2301 or 2303 as the FORMAT program
initializes those devices for dynamic paging only, andmakes them unsuitable for saved system storage. Notethat FORMAT will write a CP-67 volume label at cylinderO, record 3 of the receiving volume.
If the saved system is to be stored on a CP system disk
Cone that is available to CP for paging, spooling or
CMS Temporary file space>, then the CP utility program
DIRECT must also be run. In the allocation control
cards which are input to DIRECT, specify that the- 34 -

Icylinders to be used for the saved system are permanentby supplying an appropriate PERM control card; refer tothesectionentitled "Allocation
andDirectory
Creation". Note that DIRECT will allocate cylinder 0 of
the receiving volume for its allocation tables.
3.

When the system has entered manual state <that is. theaddress stop has been reached>. load the SAVESYS deck
into the system card reader and load from the reader.
The format of the SAVESYS deck is as follows:High core loader
SLC 20000 card
SAVESYS program
LDT card
SAVESYS control card

I
I
I
I
I
4.

If the save was successful. a message appears
operator's terminal to that effect.

on theNote.
The following procedure must be used to run
Version 2 of CMS under Version 3 of CP as the named
system CMS: either the SYSTEM module must be changed
in cP. as Version 2 of CMS has only 3 shared pages. or
the saved copy of Version 2 of CMS must be given a nameother than CMS.

(

see "Saving CMS under CP-67" in this manual for
CP-67 SAVESYS
details of
preparing CMS for thefunction.
OPERATIONAL PROCEDURES
The device on which the shared systems residence volume
exists must be ATTACHed to the CP-67 system to be madeavailable toall potential users.
Those
users withappropriate directory entries will be given read-only accessto the volume. Write access to the volume will be given if
the directory entry so indicates. or if the real device
containing the shared system volume is ATTACHed to theuser's virtual machine. For the latter. the real device
must first be DETACHed from the system.
TUNING OF CP-67
To prevent paging overload. CP-67 allows only a subsetof the users to be eligible for dispatching at one time.
There are two queues for such users; Q1 and Q2. A user will
be dropped from a queue after using an allotted amount of

-

35 -

computer time (400 milliseconds for Q1, 5 seconds for Q2> orwhen CP-67 determines that the user is in wait state with noI/O outstanding for a high-speed device. A user enters Ql
whenever there is an I/Ointerrupt from the virtual
operator's console or a virtual 270x line. If a user uses
his allocated time in Ql, he is dropped from Ql andscheduled for Q2.
All Ql users areserviced in around-robin fashion before Q2 users.
Q2 users are serviced
according to their priority and operating characteristics. A
user's priority is defined in the CP directory and can be
examined by 'QUERY PRIORITY' once the user has logged in.
The priority of a logged in user can be changed by 'SETPRIORITY userid nn'. It is recommended that all users ofsimilar characteristics <i.e., running CMS) have the same orsimilar priority.
Only certain users Ci.e. high priority
processing users or users not requiring average service>
should have their priorities set higher or lower (smaller orlarger number> respectively.
The number of concurrent Ql users is limited to a
maximum fixed number. In general we have found the maximum
to be greater than any number actually achieved.
The number of concurrent Q2 users is limited by thepaging activity of the system. A 'paging cost' value iscalculated for each user, which is proportional to thepaging activity caused by that user divided by the Q2(paging activity control) value. A Q2 user is allowed toenter the queue if his 'paging cost' value plus the sum of
all 'paging cost' values for users currently in both Ql andQ2 is less than a system maximum. The Q2 value has adefault of 14 and can be interrogated and changed from aclass A ID via the 'QUERY Q2' and 'SET Q2' commands. A
decrease or
increase in thevalue of Q2
causes acorresponding decrease or increase in the paging activity ofthe system. The maximum range for the Q2 value is from 5 to25~ the recommended range is from 8 to 16.
The paging algorithm is tied to this dispatchingsystem. Whenever a page of memory is required, PAGTRANS
selects a non-referenced page. The intent of this queue
structure is to set a limit on the number of tasks that cancompete .for computer resources <memory and cpu), and tosegregate short execution tasks (for example, edit requests)
from
long
execution
tasks
Cfor
example,FORTRAN
compilation). By so segregating the tasks, limiting thenumber of long execution tasks, and minimizing paging
between runnable users, excessive paging can be avoided.
The queue sizes are automatically adjusted at system
IPL time based upon real core size. The queue values for

-

36 -

various core capacities are
256K 512K 768K 1024K
Q1
3
6
9
12
Q2 = 14 for all sizes

I
I
I
I
I

1280K
15

1536K
18

1792K
21

2048K
24

Note that the Q1 value is the maximum number of users in Q1
at any given time, while the Q2 value is a paging activity
tuning value. The number of users in Q2 at any given time
is computed dynamically and thus varies as a function ofsystem load.
The operator has a console function to change the amount ofsystem paging activity by altering the Q2 value as describedabove.

-

37 -OBTAINING CP-67 DUMPS -- VDUMP, FDUMP, EDITDUMP
Note: The VDUMP EXEC procedure invokes the FDUMP and
EDITDUMP modules that produce formatted CP-67 abend dumps
from the disk dump for the user specified to receive thedump (SYSDUMP= in the SYSGEN macro).
The VDUMP program runs under
the control of theCambridge Monitor System.
It is used to retrieve CP-67
dumps from disk after an ABEND in the CP supervisor. When asystem crash occurs, a spool file is created for the virtual
machine whose USERID is specified in the SYSGEN macro of
RIOxxx as the SYSDUMP parameter. The spool file then may be
print_ed as a CP-67 system dump by issuing the CMS command
VDUMP to the designated virtual machine (see section on
AUTODUMP and RE-IPL).
In order to create the CMS comnand called VDUMP on theappropriate virtual machine, this procedure may be followed:a..

Read the punched card deck for VDUMP EXEC, FDUMP TEXT,
and EDITDUMP TEXT into the appropriate virtual machine(attach a USERID card to the front of the deck>.

b.

IPL CMSc.

of fline read *d ..

load FDUMPe.

genmod FDUMP

f.

load EDITDUMPg .•genmod EDITDUMPThe virtual machine which has access to the system dump
created by the autodump feature must have the standard CMS
virtual device addresses.
In addition, this machine must
contain the following directory entry for a special virtual
device which reads the spooled file for the dump:
UNIT OFl, RPRT
To print a dump, type the CMS command VDUMP.
will respond with:

The system

WHEN PROMPTED REPLY YES TO PRINT DUMP, NO TO IGNORE AND ERASE
CAUSE OF SYSTEM DUMP:'cause' AT LOCATION xxxxxx REPLY YES OR NO

-

38 -

where cause is SVC
UNKNOWN CAUSE.

o,PROGRAMCHECK, MACHINE

CHECK

or

The following error messages may be encountered:
I/O ERROR READING WIDE CARD
A permanent I/O error on the CP-67 spooling fileencountered.

has been

FIRST WIDE CARD NOT LOW CORE RECORD
The first spool file record did not correspond to the format
expected.
READER EMPI'Y
No spool file exists in the •spool file

reader" at address

OFl.
I/O ERROR WRITING TO DISK. TRY AGAIN.
A permanent error was encountered in writing the dump to the
CMS disk.
When the dump is finished, the message END OF
printed at the terminal and control returns to CMS.

DUMP isThe VDUMP printed output is preceded by agiving the date and time of system crashheader page

CP-67 SYSTEM ABEND

cause AT LOC xxx

DATE mm dd yy

TIME hh mm ss

The following are printed in the edited part of the dump:- The general purpose registers, the control registers,
the CSW and CAW- The interrupt code, old and new PSW's- General register analysis, the contents of all 16
general purpose registers followed by the name and thedisplacement into the routine if the register contains
an address- A listing of CP-67 nucleus routines
points from CPSYM

and their entry

An edited display of the multiplexor real device
control blocks. The address, name of the block and its
contents are printed.
- An edited

display of the real channel, control unit
and device blocks, indented to indicate attachment.
Should an IOTASK have been active at the time of thesystem dump, i t is printed after the block to which it
was pointing.

- 39 -

- Control block associated with each virtual machine.
The address and contents of the UTABLE, the MVDEBLOK
and the virtual channel, control unit and device blocks
attached to the virtual machine are printed.
If the default (CP) is in effect for the SET DUMP
command, or if CP is specified as an option, the following
is printed in the dump: general-purpose registers 0-15,
control registers 0-15, and all of CP nucleus and freestorage.
If ALL is specified as an option, the dump
includes all of real core.

CP-67 EXEC PROCEDURES
The following CMS EXEC procedures are distributed with
the CP-67 system.
These procedures should be used togenerate and maintain the system.
CPASMGEN
CPASMGEN &1
This EXEC procedure is the one used to completely assemble
the CP-67 system producing a printed listing and a LISTING
tape. An auxiliary EXEC procedure with an ordered list of
all SYSIN is ne~essary
for complete generation.
For
instance, if CPLIST EXEC consists of the following:
&1 &2
&l &2
&1 &2
etc.

ACCTONACNTOFFACNTIME

then the following
in CPLIST EXEC:

CMS procedure assembles all

the modules

CPLIST EXEC CPASMGEN
CPGEN
CPGEN &l &2
CPGEN is used to punch a self-loading
utilities, and CP loaders.
&1 = 0001 010 I 030 I 040 I OOE I OOF- 40 -

CP nucleus,

the CP

Select
the correct
relocating
loader fortheinstallation, where the three characters indicate thesystem's printer address.
&2 = The name of the installation's
deck, for example, RIOCSC.

real I/O configuration

CPLISTCPLIST &1
This EXEC procedure prints one or all files from a CP-67
LISTING tape generated by the CPASMGEN EXEC procedure. The
first file on the listing tape must be a CPLIST EXEC file.
The CPLIST EXEC file is merely a sequential list of thenames of the LISTINGS that follow. For example, see CPLIST
EXEC. If &l is ALL then all files are printed, otherwise
the tape is searched for the desired file (for example,
DISPATCH) and that file (DISPATCH LISTING) is printed.
CPMACADD
CPMACADD &l &2
CPMACADD adds file &2 (either ASP360 or COPY) to MACLIB
named &1. The MACLIB must already exist and the ASP360 or
COPY file should be updated before adding the file.
CPMACGENCPMACGEN &l
CPMACGEN creates a MACLIB, named &1 MACLIB, from all COPY
and ASP360 files on the P-disk. The COPY and ASP360 files
should be updated using CPUPMAC before using this command.
CPMACREP
CPMACREP &1 &2
CPMACREP replaces the file &2 (COPY or ASP360) in the MACLIB
named &l. The MACLIB must already exist and the ASP360 or
COPY file should be updated before replacement.
Note.
The ASP360 file may contain more than one MACRO
definition.
If one macro is changed the entire file
(ASP360) must be added or replaced, not the macro name.
CPPI'F
CPPTF EXEC is used for CP-67 maintenance.

For a description

-

qi -

of CPPI'F EXEC. see "CP-67 Maintenance Procedure."
CPPUNCHCPPUNCH &1 &2Thes EXEC procedure is used by the CPSYS EXEC function in
the CPGEN procedure.
Its function is to select either the.&1 TEXT file if it exists or the &1 TEXT file. If neither
exists. an error message is printed.
Note: CPPUNCH. CPSYS. and CPTGEN
to &l TEXT.

use ,. &1 TEXT in preference

CPSYS
CPSYS
This EXEC procedure is used by the CPGEN EXEC function to
produce the CP-67 load deck. It contains control statements
and an ordered list of the nucleus components.
CPI'GEN
CPTGEN &1 &2
This EXEC procedure is used only when running under CP-67.
since it uses the XFER function. Its purpose is to create
an IPL'able tape for CP-67 disk loading. The &l is the nameof the desired loader for the printer (for example. RELDROOEor RELDR030).
The &2 is the name of realio configuration
module (for example. RIOCSC). This EXEC procedure uses the
CPSYS EXEC procedure to produce a load deck. A tape must be
attached as 181 and a file called TAPE LOAD is read onto theuser's P-disk.
The reader is PURGED for this operation.
The EXEC procedure then writes the TAPE LOAD file on tape.
CPUPASM
CPUPASM &l &2
CPUPASM is used to update a SYSIN file with an UPDATE file.
if it exists. and to assemble the updated file or theoriginal if no UPDATE file exists.
&1 is the name of the
SYSIN file to be processed.
&2 can be NODECK if no TEXT
file is to be produced. The original SYSIN and UPDATE files
remain. The TEXT file created is for the updated version
and is named &1 TEXT if no UPDATE file is applied, or .&1
TEXT if an UPDATE was applied leaving the original &1 TEXT.
No LISTING file is produced •... 42 -CPUPMAC
CPUPMAC &1
CPUPMAC updates a &1 MASTER file if it exists, and produces
a &1 COPY or a &1 ASP360 file. If a &1 MASTER file does notexist, CPUPMAC updates an &1 COPY or &1 ASP360 file with &1
UPDATE, saving the old file as i l MASTER and creating the
updated file as &1 COPY or &1 ASP360. There must be an &1
UPDATE file on the users disk, as well as a &1 COPY or &1
ASP360 file ..
Note.. This command must be used on all ASP360 or COPY files
which have updates, before using CPMACGEN.
Hint. Instead of regenerating CPMACS MACLIB every time an
ASP360 or COPY module is changed, it is more convenient tocreate a new MACLIB called MACUP MACLIB.
The assemble
procedures automatically access
MACUP before accessing
CPMACS.
LDRG
LDRG
This EXEC procedure punches the LOADER and TEXT decks
required to generate a LOADER.
The six files form an
IPLable program that will produce an IPLable LOADER. The
installation may choose to make modifications to the RELDRSYSIN for certain reasons.
The assembled module (RELDRTEXT) is then used by the IDRG EXEC to produce a new LOADER.
VDU MP
VD UMP
This EXEC procedure invokes the FDUMP and EDITDUMP modules
that produce formatted CP-67 abend dumps from the disk dump
for the user specified to receive the dump CSYSDUMP= in
SYSGEN macro).

-

43 -

CP-67 DECK FORMATS
This section describes the format of the CP load deckand theutilities. The nameof each deckand its
serialization in columns 73-76 are specified.
CP-67 SYSTEM
The following text

files are contained in

the CP loaddeck:
ModuleserialRelocating Loader (RELDRxxx)
SLC
000080loader control card--with PSA
MA~A
ACCTONACON
ACNTOFFACOF
ACNTIMEACNT
CCWTRANSCCWCFSCOMCCOM
CFSDBGCDBG
CFS IPL
CIPL
CFS MAINMAIN
CFSPRVCPRVCFSQRYCQRY
CFSSETCSET
CFSSPLCSPLCFSTACHTACHCHKCUACTCKCUCONSINTCINT
CO NV RTCVTCPCORECPC
CPFILECPF
CPS TACK
CPK
CMYM
CPSM
DEDICATEOEDDIAGDSK
DGIO
DIAL
DIA
DISPATCHDISPDSKDUMPDSKDEXTEND
XTND
FREE
FREE
IOI NTIOIIOERROR
IERR
LINK
LINK
LOGON
LOG
LOG FILESLGFL
MRIOEXECMRIOMVIOEXEC
MVIO
PACK
PACK
PAGTR
PGTR
PAGTRANSPAGEPAGEGETPGET- 44 -

PRIVLGEDPROGINTQUEVIORDCONSRD SCANREC FREE
RES INTRIOxxxSCANUNITSCHEDULESTCONSIOSYSDESCRTMPSPACE
TRACERUNSTIO
UNI' RANSUSERLKP
US EROFFVIOEXEC
VSERCH
WR.TCONSICS CPEND
SLC 020000
IPL
SLC 020800
CPLOCS CPLC
SLC 021000
SYSTEM
SLC 022000
CHKPT
SLC 023000
CPI NIT
SLC 025000
SAVECPLDT SAVENUC

PRIV
PROG
QUEV
RDCN
RDS
REC
RST
RIO
SUN
SCBD
SCN
SDCR
TMP
TRAC
UNS
UNTR
ULKP
USE
VIOX

vss
WCN
loader control card--with IPL TEXT
loader control card--with IPL TEXT
IPL
loader control card--with CPLOCS TEXT
loader control card--with SYSTEM TEXT
SYS
loader control card--with CBKPT TEXT
CHKP
loader control card--with CPINIT TEXT
CPI
loader control card--with SAVECP TEXT
SCP
loader control card

CP UTILITIESThe following files are the CP utilities:

,fI!
~-

ModuleSerialBUZZARD
DIRECT
FORMATSAVESYSVDU MP
FD UMPEDITDUMP
MINIDASD
CPDMPRSTSAVEOS
CPI PL

BUZ
DIR
FOR
SSYS
VDMP
FDMP
EDMP
MDSD
CPDM

svos
CIPL

-

45 -

CP-67 MAINTENANCE PROCEDURE
When corrections have to be made to a CP...67 module, a
PTF is made available to the installation through the normal
channels. The PTF is in a form suitable for a CMS OFFLINEREAD or TAPE LOAD function depending upon the distribution
medium. A special EXEC procedure is distributed to be used
when applying Pl'F's. A description of the use and functionof this procedure is given below.
CPPTF EXECCPPTF i1 i2
where i1 is the name of the CP-67 module to receive the
PTF and i2 is the PTF number Cfor example, CPPTF
DISPATCH A32486CA). Having first loaded the Pl'F on to
the maintenance P-disk <using OFFLINE READ or TAPE
LOAD) the user then issues all necessary CPPI'F EXEC
procedures to effect the change. One PTF may involve
changes to several modules. For instance, PTF number
A32486CA may create <through loading on to the P-diskl
the following files:
DISPATCH
PAGTRANSUNSTIO

A32486CA
A32486CA
A32486CA

The user must then issue the following CMS commands:
CPPTF
CPPI'FCPPTFDISPATCH
PAGTRANSUNSTIO

A32486CA
A32486CA
A32486CA

The function of the CPP'l'F is as follows:
The PTF file (for example, DISPATCH A32486CA) isapplied to the corresponding SYSIN file <that is,
DISPATCH SYSIN) , using the CMS UPDATE program.. The
Pl'F creates a new SYSIN file replacing the original.
If the installation wishes to preserve the original
SYSIN file, it should be saved beforehand or copied
and given a new name. Once the new SYSIN has beencreated, it should remain on
the disk <or beavailable) since further PTF's that may be applied tothe module may require that a previous PTF be applied
first.
The CPUPASM EXEC procedure is then invoked toassemble the new SYSIN file. If the installation has
its own UPDATE file, CPUPASM applies i t to the now
modified SYSIN.
The installation should check thatany UPDATE file interfaces correctly to the SYSIN
file once PTF's have been applied. The CPPTF EXEC
procedure finally punches the i1 TEXT file, prints acompletion message, and exits.

- 46 -

CP-67 TRACE FACILITIESThe SET TRACE console function initiates and terminates
thefollowing
tracingfunctions:userinterrupts,
instructions including interrupts and successful branches,
I/O operations issued to a selector or dedicated device, andvirtual and real ccw•s involved in a selector or dedicateddevice I/O operation. Output can be directed to either thevirtual console or printer, or both.. Tracing of successful
branches and/or all
instructions involves considerable
overhead and should, therefore, be used wisely, especiallywhen output only to the virtual printer.
(Note: The TRACE
options BR (to trace all successful branches> and ALL <totrace all instructions) can be issued only by a class A or B
user.) The virtual printer will enter console function mode
after any output message directed to it; it is necessary to
issue a 'begin' to continue execution. When tracing on thevirtual printer, the printer must be closed Ci.e., 'close
OOe') to get output after turning trace off. Note: The
TRACE(6) option must be chosen at system generation time inorder to issue SET TRACE.

I
I
I
I
I
I
I
I

1
I

SET ADSTOP enables the user to specify a virtual
instruction address at which execution is to be stopped.
Only
an instruction
execution addressstop canbedetected--not a storage reference. The user is placed inconsole function mode; a 'begin' will resume execution fromthe address stop location.
The address stop function isremoved by a) reaching the address stop location, b) 'ipl'
or 'reset' of the virtual machine, or c) the set adstop off
command. Note: the user must have the TRACE(6) option at
system generation time in order to issue SET ADSTOP.
See the CP-67/CMS User's Guide
Guide for further information.

and CP-67

Operator's- 47 -

SECTION 2: INSTALLING CMSDUMP/RESTORE UTILITY
To create a CMS System disk, place the distribution
tape on a tape drive, address ocuu. Clear core and IPL thetape by pressing the LOAD button.
When the wait lightremains on, and the system and load lights go off, hit
REQUEST on the online console.
DUMP/RESTORE is given
control.
CMS may be restored under CP-67, if CP already exists.
Merely, attach the CMS System Disk tape to a virtual machine
and issue IPL cuu. Produce an ATTENTION interrupt..
The console address is dynamically set. If replies areincorrect while the DUMP/RESTORE
is executing, DMPRST
reinitializes itself and repeats Question 1.
If an I/O
error is sensed on the disk or tape, it tries to rectify theerror condition.
If successful, it continues. If not, it
prints out a message and terminates,.
Termination, either after a successful operation
because of an error, places the CPU in the wait state.

or

Ql:

TASK? ("DUMP" , "REST"):
DUMP--disk to tape
RESTORE--tape to disk

Q2:

DEVICE TYPE? ("2311" , "2314"):
specify the disk device type

Q3:

TAPE ADDRESS? c•ocuu•):
self-explanatory. Must enter a four digit
hexadecimal reply (for example, 0181,
0275)

Q4:

DISK ADDRESS? C"OCUU"):
self-explanatory. The reply must be four
hexadecimal digits (for example, 0191,0290).

Q5:

REWIND TAPE? ("YES" , "NO"):
This applies to before and after the operation.
Obviously, since the tape after IPL is positioned atits second file, the answer must be NO.

- 48 -Q6:

NUMBER OF CYLINDERS? ("ONNN"):
self-explanatory.
The reply must be four decimal
digits (for example, 0203, 0100). For restoring the
distribution tape, specify 203 cylinders for a 2311
or 54 cylinders on a 2314.

Q7:

STARTING CYLINDER? ("ONNN"):
self-explanatory.
(For
the"0000".)

f

,·~

QB:

systemdisk,

reply:BEGINNING OF TAPE? ("YES", "NO"):The answer determines if a tape mark is to be writtenahead of the file. If YES, a tape mark is written: if
NO, the EOF-at the end of the previous file serves as
the tape mark for the beginning of this file.
<Whenrestoring the distribution tape, Q8 is not asked.>

The DUMP/RESTORE operation begins
after the last
question is answered. If either device is not ready, theprogram waits for its ready state. When restoring, the diskneed not be formatted or DASDI'ed. DMPRST formats the disk
as it is being restored.
Upon encountering an EOF, satisfying the amount ofcylinders specified in Q6, or executing a SEEK beyond thedisk limits, the operation terminates with the message'DUMP/RESTORE MOVED nnn CYLINDERSTHERE WERE nnn RECOVERABLE TAPE ERRORS. I------------------------------------~~-------

I
I
I
I
f

I
I
I
I
I

f
I
I
I

TASK? ("DUMP","REST"): restore
DEVICE TYPE? ("2311","2314"): 2314
TAPE ADDRESS? ("OCUU"): 0181
DISK ADDRESS? ("OCUU"): 0190
REWIND TAPE? ("YES","NO"): no
NUMBER OF CYLINDERS? ("0NNN8 ) : 0054
STARTING CYLINDER? ("ONNN"): 0000
BEGINNING OF TAPE? C"YES","No•>: no
DUMP/RESTORE MOVED 054 CYLINDERS.
THERE WERE 001 RECOVERABLE TAPE ERRORS.

f

I
I
I
I
I

-------------------------~----~-~------------

Figure 1. Restore procedure for CMS distribution tape

-

49 -

CMS SYSTEM DISK
Once restored,
following appearance:

the

CMS

Systemdisk

assumestheBlock Information
0-2
IPL pointers, ccw•s, etc.
3

label

4

Master File Directory=

CMS1905-7979
1.

2.
3.
4.

5.

Nucleus Text decks in one file called NUCLEUS 3 .• 1, in
which each individual text deck is preceded by an
OFFLINE READ filename TEXT card. The nucleus text decks
are also present individually.
Disk command MODULE files.
Disk Command TEXT files.
EXEC Procedures
MACLIB and TXTLIB files

7980-8100
IPL'able Nucleus {0-12000x and loader tables>.
The nucleus routine, NOCON, contains a device table. It
has .been initialized as follows:
CONSOLE CCONl)
CREADR CRDRl)
PRINTER CPRN1)CPUNCH CPCH1)
S-Disk CDSK1)
P-Disk CDSK2)
T-Disk CDSK3)
A-Disk {DSK4)
B-Disk CDSK5)
C-Disk CDSK6)
TAP1 (TAP1)
TAP2 CTAP2)
CRT1 CCRT1)- 50 -

=·
=
=
=
=
=
=
=
=
=
.=
=
=

0009

oooc

OOOE
OOOD
0190
0191
0192
0000
0000
019C
0180
0181
0106

These values are the standard CMS machine device addresses.
If it is necessary to redefine these device addresses whenrunning CMS on the physicalmachine, refer to "BareMachine-CMS".
The second file on the Source Disk Tape contains analphabetized TAPE DUMP of the 'standard' CMS System Disk.
This is included so that existing users may selectively
acquire TEXT and MODULES by using their current system.

BARE MACHINE-CMS

Having RESTORE'd the CMS system disk onto either a 2311
or a 2314 disk pack, CMS may now be executed. Set theaddress of the System pack into the LOAD unit dials anddepress the LOAD button. When the CPU enters the wait state,
hit the REQUEST button on the operator's console.
The
INITB67 routine is given control. Note that in looking forthe 1052 online console on the real machine, CMS looks fordevice 009 or 01F before waiting on first interrupt denoting
the console; on the virtual machine CMS only looks fordevice 009 as the console and does not wait for aninterrupt.
Since the physical device addresses of your particularinstallation might not be identical to CMS standard virtual
device addresses, CMS allows redefinition of the devicetable, so that bare machine operation of CMS is possible.
Q1:
C1:
Q3:

REDEFINE DEVICE ADDRESSES? C"YES","NO") • • •NO--CMS assumes the standard addresses
YES--address modification is madeALL DEVICEADDRESSES MUST BE ENTEREDAS
HEXADECIMAL DIGITS: "Ocuu".
OPERATOR'S TERMINAL • • •After redefining
addresses,
identification message:
CMS •• VERSION n

CMS

LEVEL

types

the

4

followingm

where n is the version and m the modification number.
CMS SOURCE DISK

- 51 -

On the CMS Source Disk tape, which is one of the three
Basic Program Material tapes, is a TAPE DUMP of the file
SOURCE EXEC which is an alphabetized log of the source files
distributed. After restoring the CMS System disk, issue TAPE
LOAD to obtain the SOURCE.1 EXEC file; a second TAPE LOAD
command will load the Source files CSYSIN files for all of
CMS, excluding OS/360 language processors and libraries,
plus EXEC files). However, TAPE LOAD is a CMS command.
Therefore, the loading must be executed under CMS control.
Once CMS is operational, obtain a P-disk of 203 2311
cylinders or 54 2314 cylinders, format the disk CFORMAT P
ALL), and load the tape (TAPE LOAD). The tape must be
mounted on symbolic device TAP2.

I
I
I
I
I
I

Files 3 - 9 on the Basic Source Tape contain analphabetized TAPE DUMP of all OS language processor object
decks which are contained in CMS Version 3 Level 1:
ASSEMBLER-F, Rel.20, Component
IEU; FORTRAN-G, Rel.20·,
Component IEY; FORTRAN-G, Rel.20, Component IHC; PL/I,
Rel.20, Component IEM; PL/I, Rel.20, Component IHE.

ALTERING THE CMS SYSTEM DISKNUCLEUS
After restoring the CMS System Disk, IPL 190. Use the
CMS System Disk as a P-Disk by issuing LOGIN 190 P.
The LOADER deck supplied for Nucleus Generation is used
to IPL the nucleus under CP (that is, it recognizes thestandard CMS virtual device addresses, PRINl'ER = X' OOE' >. If
the nucleus is
to be IPL'ed on
incompatible device
addresses, the loader deck Cfirst deck> must be replacedwith the appropriately addressed loader, located on the CP
distribution tape,.
several loaders for different printeraddresses are available from the CP distribution tape.
The CMS nucleus may be created by using the two EXEC
procedures on the system disk--PUNCH and NUCLEUS. Issue thecommand NUCLEUS EXEC PUNCH userid/OFF. Each component text
deck of the nucleus is punched.
If a userid was specified,the deck is XFER'ed to that userid. If OFF was specified,
the physical card deck is punched.

- 52 -

IPL'ABLE SYSTEM DISKTo rewrite the IPL'able nucleus onto the CMS Systemdisk, place the nucleus in the card reader and press theLOAD button. Under CP, read the nucleus deck into the CP
card reader with the appropriate ID card, or use the EXEC
procedure NUCLEUS and XFER the deck into the card reader,then type the CP command IPL OOC.
The nucleus is loaded
into core, linkages and V-cons are resolved, and a load map
is produced.
An IPL'able
core-image copy of the nucleus(locations 0-12000) may now be written onto disk.
After the IPL sequence has completed, the INITIPL
routine is given control. It expects the standard console<terminal) address (009) or COlF) on the real machine. If
it is other than 009 or 01F, the wait state is entered, and
INITIPL accepts an ATTENTION interrupt in order to define
theconsole address.
The
following informationisrequested:"REWRITE NUCLEUS? CYES,NO)":YES--a new IPL'able copy of the CMS nucleus is to be
written onto disk
NO --no writing takes place. control returns to !NIT(CMS initialization routine>"SYSTEM DISK? COCUU,SYS)":The S-Disk slot in the NUCON Device Table must
contain the address of the device to be used as the
CMS System Disk. If the reply is "OCUU", the S-disk
address will be set to "OCUU". If "SYS" is entered,the default value CX'190') will be used.
"IPL DEVICE? COCUU,SYS)":
A core-image copy is written onto device ocuu Cif
specified) or onto SYS, which is the System disk
address specified in the nucleus device table.
"STARTING CYLINDER? CONNN,SYS)":
The
core-imagecopy
isplacedatcylinder
ONNN--decima1 representation--or on the SYS cylinder.
The SYS cylinder is
cc
hh
rr
block
2314:
53
04
00
7980
2311:
199
05
7980
00

(
-

53 -

"VERSION IDENTIFICATION (30 characters)":
Thirty bytes of information, including blanks, areused as the version title and are printed out when
IPL'ing the CMS nucleus.
•INSTALLATION HEADING ••• (40 CHARACTERS)":
Forty bytes of information, including blanks, areused as an installation heading at the top of printeroutput.
An IPL'able copy of the CMS nucleus <locations 0-12000) is
written onto the specified disk. A numerically ordered load
map showing all deck names and reference points for the
nucleus is written to the system printer device. There arethree unresolved symbols at the end of the load map, a~
follows:
BATCH, SYSCTL--external
Nucleus.

references for

the Batch

CN'l'RL--unresolved simulation routine.
SAVING CMS UNDER CP
In place of IPL'ing a device each time CMS is to be
invoked, CP allows the system programmer to SAVE a copy of
the CMS nucleus, so that a user may invoke CMS by issuing
the CP command IPL CMS.
To save CMS, IPL the
CMS System disk on the baremachine <that is, not under CP) •ca use an ATTENTION
interrupt on the console.
The following is typed:
Ql:

REDEFINE DEVICE ADDRESSES? ("YES","NO•) ••• <reply NO).
This question is asked when running CMS on the baremachine to allow the user to dynamically change thestandard device addresses.

Q2:

WILL THE CP-SAVE FUNCTION("YES", "NO")... (reply YES).

C1:ALL DEVICE ADDRESSES MOSTDIGITS: •ocuu•.

-

54--

FOR

CMS

BE

EXECUTED?

BE ENTERED AS 4 HEXADECIMAL

Q3:

ENl'ER THE 8 REAL 8 address of the CMS SYSTEM DISK •••reply •ocuu•, where cuu is the real online address of
the CMS system disk--as opposed to virtual address
190.

Q4:

SET THE 8 ADDRESS COMPARE• SWITCH FOR LOC X'88'; REPLY•GQ• After setting the instruction counter switches toreflect hexadecimal location '88', and setting the•address compare• key •on•, reply •Go".

C2:

WHEN "MANUAL" STATE IS ENTERED, IPLUTILITY DECK FROM THE CARD READER

THE CP "SAVESYS"

When the CPU stops at location X'88', place the CP SAVESYS
utility deck with loader and control card into the real card
reader, reset the load address on the CPU console, and IPL
the card reader. The message NORMAL TERMINATION OF SAVEFUNCTION is typed.

CMS may also be saved on a virtual machine. However, it isadvised that only a system programmer well-versed in theconcepts of CP/CMS attempt the following:
Logon as any virtual user.
While still in the CP
environment issue these two commands:
1. DE'TACH OFFFirst the software timer device must be
detached from the virtual machine because CMS
must 'think' that it is executing on the realmachine.
2. LINK sysuser cuu 230 w
Ca password probably is also necessary> •Write status must be acquired for the CP
system disk (cuu) which will contain the'saved' CMS nucleus,. It must be virtuallyattached at address X'230', which matches theaddress specified in the data card for the
SAVESYS program.
3. Verify that an IPLable copy of the CP SAVESYS
program is in the virtual card reader. A copyof that program resides on the CMS S-Disk as
SAVECMS LOAD Pl and can be obtained when the
S-Disk is accessed as a P-Disk.
IPL 190 This loads into core the CMS nucleus.
machine will enter wait state.

The

Produce an attention interrupt to define the console- 55 -

address.
Answer questions 1
and 2 as above.
Question 3 must be answered with the virtual addressof the CMS system disk, 190.
Now the tricky part:for question 4, reply as·follows-(NOTE: The following procedure c.an be bypassed
by using CP' s SET ADSTOP xxxxx command, where xxxxx
equals 88, if the 'TRACE option is selected for that
virtual machine.)
GO (type a blank,thenenvironment)

hit ATTN,

entering CP

I
I
I
I
I
I

When CP environment is entered, issue the following
commands:
1.
d 88
88 = 070058CO
2. ST 88 47F00088
3.
begin

I
I
I
I
I

CMS will type C2 as above.
Note, no CPU panel
manipulation isnecessary or forthat matter
possible.
The hard address stop is achieved bycausing a single instruction loop at location X'' 88' •Wait about 10 real seconds.
Hit ATTN and re-enter CP environment.
1.
d PSW
PSW = xx xx xxxx xx000088(if the PSW is another value, enter begin and wait
another 10 seconds before hitting ATTN)
2. ST 88 070058CO
3. IPLSAVE OOC
NORMAL TERMINATION OF SAVE FUNCTION
Logout of CP and login again to reacquire the timer
device, OFF, and IPL CMS.
Note the form of the
IPLSAVE console function issued in step 3. IPLSAVE
preserves virtual
memory; whereas,
IPL clears
virtual memory prior to executing.

CMS EXEC PROCEDURES
The following EXEC procedures canand maintaining of the CMS system.
ASMGEND, FORGEND, PLIGENDI

ASMGEND/FORGEND/PLIG'END

-

56 -

be used.inthe buildingUsed to create overlay structures for the OS language
processors, using the object decks and producing modules.
These -GENO EXEC procedures are used only when creating theoverlay module structure.
Do not try to use them when the
text decks of the processor components are not present. For
re-genmoding the interface modules, use CMSGEND EXEC. No
arguments are passed to these -GENO procedures. ASMGEND,FORGEND, and PLIGEND reside on the source disk.
CMSGENDCMSGEND '1
Creates any or all CMS disk-resident modules.
The name ofthe disk module to be created must be passed to CMSGEND Cforexample, to create the TAPE module,
issue the command
CMSGEND TAPE). CMSGEND resides on the CMS system disk andcan only be accessed when the S-disk is used as the P-disk.
An example of CMSGEND EXEC follows:
CMSGEND &l &2
where 61 = module name C= START card name)&2 = TEXT name C if &2 is present)
If the START card name and TEXT name are the same, thecommand is CMSGEND &l 00. If the START card name and TEXT
deck name are different, the command line is:
CMSGEND (START name)(TEXT name)Example:CMSGEND COMBINE 00
will produce a COMBINE module with a mode of 'P2'.
CMSPTFCMSPTF &l &2
Will permanently apply a 'PTF' to a source deck, print a
LISTING to the offline prihter, and punch off a TEXT deck.
The command line is: CMSPTF &1 '2 , where &!~filename of
SYSIN and &2=filetype Of PTF deck, i.e. 'AxxxxyCA'.
CMSSORT
CMSSORT 'fn' 'ft' P

(
-

57 -

will produce a sorted file of the P~disk.
Will list and sort in alphabetical order into a file thenames of the files on the disk for which the MODE letter was
given. The file will be printed on the offline printer.
CMSUPASM
CMSUPASM &1 &2
where &1 = SYSIN name, and &2 = UPDATE name.
CMSUPASM is used to update a source deck and get a copy ofthe new object deck in a one-step procedure. This procedure
will take the original source deck and the update deck andwill create th-e new • SOURCE deck, assemble it producing a.TEXT deck, print a listing of the update changes, print anassembly listing on the offline printer, off line punch the.TEXT deck, and erase the .SOURCE and .TEXT decks.
The options that can be used with CMSUPASM are: SP, NP, NPR,
NDG, BLIP, and ORG, where SP = the .TEXT deck will be savedon the P-disk, NP = no offline punch of the .TEXT deck, NPR= no assembly listing on the off line printer,
NDG = noonline diagnostics, BLIP= use BLIP (BLIP character'?'>,ORG = alter .XXX TEXT to original text name. Consider thefollowing example of CMSUPASM EXEC:SOURCE DECK : TEST SYSINUPDATE DECK : TEST UPDATE
where the command is: CMSUPASM TEST SP, and the file results
are: TEST SYSIN (original source deck), TEST UPDATE (updatedeck), and .TEST TEXT (new updated object deck).
TEST
UPDLOG and the Assembly listing are printed on the offline
printer.
NUCLEUS/PUNCHNUCLEUS EXEC PUNCH (userid, OFF)
used to create a physical CMS nucleus deck by punching eachindividual TEXT deck. Issue the command: NUCLEUS EXEC PUNCH
userid, where userid is the identity of the virtual machine
to which the nucleus deck is XFER'd. PUNCH EXEC will firstsearch for an updated TEXT deck; i.e., when looking for
INTSVC TEXT, it will first search for .INTSVC TEXT, then
INTSVC TEXT. This will utilize a newly updated deck •.... 58 --MAINTAINING THE CMS SYSTEM DISKTo add or change commands in the nucleus
system disk, proceed as described below.

or on

the

CMS MAINTENANCE PROCEDURF.s'I'o update the CMS system
must be applied.

the procedure described below

When a PTF is received, the user should apply it to his
SYSIN deck.
The PTF is an update deck identified as"filename AxxxxyCA", where filename is the name of theroutine to which the update is to be applied and AxxxxyCA isthe filetype.
xxxx is the APAR number, and y is the APAR
code that the PTF corrects.
Example:VJ deck
Update
The command to
AxxxxyCA (seq8 inc P)

EDIT SYSINEDIT AxxxxyCA
issue

is

UPDATE

EDIT

SYSIN

EDIT

The "seq8" allows sequencing of up to eight digits.
The "inc" includes the sequence number of the update card
into the new updated sysin file. The P causes a newly
updated SYSIN file to be created.
The updated file created is EDIT SYSIN.
Note.
copy.

The original EDIT SYSIN

is replaced with the updated

CMSPTF EXEC :The updating process described above can be executedwith the aid of a CMS EXEC file called CMSPTF EXEC.
This EXEC procedure takes the original SOURCE deck and
the PTF deck and creates the new SOURCE deck, assembles it
producing a TEXT deck, prints an UPDATE LOG of the updatechanges, and an assembly LISTING onto the offline printer,and off line punches the TEXT deck. The new SYSIN and TEXT
decks remain on the user's read/write disk.
This enables theuser to update and get a

copy of the.... 59 -new object deck in a one-step procedure.
CMSPTF Arguments and Options :The format of the CMSPTF command is as follows:
CMSPTF filename filetype options
where filename is the name of the SYSIN
which the APAR is to be applied.
f iletype is the APAR identification

file toOPTIONS defined:
NP = No offline punch of the TEXT deck.
NPR = No assembly listing on the offline printer.
NDG = No diagnostic messages on the terminal.
BLIP= Use BLIP, (BLIP char. ' ? ')An example of CMSPTF EXEC follows:
SOURCE DECK : EDIT SYSINUPDATE DECK ; EDIT AxxxxyCA
Command:
CMSPTF EDIT AxxxxyCA
Results:
The status of the files is as follows:
EDIT SYSIN (updated source deck), EDIT AxxxxyCA(original PTF update deck), EDIT TEXT <new updated
object deck); EDIT UPDLOG,
and the Assembly
listing are printed on the offline printer.
CHANGING OR ADDING NUCLEUS RESIDENT COMMANDS
Assemble the source of the new or changed
obtain a loadable TEXT deck (object deck).

command to

If a new command, update and assemble the systemroutine FUNCTAB, making an entry into FUNCTAB for the newcommand.
If a new command, replace the old FUNCTAB text deck
within the nucleus deck with the newly assembled copy. Also

-

60

~

add the text deck of the new command to the nucleus.
If changing an existing command. replace thedeck with the newly assembled copy.

old TEXT

If using the NUCLEUS/PUNCH procedure of creating a CMS
nucleus. the newly updated TEXT decks need only be placedwith the remaining TEXT decks. They will automatically beincorporated into the nucleus when it is constructed.
Rewrite the CMS nucleus onto the system disk.
CHANGING DISK-RESIDENT COMMANDSAs above. obtain the object deck of the new command.
Using the system disk as a read/write
read the text deck of the new command.

P-disk. offline

The CMSGEND EXEC procedure may be used to generate any CMS
disk-resident command distributed with the system. Details
for generating each command can be determined by examining
the CMSGEND EXEC file.

MANAGEMENT OF TEXT FILES FOR LANGUAGE PROCESSORS
On the Source Disk tape are the TEXT decks of all theprocessors distributed with the system. The following files
are included in this tape. in the order indicated below andwith the specified disk space requirements for loading:
ASSEMBLERFORTRAN Compiler
FORTRAN Library
PLI Compiler
PLI Library

211
166
213
1999
709

CMS records
CMS records
CMS records
CMS records
CMS records

MODIFICATIONS TO PID TEXT DECKS FOR CMS
For Assembler. Release 20. all IEUF7*
represented by one IEUF7 TEXT deck, anddecks by one IEUF8 deck, as below:

TEXT decks are
all IEUF8* TEXT

(
-

61 -

CMS

Original PID TEXT decks

IEUF7 =

IEUF7IIEUF7EIEUF7DIEUF7XIEUF7NIEUF7VIEUF7GIEUF7C----- -- - - ----- - ---- ~

I
I
I
I
I
I
I
I
I
I

IEUF8 =

IEUF8IIEUFBCIEUF8MIEUF8AIEUF8PIEUFSDIEUF8SIEUFBVIEUF8LIEUF8NFor FORTRAN, Release 20, thenames changed:
PIO Released Namefollowing decks have had their

CMS Renamed Deck

IEYFORT
IEYROLIEYINT

IEYFORTO
IEYROL3IEYINT4

The CMS distributed IEYFORT TEXT deck contains the following
PID released text decks:
CMS Name -->IEYFORT =PID Name -->------IEYFORTO IEYFORTl IEYFORT2 IEYROL3 IEYINT4IEYFORT

IEYFORTl IEYFORT2 IEYROL

IEYINTFor PL/I Release 20, the following decks have had REP cards inserted:PIO Released Name
IEMAB

I
I
I

-

62 -

PurposeTo cause compiler to use
dictionary blocksize as
SYSUTl file blocksize.

IEMASTo provide an OS/360 savearea for the ~INCLUDE fllll.ction.

Code has been added to module IEMAD to get thelength of compiler modules for the DUMP option.

correct

C-DISK AS A READ-ONLY EXTENSION OF S-DISK
The use of an extra disk as a read-only extension of thestandard S-Disk is generally useful for one of several
reasons:1.

If the system customarily has a large number of users,
it can provide a more efficient utilization of system
resources to place some of the system disk programs andlibraries on one disk pack, and others on another pack.
If some of the programs and/or libraries currently on
the s-oisk are placed on another disk instead, this canbe accomplished.

2.

If a system disk gets very full from addition of new
programs, it may be advisable to put new added programson an extra disk instead of adding more cylinders to
the S-Disk.

3.

It may be that certain new or restricted programs areto be made available to a limited number of users. In
this case, such programs could be put on the extra
disk, which would only be in the directory of thosepermitted to use such programs.

CMS has the capability to provide such an extra disk as aread-only extension of the S-Disk. This extra disk is the
C-Disk, and has a default disk-address Cin the NUCON table)of 019C. Be sure to place the C-Disk as a read-only disk inthe virtual machine description in the CP directory, with
virtual address 19C, for all users who are to have the
C-Disk available to them.
If the C-Disk is attached and ready at CMS Initialization
time, while the version identification message is being
typed, CMS automatically logs in the P2 files from the
C-Disk, as a read-only extension of the S-Disk, in a manner
similar to the SYSGEN f llll.ction for obtaining the SSTAT tablefrom the S-Disk.
The C-Disk is then a read-only extension of the S-Disk,transparent to most CMS commands.
STAT c gives the
disk-statistics on the c-Disk Cas STAT S does the standard
S-Disk>, and LISTF filename filetype c lists the c-Diskfiles just as LISTF filename f iletype s does the standard- 63 -

s-oisk files.

CMS CONSIDERATIONSFORMATTING THE P-DISK
Once the CMS System disk is restored and all device
addresses are assured correct in matching either the baremachine configuration or the CP allocation directory, issue
an IPL to the System disk.
Initially, each user must issue as his first command
FORMAT P ALL. This command formats his P-Disk for CMS usage.
If the disk is not formatted, I/O errors occur whenaccessing the P-disk.
Note. All disks that are to be accessed by users mustbe formatted in the same manner as above.
CMS VERSION 3--VERSION 2 COMPATIBILITY
The disk formats for Version 2 and Version 3compatible;
however,the internal
coretablesincompatible between these two versions of CMS.

are
are

Do not use old commands from Version 2 Levels O and 1
which manipulate files with Version 3 <such as LOGIN, LISTF,OFFLINE, ERASE, TAPE, DISK, FORMAT, and START) as they do
not work.
If a previous version of CMS is to be examined, log it
in as a c-disk so that i t will be searched last and its
routines will not be used in place of the system routines.
OBTAINING A NUCLEUS LOAD MAP
A loadmap of the nucleus, giving the name and core
location of each nucleus routine, may be obtained by

IPL 190(CMS system disk)login on any formatted P-disk

-

64 -

MAPPRT C OFF<see other options for thiscommand in CP-67/CMS User's Guide>

The file CMS-NUC ALPHANUM Pl is created on the P-disk and isalso printed offline.
P-DISK CONSIDERATIONS FOR THE BARE MACHINE
When operating on the bare machine, the P-disk is usedfrom real cylinder 0. Therefore, if a user wishes to use
his own files on the bare machine, his files must be
physically located on real cylinder o.
The user must also be aware of his P-disk size when heis operating on the bare machine. CMS is not aware of theuser's virtual boundaries and assumes a full physical disk
pack; i t will allow the user to format all 203 cylinders ofthe disk pack.
COMMAND ABBREVIATIONSWhen a CMS command is issued from the terminal or froma routine, several tables are searched for the command name.
If no command is defined for the name, CMS assumes that acommand abbreviation was used. The nucleus-resident routine
ABBREV is then searched to verify and find the full-nameequivalent of the command.
command abbreviation is definedas the minimum number of characters necessary to recognize
the full command name.
If standard system abbreviations are
in CMS, the ABBREV TEXT deck should be
nucleus deck.

not to be allowed
removed from the

To change, add, or delete an abbreviation, the ABBREV
routine must be reassembled, altering the abbreviation table
as desired. The table is constructed using the macro ABRV
as follows:
ABRV name, number
where name is the full name of the command, and number isthe minimum number of characters which are accepted as anabbreviation.
'·
'(''
\

- 65 -

The macro must be usedabbreviation. For example:
ABRV

for

each

desiredOFFLINE, 1

signifies that the acceptable abbreviation for
OFFLINE is 0 (also, OF, OFF, OFFL, ••• ).
ABRVcommandthe command

ALTER, 2states that the abbreviation
ALTE, ALTER).

for ALTER

is AL<also, ALT,INSTALLATION OF THE CMS BATCH MONITOR
Using the CMS System disk as a P-disk, obtain a copy of
the Batch Monitor Nucleus, BATNUC 3.1, by issuing thecommand OFFLINE PUNCH BATNUC 3.1. A copy of the Batch
nucleus may also be placed in the virtual card reader of
USERA by issuing the command:
NUCLEUS EXEC PUNCH USERABATCH
Set up a disk area that is used only by the virtual
batch machine. This disk area, address cuu, contains the
IPL'able copy of Batch nucleus and need be only two-2314
cylinders, or four-2311 cylinders. Also, set up a P-disk,
191, for the Batch machine.
Write an IPL'able copy of the Batch nucleus onto disk
cuu in the same manner as the CMS nucleus is reloaded onto
the System disk.
After writing the Batch nucleus onto cuu, the message
READY is typed. The Batch Nucleus disk, cuu, must be IPL'ed
before executing any Batch Job Streams.
To run a CMS Batch job stream, first it is necessary to
IPL cuu. The Batch nucleus may also be SAVE'd by CP, using
the name BATCH. If the name BATCH is undesirable, adifferent name may be used by changing the CP routine
SYSTEM, which contains the names and descriptions of all
IPL'able named systems. Batch nucleus bas set a time limit
per job (five minutes> and an output limit per job (5000
pointerlines>.
These
limitsmay
be modifiedbyreassembling the routine BATJCB and placing the new copy
into the BATCH nucleus.

-

66 -

SAMPLE PROBLEM
A sample problem is distributed as File 3 on the Source
Disk tape. It exists in TAPE DUMP form.
To load the sample problem onto the P-disk, position
the tape after the second tape mark and load it from tape.
This is done by issuing
TAPE REWINDTAPE SKIP 2
TAPE LOAD
Then the program is ready to be compiled and executed.
The complete procedure for logging in, IPL'ing 190 for
CMS, FORMAT'ing the P-disk, loading the FORTRAN source deckon the P-disk, and then compiling and executing the sample
problem as shown in Figure 2. System responses are printed
inuppercase; user-enteredinformation
is typedinlowercase. Figure 3 contains a listing of the file SAMPLE

E'ORTRAN.

(- 67 -

login userl
ENTER PASSWORD:READY AT 15.30.22 ON 2/15/71
DEV 181 ATTACHED
ipl 190
CMS • • VERSION 3

LEVEL

0

format p all** "FORMAT P" WILL ERASE ALL YOUR P-DISK (191) FILES ****DO YOU WISH TO CONTINUE? ENTER "YES" OR "NO":yes
ENTER 6-BYTE IABEL (IF WANTED), OR NULL LINE CIF NOT):FORMATTING P-DISK (2314) •••PC191): 007 CYL
R; T=0.10/2.20 15.33.55
tape rewind
R; T=0.02/0.05 15.34.15
tape skip 2
R; T=0.20/0.57 15.35.00
tape load
LOADING:SAMPLE FORTRAN Pl LOADEDR; T=0.15/0.32 15.35.25
fortran sample
R; T=0.58/0.92 15.35.59$ sample
EXECUTION BEGINS. • •PLEASE TYPE IN THE NUMBER OF VALUES TO AVERAGE
03
FIRST NUMBER? (FORMAT is F10.4)
45.6
NEXT NUMBER?
56.7
NEXT NUMBER?
49.09
AVERAGE = 50.4633
PLEASE TYPE IN THE NUMBER OF VALUES TO AVERAGE
00*** TEST COMPLETE *** WELCOME TO CP-67/CMS!
R; T=0.36/1.06 15.37.15

Figure 2.

- 68 -

Terminal session with the sample problem

cc

SAMPLE PROBLEM FOR TESTING CP-67/CMS DISTRIBUTION

1PRINT 100
FORMAT ('PLEASE TYPE IN THE NUMBER OF VALUES TO AVERAGE')
READ 101, N
FORMAT CI2)
IF (N) 2,99,2
PRINT 105
FORMAT ('FIRST NUMBER? (FORMAT IS F10.4) ')READ 103, SUM
M=N-1
DO 3 I=l,M
PRINT 102
FORMAT ( 'NEXT NUMBER?' )READ 103, X
FORMAT (F10.4)
SUM= SUM + X
CONTINUE

100
101
2
105

102
103
3

y = N

104
99
106
\

AVG = SUM/Y
PRINT 104, AVG
FORMAT (15X, 'AVERAGE= ',F10.4)
GO TO 1PRINT 106
FORMAT ('*** TEST COMPLETE *** WELCOME TO CP-67/CMS ! ., )
STOP
END

Figure 3.

Listing of SAMPLE FORTRAN- 69 -

INDEX
Allocation ••••••• 19, 64
ASMGEND ••••••• 56
Batch monitor ••••••• 66
BUZZARD utility ••••••• 16.r 45
Changing disk resident commands(CMS) ••••••• 61
CMS source disk ••••••• 51, 59, 67
CMS system disk ••••••• 48-54, 2, 52, 66
CMSGEND ..... • ..... 5 7
CMSPTF ........ 57
CMSSORT ......... 57
CMSUPASM ••••••• 58
Command abbreviations ........ 65
CP load deck ........ 15, 44, 19, 29, 42
CP residence volume ••••••• 29, 19, 21
CPASMGEN ••••.••• 40
CPDMPRST ••••••• 1, 17
CPGEN ••••••• 15, 40, 16, 30, 42
CPIPL ••••.••• 16, 16
CPLIST ••••••• 41
CPMACADD ••••••• 11, 41
CPMACGEN ••• ~ .••• 41, 43
CPMACREP ••• ·•.••• 11, 41
CPPTF ••••.••• 41, 46
CPPUNCH •••.•••• 42
CPSYS ••••••• 42
CPTGEN ••••••• 42
CPUPASM••••••• 13, 14, 11-14, 42, 46
CPUPMAC ••••.••• 41, 43
Device address(es>, CMS ••••••• 2-3
DIAGNOSE ••••••• 23
DIRECT utility.•••.•••• 16, 21, 34, 45
Directory ••••••• 19, 1, 12, 12, 17, 50, 63
Directory creation ........ 12, 21
Dispatching ........ 46
DMPRST ••••••• 48
DMXDV ••••••• 7

DRCH ••••••• 6
DRCU ••••••• 6
DRDEV ••••••• 7
Drums ••••••• 1, 19
DUMP ••••••• 2, 48, 51, 67
DUMP/RESTORE ••••••• 48, 1
Duplex •••• ~ ... 4, 6, 8, 9
Exec procedures, CMS ••••••• 1, 50-52, 56-61
Exec procedures, CP-67 ••••••• 40, 46, 1, 3, 13
FORGEND ••••••• 56
FORMAT utility •••• ~ •• 16-17, 34, 45, 65, 68
Formatting P-disk ••••••• 17, 64
Formatting volumes ••••••• 17- 70 -

,r
('.'

"
~'

FORTRAN••••••• 36w 52w 61w 67•69
FREE/FRET ••••• ,•• 14
FUNCTAB ........ 60
GENO •••••.•• 56
IEYFORT ••••••• 62
IPLSAVE ••••••• 56
ISAM ••••••• 11. 13w 24
Label ••••••• 5-7, 19. 29. 32. 50
Language processor(s), •••••• 52. 57
LDRG ••••••• 43
Libraries ••••••• 63
Locked pages ••••••• 33
LOGIN ••••••• 3. 23w 64w 68
LOGIN (auto) •••••••
Machine configuration. defini ti.on •••.•••• 1, 4
Machine configuration. distributed,••••.••• 3 • 4 • 9
MACLIB ••••••• 3. llw 14w 41. 50
MACUP ••••••• 43w 11
Maintenance procedures. CMS ........ 59
Maintena nee procedures• CP-6 7 ......... 4 6
MINIDASD •••• ,••• 1. 16
Named system(s) ••••••• 32. 30. 66
Nucleus (CP-67) ,••••••• 1. 12. 19. 40
Nucleus (CMS) ••••••• 50-56. 58
NUCLEUS/PUNCH ••••••• 52. 58. 61
NUCON ••••••• 50. 53. 63
Offline ••••••• 4, 16. 21. 46. 58-66
Online ••••••• 48, 51. 55
Operator's console ••••••• 51. 2
Options • CMS ••.••••• 6 0. 6 5. 1. 6 5
options. CP-67.,•••••• 11-15. 30
os ••••••• 1. 13. 16. 34. 57
Paging ••••••• 17-21. 32-37
Password •.•••••• 23. 68
PERM ......... 20
PLIGEND ••••••• 56
Pseudo timer •••• ,••• 25
Queuel ••••••• 35
Queue2 ••••••• 35
REALI0 ••••••• 15-9w 1w 42
Redefining device addressees>••••• l•. 51
RELDRxxx ••••••• 15. 44
Restoring ......... 49-52
RPRT •••••.•• 16w 25
RPUN ••••••• 25. 25
RTIMR ••••••• 11w 24w 55
SAVECP ••••••• 29w 45
Saved system ••••••• 32-35. 66
SAVESYS •••••.•• 32-35w 54-56w 16, 45
SAVEOS ••••••• 16
Saving CMS ••54w 34
Serialization ••••••• s. 29. 44
SET (TRACE, ADSTOP) ••••••• 47w 14w 56
Shared page(s),••••••• 32-35
4••••- 71 -

SIMPLEX macro ••.••••• 5, 4, 8-11
Spooling ••••••• 19, 23, 39
SSTAT ••••••• 63
SYSCNSL ••••••• 10
SYSCORE ••••••• 10
SYSCTL •••••.•• 54
SYSDESCR ........ 10, 16, 19
SYSDNC ........ 19
SYSDUMP ••••.••• 16
SYSEMRG ••••.••• 10
SYSERR ••••••• 19
sysgen, CMS ••••••• 1, 2, 48
Sysgen, CP-67 ••••••• 1, 2, 5
SYSGEN macro ........ 10, 16
SYSMASK •• • ••.•• 33
SYSOPER ••••••• 10
SYSPRT ••••••• 10
SYSPUN •••.•••• 10
SYSRES macro ••••••• 1, 10, 19
SYSTAB ••••••• 33
SYSTEM module ••.••••• 32
SYSTYPE ••.••••• 10
SYSVOL ......... 10
SYSWRM ••••••• 19
TDSK •••••.•• 20
TEMP ••••••• 20'IMPSPACE ••••.••• 45
TRACE ••••••• 14, 11Tuning ........ 35
Userid ••••••• 30, 52, 58
Utilities, CMS ••••••• 1, 16
Utilities, CP-67 ••••••• 15-17, 1, 3, 31, 40, 44
VDOMP, FDUMP, EDITDOMP ••••••• 38, 16, 43
Virtual I/0 ......... 2
Virtual 67 (V67) ••••••• 11, 12, 24
Volume label ••••••• 19-26, 32- 72 -

GH20-0857-1

lntematlonal Buslne8S Machines Corporation
Data Processing Division
1133 Westchester Avenue, White Plains, New York 10604(U.S.A. only)
IBM World Trade Corporation
821 United Nations Plaza, New York, New York 10017(lntamatlonal)

READER'S COMMENT fORM
Control Program -67 /Cambridge Monitor System
CP-67 /CMS Version 3.1,
Installation Guide

GH20-0857-1

Please comment on the usefulness and readability of this publication, suggest additions anddeletions, and list specific errors and omissions (give page numbers). All comments and suggestions become the property of IBM. If you wish a reply, be sure to include your name and address.

COMMENTS

....

fold

fold

fold

fold

• Thank you for your cooperation. No postage necessary if mailed in the U.S.A.
FOLD ON TWO LINES, STAPLE AND MAIL.

GH20-0857-1

YOUR COMMENTS PLEASE •••Your comments on the other side of this form will help us improve future editions of this publication. Each reply will be carefully reviewed by the persons responsible for writing and publishing this material.

fold

fold

........................ ......... •. .......... ...................... ....... ............................ .
'

~

~

'

~

FIRST CLASSPERMIT NO. 1359
WHITE PLAINS, N. Y.

BUSINESS

REPLY

MAIL

NO POSTAG~ NECESSARY IF MAILED IN THE UNITED STATES......
POSTAGE WILL BE PAID BY •..

.

I BM Corporation
1133 Westchester Avenue
White Plains, N.Y. 10604
Attention: Technical Publications.......................................................................................................
fold

lnt1rnaUonal Bu1in111 Machin11 Corporation
Data Proc111ing Divi1ion
1133 W11tch11t1r Avenua, Whit• Plain11 Naw Yark 10604[U.S.A. only)
IBM World Trad• Corporation
821 Unit1d Nation• Plaza, N1w Yark, New Yark 10017[lnt1rnatianal)

fold

.

READER'S COMMENT FORM
Control Program -67/Cambridge Monitor System
CP-67 /CMS Version 3.1,
Installation Guide

GH20-0857-1

Please comment on the usefulness and readability of this publication, suggest additions anddeletions, and list specific errors and omissions (give page numbers). All comments and suggestions become the property of IBM. If you wish a reply, be sure to include your name and address.

COMMENTS

fold

fold

fold

fold

·(

•

• Thank you for your cooperation. No postage necessary if mailed in the U.S.A.
FOLD ON TWO LINES, STAPLE AND MAIL.

GH20-0857-1

YOUR COMMENTS PLEASE •••Your comments on the other side of this form will help us improve future editions of this publication. Each reply will be carefully reviewed by the persons responsible.for writing and pub-·lishing this material.

fold
t

t

et

fold

t.

t

t

t

t

t

t

et

••

t

t

t

1

•

1

t

t

It

t

t

t

t

It

It

t

I

I

It

It

t

I

I

It

I

I

I

I

I

I

...

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

I

FIRST CLASSPERMlt NO. 1359
WHITE PLAINS, N. Y.

BUSINESS REPLY MAIL
NO POSTAGE NECESSARY IF MAILED IN THE UNITED STATESPOSTAGE Will BE PAID BY ..•I BM Corporation
1133 Westchester Avenue
White Plains, N.Y. 10604
Attention: Technicol Publications

t

I

It

I

I

I

I

I

I

I

I

I

I

It

t

t

I

I

I

I

It

It

t

I

It

I

I

I

It

I

I

I

It

I

I

I

I

I

I

I

fold

Int1rn1tianal BusinlH Machine• Carparatian
Data Prac1Hing Division
1133 WHtchHt1r Avenue, White Plain•, New Yark 10604{U.S.A. only]
IBM World Trade Carparatian
821 United Nations Piasa, New Yark, New Yark 10017[Int1rnatianal)

I

It.

It

I

I

I

It

I

I

I

I

It

I

I

I

It

I

I

I

I

I

I

I

I

It

I

It

t

I

I•

t

I

I

I

I

I

I

I

I

I

fold

I

I

I

IBM
®

Technical Newsletter

Base Puhl. No.

GH20-0857-1

This Newsletter No.
Date

GN20-2501

January 20, 1972

Previous Newsletter Nos.

None

Control Program-67 /Cambridge Monitor System(CP-67/CMS) Version 3.1
Installation Guide
Program Number 3600-05.2.005
This Technical Newsletter, a part of Version 3, Modification Level 1, of Control Program-6 7 /Cambridge
Monitor System, provides replacement pages for the subject manual. These replacement pages remainin effect for subsequent versions and modifications unless specifically altered. Pages to be inserted
and/or removed are listed below.

3,4
7,8
25,26
Minor addition and changes have been made to provide program support information on IBM 3420
Magnetic Tape Unit.
Vertical rules in the left margin indicate changes.
Please file this cover letter at the back of the manual to provide a record of changes.

(_ .·IBM Corporation, Technical Publications Dept., 1133 Westchester A venue, White Plains, N. Y. 10604
Printed in U.S.A.

Page of GH20-0857-1
Revised January 20, 1972
By TNL GN20-2501(*2311,2314*2311,2314*2311,2314*2311,2314
1403
2540
2540
*2400,3420*2400,3420

ooc

DSK3
DSK4
DSK5
DSK6
PRN1
RDR1

000
180
181

TAP!
TAP2

192**
000**
000**
19C**

OOE

temporary disk (workspace>
A disk Cuser files>
B disk Cuser files)
c disk Cuser files)
line printercard reader
card punchtape drive
tape drive

PCHl

*

The 2311 or 2314 for the temporary disk, the A, B, andc disks, and the two tape drives are optional devices;
they are not included in the minimum configuration.

**

The reference between the virtual address and I/O
device may be changed at any time by the CMS LOGIN
corrunand.
After entering the real device addresses, the CMS
initialization message is typed
CMS • •VE RSI ON

n

LEVEL

m

Issue the CMS command

FORMAT P ALL
to format the P-disk to be used forcard punch and printer should bestatus.
Place theTAP2 and issue

CP-67 SYSGEN. The
placed in READY

CP distribution tape on

symbolic drive

TAPE LOAD 4
All necessary CP files are loaded onto the P-disk.
These files
are of the following
filetypes forgeneration of CP-67 and the utilities:
SYSIN files, which are the CP source
Assembler Language;

decks written in

EXEC files, which contain procedures for assembling andupdating;(

TEXT files containing
system;theassembled

modules ofthe

MACLIB files containing CP-67 macros for assembling thesystem and the real machine conf ig\lration;-

3 -.ASP360 and COPY files for creating and changing
macro library CPMACS MACLIB, when necessary;

the

LOADER
files containing
relocating loaderswithdifferent printer addresses <that is, 000, OOE, OOF,
010, 030, 040);
SAMPLE files containing examples of therequired for system setup.
It is from this P-disk Con which theloaded) that the CP system is obtained.

various decks

above CPfiles areNote. While executing CMS on the real machine, the lastcard of any punched deck must be manually run out from thecard punch.

MACHINE CONFIGURATION DEFINITION
FOR CP-67
A description of the physical machine must be provided
for CP-67. This description is contained in a SYSIN or
source deck called , RIOxxx, where xxx are
any threecharacters specified by the installation. This SYSIN deckis assembled via the CMS ASSEMBLE command, and the resultant
text or object deck placed in the CP-67 system.
Samesimplex and duplex machine configurations are distributed
among the P-disk files with the identifiers of RIOCSC SYSIN,SIMPLEX SAMPLE, and DUPLEX SAMPLE.
If the distributed
RIOCSC SYSIN does not meet the installation's configuration,a new RIOxxx deck must be constructed from the macros below,
assembled, and used in place of the distributed RIOCSC textdeck.
To get the real I/O
definitions for the target
configuration read onto the P-disk,
from the card reader,
place the RIOxxx deck into the reader, ready it, and issue
the CMS command
OFFLINE READ RIOxxx SYSIN
where xxx are any threecharacters specified by the
installation. If csc is chosen for xxx, the existing file
RIOCSC SYSIN is erased.
To assemble the real I/O configuration deck, produce
the text deck, and print the listing, issue the CMS command- 4 -Page of GH20-0857-1
Revised January 20, 1972
By TNL GN20-2501(

unit; c is the control unit address; path is the value(hexadecimal) of the logical path for this control unit
(each control unit on a channel has a unique bit of theeight bits assigned to the channel and this bit or pathdefines which devices are accessed through this controlunit); taill provides a connection to this control unit fromthe channel--use the symbolic label of the channel on which
this control unit resides.

Define Device Macro!label!

DRDEVIRDEVPNT=<O,dlabel>lr
RDEVCU=culabel,RDEVADD=ccu,
TYPE=type,DECUPTH=path,where "label" is the symbolic label for this device; dlabel
is the symbolic label of the next device on this control
unit; culabel is the label of the control unit on which
this device resides; ccu is the channel, control unit, andunit address of this device; type is the device type<specified as xxxx where xxxx is 2311, 2314, 2321, 2301,
2303, 2400, 3420, 1403, 2540P, 2540R, 2701, 2702, 2703,
or 2250;"path" is identical to the control uni ts path
(RCUPATH in DRCU) for this device and defines which control unit this device uses.
·'·
Define Multiplexor Device MacrollabellDMXDV••RDEVADD=ccu,TYPE=type,ISAD=nt,"5/··

IRDEVPNT=<O,mlabel>I
where "label" is the symbolic label of this multiplexor
device; ccu is the channel, control unit, and unit addressof this device; type is the device type, which is one of
the following: 1052, 1403, 2540RDR, 2540PCH, 2701T, 2702T,
2703T, or TT35T ( where the 2701T, 2702T, 2703T implies a1052, 2741-BCD or 2741-correspondence terminal coming into a
2701, 2702, or 2703 and the TT35T is a teletype 33 or 35); n
is the SAD address of the 2701, 2702, or 2703 andhas avalue of O, 1, 2, 3, or 4 (the SAD address does not indicate
terminal type); For a 2701 which does not require a SAD
command, specify a value of 4. For a 2703 which ignores SAD
commands, a value of 4 can also be specified. For a 2702,
the correct SAD value for the particular line must be
specified < O, 1, 2, and 3 are valid). Your local IBM CE-

7 -can supply you with the SAD numbers for each 2702 line; andmlabel is the symbolic label of the next multiplexor device
in the chain. There must be one DMXDV macro defined for each
2701, 2702, or 2703 line.

(

Note. The ordered arrangement of the real I/O macros isrequired to properly generate the correct entries andtables.
The multiplexor devices must be defined before theselector channel devices. Each selector channel must becompletely defined in terms of devices, control unit, andthen channel (in that order> before the next selector
channel is defined.
If a simplex configuration is being
described, the SIMPLEX macro must be followed by the END
card. If a duplex configuration is being described, two
SIMPLEX macros are required: the first s IMPLEX macro isfollowed by the I/O definitions for another CPU; the second
SIMPLEX macro is followed by the END card.
An example of a real I/O
configuration is as follows:source deckfor asimplexRIOSREALIO TITLE='SAMPLE SIMPLEX'OPCONSOL DMXDV RDEVPNT=PRINTER1,RDEVADD=009,TYPE=1052
PRINTER1 DMXDV RDEVPNT=CARDRDR1,RDEVADD=030,TYPE=1403
CARDRDRl DMXDV RDEVPNT=PUNCH1,RDEVADD=031,TYPE=2540RDR
PUNCHlDMXDV RDEVPNT=TERM01,RDEVADD=032,TYPE=2540PCHDMXDV RDEVPNT=TERM02,RDEVADD=020,TYPE=2702T,SAD=lTERMOlTERM02DMXDV RDEVPNT=TERM03,RDEVADD=021,TYPE=2702T,SAD=1
TERM03DMXDV RDEVPNT=TERM04,RDEVADD=023,TYPE=TT35T,SAD=2'l'ERM4E
DRUM2
R2820ACHANl
DISK30DISK31DISK37
R2314
CHAN2
DRUM1
DISK4

-

8 -

DMXDV RDEVADD=04E,TYPE=2703T,SAD=4DRDEV RDEVCU=R2820A,RDEVADD=100,TYPE=2301,DECUPTH=80
DRCU DEVLIST=DRUM2,RCUADD=O,CUTAIL1=CHAN1,RCUPATH=80
DRCH RCULIST=R2820A,CHANADD=l,CHANPNT=CHAN2DRDEV RDEVCU=R2314 ,RDEVADD=230, TYPE=2314, DECUPTH=40,
RDEVPNT=DISK31DRDEV RDEVCU=R2314,RDEVADD=231,TYPE=2314,DECUPTH=40,
RDEVPNT=DISK32**DRDEV RDEVCU=R2314,RDEVADD=237,TYPE=2314,DECUPTH=40
DRCU DEVLIST=DISK30,RCUADD=3,CUTAIL1=CHAN2,RCUPATH=40
DRCH RCULIST=R2314,CHANADD=2,CHANPNT=CHAN3DRDEV RDEVCU=R2841B,RDEVADD=393,TYPE=2303,DECUPTH=80,
RDEVPNT=DISK4DRDEV RDEVCU=R2841B,DEVADD=390,TYPE=2311,DECUPTH=80,
RDEVPNT=DISK5**.... .... ..

""-·Page of GH20-0857-1
Revised January 20, 1972
By TNL GN20-2501

I ,RDSHAR=passwordj(

f ,WRMULTf

I ,WRSHAR=passwordf
The UNIT card is used to specify the input/output units
available to a user and where and on which volumes his
permanent files reside.
ccu

is the virtual address of the device.

devtypeis the device type, which may be one of
the following:
1052
2540P
2540R
1403
2250
2311 or 2312
2314
2400
3420
2701
2702
2703
TIMR
RPRT
RPUN
where a 2312 is used to designate thebottom half of a 2314 drive used as a
virtual 2311.

A 2312 device type is treated as a 2311 by CP-67. User seekcommands issued to the pseudo 2311 have the head address
relocated (by adding decimal 10) to access the bottom halfof the 2314 disk. It should be noted that 2311 device types
supported on the top half of a 2314 pack may experience
difficulties
if multitrack
operations areattempted;
however, rnultitrack operations on the 2312 (pseudo 2311)
device typeshould work
correctly sincea physicalend-of-cylinder condition is recognizable.
TIMR is a pseudo-timer device which can provide the time ofday, date, virtual CPU time, and total CPU time to a virtual
machine. It should be specified for every CMS user. Its
format is(

RPRT and RPUN are special device types that allow the user
to access the disk dump created by a CP-67 system abend.

- 25 -

For the desired
VDUMP) specify
UNIT

userid to receive the dump

Csee section on

OF1 ,RPRT

xxxxxxis the volume label of the disk that is being
described.
(TEMP)
specifies that the disk space is to beobtained at logon time from that allocated as TDSK
space and then removed from the user at CP-67
log off.
REM=IDccu specifies a remote device with real address
ccu that is to be used for spooled output fromthis defined user. It has the same function as
the SPOOL console commands for directing spooled
output. See CP-67/CMS User's Guide for details.
The only device types supported as remote devices
are the 25~0P and the 1403.
DED=IDccu specifies a device with real address ccu thatis dedicated to this us er at login time andunavailable to other users.
The device types
supported are the 1403, 2540R, 2540P, 2250, 2400,
2701, 2702, and the 2703. If the specified device
is not available or in use when the user logs in,
he is so informed and the device is not attachedto him. Note that a 2250 or 2400, if specified,must be defined as a dedicated device.
CON=YES
specifies that continuous spooled input isdesired for this virtual card reader; that is, if
there is more than one spooled input file for .thecard reader, they are read as one continuous file
before end-of-data is given.
This has the samefunction as the SPOOL ccu CONT console function(see CP-67/CMS User's Guide for details.)
relno

is a three-digit decimal cylinder relocation
factor to be applied to this device; for example,
if a user's permanent files started at cylinder 54of the specified volume, relno would be specified
as 054.

zzz

is a three-digit decimal number specifying thenumber of temporary cylinders to be obtained atlogon. zzz is used only if (TEMP) was specified.

last is a three-digit decimal number specifying thelast cylinder of the user's file space. If relno
is 054 and the user is allowed 20 cylinders ofspace, last would be specified as 073.

- 26 -