GC26 3717 10_1130_Disk_Monitor_System_Version_2_Programmers_and_Operators_Guide_Jun74 10 1130 Disk Monitor System Version 2 Programmers And Operators Guide Jun74

GC26-3717-10_1130_Disk_Monitor_System_Version_2_Programmers_and_Operators_Guide_Jun74 GC26-3717-10_1130_Disk_Monitor_System_Version_2_Programmers_and_Operators_Guide_Jun74

User Manual: GC26-3717-10_1130_Disk_Monitor_System_Version_2_Programmers_and_Operators_Guide_Jun74

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

DownloadGC26-3717-10_1130_Disk_Monitor_System_Version_2_Programmers_and_Operators_Guide_Jun74 GC26-3717-10 1130 Disk Monitor System Version 2 Programmers And Operators Guide Jun74
Open PDF In BrowserView PDF
File No. 1130-36
Order No. GC26-3717-10

Systems Reference Library

IBM 1130 Disk Monitor System, Version 2,
Programmer's and Operator's Guide
Program Numbers: 1130-0S-005
1130-0S-006

Eleventh Edition (June 1974)

This is a reprint of GC26-3717-9 incorporating changes released in Technical Newsletter GN34-0183
dated February 1974.
This edition applies to version 2, modification 12, of the IBM 1130 Disk Monitor Programming System;
to version 1, modification 5, of the IBM 1130 Remote Job Entry Work Station Program, and to all
subsequent versions and modifications until otherwise indicated in new editions or Technical Newsletters.
Changes are periodically made to the information herein. Before using this publication in connection
with the operation of IBM systems, consult the latest SRL Newsletter, GN20-1130, for the editions
that are applicable and current.
Text for this manual has been prepared with the IBM Selectric ® Composer.
Some illustrations in this manual have a code number in the lower corner. This is a publishing control
number and is not related to the subject matter.
Requests for copies of IBM public'ations should be made to your IBM representative or to the IBM
branch office serving your locality.
A form for readers' comments is provided at the back of this publication. If the form has been removed,
send your comments to IBM Corporation, Systems Publications, Department 27T, P. O. Box 1328,
Boca Raton, Florida 33432.

©Copyright International Business Machines Corporation 1966, 1968,1969,1970,1971,1972
ii

Preface

This publication contains reference information for controlling and operating the 1130
Disk Monitor System, Version 2. The publication assumes you are familiar with the programming language needed to do your jobs.
Chapter 1 of this publication describes how you use this book. The rest of the chapters:
• Describe the disk monitor system (DM2) programs and disk areas
• Describe the control records for controlling the functions of the disk monitor system
• Provide tips and techniques for more efficient use of DM2
• Provide sample operating procedures for loading, reloading, and using DM2
• Describe the 1130 RJE Work Station Program
The minimum system configuration required to operate the IBM 1130 Disk Monitor
System, Version 2, Program Number 1130-0S-00S (card input/output) is:
• An IBM 1131 Central Processing Unit, Model 2A or 4A (with an internal single disk
storage drive and 4096 words of core storage)
• An IBM 1442 Card Read Punch, Model 6 or 7, or an IBM 2S01 Card Reader, in
combination with an IBM 1442 Card Punch, Model S

or
• An IBM 1131 Central Processing Unit, Modell B (with 8192 words of core storage)
• An IBM 1133 Multiplex Control Enclosure
• An IBM 2311 Disk Storage Drive, Model 12
• An IBM 1442 Card Read Punch, Model 6 or 7, or an IBM 2S01 Card Reader, in
combination with an IBM 1442 Card Punch, Model S
The minimum system configuration required to operate the IBM 1130 Disk Monitor
System, Version 2, Program Number 1130-0S-006 (paper tape input/output) is:
• An IBM 1131 Central Processing Unit, Model 2A (with an internal single disk storage
drive and 4096 words of core storage)
• An IBM 1134 Paper Tape Reader
• An IBM lOSS Paper Tape Punch
The following publications provide further information about the 1130 computing system:

IBM 1130 Functional Characteristics, GA26-S881
IBM 1130 Operating Procedures, GA26-S717
IBM 1130/1800Assembler Language, GC26-3778
IBM 1130/1800 Basic FORTRAN IV Language, GC26-371S
IBM 1130 RPG Language, GC21-S002
IBM 1130 Subroutine Library, GC26-S929
IBM 1130 MTCA IOCS Subroutines, GC33-3002
IBM 1130 Synchronous Communications Adapter Subroutines, GC26-3706
IBM 1130/1800 Plotter Subroutines, GC26-37SS
IBM System/360 Operating System and 1130 Disk Monitor System: System/360 1130
Data Transmission for FORTRAN, GC27-6937
IBM System/360 Operating System and 1130 Disk Monitor System: User's Guide for Job
Control from anlBM 2250 Display Unit Attached to an IBM 1130 System, GC27-6938
IBM System/360 Operating System: Remote Job Entry, GC30-2006
Publications that provide information about IBM 1130 COBOL, a program product, are:

IBM 1130 COBOL General Information Manual, GH20-0799
IBM 1130 COBOL Language Specifications Manual, SH20-0816
Preface

iii

Summary of Amendments .

vii

Chapter 1. How to Use This Publication

1-1

Chapter 2. Disk Organization .

System Cartridge
. .
Cylinder 0 on a System Cartridge
IBM System Area on a System Cartridge
Fixed Area .
User Area and Working Storage "
Nonsystem Cartridge
...
Cylinder 0 on a Nonsystem Cartridge
.
IBM System Area on a Nonsystem Cartridge
Summary of the Contents of Disk Cartridges

2-1
2-4
2-4
2-6
2-9
2-9
2-12
2-12
2-13
2-14

Chapter 3. Monitor System Programs

3-1

Supervisor
Resident Monitor.
.
.
Disk-resident Supervisor Programs
Disk Utility Program
General Functions of DUP
Assembler
. . . .
FORTRAN Compiler .
RPG Compiler .
Core Load Builder .
.
Construction of a Core Load
Core Image Loader .

3-2
3-2
3-3
3-4
3-4
3-5
3-6
3-6
3-7
3-7
3-13

Chapter 4. Monitor System Library

4-1

System Library ISS Subroutines .
System Library Utility Subroutines
System Library Mainline Programs
IDENT
DISC.
DSLET
ID
COpy
ADRWS
DLCIB
MODIF
MODSF
DFCNV
PTUTL

4-2
4-4
4-5
4-5
4-6
4-7
4-7
4-7
4-8
4-8
4-8
4-14.1
4-20
4-25

Chapter 5. Control Records

Monitor Control Records
II JOB
II ASM .
II FOR .
II RPG
II COBOL
II DUP
II XEQ .
II * (Comments)
II PAUS .
II TYP
II TEND.
II EJECT
II CPRNT
II CEND .

5-1
5-1
5-2
5-5
5-6
5-6
5-6
5-6
5-7
5-9
5-10
5-10
5-10
5-11
5-11
5-11

Supervisor Control Records
*LOCAL.
*NOCAL
*FILES
*G2250 .
*EQUAT
DUP Control Records
Altering LET and FLET
·Information Transfer and Format Conversion
Restrictions Caused by Temporary Mode
"'DUMP.
"'DUMPDATA
"'DUMPDATAE
"'DUMPLET.
"'DUMPFLET
"'STORE.
"'STOREDATA .
"'STOREDATAE
"'STOREDATACI
"'STORECI
"'STOREMOD
"'DELETE
"'DEFINE
"'DWADR
"'DFILE .
"'MACRO UPDATE
Assembler Control Records
"'TWO PASS MODE
"'LIST
"'XREF
"'LIST DECK
"'LIST DECK E .
"'PRINT SYMBOL TABLE
"'PUNCH SYMBOL TABLE
"'SAVE SYMBOL TABLE.
"'SYSTEM SYMBOL TABLE
"'LEVEL.
"'OVERFLOW SECTORS .
"'COMMON.
"'MACLIB
FORTRAN Control Records
"'IOCS
"'LIST SOURCE PROGRAM
"'LIST SUBPROGRAM NAMES .
"'LIST SYMBOL TABLE
"'LIST ALL.
"'EXTENDED PRECISION
"'ONE WORD INTEGERS
"'NAME.
** (Header Information)
'" ARITHMETIC TRACE
"'TRANSFER TRACE .
"'ORIGIN
RPG Control Card .
End-of-File Control Card

.

5-12
5-13
5-14
5-15
5-16
5-17
5-18
5-20
5-20
5-22
5-22
5-24
5-26
5-28
5-29
5-30
5-33
5-34
5-37
5-38
5-42
5-44
5-45
5-47
5-48
5-49
5-50
5-52
5-53
5-56
5-57
5-59
5-59
5-59
5-60
5-60
5-6.1
5-61
5-63
5-63
5-64
5-65
5-66
5-66
5-67
5-67
5-68
5-68
5-69
5-69
5-70
5-70
5-71
5-74
5-74

iv

Chapter 6. Programming Tips and Techniques

6-1

Tips on Monitor Control and Usage ,
Stacked 10b Input Arrangement ,
How to Use Temporary Job Mode
Using the Disk I/O. Subroutines
Restoring Destroyed Cartridges , , , . .
How to Avoid o.verprinting When Using // CPRNT
How to Avoid o.verprinting When Linking Between
Programs
,
Usage of the EJECT Monitor Control Record ,
Duplicate' Program and Data File Names
, .
Disadvantages of Storing a Program in DCI Format
Size Discrepancies in Stored Programs
Dumping and Restoring Data Files
Use of Defined Files
Mainline Programs that Use All of Core
The Use of Lo.CALs
Lo.CAL-CalIs-a-LOCAL
Lo.CAL and No.CAL Control Record Usage
The Use of NOCALs
The Use of So.CALs
Reading a Core Map and a File Map
Locating Fo.RTRAN Allocation Addresses
Reading the Transfer Vector
SYSUP
Data File Processing
Fo.RTRAN Disk File o.rganization and Processing.
Assembler and RPG Disk File o.rganization and
Processing ,
Calculating Sequentially o.rganized and ISAM File
Sizes
Contents of an ISAM File .
Deleting Duplicate Records Caused by a Disk Error
During an ISAM Add o.peration
Tips for Assembler Language Programmers .
Grouping of Assembler Mnemonics ,
Assembler Program Use of Index Register 3
Double Buffering in Assembler Programs
Assembler Program Use of 1403 Conversion
Subroutines
Writing ISSs and ILSs .
Assembler INT REQ Service Subroutine
Tips for Fo.R TRAN Programmers
Tips for Use of the EQUAT Control Record
Invalid Characters in Fo.RTRAN Source Cards .
Fo.RTRAN o.bject Program Paper Tape Data Record
Format,
Keyboard Input of Data Records During Fo.RTRAN
Program Execution
Fo.RTRAN Program Control of the Console Printer
Length of Fo.RTRAN DATA Statement
/ / Records Read During Fo.RTRAN Program
Execution .
Fo.RTRAN I/O. Errors,
Dumping Fo.RTRAN DSF Programs to Cards
RPG o.bject Program Considerations .

6-1
6-1
6-4
6-4
6-5
6-5

Chapter 7. Operating the 1130 Disk Monitor System

Readying the
Readying the
Readying the
Readying the
Readying the
Readying the
Readying the
Readying the
Readying'the
Readying the
Readying the

1131 Central Processing Unit
2310 Disk Storage Drive
2311 Disk Storage Drive
1132 Printer.
1403 Printer,
1442 Model 6 and 7 Card Read Punch
1442.Mode15 Card Punch,
2501 Card Reader ,
1134 Paper Tape Reader
1055 Paper Tape Punch
1627 Plotter.

6-5
6-5
6-6
6-7
6-7
6-8
6-9
6-9
6-9
6-10
6-10
6-11
6-13
6-13
6-18
6-19
6-20
6-23
6-23
6-27
6-29
6-31

Readying the 1231 o.ptical Mark Page Reader
Cold Start Procedure
Card System Cold Start Procedure
Paper Tape System Cold Start Procedure
Using the 1130 with the Monitor System
Entering Jobs from the Card Reader.
Entering Jobs from the Paper Tape Reader
Entering Jobs from the Console Keyboard
Functions of Console o.perator Keys During Monitor
System Control
Displaying or Altering the Contents of a Selected Core
-Location
Manual Dump of Core Storage

7-8
7-9
7-10
7-10
7~11

7-11
7-11
7-11
7-12
7-13
7-13

Chapter 8. Monitor System Initial Load and System
Reload

8-1

IBM-Supplied System Loader Control Records
SCo.N and TERM Control Records
Phase Identification (PHID) Control Records
Type 81 Control Record
System Loader Control Records that you Punch
Load Mode Control Record
System Configuration Control Records
Co.RE Control Record.
Preparation of Load Mode and System Configuration
Control Tapes .
Card System Initial Load o.perating Procedure
Card System Reload o.perating Procedure
Card System Preload o.perating Procedure
Paper Tape System Initial Load o.perating Procedure
Paper Tape System Reload o.perating Procedure

8-2
8-2
8-3
8-7
8-7
8-8
8-9
8-10
8-10
8-15
8-19
8-25
8-28
8-33
9-1

Chapter 9. Stand-alone Utility Programs

6-34
6-35
6-35
6-35
6-35
6-37
6-37
6-45
6-48
6-48
6-49
6-49
6-50
6-50
6-51
6-51
6-51
6-52
6-52
7-1
7-2
7-3
7-3
7-4
7-4
7-4
7-5
7-5
7-5
7-6
7-7

Console Printer Core Dump
Printer Core Dump Program
Disk Cartridge Initialization Program (DCIP)
Disk Initialization Subroutine
Disk Copy Subroutine .
Disk Dump Subroutine
Disk Patch Subroutine .
Disk Analysis Subroutine
Disk Compare Subroutine ;.
DCIP o.perating Procedures
Paper Tape Reproducing Program.
Stand-alone Paper Tape Utility Program (PTUTL)

9-1
9-4
9-8
9-8
9-8
9-9
9-9
9-9
9-9
9-9
9-42
9-46

Chapter 10. Remote Job Entry Program

10-1

Machine and Device Requirements
Communication Considerations
Communication Considerations for Switched Lines
Input at the Work Station .
Generation of the 1130 RJE Work Station Program
JECL for the 1130 Work Station
End-of-File Indicators .
o.utput to the Work Station
Discontinuing and Continuing o.utput
User-Exit Subroutine
o.perating Procedures
Work Station Startup
The Null Command
Console Keyboard Procedures
Error Recovery Procedures
Restart Procedures .
Messages Sent to Work Stations
RJE Program Console Entry Switches
Error Statistics

10-1
10-1
10-2
10-2
10-3
10-5
10-6
10-6
10-7
10-8
10-9
10-9
10-10
10-10
10-11
10-11
10-12
10-12
10-12

Contents

v

Appendix A. Monitor Syst9m Operational and Error
Messages;

Assembler Error Codes and Messages.
FORTRAN Messages and Error Codes
DUP and MUP Messages and Error Messages.
System Loader Messages and Error Messages
Satellite Graphic Job Processor Error Messages
RJE Messages and Error Messages .
Supervisor Messages and Error Messages .
RPG Compiler Messages and Error Notes
Core Load Builder Messages
Auxiliary Supervisor Error Messages .
Monitor System Library Mainline Programs Messages and
Error Me:ssages .
IDENT Messages
DISC Messages and Error Messages
ID Messages and Error Messages .
COPY Messages and Error Messages
DLCIB Messages and Error Messages
MODIF Messages and Error Messages
MODSF Messages and Error Messages
DFCNV Messages and Error Messages

Appendix F. Core Dump .

F-I

Appendix G. Resident Monitor (Including Table of
Equivalences) .

G-I

A-2<1

Appendix H. Monitor System Sample Programs

II-I

A-26
A-27
A-35
A-3H

1. FORTRAN Sample Program
FOR fRAN Sample Program Run on 4K
FORTRAN Sample Program Run on 8K
2. Assembler Sample Program
3. RPG Sampie Program .
4. Using FORTRAN Unformatted I/O
5. Processing on One Disk Drive a File that Extends over
Two Cartridges.
6. Processing on Two Disk Drives a File that Ex tends over
Two Cartridges.
7. Calculating ISAM File Parameters.

B-1
B-2

A-L

A-l
A-7
A-I j

A-5'~

A-Sa
A-59
A-59
A-59
A-60
A-60
A-6L

A-6t
A-6S
A-67

Appendix B. Monitor System Error Wait Codes

B-l

Cold Start Program Error Waits
ISS Subroutine Preoperative Error Waits.
I/O Device Subreutine Errors .
1442 Card Subroutine Errors .
2501 Card Subroutine Errors.
Console Printer Subroutine Errors
Paper Tape Subroutine Errors
Card Core Image Loader Wait Code
. .
Paper Tape Utility Program (PTUTL) Error Wait Codes
FORTRAN I/O Wait Codes
RPG Object Program Wait Codes .

B-L

B-'"
B-5
B-S
B-B
B-B
B-9
B-9
B-9

B-I0
B-12

Appendix I. Formats

Disk Formats
Card Formats
Paper Tape Formats
Print Formats
Data Formats

11-5

11-7
H-9

H-12
B-13

H-16
I1-17
I-I
1-2
1-6
1-11
1-13

I-IS

Appendix J. Field Type Examples for DFCNV .

J-l

I-Field Type .
J-Field Type .
R-Field Type
B-Field Type
C-Field Type
D-Field Type
E-Field Type
F -Field Type
X-Field Type

1-1
1-2
1-2
1-4
J-4

Appendix K. Decimal and Hexadecimal Disk Addresses

K-l

J-5

J-6
J-6
J-7

Appendix C. Monitor System Library Listing

C-

Appendix D. LET/FLET

D-t

Appendix L. Disk Storage Unit Conversion Factors

L-J

LET/FLET Disk Format
LET/FLET Dump Format

D-l
D_'l

Appendix M. Character Code Set

M-I

Appendix E. System Location Equivalence Table ISLET) .

E-J.

Glossary-Index

X-I

vi

.

Summary of Amendments

GC26-3717-9 UPDATED BY VERSION 2 MODIFICATION 11
2311 Disk Storage Drive

New Hardware Feature. The 2311 Disk Storage Drive is a new feature that adds a larger
online storage capacity and quicker online storage retrieval.
DCIP Function

New Programming Feature. The' DCIP initialize and copy functions now have a wait for
verifying that the console entry switches you turn on for the physical drive number and
cartridge ID are correct before initialization and copying begins.
FORTRAN Messages

New Programming Feature. Messages describing errors in FORTRAN statements now indicate which statement is in error.

Summary of Amendments

vii

viii

Chapter 1. How to Use This Publication

Chapters 2, 3, and 4 include information for the systems planner who is interested in the
contents and organization of disks, core storage, and the functions of the programs and
storage areas that comprise the IBM 1130 Disk Monitor System, Version 2. The information
in these chapters assists you in planning the contents of your disks, as well as
maintaining them. The disk maintenance programs are described in Chapter 4.
Chapters 5 and 6 contain information that is frequently referenced by programmers.
Chapter 5 contains descriptions of all control records that control the functions of the
disk monitor system (DM2). Use the programming tips and techniques in Chapter 6 for
more efficient use of DM2.
Chapters 7, 8, and 9 include operating information for using the disk monitor system.
Chapter 7 contains procedures for readying the devices that are a part of your computing
system, for performing a cold start of the monitor system, for entering jobs and for
displaying, altering, and dumping core storage.
Sample procedures for loading and reloading the system are shown in Chapter 8. You may
use these operating procedures as they are presented, or modify them to meet the needs
of your computing system.
Chapter 9 describes stand-alone utility programs. These programs provide for dumping
core storage to a print device, for initializing, copying, patching, analyzing, dumping and
comparing disks, and for punching paper tapes. Operating procedures for using
the utility programs are listed.
The functions of the flowchart blocks that are used in the sample procedures in Chapters
7,8, and 9 are:

The steps of the procedure that
you perform. Each block contains
a heading that describes the
purpose of the block.

,..---------,
A system action that occurs
I

I

I

during a procedure.

I

I _____.___ JI
L·

References procedures that
are described elsewhere in
this publication.

How to Use 'This Publication

1-1

Chapter 10 describes the 1130 RJE Work Station Program.
When errors occur during monitor system processing, refer to Appendix A for error
messages and codes, and to Appendix B for wait codes displayed on the console display
panel.
The remaining appendixes contain information that you will need to reference at various
times, such as, the names of the programs and subroutines in the system library and
listings of LET, FLET, SLET, the resident monitor, and sample programs.
The terms disk, disk cartridge, and cartridge are used in this publication to refer to the
single disk in an IBM 2315 Disk Cartridge or to anyone of the 3 or 5 usable disks in
an IBM 1316 Disk Pack, Model 12 or 11, respectively. Each usable disk in a 1316 Disk
Pack is treated by DM2 as one 2315 disk, thus:

A disk in an IBM 1316 Disk Pack is the same as one IBM 2315 Disk Cartridge.

Each disk in the 1131 CPU and 2310 Disk Storage or 2311 Disk Storage Drive is assigned
a physical drive number when the devices of an 1130 computing system are installed.
Physical drive numbers are assigned in this order:

i

Disk locations

r-----.r------1131 CPU

Physical drive num,be
jlflW!F"4ml"*'_WM*~r

~I!m ~ ~li~%:@;7:I_.i.1.t *

o

5

First 2310, first disk

10
_______

.. '~.~. :;

.'

~

~

First 2311, first disk
First 2311, second disk
First 2311, third disk*
First 2311, fourth disk·
First 2311, fifth disk
Second 2311, first disk
Second 2311, second clisk
Second 2311, third disk *
Second 2311, fourth disk*
Second 2311, fifth disl<

First 2310, second disk
Second 2310, first disk
Second 2310, second disk

I

I

~ul=
9*

",'.

I nternal disk

1!
2
I'.
3*
4*

2310 Disk Storage or 2311 Disk Storage Drivl~

"' /-~'_.~ '¥"'w.< ,q.r@I[ff"~Tl:MI.I.W',~mW?.....::

*Fourth disk ---lIi-liiIo.....:'
Fifth disk - - -......~

*The third and fourth disks are not used if
the 2311 Disk Storage Drive is a Model 12.

Disk Organization

2-1

The storage area of all disks used by DM2 is arranged into circular patterns called tracks.
Two tracks one above the other constitute a cylinder. A disk contains 203 concentric
cylinders; 200 of these are available to the monitor system. The 3 remaining are reserved
for use if defective cylinders are detected. The following illustrates the innermost and the
outermost cylinders on a disk.
Innermost cvlinder
Upper surfClce track

203 two-track

Lower surf,ilce track

(
Outermost cylinder / '
Upper surface track

I

Lower surface track' (

Note. The thickness of the disk has been greatly exaggerated in order to
sholN the relative positions of the upper and lower surface tracks.

To complete the picture, the 201 intermediate cylinders, or pairs of tracks, should be
visualized; they are omitted for the sake of clarity of the diagram.
For convenience in transferring data between core storage and disk storage, each track is
divided into 4 equal segments. These segments are called sectors. Thus, each cylinder consists of eight sectors. Sectors 0 through 3 divide the upper surface track and 4 through 7
dfvide the lower. The following illustrates how sectors are numbered.

Sectors 0 through 3
(upper surface tracks)

Sectors 4 through 7
(lower surface tracks)-

2-2

A sector contains 321 data words. The first data word is used for the sector address. This
address is the number of that sector, r0unted in sequence from sector 0 on cylinder o.
Another unit of storage within a sector is the disk block. Each sector is divided into 16
disk blocks, each 20 words long. A disk storage word contains 16 data bits. The organizational components of disk storage are shown by the following chart.

8~
Bits
Data words
Disk blocks
Sectors
Tracks

Word

Disk block

Sector

16

320

5,112

20

320
16

1

Track

Cylinder

Disk

20,480

40,960

8,192,000

1,280

2,560

512,000

64

128

25,600

4

8

1,600

2

400

'-

-200

Cv Ii nders

1

These follow the first actual word of each sector, which is used for the address.

Before continuing with the descriptions of the contents of disk cartridges used by the
monitor system, several terms must be defined.
• System cartridge. An initialized cartridge that contains the IBM 1130 Disk Monitor
System. If your 1130 has only one disk (the internal disk in the 1131 CPU), all
cartridges must be system cartridges.
• Nonsystem cartridge. An initialized cartridge that does not contain the monitor system.
• Master cartridge. A system cartridge that is designated as logical drive 0 by the cold
start program, or by a monitor / / JOB control record. This cartridge continues in use
until another cold start, another / / JOB control record, or a CALL instruction to
SYSUP switches control to a different system cartridge. The disk on an 1130 with
only one disk drive (the internal disk in the 1131 CPU) is both a system and a master
cartridge.
• Note: If your system has only one disk drive (the internal disk in the 1131 CPU, or
one 23 U), you should cold start after changing cartridges, or packs, to avoid possible
errors in the location of disk areas on system cartridges.
• Satellite cartridge. On an 1130 with more than one disk drive, this is any cartridge that
is not the master cartridge. This cartridge can be either a system or a nonsystem cartridge.
The organization of programs and areas on system and nonsystem cartridges is described
and illustrated in the following text.

Disk Organization

2-3

SYSTEM CARTRIDGE

A system cartridge is divided into 5 logical areas as illustrated by the following:
Fixed
area

Cyl 0

",
C

FB4

LJ.. .L.LL!.... .!.mM:.:.:.,. .!.w.!... .,Ll. .L.L·:·

I

~

User Working
area storage

r'x"·:r. :· . ·w.~

system area

Each area is described in the following text. The last section of this chapter, "Summary of
the Contents of Disk Cartridges," contains a chart that indicates when these areas are
present, or can be removed, on system cartridges.
Cylinder 0 on a System Cartridge

The contents of cylinder 0 on a system cartridge are defined during disk initialization and
system load. The contents of cylinder 0 are as follows:
CylO

CJ
I
I
I
I

Sector

2-4

10 and
cold
start
prog.

o

Sector
--

--- ---

--

0
2

3,4,5
DCOr,,,1

Resident
image
2

SLET

Reload
table

Page
heading

3,4,5

6

7

6
7

Label
@IDAD
@DCOM
@RIAD
@SLET
@RTBL
@HDNG

The following is a discussion of each sector.

sector @I DAD

Sector @IDAD on a system cartridge consists of:
• The defective cylinder table
• The cartridge ID
• The cartridge copy code
• The disk type
• A reserved area
• The DISKZ system device subroutine
• The cold start program
The contents of sector @IDAD on a system cartridge are shown in the following illustration.
(
DC YL
defective cylinder table

r-

(cartridge I D)
CION
COpy
(copy code)
Reserved
(disk'type)
DTYP

Reserved

Words:

0

1

2

3

4

5

6

7

DISKZ (this copy of
DISKZ is used only
during the cold start
procedure.)

29 30

Cold
start
program

269 270

319

The defective cylinder table (DCYL) contains the addresses of the first sector of any
cylinders that are not capable of accurately storing data. This table is defined during disk
initialization. If no defective cylinders are found, each of the 3 words of DCYL contains
/0658 (hexadecimal). A cartridge with a maximum of 3 defective cylinders can be used
by the monitor system.
The cartridge ID (CIDN) is a hexadecimal number in the range /0001 through /7FFF
that uniquely identifies the cartridge. The ID is placed on a cartridge when the cartridge is
initialized.
The cartridge copy code (COPY) identifies the copy number of a cartridge that has been
copied from another cartridge. When a disk is initialized, this word is zero. Each time the
disk is copied, word 5 of the cartridge being copied to is incremented by one; that is, the
copy code of the receiving disk is one greater than the copy code of the source cartridge.
The reserved areas of sector @IDAD are for possible future expansion.
The disk type (DTYP) is a code that indicates whether or not the disk is a system cartridge.
The appropriate code is placed in DTYP when the cartridge is initialized by DCIP or DISC
and when the monitor system is loaded onto the disk.
The DISKZ subroutine is stored in sector @IDAD and in the system'device subroutine
area in the IBM system area (see "IBM System Area on a System Cartridge" in this chapter) when the monitor system is loaded on the disk. The cold start program uses DISKZ
stored in sector @IDAD. All other times that DISKZ is called, the copy stored in the system device subroutine area is used.
The cold start program is placed in sector @IDAD when the monitor system is loaded onto
the disk.

Disk Organization

2-5

sector @DCOM

Sector 1 contains the disk communications area (@DCOM). This area contains parameters
that are passed from one monitor program to another. These parameters contain infonnation such as:
• The number of LOCALs associated with the program in working storage
• The temporary job indicator switch
• The cartridge IDs for cartridges on the system
• The format of programs in working storage for all cartridges on the system
• The block count of the programs in working storage for all cartridges on the systc,m
These parameters are list'ed in Appendix G. They are set and reset during the proces!:ing of
JOB monitor control records or during the DCOM update operation called SYSUP. The
parameters obtained from nonsystem disks are merged into DCOM on the master cartridge
during one of the previous operations. The parameter table entries for the nonsystem disks
are cleared to zero.

sector @RIAD

Sector 2 contains the resident image (@RIAD). The resident image is a copy of the skeleton'supervisor and the COMMA portion of the resident monitor. (A description of the
resident monitor is in Chapter 3, "Monitor System Programs.") The resident image bused
to initialize the resident monitor during a cold start.

SLET

Sectors 3, 4, and 5 are the system location equivalence table (@SLET). SLET is composed
of an identification number, core loading address, word count, and sector address for
every phase of every monitor program. Chapter 4 contains infonnation about obtaining a
listing of SLET, and a sample of a SLET printout is in Appendix E.

sector @RTBL

Sector 6 is the reload table (@RTBL). This table is established during an initial system
load. @RTBL contains a 3-word entry for each monitor system program phase that requests SLET infonnation during a load or reload operation. Each entry consists of the ID
number of the requesting phase, the location in the requesting phase where the SLET information is to be placed., and the number of SLET entries to be inserted. The reload
table is updated during a system reload when phases that request SLET infonnation are
added or modified. The last entry in the reload table is followed by the hexadecimal word

/FFFF.
sector @HDNG

Sector 7 (@HDNG) is us(~d to store the heading that appears at the top of each page printed
by monitor programs other than RPG.
IBM System Area on a Svstem Cartridge
Monitor programs and disk areas are loaded onto a disk during a system load. Thlsentire
area is called the IBM system area, and is illustrated by the following:
System de'l'ice
subroutineli, DISK1,
DUP
SUP CLB DISKN, DISKZ
CI L RPG part 2 AS

o

e

Program product
FLET II contained on a disk only if a fixed area is defined on the disk.

See "Fixed Area" in this chapter.

The monitor programs in. this area are described in Chapter 3. These programs are:
• Disk utility program (DUP)
• FORTRAN compiler (FOR)
• COBOL compiler (COB) program product
• Supervisor (SUP)
• Core load builder (CLB)
• Core image loader (CIL)
• RPG compiler (RPG)
• Assembler (ASM)
The disk areas of the IBM system area are described in the following text.
system device
subroutine area

The system device subroutine area consists of the following:
• The subroutines used by the monitor programs to operate these print devices
1403 Printer
1132 Printer
Console Printer
• The subroutines used by the monitor programs to operate these I/O devices
2501 Card Reader/1442 Card Punch, Model 5,6, or 7
1442 Card Read/Punch, Model 6 or 7
1134 Paper Tape Reader/1055 Paper Tape Punch
Console Keyboard/Printer
• The I/O character code conversion subroutines used in conjunction with the I/O subroutines for these devices
2501 Card Reader/1442 Card Punch
1134 Paper Tape Reader/1055 Paper Tape Punch
Console Keyboard/Printer
• The disk I/O subroutines
DISKZ
DISK1
DISKN
All of the subroutines in the system device subroutine area, except the disk I/O subroutines, are naturally relocatable and are intended for use only by monitor programs. The
disk I/O subrou tines are located in this area rather than in the monitor system library
because they are processed by the core load builder differently from subroutines stored
in the monitor system library.
DISKZ is stored twice on a system cartridge; once in sector @IDAD with the cold start
program, and once in the system device subroutine area with DISK! and DISKN. Cold
start uses DISKZ in sector @IDAD; all other times that DISKZ is called, the copy that is
stored in the system device subroutine area is used.

cushion area

The cushion area immediately follows the system programs and provides for the possible
expansion of the monitor system programs in a reload operation. This area occupies the
remaining sectors of the last cylinder occupied by the system programs, plus the next
complete cylinder.

seRA

The supervisor control record area (SCRA) is the area in which supervisor control records
(LOCAL, NOCAL, FILES, G2250, and EQUAT) are saved. These records, except the
EQUAT record, are read from the input stream (following an XEQ or STORECI control
record) and are stored in the SGRA for osubsequent processing by the core load builder.
The processing of the EQUAT record is similar to that of the other supervisor control
records, but it is read from the input stream following a JOB control record.
Disk Organization

2-7

FLET

The fixed location equivalence table (FLET) is a directory to the contents of the fixed
area for the cartridge on which it appears. There is one FLET entry for:
• Each program stored in disk core image (DCI) format
• Each data file storeel. in disk data format (DDF)
• The padding required to permit a DCI program or data file to be stored beginning on
a sector boundary
Each FLET entry includes:
• The name of the DCI program or the data file
• The format of the program or data file
• The size, in disk bloeks, of the program or data file
• The disk block address of the program or data file
Each cartridge on which you define a fixed area has a FLET (see "Fixed Area" in this
chapter). Regardless of the fixed area sizes FLET occupies the cylinder preceding the be~
ginning of the fixed area.
The sector address of the first sector of FLET on a given cartridge is obtained from the
location equivalence table (LET). The last item (#FLET) in the first header line of a
LET dump contains this sector address. A listing of a LET/FLET dump is in Appendix D.

CIS

The core image buffer (CIB) is the disk area in which the portion of a core load that is
to reside in core storage below decimal location 4096 in a 4K system (decimal location
5056 in larger systems) is built by the core load builder. The CIB is also used by the core
image loader during the transfer of control from one link to the next to save any COMMON
defined below decimal location 4096 or 5056.

LET

The location equivalence table (LET) is a Guectory to the contents of the user area on the
cartridge. On a system cartridge, LET occupies the cylinder preceding the user area. There
is one LET entry for:
• Each program stored in disk system format (DSF)
• Each program stored in disk core image (DCI) format
• Each data file stored in disk data format (DDF)
• The padding required to permit a DCI program or data file to be stored beginning on
a sector boundary
Each LET entry include$:
• The name of the program or data file
• The format of the program (DSF or DCI) or data file
• The size in disk blocks of the program or data file
• The disk block addre:ss of the program or data file
A listing of a LET/FLET dump is contained in Appendix D. The starting location of the
beginning of LET on each disk on the system is included in the resident monitor.

24

Fixed Area
The fixed area (FX) is the area in which you store programs and data files when you want
them to occupy the same sectors at all times. Programs stored in this area must be in
disk core image (DCI) format. This is an optional area and is defined on any 1130 cartridge
by the use of the DEFINE FIXED AREA operation of the Disk Utility Program (DUP).
This DUP operation is also used to increase or decrease the size of the fixed area. (See
Chapter 3, "Monitor System Programs" for a description of DUP operations.) The contents
of the fixed area are illustrated by the following:
Fixed area
.:.:.:.:.:.:.:.:.:.:.:.:............................
Your programs
and data files

A program or data me stored in the fixed area starts at the beginning of a sector. When a
program or a data me is deleted from this area, the fIXed area is not packed. Programs and
data mes stored in this area reside at fixed sector addresses and can be referred to by
sector address.

User Area and Working Storage
UA

The user area (UA) on a system cartridge contains the monitor system library and programs
and data rues that you write and store there. Programs are stored in this area in disk
system format (DSF) or in disk core image (DCI) format. Data files are stored in disk
data format (DDF). The following illustrates the user area and working storage.

User area

Working
storage

Monitor system
library
Your programs
and data files

•

Disk Organization

2-9

The user area is defined on any 1130 cartridge during disk initialization. The monitor
system library is placed in this area during an initial system load. This area occupies as
many sectors as are required to contain the system library plus any user programs and/or
data files that are stored there.
When a program or a data file is entered, it is placed at the beginning of working storage;
that is, immediately following the end of the user area. The area occupied by the m!w program or data file is then incorporated into the user area during a store operation. Working
storage is decreased by the size of the program or data file. The following illustrates, the
contents of the user area and working storage before and after a store operation.
Floating
boundary
User area

r

-A

Bmoma[[[

store
operation

"

I
I

I
I
I

store
operation

Programs and data
previously stored

----"

I
I

I

II III II

---y

g

I Program I
lor data
to be
I
I stored I
I

User area

A

II'-v-'I

I

[[[

'-

,if

II III II

--y

I
I
I
r

Aft~.

Working storage

'\

I

I

I

I
I
I
I

I Working storage

:

Floating
boundary

,~

g

J

Programs and
data now stored

DSF programs are stored in the user area starting at the beginnning of a disk block; DCI
programs and data files are stored starting at the beginning of a sector.

2-10

The user area is packed when a program or data fIle is deleted from this area; that is, the
programs and data files are moved so as to occupy the area formerly occupied by the
deleted program or data file. During packing, DSF programs are moved to the first disk
block boundary in the vacancy; DCI programs and data files are moved to the first sector
boundary. All remaining programs and data files are similarly packed. The area gained by
packing the user area is returned to working storage as illustrated by:
Floating
boundary

I

User area

~______________~Jl~______________~~

t

-

Working storage

\1

A,____,

,

::::1111 II III II •
1'---------Y"...-------1----',I

II

I
I.
I

I

I

o2~:n(111

I

II

I

I
Floating
boundary

I

I
I

I

Stored programs
and data

I

User area

If III

I

II

I

I Working
I storage

I
I

1'_

\.'"------,.-----~,~
..' - '
y,
.'T'yPrograms and .
data now stored

I
t
Area made
available by
delete operation

ws

On all cartridges, working storage (WS) is the area that is not defined as cylinder 0, the
IBM system area, the fixed area, or the user area. Working storage is available to monitor
programs and user programs alike as temporary disk storage. This area extends from the
sector boundary immediately following the user area td the end of the cartridge.

Disk Organization

2-11

NONSVSTEM CARTRIDGE

A nonsystem cartridge on an 1130 that has more than one disk drive can be used exclusively for the storage of data and/or programs, and is called a satellite cartridge. The 5
logical areas of a nonsystem cartridge are:
Cyl 0

Fixed area

User area

Working
storage

-':':':'-:::::::~-::::::::"'h::~_:·:·:·:·:_·:·:·:·:,·:·:·:·:·:·:·~~%@**@rx<:w.-'·~:l
::::::::::~::::::

IBM

system area

The contents of cylinder 0 and the IBM system area are described in the following sections.
The contents of the fixed area, the user area, and working storage are the same as described
for system cartridges, except that the user area does not contain the monitor system
library. The last section of this chapter, "Summary of the Contents of Disk Cartridges,"
contains a chart that indicates when these areas are present or can be removed.
Cylinder 0 on a Nonsystem Cartridge

The contents of cylinder 0 on a nonsystem cartridge are established when the cartridge is
initialized, and are illustrated by:

n
CylO

I

. . . . . . . . . . . ---...

I

I
I 10 and
error
message
program
Sector

2-12

o

DeOM

LET
2-7

l

sector @I DAD

The first 8 words of sector @IDAD on a nonsystem cartridge are the same as described for
a system cartridge. The remaining words of this sector are a reserved area, an error message
program, and an error message. The error message is printed if an attempt is made to cold
start a nonsystem cartridge. This message and the program that prints it plus part of the
reserved area are overlaid by the cold start program and the DISKZ subroutine when the
monitor system is loaded onto a cartridge. Sector @IDAD on a nonsystem cartridge consists of:
OCYL
CION
COpy

defective cylinder table)
(cartridge 10)
(copy code)

Reserved
r--

OTYP

(disk type)

,
Error message
and error
message program

Reserved

Words: 0

1 2 3 4

5 6 7

269 270

319

sector @DCOM

The information in sector @DCOM of cylinder 0 on a nonsystem cartridge is similar to a
system cartridge. The difference is that the information on a nonsystem cartridge applies
only to that cartridge.

LET

The remaining sectors of cylinder 0 are the location equivalence table (LET) for the cartridge. The contents of LET are described under the description of the IBM system area
on a system cartridge.
IBM System Area on a Nonsystem Cartridge

The IBM system area of a nonsystem cartridge can contain the fixed location equivalence
table (FLET) and the core image buffer (CIB). This area is illustrated by:

FLET

CIS

system area

FLET

FLET is described under the description of the IBM system area on a system cartridge.
This table is on a nonsystem cartridge only if you define a fixed area on the cartridge.

CIB

The CIB is described under the description of the IBM system area on a system cartridge.
This area is optional on a nonsystem cartridge, and can be deleted with the disk maintenance program called DLCIB (see Chapter 4).

Disk Organization

2-13

SUMMARY OF THE CONTENTS OF DISK CARTRIDGE:S

Figure 2-1 is a chart of the contents of the 5 logical areas of system and nonsystem cartridges. This chart indicates when these areas are present on system and nonsystem cartridges, and when it can be removed if the areais optional.

Logical area

Subareas

Cylinder 0
IBM system area

Present
On system and nonsystem cartridges

DUP
SUP
ClB
System device subroutines
Cil
Cushion area

Only on s',stem cartridges

SCR,~

CIB

On system and nonsystem cartridges;
can be removed from nonsystem
cartridges

Assembler

Only on system cartridges; can be
removed

FORTRAN complier

Only on system cartridges; can be
removed

RPG compiler

Only on system cartridges; can be
removed

COBOL compiler
(pro"ram product)

Only on system cart:ridges; can be
removed

lET

On system and nonsystem cartridges

FlE'r

Only if a fixed area is defined by user

Fixed area (FX)

User programs
User data files

Only if defined by user

User area (UA)

Monitor system library
(only on system
cartridges)
User programs
User data files

On system and nonsystem cartridges.
As the result of a system load, the
UA contains the monitor system
library.

Working
storage (WS)

Figure 2-1. The 5 logical arc:~as of disk cartridges

2-14

On system and nonsystem cartlriages

Chapter 3. Monitor System Programs

The IBM 1130 Disk Monitor System provides continuous operation of the 1130 computing system with minimal setup time and operator intervention. The monitor system
consists of a system library and 7 interdependent system programs. The monitor system
programs perform monitor control functions and include:
• The supervisor (SUP), which performs the control functions of the monitor system
and provides the linkage between user programs and monitor programs.
• The Disk Utility Program (DUP), which performs operations that involve the disk,
such as storing, moving, deleting, and dumping programs or data files or both.
• The assembler (ASM), which translates source programs written in 1130 Assembler
language into object programs.
• The FORTRAN compiler (FOR), which translates source programs written in 1130
basic FORTRAN IV language into object programs.
• The RPG compiler, which translates programs written in 1130 RPG language into objec t programs.
• The core load builder (CLB), which constructs an executable core load from programs
in disk system format (DSF). The DSF program and all associated subprograms are
converted into disk core image (DCI) format, and the resultant core load is ready for
immediate execution or for storing as a core image program.
• The core image loader (CIL), which transfers core loads into core storage for execution
and serves as an interface between some monitor programs.
Although the COBOL compiler (COB) resides in the IBM system area when the monitor
system is loaded onto a cartridge, the COBOL compiler is not a monitor program. It is
an IBM program product.
A tlowchart of the general logic flow of the monitor system programs is included under
"Logic Flow of the Monitor System" at the end of this chapter. The monitor system
library is a group of disk resident programs that performs I/O functions, data conversion,
arithmetic functions, disk initialization, and maintenance functions. This library is
discussed in Chapter 4, and the monitor system programs are discussed in the following
text. The disk placement of these programs is shown by the following.
Monitor system
programs

DUP FOR COB

o

SUP CLB

Program product

System device
subroutines, DISK1,
DISKN,DISKZ

CI L

RPG

DUP
art 2 ASM

Cushion
area

CIB

LET

IBM
system area

Monitor System Programs

3-1

SUPERVISOR

The supervisor is 2 groups of programs that control the monitor system and link the user
and monitor programs. One portion of the supervisor, the skeleton supervisor, is stored in
sector @RIAD of cylinder o. The other portion of the supervisor is storeel in the IBM
system area.
The skeleton supervisor initially gains control of the monitor system through the cold start
program. During a cold start, the skeleton supervisor is loaded from sector @RIAD into
the resident monitor section of core storage.
Resident Monitor

The resident monitor reSIdes at the beginning of core storage and contains (1) the core
communications area (COMMA), (2) the skeleton supervisor, and (3) a disk I/O sub·
routine (DISKZ, DISKl, or DISKN). Appendix G is a listing of the resident monitor.
COMMA

The core communications area (COMMA) consists of parameters required by the core
image loader to link from one core image program to another. These parameters are
interspersed with parts of the skeleton supervisor in the resident monitor.

skeleton supervisor

The skeleton supervisor is interspersed with COMMA in the resident monitor and is composed of:
• Entry points for linking from one core load to another ($LINK), for linking from a
core load to monitor system programs ($EXIT), and for dumping core storage ($DUMP).
•

lnterrupt level subrou tines (ILS02 and ILS04) for handling interrupts on levels 2 and
4. Disk devices interrupt on level 2, and since disks are used in all operations of the
monitor system, ILS02 is included. Since the console keyboard INT REQ key interrupts on level 4 and can be pressed at any time, the ILS04 subroutine for handling
level 4 interrupts is induded.

• A preoperative error trap that is entered by all interrupt service subroutines (ISS) when
an error is detected before an operation is performed. The trap consists of a WAIT
instruction and a branch instruction. (The address of $PRET+ 1 is displayed in the
INSTRUCTION ADDRESS indicator on the console display panel during the wait.)
Pressing PROGRAM START causes the branch to be taken, and execution resumes.
(Under certain conditions, such as a FORTRAN PAUSE statement, this trap is entered
when an error has not occurred.)
• Postoperative error traps (one for each interrupt level) that are entered by all ISS subroutines when an error is detected after an I/O operation has been started. Each trap
consists of a WAIT instruction and a branch instruc tion. (The address of $PST 1,
$PST2, $PST3, or $PST4 plus one is displayed in the INSTRUCTION ADDRESS indicator on the console display panel during the wait.) Pressing PROGRAM START returns control to the ISS subroutine, which may retry the operation in error.
• The PROGRAM STOlP key error trap that is entered when the PROGRAM STOP key
is pressed (unless a user-written subroutine associated with interrupt level 5 is in core).
If a higher level interrupt level is being serviced when PROGRAM STOP is pressed,
the PROGRAM STOP interrupt is masked until the current operation is complete.
This trap consists of a WAIT instruction and a branch instruction. (The address of
$STOP+ 1 is displayed in the INSTRUCTION ADDRESS indicator on the console
display panel during the wait.) Pressing PROGRAM START continues execution of
the monitor system.

3-2

disk I/O subroutine

The disk I/O subroutine (DISKZ, DISK1, or DISKN) required by the program in control
resides in core storage immediately following the skeleton supervisor. DISKZ is the subroutine used by all system programs. DISKZ is initially loaded into core storage with the
residen t image during a cold start.
Prior to the execution of a core load that requires DISK1 or DISKN, the core image
loader overlays DISKZ with the required disk I/O subroutine. When control is returned
to the supervisor, the core image loader overlays the disk I/O subroutine currently in
core (if DISK1 or DISKN) with DISKZ. Source programs written in assembler, FORTRAN,
RPG, or COBOL can call any of the 3 I/O subroutines; however, only one disk I/O subrou tine can be referenced in a given core load. The entry in column 19 of an XEQ monitor control record specifies the version of the subroutine to be used during execution of
the core load. (Monitor control records are described in Chapter 5.)
Disk-resident Supervisor Programs

The portion of the supervisor that resides in the IBM system area includes programs that
analyze monitor and supervisor control records and perform the functions specified, the
auxiliary supervisor, and the System Core Dump Program.
monitor control
record analyzer

The monitor control record analyzer (1) reads a monitor control record from the input
stream, (2) prints the control record on the principal print device, and (3) calls the required monitor system program and transfers control to it.

supervisor control
record analyzer

The supervisor control record analyzer reads a supervisor control record from the input
stream, and stores the information in the control record in the supervisor control record
area (SCRA) on disk.

auxiliary supervisor

The auxiliary supervisor is used by the Cold Start Program, ILS04 subroutine, core image
loader, and system loader as a pre-entry to the monitor control record analyzer. The
auxiliary supervisor i~ entered via the $DUMP entry point in the skeleton supervisor.
This program sets appropriate parameters in COMMA, writes dummy monitor control
records (such as the JOB monitor control record printed during a cold start), and prints
error messages for errors detected by the core image loader. Control is then transferred to
the monitor control record analyzer through the $EXIT entry point in the skeleton
supervisor.

Su pervisor Core
Dump Program

The Supervisor Core Dump Program provides a hexadecimal printout and an EBCDIC translation of the contents of core storage. (A portion of a core dump is shown in Appendix F.)
This program is entered through the $DUMP entry point in the skeleton supervisor in 2 ways .
• A special calling sequence during execution of an Assembler or FORTRAN program
(see the publications IBM 1130 Assembler Language, GC26-3778, and IBM 1130/1800
Basic FORTRAN IV Language, GC26-3715). The portion of core storage specified in
the assembler or FORTRAN statements, or all of core storage if limits are not specified,
is dumped. Execution of the core load in process then continues with the statement
following the one that called the dump.
• A manual dump of core storage through $DUMP+ 1 (see "Manual Dump of Core
Storage" in Chapter 7). The contents of core storage are dumped, and the dump program
executes a CALL EXIT, which terminates the execution of the core load in progress.

Monitor System Programs

3-3

DISK UTI LlTY PROGRAM

The Disk Utility Program (OUP) allows you to perform the following operations through
the use of OUP control records:
• Store programs and da ta files on disks
• Make programs and data files on a disk available as printed, punched card, or punc:hed
paper tape output
• Delete programs and data files from a disk
• Determine the status of disk storage areas through a printed copy of LET and FLET
• Define a fixed area on a disk, and delete monitor system programs from a disk
• Maintain disk macro libraries
• Reassign sector addresses on a disk
• Reserve space for a data file or macro library
DUP control records are described in Chapter 6. OUP error messages are listed in
Appendix A.
General Functions of DUIP

DUP is called into operation when a OUP monitor control record (/ / DUP) is recognized
by the supervisor. The control portion of DUP is brought into core to read the next
DUP control record from the input stream. The OUP control record is printed and analyzed.
The DUP program required to perform the operation specified in the control record i.s
read into core storage from the disk and assumes control. The DUP program performs the
functions specified in the control record, and when complete, a message is printed on
the principal printer, and control is returned to the control portion of DUP. The next
con trol record is read from the inpu t stream.
If the next record is a monitor control record, other than a comments control record
(/ / *), system control is returned to the supervisor to process the record. Comments monitor control records are priinted; blank records are passed. If the record is a DUP control
record, DUP maintains control and reads the next record.

3-4

ASSEMBLER

The source language and macro capabilities for the assembler are described in the publication IBM 1130/1800 Assembler Language, GC26-3778. This section of this chapter contains only a general description of the Monitor System Assembler Program. Assembler
control records are described in Chapter 6. Assembler error detection codes and error
messages are listed in Appendix A.
The assembler can be deleted from the monitor system if desired (see "*DEFINE" under
"DUP Control Records" in Chapter 5). The assembler cannot, however, be operated
independently of the monitor system.
A monitor control record, / / ASM, is used to call the assembler into operation. The
assembler reads assembler control records and the source deck from the principal input
device. The assembler interprets and performs the functions specified in the control
records and translates the source program into an object program. Control records cause
the assembler to:
• Pass the source deck through the assembler twice
• List the source deck and cross-reference symbol table on the principal printer
• Punch object decks into cards
• Print the symbol table on the principal printer, or punch the symbol table into cards
• Save and add to the symboi table on disk
• Specify the interrupt level for assembly of ISS subroutines
• Specify additional sectors for overflow of the symbol table
• Specify the length of COMMON used when linking between FORTRAN and assembler
programs
• Specify the use of the macro library during assembly
After assembly is complete, the object program resides in working storage. The program
can now be (1) called for execution, (2) stored in either the user area or the ~xed area,
or (3) punched as a binary deck or tape.

Monitor System Programs-

3-5

FORTRAN COM PI LE R

The source language for the FORTRAN compiler is described in the publication IBM
1130/1800 Basic FORTRAN IV Language, GC26-3715. This section of this chapter contains only a general description of the monitor system FORTRAN compiler. FORTRAN
compiler control records are described in Chapter 6. FORTRAN error codes and error
messages are listed in Appendix A.
The FORTRAN compiler can be deleted from the monitor system if desired (see "*DEFINE" under "DUPControl Records" in Chapter 5). The FORTRAN compiler, however,
cannot be operated independently of the monitor system.
A monitor control record" / / FOR, is used to call the FORTRAN compiler into operation.
The compiler reads FORTRAN compiler control records and the source program from
the principal input device. The compiler interprets and performs the functions specified
in the control records and translates the source program into an object program. Control
records cause the compiler to:
• Specify the I/O

device~,

to be used during program. execution

• List the source program, the names of all subprograms associated with the source
program, and symbol table information on the principal print device
• Specify that all variables and real constants are stored in 3 words instead of 2
• Specify that all integer variables are stored in one word instead of the standard 2 words
• Print header infomlation at the top of each printed page, and print the program name
at the end of a listing
• Trace the values of variables, IF expressions, and computed GO TO statements during
program execu tion
• Specify the origin of an absolute program
After compilation is complete, the program resides in working storage in disk system
format (DSF). The program can now be (1) called for execution, (2) stored in the user
area or fixed area. or (3) punched in binary form into cards or paper tape.

RPG COMPILER

The source language speCifications for the RPG compiler are described in the publication
IBM 1130 RPG Language, GC21-5002. This section of this chapter contains a general
description of the monitor system RPG compiler. RPG compiler control cards are described in Chapter 6. RPG error messages and error notes are described in Appendix A.
The RPG compiler can be: deleted from the monitor system if desired (see "*DEFINE"
under "DUP Control Records" in Chapter 5). The compiler, however, cannot be operated
independently of the monitor system.
A monitor control record, / / RPG, is used to call the compiler into operation. The compiler reads the RPG compiler control card and the source program from the principal
input device. The compiler interprets and performs the functions specified in the control
card and translates the source program into an object program. After compilation is
complete, the object program, in disk system format (DSF), resides in working storage.
The program can now be (1) called for execution, (2) stored in the user area or the fixed
area, or (3) punched in binary form into cards.

3-6

CORE LOAD BUILDER
The core load builder constructs an executable core load from a program in disk system
format (DSF). The DSF program and all required subroutines (including any LOCALs,
SOCALs, and NOCALs) are converted from disk system format into disk core image
(DCI) format. The resultant core load is ready for immediate execution or for storing.
The core load builder is called by any of the following programs.

• Supervisor. When an XEQ monitor control record is read by the supervisor, the information specified in any supervisor control records that follow is written in the supervisor control record area (SeRA). Then, the core load builder is called to begin construction of the core load. When the core load is complete, the core image loader
transfers the core load into core for execution.
• Disk Utility Program. When a STORECI control record is read by the Disk Utility Program (DUP), information specified in any supervisor control records that follow are
written in the supervisor control record area (SCRA). Then, if the specified program
is not in working storage, the program is loaded into working storage, and the core
load builder is called to begin construction of the core load. When the core load is complete, DUP stores it as a core image pfOgram in the user area or fixed area as specified
in the STORECI control record.
• Core Image Loader. When a core load calls for a link to another, the core image loader
determines the format of the program from its LET or FLET entry. If the format is
DSF, the core load builder is called to begin construction of the core image program.
When the core load is complete, the core image loader transfers the core load for
execution.
Construction of a Core Load
When the core load builder (CLB) is called by one of the previous monitor programs, the
core load is constructed by the functions described in this section. The core load builder
uses 3 storage areas while constructing a core load. These areas are the core image buffer
(CIB), working storage (WS), and core storage.
CLB use of the CI B

The core load builder places in the core image buffer the parts of a core load that are to
reside below core location 4096 (decimal) for a 4K system, or 5056 for larger systems,
during execution. These parts can be the core image header, the main-line program, and
subroutines. The contents of the CIB during core load construction are illustrated by:
That part of
core load below
4096 (or 5056)

Not used

COMMON saved
from last core
load

Core image buffer

Monitor System Progiams

3-7

Cl.B use of WS

The core load builder reserves enough space in working storage for any data mes that are
specified for use by the core load, as well as any LOCAL and/or SOCAL subroutines that
are referenced by the core load (see "Processing Data Files" and "Incorporating Subroutines" in this section). The contents of working storage during core load construction
are shown by:
Data files
defined by
core load

lOCAL
subroutines

SOCAl
subprograms

Not used

Working storage

Cl.B use of core
storage

In systems larger than 4K, the core load builder places in core storage the parts of a
core load that are to reside} above core location 5055 during execution. These parts of
a core load can be subroutines and the transfer vector. The contents of core storage during
construction of a core load are illustrated by:
Core
location

o

End of
DISKZ

Resident
monitor

Core
location
5O!56

Core load
builder

End
of core

That part of core
above 6066

Core stonge

When construction of a core load is finished and is executed immediately, the core image
loader is called to transfer it into core storage. The layout of a core load in core that is
ready for execution is illustrated by:

IC

Resident

Location
Q(M)O

LOCALI
n .. 1
~_I?_pC_~_l_.._l_O_C_A_l_a_'_ea......._S_O_c_A_l_a'_ea....._u_nu_sed_.......T_'_an_s_fe_'_v_ect_o'......._C_O..,;;:J

m,.o_n_it_o_,........M_•..,inli,.n_e..........._Su_b_pr..,o;,.a_ms_.....

End
of
core

3-8

When a core load is stored immediately following construction, it is placed in the user
area or the fixed area as follows:

Mainline
~~~~

NOCALs

~~

Subprograms

LOCALI
SOCAL
flipper

LOCAL
area

SOCAL
area

Transfer
vector

LOCALs

SOCALs

______~__~~
\ __~______L-____-L______~____~______-L______~

(

Core image header

When the core load builder is called, the core load is built by the following functions, but
not necessarily in the order described.
Construction of the Core Image Header

The core image header is established at the beginning of the construction of a core load.
Throughout the building of a core load, information is placed in this header. The information placed in the header is used by the core image loader to transfer the core load into
core storage and start program execu tion. The core image header is a part of the core
load and resides in core storage during execution.

Note. The area of core storage occupied by the core image header should not be considered
as a work area, because FORTRAN subroutines access information in the header during
execution.
Assignment of the Origin of a Core Load

The core location where the core image loader begins loading a relocatable core image program is assigned by the core load builder. This loading address is placed in the core image
header, and is called the origin. The origin is determined by adding decimal 30 to the next
higher-addressed word above the end of the disk I/O subrou tine used by the core load.
The following chart lists the origin locations (in decimal and hexadecimal) used by the
core load builder.
Disk 1/0
subroutine
in core

Decimal

Hexadecimal

OISKZ
OlSK1
OISKN

510
690
960

101 FE
10282
103CO

Cor. load origin

Monitor System Programs

3-9

The origin of absolute programs' is assigned by the assembler or FORTRAN programmer,
not by the core load buil~r. The assembler programmer assigns the origin of a program
with the ORG statement in his program. The FORTRAN programmer defines the origin of
his program with an *ORIGIN control record. The origin that you define must not be
less than those in the preceding chart, depenping on the disk I/O subrou tine used by the
core load. When the programmer assigns an origin, the addresses printed in a program
listing are absolute; thus, he can see exactly where his statements and constants are in
core during executiqn.

·,Note. When DISKZ is in core, the assembler programmer must specify an even address
in an ORG statement. Also, an ORG statement specifying an even address must not be
followed 6y a BSS or BES statement of an odd number of locations.
Processing the Contents of the SCRA

•

The core load builder analyzes the LOCAL, NOCAL, FILES, G2250, and IiQUAT eontrol records stored in the SCRA on disk, and builds tables for the respective control
t, record types from the information specified. The information placed in these tables
is used in later phase~ of the construction of the core load.
Processing Data Files

The core load builder us,es the information in the FILES control records stored in the
supervisor control record area (SCRA) to equate data files defined in the mainline
program to data files stored on disk. The mainline program statements that define these
files are the FORTRAN DEFINE FILE statement and the assembler FILE statement.
During compilation or assembly, a define file table is built from the DEFINE FILE
statements or FILE statements.
'
The core load builder compares a file number from a define me table entry with th{~ file
numbers specified in the FILES supervisor control records stored in the SCRA. If
a match occurs, the name of the disk area associated with the file number on the FILES
c01,grol record is found in LET or FLET, and the sector address of that disk area (including
the logical drive code) is placed in the corresponding define file table en try. If the number
in the define file table entry does not match any of the file numbers for FILE,S control
records or if a name is n,?t specified on the FILES controt record; the core load builder
assigns an area in working storage for the data file. The sector address of the data file,
relative to the start of working storage, is placed in the define file table entry. This
procedure is repeated for ~ach.define file table entry in the mainline program.
Conversion of the Mainline Program

The mainline program is converted from disk system format into disk core image fOlmat.
The mainline is always converted before any of the other portions of the core load.
Incorporating Subrou tines

Subroutines in general

3-10

All the subroutines called by other subroutines, by the mainline program and all subroutines specified as NOCALs are included in the core load, except for (1) the disk I/O
subroutine, (2) any LOCAL subroutines specified, and (3) SOCAL subroutines employed.

EQUAT subroutines
or symbolic names

Subroutines called by the core load that is being built can be replaced if indicated in
EQUAT monitor control records stored in the SCRA. Symbolic names in assembler DSA
statements are replaced by other symbolic names if so indicated in EQUAT control records.

FLIPR

The LOCAL/SOCAL flipper, FLIPR, is included in each core load in which LOCAL subroutines are specified or in which SOCAL subroutines are employed. FLIPR is entered
by special LOCAL/SOCAL linkage through the transfer vector. FLIPR checks to determine if the required LOCAL or SOCAL is already in core. If not, FLIPR reads the required LOCAL or SOCAL into the LOCAL or SOCAL area in core. If the subrou tine or
subprogram is already in the LOCAL or SOCAL area of core, FLIPR transfers execu tion
control to them.
When execution immediately follows the building of a core load, FLIPR reads a LOCAL or
SOCAL, as it is called, from working storage into the LOCAL or SOCAL area of core.
If the core image program was stored following the building of a core load, FLIPR
reads a LOCAL or SO CAL, as it is called, from the user area or the fixed area (where it
was stored following construction of the core load) into the LOCAL or SOCAL area
of core.

CLB provision
for LOCALs

LOCALs (load-on-call) are subroutines that you specify as overlays with LOCAL
supervisor control records when error messages indicate that a core load is too large to
fit into core.
If LOCALs are specified for use by a core load, the core load builder reserves an area in
the core load as large as the largest LOCAL subroutine specified. LOCAL subroutines
will be read by FLIPR into this area as required during execution. LOCAL subroutines are
stored in working storage following any data flles stored there. If the core load is executed
immediately, each LOCAL subroutine is read as it is called from working storage into
the LOCAL area by FLIPR. If the core load is stored in disk core image format before
it is executed, LOCAL subroutines are stored following the core load, and will be read
from the storage area (user area or fixed area) during execution.

CLB provision for
SOCALs

SOCALs (system-overlays-to-be-Ioaded-on-call) are groups of subroutines (by class, type,
and subtype) that are made into overlays by the core load builder. SOCALs make it
possible for FORTRAN core loads that are too large to fit into core to be loaded and
executed. (SOCALs are not built for mainline programs written in assembler or RPG
language.)
If, in constructing a core image program from a FORTRAN mainline program, the core
load builder determines that the core load will not fit into core, SOCALs are created. An
area as large as the largest SOCAL overlay (usually SOCAL 2) is reserved in the core
load. SOCAL overlays will be read by flipper into this area as required during execution.
The SOCAL overlays are placed in working storage following any data files and LOCALs
stored there. If the core load is executed immediately, each SOCAL overlay is read,
as it is called, from working storage into the SOCAL area by flipper. If the core load is
stored in disk core image format before it is executed, SOCALs are stored following the
core load and any LOCALs. SOCALs are then read from the storage are (user area or
fixed area) during execution.

Monitor System Programs

3-11

The core load builder creates SOCAL overlays by subrou tine cla!iS, type, and subtype
(program types and subtypes are described under "Disk System Format" in Appendix I.)
SOCAL overlays are numbered 1, 2, and 3. The classes of subroutines, their types and
subtypes, that can be incloded in each SOCAL overlay are:

SOCAL overlay

~
1

2

3

Type

Sub·
type

Arithmetic

3

2

Function

4

8

Nondisk FORTRAN
I/O and liZ" conver·
sion subroutines

3

3

liZ" device
subrolltines

5

3

Disk FORTRAN
I/O

3

1

Subroutine class

linCIU~

Each SOCAL overlay does not contain all the subroutines of the specified classes, tYPI~S,
and subtypes that are available in the monitor system library; only those subroutines
required by the core load are included in the SOCAL. The names of the subroutines
included in the SOCALs associated with a program are listed in a core map. A printout of
the core map is obtained by placing an L in column 14 of an XEQ monitor control
record (see "Reading a Cme Map and File Map" in Chapter 6).
Two options are used by the core load builder in creating SOCAL overlays .

• SOCAL Option 1. An attempt is made to make the core load fit into core' by using
SOCAL overlays 1 and 2. This option reserves enough space in the core load for
the largest of the 2 SOCALs (usually SOCAL 2) and approximately 115 additional
words that are required for the special SOCAL linkage. SOCALs 1 and 2 are placedl in
working storage. When this option has been tried and the core load still does not fit
into core, the second option is used.
• SOCAL Option 2. An attempt is made to make the core load fit into core by using
SOCAL overlays 1, 2, and 3. This option reserves enough space in the core load foJ' the
largest of the 3 SOCALs (usually SOCAL 2) and approximately 120 additional wo:rds
that are required for th,~ special SOCAL linkage. If, after both SOCAL options have
been tried, the core load still does not fit into core, an error message is printed.
If you specify as a LOCAL subroutine a subroutine that would usually be included in a
SOCAL, the core load builder makes that subroutine a LOCAL and does not include it in
the SOCAL in which it would ordinarily be placed. Further information is contained
in "The Use of SOCALs" in Chapter 6.

3-12

Transfer Vector

The transfer vector (TV) is a table included in each core load that provides linkage to
subroutines. This table is composed of:

• CALL TV-the transfer vector for subroutines referenced by CALL statements
• LIBF TV-the transfer vector for subroutines referenced by LIBF statements
Each CALL TV entry is a single word containing the absolute address of an entry point
in a subroutine included in the core load that is referenced by a CALL statement. In the
case of a subroutine referenced by a CALL statement but specified as a LOCAL, the
CALL TV entry contains the address of the special LOCAL linkage instead of the subroutine entry point address. If SOCALs are required, the CALL TV entries for function
subroutines contain the address of the special SOCAL linkage instead of the subroutine
entry point address.
Each LIBF TV entry consists of 3 words. Word 1 is the link word in which the return
address is stored; words 2 and 3 contain a branch to the subroutine entry point. In the
case of a subroutine referenced by a LIBF statement but specified as a LOCAL, the
LIBF TV entry contains a branch to the special LOCAL linkage instead of to the subroutine entry point address. The core load builder inserts the address in word 1 of the
transfer vector entry (link word) into the entry point+2 of the associated LIBF subroutine. If SOCALs are required, the LIBF TV entry for a SOCAL subroutine contains
a branch to a special entry in the LIBF TV for the SOCAL of which the subroutine is
a part. This special entry provides the linkage to the desired SOCAL.
The core load builder can build a core load that references up to approximately 375
different LIBF and CALL entry points; 80 LIBFs plus 295 CALLs (the maximum
number of LIBFs allowable is 83 due to the size of the LIBF TV). If the core load is
built on an 1130 system with core size of 4K, the maximum number of different LIBF
and CALL entry points is approximately 110.
See "Reading the Transfer Vector" in Chapter 6 for more information.

CORE IMAGE LOADER

The core image loader (CIL) has 2 functions:
• Transfer control between some monitor programs
• Transfer core loads into core for execution
On an entry to the skeleton supervisor at $EXIT, $DUMP, or $LINK, the core image
loader is called and control transferred to it. The core image loader determines where the
skeleton supervisor was entered and calls the appropriate monitor or mainline program.
$EXIT entry

When the skeleton supervisor is entered at the $EXIT entry point, the core image loader
calls the DISKZ I/O subroutine if DISKZ is not already in core. Then, the CIL calls and
transfers control to the monitor control record analyzer to read monitor control records
from the input stream.

$DUMP entry

When the skeleton supervisor is entered at the $DUMP entry point, the core image loader
saves words 6 through 4095 (decimal) in the core image buffer. Then the CIL calls and
transfers control to the Supervisor Core Dump Program. When the dump is complete,
the dump program either restores core from the CIB and transfers control back to the
core load in process or terminates execution with a CALL EXIT (see "Disk Resident
Supervisor Programs" in this chapter).

Monitor System Programs

3-13

When an entry is made to the skeleton supervisor at the $LINK entry point, the core image
loader saves the sector of core referred to as low COMMON. The sector saved depends on
the disk I/O subroutine that is in core; locations (in decimal) 896 through 1215 if DISKZ,
1216 through 1535 ifDISK1, or 1536 through 1855 ifDISKN. Then the CIL determines
from COMMA the lowest·addressed word of COMMON if any was defined by the core
load just executed. Any COMMON in core below location 4096 (4K system) or 5056 in
larger systems is saved in the CIB. The following illustrates the saving of COMMON.

$LlNK entry

Core address

Core storage

Sector

Core image buffer

0000
2
3
4

Core load

5

6
If DISKZ 896
If DISK1 1216
If DISKN 1536
1856

7

8
9
10
11
12
13
14
15
16

2176
2496
2816
3136
3456
3776
4096

Next, the CIL determines from the LET or FLET entry for the program being calleel
whether the program is in disk system format or in disk core image format.
If the called program is in disk system format, the core load builder is called to construct
a core load from the mainline program. After the core load is built, the core image loader
is called to transfer the core load into core for execution.
If the called mainline program is stored in disk core image format, the disk I/O subroutine
required by the core load is called, if it is not already in core. Any COMMON defined by
the core load just executed and saved in the CIB is restored, and the called core load is
transferred into core for execution.
The following illustration is the layout of a core load in core ready for execution.

IC

Res;den'

LOCALI

Location

I

End
of
core

0000
Core i mage header

3-14

iliON

M_a-iinl,.in_e.....,,......_Su_b_p..,ro~,.ra_m_s_ _~_I?_p~_A_rL_,,_L_O_C_A_L_ar_e_a-.,S_O_C_A_L_ar_e_a_u_n_u_se_d......_T_ra_n_sf_e_rv_e_c_to_r-.,c_o-/;';:J

m,.o_n_it_o_r___.....

LOGIC FLOW OF THE MONITOR SYSTEM
Cold start
record

•

Cold start program
(sets negative parameter for DUMP entry)

t

LINK entry

EXIT entry

Skeleton
supervisor

Core image loader
determines where
skeleton supervisor
was entered

I

I

EXIT
entry

LINK
entry,
~SF

program

I

Auxiliary
supervisor

s::

a

'i::l
'""t
0

Ot/
'""t
~

~

'-f
VI

RPG
record

ASM
record

I

DUMP
Program

XEa
record

Terminal
dump

~

Subroutine
library

DSF
program

,

2.
0'""t
(t

FOR
record

DCI
program

0

en
~

DUP
record

LINK
entry,
DCI
program

t

Monitor
control record

JOB
record

I

I

DUMP
entry,
positive
parameter

DUMP
entry,
negative
parameter

Supervisor

~

EXIT

Disk Utility
Program(DUP

~

EXIT

FORTRAN
compiler

~

EXIT

RPG
compilel-

~

EXIT

Assembler
Program

Core load
builder

,
EXIT

LINK

LINK
DCI
program

EXIT

EXIT

LINK

t

DUMP EXIT
positive
parameter

3-16

Chapter 4. Monitor System Library

The monitor system library is a group of mainline programs and subroutines that performs
the following functions for the monitor system:
• Input/output
• Data conversion
• Arithmetic functions
• Disk initialization
• Disk maintenance
• Paper tape utility
Appendix C is a listing of the names, types and subtypes, required subroutines, and ID
fields for the programs and subroutines in the monitor system library.
Monitor system subroutines can be added to or deleted from the monitor system library.
You add or delete them with Disk Utility Program (DUP) store and delete functions (see
"*STORE" and "*DELETE" under "DUP Control Records" in Chapter 5). Each program
in the IBM-supplied system deck used in an initial load is preceded by a DUP *STORE
control record.
This chapter contains general information about:
• System library ISS subroutines
• System library utility subroutines
• System library mainline programs
Additional and more detailed information about the system library is contained in the
publication IBM 1130 Subroutine Library, GC26-S929.

Monitor Syst~m Library

4-1

ISS Subroutines

SYSTEM LIBRARY ISS SUBROUTINES

The interrupt service subroutines (ISS), in the monitor system library, manipulate the
I/O devices that are part of the computer configuration. Each subroutine has a symbolic
name that must be used when the subroutine is available; although only one for each
I/O device can be selected for use in anyone program (including subroutines). The following is a list of the devices available on the 1130 and the names of the ISS subroutines
that are available for each device.
I/O device

I/O device subroutine

1442 Card Read Punch

CARDZ, CARDO, or CARD1

2501.Card Reader

READZ, READO, or READ1

1442 Card Punch

PNCHZ, PNCHO, or PNCH1

Disk

DISKZ, DISK1,or DISKN

1132 Printer

PRNTZ, PRNT1, PRNT2

1403 Printer

PRNZ, or PRNT3

Console keyboard/printer

TYPEZ, or TYPEO

Console printer

WRTYZ, or WRTYO

1134/1055 Paper Tape Reader Punch

PA~TZ,PAPT1,PAPTN,orPAPTX

1627 Plotter

PLOT1, or PLOTX

1231 Optical Mark Page Reader

OMPR1

Synchronous Communications
Adapter

SCAT1, SCAT2, or SCAT3

The last character or digit (Z, 0, l, or N) of an ISS name indicates the general characteristics of the subroutine:

nameZ

The nameZ versions are designed for use in an error-free environment; preoperative error
checking is not provided. FORTRAN and RPG use the nameZ versions of the ISS subroutines.
\

nameO

The nameO versions are shorter and less complicated than the name 1 or nameN versions.
The nameO versions handle error conditions automatically.

name1

Use the namel versions rather than the nameO versions when you write an error exit. The
nameO versions handle error conditions au tomatically.

ISS Subroutines

nameN

The nameN versions are available to operate the 1134/1055 Paper Tape Reader/Punch
simultaneously and to minimize extra disk revolutions when transferring more than 320
words to or from the disk. DISKN offers more options than DISK 1. Depending on your
computer configuration, it also offers simultaneous operation of anyone of the following
disk combinations.
• Up to five 2315 Disk Cartridges
• One 2315 Disk Cartridge (the 1131 CPU internal disk) and one disk in each of one or
two 1316 Disk Packs
• One disk in each of two 1316 Disk Packs
Preoperative and postoperative errors that occur during the operations of the I/O device
subroutines are included in Appendix B.
Extra space on a system cartridge can be gained by deleting the I/O device subroutines that
are in the system library for devices that are not a part of your computer configuration.
The following is a list of the subroutines that can be deleted for each device:
Disk blocks
gained
(hexadecimal)

Device not in
configu ration

I/O device subroutines
that can be deleted

1442 Card Read Punch
(input/output)

CARDO, CARD1, CARDZ

/4E

2501 Card Reader

READO, .BEAD1, READZ

/62

1442 Card Punch

PNCHO, PNCH1, PNCHZ

/22

1134/1055 Paper Tape
Reader/Punch

PAPT1, PAPTN, PAPTX, PAPTZ,
PAPEB,PAPPR,PAPHL

/75

1132 Printer

PRNT1, PRNT2, PRTZ2, PRNTZ,
DMPD1

/69

1403 Printer

PRNT3, PRNZ, EBPT3, CPPT3,
HLPT3,PT3EB,PT3CP,PTHOL

/40

1627 Plotter

PLOT1, PLOTI, PLOTX, FCHRX,
ECHRX, SCALF, SCALE, FGRID,
EGRID, FCHAR, ECHAR, FPLOT,
EPLOT, FRULE, ERULE, POINT,
XYPLT

/BO

Synchronous
Commu n ications
Adapter

SCAT1, SCAT2, SCAT3, PRNT2,
PRTZ2, IOLOG, EBC48, HOL48,
HXCV,STRTB,HOLCA

/FA

1231 Optical Mark
Page Reader

OMPR1

/15

MTCA

MTCAO, MTCAZ, TSM41, TSTTY,
FEB41

/9A

Monitor System Library

4-3

Utility Subroutines

You should not delete subroutines that are called by subroutines left in the monitor system
library (see Appendix C for lists of the subroutines called by each subroutine in the monitor system library).
The mainline programs required for devices not on the system that can be deleted from
the system library are:
Disk blocks
gained
(hexadecimal)

Device not in
configuration

Mainline programs that
can be deleted

1134/1055 Paper Tape

PTUTL

lOA

DLCIB, 10, COPY, DISC,
IDENT

190

Reader IPu nch
2310 Disk Storage or
2311 Disk Storage Drive

SYSTEM LIBRARY UTILITY SUBROUTINES

A group of subroutines thalt perform utility functions for the monitor system are included
in the monitor system library. These subroutines are:
• SYSUP, disk communications area (DCOM) update subroutine, that you call in an
assembler or FORTRAN program when you need to change disk cartridges or pack:)
during execution of a core load. This subroutine updates ])COM on the master cart·
ridge with the IDs and DCOM information from all satellite cartridges that are mounted on the system and that are specified in the special SYSUP calling sequence. Uses
and calling sequences of SYSUP are discussed in Chapter 6.
• CALPR, call system print subroutine, that calls the print subroutines into core stof;llge
for printing information on the principal printer.
• FLIPR, LOCAL/SOCAL flipper overlay subroutine, that calls LOCAL (1oad.on~can) and
SOCAL (system-Ioad-on-call) subroutines into core storage during execution ofacore
load: LOCALs, SOCALs, and FLIPR are discussed under "Incorporating Subroutim!s"
in Chapter 3 and in Chapter 6, "Programming Tips and Techniques".
• FSLEN, fetch phase IDs and fetch system subroutines, that performs 2 functions. The
first function obtains system program phase ID headers from SLET as requested by
monitor system programs. The second function calls system subroutines into core
storage as needed.
• RDREC, Read *ID Record, that is called by the disk maintenance programs, discussed
in this chapter, to read *ID control records.

Note. SYSUP is the only one of these utility subroutines that can be called by FORTRAN
programs. The other subrou tines are called as needed by monitor system programs or by
assembler language programs.

4·4

Disk Maintenance Programs
'DENT

SYSTEM LIBRARY MAINLINE PROGRAMS

The 1130 system library mainline programs provide for disk maintenance and paper tape
utility functions. These programs (except the disk maintenance program, ADRWS) are
called for execution with a monitor XEQ control record, and are described in the following
sections of this chapter. These programs can be executed in a stacked job stream.
disk maintenance
programs

The disk maintenance programs reinitialize cartridges, modify the contents of cartridges,
and print information from cartridges. The disk maintenance programs are:
• IDENT that prints cartridge IDs
• DISC that reinitializes satellite cartridges
• DSLET that prints the contents of the system location equivalence table
• ID that changes cartridge IDs
• COpy that copies the contents of one cartridge onto another
• ADRWS that writes sector address in working storage
• DLCIB that deletes the core image buffer from a nonsystem cartridge
• MODIF that modifies the monitor system programs
• MODSF that modifies programs and subroutines in the system library
• DFCNV that converts 1130 FORTRAN and/or commercial subroutine package (113()"
SE-25X) disk data ftles to disk files acceptable to 1130 RPG programs.
For execution, some disk maintenance programs require in addition to the monitor XEQ
control record, special control records. The fields and uses of these special control records
are described when required in the descriptions of these programs in this chapter.

PTUTL program

The Paper Tape Utility (PTUTL) Program accepts input from the paper tape reader or
console keyboard and provides output to the console printer and/or the paper tape punch.

messages and
halt codes

Messages printed by the disk maintenance programs are described in Appendix A. Halt
codes displayed in the console ACCUMULATOR are described in Appendix B.
The following sections of this chapter describe the functions and calling sequences of the
system library mainline programs.
IDENT

The Print Cartridge ID (IDENT}mainline program prints the cartridge ID and physical
drive number of each disk cartridge that is mounted on the system and is ready, not just
the cartridges that are specified in the current JOB monitor control record (see "Monitor
Control Records" in Chapter 5). Invalid cartridge IDs, including negative numbers, are
printed.
The IDENT program is called for execution with a monitor XEQ control record:

r

'1'1

5

\0

\5

20

25

30

35

40

45

50

~EM 1'ltt11llllllllllllllllllllllllllmimimm

Monitor System Library

4-5

Disk Maintenance Programs
DISC

DISC

'The Satellite Disk Initialization (DISC) mainline program requires at least 8K of core stor)se to run. DISC reinitializes from one to four satellite cartridges; all but the master cartridge.
(All new cartridges must be initialized with the stand-alone DCIP utility program, see
Chapter 9). On each cartridge being reinitialized, the DISC program:
• Tests disk sectors to determine which, if any, are defective, and fills in the defective
cylinder table accord:i.ngly
• Writes a sector address on every sector, including defective sectors
• Establishes a file-protected area for the cartridge
• Places an ID on the cartridge
• Establishes a disk communications flrea, sector @DCOM, a location equivalence fable
(LET), and a core image buffer (CIB)
If an error occurs during testing, the cylinder on which the error occurred is retested. If
the error occurs again, the address of the first sector on that cylinder is written in the
defective cylinder table. The monitor system I/O subroutines operate with up to 3
defective cylinders on a cartridge. That is, 3 cylinders that contain one or more def,ective
sectors. A cartridge cannot be initialized if cylinder 0 is defective, or if a sector address
cannot be written on every sector.

A message and the program that prints it are written in sector @RIAD. The

messag(~

is:

NONSYST. CART. ERROR
This message is printed when an attempt is made to cold start a nonsystem cartridg,e that
is initialized with DISC.
The DISC program is caliled for execution with a monitor XEQ control record followed by
an *ID control record:
'--"

1

5

10

/1 1~lf ~ Ir., 16 C
I-M I Inlf I'D J 11/ II) 1
J

*ID fields

FIDl Through FJ.Dn. Replace FIDI through FIDn with the current IDs on the satellite
cartridges that are being reinitialized. This program overrides the cartridges that are
specified in the current JOB monitor control record.
TIDl Through TIDn. Replace TID! through TIDn with the new IDs to be placed on the
satellite cartridges during initialization, A valid cartridge ID is a hexadecimal number from
/0001 to /7FFF.

4-6

Disk Maintenance Programs
DSLET
ID
COPY

OSLET
The Dump System Location Equivalence Table (DSLET) mainline program prints the
contents of SLET on the principal printer. Each SLET entry printed includes a symbolic
name; phase ID, core address, word count, and disk sector address. Appendix E is a
printout of a SLET dump.
The DSLET program is called for execution with a monitor XEQ control record:

ffi
ff

----_._-. . . . _-5

10

15

20

25

30

35

40

-

45

'"

111111"111111111111 till rmmffltffitfmtHllt+

10

The Change Cartridge ID (ID) mainline program changes the ID on from one to four
satellite cartridges. The ID program is called for execution with a monitor XEQ control
record followed by an *ID control record:
-

1

5

10

15

20

25

II XEIQ If)
DA Ii) JJ 7/ ])1 .F ID2 TID2.

30

-----

*1

~L

---e

EL 'DB .1.1 Lf)
-

*10 fields

35

- - - c___

-----,

!-

---_._--40
----,--

>J_i

---

-----

45

50

rnmmr

FIDl Through FIDn. Replace FIDl through FIDn with the IDs currently on the satellite
cartridges that are to be changed. These IDs must be coded in the same logical order as
those coded in the current JOB monitor control record.

TIDl Through TIDn. Replace TIDl through TIDn with new IDs that you want placed on
the satellite cartridges. A valid cartridge ID is a hexadecimal number between /0001 and
/7FFF.

COpy
The Disk Copy (COPY) mainline program requires at least 8K of core storage to run. COpy
copies the contents from one cartridge (source) onto another (object cartridge). The
defective cylinder data and cartridge ID are not copied. The copy code (word 5 of sector
@IDAD) on the object cartridge is incremented to one greater than the copy code on the
source cartridge. (The stand-alone DCIP program described in Cha.pter 9 provides a
similar disk copy function.)

If a copy is made of a system cartridge from a system with a different confIguration, the
object cartridge must be reconfigured before a cold start can be performed (see Chapter
8 for information about reconfiguration).
The COpy program is called for execution with a monitor XEQ control record followed
by an *ID control record:
------. _..
I

5

10

15

20

25

/1 XE.G CO py,
lJF ID 1 , 11 DJ .f / DI 2 ~ 7/ D2 , ..

*1

30

35

----

. , PI 'JJ71 ,7 r! ~ ~-

~----

-

--

-~--

---- - ------- 1--- -

50

45

40
-

-- ---

-

"-

"-

-~

----

mr

Monitor System Library

4-7

Disk Maintenance Programs
AORWS
OLelB
MOOIF

*10 fields

FIDl Through FIDn. Replace FID! through FIDn with the IDs of the cartridges that are
being copied. When multiple copies are being made from a single cartridge, replace FID!
through FIDn with the same cartridge ID. This program overrides the cartridges that are
specified on the current JOB monitor control record.
TIDl Through TIDn. Replace TID! through TIDn with the IDs of the object cartridges.
AORWS

The Write Sector Addresses in Working Storage (ADRWS) mainline program writes a
sector address on every sector of working storage of a cartridge. This program is not
executed with an XEQ monitor control record as the other disk maintenance mainline
programs are. ADRWS is Hnked to from the Disk Utility Program (DUP) when a DWADR
DUP control record is read from the job stream. (The DW ADR control record is described
under "DUP Control Records" in Chapter 5.)
OLCIB

The Delete Core Image Buffer (DLCIB) mainline program deletes the CIB from a nonsystem
cartridge. The areas on the cartridge that followed the CIB before it was deleted are moved
back 2 cylinders closer to cylinder O. The new addresses of the areas moved are placed in
DCOM on the master cartridge and in COMMA on the cartridge from which the CIB was
deleted.
The DLCIB program is called for execution with a monitor XEQ control record followed
by an *ID control record:
'---'

1

5

II XE Q

*1 IDe AT<7

*I[) field

10

DIL ell!

CART. Replace CART with the cartridge ID of the nonsystem cartridge from which the
CIB is being deleted.
MOOIF

The System Maintenance (MODIF) mainline program allows you to make updates to the
monitor system programs and/or the system library. This program changes the word of
the disk communications area (DCOM) that contains the version and modification level
of the monitor system. (lnfonnation stored in the user area in disk system fonnat can
also be changed with the MODSF disk maintenance program described later in this ch.apter.)
A card deck or paper tape containing corrections to update the monitor system to th(~
latest version and modification level is supplied by IBM. All modifications included must
be run, even if an affected program has been deleted from the system, to update the
version and modification l.;!vel.

4-8

Disk Maintenance Programs
MODI F control records

The MODIF program is called for execution with a monitor XEQ control record:

I'

5

10

15

20

25

30

35

'"

45

1111111 Mti'1111111111 milllllllllllllll!III!!!1

rim
50

Note. A system program phase that contains reload table entries (references to other
entries in SLET generated by the system loader during an initial load or reload operation)
cannot be replaced with MODIF; a system reload must be used (see Chapter 8 for reload
information). MODIF cannot be used if temporary mode is indicated in the current
monitor JOB control record. A cold start procedure is recommended prior to a system
reload if the reload precedes the execution of MODIF, as in a system modification update.
MODIF Patch Control and Data Records

The MODIF patch control records that can follow the monitor XEQ control record are:
• *MON that identifies a monitor program phase that is being modified
• *SUB that identifies a change to the system library

• II DEND that specifies the end of MODIF execu tion
The *MON patch control record, patch data records, and a II DEND control record
modify monitor program phases. A typical input card deck for system program maintenance is:

*MON patch
control record

/I ...

......-- Next monitor control record
AMODIF job

JoIII.....-

II~""__

I:~""--Data

MODI F define end record

Following system program maintenance control
records and data records (if any)

records

.....- - System program mai ntenance control record

'-_ _ _ _ _ _ _ _ _.....t....- - System maintenance program call

Each program phase that is changed requires a *MON control record and patch data
records that specify the changes. If MODIF determines from SLET that the FORTRAN
compiler or the assembler has been deleted from the disk, any modifications that are
included for these programs cannot be made; however, the version and modification levels
for these programs are updated in DCOM.

Monitor System Library

4-9

Disk Maintenance Programs
MODI F control records

*MON patch
control record
format

Card column

Contents

Explanation

1 through 4

*MON

These characters identify a patch to
any of the monitor system programs
and/or the system device subroutines.

5

Blank

6 through 8

vmm

A hexadecimal number;

v is the monitor version, and

mm is the monitor modification
level.

9

Oor G or R

o indicates system modification
update.
G indicates general temporary fix.
R indicates restricted temporary
fix.

10

BI;lJnk

11 through 14

l()C:XX

15

BlilJnk

16 through 19

nnnn

The SLET 10 (in hexadecimal) of
the monitor program phase to which
the patch is being made. 0000
indicates an absolute patch (see
columns 28 through 31 and 33
through 36).

The numbers (in hexadecimal) of

patch data records that follow this
control record.
20

Bh:mk

21

B or H

Th is character identifies the format
of the patch data records that follow.

S indicates binary system format.
H indicates hexadecimal patch format.
22

Blank

23 through 26

pppp

27

Blunk

28 through 31

dsu

A hexadecimal number that specifies
the total number of patch control
records to be processed. This field is
required only on the fjrst patch
control record.

A hexadecimal number;

d is the disk drive code, and
sss is the sector address of the
program being patched. Use this
field only when columns 11 through
14 contain 0000.

4-10

Disk Maintenance Programs
MODI F data records

additional field
information

Card column

Contents

32

Blank

33 through 36

cccc

37 through 80

Not used

Explanation

A hexadecimal number that specifies
the core address of the sector
specified in columns 28 through 31.
Use this field only when columns 11
through 14 contain 0000.

*MON. The programs that can be patched are: the FORTRAN compiler, RPG compiler,
~COBOL

compiler (program product), assembler, Disk Utility Program, supervisor, core
load builder, core image loader, and the system device subroutines. Modifications to the
system device subroutines must be made with a *MON patch, not a *SUB, *DELETE, and
*STORE patch.

o

or G or R. A system modification update (0) can be made only on a system of one level
lower than the level indicated in columns 6 through 8. A general temporary fix (G) can
be made only on a system of the same or one higher level than the level indicated in
columns 6 through 8. A general temporary fix does not change the level of the system.

A restricted fix (R) can be made only on a system of the same level as the level indicated
in columns 6 through 8.
pppp. A MODIF job can modify more than one system program and can modify both

system programs and the system library.
In the latter case, the specified count in columns 23 through 26 must include the *SUB
patch control record. The / / DEND control record is not included in this count.

ecce. Core addresses can be obtained from the microfiche listings.
patch data
records

Patch data records are in either hexadecimal patch format or binary system format. These
data records specify the beginning address of the patch, and the new data for the patch.
Patch data records cannot contain CALLs or LIBFs, and the relocation indicators will
not be used.

hexadecimal
patch data
record format

Card column

Contents

Explanation

1 through 4

aaaa

The beginning core address (in
hexadecimal) of the patch. Each
patch data record must contain the
core address.

5

Blank
Each 4-column field is one word of
patch data (in hexadecimat). Up to
13 words of patch data can be included in one data record. A blank
must separate each word of data.

6 through 9,
11 through 14,
16 through 19,

66 through 69
70 through 72

Blank

73 through 80

Not used

Monitor System Library

4-11

Disk Maintenance Programs
MODI F control records

Hexadecimal patch records. can contain ID/sequence numbers in columns 73 through :BO.
Zeros must be punched; leading blanks are not assumed.
binary system
patch data
record format

Word

Contents
Loeation

2

ChlJcksum

3

Type code (first 8 bits) 00001010

4 through 9

Rel:ocation indicators

10 through 54

Data words 1 through 45

55 through GO

I D and sequence number or blanks

Note: C,",ecksum verification is not made if word 2 is blank.

*SLJB patch
control record

The *SUB patch control record, DUP *DELETE and *STORE functions t new versions of
system library programs and subroutines, and a / / DEND control record are used to modify
the system library. A typical input card deck for system library maintenance is:

/I ...

~----

Next monitor control record

....- - - - MODI F define end record
A MODIF job

I~"""'_ _ _

Next DELETE and STORE and new
version of system library program, •••

I:""..,.---New version of system library program XX;(XX

1·..,.---- System library maintenance control record
L __________.........· · - - - System maintenance program call

4-12

Disk Maintenance Programs
MODI F control records

Only one *SUB control record is used in a MODIF job; however, any number of deletes
and stores can be included after a *SUB control record. When a MODIF job is used to
modify system programs and the system library, the *SUB control record must be the
last patch control record before / / DEND in the MODIF job. The *SUB control record
is also included in the count of MODIF patch control records coded in columns 23
through 26 of the *MON control record.
*SUB patch
control record
format

Card column

Contents

Explanation

1 through 4

*SUB

These characters identify a patch
to the monitor system library.

5

Blank

6 through 8

vmm

A hexadecimal number;

v is the monitor version, and
mm is the monitor mod ification
level.

9

o or G or

R

o indicates system modification
update.
G indicates general temporary fix.

R indicates restricted temporary
fix.

additional field
information

10 through 15

Blanks

16 through 19

nnnn

20 through 80

Not used

The number (in hexadecimal) of
delete and store control records
that follow this control record.

oor G or R. A system modification update (0) can be made only on a system of one level
lower than the level indicated in columns 6 through 8.
A general temporary fix (G) can be made only on a system of the same or one higher level
than the level indicated in columns 6 through 8. A general temporary fix does not change
the level of the system.
A restricted fix (R) can be made only on a system of the same level as the level indicated
in columns 6 through 8.

II DEND patch
control record

All MODIF jobs must end with a define end control record (/ / DEND). This record terminates MODIF execution and passes control to the supervisor.

II DEND patch

Card column

Contents

Explanation

control record
format

1 through 7

//I6DEND

16 indicates blank.

8 through 80

Not used

Monitor System Library

4-13

Disk Maintenance Programs
MODIF example

MODIF Example

This example illustrates how to change an instruction in the Disk Utility Program (DUP).
The following data is used to make the change:
• The SLET phase ID of the subroutine is /0009.
• Hexadecimal patch fonnat is used.
• The instruction address (from an assembly listing) is /03B6.
• The instruction is /D7FO.
• The instruction is to be changed to /D7D6.
• The new modification level is 12.
• One patch data record is required.
• Only one patch control record (/ / DEND) follows the *MON control record.
The coding sequence for making this change is:
1

5

II
/ /

l!i

10

Jolll
xEla ~Io ID Ilf

l~lN ~N ~¢ cl~

~13 8~

20

25

30

35

-~

;¢ ;9

D7 ~~- t- / / 11) £" WD
I··-t-- 1--1-

~-

¢~ ~1
-

-

- f - f-

:)0

45

40

_.

.. 1- f--l--. -

-

¢tJ ¢1

IH

.-

f-f--I--

f-f- f--I-

--t-

•.- f - t--I-

- - 1-- _.
1-

t··--I-

The following is printed on the console printer when the example is executed:
MODIF EXECUTION 020B
MON 20CO 0009 0001 H 001
DAAA REL-WD ADDR OLD
D7FO
0028
0096
03B6
SW 0 OFF=PATCH
SW 0 ON =ABORT
MODIF COMPLETED

NEW
D7D6

020C

Where:
MODIF EXECUTION 020B
DAAA
REL--WD

Execution of MOD IF starts on DM2, Version 1:[
Drive code and sector address of the patch
Relative word within the sector that is to be patched.

ADDR

Instruction address (from an assembly listing)

OLD

Original instruction

NEW

New instruction

SW 0 OFF=PATCH
SW 0 ON =ABORT

The system waits after these 2 lines are printed for
operator intervention. Set data entry switch 0 to OFF
and press PROGRAM START to write the patch to
disk or set data entry switch 0 to ON to prevent the
patch from being made.

Note. To prevent the printing of patch infonnation, set data entry switch 1 to ON.
MODIF COMPLETED 020C

4-14

The patch is installed, and the new level is 12.

I

MODSF

MODSF

The Library Maintenance (MODSF) mainline program allows you to update programs
that are stored in the user area in disk system format. (Monitor system programs are modified or replaced with the MODIF program discussed in the previous section of this chapter.)
MODSF updates a program by replacing existing code and/or inserting additional code
at the end of the program. Existing code is replaced in the program as it resides in the
user area. The existing code of several programs can be updated in one MODSF job,
but code can only be added to the last program included in the MODSF job. When
additional code is added to a program, MODSF moves the program into working storage
before inserting the new code. The modified program is still in working storage when
MODSF execution is finished and can be transferred back to the user area with DUP
*DELETE and *STORE functions.
On the basis of where the addresses you specify are in the program being modified, MODSF
determines whether a particular update is a replacement or an addition of code. A maximum of 31 words can be updated in one MODSF job.
The MODSF program is called for execution with a monitor XEQ control record:

~5

10

15

20

25

30

35

40

45

50

Monitor System Library 4-14.1

This page int(mtionally left blank

4-14.2

Disk Maintenance Programs
MODSF control records

MODSF Patch Control and Data Records

The MODSF patch control records that can follow the monitor XEQ control record are:
• *PRO that identifies the program that is being modified.
• *END that specifies the end of MODSF execution.
*PRO patch
control record

The *PRO patch control record, patch data records, and an *END control record are used
to modify programs and subroutines stored in the user area. A typical input card deck
for library program maintenance is:

*STORE WS UA

U
11....-..1'""........-

These DUP control records are
included only if last program
was expanded.

MODSF terminator record

Any number of programs may be
1111-"'-- updated, but only the last may be
expanded.

(Patch control
record)

(Patch control
record)

Patch control and data records
if second program is to be updated.

Patch control and data records for
modification of first (or only) program.

II XEa MODSF

Each program or subroutine that is being modified requires a *PRO control record and
patch data records that specify the changes being made.

Monitor System Library

4-15

Disk Maintenance Programs
MODSF control records

*PRO patch
control record
format

Card column

Contents

1 through 4

Explanation
These characters identify a MODSF
patch control record.

5

Blank

6 through 8

vmm

A.hexadecimal number;

v is the current monitor version, and
mm is the current monitor modification
level.

9

B:lank

10 through 14

pname

15

Bl1ank

16 through 19

nllnn

The name of the DSF program being
updated. (If the program has
secondary entry points, this must be
the name of the primary entry pOint.)

The number (in hexadecimal) of

patch data records that follow this
control record.

20

Bllank

21

m

Indicates addressing mode, where
m is:

P for program-address mode, or

o for disk-displacement mode.

4-16

22

Blank

23 through 26

xxxx

27,37,47,57

Blanks

28 through 31
'38 through 41
48 through 51
58 through 61

aeaa
ae,aa
asaa
88:aa

32,42,52,62

Blanks

33 through 36
43 through 46
53 through 56
63 through 66

wvv
ww
wvv
ww

67 through 72

Rt3Served

73 through 80

Nt:>t used

Cartridge 10 of the cartridge on
which the program being modified
is stored. (A cartridge lOis not
necessary if the program is stored
on the master cartridge.)

Each of these optional fields specifies
an address (in hexadecimal) at which
the current content of the program
is compared with the val ues specified
beginning in column 33.

The value (in hexr blank

1 indicates one-word integers are
used.

C indicates input from cards.

"-

Blank indicates that input is from disk.
32

Blank

33

W or blank

Windicates that an object time
warning message is to be printed if
a real number (see "R-F ield Type" in
Appendix J) is out of range upon
conversion.
Blank indicates that the object time
warning message is not printed.

4-22

34 through 71

Bllmks

72

p

73 through 80

Not used

This character identifies this record as
a file description record.

Disk Maintenance Programs
computing DFCNV file sizes

additional field
information

Name. Use the exact name of the FORTRAN or CSP file that is being converted.

computing
file sizes

Both the input and RPG file sizes are calculated from the information that you specify
in the file description control record. These computed sizes are checked against their
corresponding LET or FLET entries for correct size. The folloWing formulas are used
to calculate the input and output file sizes.

RPG name. The RPG file name cannot contain any special characters, although the input
me name can contain the character $. DFCNV does not check the RPG file name for $.

l.

Compute the number of words (L) in a record:

L=~
2

where
C is the record size in characters. Round the answer to the next higher number
if the answer has a remainder.

2.

Compute the number of records (N) that can be contained in one sector:
N= 320
L

where

L is the length in words of each record compu ted in Step 1, and 320 is the
number of words in a sector. Disregard the remainder, if any.
3.

Compute the input file size (1) in sectors:

I=~
N

where

R is the number of records in the file, and N is the number of records per
sector computed in Step 2. Round the answer to the next higher number if
the answer has a remainder.
4.

Compute the output file size (0) in sectors:
0= R+l
N

where

R is the number of records in the file, and N is the number of records per
sector computed in Step 2. Round the answer to the next higher number if
the answer has a remainder.
These are the same fonnulas that you use to calculate record and file sizes of sequentially
organized files, see "File Processing" in Chapter 6.

Monitor System Library

4-23

Disk Maintenance Programs
DFCNV control records

field specification
(:ontrol record

The second required control record, field specification, describes the RPG fields for the
converted data. Descriplions and examples of each field type supported by the program
are in Appendix J.

Caution: DFCNV does not check data format; therefore, you must know in detail the
format of the fields of your FORTRAN or CSP input me.
You can use as many complete field specifications' on a field specification control f,ecord
as can be placed in columns 1 through 71. Column 72 of each record must contain an S.
Field specifications must be placed on the control records in the same order as the I;;orresponding fields of the input record. Each field specification must be separated from
the next with a comma. Blanks embedded in specifications or blanks between specifications are not allowed. The following is an example of a field specification control record:

Selected field conversion can be done by using the X-field type. See Appendix J for a
description of this field type. Data can be rearranged and field size can be modified with
the m tenn of fieJd types. When data is rearranged or fields are expanded, you muslt prevent data overlay in the converted field.
repeat specification
option

Identical fields that are sequentially repeated can be specified with only one field specification for any field type except the X-field type. You specify the repeat option by immediately following the specification being repeated with the character R and the total
number of identical fields. Each repeat field begins in the first vacant output column after
the previous field; that is, columns are not skipped when the repeat specification is used.
For example, the following field specification describes three integer fields, the first
beginning in column 15 of the RPG record. Each field is packed and is five charactt~rs long
with 2 places to the right of the decimal point:
15-15.2(p)R3
The 3 resulting output fields start in the eighth word of the output record as:
Word:
Contents:

8
XXXO

9
OFXY

10
YOOF

11
ZZZO

12
OF40

where
XXX, YYY, and ZZZ represent the three integer fields.
optional control
record

4-24

When any F-field type conversions are specified on the field specification control record,
an optional control record is required. This control record must contain the 40 character
translation table for CSP A3 fonnat and the character A in column 72. This control record
immediately precedes the first field specification control record that specifies F-field
type conversion. Only one conversion table is allowed per file; if more than one is included in the control records, the additional tables are ignored. The conversion table
must correspond to the original table used to convert to CSP A3 format.

Paper Tape Utility Program
PTUTL

end-af-file
control record

The third required control record for DFCNV is the end-of-file control record. All other
DFCNV control records must precede the end-of-file (/*) control record.
DFCNV Example

This example illustrates how to convert the FORTRAN file named FORFL to an RPG
file named RPGFL. The FORTRAN file contains 1,000 records, each 10 words long.
The file is standard precision with one-word integers. One such FORTRAN record is as
follows:

1

Word:
Content:

3A7E

2
D64B

3
40D5

Word:
Content:

8
03C8

9

COOO

10
0083

4

5

D540

D4Cl

6
BCOO

7
0080

'The RPG file consists of records 40 characters long. The coding for converting the
FORTRAN file is:
1

5

10

15

25

20

30

35

~---I-

IJ~

65

40

II Il08
1
III/ I~ EK.: ID F~ WV
lt~--F~ ~If IL tR~ 16F L lal ltl¢ I¢ kit I¢ ~14 I~ Is
1-I];; 3 .I~ ,15 -11 4 • 1., l.Z -I~ 7 • 5, 21 -Ill ~. z, lara -11 I~ . 2
--

72

-I--\---

,_.
1--1-

-i

After conversion, the RPG record that corresponds to the previous FORTRAN record is
stored on disk as:
Word:
Content:

1
FOFO

2
D440

3
F9F6

4
F8FO

5
4040

6
40FO

7
FOPS

8
F3Fl

Word:
Content:

9
F2D5

10
4040

11

D4Cl

12
D540

13
40D5

14
D64B

15
40FO

16
FIF4

Word:
Content:

17
F9F7

18
F4FO

19
F040

20
4040

PTUTL

The Paper Tape Utility (PTUTL) mainline program accepts input from the keyboard or
the 1134 Paper Tape Reader and provides output on the console printer and/or the 1055
Paper Tape Punch. You can make changes and/or additions to FORTRAN and assembler
language source records and monitor control records with PTUTL.
The PTUTL program is called for execution with a monitor XEQ control record:

The PTUTL program is also available as an IBM-supplied stand-alone program on tape
BPI7. The operating procedure for both PTUTL programs is in Figure 9-12, Chapter 9.
An example of using this program is also included under "Stand-alone Paper Tape Utility
Program (PTUTL)" in Chapter 9.

Monitor System Library

4-25

4-26

Monitor Control Records
how to code

Chapter 5. Control Records

You use control records to specify operations performed by the Disk Monitor 2 System.
The use of these control records provides for stacked jobs with a minimum of operator
intervention. The order of control records, source statements, and data in stacked jobs
is described under "Stacked Input Arrangement" in Chapter 6.
The control records in this chapter are grouped according to the monitor program that
they are associated with. These groups are:
• Monitor control records
• Supervisor control records
• DUP control records
• Assembler control records
• FORTRAN control records
• RPG control records
Each section of this chapter consists of a general function description, the order in which
the control records are placed in the input stream, general coding considerations, and a
description of each control record.
Other less frequently used control records are included in Chapter 4, "Monitor System
Library." The control records described in Chapter 4 apply to specific, infrequently performed procedures.
Note. The System 2501/1442 conversion routine interprets the following character punches
as equal: 'and @, + and &, =and #,) and <, (and %.

The characters', +, =,), and (are printed. The conversion routine is used during analysis
of control records, source input for language processors, and DUP input/output data.
This routine provides uniformity for 024 and 029 prepared input.

MONITOR CONTROL RECORDS

functions

The monitor control records described in this section define control and load functions
that are performed by the monitor system. These functions are:
• Initializing jobs
• Loading the assembler, the language compilers, or the Disk Utility Program into core
for execution
• Starting the execution of your programs
• Printing comments during monitor system operations
• Changing print devices during monitor system operations
The JOB monitor control record defines and initializes the beginning of jobs. Other
monitor control records are placed behind the JOB control record to specify the operations
to be performed during a job. A detailed description of the order of control records, program statements, and data files in the input stream is in Chapter 6 under "Stacked Input
Arrangemen t."

coding

Information must be coded in the indicated card columns in monitor control record formats. Columns 1 and 2 always contain slashes (/ /). The character ~ and reserved card
columns indicate that the columns must be blank. You can replace card columns shown as
not used with comments.
Con trol Records

5-1

Monitor Control Records
/I JOB

----

/I JOB
'general function

A JOB monitor control record defines the start of a new job. This control record causes
the supervisor to initialize a job, which includes:
• The initialization of parameters in the core communications area (COMMA) and in
sector @DCOM
• The setting of the temporary mode indicator if the job is executed in temporary mode
• The definition of the cartridges to be used during the current job
• The definition of the cartridge that contains the core image buffer used for the current
job
• The definition of the cartridge that contains working storage used during the current
job
• The definition of the cartridge that contains the unformatted I/O disk buffer area for
use during the current FORTRAN job
• The definition of a n,ew heading printed on each page printed by the principal print
device
• The reading of EQUAT supervisor control records into the supervisor control record
area (SCRA)

format

5-2

Card column

Contents

1 through 6

//t6JOB

7

Reserved

8

Temporary mode
indicator

9 through 10

Reserved

11 through 14

First ID

15

Reserved

16 through 19

Second ID

20

Reserved

21 through 24

Third ID

25

Reserved

26 through 29

Fourth ID

30

Reserved

31 through 34

Fifth ID

35

Reserved

36 through 39

CIB ID

Explanation

T or blank. A T indicates that
temporary mode is desired for
this job.

This is the I D of the master cartridge
(logical drive 0),

This is the ID of the cartridge on
logical drive 1.

This is the ID of the cartridge on
logical drive 2.

Th is is the I D of the cartridge on
logical drive 3.

This is the ID of the cartridge on
logical drive 4.

This is the ID of the cartridge contain ing the CI B to be used duri ng
this job.

Monitor Control Records
II JOB
Card column

Contents

40

Reserved

41 through 44

Working
storage 10

46

Reserved

46 through 49

Unformatted disk
I/O 10

60

Reserved

61 through 68

Date, name, etc.

69

Not used

60 and 61

EaUAT
record count

62 through 80

Not used

Explanation

Th is is the 10 of the cartridge containing the working storage to be
used by the monitor during this job.
See *F 1LES, for details on working
storage for your programs.

This is the 10 of the cartridge containing the unformatted disk I/O
area to be used during this job.

This information is printed at the top
of every page of the listing on the
principal print device during this job.

This number specifies how many
EQUAT records follow this JOB
record.

Con trol Records

5-3

Monitor Control Records
II JOB

additional field
information

Temporary Mode Indicator. A T in column 8 causes all programs and/or data files stored
by DUP in the user area during the current job to be deleted from the user area when the
next / / JOB control record is read. Temporary mode places restrictions on some of the
DUP operations as shown in the followng chart:
DUP operations

Restrictions

DUMP

None

DUMPDATA,DUMPDATA~E

None

STORE

None

STORECI

To UA only

STOREDATA,STOREDATAE

To UA and WS only

STOREDATACI

To UA only

STOREMOD

Not allowed

DUMP LET

None

DUMPFLET

None

DWADR

Not allowed

DELETE

Not allowed

DEFINE FIXED AREA

Not allowed

DEFINE VOID ASSEMBLER

Not allowed

DEFINE VOID FORTRAN

Not allowed

DEFINE VOID RPG

Not allowed

DEFINE VOID COBOL

Not allowed

DFtLE

To UA only

MACRO UPDATE

Not allowed

First ID through Fifth ID. These IDs define the cartridges that are used during the current
job. These cartridges can be mounted on the physical disk drives in any order; the order of
the IDs on the JOB control record specifies the logical assignments for the cartridges.
The first through the fifth IDs correspond to logical drives 0 through 4, and must be specified consecutively. When 3 drives are being used, only the first through the third IDs are
specified.
The cartridge-related entrie's of the core communications area (COMMA) and sector @DCOM
are filled according to the logical order specified by the JOB control record. The first [D can
be left blank, in which case~ the master cartridge for the last JOB will also be the mastm
cartridge for the current JOB. A cartridge ID is not required when only one cartridge its used
during the current JOB. In this case, the master cartridge from the last JOB or that W~IS
specified during a cold start is used.
The first cartridge ID can be used to define a system cartridge that is different from the one
currently being used as logical drive O. The specified cartridge must be the same monitor
modification level as the one it replaces.
CIB ID. This is the ID of the cartridge that contains the core image buffer to be used
during the current job. The CIB ID is optional. If this ID is omitted, the CIB on the master
cartridge is assumed by the system. If the CIB on the specified cartridge has been deleted,
the CIB on the master cartridge is assumed for the current job. Core image programs are
built faster when the specil1ed CIB is on a cartridge other than the master cartridge.
Working Storage ID. This field specifies the cartridge that contains the working storage
thaUs used during the current job. The working storage ID is optional. If this ID is
omitted, working storage on the master cartridge is used except when otherwise specil1ed
on DUP control records (se:e "DUP Control Records" in this chapter).
Core image programs are built faster when the specified working storage is on a cartridge
other than the master cartridge. They can be built even faster when the IBM system area,
the CIB, and working storage are all on separate cartridges.
,5-4

Monitor Control Records
/I JOB
II ASM

Programs are assembled or compiled faster when system working storage is on another cartridge. (See "*FILES" under "Supervisor Control Records" in this chapter for specifying
working storage for use by your programs.)

Unformatted Disk I/O ID. This field specifies the·cartridge that contains the unformatted
I/O disk buffer area to be used during the current job. The unformatted disk I/O ID is
specified when only unformatted I/O (data me named $$$$$) is used during execution
of a FORTRAN program. (See "Initializing $$$$$ Data Files for Use With FORTRAN
Unformatted I/O" in Chapter 6 for more information.)
Date, Name, Etc. This information is printed on the top of each page printed by monitor
system programs, except RPG. This causes a skip to channell on the 1132 or 1403 printer
or 5 consecutive carriage returns on the console printer. The page count is reset to one,
and the current page heading is replaced with whatever appears in columns 51 through
58 of the JOB control record. HDNG statements (assembler language) and ** records
(FORTRAN header control record) cause additional information to be printed.
EQUAT Record Count. This parameter specifies the number of EQUAT supervisor control records (if any) that follow the JOB control record. These records are read and
written in the supervisor control record area (SCRA).

II JOB Examples
1

10

5

15

20

25

30

35

45

40

50

55

II kllolB
t/()~

II I

1~ 1-1-

~

~f--

'-

f-,-

~

f-,- 1-.f-f--

I-

~f--

l-

f-I-

I-

~I-

I-

1---

-1-r-'--'-

1--

-'r ---

+~-.-+:::=
--

---r--- -

-r ---

0
f)

This specifies temporary mode for the current job, a heading
for each printed page, and that 2 EOUAT control records
follow.

e

~+-

o-Z--

J'() 1¢15 ~~ ~6

This is all that is necessary for a one-drive system.

f--

f-I-

1() I'~ if) t)~

65
_..

Wl4 4IJE

7

II Jk:>~
~f--

60
.-

-+-I--~ -

-

f-.-

-.-

-

._.-

l-i-+-

_~-- ..- l--I--I-

This specifies disk lOs 1004, 1005, and 1006 on logical drives
0, 1, and 2, respectively, and that 1005 contains the CI Band
1006 contains working storage for this job.
- -

-r---,----r-I-~

.. ~~-

f-

-f-

I

I- r

~- .
~-I--

-f

1--1----

1-1-

r: ~t~:~

II ASM
general function

This control record causes the supervisor to read into core storage and transfer control to
the assembler. Any assembler control records used and the source program statements to
be assembled must follow an ASM control record. Monitor comments control records
(// *) cannot follow an ASM control record.

format

Card column

Contents

1 through 6

IIt6ASM

7 through 80

Not used

Explanation

Control Records

5-5

Monitor Control Records

/I FOR
/I COBOL

1/ RPG
1/ DUP

II FOR
general function

This control record causes the supervisor to read into core storage and transfer control to
the FORTRAN compiler. Any FORTRAN control records used and the source statements
being compiled must follow a FOR control record. Monitor comments control records
(/ / *) cannot follow this control record.

format

Card column

C:ontents

1 through 6

IIt6FOR

7 through 80

Not used

Explanation

/I RPG
general function

This control record causes the supervisor to read into core storage and transfer control to
the RPG compiler. RPG control cards and specification statements must follow an
RPG control record. Monitor comments control records (/ / *) cannot follow an RPG
con trol record.

format

Card column

('..on tents

1 through 6

llt6RPG

7 through 80

Not used

Explanation

II COBOL
~jeneral

function

format

This control record causes the supervisor to read into core storage and transfer con1trol to
the COBOL compiler (a program product). Monitor comments (// *) control records
cannot follow a COBOL control record.
Card column

Contants

1 thrQlJgh 8

IIt6COBOL

9 through 80

Not used

Explanation

/I DUP
~jeneral

5-6

function

This control record caus·es the supervisor to read into core storage and transfer con1trol to
the control portion of the Disk Utility Program (DUP). A DUP control record (see :'DUP
Control Records" in this chapter) must follow this control record. Only one / / DUll monitor control record is required to process any number of DUP control records. Monitor
comments control records (/ / *) can follow the DUP monitor control record.
Card column

Contents

1 through 6

/1t6DUP

7 through 80

Not used

Explanation

Monitor Control Records
II XEQ

I/XEa
general function

This control record causes the supervisor to initialize for execution of a core load.
Comments control records (// *) can follow an XEQ control record if supervisor control
records do not follow and if data is not entered through the principal input device
during execution. The comments control records are printed after execution is complete.

format

Card column

Contents

1 through 6

/IVJXEQ

7

Reserved

8 through 12

Name

13

Reserved

14

Core map
indicator

15

Reserved

16 and 17

Count

18

Reserved

19

Disk I/O
subroutine
indicator

20

Reserved

21 through 24

Cartridge 10

25

Not used

26

LOCAL-callLOCAL indicator

27

Not used

28

SpeciallLS
indicator

29 through 80

Not used

Explanation

This is the name (left-justified) of the
DSF program or DCI program to be
executed.

L or blank. An L indicates that a core
map is to be printed for this and all
DSF programs linked to during this
execution.

A decimal number (right-justified)
that indicates the number of
supervisor control records that fOllow.

This specifies the disk 1/0 subroutine
to be loaded into core by the core
image loader for use by the core load
during execution.

The 10 of the cartridge that contains
the mainline program in its working
storage (valid only if a name is not
specified in columns 8 through 12;
blanks in this field indicate that the
program is in system working storage
when a name is not specified in
columns 8 through 12).

A punch in this column enables a
LOCAL subroutine to call another
LOCAL.

A punch in this column indicates that
ILSs for this core load should be
chosen from the special I LSs.

Note: When column 14 is blank, no warning is given if a file is truncated while a
FORTRAN core load is being built.

Con trol Records

5-7

Monitor Control Records

II XEa

additional field
information

Name. This is the name of the program, stored in the user area or fixed area, that is executed.
When this field is omitted, the program to be executed is assumed to be stored in system
working storage, or in working storage on the cartridge specified in columns 21 through
24 of this control record.

Core Map Indicator. An L punched in column 14 of this control record causes the printing
of a core map for the program being executed and for all programs linked to during
execution (see "Reading a Core Map and a File Map" in Chapter 6 for examples of cme
maps).
Count. A right-justified decimal number in columns 16 and 17 indicates the number of
supelVisor control records (LOCAL, NOCAL, FILES, and G2250) that follow this control
record.
Disk I/O Subroutine Indicator. A decimal number in column 19 identifies the disk I/O
subroutine used by the core load during execution.
Column 19

Disk I/O subroutine

blank ,or Z

DISKZ
DISKI
DISKN

o or 1
N

Any other character is invalid and causes execution to be bypassed. All DSF programs that
are linked to during execution must use the same disk I/O subroutine as the program that
calls them.

LOCAL-Call-LOCAL Indicator. A punch (any character) in column 26 provides for a
LOCAL subroutine to can another LOCAL subroutine during execution, provided the
restrictions listed under "LOCAL-Calls-a-LOCAL" in Chapter 6 are met.
SpecialILS Indicator. A punch (any character) in column 28 indicates that special interrupt
level subroutines (ILSs named with an X before the number, as ILSX4) are used for this
core load. If column 28 is blank, the standard set of ILSs is used.
In addition to the functions of the standard ILSs, special ILSs at the beginning of their
execution save the contents of index register 3 and set this register to point to the transfer vector. Special ILSs n~store the original contents of index register 3 at the end of their
execUrtion. Because the special ILSs save and restore the contents of index register 3,
you can use this register in your programs.
Special ILSs require 5 more words of core storage per ILS than standard ILSs. The ~:pecial
ILSs for interrupt levels :2 and 4 are loaded, together with other subroutines, as part of
the core load. You can write ILSs to replace any of the IBM-supplied ILSs, standardl or
special.

5-8

Monitor Control Records
II XEQ
1/ * (cbmments)

II XEQ Examples
-I

10

5

20

15

30

25

35

40

II IXElc;

-f-

WA ~IE

I/ XEQ
II XEIQ

I¢z

X X

I-r-

r-~r-

c-t-

--+- - f---

r-I--

-~

-l-

f----

11;Id4

L

-

- -f-

5C

45

- --

0

This specifies execution of the program stored in working
storage on the master cartridge.

E)

This specifies that the named program (in the UA or WS) is
to be executed, that two supervisor control records follow,
that a LOCAL calls another LOCAL, and that the special
I LSs are to be used for this core load.

8

This specifies the printing of a core map, and that the program stored in working storage on disk 1004 is to be
exectued.

r

--

I-t-I-r-

1-1I-I-r
r--'-r

--f--f---f--f-

IiIIIIIIIIIi

'--

-_._- I--f-- f-

I I I I I I I I I I I I I I-tt II t tt tmt I tiut

II * (Comments)
general function

This control record causes the alphameric comments contained on the / / * control record
to be printed on the principal print device. The information is read and printed, and the
next control record is read from the input stream. Comments control records can be used
preceding a PAUS monitor control record to instruct the operator as to what he is to do
during the pause in monitor system operations.
When the console printer is used to print monitor and supervisor control records as a
result of a CPRNT monitor control record, comments control records are printed on the
principal printer.
Comments control records cannot immediately follow an ASM, RPG, FOR, or COBOL
monitor control record. Comments control records can follow an XEQ control record if
supervisor control records do not follow and if data is not entered from the principal input
device during execution.

format

Card column

Contents

1 through 4

I/t/J*

5 through 80

Comments

Explanation

Any alphameric characters can be used.

Can trol Records

5-9

Monitor Control Records

/I PAUS
/I TEND

/I TYP

/I PAUS
general function

This control record causes the supervisor to pause at a WAIT instruction. Supervisor operation continues when you press PROGRAM START on the console. This pause allows you
to perfonn operator actions, such as add cards to the card reader, change satellite disk
cartridges, or change paper tapes within a JOB stream. The status of the monitor system
is not changed during a pause.
Monitor comments control records (// *) preceding a P AUS control record can describe
the operator actions perfonned during the pause.

format

Card column

Contents

1 through 7

lit6PAUS

8 through 80

Not used

Explanation

/lTVP
gE~neral

function

This control record temporarily assigns the console keyboard as the principal input device.
The keyboard replaces the card or paper tape reader as the principal input device until a
TEND monitor control wcord is entered through the keyboard.
The use of the keyboard as the prinCipal input device for entering control records, program
statements, and data is described under "Entering Jobs from the Console Keyboard" in
Chapter 7.

format

Cal'dcolumn

Contents

1 through 6

1/t6TYP

7 through 80

!\lot used

Explanation

/I TEND
gtmeral function

This control record reassiigns the card or paper tape reader as the principal input device.
The reassignment is to the device that was the principal device before the TYP monitor
control record was read.
A TEND control record Gan be entered only from the keyboard.

f()rmat

5-10

Card column

Contents

1 through 7

I/t6TEND

8 through 80

Not used

Explanation

Monitor Control Records
II EJECT
1/ CPRNT
II CEND

/I EJECT
general function

This control record causes the 1403 Printer or 1132 Printer, whichever is the principal
print device, to skip to a new page and print the page header. When the console printer is
assigned as the principal printer, or when a CPRNT monitor control record has been
processed,S lines are skipped and the page header is printed.

format

Card column

Contents

1 through 8

1116EJECT

9 through 80

Not used

Explanation

/I CPRNT
general function

This control record causes monitor and supervisor control records that follow CPRNT to be
printed on the console printer. All other control records and monitor comments control
records are printed on the principal print device.
An EJECT monitor control record read after a CPRNT affects the console printer rather
than the principal print device.
A CEND monitor control record is used to return the printing of monitor and supervisor
control records to the principal print device. A system reload and/or the DEFINE VOID
function of the Disk Utility Program (DUP) also restores the original principal print
device.

format

Card column

Contents

1 through 8

I1I6CPRNT

9 through 80

Not used

Explanation

/I CEND
general function

This control record restores the printing device that was the principal printer before a
CPRNT monitor control record was processed.

format

Card column

Contents

1 through 7

I1I6CEND

8 through 80

Not used

Explanation

Con trol Records

5-11

Supervisor Control Records
how to code

SUPERVISOR CONTROL RECORDS

functions

Supervisor control records are used by the core load builder to:
• Provide for subroutine overlays during execution, *LOCAL
• Include in the core load subrou tines that are not called, *NOCAL
• Equate disk storage data mes defined in a mainline program during compilation or
assembly to specific files that are stored on disk, *FILES
• Provide graphic display capabilities, *G22S0
• Substitute a subroutine with another subroutine, *EQUAT
LOCAL, NOCAL, FILES, and G22S0 supervisor control records are pJaced in the input
stream following an XEQ monitor control record, which names a mainline program stored
in disk system format, or following a STORECI DUP control record.
(*G2250
(*FILES
( *NOCAL

~

(*LOCAL

~-

*STORECI04

/I XEa 04

I~

In either case, the control records are written on disk in the supervisor control record.
area (SCRA), from which the core load builder reads them for processing during construction of a core load.
Up to 99 supervisor control records can follow an XEQ or STORECI control record;
Supervisor control record~~ do not have to be placed in any special order by type; however, all the control records of one type must be kept together.
EQUAT control records are placed after a JOB monitor control record and maintain
their function until the next JOB control record is read from the input stream.
( *eaUAT
~----------------------------------.--.I II JOB 01

The supervisor reads EQUAT c~ntrol records and writes them into the SCRA, from which
the core load builder reads them for processing during construction of a core load.
coding

An asterisk (*) is coded in column one of all supervisor control records. The rest of the
information specified in supervisor control records, except the G22S0 control record, is
co~ed continuously; that is, blanks (referred to as embedded blanks) cannot be coded
within the characters in a record. Information specified in the G22S0 control record must
be coded in the fields indicated in the G2250 format description in this section.
The program name that is coded in all types of supervisor control records can be either
the primary entry point name or any secondary entry point name in the program.

5·12

Supervisor Control Records
*LOCAL

*LOCAL
general function

This control record specifies the names of LOCAL (load-on-call) subrou tines that are to
be read, when called during execution, into the LOCAL overlay area of a core load.
(See "Rules for LOCAL and NOCAL Usage" and "!:'OCAL-Calls-a-LOCAL" in Chapter 6.)

format

Note: Embedded blanks are not allowed in a LOCAL control record.

additional field
information

MAINl. You replace MAIN! with the name of the DSF mainline program that is already
stored in the user area on disk.
,SUBl,SUB2, . .. SUBn. You replace SUBl through SUBn with the names of the sub-

rou tines that are used as LOCALs with the specified mainline program.
continuation
records

The specification of LOCAL subroutines can be continued from one LOCAL control
record to another by placing a comma after the last subroutine specified on each LOCAL
control record, except the last. The name of the mainline program is not included on the
continuation control records.
1

continuation
example

5

10

15

20

30

25

4L ~l4 IN 1, su ~t , S UR 2,
*L IOC
ok: IAL 11k; 83,
--f-- 0------

*L

·

- --~--

,--

35
-

--f---

- f-- -

-

40

- - r-f--

~--

- f

-

~§r----

-f--

---c-c --

-1--

·

f-f- --

·

-- -

:rrL loe AL SIU Bn

,----

-f--

----

-

---- ---

----

,---

r-c-

,--- ' - - - - -

-

--

,---

f--

------

I· . --f-+

-

--

--

- 0--1-

'--

--

-

50

r-,--

-~-

-----

lhe results would be the same if the control records were:
1

5

10

15

20

25

30

t-+-++-+-1t-+-+-+--t-t-+-+-1t-+-+--t-t--+-+-+-t-+-+--Ir--t--t--t--- - r-- f--f--

35

--

f---

r~c --·-1

40

,

.,

=

Con trol Records

~

5-13

Supervisor Control Records
*LOCAL
*NOCAL

All LOCAL subroutines that are used by each mainline program during execution must be
specified on LOCAL control records following the XEQ monitor control record that
starts execu tion.
coding for
linked programs

Separate LOCAL control records must be used for each mainline program that calls
LOCAL subroutines during execution.

example

5

1

10

IL ole AIL ~A IW 1 , ~

I~L Illil' l.llil

~I.ll

I

lIN

2, s
..

_-

f-- - -f-·

MAIN2. You replace MAIN2 with the name of a mainline program that is called by the
program represented by MAINl.
nUlinline program in
working storage

When the mainline program is to be executed from working storage, the name of the
mainline program is omitt~d from LOCAL control records. This same format is used when
LOCAL control records are specified with the Di-sk Utility Program (DUP) STORECI
operation.

example

*NOCAL
general function

This control record specifies the names of NOCAL (load-although-not-called) subroutines
that are to be associated with a specified mainline program. NOCAL subroutines are included in the core load even though they are not called. (See "The Use of NOCALs" and
"Rules for LOCAL and NOCAL Usage" in Chapter 6.)
NOCAL control records are coded in the same format as LOCAL supervisor control
records, except that *NOCAL is coded in place of *LOCAL.
.---'
1

- - - - - - - - . - -.•
10

5

NIN 00 AL ~A

format
ex.amples
•

~~ OC AL

IW 11, S
-

.....

,Ij lJ~ 1'~I~
- ._- -

In the first format example, the specified NOCAL subroutines are included in the core
load built for the stored mainline program, MAINl. In the second format example, the
specified NOCAL subroutines are included in the core load built for a mainline program
in working storage. See "*LOCAL" for information about continuing a control record
to another, and coding for linking between programs.

5-14

Supervisor Control Records
*FI LES

*FILES
general function

This control record equates the file numbers specified in FORTRAN DEFINE FILE statements or in assembler FILE statements to the names of data files that are stored in the
user area and fixed area, or in working storage other than system working storage.
All the data mes in the user area or fixed area that are used by core loads during execution
must be defined on FILES control records following the XEQ monitor control record
that starts execution. All files thus defined are available for use by each core load in the
execution.
Data fIles that are equated for a program that is stored in disk core image (DCI) fonnat
must be stored in fixed areas for successful execution of the program. (See "Disadvantages of Storing a Program in Disk Core Image Fonnat" in Chapter 6.) When data mes
are equated for a DCI program and are stored on other cartridges, the data fIles must be
stored in the same location on the other cartridges as they were when the DCI program
was stored for successful program execution. Also, the other cartridges must be on the
same logical drives as they were when the DCI program was stored. These restrictions are
necessary because the core load builder places in the define fIle table in the DCI program
header an absolute sector address, including the drive code, for each equated data fIle.
No more than 159 data fIles can be equated for one execution.
1

format

5

10

15

..
, ...,

20

25

30

35

40

, ( PI l.E n , N~. ~~ 11 )
IF I Lf S( FI Lt 1 , IIA 'M!E. 1) I, •
If I Lt S( If I ~~ 1 , W14 ~~ f , ~A ~1 I) .,
rlf IL ~" ,N A~ !.",
( fl 'i.E 11 , ')1£1 ~~ n)
If. I LE. S( fl LIf- 1, f4!~ t)

,e

.,

Note: Embedded blanks are not allowed in a FI LES control record.

additional field
information

FILEl Through FILEn. You replace these with the file numbers that are specified in the
FORTRAN DEFINE FILE statements or assembler FILE statements in your program.
NAMEl Through NAMEn. You replace these with the names of the data fIles that are
stored on disk. Names can be omitted as in the third *FILES record in the format. When
omitted, 2 commas are required in the con trol record format, and the me is placed in
working storage on the specified disk.
CARl Through CARn. These are the IDs of the cartridges on which the respective data
mes are stored. The cartridge ID can be omitted. When omitted, the corresponding data
me is assumed to be on the cartridge on the lowest logical drive.

continuation
records

The specification of data files can be continued from one *FILES control record to
another by placing a comma after the last right parenthesis on each *FILES control record,
except the last.
1

continuation
example

5

10

15

20

25

JfF IL ~s (F IL 1£1 ~N ~M ~t ) ,
JJF IL ES (IF IL IlZ ,N~M IfZ ,~ ~E $-) .1

.

30

35

JliF IV- ,!=S (F IL e.n I,N Ar\1 IE 11

--------

- -

-- --!-

>--

.
~

50

45

40

- - ~-

-

--- -

c-c--i---

---~-

- f---

, eAI2 11)

~~-

t---r--

f-

~---

~----

r--

-

1-- ---

r---

--

t--~

1------

-- I--- t---~

f-----

-->--

- ---

--

---

~-

-

Control Records

5-15

Supervisor Control Records
*G2250

*G2250
general function

This control record causes the graphic subroutine package (GSP) communication module
(GCOM) to be included in a core load immediately following the mainline program. Other
supporting subroutines are also loaded into this area depending on the parameters sped.
fled'in the *G22S0 control record. (See the publication IBM 1130/2250 Graphic Subroutine Package for Basic FORTRAN IV, GC27-6934, for instructions on properly
loading the mainline program, and for information concerning the use of GSP subroutillles
as LOCALs and core storage layout requirements.

format

eardcolumn

Col1ltents

Explanation

1 through 11

*G225Omlmne

Specifies that graphic support is
required for the named mainline
program. You replace mlmne with
the name of the program. I f the
program being executed is in
working storage, the program name
is omitted.

12

Res;erved

13

U, blank, or N

U indicates the character stroke
subroutine containing upper case,
numeric, and special characters is
loaded.
Blank indicates the character stroke
subroutine containing upper case,
lower case, numeric, and special
characters is loaded.

N indicates that a character stroke
subroutine is not loaded.

14

Re::;erved

15

Blenk or N

Blank indicates the scissoring
subroutine is loaded.

N indicates the scissoring subroutine
is not loaded.

16

Reserved

17

BIElOk or N

Blank indicates the ICA area
expansion subroutine is loaded.

N indicates the ICA area expansion
subroutine is not loaded.

18

Reserved

19

Blunk or N

Blank indicates the index controlled
entity subroutine is loaded.

N indicates the index controlled
entity subroutine is not loaded.

20

Re:served

21

BlI!mk or N

Blank indicates the level controlled
direct entry subroutine is loaded.

N indicates the level controlled
direct entry subroutine is not loaded.
22 through 80

5-16

Not used

Supervisor Control Records
*G2250
*EQUAT

1

examples

5

10

20

15

ML MN!E lJ
2.25
'-1L MNE U
*6
*0 225 ML NNE
~G 22.5

N N

~

30

25

35

45

40

~

_..
.

--r'-

t-- ..

~-

--

_.

c···_• • • _.

r'-

--

50

f-- -._.

..... c·-

.t---t---

.-

-

f-

I

*EOUAT
general function

With this control record, you specify the substitution of subroutines during the building of
a core load. This control record can also substitute symbolic names in assembler language
DSA statements (limited to assembler programs). The EQUAT control record cannot be
used to substitute subroutines for RPG programs.
More than one EQUAT control record can be used if the exact number of records used
is punched in columns 60 and 61 of the preceding / / JOB monitor control record. (Information about using EQUAT control records is under "Use of the EQUAT Record" in
Chapter 6.)

format

additional field
information

SUB1, SUBm represents the name of the old subroutine. SUB2, SUBn represents the name
of the new subroutine. SUB2 is substituted for SUBl. This same order of substitution is
used when substituting symbolic names for DSA statements.

Note. The maximum number of pairs of subroutines that can be specified is 25.
During the following functions, the substitution of SUB2 for SUBI is accomplished in the
execution of the mainline program from working storage and the storing of MAIN.
1

example

5

II uOB

10

I~E laU A:7 (~ (JB 1. ,

20

15

50

25

55

60

6S

f

SU IR 21)

·-

"._.
,'"

-'-

f-f-- .. f--f---

..

--.-

f-f-

-,--

\

1/1/ XEQ

f----

·

\

r---

·

·

// DUP
1tS 70 'RE CI

---

I-.

WiS

VA

r-

MA I N

-t---- r-c'-

-. t--.

..-

--

-.-

----

/ I JOB

----

I
I

t---- - f-- . . I-

-

Con trol Records

5-17

DUP Control Records
how to code

DUPCONTROlRECORDS
functions

DUP control records are used to specify operations to be performed by the Disk Utility
Program. The types of operations that DUP control records specify are:
• Dumping and deleting programs and data files from disk
• Storing programs and data files on disk
• Printing the contents of the fixed location equivalence table (FLET) and the loc.ation
equivalence table (LET)
• Rewriting sector addresses in working storage
• Defining a fixed area on disk
• Deleting monitor system programs from disk
• Allocating disk space for data fIles and macro libraries
• Calling the Macro Update Program (MUP) into operation
DUP control records are placed in the input stream after a DUP monitor control record
(/ / DUP) as follows:

//JOB

Source program

Assembler control records

c:oding

5-18

--~~{~~~~~~~~~~

-'--)~~~~~~~~~~~~

DUP control records generally follow the format described in the following text. All fields
in the control record, except the count field, are left-justified and, unless otherwise
stated, are required. Additional field information is included, when necessary, in the
description of the specific control record.

OUP Control Records
how to code

Column 1. Column I always contains an asterisk (*).
Operation Field. Code the name of the desired DUP operation in columns 2 through 12
(2 through 21 for the DEFINE operation, and 2 through 13 for the MACRO UPDATE
operation). Columns 2 through 6 identify the basic operation (STOREDATACI);
columns 7 through 12 (or 21) identify the extended operation (STOREDATACI). Where
shown in the control record format, a blank character (~) is required within or following
the operation name.
From and To Fields. Code the from symbol in columns 13 and 14; that is, the symbol
specifying the disk area or I/O device from which information is to be obtained (the
source). Code the to symbol in columns 17 and 18; that is, the symbol specifying the
disk area or I/O device to which information is to be transferred (the destination). The
valid from and to symbols are:
Symbol

UA

Disk area or I/O device
User area on disk

FX

Fixed area on disk

WS

Working storage on disk

CD

Card I/O device. If the 1134 Paper Tape Reader is defined as the principal input
device, CO is equivalent to PT.

PT

Paper tape

PR

Principal print device

Note. The symbols UA, FX, and WS, when used, each specify an area on disk but do not identify
the cartridge on which the area is found.

Name Field. Code the name of the program, data file, or macro library involved in the
specified operation in columns 21 through 25. The name that you specify in this field
for a store operation is the name assigned to the program, data me, or macro library, and
is used to generate or search for a LET or FLET entry. The name can consist of up to 5
alphameric characters, and must be left-justified in the field. The first character must be
alphabetic (A-Z, $, #, @), and blanks (embedded blanks) are not allowed between characters of the name.

When referencing a program or data file stored on disk, the specified name must be an
exact duplicate of the LET or FLET entry.
Count Field. The count coded in columns 27 through 30 is a right-justified decimal integer. The function of the count field is defined in the individual control record fomlats
for those operations that require it.
From and To Cartridge ID Fields. Code the from cartn'dge ID in columns 31 through 34;
that is, the ID of the cartridge that contains the disk area from which information is to
be obtained. Code the to cartridge ID in columns 37 through 40; that is, the ID of the
cartridge that contains the disk area to which information is to be transferred.

Either or both of these cartridge IDs can be omitted. When a cartridge ID is omitted, and
the corresponding from or to field (columns 13 and 14 or 17 and 18) is the user area or
fixed area, a search is made of the LET (and FLET) on each cartridge specified in the
current JOB monitor control record. The search starts with the cartridge on logical drive
zero (the master cartridge) and continues through logical drive 4. If the from or to field
(columns 13 and 14 or 17 and 18) is working storage, a default to system working
storage is made when cartridge IDs are omitted. When a cartridge ID is specified, the
LET (and FLET) only on the specified cartridge is searched, or working storage on the
specified cartridge is used.

Control Records

5-19

DUP Control Records
altering LET/FLET
summary of operations

The use of the from and to cartridge IDs makes it possible for DUP (1) to transfer
programs and data files from one cartridge to another without deleting them from the
source cartridge, and (2) to process a program or data me even though the same name
appears in the LET or FLET on more than one cartridge.
Unused Columns. All columns indicated as reserved between column 2 and the last format
field on each control record must be left blank. The columns between the last format field
and column 80 are not used by DUP and are available for your remarks.
Altering LET and FLET

The 2 tables, location equivalence table (LET) and fixed location eqUivalence table (FLET),
are directories to the contents of the user area and fIxed area, respectively, on disk. You
can alter the contents of these 2 tables through the use of DUP store and delete operations
only.
Before storing a program or data me, DUP searches LET and FLET for the name specified
in the control record. When a cartridge is specified in the to cartridge ID fIeld on the control record, LET (and FLET) on only that disk is searched for the specified name. When a
to cartridge ID is not speciified, LET (and FLET) on all cartridges defined in the current
JOB monitor control recOll"d is searched. If the specified name is not found in any LET or
FLET, disk storage is allocated for the program or data file. The specifled name is assigned
to the program or data fIle and is used to generate a new entry in LET or FLET.
When dumping or deleting a program or data me from the user area or fixed area, the
name specified in the control record is searched for in LET and FLET in the same order
as the search before a store operation. If the specified name is found, the program or data
me is dumped or deleted as specified in the control record.
Information Transfer and Format Conversion

Figure;5-1 summarizes the DUP operations that transfer information from one device or
disk area to another device or disk area. In addition, the format conversions that are made
during the transfer of infonnation are shown. The different formats are described in
Appendix I. The acronyms used in Figure 5-1 for the various formats are:
Acronym
DSF
DDF
DCI
CDS
COD
CDC
PTS
PTD
PTC
PRO

NCF

Format
Disk system format
Disk data format
Disk core ima;ge format
Card system format
Card data for mat
Card core imElge format
Paper tape sy::;tem format
Paper tape data format
Paper tape core image format
Pri nter data format
Name code fClrmat

You should pay particular attention to Figure 5-1 when performing dump, store, and
delete operations, such as, dumping to cards and later using the cards to store the information back on the disk. Note that more than one way to dump and store data and porgrams is allowed, such as dumping a program to cards and later storing it back to disk.

5-20

FromAn.

To Ar.. Symbols, with Formats

Svmbals. with
Formats

FX

UA
DSF

DDF

DCI

DDF

DSF

UA

CD

WS

DCI

DSF

DDF

DUMP

DUMPDATA

DDF

!;lUMP
DUMPDATA

DCI

DUMPDATA

DDF

DUMP
DUMPDATA

DCI

DUMPDATA

DCI

COS

COD

DUMP

DUMPDATA

PT

CDC

PTD

DUMP

DUMPDATA

DUMP
DUMPDATA

DUMP
DUMPDATA

DUMP
DUMP DATA

DUMP
DUMPDATA

DUMP

DUMPDATA

PR

PTS

DUMP

DUMPDATA

DUMP
DUMPDATA

PTC

DUMP

DUMP
DUMPDATA

PRO

DUMP
DUMPDATA
DUMP
DUMPDATA

FX

DSF

WS

STORECI

STO RE DATA

STORECI

DUMP

STORE MOD
STORE DATA

DUMP
DUMPDATA

DCI

STORE DATA

STOREMOD
STOREMOD
STORE DATA.
STOREDATACI
STOREDATACI

DUMPDATA

STORE

STOREDATA

STORECI

STOREDATA

STORECI

STORE

STOREDATA STOREDATACI STORE DATA STOREDATACI

STORE DATA STOREDATACI

CDC

STORE DATA STOREDATACI STOREDATA STOREDATACI

STORE DATA STOREDATACI

STORE DATA

PTD

PTC

I

STORECI

STORE DATA

STORECI

STORE

DUMP

DUMP

DUMP

DUMP
DUMPDATA

DUMPDATA

DUMP
DUMPDATA

DUMP
DUMPDATA

DUMP
DUMPDATA

DUMPDATA

STORE DATA

STOREDATA STOREDATACI STORE DATA STOREDATACI

STOREDATA STOREDATACI

STOREDATA STOREDATACI STOREDATAj STOREDATACI

STORE DATA STOREDATACI

Note: DUMPDATA E and STOREDATAE.., the _ . DUMPDATA and STOREDATA,
respectively, except thet inforlNtion on disk for DUMPDATA E is assumed to be in pecked
EBCDIC fornwt. and input for STOREDATAE is converted to pecked EBCDIC format.

DUMPDATA

DUMP

DUMP
DUMPDATA

STOR E DATA

COD

STORE

DUMP

DUMPDATA

STOREMOD
STOREDATA

PTS

PT

STORE DATA

DDF

COS

CD

STORE
STORE MOD

DUMPDATA

DUMP

i

i
I

I

!

DUP Control Records
restrictions in T-mode
*DUMP

Restrictions Caused by Temporary Mode
When temporary mode is indicated in the current JOB monitor control record, some DUP
operations are restricted or not allowed. The following chart shows the restriction, if any,
on DUP operations when temporary mode is indicated.
DUP operations

Restrictions

DUMP

None

DUMPDATA, DUMPDATAI6E

None

STORE

None

STORECI

To UA only

STOREDATA, STOREDATAE

To UA and WS only

STOREDATAC!

To UA only

STOREMOD

Not allowed

DUMP LET

None

DUMPFLET

None

DWADR

Not allowed

DELETE

!'Jot allowed

DEFINE FIXED AREA

Not allowed

DEFINE VOID ASSEMBU:R

Not allowed

DEFINE VOID FORTRAI\I

Not allowed

DEFINE VOID RPG

Not allowed

DEFINE VOID COBOL

Not allowed

DFILE

To UA only

MACRO UPDATE

Not allowed

*DUMP

general function

This. control record (1) transfers information from the user area or fixed area to working
storage, or (2) makes information from the user area, fixed area, or working storage
available as card, paper tape, or printed output. Card, paper tape, and print formats are
illustrated in Appendix I.
DSF programs are transferred from the user area or fixed area to output devices in 2 phases.
The programs are first moved to system working storage, then to the outpu t device. As a
result, information residing in working storage before the DUMP operation is destroyed.
DCI programs and data fIles are transferred directly from the user area or fixed area to the
ou tpu t device. The contents of working storage remain unchanged.

5-22

DUP Control Records
*DUMP

DUP obtains the number of disk blocks to be dumped from the LET or FLET entry for a
DSF program or a data file, or from the appropriate working storage indicator in sector
@DCOM if the dump is from working storage. The actual core load length in words of a
DCI program is dumped. The word count is obtained from the core image header. Dumps
of a DSF program and a DCI program are contained in Appendix I.
format

Card column

Contents

1 through 6

*DUMPIh

7 through 12

Reserved

13 and 14

From symbol

15 and 16

Reserved

17 and 18

To symbol

19 and 20

Reserved

21 through 25

Name

26 through 30

Reserved

31 through 34

From
cartridge 10

35 and 36

Reserved

37 through 40

To
cartridge 10

41 through 80

Not used

Explanation

See the following summary chart.

See the following summary chart.

A name is required except when the
dump is from working storage to the
printer.

The following chart is a summary of the information transfers and format conversions performed by the DUMP operation.
*DUMP
summary chart

From symbols,
including formats

To symbols,
including formats

UA(DSF)

WS(DSF)

UA or WS(DSF)

CD (CDS)
PT(PTS)
PR(PRD)

UA or FX(DDF)

WS(DDF)

UA, FX, or WS(DDF)

CD(CDD)
PT(PTD)
PR(PRD)

UA or FX(DCI)

WS(DCI)

UA, FX, or WS(DCI)

CD (CDC)
PT(PTC)
PR(PRD)

Control Records

5-23

DUP Control Records
*DUMP
*DUMPDATA

additional field
information

From Symbol. When a dump is from working storage and the corresponding working
storage indicator is zero, an error message is printed.
To Symbol. When a dump is to cards and a 1442, Model 6 or 7, is used, each card is
checked to see that it is blank before it is punched. If a nonblank card is read, the monitor
system prints an error message and waits at $PRET with /1 OOF displayed in the ACCUMULATOR.
Note 1. The program name in a DSF mainline program header is cleared to zeros wht:n the
program is transferred from the user area to working storage.
Note 2. The subtype in a subroutine header is set to zero when the subroutine is dumped
from the user area to cards.
*DUMP Examples
-

------

o

1

5

*lD IliHP

I~S

~::.

X WS
r--- --

r-I-

r-i--

--

30

35

40

45

IP'R
r--- +-

1*ln UMP

25

20

f-JJ A- W5

€) *ID UIMP

e

15

10

50

-

~-

--

-

--f-- --

MAI N
~c

._

MA l.tJ1
-

..

-

-

---

- -

f--r-

- 1-. -

Up 103
---- --r- 1--1-

.-

-

0

This dumps a program from working storage to the printer.

€)

This dumps a program named MAl N from the user area to
working storage.

.

-

-

e

This dumps a program named MAl N 1 from the fixed area
on disk 1003 to system working storage.

-I

tttliii-t-H--t-tttt-t-ttttTt"1-H-t1tTttitlt1-

*DUMPDATA
general function

This control record (1) tIansfers information from the user area or fixed area on disk to
working storage, or (2) makes information from the user area, fixed area, or working
storage available as card, paper tape, or printed output. Card, paper tape, and print formats
are illustrated in Appendix I.
The contents of working storage are not changed when dumping to output devices, because information is tran::;ferred from the user area, fixed area, or working storage directly
to the ou tpu t devices.
The DUMPDATA operati.on differs from the DUMP operation in that the information is
always in data format after transfer. Also, the amount of information transferred depends
on the count field, if present, of the DUMPDATA control record or the block count of
the program or data file.

5-24

OUP Control Records
*OUMPDATA

format

Ca;d coluinn

Contents'

1 through 10

*OUMPOATAI6

11 and 12.

Reserved

13 and 14

F,omsy~bol

15 and 16

Reserved

17 and 18

To symbol

19 and 20

Reserved

21 through 25

Name

26

Reserved

27 through 30

Count

31 through 34

From
cartridge 10

35and:36

ReserVed

37. through 40

To·
cartridge I 0

41, t~rough. 80

Not used

*I)UMPDATA

From symbOls,
including formats

See the following summary chart.

See the following summary chart.

A name is required except when the
dump is from working storage to the
printer.

The count (a right-adjusted decimal
number) specifies the number of
sectors to be dumped. If this field Is
blank, the working storage indicator
or disk block count In LET or FLET
Is used.

The following chart is a summary·
perfonnedby DUMPDATA.
summary chart

Explanation

of the information transfers and format conversions

. To symbols,
including formats
Ws(OOF)

UA or WS(OSF)

CO(COO)
PT(PTO)
PR(PR'O)

UA or FX(OOF)

WS(OOF)

UA, FX, or WS(OOF)

CO(COO)
PT(PTO)
PR(PRO)

UA(OCn or FX(OOF)

WS(OOF)

UA, FX, or WS(OCI)

CO(COO)
PT(PTO)
PR(PRO)

Control Records

5-25

DUP Control Records
*DUMPDATA
*DUMPDATA E

iildditional field
iinformation

To Symbol. When a dump is to cards and a 1442, Model 6 or 7, is used, each card is
checked to see that it is blank before it is punched. If a nonblank card is read, the monitor
system prints a message and waits at $PRET with /1 OOF displayed in the ACCUMULATOR.

Count. This field specifies the number of sectors to be dumped. If present, the count
overrides the contents of the working storage indicator or the disk block count in the
LET or FLET entry; when present, this number of sectors is dumped regardless of
the length of the program or data file.
*OUMPDA TA Examples
-----_._--

,-------_..._ - 1

10

5

1D UMP AlTA

--

f- --f-

*~ UM [P DA T~
~~ UMIP

~17 Ae--

20

15

cr
-f-

CD

UA

--

E~

--

iC;--

_W ~~ -

s

25

__ W-- -- ~D_

-

!-- -

-

--f-- -

-

e
@

-f-- --e

35

aT At

--- -

f- --

-p i~ j) AI Al

- -

liD 03

-1- -- --

--

f-----

f - - ----

--f-- f-

-~~ l~li --f----

r--::- -- r---

-f- -f-

-- - - -

1--- --

- --

f-- --- f - -

--

1~~ 2

--

------

--~

50
._--

45

40

¢rp l¢J

DA TA

--1---

0

30

-

---

-- -

---

--- --1----

--

--

-- -~

c-- - - f - -I---- -

--

-

r-c---

-- - ,------- f- --

---

--- ----

Thlis dumps a data file named DATA from the user area to cards.
Thl:s dumps a data file named DATA1 from the fixed area on
cartridge 1003 to working storage on cartridge 1007.
Thlis dumps a data file namectDATA2 from working storage
on cartridge 1002 to paper tape.

--

-t-jtt tf- r-t-t-ti-t-t i t-t-t-tt-ttti-ttt-t-t-t1ltt -t t t-tt-t-

--

-- - - -

*DUMPDATA E
!;)Emeral function

This control record (I) transfers information from the user area or fixed area to working
storage, or (2) makes information from the user area, fixed area, or working storage
available as card or printed output.
The DUMPDATA E operation to output devices differs from the DUMPDATA operation
in that the information on disk, which is assumed to be in packed EBCDIC form, 40
words per 80 card columns, is converted to card image format. Thus~ the information
printed on a printer is one line per source card (80 print positions), and card output is an
exact, full 80 column duplicate of the input cards in the corresponding STOREDATAE
operation. When the destination is working. storage, format conversion does not occur.

5-26

DUP Control Records
*DUMPDATA E

The contents of working storage are not changed when dumping to output devices, because information is transferred from the user area, fixed area or working storage directly
to the output devices.
format

Card column

Contents

1 through 11

*DUMPDATAI6E

12

Reserved

13 and 14

From symbol

15 and 16

Reserved

17 and 18

To symbol

19 and 20

Reserved

21 through 25

Name

26

Reserved

27 through 30

Count

31 through 34

From
cartridge I D

35 and 36

Reserved

37 through 40

To
cartridge I D

41 through 80

Not used

Explanation

See the following summary chart.

See the following summary chart.

A name is required except when the
dump is from working storage to tlie
printer.

The count (a right-adjusted decimal
numbed specifies the number of
sectors to be dumped. If this field is
blank, the working storage indicator
or disk block count in LET or
FLET is used.

The following chart is a summary of the information transfers performed by DUMPDATA

E.
*OUMPOATA E
summary chart

additional field
information

From symbols

To symbols

UA or FX

WS

UA, FX,orWS

CD
PR

To Symbol. When a dump is to cards and a 1442, Model 6 or 7, is used, each card is
checked to see that it is blank before it is punched. If a nonblank card is read, the system
prints a message and waits at $PRET with'/IOOF displayed in the ACCUMULATOR.
Count. This field specifies the number of sectors to be dumped. If present, the count
overrides the contents of the working storage indicator or the disk block count in the
LET or FLET entry; when present, this number of sectors is dumped regardless of the
length of the program or data file.

Control Records

5-27

DUP Control Records
-DUMPDATA E
-DUMP LET

*OUMPDATA E Examples

10

1

5

\11'1\/1

'7'111\

20

15

25

UA

I~S

DA TA

*1] UiMP lAllA E FX

erB

~A ITAt

I*~ UMP lArlA E

p~

A7A - f

Wl~

30

35

40

50

45

-

1¢ I~~

-

---'- !-'-

-

-

--

0

This dumps a data file named DATA from the user area to
working storage.

f}

This dumps a data file named DATA 1 from the fixed area to
cards.

@)

This dumpsa data file from working storage to the printer.

'--.

I I I

l-tt-ttit-I I I I I I I I I I I I I I I I I I I I I I I I I I Itr-

-

-

--

*DUMPLET

general function

This operation prints the contents of the location equivalence table (LET) on the principal
print device. Also, the contents of the fixed location equivalence table (FLET) are
printed if a fixed area has been defined on the disk. A program name or data file name can
be specified in this control record to dump only the LET or FLET entry for that program
or data file. A printout of a DUMPLET operation is in Appendix D.

format

Card column

Contents

1 through 8

*DUMPLET

9 through 20

'Reserved

21 through 25

Name

26 through 30

IReserved

31 through 34

jr:rom

eartridge I D

35 through 80

additional field
information

Explanation

Name specifies that only the LET
or F LET entry for that program 00data file is printed.

The cartridge I D specifies that only
the LET (and FLET) on that
cartridge is dumped.

!'Jot used

Name. This optional field specifies the name of a program or data file whose LET or FLET
entry is to be printed. LET and FLET on all cartridges defmed in the current JOB monitor
control record are searched unless a cartridge ID is specified in columns 31 through :34.
When the name field is omitted, the entire contents of LET (and FLET) are printed.

From Cartridge ID. The from cartridge ID specifies that only the LET (and FLET) on
that cartridge is printed or searched when a name is specified in columns 21 through 25.
When the from cartridge ID field is omitted, LET (and FLET) on all cartridges defined by
the current JOB monitor control record are printed or searched.

5-28

DUP Control Records
*DUMPLET
*DUMPFLET

*DUMPLET Examples

o

1

10

5

15

20

35

- -

I~D U~ PL E7

~A I

'--

-

11~ loJ4

N

e
E)

-

~f-

1I-f-- -1--

H-I

J
- ----

- e--

O

+--

c--

~-

50

45

40
--I-

E) *~ UM PL fiT

e

30

25

*~ UIMIF LET

ri-

This dumps LET (and F LET) from the disks defined by the
current JOB monitor control record.
This dumps LET (and FLET) from cartridge 1004.
This dumps the LET (or FLET) entry for the program named
MAIN.

I I-I I I j 1t f I I I II f j++++++t- t-t+t

t++++++ +++t+-

l-

I

*DUMPFLET
general function

This operation prints the contents of the fixed location equivalence table (FLET) on the
principal print device. A program name or data file name can be specified in this control
record to dump the FLET entry only for that program or data fIle.

format

Card column

Contents

1 through 10

*DUMPFLETIh

11 through 20

Reserved

21 through 25

Name

26 through 30

Reserved

31 through 34

From
cartridge I D

35 through 80

Not used

additional field
information

Explanation

Name specifies that only the F LET
entry for that program or data file
is printed.

The cartridge ID specifies that only
the FLET on that cartridge is printed.

Name. This optional field specifies the name of a program or data file whose FLET entry
is tobe printed. FLET on all cartridges defined in the current JOB monitor control
record is searched for the name unless a cartridge 10 is specified in columns 31 through
34. When the name field is omitted, the entire contents of FLET are printed.

From Cartridge [D. The from cartridge ID specifies that only the FLET on that cartridge
is printed or searched when a name is specified in columns 21 through 25. When the cartridge ID field is omitted, the FLET on all cartridges defined by the current JOB monitor
control record is printed or searched.

Control Records

5-29

DUP Control Records
*DUMPFLET
*STORE

*OUMPFLET Examples
r-------------- ---

o

1

-----------------------------------------------------

5

10

15

20

25

30

35

40

45

50

~ DuM~ F LET -t--t- -+-+--t-+-+-+-f-ir-+-+---t-+-t-+-t--+-t-+-+--t--t-+--t--t-1f--t-+--t--+-+-+-+--+-+-t-- r--f--

_

-+,-

6

~DV

E)

~*-I-D-I-U+-M-tP--_I_F--'-L-LE.-'-T--'--'--L-:I~- ~- _:I-:I- - _+-'-f-: - tl-: I-+:M:+:-~-,_+_-'-j1-t"-"N-:-I2.:~:-:-_:l---:~:_-¢-;j:~+-2=tc
+
__+-_:
__ '_~~_;_-1:__-+_:_~_:-+_+-:-+--_-1l---+-:+r----+~-I-~+_~-t~-1

MP f

Lt-Et-r++-+-+-

o

-r--

-+-+-+-t--+-+
A

M

t-~t-j+-+--+--+-+--+-+-+-t---t-+-jf--+-t-+-+-+-_-+--t_--t-+_+IH-+_-_-+r--tr--+-_--f
__

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

-

-

This dumps F LET from the disks defined by the current
JOB monitor control record.

f}

This dumps the FLET entry for the program named MAIN'.

e

This dumps the i=LET entry for the program named MAIN2
from cartridge 1002.

- - --r-----

-

--f---

r--r--------

- - --1--1---

~+++--I-----,--------------------------- -----r-r-rI-

- - -

++t-tf-t-t ttt-t-r+t-ttH-t-t+++++-t-t--t++tt++t-+-t-+-l-

- - r - - f---

*STORE
~neral

function

This operation (1) transfers information from working storage to the user area~ or (2)
accepts information from the input devices and transfers it to working storage or the user
area.
All transfer of information from the input devices to the user area is accomplished in 2
phases. The infonnation is first moved to system working storage, then to the user area.
Because of this, infonnation residing in working storage before the STORE operation is
destroyed, and the appropriate working storage indicator in sector @DCOM is set to zero.
The Disk Utility Program (DUP) makes the required LET entry for the program being
stored. The name you specify in columns 21 through 25 is assigned to the program and
is used to generate the LET entry. The LET entry includes the program name, the format
of the program, the number of disk blocks the program occupies, and the disk block
address. An entry is also made in LET for each entry point in the program being stored.

5-30

OUP Control Records
*STORE

format

Card column

Contents

1 through 6 \

*STORE

7 through 10

Reserved

11

Subtype (0, 1,
2,3, or 8)

12

Reserved

13 and 14

From symbol

15 and 16

Reserved

17 and 18

To symbol

19 and 20

Reserved

21 through 25

Name

26 through 30

Reserved

31 through 34

From
cartridge 10

35 and 36

Reserved

37 through 40

To
cartridge 10

41 through 80

Not used

Explanation

For type 3,4,5, and 7 subroutines
only.

See the following summary chart.

See the following summary chart.

A name is required except when the
STORE operation is to working
storage.

The following chart is a summary of the information transfers and format conversions
performed by the STORE operation.
*STORE summary chart

From syrnbols,
including formats

To symbols,
including formats

WS(DSF)

UA(DSF)

CD(CDS)

UA or WS(DSF)

PT(PTS)

UA or WS(OSF)

Control Records

5-31

DUP Control Records
·STORE

additional field
inlformation

SUbtype. This optional field places a subtype number in the header of a subroutine, type
3,4,5, or 7. The subtyp{~ number that can be specified for each type of subroutine iis:

Subroutine description

Type

In-core subroutines

3,4

Disk FORTRAN I/O subroutines

3

Arithmetic subroutines

3

Code in
subtype field

o
2

Nondisk FORTRAN I/O and "Z"

3

3

"Z" device subroutines

5

3

8

Function subroutines

4

Dumrny I LS02, I LS04 stored in
monitor system library

7

User-written I LS02, I LS04 that
replace dummy I LS02, I LS04

7

o

From Symbol. If the STORE operation is from working storage and the corresponding
working storage indicator is zero, an error message is printed.
*STORE Examples

1

10

5

15

25

20

o

,~S TO 'RE

CD

IWS

e

:*S ITO IRE

WS

UA

MA I~

e

*~ TO h-

I
I

This names a program in working storage MAIN and stores
it in the user area.
This reads from cards an I LS04 you have written and stores
it in the user area.

-

: :t-H-++-t-ttt IIIIII +H+t-I IIIIIIII I IIII I II

5-32

50

45

- - --f-

OUP Control Records
*STOREOATA

*STOREDATA
general function

This control record (1) transfers infomlation from working storage to the user area or
fixed are, or (2) accepts information from input devices and moves it to working storage,
the user area, or fixed area. DUP assumes that input to this operation is in data fomlat;
output from this operation is always in data format.
Information is transferred directly from the input devices to the user area or fixed area.
Thus, the contents of working storage remain the same if the STORE operation is to the
fixed area. Because the boundary between the user area and working storage is moved by
store and delete operations, a STOREDAT A operation to the user area destroys information residing in working storage before the STOREDATA operation.
DUP makes the required LET or FLET entry. The name you specify in columns 21 through
25 is assigned to the data file or macro library and is used to generate the LET or FLET
entry. DUP also supplies the disk block count required in the LET or FLET entry if the
source is cards or paper tape. If the source is working storage, the sector count coded
in the STOREDAT A control record is used.

format

Card column

Contents

1 through 10

*STOREOATA

11 and 12

Reserved

13 and 14

From symbol

15 and 16

Reserved

17 and 18

To symbol

19 and 20

Reserved

21 through 2-5

Name

26

Reserved

27 through 30

Count

31 through 34

From
cartridge 10

35 and 36

Reserved

37 through 40

To
cartridge I 0

41 through 80

Not used

Explanation

See the following summary chart.

See the following summary chart.

A name is not required whoen the
STOREOATA operation is from cards
or paper tape to working storage.

If the source is working storage, the
count is the number (in decimal) of
sectors of data to be stored. This
count overrides the contents of the
working storage indicator. If the
count field is blank, the contents of
the working storage indicator are
used. I f the sou rce is cards, the
count is the number !in decimal) of
cards to be read. If the source is
paper tape, the count is the number
(in decimal) of paper tape records
to be read.

Control Records

5-33

OUP Control Records
*STOREOATA
*STOREOATAE

The following chart is a summary of the information transfers and format conversions performed by STOREDATA.
*STOREDATA

summary chart

From symbols,
including formats

To symbols,
including formats

WS(OSF, OOF, OCI)

UA or FX(OOF)

CO(COS, COO, CDC)

UA, FX, or WS(OOF)

PT(PTS, PTO, PTC)

UA, FX, or WS(OOF)

Note. When temporary mode is indicated in column 8 of
the current JOB monitor control record, the STOREOATA
operation is restricted to storing in the UA and WS only.

*STOREDA TA Examples

o
e Eto AlI
e 1*5 TOREto
o
1

5

10

15

ws

A r-RT
~§cr o~ etD AIT -r-

~.s ~O tR
~S

ITO rR

---- f----.-

-

-

-.of-

0·-

r---c: I~ --

-

UA
~T p
S- _JJ A
E~ AT Ar- _W -- -

0

f-f-- f---- ..-

-- ---~f-- f--~ 5 f_U ~-

-r- f--

e

-._.

20

30

25

FI ILE 1 ~:¢ 05

F IL El? ¢ 2~~

--f IL ~~

f-- -

.-

40

35

(>1 f/JI¢ _--

50

45

.-r-

- - r-- _. .

1~ 1~5

--

--

1·-· -

------ -_ ....
- -- - - !-f----f--- -1--- - - - -

rf-- -

- f-- f--

-_.-

.

......

--

-"

--+-----

-r-

-

-h

_.._--

--!-. t·-

_._...

I

---

This reads a data file from paper tape, and stores it in system
working storage.
This transfers a data file named FI LE 1 that occupies 5
sectors from system working storage to the user area on
cartridge 1005.

e

This reads a data file named FI LE2 from cards, and stores
it in the user area. 200 cards are read.

0

This transfers a data fi Ie named F I LE3 from working storage
to tho user area. Count is in the working storage indicator.

- - - f - - :---i

*STOREDATAE

general function

This control record {l) transfers information from working storage to the user area or
fixed area, or (2) accepts information from the card reader and transfers it to working
storage, the user area, or fixed area.
When input is from cards, the source cards are converted to packed EBCDIC format, that
is 2 columns per word, or :3 cards per sector. Thus, the input is assumed to be any of the
256 EBCDIC characters in card code. When the source is working storage, no conversion
takes place.
Information is transferred directly from the inpu t device to the user area or fixed area..
Thus, when the STOREDATAE operation is to the fixed area, the contents of working
storage are not changed. When the STOREDATAE operation is to the user area, the
contents of working storage are destroyed because the boundary between the user area and
working storage is moved hack and forth by delete and store operations.

5-34

DUP Control Records
*STOREOATAE

The Disk Utilit.y Program (DUP) makes the required LET or FLET entry. The name that
you specify in columns 21 through 2S is assigned to the data file and is used to generate
the LET or FLET entry. Also, DUP supplies the disk block count required in the LET or
FLET entry if the source is cards or paper tape. If the source is working storage, the
sector count specified in the STOREDATAE control record is used.
format

Card column

Contents

1 through 11

*STOREOATAE

12

Reserved

13and 14

From symbol

15 and 16

Reserved'

17 and 18

To symbol

19 and 20

Reserved

21 through 25

Name

26

Reserved

27 through 30

Count

31 through 34

From
cartridge I 0

35 and 36

Reserved

37 through 40

To
cartridge 10

41 through 80

Not used

Explanation

See the following summary chart.

See the following summary chart.

A name is not required when the
STOREOATAE operation is from
cards to working storage.

If the source is working storage,
the count is the number (in decimal)
of sectors of data to be stored. This
count overrides the contents of the
working storage indicator. If the
sourC9 is cards, the count is the
number (in decimal) of cards to be
read.

The following chart is a summary of the information transfers perfonned by STOREDATAE.
*STOREDATAE
summary chart

Fram symbols,
including formats

To symbols,
including formats

WS

UA or FX

CO

UA, FX, orWS

Note. When temporary mode is indicated in column 8
of the current JOB monitor control record, the
STOREOATAE operation is restricted to storing in the
UA and WS only.

Control Records

5-35

DUP Contra! Records
*STOREDATAE

addiitional field
information

Count. The corresponding dump operation, DUMPDATA E, transfers a whole number of
sectors to cards. To avoid unwanted output, the number of cards stored should consequently be a multiple of 8 (blank cards can be added for that purpose).
*STOREDATAE Examples
-------------.-----

o

1

.. __

10

5

~~ lQ 'Q ED t1II ~~
c

--

._------------_._---- ---------------

~t-

~

---~
- f--

~

--,-

---t--- 1---1-

5-36

~

~

--- 1 - -

-

~

-

c--

LES
r--

w!;) 1-1- -

- r-

30

35

I¢I¢ I¢ 2. --

~f¢ 56-

--t-- - -

t--~

-

-

-- -- --

----~

--

40

45

1 ~¢3

--

50

~

--

.-

0

This transfers a da~a file named FI LE5 from working storage
to the fixed area. The file occupies 2 sectors.

E)

This reads a data file of 56 cards into working storage on
cartridge 1003.

- f- f---,-

r-f- 1---

-~

F,

-- rEX

E) r~S TO Qito AT 1,(\£ C )
I-

25

20

15

t-tl-f-tl ++ t-t-r--H--r-t--t-ttt++++lt- ++++i++tiiiti

I

l'
i
!

-

DUP Control Records
*STOREDATACI

*STOREDATACI
general function

fhis control record (1) transfers infonnation from working storage to the user area or
fixed area on disk, or (2) accepts infonnation from input devices and moves it to working
storage, the user area, or fixed area.
If the input is from cards or paper tape, the STOREDATACI operation assumes the input
is in card or paper tape core image fonnat. If the input is from working storage (the
infonnation has been previously dumped to working storage or stored in working storage
from an input device), the appropriate working storage indicator must indicate disk core
image (DCI) fonnat; otherwise, the STOREDATACI operation is not performed. Output
from the STOREDATACI operation is always in disk core image format.

All transfer of information from input devices to the user area or fixed area is done directly;
that is, the transfer is not made via working storage. Thus, when the STOREDAT ACI
operation stores information from an input device to the fixed area, the contents of
working storage are not destroyed. Note, however, the contents of working storage are
destroyed when storing from an input device to the user area because the boundary
between the user area and working storage is moved back and forth by delete and store
operations.
The Disk Utility Program (DUP) makes the required LET or FLET entry. The name that
you specify in columns 21 through 25 is assigned to the data file and is used to generate
the LET or FLET entry. Also, DUP computes the disk block count required in the LET
or FLET entry from the count specified in the STOREDATACI control record.
format

Card column

Contents

1 through 12

*STOREDATACI

13 and 14

From symbol

15 and 16

Reserved

17 and 18

To symbol

19 and 20

Reserved

21 through 25

Name

26

Reserved

27 through 30

Count

31 through 34

From
cartridge 10

35 and 36

Reserved

37 through 40

To
cartridge 10

41 through 80

Not used.

Explanation

See the following summary chart.

See tile following summary chart.

A name is not required when the
STOREDATACI operation is to
working storage.

The count (a right-justified decimal
number) is the number of records
(sectors, cards, or paper tape
records) in the core image input. The
count is not required if the source is
working storage; however, when used
in this case, the count overrides the
contents of the working storage
indicator.

Con trol Records

5-37

DUP Control Records
*STOREDATACI
*STORECI

The following chart is a summary of the information transfers and format conversions
performed by STOREDATACI.
*STOREDATACI

summary chart

From symbols~
including formats

To symbols,
including formats

WS(DCI)

UA or FX(OCI)

CD (CDC, COO)

UA, FX, or WS(DCI)

PT(PTC, PTD)

UA, FX, or WS(OCI)

Note. When temporary mode is indicated in column 8
of the current JOB monitor control record, the
STOREOATACI operation is restricted to storing in
the UA only.

*STOREDA TACI Examples
~---------------------------------------------------------------

o

1

5

10

15

20

25

30

35

~ sma RED~ TACII~ S1-t--fF'-f'X-1-+--J'-F.+,-/-F"L'FE+5"'-t-+-f-+-f-fl=t'I~q.r~:-t-=1=t-t-

a *8 ~ I-1_1A
1/11..

11 Ale

o
rt+-rt-+

If)

45

+-+- -+-

D[-I-H~I~WS:4:r:-:-:+:-~'-:1-:.~rt--~:..:I+--t-~:-:i_+-t-t-~. I-~+

IC

r+-++-t-I-+-+-t--+--+-+-H-+I-+- f---f- -

rt-t-t-t-+I

40
1-_

H__

_-_:

50

-t-+-If----+---l---t-f

.-:+::~:

--t-

-+-+-+-+-+--++4-+-++-t-+-+-+--1I-+--+--l-+-+-+-+-+-+-+--+-+--+.._f-

Thig transfers the data file, FI U:5, from working storage on
cartridge 1001 to the fixed area on the system cartridge.
This reflds a data file from cards and stores it in working
storage.. 108 cards are read.

:Ir-.+:t+t+l-t+++tt++-t-t I I I I II I I H+H+tfttit-I--- -----

I-t-t-t-t-+-+-:-H

*STORECI
general function

This control record obtains an object program from working storage or from an input device, converts it into a core image program using the core load builder, and stores the core
image program in the user area or fixed area.
The core load builder (CLB) is called to build a core image program for the STORECI
operation as if execution w(~re to follow; that is, that portion of the core load residing below
core location 4096 (decimal) in 4K systems, or 5056 in larger systems, is placed in the system core image buffer, and LOCALs and/or SOCALs are placed in system working storage.
(See "Construction of a Core Load" in Chapter 3.) The STORECI operation stores all
these portions of the core image program in the user area, fixed area, or working storage.
A DCI program stored in the user area or fixed area includes the transfer vector built by the
core load builder; however, neither the disk I/O subroutine nor COMMON, if any, is included.

DUP Control Records
*STORECI

The Disk Utility Program (DUP) makes the required LET or FLET entry for the core image
program as it is stored. The name that you specify in columns 21 through 25 is assigned
to the DCI program and is used to generate the LET or FLET entry. Also, DUP obtains
the disk block count required in the LET or FLET entry from the core load builder.
format

Explanation

Card column

Contents

1 through 8

*STORECI

9

Disk 1/0
subroutine
indicator

10

Reserved

11

LOCAL-cancall-LOCAL
indicator

A punch (any character) in this
column enables a LOCAL subroutine to call another LOCAL.

12

SpeciallLS
indicator

A punch (any character) in this
column indicates that I LSs for this
core load should be chosen from
the special I LSs.

13 and 14

From symbol

See the following summary chart.

15 and 16

Reserved

17 and 18

To symbol

19 and 20

Reserved

21 through 25

Name

26

Reserved

27 through 30

Count

31 through 34

From
cartridge I D

35 and 36

Reserved

37 through 40

To
cartridge I D

41

Reserved

42

Core map
indicator

43 through 80

This column specifies the disk 1/0
subroutine to be used by the core
load during execution.

See the following summary chart.

A decimal number (right-justified)
that indicates the number of
supervisor control records (FI LES,
LOCAL, NOCAL, and G2250) that
follow.

N or blank. An N indicates that a core
map is not to be printed for this core
load. A blank causes a core map to be
printed.

Not used

Control Records

5-39

DUP Control Records
*STORECI

The following chart is a summary of the infonnation transfers and fonnat conversions perfonned by STORECI.
*STORECI
summary chart

From symbols,
including formats

To symbols,
including formats

WS(DSF)

UA or FX(DCJ)

CD (CDS)

UA or FX(DCI)

PT(PTS)

UA or FX(DCII

Note. When temporary mode is indicated in column 8
of the current JOB monitor control record, the
STORECI operation is restricted to storing in the UA
only.

additional field
information

Disk I/O Subroutine Indicator. This column specifies the disk I/O subroutine that is loaded
into core by the core image loader for use by the core load during execution. The character punched in this column for each disk I/O subroutine is:
Column 9

Disk I/O subroutine

Oorl
N
blank or Z

DISK!
DISKN
DISKZ

Any other character is invahd and causes the printing of an error message.
LOCAL-Call-LOCAL Indicator. A punch (any character) in column 11 allows a LOCAL
subroutine to call another LOCAL subroutine during execution if the restrictions listed
under "LOCAL-Calls-a-LOCAL" in Chapter 6 are met.
Special ILS Indicator. A punch (any character) in column 12 indicates that special interrupt
level subroutines (ILSs named with an X before the number, as ILSX4) are to be used for
this core load. If column 12 is blank, the standard set of ILSs is used.

In addition to the functions of the standard ILSs, special ILSs at the beginning of their
execution save the contents of index register 3 and set this register to point to the transfer vector. Special ILSs restore the original contents of index register 3 at the end of
their execution. Because the special ILSs save and restore the contents of index registeJr 3,
you can use this register in your programs.
Special ILSs require 5 more words of core storage per ILS than standard ILSs. The spedal
ILSs for interrupt levels 2 and 4 are loaded, together with other subroutines, as part of the
core load. You can write ILSs to replace any of the IBM-supplied ILSs, standard or special.

540

DUP Control Records
*STORECI

,----

Count. A right-justified number in columns 27 through 30 that indicates the number of
supervisor control records following this control record. DUP reads these control records
for use by the core load builder before the STORECI operation is perfomled. The program
name (columns 21 through 2S of this control record) must not be used on the LOCAL,
NOCAL, and G22S0 control records. Data files specified in the FILES supervisor control
records that follow must be stored in the fixed area (see "Use of Defined Files" in Chapter
6).
*STORECI Examples
---_._---1

10

5

15

jS TiC 'RE (',1
~S TO

RE Cli

1*3 TO ~E C\

W5

20

UA

PIT

35

MA INi

xcto FX MA " iJ 7-X

30

25

__ (1 l~f- -~ AI Ni2

_.
r - --

-r--

0i¢ <1>12

-

~-

50

45

40
--

r---

,-

1!¢ I(/)3 t\I
- c--

-

- 1-_

-f'-

~--

--'--

f----

r-f- f - -

--r-'- I--r-r' ,

-

'-I- f - f - -

0
@

e

This converts the DSF program, MAIN1, into DCI format
and transfers it from working storage to the user area.
This specifies that DISK1 is to be used by this core load,
and that special I LSs are to be used. The program,
MAIN7, is read from cards and stored in the fixed area
on cartridge 1003. N in col umn 42 suppresses the
printing of a core map.

-~-

r- ..- f-'r-

--

r-i-

,- --- - i - f-

-

-

-+-- r - -

--- -,

This reads program MAl N2 from paper tape and stores
it in the user area. The X in column 11 indicates that a
LOCAL calls another, and 0002 in 27-30 indicates that
two supervisor control records follow.

- - - - ,----,

- ,,-

1--1- - , -

--

--

1--1- , - - , , 1--1-

--

1--1-

,

t t-Htttt+++ttt-+t+t-i+t-t-li+++++t--t-t-ttt-t--t-t-

Control Records

-

-, , - -

---

5-41

DUP Control Records
·STOREMOD

*STOREMOD
general function

This control record transfers infonnation from working storage into the user area or
area.

fixl~d

If the name specified in columns 21 through 25 is identical to an entry in LET or FLET,
the infonnation in working storage overlays the DSF program, DCI program, or data file
in the user area or fixed area for that entry. The fonnat of working storage must match
the fonnat of the LET or FLET entry that is replaced.
The STOREMOD operation pennits you to modify a DSF program, DCI program, or
data file stored in the user area or fixed area without changing its name or relative position within the storage area. However, the length of the program or data me in working
storage after being changed cannot be greater than the length of the old version of the
program or data file that it replaces in the user area or fixed area. No change is made to the
LET or FLET entry as a result of this operation.

If the name on the STOREMOD control record does not match an entry in LET or FLET,
the contents of working storage are stored by STORE, STOREDATA, or STOREDATACI,
when the respective fonnat is DSF, DDF, or DCI. The STOREMOD operation is not allowed
when temporary mode is indicated in the current JOB monitor control record.
format

5-42

Card column

Contents

1 through 10

*STOREMODtD

11

Sub1type

12

Reserved

13 and 14

From symbol

15 and 16

Resorved

17 and 18

To symbol

19 and 20

Reslinved

21 through 25

Name

26 through 30

Reserved

31 through 34

From
cartridge I D

35 and 36

Reserved

37 through 40

To
cartridge I D

41 through 80

Not used

Explanation

The source is alwavs working storage.

See the following summary chart.

------

DUP Control Records
*STOREMOD

The following chart is a summary of the information transfers and fonllat conversions
perfornled by STOREMOD.
*STOREMOD

From symbols,

summary chart

including formats

To symbols,
including formats

WS(DSF)

UA(DSF)

WS(DDF)

UA or FX(DDF)

WS(DCI)

UA or FX(DCI)

Note: The fornlat and size indicators of a data me in working storage must match those
of the existing LET or PLET entry. Since the execution of your program that references
data files stored in working storage does not set these indicators, a subsequent STOREMOD
does not work. These indicators can be set prior to execution by performing a DUMPDATA
operation of the stored data me to WS.
*STOREMOD Examples

o

1

10

5

l~S TO 12 EM iOD

E} I*I~ TO REM ~~-

WS
IWS

15

UA -- - -

20

25

1--

Wi

--c-

FX

--,-- --

~Al
1----

~lrL J;~
I--

30

--r-- --

35

40

III

--I-

-- -f-- - t-

---- --

I-

0

This replaces the program, MAIN1, stored in the user area
with an updated version from working storage.

@

This replaces the data file, FI LE 1, stored in the fixed area
on cartridge 1002 with an updated version from working
storage on cartridge 1003.

-

: ttttt-t-rt-t-tlHi+t+tTtfttt tt-i it I I-I t tt t

Control Records

5-43

DUP Control Records
*OELETE

*DELETE
general function

This operation removes a specified DSF program, Del program, or data fIle from the user
area or fixed area. The deletion is accompliShed by the removal of the program or data
fIle LET or FLET entry, including the dummy entry for associated padding, if any. The
DELETE operation is not allowed if temporary mode is indicated in the current JOB
monitor control record.
When a program or data fIl,e is deleted from the user area, that area is packed so that
(1) the areas represented by the remaining LET entries are contigious, and (2) working
storage is increased by the amount of disk storage formerly occupied by the deleted
program or data file. The contents of working storage are not destroyed by the DELETE
operation.
When.a Del program or a data file is deleted from the fixed area, that area is not packed.
The FLET entry for the deleted Del program or data file, including the dummy entry
for associated padding, ifany, is replaced by a single dummy entry (1 DUMy). This IDUMY
entry represents the area formerly occupied by the deleted Del program or data file, cmd
its padding. DUP store operations can place new entries in the deleted areas of the fixed
area.

format

Card column

Contents

1 through 8

*OELETEI6

9 through 20

Reserved

21 through 25

Name

26 through 30

Reserved

31 through 34

From
cartridge 10

35 through 80

Not: used

Explanation

The deletion is performed on the
specified cartridge only. If a
cartridge lOis not specified, and the
program or data file name (columns
21 through 25) is present in LET or
FLET of more than one cartridge
specified for this JOB, deletion is from
the first logical drive on which the
name is found.

*DELETE Examples

o

1

5

10

@ ~~ ELE E

20

15

~~ ELE E
r-r-

~

25

30

35

45

40

MiA IN!
--

-- --

F' LIE 1

1~ 1¢4

r-r-- -

0

This dli3letes LET or FLET entry for the program, MAIN1,
from the cartridge on the first logical drive where the name
is found.

€)

This dli3letes the data file, FI LE1, from cartridge 1004.

I I I I I ITtt-t-l-tt-ii-t I I I I I limlti1ltlt1lii+

5-44

50

DUP Control Records
*DEFINE FIXED AREA

*OEFINE
general function

This control record performs 4 functions.

• It initially establishes the fixed area and its size on disk.
• It increases or decreases the size of the fixed area.
• It deletes the fixed area and FLET.
• It deletes the assembler, FORTRAN compiler, RPG compiler, or COBOL compiler, or
any combination of these 4 programs from the IBM system area on the master cartridge.
define a FX

The definition of a fixed area on disk allows you to store in fixed locations the programs
and data mes, which you can subsequently refer to by their sector addresses. The fixed
area is defined in cylinder increments; the minimum required storage space is one cylinder.
When a fixed area is defined, the system uses one cylinder for the fixed location equivalence table (FLET). This cylinder used for FLET is included in the total size of the fixed
area; therefore, the initial definition of the fixed area must be at least 2 cylinders.

increase or
decrease the FX

The fixed area is increased in cylinder increments. It is decreased in cyHnder increments
by deleting unused cylinders after the last program or data file stored in the fixed area.

delete FX

If all DCI programs and data files have been deleted from the fixed area (by using
*DELETE), the fixed area and FLET can be deleted by specifying a number in the count
field that reduces the fixed area and FLET to one cylinder or less.

format of
DEFINE
FIXED
AREA

Card column

Contents

1 through 8

*DEFINEt6

9 through 18

FIXEDt6AREA

19 through 26

Reserved

27 through 30

Count

In initial definition of the fixed area,
the count is the number (in decimal)
of cylinders to be allocated as the
fixed area; a mtnimum of 2 must be
specified. After initial definition, the
count is the number of cylinders by
which the fixed area is to be increased
or decreased.

31

Sign

Blank if the fixed area is being increased;
a minus sign if the fixed area is being
decreased.

32 through 36

Reserved

37 through 40

Cartridge 10

41 through 80

Not used

Explanation

Th is I D specifies the cartridge that is
being altered; when omitted, the system
cartridge is assumed.

Note. The DEFINE FIXED AREA operation is not allowed if temporary mode is
indicated in the current JOB monitor control record.

Con trol Records

5-45

DUP Control Records
*DEFII\IE FIXED AREA
*DEFII\IE VOID

*Define Fixed Area Examples

o
@

,.---1
5

10

15

~lD Ef:" ItJE FIX
.~~

EF I ~IE

FIX

!

i

'-

-- r-r- -

--

r-r- -

-

-r--

-

-r- -

-f---

r-l-- -f--

0

e

25

20

AJ< ElA
.. -.-

tYR EA

30

I-

---

¢~ ¢2-

,--i--

1¢ ~2

50

45

40

-- -

-r- r-i-' r-t---

---

.'---

T his d efines a 5 cylinder fixed area on the master cartridge.
T his (:iecreases the size of the fixed area on cartridge 1002
b y 2,~ylinders.

r-~-

c---

111+++ t-i-- ~-t++t++-t-t-+t+tt__t++H-H+~-t_H+tti-+I I I

delete the assembler
or compiler

35

¢I¢ ¢15

'- -.

-----

',--

'----

Deletion of the assembler, FORTRAN compiler, RPG compiler, or COBOL compiler
causes the specified monitor program to be removed from the IBM system area on the
master cartridge. The IBM system area is then packed so that remaining programs and
areas occupy the area formerly occupied by the deleted monitor program. SLET entr:les
are updated to reflect the new disk storage allocations for the monitor programs. The
reload table is used to make adjustments in the programs that use disk storage addresses
from SLET.
When the assembler, FORTRAN compiler, RPG compiler, or COBOL compiler is to be
deleted, you must perform this deletion before defining a fixed area on the cartridge, or
after completely removing a defined fIxed area (see the previous discussion of decreasing
the size of the fixed area). Once one of these programs is deleted, it can be restored by
performing an initial load only.

format of
OlEFINE
VOID

Card column

Contents

1 through 8

*[)EFINEt6

9 through 13

VOIDt6

14 through 22

ASSEMBLER or
FORTRANt6t6 or
RPGt6t6t6I6t616 or
COBOLt6I6t6t6

23 through 80

Not used

Explanation

Note. The DEFINE VOID operation is not allowed when temporary
mode is indicated in the currE~nt JOB monitor control record.

The processing of a DEFINE VOID operation restores the original system principal
printer if a CPRNT monitor control record has specified that monitor and supervisor
control records be printed on the console printer.

5-46

DUP Control Records
*OWAOR

*DWADR
general function

This operation causes a sector address to be written on every sector of working storage
on the cartridge specified by the DWADR control record or, if a cartridge ID is not specified, on every sector of system working storage. The operation restores correct disk sector
addresses in working storage if they have been modified during execution of your program.
The contents of working storage prior to the DW ADR operation are destroyed.
A dummy / / DUP monitor control record is printed on the principal printer following the
printing of the *DWADR control record and the DUP exit message.

format

Card column

Contents

1 through 6

*OWAOR

7 through 36

Reserved

37 through 40

Cartridge 10

41 through 80

Not used

Explanation

This 10 specifies the cartridge
on which the working storage
sector addresses are to be rewritten.

Note, The DWADR operation is not allowed if temporary mode is indicated in the current
JOB monitor control record.

Control Records

547

DUP Control Records
*DFILE

*OFILE
genelral function

This operation reserves disk space in either the user area or fixed area as a named data file
or macro library. Data is not moved as a result of the DFILE operation; this function provides disk space allocation only. The contents of working storage are not changed except
when defining space in the Ulser area; the contents of working storage on that drive are
destroyed since the user area and working storage are adjacent areas. (See "Use of Defined
Files" in Chapter 6 for a suggested use of this control record.)
DUP makes the required LET or FLET entry. The name specified on the DFILE control
record is assigned to the area and is used to generate the LET or FLET entry. DUP uses
the sector count specified on the DFILE control record to supply the disk block count in
the LET or FLET entry.

format

Card column

Con~~ents

1 through 6

*DFILE

7 through 16

ResE~rved

17 and 18

To symbol

19 and 20

Resorved

21 through 25

File name

26

Resorved

27 through 30

Count

31 through 36

Resl~rved

37 through 40

To
cartridge I 0

41 through 80

Not used

Explanation

Area in which the file is to be
reserved: UA for user area,
FX for fixed area.

The name assigned to the area
reserved for the data file or
macro library.

The number (in decimal) of
sectors to be reserved

Note. The DFILE operation is restricted to reserving space only in the UA when
temporary mode is indicated in the current JOB monitor control record.

5-48

DUP Control Records
*MACRO UPDATE

*MACRO UPDATE
general function

This operation causes execution of the Macro Update Program (MUP). The MUP performs:
• Initialization of a macro library
• Physical or logical concatenation of macro libraries
• Addition, deletion, or name redefinition of stored macros
• Statement addition or deletion within a stored macro
• Punching of stored macros into cards
• Listing of macro library contents either at statement or macro level
The functions to be performed by MUP are indicated by means of MUP control statements.
The format and functions of these control statements are described in the publication
IBM 1130/1800 Assembler Language, GC26-3778. The MUP control statements immediately follow the MACRO UPDATE DUP control record in the job stream.
The Macro Update Program requires an IBM 1131 Central Processing Unit, Model 2 or 3,
with 8192 (decimal) or more words of core storage. If the MACRO UPDATE DUP contrOl
record is read by a system with 4096 words of core storage, it is considered an invalid control record. The MUP cannot be used if temporary mode is indicated in the current JOB
monitor control record.

format

Card column

Contents

1 through 13

*MACROI6UPDATE

14 through 36

Reserved

37 through 80

Not used

Explanation

Note. Keyboard or paper tape input to the MUP of the Disk Utility Program assumes a
one-to-one relationship with any corresponding card inpu t record. Thus, position 1 of
assembler statements that are input record for MUP corresponds to card column 1 and not
to column 21.

Control Records

5-49

Assembler Control Records

ASSEMBLE.R CONTROL RECORDS

functions

Assembler control records are used to specify optional operations that affect the assembler
and assembly output. These control records are placed in the input stream as follows:

...____ Next monitor
control record
I~~---

Assembler source statements

1/ JOB

Assembler control records can be entered in card or paper tape form along with the source
program card deck or paper tape, or they can be entered from the console keyboard (sl~e
"Entering Jobs From the Console Keyboard" in Chapter 7).
In most cases, the source program is passed through the assembler only once. This is always
true when input is from the keyboard or paper tape reader. When input is from cards,
passing the source deck through the assembler a second time (2-pass mode) may be required. Further information about 2-pass mode is presented in the descriptions of the
lWO PASS MODE, LIST DECK, and LIST DECK E t;ontrol records in this section. These
3 control records and the PUNCH SYMBOL TABLE control record are ignored when ~:n­
tered from the keyboard or paper tape reader.

5-50

-----

-----,~-.

Assembler Control Records
how to code

coding assembler
control records

All assembler control records have the following format:
Card column

Contents

Explanation

Asterisk

2 through 71

Option

72 through 80

Not used

Replace option with the keywords for the control record
being used.

Note. Assembler control records are coded in free form; that is, any number of
blanks can occur between the characters of the option. However, only one blank
can separate the last character of the option and the first character of any required
numeric field. Re.marks can be included after the option or numeric field; however, at least one blank must separate the last character of the option or numeric
field and the remarks.

If an assembler control record contains an asterisk in column one, but the option is not
identical with the format shown for the control record, the control record followed by an
assembler error message is printed in the control record listing. The control record in error
is ignored; an error does not result, but the specified option is not performed.
coding keyboard and
paper tape input

Assembler control records are coded the same for card, paper tape, and keyboard input.
Assembler language source statements are coded the same for keyboard and paper tape
input as for cards, with the following exceptions:
• The source statements do not contain leading blanks corresponding to card columns
1 through 20 .
• The source statements are limited to 60 characters
The first record processed by the assembler is checked for an asterisk as the first charac ter.
If an asterisk is the first character, the record is considered an assembler control record.
This procedure continues until the first nonasterisk character is detected as the first character. For this record, and all following records (up to and including the END statement),
the first character of each record is treated as if it were in card column 21: therefore, the
first noncontrol record should not be an * comments statement.

Note 1. Paper tape input to the assembler is punched into paper tape in PTTC/8 code, one
frame per character. Any delete codes punched in paper tape are passed over by the
assembler; assembly is continuous until the end.
Note 2. Keyboard and paper tape input to the Macro Update Program (MUP) of DUP
assumes a one-to-one relationship with the corresponding card input. Thus, position one
of assembler statements that are input for MUP corresponds to card column 1 and not to
column 21.

Con trol Records

5-51

Assembler Control Records
*TWO PASS MODe

*TWO PASS MODE
general function

This control record causes the- assembler to read the source program deck twice. TWO
PASS MODE must be specified when:
• You want a list deck punched by the 1442 Card Read Punch, Model 6 or 7 (see "*LIST
DECK" and "*LIST DECK E" in this chapter).
• A one-pass operation cannot be performed because the intermediate output (source
records) exceeds the capacity of working storage.
This control record is ignored if source statements are entered through the keyboard or the
paper tape reader.

format

Card column

Con telll ts

Explanation
Asterisk

2 through 71

TWO PASS
MODE:

72 through 80

Not used

If a copy of the source deck, including all assembler control records, is placed behind the
original, the source deck is read twice, and a stacked job is possible in 2-pass mode.
When a deck is being assembled in 2-pass mode, the assembler is ready to read another card
as soon as pass one processing of the END card is completed. Therefore, the source deck
or a copy of the source deck must be placed immediately behind the END card of the
first-pass deck. A monitor control record after the first END card causes the assembler to
execute a CALL EXIT; the assembly is not completed.
If the source deck has not be,en copied, the END card must be the last card in the hoppe r.
To continue:

1.
2.
3.

Press START on the card reader and PROGRAM START on the console to proce~,s
the END card when the reader goes not ready.
Remove the source deck from the stacker and place it in the hopper.
Press START on the ca.rd reader and PROGRAM START on the console again.

The operation can be made continuous if you remove the source cards from the stacker
during pass one and place them behind the END card in the hopper.
To complete the assembly at the end of pass 2, press START on the card reader and
PROGRAM START on the console to process the END card for the second pass.

5-52

Assembler Control Records
*LlST

* LIST
general function

This control record causes the assembler to provide a printed listing of the source program
on the principal print device (1403 Printer. 1132 Printer, or console printer). If a LIST
control record is not used, only those statements in'which assembly errors are detected
are listed. When 2-pass mode is specified, all ass, BES, ORG, and EQU statements that
contain errors are listed during pass one of the assembly.

format

Card column

Contents

Explanation

•

Asterisk

2 through 71

LIST

72 through 80

Not used

Con trol Records

5-53

Assembler Control Records
*LlST

The fOImat of a printed listing for an 8K or larger system is shown by:

1111~1Tl1tr~~.
lOOF 0

1010
1011
1012
1014
1014
1016

BSS

DEC
DEC

B

F

o

Address ()f the instruction; address of the label, if any

8

Relocation indicators

e

SAVE+2
SAVE+l

D
A
WAIT
EXIT

AB14
8012
3000

COOlS M
00019 M
00020
6038
00021
0000
00022
00 0000(000 00023
00 OOOOEOOO 00024

0
0
0

E

DIVIDE BY (I+J)
AND ADD (A+B)/C

a
49152
5'7344

One of the following:
a. First word of the assembled code
b. For EBC statements, the number of EBC characters
c. For BSS and BES statements, the number of words reserved for the block

e

e. For LI BF and CALL statements, 8

and

o

e

d. For ENT, ILS, and ISS statements, 8and

are the entry label in name code

are the name of the subroutine in name code

One of the following:
a. Second word of assembled code
b. For ENT, ILS, and ISS statements, GandO are the entry label in name code
c. For 1.I BF and CALL statements,

e

e
fa
e
e
e
e

Statement number
Error flag!'>" if any
Macro code indicator, if any
Label
Operation code
Format

_Tag

CD

5-54

Operands (and your comments)
10 and sequence number, if any

e

and

G are the name of the subroutine in name code

Assembler Control Records

*LlST

When LIST is specified for a 4K system, or with 2-pass mode, the format of the printed
listing is:

100F
1010
1011
1012
1014
1014
1016

o
8
e

A814
M
M
8012
3000
0
0 6038
0000
00 OOOOCOOO
00 OOOOEOOO

SAVE+2
SAVE+l

0

0
0

A
WAIT
EXIT
BSS
B
F

E

DEC
DEC

DIVIDE BY (I+J)
AND ADO CA+B)/C

0
49152
57344

Address of the instruction; address assigned to the label, if any
Relocation indicators
One of the following:
a. First word of the assembled code
b. For EBC statements, the number of EBC characters
c. For BSS and BES statements, the number of words reserved for the block
d. For ENT, ILS, and ISS statements, eand
e

0

are the entry label in name code

For LlBF and CALL statements, eand Oare the name of the :;ubroutine in name code

One of the following:
a. Second word of assembled code
b. For ENT, I LS, and ISS statements, eand

e
G

o
e
o

0

are the entry label in name code

c. For LlBF and CALL :>tatements,e and Oare the name of the subroutine in name code
Error flags, if any
Macro code indicator, if any
Label
Operation code
Format

G)

Tag

_

Operands (and your comments)

CD 10 and sequence number, if any
A complete sample program listing is in Appendix H.

Con trol Records

5-.55

Assembler Control Records
*XREF

*XREF
general function

This control record causes the assembler to produce a statement numbered listing and a
statement numbered cross-reJerence symbol table on the principal print device if the core
size is 8K or larger. This control record is invalid if the core size is 4K, and, if detected,
is ignored. A warning message is printed.
A LIST control record is not needed when XREF is used. When neither an XREF nor a
LIST control record is used, only those statements in which assembly errors or warnings
are detected are listed. When 2-pass mode is specified, all BSS, BES, ORG, and EQU statements that contain errors are listed during pass one of the assembly.
The cross-reference symbol table is not printed if 2-pass mode is specified or if symbol
table overflow occurs during assembly. When either of these conditions occur, the XREF
control record produces only a listing.
The assembler does not assign sequence numbers to comments statements when a LIST
OFF statement in your program is in effect. Because of this, the statement numbers in a
cross-reference symbol table listing for the same program may be different from one assembly to another, depending on whether or not the program contains LIST OFF (and LIST
ON) statements.

format

Card column

Cont8'nts

Explanation
Asterisk

5-56

2 through 71

XREF

72 through 80

Not used

Assembler Control Records
*XREF
*LlST DECK

The fonnat. of the statemen t-numbered listing is the same as the fonnat shown under
"*LIST" for a system with a core size of 8K or larger. The format of the cross-reference
symbol table is:

•
0

K1
K16
K20
K32
K40
K640
L.INE
L.INES
L.OOP

o

e e

~
1050
106C
105E
105F
1060
1061
159F
1064
1022

0

I A
00071

0
0
0
0
0
0
0
0
0

00083
00072
00073
00074
00075
00131
00078
00026

00007,R 00013,R 00038,R 0OO57,R 00063,R
00123.R
00065,R
00OO3,R 0OO19,R
0OO44,R 00116,R OOl17,R OO121,R
00062,R 00064.M 0OO68,M
00040,B

Symbol

f).value of the symbol

e

Relocation indicator

Ostatement number of statement that defines the symbol
_Statement numbers and associated reference type indicators (B for branch to, M for modification,
or R for reference to) for the statements that use the symbols

Multiply defined symbols are flagged in the cross-reference symbol table with the message
***MULTIPLY-DEFINED***. Undefined symbols are listed separately under the header
***UNDEFINED SYMBOLS***. Symbols that refer to the system symbol table are
flagged with SYSMB in the statement number field of the cross-reference entry.
A list of the statement numbers of all statements flagged with errors or warnings is printed
at the end of the statement numbered listing under the header: ERROR STATEMENT
LINE NUMBERS.
*LlST DECK
general function

This control record causes a list deck to be punched when the principal I/O device is a
1442 Model 6 or 7 Card Read Punch. This control record is ignored if entered from the
2501 Card Reader, the paper tape reader, or the keyboard.

format

Card column

Contents

Explanation

*

Asterisk

2 through 71

LIST DECK

72 through 80

Not used

Control Records

5-57

Assembler Control Records
-LIST DECK

The LIST DECK option requires 2 passes of the source deck (lWO PASS MODE) through
the assembler. Object information is punched into columns 1 through 19 during pass two.
The card column contents of a punched list deck card are:
Card column

Contents

1 through 4

Address of the instruction; address assigned to the
I,abel, if any.

5

Blank

6and 7

Belocation indicators

8

Blank

9 through 12

One of the following:
'!. First word of the assembled code.

:t

For EBC statements, the number of EBC
characters.
:1. For BSS and BES statements, the number of
words reserved for the block.
iL For ENT, ILS, and ISS statements, columns
9 through 16 contain the entry label in name
code.
t,. For LI BF and CALL statements, columns 9
through 16 contain the name of the subrouti ne
in name code.
13 through 16

lOne of the following:

I. Second word of the assembled code.
2. For ENT, ILS, and ISS statements, columns
9 through 16 contain the entry label in name
code.
3. For L1BF and CALL statements, columns 9
through 16 contain the name of the subrouti ne
in name code.
17

Siank

18 and 19

Error flags, if any

20

Macro code indicator, jf any

21 through 25

Label

26

Blank

27 through 30

Operation code

31

Blank

32

Format

33

Tag

34

Blank

35 through 71

Operands (and your comments)

72

Blank

73 through

sO

I D and sequence number, jf any

Assembler Control Records
*L1ST DECK E
*PRINT SYMBOL TABLE
*PUNCH SYMBOL TABLE

*lIST DECK E
general function

This control record causes a list deck to be punched when the principal I/O device is a
1442 Model 6 or 7 Card Read Punch. This control record is ignored if entered from a
2501 Card Reader, paper tape reader, or the keyboard.
The LIST DECK E option requires 2 passes of the source deck (lWO PASS MODE) through
the assembler. Only error flags, if any, are punched (columns 18 and 19) during the second
pass. Assembler error detection codes are described in Appendix A.

format

Card column

Contents

Explanation
Asterisk

2 through 71

LIST DECK E

72 through 80

Not used

*PRINT SYMBOL TABLE
general function

This control record causes the assembler to print a listing of the symbol table on the principal print device. the printed symbols are grouped 5 per line. Multiply defined symbols
are preceded by the letter M. Symbols with absolute values in a relocatable program are
preceded by the letter A. These M and A flags are not counted as assembly errors.

format

Card column

Contents

Explanation

*

Asterisk

2 through 71

PRINT
SYMBOL
TABLE

72 through 80

Not used

*PUNCH SYMBOL TABLE
general function

This control record causes the symbol table to be punched as a series of EQU source cards.
Each source card contains one symbol. These cards can be used as source input to the
system symbol table when the SAVE SYMBOL TABLE control record is used with an
assembly in which they are included.
This control record is ignored if entered from the paper tape reader or the keyboard.

format

Card column

Contents

Explanation
Asterisk

2 through 71

PUNCH
SYMBOL
TABLE

72 through 80

Not used

Control Records

5-59

Assembler Control Records
·SAVE SYMBOL TABLE
·SYSTEM SYMBOL TABLE

If the principal input device is the 1442 Model 6 or 7 Card Read Punch, sufficient blank
cards must be placed betwt~en the source program END card and the next monitor control
record when stacked job input is being used. In estimating the number of blank cards :required, allow one card for each symbol used in the source program. Unnecessary blank
cards are passed. (If a nonblank card is read when punching on the 1442 Model 6 or T, the
assembler waits at $PRET with /100F displayed in the ACCUMULATOR.)
If the system configuration is 2501/1442, place blank cards in the 1442 hopper and press
START on the 1442 beforc~ beginning the assembly.

Note. Do not place nonblank cards in the 1442 Model 5. The punch may be damaged if
an attempt is made to punch a hole where a hole exists. An error is not detected.
*SAVE SYMBOL TABLE
general function

This control record causes the symbol table generated by this assembly to be saved on
disk as a system symbol table. This system symbol table is saved until another assemblly
with a SAVE SYMBOL TABLE control record causes a new system symbol table to replace the old one. This control 'record is also used with the SYSTEM SYMBOL TABLE
control record to add symbols to the system symbol table.

Note. The SAVE SYMBOL TABLE requires that the assembly be absolute (an ORG statement defining the core load origin must be used in your program). Thus, all symbols in the
system symbol table have absolute values.
When the symbol table punched by a PUNCH SYMBOL TABLE control record is included
in the system symbol table: being generated by this assembly, place the punched EQU cards
after the SAVE SYMBOL TABLE control record.
If any assembly errors are detected, or if the symbol fable exceeds 100 symbols, the system symbol table is not saved, and an assembler error message is printed.
format

Card column

Conten1s

Explanation

•

Asterisk

2 through 71

SA,VE SYMBOL
TABLE

72 through 80

Nett used

*SYSTEM SYMBOL TABtE
general function

This control record causes a previously built system symbol table to be added to the' ~tym.;
bol table for this assembly as the assembly begins. This allows you to refer to symbol:; in
the system symbol table without redefining the symbols in your source program. Also,
this control record can be used with a SAVE SYMBOL TABLE control record to add
symbols from this assembly to the system symbol table.

Note. All symbols in the system symbol table have absolute values.
format

Card column

Conten1s

Explanation
Asterisk

5-60

2 through 71

SYSTEM
SYMBOL
TABLE

72 through 80

Not used

Assembler Control Records
*LEVEL
*OVERFLOW SECTORS

*LEVEL
general function

This control record specifies the interrupt levels serviced by an ISS and the associated ILS
subroutines. This control record is required for the assembly of an ISS subroutine. The
interrupt level number is a decimal number in the range 0 through 5. If the device operates
on 2 interrupt levels (for example, the 1442 Card Read Punch), one LEVEL control
record is required for each interrupt level on which the device operates. The assembler
accepts no more than 2 interrupt levels for a device. At least one blank must separate
the word LEVEL and the interrupt level number.
If a LEVEL control record is not used when assembling an ISS subroutine, an error message
is printed at the end of the assembly.

format

Card column

Contents

Explanation
Asterisk

2 through 71

LEVELl6n

n is an interrupt level number
(decimal)

72 through 80

Not used

*OVERFLOW SECTORS
general function

This control record allows you to specify the number of sectors of working storage to be
used by the assembler for symbol table overflow and/or macro processing. When this control record is used, the assembler allocates one more sector than the total number specified. This additional sector is used as a working sector by the assembler.
If more than one OVERFLOW SECTORS control record is used, the last record is used to
allocate the overflow sectors.

format

Card column

Contents

Explanation
Asterisk

2 through 71

72 through 80

OVERFLOW
SECTORSI6
n1,n2,n3

n 1 is the number of sectors for
symbol table overflow; n2 is the
number of sectors for macro
parameter list overflow; n3 is
the number of sectors for temporary macro definition.

Not used

Note. If any of the number fields are not specified in an OVERFLOW SECTORS
control record, the commas within the record cannot be eliminated.

Con trol Records

5-61

Assembler Control Records
*OVERFLOW SECTORS

additional field
information

OVERFLOW SECTORS, The decimal numbers coded after OVERFLOW SECTORS specify
the number of sectors to be allocated for (1) symbol table overflow, n1, (2) macro parameter list overflow, n2, and (3) temporary macro definition overflow, n3.

nl

The number of sectors (n1) reserved for symbol table overflow is specified as a decimal
number in the range 0 through 32. When the entry is zero or not specified, symbol table
overflow is not allowed. If the entry is greater than 32, only 32 sectors are assigned for
symbol table overflow. I f, during assembly, the symbol table overflow exceeds the number
of sectors allocated by the OVERFLOW SECTORS control record, an error message is
printed. The approximate maximum number of symbols that can be defined in a program
is determined by the size of core storage:
Size of core storage
(in decimal words)

Approximate maximum
number of symbols

4096
8192
16384
32768

3500
4165
6895
12355

112

The macro processor portion of the assembler uses working storage to contain macro
parameter list overflow. The OVERFLOW SECTORS control record specifies the number
of sectors (n2) to be reserved. If n2 is zero or not specified, a comma must be coded, but
macro parameter list ov'~rflow is not allowed.

Ic:ompute largest
parameter list size

The size (in words) of the total parameter list storage required for an assembly is the size
of the largest parameter list within the assembly. The size of a parameter list (in words)
can be estimated by using the following formula:
N

Number of words = 3+N+ ~ ~(mi+ 1)
i=l

where
N is the number of parameters, including nested macros, within a macro call..
Mi is the number of characters per parameter.

For example, the macro call:
EXPND APHA,BETA,C is computed as
compute n2

3+3+~(5+1)+~(4+1)+~(1+1)=12

words.

If the computed size of the largest parameter list within an assembly does not exceed 100
words, parameter list overflow sectors are not required. Otherwise, the number of sectors
(n2) required can be computed with the following formula:

n2=1/100(x-l00)
where

x equals the size (in words) of the largest parameter list.
n3

The macro ~rocessor portion of the assembler uses working storage to store temporary
macro defmitions (macros that apply only to the assembly in which they are defined). The
OVERFLOW SECTORS control record specifies the number of sectors (n3) to be reserved
for storing the tempora.ry macros. If n3 is zero or not specified, a comma must be coded,
but storage of temporary macro definitions is not allowed.

compute n3

The number of working storage sectors (n3) required for storing temporary macro definitions is calculated as: ](/40
where

K is the sum of the number of statements in each temporary macro definition.

5-62

Assembler Control Records
*COMMON
*MACLIB

*COMMON
general function

This control record allows you to specify the length (in words) of COMMON that is shared
by the program being assembled and a FORTRAN program compiled prior to this assembly.
The number of words of COMMON used by the FORTRAN program can be obtained from
a listing of the program. The use of this control record provides for the saving of COMMON
when linking between FORTRAN mainlines and assembler mainlines.

format

Card column

2 through 71

72 through 80

Contents

Explanation

*

Asterisk

COMMONI6
nnnnn

nnnnn is the number (in decimal) of words of COMMON
to be saved between links.

Not used

*MACLIB
general function

This control record specifies that the macro library is used during assembly. The MACLIB
control record is invalid on 4K systems and with both LIST DECK options.

format

Card column

additional field
information

Contents

Explanation

*

Asterisk

2 through 8

MACLlBI6

9 through 13

Macro library
name

14 through 71

Reserved

72 through 80

Not used

Macro library name. This name must be an exact duplicate of the name given to the macro
library when it was defined by a STOREDAT A or DFILE DUP control record. A MACLIB
control record is ignored if an invalid macro library name is specified.

Con trol Records

5-63

FORTRAN Control Records
how to code

FORTRAN CONTROL RECORDS
functions

FORTRAN control records specify optional operations that affect the FORTRAN compiler arid program execution. These control records are placed in the input stream as follows:
.

..._ _ _ _ Next monitor
control record

L.1'ooII~--- FORTRAN source statements

FORTRAN control records can be entered in card or paper tape form along with the
source program deck or tape, or they can be entered from the console keyboard (see
"Entering Jobs from the Console Keyboard" in Chapter 7).
The IOCS, NAME, and ORIGIN control records can be used only with mainline programs;
the others can be used with both mainline programs and subprograms.
coding

All FORTRAN control records have the following format:
Card column

CcltOten1S

Explanation
Asterisk

2 through 72

Option

73 through 80

Not used

Replace option with the
keywords for the control
record being used.

Note. FORTRAN control records are coded in free form; that is, any number
of blanks can occur between the characters of the option. Remarks are not
allowed.

If a FORTRAN control record contains an asterisk in column one, but the option is not
identical with the fomlat shown for the control record, the asterisk is replaced with ~l minus
sign on the control record listing. The control record in error is ignored; an error doe:; not
result, bu t the specified option is not performed. This same action is taken if the spedfied
address is not valid in an ORIGIN control record.

5-64

FORTRAN Contro. Records
*IOCS

*IOCS
general function

This control record specifies the I/O devices that are used during execution of a FORTRAN
core load. Only the devices required should be included. Any number of IOCS control
records can be used to specify the required devices.
All I/O devices that are used by FORTRAN subprograms called in a FORTRAN core load
must be included on the IOCS control records associated with the mainline FORTRAN
program. Assembler language subroutines that are included in a FORTRAN core load can
use any of the other I/O device subroutines in addition to those specified on the IOCS
control records for the FORTRAN mainline program.

format

Card column

2 through 72

Contents

Explanation

10CS

d is a val id device name
selected from the following
list.

(d, d, ... ,d)

73 through 80

Not used

Names for I/O devices to be used are specified in the IOCS control record. These names
are enclosed in parentheses and separated by commas. The devices, their associated IOCS
names, and the I/O subroutines called for each device are:
Device

* IOCS device name

Subroutine called

1442 Card Read/Punch,
Model 6 or 7

CARD

CARDZ

2501 Card Reader

2501 READER

READZ

1442 Card Punch, Model 5
(1442 Model 6 or 7 if used
as a punch only)

1442 PUNCH

PNCHZ

Console printer

TYPEWRITER

TYPEZ

Keyboard

KEYBOARD

WRTYZ

1132 Printer

1132 PRINTER

PRNTZ

1403 Printer

1403 PRINTER

PRNZ

1134/1055 Paper Tape
Reader /Pu nch

PAPER TAPE

PAPTZ

1627 Plotter

PLOTTER

PLOTX

Disk

DISK

DISKZ

Disk (unformatted disk I/O)

UDISK

DISKZ

Note. CARD is used for the 1442 Card Read/Punch, Model 6 or 7, and 1442 PUNCH is
used for the 1442 Card Punch, Model 5 (1442 PUNCH can be used for a 1442, Model 6
or 7, if the function is punch only; 1442 PUNCH uses less core storage). CARD and
1442 PUNCH are mutually exclusive; therefore, the use of both of these names in 10CS
control records for the same compilation is not allowed.

Con trol Records

5-65

FORTRAN Control Records
·USTSOURCEPROGRAM
·UST SUBPROGRAM NAMES

,

*IOCS Examples.
,.....--'

1

5

10

15

20

25

30

35

40

45

5o

:MliR111.IE

~l OQ l§( &IA tRD " 1~O
f-'-'

*1 DC S( rPlA tf;E tR

TIA

*LlST SOURCE PROGR:AM
general function

This control record caus(::s the source program, as it is entered, to be listed on the principal print device.

format

Card column

Contents

Explanation
Asterisk

2 through 72

LIST SOURCE
PROGRAM

73 through 80

Not used

*LlST SUBPROGRAM NAMES
general function

This control record causes the names of all subprograms (including subprograms called
by EXTERNAL statements) called by the compiled program to be listed on the prinCipal
print device.

format

Card column

Contents

Explanation
Asterisk

5-66

2 through 72

!LIST
BUBPROGRAM
!.\lAMES

73 through 80

Not used

FORTRAN Control Records
*LlST SYMBOL TABLE
*LlST ALL

*LlST SYMBOL TABLE
general function

This control record causes the absolute or relative addresses for the following items to be
listed on the principal print device.
• Variable names
• Numbered statements
• Statement functions
• Constants
The addresses are relative unless an ORIGIN control record specifies the core address where
the first word of the core load is placed for execution.
A constant in a STOP or PAUSE statement is treated as a hexadecimal number. This hexadecimal number and its decimal equivalent appear in the list of constants. The hexadecimal number is displayed in the ACCUMULATOR when the system waits at $PRET during
the execution of the PAUSE or STOP statement.

format

Card column

Contents

Explanation
Asterisk

2 through 72

LIST
SYMBOL
TABLE

73 through 80

Not used

*LlST ALL
general function

This control record causes the source program, associated subprogram names, and the symbol table to be listed on the principal print device. When this control record is used, the
previously described LIST SOURCE PROGRAM, LIST SUBPROGRAM NAMES, and
LIST SYMBOL TABLE control records are not required.

format

Card column

Contents

Explanation
Asterisk

2 through 72

LIST ALL

73 through 80

Not used

The FORTRAN sample program in Appendix H is listed by a LIST ALL control record.

Control Records

5-67

FORTRAN Control Records
*EXTENDED PRECISION
*ONE WORD INTEGERS

*EXTENDED PRECISION
general function

This control record allocates 3 words of core storage for aritlunetic values (real and integer)
instead of the standard tw'o and generatds linkage to the extended precision subprograms.
The FORTRAN compiler normally operates in standard precision; that is, 2 words (a sign,
23 significant bits, and an exponent) of core storage are allocated for each aritlunetk
value. Through the use of the EXTENDED PRECISION control record, the compiler can
be made to yield 31 significant bits by allocating 3 words of core storage for each ar:lth·
metic value.
Standard precision, extended precision, and arithmetic subprograms are discussed in the
publication IBM 1130 Subroutine Library, GC26·5929.

format

Card column

Contents

Explanation

*

Asterisk

2 through 72

EXTENDED
PIRECISION

73 through 80

Not used

*ONE WORD INTEGERS
general function

The FORTRAN compiler normally assigns 2 words of core storage for each real and inte·
ger value (see the previous discussion of the EXTENDED PRECISION control record).
The ONE WORD INTEGERS control record causes all integer values to be assigned one
word of core rather than the standard 2 words, or 3 words when an EXTENDED PRECI·
SION control record is uSled.
An ] 130 FORTRAN integer can have any value in the range of - 2 15 +1 to 2 15 -1. Any
value in this range can be contained in one word (16 bits) of core storage; therefore, inte·
ger values can contribute rather significantly to inefficient use of core storage because of
the extra word allocated for standard or extended precision. Because of this, the use of
the ONE WORD INTEGERS control record conserves core.

Note. If this control record is used, the program does not conform to the USASI Basic
FORTRAN standard for data storage, and will require modification for use with non·
1130 FORTRAN systems.
format

Card column

Ccantents

Explanation
Asterisks

5-68

2 through 72

ONE WORD
INiTEGERS

73 through 80

Not used

FORTRAN Control Records
*NAME
**(header information)

*NAME
general function

This control record causes the specified program name to be printed at the end of the program listing.

format

Card column

Contents

Explanation
Asterisk

2 through 72

NAMEl6xxxxx

xxxxx is the name of the
mainline program and is five
consecutive characters (including blanks) starting in the first
nonblank column after NAME.
At least one blank must separate NAME and the mainline
program name.

73 through 80

Not used

** (Header Information)
general function

This control record causes the information specified in columns 3 through 72 to be printed
at the top of each page printed during compilation when a 1403 Printer or 1132 Printer
is the principal print device. When the first statement of the program is read, the printer
skips to a new page (a skip to channell), prints the heading, and begins listing the program
statements.

format

Card column

Contents

Explanation

1 and 2

**

Asterisks

3 through 72

Any string of
characters

73 through 80

Not used

Control Records

5-69

FORTRAN Control Records
*ARITHMETIC TRACE
*TRANSFER TRACE

*ARITHMETIC TRACE
general fUnction

This control record causes the value of each variable to be printed each time it is changed
during program execution. An asterisk immediately precedes each printed value.
Console entry switch 15 must be turned on, and an 10CS control record specifying the
console printer, 1132 Printer, or 1403 Printer must be included in the FORTRAN control records. When more than one of these print devices is specified, the fastest device is
used for printing the traced values. Tracing is stopped if con~ole entry switch 15 is turned
off. This provides for tracing only a part of a program. Tracing can be restarted by turning
console entry switch 15 back OlL
You can trace selected portions of your program by placing statements that start and stop
tracing in the source program. These statements, CALL TSTRT and CALL TSTOP, are
placed where needed in the program. In addition to these statements, console entry switch
15 must be on and an 10CS control record specifying a print device and an ARITHMETIC
TRACE control record must be included in the FORTRAN control records.

format

Card column

Contents

Explanation
Asterisk

2 through 72

,A,RITHMETIC
TRACE

73 through 130

I\ot used

*TRANSFER TRACE
general function

This control record causes the values of IF expressions and computed GO TO indexes to
be printed during program execu tion. Two asterisks immediately precede each printed
value of an IF statement. Three asterisks immediately precede the value printed for the
index of a computed GO TO ~tatement.
Console entry switch 15 must be turned on, and an 10CS control record specifying the
console printer, 1132 Printer, or 1403 Printer must be included in the FORTRAN control
records. When more than one of these print devices is specified, the fastest device is used
for printing the traced values. Tracing is stopped if console entry switch 15 is turned off.
This provides for tracing only a part of a program. Tracing can be restarted by turning
console entry switch 15 back on.
You can trace selected portions of your program by placing statements that start and stop
tracing in the source program. These statements, CALL TSTRT and CALL TSTOP, are
placed where needed in the program. In addition to these statements, console entry switch
15 must be on and an 10CS control record specifying a print device and a TRANSFER
TRACE control record must be included in the FORTRAN control records.

format

Card column

Contents

Explanation
Asterisk

5-70

2 through 72

TRANSFER
TRACE

73 through 80

Not used

FORTRAN Control Records
*ORIGIN
RPG Control Cards

*ORIGIN
general function

This control record allows you to specify the core address where the core image loader
starts loading a program into core for execution. When an ORIGIN control record is used,
absolute addresses are printed in the listing that is produced by the compiler. This allows
you to see exactly where the program statements and constants are during execution.

format

Card column

Explanation

Contents

Asterisk

additional field
information

2 through '72

ORIGINl6ddddd or
ORIGIN/xxxx

73 through 80

Not used

This is the starting core address
expressed as a decimal number
(ddddd) of 3 to 5 digits or as a
hexadecimal number (/xxxx)
of 1 to 4 digits preceded by a
slash,

ORIGIN. The origin of a program cannot be specified below the disk I/O subroutine that
is used by the core load. The origin is determined by adding decimal 30 to the next higher
addressed word above the end of the disk I/O subroutine used by the core load. If the
address you specify is an odd number, the system uses the next highest even address as
the origin, The following chart lists the lowest possible origins. If an invalid address is
specified, the control record is ignored.
Disk I/O
subroutine
in core

Decimal

Hexadecimal

DISKZ
DISK1
DISKN

510
690
960

/01FE
/02B2
/03CO

Core load origin

RPG CONTROL CARDS

functions

Two RPG control cards specify operations to be performed by the RPG compiler. The
first, the RPG control card, acts as a header for the source deck. Information coded in this
control card indicates the compiler operations to be performed.
The second control card, the RPG end-of-file control card, is required as the last card of a
source program or a data file.
The RPG control cards are placed in the input stream as follows:

II~"'---

Source program

I/JOB

Con trol Records

5-71

RPG Control Cards

The following illustrates the stacked input required to compile an RPG source program,
store the object program in the user area, and execute the object program:

/*

Ii

;I

End of file signals end of data card input fUn

Iii

~

RPG data file (if file not already stored on disk)

Execute the program. X or any other entry in column 28
will bring in the special I LS routines required by RPG.
Get PROGN (program name) from working storage and
~ store it in the user area.

,-End of file card for source deck

RPG source deck (specification statements)
RPG Gontrol card
Monitor control card to call the RPG compiler

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

. . . . - Monitor COI'1trol card to initiate the job

If the II DUP and *STORE records are omitted, the program is executed from workl11lg
storage; however, the program is not available for future execution because it is not s~lved.
If the program being compiled is not executed often, storing it on cards rather than Ollt disk
may be advisable. The following illustrates the stacked input required to compile an RPG
program and punch an object deck:

II~""- Blank cards for object program

Punch the named program (PROGN) into c:ards.
The program is in working storage.
Disk utility program call

L..-.._-- End of file card for source deck
RPG source deck (specification statements)

, - Monitor control card to call the RPG compiler
L-_ _ _ _ _ _ _ _ _ _ _

5-72

r---- Monitor control card to initiate the job

RPG Control Cards

Then, the input stacked required to execute the object program from cards is illustrated
by:

End of file signals end of data card input file

x

RPG data file (if file not already stored on disk)
......_ _ Execute the program. X or any other entry in column 28
will bring in the special I LS routines required by RPG.

IMII---

RPG object program

.....- - Store a program from cards to working storage.
Disk utility program call
L..._ _ _ _ _ _ _ _ _ _ _...J-I....-

Monitor control card to initiate the job

Most RPG programs require input data during program execution. This data can be on
data cards at e~ecution time or can be stored at any time before execution in a predefined
data file on disk. The following illustrates how a data file can be built on disk by an RPG
program:

/*

End of file signals end of data card input file.

Data cards to be stored on disk in FILE 1.
Execute object program. X or any other entry in column 28
will bring in the special I LS routines required by RPG.
L...-~....---

Store object program

Disk utility program call
End of file card for source deck
RPG source deck including control card. On the File Description
Specifications forms, define input file as cards, output file as disk.
Object program to load data cards to FILE 1.
Monitor control card to call the RPG compiler
Reserve 100 sectors on disk and label this area FILE1; *STOREDATA
can also be used to reserve the disk storage space.
Disk utility program call
Monitor control card to initiate the job

Con trol Records

5-73

RPG Control Cards
RPG control card
end-of-file card

The RPG compiler prints addresses of various routines in the key addresses of object program table. For example, the close files routine (located near the end of the mainline
program) is included in this table. This routine may require from 2 to 16 additional words
(hexadecimal) depending on the type and number of files to be closed. The address of this
routine can be helpful when dealing with programs that exceed the available core storage.
By adding the number of additional words to the address of the close ftles routine, the
size of the generated mainl:ine program can be determined.
RPG data files may be sequential or indexed-sequential (ISAM). On an JSAM load function,
the compiler prints the following information:
• Filename
• Number of sectors required if overflow is not needed
• Number of sectors requi.red if 10 pe'rcent overflow is needed
This infonnation can be us·ed to reserve ftle space for ISAM records. See "Assembler and
RPG Disk File Organization and Processing" in Chapter 6 for detailed information about
RPG disk data meso
RPG Control Card
general function

This first card of an RPG source program immediately following the RPG monitor control
record must be an RPG control card. The infonnation coded in columns 6 and 11 of 1his
card indicate the functions that are to be performed by the RPG compiler. All other entries
in the control card are described in the publication IBM 1130 RPG Language, GC21-5002.

format

Card column

Contents

1 through 5

Described in IBM
ttao RPG Language

6

H

7 through 10

Reserved

11

Blank, B, or D

Explanation

Identifies this card as an
RPG control card

Blank indicates compilation
with a listing of the program.

B indicates compilation only.

D indicates a I isting only.
12 through 80

Described in IBM
1130 RPG Language

End-of*File Control Card

5-74

general function

This control card designates the end of an RPG source program and an RPG data file;
therefore, an end-of-file control card must be the last card of an RPG source program and
an RPG data me.

format

Card column

Contents

1 and 2

/*

3 through 80

Not used

Explanation

Monitor Control
stacked job input

Chapter 6. Programming Tips and Techniques

The information in this chapter is planned to help you use the 1130 Disk Monitor System,
version 2, more efficiently. The infonnation is presented in the following order:

1.
2.
3.
4.
5.

General tips on monitor control and usage
Data me processing
Tips for the assembler programmer
Tips for the FORTRAN programmer
RPG object program considerations

TIPS ON MONITOR CONTROL AND USAGE

The tips in this section are of general interest to all programmers of the 1130 DM2 system.
These tips include:
• Arranging stacked jobs
• Using temporary job mode
• Using the disk I/O subroutines
• Restoring destroyed cartridges
• Avoiding overprinting
• Using programs and data files more efficiently
• Using LOCALs, NOCALs, and SOCALs
• Reading core maps and me maps
• Reading the transfer vector
• Using SYSUP for changing cartridges during program execu tion
Stacked Job Input Arrangement

Input to the monitor system includes control records, source programs, object programs,
and data that are arranged logically by job. The monitor JOB control record designates
the start of a job. You should consider the following when arranging the input for any
job:
• Any number of comments (1/ *) control records can be used before ASM, RPG, FOR,
COBOL,DUP, or XEQ monitor control records. Comments control records cannot
immediately follow ASM, RPG, FOR, or COBOL control records.
When an *EQUAT supervisor control record is used after a JOB monitor control
record, a comments control record cannot be placed between the JOB record and the
EQUAT record. A comments control record cannot be placed between a // DUP control record and the following DUP control record (* ... ).
When supervisor control records are used after an XEQ or STORECI control record,
comments control records cannot be placed between the XEQ or STORECI and the
following supervisor control records.
• Any records other than monitor control records that remain after completion of an
assembly, compilation, or a subjob (XEQ) are passed until the next monitor control
re,(ord is read. Also, after a Disk Utility Program (DUP) operation is completed, any
records other than monitor c.ontrol records or o.!her DUP control records are bypassed.

Programming Tips and Techniques

6-1

Monitor Control
stacked job input

• If an error is detected in an assembly or compilation or during the building of a core
load for execution (XEQ), the resulting object program and any program or programs
that follow within the current job are not executed. Also, all DUP functions are pas~led
until the next valid ASM, FOR, RPG, or JOB control record is read if an error is detected in an assembly or compilation or during the building of a core load because of a
DUP STORECI function .
• If a monitor control record is read by the assembler, by Oile of the compilers, or dur:ing

Macro Update Program (MUP) operations, execution of the assembler, compiler, or MUP
is ended. The function indicated by the monitor control record is performed.
The following stacked input arrangement assembles or compiles, stores, and executes programs A and C, if source program errors do not occur and if working storage is large
enough.

6-2

Monitor Control
stacked job input

II JOB

Source program C

FORTRAN control records -

Object program B

Source program A

-~IIIoJtC=-

:=::::::::c'"-=-::-:-::::::::::::::"""""'---'::=;:;;::::::;;:::;l'll

)t~i~~~~~~~~el

.......

---l~~~~~~~~~5~~:~

---I)tJ~~~~~~~~~~~

Assembler
control
records

Cold start card (see cold
start operating procedure)

Programming Tips and Techniques

6-3

-,-------Monitor Con trol
temporary job mode
disk I/O subroutines

If an error occurs in one of the source programs, the DUP *STORE operation is not performed for that program, and all following XEQ requests before the next JOB control records are bypassed. Thus, if the successful completion of one program depends upon the
successful completion of the previous one, both programs should be considered as one
job and the XEQ control records should not be separated by a JOB record.
How to Use Temporary Job Mode

Temporary job mode (indicated by a T in column 8 of a monitor JOB control record)
causes all programs stored in the user area during the temporary job to be deleted auto·
matically when the next JOB control record is processed.
In some cases, the available space in the user area may not be large enough for storage of a
newly assembled or compilt~d program. When this happens, you must use the DUP delete
function to clear the user area of old programs, and then store the new program. The necessity for such deletions can be avoided by using temporary mode when running jobs that
included programs likely to be replaced at a later time, or that are infrequently used.
Temporary mode is particularly useful when dehugging a new program.
Using th,e Disk I/O Subroutines

All core loads, whether they use disk I/O or not, require one of the 3 disk I/O subroutines.
As a minimum, a disk subroutine reads the core load into core and execu tes CALL EXIT,
CALL LINK, CALL DUMP, and/or CALL PDUMP.
uses and how
to call

Source programs written in assembler, FORTRAN, RPG, or COBOL can call any of the
3 I/O subroutines; however, only one disk I/O subroutine can be referenced in a given
core load. Because of this, all programs and subroutines linked to in a core load must use
the same disk I/O subroutine. The subroutine used by a core load is indicated in an XEQ
monitor control record or a STORECI DUP control record. (Control records are described
in Chapter 5.) Generally, DlSKZ is used by FORTRAN, RPG, and COBOL core loads
and DISK! or DISKN by assembler language core loads.

functions

DISKZ is intended for use in an error-free environment, because it does no preoperative
error checking. DISKZ is the shortest of the disk subroutines.
DISK! and DISKN provide more functions than DISKZ. These additional functions include:
• Validity checking of word count and sector addresses
• File protection
• LIBF-type calling sequence
• Validity checking of the function indicator
• Write without readback check option
• Write immediate
• Word count can be on an odd boundary
DISKN provides 2 more functions than those just listed:
• Simultaneous operation of as many as 5 disks
• Faster operation when transferring more than 320 words
Mere detailed infonnation about the disk I/O subroutines is in the publication IBM 1130
Subroutine Library, GC26·5929.

6-4

Monitor Control
restoring cartridges
printer control

Restoring Destroyed Cartridges
Cartridges containing data and/or programs in the user or fixed area that are difficult to
replace can sometimes be restored for use after acc~ss to information on the cartridge is
destroyed.
use DCIP
disk analysis

Use the disk analysis function of the stand-alone utility program DCIP to restore sector
addresses if only sector addresses are affected. (DCIP is described in Chapter 9.)

use a system
reload

A system reload can be performed if part of the monitor system (except LET, FLET, user
and fixed area) is destroyed. Include in the reload the entire monitor system, except the
system library.

use DC IP patch

Use the patch function of the stand-alone utility program DCIP to restore individual words
that are destroyed on a cartridge.
How to Avoid Overprinting When Using II CPRNT
In order to avoid overprinting when using the monitor CPRNT control record, the FORTRAN programmer should provide for spacing an extra line after the last ou tput statement in a program.
The assembler programmer should provide for spacing after printing following the last
output statement in the program.
How to Avoid Overprinting When Linking Between Programs
Overprinting when linking between programs can be avoided by coding your program to
space one line before linking to another program. This should be done because the core
load builder assumes that a space before printing is not necessary; all monitor programs
have a space after print. Overprinting should be avoided because an important core load
builder message may not be readable.
Usage of the EJECT Monitor Control Record
An EJECT monitor control record is used during a job to start printing of a new page on
the principal printer. For example, comments control records can be placed in a more
readable position for the operator if followed by an EJECT control record.
---I

/1

10

5

15

20

25

30

35

40

IUO

.
.

II ~
II If ,j
II / IZ: 1..1

50

45
f--- -- f -- f--- I--~-

+---- 1-----1111l:' I~~ IAG~

rl()

~:p

t---f-

l ___ , -

_

I-- 1--

-- -f---

t':R AI7 101(1)

-------c---

IfllT

L.c;:I.c

~-

I-I----

-1-- 1--1- f--

1-1-

-/----

1----- 1---1--1---

- f-/---I-

Programming Tips and Techniques

-

I-----

1-- f---

f-

-

-

6-5

Monitor Control
store functions

Duplicate Program and DSlta File Names
Names that are duplicates of IBM-supplied programs should be avoided in DUP store and
delete operations. (The names of IBM-supplied programs.are in Appendix C.) If a program
being stored or deleted has the same name as an IBM program, the results of subsequent
operations are not predictable.
Because the DUP store functions check for duplicate names, 2 programs or data files with
the same name cannot be stored on one disk. Two programs or data files can, howeve:r, have
the same name if stored on separate disks. If your system has more than one disk drive,
having programs with the lame name on more than one disk on the system can cause
problems when an attempt is made to execute or delete the named program.
r--'

5

1

III ~!G~

10

15

20

25

30

35

- 1--...

1--1- -I- 1-1--l- t-- _...

I~t(j I1I1 11<11-

I-rP )RIC iG1

11 11

.

-

~- ~--

II ~!lJlV

t--t--

1~51710IRIE

t---

-I-

~lt1 lOG!
- -1---

..-

f--I-

- .- 1--- .
-f- I- -- - -.

-

.-1- i - - f--I-

--. _.- .. - I-f--I-

.

.

PiJ< C~l

..

.~-

-

22 22
-

XEG

50

45
-

.

1/ IliLIlJ

II

40

11 11 2'2 22

.-

f---

- f--..

- 1---..-

II DlljlJ

~DE

iF=7~

1----

PR OG1

.. --

--1--1

-I---i---

-f--'---

-

This sequence of control records cause PROG 1 on the cartridge labeled 1111 to be executed when you may have wanted PROGI on 2222 executed. A similar problem can occur
in the delete operation. In this example, PROGI on 1111 is deleted; you may have wanted
to delete the program on 2222.
To avoid this problem:
• Assign a unique name to each program and data file.
• If you do not know the contents of a cartridge that is on the system, and the cartJridge
is not needed for your job, make the drive not ready.

6-6

Monitor Control
store functions

Disadvantages of Storing a Program in DCI Format
Before you decide to convert to and store a program in disk core image (DCI) format, consider the advantages gained in loading time of a DCI program against the following disadvantages.
system maintenance

An important consideration is the effect that system maintenance can have on a DCI program. Subroutines from the IBM-supplied system library that are called by a program are
stored with a program in DCI format. If system maintenance changes a subroutine after
a DCI program is stored, the subroutine in the system library is changed; however, the
copy stored with the DCI program is not. In this case, the DCI program must be deleted
and rebuilt (STORECI) after the maintenance modification is made.

size of working storage

If the user or fixed area is expanded after a DCI program is stored, working storage nIes
that are referenced by the DCI program may extend beyond the available working storage
during execu tion. This problem is not recognized until an attempt is made to perform
disk I/O operations past the end of the cartridge.

data files not in
working storage

Another important consideration concerns DCI programs that reference nIes that are not
placed in working storage during execution. An error occurs if an attempt is made to
store in DCI format a program that references a fIle in the user area, because the location
(sector address) of the referenced fIle may change as a result of program deletions. The
DCI program subsequently references such a fIle by the old sector address. The results
are unpredictable.
A similar problem can occur if the DCI program references a file stored in the fixed area,
even though the operation is allowed. The fIle might be deleted and another stored in its
place after the DCI program is stored. This problem can be complicated by the fact that
not only are sector addresses built into a DCI program, but the logical drive codes are
also. In this case, you must make certain that every time the program is executed that all
the required disk cartridges are mounted on the same logical drives as when the program
was originally stored.

difference in
core size

A DCI program can be executed on a system with a configured core size different from the
system on which the core load was built, if the size of the core load does not exceed the
different core size.
Size Discrepancies in Stored Programs
The disk block count of a program is printed and becomes a part of the LET or FLET
entry when the program is stored. When a program is stored from cards to the user or
fixed area, the disk block count can be greater than when the same program is stored from
working storage. The reason for this discrepancy is that a DSF header is created for each
card when a program is stored from cards to disk. Therefore, any 2 headers in the stored
file are a maximum of 51 words apart. When the program is stored from working storage,
the distance between headers is limited by the disk buffer size, 320 words.
The increased disk block count noted when the program is stored from cards accommodates the expanded size of the fIle caused by the additional headers.

Programming Tips and Techniques

6-7

Monitor Control
store functions

Dumping and Restoring D,tta Files
Dumping of important data files to cards is often advisable so that the files can be restored
later if the cartridge containing them is destroyed. Use DUMPDATA to dump a fIle to cards
and STOREDAT A to stor€~ these cards back on disk.
DUMP DATA dumps by sector count. For example, the control record:

causes 3 sectors to be dumped to 18 cards; 17 cards of 54 words and one card of 42 words.
The last 12 words of card 18 do not contain data.
STOREDATA stores by card count. To store the cards in this example, the control
record:

causes the contents of the:,e 18 cards, excluding the contents of the 12 unused words on
card 18, to be stored back in 3 sectors. Note that if you use DUMPDATA to dump to'
cards, the number of cards (same as the last-highest-sequence number in cc 78-80 of
the cards dumped) is the number to enter in the count field of the STOREDATA card.

STOREDATA for Cards Not Processed by DUMPDATA
If you use STOREDATA to store cards produced by a function other than DUMPDATA,
some of the words in the ::ast card may not be stored. To prevent this, use the followiing
formula (based on the number of cards) to determine the card count to specify in the
count field of the STOREDATA control record:

1.

Use the fommla:

ex 54
J20

=S

where

2.

6-8

C is the actual number of cards; 54 is the number of data words that can be
con tained in a card; 320 is the number of words that can be contained in a
sector, and S is the number of sectors required for the fIle.
If this formula produces a remainder that is less than 54 and not zero, add one to
the card count to b{~ specified in the STOREDATA control record, and place a
blank card at the end of the data deck.

Monitor Control
defined files
use of LOCALs

Use of Defined Files
When an *FILES supervisor control record follows a / / XEQ monitor control record, the
core load builder searches LET and/or FLET for a specified fIle name. If the name is
found, the sector address of the file is inserted in the fIle table identified by the associated
fIle number specified on the *FILES control record. (A file table is created during program
assembly or compilation by the assembler FILE statement or the FORTRAN DEFINE
FILE statement, respectively.) If the fIle name is not found in LET or FLET, the fIle is
defined in working storage.
An *FILES control record after an *STORECI DUP control record is processed in the
same way, except that files found in the user area are flagged as invalid.
A suggested way of initially allocating a disk area for a data fIle in the user area or fixed
area is to use the DUP *DFILE function. The number of sectors to be reserved is determined on the basis of the number of records the fIle is to contain, and the size of each
record. Use the following to calculate the number of required sectors for a fIle:

1.

Compute the number (N) of records that can be contained in one sector:
N= 320
L

where
L is the length in words of each recordin the fIle. Disregard the remainder,
if any.
2.

Compu te the number of required sectors (S):

S=~
where
M is the total number of records in the fIle.
N is the number of records computed in Step 1.
Round the answer to the next higher number if the answer has a
remainder. This answer is the sector count that you specify in an
*DFILE control record to reserve file space in the user area or fixed
area.

Mainline Programs that Use All of Core
Before you write a program that occupies all of core storage, consider that extensive rewriting may be required if IBM-supplied subroutines called by the core load are expanded
due to modifications.

The Use of LOCALs
A core load that is too large to fit into core for execution can be executed by specifying
as LOCALs some of the subroutines called by the core load. Since a core load that utilizes
LOCALs does not execu te as fast as it does without LOCALs, keep the following in mind
when specifying LOCALs:
• Specify infrequently called subrou tines as LOCALs.
• Plan your program so as to minimize the number of times that LOCALs are called into
core.
• Keep the number of specified LOCALs to a minimum.

Programming Tips and Techniques

6-9

Monitor Control
use of LOCALs
use of NOCALs

LoeA L-Calls-a- LOCA L
The assembler language programmer can execute core loads in which a LOCAL calls another
LOCAL. Any character punched in column 26 of the XEQ control record causes all DSF
core loads for that execution to allow LOCALs to call LOCALs. In a series of LOCALcall-LOCAL subroutines, you must pass the link word (mainline program return addres:,)
in all LOCALs (type 4 or 6 subroutines) that are referenced by CALL statements. The
return address must be passed in order to return from the last LOCAL to the place from
which the first LOCAL was called. Assembler is the only language that allows the return
address to be passed. Therefore, LOCAL-calls-a-LOCAL is restricted to assembler language use.
For a FORTRAN program, the core load builder cannot detect a LOCAL-calls-a-LOCAL
condition between FORTRAN fonnat I/O routines and the I/O subroutines that they
call. Therefore:
• A FORTRAN fonnat I/O routine and any routine that it calls cannot both be
specified as LOCALs in the same core load.
• A user subroutine that contains I/O statements and the FORTRAN I/O routines
that are used to execute those statements cannot both be specified as LOCALs
in the same core load.

LOCAL. and NOCAL Control Record Usage
When using LOCAL and NOCAL control records, keep the following in mind:
• A subroutine cannot be specified as a LOCAL ifit calls another subroutine also spedfied as a LOCAL. For example, if A is a LOCAL subroutine and A calls Band B calls
'C, neither B nor C can be specified as LOCAL subroutines for the same program. The
assembler programmer can avoid this restriction by using the LOCAL-calls-a-LOCAL
option discussed in the previous section of this chapter.
• If a subroutine is specified as a LOCAL and SOCALs are employed, the subroutine is
made a LOCAL even though it otherwise would have been included in one of the
SOCAL overlays.

• If a subroutine is specified as a LOCAL, it is included in the core image program ev,en
if it is not called.
• When using LOCAL control records, the total number of mainlines and subroutines
specified cannot exceed:
3M + 2S~640
where
M is the total number of mainlines specified in the LOCAL con trol records.
S is the total number of subrouitnes specified in the LOCAL control records.
If execution is from working storage, the mainline program in working storage is
counted as one, although it is not specified on a LOCAL record. This restriction also
applies to NOCAL control records.
• Only subroutine types 3, 4,5, and 6 can be named on LOCAL and NOCAL controll
records. (A description of subprogram types is included in Appendix I.) Subprogram
types 3 and 5 are referenced by LIBF statements, and types 4 and 6 with CALL statements. Types 5 and 6 are ISSs; types 3 and 4 are subprograms.
•

Conversion tables, such as EBPA and HOLTB, cannot be used as LOCALs. The conversion tables are listed in Appendix C.

• SCAT!, SCAT2, and SCAT3 cannot be used as LOCALs.
• Although a subroutine's instructions or data areas may be altered during execution,
later LOCAL/SOCAL reloading may put the subroutine back into its original state.
6-10

Monitor Control
use of NOCALs

The Use of NOCALs

NOCALs provide a method of including a subroutine in a core load even though the subroutine is not called. The advantages of NOCALs can be illustrated by the following.
manually executed
debug subroutines

You can write debugging subroutines, such as a specialized dump subroutine, and include
them in a core load as NOCALs. Then during program execution, you can execute the
debugging subroutine by manually branching to its entry point.
If an interrupt service subroutine (ISS) for levelS is made a NOCAL during a core load,
you can execute it by pressing PROGRAM STOP; an interrupt on levelS is made, and
PROGRAM START returns execution to the mainline program. A subroutine to monitor
execution of a mainline program or to gather statistical information can be designed.

ISS trace subroutine
using NOCAL

The following sample trace subroutine for interrupt levelS, ILS05, determines when the
contents of a core location are destroyed by being changed to zero. Location /0500 is
used in the example. This subroutine is written and stored as subtype zero in the user
area. The sample ISS is assembled as levelS and stored in the user area. The ISS trace
subroutine is specified as a NOCAL when the mainline program is executed; the ISS and
associated ILS05 are included as a part of the core load. During a WAIT instruction in
the mainline program, the console mode switch is turned to INT RUN to cause a levelS
interrupt after execution of each mainline statement. The trace subroutine is entered
and, in this example, waits when core location /0500 becomes zero. A dump of the program
can be used to determine the conditions that caused the change to zero.

Programming Tips and Techniques

6-11

Monitor Control
NOCAL example

Operation

LClbel
25

21

27

F T

Operands & Aemarks f"

~2 33

30

35

~* ~1~1
, , , * *
*.... * A,M,P,L
0
~,~,~,*,~

45

40

~,~,~,~

50

55

65

60

70

i~,~,*,~,~,1E,~Ma.('~'~'~'~~'~'~'~'*'*I*'~;~'~'~'~'~'~'~'~'~'~'~'~I:~

, , , , , , • I , , , , , , , , , , -, , , .*
,L,E,V,E,L, __L2,
....L...J.~
,
.A.L.L
T
'R,A,C,I,IJ,r;j
,D,V,T<.ili.N,
Q
0W
*.~.
1 I / IN IT £l2,72,U,'P,T, l2 U.N, M,Ol),E, -, , , I~
, -,
L..L , I I , , I , , , , , , , I , , , , ,
l~
I~ *1~,~,*,-1(~~~,~,~~~,~,~~,~,*,*,~¥,~,~,~,~'~'*I~,Mf*'~'~I~'~'~'~'~i~
*.*~,~.~ ~ *'~'~'~ ~
*5
Iqj
, , , , , I
, ,
, ,
I,
- IL.S.
A,D,D,J(, [),C, ,
, , I L.L..I , , , I , I ,
/,¢,¢,4,7,
LL I I I I I I I I I
I
•
•
rp
,
,

~.-L.lE X
I
•• T 0
I

••

E

F

'-L-LL.LL_l.-L-LL'

,/,L,S,

,6.U,~,12,O&7,

, ,

/ ,N,£, ,F,O,Z?,

,

,

,

,

, _L..l..

f-

I

•

I

,

I

I

,

I

,

"

,

,

I

,

I

,

,

,

I

I

I

f-

~

I

•••

'--1.......L...L...L ,

,

,

,

T ~1£.I=l.;~IO, ,/,S,SLJ!j,£l;,
L_-L..L(J r(zj =,E N,1
~, , , ,e 0 1:(,£, ,L D B L D,R, IPI UI 7jSI ,A,C;[.J/A,L ,
IN,T, ,
I

,

I

,

•

•••

~-L..L

·.

,

• ••

I
•

J<.7<,2, I , , , ..LJ-L....'
I
• •
•
•
,
,
,
,
,
,
,
,
,
,
,
A.D'~.L....1......L.J..-LLJ_' , , , • ,
I
I I -I , I I
•
141, " ' " ...L....l-~r:.,S}·,O,R,~ ,~~A,~U,~ , • , , , , I , -, , , I-T.EIvl.A ., , , I I N,S, r.O,R,~ ,A,C,C'-'£IX,G I 1., I I L-'-_.L...L....L....1._ I-¥,-,~, , ,
I ~,S,7,O,'R.E.,
,XIR.l, ....L.L , , , , , , , I , -, I , I
~I-'*' , , • , , , N-,S,GOl<,E, ,X,R.21 , I , , I , , , , I , I , , I - I-I.N,T. , , , I LL.£;j, / ,T,-,7.U.T<,N. ,O.F,F, ,/,N,~ ,L,E,V,E,L, ..L.J_ I 21 , , , I , I , 1.GA,C C,-,E.X,7, ), , , , , , I , , ,
f~.-,*,

S,TD,

, -1.

I

,

,

I

,o,T,/,L,L,

.AJ,O,M~El~,a

I....L....L

,

I

,

,

I

, , I ,
, , , I

I

,

I

,

,

, , ....L..L...L..L..L , ,
, , , , I , , , ,
•-

I

,

,

,

•

, ... ,

,,
I

I

,

, ,
I , ,
,

I
I
I

Note. Provision must be made to test the device status word for the keyboard/console printer if you want to distinguish between levl~' 5
interrupts initiated by the PROGRAM STOP key and interrupts from INT RUN (see IBM 1130 Functional Characteristics, GA26-588:1l.

6-12

Monitor Control

use of SOCALs
core maps

The Use of SOCALs
restricti ons

A subroutine that is included in one SOCAL overlay must not call a subroutine included
in another SOCAL overlay or cause another SOCAL overlay to be loaded into core before
execution of the current SOCAL is complete. This restriction is required because the IBMsupplied 1130 subroutines that are used in SOCALs are not re-enterable.
Note that disk I/O is used every time a SOCAL is read into core, thus disk I/O is sometimes
entered without your direct knowledge.
When the 1627 Plotter is used by a program, the following subroutines must not be in a
SOCAL for that program: EADD, FADD, FMPY, EMPY, XMD, XMDS, and FARC. These
must instead be incore subroutines. You can accomplish this by:
1.
2.
3.

decreasing execution
time

Dumping these programs to cards or WS
Deleting the programs
Storing the programs with subtype zero

The use of SOCALs increases the length of time for execution of a program. Some of the
extra time can be avoided by planning your program so as to minimize the number of times
that SOCALs are called into core. Ideally, your program should be written in sections,
each employing a single SOCAL; input, computation, and output. Plan input and output
carefully so as to separate disk and nondisk operations whenever possible.
RfJading a Core Map and a File Map

The core maps described in this section are taken from the sample programs supplied with
the monitor system. Sample program listings are in Appendix H. These maps include:
• The execu tion address of the mainline program
• The names and execu tion addresses of all subrou tines in the core load
• The file allocations

Programming Tips and Techniques

6-13

Monitor Control
assembler core map

The following is the core map from the assembler sample program (program 2):

asseimbler
core map

II XEQ
L
R 41 7908 (HEX) ~CS UNUSED BY CORE LOAt
CALL TRANSFER VECTOR
fSCR
0248
LIBF TRANSFER VECTOR
FARe
069A
X~CS
061E
~CLL

062E

PRTY
EBPA
FACO
FDIV
FLO'

050E
05SE

FADDX
F~PYX

fSTO
FGETP
NOR~

TYPEO
EBPRT
IFI.X

04eO

053C
0488
04E3

049E
046C
0452
0428

0312

02AC
0280

FLOAT

0230
SUBROUTINES
IlS04 OCC4
IlS02 00B3
OlFE (~EX) IS THE EXECUTION AODR

SYSTE~

Message R41 (not an error message) indicates that /7908 words of core storage are n'ot
occupied by the core load. Only one subroutine (FSQR) is called with a CALLstatement,
but several subroutines are called with LIBF statements. The ILS02 and ILS04 subroutines
are required; however, their addresses indicate that they are a part of the resident monitor
and not in the core load. The entry point address to the mainline program is /OlFE.
The following is the core map from the FORTRAN sample program run on a 4K system
(program 1):

6-14

Monitor Control
FORTRAN core map

FORTRAN
core map

II XEQ

on4K

*LCCAL,FlCAT,FARC,IFIX,PAUSE,HOlEZ

l

2

system

*FILES(103,fILEA)
FILES ALlCCATION
103 02EA 0001 OeDO FILEA
101 COOO 0001 CEOO 02EC
102 COOl 0001 OEoO 02EC
STORAGE ALLOCATION
R 40 038F (~EX) ADDITIONAL CORE REQUIRD
R 43 0124 (HEXl ARITH/FUNt seCAl WD tNT
R 44 0682 (HEXl FIIO, 110 SOtAL WD tNT
R 45 0286 (HEX) DISK FI/G SOCAL WO C~T
R 41 0004 (~EX) wDS UNUSED BY CORE LOAD
lIBf TRANSFER VECTOR
XMCS
09AA SOCAL 1
EBCTB OF51 seCAl 2
HeLTB OFl5 seCAL 2
GETAC OE02 SOCAl 2
NORM
07tO
FACDX 0955 SOCAl 1
FSBRX 092C SOCAl 1
FMPYX 08FS SOCAl 1
FOIV
08A6 SOCAl 1
FSTOX 016C
FlOX
0788
SOCOM 0918 SOCAl 3
SDfX
08E3 SOCAl 3
SDWRT 0901 seCAl 3
SIDFX 09A6 saCAl 2
SUBSC 07A2
SICI
09AA SOCAl 2
SCOMP 0983 seCAL 2
SWRT
08A2 SOCAl 2
SRED
08Al sceAl 2
FSTO
0710
FlD078C
PRNTZ OOF8 SOCAl 2
CAROl 0048 seCAl 2
SFIO
09BF SOCAl 2
SDfie 0960 SOCAl 3
HClEl 086A LOCAL
PAUSE 086A LOCAL
IF'IX
086A LOCAL
FARe
086A LOCAL
FLCAT 086A LOCAL
SYSTEM SUBROUTINES
IlS04

IlS02
IlSOl
IlSOO

00C4
00B3

OF 56
OF6f
fllPR 0804
04Cl (HEX) IS THE EXECUTION ADOR

Programming Tips and Techniques

6·15

Monitor Control
FORTRAN core map

The principal difference between the assembler core map and this FORTRAN core map is
that the FORTRAN core map includes a file map.
File 103 is equated to a disk data file named FILEA by the *FILES control record. tinder
FILES ALLOCATION, me 103 is listed with a beginning sector address of /02EA, is one
sector in length, and is stored on a cartridge labeled OEDO. I f file 103 had required more
than the 2 sectors available in FILEA, the record count would have been reduced to make
the file fit in FILEA, and the file map entry would be:
103 /2EA 0002 OlEDO FILEA TRUNCATED
Files 101 and 102 are in working storage and are not defined in the *FILES control
record. The last entry for each file indicates whether the file is in the user or fixed area,
or in working storage. If the file is in the user or fixed area, this entry is the name of the
file (FILEA in this case). If the file is in working storage, the last entry for each file is the
sector address of working storage.
The second entry for each file in the user or fixed area is the absolute sector address of the
first sector of the file. For flIes in working storage, the second entry is the address relative td the first sector of working storage. Thus, the absolute sector address of file 101 is
/0000 + /02EC; for file 102, /0001 + /02EC.
Note that this program when run on a 4K system requires both LOCALs and SOCALs.
The programmer defines the LOCALs in the *LOCAL control record. These subroutines
are identified by the term LOCAL in the core map. The core load builder selects the
SOCAL subroutines, and these subroutines are identified by the term SOCAL followed by
a SOCAL overlay number in the core map. SOCAL option 2 is used for this program because all 3 SOCAL overlay numbers are used. SOCAL option 1 uses SOCAL overlay 1
and 2 only.
Under STORAGE ALLOCATION, message R40 indicates that the core load exceeds the
capacity of core storage before SOCALs are employed by /03BF words. Messages R43,
R44, and R45 indicate that SOCALs 1, 2, and 3 require /0124, /06B2, and /02B6 words
of core, respectively. Thi~; information indicates that since SOCAL 2 is much larger
than SOCAL 1, more arithmetic and function subprograms can be called at little extra
cost in core. Message R41 indicates that after SOCALs are employed, /0004 words of
core are not used by this core load.

6-16

Monitor Control
FORTRAN core. map

The following is the core map from the same FORTRAN sample program (program 1),
but run on'an 8K system:
FORTRAN
core map
on 8K
system

II XEQ

L

2

*lCCAl,FlCAT,FARC,IFIX
*FIlES(lC3,FIlEA)
FILES AlLCCATIC~
lC3 02EA COOl OECO fllEA
lCl cooe OeOl OEOO 02EC
102 0001 OCOI OECO 02EC
STCRAGE AlLCCATIC~
R 41
OC08 (~EX) WDS UNUSED BY CORE lOAD
LI~F TRA~SFER VECTCR
EBCTt3 12BF
HClTB 1283
GETAC 1240
X~CS
1224
I-'ClEl llEE
PALSE 1108
NORr.'
llAE
FACOX 1159
fSBRX 1130
F~PYX
1CFC
fDIV
1CAA
fSTCX 1052
FLCX
106E
SCCCr.' 0842
SCFX
07AC
SCWRT 07C8
SICFX OB26
SlJBSC 1088
SICl
OB2A
SCCtJP OB03
SWRT
OA22
SREO
OA27
FSTO
lC56
FLC
1C72
PRt\Tl Cf78
CAROl OEC8
SFIO
OB3F
SOfIe 082A
If IX
1338 LOCAL
FARC
1338 lCCAL
FLCAT 1338 LCCAL
SYSTEr.' SUBRCUTINES
ILS04 CCC4
ILS02 CCB3
IlSOI 1366
IlSCC 137F
FlIPR 1202
04Cl (I-'EX) IS T~E EXECUTION AOOR
Note that fewer LOCALs are specified, and that SOCALs are not necessary; the entire program can be contained in 8K core.

Programming Tips and Techniques

6-17

Monitor Control
RPG core map
FORTRAN allocation addresses

TIle following is the core map from the RPG sample program (problem 3):

RPG core
map

II XEQ
L
R
R 41 6016 (HEX) WDS UNUSED BY CORE LOAD
CALL TRANSFER VECTOR
RGERR OC24
HLEBC OAlA
LIBF TRANSFER VECTOR
RGSI5 1lE4
RGBlK 11AA
RGEDT l05A
RGMV2 OFA6
RGADD ODDD
RGSll 0080
RGMV5 OC72
RGMV3 0050
RGCMP OCFE
RGMV1 OC6A
PRNTl OA9A
ZIPCO 097A
CARDa oe1C
SYSTEM SUBROUTINES
ILSX4 1249
ILSXZ 1260
ILSX1 1286
ILSXO 12A3
020F (HEX) IS THE EXECUTION ADOR

Ihe information in the RPG core map that is different from the assembler or FORTRAN
core maps is that the special ILS subroutines (named with an X, as ILSX4) are used. The
special ILS subroutines are r·equired by RPG and are called when any character is punched
in column 28 of the / / XEQ control record.
Locating FORTRAN Allocation Addresses
Variable, constant, and statement allocation addresses are relative to the loading address
of a FORTRAN program if an *ORIGIN control record is not used. The loading address
(origin) is detennined by adding decimal 30 to the next higher addressed word above the
end of the disk I/O subroutine used by the core load. The following chart lists the lowest
possible origins, depending on the disk I/O subroutine in core:
Disk 1/0
subroutine
in core

Core load origin
Decimal

Hexadecimal

510
690

/01 FE
/0282
/03CO

f-.

DISKZ
DISK1
DISKN

6-18

960

Monitor Control
transfer vector

The absolute addresses of variables: constants, and statements are found by adding their
allocation addresses (obtained from a listing) to the loading address.

If an *ORIGIN control record is used, you designate the loading address (not lower than
the addresses in the previous chart). In this case, the allocation addresses printed in a
listing are absolute addresses.
The variable allocations that follow are taken from the FORTRAN sample program
(program I) in Appendix H.

VARIABLE ALLOCATIGNS
A(R )=CODC-0016
V3 ( I )=OlF2
L2 ( I )=OlF8
K ( I )=OlFE
O(R )=OlEE
M1 ( I )=OlF5
N ( I )·=OlFB

X(R )=OOFO-OOOE
)=OlF3
N1 ( I )=OlF9
I K ( I )=OlFF
V1 ( I )=OlFO
M2 ( I )=OlF6
I ( I )=OlFC
M( I

B(R

)=OlEC-OOF2

L ( I )=OlF4
N ( I )=OlFA
I 1 ( I )=02CO

V2(I

)=OlFl

L 1 ( I )=OlF1
J ( I )=OlFD

The real variable array A is allocated between the loading address + /OODC and the loading
address + /0016. Constant and statement allocations are calculated in a similar manner.
Notice that the 100-element array A requires 200 core locations (2 words per element).
Because all FORTRAN arrays are allocated in reverse order, A (1) is assigned the two relative addresses /OODC and /OODD, A (2) begins at /OODA, and A (3) begins at /00D8.
The relocation factor (the actual core address of the first word) of a FORTRAN subprogram is obtained by subtracting the relative entry point address (from the subprogram
compilation listing) from the actual entry point address (in the core map).
Reading the Transfer Vector
The contents of the transfer vector are determined from a core dump by starting at the
high end of core and marking off words backwards as illustrated by the following:

Dummy one-word entry
(if necessary) to ensure
odd address for F AC
Last

Second

First

Indicators

FAC

Last

Second

First

~lIFL"Ll~j~~J.::<~:~,J~\:,,",:-::.:.'
......:::::.

LlBF TV·:::::::·:·:....··..

"'::

CALL TV·::····

'.: COMMON "
End of
core

•

Low core

High core

Programming Tips and Techniques

6-19

Monitor Control

SYSUP

Continuation of the job must be delayed until any newly mounted cartridges are ready.
The assembler WAIT statement and the FORTRAN PAUSE statement provide the necessary
delay.
The IDs of the cartridges being used must be specified. If zero is specified for the master
cartridge (logical drive 0), the master cartridge for the current job is assumed. When Jess
than S cartridges are used, specify the IDs for the cartridges to be used and an 10 of zero
to indicate to SYSUP that all cartridges have been specified. If, for example, 3 cartridges
are used for a SYSUP operation, the cartridge 10 list is coded as follows:
Label

25

21
I

I

I

I

Operation

F T

27

32 33

I • I

30
I

I

I

I

I

, ., ,

,

I

,

,

, • I

I

LJ,8.T,

D,C,

I

J)ICI

I

Operands & Remarks

., , ,
..1

•

, ,

., , ,

,

,

I

,

,

1 Ll

"

40

35
I

1

I

I

1

1

45

I.

I

1

,

I

,

I

•

I

,

1

1

I

I

I

ilJ,C, ,

/.21212121

•

1

1

1

I

I

D.CI

/'¢I¢.¢.¢I

•

I

I

I

I

• (I

,

I

I

I

t

I

I

I

I

t

,

65

60

70

1

,

,

,

I

,

,

I

I

•

I

I

I

l.1

I

I

I

I

I

I

I

I

,

I

I

'-1-..L_L..L....L __ L_~.__

1

I

I

I

I

I

I

I

I

I

I

I

I

I -1-..L-L._...L_L....L-L_I_ f -

I

,

I

I

I

1

I

I

•

-

i

1

I

, ,

55
I

• , , , I ,(,A ,s , .5',U,m,e, ImIQ1slt,e,f', ,~,a,,.,f,,,,;,d,Q,e,),
/.11111.11 • I I I I ,CCa,r,f. I liD, 10Ir .I10,q. i,c,Q,/, 11,).', I •
0
I I I • (,C.a,r,f.
liD
i,c,a, ~~-L_'l,n,dJ ,c,a,f,e,s. ,f?,n,d,' .0,1, II, ~,f,), ....L_:= r-

/1~¢/lrA

1

I

,

50
I

I

I

,

I

I

I

I

I

I

I

I

I

I

I

10.f'1

.11

1(,.

1 I

,

I

,

,

I

/1

I

I

f-

---L...L__L...L..l __ L ...L_t_ r-

The FORTRAN calling sequence for SYSUP is:
-1

10

5

20

15

fA lUiS E- 1_2 :34 -..

~-

I- --

..

_

-

f--

rCA IL -8 YS up (a )
-.----

30

25

35

40

jlIcC ha nla e ca ~-t
€'s.
(:p I'e SiS iP RC (71< ~~ ~~ TA tit )

f- -

..

--

-c- 1-'-

..
-

-

... -

50

45

...

-I

-

-•

--

I

where
a indicates the last item in an array that contains the IDs of the cartridges being used

for the SYSUP operation. For example:
CALL SYSUP (K(S))

K is a one-word integer array. Because FORTRAN arrays are stored in reverse order, the
first item read by SYSUP is the last item K(S) stored in the array. Thus, K(S) is the entry
for logical drive 0, the master cartridge. This item in the array can contain zero, in
which case, the master cartridge defined for the current job is assumed.
The array cannot be longer than S words, but it can be shorter. Ifless than S words are used,
the first item K(1)-placed in the array must be zero to indicate to SYSUP that all cartridges
have been specified. For example, a 3-cartridge FORTRAN array is specified as (K(4)) with
K(1) containing zero.
After execution of SYSUP is completed, a list of the cartridges is printed. Error messages
prin ted during SYSUP operation are included in Appendix A.

Programming Tips and Techniques

6-21

Monitor Control
SYSUP, reeling

Reeling

Reeling is the process of continuing a long data file from one cartridge to other cartridges
and is done with SYSUP and program linking. This operation might be performed as follows.
Suppose your system has only one disk drive, the internal disk in an 1131 CPU, and you
want to sequentially process a long data file that does not fit on one cartridge. The fiirst
part of the file can be defined on one cartridge and the second part on another. The program that accesses this file can be written as 2 parts and linked together. The first part
processes the first part of the data file, and the second part of the program processes the
rest of the data file.
Assume the program is written in FORTRAN, and the termination of the first link consists of a PAUSE (to allow for mounting the second cartridge in place of the first), followed by CALL SYSUP and CALL LINK to the second part of the program. When
SYSUP is called, DCOM and COMMA are updated on the second cartridge.

on a single
dri,ve system

-1

10

5

15

41QJ

")

20

30

25

(3 ,4
V'l IR~ l4r ( 41, illl~ L I Nli< ~~ ~~ r-1

NR I I E

1', -f-

'--'- I- -- , - -

--

--f-f-

Note that an *FILES control record defining the $$$$$ me is not required after the XEQ
control record.
Sample program 4 in Appendix H uses unformatted I/O and END FILE, BACKSPACE,
and REWIND statements. The program writes 3 logical records of different lengths to a
, $$$$$ data me. Each logical record begins on a sector boundary and extends into additional sectors as required.
After the completion of each WRITE statement (of records A, B, and C), a pointer is
moved to the beginning of the next logical record. In the case of the END FILE statement,
the pointer is similarly positioned beyond the record generated by END FILE. The
second BACKSPACE statement moves the pointer to the beginning of record C, which is
subsequently read into area F.
The REWIND statement sets the pointer to logical record A, then a READ statement with
no area specified advances the pointer to record B. Only the first half of B is read into
area E, since the record lengths are in the ratio 2: 1.
Assembler and RPG ,Disk File Organization and Processing

The disk I/O subroutines supplied with Disk Monitor 2, direct access, sequential access,
and indexed sequential access method (ISAM), are used by both assembler and RPG language programmers. The key to the use of the disk I/O subroutines is an understanding of
the basic principles of disk me organization and processing.

Programming Tips and Techniques

6-27

[)ata File Processing
sequentiall
ISAM

File Organization

File organization is the method of arranging data records on a direct access storage device;
that is, building the me. Two types of me organization are available with DM2; sequential
and indexed sequential (ISAM).
sequential fi Ie
organization

A sequentially organized me is one in which records are placed on the disk in the sam€::
order they are read in, one after another. That is, record 6 cannot be written until record
5 is written, record 5 untillfecord 4. Sequential fIles can be processed sequentially or
randomly.

indexed sequential
(ISAM) file organization

An indexed sequential me is one in which records are pla.ced on the disk in ascending sequence by a record key. The record key can be a part number, man number, or any other
identifying information that is present in the records in the fIle. In addition, an indexe:d
sequential me uses an index table to indicate to the processing program the generalloGation of desired records. Each index entry contains a cylinder address and the highest record
key on that cylinder. For cylinders that have overflowed, the index also contains the
overflow sector address and the key of the first sector overflowed from that cylinder (see
the descriptions of overflow sectors and areas under "Indexed Sequential Access Method
Files" and "Contents of an ISAM File" later in this chapter).
Index tables are analogous to the index card me in a library. If you know the title of a
book (the record key), you can look in the card fIle (index table) until you fmd the card
(index entry) for that book. On the card is a number (cylinder address) where the book
(record) is located. You go to the shelf and find (seek) the number (cylinder address)
you are looking for. Now you can search for the particular book (record) by title (record
key) . .
Records in an indexed sequentially organized me can be processed sequentially or randomly.
File Processing

File processing is the method of retrieving data records from a fIle; that is, using the me.
Four methods of file processing are available with DM2.
• Sequential processing of sequentially organized mes
• Random processing of sequentially organized mes
• Sequential processing of indexed sequential (ISAM) mes
• Random processing of indexed sequential (ISAM) mes

6-28

sequential processing
of sequential files

When sequentially processing sequential mes, all records in the fIle are processed in the
order of the me starting with the first physical record in the fIle.

random processing of
sequential files

When sequential files are 'randomly processed, the sequence of record processing is not
related to the physical sequence of the records in the me. To find a record in a sequentially
organized me, your program must specify the record number. The ·record number indicates
the relative position (sequential location) of the record in the fIle. The disk I/O subroutine
calculates the sector address from the record number and reads the proper record.

sequential processing of
ISAM fi,les

When sequentially proeess:lng ISAM mes, all records in the file are available in a sequ~:nce
detelmined by the record key. Processing can start at the beginning of the me or at any
point within the me.

random processing
of ISAM files

To find a random record in an ISAM file, code your program to search the index table
using the record's key. The matching index entry points to the cylinder that contains the
record. The indicated cylinder is then searched for the desired record; the match is made
by record key. This kind of processing can be called processing in a random sequence
with record keys.

Data File Processing
sequential
ISAM

Calculating Sequentially Organized and ISAM File Sizes
You initially define a file on a disk with the DUP *DFILE or *STOREDATA function.
These functions set aside a specified number of sectors for the file, and enter the file
name in LET or FLET. This file name that you assign to the file must be used in all
future references to the fIle.
Sequentially Organized Files

The number of sectors required for a file depends on the size of records and the number of
records. The records are fixed in length and can be defined as any size between one word
(2 characters) and 320 words (640 characters). Records cannot be extended across sector
boundaries; thus, a 320 word record (one sector) and a 161 word record each require one
sector of disk space. Careful planning is required in calculating optimum record size for
your file.

1.

Compute the number of words (L) in a record:

L=~
2

where
C is the record size in characters. Round the answer to the next higher number
if the answer has a remainder.

2.

Compute the number of records (N) that can be contained in one sector:
N= 320
L
where
L is the length in words of each record compu ted in Step 1. Disregard the remainder, if any. 320 is the number of words in a sector.

3.

Compute the number of required sectors (S):
S = R+l
N
where

R is the number of records in the fIle, and N is the number of records per
sector computed in Step 2. Round the answer to the next higher number if
the answer has a remainder. This answer is the sector count that you specify
in an *DFILE or *STOREDAT A control record to reselVe file space in the
user area or fixed area.
To change record sizes or add records to a sequential me, the file must be rebuilt. If
a revised me requires additional sectors, it must be redefined and rebuilt. A sequentially organized file is built using the sequential access 'routine. A sequential file
can be processed by either the sequential"access subroutine or the direct access subroutine. These subroutines are described in the publication IBM 1130 Subrou.tine
Library, GC26-5929.
Indexed Sequential Access Method Files

The number of sectors (S) required for an ISAM file is computed by the following formula:
S=P+I+O+F
where
P is the number of prime data sectors, I is the number of index sectors, 0 is the number of overflow sectors, and F is always one sector for the file label.

Programming Tips and Techniques

6-29

Data File Processing
ISAM

compute prime
data sectors

The number of prime data sectors(P) is computed as follows:
P = R+N-}
N

where
R is the approximate number of records in the file., and N is the number of records
per sector. Disregard the remainder, if any. The number of records (N) is compU1ted
by:
N=320

L+2

where

L is the length in words of each record. The maximum record length in words is
3}8; records cannot cross sector boundaries.
compute index
sectors

The number of index sectors (I) is computed as follows:
I =C+E-}

E
where
C is the number of prime data cylinders, and E is the number of index entries per
sector. Disregard the remainder, if any. The number of prime data cylinders is computed as follows:
C =P+7

8
where
P is the number of prime data sectors. Disregard the remainder, if any. The number
of index entries (E) per sector is computed by:
E = 320
X

(disregard any remainder)

where

X is the index entry size computed by:
X= 2K+3

where
K is the key length in words; maximum 25 words (50 characters). If the length of
the key in characters is an odd number, add one when calculating the number Olr
words; that is, 49 characters require 25 words.
overflow sectors

You decide on the number of sectors to be provided for overflow before the file must be
rebuilt. This overflow area is automatically assigned to start at the sector following the
last sector of prime data. This assignment is done by the ISAM load (close) subroutim~.

file label

When computing me size, always add one sector for the me label.
If you wish, an assembler l.anguage program can be used to perform the preceding calculations. You need know only the index entry size (X) as previously discussed, the length of
a record in words, the approximate number of records in the file, and an estimate of the
number of sectors of overflow area needed. A program to calculate all values previously
discussed is included as sample program 7 in Appendix H. The values calculated by the
program or by you are required as entries in the disk file information (DFI) tables for the
ISAM subroutines. An indexed sequential me is built using the ISAM load subroutine" expanded using the ISAM add subroutine and processed by either the ISAM sequential or
ISAM random subrou tine. These subroutines are described in the publication, IBM 1130
Subroutine Library, GC26·-5929.

6-3()

Data File Processing
ISAM

Contents of an ISAM File

An indexed sequential access method (ISAM) file is composed of:
• File label
• Index
• Prime data area
• Overflow area
The relative position of these components within the ISAM file is:
File label

ISAM file label

Index

Overflow area

Prime data area

The first sector of any ISAM file is the file label. This label contains infonnation required
by the ISAM subroutines for processing the file. The file label is built by the ISAM load
function, updated by ISAM add, and used by ISAM random and sequential subroutines.
All label operations are performed automatically by the ISAM subroutines. The only file
label operation that you perfonn is to reserve one sector for the label when the file is
initially defined.
The fonnat of an ISAM label is:
Word number

Label entry description
Key length

2

Record length

3

Number of index entries per sector

4

I ndex entry length

5

Number of records per !tector

6

Record number of last prime data record

7

Index entry number of last entry in file

8

Sector address of last prime data record

9

Sector address of last index entry

10

Sector address of next overflow record

11

Record number of next overflow record

Programming Tips and Techniques

6-31

Data File Processing
ISAM

ISAM file index

The ability to read or write records anywhere in an ISAM file is provided by the file index.
An enhy in this index contains a cylinder address and the highest record key that is associated with that cylinder. The ISAM subroutines locate a given record by searching the index
for the key and then searching the specified cylinder for the desired record, again searching
by key. To increase the efficiency of the ISAM subroutines, one sector of the index is retained in core storage for each me.
The key can be a part number or an employee name or any other identifying information
that is contained in any record in the file. The key entries in the index are the numbers in
ascending collating sequence of the highest key on each cylinder. The end-of-file record
key is the key with the highest possible value; all bits are ones.
The following is a portion of an index table. Note that each entry contains 2 sets of the
same information. The second set is overlaid to show overflow data when the affected
cylinder overflows.

Key

15

First
cylinder
address

Key

15

First
cyli'nder
addre,ss

Z
e
0

Key

30

Normal entry

Key
45

Third
cylinder
address

Key
45

Thircl
cylinder
addre!ss

Normal entrv

6-32

Second
cylinder
address

Key
31

Overflow
sector
Record
address
number

Overflow entry

Z
e
0

All
1
bits

nth
cylinder
address

All
1
bits

nth
cylinder
address

Last entry in index

Z
e
0

Data File
ISAM

prime data area

Pro~e~sing

The prime d~ta area contains the data records that are placed in the file by the ISAM load
subroutine. The records must all be the same length (maximum 318, decimal, words). The
ISAM subroutine adds a 2-word control field to each record. This control field, called the
sequence-link control field, is used in the overflow area as a chaining indicator. The control
field indicates whether or not a cylinder has overflowed.
Prime data area records appear as follows:
Data record

1 word

i

Key
75

I

I

520

y
Sequence-link
control field

'Y
Data record on a
prime data cylinder

overflow area

Key

1

\

,

.

I Zeros I Zeros
_L

1 word

Data record

1 word
I

,

1 word

;

iI

Zeros I X'FFFF

~

!

,

Sequential-link
control field

,

Last data record on a
prime data cylinder
that has overflowed

When a new record is added to an indexed sequential file, it is placed according to key sequence. If records were to remain in precise physical order, the insertion of each new
record would require all records with higher keys to be shifted up. However, because ISAM
fIles have an overflow area, a new record can be entered into its proper position and only
cause records with higher keys to be shifted on that cylinder. The record that is forced off
the end of the cylinder by the addition of the new record is written in the overflow area.
The index entry of any cylinder that has overflowed points to the overflow sector address
and record number of the record placed in the overflow area. When 2 or more records are
added in key order, the overflowed records are chained together through the entries in
their sequence-link control field. The entry in the first record points to the second, the second to the third, and the third to the fourth. The last overflow record in the chain has a
sequence-link control field of all zeros.
You specify the number of cylinders for the overflow area when you initially define the
fIle. Then the ISAM subroutines place the records in the overflow area in the order that
they overflow, not in key sequence.

Programming Tips and Techniques

6-33

Data File Processing

ISAM
----,----

To illustrate the overflow area, assume that on cylinder 6 of a detlned file, the last 3 e~ntries
have keys 150, 152, and 154. Key 154 identifies cylinder 6 in the index". When you add a
record with key 153, a record on another cylinder, and a record with key 151, the OVI;!rflow area appears as follows:
Overflow area

Key

154

;

I

I

Zeros Zeros

I

I

I

I
I

First record overflowed.
The sequence-link control field is zeros indicating the end of a chain.

;

i

I Zeros IZeros
I
I
I

I

Record overflowed
from another cylinder

Key
153

I
I
I
I

overflow: Reg
sector
I 0001
address :

Last record overflowed.
The sequence-link control field points to the
next key in sequence.
In this case it's key 154
in the overflow area.

Key 152 now identifies cylinder 6 in the index; the overflow entry in the index for cylinder
6 points to the overflow area.
Deleting Duplicate Records Caused by a Disk Error During an ISAM Add Operation

If a disk error (/5004 displayed in the console ACCUMULATOR) occurs during an ISAM
add operation, a record may be duplicated in the file. To check for a duplicate record,
list the file or part of the file using the ISAM sequential retrieve. If a duplicate record is
found, one copy must be deleted.
To determine which record to delete, dump the file using a DUP *DUMP function, and
check the index entry for the affected cylinder. If the key of the duplicate record is }($S
than or equal to the first key in the index entry, delete the second of the 2 records. If the
key of the duplicate record is greater than the first key in the index entry, delete the :first
of the 2 records. In both cases, the remaining record is the one that is processed by the
ISAM random retrieve function.
Note that the duplicate record is not physically deleted; it is deleted by performing a sequential read and flagging the copy that is no longer to be used.

(,..34

Assembler Programmer Tips
grouping mnemonics
use of XR3
double buffering

TIPS FOR ASSEMBLER LANGUAGE PROGRAMMERS

The tips in this section are provided to help you with:
• Grouping assembler mnemonics to shorten assembly time
• Using index register 3
• Double buffering for faster I/O operations
• Using the 1403 conversion subroutines
• Wri ting ISSs and ILSs

Grouping of Assembler Mnemonics
The Monitor System Assembler Program is divided into overlay phases, each phase processing a certain group of mnemonics. Each time a mnemonic is processed during assembly,
the overlay phase required to process it is read into core, unless the overlay is already residing in core.
Assembly time can be shortened by grouping mnemonics of a common type in your source
program; thus fewer disk reads of overlay phases are required by the assembler. The following is a list of the mnemonics as they are grouped within the assembler program:
1.
2.
3.
4.
5.
6.

ABS, FILE, ENT, ISS, ILS, SPR, EPR
DCs and imperative instructions~ such as A, LD, EOR, BSC
DEC and XFLC
DMES
HDNG, ORG, EQU, BSS, BES, LIST, SPACE, EJCT, DUMP, PDMP
LIBF, CALL, DSA, LINK, EXIT, EBC, DN

Assembler Program Use of Index Register 3
In general, index register 3 (XR3) is reserved to point to the transfer vector. Normally,
you can use this register in your program; however, if you use LIBF statements, you must
code your program to do the following:

1.
2.
3.

At the beginning of your program, save the contents ofXR3
Before each LIBF, save your program's contents of XR3 and restore the original contents (the pointer to the transfer vector) to XR3
After each LIBF, restore your program's contents to XR3

Under certain conditions, you cannot use index register 3 even if you code your program
to save and restore its contents. These conditions include core loads that overlap I/O
operations and core loads that use the synchronous communications adapter. When these
conditions exist, you can use index register 3 if you specify that a special set of interrupt
level subroutines (named with an X as ILSX4) be included in a core load. You specify the
use of the special ILSs in a monitor XEQ control record.

Double Buffering in Assembler Programs
The IBM 2501 Card Reader, Model A2, rated at 1000 cards per minute, presents a special
problem when you want maximum performance from card I/O operations. If any conversion of the card data is reqUired, the reading speed can drop to 500 cards per minute. The
use of double buffering can prevent the loss of speed.
The principle of double buffering is to read into one buffer while converting and processing
the data from another buffer. This scheme uses additional core for the extra buffer and
additional programming involved, but in most cases, card throughput should remain at
1000 cards per minute. The following coding example illustrates the double buffering
technique used for reading cards from the 2501, and converting them to EBCDIC.

Programming Tips and Techniques. 6-35

Assembler Programmer Tips
double buffering

~,

,

,

,

,

•

,

,

,

,

•

,

,

,

,

•

,

,

,

,

,

,

,

,

,

.*.

i---L---'-~'l.-+--FL=,.D::;;.,=,.D~-+-~-+-+=B=:::!'.I.!."'~,.,a.:,A....:;=,,,.D~R:.r........L.....J.'--'-_.L.'-L.....J ,

I

I

,

•

,

,

,

,

•

,

,

,

,

•

,

,

,

,

•

,

,

,

,

•

,

,

,

,_,

I

'"

•

~ T,O,

J.

, , ,_,

2~TJ),

~L-L'

~ J. ,

I

I

,

•

,

,

'-L...J

S.c, TIt. , .
,.£./::i..4NG,£, ,R,EAJJ. B,U,F,F,E,R, ,AJ).D,R,E,5,t.t.
1.6, , , , , , , '~iX,Ck,4"v'~£1 13IU,F,F,E,R, ,AJJ,DJ<,E,5S£:5, ,
B.F.A,DJ(, . , , ,~:60,~ ,N,E,X,T, ,T,//1£ ,T.~'RU L.O,O,A., .
t?JVrl:r , ,
'~I , , ,

',T,E,

1. .l . L '

I

I

~L-L-'
c..t:).T,O,
~L-L--..A.-+-~S~T.~
~l-L_J
,I
I

8.E,T,2, , •

I

,

,

,

I

,

I

,

8.£ 7,3
I

I

,

!

,

!

,

,

,

,

,

,

,

,

,

,

,

I

,

I

!

,

,

,

•

,~~l-k4,Nl;,£, ,/,All1U,T, ,A,N,D, ,O,U,T,P'U,~ l3l~.T<
~,A,DDJ::(,£.SS,E,S. ,f~QJ<. ,C.O,N, Vr£l<.SJ ,aM .,.
'-L.i , 1 , , , 1 , , , , 1 , , , , ! ! , , I , , , I .~
I

,

,

I

.*

~l-J._J ~,-L-~'~~T=~_~'.I~I~I-LIJ.~I_'~'-L'~!d~'-L'~'~'-L'~I~'-L'~'~'~'~I~'-L'~'~'-L'~'~'-LI~'~'~'~!_~.~~~
~, t ,;C 0 Dt I,N,G IF 0 R ,P,£,Q,U,/,f(,E,D,_PJP,O,C,£,S,S, / ,NG, ,s'kOdlrL,D, !F,o,L,L,a~ ,
~,l-L ,
'"
I
I , , , , , , '-L-I , 1 1 1 , , , , , , I 1 , , I , ! , , I ! , I , ,..l¥
~l-J.__L

"~I-

1_ -L-..L.L

•

I I ,

, ,

, ,

'-L.!

I

,

I ,

,

, , ,

,

, I I , ,

, , I , , , , , I

W-,L.1._J_1- -L-..L.L

•

I , ,

, ,

I ,

'-L-I

I , ,

I ,

I I , ,

,

I , I , ,

I , I ,

I

,

I , ,

•

~L-J.'

'",

I

,

,

,

,

•

,

1

,

,

,

I

,

,

I

I

!

I

~L-L I

•

I

I

,

•

I

I

I

,

•

I

,

'-L-'
'-L-'

I , I I ,

~.L..1

•t

,

,

It'

til

I

I

t--L-I

I

W-,L-l_--L __

~.Ll'

~.Ll- ,

l3L...L....L

R,E,A,D, ,

~...L.J__ I

1

1

,

,

I

,

•

,

,

,

, , '--'--I-

I

•

1 I

I

I

I

1

I

I

I

lit

I

I

I

,

I

I

I

I

I

LL-L-L-L..L..LI

,

I

I

I

I

I

,

I

,

I

,

I

I

I

I

t

I

I

I

t

I

I

,

I

I

,

I

1

I

I

I

I

1

,

I

,

I

1

I

I

I

I

1*

, ,

,

I

,

I

,

,

I

I

,

,

,

I

I

,

,

I

,

I

,

I

,

,

,

,

,

,

I

,

I

,

,

."*

I

I

I

I

L...L.I

I

I

I

I

t,

1

,

,

,

,

,

,

1-1.-1

,

I

I

I

1

A.MD, ,W,O."R,J<, ,t!tR,E,AIS',

1

,

.L'
1

1

,

I I I , • ,

!

I

I

I I I , ,

!

I

t

I

,

,

I , I

t i l
,

,

I

t,

~..L.L_'C ON5,T,AiNT S

~...L.J'

,

,

'"

•

I

I

I

I

,

I_L__1-.1._'

I

I

I

I

,

I

I

I

,

,

I

,

,

,

,

,

,

,

,

,

,

,

,

,

'"

,

1

,

I

,

,

,

1

,

I

I

I

!

I

I

,

,

I

I

I

,

,

I

,

,

,

I

I

I

,

,

O,N,c,
B,U,F,i,

D,e, ,
D,C, ,

~-'-'-

B,s'5,

,

I-LI

I

I

,

It

I

I

•

I

,

I

,

I

,

,

I

,

'"

•

I

I

,

,

,

,

I

I

,

,

,

I

I

I

,

I

!

I

I

I

,

,

I

,

I

I

,

I

I

,

I

'"

,

,

I

I

!

,

I-L-LLI

I

I!

,

I

,

I

I

,

!

,

,

!

,

I

,

,

I

,

I

,

I

,

I

,

j

,

~...L.L

,T H E, ,F,O L L 0 iW I.MG, ,PiA, J ,~~J5 ,A,D,D"~,£S,5r£,5, ,A,~E, ,E,X,C~A,NG,E,D,
&-...L-L_ £ ACH, IT I ME T.l-Il<,qU,G.1-I. ,TJ:iJ:. ,CAl<,D, ,R,EA,D, / ,N.G, .L,aaR '...L.J , , ,

~

'

'"

I

'"

6-36

, ...L-L-I

I

I

I---L-LL'

•

,

!

,

,

I

I

,

I

,

I

I

•

,

I

I

,

•

,

I

,

,

I

I

,

,

I

,

,

,

,

,

LL..L.J.

,

,

I

I

I

,

,

,

,

,

,

,

I

,

I

,

,

I

•

J

I

,

,

,aUF,F,E,~ ,2;

I

II' I~: :::::::

.-L.-L:!-IS.:~
B '1~_D.
DeC::
~

I

I

lL_'

~.-L.-L

.*.*
I

~-L-L_'

Zt...-L.-L

,~

1, ...L.L.I, I , , I ,--.£.llaM~T,AINrT, ,v,A,L,U,E, ,O,F, ,1, I I , , , ,
8,¢J. , , , • , , ,~'{)l~"D ,C,O,U,N,T, ,F,O/<, ,C,A,~,D, ,B,Fl<, It, ,
8//)1
1 ,
,
,~,:A,RD, ,BU,F,F,EJ<.
8.0.· , , , • '....L..J--1i,OlJ,D ·le.aUNT, .F,Ol<' ,C,A,,Q,DI ,BF,T<, ,2,
8,¢, I I I , '_L..L_~:.A,70
2 iU156+l
XR 1 = AOCR CF CAll+l
lC
1 0
IS5e0760
SRA
15 FUNCTIOI\ TE S T
ISSC0770
12
RR IF NCT
ISSC0180
Hse L RFC72,1
R[~28
IS SUBR BUSY
15S00790
LC
+5K I P 1 F YE5
15SC0800
tSC
t\iO, EXIT Te CAlL+3
+1
fot'CX
IS500810
",cx
RE120
15SC0820
EXIT TO CALl+2
RE24C
IS FUNCTIOI\ LEGAL
ISSC0830
~EC12 S
PR IF NCT
ISSC0840
esc l RE197,l
15500850
KE084 lC
RE228
IS SUBR I:WSY
YE S, lCOP
155C0860
~SC
L REOA4,1
ISS00870
kf09l: XIC
IS DEVICE REACY
RE288-l
t;R IF NCT
15500880
esc L RF204,E
ObTAII\ ViORC CCUNT
ISSOO890
lC
I1 1
+IS5009CO
e-5C
15SC0910
tlLX
BH CN Z wO [I\T
RFIC8
OR IF wI) CI\T NEG
IS5C0920
BSC L REI92,l+
0 ThRU 80 15 LEGAL
IS500930
RE?76
S
I3R 1 F OVER 80
IS5C0940
f:.JD PARAM
KElCH tvL:X
1 +1
155C0960
SAVE UATA AeeR
lC
1 0
15 S009 7(1
ST(
RE764
II\CREtlENT ICC S CCUt\TER
IS5C0980
tlCX
L 1IICCT,1
IS500990
SET SLJ AI{ eLSY INCR
STX
C RE22ti
IS501000
XIC
!-tE2£.-4
1~ITIATE REAC
+1
XR 1 PCIl\T5 Te RTN ADOR
15S01010
KF-12C ~'r x
ISS01020
R[STCKf ACC
1I:
1<[32'+
ISS01030
~E13? STX
1 RU80+1
Sf:T R[TURN ACDRESS
ISS01040
I~ F 144 U:X
~ESTOKE STATUS
L 1 *-*
Af'~ C INDEX REGISTERS
ISSOI050
l2 *-*
KElSfl lCX
15S01060
I~F16K lCS
*-*
ISS01070
EXIT
Rf:1eO b.SC l
*-*
ERROR CCCE
ISS01080
ILLEGAL CALL
REIG2 I I
RE312
t-'L)(
RR TC SfT RfTURr-,. A[DRS
15S01090
RE?16
ISSOII00
Kf2C4 SRA
1S CEVICE BLSY
L
HR IF YES
ISS01110
PSC L REOG(:.,E
ERRUR CCDE - eVCE r-.C:T ROY
IS501120
RE30C
lr.
XIH = CAlllf\G ACCRES5
IS501130
~E216 r.·C x
1 -1
ISSC1140
~lx
STC~E CAll /leCR IN 4G
L 1 f,Pt2
COl53
CC154
CC155
CC15t
CC157
C0158
C0159
CC16C
C0161
CC1c?

***************************************************

15501170
15SC1180
***********************.*******************.******* ISS01190
kE22P L:C
()
SUPR Bu5Y If\DR
15501200
PSS E 0
15501210
RE240 r:c
+1
CCf\5TANT
15501220
RE252 [;C
14FOl
SEI\5E ~ITH RESET
15501230
RE264 CC
*-*
IIC DUFFER ACORE55·
15501240
rc
14ECO
ILCC TC I~ITIATE READ
15501250
RE276 [;C
+80
CCf\5TANT
15501260
KE2cA CC
14FCO
5EI\5E 05w ~ITHOUT RESET
15501270
RE3CO (;C
14COO
CUt\5TANT FeR eve NCT ROY
15501280
KE312 CC
140G1
CST FeR BAC CALL
15501290
RE324 DC
*-*
SAVEC ADO
15501300
$PRET feu
128
PRE-OPEKATIVE ERROR TRAP
IS501310
~I[CT [~L
13?
I/C COLNTER
15501320
$P5T4 ~~L
lee
PLST-UPERATIVE ERRCR TRAP
15501330
************'i************************************** 15501340
*
op~cn~PLET~ II\TERRUPT PRCCE551~G
* 15501350
************~*******'****************************** 15501360
*
T~IS PCRTIC~ 15 EI\TEREO FRC~ Af\ INTERRUPT
* 15501370
*
LEV[L SURRT. If NC ERRCK HAS BfE~ DETECTED * 155C1380
*
T~E RCLT11\E IS SET NOT BU5Y AI\O TbE ICC5
* 155013~0
*
CCUNTER IS DfCREMENTEC TO INDICATE
* 15501400
*
II\TERRlPT PROCESSING CO~PLETEC. CTHER~15E
* 15501410
*
T~E SLrR. GeES TC THE P05T-CPERATIVE ERROR- * 15S01420
*
TRAP A~C ~AITS LNTIL THE [PERATCR HAS
* 15501430
*
II\TERVE~EC ANt THE 25C1 BECOMES READY, AT
* [5501440
*
w~IC~ TI~E TbE CARDS ARE PCSITICNEO AI\D THE * IS501450
*
llC CPERATICf\ IS RE-II\ITIATEO.
* IS5C1460
*************************************************** 15501470
RE336 XIC
RE252-1
5Ef\5E CS~ ~lTH RESET
15S01480
SLA
3
IS OPERATIC~ OK
15501490
BSC
L RE360,C
RR IF E~RCR
15501500
~CX
L
$ICCT,-1
DECKE~ENT 10CS
15S01510
f\(P
IN CASE OF SKIP
15501520
SRA
It
15S01530
STC
RE228
CLEAf{ RUUT BUSY INCIC
15501540
~f34H esc
RE048
EXIT
155C15~0
Kf3cO XIC
RE25?-1
SEI\SE DSW FCR RfAO~
15501560
rsc l RE365,E
TO E~~OK EXIT I~ NCT ROY
15501570
xlC
Rf?64
RE-INITIATE FUNCTIlN
15501580
~CX
KE348
Gf{ TO EXIT
15501590
KE3c5 LC
RE300
LU NOT REACY E~ROR CODE
15501600
RSI
L
$P5T4
POST-UPERATIVE ERRCR TRAP
IS5C1610
~CX
RE360
TRY AGAIN
15501620
Ef\L
IS50L630

*

CCNST~\TS

*

Assembler Programmer 'Tips
ISS subroutines
C~CSS-REfERE~CE

S'Vt-'eCl

VALLE

REl

CEF~

REfER(f\C[S

REACO
REC4A
REC60
REe7?
RECS4
RECS6
REI08
RE120
RE132
RE144
r~E 156
RE168
RElSO
RE192
RE204
RE216
RE228
RE240
RE252
RE264
RE276
RE288
RE3CO
RE312
R'E 324
RE336
RE348
RE360
RE365
SICCT
SPRET
SPST4

COCC
COC4
COC7
C012
C015
COle
C024
C028
C02e
002E
0030
C032
C033
0035
CC37
C038
004C
C042
C043
C044
C046
C047
C048
0049
C04A
C048
0054
C056
C0513
C032
C028

1
1

(;0055
CC058
(C072
C0082
COC84
COOBi:
C0094
C01ce
C01C2
00103
00104
COI05
C0106
C0107
C0109
C0112
COl19
C0121
C0122
00123
C0125
C0126
C0127
C0128
C0129
C0147
00154
C0155
C0159
C0131
00130
C0132

CCC51,R
C0154,8
CCC57,B
00e77,8
CC085,8
CCllc,e
CCO<10,B
COOIH,B
C0115,B
C0055,tJ

coee

1

1
1
1
1
1
1

1
1
1
1
1
1
1
1
1
1
1
1

1
1
1
1

1
1
1

1
C
0
0

00074,~

OCC73,~

COIC2,tJ
C0083,B C0091,B CC093,8
CG087,B
C0108,8
OCC78,R ccoe4,R aC098,M 00153,"
COO82,R
C0147,R C0155,R
00096,~ OCCC;9,R C0157,R
00092,R
C0086,R
OOlll,R C0159,R
00107,R
00072,tJ CC1C1,R
COO.,9,B
C0158,B
C0149,8 C0161,8
C011j6,B
C0097,~ C015C,M
C0113,tJ C01l4,R
C0160,8

COO CVERFlC\rj SECTCRS SPECIFIED
cce CVERFLCk SECTCRS REQUIRED
C32 SY~8CLS CEFINec
NC ERRCR(S) At\C
NO WARNING(S)

FLAGGeO

I~

ABove ASSEMBLY

Programming Tips and Techniques

6-41

Assembler Programmer Tips
I LS subroutines

,-----

ILS subroutines

An ILS is included in a core load only if requested by an ISS that is a part of the same core
load. The IBM-supplied ILS02 and ILS04 subroutines are a part of the resident monitor
unless you delete them from the system library and replace them withILSs that you write
for interrupt levels 2 and 4. These rules must be followed when writing an ILS:

1.
2.

Precede the subroutine with an ILS statement that identifies the interrupt level involved.
Precede all statements with an ISS branch table. If the associated interrupt level
status word (lLSW) is not scanned (that is, a single ISS handles all interrupts Ont the
level involved) in the ILS, a one-word table is sufficient; the minimum table siZI! is
one word. A zero must follow the branch table. If the ILSW is scanned, the ISS
branch table must include one word for each used bit of the ILSW:
ISS branch table
I LSW bit X (highest bit used)
Define one word
for each bit used.
ILSW bit 1
ILSW bit 0

Each entry in the ISS branch table identifies the entry point within an ISS for the
associated ILSW bit. The actual linkage is generated by the core load builder. Before
processing by the CLB, each word in the ISS branch table has the following fonnat:
• Bits 0 through 7 contain an increment that is added to the entry point address of
the corresponding ISS subroutine to obtain the interrupt entry point address; w(thin
the ISS for the ILSW bit. (In IBM-written ISSs, this increment is +4 for the primary interrupt level and +7 for the secondary interrupt level. See column +n in
Figure 6-2.)
• Bits 8 through 15 contain the value of @ISTV plus the ISS number of the ISS associated an ILSW bit. The value of@ISTV can be obtained from the cross-reference
symbol table at the end of the resident monitor listing in Appendix G.
@ISTV is the address of the interrupt transfer vector (lTV) in low core. Any ISS
branch table entries that represent unused bits in an ILSW must have the value
@ISTV.
During the building of a core load, the CLB places the entry point address of an
ISS in the location of the lTV that corresponds to the ISS number specified in the
ISS statement. The CLB generates an ISS entry point address by adding the increment in bits 0 through 7 to the address in the location of the lTV pointed to by
bits 8 through 15. Then the CLB replaces the ISS branch table word with this generated interrupt entry point address. (See Step 4 for the use of these addresses.)
3.

4.

5.

6-42

The ILS entry point must immediately follow the ISS branch table and must be
loaded as a zero. The core load builder assumes that the first zero word in the program is the end of thf~ branch table and is also the entry point of the ILS. An interrupt causes a BSI to this entry point.
The ILSW bit that is on is determined with a SLCA statement. At the completioll1 of
this statement, the specified index register contains a relative value equivalent to
that bit position in the ISS branch table. The address in the ISS branch table can
then be used by a BSI instruction to reach the ISS that corresponds to an ILSW bit
position.
To clear the interrupt level when an ILS that you write is used with an IBM-supplied
ISS, code your ILS to exit via the return linkage with a BOSC statement.

Assembler Programmer Tips
I LS subroutines

6.
7.
8.

When you write an ILS, it must replace the equivalent IBM-supplied ILS. Delete the
IBM ILS, and store your ILS as ILSOx, where x = 0, 1, 2, 3,4, or 5.
The IBM-supplied ILS02 and ILS04 subroutines are stored as subtype one. An ILS
that you write to replace either of these must be stored as subtype zero.
The ISS branch table for the IBM-supplied version of ILS04 can have no more than
9 entries. An ILS that you write to replace ILS04 can support all 16 possible ISS
branch table entries.

The following listing is an example of an ILS subroutine.

Programming Tips and Techniques

6-43

Assembler Programmer Tips
I LS subroutines

II ASH

*XREF

0000
0001
0002
0003
0004
0005
0006
0001
0008
0009
OOOA
0008
OOOC
0000
OOOE
OOOF
0011
0012
0013
0015
0016
0011
0018
0019
01)18
00 U:
001E
0020
0022
0023
0076
002A
0029
002A
002B
OO?C
OOf4
002C
6-44

o
o

o

o
o
o
o

o
o
o
o
o
o
o
o

00
0.,

o

00

o

a
o
a
01

o

00
00
00

o

01
0
0

0
0

0033
0033
0033
0430
043C
0437
0134
0435
0436
0000
0818
280F
6910
6All
6812
618000E4
0818
1002
44A8002C
1000
6109
0810
1140
45BOFFFF
2000
65000000
66000000
61000000
CB03
4CC00009
0002
0000
0300
0000

oroo

00001
00002
00003
00004
00005
00006
00001
OOOOB
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00021
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00041
00042
00043
00044
00045
00046
00041
00048
00049
00050
00051
00052
00053
00054
00055
00051
0005R
000')9
00060
00061
00062
00064
00065
00066
00067
00068
00069
00070
00071

*****.*********************************************
*
*
*NAME - ILSX4
*
*
*
*FUNCTION/OPERATION - INTERRUPT LEVEL SUBROUTINE *
*
FOR LEVEL 4.
*
*
*ENTRY POINT - ENTERED AT IX420 BY A HARDWARE
*
*
BSI VIA LOCATION 12 DECIMAL.
*
*
*
*INPUT - NONE.
*
*
*
*OUTPUT - NONE.
*
*
*
*EXTERNAL SUBROUTINES - NONE.
*
*
*
*EXITS *
*
NORMAL - BOSC INDIRECT THROUGH IX420
*
*
ERROR - NONE
*
*
*
*TABLES/WORK AREAS - NONE
*
*
*
*ATTRIBUTES - REUSABLE
*

*

*

*

*NOTES - INDEX REGISTERS 1, 2, AND 3, STATUS,
*
*
ACCUMULATOR AND EXTENSION ARE SAVED UPON
*
*
ENTRY AND RESTORED AFTER INTERRUPT SERVICED. *
*
*
***************************************************
ILS 04
IX410 DC
10033
DEVICD *-* AND ISS NO. *-*
DC
10033
DEVICD *-* AND ISS NO. *-*
DC
10033
DEVICD *-* AND ISS NO. *-*
DC
10430
1231 +4 AND ISS NO. 10
DC
1043C
1403 +4 AND ISS NO. 9
DC
10437
2501 +4 AND ISS NO. 4
DC
10734
1442 +7 AND ISS NO.
1
DC
10435
CONSOLE +4 AND ISS NO. 2
DC
10436
1134/1055 +4 AND ISS NO. 3
IX420 DC
0
INTERRUPT ENTRY
STD
IX480
SAVE ACC AND EXTENSION,
STS
[X430
*STATUS,
STX
1 IX441+1
*XR1,
STX
2 IX442+1
*XR2,
STX
3 IX443+1
*XR3
LOX 13 $XR3X
POINT TO TRANSFER VECTOR
XIO
IX495-1
SENSE KEYBOARD
SLA
2
IS [T INTERRUPT REQUEST
BST
$IREQ,+1 *KEY, BR [F YES
NOP
LDX
9
NUMBER OF DEVICES ON LEVEL.
XIO
IX4QO-l
SENSE ILSW
SLCA 1 0
SHIFT AND DECREMENT XRl
BS I
I 1 I X 4 1 0- 1
B R TOO EV ICE ISS
IX430 LOS
0
RESTORE STATUS,
I X441 LOX Ll *--*
*XRl
IX442 LOX L2 *-*
*XR2,
IX443 LOX L3 *-*
*XR3,
LOD
IX480
*ACC AND EXTENSION
BOSC I
IX420
TURN OFF INTERRUPT, RETURN
IX4RO BSS E 2
ACCUMULATOR AND EXTENSION
DC
0
IX4QO DC
10300
10CC TO SENSE TLSW
DC
0
IX495 DC
10FOO
SENSE 10CC FOR KEYBOARD
SIREQ EQU
1002C
ADD OF ISS FOR INT REQ
$XR3X EQU
/OOE4
ADDR OF TRANSFER VECTOR
END

UIJ00020
UIJ00030
UIJ00040
UIJ00050
UIJ00060
UIJ00070
UIJOOOBO
UIJ00090
UIJOOIOO
UIJ00110
UIJ00120
UIJ00130
UIJ00140
UIJ00150
UIJ00160
UIJ00170
UlJ00180
UIJ00190
UIJ00200
UIJ00210
UIJ00220
U1J00230
UIJ00240
UIJ00250
UIJ00260
UIJ00270
UIJ00280
UIJ00290
UIJ00300
UIJ00310
U1J00320
UIJ00330
UIJ00340
UIJ00350
UIJ00360
UIJ00370
UIJ003BO
UIJ00390
UIJ00400
UIJ00420
UIJ00430
UIJ00440
UIJ00450
UIJ00460
UIJ00470
UIJ00480
UIJ00490
UIJ00500
UIJ00510
UIJ00520
UIJ00530
UIJ00540
UIJ00550
U1 J 0 0 560
UIJ00580
UIJ00590
UIJ00600
UIJ00610
UIJ00620
UIJ00630
U1J00650
UIJ00660
UIJ00610
UIJ00680
UIJ00690
UIJ00100
UIJ00710
UIJ00120

Assembler Programmer Tips
INT REO service subroutine

SYMBOL

VALUE

IX410
IX420
IX430
IX441
IX442
IX443
IX480
IX490
IX495
SIREQ
$XR3X

0000
OOOq
0018
OOlC
OOIE
0020
0026
0029
0028
002C
00£4

000
000
011
NO

REL DEFN
1

1
1

1
1
1
1
1

1
0

0

00031
00041
00057
OOOSA
OOOSq
00060
00064
00066
00068
00069
00010

REFERENCES
000'55 t 8
00062,8
00043,M
00044,M
00045,M
00046,M
00042,M 00061,R
00053,R
00048,R
00050,B
00041,R

OVERFLOW SECTORS SPECIFIED
OVERFLOW SECTORS REQUIRED
SYMBOLS DEfINED
ERROR(S) AND
NO WARNING(S)

fLAGGED IN ABOVE ASSEMBLY

Assembler INT REO Service Subroutine

Pressing the interrupt request key (INT REQ) on the console keyboard causes the ILS in
use for interrupt level 4 (ILS04 or ILSX4) to execute a BSI I $IREQ. Thus, the function
of the INT REQ key depends on the contents of location $IREQ. The system initializes
$IREQ with the address $1420 in the resident monitor. This setting terminates the current
job, and all control records are bypassed until the next JOB monitor control record is
read. You can alter the function of the INT REQ key by coding your program to place, in
$IREQ, the address of an INT REQ service subroutine that you have written.
An INT REQ service subroutine that you write can read the console entry switches and
set program indicators. You should remember that your subroutine is executed with interrupt level 4 on, preventing recognition of other interrupts on level 4 or 5. Because of
this, the following should be kept in mind when you code an INT REQ service subroutine:
• A LIBF or CALL to a subroutine from your service subroutine can cause a recurrententry problem. If the called subroutine is already in use when you press INT REQ, the
new LIBF or CALL in your subroutine destroys the original return address and disrupts
the operation of the called subroutine.
• A LIBF or CALL to an ISS can cause an endless loop if the called ISS operates on level
4 and a test for operation completed is performed by your service subroutine. This
loop occurs because the interrupt indicating the operation is complete is delayed until
the INT REQ key interrupt is turned off.
• Your subroutine must perform an XIO sense keyboard/console with reset before returning.
• Your subroutine must increment the return address by 6 when returning to the ILS
subroutine. A BSe instruction must be used to go back to the ILS where the interrupt
is turned off.

Note. When the core load of your program contains the TYPEZ, WRTYZ, TYPEO, or
WRTYO subroutine, the XIO sense keyboard/console with reset can be omitted. In this
case, code your subroutine to return to the return address plus one.
Two sample subrou tines are included in this section to illustrate how the function of the
INT REQ key can be altered temporarily. These subroutines can be called by either FORTRAN or assembler programs. Both subroutines perform the same function; when INT
REQ is pressed, the console entry switches are read. If console entry switch zero is off,
program execution continues from where it was interrupted. If console entry switch
zero is on, the system exits to the next job. The first of the sample INT REQ service
subrou tines (Figure 6-3) illustrates the coding that can be used by any core load. The
second of the sample INT REQ service subroutines (Figure 6-4) illustrates the coding
that can be used by a core load that contains TYPEZ, WRTYZ, TYPEO, or WRTYO.
Programming Tips and Techniques

6-45

Assembler Programmer Tips
I NT REQ service subroutine

rlab~I--

Operation

F T

~2 __.~~_ ~__30

i3233

Operands & Remarks

35

40

45

50

55

60

65

70

~~~~~~}sX'j(:x~~,*,,)(,~7E,~,~,¥,1(,~~,~,~,~,*,~I**~I~I~I¥I*I~'~I~I¥I~I*'~~~I~I~'*

~~~C.AU~TIO T.H.I:r; :s.JB:~:d.u:iL:N.E: W':L:L: :C.t-JA:N:d,E: :iu, E: : : : : :
1~_-1--L . &Qt£I&-L1v T 5 0 F, I$. 1.1IUI

---L---'---L-L __

LM9i 2. 0
1

.-l.....L.-L_L __ ~,D,

,

I

I

I

I

I

I

,

I

I

I

I

,

I

I

,

I

I

,

,

,

,

,

,

,

,

,

,

,

,

,

I

•

I

,

,

I

•

,

I

I

I

,

,

I

I

I

,

I

I

I

I

•

I

,

I

I

I

I

•

I

,

,

,

,

,

,

,

I

,

,

,

I

I

,

I

I

I

,£,M7~R.Vt ,PtO,/,NtT. , ,

I

Ii

I

I

1

J

,

I

I

I

I

•

1,'1<1011 0,+.1,

I

,

,

I

I

I

I

I

,

I

,

I

I

,

,

L.L.l
1

IS.~~~ I)(,~t, , , • I
,S.Q~ ,Xt1<,i,=,AtlJD,R,

!

,

I

,

•

I

I

I

I

,

,

,

,

•

,

,

'..L..l-L-I

I

,

,

,

I

I

I

,

I

I

I

I

,

I

I

I

,

•

,

I

,

I

•

I/.O,O,2,C, ,

I

,

I

,

'--1- 1

I

,

,

I

,

,

,

,

,

,

I

,

,

I

I

I

1

,

I

,

I

I

,

,

I

I

I

'--1-1

I

,

,

,

I

I

I

,

,

,

I

,

,

I

I

I

I

,

I

I

I

I

,

,

I

,

I

I

I

I

I

I

,

IR'~I£,T, '~IRI1.1 , , , I I , , ,
,,~.~;LqR/v. ,7,0, ,C,A,L,LJ,N.G,

,

,

,

,

,

,P,G,M. ,

I'
I

I

I

I

,

,W,/,L.L, ,8,[, ,~,T,£,R,E,D, ,W(jj/l!, ,T,J.!,£, ,!,J,/,7,E,R,R,U,P.7
,p.R,[,S',Sl,~,

,

I

,

,

I

,

,

,

I

,

I

,

,

I

I

I

I

,

I

I

I

I

,

I

I

,

1

I

I

I

,

1

,

,

,

,

,

I

I

I

I

,

I

I

I

I

,

,

I

I

I

I

'--1-.1

.t..N,T,R,'f, IPIOJIN.T. ,F,R,O,M, .f,L,S , •
1tA/,9 i,O, , I , I ,R,EA,D, ,TH,E, ,C,O,NS,O,L,e, S,W,/,T,C/-I,£,S, ,
I N,9 3 O, , ,
,L/2..l-,~I-I,A.T, &A,S, B,e,£)J, J?£,A,D,
,$, I 4,2,0, "ZI+' , ,F,'=i::!.'t'S,I-I, ,7101 "JJle,X, Tt ,J,O,B, I/,F. ,N,{,GI , ,
1/V9,2,0, , , , , S,~SI£1 ,K,E,~810.A/?tD, ,W,/,7,H, R,E,S,e,T, ,
INT,R",6, , I I ,/N.£',R,EM,E,N,71 .I(,t,7I U,RlJ, ,A,D,D,R, , I I , ,
I AkT,R,"
I
,RJiJ_·,UK,)J. 17101 ".L,S, I , , I I I I , I , I
,

•

,

I

I

I'

I'

I

,

I

I

,

I

L
L
I

,

[

I

1

I

I

,

I

,

I

I

1

,

I

•

I

I

I

I

,

I

I

I

I

,

0""""

I

,C/f~'A,T,£, ,t,VIEtI';, A,D,D/?,

I

I

,

,

,

,

,

I

,

,

I,N,913,O, , , ,

I

,!?tEA,D, ,C,O,AJ,S,O,L,£, ,

I

I

I

I

,

1.3A 0 0, ,

~'-'~I

I

I

l,a~O,t.,

I Nt 91 2 10 1
I

I

,

,

,

,

,

,

J .Q£,C

17.0,
I

,

$1

,

I

,

,

,

,

•

•

I

I

ISICIIJ,t;ltl

.K't[,V.8,OA,~.o,

J1!./,7,1-I

I

I

,

I

I

,

1

I

I

,

I

I

,

,

,

,

,

,

,

IS'IW.

'--1-'

I

,

1

,

,

,

t

I

,

,

,

I

I

I

I

I

,

,

I

I

,

,

1

I ,.J.....l.~1

I

I

•

,

,

,

,

,

I

I

I

I

,

I

I

I

I

,

I

I

,

,

,

,--1-' , ,

I

,

I

,

,

I

I

I

I

IV

,

I

I

I

I

1-.L..l

I

I

I

I

,

,

,

r4J:,U €'1 ,Rtf. A ,D, .F,RtO,M, ,C,OlJ,S,O,L 16.

,

,

,

I

17,01

, , , , ¥Rtc",S,t,7,
I

,

•

~,SIW' I T Cil E

I

/,O,O,c,6 1

,

•

I

"'~'IC

I

I

I

,

I

,

•

,

1

'--1-1

,

,

,

,

I

Figure 6-3. INT REQ service :mbr·)utine for any core load

6-46

,

,W,N.f,N, ,A, ,C,AL,L , ,ll<,£Q, ,

/,R,£,Q,

~

815151

I

J

~.-,~,

,_~.IOI

I

I

,~',0E,R.£D,

I

I

I

,

'-L-,I

IlL

I

I

.....l.....L_L.L.

I

,

,.-1-1

~'-I~I

8 IS , /,

I

,B,E,

,

L1

I

I

I

,

.-L I

I

.....l.-..L.....L

,

,

,

,

X 1,0,
L,D,

,

,

,

IS,

I

,

,O ,F, ,/,MTtR, ,P,O,f<,T,N,
I ~~l; J,N.T.CIR.R.U,P,l"t ,BR,A,NCJ-/. ,AD,DR,
,

I

_LL...L

,

,

,

ZtL_LL...L ___L..L...L

_L.L.L..L_.

I

I

I

~-L.l.__L~._ ..-L., ,
, I
~ir !,$, ,POR7! O.N,
~LL....L R ~~QJdLE,S7 IK E. V, J

D,G ,

'-L-,I

L t I,N,T,R..LLJ-1"
L 1 $, IJ<'E,Q, , I I

ElJ,U ,

lly,T,~

I

,

I

~-,~,

1

I

I

,

,

S,T,X,

I

,

.

I

Assembler Programmer Tips
INT REQ service subroutine
Operation

~bel

21

25

27

30

F T

Operands & Remarks ---------..--.-... -.--.--.--.. -.- --.-- ._-- r--

3233

35

40

45

50

55

_~_._~._~.~_!~!__-

60.

~I~I¥I~IX if o:¥l*,I~I~ ~~ ~ ~ ~'~~~I~I~'~I¥'~I¥I¥'~I~I~I~'¥I~,¥r~Jt(I*"*"~I~I~'*!~'~'~I-)(,~!~~r¥'~i_

¥, , "
~, "
,A

'"

, , , , , , , , , , , , ,

I

,

,

I

I

I

I

,

I

I

,

I

~LL-LLJ

I

~

I

C,A,L,L 70 7.1-/,£, ,S,u,B,RtO,U,T,/,M~ ,W./,L,L, ,C,I-I,A,N,G,£. ,7/-/'£'LLLL.L~r-WI I , CO~71£lv7S OF. ,$//?t.G, tiM .7''''[1 ,R.£,S/~l.M~ MO.N/,7,O,R..,.,1/7 ..L..._
I
I
,71-1£ ,/,AJ7[RRU.A~ ,I?tE.OtU,c,S,71 /(,E,~ ./,S, ,PIR.£lSSl£IDI A,~~E.I;f ,A, , •
leA LJL, 7 0 7IJ.lI.~ ~SlU/3.R.~U,~l.MEI j-l,A,S, ,B,E;E,M '[I'x',£.C,~~~D.\, ,A, '._..L..._
iE', I I ,BR A,MCil 70 7/..1.£1 ,S,e.t;O/J.D, .AA,R.T. .011'1 ,T/I.~ ,$,Uii.RtO,U,7J INl~ , , .

*"

*1 , .,
¥I

,

,

~,

I

I

*1

I

I

~l

,

I

L-,

1

,W / L,L, ,7 AI/(£. P.L,A,C,£,_, ,7,~/,S, ,S,U,B/?O,U,T,/,N.£, IClijfL--Lf2LI!JLJ'{~!LJ.L i,()S£,D, II F TYP,£,~
,W.R,71'ftO, I ,71v'P,£,Z, I ,O,R. 1W.~T~Z,J.l.$Lh~~__..L_.J_..L_r,
17 J.I Et ICIOlR~ L O,A,D ,A,MD, I 'Nt I ,l,LI ,A.eE,~€,N,7; ,~L IUI$I-I.ll';lJ.Lnllf).L_,7iil~Li_
IN£. X,T , ,J 018 1 Fe ,71""!, ./,N,~ /<.E,Q, I~£' ",~ A,el,S,S,£;~~t~.L_L-LL_LuL.J_L_r\I

I

'I'

,

~1¥i~I~'*~ ¥I~,-)t,~ ~
*1

I

I

\

I

I

I

I

I

I

I

~,

.'

'I

I

,

,

,

,

,

,

,

,

,

,

I

,

,

,

I

,

,

,

,

,

I

,

I

l.-L--L..L_.J~l~I __.LJ ~ r -

,

,

,

,

,

,

,

,

,

I

,

,

,

,

,

,

,

I

11

1 J

,

/ ,~E,Q,

I

I

I

I

,

,

I

I

I

\

I

•

,

,

,

,

I

I

I

,

I

I

•

I

I

I

I

•

I

I

I

,

•

I

,

,

,

I

,

,

'

,

I

~

,

V~,~,"*,~.¥¥,*M¥.~~~,~,~~,~,~M;,\(,~,~1~,~.i¢r}~i¥I"X~~~--.dfr-

\/

•

I

,

I

I

I

,

.L .L

L ...L_L...J .._I_L.-l..L_!--

---1-L._.l._.'.. _.. 1.-1_.1_.L..l ---L_r-

.. L .. ..1__ L-1..... .J_

.LL.-L. ... L_.J ..L. i _

J

~L-L-L 71-11 S ,PORT I ON ,W 1 L L 18 E .E,N,T,£/?E.D, ,W,/-I.£/J. J~.L~_!.~, ... _!I,~~(2L __ !-¥, 1 I ,I S ,£,~£CU7£ D •• , I I I • , , , , ! , , , , • , , , , • , , '..L...L_L_L.L_L_.L_L.-l.__L.l ..L_+_
I

I

.L...~,;IQI
,

I

I

L,D,X,

,

'I

$ , T I X,

I,RtO,l,O
I

I

I'

~I

,

I

I

.1>, / LRrE,Q
~I

,

1 I'

L,D,X,
B,S,e ,
I

I

I

,

,

I

,

,

,

,

,

I

1

,

,

I

,

,

,

,6.N.7/<,'Yt .PtO" ,1J.7.

I

,

1

I

I_L....L'

I

,

,

,

,

•

,

,

,

I

'...l.-LL _L...L--.L... LJ.
1

I

I

-_.L-r-

'--L....L ...L - t -

.1.
J
, ,S,AL~E,
,'K,Rtlll L , J 1. J ..L.....L ...L..L_LL...L..l.-L-Ll....L_!-L 1 I,M T/<, , , , , , ISlE, To ,X,R,l, = ,AD,D,R, ,O,r. ,liN. ~~ JRO/2,~N.L-f_
L 1 l$.I,R.£.Q,. I 1 15'£17. J/v.~E,~eu,A~ IBgAJt{ii __ ,AJ!JI2~L'r_
L 1 *,-t"¥, I I I , , , /(>.[,S,E, T. .X/21, ' I 1 I I , • '_LL_L.Ll....--1-_L.J .....L..rI
/ I~£l;), , , , , , ~E, ~~~JJ. ,~O, ,C,A,L,Ll /JIt;iL_il(i!~._L_L_L_.L.... _
I

I

•

I

I

I

I

v.o! OLC\CI

£1.Q1U,
I

I

~'-I'¥I I I • I
I ,Rt OL1 10, + ,1,

I

~_L.L.L
1

I"

D,e,
S, T,X,

I

•

I

I

,

,

,

,

,

•

,

,

1

1

,

,

,

,

,

,

L-l.-L.J------LJ.-LL...L-Ll.-L._

, ,

11

I

I

11

J

,

11

I 1 J

I

,

I

I

1

•

,

,

•

,

I

I

I

,

•

,

,

,

,

I

,

,

,

,

,

,

,

1

,

,

_..1.J........L.J.._.'_._L_LJ. ___ L.l. ..L _
I

L_L-'---1--.l......J..-L_L...l_~_

,7/-1I,S, ,POR 7 I O.N, ,Wo/,eL , ,8'[1 ,[,N,71~,R,E,D, ,W/-I.£iJ, ,Tl/.£L.J.bMT.t;~~U"?2_
L--, R £. 'OIUI£IS 7 k £ Y. I I IS, ,P.R,£,S,S,E.D,. I 1 1 • 1 , 1 I I , , , , • , , , LLl......l.-Ll_....L.-r,I
'I'
,
I 1 ,
, ,
, I I , • , , , , I I .,
, , • , , '~...L..L...L..l---L...L....l.-.L.1_I_rI,N, ~ Rt
[IQ,U1
1.0,O,2,C , • , , I , • I I , I • , , I , • , , I , • ..L.L...L.L.L..L_L_L_L_L..~
~I

I

,

*, ,
-x: 1

,

"

¥I

I

I

*1

,

,

I"

.¥, , I '
I,N, T,Rt
, ,
I

I

I

,

1

i

I

I

I

I

,

I

I'

~,210

L

M,D,,><,
L
8, S C I
'I'

,8S,51

I M9,1,O
,

X, / ",0,

B,S" ,

I'

~I

'"

lD,C

LID,

"

, , "
I

I

I

,

,

I

,

I

I

I

,

,

I

~I ~I'¥I

,

,

I

,

.1

I

I I

I

I

I

,

, 1...'

I

,

I

1 ,

•

I

,

,

I

I

,

I

I

,

,

I

,

,

I

I

•

II

I

,

•

,

DC,

1

~ICI

I

D,e , I

[$.)14 cO t.,Q,U

l

[,N,D,

,

,

I

I

_.l....l~L.L_i_'.1.L..r-

,

!

I

C

1

,

.,

,

,

,

,

,

I

,

,

,

,

L-L.L.I

•

,

,

,

I

•

I

I

I

I

I

,

,

,

,

L...L'

I

I

' ..L - t -

,

I

I

I

s6

•

'_.1

I

!

I

I

'.L..L-L_L.l

I

,

•

I

•

I

,

,

•

1

I

1_.1

•

I

I

I

,C.Rte,A,T,c, ,~V,~N, A,D,D,R. , I _L_L-LL.J_l-1._~_
1.1V,9,2I O, I , , , J,qc,c, ,T.O, ,RiE;A.D, IC,O,N.S,OlIEI
1 1._.L._
/,3,A ,O,O, I , , , I~I~W" ,T,C,H,E,S, L l , I I I I , , , I , , , L.l. ..L..._
*I-'~J.....L...L' ,V,A,L'~~.j-,~E,A,~ .6R,O,k1L.C,O!!.J~j~L,~ ~.l.VfL__
I/.QO
1 I , , I , , , , '~._ ..L_L.J...._L-L-L_L_L..i_LJ._L. ..l.-L_L' , I , _L...._
O.

I

1. J

I

,£.M7,Rt VI .P,O,I I""T. ,,",~OM! " ~_L_LLJ_L._L 1_
/ ,AI. 9,1,0, • , , , l?,£,A,D, ,7."'£1 ,c,O,MS,O,L,~, ,Sl~ 1,T,C/-I.E'S,.-1-r1,""91 2 ,0, I , , , ,L,O, l~/I,A,~ "IA'Sl.._~.££t)/I.~E;~Jl?t , I , , I
$,/,4,2,0,\,Z,+" ,F.~J~~II, ,~Ol ,N!£,X,~ ,J,O,B, I~~ ,~~GI I ,
I,N,T,~) ,i. , , , ,J,N,C,~£,M.[,N,T, ,T/I,£, '~{'.LZ.tlK.}j.L ,A,D,D,RL.L._r1 AI. T.lR. .1
R. [ T,~ R/J, ,~o. J I LIS; , , I , , L-.L...'---L...L_..l-...JL..--L-~
,

~'_.l.-....L'I~,-+-+--,--,I'---'-'-+--+-+--II-I-_.L..--l'I_-,--I ....J,,---,-I---L...-I'_L-L.J.

1

I I I • , , ,

1TW/ ,S, IPOiR7 I O.N, IWJ ,L,L I ,8,£, ,£,N;L("R.£,D,1!.J1£/J, ,T/1.t, ,,;1J1T.E ,Kif!llP..:Lil2£O,U,£,ST KE.Y. ,/,5, ,P,~€,SIS,[,A I I , I I , I 1 I 1....LLL_LL.L....L_L_L_LLLJ ..L_i-

I

1

,

,

,

I

,

I

,

I

,

I

,

,

,

.i_L-L_'
I...J

I

•

I

,

I

I

I

I

I

I

I

•

Figure 6-4. INT REQ servicc subroutinc for core load using TYPEZ, WRTYZ, TYPEO, or WRTYO
Programming Tips and Techniques

6-47

FORTRAN Programmer Tips
Use of EQUAT

TIPS FOR FORTRAN PROGRAMMERS

The tips in this section will help you when:
• Referencing different data fIles by using the supervisor *EQUAT control record
• Using valid input data during program execution
• Controlling the console pJinter during program execution
• Entering data for arrays so as to provide efficient dumping of a DSF program
Tips for Use of the EQUAT'lControl Record

The supervisor *EQUAT function is used to substitute a subroutine for another called subroutine in core loads that are being built. Thus, a program does not have to be recompiled
or reassembled to reference different subroutines.
For example, suppose that your FORTRAN mainline program prints on the 1132 Printer,
and you want to have it print on the 1403 instead. Without an EQUAT control record, you
would have to change the *IOCS control record and recompile the program. With EQUAT,
you have only to specify on the EQUAT control record that PRNZ (the 1403 subroutine)
is to be SUbstituted for PRNTZ (the 1132 subroutine) when the core load is built. When
EQUAT is used, the core load builder compares each call in the program with the left-hand
name of each specified subroutine pair on the EQUAT control record. Each tinIe a match
is found, the core load builder substitutes the right-hand name of the EQUAT subroutine
pair for the name in the calling statement of the program. Note that the EQUAT control
record is;associated with the monitor JOB control record, which implies that all core loads
that are built for the job be built from the same substitution list.
The use ofEQUAT is not restricted to I/O substitutions. You might, for example, have
several versions of a subroutine, each stored under a different name. With EQUAT, any of
these subroutines can be used without recompiling or reassembling the calling programs.
You must remember that th,e calling sequence of any substitute pair must be identical
since the core load builder does no more than substitute one name for the other. Thus,
CARDZ cannot be substituted for PRNZ because the 80-column count associated with
CARDZ is incompatible with the 120-word count associated with PRNZ. The equatable
FORTRAN I/O subroutines are:

1132 Printer

1403 Printer

PRNTZ

PRNZ

2501 Card Reader

1442 Card Rlltader
Punch

CARDZ

-------------

6-48

1055 Punch
1134 Reader

1627 Plotter

Notes

------READZ

*VCHRI -- extended precision
WCHRI -- standard precision

Console
printer
keyboard

TYPEZ

Input onl"

TYPEZ

PAPTZ

*VCHRI,WCHRI

Output only

WRTYZ

PAPTZ

*VCHRI,WCHRI

Output only

FORTRAN Programmer Tips
i nval id sou rce characters·
paper tape data record format

The following lists the possible entries in a FORTRAN *IOCS control record and the subroutine each entry implies:
*IOCS entry

Subroutine called

CARD

CARDZ

2501 READER

READZ

1442 PUNCH

PNCHZ

TYPEWRITER

WRTYZ

KEYBOARD

TYPEZ

1132 PRINTER

PRNTZ

1403 PRINTER

PRNZ

PAPER TAPE

PAPTZ

PLOTTER

PLOTX

DISK

DISKZ

UDISK

DISKZ

The FORTRAN programmer should also remember that the name of a function subroutine
as stored in the system library must be used in an EQUAT control record; not the function
name that is coded in FORTRAN statements.
EQUAT can also be used to allow a FORTRAN program to overlap the operations of the
1132 Printer with the synchronous communication adapter (SCA). The operations of
these I/O devices cannot be overlapped unless the 1132 is serviced by PRNT2. EQUAT
can change PRNTZ (the subroutine used by FORTRAN I/O for 1132 printing) to the
name PRTZ2 (a special subroutine to interface between PRNTZ and PRNT2). 1132
printing is then performed by PRNT2 and can be overlapped with the SCA.
Invalid Characters in FORTRAN Source Cards
Any invalid FORTRAN character in a FORTRAN source card is converted to an ampersand, causing the compiler to print an error message. The error message that is printed
depends on the kind of statement in which the invalid character is found. The FORTRAN
character set is listed in Appendix C of the publication IBM 1130/1800 Basic FORTRAN
IV Language, GC26-371S.
FORTRAN Object Program Paper Tape Data Record Format
Data records of up to 80 EBCDIC characters in paper tape PTTC/8 code can be read or
written by FORTRAN object programs. Delete and newline codes are recognized. Delete
codes and case-shifts are not included in the 80 characters. When a newline code is read
before the 80th character, the record is terminated. If the 80th character is not a newline
code, the 81 st character read is assumed to be a newline code.

Programming Tips and Techniques

6-49

.------_.
FORTRAN Programmer Tips
keyboard input
console printer control

Keyboard Input of Data

RE~cords

During FORTRAN Program Execution

Data records of up to 80 characters can be read from the keyboard by a FORTRAN READ
statement. Data values must be right justified in their respective fields.
keyboard operation

If you want' to key in less than 80 characters, press EOF to stop transmittal. Also, pressing
ERASE FIELD or the backspace key (+-) allows you to reenter a record when you make a
mistake during data entry. If the keyboard appears to be locked, press REST KB. SeleGt

buffer status after
keyboard entry

The input buffer is filled with blanks before you enter a data record. Therefore, when you
press EOF before you have entered 80 charaCters, the rest of the buffer remains blank,
If more data is necessary to satisfy the list items in the DATA statement, the remaining
numeric fields (I, E, or F) are stored in core as zeros, and alphameric fields (A or H) are
stored as blanks. Processing is continuous; errors do not result from the previous condiition.

the correct case shift before entering data.

Note. Information about buffer status after pressing ERASE FIELD or the backspace key
(+-) is under "Functions of Console Operator Keys During Monitor System Control" and
"Entering Jobs from the Console Keyboard," respectively, in Chapter 7.
FORTRAN Program Control of the Console Printer
You can code your progratn to control spacing, tabulating, and shifting on the console
printer by assigning unique values for desired operations to variables. These variables must
be assigned as integers, and A-conversion must be used in the FORMAT statement for these
variables.
The operations that can be performed and the values that are assigned to them include:

Operation

Value

Backspace
Carrier return
Line feed
Shift to print black
Shift to print red
Space
Tabulate

5696
5440
9536
5184
13632
16448
1344

As an example of console printer control, assume that a variable, X, is printed in the existing black ribbon shift and that another variable, Y, is printed in red after a tabulation.
Following the printing ofY, the ribbon is shifted back to black. The following statements
perform these functions:

-

r----

1

5

3

10

1.5

20

25

30

I =13 44
J= 13 632
1<, 151 84
I =J
W12 IT E I( L ,3 )X t I .,J .VI, I<
If 0 IRM AT (~: .1[2' .6 .,2 All .,IF 1Z .6 ,A t)

35

40

50

45

-

-

-

6··50

r-

FORTRAN Programmer Tips
OAT A statement
// records read
I/O errors

FORTRAN logical unit 1, as specified in the WRITE statement, is the console printer. The
sequence of operations to be performed are:
• Print X
• Tabulate
• Shift to p rin t red
• Print Y
• Shift to print black
Each control variable counts as one character and must be included in the count of the
maximum line length.
Length of FORTRAN OAT A Statement

An error (DATA statement too long to compile, due to internal buffering) occurs if:
(G 1

+ G2 + ... + Gn) >355

where
N is the number of constants in this DATA statement.
Each G is a constant with the factor:

G = 1 + C + (K 1

+K2 + ... + Kv)

where
C is the length in words of this constant and V is the number of variables loaded with
this constant.

Each such variable has a factor of:
K = 1 for a nonsubscripted variable or K = 2 for a subscripted variable

/I Records Read During FORTRAN Program Execution
Any II~ record read by CARDZ, READZ, or PAPTZ during a FORTRAN program execution causes an immediate CALL EXIT. Only the II~ characters are recognized by CARDZ,
READZ, or PAPTZ. Any other data punched in this record is not available to programs in
the monitor system, and the record is not printed. After the IN record is read, the supervisor searches for the next valid monitor control record entered from the reader.
For offline listing purposes, however, this record can contain comments, such as II END
OF DATA.
FORTRAN I/O Errors

Ifinput/output errors are detected during execution, the program stops. The error is
indicated by a code displayed in the console ACCUMULATOR (see Appendix B for a list
of the codes and their causes).
When an output field is too small to contain a number, the field is filled with asterisks and
execution continues.
The 1/0 subroutines used by FORTRAN (PAPTZ, CARDZ, PRNTZ, WRTYZ, TYPEZ,
PNCHZ, READZ, PRNZ) wait on any 1/0 device error or device not in a ready condition.
Ready the device, and press PROGRAM START to continue.
Error detection in functional and arithmetic subroutines is possible by the use of source
program statements. Refer to "Machine and Program Indicator Tests" in the publication
IBM 1130/1800 Basic FORTRAN IV Language, GC26-3715.

Programming Tips and Techniques

6-51

---------------------------FORTRAN Programmer Tips
dumping DSF programs to cards
RPG object program considerations

Dumping FORTRAN DSF Programs to Cards

Arrays are always allocated backwards in core storage by the FORTRAN compiler. Because
of this basic principal of the compiler, DSF output may be somewhat inefficient when
dumped to cards if arrays are included in DATA statements. Such statements can cause
cards to be punched with only one data word each.
To circumvent this inconvenience, write every element of an array explicitly in a DATA
statement, starting with the element of the highest order.

RPG OBJECT PROGRAM CONSIDERATIONS

An RPG object program requires the special interrupt level subroutines (ILSs named with
an X, as ILSX4). You code any character in column 28 of an XEQ monitor control record
and in column 12 of a STORECI DUP control record to cause the special ILSs to be included in a core load. If the program is stored in core image (STORECI), the special ILSs
are stored with the program on disk.
The storing of programs in disk core image format on disk is not recommended (see
"Disadvantages of Storing a Program in DCI Format" in this chapter).

6-52

Chapter 7. Operating the 1130 Disk Monitor System

This chapter contains procedures that are used frequently during the operations of the
1130 Disk Monitor System. These procedures include:
• General procedures for readying the components of the 1130 for operation
• Procedures for performing a cold start of the monitor system
• General operating procedures that are used while the monitor system is in operation
The procedures for readying the 1130 components are performed when a device is to be
used and is not ready. The central processing unit must be the first device readied as the
console POWER switch, when turned on, supplies power to the entire 1130 computing
system. The procedures for the I/O devices need not be performed in the order presented;
however, if the disk drives are readied first, other devices can be readied while the disk
drives are reaching operating speed. Detailed procedures for changing forms, tapes, and cartridges are not included here; they are in the publication IBM 1130 Operating Procedures,
GA26-5717.
The functions of the cold start program and operating procedures for performing a cold
start from cards or from paper tape are described in detail.
The procedures used while the monitor system is in operation are:
• Loading control records, program statements, and data records
• Controlling the system with the PROGRAM STOP, PROGRAM START, INT REQ,
and IMM STOP function keys on the console
• Displaying and altering selected core storage locations
• Manually dumping core storage

Operating the 1130 Disk Monitor System

7-1

Readying Devices
1131 CPU

READYING THE 1131 CENTRAL PROCESSING UNIT (with an internal disk)

System response or Error indicator and
corrective action

Operator action

1.

Move the console POWER
switch to ON. Thls switch
supplies power to the en tire
system, and must be on before
any of the I/O devices are
readied.

2.

Insert a cartridge in the
single disk drive.

3.

Move the DISK switch on the
disk drive to ON. The disk drive
requires approximately 90 seconds to reach operating speed.

If the FORMS CHECK light comes on,
insert or adjust the paper in the console
printer. If the DISK UNLOCK light comes
on, it indicates that the DISK switch on the
disk drive is set to OFF. See step 3.

The FILE READY light comes on when
the disk drive reaches operating speed.

If any other indicator lights on the console
are on, press RESET.
Indicator lights

Function keys

aB

ON .........................;..:::

~~

m
:~·:.:·:·:·:·:·:·;·.·:·;·.·.jOFF

* : ':':':':':':':':':-:':':':':':':':':-: : * : : .:.:.:.:-:.:.:.:.:.:.:.:.:.:.:.:. ,: :
::

DISK

::

:::

FI LE

:::

~t.:.:.~:~.~.?.~. ~. . ;~ ~t.:.:.~:7.:~.~;Y.;.;.)~
PARITY
CHECK

~nternal

KEYBOAI~D

KEYBOAR

PROGRAM
START

~J
~

PROGRAM
STOP

E

~
~

*These indicators are blank on an 1131 CPU that does not contain an

CONSOLE~

POWER

~~j··························]
. . ·t
RESET ::::

:::

~~;.....-...........-..............•....~~;~

PROGRA~
LOAD

single disk drive.

READYING THE 1131 CENTRAL PROCESSING UNIT (without an internal disk)

Operator action
1.

2.

Move the console POWER
switch to ON. This switch
supplies power to the entire
system, and rhust be on before
any of the I/O devices are
readied.
Ready the 2311 Disk Storage
Drives as described under
·'Readying the 2311 Disk
Storage Drive" in this chapter.

System response or Error indicator and
corrective action
If the FORMS CHECK light comes on,
insert or adjust the paper in the console
printer.
If any other indicator lights on the
console are on, press RESET.

...J

Readying Devices
2310 Disk Drive
2311 Disk Drive

READYING THE 2310 DISK STORAGE DRIVE

Operator action

System response or Error indicator and
corrective action

1.

Be sure system power is turned
on.

2.

Insert the disk cartridges

3.

Move the START/STOP switch
to START.

4.

Be sure the ENABLE/DISABLE
switch on the 1133 Multiplex
Control Enclosure is in the' ENABLE
position.

The READY light on the 1133 is on.

5.

Move the START/STOP switch to
START position for the cartridges
being used. The drives require Approximately 90 seconds to reach
operating speed.

The indicators showing the drive numbers
come on when the disks reach operating speed.

6.

Move the ENABLE/DISABLE switch
on the disk storage drive to ENABLE.
START
STOP

«V
(d

If the CARTRIDGE UNLOCKED light comes
on, it indicates that the START/STOP switch
is set to STOP. See step 3.

bdd

CARTRIDGE
UNLOCKED

.......----

ENABLE
DISABLE

~

l::J

READYING THE 2311 DISK STORAGE DRIVE

System response or Error indicator and
corrective action

Operator action
1.

Be sure system power is
turned on.

2.

Be sure the ENABLE/DISABLE
switch on the 1133 Multiplex
Con trol Enclosure is in the
ENABLE position.

3.

Insert a disk pack in the 2311,
if necessary.

4.

Move the START/STOP switch
to the START position. The
disks require approximately
60 seconds to reach operating
speed.

The READY light on the 1133 is on.

The green indicator showing the drive
number comes on when the disks reach
operating speed.

Move the ENABLE/DISABLE
switch on the disk storage
drive to the ENABLE position.

~
1

SELECT
LOCK
~

ENABLE«\)
DISABLEtJ
' - - - - - - - - - ' '-----------'

START
STOP



tJ

~

Operating the 1130 Disk Monitor System

7-3

Readying Devices
1132 Printer
1403 Printer

READYING THE 1132 PRINTER

System response or Error indicator and corrective action

Operator action

1.

Move the printer MOTOR switch
toONe

The printer POWER ON light comes on.
If the printer FORMS CHECK light comes
on, insert or adjust the paper in the printer.

2.

Press CARRIAGE RESTORE.

3.

Press START.

r-J D
D D
D
D C] D

The READY light comes on.

~ ~.:j~
. '.~.'" .~ '. '.~ '. '. 'D.· .· .~ ·. ·. ·. ·. ·. ·.:~ .:~ ,.

PRINT
SCAN
CHECK

~~L::.:!.'."..".. ..

CARRIAGE
SPACE

ON ':':...:.......:........\~
~~: MOTOR :~:
:~::.:,:,:.:.:::::::::::::::OFF

I ndicator lights

CARRIAGE
STOP

I[.:~:~:~~,:::'~ G

(

Function keys

READYING THE 1403 PRINTER

System response or Error indicator and ,corrective action

Operator action

1.

Be sure system power is turned
on.

If any indicator lights on the printer other
than PRINT READY are on, correct the condition (see the publication IBM 1130 Operating Procedures, GA26-5717).

2.

Be sure the ENABLE/DISABLE
switch on the 1133 Multiplex
Control Enclosure is in the
ENABLE position.

The READY light on the 1133 is on.

3.

Press the CARRIAGE RESTORE
key on the printer.

4.

Press START.

The PRINT READY light comes on.

Function keys

Indicator lights

1[::c~:~~~::::]!·1

: READY

CARRIAGE
SPACE

rPRiNT----- P'R;Tl
CHECK:

I
I

I END OF
SINGLE
CYCLE

I
I

FORMS

FORMS
SYNC I
LC!:!,E.£.K_ _ _ _ _ ~E..£KJ

CARRIAGE
STOP

7-4

Readying Devices
1442 Card Read Punch
1442 Card Punch

READYING THE 1442 MODEL 6 AND 7 CARD READ PUNCH

Operator action

1.

Be sure system power is turned
on.

System response or Error indicator and corrective action
The 1442 POWER ON and HOPR indicator
lights are on.
lf the CHIP BOX light is on, empty the chip
box.
If any indicator lights other than BOPR are
on, correct the condition (see Appendix B).

2.

Press the NPRO key.

3.

Place the cards to be processed
in the hopper, face down, 9edge first.

4.

Press the START key.

The HOPR light goes off.

The READY light comes on.

fHOPR -FEED--READl
I READ
I STA
I PUNCH
I STA

CLU

REG I
PUNCH I
OVERI
RUN I

I ndicator lights

_ _ _ _ _ _ _ -II
IL..:..
TRANS

Function keys

READYING THE 1442 MODEL 5 CARD PUNCH

Operator action
Follow the procedure for readying
Models 6 and 7 with one exception;
use blank cards in Step 3 rather
than cards ready for processing.

Operating the 1130 Disk Monitor System

7-5

Readying Devices
2501 Card Reader
1·134 PaDer Tape Reader

READYING THE 2501 CARD READER

System response or Error indicator and corrective action

Operator action

1.

Be sure system power is turned
on.

The card reader POWER ON and FEED
CHECK lights are on.
If any other indicators are on, correct the condition (see Appendix B).

2.

Press NPRO.

The FEED CHECK light goes off.

3.

Place cards to be processed
in the hopper, face d.own, 9edge first.

4.

Press START.

The READY light comes on.
READ]
CHECK .

r;~:;~"":1 r····F·EE·~·w·1
.~ f.:

:. ~. j~

...................•..•.........•.......•..•.........

CHECK

jj

Indicator

lights

':';';';0;0;0;';';';';';0;':';0;';';';.:'

Function

keys

READYING THE 1134 PAPER TAPE READER

Operator action

/

1.

Be sure system power is turned
on.

2.

Insert a tape to be processed
in the paper tape reader; position under the read starwheels
any of the delete codes that
follow the program ID in the
tape leader.

e.
.'.........
.......
.
.••••••••
••••••••••
'

Delete)
• • • • • • • • • • ....- Feed holes
codes ~ •••••••••

••••••••••
••••••••••

<
7-6

Tape movement

Readying Devices
1055 Paper Tape Punch

READYING THE 1055 PAPER TAPE PUNCH

Operator action
1.

Be sure system power is turned
on.

2.

Insert a blank tape in the paper
tape punch ..

3.

Press the DELETE key on the
punch and hold down while performing Step 4. Do not release
the DELETE key.

4.

With the DELETE key held down,
press the FEED key and hold
down to punch several inches
of delete codes.

5.

Release the FEED key before
the DELETE key.

Note: The tape tension
lever must be down in
order to ready the 1055.

Operating the 1130 Disk Monitor System

7-7

Readying Devices

1627 Plotter

READYING THE 1627 PLOTTER

System response or Error indicator and c:orrective action

Operntor action
1.

Be sure system power is
turned on.

2.

Turn the 1627 POWER
switch to the ON position.

The POWER ON light comes on.

If the pen is not in the up position, mov(~ the
PEN switch first to DOWN, then to UP.
If a single sheet of chart paper is used, be
sure the CHART switch is in the OFF position.
3.

With the pen in the UP position, use the 2 DRUM (X
axis) and the 2 CARRIAGE
(Y axis) controls to position
the pen for the first plot.

o

o

,I
CARRIAGE

•

SINGLE
STEP
CARRIAGE

•

0.-

0

~

7-8

FAST
RUN

I

\-

I
I

OFF
POWER
ON

V

'\

DRUM
SINGLE
STEP
DRUM
FAST
RUN
UP
PEN
DOWN

to
t()

)(:)

CHART
ON OFF
-'"' "

~

Readying Devices
1231 OMPR

READYING THE 1231 OPTICAL MARK PAGE READER

System response or Error indicator and corrective action

Operator action

The 1231 POWER ON light is on.

1.

Be sure system power is
turned on.

2.

Place the data sheets in
the hopper with the
side to be read facing
up and the top edge
positioned to feed
first.

3.

Move the FEED MODE
switch to ON-DEMAND.

4.

Press PROGRAM LOAD.

The PROGRAM LOAD light comes on.

S.

Press RESET.

The hopper is raised to the ready position. The
RESET light goes off and the START light
comes on.

6.

Press START.

The PROGRAM LOAD light goes off.

7.

Press START again.

The START light goes off. All indicator
lights should be off, with one exception: the
SYSTEM STOP light can be on.

TIMING MARK CHECK

FEED t@\-----004

Perform the "Card System
Preload Procedure" in this
chapter.

~-

Ready a cartridge for initializlItion

1. Place a disk cartridge or
pack in a disk drive.

2. Ready the disk drive (see
Chapter 7 for information
about readying disk drives_)._ _.J

Yes

Initialize the cartridge ] ]
using the DCI P program
(see Chapter 9).

Note: If your system
has 2311 Disk Storage
Drives, be sure all disks
in a disk pack are initialized.

Ready the 1132 Printer

1132

1. Move the printer MOTOR
switch to ON.
2. Press CARRIAGE RESTORE.
3. Press START.

1403

Figure 8-3 (Part 1 of 3). Card

8-16

sy~tem

initial load procedure

]

Card System I nitial Load
operating procedure

Ready the 1403 Printer
1. Be sure the ENABLEI
DISABLE switch on the 1133
Multiplex Control Enclosure
is in the ENABLE position.
2. Press CARRIAGE RESTORE
on the pri nter .
3. Press START on the pri nter.

Ready the IBM system deck
Place the user-punched control
cards in the I BM system deck
where indicated in Figure 8-2.

Ready the 2501 Card Reader
1. Press NPRO.

2501

2. Place the first of the IBM system
cards in the hopper, face down,
9-edge first.
3. Press START (if both a 2501
and a 1442, Model 6 or 7,
are present, make sure the
1442 is not ready by pressing STOP on the 1442),

1442, Model 6 or 7

Ready the 1442, Model 6 or 7
1. Press NPRO.
2. Place the first ofthe IBM
system cards in the hopper,
face down, 9-edge first.
3. Press START.

Figure 8-3 (Part 2 of 3). Card system initial load procedure

Monitor System Initial Load and System Reload

8-17

Card System Initial Load
operating procedure

Start the reading of the IBM
system deck
1. Set the console entry switches
12 through 15 to ind icate the
physical drive number of the
drive that contains the
initialized cartridge (switGhes
o through 11 must be off).

Drive
Drive
Drive
*Drive
* Drive
Drive
Drive
Drive
III Drive
'" Drive
Drive

0 - all off
1 - switch 15 on
2 - switch 14 on
3 - switches 14 and 15 on
4 - switch 13 on
5 - switches 13 and 15 on
6 - switches 13and 14 on
7 - swi tches 13, 14, and 15 on
8 - switch 12 on
9 - switches 12 and 15 on
10 - switches 12 and 14 on

*Not used on a 2311 Disk Storage Drive,
Model 12
2. Turn the console mode switch
to RUN.
3. Press I MM STOP on the (:onsole.
4. Press RESET on the console.
5. Press PROGRAM LOAD on
the console .

.------_ _..,
..

I
I

Reading of the I BM system deck
begins.

L _ _ _ _

I

I
_ _ _ _ .J

Finish procedure

.
I

I
I

Continue placing IBM system
cards in the reader hopper
until all of the cards have bE~en
placed in the hopper.

If the system halts (halt codes displayed
in the ACCUMULATOR on the console
display panel), refer to Appendix B. If
the system prints a message on the console printer, refer to Appendix A .

---- ------,
The system prints a message on
the principal printer when loading
of the monitor system is complete.

L____

I

I
I

_ _____ ..1

Perform the "Cold s t a r ] J
Procedure" in Chapter 7
to make the monitor
system operational.

Figure 8-3 (Part 3 of 3). Card system initial load procedure
8-18

Card System Reload
operating procedure

CARD SYSTEM RELOAD OPERATING PROCEDURE

The materials that you need to perform a card system reload procedure are:
• A system cartridge

• An IBM-supplied cold start card and blank cards.(2 are enough)
• IBM-supplied system cards
•

Load mode and REQ (and CORE, if used) cards that you punched. An R must he
punched in column 8 of the load mode card

The reload cards that are being used in the system reload must be arranged in the order
shown in Figure 8·4.
system
reconfiguration

Reconfiguration is done each time a reload procedure is performed and is necessary when
a system cartridge is copied from a system with a different configuration. If reconfiguration is all that is being done by a reload operation, place the type 81 control record
immediately after the PHID control records.

phase and
program
revision or
addition

Be sure the phase identification (PHID) control records reflect the phase ID limits of the
system programs being added or in which phases are being revised or added. The programs
or phases being revised or added by the reload procedure must be placed in ascending
phase ID sequence immediately behind the IBM-supplied PHID control records.
The record immediately following the Jast phase being loaded must be an end-of-program
card (see "End-of-Program (EOP) Card" in Appendix I). In this case, the EOP card can
have words 1, 2, and 4 through 54 blank. The message END OF RELOAD is printed on
the console printer when a system reload is complete.

Monitor System Initial Load and System Reload

8-19

Card System Reload
operating procedure

System configuration deck

~--------===:==-----

System loader-part 1
columns 73-75 10: DP1
(with 7 card core image
loader 10: DCL)

Figure 8-4. Card system reload ,,;ards

The reload function can link to MODIF if a / / XEQ MODIF control record follows directly
after the type 81 control card. This function can be performed together with any combination of the reload functions. The END OF RELOAD message is not printed, but the
/ / XEQ MODIF control record is printed on the principal printer. You perform a card
system reload procedure as shown in Figure 8-5.

8-20

Card System Reload
operating procedure
Turn on system power
Move the console POWE R
switch to ON.

Cartridge

Perform the "Card
System Preload
Procedure" in this
chapter.

Cards

Ready the system cartridge to

be used
1. Place a system cartridge in a
disk drive.
2. Ready the disk drive (see
Chapter 7 for information
about readying disk drives).

Ready the 1132 Printer

1132

1. Move the printer MOTOR
switch to ON.
2. Press CARRIAGE RESTORE.
3. Press START.

Ready the 1403 Printer
1. Be sure the ENABLEI
DISABLE switch on the 1133
Multiplex Control Enclosure
is in the ENABLE position.
2. Press CARRIAGE RESTORE
on the printer.
3. Press START on the printer.

Figure 8-5 (Part 1 of 4). Card system reload procedure

Monitor System Initial Load and System Reload

8-21

Card System Reload
operatin!) procedure

Ready the IBM system dock
Place the load mode and
REO (and CORE, if used)
cards that you punched ii.,
the system deck where
indicated in Figure 8-4.

Figure 8-5 (Part 2 of 4). Card system reload procedure

8-22

Card System Reload
operating procedure

Ready the 2501 Card Rea.der
1. Press NPRO.

2501

2. Place the first of the reload
deck in the hopper, face
down, 9-edge first.

3. Press START (if both a
2501 and a 1442, Model

6 or 7, are present, make
Ready the 1442, Model 6

01:

sure the 1442 is not ready
by pressing STOP on the
1442).

7

1. Press NPRO.
2. Place the first of the reload
deck in the hopper, face
down, 9-edge first.

3. Press START.

Start the reading of the IBM
system deck
Drive 0 - all off
Drive 1 - switch 15 on
Drive 2 - switch 14 on
* Drive 3 - switches 14 and 15 on
*Drive 4 - switch 13 on
Drive 5 - switches 13 and 1 ~ on
Drive 6 - switches 13 and 14 on
Drive 7 - switches 13, 14 and 15 on
*Drive 8 - switch 12 on
* Drive 9 - switches 12 and 15 on
Drive 10 - switches 12 and 14 on

1. Set the console entry switches
12 through 15 to i nd icate the
physical drive number of the
drive that contains the system
cartridge (switches 0 through
11 must be off).

*Not used on a 2311 Disk Storage
Drive, Model 12
2. Turn the console mode
switch to RUN.
3. Press I MM STOP on the
console.
4. Press RESET on the console.
5. Press PROGRAM LOAD on
the console.

Figure 8-5 (Part 3 of 4). Card system reload procedure

Monitor System Initial Load and System Reload

8-23

Card System Beload
operating procedure

r
I

----...,
Reading of the I BM system deck
begins.

I

1
I
IL _ _ _ _ _ _ _ _ _ _ ..1I

Finish procedure
Continue placing I BM s'~stem
cards in the reader hopper until
all of the cards have been placed
in the hopper.

r - - I

I

_10

-

--

If the system halts (halt codes displayed
in the ACCUMULATOR on the console
display panel), refer to Appendix B. If
the system prints a message on the console printer other than END OF RELOA.D,
see Appendix A.

---I

The system prints END OF
RE LOAD on the console
printer when the reload is
complete.

I
I

I __________ J
L

Perform the "Cold Start
Procedure" in Chapter 7
to make the monitor
system operational again.

Figure 8-5 (Part 4 of 4). Card

8-24

sy~tem

reload procedure

Card System Preload
operating procedure

CARD SYSTEM PRELOAD OPERATING PROCEDURE

The materials that you need to perform a card system preload procedure are:
• A preload (UCART) cartridge
• An IBM-supplied cold start card
•

Blank cards; the dump of the monitor system requires approximately 5400 cards

The dump is accomplished by loading the Monitor II cold start card supplied with the
cartridge from IBM. The forl!lat of the preload cartridge is such that the same cold start
card that is used to make the monitor system operational is used to call the disk-to-card
dump program (UCART).
You perform a card system preload procedure as shown in Figure 8-6.

Monitor System Initial Load and System Reload

8-25

Card System Preload
operati ng procedure

Ready the preload cartridge

1. Place the preload cartridge
in a disk drive.
2. Ready the disk drive (see
Chapter 7 for information
about readying disk drive'';).

3. Set the console entry switches

Drive
*Drive
Drive
Drive
Drive
*Drive

12 through 15 to indicate' the
physical drive number of the
drive that contains the pfiaload cartridge (switches 0
through 11 must be off).

0 - all off
1 - switch 15 on
2
3
4
6

-

switch 14 on
switches 14 and 15 on
switch 13 on
switches 13 and 14 on

*If your preload cartridge is on a
1316 Disk Pack, the DM2 system
is on either physical drive 1 or 6.
Ready the 2501

1. Press NPRO.
2. Place the cold start card in the
2501

hopper, face down, 9-edge
first.

3. Press START (if both a 2501
and a 1442, Model 6 or 7,

Ready the 1442, Model 6 or 7

1. Press NPRO.

2. Place the cold start card
followed by blank cards in
the hopper, face down,
9-edge first.

3. Press START.

Start cold start

1. Turn the console mode switch
to RUN.
2. Press IMM STOP on the
console.
3. Press RESET on the cons,ole.
4 .. Press PROGRAM LOAD ,on
the console.

Figure 8-6 (Part 1 of 2). Card system preload procedure
8-26

are present, make sure the
1442 is not ready by pressing
STOP on the 1442).

Card System Preload
operating procedure

Ready the 1442 for punchin,
~

1. Press NPRO.

2. Place blank cards in the

Yes

hopper, face down, 9-edge
first.

3. Press START on the 1442.
No

4. Press PROGRAM START on
the console.

r---I

-----,

Punching of the monitor system

I begins.
IL _ _ _ _

I

I

____ ...1

Finish the procedure
1. Continue adding cards to the
card punch hopper until the
system halts with hexadecimal
/03CC displayed in the
ACCUMULATOR on the
console display panel.

If the system halts (halt codes displayed in
the ACCUMULATOR on the console display
panel) refer to Appendix B.

2. Remove the 9s cards (a 9
punched in columns 1 through
80) that separate the object
decks punched by this
procedure. The stand-alone
utility programs, sample programs, and the DISKN
subroutine for the 2311 Disk
Storage Drives are the last
decks punched during an
initial load; remove these.

If a 1442, Model 5, punch is being used,
the first card through the punch is blank.
Throw this card away.

Reload

Return to "Card System
Reload Procedure" in
this chapter.

I nitial load

Return to "Card System
I nitial Load Procedure"
in this chapter.

Figure 8-6 (Part 2 of 2). Card system preload procedure
Monitor System Initial Load and System Reload

8-27

Paper Tape Initial Load
operating procedure

PAPER TAPE SYSTEM INITIAL LOAD OPERATING PROCEDURE

The materials that you need to perform a paper tape system initial load procedure are:

• An initialized disk cartridge
• DCIP (Disk Cartridge Inhialization Program) tape, BP16
• IBM-supplied system tapes, BPOI-BP14
• Load mode control record tape and system configuration record tape that you punched

If the assembler or the FORTRAN compiler is not being loaded, the corresponding tapl~s
(BPOS or BP07) can be omitted; however, if they are not loaded, they cannot be loaded
during a system reload procedure. The assembler and the FORTRAN compiler can be
loa~ed during an initial load procedure only.
Load only those system library tapes (BP09 through BP14) that are required for your
system. Tapes BPOI-BP14 that are being used in the initial load must be arranged in the
order shown in Figure 8-7.
Tape BPIS is the cold start record that is used to make the monitor system operational
after the initial load is complete. Tapes BP16-BP20 are stand-alone utilities and are not
loaded as part of the monitor system. However, you use BPI7 (PTUTL) to punch the
load mode and system configuration tapes that are used during initial load and BPI6
(OCIP) to initialize the disk cartridge during initial load. Tapes BP21 and BP22 are sample
programs that you can execute under monitor system control after the initial load is
complete (see "Entering Jobs From the Paper Tape Reader" in Chapter 7).
You perform a paper tape system initial load procedure a shown in Figure 8-8.

8-28

Paper Tape Initial Load
operating procedure

BP22
BP21

Console Printer
Core Dump Program
1132/1403 Printer
Core Dump Program

Stand-alone Util ities

Paper Tape Reproducing Program
PTUTL Paper Tape
Utility Program
Cold Start Paper Tape Record---......

DCIP Disk Cartridge
Initialization Program

BP15
BP14

Communication subroutines

BP13

Plotter subroutines

BP12
BP11

Common LlBFs and CALLs

BP10

Extended precision LlBFs and CALLs
Standard LlBFs and CALLs
End of system tapes control
record (Type 81 record)

Supervisor, core load builder, system I/O
subroutines, core image loader, DUP part 2

Disk Utility Program
Phase 10 (PHID) control record
System configuration record you punched
System loader, part 2, with resident
monitor and cold start
Load mode control record you punched

Figure 8-7. Paper tape system load tapes

Monitor System Initial Load and System Reload

8-29

Paper Tape Initial Load
operati ng procedure
Turn on system power - - ]
Move the POWE R switch on the
console to ON.

~------------r---Ready a cartridge for initiahzation
1. Place a cartridge in the single
disk drive (the cartridge can
be placed on any drive on the
system).

2. Move the DISK switch Cln the
disk drive to ON. The drive
requires approximately 90
seconds to reach operati.ng
speed (see Chapter 7 for
readying the 2310 Disk
Storage Drive).

Ves

Initialize the cartridgej]:
using the DCIP program
(see Chapter 9),

Ready the 1132 Printer

1132

1. Move the printer MOTOR switch
toON.
2. Press CARRIAGE RESTORE .
3. Press START.

Ready the 1403 Printer
1. Be sure the ENABLE/
DISAB LE switch on the 1133
Multiplex Control EnGlosure
is in the ENABLE: pm:ition.
2. Press CARRIAGE: RESTORE
on the printer.
3. Press START on the printer.

Figure 8-8 (Part 1 of 3). Paper tape system initial load procedure
8-30

Paper Tape Initial Load
operati ng procedure

Ready the IBM system tapes
Place the user-punched control
tapes in the I BM system tapes
where indicated in Figure 8-7.

Ready the paper tape reader
1. Insert BP01, system loader,
Part 1, in the paper tape
reader.

When loading tapes, position under the
read starwheels any of the delete codes
that follow the program ID in the tape
leader.

Start the reading of the Monitor
System
1. Set the console entry switches
12 through 15 to indicate the
physical drive number of the
drive that contains the
initialized cartridge (switches
o through 11 must be off).

Drive 0 Drive 1 Drive 2 Drive 3 Drive 4 -

all off
switch 15 on
switch 14 on
switches 14 and 15 on
switch 13 on

2. Turn the console mode
switch to RUN.
3. Press IMM STOP on the
console.
4. Press RESET on the console.
5. Press PROGRAM LOAD on
the console.

The core image loader is read into core
storage from BP01, and the system waits
with 1006C displayed in the ACCUMULATOR.

6. Press PROGRAM START to
finish the reading of Part 1 of
the system loader.

When reading of BP01 is complete, the
system waits with 100C9 displayed in
the ACCUMULATOR.

7. Press PROGRAM START

The system waits again with 13000
displayed in the ACCUMULATOR.

again.

8. Place the user-punched load
mode control record tape in
the reader.

9. Press PROGRAM START.

The system waits with 13000 in the
ACCUMULATOR when reading of
the tape is complete.

Figure 8-8 (Part 2 of 3). Paper tape system initia110ad procedure
Monitor System Initial Load and System Reload

8-31

Paper Tape Initial Load
operating procedure

A-;-J
Continue the reading of the
Monitor System
10. Insert BP02, sy!)tem loader,
Part 2, in the paper tape
reader.
11. Press PROGRAM START.

The system waits with /3000 displayed
in the ACCUMULATOR when reading
of BP02 is complete.

12. Insert the user-punched
system configuration tape
in the reader.
13. Press PROGRAM START.

The system waits with /3000 displa~led
in the ACCUMULATOR when reading
of the user-punched tape is completn.

Load tapes BP03 th1rough BP14
1. Insert the next higher
numbered tape in the paper
tape reader.
2. Press PROGRAM START.

No

The system waits with /3000 displayed
in the ACCUMULATOR when readil'1g
of each tape is complete.

was>

last: tapl;!
BP147

Yes

Perform the "Cold Start
Procedure" in Chapter 7
to make the monitor
system operational.

Figure 8-8 (Part 3 of 3). Paper tape system initial load procedure

8-32

Paper Tape System Reload
operating procedure

PAPER TAPE SYSTEM RELOAD OPERATING PROCEDURE

The materials that you need to perform a paper tape system reload procedure are"
• A system cartridge
• Cold start paper tape record, BP15
• System tapes
•

Load mode control record tape and system configuration record tape that you punched

The paper tapes to be used in the reload must be arranged in the order shown in Figure 8-9.
The tapes for the system programs and/or phases that are being added or expanded must
be arranged in ascending tape number order. Also, all programs being loaded must have
phase ID numbers within the limits of the IDs punched in the PHID tape, BP03.

Note. If the assembler and/or FORTRAN compiler have been deleted or were n01 loaded
during an initial load, they cannot be loaded during a system reload procedure. An initial
load must be performed to load these 2 programs onto a cartridge.
You perform a paper tape system reload procedure as shown in Figure 8-10.

BP08
End-of-system tapes
......--control record (type 81 )
Revised programs
or program phases
Phase 10 (PHIO)
"'--control record
System configuration records
....--that you punched
System loader, part 2, with
......--resident monitor and cold start
......--Load mode control record that you punched
BP01
......--System loader, part 1
BP15
....--Cold start paper tape record

Figure 8-9. Paper tape system reload tapes

Monitor System Initial Load and System Reload

8-33

Paper Tape System Reload
operating procedure
Turn on system p o w e r - - J
Move the POWER switch on
the console to ON.

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

Ready the system cartridgo to
be used
1. Place a system cartridge in
the single disk drive (the
cartridge can be placed on
any drive on the system).
2. Move the DISK switch on
the disk drive to ON. The
drive requires approximately
90 seconds to reach op\'3rating
speed (see Chapter 7 fo,r
readying the 2310 Disk
Storage Drive).

Ready the 1132 Printer
1132

1. Move the printer MOTOR
switch to ON.

2. Press CARRIAGE RESTORE.
1403

Ready the 1403 Printer
1. BesuretheENABLEI
OISAB LE switch on the 1133
Multiplex Control Enc~osure
is in the ENABLE position.
2. Press CARRIAGE RESTORE
on the pri nter .
3. Press START on the printer.

Figure 8-10 (Part 1 of 4). Paper tape system reload procedure
8-34

3. Press START.

Paper Tape System Reload
operating procedure

Perform a cold start
1. I nsert tape BP15, cold start
paper tape record, in the
paper tape reader.

2. Set the console entry switches
12 through 15 to indicate the
physical drive number of the
drive that contains the system
cartridge (switches 0 through
11 must be off).

A cold start is recommended prior to a
reload operation in order to restore certain
parameters in DCOM on the system
cartridge.
Drive
Drive
Drive
Drive
Drive

0
1
2
3
4

-

all off
switch 15 on
switch 14 on
switches 14 and 15 on
switch 13 on

3. Turn the console mode switch
to RUN.

4. Press I MM STOP on the
console.
5. Press RESET on the console.

6. Press PROGRAM LOAD on
the console.

The system waits with /3000 in the
ACCUMULATOR when reading of
the cold start record is complete.

Ready the IBM system tapes
Place the load mode and system
configuration control record tapes
that you punched between the
IBM reload tapes where indicated
in Figure 8·9.

Figure 8-10 (Part 2 of 4). Paper tape system reload procedure
Monitor System Initial Load and System Reload

8·35

Paper Tape Svstem Reload
operating procedure

Start the reading of the rel,oad
tapes
1. Insert tape BP01, system
loader, Part 1, in the paper
tape reader.
2. Press PROGRAM STAnT on
the console.

The core image loader is read into corn
storage from BP01, and the system waits
with 100SC displayed in the ACCUMULATOR.

3. Press PROGRAM STAFtT
again to finish the reading
of Part 1 of the system
loader.

When reading of BP01 is complete, th4!
system waits with 100C9 displayed in
the ACCUMULATOR.

4. Press PROGRAM STAFlT
again.

The system waits again with 13000
displayed in the ACCUMULATOR.

5. Place the user-punched load
mode control record tape in
the reader.
6. Press PROGRAM STAHT.

The system waits with 13000 in the
ACCUMULATOR when reading of
the tape is complete.

7. Insert tape BP02, system
loader, Part 2, in the paper
tape reader.
8. Press PROGRAM STABT.

The system waits with 13000 in the
ACCUMULATOR when reading of
BP02 is complete.

Configure system
1. Insert the user-punched
system configuration tape
in the reader.
2. Press PROGRAM STAFtT.

Figure 8-10 (Part 3 of 4). Paper tape system reload procedure
8-36

The system waits with 13000 in the
ACCUMULATOR when reading of
the system configuration tape is
complete.

Paper Tape System Reload
operating procedure

Load tapes BP03, revised
programs or phases, and BP08
1. Insert the next tape.
The system waits with 13000 in the
ACCUMULATOR when reading of
each tape is complete.

2. Press PROGRAM START.

No

Yes

Perform the "Cold Start
Procedure" in Chapter 7
to make the mon itor
system operational.

Figure 8-10 (Part 4 of 4). Paper tape system reload procedure

Monitor System Initial Load and System Reload

8-37

8-38

Stand-alone Utilities
console printer core dump

Chapter 9. Stand-alone Utility Programs

The stand-alone utility programs are each self-loading and complete with subroutines.
These programs are separate from the monitor system library and enable you to perform
operations without monitor system control. The stand-alone utility programs are:
• Console Printer Core Dump
• Printer Core Dump
•

Disk Cartridge Initialization Program (DCIP)

• Paper Tape Reproducing
• Paper Tape Utility (PTUTL)
The first 3 of these are available in cards and paper tapes; the last 2 on paper tape only.
This chapter:
1.
2.

Describes the general functions of each of the stand-alone utility programs.
Presents sample operating procedures for using these programs.

You may use these operating procedures as they are presented, or you may modify them
to meet the needs of your computing system. For those who are already familiar with
similar procedures, the headings in each block can be used as reminders as you perform
the procedure. For those who need more information, detailed steps for performing these
procedures are provided. Not all steps of each procedure need to be done every time the
procedure is used; do only those steps that are necessary.
"Appendix B lists the hal,t codes that are displayed in the ACCUMULATOR on the console
display panel if errors occur during these procedures.

CONSOLE PRINTER CORE DUMP

Selected portions of core storage are printed on the console printer when you use the
Console Printer Core Dump Program.
dump format

Each core location is dumped as a 4-digit hexadecimal word with a space separating each
word. The first word dumped is from the starting address that you specify through the
console entry switches.
The materials that you need to use the Stand-alone Console Printer Core Dump Program
are:
• Console Printer Core Dump Program card

-or• Console Printer Core Dump Program paper tape, BP20
Figure 9-1 is the operating procedure for the stand-alone Console Printer Core Dump
Program.

Stand-alone Utility Programs

9-1

Stand-alone Utilities
console printer core dump

Ready the console
1. Press IMM STOP.
2. Press RESET.
3. Turn the console mode
switch to RUN.
Set the number of print positions to a
multiple of 5 so each line will be printed
in the same format.

4. Set the margins on the
console printer.

5. Set the address (in binary)
of the starting core location
in the console entry switches.

Ready the paper tape reader

Tape

1. Insert tape BP20, console
printer core dump, in the
paper tape reader.
2. Position under the read starwheels one of the delete codes
beyond the program 10.

Card

Ready the 2501 card reader
1. Press NPRO.

2501

Ready the 1442, Model 6 or 7

2. Place the console printer core
dump program card in the
hopper, face down, 9-edge
first.
3. Press START (if both a 2501
and a 1442, Model 6 or 7, are
present, make sure the 1442
is not ready by pressing STOP
on the 1442).

1. Press NPRO.
2. Place the console printer core
dump program card in the
hopper, face down, 9-eclge
first.
3. Press START.

Figure 9-1 (Part 1 of 2).
9-2

Consoll~

printer core dump operating procedure

Stand-alone Utilities
console printer core dump

Start the dump program
Press PROG RAM LOAD on the
console keyboard.

Temporarily interrupt the dump
Yes

2. Press PROGRAM START on
the console keyboard to
continue

No

r---I
I

1. Press I MM STOP on the
console keyboard.

----,

The dump continues until
complete.

I

I

L _____ ~_-----1

Perform a "Cold Start
Procedure" to continue
monitor system operations (see Chapter 7).

Figure 9-1 (Part 2 of 2). Console prin ter core dump operating procedure

Stand-alone Utility Programs

9-3

Stand-alone Utilities
Printer Core Dump

PRINTER CORE DUMP PROGRAM

This program dumps core storage (in hexadecimal) beginning at location $ZEND on
either the 1403 Printer or the 1132 Printer. The printer selected is the one that is ready;
when both are ready, the 1403 is selected.
dump format

Each line begins with a 4-digit hexadecimal address that is followed by sixteen 4-digit
hexadecimal words. A space separates the address and each word in the printed line. An
additional space is inserted between each group of 4 words.
To decrease dump time, the program does not print consecutive duplicate lines. Before
printing a line, the program compares the next 16 words of core with those just primed.
If they are identical, the program goes on to the next 16 words of core. The program continues comparing lines until the first line not identical to the last line printed is found. The
printer then spaces a line and the 16 words of the unidenticalline are printed. The address
printed at the beginning of this line is that of the first word of the unidenticalline.
The materials that you need to use the Stand-alone Printer Core Dump Program are:
• Printer Core Dump Program card deck, SDMP punched in column 73 through 76

-or• Printer Core Dump Program paper tape, BP19
Figure 9·2 is the operating procedure for the stand-alone Printer Core Dump Progranl.

9-4

Stand-alone Utilities
printer core dump

Ready the console
1. Press IMM STOP.
2. Press RESET.
3. Turn the console mode
switch to RUN.

Ready the printer
1. Press CARRIAGE RESTORE.
2. Press START.

Ready the paper tape reader

Tape

Cards

1. Insert tape BP19, printer core
dump program, in the paper
tape reader.
2. Position under the read starwheels one of the delete codes
beyond the program 10.

Figure 9-2 (Part 1 of 3). Printer Core Dump Program operating procedure

Stand-alone Utility Programs

9-5

Stand-alone Utilities
Printer Core Dump

Ready the 2501 card reader
1. Press NPRO.

2501

1442

2. Place the printer core dump
program card deck in the
hopper, face down, 9-edge
first.
3. Press START (if both a 2501
and a 1442, Model 6 or 7, are
present, make sure the 1442 is
not ready by pressing STOP
on the 1442).

Ready the 1442, Model 6011' 7
1. Press NPRO.
2. Place the printer core dump
program card deck in the
hopper, face down, 9-edge
first.
3. Press START.

Start the dump pr09r a : - . ]
Press PROGRAM LOAD cln
the console keyboard.

Figure 9-2 (Part 2 of 3). Printer Core Dump Program operating procedure

9-6

Stand-alone Utilities
printer core dump

1132

Temporarily interrupt the dump
(cannot be done when an 1132
printer is used)
Yes

2. Press PROGRAM START on
the console to continue.

No

r

I

I
L

1. Press I MM STOP on the
console keyboard.

--,
The dump continues until
complete.

I

_ _ _ _ .- _ _ _ ..JI

Perform a "Cold Start
Procedure" to continue
monitor system operations
(see Chapter 7).

. Figure 9-2 (Part 3 of 3). Printer Core Dump Program operating procedure

Stand-alone Utility Programs

9-7

Stand-alone Utilities

DCIP

DISK CARTRIDGE INITIALIZATION PROGRAM (DCII?)

The Disk Cartridge lnitialization Program (DCIP) is composed of:
• A disk initialization subroutine
• A disk copy subroutine
• A disk dump subroutine
•

A disk patch subroutine

• A disk analysis subroutine
• A disk compare subroutine
lnitialization of a cartridge is required before the monitor system can be loaded onto the
cartridge. If sector @IDAD and/or sector @DCOM are destroyed on a disk, disk initialization is the only DCIP subroutine that can be performed on the disk.
The following text describes the functions of DCIP and provides sample operating procedures for using all of the functioris of DCIP.
Disk Initialization Subroutine

This subroutine prepares a new disk cartridge for use and makes an old cartridge available
to be used for other purposes. The initialization subroutine:
• Tests sectors to determine which, if any, are defective and fills in the defective cylinder
table accordingly.
• Writes a sector address on every sector, including defective sectors.
•

Establishes a file-protected area for the disk cartridge.

• Places an ID on the disk cartridge.
•

Establishes a disk communications area (sector @DCOM), a location equivalence table
(LET), and a core image buffer (CIB).

The monitor system disk I/O subroutines operate with up to 3 defective cylinders on a
cartridge. That is, 3 cylinders that contain one or more defective sectors. A cartridge
cannot be initialized if cylinder 0 is defective, or if a sector address cannot be written on
every sector.
The contents of sectors @IDAD, @DCOM, and @RIAD in cylinder 0 are established during
initialization (see Chapter 2 for a general description of the contents of these sectors). A
message and the program that prints it are written in sector @IDAD. The message is:
THIS IS A NONSYSTEM CARTRIDGE
This message is printed when an attempt is made to cold start a nonsvstem cartridge that
is initialized with DCIP.
Disk Copy Subroutine

This subroutine copies the contents from one cartridge (the source cartridge) onto another
cartridge (the object cartridge). Before the copy is performed, the subroutine checks to
ensure that the cartridge being copied and the object cartridge have been initialized. The
cartridge ID, copy code, and defective cylinder data are not copied from the source
cartridge.

9..8

-------.--Stand-alone Utilities
DCIP
operating procedures

Disk Dump. Subroutine
This subroutine dumps sectors of a cartridge that you select on the principal printer.
Each sector is preceded by a 3-word header and is printed in 20 lines; sixteen 4-digit
hexadecimal words per line. Two sectors are printed on each page.
The first digit of the first header word is the drive number; the remaining 3 digits are the
physical sector address of the sector being dumped. The second header word is the actual
address of the sector being dumped. The third word is the logical sector address, taking
into account any defective cylinders. If you dump a sector that is in a defective cylinder,
the third word of the header contains DEFC.
Disk Patch Subroutine
This subroutine allows you to change the contents, word-by-word, of selected disk sectors.
The contents of the sector being modified are printed, on the principal printer, both before
and after the changes are made.
A one-word buffer is used to store the contents of a specified word as you are modifying
it. Six special characters are used to control the use of this buffer. These characters and
their functions are listed in the disk patch operating procedure in Figure 9-7 under
"DCIP Operating Procedures".in this chapter.
Disk Analysis Subroutine
This subroutine reads each sector of a selected cartridge 16 times.
If a read error occurs, the address of the sector being read is printed. You can then dump
the contents of the sector in error if you wish.
If a sector address is incorrect, the incorrect address is printed, and the correct address is
then written on the sector.
Disk Compare Subroutine
This subroutine of DCIP reads the corresponding sectors of 2 cartridges and compares the
contents word by word. The addresses from both cartridges of any sectors that do not
compare are printed.
DCIP Operating Procedures
The operating procedures in this section include a program load procedure (Figure 9-3)
for DCIP and procedures (Figures 9-4 through 9-9) for performing the 6 functions of
DCIP.
The foHowing general comments should be kept in mind while using any of the DCIP
functions:

1.

2.
3.
4.
5.

If a disk drive is not ready, the system halts with /50XO displayed in the ACCUMULATOR on the console display panel; X is the number of the physical drive that is
not ready.
If your system has 2 card readers, ready only the reader that you use for cold start.
The messages printed during DCIP functions refer to the console entry switches as
bit switches.
All console entry switch settings that you enter are printed on the console printer as
4-digit hexadecimal numbers.'
If you turn on an invalid console entry switch during any of the DCIP functions,
ENTRY ERR ... RETRY is printed. To continue, turn off the incorrect switch,
turn on the correct one, and press PROGRAM START.

Stand-alone Utility Programs

9-9

Stand-alone Utilities
OCIP operating procedures

6.

A DCIP function can be stopped at any time by pressing INT REQ on the consol(~
keyboard. The system prints the DCIP option message. This gives you the choice
of repeating the current function or selecting a new one. Following the option
message, you can change disk cartridges or packs, if necessary, before continuing.
If you wish to discontinue using DCIP at this point, perform a cold start procedUire
(see Chapter 7) to make the monitor system operational.

Note. If you press INT REQ while a disk is being copied or initialized, the results
of the use of the object cartridge (in the copy operation) or the partially initialize:d
cartridge are unpredictable.
The materials that you need to perform the function of DCIP are the IBM-supplied
., DCIP card deck (DCIP punched in columns 73 through 76) or paper tape (BP16) and any
of the following depending on the function you are using:
• An uninitialized disk for disk initialization

• A system or nonsystem cartridge and an initialized disk for the copy function. The
copy function is usable only if your system can contain more than one disk at a time.
• A system or nonsystem cartridge for the dump function
• A system or nonsystem cartridge for the disk patch function
• A system or nonsystem cartridge for disk analysis
• Two system or nonsystem cartridges whose contents are supposed to be the same for
the disk compare function. The compare function is usable only if your system can
contain more than one disk at a time.
Have all of the cartridges you are
follows.

~oing

to use ready before you load the DCIP program as

Stand-alone Utilities
load DCIP

Ready the console
1. Press I MM STOP.

2. Press RESET.

3. Turn the load mode switch
to RUN.

Ready the printer
1. Press CARRIAGE RESTORE.

Note. If the 1403 or 1132 Printer is not

2. Press START.

ready when you load DCIP, or if your
system does not have a 1403 or 1132, the
console printer is the principal print device.

Ready the disk drives to be used
during the DCIP functions
1. Place the disk cartridges or packs
to be used in the disk drives.
2. Turn the disk drives on (see
Chapter 7 for more information
about readying disk drives).

Figure 9-3 (Part 1 of 4). Load DCIP operating procedure

Stand-alone Utility Programs

9-11

Stand-alone Utilities
load DCIP

Ready the paper tape reader

Tape

1. Insert tape BP16, Disk
Cartridge Initialization
Program, in the paper tape
reader.
2. Position under the read
starwheel one of the
delete codes beyond the
program 10.

Cards

Ready the 2501 Card Reader
1. Press NPRO.

2501

1442

Ready the 1442, Model 6 .I)r 7
1. Press NPRO.
2. Place the Disk Cartridge
Initialization Program card
deck in the hopper, face
down, 9-edge first.
3. Press START.

Figure 9·3 (Part 2 of 4). Load DCIP operating procedure
9-12

2. Place the Disk Cartridge
Initialization Program card
deck in the hopper, face
down,9-edge first.
3. Press START (if both a 2501
and a 1442, Model 6 or 7, arEt
present, make sure the 1442 is
not ready by pressing STOP
on the 1442).

Stand-alone Utilities
load DCIP

Start the loading of DCIP
Press,PROGRAM LOAD on the
console.

Continue the reading of tape BP16

Yes

2. Press PROGRAM START again
when the system waits with
IOOC9 in the ACCUMULATOR.

No

r--I
I

I
I
I

I
I

1. Press PROGRAM START on
the console.

- ---,

DCIP is read into core storage
and the system prints:
TURN ON:
SWO TO INITLZ
SW1 TO COpy
SW2TO DUMP
SW3TO PATCH
SW4TOANALYZE
SW5TOCMP

I
L ':'W~~N~LZ N~ ~S~

_

I
I
I
I
I
I
I
.J

Figure 9-3 (Part 3 of 4). Load DCIP operating procedure

Stand-alone Utility Programs

9-13

Stand-alone Utilities
load DCIP

SeSect the DCIP function to be
performed

1. Turn off all console entry
switches.
2. Turn on the console entry
switch that corresponds to
the DCI P function you are
dOing.

3. Press PROGRAM STAFIT.

If switch 0 or 6 is on

If SWi1[ch 1 is on

Figure 9-4

Figure 9-5

Figure 9-6

If switch 3 is on
Figure 9-7

If swi·tch 4 is on

Figure 9-8

lif switch 5 is on
Figure 9-9

Figure 9-3 (Part 4 of 4). Load DCIP operating procedure

9-14

>

>
>
>
>
>

Stand-alone Utilities
DCIP initialize procedure

(:)

'r\_ - --.,
con~e prin~. J

r- - -I

ENTER DR NO. (BITS 12-15)

L ~ p.::te'::':>n'-:he

_

Initialize a cartridge
1. Turn off console entry switch O.
2. Enter through console entry
switches 12 through 15 the
physical drive number ( in binary)
of the drive that contains the
cartridge being initialized.
3. Press PROGRAM START
ENTE R CART I D is printed.

4. Turn off all console entry switches.
5. If the pack has not been previously
initialized, be sure that the access
arm is at Sector O. On a 2311 cartridge, turn off the disk drive and'
turn it on again before initializing
each disk surface.

A valid cartridge ID is a hexadecimal
number between /0001 and 17FFF.

6. Enter through the console entry
switches the cartridge I D (binary
representation ).

The cartridge ID you entered is
printed, and the system waits
with the cartridge ID in hexadecimal displayed in the
ACCUMULATOR.

7. Press PROGRAM START.

Interrupt the initialize function
to reenter the physical drive
number and the cartridge I D.

No

Press INT REO.

r --;'~D~ ~i;-m;;age is

l

Start initialization

I

I

Press PROGRAM START again.

rI -- I
I

----,I

The cartridge is initialized.
The entire surface is cleared,
disk addresses are written, and
three distinct patterns are
written on each sector and
read back for testing purposes.

L _

I

I
_ _ _ _ JI

I
I
I
L

-1
I

printed.
TURN ON:
SWO TO INITLZ
SW1 TO COPY
SW2 TO DUMP
SW3 TO PATCH
SW4 TO ANALYZE
SW5 TO CMP

I
I
I
I

I

_S~ T~I~L~E~D~K_

.J

Restart the initialize function
1. Turn off all console entry
switches.
2. Turn on switch O.
3. Press PROGRAM START.

Figure 9-4 (Part 1 of 5). Operating procedure for DCIP initialize function
Stand-alone Utility Programs

9-15

Stand-alone Utilities
DCIP initialize procedure

r

- -

---,

Any of the following messages
are printed:
NO DEF CYLS

(if all of the cartridge is usable)

or

DEF CYLS:
XXXX ...
(if defective cylinders are fClund)
and/or

DEF CART
(if more than 3 defective
cylinders are printed in the
previous message. This message
is also printed if cylinder 0 is
defective, or if sector addresses
cannot be written on every
sector.)
After any of the previous
messages are printed, this
message is pri nted:
TURN ON SWO FOR MORE
TESTING

L ________,__ ..J

'~

Yes

Figure 9-4 (Part 2 of 5). Operating procedure for DCIP initialize function

9-16

Stand-alone Utilities
DCIP initialize procedure

Continue testing the cartridge

1..Turn off all console entry
switches.

2. Turn on switch O.
3. Press PROGRAM START.

ENTER REPEAT CNT: (BITS 11-15)
is printed.

4. Enter through console entry
switches 11 through 15 the

A maximum of 31 (decimal) can be
entered.

number (in binary) of times
you want the cartridge tested.
(This provides an additional
opportunity to find marginal
cylinders and reduce chances
of disk errors later on.)

5. Press PROGRAM START.

r

I
I
I
L

- - - _... - -

--,

Initialization is repeated. Each
cylinder is tested the number of
times you specified.

I

I
_ _ _ _ JI

Figure 9-4 (Part 3 of 5). Operating procedure for DCIP initialize function

Stand-alone Utility Programs

9-17

Stand-alone Utilities
DCIP initialize procedure

Continue or finish DCIP
operations
1. Turn off all console entry
switches.

2. Press PROGRAM START.

--- --,
r --The DCI P option message is
I
I printed.
I
I

I

I
I

L

TURN ON:
SWO TO INITLZ
SW1 TO COpy
SW2TO DUMP
SW3TO PATCH
SW4 TO ANALYZE
SW5TOCMP
SW6 TO INITLZ NEW DISK

Note. If your system has 2311
Disk Storage Drives, be sure all
disks in a disk pack are initialized.

I
I
I
I

I
..J
Do one of the following:

No

Yes

Perform a "Cold Start
Procedure" (see Chapter
7) from a system cartridge.
Perform an initial system
load on the cartridge just
initialized (see Chapter 8).

Figure 9-4 (Part 4 of 5). Operating procedure for DCIP initialize function

9-18

Stand-alone Utilities
DCIP initialize procedure

Select the DelP function to be
performed
1. Change cartridges or packs
and ready the disk drives,
if necessary.
2. Turn off all console entry
switches.
3. Turn on the console entry
swi~ch that corresponds to .
the DCIP function you are
doing.
4. Press PROGRAM START.

If switch 0 or 6 is on
Figure 9-4

If switch 1 is on
Figure· 9-5

If switch 2 is on
Figure 9-6

If switch 3 is on
Figure 9-7

If switch 4 is on
Figure 9-8

If switch 5 is on

Figure 9-9

Figure 9-4. (Part 5 of 5). Operating procedure for DCIP initialize function

Stand-alone Utility Programs

9-19

Stand-alone Utilities
DCI P copy procedure

I---~-

I
I

I

-,
I
I

ENTER:
SOURCE DR (BITS 0-3)
OBJECT DR (BITS 12-15)
is printed on the console printer.

I

..J

L-

1

Copy a cartridge
1. Turn off console entry switch 1.

2. Enter through console entry
switches 0 through 3 the physical
drive number (in binary) of the
drive that contains the cartridge
being copied (source drivel.

3. Enter through console switches
12 through 15 the physicaM drive
number (in binary) of the drive
that contains the cartridge onto
which information is being copied
(object drive).

4. Press PROGRAM START.
The source and object cartridge I D's
are printed as follows:
SRC 10 = XXXX
OBJ 10 = YYYY
A system wait follows.

No

Interrupt the copy function to
reenter the physical drive numbers
for the source and object drives.
Press INT REO.

Yes

Start the copy function
Press PROGRAM

I

STA~I~

Figure 9-5 (Part 1 of 8). Operating procedure for DCIP copy function
9-20

Stand-alone Utilities
DCIP copy procedure

The OCIP option message is
printed.
TURN ON:
SWO TO INITLZ
SW1 TO COPY
SW2 TO DUMP
SW3 TO PATCH
SW4 TO ANALYZE
SW5 TO CMP
SW6 TO INITLZ NEW DISK

Restart the copy function
1. Turn off all console entry
switches.
2. Turn on switch 1.
3. Press PROGRAM START.

r
I
Yes

No

I
I
I
I
I
I
I
L

------SOURCE or OBJECT is printed
in place of X.

,
I

I

The DCI P option message is
printed.
TURN ON:
SWOTO INITLZ
SW1 TO COpy
SW2TO DUMP
SW3TO PATCH
SW4 TO ANALYZE
SW5TO CMP

S~6~I~LZNE~D~

I

I
I
I
I
I
--.I

Figure 9-5 (Part 2 of 8). Operating procedure for DCIP copy function

Stand-alone Utility Programs

9-21

Stand-alone Utilities
DCIP copy procedure

-,

.
-----I The object cartridge is a DM2

No

I

UCART mastef cartridge.

I

The DCI P option message is
printed.

I
I
I
I

TURN ON:
SWO TO INITLZ
SW1 TO COpy
SW2 TO DUMP
SW3TO PATCH
SW4 TO ANALYZE
SW5TO CMP

I

L ~62.0 ~TLZ N~ ~K_

The object cartridge is a DM2
system cartrdige

I
I
I
-.J

-,
I
..J

No

Continue

Contir1ue the copy function

Press PROGRAM START.

Figure 9-5 (Part 3 of 8). Operating procedure for DCIP copy function

9-22

Stand-alone Utilities
DCIP copy procedure

..,

r

I

I
L

Copying of the specified
cartridge begins.

Interrupt the copy function to
begin initialization
Press I NT REO .

I

I
.-J

-- --r THe DCI P option message is

I

I
I

I
I
I

printed.
TURN ON:
SWO TO INITLZ
SW1 TO COpy
SW2TO DUMP
SW3TO PATCH
SW4 TO ANALYZE
SW5TO CMP
SW6 TO INITLZ NEW DISK

L - --

---

--,
I
I
I
I

I

I

_J

Initialize the cartridge
1. Turn off all console entry
switches.
2. Turn on switch O.
3. Press PROGRAM START.

Figure 9-4

Figure 9-5 (Part 4 of 8). Operating procedure for DCIP copy function

Stand-alone Utility Programs

9-23

Stand-alonl9 Utilities
DCI P copy procedure

- - -- ----,
r The
contents (less defective
I cylinder data and the carUidge
I
I
I I D) of the sou rce cartridgo are
I
I
I

I
I
I
I
L

copied onto the object cartridge.

Word 5 of sector @IDAD I)f the
source cartridge is incremonted
by one when written on the
object cartridge. Because of this,
the copy number of the object
cartridge is always one greater
than the copy number of the
source cartridge.

I
I
I

I
I

I
____ ...1

r---------,
I
I
A disk read, write, or seek
error has occurred.

Yes

I
I

I
I

No

I

/5003 is displayed in the
ACCUMULATOR
The ACCUMULATOR
EXTENSION contains /XYYY,
where X is the drive code, and
YYY is the address of the sector
in error.

IL ____

Figure 9-5 (Part 5 of 8). Operating procedure for DCIP copy function

I
I

I
I
I

___ .J

Stand-alone Utilities
DCIP copy procedure

No

Yes

Have sector in error rewritten
or reread
Continue copy function
1. Turn off all console entry
switches.

1. Turn off all console entry
switches.

2. Turn on console entry switch O.
2. Press PROGRAM START.
3. Press PROGRAM START.

r
I
I

I
L

r

-------- l

The sector in error is rewritten
or reread and the copy function
continued.

---

I

____ JI

I

I
I
L

- --

-

--

-,

The read or write error is ignored,
and the contents of the object
cartridge reflect the last attempt
to copy the sector in error.

--- - - -

I

I

I
.J

Figure 9-5 (Part 6 of 8). Operating procedure for DCIP copy function

Stand-alone Utility Programs

9-25

Stand-alone Utilities
DCIP copy procedure

r
I
I
I
I
I

I
I

The copy function is comple:ted
and the DCI P option messagE~ is
printed.
TURN ON:
SWOTO INITLZ
SW1 TO COPY
SW2TO DUMP
SW3TO PATCH
SW4 TO ANALYZE
SW5TOCMP
SW6 TO INITLZ NEW DISK

L -- -

- - -

I
I
I
I
I

I
I
I
...J

No

Yes

Figure 9-5 (Part 7 of 8). Operating procedure for DCIP copy function

9··26

Perform a "Cold Start
Procedure" (see Chapter
7) to make the system
operational.

Stand-alone Utilities
DCIP copy procedure

Select the DCIP function to be
performed

1. Change cartridges or packs
and ready the disk drives,
if necessary.

2. Turn off all console entry
switches.

3. Turn on the console entry
switch that corresponds to
the DCIP function you are
doing.

4. Press PROGRAM START.

If switch 0 or 6 is on
Figure 9-4

If switch 1 is on

If switch 2 is on

Figure 9·5

Figure 9·6

If switch 3 is on
Figure 9·7

If switch 4 is on
Figure 9·8

If switch 5 is on

Figure 9·9

Figure 9-5 ,(Part 8 of 8). Operating procedure for DCIP copy function

Stand-alone Utility Programs

9-27

Stand-alone Utilities
DCIP dump procedure

r---------l
IENTER ... PHYS DR NO. (BITS 0-3).
I
SECTR ADDR (BITS 4-15)1
lis printed on the console printer

I
L __________ J

Dump specified sectors of ,a disk
cartridge
1. Turn off console entry switch 2.
2. Enter through console entry
switches 0 through 3 the
physical drive number (in
binary) of the drive that
contains the cartridge from
which data is being dumped.

The sector address is. right-adjusted
hexadecimal number, maximum 10657.
(A logical sector address, obtained from
LET or FLET, must be adjusted for
defective cylinders.)

3. Enter through the console entry
switches 4 through 15 tho
physical address of the first
sector being dumped.
4. Press PROGRAM STARl:

ENTER NO. OF SCTRS TO DUMP is
printed.

5. Enter through the console entry
switches the number of
consecutive sectors to be
dumped.

The number is a right-adjusted hexadecimal
value; the maximum value depends on tne
starting address entered In Step 2.

6. Press PROGRAM START.

r

I

I

I
L

---------,

I

()umping of the cartridge begins.

I

I
.J

Figure 9-6 (Part 1 of 4). Operating procedure for DCIP dump function

9-28

Stand-alone Utilities
DCIP dump procedure

---------,
A disk read error has occurred.

I

I

..J
No

No

Yes

Have sector in error reread
1. Turn off all console entry
switches.
2. Turn on switch O.
3. Press PROGRAM START.

----,

r
I
I

The sector in error is reread.

I
I

_ _ _ ..J

L

Continue dump function
1. Turn off all console entry
switches.
2. Press PROGRAM START.

Figure 9-6 (Part 2 of 4). Operating procedure for DCIP dump function
Stand-aione Utility Programs

9-29

Stand-alone Utilities
DCIP dump procedure

r
I
I

-Th:ea;:rror is ignored. The ..,
sector in error is printed as it
was last read, and the dump
continues.

L

r----

I

I
I
I
I

I

I
I
L

___ ,_J

-._.- -,

The dump continues until al\ the
specified sectors are dumped.

I
I

The DCI P option message is
printed.

I

TURN ON:
SWOTO INITLZ
SW1 TO COpy
SW2TO DUMP
SW3TOPATCH
SW4 TO ANALYZE
SW5TO CMP
!..W6..!O !!:!!TLZ N~ D~K_

I
I
I
I

I

.J

No

Yes

Figure 9-6 (Part 3 of 4). Operating procedure for DCIP dump function

9-30

I

I

Perform a "Cold Start
Procedure" (see Chapter
7) to make the system
operational.

Stand-alone Utilities
DCIP dump procedure

Select the DCIP function to be
performed

1. Change cartridges or packs
and ready the disk drives,
if necessary.

2. Turn off all console entry
switches.

3. Turn on the console entry
switch that corresponds to
the DCIP function you are
doing.

4. Press PROGRAM START.

If switch 0 or 6 is on
Figure 9-4

If switch 1 is on

-1

~------------,

Figure 9-5

>

'-----

If switch 2 is on
Figure 9-6

If switch 3 is on
Figure 9-7

If switch 4 is on
Figure 9-8

If switch 5 is on
Figure 9-9

Figure 9-6 (Part 4 of 4). Operating procedure for neIP dump function

Stand-alone Utility Programs

9-31

Stand-alone Utilities
DCIP patch procedure

r - I

I
I
L

- - - -. --,

ENTER:
PHYS DR NO. (BITS 0··3)
SeTR ADDR (BITS 4-~ 5)
is printed on the console printer.

~---

I

I
I
...J

Start the patch function
1. Turn off console entry switch 3.
2. Enter through console ,en try
switches 0 through 3 the
physical drive number lin
binary) of the drive thclt
contains the cartridge being
patched.
3. Enter through console entry
switches 4 through 15 the
address of the sector boing
patched
4. Press PROGRAM ST AIRT.
5. Enter through the com,ole
enrty switches the relative
address of the sector word
being changed.
6. Press PROGRAM START.

The sector address is a right-adjusted
hexadecimal number, maximum /0657.

The specified sector i~ dumped, and the
following message is printed:
ENTER RLTV ADDR OF SCTR WD TO
CHANGE.

The relative address of the sector word is
a right-adjusted hexadecimal number in
the range /0000 through /013F .

. Note: If the sector address is being
changed, enter /FFFF (-1).
The KEYBOARD SELECT indicator on
the console keyboard is turned on.

Figure 9-7 (Part 1 of 4). Operating procedure for DCIP patch function

9-32

Stand-alone Utilities
DCIP patch procedure

.---y----,
I

I
I
I

I

Six special character keys of the
console keyboard are used to
control patch functions. The 6
keys and their functions are:
EOF - causes the last 4 hexadecimal characters entered
through the keyboard to be
stored at the relative address
displayed in the ACCUMULATOR EXTENSION.

> - causes the relative address
in the ACCUMULATOR
EXTENSION to be incremented
by one word.

< - causes the relative address
in the ACCUMULATOR
EXTENSION to be decremented
by one word. The address
cannot be decremented past the
first data word (relative address
/0000) by this character. /FFFF
must be entered through the
keyboard.
R - causes printing of the
message that requests the relative
address of the sector word to be
changed. Thus, the relative
address can be changed by more
than one word.
- causes all remaining words
of the sector from the address
in the ACCUMULATOR
EXTENSION to the end of the
sector to be filled with the last
4 hexadecimal characters entered
through the keyboard. Then
patching is terminated.

* - terminates the patch function.
The modified sector is stored
on the disk, and is dumped to the
principal printer.

L

Figure 9-7 (Part 2 of 4). Operating procedure for DCIP patch function
Stand-alone Utility Programs

9-33

Stand-alone Utilities
DCIP patch procedure

Continue the patch function
1. Enter through the keyboard
the 4 hexadecimal characters
that comprise the newword
to be stored.

The characters are printed on the console
printer as you enter them.

2. Use any of the special control
characters previously listed
to perform the desired patch
functions.

ENTRY ERR ... RETRY is printed if
you press an i nval id key; use the correct
key to continue.

No

.,-----,
The DCIP option message is
printed.
TURN ON:
SWO TO INITLZ
SW1 TO COpy
SW2TO DUMP
SW3TO PATCH
SW4 TO ANAL Y:ZE

I
I
I
I

I
I
I

Figure 9-7 (Part 3 of 4). Operating procedure for DCIP patch function

9-34

Stand-alone Utilitie~
DCIP patch procedure

Select the DCIP function to be
performed
1. Change cartridges or packs
and ready the disk drives,
if necessary.

2. Turn off all console entry
switches.

3. Turn on the console entry
switch that corresponds to
the DCIP function you are
doing.

4. Press PROGRAM START.

If switch

a or 6 is on

Figure 9-4

If switch 1 is on
Figure 9-5

If switch 2 is on
Figure 9-6

If switch 3 is on
Figure 9-7

If switch 4 is on
Figure 9-8

If switch 5 is on

Figure 9-9

Figure 9-7 (Part 4 of 4). Operating procedure for DCIP patch function

Stand-alone Utility Programs

9-35

Stand-alone Utilities
DCIP analysis procedure

r----------,
I

I

L

--=-=-r --

ENTER DR NO. (BITS 12-15)
is printed on the console keyboard.

I

I

_J

Start the analyzing of disk sectors

1. Turn off console enrty switch 4.

2. Enter through console entry
switches 12 through 15 the
physical drive number (in
binary) of the drive that
contains the cartridge beiing
analyzed.
3. Press PROGRAM STAR1r.

r--:

-----,

Each disk sector is read 16 times.

L __ _

I

____ --.II

--------,
I
____ JI

A disk read error has occurred.

No

Yes

Figure 9-8 (Part 1 of 4). Operating procedure for DCIP analysis function

9-36

Stand-alone Utilities
DCI P analysis procedure

Dump the sector in error
1.. Turn all console entry
switches off.
2. Turn on console entry
switch O.
3. Press PROGRAM START.

r---I
I

IL

-----,

The sector containing the error
is dumped, and sector analysis
continues.

___ _

I

___ ...1I

Continue disk analysis
1. Turn off all console entry
switches.
2. Press PROGRAM START.

Figure 9-8 (Part 2 of 4). Operating procedure for DCIP analysis function

Stand-alone Utility Programs

9-37

Stand-alone Utilities
DCIP analysis procedure

r

I

An incorrect sector address has
been read.

I

The system writes the correct
sector address on the disk, and
sector analysis continues.

Yes

I

L

Disk analysis continues until all
sectors have been analyzed.

I

The DCIP option message is
printed.

I

TURN ON:
SWOTO INITlZ
SW1 TO COpy
SW2TO DUMP
SW3TO PATCH
SW4 TO ANALYZE
SW5TO CMP

I
I

I
I
I

L ~6 ~ '~TLZ N':'~ ~~S':...

- -

-

I
_

.J

Perform a "Cold Start
Procedure" (see Chapter 7)
to make the system
operational.

Yes

Figure 9-8 (Part 3 of 4). Operating procedure for DCIP analysis function

-,

I

I
I
I

- -- ..J

I
I
I
I

No

9-38

-

--,

r--I
I

- - - - - - _.-

Stand-alone Utilities
DCIP analysis procedure

Select the DCIP function to be
performed
1. Change cartridges or packs
and ready the disk drives,
if necessary.
2. Turn off all console entry
switches.
3. Turn on the console entry
switch that corresponds to
the DCIP function you are
doing.
4. Press PROGRAM START.

If switch 0 or 6 is on

Figure 9-4

If switch 1 is on
Figure 9-5

If switch 2 is on
Figure 9-6

If switch 3 is on
Figure 9-7

I f switch 4 is on
Figure 9-8

If switch 5 is on

Figure 9-9

Figure 9-8 (Part 4 of 4). Operating procedure for DCIP analysis function

Stand-alone Utility Programs

9-39

Stand-alone Utilities
DCIP compare procedure

r

ENTER:
SOURCE DR (BITS 0-3)
OBJECT DR (BITS 12-15)
is printed on the console printer.

I

I
I
L

l
I

!
____ .J

Start the compare function

i.

Turn off console entry switch 5.

2. Enter through console entry
switches 0 through 3 the
physical drive number (in
binary) of the drive that
contains one of the cartridges
being compared (source
drive).
3. Enter through console G.1try
switches 12th rough 15 the
physical drive number (in
binary) of the drive that
contains the other cartridge
that is being compared
(object drive)'
4. Press PROGRAM START.

The program compares each logical
sector of the source cartridl~e with
its counterpart on the object
cartridge. If the contents of the
2 sectors do not compare, this
message is printed:
CMP ERR ON SCTRS xxx:< yyyy
The compare function continues
until it is complete.
The DCI P option messc'Jge ili
printed.

L

TURN ON:
SWO TO INITLZ
SWl TO COPY
SW2TO DUMP
SW3 TO PATCH
SW4TO ANALYZE
SW5 TO CMP
SW6 TO INITLZ NEW DISK

Figure 9-9 (Part 1 of 2). Operating procedure for DCIP compare function
9-40

Stand-alone Utilities
DCIP compare procedure

Compare more cartridges
1. Change cartridges or packs

and ready the disk drives.
if necessary.
Yes
2. Turn off all console entry
switches.
3. Turn on console entry
switch 5.

No

4. Press PROGRAM START.

No

Perform a "Cold Start
Procedure" (see Chapter
7) to make the system
operational.

Yes

Reload the DCIP
Program (Figure 9-3),

If one of the DCIP functions other than
CMP is selected, this message is printed:
CMP OPTION USED ... RELOAD DCIP

Figure 9-9 (Part 2 of 2). Operating procedure for DCIP compare function

Stand-alone Utility Programs

9-41

Stand-alone Utilities
paper tape reproducing procedure

PAPER TAPE REPRODUCING PROGRAM
This program, available only with the paper tape system, copies information from one
paper tape onto another. The program reads and punches characters with no intermediate
conversion.
The materials that you need to reproduce paper tapes are:
• The Paper Tape Reproducing Program tape, BP18
• The tape being reproduced
• Blank tape
Figure 9-10 is the operating procedure for the stand-alone paper tape reproducing program.

Load the paper tape r'eprclducing
program, BP18
1. Insert tape BP18 in thl3 paper
tape reader.
2. Position under thE! read starwheels one of tht;l delete
codes beyond the program 10.
3. Move the console mode
switch to RUN.
4. Press IMM STOP on the
console.
5. Press RESET on the console.
6. Press PROGRAM LOA,D on the
console.

The program is read into core storage, and
the system waits with /1111 displayed in
the ACCUMULATOR.

7. Remove BP18 from the paper
tape reader.

Ready a tape to be reproduced
1. Insert the paper tape that is to
be reproduced.
2. Position under the readl starwheels one of the delete codes.

Figure 9-10 (Part 1 of 4). Paper tape reproducing

9-42

op~rating

procedure

Stand-alone Utilities
paper tape reproducing procedure

Ready a blank tape
1. Insert the blank tape in the
paper tape punch.

2. Press the DE LETE key on the
punch and hold down to punch
several inches of delete codes
in the tape. Do not release t~e
DELETE key.

3. With the DELETE key held
down, press the FEED key and
hold down to punch a header
of sufficient length.

4. Release the FEED key before
the DE LETE key.

Start the paper tape reproduction
operation
Press PROGRAM START on the
console.

Temporarily interrupt the tape
reproducing program
'(es

No

1. Press PROGRAM STOP on
the console.
2. Press PROGRAM START
on the console to continue.

.Figure 9-10 (Part 2 of 4). Paper tape reproducing operating procedure

Stand-alone Utility Programs

9-43

Stand-alone Utilities
paper tape reproducing procedure

-,

r
I
I

I

The paper tape reproducing
program continues until either
the paper tape reader or punch
becomes not ready.

I
I
I

12222 displayed in the ACCUMULATOR

indicates that the paper tape reader
ready.

I
..J

I
L

jis

not

13333 displayed in the ACCUMULATOR

indicates that the paper tape punch is not
ready.

Ready the paper tape punch

1. Insert a blank tape in the paper
tape punch.
Punch
2. Punch several inches of deletl'
codes and a header.
3. Press PROGRAM START on
the console keyboard.

Reader

Ready the paper tape reader
1. Insert the next tape to be
reproduced.

Yes

No

2. Position, under the read starwheels, one of the delete
codes.
3. Press PROGRAM START on
the console keyboard.

Figure 9-10 (Part 3 of 4). Paper tape reproducing operating procedure

9-44

Stand-alone Utilities
paper tape reproducing procedure

r--I
I
I
I

I

--- -,

An unlimited number of tapes can
I
be reproduced with this procedure.
I
Be sure to punch a trailer and
header in the output tape after
I
each tape is reproduced. This is
I
done so that the output tape can
I
be cut apart after the reproducing
procedure is completed.
I

I __ _
L

---......I

Finish procedure
1. Punch a trailer of delete codes
in the output tape.
2. Remove the tapes from the
paper tape reader and punch.

Perform the "Cold Start
Procedure" in Chapter
7 to make the monitor
system operational.

Figure 9-10 (Part 4 of 4). Paper tape reproducing operating procedure

Stand-alone Utility Programs

9-45

Stand-alon.~

Utilities
Loadino PTUTL

STAND-ALONE PAPER TAPE UTILITY PROGRAM (I'TUTL)

This program, available only with the paper tape system allows you to enter records from the
the 1134 Paper Tape Reader or the console keyboard. Program output is to the 1055
Paper Tape Punch and/or the console printer. This program is also included as an executable
program in the Monitor System Library (see Chapter 4).
The materials that you net:d to use the PTUTL program are:
• The PTUTL (Paper Tape Utility Program) tape, BP17
• Blank tape if output from the PTUTL program is to be punched into tape
• Previously punched tape if they are being changed
Figure 9-11 is the operating procedure for loading the stand-alone PTUTL program, and
Figure 9-12 is the operating procedure for using both the stand-alone PTUTL and the
PTUTL mainline program from the system library.

Load the PTUTL Program, BP17
1. I nsert the PTUTL tape, BP17,
in the paper tape rreador.

2. Position one of the delete
codes beyond the prollram
10 under the read starwheels.
3. Move the console modle
switch to RUN.
4. Press I MM STOP on the
console.
5. Press RESET on the console.

6. Press PROGRAM
the console.

LOt~D

on

7. Press PROGRAM START to
finish the reading of PTUTL.

When the reading of B?17 is complete,
the system waits with IOOC9 in the
ACCUMULATOR.

8. Press PROGRAM START
again.

The system waits with 11111
in the ACCUMULATOR.

Figure 9-11. Loading the stand-alone PTUTL tape

9-46

The core image program is read into core
storage, and the system waits with I006C
displayed in the ACCUMULATOR.

displa~'ed

Stand-alone Utilities
PTUTL operating procedure

Read system library version of
PTUTL into core
System
library

2. Press PROGRAM START on
the console keyboard.

Stand-alone

r- I
I

I

L

--

1. Insert the tape that j ncl udes
the II XEa PTUTL control
record.

--. -,

I
I
I
_ _ _ .J

The system halts with 11111
displayed in the ACCUMULATOR
on the console display panel.

Ready the paper tape reader
Paper
tape

1. Insert the source tape.
2. Position under the read starwheels one of the delete codes.

Keyboard

Ready the paper tape punch
Paper
tape

1. Insert a blank tape in the
paper tape pu nch.
2. Punch several inches of delete
codes and a header.

Console printer

Figure 9-12 (Part 1 of 4). PTUTL operating procedure

Stand-alone Utility Programs

9-47

Stand-alone Utilities
PTUTL operating procedure

Make changes andlor additions

1. Turn on the appropriate
console entry switches to
perform the PTUTL functions
you want.

Console entry
switch on

o

PTUTL function
performed
Print record after
reading
Read records from the
paper tape reader

2

Accept keyboard inlPut

3

Punch records on the
paper tape pu nch

14

Wait after punching
with 13333 in the
ACCUMULATOR

15

Wait after printing
with 12222 in the
ACCUMULATOR

All other console entry switches must be off.
2. Press PROGRAM STAI1T.

Figure 9-12 (Part 2 of 4). PTUTL operating procedure

9-48

Stand-alone Utilities
PTUTL operating procedure

r
I
I

The indicated functions are
performed.

--,

I

If you want to omit a record just read and
printed (switches 0, 1, and 15 on) from an
output tape, do not change the switches
and press PROGRAM START again.
A record just read and printed (switches 0,
1, and 15 on) is replaced by keyboard input
if you turn on console entry switch 2 just
before pressing PROGRAM START.
The system subroutine TYPEO is used by
PTUTL during keyboard input. These
operating features of that subroutine apply:
1. An input record cannot exceed 80
characters.
2. Pressing the backspace key
the last character entered.

(~)

canceis

3. Pressing ERASE FIELD cancels the
entire record so you can reenter the
record.
4. Pressing EOF indicates that input of a
record is complete.

L __ _

- - - --'

. Figure 9-12 (Part 3 of 4). PTUTL operating procedure

Stand-alone Utility Programs

9-49

Stand-alone Utilities
PTUTL operating procedure

Yes

Finish procedure

1. Turn off all console entry
switches.
2. Press PROGRAM START.

Standalone

System library

Continue with next monitor Job

1. Insert the tape for the next
monitor job to be processed.
2. Press PROGRAM START.

Figure 9-12 (Part 4 of 4). PTLITL operating procedure

9-50

Perform the "Cold Start
Procedure" in Chapter 7
to make the monitor
system operational.

Stand-alone Utilities
PTUTL example

PTUTL Example

This example shows you how to change previously punched records. Assume that the
following records are punched in a tape:

II JOB
II * (comments record)
II ASM
II DUP
ASM control records
Source program
You have decided to alter the comments record, insert a II PAUSE control record after the
comments record, and delete the II DUP control record. The procedure you follow is:
System response

Your action

The system waits with /1111displayed in the
ACCUMULATOR on the console display
panel.

1.

Load into core storage and start
execution of PTUTL.

2.

I nsert the sou rce tape and ready
the paper tape punch and the
console printer. Punch a leader
of delete codes in the output tape.

3.

Turn on console entry switches 1,
3, and 14.

4.

Press PROGRAM START.

5.

In addition to the console entry
switches already turned on, turn
on 0,2, and 15.

6.

Press PROGRAM START.

The comments record is read and printed on
the console printer. The system waits with
/2222 in the ACCUMULATOR.

7.

Press PROGRAM START again.

The K.B. SELECT indicator on the console
keyboard turns on and /3333 is displayed in
the ACCUMULATOR.

8.

Enter the new comments record
in the proper format.

9.

Press EOF.

10.

Turn off console entry switch 1.

11.

Press'PROGRAM START.

12.

Enter the

13.

Press EOF.

14.

Turn off console entry switches
0,2, and 15.

The /I JOB control record is read, punched
in the output tape, and the system waits
with /3333 in the ACCUMULATOR.

The new comments record is punched in the
output tape; the system waits with /2222 in
the ACCUMULATOR.

The K.B. SELECT indicator turns on, and
/3333 is displayed in the ACCUMULATOR.

/1 PAUS control record.
The /I PAUS control record is punched in
the output tape; the system waits with /2222
in the ACCUMULATOR.

Stand-alone Utility Programs

9-51

Stand-alone Utilities
PTUTl. example

Vouraction

9-52

System response

15.

Turn on console entry switch 1.
(Switches 3 and 14 sho,uld still
bean.)

16.

Press PROGRAM STABT.

17.

Turn off all console en1try
switches except 1.

18.

Turn on console entry
switches 0 and 15.

19.

Press PROGRAM STAHT.

The /I DUP record is read and printed on the
printer but is not punched in the output tape.
The system waits with /2222 in the ACCUMULATOR.

20.

Press PROGRAM STAHT again.

The next input record is read into the I/O
buffer, overlaying the /I DUP control record.
(The /I DUP control record is deleted.)

21.

Turn off console entry :!lWitches
O'and 15.

22.

Turn on console entry switch 3.
(Switches 1 and 3 should be on.)

23.

Press PROGRAM STAR:T.

24.

Turn off all console entry
switches.

25.

Press PROGRAM START.

The // ASM control record is read and
punched in the output tape; the system
waits with 13333 in the ACCUMULATOR.

The remainder of the source tape is read in
and reproduced in the output tape, record
for record. The paper tape reader not-ready
wait (13005 in the ACCUMULATOR) occurs
when all of the source tape has been reproduced.

A CALL EXIT is executed.

Chapter 10. Remote Job Entry Program

The remote job entry (RJE) feature of the IBM System/360 Operating System allows you
to enter jobs into the operating system job stream via communication lines from terminals
(work stations) at distant locations. RJE includes a unique job entry control language
(JECL) that controls operations of the work station. For a general description of RJE, RJE
terminology, and JECL, see the publication IBM System/360 Operation System Remote
Job Entry, GC30-2006.
This chapter provides information for operators and programmers using an 1130 as a remote work station in an RJE environment, and describes machine and device requirements,
input and output at the work station, communication considerations, operating procedures,
user-exit subroutine, and generation and loading of the work station program.
Messages printed by the RJE program are included in Appendix A.

MACHINE AND DEVICE REQUIREMENTS

The RJE program for an 1130 work station requires at least an 1131 Central Processing
Unit, Model2B, a card reader,and a line printer (with a 120 character print line). The
1130 computing system must be connected to a 600-2400 bit-per-second line VIa a synchronous communications adapter in binary mode.
An optional compress-expand feature requires 16K words of core storage if the 1132
Printer is used, or 8K words if the 1403 Printer is used. The compress-expand feature
eliminates blanks from data transmitted across the communication line.
An IBM-supplied RJE exit subroutine stores data from your IBM System/360 Operating
System job on an 1130 disk. The data thus stored can be processed by other programs
that you write. You can write an exit subroutine to replace the one supplied by IBM and
direct the output from your System/360 job to any available 1130 I/O device. When you
write an exit subroutine, an 1130 system with 16K words of core storage is required.
Information about writing an exit subroutine is included under "User-Exit Subroutine"
in this chapter.

COMMUNICATiON CONSIDERATIONS

The 1130 RJE Wor~ Station Program provides the standard RJE communications interface
to the System/360 Operating System (the operating system) RJE communications network
by using the SCAT2 and SCAT3 binary synchronous communications subroutines. These
subroutines are stored in the monitor system library and provide the following capabilities:
• Point-to-point contention operation on leased lines
• Point-to-point operation on switched lines
• Multipoint operation with the 1130 system as slave station
All data transmissions between the operating system and an 1130 work station are in
EBCDIC transparent mode, except headings, which are transmitted in normal mode. The
1130 RJE Work Station Program communicates with the operating system in 3 modes:
monitor, receive, and transmit.
monitor mode

The work station program enters monitor mode from either transmit or receive mode. In
this mode, the work station waits for output from the communication line or input from
the card reader or console keyboard.

Remote Job Entry Program

10-1

receive mode

The work station. program enters receive mode when output is available for the work
station. in this mode, the work station program reads output from the line until it receives
an end-of-data indication from the operating system or until the operator discontinues the
output (presses PROGRAM STOP on the console keyboard). The work station program
then enters monitor mode.

transmit mode

This mode is entered at work station startup and when input is available at the work station.
The work station program writes to the communication line in transmit mode. Transmission to the line continues until a logical end of file (the .. null command) or an RJEND
command is encountered in the input stream. (RJE work station commands are described
in the publication IBM System/360 Operating System Remote Job Entry, GC30-2006.)
If monitor mode is entered from transmit mode with a logical end-of-file indication caused
by a .. null command, transmit mode is not entered again until operator intervention
indicates that more input is available.
Communication Considerations for Switched Lines

The operating system disconnects the line if a switched communication line is inactive for
a period of approximately 21 seconds. This occurs when:
• A work station output device error is not corrected within the specified time.
• A user-written exit subroutine fails to return control within the specified time (see
"User-Exit Subroutine" in this chapter).
• An operator response to an RJE message is not entered within the specified time.

Note. Some RJE messages allow approximately 3 minutes for an operator response. The
RJE Work Station Program operator messages are included in Appendix A.

INPUT AT THE WORK STATION

Input to the RJE program is accepted from the card reader, the keyboard, and from one
or more disk storage units.
card input

System/360 jobs (with or without JED statements) and job entry control language (JECL)
statements are accepted as input from the card reader. The first JECL statement at work
station startup must be an RJSTART command submitted from the card reader. After
that, JECL statements are not sequence checked.

keyboard input

The only valid input from the keyboard is work station commands and responses to RJE
operator messages. Input is accepted from the keyboard between jobs being entered from
the card reader when the operator indicates that he has input to submit (only in a
point.-to-point line configuration). The 1130 RJE Work Station Program checks this input.
only for the JECL identifier (. .. followed by at least one blank).

disk input

A special 1130 RJE control card is used to specify that input is from one or more disk
storage units. This control card, .. DATA, is described under" JECL for the 1130 Work
Station" in this chapter. A .. DATA control card can be placed in the card input stream
or on d;isk. 1130 work station commands are placed on disk with the STOREDAT AE
operation of the Disk Utility Program (see "DUP Control Records" in Chapter 5).
The .. DATA control card contains information that allows the RJE program to read input
alternately from the card reader and from the disk. Data to be read from disk must be
stored there prior to RJE processing by you. This data must be stored in 80-character
records in 8-bit packed code (EBCDIC) format (eight records per disk sector) in consecutive
sectors. Data can be stored on disk by:
• Using the STOREDATAE function of the Disk Utility Program prior to executing the
RJE Work Station Program
• Specifying that output from a job be placed on a disk

10-2

After the information on disk has been read to the end of file (see "JECL for the 1130
Work Station" in this chapter for a description of the end-of-file indications), the RJE
program resumes reading from the card reader.

Note. Although work station commands can be submitted from disk, only System/360
jobs and input data sets are recommended to be placed on disk in order to simplify work
station operation.
changed LOGON
affect on input

If you are logged on because of a LOGON command entered from the card reader or disk,
and you enter a new LOGON command from the keyboard, all pending input meant for
the previous LOGON from the card reader and/or disk is submitted under the new LOGON
ID entered from the keyboard. To prevent this, the LOGON that was entered from the
card reader or disk must be resubmitted as the last command entered from the keyboard
before card or disk input is continued.
Generation of the 1130 RJE Work Station Program

The 1130 RJE Work Station Program is supervised by the 1130 Disk Monitor System
Version 2. You store the IBM-supplied RJE program in the user area by using the
*STORE function of the Disk Utility Program (DUP). You then define your work station
configuration by executing a program that is part of the RJE program and that is named
RJEOO. This program reads a data card that you code with the following optional parameters:

[

LlNE=P
]
LlNE=S
LlNE=M (x,y)

,UEXIT=(addreSs 1, address 2)J [,COMPRESS=NO J
[ ,UEXIT=USER
,COMPRESS=YES

LINE=P specifies that the work station is connected over a point-to-point leased
line.
LINE=S specifies that the work station is connected over a point-to-point switched
line.
LINE=M (x,y) specifies that the work station is connected over a multipoint line,
where
x is the polling character
y is the selection character.
UEXIT=(address 1, address 2) specifies the starting and ending addresses of the area
on disk that has been reserved for storing data directed to the user exit, where
address 1 is the starting address
address 2 is the ending address.
The addresses must be in the form xaaa, where
x is the logical disk drive number from 0 to 4
aaa is the sector address.
This area must be reserved prior to executing the RJE Work Station Program.
UEXIT=USER specifies that the IBM-supplied user-exit subroutine is replaced by
one that you have written.
COMPRESS=NO specifies that blanks are not to be eliminated from data transmitted
across the communication line.
COMPRESS=YES specifies that blanks are to be eliminated from data transmitted
across the communication line.

Remote Job Entry Program

10-3

These optional parameters can be used in any order, and if more than one of them is specified, they must be separated by commas. The default options assumed when the RJE Work
Station Program is first generated, are a leased point-to-point contention line, no reserved
disk space for user-exit output, and no elimination of blanks. When this data card is used
to reddfme the RJE configuration and the LINE and/or COMPRESS parameters are omitted, th~ program assumes the last parameters specified as the current line configuration;
however, if the UEXIT parameter is omitted, space is not reserved on disk for user-exit
data.
The RJEOO program saves the information specified by these parameters in a disk data
file reserved for common constants used by the RJE program.
work station RJE
generation

The following example shows the coding for generating the 1130 Work Station Program:

The first 2 cards are the monitor control records needed to load the program that processes the information in the third card. The third card specifies that the RJE work station
is on a multipoint line, that its polling character is A, and its selection character is B, and
that it will compress input to the operating system program and expand output from the
operating system program. For storing data that is directed to the user exit, an area is
reserved on disk drive 2 starting at sector 1BO and ending with sector 2BO.

10-4

JECL FOR THE 1130 WORK STATION

The job entry control language (JECL) used with the 1130 work station is described under
"Job Entry Control Language" in the publication IBM System/360 Operating System
Remote Job Entry, GC30-2006, with one addition:The additional command allows you
to alternate the source of input between disk and cards. The format of this command is:
10

Operation

Operand

DATA

DMSj,C

l
l, D, xaaa [, bbbbl f

is the JECL identifier and must be in columns one and two.
DATA

must be preceded and followed by at least one blank.

DMS

identifies the c:ad as an 1130 JECL command.

C

indicates that input follows from cards.

D

indicates that input follows from disk, where

x is the logical disk drive number,
aaa is the disk sector address (hexadecimal), and
bbbb is a hexadecimal number specifying the length of the disk data
file in blocks, two blocks per 80-character record (I6 blocks per sector).
If D is specified, the logical disk drive number and the sector address are required, but the
block count is optional. When the block count is not specified, you must indicate 1he end
of data on disk by using a .. DATA command to transfer reading data either to the card
reader or to another disk area. The optional block count for disk data causes the RJE program to read data from disk until the specified number of blocks has been read, unless an
end-of-file indicator ( .. DATA command, .. null command, or .. RJEND command)
is read first. When the specified number of disk blocks is read or an end-of-file indicator
is read, reading from disk stops, and input continues from the card reader.
Data on disk must start at the beginning of a sector and continue on to consecutive sectors
if necessary. Each sector must contain eight 80-character records in 8-bit code (EBCDIC),
except the last sector, which can be less than 320 words.
The .. DATA command is not recognized between a / / DD DATA statement and the
corresponding /* in an IBM System/360 Operating System job.

Note 1. Restart problems may occur if jobs are chained on disk (that is, referenced by
only one .. DATA command from the card reader), and a line error occurs that requires
the work station to resubmit the R1START command and all unacknowledged input. To
avoid these problems, reference each job with a .. DATA command from the card reader.
Note 2. You must specify the cartridges that are used during R1E on a monitor lOB
control record. A logical drive number as specified on the lOB control record must be
used in the .. DATA command.

Remote Job Entry Program

10-5

End-of-File Indicators
The end-of-file indicator on disk is the .. DATA command. This command passes reading
to another disk file or to the card reader. The end-of-file indicators for the card reader are
the .. null command and the .. RJEND command.

Note. The .. null command and the .. RJEND command can be read from disk and have
the same effect as if they were read from the card reader; that is, reading is stopped both
from the card reader and from the disk.

OUTPUT T'O THE WORK STATION

Output to the work station consists of job output and messages. Job output, consisting of
SYSOUT data sets created by the job, is directed to the printer, the card punch, or a
user-exit subroutine. Each job output data set is directed to the device associated with
the SYSOUT class specified in the DD statement for that output data set. RJE system
messages are directed to the console printer or the line printer.
You can specify carriage control for printer output with a special control character as the
first byte of each data record; either System/360 machine code or ASA control characters
are allowed. Output is single spaced with a skip to channel one when channel 12 is sen:;ed
in the carriage tape and control characters are not specified or are not recognized by the
equipment.
You can specify stacker-select for punched output, if available, by specifying a special
control character as the first byte of each data record; either System/360 machine code or
ASA control characters are allowed. Stacker one is selected if control characters are not
specified or are not recognized by the equipment.
The 1130 RJE Work Station Program includes a user-exit subroutine that accepts data sets
directed to it and writes them on disk in an area that you reserve prior to executing the
RJE program.
The IBM-supplied user-exit subroutine can be replaced by an exit subroutine that you
write. Your subroutine can process data directed to the user-exit and write output to any
available device (see "User-Exit Subroutine" in this chapter for more detailed information).

If you do not write a user-exit subroutine, the IBM RJE program user-exit subroutine
writes data sets consecutively on disk, each data set beginning at a disk sector boundary.
However, when the RJE program is reloaded at a later time, data sets previously written
on disk are unprotected and may be destroyed since any user-exit data sets written after
RJE is reloaded begin at the first sector of the reserved area. For each data set written,
information is printed on the principal printer.
The primary output device for messages is the console printer. The secondary device i:;
the line: printer. You select the line printer as the message device by turning on console
entry switch O.

Note. Data directed to disk can be referenced later by a .. DATA command. To do this,
you rmist define your data set as fixed blocked or unblocked with a logical record length
of 80 bytes and no control characters.

10-6

Discontinuing and Continuing Output

Job output is discontinued by operator intervention. The operator presses the console
keyboard PROGRAM STOP key, then the PROGRAM START key, and the system prints
the J90 OCR=message. The operator then responds by typing D to discontinue output.
Output is also discontinued by the 1130 RJE Work Station Program when a user-exit
subroutine is not present for output directed to the user-exit and one of the following
errors occurs:
• An area is not reserved for user-exit output.
• The reserved output area is exhausted.
• An unrecoverable disk write error occurs.
These errors are indicated to the operator in error messages. To correct the first 2
problems, terminate the RJE program by submitting an RJEND command (after all
pending input has been transmitted), and then specify a reserved area on disk by executing
the RJEOO program (see "Generation of the 1130 RJE Work Station Program" in this
chapter). Reload the RJE program (see "Work Station Startup" in this chapter), and discontinue output immediately by operator intervention. Then, enter a CONTINUE command with the BEGIN operand; otherwise, data is lost.
To correct the third error, enter a CONTINUE command with the BEGIN operand. The
data set is then written again, starting at a new sector.
In general, once output is discontinued, no other output is transmitted to the work station
until the disposition of the discontinued output is specified by a CONTINUE command.
Other conditions that cause output to be discontinued are:
• A change in form number is found at the operating system
• The work station program requests discontinuation
• All irrecoverable error occurs during an output operation
If either of the first 2 conditions occurs, you specify the disposition of the output with
the CONTINUE command. The third condition requires error recovery procedures.

Remote Job Entry Program

10-7

User-Exit Subroutine

The operating system RJE program passes physical records to the user-exit subroutine,
either the one that is supplied with the RJE program or the one that you write to repla.ce
it. This section describes th{~ programming requirements that must be included in your
subroutine.
The subroutine entry point must be named UEXIT, and the subroutine must be stored in
the user area (after deleting the resident module with the same name). You should save:
and restore the contents of registers 1 and 3 at the beginning and end of your subroutine.
To specify that your subroutine be executed, use the UEXIT=USER parameter in the
configuration data card used to generate the RJE program.
The user-exit subroutine gains control when output becomes available for it. Upon entJry,
the return address is stored in the first word of the subroutine, and index register 1 contains the address of a parameter list that describes the output being passed to the subroutine. ThIs parameter list with th~ following format is aligned on an even word boundary.
+0
Starting address

+1
Ending address

+2
Logical record length

+3
Co'ntrol character type

+4
Record format

+5 -"
End of data

Data characters are packed 2 characters per 1130 word. The blocks start on a word
boundary, but they end in the middle of a word if they contain an odd number of characters.

10-8

starting address

The starting address is the 1130 core storage address of the block of data being received
from the operating system. This address has the following format: the 15 leftmost bits
are the core storage address, and the rightmost bit indicates whether the data starts in the
first 8 bits or the second 8 bits of the first word at that location. Zero indicates that data
begins in bit zero at the starting address; one indicates that data begins in bit 7 at the
starting address.

ending address

This is the ending address plus one of the data block being received from the operating
system. The formai of the ending address is the same as the starting address.

logical record
length

When fixed length records are being passed, this word contains the length of logical records.
If variable or undefined records are being passed, this word is zero.

control character
type

This is a code that indicates the type of control characters being used.
O--No control characters
I-IBM System/360 machine code
2-ASA code

record format

This word 'contains a code that indicates the type of data records being transmitted.
I-Fixed unblocked
2-Fixed blocked
3-Variable unblocked
4-Variable blocked
5-Undefined

end of data

When this word is zero, the end of data is indicated.
The user-exit subroutine that you write must use the same I/O subroutines that the 1130
RJE program uses.

Device

I/O Subroutine

1132 Printer
1403 Prin ter
1442, Model 6 or 7,
Card Read/Punch
2501 Card Reader
1442, Model 5, Card Punch
Console Keyboard
Disk

PRNT2
PRNT3
CARDI
READ 1
PNCHI

TYPEO
DISKZ

Note. Your user-exit subroutine must return control to the RJE program within approximately 21 seconds in order to maintain communication with the operating system.

OPERATING PROCEDURES

This section includes information about beginning and ending RJE jobs, as well as information about console keyboard operation during execution of the RJE program.
Work Station Startup

To start RJE operation, the 1130 RJE Work Station Program must be loaded into core
storage. This program is loaded by specifying the program name RJE in a monitor XEQ
control record. The work station program then loads into core the programs and subroutines from the system library that correspond to the configuration of your system. To
load these programs and subroutines, the work station program uses information stored
on disk by the RJE generation program and information in the disk monitor system that
specifies the principal I/O devices.

Note. The console printer cannot be the principal print device.
The following example shows the coding to start and end the execution of the RJE program:
1

10

5

15

20

25

30

35

40

45

50

II JOB
II XEQ !2,)&

..

~" ST AIR. 7

-. r- 1---

JECL statements and operating system jobl

..

171

&'~,Il'l

Remote Job Entry Program

10-9

The RJSTART command must be the first RJE command entered. An error message is
printed when the RJSTART command is not the first entered. To continue, place an
RJSTART command in the card reader, and press START on the card reader and
PROGRAM START on the console keyboard. If the work station is connected to the
operating system over a switched line, a message to call the central system is printed.
The RJSTART command is followed either by input to be sent to the operating system
or by an end-of-file indicator (see the following section "The Null Command"). When
contact is made with the operating system, the RJST ART command and all other commands, if any, before the first job entry (the System/360 job with or without the JED
card) or'before the end-of-file indicator, are transmitted.
The work station is logically attached to the RJE system when the RJSTART command
is acknowledged. All pending messages and immediate job output is received at the work
station. All pending input, if any, is transmitted, or the work station program waits for
output from the operating system. The sequence of events is system dependent.
The Nu" Command

The null command is provided for the 1130 work station to indicate the end of file on the
card reader. This command is coded with the identifying characters (. .) in columns I and
2. All other columns remain blank. The null command must be the last card in the input
stream. jWhen this command is read, the card reader is effectively closed even though
communication is maintained with the operating system.
Operator intervention is required to resume input from the card reader after the null
command has been read (see the following section "Console Keyboard Procedures" in
this chapter).
Console Keyboard Procedures

Four RJE functions that you can start from the 1130 console keyboard are:
• Indicating card reader input
• Indicating keyboard input
• Discontinuing output
•

Initi~ting

You
1.
2.

st~rt

an abnormal closedown of the RJE program

any of these by:

Pressing PROGRAM STOP on the console keyboard
Pressing PROGRAM START

The message J90 OCR== is printed on the console printer. Your response to this message
indicates the function to be performed. The replies to this message are listed with other
RJE m¢ssages in Appendix A.
If you type B when message J90 is printed, keyboard input is indicated. The system prints
the message J93 PROCEED and the K.B. SELECT light on the console turns on when the
RJE program can service keyboard input. You can then enter commands, each ended by
pressing EOF. After entering the last command, press EOF an extra time to indicate the
end of keyboard input; the last EOF must not be entered until the keyboard select
(K.B. SELECT) light turns on.
You indicate abnormal closedown of the RJE program by typing T in response to the
J90 message. This reply causes the work station program to be terminated and the contents of core storage to be printed.

10-10

The operating system notes an error condition and logically detaches and disconnects
the work station if it is connected over a switched line. The work station is logically
detached if connected with the central system over a leased or multipoint line and a line
operation is in progress when you request termination through the keyboard. Also, if the
RJE program is not reloaded, the work station is logically detached if the central system
tries to contact the work station while the communication line is idle.

Note 1. If the console keyboard procedure is used when the console printer is already in
use, the message is not printed. However, the PROGRAM START key must be pressed
to continue processing.
Note 2. The INT REQ key cannot be used when the RJE program is being used. Pressing
INT REQ prevents information in the skeleton supervisor that is modified by the RJE
program from being restored. As a result, the disk monitor system may function improperly.
Error Recovery Procedures

Facilities are provided to recover from both communication errors and local device errors
at the 1130 work station. Operator intervention may be necessary to correct the condition
causing the error. Error messages are printed when errors occur, except for a forms check
error on the console printer. In the latter case, when the FORMS CHECK light on the
console keyboard turns on, you must turn on console entry switch 1 to retry the operation.
Communications on the line are maintained only if the error is corrected within approximately 21 seconds. If errors cannot be corrected within the time allowed, the operating
system logically detaches the work station from the RJE system. In addition, if the work
station is connected over a switched line, the operating system breaks the connection.
RJE messages and error messages are described in Appendix A.
Unrecoverable communication errors result when communication is lost with the operating
system because of either line errors or a failure at the central system. In either case, the
work station is logically detached by the operating system and restart procedures are
necessary. The response received when restart procedures are executed indicates whether
the error is due to a line error or a failure at the central system.
Restart Procedures

Restart procedures must be used when the message J51 LINE ERROR OCR= is printed.
These procedures involve regaining communication with the operating system and submitting an RJST ART command and are indicated when you type A in response to the
J51 message. A complete description of this message is included in Appendix A.
The restart procedures cause output to automatically resume either where it was interrupted
(after a line error) or at the beginning of the job (after a failure at the central system). If
output is being written to disk at the time of a line error you should immediately discontinue the output and enter a CONTINUE command with the BEGIN operand.

If output is being punched in cards or printed at the time of a line error, a duplication of
the last transmission block may occur when the program is restarted. The printer skips to
a new page when RJE is restarted if the data set being printed is without control characters.
If a line error occurs during an input operation, all unacknowledged input must be resubmitted. Furthermore, a line error in the middle of a job implies that the whole job must
be resubmitted from the beginning. Before the job can be transmitted again with the same
job name, the old job that was partially sent to the central system must be deleted. Deletion
is sometimes automatic, but if not, you must delete the job.
Note. The work station restart procedure after a central system failure is similar to the
restart procedure after an unrecoverable line error. The primary difference is that after
a system failure, an inprocess data set is rewritten from the beginning rather than from the
last valid block.

Remote Job Entry Program

10-11

Messages Sent to Work Stations
Detailed descriptions of all messages sent to an 1130 work station from the operating
system RJE program are in "Messages Sent to Work Stations" in the publication IBAJ
System/360 Operating System Remote Job Entry, GC30-2006.
RJE Program Console Entry Switches
Three :console entry switches are used by the RJE Work Station Program

Console Entry Switch

Console Entry Switch Function

o(off)

Indicates that RJE messages from the central
system are printed on the console printer

o (on)

Indicates that RJE messages from the central
system are printed on the line printer

If on when the console printer becomes not
ready, the operation is retried.
2

If on, the error statistics accumulated by the
subroutines SCAT2 or SCAT3 are printed on
the console printer at the end of the RJE run.

Error Statistics
Error statistics are accumulated during an RJE run by the subroutines SCAT2 and SCAT3.
If you want these error statistics printed, turn on console entry switch 2 prior to the end
of the RJE run.
The error statistics accumulated during the last RJE run can be printed if you execute a
program called RJST A that is a part of the RJE program package.

10-12

Appendix A. Monitor System Operational and Error Messages

This appendix includes all monitor system operational and error messages and codes,
except for the messages for the stand-alone utility programs. The messages for these
programs are included in Chapter 9 with the descriptions of the programs.
The messages in the appendix are ordered alphabetically by an error prefix letter. Unless
otherwise noted, the messages are printed on the principal printer. All monitor system
control records are also printed on the principal printer.
The messages, in sequential order, are:
Error
code
prefix

Figure
number

Figure title including program name

A·1

Assembler error detection codes

A

A·2

Assembler error messages

C

A·3

FORTRAN error codes

C

A-4

FORTRAN error messages

o

A-5

DUP/MUP error messages

E

A-6

System loader error messages

G

A-7

SGJP error messages

J

A-8

RJE work station error messages

J

A-9

RJE work station messages

M

A-10

Phase 1. System control record program error
messages

M

A-11

Phase 2. System control record program error
messages

A-12

SYSUP - DCOM update error messages

Note

A-13

RPG compiler error notes

R

A-14

Core load builder error messages

S

A-15

Auxiliary supervisor error messages
Monitor system mainline programs messages

Monitor System Operational and Error Messages

A-I

Assembler
error codes and
messages

ASSEMBLER ERROR CODES AND MESSAGES

At the completion of an assembly, the following messages are printed on the principell
printer:
XXX OVERFLOW SECTORS SPECIFIED
XXX OVERFLOW SECTORS REQUIRED
XXX SYMBOLS DEFINED
XXX ERROR(S) AND XXX WARNING(S) FLAGGED IN ABOVE ASSEMBLY

If LIST DECK or LIST DECK E control records are used, the error detection codes listed
in Figure A-I are punched in columns 18 and 19. These error detection codes are also
printed if the program is listed. Figure A-I includes the error flag (code), your coding
violation that caused the error, and the assembler action.
For the first error detected in each ~tatement, the assembler stores and then punches (or
prints) the appropriate code; the code for a second error is stored, overlaid by any subsequent errors, and the code for the last error detected is punched (or printed). Thus, if
more than 2 errors are detected in the same statement, only the fIrst and last are indi,cated
in columns 18 and 19 when LIST DECK or LIST DECK E is used, or are printed when the
program is listed.
At the end of an assembly, a message is printed indicating the number of assembly errors
detected in the source program (see the last of the assembly messages previously listl:!d).
Since no more than 2 errors are flagged per statement, the error count in the message
may exceed the actual number of error flags.
Assembler error messages are listed in Figure A-2. These messages include the message
number and message, the cause of the error, and the action you must take to correct the
error.

A-2

Assembler Error Codes
Flag

Coding error

A

Add ress error

Assembler action

An attempt has been made to specify a displacement field, directly or indirectly, outside
the range of -128 to +127.

C

Condition code error
A character other than +, -, Z, E, C, or 0 is
detected in the first operand of a short
branch statement or the second operand of
a long BSC, BOSC, or BSI statement.

F

The label is ignored.

Multiply defined label error
A duplicate symbol is encountered in the
label field.

o

The statement is processed as if L format were specified, unless
the statement is valid only in short form. The statement is then
processed as if X format were specified.

Label error
An invalid symbol is detected in the label
field.

M

The displacement is set to zero.

Format code error
A character other than L, I, X, or blank is
detected in column 32; L or I format is
specified for a statement that is val id only
in short form, or I format is specified when
not allowed.

L

The displacement is set to zero.

The first occurrence of a symbol in the label field is used to define
its value; subsequent occurrences of the symbol in the label field
cause a multiply defined indicator to be inserted in the symbol
table entry (bit 0 of the first word).

Operation code error
An operation code is not valid.

The statement is ignored and the address counter is incremented
by 2. If theopcode is punched beginning in column 26, the
character punched in column 26 will not appear in the listing.

An ISS, ILS, ENT, LlBR, SPR, EPR, or
ABS is incorrectly placed.

The statement is ignored.

Q

Warning flag

A possible problem code is detected; that is, a modify memory
statement with a displacement of z~ro.

R

Relocation error
An expression does not have a val id
relocation.

The expression is set to zero.

An absolute displacement is not specified.

The displacement is set to zero.

An absolute origin is specified in a
relocatable program.

The specified origin is ignored.

An absolute operand is not specified in
a BSS or BES statement.

The operand is assumed to be zero.

A relocatable operand is not in an END
statement of a relocatable mainline
program.

Columns 9 th~ough 12 are left blank; the entry is assumed to
be relative zero.

The operand of an ENT statement is not
relocatable.

The statement is ignored.

Figure A-I (Part I of 2). Assembler error detection codes

Monitor System Operational and Error Messages

A-3

Assembler Error Codes
Flag

Coding error

S

Syntax error

T

Assembler action

An invalid expression (that is, an invalid
symbol, adjacent operators, invalid constant) is used.

The expression is set to zero.

An invalid character is used in a record.

If an invalid character is used in an expression, label,
operation code, format, or tag field, additional errors
may occur.

The main program entry: point is not
specified as the operand :in an END
statement.

Columns 9 through 12 are left blank; the entry is
assumed to be relative zero.

The syntax of an EBC statement is incorrect (that is, a delimiter ,S not in column
35, a zero character cout;lt).

Columns 9 through 12 are left blank; the address
counter is incremented by 17.

An invalid label is used as an operand in
an E NT or ISS statement.

The statement is ignored.

An operand label occurs in more than
one ENT statement.

All entries are built as usual.

Tag error
Column 33 contains a character other
than blank, 0, 1,2, or 3 instruction
statement.

U

A tag of zero is assumed.

Undefined symbol
A symbol used in an expression is not defined.

The value of the expression is set to absolute zero.

w

An x- or y-coordinate, o~ both, is not within
the specified range; or an operand is invalid.

The operand is set to zero.

x

A character other than R or I is in column
32; or a character other ~han D or N is in
column 33.

The field is set to zero.

z

An invalid condition is in a conditional
branch or interrupt order.

The condition bits in the first word are set to zero.

Figure A-I (part 2 of 2). Assembler error detection codes

A-4

Assembler Error Messages
Error number and message

Cause of error

Your response

A01

The available working storage is
less than the specified number of
overflow sectors plus one.

Do one of the following:

MINIMUM W.S. NOT
AVAILABLE ...
ASSEMBLY TERMINATED

1. Reduce the specified number of overflow
sectors (the number specified is zero if an
*OVERFLOW SECTORS control record
is not used).
2. If your system has more than one disk drive,
use a monitor JOB control record to specify
system working storage on the cartridge that
has the most working storage available.

A02

SYMBOL TABLE OVERFLOW ... ASSEMBLY
TERMINATED

The number of sectors of symbol
table overflow is greater than
the number of overflow sectors
available.

Use an *OVERFLOW SECTORS control record
to increase the number of overflow sectors for
this assembly (maximum 32 sectors).

A03

DISK OUTPUT EXCEEDS
W.S.

I ntermediate output (pass 1) or
final DSF output (pass 2) exceeds the capacity of working
storage less the specified number
of overflow sectors.

If this error occu rs during pass 1, restart the
assembly using an *TWO PASS MODE control
record.

A04

A05

A06

SAVE SYMBOL TABLE
INHIBITED

XXX ERRONEOUS ORG,
BSS, OR EOU STATEMENTS

LOAD BLANK CARDS

If this error occurs during pass 2, see the corrective actions for message A01.

One of the following occurs
when an *SAVE SYMBOL
TABLE control record is used:
1. The program is relocatable.

Add an ABS statement to your program and
reassem bl e.

2. The program contains
assembly errors.

Correct the program errors and reassembl e.

3. The sou rce program contains more than 100
symbols.

Reduce the number of symbols and reassemble.

XXX is the number of ORG,
BSS, BES, and/or EOU statements undefined in the first
pass. At the end of pass 1, these
statements are printed on the
principal printer.
If the error is due to forward
referencing, the error is not
detected during pass 2.

When forward references are attempted, correct
them and reassemble the program.

A card containing a punched
column between 1 through 71
is read while a symbol table is
being punched (*PUNCH SYMBOL TABLE specified for this
assembly).

The system waits with /100F displayed in the
console ACCUMULATOR.

1. Press NPRO on the card reader.
2. Place blank cards in front of the card just read
3. Press reader START.
4. Press console PROGRAM START.

Note: If output is being punched on a 1442,
Model 5, a punched card cannot be detected. In
addition, the card punch may be damaged if an
attempt is made to punch a hole where a hole
already exists.

Figure A-2 (Part 1 of 2). Assembler error messages

Monitor System Operational and Error Messages

A-S

Assembler Error Messages
Error number and message

Cause of error

You r response

AID7

The control record option does
not agree, character for character, with its valid format.

The control record is ignored.

ABOVE CONTROL
STATEMENT
INVALID

An invalid library Ilame is
detected on an *MACLIB control record, or multiple
*MACLIB control records
are detected.
A08

MACLIB UNDEFINED

An attempt is made to define a
stored macro when a macro
library is not associated with
this assembly.

Reassemble speCifying a valid macro library.

A09

PARAMETER LIST
OVERFLOW ... ASSEMBL Y TERMINATED

The disk parameter-list spill
area is undefined or exceeded.

Reassemble specifying a larger parameter-list
disk area (see "*OVERFLOW SECTORS" in
Chapter 5).

Al0

MACRO AREA
OVERFLOW ...
ASSEMBLY
TERMINATED

The disk area for macro
definitions is UndE!fined or
exceeded.

Reassemble specifying a larger macro-definit'ion
disk area (see "*OVERFLOW SECTORS" in
Chapter 5).

J\12

NEST LEVEL EXCEEDS
20 ... ASSEMBLY
TERMINATED

An attempt is made to nest
more than 20 macro calls.

Redefine the macro nest and reassemble.

A21

*LEVEL CONTROL
STATEMENT
MISSING

A program is assembled as
an ISS subroutine without
the required *LEVEL control
record.

Reassemble using an *LEVEL control record.

l\22

INVALID LIST DECK
OPTION ... ASSEMBL Y TERMINATED

LIST DECK or LIST DECK E
is specified when macros are
called.

Reassemble and do not specify either LIST DECK
or LIST DECK E options.

Figure A-2 (Part 2 of 2). Assembler error messages

A-6

FORTRAN

messages and
error codes

FORTRAN MESSAGES AND ERROR CODES
compilation messages

Near the end of compilation, the FORTRAN compiler prints core usage information and
the features supported as follows:
FEATURES SUPPORTED
EXTENDED PRECISION
ONE WORD INTEGERS
TRANSFER TRACE
ARITHMETIC TRACE
ORIGIN
IOCS
CORE REQUIREMENTS FOR XXXXX
COMMON YYYYY VARIABLES YYYYY PROGRAM YYYYY
where

XXXXX is the program name specified in the *NAME control record or in the
SUBROUTINE or FUNCTION statement.
YYYYY is the number of words allocated for the specified parts of the program.
During a subprogram compilation, the compiler prints the following message:
RELATIVE ENTRY POINT ADDRESS IS XXXX (HEX)
where

XXXX is the address of the entry point relative to the address of the first word of
the subprogram being compiled.
The compiler prints the following messages for successful and unsuccessful compilations,
respectively:
END OF COMPILATION
COMPILATION DISCONTINUED
compilation error
messages

During compilation, the compiler checks to determine if certain errors occur. If one or
more of these errors are detected, the compiler prints the error messages at the conclusion
of compilation, and the object program is not stored on disk. Only one error is detected
for each statement. In addition, due to the interaction of error conditions, the occurrence
of some errors may prevent the detection of others until the errors detected first are
corrected. With the exception of the messages listed in Figure A-4, the error messages
printed by the FORTRAN compiler have the following format:
C nn ERROK iN STATEMENT NUMBER xxxxx+yyy
where
C nn is the error code number in Figure A-3. xxxxx is all zeros until the first numbered statement is encountered in your program. When a valid statement number
is encountered, xx xxx is replaced by that statement number. Statement numbers
on specification statements and statement functions are ignored. When xxxxx is
all zeros, yyy is the statement line in error (excluding comments and continuation
lines). When xxxxx is a valid statement number, yyy is a cour.t of statements from
that numbered statement (counted as 0) to the statement in error. If the erroneous
statement has a statement number, yyy is not printed.
For example:
DIMENSION E(I,6,6)
DIMENSION F(4,4),G(2,7),
IH(34,21 ),1(5 ,8)
DIMENSION 1(3,2,6))
FORMAT (I50,F5.2))
10 WRITE (1 'C) ARRAY
WRITE (1 'C) ARRAYS

(error C 08)
(recall that the 1 in column 6
indicates a continuation line)
(error C 16)
(error C 27)
(error C 07)
Monitor System Operational and Error Messages

A-7

FORTRAN

messages and
error codes

This example causes the following error messages to be printed:
C 08 ERROR AT STATEMENT 00000+001
C 16 ERROR AT STATEMENT 00000+003
C 27 ERROR AT STATEMENT 00000+004
C 07 ERROR AT STATEMENT 10
+001
Look up the error numbers in Figure A-3 to determine the causes of the errors.
Note that a FORTRAN compiler error message can be caused by an invalid character in
the source statement. [n that case, the character in question is replaced with an ampersand
in the listing. Errors in spe:cification statements and any other obvious errors should be
examined first. Since variables are not defined when a statement contains a compiler error,
valid statements that reference the variables may also be flagged.

A-8

FORTRAN Error Codes
Error

code

Cause of error

COl

Nonnumeric character in statement number

C02

More than 5 continuation cards, or continuation card out of sequence

C03

Syntax error in CALL LINK or CALL EXIT statement

C04

Unrecogr.izable, misspelled, or incorrectly formed statement

C05

Statement out of sequence

COO

A statement follows a STOP, RETURN, CALL LINK, CALL EXIT, or GO TO statement,
or an I F statement does not have a statement number

C07

Name longer than 5 characters, or name not starting with an alphabetic character

C08

Incorrect or missing subscript within dimension information (DIMENSION, COMMON,
REAL, or INTEGER)

C09

Duplicate statement number

Cl0

Syntax error in COMMON statement

C11

Duplicate name in COMMON statement

C12

Syntax error in FUNCTION or SUBROUTINE statement

C13

Parameter (dummy argument) appears in COMMON statement

C14

Name appears twice as a parameter in SUBROUTINE or FUNCTION statement

C15

*IOCS control record in a subprogram

C16

Syntax error in DIMENSION statement

C17

Subprogram name in DIMENSION statement

C18

Name dimensioned more than once, or not dimensioned on first appearance of name.

C19

Syntax error in REAL, INTEGER, or EXTERNAL statement

C20

Subprogram name in REAL or INTEGER statement, or a FUNCTION subprogram
contdining its own name in an EXTERNAL statement

C21

Name in EXTERNAL that is also in a COMMON or DIMENSION statement

C22

IFIX or FLOAT in EXTERNAL statement

C23

Invalid real constant

C24

I nvalid integer constant

C25

More than 15 dummy arguments, or duplicate dummy argument in statement function
argu ment list

C26

Right parenthesis missing from a subscript expression

C27

Syntax error in FORMAT statement

C28

FORMAT statement without statement number

C29

Field width specification greater than 145

C30

In a FORMAT statement specifying E or F conversion, w greater than 127, d greater
than 31, or d greater than w, where w is an unsigned integer constant specifying the
total field length of the data, and d is an unsigned integer constant specifying the
number of decimal places to the right of the decimal point

C31

Subscript error in EQUIVALENCE statement

C32

Subscripted variable in a statement function

C33

I ncorrectly formed su bscript expression

C34

Undefined variable in subscript expression

C35

Number of subscripts in a subscript expression, and/or the range of the subscripts
does not agree with the dimension information

C36

Invalid arithmetic statement or variable; or, in a FUNCTION subprogram the left
side of an arithmetic statement is a dummy argument or in COMMON

C37

Syntax error in I F statement

C38

I nvalid expression in I F statement

Figure A-3 (Part 1 of 3). FORTRAN error codes
Monitor System Operational and Error Messages

A-9

FORTRAN Error Codes
Error
code

Cause of -errol'

C39

Syntax error or invalid simple argument in CALL statement

C40

I nvalid expression in CALL statement

C41

Invalid expres;sion to the left of an equal sign in a statement function

C42

Invalid expres;sion to the right of an equal sign in a statement function

C43

I n an IF, GO TO, or DO statement, a statement number is missing, invalid, incorrectly
placed, or is til1e number of a FORMAT statement

C44

Syntax error in READ, WRITE or FIND statement

C45

*IOCS record missing with a READ or WRITE statement (mainline program only)

C46

FORMAT statement number missing or incorrect in a READ or WRITE statement

C47

Syntax error in input/output list; or an invalid list element; or, in a FUNCTION subprogram, the input list element is a dummy argument or in COMMON

C48

Syntax error in GO TO statement

C49

Index of a computed GO TO is missing, invalid, or not preceded by a comma

C50

*TRANSFER TRACE or * ARITHMETIC TRACE control record or CALL PDUMP
statement pre:lent, with no *IOCS control record in a mainline program

C51

Incorrect nesting of DO statements; or the terminal statement of the associated ClO
statement is a GO TO, IF, RETURN, FORMAT, STOP, PAUSE, or DO statement

C52

More thari 25 nested DO statements

C53

Syntax error in DO statement

C54

Initial value in DO statement is zero

C55

In a FUNCTION subprogram the index of DO is a dummy argument or in COMMON

C56

Syntax error in BACKSPACE statement

C57

Syntax ermr i,n R EWI NO statement

C58

Syntax error iI:, END FI LE statement

C59

Syntax enror in STOP statement

C60

Syntax enror il1 PAUSE statement

C61

I nteger constant in STOP or PAUSE statement greater than 9999

C62

Last executable statement before END statement is nota STOP, GO TO, IF, CAL.L
LINK, CALL I:XIT, or RETURN statement

C63

Statement contains more than 15 different subscript expressions

C64

Statement too long to be scanned, because of compiler expansion of subscript
expressions or compiler addition of generated temporary storage locations

C65*

All variables undefined in an EQUIVALENCE list

C66*

Variable made equivalent to an element of an array in such a manner as to cause the
array to el(tend beyond the original of the COMMON area

C67*

Two variables ,of array elements in COMMON are equated, or the relative locations of
two variables or array elements are assigned more than once (directly or indirectly). This
error is also given if an attempt is made to allocate a standard precision real variable
at an odd address by means of an EQUIVALENCE statement

C68

Syntax error in an EQUIVALENCE statement; or an illegal variable name in an
EQUIVAL.ENCE list

CG9

Subprogram does not contain a RETURN statement, or a mainline program contains
a RETURN st61tement

C70

No DEFINE FiLE statement in a mainline program that has disk READ, WRITE, or
FI N 0 statements

C71

Syntax error in DEFINE FILE statement

C72

Duplicate DEFINE FILE statement, more than 75 DEFINE FILES, or DEFINE FILE
statement in sl,.lbprogram

Figure A-3 (part 2 of 3). FORTRAN error codes

FORTRAN Error Codes
Error
code

Cause of error

C73

Syntax error in record number of disk READ, WRITE, or FIND statement

C74

Defined file exceeds disk storage size

C75

Syntax error in DATA statement

C76

Names and constants in a OAT A statement not in a one-to-one correspondence

C77

Mixed mode in OAT A statement

C78

Invalid hollerith constant in a DATA statement (see "Length of FORTRAN DATA
Statement" in Chapter 6)

C79

Invalid hexadecimal specification in a DATA statement

C80

Variable in a DATA statement not used elsewhere in the program or dummy variable
in DATA statement

C81

COMMON variable loaded with a OAT A specification

C82

DATA statement too long to compile, due to internal buffering. Refer to the section
TIPS FOR FORTRAN PROGRAMMERS

* The detection of a code 65, 66, or 67 error prevents any subsequent detection of any of these
three errors.

Figure A-3 (Part 3 of 3). FORTRAN error codes

Monitor System Operational and Error Messages

A-ll

FORTRAN Error Messages
Error number and mesSage

Cause of error

C85

ORIGIN IN SUBPROGRAM

An ORIGIN control record was detected in'3
subprogram compilation.

C86

INVALID ORIGIN

An attempt has been made to relocate a word at
an address exceeding 7FFF (hexadecimal).

C96

WORKING STORAGE
EXCEEDED

The working storage area on disk is too small to
accommodate the compiled program in disk
system format.

C97

PROGRAM LENGTH
EXCEEDS CAPACITY

The error occurs when the program in internal
compiler format is too large to be contained in
core working storage, and the program must
be reduced in size in order to compile.

C98

SUBROUTINE INITIALIZE
TOO LARGE

During compilation of subprograms a subroutine
initialize statement (CALL SUBIN) is generated.
The CALL SUBIN statement initializes all
references to dummy variables contained within
the subprogram to the appropriate core location
in the calling program.
The nature of the FORTRAN compiler limit!;
the size of any statement in internal compiler
format to 511 words. In the case of CALL
SUBIN, the size is calculated by the foliowinlJ
formula:
5

= 5 + ARG

+N

where ARG is the number of arguments in th,e
subroutine parameter list and N is the total
number of times the dummy arguments are u:ied
within the subprogram. 5 is the total size of the
CALL SUBIN statement; if S ever exceeds 511,
an error occurs and the above error message i!:
printed.
C99

CORE REQUIREMENTS
EXCESSIVE

Figure A-4. FORTRAN error messages

A-12

The error occurs when the total core requirements
exceed 32767 words.

OUP and MUP
messages and
error messages

OUP AND MUP MESSAGES AND ERROR MESSAGES

OUP messages

When a Disk Utility Program (DUP) function is performed without errors, an informational
message is printed on the principal printer. Information messages are described in the
following text.
At the end of a DEFINE VOID, one of the following messages is printed:
ASSEMBLER VOIDED
FORTRAN VOIDED
RPG VOIDED
COBOL VOIDED
At the end of a DEFINE FIXED AREA function, the following message is printed:
CART ID XXXX CYLS FXA XXXX DBS AVAIL XXXX FLET SECTOR
ADDRXXXX
where

CYLS FXA XXXX is the decimal number of cylinders minus one in the fixed area
(the additional cylinder is used for FLET).
DBS A VAIL XXXX is the hexadecimal number of disk blocks remaining in the
fixed area after the last program or data file stored there.
FLET SECTOR ADDR XXXX is the hexadecimal sector address of the first cylinder
in the fixed area (the sector address of FLET).
At the end of a dump of LET or FLET, the following sign-off message is printed:
END OF DUMPLET/FLET
All other DUP operations, except MUP are followed by this message:
CART ID XXXX DB ADDR XXXX DB CNT XXXX
where
DB ADDR XXXX is the hexadecimal starting address of the program or data me.
DB CNT XXXX is the hexadecimal number of disk blocks being deleted, stored, or
dumped.
The error messages printed by DUP are listed in Figure A-5. These messages include the
message number and message, the causes of the error messages, and your corrective actions
where appropriate.

MUP messages

The sign-off message of the Macro Update Program (MUP) is:
UPDATE COMPLETED
Informational messages that can be printed during a MUP run are:
ABOVE MACRO PURGED
that follows a PURGE control record, and
ABOVE MACRO RENAMED AS
SSSS DDDD MNAME
where
SSSS is the sector address in hexadecimal.
DDDD is the displacement in hexadecimal.
MNAME is the new macro name.
The error messages printed by MUP are listed in Figure A-5. These messages include the
message number and message, the causes of the error messages, and your corrective actions
where appropriate.

Monitor System Operational and Error Messages

A-13

DUP/MUP Error Messages
Error number and message

Cause of error

D01

NAME IS NOT
PRIME ENTRY

The primary entry point narne of the
program in working storage does not
match the name on the DUP control
record.

002

INVALID HEADER
FIECORD TYPE

One of the following is detected:

Your response

1. A non-DSF program
2. A mispositioned header

3. Foreign data

4. An erroneous subtype
003

INVALID HEADER
LENGTH

Word 6 of the DSF header is outside the
range of 3 through 46.
Other causes are similar to those of message
002, except for subtype.

006

SECONDARY ENTRY
XXXXX IN LET

The specified secondary entry point name
is already in LET.

Delete the specified entry point name before
storing this subroutine.

006

ENTRY POI NT NAME
ALREADY IN
ILET/FLET

The specified name is already in LET or
or FLET.

Delete the specified name from LET or F LI:T
before storing this program or data file.

012

IINVALID DISK I/O
SPECIFIED

The disk I/O subroutine coded (column 9)
on the STORECI control rEicord is other
than 0, 1, N, Z, or blank.

013

INVALID FUNCTION
FIELD

An invalid DUP function is specified on
the DUP control record.

014

INVALID FROM
(CC 13-14)

One of the following:

1. Unacceptable chanllcter:3 are in columns
13 and 14 of the DUP c:ontrol record.

2. The F ROM field specified is not valid
with this DUP function.
016

INVALID TO FIELD
(CC 17-18)

One of the following:
1. Unacceptable characters are in columns
17 and 18 of the DUP control record.
2. The TO field specified is not valid with
this DUP function.

016

INVALID NAME
FIELD (CC 21-26)

One of the following:
1. A required name is not specified.
2. The specified name contains a syntax
error.

Figure A-5 (Part 1 of 8). DCP/MUP error messages

A-14

DUP/MUP Error Messages
Error number and message

Cause of error

017

INVALID COUNT
FIELD (CC 27-30)

Columns 27 through 30 are blank or
include alphabetic characters. The count
field requires a decimal number.

018

INVALID FUNCTION
DURING TEMPORARY
JOB

This function is not allowed during the
JOB T mode.

019

CARTRIDGE NOT ON
SYSTEM

The cartridge specified as the TO or
FROM cartridge is not specified on the
JOB control record as being used for this
job.

020

CARTRIDGE 10
OUTSIDE VALID
RANGE (0001-7FFF)

021

INVALID STOREMOD.
SIZE OF REPLACEMENT
EXCEEDS SIZE OF
ORIGINAL

The replacement version of the program
or data file is larger than the current
stored version.

022

PROGRAM NOT IN
WORKING STORAGE

One of the following:

Your response

Correct the cartridge 10 and retry.

Delete the old version of the program or data file
and retry.

1. The disk block count for the requested
program Ih working storage is zero.
2. The program is not in working storage.

023

INVALID SYSTEM
OVE R LA Y SUBTYPE
SPECIFIED

The system overlay subtype indicator
(column 11) on a STORE control record
is not in the range 0 through 9.

024

COUNT FIELD TOO
LARGE

One of the following:
1. The count field extends beyond
column 30 of a DEFINE FIXED
AREA control record.
2. Column 31 is not a minus sign.

025

REQUIRED FORMAT
NOT IN W.S.

During a STOREMOD, the format of the
LET or F LET entry does not agree with
the format in working storage.

026

NAME NOT FOUND IN
LET/FLET

The name specified on a DE LETE or
DUMP control record is not in LET or
FLET.

027

SOURCE NOT IN DSF

The format indicator of the FROM
cartridge indicates that working storage
on this cartridge does not contain a DSF
program.

030

INVALID RECORD
TYPE

An invalid type binary record has been read
when storing from cards or paper tape.
Figure A-S (Part 2 of 8). DUP/MUP error messages

Monitor System Operational and Error Messages

A-IS

OUP/MUP Error Messages

Error n ... mber and message

Cause of error

Your response

031

PROGRAM OR DATA
EXCEEDS
DESTI NATION
DISK AREA

The number of disk blocks required to
store a program or data file! exceeds the
amount of space available in the
specified TO field"

032

INVALID CORE
IMAGE CONVERSION

The core load builder has inhibited the
continuation of STORECI. The specific
reason has been printed by the core load
builder (see "Core Load Builder Error
Messages" in this appendix).

033

ILET/FLET OVERFLOW.
A CORE DUMP FOLLOWS

A ninth sector of LET/FLET is required
(or a seventh sector of LET on a nonsystem cartridge) for the LET/FLET
entry.

You must delete a program with a LET or f: LET
entry of similar size before this program can be
stored.

A core dump follows this message since
the affected cartridge may have to be
reloaded. The dump allows you to
locate the condition that caused the
error. Use of the affected cartridge is
not recommended until the problem
is investigated.

041

INVALID STORECI
CONTROL RECORD

A control record read after a STORECI
is not a LOCAL, NOCAL, FILES, or
G2250 record, or a mainlinE! name is
specified ona LOCAL, NOC:AL, or
G2250 record.

042

STORECICONTROL
RECORDS
INCORRECTLY
ORDERED

LOCAL, NOCAL, FILES, and G2250
control records are intermixed.

043

INCORRECT
CONTINUATION

A comma at the end of a record
indicates continuation to tho next record;
however, it is not continued .

044

II_LEGAL
CHARACTER IN
RECORD

An illegal character, probably a blank, is
in the record.

045

ILLEGAL FILE
NUMBER

One of the following:
1. A nonnumeric character i·s in a file
number.
2. A file number is more
long.

046

I L.LEGAL NAME

th~1n

5 characters

One of the following:

1. A name is more than 5 characters long.
2. A name contains characters other
than A through z, 0 through 9, or $.
3. A name contains embedded blanks.

Figure A-5 (Part 3 of 8). DUP/MUP error messages

A-16

All records of a given type must be loaded
together.

DUP/MUP Error Messages
Error number and message

Cause of error

047

One of the following:

ILLEGAL
CARTRIDGE ID

Your response

1. The specified cartridge lOis not in the
range 10001 through 17FFF.
2. The specified cartridge 10 contains an
invalid character.

048

SCRA BUFFER
OVERFLOW

The supervisor control record area (SCRA)
cannot contain all the LOCAL, NOCAL,
FI LES, or G2250 information.

070

LAST ENTRY IN
LET/FLET NOT
1DUMY

A DELETE operation cannot find the end
of LET or FLET. The header for this
LET/FLET sector contains the count of
unused words in this sector. This count
should point to the last 1DUMY entry;
however, the entry to which it now points
is not a 1DUMY.

071

1 DUMY ENTRY IN
LET/FLET IS
FOLLOWED BY A
SECONDARY ENTRY
POINT

The name on the DE LETE control record
points to a secondary entry point that
follows a 1 DUMY entry point. The primary
entry is not in LET/FLET.

072

FIRST ENTRY IN
LET/FLET SECTOR
IS A SECONDARY
ENTRY POINT

The LET/FLET table is improperly
constructed; the first entry is not a
primary entry.

080

FIXED AREA
PRESENT

The FORTRAN compiler, RPG compiler,
or assembler cannot be eliminated if a
fixed area is defined on the disk.

081

ASSEMBLER NOT
IN SYSTEM

The assembler has been previously deleted
from the system.

082

FORTRAN NOT IN
SYSTEM

The FORTRAN compiler has been
previously deleted from the system.

083

INCREASE VALUE
IN Co.UNT FIELD
(CC 27~30)

The count field read is a value of zero or
one; the first DEFINE FI XED AREA
requires one cylinder for FLET plus one
cylinder of fixed area. Thereafter, as
little as one cylinder of additional fixed
area can be defi ned.

084

DEFECTIVE SLET

085

FIXED AREA NOT
PRESENT

The cartridge must be reloaded.
The control record specifies a decrease
in the fixed area, or specifies the fixed
area as the TO field, and a fixed area is
not on the cartridge.

Figure A-5 (Part 4 of 8). DUP/MUP error messages

Monitor System Operational and Error Messages

A~ 17

DUP/MUP Error Messages
Error number and message

Cause of error

D86

One of the following:

DECREASE VALUE
IN COUNT FIELD

1. Enough working storago is not available
to allow the fixed area to be defined or
expanded by the amount specifici in
the count field (cc 27 through 30).
If a large program is in working
storage this error may also occur.
If you do not need the contents of
working storage, precede the IIDUP
card with a IIJOB eard to
reinitialize #WSCT in [lCOM. If the
contents of working storage are
needed, save the requimd inforr!lation,
then run with the following cards:
I/JOB, IIDUP, and *DEFINE FIXED
AREA.
2. The number of unused cylinders in the
fixed area is insufficient to decrease
the fixed area the amoLint specified
in the count field.
This message is preceded by a count of the
number of cylinders available: XXXX
CYLS AVAILABLE. The count is a
decimal number.

D87

RPG NOT IN
SYSTEM

The RPG compiler has been previously
deleted from the system.

D88

COBOL NOT IN
SYSTEM

The COBOL compiler (a program product)
has been previously deleted from the
system.

D90

CHECK SUM
ERROR

One of the following:

INVALID DISKZ
CALL. A CORE
DUMP FOLLOWS

While performing a DUP function, an
attempt has been made to read or write
sector 0, or to read or write with a
negative word count. This is a system
error.

D92

Your response

1. A check sum error is d£ltected in a
binary card or paper tape record.
2. Binary cards are out of order.

A core dump follows this message since
the affected cartridge may have to be
reloaded. The dump allows you to
locate the condition that caused the
error. Use of the affected cartridge is
not recommended until the problem is
i nvesti gated.
D93

CARTRIDGE
OVERFLOW

While performing a DUP function, an
attempt has been made to read or
write a sector beyond 1599 decimal.

D100

LIBRARY NOT
FOUND

The library named on aLi B, BUI LD,
JOIN, or CONCAT statement cannot
be found on drives currently in use. If
the statement is a LIB, BUI LD, or
JOI N, all statements are i~lnored until
the next LIB, BUILD. or ENDUP
statement is encou ntered. I f the
statement is a CONCAT, processing
continues with the next control
statement.

Figure A-5 (Part 5 of 8). DLP/MUP error messages

A-18

Correct the name field in the statement in error,
or change the 1/ JOB control record to include
the drive on which the named library resides, or
define the macro library using a *DFI LE elr
*STOR E DAT A control record.

OUP/MUP Error Messages
Error number and message

Cause of error

Your response

0101

One of the following:

XX indicates the column in which the error
was found.

INVALID
SUBFIELO COL XX

1. If on an INSERT or DELETE
statement, the sequence number
is incorrectly specified; that is, it is
negative, nonnumeric, or the sequence
numbers are reversed.

Correct the error and rerun the portion of the job
that is affected.

2. If on a SELECT statement, an
incorrect parameter is specified.
3. If on a NAME statement, an invalid
parameter was detected, and processing
continues with the next LI B,
BUI LD, or ENDUP statement.
4. If on an INSERT or DELETE
statement, processing continues with
the next control statement.
5. If on a SE LECT statement, processing
continues with the remainder of the
statement.

D102

ILLEGAL
REQUEST

One of the following:

Correct the error and rerun the portion of the job
that is affected.

1. An invalid statement was detected.
2. An INSERT or DELETE statement
is not preceded by an UPDATE
or RENAME statement.
3. An OUTPUT operation was requested
using a cartridge configured for
paper tape.
Processing continues with the next control
statement.

0103

LIBRARY
OVERFLOW

One of the following:

Do one of the following:

1. The Iibrary last specified by a LIB or
BUI LD statement does not have
enough room to perform the operation.

1. Purge unneeded macros or delete unneeded
statements to obtain additional space in the
current library. I f this is not possible, define
a larger library using an *OFI LE or
*STOREDATA control record, join the old
library to a new one, and delete the old library.
Once the additional space is obtained, rerun the
portion of the job that is affected.

2. If on a JOIN or an ADD statement,
the operation is suppressed and the
library is restored to its previous state.
3. I f on an I NSE RT statement, the
statements listed prior to the message
are the only ones that can be included.

2. If on an INSERT statement, you may have to
alter the I NSE RT statement as the statements
in the macro library may have been resequenced.

Processing continues with the next LI B,
BUILD, or ENOUP statement.

Figure A-5 (part 6 of 8). DUP/MUP error messages

Monitor System Operational and Error Messages

A-19

DUP/MUP Error Messages

Error number and massage

Cause of error

Your response

0104

The macro name specified on an
OUTPUT, PURGE, RENAME, or
UPDATE statement cannot be found
in the library being processed. Processing
continues with the next control
statement.

Do one of the following:

MACRO NOT
F:OUND

1. Correct the macro name on the statement in
error.
2. Specify the correct macro library.
Then, rerun the portion of the job that is affected.

0105

SEQUENGE
NUMBER NOT
FOUND

The sequence number on an I NSE RT or
DE LETE statement is out of the range of
the macro and cannot be found, or the
sequence numbers on multiple I NSE RT
and/or DE LETE statements for the
same macro are out of ordelr. Processing
continues with the next control
statement.

Place a correct sequence number on the
statement in error, and rerun the portion of the
job that is affected.

0106

LIBRARY NOT
SPECIFIED

An attempt was made to operate on a
macro without specifying a macro
library.

Place a LI B or BUI LD statement before the statement before the statement in error, and rerlJn the
portion of the job that is affected.

Processing continues wIth the next LI B,
BUILD, or ENDUP statement.

0107

SPILL OVERFLOW

Macro text insertions have caused the
capacity of working storage spill to be
exceeded.
Processing continues with the next LI S,
BUI LD, or ENDUP statement.

0108

CONTROL
STATEMENT READ

An * or II statement has been read, and
the MUP run is terminated. Control is
returned to the supervisor for a /I statement
or to DUP for an * statement.

0109

I\lAME STATEMENT
NOT FOUND

The operation attempted rE~quires a NAME
statement, and one has not been processed
after the last LI B or BLJ I L C) statement.
Processing continues with the next LI B,
BUILD, or ENDUP statement.

0110

IINVALID NAME

One of the following:

1. The name field on a LIB, BUILD,
JOIN, CONCAT, UPDA,TE, ADD,
PURGE,RENAME,~OUTPUT

statement was left blank.
2. The name specified is irNalid.
3. Apostrophes are improperly placed.
If on a LIB, BUI LD, or JOIN statement,
processing continues with the next LI B,
BUILD, or ENDUP statemlmt.

If on a CONCAT, UPDIATE, ADD,
PURGE, RENAME, or OUTPUT statement,
processing continues with the next
control statement.

Figure A-5 (part 7 of 8). DU1P/MUP error messages

A-20

Correct the sequence numbers in the unprocessed
INSERT statements, if necessary, and rerun these
statements. Additional disk drives may have to
be defined to provide adequate working stc1rage.

Insert a NAME statement, and rewn the pClrtion
of the job that is affected.

DUP/MUP Error Messages
Error number and message
D112

Cause of error

Your response

NONBLANK CARD
READ ENTER
BLANK CARDS

1. Remove the stacked input from the card
hopper.
2. Press NPRO to clear out nonblank cards.
3. PlacE' blank cards followed by the NPRO
nonblank cards and the stacked input in the
hopper.
4. Press reader START and console keyboard
PROGRAM START.

D116

LIBRARY NOT
INITIALIZED

One of the following:

Do one of the following:

1. The library named on a LIB,
JOI N, or CONCAT statement is not
properly initialized.

1. Initialize the library with a BUI LD statement,
and rerun the portion of the job that is affected.

2. The library specified on a BUI LD
statement is not a data file.

2. Correct the BU I L D statement and rerun the
portion of the job that is affected.

If on a LIB, or JOIN statement, processing
continues with the next LIB, BUI LD,
or ENDUP statement.
If on a CONCAT statement, processing
continues with the next control statement.
D117

INVALID
PARAMETER

One of the following:
1. A parameter has been detected that was
not defined in the NAME statement.
2. More than 20 parameters are specified
in a NAME statement.
3. A parameter greater than one character
was used in the format or tag field.
If the error occurs during an OUTPUT
operation, the operation is terminated and
processing continues with the next control
statement.
If the error occurs during a listing
operation, this is a warning message, and
the invalid parameter is printed as lIN
where N is 1 through 20.

Note: N may be truncated if the field size
is exceeded.

Note. I n addition to the OUP error messages just listed, the following message:
NO SUCH ERROR MESSAGE NUMBER
can be printed immediately followed by a 2-digit hexadecimal number.
This message is an indication of a system error. The message is likely to
be printed if DUP operations are performed while the physical core size
and the configured core size do not agree. This situation is not supported
by most system programs.

Figure A-5 (Part 8 of 8). DUP/MUP error messages

Monitor System Operational and Error Messages

A-21

System Loader
messages and
error messag~s

SYSTEM lOt,.DER MESSAGES AND ERROR MESSAGES

Informational messages are not printed during an initial load.
At the completion of a reload, the following message is printed:
END OF RELOAD

The error messages and the corrective action that you perform are listed in Figure A-6.
Procedures A and B that are referenced under the column "Your response" are included
at the end of the figure.

A-22

System Loader Error Messages
Your response

Error number and message

From phases 1 and 2
EOl

CHECKSUM ERROR

Follow procedure A or restart initial load. If the input is paper tape, this message
can be caused by a paper tape read error. I n such a case, follow procedure B.

E02

INVALID RECORD OR BLANK

Follow prqcedure A or restart initial load.

E03

SEQ ERROR OR MISSING RECORDS

Follow procedure A or restart initial load. The missing record may be end-ofprogram record.

E04

ORG BACKWARD

Inspect the deck for records missing or out of sequence. Correct the deck and
restart from the record in error.

E05

INITIALIZE THE CARTRIDGE

The cartridge I D cannot be found in DCOM because DCOM is defective or an
attempt is being made to initial load a cartridge that has not just been initialized
or has been improperly initialized. Initialize and initial load the cartridge.

From phase 1 only
Ell

INVALID DRIVE NO.

Set all bit switches off. Set bit switches to select physical drive number and
press PROGRAM START.
Drive
Drive
Drive
Drive
Drive
Drive

O-AII switches off
l-Switch 15 on
2-Switch 14 on
3-Switches 14 and 15 on
4-Switch 13 on
5-Switches 13 and 15 on

Drive
Drive
Drive
Drive
Drive

6-Switches 13 and 14 on
7-Switches 13, 14, and 15 on
8-Switch 12 on
9-Switches 12 and 15 on
10-Switches 12 and 14 on

E12

ID SECTOR DATA INVALID

Initialize using DCIP or DISC and follow with an initial load.

E13

CONFIG DECK ERROR

System configuration deck may be missing, out of place, or may contain an
error in one or more records. Correct the deck and restart load.

E14

FILE PROTECT ADDR TOO HIGH

This error occurs on a reload only. The last program in the user area extends
into the last two cylinders on the cartridge. These cylinders are required by the
system loader during a reload operation. The file protect address must be
lowered before a reload can be accomplished.

E15

PHID RECORD ERROR

Follow procedure A or reload and restart.

E16

INITIAL LOAD THE CARTRIDGE

The ID sector indicates that this cartridge has not been loaded since initialization
by DCIP or DISC. Only an initial load may be performed.

E17

ERROR IN LOAD MODE RECORD

Follow procedure A or restart load.

E18

PAPER TAPE ERROR

The paper tape system loader has found a word count greater than 54. This is
probably due to incorrect sequencing of tapes, a faulty tape, or a paper tape
reader malfunction. Correct error and restart load.

E19

INVALID SLET/RELOAD TABLE
CHECKSUM

System loader will ignore the checksum and continue if PROGRAM START is
pressed. However, the cartridge should be initialized and an initial load performed.

From phase 2 only
E20

FI XED AREA PRESENT

Programs may not be added to a cartridge with a fixed area defined. Press
PROGRAM START to restore the resident image and DCOM.

E21

SYSTEM DECK ERROR

A defective record follows the sector break record. Correct the deck and restart
the initial load or continue the reload from the preceding sector break record.

Figure A-6 (Part 1 of 3). System loader error messages
Monitor System Operational and Error Messages

A-23

System Loader Error Messages
Ernor number and message

Your response

E22

SCRA OVERLAY - STOP

The cushion area used for allowing expanded or added phases has been used up.
An initial load must be performed to store these phases on the cartridge. Press
PROGRAM START to restore the resident imagf:l and DCOM.

E23

PHASE ID OUT OF SEQUENCE

The ACCUMULATOR displays the phase ID that is out of sequence (from last
card read). Place the decks in proper order and continue from the sector brealk
record of the correct phase.

E24

PHASE MISSI NG

Error occurred when phase I D (word 11) of last record read was processed. Inspect load mode record, PHID record and phase 10 of previously loaded phase to
determine which phase is now required. Locate missing phase, place deck in
reader starting with sector break record of missing phase and continue.

E2!5

PHASE ID NOT IN PHID RECORD

The ACCUMULATOR displays the extraneous phase 10. To ignore the phaSE!
press PROGRAM START. To load the phase correct the PHID record and re~.tart
the load.

E26

PHASE I D NOT IN SLET

If the error occurred during processing of the reload table, the ACCUMULATOR displays the phase I D sought, and the extension displays the I D of the phase
requestinn the SLET search. Press PROGRAM START to place zeros in the
entry and process the next.
If the extension displays zeros, a phase is being added, and the phase which
should pn3cede it cannot be found. The ACCUMULATOR displays the phase
I D se.arch'3d for. Press PROGRAM ST ART to restore the resident image and
DCOM.

E27

DEFECTIVE SLET

SLET is defective. Initialize the cartridge and perform an initial load.

E28

SLET FULL

The ACCUMULATOR displays the 10 of a phase that may not be added because
the SLET table is full. Press PROGRAM START to ignore the phase and continue. An initial load should be performed as SLET is probably defective.

E29

PROGRAM NOT PRESENT

A program or phases of a program defined in the primary PHID record cannot
be reload'3d unless the program is currently on the cartridge. Press PROGRAM
ST ART t'O ignore the phases of th is program.

E30

RELOAD TABLE FULL

If this error occurs before the '81' record is read the ACCUMULATOR dispil:lys
the 10 of a phase which may not be loaded because the reload table is full. Press
PROGRAM START to ignore the phase and continue.

E31

MISSING PHASE 10 DUE TO
DE FEeTI VE SLET OR RE LOAD
TABLE

The ACCUMULATOR displays the ID of a phase listed in the reload table as a
phase requiring SLET information but the phase itself does not appear in SU:T.
Initialize the cartridge and perform an initial load.

E3;2

MISSING SYSTEM I/O PHASE

All system I/O subroutines must be on the cartridge and in SLET. Initialize the
cartridge and perform an initial load.

Procedure A
If cards are being read from a 1442 Card Read Punch:
1.
2.
3.
4.

5.

Lift the remaining cards from the hopper and press nonprocess run out (NPRO).
Correct the card in error (first card nonprocessed out) and place the two nonprocessed cards ahead of the cards removed from
the hopper.
Place the deck back in the hopper.
Press reader START.
Press console PROGRAM START.

Figure A-6 (Part 2 of 3).

A-24

Syst:~m

loader error messages

System Loader Error Messages
If cards are being read from a 2501 Card Reader:
1.
2.

3.
4.
5.

Lift the remaining cards from the hopper and press NPRO.
a. Correct the card in error (last card in stacker prior to NPRO) and place this card followed by the single nonprocessed card
ahead of the cards removed from the hopper or,
b. If the error occurred after the PHI D card was read and before the type 81 card was read the system loader is in double
buffer mode. Correct the card in error (in this case the second from last card in the stacker when the error occurred) and
place the last two cards from the stacker and the nonprocessed card ahead of the cards removed from the hopper. Note,
however, that the last card in the stacker will be the next card processed since it is already in the double-buffer.
Place the deck back in the hopper.
Press reader START.
Press console PROGRAM START.

If the input is paper tape, procedure A is applicable only to errors E 15 and E 17.

Procedure B
1.
2.
3.
4.

Place a mark on the tape adjacent to the highest sprocket tooth under the read starwhee!s as a point of reference.
Count back (from that mark) the number of frames displayed in the ACCUMULATOR and mark the tape.
Reposition the tape in reader so that the last mark is at the point of reference.
Press console PROGRAM START.

Note: Corrective actions for error messages E04, E21, E23, and E24 are not
applicable to paper tape since a faulty tape must normally be replaced
in full.

Figure A-6 (Part 3 of 3). System loader error messages

Monitor System Operational and Error Messages

A-25

SGJP Error Messages

SATELUTE GRAPHIC JOB PROCESSOR ERROR MESSAGES

Figure A-7 lists the error messages that are printed by the satellite graphic job proce:;sor
(SGJP). The numbered messages are printed on the console printer; the messages preceded
by IKyxxxz are displayed on the 2250 screen.
SGJP is described in detail in the publication IB1l1 System/360 Operating System alld 1130
Disk Monitor System User's Guide for Job Control from an IBM 2250 Display Unit
Attached to an IBM 1130 System, GC27-6938.
Error number (if any) and message

Cause of error

Your response

G01

INITIALIZATION
FAILURE

Contact has not been made with SGJP
in !he System/360 during an attempt to
initialize the telecommunications line
via the GTNIT data transmission
subroutine.

Ensure that the System/360 operator has issued
a VARY ON command for the 113012250
subsystem on which this error message is printed.
Then, using the console keyboard, type either an
R to retry the operation or a C to cancel SGJP.

G02

LINE ERROR

An attempt to transmit data to the
System/360 is unsuccessful because of
an I/O error; standard retries are
u nsuccessfu I.

Using the console keyboard, type either an R to
retry the operation or a C to cancel SGJP.

G03

SYNCHRONIZATION
ERROR

The operation is not completed, either
because both the System/3:60 and the
1130/2250 subsystem are in read mode, or
because the System/3EiO terminated
commu nication.

Using the console keyboard, type either an R to
retry the operation or a C to canceL SGJP.

I Kyxxxz message text THE
SATELLITE GRAPHIC JOB
PROCESSOR MUST RESTART

SGJP is terminated becauso an internal error
occurred. If the error recurs, refer to the
publication, 1£ M Systeml3'60 Operating
System Messages and Codes, GC28-6631,
under the message code (I K yxxxz) for
further explanation of the error condition.

Perform the END function, which causes the
LOG ON frame to reappear. Perform the LOG
ON operation again.

I Kyxxxz message text THE
SATELLITE GRAPHIC JOB
PROCESSOR MUST
TERMINATE

SGJP must be terminated because an
internal error occurred. If the error
recurs, refer to the publication, IBM

Perform the END function. This returns SGJP
to the state it was in before the initial (CANCEL
key) attention.

Systeml360 Operating System Messages
and Codes, GC28-6631, under the
message code (I Kyxxxz) fc~r further
explanation of the error co,ndition.

Figure A-7. SGJP error messages

A-26

Remote Job Entry
messages and
error messages

RJE MESSAGES AND ERROR MESSAGES

The error messages that are printed by the RJE program are listed in Figure A-8. The first
digit of the messages has the following meaning:
0-Error in RJEOO
I-Error in the initializing part of RJE
2-Error during the processing of the RJE program; does not require an operator
reply through the console keyboard
5-Error during the processing of the RJE program; requires a reply through the
console keyboard from the operator
Messages that are not caused by errors but are printed by the RJE program are listed in
Figure A-9.

Monitor System Operational and Error Messages

A-27

RJE Error Messages
IError number and message

Cause of error

System action

Your response

.101

INVALID CARD

The control card that
contains the work
station generation
information is invalid
or contains invalid
information (see
"Generation of the
1130 RJE Work
Station Program" in
Chapter 10).

The work station
prepares to read a
new data card.

Enter a val id data card.

Jll0

INVALID
PRINTER

Information from the disk
monitor system indicates
that the principal print
device is not an 1132
Pri nter or a 1403
Printer.

The work station
program exits to
the disk monitor
supervisor.

Reload the RJE Work Station
Program after performing a
system reload that specifies the
1132 or the 1403 as the principal
print device (see Chapter 8 for
information about system reload).

Jl1

INVALID
READER

I nformation from the
disk monitor system
indicates that the
principal I/O device for
system is not a 1442
Card Reader or a 2501
Card Reader.

The work station
program exits to
the disk monitor
supervisor.

Reload the RJE Work Station
Program after performing a
system reload that specifies the
1442 Card Reader or the 2501
Card Reader as the principal I/O
device (see Chapter 8 for
information about system rei a-ad) .

J12

LOGICAL DRIVE
X NOT IN
SYSTEM

The area on disk reserved
for your exit data is on 21
logical disk drive that is
not present during this
RJE run. The logical drive
number replaces X in the
message.

The work station
program exits to
the disk monitor
supervisor.

Change your exit parameters elr
ready the requested logical drive,
and reload the RJE Work Statlion
Program.

J13

TOO MANY
EOUATS

The number of subroutines
equated by you and the
RJE program in the curront
job is more than 25.

The work station
program exits to
the disk monitor
supervisor.

Reload the RJE Work Station
Program with a smaller number
of subroutines specified in the
*EOUAT control record.

Note: The RJE program intemally
requires the following number of
EOUATS.
Compress/expand feature2 pairs
2501 Card Reader-2 pairs
1132 Printer-1 pair
J14

DISK ERROR
OCR=

A permanent error is
encountered while
attempting to read data
from disk during the
initialization part of the
RJE program.

The program
continues according
to your response.

Enter one of the following codes:
T - I ndicates exit to the disk
monitor supervisor requesting a
terminating dump of the contents
of core storage on the printer.
X - Indicates exit to the disk
monitor supervisor without
printing the contents of core
storage on the printer.

Figure A-8 (Part 1 of 5). RJE Work Station Program error messages

A-28

RJE Error Messages

Error number and message

Cause of t!rror

System action

Your response

J20

RJSTART
MISSING

The requirement for an
RJST A RT command is
not satisfied.

The program waits
for your response.

Enter an RJSTART command
through the card reader, and
press PROGRAM START on
the console to resume processing.

J21

•. DATA
INVALID

A .. DATA command
contains invalid parameter.

The program waits
for your response.

Use the operator communication
request facility (see message J90
in Figure A-9).

Note: This message is
also printed if the
requested logical disk
drive is not present.
J22

INVALID INPUT

The input entered
from the console
keyboard does not
start with the JECL
identifier ( .. ) followed
by at least one blank.

The program waits
for more input from
the keyboard.

Enter a work station command or
press EOF.

J23

INPUT ABORTED
BY CENTRAl,.

The central system has
terminated input from
the work station and
sends a message that
explains why input was
terminated (see
"Messages Sent to Work
Stations" in IBM

The program waits
for input from the
line.

When the message from the central
system is printed, take the indicated
action. To resume input, follow the
procedures described under "Console
Keyboard Procedures" in Chapter 10.

The RJE program
closes the
communication
line, if it is open,
and waits for your
response.

Enter one of the following codes
through the console keyboard:

System/360 Operating
System Remote Job
Entry, GC30-2006, for
a I ist of the messages).
J51

LINE ERROR
OCR=

An unrecoverable error
is encountered while
reading or writing on
the communication
line, or the line cannot
be opened.

A - Indicates that input is
available at the card reader. If you
select this option, the first card in
the card reader must be an
RJSTART command. On a switched
line, the line must be disconnected
before the restart is tried. If this is
not done automatically by the work
station program, you must do it.
Dial again when J91 ESTABLISH
LINE CONNECTION is printed.
T - Indicates exit to the disk
monitor supervisor, requesting a
terminating dump of core storage to
the printer.

x - I ndicates exit to the disk
monitor supervisor, without
printing the contents of core storage
on the printer.
Figure A-8 (Part 2 of 5). RJE Work Station Program error messages

Monitor System Operational and Error Messages

A-29

RJE Error Messages
Error number and message

Cause of error

System action

Your response

J52

A permanent error is
encountered while
attempting to read
input from disk. This
message is printed only
if your disk input is
being read at the time'
the error occurs.

Reading of input
data files and
card reader input
is discontinued.
Any available
output from the
central system is
accepted after
you make your
response. The
system continues
according to your
response.

Enter one of the following codes
(within approximately 3 minutes
on a switched line):

DISK ERROR
INPUT OCR=

A - Indicates that input is
available at the card reader.
8 - I ndicates that commands are
to be read from the console keyboard.
C - Indicates that available output
is accepted. (Any pending keyboard
input is processed first.)
T - Indicates exit to the disk
monitor supervisor, requesting a
terminating dump of the contents
of core storage on the printer.
Note: You may have to resubmit
a job that has been partially entered,
but must precede this by eithelr
obtaining the output of, or deleting,
the job in question.

J!53

DISK ERROR
OUTPUT OCR=

An unrecoverable error
is encountered while
attempting to write data
on disk. This message is
printed only if data is
being written on disk by
the 18M-supplied userexit routine.

Output from the
central system is
discontinued. The
disposition of the
output is specified
by the use of the
CONTINUE
command. The
system continues
as directed by
your response.

Enter one of the following cocles
(within approximately 3 minutes on
a switched line):
A - Indicates input is availablt~ at
the card reader. (Any pendin~1
keyboard and disk input is pwcessed
first.)
B-1 ndicates that commands are to
be read from the console keyboard.
C - Indicates that any pending
input (keyboard, disk or cardJ' is
processed. If input is not available,
the system maintains the line
operations.
T - Indicates exit to the disk
monitor supervisor, requestin'iJ a
terminating dump of the contents
of core storage on the printer .

.J54

DISK ERROR OCR=

An unrecoverable error is
encountered while
attempting to read RJE
constants or error
messages from disk. If
this message is printed,
an RJE error message
that indicates the original
error may not be printed.

The program
continues
accord i ng to
your response.

Enter one of the following codes:
T - I ndicates exit to the disk
monitor supervisor, requesting a
terminating dump of the contents
of core storage on the printer.

x - Indicates exit to the disk
monitor supervisor without printing
the contents of core storage em the
printer.

Figure A-8 (Part 3 of 5). RJE Work Station Pro,gram error messages

A-30

RJE Error Messages
Error number and message

Cause of error

System action

Your response

J55

You did not reserve
space or reserved too
little space on disk
for user-exit output
data sets.

Output from the
central system is
discontinued. The
system continues
as directed by
your response.

Enter one of the following codes
(within approximately 3 minutes
on a switched line):

END OF DISK
AREA OCR=

A - Indicates that input is available
at the card reader. (Any pending
keyboard and disk input is processed
first.)
8 - I ndicates that commands are
to be read from the console keyboard.
C - I ndicates that any pending
input (keyboard, disk, or card)
is processed. If pending input
does not exist, the system maintains
the line operations.
T - Indicates exit to the disk
monitor supervisor, requesting a
terminating dump of the contents
of core storage on the printer.

J56

CARD READER
ERROR OCR=

An error has occurred
on the card reader that
requires your intervention.

The system waits
for your response.

Enter one of the following codes
(within approximately 3 minutes
on a switched line):
A - I ndicates you have corrected
the problem, and the program
resumes card reader input.
E - Indicates that you could not
correct the problem. The program
assumes an end-of-file ( .. null
card) indication closes the card
reader.

J57

CARD PUNCH
ERROR OCR=

An error has occurred
on the card punch that
requires your intervention.

The system waits
for your response.

Enter one of the following codes
(within approximately 3 minutes
on a switched line):
D - I ndicates you could not correct
the problem. Output from tho
central system is discontinued and a
.. CONTINUE command has to be
transmitted to resume o

a..

I§f.

N

10al

:;;:p
alO

~~

o

III

.., 3
~s:
3 Bl
0'"'"
aI III

Error
number

Description

Operator's
switch option

Operator recovery proceckife
(Note that the instruction
PRESS START, if not stated,
is implied in each of the
following procedures.)

..,(,0

25ED
25FA
260F
26111.
2620
2625
2629
2632
263B
2644
264,~

2653
265':
2665
2661:3
267,*
000'1
0009 2670

CHAIN AOOR.
0223

FOR DEI
MAT (NT

DSF OOlE 2607

PROG
NAME

-FLET
01E8

PROG
NAME

OCI09
0006
0006
0009
0009
0009
0007
00111.

0003
0003
0004
0004
0010
0011
0015
OOOF
0013
0015
OOOC
OOOE
OOOE
001A
0010
0007
0008
0012
0009
0007
0009

DB
AoOR

006C
OOOA
0007
OOOB

OSF 0015 2913
oSF 0005 2928
oSF 0028 2920
OSF 0008 2955
DSF 0005 2950
OSF OOOA 2962
OSF 0005 296C
DSF 0028 2971
OSF 0008 2999
OSF 0004 29Al

DB
AoOR

DSF C1003 29AE
oSF
oSF
oSF
OSF
DSF
OSF
OSF
oSF
OSF
OSF
OSF
OSF
OSF
OSF
oSF

C:009
C:008
(1002
(1002
CI007
OOOB
0008
0006
Cl004
CIO IF
()04A
()006
0069
Cl061
(J002

29Bl
29BA
29C2
29C4
29C6
29CD
2908
29EO
29E6
29EA
2A09
2A53
2A59
2AC2
2823

PROG
NAME

FOR DB
MAT CNT

DB
ADOR

PROG
NAME

FOR DB
MAT CNT

PRTZ2
oFCNV
RGBLK
RGERR
RGCVB
RGTSZ
RGSI5
RGSI3
RGSI4
RGSI2
RGSIl
RGCMP
RGMV4
RGMV3
RGMV2
RGi'1Vl
RGMV5
RGEOT
RGoT8
RG6TD
RGMVR

DSF
OSF
OSF
OSF
oSF
OSF
DSF
DSF

0006
009F
0005
0005
0006
0005
0006
0004

2B25
2B2B
2BCA
2BCF
2804
2BOA
2BOF
2BE5

OSF 002E 20C
DS,F 0010 2CI)A
DSF OOlA 2C'7A

DSF
OSF
OSF
oSF
oSF
DSF
OSF

0006
0005
0006
0006
0004
0006
OOOA

2BE9
2BEF
2BF4
2BFA
2COO
2C04
2COF

RGoIV
RGMLT
RGADD
RGSUB
RGNCP
ISROO
ISRo
ISRoC
ISEQO
ISETL
ISEQ
ISEQC
ISAoo
ISAO
ISADC
ISLDC
ISLD
ISLoC
OAOPN
DAIO
oACLS

DSF 0013 2C19
DSF 0008 2C2C
oSF 0008 2C34

DB
AOI)R

oSF OOlC 2C94
OSF 002A 2CBO

OSF 003E 2CI)A
OSF 0026 2018
oSF OOOF

20~E

LET/FLET
DUMPLET listing
-CION
4444

SFPAO
02E5

SCTR NO.
0003

-FPAO
02E5

UA/FXA.
0228

PROG
NAME

FOR DB
MAT CNi

SEQOP
SEQIO
SEQCL
RGSTO
RGSTI
FEB41
BEB41
F41EB
B4lEe
QEB41
Q41EB
MTCAO
MTCAl
TS"141
TSTTY
IDUMY
OATA2
lDUMY

OSF OOlC 2040

-CIBA
0210

-UI.ET
0220

WORDS AVAIL.
0105

DB
AOOR

PROG
NAME

.FLU

01E8

CHAIN ADDR.
01E1

FOR DB
MAT CNT

DB
ADDR

PROG
NAME

FOR 08
MAT CNT

DB
ADDR

PROG
NAME

FOR DB
MAT CNT

DB
ADDR

PROG
NAME

FOR D8
MAT CNT

D8
ADDR

PROG
NAME

FOR DB
MAT eNT

DB
ADDR

PROG
NAME

FOR DB
MAT CNT

DB
ADOR

OSF 001A 2069
OSF OOOF 2083
OSF 0024 2092

OSF
OSF
OSF
OSF

0023
OOOE
003A
0008
0004
DDF 0020
35BO

2086
2009
20E7
2E21
2E2C
2E30
2E50
FLET

-CION
4444

SFPAO
02E5

scrq NO.
0011,)

PROG
NAME

-FPAO
02E5

UA/FXA.
OIFO

FOR DB
MAT CNT

DB
AODR

-ULET
0220

-CIBA
0210

WORDS AVAIL.
0132

PROG
NAME

.FLET
01E8

CHAIN ADDR.
0000

FOR DB
MAT CNT

DB
ADDR

PROG
NAME

FOR DB
MAT eNT

DB
ADOR

OATA OOF 0020 1FOO
CIMGE DCI 0030 IF20
10UMY
01BO IF50
END OF OUMPLET/FLET

LET /FLET

D-5

LET/FLET
DUMPFLET listing

*OUMPFLET
FlET

SFPAO
02E5

'"CION
4444

SCTR NO.
0010

PROG
NAME

-FPAD
02E5

UA/FXA.
01FO

FOR DB
~AT CNT

DB
ADOR

DATA DDF 0020 1FOO
CIMGE DCI 0030 1F20
1DUt-1Y
01BO 1FSO
END OF DU/>1PFlET

0-6

eUlET
0220

-CIBA
0210

WORDS AVAIL.
0132

PROG
NAME

-FlET
OlES

CHAIN ADDR.
0000

FOR DB
MAT CNT

DB
.ADDR

PROG
NAI'-1E

FO~ DB
MAT CNT

DB
ADDR

PROG
NAME

FOR DB
MAT CNT

DB
ADOR

PROG
NAME

FOR DB
MAT CNT

DB
AOOR

Appendix E. System Location Equivalence Table {SlET)

The addresses listed in the following SLET printout are subject to change. Only the symbols and phase IDs remain constant.
SYSTEM lOCATION EQUIVALENCE TABLE ISLET)
SYMBOL PH
ID

CORE
ADDR

WORD seTR
COUNT AODR

syr1BOl PH
10

CORE
ADDR

WORD SCTR
COUNT AOOR

SYMBOL PH
10

CORE
AOOR

wORD SCTR
COUNT ADOR

SYMBOL PH
10

CORE
AODR

WORD SCTR
COUNT ADDR

*****

**

****

****

****

*****

**

****

****

****

*****

**

****

****

****

*****

**

****

****

****

'DDIJP
'DUMP
'EX IT
'DU13
'PRCI
'FR03
'FR07
, FRll
'FR15
'FR19
'FR23
'FR27
'SUP4
, ClBI
'ClB5
'ClB9
'CLBO
'2501
'COCV
'OlIO
'PIXK
'eILl
'RG06
'RG14
'RG20
'RG26
'RG36
'RG44
'RG58
'ASOO
'AS12
'ASYM
'AS2A
'AS07
, APev
'AOIV
'AMIB
, At-103
'AX2A

01
05
09
00

7C50
410E
DlOE
7782
OlOE
7A34
7A34
7A34
7A34
7A34
7A34
766E
07FE
OlEO
08B6
OAAO
OAAO
0000
0000
OOFO
0000
0000
0906
073A
073A
0782
0782
0782
073A
OlEO
027E
0000
0280
027E
027E
027E
027E
07AA
07A6

032F
054B
0500
087C
0280
0280
0280
03eo
0500
0404
,03eo
0140
0280
0782,
0lE8
0140
0140
009C
00B9
01A2
00ge
OlCO
076B
0604
05C8
022E
025F
05F3
05FO
026B
01B9
0130
00A6
017E
0099
00B8
0108
0051
0054

oe08
0016
002A
0031
003E
0040
0059
0066
0073
0083
008F
009C
00A7
00B3
00e2
00e8
OOCO
0001
0007
OOOB
0001
00E2
OOFA
0116
012E
0142
0152
0161
0173
OleC
0191
0197
019E
01A6
OlAF
011'36
01BO
01e5
OlCO

'DCTl
'DI../F
'(FeE
'DU14
'OU18
'FR04
'FR08
'FR12
'FR16
'FR20
'FR24
'SUPI
'SUPS
'ClB2
'CLB6
'eLBA
'1403
'1442
'PTev
'ONIO
'pewK
'RGOO
'RG08
'RG16
'RG21
'RG28
'RG38
'RG46
'RG60
'AC,W
'AERM
'AS03
'AS09
'AS7A
'AIo'H
I A/-I,eC
'AM02
'AM3A
'AX2B

02
06
OA
OE
12
22
26
2A
2E
32
36
6E
72
79
70
61
6e
90
94
98
9C
BO
B4
B8
BC
CO
e4
C8
ec
DO
04
De

1l0E
OlOE
7A06
7A06
OE6E
7A34
7A34
7A34
7A34
7A34
7A34
04FE
07FE
OSBe
08B6
OAAO
0000
0000
0000
OOFO
0000
0212
0906
0762
073A
0782
0782
0782
073A
OlEB
OACB
07A6
0456
0260
0980
027E
027E
027E
one

05A2
03eo
OODE
0248
0140
03eo
0500
03(0
0500
03eo
03(0
02FE
03EA
04E2
01E8
0140
0132
OOAB
0003
02BO
0089
094E
06e2
046E
060F
0491
050C
04E9
039D
OOBB
013E
0250
059E
0127
0058
018A
0106
01B3
0058

OOOB
0010
002E
0038
0040
:l04F
005B
0069
0077
0087
0092
0090
00A9
OOM
00e4
00e9
eOCE
0002
0006
0000
0007
00E4
0100
Olle
0133
0144
0154
0166
0178
018E
0193
019B
019F
01AA
01BO
01B7
OlBF
01(6
OleE

'STOR
'DI..TE
'DUll
'OU15
'FROI
'FR05
'FR09
'FR13
'FRl7
' FR21
'FR25
'SUP2
'SUP6
'ClB3
'ClB7
'CLBB
! 1132
'1134
'KBev
'PPRT
'pexl(
'RG02
'RGIO
'RG17
'RG22
'RG32
'RG40
'RG52
'OeL2
'ASI0
'ASOl
'AS04
' AS05
' AS08
'ASAA
'AMOI
'AM2A
'AM3B
'AX2e

03
07
OB
OF
IF
23
27
26
2F
33
37
6F
73
7A
7£
82
80
91
95
99
90
Bl
B5
B9
BO
el
C5
e9

2lDE
OlOE
7A06
7A06
760e
7A34
7A34
7A34
7A34
7A34
7A34
07FE
0506
08B6
OAAO
OAE2
0000
0000
0000
0000
oooc
0906
04A6
0162
07B2
0782
0782
073A
1I0E
OlE8
027E
027E
027E
027E
0980
027E
027E
12E6
0882

05A2
05A2
0035
0248
09Fl
0500
03FO
03(0
0500
03(0
0500
0526
04F8
OlEB
0140
0140
0113
016e
oe03
0113
0089
0893
0811
06E3
02AE
06C7
0576
03Ae
0280
0060
0108
0107
01e4
0198
0063
0106
0106
0285
0030

0010
0020
002F
003A
0041
0052
005F
006e
007B
008A
0095
OOAO
OOAO
OOBE
00C6
ooeA
OOCF
0003
OCD9
OOCF
0007
OOEC
01:)8
0120
0139
0148
0159
016A
0178
018F
0194
019A
01A4
OlAB
01Bl
01B9
OlCl
Olea
OlCF

'FIlQ
'DFNE
'OU12
'DU16
'FR02
'FR06
'FRIO
'FR14
'FR18
'FR22
'FR26
'SUP3
'SUP7
'CLB4
'ClB8
'eL8e
'ePTR
'KBep
'OliO
'p n-ll(
'eILl
'RG04
'RG12
'RG19
'RG24
'RG34
' r~G42
'RG54
'OMUP
'ASll
'AS1A
'AS02
'AS06
'AS8A
'ASGR
' A~'1A
'AM28
'AXOI
'AX03

04
08
OC
10
20
24
28
2(
30
34

010E
OlOE
7A06
7A06
7A34
7A34
7A34
7A34
7A34
7A34
7BBE
07FE
0400
08B6
OAA'J
Od86
0000
0000
OOFO
0000
oooc
0906
073A
073A
0782
0782
0782
v73A
OlOE
OlE6
027E
027E
027E
027E
OEBC
027E
050A
027E
OEBe

03CO
05A2
0008
0248
0500
03eo
03(0
05,)0
0500
0280
03eo
0280
0189
01E8
0.i40
(Jlt;;8
OllB
0174
OOt:C
009C
ono
0783
0867
0932
06B9
046C
03A5
0667
llDF
0050
0115
0IA2
0106
OlB5
03(1
010B
Ol5A
01(9
036E

0015
0025
0030
003C
0049_
00:;6
0063
006F
007F
0080
0')99
OOA5
OOBI
ooeo
00(7
oceB
0000
000:'
OOOA
0001
OOEO
OuF3
OlOF
0126
Ol3e
014£
Ol!:lE
0160
0170
01<;0
0196
019C
01A6
JIAO
0182
OlBB
01C3
OlCB
0100

11
21
25
29
20
31
35
39
71
78
7e
80
84
8F
93
97
91'3
A1
1'33
B7
BB
BF
C3
(7
CB
CF
03
07
DB
OF
E3
E7
EB
EF
F3

DC
EO
E4
EB
EC
FO
F4

co

01
05
09
DO
El
E5
E9
ED
Fl
F5

38

70
74
78
7F
83
BE
92
96
9A
AO
B2
1'36
BA

BE
C2
C6
CA
eE
D2
06
OA
DE
E2
E6
EA
EE
F2
F6

System Location Equivalence Table (SLET)

E-l

E-2

Appendix F. Core Dump

The following is a partial printout of a core dump:
ACCUMULATOR

4000

AOOR • •• 0 ••• 1 ••• 2
0000
0010
0020
0030
0040
0050
OObO
0070
0080
0090
OOAO
OOBO
OOCO
0000
OOEO

70FF
0000
COFE
0000
0809
0000
00F2
0000
0000
0080
OCCO
0000
4ceo
6109
020B

Dora

OOEF

0100
0110
0120
0130
0140
0150
0160
0170
0180
0190
OlAO
01130
OlCO
0100
OlEO
01FO
0200
0210
0220
0230
0240
0250
0260
0270
0280
0290
02AO
02BO
02eo
0200
02EO
02FO
0300
0310
0320
0330
0340
03'50
0360
0370
0380
0390
OlAD
03BO
03CO
0300
03EO
03FO
0400
0410
0420
0430
0440
0450
0460
0470
0480
0490
04AO
04BO
04CO

4eoo
1000
4293
5002
0400
COE6
aooc
7C07
DBA
1002
4810
OOEE
DA34
0140
4eOO
COll
425B
1800
623e
C7CO
OOCO
E8C5
COIl
0000
7006
0000
61000
OCCO
0000
1010
e303
6458
5246
1234
4COO
2CCO
DC01
1002
OCCO
4804
70F6
1800
70Ee
00B6
28ZE
lCOl
6500
70CO
C808
4FOF
4EOE
4000
4COC
480B
4AOA
4909
oeoo
7101
OFBE
OCOO
C018

FFFB
0000
1B90
0000
4023
COOO
4003
0000
0000
0000
COOO
0000
00B3
0810
OFOO
FF6A
01C5
6500
7034
5004
0141
4400
001C
CIOI
EA43
4828
7002
70E4
C101
C900
COOo
1001
70F3
DOlF
08 Ell
COOO
4802
C700
D01B
A900
1000
7bOO
COOO
COOO
0000
73FF
1088
2519
13C7
5678
06A9
70F4
6600
COlO
IlCC
70C 7
4CeO
0004
700C
1800
6'12 A
4818
COOO
0000
C089
8747
8646
8545
8444
8343
8242
8141
COCO
70FA
7101
COOO
8400

0000
FFFF
4400
0001
28ZA
COEB
4102
0000
3000
3000
0000
0000
0001
1140
0000
004A
690F
0004
0001
FECO
0000
0028
800B
800
023Q
70aO
F251
7401
EA 50
OA32
7028
4810
0000
D05C
4804
11 00
1008
0000
6200
7F 7F
4820
FF 17
72A5
COOO
0000
72ff
0303
261A
5408
03F8
7017
0819

0000
0000
COOO
0400
o38E
OOCF
70EA
80eS
6A2B
7002
e500
1HO
8848
8FCF
8ECE
80CO
8CCC
88(.B
8ACA
8000
eooo
6lBe
70FA
0000
054E

EXTENSION OFAF

)cRl

0000

)c~2

)cR3

0260

007F

••• 4 ••• '5 ···6 ••• 7 •• ·8 ··.9 ··.A ••• B "·C ··.0 .·.E ••• F

0949
0000
00F2
0000
6903
00C2
0000
0000
4C80
4CCO
0000
0066
0000
4580
0300
1400
0822
6600
0238
0001
FFFF
7038
0034
7401
EA50
1002
8230
OOEE
0101
CA3C
4COO
7005
AF01
0001
70FA
E006
1808
73FF
10AO
4040
70FA
6AOe
6A25
0000
0000
70F8
(306
675B
40'7F
ClCO
4eoo
1C02
C202
0012
1701
0033
08EO
6CeO
4002
COAC
0003
COZO
OCOO
001C
6A99
9757
9656
9555
9454
9353
9252
9151
COCO
C014
C005
COCO
0010

OFFA
70FF
7400
0000
C480
6580
0000
ocoo
0081
0091
0658
6906
06CE
054C
OCOO
aOEE
6500
00F2
OFFA
0080
OCOO
7401
8007
016E
9247
4828
DA34
4COO
420F
0900
CCOO
0204
OCOO
6780
C2FA
4810
1888
7007
C6CO
OOOA
7401
72FE
6A38
OCOO
oeoo
001
1888
681C
7E4A
4820
OCOO
4828
1800
CC08
4EOO
70C4
4804
0013
COe4
7000
0023
7C12
4802
OOEF
9858
9FOF
9EOE
9CDD
9COC
9B08
9AOA
9010
OCOO
0500
0400
0000
0012

0238
0000
OOEE
0000
003F
0039
0050
ooon
ooon
0530
0658
6A07
0818
200('1
OFOJ
70FD
0000
0816
0238
060n
0000
0037
800A
7201
0237
7010
420F
0119
C240
70B7
6237
0817
ACOO
OCOO
4830
702B
COFA
4027
OCO('l
4007
0032
6AOB
CCOl
ecoo
0000
FOlll
C305
295n
7CO~

4200

7coe

lOlA
C201
4804
4FOI
4eOO
7CO'
7401
ocet
CCCO
6250
6918
lCOR
oeoo
70B9
8777
B676
B57'5
B474
B3B
B2l?
B171
oeon
1000
OCOF
1000
0401"

0080
0001
70FO
0000
0002
C101
COCB
FFFF
3000
0000
0658
2807
280E
6500
0000
7002
6600
00C6
0004
C008
1810
6211
8007
70F5
EA42
CI01
CA38
CA3C
0235
0000
OB1B
4804
0800
1000
70FA
1002
9020
6COO
1888
6204
70F5
7600
70E5
OOCO
0000
4820
1088
2A5E
614C
C201
4C40
1001
9825
7002
0000
0000
CODE
0032
C400
COCO
C600
COlA
1BC8
0000
BB78
8FFF
BEFE
BOFO
BCFC
BBFB
BAFA
B030
0000
7101
4COO
C811
0009

0000
0000
70F4
0002
C8F4
1800
E8A9
0000
4C80
0000
0000
080A
690F
0003
08FC
0000
0260
4810
BoOO
5000
00A6
6A96
0006
0101
8247
9400
OA34
4808
C247
0000
OOlA
7007
ACOO
7050
C04A
4802
4810
0036
1008
027C
C080
OdEB
1000
0000
0000
70C4
C304
681F
5015
1001
0000
4828
4818
40lE
0000
08F2
0005
08CE
0033
0000
0000
1084
0600
40F9
f737
F636
F535
F434
F333
F232
F131
C008
0000
70FC
0038
OC80
6500

0327
0900
038C
7019
4400
CI00
4e20
006E
0085
0000
0000
4400
6AI0
6600
4C40
7018
COEE
70E7
0004
OFF8
74FF
6500
62Fo
6600
0240
009A
420F
7011
4B20
0000
1003
0800
9000
7007
0600
7001
7017
08AB
9014
6COO
44CO
6A95
0000
OOCO
6780
C09A
C88A
2C20
61H6
4828
0835
7036
1800
7001
0001
4804
70F8
2000
4818
0000
0028
OOOB
0000
F838
7F3F
7E 3E
7030
70C
7838
7A3A
7939
0040
0000
6580
0040
0409
04CF

01E4
70FF
3000
0000
00F2
6500
0066
0001
0000
0000
0000
00F7
0816
0000
OOEA
690B
4C98
CBOA
8000
0100
0032
0004
698E
00F2
EA48
4818
C231
8A40
420F
0000
4810
COOB
AFOO
4063
0000
7026
1090
6500
4818
0036
0028
7213
0000
0000
0000
0307
0805
7F49
4057
7010
2806
1010
4820
4028
1402
7003
COE4
70B6
70E9
0000
1886
0017
72FF
FOE9
E727
E626
E525
E424
E323
E222
6121
0004
720C
0019
FFFF
COlF
6000

00B3
4000
4C80
1810
COF1
010C
0803
0000
3000
0238
0000
6500
1002
C803
4400
6AOC
00F2
0900
0122
0701
1000
C900
e101
C230
o23B
701B
0480
OAlC
CA32
OOAO
7005
100C
FFOO
6COO
72FF
4808
1900
OCOO
700E
08F5
70F3
6ACA
COOO
0000
C233
7301
7401
7F40
6061
4802
0835
0400
7008
080B
1000
COFO
4400
28Fo
1010
0000
1807
6808
1008
E828
6F2F
6E2E
6020
6C2C
6B2B
E02A
6929
0006
6A02
7101
OCOO
1890
0004

0091
OFAF
0028
7017
1007
0888
4e80
0000
4C80
0000
0000
010c
4CI0
4CCO
003F
1008
0003
74FF
8EOO
0007
70B8
08CB
EOCC
E2't9
CA3C
1893
0198
4830
0900
2222
74FF
4810
OOOA
0036
70FC
720A
7100
6600
72FF
704e
70CO
7600
0000
0000
1890
70F8
0037
0001
5B62
7022
C034
0013
C203
70C7
1702
OOEl
0028
0003
0400
2542
1883
C007
6500
6009
0711
0616
0515
0414
0313
0212
0111
00C4
6lFit
70C7
0000
4400
700F

00C4
4COO
00E6
0001
0000
4008
0065
0000
0089
0000
0000
6600
0000
00C4
FFFE
D03C
1810
OOEE
BCOO
OOOA
C807
0801
0101
0250
OA3A
18,OF
9101
1810
C23e
0170
0032
70E6
6940
08E9
6100
1002
7003
0000
70F6
4COO
0082
FF89
0000
OOCO
A8A1
6780
C881
OE02
5C23
70e2
803B
74FF
4820
1401
30CO
70F8
70F6
7400
0033
0089
C024
8016
ooeo
0818
5FIF
5E1E
5010
5CIC
5B18
SA 1A
5919
00C9
C5CO
61FC
OOCO
00F2
0099

0091
0500
0248
0004
0000
COFC
2000
0000
0000
0000
0000
0260
4480
4001
0000
1800
00E9
703A
8F81
009F
0900
1810
9400
C400
02EB
1002
4C18
824F
4C08
015C
1000
024E
6A4E
703B
6600
180C
DOC8
b700
700B
0000
7082
6ASB
0000
0000
1800
0000
7090
4F43
4E6C
C2F9
0032
0032
7005
1702
3000
COEC
40F4
0013
70E9
01'53
610A
0005
6600
00A9
A767
A666
A565
A464
A363
A262
AIEl
00C6
0466
e500
0000
1400
0000

CARRY OFF

OVERFLOW OFF

".3

4000
oeoo
0000
FFFF
0000
1890
0000
0000
3000
0000
0000
2000
002C
028C
0011
005A
4COO
C80F
OEBA
FFFB
eOE1
1084
00A4
009F
4828
EA3A
01B6
0100
0146
0132
1810
70E4
6B4F
COE9
0000
0001
7108
0000
7001
0889
6801
6AB3
0000
0000
E81F
C304
OOFO
1004
4B6E
009C
OB33
1000
6eOO
0000
4000
4400
C005
70FO
40C7
4COO
EOB
C012
0000
A868
AFEF
AEEE
AoEO
ACEC
ABEB
AAEA
A020
0000
0500
0451
0000
OOEE
0132

0000
04FE
0000
0000
0000
4400
ce80
0000
4C80
8800
0000
C802
FFFE
0000
0000
7054
OOBA
COll
0239
8E80
7000
OOOE
4828
EA4E
708C
1800
74FF
CA36
7500
014A
0204
C008
107E
42EC
lOAD
C600
7000
7080
COOO
4804
6600
7201
0000
0000
0306
1888
7F7F
5145
502F
0140
C82E
C022
OOOF
0000
COED
0028
0007
7002
COAC
'COOO
1140
1091
2000
50C9
C1C7
C606
C505
C404
C303
C202
C101
0000
OFBC
0500
COOO
70FO
OHA

•••••••••••••••••••• u••••• o••

...•

........•..•
•................................•
••••••••••••••••• R •••
•••••••• 2 ••••••• 4 ••••••••• w•••••••

.QR •••• lo •••• KH4 ••• 2.1 ••

h

•••••••• B•••• A••• A••••• Q.

.......•
••••••••

·.2 •••••••• I •• y ••••••••••••••••••

•............................•...•
•.....••••••....•.•..............•
••••••••••••••••••••••••• J

••••••••••••• 8

••••••••••

~

••••••••

•••••••••

• •••••••••••••• O•••• 7 ••••••• - •• H••

.,.. ..

.....•
.
.............•
•............••................•.•
• •••••••••• 0 ••••••••••••••••••••• •
•

•• 0

•••••••••••••• H•••• D

••••••••••••••

• ••• E ••••••••••• - ••••• 2 ••••• I •••••
• ••••••••• 2 ••• F ••• XH.R ••••••• H••••

•.....•....•.•.••••.•....

~

.......•

·&.& ••••••••••• &•• 8 •••••••••••••••
• •••••••••••••••••••••••• HPR ••••••
·.W •••••••••••••••••• I.QHUJ •••••• •
•••••••••• P •••••••••• A •••

~

••••••••

••• A•• e ••••••• 5J •••• 2B.S.KtO ••••••
.K ••• K•• t •• K••••• K( •• K••••• K••••••
••••••••••••• A••••••••••••••••••••
• •••• 2 ••••••••••••• B.M ••••••••••••
• ••• u••••••••••••••• •••••••• J ••••
••• A•• tJ ••• B(K.B ••••••• R.B ••••••••
1 ••••• R••••••••••••••••••••••••
• •••••••••••••••••••••••••••••• K••
• •••••••• K•••••••••••••••• WK+.U •••

..

=.

•• $.3 ••••••••••••••••••••• (.+, ••
• ••••• • ••••••••• 1 •• •••••• Z••• l •••

• ••• k •••• B••••••• O••••••• I ••••••••
·G •••••• O•••••••••••••••••••••• F.*
•••••••••••••••••••••••••••• H•••••
·yEP •••••• P
••••••••• F •••••••••••••••• 6 •••••••
••• K•••••• 5 •••••••••••
•••••••••••••• 5 ••••••• 3 •••••••••••

•...... ..

.....................•

•...
.••.•...•..••••.•...•......••
• ••••••••••••• v•••••••••••••••••••
•................................•
~

••••••••••••••••••••• B ••••••• Y.l.·
•••• ~ ••• 8C.0 ••••••• l •••• 8 •••• C••• •
·C ••• l.C ••• e ••• l.H ••••••• H•••• O•••

•......

•••••••• $ ••• ) •• , ••••••

..........•

.=.'.I.&.,.(.-/S ••• + ••• I ••

• •••• l8B ••••• B•••••••••••• BB9 ••• (.
•• Q ••••••••••••• H••

•• e _ •••••• a _ ••

• ••• 4 ••••••••• 4 • • • • • • M••••••••• ~ ••
••••••• 8 ••• B•••••••••• QB •••• N •••• •
•• K •••••••••••• '••• •••• G •••••••••

....

••••••••• + •••••••••••••••••••
• ••• GM •••• 0 ••••• 2 ••••• 0 ••• 8 •••••••
·.6 ••••••••••••• N.8.U ••••• 64.N.P·

•......
•............•.•.........•..•....•*

••••

~

••••••• * •••••••••••••••••

R

••

~

K.D.AO •••••• I •• M•••• Z G ••

..

• ••••••••••• tF ••••••••••••• I ••••
•................•.......•.......•
• •••• E••••••••• O••••••••••••••••• •
•...
........... q8.0Zy.-RQ •••••

tI~

·H ••••••••••••• 1 ••• X••• P••••••• G.·
••••••••••••••• 6.=.W ••• O••••••• F ••

.+ .............

5.'.V.~.N.)e

•••• E.*

., ••••••••••••• 4 ••• U••• M••••••• C.*
••••••••••••••• 3 ••• T.,.l.S ••••• C.·
• •••••••••••••• 2 ••• S ••• K••••••• B••
• •••••••••••••• I ••• I ••• J ••••••• A.~

•••••••••••••••• Q. ..... O.O.I.F •••• '"
• •••••••••••••••••••••• /4E ••• N••• •
• •••• I ••• N••••••••••••••• I.E ••• ~.·
•••• a •••• M
•••••• e .
••••••••••••• H•••• R••••••• l~ ••••••
•••••• + •••• ~a ••••••• o.M •••••• ~ ••• +
• • • • • • • • • «1 • • • • •

Core Dump

F-I

AUOR ••• 0

···1

0400
04EO
04FO
0500
0510
0520
0530
0540
0550
0560
0570
0580
0590
05AO
0580
05eo
0500
05EO
05FO
0600
0610
0620
0630
0640
0650
0660
0670
0680
0690
06AO
0680
06CO
0600
ObEO
06FO
0"100
0110
0120
ono
0740
0·,50
0760
0770
0"180
0790
01AO
0"1BO
01CO
0700

OCCO
0001
1002
C4CO
0018
4C20
8018
1890
OOCO
0089
0528
0174
026B
OCOF
05B4
060A
1008
63F2
7400
068A
40E3
40C3
C902
1010
OCOO
0666
0686
00F2
7001
1000
OOOF
4C18
068A
40C9
0000
F1F3
0709
4009
40C9
COll
7eoo
0000
4400
9C2S
70FS
OOOS
EOF9
4e20
OCOO

CCiOO
t:500
1(186
C(l64
1000
C64e
1801
4400
C!.E4
C153
cl.le
0151
CI71
C09C
C400
4400
E901
700E
0071
6301
E801
06C2
oeoo
0480
0560
6303
0600
7400
COOO
nOl
4eAO
O6C6
0000
D5E5
0440
40e4
06C7
Co;C3
(;440
la90
C755
OE6C
COF2
4t IS
1201
COOS
100A
C195
COOO

01FO
0800
0810
0820
0830
0840
OS')O
0860
OS70
0880
OS90
08AO
08BO
08CO
0800
08EO
08FO
0900
0910
0920
0930
0940
0950
0960
DA80
OA90
OAAO
OABO
OACO
DADO
OAEO
OAFO

F-2

••• 2 ···3 ••• 4 ••• e; ···6 .·.7 ···8 •• ·9 ·"'.A ••• 8 "·C • •• 0 ···E ••• F

ObBA
0600
6500
7001
4400
40E3
05C4
0558
0006
4COO
406E
0022
OOEE
4400
70FC
069C
C4S0
C700
CI03
FlF2
E407
0gel
0609
OOOA
4400
0154
0001
7400
07CA
7301
C008
E810
1201
eooo

COOO
CCOO
E81C
0508
054C
0582
0018
7400
0324
07FE
COOO
0000
760e
e009
1001
1002
OF08
056E
CltOO
0601
C505
0666
C820
7080
0526
1810
7201
70FO
0039
C015
70E9
0006
0606
C9C4
40C5
40E2
0440
e440
0440
00F2
0007
OE6C
OOEE
6500
70EF
oe09
lSOA
7301
0000

OCOO
0014
0104
4400
6000
4eoo
8014
OOEE
OCOO
0280
OC03
00ge
09F1
9084
1810
4400
7102
62E5
0685
0000
40E7
0638
Itit00
7400
0001
0400
70FA
4000
oeoo
0480
7002
4420
40E5
4004
E7C5
E407
CltC5
OCOO
FlF6
1400
oeOA
0140
70FO
0198
7016
oe07
7201
70F9
oeoo

0000
082A
C818
0039
CC04
064C
0400
7CFO
0321t
0121
0151)
0140
OC41
ItC20
040n
069C
7201
63F3
4400
OCOO
C508
Oblt4
OCF2
0032
OltfE
0034
4COO
oe02
oeoo
0680;
OFAF
0730
4COO
0600;
C3E4
070C!
E3C5
0"40
4007
OOH
oeof'
0001
4CSI)
C20n
6580
CC07
7301
70Ee;
0000

0000
1002
1084
2210
C841
e835
06B8
4C80
0099
0012
0090
0011
OOBO
05AO
007C
1010
10F8
C8l0
068A
0028
40C4
0630
7400
70FO
FFFF
C902
0017
C020
6500
C800
7001
COED
05CIt
C9E3
E3C9
C5E2
C3E3
FIF5
0906
70FO
0000
0000
076E
9022
0189
e009
70n
C200
0000

0000
1802
1610
l5CO
6100
6101
e828
0538
0000
01FE
0000
01FE
0000
C009
4C80
0400
C400
9EOO
4f80
405C
Elt07
064C
OOEE
COOE
C400
4e08
0000
0400
056A
4400
0000
4400
0600
0609
0605
EZC5
C5CIt
40C9
C709
COOC
0000
COFE
COOO
4ClS
10AO
3F06
72F8
90El
0000

0000
1888
1086
4C08
4022
4012
6102
0001
0132
03EA
0089
0280
0000
9084
05A2
OOOF
OF82
0623
0630
4001
40C1
064C
70fO
4400
0035
0686
0000
0034
70eD
0321
038F
OlEl
06FO
ItOe3
40E2
C440
4004
0303
C104
OOOC
0000
0005
C200
078E
7401
OOFO
6500
4C20
0000

058A
4018
4008
050E
C037
e029
4001
0003
014A
0125
0153
0123
0000
4C20
C400
C03C
1890
4C20
7104
06C2
E204
0657
4eoo
0028
4C18
080E
0000
0400
0000
1400
0050
C8EC
06FE
0605
E407
OOlA
0605
C5C7
40E5
C806
0000
C8FA
902E
9100
0171
0040
0000
0795
0000

0580
0103
1008
4 j .00
0'.00
801E
107E
OlOE
009A
0078
008E·
0001
0099
0584
OOOF
0480
CitOO
05F9
7202
40C5
41OC6
0650
0516
4COO
0666
CIOI
0000
0035
0000

oeoo COO a
6170 6DOO
08C9 1890
6600 FlEC2
1203 11)F4
OOEE 710FC
0400 0lD2B
FEC5 140C
1009 C,'tCC
013E 11000
10FC ceco
IS90 4"'t00
95CO CE9!!
OCCO cacc
OSEO C'tOO
C009 0600
OE9B O!JCO
OHO DltCC
4C1S C919
00F2 1400
C400 CSCA
C4CO C~66
0566 CECO
OCCO coce

COOO
007S
0400
4CI0
C400
70El
C400
08C6
0030
1810
08C8
00F2
4C 18
0000
0030
0030
OE96
OD2B
7201
OOI::E
0400
9600
OEbE
0000

CCCO
1000
08C6
CS43
0028
6301
08C9
"7000
COSO
0600
44CO
7400
08CB
CCOO
0400
C002
ceco
C400
10F8
"10FO
0028
OE6C
1:902
ecco

OCCO
61FB
4400
6600
E400
C400
IS90
CC54
C600
002E
00F2
OOEE
10CO
OCOO
002B
0600
OSC8
OSC9
0400
7101
1401
4C18
4eoo
CCOO

cccn
C500
OCF2
FEce;
OSBA
440n
S600
OE6C
06CO
74CO
70FO
ocon
OeOn
COFl
OC2E
4400
1890
OC71
7COl
002B
094F
0666
ccon

OOCO
OE96
7400
C4CO
EeOO
0700
00F2
OE6E
gOlF
002F
OOEE
6600
7112
OOCO
lS90
eooo
00F2
4400
6305
1002
C400
7204
OCCO
OCCC

0000
9500
OOEE
0889
OD30
088B
1400
0051
4S20
0600
70FO
0.138
4528
0140
4400
0.600
7400
0;OF2
4400
4COO
OSC9
10FS
0000
CCCO

0000
OE9B
10FO
S6CO
04CO
72C3
OOEE
95CO
70F3
0030
73FF
COil
FOeO
0001
00F2
002F
OOEE
1400
0601
0805
1890
71 Cl
OOCO
COCO

C4C9
07C8
4400
OE6C
12FC
009F
oeBE
4400

C540
C409
C400
70f-A
7204
OE96
OEC3
1010

4040
(9E5
OE76
4400
1000
0600
1:600
C4S0

UCI
C540
4C20
OC45
0600
OE9B
CECS
OC06

09E3 40E2 07e5
44C(' OC91 COE4
OUq 6204 4COO
62F~ C6CO O.A33
OEAO C400 OA46
Dt:OO OEAO 0600
Ct:O(1 CECO 7201
C4el") 06B5 4400

CHO
1890
OBS7
o6CO
1004
OEAA
70E4
06BA

C9E5
E840
0766
7201
7004
1:600
1:600
CBD

COOO
0000
400F
4C 10
6500
6500
1001
00t-2
0324
0070
0095
009B
00 IF
052E
Ob56

OC2~

4elO
4eZ8
7010
003F
6700
1201
0000

1200
180A
0014
0039
0009
0400
053A
OHE
0000
OlEO
0000
7e50
0000
C09C
4C28
0685
OFBI
1090
7301
01C5
0609
0663
4400
05C4
6302
OOOE
C8fC
6306
0000
70FO
00F8
OlE 1
0724
0603
C5E2
flF4
0609
40C3
C4C5
OlE 1
0000
OE6C
0795
0795
OOlB
72FB
0000
7301
0000

7001
1086
1002
0764
6500
0008
0080
onc
009C
0782
0118
032F
0132
7008
05C6
65CO
0827
4C20
70E9
4007
4009
0663
0730
C902
4074
6580
0900
401t4
05C6
C008
C400
74CO
0732
4009
E2C5
40E2
40C3
C109
C440
4400
OOCO
C8F3
693C
9101
0000
63F8
4t80
70F9
0000

7038
4014
1086
9540
057E
4074
054A
OOOC
0140
012F
014e
0008
014A
e003
4C08
OF80
9029
05F9
C400
e lE4
07C 7
0663
7400
oeoo
C400
067A
COfC
COC8
6180
4480
0570
0036
0012
C5C3
C440
E8E2
0605
E309
0000
OlEl
0000
7002
6B31)
4C08
002C
10AO
0171
10AC
0000

C600
1008
02FE
616E
C400
COIC
C500
0000
009C
006F
0092
OOCF
0051
90AE
05C4
6208
4C20
72IA
0685
40C3
40C3
0630
0036
055C
0034
62F2
1890
0400
1810
0688
9400
70Fo
0440
0609
OOOA
E3C5
E309
C9C4
C014
4CSO
0000
0000
63F8
0791
0001
0821
C200
70E9
0000

0550
0020
0119
6000
007C
802e
054A
COOO
0000
07FE
0000
OlEO
106A
4C20
C400
CI00
05E2
7001
4400
0709
C505
0663
70FO
C9F6
4C18
C600
4400
0018
0500
C400
0559
4C80
fl Fl
C440
0440
0440
0603
C7C5
0015
0730
COOO
eSF2
C200
7102
0045
C200
90E9
0000
0000

0000
4C18
C400
OE6E
0028
lOlA
10FO
OE96
C600
72FO
1000
8600
0000
002A
1400
COO A
70FO
OOEE
C600
4400
4400
70EA
0000
0000

0000
0924
0020
0400
C400
C400
7301
4C20
OE6E
1010
C700
0030
0000
0002
OOEE
0400
C500
70FO
0059
016E
00F2
0400
OCOO
COOO

0000
C500
1004
OS89
08e9
0028
C400
OS4S
003E
62F8
OSBB
OOOE
0000
6AF9
70FO
0030
0032
62FB
0600
C400
7400
0071
0000
0000

OOCO
0032
04CO
9500
lS90
E4CC
OOZB
7203
C5CO
lS10
04CC
COOE
OOOC
CODA
6600
COOS
EOBB
C5CO
0054
OE8F
OOEE
6306
0000
OOCO

0000
0400
OS89
OE98
440C
08B8
0700
7003
OE96
0600
0028
9600
0000
90F1
0139
0400
4eOS
OEU
CCOO
4C08
70FC
4400
0000
0000

02S0
0028
9500
4C10
00F2
ECOO
OS8B
C049
003C
OOH
e4CO
0030
0000
DOH
6AE6
002F
0924
9600
oses
0038
6600
0601
0000
0000

0121
C400
OE98
0843
7400
0030
6600
0056
1600
7201
08e9
OOOB
0000
4CIO
6203
C5CO
ECOO
006S
4400
6iFD
FEtO
6500
0000
COOO

4040
C600
0400
OEA5
0400
0600
62F4
1010

OC1
OA2E
OOEO
7201
OE8A
OEAF
C600
04S0

09E3
4400
6600
70FA
6ZFC
0600
00B3
0006

40C1
OC03
FECO
66S0
lS10
OEB4
12C 1
C4CC

E5Cl
COAO
C600
OCF3
0600
0600
70FC
OA1C

C903
4C20
OFAE
e500
00A4
OEB9
44CO
4400

4040
OAB5
0600
OA2S
0600
0600
096A
06BA

oon

0000
4't00
0109
E309
0109
0"40
C9E3
CI03
06(9
HOO
0000

oeoo

••••••••••••••••••••••••••••• F •• t·
• •••••••••• C••••••• • J •••••
.Y.J ...... ~ ••••• • • • '• • -e • • • • • n _ •
·O ••••••• w • • • • • • • • • • • • • • • • • • I .... •
•••••••••••• MH./ • ••• M•••••• -O .... •
•••• •• ••• •• •• H./ • • • • • • 114 • • • • • • H • •
••••••••••• ~ ••• H.I • •• =..... ,..E .... •
• ••••• 2 ........................... •
• ••• L•••••••••••••••••• : •••• I •• o • •

•....

• • • 41 • •

•............•....•..............•
•

•••••••••••••••••••••••••••••• 0 ••

•••••••••••• ( ••••••••••• t •••••••••
•••••••••• 1 •••••••••••••••••••••••
•••••••• R••••••• R ••••••••••• L •••• •
••• O ••••••• ~ ••••••• O•••••• F ••• OD.·
••••••••••••••• ~ ••••• M•••••••• Q~ ••
• •• l.0 •• Q••••• 80 ••••• 0 ••• Q•••••• S.
·.2 ••••••• V.3H •••••••• 9 ••••• 9 •••• •
•••••• JO •••••••••••••••••• lO ••••• •
•••• •••• J ••••••
J08 EJE PAU CI3R.
TYP TEN XEQ OUP ASI" FOR RPG CI:N.
• COB.O ••••••••••••••• ) •••••••••••

•

•

.1 ••••• H•••• 2 •••••••••••••••••••• •
••• " •••••••••••••••••••• 01 ••••• 16.
•••• - •••••••••• D••••••••• .0 ••••••
••• M••• I ••••• Q.A •••••••• 2F ••
••• O••••••••••••••••••• H.R ••••••••
•• 2 •••••••••••• 1" ••• "' ••••• •• HM ••• •
•••••••••••••••••••••••••• F/ ••• N••
• •••••••• M••• H••••••••••••••••• D.·
• ••••••• l ••••••••••• t •••• O•• • •••• •
•••• FO ••••••••••••• H••••••••••••••
•••• ~G •• O v ••• O••• O•••••••••• M 1I·
INVALID MONITOR CONTROL RECORID •
••• M 12 EXECUTION SUPPRESSED • • 1111
·13 OUP SUPPRESSED •• M 14 SYSTEIIol •
.PROGRAM DETECTED .. ONITOR CONTR'CL.
~ 15 ILLEGAL CARTRIDGE.
• RECORD
10 •• M 16 PROGRA~ VOIDED

•....

•

•

..

......•
•• ••••••• 2 •••••••••• H ••••••••••••••
•................................•
* ••••....•

•••••••• H••••• H3 •••• H2·

•••• 2 •••••••••••• 8 ••••••••••••• B••
• •••••••••• 8 ••••••••••••••••••••••

·.8 ....................

$

••••••••• •

•••••••••••••••••• 0 • •••••••• {J.B.·
·.9 •• Y•••••••• 1 •••••••••••••• B.~Z·
• ••••••••• 9.V8 •••••••••••• 9 ••• l •• •

•........••..•...•••..........•..•

•••••••••••••••••••••••••••••••

$

••

·I ••••••• I.E ••••••••••• E••• M••• D.·
•• I •• M•• F ••• 2 •••••• 0 ••••• M••••••••
• ••• B••••••• EO ••••••• M••••••••••••
• ••• 40 ••• U••••••• M••• 0 •• I ••••• 2 •• •
• •••••••• O••• P ••••••• O••• U••••••••
• M••• 0 •• I •••• _.2 •••••••• 0 ••• p ••••••

·.E ••• F •••••••••••••••••••••••••••
•• RO •••• &F •••••••• 3F ••••• E ••••••• •
• •••••• 0 ••• 0 ••• 0 ••••••••••• 0 ••••• •
• ••••• H••• 2 •••••••••• G••• ~ •• ~. 0 •• I •
• ••••• 2 •••••••••••••••••••••••••• •

•...............

• •••••••••••••••• 0 •••••

& ••••••••• •

••••••• 9 ••• 7.6 •••
••• 0 ••• M•••• 3 ••••• 2 ••••••••••• W•••
•• RO •••• KO ••••• C••••• M•••• QM ••• E.·
••• N •••••• H••• 2 •••••• E ••••••••••••
••• M••• 0 •• I ••••• 2 •••••••• E ••••••• •
• ••••••• SM •••••••• JF ••• O•••••• H•••
·.2 •••••••••••••••••••• 0 ••••••• 1.·
·0 ••• M••••••• 0 •• I ••••• 2 •••••••••• •
·O •••••••••••••• S •••• M•••••••• J •••
••••••• R •••••••••••••••

•................................•
CART SPEC
CART AVAIL •
·ORl"VE
.PHY DRIVE ••••• U•• F ••••••••••••••
d

••••••••••

• •••• O••••••••••••• M••••••• F ••• C.·
•••••••••• ~ ••• F ••• 0 •••••••••• 3E ••••
• •••••••• O••• O••••• M•• a •••• O••• c.·
• •• o ••• o ••• c ••• ( ••• O••• O••• O••• (.·
••• 0 •• CO •• HC •••••• ~.40 ••••••••••• •
••••••• M••• D••••••••• Mr •• O••••••• •

flCDR • •• 0

OBOO
OAIO
OB20
OA30
OB40
OB50
OB60
OA70
OElBO
OB90
OElAO
oeeo
OBCO
OBOO
OBEO
OAFO
0(00
OCI0
OC20
0(30
0(40
OC50
0(;60
OCTO

OC80
0(90
O(AO
OCBO
OCCO
OCoo
OCEO
OCFO
0000
0010
0020
0030
0040
0050
0060
0070
0080
0090
OOAO
OOBO
00(0
0000
OOEO
OOFO
OEOO
OElO
OE20
OE30
OE40
OE50
OE60
ono
OE80
OE90
OEAO
OEBO
OECO
OEOO

(400
O(AE
70Fl
(4CO
6eco
0032
OA4A
0000
8070
C6eo
6038
E 5C 1
(140
40C9
C903
05C6
0658
4418
OClO
OB87
2222
OB86
0059
05CO
C600
OCCO
CIOO
1890
7404
CB07
4040
4040
8015
FFF7
OCOO
oe02
0006
OOOA
oeOE
0012
0022
0026
002A
002E
0032
0036
0051
0055
0059
006E
0072
0079
0070
0081
ooac
0000
CCOO
oeoo
0000
0000
0000
OCCO

·.·1

CA7l)
6200
4400
CA411
CCF3
C500
1890
OCOO
4CI0
GBA2
COCC
(903
C4E4
C440
CIC2
040
0658
CC2e
6A22
(:560

CA7C
7205
402e
CEAf
C081
CA97
C200
C027
C019
4400
4040

4040
BOIS
(:600
COCC
llOE
C10E
1A06
7A06
CE6E
1A34
lA34
7A34
7A34
7A34
7A34
106A
0282
C284
04FE
07FE
05BC
08B6
OAAO
COOO
eooo
COOO
5300
2222
0000
0000
eooo

•• ·2 ···3 ···4 •• *'i *·*6 *.*7 ···8 ***9 *.*A .··S **.C ***C ·**E .**F
4400
(6eO
CC ':11
1890
740B
OEAO
4400
OBFE
0886
4400
7001
CIC2
07U3
4040
03(5
C140
06~8

721'F
74H
OC42
COOO
1000
0500
(600
0500
695F
CI0l
0066
C500
OlEl
4040
0000
1008
COOO
COOO
05A2
03CO
OOOE
0248
0140
03CO
0500
03(0
0500
03(0
03CO
OCoF
OEJB
0525
02 FE
03EA
0403
01E8
0140
0132
0000
0000
0000
0011
0000
0000
0000

CCAF
CA2E
COOl
4400
CCF3
C5CO
COF2
4CCO
9C1"
C6BA
CBA7
03(5
C90
CC17
40C3
E2E8
CA90
70n
OC44
6203
COOl
693C
OE9S
C072
OEO
6A5F
C201
62EA
CA28
7400
4C40
0002
7201
4C80
0000
OOOB
0010
C02E
C036
0040
C04F
005B
0069
0077
0087
C092
0090
00C9
0103
0119
0125
0136
0140
0145
014A
COCO
COOO
COOO
COCO
COOO
COOO
COOO

7101
4(28
1890
00F2
lCOO
009A
7400
0005
0500
C068
oeeB
4CC3
(lE3
E7E1
C109
E2E3
C83B
7021
1000
4COO
CCOI
(030
(600
0500
C600
C6CO
(102
CC3C
4C30
0036
4040
0011
70Ft!
0(f5
OCOO
OC03
0007
OCOB
OOOF
OOlF
0023
0021
0028
002F
C033
OC37
0052
0056
005A
006F
0073
OOlA
007E
0082
0080
OCOO
oeoo
OCOO
OCOO
0000
OCOO
OCOO

Icer C500 OA28 4e 18
C~8(, 4(OB OBIC 9'5CO
Cl;on OA2E 4400 OC03
740() OOEE 70FO 44CO
04C(' OCF4 1810 44CO
7101 70F6 C400 OEAA
OCEF 70FO (COO OE 36
oe6C (400 OBF( 0400
0~2R 6201 (600 OBA2
C4Cr) 009F D400 0071
0~03 OBEB 0013 E7E7
CI09 E309 C9(4 (7(5
(5C4 40E2 07(5 (J(9
E7E7 40C9 E2ltO C140
UO'" C9C4 C1C5 40C9
C504 40C3 CIo9 nC9
6 1BC 6A3C C039 4( 20
620B ,600 OA20 4( 18
COlO 9010 4C98 OC20
0~87 6580 OC42 6680
OCOO 62FB C500 OA26
ICOe 0039 (600 004F
CC6~ 0500 OEA5 C6CO
OEB4 C600 0077 4011
OC86 0500 OEC8 4(60
CA2E 04CO OCF4 C6CO
020? 7403 0(9F 6560
Ol:CO OCFl 7201 70FC
7eO? 74CA 0019 1404
7CfO 4(80 O(AF 7001
4C40 4040 4040 FOFO
OCOO 1890 6918 6A19
IBOR E811 01t80 0019
OOOCJ 0039 00(0 OOCO
0000 0000 0000 0000
210F 05A2 0010 0004
010E 05A2 OOZO 0008
7A06 0035 002F OOOC
7A06 0248 003A 0010
HOC 09Fl 001t1 0020
lA34 05CO 0052 0024
7A34 03FO 005F 0028
7A34 03eo 006C 002C
?A34 0500 0078 0030
7A34 03(0 008A 0034
lA34 05CO 0095 0038
OlDE OC(A 00A8 0053
0282 13E9 0005 0051
0280 05CO 0108 0058
07H 0528 011C 0070
0506 04F8 0129 0074
08B6 OlE8 013A 0078
OUO 0140 0142 007F
OBEl 0140 0146 0083
ooon 0113 0148 006E
CCCO 020B COOO OOCO
cco(' OOCO 0001 0001
ceoo 5300 0000 OOCO
2222 OOCO 0000 OOCO
0000 0000 0000 0000
OCOC' 0000 COOO OOOF
OCOO 0000 0000 0000

OB3B
OA28
(400
oe45
oeAF
0400
oeoo
002(
8074
C866
E7E7
40(9
C6C9
(ltE4
C440
C9(4
OC 15
OC10
C017
OC43
9600
0500
0068
0500
OC45
OA50
0(F2
1090
0019
OCOA
F IF 1
61H
7401
OCFO
0000
OlOE
OlOE
7A06
7A06
7A34
7A34
7A34
7A31t
7A31t
7A34
788E
0282
0282
0282
07FE
01t00
0886
OAAO
08B6
0000
0000
OlOA
0000
0000
0100
0000
0000

4001
4C96
OCF2
70C5
7101
0005
Oloe
(OF5
040C
OCOO
40(9
C440
C5(4
0703
4040
C7C5
6205
9025
4C20
1810
0068
OE91
401F
OE89
COOO
0500
6680
4C18
C029
0016
4040
62FE
0019
0000
0140
03eo
05A2
0008
0248
0500
03CO
03CO
0500
0500
0280
03eo
04AC
OA68
0604
0280
0189
OlE8
0140
01E8

alIa

OCOO
6COO
OCOO
0238
0000
CCOO
COOO

7015
OBOC
100C
61F5
70FO
(400
4009
4(98
0019
OOAlt
E240
0017
40C3
(9C3
OOOF
OB70
(600
4418
oeH
0600
4C18
C600
0500
(600
1004
009F
OCF3
OC(6
4029
4040
4040
OOlC
1810
0000
0003
0015
0025
0030
003C
0049
0056
0063
006F
007F
0080
0099
00B3
00E5
0100
0121
0120
OBe
0143
0147
014(
0000
COOO
0530
0000
0000
COOO
0000

OA26 6600
7201 1coe
8400 OE6C
C5CC OA39
61FB (500
OA3B 0400
74C 1 09AC
0875 440C
e5CO OA26
(065 0400
0506 E 34C
E7E7 E7E7
el09 E309
(lE3 (5C4
E'1E7 E 7E7
OOE6 8800
OA21 4C18
OC20 72FF
6580 OC43
OA2E C802
OC51 7201
0054 0500
OeAA C600
007C 400C
1804 E802
6580 OeAE
4C80 0(91
7402 0019
7404 0019
401t0 404C
404C 4040
1810 1084
OOOB 7101
0000 0000
0001 7C5C
00C5 41DE
0009 alOE
0000 7782
0011 OlOE
0021 7A34
0025 7A3it
0029 7A34
0020 7A34
0031 7A34
0035 ?A34
0039 766E
0051t 0282
0058 0282
005e 0282
0071 07fE
0018 OlEO
OOle 0886
0080 OAAO
0084 OAAO
014C 0001
0000 0000
COCO 0000
OOCO OCOC
OOCO OCOC
0000 0000
OOCO 0000
0000 0000

OA5B
7403
04CO
4C18
OEC3
002B
4C80
003F
4400
00A6
(105
40C9
(9C4
40C1
40(9
0001
OC12
70F7
6202
4e80
70F8
OE96
0060
0500
4C80
6600
OA5E
C033
C024
4040
FOFO
9016
70EB
0000
032F
0548
0500
087C
0280
0280
0280
03CO
0500
0404
03eO
0140
1548
19FD
06F6
0280
0782
01E8
0140
0140
0000
0000
0000
0000
0000
0248
0000
0000

6EOO
oeAE
002B
OB4A
0500
(400
09AO
FFFE
OCF5
4005
40(1
E240
C7C5
E5C1
E240
CF01
9030
7016
4COO
OC03
4COO
C600
40lA
OEBE
OC8A
COA7
OBItA
4035
4025
4040
FOF2
4808
65CO
COOO
0008
C016
002A
0031
003E
0040
0059
0066
0073
0083
008F
009C
0087
COEE
0113
0123
Ol2F
OBE
o lit 4
0149
0000
0001
0000
0000
01C8
COOO
0000
0000

OFAO OCCO COOO COOO COCO oeoo cccn ooco COOO OOCO 0000 CCOO COOO OOCC OCOC 0000 CO 50
OFBO 0000 COOO 0000 0000 OCOO ceon 0000 0000 0000 0000 0000 0000 OOCO 0000 0000 0000
lFFO OCCO COCO 0000 0000 OCOO OCOo 0000 0000 0000 0000 CCOO 0000 0000 OOOC 0000 2000
2000 OCCO COOO 0000 OOCO OCOO OCCO OCCO 0000 0000 0000 COOO 0000 OOCO OOOC 0000 COOO
3FFO eeoo COOO 0000 COCO OCOO ocon OOCO OCOO COCO 0000 OCOO COOO OOCC OCOC COCO 4000

*0 •• ' •••••••• E ••••••• ••...... s .. •
••••• F ••••••••••••••••••••••••••• *
•• 1 •••••••• F••••••• 0 •• 2 •••••• M••••
·0 •••••••• 2 ••••••••••• E/5E ••••••• *
•••• 3 ••• 3 •• ~ •• 4 •••••••• ~0/.E •• CN ••
* •• E ••• N•••••• 60 ••• ~ ••• 0 ••• M••• C.*
•••••••• 2 ••••••••••••••
• ••••••••• N •• 0 ••• M•••• 5 •••••••••• *

......•..•

••• •••••• N••••• F••••• M••• E•••••• 5.
.F ••••••••• ~ ••• ~ ••• H••••••• M••• N*
.- •••••••••• l •••• XXXX IS NOT AN A*
*VAllABLE CARTRIDGE 10 •• xxxx IS
*A Ot,.PlICATEO SPECIFIEO LARTRIOGE.
•• XX)CX IS A DUPLICATED AVAt
to
•• xxxx IS •
.llABlE CARTRIDGE 10
.NOT A SYSTEM CARTRICGE ••• W••• ~ •••
••••••••• Q ••••••••••••• F ••••••••• *
•••••••• 7 •••• F •••••••••••••••• 7 •••

•

•

•....................... ........•
~

••••••••••••••••••••••• O~ •• H••••••

..
............. ....... ....•

• ••• • •••••••••• E •••••••••••••• 8 •••

* •••••••••••••• F ••• N••• F ••• N••• F ••
* •• .N ••• F ••• N••• F ••• • N••• F •••
.N ••• F ••• N••• F ••• .N ••• F ••• .N ••••
.F ••• N •• CF ••• N •• H•••••••••• Y ••••••
••••••••• F ••• M•• 4F •• tN ••••••••••••
.A.K.A.K.A.K •••••••• 2 ••• 3 •••••••••
• •••••••••• C•• 1 ••••••••• F ••••••
••••• E •••
.H •••••••••••••••••••••
0011
0002·
/
• ••••••••• 6 •• Y.~ ••••••••••••••••••
·.7 ••••••• 5 ••••••••• 0 •••••••••••••

••

..........•... ..........•.••

•..............•.•.... ••••• t •••••
•.............................•..•
•••••••••••••••••••••• Q •••••••••••
•..........................•.....•
•••••••••• 4

•••••••••••••••••••••••

•..... . ••••• 1 ••••••••••••••••• 1•
•................................•
0 •••••••••••••••••• •
•......•...•••...•......•........•
•........•...•........•.•....•...•
•...............•................•
•..........•................•. ...
•••••••• $ •••••

•..........••••..•......•...•....•

• ••• ~ ••• I ••••• l.N ••••••• y •••••••• •
• ••••••••••••••••• S ••• " ••• • ••• 6 •••

•..........•••..........•........•

•••••••••••••• 8 •••••••••••••••••••

....... ....... ...
•... .. ••••• S. • •••••• v••••••• ..•
•......................... ......•
•...........................•....•
•...•......•...•••... - ......•....•
• ••••• l ••••••• y ••••••• y ••••••• y •• •

••••.• v.

• a •••

•...•........•...•..•..••.••••••••
•............•....•.....•..•...•.•
•..........•...••..•....•..•.....•

• ••••••••••••••••••••••••••••••• H.

• • • • • • • • • • • • • • • • • • • • • • • • • • • • • ft • • • •

•.•....•....•...........•..•.....•

••••••••••••••••••••••••• G •••••• , .

..

•.......•...............•..•..••.•
•...........•..•.•......•.....•
•

••• 0 •••••••••••••••••••••••••••••

Core Dump

F-3

F4

Appendix G. Resident Monitor (Including Table of Equivalences)

The contents of this appendix are not to be construed as an external specification; that is,
the locations in this listing may be changed. $PRET, $IREQ, $EXIT, $LINK, and $DUMP
are the only locations that are guaranteed.

Nete. In the following listing of the resident monitor, = is equivalent to #, and'
(apostrophe) is equivalent to @. The items noted in this listing identify locations discussed
throughout the text of this publication.
1/ JOB

LOG DRIVE
0000
V2 "'11

CART AVAIL

CART SPEC

3333

3333

ACTUAL 32K

PHY DRIVE
0001

CONFIG 32K

1/ AS,",

*u ST
>I<)(REF
COOOI
00002
00003
00004
OOOOS
00006
COO07
COOOA
00009
00010
COOll
COO12
0.0013
00014
COOl')
r.0016
r.0017
OOOIA
00011
00020
00021
00072
00023
00024
0002S
00C26
00027
r.002A
00029
eOOH)

roo::n

r0012
C003'1
00034
:JOOV-'
C0036
eOOH
()003A
00031
00040
COO/.1

00042
C0043
(;0044
C()()4o:,
COO46
(0047
0004f1
C0049
r,0050
eOO51
CCfJ'>'2
1'00,>3
000')4
COO<;S
00(156
00057
000511
C0059

>I< RLTV ADDR>I<
>I<
0-3
4-5
•
6
•
1
•

•
•
•
•
•
• 89
•
• 10
'"
•'"

••
'>I"<

'•"

13
14
IS
16
17
lA
19
20

• 21
•'" 22
• 23
• 24
• 2<;
26
'"
•'"

•
•,.
•,.
•
•'"
•
•
•'"
•
'"
'"

•
•
•

27

211
2'1
30
31
'\2
B
~1-34

35
36
H
311
39
40
41
47

•

43

•'"

44

'"

('ooon

00061
C0062
0006'\

11
12

45
46

•

47

SYMBOL>I< DESCRIPTION
>I<
RESERVED FOR EVEN BOUNDARIES
NAME OF PROGRAM/CORE LOAD
=NAME
BLOCK COUNT OF PROG/CORE LOAD
=DBCT
·FILES SWITCH--ZERO MEANS NO
=FCNT
FILES HAVE BEEN EQUATED
SYS/NON-SYS CARTRIDGE INDR
=SYSC
;JBSW • JOBT SWITCH-- NON-ZERO MEANS
TEMPORARY "'ODE
CLB-RETURN-TO-OUP SW ITCH-=CBSW
>I< lE~O=CLB RETURN TO SUPV
=LCNT
NO. OF LOCALS
'" CORE'
MAP SWITCH--ZERO MEANS
'" =/.APSW
DO NOT PRINT A CORE MAP
=MCF1
NO. DUP CTRL RECDS (MODIF)
=MOF2
AOCR OF MOOIF BUFFER
=NCNT
NO. OF NOCAlS
=ENTY '" RLTV ENTRY ADDR OF PROGRAM
1442-') SW (0=1442-S ON SYSTFM
=RP61
, TC' WORKING STG DRIVE CODE
=TODR
=FRDR
'FROM' WORKING STG DRIVE CODE
'
"
=FHOL
ADDR OF LARGEST HOLE IN FXA
BLK
CNT OF LARGEST HOLE IN FXA
• =FSlE
2-10
ADCR. OF LAST HOLE IN UA
=UHOL
ALK CNT OF LAST HOlE' IN UA2-10
=USlE
SW--NON-lERO=DUP
CALL
=OCSW
OUP CAll
=PIOD
PRINCIPAL I/O DEVICE INDICATOR
=PPTR
PRINC. PRINT DEVICE INDICATOR
RLTV AeDR IN 'STRT OF CIL AODR
=CIAO
AVAILABLE CARTRIDGE: INOICAT2-2
=ACIr-.J
22'jO INDICATOR
=GRPH
2G2
2G2
=GCNT
NO. G27S0 RECORDS
LOCAL-CANNOT-CALL-LOCAL Sw 2-2
=LCSW
2-2
=X3SW
SPECIAL IL S SWITCH
2-4
=ECNT
NO. OF .EQUA.T RCOS
RESERVED FeR FUTURE USE
2-2
=ANOU
I+BLOCK ADOR OF END OF USER
AREA (ADJUSTED) LOGICAL OR 0
l+BLOCK ADDR OF ENe OF USER
AREA (ADJUSTED) LOGICAL OR 1
l+BLOCK AD OR OF END OF USER
AREA (ADJUSTED) LOGICAL OR 2
l+f1LOCK ADDR OF END OF USER
AREA (ADJUSTED) LOGICAL OR 3
l+BlOCK ADD~ OF END OF USER
AREA (ADJUSTED) LOGICAL DR 4
l+flLOCK ADDR OF [NO OF USER
=BNOLJ
AREA (t3ASE) LOGICAL DRIVE 0
l+flLOCK AODR OF END OF USER
AREA (BASE) LOGICAL DRIVE 1
l+PLOCK AODR Of- END OF USER
AR[A (BASE) LOGICAL CRIVE '2
l+BLOCK AooR OF END OF USER
AREA (BASE) LOGICAL DRIVE 3
l+f\LOCK AoOR OF END OF USER
AREA (BASE) LOGICAL DRIVE 4
PROTECT ACDR, LOG ICAL
'" =FPAO FILE
DRIVE 0 (BASE)
FILE PROTECT AOOR, LOGICAL
DRIVE 1 (BASE)
F I t.F PROTECT ACDR, LOGICAL
DRIVE '2 (BASE)

•
•
•
•

•
•
•
'"

•
•

•
'•"
•

•

•
•
•

•'"

•
•

'"

'"

•

•
•'"
•
•
•
•
•
•
•
•

•
•

•

'"
•'"
'"
'•"
•'"
'•"
'•"

•'"

•'"
•

•

'•"

•

'"

,.
•'"
•

,.'"

•
•
•

•

'"
•

••
•
••
••
•

PMNOOOIO
PMNOOO20
PMNOO030
PMNOOO40
PMNOO050
PMNOO060
PMNOOO10
PMNOO080
PMNOO090
PMNOOIOO
PMNOOllO
PMNOO120
PMNOO130
PMNOO140
PMNOO150
PMNOO160
PMNOOI10
PMNOO180
PMNOO190
PMN00200
PMN00210
PMNOO220
PMNOO230
PMN00240
PMN00250
PMN00260
PMNOO710
PMN002AO
PMNOO290
PMN00300
PMN00310
Pfo!N00320
PMNOOHO
PMNOO340
PMN00350
PMN00360
PMN00310
PMN00380
PMNOO390
PMNOO400
PMNOO410
PMNOO420
PMNOO430
PMN00440
PMN004S0
PMN00460
PMN00410
PMN00480
PMN00490
PMN00500
PMN00510
PMNOO520
PMNOO530
PMNOOS40
PMN00550
PMN00560
PMN00510
PMNOOS80
PMNOO')90
PMNOO600
PMNOO610
PMNOO620
PMNOO630

DCOM
moniwr
system
parameters

DCOM
cartridge
parameters

Resident Monitor (Including Table of Equivalences)

G-I

Resident Monitor Listing

000<'>4
COOb'i
COOflfl
C0067
00()6A
(:0069
00070
00071
COC72
00071
00074
00075
00076
(JOO 77
0007A
OOON
COOAO
OOOAl
0008?
C0083
000A4
000B5
000A6
00087
000B8
00089
00090
00091
00092
00093
00094
0009')
00096

oooen

00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
001L0
0011l
00112
OOl13

*

FILl' PROTFCT ADDR, LCGICAL
CRIVE 3 (BASEl
FILF PROTECT ADDR,LOGICAL
DRIVE 4 (BASEl
CARTRIDGE 10, PHYSICAL DRIVE 0
CARTRIDGE ID, PHYSICAL DRIVE 1
CARTRIDGE 10, PHYSICAL DRIVE 2
CARTRIDGE 10, PHYSICAL DRIVE 3
CARTRIDGE 10, PHYSICAL DRIVE 4
CARTRIDGE IC, LOGICAL DRIVE 0
CARTRIDGE 10, LOGICAL DRIVE 1
CARTRIDGE ID, LOGICAL DRIVE 2
CARTRIDGE ID, LOGICAL DRIVE 3
CARTRIDGE ID, LOGICAL DRIVE 4
SCTR ADDR OF CIB, LOGICAL DR 0
SCTR ADDR OF C18, LOGICAL OR 1
SCTR ADDR OF CIB, LOGICAL DR 2
SCTR ADDR OF CIB, LOGICAL OR 3
SCTR ADDR OF CIB, LOGICAL OR 4
SCRA, LOGICAL DRIVE ~
SCRA, LOGICAL DRIVE 1
SCRA, LOGICAL DRIVE 2
SCRA, LOGICAL DRIVE 3
SCRA, LOGICAL DRIVE 4
FORMAT OF PROG IN WS, DRIVE 0
FORMAT OF PROG IN WS, DRIVE 1
FORMAT OF PROG IN WS, DRIVE 2
FORMAT OF PROG IN WS, DRIVE 3
FORMAT OF PROG IN WS, DRIVE 4
FLET SCTR ACDR, LOGICAL DR 0
FLET SCTR AGDR, LOGICAL DR 1
FLET SCTR AGDR, LOGICAL DR 2
FlET SCTR AGDR, LOGICAL DR 3
FlET SCTR AGDR, LOGICAL DR 4
lET SCTR AOOR, lOGlCAL DR 0
lET SCTR ADOR, lOGICAL DR 1
LET SCTR ADOR, LOGICAL DR 2
lET SCTR AOOR, lOGICAL OR 3
lET SCTR AOOR, lOGICAL OR 4
BlK CNT OF PROG IN WS, DRIVE 0
BlK CNT OF PROG IN WS, DRIVE 1
BlK CNT OF PROG IN WS, DRIVE 2
BLK CNT OF ~ROG IN WS, DRIVE 3
BLK CNT OF PROG IN WS, DRIVE 4
SCTR CNT CUSHION,LOGICAL DR 0
SCTR CNT CUSHION,LOGICAL DR 1
SCTR CNT CUSHION,lOGICAL DR 2
SCTR CNT CUSHION,LOGICAl DR 3
SCTR CNT CUSHION,lOGICAL OR 4
RESERVED FO~ FUTURE USE

PMN00640
PMN00650
PMN00660
PMN00670
PMN006AO
PMN00690
PMN00700
PMN00710
PMN00120
PMN00730
PMN00740
PMN00750
PMN00760
PMN00710
PMN007BO
PMN00790
PMN00800
PMNOOBIO
PMNOOB20
PMNOOB30
PMNOOB40
PMNOOB50
PMN00860
PMNOOB70
PMN00880
PMN00890
PMN00900
PMN00910
PMN00920
PMN00930
PMN00940
PMN00950
PMN00960
PMN00910
PMN009ao
PMN00990
PMN01000
PMNOIOI0
PMN01020
PMNOI030
PMNOI040
PMNOI0,)0
PMNOl060
PMNOI070
PMNOI0BO
PMNOI090
PMNOll00
PMNOllI0
PMNOl120
PMNOl130

.*.* •• *.*** ••••• ***** •• *•• *.* ••• * •••• *.*.*** ••••• *.

PM~Oll50

4f1

*
*
*

50
51

•

'i?
'i'l

*

49

• 54

*

'i5

• 56
• 57

•
•
•
•
• =PCID •
•
•

*

*
*

*

•
=CIDN
•
•

'iA

•
•
•
•
•

*

*

*
*
*

*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*

*

59
60
61
62
63
64
65
66
67
6A
69
70
71
72
73
74
7')

76
77

78
79
80
81
82
83
84
85
86
87
88
89
9C
91
92
93
94
9')-319

• =CIBA

•
•

*
*
*
*

•

•

=SCRA

*

*

*
•

*

*
*

*
*
*
*
*

*
*

•

=F~AT

*

*
*
*
*
*

• -FLET •
•
•

•

*

•
•
•
•
• -UlET •

•

*

•
•

*
*
*
•
•
*
*

•
•
-WSCT

*
*
*
*
*
*

-CSHN •
•

•
•

•
•
•
•

RESIOENT "'ONITOR
0011 5
00116
00117
OOllR
00119
0012.0
00171
00122
00123
00124
00125
00126
00127
00l2A
00129
00130
00131
00132
00133
00134
00135
00136
00137
00138
00139
00140
00141
00142
00143
00144
00145
C0146
00147
0014fl
00149
00150
00151
00152
00153
00154

G-2

•
.STATUS-VERSION 2,
•

• PMN01160
* PMNOll70
• PMNOI1AO
.FUNCTIO~/OPERATION* PMNOl190
•
THIS SFCTleN ALWAYS REMAINS IN CORE. IT
* PMN01200
•
IS COMPRISED OF THE CO~MUNICATIONS
• PMNOl2l0
AREA (COMMAI, THE SKELETON SUPERVISOR, ANC
• PMN01220
A DISK 1/0 SUBROUTINE, NO~INALLY DISKl. (TH[ • PMN01230
FIRST TwO OF THESE SECTIONS ARE INTER~IXEC.) • PMNOl240
COMMA CONTAINS THE SYSTEM PARAMETERS REOUI~- • PMN01250
ED TO FETCH A CORE LOAD IN CORE IMAGE FORPMN01260
MAT. THE SKELETON SUPERVISOR PROVIDES INPMNOl210
* STRUCTIONS
FOR INITIATING A CALL EXIT, A
• PMNOl2AO
CALL LINK, A DU~P-TO-PRINTER OR A CALL TO THE. PMNOl290
AUXILIARY SUPERVISOR.
IN ADDITION, THE SKELE-. PMNOl300
TON SUPERVISOR CONTAINS SEVERAL TRAPS FOR CER-. PMNOl310
TAIN 1/0 FU~CTIONS/CONDITIONS. THE CISK 1/0
• PMN01370
* SECTION
CONSISTS OF A SUBROUTINE FOR READING * PMN01330
FROM OR WRITING ON A DISK CARTRIDGE ON A
• PMN01340
GIVEN LOGICAL DISK [RIVE.
* PMN01350
* PMN01360
PMNOl370
.ENTRY POINTSPMN013AO
* • SPRET-A TRAP FOR PREOPERATIVE 1/0 ERRORS.
*
PMN01390
•
THE CALLING SEQUENCE IS
*
BSI
L SPRET
• PMN01400
* • SPSTX-A POSTOPERATIVE ERROR TRAP FOR I/O
• PMN01410
•
DEVICES ON LEVEL X (X=1,2,3,OR 41.
• PMN01420
• PMNOl430
•
THE CALL I NG SEQUENCf IS
• PMN01440
•
BSI L SPSTX
* PMNOl450
•
• SSTOP-THE PROGRAM STOP KEY TRAP.
* PMN01460
•
• SEXIT-THE ENTRY POINT FOR THE EXIT/CALL
•
EXIT STATEMENT. THE CALLING SEQUENCE IS. PMN01410
• PMN014AO
*
LOX
0 SEXIT
•
• SLINK-THE ENTRY PCINT FOR THE LINK/CALL
• PMN01490
•
LINK STATEMENT. THE CALLING SEQUENCE IS. PMN01500
*
BSI L SLINK
• PMN01510
•
• SDUMP-THE ENTRY PCINT FOR THE DUMP/POMP
• PMN01520
*
STATE~ENT. T~E CALLING SEQUENCE IS
• PMN01S30
• PMN01540
•
BSI l
SOUMP

•

•
•

•
••
•

~ODIFICATION

lO

DeOM
cartridge
parameters

Resident Monitor Listing
00155
00156
00151
00158
00159
00160
00161
00162
00161
00164
00165
00166
00167
00168
00169
00170
00171
00112
00113
00174
00115
00116
00171
00118
00179
00180
00181
00182
001A3
00184
00185
00186
00181
00188
00189
00190
00191
00192
00193
00194
0019'>
00196
00197
00198
00199
002CO
00201
00202
002C3
00204
00205
00206
00207
0020A
00209
00210
00211
00212
00213
00214
00215
00216
00211
00218
00219
00220
00221
00222
00223
00224
00225
00226
00227
00228
0022'1

00230

cont

00232
00231
0023'.
002V5
e02~6

00237
0023R
00239
.00240
00241
00('4('
0024~

O()(,44
00245
00246

DC.
FORMAT
*
DC
LIMITl
•
DC
LIMIT2
•
WHERE LIMITl AND LIMIT2 ARE THE LIMITS'"
BETWEEN WHICH THE DUMP IS TO OCCUR. AND.
FORMAT IS A CODE INDICATING THE FORMAT'"
OF THE DUMP. IF FORMAT IS NEGATIVE,
•
THE AUXILIARY SUPERVISOR IS FETCHED
...
AND CONTROL PASSED TO IT.
•
... DlOOO-ENTERED WHEN THE CALLER WISHES TO
•
...
PERFORM A DISK I/O OPERATION. THE
•
...
•
CALLING SEQUENCE VARIES WITH THE
VERSION OF THE DISK 1/0 SUBROUTINE.
•
•
• SI200/SI400-ENTERED WHEN THE OPERATION...
COMPLETE INTERRUPT OCCURS ON
*
...
LEVEL 2/4.
~
•
·INPUT-N/A
•
>I<

•
•
...•
•
*
•
•...
•

•

*

•

.OUTPUT-WORDS 6-4090 SAVED ON THE CIA ON A CALL
...
DUMP

*
*
*

.EXTERNAL REFERENCES-N/A

•
•

...

•
...

*

·EXITS•
•
• NORMAL
•
•
.THE EXITS FROM THE SUBROUTINES AT SPRET •
SPSTl, SPST2, SPST3, SPST4, AND SSTOP
•
•
ARE BRANCH INSTRUCT[ONS FOLLOW[NG A
•
•
WAIT INSTRUCTION. SSTOP TURNS OFF IN•
•
•
TERRUPT lEVEL 5 AFTER THE START KEY IS
•
•
•
DEPRESSED.
•
.THE EXITS FROM SEX[T,SlINK,AND SDUMP ARE.
•
TO THE CORE [MAGE LOADER, PHASE 1,
•
•
AFTER THAT PHASE HAS BEEN FETCHED.
•
.THE EXIT FROM OZOOO [S BACK TO THE
•
•
•
CALLER AFTER THE REQUESTED DISK OPERA•
TION HAS BEEN [NIT[ATED.
•
...
.THE EXITS FROM SI200/S[400 ARE BACK TO
•
•
THE ADDRESSES FROM WHICH THE D[SK OP•
•
ERATION CO~PLETE INTERRUPT OCCUR ED
•
•
AFTER THE [NTERRUPT HAS BEEN SERV[CED
•
BY THE APPROPRIATE ISS.
•
•
•
• ERROR-N/A
•
•
·TAflLES/WORK AREAS*
$ACDE
•
*
SCH12
•
•
•
• SCILA
•
•
• SCLSW
•
$COMN
SCORE
•
•
• * SCTSW
•
* SCXRl
*
•
• SCYlN
•
... SDAOR
•
•
•
• saBSV
*
* • SDCVL
>I<
•
• SDMPF
...
• SOREQ
•
•
•
• SFPAD
2G2.
* • SGCOM
2G2.
• SGRIN
SHASH
•
•
• SlBT2
...
•
• $I BT4
•
* SlBSY
•
• SlOCT
•
• SKCSW
•
• HAST
...
2-9.
• SLNXQ
*
• SNDUP
... SNXEQ
•
...
•
• SPBSY
...
•
• $PGCT
...
•
• SPHSE
... SRMSW
•
2-4 •
... SSCAT
•
• $SNLT
...
•
• SUFIO
•
• SULET
•
• 'WRDl
>I< $WSDR
•
2-2 •
• SXR 3X
•
.ATTRIBUTES-REUSABLE
•
•
"'NOTES•
THERE ARE ~AIT INSTRUCTIONS AT SPRET+l,
•
...
SSTOP+l, AND SPSTX+l. DEPRESSING THE START
•
KEV WILL RETURN CONTROL TO THE CALLER IN ALL •
CASES.
•

*

•
*

•
*

*
*
*

*
•

•
•

*

••
•
•

•
•

•

..

•
'"

•

PMN01550
PMN01560
PMN01510
PMN01580
PMN01590
PMN01600
PMN01610
PMN01620
PMN01630
PMN01640
PMN01650
PMN01660
PMN01670
PMN01680
PMN01690
PMNOI100
PMNO 1710
PMN01120
PMNOl730
PMN01740
PMN01150
PMN01160
PMN01710
PMN01180
PMN01190
PMN01800
PMN01810
PMN01820
PMN01830
PMN01840
PMN01850
PMN01860
PMN01810
PMN018AO
PMN01890
PMN01900
PMN019l0
PMN01920
PMN01930
PMN01940
PMN01950
PMN01960
PMN01970
PMN01980
PMN01990
PMN02000
PMN02010
PMN02020
PMN02030
PMN02040
PMNO?050
PMN02060
PMN07010
PMN02080
PMN02090
PMN02100
PMN02110
PMN02120
PMN02130
PMN02140
PMN02150
PMN02160
PMN02110
PMN02180
PMN02190
PMN02200
PMN02210
PMN02220
PMN02230
PMN02240
PMN02250
PMN02260
PMN02270
PMN02280
PMN02290
PMN02300
PMN02310
PMN02320
PMN02330
PMN02340
PMN02350
PMN02360
PMN02370
PMN02380
PMN02390
PMN02400
PMN02410
PMN02420
PMN02430
PMN02440
PMN02450
PMN02460

Resident Monitor (Including Table of Equivalences)

G-3

Resident Monitor Listing

03(0
0004
CC05
0006
0007

0001'1
0009
CODA
OOOB
Dooe
COOC
DOOE
DOOF
0010

0011
0012
CC13
0014

DO?O

00?8
C029
002A

f)1)241
00249
00250
00251
00252
00253
0 OFFA
00254
0 0000
oeoo
00255
0
00256
a 0000
00257
00258
00259
a 0000
C0260
a 0000
00261
00262
a 00B3
a 0000
00263
0 OOC4
00264
00265
a 0091
00266
00261
0
0000
00268
a 0000
C0269
00270
0000
0
a 0000
00211
00272
0 0000
ceoo
0027l
0
OOOC
00274
00275
00276
0008
00?17
C027A
00279
C0280
()0?81
00282
00281
ooeo
CO?84
3000
CO 4CA0002P C02A5
C02R6
002F17

002C
002r
002f
Cf)?F

0

0000

0
0

ooco
oero
aeoo

OCHO 0

00')0

CO, 1
o(n?
0013
CO,4
C01'i
CO,6
00,7

0

0
0
0

0
0
0

oeco

C0288
()O?il')
00?90
00291
()0292
OO?93

0000
'11')00
0000

00294
0029'>
0()296

0000
01)00

00298
00?99
co,ce
01)301
003(;2

acoo

Of)1A 0

002'H

00103
[)0~C4

001C5

00306
003C7
003C8
00309
ncoo
CC310
G01C C CGOI
00311
00312
00113
e010 0 0004
00114
FFFF
CO~E 0
00315
f)031h
00317
00318
00319
CalF a 0000
0040
U809
00320
00121
0041 0 4073
00322
0042 0 282A
0043 0 b eW3
00323
0044 00 C4fl0003F 00324
00325
0046 0 oeD2
00326
0047 0 C8F4
004R CO 440000F2 00327
00328
Q04A 0 COFI
7C07
00329
0048 0
00330
00131
.C006
C04C
00333
00334
00335
00336
0052 0 tOES
00337
0053 0 DOC2
0054 00 6'5800039 00338
00339
0056 0 CI01
0019
OOH G
co,p rCOK

G·4

oeoo

1810
7017

•••••••••••••••••••••••••••••••••••••••••••••••••••
• PROVIOE PARAMETERS FOR'SYSTEM LOADER
•
ASS

PMN02410
PMN02490
PMN02500
PMN02510
PMN02520
ORG
4
DC
4095-. WD CNT FOR WRITING CORE ON CIS PMN02530
PMN02540
'CIBA DC
.-. SCTR AODR OF THE CIS
SCH12 DC
PMN02550
.-. ADDR OF CHANNEL 12 INDICATOR
PMN02560
SCO~N DC
.-. LENGTH OF CO~~ON (IN WORDS)
PMN02510
PMN02580
• ULTIMATE RESIDENCE OF THE INTERRUPT TV
PMN02590
PMN02600
SLEVO DC
LEVEl o BRANCH AOCRESS
PMN02610
'lEVI DC
LEVEL 1 BRAIII(H ACCRESS
PMN02620
'lEV2 DC
SI200 LEVEL 2 BRANCH AD OR
PMN02630
SLEV3 DC
LEVEl 3 8RANCH ADDRESS
PMN02640
'lEV4 DC
51400 LEVEl 4 BRAr~CH AD OR
PMN02650
HEV5 DC
SSTOP LEVEl 5 B~AN(H AOCR
PMN02660
PMN02670
SCORE DC
PMN02680
SllE OF CORE, E.G., IICOO=4K
PMN02690
SCTSW DC
CONTROL RECORD TRAP SWITCH
SDADR DC
PMN02700
SCTR ADDR OF PROG TO BE LOADED
SSCAT DC
NON lERO=SCA INTRPT PNCNG
2-4 PIoIN02110
SDREQ OC
IND. FOR REQUESTEC VE~SION DKIIO PMN02720
$I BSY DC
NON-ZERO IF CD/PAP TP CEV. BUSY P~N02730
SHASH BSS
Pt-'N07740
WORK ARE A

•

.-..-..-.

•

•

•SSCAN

-$SCAT

P~N02750

BS';

1112

SCA~

PMN02760
32 PMN07770

A~E~

P~N02780

• TRAP FOR PRECPERATIVE 1/0

•SPRET
•

DC
WAIT
BSC

•STREQ

PUS~Er

--$PRET

P~N02810

DC
SULET DC
DC
DC
DC
DC
SIOCT DC
$lAS T DC
SNOUP DC
$NXFC DC
$PASY DC
SPGCT DC

••

E~RCRS

ENTRY POINT
~ATT TIL STA~T KEY
RETURN TO CALLER

SPRO

PM"lC2190
PMN02800
PMN02810
PMN02A20
PMNO?830
PMN02B40
PMN02B50
PIoIN02860

ACCR OF INT REQU~ST SUBROUTINF
AODR OF LET, LOGICAL OR 0
ADDR OF LET, LOGICAL OR 1
AOCR OF LET, LOGICAL OR 2
ACCR OF LET, LOGICAL DR
ACDR OF LET, LOGICAL OR 4
ZERO IF ~O I/U I~ PROGqESS
~O
NCN-lERO WHE~ LAST CARC SENSlD
CO NCT DUP If NCN-lERO
00 ~CT EXECUTE IF NON-lERO
NON-lERO wHE~ PRINTER BUSY
PAGE NO. FOR ~EADINGS

PMN02A80
PMNO?890}
P~NO?900

PMNO?910
LET addresses
PMN02920
PMN02930.
PMNO;>940 -$IOCT
PMN02950
PMN029bO
PMN02970
PMN02980
PMN02990
P~N03000

CALL EXIT ENTRY

•$EXIT
'"''''*
"

MCX

POI~T

1iSCOO

TO SKELFTON

P"'N03010

SUPE~VISOR

P R TO FE 1 CH C IL , PI' AS E 1 56

LI~K

ENrRY

PMN03050
PMN03060
57 PMN03070

PCI~T

*

ENTRY PCINT
SlIt\K DC
16
SR.'"
PR TU FErCH CIL, PHASE 1
MCX
SSlCO
BSS
o
SS900 DC
DISK PARA~ETERS FOR SAVING CORE
1
2-10
*SS9CC ALSO USED AS CONSTANT 1 HV CIL PH2
SCIBA-l .IN CCNNEC1ION wITH nu~p
DC
-1
CALL EXIT INOECATOR
SS910 DC
2-10
.$5910 ALSO lJSF.C liS CCNS TANT-l 8'1 C I L PH2

'"
"'**
•

:~~g~g;g

-- $EXIT

P~N03040

CALL

SAVE 1ST 4K OF CORE ON

SDU~P

•

•

DC
STD
BSI
STS
STX
LO
STO
LOO
BSI
LD
~DX

BSS

••• FETCH

•$5000

LD
IS100 STO
LOX
LD

T~E

C!B

POINT
63 ~~~g;i~g
SAVE ACCUMULATOR, EXTENSICN PM~03180
SACEX
CHK PNDNG INTRPT
2-4 PMN03190
SS250
SAVE STATUS
2-6 PMN03200
SSSTS
P~N03210
1 SC XR 1
SAVE X>..1
PMN01?20
I SDU~P
SAVE OU~p FOR~AT CODE
PMN01230
SD~PF
PMN03240
$5900
PIoIN03?50
SAVE 10105 6-4095 ON CIB
DlOOO
PMN01260
'5900
PMN03210
BR TU FETCH CIL, PHASE 1
SS100
2-6 PMN03280
2-1 PMN03290
PATCH ARI:A
6
PMN03310
PMN03320
CORE IMAGE LOADER, PHASE
PMN03330
PMN03340
15910
SAVE EXIT-LINK-DUMP SWITCH PMN03350
SRMSW
PMN03360
LINK ADCIR TO XR1
11 SLINK
PMN03310
fETCH 2~D WD OF LINK NAME
1 1

*-*

E~TRY

--$LlNK

P~N030AO

PMN03090
PMNC3100
PMN03110
PMN03111
PMN03120
PMN03130
PMN03131
PMN03140
PMN03150

-$DUMP

Resident Monitor Listing

0057 0
0058 0

1800
C100

0059
005B
005C
0050
005E
005F
C061
0062

65000000
D8B8
4008
COFC
1890
440000F2
4003
4102

00
0
0
0
0
00
0
0

0063 0
0064 0

0000
0000

0065
0066
0067
0068
C06A
006A

0
0
0
00
C
00

0000
COCB
E8A9
4C200066
0803
4C800065

0060
006E
006F
0070

0
0
0
0

2000
0000
CC80
0000

0071
C072
0072
C073
0074
0075
C076
0077
0078
0079
007A
007B
007C
0070
007E
007F
OORO

0

0000
0000
0000
CCOO
0000
0000
0000
0000
0000
0000
OCOO
OCOO
0000
0000
0000
OCOO
OOCO

0
0
0
0
0
0
0

0
0
0
0
0
0
0
C

C081 0 0000
COA2 0 3000
OOR'l 00 4C800081

0085 0 0000
0086 a 3000
0087 00 4C800085

0089 0 0000
COAA 0 3000
OORB 00 4C800089

0080 a 0000
008E a 3000
008F 00 4C800080

0091 0 0000
0092 0 3000
0093 00 4CCOO091

0095
0096
C097
0098
C099

0
0
0
0
0

0000
OCOO
0000
0000
0000

00340
00341
00342
00343
00344
00345
00346
00347
00348
00349
00350
00351
00352
00353
00354
00355
00356
00357
00358
00359
00360
00361
00362
00363
00364
00365
00366
00367
00368
00369
00370
00371
00372
00373
00374
00375
00376
00377
00318
00379
00380
00381
00382
00383
00384
00385
00387
00388
00389
00390
00391
00392
00393
00394
00395
00396
00397
00398
00399
004CO
00401
00402
00403
00404
00405
00406
00407
00408
00409
00410
00411
00412
00413
00414
00415
00416
00418
00419
00420
00421
00422
00423
00424
00425
00426
00427
00428
00429
00430
00431
00432

RTE
16
LO
FETCH 1ST WO OF LINK NAME
1 0
CONTAINS
AOOR LAST WO OF OISI( 1/0 MINUS 3
• $SI50+1
SS150 LOX I I
AOOR END OF OKI/0-1 TO XR1
STD
SlKNM
SAVE LINK NAME
BSt
SS250
CHK ANY PNONG INTRPT
2-4
LO
SCILA
$S200 SRT
16
BSt
L DZOOO
FETCH CI LOADER, PHASE 1
BSI
SS250
CHK DISK OP FINISHED
2-4
BR TO C I LOADER, PHASE 1
BSt
2
*
SGCOM DC
2G2
*-* GRAPHIC SUBR PACKAGE INOR
SGRIN QC
.-* GRAPHIC INITLZN PROGRAM INOR 2G2
*
*** SUBR TO CHECK IF ANY INTRPT IS PENDING
*
SS250 DC
ENTRY POINT
*-*
SS300 LD
IS THERE INTRPT PNDNG
SIOCT
OR
SSCAT
*OR SCA INTRPT PNONG
BSC L SS300,Z
*THEN BR,IF ALL INTRPT
RESET 2250
XIO
SI499
2-7
BSC
SS250
*IS SERVICED-RETURN
2-6
*
$SSTS LOS
STATUS SAVED FOR DUMP
2-7
*-*
$1499 DC
2-1
0
IOCC FOR RE SET
DC
2-7
ICC80
*OF 2250
SlNXQ DC
*-* LINK/XEQ SW, -1 lINK,+1 XEQ 2-9
*
SFLSH DC
*-* FLUSH-TO-NEXT-JOB SWITCH I=FLUSH
BSS E 0
SCWCT DC
*-* WORD COUNT AND SECTOR ADDRESS
DC
*-* *FOR SAVING/RESTORING COMMON
SCCAO DC
*-* AODR FOR SAVING/RESTORING COMMON
SLSAD DC
*-* SCTR AOOR OF 1ST LOCAL/SOCAL
SDZIN DC
*-* DISKZl1/N INDICATOR (-1,0,+1)
SDCDE DC
*-* LOGICAL DRIVE CODE FOR PROGRAM
SPHSE DC
.-* NO. OF PHASE NOW IN CORE
SUF 10 DC
*-* UNFORMATTED I/O RE'{ORD NO.
SWSOR DC
*-. WORKING STORAGE DRIVE CODE
SWR01 DC
.-* LOADING AODR OF THE CORE LOAD
SKCSw DC
*-* 1 IF KB,CP BOTH UTILIZED
SUFDR DC
UNFORMATTED tlO DRIVE CODE
SCPTR DC
.-* CHANNEL 12 INDICATOR FOR CP
S1132 DC
*-. CHANNEL 12 INDICATOR FOR 1132
$1403 DC
*-* CHANNEL 12 INDICATOR FOR 1403
TRAP FOR POS TOPERATIVE 1/0 ERRORS ON LEVEL 1

.-.

.-.

•
•$PSTl

DC
WAIT
BSC

*-.

ENTRY POINT

PMN03380
PMN03390
PMN03400
PMN03410
PMN03420
PMN03430
PMN03440
PMN03450
PMN03460
PMN03470
PMN03480
PMN03490
PMN03500
PMN03510
PMN03520
PMN03530
PMN03540
PMN03550
PMN03560
PMN03570
PMN03580
PMN03590
PMN03600
PMN03610
PMN03620
PMN03630
PMN03640
PMN03650
PMN03660
PMN03670
PMN03680
PMN03690
PMN03100
PMN03710
PMN03720
PMN03730
PMN03740
PMN03750
PMN03760
PMN03770
PMN03780
PMN03790
PMN03800
PMN03810
PMN03820
PMN03830
PMN03850
PMN03860

~~~g;~!g --$PST1

RETURN TO DEVICE SUBROUTINE PMN03890
PMN03900
TRAP FOR POSTOPERATIVE tlO ERRORS ON lEVEL 2
PMN03910
PMN03920
SPST2 DC
ENTRY POINT
PMN03930
WAIT
PMN03940
BSC
SPST2
RETURN TO DEVICE SUBROUTINE PMN03950
PMN03960
*
PMN03970
• TRAP FOR POSTOPERATIVE 1/0 ERRORS ON lEVEL 3
PMN03980
SPST3 DC
ENTRY POINT
PMN03990
PMN04000
WAIT
BSC
SPST3
RETURN TO DEVICE SUBROUTINE PMN04010
PMN04020
TRAP FOR POSTCPERATIVE 1/0 ERRORS ON LEVEL 4
PMN04030
PMN04040
PMN04050
SPST4 DC
ENTRY POINT
PMN04060
WAIT
$PST4
BSC
RETURN TO DEVICE SUBROUTINE PMN04070
PMN04080
PMN04090
*
PMN04100
PROGRAM STOP KEY TRAP
PMN041l0
PMN04120
SSTOP DC
ENTRY POINT
PMN04130
WAIT
WAIT TIL START KEY PUSHED
PMN04140
BOSC
SSTOP
RETURN TO CALLER
PI-IN04160
PARAMETERS USED BY THE DISK 110 SUBROUTINES. THE
PMN04170
PMN04180
• LOGICAL DRIVE CODE IS FOUND IN BITS 1-3 FOR ALL
* BUT THE AREA CODE. BIT 0 WIll ALWAYS BE ZERO.
PMN04190
PMN04200
*
PMN04210
*
*** DISKI AND DISKN WIll NOT WRITE BELOW THE
PMN04220
*** FOllOWI NG SCTR ADDRESSES «EXCEPT WR I TE IMMEO).
PMN04230
PMN04240
SFP,o\D DC
PMN04250
*-* FILE PROTECT AOOR, lCGICAl DR 0
DC
PMN04260
*-* FILE PROTECT ADOR, LOGICAL OR 1
DC
PMN04270
*-* FILE PROTFCT AOOR, LOGICAL OR 2
DC
PMN04280
*-* FILE PROTECT ACOR, LOGICAl DR 3
DC
PMN04290
*-* FILE PROTECT AOOR, lOGICAL DR 4
PMN04300

•
•

•
•

•*

*

•
•
•

SPSTl

.-.
.-.
.-.

.-.

--$PST2

-$PST3

-$PST4

--$STOP

•*

•
•

Resident Monitor (Including Table of Equivalences)

G-S

Resident Monitor Listing

C09A
C09A
C09C
OO<}D
C09E

OO<}F
OOAO
OOAl
COA2
COA3

00A4
OOA5
00A6
00A7
00A8
00A9
OOAA
OOAB
OOAC
OOAD
COAE
OOAF
OOBO
OOAI
COA2

0
0
0
0
0

0
0
0
0
0

0
0
0
0
0
0
0
0
0
0
0
0
0
0

a

OCOO
0000
ClOOO
ClOOO
ClOOO

ClOOO
ClCOO
OCOO
0000
ClCOO

OOCO

ncoo

0000
0000
0000
OCOO
(1000
COOO
OCOO
0000
0000
COOO
0000
0000
0000

OCB3
00B4
00B5
COA6
00A7

0
0
0
0
0

OOAA
OOBA
OOBC
OOBE
OOBF
OOCO
00C2
00C2
00C3

CO 44000000
00 65000000
00 66000000
o 2000
o CA02
00 4CCOOOB3
COCO
0 OCOO
0 0000

COC4
OOCS
00C6
COC7
00C8
OOC<)
OOCA
OOCB
COCC
OOCF
0000

G-6

0
0
0
0
0
0
0
00
CO
0
0

0000
6<}06
6A07
2807
C80A

0000
0818
2BOE
690F
6AI0
0816
1002
4CI00000
4480002C
FFFE
6109

00433
00434
00435
00436
00437
00438
C0439
00440
00441
00442
00443
00444
00445
00446
00447
00448
0044,}
00450
00451
00452
00453
00454
00455
004')6
00457
004'>8
0045Q
00460
00461
00462
00463
00464
00465
00466
00467
0046A
00469
00470
00471
00473
00474
00475
00476
00477
C047A
0047<}
00480
00481
00482
00483
C0484
0048')
00486
00487
00488
00489
00490
00491
00492
00493
00494
00495
00496
00497
00499
00500
00501
00502
00503
00504
00505
00506
00507
00508
OOSO<}
00510
00511
00512
00513
00514
00515
00516
00517
00518
00519
00520
00521
00522
00523
00524
00525

••• THE ARM POSITION IS UPDATED WHENEVER A SEEK
..... OCCURS.

•

SCYl~

•••
•••
.,;..

DC
DC
DC
DC
DC

BELOW ARE

o
o
o
o
o

AR~
AR~
AR~
AR~

AR~

POSITION
POSITION
POSITION
POSITION
POSITION

FOR
FOR
FOR
FOR
FOR

LOGICAL
LOGICAL
LOGICAL
LOGICAL
LOGICAL

DRIVE
CRIVE
CRIVE
DRIVE
DRIVF

0
1
2
3
4

CISK AREA CODES. A ZERO
I~DICATES THE CORRESPONDING DRIVE
IS NOT
ON THE SYSTEM

•$ACDE

T~E

DC
DC
DC
ce
DC

AREA
AREA
AREA
AREA
AREA

eOCE
COCE
COCE
CODE
COCE

FCR
FOR
FOR
FOR
FCR

LOGICAL
LOGICAL
LUGICAL
LOGICAL
LOGICAL

PMN04310
PMN04320
PMN04330
PMN04340
PMN04350
PMN04360
PMN04370
PI'N04c,RO
PMN04390
PMN04400
PMN04410
P~N04420

DRIVE 0
DRIVE I
ORIVE 2

PMN04430
PI'1N04440
P~N044,)0

PMN04460
PMN04470
PMN04480
ORIVE 4
PMN04490
PI'1N04500
THE AOR OF THE CYLI~rER I~ ~HICH A CfFECT CCCURS, IF A~Y, IS STCR.ED IN THE 1ST, 2~O, CR 3RC PMN04510
WORO 8ELOW, DEPENDI~G O~ WHETHER IT IS THE 1ST, PMN04520
PMN04530
2ND, OR 3RO OFFECT ON THE CARTRIDGE •
PMN04540
PMN04550
SOCYL DC
eEFECTIVE CYLINDER ACORfSSES
P~N04560
DC
.FOR LCGICAL DRIVE 0
3 PMN04570
DC
CEFECTIVE CYLINDER ACCRESSES
1 PMN04580
DC
.FOR LOGICAL DRIVE 1
7. PMN04590
DC
3 PI'N04600
DC
DEFECTIVE CYLINOER ACCRESSES
I PMNC4610
DC
.FOR LOGICAL DRIVE 2
DC
2 PMN04620
3 PMN04630
DC
DC
DEFECTIVE CYLINCER ACORESSES
1 PI'N04640
.FOR LOGICAL DRIVE 3
DC
2 PMN04650
3 P~N04660
DC
DEFECTIVE CYLINDER ACORESSES
1 P~N04670
DC
.FOR LCGICAL DRIVE 4
CC
2 PMN04680
DC
3 PMN04690
CRIV~

3

•••
•••
•••
•••
•

••

••*

P~N04710

ILS02--THIS SuBROuTINE SAVES XRl, XR2, STATLS,
AND THE ACCUI'IILATOR ANC ITS EXTENSION.
THE ACCRESS OF THE INTERRUPT SERVICE ROUTINE IS STCREn IN $1205 BY PHASE 2 OF
THE CCRE II'AGE LOACER. WCRC 10 ALWhYS
CONTAINS THE AcrRESS OF S1200.

•
•
•SI2CO

PMN04720
PMN04730
PMN04740
PI'N04750
PMN04760
PMN04770
P~N04780

.-.

DC
S1210+1
STX
S1210+3
STX
S1210+4
STS
STD
SI290
• H205+1 CONTAINS ADDR.
SI205 BSI
L
.-.
$1210 LOX
L I .-.
LOX
L2 .-.
LfJS
o
LOD
SI290
BOSC
Sl200
SI290 BSS
o
DC
DC

.-..-.

P~N047<}0

ENTRY PT (LfVEL 7. INTRUPT)
SAVE XRI
ShVE XV
STORE STATUS
SAVE ACCUMULATOR, EXTENS ION
INTE~RUPT ENTRY PT TO DKI/O
RR TO SERVICE THE I~TERRUPT
RES TORE XR 1
RESTORE XR2
RESTORE STATUS
RESTORE ACCUI'ULATCR,EXT
RETLRN FROl' INTERKUPT

PMN04800
PMN04AI0
P~N04R20

PMNC4830
PMN04840
PMN04850
PMN04860
PMN04870
PMN04880
PMN04890
PI'N04900
PI'N04910
PMN04920
PI'1N04930

CONTENTS OF ACCUI'ULATOR AND P~N04940
*EXTENTION
PMN04950
PMN04910
PMN04980
• ILS04--THIS SUBROUTINE SAVES KRl, XR2. STATUS,
PMN04990
AND THE ACCUMULATOR ANO ITS EXTENSION.
IF THE INTERRUPT IS FO~ A KEYBOARD REQ- • PMN05000
UEST,ANO IF A ~ONITOR PROGRAM IS IN CON- • PMN05010
TROL, CONT~OL IS PASSED TO OUMP. OTHER- • PMN05020
WISE, CONTROL IS PASSED TO THE KEYBOARDI • PMN05030
CONSOLE PRINTER SUBROUTINE. WORD 12 AL- • PMN05040
WAYS CONTAINS ~HE ADDRESS OF $1400.
• PMN05050
PMN05060
PMN05070
• THE TABLE BELew CONTAINS THE ADDRESSES OF THE
INTERRUPT SERVICE ROUTINES FOR ALL THE OEVICES
PMN050eo
PMN05090
• ON LEVEL 4.
PMN05100
PMN05110
PMN05120
$1400 DC
ENTRY POINT
PMN05130
$1490
SAVE ACCUMULATOR, EXTENSIONPMN05140
STO
·STS
SI410
SAVE STATUS
PMN051S0
1 $1410+2
SAVE' XRl
PMN05160
STX
STX
2 $1410+4
SAVE XR2
PMN05110
XIO
SI492
SENSE DSW
PMN05180
2
IS THIS INTERRUPT REQUEST
PMN05190
SLA
$1403,AR IF NOT INTERRUPT REQUESTPMNOS200
BSC
L
BSI
SIREQ
BR IF INTERRUPT REQUEST
PMN05210
I
ERROR CODE
PMN05220
DC
-2
$1403 LDX
9
NO. DEVICES ON LEVEL TO XRIPMN05230

*

••
••
•
*•
•
*

•
••

.-.

Resident Monitor Listing

0001 0
COO;> 0

0810
1140

COD3
COD5
0006
0008
CODA
CODA

45800000
2000
65000000
66000000
C803
4CCOOOC4

0000
OOOE
OOEO
OOEO
COE 1
COF?
00E3

00
0
00
00
0
00

0
0
0
C

COE4 0
OOE'5 0
00E6
00E7
00E8
OOEA
COEC

0
C
CO
00
0

COED
COEE 0

0000
0002
0000
OFCO
COOl
0300

0000
OFOI
0000
08FC
4C4000EA
4400003F
FFFE
0001
0000

SENSE ILSW
FIND CAUSE OF INTERRUPT
OF LEVEL 4 IBT ~INUS 1
BR TO SERVICE THE INTERRUPT
RESTORE STATUS
RESTORE XRl
RESTORE XR2
RESTORE ACCU~ULATOR, EXT.
RETLRN

PMN05240
PMN05250
PMN052bO
PMN0'5270
PMN05280
PMN05290
PMN05300
PMN05310
PMN05320
PMN05330
PMN05340
PMN05350
PMN05360
PMN05370
PMN05380
PMN0'5390
PMN05400
PMN05410
PMN05420
PMN05430

00526
00527
00528
00529
00530
00531
00532
00533
00534
00535
00536
00537
00538
00539
00540
00541
00542
00543
00544
C0545
00547
00548
00549
00550
00551
00552
00553
00554
C0555
00556
00557
00558
00559

XIO
SI494
SLCA
1
* $1405+1 CONTAINS AODR
$1405 BSI
II *-*
51410 LOS
0
LOX
Ll *-*
LOX
L2 *-*
'LoD
SI490
BOSC
51400

00561
00562
00'563
00'564
0056'5
00'566
00567
00'568
00'569
00510
00571
00512
005B
00514
00515
00516
00571
00518
00579
00580
00581
0051'2
00583
00584
00585
00586
00581
005H8
005H9
00590
00591
00592
00593
00594
00595
00596
00591
00598
00599
00600
00601
00602
00603
00604
00605
00606
00608
00609
C0610
00611
00612
00613
00614
00615

**************************************** •• * •• ****.*
*
*
*STATUS - VERSION 2, ,",ODIFICATION 11
*
•
*
*PROGRAM NAME*
*FULL NAME-FORTRAN/SYSTEM DISK I/O SUBROUTINE *
*CALLING SECUENCE*
LDD
PARA~
*
*
BSI
L DZCOO
*
*
WHERE PARA~ IS THE LA8EL OF A OOUBLE-WORo
*
CELL CONTAINING THE FUNCTION CODE AND THE
•
ADCR OF T~E I/O BUFFER,I.E., ADDR CF WD CNT. *
•
SEE 'CAPABILITIES' FOR DISCUSSION CF PARAM*
•
ETERS.
*
*
*PURPOSE•
TO PROVIDE A SUBROUTINE TC PERFCRM DISK OPERA-*
TIONS. THIS SUBROUTINE IS INTENDED FOR USE BY *
•
~ONITOR PROGRAMS ANC USER PROGRAMS wRITTE~ IN •
•
FORTRAN. THLS,IT IS INTENDED FOR USE I~ AN
•
•
ERRO~-FREE ENVIRONMENT.
*
•
*
*~ETHOD•
OISKl REOUIRES A ~UFFER,THE LENGT~ CF WHICH IS*
•
? GREATER THA~ THE NO. wORDS TO BE REAO/WRIT- •
*
TEN.
*
*
•
.CAPABILITIES A~D LIMITATIONS•
THE WD CNT,AS WELL A~ OlOOO,MUST BE D~ A~ FVEN.
ROU~CARy,~UST BE
I~ THE RA~GE 0-32161.
T~E
*
CRIVE CODE ~UST BE IN BITS 1-3 OF T~E SECTOR
•
ADDR,WHICH FOLLOWS THE wD CNT. THE FUNCTICN
*
I~OICATOR ~UST BE XXCO FOR A READ OR XX01 FOR.
A WRITE,WHER~ 'XX' ~EANS ANY 2 HEXAr.ECI~AL
*
CHARACTERS. A we CNT OF lERr INCICATES A SEEK ••
(READ OR WRITE MAY BE INDICATED.) AUTO~ATIC
•
SEEKING IS PROVIDED AS A PART UF READ/WRITE.
•
A WRITE IS ALWAYS WITH A READ-BACK-CHECK.
•
*
DISKZ MAKES NC PREOP~RATIVE PARAMETER CHECKS • •
*
•
*SPECIAL FEATURES*
CISKZ PROVICES ONLY THOSE FUNCTIONS ~ENTICNEr •
•
ABOVE. DISKI AND DISKN OFFE~ THIS BASIC SET OF.
FUNCTIONS PLUS OTHERS.
•
•
*.* •••••••••• * ••••••• * •••• * ••••• * ••••••••••••••••••
* PROVIDE PARA~tTERS FC~ SYSTEM LCADER

PMN05590
PMN05600
PMN05610
PMN05620
PMN05630
PMN05640
PMN05650
PMN05660
PMN05670
PMN05680
PMN05690
PMN05100
PMN05110
PMN05720
PMN05130
PMN05140
PMN05750
PMN05760

•

P~N06010

*

* CONSTANTS AND WORK AREAS
* EVEN-NUMBERED LABELS ARE ON EVEN BOUNDARIES

*SDDSW

DC
51490 BSS
$1492 DC
SSYSC EOU
DC.
$1494 BSS
DC

*
*$1496

DC
DC

*

$1420 DC

XIO
BOSC L
$1425 BSI
L
DC

*-*
2

*-.

DSW FOR THE DISK
CONTENTS OF ACCUMULATOR, EXT.

*-1
VERSION AND MOD NO.
/OFOO 10CC FOR SENSE IOCC FOR KB/CP
1
PATCH AREA
/0300 IOCC FOR SENSING ILSW04
2-2
2-2
XR3 SETTING DURING XEO 2-2
SENSE KEY BOARD W RESET2-2
2-2
ENTRY POINT FLUSH JOB
2-2
*-*
$1496
SENSE KEY BOARD W RESET2-2
$1425
TURN OF INTERRUPT
2-2
2-7
SOU,",P
BR TO $OUMP
2-7
-2
CALLING AUX SUP

*

BSS
SDBSY DC

PATCH AREA
NON-ZERO WHEN DISK 1/0 BUSY

PMN05450
PMN05460
PMN05470
PMN05480
PMN05490
PMN05500
PMN05510
PMN05520
PMN05530
PMN05540
2-2 PMN05550
2-7 P,",N05560 I
PMN05570--$DBSY

DISKl

OOFO
OOFO 0
COF 1 C
00F2 0

con

CCF4

0

0000
OOEF
FHA

00E8
OOOl

BSS
DC
DC
DC
DC
ORG

P~N05170
PM~05780

PMN05190
PMN05800
P~N05810

PMN05820
PMN05830
P~N05A40

PMN05850
P~N05B60
P~N05B10
P~N05880

PMNC5P90
PMN05900
PMN05910
PMN059?0
PMNC59l0
PMN05940
PMN05950
PMN05960
PMN05910
P~N059AO

PMN05990
PMN06000
PMNObOlO
PMN06020
PMN06030
PMN06040
PMN06060

o

P~N060AO

.-2

P~N06130

PMN06090
$lEND-.
DISKZ WCRD COUNT
P~N06100
-'DlID
PHASE 10
PMN06110
$ZEND-6-*+1 ACDR CF SLET EXTRACT
1
NO. ENTRIES IN SLFT EXTRACT PMN061?O

Re,sident Monitor (Including Table of Equivalences)

G-7

Resident Monitor Listing

00F2
00F3
OOF'5
00F6

00F1
OOFB
OOF'l
OOFA
OOFB
OOFC
OOFO
OOFE
OOFF
0100

0
00
0
0

0
a
0
0
0
0
0
0
0
CO

0000
140000EE
10FO
1002

COOO
701B
6<;10B
6AOC
100B
003C
1800
005,A
1054
4COOOOOO

0102 0
0103 0

0104
0106
0108
O'10'l
OlOB
DIOC
Olor;
010E
0110

0111
0113
0115
0110

00
00
0
00
0
0
0
CO
0

CO
CO
0
0

0117 0
01 Pl 0
0111 0

65000000
66000000
COEE
4C9800F2
0003
lRlO
OOE'l
4COOOOOO
1000

65000000
6600COF?
0816
00C6
4810

ron

CROA
r,'lOO
() 11 A 0
OIIR CO 74FFOOEE
0110 0 1CH

() 11 E e
() 11 F C

0120 0
0121

e

CIlOF
COlI
42'13
1034

oln

oeoo

o In

OCi}l

0
Dl?1 C

0124 0
0125 0
0126 0

0127
0128
(H2'l
01211

0
0
0
0
012A C
Ol2C 0
01?O a
OPE

a

012F C

0130 0

onl 0
0132 a
OIB 0

0134
0135
0136
0137
0138
013'l
013A
013A
013C
0130

0
0
0
0
0
0
0
0
C
0

ODE 0
I) 13F 0

G-8

0000
0000
0000
0000
0000
0000
0000
0122

oeoo
oono
eeoo
OCOO
0000
5002
')004

FEeo

0001
00:90
0600
0008
5eoo
OFf8
0000
0101
0007
OOOA
OO'lF
FFFB
0000

00611
0061B Q
0061'l
00620
00621
00622
00623
00624
0062'5
00626
00621
0062B
0062'l
00630
00631
00632
00633
00634
0063'5
00636
00631
00638
0063'l
00640
00641
00642
00643
00644
00645
00646
00641
00648
0064'l
00650
00651
00652
00653
006')4
00655
006'>6
0.0657
C0658
0065'l
00660
00661
00662
00663
00664
00665
e0666
00661
00668
,)066'l
00670
00671
0067;:>
00613
00614
00615
00616
00677
00678
0061'l
00680
006Pl

00682
C0683
00684
00685
00686
00681
00688
006R'l
006'l0
006'l1
006'l?
006'l3
006'l4
006'l,)
006'l6
006'l7
006'lR
006'l'l
00100
C0101
00102
00703
00704
00105

OZOOO DC
MOX
MDX
MDX

*-*
SDBSYQO
*-3
DZ020

L

ENTRY PO II'H
LOOP UNTIL OPERATION IN
*PROGRESS IS CO~PLETE
BR AROUND INT ENTRY POINT

** INTERRUPT ENTRY POINT

.-.

*

DZ010 DC
MDX
DZ020 STX
STX
SLA
STO
RTE
STO
MOX
Ol060 BSC

DllAO

1 OllOO+ 1
2 DII00+3
B
D194'5

16
01235+1
OZ230

INTERRUPT ADDRESS
BR TO SER~ICE INTERRUPT
SAVE XRl
SAVE XR2
SHIFT INDICATOR R BITS
SAVE FUNCTION INOICATOR
SAVE ADOR OF THE 1/0 A~EA
RR TO CONTINUE
RR TO SERVICE THE INTERRUPT

*

* START ALL DISK OPERATIONS

*

Dl070 STX

XIO

1 OZlBO+l
Dl904

** RETURN TO USER
*Ol100 LOX L 1 *-*
LOX

L2

BSC
STO
SRA
STn
Ol110 BSC
NGP

** SERVICE
*
OllRO
LDX
LOX
XIO
STO
RSC
MDX
OlIB') LOO
STO
MOX
MOX

*-*

Ol010
DZOOO,+DlllOtl
16
OZ010

LC

*-*

SAVE ADCR OF THE 1/0 AREA
START AN OPERATION

RESTORE XRl
RESTORE XR2
INTERRUPT ENTRY
NO,~ONITOR ENTRY
YES,INT ENTRY
RESET
*INT ENTRY
nufoI~Y

OP

2-6
2-6
2-6
2-b

2-6
2-6
2-6

ALL INTERRUPTS
L1

*-*

L? Claoo
OZ'll0
SC[)SW
CI060
01'l02
1 C

L

~DASy,-l

CZ2V,

AOOR OF 1/0 AREA TO XRl
ADOR OF DZOOO TO XR2
SENSE THE DSW
SAVE THE OSw
SKIP IF ERROR BIT SET
2-6
BRANCH IF ERROR BIT NOT SET
RESTORE ~ORO COUNT
*AND SECTOR AODRESS
SKIP IF 16 RETRIES DONE
BRA~CH IF LESS THAN 16

* TRAP OUT TO PCSTOPERATIVE TRAP
LOO
LG
Dll'"lO BSI
"'OX

**

DZ'l12
01915
SPST2-X2
DZ2~2

l+SCTR ADOR TO EXTENSION
BR TG PCSTOPERATIVE ER TRAP
RETRY OPERATION
2-6

CONSTANTS AND WORK AREAS

BSS E 0
* EVEN-NU~BEREO LABELS ARE ON EVEN BOUNDARIES
OZ900 DC
1
CCNSTANT,REAO-AFTER-SEEK WD CNT
OZ'lOI DC
0
CURRENT ARM POSITION
*-* LAST TWO wORDS OF SECTOR
OZ902 DC
DC
*-* *PREVIOUSLY READ
01904 DC
*-* 10CC FOR OPERATION CURRENTLY
Ol'lO~ DC
*-* *BEING PERFORMED
OZ906 DC
*-* SAVE AREA FOR IOCC FOR
OZ'l07 DC
*-* *USER-RE~UESTED OPERATION
Ol'lOR DC
DI'lOO 10CC FOR READ
Ol'lO'l DC
*-* *AFTER SEEK
OZ'll0 DC
*-* 2ND ~nRD OF SEEK 10CC
*-* SENSE IOCC
OZ'l11 DC
Dl'l12 DC
*-* INTERfoIEDIATE WORD COUNT
Ol913 DC
*-* AODR OF NEXT SEQUENTIAL SECTOR
0l'l14 DC
/5002 WRITE SELECT/POWER UNSAFE INOR
OZ'l15 DC
15004 REAC/WRITE/SEEK ERROR INDICATOR
OZ'l16 DC
-320 TO BE USED TO SIMULTANEOUSLY
OC
1
*DECR 1010 CNT, INCR SCTR ADDR
OZ'l20 DC
ICORO REAC CHECK OIT FOR IOCC
DZ92~ DC
IC600 2ND WD OF READ 10CC WID AREA CO
OZ'l30 DC
8
NO. SFCTORS PER CYLINDER
OZ'l35 DC
15COO NOT READY OISPLAY CODE
OZ'l40 DC
10FFB 'AND' OUT OR COOE, SCTR ADOR
OZ<;I4'5 OC
*-* FUNC INDICATOR 10=REAO,\=WRITEI
DZ'l50 DC
10701 SENSE 10CC WID AREA CODE
OZ<;I55 DC
IC007 'ANC' OUT ALL BUT SCTR NO.
OZ'l60 OC
SOCYL-SCYLN BASE DEFECTIVE CYL AOOR
OZ'l65 DC
SACOE BASE AREA CODE AODR
OZ970 DC
SCYLN-SACOE BASE ARM POSITION ADDR
DZ915 OC
*-* 2ND WORO OF READ CHECK IOCC

PMN06150
PMN06160
PMN06170
PMN06180
PMN06190
PMN06200
PMN06210
PMN06220
PMN06230
PMN06240
PMN06250
PMN06260
PMN06270
PMN06280
PMN06290
PMN06300
PMN06310
PMN06320
PMN06330
PMN06340
PMN06350
PMN06360
PMN06370
PMN06380
PMNOb390
PMN06400
PMN06410
PMN06420
PMN06430
PMN06440
PMN064'50
PMN06460
PMN06410
PMN06480
PMN064'lO
PMN06S00
PMNOb510
PMN06'520
PMN06'530
PMN06540
PMNOb'5.'50
PMN06560
PMN06'510
PMN06SRO
PMNObS<;IO
PMN06600
PMN06610
PMNOb620
PMN06630
PMN06640
PMN06650
PMN06660
P~N06670
P~N06680

PMN06690
PMN06700
PfoIN06710
PfoINOb720
PMN06130
PMN06740
P~N06150

PMN06760
PMN06170
PMN06180
PMN067<;10
PMN06BOO
PMN06810
PMN06820
P~N06B30

PMN06B40
PMN06B'50
PMN06860
P~N06R70

PMNObB130
PMN06B'lO
P,..N06900
PMN06'110
PMN06920
PMN06'l30
PMN06'l40
PMN06<;1'50
PMN069bO
PMN06910
PMN06980
PMN06990
PMN01000
PMN01010
PMN07020
PMN07030

Resident Monitor Listing

0140
0141
0142
0143

0
0
0
0

0144
00F2

0400
0141
0000
FFFF

0002

0146
0147
0148
014A
014B

0
0
00
0
0

1810
00A6
74FF0032
1000
70B8

014C
0140
014E
014F

0
0
0
0

C807
0900
COEl
7000

0150 0 COE6
0151 00 44000028
0153 0 7038

01')4
0156
0157
015A
01')A
Ol,)B
01,)C
0150
OI,)E
015F
0160
0161
016?
0163
0164
0165
0166
0167
0168
0169
016A
o L6B
016C
016C
016F
0170
0171
0172
0173
017')
0176
0177

0178
017A
017A
al7e
0170
017F
OIRO
() 181
OIR?
OlA3
OlA4
0lR5
01A6
01A7
01RR
OIR'}
OlRll
rJIAB
OlAC
01Ar
OlAF
OIRF
0190
0191

CO
C
0
00
0

00106
00707
00708
00709
00710
00711
00712
00713
00714
00715
00716
00717
00718
00719
00720
00721
00722
00723
00724
00725
00726
00727
00128
00729
00730
00731
00732
C0733
00734
00735
00736
00737
00738
00739
00740
00741
00742
C0743
00744
00745
00746
C0747
00748
00749
00750
C0751
00752
00753
C0754
C0755
00756
00757
00758
00751
00760
COH>!
00762
00761
00764
C0765
0'0766
00767
C076A

74010032
6211
6A96
65COOOOO
C900
C
08C8
0 08Cl
0 lAlO
10fl4
0
C DOOE
0 80DC
C 001C
0 AOCB
0 0034
0 flOD7
0 B008
0 A007
0 CC06
0 62FO
C 69RE
C CI01
C EOCC
0 0101
CO 94CCOOOO
0 482A
0 7007
C CI01
C AOn
CO 7401016E
0 7201
C0769
0 70F5
00710
C 01 t) 1
C0711
C0772
C071'3
CO 660000F2 nn774
00775
0 C23D
C0716
0 [749
00777
c 8250
CO C4COOOOO 0077A
00779
C F.A4E
OOrAO
C 02 'lit
n07AI
0 EA43
807112
C C239
C07A3
0 FA,)O
C07/<4
9'241
C
C07P5
C f'!237
C0786
C EA47.
007R7
C P,?47
C07f'8
C 0240
C07A9
C E Al, A
00790
0
D23R
00791
0
CA1C
007'l2
C OA3.1\
C0793
0 D2ER
00794
0 4A2A
C0795
C 70llC
00796
c 1002
00791
C 4R'2R

.-.

PMN07040
PMN07050
PMN07060
PMN07070
-1
PMN07080
RESERVED FOR SAVING CORE ON A DUMP ENTRY TO SKEL PMN07090
PMN07100
PMN07110
2
THIS AREA MUST BE AT SCIBA+319
BSS
PMN07120
X2
EQU
OlOOO
PMN07130
PMN07140
PMN07150
PMN07160
Ol210 SRA
16
PMN07170
STO
SOBSY
CLEAR BUSY INDICATOR
PMN07180
MOX L SIDCT ,-I DECREMENT 10CS COUNTER
PMN07190
NOP
PMN01200
MOX
TO EXIT
OZIOO
PMN01210
PMN01220
PREPARE TO TRAP OUT ON 'POWER UNSAfE' CONOIHON
PMN01230
2-6 PMN07240
RESTORE WORD COUNT
Ol215 lOO
01902
.AND SECTOR ADORES
2-6 PMN07250
0
STO
PMN07260
Ol914
lO
MOX
PMN07270
01190
8R TO TPAP OUT
PMN07280
PMN07290
PREPARE TO TRAP OUT ON 'NOT REAOV' CONDITION
PMN07300
*
PMN07310
OZ220 LO
OZ935
FETCH ERROR CODE
PMN07320
8R TO PREOPERATIVE ERR TRAP
BSI L SPRET
PMN07330
MOX
01340
RETRY Tf-JE OPERATION
PMN07340
PMN07350
STATEMENTS
MOVED
2-1
*
PMN07360
PMN07370
OZ230 MCX L SIOcr ,1
INCREME"IT IOCS COL;NTER
PMN07380
OZ232 LOX
TURN 8USY INDICATOR ON 2-10
2 'TCNT
PMN07390
2-6
STX
2 SOASY
*
PMN07400
OZ215 lOX Ll *-*
AOOR 110 AREA TC XRl
PMN07410
LOO
1 0
PMN07420
STO
SAVE WORD COUNT, SCTR AOOR
OZ902
PMN07430
STO
OZ912
PMN07440
01240 SRA
16
PMN07450
4
DRIVE CeDE IN AITS 12-15
SLT
PMN07460
C12AO+l
STO
PMN07470
[:Z965
COMPUTE AND STORE THE
A
PMN07480
OZ330+1
*AOOR OF THE AREA CODE
STO
PMN07490
A
COMPUTE AND STORE THE
C1970
PMNC7500
STO
01350+ 1
*AOCR OF THe ARt' POSITION
[,)T
Pt'N07510
ACCR
A
C1960
ADD IN BASE
PMN07520
ACO IN THE DRIVE
A
CU80+1
PMN07530
A
r.l?80+1
*COCE TWICE MORE
PMN07540
Ol?AO+ 1
STO
PMN07550
LCX
-3
INITIALIZE COU"ITER FOR LOOP
PMN07560
STX
CZ906
Pt'N07570
LD
FETCH DES I REO SECTOR AODR
1
PMN075AO
AND
C1940
'ANC' Ol1T SECTOR NO.
PMN07590
OZ?')O STO
.ANC DRIVE COCE
1 1
PMN07600
01280 S
L
SUB DEFECTIVE CYL INOER ACCR
*-*
P/-IN07610
l+
BSC
SKIP IF BAD CYLINDER
PMN07620
FIR TO CUNTlf\UE PR(XESSING
/-ICX
C[300
PMN07630
LC
1
PMN07640
CZ930
INCREt'E"IT SCTR ACCR BY 8
P/-IN07650
t'OX L C72AO+l,1 POINT TO NEXT DEFECTIVE CYL
P,..N07660
/-lOX
? 1
SKIP AFTER 3RC PASS
PMN(l7670
CO,..PAQ,E WI NEXT OEF CYL Ar:R
MOX
Cl?50
P,..N076AO
STn
SCTR AOfJR WITH 3 OFF CYL2-4
1
P",N07690
PMN0770C
* CONSTRUCT THE 2"10 WOR[ OF All Iecc's
PMN07 flO
*
PMN07120
DZ300 LOX L2 ClOOO
AODR OF OlOOO TO XR2
P,..N07730
FETCH SECTOR ACCRES,)
LO
? Cl913-X2
PMN07740
ANn
2 C1955-X2
'ANC' OUT ALL RLT SECTOR NC
P/-IN07750
STO
2 Cl990-X? SAVE SECTUR NO.
PfoI,N07760
FETCH AREA COCE
OrDO lC
L
*-*
P,..NO 7 770
OR
Cl9AO-X2
IN
SEEK
FUNC
T!
ON
COCE
'OR'
2
PMN07780
STn
SEEK IOCC t'INUS (11RECTION
'2 C1910-X2
P/-IN07790
OR
Cl92'>-X2
'OR' IN READ FUNCTIUN CODE
P/-IN07800
STO
C1909-X? IOCC FOR REIID-IIFTER-SEEK
PMN07AI0
O;~
7 Cl990-X.2
'OR' IN SECTCR NO.
PMN07A7.0
? r:Zc)45-X2
COMPlETF RFA[')/WR r TE CODE
S
PMN07830
REAc/\O\RITF
IClCC
STC
? Clg07-X? 2ND WD rr
PMN07840
OR
2 Cl97Q-X?
'OR' IN REAr: Cl"rCK RIT
P/-IN07R50
A
2 C1945-)(7
Pr-
4B2B
1CIO

MOX

•
•
•
•
OZ~50

•
•
•

Cl2:?O

SLA
BSC
MOX

LO
S
IISC
MDX

+1

CZ190+1

1

L

SRT
SRA
SLA
OR

1<;1

15
2

2 oZ910-X2
16

PUT NO. CYLINDERS IN fXT
+ OR - SIGN TO BIT 15
SHIFT SIGN TO AIT I~
OR IN REMAINDER OF 10CC

SKIP IF SEEK TO~ARC HOME
IIRANCH IF SEEK TOWARD CENTR
C080
2 Ol995-X2 COMPLEMENT NO. CY~S TO BE
2 CZgeO-X2 .SOLGHT TO GET POSITIVE NC.
Z D~c)04-X2
2-1
2 01070-I-X2 START SEEK

BSC
MOX
EOR
A

DDAO STO
DZ3C)O BSI

•

STATE~ENTS RE~CVEC
2-1
CHECK FCR AR~ AT bO~E 2-11
SKIP IF NCT Hr.~E:
2-11
BR TO VERIFY AR'" AT HOM2-11
2-11
~ INSTRUCTICNS RE~OVEC 2-11
2-11
FETCH DESIRED CYLINDER ACoR
SUBTRACT AR~ PCSITION
~KIP IF SEEK NECESSARY
ARANCH TO PERFOR~ OPERATION

SEEK

RTE

••

.-.
+CZ400

PMNC7960

*OTI-lERWISE:

SEEK COMPLETE INTERRUPT PROCESSING

•
•

LoD
STD
BSI

2 DZ908-X2 SET UP 10CG FOR
2 OZ904-X2 *READ AFTER SEEK
Z Ol010-1-X2 START REAO-AFTER-SEEK

• READ-AFTER-SEEK COMPLETE INTERRUPT PROCESSING
LD
STO

2
I

S

•

BSC
MDX
MDX
MDX
BSC

D~901-X2

01350+1
1 1

L
L

DjZ400,+SpBSY,-1
0l350-1
SpBSY,l
ollf'15

L
L

FETCH ACR OF SCTR JUST READ
UPDATE ARM POSITION
SUB DESIREO SCTR ADOR
BR IF SEEK SUCCESSFUL 2-11
SKIP IF NO MORE RETRIES2-11
BR TO CALC NEW SEEK
2-11
PREVENT A MINUS SDBSY 2-11
RR TO TRAP OUT
2-11

•

• READ/WR ITE

•

DZ400 LDD
BSC
MOX
AO
STD
BSC
SRA
A

•

STO
LOD
STD
LD
OR
STO
BSI

• READ/WRITE

•

2 DZ912-X2
+,

D'Z410
Z DZ916-X2
2 D'Z912-XZ
Z~

16
Z DZ9B5-X2
I 0

Z DZ906-x2
1 OZ904-X2
1 I,

1 OZ990-X2
I

FETCH INTERMEDIATE WD CNT
SKIP, WD CNT NOT EXHAUSTED
BR IF WD CNT EXHAUSTED 2-11
DECREMENT WORD COUNT AND
.INCREMENT SECTOR ADDRESS
SKIP IF T~IS IS LAST SECTOR
CLEAR ACC~MULATOR
ADO BACK 321 TO ~o CNT
STORE RESULT IN I/O AREA
RESTORE 10CC FOR ORIGINALLY
.REQUESTED OPERATION
ADO SECTOR NO. TO SECTOR
.ADDRESS

t

1 CZ070-I-X2 START READ/WRITE OPERATION
CC~PLETE

INTERRUPT PROCESSING

LD
2 Cl915-X2 SET UP FOR READ CHECK
STO
;> CZC)OS-X2
LD
;> OZ945-X2
FETCH FUNCTION INDICATOR
BSC
Z
SKIP IF READ RECUESTEC
BSI
2 CZ010-1-X2 START READ CHECK OPERATION
DZ410 LDO
2 CZ90Z-x2 RESTORE LST 2 WDS, SEC-Z-ll
STO
1 0
.TOR PREVIOUSLY READ
LD
2 DZ912-X2 FETCH INT[R~EDIATE WD CNT
• SHORT SSC AND ~CX CHANGED TO FOLLOWING ~SC L 2-11
SSC L CZ210,+
SR IF WD tNT EXHAUSTED 1-11
MDX Ll 320
POINT XRI TO NE~ I/O AREA
LCD
1 0
SAve LAST 2 WOS OF SECTOR
STO
2 Dl902-X2
.JUST REAO/WRITTEN
LCD
2 CZQI2-X2
WD CNT, SCTR AD OR NEXT OP
STD
t 0
STORE BOTH IN NEW 1/0 AREA
MCX
OZ240
RACK TO SET UP NEXT OPERATN

•

•HE"JO
*

eeu
BSS

101EO
I + END OF DISKZ
SZEND-*-6 PATCH AREA

P~NC7910

PMN07980
P~N07990

PMNOAOOO
PMN080I0
PI-AN08020
PI-ANOB025
PI-ANOA030
PMNl'B040
PIoIN08050
PMNOA060
PMNCB010
PMNOA080
PIoINCB090
PI-ANOflIOO
PMN08110
PMNC8120
PMNOB 130
P,..NORI40
PMN08150
PMNOA160
PMNOR110
PMN081RO
PMNOB190
PMN08Z00
PMNC8210
PMN08220
PMN08230
PMNOB240
PMN08250
PMN08260
PMNOB210
PMNOB280
PMNOA290
PMN08300
PMNOR310
PMN08320
PMNOB330
PMN08332
Pto\NOB334
PMNOB336
PMN08338
PMN08340
PMN08350
PMNOB360
PMN08370
PMN08380
PMN08390
PMN08400
PMN08410
PMN08420
PMNOB430
PMN08440
PMNOB450
PMNOB460
PMNOB470
PMNOB4BO
PMN08490
PMNOB500
PMN08510
PMN08520
PMN08530
PMN08S40
PMN08550
PMN08560
PMNOB510
PMNOB580
PMNOB590
PMN08600
PMN08610
P~N08620

PMNOB630
PMN08640
PMN08650
P~N08660

PMN08610
PMNOB680
PMNOB690
PMNOB700
PMN087l0
PMN08120
PMN08130
2-11 PMN08735
2-11 PMNOA740
PMN08750
PMNOB760

Resident Monitor Listinq

JICA
Olre
OUX 0

OllJl) C
~lCf

001>0

coco
coon
eooo
0002

0088<;
008Hfl
00RA7
COAfJf1
00889
00890

DC
1;(

I Dill DC

DC
DC
BSS

'C III
*-*
*-*
*-*
2

*

10 NO. OF CCRE P';lAGE LOR,PI
CORE ADOR/CIO NO.
WORD COUNT
SCTR AonR
WO CNT, SCTR ACCR CORE LDS
2-11
$ZEND ECUATE MOVEC

PMN08770
PMN08780
PMNOfl790
PMNOfl800
PMNOtl810
PMN08820 --$ZEND

ECUIVALENCES

0·C04
0006
C007
OOOP
0009
OOOA
OCOB

cooe

oeoo
C()OF
CCOF
0010
CO 11
C017
:::Ol't
COL')
C016
C017
0018
0019
calA
CC1A
COlC
COLD
CCIE
CalF
0070
C02l

con

(;028
C07D
C032
CC37
OO~C

004l
0046
0048
0050
005<;
C05A

C06E
con
C074
C078
008C
COBO
001:1£
ce8F
0090
CO'll
0092
0093
C094
C095
0096
C097
C09A
OOAO
COAL

C014
0016
0017
0018
0019
COLA
C05A
00B9
0004
COEF
OOFO
COF1
COE4

00892
0089"3
00894
00895
00R96
00897
00898
00899
00900
C0901
CO<)02
009C3
00904
00<)05
00906
00901

00<)08
00901
OO'HO
C0911
00<)12
00913
()O914
C0915
OO"llfl
OO'H 7
0091~

00919
00920
00<)21
00922
0092~

00924
0092')
00926
00977
00971l
0092']
00930
009 '11
(J0932
00933
00934
00935
00936
00937
009~8

00939
00940
00941
00942
00943
00944
00'145
00946
00947
00948
00<)49
00950
00'151
009~2

00953
00954
00955
009'56
00957
00958
00959
00960
00961
00962
00963
00964
00965
00966
00967
00968
00969
00970
00971
00972
00973

*
* EQUIVALENCES FOR OCOM PARAMETERS
*
=NAME EQU
4
NAME OF PROGRAM/CORE LOAD
6
BLOCI< CT OF PROGRA"'/CORE LOAD
=DRCT EQU
=FC,,"T Eeu
7
FILES SW ITCH
8
SYSTF"'/NCN-SYSTEM CARTRIDGE [NCR
=SYSC Eeu
9
JOBT SWITCH
=JBSW EQU
CLB-RETURN SwITCH
=CBSI<. EQU
10
=LCNT Eeu
NO. CF LOCALS
11
CORE MAP SWITCH
12
="'PSw ECU
=I-'OFI EQU
13
NO. CUP CTRL RECORDS ("'OOIF)
14
ACCR OF I-'ODIF BUFFER
=1-'OF2 EeU
1<;
=NCNT Eeu
NO. CF NCCALS
=ENTV EQU
16
RLTV ENTRV ACDR OF PROGRA,..
17
1442-5 SwITCH
=RP67 Eeu
18
OBJECT WCRI< STORAGE' CRIVE CODE'
=TCr:R Eeu
AODR LARGEST HOLE IN FIXED AREA
=FHOL E(,;U
20
=FS1F EQU
21
fiLl< CNT LARGEST HeLl' IN FXA
AeCR LAST HOLE IN USER AREA 2-10
22
=UHOL Ec.:U
2-10
23
BLK CNT LAST HCLE IN UA
=USlE E(,;U
24
OUP CALL SWITCH
=DCSW EQU
PRINCIPAL 110 DEVICE INCICATOR
25
=PIGr Eeu
26
PR INC IPIt.L PRINT CEVICf INDICATOR
=PPTR EQU
2,
RLTV ACDR IN 'STRT OF CIL AODR
=ClhO Eel)
AVAILABLE CAfHRIDGE INDICATOR
28
=ACIN EQU
2G2
29
<.>250 INDICATOR
=GRPH HU
2G?
3C
NO. G2?50 RECORDS
=GCIIlT Eeu
2-2
31
LOCAL-CALLS-LOCAL SwITCH
=LO,)\oi EQU
7-2
32
SPECIAL I L S SWITCH
=X3SW EQU
2-4
t\0. CF *EQUAT RCCS
33
=ECNT Eeu
35
I+ALI< AOCR ENf) OF UA ( ADJUSTED)
=AIIlOU EeU
(BASE)
l+BLK AOOR END OF UA
40
=BNOU ECU
45
=FPhD Eel)
FILE PROTECT ADOR
CARTRIDGE 10, PHVSICAL DRIVE
'50
=PCI 0 Eeu
55
CARTRIDGE 10, LOGICAL DRIVE
=CION Eeu
60
SCTR AODR OF CIB
=CIRA EQU
SCTR AODR OF SCRA
65
=SCRA ECU
70
FOR"'AT OF PReG IN WORI6
01057

G-12

••••••••••••••••••••••••••••••••••••••••••••••••••• PMNI0260
*
• PMNI0210
.STATUS - VERSION 2, MOOIFICATIO~ 11
• PMNI0280
•
• PMNI0290
.FUNCTION/OPERATION • PMNI0300
•
THIS PROGRApoI IS REAC INTO CO~E FROM SECTOR 0 • PMNI0310
•
OF THE SYSTEM CARTRIDGE AND TRANSFERRED TO BY • PMNI0320
•
THE COLD START CARO. DEFECTIVE CYLINDER
• PMNI0330
•
ADORESSES, CARTRIDGE 10 ANO CtISKZ ARE ALSO ON • PMNI0340
•
SECTOR 0 ANO ARE READ IN AT THE SAP-lE TIME. ,
• PMNI0350
•
ALL THAT ~E~AINS FOR THE COLO START PROGRAM IS. PMNI0360
•
TO REAO IN THE RESIOENT IMAGE, SAVE T~E
• PMN10370
•
CARTRIOGE IC ANO TRANSFER TO THE AUXILIARY
• PMNI0380
•
SUPERVISOR THROUGH SOUMP IN THE RESIDENT
• PMNI0390
~ONITOR.
• PMNI0400
•
•
• PMNI0410
.ENTRY - CROI0-2
• PMNI0420
* ENTER PROGRAM BY TRANSFER FRO,.. COLO START CARO. PMNI0430
•
• PMNI0440
.INPUT • PMNI0450
THE CARTRIOGE 10 OF LOGICAL DRIVE ZERO (THE
• PMNI0460
SYSTEM CARTRIOGE) IS READ IN FRO'" SECTOR 0
• PMNI0470
WITH THE CCLO START PROGRAM.
• PMNI0480
•
*
• PMNI0490

Resident Monitor Listing

01051'
CI059
010hO
01061
01062
01061
010t4
01065
ClOth

01067
01ChA
010A,,}
('1070
01071
01072

Clon

01074
01075
CI076
r.lC 77
Ol07R
010H
ClaW]
elOHI
OlOA?
0101' 3
r:lOH4
Olaf'')
010R1
01088
010A9
617F
01090
OLEO
OlE1 !J C824
01091
OtU ('0 ocoe0004 01092
01093
(11E" 0 0125
I) 1 F 'i rClfl4
01094
OU:h /)
0120
01095
1)1E7 C COIF
01096
OlFA 0 C156
01091
01F9 0 DOFI
01098
OlEA CO h6CCOIFE 0109,)
OIEC CO 6EOOOOOA 01100
0) EE 0
COF4
OllC 1
1)1[1'" a lA90
a llC2
OIFO C OlhF
a 11 a 3
01104
OlF 1 C 011A
'J If 2 C 4171
01105
01F3 a 3COO
01106
01101
0110A
01109
Q1F4 C lAlO
01110
01F5 C [11f'3
01111
01112
OJ.F6 0 CHOO
01113
01F7 C r;9A5
01FA C CCOE
01114
01115
011'9 C
0170
0tFA 0 COOD
01116
01FA G 81Al
01117
OllIS
01119
01120
01121
OlFe c 41CO
01122
01121
OIF!: C
FFFF
01124
01FF a OCOO
01125
OlrF c: 4118
01126
020r. 00 14FFOIFE 01121
0702 CO 4CCOOlFE 01128
01129
01130
01131
0204
oeoo
01132
0704 a ceoo
OlIn
0205 0 0001
01134
0206 0 OOES
01135
0201 C 0002
01136
0708 0 10FF
01131
0209
0009
01138
01139
0212
0212

*OUTPUT * PMNI0500
* THE RESIDENT I~AGE IS READ INTO CORE FROM
* PMNI0510
THE DISK.
* PMNI0520
* IN CO~~A* PMNl0530
$heOE
* PMNI0540
*
SCI8A-l
* PMNI0550
*
SCION
* PMNI0560
SCYlN
* PMNI0510
*
SCBSY
* PMNI05S0
*
$(OCT
* PMNI0590
*
* PMNI0600
*EXTFRNAl REfERENCES * PMNI0610
OlCOO SUAROUTINF Te PERFOR~ DISK lIn.
* PMNI0620
*
* PMNI0630
*EXTTS * PMNI0640
*
THE nNLY F.XIT IS Tn THE AUXILIARY SUPERVISOR • PMNI0650
*
AS FaLLOWS* PMN10660
*
BSI
$CU~P
* PMNI0610
*
DC
-1
* PMN10680
*
PMNI0690
*TAAlES/WORK AREAS - NIA
* PMNI0100
*
* PMNI0110
*ATTRTAUTES * PMNI0120
*
THIS PRnGRA~ IS NOT NATURAllY RElOCATABLE.
* PMNI0130
*
* PMNl0140
*NOTES * PMNI0150
*
CISK ERRrRS RESULT IN A WAIT AT SPST2.
* PMNI0760
*************************************************** PMNI0110
*
PMNI0190
PMNI0800
* READ THE RESIDENT IMAGE INTO CORE
*
PMNIOSIO
lOX
Y
PMNI0820
lOO
CR920
SET UP wORD CCUNT AND SCTR PMNlOS30
CROlO STn l
SCIBA-l
*AOOR OF RESIDENT IMAGE
PMNI0840
STO
1 SOCYl-Y
*INITIALIZE OEF CYl NO.1 PMNIOS50
1 3-Y
FETCH LOG DRIVE 0 AREA COOEPMNI0860
lO
STO
1 SACOE-Y
*ANO STORE IT IN COMMA
PMNI0870
STO
CR920+1
SAVE THE AREA CODE
PMNIOSSO
lO
DZOOO-2-21-Y FETCh AND SAVE THE
PMNI0890
STO
SCION
*CARTRIOGE 10
PMNI0900
SET UP TEMPORARY
2-11PMNl0902
lOX l2 CR020
STX L2 SLEV2
*llS02
2-1lPMNl0904
lO
CR010+1
FETCH CORE AODR OF RESIDENTPMNI0910
SRT
16
*IMAGE AND PUT IN EXTENSICNPMNI0920
STO
$DBSY-Y
CLEAR DISK BUSY INDICATOR PMNI0930
STO
SCYlN-Y
INITIALIZE ARM POSITION
PMNI0940
8S1
OlCOO-Y
FETCH RESIDENT IMAGE
PMNI0950
WAIT
WAIT OUT THE INTERRUPT
PMNl0960
PMNI0910
PMNI09S0
* INITIALIZE ITE~S IN CC~MA
PMNI0990
*
PMNIIOOO
SRA
16
PfoINIIOIO
STO
$IUCT-Y
CLEAR ICCS COUNTER
CRenO
PMN11020
lOO
STO
SCIf!A-I-Y *FOR SAVING CORE ON THE CIBPMNll030
PMNII040
CR920+1
FETCH AREA CODE
LO
PMNII050
UCCE-Y
RESn A~EA CODE
STO
U)
PMNII060
CR905
INITIALIZE ~O ZERC TO
c-y
PMNII010
STO
*AN 'foIDX
*-1' leap
PMNIIOAO
** TRANSFER TO T~E AUXILIARY SUPERVISOR
PMNII090
PMNlllOO
* TO CO~PlETE INITIALIZATION
PMNllllO
*
$CUMP-Y
BR TO AUXllLIARY SUPERVISORPfoINll120
BSI
-1
*FOR JO~ PReCESSING
PMN11130
DC
PMNll140
*C~020 DC
2-11PMNll142
*-*
BR TO SERVICE INTERRUPT2-11PMNll144
BSI
1 ClOI0-Y
2-11PMNll146
"'DX l. CR020,-1
2-11 PMN 1114S
RETlJRN
BOSC t CR020
PMNl1160
'*" CONSTANTS AND WORK AREhS
PMNll170
PMNll180
*
o
ASSURE EVEN BOUNDARY
2-11PMNll190
BSS
o
WD CNT,SCTR ADDR OF
2-5PMNl1200
DC
'HONG
*HARMlESS WRITE TO DISK
PMNl1210
DC
SCBSY-SCH12 we CNT AND SCTR
PMNl1220
DC
'RIAD
*ADOR OF RESIDENT IMAGE
PMNl1230
DC
CR905 MDX
*-1
TO BE PUT AT ADDR 0000 2-11PMNl1231
/0212-*
PATCH AREA
2-11PMNl1232
BSS
PMNl1232
END

*

Resident Monitor (Induding Table of Equivalences)

G-13

Resident Monitor Listing

CQC5S-~HE~E"KE

SYMBOL

VALUE

REL OEFN

~fFE~ENCfS

CROI0
CR02e
CR90,)

0
0

CR920
OlOOO

GIE2
01FE
020P.
0204
0206
00F2

OlO10
Ol02C
01060
Ol070
01100
OlllO
OllAO
o1l85
Ol190
01210
Ol215
Ol220
Ol230
Ol232
Ol235
Ol240
Ol250
Ol280
Ol300
0Z330
0Z340
0Z350
OB80
0Z390
Ol400
Ol410
Ol900
Ol901
Ol902
Ol904
OZ905
Ol906
Ol907
Ol908
Ol909
Olno
Ol9ll
Ol912
Ol913
Ol914
OZ915
OZ916
Ol920
Ol925
OZ930
OZ935
OZ940
Ol945
01950
01955
Ol960
Ol965
Ol970
Ol975
Ol980
Ol985
01990
Dl9CJ5
$ACOE
$ACEX
SCCAO
SCHI2
SCIBA
SCION
SCILA
SCLSI;
SCOfolN
SCOR.E
SCPTR
SCTSW
SCWCT
SCXR I
SCYlN
SOAOR
SCBSY
SCCDE
SCC Yl
HOSw
SO"'PF
SCREe
SCU"'P

OOF1
COF9
0100
0102
0104
010E
0111
0119
0120
0146
Ol4C
0150
0154
01')6
0158
01'i0
016C
0160
0178
0170
01AC
0197
OlA4
OlA5
0186
OICA
0122
0123
0124
0126
0127
0128
0129
012A
0126
012C
0120
012E
012F
0130
0131
0132
0134
0135
0136
0137
0138
0139
013A
0138
013C
0130
013E
013F
0140
0141
0142
0143
009F
OOlA
0074
0006
C005
010B
C05A
0018
0001
OOOE
007E
COOF
C072
0017
009A
COlO
OOEE
0077
00A4
0000
0019
C012
003F

CllOl,R
01099,R.
r.ll16,R
01117,R
01091,R
00327,B
OllO,>,B
00644,R
00620,B
00659,E\
COA23,B
00626,M
C0646,"1
00625,8
00A40,B
C0729,Fl
00872,8
C0795,8
00798,8
00632,8
00670,8
00631,M
C0878,8
00.769, B
00748,M
C0764,B
00750,'"
00735,B
00752,M
00819,8
C0802,8
00809,8
00847,8
C0684,R
00833,R
00660,R
00638,R
00864,'"
C0758,M
C0785,'"
C0827,R
00782,'"
00656,R
00790,M
00667,R
00775,R
00728,R
00668,R
C0848,R
00786,R
00781,R
00766,R
00733,R
CC760,R
00629,'"
00789,R
00776,R
00753,R
00749.R
00751,R
00788.M
00779,R
00852,R
00777,M
00820,R
00703,R
00320,'"

C~910

G-14

C

0
0
r
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

a
0
0

0

0
0
0
0
0
0
0

0
0
0
0
0

0

01092
0112')
Cl117
01111
0113')
00617
00674
00626
00611
00631
00647
00649
006')4
00660
00669
007lA
00726
00733
00739
00740
00742
00746
00761
00762
C0774
00778
00792
00A07
00822
00823
00845
00868
00676
00677
0067A
00680
00681
00682
00683
00684
00685
00686
00687
00688
00689
00690
00691
00692
00694
00695
00696
00697
00698
00699
00700
00701
00702
00703
00704
00705
00706
00707
00708
00709
00446
00965
00373
C0255
00254
00886
00966
00963
00256
0026f!
00383
00269
00371
00962
00436
00270
00559
00376
00457
00539
00964
00212
00319

01127,104 0112fl,8
01CG6,,," C1l14,R
00348,B 00645,8 006,)5,R 00714,R OC774,R 00970,R 00971,R Ol022,R 01023,R O1097,R
00648,,.. 01l26,Fl
00829,B C08'i9,Fl 00867,B
00627,M 00722,8
00637,'"

00663,B
007'i4,R C0755,R

00756,~

00767,~

00834,1'4 0083A,B
00836,8
00821,R
00726,R 00744,'" 00868,R 0087'),'"
00822,'" 0082A,M 00855,M
00854,R

00780,'" 00792,R 00816,R
0~745,M

00791,R 00845,R 00849,1'4 00870,R 00876,R

00784,R 00787.R 00865.R

00863,R
00783,R 00857,R
00704,R 01095,'" 01115,'"

O1l35,R
00313,R 0:1092,~ 01113,M
01098,M
00346,R

CO 32.3 ,M
00702,R 00704,R 01104,M
00618,101 00662,M 00719,'"
00702,R 01093,,",
00657,'" 00793,'"
00325,'"
00324,R 00555,8 01127,B

007~I,M

00837,1'4 00839,'" 00969,R 01103,'" 01135,R

Resident Monitor Listing
CROSS-REFERENCE
REFERENCES

SYMBOL

VALUE

REL DEFN

Hll~

0076
C038
007l
0095
0063
0064
C014
0013
00R9
0004
n032
002C
OOR}
OORA
OOBA
00C2
C004
00110
noe}
00D5
00E6
OOEA
OODE
OOEO
00E2
00E4
006E
007C
0033
0008
0009
OOOA
OOOB
OOOC
0000
0039
0014
0070
0015
0034
0015
OOFO
0036
0037
0078
0028
OOill
00A5
0089
0080
0016
OOFl
0020
0011
COEF
0060
C091
00[0

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

00375
00303
00369
00427
00352
00353
00274
00273
00967

0

0

00371
002A3
00389
00'395
004(11
00401
00961
00971
00271
00271

(1

009hQ

0

00364
00414
00547

00322,101
00265,R 00416.B

CO~36

CC3C3,B
00309,B 00129,B
00966,R

HXIT
HL SH
$FPAO
1>GCO'"

t.GRIN
1;I-'ASH
SIASY
t{[1T2
tlAT4
'l> IOcr
t{Q[C;:
$ I?CO
\1205
$1210
$1290
td 400

\1403
$140<;
$1410
$1420
$1425
SI490
S 1492
$1494
$1496
$1499
$KCS\O/
HAST
HFVO
$LEV J
HEV2
SLEV}
$LEV4
$LEV5
H INK
SLKNM
SLNXQ
tLSAO
SNOUP
SNXEQ
SPilUS
1>PBSY
HGCT
HHSE
$PRET
$PS T I
$PS T2
toPST3
HST4
$R"'SW
SRWCl
1;SCAN
$SCI\T
$ S"IL T
SSSlS
$STOP
$SYSC
$SOCO
SSICC
\51'>0
SS7CO
$S2<;0
$<;100
$5900
$5910
SUFOR
Sl;FIO
tULET
" .. ROl
hSD~

UR 3x
$IEND
\1132
$1403
l(?

"AeIN
=ANOU
=B"ICU
=CRSW
=CIAC
=CIPA
=CICN
=CSHN

~052

0053
00?9
C05E
0065
00t6
r,03C
001E:
C070
0079
C02D
007B
007A
OC[4
OlFO
007F
0080
OOF2

0
0
0

a

0
0

0
0

0
0
0

a
0
0
0
0
0
0
0

a

a

0
0
0
0
0
('

0

0096~

C0294
OO2e~

0048'3
C0489
00490
00495
0051')
C0525
C0529
O()530
00552
00555
00540
00541
00544
00549
00365
00381
00295
00260
00261
00262
00263
00264
00265
00307
00960
00367
00314
00296
00297

00331
00343
00347
00351
001'58
00311
00314
on382
00318
00289
00380
0037Cl
OOIlAl
00384
00385
00714

0

01027

0
0
0
0

0091'(

a

00720.~

00739,M 01111.'"

00494,B
00485,M 004P.6,M
00493,R
00534, B
00518,,", 0051q,,",

00554,B
00516,M 00533,R
00520,R
00526,R
00553.R 00972.R
00361,R

OllOO,M

00338.R
00344,M

00285.B 00734,B
00391,B
00391.B 00669,B
C0403.8
00409,B
00337.M
C0359,R

00321.B 00345.8 0034Q,B 00362,B
CC360,8
00326,R 0032H.R
00336.R

00"172

001C
0023
C02A
CODA
001B
OO'3C
0037
005A

0
0

0035A.R
00523,B
0026?,R.
C0967,R
00484,M
00487,M
0026.4,R
005??, B
OC968,R
on517,,",

00Q70
002Qe
0029"1

007F

0

00960,R 00961,R 00962.R 00963.R 00964.R 00965.R

00611,R 00613.R 00ee2,R
00669,B
00786.R
00822.101
00855,M
01090.R
01117,M

00775.R
00781.R
00823.B
00857.R
01093.,",
C1122,B

0077h.R 00777,M
007eA.~ 00789,R
00827.R 0082A,M
00859,B 00863,R
01094,R 01095,M
01126,B

00779,R
C0790.Io'
00829.B
C0864,'"
01097,R

00780,~ 00781.R 00782,M 00783.R 00784,R
00791,R 00792,R 00793.M 00816,R 00820.R
00833.R 0084~,R 0084A'R 00849,~ 00B~2.R
00865,R 00867.B OOAbA,R 00870,R 00875, M
01103.M 01104,M 01l0~.B Olll1.M 01113.M

0078~.M

00821,R
00854.R
00876,R
01l15,M

00Q73

00924
C0900
00916
0092e
00927
00"134

Resident Monitor (Including Table of Equivalences)

G-1S

Resident Monitor Listing

CROSS-REFERENCE
SYMBOL

VALUE

REL OEFN

=oBCT
=cesw
=EC"'T
=FNTY
=FeNT
=FHCL
=FLET
=FMAT
=FPAo
=FSlE
=GeNT
=GRPH
=JASw
=LCNT
"LOSW

C006
0018
0021
0010
CC07
0014
0048
0046
0020
0015
001E
OOlC
C009
COOB
OOlF
COOO
COCE
oooc
C004
COOF
0032
0019
OOlA
OOll
0041
COO8
0012
001b
0050
0017
0055
0020
0002
0093
0004
OOAO
OOAl
0078
0001
C3PO
04CO
0600
0005
OOlB
OCRE
COOl
COOl
00F9
00F7
00ge
C002
COC8
0096
0097
CCO
C003
COC7
001C
0004
CCCO
Call
0033
C008
0092
C095
COOo
C003
C005
COOO
COC')
lCOO
C06E
C005
C004
CO lA
00.4
0002
COO6
0010
COCO
C003
OCCO
0073
0074
Call

0

;MDF 1

=,,",CF2
=MPSW
:NA,..E
=NCNT
=PCIO
=PICO
=PPTR
=RP67
-=SCRA
=SYSC
=TOCR
=UHOl
=ULET
=USZE
=wseT
=X3Sw
'BLCT
'coev
'CION
'CILl
'CIL2
'CLBO
'C"'ON
'C(')"'l
'COMI
'co,..?
'COpy
'CORE
'ePTR
'CCO'"
'ceTA
'CKEP
'OKIP
'[/\lIC
'CREe
'CTYP
'ClIO
'ClIO
'F IlE
'I-'CIB
'HCNG
'HEIIIC
'HWCT
, I CAr:
, I L S4
, I S TV
, I TVX
'KBCP
'KBCV
'LOAC
'lFEIIi
'LFfCC
'LFN,..
'LSCT
'''COR
',,",CRA
'''XOR
'/\lEXT
'CVsw
'PTCII
'RIIIC
'RTflL
• S( I P
'SCT~

'SLET
'STRT
• SUP6
'SUP1
'TCNT
'TVWC
'UAFX

G-16

cooe

COOL

a

0
0
0
0
0

a
0
0
0
0
0
0
0
a
a
0
a
a
0
0
0
0
0
0
0
0

a
0
a
a

0
0

a

0

a

0
0
C'

a
C
f')

0
0
a
0
0
0
0
0
C
0
C

a
()

a

a
C

c
0
a
0
0
C
0
C

a
a
C

0
C

a
0
()

0
C
0
a
C
0

C
0
0
a
0
C

00R9b
C0913
00922
C090b
00897
00909
00931
00930
00n5
00910
00919
00918
OOA99
00901
00920
00903
00904
00902
00895
00905
oonb
00914
00915
00901
00929
00898
0090B
00911
00932
00912
00933
00921
01012
00949
01029
00955
00956
00941
00987
0101A
CIOl?
0102C
01030
01000
00944
C0977
CIC31
01022
CI02l
CC9.,4
OO'RA
01C3?
00952
009')3
C09A9
010?5
C09Al
(ll 00 1
C0990
1)0976·
0099P
01016
00997
0094R
00951
0099?
OlO06

REFERENCES

00885,R

01)b12,R

Cll'l4,R

1)1()1)')

C101l
00<:)91
CIO?f>
CQ93R
01011
01010
OQ99'l
C0950
0097A
009AO
01024
01007
C0979
00987
00939
00940
ala?!
00<:)')4
OlOOA

C1l3f>,R

C0140,R

R..ident Monitor Listing

C~OSS-REfERENCE

SV"'SOL

VALUE'

'WCNT
'WDSA

0009
0003

'xcn

'XECA
'XR3X
, 1132

'1134
"1403
'1442
'2501
ERROR

ceOl
COOO
COO A
008e
0091

ooec
0090
008F

STATE~ENT

REL OHN

REFERENCES

0
0
0
0
C

009<)1)
0\009
009Q3
009R6
00996

0
0

OOq4~

0
0
0
lINE

0091t7
00942
00946
0094')
NU~8E~S

00618
000 OVERFLOW SEtTORS SPECIFIED
000 OVERFLOW SECTORS REQUIRED
269 SV~80lS DEFINED

NO ERRORCS) AND

001

WARNINGCS)

FLAGGeD IN AIOYE ASSENllV

Re~nt

Monitor (IncludJng Table of Equivalences)

G-17

(;,,18

FORTRAN Sample Program

Appendix H. Monitor System Sample Programs

Sample programs 1, 2, and 3 are provided with the monitor system. The first is a
FORTRAN compilation, the second is an assembly, and the third is an RPG compilation
(RPG is available on the Disk Monitor System, Version 2, card system only). All 3 programs
are loaded, listed on the principal printer, and processed as monitor jobs.
The output of the FORTRAN program is printed on the printer specified on the IOCS
control record. The output of the assembler program is printed on the console printer.
The output of the RPG program is printed on the printer specified as the output device
on a file description coding sheet.
Sample programs 4,5,6, and 7 are not provided with the monitor system. These programs illustrate techniques described in Chapter 6. "Programming Tips and Techniques."

1. FORTRAN SAMPLE PROGRAM

The FORTRAN sample program is listed as it runs on a 4K and an 8K system (the LIST
ALL control record is removed for the 8K run). This program reads data cards supplied
with the program and builds 3 files on disk; one in the user area, and 2 in working storage.
The core and file maps for the program are described in Chapter 6.
The FORTRAN card sample program as supplied uses a 1442-6, or -7, and 1132 Printer,
and disk. The paper tape sample program uses an 1134 Paper Tape Reader, a console
printer, and disk. If your system does not have the required configuration, you must make
the following changes to the program:
card SM FO R006

If printed output is to a 1403 Printer, change the IOCS entry from 1132 PRINTER to
1403 PRINTER.

If printed output is to the console printer, change the IOCS entry from 1132 PRINTER
to TYPEWRITER.
card SM FO R007

If card input is from a 2501 Reader, change the IOCS entry from CARD to 2501 READER.

card SM FOR023

If card input is from a 2501 Reader, change M=2 to M=8.

card SMFOR024

If printer output is to a 1403 Printer, change L=3 to L=5.
If the printer output is on a console printer, change L=3 to L=1.

Monitor System Sample Programs

H-l

----------,-----------FORTRAN Sample Program
run on 4K

FORTRAN Sample Pro~Jram Run on 4K
SAMPLE

JOB T

1/

CART SPEC
OEOO

tOG DRIVE
CCOO

CART AVAIL
OEOO

SMFOROOO

DRIVE
CCOO

P~Y

II OUP

SMFOROOI

*STCREOATA ~S UA FllEA
2
CART 10 OECO
DB ADCR 2EAO
DB CNT

SMFOR002

II •

IBM 1130 FCRTRAN

SA~PlE

oe20

PROGRAM

FOR
*ONE WCRD INTEGERS
*ICCSIDISK,1132 PRINTER)
*ICCSICARC)
*u ST All
C
IB~ 1130 FORTRAN SAMPLE PROGRAM
C
SI~LLTA~ECUS EQUATICN PROGRAM
II

(

INTEGER Vl,V2,V3
DIMENSICN AII0,10).XII0),BII26)
DEFINE FILE 10111,lCO,U,Vll,10211.10,U,V21,10311,100,U,V31
FOR~AT I1H1,20XI5HINCOMPATIBILITY)
FOR~AT 11H 20X41HMORE EQUATICNS THAN UNKNOW~S-NC SOLUTIONS)
FORMAT 11H 2CX46HMORE U~KNCwNS THAN EQUATIONS-SEVERAL SOLUTIONSI
FOR~AT I1H 20X15HSCLUTICN MATRIXI
FOR~AT I1H 20X8HMATRIX AI
FORMAT 11M 2CX8~MATRIX BI
FOR~AT I1H 20XIOH A-INVERSEI
FORMAT IIH 20X24~OIAGONAL ELEMENT IS ZEROI
M=;2
l.=3
READ 1"',10)
FOR~ATI80H
SPACE FOR TITLE

301
302
3C3
304
305
3C6
3C7
308

10
1

)

WRITE (l,lOI
12 FORMAT (6110,20XI
REAO IM,12) Ml.M2,tl,L2,N1,N2
C
C
C
C

II

C

l2

C

Nl
N2

~l
~2

C
C

13
17
64
65
66
63
11

91
93
14

70
89

C
C

NO.
NO.
NC.
NC.

OF
OF
OF
OF
~C. OF
NO. OF

ROWS
COl.S
ROWS
COLS
ROWS
COl.S

OF A

OF
OF
Of
OF
OF

A
X
X
B
B

17FlO.4tlOXI
110FI0.4)
IF IN;2-1)63,64,63
IF I l2- 1 ) 63 , 65 , 63
IF IL1-~2163,66,63
IF OH-Nll63,11,63
WRI TE IL,3011
GO TC 2
FCH~AT
FOR~AT

N=;~l

N=M2
IF IMl-~21 'H t 14,93
WRI TE IL,3021
GC TO 2
WRI TE IL,3031
GC TO 2
WRITE IL,3051
DO 10 1=I,N
REAC I ~,l31 I AI I, J I, J=l,NI
WRI TE I ltl71 I A1 I ,J I, J=l,NI
WRI TE 1101'lIlAII,~I, J=l,NI
CONTINUE
FOR"AT IFI0.4,7CX)
WRITE IL,3061
REAC 1~,89) 1BI I I, I z l,NI
WR I TE Il, 89 1 181 I I, 1= I, NI
WRI TE 1102'1IIBIII, l=l,N)
INVERSICto. CF A

C

40
60
80

120

B-2

DO 12G K= 1, to.
O=A(K.K)
IF(CI40,200,40
A(K,K:t=1.0
DO 60 J=l,N
AIK,J)=AIK.JIIO
IFIK-NI80,130;130
IK=K+l
DO 120 I=IK,N
C=AII"KI
AI I , K':0.0
DO 120 J= 1. ~
A(I,Jil=A(I,JI-(ClI'AIK,JII

SMFOR003
SMFOR004
SMFOR005
SMFOR006
SMFOR007
SMFOR008
SMFOR009
SMFOR010
SMFORO 11
SMFOR012
SMFOR013
SMFOR014
SMFOR015
SMFOR016
SMFOR017
SMFOR018
SMFOR019
SMFOR020
SMFOR021
SMFOR022
SMFOR023
SMFOR024
SMFOR025
SMFOR026
SMFOR027
SMFOR028
SMFOR029
SMFOR030
SMFOR031
SMFOR032
SMFOR033
SMFOR034
SMFOR035
SMFOR036
SMFOR037
SMFOR038
SMFOR039
SMFOR040
SMFOR041
SMFOR042
SMFOR043
SMFOR044
SMFOR045
SMFOR046
SMFOR047
SMFOR048
SMFOR049
SMFOR050
SMFOR051
SMFOR052
SMFOR053
SMFOR054
SMFOR055
SMFOR056
SMFOR057
SMFOR058
SMFOR059
SMFOR060
SMFOR061
SMFOR062
SMFOR063
SMFOR064
SMFOR065
SMFOR066
SMFOR067
SMFOR068
SMFOR069
SMFOR070
SMFOR071
SMFOR072
SMFOR073
SMFOR074
SMFOR075
SMFOR076
SMFOR077
SMFOR078
SMFOR079
SMFOR080

FORTRAN Sample Program
run on 4K
C

C

SMFOR081
SMFOR082
SMFOR083
SMFOR084
SMFOR085
SMFOR086
SMFOR087
SMFOR088

BACK SCLUTICN

C

130 IK=/\-1
DO 180 K=I,IK
11=K+l
DC 180 1=I1,N
D=AIK,I)
AIK,I )=0.0
DO 180 J=I,N.
180 AIK,J)=AIK,J)-IC*AII,J))
GO TO 202
200 WRITE IL,308)
GC TC 2
202 WRITE IL,307)
DO 201 1=1,/\
wRITE IL,17)
IAII,J), J=l,N)
WRITE 1103'1) IAII,J), J=l,N)
201 CONTINUE
DO 21 1= 1, N
XII)=O.O
DO 21 K=l,N
21 XII)=X(J)+AII,K)*B(K)
WRITE IL,304)
WRITE IL,89) (XII), l=l,N)
2 CALL EXIT
END
VARIABLE
AIR
V311
L21 I.
KII

ALLOCATICNS
)=00CC-0016
)=01F2
)=OlF8
)=OlFE

S~FOR089

SMFOR090
SMFOR091
SMFOR092
SMFOR093
SMFOR094
SMFOR095
SMFOR096
SMFOR097
SMFOR098
SMFOR099
SMFORI00
SMFOR101
SMFORI02
SMFORI03
SMFOR104
SMFORI05
SMFORI06
SMFORI07

XIR )=OOFO-OODE
~II
)=01F3
NlI I )=01F9
IKII )=OlFF

ALLCCATICNS
=020E 302 =0216
=0289 17
=02BD
=0334 70
=0386
=05C6 21
=0520

BIR
LI I
N211
1111

)=01EC-OOF2
)=OlF4
)=OlFA
)=0200

V21 I )=OlFl
)=01F7
JII )=OlFD

VlII )=OlFO
M211 )=OlF6
111 )=OlFC

OIR )=OIEE
MlII )=01F5
NI I )=OlFB

llil

STATE~ENT

301
13
14
201

=0235
=02CO
=03EB
=056C

:i03
89
40
2

304
64
60

=0251
=0300
=03FA

305
65
80

"'025E
=0306
=0416

306
66
120

=0267
=03CC
=0435

307
63
130

=0270
=0312
=0466

308
11

180

=027A
=0318
=0491

10
91
200

=028B
=0328
=04C6

12
93
202

=02B5
=032E
=04CC

FEATURES SUPPCRTED
C/\E "CRn INTEGERS
ICCS
CALLEC
FACDX
SIOI

SUBPRCGRA~S

FDIV
SDFIC

F~PYX

SUBSC

REAL CCNSTANTS
.100000E 01=0204

FLO
SDWRT

FSTO
SOFX

FSTOX

FSBRX

CAROZ

PRNTZ

SRED

SWRT

SCOMP

SFIO

SIOFX

.OOCOOOE 00=0206

I/\TEGER CCNSTA/\TS
2=0208
3=0209
CCRE

FLOX
SOCOM

FOR
VARIABLES

1=020A

101=02CB

102=020C

103=0200

RECUIRE~E/\TS

CO~~CN

E/\C OF

0

516

PROGRAM

IJ74

CC~PILATIC/\

Monitor System Sample Programs

H-3

FORTRAN Sample Program
run on 4K
II

XEC

SMFOR108

*l((Al.FlCAT,FARC.IFIX,PAUSE,HOLEZ

SMfOR109

*fIlESII03,FIlEAI
FilES All(CATI(~
lC3 02EA OCOI OECC FllEA
101 COOC OCOI OEOO 02EC
102 COOL 0001 OECO 02EC
STCRAGE AllCCATIC~
R 4C 03BF (~EX) ACOITICNAL CCRE REQUIRO
R 43 0124 (~EX) ARIT~/FU~C SCCAL wO C~T
R 44 06B2 (~EX» F IIC, lie SOCAL WO CNT
R 45
07B6 (HEX) DISK FI/C seCAL WO CNT
R 41 C004 (~EXI ~CS UNUSEC BY CORE LeAD
LIBF TRANSFER VECTCR
X~CS
Oq~A seCAl 1
EBCTB OFS1 SCCAl 2
HCLlB OFI5 SCCAl 2
GETAC OE02 seCAL 2
~OR~
01(0
FACOX 0955 SCCAL
FSBRX 092C seCAl
F~PYX
08F8 seeAL
FCIV
0816 seCAl
FSTex 070C
FLCX
07e8
SCCG~
0978 seCAl 3
SOfX
08E3 SCCAl 3
SD~RT
0901 SCCAL 3
SICFX 09A6 SOCAL 2
SUBSC 07A2
SIC I
09AA SCCAL 2
SCC~P
0983 seCAL 2
S~RT
08A2 SCCAL 2
SREO
08A7 SCCAL 2
FSTO
0770
FLO
07BC
PRNTl OCF8 SOCAl 2
CAROl OC48 seCAL 2
SFIO
09BF SCCAL 2
SCFIC 0960 SCCAL 3
HCLEZ 086A LOCAL
PAUSE 086A lOCAL
IFIX
086A LOCAL
FARC
086A LOCAL
FLCAT 086A LOCAL
SYSTE~ SUBROUTINES
ILS04 OCC4
ILS02 00B3
ILSOI OF56
ILSOO Of6F
FLlPR 0804
04Cl (HEX) IS TH! EXECUTION ADD~

SMFORIIO

IBM 1130 FORTRAN
4,2150

-2.1200
1.1220

MATRIX A
-1.2120
1.1050
3.5050
-1.6320
-1.3130
3.9860
MATRIX B

SAMPLE PROGRAM

3.2160
1.2470
2.3456

0.2915
0.1631
-0.02U
0.9321
1.2".
0,7429

H-4

O.OIU
0.3836
0.1029

A,·INVERSE
-0.0461

o.nu

0.300,
SOLUTION MATRIX

FORTRAN Sample Program
run on 8K

FORTRAN Sample Program Run on 8K

II JOB T

SAMPLE

LOG DRIVE
0000
V2 fo411

CART SPEC
2222
ACTUAL

UK

CART AVAil
2222
CONFIG

8K

II oUP

SMFOROOI

.STOREoATA WS UA FILEA
2
CART 10 2222
08 AD OR
53BO
08 tNT
II •

IB~

SfilFOR002
0020

1130 FORTRAN SAf04PLE PRCGRAM

SMFOROOl

II FOR

.ONE WORD INTEGERS
.IOCS(DISK,1132 PRINTER I
.IOCS(CARDI
.U ST ALL
C
le~ 1130 FOMTRAN SAMPLE PROGRAM
C
SI~ULTA~EOUS ECUATICN PROGRA~
C

INTEGER VI, V2,V3
DIf04ENSIGN A(10,lOI,XCIOI,BC1261
DEFINE FILE 10ICl,lCQ,U,Vll,102Cl,10,U,V21,103Cl,lOO.U,V3)
FCR~AT
IIHI,ZOX15HINCOMPATIPIliTYI
FOR~AT 11H ZOX41~MORE EQUATIONS THAN UNKNCWNS-NO SOLUTIONS)
FOR~AT 11H 20X46H~ORE UNK~CWNS THAN EQUATIONS-SEVERAL SOLUTIONS1
FCR~AT 11H lOX15HSOLUTION MATRIX)
FOR~AT 11H 20X8HMATRIX A)
FOR~Ar IIH 20xe~f04ATRIX B)
FOR~AT 11H 20XI0H A-INVERSE)
FOR~AT 11H 20X24~DIAGONAL ELEMENT IS ZERO)

301
30Z

303
304
305
306
301
308

~=2

L=3
REAC IM,lOI
10

FCR~ATI80H

SPACE

I

F~R

I

wRITF- (L,lOI
12 FCR~AT 16110,2CXI
READ 110',121 Ml,~2,Ll,LZ,Nl,~2
C
C

~1

C

~2

C
C

Ll
l2
Nl

C
C

"'2

C

NC. CF RC\\S CF
NC. CF cns CF
C~ RCwS OF X
NC. CF COLS Of )C
NC. CF ROilS CF PNC. Cf cns OF I'

~O.

TITLE

SMFOROOIt
SlilFOR005
SMFOR006
SMFOROOl
SMFOR008
SlilFOR009
SMFOROIO
S.. FOROll
SMFOR012
SMFOR013
SMFOR014
SMFOR015
SMFOR016
SMFOR017
SMFOROIB
SMFOR019
SMFOR020
SMFOR021
SfilFOR022
S.. FOR023
S,.FOR024
S,.FOR025
SHOR026
S,.FOR027
SfilFOR028
S,",FOR029
SfilFOR030
SfilFOR031
SfilFOR032
SHORon
SMFOR031t
SfilFOR015
SMFOR036
SHORon
S~FOR038

13

11
64
65
66
63
11

11FIO.4,lOXI
FCR~Ar
I I O~ 10.4 I
IF 1""2-1163,64,63
IF Il2-1163,65,63
IF ILl-~2)6j,66,63
IF 1~1-1';1I6j,lI,63
WR I TE Il, 30 11
GC TC 2
FCR~Ar

t..=~l
1\=~7

c

S"FO~OOO

PHY DRIVE
0002

IF 1~1-~2) '11,14,93
91 wR I TE IL,3U2.1
GC lC 2
93 wRITE Il, 30 j I
CC TC" 2
14 \oR I TE Il ~ 30,> I
DC lC I = I ,N
REAC I~,UI I All ,J I, J-l,NI
wR I TE I L, 17 I I AII, J I, J= 1 ,N I
wRITE IICl'II1AII,JI, J= 1 ,N)
70 CCNTlNUE
89 FCR~AT IFI0.4,70)c1
wR ITE I L, 3061
REAC I ~,8'11 IBIII, l-l,N I
wRI TE I L,fl91 I e II I, 1"I,N)
wRITE 110Z'II1BIII, l-l,NI

C

II\VERSICN Uf A

C

40
60
80

120

CC 120 K=l,N
D=AIK,KI
IFICI40.Z00,4C
AIK,KI=1.0
DO 6C J=l,N
AIK,JI=AIK,JI/C
IFIK-N180,130,130
IK=K+l
DC 120 I=IK,N
("A(I,K)
AII,KI=O.O
CO 120 J-l,N
ACI,JI-ACI,JI-CC.ACK,JI)

SfilFOR039
SfilFOR040
SMFOR041
SfilFOR042
SfilFOR043
S/llFOR041t
SfilFOR045
SfilFOR046
SfilfORC47
SfoIFOROlt8
S,.FOR049
SfoIFOR050
S"'FOR051
SfilFCR052
S~FOR053

S,.fOR054
SfilFOR055
S"'FOR056
SfoIFOR051
SMFOR058
SMfOR059
S"'FOR060
SfoIFOR061
S"'FOR062
SJIIFOR063
S"'FOR064
SfilFOR065
Sf04FOR066
SJIIFOR067
SMFOR068
SMFOR069
SfilFOR070
SJIIFOR071
SMFOR072
SMFOR071
S"'FOROllt
SMFOR075
SMFOR076
SJIIFOR071
S.. FOR078
SMFOR019
SlilFOR080

Monitor System Sample Programs

H-5

FORTRAN Sample Program
run on 8K

c

C

S"'fOR081
S"'fOR082
S.. FOR083
S"'FOR084
S"'fOR085
SI'IFOR086
S"FOR087
SI'IFOR088
S.. fOR089
SI'IFOR090
S"FOR09l
5"FOR092
5"FOR093
S"FOR094
S"fOR095
S"FOR096
5"FOR091
5"FOR091
5"FOROft
S"FORIOO
S"FOR101
SIiIFORI02
SIiIFORI03
Sf/FeRIO ..
S"'FORI05
SIiIFORI06
S"'FORl07

BACK SCLUTION

C

130 I K=N-l
DC 180 1<=l t II<
11"1<+1
00 leO 1:l1 t N
C .. jUK,J I
AII~.II=O.O

DO 180 J"'ltN
180 AIKtJI=A(K.JI-IO*AII,JI)
GO H 202
200 WRITE IL,3081
GO TO 2
202 ~R1TE ILt3011
DC 201 I-I.N
WRITE IL,171 IAII,J), J-I.NI
WRITE 1103'11 IA(I,J', J-l.NI
201 CONTINUE
DO 21 lal.N
XI (1=0.0
DO 21 K=I,N
21 XIKlaXIII+AII,KI*BIKI
" RKIE I L ,304 I
WRffTE IL,891 lXIII, 1=I.NI
2 CAI.l EXU
ENI)
VARIABLE ALLOCATIONS
AIR 1-000C-0016
XIR I=COFO-OOOE
V31 I laOlF2
... I I I"C IF3
NI I I 1=01F9
L211 l"'OH8
I( I I
I-OlFE
11(11 I-OlFF

ALLOCATIONS
=020E 302 =021B
=02B9 17
-02BO
-0334 70
-0386
-0506 21
=0520

01 R I-OlEE
I l"OH5

BI R I-OlEC-OO'F2
Lli

I-OIFit

VIII I-OlFO
"211 '-01F6
I (I I-Olft

~1C

N2( I I-OIFA
1111 1-0200

Nil

'-OlFB

V2 (I '-OlFI
LlC I )-01F7
J( I '=OlfO

STATE~ENi

301
13
14
201

303
89

4C
2

-02~5

30lt

=C2CO
-C3EB
=05"C

64.
60

-0251
=C300
-03FA

305

·02'5,E

65

"03C16

80

-0416

306
66
120

"0267
-030C
-0435

307

63
130

-0270

308

-027A

-0312

11
180

-0318
-0491

-0468

10
91
200

-028B
-0328
-04C6

12

-\t)285

93
202

-DUE

-'t)4CC

FEATURES S~PPCRTED
ONE ,"CRO INTEGERS
10CS
CALLED SUBPROGRAMS
FAOOX
F~PYX
fOIV
SUBSC
SOFIO
SIOI
REAL CONSTANTS
.100COOE 01-C204

FlD
SOWRT

FlOX

FSTO

sccm~

SDFX

1=C20A

CCRE RECUIRE ... ENTS FOR
CO ...... ON
0 VARIABLES

5it:

H-6

CO~PILATION

fSBRX

CARCl

.CCOCOOE CO=C206

INTEGER CONSTANTS
2=C208
3=0209

END OF

FSTOX

101=0208

PROGRA ...

874

102=020C

lC3-0200

PRNTl

SREO

SWRT

SCOIiIP

SFI0

SIDfX

FORTRAN Sample Program
run on 8K
1/ XEQ

L

2

SflFCR108

*LOCAL.FLOAT,FARC.IFIX.PAUSE,HCLE7,FLO

S"FQR109

*FILES(103,FILEA)
fILES AllOCATION
103 053B oeOl 2222 FILEA
101 COOO 0001 2222 0530
102 COOl CCOI 2222 0530
STORAGE ALLOCATION
R 41 OC42 (HEX) wDS UNUSEC 8Y CORE LCAD
LIBF TRANSF~R VECTOR
X~DS
1244
EBCTB 1241
HOL TB 12C5
GETAD l1C2
NORM
1198
FADOX 1143
FS8RX lIlA
FMPYX lOEb
FOIV
1086
FSTOX 12F4 LOCAL
FLDX
1310 LOCAL
SOCO~
0842
SDFX
07AD
SDWRT 07C8
SIOFX OB2A
SU8SC 1064
OB2E
SIOI
SCOMP 0806
SWRT
OA22
SRED
OA27
FSTO
l2F8 LeCAL
PRNTZ OF1C
CAROl OECC
SFIO
OB43
SOFIO oa2A
FLO
1314 LOCAL
HOLEl l2F4 LOCAL
PAUSE 12F4 LOCAL
IFIX
12F4 LOCAL
FARC
12F4 LOCAL
FLOAT 12F4 LOCAL
SYSTEM SUBROUTINES
ILS04 COC4
IlS02 00B3
ILSOI 132C
ILSOO 1345
FliPR 128E
04Cl (HEX) IS THE EXECUTlCN AOOR

S"FCRllO

Monitor System Sample Program

0-6.1

This page intentionally left blank

H-6.2

Assembler Sample Program

2. ASSEMBLER SAMPLE PROGRAM

The core map printed with the assembler sample program is described in Chapter 6.
"Programing Tips and Techniques."
output on
the principal
printer

II JOB

SMASM10l

LOG DRIVE
0000
V2 tl09
II

CART AVAIL
OEoa

CART SPEC
OEOO
ACTUAL 32K

DRIVE
0000

P~Y

CONFIG 32K

AS~

*LIST
*PRINT

SY~BOL

SMASM102
SMASM103
SMASM104

TABLE
CCMPUTE
COOOl
CC002
CC003
00004

oeoo')

C0006
ee001
CC008
00009
C0010
a
CC011
C0012
CC013
C006 a E829
C0014
oe07 0 OCIB
CC015
00016
C0011
0008 20 05097663 C0018
C0019
OC09 a ocoo
C002C
OCOA 1 OC23
CC021
OCC8 1 001?
OOCC a OOlA
C0022
OCCC 20 23A17170 C0023
C0024
OCOE a 2COO
oeOf 1 OC14
CC025
0010 20 23A17170 C0026
0011 a CCOO
C0027
0012 0 7CFO
C0028
0013 0
6038
C0029
0014 a OCOE
OC030
eeoc
C0031
0015
0022 a 8181
CC032
OC23 a ceoo
C0033
C0034
0024
OC16
C030 0 FC40
CC035
00036
OC31 0 0040
oeoo
0032
C0037
OOCO
OCOl
0002
CCC4
OC05

0
20
30
20

C030
064D6063
06898640
091SS9CO
1008

T~E

SQUARE ROOT OF 64

***************************************************

** THIS PROGRA~ CO~PUTES T~E SQUARE ROCT OF 64 **
* *ANC PRINTS THE RESLLT IN THE CONSOLE PRINTER.*
*****************************************************
BEGIN LD
LIBF
CALL
LIBF
SLA

064
FLOAT
FSQR
IFIX

*
*

IC BLILD EBCDIC INTEGER
RESULT ANC EBCDIC BLANK IN WORD1.
MASK
WCRD1
CCNVERSION INPUT AREA
CCNVERT ~ESSAGE FROM EBCDIC
TC ROTATE/TILT CODE.
EBPRT
CALL CCNVERSION SUBROUTINE
o
CONTROL PARA~ETER
WORDl
INPuT AREA
TYPE+l
OUTPUT AREA
26
C~ARACTER COUNT
TYPEO
TYPE MESSAGE
/2COO
CONTROL PARAMETER
TYPE
I/O AREA
TYPEO
wAlT FOR TYPING COMPLETE

*
*

BUSY

INPUT TO THE SQUARE ROOT
INTEGER TO FLOATING PT.
FLOATING PT. SQRT.
FLOATING PT. TO INTEGER

8
~ASK

OR
STO
LIBF
DC
DC
DC
DC
LIBF
DC
DC
LIBF
DC
~cx

EX IT
TYPE DC
BSS
DC
WORCl DC
EBC
fJASK DC
064
DC
END

BLSY

BR TO WAIT FOR COMPLETION
RETLRN TO ~CNITCR ceNTRaL
I/O AREA WORD COUNT
14
RESERVE AS PRINT BUFFER
13
TWO CARRIAGE RETURNS
/8181
CONVERSION INPUT AREA
*-*
• IS Tt-'E SQUARE Real OF 64 •
IF040
EBCCIC INTEGER MASK
64
CCNSTANT FOR SQUARE RCOT
BEGIN

SMASMI06
SMASMI07
S~AS~108

SfJASMI09
SMASMllO
SMASMlll
SMASM1l2
S~ASM113

Sf.lASMl14
SMASMl15
SMASMl16
SMASM117
S~ASM1l8

SMASMl19
SMAS~120

S~ASM121
S~,ASM122

SMASM123
SMASM124
S"'ASM125
S~ASM126

SMASM121
SMASM128
S~ASM129

SMASM130
SMASM131
SMASM132
SMASM133
SMASM134
SMASM135
SMASM136
SMASM131
SMASM138
S~ASM139

SMASM140
SMASM141
S~ASM142

Monitor System Sample Programs

H-7

Assembler Sample Program

*SYt-'BOL TABLE.
BEGIN
\>IORDl

0000
0023

BUSY

OOlC

COO OVERFlCW SECTCRS SPECIFIED
COO OVERFLCW SECTCRS REQUIRED
C06 SY~BCLS DEFINED
NC ERRCRlS) AND
NO \>IARNING£S)

064

H-8

8 IS THE SQUARE ROOT OF 64

t-'ASK

FLAGGED IN ABOVE

/,1 XEC
l
R 41 7908 lHEX) hCS UNUSED BY CORE LOAt
CALL TRANSFER VECTOR
fSCR
0248
LI8F TRANSFER VECTOR
FARC
069A
X\Io'CS
067E
Hell
062E
PRTY
05DE
eBPA
058E
FACO
04CD
FCIV
053C
FLO
0488
FACDX 04E3
Fto'PYX 049E
FSTO
046C
FGETP 0452
NORM
042·8
TYPEO 0312
ESPRI 02AC
IFIX
0280
FLOAT 0230
SYSTE~ SUBROUTINES
ILS04 OCC4
.
IlS02 00B3
01FE (HEX) IS THE EXECUTION ADDR

output on
the console
printer

0031

0030

TYPE

0014

ASSEM8L~
SMASI~

143

RPG Sample Program

3. RPG SAMPLE PROGRAM

The RPG program as supplied, uses 1442 input and 1132 output. If your system does not
have the required configuration, you must make the following changes to the program:
card RGS009

If card input is from a 2501 Card Reader, change READ42 to READOI.

card RGS010

If printed output is to a 1403 Printer, change PRINTER to PRINT03. If printer output is
on the console printer, change PRINTER to CONSOLE.

output on
principal
printer

II JOB

LOG DRIVE
0000
V2 M09

CART SPEC
OEDO
ACTUAL 32K

CART AVAIL
OEDO
OED4

PHY DRIVE
0000
0001

CONFIG 32K

II RPG

V1-3
SEQ NO

0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044

1130

RPG

RGSPL

PG LIN

SPECIFICATIONS COL 6 - 74

ERRORS

H

01
01
02
02
02
02
02
02
02
02
02
03
03
04
04
04
04
04
04
04
04
04
04
04
04
04
04
04
04
05
05
05
05
05
05
05
05
05
05
05
05
05
05
05

F* 1130 RPG SAMPLE PROGRAM,
F* THIS PROGRAM PRINTS ~N ACCOUNTS RECEIVABLE REGISTER WITH
F* INVOICE TOTALS, CUsTOMER TOTALS PRINT AS A RESULT OF A CONTROL
F* BREAK IN COLUMNS 39-43 OF THE INPUT CARD. CORRECT OUTPUT
F* APPEARS IN ACCOMPANYING DOCUMENTATION. CARDS ARE SORTED ON
F* COLUMNS 39-43 AND ARE IDENTIFIED BY AN ELEVEN PUNCH IN CARD
F* COLUMN 1.
F*
FINPUT
IPE F
eo
READ42
FOUTPUT o
F
120
OF
PRINTER
I INPUT
AA 01
1 ZI
8 29 NAME
1
30 3l0MONTH
1
32 3300AY
I
34 360INVNO
I
39 430CUSTNOL1
I
44 450STATE
I
46 480ClTY
I
74 802INVAMT
C
01
INVAMT
ADD TOTAL
TOTAL
82
C
01
INVAMT
ADD GRPTOT
GRPTOT 82
OOUTPUT H 201
1P
o
OR
OF
o
53
A C C 0 U N T S R'
o
17
E C E I V A 8 L ERE '
o
88 'R E GIS T E R'
o
H 1
1P
o
OR
OF
o
25 'CUSTOMER'
o
80 'LOCATION
INVOICE'
o
109 'INVOICE DATE
INVOICE'
o
H
1P
2
o
OR
OF
o
42 'NUMBER
CUSTOMER '
o
46 'NAME'
o
ClTY
19 'STATE
NUMBER'
o
DAY
108 'MO
AMOUNT'
o
o 2
01
o
CUSTNOZ
22
o
NAME
53
o
59
STATE Z
o
CITY Z
67
o
79
INVNO Z
o
MONTH Z
89
o
DAY
Z 97
o
INVAMT
109 'S
O.
o
T 2
L1
o
GRPTOT B 109 's
O.
o
110
o
T 2
LR
o
TOTAL
109 'S
O.
o
111 '**'

RGSPL
RGS001
RGS002
RGS003
RGS004
RGS005
RGS006
RGS007
RGS008
RGS009
RGSOIO
RGSOll
RGS012
RGS013
RGS014
RGS015
RGS016

010
020
010
020
030
040
050
060
070

oeo

090
010
020
010
020
030
040
050
060
070
080
090
100
110
120
130
140
150
160
010
020
030
040
050
060
070
08.0
090
100
110
120
130
140
150

'*'

RG~017

RGS018
RGS019
RGS020
RGS021
RGS022
RGS023
RGS024
RGS025
RGS026
RGS027
RGS028
RGS029
RGS030
RGS031
RGS032
RGS033
RGS034
RGS035
RGS036
RGS037
RGS038
RGS039
RGS040
RGS041
RGS042
RGS043
RGS044
RGS045
RGS046
RGS047
RGS048
RGS049
RGS050
RGS051
RGS052

Monitor System Sample Programs

H-9

---RPG Sample Program

----

INOICATORS
IND

DISP

INO

DISP

IND

D'!

MR

0150
0156
0!5C
0162
0168

00
L2
L8
H4
01

0151
0151
015D
0163
0169

OF

0152
0158
015E
0164

L1

L7
H3
H9

L3
L9
H5

SP

INO

DISP

IND

DISP

INO

01 SI'

OV
L4
LR
H6

0153
0159
015F
0165

1P
L5
HI
H7

0154
Ol5A
0160
0166

LO
L6
H2
He

015!)
0161
016'7

FIELD

DISP

L

I'NVNO
INVAMT

0187 005 N 0
019A 00')'
2

0151~

FIELD NAMES
FIELD

DISP

NAME
CUSTNO
TOTAL

016A 022 A
0180 005 N 0
01A2 008 N 2

L

T D

FIELD

01 SF'

MONTH
STATE
GRPTOT

0181 002 N 0
0193 002 N 0
01Ae 008 N 2

L

T 0

FIELD

DISP

L

T D

DAY
CITY

0184 002 N 0
0196 003 N 0

'r 0

..

LITERALS
LITERAL
ACe 0 U N T S R
REG 1ST E R
LOCATION
INVOICE
NUMBER
CUSTOMER
STATE
CITY
NUMBER

....

LENGTH
24
15

22
24
24
11

2

TYPE
A
A
A
A
A
E
A

DISP
0184
01E6
OlFF
022E
024C
0278
028,9

LITERAL
E C E I V A 8 L E A E
CUSTOMER
INVOICE DATE
INVOICE
NAME
DAY
AMOUNT
MO

*

LENGTH
24
8
23

4
21
1

TYPE
A
A
A
A
A
A

KEY ADDRESSES OF OBJECT PROGRAM
NAME OF ROUTINE
H + D LINES
DETAIL CALCS
CHAIN ROUT 1
LOW FIELD
CLOSE FILES
FILE' SEQ 2

HEX DISP

NAME OF ROUTINE

HEX OISF'

040E
046E
0302
042E

TOTAL LINES
TOTAL CALCS
CONTROL FLO
EXCPT LINES
FILE SEQ 1

04EC
0470
03F5
04FA
02EC

0678

0377

END OF COMPILATION
II XEQ
L
;
R
R 41 6016 (HEX) WOS UNUSED BY CORE LOAD
CALL TRANSFER VECTOR
RGERR OC24
HLEBC OAIA
LIBF TRANSFER VECTOR
RGSI5 11E4
RGBlK llAA
RGEDT 105A
RGMVZ OFA6
RGAOO 0000
RGSII 0080
RGMV5 OC72
RGMV3 0050
RGCMP OCFE
RGMVI OC6A
PRNT! OA9A
ZIPCO D97A
CARDD 087C
SYSTEM SUBROUTINES
IlSX4 1249
ILSX2 1260
IlSXl 1286
IlSXO 12A3
020F (HEX) IS THE EXECUTION ADDR

H-1O

DISP
OlCD
01F6
0216
0247
026'
0287

RPG Sample Program

output on
specified
output
device

A( ( 0 UNT S
(US TOMER
NUMBER
10112

(USTOMER NAME
AMALGAMATEO (ORP

R E eEl V A B L E REG I S T E R
LOCATION
(ITY
sTATE
53

61

INVOICE
NUMBER
11603

INVOICE DATE
MO
DAY
11

INVOICE
AMOUNT

10 S
S

11315

8ROWN WHOLESALE

30

231

12324

12

28 S

11315

BROWN WHOLESALE

'0

231

99588

12

14 S
S

11891

FARM IMPLEMENTS

41

11

10901

10

18 S

S
18530

BLACK OIL

16

61

11509

11

18530

ALACK OIL

16

61

12292

12

389.25
389.25*
802.08
261.17
1.063.25*

27.63
27.63*

8 S

592.95

S

950.97

S

1,543.92*

2~

20116

LEATHER SELT CO

36

471

11511

11

8 S

20116

LEATHER BELT CO

36

471

12263

12

17 S
S

335.63
121,75
457,38*

29011

GENERAL MFG (0

6

63

11615

11

14 S

440,12

29011

GENERAL MFG CO

6

6'

11676

11

23 S

722,22

S

1,162,34*

2905.

A.. B-C DIST (0

25

39

9689

9

11 S

645,40

2905.

A-B-C DIST CO

25

39

11605

11

11 S

211,69

29054

A-B-C OIST CO

25

39

12234

12

14 S

559,33

S

1,476,42*

S

6.120,19**

Monitor System Sample Programs

1-1-11

FORTRAN Sample Program
using unformatted I/O

4. USING FORTRAN UNFORMATTED 1/0

This program is referred to under "Initializing $$$$$ Data Files for Use with FORTRAN
Unformatted I/O" in Chapter 6.
II

JCI3

CEce

lce CRIVE

CART SPEC
OECO

CCOO

V2 foICc]

ACTGAl 32K

CART AVAIL
OECC

PHY DRIVE

cooe

CCNFle 32K

II [CP

*STCRECATA hS FX SSSlS CalC
CART IC CECO
ce ACCR
IF10
DB CNT
II

CCAO

FCR

*ICCS(LCnSK)
*llST All.
*I\A,.,E Lf\FCX
CI~EI\SIC~ A(200),B(24),C(3CO.),E(12),FI3CO)
CATA A/200*4.01,B/24*5.C/,C/300*6.CI
WRITE (lO)A
hRlTE (10)8
\o.RITE IIO)C
H.C FILE 10
eACKSPACE lC
BACKSPACE Ie
REAC(lCIF
I{Ewll\C 10
REAC(lC)
REfIC(10)E
PAL.SE <;<;<;9
CAl.l EXIT
END
VARIAelE AllCCATI(I\S
A(I< )=018E-CCCO
BIR )=OIBE-C190
CIR 1=0416-01CU

EIR t=042E-0418

FEATuRES SUPPCRTEC
ICCS
CALLEC suePRC(RAfoiS
~REO
L\o.RT
LC(fJP

BCKSP

REWt-;C

ECF

PAUSE

CCf\STAI\TS
10=0688
<;<;Q9=0689 -26215=068A

II\TE6E~

CCRE RECLIREfJEI\TS FeR UNFCX
CCfJfoICI\
C VARIAPLES
1672

PRCG~AM

EI\C CF CCfJPILATICI\
II

CUP

*STCR[
\o.S LA ul\FCX
CART IC OECO
ce ACCR 2E50
II

XEC; L!MCX

11-12

oe

CNT

CC41

52

UFIO

UICAF

FIR 1=0686-0430

SYSUP Reeling Sample Program
for one drive systems

5. PROCESSING ON ONE DISK DRIVE A FILE THAT EXTENDS OVER TWO CARTRIDGES

This program is referred to under "Reeling" in the section "SYSUP" in Chapter 6.
II

JOB

OEDO

LOG DRIVE
0000

CART SPEC
OEDO
ACTUAL 32K

V2 M09

CART AVAIL
OEDO

PHY DRIVE
0000

CONFIG 32k

II FOR
*NAME LINK2
*IOCS(1132 PRINTER)
*tOCS(DtSK)
*ONE WORD INTEGERS
*LIST SOURCE PROGRAM
DIMENSION J(320)
DEFINE FILE 2(200.320.U.K)
K • 1
L • 0

4

5
6

10

DO 5 t • 1. 199
L • L + 1
DO 4 N • 1. 320
J(N) • L
WRITE (2'K) J
L • 999
DO 6 N • 1. 320
J(N) • L
WR I TE (2' K) J
WRITE (3.10)
FORMAT(/' LINK No.2 EXECUTED.'/)
CALL EXIT
END

SUPPORTED
ONE WORD INTEGERS
IOCS

~EATURES

CORE REQUIREMENTS FOR LINK2
COMMON
0 VARIABLES

334

PROGRAM

142

END OF COMPILATION
II

DU!)

*DUMP
WS CO LINK2
CART 10 OEDO DB AOOR 4530

DB CNT OOOB

II FOR
*NAME LINKl
*IOCS(DISK.1132 PRINTER)
*ONE WORD INTEGERS
*LIST SOURCE PROGRAM
DIMENSION J(320)
DIMENSION L(2)
DEFINE FILE 1(210.320.U.K)
K • 1
L(2) • 3196
L(U • 0
M • 0

DO 5 I • 1. 209
M M+ 1
DO 4 N • 1. 320
4 J(N) • M
5 WRITE (lIK) J
M • 999
00 6 N • 1. 320
6 J(N) • M
III

Monitor System Sample Programs

H-J 3

------------------SYSUP Reeling Sample Program
for one drive systems

WRITE (1 'K) J
WRITE (3.40)
40 FORMAT (40HOLINK NO.1 EXECUTED. CHANGE CARTRIDGES.llll
PAUSE 1111
CALL SYSUP (L(Z»)
CALL LINK (LINK2)
END
FEATURES SUPPORTED
ONE WORD INTEGERS
10<;5

CORE REQUIREMENTS FOR LINK1
COMMON
0 VARIABLES

136

PROGRAM

180

END OF COMPILATION
II

DUP

*STORECI
WS UA LINK1 0001
*FILES(l.OATA.OEDO)
FILES ALLOCATION
1 0206 0002 OEOO DATA
STORAGE ALLOCATION
R 41 686C (HEX) WDS UNUSED BY CORE LOAD
CALL TRANSFER VECTOR
FSYSU 13F1
FSLEN 1205
SYSUP OCA2
LIBF TRANSFER VECTOR
NORM
1418
FLOAT IlFA
IFIX
llCE
PAUSE OC8e
SCOMP 0799
SWRT
06B8
SDCOM 0408
SDA I
043A
SOWRT 0461
SUBSC OC6E
FSTO
OC3C
FLO
OC58
PRNTZ OB5E
SFI0
0705
SOFIO 04CO
SYSTEM SUBROUTINES
ILS04 00C4
ILS02 00B3
ILSOl 144.
0370 (HEX) IS THE EXECUT10N ADOR
CART 10 OEOO
DB ADDR 4530
De CMT
OOFO
II

PAUS

II

JOB

LOG DRIVE
0000
V2 MO'
II

CHANGE TO CARTRIDGE OED4
OED4
CART SPEC
OEO.
ACTUAL 321(

CART AVAIL
OED4

PHY DRIVE
0000

CONFIG 12K

DUP

*STORE'I
CD FX LINK2 0001
*FILES(2.DATA2.0E04l
FILES ALLOCATION
2 01F7 00C8 OE04 DATA2
STORAGE ALLOCATION
R.1 12D8 (HEX) WDS UNUSED BV CORE LOAD

H-14

SYSUP Reeling Sample Program
for one drive systems

LIBF TRANSFER VECTOR
NORM
OC80
FLOAT OCA6
tFIX
OC7A
PAUSE OC64
SCOMP 0771
SWRT
0690
SDCOM 0480
SDAI
0412
SOWRT 04'9
SUBSC QC.6
FSTO
OC14
FLD
OC50
PANTZ OB36
SFIO
07AD
SDFIO 0498
SYSTEM SUBROUTINES
ILS04 00C4
ILS02 00B3
ILSOl OeDC
0362 (HEX) IS THE EXECUTION ADDR
CART 10 OED4
08 ADOR 3230
08 CNT
II PAUS
II

JOB

CHANGE TO CARTRIDGE OEDO
OEDO

LOG DRIVE

CART S~EC
OEOO

0000

V2 MO'

OOAO

ACTUAL 32K

CART AVAIL
OEDO

PHY DRIVE
0000

CONFIG 32K

II XEQ LINin

LINK NO. 1 EXECUTED. CHANGE CARTRIDGES.
LOG DRIVE
0000

CART SPEC
OED.

CART AVAIL
OED4

PHY DRIVE
0000

LINK NO. 2 EXECUTED.

MO'litor System Sample Programs

H-15

I.' '
\

SYSUP Reeling Sample Program
for multidrive systems

6. PROCESSING ON TWO DISK DRIVES A FILE THAT I:XTENDS OVER TWO CARTRIDGES

This program is referred to under "Reeling" in the section "SYSUP" in Chapter 6.
II

JOB

OEDO OED4

LOG DRIVE
0000
0001
V2 M09

CART SPEC
OEDO
OED4
ACTUAL

32~

CART AVAIL
OEDO
OED.

PHY DRIVE
0000
0001

CONFIG 32K

FOR
.NAME MDEXl
• IOCS ( DISK)
.ONE WORD INTEGERS
.LIST SOURCE PROGRAM
DIMENSION Je:320)
DEFINE FILE le210.:320.U.K)
DEFINE FILE 2e200.320.U.KK)
II

M •

111

K • 1
KK • 1
DO 2 N • 1. 320
2 JeN) • M
DO :3 I • I. 209
3 WRITE e l'K) J
M • 999
DO 5 N • I. 320

J(N) • M
WRITE (1'K) J
M • 222
DO 7 N • 1. no
7 JeNJ • M
DO 8 I • 1. 199
8 WR ITE (2' KK) J
5

M • 999
9

DO • N • 1.:320
J(N) • M
WR ITE e 2' KK) J
CALL EXIT
END

FEATURES SUPPORTED
ONE WORD INTEGERS
IOCS
CORE REQUIREMENTS FOR MDEX1
COMMON
VARIABLES

°

340

PROGRAM

END OF COMPILATION
II

DUP

.STORE
WS UA ~DEXl
CART 10 OEDO
DB AD DR 4515
II

XEQ MDEX1 L

DB CNT

2

*FILES(I,DATA.OEDC)
.FILES(2.DATA2.0ED4)
FILES ALLOCATION
1 0206 0002 OEDO DATA
2 01F7 00C8 OED4 DATA2
STORAGE ALLOCATION
R 41 78FA (HEX) WDS UNUSED BY CORE LOAD
LIBF TRANSFER VECTOR
PAUSE 0608
SOCOM 04DA
SOAl
043C
SOWRT 0463
SUBSC 06P.A
SOFI0 04C2
SYSTEM SUBROUTINES
lL.S04 00e4
ILS02 00B3
035A (HEX) IS THE EXECUTION ADDR

H-16

0000

178

ISAM Sample Program
calculating file parameters

7. CALCULATING ISAM FILE PARAMETERS

This program is referred to under "Indexed Sequential Access Method" in the section
"Calculating Sequentially Organized and ISAM File Sizes" in Chapter 6. This program
does no error checking.
For this program, you are requested to enter the first 4 values. The input fields are 5
characters long; enter right-justified decimal numbers (leading zeros are required). Press
EOF on the console keyboard after each entry. The requests for your entries are as
follows:

ISAM FILE LOAD CALCULATIONS
INDEX
RECORD
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER

ENTRY LENGTH IN WORDS =
LENGTH IN WORDS =
OF RECORDS TO BE LOADED =
OF OVERFLOW SECTORS =
OF INDEXES PER SECTOR =
OF RECORDS PER SECTOR =
OF PRIME DATA CYLINDERS •
OF PRIME DATA SECTORS •
OF INDEX SECTORS =

TOTAL NUMBER OF SECTORS

=

After you enter the number of overflow sectors, the program calculates the file size. The
following is a sample of the program output:

ISAM FILE LOAD CALCULATIONS
INDEX
RECORD
NUMBER
NuMBER
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER

ENTRY LENGTH IN WORDS = 00010
LENGTH IN WORDS = 00100
OF RECORDS TO BE LOADED = 00250
OF OVERFLOW SECTORS = 00009
OF INDEXES PER SECTOR = 00032
OF RECORDS PER SECTOR = 00003
OF PRIME DATA CYLINDERS = 00011
OF PRIME DATA SECTORS = 00084
OF INDEX SECTORS =00001 •

TOTAL NUMBER OF SECTORS =00095 •
The program that computes file size is listed as follows:

Monitor System Sample Programs

H-17

ISAM Sample Program
calculating file paratneters

II JCP
LCG CRIVE
ecce

CART SPFC
CEel

CART AVAIL
OECI

P .... V CRIVE
COOC

II AS t-'
*XREF
CCCC 2C 23Al717C
2CCO
CC02 1 CClB
CCC3 2C 23A17170
OCC4 0 CCCU
CCC'5 C 7CFC
COCe CC 65COO(04
oeC8 01 C5CCOO16
CCOA 0 CC02
occe 20 23A1717C
ocec c 2CCC
eccc c: ceco
CCCE 2C 23A1717C
oeeF c CCCO
COLO (I 1CFC
CCll CC 6600CC05
C013 01 6ECCCC8C
OC15 C 7C58
C016 ()
lCCO
OC17 1. CC61
COle 1 CC4F
CCle; 1. CC41
001A 1 CC30
C018 Cl OC14
C01C
eC28
C03C C CC10
0031
OC20
CC41 C CCOC
C042
CCIA
CC4F C CCll
CO'50
CC22
OCtl c C(OF
00t2
OOlE
OC71 20 23Al7170
0072 n lCCO
C073 1 CC80
0074 20 23Al7170
OC75 n CCCO
0076 0
7CFO
OC71 C CCOE
C078 C ceC7
OC7<; 2C C40C2255
OC7/! 1 CC80
007e 01 C5COOO8C
007C C 71FF
CC1E C 7C89
CC7F 10 1C11
0080 C cce5
0081
CCC5
008~ C
eCAC
00P7
CC05
COBC 0 lCCO
OCRC C ceco
COfE C cceo
008F 0 OCCO
OC<;O c ceco
OC91 C CC22
oce;2 C 1890
0093 0 AF.FC

oer.l c

H-18

eCCCI

ecoc?
COO03
CCCC4

eeoo')
CCOOe
eCOC7
CC008
CC009
CC010
CCOLI
CC012
CC013
CC014
CCOl,)
CC016
CC017
CC018
CCG19
(C02C
CC02l
eC022
CC023
CC024
CC025
(C02t
CC027
CC028
C0029
CC03C
CC031
CC032
CC033
CC034
CC035
C0036
CC037
CC038
C0039
CC040
(C041
eC042
CC043
CC044
C(045
((046
CC041
CC048
CC049
CC050
CC051
(0052
(CO'53
eC054
C0055
(0056
'CC057
CC058
CC059

START LieF
ec
ec
~AIT4 LIBF
cc

e

LCX
LC
STU
LIBF
CC
,...ESS CC
WAITl LIBF
CC
11'\

1:3

Lex
STX
R

BTABl NOP
CC
DC
CC
DC
t--~
y.;.:.
,-;.. :.'.::'.
:':':':':-::':'.:
: :'.
....:.
.'.':.:.......
.:.
",

ii '7..

C:.

;i;

:.:~.:

'"
a::

ca

5,rb
9,$ 1 O.~ 51;!) 9$ 1 D·~ 5 .~• • •~ 951 D~. 5iD 95 1 0 9 51;it)l~ 3333 3 ~ 33
; { { ? ) ••.•••• [ ' ( i i i .'.. . •.• •

6 .~g A@2 E :~ 6

'"z

iii

··i

o
o

?f A~ 2 E[~ 6 ?:§ A? 2 E .~ 6~'E A~ 2 E AGa~~ I~ 4 4 4 4 4 4 4 4

CD

T

7 3 F B 7 "3 f B 7 3 B 7 3 F B '7 3 F 7 3 F B 7 3 FB 7 '3 FBI "3 F 7 IF B7 "3 FtB 7 3 f B1 "3 Hn 3 F B 1 "3 F a 7 3 F B1 3 F 8 7 3 Fit 5 5 5 5 5 5 5 5 ~
,
r:.:
;0-r"'.
F
;...
~ ow
•
::E
B40C840C~4~C840C84QC840C~4?Ca40Cm40~8~OC84Q~840C840C8~OC840C840C840C84PC66666666 ~

1

511951 0951 D9 5 1 0 9

51:~ 951 Oi~ 514'1951 0115 1I)9!11 D! 5~:. 0951 0951

16 2 E A~ 2 EIA 6J2 EI~ 62 E ~62 EIA 6 2 EI! 62 E A62 E:I 6 z~
"'-

A!~

2 EI' Gtg.E

I) 9 51

D9

51 D 9 ~ 1 0 9 51 D9 5 1 077777777

A~' 2 E A GZE A~12 E ~G Z E A ~2 E A 6~E AlE

2 E 8 8888888

71
3 F B ~ 3 F B 7"3 flBI1 3 F B 7 3.f.lB 1 "3 F B7 '3 F B7 3 F~ 1 3 f Btl "3 F 8731= B13 F B 73 F B 7:1 F ah 3 f B 7 SF al7 3 FIB" 3 F 99999999

1 zi3 4 51, 1

eltll 1I1~ I~~

1516 f7 1811iU211n 23

241~'2t 2t~

29P.l 31

32!t!1~~~ 37~ 3940 i4f42~~ 45

41484S5051

~ 3 ~ 55 56 ~'158 ell!

61 h3

64~1;6~1J't69(li

CDC format

~

11 J2 13147516111119 10

II'" J14;'OI

""

Card core image (CDC) format is the format in which core image programs are punched
into cards. CDC format is identical to card data format (CDD), that is, one binary word
occupies 1-1/3 columns and 54 binary words can be punched per card.

PAPER TAPE FORMATS

The paper tape formats-paper tape system format (PTS), paper tape data format (PTD),
and paper tape core image format (pTC)-are analogous to the corresponding card formats
(see preceding).
Two frames in paper tape (data or core image) format contain one binary word and are
equivalent to 1-1/3 columns in card (data or core image) format. A data record in paper
tape (data or core image) format differs from a data record in card (data or core image)
format in that the record is preceded by any number (normally zero) of delete characters
(/7F) and a frame containing the word count, one-half the number of frames in this data
record. A data record in paper tape (data or core image) format contains a maximum of
108 frames (54 binary words) plus the 2 special frames.
Information that would appear in columns 73 through 80 in card format must not appear
in paper tape format.

Formats

1-11

Paper Tape Format

The following is an example of paper tape data (PTD) format:

··

•••••
••
• ••••••
••••
• •••••
•• •
•••••

•

·

,
I

Record N + 2

J

••

Record N + 1

·•••

•• •
•••••••••
• •••
•• ••••••
••
••••

f

•• e•
• ••••

··
·

~

Datawords

I:

J
Typecode (lOAI. count of data words (OF)
Checksum (/ES9CI
Loading address (lOSCC)
Record word count (l1S)
Delete character (may be omitted)

Record N -1

1-12

Print Formats (PRO)
OSF program
COl program

PRINT FORMATS

PRD format

Print data format (PRD) is the format in which DUP prints a DSF program, core image
program, or data file on a print device (1403,1132, or console printer). The following
are printouts of dumps of a DSF program and a DCI program:

DSF Program
AOCR

***0

PR
·*·1

.**2

***3

·**4

*·*5

··*6

***7

***8

***9

***A

***B

***C

*·*0

*.*E

.**F

OOCC
OC1C
002C
OC30
OC4C
CC5e
0060
CC70
ooeo
OC9C
OCAO
ocec
ccco
OCCC
OCEC
OCFC
0100
CllC
012C
C130

CCCO
717C
2COO
0248
3021
9C60
5C60
6021
OCOF
9821
0293
CCOO
CCF1
80El
CCCO
02E7
C5CO
ceco
5CI0
5C10

0000
2COC
CCOO
OC14
lC3C
A421
3021
COCC
8174
C221
C5CC
CCCO
801C
CCOC
CCCO
C5CC
02F7
02FE
21ge
2120

0100
0233
23Al
CCOO
5CIC
5C34
504
5010
B070
23A 1
C2A4
ceoo'
9012
8C04
CCCO
C2CE
C002
030F
CCCO
7430

0372
23A 1
717C
8121
e05C
7414
7414
216C
eooc
117C

0000
717C
CCOC
2121
CCOO
9C24
9C24
341C
1834
1000
708.,
189C
A8lA
65CO
CCOO
5103

CC03
CCCO
7CFO
2121
3C9C
2120
2120
5C6C
6021
2C02
7Cli
A8FC
0011
OC06
leCO
2C03
nco
0349
6098
2198

CCOC
70FC
l:60C
2121
2CSC
CCOC
7421
3098
5010
02ge
CC05
COOO
801C
7013
030C
029E
CCOC
035C
21C2
341C

0015
CC20
OC05
2121
7498
7421
9C50
219C
2150
23Al
029E
0021
1803
CCOI
0310
2925
8CCO
0011
2121
9C50

OCOO
65CO
6EOC
2120
8121
9C50
eccc
5C21
B434
1170
OC04
COF9
CCOO
OC02
0331
,006
2 3A 1
819C
2121
6C98

2205
0004
CCCC
983C
0010
6030
6030
1834
6010
CCOO
0000
801B
0015
0007
0346
1100
717C
COOO
2121
21C2

4503
C5CO
0298
7021
8181
9821
9821
COOO
5C50
70FO
80AO
0010
8016
COOO
035A
029F
0000
509C
0011
2121

0218
022E
705B
0000
2074
C221
C221
215C
9021
COOE
02A4
C01B
900A
0140
036E
0000
70FO
3C5C
CCOO
2121

0218
0002
1000
1020
3034
COOO
0011
S03C
0020
0007
0096
1890
1890
0000
0008
0005
7lFF
2174
8174
2121

0098
23Al
0279
5C34
0000
8160
8174
3034
9834
040C
0000
A81A
A813
1000
C500
0859
70E6
1:l070
B070
0000

8080
7170
0267
215C
9421
341C
B070
3021
lC9C
0000
1000
OOlF
OOOE
0000
0205
0080
6038
1834
1834
0013

BAI
2000
0259
503C
3474
0000
1834
C221
5060
2255
0000
0000
800E
0000
0400
3007
1000
6021
6021
8174

014C
C15e
0160
0170
018C
Cl.,C
01AO
CART 1C

BC7C
5e60
7C34
OCCO
C221
2154
5C60
OECI

0323 005A COOC
1834 6021
<;821 C221
2121
2121 ceca
2130 3C9C 3C21
lCA4
5C20
eo7C
1834 6021
5010 2160
2121 ce13
2121 CCCO 2121
COOO 9C50
2198
341C
346C
5C34 7414
3021
ce ACDR 2EAC
CB CNT CC15

501C
2121
7430
341C
8174
6021

2154
0014
0000
5C60
B070
C221

6020
8114
3460
3098
1834
2121

7034
807C
9821
ooce
6021
2121

2130
1834
C221
2154
5010
2121

3C9C
6021
2121
3460
COOO
0312

0000
5010
2121
2198
2120
0000

3C21
2154
2121
341C
7430
8160

9834
0000
0013
9C50
3494
341C

lC9C
6020
8174
602l
3498
0000

UA

*Ct.;~P

SA~PL

7lFF
C022
189C
0009
0000
0225
23A 1
032C
341C
3494

1170

C334
9C5C
CCOO

~iSk block on sector. F~r Data Files. this position will always be 0 (Data Files must start on sector boundary).
Sector

Core Image Program (note that the actual starting address is /01 FA)
ACCR

***0

FX

PR
·**1

C I SA~
***2 ***3

***4

***5

*,,*(;

***7

***8

***9

***A

***8

***c

*>1<*0

***E

***F

CIFC
02CC
C21e
0220
C230
C240
C25C
0260
C27C
C2ec
029C
02AO
e280
C2CO
C2CC
C2EO

CIFA
OC91
C5CO
0267
3C21
504
9C24
3C98
B434
DC07
CCOO
CC1B
A813
CCCO
CSCO

ecoc
CC91
022E
025<1
lC 3C
7414
2120
219C
6CIC
4374
OOOC
189C
CODE
OCCO
02CE

CCIA
0376
C002
024fl
'5CIC
9C24
7421
5021
5C50
0298
0000
A81A
8COE
CCOO
4371

C508
0091
4377
C014
B05C
212C
905C
1834
9021
D5ec
COOC
C.OlF
ijOEl
OCOC
029E

7F7E
COOO
2COO
e121
3C9C
7421
(;030
215C
9834
02A4
1000
COFI
8004
CCOO
436E

0091
8COO
CCCO
212l
2C50
9C50
9P.21
5C3C
le9C
7lFF
OCOO
8010
OC09
lCOO
llCO

0091
ecoc
4371
2121
7498
6C3C
C221
3034
5060
7C8e;
OCOO
9012
650C
C::lOC
029F

OCB3
OCOO
CCOO
2121
8121
ge21
0011
3021
9821
7C 11
0000
1890
OCC6
0310
OCOO

0091
4377
70FO
2121
COIC
e221
8174
C221
C221
CC05
0000
A81A
7013
0331
00C5

00C4
200C
6600
212C
8181
OOOC
BO-fC
OOOF
4371
0658
C022
0017
COOl
0346
448C

0218
0091
0233
0005
983C
2074
8160
1834
8174
lOCO
0658
1890
8010
0002
035A
7FFF

0000
0091
4317
6EOO
7021
3034
341C
6021
8070
0298
0000
A8FC
1803
0007
036E
C500

FFFF
0091
OOCO
0298
1020
9421
5060
5010
1834
4317
0000
0027
0015
0140
C500
02F7

0000
0091
70FO
7058
5C34
3474
3021
2160
6021
0000
0000
COF9
8016
0000
0205
0002

0011::
0091
6500
1000
215C
9C60
5C 34
341C
5010
70FO
80AO
801B
900A
1000
0400
4377

0000
0091
0004

C2FO
03CC
OHO
0320
C:BC
C340
C350
C360
C37C
C380
0390
C3AC
C3AC
C3CC
C3CC
C3EC

CCCO
5C9C
8174
CC13
C221
lCA4
341C
le34
2121
CC34
CI00
CI01
71FF
4C28
C4eO
CC15

4377
3C5C
e070
8174
2121
5C20
5060
6021
C400
481e
l80C
80SC
eCCC
C3AF
03F4
4C2C

COOC
2174
1834
GC70
2121
7430
3098
5CI0
6914
7101
<106C
D051
C028
4COO
DOIC
0455

70FC
B07C
6021
1834
2121
3lt6C
2154
212C
6580
C832
4C30
D057
612e
047C
C81E
CCC4

71FF
1834
'5010
6021
C014
9821
3460
7430
7FF5
7101
03AB
C580
70CF
COFC
70AC
4804

7CE6
6021
2120
5010
8174
C221
2198
3494
7C03
6906
8C45
CCOI
CCCO
7401
08E4
7CIA

6C3e
5C1C
743C
2154
1:l07C
2121
341C
34CJ8
CCOC
650C
COil
4coe
0235
0032
C021
740C

1CCO
2198
3494
6020
1834
2121
9C50
2154
4CCO
OCOO
082C
03AB
047
1000
lCOl
C3F7

02FE
341C
2198
7C34
6021
2171
6021
3460
0305
6600
lC05
7COO
2COO
0827
4C28
7CC5

030F
9C5C
HIC
2130
501C
0013
C221
2198
6AOF
0000
4C28
7012
OFOO
70Be
0423
l81C

0320
6098
9C50
3C9C
2154
8174
2121
341C
280F
2000
03AO
701F
2001
1001
4802
OOCA

0334
2lC2
6098
3C21
602C
B070
2121
9C'50
D83A
4COO
1810
COOE
OFO 1
C028
7001
74FF

0349
2121
21C2
9834
7034
1834
2121
6021
CI00
0000
CO 50
7003
C03A
DOE8
7011
0032

0350
2121
2121
lC9C
2130
6021
0013
C221
180C
C027
0058
4C02
003E
7401
COIC
1000

0011
2121
2121
5060
3C9C
5010
8174
2121
4C20
4C20
DOSE
0397
08F9
0032
4C20
4C80

819C
0011
2121
9821
3C21
2160
B070
2121
0380
0380
0059
C008
1006
1000
0462
0376

*[l~P

0279

')O)C
A421
7414
')060
2150
CODE
0000
0010
1890
0000
02£7
2000

Fonnats

1-13

Print Formats (PRO)
DCI program
AeCR

*·*0

**>1<1

***2

***3

***4

***5

***6

*.~*

7

***8

***9

•• *A

* •• B

···C

*·*0

••• E

.·'~F

C3FC
C400
C41C
C420
C430
C440
C450
C460
C470
C480
C49C
C4AO
C4eo
C4CO
C4eo
04EC

7CE6
74H
C48C
4400
F5CO
C4HO
C3F4
Otl8F

C3FO

09CC
70ES
CO DC
OHCC

ecoc

OAOO
4Cl8
1CC5
03F4
7CF8
DCAE
CCA7
CC90
BC03
436B
OC3E
CC30
4C18
OC18
CCO'>
OC40

CCCC
C40E
4C28
1COC
C'SOC
COBS
4C2C
4C2C
808S
436e
lelC
9C35
C4BC
70F5
CCOA
(10C

ceoo

CCOO
DOFO
089F
0.!t3F
DCB7
C027
COA5
C095
C400
6936
C 10 1
74FF
4C18
4C20
OCAO
7101

r,OOC
7401
1005
4C3C
7401
70ce;
DOA3
DOBC
OOOC
6580
4C18
0404
04BC
04BA
400C
6921

0000
03F4
4C28
0443
03F4
DOAB
C015
C004
80F1
7FFZ
04A7
101C
2001
loaF
8000
6105

COOO
C48C
041 E
4C2C
74FF
COBO
70B7
70A 7
4C80
E03F
0032
7001
0012
COOF
C03A

0000
03F4
0805
044A
03F7
90AA
1810
0003
(J471
282F
4C20
4COl
2000
7101
0000
4C28

0000
7005
7000
614B
08B2
4C08
0098
1100
C007
Dtl'>O
04BA
04CE
C820
70CA
OB05
050(

0001
COEF
C400
C480
7005
0453
009E
4110
40F2
CI00
C101
CIFe
6500
FOOB
7401
C02F

0002
DOIE9
031ti8
031F4
COlE
7411=F
009A
8100

CCOS
7101
1240
iJ4BC
eeOO
04BA
6<;26

CCCC
03F7
C3F4
aC8C
CCCC
03F4
7401
7cee
1CCO
4CEF
6931
9038
9C27
CCOO
CIFC
t58C

04FO
050C
C5lC
C52C
0530
C540
055C
C')6C
057C
0580
C59C
C5AC
05BO
05(0
C5DC
CSEC

0503
CCIA
DOl5
FFF6
1084
0005
6580
C061
1018
14FF
1'401
9010
9COO
CCCO
1808
lCOO

4801
650C
0525
ecoc
C024
CCOC
7C07
7400
7coe;
ecoc
1010
1010
E80C
COFF
OOCO
C6E2

1 E;08
4(00
1087
1083
1806
CC20
2121
2121

8020
nco
OCOI
6950
0023
1081
7006
7CI0
E846
OCOO
4C18
1000
1086
4421
30FO
21C4

802A
C818
180A
6580
CI01
0076
0000
740C
740C
1010
05Al
001Q
180C
20EO
2121
2lAO

0006
4COO
1999
7FEC
DOOB
1010
0000
0'>50
0558
7400
620F
1083
CODA
24E4
OE04
21A4

9010
cOOO
2000
6A58
CI02
7400
0000
7001
7028
OSSA
1240
4C 18
1800
2121
2121
2121

4CI0
1810
4000
10AO
0040
0559
0000
700A
0400
7003
72F9
05B6
70BF
3CFC
34F4
21BC

0513
9018
7FFF
002F
CI03
7045
0000
0051
0000
7400
1000
9016
0000
2121
4109
2121

C026
4808
80AC
ClOO
001E
L087
E062
74FF
7401
0550
6A1F
DOOF
0000
2121
FEE6
2121

05FO
06CC
0610
0620
0630
064C
0650
0660
C670
0680
0690
06AO
06BO
06CC
0600
06EO

2198
2190
2'158
2150

218C
218l:
2140
2121
2121
0110
842C
2800
8400
eooo
097F
006E
980[;
le2l:
217F

2121
2121
2121
2121
2121
2121
0090
8120
4010
8800
0282
217F
FES7
6020
1825
CICO

21BO
2184
2110
2121
2121
0000
8820
4420
4020
9COO
0000
027F
4062
641F
3C64
0000

2121
2160
2105
2121
2121
0000
8220
422C
4040
ODIC
0000
OE7F
0623
545E
E008
4eoo

2106
2164
2106
2121
2121
7FE9
8060
4120
4080
0020
1FE6
e67F
F62F
5050
E407
0698

2121
2121
2121
2121
2121
0000
4820
3000
4100
0040
211F
421F
Be4e
741C
0446
0000

21B4
211C
2174
2121
2121
0000
40AO
2420
4200
0080
217F
OZ7F
8016
7058
0045
4eoo

2103
2121
2181
2121
2121
0000
4060
0220
4400
0100
211F
F27F
041F
5ClA
F404
0648

218E
21Z1
21F6
2121
2121
8110
2220
OOAO
4800
0200
417F
067F
e24A
5819
F043
0000

212·1
2121
2121
ZU: 1
2121
8090
2120
2010
5000
0400
217F
SE1F
A054
7C58
OC02
4COO

0488

0000

4eoo

0372

0000

oeoo

0000

0000

0000

0000

ecco

n21
2121
8050
20AO
2020
8010
0800
217F
467F
A413
202e
0801

CHC
0528
0700
OCOO
CART 10 OEDI

7eu 1

1e08
70 F 1
4Cl8
70A6
03F7

043l:

COF4
08A3
C480
71FF
COB6
70BE
C458
6B04
03C4
C040
tA37
9024
9019
OCCO
C83[;

7f-EF

DOBl:
C019
4Cle
1888
4COC
COO 1
041:1A
04C4
COOC
70E4
2824

(C34
1800
CCOA
DC32
C027
COlI
05SE
740C
C480
05SC
0546
1082
eooc
FFOO
2121
2121

A027
C500
70CC
0833
1084
7106
C500
0550
057C
7C06
7CBl
E820
6680
COOl
0282
CAC2

C031
CCOC
801C
C82E
C026
6944
COOO
101C
E052
6600
1082
70A8
05BE
0000
2121
2121

A02B
7lFF
COEe
18CO
1010
10AO
7400
COf8
E84A
CCCO
1005
18DO
COOO
0000
14C4

1090
7CEB
7401
OCOO
lC84
C400
05CO
C058
7C06
65CO
0020
001F
1200
OCCO
2121
2121

2121
2121
2121
2111
.2121
2121
4210
2060
2040
8020
ICOO
057F
867F
9452
2468
FC40

2121
2146
2142
2102
2121
2121
4110
0820
2080
8040
2000
817F
827F
9051
142A
C449

2121
2121
2121
2121
2121
2121
409C
0420
2100
808C
4000
117F
C07F
8410
1029
8461

219C
2194
215e
2154
2121
2121
2110
0120
2200
8100
8000
031F
E60e
B04F
3468
4415

2121
2121
2121
2121
2121
2121
2090
0060
2400
8200
80AO
217F
E27F
9COE
3067
OA60

C09A

1008
CCB4
6S0C
'IC20
'IC 18
'ICOO
FC06

leec

OCOO 4COO 04EO
0000 4(00
05C8
DB ACDR lFOO
CB CNT C050

2lF2

1:: 10
Olll E
4C02

oeoo
DeAF

OllSC
0'i5C
0001
611DC
OC46
8C36
9020
ACOF
OC14
OCIB
8020
OCOO
7CE6
lC02
1084
lE:DO
IC08
0~,5C

6A.~5

00131

000)
620C
4Cl8
0000
4C;~0

00J7
04130
00;~6

COOO
AOOO
18DO
C5HO
006E
OO~iE

05FI0
05;'0
10EI8
1010
1010
00(10
212'1
212' 1
2111

The address that precedes each printed line is the core address of word 1 on that line when
a core image program is being printed. If a DSF program or data file is being printed, the
address is the address of word 1 on that line relative to the start of the DSF program or
data file. Each word printed is 4 hexadecimal characters long, and represents one
binary word.

[-14

Data Formats
NCF

DATA FORMATS
NCF format

Name code format is the format in which names of subprograms, entry points, labels, etc.,
are stored into 2 binary words for use by monitor programs. The name consists of 5
characters, with the terminal characters possibly being"blanks. Each EBCDIC character
has the 2 leftmost bits dropped, and the remaining 6-bit blocks are packed to fill the
following 30 bits of the 2 words. The 2 left bits of the 2-word name code representation
are used for various purposes by different parts of the monitor system. For example, in
theLET/FLET entry, these bits specify the format of the file (see Appendix D "LET/FLET").
The name-data words, used internally by the FORTRAN compiler, are similarly packed
but the leftmost bit of each word is used as the indicator bit. This bit is set to zero if the
word contains a constant; otherwise, it is set to one.
The following is an example of name code format:
Name code words in hexadecimal

11 010101 000001 01 0100 000101 000000

Equivalent binary words

Indicator bits
Input
characters

EBCDIC
hex

N
A
M
E

D5
C1

16

04
C5
40

D5054140

EBCDI
binary

CrJ~

1101 0101
11000001
11010100 - - - - - - - 11000101 _______________________- J
01000000

Formats

1-15

1-16

DFCNV
I-field type

Appendix J. Field Type Examples for D FCNV

The following is a description of each field type supported by the program. In each of
these specification descriptions, the column and field length indicators may vary from 1
to 3 digits in length; all other numeric indicators must be one digit in length.

I-FIELD TYPE
This field type describes FORTRAN integer conversion; input is an integer field. The
specification is:
m-Iw.t (P)
where

m is the column of the RPG record in which the converted field begins (1 through
640).
I identifies the field type.
w is the field length of the converted field (maximum of 14).
t is the number of positions to the right of the decimal point reserved in the RPG
field (maximum of 9).
(P) is optional and is present only if the RPG field is to be packed.

Note. Since the FORTRAN integer field is regarded as a whole number with no decimal
places, ~p to 5 positions to the left of the decimal should be reserved in the converted
field to hold the largest possible integer value. Alignment is at the decimal point; if 5
positions are not reserved, high-order truncation occurs (see "DFCNV Messages and Error
Messages" in Appendix A).
Example 1: The integer field /3A 7E (14974 decimal) is converted using the field specification 15-18.2 to the following RPG field.

Record
word
Content

8
FOFI

9
F4F9

10
F7F4

11

FOFO

Example 2 (truncation): The integer field of Example 1 is converted using the field specification 15-16.2 to the following PPG field.

Record
word
Content

8
F4F9

9
F7F4

10
FOFO

Example 3 (packed format): The integer field of example 1 is converted using the field

specification 15-18 .2(P) to the following RPG field. The number is converted as in
Example 1. The zone portions of each character are then removed and the digit portions
are packed 2 per byte. The sign is added as a trailing hexadecimal digit (F=positive;
D=negative).
Record
word
Content

8
0014

9

9740

10
OF40

Note. Since field length does not account for sign, incorrect alignment exists if packed
mode is specified and field length is an even number. In order to align the data correctly,
a leading zero is added to the field. This is true in all field types that accept packed mode
conversion.

Field Type Examples for DFCNV

J-I

DFCNV
J-field type
R-field type

Example 4: The integer field /C582 (-14974 decimal) is converted using the field specification 15-18.2 to the following RPG field.

Record
word
Content

8

FOFI

10
F7F4

9

F4F9

11

FODO

J-FIELD TYPE

This field type describes 2-word integer conversion; input is a 2-word integer. The spedfication is:
m-Jw.t (P)
where

m is the column of the RPG record in which the converted field begins (1 through
640).
J identifies the field type.
w is the field length of the converted field (maximum of 14).
t is the number of positions to the right of the decimal point reserved in the RPG
field (maximum of 9).
(P) is optional and is present only if the RPG field is to be packed.

Note. Since a 2-word integer is regarded as a whole number with no decimal places, up to
10 positions to the left: of the decimal point should be reserved in the converted field to
hold the largest possible integer value. Alignment is at the decimal point; if 10 positions
are not reserved, high-order truncation occurs (see "DFCNV Messages and Error Messages"
in Appendix A). If a file contains 2-word integers, standard precision must be specifie:d on
the file description card. If extended precision is specified, any J-field type specification
is invalid.
Example: The 2-word integer field /7FFF /FFFF is converted using the field specification
7-J 13.(p) to the following RPG field.

Record
word
Content

4
0021

5
4748

6

3647

7
OF40

R-FIELD TYPE

This field type describes FORTRAN real-variable conversion. The specification is:
m-Rw.t (P)
where

m is the column of the RPG record in which the converted field begins (1 through
640).
R identifies the field type.
w is the field length of the converted field (maximum of 14).
t is the number of positions to the right of the decimal point reserved in the RJPG
field (maximum of '9).
(P) is optional and is present only if the RPG field is to be packed.

Note. If the real number of the input field is too small to yield any significant digits in the
RPG field, the RPG field is set to zeros. If the real number is too large to yield any siignificant digits in the RPG field, the RPG field is set to nines (see "DFCNVMessages and
Error Messages" in Appendix A).

J-2

DFCNV
R-field type

Example 1: The standard precision real field /BCOO/0080 (-0.53125 decimal) is converted
using the field specification 25-R7.5 (P) to the following RPG field.
Record
word
Content

13
0053

14
125D

Example 2: The real field of Example 1 is converted using the field specification 25-R7.5
to the following RPG field.
Record
word
Content

13
FOFO

14
F5F3

15
FIF2

16
D540

Example 3: The standard precision real field /7AI2/0097 (eight million decimal) is con'verted using the field specification 39-R7.0 (P) to the following RPG field.
Record
word
Content

20
8000

21
OOOF

Example 4: If the field specification in Example 3 were 39-R7.2 (P) then the resulting
RPG field would be set to nines since the input field is too large to yield any significant
digits in the RPG field.
Record
word
Content

20
9999

21
999F

If column 33 of the file description card contained a W, a warning message would be printed
when the preceding conversion took place.

Example 5: The extended precision real field /0047/6250/0000 (10- 12 decimal) is converted using the field specification 17-R9.9 to the following RPG field.
Record
word
Content

9
FOFO

10
FOFO

11
FOFO

12
FOFO

13
F040

The RPG field is set to zeros since the input field is too small to yield any significant digits
in the RPG field. A number whose first significant digit is more than 9 decimal places to
the right of the decimal point cannot be expressed in RPG. If column 33 of the file description card contained a W, a warning message would be printed when above conversion took
place.

Field Type Examples for DFCNV

J-3

DFCNV
B-field type
C-field type

8-FIElD TYPE

This field type describes FORTRAN A-conversion for integer data and CSP Al and A2
conversion. The specification is:
m-Bw.n
where

m is the column of the RPG record in which the converted field begins (1 through
640).

B identifies the field type.
w is the number of ,:;haracters in the field (maximum of 255).
n is the number of characters in each unit of the input field (n=1 or 2).
Note. If CSP Al or A2 format is converted, one word integers must be specified on the
file description card; however, no diagnostic check is made for this condition.
Example: The CSP field POSITIVE appears on a disk record in A2 format as follows:

Record
word
Content

n
E5C5
VE

n+ I
E3C9
TI

n+ 2
E2C9
SI

n+ 3
D7D6
PO

This field is converted using the field specification '2I-B8.2 to the following RPG field.
Record
word
Content

11
D7D6
PO

12
E2C9
SI

13
E3C9
TI

14
E5C5
VE

C-FIElD TYPE

This field type describes FORTRAN A-conversion for real data. The specification is:
m-Cw.n
where

m is the column of the RPG record in which the converted field begins (1 through
640).
C identifies the field type.
w is the number of characters in the field (maximum of 255).
n is the number of characters in each unit (2 or 3 words) of the input field. For
standard precision, n may range from I through 4; for extended precision, fwm 1
through 6.
Example: The FORTRAN field WASHINGTON, D. C. appears on a disk record in A4
format, extended precision, beginning at word 221 as follows;

Record
word
Content

210
4BC3

211
4B40

212
4040

213
D6D5
ON

214
6BC4
,D

215
4040

217
C7E3
GT

218
4040

219
E6Cl
WA

220
E2C8
SH

221
4040

.c
Record
word
Content

216
C9D5

[N

J-4

DFCNV
D-field type

D-FIElD TVPE
This field type describes CSP D 1 conversion. The specification is

moD l.j= 12 .K(p)
where

m is the column of the RPG record in which the converted field begins (1 through
640).
D identifies the field type.
11 is the length of the CSP field (maximum of 255).
j is the number of positions to the right of the decimal point in the CSP field.
12 is the length of the RPG field (maximum of 14).
k is the number of positions to the right of the decimal point in the RPG field
(maximum of 9).
(P) is optional and is present only if the RPG field is to be packed.

Note. Alignment is at the decimal point. If, for example, ! 1 = 12 and k>j, then k-j high
order positions of the CSP field are truncated in the RPG field (see "DFCNV Messages
and Error Messages" in Appendix A).

Example: The CSP Dl format field +00946.88 appears on a disk record beginning at
word 78 as shown.
Record
word
Content

72
0008

73
0008

74
0006

75
0004

76
0009

77
0000

78
0000

This field is converted using the field specification 35-C 15.4 to the following RPG field.
Record
word
Content
Record
word
Content

18
E6CI
WA

19
E2C8
SH

24
4BC3
.C.

25
4B40

20
C9D5
IN

21
C7E3
GT

22
D6D5
ON

23
6BC4
,D

This field is converted using the field specification 25-D7.2=6.3 to the following RPG
field.
Record
word
Content

13
F9F4

14
F6F8

15
F8FO

Field Tvpe Examples for DFCNV

J-5

DFCNV
E-field type
F-field type

E-FIELD TYPE
This field describes CSP 04 conversion. The specification is:
m-EI 1 .j= 12 .k(P)
where

m is the column of the RPG record in which the converted field begins (1 through
640).
E identifies the field type.
11 is the length of the CSP field (maximum of 2SS).
i is the number of positions to the right of the decimal point in the CSP field.
12 is the length of the RPG field (maximum of 14).
k is the number of positions to the right of the decimal point in the RPG field
(maximum of 9).
(P) is optional and is present only if the RPG field is to be packed.

Note. For E-field type cOllversion, alignment is also performed at the decimal point; high
order truncation is possib 11e (see "OFCNV Messages and Error Messages" in Appendix A).
Example: The CSP 04 format field -00946.88 appears on a disk record beginning at
word 103 as foHows:

Record
word
Content

101
FFF7

102
6.8FF

103
0094

This field is converted using the field specification 2S-E7 .2=7.2 (P) to the following RPG
field.
Record
word
Content

13
0094

14
6880

F-FIELD TYPE
This field type describes CSP A3 conversion, and requires a 40 character translation table.
The specification is:
m-Fw
where

m is the column of the RPG record in which the converted field begins (1 through
640).
F identifies the fiel.d type.
w is the numbe~r of characters in the field (not to exceed the input record size in
characters ).

J-6

DFCNV
X-field type

Example:. Suppose that a 40 character translation table with W as the 23rd position
relative to the last position (card column 40) of the A3 table, H as the eighth relative
position, and Y as the 25th relative position, is used to form the CSP field WHY in A3
format. This field is represented on a disk record by the integer /14] 9 that is derived using
the following formula.
1=1600 (N l -20) + 40N 2

+ N3

where
N 1 • N2 and N3 represent the positions relative to card column 40 in the table of the
1st, 2nd and 3rd characters, respectively.
/1419 is converted using the field specification 21-F4 to the f oIJowing RPG field.

Record
word
Content

]1
E6C8

12
E840

WI-I

Y

X·FIELD TVPE
This field type allows Helds on the input record to be bypassed. The specification is:

Xw
where

X identifies the field type.
w is the number of words to be bypassed (not to exceed input record size).
Example: The field specification used to bypass an array of 10 real numbers when standard
precision (each real number is 2 words in length) is specified as X20.

Field Type Examples for DFCNV

J-7

1-8

Appendix K. Decimal and Hexadecimal Disk Addresses

SECTOR
ADDRESS
BASE 10

SECTOR
ADDRESS
BASE 16

CYLINDER
ADDRESS
BASE 10

CYLINDER
ADDRESS
BASE 16

-+00000
+00008
+00016
+00024
+00032
+00040
+00048
+00056
+00064
+00072
+00080
+00088
+00096
+00104
+00112
+00120
+00128
+00136
+00144
+00152
+00160
+00168
+00176
+00184
+00192
1-00200
+00208
+00216
+00224
+00232
1-00240
+00248
+00256
+00264
+00272
+00280
+00288
+00296
+00304
+00312
+00320
+00328
+00336
+00344
+00352
+00360
+00368
+00376
+00384
+00392
+00400
+00408
+00416
+00424
+00432
+00440
+00448
+00456
+00464
+00472
+00480
+00488
+00496
+00504
+00512
+00520
+00528

0000
0008
0010
0018
0020
0028
0030
0038
0040
0048
0050
0058
0060
0068
0070
0078
0080
0088
0090
0098
ooAO
00A8
0080
0088
OOCO
OOC8
0000
0008
OOEO
00E8
OOFO
OOF8
0100
0108
0110
0118
0120
0128
0130
0138
0140
0148
0150
0158
0160
0168
0170
0178
0180
0188
0190
0198
OIAO
0lA8
OIBO
0lB8
OICO
OlC8
0100
0108
OlEO
OlE8
01FO
01F8
0200
0208
0210

+00000
+00001
+00002
+00003
+00004
+00005
+00006
+00007
+00008
+00009
+00010
+00011
+00012
+00013
+00014
+00015
+00016
+00017
+00018
+00019
+00020
>00021
+00022
+00023
+00024
+00025
+00026
+00027
+00028
+00029
.00030
+00031
+00032
+00033
+00034
+00035
+00036
+00037
+00038
+00039
+00040
+00041
+00042
+00043
+00044
+00045
+00046
+00047
+00048
+00049
+00050
+00051
+OOOS2
+00053
+00054
+00055
+00056
+00057
+00058
+00059

0000
0001
0002
0003
0004
0005
0006
0007
0008
0009

+00060
+00061
+00062
+00063
+00064
+00065
+00066

OOOA
oooB

oooc
0000
oooE
OOOF
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
OOIA
0018
OOIC
0010
OOlE
OOIF
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
002A
0028
002C
0020
002E
002F
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
003A
0038
003C
0030
003E
003F
0040
0041
0042

SECTOR
ADDr,[SS
BASE 10
+00536
+00544
+00552
+00560
+00568
+00576
+00584
+00592
+00600
+00608
+00616
+00624
+00632
+00640
+00648
+00656
+00664
+00672
+00680
+00688
+00696
+00704
+00712
+00720
+00728
+00736
+00744
+00752
+00760
+00768

+oon6
+00784
+00792
+00800
+00808
+00816
+00824
+00832
+00840
+00848
+00856
+00864
+00872
+00880
+00888
+00896

+00904
+00912
+00920
+00928
+00936
+00944
+00952
+00960
+00968
+00976
+00984
+00992
+01000
+01008
+01016
+01024
+01032
+01040
+01048
+01056
+01064

SECTOR
ADDRESS
BASE 16
0218
0220
0228
0230

one

0240
0248
0250
0258
0260
0268
0270
0278
0280
0288
0290
0298
02AO
02A8
0280
0288
02CO
02C8
0200
0208
02EO
02E8
02FO
02F8
0300
0308
0310
0318
0320
0328
0330
0338
0340
0348
0350
0358
0360
0368
0370
0378
0380
0388
0390
0398
03AO
03A8
0380
0388
03CO
03C8
0300
03D8
03EO
03E8
03FO
03FB
0400
0408
0410
0418
0420
0428

CYLINDER
ADDRESS
BASE 10

CYLINDER
ADDRESS
BASE 16

+00067
+00068
+00069
+00070
+00071
+00072
+00073
+00074
+00075
+00076
+00077
+00078
+00079
+00080
+00081
+00082
+00083
+00084
+00085
+00086
+00087
+00088
+00089
+00090
+00091
+00092

0043
0044
0045
0046
0047
0048
0049
004A
OO4B
OO4C
0040
OO4E
OO4F
0050
0051
0052
0053
0054
0055
0056
0057
0058
0059
005A
005B
005C
0050
005E
005F
006(1
0061
0062
0063
0064
0065
0066
0067
0068
0069
OO6A
0068
OO6C
0060
OO6E
OO6F
0070
0071
0072
0073
0074
0075
0076
0077
0078
0079
007A
0078
007C
0070

+00093

+00094
+00095
+00096
+00097
+00098
+00099
+00100
+00101
+00102
+00103
+00104
+00105
+00106
+00107
+00108
+00109
+00110
+00111
+00112
+00113
+00114
+00115
+00116
+00117
+00118
+00119
+00120
+00121
+00112
+00123
+00124
+00125
+00126
+00127
+00128
+00129
+00130
+00131
+00132
+00133

oon;

007F
0080
0081
0082
0083
00S4
0085

SECTOR
ADDRESS
BASE 10
+01072
+01080
+01088
+01096
+01104
+01112
+01120
+01128
+01136
+01144
+01152
+01160
+01168
+01176
+01184
+01192
+01200
+01208
+01216
+01224
+01232
+01240
+01248
+01256
'-01264
1)1272
01280
,01288
··01296
+-01304
+01312
+01320
+01328
+01336
+01344
+01352
+01360
+01368
+01376
+01384
+01392
+01400
+01408
+01416
+01424
+01432
+01440
+01448
+01456
+01464
+01472
+01480
+01488
+01496
+01504
+01512
+01520
+01528
+01536
+01544
+01552
+01560
+01568
+01576
+01584
+01592

SECTOR
ADDRESS
BASE 16
0430
0438
0440
0448
0450
0458
0460
0468
0470
0478
0480
0488
0490
0498
04AO
O4A8
04BO
04B8
04CO
04C8
0400
0408
04EO
04E8
04F0
04F8
0500
0508
OSlO
0518
0520
0528
0530
0538
0540
0548
0550
0558
0560
C568
0570
0578
0580
0588
0590
0598
05AO
05A8
0580
05B8

oseo

05C8
0500
0508
OSEO
05E8
05FO
05F8
0600
0608
0610
0618
0620
0628
0630
0638

CYLINDER
ADDRESS
BASE 10
+00134
+00135
+00136
+00137
+00138
+00139
+00140
+00141
+00142
+00143
+00144
+00145
+00146
+00147
+00148
+00149
+00150
+00151
+00152
+00153
+00154
+00155.
+00156
+00157
+00158
+00159
+00160
+00161
+00162
+00163
+00164
+00165
+00166
+00167
+00168
+00169
+00170
+00171
+00172
+00173
+00174
+00175
+00176
+00177
+00178
+00179
+00180
+00181
+0018,
+00183
+00184
+00185
+00186
+00187
+00188
+00189
+00190
+00191
+00192
+00193
+00194
+00195
+00196
+00197
+00198
+00199

CYLINDER
AOORFSS
BASE 16

0086
0087
0088
0089
008A
008B
008C

0080
008E

008F
0090
0091
0092

0093
0094

0095
0096
0097
0098
0099
OO9A
0098
009C
0090
009E
009F
OOAO
OOAI
OOA2
OOA3
OOA4
OOA5
OOA6
OOA7
OOA8
OOA9
OOAA
COAB
COAC
OOAO
OOAE
OOAF
0080
OOBI
0082
0083

0084
0085
0086
0087
0088
0089
OOBA
0088
OO8C
0080
008E
OO8F

OOCO
OOCI
OOC2
OOC3
OOC4
OOC5
OOC6

OOC7

Decimal and Hexadecimal Disk Addresses

K-l

K-2

Appendix L. Disk Storage Unit Conversion Factors

~~
Bits
Data words
Disk blocks
Sectors
Tracks

Word

Disk block

Sector

Track

Cylinder

Disk

16

320

5,112

20,480

40,960

8,192,000

20

320

1,280

2,560

512,000

64

128

25,600

4

8

1,600

2

400

16

0

Cylinders

o

200

These follow the first actual word of each sector, which is used for the address.

Disk Storage Unit Conversion Factors

L-l

L-2

Appendix M. Character Code Set
EBCDIC
Binary

Ref

no.

Hex

4567

0000

0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1010
1100
1101
1110
1111

00
01
02
03
04
05
06
07
08
09
OA
OB
OC
aD
DE
OF

12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12

0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

10
11
12
13
14
15
16
17
18
19
lA
lB

12

0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

20
21

0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1 !II

30
31

3
4
5*
6
7*
8

9
10

11
12
13
14
15

Graph ics and
control names

Hex

12 11 0 9 8 7-1

0123

0
1
2

1132

IBM card code
Rows

0

9
9

8

9
9
9

1
1
2

B030
9010
8810
8410
8210
8110
8090
8050
8030
9030
8830
8430
8230
8130
80BO
8070

3
4
5
6
7

9
9
9

9 8
9
9
9

9
9
9
9

8
8
8
8
8
8
8

1
2
3
4
5
6
7

8

1

Printer
EBCDIC
subset hex

PTTC/8
hex
U-uppercasE
L-Iowercase

0001

32
33
34
35
36
37*
38*
39
40
41
42
43
44
45

0010

46
47
0011

48

49
50
51
52
53*
54'

55
56
57
58
59

60
61
62
63

11
11
11
11
11
11

9
9

11

11
11
11
11
11
11
11

1C
lD
IE
IF

11

22
23
24
25
26
27
28
29
2A
2B
2C
2D
2E
2F

0
a
a
0
0
0
0
0
0
0
0
0
0
0

a

12

11

TVOf"VVrltPr

CD

2
3
4
5
6
7

9
9
9
9
9
9
9
9
9
9
9

8

9

8

8
8
8
8
8

8
8

9
9
9
9
9

9
9
9
9
9
9
9

e
8
8
8
8

5

1
1
2
3
4
5
6

0

9

0

9

8

9
9
9

7

9 8
9
9
9
9

8
8
8
8
9 8
9 8

38
3C
3D
3E
3F

9

8

7030
3010
2810
2410
2210
2110
2090
2050
2030
3030
2830
2430
2230
2130
20BO
2070

1
2
3
4
6
7

8
8

9
9

33
34
35
36
37
38
39
3A

1
1
2
3
4
5
6
7

9

9
9

32

1
2
3
4
5
6
7

9 8

","'-'.U>.l

Notes.

1

9
9
9

11
11

0030
5010
4810
4410
4210
4110
4090
4050
4030
5030
4830
4430
4230
4130
40BO
4070

'

F030
1010
0810
0410
0210
0110
0090
0050
0030

1

1030

2

0830
0430
0230
0130
OOBO
0070

3
4
5

6
7

1403
Printer
hex

NUL

PF
HT
lC
DEL

Punch Off
Horiz.Tab
lower Cose
Delete

6D (U/l)
6E (U/l)
7F (U/l)

,.

16
17
18
19
20*
21*
22*
23
24
25
26
27
28
29
30
31

Console
printer
hex
notes

RES
NL
BS
IDL

Restore
New Line
Backspace
Idle

BYP
LF
EOB
PRE

Bypass
Line Feed
End of Block
Prefix

4C (U/l)

DD~U/l)

PN

Punch On

Reader Stop

UC
EOT

Upper Case
End of Trans.

05
81
J]

3 D (U/l)
3E (U/l)

03

OD(U/l)
OE (U/l)

:

or 7 E
or SA
or 5E
or 72
or 76
or 52
or 56
or 66
or 62

V

W

X
Y

Z

58
19
IA
58

Ie

5D
5E
IfF
210

--

S
T
U

--

OD
OE

E2
E3
E4
E5
E6
E7
E8
E9

32
23
34
25
26
37
38
29

FO
Fl
F2
F3
F4
F5
F6
F7
F8
F9

IA {l)
01 (l)
02 (l)
13 (l)
04 (l)
15 (l)
16 (l)
07 (l)

C4
FC
08
DC
FO
F4
DO
04

08 (l)
19 (l)

=4

46
07

EO

CIS

(U)
(U)
(U)
(U)
(U)
(U)
(U)
(U)

98 or 9A
9C or 9E
BO or B2
B4 or B6
90 or 92
94 or 96
A4 or A6
AO or A2

41F

10
51
52

1:3

54

-

o
1
2
3

4
5
6
7
8
9

49
40
01

02
43

04
45

I

Glossary-Index

$$$$$ data files, initializing for use with FORTRAN unformatted
I/O 6-27
$DUMP entry (skeleton supervisor) use by CIL 3-13,
$EXIT entry (skeleton supervisor) use by CIL 3~ 13
$LlNK entry (skeleton supervisor) use by ClL 3-l4
$PRET address, indicates preoperative error 3-2
$PST I aJdress, indicates postoperative error 3-2
$PST2 aJd,ess, indicates postoperative error 3-2
$PSTJ address, indicates postoperative ~rror 3-2
$PST4 address, indicates postoperative error 3-2
** header information FORTRAN control record
format 5-69
pJinting a header on each page 5-69
*ARITHMETIC TRACE (see also ARITHMETIC TRACE
FORTRAN control record) 5-70
*COMMON (see also COMMON assembler control record) 5-63
* DEFINE (see also DEFINE DUP control record) 5-45
*DELETE (see also DELETE DUP control record) 5-44
*Dl'JLE (see also DFILE DUP control record) 5-48
*DUMP (see also DUMP DUP control record) 5-22
*DUMPDATA (see also DUMP DATA DUP control record) 5-24
*J)UMPDATA E (see also DVMPDATA E DUP control
record) 5-26
*DUMPFLET (see also DUMPFLET DUP control record) 5-29
*DUMPLET (see also DUMPLET DUP control record) 5-28
*DWADR (see also DWADR DUP control record) 5-47
*END (see also END MODSF patch control record) 4-19
*EQUAT (see also EQUAT supervisor control record) 5-17
*EXTENDED PRECISION (see also EXTENDED PRECISION
FORTRAN control record) 5-68
*FILES (see also FILES supervisor control record) 5-15
*G2250 (see also G2250 supervisor control record) 5-16
*IOCS (see also IOCS FORTRAN control record) 5-65
*LEVEL (see also LEVEL assembler control record) 5-61
*LlST (see also LIST assembler control record) 5-53
*LIST ALL (see also LIST ALL FORTRAN control record) 5-67
*LIST DECK (see also LIST DECK assembler control
record) 5-57
*LlST DECK E (see also LIST DECK E assembler control
record) 5-59
*LIST SOURCE PROGRA.\1 (see also LIST SOURCE PROGRAM
FORTRAN control record) 5-66
*LIST SUBPROGRAM NAMES (see also LIST SUBPROGRAM
NAMES FORTRAN control record) 5-66
*LIST SYMBOL TABLE (~'ee also LIST SYMBOL TABLE
FORTRAN control record) 5-67
*LOCAL (see also LOCAL supervisor control record) 5-13
*MACLlB (see also MACLIB assembler control record) 5-63
*MACRO UPDATE (see also MACRO UPDATE DUP control
record) 5-49
*MON (see also MON MODIF patch control record) 4-9
*NAME (see also NAME FORTRAN control record) 5-69
*NOCAL (see also NOCAL supervisor control record) 5~14
*ONE WORD INTEGERS (see also ONE WORD INTEGERS
r:ORTRAN control record) 5-68
*ORIGIN (see also ORIGIN FORTRAN control record) 5-71
~'OVERFLOW SECTORS (see also OVERFLOW SECTORS
assembler control record) 5-61
*PRINT SYMBOL TABLE (see also PRINT SYMBOL TABLE
assembler control record) 5-59
""PRO (see also PRO MODSF control record) 4-15

*PUNCH SYMBOL TABLE (see also PUNCH SYMBOL TABLE
assembler control record) 5-59
*SAVE SYMBOL TABLE (see also SAVE SYMBOL TABLE
assembler control record) 5-60
*STORE (see also STORE DUP control record) 5-30
*STORECI (see also STORECI DUP control record) 5-38
*STOREDATA (see also STOREDATA DUP control record)' 5-33
*STOREDATACI (see also STOREDATACI DUP control
record) 5-37
*STOREDATAE (see also STOREDATAE DUP control
record) 5-34
*STOREMOD (see also STOREMOD DUP control record) 5-42
*SUB (see also SUB MODIF patch control record) 4-12
*SYSTEM SYMBOL TABLE (see also SYSTEM SYMBOL TABLE
assembler control record) 5-60
*TRANSFER TRACE (see also TRANSFER TRACE FORTRAN
control record) 5-70
*TWO PASS MODE (see also TWO PASS MODE assembler control
record) 5-52
*XREF (see also XREF assembler control record) 5-56
/ / * (comments) monitor control record (see also comments
nl0nitor control record) 5-9
/ / ASM (see also ASM monitor control record) 5-5
// CEND (see also CEND monitor control record) 5-11
/ / COBOL (see also COBOL monitor control record) 5-6
/ / CPRNT (see also CPRNT monitor control record) 5-11
II DEND (see also DEND MODIP patch control record) 4-13
/ / DUP (see also DUP monitor con trol record) 5-6
/ / EJECT (see also EJECT monitor control record) 5-11
// FOR (see also FOR monitor control record) 5-6
1/ JOB (see also JOB monitor control record) 5-2
// PAUS (see also PAUS monitor control record) 5-10
/ / records read during FORTRAN program execu tion 6-51
/ / RPG (see also RPG monitor con trol record) 5-6
/I TEND (see also TEND monitor control record) 5-10
/ / TYP (see also TYP monitor control record) 5-10
/ / XEQ (see also XEQ monitor control record) 5-7
@DCOM (see DeOM)
@HDNG, on a system cartridge 2-6
@IDAD (see IDAD)
@RIAD, on a system cartridge 2-6
@RTBL, on a system cartridge 2-6
A-conversion, PORTRAN 6-50
absolu te address 3-10
An address that indicates the exact storage 10catio1l
where data is found or stored
absolu te program 3-10
A DSF program to which you assigll an origin so that
the program can be executed from that core location
only.
absolute starting address, defining with *ORIGIN PORTRAN
control record 5-71
acronyms used in DUP operations 5-20
adding system library subroutines (MODIF) 4-12
address formats used in this publication
hexadecimal 1~2
symbolic 1-2
addresses, appendix K, decimal and hexadecimal disk K-I
ADRWS disk maintenance program 4-8

Index

X-I

allocation addresses, locating I;ORTRAN 6-18
altering LET and FLET with DUP control records 5-20
aitering the contents of a core location 7-14
analyzing disk cartridges, operating procedure 9-36
appendixes
A, monitor system operational and error messages A-I
B, monitor system error wait codes B-1
C, monit'Jr system library listing Col
0, LET /FLET D-l
L system location equivalence table (SLET) E-l
F, core dump F-l
G, rcsiden t monitor
G-l
II, monitor system sample programs H-l
I, formats 1-1
J, field type examples for OFCNV J-l
K, decimal and hexadecimal disk addresses K-l
L, disk storage unit conversion factors k1
M, character code set M-1
ARITHMETIC TRACE FORTRAN control record
format 5-70
tracing variable values during execution 5-70
arithmetic tracing, how to stop 5-70
ASM monitor control record
format 5-5
general function 5-5
(lssembler
CALL TSTOP 5-70
CALL TSTRT 5-70
deleting with the *DEFlNE OUP control record 5-46
description 3-5
error codes A-2
error mt:ssages A-2
FILE statement 3-10
listing of error codes A-3
listing of error messages A-5
loading 8-8
monitor system program 3-5
assembler control records 5-50
*COMMON 5-63
cl control record
format .5-47
writing sector addresses in WS 5-47
E-field type, DFCNV J-6
effective program length
Tlu.~ ending address of a relocatable program. For
example, in assembler language programs, this address
is the last value used by the location assignment counter
during assembly. This value is assigned to the END
statement.
EJECT monitor control record
example 6-5
format 5-11
skips the printer to a new page 5-11
usage of 6-5
END MODSF patch control record
description 4-19
format 4-19
end-of-data indicator for RJE user exit 10-9
end-of-me control card, RPG 5-74
end-of-flle control record, DFCNV 4-25

X~8

end-of-file indicators, RJE 10-6
end-of-program card, CDS program 1-10
ending address of RJE user exit data 10-8
entering jobs
from the card reader 7-12
from the console keyboard 7-12
from the paper tape reader 7-12
entry point
Either (1) the symbolic address (name) where a program
is entered, (2) the absolute core address where a
program is entered, or (3) the address, relative to the
address of the first word of a subroutine, where a
subroutine is entered.
entry points to the skeleton supervisor 3-2
EQUAT supervisor control record
additional field information 5-17
for substituting subroutines 5-17
format 5-17
maximum number of substitutions 5-17
tips for using 6-48
equatable FORTRAN I/O subroutines 6-48
ERASE FIELD key 7-13
error codes
assembler, description A-2
FORTRAN, description A-7
listing of assembler A-3
listing of FORTRAN A-9
error messages
assembler, description A-2
auxiliary supervisor A-58
COPY A-60
DCOM update A-37
DFCNV A-68
DISC A-59
DLCIB A-61
DUP, description A-13
FORTRAN compilation A-7
ID A-60
listing of assembler A-5
listing of DUP A-14
listing of MUP A-14
MODIF A-62
MODSF A-66
MUP, description A-13
RJE A-28
SGJP A-26
supervisor A-36
system loader A-22
SYSUP update A-37
error notes
listing of RPG compiler A-40
RPG compiler, description A-38
error recovery procedures, RJE 10-11
error statistics, RJE 10-12
error traps
postoperative 3-2
preoperative 3-2
PROGRAM STOP key 3-2
error wait codes
appendix B, monitor system B-1
PTUTL B-9
error waits
cold start program B-1
ISS subroutine preoperative B-2
listing of ISS subrou tine B-3
errors
console printer subroutine B-8
FORTRAN I/O 6-51
I/O device subroutine B-5

errors (continued)
paper tape subroutine B-9
1442 card subroutine B-6
2501 card subroutine B-8
2501 card subroutine feed check B-8
2501 card subroutine read check B-8
execution
The execu tion of a program specified on an XEQ monitor
control record and any subsequent links executed via
CALL LINK statements. The execution is complete when
a CALL EXIT is executed.
EXTENDED PRECISION FORTRAN control record
format 5-68
specifying extended FORTRAN precision 5-68
F-field type, DFCNV J-6
feed check error, 2501 card subroutine B-8
field specification control record
description 4-24
example 4-24
spedfying repeated fields 4-24
field type examples for DFCNV, appendix J J-l
file description DFNCV control record
additional field information 4-23
description 4-21
format 4-22
file index, contents of an ISAM 6-32
file label, computing for lSAM files 6-30
file labels, contents oflSAM 6-31
file map, reading a 6-13
file organization, indexed sequential (IS AM) 6·28
file processing
assembler and RPG disk file organization and processing 6-28
sequen tial 6-28
file records
how FORTRAN formatted are written in sectors 6-25
how unformatted FORTRAN are written in sectors 6-26
file sizes
calculating ISAM 6-29
calculating sequentially organized 6-29
computing for DFCNV 4-23
FILE statement, assembler 3-10
FILES supervisor control record
additional field information 5-15
continuing to another FILES control record 5-15
equating program file numbers to stored data files 5-15
format 5-15
how processed 6-9
maximum number of equated data files 5-15
fixed area (FX)
The area on disk in which you store core image programs
and data files if you want them to always occupy the
same sectors. Packing never occurs in the fixed area.
Programs in disk system format cannot be stored in this
area.
changing the size of 5-45
defining 5-45
deleting information from 5-44
description 2-9
storing information in
*STOREDATA 5-33
*STOREDATACI 5-37
*STOREDATAE 5-34
FLET
fixed location equivalence table 2-8
printing the contents of 5-29
FLET and LET, altering with DUP control records 5-20

FLIPR
core load construction use of 3-11
system library utility subroutines 4-4
flowchart blocks in operating procedures, functions of 1-1
FOR monitor control reCDrd
format 5-6
general function 5-6
format conversion and information transfer, DUP control
records 5-20
format of hexadecimal addresses used in this publication 1-2
format of symbolic addresses used in this publication 1-2
formats
appendix 1 1-1
card 1-6
CDC program card 1-11
CDD data file card 1-11
CDS data card 1-9
CDS program 1-6
data 1-15
DCI program 1-5
DDF data file 1-4
disk 1-2
DSF program 1-2
NCF 1-15
paper tape 1-12
PRD print 1-13
print 1-13
formatted disk file
The organization of a FORTRAN disk data file to allow
random accessing of fixed length records. Data
conversion is not possible.
formatted file records, how FORTRAN writes in sectors 6-25
formatted FORTRAN I/O statements 6-25
FORTRAN
calling sequence for SYSUP 6-21
compilation error messages A-7
compilation messages A-7
error codes, description A-7
I/O wait codes B-I0
listing of error codes A-9
messages A-7
FORTRAN A-conversion 6-50
FORTRAN allocation addresses, locating 6-18
FORTRAN compiler, description 3-6
FORTRAN control records 5-64
**(header information) 5-69
*ARITHMETIC TRACE 5-70
*EXTENDED PRECISION 5-68
*IOCS 5-65
*L1ST ALL 5-67
*LIST SOURCE PROGRAM 5-66
*LIST SUBPROGRAM NAMES 5-66
*LIST SYMBOL TABLE 5-67
*NAME 5-69
*ONE WORD INTEGERS 5-68
*ORIGIN 5-71
*TRANSFER TRACE 5-70
general functions 5-64
how to code 5-64
where placed in the input stream 5-64
FORTRAN core load
A core load that is built from a mainline written in the
FOR TRAN language.
specifying I/O devices for 5-65
FORTRAN core map, reading a 6-15 and 16
FORTRAN data fIles, converting to RPG data files 4-20
FORTRAN DATA statement, length of 6-51

Index

X-9

PORT RAN disk files
data me processing 6-23
formatted FORTRAN I/O statements 6-25
initializing $$$$$ data files 6-27
organization and processing 6-23
unformatted FORTRAN I/O statements 6-26
FORTRAN DSF programs, dumping to cards 6-52
FORTRAN formatted file records, how written in sectors 6-25
FORTRAN I/O errors, tips for FORTRAN programmers 6-51
FORTRAN I/O statements
formatted 6-25
unformatted 6-26
FORTRAN I/O subroutines, equatable 6-48
FORTRAN IOCS control record, I/O subroutines called by 6-49
FORTRAN logical unit numbers 6-24
FORTRAN object program paper tape data record format 6-49
FORTRAN program
.
control of the console printer 6-50
listing a 5-66
listing with subprogram names and symbol table 5-67
FORTRAN program control of the console printer 6-50
FORTRAN program execution
/ / records read during 6-51
keyboard input of data records during 6-50
FORTRAN programmer, how to assign core load origin 3-10
FORTRAN programmers, tips for 6-48
FORTRAN READ and WRITE statements, maximum record sizes
used in 6-24
FORTRAN sample program H-l
FORTRAN source cards, invalid characters in 6-49
FORTRAN subprogram names, listing with a program and symbol
table 5-67
FORTRAN subroutines, restriction on use of core image header
storage area 3-9
FORTRAN symbol table, listing 5-67
FORTRAN unformatted file records, how written in sectors 6-26
FORTRAN unformatted I/O
initializing $$$$$ data files for use with 6-27
sample program using H-12
FSLEN system library utility subroutines 4-4
function
A subprogram that evaluates a mathematical relationship between a number of variables. In FORTRAN, a
FUNCTION is a subprogram that i~' restricted to a
single value for the result. This type of subprogram is
called by direct reference.
functions of console operator keys during monitor system
control 7-13
functions of flowchart blocks in operating procedures 1-1
header, construction of the core image 3-9
generation of the 1130 RJE work station program 10-3
grouping of assembler mnemonics 6-35
G2250 supelrvisor control record
examples 5-17
format 5-16
specifying use of graphic subroutine package 5-16
Jhalt codes (see wait codes)
header
DCI program 1-5
DSF program 1-3
heading, how to specify a page 5-5
hexadecimal address format used in this publication 1-2
hexadecimal disk addresses, appendix K K-l
hexadecimal MODIF patch data record (hex), format 4-11

X-IO

I-field type, DFCNV J-l
I/O device subroutine errors B-5
I/O devices
list of principal 8-9
specifying for FORTRAN COfe loads 5-65
I/O errors, FORTRAN 6-51
I/O statements, unformatted FORTRAN 6-26
I/O subroutines
called by FORTRAN 10CS control record 6-49
equatable FORTRAN 6-48
how to specify disk 5-8
using the disk 6-4
I/O wait codes FORTRAN B-lO
IBM area 2-8
That part of disk storage that is composed of DCOM,
the CIB and.the monitor programs. This area is also
known as the IBM system area or system area.
IBM-supplied system loader control records 8-2
PHID 8-3
SCON 8-2
system program sector break cards 8-4
TERM 8-2
type 81 8-7
IBM system area
CIB 2-8
cushion area 2-6
FLET 2-8
LET 2-8
SCRA in the 2-7
system device subroutine area 2-7
IBM system area on a nonsystem cartridge 2-13
IBM system area on a system cartridge 2-6
ID, disk maintenance program 4-7
error messages A-60
messages A-60
IDAD 2-5
IDENT, disk maintenance program 4-5
messages A-59
ILS branch table (IBT, see interrupt branch table)
A table consisting of the addresses of the interrupt entry
points for each ISS used for the interrupt level. An IBT
is required by the ILS for an interrupt level with which
more than one device is associated.
ILS header card CDS program 1-9
ILS subroutine example 6-44
ILS subroutines, rules for writing 6-42
ILSs
how to specify special 5-8
writing by assembler language programmers 6-42
ILS02 in the skeleton supervisor 3-2
ILS04 in the skeleton supervisor 3-2
IMM STOP key (immediate stop) 7-13
incore subprogram
A subprogram that remains in core storage during the
entire execution of the core load of which it is a part.
ILSs are always incore subprograms, whereas LOCALs
and SOCALs never are.
incorporating subrou tines, core load construction 3-10
index register 3, assembler program use of 6-35
index sectors, computing for ISAM files 6-30
indexed sequential access method files, calculating size of 6-29
indexed sequential file organization, ISAM 6-28

indicator word

The first word of a DSF block indicating which of the
following data words should be incremented (relocated)
when relocating a program in disk system format. This
word also indicates which words are LIBF, CALL, and
DSA names and the graphic instnlction GSE, GBE, or
GBCE. Programs in disk system format all contain
indicator words. Each pair of bits in the indicator word
is associated with one of the following data words; the
first pair with the first data word following the indicator
word, etc.
information transfer and format conversion, DUP control
records 5-20
initial load, monitor system 8-1
initial load operating procedure
card system 8-15
paper tape system 8·28
initial program load

The action that occurs when the PROGRAM LOAD key
is pressed. One record is read into core, starting at
location zero, from the hardware device that is physically
wired to perform this function. The record read, usually
a loader, then instnlcts the system as to the next action
to be performed; such as, load more records.
initialization, satellite disk (DISC) 4-6
initialization subroutine of DCIP 9-8
initializing $$$$$ data files for use with FORTRAN unformatted
I/O 6-27
initializing disk cartridges, operating procedure (DCIP) 9-12
input
changed LOGON effect on RJE input 10-3
stacked job arrangement 1-3
input at the work station, RJE 10-2
input of data records, from the keyboard during FORTRAN
program execution 6-50
INT REQ key (interrupt request) 7-13
INT REQ service subroutine
assembler 6-45
for any core load example 6-46
for core load using TYPEZ, WRTYZ, TYPEO or WRTYO 6-47
rules for coding an 6-45
interrupt branch table 6-42
interrupt level subroutine (ILS) 6-42

A subroutine that analyzes all interrupts on a given level,
that is, it determines which device on a given level caused
the interrupt and branches to a servicing subroutine
(ISS) for the processing of that interrupt.
interrupt level 2, skeieton supervisor 3-2
interrupt level 4, skeleton supervisor 3-2
interrupt levels, specifying for ISSs (*LEVEL assembler control
record) 5-61
interrupt request key (INT REQ) 7-13
interrupt service subroutine (ISS) 6-37
A subroutine that (1) manipulates a given I/O device and

(2) services all interrupts for that device after they are
detected by an ILS.
interrupt transfer vector (lTV, see transfer vector)
The contents of words 8 through 13 or core, which are
the automatic BSI instnlctions which occur with each
interrupt. In other words, if an interrupt occurs on level
zero and if core location 8 contains 500, an automatic
BSI to core location 500 occurs. Similarly, interrupts on
levels 1 through 5 cause BSIs to the contents of core
locations 9 through 13, respectively.
I/O device subroutines, deleting
10AR header

10CS FORTRAN control record
format 5-65
I/O subroutines called by 6-49
specifying I/O devices for FORTRAN core loads 5-65
ISAM add operation, deleting duplicate records caused by a disk
error during an 6-34
ISAM me, contents of 6-31
ISAM file index, contents of 6-32
ISAM file label, contents of 6-31
ISAM file parameters, sample program to calculate H-17
ISAM files
calculating size of 6-29
compu ting file label for 6-30
compu ting index sectors 6-30
computing overflow sectors 6-30
computing prime data sectors 6-30
random processing of 6-28
sequential processing of 6-28
ISAM indexed sequential file organization 6-28
ISAM overflow area, contents of 6-33
ISAM prime data area, contents of 6-32
ISS, specifying interrupt level for (*LEVEL assembler control
record) 5-61
ISS, subroutines in system library 4-2
ISS branch table 6-42
ISS counter

A counter in COMMA (word $IOCT) that is incremented
by one upon the initiation of every I/O operation and
decremented by one upon completion of the I/O
operatio~

header card, CDS program 1-8
subroutine error waits, listing of B-3
subroutine example 6-38
subroutine preoperative error waits B-2
subroutines
nameN 4-3
nameZ 4-2
nameO 4-2
name! 4-2
ISS subroutines in system library 4-2
ISSs, writing by assembler language programmers

ISS
ISS
ISS
ISS
ISS

J-field type, DrCNV J-2
JECL for the 1130 RJE work station
job

6-37

10-5

A group of tasks (subjobs) that are performed by the
monitor system and are interdependent; that is, the
sllcces~lul execution of any given subjob (after the first)
depends on the successful execution of at least one of
those that precede it.
how to specify a temporary 5-4
how to use SYSUP when changing cartridges during a
JOB monitor control record
additional field information 5-4
examples 5-5
format 5-2 and 3
general function 5-2
jobs
entering from the card reader 7-12
entering from the console keyboard 7-12
entering from the paper tape reader 7-12
restrictions on temporary 5-4
stacked input arrangement 6-1

6-20

4-3

The words required by an I/O device subroutine (ISS).
They must be the first or the first and second words of
the I/O buffer.

keyboard, entering jobs from the console 7-12
keyboard input at the RJE work station 10-2

Index

X-II

keyboard input of data records during FORTRAN program
execution 6-50
keyboard operation. starting 7-12
keyboard operation, stopping 7-13
keyboard procedures, RJE console to-to
keys
backspace (~) 7-12
FRASE FIELD 7-13
IMM STOP 7-13
INT REQ 7-13
PROGRAM START 7-13
PROGRAM STOP 7-13
REST KB 7-13
layout of core load ready for execution
length of FORTRAN DATA statement

3-14
6-51

LET
location equivalence table 2-8
printing the contents of *DUMPLET 5-28
LET and FLET, altering with DUP control records
LET/FLET

5-20

I1ze location equivalence table (LET) for the user area
and the fixed location equivalence table (FLET) for the
fixed area. These are disk resident tables through which
the disk addresses a/programs and data files stored in the
lIser area or fixed area are found. On a system cartridge,
LET occupies the cylinder preceding the user area. If a
fixed area is defined, FLET occupies the cylinder preceding it; otherwise, there is no FLE1:
appendix D D-I
disk format D-I
dump format D-2
entry format D-l
sector header format 0-1
IDUMYentry 0-1
LET in IBM system area 2-7
LEVEL assembler control record, specifying mterrupt levels for
ISSs 5-01
UHF subroutine
,1 subroutine that must be referenced wz'th an LIBF
statement. The type codes for subroutines in this categor}' are 3 and 5.
UHF TV 3-13
The transfer vector through which LIBFsubroutines are
{:ntered at execution time.
URFs. restriction on number in a core load 3-13
library, monitor system 4-1
library maintenance, system· 4-14
link
A link is a core image program that is read into core for
execution as a result of the execution ofa CALL LINK
statement.
linking between programs, how to avoid overprinting when 6-5
LIST ALL FORTRAN control record 5-67
LIST assembler control record, listing an assembler program 5-53
list deck
punching (*LIST DECK) 5-57
punching with error flags (*LIST DECK E) 5-59
reading a punched 5-58
LIST DECK assembler control record, punching a list deck 5-57
LIST DECK E a3sembler control record, punching a list deck with
error flags 5-59
LIST SOURCE PROGRAM FORTRAN control record, listing a
FORTRAN program 5-66
LIST SUBPROGRAM NAMES FORTRAN control record 5-66
LIST SYMBOL TABLE FORTRAN control record 5-67

X-12

list.. ~s
DUMPFLET D-6
DUMPLET D-3
SLET E-l
monitor system library, appendix C C-1
resident monitor G-1
load-although-not-called (NOCAL) subroutine

6-11
A su.broutine included in a core image program although
it is not referenced in the core image program by an
LIBFor CALL statement. Debugging aids such as a trace
or a dump fall into this category.
load mode control record (system loader) 8-8
for card system 8-8
for paper tape sy~tem 8-8
format 8-8
load mode control tape (system loader) 8-10
materials needed for preparation of 8-10
preparation of 8-10
load-on-call (LOCAL) subroutine 3-11
A subroutine that is a part cf a core image program, but
resides on disk when not in use during execution. A
LOCAL is read from the disk into a special overlay area
incore when called during execution. LOCALs, which
are specified for any given execution by the user, are a
means 0/ gaining core storage at the expense of execu·
tion time. The core load builder constructs the LOCALs
and all linkages to and from them.
loading
17ze process of reading information into core storage,
usually from disk.
loading address
The address at which a mainline, subroutine, core load,
or DSF module is to begin. For mainlines and DSF
modules, the loading address is either absolute or relative.
For subroutines, it is always relative, whereas, for core
loads, it is always absolute.
loading the assembler and compilers 8-8
loading the DCIP stand-alone utility program 9-11
LOCAL and NOCAL control record usage, tips on monitor control
and usage 6-10
LOCAL-call-LOCAL, how to specify 5-8
LOCAL-calls-a-LOCAL, usage 6-10
LOCAL supervisor control record
additional field information 5- t 3
coding for linked programs 5-13
continuing to another LOCAL control record 5-13
format 5-13
specifying LOCAL subroutines 5-13
when mainline program is in working storage 5-14
LOCALs, core load builder provision for 3-11
LOCALs, using 6-9
locating FORTRAN allocation addresses 6-18
location assignment counter
A counter maintained in the assembler for assigning
addresses to the instructions it assembles. A similar
counter is maintained in the core load builder for loading
purposes.
location equivalence table (LET) 2-8
logic flow of the monitor system 3-15
logical cartridge assignments, specifying 5-4
logical record length of RJE user-exit data 10-8
logical unit numbers, FORTRAN 6-24
LOGON, effect on RJE input of changed 10-3
long instruction
An assembler instruction that occupies two core storage
locations.

low COMMON, how processed by core image loader

3-14

The words of core that are saved in the core image buffer
when linking from program to program. This area exists
even if there is no COMMOl\~
machine and device requirements, RJE 10-1
MACLIB assembler control record
format 5-63
specifying the use of the macro library 5-63
macro libraries, reserving disk space for 5-48
macro library, specifying the use of 5-63
macro overflow, specifying WS sectors for 5-61
MACRO UPDATE DUP control record
calling the macro update program 5-49
format 5-49
macro update program (MUP), calling 5-49
mainline

A program about which a core image program is built.
The mainline is normally the program in control and calls
subroutines to perform various functions.
mainline header card, CDS program 1-6
mainline program, conversion during core load construction
mainline programs
error messages for monitor system library A-59
messages for monitor system library A-59
'lystem library 4-5
mainline programs that use all of core 6-9
maintenance
system library (MODIF) 4-8
system library (MODSF) 4-14
main tenance programs, disk 4-5
manual dump of core storage 7-14
master cartridge 2-3

3-10

The cartridge residing on logical drive zero. A master
cartridge must be a system cartridge.
maximum record sizes used in FORTRAN READ and WRITE
statements 6-24
merging assembler symbol tables 5-60
messages
auxiliary supervisor error A-58
COpy A-60
core load builder A-54
DCOM update error A-37
DFCNV A-67
DFCNVerror A-68
DISC A-59
DLCIB A-61
DUP A-13
FORTRAN A-7
10 A-60
IDENT A-59
listing of DUP error A-14
listing of MUP error A-14
MODIF A-61
MODIF error A-62
MODSF A-65
MODSF error A-66
monitor system library mainline programs A-59
MUP error A-13
printed during cold start 7-10
RJE A-33
RJE error A-28
RPG compiler A-38
SGJP error A-26
supervisor A.35
supervisor error A-36
system loader A-22
SYSUP update error A-37

messages printed during cold start 7-10
messages sent to RJE work stations 10-12
minimum system configuration 111
mnemonics, grouping of assembler 6-35
MODII' disk maintenance program 4-8
*MON patch control record 4-9
*SUB patch control record 4-12
/ / DEND patch control record 4-13
adding su brou tines to the system library 4-12
disk maintenance programs 4-8
error messages A-62
example 4-14
messages A-61
patch control records 4-9
patch data records 4-11
modified EBCDIC code (see also name code format)

A 6-bit code used internally by the monitor programs. In
converting from EBCDIC to modified EBCDIC, the
leftmost 2 bits are dropped.
MODSF disk maintenance program 4-14
*END patch control record 4-19
*PRO patch control record 4-15
error messages A-66.
example 4-20
messages A-65
MODSF patch control and data records 4-15
MODSF patch data records
D-mode 4-19
P-mode 4-17
MON MODIF patch control record
additional field information 4-11
description 4-9
format 4-10
monitor

A synonym for the entire 1130 Disk Monitor System,
Version 2, which is also known as the monitor system or
the disk monitor.
monitor control, tips on 6-1
monitor control record analyzer, disk-resident supervisor
programs 3-3
monitor control records 5-1
/ / *(comments) 5-9
/ / ASM 5-5
/ / CEND 5-11
/ / COBOL 5-6
/ / CPR NT 5-11
/ / DUP 5-6
II EJECT 5-11
/ / FOR 5-6
/ / JOB 5-2
/ / PAUS 5-10
/ / RPG 5-6
/ / TEND 5-10
/ / TYP 5-10
/ / XEQ 5-7
coding of 5-1
functions of 5-1
usage of EJECT 6-5
monitor mode, RJE 10-1
monitor program (see also monitor system programs)

One of the following parts of the monitor system:
supervisor (SUP), core image loader (CIL), core load
builder (CLB), disk utility program (DUP), assembler
(ASM), FORTRAN compiler (FOR), RPG compiler
(RPG), or COBOL compiler.
monitor system
error wait codes B-1
logic flow of 3-15
using the 1130 with the

7-12

Index

X-13

Monitor System, operating the 1130 Disk 7-1
monitor system control, functions of console operator keys
during 7-13
monitor system error wait codes, appendix B B-1
monitor system initial load and system reload 8-1
monitor system library 4-1
monitor system library listing, appendix C C-l
monitor system library mainline programs, messages A-59
monitor system operational and error messages, appendix A
monitor system programs 3-1
assembler 3-5
core image loader 3-1 3
j:ore load builder 3-7
disk placement of 3-]
disk utility program 3-4
FORTRAN compiler 3-6
RPG compiler 3-6
supervisor 3-2
monitor system sample programs, appendix H B-1
monitor system sector break cards, listing of 8-5
monitor usage, tips on 6-1
MUP error messages A-13
MUP error messages, listing of A-14

notes
listing of RPG compiler error A-40
RPG compiler error, description A-38
null command, RJE 10-6 and 10

A-I

name code format (NCF) 1-15
'l1ze format in which the names of subro~tines, entry
points, labels, etc., are stored for use in the monitor
programs. The name consists of 5 characters, terminal
blanks are added if necessary to make 5 characters. Each
character is in modified EBCDIC code, and the entire
30-bit representation is right-justified in two 16-bit words.
The leftmost 2 bits are used for various purposes by the
monitor.
name data words
The format in which constants and the names of variables
and subprograms are stored for internallJse by the FORTRAN compiler. The first bit of each name data word
is set to zero to indicate that the word contains a constant
and i~' set to one of the word contains a *ame. In either
case, the remainder of the word is packe(1 with the characters in modified EBCDIC code.
NAME FORTRAN control record
format 5-69
printing the program name on each printed page 5-69
nameN ISS subroutines 4-3
nameZ ISS subroutines 4-2
nameO ISS subroutines 4-2
namel ISS subroutines 4-2
naturally relocatable program 2-6
A program that can be executed from any core storage
location without first being relocated. The only absolute
addresses in such a program refer to parts of the resident
monitor, which are fixed.
NOCAL and LOCAL control record usage 6-10
NOCAL example 6-12
NOCAL supervisor control record
format 5-14
specifying NOCAL subroutines 5-14
NOCALs, the use of 6-11
nonsystem cartridge 2-3
A cartridge that does not contain the monitor programs,
although it does contain DCOM, LET, and working
storage. A nonsystem cartridge can be used only as a
satellite cartridge.
eIB on a 2-13
cylinder 0 on a 2-12
description . 2-12
IBM system area on a 2-13
sector @DCOM on a 2-13
sector @IDAD on a 2-13

)(.·14

'Jbject program
The output from either the assembler, or the FOR TRAN,
RPG, or COBOL compiler.
object program considerations, RPG 6-52
object program paper tape data record format, FORTRAN 6-49
one word integers FORTRAN control record
format 5-68
specifying one word of core for integers 5-68
operating procedures
analyzing disk cartridges 9-36
card system initial load 8-15
card system preload 8-25
card system reload 8-19
console printer core dump 9-2
copying disk cartridges 9-20
DCIP 9-9
disk compare 9-40
dumping disk cartridges 9-28
functions of flowchart blocks in 1-1
initializing disk cartridges 9-12
paper tape reproducing 9-42
paper tape system initial load 8-28
paper tape system reload 8-33
patching disk cartridges 9-32
preparation for DCIP 9-9
printer core dump program 9-5
PTUTL program 9-46
RJE 10-9
operating the 1130 Disk Monitor System 7-1
operator keys, console 7-13
Optical Mark Page Reader, readying the 1231 7-9
organization, disk 2-1
ORIGIN FORTRAN control record
defining an absolute starting address 5-71
format 5-71
origin locations, used by the CLB during core load
construction 3-9
origin of a core load
assignment during core load construction 3-9
how assigned by assembler programmer 3-10
how assigned by FORTRAN programmer 3-10
output
continuing RJE 10-7
discontinuing RJE 10-7
output to the RJE work station 10-6
overflow area, contents of the ISAM 6-34
overflow sectors, compu ting ISAM file 6-30
OVERFLOW SECTORS assembler control record
format 5-61
specifying WS sectors for symbol table overflow 5-61
specifying WS sectors for macro overflow 5-61
overlays, subroutines included in SOCAL 3-12
overprinting
how to avoid when linking between programs 6-5
how to avoid when using / / CPRNT 6-5
P-mode patch data record format 4-19
packing 2-11
The process of storing programs in the user area to the
nearest disk block, thus reducing the average wasted disk
space from 160 words per program to 10 disk words
per program. This process of moving programs toward
the beginning of the user area makes additional space
available in working storage.

padding

Areas in the user 01' fixed area required to start core
image programs and data files on a sector boundary. The
length of the padding, which is reflected in LET or
FLET by a 1DUMY entry, is from one to 15 disk blocks.
page heading, how to specify 5-5
paper tape data record format, FORTRAN object program 6-49
paper tape formats 1-12
paper tape input, PTUTL 4-25
paper tape output, PTUTL 4-25
Paper Tape Punch, readying the 1055 7-7
paper tape reader, entering jobs from the 7-12
Paper Tape Reader, readying the 1134 7-6
paper tape reproducing program, stand-alone utility 9-42
paper tape subroutine errors B-9
paper tape system cold start procedure 7-11
paper tape system initial load
materials needed for 8-28
operating procedure 8-28
organization of tapes for 8-29
paper tape system reload
materials needed for 8-33
operating procedure 8-33
organization of tapes for 8-33
paper tape utility program (see PTUTL)
patch control and data records
MODIF 4-9
MODSF 4-15
patch control records
MODIF 4-9
MODIF *MON 4-9
MODIF *SUB 4-12
MODIF / / DEND 4-13
MODSF 4-15
MODSF *END 4-19
MODSF *PRO 4-15
patch data records
MODIF 4-11
MODIF binary 4-12
MODIF hexadecimal (hex) 4-11
MODSF 4-15
MODSF D-mode 4-19
MODSF P-mode 4-17
patching disk cartridges, operating procedure 9-32
PAUS monitor control record
format 5-10
general function 5-10
phase identification control record (see also PHID control record)
PHID control record (IBM-supplied system loader)
format of first 8-3
format of second 8-4
physical drive number 1-2.3
Plotter, readying the 1627 7-8
postoperative error traps, skeleton supervisor 3-2
PRD print format 1-13
preload operating procedure, card system 8-25
preoperative error trap, skeleton supervisor 3-2
preoperative error waits, ISS subroutine B-2
prepa