DTSS_System_Programming_Reference_Manual_Oct79 DTSS System Programming Reference Manual Oct79

DTSS_System_Programming_Reference_Manual_Oct79 manual pdf -FilePursuit

DTSS_System_Programming_Reference_Manual_Oct79 DTSS_System_Programming_Reference_Manual_Oct79

User Manual: DTSS_System_Programming_Reference_Manual_Oct79

Open the PDF directly: View PDF PDF.
Page Count: 315

DownloadDTSS_System_Programming_Reference_Manual_Oct79 DTSS System Programming Reference Manual Oct79
Open PDF In BrowserView PDF
C55 Doc. 1101- TM059
Progrmng. Ref. Manul~ (DT55)
10/31/79

System Programming Reference Manual

This document contains information necessary for system
programming on the rt.rSS. Topics include Executive
services and JobjExecutive Interface.

Pub. 1059

31 OCT 79

title
authors

publication number
date

System Programming Reference Manual
S. Garland
A. Dwyer .
E. Pet:Per
A. Colvin
N. Bourbaki

1059
31 OCT 79 (revision 1)

category System Management supersedes

Programming

DTSS Programming Reference Manual,
'IM059 (1 OCT 74)

related dccuments

~

Reference Manual, Pub .. 1077

File Access and Protection, Pub.l102
Description of File System and Job Trees,
Pub. 1335
System Managa~t Publications List, Pub.1350

FOstage-paid remarks form is included at the end of· this manual
for your convenience. Information aOOut publications may be
found in the Publication Price List and Publication Abstracts, of
which single copies may be obtained free of charge.

A

The named authors

~ld

like to thank the many 1 many p:cple who
prepared, or worked on the various parts of t.~is

have au~,ored,
manual. Large portions of this manual cane directly fran the
superseded edition by S. Garland an::1 A. Dwyer.

Copyright

@

1979,

orss Incorporated

SYSTEM PRCGRAMMING REE'ERENCE MANUAL

Contents

Chapter 1 - JobjExecutive Interface •

• • 9

10

1.1 Running in Slave Mode • •

1.2

1.1.1 Base Address Register
1.1.2 Timer Register •
1.1.3 Input and Output (I/O)

10
10
10

Job to Executive

11

•••

1.2.1 Leaving Slave Mode • • • • •
1.2.2 Transparent Interrupts •
1.2.3 MME Faults; Executive calls

11

11
12

13

1.3 Slave Fault Vector

1.3.1 Slave Fault Procedure
1.3.2 Slave Faults • • . • •
1.3.3 Sirrulated Slave Faults
1.3.4 Special Lccations • •
1.3.5 Parity Faults; Execute
1.4

15

16

Executive to Job
1.4.1 Traps
1.4.2 Special Interrupts. • • • • •
1.4.3 Special Interrupt Stack
1.4.4 Special Interrupt Procedure •
1.4.5 Saved Special Interrupts. •
1.4.6 Bouncing Special Interrupts
1.4.7 Special Interrupt Pair Format
1.4.8 Types of Special Interrupts
1.4.9 Simultaneous Traps and Special
1.4.10 Typical Trap-Handling Code
(Non-MUltiprogramrned) • • • •

Pub. 1059

14
14
15
15

• • • •
• •
•
•
Faults

•

16
17
17

• • •

18

Interrupts

19
19
19
20
22

• • • • • • • 23

Page 3

1.4.11 Ordering of Simultaneous Traps
1.4.12 Traps fran Squeezed M:Xie

Chapter 2 - Specifications for Executive Commands

24
24
25

2.1 Nontrapping Executive Ccnunands

27

2.2 Trapping Executive Commands

28

2.3 Trap Block Format

29

2.4

SllIIlIIarY of Status Returns

Chapter 3 - Nontrapping Executive Commands
MTE
ENABLE
JOB TIME
I.al; PAUSE

MEMJRY REOOEST
PAUSE

PURE
RtNNING TIME
SET TIMER •
SClJEEZE

TERMINATE

OF

35
36
37
38

CLCCK

TIME

30

DAY •

40
41
42
43
44
45
46

47
48
49

TTh1E S:m:::E BCOrI.OAD

50

Chapter 4 - Trapping Executive Commands

51

ALTER ACCESSES
CATAI.CG
CEAN:;E CATAI.CG ENTRY
CEAN:;E CATAI.CG MAX

59
62

C!.CSE

64

CCNrThlJE

66
68
74

COPY
DRIVE

DUPLlCAT8
ERASE
EXECL"T.E

Page 4

53
55

79

81
84

Pub. 1059

reG •

OLD ERASE •
OLD READ CATAI.CG AND OPEN FILES

OLD REPLACE •
OPEN
OPEN SCRAroI
GVEm.AY •
PASS

PROVIDE DEVICE ADDRESSES
READ
READ CATALCG
READ CATALCG AND OPEN FILES

REPLACE •

RECUEST STATUS
RESEr STATUS
RW •
SCPATal •
SET POINrER •
TALLY CATAI.CG •
TALLY ERASE
TALLY OPEN
TAILY REPlACE •
TRUNCATE
ONCATALCG •
WRITE •

92
94
96
97
100
106
109
III
114
116
• 120
124
131
136
141
143
144
146
148
152
156
162
167
169
171

Chapter 5 - Ccmmunication Files

175

5.1 COPYCcmmands •

175

5.1.1 Slave End copy Ccmmands
.5.1.2 Master End COPY ·Ccrnmands
5.1.3 The "No-Tr aplt Cption •

178

5. 2 Non-OJPY Ccmmands
5.2.1
5.2.2
5.2.3
5.2.4
5.2.5
5.2.6
5.2.7

Pub. 1059

RECUEST STAWS· (Master End)
RECUEST STATtJS (Slave End)
DRIVE (~.aster End)
DRIVE

(Slave

175
177
178

Em)

TRI..u.""'1CATE, SCRA'ICE, and SET FOINrER
(Slave End Only)
PASS and CLCSE •
RESEr STATtJS •

179
179
180
181
181
182
• 182

Page 5

5.3 Creation and Destruction

• 182

5.4 Reserving the File

• • 184

5.5 Busy States and Reset Status

• 186

5.5.1 Slave End States •.
5.5.2 Master End States
5.6 Usage Example • • • • • • •
5.6.1
5.6.2
5.6.3
5.6.4
5.6.5
5.6.6
5.6.7
5.6.8
5.6.9
5.6.10

• • 187
• • 189

..

191

Creating a Ccmmunication File
•
REQUEST STATUS from a Slave End
•
PASS at a Slave End . . . . . . . . . . . . .
COPY Conm3nd with No-Trap Option • •
• •
Aborted COPY and Break Drive • • • • •
•
Slave End Reservation; Local Operations ...
Master End DRIVE • • • • • . • • •
•
Illegal Actions • • • • • • • • • •
Destroying the File • • • • • • • •
Passing Back a CcmmunicationFile
• •

Chapter 6- Device Files

............
/

• • 207

6.3 Device Status Returns .

Page 6

204

• • • 205

6.2.1 Single Action Drives
6.2.2 Drive with LCd's.

• • 210

Console
Card Reader
Card. Punch •
Printer
Tat:e • • • • • • •
• • • •
Disk • • • . •
Microprogrammed Peripheral Controller
716 Front End Processor

6.5 Special Programming Considerations

197

197

199

6.2 Device Drives .. • • • • • ••

6. 4 S imula ted Status Returns

196

196

• 199

6.1 General Information and Restrictions

6.3.1
6.3.2
6.3.3
6.3.4
6.3.5
6.3.6
6.3.7
6.3.8

191
192
192
193
194
194

....
......

•
•
•
• •
•

211
212
213
214
215
217
219
• 220
221

· 222

Pub. 1059

SYS'IEM PRCGRAMMING REEERENCE MANUAL

6.6 Executive Error

Recove~l

• • • . • • . • . • • . . 225

. . . . . . . . . . . . . . 227

Chapter 7 - Shared Files
Chapter 8 - Tally Operations

229

8.1 General Parameters

• 230

8.2 Scanner Conventions •

• 231

8.3 Status Returns

• • 235

Chapter 9 - Catalog Structure

237

237

9.1

Introduction

9.2

Definitions •.

9.3

Physical Organization •

• • 238

9.3.1 Device Addresses (DA'S)
9.3.2 catalogs • • • •
9.4

9.5

Slave Accessible

I~orrnation

. • • • • • • 240
• • • • 242
• • 244

9.4.1 catalog headers •••
9.4.2 Logical Descriptors

244
• 247

Quotas and Storage Limi tations

• 252

9.5.1 catalog quotas •
9.5.2 Job quotas . • •

Index • • • •

Pub. 1059

• 240

• 252
• • 253

. . . . . . . . . . . . . . . . . . . . . . . 255
~

Page 7

Page 8

Pub. 1059

Chapter 1
JobjExecutive Interface

wl1en a slave job is in execution, it has full control of a
processor in slave rrode and may perform any legal slave nx:de
operations, as described in the "Honeywell 600/6000 Programming

Reference Manual II • Whenever a prccessor leaves slave m:::;de, the
Executive gains control.
A slave job may enter the Executive in various ways:

it may
request service from the Executive, it may execute an instruction
that faults, or sane external event (such as a physical I/O
operation completing or timer running out) may cause the
Executive to suspend the job. Executive entries that are not
caused by a job are invisible to a job; when it resumes
execution, nei ther its merr.ory nor its environment will be
changed.
The Executive conveys information to a slave job by the following
means:
faults

indicating that the job e..xecuted an
instruction ~,at faulted

traps

indicating that asynchronous operations have
completed

interrupts

usually indicating that another slave job
wishes to carmunicate wi th this job

This sketchy description covers the entire interface be~Heen the
Executive and a slave job, wi th the exceptiqn of special
considerations in the case of job 1 (the Slave Loader) having to

Pub.1059

Page 9

SYS'lEM PRCGRAMMING REEERENCE MANUAL

do with system startup).
detail.

1.1

We now consider this interface in more

Running in Slave MOde

A job actually running (executing instructions) is not affected

by. the Executive I except as noted here.

1.1.1 Base Address Register
The base address register (BAR) limits memory references by the
slave job. The base p:>rtion of the register is set according to
the location of the job in main rnenory, and may be reset by the
Executive at any tim: that the job is interrupted (is not
actually executing instructions). The length p:>rtion is set
according to the length of the job, and changes only when the job
issues a MEMJRY _REQUEST call (on a MME faul t, as descri1:ed
below) •
1.1.2 Timer Register
The timer register is set according to the needs of the
Executive, and may change any tine the job is interrupted. The
slave job &,ould not t.~erefore dep:nd on the setting of the timer
register.
1.1.3

Input and Output (I/O)

An I/O activity requested by the jcb may proceed concurrently
with its execution. (I/O is requested with Executive calls, as
described eelow.) A slave job should not re-use an I/O buffer
until it has been notified by the Executive (by means of a trap)
that the previously requested I/O has t:e€n canpleted on that
Cuffer.

Page 10

Pub. 1059

1 - JCE/EXEaJrIVE INIERFACE

1.2 Job to Executive
1.2.1 Leaving Slave Mode
The Honeywell 600/6000 hardware provides two general methods for
leaving slave mode: I/O interrupts and faults. I/O interrupts
cannot be generated by a prccessor in slave nx:de. Certain types
of faults can be generated deliberately by a slave job; other
types are due to outside causes. The action taken by the
Executive will depend on the type of interrupt or fault, and
FOssiblyon the state of the job's registers "and main meIOOry when
the faul t cccurs.
1.2.2 Transparent Interrupts
Certain types of interrupts are normally transparent to a slave
job. That is, the job is restarted after the interrupt wi th all
its memory and working registers (including the instruction
counter or IC) preserved, so that it need not even 1:e aware that
the interrupt cccurred. Included in this category' are all
connect faults, timer runcut faults, and startup and shutdown
faults. These events are not completely undetectable by the
slave jcb, though. Any tim: a job is interrupted, including
transparent interrupts, the Executive may take advantage of its
opportunity to give a pending trap, slave fault, or special
interrupt (cf. Section 1.4). It may also m:dify the BAR or timer
register as previously described.
If it is imperative to the slave job that not even these events
cccur, it may prevent all transparent interrupts by the use of
the inhibit bit. This hardware feature prevents any of the
transparent interrupts fran occurring. care shoold be taken,
however, to insure that the inhibit bi t is not used Irore than is
absolutely necessary • Excessive use of the inhibi t bi t has the
following disadvantages:
(1)

Pub. 1059

If the slave job executes inhibited cede for too long,
a lockup fault is generated. This fault may cccur in
the middle of the execution of one machine instruction I
making it iJnt:ossible for the slave job to continue.

Page 11

SYS'IEM PFCGRAMMING REEERENCE MANUAL

(2)

1.2.3

Excessive use of the inhibit bit prevents the Executive
from recognizing I/O interrupts as quickly as possible,
thus slowing down the rate of I/O activity am reducing
the total eff~ciency of the time-sharing system.

MME Faults; Executive Calls'

A slave job may request certain services from the Executive by
generating a MME (master mode entry) fault.' The address field of
the instruction causing the fault contains a code for the type of
call,. and the job's registers and merrory contain any additional
parameters necessary. The specifications for the valid calls are
contained in Chapter 2, IISpecifications for ExecutiveCormnands n •
Executive calls are of three types: nontrapping, trapping I and
tra~ing with autanatic pause.
The action requested by a
nontrapping call is performed tefore ~,e slave job regains
control. From the point of view of .the slave job, its action is
instantaneous. This action may include modification of the slave
job's registers or memory, as described in the specifications.
Except for such modifications, a nontrapping call is essentially
a transparent interrupt.
Trapping calls also function as transparent interrupts. However,
after a trapping call has been issued and the. slave job has
regained control, the action mayor may not be complete. A
trapping call must specify a trap address in X6 at the time of
the MME fault. wnen the action is complete, a trap (described in
Section 1.4) occurs to that address in the slave job's rnerrory
area.
Trapping calls wi~~ the automatic pause feature share features of
trapping and nontrapping calls. The calls are set up much like a
trapping calli e.g. a trap address is necessary, but a pause for
one interrupt is assumed at the tirr.€ of the' call. This feature
may make the call look much like a ncntrapping call. It is
considered geed prcgr arnming technique, however, to check to make
sure that the particular trap for the current MME was returned,
even after the autanatic pausing type of Executive calls.

Page 12

Pub. 1059

1 - JCB!EXECtJI'IVE INrERFACE

If a, jcb is in squeezed m::de, or if the address field of the MME
instruction does not specify a valid call, or if the trap address
for a trapping call is zero, negative, or out of munds, the MME
fault is returned to the slave job as a slave fault (see below) .
The upper three bits of the cede for a valid Executive call are
always 101 to reduce the chance of an undebugged job accidentally
generating and issuing a valid Executive call.

1.3 Slave Fault Vector
The first 40 (octal) words of a slave job l s rnerrory form its slave
fault vector. This area is divided into two-word fault cells,
one for each of the sixteen types of faults described in the
, "Honeywell 600/000 Programming Reference Manual". Sane of these
cells are used for special purposes by the Executive, while
others are used for slave faults. The position of the individual
cells within the slave fault vector corresponds to ~he hardwaredefined locations in the master m::de fault vector. They are·:
Lccaticn

Use

o

initial entry

2
4
6

memory fault

10

12
14
16
20
22
24
26
30
32
34
36

Pub.1059

poin~special

interrupt tally

MME fault
fault tag fault
CRIJ tim:r runcut fault
ccmmand fault
DRL fault
lockup fault
special interrupt
unused (reserved)
illegal procedure fault
incomplete op fault
unused
overflow/truncation fault
divide check
real time timer runcut fault

Page 13

SYS'IEM PFCGRAMMING REE'EREl'l:E MANUAL

1.3.1 Slave Fault Procedure
When certain faults occur, they are returned to the slave job
which generated them as slave faults. To give a slave fault, the
Executive stores the job's Ie (instruction counter) and IR
(indicator register) registers at the time of the fault in the
first word of the appropriate fault cell in the slave fault
vector. The job's Ie is reset to point to the secor:d word of the
fault cell.
If the first ~rd of the fault cell was zero before the IC/IR
were stored, then control is transferred to the second word of
t.~e fault cell.
However, if it was nonzero, the job had a "di~ty
fault vector ff and is al:orted; that is, it is suspended, and the
job which ran it is notified by a trap that the job had a dirty
fault vector. The supra job then has the option of continuing or
terminating the aborted slave job. This feature is intended to
prevent an undebugged job fram looping indefinitely due to a
fault in its fault precessing routine.

1.3.2 Slave Faults
w'"henever a memory, fault tag I DRL, lockup, illegal precedure
(IPR) , incomplete cp (OOC), overflow/truncate, or divide check
fault occurs, it is returned as a slave fault4 Command faults
are normally returned as slave faults. However, if the job in
question is highly privileged (enabled) it may use a corrmarrl
fault to request an al:::ort of the entire system (see ENABLE MME) •
This feature is to allow certaL~ high-level slave jobs to request
a system aJ:ort in case they detect a serious error. Camnand
faults are generated when a privileged (master mode) instruction
is executed in slave rrxXie.
~

faults normally indicate Executive calls. However, if the
job generating t.~e MME is in squeezed roc:de (entered by the
Executive call SQUEEZE) I if the address field of the instruction
causing the fault does not specify a valid Executive call, or if
the trap address specified for a trapping call is zero, negative,
or out of tourrls, the MME fault will be returned as a slave
fault.

Page 14

Pub.I059

1 - JCB/EXEaJrIVE lNIERFACE

1.3.3

Simulated Slave Faults

~

software-simulated timers are available to a slave job. A
run-time timer is set by the Executive call SET TL~, and a
real-time (elapsed time) timer is set by the Executive call
CLCCK. Both these calls are nontrapping.
As soon as possible after either of these timers has counted down
to zero, the timer is disabled and a slave fault is given. A

timer runcut fault is returned if the run-time timer counts to
zero, and an execute fault is given if the real-time timer runs
out. Either of these simulated faults may cause the job to be
amrted for a dirty fault vector. The s imula ted faults are the
only slave faults given in these fault cells; neither the
hardware timer runout nor execute faults are returned as slave
faults.
1.3.4

Special Lccations

The shutdown and connect fault cells have special uses in the
slave fault vector. 1N:>rd 0 (the first word of the shutdam fault
cell) is the ini tial entry FOint to the job. When the job is
first run, its Ie is set to zero. Word 1 (the secorrl word of the
shutdown fault cell) is the job's special interrupt tally word.
The co~nect fault cell is used as the special interrupt cell.
Special interrupts are descri1:ed in detail in Section 1.4.
The pari ty fault cell is not currently used, and is reserved for
future use. The startup fault cell is not used by the Executive 1
and is available to the slave job, if it wishes to use it ..
1.3.5 Parity Faults; Execute Faults
When a job generates a pari ty fault, the job is terminated. '" The
supra job is notified in the trap that the job was terminated due
to an error detected by the Executive (recoverable error status
400). In case of an execute fault, the system is aborted. An
exeoJte fault can be generated only by the or:erator at the
processor centrol panel, and it is never a slave fault.

Pub.IOS9

Page 15

1.4

Executive to Job

In addition to slave faults, the Executive also communicates with
the slave job by using traps and special interrupts.
1.4.1 Traps
A trap occurs whenever the action requested by a trapping
executive call is canpleted, or when it is terminated prematurely
by an error or invalid parameter. A trap address is specified
when the call is issued. This address is the start of a block of
at least four words in the slave job J s merrory. wl'len the trap is
ready to "spring", the Executive, at its first opportunity,
stores two words of status information in the first two words of
this block. The job's current IC and IR are stored in t.'e third
word of the trap block (the return MJrd) , and its IC is reset to
point to the fourth ~rd. (This procedure should be compared
wi th the similar procedure used to give a slave fault.) The
fourth ~rd shculd contain the 1:eginning of
slave job's trap
proc"essing routine. Bits 9-17 of the first status word always
contain a status code indicating whether the operation was
completed successfully, and if not, why not. Ot.i1er fields give
rrore detailed information. A precise description of the ~~
statusfMJrds is given in Section 2.3.

the.

The following sequence of events cccurs when a slave job is
trapped upon completion of a trapping command:
(1)

Execution of the slave job is suspended;

(2)

Two words of status information are stored in the first
two words of the trap block pointed to by the slave
job IS X6-register when the command was issued;

(3)

The Olrrent value of the slave job's instruction
counter (Ie) and indicator register (IR) are stored in
the third word of t.~e trap block; and

(4)

The slave job is restarted at the fourth word of the
trap block.

Page 16

Pub. 1059

1 - JCB/EXECUl'IVE INTERFACE

A trap block may contain any sequence of instructions starting in
the fourth ~rd. This trap routine should end with an RET
instruction whose address field points to the third word of the
block in order to resume execution of the code interrupted by the
trap.
It is possible for the time between the issuance of a command and
the resulting trap to vary considerably. Sane traps may occur
irmnediately and m:>re than one trap may occur at once. A prcgram
which exi ts frem each trap routine by a RET instruction will
encounter all traps in·the order in which they cccurred; it will
also encounter all traps before encountering any special
interrupt which cccurred at the same time as the traps. Note,
however, that ccmnands are not necessarily trapped in the same
order in which they were issued.

1.4.2 Special Interrupts
A special interrupt is used by the Executiv~ to notify a job of

some event o~,er than the completion of a trapping Executive
call. A job will receive special interrupts only if its special
interrupt tally ~rd (~rd one) is not zero. If the word is
zero, the job is not accepting specials. In this case, any
special interrupts which would be given to the job are either
discarded or l:ounced to a job higher in the job tree, depending
on the origin of the special interrupt (see Section 1.4.6).
1.4.3 Special Interrupt Stack
If a job is accepting specials, the special interrupt tally word
(word l) contains a tally p::>inter to the job I s special interrupt
stack. The tally word is typically generated by using the ~
pseudo-operation TALLYD, as in:
SPTAL:TALLYD

S~..CK,NlJMEER,2

SPECIAL INrERRUPT TALLY

Here STACK is the symbolic location of the area in the slave job
set aside as the special interrupt stack; NtJM3ER is the nu:ml:er of
2-'NOrd, special interrupt data entries (special interrupt pairs)

Pub. 1059

Page 17

which will fit in the stack, and the "2ft refers to the length of
a special interrupt pair. The last field need not be set, but
most programmers find it convenient to do so.
1.4.4 Special Interrupt Procedure
At its first opportunity after a special interrupt is generated
(caused), the Executive will do the following:
(1)

If the job is not accepting Sl=€Cials (the special interrupt
tally ~rd is zero), the special is discarded or J1 oounced" ,
an::l the procedure is canplete. A special interrupt on a
slave end of a canmunications file can be "oounced" to a
higher slave end which is accepting special interrupts.

(2)

Otherwise, any p:n::1ing roadblocks on the job are released
(see the description of the PAUSE call in c.'apter 3).

(3)

If the tally field (bits 18-29) of the special interrupt
tally ~rd is zero, indicating ~~at the special interrupt
stack is full, the special interrupt is "saved" (see below) ,
and the procedure terminates.

(4)

Otherwise, if the address field (bits 0-17) of the special
interrupt tally ~rd points out of bourrls (outside the job's
rnem.::>ry) , the special is discarded, and the prccedure ems.

(5)

Two words of special interrupt data (special interrupt pair)
are stored in the special interrupt stack. The address
field of the tally ~rd is incrertented by two, and the tally
field is decremented by one.

(6)

If v.ord 20 (the first ~rd of the slave connect fault cell)
is zero, a slave connect fault is simulated. If word 20 is
nonzero, no fault takes place. No dirty fault vector aborts
are generated. This feature can be used to prevent a slave
job from receiving a special interrupt (connect fault) while
it is executing its special interrupt service routine, if
the slave job dces not clear word 20 until the erd of its
special handling routine.

Page 18

Pub. 1059

1 - JOB!EXEa1I'IVE INTERFACE

1.4.5 Saved Special Interrupts
If the jcb I s special interrupt stack is full (the tally field of
the tally word is zero) in step 3 above, the special interrupt
pair will be saved by the Executive ar:d given to the job as scan
as the tally field becomes nonzero. The order of the special
interrupts is preserved when each pair is saved. However, once a
special interrupt pair has been saved, the special interrupt
cannot be oounced. If the job stops accepting special interrupts
(clears the special interrupt tally word to zero) l:efore making'
ream in the special interrupt stack, all saved special pairs will
Ce discarded.

1.4.6 Bouncing Special Interrupts
Only special interrupts which are generated by a DRIVE ccrnmand at

the master eoo of a camnunication file are l::ounced. The methcd
by which the Executive determines which job will recsi ve the
SI=€Cial interrupt is covered in detail in Section 5.2.

1.4.7 Special Interrupt Pair Format
The ~ data words which are placed by the Executive in the
special interrupt stack have ~,e following format:

o

13 14

17 18

35

TYPE
DATA

RSVD - Reserved for future use.

These bi ts may contain garbage.

TYPE - Special interrupt type (see below for a list of typ:s) .

Pub. 1059

Page 19

FRN - Depending on the type of the special interrupt, this field
may contain a file reference number. On specials generated
by a DRIVE on a communication file, this field contains the
FRN of the em of the ccrnrnunication file held by the job
receiving the special. On passed file and returned file
specials (types PF and RF), the Fm of the file passed .or
returned is given here. On file closed specials (type
FCLO) I the FRN of the former communication file end is given
here.
The use of this field depends on the type of the special
interrupt. If the special was generated by a DRIVE or CLOSE
on a communication file, the lower half of the DATA field
always contains the drive function data (fran the lower half
of the issuing job I sA-register). Other uses of the DATA
field are listed below.

DATA -

1.4.8

~rees

~

of Special Interrupts
Mnemonic Use

o

1

Set rrode job that a
drive (see
5.2). The
mcde.
RCF

Page 20

slave end jcb issued a set rrcde
DRIVE-slave end in Section
lo.--"'€r half of DATA contains ~'e

Read communication file - used to notify a
slave end job that the master eoo job wishes the slave to issue a READ. By
convention the lower half of DATA contains
the length to read. (See DRIVE-rnaster
end, Section 5.2.)
Slave issued reset - notifies the master
end job that a slave end job issued a
RESET S"rATOS on a COPY to which the master
em job had rot yet respJooed. (See RESET
STATUS, Section 5.2.)

2

3

used to notify the master end

BRK

Break - notifies a slave end job that G,e
master end job has issued a break drive.
(See DRIVE-master end, Section 5.2.)

Pub. 1059

1 - JCB/EXECUl'IVE Th""TERFACE

4

PF

Passed File - notifies the job that a file
has been passed to i t ~7ia the PASS
cannand. This special interrupt is not
caused by the implici t PASS ccrnrrand in the
RON ccrnnand. If DATA is nonzero, the
passed file special is due to a "passback"
fran an :irran:diate infra-job, and the lower
half of DATA contains the FPN of the job
file from which the file was passed.

5

RF

Returned file - notifies the job that a
file which it passed with the return bit
set has rt:JW been returned to it. The
10\a;er half of DATA contains the FRN of the
job file to which t.~e file eeing returned
was passed.

FCLO

File closed - notifies t.~e job that a
ccmnunication file of which it held an em
has been destroyed because a CLOSE was
issued at another er..d. DATA contains the
contents of the A-register of ~~e job
requesting the close at the time of the
close MME.
Reserved for future use.

7

10

ITA.

11
12

Pub.1059

Illegal trap address - notifies a job that
the Executive attempted to give it a trap,
but discovered that the trap address was
outside the job's rnemJry. The lower half
of rATA contains the illegal trap address.
This condi tion can ar ise if Il1E:Irory
containing the trap block is released with
a MEMORY ~ ccmrand l:efore the trap
cccurs.
Reserved for future use.

D

Slave issued drive - notifies the master
end job that a slave end job issued a
device drive. The lo~r half of VATA
contains the device ccrmnand (MJDE). (See
DRIVE-slave end.)

Page 21

SYS'IEM POCGRAMMING REE'EREl.'rn MANUAL

13

R

Slave issued read - notifies the master
end job that a read-type command was
issued at a slave end. DATA contains the
requested length. (See slave end COPY
commands, Section 5.1.)

14

w

Slave issued wr i te - noti'fies ~,e master
end jcb that a write-type command was
issued at a slave errl. DATA contains the
requested length. (See Slave end COpy
commands, Section 5.1.)

15

PS

Slave issued request status - notifies ~~e
master end job that a REQUEST STATUS was
issued at a slave em. DATA. contains the
requested length of the status block.

16

T

Slave issued truncate - potifies the
master end, job that a TRIJ"NCATE or SCRATCH
command was issued at a slave end. DATA
contains the requested truncation length
(zero for SCRATCH). (See TRL~TE-slave
end only I Section 5.2.)

17

SP

Slave issued set pointer - notifies the
master end job of a SET POINTER ccrnmand
issued at a slave end. DATA contains the
requested pointer setting. This special
is automatically given to a master end job
when a copy be or fram a slave end
specifies a starting location pointer (see
copy tt!r1E) •

1.4.9 Simultaneous Traps and Special Interrupts
It is possible for more than one trap, special interrupt, or
slave fault to be given to a job each tiIre that job is interrupted. In this case, the traps are linked, with the Ie in the
return ~rd of one trap fXJinting to the next trap. It is thus
important that a job be programmed so as always 'to return from
its traps, special interrupts, and slave faults by issuing a RET
instruction to the appropriate return word. This ensures that if
nore than one trap 1 or if a trap and a special interrupt cccur
sim.ll taneously, both will be serviced by the slave jeb. Even if

Page 22

Pub. 1059

1 - JCB;EXECUrIVE INTERFACE

the programmer believes ~~e situation cannot occur, it is still a
good practice to return from all traps through the return word.
It typically simplifies program design and increases readability
to do so.
1.4.10 Typical Trap-Handling Code (Non-Multiprogrammed)
The following sequence of instructions is a typical way for a
nonmultiprogrammed slave job to handle a trapping Executive call ..
It illustrates the use of the return word.EAX6
STZ

MME
INHIB
CHECK:

SZN
TNZ

LDXS
MME
INHIB
TFA
SPRONG:

LDXO
ANXO

(MlXO
TNZ

PJint to trap blcck
clear return word as flag
(type)
issue trapping Executive call
SAVE,ON
inhibi t pause routine
TPAP+2
check return ~rd
if not zero, trap has sprung
SPRUNG
1,DU
load pause count
PAUSE
wait for one trap or interrupt
RES'IDRE
reset inhibit bit to normal
cheek flag again
CHECK
pick up status word 1
TRAP
=D777,DU mask to status field
GCOD,IXJ
check for expected status
ERROR
go analyze error

TRAP
TPAP+2

remainder of program
TFAP:

BSS
BSS

1

RET

*-1

2

~NO status w~rds
return wurd
return immediately from trap

This routine always waits after issuing an Executive call. Note
that the trap routine returns immediately through the return
~rd, and the main routine checks the status words.
The return
~rd is also used as a flag, since the Executive will not put the
IC/IR into this word until it springs the trap. If Executive
calls are issued in many places in a program, it is usually
profitable in terms of memory size to place portions of the above
routine, such as the pause loop I in a camron subrcutine.

Pub.1059

Page 23

SYS'IEM PRCGRAMMING REE'EREl\K:E MANUAL

1.4.11 Ordering of Simultaneous Traps
The Executive will link simultaneous traps and specials in such a
way that a job which returns through the appropriate return words
(as all jobs normally should) will encounter first all traps and
simulated slave faults in the order in which they actually
occurred, then the connect fault (special interrupt) if any, and
then any slave fault other than simulated slave faults. The job
will thus process all traps before specials. The return word in
a slave fault cell will always point to the location where the
fault actually occurred.
1.4.12 Traps from Squeezed MOde
When a job running in squeezed rrcde (see SQUEEZE, MME 500007 in
Chapter 3) receives a trap, special interrupt, or slave fault, it
is unsqueezed. The trap or interrupt takes place normally,
except tL,at the saved IC/IR is relative to the squeezed BAR, and
has bi t 35 (the squeeze bi t) set on to indicate this fact. Note
that the above sample trap-handling routine cannot be used by a
job which expects to be trapped fran squeezed m::x:1e, since the RET
instruction .will not "resqueeze" the job.

Page 24

Pub. 1059

Chapter 2
Specifications for Executive Ccmmands

The specifications for Executive commands are divided into three
sections:

a

brief summary of the parameters for and the status
returns from each ccrnmand;

o

detailed specifications for the nontrapping
ccrnmands;

o

detailed specifications for the trapping camrnands.

As descril:ed in Section 1.2, a slave job issues an Executive
carmand by executing a MME (master rrcde entry) instruction with

an address field specifying a legitimate ccrnmand; execution of a
MME instruction whose address field does not specirz a legitimate
canrnand will result in a MME fault.,
(A jcb receives a ",!ME fault

by having the current value of its IC/IR stored in location 4 of
its job me.'OC>ry and then having its IC reset to location 5.)
There is one exception to this rule: if the address field of the
MME instruction is exactly 100 (octal) greater than a ~lalid
trapping MME nt.m1ber I this is equivalent to issuing that MME
followed immediately by a PAUSE MME wi~~ a pause count of one.
Such MME I S are called 200 series, or pausing MME I s. The contents
of the slave job I S registers ufOn execution of a MME instruction
specify parameters relevant to the ccmrand.
Except in the case of a SQ:JEEZE or a ~ cararand, a slave
job will regain control at the location following a MME
instruction unless a fault, trap, or special interrupt was
generated as the Executive was precessing the camrnand. In the
case of nontrapping ccrnmands, the Executive will have ccrnpleted
processi.."'lg t.~e ccrnmand by t..l-}e time t..~e slave job regains control.

Pub. 1059

Page 25

SYS'IEM P:ocGRAMMING RE]iERE:Ol'X:E MANUAL

In the case of trapping commands, the Executive may not have
completed processing the command; instead, execution of the
corrrnand and of the slave job may continue in parallel, with the
slave job being trapped upon ccmp1etion of the command.
Numbers occurring in the specifications of this section can be of
tYtO types: octal and decimal. In general, numbers which can
occur as the contents of a register are in ectal; thus,
addresses, status returns, or special interrupt numbers are in
octal. Numbers which do notcccur as the contents of a register
are in decimal; for example, bit numbers and fractions of
milliseconds are given in decimal.

Page 26

Pub. 1059

~
•

}-J
0

_~.!.! __ t10!l~~"~I!~Hi_~!~~~~!.~c!_ Co 111111 !!!!1:!
COIllIIICl'ld

'1.0

I1HE

Xl

'1.2

Xl

XII

)(5

'1.6

'/.',

A

Q

Return

lJ1
1.O

Terminate
Set Timer
Running TltRC
Time of nay
Oale
Puu!le
Hellwl~y Ilcque:Jt
S'I'ICCZC
T 1me Slllet! Bootload
Pm"e
Job Tillie
l. 0 III! PaU3C
C loclc

Unu3cd
lJllu!Jcd
Enable

Acce!J3

50nOOt)

II
llound

Ie/lUI

H)

500011
500012
500013
500011i
500015
500016
500011

=

old

bin. A
ASCII AQ
ASCII AQ

500002
50000]
50000 11
500005
500006
50U001
5QOO

A

Time

SOOOot

Fil

nAn

X5::0 if ok

Ueg:J'

bin. A
X'/::O if ok
hi n . A

HI
U

Time
'fy pe

Ma:ll!

A

::

old

A

::

rC:lult

C
,';'-.~'" ;I.,;:~,.

~-.r¥G:~.,

m;~al

b'
L.,
L'(

.1.~

"0

~
(l)

N
00

Command

HHE

Open Scratch
Open

Old [raBe
Catalog
Uncatalog
Close
Ove"lay
Truncate
Scratch
Change Catalog Entry
Era!lc
Set Po inter
IlHad Catalog
Ileclucst Statu!}
Replace
Execute
lIun

·u
§.
•~
0

U1
\.D

Continuu
Pass
Alter Accesses
Change Catalog HAX
Old Reud Cat & Open
Provide DAs
Head Catalog & Open
Old Replal:e
Copy
Drive
Head
\Jr'l ta
lle:Jet Status
Tally Opeu
Tally E.'ase
Tally lleplace
Tally Cat.alog
Log
Iluplicate

•

lndleate~

500100
500101
500102
50010]
'j00 1011
50010'j
500106
50010'1
500110
5001 11
500112
500111
500 I 11,
500115
500' 16
500111
500120
500121
500122
50012]
50012 1,
500125
500126
500127
5001]0

;
Ul

,2 . ~ ___![~~P_!.')lLJ~~£~t:.~~_~01ll1~~~1:!
XO

I'll Cal

I'll Cat

fR Cat

Xt
Hamel
Hame'
UaUle l

X2

X3

FR

Pass·
Pass'
I)as!}·

' X'I

X5

Access
Access

Pref

Access'

I'll

FR
Fl as btts

I'll
fU

FU
fll
I'll Cat
fll
Fll Cat
fU
Fit Cat
I'll

Uame'
tj;uIle •

Access·
Trap ma3k

Pas::}'
Zero fa!}3"

HI'

H2'

Hamel
Sur

H2·
Pass·
Typo
Type

fit

FU
fR Job

S<}J'

I'll Job

H:3g 1

I'll

HII

H211
H21
Ze,"o ti21
Pa.3s 1
fR
fll2 H21

Trap masle
L1m i Ls
l.lmits
llrnlts
Access
Aocess

fll
I'll Cat
Fil Cat

FR
I'll

FU Cat

5UU1Jl fnl
5001J2 FU
500t13 I'll
50011 "
5001]5 Fn
5001]6 I'll Cat
50013'1 . Fn Cat
500t'I0 fll Cat
5001'11 fll Cilt
5001112 Zero
5001'1"1 FIf

H11
Uame l
H

,I

Aoce:}s
Access

H2·
H 1·

FII

Tally'
Tally·
Ta 11 y.
Ta 11 Vi

HP

Zero FIl Alt
Zel"o r:n Alt
f"U
Fit Alt
Fil
fll All
Zero le,'o

lCI'o

Ztll'O

pOillter to \-10,'<1 containing pa.' amete,'

Z~ro

Cat
Cat
Cat
Cal

flag bits
Flag bits
Flag h1ts
1'1 ag bits
flag bits
Access
Trap mask
Trap lOask
Auce3s'
flag hit:}
Acoes!l

X6

Trap'
Trap'
Trap'
Date l
Trap'
Trap·
Trap·
Trap·
Trap'
Trapl
Oate"
Trap·
Zero
Trap'
Trap'
Trap'
'TI'ap"
Trapl
Zero
l.lsl·
Trap'
list'
Trap'
Trap·
Pref
Trap·
Trap'
It'ap'
Cod Date
Trap'
Trap'
Date'
Trap·
Trap'
Trap'
T.. ap·
Trap'
T.'ap·
Trap'
last Name' Trap·
last Name l Trap'
last Name' Trap·
last NLime l Trap·
Zcr'o
Trap·
l,'ap·
Ze.'o

X1

H

A/Q

.. at HAX
Slave trap 1. D.
Slave trap 1. D.
Com file special

neg'
length
N
UI
N'

Slave trap 1.1>.
Po1nter

Slave trap l.ll.
neg' Timel Acc
neg l Timel Acc
Time
HI

N

U'

U·
N'

Cat HAX
Slave tral) I. o.
Slave trap 1. D.
Slave trap I. D.

U'

NI
U'

function

Zero Slave trap I. D.
Zero Slave trap 1.0.
ZtH'O Slave trap I. l) •
nate l
NJI

Zer'o

~

~

~

2 - SPECIFICATICNS FOR EXEOJI'IVE (X'tylMANLS

2.3 Trap Block Format

o
Status
Status
Return

~rd
~rd

1

17 18
3S
Status
(File Reference Number)
(Length or Counts)
IR

8 9

(Access)

2

~rd

Ie

Trap Routine

Access

(bi ts 0-8 of status word 1)
access error (status 100), gives the access bit
needed for successful completion of the ccmmand.

(1)

On

(2)

On OPEN, ALTER ACCESSES, DUPLICATE, and REPLACE,

gives the access wi~~ the file is open or could
have teen opened.
(3)

On RUN, EXEaJI'E and CCNrINtJE, gives termination
access of infra job.

(4)

On DRIVE

(5)

Zero in all other cases.

Status

with

ocw' s,

gives record count residue.

(bits 9-17 of status word 1)

. rA.ajor status (see individual trapping EXecutive camnard

descriptions) •

Pub.lOS9

Page 29

2.4 Summary of Status Returns
ALTER ACCESSES

o
1
2

Successful
Partial success
File closed

$i2= Length of file

o
1
2

3

4
13

o
1
2
3
4
6

7
12

13
14

Successful
Illegal trap protection
Duplica te entry in catalcg
File not a scratch file
File preference too low
Illegal usage or dates

Successful
Illegal trap protection
Duplicate entry in catalcg
File r~t found
Protection violation
Bad tree name
Fetch error
Format error
Illegal usage and dates
File preference too low

SW2= Substatus/character count and position {if status is 12}

o
1
2

3

13

Successful
File not cataloged
DL~licate file name fourd in catalog
Illegal trap bi ts
Illegal usage and dates

Page 30

Pub. 1059

2 - SPECIFICATIONS FOR EXEC!.1rIVE

o
1

Successful
Rejected: specified MAX is less than current

~

MIX:,

CLCSE

o
6

Successful
Communication file busy

COPY/READ/WRITE/READ CATALCG/REQUEST STATUS/READ CATALCG Al'ID OPEN

o

14

All words transferred
Source file exhausted
Destination file exhausted
Command inappropriate for state of ccrnmunication file
Source file pointer out- of bounds
Destination file pointer out of bounds
Communication file busy
Master end of communication file not accepting special
interrupts
State vector full (REll..D CATALCG AND OPEN only)

SW~=

Number of words transferred - number requested

1
2
3

4
5
6

7

DRIVE

o
1
2
3

6
7
10

Successful
Not all data transferred
Destination file exhausted
Command inappropriate for state of communication file
Communication file bUS1·
Other end of cornrnunication file not accepting special
interrupts
Bad CCW (Drive Type 24 only)

SW2= Device status on device file drives

Pub.1059

Page 31

LCG

o
1
2
3

Successful
Rejected: log already outstanding
No log buffer available
Escape sequence error

OPEN~RASE/REPLACE/rALLY

o
1
2

3

4
5
6

7

10
11
12

OPEN/l'ALLY ERASE!rALLY REPLACE

Successful
Partial success
Lockout
File not found
Protection violation
Fail
Bad tree name
Fetch error
Off-line file
Rejected: specially cataloged files (device files) 'cannot
be renoved fran catalcgs (ERASE arrl REPLACE only)
Format error (TALLYMMEfs)

S'W2=' Length of file or catalog

~!AX (zero on ERASE) or
substatus/character count and position
(if status is 12 on TALLY Mo1Es)

OVERLAY

1

2

Rejected: operation outstar.ding
Rejected: file teo long ,

PASS

o

Successful: message, if any, was read

2

Message not read

SW2= Number of words read - number of words in message

Page 32

Pub. 1059

2 - SPECIFICATIONS FOR EXECU"TIVE CG1MANI:S

RESET srAWS

o
1
6

7

o
1
2

5

6

Successful
Reset status already in progress
Communication file busy
Master end of communication file not accepting special
interrupts

Job terminated
CRU limit exhausted
Job at:orted
Error in run list
Swap error; job terminated

SW2= CRDs constnned by jcb
TRIJNCATE/SET POINTER/SCRATCH

o
1
6

7

Successful
Length teo long or f:Ointer out of l:our:ds
Communication file busy
Master end of ccrnmunication file not accepting special
interrupts

SW2= Length of file - length requested (if status is 1

on

o
1

TRUNCATE)

Successful
File not cataloged

Pub. 1059

Page 33

Page 34

Pub. 1059

Chapter 3
Nontrapping Executive Ccmmands

This chapter contains detailed specifications for all nontrapping
commands (in alphabetical order; for a list sorted by number, see
Section 2.1).
CIcek ••
Date

Enable
Job Time

Long Pause
Memory Request
Pause • • . •
Pure • . • • .
Running TiTre
S~t.

Timer •

Squeeze . • •.
Terminate •••
Time of Day ••
Time Since Bcoticad •

Pub. 1059

MME 500014
MME 500004
MME 500017
~lME 500012
MME 500013
MME 500006
MME 500005
MME 500011
MME 500002
MME 500001
MME 500007
MME 500000
MME 500003
MME 500010

Page 35

3 - NCNI'RAPPnK; EXEct7I'IVE

MME 500014:
A

CQ.1MANDS

CLOCK

Tim:

The CLOCK ccmrnand enables a job to receive an execute fault
(real-time timer runout fault) after a specified amount of real
time has elapsed. If no CLOCK canmand is issued, or if a CLOCK
conmand with an argument of zero is issued, then no real tim:
timer runout fault will cccur. A CLOCK canmand with a nonzero
argument sets a real-time timer for the issuing job; ~'is timer
decrements continually, and a real time timer runout fault occurs
when it reaches zero (if the issuing job happens to be roadblocked at this time it will be unroadblocked to receive the
fault). After a real ti.rre timer runout fault has occurred, the
real-time timer is disabled, and no further such fault will occur
until a new CLOCK canmand is issued.
Tirre is a 36-bi t integer which is decremented 64 times per
millisecond, thus accurate to the nearest 15.625 microseconds.

Since it is r:cssible for a job to be swapp:d out of rne.rrory when
its real-time timer reaches zero, the Executive cannot guarantee
that a job will be restarted as scan as its real-time timer runs
out. It can guarantee only that the job will receive an execute
.fault the first time it regains control ,after its real-tL~ timer
runs out.
A job receives an execute fault by having its current Ie and IR
stored in location 36 of its job rne.rnory and then having its Ie
reset to 37.
w11en a CLOCK carmand is issued, the old value of the job J S
real-t~~ timer is returned to the A-register.
Note: A CLOCK canrrand with a zero argument will not prevent an
execute fault from cccurring if a previously set CLOCK has
already run dcwn.

Page 36

Pub.I059

SYS'IEM PRCGRAMMING REF.

MME 500004:

~.NUAL

DATE

DATE

No argtnnents

DATE loads the ASCII date in the standard format "m:>nth/day/year"
into the AQ-registers, e.g. 03/13;73.

Pub.1059

Page 37

ENABlE

~

3 - NONrRAPP:m:; EXECUTIVE CCM-1A..1\lDS

500017:

ENABLE

A

Desired setting for job type bits rrasked by Q (bi ts 0-8)

Q

Mask for job type bits to set or reset (bits 0-8)

The job type of a running job consists of tv;o 9-bit quantities:
the perrrdssions allowed for the job and the permissions for which
the job is currently enabled.. These permissions are as follows:
Bit Function

o

Monitor permission (affects scheduling only)

1

Core Residence permission

2

Large State Vector permission (permits a state
vector with nore than 64 files)

3

Special Catalcg· pennission (allows a job to
specify infinite catalog MAXes, and to estimate
the number of entries when creating a catalog)

4

Load-Dump permission (allows preallocaticn of
scratch files)

5

Priori ty Scheduling (PW)

6

Crash (allows

7

leg (allows job to do MME reG)

slav~

job to abort system)

In addition the load-dump permission suppresses quota checks
involving catalcg MAXes, enables the PIDlIDE DEVICE ADDRESSES
provides device addresses in the ~.D CATALCG AND

carmand, ar.d

OPEN FILES canmand ..

When a jcb is run, bits 0-8 of index register X3 on the PJJN

comnand are ANDed with the job type bits allowed to the issuing
job to form the permissions allcwed to the infra job. The only
permissions which are enabled on the run are Large State Vector

Page 38

Pub.1059

SYS'IEM

P~.MMING

REF. Mn.NUAL

ENABLE

permission, Priority Scheduling, Crash, and Leg; all other
permissions must be enabled by the ENABLE ccmrand.
When an ENABLE canrnand is issued, only those permissions
corresponding to bits for which there are ones in the Q-register
are affected. Each such permission is enabled if it is allowed
for the job. wnen the job regains control, the correSFQnding bit
in the A-register contains the current state of all permission
bi ts that were affected.

Pub.I059

Page 39

JCB TIME

MME 500012:

3 - NONTFAPP:m; EXECUrIVE CCM-1ANDS

JOB TIME

No argt.nnents
The total running tine (CRU's) for the issuing job is loaded
right-justified in the A-register; running times for jobs running
below the issuing job are not included in the total. The running

tim: is in timer units of 1/64 milliCRIJ.

(See also

~'NING

TIME. )

Page 40

Pub. 1059

SYS'IEM PRCGRAMMING REF.

~

xs

500013:

~..NUAL

r.ax; PAUSE

LONG PAUSE

Number of traps

LC't-X3 PAUSE is identical in effect to PAUSE. LONG PAUSE should be
used in place of PAUSE when the issuing job does not expect to be

. restarted while residing in main m:rrory. For example, it should
be used when awaiting a wake-up special interrupt or when pausing
after issuing a READ on a terminal carnmunication fi1e~
.

Pub. 1059

Page 41

MEMORY REQUEST

r+!E 500006:
XS

3 - NCNTFAPP:rn:; EXECUTIVE CClwMl.NDS

MEMORY REQUEST

Upper tremory limit

MEMORY REQUEST causes the BAR for the issuing job to be extended

or compressed so as to allow a maximum valid address of N-l,
where N is the least nonzero multiple of 1K (1024 words) greater
. t.~an or equal to the specified upper meIlX)ry limit. The new BAR
will be in effect when the job regains control. Memory obtained
will be zeroed out; memory released is lost.
If the command is successful, then XS will be zero on return. If
the requested memory is not available, t.'1en the amJunt that is
available will be returned in XS and another MEMORY REQUEST can
be issued to obtain this amount. If a job has previously issued
a PURE cannand, then any MEMJRY REQUEST which would release
memory containing pure procedure will be rejected, and the least
amount of memory for which a memory request will succeed will be
returned in Xs.
If the job's Ie is no longer wi ~,in the range of the new BAR
after memory is released, then a ma~ry fault will occur.
The axrount of rneIIOry that can be requested by a job is lirni ted by
the Olrrent system lirni t on rnaxim..nn rnerrory length and by the
memory limit imposed by the supra job in X4 of the RUN or
CCNI'INUE ccmnand which ini tia tea the job.

Page 42

Pub. 1059

SYS'IEM PRCGRAMMING REF. MANUAL

MME 500005:
X5

PAUSE

PAUSE

Number of traps

PAUSE causes the issuing job to be roadblocked until N traps, one

special interrupt, or one real-time timer runout fault has
occurred. If an N greater than the number of outstanding
trawing executive connnands is specified, then an N equal to the
number of outstanding trapping executive commands will be
asst.nned. If N is zero, the job will be roadblocked and will
restart as scan as there is an interrupt, trap, or fault. The
job will be restarted in a fault cell or trap block with the
location after the PAUSE command in the return address.

Pub. 1059

Page 43

PURE

3 - N:NTRAPPING EXECtJrIVE

MME 500011:

C~

PURE

XO

File reference number of source file for pure procedure

XJ

Points to length N

if no
location in that segment is ever altered during -the execution of
the job. The PURE comnand indicates that the issuing job
consists of pure procedure from word 100 to word N-l if X7 is
nonzero ,or that the issuing job contains no pure procedure if y;]
is zero. This PURE facility is designed to avoid the necessity
of swapping and restoring common packages of code.

A segment of job rnerrory is said to contain "pure procedure"

Any error in the parameters for

~~e PURE command will cause the
carrnand to be rejected and X7 to be nonzero on return. The
length N must be a multiple of 100 and must be less than or equal
to l:oth the current length of the issuing job and the length of
the source file specified in XO. The file specified in XO must
be q::en wi~~ Read permission.-

If a PURE carrnand with a nonzero value in X7 is successful, then
a zero will be returned in X7. On subsequent swaps of the job,
words 100 to N-l will not be swapped, but will be restored fran

the source file specified in Xo. This file will remain busy as
long as the PURE command is in effect.

If a job does not issue a PURE ccmmand, it will be assumed to
contain ro pure procedure. A job which is running with pure
procedure can at any fOint declare itself impure by issuing a
PUBE cannand wi th XJ zero or by issuing a RESET STATUS on the
source file for the pure procedure. Ei ther of these two actions
will cause subsequent swaps to occur normally and will allow
access to the source file for pure procedure.
Copies to and fran the pure region of a job file will be al:orted
if they occur TNhen that job file is swapped out of main rnerrory.

Page 44

Pub. 1059

SYSTEM PRCGRAMMING REF. MANUAL

~

500002:

RUNNING

RUNNING TIME

T~

No arguments

The total running tirre (CRO's) for the issuing job and all jobs
running i::elow it is loaded right-justified in the A-register.
The running tirre is in timer units of 1/64 milliCBIJ. (See also
JOB TIME.)

Pub. 1059

Page 45

SET TIMER

MME 500001:
A

3 - NCNI'PAPP:m3 EXECGTIVE CCMMANDS

SET TIMER

Tirre

The SEI' TIMER command enables a job to receive a timer runout

fault after a specified amount of precessing. This timer
decrements only when ~,e job is actively running or doing I/O,
and a tim:r runout fault occur s when this timer reaches zero or
beccm:s negative. If no SET TIMER caTnlEI1d is issued, or if a SET
TIMER carmand wi th an argument of zero is issued, then no timer
runout fault will occur. A SET TIMER command with a nonzero
argument sets a timer for the issuing job. After a timer runout
fault has cccurred, the timer is disabled, and no further timer
runout fault will occur until a new SET TIMER command is issued.
When a SET TIMER canmand is issued, the old value of t..~e job IS

tirner is· returned in the A-register.
When a SET TlMER camnand is issued, the old value of t..i1e job t s
t~~r

is returned in the A-register.

A job receives a timer runcut fault by having its current Ie and
IR stored in locationlO of its job memory and then having its IC
reset to li.

Page 46

Pub.1059

SQUEEZE

MME 500007:

SQUEEZE

X4

Points to IC/IR

X5

BAR

X7

Points to registers

The SQUEEZE command enables a slave job to simulate a master mode
prcgram by setting a pseudo base address register. SQUEEZE
causes the BAR for the issuing job to be changed to resemble the
BAR specified in XS, where the format of the BAR in XS is as it
~uld t:e if the slave job were l:eing executed in master m::de.
For example, to squeeze a job so that address 2000 becanes a and
the upper memory limit is 6000 (i.e. 6000 above the base of
2000), ~~e BAR in X5 would be 002006.
After the BAR has been changed, the registers are loaded by an
LREG instruction from the location pointed to by X7, and a RET
instruction is executed through the' specified IC/IR. If a fault,
trap, or special interrupt occurs while tl1e job is in the
squeezed m:de, the BAR is unsqueezed and the fault, trap, or
special interrupt takes place no~ally with bit 35 of the saved
IC/IR in the trap or fault cell set to 1.. Thus a. squeezed job
can r:ever call the Executive since all MME faults will Ce
returned to the unsqueezed job. All Inem:)ry outside of the
squeezed BAR is retained and beccrnes available again after the
BAR is unsqueezed.
If any of the parameters in a SQUEEZE command are out of range,
then .the command will be igoored and the next instruction in
sequence will be executed.

Pub.I059

Page 47

3 - NCNrRAPPnx; EXECUrIVE Ca.t1ANDS

Mt1E 5 00000 :

X4

TEFMINA'IE

Termination access

~TE causes the termination of the issuing job and all jobs

running l:elow it. All files open for the job are closed and, if
the return bit is set in their access, returned to the supra job.
If the supra job is accepting specials, then a special interrupt
type 5 (returned file) is generated for each returned file. Upon
termination, a job's remaining scratch and catalog word
allotments are added to the corresponding allotments for the
supra job.
On a roonal pro:;rarn, the termination access specified in X4 is
returned in bits 0-8 of status word 1 in the trap for the RUN or
CCNTINUE corrmand which ini tiated the job. On a trap pro:;rarn
protecting a catalcged file, the access in X4 will t:e t.~e access
permi tted for tJ.'e opened file.
.

Page 48

Pub. 1059

SYSrrEM PRCGRAMMING REF. MANUAL

~

500003:

TL~

OF DAY

TrnE OF DAY

No arguments
The ASCII tim: of day in the stamard format

"hours:minutes:seconds" is loaded into the AQ-registers, e.g.
20:15:45.

Pub. 1059

Page 49

· TIME SINCE EO::1rLOAD

lvf.1E 500 010 :

3 - NONTRAPPm:; EXECOI'IVE CCM-1ANDS

TIME S:m:::E BcortOAD

No arguments
The time since system boatload is loaded tight-justified into the
A..;.register in timer· uni ts of 1/64 millisecond. This time is not
affected by the operator I s entering, the. time of day.

Page .50

Pub. 1059

Chapter 4
Trapping Executive Commands

This chapter contains detailed specifications for all trapping
commands (in alphabetical order; for a list sorted by number, see
Section 2.2) •
MME 500123

Alter Accesses
catalog • • • • • • • •
c.'1ange catalcg Entry • •
Change catalog Max
Close ••
Continue • • • •
Copy

r-!ME
MME

MME

MME

....

Scratch •••
Set Pointer • •
Tally catalog •

Pub. 1059

MME
MME
MME
MME

MME
MME

OE=en · · · · • • • ·

.....

500143

MME 500112

Old Erase •
Old Read catalog ar:d Open Files • •
Old Replace • •

~

500121

MME 500131
MME 500132

••

Op:n Scratch
OVerlay • • • • • • •
Pass •• • •
Provide Device Addresses •
Read • • • • • • • • • • •
Read Catalog • • • • • • •
Read catalcg and Open Files
Replace • • • •
•
•
Request S ta tus
Reset Status

500124

MME 500105

Drive ••
Duplicate •
Erase ••
E!xecute • • • • • • • • •
~

500103

MME 500111

• • •

MME
MME
M-1E
MME

•
• • • •
• • •

MME
MME
MME
MME
MME
MME

MME
MME
MME
MME

500117
500142
500102
500125
500130
500101
500100
500106
500122
500126
500133
500114
500127
500116
500115
500135
500120
500110
500113
500141

Page 51

Tally Erase . .. ..
Tally Open ....
Tally Replace .. .
Truncate
Uncatalcg ........
write .. • .. .. .. .

Page 52

MME 500137
MME 500136
MME 500140
MME 500107
MME 500104
MME 500134

Pub. 1059

ALTER ACCESSES

MME 500123:

AL'IER ACCESSES

xo

File reference number of cataloged file/catalog

X4

Access

X6

Trap location

to

retain on file/catalog (bits 0-8)

Any accesses present on the specified file/catalog which are not
sp:cified in X4 are relinquished. Any accesses specified in X4
and not present on the file/catalog will be granted if they fHQuld
have b:en allo"Wed at the time the file/catalog was opened, and if
they do not conflict with accesses currently held by other jobs
having the given file/catalog open. If all accesses present on
the file/catalog are relinquished, then the file/catalog THill be
closed; i.e. its file reference number will became invalid (cf.
CLCSE) •.

Upon completion of the ccmmand, a trap occurs to the location
specified in X6. Bits 0-8 of status w-ord 1 contain the access
bits remaining on the file/catalog.
Status word 2 contains the current length/MAX of ~~e file/
catalog. Note that this may not be the same as the length given
when the file/catalog was originally opened if another job has
modified ~~e file/catalog.
Status Returns

o

Successful: the accesses in bits 0-8 remain and are
the same as those requested.

1

Partial success: the accesses in bits 0-8 remain but
differ fran those requested. This status return can
occur if X4 contains an access bi t I"'~t previously
present or if bit a of X4 is a (is l)·and the
file/catalog is a catalog (is a file).

2

File closed: all accesses present were relinquished.

Pub. 1059

Page 53

ALTER ACCESSES

4 - TRAPPTh:'G EXECCJrIVE CCMMANDS

120 Busy: another operation is outstarrling on the
file/catalcg.
200 XO parameter error: XO does not contain the file
reference number of a cataloged file/catalog. .

Page 54

Pub. 1059

SYSTEM PRCGRAMMING REF. ~

~

500103:

CATALCG

CATALCG

xO

File reference number of catalog

Xl

Points to name of scratch file/catalog to be cataloged

X2

File reference number of file/catalog to be cataloged

X3

Points to password or to

X4

Points to access word

X5

Points to usage information or is zero (load-dt.m1p enabled
jobs only)

X6

Trap location

narr~

of trap program

The scratch file/catalog specified in X2 is entered in the
catalog indicated in XO with the specified name and protected by
the specified password or trap program. If bi t 18 of the access
~rd is 0, then X3 t=Oints to a password; ot.'ertlise X3 r:oints to
the name of a trap program. The catalog specified in XO must be
open with Append permission. The scratch file/catalog must not
have the return bit set in its access word.
If the job issuing t..'e CATALCG MME is enabled wi th Load-DUmp
permission, and if XS is non-zero, then X5 points to two wurds of
usage information to be placed in the catalog entry. The first
of these ~NO words contains an integer in the up;:er half, which
is used to set the file I s days-used counter (see Chapter 9). The
lower half of the first word contains type information or is
zero. Type information has the following format:
Bits

Meaning

18-20

Must be zero

21-28

Variable information, not checked by Executive

29-31

Must be zero

32-35

File type

Pub. 1059

Page 55

CATALCG

There is currently only one allowable file type, which is
"off-line" (14 octal). Files to be cataloged with this type must
have ro physical storage asscciated with them (zero length; no
device addresses) .
The upper half of the s€o:)nl word contains a coded date used to
initialize the file's Date Last Used attribute. The lower half
of the same word contains a coded date used to set the filers
Date Last Mooified attribute. If the job is not Load-Dump
enabled, or if XS is zero, then the days-used count is set to
zero, and the date-last-used and date-last-meXiified are set to
the Olrrent date. A ceded date contains in bits 0-8 the binary
representation of the year (modulo 100), in bits 9-12 the binary
representation of the rront.' (JAN=l, DEC=12) '" and in bits 13-17
the binary representation of the day of the month.

The Executive sets bi t 0 of the access word to zero if the
file/catalog eeing catalcged is a file and to one if it is a
ca talog. (For further details on the catalog access word consult
the p.lblication "File Access arrl Protection".) The catalog
structure is described in rrore detail in Chapter 9.
A job which successfully catalogs a scratch file/catalog has its
scratch word allotment incremented by the leng~, of the file or
of the catalog header. At the same time its catalog word
allotment is decrerrented by ~,is quantity and also by the le~th
of the entry created in the catalog.
Upon completion of the ccmmand a trap occurs to the location
specified in X6.
Status Returns

o

Successful.

1

Illegal trap protection request: a master trap
protection bit which is not allowed to the issuing job
has been specified.

Page 56

Pub. 1059

SYS'IEM PFCGRAMMING REF. MANUAL

2

An entry wi th the given name is already in the catalcg.

3

The file/catalog is already catalcged; i.e. it is not a
scratch file/catalcg.

4

The file/catalcg specified inX2 has a preference of 0,
1, 2, or 4, and may be catalcged only in a core
catalcg.

13

Illegal usage an:1 dates: illegal type or extraneous
bits specified in usage word pointed to by XS.

40

Quotas exceeded:

60

ei ther

(1)

catalcging the file/catalcg would cause the
destination catalog's allocated storage to a~ceed
the permissible MAXi or

(2)

The length of t..l,e file or of the catalog header to
1::e catalcged exceeds the job r s remaining catalcg
~rd allotment.

OUt of storage, for one of three reasons:
(1)

The catalcg is full:
(a)

It already has 4095 entries; or

(b)

It is not possible to append to the catalog
since it either is a main-merrory catalo; or
is already allocated in twelve fragments; or

(2)

The Executive could not allocate sufficient
storage for a required expansion of the catalog;
or

(3)

The Executive r s table of opened files is full.

100

Access error: the catal~ is not. open wi th Append
p:rmission; bits 0-8 of status word 1 contain the
missing permission bit.

120

Busy: another camnand is outstarrling on ei ther the
catalcg or the file/catalog to be catalcged.

Pub.lOS9

Page 57

CATALCG

4 - TPAPPING EXEC!1rIVE CCMMANDS

200

XO parameter error: XO is zero or does not contain the
file reference number of the catalog.

220

Xl parameter error:
l:our:ds.

240

X2 parameter error; either:

the pointer to the name is out of

(1)

X2 does not contain the file reference number of a
scratch file/catalog,

(2)

The scratch file/catalog had the return bit set in

its access word (see the description of the
EXEcorE ccrnrnand), or

(3)

X5 points to usage info~ation specifying a file
type of off-line but the file has device addresses
allocated (see Chapter 9).

300

X4 parameter error: ei ther t..~e p::>inter to the access
word is out of rounds or the access word contains
extraneous bi ts.

320

xS parameter error: the job is er.abled with load-dtnTlp
permission, and the pointer to the coded dates is out
of rounds.

400

Recoverable error:
catalog.

420

Unrecoverable error:
eeen destroyed.

Page 58

an error occurred in reading the
information in the catalog has

Pub. 1059

SYSTEM PRCGR..n.MMrNG REF. MANUAL

~

500111:

CHANGE CATALCG ENTRY

CHANGE CATAI.CX; ENTRY

xO

File reference number of cataloged 'file

Xl

Points to new name or is zero

X3

Points to new password or is zero

X4

Points to new accesses or is zero

X5

Points to new usage infot1lE tion or is zero (load-dump
enabled jobs only)

X6

Trap location

The crn MME attempts to alter information in the catalog entry
(file Q:)ntrol block) of a cataloged file. XO contains the file
reference number of the file whose entry is to be changed. The
file rust be catalcged, and the job must be able to obtain Read,
Wr i te, and Append permission on the file us ing the ALTER ACCESS

MME.

.

catalog e.'1tries are descri1:ed in sore detail in Chapter 9.

If XC contains a valid file reference number, the Executive
attempts the followdng changes to the catalog entry of ~~e file:
(1)

If Xl is nonzero am t=Oints to b¥O valid merrory
locations, the b¥o ~rds FOinted to will beccme the new
name of the file. If the first nine-bi t character is
not a null, all lowercaSe alphabetic characters will be
rnafPed to uppercase.

(2)

If X3 is nonzero ar.d .points to two valid rnemJry
loca tions, the t~ words FOinted to will beccme the new
password or slave-trap prcgrarn name. If the first
nine-bit character is not a null, all lowercase
alphabetic characters will be mafPed to uppercase.

(3)

If.X4 is nonzero and points to a valid memory location,
the ~rd in that location will beccme the access word

Pub. 1059

Page 59

4 - TRAPPING EXECUI'IVE

C~

for the file. If this word contains trap bits which
the issuing job does not possess, the MME is rejected
with a status of 3. The file/catalog status of an
entry cannot be changed, and any attempt to do so will
be ignored.
(4)

If a jOb is Load-CUmp enabled, and if XS is nonzero and
p:>ints to two valid IIlelrory locations, those t~ words
contain the new usage information for the file. The
format of these two words is exactly the same as those
pointed to by XS of the CATALCG MME.

Upon completion of the ccmmand, a trap occurs to the location
specified by X6.
Status Returns

o

Successful: the catalog
all changes indicated.

1

File not cataloged: the file specified by xO is a
scratch file or has been uncataloged.

2

Duplicate file name: the catalog in which t..,is file is
located contains an entry whose name is equivalent to
the one pointed to by Xl.

3

Illegal trap bits: the access word pointed to by X4
Sf:€Cifies trap bi ts which the job does not possess.

13

Illegal usage am dates: illegal· type or extraneous
bits specified in usage word p:dnted to by XS. Either:

Page 60

ent~J

for the file reflects

(1)

The date last used was zero,

(2)

The file is not a regular cataloged file/catalog I

(3)

The file was passed with the return bit set (see
the description of the EXECUTE camrnand) and is
being changed to an off-line file, or

Pub. 1059

CHANGE

(4)

100

CAT..~

ENTRY

The variable information 'Has sp:cified in bits
21-28 of the first word pointed to by XS, but the
file is not being changed to an off-line file.

Access error:

job could not have altered access for

RWA.

200

XO parameter error: XO does not contain the file
reference number of a cataloged file or catalog. This
status is also returned if XO specifies a file which
has a nonzero length or which has storage allccated to
it arrl X5 feints to a type word specifying a typ: of
"off-line" •

220

Xl parameter error:

pointer is out of

260

X3 parameter error:

E=Ointer is out of rounds.

300

X4 parameter error: X4 is out of rounds or feints to
access word containing unrecognized bits.

320

X5 par2ITleter error:

400

Recoverable error:
catalC9.

420

Unrecoverable error:
during the MME.

Pub. 1059

bour~s.

pointer is out of rounds ..
an error Cccurred in reading the
the file was being uncatalO:ted

Page 61

M4E 500124:

mANGE CATALCG MAX

xo

File reference number of catalog

X6

Trap location

A

New MAX for catalog

XO cootains the file reference nLUnber of a catalog for which the
job would t:e able to obtain Read, Wr i te, and Append accesses via

the ALTER ACCESS MME. The previous MAX for the specified catalcg
is replaced by the new value, which becomes the new maxinn..tm
number of w:)rds which can l::e cataloged in that catalog. A
negative MAX sets this maxim.lm to infinity and can t:e sp:cified
only by those jobs enabled with the special catalog permission.
Likewise only such jobs may set the MAX for a catalog below its
current AI.J:X:,.
AJ.JX:.' s and MAX's are descri1:ed in Chapter 9.

Upon completion of the command a trap occurs to the location
specified in X6.
Status Returns

o

Successful.

1

Unsuccessful: the specified MAX is less than the
current AT..IX:, for the catalog and the job is not enabled
with the Special catalog permission.

40

CUotas exceeded: the catalog is cataloged elsewhere
and the new MAX would cause the supra catalog's storage
(ALCC) to exceed its MAX.
.

100 Access error: the maxirrum accesses which the job could
obtain on b.'e catalog do not include Read I. Wr i te, and
Append.
.
120 Busy:

Page 62

another operation is outstar.ding on the catalog.

Pub. 1059

CHANGE

c.~TALCG

MAX

140

A-register parameter error: the job is not enabled
wi th the Sp:cial Catalog permission and is specifying a
negative MAX.

200

XO parameter error: XO does not contain the file
reference number of the catalog.

400

Recoverable error: an error cccurred in reading or
writing the catalog or the one in which it is
catalcged.

420

Unrecoverable error: information in the catalog or in
the one in which it is cataloged has teen destroyed.

Pub. 1059

Page 63

MME 500105:

CLOSE

xo

File reference number of file/catalog to close

X6

Trap location

.A

Special word for canrnunication file

The command CLOSE closes the file/catalog and invalidates the
file reference number assigned to it.
If the return bi t is set in the access word of the file/catalog,
then the file/catalog is returned to the job which passed it,
generating a special interrupt nlm11:er 5 (returned file). If it
is a scratch file/catalog ar.d the return bi t is not set in its
access ~rd, then it disappears from the system and the job's
sera tch storage allotment is incremented by the len9th of the
file or of the catalog header which disappeared.
If the master end of a camrnunication file is closed, or if a
slave end to which the communication file was passed wi~,out the
return bit is closed, then a special interrupt of type 6 (file
closeei) is generated at all other ems of the file. The data
word of this special interrupt is equal to the contents of the
A-register of the closing job at the time of the CLCSE MME. The
file reference number at the end issuing the CLOSE becomes
invalid, and the file reference numbers at all other ends became
invalid parameters for all MME's except CLOSE and RESET STATUS.
If a suspended job file is closed I ~~en that job and all jobs
below it are terminated (see the description of the EXECUTE
ccmnand for a description of suspended jobs). All files OJ;En for
these jobs are closed; if the return bi t is set in the access
word of a file/catalog open for any job being terminated then the
file/catalog will Ce passed back up to the terminating job IS
supra job. If the supra job is accepting specials, each returned
file will generate a special interrupt number 5 (returned file) .
The job issuing the CLCSE will also have its scratch and catalog
word allotments incremented by the remaining allotments for the
jobs being terminated. Status word 2 on the trap of the CLCSE
will contain the CRU usage accumulated by the closed job file and

Page 64

Pub. 1059

SYSTEM PRCGRAMMING REF. MANUAL

all jobs which ran below it, in uni ts of 1/64 rnilliCRIJ.
description of the ~ command.)

(See the

If a terminated job file is closed, no special action is taken,
but status word 2 will contain the CRU usage for that job and all
jobs which ran below it.
Upon completion of the command a trap occurs to the location
specified in X6.
Status Returns

o

Successful.

6

Communication file busy: the file is a communication
file on which an operation is outstanding.

120 Busy: ei ther a command is outstan:1ing on the
file/catalcg or the file/catalcg is passed to another
job ..
200

Pub .. 10S9

XO parameter error: either XO is zero or it dces not
contain a valid file reference number.

Page 6S

CONrINOE

~

4 - TRAPPING EXECUI'IVE Ca.1MAJ.'1I:S

500121:

CCNTINUE

xo

File reference number of job file .

X4

New memory limits or zero

X6

Trap location

A

Additional CRU limit for job

This ~ restarts and runs jobs which have been suspended
because:
(1)

The job exce€ded its allotted CRr.J usage;

(2)

The job encountered a fault vector al:ort; or

(3)

The job was stopped by a RESEr STAWS.

The A-register will contain ~,e amount of additional CRUs that
the jcb can consume (in 1/64 milliCRO). A negative value
indicates there is no limit on CRIJ usage. Any jobs which were
rurning below the supra job and whose execution was suspended as
a result of the supra job's being suspended, are also restarted.
If X4 is ronzero, then the maximum artX)unt of main rnem:>ry that t.'1e
spawned job can request is reset to the minimum of the arrount
specified in X4 and the arrount allowed to the spawning job. If
X4 is zero, this limit remains the same as it was before.
A trap occurs to the location specified in X6 whenever the
addi tional CRUs allotted to the job are exceeded, when status are
reset en the job file, or when the job 'terminates or al::orts.
Status word 2 on this trap contains the total CRU usage
accumulated by the spawned job and any jobs which ran below it.
If. the trap cccurred because the job was suspended (for the
reasons listed al:ove) , the job may be restarted by another
CCNI'INUE ccmnand. If the job terminated, however, anot.'er

Page 66

Pub. 1059

SYSTEM PFCGRAMMING REF. MANUAL

CCNTINUE

QJNTINOE may not be issued. A program can reccgnize a terminated
file by its length, which is always zero, (this can be verified
by a REQUEST STATUS CC£11It'a!1d), whereas the length of a suspended
job is never zero.
Status Returns

o

Job terminated sucessfullYi bits 0-8 of status word 1
ccntain the access bi ts specified by the spawned job in
the TERMINA-rr:E canmand.

1

Time limit exceededi the job may be continued.

2

Job al:crted for receiving a fault whose return word was
nonzero. All jobs running below this one are suspended
also. The job may be continued.

6

Job terminated due to an error on while swapping out.

20

Status was reset; the job may be continued ..

120

Busy:
file.

200

XO parameter error: XO does not contain the file
reference number of a nonterrninated job file.

300

X4 parameter error: the new memory limits specified
are less than the current leng~ of the job file.

400

Recoverable error: this is a catch all status
indicating an abnor.mal termination.. It may indicate
any of the following:

Pub .. 1059

another operation is outstarrling on the job

(1)

I/O error swapping in the job

(2)

Parity error while the job is running

(3)

Unsuccessful overlay

(4)

Job has scmehow grown larger than slave Ine.wry

(5)

Job J S state vector hasgrcwn larger than 3K and .
job has not enabled large state vector permission.

~1E

Page 67

COpy

4 - TRAPPING EXECrJrIVE CCMMANDS

MME 500131:

COpy

xo

File reference number of source file

Xl

Points to pointer to starting location M1 in source file or
pointer to logical record number of device file

X2

File reference number of destination file-

X3

Points to pointer to starting location M2 in destination
file or pointer to logical record number of device file

X4

Flag bits

X6
X7

'Trap location
Points to number of words N to copy

N contiguous words are copied from the source file (starting at
word Ml) to the destination file (starting at word M2). All
other words of the destination file are unaffected.
Read permission is required on the source file; write permission
is, necessary on the destination file if the copy will alter any
existing data in the destination file, and apperrl permission is
required if the copy will make the destination file longer. In
any case, ~~e destination pointer M2 must not be greater than the
destination file's length.
During the actual copy, if the end of the source file is reached,
an end-of-file cotrlition occurs and data transmission stops. If
any of the words transferred to the destination file are outside
the range- of that file, the file is extended if it is open with
Apperrl permission. Otherwise, an end-of-file condition cccurs
and data transmission stops. L'1;:On canpletion of the copy, a trap
occurs to the location specified in X6.
If XC (X2) is zero, then ~~e source (destination) file is assumed
to i:e the issuing job IS rrerrory wi th Read and Wr i te permission
set. If Xl (X3) is zero, then the current fOsition of the source
(destination) file's read/write pointer is used. This option

Page 68

Pub. 1059

copy

SYS'IEM PRCGRAMMING REF. MANUAL

cannot be used with core, which has no implici t read/write
pointer. Ut=an ccmpletion of a copy, the read/write I;Ointers for
roth files are up:1ated to point to the word following the last
word accessed.
A copy issued at a slave end of a ccmmUnication file will
generate a special interrupt number 11 (slave end issued READ) or
12 (slave end issued ~mTE) at the master em. The secooo word
of the interrupt will contain the length of the copy. (See COPY
canmand in Chapter 5.) No data will be transferred until the
master end issues a corresponding copy. If the communication
file is busy, either because another end has an operation
outstarrling on it, or because another em has reserved it, the
slave end issuing the COPY carmand will be trapp:d with a status
of 6. If the jet> at the master errl of a camumication file is
r~t accepting special interrupts when a slave end issues a copy,
then that slave end will be trapp:d wi~, a status of 7.
The slave em will be trapp:d with a 20 status (status reset) if
the master end chooses to al:ort the copy by issuing a RESET
STATUS command on the communication file.
The master errl jcb will recei ve a slave issued SEr POIN.r.ER
special interrupt if:
(1)

A job issues a COPY to the slave end of a communication
file, and X3 is nonzero; or

(2)

A job issues a COPY fran the slave em of a ccrornunication file, and Xl is nonzero.

The pointer spec if ied by the slave errl is placed in the secor:d
word of the special interrupt pair. This special interrupt will
immediately precede the slave issued READ or slave issued WRITE
special received by the master errl jints to an out-of-oounds
location or both X2 and X3 are zero.

300

X4 parameter error:

360 X7 parameter error:
400

an invalid flag bit is set in X4.
X7 r:oints out of bounds.

Recoverable error: an error occurred during transmission of data. The lO1Ner half of status word 1
contains the status from the device which generated the
error. See Chapter 6 for a description of device
statuses. This status can occur if a device file is
.being accessed via a communications file and the job
has swapped out of main memory.

420 Unrecoverable error: a COPY was atte..'11pted between a
device file and ano~~er file not appropriate for device
file copies.

Pub. 1059

Page 73

DRIVE

4 - TRAPPING EXECUI'IVE CCMMANDS

MME 500132:

DRIVE

xO

File reference number of file

Xl

Pointer to Data Control

X4

Flag bits

X6

Trap location

X7

Number of roll's (Drive with OCW· s only)

A

Drive type

(AU) and

~rds

(Drive with r:x:;d's only)

function or data

(AL)

The DRIVE command may be issued only on a communication file or
on a device file. Drives on communication files generate special
interrupt at some other end of the file. Drives on device files
cause the drive function to be applied to the device. UpJn
completion of the command, a trap occurs to the location
specif ied in X6.
Drive types valid at the slave end of a cammuniCatlOn file are 0
(set communication file mode) and 12 (single device action) •
These drives generate special interrupt numbers 0 and 12,
respectively, at the master end of the communication file. The
lower half of status word 2 in such special interrupts contains
the drive data fran AL.
Valid drive types at the master end of a.communication file are 1
(read communication file) and 3 (break), which generate tJle
corresponding special interrupt:
(1)

At the lowest slave end acceptL,g special interrupts,
providing no slave end has reserved ~~e communication
filej or

(2)

At the slave er.d r,.mich has reserved the ccrnmunication
file.

Page 74

Pub. 1059

SYSTEM PRCGRAMMING FEF. MANUAL

DRIVE

Drive ~ 3 will generate a special interrupt number 3 at the
lowest slave end which is accepting specials, which has eXecute
permission on the communication file, and which is not lower than
the slave end to which the file is. reserved (if it is indeed .
reserved to a slave end) •
If a DRIVE is issued on the slave end of a communication file
that is busy due to the action of another end, the DRIVE is
rejected with a sta~us of 6. If on any communication file drive
the end to which the special interrupt shculd be given is not
accepting special interrupts, the DRIVE is trapped with a status
of 7.
The flag bits in X4 have the following m:anings:
Bit

Function
Must be zero.
Must be zero unless XO contains the file reference .
number of a slave ccmmunication file. In that
case, the communication file will be reserved for
the end issuing the drive if this bit is 1. Any
prior reservation by this end is released if this
bit is zero.

2-17

Must l:e zero.

Following is a list of drive functions which may be issued on the
slave end of a terminal ccmrnunicaticn file. The drive type
(contained in ~D) for these drives is zero.
000000
000001
000002
000003
000004
000005
000007
000020
000021

Pub. 1059

Set line-by-line input roc:de
Set file building input mode
Set file building mode for paper tape
Set direct input m:de
Set command input mode
Set ccmrnar.d roc:de for paper tape
.l\nswer back drum request
Se t full-duplex output m:x:1e
Set half-duplex output roc::de

Page 75

4 - TFAPPThK; EXEaJrIVE CCM-1ANDS

DRIVE

000022
000023
000024
000025
000026
001000

Set direct output rrcde
Reset direct output rnode
Set Friden output mode
Reset Fr iden output rnode
Stop output
Output any currently pending warning

There are two valid drive types for device files: 12 (single
device action) and 24 (drive with DeW's). A drive of type- 12
applies the function specified in AL to the device before the
drive is trapped. The valid function codes are listed in Chapter
6.

A drive type of 24 also applies the function in AL to the
specified device and then traps. The valid function codes are
listed in Chapter 6.
A list of Data Control ~rds (IX'N's) fainted to by Xl must be

supplied for this drive.

See Chapter 6 for a description of

rolls.

Status ~rd 2 on a completed single action device drive contains
the status return fran the device. The format of this status
return is as follows:
Bits

Meaning

o

lCM

1-5

Major status.

30-35

Record count residue (nt.lIllber of records requested
minus the number transferred).

6-11

Minor status.

12-17

Queue address bits; the operation was terminated
by an ini tiate interrupt if betw-een 20 and 37 ard
by a terminate interrupt if between 40 and 57.

18-23

lOM status (0 is good)

Page 76

sync bit (normally on) .

Pub. 1059

SYSTEM PFCGRAMMING REF. MAi.'IDAL

24-29

DRIVE

Return code frem Executive I/O routine.

Status Returns

o

Successful.

1

Inccmplete data transfer; no error.

2

End-of-file encountered on tape or last batch button
depressed on card reader.

3

Recoverable error; details in major and minor status.

4

Unrecoverable error; do not reissue command.

5

Operation on device was timed out.

If a DRIVE with COlts fails with a bad roq status, status word 2
contains the number of the faulty roll. If a drive with CCWs
fails with a status of 1, 2 or 400, status word 2 contains the
DOT residue of t..'1e last roq accessed. Bits 0-5 of status word 1
of a IX:W DRIVE contain the record count residue if the device was
accessed. Bits 18-35 of status word 1 contain the first 18 bi ts
of the device status return.
For further information concerning DRIVE functions and status
returns for device DRIVEs, see Chapter 6, "Device Files".
Except as ooted al:ove for device drives, status word 2 in the
trap of a DRIVE ccmmand is zero.
Status Returns

o

Successful.

1

Not all data was transferred on a Drive with rolls, but
data transferred was correct.

2

End-of-file condition detected on device file drive.

Pub. 1059

Page 77

4 - TRAPPING EXECUTIVE CCMMANI:S

DRIVE

3

Command inappropriate: ~,e DRIVE was issued at the
master end of a communication file while a slave end of
that file had an operation outstanding.

6

Communication file busy: the DRIVE was issued on the
slave end of a communication file which is busy, either
because another end has an operation outstanding on it,
or because another end has reserved it.

7

The end of the ccmrnunication file which was to have
received the special interrupt was not accepting
special interrupts.

10

Bad ocw: OCW p:::>ints to nonexistent address, invalid
action code, or superfluous bits were found in D0~.

20

Status was reset on a drive.

120 Busy: ,arlOther operation is outstarrling 'on the file.
140 A register parameter error: the specified drive type
is not valid. On DRIVE with OCW's this may cccur
because of an insufficient DOW complement.
200

xO parameter error:

XO dces not contain the file
reference number of a communication file or of a device
file.

220

Xl parameter error:

DeW

300

X4 parameter error:

X4 contains invalid flag bits.

360

X7 parameter error: the number of DOW's is zero or
indicates DCW's past the boundary of main memory.

400

Recoverable error: an error occurred on a device file
drive; the major arrl minor status bits in status word 1
identify the error.

list pointer out of bounds.

420 Unrecoverable error: the device drive function
specified is not valid.

Page 78

Pub. 1059

SYS'IEM PRCGRAMMrNG REF. MANUAL

MME 500143:

DUPLICATE

DUPLICATE

xo

File reference number to duplicate

Xl

Reserved for future use (must be zero)

X2

Reserved for future use (must be zero)

X3

Reserved for future use (must be zero)

X4

Accesses to request for new file reference number

X5

Reserved for future use (must be zero)

X6

Trap location

X7

Reserved for future use (must be zero)

The DUPLICATE ccmmand creates another file reference number for
the file/catalog specified with XO.
Register XO must contain the file reference number of a cataloged
file/catalog. Any accesses not specified in X4 will not be
available with the new file refereqce number. Accesses specified
in X4 will be granted if they YrOuld be allowed on an ALTER
ACCESSES and they do not conflict with accesses which this a~
other jobs have on the file.
On oampletion of the cammand a trap occurs to the location
specified in X6. If the status return is less than 2 then the

lower half of status word 1 contains the new file reference
nt.nnber.

Status Returns

o

Pub. 1059

Successful: the accesses in bits 0-8 are available on
the new file reference number and are the same as those
requested.

Page 79

DUPLICA'IE

4 - TRAPp:m; EXECUTIVE CCMA.ANDS

1

Partial success: ~~e accesses in bits 0-8 are
available on the new file reference number but differ
fran those requested.

2

Lockout: due to usage conflicts the file cannot be
open with another file reference number

3

Inappropriate: XO does not contain the file reference
of a cataloged file/catalog

40

Quotas exceeded:
vector length

120

Busy:

200

XO parameter error: XO does not contain the file
reference number of a file/catalog

Page 80

the job has filled its allotted state

another canmand is outstarrling on the file/
catalog specified in XO

Pub .. 1059

SYSTEM

P~..MMING

MME 500112:

REF. MANUAL

ERASE

xo

File reference number of initial catalog to search

Xl

Points to name of file/catalog to erase

X2

Reserved for future use (must be zero)

X3

Points to password (or is zero)

X4

(bits 0-8) must te zero
(bits 9-17) trap bit mask

XS

Reserved for future use (must be zero)

X6

Trap location

X7

Number of entries in treename (if zero, then 1 is assumed)

AQ

Slave trap identification words

The ~~E cammand attempts to open the specified file/catalog
(with the specified password if X3 is nonzero am without a
pasSWlJrd otherNise) in the specified catalog with Read, Write,
and Append permissions. If it is successful it then destroys the
file/catalog tcget.'er with its catalog entry.
catalcg quota checks are suspended for the ERASE ccrnmar.d; hence,
it can l:e used to destroy files in catalogs whose quotas have
been exceeded. Conflict checks wi t."! accesses currently held by
other jobs having the given file/catalog open are suspended for
all accesses except Write. An ERASE ccmmand may therefore be
used to destroy a file/catalog which is open, provided that it is
not <:pen wi th Wr i te permission. Wi th the exception of this and
the catalog quota check, an ERASE ccmmand is identical in effect
to the sequence of cammands OPEN, UNCATALCG, and CI.CSE.

Up::ln completion of the ccmnand a trap cccur s to the 1ccation
sp:cified in X6.

Pub. 1059

Page 81

EPASE

4 - TRAPPING EXEaJrIVE CrnMANDS

Status Returns

o

Successful:

2

Lockout: the file/catalog is currently in use with
Write permission.

3

Not found: Search permission was available on sane
intermediate catalog and the next file/catalog was not
found in it.

4

Protection violation: Search permission was available
on the next-to-last catalog and the password specified
for the file/catalog was wrong.

5

Fail: Search permission was available on the
next-to-last catalog, and one of the Read, write, or
Append permissions was not available.

6

Bad tree name: Search permission was available on sane
intennedia te catalog arrl the next entry in the treename
was not the last entry, but was the name of a file
rather than a catalog.

7

Fetch error:

11

the file/catalog was erased.

ei ~,er

(1)

An error of type

3, 4, 5, or 6 occurred and Search
permission was not available on the catalog in
which the search was being performed; or

(2)

Search permission was not available on the (N-l) st
catalog and Fetch permission was not available on
the file/catalog.

EP.ASE

disallo~:

t..l1e named file/catalog is a device

file.
another carmand is outstarriing on the catalog.

120

Busy:

200

XO parameter error:

220

Xl parameter error:
toUIrls.

Page 82

XO dces not contain the file
reference number of a catalog.

the pointer to the name is out of

Pub. 1059

SYS'IEM PRCGRAMMING REF. MANUAL

240

X2 parameter error:

X2 is nonzero.

260

X3 parameter error:
of t:ourrls.

the r:ointer to the password is out

300

X4 parameter error:

bi ts 0-8 of X4 are ncnzero.

320

X5 parameter error:

XS is nonzero.

360

X7 parameter error: x:; is greater than 10 (maximum of
10 names in the list of entries FOinted to by Xl) •

400

Recoverable error:
catalog.

420

Unrecoverable error:
been destroyed.

Pub. 1059

an error occurred in reading the
information in the catalog has

Page 83

4 - TPAPpnx; EXECC1rIVE CCMMANDS

EXECtJI'E

Mt1E 500117:

EXEcur.E

xo

File reference number of source file

Xl

Length of scratch area to app:r:d to source file·

X3

Job type (bits 0-8)

X4

MaximJrn amount of memory job is allowed

X5

Pointer to run list

X6

Trap location

X7

Pointer- to eight-word block containing registers

A

Job CRU limit (in 1/64 rnilliatU)

Q

Job a:cess mask

The SJurce file, which must be open with execute permission, is
run as a new job with the CRU limit specified arrl with the files
in the run list open for it. The new job is started at location
zero with the specified registers and wi~~ all indicators off
except the zero indica tor I which is on.
job file is created for ~,e new job, and its file reference
number is returned in bits 18-35 of status word 1 of the trap
block specified by X6 before execution of the creating job is
resumed. The job file remains open until closed by the creating
job.

A

The arrount of rr.em:>ry with which the new or spawned job is run is
determined as follows: the length of the source file is rcunded
up to a multiple of 1K (1024 T,aiOrds) and to this length is
appended a scratch area of the length specified in Xl, also
rourrled up to a rnultiple of lK. The spawned job can issue a
MEMORY RECUEST to change the size of its m2l1'Ory, but can request
no more ma~ry than the lesser of the amount specified in X4 and
the aroount of Irem:)ry allowed to the job which issued the EXECtJI'E
carmand.

Page 84

Pub. 1059

SYS'IEM PR:GRP..MMING REF. MANUAL

EXEctr.rE

Bits 0-8 of X3 are ANDed with the job type bits allowed to the
job issuing the EXECUTE to form the permissions allowed to the
spawned job. (See the description of the ENABLE cCll1IlEI1d for a
list of these permissions.) At the time the job is run, the
permdssions for which it is enabled are Large State Vector,
Priority Scheduling, Crash, and Leg. The spawned job must enable
itself for any other allowable permissions by issuing an ENABLE
ccmnand.
Run List (Pointed to by XS)

+------------------+1

I
I

I
I

+-- Spawner I s ID --+
I

ca talog

+
Quota

Scratch Quota

I

+--

I

--+

+ ••• passed files ..• +

I

+
The run list pointed to by XS must be at least fi ve words long
and be terminated by a zero. The maxiIll.lI1l length of a run list is
32 ~rds. If no zero word is encountered in the first 32 words,
the Executive will stop scanning the run list. The first ~NO
words in the run list are the identifying' words for the spawned
job. These ~rds can be read by the spawned job and all jobs
which are run below it by issuing a REQUEST STATUS on file
reference number O.
The third and fourth ~rds of the run list limi t the numl:er of
~rds that the spawned job can aPt=eoo to catalcged and scratch
files. These limits shculd be less than the limits of t.~e supra
job. If they are not, the Executive will substitute the supra
job f s limi ts. The limi ts actually passed to the spawned job will

Pub. 1059

Page 85

4 - TPAPPTh"G EXECUI'IVE CCM-1ANDS

be i.r:dicated to the supra job in the third and fourth words of

the run list. If any file operation issued by the spawned job
results in a situation' where b~ese limits are exceeded, then that
operation will be trapped with a status return of 40 (quotas·
exceeded). The catalog and scratch word allotments for the
spawned job are subtracted from the corresponding allotments for
the spawning job. Upon termination of the spawned job, the job
which ran it will have its catalog and scratch word allotments
incremented by the allotments remaining for the terminating job.
The remainder of the run list contains a list of file/catalogs to
be passed to the new job. A zero word indicates the end of the
list. Eaeh word in the list contains the following information:
Passed File WOrd

I

reCESS PPEF IFRN
o 8 9 17 18

or f1

I

35

Bits

Meaning

0-8

F~cessto

9-17

Preference (for created file)

18-35

File refe.renee number or zero

pass wit, file

The n~~ word in this list causes ~~e file/catalog with the file
reference number specified in bits 18-35 to be passed to the new
job with the access specified in bits 0-8. In the new job this
file/catalog will have file reference numbern.
(1)
(2)

If t,e file reference number in bits 18-35 is 0, then a
file will be created and passed to the new job.
If bit 1 of the access is 0, b,en a scratch file will
be created with the preference specified in bits 9-17
and passed.

Page 86

Pub. 1059

SYSTEM PRCGRAMMING REF. MA1.'\fUAL

(3)

If bit 1 of the access is 1, then a communication file
will be created and its slave em passed.

(4)

If the return bit (bit 2) is set in the access '~rd for
a created scratch file or if a communication file is
created, then the file reference number of the file for
the creating job will be returned in bits 18-35 of the
run list entry before execution of the job is resumed.

Job files, master ends of ccmmunication files, and
file/catalogs which have been passed already or which are
currently busy cannot be passed to the new job. The file'
reference number of a file/catalog which has been passed without
the return bit set becanes invalid. File/catalogs other than
slave ends of ccmmunication files which are passed with the
return bits set become busy until they are closed and returned by
the spawned job. A file/catalog which has the return bit set in
its access word must be passed with the return bi t set. A
scratch'file/catalog which is passed without ~,e return bit set
automatically has all accesses set for the new job. As opt:Osed
to files passed by the PASS ccrnmand, no messages accanpany files
passed t...+'rough the run list. The current setting of the
read/wri te pointer for a file/catalog is preserved when it is
passed.

Job Access

~~sk

(Q register)

I TPAP\
o

Pub,. 1059

17

19 20

28 29

P~
35

Page 87

4 - TRAPPING EXECUTIVE CCM1ANDS

The job access mask of the issuing job is ANDed with the job
access mask specified in the Q-register to form the access mask
for the new job. The bi ts in this access mask have the following
significance:
Bits

Meaning

0-19

Unused

20-28

Perrrdssion bits for master trap program (see
CATALCG)

29-35

Preferences to allow when creating scratch
file/catalcgs (see OPEN SCRA'ICE)

The job file for a successfully spawned job remains busy until a
trap cx:curs to the location specified in X6. The lo~r half of
status word 1 contains the file reference n~ber of the job file.
Status word 2 contains the total running time (in CROfs)
accumulated by the spawned job and any jobs which ran below it.
The trap cccurs whenever t.'1e CRUs allotted to the spawned job is .
exceeded, status is reset .on the job file, or ~,e job terminates
or is aborted.
If the trap cccurred because the CRU limit was excee:1ed, status
was ',reset, or the job al:orted, ~,e job is suspended, and its
execution may be continued by using a CCNrDrtJE camnand. If,
however, the job terminated, either successfully, or because of
an error on swap-out, or because of a recoverable error, a
CCNrINUE may not l:e issued. If a suspended job file is closed
rather than being continued, status wc>rd 2 on the trap of the
CLOSE command will contain the total CRU usage (in 1/64 milliCRO)
of the job. This will reflect any addi tional tim: charged to the
job Cy the Executive in the prccess of tenninating it and all
jobs below it. If a terminated job file is closed, the CRU usage
is returned in the trap of the CLOSE. (See CLCSE.) A terminated
job file can always be reccgnized by ~,e fact that its le03'th
(available ~~rough a REQOEST STATU~ command) is always zero,
while a suspended job never has zero le03'th.

Page 88

Pub. 1059

SYS'IEM PRCGRAMMING REF.

~.NUAL

EXECtJrE

Status Returns

a

Job terminated successfully: bits 0-8 of status word 1
contain the access bi ts specified by the spawned job in the
TERMINATE camand.
-

1

Time limit exceeded:

2

Job al:orted: the job received a fault whose return word was
nonzero. All jobs running 1:elow this one are suspended
also. The job may 1:e continued.

5

Run list error:

the job may be continued.

the job was not run. The lo~r half of
status word 2 contains a r:ointer to the entry in the run
list in error. The upper half of status word 2 contains one
of the following error types:

a

Oversize run list:

a maximum.of

tw~ty

files may

be passed.

60

System out of storage:
opened files is full.

120

Busy: the file reference number in the pass list
is ~~at of the source file for the RON command.

240

Bad file reference number in bits 18-35:

300

either

(1)

The file reference number is invalid;

(2)

It is the file reference number of a busy,
passed, or master camrnunication file; or

(3)

It is zero am the job issuing the RlJ"N
camand has a job access mask which does not
permit it to specify a preference for
creating a scratch file.

Bad access in bi ts 0-8 : e i ther
(1)

Pub. 1059

the Executive I s table of

Extraneous bits are set in the access wurd;

Page 89

4 - TRAPp:m:; EXECtJI'IVE Ca.1MANDS

(2)

The return bit is not set in the access. word,
though the file/catalog was passed to the
issuing job with the return bit set;

(3)

Bit 0, the catalog bit, is zero (is one) and
the file/catalog being passed is a catalog
(is a file) i

(4)

No accesses are present in bits 5-8;

(5)

The catalog bit is one and bits 18-35 are
zero; or

(6)

The return bit is set in the access word for

the creation of a communication file.
6

Job terminated due to an error on a swap-out.

20

Status was reset:

40

Quotas exceeded: °A job possessing no master trap bits
may have at rrost one run/execute outstariling.

60

Out

of storage:

t.'e job may be continued.

ei ther

(1)

The Executive's table of running jobs is full;

(2)

The length of the new job including the apper:ded

scratch area, if any I exceeds
job length; or

(3)

t.~e

system limit on

The depth of t.'e job in the job tree is teo great
to allow it to issue &~ ccmmands.

100 Access error: ~~e source file is not open wi~, eXecute
permission; bits 0-8 of status ~rd 1 contain the
missing permission bit.
120 Busy:
file.

another operation is outstarrling on the source

140 A register pararreter error:
new job to run is zero.
200

Page 90

the time specified for the

XO parameter error:

Pub. 1059

SYS'IEM

P~..MMING

REF. MANUAL

EXEcurE

(1)

XO is zeroj'

(2)

xo is not the file reference number of a scratch
or cataloged file;

(3)

XO is the file reference· number of a file whose
length is zero or greater than 2. . . 18.

parameter error: the initial size of the new job,
including the appended scratch area, if any, exceeds
the limits specified.

300

X4

320

X5 parameter error:
of oounds.

the p:::>inter to

360

x:7 parameter error:

the fainter to the registers .is

t...~e

run list is out

out of eour.rls.
400

Pub. 1059

Recoverable error: this is a catch all status
indicating an abnormal termination. It may indicate
any of the following:
(1)

I/O error swapping in the job

(2)

Parity error while the job is running

(3)

Unsuccessful overlay MME

(4)

Job has somehow grown larger than slave memory

(5)

Job's state veCtor has grown larger than 3K and
job has not enabled large state vector permission.

Page 91

LOG

4 - TPAPPING EXECUTIVE CrnMANDS

MME 500142:

LOG

XO

Reserved for future use (must be zero)

Xl

Pointer to pointer to memory location Ml

X2

Reserved for future use (must be zero)

X3

Reserved for future use (must be zero)

X4

Flag bits

X5

Reserved for future use (must be zero)

X6

Trap location

X7

Pointer to number of words N to copy

The ASCII message T..mich begins at location Ml and extends for N
~rds is entered into the system leg.
The flag bits in X4
perform the following functions:
Bit

Meaning

o

Ring i:J.'e console alarm if the system legging device is
a console.

1

Suppress leg device output and direct this entry to the
system log file only, if one exists.

Bit zero in X4 has no effect if the logging device is not a
console, or if·no logging device output occ~rs. Bit one in X4
has no effect if the Executive has no current log file at the
time of the ~. A job which dces not possess the Leg enable bi t
may not issue this MME. A job may have at rrost one LeG MME
outstanding at a given tine. UpJn o:::mpletion of the MME, a trap
occurs to the location specified by X6. If the logging device is
accessed, the lower half of status ~rd 1 contains the physical
device status.

Page 92

Pub.1059

SYSTEM PRCGR.n..MMING REF. MANUAL

Status Returns

o

Successful.

1

LCG MME outstanding. An erroneous attempt has been made to
perform two log MME's concurrently.

2

Buffer not available. This is a recoverable error
signifying a temporary scarcity of main memory.

3

ESCAPE sequence error.

200

xO parameter error:

XO is not zero.

220

Xl parameter error:

Xl is out of oour.ds or points to an

The ASCII message contains teo many
exclamation feints, question marks, or control characters
other than carriage return, line feed, or horizontal tab.

invalid core pointer.
240

X2 parameter error:

X2 is not zero.

260

X3 parameter error:

X3 is not zero.

300

X4 parameter error:

X4 contains undefined flag bits.

320

XS parameter error:

XS is not zero.

360

x:7 parameter error: x:7 is out of tourds, points to a nurni:er
N which is larger ~~an ~~irty words (120 characters) or

zero, or specifies a
rnenory.
400

Recoverable error:
the log de~lice.

440

Not enabled:

Pub. 1059

leng~~

which exceeds the available

a recoverable I/O error has occurred to

the job is not enabled with Leg permission.

Page 93

OID ERASE

4 - TRAPPING EXEctJrIVE CCM-1ANDS

M-1E 500102:

OLD ERASE

XO

File Feference number of catalog to search

Xl

Points to name of file/catalog to erase

X3

Points to password (or is zero)

X6

Trap location

AQ

Slave trap identification words

The OLD ERASE camnand is exactly like the ERASE carroand, except
an X4 of zero is assumed (but not checked) - which means that
only one filename can ,be specified - and t.~e unused registers do
not need to be zero.
Status Returns

o

Successful:

2

Lockout: the file/catalog is currently in use with
write permission.

3

The desired file/catalog was not found in the searched
catalc;:g.

4

Protection violation:
wrong.

5

Fail: one of ~'1e Read, Wr i te , or Append permissions
was not allowed.

11

OLD ERASE disallowed:
device file.

the file/catalog was erased.

the specified password was

the named file/catalog is a

100 Access error: the catalog is not open with Search
permission; bits 0-8 of status word 1 contain the
missing permission bit.
120 Busy:

Page 94

another camnand is outst.arrling on the catalog.

Pub. 1059

SYSTEM

P~.MMING

REF. MRruAL

OLD ERASE

200

XO parameter error: XO does not contain the file
reference number of a catalog.

220

Xl parameter error:
t::oun::1s •

the pointer to the name is out of

260

X3 parameter error:
of t::oun:1s.

the pointer to the password is out

400 Recoverable error:
catalog.
420

Pub. 1059

Unrecoverable error:
been destroyed.

an error occurred in reading the

information in the catalog has

Page 95

OID READ

~

?vME 500125:

AND OPEN· FILES

4 - TFAPpnx; EXEOJrIVE CCMMANLS

OLD READ CATAIm AND OPEN FILES

xo

File reference number of catalog

Xl

Points to number Ml of first entry in the catalog to copy

X3

Points to pointer to memory location M2

X4

Access for OPEN (bits 0-8)

XS

Ceded date

X6

Trap location

;Q

Points to number of

AQ

Slave trap identification words

~rds

N to cOi?Y

·The OLD RE.AD CATALCG AND OPEN FILES canmand is like the READ
CATAI..CG AND OPEN FILES canmand wi th ~ exceptions. Register X2
is rot reserved for future use. Register XS dces not tx>int to
cooed dates, but contains a ceded date last modified. Information for files ot.'1er than catalogs is provided if the file's date
last modified is not less than ~~e ceded date given in XS.
This is equivalent to a READ CATALCG Al.'ID OPEN FILES canmand with
XS pointing to a ~rd with zero in the upt;er half and the ceded
date last modified in the lower.

Page 96

Pub. 1059

SYSTEM

PRCGR.~

Mv1E 500130:

REF. MANUAL

OLD REPU-.CE

OLD REPLACE

xo

File reference number of catalog

Xl

Points to name of file/catalog to replace

X2

File reference number of scratch file/catalog

X3

Points to password or is zero

X6

Trap location

AQ

Slave trap identification words

The OLD REPLACE ccmmar.d is exactly like the REPLACE ccmmar.d,
except an X4 of zero is assumed (but not checked) -- which means
that cnlyone filenam: can Ce specified - and the unused
registers do not need to Ce zero.
Status Returns

o

Successful: the file/catalog was replaced and is new
open with the accesses in bi ts 0-8.

1

Partial success: the file/catalog was replaced and is
new open with the accesses in bi ts 0-8. Append
permission has Ce€n masked off since t.'e searched
catalogrs MAX is exceeded.

2

Lcckout: the cataloged file/catalog is currently in
use with Write permission.

3

The desired file/catalog was not found in the searched
catalog.

4

Protection violation:

t.'e specified password was

wrong.

5

Pub. 1059

Unsuccessful: one of the Read, Wr i te, or Append
permissions was not allowed.

Page 97

OLD REPLACE

4 - TRAPPIN; EXECUTIVE ssible to apperrl to the catalog
since it either is a main-merrory catalog or
is already allocated in twelve fragments.

100 Access error: the initial catalog to search is not
open with Search permission; bits 0-8 of status word 1
ccntain the missing permission bit.
120 Busy: another operation is outstanding on' ei ther the
catalog or the scratch file/catalog.
200

XO parameter error: XO dces not contain the file
reference number of a catalog.

220

Xl parameter error:

Xl p:>ints out of rounds.

240

X2 parameter error:

either

Page 98

Pub. 1059

OLD REPLACE

(1)

X2 does not contain the file reference number of a
scratch file/catalog i,

(2)

The scratch file/catalog was passed to the issuing
job with the return bit set;

(3)

The

~

of the scratch file/catalog does not

match the type of the file/catalog it is to

replace; or
(4)

The file/catalog has a preference of 0, 1, 2, or 4
and may only replace a file in a core catalog (a
catalog of preference 0) .

260

X3 parameter error:
of t:our:ds.

400

Recoverable error:
catalog.

420

Unrecoverable error:
been destroyed.

Pub. 1059

tr.'1e p::>inter to the

pas~rd

is out

an error cccurred in reading t.1-}e

information in the catalog has

Page 99

4 - TPAPpnx; EXECU"TIVE CCM-1ANDS

OPEN

MME 500101:

OPEN

xo

File reference number of initial catalog to search (O->:MFD)

Xl

Points to treenarne of file/catalog to open

X3

Points to password of file/catalog to open (if bit 1 of X4
is 1)

X4

Access desired on file/catalog (bits 0-8) i
Trap bit mask (bits 9-17)

X6

Trap location

X7

Number of entries N in treename (if bit 4 of X4 is 1)

AQ

Slave trap identification words

The ~ified file (denoted by a list of filenames which for.m a
"treenarne fl ) is located in the file system ana opened. A file
reference number is returned, which is used on all subsequent
operations on the file.
The treenam: p::>inted to by Xl begins with a list of catalcg names
and ends with. the name of the file/catalog to open. If the fetch
bit (bit 4) of X4 is 1, then X7 specifies the number of entries N
in the treename, which mus t be betrHeen one and ten. If bi t 4 of
X4 is 0, then N is taken to be one.
Note that if the fetch bit (bit 4 or bit 22) is not on in the
access word of a file/catalog, ~'1en it can be opened only if a
job can cpen ~'1e catalog in which it is located with search
permission. If, hOYever, the fetch bit is on in the access ~rd
of a file/catalog, then a job need not be able to open t.~e
catalog (s) a1:ove it in the catalog structure. The file/catalog
may l:e cpened by specifying its position in the catalog structure
and passing only the access checks associated with the file/
catalog itself. Thus files and catalogs may be protected either
collectively by the accesses f.ermitted for catalogs at higher
levels in the catalog structure, or individually by t.'1eir own
accesses. Also note that whenever the master trap prcgrarn is run
during an open, the accesses of the issuing job will be limited

Page 100

Pub. 1059

OPEN

by the trap bi t mask in bi ts 9-17 of X4. In this case, for any
bi t Q'l the mask, the corresponding tr ap protection bi t cannot Ce
passed to the opened file, regardless of the accesses wi th which
the issuing job is running.
The prccedure for opening the file/catalog specified by the
treename is as follows. The initial catalo;I specified by xO is
searched for the catalog specified by the first entry of t...'1e
treename; if XO is zero, then the Master File Directory is
searched. As each succeeding catalog in the treename is found,
it is searched for the catalog specified by the next entry of the
treenarne. FL'"1ally the (N-l) st catalog is searched for the
file/catalog specified by t..~e Nth entry of the tree name.
For each intermedia;:s catalog in the tree n2roe (i. e. catalogs 1
to N-l) , the accesses available are determined L~ one of two
manners:
(1)

If Search p=rmission was available on t..1.e previous catalog,
then t...'e accesses available on t..~e current catalog are ~~ose
allowed without a password (bits 3-8 of the current
catalog's access word), or those returned by t...;'e Executive
trap prcgram if the catalo:J is so protected. If O..mer
permission rrt/as available on the previous catalog arrl the
current catalog is not protected by t...1.eE..~ecutive trap
program or the Executive trap is successfully run, ~~en all
accesses are allowed on t..~e current catalog.

(2)

If Search permission was not available on the previous
catalcg, then the accesses available on the current catalog
wi thcut a password (bi ts 3-8 of the current catalog's access
word), or those returned by the Executive trap prcgrarn if
the catalog is so protected, are examined for the presence
of the fetch bit (bit 4). If the fetch bit is on, then
accesses are granted on the current catalog just as if
Search permission had been available on the previous
catalog. If the fet:h bit is not on, then no accesses are
granted on the current catalcg-.-

When the (N-l) st catalog is searched for the file/catalog
specified by t.J,e last entry of the tree narre, the accesses
available en t...1.at file are determined as follows. If, this

Pub.1059

Page 101

OPEN

4 - TFAPPING EXECUTIVE CO!MANDS

file/catalog is found,bit 1 of X4 is 1, and file/catalog is not
protected by a trap program, then the password fainted to by X3
is checked against the password protecting the file/catalo;. If
the password check succeeds. or is not rrade 1 then the accesses
allowed on the file/catalog are determined in one of two manners:
(1)

If Search permission was available on the (N-l) st catalog,
then the access bits requested in x4 are ANCed with the
access bits allowed by the access THOrd of the file/catalog
(bi ts 3-8 of the access ~rd if the file/catalo;] is l:eing
opened without password, bits 21-26 if the file/catalog is
l:eing opened with a password, or the access bits returned by
the trap program protecting the file/catalog). If Owner
permission was available on the (N-l) st catalog, and the
file/catalog is not protected by a trap program and is
protected by a successfully run master trap, then all
requested accesses are allowed on the file/catalog. In
addition, if the opening job possesses all ~aster trap bits
and has a zero mask in X4 in addition to Owner per.mission on
the (N-l) st catalog, then any slave trap program is bypassed
a.OO all permissions are granted on the file/catalog.

(2)

If Search permission was not available on the (N-l) st
catalog 1 and the fetch bit is on in the access '.A;Ord of the
file/catalog, that is,

(a) Bit 4 of the access word if the file/catalog is
being opened wi t.~cut a password;
(b) Bit 22 if the file/catalog is l:eing opened with a
pasS\atOrd; or
(c) Bit 4 of the accesses returned by
protecting the file/catalog;

t.~e

trap program

then the accesses allowed on the file/catalog are the same as if
Search permission had been available on the (N-l) st catalcg. If
Search permission was not available on the (N-l) st catalog and
the fetch bi t is not on in the access word of the file/catalog,
then no accesses
allowed on the file/catalcg.

are

Page 102

Pub.1059

OPEN

Next the access bi ts allowed are checked for use conflicts wi th
accesses currently held by other jobs whose file/catalog is open.
Access bits that are in conflict are masked off. In addition,
Append permission is masked off if the MAX of t.;'e (N-l) st catalog
has been exceeded. All access bits are masked off if the
allocated storage for the (N-l)st catalog exceeds ~Nice its
permissible MAX. Finally, bit 0 of the access is set to 1 if the
file/catalog is a catalog. The file/catalog is opened if any
accesses remain in bits 5-8.
On ccrnpletion of the oommand, a trap occurs to the location

specified in X6. If the file/catalog was opened successfully,
then the access bits obtained. are returned in bits 0-8 of status
wurd 1, the new file reference nl.llllber of the opened file/catalog
in bits 18.... 35 of status word 1, and the length of the opened file
or the MAX of the opened catalog in status word 2. If the
command was unsuccessful, t.l;.enthe upper half of status word 1
contains the reason for the failure, and the lower half contains
zero.
In addition to the access bits returned in status word 1 of the
trap, nine user access bi ts can be obtained by issuing a RECUEST
ST.ATUS. These user access bits are obtained fran bits 27-35 of
the opened file/catalog's access wurd if the file/catalog ~yas
opened with a password. If the file/catalog was opened witJ.'out a
pas~rd or if it was protected by a trap prcgram, the user
access bits are obtained fran bits 9-17 of the access word.
The read/write pointer of
to zero.

t.~e

opened file/catalcg is initialized

Status Returns

o

Successful: the accesses in bits 0-8 were obtained and
are the sarre as those requested.

1

Partial success: the accesses in bits 0-8 were
obtained but differ fran those requested. This status
return can cccur if bi t 0 of the requested access is 0
(is 1) and the opened file/catalog is a catalog (is a
file) .

Pub. 1059

Page 103

OPEN

4 - TRAPPING EXEOJrIVE C(M.1ANDS

2

Lockout: due to usage conflicts, none of the requested
accesses were available on the file/catalog.

3

Not found: Search permission was available on sane
intermediate catalog and the next file/catalog was not
found in it.

4

. Protection violation: Search permission was available
on the (N-l) st catalcg and the password specified for
the file/catalog was wrong.

5

Fail: Search permission was available on the (N-l) st
catalog and none of the requested accesses were
available on the file/catalog.. This can cccur if the
. file/catalog is slave-trapped and the slave trap
program is not correctly cataloged.

6

Bad tree name:

Search permission was available on sane
intermediate catalog and the next entry in the treename
was not the last entry, but was ~~e name of a file
rat.'e.r than a catalog .

7

Fetch error:
(1)

ei~~er

An error of type 3, 4, 5, or 6 cccurred and Searc.'

permission was'not available cn the catalog in
which the search was being performed i or
(2)

Search' permission was not available on t...'e (N-l) st
catalog a~ Fetch permission· was not available on
the file/catalog.

10

Off-line file.

40

Quotas exceeded:

Page 104

either

(1)

The job has exceeded its allotted state vector
leng-tL'1; or

(2)

Allocated storage for the (N-l) st catalog is over
twice t...'e permissible MAX, and files mus t be
erased from this catalog before any can l:e opened ..

Pub. 1059

OPEN

SYSTEM PFCGRAMMING REF. MANUAL

60

Out of storage:
is full.

the Executive's table of opened files

100 Access error: the initial catalog to search is not
open with Search permission; bits 0-8 of status word 1
contain the missing permission bit.
120

Busy: another canmand is outstan:1ing on the catalog
specified in xo.

200

XO parameter error:

220

Xl parameter error:
out of eourxls.

260

X3 parameter error:

360

Xl parameter error:

400

Recoverable error : an error cccurred in reading an
intermediate catalog.

420

Unrecoverable error: information in an inteorediate
catalog has been destroyed.

Pub.lOS9

XO dces not contain the file
reference number of a catalog.

the r:ointer to the tree name is

bit 1 of X4 is 1 and the pointer
to the password is out: of munds.

bi t 4 of X4 is I, and X7 contains
a zero or a number of file names greater ~~an ten.

Page 105

OPEN SCRATCH

~

500100:

4 - TRAPPING EXECUrIVE CCM4ANDS

OPEN SCRATal

X4

File/catalog flag (bit

XS

Preference (for files only)

X6

Trap location

A

catalog

~

0)

or preallocation length

N

(Load-Dt.:zmp enabled

jcbs only)
Q

Estimated number of catalog entries (special catalog enabled
jobs only)

A scratch file is opened if bit 0 of X4 is zero. Otherwise, a
scratch catalog is opened. The scratch file/catalog is created
wi th all permissions (i •e . Read, Wr i te, Appero -' Search/eXecute,
and Owner) •

Preference is an integer be~Neen 1 ard 7 which specifies the
class of storage preferred for the file being created. Classes
of storage are as follows:
1
2
3

4
5
6
7

Swap files
System files (BASIC, ALGOL, ••• ) or
monitor scratch files
catalogs
Scratch files
Special data base
Saved files
Permanent data base

The preferences which the issuing job can assign are limited by
bits 29-35 in its job access mask (set by t..'1e supra job on a RU'N
or EXECUTE command). A job can assign a preference n only if bit
28+n in its access mask is 1. Attempts to assign other
preferences will result in the Executive's rounding the
preference to a higher number if possible and to a lower one
otherwise. All catalogs will be assigned a preference of 3 by
the Executive. Assigned preferences continue to hold when a
scratc..~ file/catalog is cataloged.

Page 106

Pub. 1059

OPEN SCR.Z\'ICH

The OPEN SCP.ATCE cqnmand normally does not preallccate any
storage for a scratch file; such storage is allccated as needed
whenever information is apper.ded to the file. Where N is
specified in the A-register, an OPEN SCRA'IQ! camnand issued by a
job enabled with the Load-Dump permission will cause N words to
be preallocated for the scratch file. This preallocation is
designed to alleviate excessive fragmentation of storage.
The parameters in the A- and Q-registers are normally applicable
only when a scratch catalDg' is being created. In that case Mil..x
sets the maximum n1.1Illl:er of words which can cccur in that catalcx;
and in all files and catalogs catalCX;eQ beneath it. A negative
MAX sets this rnaxirnum to infinity and can be specified only by
those jobs enabled with the Special Catalog permission.
Likewise, only such jobs can specify an estimated num.t:er of
catalog entries in Q.. This estimate is used as a guide by the
Executive in allocating storage for the catalog so as to optimize
disk accesses for catalog searches. The Executive will determine
this initially allocated length for catalcx;s created by all
nonenabled jobs.
wnen a scratch catalog is opened, the job J s rema~n~ng scratch
TM:)rd allotIrent is decrem::nted by the length of the scratch
ca talog reader.

A trap to the location specified in X6 occurs upon completion of
the ccrnrrend. If the ccrnrrend is successful, status TM:)rd 1
contains ~~e file reference number of the created file in its
lcwer half.

Pub. 1059

Page 107

OPEN SCPATCH

4 - TRAPpnx; EXEOJrIVE CCMMAL'IDS

Status Returns

o

Successful.

40

Quotas exceeded:

60

either

(1)

The job has exceeded its alloted state vector
length;

(2)

The job access mask for the job dces not penni t i t
to specify any preference for a scratch file/
catalog; or

(3)

The charge for writing a scratch catalog header
exceeds the job's remaining scratch word
allotment.

OUt of storage: sufficient storage is not available
for the scratch catalog header or for preallocating a
scratch file.

140 A-register parameter error:

either

(1)

The job is not enabled wi t.~ the Special Catalog
permission and is specifying a negative ~..x for a
scratch catalog i or

(2)

The job is enabled with the load-dumppermission
and register A is negative.

160

Q-register pararreter error: the job is enabled with
the Special Ca talcg permission and is specifying· rrore
than 4095 entries for a scratch catalog.

400

Recoverable error: an error cccurred in writing the
scratch catalog header.

Page 108

Pub. 1059

OVERIAY

~

500106:

OVERLAY

xo

File reference number of source file

X4

Flags for operation

X6

Trap location

X7

Pointer to registers

The source file specified by XO, which must be open wi th eXecute
permission, is ccpied over the issuing job's rrenx:>ry. The job's
registers are loaded frcm the area specified by X7, which must
begin at a multiple of eight words.
If bit 0 of X4 is 1 at the time of the overlay; the source file
will be closed when the overlay is canplete. If bit 0 of X4 is
0, the source file will remain open· am unchanged.
If all parameters are correct and there are no errors during the
copy operation, the job is restarted at location zero wi~~ the
registers PJinted to by X7, and with the zero indicator on.
If an error is detected before the copy operation begins, the
issuing'job is trapped to the trap location specified byX6 wi~~
one of the statuses listed below.
If an error occurs after initiation of ~,e copy, the issuing job
is aborted and ~~e supra job's RON or CCNTINOE ccrnmand is trapped
with a status of 400 (recoverable I/O error) •
Status Returns
1

Pub. 1059

Overlay rejected: The overlay has been rejected
Cecause the job has another trapping Executive cannand
outstarrling.

Page 109

OVERlAY

2

OVerlay rejected:
allocated menory.

file is bigger than current

100 Access error: The file specified by XO is not open
with eXecute permission.
.
200

XO parameter error: Xo is zero, dces not contain a
valid file reference number, or contains the file
reference number of a device, job, or communication
file.

300

X4 parameter error:

360

'I:J parameter error: The pointer in X7 is cut of rounds
or is not a multiple of 8.

Page 110

Pub. 1059

x4 contains illegal flag bits.

P~.ss

SYSTEM PRCGRAMMING REF. MANUAL

MME 500122:

PASS

xo

File reference number of job file or zero

Xl

Points to a location which points to the starting location
Ml of message

X2

File reference number of file/catalog to pass or zero

X4

Access to pass with file/catalog

XS

Preference (for created files)

X6

Trap location

XJ

Points to the length

N

of the message or is zero

The file/catalog is passed down to the job specified in XO,
generating a special interrupt nUIl1ber 4 (passed file) if that job
is accepting special interrupts. This'special interrupt gives
the new file reference number of ~~e file/catalog in the lower
half of the first interrupt word and the length of the file or
MAX of the catalog in the secor.d interrupt word. The new file
reference number is not necessarily equal to the one for the job
passing the file/catalog.
If X7 is nonzero and points to a nonzero word, ~,en the message
specified can be read by the job to which the file/catalog is
passed. This is accanplished by issuing a REQUEST STATrJS as the
first file operation on that file/catalog. If x:J is zero or
points to a zero TNOrd, then no message accanpanies the
file/catalog 01 the pass. A trap cccursto the location
specified in X6 when the message, if any, is read or when any
other file operation is initiated on the passed file. Hence, the
message should not be altered until the trap occurs.
If X2 is zero then the Executive will create and pass a scratch
file, or create a communication file and pass its slave end,
depending on whether bi t 1 of the access word specified in X4 is
o or 1. The file reference number of the created file is
returned in the lo~r half of status word 1 in the trap for the
PASS (unless the file created was a scratch file and the return

Pub. 1059

Page III

PASS

4 - TRAPPING EXECtJI'IVE CCMMANDS

bi t ~s rot set in the access in X4).
with a communication file.

No message can be passed

If XC is zero, then the file/catalog will be passed upward to the
irrm=diate supra joo. CUrrently, this feature' is implemented for
created communication files only.
Job files, master ends of canmunication files, and file/catalogs
which have already been passed cannot be passed to an infra job.
The file reference number of a file/catalog ~ihich is passed
without the return bit (bit 2) set in its access ~rd becomes
invalid. With the exception of· slave ends ofcammunication
files, file/catalogs which are passed with the return bit set
becane rosy until they are closed and returned by the infra job.
A file/catalog which has been passed to the job issuing the PASS
with the return bit set must be passed to an infra job with the
return bit set. A scratch file/catalog which is passed without
the return bit set automatically'has all accesses set for the
infra job. The current setting of t.l-}e read/write pointer for a
file/catalog is preserved when it is passed.
Status Returns

o

Successful:

the message, if any, was read.

2

Successful:

a message existed but was not read.

60

System out of storage:
files is full.

120

Busy: another operation is outstar.ding
file/catalog to be passed.

200

XO parameter error: XO does not contain the file
reference number of a nonterminated job file.

220

Xl parameter error:

Page 112

the Executive's table of opened
ont.~e

Xl poi.T']ts out of t:ounds.

Pub. 1059

SYSTEM PRCGRAMMING REF. MANUAL

240

300

360

Pub. 1059

X2 parameter error:

PASS

ei t.L~er

(1)

X2 does not contain a valid file reference number;

(2)

It contains the file reference number of a passed
file/catalog or of the master eoo of a canmunication file; or

(3)

I t is zero arrl the job access mask for the issuing
job does not penni t i t to specify a preference for
creating a scratch file.

X4 parameter error:

either

(1)

Extraneous bits are set in the access w'Ord;

(2)

The return bi t is not set in the access 'tAlOrd
though the file/catalog was passed to the issuing
job with the return bit set;

(3)

Bit 0, the catalog bit, is 0 (is 1) and the
file/catalog being passed is a catalog (is a
file) ;

(4)

No accesses are present in bits 5-8;

(5)

The catalog bit is on ar:d X2 is zero;

(6)

The return bit is set an:1 so is the bit to
indicate ~~e creation of a communication file; or

(7)

xo

is zero and X4 does not specify the creation of
a communication file

X7 parameter error:

X7 p::>ints out of rounds.

Page 113

PIDlIDE DEVICE

~

500126:

ADDRESSES

PROVIDE DEVICE

4 - TRAPPING EXECrJrIVE CCMMAJ.'IDS

ADDRESSES

xo

File reference number of file

X3

Points to pointer to memory location M2

X6

Trap location

X7

Points to length N of buffer

The PRCVIDE DEVICE ADDRESSES 'camnand is a privileged carnnand
which can be issued by jobs enabled for the Loaci-CUmp permission ..
Nonenabled jobs which attempt to issue it will receive a status
of 440 fault .. The'oammand causes the device address list for the
specified file to be copied into the buffer of length N starting
at ma~ry location M2; no device addresses will be copied if the
whole list dces not fit into this buffer. Upon completion of the '
command, a. trap cccurs to the location specified in X6. If the
command was successful, status word 2 contains the number of
device addresses for the file.
This command cannot be used to provide device addresses for a
catalog. Enabled jobs desiring the device addresses for a
ca talog can obtain them by issuing a READ CAT.AJ:A:G AND OPEN FILES
command.
Status Returns

o

Successful.

120 Busy:

another operation is outstarrling on the file.

200 XO parameter error: XO does not contain the file
reference number of a scratch or cataloged file •
. 260 X3 parameter error: X3 points out of 1:ounds or feints
to an out~f-1:olli~s pointer.
360 X7 parameter error: either X7 points out of touros or
the list of device addresses for the file will not fit
into the specified buffer.

Page 114

Pub. 1059

PROVIDE DEVICE ADDRESSES

440

Pub. 1059

Not enabled:
permission.

the job is not enabled wi th Load-Dump

Page 115

4 - TRAPPING EXECGTIVE CCMMANDS

MME 500133:

READ

xo

File reference number of source file

X3

Points to pointer to memory location

X4

Flag bits

X6

Trap location

;t:J

Points to number of words N to read

~~

N words are read fran the source file starting at the current

position of that filers read/write pointer into the issuing job's
merrory starting at location M2. Read permission is required on
t.~e source file.
If the scurce file is exhausted or if the end
of the issuing job's storage is reached, an errl-of-file condition
occurs and transmission of data stops. Upon completion of the
copy, a trap occurs to the location specified in X6.
Zero is an illegal parameter for XO or X3. Upon completion of
the copy, the read/write pointer for the source file is up:lated
to p:>int to the v;ord beyond the last one read.
G~e slave end of a communication file will
generate a special interrupt number 11 (slave end issued READ) at
the nester end. The secorrl interrupt word will contain the
length of the READ. No data will be transferred until t.'e master
end issues a corresponding WRITE or COPY. (See ~~e description
of communication files in Chapter 5.) If ~~e communication file
is busy, ei ther because another em has an operation outstarrling
on it, or because another em has reserved it,the slave end
issuing the READ camnand will be trapped with a status of 6. If
the job at the master end of a oommunication file is not
accepting special interrupts when a slave end issues a READ, then
that slave end will be trapped with a status of 7.

A READ issued at

The flag bits in X4 have the following meaning:

Page 116

Pub. 1059

SYSTEM PRCGRAMMING REF. MANUAL

Bit

~~aning

a

If the source file is a master cammunicationfile,
the corresponding slave end is trapped only if a
nonzero status return cccurs or if this bi t is .
zero. This bit must be zero ff the source file is
not a master ccmmunication file.

1

If the source file is a slave communication or a
shared file, that file is reserved for the end
issuing the READ ccmmand if this bit is one. Any
prior reservation by this end is released if this
bi t is zero. This bi t must be zero if the source
file is not a slave communication file or a shared
file.

2-17

These bi ts are reserved for future use.
be zero.

They must

If a status return in status word 1 is not between 100 and 360 on
completion of the READ, then status word 2 contains the
difference bet:Heen the number of words transferred and the number
of w::>rds requested (i. e. it rontains minus the number of words
not transferred). If t..~e status in word 1. is bet:.reen 100 and
360, then status word 2 is zero. If the scurce file is a device
file, then the lower half of status word 1 contains the status
return frcrn that detlice.
The observant reader will note that the READ command is treated
as a special case of the COPY ccmrnand in which Xl ar~ X2 are
asst.nned to contain zeros.
Status Returns

a

Successful:

1

Source file exhausted: nore words were requested but
could not be transferred.

2

Destination file exhausted: some 'Nards in the source
file were not transferred since the end of the issuing
job's storage was reached.

Pub. 1059

all words were transferred.

Page 117

4 - TRAPPING EXECtJI'IVE

cC:MMANDs

3

Command inappropriate: the READ was issued at h,e
master end of a communication file without a corresponding w~TE operation outstanding at a slave end of
that file.

4

The source .file pointer is out of bounds:

5

either,

(1)

The pointer was initially out of bounds;

(2)

The other end of a communication file issued a
MEMORY REQUEST which released job storage involved
in the read; or

(3)

An

attempt was made to read fran the pure region
of a job file which was swapped out of main
memory.

The destination file pointer is out of bounds:

ei~~er,

(1)

The pointer was initially out· of bounds;

(2)

A MEMJRY REQUEST released job storage involved in

the read; or
(3)

attempt was made to read into the pure region
of a job file wnich was swapped out of main
rneITOry.

An

6

The communication file at whose slave er~ this command
was issued is busy, ei ther because another end has an
operation outstar:ding, or because anot...;'er er:d has
reserved the canmunication file.

7

The master end of the communication file at whose slave
end this command was issued is not accepting special
interrupts.

20

Status was reset on the READ.

100 Access error: the sOJrce file is not open wi th Read
permission. Bits 0-8 of status tHOrd 1 contain the
missing per.mission bit.
120 Busy:
file.

Page 118

ar10ther operation is outstarrling on the source

Pub. 1059

SYSTEM PRCGRAMMING REF. MANOAI.:.

200

XO parameter error: XO does not contain the file
reference number of a file.

260

X3 parameter error: X3 is zero or points to an
out-of-t:ounds location.

300

X4 parameter error:

X4 contains extraneous or invalid

flag bits.
360

Y:7 parameter errors:

Y:7 r:oints out of rounds.

400

Recoverable error: an error cccurred during transmission of data. The lo~r half of status word 1
contains the status fran the device which generated the
error. This return can occur if a device file is being
read via a ccmmunications file and the issuing job is
swapped out of main rnerrory.

Pub. 1059

Page 119

READ CATALCG

M-1E 500114:

4 - TRAPp:m:; EXECtlrIVE CCMMANDS

READ CATALCG

xo

File reference number of catalog

Xl

Points to number !oU of first entry in the catalcg to copy

X3

Points to pointer to memory location M2

X6

Trap location

x:7

Points to number of words N to copy

N words of formatted catalcg information, starting with the

information for the first catalcg entry whose number is greater
than or equal to Mi, are written into the issuing job's storage
starting at location M2. Read permission is required on the
catalog. If the formatted catalcg information is exhausted or if
the end of the issuing job's storage is reached, an end-of-file
condition occurs and data transmission stops. Upon completion of
the copy, a trap occurs to the location specified in X6.

If Xl is zero then the current value of the catalcg's read/write
pointer is used to specify an entry number. Upon 'completion of
the copy, this pointer is upJated to point to the entry past the
last one for which information was transferred. Note that since
holes can occur in catalogs and since these holes have entry
numbers, the value of the catalcg r s read/write pointer upon
carpletion of a copy rray not Ce equal to the number of entries
for which information was transferred. X3 may not be zero.
Information for each entry in the catalcg is formatted into an
eight-word blcck. The block for entry nurnber zero contains data
pertaining to the catalog itself; blocks for other entry numbers
contain information pertaining to file/catalogs cataloged in the
.catalcg.

Page 120

Pub. 1059

The format of the information for entry nt..IItlber zero which
pertains to the catalog itself is as follows:
Wbrd

Function

o

MAX

1

ALOe (amount of storage used by entries)

2

Zero (unused)

3

Zero (unused)

4

Upper:
IDwer:

5.

Upper: . zero (unused)
Lower: number of entries, including holes, in
catalog

6

Zero (unused)

7

Length of the catalcg

access with which catalog is open
preference am typ: of catalog

The format of the information pertaining to entries in the
catalog is as follows:
WOrd

Function

0-1

Name

2-3

PasffitwOrd or name of trap prcgram (zero if catalog
is not open with OWner permission)

4

catalo; access word

5

Upper:
IDwer:

days-used count
preference am typ: of file/catalog

6

Upper:

coded date of last use
coded date of last modification

Lower:
7

Pub. 1059

Length of file or MAX· of catalog

Page 121

READ CATALCG

4 - TRAPpnx; EXECtlrIVE

~

See Chapter 9 for a more detailed explanation of these fields.
If the status return in status word 1 is not be~Neen 100 and 360
on completion of the copy, then status word 2 contains the
difference between the number of words transferred and the number
of words requested (i.e. it contains minus the number of words
not transferred). If the status in word 1 is between 100 and
360, then status word 2 is zero.
Status Returns

o

Successful:

1

Source file exhausted: more words were requested than
were contained in the formatted catalog information.

2

Destination file exhausted: sane words of formatted
catalog infor.rna tion were not transferred since the end
of the issuing job's storage was reached.

4

Source file pointer out of oour:ds: there are no
entries in the catalog with an entry number greater
than or equal to Ml.

5

The destination file pointer is out of bounds:

20

all words were transferred.

either,

(1)

The pointer was initially out of bounds;

(2)

A MEMJRY REQUEST released job storage involved in
the copy; or

(3)

An

attempt was made to copy into the pure region
of a job file which yas swapped out of main
menory.

Status was reset.

100 Access error: the catalog is not open with Read
permission. Bits 0-8 of status word 1 contain the
missing permission bit.
120 Busy:

Page 122

another operation is outstarrling on the catalcg.

Pub. 1059

SYSTEM PRCGRAMMING REF.

~

200

XO parameter error: XO is zero or does not contain the
file reference number of a catalog.

220

Xl parameter error:

Xl p:Jints to an out-of-bounds

location.
260

X3 parameter error:

X3 p:Jints to an out-of-bounds

location or is zero.
parameter error:
location or is zero.

360

X7

400

Recoverable error:
catalog.

420

Unrecoverable error:
eeen destroyed.

Pub. 1059

j(7

an

points to an out-of-l::ounds
error cccurred in readi...Tlg the

information in the catalog has

Page

123

READ. CATALCG AND OPEN FILES

M1E 500127:

READ CATALCG

]\..ND

4 - TRAPpnx; EXECUrIVE CCMMANDS

OPEN FILES

xo

File reference number of catalog

Xl

Points to number Ml of first entry in the catalog to copy

X2

Reserved for future use (must be zero)

X3

Points to pointer to memory location M2

X4

Access for OPEN (bits 0-8); Trap bit mask (bits 9-17)

XS

Points to one word of ceded dates (DW/DL."1)

X6

Trap location

X7

Points to number of words N to copy

AQ

Slave trap identification words

The READ C'ATALCG AND OPEN· FILES camnand canbines t.lJ.e functions of
the READ ~TALCG and t..f1e OPEN camnands by siinul taneously
providing information about entries in a given catalog and by
opening those entries. It is intended primarily for use in
privileged system modules and serves to minimize ~,e number of
disk accesses required for file system maintenance.
When a READ CATAI..CG AND OPEN FILES canmand is issued, N words of
formatted catalog information are written into t..f1e issuing job's
storage starting at location M2. This cperation starts with the
information for the first entry in the catalog whose number is
grea ter than or equal to MI. Forma tted infoona tion is provided
for all catalogs in the catalog being read. Information for
migrated files is provided only if the date last used is greater
than or equal to the coded DIM in the lo~r half of the word
pointed to by XS. Information for other files is provided only
if the file's date last used is less than or equal to the coded
OW in the upper half of the word pointed to by XS, or if the
file I s date last mcdified is greater than or equal to the ceded
DIM in the lower half of the word pointed to by. X5.
(Therefore,
to get information on all files, the word shculd contain 0 in the
lower half. To get information on files using only the DLU, the
~rd should contain the desired DW in the upper half and 777777

Page 124

Pub. 1059

SYSTEM PRCGRAMMING REF.

~

READ CATALCG AND OPEN FILES

ectal in the lo~r half. To get information on files using only
the DIM, then the word shoold contain 0 in the upper half and the
desired DL'1 in the lo~r half.)
In addition, an attempt is made to open withcut a password each
file/catalog for which information is transferred. If the
information is exhausted or if the end of the issuing job's
storage is reached, an end-of-file con:1ition eccurs and data
transmission stops. Upon canpletion of the cornmand, a trap
cccurs to the location specified in X6. The date last used am
date last roc:dified in the catalog entry for a file/catalog opened
by the READ CATALCG h'ID OPEN FILES canmand will not be upjated.
Read permission is required on the catalog i search s:ermission is
also required if any file/catalogs are to be opened. Zero is an
invalid parameter for XO or X3. If Xl is zero, then the current
value of the catalog's read/write pointer is used to speciry an
entry number. t1p:)n ccmpletion of the ccmmand, this pointer is

up:Ja ted to point to the entry past the last one for
information was transferred. Note that since holes
catalogs, and since these holes have entry numbers,
the catalog' s read/write fOinter uFOn canpletion of
IT'ay mt be equal to the number of entries for which
was tr ansferred.

which
can cccur in
the value of
.the ccmmand
information

InforIration for each entry in the catalog other than entry zero
is formatted into a ten-fNOrd block which contains information
pertaining to that file/catalog. The information for entry zero
pertains to the catalog itself and is formatted into a twentyword block •
. The format for entry zero (whose information pertains to the
catalog itself) is as follows:
WOrd

Function

o

MAX

1

ALOe (amount of storage used by entries)

2

Upper:

Pub.I059

zero (unused)

Page 125

READ CATALCG AND OPEN FILES

4 - TRAPp:m:; EXEcurrvE CQ.1MANDS

Lower: number of fragrrents in which storage for
catalog is allocated
3

Zero (unused)

4

Upper:
Lower:

5

Upper: zero (unused)
Lower: number of entries, including holes, in
catalog

6

Zero (unused)

7

Length of

8-19

List of device addresses for catalog (zero if
issuing job is not enabled with the Load-CUmp
permission)

access with which catalog is open
preference and type of catalog

ca talcg

The format of the information pertaining to entries in the
catalog is as follows:
WOrd

Meaning

0-1

Nalle

2-3

PassVtOrd or name of trap prcgrarn (zero if catalog
is not open with Owner permission)

4

Catalog access word
days-used count
preference and type of file/catalog

5

Upper:
. Lower:

6

Upper :
Lower:

7

Length of file or MAX of catalog

8

Upper:
Lower:
opened

Page 126

ceded date of last use
ceded date of last roc:dification

status return fram OPEN of file/catalog
file reference number of file/catalog if

Pub. 1059

SYS'IEM PRCGRAMMING PEP. MANUAL

READ CATALCG AND OPEN FILES

Number of fragments in which storage for
file/catalog is allccated (zero if file/catalcg
not opened)

9

The success of the open of each subfile/catalog is determined in
the following manner:
(1)

If the file/catalog is master or slave trapped, then
the access bits are as allowed by the trapping program;

(2)

If the catalog specified in Xo is open with CWner
permission, then all access bits are allowed (unless
the file/catalog is trapped);

(3)

If the file/catalcg is not trapped an:1 the catalog
being read is not open with Owner permission, then the
accesses allowed are those in bi ts 3-8 of ~,e catalog
access word;

(4)

The allowed accesses are checked for usage conflicts
and masked off if any conflicts cccur;

(5)

Unless t..l-}e job issuing the ccrrmand is Load-D..lrnp
enabled,

(6)

(a)

Append permission is masked off if t..l1e catalog's
MAX has been exceeded,

(b)

All access bits are IIEsked off if the allocated
storage for t:.~e catalog exceeds twice its
permissible MAXi

Any remaining bits areANDed with the requested
accesses, and bit 0 is set to 1 if the file/catalog
being opened is a catalog.

If any accesses remain in bi ts 5-8, then those accesseses are
returned in bits 0-8 of \!,Ord 8 of the entry information block.
In a:1di ticn, t.'e nine user access bi ts fran 9-17 of the catalog
access ~rd are OF.ed into bits 9-17 of the access word in the
file/catalog's ·file control block. The status return fram the

Pub. 1059

Page 127

READ CATALCG AND OPEN FILES

open which occurs in word 8 of the entry information block is one
of the following:
Status Returns

o

Successful:

1

Partial success: the accesses in bits 0-8 were
obtained but differ from those requested.

2

Lockout:

5

Unsuccessful: no accesses were allowed.
1 if the file/catalcg is a catalcg ..

10

File off line: the upper half of status word 2
contains t..~e purged date, and the lower half-word
contains t..~e reel nt..JIni:er, preference I and TYPE.

40

Quotas exceeded:
(1)

the accesses in bits 0-8 were obtained.

all allowable accesses are currently busy.
Bit 0 will be

e i t.'er

The job has exceeded its allotted state vector

lengt.l-) , or
{2}

60

The job is not enabled for toad-D..lmp p:rmission
arrl the allocated storage for the catalcg is over
~Hice the permissible MAX ..

Out of storage:
is full.

the Executive's table of opened files

100 Access error : the catalcg is not open with Search
permission; bi ts 0-8 ccntain the missing permission
bit.
On completion of thecommand~ if the status return in status word

1 is rot between 100 and 360, then status word 2 contains t.f1e
difference bebNeen the number of words transferred and the number
of \oOrds requested (i.e. it contains minus t.~e numl:er of words
not transferred).. If the status in word 1 is bet-ween 100 and
360, then status word 2 is zero.

Page.128

Pub. 1059

SYSTEM PRCGRnM1ING REF. MANUAL

READ CATALCG AND OPEN FILES

Status Returns

a

Successful: all wurds were transferred and all
available file/catalogs were opened.

1

Source file exhausted: rrore ~.;ords were requested than
were contained in the formatted catalog information.

2

Destination file exhausted: sane words of formatted
catalog information were not transferred since the end
of the issuing job's storage was reached.

4

Source file pointer out of bounds: there are no
entries in the catalog with an entry numl:er greater
than or equal to MI.

5

The destination file pointer is out of rounds:

ei t.;'er ,

(1)

The pointer was initially out of bounds;

(2)

A MEMJRY RECOEST released job storage involved in

the copy; or
(3)

An attempt was made to ccpy into the pure region

of a job file which was swapped out of main
ItETOry.
14

The current' length of the issuing job 1 s state vector
will not accammodate another file control block.

20

Status was reset.

100 Access error: the catalog is not open with Read
permission; bits 0-8 of status word 1 contain the
missing permission bit.
120

Busy:

200

XO parameter error: XO is zero or does not contain the
file reference number of a catalog.

220

Xl parameter error:

Xl points out of bounds.

240

X2 parameter error:

X2 was not zero.

Pub. 1059

another operation is outstarrling on the catalog.

Page 129

READ CATALCG AND OPEN FILES

260

X3 parameter error:
zero.

4 - TPAPPIN3 EXECUTIVE CQ.MANDS

X3 points out of rounds or is

320 XS parameter error:

X5 points out of l:::ounds.

360 X7 parameter error:

x:7 points out of l::ounds.

400 Recoverable error:
catalog.
·420 Unrecoverable error:
eeen destroyed.

Page 130

an error occurred in reading

b.~e

information in the catalcg has

Pub. 1059

SYS'IEM PRCGRAl.'1MING REF. MANUAL

~

500116:

REPLACE

REPLACE

xo

File reference number of initial catalog to search

Xl

Points to name of file/catalog to replace

X2

File reference number of scratch file/catalog

X3

Points to password (or is zero)

X4

(bits

X5

Reserved for future use (must be zero)

X6

Trap location-

X7

Number of entries in treename (if zero, then 1 is assumed)

AQ

Slave trap identification words

o-a)

must be zero; (bits 9-17) trap bit mask

The REPLACE ccrrmand attempts to open t.l,e named file/catalog wi
all permissions and to replace it with the specified scratch
file/catalog.

t.'

In this respect it is roughly equivalent to the sequence of
catmands ~, CA.TALCG; however, the REPLACE canmand has a
number of advantages over this combination of c~ands. It
minimizes the number of catalog accesses required to perform ~,e
ccmbined function, and it permits the replacement of a. file/
catalog with a shorter version ina catalog whose MAX has been
exceeded even though the MAX rray still be exceeded after the
replacement.
The replacement will not be allowed if another job has the
file/catalog <:pen with Write permission; however Append
permission may be locked out at the time of the REPLACE.
The replacement will be made if Read, Write, and Append
permissions are present in the available accesses, unless the
allocated storage for the catalog exceeds its permissible MAX.
In this latter case the replacement will be made only if the

Pub. 1059

Page 131

REPIACE

4 - TPJ\PPING EXECUrIVE CG.'MANLS

lengb~ of the scratch file or MAX of the scratch catalog is less
than or equal to the length or MAX of the file/catalog which it
replaces. If after performing such a replacement, the catalog's
MAX is still exceeded, then Append permission will be removed
from the accesses available.

If the replacement is successful, then the file/catalog specified
in X2 becomes a cataloged file/catalog open with the accesses
which were determined to be available, and the catalog entry is
upda ted correspondingly. In addi tion to the available accesses
which are returned in status word 1 of the trap, nine user access
bi ts can be obtained by issuing a REQUEST STATUS. These user
access bits are obtained from bits 27-35 of the searched
catalog's access r,.;crd if the file/catalog was opened with a
pasS'W'Ord, and fran bi ts 9-17 of this access word if the
file/catalog was opened without a pasS'M:)rd or if it was protected
by a trap program. If the replacement was unsuccessful, ~,en the
file/catalog remains a scratch file/catalog and the catalog entry
remains unchanged.

A job which attempts to replace a file/catalog first has its
catalog word allotment decremented by the length of t.'e scratch
file or of the scratch catalog header. If ~~e replacement
succeeds then his scratch quotas are incren:ented by the same
amount. If the replacement dces not succeed, then this allotInent
is incremented by the amount of the original debit.
A file may not be replaced by a catalog, nor ma.y a catalog be
replaced by a file. Replacement of a cataloged file/catalog dces

not affect the narre, password, or access word in the catalog
entry. The replacement scratch file/catalog must not have been
passed to the issuing job with the return bit set.
U!=On completion of the ccrnrrand, a trap cccurs to the lccation
specified in X6. If the replacement was successful, bits 0-8 of
status word 1 contain the accesses with which the file/catalog is
now cpen. Status ~rd 2 contains the len;:Jt.h of the file or MA.X
of the catalog.

Page 132

Pub. 1059

REPLACE

SYS'IEM PRCGRAMMING FEF. MANUAL

S ta tus Re turns

o

Successful: the file/catalog was replaced and is now
open wi th the accesses in bi ts 0-8.

1

Partial success: the file/catalog was replaced and is
nON o!;€n wi th the accesses in bi ts 0-8. Append
permission has been masked off since the searched
catalog's MAX is exceeded.

2

Lockout: the cataloged file/catalog is
use with Write permission.

3

Not found: t..r,e desired file/catalog was not round in
the searched catalog.

4

Protection violation:
wrong.

5

Unsuccessful: one of the Read, Wr i te , or Append
permissions was not alloYfed.

6

Bad treename: Search permission was available on sane
intennedia te catalog ar:d the next entry in the treename
was not the last entry , but was the name of a file
rather than a catalog.

7

Fetch error:
(1)

cu~rently

in

t..r,e specified password was

ei ther

An error of type 3, 4, 5, or 6 occurred am Search

permission was not available on the catalog in
which the search was being performed; or
(2)

11

Pub. 1059

Search permission was not available on the (N-l) st
catalog and fetch per.mission was not available on
the file/catalog.

REPLACE disallowed:
file.

the named file/catalog is a device

Page 133

REPIACE

40

60

4 - TRAPPING EXECUI'IVE

Quotas exceeded:

C~

either

(I)

The length of the scratch file or catalog header
exceeds the job 1 s remaining catalog word
allotment, or

(2)

The specified catalog's MAX is exceeded, and the
length of the scratch file or MAX of the scratch
catalog is greater than the leng't..L' or MAX of the
file/catalog to be replaced.

OUt of storage:

ei ther

(I)

The Executive's table of opened files is full, or

(2)

A

new entrj' had to be made in the catalog for the
replacement and either
(a)

The catalog already had 4095 entries,

(b)

The Executive could not allccate sufficient
storage for a required ext~~ion of the
catalog, or

{c}

It is not possible to apper.d to t.~e catalog
since it eit.'er is a main-menory catalcg or
is already allocated in twelve fragments.

120

Busy: another operation is outstaroing on either the
catalog or the scratch file/catalog.

200

XO parameter error: XO dces not contain the file
reference number of a catalog.

220

Xl parameter error:

240

X2 parameter error: . either

Page 134

Xl points out of rounds.

(1)

X2 dces not contain the file reference number of a
scratch file/catalog,

(2)

The scratch file/catalog was passed to the issuing
job T,yi th the return bit set,

Pub.I059

REPIACE

SYSTEM PRCGR..ZlMMING REF. MANUAL

(3)

The type of the scratch file/catalog dees not
match the type of the file/catalog it is to
replace, or

(4)

The scratch file/catalog has a preference of 0, 1,
2, or 4 and may only replace a file in a core
catalog.

260

X3 parameter error:
of 1:oun:Js.

the pointer to the password is out

300

X4 parameter error:

bits 0-8 of X4 were not zero.

320

XS

360

X7 parameter error: X7 was greater than 10 (maximum of
10 names in the list of entries pointed to by Xl) .

400

Recoverable error:
catalog.

420

Unrecoverable error:
been des troyed.

Pub. 1059

parameter error:

XS

an

was not zero.

error cccurred in reading

t...~e

information in the catalog has

Page 135

4 - TRAPPING EXECUI'IVE CCMMANDS

REQ{JEST srA'IUS

~

500115:

REQUEST STATUS

xo

File reference

X3

Points to pointer to memory location M2

X6

Trap location

X7

Points to number of words N to read

n~ber

of file/catalog or zero

words of status information for the file/catalcg are read into
the issuing job's m:rrory starting at location M2. Upon
completion of the ccrnrnand, a trap occurs to the location
specified in X6.

N

If XO is zero, then the status infoonation pertains to the job
issuing the ccmrnand and has ~~e following format:
WOrd

Meaning

a

Job's remaining catalog word allotment

1

Job's remaining scratch word allotment

2

CRU limit· for job (in 1/64 milliCRU) -

not CRUs

remaining
3

Nt.nnber of I/O uni ts used

4-5

Identifying words from run list of the RON command
which spawned this job

6-7

Identifying words from run list of the RUN ccmrnand
which spawned the job wnich spawned t.~is one
Etc., for each job a1:ove this one in the job tree

If XO cootains the file reference number of a susperrled or
terminated jcb file, t.~en the status inforrration for the job file
specified has the following format:

Page 136

Pub. 1059

SYS'IEM PRCGRAMMING REF. MANUAL

REQUEST STATUS

WOrd

Meaning

o

Accesses/I'ype (see below)

I

Job length (core size) [will be zero for a
terminated job fileJ

2

Computer resource units (CRUs) consurr.ed

3

I/O uni ts consumed

4

Central processor units consumed

5

Core uni ts consumed

Note: The quanti ties in words 2 through 5 include resources
consumed by all terminated infra jobs.
If XC is nonzero and is not the file reference n~ber of a job
file or the slave end of a carmunication file, then the status
information for the file/catalog specified has the following
format:
Wbrd

Meaning

o

bi ts 0-17 (upper): accesses with °tlhich the
file/catalog is open
bits 18-26: zero
bits 27-28: preference adjustment
bits 29-31: preference (see Chapter 9 for
preferences)
bi ts 32-35: type (see Chapter 9 for types)

1

Length of file or MAX of catalog

2

Read/wr,i te p:::>inter

3

Upper: Maxirrurn accesses available on the file
through an ALTER ACCESSES ccrrtm3.nd (q .. v. ) .
Lower: Unique Identifier. This field can be used
by a job to determine whe~,er two FRNs actually
access the same file. The identifier will be the
same for the t~ FRNs if and only if they access

Pub. 1059

Page 137

REQ,JEST STATUS

the same file. The value of this field is
undefined for other than cataloged files.
4-N

Message sp€cified by

PASS camnand

The rressage starting in word 4 is available only if the
file/catalog was passed to the issuing job by a PASS camrnand and
if the REQUEST STATUS is the first file operation issued on the
file/catalog. (See PASS.)
If XC contains the file reference number of the slave end of a
communication file, then a special interrupt number 13 (slave end
issued REQUEST STA'IUS) is generated at the masterer.d. The
second interrupt 'NOrd contains t.'e number of words requested. No
status information for the file is supplied by the Executive.
Instead, it is the duty of the rraster end of the communication
file bowrite status information to the slave end via a WRITE or
copy comnand. In other words, a REQUEST S~ issued at the
slave a~d of a ccmmunication file behaves in the same manner as a
READ cannand, e..1,{cept that t..'e camnunication file can never l:e
reserved by a REQUEST STATUS camrnand. If the ccrnmunication file
is busy, either because arother em has an operation outstanding
on it, or because another er:d has reserved it, the slave em
issuing the PECGEST STATUS camrnand will be trapped wit., a status
- of 6. If the job at the master end of a camnunicationfile is
not accepting special interrupts when a slave end issues a
REQ,JEST STATUS, t..;'en that slave ern will be trapped wi th a status
of 7. If the canrnunication file is reserved for this end, it
will be released.
If the status return in status word 1 is not be~Heen 100 and 360
on completion of t.'e command, then status w~rd 2 contains the
difference between the number of words transferred and the number
of words requested (i.e. it contains minus the number of words
not transferred). If the status in word 1 is behveen 100 and
360, then status word 2 is zero.

Page 138

Pub. 1059

REQUEST STA'IUS

Status Returns

o

Successful: all words of status infor.mation were
transferred.

1

Source file exhausted: !tOre words of status information were requested than existed.

2

Destination file exhausted: some words of status
information were not transferred since the end of the
issuing job's storage was reached.

4

Source file pointer out of bounds:

5

either,

(1)

This file/catalog- has been passed with a message
aril the supra jcb has released the job storage
containing the rr.essage i or

(2)

This is the slave end of a communication file and
the master em is attempting to supply status
information fram a source file wTIose pointer is
au t of boums.

The destination file pointer is out of oounds:

either,

(1)

The pointer was initially out of oounOs;

(2)

A MEMJRY RECUEST released job storage involved in
the request; or

(3)

The issuing job was swapped out of main memory
while the master end of a communication file was
wr i ting into the job's pure region.

6

Communication file busy: the ccmmunication file at
whose slave er:d this ccmnand was issued is busy b€cause
another ern has an operation outstariiing on it, or has
reserved it.

7

The master end of the ccrnmUnication file at whose slave
end this ccmnand was issued is not accepting special
interrupts.

20

Status was reset.

Pub. 1059

Page 139

~ST

srA'IUS

4 -. TRAPpnx; EXEct1rIVE CCMMANDS

120 Busy: another operation is outstarrling on the
file/catalog.
200

XO parameter error: XO does not contain a valid file
reference number or contains the file reference number
of a former communication file whose other end has been
closed.

260 X3 parameter error:

X3 is zero or points out of

oouOOs.

360

x:; parameter error: X7 p:>ints out of munds or points
to a length greater than 2 18.
A

400

Recoverable error: an error occurred during the
transmission of the message on a passed file/catalog or
of the status information on ~,e slave end of a
ccrnmunication file. The lo~r half of status word 1
contains the status fran the device which generated the
error.

Page 140

Puh.1059

SYS'IEM

P~.MMING

Mr1E 500135:

REF. MANUAL

RESET STATUS

RESRr STATUS

xo

File reference number of file/catalog

X4

Flag bits

X6

Trap location

The file/catalcg is forced into an idle ·state. Any file
operation outstanding on the file/catalog is halted.. The ccrrmarrl
which initiated the operation is trapped, generally with a status
return of 20 (status was reset). Status cannot be reset on a
file/catalog 'Nhich has eeen passed to an infra job and which has
not yet eeen returned. A file reference number of zero is
invalid. Upon ccmp1etion of the cornnand, a trap cccur s to the
locaticn specified in X6.
A RESET STATUS issued on a running job will suspend execution of
that job and all jobs running i:elow it until a CCNI'IN1JE carmand

is issued ...
A RESET STATUS issued on a communication file for which an

operation is outstanding at both the master and a slave end will
cause status to be reset at both eros. A RESET STATUS issued on
the slave end of a ccmmunication file when no operation is
outstanding at the waster end of that file will generate a
special interrupt m.nnber two (slave end issued RESET STATJS) at
the master em am will cause the master errl to ee busy until a
RESET srATUS is issued on it. A RESET STA'lUS. issued at the slave
end of a cammunication file will cause the file to be released
(if it was reserved for that end) .

The flag bi ts in· X4 have the following meanings:

Bit

Function

o

Unassigned, must be zero.

Pub. 1059

Page 141

RESET srAIDS

4 - TRAPprn:; EXECUrIVE CCMMANDS

1

Must be zero unless XO contains the file reference
number of the master end of a communication file.
In that case, the file will l:e reserved for the
master end if this bit is one (see Section 5.4) •
If this bit is zero, any prior reservation by the
master errl will be released.

2-17

Unassigned, must be zero.

A RESET STATUS issued on the source file for pure procedure will
unbusy that file arrl declare the job to l:e impure; i. e. it has
the same effect as a PURE command in which X7 is zero.
A RESET STATUS on a file opened in shared roc::de will cause the
file to revert to an idle, unreserved (unlocked) state at the

issuing end.
Status Returns

o

Successful:

1

A

120

Busy:

status was reset.

RESET S~~ is already in progress on
catalcg.

~~is

file/

the fi1e/catalC9' has been passed to an infra

job ..

200

XO parameter error:
reference number.

300 X4 parameter error:

XO does not contain a valid file
X4 contains invalid flag bits.

"

Page 142

Pub .. 1059

SYS'IEM PRCGRAMMING REF. MAl.'1UAL

MME 500120:

RUN

RON

The RUN MME is very similar to the EXECt1I'E MME
differs only in the following:

(500117) and

(l)

Upon initiation of the job, the source file is closed
and its file reference number is assigned to the newly
created job file. This remains open with all accesses
possessed by the source file except Append permission
until the job file is closed.

(2)

The file reference number of the job file will not be
placed in the lower half of status word 1 of the trap
block specified by X6.

Pub. 1059

Page 143

SCPMOI

4 - TRAPPING EXECC.7rIVE

MME 500110:

C~

SCRATCH

xo

File reference number of file

X6

Trap location

The specified file, which must be ot:en with write am Append
permissions, is erased an:l roth its length and its read/write
pointer are set to zero. Upon o:::rnpletion of the command, a trap
occurs to the location specified in X6.
A ~ command issued at the slave end of a communication file
will generate a special interrupt number 14 (slave end issued
TRL'NCATE) at the master errl. The secor:d word of the special
interrupt will be zero (see TRUNCATE). If tlle canmunication file
is busy, either because another em has an operation outstarrling
on it, or because aoother em has reserved it, the slave errl
issuing the SCRATCH commar~ will be trapped with a status of 6.
If the job at the master end of a communication file is not
accepting special interrupts when a slave end issues a S~i,
then that slave end will be trapped with a status of 7. A
SCRATCH camnand cannot be issued on the master em of a communication file.
A jcb which scratches a scratch (catalcged) file will have its
scratch (catalcg) TNOrd allotment incremented by the length of t..l,e
file.
The cbservant reader will notice that the SCRATCH ccrnmand is
treated as a special case of the TRUNCATE command in which the
A-register is asst.mled to contain a zero.
Status Returns

o

Successful:

6

Ccmmunication file busy: ~,e communication file at
whose slave end this canmand was issued is busy l:ecause

Page 144

the file was scratched.

Pub. 1059

SYS'IEM PFCGRAMMING REF. Mf\NOAL

SCFA'ICH

another em has an operation outstan:1ing on it or has
reserved it.
7

The nEster en:1 of the canmunication file at whose slave
end this cc::mnand was issued is not accepting special
interrupts.

20

Status was reset on

~~e

TRUNCATE.

100 Access error: the file is not open with Append and
write permissions; bits 0-8'of status word 1 contain
the missing access bi ts.
120 Busy: another camnand is outstarrling on the file to be·
scratched.

200

xO parameter error: XO is zero and does not contain a
valid file reference number, or contains the file
reference number of a device, job, or master communication file.
.

Pub. 1059

Page 145

SET POINTER

M-1E

500113:

4 - TRAPpnx:; EXEaJrIVE CCM1.nM::S

SET PO INTER

xo

File reference number of file/catalog

X6

Trap location

A

Setting for read/write pointer

read/write IX'interof the file/catalog is set to the
specified value, and a trap occurs to the location specified in
X6. Zero is an invalid file reference number.

The

A SET POrnTER canmand. issued at the slave end of a canmunication

file will generate a special interrupt number 15 (slave end
issued SET FOrnTER) at the master end of the file. The secorrl
interrupt word will contain the specified setting for the
read/write pointer. If the communication file is busy, ei~,er
because another end has an operation outstanding on it, or
because another end has reserved it, the slave eoo issuing the
SET FOrnTER canmand. will be trapped with a status of 6. If the
job at the master end of a communication file is not accepting
special interrupts when a slave end issues a SET POrnTER, then
that slave end will be trapped with a status of 7. A SET POINTER
command may not be issued on the master end of a communication
file.
Status Returns

a

Successful.

1

Pointer out of bounds. Register A specifies a pointer
greater than the length of the file, or the file is a
catalog or device file arrl register A is not less than
2~18.

6

Communication file busy: the communication file at
slave em this canmand. was issued is busy because
aoother end has an operation olltstaooing on it or has
reserved it.

whose

Page 146

Pub. 1059

SYSTEM PRCGRAMMING REF. MANUAL

SET POINrER

7

The master en:1 of the ccmmunication file at whose slave
end this ccrnrrand was issued is not accepting special
interrupts.

20

Status was reset on the SET POINrER.

120

Busy: another opera'tion is outstaming on the file/
catalcg.

200

XO parameter error: XO is zero or dces not contain the
file reference number of a file/catalcg.

Pub. 1059

Page 147

TALLY CATALCG

Mv!E 500141:

4 - TRAPpnx; EXECUTIVE CCMMANI:S

TALLY CATALCG

XO

File reference number of initial catalog to search

Xl

Pointer to a tally word

X2

File reference number of file to be cataloged

X3

File reference number of alternate initial catalog

X4

Pointer to 2 words of permission and access information

XS

Pointer to two words for name of file/catalog cataloged by
the Executive

X6

Pointer to trap block

x:7

Pointer to usage and dates {Load-D.lrnp enabled jobs only} or
zero

The specified scratch file/catalog is cataloged in the file
system in a catalog denoted by a standard treename.
First an attempt to open the specified file is made using TALLY
OPEN (MME 500136). The trap bi t mask for the search is in bits
9-17 of the first THOrd pointed to by X4. If bit 4 (020000
[octal], tr.e escat=e convention bit) is set in the upper half of
this first word, then all special scanning conventions are
disallowed, and the catalog will be trapped with a format error
if the treenc3.I're contains a special first name. The name and
password of the file/catalcg to be cataloged cannot be sp:cified
with the "/" convention, and t.L'e catalog willl:e trapped with a
format error if that is attempted. For rore information on tally
operations, see Chapter 8.
If the Executive receives a file-nat-found status for the last
file/catalog then that file/catalog is cataloged if Append
permission is available on the destination catalog. For example,
if the treenc3.I're is A:B:C, then C is cataloged in A:B if am only
if A:B exists, Apper.d permission is available on B, and A:B:C
does rot already exist. The seo::>ro word p::>inted to by X4 is the
access v.ord with which the file will be saved. If the treenarne

Page 148

Pub.1059

SYS'IEM PRCGRAMMING REF. MANUAL

TALLY CATALCG

includes a password for the last file/catalog, then this password
will be put on the cataloged file/catalog.
If the job is enabled with Load-D.lrnp r:ermission and X7 is
non-zero, then it must point to ~ words of usage and dates
information. The upper half of the first word contains an
integer used to set the file 1 s days-used count; the lower half
contains type infocmation or is zero. The second word contains a
ceded Date Last Used in the upper half and coded Date Last
Mcdified in the lower half. See MME CATALCG or Chapter 9 for
more details on usage and dates infor.mation.
Upon completion of the operation, the job 1 s scratch word
allot:rr.ent is incremented by t..'e length of the file or of the
catalog header, and its catalog THOrd allotment is decremented by
this quantity plus the length of the entry created in the
catalog. Finally a trap occurs to the location specified by X6.
If the command was unsuccessful, then status word 1 contains the
reason for the failure. If the status is 12 or 40 or greater,
the two words p:>inted to by X5 are undefined. If the status was
7 (fetch error) then the ~ words are cleared. Otherwise, the
last file name scanned is placed in the two words. (These words
ne€d . rot be aligned on a even-word t:oundary.) If the status
returned fran the catalog is 12 (forma.t error) I then status word
2 will contain a· substatus, and a tally count and character
position pointing to t..'e character where the format error was
detected. See Chapter 8 for rrore information on format errors.
Status Returns

o

Successful:

1

Illegal trap protection request: a master trap
protection bit which is not allowed to the issuing job
has been specified.

2

Duplicate naIre: ~ entry with the given name is
already in the catalog.

Pub. 1059

the file/catalog was cataloged.

Page 149

4 - TRAPp:m:; EXEOJrIVE CCM1A.NI:S

TALLY CATALCG

3

Not found: Search permission was available on sane
intermediate catalog am the next file/catalog was not
found in it.

4

Protection violation: Search permission was available
on sore catalog I and the password specified for the
next file/catalog was wrong.

6

Bad treenarne: Search permission was available on sane
intennedia te catalog I and the next entry in the
treenane was not the last entry, but was the name of a
file rather than a catalog.

7

Fetch error: an error of type 2, 3, 4, or 6 occurred
and Search permission was not available on the catalog
in which the search was being performed.

12

Forma terror:
errors.

13

Illegal usage and dates: the usage infoomation pointed
to by x.7 was illegal; either the date last used was
zero, or the preference or type infor.mation was wrong.

14

Preference too low: the specified file has a
preference of 0, 1, 2, or 4 arrl may be cataloged only
in a core catalog.

40

Quotas exceeded:

60

see Chapter 8 for possible types of

ei t.~er

(1)

The job has exceeded its allotted state vector
length; or

(2)

Allocated storage for the next to last catalog is
over twice the permissible MAX, and files must be
erased fran this catalog before any can be opened.

OUt of storage:
is full.

the Executive's table of opened files

100 Access error: The initial catalog to search is not
open with Search permission; or the last catalog before
the file/catalog to be cataloged lacks Append
permission. Bits 0-8 of status word 1 contain the
missing permissions.

Page ·150

Pub. 1059

SYSTEM PRCGRll.MMING REF.

~

TALLY CATN..J:;G

another carmand is outstan:1ing on the catalog
specified in XO or X3.

120

Busy:

200

XO parameter error: XO dces not contain the file
reference number of a catalog.

220

Xl parameter error:
out of l:our.ds.

240

X2 parameter error: X2 does not contain the file
reference number of a scratch file/catalog.

260

X3 parameter error: X3 does not contain the file
reference number of a catalog.

300

X4 parameter error:

the p:::>inter to the tally

~.;ord

is

the two-word pair point-od to by X4

',vas cut of OOun::lS or an illegal bit was set.

320

X5 parameter error: X5 :r;:ointed to a
which was out of oounds.

360

X7 parameter error: the t~'lO-'HOrd pair PJinted to by X7
was out of bour.ds, or the job was not Load-CUmp enabled
and X7 was nonzero.

400

Recoverable error: an error occurred in reading an
intermediate catalog.

420

Unrecoverable error: information in an intermediate
catalog has been destroyed.

Pub. 1059

b,.;o;-~rd

pair

Page 151

TALLY ERASE

M-1E 500137:

4 - TRAPPING EXECUl'IVE CCMMANOO

TALLY ERASE

xo

File reference number of initial catalog to search

Xl

Pointer be a tally word

X2

Reserved for future use (must be zero)

X3

File reference number of alternate initial catalog

X4

(bits 0-3,5-8) must be zero, (bit 4) escap: special
convention, (bits 9-17) trap bit mask

X5

Pointer to two words for name of file/catalog erased by the
Executive

X6

Pointer to trap block

Xl

Reserved for future use (must be zero)

AQ

Passed to slave trap program if file is slave trapped

The TALLY ERASE ccmmand attempts to oren the specified file/
catalog with Read, Write, and Append permissions using TALLY OPEN
(MME 500~36). If the open is successful then the Executive
destroys the file/catalog together with its catalog entry.
If bi t 4 (020000 octal, the escape convention bi t) is set in X4,
then all sp:cial scanning conventions are disallowed, and the
erase will be trapped with a format error if the treename
contains a special first name.
For llOre information on tally operations, see Chapter 8.
catalog quota checks are suspended for the TALLY ERASE ccmrrand;
hence, it can be used to destroy files in catalogs whose quotas
have been exceeded. Conflict checks with accesses currently held
by other jobs having the given file/catalog open are suspended
for all accesses except Wr i te. A TALLY ERASE ccmmand may
therefore be used to destroy a fi1e/satalog which is open,
provided that it is not open f,vi th Wr i te permission. Wi th the

Page 152

Pub. 1059

SYSTEM PRCGRAMMING REF. MANUAL

TALLY ERASE

provided that it is not open wi th Wr i te permission. Wi th the
exception of this and the catalog quota check, a TALLY ERASE
command is identical in effect to the sequence of ccmrnands TALLY
OPEN, UNCATALCG,

am

cr.csE.

A job which issues a successful TALLY ERASE ccmrnand will have its
catalog ~rd allotment increrrented by the length of the file or
of the header of the catalog which was erased and also by ~~e
length of the catalog entry.
On cx::mpletion of the ccmrnand, a trap cccurs to ~,e location

specified in X6.
If the command was unsuccessful, then status word 1 contains the
reason for the failure. If the status is 12 or 40 or greater,
the t'lwu words p::>inted to by XS are undefined. If the status was
7 (fetch error) then the b.o ~rds are cleared. Otherwise, the
last file name scanned is placed in the two words. (These 'MOrds
need rot be aligned on a even-YlOrd t:oundary.) If the status
returned fran the open is 12 (format error) I then status word 2
will ccntain a substatus, and a tally count and character
position pointing to the character where the format error was
detected. See Chapter 8 for rrore information on format errors.
Status Returns

o

Successful:

2

Lcckout: the file/catalog is currently in use with
Write permission.

3

Not found:

4

Protection viola tion: Search permission was available
on some intermediate catalog and the password specified
for the next file/catalog was wrong.

Pub. 1059

the file/catalog was erased.

Search permission was available on serre
intermediate catalog am the next file/catalog was not
found in it.

Page 153

4 - TRAPpnx; EXEC!1rIVE CCMMANDS

5

Fail: Searqh permission was available on the next to
last catalog and none of the requested accesses were
available on the file/catalog.

6

Bad treename: Search permission was available on sam:
intermediate catalog and the next entry in the treename
was not the last entry, but was the name of a file
rather than a catalog.

7

Fetc..~

(1)

error:

eit..'1er

An error of type 3, 4, 5, or 6 cccurred and Search

permission was not available on the catalog in
which the search was being ferformedi or

(2)

11

Searc..~

permission was not available on the next to
last catalog and Fetch permission was not
available on the file/catalog.

TALLY ERASE disallo~:

t..1.e named file/catalo; is a

device file.
12

Format error:
errors.

see Chapter 8 for possible typ:s of

100 Access error: the initial catalog to search is not
or:en with Search permission; bits 0-8 of status TNOrd 1
contain the missing permission bit.
120

Busy: another carunand is outstar.ding on t..1.e catalog
specified in XO or X3.

200

XO parameter error: XO dces not contain the file
reference number of a catalog.

220

Xl parameter error:
out of l:ourrls.

t..1.e pointer to the tally word is

240

X2 parameter error:

X2 was nonzero.

260

X3 parameter error:

300

X4 parameter error:

Page 154

X3 aces not contain the file
reference number of a catalog.

bits 0-3 or 5-8 were nonzero.

Pub. 1059

SYSTEM PRCGRAMMING REF. MANUAL

320

XS parameter error: XS r:ointed to a t".vo-word pair
which is out of bounds.

360 X7 parameter error:
400

TALLY EFASE

X7 was nonzero.

Recoverable error: an error occurred in reading an
intermediate catalog.

420 Unrecoverable error: information in an intermediate
catalog has been destroyed.

Pub. 1059

Page ISS

TALLY OPEN

~

500136:

4 - TFAPpnx; EXECUTIVE

CG~

TALLY OPEN

xc

File reference number of initial catalog to search

Xl

Pointer to a tally word

X2

Reserved for future use (must be zero)

X3

File reference number of alternate initial catalog

X4

Desired accesses on the file, trap bit mask and escape
special convention bit

XS

Pointer to Cwo words for name of last file/catalog accessed
by the Executive

X6

Pointer to trap block

'X1

Rese-rved for future use (must be zero)

AQ

Passed to slave trap program if file is slave trapped

The specified file (denoted by a string of ASCII characters) .is
located in the file system and opened. A file reference number
is returned, which is used· on all subsequent operations on the
file.
The tally word pointed to by Xl is a tally word for the treename
of the file to be opened. A treename is defined to be a list of
zero or rIOre catalcgs separated by colons (:), with a file name
or catalcg nam: at the er:d. Any catalog/file in the treename may
have a password; the password immediately follows the catalog/
file name and is set off fran it by a ccrmna (,).
If bit 4 (020000 octal, t~e escape convention bit) is set in X4,
then all special scanning conventions are disalloW'ed, and the
ope..1"l will be trapped with a format error if the treename contains
a special first name. For more information on tally operations,
see Chapter 8.

Page 156

Pub. 1059

SYS'IEM PRCGRAMMING REF. MANUAL

TALLY OPEN

The procedure for opening the file/catalog specified by the
treename is as follows. If a special first-name convention is
not used, then the initial catalog specified by XO is searched
for the catalog specified by the first entry of the treename i if
XO is zero, then the Master File Directory (MFD) is searched. If
one of the special first-name conventions is used, then ~'e
ini tial catalog specified by X3 is searched regardless of what is
in xo. As each succeeding catalog in the treename is found, it
is searched for the catalog specified by the next entry of the
treename. Finally the next to last name in the treename is
searched for the file/catalog specified by the last name.
For every file/catalog in the treename, the accesses available
are determined in one ·.of two manners:

(1)

.If Sear~~ permission was available on ~~e previous catalog,
then the accesses available on the current file/catalog are
those all~ wi thcut a password (bi ts 3-8 of the current
file/catalog's access wurd) , or those all~ wi th a
password 'if one is given (bits 21-26 of the current file/
catalog's access THOrd) , or those returned by the master trap
prcgrarn if the catalog is so protected.
If Owner permission was available on the previous catalog
~~e current file/catalog is not protected by the master
trap prcgram, then all accesses are allowed on the current
file/catalog.

and

Slave trapping programs are run only on ~,e last file/
catalog in the treenarne. If a supra catalog is slave
trapp:d, the untrapped accesses are used.
(2)

If Search permission was not available on the previous
, catalog I then the accesses as given a1:ove are examined for
the presence of .the fetch bi t (bi t 4). If the fetch bi t is
on, then accesses are granted on the current file/catalog
just as if Search permission had l:een available on the
previous catalog. If the fetch bit is not on, then no
aa::esses are granted on the current file/catalcg.

Next the access bits allowed on the last file/catalog are checked
for use conflicts wi th accesses currently held by other jobs wi t...~
the same file/catalog open. Access bits that are in conflict are

Pub. 1059

Page 157

TALLY OPEN

4 - TRAPPING EXECUrIVE CCM-1ANDS

masked off. In addi tion, Append permission is masked off if the
catalog MAX of the next-to-last entry has been exceeded. All
access bits are masked off if the allocated storage for any entry
exceeds t:rJlice its permissible MAX. Accesses are ANDed with those
requested, and, finally, bit 0 of the access is set to 1 if the
file/catalog is a catalog. The file/catalog is opened if any
accesses remain in bits 5-8.
If bit 1 of X4 (200000 octal) is set, then the Executive will
open the file in shared IOCde. If the file is not already open in
unshared mode an:::1 bit 3 (040000 octal) is set in its access word,
then the available accesses will be reduced to a maximum of Read
and Write, and those accesses, if any, will be returned.
ccmpletion of t.~e ccrnmand, a trap occurs to the location
specified in X6. If the file/catalog was opened successfully,
then the access bits obtained are returned in bits 0-8 of status
word 1, the new file reference nu:ml:er of the opened file/catalog
in bits 18-35 of status word 1, and the length of the opened file
or the MAX of the opened catalog in status word 2.
On

In addition to the access bits returned in status word 1 of the
trap, nine user access bi ts can t:e obtained by issuing a REQUEST
STATUS. These user access bits are obtained fran bits 27-35 of
the opened file/catalog's access v..ord if the file/catalog was
opened wi th a password. If the file/catalog was opened wi thcut a
paSSwOrd or if it was protected by a trap prcgram, the user
access bits are obtained fran bi ts 9-17 of the access word.
"-

If the ccrnmand was unsuccessful, then status word 1 contains ~~e
reason for the failure. If the status is 12 or 40 or greater,
. the bK) t,t.Ords pointed to by X5 are undefined. If the status was
7 (fetch error) then the t-~ 'Nerds are cleared. Otherwise, the
last file name scanned is placed in the two words. (These words
need not be aligned on a even-word boundary.) If the status
returned fran the open is 12 (format error), then status word 2
will ccntain a substatus, and a tally count and character
posi tion pointing to the character where the format error was
detected. See Chapter 8 for m::Jre ~ormation on format errors.

Page 158

Pub. 1059

SYSTEM

P~G

REF .. MANUAL

TALLY OPEN

The read/write pointer of the opened file/catalog is initialized
to zero.
Status Returns

o

Successful: the accesses in bits 0-8 were obtained
are the same as those requested.

1

Partial success: the accesses in bits 0-8 were
obtained but differ fran those requested. This status
return can cccur if bit 0 of the requested access is 0
(is 1) and the opened file/catalog is a catalog (is a
file) .

2

!.cckout: due to usage conflicts, none of the requested
accesses was available on the file/catalog.

3

Not fotmd: Search permission was available on sane
intermediate catalog and the next file/catalog was not
found in it.

4

Protection violation: Search permission was available
on same intermediate qa~alog and the password specified
for the next file/catalog was wrong ..

5

Fail: Search permission was available on the next to
last catalog and none of the requested accesses ~~s
available on ~~e file/catalog.

6

Bad treename: Search permission was available on sane
intenredia te catalog and the next entry in the treename
was not the last entry, but was the name of a file
rather than a catalog.

7

Fetch er ror :

ar~

ei ther

(1) . An error of type 3, 4, 5, or 6 cccur red and Search
permission was not available on t.~e catalog in
which the search was being performed,· or
(2)

Pub.1059

Search permission was not available cn the next to
last catalog and Fetch permission was not
available on the file/catalog ..

Page 159

TALLY OPEN

10

Off-line file: the file to be
file. Bits 0-8 of status word
that would have been available
Status ~rd 2 contains the DLD
reel number in bits 21-26, and
in bits 29-35.

12

Fornat error:
errors.

40

Quotas exce€ded:

60

opened was an off-line
1 contain the accesses
were the file cataloged.
in the upper half, the
the preference and type
.

se: Chapter 8 for possible types of
ei ther

(1)

The job has exceeded its alloted state vector
length; or

(2)

Allocated storage for the next to last catalog is
over twice the p:rmissible MAX, ar.d files must be
erased fran this catalog before any can be opened ..

Out of storage:
is full.

t..'e Executive's table of opened files

100 Access error: the initial catalog to search is not
open vii th Search permission; bi ts 0-8 of status 'NOrd 1
ccntain the missing p:rmission bit ..
anot.~er ccmnand is outstar:dir-L9 on the catalog
specified in XO ..

120

Busy:

200

XO parameter error: XO dces not contain the file
reference number of a catalog.

220

Xl parameter error:
out of oour.ds.

t..'e pointer to

240

X2 parameter error:

X2 was nonzero .. ·

260

X3 parameter error:

320

X5 parameter error: X5 pointed to a tw:rword pair
which was aut of OOun::ls.

360

X7 parameter error:

Page 160

t..~e

tally word is

X3 dces not contain the file
reference number of a catalog.

X7 was nonzero.

Pub. 1059

SYSTEM PRCGRAMMING REF. MANUAL

TALLY OPEN

400

Recoverable error: an error occurred in reading an
intermediate catalog.

420

Unrecoverable error: information in an intermediate
catalog has been destroyed.

Pub. 1059

Page 161

TALLY REPIACE

~

500140:

4 - TRAPPING EXECUTIVE

C~1)S

TALLY REPLACE

xo

File reference number of initial catalog to search

Xl

Pointer to a tally word

X2

File reference number of scratch file/catalog

X3

File reference number of alternate initial catalog

X4

(bits 0-3,5-8) must be zero, (bit 4) escape special
convention, (bits 9-17) trap bit mask

XS

Pointer to two words for name of file/catalog replaced by
Executive

X6

Pointer to trap block

X1

Reserved for future use (must l:e zero)

AQ

Passed to slave trap prcgrarn if file is slav'"e trapped

The specified scratch file/catalog replaces a file/catalog in the
file syste.rn (denoted by a stan:lard treename).
The TALLY REPLACE camnand atte.rnpts to open the file/catalog using
TALLY OPEN. If Read, Write, and Append permissions are available
in the catalog accesses and no other job has the file open with

Write permission, ~~en an atte.~t to replace the named file/
catalog wi~~ the specified scratch file/catalog is made.
If bit 4 (020000 octal, the esca~ convention bit) is set in X4,
then all special scanning conventions are disallowed, and the
replace will be trapped with a format error if~'1e treename
contains a special first name. The name and password of the
file/catalog to be replaced cannot l:e specified with the n/n
convention, and the replace will be trapped with a format error
if that is attempted. For rrore information on tally operations,
see Chapter 8.

Page 162

Pub. 1059

SYS'IEM PRCGRAMMING REF. MANUAL

The replacement will be made unless either the replacement would
cause the catalcg' s quotas to becane exceeded, or the catalcg IS
quotas are already exceeded. If the catalcg r s quotas are already
exceeded, then the replacement will be made only if the length of
the scratch file or MAX of the scratch catalcg is less than or
equal to the length or MAX of the file/c~talcg which it replaces.
If the MAX of the catalog is still exceeded after replacement,
then Append permission will be rerroved fran the accesses
'available Q'l the replaced file/catalcg.
If the replacement is successful, then the file/catalog specified
in X2 beccmes a catalcged file/catalcg open with the accesses
which ~re determined to be available, and the catalog entry is
correspondingly updated. If the replacerrent was unsuccessful,
then the file/catalog remains a scratch file/catalog and the
catalog entry remains unchanged.
which attempts to replace a file/catalcg first has its
catalcg ~rd alloi::Irent decremented by t..~e length of the scratch
file or of the scratch catalog header. If the replacement
succeeds, then this allotment is incre.'lEnted by the length of the
file or header of the catalcg which was replaced. If the
replacement dces not succeed, then this allotment is incremented
by the am::xmt of the original debit.

A job

file may not be replaced by a catalog, nor may a catalog be
replaced by' a file. Replace.'11ent of a catalcged file/catalcg dces
not affect the nam:, password, or access oord in the catalcg
entry. The replacement scratch file/catalcg must not have been
passed to the issuing job with the return bit set.

A

canpletion of the camnand, a trap cccurs to thelccation
specified in X6. If the file/catalog was replaced successfully,
then the access bits obtained are returned in bits 0-8 of status
word 1, the new file reference number of the replaced file/
catalcg in bits 18-35 of status word 1, and the length of the
file or the MAX of the catalog in status word 2.

On

In addition to the access bits returned in status word 1 of the
trap, nine user access bits can be obtained by issuing a REQJEST
S'mTtJS. These user access bits are obtained fran bits 27-35 of

Pub. 1059

Page 163

the replaced file/catalog's access word if the file/catalog was
opened with a password. If the file/catalog was opened without a
password or if it was protected by a trap program, the user
access bits .are obtained from bits 9-17 of the access word.
If the command was unsuccessful, then status word 1 contains the
reason for the failure. If the status is 12 or 40 or greater,
the two 'M:>rds p::linted to by XS are undefined. If the status was
7 (fetch error) then the Oro words are cleared. Otherwise, the
last file name scanned is placed in the ~ words. (These words
need not 1::e aligned on a even-word boundary.) If the status
returned fran the replace is 12 (format error) ,then status word
2 will contain a substatus, and a tally count and character
PJsition pointing to the character where the format error was
detected. See Chapter 8 for rore information on format errors.
Status Returns

o . Successful:

the file/catalog was replaced and is now
open with the accesses in bi ts 0-8.

1

Partial success: the file/catalog was replaced and is
nCM open with the accesses in bi ts 0-8.
Append
permission has been masked off since t.l-te searched
catalog I s MAX is exceeded.

2

Lockout: the cataloged file/catalog is currently in
use wi th Wri te pennission.

3

The desired file/catalog was not found in the searched
catalog.

4

Protection violation: Search permission was available
on sane catalog and the password specified for the next
file/catalog was wrong.

5

Unsuccessful: one of the Read, Write, or Append
permissions was not allowed.

6

Bad treenarre:

Page 164

Search permission was available on sane
intermediate catalog and t..l-te next entry in the treename
was not the last entry, but was the name of a file
rather than a catalog.

Pub. 1059

TALLY

SYS'IEM PRCGRAMMrNG REF. MANUAL

7

Fetch error:
(1)

REPI~

either

An error of type 3, 4, 5, and 6 occurred and

Search permission was not available on the catalcg
in which the search was being }?erformedi or
(2)

11

Search permission was not available on the (N-l) st
catalog and Fetch permission was not available on
the file/catalcg.

REJ?L.P...cE

disall~:

the narred file/catalcg is a device

file.
12

Format error:
errors.

see Chapter 8 for possible types of

40

Quotas exceeded:

either

(1)

The length of tl1e scratch file or catalcg header
exceeds the job r s remaining catalog word
allotment, or

(2)

The specified catalcg's MAX is exceeded, and the

length of the scratch file or ~ of the scratch
catalog is greater than the le~t.' or MAX of the
file/catalcg to be replaced.

60

Out of storage:

ei~~er

(1)

The Executive's table of opened files is full, or

(2)

A new entry had to be made in the catalog for the

replacement and

ei~~er

(a)

The catalog already had 4095 entr ies;

(b)

The Executive could not allocate sufficient

storage for a required extension of the
catalogi" or

(c)

Pub. 1059

It is not possible to appeoo to the catalog
since it either is a core catalog or is
already allocated in twelve fragm::nts.

Page 165

4 - TPAPp:m:; EXECUrIVE

TALLY REPLACE

,

~

100

Access error: the initial catalog to search is not
open with Search permission; bits 0-8 of status word 1
contain the missing permission bit.

120

Busy: another operation is outstaooing on' either the
catalog or the scratch file/catalog.

200

XO parameter error:

220

Xl parameter error:
out of 1:our.ds.

the pointer to the tally word is

240

X2 parameter error:

either

XO does not contain the file
reference number of a catalog.

(1)

X2 dces not contain the file reference nLlItlber of a
scratch file/catalog;

(2)

The scratch file/catalog was passed to the issuing
job with b,e return bit set;

(3)

The ~ of ~~e scratch file/catalog does not
match tL,e type of the file/catalog it is to
replace; or

(4)

The scratch file had a preference of 0, 1, 2, or 4
and can only replace a file in a core catalcg.

260

X3 parameter error: X3 is nonzero and does not contain
the file reference number of a catalog.

300

X4 parameter error:

bits 0-3 or 5-8 of X4 were

nonzero.

320 XS parameter error:

X5 r:ointed to a

t~fHOrd

pair

which was cut of OOlli-xJS.
360

X7 parameter error:

400

Recoverable error:
catalcg.

420

Unrecoverable error:
been destroyed.

Page 166

X7 was nonzero.
an error cccurred in reading the

information in an catalog has

Pub.1059

TRUNCA'IE

SYS'IEM PRCGRAMMnX; REF. MANUAL

M-1E 500107:

TRONCA'IE

xo

File reference number of file

X6

Trap location

A

Length

The file specified in XO, which must be open with Write arrl
Append permissions, is truncated to the length specified in the
A-register. If the file's read/write pointer points beyond the
new end of the file 1 it is reset to point to the end of the file.
Upon completion of the canman:1, a trap cccurs to the lccation
specified in X6.
A TRONCA'lE camarrl issued at the slave end of a ccmmunication
file will generate a special interrupt number 14 (slave end

issued TRUNCATE) at the master end. The secorrl wurd of the
special interrupt will contain the length specified in the
A-register. If the cammunication file is busy, either because
another end has an operation outstanding on it, or because
another end has reserved it, the slave end issuing the TRUNCA'IE
cornnand will be trapped with a status of 6. If the job at the
master end of a cammunication file is not accepting special
interrupts when a slave end issues a TRIJNCATE" then that slave
end will be trapped with a status of 7. A TRm..iCATE camano
cannot be issued on the master end of a communication file.
A job which trun:::ates a scratch (cataloged) file will have its
scratch (catalog) word allotment incre.rnented by t.~e nurnl::er of
words truncated from the file.
Status Returns

o

Successful:
length.

1

Unsuccessful: the specified length is
current length of the file.

Pub.10S9

the file was truncated to the specified
lo~er

than the

Page 167

TRUNCATE

.

4 - TRAPPING EXECIJI'IVE CCM1ANI::S

6

Communication file busy: the communication file at
whose slave end this canmand was issued is busy b€cause
aoother en:] has an operation outstarrling on it or has
reserved it.

7

The master end of the communication file at whose slave

eoo this ccmnand was issued is not accepting sp€cial
interrupts.
20

Status was reset on the TRUNCATE.

100

Access error: the file is not oP2n with Append and
Wri te permissions; bits 0-8 of status Yw'Ord 1 contain
the missing access bits.

120 Busy:

another canmand is outstarrling on the file to be
truncated.

200

Page 168

XO parameter error:

XO is zero and does not contain a
valid file reference number, or contains the file
reference number of a device, job, or master communication file.

Pub. 1059

SYSTEM PRCGRAMMrNG REF. MANUAL

Mv1E 500104:

ONCATALCG

ONCATALCG

xo

File reference number of cataloged file/catalog

X6

Trap location

The cataloged file/catalog, which must be open with Read, Write,
and Append permissions, becomes a scratch file/catalog with Owner
and eXecute/Search permissions added to its accesses if not
already present. The catalog entry for the uncataloged file/
catalog is destroyed. Uf:on a::rnp1etion of the ccmmand, a trap
occurs to the location specified in X6.
A job which successfully uncatalogs a file/catalog has its
scratch word allobnent decrerrented by the length of the file or
of the catalog header. At the same ti.rr.e its catalog word
allotIrent is incremented by t.~is am::;unt plus t.~e length of the
catalcg entry.
Status Returns

a

Successful ..

1

The file/catalog is not cataloged ..

40

CUotas exceeded: uncatalcging the file/catalog would
cause the job's remaining scratch 'M:>rd allotment to be
exceeded.

100

Access error: t.~e file/catalog is not open wit.., Read,
Write, and Append permissions; the missing p:rmission
bits are set in bits 0-8 of status word 1.

120

Busy: another ccrnnand is outstanJing on t..'1e file/
catalog.

200

XO parameter error:

Pub.l059

XO does not contain t'le file
reference number of a cataloged file/catalug, is zero,
or is the file reference number of a device file.

Page 169

UNCATALCG .

400

Recoverable error:
catalo:.:r.

420

Unrecoverable error:
been destroyed.

Page 170

4 - TRAPpnx; EXEcurIVE CCMw!ANJ:S

an error occurred in reading the
information in .the catalcg has

Pub. 1059

SYSTEM PRCGRAMMING REF. MANUAL

M-1E 500134:

WRITE

tti1UTE

Xl

Points to pointer to memory location Ml (may not be zero)

X2

File reference number of destination file (may not be zero)

X4

Flag bits

X6

Trap location

X7

Points to number of words N to write into destination file

at

N words starting
memory location M1 are written into the
destination file, starting at the current location of that file's
read/write p:>inter. write permission is required on the
destination file if the write will alter any existing data in the
destination file, and app:n:1 permission is required if the write
will make the destination file longer. If the end of the issuing
job's storage is reached, an errl-of-file corrlition cccurs and
data transmission stops. If any of the words transferred to t.l-:le
destination file are outside the range of that file, and the file
is rot opened with Append permission, an er.d-of-file corx::1i tion
cccurs an::1 data transmission stops. l"11;:On canpletion of the copy 1
a trap cccurs to the location specified in X6, and the read/write
pointer for the destination file is upJated to PJint to the word
beyond the last one wr i tten.
A WRITE issued at the slave end of a communication file will
generate a special interrupt number 12 (slave end issued WRITE)
at the master errl. The secorrl interrupt word will contain t.L~e
length of the WRITE. No data will be transferred until the
master em issues a corresp:Jnding READ or COPY. (See the
descripticn of camunication files in Section 5.1.) If t..~e cernmunica tion file is busy, ei ther because another em has an
operation outstaOOing on it, or because another end has reserved
it, the slave end issuing the WRITE canmand will be trapp:Ci with
a status of 6. If the jcb at the master em of a canmunication
file is not accepting special interrupts, the slave erd issuing
the wE'rE ccrnrrand will be tra~::ed with a status of 7.

Pub.lOS9

Page 171

4 - TRAPPING EXECUTIVE CQv1MANDS

WRITE

The flag bits in X4 have the following meanings:

Bi t

Function

0-8

CUrrently unassigned.

9

Must be zero unless X2 contains the file reference
number of a master communication file. In that
case, ~~e corresponding slave end will be trapped
only if a oonzero status return occurs or if this
bit is zero.

10

Must be zero unless X2 contains ~,e file reference
number of a slave ccmmunication file or shared
file. In that case, the ccmmunication file or
shared file will be reserved for the em issuing
the WRITE if this bi t is one. Ot.~erwise it will
be released.

11-17

Must be zero.

Must be zero.

Upon L~itiation of a WRITE command into a scratch (cataloged)
file which is open with Append permission, the job's scratch
(catalog) word allotment is decremented by the amount by which
the destination file may t.e extended. UpJn canpleticn of the
wlUTE command the job's scratch (catalog) THOrd allotment is
incremented by ~~e number of words charged to this allotrr~nt but
not appended to the destination file.
If the status return in status word 1 is not between 100 and 360
on o:mpletion of the WRITE command, then status word 2 contains
the difference between the number of words transferred and the
number of words requested (i.e. it contains minus the nurober of
words rot transferred). If the status in word 1 is between 100
and 360, then status word 2 is zero. If the destination file is
a device file, then the lo~r half of status "HOrd 1 contains the
status return from that device.
The cbservant reader will notice ~,at the WRITE command is
treated as a special case of the COPY command in which roth XO
and X3 are assumed to contain zeros.

Page li2

Pub. 1059

SYSTEM PRCGRAMMING REF. M.l\NUAL

Status Returns

o

Successful:

1

Source file exhausted: same words were requested but
not transferred fran main rnerrory, since the en:1 of the
issuing' job's storage was reached.

2

Destination file exhausted: sana words were not
transferred because the destination file was full and
was not open with Append permission.

3

Command inappropriate: the WRITE was issued at the
master errl of a' canmunication file wi thcut having a
corresp:Jnding READ canrnand outstarrling at a slave er:d
of that file.

4

The source file pointer is out of bounds:

all words were transferred.

eit~er,

(1)

The p:>inter was initially out of l:ourlds;

(2)

A MEMJRY RECUEST

released job storage involved in

the write; or
(3)

An attempt was made to write, fran the pure region

of a job file which was S"'wapp:d out of main
memory.
5

The destination file pointer is out of munds:

(1)
(2)

ei ther ,

The p:>inter was initially out of bounds;
The other en:1 of a canmunication file issued a
MEMJRY REQUEST which released job storage involved

in the write; or
(3)

An attempt was made to write into the pure region
of a job file which was swapP=d out of main

rn::n¥Jry.
6

Pub. 1059

The oommunication file at whose slave end this canrnand
was issued is busy, ei t..'1er Cecause another eoo has an
operation outstanding, or because another end has
reserved t~e communication file.

Page 173

WRITE

4 - TFAPPING EXECUrIVE ro1MANI:6

7

The master end of the oammunication file at whose 'slave
end· this ccmmandwas issued is not accepting special
interrupts.

20

Status was reset on the WRITE ccmmand.

40

Quotas exceeded: it was J:X)ssible for the WRITE canmand
to exceed the job I S remaining scratch or catalog' word
allotment; no words were transferred.
.

60

Out of storage: the Executive could not allocate
sufficient storage for a required extension of the
destination file.

100 Access error: the destination file is not open wi~~
the necessary Wr i te or Append permission. Bi ts 0-8 of
status word 1 contain the missing permission bi ts.
120 Busy: anot..~er q:eration is outstarrling on the
destination file.
220

Xl parameter error: Xl is zero or points to an
out-of-l:cl.Jl"lds location.

240

X2 parameter error: X2 dces not contain the file
reference number of a file.

300

X4 parameter error:

X4 contains L,valid flag bits.

360

X7 parameter error:

X1 p::>ints out of Ccunc1s.

400

Recoverable error: an errorcccurred during transmission of data. The l~r half of status word 1
cootains the status fran the device which genera ted the
error. This return can cccur if a device file is being
written via a ccmmunications file and the issuing job
is swapped aut of main meIlX:)ry.

Page 174

Pub. 1059

Chapter 5
Communication Files

A communication file is a pseudofile which allows direct
communication between jobs. A communication file has a master
end and one or !TOre slave ends. Each em appears similar to an
ordinary file. It has a file reference num1::er which rray be used
as a param:ter for certain Executive calls, principally the COpy
comnand. Other calls which may be llSed wit., communication files
are DRIVE, Pft.8S, CLCSE, REQUEST srATUS, RESET STA'IUS, TRUNCATE
(or SCPATal) , and SEI' POINTER.
This chapter describes how ~~ese operations affect ccmmunication
files and explains other features related to ccmrnunication files.
An extended example can be foum at the errl of the chapter.

5.1 copy Commands
The Copy comnand ar:d its variants, READ am WRITE, are used to
perform the pr~ary function of ccmmunication files: ~~e direct
transfer of data between jobs. Generally speaking 1 data which is
copied 11 intoll one em can be copied "out of ll the other em. Data
transfer is always initiated at a slave end, and takes place
between that slave end and the master em.
5.1.1

Slave End copy Comrnams

A COPYcomnand involving a slave end of a communication file may
be issued at any tirn= that the carmunication file is not busy
(see Secticn 5.5), and uses the same format as a COpy canmar.d
involving 011y ordinary files (see COPY MME). Besides ~~e

Pub. 1059

Page 175

SYSTEM P:RCGR»lMING

REB~

MA.NUAL

restrictions normally imposed on the COpy command, the following
must be observed:
(1)

If the COpy source file (specified in XO) is an end (either
master or slave) of a communication file, the COpy
destination file (specified in X2) may not be. In other
words, only one canmunication file em may be specified as a .
parameter for a given copy canmand.

(2)

If the other file involved in ~he copy is a device file (see
Chapter 6), then the ultirrate source or destination of the
data must be'main memory. Since this is determined by the
job at the master end of the ccmmunication file independently of any action which the slave end job can take, it is
not reconunended that copy canmands be attempted between
device and communication files.

When the slave em issues a COpy canmand, the job holding the
master end is notified by a special interrupt of its action.
(See "Special Interrupts", Section 1.4.2). Data transfer dces
not take place until the master end issues a corresponding copy
cornnand. It should be noted, therefore, that copy canmand
operations issued at the slave end of a communication file may
take a comparatively long time to complete. If the master end
job is not accepting special interrupts, no copy canmands are
possible en the cormunication file. Any attempts are rejected
with t..;'e status of "other eoo not accepting specials" (7).
The total length of data transferred (barring other errors) is
the lesser of that requested at the slave end and that requested
at the master. The end requesting "teo many" words is trapp:=d
with the status "source exhausted" (1) or "destination exhausted"
(2), as at;:propriate (unless the master em job exercises the
"no-trap" option - see below). This means that these statuses
need not have their normal meaning on communication file COPY
carrnands. On an ordinary file, these statuses would mean that
further READ or w~T.E canmands are futile; however, they may
represent normal and ,expected returns on communication file
operations.

Page 176

Pub. 1059

5 -

5.1. 2

~ICATICN

FILES

Master End COpy Ccrnmands

As roted al:ove, a copy camrand may only be issued at the master

end after the job at that er:d has been notified by a special
interrupt that a COPY has been issued at a slave end. It is
imperative that the job holding the master end be accepting
special interrupts (have a valid, nonzero, special interrupt
tally word - see Section 1.3). If it is not, all COPY camrands
at slave ends will be rejected with the status of "other· end not
accepting specials (7).
If

When the master end job receives a special interrupt indicating
"slave issued ~l)" (a job requested data transfer fran a slave
end of the communication file), it should issue a copy (or WRITE)
ccmnar.d transferring data to the master em. Similarly, in
response to a "slave issued WRrlE" special, it shculd issue a
read-type cammand. (Types of special interrupts are described in
Section 1. 4 .8). The same restr ictions which apply to slave errl
copies also apply to the master en:1. That is, only one of the
files specified in a COpy camrand may be an en:1 of a ccrrmunication file, and copies between a device file ar~ communication
file should not be attempted. The previous remarks on t.~e
source-exhausted and destination-exhausted statuses also apply to
the rtEster end. Ho~ver, since the length requested by t..~e slave
end is contained in the special interrupt pair, it shculd always
be fOssible for the master end job to predict the file-exhausted
statuses.
wben copying to or fram the master end of a communication file, a
file pointer shculd not be specified (Xl or X3 should be zero).
This is because the slave end job has already completely
specified the de~tination or source of the data to be copied
through the canmunication file. If a file pointer is specified,
it will be checked for validi ty am then ignored.
Once the master em job has received the special interrupt, it
must eventually issue the corresponding COPY ccmnar.d, unless it
resets status on the master errl (see Section 5.5). Any other
opera tion .on the master en::1 (except REQUEST STA'IUS) will be
rejected as "inappropriate" until the COpy camrand is issued.

Pub. 1059

Page 177

5.1.3

The "No-Trap" Cption

When the master end job issues its COpy canmand, the usual action
taken by" the Executive is to transfer the requested data and then
to trap the copy at l:oth er.ds (master arrl slave) involved. The
comnunication file then reverts to an idle or reserved state,
depending en the option selected by the slave end job (see

Section 5.4). Ho~ver, when the master end COpy camnand is
issued, the "no-trap" option may be specified by setting the
appropriate flag bit in X4 (see COPY MME). In this case, when
the data has l:een transferred, and if the master end status is
"successful" (0), the slave end job is not trapp:d. Instead, the
slave end COPY remains outstaming an:1 rrore master end copy
comnands rray be issued to satisfy any part of the slave em f s
request that was not fulfilled by a previous COPY. If the status
presented at the master er.d is not "successful" I the slave end is
traB?€d as if the option had not l:een specified. In other words,
the option has no effect in this case. The no-trap option allows
the master errl job to satisfy tJ.'e slave em's request in a
piecemeal fashion. For an example of the use of the no-trap
option, see Section 5.6.

5.2 Non-ropy Ccmmands
Communication files are temporary entities, existing only as long
as the rr.aster end and at least one slave em exist. If either
the master end or all slave er~s are closed, the ccmmunication
file disappears. Thus t.r,e file reference nUITl!:er of an end of a
communication file is an L~valid parameter for many Executive
calls dealing with the catalcg structure, such as OPEN, ~...sE,
CATALCG, or REPLACE. Intended. for carmunication, the eros of
carmunication files cannot l:e "run". An attempt to do so will
result in a parameter error status. Many other Executive calls
are similarly restricted to files other than communication files.
Those oommands which can be used with communication files are
discussed here.

Page 178

Pub. 1059

5 - a:Mv1UNICATICN FILES

5.2.1

REQUEST STATUS (Master End)

RECUEST STATUS can be issued to the master er:.d of a ccmmunication file, and will produce the same four-word status block as
for an ordinary file (see REQUEST STATUS MME). The typ= field of
the status block will indicate master cammunication file.
However, the other fields (access, preference, length, pointer)
are used by the Executive to maintain the current state of the
communication file and will frequently contain meaningless
information. Under certain circumstances, however, useful
information may be extracted from these fields.

A

The two high-order user access bits (bits 9 and 10) are used to
indicate wnen a slave end has issued a COpy (to which the master
end has not yet re5pJnded). B$CW (bit 9) will 1::e on if (and only
if) a slave end has issued a write-type canmand. B$CR (bit 10)
will be Q'l if a slave end has issued a read-type command. In
either case, t.a.'e preference, length, and pointer fields will
reflect the state of the file at the far end of t.a.'e ccmmunication
file; i.e. the other file involved in the slave end job's COpy.
5.2.2

REQUEST STATUS (Slave End)

RECUEST STATUS to the slave end is treated quite differently.
It is essentially a variant of the READ camnand. 'Wnen the slave
end job issues it, a "slave issued request status" special
interrupt is generated at the master end job to write complete
status information to the master em. This infonnation is
presented to the slave end job as its status block, and no status
information is provided by the Executive. No checks are made on
the format of this information, and the master eoo job can write
whatever it wishes. However, systemccnventiondictates that the
first three words of status information should correspond in
fornat to the status block provided by the ExecUtive for an
ordinary file (see REQUEST STATUS ~<1ME) and should shOW' a type of
slave ccmmunication file. The master end job writes status
information with a COPY or WRITE command, exactly as if the slave
end job had issued a READ command. It may exercise the no-trap
option if it desires.
A

Pub. 1059

Page 179

5.2.3

DRIVE (Master End)

Data transfer may not be requested at the master end of a

communication file withOut prior action at a slave end. It is
sometimes desirable to allow the master end job to initiate a
chain of events involving the communication file, and the DRIVE
cornnand can be used for this purpose. wl1en the master end job
issues a DRIVE, a special interrupt is generated at a slave end.
(The selection of the slave end to recei ve the special, in cases
where nore than one slave end exists, is discussed below.)· The
type of special interrupt is determined by the drive type given
in bits 0-17 of the A-register on the DRIVE cornnand. The valid
DRIVE types at the master end of a communication file are:
(1)

"Read canmunication file" drive: A drive of type 1 (and b.'e
corresponding special interrupt) is conventially used by the .
master end job to signal a slave end job that the master end
job has data which the slave end shculd read. The master
er:d job may not simply write directly into the ccmmunication
file, since only a slave end may initiate data transfers.
When the drive is issued, a special interrupt is given to a
job holding a slave end. If the communication file is not
reserved to any slave end (see Section 5.4) 1 the special is
giva~ to the lowest job which holds a slave end and which is
accepting specials (see Section 1.4). If a slave eoo has
t..'e file reserved, the special must be given to the job
holding that end, or not at all. If no job ITEets t..l1ese
criteria, t..l1e master end job has its DRIVE trapped with a
status of "other end not accepting specials" (7).

(2)

"Break" drive: A drive of type 3 (and the corresponding
speciaL interrupt) is conventionally used to notify a slave
em job of sane sort of "panic-stop" condi tion. Its rrost
typical use is with a tenninal camunication file, to
indicate the receipt of a break signal fran the terminal.
Since one of the inteooed purposes of this drive is to
request the termination of runaway slave jobs by a higher
job in the tree, this drive is treated specially by the
Executive. If no slave errl has reserved the caranunication
file, the special is given to the lowest job in the job tree
which holds a slave end, which isacceptL~g specials, and
which has eXecute (nbreakn) ~rmission on its end of the
communication file. If a slave end has reserved the file,

Page 180

Pub. 1059

5 - mMJNICATICN FILES

the special is given to the lowest job rr.eeting all these
corrli tions, and which is also not lower than the job holding
the reserving end. Thus if the job holding the reserving
er.d meets all the other qualifications, it will receive the
special. If no job can te foun:l meeting these criteria, no
S}?eCial interrupt will be given, and the DRIVE ccmmand is
trapp:d with the status of "other er:d not accepting
specials" (7).
If a SjpeCial is given to a job holding a slave end of a
communication file due to a drive issued at· the master end, then
the communication file will automatically be reserved to that
job.
5.2.4

DRIVE (Slave End)

Certain drive ~s may be issued at a slave end of a communication file to generate special interrupts at the master er:d job.
In particular, a set mode drive (type O) or a device drive (type
l2) may l:e issued. (Only these t~s are legal.) The two drives
will generate the corresponding special interrupts (set mode and
slave-issued drive) at the job holding" the master em. If the
master end job is not accepting specials, the DRIVE will be
trat=Ped with the status of flother er:d not accepti.'1g specials lf
(7). A .set m:de drive is conventio~..ally used to specify
directions for the handling of data to be transferred through the
communication file. For terminal cammunication files in
particular, it is used to set input arrl output rrcdes (see DRIVE
MME). The exact interpretation of a "set nx:de" special interrupt
among the jobs holding ends of ~,e communication file is a matter
of convention. Device drives are not normally used on communication files but are permitted by the Executive.
5.2.5 TRUNCATE, SCRArol, and SEI' POINTER (Slave End Only)
These commands may be issued to a slave end and will generate
special interrupts at the master errl job, notifying it of the
action at the slave end. wl1en a slave en:1 jcb issues a TRtiNCATE
to the slave eOO, a "slave-issued truncate" special is generated.
wl1en the slave end jcb issues a SEI' FOINrER, a "slave-issued set
pointer" special is give..'1 to the master em job. A SCFA'IOI

Pub.I059

Page 181

issued to a slave end generates a "slave-issued truncate" special
specifying a length of zero. As wi th DRIVE, the "other end not
accepting specials" status (7) can occur. Wnen issued to a slave
end, these comrrands will release the reservation on the
communication file, if it was reserved to the end at which the
cc::mnand was issued. (See also Section 5.4.) These ccmrnands have
no other effect on the file, and it is b.'e responsibiIi ty of the
master end job to take any appropriate action upon receipt of the
special interrupt.
5. 2. 6 PASS and CLCSE
These ccmmands are the means by which ccrnmunication files are
crea ted and destroyed, and addi tional slave ends are added and
lost. A complete description of the use of these comrrands with'
ccmmunication files is given in Section 5.3.

5.2.7

RESET STATUS

Since several jobs can be affecting. or attempting to affect the
state of a communication file, the business of rnaintaLl"ling t..~at
state, and consequently of resetting it, becanes rather
corrplicated. Section 5.5 is devoted to explaining the various
possible states of a comnunication file arrl t..'1e role of RESET
STATUS in mcdifying its state.

5.3

Creation

a~

Destruction

A communication file is initially created by a create-type PASS
cc::mnand (or by the implicit PASS available in b.'1e RON command) .
A communication file will be created for a job tNhich issues a
PASS specifying a file reference number of zero to be passed, and
which turns on the communication file bit (bit 1) in the access
to pass. The file reference number returned to ~,e passing job
in the trap of the PASS (or in the pass list of a RUN comrrand) is
the file reference of the master errl. This end cannot be passed;
it remains with the job which created it until t..i1e communication
file is destroyed. The job to which the PASS is issued receives
the file reference number of a slave errl in a "passed file"

Page 182

Pub. 1059

5 - CCMMUNICATICN FILES

special interrupt (see types of special interrupts in Section
1.4.8) .
The master end is always allowed all significant access
permissions. The slave errl is allowed whatever accesses are
specified in the PASS command. These accesses need not include
11 break"
(eXecute) permissioni if they do not, hcwever, the master
end job will never be able to issue a break drive successfully.
Once created, a slave end may be passed, subject to the

restrictions which govern the passing of an ordinary file (see
If a slave end is passed without the return bit set
in the accesses, it becanes permanently unavailable to the
passing job (as is the case wit.., an ordinary file). Its file
reference number at the passing job beccmes invalid arrl may be
reassigned by the Executive to the next file T,.mich the job opens
or receives via a PASS. Unlike an ordinary file, if a slave end
is passed with the return bit set, it dces not becane busy.
Instead, the passing jcb may continue to use its slave end, and a
new slave end is created for the job at the receiving er..d of the
PASS. For this reason, a canmunication file may be passed Irore
than once (via a PASS canmand or iiTPlici t P.P-BS on a RUN) and have
rrore than one slave end. Once a job has passed its slave end
wi th the return bi t set, it may not CLOSE or P.P-BS it again until
the r:ewly created slave em is returned (i. e. closed by the
receiving jcb). The ends of a canmunication file are linearly
ordered fran lO'Mest (rost recently created link in the chain of
passes) to highest (master end) .

pp...ss MME).

Note that it follows that only the 10'Mest slave end can be
closed, since any higher slave ends have been passed, and cannot
be closed until the passed em has been returned. wl1en the
lowest slave em is closed, if it has been passed to the clos~"1g
job with the return bit (is not the highest slave end), that er.d
disawears. The job holding the next lowest slave er.d is
notified by a "returned file" special interrupt (if it is
accepting sp€Cials) that the file has been returned. This
precess can take place even if other ends of ~,e communication
file are busy with data transfer. or other operations (see Section
5.5). The creation or destruction of extra slave ends is a
process local to the ends being created or destroyed and does not
involve the canmunication file as a 'Nhole.

Pub.1059

Page 183

SYSTEM PRCGRA\1MING REFEREOCE MANUAL

the other hand, when the last remcunlng slave end has been
closed, or when the master errl is closed (if ever), the entire
carmunication file is "destroyed. Any ends that rerrain after the
communication file is destroyed are changed to a special file
type called a "non-file" (13), and the jobs holding t.'ese
non-files are notified by file-closed special interrupts that the
communication file has been closed. The file reference number of
a non-file is an invalidpararneter for any command except RESET
S~S or CLOSE.
However, the file reference number is not freed
for reassignment until the job acknowledges the receipt of the
special interrupt by closing t.~e non-file. It is possible for
both ends of a two-ended ccrnmunication file to be closed
sufficiently close together in time to be considered simultaneous. In this case, no non-files are created, and no special
interrupts are generated. Note ~~at a job using camrnunication
files should be prepared to receive parameter errors on its
conmands, since the corrarunication file can l:e destroyed by the
jobs at the other ends at any tine, leaving the job in question
wi th a non-file. If the job is not accepting specials, this
parameter error could be ~~e only indication that the communication file no longer exists.
On

5.4

Reserving t.'e File

It is sornetLues desirable for a job at one end of a cammunication
file to complete a sequence of operations on the file wi~~out
danger of interference fran ~'1e other ends. For example, one
slave end job might wish to write a message to the master and
t..i1en read a reply, wi thoot the possibili ty t.~at another slave end
might "sneak inn between its operations and read its reply fran
the master em. The precess of reserving the ccrnrnunication file
allows for uninterrupted sequences of operations. Either a slave
end or the master em rnay reserve the file, but only one end can
reserve it at any given time. Reservation by a slave end has the
effect of locking out all other slave errls from the ccrnmunication
file. Only local operations (see Section 5.5) can be issued at
the other slave ends. wl1en the master end reserves the file, all
slave ends are locked out.
Reservation is specified by setting the appropriate flag bit when
issuing those commands which allow communication files to be
reserved. A slave end may reserve a communication file on a

Page 184

Pub. 1059

5 - C'CMMUNICATICN FILES

COPY, READ, WRITE, or DRIVE cOllIiE.l1d. The master errl may reserve
the file only wi th a RESET STA'lUS cOllIiE.l1d.
Once the file has been successfully reserved, it remains reserved
until an operation is issued at the reserving e.r:d which dces not
call for continued reservation. There are t~ exceptions to this
rule, however:
(1)

If the master end resets status on t.l-:le communication
file, specifying that it wishes to reserve the file,
then the slave errl reservation, if any, is nullified.

(2)

If a break special is given to a slave end other than
the currently reserved slave end (because a break drive
was issued at the master errl), then tl1e current
reservation is nullified and ~~e communications file is
reserved to the end receiving the break special.

The actual reserving is specified by setting the appropriate flag
bit in an index register. B$RSilS (bit 1) is used to reserve the
file whose file reference number is in xo (the source file on
copy-typ: camnands), while B$BSVD (bi t 10) is used to reserve t..'1e
file whose file reference number is given in X2 (the destination
file in copy-type commands. (See the MME descriptions for more
details on formats for individual ccmmar.ds.) Any cperation which
does not explicitly specify reservation will release an existing
reservation (by the same end), except ~~at a REQUEST STATUS
issued to the master end will not release an existing reservatim.
w"hen a slave em has reserved the file, it app:ars busy to all
other slave ends. Only local operations can be issued at the
other slave ends. The master em is not restricted by a slave
end reservation. When the II'aster em has reserved the file, it
appears busy to all slave ends. This gives the master end iob
the ability to "squelch" a runaway slave em job.
oJ

The routing of special interrupts is also affected by slave erx:1
reservations. This insures that slave ends which are locked out
of the file do not recei~le sp:cial interrupts to which they are
unable to resp:md. The routing algorithm is described in Section

Pub. 1059

Page 185

SYSTEM PRC:GRAMMnK;

REE'EREJ.~ ~"UAL

5.2. The general rule is that if a slave errl has reserved t..l1e
communication file, special interrupts generated by t..~e master
end DRIVE camnands will be given to the job holding that slave
end, or not at all. The only exception is a break drive: in
this case, if the reserving er:d does not have break permission,
the break special "l:ounces" up the ccmmunication file until it
finds a slave errl which does have break p:rrnission. Thus a
reserving slave errl job is not only guaranteed that no other
slave end is stealing its data, but also that its special
interrupts are not being led astray.

5.5 Busy States and Reset Status
Since many jobs may attempt to use a communication file at the
same time, same restrictions are necessary with respect to which
may CD what to the file an::1 when. The general rule governing the
use of the ccmmunication file is that only one operation which
involves the file as a whole may be in pro;ress at one tim:. The
"carmunication file busy" status (6) is a special status returned
to jobs which attempt to initiate operations on a communication
file en which anob.'1er "whole-file" operation is in pro;ress.
This status is also returned if the file is reserved to aoother
end. The regular "busy" parameter error status (120) is used
only when the em at which the operation is issued is busy; that
is, another operation has been issued at the same end and has not
yet been trapped.
Thus there are two different concepts involved here: that of the
communication file's being busy, and that of one of its ends'
being blsy. MJst operations involve i:oth the file ar.d at least
one of its ends; hcwever I there are certain local operations
which tie up only the em at which they are issued. There are
cases in which the file can be busy wid1cut any of its ends being
busy. Local operations may be issued even if the file itself is
busy.
The state of the communication file, as it appears at anyone
end, depends on the operations which have be€n issued at that ar:d
a t other eros. The function of the RESET ST.ATUS canmand is
always to force the em at wilich it is issued to be idle (not
busy). It rray have additional effects, depending on the state of

Page 186

Pub.I059

5 - <:r.MMtJNICATICN FILES

the ocmmunication file. These effects are discussed below, state
by state, beginning with those presented to a slave end.

5.5.1 Slave End States
First, the file and the slave end may both be completely idle.
In this state, any valid operation may be issued at the slave
end. If a RESET ST~ is issued, it functions as a purely local
operation. It has no effect and traps with gocd ·status.
Second, the file may be reserved to this slave end, with the
end's being idle. The file will thus appear busj ("cannunication
file bJsy") to all other slave ends. Operations may be issued,
hcwever, at the master end. If no operations are issued at the
master end, the file will apear idle to the reserving slave em,
and any valid operation may be issued. HO'M:ver I if t.l-:le master
end b.as an operation p€nding or has reserved the file, the file
will app:ar busy to the slave em, ar.d only lccal operations may
be issued. In ei ther case, RESET STAms functions as a local
operation, with the additional effect of releasing t.r,.e slave end
reservation. It will not, however, change the file I s busy state
if it is busy due to the action of the master end.
Third, a local operation may have eeen issued at the slave end.
Local operations are RESET STA.'IUS, PASS, and, if the end was
passed with the return bit set, CLCSE. If D.~e return bit is not
set and if CLCSE is legal, then this is the only slave end. In
this case, CLOSE causes the entire ccmmunication file to be
destroyed. Thus it is not a local operation, and can only be
issued when the file is not busy. (There is one exception to
this rule - see l:elow.)
When a local operation has been issued, the slave end THill be
busy. The state of the file as a whole isimrnaterial to the
. state perceived by t.fo}is slave em. Lccal operations may 1:e
issued even if the file is busy or is reserved to another end,
and do not cause the file to beccme busy. Neither PASS nor cr.CSE
can l:e reset. If a RESET STATUS is issued while a PASS is in
progress, it will have no effect and will trap after the PASS
ccmnand is canple te. Once a CLCSE canmand has been issued, the

Pub. 1059

Page 187

file reference number becomes invalid, so that no
can be issued.

RESET S~~TUS

Fourth, the slave end may be idle, but t.he file may be reserved
to another end or may have an outstanding operation initiated
frem another end. In this case, the file appears busy ("comnunications file busy") to this end. Only local operations maybe
issued, except that a CLOSE may be issued at the last remaining
slave end whenever }:oth it arrl the master end are idle, even if
the file is reserved to the master errl. A RESEr STAIDS is a
purely loCal operation in this fourth case, and does not change
the file's busy state, since this errl is not responsible for its
being b.lsy.
Fifth, the slave end may be busy because a dr i ve-tyt;e operation
(DRIVE, TRI.JNCATE, SCPArol, or SET POINIER) has eeen issued at
this end. In this case, the file itself will also be busy, and
no c;:erations except local ones may be issued at any other end.
The operation may be reset by a RESEr STATUS if the special
interrupt has not already been give..?'l to the master errl job. In
any case the RESET STA'IUS will trap after the DRIVE has trapped.
The status on the DRIVE will indicate if the special interrupt
was given. Note that the DRIVE may also l:e reset by a RESET
STA'IUS issued at the master end. If a RESET STATUS is issued at
the slave end, any reservation specified in tJ.'e DRIVE will Ce
released.
Finally, the slave em may be busy because of a copy-tyt:e
operation (COPY, READ, WRITE, or REQUEST STATUS) issued at t.,is
end. This also has the effect of locking out all other slave
ends. The master eoo, of course, must issue t.~e corresp:mding
COPY cOTJInand, unless it issues a RESET STA'IUS. The action of a
RESET SI'ATUS issued at the slave end dep:ms ufOn whether the
master end job has already issued that COPY. If it has, then
both COPY ccmmands (master and slave) are trapped with the
11 s tatus was reset"
status (20). Both ems beccme idle, as does
the communication file itself. Any reservation by the slave end
is released. On t.~e ot.11er hand, if the COPY ccmmand has not yet
been issued at the master end, the rraster errl job is notified by
a special interrupt ("slave issued reset") that its COPY is no
longer required. The slave em copy is traPt:esible state cccurs when a slave errl copy ccrnmand has

been issued, but the master end is .idle. In this case, all
operations other than the correct COPY response (except REQUEST
STlL'T'US, RESET srATUS) will be rejected as inappropriate. A RESET
S~S will cause the slave copy to be aborted and will return
the file to an idle (or possibly reserved) state. (The slave em
copy will be trapP=rtion of the job tree t.~us looks like:

Job A now issues a PASS command to job B, S?eCifying a file
reference number of zero (create-type PASS) and access bits for
Read, Write, Append, eXecute ("break"), and canmunication file.
A communication file is thus created. Job A receives the,file
reference number for the master erXi (su-pp:lse it is 5) in the trap
of the PASS, and job B receives the file reference number of t.~e
slave end (supp:>se it is 7) in a "passed file" special interrupt.
The file is now idle.

Pub.lOS9

Page 191

SYS'IEM PRCGRAMMING REEEREN:E MANUAL

5.6.2

REQUEST STATUS fram a Slave End

Upon receipt of the I·passed file" special interrupt, suppose job
B attempts to get more information about its new file by issuing
a REQUEST STATUS. It therefore issues one to its file reference
7 (the slave end), requesting ten words. A special interrupt
(slave-issued read) is generated at job A, specifying a length of
ten yjC)rds and file reference number 5 (job AI send) • (See
Section 1.4 for a description of the format of a special
interrupt.) Job A ~~en issues a WRITE to file reference number 5
(the master end) for four words, placing a standard status block
in the first three words and a special identifying code in the
last TM:)rd. These four words are presented to job B as its status
block. Job At s WRITE operation is trapped with a status of
"successful ft (0), since all the data that job A requested were
transferred. But job B has its PEQOEST STATUS trapped with a
status of "source exhausted" (1), since only four of the ten
words it requested were available.
5.6.3

PASS at a Slave End

Suppose oow that uJ.:On exarnm~ng the data received on its REQUEST
STATUS, jcb B decides that job C should have the slave end. It
therefore issues a PASS to job C, specir]ing file reference
number 7 (its slave em) and access bits for Read, write, Append,
and break. By not setting ~~e return bit, job B effectively puts
itself out of the picture for the duration of the communication
file. Its file reference number 7 beccmes invalid, and job C
receives a passed file special interrupt specifying its file
reference number for the slave end (suppose it is 3) .
Suppose job C immediately issues a RON on a new job (job 0, of
course), specifying file reference number 3 as the first file in
the pass list, with access bits for Read, Write, Append, and
return. Jcb D is thus run with a slave em as its file reference
number 1. Since job C set the return bit, it retains its slave
end (still its file reference number 3). The diagram new looks
like:

Page 192

Pub. 1059

5 - c::cMMUNlCATICN FILES

FRN 5 (all accesses)
Master End

Corrmunication
File

(lowest)
5.6.4 copy Command with No-Trap Option
Job D now issues a COpy command from its storage to file
reference numl:er I for twenty v;ords. A" slave-issued write"
special interrupt is generated at job A specifying file reference
number 5 ard a length of· tW'enty. Job A issues a READ for ten
words, specifying the no-trap option by setting B$NTPS in the
flag bits. The first ten v;ords are then transferred fran job D's
menory to job A's memory, and job A is trapped with the
"successful" status (0). Job 0 is not trapp:d, since the master
end job (job A) specified t:..~e no-trap option.
Suppose job A now issues another ten-word READ, not specifying
the oo-trap option. The last ten w-ords are copied fran job D to
job A, arrl Coth jobs are trapped with the "successful" status.
The communication file is now idle again.
Suppose job C should row happen to issue a copy fran its file
reference number 3 (a slave end of the ccrnmunication file) to
some other file (its file reference number 4, for example), for
five r,..ords. Job A receives a "slave-issued read" special
interrupt. If job A then issues a w"'RITE for ten v;ords,
specifying the no-trap option by setting B$NTPO in the flag bits,
the first five words will be transferred fran job A's storage to
job C' s file reference number 4. Job C will b.'en be trapped wi th

Pub. 1059

Page 193

the "successful" status, while job A is trapped with the status
"destination exhausted" (2). Note that the no-trap option had no
effect, since the status presented at the master end was not
"successful" (0).

5.6.5 Aborted COPY and Break Drive
Suppose job D now issues a READ to file reference number 1. Job
is ootified with a "slave-issued read" special interrupt.
However, job A decides that a break drive should t:e given. It
issues the DRIVE canmand. The drive is rejected with the
"inappropriate" status (3) Cecause the slave em has issued a
copy-type camrend. Job A therefore issues a RESEr STATUS
requesting the communication file to Ce reserved. Job D's READ
is trapped with the "status was reset" status (20), and the file
t:ecOfCES reserved to the master en::1.
If job D attempts to reissue
the READ, it will receive the "ccrcmunication file busy" status
(6). Job A now issues the break drive. O'p:Jn checking, the"
Executive discovers that job D dces not have break :;:ermission on
its end of the ccmnunication file. If we sUp!=ose that job C is
not accepting special interrupts, job A r s DRIVE will t:e trapp:d
with the status of "other em not accepting specials" (7). The
file becomes idle, since job A's DPIVE had the effect of
releasing its reservation.

A

5.6.6" Slave End Reservation; Local Operations
Now consider what happens if job C issues a set mode drive

requesting reservation of the file. Job A receives the sp:cial
interrL~t (set mode, type 0).
The file is now reserved to the
first slave em (at job C) .
Supt?Ose job D now" runs a new job (job E), passing it the slave
end with the return bit sat. It nay not pass break permission,
since it dces not have break permission to pass. The diagram is
now:

Page 194

Pub. 1059

5 - C'CMMJNlCATICN FTIES

FRN 5 (all accesses)
Master En
Communication File

I

Reservation \
I

FRN 3 (RWA, break
Slave End 1
FEN I (RWA, return)
Slave End 2
return)
Slave End 3 (lowest)
Job 0 1 s implicit PASS is legal, since it is a lccal operation.
Any mnlccal operation attempted by jcb D TMJUld be rejected,
since the file is reserved to job C's end.
Similarly, if job E now atte.rnpts to issue a RECUEST STATUS on t..'e
file it was just passed, it will receive the "ccmnunication file
busy" status.
If job A now issues a "read ccmnunication file" drive, t..'1e
special interrupt will be given to job C (assuming it is
accepting specials). This will be true even if job E or D is
accepting specials, since the file is reserved to job C's em.
Sup!,x>se that job C, on receipt of the n read comnunication file"
special, issues a READ canmand, not specifying reserVation. The
reservation is released, arxl the file l:ec-.::mes busy until job A
issues the corresponding WRITE camnand. When it dces so, the
data is transferred, and t..l1e file l:ec-.::mes idle.

Pub. 1059

Page· 195

5.6.7 Master End DRIVE
Job A new issues another "read canmunicationfile" drive. Since
no slave end has reserved the file, the Executive attempts to
give the special interrupt to the lowest slave errl (at job E) •
However, let's su};p:>se that job E is not accepting specials.
Therefore, the "read camnunication file" special interrupt will
"bounce" up to job D. Assuming job D is accepting specials, it
will receive the special interrupt. Note that the cammunication
file is autanatically reserved to job D now. If job C were to
issue a READ ccmmand at this point, it would fail with ~,e status
"camnunication file busy" (6).
5.6.8

Illegal Actions

Supp:::>se job e new attempts to run a new job (this wculd be job F,
presumably), passing it an end of the file (passing its file
reference nl.1l1l1:er 3). The RUN is rejected because, although job
e's end (file reference number 3) is not busy, it has already
been passed an:1 cannot be passed again until it is returned.
Job A new issues a WRITEcarmand to the master errl. The WRITE is
rejected with the "inappropriate" status, since no slave end has
a READ outstanding.
Job D now issues a READ camnand. This is legal. On receipt of
the special interrupt (slave-issued read), job A issues a COPY
from the slave end of a different communication file to file
reference nl.lIilber 5 (our master em). This is illegal, since only
one of the files invelved in a copy may be t.~e end of a
ccmnunication file. The copy is thus rejected, withcut affecting
the state of t..~e camrunication file. If job A nO'.., issues a CLCSE
on the master em, it teo will be rejected, since job D' 5 :RE:Jl..D is
still outstanding.

Page 196

Pub. 1059

5 -

~ICATICN

FILES

5.6.9 Destroying the File
With the file in this fouled-up state, job A issues a RESET
S~ to clear out job Dis READ and to reserve the file.
It
then issues a crosE. Before the Executive can precess job A's
CLOSE, suppose that job E also closes its end of the ccmmunication file. Now things start hapt:ening. Job D receives a
"returned file" special interrupt due to the closing of job E's
end. This special is closely followed by a "file closed" special
as its file reference number 1 is changed into a non-file by the
master end CLOSE. Job C stili holds a slave er:d of the
disa~aring commUnication file.
This end is changed to a
non-file, and job C receives a "file closed" special interrupt.
No rrore slave ems exist, so job A's CLCSE is trapped. Job A's
file reference number 5 beccrnes invalid.
Jobs D and C are still left with non-files. Job D issues a CLOSE
to its file reference number 1, and its non-file disappears. Job
C, though, Ceing a little slow to precess its file-closed
special, attempts to issue a set n:cde drive to what used to be
its slave end (file reference nllITl1:er 3). The DRIVE is rejected
with a parameter error status, since drives are not legal on
non-files. Job C finally closes its file reference number 3, and
the last trace of our ccmmunication file disappears fram the
system.
5.6.10

Passing Back a Ccmrnunication File

Not included in this example is the capability to create a
communication file for which the highest slave end is passed to
the creating job IS i.n'!Irediate supra job (PASSBACK). There is no
operational difference, however, between this type of ccrnmunicatian file and communication files created in the normal manner.
Note that since passing upward must be done when the ccrnmunication file is created, ~'1e file may backtrack at rrost one level up
the job tree. rrhis and any subsequent passing of the cr ea ted
slave end in the i.rrmediate supra jcb are otherwise subject to the
rules associated with the PASS ~~ regarding normal communication
files.

Pub. 1059

Page 197

"

.

Page 198

Pub. 1059

Chapter 6
Device Files

When a slave job wishes to access a peripheral it makes use of a
device file. Device files exist for such peripherals as the
terminal ccntrollers and the high-speed printer. Device files
are always of type 6 (special catalcged file). They are
associated with nonallocatable devices. Since many devices have
specialized functions which a slave mode prcgram may wish to use,
the DRIVE ccmmand with function code of 12 (single device action)
or 24 (drive with OCW' s) is provided for this purpose. A typical
example is f1 rewind l1 on a magnetic tape handler. This chapter
describes the special features and restrictions of device files,
and special prcgramming tec..lmiques used with t..iJ.em.

6.1 General Information and Restrictions
Currently, all device files are catalcged in :PERCAT, a direct
sul:ca talcg of the master file directory. A slave job opens a
device file in the same way as i t ~uld any other file in t..J,e
catalcg tree (see OPEN MME). This file reference number thus
obtained can then be used as apara.rreter for a copy-type ccmmand
in order to transfer data to or from the device, or for the DRIVE
command to activate special functions of the device.
Since device files reflect configured features of the hardware,
they cannot be created, destroyed or altered as can normal
(allccated) files. Any attempt to use a special catalcged file
as a parameter for a RUN, ERASE, UNCATALCG, TRUNCATE, SCRA'ICH, or
REPIACE type ccmmand will be rej ected.

Pub. 1059

Page 199

Since all devices currently accessible as device files transfer
data be or from a medium which is essentially external to the
main ccmputer. system, the "length" of a device file is meaningless. It will always appear as zero to a slave user.
Because certain peripherals depend on the transfer of large
records in a single physical operation (magnetic tape), or of
records with a particular length (card equipment), the Executive
is unable be guarantee ~~at appropriate buffering 'will be
available in master mode storage to copy be~Heen a device file
and another noncore file. Thus, copy-type camnands are
restricted so that if one file in the copy is a nonallocatable
device, the other must be a core file or a job file. In general
a slave job will only transfer data between its own core (file
reference number 0 on a copy-~ camnand) and a device file. If
a copy between a device and a noncore file is attempted, it will
be rejected with a status of unr~lerable I/O error (420).
In addi tion, if a job copying bet'.veen its own core and a device
file via a communication file should be swapped out of core
before the copy can be initiated, the copy will not be able to
proceed, and will be trapped wi th a status of recoverable I/O
error (400). The ropy must then be reissued. Note that in this
case, the lower half of status return return word 1 will be zero.
This serves to distinguish from the case in which an error
occurred in tJ.'e actual transfer of data.
If a copy or drive wi~~ DCW's is successfully initiated bet'Neen
core and a device file, a section of the Executive concerned with
physical device q:erations is called. This section, called
Physical I/O (PIa) will attempt to transfer exactly one physical
record of data (whenever such a quantity is defined) for each
COPY ccmnand issued on a device file. Physical I/O can also be
called directly by the DRIVE ccrnmand in order to request special
fun:tions or transfer mre than one record to or fran the device.
Physical I/O prc::duces a status 'NOrd' based on the queue wurd
generated by the input-output multiplexer (ICM) in the
hardware-defined input-output sequence. The format of this
status word is as follows:

Page 200

Pub. 1059

6 - DEVICE FILES

-

s

p
y 0 MAJOR
N W STATOS
C E

SUB-

CUEtIE

STATUS

ADDRESS

ICM

ICM

RETURN
alANNEL CENTRAL CODE

RECORD
COUNT

STATfJS

STATUS

RESI:cuE

18

21

R

a1 2

5 6

II

12

17

20

23

24

29

30

35

On a single device action DRIVE ccmmand this w~rd is returned to
the user in status return ~rd 2 of the trap. On a copy-type
command wnich involves device files or which results in a
recoverable error (status return 400), and on multirecord drives,
the upper half of this wOrd is returned in the lower half of
status return word 1. The lower half is not returned in this
case.
The var ious fields of this word have the following meanings:
SYNC BIT (Bit 0) - This bit is 1 whenever the status originated

in the ICM. If it is 0, the status was simulated by Physical
I/O. Statuses simulated by Physical I/O are discussed below.
POWER BIT (Bit 1) - If this is 1, the device in question is
powered off.
~OR

STATOS (Bits 2-5) - This field contains the major device
status provided by the hardware. Major status 12, 13 and 15 will
occur only on devices controlled by a Microprogrammed Peripheral
Controller (MPC). The general meanings of these statuses are:

a - Subsystem ready (gca::1 status)
1 -

Cevice busy ,

2 -

Device attention (This normally indicates that the
device is in an inoperable con::1i tion which must be
corrected. by the ccmputer operator.)

Pub. 1059

Page 201

3 -

Data alert (This normally indicates that some abnormal
cendi tion occurred dur ing the data transfer.)

4 -

End-of-file condition

5 -

Comrnandrejected (The peripheral subsystem did not
accept the canmand.)

6 -

Intermediate condition (specific to

7 -

Timeout status (This status is simulated by Physical
I/O when an operation has not canpleted in a reasonable
arrount of time.)

10 - Channel busy.
occurred.

A

~~e

type of device)

hardware or Physical I/O error has

12 - MPC Device attention (The MPC detected an inoperable

device. This normally requires operator intervention
to clear.)
13 - MPC Data alert (The MPC detected an error in the data.)

15 - MPC Ccrnrnand reject (The MPC could rot precess the
canmand.)

SOBSTATUS (Bits 6-11) - This field contains additional
inforl1'ation aCout the operation just canpleted. It is specific
boi:J.' to the type of device am the major status. For formats ar.d
rore details, consult t.:.'e Honeywell peripheral subsystems manual
for the specific type of peripheral or the Honeywell GCOS I/O
Prcgrarrnning manual, DB8 2.
CPEOE ADDRESS (Bits 12-17) - This field contains the relative
address of the interrupt queue word for this operation, as it
would l::e generated by an ICC (in};Ut-output controller). This
field is oormally not of interest to the slave user, wi th the
following exception: A queue address between 40 &-rl 57 (octal)
represents a terminate interrupt, which is the normal way for
rrost cperations to canplete. A queue address eettHeen 20 and 37
(octal) represents an initiate interrupt, which usually indicates
an error, except on operations such as rewind tape or console
alarm which do not require the p:r ipheral subsystem to becane
busy. A queue acdress of a should only occur when a status is

Page 202

Pub. 1059

6 - rEVICE FILES

simulated by Physical I/O; other queue acdresses shculd never
ca:ur.
lOM ~~ STATUS (Bits 18-20) - This field represents the
internal status of the ICM up::>n termination of the operation.
nonzero lOM Channel Status usually indicates an Executive or
channel failure. The meaning of these cedes is as follows:

A

o-

No error
connect while busy
illegal instruction
incorrect ocw
incOnplete ccrnmarrl sequence
not used
parity error (peripheral to channel)
7 - parity error (lCM central to channel)

1
2
3
4
5
6

-

ICM CENTRAL STMUS (Bits 21-23) - This field contains the status
returned by ICM Central, which performs list service for the
channels. A nonzero status in this field indicates an Executive
failure. The status cedes are:

o - No error
1 - WR tally runout
2 -

~

TOCWts in a rcw

3 - LP'~ t:ourrlaiy error
4 - ~~attempted to change address extension from
restricted m::de
5 - IDCW encountered in restricted mode
6 - Character position inccrnpatible with size
7 - Parity. error fram channel

Pub.1059

Page 203

SYS'IEM PRCGRAMMING REE'EREl'l:E MANUAL

RETURN CODE (Bits 24-29) - This code is generated by Physical
I/O as a general summary of the result of the operation. Codes
are:

o-

Good; no error

1 - Incomplete data transfer, but no error

2 - End-of-file condition. This can cccur on
magnetic tape or card reader.
3 - Recoverable error
4 - Unrecoverable error. Do not reissue the commar.d.
5 - Timeout status. This is always a simulated
status.
RECORD COONT RESIDUE (Bits 30-35) - This field has the number of
records requested minus the number actually transferred.

6.2

Device Drives

A number of device operations do not fall into the READ/W1trrE
categories. These are invoked by the DRIVE camnand (see Chapter
4). There are two kinds of device drives. Single action drives
change the state of the device. Drives with DC~fS transfer data
to or fran the device. Since drives are valid only for
particular device types; the abbreviations below are used to
indicate the device types for which a given operation is valid4
Abbreviation

Device

card Reader
card Punch
PR
Line Printer
MT
Magnetic Tape Handler
CN
Console 'I'yF€wr iter
ON
Datanet-30
MPMicroprogrammed Periph€ral Controller
OS
Mass Storage Unit (Disk)
Ff7
Honeywell 716 Front End Processor
CR .

CP

Page 204

Pub.I059

6 - IEVICE FILES

6.2.1 Single Action Drives
A single action drive has a cede of 12 (ectal) in the upper half
of register A. The lower half contains an IS-bit MJDE cede,

which identifies the operation to perform.

These codes are:

Mbde

Description

070000

(ME» Reset MPC. Puts the MPC into an idle state.
shOJld be done l:efore it is reloaded.

070000

(CN) Reset console.
Any pending interrupts fran the
console are cleared.

100000

(CR,CP ,PR,M!') Await-Ready. Wai ts for the device to l:e
in an operable cordi tion, unless the device p::JWer is
off. Traps with a bad status if power is off.

110000

(CR,CP ,PR,MP) Awai t-St=eCial.. Waits for a hardware
special interrupt to cccur on the channel to which the
device is ccnnected. 1-..s opposed to ~,e await-ready
drive, this canmand will wait even if the device po~r
if off. (Hardware special interrupts shalld not be
confused with the software special interrupts returned
to a slave job at location 20.)

140000

(ALL) Enable Error Recovery. Sets normal error
recovery m:de so that any appropriate recovery
prccedures are attempted by the Executive when an error
is detected.

150000

(ALL) Supress Error Recovery. Causes Physical I/O to
treat any future statuses generated by the device as
normal, and to pass them back to the caller inmediately, until an enable error recovery drive is set.
This mode is intended only for the use of hardware test
aOO diagnostic prcgrams,' and shculd l:e used with
caution.. Awai t-ready drives issued when this rocx:1e is
set will trap whether the device is ready or not, since
Physical I/O treats all statuses as ready. An ICM/MEM
interface error detected while this m:de is set will l:e
returned to the caller with a return code of 3
(recoverable I/O error) •

Pub. 1059

This

Page 205

SYSTEM PRCGRAMMING REE'ER&X:E MANUAL

200000

(CR,CP ,M!') Set Binary Merle. All subsequent copy-type
canmands will be done in binary m:de. Status on this
command is always simulated by Physical I/O.

200000

(H7) Set Normal ~e. I/O to the H716 will be done
with normal Read and Write commands.

210000

(CR,CP ,MI') Set Decimal or Mixed
set binary m::rle.

210000

(PR) Set BCD M:de.
printer.

210000

Set Dump Mode. I/O to the H7I6 will be done with
Forced Read and Forced write ccmmands.

220000

(MI') Set· ASCII to EBCDIC Conversion MOOe. On output
data will be converted fran ASCII to EBCDIC. On input
data will 1:e converted fran EBCDIC to ASCII.

231000

200 BPI.
tape handlers.

232000

(MT)

Set 556 BPI.

233000

(MT)

Set 800 BPI.

234000

(Ml') Set 1600 BPI.
tape handlers.

This can only be done on 9-track

235000

(Ml') Set 6250 BPI.
9-track handlers.

This can onl;r be done on certain

240000

(MT) Set Default High Density. This is usually 800
BPI. The value is set when t..~e system is initialized.

250000

Set Default Low Density. This is usually 556 BPI.
The value is set when the system is ini tialized.

260000

(PR) Set ASCII i!bJe.
the pr inter.

270000

(MT)

300000

(MT) Forward Space Record

Page 206

~e.

BCD data is to be

The inverse of

written to the

(E7)

(MT) Set

This can only be done on 7-track

(Ml')

A...c:crI data is to be wri tten to

Set File Protect

Pub. 1059

6 - IEVICE FILES

310000

(Mr)

320000

(Ml') Forward Space File. An end-of-file return is, of
course, normal on this drive.

330000

(Mr) Backspace File. The next read after this
operation normally results in an end-of-file return.

340000

(MI') Erase. This erases the tape. It should not be
confused with the Executive ERASE canmand.

Backspace Record

340000

(CN) Alarm.

350000

(Ml') write Er.d-of-File. Writes a star:dard file mark
character an:1 errl-of-file gap. On a 7-track tape this
is 17(8). On a 9-track tape this is 23(8).

3600cc

(Ml') Write Single Character.

writes a single-character
record consisting of character cc. (This er.d-of-file
record may be treated improperly by other computer
systems .. )

370000

(MT) RewiOO

371000

(Mr) RewinJ and Unload. Both this and the rewind drive
trap immediately on initiate interrupts. An
awai t-ready drive can Ce issued if it is desired to
wait until the tape finishes rewinding.

6.2.2

This starts the console alarm ringing.

Drive with ocw's

'2 ~

~

t~~fer)

A Drive with IX:'h's has a drive type of
AU.
The record count (number of records
of AL. This rust be fran 1 to 63, or zero which
record count of 64. The number of rOrD I s in the
at least as large as the record count.

Pub. 1059

AL has the MJDE.
is in bits 30-35
signifies a
OC'W list must Ce

Page 207

The data control 'MJrds
following format:

(ro~' s)

pointed to by register Xl have the

Bits

Meaning

0-17

Starting memory address to/fram which to
write/read
Must be zero
Action code
~rd count

18-21
22-23
29-35

The possible action codes are:
Bits 22-23 Name Action
00

IOTC

I/O Transfer and Disconnect.Transfer the
number of 'M)rds specified in the WCJrd
count frcm/to main memJry to/fran the next
physical record of the device.

01

IOTP

I/O Transfer and Proceed. Transfer the
number of w;:,rds specified in the word
count from/to main mem::>ry, then continue
to .the r.ext DC'1l using the same phys ical
record of the device.

10

~~

Transfer to oa~.The Executive will not
use of this cede ..

allow

11

ICNrP I/O No Transfer an:l Proceed.Co not
transfer the number of words specified.
Proceed to the next DeW. Data read will
be discarded, data written will be zero.

The valid drives of this type are:

4l00nn

(CR) Multi-record Read.

Reads nn records fran the

device.
420001

Page 208

(00) Read ·Track Header.
the current track.

Reads the track header of

Pub. 1059

6 - DEVICE FILES

43xOOl

(DS) Format Track. Formats the current track and
writes the track header. The TI (track indicator)
is set to x, which must be 0, 1, 2, or 3.

6l00nn

(PR) Multi-record Write.
device.

Writes nn records to the

620001

(PR)

630001

(PR) Wr i te VFC.
control.

640001

(MP) Load Control Store. loads a microprc:grarn
into the MPC TNr i teable control sto"re.

650001

(MP) Load Main. Memory •
memory.

660001

{MP} Load Personality.

Writes the MPC' 5
personality overlay for a set of ports.

670001

(MP) Read Detail Status.
registers.

Write Image.

Loads the print train image.
Loads the vertical format

Wr i tes

the MPC main

Reads the detail status

In addi ticn , the following three cedes are used internally by the
Executive am may not be issued by a slave job, except indirectly
by COPY camtBI1ds:
, 400000
600000
700000

Pub. 1059

Read (all devices except CP ,PR,MP)
Write (all except CR,MP)
Diagnostics (all devices)

Page 209

SYS'IEM PRCGR/1..MMING REFERENCE MANUAL

6.3

Device Status Returns

This section describes the ·status returns a slave job can expect
to get from a device file, on either COpy-type or DRIVE
canrnands.
The Major Status, which is four bits, numerically coded, is given
in octal. The Minor Status (Substatus) is six bits, bit coded.
Thus it is possible to get several Minor Status returns in one
status. The Minor Status is given here in binary, where "XU
means either 0 or 1.
MJre detailed explanations of device status returns can be found
in the Honeywell Information Systems publication I/O Programming,
order number DB86.

Page 210

Pub. 1059

6 - rEVICE FILES

6.3.1 Console

Major Minor
Status Status

Meaning

00

channel ready

02

device attention
. data alert

03
000001
OxOOIO
000100
001000
0100xO
100000
05

Pub. 1059

transfer timing alert
transmission parity alert
operator input alert
operator distracted
incorrect format
nEssage length alert
camnand rejected

Page 211

SYSTEM

p~

REE'ERENCE MANUAL

6.3.2 card Reader
Major Minor
Status Status
00
000001
02

channel ready
51 column cards

lxlxxx

device attention
offline
hepper/stacker alert
IlEl1ual halt
feed alert
card jam
read alert
sneak fe€d

000001
OOOxlO
OOOlxO
001000

data alert
tr ansfer timing alert
validity alert
dual read failure
. no read canmand

000000

end of file
lcgical end of file

000000

xxxOxl
xxxOlx
OxlOxx
xlxOxx

lxOOxx
03

04
05

canmand rejected

12
001000
13

MPC device attention
invalid punch
MPC device data alert

15
001000

Page 212

Meaning

MPC canmand reject
device reserJed

Pub. 1059

6 - rEVICE FILES

6.3.3

Card Punch
Major Minor
Status Status

Meaning

00

channel ready

02
000000
Ox:ood
Oxxxlx
Oxxlxx
Oxlxxx
Olxxxx

03
000000
OOOxxl

OOOxlx
OOOboc

data alert
transfer timing alert
transfer timing alert
transmission pari ty alert
punch alert

as

camnand rejected

12

MPC device attention
MPC device data alert

13
000110

PSI data overflow
MFC camnand reject

15
001001

Pub. 1059

device attention
offline
hepper/stacker alert
manual halt
chad OOX full
feed failure
card jam

device reserved

Page 213

SYSTEM PRCGRAMMING REE'EREJ."O! ~!ANOAL

6.3.4 Printer
Major Minor
Status Status
00
000000
000001
000010
·000011
000100
000101
OOOllO
000111
02
000000
000001
000010
000100
001000
03

~.:

.'

device attention
fOWer fault
out of paper
manual halt
VFU taI;e alert
check

000001
000010
'000100
001000
010000
100000
000000
000001
000010
001000
010000
100000

camnand reject
VFC not loaded
invalid cp cede
invalid device code
train image not loaded
feed alert on last slew
top of page echo on last slew

05

Page 214

channel ready
no button
pr int one line
forward space
forward to top of page
invalid line
reverse/rewind
backspace
backspace to top of page

data alert
invalid character cede/image
buffer alert
transfer timing alert
alert before printing
alert after printing
paper low
slew alert
top of page echo

000000
..

Meaning

12

MPC device attention

13

MPC

device data alert

15

MPC

ccm:nand reject

Pub. 1059

6 - CEVICE FILES

6.3.5 Tape

Major Minor
Status Status
00
xxOxxl

OOOxlx
xxxlx<
001100
OlOxOx
100xOx
l10xOx·
01
000001
000010
000100
100000
02
'OO~Ol

000010
OxxlOx
OxlxOx
0lx<00
03
000001
000010
xx:c ~rds (not neccessari1y on an even-~rd
l:oundary). This two word pair will contain the name of the
file/catalog last scanned by the Executive (e.g. if the
operation was successful, the last name in the treename) I
except:
(1)

If the status was 12 (format error) or 40 or
greater I the two wurds are undefined; or

(2)

If the status was 7 (fetch error) the two wurds
are zero.

The I1Escape Convention" bit (020000 ectal) is provided to control
the use of the three special conventions explained in Section
8.2. If this bi t is zero, the Open phase of the operation will
prcceed as defined in Section 8.2. If this bi t is one I then any
attempt be use one of the special conventions will trap the
operation with a 12.7 status (see Section 8.3) .

8.2

Scanner Conventions

OJnventions to Ce used by the scanner are
treename consists of one or mre file/catalog
colons. Any of the names may have a password
pas~rd is located after the name I separated
ccmna.. For instance,
The

the following: A
nam=s seperated by
specified; the
fran the name by a

CATALCGl: ~.LCG2 ,PASSroFD:FILENAME

is a legal treename. A name or password consists of 8 characters. Any name/password less than 8 characters will Ce left

Pub. 1059

Page 231

SYSTEM PRCGRAMMrNG RE:E'£:REN::E MANUAL

justified and space filled to form a full 8 character quantity.
In the past it was possible to catalog files with non-standard
names or passwords; a name/password in this case may be specified
by a slash ("/") followed by up to 24 octal digits. These digits
are then right justified and null filled to form a 72 bit
quantity. To avoid future problems with non-standard treenames,
any attempt to TALLY CATALCG or TALLY REPLACE a file/catalog wi th
a name/password specified in octal will trap the operation with a
12.10 status (see Section 8.3) •
Legal file/catalog name characters are:
(1)

all uppercase characters

(2)

all lowercase characters, wnich shall be converted
to uppercase characters

(3)

all digits

(4)

and

1,_" and

11

.

"

as Sj?eCial characters.

Legal password characters are:
(1)

all legal filename characters

(2)

all control characters (oct 1-37) •

character which is not legal where fOlli-ii delimi ts the tree
name string (all nulls are ignored) I and will trap the operation
with a 12.5 status (see Section 8.3) •
Any

There are b,ree special conventions for the first name of a
treename. Use of a special convention when the escape special
convention bi t is on in the access word (see Section 8.1) will
trap the operation with a 12.7 status (see Section 8.3) .
The

SJ?eCial conventions are:

Page 232

Pub. 1059 ,

8 - TALLY OPERATIONS

(1)

(2)

If the first nc3111e begins with a colon (:), the
file or catalog is to be fourrl in the MFD catalcg
specified by X3. A first name of ":MFD" is
equivalent to a first word octal name of
"/777777777777777777777777 11 in the catalog
specified by X3.
If the first name begins with a star ("*"), and is

a legal user nllItlber format the scanner will e.xpan:1
the naIre to open a user catalog in the catalog
"MOD" in the catalcg specified by X3. If it is
not a legal user number format, the operation will
trap with a 12.2 status (see Section 8.3).

Legal user number formats are:

*C
*LLC

*CDO
*LLCDD
*CDDDCC
*LI.CDDDOC

(*K - super group name)
(*EDK - super group name)
(*KOO - group name)
(*HDKCO - group name)

(*40849L -- individual user number)
(*HDKca:co -- individual user number)

where:
C

L

= character
= a letter

o= a

(3)

which is a letter or digit

digit

If the first nam: contains a trailing "***f7, the
file or catalog is to be found in "DLIBPARYft in
the catalog specified by X3.

Treenames are lind ted to 36 names. Any attempt to use a tre€nam:
consisting of more than 36 catalcg names (including any names
prefixed by the scanner) will trap the operation with a 12.4
status (see Section 8.3) •

Pub. 1059

Page 233

SYSTEM PRCGRAMMTh1G REOEiER&'K:E MANUAL

The following is a formal


~IF

definition of a treenarne:

name> : 
 [ ••• ]



::=



:
 [ ••• ]



::=


: 
 *** [,]
*<:MOD name> [,]

: : =  [ I  ]



::=

I

{}
/{}




: :=

I

::=
/




{~ssword character>}
/{}



::=





<:MUD name>




.. --



::=

<0>

: :=



Page 234

: : = 


::=





<0>

{AIBlcloIEIFIGIHII!JIKIL/MINI
OlpIQIR/sITlulv/wlxlylz}
{alblcldlelflrlh/i/r/k/l/m/n/
o/f,q/rls t/u/v w/x/ylz}
{OI1/2 3141516171a19}
.. - L~}

Pub. 1059

8 - TALLY OPEFATICNS



: :=



{./-}

::=



{O/1/2/3/4Is/6/7}
::=

I

I

{  /   /  / ~>
 
/<~ I<~I<~//

I

//
I////
 I

<~/////

I/l}

8.3

Status Returns

If the cperation was successful, then bits 9-17 of status word 1
will be zero. The two ~rds pointed to by XS will contain the
name of the file/catalog on which the operation was performed.
If the operation was unsuccessful, then status word 1 contains
the reason for the failure. If the status is 12 or 40 or
greater, the bM::> words pointed to by XS are undefined. If the
status was 7 (fetch error) then the two words are cleared.
OtherWise, the last file name scanned is placed in the two words.
If the status returned fram the operation is 12 (format error) ,
then status word 2 will contain a tally count ar:d character
pesi tion in the lower half. When this lower half quantity is
concatenated with the starting address of the string (the upper
half of the ini tial tally word), the resul ting tally will run out
at the character where the format error was detected. In the
upper half of status word 2 one of the following substatuses will
be returned:
(I)

{2}

Name too long:

cannot be Irore than 8 characters
nor rrore than 24 digits following a / in the "/n
octal convention.
Illegal place for asterisk: an asterisk was
and it was not the first character of the

found~

Pub.lOS9

Page 235

treename nor a set of 3 at the end of the first
name in the treenc3.ID2.
(3)

Illegal format for name in ":MUD": the name
following the leading n*" convention was not one
of the proper formats.

(4)

Teo many levels:

(5)

Illegal character: a delimiter was found before
the tally ran out. A delimiter is any character
which is not legal where it is found (e.g. a
non-octal digit in a n In ectal specification).

(6)

Illegal format: every character in the treename
was null, there was a null name, or there were no
dig its following a "In.

(7)

Illegal convention: a special convention was
used, but the escape convention bit was set
disall~wing all special conventions.

the treenarne (perhaps expaooed
by the scanner) contains rrcre than 36 catalog
names, and is therefore teo long.

(10) Illegal use of "/" format: t.'e final name or
password in a TALLY CA~ or a TALLY REPLACE
cannot l::especified using t.~e "/" convention.

Page 236

Pub. 1059

Chapter 9
Catalog Structure

9.1

Introduction

This chapter describes same of the basic notions and subtle
points of the catalog system. Catalogs are essentially ways. of
organizing access to information which is external to any running
slave prcgram. The catalog structure is generally drawn as a
tree, with the ~.asterFile Directory (MFD) as the rect, with
files and catalogs contained in the MFD, with files am
sut:catalcgs in turn saved in these sutcatalogs anJ so on. Thus
we see:

Pub. 1059

Page 237

This chapter answers such questions as: what kinds of things can
be files? What kind of information is kept about files? What do
catalCX]s look like? How do storage quotas work?
This chapter is divided into three parts:

9.2

(1)

The physical organization of files

(2)

Catalog information accessible to slave jobs

(3)

Quotas and storage limitations

Definitions

A catalog is a collection of descriptors. Each descriptor
describes some sort of object; ~,e object may be a disk file, a
catalog, a peripheral device such as a card reader, a core file,
or O1e of several other things ..

Each cescriptor may be broken into two halves: one half contains.
logical (device-independent) information, and ~~e other specifies
where the object is stored by a list of device addresses (DA 1 s) .
In general, the logical information may be viewed and/or directly
rrx:rlified ty slave prcgrarns, while the device addresses may not

be.
There are only two types of descriptors: catalog descriptors and
"file" descriptors. They are pictured below:

Catalog Descriptor

Page 238

lcgical

8

~rds

DA's

1

~rd

File Descriptor
lcgical

DA's

8

v.~rds

o to

27 words

Pub. 1059

9 - CATALCG STRUCIURE

Both types have 8 words of, logical information.

Catalog
descriptors include exactly 1 word for OAts, while file
descriptors may have frqn 0 to 27 DA' s apiece.

The DA in a catalog descriptor points to the first part of the
catalog it describes; this first part contains a catalog header
which describes storage for that catalog. A catalog header looks
like this:

Ca talag Header

logical

8 words
12 words

Objects may be either cataloged or scratch. An cbject is
cataloged if a descriptor for it is included in sane catalog;
otherwise it is a scratch object. Once an object is cataloged,
it nay rot be cataloged again, so objects created by slave
programs are guaranteed to have only one descriptor apiece.

Pub. 1059

Page 239

9.3

Physical Organization

9.3.1

Device Addresses (DA's)

A device address is a full word quantity specifying where part or
all of an object can be fouril. The format of a normal DA is:

o1

7 8 11 12

oc

EX!? -

x-

r:c -

35

17 18
RN

leg base 2 of the riumber of contiguous records in DA

(not

us~)

lc:;gical Device Code (lcgical device nt.1IPJ:er in ENV deck)

RN - Record Number of first record in DA
(Although we refer to the DA as containing physical addresses, in
fact ~,e device cede and record number are internally ~apped by
the Executive into the true physical addresses; but this mapping
dces rot concern us am we can consider these fields to be "true"
physical addresses.)
The device cede (DC) is the rr.ost important part of a DA, for it
specifies what kind of machinery the object is. Most objects are
disk files or catalcgs, so the device cede reflects which disk
drive ~,eir data is stored on. Peripherals such as printers,
tape drives, card readers, and so on, all have their own device
cedes.
The device cede is the only part of an object's description wnich
specifies the physical type of the file. Since most slave jobs
cannot leek at DA.' s tJ.'1ey cannot determine an object r s phys ical
type (whether it is a peripheral device, etc.) fran its
description. They must open it ar:d perform operations on it to
deduce its type.

Page 240

Pub. 1059

9 - CATALCG S'IRUCIURE

The EXP (size) field is only used for disk files and catalogs.
It aJntains the leg base 2 of the nt.nnl:er of words in this OA,
some or all of which are used to hold a chunk of the file or
catalog. When the Executive allccates reem for a file/catalog on
a disk, it finds chunks of storage big enough to hold all the
data. Each of these chunks is some power of 2 words lor:g. The
DA list, if read in order, contains the addresses of each chunk
of the file in the proper order.
If data is ag?eooed to the end of the file/catalog I the rema~nlng
unused space in the last DA is filled. When the last m is
ccnpletely filled, a new DA is allocated ar..d appen:1ed to the end
of 1:.&.'e descriptor' s DA list. Then data is written into that m 1 s
space.

Note that since file descriptors may hold no rrore than 27 m 1 s,
files' sizes may be limited even though there is enough disk
space to hold JIX:)re data. The Executive's algorithm for
allocatL,g various sized DAis is designed to minimize this
prcblem, but often has the side effect of reserving tco much
space for files.

This space is pericdically regained by the Shuffle no:1ule which
opens ron-optirrally allocated files, !roVes them into preallccated
scratch files, and then replaces the old files with the scratch
files. When· Shuffle opens eac~ scratch file, it can tell the
Executive how long ~~e scratch file will be so that the Executive
may cptimally allocate DA I S for it ar.d thus avoid wasted space.

Pub. 1059

Page 241

The DA for a mass storage device file has

o1

7 8 11 12

~~e

format:

35

17 18

o
AT - Allocation Type (specifies logical to physical record
mawing schem::)

DC - Logical Device Code (specifies logical to physical
record mapping scheme)

9.3.2 Catalogs
A catalog is, as ~ve have said, a list of descriptors of objects.
catalogs are always allocated on disks, and the 12 DA' s in

catalog descriptors serve as addresses to the various chunks of
the catalog. (Na turally , not all 12 of the DA' s need be used.)
~ special catalcgs, the MFD and SMCOECAT, are allocated in
core.

Page 242

Pub. 1059

9 - C1iTALCG STRUCIURE

Storage management within catalogs works as follows.
following picture of a catalog:

Asstirne the

header (20 words)
entry 1
(hole)

/

2

!W-----'--'"'---1

3

4
5

(unused)

"Holes" are created whenever objects are unsaved fran catalogs.
Holes are simple unused descriptors. wl1en a new descriptor is
added to a catalog, the Executive searches fran the beginning of
the catalog to find the first hole big enough to put the
descriptor in. If there are no holes big enough, the descriptor
is cdded to the end of the' catalog aTXl the catalog I s length is
updated.
Roughly the same thing happens when a file expan::1s and needs a
new DA in its descriptor. The descriptor is rroved to the first
hole big enough, or is added to the end of the catalog.
Adj acent holes are never coalesced in a new I bigger hole.

This
is because the Executive maintains a table of open files, and
this table contains the entry nurnl:er of each file in its catalog.
Entry numbers must include holes, or removing a descriptor fram a
catalog ~uld change the entry numbers of an unkncwn number of
open files 'in this table. For the same reason, holes may not l::e
coalesced, or the entry numbers for all following descriptors
would dlange.

Pub.1059

Page 243

SYSTEM PRCGRAMMING REE'ERE!t\K:E MANUAL

Note that entries (holes and descriptors) are essentially
maintained on a sequential list.' Thus searches for a descriptor
must proceed linearly through all entries until it is found.
Finally 1 catalogs may contain no more than 4095 entries (holes
and descriptors), due to the field size allocated for entry
numbers in the Executive'~ table of all open files internal file
table.
Subcatalogs nay be nested within catalogs an arbitrary nt..m1ber of
levels deep (subject only to rules on storage quotas) •

9.4

Slave Accessible Information

9.4.1

Catalog Headers

Slave jobs may view a portion of each descriptor in a.catalog,
and may obtain infonna tion about the catalog itself. The
information they may see includes information which governs
access to the file, file identifiers, and so forb,. This
information is SUIl1I1E.rized below, in the forms in which it can be
obtained by the "READ CATALCG" MME.

Page 244

Pub. 1059

9 - CATALCG STRUCIURE

The zeroth entry returned on a READ c.~ MME contains information al:out the catalog itself. This information is as below:

o

MAX

1

AI.JX

2

;r

3

;r

4

Ace

5

I

PREP

I

TYPE

PREP:
TYPE:

bits 29-31;
bits 32-35

ENTRIES

6

;r

7

LEN

The naxim.Im length which the catalog may hold. This maxilrurn and
its effects are described in detail in the section on catalog
maxiS.

ALCC

The Olrrent length of all objects contained in the catalog plus
20 words for the catalog header, plus 12 words for each file
descriptor in the catalog. (Twelve isscmewhat arbitrary, since
file descriptors may range fran 8 to 35 words long. It is chosen
as a gcxXl average length.)
Every catalog contains a 20 word header describing

so the minim.Im

Pub. 1059

M.J:X:,

t...~e

catalcg,

for a catalog is 20 words.

Page 245

SYSTEM PRCGRAMMING REE'ERENCE MANUAL

The length of each file in the catalog is added into the AIJ:X:.;
but each subcatalog has its M.2\X added into the~. This m:ans
that changes to the lengths of files in subcatalogs do not affect
the lengths of all catalogs containing the sub:atalcg.
ACe

The accesses with which the slave job has this catalog. open.
PREF

The catalog I s preference. See the discussion of preferences
belew, urx:ler file descriptors.
TYPE
The file 1 s type.

Described l::elbw for file Descriptors.

The number of entries (descriptors and holes) in the catalog.
Jobs which want to read all the descriptors in a catalog should
issue a Read catalog rtjME for the number of entries, plus one.
This guarantees that· they will get the.111 all.
LEN

The length of the catalcg itself:
and holes.

Page 246

20 word header 1 descriptors,

Pub. 1059

9 - CATALCG STROCIURE

9.4.2 Logical Descriptors
Information al:out all objects saved in a catalcg rray b€ gained by
applying a READ CATAI.CG MME to the catalcg. The MME returns an 8
word block for each descriptor; this descriptor is ndt in the
same format. as the Executive maintains it internally, and dces
not provide the DAis in each descriptor.
The DA I S may be obtained by opening each obj ect ar:d applying a
"PROVILE DEVICE ADDRESS" MME to the object. Jobs may only issue
this ~ if they are Load-D.mrp enabled, and so rrost jobs may not
see an object IS DA I s. Since 1:1Z\.' s are the only way to determine
peripheral types, etc. I IIr)st jobs may not readily diScover
whether or not a given catalcg contains peripherals.
The descriptors (as returned by
this:

~~e

READ CATALCG MME) look like

o
NAME

1

2
pp-s,-wJRD

3
4

ACe

5

DAYS-USED

6

-

-7

PREF

DLU

I

TYPE

PREP:
TYPE:

bits 29-31i
bits 32-35

DL.'4

LEN' or MAX

The name is a unique identifier for this descriptor, and hence
for the cbject it represents. No tw:::> descriptors in a catalog'

Pub. 1059

Page 247

SYS'IEM PRCGRAMMING REFEREN:E MANUAL

may have the same name I and the narre is the only identification
for a descriptor.

If a job supplies a password wnen trying to open (or erase, etc.)
a file, the password is canpared with this field, and no accesses
are allow=d if the password doesn 1 t rna tch. If the access word
has the slave-trapped bit set, then this field contains the
filename of a slave trap prcgram (in the same catalog) to be run
whenever some job attempts to open (erase, etc.) this file.
If the file is master-trapped, the password field is irrelevant
In any case, this field is
returned as zero unless the job issuing the Read catalog MME has
owner permission on the catalog. See the publication "File
Access and Protectiontf for help.
and may l:e used for arbitrary data.

ACC
Thisv.ord oontains access bits, which are used to determine hC1N
various jobs, may handle the object asscciated with this
descriptor. See 'IMl02 ("File Accesses n ) for an exhausting
discussion.

DAYS-USED
The DAYS-USED field OJntains a count of hew many different days
the cbject asscciated with the descriptor has been used since it
was last m:dified. A file is "used" when it is q::ened. The day
when the object was m::dified is not included in this count.
catalogs are never "used" but are rrcdified by changing their

MAX's.

Page 248

Pub. 1059

9 - ~ STRDC'lURE

PREF

object's preference determines which storage class its storage
is allocated frem. In general, l~r$preference files are saved
so they are faster to access, but this is not an inherent
property of preferences. They ~re simply a means of partitioning
storage. The various preferences and how they are used are:

An

o-

allocated in core

1 - swap storage

2 - monitor scratch files, and files in :SMCORCAT
3 - catalcgs

4 - normal scratch files
5 - special data base
6 -

normal saved files

7 - permanent data bases

In general, if a file needs storage of same preference and none
is available, it will be allocated storage fran the next higher
preference which has roam.
Special permissions are required for jobs to open scratch files
with preferences other than 4, or cataloged files ~Nith preferences other than 5 or 6. These permissions are given to a job by
the job which runs it, which must in turn have the permissions ..

All catalcgs created by slave jobs are preference 3, no matter
hc::::M the jobs create them. The Executive creates scme core
catalogs with preference 9.

Pub. 1059

Page 249

An cbj ect 's type to a large extent determines what can be done to
it. Only the types marked with a star below are possible for

cataloged files:
0

regular scratch file

1

regular scratch catalog

*2

regular cataloged file

*3

regular cataloged catalcg

4

special scratch file

5

special scratch catalOg

*6

special cataloged file (device file)

*7

special ca taloged catalog

10 communications file (slave)
11

ccmmunications file (master)

12

running job

13

nonexistant file (closed communications file)

*14 migrated file
16

shared roc:de file

The difference eetween regular am special files/catalogs is that
the DA. 's for regular files/catalogs are drawn fran a system-wide
pool, and storage for these files forms a part of the file
system. Special files/catalogs have their own pre-alloc"ated DA.' s
which point to storage which is dedicated to these files or
catalogs. Only the Executive can create special files/catalogs.
Many cperations such as ERASE, REPLACE, SCRMOi are not allowed
on g.pecial files/catalogs.

Page 250

Pub. 1059

9 - CATALCG STRL'OURE

At present, the MFD is the only specially-catalcged catalog.
This, arrl the fact that its DIM is 00/00/00, serve as its only
identification.
Peripherals are saved as special cataloged files, since their
DAIs point to the devices themselves and are not suitable for use
as file storage. The Executive makes a special check for special
cataloged files, and dces not up:1ate their lengths when data is
written to them. (Thus tape drives do not get i.mrensely long I
for example.) Also, special cataloged files may not be unsaved
or erased. Off-line descriptions contain no OAls and are fairly
intractable, since the s they represent have moved to tape.

DID
This field contains a ceded form of the date last used. An
object is "used" when it is opened, replaced, etc. The CCCl~ng
format is the same as for the DIM. Catalogs are never "used" in
this sense.

DIM
This field contains the ceded form of the date the object was
last pojified. An object is m:dified when it is catalcged, its
length d1~es, or when data is wri tten to it. The DL.'i of a
catalog is rrcdified only when its max changes ..
bits

a - 8 - year modulo 100
9
12 - month (January = 1, Deco....ml:er = 12)
13 - 17 - day of the rronth

LENGrH (or MAX)

If the descriptor is for a file, this field contains the file's
length in ~rds. If for a catalog, this field contains the
catalog's MAX as descri1:ed in t..~e previous section.

Pub.I059

Page 251

SYSID1 PRCX;RAMMING REE:EREi.'KE MANUAL

9.5 Quotas and Storage Limitations
9.5.1 Catalog quotas
A catalog I s quotas are determined by the MAX ~rd in its header.
A catalog's MAX dces not place any upper bound on its AI..J::X:.
(length of its included files and subcatalogs); rather it limits
the accesses which jobs may obtain upon opening a file when the
AICC>MAX. That is,' if a job can open a file with apper:d
permission, it can write as much data into the file as it wants,
1imited coly by the job's quotas (discussed in the next section) •
Three cases are notable for the relations
(1)

betw~n

ALOe

and MAX.

A file may not be replaced if its new length
push the allocated length over the catalog's
maxim.nn. But if a job can open a file wi h'1 apper:d
permission, the arrount of data which it can .app:rrl is
limited only by its job quota.

ALCCMAX.

(3)

AICC> (2*MAX).

Files nay not be opened. They may,
however, be erased or replaced wit.~ ~~ler files.

Jobs with special permissions may open scratch catalogs with

infinite max's. Infinite max's are flagged with ~'1e sign bit in
the MAX field set; quota checks are suspended for infinite max
catalogs.. Such catalogs may only be cataloged within other
infinite max catalogs, which then have the sign bit set in th.e
ALCC field to signal an infini te length catalog.
Note that scratch catalogs ',.;ith infinite rnaxes may be cataloged
within the.TI1Selves, but nay not then be cataloged elsewhere (since

already catalcged) •

Page 252

Pub .. 1059

9 - CATAI.CG STRUCTURE

9.5.2 Job quotas
To prevent jobs frcm running arrok an:] filling all system storage
with unnecessary data by appending to files, each job has a quota
of hew many words it may add to catalcged or scratch storage.

Pub. 1059

Page 253

SYS'IEM. PR:GRAMMING REFEREN:E MANUAL

Page 254

Pub. 1059

Index

Indexed 'nOrds are given in their i.nmedia te context, i. e. as much
to either side of the ~rd as will fit on a line. Underlining
has been ani tted, all series of three or rcore spaces have l:een
reduced .to two, and each errl-of-line has been rrade a space. The
line number is calculated fran the top of the page: t.'e header
line is always line 7 I the trailer is always line 60, and line 11
is usually the first line of text.
Brackets are used to enclose entries for Which the same w~rding
will not t:e found in the text; no line nurnl::er is given for these
entries.

Pub. 1059

Page 255

~

148
162
194
88
14
66
179
163
103
132
158
127
84
87
106
59
62
53
79
137
29
76
201
205
204
76
199
74
196
12
16
114
10
47
10
247
43

word

line
45
50
17
3S
26
49
25
56
. 34
22
36
54
30

38
49
32
23
11
39

52
31
36

22
11
36
20
28
36
26
41
23
26
23
22
22
25·

58 27
114 11
238 37
38 48
126 27
56 14
240 36

Page 256

at l:e specified with the
at l:e specified with the
uccessful" (0).
5.6.5
the job terminates or is
rty fault vector l1 and is
en the job terminates or
The two high-order user
UEST STATUS. These user
1 of the trap, nine user
1 of the trap, nine user
1 of the trap, nine user
addition, the nine user
n 1/64 milliCRIJ) Q Job
en it is passed.
Job
by bits 29-35 in its job
the file using the ALTER
d accesses via the ALTER
MME 500123: ALTER
d be allo~ on an ALTER
file
through an ALTEIt
(2)

On OPEN, ALTER

2 on a completed single
35 On a single device
ocessor
6.2.1 Single
f device drives. Single
files: 12 (single device
ode of 12 (single device
e) and 12 (single device
y" (6).
5.6.8 Illegal
call must specify a trap
valid parameter. A trap
omrnand causes the device
oted here.
1.1.1 Base
by setting a pseudo base
[BAR = base
plying a "PRGVIIE DEVICE
SE canmand in the return
but the file has device
500126: PROVIDE DEVICE
ored by a list of device
abIes the PRGVIIE DEVICE
8-19 List of device
(zero length; no device
A as ccntaL,ing physical

"/n convention, and the catalo
"/" convention, and the rep1ac
A1:orted COpy and Break Drive
aborted.
If the trap occurre
aborted; that is, it. is suspen
aborts. Status word 2 on this
access bits (bits 9 and 10) ar
access bits are obtained fram
access bits can be obtained by
access bits can be obtained by
access bits can be obtained by
access bits from 9-17 of the c
access mask The source file,
Access Mask (Q register)
access mask (set by the supra
ACCESS ~!ME.
Catalog entries
ACCESS MME. The previous MAX
ACCESSES
xO File reference
ACCESSES and they do not confl
ACCESSES ccrnmand (q. v • ) .
IDw
ACCESSES, DUPLICATE, and REPrA
action device drive contains t
action DRIVE command ~~is word
Action Drives A single actio
action drives change the state
action) and 24 (drive with D0~
action) or 24 (drive with Da1f
action). These drives generate
Actions Suppose job C now at
address in X6 at the time of t
address is specified when the
address list for the specified
Address Register The base ad
address register. SQUEEZE cau
address register]
ADDRESS" MME to the object. J
address.
addresses
allocated (see Cha
ADDRESSES XO File. reference
addresses (DA 1 s). In general,
ADDRESSES canmand, and provide
addresses for catalog (zero if
addresses) • The llpFer half 0
addresses, in fact the device

Pub. 1059

~

line

word

[DA = Device Address]
21 ey are used are:
0 - allocated in core
1 - swap
35 s remaining catalog word allotment
1 Job1s remainin
37 s remaining scratch word allotment
2 CRI.1 limit for
34 rst has its catalog word allotment decremented by the 1
31 rst has its catalog word allotment decremented by the 1
28 log has its scratch word allotment decremented by the 1
38 log has its scratch word allotment incremented by the 1
40 s· scratch (catalog) word allotment incremented by the 1
17 11 have its catalog word allotment incremented by the 1
40 me tirr.e its catalog word allotment is decremented by th
53 s scratch (catalog) word allotment is decremented by th
35 s remaining scratch word allotment is decremented by th
27 er, and its catalog word allotJrent is decremented by th
26 ,the job's scratch word allotment is incremented by th
30 me tine its catalog word allotment is incremented by th
23 scratch and catalog word allotments are added to ~~e 00
15 catalog and scratch word allotments for the spawned job
54 scratch ar.d catalog word a110trnents incremented by the
[scratch word allotment]
[catalog word allotment]
. (scratch word allotment]
log quota = catalog word allotment]
[cata
tch quota = scratch word allotment]
[scra
[scratch word-allotment]
[catalog word allotment]
[scratch word allotment]
[catalog word allotment]
[scratch word allotment]
[catalog word allotment]
34 The job has exceeded its allotted state vector
length
42 tion on catalog max's.
ALOe The current length of a
19 Function
OMAX
1 ALOe (amount of storage used b
54 Function
0 rwmx
1 ~ (amount of storage used b
32 elow its current AI..CC.
AI.CCls and MAX's are descri1:ed
32 on on the file using the ALTER ACCESS MME.
catalog en
23
Append accesses via the ALTER ACCE....~~. The previou
11
MME 500U3: ALTER ACCESSES
XO File refe
38 Y would· be allowed on an ALTER .ACCESSES and they do not
52 on the file
thrcugh an ALTER ACCESSES ccrnmand (q. v.) .
47 Trapping calls wib.~ the autanatic pause feature share
29 pping, and trapping with autanatic pause. The action r
10
[BAR = base cddress register]
42 17 EMORY REQUEST causes the BAR for the issuing job to be

242
249
136
136
132
163 .
169
56
144
153
56
70
107
149
149
169
48
86
64
48
70
70
85
85
144
144
167
167
172
172
128
245
121
125
62
59
62
53
79
137·
12
12

Pub. 1059

Page 257

SYS'IEM PRCGRAMMING RE]'EREl.'X:E MANUAL

~

47
10
24
10
10
47
156
231
182
87
100
101
157
230
185
178
102
64
48
152
162
81

131
124
156
148
101
230
92
55
87
183
163
132
227
112
184
148
152
156
162
24
11
68

line

word

23 ter. SOOEEZE causes the BAR for the issuing job to be
26 e base address register (BAR) limits memory references
31 re1a tive to the squeezed BAR, and has bi t 35 (the squee
[BAR = base address reg ister]
23 as noted here.
1.1.1 Base Address Register The ba
22 gram by setting a pseudo base address register. SOOEEZ
23 ape
special convention bit X5 Pointer to two words
33 The "Escat=e Convention" bit (020000 octal) is provided
50 n the communication file bit (bit 1) in the access to p
14 d.
(4) If the return bit (bit 2) is set in the acce
39 g to open. If the fetch bit (bit 4) of X4 is 1, then X
47
presence of the fetch bit (bit 4). If the fetch bit
47 he presence of the fetch bit (bit 4). If the fetch bit
42 is the escape convention bit (see below).
Bi ts 9-17 a
33 ing the appropriate flag bit in an index register. B$R
21 ing the appropriate flag bit in X4 (see COpy MME). In
35
catalog, and the fetch bit is on in the access word 0
25 d to it.
If the return bit is set in the access word
19 lased and, if the return bit is set in their access, re
23 ention, (bits 9-17) trap bit mask XS Pointer to two w
23 ention, (bits 9-17) trap bit mask XS Pointer to two w
23 zero
(bits 9-17) trap bit mask X5 Reserved forfut
22 e zero; (bi ts 9-17) trap bi t mask XS Reser"tled for fut
22 or OPEN (bits 0-8); Trap bit mask (bits 9-17) Xs Pain
22 cesses on the file, trap bit mask and escape special
38
(MME 500136). The trap bit mask for the search is in
11 1 be limited by the trap bit mask in bits 9-17 of X4.
43
Bits 9-17 are the trap bit mask to be used during
t
48 t PJssess t.'e Leg enable bit may not issue this MME. A
36 must not have the return bit set in its access word.
28 log which has the return bit set in its access word mus
24 assed without the return bi t set in the accesses, it be
43 uing job wit., the return bit set.
On canpletion of th
45 uing jcb with the return bit set.
Upon a:mpletion of
41 saved with the ' shared' bi t turned on in the unpasswor
11 atch file ard the return bit was not set in the access
54 ing the appropriate flag bit when issuing those camw~
40 ], the escape convention bi t) is set in the upper half
41 1, the escape convention bit) is set in X4, then all sp
49 1, the escape convention bit) is ~et in X4, then all sp
46 1, the escape convention bit) is set in X4, then all sp
32
has bit 35 (the squeeze bit) set on to indicate this f
46 Y the use of the inhibi t bi t. This hardware feature pr
24 of device file X4 Flag bits X6 Trap location X7 P

Page 258

Pub. 1059

INDEX

~

74
116
141
171
179
103
132
158
127
228
69
75
116
141
172
60

193
193
87
III

158
192
50

18
17
18
19
186
19
177
186
194
20
194
185
194
183
186

word

line
18 th DCW's only) X4 Flag
18 ry location M2 X4 Flag
16 f file/catalog X4 Flag
18 y not be zero) X4 Flag
25 . 0 high-order user access
34 e trap, nine user access
23 e trap, nine user access
36 e trap, nine user access
54 on, the nine user access
25 e bit is set in the flag
53 ster em job.
The flag
26
status of 7.
The flag
53
status of 7.
The flag
49 r that end).
The flag
11 tatus of 7.
The flag
11
this word contains trap
54 tting B$NTPD in the flag
37 tting B$NTPS in the flag
[ccmmunication file
[communication file
[shared
[return
11 MME 500010: TIME SINCE
38
24

20
16
26

54
17
26

22
19

14

74

186 17
74
191
186 16
185 25

Pub.lOS9

bits X6 Trap location X7 N
bits X6 Trap location X7 P
bits X6 Trap location The
bits X6 Trap location X7 P
bits (bi ts 9 and 10) are used
bits can be obtained by issuin
bits can be obtained by issuin
bits can be obtained by issuin
bits frcm 9-17 of the catalog
bits in X4 ('200000' for saurc
bits in X4 are divided into tw
bits in X4 have the following
bits in X4 have the following
bits in X4 have the following
bits in X4 have the following
bits which
the issuing job d
bits, the first five words wil
bi ts. The first ten words are
bit]
bit]
bit]
bi t]
BCOrLCAD
No arguments
The
(bounced special interrupt]
are ei ther disCarded or eounced to a job higher in the
special is discarded or "tounced",
ar.d the prccedure
cial interrupt cannot be eoUI:ced. If the job stops ace
sion, the break ~ial "eou."1ces" up the ccmmunication
1 be discarded.
1.4.6 Bouncing Special Interrupts
[bouncing special]
[1:ouncing special 1
[1:ouncing special]
Section 5.2.)
3 BRK Break - notifies a slave end j
S.6.5 Aborted COPY and Break Drive Su~se job 0 no
ved slave em (because a break drive was issued at th
er, job A decides that a break drive should be given.
never be able to issue a break drive successfully.
On
The only exception is a break drive: in this case, if
(break drivel
lave er.d which dces have break permission. Thus a rese
[break permission]
[break permission]
ve break permis.sion, the break special n oounces n up the
nullified.
(2) Ifa break special is given to a sl

Page 259

SYS'IEM PRCGRAMMING

~

74
183
180
180
175
44
188
87
75
186
187
141
88
112'
186
187
188
189
69
116
138
144
146
167
171
187
183
13

line

~

MANUAL

~rd

17
38
49
40
11
11
11
11
11
32
37
11
33
15
11
11

[break special]
cesses need not include "break" (eXecute) permission; i
9 specials" (7).
(2) "Break" drive: A drive of type
nd
which has eXecute ("break") permission on its end
ommunication file is not busy (see Section 5.5), and us
This file will remain busy as long as the PURE comma
ly, the slave end may be busy because of a copy-type op
Y or which are currently busy cannot be passed to the n
rnmunication file that is busy due to the action of anot
eing led astray.
5.5 Busy States and Reset Status
Ie, the file will appear busy to the slave er£1, and onl
use the master em to be busy until a RESEr STATUS is i
ully spaMled job r~ains busy until a trap cccurs to th
he return bit set beccme busy until they are closed and
The "canrwnication file busyl1 status (6) is a special
usy ("comnunication file busy") to all ot.'er slave ends
(flcanmuni- cations file busy") to this end. Only loca
; the master em becanes busy, but the state of the fil
he communication file is busy, ei~~er because another e
he communication file is busy, ei~,er because another e
he ccmmunication file is busy, ei~~er because another e
he communication file is busy, either because another e
he communication file is busy, either because another e
he communication file is busy, ei~,er because anot.'er e
c~ rnunication file is busy, either because anot.'er e
ued when the file is not busy_ (There is one exception
set, it does not beccme busy_Instead, the passing job
de for a valid Executive call are always 101 to reduce
3 MME Faults; Executive calls A slave job rray reques
nt interrupt.
Trapping calls also function as transpa
ma11y indica te Executive calls. However, if the job ge
t in the file p::>inter.
card Punch The card punch ha
the nonedit mode.
card Reader
The card reader
MME 500103: CATALOG
XO File reference n
MME 500114: READ CATALOG XO File reference n
MME 500141: TALLY CATALOG XO File reference n
MME 500125: OLD READ CATALOG Ai'ID OPEN FILES
xO F
canmand is like the READ CATALCG AND OPEN FILES ccmnand
n them by issuing a READ CATALCG AND OPEN FILES canmand
MME 500127: READ c..~TAtCG ~1ID OPEN FILES
XO F
ication ~rds The READ CATALOG ~1) OPEN FnES ccmrr.and
(quotas exceeded). The catalcg and scratch ~rd allot
MME 500111: rnANSE CATALOG Th"'TRY XO File refer
MME 500124: CF~GE CATALOG MAX XO File referen

Page 260

Pub. 1059

12

12
14
223
224
55
120
148
96
96
114
124
124

86
59
62

18
44
55
54
39
41
23
19
24
31
42
28
26
32
26
18
51
23
45
34
29
30
33
47
44
30

IS

INDEX

~

line

word

247 15 ained by applying a READ CATALCG
60 21 pointed to by X5 of the CATALCG
149 21 the lower half. See MME CATALCG
38 33
64 files)
3 Special cat-~log
108 43 abled with
the Special catalog
85 28 -------+1
I catalog
85
11otment]
[catalog
81 41 i th its catalog entry.
ca talcg
152 50 ations, see Chapter 8.
catalCXj
102
[catalog
131

MME to the catalog. T
MME.
GFOn ccrnpletion
or Chapter 9 for rrore
p:rmission (allows a j
p:rmission and is spec
Quota I -+-!- - - quota = catalog word a
quota checks are susp:
quota checks are suspe
quota checks]
quota checks]
quota checks]
quota checks]
quotas
A catalcg's q
word allotments are ad
word allotment is deer
word allotrrents increm
word allotment]
THOrd allotment]
word allotment decreme
wurd allotrrent
1 J
r,..ord allotment]
word allotment is dLlCr
word allotment increme
THOrd allotment decreme
TMJrd allotrr.ent]
word allotment is incr
TtIIOrd allotment]

25

[catalog
(catalCXj
[catalog
age Limitations
9.5.1 catalog
's remaining scratch and catalog
r. At the same time its catalog
Iso have its scratch and catalog
(catalCXj
(catalog quota = catalog
Ie/catalog first has its catalog
ng
0 Job's remaining catalog
(catalog
catalog header, and its catalog
SE camnand will have its catalog
Ie/catalog first has its catalog
[catalog
r. At the same time its catalog
(catalog
Ce obtained by the "READ CATALCG" MME.
sian, t.t,e job's scratch (catalog) word allotment is dec
e will have its scratch (catalog) wurd allotment increm
re, such as OPEN, ERASE, CATALCG, or REPIACE. Intended
taloged only in a core
catalog.
13 Illegal usage
p=rtaining to that fi1e/catalcg. The information for
only special1y-catalo;ed catalog. This, ar:d the fact th
(3) For TALLY CATAI.CG:
The register point
uence of canmards ERASE, CATALCG; however, the REPLACE
FD is the only specially-catalcged catalog. This, am t
lways of type 6 (special catalcged file). They are ass
als are saved as special cataloged files, since t..~eir D
cutive creates same core catalcgs with preference O.
[core catalog]
the slave connect fault cell)
is zero, a slave conne
ided into t:wo-~rd fault cells, one for each of the si..,,<

Pub. 1059

Page 261

157
162
252
48

14
22

56

39

64
70

53

85
132
136

34
3S

144
149 27
153 17
163 31
167
169

172
244
70
144
178

29

38
52

40
45
18

57
125 41
251 11
231 11
131

39

251 11
25
19~
23L

249
242
18
13

16
51
46

SYSTEM PFCGRAMMING

~

59
62
14
81
152
102
131
157
162
.36
15
182
64
189
88
183
190
21
53
191
189
153
81
88
184
187
21
184
64
197
64
251
56

96
251
251
251
74
74
14
193
178
188

69

line

RE]iE!REtK:E

MANUAL

word

11
MME 500111: mANGE CAT~ ENTRY
XO Fil
11
MME 500124: CllANGE CATAIm MAX
XO File
38 flow/truncate, or divide check fault cccurs, it is retu
41 gentry.
Ca taleg quota checks are suspended for the E
50 apter 8.
Catalog quota checks are suspended for the T
[cataleg quota checks]
[ca talog quota checks]
[ca taleg quota checks]
[ca taleg quota checks]
11
MME 500014: CLCCK
A Time
The CLCCK co
17 et by the Executive call CLCCK. Both these calls are n
22 rrupt.
5.2.6 PASS and CI..OSE
These comma'1ds are the
11
MME 500105: crCSE
XO File reference num
12 cept local operations or CLOSE can be issued at any end
45 ord 2 on the trap of the CI..OSE command will contain the
36 turn bit set, it may not CI..OSE orP~BS it again until t
55 dle, no operation except CI..OSE or RECUEST STATUS can be
30 been destroyed because a CI..OSE was
issued at another
29 will becan: invalid (cf. CLCSE).
UpJn canpletion of t
16
the master end issues a CLCSE, both it at"ld the file be
34 end job may issue DRIVE, CI..OSE, or RECUEST ST&""tl'S canrna
13 LLY OPEN, UNC.:;TALCX;, and CLOSE.
A job which issues a·
49 nds OPEN, ONCATALCG, and CLC6E.
ur:on canpletjon of th
49 urned in the trap of the CI..OSE. (See CLCSE.) A termin
19 d except RESET STATUS or CLOSE. However, the file refe
40 with the return bit set, CLCSE. rfthe return bit is n
28 passed.
6 FCLO File closed - notifies the job that
16 1es are notified by file-closed special interrupts ~~at
[returned closed special] .
20 se1y fo1lo~ by a "file closed" special as its file re
37 nterrupt of type 6 (file closed) is generated at allot
[cede data]
17 e second word contains a coded date used to initialize
34 ter X5 dces not point to ceded dates, but contains a co
[cooed date]
29
This field contains a ceded form of the date last us
38
This field contains t.,.~e ceded form of the date the obj
[read camm file drive]
[read camm file special]
44 detect a serious error. Canmand faults are generated w
29 2 (lowest)
5.6.4 COPY Ccmmer~ with No-Trap Option
36 on 5.6.
5.2 Non-COPY Canmands
Communication files
17
the file appears busy ("conm.mi- cations file busy") t
43
frcm the slave errl of a canmunication file, and Xl

Page 262

Pub. 1059

INDEX

~

line

'NOrd

87 11 the access is 1, then a
191 26 rnple
5.6.1 Creating a
20 41
, m:.de.
1 RCF Read
III 52 ·cratch file, or create a
19 30 d at thernaster end of a

43
11

communication file
will be c
Communication File Suppose t
communication file - used to n
communication file and pass it
cammunication file are bounced
[communication file bit]
[communication file bit]
, and which turns on the camnunication file bit (bit 1)
gress at one time. The "ccmmunication file busy" statu
will thus awear busy ("carmunication file busy") to a
RESET STATUS issued on a communication file for which a
If the master em of a canmunication file is closed,
(see TRLNCATE). If the camnunication file is busy, ei
nication file are 0 (set cammunication file mode) and 1
may be issued or~y ona cammunication file or on a dev
and a device file via a communication file should be s
sued at a slave end of a ccmmunication file will genera
ed at the slave end of a communication file will genera
ed at ~,e slave end of a ccmrnunication file will genera
ed at the slave end ofa cammunication file will genera
ed at the slave end of a communication file will genera
n file are:
(1)
"Read camnunication file" drive: A
job A noW issues a "read communication file" drive, the
source file is a master cammunication file,
the corr
a DRIVE or CLOSE on a ccmmunication file, the lower
1e or the slave end of a communication file, then the s
er of ~,e slave end of a ccmmunication file, then a spe
1 use is with a terminal camrnunication file, to
indic
slave end of a terminal ccmmunication file. The drive
age can be passed with a cammunication file.
If XO is
nce number of a master communication file. In that
nd destination files are communication files is not all
tion file. For terminal cam:tl.lnication files in particu
ob files, master ends of cammunication files, and file/
[destroying communication files]
[destroying communication files]
pt on a
slave em of a canmunications file can be "bo
ually cccurred, then the connect fault (special interru
first word of the slave connect fault cell)
is zero,
tions The shutdcwn am connect fault cells have speci
in this category are all connect faults, timer runcut f
Error recovery for the console includes printing "DEL
an await-ready drive.
Console Typewriter Note that
MME 500121: CONTINUE XO File reference

Pub. 1059

Page 263

87
III
182
186
187

50
32

2S
141 36·
64

34

144 28
74 36
74 27
200
69

32
17

116
146
167

39

171
180

195
117
20
137
138
180
75
112
172
70
181
112

26
29

41
27

43
13
24

32

24
47
44
12
20
42

40
20

196

197
18 26
24 18
18 46
15 34
11 35
225 37
224
66

SYS'IEM PRCGRAMMING REFERENCE MANUAL

~

D~cr
.~~~
fl'd i'" ~ 2~
··7.r."

..~~

'.;'~~';~

141
109
42
48
66
88
88
29
14
156
230
148
152
156
162
231
152
162
148
162
231
152
156
162
232
230
229
232
44
22
68
194
193
190
117
172
193
177
138
175
175
177
178
22

line
32
45
42
29
56
40
43
35
28
23
42
40
41
49
"46
33
23
23
45
51
42
42

word

42

running below it until a CONTINUE command is issued.
d the supra job 1 S RUN or CONTINUE ccmI'lEnd is trapped wi
job in X4 of the RUN or CONTINUE command which initiat
the trap for the RON or CONTINUE ccmrnand which initiat
be restarted by another CCNTINUE canmand. If the job
be continued by using a CONTINUE camnand. If I hcwever
f a recoverable error I. a CCNrINUE may not be issued. I
(3) On RON, EXECUTE and CONTINUE, gives termination
b then has the option of continuing or terminating the
ask and escape special convention bit X5 Pointer to
Bit 4 is the escape convention bit (see telow) •
0000 (octal], the escape convention bit) is set in the
020000 octal, the escape convention bit) is set in X4,
020000 octal, the escape conventionbi t) is set in X4,
020000 octal, the escape convention bit) is set in X4,
are zero.
The "Escape Convention" bit (020000 octal)
(bit 4) escape special convention, (bits 9-17) trap b
(bit 4) escape special convention, (bits 9-17) trap b
e specified wit.l1 the 11/" convention, and the catalcg wi
e specified wit.l1 the "/" convention, and the replace wi
on 8.3) •
8.2 Scanner Conventions The conventions
hen all special scanning conventions are disallowed, an
hen all special scanning conventions are disallowed, an
hen all special scanning conventions are disallowed, an
There are three special conventions for the first name
one of the three special conventions is used for the fi
ere are several "special conventions" which all "jobs
ial first name = special convention]
(spec
Ie for pure procedure.
Copies to and fran the pure re
length. (See slave end copy canmands, Section· 5.1.)
permission. MME 500131: COpy XO File reference numb
1" (0).
5 • 6 • 5 Al:orted COPY and Break Dr i ve Supp:>se
ion· JobD now issues a COpy command from its storage
occurs when a slave em COpy command has been issued,
as a special case of t..~e COpy carmand in which Xl and X
as a special case of the COPY command in which Coth XO
End 2 (lowest)
5.6.4 copy Canmand wi~~ No-Trap Opti
issue the corresponding COPY command, unless it resets
slave end via a WRITE or COPY command. In other words,
e calls, pr incipally the COPY command. Other calls whi
end.
5.1.1 Slave End COPY Canmands
A COpy carman
s.
5.1. 2 ~..aster End COPY Canrrands As noted atove
Section 5.6.
5.2 Non-COPY Canrrands Communication
location fX)inter (see COPY~) • 1.4.9 Sirnultaneo

Page 264

Pub. 1059

50

47
48
34
40
52
14
11

17
32
34
42
55
29
51
30
26
49
11
36

INDEX

~

line

\rord

228
200
179
20
190
185
188

32 the file is released. A copy operation involving a fil
41 transfer of data.
If a copy or drive with roll's is su
51 tatus information with a COPY or WRITE camnand, exactly
50 ed a
RESEr STA'IUS on a copy to which the master
end
44 nits own ini tiative, or COPY, in rest=Qnse to a slave e
communication file on a COpy, READ, WRITE, or DRIVE co
11
42 f a copy-type operation (COPY, READ, WRITE, or REQUEST
199 43 sed as a parameter for a copy-type camnand in order to
201 23 ord 2 of the trap. On a copy-type camnand which invo1v
227 53
file iri that catalog.
COPY-type operations to a file
171 45
a correSFQnding READ or COPY. (See the description of
249 21 re:
0 - allocated in core
1 - swap storage
2
catalog •
13 Illegal
57 17 Y be cataloged only in a core
249 50 e Executive creates same core catalogs with preference
242
[core catalog]
200 24 ice, the other must be a core file or a job file. In 9
238 31 such as a card reader 1 a core file, or one of several 0
70 44
(source) file must be a core file, the issuing job's c
1 Core Residence permission
2
38 28 s scheduling only)
70 44
file, the issuing job's core, or a cornmunica- tion fil
69 11 tion cannot be used wi th core, which has no implici t re
44
(joboore]
68
[jcb core]
121 50
5 Upper: days-used count
Lower: preference and
126 45
5 Upper: days-used count
Lower: preference and
204 26 lated
status.
RECORD COUNT RESIDOE (Bits 30-35) - T
149 18 set the file's days-used count; the lower half contains
55 43 set the file I s days-us"ed counter (see Chapter 9). The
38 42 Y Scheduling (Pl:Q)
6 Crash (allows slave job to al:o
85 16 or, Priority Scheduling, Crash, and Leg. The spawned j
191 26
Usage Example
5.6.1 Creating a Communication File
182 43 tying its state.
5.3 Creation and Destruction
Ac
(see Secticn 5.5). The creation or destruction of ext
183 53
242
[DA. = Device Address]
241 17 er of 2 words long. The DA list, if read in order, con
250 46 les/catalogs is that the DA' s for regular files/catalog
251 17 laged files, since their r:A' S p:jint to ~~e devices them
240 43 most important part of a OA, for it specifies what kind
222 25 ramming Considerations
Datanet-30
A write on a Data
251
[co::1e data]
37 II run down.
MME 500004: DATE
No argmnents. DATE loa
56 20 e used to set the file's Date Last ~ified attribute.
96 41 upper half and the ceded date last m:dified in the lowe
125 22
The date last used and date last modified in the cata

Pub.1059

Page 265

SYS'IEM PRCGRAMMING REEERENCE MANUAL

~

line

149
125
56
149
121
121
126
121
126
.121
56
56
149
96
251
49
248
121
126
149
55
77
77
207
77
200

20 the upper half and ceded
21 on specified in X6. The
18 to initialize the file's
20 nd word contains a ceded
[DLM =
54 last use
Lower: coded
49 last use Lower: coded
53 alcg
6 Upper: ceded
48 alcg
6 Upper: ceded
[DLO =
17 nd word contains a coded
22 is set to zero, and the
16 o two words of usage and
34 dces not point to cooed
[ccrled
11
MME 500003: TIME OF
42 exhausting discussion.
50 ccess word
5 Upper:
45 ccess word
5 Upper:
18 r used to set the file's
43 s used to set the file's
34 atus word 2 contains the

word

43
53
22
20
28
36
26
22
27

Date Last M::dified in the lowe
date last used and date last m
Date Last Used attribute. The
Date Last Used in the upper ha
date of last modification]
7
date of last modification
date of last modification
7
date of last use Lower: ceO
date of last use Lower: ccd
date of last use]
date used to initialize the fi
date-last-used and date-last-m
dates infonnation. The upper
dates, but contains a ceded da
date]
DAY No arguments The ASCII
DAYS-USED The DAYS-USED fiel
days-used count Lower: pref
days-used count Lower: pref
days-used count; the lower hal
days-used counter {see Chapter
DeW residue of the last Dew ac
[I:CW' residue]
ing.
6.2.2 Drive with Dew's A Drive with DC~s has
d cut.
If a DRIVE with DCW's fails with a bad DeW sta
If a copy or drive withDCW's is successfully initiate
antral lMJrds (Drive with !:XJ'l' s only) X4 Flag bits X6
the device. Drives with DCA's transfer data to or fram
ction) or 24 (drive with Dav's) is provided for ~~is pu
The data control words (roq's) pointed to by register
tion) and 24 (drive wi~, DeW's). A drive of ~ 12 ap
r 6 for a description of OCWs.
Status word 2 on a cern
camrunication file to Ce destroyed. Thus it is not a 1
[destroying ccmmunication files
]
]
[destroying ccmmunication files
tee
5.3 Creation and Destruction A ccmmunication
n 5.5). The·creation or destruction of extra slave end
29 30 3S on a single device action DRIVE command ~~
device files: 12 (single device action) and 24 {drive w
ction code of 12 (single device action) or" 24 (dryve wi
ile mcde) and 12 (single device action). These drives 9
The command causes ~~e device address list for ~~e sp
and applying a "PRUVIrE DEVICE ADDRESS" MME to the obj
ff-1ine but ~,e file has device addreSSeS allocated (

Page 266

Pub. 1059

41
31
41
74 16
204 37

199

29

207 51
76 20
76 33
187 43
196.
197

182
183
201
76
199
74
114
247
58

INDEX

~

114

238
240
38
126
56
242
240
181
76
204
176
177
172
74
199
77
76
76
210
200
92
237
157
101
199
233

line

11
MME 500126: PWlIDE DEVICE ADDRESSES
XO File re
37 t is stored by a list of device addresses (DA's). In ge
14 a10rganization 9.3.1 Device Addresses (DA's)
A de
48 Xes, enables the PRGVItE DEVICE ADD~ camnand, and
27 catalog
8-19 List of device addresses for catalog (
14 th them (zero length; no device addresses) • The upper
[nA. = Device Address]

31 (not used) OC - logical Device Cede (logical device nu
32 mode drive (~ 0) or a device drive (~ 12) may be
36

31
21
33
50
28
24
41

19
11

53
29
15
20
40

14
15

48
25
25

223

26

18

word

14

38

233

41
46

247
251 35
121
124 48
251 26
247 46
121

124 51
196 11
194 17
74 11.

Pub. 1059

completed single action device drive contains the stat
11y transferred.
6.2 Device Drives
A number of de
nvolved in the COPY is a device file (see
Chapter 6),
Ie, and copies be~Heen a device file and communication
he destination file is a device file, then the lower ha
rnmunication file or on a device file. Drives on commun
the high-speed printer. Cevice files are always of typ
DRIVEs, see Chapter 6, "J:evice Files".
Except as not.
we valid drive ~s for device files: 12 (single devic
[device status returns]
es)
6.3 Device Status Returns This s
[device status word]
1 contains the physical device status.
Status Retur
ee, with the Master File Directory (MFD) as the root, w.
ro, then the Master File Directory (MFD) is searched.
ro t. then the ~.aster File Directory is searched. As eac
talcg of the master file directory. A slave job opens
[MFD = Master File Directory]
a fau! t takes place. No dirty fault vector a1:orts
ar
nonzero, the job had a "dirty fault vector" and is abo
jcb to be aJ:orted for a dirty fault vector. The simul
formatting characters.
Disk
The file pointer on a d
), overflow/truncate, or divide check fault cccurs, it
talcg is to be four.d in "DLIBRARY" in
the catalog spe
E: bi ts 32-35
6 DLU DL~
"used" in this sense.
DIM This field contains the
n]
[DLM = date of last rnadificatio
an or equal to the ceded DIM in the lower half of the w
nt ·have rroved to tat=e.
DLU This field contains a co
TYPE: bits 32-35
6 DLU DL'1
(DLO = date of last use]
an or equal to the ceded DLU in the upper half of the w
5.6.7 Master End DRIVE Job A now issues aneth
Aborted COPY and Break Drive Suppose job 0 now issu
MME 500132: DRIVE
xC. File reference num

Page 267

SYSTEM PRCGRAMMING flEE'ERENCE MANUAL

~

180
181
181
21
74
19
180
200
201
199
199
194
185
181
20
20
194
181
183
207
77

200
74

199
76
29
181
189
190
175
195
188
20
21
190

180
180
186
204
205
204
204
74
74

line

word

11 if it desires.
5.2.3 DRIVE (Master End)
Data tran
27 ed to that job.
5.2.4 DRIVE (Slave End)
Certain dr
32 ive (~ 0) or a device drive (~ 12) may be issued.
50
12 D Slave issued drive - notifies the master
[setrnode drive = set mode special]
29 which are generated by a DRIVE command at the master en
17 rnunication file, and the DRIVE ccmnand can be used for
47 e called directly by the DRIVE ccmnand in order to requ
22 n a single device action DRIVE ccmnand this word is ret
44 m the device, or for the DRIVEccmnand to activate spec
28 rarn may wish to use, the DRIVE canmand. with function co
23 be given. It issues the DRIVE ecmnand. The drive is r
11
a COpy, READ, WRITE, or DRIVE ccmnand. The master end
41 ut and output m:des (see DRIVE ~). The exact interpr
13 pecials generated
by a DRIVE on a communication file,
23 ecia1 was generated by a DRIVE or CLOSE on a communic
22 b A decides that a break drive shculd be given. It iss
[slave-issued drive special]
19 be able to issue a break drive successfully.
Once ere
41 shes rewinding.
6.2.2 Drive with DeW's A Drive wit
31 ce was timed out.
If a DRIVE with ~wts fails with a
41 of data.
If a copy or drive with WAf s is successful
16 r to Data Control ¥brds (Drive with OCW's only) X4 Fl
29 Ie device action) or 24 (drive with DeW's) is provided
20 e device action) and 24 (drive with OCW's). A drive of
38 of infra job.
(4)
On DRIVE with OCW's, gives record
35 et rode and slave-issued drive) at the job holding the
34 master errl job may issue DRIVE, CLOSE, or REQUEST STATU
44 ued an operation: either DRIVE, on its own initiative,
28
communication files are DRIVE, PASS, CLOSE, REQUESTST
43 read communication file" drive, the special interrupt w
28
a drive-~ operation (DRIVE, TRUNCATE, S~, or S
56 ed a break drive.
(See DRIVE-master end, Section 5.2.
54 canmand (MJLE). (See DRIVE-slave erxl.)
13 R S
20 a slave em has issued a drive-~ canmand but the spe
27 Read canmunication file" drive: A drive of type 1 (and
44 als" (7).
(2)
"Break" drive: A drive of type 3 (and
14 nly exception is a break drive: in this case, if the r
31 nsferred.
6.2 Device Drives A number of device cp
11
6.2.1 Single Action Drives A single action drive
36 e drives •. Single action drives change the state of the
37 he state of the device. Drives with OC'W's transfer dat
[set m:de drive]
[read camm file drive]

Page 268

Pub. 1059

INDEX

page

74
181
14
127
126
148
60

line

37
35
28
29
17

247

23

56
38

20

149

37
15

107

15

55

39

114

24

79

11

29

31

38
92

11
48

85
85

13
17

14

42
29
14 41
127 36
148
247

23

192

32

192
74

11

175
175

24

177
196

11
II

185
20
117
69

45
37
14

48

49

116

40

69

18

138

141
141

41

146 .
146 27

144

Pub. 1059

word

[break drivel
[set m:de drive]
ver a me!ll::jry, fault tag, DRL, lockup, illegal prccedure
uing the canmand is Load-D..Imp
enabled;
(a) Appen
ot enabled with the Load-D..Imp
permission)
The forma
to usage and dates (Load-D..Imp enabled jobs only) or
z
(4) If a jcb is Load-D..Imp enabled, and if X5 is non
his MME if they are Load-Dlm!p enabled, and so rrost jobs
If the jcb is not Load-Dlm!p enabled, or if X5 is zero
ng a catalog)
4 Load~Dlm!p permission (allows preail
job is enabled with Load-Dlm!p permission and X7 is nonob enabled with the Load-Dlm!p permission will cause N w
MME is enabled with Load-D..Imp permission, and if XS is
cbs enabled for the I..oad-Dlm!p permission. Nonenabled jo
valid.
MME 500143: DUPLIC.~
XO File reference
On OPEN, ALTER ACCESSES, DUPLICATE, and REP'"...ACE,
give
MME 500017: ENABLE
A Desired setting fa
dces not fOssess the Leg enable bit may not issue this
e the description of the ENABLE ccmrnand for a list of t
ermissions by issuing an ENABLE canmand.
Run List (
f the entire system (see ENABLE MME). This feature is t
age and dates (Load-Dlm!p enabled jobs only) or
zero
on is highly privileged (enabled) it may use a ccrrmand
e canmand is Load-D..Imp
enabled,
(a) Append permi
ME if they are Load-Dlm!p enabled, and so Irost jobs may
5.6.3 PASS at a Slave End Suppose now that upon ex
UEST Sl'ATUS fran a Slave End
Ur:on receipt of the "pas
(1) At the l~st slave em accepting special interrup
cation file has a master end and one or more slave er~s
ster end.
5.1.1 Slave End copy Ccmrrands
A COPY co
tions.
5.1. 2 ~..aster End copy Conmands
As noted a
idle.
5.6. 7 Master End DRIVE
Job A new issues a
va- tion.
When a slave end has reserved the file, it
drive (see DRIVE-slave em in Section
5.2). The 10
the corresp:>nding slave em is traPt=ed. only if a
non
[slave end issued READ special]
terruptnumber 11 (slave em issued READ) at t.'e master
terrupt number 11 (slave end issued READ) or 12 (slave
ial]
[slave end issued. REQUEST STATUS spec
1]
[slave end issued RESEr STATUS sp:cia
errupt number oro (slave end issued RESEr STA'lUS) at th
]
[slave end issued SET POINTER special
terrupt number 15 (slave en:1 issued SET POINTER) at the
[slave end issued TRUNCATE special]

Page 269

SYSTEM PRCGRAMMING REFEREN:E MANUAL

word
167
144
167
69
171
69
].71
69
22
22
144
19

64
69
74
116
137
138
144
144
146
167
171
7S

26
30
19
42
25
12
29

3S
30
34

17
43

39
32

23
25
32
26
29

41
44

[slave end
terrupt number 14 (slave end
terrupt number 14 (slave end
[slave end
[slave end
ssued READ) or 12 (slave end
terrupt number 12 (slave end
s reserved it, the slave end
- notifies the master
end
- notifies the
master end
be issued on the master'end
VE command at the master end
ppeared.
If the master er:d
A COPY issued at a slave end
rive types at the master end
READ issued at the slave end
a job file or the slave end
ence number of the slave end
mand issued at the slave end
If the job at the master end
mana issued at the slave end
mand issued at the slave end
RITE issued at the slave end
y be issued on ~~e slave end
pectively, at the master end
s the duty of the ~aster end
T POINrER) at the master errl
(See TRUNCATE-slave end
be created and its slave end
ervation.
5.6.6 Slave End
[slave end
[master end
(1) If the master em
lave end.
5.5.1 Slave End
e again.
5.5.2 ~~ster End
is closed, or if a slave end
the correspor~ing slave em
h the master and a slave end

74 ,38
138 28
146 28
22 33
87 12
194 39
184
184
185 21
187 15
189 21
64 3S
172 21
141 37
179 11
REQJEST srAIDS (~~ster
179 35 2 REQUEST STA'IUS (Slave
181 27 b.
5.2.4 DRIVE (Slave
181
[truncate (slave
181
[scr a tch (slave
181
[set pointer (slave

Page 270

issued TRUNCATE special]
issued TRUNCATE) at the ma
issued TRUNCATE) at the rna
issued WRITE special]
issued WRITE special]
issued WRITE) at the rnaste
issued WRITE) at the maste
issuing the COpy canmand w
job that a read-type comma
job that a TRUNCATE or SCR
of a oommuni- cation file.
of a communication file ar
of a ccmmunication file is
of a ccmmunication file wi
of a ccmrnunication file ar
of a communication file wi
of a ccmmunication file, t
of a ccmmunication file, t
of a communication file wi
of a communication file is
of a communication file wi
of a communication file wi
of a communication file wi
of a terminal cornrnunicatio
of the communication file.
of the communication file
of the file. The second i
only, Section 5. 2. )
17
passed.
(4) If the ret
Reservation; Local Operati
reserve]
reserve]
resets status on the canrru
States First, the file a
States The situation is
to which the communication
will be trapped only if
will cause status to be re
A REQUEST STATUS can l:e
A REQUEST STATUS to t.;'e

End)
End)
End)
end)

Certain drive types may

J

em)]
end)]

Pub. 1059

INDEX

page

III
20

52
56
li6 41
171 43
69

167
21
87
il2
il2
175

\o,Ord

line

19
31
54

21
20
24
24

li7

246 39
121 29
126 20

file and pass its slave
(See DRIVE-master
i ve.
sued READ) .at the master
ued WRITE) at the master
ued WRITE ) at the master
TRUNCATE) at the master
DE) •
(See
DRIVE-slave
d.
Job files, master
nly.
Job files, master
h the exception qf slave
nd ar.d one or IlX)re slave
[master
ENTRIES
The number of
sed)
Lower: num1:er of
sed)
Lower: number of

59 11
500111: mANGE CATALCG
243 50
this table contains the
120 36 er is used to specify an
125 30 er is used to specify an
15 36 ult cell) is ~~e initial
81 11
MME 500112:
MME 500102: OLD
94 11
152 11
MME 500137: TALLY
230 40 rrnats:
(1) For TALLY
81 45 cesses except Write. An
94 25 rnand is e.."'ry, fault tag I DRL, lockup, illega
22 49 cial interrupt, or slave fault to be given to a job eac
13 21 tive call.
1.3 Slave Fault Vector
The first 40 (0
18 48 t takes place. No dirty fault vector al:orts
are gene
14 26 ro, ~~e jOb had a "dirty fault vector" and is aborted;
15 25 0 be al:orted for a dirty fault vector. The simulated f
15 35 ~ial uses in the slave fault vector. ~rd 0 (the fir
42 36
released, then a memory fault will cccur.
The arrount
36 18
(real-time timer runout fault) after a specified amoun
24 29 cial interrupt, or slave fault, it is unsqueezed. The
14 15 faults. To give a slave fault, the Executive stores th
25 53 MME instruction unless a fault, trap, or special interr
47 33 e specified IC/IR. If a fault, trap, or special interr
25 39 and will result in a NME fault.
(A job receives a MME

Page 272

Pub. 1059

INDEX

page

line

word

12 21
15 48
9 43
14 45
15 27
14 49
47 38
11 35
11 35
11 18
24 19
13 29
11 36
15 48
100 38
101 47
157 47
102 35
191 26

MME (master rrcde entry) fault. The address field of t
Parity Faults; Execute Faults
When a job generates
the following means:
faults indicating that the jo
serious error. Ccrnrnand faults are generated when a pr
timer runout nor execute faults are returned as slave £
ted in slave mode.
MME faults normally indicate Execu
Executive since all MME faults will be returned to the
ect faults, timer runout faults, and startup and shutdo
category are all connect faults, timar runout faults, a
<:de: I/O interrupts and faults. I/O interrupts cannot
her than simulated slave faults. The job will thus pro
thers are used for slave faults. The position of the i
and startup and shutdown faults. These events are not
use it.
1.3.5 Parity Faults; Execute Faults wl1en
catalcg to op:n. If the fetch bit (bit 4) of X4 is 1,
or the presence
of the fetch bit (bit 4). lithe fet
or
the presence of the fetch bit (bit 4). If the fet
-1) st
catalcg, ar.d the fetch bi t is on in the access
Creating a Ccmmunication File
Suppose that job A has
87 11
I, then a ccmmunication file will be created and its
176 21
in the copy is a device file (see
Chapter 6), then t
21 11 on 5.2.)
4 PF Passed File - notifies the job that a
21 21 ssed.
5 RF Returned file - notifies the job that a
20 41 RCF Read ccmmunication file - used to notify a
slav
177 33
copies between a device file and ccmmunication file sh
III 52 r create a communication file and pass its slave end, d
19 30 r eoo of a camnunication file are eounced. The rnethoo
182 50 rns on the communication file bit (bit 1) in ~~e access
87
[ccmmunication file bit]
III
[communication file bit]
186 32 irre. The "canrrunication file busyJ' status (6) is a spe
187 26 ear busy ("cannunication file busy") to all other slave
188 18
busy (ncamuni- cations file busy") to this end. Only
88 50 LCSE.) Aterrninated jcb file can always 1:e reccgnized
18 26
end of a carmmications file can l:e "bounced" to a
h
21 28
6 FCI.D File closed - notifies t.'e job
was passed.
197 20 s closely followed by a "file closed" special as its fi
64 36 ial interrupt of type 6 (file closed) is generated at a
157 15 is zero, then the Master File Directory (MFD) is search
237 . 29
a tree, with the Master File Directory (MFD) as the ro
101 20 is zero 1 ~~en the ~..aster File Directory is searched. A
199 40 sul:catalcg of the master file directory. A slave job 0
233
[MFD = ~..aster File Directory]
74
[read camm file drive]

Pub. 1059

Page 273

I.

SYS'IEM PRCGRAMMING REE:.ERENCE MANUAL

~

word

line

141 36
144 28

117 20
70 44
20 24
138 24
172 50
136 54
137 32

file for which an operation is
file is busy, ei ther because a
file is closed, or if a slave
file is closed, then that job
file is created for the new jo
file mode) and 12 (single devi
file or a job file. In genera
file or on a device file. Dri
file should be swapped out of
file special interrupt specify
file special]
file special]
file special]
file type called a "ncn-file"
[file type]
e end of a communication file will generate a special i
e end of a ccmmunication file will generate a s.pecial i
e end of a communication file will generate a special i
e end of a communication file will generate a special i
e end of a communication file will generate a special i
file type called a "ncn-file" (13), and the jobs holdi
es a "read canmunication file" drive, the special inter
(1)
"Read camnunication file" drive: A drive of type
a slave 'erx:1 in a "passed file" special interrupt (see t
notified by a "returned file" special interrupt (if it
se it is 7) in a "passed file special interrupt. The f
n receipt of the "passed file" special interrupt, suppa
b D receives a "returned file" special interrupt due to
escriptors.
TYPE The file's type. DescriCed below
terrupt number 4 (passed file) if that job is accepting
terrupt type 5 (returned file) is generated for each re
rrupt number 5 (returned file). If it is a scratch fil
ype 6 (special catalcged file). They are asscciated wi
rrupt ntnnber 5 (returned file). The job issuing the cr.o
s arnaster communication file,
the corresponding slav
d of a communication file, and Xl is r~nzero.
The
tus are reset on the job file, or when the job terminat
munication or a
shared file, that file is reserved fa
rce) file must be a core file, the issuing job's core,
CSE
on a ccmnunication file, the lo~r half of the DA
e end of a oammunication file, then a special interrupt
ination file is a device file, ~~en ~~e lower half of s
pended or terminated job file, then the status informat
e end of a communication file, then the status inforrnat

Page 274

Pub. 1059

64
64

34
45

84
74
200
74

40
36
24
27

200

32

192 42
48
64
74
184 14
199

69

17

116

39

146 27
167 30
171 41
184 15
195 43
180 27
182
183

191
192
197
246
III
4'8
64
199
64

56
49
51

14
19
33
31
21
27
25
52

117 13
69 44
66

49

ssued on a'communication
). If the canrnunication
r end of a communication
US.
If a suspended job
or, which is on.
A job
are 0 (set communication
the other must be a core
only on a communication
file via acammunication
job C receives a passed
[returned
[returned
[read comm
are changed to a special

l1

INDEX

page line
, 180
184
112
74
200
172
172
75
143

~rd

47 a terminal communication
16 on-files are notified by
12 sed with a camnmication
28 tion file or on a device
24
be a core file or a job
20 f a master canmunication
27 ication file or shared
44 a terminal ccnmJnication
20
the nS"1I1y created job
88 25
when creating scratch
94 27 hich means that only one
97 29 hieb means that only one
100 31 Ie (denoted by a list of

44
232
152 44
156 52
148 43
162 49
185 32
178 21

file, to
indicate the receip
fi1e-closed special interrupts
file.
If XO is zero, then th
file. Drives on communication
file. In general a slave job
file. In that case, t..~e cor
file. In that case, the canmu
file. The drive type (contain
file. This remains open with
file/catalogs (see OPEN SCRATC
filenarre can be sp:cified - a
filename can be specified - a
filenames which form a "treena
[filename]
[filename]
(filename]
[filename]
LD READ CATALOG AND OPEN FILES xO File reference num
READ CATALCG AND OPEN FILES
XO File reference ntnn
[migrated files : offline files]
he READ CATALCG AND· OPEN FILES ccrnnand ccmbines tile fun
he READ CAT,.2U.CG AND OPEN FILES canmand wit-I-} t1-fO excepti
a READ CA'!'AI.CG.~..ND OPEN FILES ccmnand.
Status Return
he READ C'.ATALCG AND OPEN FnES ccrnnand.
wl1e.1"l a job is
r terminal ccmrnunication files in particular, it is use
files are communication files is not allowed. If the
Information for migrated files is provided only if the
I
see Chapter 6, "'Cevice Files".
Except as noted atov
er ends of communication files, and file/catalogs which
job is rest.nned.
Job files, master eros of ccmnunic
cation files only.
Job files, master ends of carnnunic
ved as special cataloged files, since their M.' s point
d drive types for device files: 12 (single device actio
migrated files : offline files]
[
destroying ccmmunication files]
[
destroying cammunication files]
(
[job file]
n]
[special first name: special conventio
ename contains a special first name.
For more informa
ename contains a sp:cial first name. For more informat
ename contains a special first nazre. The I"I.aIDe and pass
ename contains a special first name. The l"'..an:.e a.rrl pass
setting the appropriate flag bit in an index register.
setting ~,e appropriate flag bit in X4 (see COPY MME) .

Pub. 1059

Page 275

59

121
126
231

96 11
124 11
124
124 33
96 32
114 37
38 50
181 40
70 42
124 47
77 41
112 20
87
112

21

20
251 16
76 19
124
196
197

page

line

184 54

~rd

196

26

14
14
60

37
38
19

55

45

setting the appropriate flag bit when issuing those co
mber of device file X4 Flag bits X6 Trap location
ve with DOW's only) X4 Flag bits X6 Trap location
memory location M2 X4 Flag bits X6 Trap location
ber of file/catalog X4 Flag bits X6 Trap location
e (may not be zero) X4 Flag bits X6 Trap location
eserve bit is set in the flag bits in X4 ('200000' for
he master er:d job.
The flag bits in X4 are divided in
i th a status of 7.
The flag bits in X4 have the foll0
ith a status of 7.
The flag bits in X4 have the foll0
ed for that end) .
The flag bits in X4 have the folIo
The flag bits in X4 have the folIo
h a status of 7.
by setting B$NTPD in the flag bits, the first five word
by setting B$NTPS in the flag bits. The first ten ~rd
g will be trapped with a format error if the treename c
e will be trapped with a format error if the treename c
n will be trapped with a format error if the treenaIIE c
e will be trapped wi th a format error if the treename c
ran t..~e operation is 12 (format error), then status war
[format error]
t card.)
Magnetic Tape Handler
Note that it is the
special handling routine.
1.4.5 Sa
the end of its
errupt timeout status.
High-Speed Printer
The user
ferred. Note that since holes can occur in catalogs an
ferred. Note that since holes can occur in catalogs, a
"Holes" are created whenever ob
unused)
entries (descriptors and holes) in the catalog. Jobs wh
er of entries, including holes, in
catalog
6 Zero
er of entries, including holes, in
catalog
6 Zero
section, called Physical I/O (PIO) will attempt to tran
ery is enabled, Physical I/O will attempt starrlard erro
(q. v. ) •
IDM:r: Unique Identifier. This field can be
munication' file are both idle (from the master's point
amunication file is new idle again.
SupJ;.Ose job C sh
(20). Both eoos l:ecane idle, as does the ccmmunicatio
th, the slave errl may t:e idle, but the file may Ce rese
though the master errl· is idle, no operation except cr..cs
terrupt. The file is now idle.
5.6.2 REQW~ STATU
d may both t:e canpletely idle. In this state, any valid
file busy" (6).
5.6.8 Illegal Actions
SuppJse job
fault tag, DRL, lockup, illegal procedure (IPR) , incnn
illegal prccedure (IPR), incanplete cp (ONe), overflow/
contain the new usage information for the file. The
mation or is zero. Type information has the following

Page 276

Pub. 1059

68

24

74 18
116 .18
141 16
171
228
69

18

25
53

75 26
116 53
141 49
172 11
193 54
193 37
148 42
152 43
156

51

162 48
235 41
232
224

18

222
120

125
243
246

24
53

37
39
32

34
39

121 .29
126
200
225

137

20
44
22

53

190

11

193
188

46

188

15
55
52

190

49

191
187 18

~

line

149 19

word

185 53

lowar half contains type information or is zero. The s
ts to two words of usage information to be placed in th
rrupts by the use of the inhibi t bi t. This hardware fe
address field of the MME instruction does not specify a
nted to by Xl, and a RET instruction is executed throug
faults by issuing a RET instruction to the appropriate
e should end with an RET instruction whose address fiel
ezed mcde, since the RET instruction will not It resqueez
MME (master m::de entry) . instruction with an address fi
ortuni~ after a special interrupt is generated (caused
ssues a DRIVE, a special interrupt is generated at a sl
XO, generating a special interrupt nurni:er 4 (passed fil
fault, trap, or special interrupt cccurs while the job
on S.2.
1.4.7 Special Interrupt Pair Format The bq
However, once a special interrupt pair has been saved,
interrupt data (special interrupt pair)
are stored i
pt data entries (special interrupt pairs) which will fi
ter to the job's special interrupt stack. The tally we
re stored in the special interrupt stack. The address
upts only if its special interrupt tally word (T~rd one
valid, nonzero, special interrupt tally word - see Se
11) is the job's special interrupt tally word. The conn
mpts to give the special interrupt to the lowest slave
fault, trap, or special interrupt was generated as the
encountering any special interrupt which occurred at ~~
e connect fault (special interrupt) if any, and then an
has received the special interrupt, it must eventually
til N traps, one special interrupt, or one real-tii1E ti
e than one trap, special interrupt, or slave fault to b
receives a trap, special interrupt, or slave fault, it
a "passed file" sp=cial interrupt. The file is new idl
1.4.8 Types of Special Interrupts
Type Mnemonic
issued.
1.4.2 Special Interrupts A special interru
rs.· 1.2.2 Transparent Interrupts
Certain types of
1.4.5 Saved Special Interrupts
If the job's spec
1.4.6 . Bouncing Special Interrupts Only special inte
ions have
completed
interrupts usually indicating
end be accepting special interrupts (have a valid, nonz
he corresponding sp=cial interrupts (set mode and slave
leaving slave m::ee: I/O interrupts ar.d faults. I/O in
interrupt cell. Special interrupts are described in de
rupts
Certain types of interrupts are normally transp
nd will generate special interrupts at the master end j
The routing of special interrupts is also affected by

Pub. 1059

Page 277

S5

41

11 46
13 12
47 33
22

S4

17 13
24

35
2S 36
18 19
180 19
III 31
47 34
19 3S
19
18

19
41

17 56
17 46
18 42
17 35
177 18
15

38

196
25
17
24
177
43

16·
53
24
18
50

22

18
48

24

29

191

51

20 30
17 29
11

27

19
19
9
177
. 181

11
26
49
18
34

11
15
11
181

18
40
30

52

SYS'IEM PROORAMMING REEERENCE MANUAL

~

line

word

42
30

using traps and special interrupts.
1.4.1 Traps A
[bounced special interrupt]
[saved special interrupt]
ckup, illegal procedure (IPR) , incanp1ete op (ONe) ,ove
ure use.
12 D Slave issued drive - notifies the ~a
[slave-issued drive special]
upts (set node and slave-issued drive) at the job ho1di
e end.)
13 R Slave issued read - notifies the mas
[slave end issued READ special]
[slave issued READ special]
errupt indicating "slave issued READ" (a job requested
Job A receives a n slave-issued read" special interrupt
s notified with a "slave-issued read" special interrupt
upt number 11 (slave em issued READ) at the rnaster end
special interrupt (slave-issued read) is generated at j
upt number 11 (slave errl issued READ) or 12 (slave em
n 5.1.)
15 RS Slave issued request status - notifi
[slave end issued RECOEST STA'IDS special]
upt number 13 (slave errl issued RECOEsr STATUS) is gene
job issues it, a "slave issued request status" special
n 5.2.)
2 SRS Slave issued reset - notifies the rna
job has received a slave-issued reset special interrupt
(slave issued reset special]
[slave end issued RESET STATUS special]
pt numf:::er two (slave end issued RESET ST..~JS) at the rna
pecial interrupt ("slave issued reset") that its COPY i
17 SP Slave issued set pointer - notifies
n 5.2.)
[slave end issued SET POINTER special]
a SET POINTER, a "slave-issued set pointer" special is
upt number 15 (slave erx:1 issued SET POINTER) a t t.~e mas
[slave end issued TRUNCATE special]
[slave a~d issued TRUNCATE special]
the slave eoo, a "slave-issued truncate" special is ge
e end generates a "slave-issued truncate" special speci
upt number 14 (slave end issued TRUNCATE) at the master
upt number 14 (slave end issued TRU~TE) at t.~e master
on 5.1.)
14 W Slave issued write - notifies the ma
[slave end issued WRITE special]
[slave errl issued WRITE special]
in rest;:cnse to a "slave issued WRITE" special, it shru
t~nty words.
A "slave-issued write" special interrup
d READ) or 12 (slave em issued WRITE) at the master en
upt number 12 (slave em issued WRITE) at the master en
t (in 1/64 milliCRrJ) Q Job access mask
The source f

Page 278

Pub.1059

16 15
18
18

14 38
21
181
181
22
69
177
177
193
194

50
35
11

25
52
21

116

40

192
69
22
138
138
179
20
190
188
141
141
188
22
146
181
146
144
167
181
182
144
167
22
69
171
177
193
69
171
84

18
18
23
25
40
48
53
41
53
35
55
28

54
11
26
31
17
28
33
19

~

line

87

38

106

49
11

88
44
68

88
64
84

50
45
40

66

49

136
200
143

54
24
20

87
112

21

44
253
14
40
84
85
38
70
9
14

38
85

20

II
28
11

18
11
19
44
33
29
30
15

86

22

84
85
127
126
148
60

35
42
35
28
29
17

247

23

56
38
107

20
37
15

149

15

55
114
189

39
24

187

32

49

195

33

194

39

. Pub.1059

~rd

d when, it is passed.
Job Access Mask (Q register)
ted by bits 29-35 in its job access mask (set by the su
ng job is ANDed wi til the job access mask specified in t
[job OJre]
[job core]
ee CLCSE.) A terminated jcb file can always be reccgni
STATUS.
If a suspended jcb file is closed, then that
icator', which is on.
A job file is created for the ne
status are reset on the jcb file, or when the job term
suspended or. terminated job file, then the status info
must bea core file or a job file. In general a slave
d to the newly
created job file. This remains open w
the job is resumed.
Job files, master eros of canm
rnunication files only.
Job files, master eros of ccmm
[job file]
eady cataloged). 9.5.2 Job quotas
To prevent jobs f
fault vector. The supra jcb then has the option of con
MME 500012: JCB TIME
No arguments
The
pend to scurce file X3 Job type (bits 0-8) X4 ~..axilll
of X3 are ANDed wi th the job type bi ts allowed to the j
r reset (bi ts 0-8)
The job type of a running job cons
a core file, the issuing job I score, .or a ccmmunica- ti
Executive to susp:nd the job. Executive entries that a
nating the al:orted slave job. This feature is intended
sidence permission
2 Large State Vector permission
which it is enabled are Large State Vector, Priority S
The remainder of the run list contains a list of file/c
i th the files in the run list open for it. The new job
I
The run list pointed to by XS must l:e
b issuing the oammand is Load-Dump
enabled,
(a)
is not enabled with the Load-Dump permission)
The
nter to usage and dates (Load-Dump enabled jobs only) 0
red.
(4) If a jcb is Load-Dump enabled, and if X5 i
sue this MME if they are !.cad-Dump enabled, and so IIX)st
bute. If the jcb is not Load-Dump enabled, or if XS is
reating a catalcg)
4 Load-Dump p:rmission (allows p
y a job enabled with the Load-Dump permission will caus
the job is enabled with Load-Dump permission and X7 is
ALCG MME is enabled with Load-Dump permission, and if X
by jobs enabled for the Load-Dump permission. l'1cnenabl
he master en:1. The only local operation which can Ce i
EI' STATUS functions as a local operation, with the addi
is legal, since it is a lccal operation. Any ncnlccal
Slave End Reservation; Local Operations
Now cons ide

Page 279

~

line

~rd

184 49 OITIItllnication file. Only local operations (see Section
185 46
other slave ends. Only local operations can be issued
186 48 of its ends being busy. Lccal operations may l:e issued
189 11 d. No operations except local operations or CLOSE can
227 55 p each other. A job may lock. the file specifying that
142 27 a an idle, unreserved (unlocked) state at the issuing e
70
(locked]
117
(locked]
[locked]
172
11 54 d code 'for teo long,
a lockup fault is generated. Th
memory, fault tag, DRL, lockup, illegal prccedure (IPR
14 37
92 11
MME 500142: LOG XO Reserved for future
38 44 b to abort system)
7 Leg (allows job to do MME LOG)
92 48 ich does' not possess the Leg enable bit may not issue t
85 16 y Scheduling, Crash, and Leg. The spawned job must ena
41 11
MME 500013: LONG PAUSE
XS Number of tra
224 24 nd for the last card.)
Magnetic Tape Handler
Note t
201 43 estion is powered off.
MAJOR STATUS (Bits 2-5) - This
210 19 or DRIVE canrnands.
The Major Status, which is four bi
76 45 t (normally on) •
1-5 Maj~ status.
30-35 Record
84 30 rniliiCRU) Q Job cccess mask
The source file, which
152 23 on, (bits 9-17) trap bit mask XS Pointer to two TNOrds
162 23 on, (bits 9-17) trap bit mask X5 Pointer to tw.o words
81 23 a
(bi ts 9-17) trap bit mask X5 Reserved for future
131 22 ro; (bits 9-17) trap bit mask XS Reserved for future
124 22 PEN (bits 0-8) i Trap bit mask (bits 9-17) XS Points t
87 38 s passed.
Job Access Mask (Q register)
106 49
29-35 in its job access mask (set by ~~e supr a job on
156 22 es on the file, trap bit mask and escape
special conv
148 38 E 500136). The trap bi t mask for the search is in bi ts
101 11
1imi ted by the trap bit mask in bits 9-17 of X4. In t
230 43 ts 9-17 are the trap bit mask to 00 used during
the 0
22 11 sued read - notifies the master
end job that a read-t
141 37
outstaming at l:oth the master and a slave end will ca
175 23 cammunication file has a master end and one or more sla
177 II e operations.
5.1.2 Master End COPY Commands
As
196 11 ecanes idle.
5.6. 7 Master End DRIVE
Job A now i
22 29 runca te - notifies the
master em job ~~at a TRIJNCATE
19 30 y a DRIVE camrnand at the master end of a ccmmunication
64 34 ch disappeared.
If the master errl of a ccmrnunication
74 43 Valid drive types at the master end of a communication
144 32
of 6. If t.~e job at the master errl of a camnunication
144 35
cannot be issued on ~~e master end of a comrnuni- catio
74 38 12, respectively, at the master end of the cornmunicatio

Page 280

Pub. 1059

INDEX

~

line

~rd

138 28 d, it is the duty of the master er.d of the ccmmunicatio
146 28 sued SET POINTER) at the master em of the file. The s
184
(master end reserve]
185 21 however:
(1) If the master errl resets status on th
189 21
is idle again.
5.5.2 Master End States
The situat
179 11
5. 2.1 . RECUEST STA'IDS (Master End)
A REQUEST STMUS
20 56 reak drive.
(See DRIVE-master end, Section 5.2.)
4
69 19 end issued WRITE) at the master em. The secorrl word a
116 41
end issued READ) at the master er.d. The secor:d interr
167 31
issued TF.IJNCATE) at the master em. The secor.d word a
171 43 end issued WRITE) at the master end. The second interr
87 21 . resumed.
Job files, master ends of camrunication f
112 20 files only.
Job files, master ends of cacmmication f
[master end]
117
101 20
if XO is zero, then the Master File Directory Ois searc
157 15
if XO is zero, then the Master File Directory (MFD) is
199 40 direct sul:catalcg of the master file directory. A slav
233
[MFD = Master File Directory]
237 29 rawn as a tree I with the Master File Directory (MFD) as
14 45 rated when a privileged (master rrcde) instruction is ex
127 20
If the file/catalog is master or slave trapped, then
157 33 or those returned by the master trap
prcgram if the c
88 21 -28 Permission bits for master trap program (see
CAT
100 55 a note that whenever the master trap prcgr am is run dur
101
[master tr ap prcgr am]
102
[master trap prC?9'ram]
132
[master trap program]
[master trap prcgram]
158
163
[master trap prcgram]
102 27 ed by a successfully run master trap, then all
reques
121 17
~rd Function
0 MAX
1 AI.J:J::. (amcunt of stor
125 52
Wbrd Function
0 MAX
1 ALOe (amount of star
247 48
7 LEN or MAX
245 34
MAX
The maxiIrum length which
62 11
500124: CHANGE CATALOG MAX
XO File reference numbe
108 36 is specifying a negative MAX for a
scratch catalog; a
131 44 e..~ceeded even thcugh the MAX may still be exceeded afte
137 47
1 Length of file or MAX· of catalog
2 Read/writ
126 51
7 Length of file or MAX of catalcg
8 Upper: s
121 56
7 Length of file or MAX of catalcg See Chapter 9 f
III 35 he length of the file or MAX of the catalcg in the seco
132 51 he length of the file or MAX of the catalcg.
Status
53 37 tains the current 1ength/MAX of the file/ catalog. Not
158 12 asked off if the catalcg MAX of the next-to-last entry

Pub. 1059

Page 281

SYSTEM PRCGRAMMING REE'ERENCE MANUAL

~

103
158
163
106
62
251
103
127

42
42
10
21

84

line

word

27
32
15
20
32
49
17
44
36
11
32
45
52
37
14
40
32

MAX of the opened catalog in s
MAX of the opened catalog in s
MAX of the scratch catalog is
MAX or preallocation length N
MAX's are described in Chapter
MAX)
If the descriptor is fa
MAX. Finally I bi t 0 of the ac
MAX;
(6) Any remaining bi
memory faul t will cccur.
The

f the opened file or the
f the opened file or the
h of the scratch file or
rap location A Catalog
rrent ALOe.
ALOe's and
f the mnth LENGrH (or
ds twice its permissible
twice its
permissible
rrory is released, then a
MME 500006:
ly when the job issues a
eek is released with
a
spawned job can issue a
lave Faults Whenever a
cataloged files.
4-N
a nonzero ~rd, then the
by the PASS canrnand, nq

MEMJRYREQUEST
X5 Upper rnem
MEMJRY REQUEST call (on a MME
MEMJRY REQUEST canrnand before
MEMJRY REQUEST to change the s

14
21
36
21
13
39
49
38
II
45
46
42
42
21
23
16
50

mem::>ry, faul t tag, DRL, lockup
Message specified by PASS canm
message specified can be read
messages accanpany files passe
[MFD = Master File Directory]
W() special catalogs, the MFD and SMaJRC..1\T, are allocate
cg is to be founJ in the MFD catalog
specified by X3.
ags. At present, the MFD is the only specially-cata
]
[migrated files = offline files
g read. Information for migrated files is provided onl
is given in ectal. The Minor Status (Substatus) is si
r transferred).
6-11 Minor status.
12-17 Queue
[substatus = minor status]
[minor status]
y similar to the EXECUTE MME (500117) and differs only
xecutive by generating a MME (master mode entry) fault.
e carnnaoo by executing a MME (master m:de entry) instru
in the lower half. See MME CATALCG or Chapter 9 for m
e, or out of l:oun:::1s, the MME fault is returned to the s
command will result in a MME fault. (A job receives a
xecuted in slave mode.
MME faults normally indicate E
the Executive since all MME faults will be returned to
the address field of the MME instruction does not speci
d immediately by a PAUSE MME with a pause count of one.
d 200 series, or pausing MME's. The contents of the sl
output m:des (see DRIVE MME). The e.~act interpretatio
ntire system (see ENABLE MME). This feature is to allow
to by X5 of the CATAl:£G MME.
U'p:>n canple tion of t.l1e
ses via ~,e ALTER ACCESS MME. The previous MAX for t.l1e
1.1 Running in Slave Mode
A job actually rlli~ing
g the MME is in squeezed nx:x1e (entered by the Executive

Page 282

Pub. 1059

14
138
III
87
233

242

34

233
251
124
124
210
76
202
202
143
12
25
149
13
25
14
47
13
25
25
181
14
60
62
10
14

12
11
47
20
50

~

line

24
20

28
35

9

23

word

193

40

178
176
178
184

11
47
36
15

12

28

job running in squeezed roc:de (see SQUEEZE, MME 500007
onie Use
a S'IM Set rnode - used to notify the mast
of a processor in slave ncde and may perform any legal
special interrupts (set rrcde and slave-issued drive) a
ob. In particular, a set mode drive (type 0) or a devie
[set mode drive = set mode special]
(set mode drive]
(set mode drive]
ng a file open in shared rrcde may specify only the job I
(set mode drive = set mode special]
[set mode special]
a file opened in shared mode will cause the file to re
(set communication file mode) and 12 (single device ac
hen a privileged (master nx:de) instruction is executed
Ie is opened in
shared rnode, do not allow any ccpy-ty
If a jcb is in squeezedrrcde, or if the address field
ion is executed in slave ·m:de.
~ faults nomally in
op:n the file in shared m:Xie. If the file is not aIre
[shared mode]
wer: ceded date of last rnodification
7 Length of f
[DUM = date of last modification]
set the file's Date Last Modified attribute. If the jo
last used and date last modified in the catalog entry
and the ceded date last rnodified in the lO\t4er.
half and ceded Date Last Mcdified in the lower half. S
ntains a coded date last modified. Informa- tion for f
Bit Function
0 M:Jnitor permission (affects sc
his re5pJnsibili ty _
MPC
The Reset operation on a
MP) Reset MPC. Puts the MPC into an idle state. This
d Peripheral Controller (MPC) _. The general meanings of
atalog in the catalog
"MOD" in the catalog specified
[special first name = special convention]
contains a special first name.
For more information 0
contains a special first name. For more information on
contains a special first name. The name am password 0
contains a special first name. The name and password 0
5.6.4 copy Ccrnmand with No-Trap Option
Job 0 now iss
ted" (2). Note that the no-trap option had no effect,
ob (job A) specified the no-trap option.
Sllpp:)se job
is issued.
5.1.3 The ItNo-Trap" Q?tion
When the mas
r em jcb exercises the "no-trap" option - see below) .
see Section 5 _6 •
5.2 Non-CDPY Ccrnmands
Ccrnm.lnicat
cial file type called a "non-fileR (13), and the jobs h
alls are of three types: nontrapping, trapping, am tra

Pub. 1059

Page 283

181 34
181 32
74
74
181
228 33
74
181
142 26
74 36
14 45
70 26
13 11
14 46
158 21
227
126

49

121
56
125
96
149

22
41
21

96

34

38

26
11

225
205
201
233
232

20

21
46
21

152

44

156

52

148

43

162

49

193
194

12

29

SYSID! PRCGRAMMING REFERENCE MANUAL

~

233
243
120
125
232
58
56

251
124
94
96
97
14
100
156

152.
148
96
124
124
96
38

114
199
106
88

29
178
229
81
153
227
162
230
53
227
189
187
195
194
184
185
186
189

~rd

line
19
50

36
30

), and is
a legal user
table contains the entry
used to specify an entry
used to specify an entry

ntnnl:er format the scanner will
number of each file in its cat
number. t1p:)n canpletion of th
number. Upon canpletion of th
[octal]

27 cifying a file
~ of off-line but the file has devi
12 ble file type, which is "off-line" (14 octal). Files t
(off-line]
(migrated files = offline files]
MME 500102: ' OLD ERASE
XO File reference
11 n.
11
MME 500125: OLD READ CAT..1ll.CG AND OPEN FILE
11
MME 500130: OLD REPLACE XO File referen
38 re (IPR) , incanplete op (CNC), overflow/truncate, or di
II
MME 500101: OPEN
XO File reference numb
II
MME 500136: TALLY OPEN
XO File reference numb
36
permissions using TALLY OPEN (MME 500136). I f the ope
38 file is made using TALLY OPEN (MME 500136). The trap b
11 5: OLD READ CATALCG AND OPEN FILES
XO File referenc
11 00127: READ CATALCG AND OPEN FILES
XO File referenc
33 s
The READ CATALCG AND OPEN FILES camnand canbines th
32 ike the READ CA.TALCG AND OPEN FILES camnand wi t.'1 two ex
50
in the READ CA.TALCG AND OPEN FILES camnand.
wl1en a j
37 suing a READ CATALCG AJ.'1D OPEN FILES camnand.
Status R
42 in the catalcg tree (see OPEN MME). This file referenc
11
MME 500100: OPEN SCRA'IOl
X4. File/catalo
2S tch
file/catalcgs (see OPEN SCPArol)
The job file f
31
the camnand.
(2) On OPEN, ALTER ACCESSES, DUPLIC.~T
44 talcg structure, such as OPEN, ERASE, CATALCG, or REPLA
22 ingn catalcg operations (OPEN, ERASE, REPIACE) provide
49 the sequence of camnands· OPEN~ UNCATALCG, and CLCSE.
13 quence of camnands TALLY OPEN, UNCATALCG, and CLOSE.
37 n shared rocde, see T.:~.LLY OPEN.
A file which is to be
40 file/catalcg using TALLY OPEN. I f Read, Write, and App
46 ation.
(2)
For TALLY OPEN:
Bits 0-3, 5-8 are the
24 im: the file/catalcg was op€ned, and if they do not con
[TALLY OPEN]
49 ter en:1. The only 1ccal op:rationwhich can be issued
33 TOE functions as a local operation, with the additional
33 gal, since it is a lccal operation. &"1Y ncnlocal operat
39 e End Reservation; Local Operations ~~ consider what
49 cation file. Only local operations (see Section 5.5) c
46
slave ends. Only lccal operations can be issued at th
48
ends eeing busy. Local operations may be issued even
11
operations except local operations or CLOSE can be iss

Page 284

Pub. 1059

INDEX

~

193
178
176
194
193
14
109
19
19
18
17
15
15
21
III

182
192
138
182
19.1
87
182
195
183
192
187
21
197
112
21
192
182
191
192
III
86
41
43
18
12
25
41
12
25

line

~rd

29 OFY Cormand with No-Trap Option
Job D now issues a CO
11
5.1.3 The "No-Trap" Cption
When the master end j
47
exercises the "no-trap" option - see below). This rre
12 • Note that the no-trap option had no effect, since th
40 A) specified the no-trap option.
Suppose job A new is
38 R), incanplete op (ONe), overflow/truncate, or divide c
II r.
MME 500106: OVERIAY
XO File reference n
35 1.4. 7 Special Interrupt Pair Format
The two data ~r
19 once a special interrupt pair has been saved, the speci
41
data (special interrupt pair)
are stored in the spec
56 tries (special interrupt pairs) which will fit in the s
43 il in Section 1.4.
The parity fault cell is not curre
48 shes to use it.
1.3.5 Parity Faults; Execute Faults
12 een passed to it via the PASS
caranand. This special
II
MME 500122: PASS
XO File reference. numb
22 cial interrupt.
5.2.6 PASS and CLOSE
These ccrnmand
32 were available.
5.6.3 PASS at a Slave End
Suppose
14 -L'1 Message sp:cified by PASS camand
The rressage sta
46 created by a create-type pA....~ caranand (or by the implic
45
C
Job A now issues a PASS caranand to job B, specify
32 d to files passed by the PASS' camand, no messages acco
55 d. The job to which the PASS is issued receives the fi
33 west)
Job D's implicit PASS is legal, since it is a 1
36 set, it may not CLCSE or PASS it again until the netHly
37
It therefore issues a PASS to job C, specifying file
39 ations are RESET STATUS, PASS, and, if the end was pass
16 ile special is due to a "passback It
fran an i.nmedia te
45 b ' s inmediate supra job (PASSBACK). There is no op€rat
[passbackJ
11 ,Section 5.2.)
4 PF Passed File - notifies the job
42 id, and jcb C receives a passed file special interrupt
56 ter of a slave em in a "passed file" special interrupt
51
(sug:;;ose it is 7) in a "passed file" special interrupt
14 d
UFon receipt of the "passed file fl special interrupt
31 cial interrupt number 4 (passed file) if that job is ac
[pass]
11
MME 500013: LONG PAUSE
XS Number of traps
11
MME 500005: PAUSE
X5 Nt.nnber of traps
30 e the description of the PAUSE call in Chapter 3). (3)
47 calls with the autana.tic pause feature share features 0
45 allowed immediately by a PAUSE MMEwith a pause count 0
17 s identical in effect to PAUSE. r.GK; PAUSE shculd be u
29
trapping with autanatic pause. The action request...od b
46 re called 200 ser ies, or paus ing MME' s. The c:>ntents 0

Pub. 1059

Page 285

~

!IJr-r:P r~~~
. r

~ ~~'.

5~

~':.

;~:~t

line

~rd

12 54
199 39
199 22
38 28
38 26
38 33
38 37
38 30
108 43
149 15
180 55
107 15
126 29
114 24
183 18
74
191
200 44
225 22
146 11
181 48
181
22 35
22 36
68 56
146
181 56
146 28
188 28
175 29
241 37
106 20
249 11
245 24
247 44
137 43
121 51
126 17
126 46
106 33
86 55
179 30
179 18
246 26

even after the autanaticpausing type of Executive call
files are cataloged in : PERCAT , a direct sul:cata1og of
e job wishes to access a peripheral it makes use of a d
ly)
1 Core Residence permission
2 Large State V
Function
0 M:>ni tor permission (affects scheduling
s)
3 Special catalog permission (allows a job to
catalog)
4 Load-Dump permission (al1owspreal1ocati
2 Large State Vector permission (permits a state
th
the Special Catalog permission and is specifying m
s enabled with Load-Dump permission and X7 is non-zero,
ch has eXecute ("break'1) permission on its end of the
abled with the Load-Dump permission will cause N words
led with the Load-Dump
permission)
The format of th
nab1ed for the Load-D.nnp permission. Nonenab1ed jobs wh
nclude "breakJt (eXecute) permission; if they do not, ho
[break permdssion]
[break permdssion]
d. This section, called Physical I/O (PIO) will attemp
ror recovery is enabled, Physical I/O will attempt stan
MME 500113: SET POINTER
XO File reference n
UNCATE, SCRMQI, and SEI' POINTER (Slave End Only)
The
[set pointer (slave end)]
17 SP Slave issued set pointer - notifies the
maste
master eoo jcb of a SEI' POINTER canmand
issued at a
ation) file ' s read/write pointer is used. This option
[slave en:] issued SEI' FOINrER special]
TER, a "slave-issued set pointer" special is given to t
15 (slave end issued SET POINrER) at the master em of
RUNCATE, SCRMQI, or SEr POINrER) has teen issued at th
TE (or SCRA'n:H), and SE1' POINrER.
This chapter descri
d files, roves them into preallocated scratch files, an
ation A Catalog MAX or preallocation length N (Loadhanging their MAX's. .
PREP
An object's preference
4 ACe PREP TYPE PREP: bits 29-31 i
DAYS-USED PREF TYPE PREF: bits 29-31 i
djustment
bits 29-31: preference (see Chapter 9 for
ays-used munt
I:..oNer: preference and type of fi1e/ca
atalog is open
I:..oNer: preference ar:d type of catalcg
ays-used count
Lower: preference and type of file/ca
h/eXecute, and ONner) •
Preference is an integer betwe
11
be created with the preference specified in bits 9
nd. In either case, the preference, length, and pointe
he other fields (access, preference, length, pointer) a
PREF
The catalcg r s preference. See t..~e discussio

Page 286

Pub. 1059

~

~rd

line

249 44
open scratch files with preferences other than 4, or c
88 24 see
CATALOG)
29-35 Preferences to allow when crea
245
[preference]
247
[preference]
222 37 out status.
High-Speed Printer
The user of the prin
38 40 f
scratch files)
5 Priority Scheduling (PDQ)
6
85 16
are Large State Vector, Priority Scheduling, Crash, an
14 41 ob in question is highly pr i vileged (enabled) it may us
14 37 ag, DRL, lockup, illegal prccedure (IPR) , inccrnplete op
88 21 ion bits for master trap program (see
CATALOG)
29126 40 Password or name of trap program (zero if catalog
is
152 32 AQ Passed to slave trap program if file is slave trapp
156 32 AQ Passed to slave trap program if file is slave trapp
162 32 AQ Passed to slave trap program if file is slave trapp
101 36
by the Executive
trap program if the catalog is so p
157 34 ned by the IlE:ster trap
program if the catalog is so p
102 31 leg, then any slave trap program is bYl'assed
and all
100 55 whenever the master trap program is run during an open,
59 51
password or slave-trap program name. If the first
48 29 ated the job. On a trap program protecting a catalcged
103 38
was protected by a trap program, the user access bits
164 13
was protected by a trap program, the user access bits
157 38 ted by the master
trap program, then all accesses are
102 12
not protected by a trap pregram, then the password lX'i
55 32 ecified password or trap program. If bit 18 of the ace
101
[master trap program]
101
[slave trap prcg~am]
102
[master trap program]
132
[master trap program]
132
[slave trap program]
[master trap program]
158
158
[slave trap program]
163
[master trap program]
[slave trap program]
163
38 48 talog MAXes, enables the PRCVItE DEVICE ADDRESSES ccmna

114 11
247
223
44

142
42

22
40

MME 500126: PRCVIDE DEVICE ADDRESSES
XO
h object and' applying a "PRCVIIE DEVICE ADDRESS" MME to
the file p:>inter ~
Card Punch
The card punch has the

11

MME 500011:

PURE

xO

File reference numb

23
29
28
30

has the same effect as a PURE ccmmand in which x:7 is ze
has previOUS1, iSSUed. a PURE ccmnand, then any MEMJRY

Pub. 1059

Page 287

85
85
85

I
I

Catalog Quota·1
I
Scratch Quota
++-------[catalog quota = catalog word allotment

~

line

~rd

20
25
52
21
40
18
18
43
11
" 42

quota = scratch word allotment
quota checks are suspended for
quota checks are suspended for
quota checks]
quota checks]
quota checks]
quota checks]
quotas
A catalog's quotas ar
quotas
To prevent jobs fran
quotas are incremented by the
MME 500133: READ xO File reference numb
13 R Slave issued read - notifies the ~aster
e
anmand am its variants, READ and WRITE, are used to pe
MME 500114: READ CATALOG XO File refere
MME 500U5: OLD READ CATALOG AND OPlli FILES
IllS canmand is like the. READ CATALOG Ai'ID OPEN FILES co
obtain them by issuing a READ CATALCG AND OPEN FILES co
MME 500127: READ CATALCG AND OPEN FILES
entification ~rds
The READ CATALOG AND OPEN FTIES co
be gained by applying a READ CATALCG MME to the catalo
can be obtained by the "READ CATALCG" MME.
(read comm file driveJ
[read comm file special]
in the" same manner as a READ canmand, except that the
ave em job had issued a READ canrrand. It may exercise
ntially a variant of the READ ccmmand. wl1en the slave
s the
mode.
1 RCF Read communication file - used
cation file are:
(I) "Read canrnunication file" drive
If job A now issues a "read canmunication file" drive
pausing after issuing a READ on a terminal communicati
d issues a corresponding RE2lD or COPY. (See the descri
precede the slave issued READ or slave issued w"'RITE spe
[slave end issued READ special]
[slave issued READ soecial]
ppose job D now issues a READ to file reference number
indicating "slave issued READ" (a job requested data tr
receives a "slave-issued read" special interrupt. If j
ied with a "slave-issued read" special interrupt. Howev
ber II" (slave em issued READ) at the master em. The
interrupt (slave-issued read) is generated at job A, s
ber 11 (slave em issued READ) or 12 {slave em issued
issues another ten-word READ, not specifying the no-tr
nication file on a COPY, READ, WRITE, or DRIVE camnand.
py-type operation (COPY, ~j), WRITE, or REQJEST STATtJS

Page 288

Pub. 1059

85

81
152
102
131
157
162
252
253
132
116
22
175

120
96
96
114
124
124
247
244
74
74
138
179
179
20
180
195
41
171
69
69
177
194
177
193
194
116
192
69
193
185
188

41
50

14
11
36
11

11
41
11
II
31
37
11
33
15
38
32
52
39
41
27
43
21
45
49

]
catalog entry.
see Chapter 8.

[scratch
Catalog
catalog
[catalog
[catalog
[catalog.
[catalog
tations
9.5.1 Catalog
ca taloged). 9. 5.2 Job
ucceeds then his scratch

~

22

177
20
68
224
15
36
43
204
225
10
10
47
10
53

line
12
29

43
56
11
16
18
18
26

19
23
36
22
22

97 11
131 11
162 11
97 27
199

29
250

52
31
51

178
230

45
40
42 11

10
21
136

179

32

45
11
11

179
22
111

35
23
42
190 55
67 13
88 51
189' 34
·192 11
138 19
185 40
179 49
.179 16
85 48
138
22 24

Pub. 1059

~rd

master
em job that a read-type camnand was
issued
ecial, itshOlld issue a read-type camnarJ:1. (Types of
hes the slave to issue a READ. By
convention the low
rce (destination) file f s read/write p:>inter is used. T
nonedi t rncde.
Card Reader
The card reader can b
ve call SET TIMER, and a real-tin:e (elapsed tim:) timer
eceive an execute fault (real-time timer runout fault)
pecial interrupt, or one real-ti.rre timer runout fault h
status.
RECORD COUNT RESIDUE (Bits·30a simulated
6.6 Executive Error Recovery
If Executive error
e.
1.1.1 Base ~~dress Register
The base address re
d below) •
1.1.2 Timer Register
The timer register
ng a pseudo base address register. SQUEEZE causes the
[BAR ~ base address register]
not specified in X4 are relinquished. Any accesses sp
MME 500130: OLD REPLACE
XO File reference n
MME 500116: REPLACE
xO File reference n
MME 500140: TALLY REPLACE xO File reference n
rnand is exactly like the REPLACE camnand, except an X4
G, TRDNCA'lE, SCRATCH, or ~.cE type camnand will be r
ACCESSES, DUPLICATE, and REPLACE ,
gives the access wi
perations such as ERASE, REPT.....ACE, SCRATCH are not allow
OPEN, ERASE, CATALCG, or REPLACE. Intended for camruni
or TALLY ERASE and TALLY REPLACE:
Bi t 4 is the escap
MME 500006: MEMJRY RECtJEST
XS Upper rneIlXjry 1i.111
~,e jcb issues a MEMJRY REQUEST call (on a MME fault,
released wi th
a MEMJRY REQUEST camnand before the tra
. MME 500115: RECOEST STA'IUS
XO File refe
ussed her e.
. 5.2.1 REQUEST STA'IUS (Master End)
end job I S COPY.
5.2.2 REc:uEST STATUS (Slave End)
A
15 RS Slave issued request status - notifies the
coamplished by issuing a REQOEST STATUS as the first fi
peration except CLOSE or REQUEST STATUS can be issued t
his can l:e verified by a REQUEST STATUS canmar.d), where
gth (available through a REQUEST STAIDS canmarrl) is alw
y issue DRIVE, CLCSE, or REQUEST STA'IUS canmar.ds. A BE
is new idle.
5.6.2 REQJEST STATUS fran a Slave En
P.ASS canmand an:1 if the REQOESl' STATUS is the first fi
same em) , except that a- REQUEST STATUS issued to the m
or an ordinary file (see REQJEST STATUS MME) and shculd
or an ordinary file (see FEQt,JEST STATUS MME). The type
un below it by issuing a FEQOEST ~~S on file referen
(slave end issued REQUEST STATUS special]
master em job that a REQUEST STATUS was
issued at

Page 289

~

line

word

179 40 sues it, a "slave issued request status" special interr
138 25 ber 13 (slave end issued REQUEST STATUS) is generated a
177 53 n the master end (except REQUEST STATUS) will be reject
192 16 ts new file by issuing a RECGEST STATUS. It therefore
189 50 ued at the master end is REQUEST STAWS. The situation
103 34 be obtained by issuing a REQUEST STATUS. These user ac
84 52 d job can issue a MEMORY REQUEST to change the size of
185 41
not release an existing reserva- tion.
wben a slave
188 50 cation file itself. Any reservation by the slave end i
187 34
releasing the slave end reservation. It will not, hew
194 39 tion.
5.6.6 Slave End Reservation; Local Operations
228 25 ey are issued unless the Reserve bit is set in the flag
70 21
communication file, reserve that file for this end
185 22 ifying that it wishes to reserve the file,
then the s
189 56 r em will not release a reserved corrarunication file. F
75 35 mmunication file will be reserved for
~~e end issuing
141 45 o be released (if it was reserved for t.~at end) ..
The
142 13 t case, the file will be reserved for the
master ern
117 20 hared file, that file is reserved for the end
issuing
172 28 or
shared file will be reserved for the end issuing
178 17 en reverts to an idle or reserved state, depending on t
180 52 vee If no slave em has reserved the camnunication
f
185 45
When a slave em has reserved the file, it appears
180 35 munication file is not
reserved to any slave em (see
181 23 lewill autcmatically be reserved to that job.
5.2.4
194 44 ype 0). The file is now reserved to the first slave en
194 28 0), and the file becanes reserved to the master erx:1.. I
187 24
Second, the file may be reserved to this slave end, wi
189 25 a t the master errl can be reserved with a RESEr STA'IUS c
191 12
to an idle (or possibly reserved) state.
Finally, wh
184
[slave end reserve]
184
[master end reserve]
184 35 o longer exists.
5.4 Reserving the File
It is scm
20 51 not yet responded.
(See RESET
STAruS, Section 5.2.)
20 48
2 SRS Slave issued reset - notifies the master
190 53
received a slave-issued reset special interrupt and ha
188
[slave issued reset special]
182 31 in Section 5.3.
5.2.7 RESET STATUS
Since several j
186 24
5.5 Busy States and Reset Status
Since many jobs
141 11
MME 500135: RESET STATUS
XO File refere
69 32 rt the copy by issuing a RESET STATUS command on the co
186 54 ds. The function of the RESET STA'IUS command is always
185 12 rve the file only with a RESET STATUS command.
Once t
187 32 issued. In ei ther case, RESEr STAms functions as a 10

Page 290

Pub. 1059

~

line

word

55
87
183
163
132
194
III
192 39
192
29 17

ued to that errl before a RESET STA'IUS is issued. Other
STATUS issued before the
STATUS on a COPY to whic
STATUS on the source fil
STATUS or CI..OSE. Howeve
STATUS requesting the co
[slave em issued RESET STA'IUS special]
up state, job A issues a RESET STATUS to clear out job
S. If issued in time, a RESET STA'IUS will prevent the
er two (slave em issued RESET STATUS) at the master en
00. Local operations are RESET STA'IUS, PASS, and, if th
, cr..csE, REQUEST STATUS 1 RESET STATUS, TRIJNCATE (or SCR
1 MME' s except CI..OSE and RESET STATUS.
If a suspended
The jcb was stopped by a RESET STATUS.
The A-register
man::1 , unless it issues a RESET STATU""S. The action of a
ithout the bit set, or a RESET STA'ItJ""S. While the file i
[reset status] .
interrupt (1'slave issued reset") that its copy is no 10
copy command, unless it resets status on the master en
(1)
If. the master em resets status on the ccmmunica
eduling only)
1 Core Residence permission
2 Lar
status.
RECORD OJUNT RESIDJE (Bits 30-35) - This fi
word 2 contains the DeW residue of the last DeW access
[OCW residue]
P='inted to by X7, and a RET instruction is executed th
lave faults by issuing a RET instruction to the appropr
utine should end with an RET instruction whose address
squeezed m:de, since the RET instruction will not "resq
error recove~J includes retrying t~LeOut status and al
the PAUSE command in the return address.
d passed.
(4) If the return bit (bit 2) is set in t
ch is passed withcut the return bit (bit 2) set in its
b are closed and, if the return bi t is set in their ace
assigned to it.
If the return bit is set in the acces
atalcg must not have the return bit set in its access w
le/catalog which has the return bi t set in its access w
nd is passed wi thoot the return bi t set in the accesses
the issuing job with the return bit set.
On cornpletio
the issuing jcb wi th the return bit set.
tJI.:on ccmp1et
t the slave em with the return bit set. It tray not pa
s a scratch file arrl the return bi t was not set in the
eak. By not setting the return bit, job B effectively
[return bit]
Trap R
rd 2 (I.ength or Counts) Return ~rd Ie IR

Pub. 1059

Page 291

190
191
20
44
184
194

56

18 ter erxl is des~oyed. A RESET
50 slave end jcb issued a RESET
46 X7 zero or by issuing a RESET
18 r for any caranand except RESET
25 Job A therefore issues a RESET

141

197 14
190 25
141

41

187
175
64
66
188
228

39

28
42
31
45
29

66

188
177
185
38

53
52

21
28
26

204
77 34
77
47 32
22 53
17 12
24 34
225 33
43

2S

87
112

14

48
64

23
19
25
36
28
24
4;3
45
49
56

SYSTEM PRCGRAMMING REE'ERENCE MANUAL

~

16
23
64

21
48
64
183
197

48
64
64
94

221
210
76

199
36

43
18
29
17
18
143
38
182
21
84

86
84

85
42
109
106
178
199
29
15
45
46
43
15
36
11
18

line

word

29 d of the trap block (the return word), and its IC is re
22 lustrates the use of the return word.
EAX6 TRAP P
[returned closed special]
21 Ie was passed.
5 RF Returned file - notifies the j
[returned file special]
[returned file special]
49 ve end is notified by a 11 returned file" special interru
19 ning. Job D receives a "returned file" special interru
21 pecial interrupt type 5 (returned file) is generated fo
27 cial interrupt number 5 (returned file). If it is a sc
52 cial interrupt number 5 (returned file). The job issuin
31 eed to be zero.
Status Returns
0 Successful: th
11
6. 4 S imula ted Status Returns
In addition to statu
11
6.3 Device Status Returns
This section describ
. [device status returns]
30 • A typical example is "rewind" on a magnetic tape han
24 ssuing job hapt:ens to be rcad- blocked at this time it
22 is zero, the job will be roadblocked am will restart a
29
Otherwise, any r:errling roadblocks on b.~e job are rele
20 rn word IC!R
Trap Routine
Access (bits 0-8
12
fourth ~rd. This trap routine sheuld end with an RET
53 -f its
special handling routine.
1.4.5 Saved Speci
11
MME 500120: RON
The RUN MME is very simi
53 index register X3 on the RON ccmnand are Al.'1Ced with the .
47 it PASS available in the RUN ccmmand). A ccmmunication
15 i t p~.ss ccmmand in the .RUN ccmrrand. If DATA is nonze
22
allowed X5 Pointer to run list X6 Trap location X
22
The remainder of ~~e run list contains a list of fi
3S nd with the files in the run list open for it. The new
42
I
The run listp:>inted to by X5 must
41 e supra job in X4 of the RON or CONTINUE ccmmand which
45 rted and the supra job's RIJN or CCNI'INUE ccmmand is tra
49 et by the supra job on a RUN or EXECrJrE ccmmand). A jo
46 ication files cannot be "run". An attempt to do so wil
51 ile as a parameter for a RUN, ERASE, DNCATALCG, TRONC.z\T
3S
been opened.
(3) On RUN, EXECt1IE am CCNI'INUE, g i v
15 lable to a slave job. A run-time tirrer is set by the E
MME 500002: RUNNING TDw1E
No arguments
11 IIleIIOry.
17 a job to receive a timer runcut fault after a specified
18 ,or one real-tim: timer runout fault has cccurred. If
22 fault is given. A t~r runcut fault is returned if th
18 e fault (real-time timer runcut fault) after a specifie
35 II connect faults, ti.m:r runootfaults, and startup and
(saved special interrupt]

Page 292

Pub. 1059

INDEX

~

19
19
18
231
152
156
162
38
85
22

144
106
70
144

181
48

64
250
85
85
132
48
56
70
85
86

107
136
144
149
167
169
172

88
175

181
199
188
74
20
181
181
74
74

line

~rd

11 dling routine.
1.4.5 Saved Special Interrupts
If
22 ial interrupt stack, all saved special pairs will be di
he special interrupt is "saved" (see below) ,
and the
42 ee Section 8.3) •
8.2 Scanner Conventions
The conv
42
in X4, then all special scanning conventions are disal
50
in X4, then all. special scanning conventions are disal
47
in X4, then all special scanning conventions are disal
40 ch files)
5 Priority Scheduling (PW)
6 Crash (
16 e State Vector, Priority Scheduling, Crash, and Leg. T
29 d job that a TRUNCATE or SCRAroI
camnand was issued a
II
MME 500110: SCRAroI
XO File reference n
II
MME 500100: OPEN SCRATCH X4 File/catalog fla
52 nd permission, the job's scratch (catalog) word allotrre
40_ oged) file will have its scratch (catalcg) word allotme
[scratch (slave end)]
22 ation, a job's remaining scratch and catalcg' word allot
53 CI.CSE will also have its scratch a.rrl catalog word allot
51
such as ERASE, REPLACE, SCP.Aroi are not allowed on sp:
30
I
I Scratch Quota I I
110tment]
[scratch quota = sc~atch word a
36 cement succeeds then his scratch QUotas are increrr.ented
-. [scratch ~rd allotment]
38 tch file/catalog has its scratch word allotment increme
[scratch 'nOrd allotment]
[scratch quota = scratch word allotment]
15 eeded). The catalog and scratch word allotments for th
34 ned, the job's remaining scratch word allotment is deer
37 nt
1 Job I s remaining scratch word allot::rrent
2 C
[scratch word allotment]
25 the o~ration, the job's scratch word allotment is incr
[scratch word allotment]
28 s a file/catalog has its scratch word allotrrent decreme
, (scratch word allotment]
25
file/catalcgs (see OPEN SCRAroI)
The job file for a
29 SET STAIDS, TRUNCATE (or SCRA'ICfI), arrl SET POINI'ER.
T
48 tive.
5. 2.5 TRUNCA'IE, SCP.Aroi, arrl SET POINI'ER (Slav
51 SE, UNCATAI.CG, TRUNCATE, SCRATCH, or REPLACE type canma.
28 ration (DRIVE, TRtJNCA'IE, SCRATCH, or SET POINTER) has b
36 ommunication file are 0 (set ccrnrnunication file mode) a
35 Mnenonic Use
0 S'IM Set rrode - used to notify the
34 ding special interrupts (set rrcde ar:d slave-issued driv
32 nd job. In particular, a set roc:de drive (type 0) or a d
ialJ
[set rrcde drive = set rrcde spec
[set m:::de drive]
34

Pub. 1059

Page 293

SYS'IEM PRCGRAMMING REE'E!:RE!N:E

~

~1JAL

word

line

41
34
35
19
11
14
11
36
36
11
22
36
19
28
32
32
11
48
49
45
37

[set rrcde drive]
mode special]
[set mode special]
MME sOOll3: SET POINTER
XO File referen
[set pointer (slave end)]
TRUNCATE, SCRA'ICH, and SET POINTER (Slave End Only)
17 SP Slave issued set pointer - notifies the m
he rcaster ern job of a SEr POINTER canmand
issued a
[slave end issued SET POINTER special]
POnnER, a "slave-issued set pointer" special is given
ber 15 (slave end issued SEr POINTER) at the master end
E, TRIJNCATE, SCRAro3:, or SET POINTER) has been issued a
UNCATE (or SCRATCE), and SET POINTER.
This chapter de
MME 500001: SEl' TIMER
A Tim:
The SET
et by the Executive call SET TIMER, and a real-tirre (el
ve communication file or shared
file.' In that case,
[shared bi t]
ave communication or a
shared file, b,at file is rese
involving a file open in shared rrcde may specify only t
ATUS on a file opened in shared mode will cause the fil
ion) file is"opened in
shared mode, do not allow any
ve will open the file in shared rocx:1e. If the file is n
(shared m:de]
must be saved with the f shared' bit turned on in the u
Special Locations The shutdown and connect fault cel
faults, and startup and shutdown faults. These events
y slave fault ot.~er than simulated slave faults. The j
6.4 Simulated Status Returns
In
The Executive will lin~ simultaneous traps and special
MME 500010:, TIME Snx:E ECO.rLOAD No arguments
us TNQrd 2 on a completed single action device drive con
kinds of device drives. Single action drives change th
End Processor
6.2.1 Single Action Drives A sing1
3 24 29 30 3S On a single device action DRrJE com
ation file mode) and 12 (single device action). These d
es for device files: 12 (single device action) and 24 (
i~~ function code of 12 (single device action) or 24 (d
SCRATCH). (See TRUNCATE-slave
ern only, Section 5.2.
able._ 5.6.3 p.~..ss at a Slave End Sup£x)se now that u
2 REQUEST STA'IUS fran a Slave End Upon receipt of th
(1) At the lO¥iest slave end accepting special in
the master end.
5.1.1 Slave End copy Commands
AC
reserva- tion.
wben a slave em has reserved the fil
mode
drive (see DRIVE-slave end in Section 5.2) •

Page 294

Pub. 1059

181
74
181
146
181
181
22
22
146
181
146
188
175
46
15
172
158
117
228
142
70
158
227
227
15
11

24
221
24
50
76

204
205
201
74
76
199
22
192
192
74
175
185
20

[set mode drive

11
48
35
36
55
28
28
29
11
15
26
20
3326
26
21

= set

INDEX

~

117
69
69
116
138
138
141
141
146
146
144
144
167
167
69
69
171
171
69
69
116
137
138
144
146
167
171
75
87
194
184
187

W':>rd

line

14

24
24

the corresPJnding slave em is trapped only if a
[slave end issued READ special]
ial interrupt number 11 (slave end issued READ) or 12 (
ial interrupt number 11 (slave em issued READ) at the
S special]
(slave end issued REQUEST STATU
ial interrupt number 13 (slave end issued REQUEST STATU
special]
[slave end issued RESET STATUS
al interrupt number two (slave end issued RESET S~S)
F;eCial]'
[slave end issued SET FOnnER s
ial interrupt number IS (slave end issued SET FOINr.ER)
ial]
[slave end issued TRU~CAT.E spec
ial interrupt number 14 (slave end issued TRONCATE) at
ial]
[slave end issued TRUNCATE spec
ial interrupt number 14 (slave em issued ~~TE) at
]
[slave end issued WRITE special
end issued READ) or 12 (slave er:d issued WRITE) at the
]
[slave end issued WRITE special
ial interrupt number 12 (slave em issued WRITE) at the
end has reserved it, the slave end issuing the COPY can
ed.
A COPY issued at a slave end of a ccmmunication f
A READ issued at the slave end of a ccmmunication f
ber of a job file or the slave errl of a ccmnunication f
reference number of the slave-end of a ccmrnunication f
CH command issued at ~~e slave end of a ccmmunication f
ER cannand issued at the slave e.r:d of a ccmmunication f
TE command issued at ~~e slave end of a communication f
A WRITE issued at the slave end of a communication f
ich may be issued on the slave em of a terminal ccmmun
will be created ar.d its slave er:d passed.
(4)
If t
ts reservation.
5.6.6 Slave End Reservation; I.ccal a
[slave end reserve]
to a slave er:d.
5.5·.1 Slave End States First, the
file is closed, or if a slave em to which the camnuni
.case, t.~e correst;:onding slave end will be trapped on
at both the master and a slave end will cause status to
5.2.2 REQJEST STA'IUS (Slave End)
A REQUEsr STAIDS
hat job.
5.2.4 DRIVE (Slave End)
Certain drive typ
[trur.cate (slave end)]
[scratch (slave end)]
[set pointer (slave end)]
cation file ar.d pass its slave errl, deperding on whethe
nd (MJrE). (See DRIVE-slave errl.)
13 R Slave i
• with the exception of slave ends of ccmmunication fi
ster end and one or mJre slave ends. Each end appears

Pub. 1059

Page 295

64

18
40
24

41
27
26

30

19
42
25

17
39
32

23
25

26
29
41
44
12
39

15
35

172 21
141 37
179 3S
181

27

181
181
181
III 52
21 54
112

175

i1e,

~

24
22
13

line

word

35
52

slave fault other than simulat
slave fault to be given to a j
Slave Fault Vector
The first
slave faul t vector. WJrd 0 (t
slave fault, it is unsqueezed.
slave fault, the Executive sto
slave faults. The job will th
slave faults. The position of
Slave issued drive - notifies
Slave issued read - notifies t
[slave issued READ special]
al interrupt indicating "slave issued READ" (a job requ
Section 5.1.)
15 RS Slave issued request status ve end job issues it, a "slave issued request status" s
Section 5.2.}
2 SRS Slave issued reset - notifies
[slave issued reset special]
by a special interrupt ("slave issued reset n ) tJ.'at its
Section 5.2.)
17 SP Slave issued set pointer - not
Section 5.1.)
14 W Slave issued write - notifies
larly, in response to a "slave issued WRITE" special, i
terminating the aborted slave job. This feature is L,.
t~il.
1.1 Running in Slave Mode A job actually ru
antral ofa prccessor in slave rrcde arrl may perform any
struction is executed in slave m:de.
MME faults norma
then 1 is assumed) AQ Slave trap identification y,cord
X6 Trap location AQ Slave trap identification word
of words N to copy AQ Slave trap identification word
X6 Trap location AQ Slave trap identification word
f bit 4 of X4 is 1) AQ Slave trap identification word
of words N to copy AQ Slave trap identification word
then 1 is assumed) AQ Slave trap identification word
t:e zero) AQ Passed to slave trap prcgram if file is
be zero) AQ Passed to slave trap prcgram if file is
be zero) AQ Passed to slave trap program if file is
N-1) st catalcg, then any slave trap program is bypassed
[slave trap program]
[slave trap program]
[slave trap program]
[slave trap progr am]
ile/catalog is rraster or slave trapped, then
the acce
rrent
file/catalog.
Slave trapping programs are ru
[slave-issued drive sp€Cial]
interrupts (set m::::de ar.d slave-issued drive) at the job
ords. Jcb A receives a "slave-issued read" special- int

Page 296

Pub.1059

IS

19 pt) if any, and then any
49 p, special interrupt, or
21 Executive call.
1.3
35 have special uses in the
29 p, special interrupt, or
IS slave faults. To give a
19 ult other than simulated
29 hile others are used for
50 or future use.
12 D
11 E-slave end.)
13 R

24
14
24
13
21
22
177
177 25
22 23
179 40
20 48
188
188 53
22 35
22 17
177 28
14

29

10 16
9

23

14
81
94
96

46
31

97
100
124
131
152
156
162
102
101

22
28

24
28
30
30
32
32

32
31

132

158
163
127
157
181
181
193

20
41

~

line

word

21 ob A is notified with a "slave-issued read" special int
18 s. A special interrupt (slave-issued read) is generate
53 r end job has received a slave-issued reset special int
55 issues a SET FO:mrER, a "slave-issued set y;:ointer" spec
54 ATE to the slave end, a "slave-issued truncate" special
11 a slave em generates a "slave-issued truncate" special
33
1 for twenty words. A "slave-issued write" special in
51 me the new
pasSY,Urd or slave-trap prcgr am name. If t
be zero, (bit 4) escape special
convention, (bits 922
22
be zero, (bit 4) escape special
convention, (bits 916 ak pennission, the break special "bounces" up the canmu
20 lo~ bya "file closed" special as its file reference
38 33 ore than 64 files)
3 Special Catalcg permission (al
108 43 ob is enabled with
the Special Catalcg permission am
199 25 esare always of type 6 (special catalcged file). They
251 16 Peripherals are saved as special catalcged files, since
156 23 ap bit mask and escape
special convention bit X5 Po
232 48
8.3) •
There are three special conventions for the fi
230 34
when
one of the three special conventiot1s is used fa
229 40
(2) There are several "special conventions" which al
232
(special first name = special convention]
232
onvention]
[special first narre = special c
the treename contains a special first narre. The name
148 43
152 44
the treename contains a special first name.
For more
the treename contains a special first name. For more
156 52
162 49
the treename contains a special first name. The nam=
18 53 0 until the em of its
special har:dling routine.
1
183 49 ied by a "returned file" special interrupt (if it is ac
183 11 e end in a "passed file" special interrupt (see types 0
190 54 ved a slave-issued reset special interrupt and has not
197 19 ceives a "returned file" special interrupt due to the c
18 19 irst opportuni~ after a special interrupt is generated
179 40 e issued request status" special interrupt is generated
180 19 nd job issues a DRIVE, a special interrupt is generated
193 34
A "slave-issued write" special interrupt is generated
III 31 fied in XO, generating a special interrupt nUl'l"J:er 4 (pa
47 34 R. If a fault, trap, or special interrupt occurs while
17 56
interrupt data entries (special interrupt pairs) which
18 41
special interrupt data (special interrupt pair) . are
19 19
saved. H~ver, once a special interrupt pair has bee
19 35 in Section 5.2.
1.4.7 Special Interrupt Pair FOrnBt
192 42 C receives a passed file special interrupt specifying i
17 46 lly pointer to the jcb' s special interrupt stack. The
are stored in the special interrupt stack. The
18 42 air)

194
192
190
181
181
182
193
59
152
162
186
197

Pub. 1059

Page 297

SYSTEM PRCGRAMMrNG REE'ERENCE MANUAL

~

15
17

177
196

25
17
24
177
22
24
43
192
193
194

191

17
19
19
20
177
181
15
181
185
184
16
18
18
181
185
181
19
152
156
162
182
177
251
24
48
64
64
64
69

line
38
34
18
16
53

23
18
SO
48
29
18
1:4
52
21
51
29
11
26
30
18
34

40
52
53
16
15
54
25
56

22
42
50
47
11
28
11
14

Page 298

word

fault cell) is the job's special interrupt tally word.
1 interrupts only if its special interrupt tally word (
(have a valid, nonzero, special interrupt tally word ive attempts to give the special interrupt to the lowes
unless a fault, trap, or special interrupt was generate
before encountering any special interrupt which occurr
then the connect faul t (special interrupt) if any, and,
end job has received the special interrupt, it must eve
for nore than one trap, special interrupt, or slave fa
pter 3) receives a trap, special interrupt, or slave fa
ocked until N traps, one special iJlterrupt, or one real
ipt of the "passed file" special interrupt, SUPFOse job
es a "slave-issued read" special interrupt. If job A t
th a "slave-issued read" special interrupt. H~ver, jo
is 7) in a '·passed file" special interrupt. The file is
ey were issued.
1.4.2 Special Interrupts
A special
routine.
-1.4.5 Saved Special Interrupts
If the jo
arded.
1.4.6 Bouncing Special Interrupts
Only spec
eelow.
1.4.8 Types of Special Interrupts
Type M
master end be accepting special interrupts (have a val
nerate the corresponding special interrupts (set rocx:1e a
special interrupt cell. Special interrupts are describ
ve end ar.d will generate s;;ecial interrupts at t.~e mast
nd job.
The routing of special interrupts is also aff
notified by file-closed special interrupts that the co
e jab by using traps and special interrupts.
1.4.1 T
[bounced special interrupt]
[saved special interrupt]
"slave-issued truncate'· special is generated. ~'7hen t.~e
fied.
(2) If a break special is given to a slave en
lave-issued set PJinter" special is given to the master
terrupt stack, all saved special pairs will Ce discarde
) is set in X4, then all special scanning conventions a
) is set in X4, then all special scanning conventions a
) is set in X4, then all special scanning conventions a
"slave-issued truncate" special specifying a lengt.' of
0 a "slave issued WRITE" special, it shculd issue a rea
ent, the MFD is the only specially-catalcged catalcg. T
k simultaneous traps and specials in such a way b,at a
(returned file special]
[returned file special]
(returned closed special]
[special]
[slave end issued READ special]

Pub. 1059

INDEX

~

word

line

69

[slave end issued WRITE
et mode drive = set mode
[read comm file
[break
nd issued REQUEST S~S
end issued RESET STATUS
lave end issued~~TE
e end issued SET POINTER
lave end issued TRUNCATE
[slave end issued WRITE
[slave issued READ
[bouncing
[set mode
[slave-issued drive
[bouncing
[slave issued reset
[l:ouncing

32

special]
special]
[s
special]
special]
special]
[slave e
special]
[slave
special]
[s
special]
[slav
special]
[s
special]
special]
special]
special]
special]
special]
special]
special]
MME 500007: SQ,JEEZE
X4 Points to IC/IR
BAR, and has bit 35 (the squeeze bit) set on to indicat
Except in the case of a SQUEEZE or a TERMINATE ccnm:md
ng in squeezed rocrle (see SQ,JEEZE, MME 500007 in Chapter
generating the MME is in squeezed m:de (entered by the
When a job running in squeezed rrroe (see SQ,JEEZE, MM
calls.
If a jcb is in squeezed mode, or if the addre
in the special interrupt stack. The address
field of
jcb l s special interrupt stack. The tally word is typi
• These operations use a starrlard treenarne format (defi
ile system (denoted by a stan:1ard treenarne).
The TAIL
[standard treename]
[standard treename]
[standard treename]
t:i.m=r runout faults, and startup and shutdcwn fau! ts.
ved for future use. The startup fault cell is not used
e permission
2 Lcirge State Vector permission (permi
it is enabled are Large State Vector, Priority Schedul
s to an idle or reserved state, depeooing on the option
end.
5.5.1 Slave End States
First, the file and t
ain.
5.5.2 Master End States The situation is camp
led astray_
5.5 Busy States and Reset Status Sinc
5 Busy States and Reset Status Since many jobs may a
tion 5.3.
5.2.7 RESET S~S Since several jobs ca
~ 500115:
REQUEST STA'ItJS
XO File reference nu
MME 500135: RESET STATU~
xO File reference nu
ccrnmunication file busy" status (6) is a special status

Pub. 1059

Page 299

74
74
74
138
141
144

146
167
171
177
177
181
181

186
188
194

47
24
25
24
14
24

II
32

51
28

50
28

13

11

18

42
47
47
36

17
229

162

148
152

156
. 11

15

35
44

38

30

85
178
187

15

189
186
186

21
24
24

17
15

182 31
136 'll

141 11
186

~

201
179
179
210
22

line

word

43·
II
35
20
23
42

STATUS (Bi ts 2-5) - This field
STATUS (Master End)
A RECUES
STATUS (Slave End)
A RECUEST
Status (Substatus) is six bits
status - notifies the
master
STATUS as the first file opera
S'I'A-'TUS can be issued to that e
status cede indicating whether
STATUS ccmmand is always to fa
STATUS ccmmand on the canmunic
STATUS ccmmand) is always zero
STA'lUS canmand), whereas the 1
STATUS ccmmand.
Once the fil
STATU"'S ccmmands. A RESET STAT
STATUS from a Slave End Upon
STA....'TIf.JS functions as a local op
STATti'S is issued. Other camna
STATUS is the first file o:p=ra
ST.ATUS issued before the CLCSE
STATUS issued to the lTIaster en
STATUS MME). The type field 0
S'TIL.fT1(JS on a COPY to which the
ST~ on file reference numbe
status on the communication
status on the master em (see
STATUS on the source file for
STATUS or CLCSE. However, t.l-:le
STATUS requesting the ccmmunic
Status Returns
In addition t
Status Returns
This section
status returns]
STATUS sp:cial]
[
STATUS special]
STATUS to clear out job D's RE
ST.ATtJS was
issued at a slave
STATUS will prevent the specia
status words is given in Secti
status word)
status" special interrupt is g
STATUS) at the master em and
STATUS) is generated at the rna
STATUS) will Ce rejected as "i
STATUS, PASS, and, if the eoo
STATUS, Section 5.2.)
3 BR

III
190 55
16 34
186 54
69 33
88 51
67 13
185 12
189 35
192 11
187 32
190 56
138 19
191 18
185 40
179· 16
20 50
.85
185

48

21
177 52
44 46
184 19
194

25

221

11

210

11

76

138
141
197 15
22

24

190

25

16

37

200

179 . 40
141 41
138 25
177
187

20

53
39
52

Page 300

is p::>wered off.
MAJOR
re.
5.2.1 RECUEST
s copy.
5.2.2 RECUEST
ven in octal. The Mir.-or
RS Slave issued request
hed by issuing a REQUEST
except CLOSE or RECUEST
us word always contain a
he function of the RESET
copy by issuing a RESET
ilable through a REQUEST
be verified by a REQJEST
e file only with a RESET
DRIVE, CLCSE, or RECUEST
idle.
5.6.2 REQJEST
In ei ther case, RESET
that errl before a RESET
mmand arrl if the REQUEST
d is destroyed. A RESET
), except that a RECUEST
dinary file (see REQJEST
end job issued a
RESET
it by issuing a REQUEST
'If the master end resets
cmmand, unless it resets
ro or by issuing a RESET
any canmand except RESET
therefore issues a RESET
6.4 Simulated
6.3 Device
(device
slave end issued REQUEST
[slave end issued RESET
te, job A issues a RESET
r errl jcb that a REQOEST
issued in time, a RESET
e description of t.~e two
[device
a "slave issued request
(slave end issued RESET
slave end issued REQUEST
ster end (except REQOEST
cal operations are RESET
responded. (See RESET

Pub. 1059

page

210

line

~rd

19 VE canmands.

177

40
35
19

15

38

224

24

Status, which is four bi ts, nu
status.
12-17 Queue addres
status.
30-35 Record count
status.
Status Returns
0
STATOS.
If a suspended job f
STATOS.
The A-register will
STATOS. It therefore issues a
STATOS. The action of a RESET
STATUS. The situation is simi
STATOS. These user access bit
STATOS. While the file is rese
status]
status]
status]
[substatus·= minor status]
dirty fault vector. The supra· job then has the opt.ion
ed on a running job will susp=nd execution of t..~at job
ycause the Executive to suspend the job. Executive en
rred because the jcb was suspended (for ~,e reasons lis
and whose execution was suspended as a result of the s
is always zero, while a suspended jcb never has zero 1
and for a description of suspended jobs). All files op
Ie reference number of a suspended or terminated job fi
jcb al:orted, the job is suspended, and its execution rn
al:crtedi that is, it is suspended, and the job which r
tion of the slave job. is suspended;
(2) 'I"....o 'Nards 0
Whenever a memory, faul t tag I DRL, lcckup, illegal prcc
MME 500141: TALLY CATALOG XO File refer
(3) For TALLY CATALCG:
The register
t mask.
MME· 500137 : TALLY ERASE
XO File referen
ree formats:
(1) For TALLY ERASE and TALLY REPLACE:
MME 500136: TALLY OPEN XO File referenc
ified file is made using TALLY OPEN (MME 500136). The
Append permissions using TALLY OPEN (MME 500136). If t
file in shared m::de, see TALLY OPEN.
A file which is
n the file/catalcg using TALLY OPEN. If Read, Write, a
e operation.
(2) For TALLY OPEN:
Bits 0-3, 5-8 a
[TALLY OPEN]
MME 500140: TALLYREPLACE
xO File refer
(1) For TALLY Eru\..5E and TALLY REPLACE:
Bit 4 is the
if its special interrupt tally ~rd (w-ord one) is not z
nzero, special interrupt tally ~rd - see Section 1.3)
jcb's spec:ial interrupt tally ~rd. The connect fault
e last card.)
Magnetic Tap: Handler
Note that it is

Pub. 1059

Page 301

76
76

50
45

92 53
64 42
66 31
192 16
188 45
189 50
103 35
228 29
66
202
202
202
14 28
141 31
9 33
66

54

66
88
64

52

136

88
14
16
14
148
231
152
230

37
47
53
39

26
44
. 37
11
11

11
40

156 11
148 37
152

36

227

37

162

40
46

230
227
162
230
17

II

The Major
sferred) •
6-11 Minor
rnallyon).
1-5 Major
ains the physical device
s except CLCSE and RESET
b was stopped by a RESET
ile by issuing a REQUEST
unless it issues a RESET
he master em is REQUEST
ned by issuing a REQUEST
the bit set, or a RESET
[reset
[substatus = minor
[minor

SYSTEM PRCGRAMMING REEEREN:E MANUAL

~

~rd

line

225
7S
180

44
44
47

181
48
25

40
11
51

65

12

ried.

A data alert on tape is retried with backspace

ed on the slave end of a terminal communication file.

33
42
41
23
23
23
23

~ical use is with a terminal communication file, t
communication file. For terminal cammunication files i
MME 500000: TEPMINATE
X4 Termination ac
e case of a SQUEEZE or a TERMINATE ccrnrnand, a slave job
e the description of the ~ ccrnrnand.}
If a ter
nd all jobs below it are terminated (see the descriptio
esources const.lII1€d by all terminated infra jobs.
If XO
CLCSE.
(See CLCSE.) A terminated job -file can always
numter of a suspended or terminated job file, then the
d. If, hONever, the job terminated, either successfull
NUE ccmnand. If the job terminated, however I another C
ob file, or when .the job terminates or aborts. Status w
the job file, or the job terminates or is aborted.
If
option of continuing or terminating ~,e aborted slave
the spawning job. Uf:On termination of the spawned job
MME 500012: JOO TIME
No arguments
The tota
MME 500002: RONNING TIME
No arguments
The tota
MME 500003: TIME OF DAY
No arguments
T
MME 500010: TIME S:m::E BCOrIDAD
No argurn
e an execute fault (real-time timer runout fault) after
1 interrupt, or one real-time timer runout fault has cc
MME 500001: SET TIMER
A· Tim:
The sEt' TIME
a slave job. A run-time timer is set by the Executive
real-time (elapsed time) timer is set by the Executive
scribed below} .
1.1.2 Tirr.er Register
The timer reg
abIes a job to receive a timer runcut fault after a spe
errupt, or one real-time ti.m:r runcut fault has cccurre
slave fault is given. A timer runout fault is returned
execute fault (real-time timer runout fault) after a sp
are all connect faults, timer runout faults, and start
y the Executive call SET TIMER, and a real-time (elapse
Two software-simulated timers are available to a slav
[timer]
[timer]
e fault occurs.
1.2.2 Transparent Interrupts
Certa
e returned by the master trap
prcgrarn if the catalcg
he action is canplete, a trap (descril:ed in Section 1.4
ping call must specify a trap address in X6 at the timeor invalid parameter. A trap address is sp:cified when
convention, (bits 9-17) trap bit mask X5 Pointer to
convention, (bits 9-17) trap bit mask XS Pointer to
st be zero
(bits 9-17) trap bit mask XS Reserved fa

Page 302

Pub. 1059

64

46

137

28

88
88
66
66

49
54
41
56
49

88
14

34
29

86

17
11

136

40
45
49

11
11

50
36
43

18

46

II

15
15

15
16

11
18

10

36

46

17
18

43
15

22

36
11

18
35

15

15

15
36

14

46
II

157
12
12

16
152

162
81

27

INDEX

~

line

22
22
22

131
124
156
148
101
230
60
81
94
96
97
100
124
131

11
43
11
31
22
28
24
28
30
30

193

29

194
193
88
126
152
156
162
101
102
100
59
48
103
164
157
102
55
101
101
102
132
132
158
158
163
163

12
40
21
40
32

~rd

29

20

17
178

12.
11

ust be zero; (bits 9-17) trap bit mask XS Reserved fo
ess for OPEN (bits 0-8);' Trap bit mask (bits 9-17) XS
ed accesses on the file, trap bit mask and escape
spe
OPEN (MME 500136). The trap bi t mask for the search i
b will be limited by the trap bit mask in bits 9-17 of
ow) •
Bits 9-17 are the trap bit mask to be used durin
If this ~rd contains trap bits which
the issuing
1 is assumed) AQ Slave trap identification words Th
Trap location AQ Slave trap identification words
Th
rdsN to copy AQ Slave trap identification words
Th
Trap location AQ Slave trap identification words
Th
4 of X4 is 1) AQ Slave trap identification words Th
rds N to copy AQ Slave trap identification words
Th
1 is assumed) AQ Slave trap identification words Th
.4 copy Command with No-Trap Option Job D now issues
It
(2). Note that the no-trap option had no effect, sin
(job A) specified the no-trap option.
Suppose job A n
rmission bi ts for master trap prcgram (see
CATALCG)
2-3 PasS'~rd or name of trap prcgram (zero if catalog
ro) AQ Passed to slave trap prcgram if file is slave
ro) AQ Passed to slave trap prcgram if file is slav""e
ro) AQ Passed to slave trap prcgram if file is slave
urned by the Executive
trap prcgram if the catalcg is
catalog, then any slave trap prcgrarn is bypassed
am
that whenever the master trap prcgram is run during an
new password or slave-trap prcgram name. If the fir
ini tiated t..~e job. On a trap prcgram protecting a cata
if it was protected by a trap prcgram, the user access
if it was protected by a trap pro:;ram, the user access
rotected by the master
trap prcgr am, t...lo:len all access€
cg is not protected by a trap prcgr am, then the passwor
he specified password or trap pro;ram. If bit 18 of th
[master trap prcgram]
[slave trap prcgram]
[master trap prcgram]
[master trap program]
[slave trap program]
[master trap prcgram]
[slave trap prcgram]
[master trap prcgr am]
[slave trap prcgram]
Return ~rd· Ie IR
Trap Routine
Access (bits
n the fourth word. This trap routine should end with a
issu~.
5.1.3 The n~rapn Option When the master

Pub. 1059

Page 303

38

32
32

36
31
55
51
29

38
13
38
12
32

~

176

line

word

31

nd job exercises the "no-trap" option - see below). T
truction unless a fault, trap, or special interrupt was
fied Ie/IR. If a fault, trap, or special interrupt cx:c
ssible for more than one trap, special interrupt, or sl
in Chapter 3) receives a trap, special interrupt, or sl
successfully run master trap, then all
requested ace
do so.
1.4.10 Typical Trap-Handling Code (Non-l-'f.ultip
talog is master or slave trapped, then
the access bit
transparent interrupt.
Trapping calls also function a
file/catalog.
Slave trapping prcgrarns are run only
hree typeS! nontrapping, trapping, and trapping with au
truction that faulted
traps indicating that async~
h the slave job by using traps and special interrupts •.
e will link simultaneous ·traps and specials in such a w
will also encounter all traps before encountering any
0 be rcadblocked until N traps, one special interrupt,
x:7 Number of entries in treename (if zero, then 1 is a
XJ Number of entries in treenarne (if zero, then 1 is a
s. Any attempt to use a treename consisting of more t.h
er are th.e following: A treename consist...s of one or !OC)
oerations use a star.dard treename format (defined in Se
ucceeding catalcg in the treenarne is found, it is searc
(1) The format of a treename is very inflexible, a
is a tally word for the treename of the file to be ope
filenames which form a "treename") is located in the f
m (denoted by a starrlard treename) •
The TALLY FEl?LACE
03 denoted by a standard treename..
First an atte.'itpt t
[standard treenarne]
[standard treenarne]
[treename]
[standard treename]
[treename]
[treename]
estroyed.
MME 500107: TRIJNCA'IE
XO File reference
ST STATUS, RESET STATUS, TPJJNCATE (or SCRA'raI), and SET
[truncate (slave end)]
as a special case of the TRIJNCA'IE canmand in which t.~e
master errl job that a TRUNCATE or SCPAro1
canmand
[slave errl issued TRUNCATE special]
[slave end issued TRIJNCATE special]
ave errl, a "slave-issued truncate" special is generated
enerates a "slave-issued truncate" special specifying a
i:er 14 (slave em issued TRUNCATE) at the master em.
ber 14 (slave end issued TRUNCATE) at the master end.

Page 304

Pub. 1059

47

25 . 53

47

34

22

24

48
29

102

27

23 17
127 20
12
157

38
41

12

28

9

46

16 15
24 14
17 23
43 17
81 29
131

28

233
231
229

45

157
229
156
100

46
47
18

37
41
32
36 .

162
148 34
148
152
153
156
162

233
167
175
181
144

11
28

22

29

4S

144
167

181 54
182 11
144 27
167

INDEX

~

144
14
181
188

line

'NOrd

28
38
48
28
51
18
13

errupt will be zero (see TRUNCATE). If the canmunicati
plete op (~), overflow/truncate, or divide check faul
the Executive.
5.2.5 TRIJNCA'IE, SCRA'ICH, and SET POI
e-type operation {DRIVE, TRUNCATE I SCF.MCH, or SET POIN
199
a RON, ERASE, UNCATAI..CG, TRUNCATE, SCRA'ICH, or REPLACE
84
to source file X3 Job type (bits 0-8) X4 Maximum a
137
Meaning
0 Accesses;'rype (see below)
1 Job len
137 45 ferences)
bits 32-35: type (see Chapter 9 for types)
85 11 3 are Al.'IDed with the jcb type bits allowed to the job i
184 15 hanged to a special file type called a "non-file" (13),
201 23
of the trap. - On a copy-type canmand which involves de
179 16 ECUEST STATUS MME). The type field of the status block
55 45 information or is zero. Type information has the folIo
149 19
the lower half contains type information or is zero.
38 19 set (bits 0-8)
The job type of a running job consists
126 17
~r:
preference ar:d type of catalog
5 Opper:
121 51
Lower: preference ar..d ~jpe of file/catalcg
6 Upp
126 46
Lower: preference ar:d type of file/catalcg
6 Upp
250 11 ence o.
An object's type to a large extent dete!1lli
246 33 ors.
TYPE - The file's t:1P€. Described below for fil
245 25
TYPE: bits 32-35
5 ENTRIES
247 45
TYPE: bits 32-35
6 OLU DL
247 25
to determine peripheral types, etc., most jobs may not
224 43 t-ready drive.
Console Typewriter
Note ~~at unlike
199
[file type]
169 11
MME 500104: ONCATAI..CG
XO File reference
81 49 quence of conma.nds OPEN, UNC'AT.AI..CG, and CLCSE.
Upon c
199 51' ameter for a RON 1 ERASE, L1NCAT1-\LCG, TRUNCATE f SCPAro:! I
137 53 cmmand (q. v. ) .
Lower: Unique Identifier. This field
149 16 st point to two words of usage and dates information.
60 19
words
contain the new usage information for the file
55 41 5 p:dnts to two words of usage information to l:e placed
121 53 per: ceded date of· last use
Lower: ceded date of la
126 48 per: ceded date of last use
Lower: ceded date of la
-248 42 sting discussion.
DAYS-OSEe
The DAYS-USED field con
125 21 ed in X6. The date last used ard date last m:dified in
56 22
zero, and the date-last-used and date-1ast~ified ar
56 18 ize the file's Date Last Used attribute. The lower hal
121 50
word
5 Opper: . days-used count
~r :
preferenc
126 45
word
5 tJt:per: days-used count
Lower: preferenc
149 18 d to set the file's days-used count; the lower half con
55 43 d to set the file's days-used counter (see Chapter 9).
149 20 ntains a ceded Date Last ased in the upp=r half and ccd
179 25 ds.
The ~ high-order user access bits (bits 9 and 1

Pub. 1059

Page 305

SYSrrEM PRCGRAMMING REEERENCE MANUAL

~

line

163 56
163 56
103 34
132 22
158 36
163 55
127 54
233 19
121
13 21
18 48
38

30

14 26
85 15
15 25
15 35
128 29
136 35
136 37
132 34
163 31
169 28
56
144
153
56
70
107

38
40
17
39

149

27

149
169

29

48
86
64
48

52
35
25

22
15
54

70
70

85
85
144
144
167

167
172

Page 306

Wl:)rd

a REQUEST STATUS. These user access bi ts are obtained
a REQUEST STATUS. These user access bi ts are obtained
~rd 1 of the trap, nine user access bits can be obtain
Wl:)rd 1 of the trap, nine user access bits can be obtain
~rd 1 of the trap, nine user access bi ts can be obtain
~rd 1 of the trap, nine user access bits can be obtain
k. In addition, the nine user access bits from 9-17 of
("*"), and is
a legal user number format the scanner
[DLU = date of last use]
all.
1.3 Slave Fault Vector
The first 40 (octal)
s place. No dirty fault vector aborts
are generated.
iss ion
2 Large State Vector permission (permits a s
e job had a "dirty fault vector" and is aborted; that i
enabled are Large State Vector, Priority Scheduling, C
oorted for a dirty fault vector. The simulated faults
uses in the slave fault vector. 1tk)rd 0 (the first wur
date, and the lower half-r~rd
contains the reel numbe
Job's remaining catalOj word allotment
1 Job I s rem
Job's remaining scratch word allotment
2 CRU limit
og first has its catalog word allotment decremented by
O:J first has its catalcg word allotment decremented by
/catalog has its scratch word allotment decremented by
/catalog has its scratch word allotment incremented by
ve its scratch (catalog) word allotment incremented by
nd will have its catalcg word allotment incremented by
he same tiIre its catalog word allotment is decremented
job's scratch (catalcg) word allotment is decremented
job's remaining scratch word allotment is decremented
header, and its catalcgword allotment is decremented
ation, the job's scratch word allotment is incremented
he same time its catalcg word allotment is incremented
ning scratch and catalog word allo~nts are added to t
The catalog and' scratch word allotments for thespawne
its scratch and catalog word allotments incremented by
[scratch word allotment]
[catalcg ~rd allotment]
[scratch word allotment]
(catalog quota = catalcg ~rd allotment]
[scratch quota = scratch word allotment]
[scratch VtOrd allotment]
[catalog ~rd allotment]
[scratch word allotment]
[catalog ~rd allotment]
[scratch word allotment]

Pub. 1059

~

line

172
16 29

~rd

192
·l93
177

21
33
28

69

19
42
26
41
II
42
18

[catalcg ~rd allotment]
e trap block (the return ~rd), and its Ie is reset to
es the use of the return word.
EAX6 TRAP point to
iptian of the two status words is given in Section 2.3.
[device status word]
MME 500134: WRITE
Xl Points to t:Ointer
)
14 W Slave issued write - notifies the master
forma tion with a COPY or WRITE cCrnmand, exactly as if t
If job A then issues a WRITE for ten ~rds, specifyin
n to the slave end via a WRITE or copy cCrnmand. In oth
destination) filers read/write pointer is used. This 0
[slave end issued WRITE special]
[slave em issued WRITE special]
t.) Job A then issues a WRITE to file reference number
words. A "slave-issued write" special interrupt is ge
FOnse to a f1 slave issued WRITE" special, it shculd issu
or 12 (slave em issued WRITE) at the master em. The
ber 12 (slave end issued WRITE) at the master em. The
should issue a copy (or WRITE) canmar:d transferri.i"1g da
d its variants, READ ar:d WRITE, are used to perform the
on file on a COPY, READ, w1UTE, or DRIVE canmar:d. The
e operation (COPY, READ, ~~, or REQUEST S~) issu
master
em job that a write-type cCrnmand was issue

Pub.lOS9

Page 307

23

16

22
37

200

171 II
22 17
179 51
193

53

138

29

68

56

69
171

171
177
175
18S
188
22

. . .

----- ---- - .- - - ----- ._-_ . . - --------- ---- ... . . , .. --··0

-'"'1 ......... :"' ......... "' . . . .

Please use cape to seal this form.

..............................

.............

II

NO POSTAGE
NECESSARY
IF M..L\ILED
IN TEE

UNITED
STATES
BUSINESS REPLY MAll
FIRST CUSS
PER..~IT NO. 21

H.~'IOVER,

. NH

POST. :\GE WILL. BE PAID BY ADDRESSEE

Editor
DTSS Incorporated
10 Allen Street
Hanover, NH 03735

. . . . . .. . . . . . . . . . . .. . .

-

.... . . .. . .. . .. ...... . . . ... .

System Programning Reference Manual

Pub. 1059

(31 OCT 79)

READER IS ro!1ENT FORM

We w:::>uld appreciate receiving corrections, criticisms, and
ccrnments concerning this publication. Please include specific
page and line references whenever possible. ,Your ccmrrents will
help us improve future editions'. urss Incorporated will be free
to use or distribute information you supply without incurring any
obligation whatever •. If the title at top of page is not for the
manual you are ccrnrrenting on, please give the following
information:
Title

-------------------------------------------------------Publication Number
----------------- Date-------------------

~~.
'-~.J..u;;..;.'f.J..;J

•

3. ;\-~C
ri'~~ ~~' '~~~
fJJ ~ ~ ~ ~

0
.

)

Thank 1'"OU for your cooper a ticn. Please fold on dott-od lines,
tape, ar.d mail. NO FOSTAGE NECESS~.RY IF MAILED IN TEE USA.
Opticnal -- Name: _______________________________
Phcne:
Mailing

~.cdress:

------------------------------

Computer
.C@) Shar~ng
. Services
Inc.
National Headquarters
2498 West Second Ave.
Denver, Colorado 80223
(303) 934-2381

Section 1.2

Control and Non-Control Executive
Multiple Processor Support

o

In single processor configurations, the CPU executes both
the Control and Non-Control EXEC.

o

If there are master mode tasks, the Control EXEC is
executed. If not, the Non-Control EXEC is executed (next
slave job is run).

o

In mUltiple processor configurations, one CPU is designated
the Master CPU. All others are Slave 'CPUs.

o

The Master CPU operates as in single processor
configurations, "executing the Control or Non-Control EXEC
when appropriate.

o

Slave CPUs only execute the Non-Control EXEC.

o

The Master CPU provides almost all master mode services.
Note that I/O operations are handled only by the Master CPU.

o

The Control and Non-Control EXEC communicate through the Run
Queue and Job Service Queue. The Control EXEC places jobs
to be run by the Non-Control EXEC on the Run Queue. The
Non-Control EXEC places jobs which require Control EXEC
processing on the Job Service Queue.

o

Access· to both queues is serialized by a semaphore. This
allows asynchronous access by multiple, independent CPUs.

o

Since the Non-Control EXEC is re-entrant, it can be executed
simultaneously by mUltiple CPUs.

Doc.B017

DTSS Trade Secret

Page 63

DTSS SYSTEN HAINTEKANCE COURSE

Executive Segments

~:rlCh(J~
---~ olD rJ~
~

1

r;::-.......j ........

Page 64

0

INSERT

0

LOGFILE

0

LCORE

0

MMES

0

CATALOG

0

NCON1'ROL

0

CONSOLE

0

PIO

0

Copy

0

S'~APSKED

0

DISKALC

0

UTIL

0

GLOBAL

0

DSTART

0

LISTALC

0

TSTART

0

LOG

0

BOOTCARD

DTSS Trade Secret

Doc.BOI7

DTSS·SYSTEM

CCURSE

~~IKTEKANCE

Catalog Search Algorithm

Physical Layout of a Catalog

HFD

)

HEADER

(HFD HEADER)

M

ALOC

o

o

ENTRY 1
HOLE
ENTRY

ACC P T
ENTRIES

2

o
ENTRY ·3

LEN

EUTRY 4

DA

12 WORDS FOR DA'S

SHSY
SCAT

(ENTRY FOR THE
CATALOG SHSYSCAT)

ENTRY 5
HOLE
ENTRY 6

)

ENTRY 7

(PW)
ACe
D-ul PIT
DLU

I

DU1

HAX
DA
t-----f

ENTRY N

---~)

WORD FOR DA

ENVI
NFO

D-U = DAYS USED

(PW)

P

= PREF

T

TYPE

DA

Page 96

1

,--_ _ _ __.

DTSS Trade Secret

o - 27 WORDS FOR DA'S

Doc.B017

.

'.-'~"'~~""",~."'.""'~.~~"

'

,---------

.•.......

"XECUTIVE

t,. •

D7SS

.

..

TrrJ~.

Secret

Doc.8017



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.3
Linearized                      : No
XMP Toolkit                     : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37
Producer                        : Adobe Acrobat 9.31 Paper Capture Plug-in
Modify Date                     : 2010:03:17 18:51:21-08:00
Create Date                     : 2010:03:17 18:51:21-08:00
Metadata Date                   : 2010:03:17 18:51:21-08:00
Format                          : application/pdf
Document ID                     : uuid:1a1f58e4-cfca-4884-bcd2-b45238d97ad3
Instance ID                     : uuid:2ffb3db9-7328-4715-8f67-c9e90727dd5f
Page Layout                     : SinglePage
Page Mode                       : UseOutlines
Page Count                      : 315
EXIF Metadata provided by EXIF.tools

Navigation menu