SY33 8567 1_DOS_VSE_Assembler_Logic_Mar79 1 DOS VSE Assembler Logic Mar79
SY33-8567-1_DOS_VSE_Assembler_Logic_Mar79 SY33-8567-1_DOS_VSE_Assembler_Logic_Mar79
User Manual: SY33-8567-1_DOS_VSE_Assembler_Logic_Mar79
Open the PDF directly: View PDF
.
Page Count: 402
| Download | |
| Open PDF In Browser | View PDF |
SY33-8567·1
Systems
DOS/VSE Assembler Logic
Program Number S745-SC-ASM
'("~"'
;
!'",".
------:S: .:::i'fi:
Second Edition (March 1979)
This is a major revision of, and obsoletes, SY33-8567-0 and all subsequent TNLs.
Changes to the text and to illustrations are indicated by a vertical line to the left of
the change.
This edition applies to DOS/VSE and to all other releases until othelWise indicated in
new editions or Technical Newsletters.
Changes are continually made to the information herein; before using this publication in
connection with the operation of IBM systems, consult the latest IBM System/370
Bibliography, Order No. GC20-0001 for the editions that are applicable and current.
Requests for copies of IBM publications should be made to your IBM representative or
to the IBM branch office serving your locality.
A form is provided at the back of this publication for reader's comments. If the form
has been removed, comments may be addressed to IBM Nordic Laboratory, Product
Communications, Box 962, S-J8l 09 Liding6 9, Sweden. IBM may use or distribute
any of the information you supply in any way it believes appropriate without
incurring any obligation whatever. You may, of course, continue to use the information
you supply.
©
Copyright International Business Machines 1973, 1979
ii
Preface
Purpose of the Manual
The purfose of the manual is to aid Programming Systems Representatives
locate and circumvent faults in the DOSjVSE Assembler, and to assist
system programmers with fixing or altering the program design. The
manual describes the logic, structure, and opera~ion of the assembler
and is to be used as a complement to the program listings.
HOW THE MANUAL IS ORGANIZED
The manual is divided as follows:
•
Part 1 -describes the logic of the DOSjVSE Assembler.
•
Part 2 - describes the logic of the ESERV (De-edit) program.
Each fart of the manual is divided into sections and appendixes as shown
below:
(-
Note:
Part 2 of the manual has no Directory section.
The following is a brief description of the various sections.
-Introduction- contains a summary of general information about the
program, such as size, purpose, environmental characteristics, physical
considerations, and operational considerations.
-Method of Operation- describes the logical functions of the program.
iii
Diagrams are used to show input, processing, and output of the functions
andsubfunctions; each diagram is accompanied by an extended description
and cross-references to the program listings.
"Program Organization" describes how the program is divided up into
units. This section contains a phase/control section/object module
directory, a summary of the functions of each phase, control and data
flow, allocation of main storage for the phases, main storage layouts of
the phases, and the common data area for the assembler.
"Directoryn contains cross-references between the program's control
sections, entry points, routine names, module names, and
method-of-operation diagrams.
"Data Areas" contains detailed layouts of the program's data areas.
It also describes table and dictionary formats.
"Diagnostic Aids n contains information on debugging the assembler,
I/O activity and workfile formats for each phase, and register usage.
"Appendixes n includes information on error messages, macro and COpy
code usage, reverse Polish notation element formats, pseudo operation
codes, internal character set, edited text flags, edited statement
formats, statements modifying data areas, and APAR documentation.
USING THE MANUAL FOR THE FIRST TIME
Read through the sections in the following order:
•
Read the Introduction.
•
Read the introductory material for the "Method of Operation n section
in order to get a good idea of how to read the method-of-operation
diagrams and extended descriptions; then study the main functional
flow of the program through the diagrams and descriptions.
•
Study the figures in the "program Organization" section to learn how
the program is physically structured.
•
Continue reading the remaining sections in order to orient yourself
for quick reference to the pertinent information on the manual.
PREREQUISITE READING
Effective use of this manual requires the reader to have an
understanding of the material in the following publications:
IBM System/370 Principles of Operation, Order No. GA22-7000, which
contains information on IBM. System/370 machine operations, storage a~d
register addressing, and the functions and formatsbf machine language
instructions.
OS/VS-OOS/VSE-VM/370 Assembler Language, Order No. GC33-4010, which
contains information on the functions and formats of assembler language
instructions, and the coding of macro definitions and instructions.
Guide to the DOS/ySE Assembler, Order No. GC33-4024, which contains
information on the assembler options, program listings, complete
descriptions of the input and output, and shows how to execute the
assembler.
iv
Part 1: DOS/VSE Assembler Logic
Organization of Part .1
•
•
•
•
•
•
•
(
,
Introduction
Method of Operation
Program Organization
Directory
Data Areas
Diagnostic Aids
Appendixes
".... ,
'
v
Contents
INTRODUCTION
Size of the Assembler •
Purpose and Function of the Assembler
Environmental Characteristics
System Configuration •
Device Needs •
System Interfaces
Physical Considerations •
Operational Considerations
Input
Output •
Control Information for the Assembler
Special Feature of the Assembler
Macro Library and COpy Library •
ESERV (De-edit) Program
METHOD OF OPERATION •
Purpose of the Section
How the Section Is Organized
How to Read the Diagrams and Descriptions
Translate Source Code into Object Code
Expand Macro Instructions and Do Conditional Assembly •
Local Edit
Compress and Edit •
Edit Macro Definitions and Conditional Assembly •
Convert Pre-Assembly to Reverse Polish Notation •
Resolve Sequence Symbol References
Punch Edited Macro Definitions
Global Edit •
Build Global Vector •
Collect and Insert Attributes •
Generate
Build Macro Dictionary Block
Evaluate Reverse Polish Notation
Assemble
Edit for Assembler and Machine Instructions •
Edit
Convert Assembly Expressions to Reverse Polish Notation •
Handle Literals •
Collect Symbol Definitions
Build Symbol Table
Build External Symbol Dictionary Table
Resolve Symbol References •
Build Object Code 1
Process Machine Instructions
Process USING and DROP
Process Address Constants and CCWs
Print/punch the External Symbol Dictionary
Build Object Code 2 •
Output
Process Edited Text •
Post Process
Print/punch the Relocation Dictionary •
c
vii
1
1
1
1
1
1
2
2
2
2
3
3
3
3
3
5
5
5
5
8
10
12
14
16
18
20
22
24
28
30
32
36
38
40
42
41t
46
1t8
50
52
54
56
58
60
62
64
66
68
70
72
74
76
Sort and Print the Cross-Reference Dictionary
Diagnostics and Statistics
• • • • •
Initialize • • • • •
• • • • • •
ABEN'D •
•
•
•
•
•
•
•
•
•
•
•
PROGRAM ORGANIZATION
Purpose of the Section
• • • •
Phase/Control Section/Object Module Directory •
Summary of the Functions of Each Phase
Control and Data Flow Between Phases
Allocation of Main Storage for the Phases •
Main Storage Layouts of the Phases
Common Data Area for the Assembler
78
80
82
84
87
• • • • 87
88
90
92
• • • • • • 94
95
• • • • 110
DIRECTORY • • • • • • • •
Purpose of the Section
• • 111
• 111
DATA AREAS • • • • • • • • • • • •
Purpose of the Section
Data Area Field Cross-Reference
• .129
• .129
• .201
DIAGNOSTIC AIDS • • • • • • • • • • • • •
purpose of the Section
Debugging Aids • • • • •
Wrong Assembler Output •
Program Check • • • •
• • • •
Program Identification
••• •
I/O Activity and Workfile Layouts
Register Usage for the Assembler
APPENDIXES
• • .211
• .211
• • • 212
• .212
• .212
.218
• • • .219
.235
• .237
APPENDIX A: DIAGNOSTIC MESSAGE NUMBER/MODULE/DIAGRAM
CROSS- REFERENCE • • • •
• • • • • • • • • • •
.238
APPENDIX B:
MODULE/ENTRY SYMBOL/EXTRN SYMBOL CROSS-REFERENCE • • • • 243
APPENDIX C:
MACRO AND COpy CODE USAGE
APPENDIX D:
ELEMENT FORMATS
APPENDIX E:
PSEUDO (INTERNAL) OPERATION CODES
• .267
APPENDIX F:
INTERNAL CHARACTER SET •
• .269
APPENDIX G:
EDITED TEXT FLAGS
APPENDIX H:
EDITED STATEMENT FORMATS
APPENDIX I:
STATEMENTS MODIFYING DATA AREAS
APPENDIX J:
APAR DOCUMENTATION FOR THE ASSEMBLER
····
.....····
.····
···..
INDEX
• .245
• • • 259
• .271
• .273
• .283
• • • • 315
• .317
Table of Contents for Method of Operation Diagrams
(see Part II page 51)
viii
Figures
(,-
(~'
"
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Fiqure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
Figure 39.
Figure
Figure
Figure
Figure
Figure
Figure
40.
41.
42.
43.
44.
45.
Phase/Control Section/Object Module Directory (1 of 2)
Summary of the Functions of Each Phase
Control and Data Flow Between Phases
Allocation of Main Storage for the Phases
ASSECA Main Storage Layout
ASSEDA Main Storage Layout
ASSEEA Main Storage Layout
ASSEGA Main Storage Layout
ASSEFA Main Storage Layout
ASSEHA Main Storage Layout
ASSEIA Main Storage Layout
ASSEJA Main Storage Layout
ASSEKA Main Storage Layout
ASSELA Main Storage Layout
ASSEMA Main Storage Layout
ASSEOA Main Storage Layout
ASSEQA Main Storage Layout
ASSERA Main Storage Layout
ASSERB and ASSERC Main Storage Layouts
ASSESA Main Storage Layout
I/O Activity for ASSECA
I/O Activity for ASSEDA
I/O Activity for ASSEEA
I/O Activity for ASSEGA
I/O Activity for ASSEFA
I/O Activity for ASSEHA
I/O Activity for ASSEIA
I/O Activity for ASSEJA
I/O Activity for ASSEKA
I/O Activity for ASSELA
I/O Activity for ASSEMA
I/O Activity for ASSEOA
I/O Activity for ASSEQA
I/O Activity for ASSERA, ASSERB, ASSERC
I/O Activity for ASSESA
Register Usage
Registers Changed by Interface-Routine Operation
Diagnostic Message Number/Module/Diagram Cross-Reference
( 1 of 5)
Module/Entry Symbol/EXTRN Symbol Cross-Reference
( 1 of 2)
Macro Usage (1 of 10)
COpy Code Usage (1 of 3)
Element Formats: Part 1. Operands (1 of 2)
Element Formats: Part 2. Operators (1 of 4)
Pseudo (Internal) Operation Codes (1 of 2)
Internal Character Set
···
· ·· ···· ·
····
··· ·
·· ·
····
· · · ·
····
··
· ·
··
·····
·
·
·
·
·
·· · ·
· · · · · · · · ·
·
·
·
·
·
··
··
··
··
··
·
·
· ·
· ·
··
··
··
· · · ·
.···········
..·· ····
···
·· ·····
· ·····
.
··
· · · ·
· · ·· ·
···
·
·
·
·
··· ·
·
·· · ·
· · · ··
········ ···
c
ix
· ·
·
·
··
· ·
··
··
·
·
·
·
·
·
·
·
·
·
····
·
····
····
·
· · · · ·
····
····
· · · ·
···
··
·
···
· · · ·
·
·
· · · · ·
··
·· ·· · · · ·
··· ·
· · · · ·
· ··
···· · ·
···
····
···
·
···· ·
·
··
·· · · · · ·
·· · ·
· · · ·· · ·
· · · ·· ·
·
·
Figure 46. Table of Contents for Method of Operation Diagrams
(see Part II page 51)
87
89
92
93
96
96
97
98
99
.100
.101
.102
.103
.104
.105
.106
.107
.108
.108
.109
.220
.221
.222
.223
.224
.225
.226
.227
.228
.229
.230
.231
.232
.233
.234
.235
.236
.238
.243
.245
.255
.260
.263
.267
.269
Introduction
(The DOS/VSE Assembler is the system control program assembler language
translator for DOS/VSE. The language processed is a subset of the
language supported by System/370 OS Assemblers and is documented in
OS/VS - DOSjVSE - VM/370 Assembler Language. All System/370
instructions are supported by the DOS/VSE Assembler.
Size of the Assembler
The minimum virtual partition size required by the DOS/VS Assembler is
24K.
Purpose and Function of the Assembler
The purpose of the DOS/VSE Assembler is to translate source programs
written in the DOS assembler language into object modules suitable for
processing by the DOS Linkage Editor. The assembler performs three
majcr functions in processing source programs: (1) expansion of macro
definitions called by macro instructions, (2) assembly of machine
instructions into object code, and (3) processing of assembler
instructions.
The assembler also produces edited macro definitions suitable for
cataloging on a source statement library.
Environmental Characteristics
SYSTEM CONFIGURATION
The minimum configuration required by the assembler is the same as that
for the DOS control program: one disk drive, one card reader/punch, and
a printer. The following data sets are used by the assembler:
SYSRES
SYSIPT
SYSSLB
SYSLST
SYSPCH
SYSLNK
SYS001,
(optional)
(optional)
(optional)
(optional)
SYS002, SYS003
Disk
Card, Tape, or Disk
Disk
Printer, Tape, or Disk
Card, Tape, or Disk
Disk
Disk
DEVICE NEEDS
c
The assembler requires devices for SYSRES, SYSIPT, and the three
workfiles SYS001, SYS002, and SYS003. Other devices are needed only if
the data sets are specified by their corresponding assembler option.
Introduction
1
SYSTEM INTERFACES
System-dependent functions and operations of the assembler (interfaces
between the assembler and the system) are centralized in interface
modules to allow relative ease of modification for new features of the
Disk Operating System. The names and fUllctionsof these interface
modules are listed below.
IPKAA
IPKAB
IPKAC
IPKAD
IPKAE
IPKAF
IPKAG
IPKAH
IPKAI
Basic system interface routines (workfile I/O
and subroutine call routines), common data area
(COMMON)
SYSSIPT, SYSSLB input routines
SYSPCH routine for EDECK output
SYSSLB logic module (DTFSL)
SYSSLB routines for reading edited macros from SYSSLB
SYSPCH/SYSLNK output routines
SYSIPT logic module (CPMOD)
SYSPCH/SYSLNK/SYSLST logic module (CPMOD)
SYSLST output routine
Interface macros used by the assembler to provide service functions
and to call for functions from interface modules are described in
Appendix C, -Macro Usage.-
Physical Considerations
The assembler is made up of 19 phases residing on a core image library.
See -program Organization- fora table showing the phases, control
sections, and object modules of the assembler.
Operational Considerations
INPUT
Input to the assembler is as follows:
Source code
SYSIPT
COpy code (sublibrary A on a
source statement library)
SYSRES/SYSSLB
Edited macro definitions
(sublibrary E on a source
statement library)
SYSRES/SYSSLB
Sublibraries A and E are optional. One private library may be used in
addition to the system library. For a complete description of the input
see Guide to the DOSjVSE Assembler.
rr-'
,«
i'\._~j_
2
OUTPUT
Assembler output is as follows:
Object modules
SYSLNK/SYSPCH
Source macro definitions (in
edited format)
SYSPCH
Program listing
SYSLST
The output is controlled by specifying assembler options. For a
complete description of the output see Guide to the DOS/VSE Assembler.
CONTROL INFORMATION FOR THE ASSEMBLER
The user specifies options for the assembler in the OPTION job control
statement. For a description of the assembler options see Guide to the
DOS/VSE Asseabler.
Special Features of the Assembler
MACRO LIBRARY AND COpy LIBRARY
The DOS/VSE Assembler uses two sublibraries of the source statement
library: (1) the macro library, containing macro definitions in an
edited format, and (2) the COPY library, containing sequences of
assembler language instructions and/or macro definitions in source
format. Because the macro· definitions in the macro library are edited,
the assembler is relieved from editing and syntax checking the macro
definitions when they are called by macro instructions from an assembler
program.
ESERV (DE-EDI T) PROGRAM
The ESERV program translates edited macros back into their
format. This "de-editing" may be optionally combined with
the macro. The logic of the ESERV program is described in
this manual. For a complete description of how to use the
Guide to the DOS/ySE Asserrbler.
source
an update of
Part 2 of
program see
Introduction
3
/
'
,
j
~,J
/~-"- ....""
f '
~J
Method of Operation
Purpose of the Section
The purpose of this section is to give a functional description of the
assembler and to provide a cross-reference from any given diagram to
other parts of the manual and the program listings.
HOW THE SECTION IS ORGANIZED
This section consists of diagrams showing the functions and subfunctions of the assembler. These diagrams are arranged in a hierarchy
as illustrated in the foldout, Figure 46, at the back of the manual.
(Please open Figure 46 and use it as a guide to the diagrams.) With each diagram is an
-Extended Description- containing detailed information about the
function or subfunction.
HOW TO READ THE DIAGRAMS AND DESCRIPTIONS
Each diagram illustrates:
•
Input - showing what the data is and where it is from
•
Process - describing how the data is processed by the assembler
•
Output - showing where the data goes
Data areas are identified on the diagrams in two ways: main-storage
address (upper case, parenthesis), and by DSECT name (upper case,
underlined). Data areas as shown on the diagrams are highly schematic.
For complete and accurate data area layouts see -Data Areas-.
The extended descriptions are related to the diagrams by numbered
process steps.
In addition, the extended descriptions give the names
of the module and routine(s) which perform the function.
Many of the data areas and routines are mentioned in two or more
diagrams. For a cross-reference of these data areas, the diagrams in
this section, and the program listings use the -Directory-. The
Directory also cross-references the appropriate microfiche card if you
wish to go directly to the listings.
()
Method of Operation
5
Start reading the process block and refer to the input and OUi:put as
you proceed through the diagram. Use the extended descriptions if you
require more detailed information.
EDIT
INPUT
PROCESS
OUTPUT
EXT. DESCRIPTION
MODULE
ROUTINE
AREA 1
OUTPUT A
2~
D
OUTPUT B
AREA 2
3~
The following symbols are used in the diagrams.
(~:
_____--,>
>
Data flow
- - ---~ Data reference
Pointer
(MNAENT)
Main storage
address
J
Control flow
Reference to
another diagram
PSTRINGS
DSECT name
Method of Operation
7
Translate Source Code into Object Code
o
PROCESS
INPUT
~
~
~
OUTPUT
SOURCE STATEMENTS
SOURCE MACRO DEFINITIONS
EDITED MACRO DEFINITIONS
...
roI
1 EXPAND MACRO INSTRUCTIONS
AND DO CONDITIONAL ASSEMBLY
CJ
(EDECK OPTION ONL Y) ...
v
(SYSIPT)
(SYSPCH)
COPY CODE
EDITED MACRO DEFINITIONS
OBJECT MODULE
...
2 ASSEMBLE OBJECT CODE FROM
MACHINE AND ASSEMBLER
INsTRUCTIONS
00
CJ-~
~v
(SYSLNK OR SYSPCH)
(SOURCE STATEMENT
LIBRARY)
LISTING
...
~v
(SYSLST)
(0)
C~
~
o
~
~,
EXTENDED DESCRIPTION
1.
Source statements are read and macro instructions expanded. Conditional assembly in
open code is performed. If the EDECK option has been specified, edited macro
definitions can be obtained on'SYSPCH.
2.
After all macro instructions have been expanded, the assembler and machine instructions
are assembled into object code.
~,
//'//'/
/'
../"',,,,
Expand Macro Instructions and Do Conditional Assembly
.. _.
_.
(SYSIP7; SYSSLB)
SOURCE CODE
. ..
1.
_--
_.- -ASSEMBLER AND
MACHINE
INSTRUCTIONS
.... 3 GLOBAL EDIT
EDITED TEXT
~to..
v
....
1 LOCAL EDIT
~
!--
to..
r--,/
f-
o
-
-v
EDITED MACRO
DEFINITIONS (SYSSLB)
EDITEOoMACRO
DEFINITIONS
'----,
-r-
2 PUNCH EDITED
MACRO
DEFINITIONS
INSERT
ATTRIBUTES
~
....
v
~
....
v
I
f~-'"
4 COLLECT AND
5 GENERATE
CV
\ )
~
EDITED MACRO
DEFINITIONS
'--~
.......
rv'
L.cu
(-
\
"
/
\
/J
~
1
!~i
EXTENDED DESCRIPTION
Because the assembler accepts edited macros, editing proceeds in two stages: local editing and
global editing. Local editing involves only local variable symbols. Global editing involves global
variable symbols and therefore cannot be done until edited macro definitions have been read in
(if they are called). After both local and global editing have been done, the macro instructions
can be expanded according to their definitions; conditional assembly in open code is also performed.
I-'
I-'
1.
Source code is read and macro definitions and instructions edited locally. Some editing of
machine and assembler instructions is also done.
2.
If the EDECK option has been specified, locally edited source macro definitions are
punched.
3.
Edited macro definitions are read in from the macro library and global editing done.
4.
Attributes needed for conditional assembly are collected. The edited text is now ready
for macro expansion and conditional assembly.
5.
Macro instructions are expanded and conditional assembly is performed. The output is
now ready for the assembler phases.
~
Local Edit
1.1
, ....
SOURCE
CODE
"'.
(SYSIPT)
D
D
SOURCE
CODE
y
. ..
-_ .. _.
_----
LOCALL Y EDITED
TEXT
1"-., 1
1./
COMPRESS AND
EDIT
.;:
2 CONDITIONAL
v
ASSEMBLY
3 RESOLVE
-v
"
v
SEQUENCE
AND MACRO
SYMBOL
DEFINITIONS
REFERENCE
(SYSSLB)
~
~
~
I-'
IV
T
1.3
1.3
If no conditional
assembly or macros
~~c4.,
\,
)
'\
/
\\,
)
~
1.1
I-'
W
~
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
1.
In the first pass over the text tile, macro instructions and prototypes are edited,
opcodes inserted in all records, and all records are compressed. Some editing
of macro definitions is also done (see Diagram 1.1.1).
IPKCC
IPKCA
MIROUT
2.
In the second pass, macro definitions "re edited (see Diagram 1.1.2). Expressions
involving conditional assembly are translated to reverse Polish notation (see Diagram
1.1.2.1).
IPKCC
PROROUT
3.
In the third pass, sequence symbol references are resolved (replaced by addresses) and
the edited text separated from the compressed source records (see Diagram 1.1.3).
IPKEA
Compress and Edit
1.1;1
c:z
INPUT
SOURCE TEXT
(SYSIPT,SYSSLB)
i
MACRO
v
MEND
MACRO
A
1 READ SOURCE
Rest of macro definition
(compressedl
Compressed source
statements
:0"KC8)
,
MEND
MACRO
_ ... --'"
B
~
I-'
~
I
4 EDIT MACRO
v
PROTOTYPES
MEND
Edited
source
definitions
PCSR
IPCSR
Edited macro instructions
IEDPMI
Open
code
Compressed source
Edited macro instruction
B
MEND
MACRO
MAC1 &A,&B,&C=C
f
Ed ited prototype records
EDPMI
3 INSERT OP CODES.,
macro
definitions I
(WORKFILE 2)
IPKCA
2 COMPRESS ALL RECORDS
MEND
MACRO
Source
OUTPUT
PROCESS
0=>
Compressed source
BEGIN
Open code I
MAC1X,Y
I
MAC1U,V
I)
5 EDIT MACRO
INSTRUCTIONS
~
MACRO NAME ARRAY (WORKFILE 3)
i i i
•
Index
END
6 BUILD MACRO NAME ARRAY
Name
length
Name
MNAENT
--
IPKDA
1.1.2
,
(:~
l.
/
,(.
(
\..
I
/
\.
~
,,-...
~,
.
'-,-_.)'
1.1.1
I-'
lJl
EXTENDED DESCRIPTION
MODULE
ROUTINE
DRillER
1.
Source statements are read from the system input device (SYSIPT) and from the source
statement library. SYSIPT contains source macro definitions and "open code" (in that
order) and may contain COPY statements which cause library COPY books to be brought
in from sublibrary A on the source statement library.
IPKCA
2.
All records are compressed. Normally the whole statement is contained in olle compressed
source record.
IPKCB
3.
At the same time as compression is done, pseudo opcodes are inserted in the record (see
Appendix E for the pseudo opcodes).
4.
Editing of source macro definitions is begun. At least two edited statements are created for
each macro type: a header and a text record. The edited prototype records contain the
macro name, positional and keyword parameters, and a number of "items".
IPKCC
PROROUT
5.
Macro instructions both in open code and within source macro definitions are partially
edited; operands needing substitution are not completely processed until the next text pass
(see Diagram 1.1.2).
IPKCC
MIROUT
6.
As macro instructions are edited, a macro name array is built for open code only (inner
macro instructions are handled in Global Edit .- Diagram 1.3). The macro name array is
built in main storage in blocks whose size is determined by initialization; the blocks are
written on workfile 3 when filled. Before a macro is entered it is checked for previous entry.
IPKCC
M!ROUT
i
Edit Macro Definitions and Conditional Assembly
1.1.2
OUTPUT
PROCESS
INPUT
IPKDA
TEXT FILE (WORKFILE 3J
i
1 BUILD MACRO HEADER AND KEYWORD TABLE
EDPMI
2 PROCESS VARIABLE SYMBOLS
~
lb
Edited macro
definitions
VARIABLE SYMBOL DICTIONARY
Nama
3 EDIT CONDITIONAL
TYDII
Index number
8==>
ASSEMBLY AND
MODEL STATEMENTS
Opencada
.eg[!
4
I-'
'"
Globais
I
J (VSDADDRJ
VSD
~O:=~OCSTMH
~
Dimension
SEQUENCE SYMBOL DICTIONARY
COLLECT
SEQUENCE
SYMBOL
DEFINITIONS
~
I
Symbol
I
Offset
I
(SSDADDRJ
~
MACRO INFORMATION BLOCK
i
5 BUILD MACRO----"\.
INFORMATION---,/
BLOCK
I
,
Nama
(MIS)
NIP to SSD
Attribute switch
Global switch
Inner macro _itch
Error switch
~
Site of local
Open code dictionaries
work areas
Opencada
(j
~
,~
~
'-'._---/
1.1.2
1.
EXTENDED DESCRIPTION
The macro header contains an index number for the macro definition and the NIP
address of the definition's macro information block (see step 5).
MODULE
ROUTINE
IPKDA
NEWST
IPKDA
VSDLKP
The keyword table, consisting of keyword names and their default values, is built
from the edited prototype statements for the definition.
2.
Variable symbols (local, global, and macro parameters) are entered in the variable
symbol dictionary (one dictionary for each definition, and one for open code).
Global definitions are also entered in a global array for the definition. The global
array will later be used in global processing (see Diagram 1.3).
The variable symbol dictionary is used in editing the conditional assembly and model
statements in the macro definition (step 3). It is also written on workfile 3 for use
by the ESERV program if required.
I--'
-...]
3.
Editing consists of two main functions: all variable symbol references (except
sequence symbols .. see step 4) are replaced by their index numbers and all conditional
assembly expressions are translated into reverse Pol ish notation (see Diagram 1.1.2.1).
At this point macro instructions requiring substitution in their operand fields are fully
edited.
IPKDA
INTERPR
4.
Sequence symbols, together with the offset in bytes from the end of the global array
to the statement with the symbol in its name field, are collected in the sequence
symbol dictionary. References to sequence symbols will be replaced by the offsets in
the next text pass (see Diagram 1.1.3). At the end of the macro definition or open
code, the dictionary is written on workfile 3 and its position noted in the macro
information block or open code information block.
IPKDA
SSDENT
5.
A macro information block is built and written on workfile 3 at the conclusion of
processing for a macro definition.
IPKDA
1.1.2.1
Convert Pre-Assembly to Reverse Polish Notation
.. --
Operand of
SETx or AI.F
y
.-
--------
Expression in
1 SCAN EXPRESSION
~
statement
2
3
_.
reverse Polish
notation
PASS OPERANDS DIRECTL Y
TO OUTPUT STRING
SEND OPERATOR~ TO STACK.
MOVE TO OUTPUT AS OPERATOR
PRIORITY DICTATES
I
.r
~
I-'
3 PUNCH DEFINITION
4
Positional
parameters
0::::>
Edited definition
~
BKEND
PUNCH POSITIONAL
( CATALS
PARAMETERS AND LCLx
DEFINITIONS FROM
0=:>
VARIABLE SYMBOL
DICTIONARY
5 PUNCH SEQUENCE SYMBOL
DICTIONARY
6 PUNCH BKEND CARDS
&
~
~
DIAGNOSTIC INFORMATION (WORKFILE 3)
i
0==>
~
"
7 WRITE DIAGNOSTIC INFORMATION
-v
L.---'"
~~
~,'
I
-
',PKFA
~V
\A
,
/
:
!
'\
\,
/
/
!
\c
/
~
1.2
~.
~
EXTENDED
DESCRIPTION
MODULE
ROUTINE
Immediately after resolution of sequence symbol references, the macro definition is ready
to be punched and cataloged, if so desired. (In other words, at this stage it is "pre-edited.")
1.
When the EDECK option of the assembler is in effect, macro definitions without
editing errors are punched in their edited form. The source macro table is used to
locate the definition and its corresponding variable symbol and sequence symbol
dictionaries.
IPKGA
STSMTGET
2.
A CATALS and a BKEND card are punched so that the resulting deck can be
submitted directly for cataloging in the macro library.
IPKGA
CATALBKE
3.
The edited definition is copied from workfile 2.
IPKGA
MPUNCH
STGET
4.
Immediately after the definition, positional parameters and local variable symbol
declarations are punched from the variable symbol dictionary. These are needed so
that the macro definition can be reconstructed, if necessary, by the ESERV program.
IPKGA
MPUNCH
STGET
5.
The sequence symbol dictionary is also punched for the same reasons as above.
IPKGA
MPUNCH
STGET
6.
A BKEND card is punched.
IPKGA
7.
Diagnostic information (macro name and number of cards punched) is written
on workfile 3.
IPKGA
tv
W
STDIAG
1.3
. _._.
I~
MACRO NAME
IPKFA
O:NAENT
~-------TaL. ","RKF<'FTENT -I~'
I
SOURCE MACRO
-
-
-
I
~
Global array GARD, GARENT ,
I
C Edited text
"'"
J
,
Edited MEND
I
,
--
'@
I
.i .....~....
N
•
2 SEARCH FOR MACRO DEFINITIONS -
J
3 BUILD GLOBAL
Ii;~
\, )
'-...-/
v
4 .~
COpy MACRO DEFINITION; MAKE ENTRY
IN MACRO ADDRESS VECTOR
( OR
PETR
~
EDITED MACRO
DEFINITIONS
1.3.1
(WORKFILE 3}
~
~
"
(GSOBUFAO}
GSOENTRY
VECTOR
Pi'
....
READ MACRO ADDRESS
VECTOR
--,./
TEXT
Macro address vector
Compressed
source
2 AREA
BUI1.D GLOBAL VALUE AREA ~.
. -v'
Global value area
records
*~-----------I
(PGSLSIZ)
Open code dictionary
(WORKFILE 1)
OPEN CODE GLOBAL VECTOR
(WORKFILE 3)l
GENERATED
IPKIA
"'."/
(WORKFILE 1)
DIS
information block
3
PGVHEAD...
BUILD OPEN CODE
DICTIONARY BLOCK
Statements
...--
~>
Local value areas
generatad
from
macro
rV
..
~~------------~
1--------1
Global vector
:EDITED TEXT
(WORKFILE 2)
DIS
--
Macro dictionary
information block
4
Edited macro instructiOn
V
......
~
_-
MACRO
DEFINITIONS
Co
essed
~
source
records
*
W
to
READ EDITED TEXT,
BUILD MACRO ~
DICTIONARY
1.5.1
BLOCK(S) FOR
MACRO.
~
Parameter table
I
>
Parametar pointer vector
..
IWORKFILE 1)
Local value area
I r;::::!)
Macro definition
)-
1-_ _ _ _ _ _ _ _--11 -
~
- - --
U
rV
.---
5
EXPAND MACRO.
PER FORM CONDITIONAL
ASSEMBL Y (ALSO FOR
OPEN CODE)
~
Global vector
***~L
__________-J
l
I
--
expanded,
(~)
(\
"-
I
,..,
'-
~-'
1.5
EXTENDED DESCRIPTION
1.
The phase is initialized by loading in a number of reference elements and workareas.
The macro address vector is read from workfile 1.
2.
The global value area is built (this is a workarea used to hold the values of global
symbols during generation).
3.
The open code dictionary block, consisting of a header, local variable symbol areas,
and the global vector for open code, is built directly under the global value area.
4.
Text is read from workfile 2, starting at open code. Compressed source records are
passed directly to the generated text file (workfile 3). When a macro instruction is
encountered, a macro dictionary block (a work and reference area for expansion
of the macro) is built (see Diagram 1.5.1).
5.
,~
,
;Y
The macro definition is processed instruction by instruction Gnd the expanded
instruction written on workfile 3. Conditional assembly and substitution are performed
as necessary (see Diagram 1.5.2). Conditional assembly and substitution are also
done for open code as necessary.
w
w
Dynamic allocation of SETC variables
For SETC variables the value areas do not contain the values directly. Instead each SETC value
area has an associated String Storage Area (SSA), where space is allocated dynamically to the
values. The value area then contains for each variable its length and its offset in the SSA.
The SSA grow and shrink dynamically during macro processing as dictated by the SETC
statements executed. The initial size of each SSA is zero.
The global SSA is located at the top of the dictionary area and expands downwards. Each
local area is located at the top of the corresponding dictionary block and expands upwards.
Thus, overflow is possible during macro expansion. This is handled in a manner similar to
that used for overflow when building the dictionary block.
MODULE
ROUTINE
IPKIA
INIT
IPKIA
DRIVER
IPKIA
IMIEDIT
IPKIA
IPKIA
DRIVER
CAEVAL
Dictionary Block Overflow
Overflow in parameter table (outer macro)
dictionary start
open
OCDlB
} code
••
dictionary
•
.. I
outer macro
..
end of dictionary area*
MAC1
I
1 block
PARTBL
dictionary start
oeDiB
•
••
MAC1 MD1B
PARTBL
PARPTV
VJ
",.
..
*
end of dictionary area" ..
Open code dictionary block contains information necessary for PARTBL build and
cannot be written on workfile until PARTBL is completed.
The macro must be abandoned.
MDIB
Overflow after parameter table complete**{outer macro)
outer macro
Error message IPK101 "DICTIONARY SPACE FOR VARIABLES EXHAUSTED"
LCLX value area
WORKFILE2
I oc;,. I
dictionary
start
MAC1 MDIB
PARTBL
PARPTV
LCLX value area
••
Open code dictionary block written on workfile 2.
Outer macro is moved to dictionary start
and processing continues.
dictionary
start
0
1
When MEND for MAC1 is encountered, open code
dictionary block is read into dictionary
start and processing continues.
Overflow in parameter table (inner macro)
WORKFILE2
dictionary start
OCDlB
••
outer macro
inner macro
•
MAC1 MDIB
PARTBL
MAC1 MDIB
••
•
MAC2 MDIB
dictionary
start
W
PARTBL
••
•
MAC2 MDIB
end of dictionary area~
I~'·I
dictiona'L-.
start
•
••
Open code dictionary block written on workfile 2.
Outer macro is moved to dictionary start.
MAC1 dictionary block contains information
necessary for MAC2 PARTBL build.
At MEND to MAC2, MAC1 is read into dictionary
start. When MEND for MAC1 is encountered, open
code dictionary block is read into dictionary start
and processing continues.
* or the last entry in the Keyword Name Array
* *overflow in PARPTV, LCLX value area, and Global Vector is treated in a similar way
(;
(
"
/
~
1
Overflow after parameter table complete**(inner macro I
OCDlB
•
outer macro_
••
MAC1 MDIB
'inner macro to MAC1 ~_
outer macro to MAC2
••
end of dictionary area -
MAC1 MDIB
•
••
•
MAC2 MDIB
••
•
MAC3 MDIB
PARTBL
PARPTV
-
dictionary
start
••
•
MAC2 MDIB
••
•
inner macro
WORKFILE2
OCDIB
dictionary start
t;::
,.-....\
~,
PARPTV
••
Open code dictionary block, MAC1 and MAC2
dictionary blocks written on workfile 2. MAC3
is moved to dictionary start and processing
continues.
**Overflow in PARPTV, LCLX value area,and Global Vector is treated in a similar way.
Overflow in the String Storage Area during macro expansion is also treated in a similar way.
---m
dictionary
MAC3 MDIB
PARTBL
When MEND for MAC3 is encountered, MAC2 is
read into dictionary start. At MEND to MAC2,
MAC1 is read into dictionary start. When MEND
to MAC1 is encountered, open code dictionary
block is read into dictionary start and processing
continues.
1.5.1
Build Macro Dictionary Block
INPUT
OPEN CODE
EDITED TEXT
PROCESS
•
(WORKFILE 2)
~
Pos.
parm.
rr)
1
2
XYZemry
Parameter
~
I
LEMONemry
w
i
~
A
SAM's offset
PARPTV
(KNAPT) PKNA
LCLAvalue_
3
-,
READ KEYWORD TABLE,
SEARCH FOR KEYWORD IN
KEYWORD NAME ARRAY . .!'mI.
FOUND, ENTER DEFAULT AND
OFFSET
KW1 keyword
KW2keyword
hrameter
pointer
vector*
. LEMON's offset
I~
SAMd8tault
SAMemry
XYZ'soffset
•
~
0'1
table
~
EtIITER KEYWORD OPERANDS
IN PARAMETER TABLE;
OFFSET AND KEYWORD IN
KEYWORD NAME ARRAY
MACRO ADDRESS
VECTOR (WORKFILE 1)
~
i
Mecro dictionary
information block
ENTER POSITIONAL OPERANDS
IN PARAMETER TABLE; OFFSET
IN PARAMETER POINTER VECTOR
Anr.
~~::.-t-J -j-.\:)
'-
MACRO DICTIONARY
(RDIBBASE)
BLOCK
i
Macro instruction header
I1lnc1ex
OUTPUT
Kliyword
table
I
~.
.~
4 ~,MOVE OFFSET
KTAB
LCLBvalue_
LCLCvelue_
.0:=:>
Global vector
ORANGE default
5
Global vector
PGVHEAD
Text
MEND
FIND VALUE AREA SIZES AND
RESERVE SPACE
8
~
READ GLOBAL VECTOR
*Built in (PARPTVBA)
0=:>
~
r~
\.
.J
\;
\
)
~
1.5.1
~
~
j-
ROUTINE
MODULE
EXTENDED DESCRIPTION
The macro dictionary block is an in·storage workarea used in expanding macros and performing
conditional assembly. It consists of:
•
•
•
•
•
Header (the macro dictionary information block)
Parameter table (contains values and attributes of keyword and positional parameters
used in the definition, as well as name field parameters and the current values of SYSNDX
and SYSECT).
Parameter pointer vector (contains offsets of the parameter entries in the parameter
table. The parameter pointer vector is analogous to the global vector in that it is a
table of pointers to another table containing the actual values).
Local variable symbol value areas.
Global vector.
In the following description it is assumed that the macro definition prototype is
MAC1 &PP,&KVV1=SAM,&KW2=ORANGE
and that the macro instruction being expanded is
MAC1 XYZ,KW2=LEMON
W
0'\
I-'
Thus the prototype has one positional parameter and two keyword parameters; the first keyword
(larameter operand has been omitted in the instruction.
1.
The edited macro instruction is read and the positional parameter operand (XYZ) placed in
the parameter table. The offset of the positional parameter is placed in the parameter pointer
vector. (Positional parameters come first in the table, directly after SYSNDX, SYSECT, and
.. the macro name field parameter. Then come the keyword parameters.)
IPKIA
MAIN10
2.
Keyword parameters are then read in from the edited macro instruction and entered in the
parameter table. At this point only "LEMON" is entered, since the first keyword
parameter has been omitted. The offset is.!!2l entered in the parameter pointer vector, but
in the keyword name array, along with the keyword's name and the length of the parameter.
IPKIA
MAINK
1.5.1
EXTENDED DESCRIPTION
(continued)
MODULE
ROUTINE
IPKIA
MAIN30
(The keyword name array is used to keep track of which keyword parameters have been
omitted in the macro instruction so that default values can be inserted if necessary.)
3.
The keyword table of the macro definition is then read. Each keyword in the table is
searched for in the keyword name array. If the keyword (in this case KW1) is not present,
a default value (SAM) is placed in the parameter table.
If found (as is the case with KW2), its offset in the parameter table, which had been kept
in the keyword name array, is moved to the parameter pointer vector. Thus the offsets of
the keyword parameters have the same order as they do in the prototype.
During steps 1-3 the keyword name array is built in high-address storage while the
parameter table is built in low-address storage, towards it. The parameter pointer vector
was built elsewhere in main storage. The parameter pointer vector is now written over the
keyword name array, directly under the parameter table.
4.
The sizes of the local value areas are obtained from the macro definition header and space
reserved for them.
IPKIA
IMIEDIT
5.
The global vector is read into main storage directly under the local value areas.
IPKIA
IMIEDIT
w
~
N
~,
If
\
j
'
1\
I
'\
\,
)
c
37
1.5.2
Evaluate Reverae Polish Notation
~
INPUT
SOURCE:
&LA2SETA&P
+ &GA3
REVERSE POLISH NOTATION:
,. \ 2 \
5 \ BPI 98
PP \
l
H
i :1
It J·li.
!
Iii:
-
i
" _ _ _ ETER
I
c:I
~
LCLAVALUE
AREA
,~
)
\.
BP=7
2
[IE
ENTER FIRST
ELEMENT IN
STACK
I I 21L-41 Ie;~ I
/
3
4
GLOBAL VALUE
AREA
31
READ SECOND
~~~:T:
,.
pp
ADDRESS OF • P
.
\
1
I I
(
OUTPUT
STACK
0
~~
PARAMETER
TABLEI
\.
i:-
.
.L~L~
)
00
+ ISETA
jHtH),1 i
ID
PCHNTER
\
w
3
..
PROCESS
..
.
5
SUBSTITUTE
VALUEOF.P
1,·1
21L=41 b41 7 IL=61
LOCATE.GA
1,·1
21L=41 b417IL=6I981 51L=41
ADD.PI71
TO
.GA31311;
PUT VALUE IN
LOCAL VALUE
AREA
.,---
1,. 1 2'1,,1
L=4 b4 1 38 l=6~
l
~
~
LCLAVALUE
AREA
~
...
38
(-
\-
)
~
1.5.2
~
EXTENDED DESCRIPTION
Expressions in reverse Polish notation are sent to a routine for evaluation. The expression
elements (operands and operators) are scanned from left to right. Operands are placed in
stack with a length byte on top. Operators are one-byte elements acting on from zero to
three stack elements and give a result element in the stack or an exit from the evaluating
routine.
Actions taken by the evaluating routine when it encounters different operators and operands
is summarized in Appendix D.
In the example in the diagram, the statement being evaluated is
&LA2 SETA &P
+ &GA3
where &LA2 is a local arithmetic variable symbol (the second defined in the macro definition);
&P is a positional parameter (the fifth in the macro definition, with a value of 7); and &GA3
is a global variable symbol (the third declared in the definition). In the reverse Polish record,
"Ia", "pp", etc., stand for flags (see Diagram 1.1.2.1 and Appendix D).
w
~
~
MODULE
ROUTINE
IPKIA
CAEVAL
A88emble
2
OUTPUT
PROCESS
INPUT
1
EDIT FOR ASSEMBL Y
ASSEMBLER AND
MACHINE INSTRUCTIONS
~
SYMBOL TABLE
~
...
--.-, rVi
~
DEFINITIONS
I
LISTING
~ /,/~
~
..,.
2 SYMBOL
cae","
3 RESOLVE SYM::L REFERENCES
OBJECT DECK
~
o
/
~
~
(SYSPCH)
?1
I
V
4 BUILD OBJECT ~ ~
VV
CODE
5
OU"'" """CT
~
~~
\, /
6
~~.
RLD.XREF.
.'AGN/OS.;;...=..T;;...;I..:;C.::;.S---,,(S~Y:...:S::..P.::C::.;(H)
0"
om
XREF.
POST PROCESS
~
/
~
~
-
2
~
,:J
EXTENDED DESCRIPTION
MODULE
At this stage the edited text is free from macro instructions and conditional assembly
statements (that is, it consists only of machine and assembler instructions). The second
main function of the assembler is to translate these statements into object code and to
produce a listing and other related information.
"'"
I-'
1.
Editing of statements is done (see Diagram 2.1).
IPKIC
IPK.jA
2.
Symbol definitions are collected and stored in a symbol table (see Diagram 2.2).
IPKKA
3.
References to symbols are resolved with the help of the symbol table (see Diagram 2.3).
IPKLA
4.
Object code is generated for the different instruction types (see Diagram 2.4 and 2.6).
IPKNA
IPKOA
5.
Object code is put out, together with a listing and the external symbol dictionary
(see Diagrams 2.5 and 2.7).
IPKMA
IPKPA
6.
In the post-process phases, the relocation dicitionary, cross-reference dictionary, and
diagnostic information is put out (see Diagram 2.8).
IPKQA
IPKRA·RC
IPKSA-SB
Edit for Assembler and Machine Instructions
2.1
SOURCE TEXT (WORKFILE 3)
PCSR
~
~
v
---
_...... _,
--
IPKJA
EDITED TEXT
(WORKFILE 2)
PETR
1
2
PRODUCE EDITED TEXT
PROCESS PUNCH AND
REPRO RECORDS
~
...
./I--.
'v-
==>0
LITERAL POOL
(WORKFILE 1)
LITTBL
3
PROCESS LITERALS
(5J~
A
~
of>.
I\J
I--
END
~G
PUNCH AND
REPRO RECORDS (WORKFILE 1)
B
l...f\
"
L-----------
.
p;---::~
\ ;'
.f "
'\
/
IA
"'
\. )
~
~
2.1
~
w
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
1.
Editing consists of checking, converting the record into a suitable format for later processing,
collecting symbols into "symbol buckets" and converting expressions into reverse Polish
notation (see Diagram 2.1.1).
IPKJA
2.
PUNCH and REPRO records found before the first control section are processed and written
on workfile 1. See Diagram 2.5 for later processing.
IPKJA
PUNCHR
REPROEDR
3.
Literals are put into a literal pool and processed when an END or LTORG expression is
encountered (see Diagram 2.1.2).
IPKJA
LITERAL
LTORGR
LlTDRV
LITMN
LlTSRCE
2.1.1
Edit
----
SOURCE TEXT
- --
'i:.
---
OUTPUT
(WORKFILE 3)
EDITED TEXT
....
(SEE APPENDIX H)
v
1 CHECK NAME FIELD AND SYNTAX OF OPERAND
(WORKFILE 2)
(SEE APPENDIX H)
PETR
PETFLDS
PCSR
PSTRINGS
2 COLLECT SYMBOLS IN SYMBOL BUCKETS
3
--
~
~
CONVERT EXPRESSIONS TO REVERSE
POLISH NOTATION
~
'--
- .......-
~
()
~>
f
" -
'"
1
/
/
'\
)
~
~
2.1.1
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
Records which have been partially edited at an earlier stage (see Diagram 1.1.1) are more fully
edited for assembly. The length attribute, ESDID, and location counter fields are created but
not filled until symbol resolution (see Diagram 2.3).
..,.
lJl
1.
The name field and operand syntax are checked.
IPKJA
CHKNAME
2.
All symbols are placed in "symbol buckets" in the edited text. Symbols in expressions are
replaced by flags referring to the buckets; the buckets appear in the same order as the symbols
in the expressions. If the same symbol appears more than once in an expression, there will
be more than one bucket for it (see "Diagnostic Aids" for examples of symbol buckets).
IPKJA
OPERAND
3.
Expressions are converted to reverse Polish notation (see Diagram 2.1.1.1).
IPKJA
POLIFY
2.1.1-.1
.... _.
Convert .Assembly Ezpreasiona to Ravena Polish Notation
y
....
-_ .. _.
_--
.....
...
Ex........
1
-""
SCAN EXPRESSION
v
"
notation
2
PASS OPERANDS DIRECTLY TO
OUTPUT STRING
3 SEND OPERATORS TO STACK;
.....
C!'I
MOVE TO OUTPUT AS
OPERATORS PRIORITY
DICTATES
(j
Ex""""
in
_
_ Polish
/J
~
~
2.1.1.1
EXTENDED DESCRIPTION
1.
Expressions are scanned from left to right.
2.
Operands are assigned identifying flags and are inserted immediately into the output
string (see Appendix G for the flags).
3.
Operators are put in a stack according to their priority. The higher the priority, the
sooner the operator is inserted into the output string. The first operator encountered
is always entered into the stack. For all other operators, the operator's priority is
compared to that of the previous operator entered in the stack. If the priority is lower
than that of the previous entry, the operator is placed in the stack. If the priority is
higher than or equal to that of the previous entry, the previous operator is removed
from the stack and placed in the output string. The operator's priority is then compared
with that of the next operator in the stack, and so on.
There are two exceptions to this processing method:
Left parenthesis: placed in the stack without comparision of priority
Right parenthesis: causes the stack to be emptied until a left parenthesis is found. The
left parenthesis is also removed.
Operator priorities:
2+.I>-...1
~
~..,./'
'\,
3 / *
For examples of expressions in reverse Polish, see "Diagnostic Aids".
MODULE
ROUTINE
IPKJA
POLIFY
2.1.2
Handle Literals
'1,.,,,,-
SOURCE TEXT
(WORKFILE 3)
~
~
"v
-_ ..
... _-LITERAL POOL
1 CHECK THAT LITERAL IS VALID
2
, ,
... ,,'
, , ....
~
_,
(WORKFILE 1)
..
"...
Chain
pseudo-I L I Literal I L IsYmbol
pt.. I F I L I symbol
SEARCH LITERAL POOL FOR EQUALS'
~-""-
3
EDITED TEXT
IF NO DUPLICATE ENTRY,
ASSIGN PSEUDONAME AND
ENTER IN POOL
~
"
00
v
4
(WORKFILE 2)
PETR,
PETFLDS
·
·
·
·
REPLACE LITERAL WITH
PSEUDONAME IN EDITED
TEXT
LTORG
I END OR LTORG I
5
LlTTBL
·
WHEN END OR LTORG ENCOUNTERED,
GENERATE LITERAL RECORD
·
...
...
·
6
·
CREATE DCL RECORD
v
-
.....
-
_/
f~~
""
)
/
)
~
l'-"',
f"'\
1
/
\
2.1.2
EXTENDED DESCRIPTION
MODULE
ROUTINE
A literal pool contains all literals occuring from the start of the first control section or the
previous l TORG. The entries are in chains according to the length required in main storage
when assembled (8,4,2, or 1 bytes). The literals are assigned symbolic names so that they can
be handled as DC instructions: when a l TORG or END statement is encountered, literal DC
instructions are generated for each entry so that the literals can later be handled as regular DC
instructions during symbol resolution.
"'"
~
1.
The literal is checked for validity (using the same routine as for DCs).
IPKJA
OCR
2.
The literal pool (in main storage and on workfile 1) is searched tor equals.
IPKJA
OCR
3.
If not already entered in the literal pool, the literal is assigned a symbolic name* and
entered in its appropriate chain.
IPKJA
LITERAL
4.
The literal is replaced by its symbolic name in the edited text.
IPKJA
L!TMN
5.
When a l TORG or END statement is encountered, the literal pool is read and literals
retrieved from the 8-, 4-, 2-, and 1-byte literal chains; a literal record (in the form of a
compressed source record) is constructed for each and written on workfile 2 for the listing.
IPKJA
LlTSRCE
6.
A DCl instruction is generated for each literal and written on workfile 2.
IPKJA
OCR
F!XUP
DRIVER
* A symbolic name for literals is generated with
• an identification byte (internal code = 1) in the first byte
• five characters copied from the literal definition in bytes 2~6
• Ii sequence number for generated names in bytes 7-8
When a location counter reference is made in a literal, a name is generated for the statement ;f
it has not already got a name field. The name generated is similar to that for literals with
• an identification byte (internal code = 8) in the first byte
• five blank characters
• a sequence number for generated name in byte 7-8
2.2
Collect Symbol Definitions
.. _.
-.
(WORKFILE 2 OR 0*
EDITED TEXT
PETR, PETFLDS
-
~
v
-- .. _.
. .. _---(SYMTABL)
HASH TABLE
IPKKA
1 BUILD SYMBOL TABLE
~
SYMBOL TABLE
(SYMADDR)
I ..
I PHYR
I"
I
XREF RECORDS
(WORKFILE 3)
.
2 CREATECRO~REFERENCE
XREFREC
-v
RECORDS
\J1
,0
ESD TABLE
3
BUILD ESD TABL,E
(WORKFILE 3)
ESDENTRY
"
~
-v
EDITED TEXT (WORKFILE 1 OR 2)*
4
PETR
PETFLOS
'\
,)
PUT OUT EDITED TEXT
AND ERROR RECORDS
fl2££!2!I
........ ~--
--
•
#~-:4.,
.(
\
\.,
J
/
"
~
t)
~
:~
2.2
1.
EXTENDED DESCRIPTION
Symbol definition~ are collected in a symbol table for later use in resolving symbol
references.
MODULE
ROUTINE
IPKKA
Overflow technigue: If the symbol table overflows, the substitution phase (ASSELA) is called
in to process the currently built symbol table segment. The substitution phase will resolve all
references to symbols in the symbol table. When this is done, IPKKA will be called back in
and will start processing the text where it left off when the overflow occurred. It will discard
the old symbol table and start building a new one. This process will continue until the text is
all processed or the symbol table overflows again. If it does, the substitution phase will be
called and that segment processed, and so on.
....VI
2.
Cross-reference records are created for both symbol definitions and references (and
duplicates). These will later be put out by the post-processor ( see Diagram 2.8).
IPKKA
3.
The external symbol dictionary table is built (see Diagram 2.2.2).
IPKKA
4.
The text is edited: expressions in the operands of CNOP, ORG, EQU, and END
statements are evaluated and length and duplication factors calculated for DC, OS,
and DC L instructions.
IPKKA
CROSSREF
2.2.1
INPUT
(WORKFILE 2 OR 1)*
EDITED TEXT
PETR
PETFLDS
~
"
v
Build Symbol Table
OUTPUT
PROCESS
(PSYMTABL)
HASH TABLE
1
PROCESS STATEMENTS ACCORDING
TO TYPE:
/'
/
CNO'
}
MACHINE
INSTRUCTION
"'GN ON
HALFWORD
BOUNDARY
-1
I
I
I
I
~
I
I
DCIO,
LITERAL DC
}
CCW
LTORG
\
~
I
ALIGN ON
DOUBLEWORD
BOUNDARY
PHYR
\
I
I
}
(SYMADDR)
SYMBOL TABLE
I
I
ALIGN ACCORDING
TO TYPE
I
I
f
Hash
ptr.
~
Flags Length ESDID Value Length Symbol
attr.
I
I
CNO'
ORG
V1
N
}
EQU
I
EVALUATE
EXPRESSION
I
DCIDS
I
LITERAL DC
I
I
OC~
LITERAL DC }
CCW
MACHINE
INSTRUCTION
COMPUTE LENGTH
CNOP
2
3
r;~
I
I
I
I
I
LOCATION COUNTER
r-
I
I
ENTER SYMBOL VALUE IN .SYMBOL TABLE
UPDATE LOCATION COUNTER
(LOCCNTR)
- - -'
( All three in main storage. )
I
2.2.1
MODULE
EXTENDED DESCRIPTION
Symbol definitions are collected in the symbol table. In order to define a symbol, the
corresponding value of the location counter must be computed. This value, in turn, depends
on the lengths of the instructions and their alignment in main storage when assembled.
1.
~f
~
~
IPKKA
Instructions are processed according to type. They are aligned, expressions are
evaluated, and their lengths computed. The routine names for the instructions given
below are shown in the column to the right:
MACHINOP
EaUR
CNOPR
ORGPROC
OCR
OCR
OCR
CCWR
LTORGR
ENDR
Machine instructions
EaU
CNOP
ORG
DC
DS
DCL
CCW
LTORG
END
2.
Symbols are entered in the symbol table, together with their values, length attributes,
and ESDID.
IPKKA
3.
The location counter is updated for those instructions requiring it.
IPKKA
U1
W
ROUTINE
2.2.2
Build External Symbol Dictionary Table
INPUT
PROCESS
OUTPUT
EDITED
TEXT (WORKFILE 2)
ESD TABLE
(WORKFILE 3) ESDENTRY
i
i
CSECT
DSECT
PETR
PETFLDS
1
COM
CLOSE ENTRY FOR
PREVIOUS CONTROL
START
SECTION
.
~
A
Curro
B
Type
....
SEARCH ESD TABLE FOR NAME- -
CURRENT LOCATION
COUNTER
(LOCCNTR)
I
3a FOUND: UPDATE LOCATION
Type
ESDID
COUNTER FROM ESD
CSECTI
"'"
D
HIGH LOCATION
COUNTER (LOCCNTHt)
3b NOT FOUND: SET LOCATION
COUNTER TO ZERO (N)C.::V
CSECTI
c
EXTRN
WXTRN
V-CON
p.,"'.
~
Type
..,,-
ENTRY
4
MAKE NEW ENTRY IN ESD
Symbol
Curro
loc.
ctr_
High
Ioc.
ctr.
Symbol
High
loc.
ctr.
Symbol
Gf
TABLE (RENEWED
VI
High
loc.
ctr.
0fJ
,/
i
Ioc_
ctr.
,/
,/
2
ESDID
ESDID
0
-~
TABLE~
,.t-
,.,
~
2.2.2
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
The external symbol dictionary table saves external symbols which will later be printed out
in the ESD output; the table is also a control for CSECTs.
1.
A CSECT, DSECT, COM, or START instruction means the beginning of a control section.
The previous control section's entry in the ESD table is closed by retrieving the current and
high location counter values from COMMON and inserting them in the entry. (The "current"
location counter value is simply the value of the location counter; the "high" location
counter value is the highest value that occurred during processing of the control section -- this
value may later have been lowered by an ORG statement.) The high value is used to compute
the size of the control section.
IPKKA
CSECTR
DSECTR
COMR
STARTR
The entry for the last control section will be updated when the END statement is read. If
there are literals after the END statement, the first control section will be updated after them.
2.
The label associated with the CSECT, DSECT, COM, or START instruction is looked for in
the ESD table.
3 a. If found, the symbol has been entered before, and the CSECT is a resumed CSECT. The
current location counter value is retrieved from the entry (ESDLCTR) and inserted in the
current location counter value (LOCCNTR).
lJ1
lJ1
IPKKA
IPKKA
3 b. If .!lQ! found, the location counter is set to zero (or to the address specified in the START
operand) to begin a new control section.
4.
An ENTRY, EXTRN, WXTRN, or V-type address constant causes an entry to be made in
the ESD table. The current location counter value is the same as the high location counter
value -- both are the actual value of the location counter. The current location counter
value for ENTRY is the value at which the symbol is defined, not the value for the ENTRY
statement itself.
IPKKA
PEEX
2.3
Resolve Symbol References
.. ,.. -.
*
EDITED TEXT (WORKFILE' OR 2)
PETR, PETFLDS
~.
"
-----
..-..
HASH TABLE
.
v
...
IPKLA
1
READ EDITED TEXT
2 REPLACE ALL SYMBOL REFERENCES
WITH SYMBOL TABLE VALUES
(PSYMTABL)
3a
I
SYMBOL TABLE OVERFLOW
XREF RECORDS (wORKFILE 3)
.
MAKE XREF E:TRI~S
"
3b NO SYMBOL TABLE OVERFLOW
U1
0'\
SYMBOL TABLE (SYMADDR)
\
-_ .. _-
_--
PHYR
2.2
XREFREC
IPKKA
EVALUATE EXPRESSIONS
.-4
IF MACHINE INSTRUCTIONS,
ADDRESS CONSTANTS, USING,
DROP, OR CCW, GO TO
2.4
(WORKFILE , OR 2)*
EDITED TEXT
IPKNA
5
~
)
.WRITE EDITED TEXT
.r?J
* Depending on number of symbol·table overflows
()
,
,
\
..
PETR,PETFLOS
"
\
.
/
\
)
......
~
~
2.3
EXTENDED DESCRIPTION
1.
Edited text containing unresolved symbol references is read from workfile 1 (or from
workfile 2, depending on symbol table overflow).
2.
Symbol references are resolved by hashing the symbol and finding its value in the
symbol table.
!
MODULE
ROUTINE
IPKLA
3 a. If there has been symbol table overflow
ESD entries are made from those symbol references which are resolved before they are
read by IPKKA.
IPKKA
CROSSREF
IPKKA
EVALUATE
3 b. If there has been no symbol table overflow or if this is the last time IPKLA has been called
Expressions involving symbols can now be evaluated (expressions involving CNOP, ORG,
END, and EQU, in addition to duplication and length modifiers in DC and OS instructions,
have already been evaluated (see Diagram 2.2.1)).
VI
--.J
4.
If the instruction is a machine instruction, address constant, USING, DROP, or CCW,
IPKNA is called.
5.
Otherwise the edited text is written on workfile 1 or 2.
'!j
2.4
Build Object Code 1
OUTPUT
PROCESS
INPUT
IPKNA
(WORKFILE 1 OR 2)*
DETERMINE RECORD TYPE. PROCESS ACCORDINGL Y:
EDITED RECORDS
~
---
PETR,
PETFLDS
PDCEDIT
/
(NUSTAB)
/
/
/
I~'"
...
U1
())
-"
-
/
USING, DROP
~
IPKNB,IPKNA
r::;;,
., '" '"
- ---
-II
"'-/ ] ]
....
/
/
/ / ,.
USING TABLE
~
MACHINE INSTRUCTIONS
,
EDITED TEXT (WORKFILE 2 OR tJ
.,
ADDRESSCONSTANTSANDCCW
I
V
· '.
RLDTABLE
.. r
\.
I
I
(WORKFILE 3)
)1'--_ _ _ _ _--'
RLDENTRY
* D....nding on overflow
IPKLA
2.3
(~'
/~\
!
/
\
j
l-·~
'"
j
~,
~
2.4
~
'.
EXTENDED DESCRIPTION
MODULE
ROUTINE
IPKNA
NMACHOP
IPKNA
NUSING
NDROP
IPKNA
IPKNB
NSADDR
Input: edited records from IPKLA
Output: object code and edited records on workfile 2 (or 1, depending on symbol table overflow).
Processing proceeds according to record type. The following records are processed:
Machine Instructions (Diagram 2.4.1)
Each instruction is processed according to its length and type code (included in the pseudoopcode). Implicit addresses are resolved by means of the using table.
USING, DROP (Diagram 2.4.2)
These instructions, which influence the using table, are processed.
Address Constants and CCW (Diagram 2.4.3)
Address constants and CCW instructions are processed at this stage. Implicit addresses are
resolved by means of the using table.
111
\0
2.4.1
cz
INPUT
EDITED RECORDS FROM
I
Process Machine Instructions
IPKLA
I
PETR, PETFLDS
PROCESS
OUTPUT
1 GET RECORD AND ENTRY TO OPERAND
--v
RESTRICTION TABLE
ERROR
TABLE (NERRSTCK)
2 CHECK VALUE OF
i
i
OPERANDS; IF ERROR
"
/'
OPERAND RESTRICTION
TABLE
(NPARTAB)
,/
I
==>
I
NTABFMT
,/
/'
•
./
',I
3 CHANGE IMPLICIT ADDRESSES TO
/~
BASE-DISPLACEMENT FORM
/
/
/
0'1
o
/
USING TABLE
I
4 BUILD EDITED TEXT OUTPUT RECORD
(NUS TA B) /
I
(WORKFILE 2 OR 1)
EDITED TEXT
/
~
5
PETR, PETFLDS
WRITE OUTPUT TEXT AND ERROR
RECORDS
~
~
~
.
2.4.1
m
I-'
-~,r
;'}
EXTENDED DESCRIPTION
MODULE
ROUTINE
1.
The length of the instructions and the type code are used to determine which routine
will handle the instruction and also to find an entry in the operand restriction table.
The table contains information about the type of operand, allowed values, and where
the value should be stored.
IPKNA
NMACHOP
2.
The values of the operands are checked; if an error is detected, the error number
and operand number are stored in an error table.
IPKNA
NTESTST1
NTESTST2
3.
Implicit addresses are decomposed to base-displacement form by means of the using
table. The table is searched for the register giving the smallest displacement among
those available. If two registers give the same displacement, the higher-numbered
register is used.
IPKNA
NADDRSPL
4.
Object code for the instruction is built together with listing information and inserted
in the edited text.
IPKNA
NIVIACHEND
5.
The edited text record is written onto workfile 2, followed by error records, if any.
IPKNA
NMACHEND
2.4.2
Pr,
.... _.
EDITED RECORDS FROM IPKLA
··
··
·
"-
USING
DROP
"L.
u..
d Oro·
__ 0._-
... _--
(NUSTAB)
USING TABLE
1 UPDATE THE USING TABLE
"-
ESDID
Base add....
Switch
~
PETR
PETFLDS
··
2 BUILD EDITED TEXT OUTPUT
RECORD
EDITED TEXT
(WORKFILE 2 OR 1)
··
··
··
·
~-USING
"-
3 WRITE OUTPUT TEXT
)
~
0'\
PETR
PETFi.DS
DROP
tv
-
~)
,
r~'
I
~
/
~-~
,
~
j
,.,.,
~1
~.
MODULE
ROUTINE
USING. The operands are checked and the ESDID and the base address stored in the table.
IPKNA
NUSING
DROP. The operands are checked and the corresponding switches in the table are set to
indicate that the registers are no longer used as base registers. If there are no operands, all
entries are indicated to be free.
IPKNA
NDROP
2.4.2
EXTENDED DESCRIPTION
The using table has 17 entries. There is one entry each for registers '·15 and two for
register 0 (this is necessary because the absolute and relocatable case can occur simultaneously
for register 0). Each entry consists of the ESDID, base address, and a switch indicating if
the entry is used or not.
0"\
W
2.4.3
Process Address Constants and CCWs
~
INPUT
EDITED RECORDS FROM IPKLA
PETR, PETFLDS
v
,,
"
USING TABLE
'"
/
(NUSTAB)
,,
,
,
,
,
PROCESS
,
OUTPUT
1 CHECK OPERAND
2 IF DC OR CCW, GENERATE CODE
RLDTABLE
(WORKFILE 3)
"
3 MAKE RLD ENTRY (ALL EXCEPT 8-TYPE)
ill"
RLOENTRY
~
"
4 LOG ERRORS
~
*
EDITED TEXT FILE (WORKFILE 1 OR 2)
PETR
PETFLOS
~
5 WRITE OUTPUT TEXT AND ERROR
.~
"
RECORDS
--- --- --------
()
.
\
';:-'"
.~
./
~:"
,
\
)
\
,.,
0'1
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
IPKNA
IPKNB
NSADDR
DCPROC
CCW
S-type address constant.
Other address constant.
IPKNB
IPKNA
IPKNB
CCWPROC
3.
An RLD entry is made for all instructions except S-type address constants.
IPKNB
WRITERLD
4.
Errors are logged.
IPKOA
ERRLOG
5.
Output records and error records are written.
IPKOA
IPKNA
ERRPUT
2.4.3
lJ1
..--..,
1.
In the case of an implicit address, the using table is used to split the address into basedisplacement form; otherwise, the validity of the register and displacement are checked.
2.
If the record is a DC or CCW, object code for the output edited record is generated.
DCPROC
2.5
...-
Print/Punch the External Symbol Dictionary
. .. _--
_.
PUNCH AND
REPRO RECORDS
rWORKFILE 1J
v~
.....
v
,...---1\
IV'
ESD TABLE
-_ .. _.
IPKMA
.
..
1 PUNCH PRE-OBJECT PUNCH AND
REPRO CARDS
rSYSPcff)
PUNCH, REPRO, AND ESD CARDS
.
..
2 PUNCH ESD OBJECT CARDS
rWORKFILE 3J
ESOENTRY
3 PRINTESD
II
0\
0\
4 PRINT DSECT DICTIONARY
l
•
(:~,
/
'\
/'
ESD AND DSECT
DICTIONARY
..
v
rSYSLSTJ
~
~-.-
)
2.5
1.
0'1
...,J
~
"
.
EXTENDED DESCRIPTION
PUNCH and REPRO records previously written on workfile 1 (see Diagram 2.1)
are punched.
~
MODULE
ROUTINE
IPKMA
2, 3. The ESD table is translated, punched, and printed.
IPKMA
ESDROUT
4.
IPKMA
DSROUT
The DSECT dictionary is printed after the external symbol dictionary.
2.6
Build Object Code 2
C2]
PKMA
INPUT
OUTPUT
PROCESS
2.5
IPKOA
EDITED TEXT
(WORKFILE 2)
i
i
!!E.I!!....
PETFLDS
...
v
1 PROCESS ACCORDING TO TYPE:
- ----
DC. LITERAL DC
L----
G'.,,"m OB.OECT 00.'
CDS
CHECK OPERAND
ex>
3 PASS ON OTHER*STATEMENTS
l,
;
(Passed to IPKPAI
~
~
,
v
r
0"1
(~
,~~~ ,
i
rl
2 DETECT AND LOG ERRORS
*Those processed in
Ii
OBJECT CODE. ERROR RECORDS
.<
~~~
k
~
'
"KPA
",,
Ir~
./
\,~
i
",
'\
~
n
2.6
1.
I~
,
~
1
"
EXTENDED DESCRIPTION
MODULE
ROUTINE
IPKOA
DCPROC
IPKOA
DCPROC
IPKOA
ERRLOG
ERRPUT
Object code is built for DC and OS instructions
I DC, LITERAL DC I
Object code is generated.
IDSI
Operands are checked.
2.
0'1
~
Errors are logged and put out after the statement in error.
2.7
Output
.......
-.
~-- ---- ~PKPA
COMPRESSED SOURCE AND
(WORK FILE 3J
ERROR RECORDS
.
.
1
. ..
_-
-_ .. -.
~D~J
READ COMPRESSED SOURCE
f£E!..
.....
~
--
2
3
EDITED TEXT AND
ERROR RECORDS (FROM IPKOA)
PROCESS CORRESPONDING
EDITED TEXT
PUNCH AND PRINT
OBJECT CODE
~
~
LISTING
a~
-
PETR
PETFLDS
......
o
4 PROCESS
LISTING
CONTROL RECORDS
5
===:>CV
>0
PROCESS MNOTE
PUNCH AND REPRO
(SYSLSTJ
ERROR
RECORDS
~
(WORKFILE 1J
.!fl!!!..
6
PROCESS ERROR RECORDS
==>..
,i.'
~
2.7
1"1,.,
~
EXTENDED DESCRIPTION
MODULE
ROUTINE
GETSRC
1.
Compressed source records are read from workfile 3.
IPKPA
2.
The compressed source records are checked against the last edited text record read and passed from
IPKOA. If there is no corresponding edited text record (for example, if the compressed source record
is for an erroneous machine instruction), the record is printed and the next one read.
IPKPA
When there is edited text for the record, it is processed as shown on Diagram 2.7.1.
3.
The code developed in the previous step (Diagram 2.7.1) is printed for the listing and punched
for the object deck.
4.
listing control statements are processed according to type:
TITLE. The heading is replaced and the page eject control character is set.*
inserted if it appears on the first title statement.
EJECT. The page eject control character is set.*
'-.I
I--'
The symbol name is
EDTEXT
IPKPA
PUNCHOUT
DUMP
PRINTER
IPKPA
TITLEOP
EJECTOP
SPACE. The control character for spacing** is set according to the number of lines indicated by
the operand. When the space operand exceeds two, blank lines are printed until fewer than three
spaces remain before the next print line.
PRINT: The print switches that control the printing of all statements, generated statements; and
object code, are updated when a PRINT statement is enr.ountered. The PRINT statement itself is always
printed regardless of the status of the print switches.
SPACEOP
Errors in list Control Statements. An error record is built and written on workfile 1. The statement in
error is printed. The requested"operation is performed if the error is a minor one.
WRTERROR
PRINTOP
5.
MNOTE. The message is printed on SYSLST and an error message written on workfile 1.
PUNCH, REPRO. The statement(s) is printed on SYSLST and the card(s) punched on SYSPCH. These
cards are intermixed with object deck cards.
IPKPA
MNOTEOP
PUNCHOP
REPROOP
6.
The text ***ERROR*** is printed on a separate line after each statement that contains one or more
errors. An error record containing the statement number is built for the diagnostic phase and written on
workfile 1.
IPKPA
COPERROR
* When the page eject control character is set, a page eject will first be performed before the next line is
printed .
.**The next printed line will be preceeded by one or two extra blank lines.
2.7.1
....
_.
~
EDITED RECORDS
~
D~m
.
PETFLOS
-'"
.,
Process Edited Tezt
..OCE
_-~
PROCESS BY TYPE:
I MACHINE INSTRUCTIONS
I
-
INSERT LOCATION COUNTER, OBJECT CODE,
ADDRESS FIELDS IN PRINT LINE.
_eM_CTCOD'
~
. ]
I DC,CCW I
INSERT LOCATION COUNTER AND OBJECT CODE
FIELDS. APPLY DUPLICATION FACTOR IF
-
PRESENT. (LITERALS PROCESSED SIMILARLY,
I CSECT, DSECT. START, COM, LTORGJi=DS
)0
LOCATION FIELD ONLY
-..,J
'"
IORG
I
LOCATION AND ADDR2 FIELDS
I EQU, USING
~
I
ADDR2 FIELD ONLY
lCNOP
I
~
I
LOCATION AND OBJECT CODE FIELDS
~
I END 1*
ADDR2 FIELD,IF PRESENT
~
* PROCESS LITERALS IF PRESENT ~
•
/.,~
,,r
,;.;.~
\ )
/
~
~
\
)
'
~
2.7.1
~
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
The location counter value, object code, and address fields are inserted in the print line.
IPKOA
MACHOPS
Object code is punched.
IPKPA
DUMP
All other instructions are handled by type according to a branching table. Literals are
formatted for the listing.
IPKOA
IPKOA
PSEUTBL
LlTCOPE
Object code is punched for some instructions.
IPKPA
DUMP
MACHINE INSTRUCTIONS
ALL OTHER INSTRUCTION TYPES
-.....J
W
2.8
RLD TABLE
,
Post Process
INPUT
(WORKFILE 3)
'RLDENTRY
1 PUT OUT RELOCATION DICTIONARY
XREF RECORDS (WORKFILE 3)
,
'XREFREC
2 SORT AND PRINT CROSS-REFERENCE
DICTIONARY
~
I
LITERAL POOL (WORKFILE 1)
i LiTTBL
,
ERROR RECORDS (WORKFILE 1)
,
i
3 PROCESS ERROR MESSAGES
PETR
PETFLDS
(
.
"
.. ~
;'
OUTPUT
PROCESS
IPKOA
IPKRA
IPKSA
~
~
~mSTJ
0=iWEcr D'CK~
(SYSPCH)
n
~,
:
2.8
-..J
U'1
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
RLDROUT
1.
The relocation dictionary is printed and punched (see Diagram 2.8.1).
IPKOA
2.
The literal pool and cross reference records are merged; they are then sorted and printed
on SYSLST (see Diagram 2.8.2).
IPKRA
3.
Error messages are processed and printed (see Diagram 2.8.3).
IPKSA
DECODE
PRINTER
2.8.1
R/PunCh the Relocation Dictionary
PROCESS
INPUT
OUTPUT
'(,..I/PKQA
~LD ~ABL~
RELOCATION DICTIONARY (SYSLSTI
(W?RKFILE 3)
I
Add •.1 Het.
con.
10
Isym·1
Flag
Add •.
RLDENTRY
10
"
1
~
2
r---+--r----i~---il ~ r-v'
'----v'
PRINT RELOCATION DICTIONARY
PUNCH RELOCATION
DICTIONARY
(PENDID)
I'D 'N'o'MAnoN
(P'NDAD)
I
I
--.]
->0
3
PUNCH END CARD
~
0'\
~
.~
:
----
)~
END CARD
~"oCAno~
ICTIONARY
(SYSPCH)
/
,
0/
:
,.--
~I
(SYSPCH)
i
/
V
I
~,
~
2.8.1
-..J
-..J
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
1.
The RLD information is translated to output format and printed two columns per page.
IPKOA
RLDROUT
2.
The RLD object cards are punched.
IPKOA
RLDPCH
3.
An END card is punched. If there was a name in the operand field of the END statement,
its I D and address is punched.
IPKOA
2.8.2
Sort and Print the Cross-Reference Dictionary
v....
.... --
LITERAL
POOL
(WORKFILE
1
11
...
r-v
~
XREF'
RECORDS (WORKFILE 3J
...
-
..
IPKRA·RC
2 .............
INTO STORAGE AREA
3
XREF
SUBSTRINGS
OPTIMIZE PARAMETERS
SORT RECORDS -
!Q.
MORE
MORE
RECORDS
RECORDS
,
4
-..J
00
-
1
IIIIII
V
I
~
...
--
L
I I
WRITE SUBSTRING(SI
AND DIRECTORY(SI
I F NECESSARY
INOE~Y
(OlRENOJ
INDEX TABLE
~ I~
/
1J
---- J~lJ)lJ"
...
...
'1./ / I I I
I
I
/ / / /
, 1 /
I
XRFENTRY
•
5
(WORKFILE 2J
RECORD STORAGE
(SRTINIT. RSAJ
AREA
DIRECTORY
Addrea 0ffIat
OlRENTRY
IOlRAOORJ
NIP
/
7
Key
MERGE SUBSTRINGS
BY GETTING WINNERS
VIA DIRECTORY
PRINTED
RECORDS
6
(SYSLSTJ
(PRNTLINEJ
..
PRINT RECORDS
v
rR
~~
\
)
l
\
"
~-'~\
r
'\ )
'
,~
1
M
2.8.2
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
IPKRA
SRTlNIT
The cross-reference sort is done in two phases. In the first phase, one or more sorted substrings are
built. If there is more than one string, they are written on workfile 2. A directory entry is created
for each substring, containing the physical disk address and the lowest key number in the string. If
the directory overflows, an entry is made in the index table, consisting of the lowest key in the
directory and the physical disk address for the directory.
In the second phase, "M" blocks are read and the records retrieved in ascending order using the
directory, which is then updated according to ascending keys. When necessary, the next directory
is read into main storage and merged with the first one. If there is only one string, the print module
is fetched and the records passed to the print buffer one by one.
1.
The total number of bytes to be sorted is checked against available storage to determine if an
"in·storage" sort is possible. If it is not, the internal sort block size "B" and merge order "M"
are calculated with the respect to the number of strings to be sorted. Finally, all addresses to
the I/O buffers, directories, index table, and record storage are initialized.
2.
Since the literal cross-reference records are generated with a pseudoname instead of a symbol name,
the literal pool is read and the corresponding pseudo name is built and concatenated with each actual
literal.
IPKRA
SRTLIT
3.
The internal sort technique used is Shell's sort.
IPKRA
SRTRSA
4.
If the sort is not an "in·storage" sort, the Conner merge technique is used. Each sorted substring is
written and a directory entry containing the lowest key of the substring and its physical address on
disk is created. If the directory overflows, it is written on workfile 1 and a new directory built. Each
time the directory overflows, an entry is made in the index table. The entries in the directory are in
ascending order according to key number.
IPKRA
SRTOUT
SRTDIR
5.
Phase 2 is now loaded and "M" blocks read into storage together with the first (or only) directory
block. The winner pointed to by the first directory entry is passed to the print routine and the
directory is updated according to the next key. If the new winner is not in storage, the
corresponding block will be read and the winner put out. If a winner record is not pointed to by
a directory entry in main storage, the next directory block will be read by using the index table
and the two directories merged.
The records are put out.
IPKRB
MRGMAIN
-.J
1.0
6.
MRGDIR
IPKRA, RB
or RC
MRGPRT
2.8.3
....
Diagnostics and Statistics
_.
ERROR RECORDS (WORKFILE
No.
6
String
length
-
'--[......-r--
String
~
--
_---
V_''--VI
1 READ ERROR RECORDS
2 MESSAGES
BUILD
(ERR TAB}
OFFSET TABLE
- - - - - - - - . 06
--
0010
I)
"---
Macro name.
00
tJ
PETR
PETFLDS
I-
EDECK info.
o
...
~ ... -IPKSA-SB
ENCODED MESSAGES
~
10 0052
---(
~
7
I 0073 I 0025
J
I
~
.-"
GLOSSARY
0025
~0052
(MSGLIB}
/
(GLOSSARY}
OPERANDS
TOO
LISTING
0073
COMMON
~
Options size
(j
~
3 PRINT MESSAGE
PCOMMON
...
-----..
4
(SYSLST}
MANY
-V
ro
PRINTSTATISTICS
/
..
5 IPK006 TOO MANY
OPERANDS
EDECK names, no.
Macro names
Options
-
Size
.......
/
~
~
\ ~.l
2.8.3
00
.....
EXTENDED DESCRIPTION
~
MODULE
ROUTINE
1.
Error records are read from workfile 1.
IPKSA
2.
The message is built up in the following way: the error record contains a number which corresponds
to an entry in the offset table. This entry points to a corresponding "encoded message". The messages
are coded so that each word in the message is represented by a two-byte code; this code is the offset
of the actual English word in a "glossary", where all the different words are kept in EBCDIC code,
each word preceded by one byte that contains its length in bytes.
Error records that cotltain strings are handled by inserting the string into a special area in the glossary.
It (the string) is then handled like an ordinary glossary entry.
IPKSA
IPKSB
DECODE
3.
The messages are printed on SYSLST immediately after the statement in error.
IPKSA
PRINTER
4.
Statistics are printed. A summary of errors found in the assembly is printed from workfilli1; the macro
name and number of cards punched for the EDECK option are printed from workfile 1. The names of
macros called is printed from workfile 1. Assembler options in effect and the partition size are printed
from COMMON.
IPKSB
3
Initialize
..... _.
... _--
_ --
OUTPUT
..
fPOECK}
IPKBA
OPTION SWITCHES*
DOS SUPERVISOR
COMREG
I
I; "', ...
--
1---
.
1 SET OPTION SWITCHES
(PLINK)
(PALlGN)
--v
(PEDECK)
(PDF)
...
LlBs
I
PUBs
I
r-~
I
r,.,-
\
,-,- - -...
I- - ,
DTFSD*
(PRLD)
(PSYSPARM)
(/JSYSOtJ
2 CHECK FILE ASSIGNMENTS
{/JSYS02}
v
AND PARTITION SIZE
(lJSYS03)
\
in IPKAA
\
3 OPEN SYSO01,-2,-3, SYSIPT
\
BUFFER SIZES*
\
\
(»
(PLlST)
(PXREF)
,
N
.
4 COMPUTE BUFFER SIZES
(PBUFFLENt)
(PBUFFLEN2)
(PBUFFLEN3)
...
(PMNABSIZ)
(PVSDSIZE)
(SMTSIZE)
(PB 1FISIZ}
SYSIPT
..
v
(PB12SIZ)
5 READ A RECORD
FILE CONTROL BLOCKS*
(PBFILE)
(PBFILEt)
6 INITIALIZE BUFFER AND WORK AREA
(PBFILE2)
v
(PBFILE3)
PFCB
*lnCOMMON
fiR>~
\,
~)
/
n
3
co
IN
,"*'t
EXTENDED DESCRIPTION
~t
.
MODULE
ROUTINE
IPKBA
INOPT
1.
The assembler options, which have been passed to the communications region of the DOS supervisor
from ASSGN cards and from the options chosen at system generation, are used to set option
switches in COMMON.
2.
File assignments and partition size are checked and used to set values in the DTFSD. Errors cause
an ABEND.
INFILE
INPARSIZ
3.
The workfiles and the input files are opened.
INOPEN
4.
Buffer sizes are computed from information in the DOS supervisor communication region, the
DTFSD, and from the overlay switches.
INBUFSZ
5.
The first record is read from SYSIPT.
INREC
6.
The buffer and work area addresses are initialized for the first three phases.
INITCDE
fj f~ ~D
I-
...::l
I-
::l
0
()
I";.
I";.
U1
2.
Further input is flushed.
3.
All workfiles are closed.
4.
An end-of-job command is issued.
IPKTA
BADASGN
IPKTA
MESSROUT
\"',..----
ProgramOrg anization
roo
PurpoH of the Section
The purpose of this section is to describe the
structure of the assembler: how it is divided
into phases, the order in which these phases are
loaded into main storage and given control, and
how control and data are passed from one phase
to another.
This section contains:
• Phase/control section/object module directory
• Summary of the functions of each phase
• Control and data flow between phases
• Allocation of main storage for the phases
• Main storage layouts
• Common data area for the assembler
(
Program Organization
87
Phase/Control Section/Object Module Directory
Phase
Control
se'ction
Object
module
Description of the object module
ASSEMBLY
IPKAOOOO
IPKAJOOO
IPKBAOOO
IPKABOOO
IPKAGOOO
IPKAAOOO
IPKAO
IPKAJ
IPKBA
IPKAB
IPKAG
IPKAA
IPKAAOO2
IPKAA
SYSSLB logic module (PTFSL)
Assembler identifier
Initializer
SYSIPT and SYSSLB input
SYSIPT logic module (CPMOO)
Basic interface routines and common
data area
WOrkfile logic module
IPKCAOO1
IPKCBOOO
IPKCCOOO
IPKCA
IPKCB
IPKCC
IPKCOOO1
IPKCO
ASSEDA
IPKDAOOO
IPKDBOOO
IPKDA
IPKDB
Conditional assembly,editor
Variable symbol declaration processor
ASSEEA
IPKEAOOO
IPKEA
Sequence symbol resolution
ASSEGA
IPKGAOOO
IPKACOOO
IPKAHOOO
IPKGA
IPKAC
IPKAH
EDECK output
Punch routine
SYSPCH logic module (CPMOD)
ASSEFA
IPKFAOOO
IPKAEOOO
IPKADOOO
IPKFA
IPKAE
IPKAD
Global edit
SYSSLB input routines
SYSSLB logic module (DTFSL)
ASSECA
Figure 1.
Input for assembler
Op-code table and op-code look-up
Macro instruction and macro
prototype editor
OVerlay for TITLE, ISEQ, COPY, BKEND,
and EOF on SYSSLB '
Phase/Control Section/Object Module Directory. This figure
shows how the phases are divided into control sections and
object modules.
(part 1 of 2)
(1' -"
~j
88
(
Phase
Control
section
Object
module
Description of the object module
ASSEHA
IPKHAOOO
IPKHA
Attribute collection
ASSEIA
IPKIAOOO
IPKAAOO1
IPKAAOO3
IPKCBOOO
IPKICOOO
IPKIA
IPKAA
IPKAA
IPKCB
IPKIC
Generate
POINT with byte offset routine
POINT with byte offset routine for FBA
Op-code table and op-code look-up
Op-code substitution
ASSEJA
IPKJAOOO
IPKJA
Assembler pre-processor and literal
processor
ASSEKA
IPKKAOO1
IPKKAOOO
IPKKA
IPKKA
Assignment initializer
Assignment
ASSELA
IPKLAOOO
IPKNAOOO
IPKLA
IPKNA
IPKNBOOO
IPKNA
Substitution
Build code 1 for machine instructions
and S-type constants
Build code 1 for address constants (A,V,
and Y) and CCWs
ASSEMA
IPKMAOOO
IPKAFOOO
IPKAIOOO
IPKAHOOO
IPKMA
IPKAF
IPKAI
IPKAH
External symbol dictionary output (ESD)
Punch routine
Print routine
SYSPCH/SYSLST/SYSLNK logic module (CPMOD)
ASSEOA
IPKOAOOO
IPKOA
IPKPAOOO
IPKPA
Build code 2 for constants
(except A, V, Y, and S-type)
Text output
ASSEQA
IPKQAOOO
IPKQA
Relocation dictionary output (RLD)
ASSERA
IPKRAOOO
IPKRA
Cross-reference sort and print (XREF)
AS SERB
IPKRBOOO
IPKRB
Cross-reference merge and print (XREF)
ASSERC
IPKRCOOO
IPKRC
Cross-reference print (XREF)
ASSESA
IPKSAOOO
IPKSBOOO
IPKSA
IPKSB
Diagnostics output
Diagnostics and statistics output
ASSETA
IPKTAOOO
IPKTA
ABEND routine
Figure 1.
Phase/Control Section/Object Module Directory.
(Part 2 of 2)
Program Organization
89
Summary of the Functions of Each Phase
The following figure lists the functions accomplished in each phase of
the assembler. Some of these functions are broken down into
subfunctions. For a description of how the phases work see -Method of
Operation-.
Phase
Function
Diagram
ASSEMBLY
none
•
•
•
•
Check file assignments
Open workfiles and SYSIPT
Compute buffer sizes
Perform I/O
ASSECA
1.1
•
•
•
•
Read all source and compress text
Look up operation codes
Build macro name array (MNA)
Edit macro instructions and prototypes
ASSEDA
1.1.2
•
•
•
•
Process variable symbol dec.larations
Edit conditional assembly statements
Collect sequence symbol declarations
Complete macro instruction editing
ASSEEA
1.1.3
• Resolve all sequence symbol references
• Set up source macro header and tables
• Separate compressed source records (CSR)
and edit text for source macros
• Build source macro table (SMT)
ASSEGA
1.2
• Punch source macros in edited format
ASSEFA
1.3
• Build a global vector (GV)
• Build the macro address vector
(MAV)
ASSEHA
1. "
• Look up attributes for all parameters
and all symbols with attribute references
in open code
ASSEIA
1.5
•
•
•
•
Expand macro instructions
Evaluate conditional assembly expressions
Perform conditional assembly
Perform substitution
ASSEJA
2.1
•
•
•
•
Edit all machine and assembler instructions
Build literal pools after each LTORG and END
Output cross-reference records for all literals
Write on workfile 1 any PUNCH and REPRO records
found before first control section
ASSEKA
2.2
•
Figure 2.
90
Assign values to all symbols
• Build symbol table
• Build external symbol dictionary (ESD) table
• Evaluate length of EQU,CNOP,ORG, and END
expressions
• Output cross-reference records for all symbol
definitions, references, and duplicates
Summary of the Functions of Each Phase.
(part 1 of 2)
Phase
Diagram
ASSELA
2.3
Substitute values for each symbol
Evaluate all expressions
Handle USING and DROP statements
Convert implicit addresses into base-displacement
form
• Build all object output for machine instructions
and S-type constants
• Collect relocation dictionary (RLD)
information for RLD output
• Build all object output for address constants
(A, V, and Y) and CCWs
ASSEMA
2.5
• Output cards for PUNCH and REPRO records found
before first control section
• Output ESD cards, ESD, and DSECT listing
ASSEOA
2.4
• Build object output for all constants (except
A, V, Y and S-type)
• Merge source and edited text
• Output text listing
• Output text cards
ASSEQA
2.8.1
• Output RLD cards and listing
• Output END card
ASSERA-RC
2.8.2
• Sort cross-reference (XREF) records and print
XREF listing
ASSESA
2.8.3
• Output error messages and statistics
Figure 2.
Function
•
•
•
•
Summary of the Functions of Each Phase.
(Part 2 of 2)
Program Organization
91
c
d Data Fl,
.bol
Betw,
Ph
r
......
INITIALIZE
~
\...
1I",r-VJ
•
SYSIPT
~(~)
I
If no macros or conditionalassembly in open code
Source Macro
......
KT, GAR,
source and
edited records
WF1
\.0
N
-.
•
I
.....
,
---------........
-
Macro address
vector
...--
iF\
~
/
/
~
EDECK
I
..
ASSEFA
ii...
Global edit
~
..-
OC header, GAR,
source and
edited records
14-
Collect
attributes
WF3-
,-------I
EDECK
diagnostics
I
1GB
WF3
Global edit
errors
+0
WF3
ASSEIA
r C-;
Generate
~
L
I
•I
I
---.---
-..
I
ASSEHA
OC Global Vector ~
Open code
attribute table
I
Source Macro
Macro header
KT, GAR,
edited records
Open Code
Source & Lib. Mac
...
Source and
error records
-"i-r---
-----------.
Keyword table
global vector
edited text
variable sym. dict.
sequence sym. dict.
WF3
Source Macro
...~
I
I
::> I
I
variable sym. dict.
I-- sequence sym. dict.
Resolve sequence
symbol references
I
A
WF1
Source Macro
r-- Mac.info.block
'--
ASSEGA
SYSSLB
I
WF3
P,_:--_1_-.
----------I
I
I
..
ASSEEA
INPUT
I
Source
I-- OC info. block
.
Source macro
table
Macro
Library
Macro name
array
Open Code
Open Code
GAR,
source and
edited records
C
Source
Open Code
ASSEDA
Edit macro def.
and conditional
assembly
...
+
Open Code
~
WF1
•
WF3
Source Macro
Edit macro
instructions
---------------........
WF2
ASSECA
.
Generated
source text and
error records
I
i~
M
~
WF1
-----------OUTPUT
I
PUNCH file
Pre-ESO PUNCH
& REPRO,
ESO records
~
•
I
H PUNCH & REPRO ....---before first
CSECT
I
Literal pool
I
PRINT .file
ESO records
Object file
Pre·ESO PUNCH " '_ _+_-1
& REPRO,
ESO records
WF1 *
o
Edited text
and error
records
I
I
I
~
.-----
~
...
Object file
Post·ESO PUNCH
& REPRO,
.....- -.........
text records
I
PUNCH file
RLO records,
END record
~
file
RLO records
Error records
I
-------
....
External symbol
dictionary output
WF1
WF3
---.
--..
Q
I
.-
ASSERA
Cross-reference
output
I
--
Control and Data Flow Between Phases
~F2
~
XREF strings
to be merged
T
ASSESA
Figure 3.
RLO
information
L..
Relocation
dictionary
output
---J
PRINT file
Error records and
statisticsc-_ _......
G
kV
T
I
I
1
ASSEMA
ASSEQA
I
~
XREF
•
...T
directory
I
PR~NTfile r ;
~"I!I____________
Object file
RLO records,
END record
t
Edited text
and error
records
ASSEOA
Build code 2
and text
output
6
~I
J"II
1
WF1
I
I
~P.RINT
EF
XR EF refereneb
"",H"",
f----.
...
......
PRINT file
Assembled source
program
\D
~:EF:"""i..... I~
*:
WF2 r
PUNCH file
Post·ESO PUNCH~---t-,
& REPRO,
text records
W
----'~
defintions
Diagnostic and
statistics output
* If symbol table overflow occurred, workfiles
(WF1 and WF2) may be in the opposite order.
**Only if symbol table overflow occurred.
- - - indicates optional information.
kD
Allocation of Main Storage for the Phases
The vertical axis of the diagram below represents the amount of main storage available to the partition. The horizontial axis
represents time (the order in which the phases are loaded and executed in main storage). Certain parts of the ASSEMBLY
phase, (for example, basic interface routines and the workfile logic module) are in main storage throughout execution.
Certain parts of the ASSEMA phase (the print routine and the SYSPCH/SYSLST/SYSLNK logic module (CPMOD» are loaded
into storage by ASSEMA and remain in storage to the end of execution. The shaded portion of the diagram represents the
area of the partition occupied by the work areas, buffers, dictionaries, tables, etc., of the phases; the size of this part of
storage is variable depending upon the size of the partition.
0
Low address
of partition
2
3
t
4K
4
~ 5
.~ 6
~ 7
7.2K
8
9
10
11
1.0
01>0
I'
12
13
14
15
16
17
18
19
20
tligh address
of partition
Figure 4. Allocation of Main Storage for the Phases
Main Storage Layouts of the Phases
The following figures illustrate the contents and layouts of the phases
as they are loaded into main storage. For a cross-reference to the
order in which they are loaded and their various sizes, see Figure 4.
The contents of the COMMON interface phase "ASSEMBLY" are shown in
Figure 1. Workareas, buffers, etc., generally begin at the high storage
address and work downwards using only as much of the available storage
as they require.
COMMON
interface
I-
-
- - -
-
- -
IPKCA
code
IPKCB
code
IPKCC
(
code
IPKCD
code
.......
,"-,
BLKADDR~~
____________________
~
Macro name array (MNA) buffer
PWAADDR~~
____________________
~
Work area for workfile 2
BUFADDR2~~
____________________
~
Buffer for workfile 2
Figure 5.
ASSECA Main Storage Layout.
Program Organization
95
COMMON
interface
~-------
IPKDA
code
IPKDB
code
L...
,
'r-'
"'"
VSDADDR
Variable symbol dictionary
(VSD)
SSDADDR
(only in IPKDA)
-+
Sequence symbol dictionary
(SSD)
PWAADDR1
-+
j.
Work area for workfile 1
BUFADDR1
Buffer for workfile 1
PWAADDR2
Work area for workfile 2
BUFADDR2
Buffer for workfile 2
* This area is overlaid by the VSD in module IPKDB
Figure 6.
ASSEDA Main Storage Layout.
,(
\(j
96
COMMON
interface
-------IPKEA
code
-""-
..........
.......
...
SSDADDR
--+
Sequence symbol dictionary
(SSD) buffer
SMTADDR
--+
Source macro table
(SMT) buffer
PWAADDR1
--+
Work area for workfile 1
BUFADDR1
---.
Buffer for workfile 1
PWAADDR2
--+
BUFADDR2
--+
Work area for workfile 2
Buffer for workfile 2
PWAADDR3
-+
Work area for workfile 3
BUFADDR3
-+
Buffer for workfile 3
Figure 7.
ASSEEA Main Storage Layout.
Program Organization
97
COMMON
interface
~--------
IPKAH
code
IPKAC
code
IPKGA
code
SMTADDR
~~~-------------------1
Source macro table buffer
~VSDAD
~~--------------------~
Sequence symbol dictionary and
variable symbol dictionary
buffer
....
-""
PWAADDR2 ~
Work area for workfile 2
BUFADDR2 ~
Buffer for workfile 2
PWAADDR3
~
Work area for workfile 3
BUFAPDR3 ~
Buffer for wor!dile 3
Figure 8.
98
ASSEGA Main Storage Layout.
COMMON
interface
t--
- -
-
- -
-
IPKFA
code
IPKAC
code
IPKAH
code
, ....
..... .....
.........
.... r-
GSDBUFAD
---+
Global symbol dictionary (GSD) buffer
SMTADDR ~
(only if there are
source macros)
Source macro table buffer
MNABUFAD~
}.
Macro name dictionary
(MND) buffer
BUFADDR1 ~
Buffer for workfile 1
PWAADDR1---...
Work area for workfiles 1 and 2
BUFADDR2
--+
Buffer for workfile 2
PWAADDR3
--+
BUFADDR3
~
Work area for workfile 3
Buffer for workfile 3
* This area is overlaid by GSD buffer if there are no source macros.
Figure 9.
ASSEFA Main Storage Layout.
Program Organization
99
COMMON
interface
1-------
IPKHA
code
Hash table (HASHTABL)
TABSTART
--.1-------------;
Attribute table
(ATTABLE)
BUFADDR2 ~I-------------;
Buffer for workfile 2
PWAADDR2 ~I-------------;
Work area for workfiles 2 and 3
BUFADDR3
~~------------i
Buffer for workfile 3
Figure 10.
100
ASSEHA Main Storage Layout.
(
COMMON
interface
r--
-
-
-
-
-
--
IPKIA
code
IPKAA
code
IPKCB
code
IPKIC
code
AMAV
----.
GAVAPT
----.
RDI BBASE
----+
RDIBBASE
----.
Macro address vector (MAV)
Value area for global set symbols
Open code dictionary block
Macro dictionary block
DAFSEND
L.,..
.... L...-
r--
~r--
-.
Global SSA
PWAADDR1
--.
Work area for workfile 1
BUFADDR1
--+
PWAADDR2
--+
Buffer for workfile 1
Work area for workfile 2
BUFADDR2
--+
..
PWAADDR3
Buffer for workfile 2
Work area for workfile 3
BUFADDR3
----+
Buffer for workfile 3
Figure 11.
ASSEIA Main Storage Layout.
Program Organization
101
COMMON
interface
-
-
- -
-- --
IPKJA
code
LlTTABLS
---+
..-
PWAADDR1
..
BUFADDR1
Work area for workfile 1
*
Buffer for workfile 1
PWAADDR2
---+
Work area for workfile 2
BUFADDR2 ~
Buffer for workfile 2
PWAADDR3
....Work area for workfile 3
BUFADDR3
--.
Buffer for workfile 3
* If there are PUNCH and/or REPRO records before the first control section, this area is first used bV
workfile 1, as shown here, and then overlaid bV the Literal pool. If there are.!!2 PUNCH or REPRO
records before the first control section, workfile 1 is not used and this area is onlv used bV the
Utera! pool.
Figure 12.
ASSEJA Main Storage Layout.
/' .""
~j
102
COMMON
interface
1----------
IPKKA
code
---+
ADESDTAB
External symbol dictionary
table buffer
+-
ESDEND
Hash table (HASHTABL)
STABEND
(end of symbol
table)
---+
Symbol table
(~~'
XREFPTR
I...
--+
SYMADDR
(start of symbol table)
Cross-reference buffer
BUFADDR2
---+
+-
XRAREND
Buffer for workfile 2
PWAADDR1(21---+
Work area for workfiles 1 and 2
...
BUFADDR1
Buffer for workfile 1
PHICORE
--+
Figure 13.
ASSEKA Main Storage Layout.
Program Organization
103
Symbol table overflow
-
No symbol table overflow
COMMON
interface
I- - . - -
STABEND
-
OOMMON
interface
IPKLA
code
IPKNA
code
IPKNA
code
----------1
STABEND
-+
(end of symbol
table I
Symbol table
XREFPTR
-- ---
IPKLA
code
- - - . .....
(end of symbol tablel
- -
--
~-
- - --Symbol table
---.I----------I+-SYMADDR
-+
~PWAADDR2
(Start of symbol table I
Cross-reference buffer
BUFADDR2
Work area for workfile 2
~I---------------~~RAREND
Buffer for workfile 2
"-BUFADDR2
Buffer for workfile 2
PWAADDR1(21-+1----------I
Work area for
workfiles 1 and 2
BUFADDR1
VVork area for workfile 1
~~------------~
Buffer for workfile 1
Figure 14.
104
. - PWAADDR1
ASSELA Main Storage Layout.
4-- BUFADDR1
Buffer for workfile 1
COMMON
interface
-- --- -- -IPKMA
code
IPKAF
code
IPKAI
code
IPKAH
code
PARTAB
External symbol dictionary
buffer
•
,1..
I'"
•
..........
*
•
External symbol dictionary
buffer
.......
.... ..,
'1-
PWAADDR1
.... r-
--.
Work area for workfile 1
BUFADDR1
~
Buffer for workfile 1
PHICORE
--+
* The maximum number of ESD buffers is seven.
Figure 15.
ASSEMA Main Storage Layout.
('
/
Program Organization
105
COMMON
interface
1----------IPKOA
code
IPKPA
code
~..,
PWAADDR3
~
BUFADDR3
--.
.... ~
Work area for workfile 3
Buffer for workfile 3
PWAADDR2
---+
Work area for workfile 2
BUFADDR2
~
Buffer for workfile 2
~
PWAADDR1
Work area for workfile 1
BUFADDR1
---+
Buffer for workfile 1
Figure 16.
106
ASSEOA Main Storage Layout.
COMMON
interface
f- -
- - - - - -
IPKQA
code
Relocation dictionary (RlD)
buffer
PRSAVE (saved RlDs)*
ENDSAVE
---..,.
"I.,
...
~
* Maximum number of RlDs saved =maximum number of lines.
Figure 11.
ASSEQA Main Storage Layout.
(
Program Organization
107
ASSERA
"In-storage" sort
ASSERA
Sort not "in-storage"
ASSERC
ASSERB
/
"
/
COMMON
interface
I- - -
- -
COMMON
interface
-
IPKRA
code
f--
- - -IPKRA
code
COMMON
interface
COMMON
interface
- - - - --
- --- --
Print routine
(CSECT = IPKRAOO1)
Print routine
(CSECT = IPKRAOO1)
IPKRCcode
IPKRB
code
routine
_ _ln_it_ia_l_iz_a_ti_on_ _-IlS*RTINIT
1-
Print routine
(CSECT = IPKRA001)
XREF sort block 1
Record storage area,
(RSA)
XREF sort block 2
•
•
Record storage area
(RSA)
Record storage area
•
•
Output buffer
•
•
Input buffer
Input buffer
XREF sort block "M"
XREF directory
XREF directory
XREF directory
XREF index table
XREF index table
XREF index table
* If the record storage area starts at label SRTINIT,
tThe number of XREF sort blocks is 2:SM $19.
then both the initialization and print routines are
overlaid by the RSA and the output printing is
handled by ASSERC.
Figure 18.
108
ASSERA Main Storage
Layout.
\
\
Figure 19.
ASSERB and ASSERC Main
Storage Layout.
COMMON
interface
f- -
-
-
-
-
---
IPKSA
code
IPKSB
code
PWAADDR1
--+~-----------------4
Work area for workfile 1
BUFADDR1
~,~----------------~
Buffer for workfile 1
Figure 20.
ASSESA Main Storage Layout.
Program Organization
109
Common D.t. Jb•• for the Auembler
The interface phase ASSEMBLY contains the common data area COMMON.
This data area is included in all other modules in the DSECT -PCOMMON-.
PCOMMON is divided up into seven parts, each part a COpy book, as
follows:
18RTAB
Branch table (branches to interface routines)
PCQM1
Equates and data areas used by the assembler
PCOM2,3,S,6,7
Data areas used by the phases of the assembler
at different times during execution
The different modules COpy those parts of COMMON that they need.
PCOM1,2,3,S,6,7 overlay each other by means of ORGs. For example:
PCOM2
starts with
ORG7
EQU*
starts with
ORG
ORG7
then
PCOM3
See -Data Areas- for a complete description of the DSECT PCOKMON.
110
Directory
Purpose of the Section
The purpose of this section is to assist you in
getting from the information in the manual to
the pertinent code in the program listings
and/or from the listings to the relevant
information in the manual. The directory
relates each module, entry point, and control
section name in the program to the corresponding
microfiche card.
C",·
r:
Directory
111
CSECTI
DSECT
MODULE,I
MCROFCH
DSECT NAME; SOURCE AND OBJECT TEXT OUTPUT
BEC
IPKPA
CAED
COL.MODE AND OVERFLOW?, ATTRIBUTE PHASE
IPKHAOOO
IPKHA
CAEDIT
DSECT NAME; ATTRIBUTE PHASE
CAEDIT
IPKHA
CAEVAL
SAVE REGISTERS, PHKGEN
1.5,1.5.2
IPKIAOOO
IPKIA
CATALBKE
EDECK OUTPUT
1.2
IPKGAOOO
IPKGA
CCWCODE
DSECT NAME; CCW OUTPUT, CONSTANT AND CCW
CODE BUILD
CCWCODE
ADDRES
CCWCODE
DSECT NAME; CCW OUTPUT, ADDRESS CONSTANT
AND CCW CODE BUILD
CCWCODE
IPKNA
CCWR
STORE LENGTH OF CCW, ASSIGNMENT PHASE
2.2.1
IPKKAOOO
IPKKA
CHECKGS
GLOBAL EDIT
1.3,1.3.1
IPKFAOOO
IPKFA
CHKNAME
PRE-PROCESSOR PHASE TO THE ASSEMBLER PHASES
2.1.1
I PKJAO 0 0
IPKJA
CNOPR
PUT VALUES IN SYMBOL BUCKETS, ASSIGNMENT
PHASE
2.2.1
IPKKAOOO
IPKKA
CODE
DSECT NAME; EXTERNAL SYMBOL DICTIONARY
COMR
GIVE IT A NAME, ASSIGNMENT PHASE
COMREG
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
BEC
PLM
REF··
CODE
IPKKAOOO
IPKKA
DSECT NAME; ONE TIME INITIALIZER
COMREG
IPKBA
CONXXXX
DSECT NAME; ONE TIME INITIALIZER
CONXXXX
IPKBA
COP ERROR
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAOOO
IPKPA
CROSSREF
XREF LISTING ?, ASSIGNMENT PHASE
2.3,2.2
IPKKAOOO
IPKKA
CROSSREF
XREF LISTING ?, SUBSTITUTION PHASE
2.3
IPKLAOOO
IPKLA
CSECTR
INDICATE THAT IN CSECT, ASSIGNMENT PHASE
2.2.2
I PKKAO 0 0
IPKKA
DCEDIT
DSECT NAME; ••• THIS DSECT, ASSIGNMENT PHASE
DCEDIT
IPKKA
DCPROC
DC AND OS CODE BUILD
2.6
IPKOAOOO
IPKOA
OCR
ZEROS TO POPNUMB IN OUTPUT RCD,
PRE-PROCESSOR PHASE TO THE ASSEMBLER PHASES
2.1.2
IPKJAOOO
IPKJA
OCR
ASSIGNMENT PHASE
2.2.1
IPKKAOOO
IPKKA
DIB
DSECT NAME; OC OR MACRO DIB, PHKGEN
1.5.1,1.5
DIB
IPKIA
DICTINFO
DSECT NAME; EXTERNAL SYMBOL DICTIONARY
DIRADDR
ADDRESS TO DIRECTORY BUFFER, POST
PROCESSOR; XREF SORTING AND PRINTING
2.8.2
PCOMMON
IPKRA
DIREND
END OF DIRECTORY, POST PROCESSOR; XREF
SORTING AND PRINTING
2.8.2
PCOMMON
IPKRA
.DIRENTRY
DSECT NAME; DESCRIBES ONE ENTRY IN THE,
POST PROCESSOR; XREF SORTING AND PRINTING
2.8.2
DIRENTRY
IPKRA
.DIRENTRY
DSECT NAME; DESCRIBES ONE ENTRY IN THE,
POST PROCESSOR; XREF SORTING
DIRENTRY
IPKRB
OP-CODE LOOKUP AND STMT COMPRESS
IPKCA001
IPKCA
DRIVER
2.2.2
DICTINFO
.DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT •
•• EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN 'I'HE PROGRAM ORGANIZATION SECTION.
Directory
113
SYMBOLIC
NAME
DESCRIPTION:
NAME AND USE
,
PLM
REF··
CSECT/MODULE/
DSECT
MCROFCH
DRIVER
PHKGEN
1.5
IPKIAOOO
IPKIA
DRIVER
GET POINTER TO OUTPUT AREA. PRE-PROCESSOR
PHASE TO THE ASSEMBLER PHASES
2.1.2
I PKJAO 0 0
IPKJA
DSECTR
WAS THERE A NAME ?
2.2.2
I PKKAOO 0
IPKKA
DSROUT
SAVE RETURN REG. ESD INTERLUDE PHASE
2.5
IPKMAOOO
IPKMA
DUMP
SAVE, SOURCE AND OBJECT TEXT OUTPUT
2.7,2.7.1
IPKPAOOO
IPKPA
ASSIGNMENT PHASE
·EDPMI
DSECT NAME; EDITED PROTOTYPE AND M- I.
EXTERNAL SYMBOL DICTIONARY
EDPMI
*EDPMI
DSECT NAME; EDITED PROTOTYPE AND M-I. M-I
AND PROTOTYPE EDITOR
EDPMI
IPKCC
DSECT NAME; EDITED PROTOTYPE AND M-I.
VARIABLE SYMBOL DECLARATION PROCESSOR
EDPMI
IPKDB
·EDPMI
DSECT NAME; EDITED PROTOTYPE AND M-I.
GLOBAL EDIT
EDPMI
IPKFA
·EDPMI
DSECT NAME; EDITED PROTOTYPE AND M-I.
ATTRIBUTE PHASE
EDPMI
IPKHA
·EDPMI
DSECT NAME; EDITED PROTOTYPE AND M-I. PHKGEN
EDPMI
IPKIA
IPKPAOOO
IPKPA
EDT EXT
ENTRY POINT; SOURCE AND OBJECT TEXT OUTPUT
EINFO
DSECT NAME; ERROR ITEM DESCRIPTOR. EXTERNAL
SYMBOL DICTIONARY
EJECTOP
SOURCE AND OBJECT TEXT OUTPUT
ENDCARD
DSECT NAME; •••• RLD OUTPUT PHASE
ENDR
PUT VALUES IN SYMBOL BUCKETS. ASSIGNMENT
PHASE
2.7
EINFO
2.7
IPKPAOOO
IPKPA
ENDCARD
I PKQA
2.2 •. 1
IPKKAOOO
IPKKA
DSECT NAME; ENTRY IN PARAMETER TABLE, PHKGEN
1.5.1
EPAR
IPKIA
EQUR
EQUR (3705) QDL29301. ASSIGNMENT PHASE
2.2.1
PCOMMON
IPKKA
ERRBYTES
DSECT NAME; ••• THIS DSECT. ASSIGNMENT PHASE
ERRBYTES
IPKKA
ERRBYTES
DSECT NAME; ••• THIS DSECT. SUBSTITUTION
PHASE
ERRBYTES
IPKLA
ERR CALL
DSECT NAME; SOURCE AND OBJECT TEXT OUTPUT
ERRCALL
IPKPA
·ERRENT
DSECT NAME; .ENTRY IN ERROR STACK. EXTERNAL
SYMBOL DICTIONARY
ERRENT
·ERRENT
DSECT NAME; ENTRY IN ERROR STACK. VARIABLE
SYMBOL DECLARATION PROCESSOR
ERRENT
IPKDB
·EPAR
ERItLOG
DC AND DS CODE BUILD
2.4.3.2.6
IPKOAOOO
IPKOA
F.RRPUT
ENTRY POINT; DC AND DS CODE BUILD
2.6,2.4.3
IPKOAOOO
IPKOA
ERSTACKM
DSECT NAME; PRE-PROCESSOR PHASE TO THE
ASSEMBLER PHASES
ERSTACKM
IPKJA
.DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT •
•• EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOt> OF OPERATIONS SECTION.
I F".
FOLLOWED BY A NUMERAL •. REFERS TO A FIGURE IN THE .PROGRAM ORGANIZATION SECTION.
(t~""
~
114
(.
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
ESDCOL17
DSECT NAME: ••• , ESO INTERLUDE PHASE
,
./
CSECTI
DSECT
KCROFCH
ESDCOL17
IPKMA
~mI:'ULEI
.ESDENTRY
DSECT NAME: THIS DSECT DESCRIBES AN ENTRY,
ASSIGNMENT PHASE
2.2,2.2.2
ESDENTRY
IPKKA
.ESDENTRY
DSECT NAME: ••• , ESD INTERLUDE PHASE
2.5
ESDENTRY
IPKMA
ESDLCTR
• CURRENT LOCCNTR OF CONT. SEC, ASSIGNMENT
PHASE
2.2.2
ESDENTRY
IPKKA
ESDROUT
ESD INTERLUDE PHASE
2.5
IPKf.1AOOO
IPKMA
ESDTAB
DSECT NAME: ••• , ESD INTERLUDE PHASE
ESDTAB
IPI ENTRY IN KNA, PHKGEN
LBUF
DSECT NAME; DESCRIBES EDECK CARD IMAGE,
GLOBAL EDIT
LITCOPE
ENTRY POINT; SOURCE AND OBJECT TEXT OUTPUT
2.7. 1
IPKPAOOO
IPKPA
LITDRV
PICK UP ACTUAL LIT BLK ADDR, PRE-PROCESSOR
PHASE TO THE ASSEMBLER PHASES
2. 1
IPKJAOOO
IPKJA
LITERAL
PRE-PROCESSOR PHASE TO THE ASSEMBLER PHASES
2.1.2,2.1
IPKJAOOO
IPKJA
LITMN
LOAD OFFSET TO 8-CHAIN, PRE-PROCESSOR PHASE
TO THE ASSEMBLER PHASES
2.1.2,2.1
IPKJAOOO
IPKJA
LITSRCE
PRE-PROCESSOR PHASE TO THE ASSEMBLER PHASES
2.1,2.1.2
IPKJAOOO
IPKJA
*LITTAB
DSECT NAME; THIS DESCRIBES AN ENTRY IN,
POST PROCESSOR; XREF SORTING AND PRINTING
2.8.2
LITTAB
IPKRA
*LITTBL
DSECT NAME; ENTRY IN LITERAL TABLE,
PRE-PROCESSOR PHASE TO THE ASSEMBLER PHASES
2.1.2,2.1
LITTBL
IPKJA
LOCCNTHI
HIGHEST LOCCNTR OF THIS SEC., ASSIGNMENT
PHASE
2.2.2
PCOMMON
1 PKKA
LOCCNTR
LOCATION COUNTER, ASSIGNMENT PHASE
2.2.2
PCOMf.'lON
IPKKA
LTORG
LTORG, PRE-PROCESSOR PHASE TO THE ASSEMBLER
PHASES
2. 1
PCOMMON
IPKJA
LTORGR
ENTRY POINT; PRE-PROCESSOR PHASE TO THE
ASSEMBLER PHASES
2. 1
IPKJAOOO
IPKJA
LTORGR
INSERT LENGTH ATTRIBUTE, ASSIGNMENT PHASE
2.2. 1
IPKKAOOO
IPKKA
LUB
DSECT NAME; LOGICAL UNIT BLKS FOR
PARTITION, DTFSL
LUB
IPKAD
*MACHEAD
DSECT NAME; MACRO HEADER RECORD OUT, SEQ
SYM REFERENCE PROCESSOR
MACHEAD
IPKEA
*MACHEAD
DSECT NAME; MACRO HEADER DSECT, GLOBAL EDIT
MACHEAD
IPKFA
1. 5.1
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
118
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF··
CSECTI
DSECT
MODULEI
MCROFCH
·MACHEAD
DSECT NAME; MACRO HEADER DSECT, EDECK OUTPUT
fo4ACHEAD
IPKGA
·MACHEAD
DSECT NAME; MACRO HEADER DSECT, PHKGEN
l1ACHEAD
IPKIA
MACHINOP
PUT RIGHT VALUES, ASSIGNMENT PHASE
2.2.1
IPKKAOOO
IPKKA
MACHOPS
ENTRY POINT; DC AND DS CODE BUILD
2.7. 1
IPKOAOOO
IPKOA
MAC INS
TEST IF COLLECTION MODE, ATTRIBUTE PHASE
1.4
IPKHAOOO
IPKHA
MAINK
PHKGEN
1.5. 1
IPKIAOOO
IPKIA
MAIN10
GET OPERAND RECORD, PHKGEN
1.5. 1
IPKIAOOO
IPKIA
MAIN30
READ KT RECORD, PHKGEN
1.5. 1
IPKIAOOO
IPKIA
MAVENTRY
GLOBAL EDIT
1.3
IPKFAOOO
IPKFA
MESSAGE
DSECT NAME; MESSAGE LAYOUT IN POOL,
EXTERNAL SYMBOL DICTIONARY
MIB
VARIABLE SYMBOL DECLARATION PROCESSOR
1. 1.2
PCOMMON
IPKDB
MIROUT
SAVE MNEMONIC OP-CODE, M-I AND PROTOTYPE
EDITOR
1. 1,4
IPKCCOOO
IPKCC
MLIBSRCH
GLOBAL EDIT
1.3
IPKFAOOO
IPKFA
MNABUFAD
ADDRESS OF MND BUFFER, GLOBAL EDIT
1.3
IPKFAOOO
IPKFA
.MNAENT
DSECT NAME; MACRO NAME ARRAY ENTRY, OP-CODE
LOOKUP AND STMT COMPRESS
4
MNAENT
IPKCA
·MNAENT
DSECT NAME; fo4.ACRO NAME ARRAY OR MACRO NAME,
M-I AND PROTOTYPE EDITOR
MNAENT
IPKCC
·MNAENT
DSECT NAME; MACRO NAME ARRAY, OVERLAY FOR
ICTL,ISEQ,TITLE,COPY,BKEND,EOF
l>1NAENT
IPKCD
·MNAENT
DSECT NAME; MACRO NAME ARRAY OR MACRO NAME,
GLOBAL EDIT
1.3
MNAENT
IPKFA
MNDENT
GLOBAL EDIT
1.3
IPKFAOOO
IPKFA
MNDNPDST
DSECT NAME; DSECT FOR MND NIP TABLE, GLOBAL
EDIT
MNDNPDST
IPKFA
MNDSRCH
GLOBAL EDIT
1.3
IPKFAOOO
IPKFA
MNOTEOP
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAOOO
IPKPA
MOVEPUT
FROM FIELD, SEQ SYM REFERENCE PROCESSOR
1. 1.3
IPKEJ1.000
IPKEA
MPUNCH
SAVE RETURN ADDRESS, EDECK OUTPUT
1.2
IPKGMOO
IPKGA
MRGDIR
POST PROCESSOR; XREF SORTING
2.8.2
IPKRBOOO
IPKRB
MRGMAIN
POST PROCESSOR; XREF SORTING
2.8.2
IPKRBOOO
IPKRB
MRGPRT
ENTRY POINT, POST PROCESSOR; XREF SORTING
AND PRINTING
2.8.2
IPKRA001
IPKRA
NADDRSPL
USING,DROP,MACHIN OP AND S-CONST CODE BUlLe
2.4.1
IPKNAOOO
IPKNA
NAMSCAN
CLEAR WORK REGISTER, ATTRIBUTE PHASE
1.4
IPKHAOOO
IPKHA
NDROP
USING,DROP,MACHIN OP AND S-CONST CODE BUILD
2.4,2.4.2
I PKNAO 0 0
I PKNA
MESSAGE
.DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT •
•• EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
Directory
119
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
NERRSTCK ;
E~ROR NUMBER STACK, USING,DROP,MACHIN OP
AND S-CONST CODE BUILD
2.4. l'
IPKNAOOOIPKNA
NMACHEND
TOO MANY OPERANDS, USING,DROP,MACHIN OP
AND S-CONST CODE BUILD
2.4.1
IPKNAOOO
IPKNA
N~ACHOP
INITIATE GENERATED CODE, USING,DROP,MACHIN
OP AND S-CONST CODE BUILD
2.4, . 2.4.1
IPKNAOOO
IPKNA
NPARTAB
HERE, USING,DROP,MACHIN OP AND S-CONST CODE
BUILD
2.4.1
IPKNAOOO
IPKNA
NSADDR
INDICATE S-TYPE CONSTANT, USING,DROP,MACHIN
OP AND S-CONST CODE BUILD
2.4,2.4.3
IPKNAOOO
IPKNA
DSECT NAME: USING,DROP,MACHIN OP AND
S-CONST CODE BUILD
2.4.1
NTABFMT
IPKNA
NTESTST1
ENTRY POINT; USING,DROP,MACHIN OP AND
S-CONST CODE BUILD
2.4. 1
,IPKNAOOO, IPKNA
NTESTST2
ENTRY POINT; USING,DROP,MACHIN OP AND
S-CONST CODE BUILD
2.4.1
IPKNAOOO
IPKNA
NUSING
SET LOOP COUNTER, USING,DROP,MACHIN OP AND
S-CONST CODE BUILD
2.4,2.4.2
IPKNAOOO
IPKNA
NUS TAB
USING TABLE, USING,DROP,MACHIN OP AND
S-CONST CODE BUILD
2.4.3
IPKNAOOO
IPKNA
*OCSTMH
DSECT NAME; OC START AND MACRO HEADER REC,
VARIABLE SYMBOL DECLARATION PROCESSOR
1.1.20CSTMH
IPKDB
*OCSTMH
DSECT NAME; OC START AND MACRO HDR REC IN,
SEQ SYM REFERENCE PROCESSOR
1. 1. 30CSTMH
IPKEA
*NTABFMT
OPENTRY
DSECT NAME; EXTERNAL SYMBOL DICTIONARY
OPERAND
PRE-PROCESSOR PHASE TO THE ASSEMBLER PHASES
2. 1. 1
IPKJAOOO
IPKJA
OPERANDS
ZERO WORKREGISTER, SUBSTITUTION PHASE
2.3
IPKLAOOO
IPKLA
OPSTACKM
DSECT NAME; PRE-PROCESSOR PHASE TO THE
ASSEMBLER PHASES
OPSTACKM
IPKJA
ORGPROC
INSERT CUR VALUES IN STMT, ASSIGNMENT PHASE
2.2.1
IPKKAOOO
IPKKA
PALIGN
ALIAS FOR BIT1. ONE TIME INITIALIZER
1. 1
PCOMl'ONIPKBA
PARM
DSECT NAME; DESCRIBES PREAD/PWRITE PARM,
BASIC INTERFACE ROUTINES AND PCOMMON
PARPTV
DSECT NAME; PARAMETER POINTER VECTOR DSECT,
PH KG EN
PBUFLEN1
OPENTRY
PARM
IPKAA
1.5.1
PARPTV
IPKIA
BUFFER LENGTH, ONE TIME INITIALIZER
1. 1
PCOMMON
IPKBA
PBUFLEN2
BUFFER LENGTH, ONE TIME INITIALIZER
1.1
PCOMMON
IPKBA
PBUFLEN3
BUFFER LENGTH, ONE TIME INITIALIZER
1. 1
PCOMMON
IPKBA
PB1FISIZ
WF1 BUFSIZE IN F AND I, ONE TIME INITIALIZER
3
PCOMMON
IPKBA
PB12SIZ
WF1,WF2 BUFSIZ, ONE TIME INITIALIZER
1. 1
PCOMMON
IPKBA
*PCOMMON
DSECT NAME; EXTERNAL SYPoBOL DICTIONARY
PCOMMON
*PCOMMON
OSECT NAME; SYSIPT AND SYSSLB ROUTINES
PCOMl"ON
IPKAB
*DATA AREA. SEE DATA AREA SECT.IONFOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD 'OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
120
f'f'
~
SYMBOLIC
NAME
f
DESCRIPTION: NAME AND USE
PLM
REF·*
CSECT/
DSECT
MODULE/
MCROFCH
*PCOMMON
DSECT NAME; PUNCH ROUTINE FOR EDECK
PCOMMON
IPKAC
*PCOMMON
DSECT NAME; SYSSLB ROUTINES FOR GLOBAL EDIT
PCOMMON
IPKAE
*PCOMMON
DSECT NAME; SYSPCH/SYSLNK OUTPUT
PCOMMON
IPKAF
*PCOMMON
DSECT NAME; PRINT ROUTINE
PCOMMON
IPKAI
*PCOMMON
DSECT NAME; ONE TIME INITIALIZER
PCOMMON
IPKBA
*PCOMMON
DSECT NAME; OP-CODE LOOKUP AND STMT COMPRESS
PCOMMON
IPKCA
*PCOMMON
DSECT NAME; M-I AND PROTOTYPE EDITOR
PCOMMON
IPKCC
*PCOMMON
DSECT NAME; OVERLAY FOR
ICTL,ISEQ,TITLE,COPY,BKEND,EOF
PCOMMON
IPKCD
*PCOMMON
DSECT NAME; VARIABLE SYMBOL DECLARATION
PROCESSOR
PCOMMON
IPKDB
*PCOMMON
DSECT NAME; SEQ SYM REFERENCE PROCESSOR
PCOMMON
IPKEA
*PCOMMON
DSECT NAME; GLOBAL EDIT
PCOMMON
IPKFA
*PCOMMON
DSECT NAME; EDECK OUTPUT
PCOMMON
IPKGA
*PCOMMON
DSECT NAME; ATTRIBUTE PHASE
PCOMMON
IPKHA
*PCOMMON
DSECT NAME; PHKGEN
PCOMMON
IPKIA
*PCOMMON
DSECT NAME; LOOKUP AND CHECK OF GENERATED
OPCODES
PCOMMON
IPKIC
*PCOMMON
DSECT NAME; PRE-PROCESSOR PHASE TO THE
ASSEMBLER PHASES
PCOMMON
IPKJA
*PCOMMON
DSECT NAME; ASSIGNMENT PHASE
PCOMMON
IPKKA
*PCOMMON
DSECT NAME; SUBSTITUTION PHASE
PCOMMON
IPKLA
*PCOMMON
DSECT NAME; ESD INTERLUDE PHASE
PCOMMON
IPKMA
*PCOMMON
DSECT NAME; USING,DROP,MACHIN OP AND
S-CONST CODE BUILD
PCOMMON
IPKNA
*PCOMMON
DSECT NAME; DC AND DS CODE BUILD
PCOMMON
IPKOA
*PCOMMON
DSECT NAME; SOURCE AND OBJECT TEXT OUTPUT
PCOMMON
IPKPA
*PCOMMON
DSECT NAME; RLD OUTPUT PHASE
PCOMMON
IPKQA
*PCOMMON
DSECT NAME; POST PROCESSOR; XREF SORTING
AND PRINTING
PCOMMON
IPKRA
*PCOMMON
DSECT NAME; POST PROCESSOR; XREF SORTING
PCOMMON
IPKRB
*PCOMMON
DSECT NAME; POST PROCESSOR; XREF PRINTING
PCOMMON
IPKRC
*PCSR
DSECT NAME; EXTERNAL SYMBOL DICTIONARY
PCSR
*PCSR
DSECT NAME; OP-CODE LOOKUP AND STMT COMPRESS
*PCSR
*PCSR
PCSR
IPKCA
DSECT NAME; M-I AND PROTOTYPE EDITOR
PCSR
IPKCC
DSECT NAME; OVERLAY FOR
ICTL,ISEQ,TITLE,COPY,BKEND,EOF
PCSR
IPKCO
4
*IJATA AREA. SEE DATA A.REA SECTION FO~. DE'I'AILFD LAYOU'['.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
Directory
121
SYMBOLIC"
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
~~CROFCH
*PCSR
DSECT NAME: VARIABLE SYMBOL DECLARATION
PROCESSOR
PCSR
IPKDB
*PCSR
DSECT NAME; SEQ SYM REFERENCE PROCESSOR
PCSR
IPKEA
*PCSR
DSECT NAME: GLOBAL EDIT
PCSR
IPKFA
*PCSR
DSECT NAME: EDECK OUTPUT
PCSR
IPKGA
*PCSR
DSECT NAME: ATTRIBUTE PHASE
PCSR
IPKHA
*PCSR
DSECT NAME: PHKGEN
PCSR
IPKIA
*PCSR
DSECT NAME: LOOKUP AND CHECK OF GENERATED
OPCODES
PCSR
IPKIC
*PCSR
DSECT NAME; PRE-PROCESSOR PHASE TO THE
ASSEMBLER PHASES
PCSR
IPKJA
*PCSR
DSECT NAME: ASSIGNMENT PHASE
PCSR
IPKKA
*PCSR
DSECT NAME; SUBSTITUTION PHASE
PCSR
IPKLA
*PCSR
DSECT NAME: SOURCE AND OBJECT TEXT OUTPUT
PCSR
IPKPA
*PDCEDIT
DSECT NAME: EDITED RECORD FOR DC AND DS,
PRE-PROCESSOR PHASE TO THE ASSEMBLER PHASES
PDCEDIT
IPKJA
*PDCEDIT
DSECT NAME: EDITED RECORD FOR DC AND DS,
ASSIGNMENT PHASE
PDCEDIT
IPKKA
*PDCEDIT
DSECT NAME: EDITED RECORD FOR DC AND DS,
SUBSTITUTION PHASE
PDCEDIT
IPKLA
*PDCEDIT
DSECT NAME: EDITED RECORD FOR DC AND DS,
USING,DROP,MACHIN OP AND S-CONST CODE BUILD
PDCEDIT
IPKNA
*PDCEDIT
DSECT NAME: EDITED RECORD FOR DC AND DS,
DC AND DS CODE BUILD
PDCEDIT
IPKOA
*PDCEDIT
DSECT NAME: EDITED RECORD FOR DC AND DS,
SOURCE AND OBJECT TEXT OUTPUT
PDCEDIT
IPKPA
*PDCOUT
DSECT NAME: DC OUTPUT, CONSTANT AND CCW
CODE BUILD
PDCOUT
ADDRES
*PDCOUT
DSECT NAME: DC OUTPUT, ADDRESS CONSTANT
AND CCW CODE BUILD
PDCOU'I'
IPKNA
*PDCOUT
DSECT NAME: DC OUTPUT, DC AND DS CODE BUILD
PDCOUT
IPKOA
2.1.2,2.1
2.7
2.2
2.q
PDECK
ALIAS FOR BIT3. ONE TIME INITIALIZER
1. 1
PCOMMON
IPKBA
PEDECK
ALIAS FOR BIT2. ONE TIME INITIALIZER
3
PCOMMON
IPKBA
PEEX
ZERO WORK REGISTER, ASSIGNMENT PHASE
2.2.2
IPKKAOOO
IPKKA
PENDAD
ADDRESS OF END OPERAND, RLD OUTPUT PHASE
2.8.1
PCOMMON
IPKQA
PENDID
OF END OPERAND, RLD OUTPUT PHASE
2.8.1
PCOMMON
IPKQA
*PERR
DSECT NAME: SOURCE AND OBJECT TEXT OUTPUT
2.7
PERR
IPKPA
*PETFLDS
DSECT NAME: EXTERNAL SYMBOL DICTIONARY
PETFLDS
*PETFLDS
DSECT NAME: OP-CODE LOOKUP AND STMT COMPRESS
PETFLDS
IPKCA
*PETFLDS
DSECT NAME: M-I AND PROTOTYPE EDITOR
PETFLDS
IPKCC
*DATA AREA. SEE DATA AREA SECTION FOR DETAILEP LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
122
((,
~_/
SYMBOLIC
NAME
(
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
!1CROFCH
*PETFLDS
DSECT NAME: OVERLAY FOR
ICTL,ISEQ,TITLE,COPY,BKEND,EOF
PETFLDS
IPKCD
*PETFLDS
DSECT NAME: VARIABLE SYMBOL DECLARATION
PROCESSOR
PETFLDS
IPKDB
*PETFLDS
DSECT NAME; SEQ SYM REFERENCE PROCESSOR
PETFLDS
IPKEA
*PETFLDS
DSECT NAME: GLOBAL EDIT
PETFLDS
IPKFA
*PETFLDS
DSECT NAME: EDECK OUTPUT
PETFLDS
IPKGA
*PETFLDS
DSECT NAME: PHKGEN
PETFLDS
IPKIA
*PETFLDS
DSECT NAME: PRE-PROCESSOR PHASE TO THE
ASSEMBLER PHASES
2. 1. 1
PETFLDS
IPKJA
*PETFLDS
DSECT NAME: ASSIGNMENT PHASE
2.2,2.2.2
PETFLDS
IPKKA
*PETFLDS
DSECT NAME: SUBSTITUTION PHASE
2.3
PETFLDS
IPKLA
*PETFLDS
DSECT NAME: USING,DROP,MACHIN OP AND
S-CONST CODE BUILD
2.11.3,2.11
PETFLDS
IPKNA
*PETFLDS
DSECT NAME; DC AND DS CODE BUILD
2.6,2.7.1
PETFLDS
IPKOA
*PETFLDS
DSECT NAME: SOURCE AND OBJECT TEXT OUTPUT
2.7
PETFLDS
IPKPA
*PETR
DSECT NAME: EXTERNAL SYMBOL DICTIONARY
PETR
*PETR
DSECT NAME; OP-CODE LOOKUP AND STMT COMPRESS
PETR
IPKCA
*PETR
DSECT NAME; M-I AND PROTOTYPE EDITOR
PETR
IPKCC
*PETR
DSECT NAME: OVERLAY FOR
ICTL,ISEQ,TITLE,COPY,BKEND,EOF
PETR
IPKCD
*PETR
DSECT NAME: VARIABLE SYMBOL DECLARATION
PROCESSOR
PETR
IPKDB
*PETR
DSECT NAME: SEQ SYM REFERENCE PROCESSOR
PETR
IPKEA
*PETR
DSECT NAME; GLOBAL EDIT
PETR
IPKFA
*PETR
DSECT NAME; EDECK OUTPUT
PETR
IPKGA
*PETR
DSECT NAME; PHKGEN
PETR
IPKIA
*PETR
DSECT NAME; PRE-PROCESSOR PHASE TO THE
ASSEMBLER PHASES
2.1.2,2.1
PETR
IPKJA
*PETR
DSECT NAME; ASSIGNMENT PHASE
2.2,2.2.1
PETR
IPKKA
*PETR
DSECT NAME; SUBSTITUTION PHASE
2.3
PETR
IPKLA
*PETR
DSECT NAME; USING,DROP,MACHIN OP AND
S-CONST CODE BUILD
2.11.2,2.11
PETR
IPKNA
*PETR
DSECT NAME; DC AND DS CODE BUILD
2.7.1,2.6
PETR
IPKOA
*PETR
DSECT NAME; SOURCE AND OBJECT TEXT OUTPUT
2.7
PETR
IPKPA
DSECT NAME: AFTER EVALUATION THE EDITED
TEXT CONSISTS, SUBSTITUTION PHASE
PEVOPND
IPKLA
DSECT NAME: EXTERNAL SYMBOL DICTIONARY
PFCB
PEVOPND
*PFCB
1.3
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUY~ERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
Directory
123
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECTI
DSECT
MODULE/
MCROFCH
*PFCB
DSECT NAME: BASIC INTERFACE ROUTINES AND
PCOMMON
1. 1
PFCB
IPKAA
*PFCB
DSECT NAME: ONE TIME INITIALIZER
PFCB
IPKBA
*PFCB
DSECT NAME: OP-CODE LOOKUP AND STMT COMPRESS
PFCB
IPKCA
*PFCB
DSECT NAME: M-I AND PROTOTYPE EDITOR
PFCB
IPKCC
*PFCB
DSECT NAME: OVERLAY FOR
ICTL,ISEQ,TITLE,COPY,BKEND,EOF
PFCB
IPKCD
*PFCB
DSECT NAME: VARIABLE SYMBOL DECLARATION
PROCESSOR
PFCB
IPKDB
*PFCB
DSECT NAME: SEQ SYM REFERENCE PROCESSOR
PFCB
IPKEA
*PFCB
DSECT NAME: GLOBAL EDIT
PFCB
IPKFA
*PFCB
DSECT NAME: EDECK OUTPUT
PFCB
IPKGA
*PFCB
DSECT NAME: ATTRIBUTE PHASE
PFCB
IPKHA
*PFCB
DSECT NAME: PHKGEN
PFCB
IPKIA
*PFCB
DSECT NAME: LOOKUP AND CHECK OF GENERATED
OPCODES
PFCB
IPKIC
*PFCB
DSECT NAME: PRE-PROCESSOR PHASE TO THE
ASSEMBLER PHASES
PFCB
IPKJA
*PFCB
DSECT NAME: ASSIGNMENT PHASE
PFCB
IPKKA
*PFCB
DSECT NAME: SUBSTITUTION PHASE
PFCB
IPKLA
*PFCB
DSECT NAME; ESD INTERLUDE PHASE
PFCB
IPKMA
*PFCB
DSECT NAME; USING,DROP,MACHIN OP AND
S-CONST CODE BUILD
PFCB
IPKNA
*PFCB
DSECT NAME: DC AND DS CODE BUILD
PFCB
IPKOA
*PFCB
DSECT NAME: SOURCE AND OBJECT TEXT OUTPUT
PFCB
IPKPA
*PFCB
DSECT NAME: RLD OUTPUT PHASE
PFCB
IPKQA
*PFCB
DSECT NAME: POST PROCESSOR: XREF SORTING
AND PRINTING
PFCB
IPKRA
*PFCB
DSECT NAME: POST PROCESSOR: XREF SORTING
PFCB
IPKRB
*PFCB
DSECT NAME: POST PROCESSOR: XREF PRINTING
PFCB
IPKRC
PFILE1
FILE CONTROL BLOCK FOR FILE 1, ONE TIME
INITIALIZER
1. 1
PCOMMON
IPKBA
PFILE2
FILE CONTROL BLOCK FOR FILE 2, ONE TIME
INITIALIZER
1.1
PCOMMON
IPKBA
PFILE3
FILE CONTROL BLOCK FOR FILE 3, ONE TIME
INITIALIZER
1.1
PCOMMON
IPKBA
PGBLSIZ
SIZE OF GLOBAL WORK AREAS, PHKGEN
1.5
pCOMMON
IPKIA
*PGVHEAD
DSECT NAME: GLOBAL VECTOR HEADER DSECT,
GLOBAL EDIT
1.3. 1
PGVHEAD
IPKFA
*PGVHEAD
DSECT NAME: GLOBAL VECTOR HEADER DSECT,
PHKGEN
1.5.1,1.5
PGVHEAD
IPKIA
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
124
SYMBOLIC
NAME
PLM
REF**
CSECTI
DSECT
I~ODULEI
DESCRIPTION: NAME AND USE
*PHYR
DSECT NAME; ASSIGNMENT PHASE
2.2.1,2.2
PHYR
IPKKA
*PHYR
DSECT NAME; SUBSTITUTION PHASE
PHYR
IPKLA
*PKNA
DSECT NAME; KEYWORD NAME ARRAY DSECT, PHKGEN
1. 5. 1
PKNA
IPKIA
PLINK
ALIAS FOR BIT4. ONE TIME INITIALIZER
1.1
PCOMMON
IPKBA
PLINKBFR
DSECT NAME; SYSPCH/SYSLNK OUTPUT
PLINKBFR
IPKAF
PLIST
ALIAS FOR BIT5. ONE TIME INITIALIZER
1. 1
PCOtJI.MON
IPKBA
DSECT NAME; MACRO ADDRESS VECTOR DSECT,
PHKGEN
1.5.1,1.5
PMAV
IPKIA
PMNABSIZ
LENGTH OF MNA BLOCK, ONE TIME INITIALIZER
1. 1
PCOMMON
IPKBA
PNPVAL
DSECT NAME; DESCRIBES NIP VALUE, BASIC
INTERFACE ROUTINES AND PCOMMON
PNPVAL
IPKAA
POINTBCK
DSECT NAME; BASIC INTERFACE ROUTINES AND
PCOMMON
POINTBCK
IPKAA
POLEXP
DSECT NAME; ATTRIBUTE PHASE
POLEXP
IPKHA
POLIFY
SAVE RETURN REGISTER, PRE-PROCESSOR PHASE
TO THE ASSEMBLER PHASES
IPKJAOOO
IPKJA
PPCARD
DSECT NAME; SYSPCH/SYSLNK OUTPUT
PPCARD
IPKAF
PPCHBUF
DSECT NAME; DESCRIBES PUNCH BUFFER, PUNCH
ROUTINE FOR EDECK
PPCHBUF
IPKAC
PRINTER
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAOOO
IPKPA
PRINTOP
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAOOO
IPKPA
PRLINE
DSECT NAME; ***, RLD OUTPUT PHASE
PRLINE
IPKQA
PRNTLINE
PRINT BUFFER FOR XREF DATA, POST PROCESSOR;
XREF SORTING AND PRINTING
2.8.2
I PKRAO 0 1
IPKRA
PROROUT
SAVE OP-CODE MNEMONIC, M-I AND PROTOTYPE
EDITOR
1. 1,4
IPKCCOOO
IPKCC
PSEUTBL
SOURCE AND OBJECT TEXT OUTPUT
2.7.1
IPKPAOOO
IPKPA
*PMAV
(
2. 1. 1
MCROFCH
*PSTRINGS
DSECT NAME; EXTERNAL SYMBOL DICTIONARY
PSTRINGS
*PSTRINGS
DSECT NAME; OP-CODE LOOKUP AND STMT COMPRESS
PSTRINGS
IPKCA
*PSTRINGS
DSECT NAME; M-I AND PROTOTYPE EDITOR
PSTRINGS
IPKCC
*PSTRINGS
DSECT NAME; OVERLAY FOR
ICTL, ISEQ,TITLE,COPY,BKEND, EOF
PSTRINGS
IPKCD
*PSTRINGS
DSECT NAME; VARIABLE SYMBOL DECLARATION
PROCESSOR
PSTRINGS
IPKDB
*PSTRINGS
DSECT NAME; SEQ SYM REFERENCE PROCESSOR
PSTRINGS
IPKEA
*PSTRINGS
DSECT NAME; GLOBAL EDIT
PSTRINGS
IPKFA
*PSTRINGS
DSECT NAME; EDECK OUTPUT
PSTRINGS
IPKGA
*PSTRINGS
DSECT NAME; ATTRIBUTE PHASE
PSTRINGS
IPKHA
*PSTRINGS
DSECT NAME; PHKGEN
PSTRINGS
IPKIA
1.4
*DATA AREA.
SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
Directory
125
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
*PSTRINGS
DSECT NAME; LOOKUP AND CHECK OF GENERATED
OPCODES
PSTRINGS
IPKIC
*PSTRINGS
DSECT NAME; PRE-PROCESSOR PHASE TO THE
ASSEMBLER PHASES
PSTRINGS
IPKJA
*PSTRINGS
DSECT NAME; ASSIGNMENT PHASE
PSTRINGS
IPKKA
*PSTRINGS
DSECT NAME; SUBSTITUTION PHASE
PSTRINGS
IPKLA
*PSTRINGS
DSECT NAME; SOURCE AND OBJECT TEXT OUTPUT
PSTRINGS
IPKPA
PSYMTABL
START OF HASH TABLE, ASSIGNMENT PHASE
2.2.1
PCOMMON
IPKKA
PSYMTABL
START OF HASH TABLE, SUBSTITUTION PHASE
2.3
PCOMMON
IPKLA
PSYSPARM
ONE TIME INITIALIZER
1. 1
PCOMMON
IPKBA
PUNCHOP
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAOOO
IPKPA
PUNCHOUT
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAOOO
IPKPA
PUNCHR
ALIAS FOR REPROEDR. PRE-PROCESSOR PHASE
TO THE ASSEMBLER PHASES
2. 1
IPKJAOOO
IPKJA
PVSDSIZE
VSDSIZE, ONE TIME INITIALIZER
1. 1
PCOMMON
IPKBA
PXREF
ALIAS FOR BIT6. ONE TIME INITIALIZER
1. 1
PCOMMON
IPKBA
RDIBBASE
ALIAS FOR R15. -> CURRENT DICTIONARY BLOCK,
PHKGEN
1.5.1
IPKIAOOO
IPKIA
REPROEDR
BR IF PRIVATE CODE HAS STARTED,
PRE-PROCESSOR PHASE TO THE ASSEMBLER PHASES
2.1
IPKJAOOO
IPKJA
REPRooP
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAOOO
IPKPA
RLDCOL17
DSECT NAME; ***, RLD OUTPUT PHASE
RLDCOL17
IPKQA
*RLDENTRY
DSECT NAME; ONE RLD ENTRY, CONSTANT AND
CCW CODE BUILD
RLDENTRY
ADDRES
*RLDENTRY
DSECT NAME; ONE RLD ENTRY, ADDRESS CONSTANT
AND CCW CODE BUILD
RLDENTRY
IPKNA
*RLDENTRY
DSECT NAME; ***, RLD OUTPUT PHASE
2.8.1,2.8
RLDENTRY
IPKQA
RLDPCH
SAVE RETURN REG, RLD OUTPUT PHASE
2.8.1
IPKQAOOO
IPKQA
RLDROUT
SAVE RETURN VALUE, RLD OUTPUT PHASE
2.8,2.8.1
IPKQAOOO
IPKQA
RLDTAB
DSECT NAME; ***, RLD OUTPUT PHASE
RLDTAB
IPKQA
RSA
POST PROCESSOR; XREF SORTING AND PRINTING
2.8.2
IPKRAO01
IPKRA
RTBL
ALIAS FOR R2. -> NEXT ENTRY IN PARTBL,
PHKGEN
1.5.1
IPKIAOOO
IPKIA
SEQENT
DSECT NAME; SEQ SYM REFERENCE PROCESSOR
SEQENT
IPKEA
SMTADDR
ADDR OF SMT, SEQ SYM REFERENCE PROCESSOR
1.1.3
IPKEAOOO
IPKEA
*SMTENT
DSECT NAME; SOURCE MACRO TABLE ENTRY, SEQ
SYM REFERENCE PROCESSOR
1. 1.3
SMTENT
IPKEA
*SMTENT
DSECT NAME; SOURCE MACRO TABLE ENTRY DSECT,
GLOBAL EDIT
1.3
SMTENT
IPKFA
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
126
.
C~
r
{
(
SYMBOLIC
NAME
*SMTENT
DESCRIPTION: NAME AND USE
PLM
REF**
DSECT NAME; SOURCE MACRO TABLE ENTRY DSECT,
EDECK OUTPUT
CSECT/
DSECT
MODULE/
MCPOFCH
SMTENT
IPKGA
SMTENTR
SEQ SYM REFERENCE PROCESSOR
1. 1.3
IPKEAOOO
IPKEA
SMTSIZE
SIZE OF SMT BLOCK, ONE TIME INITIALIZER
1.1
PCOtJ!MON
IPKBA
SMTSRCH
GLOBAL EDIT
1.3
IPKFAOOO
IPKFA
SPACEOP
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAOOO
IPKPA
SRTDIR
POST PROCESSOR; XREF SORTING AND PRINTING
2.8.2
IPKRAOOO
IPKRA
SRTINIT
ENTRY POINT; POST PROCESSOR; XREF SORTING
AND PRINTING
2.8.2
IPKRAOOO
IPKRA
SRTLIT
ENTRY POINT, POST PROCESSOR; XREF SORTING
AND PRINTING
2.8.2
IPKRAOOO
IPKRA
SRTOUT
ENTRY POINT, POST PROCESSOR; XREF SORTING
AND PRINTING
2.8.2
IPKRAOOO
lPKRA
SRTRSA
POST PROCESSOR; XREF SORTING AND PRINTING
2.8.2
IPKRAOOO
IPKRA
*SSD
DSECT NAME; EXTERNAL SYMBOL DICTIONARY
*SSD
DSECT NAME; SEQUENCE SYMBOL DICTIONARY,
VARIABLE SYMBOL DECLARATION PROCESSOR
1.1.2
SSD
IPKDB
*SSD
DSECT NAME; SEQ SYM REFERENCE PROCESSOR
1.1.3
SSD
IPKEA
*SSD
DSECT NAME; DSECT FOR SSD ITEM, EDECK OUTPUT
SSD
IPKGA
SSD
SSDADDR
DA ADDR OF SSD, VARIABLE SYMBOL DECLARATION
PROCESSOR
1. 1.2
PCOMtJ!ON
IPKDB
SSDLKP
SEQ SYM REFERENCE PROCESSOR
1. 1.3
IPKEAOOO
lPKEA
STACKEL
DSECT NAME; STACK ELEMENT FORMAT, PHKGEN
STACKEL
IPKIA
STACKENT
DSECT NAME; STACK ENTRY, EXTERNAL SYMBOL
DICTIONARY
STACKENT
STARTR
SAVE INPUT POINTER, ASSIGNMENT PHASE
2.2.2
IPKKAOOO
IPKKA
STDIAG
EDECK OUTPUT
1.2
IPKGAOOO
IPKGA
STGET
EDECK OUTPUT
1.2
IPKGAOOO
IPKGA
STSMTGET
EDECK OUTPUT
1.2
IPKGAOOO
IPKGA
SYMADDR
POINTER TO START OF SYr1BOL TAB, ASSIGNMENT
PHASE
2.2.1
PCOMJ.~ON
IPKKA
SYMADDR
POINTER TO START OF SYMBOL TAB,
SUBSTITUTION PHASE
2.3
PCOMMON
IPKLA
TABENT
DSECT NAME; ATTRIBUTE PHASE
1.4
TABENT
IPKHA
TABOP
DSECT NAME; INTERPRETER TABLE, EXTERNAL
SYMBOL DICTIONARY
TABSTART
START OF ATTRIBUTE TABLE, ATTRIBUTE PHASE
1.4
IPKHAOOO
IPKHA
TITLEOP
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAOOO
IPKPA
TXTCARD
SOURCE AND OBJECT TEXT OUTPUT
2.7.1
IPKPAOOO
IPKPA
TABOP
*DATA AREA.
SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO AN OPERATIONS DIAGRAM IN THE METHOD OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
Directory
127
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
DSECT NAME; VALUE AREA SIZE DSECT, PHKGEN
VASIZE
IPKIA
*VSD
DSECT NAME; EXTERNAL SYMBOL DICTIONARY
VSD
*VSD
DSECT NAME; VARIABLE SYMBOL DECLARATION
PROCESSOR
VSD
IPKDB
*VSD
DSECT NAM.E; DSECT FOR VSD ITEM, EDECK OUTPUT
VSD
IPKGA
PCOMMON
IPKDB
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
VASIZE
1.1.2
VSDADDR
DA ADDR OF VSD IN CORE, VARIABLE SYMBOL
DECLARATION PROCESSOR
WORKAREA
DSECT NAME; WORKAREA WHERE ED. TXT IS BUILT,
PRE-PROCESSOR PHASE TO THE ASSEMBLER PHASES
WORKAREA
I PKJ A
*WORKDTF
DSECT NAME; DTFSD DSECT FOR 01 LOGIC, BASIC
INTERFACE ROUTINES AND PCOMMON
WORKDTF
IPKAA
*WORKDTF
DSECT NAME; DTFSD DSECT FOR 01 LOGIC, ONE
TIME INITIALIZER
WORKDTF
IPKBA
SOURCE AND OBJECT TEXT OUTPUT
2.7
IPKPAQOO
IPKPA
*XREFREC
DSECT NAME; THIS IS A DSECT TO DESCRIBE,
ASSIGNMENT PHASE
2.2
XREFREC
IPKKA
*XREFREC
DSECT NAME; THIS IS A DSECT TO DESCRIBE,
SUBSTITUTION PHASE
2.3
XREFREC
IPKLA
*XRFENTRY
DSECT NAME; XREF RECORD DESCRIPTION, POST
PROCESSOR; XREF SORTING AND PRINTING
XRFENTRY
IPKRA
*XRFENTRY
DSECT NAME; ENTRY IN BLOCK, POST PROCESSOR;
XREF SORTING
XRFENTRY
IPKRB
*XRFENTRY
DSECT NAME; ENTRY IN BLOCK, POST PROCESSOR;
XREF PRINTING
XRFENTRY
IPKRC
DSECT NAME; XREF BLOCK IDENTIFIERS, POST
PROCESSOR; XREF SORTING AND PRINTING
XRFTAB
IPKRA
WRTERROR
XRFTAB
128
Data Areas
Purpose of the Section
The purpose of this section is to assist you in
interpreting data areas in a storage dump. The
entries are listed in alphabetical order and
after each entry is a cross-reference of the
various fields and their displacements in the
data area.
The section contains those data areas referenced
by two or more modules of the assembler plus any
others which appear in -Method of Operation-.
The method-of-operation diagrams show how the
data areas are used by the assembler.
Immediately following the data areas is a crossreference listing of all the fields referred to
in this section, the name of the DSECT in which
they are located, and their displacement within
the DSECT.
Data Areas
129
DATA AREA:
SIZE:
CODE
2
CREATED BY: f
UPDATED BY:
FUNCTION:
DISPLMNT
DEC (HEX)
IPKSA,IPKSB
Description of an entry in the error message table.
SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANINGjUSE
0
(0)
2
CODEHWD
THE TWO-BYTE CODE CONTAINS
FOUR FLAG BITS PLUS A
12-BIT OFFSET IN GLOSSARY:
0
(0)
1
CODESW
FOUR FLAG BITS + FOUR OFFSET BITS
SFLAG
COtl.!MAFLG
ED FLAG
UNFLAG
1=S MODIFIER
1=COMMAMODIFIER
1=ED MODIFIER
1=UN MODIFIER
OFFSET
1 •••
• 1 ••
• • 1.
• •• 1
·... xxxx
1
2
(2)
FIELD
NAME
CODEHWD
CODESW
COMMAFLG
EDFLAG
NEXTCODE
SFLAG
UNFLAG
*POINTER
130
OFFSET
1
2
(1)
NEXTCODE
DISPLACEMENT
DECIMAL (HEX)
o
o
o
o
2
o
o
(0)
(0)
(0)
(0)
(2)
(0)
(0)
DIRENTRY
DATA AREA:
SIZE:
26
CREATED BY:}
IPKRA,IPKRB
UPDATED BY:
FUNCTION:
Description of an entry in the directory table.
DISPLMNT
DEC (HEX)
0
0
(0)
(0)
SIZE
22
3
3
(3)
5
11
11
17
(5)
(B)
(11)
2
6
11
6
2
19
(13)
1
(B)
••••
20
(14)
1 •••
6
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
DIRENT
CORADDR
OFFS
BLKNP1
KEY
BLKNP2
FILL
DIRECTORY TABLE
ADDR TO MERGE BUFF IN CORE
OFFSET TO RECORD IN BLOCK
DISK ADDR TO THIS BLOCK
SORT CONTROLFIELD
DISK ADDR TO NEXT BLOCK
NOT USED
FLAG
PROGRAM SWITCH
BLKINSW
1=BLOCK I S IN MAIN STORAGE
DEFVAL
BLOCK INFORMATION
(FIELD
NAME
BLKINSW
BLKINSW
BLKNP1
BLKNP2
*CORADDR
DIRENT
FILL
FLAG
KEY
OFFS
DISPLACEMENT
DECIMAL (HEX)
19
19
(13)
(13)
5
(5)
(B)
(0)
(0)
(11)
( 13)
(B)
(3)
11
0
0
17
19
11
3
*POINTER
Data Areas
131
EPDMI
DATA AREA:
SIZE:
Variable (depending upon different types of records)
CREATED BY:}
IPKCC,IPKDA, IPKDB,IPKFA,IPKHA, IPKIA
UPDATED BY:
FUNCTION:
DISPLMNT
DEC (HEX)
Description of an edited prototype or a macro instruction.
SIZE
o
(0)
1
6
(6)
1
• • 1.
1
8
(1)
.111
• •• 1 ••••
1
(1)
8
16
(8)
• •• 1 •• 1.
18
( 12)
PROGRAM SWITCH
SWPMI1
SWATRINS
SWSUBST
EDPMIORG
1:ST RECORD OF PROTO OR M-I
ATTRIBUTES TO BE INSER~ED (M-I)
SUBSTITUTION IN RECORD (M-I)
ONE OF THE FOLLOWING
LED PROT 1
LENGTH OF 1: ST PROTO RECORD
FIRST RECORD OF M-I
BACK LOCATION COUNTER
LMNAME
LENGTH OF MACRO NAME
MACNAM
MACRO NAME
INDEX
M-I INDEX NUMBER
1
8
2
( 10)
JSW0023
FIRST RECORD OF PROTOTYPE
LPNAME
LENGTH OF MACRO NAME
PRO NAME
MACRO NAME LEFT ADJUSTED
1
8
(8)
DESCRIPTION: CONTENTS,
MEANING/USE
COMMON HEADER (LNG=PCSRHEAD)
.'...
,1 •••
• 1 ••
FIELD
NAME
LOMIED1
LENGTH OF 1: ST OUTER M- I REC
FIRST RECORD OF INNER M-I
SEQFLD
SEQUENCE FIELD FROM CSR
8
••• 1 1.1.
LIMIED1
LENGTH OF 1:ST INNER M-I REC
1
(1)
1
SUBSEQUENT PROTO AND M-I RECORDS
BACK LOCATION COUNTER
ITEMT
TYPE FLAG
8
(8)
1
ITEMFLAG
PROGRAM SWITCH
NALTSRC
ITEM1ST
I TEMLISW
ITEMLONG
ITEMATSW
ITEMKWSW
ITEMSLSW
NEW OPD AFTER ALT STMT FORM
1ST ITEM OF MI OR PROTOTYPE
END ITEM SINGLE ON NEX~ RCD
ITEM LONGER THAN 255
ATTRIBUTES INSERTED (HA)
KEYWORD OPERAND SWITCH
SUBLIST OPERAND SWITCH
ITEML
ITEM LENGTH
ITEMLADD
LENGTH TO BE ADDED IF ITEMLONG
ITEM
ITEM CONTENT
,...
.1 ••
• • 1.
1 •••
.1 ••
• • 1.
••• 1
·...
9
(9)
1
·... .....
10
132
(A)
1
MODULO ITEMLADD
DISPLMNT
DEC
(HEX)
SIZE
FIELD
NAME
DESCRIPTION:
MEANING/USE
ITEMORG
IS ONE OF THE FOLLOWING
1. 1.
CONTENTS,
SYMBOL WITH T",L",S" AND I" ATTRIBUTE
BACK LOCATION COUNTER
SYM1 ITEM
SYMlITEM
TYPE ATTRIBUTE
SlITEMT
SlITEML
LENGTH ATTRIBUTE
SCALE ATTRIBUTE
SlITEMS
SlITEMI
INTEGER ATTRIBUTE
SlITEMK
COUNT ATTRIBUTE (STRING LEN)
SlITEMST
STRING
TYPES2
SYMBOL WITH T" AND L" ATTRIBUTE
BACK LOCATION COUNTER
SYM2ITEM
SYM2ITEM
S2ITEMT
TYPE ATTRIBUTE
S2ITEML
LENGTH ATTRIBUTE
S2ITEMK
COUNT ATTRIBUTE (STRING LE~
S2ITEMST
STRING
TYPECHAR SYMBOL/CHARACTER STRING WITH
T" ATTRIBUTE ONLY
BACK LOCATION COUNTER
CHARITEM
CHAR STRING ITEM AFTER ATTR
CHITEMT
TYPE ATTRIBUTE
CHITEMK
COUNT ATTRIBUTE
CHITEMST
STRING
TYPESDEF SELFDEFINING TERM
BACK LOCATION COUNTER
SDEFITEM
SELF-DEFINING TERM ITEM
SDITEMT
TYPE ATTRIBUTE
SDITEME
BINARY VALUE
COUNT ATTRIBUTE (STRING LEN)
SDITEMK
SDITEMST
STRING
TYPEBC
BASIC CHARACTER EXPRESSION
(STRING WITH SUESTITUTIO~
BACK LOCATION COUNTER
BASIC CHARACTERITEM
BCITEM
DUMMY BYTE
BCDUMMY
TYPES 1
10
10
11
13
15
17
18
10
10
(A)
(A)
(B)
(D)
(F)
(11 )
(12)
1
1
2
2
2
1
1
1
(A)
(A)
(B)
(D)
(E)
1
2
1
(A)
(A)
(B)
(C)
1
1
1
1
1
15
(A)
(A)
(B)
(E)
(F)
1
3
1
1
10
10
(A)
(A)
1
1
11
13
14
10
10
11
12
10
10
11
14
1
1111 1111
11
(B)
1
10
10
(A)
(A)
1
1
10
10
(A)
CA)
1
1
10
(A)
1
10
(A)
10
(A)
10
(A)
1
BCCOLUMN
COLUMN VALUE IN BC ITEM
BCITEMST
STRING
TYPESUBS SUBLIST START
BACK LOCATION COUNTER
SUBSITEM
SUBLIST START ITEM
SSITEMK
LENGTH OF SUBLIST OPD (K")
TYPESUBE SUELIST END
BACK LOCATION COUNTER
SUBEITEM
SUBLIST END ITEM
SEITEMN
NO OF SUBOPERANDS (N")
TYPEOM
OMITTED OPERAND OUTSIDE SUBLIST
BACK LOCATION COUNTER
OMITEM
OMITTED OPERAND ITEM
TYPEER
ERROR. FORMAT DESCRIBED IN OPDERAR
BACK LOCATION COUNTER
ERITEM
ERROR RECORD
TYPEPP
POSITIONAL PARAMETER (PROTOTYPE)
BACK LOCATION COUNTER
PITEM
POSITIONAL PARAMETER
TYPEKP
KEYWORD PARAMETER (PROTOTYPE)
TYPEK
KEYWORD (M- I)
BACK LOCATION COUNTER
KITEM
KEYWORD NAME
Data Areas
(cq
133
DISPLMNT
DEC (HEX)
SIZE·
FIELD
NAME
DESCRIPTION:
MEANING/USE
CONTENTS,
/
TYPEEND
10
10
11
END OF OPERAND ITEMS
BACK LOCATION COUNTER
ENDITEM
END ITEM
EITEMNP
NO OF POSITIONAL OPERANDS
NO OF KEYWORD OPERANDS
EITEMNK
ITEM TYPE FLAGS
2
1
1
(A)
(A)
(B)
1.1.
1. 1.
1.1.
1.1.
1.1.
1.1.
1.1.
1.1.
1.1.
1.1.
••• 1
•• 1.
•• 11
.. 1••
• 1.1
.11.
.111
1•••
1•• 1
1.1.
1.1. 1.11
1.1. 11 ••
1.1. 11.1
FIELD
NAME
BCCOLUMN
BCDUMMY
BCITEM
BCITEMST
CHARITEM
CHITEMK
CHITEMST
CHITEMT
EITEMNK
EITEMNP
ENDITEM
ERITEM
INDEX
ITEM
lTEMATSW
ITEMFLAG
ITEMKWSW
ITEML
ITEMLISW
ITEMLONG
ITEMSLSW
ITEMT
ITEM1ST
KITEM
LMNAME
LPNAME
MACNAM
NALTSRC
OMITEM
PITEM
PRONAME
SDEFITEM
SDITEMB
134
TYPEPP
TYPEJ(P
TYPES 1
TYPES2
TYPECHAR
TYPESDEF
TYPESUBS
TYPESUBE
TYPEBC
TYPEOM
TYPEER
TYPER
TYPEEND
POSITIONAL PROTOTYPE ITEM
KEYWORD PROTOTYPE ITEM
SYMBOL WITH ALL ATTRIBUTES
SYMBOL WITH T' AND L' ATTR
CHARACTER STRING (T' ATTR ONLY)
SELFDEFINING TERM ITEM
SUBLIST START ITEM
SUBLIST END ITEM
BASIC CHARACTER EXPR M-I ITEM
OMITTED OPERAND OUTSIDE SUBLIST
ERROR RECORD ITEM
KEYWORD M-I ITEM
END OF OPERANDS ITEM
DISPLACEMENT
DECIMAL (HEX)
10
10
10
11
10
11
12
10
11
10
10
10
16
10
(A)
(A)
(B)
(A)
1
(1)
8
(8)
1
1
(1)
(1)
8
8
(8)
(8)
8
10
11
7'
(C)
(A)
(B)
(A)
(A)
(A)
(10)
(8)
(8)
(8)
(9)
(8)
(8)
(8)
10
10
"'-.,
(A)
(1\)
8
8
8
9
8
8
8
10
/'
(A)
(A)
(A)
(A)
(8)
(A)
(B)
/{"
~j
FIELD
NAME
r~
(=-c.
SDITEMK
SDITEMST
SDITEMT
SEITEMN
SEQFLD
SSITEMK
SUBEITEM
SUBS ITEM
SWATRINS
SWPMI1
SWSUBST
SYMlITEM
SYM2ITEM
SlITEMI
SlITEMK
SlITEML
SlITEMS
S1ITEMST
SlITEMT
S2ITEMK
S2ITEML
S2ITEMST
S2ITEMT
TYPEBC
TYPECHAR
TYPEEND
TYPEER
TYPEK
TYPEKP
TYPEOM
TYPEPP
TYPESDEF
TYPESUBE
TYPESUBS
TYPES1
TYPES2
DISPLACEMENT
DECIMAL (HEX)
14
15
10
10
18
10
10
10
(A)
(A)
(12)
(A)
(A)
(A)
6
6
6
(6)
(6)
(6)
10
10
15
17
11
(A)
13
18
10
13
11
14
10
11
11
11
11
11
11
11
11
11
11
11
11
11
(E)
(F)
(A)
(F)
( 11)
(B)
(D)
(12)
(A)
(D)
(B)
(E)
(A)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
*POINTER
C-"·
.. :'"
Data Areas
135
DATA AREA:
SIZE:
EPAR
Variable
CREATED BY:}
UPDATED BY:
FUNCTION:
DISPLMNT
DEC (HEX)
0
~epending
IPRIA
Description of an entry in the parameter table.
SIZE
1
(0)
....
1
( 1)
2
(2)
upon different parameters)
.1-11
1
1
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
EPARFLAG
ENTRY FLAG
FLAGPMSR
SIGNIFICANT BITS OF EPARFLAG
EPART
EPARREST
TYPE ATTRIBUTE
REST OF ENTRY (LNG=VARIABLE)
NEW TYPE OF ENTRY
••••••••••••••••••••••••••••••••••••••••••
• FLAG. BINARY VALUE • LENGTH • STRING •
••••••••••••••••••••••••••••••••••••••••••
1
1
0
0
(0)
(0)
1
5
( 1)
(5)
4
6
(6)
4
1
....
SYSINDEX
INDXENT
INDXFLAG
INDXB
INDXCL
INDXC
SYSNDX ENTRY
ENTRY FLAG A1
BINARY VALUE
LENGTH OF CHARACTER STRING
CHARACTER STRING
INDXLEN
ENTRY LENGTH
"'I'~
1. 1.
••••••••••••••••••••••••••••••••••••••••••
• FLAG • T' • R' + STRING
•
••••••••••••••••••••••••••••••••••••••••••
10
10
11
12
13
(A)
(A)
(B)
(C)
(D)
1
1
1
1
8
1. 1.
• • • 1 .1 ••
SYSECT
SECTENT
SECTFLAG
SECTCT
SECTCL
SECTC
SYSECT ENTRY
ENTRY FLAG A5
TYPE ATTRIBUTE
LENGTH OF CHARACTER STRING
CHARACTER STRING
SECTLEN
NAMEENT
ENTRY LENGTH
NAME ENTRY FOLLOWS
NEW TYPE OF ENTRY
••••••••••••••••••••••••••••••••••••••••••••••••••••
• FLAG. T' • L' • S' • I' • R' • STRING.
••••••••••••••••••••••••••••••••••••••••••••••••••••
o
o
136
(0)
1
(0)
1
SYM1ENT
SYM1FLAG
SYMBOL WITH
ALL ATTRIBUTES
SYMBOL WITH ALL ATTRIBUTES
ENTRY FLAG A3
/
DISPLMNT
DEC (HEX)
1
(1)
2
(2)
(4)
(6)
(8)
4
6
8
9
(9)
SIZE
1
2
2
2
1
1
FIELD
NAME
DESCRIPTION:
MEANINGjUSE
SYM1T
SYM1L
SYM1S
SYMlI
SYM1K
SYM1C
TYPE ATTRIBUTE
L' ATTRIBUTE
S' ATTRIBUTE
I' ATTRIBUTE
K' ATTRIBUTE
CHARACTER STRING (LMG=K')
(LNG=VARIABLE)
NEW TYPE OF ENTRY
•••••••••••••••••••••••••••••••••••••••••
• FLAG. T' • L' • K' • STRING
•
•••••••••••••••••••••••••••••••••••••••••
o
o
(0)
(0)
1
2
(1)
4
5
(2)
(4)
(5)
1
1
1
2
1
1
SYM2ENT
SYM2FLAG
SYM2T
SYM2L
SYM2K
SYM2C
SYMBOL WITHOUT S'
AND I' ATTRIBUTES
SYMBOL WITH SOME ATTRIBUTES
ENTRY FLAG A4
TYPE ATTRIBUTE
L' ATTRIBUTE
K' ATTRIBUTE
CHARACTER STRING (LNG=K')
(LNG=VARIABLE)
NEW TYPE OF ENTRY
••••••••••••••••••••••••••••••••••••••
• FLAG. T' • K' •
STRING
•
••••••••••••••••••••••••••••••••••••••
o
o
1
2
3
(0)
(0)
(1)
(2)
(3)
1
1
1
1
1
CHARENT
CHARFLAG
CHART
CHARK
CHARC
CHARACTER STRING
CHARACTER STRING
ENTRY FLAG A5
TYPE ATTRIBUTE
K' ATTRIBUTE
CHARACTER STRING (LNG = K')
(LNG=VARIABLE)
NEW TYPE OF ENTRY
•••••••••••••••••••••••••••••••••••••••••••••••
• FLAG. T' • BINARY VALUE. K' • STRING •
•••••••••••••••••••••••••••••••••••••••••••••••
0
0
(0)
(0)
1
1
1
(1)
2
5
6
(2)
(5)
(6)
1
3
1
1
SDEFENT
SDEFFLAG
SDEFT
SDEFB
SDEFK
SDEFC
CONTENTS,
SELFDEFINING TERM
SELFDEFINING TERM ENTRY
ENTRY FLAG A6
TYPE ATTRIBUTE
BINARY VALUE
K' ATTRIBUTE
CHARACTER STRING (LNG = K')
(LNG=VARIABLE)
NEW TYPE OF ENTRY
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••
••••••••••••••••••••••••••••••••••
• SUBEFLAG • SUBENTRY • END FLAG • SUBLIST
• SUBENTRY •
•••••••••••••
••••••••••••••••••••••••••••••••••
• FLAG • ENTRY LENGTH • N' • K' • START FLAG • SUBENTRY • SUBEFLAG •
o
o
o
(0)
(0)
(0)
1
6
1
SUBLENT
SUBLHEAD
SUBLFLAG
SUBLIST ENTRIES
HEADER
ENTRY FLAG A7
Data Areas
137
DISPLMNT
DEC
(HEX)
3
4
5
6
7
SIZE
1
(3)
(4)
(5)
1
1
.1
1
(6)
(7)
FIELD
NAME
DESCRIPTION:
MEANING/USE
SUBLN
SUBLK
SUBEFLAG
SUBEL
SUBE
N' ATTRIBUTE
K' ATTRIBUTE
SUBENTRY FLAG
SUBENTRY LENGTH
SUB ENTRY TYPE A3,A4,A5,A6
(LNG=VARIABLE)
****************.************************************
*
*
*
**
**
SUBEFLAG DS
SUBEL
DS
SUBE
DS
CLl
NEXT
eLl
SUB
XL (VARIABLE)
ENTRY (LNG=VARIABLE)
*
*
*
*
*
ETC
SUBLEND DS
CLl
SUBLIST END FLAG (AS)
**
*****************************************************
FIELD
NAME
CHARC
CHAR FLAG
CHARK
CHART
EPARFLAG
EPARREST
EPAR'l'
FLAGPMSK
INDXB
INDXC
INDXCL
INDXFLAG
SDEFB
SDEFC
SDEFFLAG
SDEFK
SDEFT
SECTC
SECTCL
SECTFLAG
SUBE
SUBEFLAG
SUBEL
SUBLFLAG
SUBLHEAD
SUBLK
SUBLL
SUBLN
SYM1C
SYM1FLAG
SYM1I
SYM1K
SYM1L
SYM1S
SYM1T
SYM2C
SYM2FLAG
SYM2K
SYM2L
SYM2T
*POINTER
138
DISPLACEMENT
DECIMAL (HEX)
3
0
(3)
(0)
2
(2)
1
0
2
1
(1)
0
(0)
(2)
(1)
(0)
1
(1)
6
(6)
5
(5)
(0)
(2)
(6)
0
2
6
0
5
1
12
11
10
(0)
(5)
(1)
(C)
(B)
(A)
7
(7)
5
(5)
6
0
0
(6)
(0)
(0)
4
1
(4)
3
9
0
6
(3)
(9)
(0)
S
2
4
1
5
(1)
(6)
(S)
(2)
(4)
(1)
(5)
0
(0)
4
2
1
(4)
(2)
(1)
CONTENTS,·
ERRBYTES
DATA AREA:
SIZE:
11
CREATED BY:}
IPKKA,IPKLA
UPDATED BY:
FUNCTION:
Description of an entry in the error stack.
DISPLMNT
DEC (HEX)
FIELD
SIZE
DESCRIPTION: CONTENTS,
MEANING/USE
ERROR NUMBER
0
0
0
(0)
(0)
(0)
11
1
ERRAREA
ERRCONST
ERRNO
1
(1)
1
ERRSW
PROGRAM SWI'l'CH
TEXT
OPND
TAKE STRING FROM SAVE AREA
TAKE OPERAND NUMBER
ERRLNG
ERRTXT
RINPT OR RWJA
2
....
1 •••
.1 ••••••
2
3
(--
NAME
(2)
(3)
FIELD
NAME
ERRAREA
ERRCONST
ERRL~
ERRNO
ERRSW
ERRTXT
OPND
TEXT
1
8
DISPLACEMENT
DECIMAL (HEX)
0
0
2
0
(0)
(0)
(2)
(0)
1
(1)
3
(3)
1
1
(1)
(1)
*POINTER
(
'"
,J'
Data Areas
139
ERRENT
DATA AREA:
SIZE:
8
CREATED BY: }
IPKDA,IPKDB
UPDATED BY:
FUNCTION:
Description of
DISPLMNT
DEC (HEX)
an
entry in the error stack.
FIELD
NAME
SIZE
DESCRIPTION: CONTENTS,
MEANING/USE
0
(0)
2
ERRINFO
0
(0)
1
JSW0025
PROGRAM SWITCH
SWSTR
STRING WANTED XSWITCH
ERRNO
STRPTR
EOFLDPTR
ERROR NUMBER
STRING POINTER (RINPT)
CURRENT END OF FIELD (EOPPTR)
ERRENTL
NOSTR
STACK ENTRY LENGTH
OMITTED STRING IN ERROR RECORD
....
0
2
5
(0)
(2)
(5)
••• 1
1
3
3
....
1 •••
.... ....
STRING REQUIRED/NOT REQUIRED INDICATORS IN ERROR CALL
••• 1
FIELD
NAME
EOFLDPTR
ERRINFO
ERRNO
NOSTRING
STRING
STRPTR
SWSTR
*POINTER
140
DISPLACEMENT
DECIMAL (HEX)
5
o
(5)
(0)
o
(0 )
5
5
2
(5)
(5)
(2)
(0)
o
STRING
NOSTRING
STRING,REQUIRED
STRING NOT REQUIRED
./
DATA AREA:
SIZE:
ESDENTRY
16
CREATED BY:}
IPKKA,IPKMA
UPDATED BY:
FUNCTION:
DISPLMNT
DEC (HEX)
Description of an entry in the ESD table.
SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
IN THE ESD TABLE
0
0
· ... ·...
SDTYPE
1
VSDTYPE
(0)
·...
0
• •• 1
(0)
· .1.
f-'
0
• 1 ••
·...
0
(0)
.1.1
0
(0)
1 •••
0
(0)
1 •• 1
VCTYPE
VVCTYPE
1
·...
DSTYPE
VDSTYPE
1
·...
CMTYPE
VCMTYPE
1
· ...
PC TYPE
VPCTYPE
1
(0)
ERTYPE
VERTYPE
1
· ...
LDTYPE
VLDTYPE
1
(0)
· ...
0
ESDTYPE
1
(0)
1.1.
WXTYPE
0
0
(0)
(0)
1
1
VWXTYPE
2
3
3
8
1
ESDESDID
ESDLCTR
ESDHILC
ESDSYM
ESDNXT
1
(1)
3
6
(3)
(6)
9
17
(11)
(9)
•
•
•
•
•
ESDID
CURRENT LOCCNTR OF CONT. SEC
HIGHEST LOCCNTR OF CONT. SEC
SYMBOL
NEXT ENTRY
Data Areas
141
FIELD
NAME
CMTYPE
DSTYPE
ERTYPE
ESDESDID
·ESDHILC
·ESDLCTR
ESDNXT
ESDSYM
ESDTYPE
LDTYPE
PCTYPE
SDTYPE
VCMTYPE
VCTYPE
VDSTYPE
VERTYPE
VLDTYPE
VPCTYPE
VSDTYPE
VVCTYPE
VWXTYPE
WXTYPE
·POINTER
142
DISPLACEMENT
DECIMAL (HEX)
0
0
0
(0)
(0)
(0)
1
(1)
6
(6)
3
17
(3)
9
0
0
0
0
0
0
(9)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
0
0
0
0
0
0
0
0
(11)
EVALSTCK
DATA AREA:
SIZE:
7-9
CREATED BY:}
IPKKA,IPKLA
UPDATED BY:
FUNCTION:
Description of an entry in the evaluate routine stack.
DISPLMNT
DEC (HEX)
f-"
SIZE
0
(0)
1
(1)
1
4
5
(5)
2
7
(7)
1
5
(5)
1
6
(6)
8
10
(8)
2
2
1
(A)
0
(0)
1
1
3
(1)
(3)
2
1
0
(0)
2
FIELD
NAME
EVALUE
EVLENGTH
EVNXT
EVPLUS
EVRELOC
EVVARY
NXTRA
PLORMIN
RANR
RAONE
RELLEN
STLENGTH
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
RANR
EVALUE
EVLENGTH
EVVARY
NUMBER OF REL ATTR O=ABSOLUTE
VALUE
LENGTH OF ABSOLUTE ENTRY
END OF ABSOLUTE ENTRY
ORG BEFORE LENGTH FOR VAR ENTRY
SIGN
RELOCATION ATTRIBUTE
LENGTH OF ENTRY IN STACK
NEXT ENTRY IN STACK
SAME BUT WITH DISPLACEMENT=O
SIGN
RELOCATION ATTRIBUTE
NEXT PAIR OF SIGN AND RELATTR
DISPLACEMENT = 0
LENGTH OF STACK ENTRY
AT END OF ENTRY
EVPLUS
EVRELOC
RELLEN
EVNXT
PLORMIN
RAONE
NXTRA
STLENGTH
DISPLACEMENT
DECIMAL (HEX)
1
(1)
5
10
5
(5)
(A)
(5)
6
7
3
(6)
(7)
(3)
0
0
(0)
(0)
1
(1)
8
(8)
0
(0)
*POIN'l'ER
Data Areas
143
GARD
DATA AREA:
SIZE:
7
CREATED BY:}
IPKDB,IPKFA
UPDATED BY:
FUNCTION:
Description of the global array.
DISPLMNT
DEC (HEX)
0
2
(2)
6
(6)
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
2
1
1
GARLEN
GARFLAG
RECORD LENGTH
GLOBAL ARRAY lOP (LNG=PCSRIOp)
NOT USED
• • •• .111
GAR ITEM
DESCRIBED BY DSECT GARENT
SIZE
(0)
FIELD
NAME
GAR FLAG
GARLEN
*POINTER
DISPLACEMENT
DECIMAL (HEX)
6
o
(6)
(0)
'",-,-
/
,f1{" - "
(,
"----,'
144
GARENT
DATA AREA:
SIZE:
4-6
CREATED BY: }
IPKDB,IPKFA
UPDATED BY:
FUNCTION:
Description of a global array item.
DISPLMNT
DEC (HEX)
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
GARTYPE
GARNDX
GARLGTH
TYPE OF GLOBAL SYMBOL
GLOBAL SYMBOL INDEX
LENGTH OF SYMBOL NAME
GARSYM
SYMBOL NAME, VARIABLE LENGTH
2
GARDIM
DIMENSION
1111 1111
GAR END
INDICATES LAST GAR
SIZE
0
(0)
1
1
(1)
2
3
(3)
1
....
4
(4)
FIELD
NAME
(
GARDIM
GAREND
GARLGTH
GARNDX
GARTYPE
• 1 ••
DISPLACEMENT
DECIMAL (HEX)
4
4
3
(4)
(3)
1
(1)
0
(0)
(4)
*POINTER
Data Areas
145
DAil'A AREA:
StZE:
GSDENTRY
5-11
CREATED BY:}
UPDATED BY:
FUNCTION:
IPKFA
Description of an entry in the global symbol dictionary.
DISPLMNT
DEC (HEX)
SIZE
FIELD
NAME
GSDTYPE
GSDNDX
GSDLEN
. GSDSYM
GSDDIM
3
(0)
(1)
(3)
4
4
(4)
(4)
1
2
1
7
2
3
(3)
1
GSDFLG
1111 1111
1111 1. 1.
•• 1.
EGSD
EGSDB
DIMBIT
0
1
....
FIELD
NAME
DIMBIT
EGSD
EGSDB
GSDDIM
GSDFLG
GSDLEN
GSDNDX
GSDSYM
GSDTYPE
*POINTER
146
DISPLACEMENT
DECIMAL (HEX)
3
3
3
(3)
(3)
(3)
(4)
(3)
(3)
1
( 1)
3
3
4
4
(4)
0
(0)
DESCRIPTION: CONTENTS,
MEANING/USE
SYMBOL TYPE
INDEX NUMBER
LENGTH OF SYMBOL NAME
SYMBOL NAME
DIMENSION
LENGTH AND FLAG HAVE SAME ADDR.
ENDFLAG
END OF GSD
END OF GSD BLOCK
BIT6 IN GSOTYPE IS ON IF
SYMBOL DIMENSIONED
"
"
~-
./
DATA AREA:
SIZE:
UJCPl'AB
232
CREATED BY: }
UPDATED BY:
FUNCTION:
DISPLMNT
DEC (HEX)
0
IPKAF,IPKAG,IPKTA '
Table used by CPMOD.
SIZE
30
(0)
•• 1.
•• 11
.....
....
....
.1 ••
1 •••
••• 1 .11.
30
40
(-
(1E)
10
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
IJJCPCCB
CCB. ADDR OF LOGIC, DTF TYPE,
OPEN SW, FILE NAME
1ST COMMUNICATION BYTE
2ND COMMUNICATION BYTE
CSW STATUS
CCW ADDR
FILE NAME
IJJCOMBT
IJJCMB'l'2
IJJCPCB4
IJJCPTCB
IJJFLNME
IJJCPF1
•• 1 •••••
IJJCPLD2
2
IJJCPXTN
•• 1. 1 •••
IJJCPHCD
(28)
42
43
44
45
48
52
54
(2A)
(2B)
(2C)
(2D)
(30)
(34)
(36)
1
1
1
3
4
2
6
•• 11 1•••
IJJCPSWS
IJJC2NSW
IJJALSW
IJJCP2ND
IJJCPSCW
IJJLOHED
IJJCPMAX
IJJCCWE1
60
64
(3C)
(40)
4
4
IJJCPSEK
IJJCPREC
.1 ••••••
IJJCCWE2
....
.1 ..
68
72
(44)
(48)
4
1
.1 •• 1 •••
,
F1 ADDR, WORK AREA OR FLAG
SEQ. NO. & OPEN SW
LOAD INSTRUCTION FOR SYSTEM UNIT
XTNT SEQ. NO. OF LAST XTN'l' ,.'
WORK AREA
FOR ADJUSTMENT OF PUNCH CODE
INDICATOR FOR OPEN AND LOGIC
LOGICAL INDICATORS
I/O AREA
CCW OR WORK AREA
HH LOWER HEAD LIMIT
CCHH uPPER LIMIT , BB SEEK ADDR
PUNCH ERROR CCW IF DEVICE IS
2540 PUNCH
CCHH
IJJCPREAD
IJJCPUPP
IJJCPRMX
PUNCH ERROR CCW2 IF DEVICE IS
2540 PUNCH
EOF ADD
UPPER LIMIT
NO. OF RECORDS/TRACK
IJJCPSV1
80 BYTE CARD IMAGE SAVEAREA
Data Areas
147
DISPLMNT
DEC
(HEX)
73
74
76
80
82
84
88
112
128
152
SIZE
(49)
(4A)
(4C)
(50)
(52)
(54)
(58)
(70)
(80)
(98)
1
2
4
2
2
4
24
16
24
8
1 •• 1 1 •••
160
168
FIELD
NAME
IJJALSW
IJJCPAD.J
IJJCPCCB
IJJCPCCW
IJJCPCNT
IJJCPCTR
IJJCPDAT
IJJCPF1
IJJCPMAX
IJJCPREC
IJJCPRMX
IJJCPSCW
IJJCPSEK
IJJCPSST
IJJCPSWS
IJJCPUPP
IJJCPVER
IJJCPXTN
IJJCP2ND
IJJC2NSW
IJJECCW1
IJJECCW2
IJJFRSTR
IJJLOAD
IJJLOHED
IJJSAVEA
*POINTER
148
DESCRIPTION:
MEANING/USE
IJJFRSTR
IJJCPADJ
IJJCPCNT
IJJCPCTR
IJJCPDAT
IJJLOAD
IJJCPSST
IJJCPCCW
IJJCPVER
IJJECCW1
1 FIRST REC FOR INPUT OR OUTPUT
ADJUSTMENT FOR CCW ADDRESS
CCHH
COUNT FlELD
RECORD & KEY LENGTH
DATA LENGTH
IJJCPSV2
80 BYTE CARD IMAGE SAVEAREA
IJJECCW2
·IJJSAVEA
8
64
(AO)
(A8)
FIELD
NAME
QONTENTS.,
SEEK, SEARCH, TIC CCW'S
CCW'S FOR INPUT AND OUTPUT
VERIFY CCW'S
2540 PUNCH ERROR CCW1
2540 PUNCH ERROR CCW2
RESERVED FOR SAVE AREA
DISPLACEMENT
DECU1AL (HEX)
44
74
0
112
76
80
82
30
54
64
72
48
60
88
42
68
128
40
45
43
152
160
73
84
52
168
(2C)
(4A)
(0)
(10)
.(4C)
(50)
(52)
( 1E)
(36)
(40)
(48)
(30)
(3C)
(58)
(2A)
(44)
(80)
(28)
(20)
(2B)
(98)
(AO)
(49)
(54)
(34)
(A8)
.. ".
\~.. ,,/
/
I
INDENTRY
DATA AREA:
r
SIZE:
17
CREATED BY: }
IPKRA,IPKRB
UPDATED BY:
FUNCTION:
Description of an entry in an index table.
DISPLMNT
DEC
(HEX)
o
o
(0)
(0)
11
(B)
FIELD
NAME
INDENT
INDKEY
INDNP
(
SIZE
17
11
6
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
INDENT
INDKEY
INDNP
LOWEST KEY IN A DIRECTORY BLK
NOTE VALUE TO DIR BLOCK
DISPLACEMENT
DECIMAL (HEX)
o
o
(0)
(0)
11
(B)
*POINTER
Data Areas
149
';i
KEYTAB
DATA AREA:
SIZE:
7
CREATED BY: }
IPKDB,IPKFA,IPKIA
uPDATED BY:
FUNCTION:
Description of the keyword table.
DISPLMNT
DEC (HEX)
SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
0
2
(0)
(2)
2
1
KWTLEN
6
(6)
1
JSW0032
RECORD LENGTH
KEYWORD TABLE lOP
(LNG=PCSRrOp)
PROGRAM SWITCH
SWLASTKW
KWT I TEM
INDICATES LAST RECORD
DESCRIBED BY DSECT KWTENT
....
1.•••
• • •• .111
FIELD
NAME
KWTLEN
SWLASTKW
*POINTER
150
DISPLACEMENT
DECIMAL (HEX)
o
6
(0)
(6)
(This page intentionally left blank.)
r
Data Areas
151
MNAENT
DATA AREA:
SIZE:
4-11
CREATED BY: }
IPKCA,IPKCC,IPKCD,IPKFA
UPDATED BY:
FUNCTION:
Description of an entry in the macro name array.
DISPLMNT
DEC (HEX)
SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
2
1
MNANDX
MNALEN
3
(0)
(2)
(3)
8
MAN
2
(2)
1
EFLG
INDEX NUMBER OF MACRO
LENGTH OF NAME
NAME 1-8 CHARS
BACK TO LENGTH
END OF BLOCK END OF ARRAY FLAG
MAXENTL
EMNA
EMNAB
MAX ENTRY PLUS END FLAG
END OF MNA FLAG
END OF MNA BLOCK FLAG
0
2
111.
1111 1111
1111 1. 1.
FIELD
NAME
EFLG
EMNA
EMNAB
MAN
MNALEN
MNANDX
*POINTER
152
DISPLACEMENT
DECIMAL (HEX)
2
2
2
(2)
3
(3)
2
(2)
0
(0)
(2)
(2)
DATA AREA: NTABFMT
SIZE:
2
CREATED BY: }
IPKNA
UPDATED BY:
FUNCTION:
Description of an entry in an error table.
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
.... ....
NENTRYl
FIRST ENTRY
1
NERNUMB
ERROR NUMBER
NENTRY2
SECOND ENTRY
NOPRNUMB
OPERAND NUMBER
DISPLMNT
DEC (HEX)
0
SIZE
(0)
.....
1
r
1
(1)
FIELD
NAME
NERNUMB
NOPRNUMB
••• 1
DISPLACEMENT
DECIMAL (HEX)
0
(0)
1
( 1)
*POIN'l'ER
Data Areas
153
OCSTMH
DATA AREA:
SIZE:
13
CREATED BY:}
IPKDB,IPKEA
UPDATED BY:
FUNCTION:
Description of the open code start record.
DISPLMNT
DEC (HEX)
o
7
SIZE
(0)
(7)
NAME
LOCS'l'MH
NPMIB
DESCRIPTION: CONTENTS,
MEANING/USE
NPMIB
HEADER AND FLAG A (LNG=
N/P TO INFO-BLOCK (LNG=PNPRW)
LOCSTMH
EA LENGTH OF OCST MHR
1
1
•• 1• • 1.1
FIELD
FIELD
NAME
DISPLACEMENT
DECIMAL (HEX)
7
7
(7)
(7)
*POINTER
.1~
'~
154
DATA AREA:
SIZE:
[
PCOMMON
Variable
CREATED BY:}
All modules except: IPKAC,IPKAF,IPKAG,IPKAJ
UPDATED BY:
FUNCTION: Description of all common data areas and equates between the
modules.
DISPLMNT
DEC (HEX)
SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
WHOLE ASSEMBLER
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
•
BRANCH TABLE FOR THE INTERFACE MACROS
•
•
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
CODE FOR LINKAGE TO TRACE PROGRAM
84
r
NO COMMENTS
6
(54)
.1.1 1.1.
PABEND
BYPASS INTERFACE ROUTINES
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
EQUATES FOR WORK AREA LENGTHS. PWA$X MEANS LENGTH OF •
••
•
WORK AREA FOR FILE $ IN PHASE X
•
•
•
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•. 1. 11 ••
1 •• 1
• .1. 11 ••
1 •• 1
1 •• 1
• . 1. 11 ••
1 •• 1
· .1. 11 ••
1 •• 1
1 •• 1
11 ••
1. 1.
11 ••
1. 1.
• •• 1 1.1.
• •• 1 1. 1.
• •• 1 1. 1.
• • 1.
• •• 1
• . 1.
• •• 1
PWA2C
PWA1D
PWA2D
PWA1E
PWA2E
PWA3E
PWA2F
PWA3F
PWA1I
PWA2I
PWA3I
PWA2J
PWA3J
PWA1K
PWA1L
PWA2L
PWA1N
PUT
PUT
GET
GET
PUT
PUT
GET
PUT
GET
GET
PUT
PUT
GET
COMPRESSED SOURCE RECORDS
CSR AND EDITED TEXT RCDS
CSR FROM C
CSR AND EDITED TXT FROM 0
OC CSR AND EDITED TEXT
MACRO CSR
OC CSR AND EDITED TXT FR E
ERROR RCDS
MACRO CSR AND EDITED TXT
OC CSR AND EDITED TEXT
GENERATED CSR
EDITED RCD
COMPRESSED SOURCE RCD
TRANSFER RCD FROM L TO N
GET ED RCD WRITTEN BY J
RECEIVE RCD FROM L
('
~'
Data Areas
155
DISPLMNT
DEC
SIZE
• •• 1 1. 1.
• •• 1 1. 1.
• .... 1 1. 1.
• •• 1 1. 1.
.... 1 1. 1.
• • 1. 11 ••
FIELD
NAME
DESCRIPTION:
MEANING/USE
CONTENTS,
PWA2N
PWA10
PWA20
PWA1P
PWA2P
PWA3P
TRANSFER RCD FROM 0 TO P
GET RCD WRITTEN BY N
RECEIVE RCD FROM 0
GET COMPRESSED SOURCE RCD
***************************************************************
*
*
INTERNAL CODE EQUATES
*
*
*
*
***************************************************************
PO
P1
P2
P3
P4
P5
p6
P7
P8
P9
A
B
C
D
E
F
G
NUMBER 0
1
2
3
4
5
6
7
8
9
LETTER A
B
C
D
E
F
G
.. '•• 1
H
H
• .. 1 •
I
I
J
J
• •• 1
• . 1.
• • 11
• 1 ••
• 1. 1
• 11.
• 111
1 ....
1 •• 1
1. 1.
1. 11
11 ••
11. 1
111.
1111
..... 1
.... 1
.. • • 1
• ... 1
• •• 1
.... 1
.... 1
• •• 1
• ... 1
•• 11
.. 1 ••
K
K
.1.1
• 11.
• 111
L
N
0
P
Q
R
S
T
U
V
W
L
M
N
0
P
Q
R
S
T
U
V
W
X
X
Y
Z
DOLLAR
NUMBER
AT
EQUAL
LPARN
PLUS
MINUS
ASTER
SLASH
RPARN
Y
1 •••
• .... 1 1 •• 1
.. .. .. 1 1. 1•
...... 1 1. 11
.. .. .. 1 11 ••
...... 1 11. 1
.. .. .. 1 111 •
...... 1 1111
.. .. 1.
.. ..
.. ..
....
.. ..
• ..
.. ..
.. ..
....
.. ..
.. ..
...
.. ..
.. ..
156
1.
1.
1 ..
1.
1.
1.
1.
1 ..
1.
1.
1 ..
1 ..
1.
• •• 1
.. .. 1 •
• • 11
.. 1 ...
.1. 1
.11 •
• 111
1 •••
1 •. 1
1. 1.
1. 11
11 ••
11. 1
M
Z
$
It
01
SPEC.
=
(
+
*
/
)
(~
""~/
DISPLMNT
DEC
(HEX)
SIZE
· .1.
•• 1.
• • 11
• • 11
• • 11
111.
1111
• •• 1
· .1.
1 •• 1
1.1.
• . 1. • 11.
• • 1. 1 •• 1
• . 1. 11 ••
· ....
FIELD
NAME
COMMA
BLANK
QUOTE
AMPER
DOT
NUMMIN
NUMMAX
ALFAMIN
ALFAMAX
OPERMIN
OPERMAX
DESCRIPTION:
MEANING/USE
CONTENTS,
,
BLANK
MINIMUM
MAXIMUM
MINIMUM
MAXIMUM
MINIMUM
MAXIMUM
NUMBER CODE
NUMBER CODE
ALPHA CODE
ALPHA CODE
OPERATOR CODE
OPERATOR CODE
***************************************************************
**
*
*
PSEUDO OPERATION CODE EQUATES
*
*
*
NOTE: THE ASSEMBLER CODE IS DEPENDENT ON THE ORGANI- *
*
*
ZATION OF THE OP-CODES. SHOULD IT BE CHANGED
*
*
THE CODE MAY HAVE TO BE UPDATED
*
*
*
****************************************************************
r-
• •• 1
• • 1.
• .11
• 1 ••
·...
·...
• 1. 1
• 11.
• 111
1 •••
1 •• 1
1.1.
1.11
11 ••
11.1
111.
1111
• •• 1
• •• 1 • •• 1
• •• 1 •• 1.
• •• 1 • .11
• •• 1 • 1 ••
• •• 1 .1.1
• •• 1 .11.
• •• 1 • 111
• •• 1 1 •••
••• 1 1 •• 1
• •• 1 1.1.
• •• 1 1.11
SUBST
REPROED
PUNCH
CNOP
ORG
END
ENTRY
EXTRN
WXTRN
USING
DROP
DC
DS
DCL
EQU
EQUL
CCW
START
CSECT1ST
LTORG
CSECT
DSECT
COM
REPRO
EJECT
PRINT
SPACE
TITLE
SUBSTITUTED OP-CODE
REPROED STATEMENT
PUNCH
CNOP
ORG
END
ENTRY
EXTRN
WXTRN
USING
DROP
DC
DS
LITERAL DC
EQU
LITERAL EQU
CCW
START
START OF 1ST CSECT
LTORG
CSECT
DSECT
COM
REPRO
EJECT
PRINT
SPACE
TITLE
Data Areas
157
DISPLMNT
DEC (HEX)
SIZE
• •• 1 11 ••
• •• 1 11.1
• •• 1 111.
•.•• 1 1111
· .1.
•• 1.
· .1.
• .1.
• .1.
• .1."
•• 1.
•• 1.
• •• 1
.•• 1•
•• 11
.1 ••
.1.1
• 11 •
• 111
• .1. 1 •••
1 •• 1
1.1.
1.11
11 ••
• .1. 11.1
'• . 1. 111.
• • 1. 111.
•• 1. 1111
• .1. 1111
•• 11
• .11 • •• 1
• • 11 •• 1.
•• 11 •• 11
•• 11 .1 ••
•• 11 .1.1
• .11 • 11.
• • 11 .111
• • 11 1 •••
• .11 1•• 1
• .11 1. 1.
• .11 1. 11
• • 11 11 ••
• .11 11.1
• .11 111.
• • 1.
'• • 1.
•• 1.
• .1.
FIELD
NAME
DESCRIPTION:
MEANING/USE
ICTL
ISEQ
CMENT
COpy
MI
ERROR
MIC
MNOTE
MIED
MCMENT
MACRO
MEND
MEXIT
ANOP
SETA
SETB
SETC
ACTR
AIF
AIFB
AGO
AGOB
GBLA
GBLB
GBLC
LCLA
LCLB
LCLC
PROTO
PROTOED
MHR
KT
GAR
MNA
OCST
UNDEF
LITSRC
ICTL
I SEQ
• COMMENT
COpy
M-I SOURCE 1ST CARD
ERROR RECORD
MACRO INSTR. SOURCE CONT. CARDS
MNOTE
M-I EDITED RECORD
•• COMMENT
MACRO
MEND
MEXIT
ANOP
SETA
SETB
SETC
ACTR
ACTR
AIFB
AGO
AGOB
GBLA
GBLB
GBLC
LCLA
LCLB
CONTENTS,
LCLC
PROTOTYPE SOURCE
PROTOTYPE EDITED REC
MACRO HEADER RECORD
KEYWORD TABLE RECORD
GLOBAL ARRAY RECORD
MAC NAME ARRAY RECORD
OPEN CODE START RECORD
UNDEFINED OPCODE
LITERAL SOURCE RECORD
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
•
REGISTER EQUATES
•
••
•
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
....
••• 1
•• 1.
• .11
.1 ••
.1.1
.11.
.111
1 •••
1•• 1
1. 1.
1. 11
11 ••
11.1
158
RO
Rl
R2
R3
R4
R5
R6
R7
R8
R9
Rl0
R 11
R12
R13
REGISTER 0
1
2
3
4
5
6
7
8
9
10
11
12
13
.
/1 ".
~
~/>
r-
DISPLMNT
DEC (HEX)
SIZE
·...
111.
1111
• 11.
• 111
·...
·...
1 •• 1
1.1.
1.11
11. 1
111.
• 11.
1. '•.
FIELD
NAME
DESCRIPTION:
MEANING/USE
CONTENTS,
R14
R15
ROFFS
RPARM
RFILE
RINPT
ROUTPT
RBA
RBIF
RBR
RBRSAVE
14
15
PARAMETER REGS
·FOR
.INTERFACE MACROS
PGETL RECORD POINTER
PPUTL RECORD POINTER
BASE REGISTERS
INTERFACE BASE REGISTER
STANDARD BRANCH REGISTER
BRANCH REGISTER FOR PSAVE
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
•
BIT EQUATES FOR BIT HANDLING MACROS
•
•
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
1 •••
• 1••
•. 1.
• •• 1
·...
1 •••
• 1••
· .1.
••• 1
1111 1111
BITO
BIT1
BIT2
BIT3
BIT4
BITS
BIT6
BIT1
BITFF
1000
0100
0010
0001
0000
0000
0000
0000
1111
0000
0000
0000
0000
1000
0100
0010
0001
1111
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
••
EQUATES
••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
~ASK
• 111
1 •••
••• 1
ADDR
HIGHBYTE
LOWBYTE
IICM MASKI FOR ADDRESS
HIGH ORDER BYTE OF REGISTER
LOW ORDER BYTE OF REGISTER
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••
••
MISCELLANEOUS
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
1658
(61A)
1
1 •••
• 1 •.•
•. 1.
JSW0005
PROGRAM SWITCH
PNWTRKSW
POPSW
PEOBSW
NEXT PWRITE STARTS ON A NEW TRK
TELLS PRETURN TO POP THE SAVE
I" MEANS END OF BOOK ON SYSSLB
Data Areas
159
DISPLMNT
DEC (HEX)
SIZE
NAME
• •• 1
1•••
. 1 ..
· .1.
1659
FIELD
(67B)
1
1 •••
.1 ••
• •.• 1
1 •••
.1 ••
•• 1.
••• 1
DESCRIPTION:
MEANINGjUSE
CONTENTS,
PLBEOFSW
PNOBKSW
PRLD
PSXREF
'1' MEANS EOF ON SYSSLB
'1' MEANS BOOK NOT FND
OPTION RLD
OPTION SXREF
JSWOO06
PROGRAM SWITCH
PINEOFSW
PALIGN
PDECK
PLINK
PLIST
PXREF
PDF
' l' MEANS EOF ON SYSIPT
OPTION ALIGN
OPTION DECK
OPTION LINK OR CATALS
OPTION LIST
OPTION XREF
OPTION SUBLIB
PABENDC
TEMPORARY. STO~GE FOR READNEXT
NOTE VALUE
CYLINDER
HEAD
RECORD
REMAINING TRACK CAPACITY
ADDRESS OF HIGHEST BYTE, THAT
IS NOT USED FOR BUFFERS
ABEND CODE
PLRECLN
LENGTH OF RECORD LENGTH
1 FSAVE
INTERFACE ROUTINE SAVE AREA
1660
(67C)
6
NPTEMP
1660
1662
1663
166.4
1666
(67C)
(67E)
(67F)
(680)
(682)
2
1
1
2
3
NPTEMPH
NPTEMPR
NPTEMPTB
PHI CORE
1669
1670
1670
1672
1672
(685)
(686)
(686)
(688)
(688)
1
2
2
4
16
••
NPTEMPCC
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
••
ASSEMBLER FLAGS
•
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
• • 11
• • 11
... 11
• .11
•• 11
• • 11
•• 11
• • 11
•• 11
• .11
• .11
• • 11
• .11
• • 11
.1 ••
.1. 1
• 11.
.111
1•••
1•• 1
1. 1.
1. 11
11 ••
11. 1
111.
1111
UNMINUS
LATTR
SYMFLAG
LQCCTR
SELFLAGL
SELFLAGS
ENDEXPR
EFLOPD
OPRDFLAG
ERROPND
AD 1FLAG
AD2FLAG
CODEFLAG
UNARY MINUS
LENGTH ATTRIBUTE
SYMBOL FLAG
LOCATION COUNTER FLAG
SELFDEFINING TERM LARGE
SELFDEFINING TERM SMALL
END OF EXPRESSION
END OF OPERAND FIELD
BEGINNING OF OPERAND
ERRONEOUS OPERAND
ADDR1 FIELD PRESENT
ADDR2 FIELD PRESENT
GEN. CODE FIELD PRESENT
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
•
FILE CONTROL BLOCKS
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
160
/f
~~~
~/
r~
~"
/'
{
(
DISPLMNT
DEC (HEX)
1688
1688
1691
1694
1697
1699
1702
1705
1706
1709
1717
1723
1723
1726
1729
1732
1734
1737
1740
1741
1744
1752
1758
1758
1761
1764
1767
1769
1772
1775
1776
1779
1787
SIZE
FIELD
NAME
PFILEl
PDTFADRl
BUFPTl
BUFADDRl
PBUFLENl
PENDBUFl
PWAADDR1
35
(698)
(698)
(69B)
(69E)
(6A 1)
(6A3)
(6A6)
(6A9)
(6AA)
3
3
3
2
3
3
1
3
8
6
(6AO)
(6B5)
(6BB)
(6BB)
(6BE)
(6C1)
(6C4)
(6C6)
(6C9)
(6CC)
(6CD)
35
(6DO)
(6D8)
(6DE)
(6DE)
(6E1)
(6E4)
(6E7)
(6E9)
(6EC)
3
3
3
2
3
3
1
3
8
6
(6EF)
(6FO)
(6F3)
(6FB)
PEOFADR3
PNPOINT3
PNEXTNP3
PMAXBSIZ
MAX BLOCK LENGTH OFFSET IN DTF
PEOFADR2
PNPOINT2
PNEXTNP2
PFILE3
PDTFADR3
BUFPT3
BUFADDR3
PBUFLEN3
PENDBUF3
PWAADDR3
35
•• 11 111.
CONTENTS,
FILE CONTROL BLOCK FOR FILE 1
ADDRESS OF DTFSD
POINTER TO NEXT RCD IN BUFFER
ADDRESS OF BUFFER
BUFFER LENGTH
ADDRESS OF LAST BYTE OF BUFFER
ADDRESS OF WORKAREA
SWITCHES (SEE DSECT PFCB)
ADDRESS OF END-OF-FILE ROUTINE
NOTE/POINT VALUE
N/p VALUE FOR NEXT BLOCK
FILE CONTROL BLOCK FOR FILE 2
ADDRESS OF DTFSD
POINTER TO NEXT RCD IN BUFFER
ADDRESS OF BUFFER
BUFFER LENGTH
ADDRESS OF LAST BYTE OF BUFFER
ADDRESS OF WORK AREA
SWITCHES (SEE DSECT PFCB)
ADDRESS OF END-OF-FILE ROUTINE
NOTE/POINT VALUE
N/P VALUE FOR NEXT BLOCK
FILE CONTROL BLOCK FOR FILE 3
ADDRESS OF DTFSD
POINTER TO NEXT RCD IN BUFFER
ADDRESS OF BUFFER
BUFFER LENGTH
ADDRESS OF LAST BYTE OF BUFFER
ADDRESS OF WORK AREA
SWITCHES (SEE DSECT PFCB)
ADDRESS OF END-OF-FILE ROUTINE
NOTE/POINT VALUE
N/P VALUE FOR NEXT BLOCK
PEOFADR1
PNPOINT1
PNEXTNPl
PFILE2
PDTFADR2
BUFPT2
BUFADDR2
PBUFLEN2
PENDBUF2
PWAADDR2
3
3
3
2
3
3
1
3
8
6
DESCRIPTION:
MEANING/USE
EQUATES FOR CONTROL NUMBERS FOR PRINT
1111 ••• 1
.1 ••
1111
.11.
PEJ
PSS
PDS
PTS
EJECT.
SINGLE
DOUBLE
TRIPLE
**
*
THEN PRINT
SPACE, THEN PRINT
SPACE, THEN PRINT
SPACE, THEN PRINT
PUSH-DOWN SAVE-AREA DEFINITION
**
*
• . •• 1. 1.
• • •• • 1 ••
1796
1796
(704)
(704)
4
o
•• 1. 1 •• 1
1836
1836
(72C)
(72C)
2
2
PSAVELVL
PSAVESZ
MAXIMUM NUMBER OF LEVELS
SIZE OF EACH LEVEL
PSAVETEL
SAVE AREA
PSAVEND
END OF SAVE AREA
PSAVPT
CURRENT SAVE AREA INDEX
Data Areas
161
DISPLMNT
DEC (HEX)
1840
1846
1844
1848
1848
1850
1850
FIELD
NAME
SIZE
CONTENTS,
',-,
4
4
4
(730)
(730)
(734)
(738)
(738)
(73A)
(73A)
DESCRIPTION:
MEANING/USE
2
2
4
4
PSAVTEMP
STEP
SAVES RWAA FOR PSAVE , PRETURN
USED BY TRACE PROGRAM
PLINECNT
PROGID
LINE COUNT
PROGRAM IDENTIFICATION
FROM FIRST TITLE STMNT
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
C - P
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
1854
1854
1855
1856
ICTL CONSTANTS
(73E)
(73E)
(73F)
(740)
•
PICTL
PICTLST
PICTLEND
PICTLCNT
3
1
1
1
START COLUMN
END COLUMN
CONTINUE COLUMN
•
......................................•.......................
•
E - P
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•• 11 11 ••
1857
(741)
ORG1
NPTXT3
8
'
NIP TO WF3 TEXT
...................... .......................................
•
G - S
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
~
1865
(749)
3
PPUNCHPT
ADDRESS OF PUNCH ROUTINE
1868
(74C)
1
JSW0007
PROGRAM SWITCH
PNOSEQSW
PGFMSGSW
1 INDICATES NO CARD SEQUENCING
1 MEANS MESSAGE FROM GA OR FA
ON FILE 3
....
1 •••
.1 ••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
E - J
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
1869
(74D)
2
.1 •• 1.1.
OCSTMTNO
AT ENTRY OF JA CONTAINS NUMBER
OF LAST STMT OUTPUT ON SOURCE
FILE (WF3) BY THE EDITOR
ORG101
DELIMITS AREA THAT IS OVERLAID
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
C - K
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
162
"
r--
DISPLMNT
DEC (HEX)
1811
CONTENTS,
FIELD
NAME
DESCRIPTION:
MEANING/USE
1
POVLSW
PROGRAM SWITCH
OVERLAY SWITCHES
··...
.. ,
1.11
PCSWOVL
PDSWOVL
PISWOVL
PJSWOVL
PKSWOVL
ORG2
SIZE
(14F)
1 •••
• 1••
•• 1.
1•••
.1 ••
•
•
••
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
C - J
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
1812
(150)
8
.1.1 •• 11
NPOCST
N/P TO OPEN CODE TEXT ON WF2
ORG3
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
C - I
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
(
1880
1880
1881
(158)
(158)
(159)
9
1
8
PSYSPARM
PSYSPLEN
PSYSPSTR
LENGTH OF FIELD
FIELD
1889
(161)
1
JSWOO09
PROGRAM SWITCH
SWCAOC
SWSM
SWMIOC
SWCAFT
CIA IN OPEN CODE
SOURCE MACROS PRESENT
M-I:S IN OPEN CODE
CIA IN FIRST TITLE STMT
PB1FISIZ
PB12SIZ
WF1 BUFSIZE IN F AND I
WF 1, WF2 BUFSIZ
1 •••
.1 ••
• • 1.
••• 1
1890
1892
(162)
(164)
2
2
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
C - F
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
.11. • •• 1
1894
1896
1899
1902
1904
(166)
(168)
(16B)
(16E)
(110)
2
3
3
2
2
.11. 11.1
ORG4
PMNABSIZ
PFINDPT
PI NPUTPT
SMTSIZE
PVSDSIZE
LENGTH OF MNA BLOCK
ADDRESS OF PFIND ROUTINE
ADDRESS OF PINPUT ROUTINE
SIZE OF SMT BLOCK
VSDSIZE
ORG5
•
Data Areas
163
DISPLMNT
DEC (HEX)
FIELD
NAME
SIZE
DESCRIPTION:
MEANING/USE
CONTENTS,
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
•
E - F
•
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
1906
(172)
6
.111 •• 11
NPSMT
ORG6
NIP TO SMT START
•
•••••••••• *•••• *••••••••••••••••••••••••••••••••••••• ** ••• *•••
•
C - E
•• *••• ** ••••••••
*•••• ** •••• *•• ~ ••• '* ••••• *•• *••••••••••••••••••
1912
(178)
8
NPEOTXT2
NP TO CA END OF TXT WF2
1920
(780)
1
JSW0010
PROGRAM SWITCH
SWREPRO
SWPROTO
SWMACRO
SWOC
SWCOPY
SWFLUSH
PROCESS NEXT AS REPROED
PROTOTYPE EXPECTED
PROCESSING MACRO DEF
PROCESSING OPEN CODE
PROCESSING COpy CODE
FLUSHUSHING AFTER END S'IMT
'. ,. ..
1 •••
• '1 ••
• • 1.
••• 1
1 •••
.1 ••
•••••••• *.**.***.* •••••••• *•••• **.*** ••• ** •••••••• *•••• *** ••• *
•
C - D
••••••••••
*•••• *•• *.* ••••••••• *•••••••••• *** ••• *••••• *•• *••••••
1921
(781)
1
.111.11.1
CCCALL
TYPE OF CALL TO OVLY CC
ORG7
•
••••• *•••••••• *•••••••••••••••••••••••••••••••••••••••••••••••
•
C
••••••••••••••••••••••••••••••••••••
** ••••••••• **.****.* •• ***.•
1922
1925
1857
164
(782)
(785)
(741)
3
2
BLKADDR
CMNASIZE
ADDRESS OF MNA BUFFER
MNA BLOCK SIZE
·1 •••• 111
ORGSAVE1
SAVE LOCATION COUNTER
OVERLAY AREA NOT USED ANY MORE
PFETCH SWITCH FOR CD
1
PFETCHDF
[-"
DISPLMNT
DEC
(HEX)
1858
SIZE
1
(742)
1 •••
• 1 ••
• • 1.
• •• 1
1 •••
• 1 ••
· . 1.
• •• 1
1859
(743)
1
·...
1 •••
• 1 ••
1860
1866
1866
1927
r
1928
1925
1930
(744)
(74A)
(74A)
•
•
Ie •
6
2
2
1916
1932
1932
1936
1940
1944
1948
1951
2216
2216
2220
DESCRIPTION:
MEANING/USE
JSWOOll
PROGRAM SWITCH
SWCMARK
SWCC
SWCILL
SWNOBLK
SWCARD1
SWMNA1
SWILICTL
SWCC2
CARD HAS CONTINUE MARK
LEGAL CON'I'INUE CARD
CONTINUE CARD IS EXCESSIVE
NONBLANRS .BEFORE CONTCOL·
1ST GET IN IDENT
FIRST CALL TO CC
ICTL NOW ILLEGAL
2ND CON~ CARD IN PROCESS
JSW0012
PROGRAM SWITCH
SWQM
SWAMP
IN QUOTE MODE
POSSIBLE VARIABLE SYMBOL
NPLASTW
WRITE NP FOR LAST BLOCK
NDXCNT
M-I INDEX COUNTER
CONTENTS,
ORGCHECK
RESTORE LOCATION COUNTER
(787)
0
1-0RG 1- (PCHECK1-0RGSAVE1) , (RO»
THE PRECEDING INSTRUCTION IS FLAGGED IF THE OVERLAY ORG IS IN ERROR
"(788)
(788)
(7 SA)
• 1. '. • 11.
PCHECK1
2
2
2
CURBEG
CURCNT
CURRENT BEG COL
CURRENT CONTINUE COL
ORGSAVE2
SAVE LOCATION COUNTER
1 ••• • 11.
1906
1906
1908
1910
1912
1912
FIELD
NAME
(772)
(772)
(774)
(776)
(77S)
(778)
•
2
2
2
2
4
4
CUREND
CONTEND
ENDCNT
CURRENT END COL
END COL OF 1ST CONT CARD
NO OF COL CUREND TO CURCNT
EOCl.RDl
END OF 1ST CARD STMT FIELD
.111.11.
PCHECK2
0
ORG5- (PCHECK2-0RGSAVE2) , (RO) )
(77C)
THE PRECEDING INSTRUCTION IS FLAGGED IF THE OVERLAY ORG IS IN ERROR
RESTORE LOCATION COUNTER
4
(7SC)
4
BASESAVE
SAVE AREA FOR 1 BASEREG
(78C)
4
(790)
SCNEND
END OF STMT FIELD IN WORKAREA
4
STREND
END OF STRING FIELDS IN WRKAREA
(794)
4
SAVE AREA FOR BEGIN OF SCAN
(798)
SCNBEG
BLANKS FOR WORKING PURPOSE
(79C)
3
BLANKS
264
3-CARD WORKAREA
(79F)
INPWRKAR
4
(8AS)
4
STRAR
BEGIN OF STRING FIELDS
(SAS)
SO
SAVE 1ST CONT CARD OF MACRO
(8AC)
CC1AREA
PHASE C ERROR STACK
• 1 ••
C
MAXERRNO
NOSTRING
MAX ERRORS THAT IS LOGGED
STRING NOT REQUIRED
Data Areas
165
DISPLMNT
DEC (BEX)
SIZE
DESCRIPTION:
MEANINGjUSJ!:
FIELD
NAME
CONTENTS,
(~
2300
2301f
1
2
(8J'C)
(900)
ERROR STACK (LNG==MAXERRNO)
ERROR COUNTER
ERRS'l'
ERRCN'l'
/'
I SEQ PARAMETERS
2306
2307·
2308
(902)
(903)
(901f)
1
1
39
PISEQST
PISEQEND
PISEQAR
ISEQ START COL
ISEQ END COL
ISEQ FIELD AREA
23lf7
(92B)
1
JSW0013
PROGRAM SWI'l'CH
1••• ....
.1 •• • • e·e
•• 1 •
••• 1 ••••
•••• 1•••
SWISEQ
SWTITLE1
SWISEQER
SWISEQE1
SWISEQE2
ISEQ CHECR REQUIRED
1ST TITLE SWITCH
ON IF 1S~ CARD HAS ISEQ ERROR
ON IF 1S~ CONT CARD HAS ISEQ ERROR
ON IF 2ND CONT CARD HAS ISEQ ERROR
....
AREAS
23lf8
MAXCNEST
MAX NEST LEVEL FOR COpy
1
MAC STAT
MACRO STATUS IN COpy BOOOK
1111 .111
MACON
MACOFF
MACRO STM READ IN THE BOOK
NO MACRO STMT READ IN THE BOOR
STACK FOR MACRO STATUS
(LNG=MAXCNEST)
PROGRAM SWITCH
(92C)
23119
(92D)
1
STATSTJ(
2352
(930)
1
JSW0011f
.. ,.. .••••
...
........
S_SEAR1
. StlMovn
PIPT
2
1
2
PCOPY
PRESCNT
CLINJ(
1••.•
(931)
(933)
(938)
COpy
...... "
••••••••
2353
2355
2360
POR.
1ST SEARCH
MNA OVERFLOW
INPUT FROM SYSIPT
COPY NESTING DEPTH. IF ZERO,
SYSIPT RESIDUAL COUNT. IS
LINK ADDRESS FOR C
(f'
I'J
166
[-
r
(
,,>
FIELD
NAME
ASSGNSW
BEGOFIN
BEGOFOUT
BLKINCNO
BO TT HALF
* BUFADDR1
* BUFADDR2
* BUFADDR3
*BUFPT1
*BUFPT2
*BUFPT3
* BYTEOFFS
COMMOoSW
CROSSNP
CROSSW
*CURESD
CURNP
CURSECT
CURSECTL
DBCORE
oBFULLSW
oBVSDADR
DLINK
oSCOMSW
EAWF2END
ELINK
EN DID
ENDSW
ENTRYCNT
EQORGSW
ERRCOUNT
ERRINOPo
ESDIDHI
ESDIDLO
* ESDPTR
ESDTABSW
FILE1NP
FILE1NPR
FILE12EX
FILE2NP
FILE2NPR
FLINK
*GAVAPT
*GBVAPT
* GCVAPT
GLINK
HLINK
IATESTSW
IFSAVE
ILINK
JLINK
KLINK
LBARADDR
LCLASIZ
LCLBSIZ
LCLCSIZ
LITSW
LLINK
*LOCCNTHI
*LOCCNTR
LOCLATR
LOCRATR
*POINTER
DISPLACEMENT
DECIMAL (HEX)
1922
2044
2040
1995
2035
1694
1729
1764
1691
1726
1761
1953
1926
1961
1922
1992
1967
1932
1931
1951
1926
2000
2024
2031
1920
1976
2011
1963
2008
1922
2036
1926
1955
2013
1987
1963
1880
1886
1904
1892
1898
1960
1940
1943
1946
1913
1949
1926
1672
1984
1928
2072
1994
1932
1935
1935
1963
2072
2028
2025
2021
2023
(782)
(7FC)
(7F8)
(703)
(7F3)
(69E)
(6C 1)
(6E4)
(69B)
(6BE)
(6E 1)
(7A 1)
(786)
(7A9)
(782)
(7C8)
(7AF)
(78C)
(78B)
(79F)
(786)
(700)
(7E8)
(7EF)
(780)
(7B8)
(7DB)
(7AB)
(708)
(782)
(7F4)
(782)
(743)
(700)
(7C4)
(7AB)
(758)
(75E)
(770)
(764)
(76A)
(7A8)
(794)
(797)
(79A)
(779)
(790)
(786)
(688)
(760)
(788)
(818)
(76A)
(78C)
(78F)
(792)
(7AB)
(818)
(7EC)
(7E9)
(7E5)
(7E7)
Data Areas
167
FIELD
NAME
DISPLACEMENT
DECIMAL (HEX)
,"-C-
LOCTYPE
MOCROSW
MFLAGS
MIB
*MIBADDR
MLEVEL
MNAM
NLINK
NPLITBEG
NPSSDR1
NPSSDWL
NPTEMP
NPTEMPCC
NPTEMPH
NPTEMPR
NP TEMP TB
NPVSD
NPVSDR1
* NXTENTRY
OLINK
OVFLADDR
PABENDC
PALIGN
PASSGNSW
* PBUFLEN 1
*PBUFLEN2
*PBUFLEN3
PB1FISIZ
PB12SIZ
PCONTSW
PCSWOVL
PDECK
PDF
PDSWOVL
*PDTFADR1
*PDTFADR2
*PDTFADR3
PEDECK
*PENDBUF1
*PENDBUF2
*PENDBUF3
PENTDEF
PEOBSW
*PEOFADR1
*PEOFADR2
*PEOFADR3
*PFETCHDA
*PFETCHDB
*PFETCHIA
*PFETCHIB
*PFETCHIC
PFILE1
PFILE2
PFILE3
*PFlNDPT
PFRSTASG
PFRSTOV
PGBLASIZ
PGBLBSIZ
PGBLCSIZ
*POlNTER
168
2031
1926
1922
1922
1948
1951
1924
1960
1913
1963
1970
1660
1660
1662
1663
1664
1947
1987
2004
1960
1997
1669
1659
2035
1697
1732
1767
1890
1892
1904
1871
1659
1659
1871
1688
1723
1758
1659
1699
1734
1769
1922
1658
1706
1741
1776
2008
2012
1956
1960
1964
1688
1723
1758
1896
1922
2035
1945
1948
1951
~
(7EF)
(786)
(782)
(782)
(79C)
(79D)
(784)
(7A8)
(779)
(7AB)
(7B2)
(67C)
(67C)
(67E)
(67F)
(680)
(79B)
(7C3)
(7D4)
(7A8)
(7CD)
(685)
(67B)
(7F3)
(6A 1)
(6C4)
(6E7)
(762)
(764)
(770)
(74F)
(67B)
(67B)
(74F)
(698)
(6BB)
(6DE)
(67B)
(6A3)
(6C6)
(6E9)
(782)
(67A)
(6AA)
(6CD)
(6FO)
(7D8)
(7DC)
(7A4)
(7A8)
(7A 7)
(698)
(6BB)
(6DE)
(768)
(782)
(7F3)
(799)
/,.
.'"
(79C)
(79F)
;'('
r,
\l.,/
FIELD
NAME
(
r
(
PGBLSIZ
PGENSW
PGEN5SW
PGFMSGSW
*PHICORE
PIBSW
PICSW
*PICTLCNT
*PICTLEND
*PICTLST
PIERCNT
PIERSTK
PINEOFSW
*PITPUTPT
PISWOVL
PJSWOVL
PKSWOVL
PLASTSUB
PLBEOFSW
PLINECNT
PLINENUM
PLINK
PLIST
PLITBLK
PLITLEN
PLRECLN
*PMAVBSIZ
*PMAVNO
PMAVNP
PMAXBSIZ
*PMIBLEN
PNEXTNP1
PNEXTNP2
PNEXTNP3
PNOBKSW
PNOSEQSW
PNPMAC1
PNPOCGV
PNPOINT1
PNPOINT2
PNPOINT3
PNWTRKSW
POPSW
PPAGENO
PREFCNT
PRLD
PROGID
PSAVETBL
PSAVPT
PSAVTEMP
PSPILLA
PSTCNAM
PSTMCSEQ
PSXREF
*PSYMTABL
PSYSNDX
PSYSPLEN
PSYSPSTR
PUNDEFSW
PVSDSIZE
*PWAADDR1
*POINTER
DISPLACEMENT
DECIMAL (HEX)
1945
1926
1926
1863
1666
1926
1926
1856
1855
1854
1974
1976
1650
1899
1871
1871
1871
2035
1658
1848
1923
1659
1659
1909
1911
1670
1941
1943
1935
1787
1956
1717
1752
1787
1658
1863
1912
1927
1709
1744
1779
1658
1658
1925
1936
1658
1850
1796
1836
1840
1968
1912
1915
1658
2032
1927
1880
1881
1926
1904
1702
(799)
(786)
(786)
(747)
(682)
(786)
(786)
(740)
(73F)
(73E)
(7B6)
(7B8)
(67B)
(76B)
(74F)
(74F)
(74F)
(7F3)
(67A)
(738)
(783)
(67B)
(67B)
(775)
(777)
(686)
(795)
(797)
(78F)
(6FB)
(7A4)
(6B5)
(6D8)
(6FB)
(67A)
(747)
(778)
(787)
(6AD)
(6DO)
(6F3)
(67A)
(67A)
(785)
(790)
(67A)
(73A)
(704)
(72C)
(730)
(7BO)
(778)
(77B)
(67A)
(7FO)
(787)
(758)
(759)
(786)
(770)
(6A6)
Data Areas
169
FIELD
NAME
*PWAADDR2
*PWAADDR3
PXREF
P3705SW
*SAVADDR
SAVAR
SAVESDNP
SAVREG1
SAVREG2
SECTSW
SELFLAGL
SELFLAGS
SMTSIZE
SSDADDR
SSDBLK1
*SSDEND
SSDINFO
SSDNP
SSDSIZE
*STABEND
*STARTLOC
STARTSW
STEP
STMTNR
SWATTR
SWCAFT
SWCAOC
SWCOPY
SWDS
SWFLUSH
SWGBLX
SWINM
SWKT
SWLA
SWMACRO
SWMIOC
SWNOED
SWNOGEN
SWNOSTOR
SWOC
SWPROTO
SWREPRO
SWSM
SWSTART
SW2
*SYMADDR
VSADDR
VSDBLK1
*VSDEND
VSDINFO
VSDSIZE
*XRAREND
*XREFADDR
XREFLEN
XREFPARM
*XREFPTR
DISPLACEMENT
DECIMAL (HEX)
1737
1772
1659
1658
2048
2051
1967
2060
2064
1963
1672
1672
1902
1953
1969
2019
1958
1941
1961
2000
1952
1922
1844
1921
1922
1889
1889
1920
1922
1920
1922
1922
1922
1922
1920
1889
1922
1922
1922
1920
1920
1920
1889
1963
1963
1996
1982
1993
2016
1982
1985
1982
2016
2019
2013
1979
(6C9)
(6EC)
(67B)
(67A)
(800)
(803)
(7B5)
(80C)
(810)
(7AB)
(688)
(688)
(76E)
(7A 1)
(7B 1)
(7E3)
(7A6)
(795)
(7A9)
(7DO)
(7AO)
(782)
(734)
(781)
(782)
(761)
(761)
(780)
(782)
(780)
(782)
(782)
(782)
(782)
(780)
(761)
(782)
(782)
(782)
(780)
(780)
(780)
(761)
(7AB)
(7AB)
(7CC)
(7BE)
(7C9)
(7EO)
(7BE)
(7C 1)
(7BE)
(7EO)
(7E3)
PDF)
(7BB)
i(
\(~~-'
170
(This page intentionally left blank.)
(
Data Areas
171
(This page intentionally left blank.)
172
(This page intentionally left blank.)
Data Areas
173
DATA AREA: PCSR
SIZE:
1
CREATED BY: }
IPKCA,IPKCB, IPKCC, IPKCD, IPKDA, IPKDB, IPKEA, IPKGA,
IPKFA,IPKHA,IPKIA,IPKIC, IPKJA, IPKKA, IPKLA, IPKPA
UPDATED BY:
FUNCTION:
Description of a compressed source record.
DISPLMN'l'
DEC (HEX)
SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
..
(0)
(0)
(2)
2
..
PCSRHEAD
PCSRLEN
PCSRIOP
2
0
2
2
(2)
1
PCSROPO
PROGRAM SWITCH
0
6
....
1 •••
.1 ••
•• 1.
••• 1
....
....
1•••
..1...••
.1 ••
" .1 •
....
•••••••••••••
• LEN • lOP •
•••••••••••••
PCSRMCOP
PCSRLIT1
PCSRLIT2
PCSRLIT3
SWSFILE
SWEFILE
PNOSTNO
.PCSRCOM
COMMENTS BEFORE MACRO TEXT
THREE lOP BYTEO FLAGS
SOURCE FILE DESTINATION
EDITED FILE DESTINATION
..3
(3)
(4)
1
1
PCSROP
PCSROPX
lOP BYTE1 MCOP
lOP BYTE2 OP EXTENSIONS
5
(5)
1
PCSROP3
PROGRAM SWITCH
PCSRDEAD
lOP BYTE3 FLAGS,
PCSRFLGA
PROGRAM SWITCH
·.. '.
1,•••
6
1
(6)
1 •••
.1 ••
•• 1.
....
....
••• 1
..
~.
·0·· •
1
(1)
1
1 •••
.1 ••
• • 1.
• •.• 1
/
"
PCASRC
PCAEDTXT
PGENSTMT
PFROMLIB
PSMACDEF
PSBSTOPD
PSBSTOP
PSBSTNAM
PCSRSTR1
SOURCE CODE STRINGS
THEY ALL LOOK LIKE THIS
• 1 BYTE. 1 BYTE .LENGTH-1 •
••••••••••••••••••••••••••••
• LENGTH • COLUMN • SOURCE •
••••••••••••••••••••••••••••
;1. "
,,-I
174
(-
FIELD
NAME
PCAED'l'XT
PCASRC
PCSRDEAD
PCSRFLGA
PCSRHEAD
PCSRIOP
PCSRLEN
PCSRLIT1
PCSRLI'l'2
PCSRLIT3
PCSRMCOP
PCSROP
PCSROPX
PCSROPO
PCSROP3
PCSRSTR1
PFROMLIB
PGENSTMT
PNOSTNO
PSBSTNAM
PSBSTOP
PSBSTOPD
PSMACDEF
SWEFILE
SWSFILE
DISPLACEMENT
DECIMAL (HEX)
6
6
5
6
0
2
0
2
2
2
2
3
4
2
5
1
6
6
2
6
6
6
6
2
2
(6)
(6)
(5)
(6)
(0)
(2)
(0)
(2)
(2)
(2)
(2)
(3)
(4)
(2)
(5)
(1)
(6)
(6)
(2)
(6)
(6)
(6)
(6)
(2)
(2)
*POINTER
(-
Data Areas
175
DATA AREA:
SIZE:
PDCEDIT
10
CREATED BY:}
IPKJA,IPKKA, IPKLA, IPKNA, IPKOA, IPKPA
UPDATED BY:
FUNCTION:
Decsription of the operand part of the edited text for DC,
DS, and literal DC statements.
OISPLMNT
DEC (HEX)
('
0
0
0
0
0
(0)
(0)
DESCRIPTION:
MEANING/USE
CONTENTS,
VSCALE
.1.. •• 11
EXPON
1
VEXPON
.1 ••. • 1 ••
DCEXP
1
VDCEXP
.1 ••• 1.1
DCVAL
(0)
(0)
1
1
VDCVAL
3
1
PMODEXP
PNXTMOD
MODIFIER EXPRESSION
1
1
PDCLEN
PDCFLD
*
LENGTH OF CONSTANT FIELD
BEGINNING OF CONSTANT FIELD
1
( 1)
4
(4)
1
( 1)
2
(2)
ATYPE
BITLEN
BTYPE
CTYPE
OCEXP
DCVAL
DTYPE
ETYPE
EXPLEN
EXPON
FTYPE
HTYPE
I MPLEN
LTYPE
PBITALGN
PDCFLAG
PDCFLD
PDCLEN
PDCTYPE
PDUPCONT
PDUPEXP
PLENFLAG
PMODEXP
PMODFLAG
PMODIFS
PNOCONST
PNXTMOD
PTRUNRHT
PTYPE
SCALE
STYPE
VBITLEN
VDCEXP
VDCVAL
("
1
(0)
FIELD
NAME
r
FIELD
NAME
SIZE
DISPLACEMENT
DECIMAL (HEX)
4
5
4
4
(4)
(5)
(4)
(4)
0
0
(0)
(0)
4
4
5
(4)
(4)
(5)
0
(0)
4
4
5
4
7
6
(4)
(4)
(5)
(4)
(7)
(6)
2
(2)
1
( 1)
4
6
0
5
(4)
(6)
(0)
(5)
1
( 1)
0
9
(0)
(9)
3
(3)
4
6
4
0
4
5
0
0
(4)
(6)
(4)
(0)
(4)
(5)
(0)
(0)
*POINTER
"
Data Areas
177
FIELD.
NAME
DISPLACEMENT
DECIMAL (HEX)
,
VEXPLEN
. VEXPON
VIMPLEN
VSCALE
VTYPE
XTYPE
YTYPE
ZTYPE
* POINTER
178
,
(5)
5
0
5
0
(0)
(5)
(0)
4
4
4
4
(4)
(4)
(4)
(4)
~"':- '"- / '
(This page intentionally left blank.)
Data Areas
179
PERR
DATA AREA:
SIZE:
Variable (depending upon different error text)
CREATED BY: }
IPKPA
UPDATED BY:
FUNCTION:
Description of an error record.
DISPLMNT
DEC
(HEX)
SIZE
1
0
0
(0)
(0)
2
2
(2)
(2)
3
4
(3)
(4)
1
1
1
1
5
6
(5)
(6)
2
8
(8)
9
(9)
FIELD
NAME
PERREXPT
PERRHD
PERRIOP
PERRIOPO
PERRIOP1
PERRIOP2
PERRLEN
PERRSTNR
PERRSTRL
*POIN'I'ER
180
2
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
PERRHD
PERRLEN
PERRIOP
PERRIOPO
PERRIOP1
PERRIOP2
RECORD HEADER (LNG= PERLEN- PETHEAD)
RECORD LENGTH
lOP (LNG=PETIOP)
FLAGS
ERROR ID
ERROR NUMBER
NOT USED
STMNT NO. INSERTED BY OUTPUT
LENGTH OF TEXT
TEXT EXCERPT
1
PERRSTNR
PERRSTRL
PERREXPT
1
1
DISPLACEMENT
DECIMAL (HEX)
9
0
2
2
3
4
0
6
8
(9)
(0)
(2)
(2)
(3)
(4)
(0)
(6)
(8)
',~
DATA AREA:
SIZE:
P£l'F'LDS
Variable
CREATED BY:}
UPDATED .BY:
FUNCTION:
DISPLMNT
DEC (HEX)
IPKCA, IPKCC, IPKCD, IPKDA, IPKDB, IPKEA, IPKGA, IPKFA,
IPKIA,IPKJA, IPKKA,IPKLA, IPKNA, IPKOA, IPKPA, IPKSA,
IPKSB
Description of the variable fields of edited text records.
SIZE
o
(0)
1
1
(1)
1
o
1
(0)
1 •••
.1 ••
• • 1.
1111
• 111
1
(1)
19
(9)
(9)
9
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
PNAMLNG
PNAME
NAME
PAFLAG2
THE SYMBOL WORK BUCKETS
BEFORE SUBSTITUTION:
PROGRAM SWITCH
DONESYM
ENTVALUE
ERDSCOM
PSYMFLAG
PSYMLEN
PSYMBOL
PENTVAL
PNXTBKT
8
5
9
THE NAME FIELD LENGTH
VALUE HAS BEEN SUBSTITUTED
VALUE IS IN PENTVAL
ENTRY DISALLOWED (FOR EQU)
***********************
* FLAG * LEN * SYMBOL *
***********************
BUCKET EXTENSION FOR ENTRY VALUE
AFTER SUBS'I'ITUTION:
I
1
2
2
3
2
o
(0)
1
1
(1)
I~
2
(3)
2
(51
3
PSFLAG2
PSLENATR
PSRELATR
PSVALUE
o
(0)
1
POPFLAG
OPERAND FIELDS LOOK LIKE:
OPERAND FLAG
1
(1)
PEXPFLAG
PROGRAM SWITCH
NEXPF1
NEXPF2
NEXPF3
EX PRESS ION FLAG
• 1 ••
• . 1.
• •• 1
********************************
*
* FLAG * LA * RA * VALUE *
********************************
Data Areas
181
DISPLMNT
DEC (HEX)
2
SIZE
FIELD
NAME
DESCRIPTION:
MEANING/USE
POLISH STRING
AFTER EVALUATE
VALUES WILL BE INSERTED
LENGTH ATTRIBUTE
NUMBER OF RELOCATION FACTORS
VALUE OF EXPRESSION
SIGN OF RELOCATION FACTOR
RELOCATION ATTRIBUTE
USED BY OUTPUT
FIELD TYPE FLAG
ADDR FIELD
NEXT FLAG
BEGINNING OF OBJ CODE FIELD
OBJ CODE, TWO BYTES
NEXT TWO BYTES
CURRENT CHARACTER
NEXT CHARACTER
LENGTH OF ERROR OPERAND
(2)
1
POLSTR
2
(2)
2
4
(4)
1
5
(5)
4
9
10
(9)
(A)
1
1
PLA
PRA
PEXPVAL
PSIGN
PRATT
0
1
(0)
( 1)
3
4
(4)
1
PAFLG
PAFLD
PANXT
1
1
( 1)
3
(3)
2
2
0
(0)
1
PCODE
PCNXT
THISELEM
••• 1
,.. •• .1.1
NXTELEM
ERROPLEN
FIELD
NAME
DONESYM
ENTVALUE
ERDSCOM
NEXPFl
NEXPF2
NEXPF3
PAFLAG2
*PAFLD
PULG
PANXT
PCNXT
PCODE
PENTVAL
PEXPFLAG
PEXPVAL
PLA
PNAME
PNAMLNG
PNXTBKT
POLSTR
POPFLAG
PRA
PRATT
PSFLAG2
PSIGN
PSLENATR
PSRELATR
*PSVALUE
PSYMBOL
PSYMFLAG
PSYMLEN
SREG
THISELEM
*POINTER
182
CONTENTS,
'~
DISPLACEMENT
DECIMAL (HEX)
0
0
0
1
1
1
0
1
0
(0)
(0)
(0)
( 1)
(1)
( 1)
(0)
( 1)
(0)
4
(4)
3
1
(3)
(1)
9
(9)
1
( 1)
5
(5)
2
(2)
1
( 1)
0
9
2
0
(0)
(9)
(2)
(0)
4
(4)
10
0
(A)
(0)
9
(9)
1
3
4
(1)
(3)
(4)
1
(1)
0
(0)
0
(0)
0
0
(0)
(0)
(
DATA AREA:
SIZE:
{
PETR
Variable
CREATED BY: }
IPKCA,IPKCC,IPKCD, IPKDA, IPKDB,IPKEA, IPKGA, IPKFA,IPKIA,
IPKJA, IPKKA, IPKLA, IPKNA, IPKOA, IPKPA, IPKSA,IPKSB
UPDATED BY:
FUNCTION: Decription of an edited text record
DISPLMNT
DEC (HEX)
SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
2
0
0
(0)
(0)
6
2
PETHEAD
PETLEN
2
(2)
4
PETIOP
*************
* LEN * lOP *
*************
2
(2)
1
PETOPO
PROGRAM SWITCH
PETMCOP
PER2STR
PERNOQ
PDCSTYPE
PDCCONT
PDUPSYM
PDEFENT
lOP BYTEO, MACH.OP FLAG
2 STRINGS IN ERROR RCD FLAG
NO QUOTES AROUND ERROR STRING
S-TYPE CONST,CODE ALREADY BUILT
DC CONTINUATION RECORD FOLLOWS
1 •••
.1 ••
• • 1.
1 •••
• 1 ••
•• 1.
• •• 1
r
4
PDCSTYPE ALSO USED TO INDICATE OVERFLOW POINT IN SUBSTITUTION
....
• 111
3
PALGNBIT
NUMBER OF ALGN BYTES
4
(3)
(4)
1
1
PETOP
PETEPX
4
(4)
1
POP NUMB
lOP BYTE1 MAGHINEOP
lOP BYTE2 OP EXTENSIONS
ALSO USED AS
OPERAND NUMBER IN A DC/OS
5
(5)
1
PETOP3
PROGRAM SWITCH
·... ·• ...
111
PETDEAD
PINSTRLN
PCB TYPE
lOP BYTE3 FLAGS
INSTRUCTION LENGTH
INSTRUCTION TYPE
2
2
PETSTNO
PLENATTR
PLRELATR
PLOCCNTR
PSYMNO
PNAMFLD
STATEMENT NUMBER
LENGTH ATTRIBUTE
2
3
1
1 •••
• 111
6
(6)
8
10
12
15
16
(8)
(A)
(C)
(F)
(10)
2
3
1
1
6
(6)
1
7
(7)
1
6
(6)
2
8
(8)
9
(9)
1
1
****************
* RA * LC * Sf *
****************
AN ERROR RECORD
ONLY CONSISTS
PERLNG
OF 6 BYTE HEADER AND A
PERSRC
VARIABLE STRING FIELD
A STMT NUMBER IS INSERTED BY THE OUTPUT PHASE.
USED BY OUTPUT
STMNT NO. INSERTED BY OUTPUT
PERRSTNO
PERRSTR
LENGTH OF TEXT
PERREXC
TEXT EXCERPT
(
Data Areas
183
FIELD
NAME
PALGNBIT
PCBT'iPE
PDCCONT
PDCSTYPE
PDEFENT
PDUPSYM
PERLt«;
PERNOQ
PERREXC
PERRSTNO
PERRSTR
PERSRC
PER2STR
PETDEAD
PETEPX
PETHEAD
PETIOP
PETLEN
PETMCOP
PETOP
PETOPO
PETOP3
PETSTNO
PINSTRLN
PLENATTR
*PLOCCNTR
PLRELATR
PNAMFLD
POPNUMB
PSYMNO
DISPLACEMENT
DECIMAL (HEX)
2
5
2
2
2
2
6
2
(2)
(5)
(2)
(2)
(2)
(2)
(6)
(2)
9
(9)
6
8
7
2
5
(6)
(8)
(7)
(2)
(5)
4
(4)
0
2
0
2
3
2
5
6
5
8
11
10
(0)
(2)
(0)
(2)
(3)
(2)
(5)
(6)
(5)
(8)
(B)
(A)
16
(10)
4
(4)
(F)
15
,f
*POINTER
184
'''",
"
/
PFCB
DATA AREA:
SIZE:
35
CREATED BY: }
All modules except: IPKAB-AJ,IPKCB,IPKTA
UPDATED BY:
FUNCTION:
Description of a file control block.
DISPLMNT
DEC (HEX)
SIZE
FIELD
NAME
DESCRIPTION:
MEANING/USE
ADDRESS OF
POINTER TO
ADDRESS OF
MAX RECORD
ADDRESS OF
ADDRESS OF
CONTENTS,
o
(0)
3
3
6
9
11
14
(3)
3
(6)
(9)
(B)
(E)
3
2
3
3
PDTFADDR
BUFPT
BUFADDR
PRECLEN
ENDBUF
PWAADDR
17
(11 )
1
PFCBSW
PROGRAM SWITCH
OPENSW
READSW
UPDSW
BUF2SW
UPD2SW
FIRSTSW
PFCBSW1
PFCBSW2
IF
IF
IF
IF
IF
IF
PEOF
PNOTEPNT
PNPRW
PCCHR
PTRKBAL
PNPOFFS
PNEXTNP
EOF ADDRESS
NOTE POINT VALUES
1 •••
.1 ••
'• • 1.
••• 1
1 •••
.1 .•
• • 1.
(
••• 1
18
( 12)
21
21
21
25
27
( 15)
( 15)
( 15)
( 19)
(1B)
2
29
(1D)
1
FIELD
NAME
* BUFADDR
*BUFPT
BUF2SW
*ENDBUF
FIRSTSW
OPENSW
PCCHR
*PDTFADDR
*PEOF
PFCBSW
PFCBSW1
PFCBSW2
3
8
6
4
2
1,
1,
1,
1,
1,
1,
DTF
RECORD IN BUFFER
BUFFER
LENGTH
LAST BYTE OF BUFFER
WORKAREA
FILE OPEN
READ, IF 0, WRITE
WRITE UPDATE
TWO BUFFERS
UPDATE MODE
FIRST I/O OPERATION
*
*
CYLINDER, HEAD, RECORD
TRACK BALANCE
RECORD OFFSET FROM BUFFER START
NIP VALUE FOR NEXT BLOCK
(LNG=PNPRW)
DISPLACEMENT
DECIMAL (HEX)
6
3
17
11
(6)
(3)
(11)
(E)
17
17
( 11)
21
(15)
o
18
17
17
17
( 11)
(0)
( 12)
(11 )
( 11)
(11 )
*POINTER
Data Areas
185
FIELD
NAME
PNEXTNP
PNOTEPNT
PNPOFFS
PNPRW
PRECLEN
PTRKBAL
*PWAADDR
READSW
UPDSW
UPD2SW
DISPLACEMENT
DECIMAL (HEX)
29
21
27
21
9
25
14
17
17
17
( 1D)
(15)
(1 B)
(15)
(9)
(19)
(E)
( 11)
( 11)
( 11)
~.-"
*POINTER
(
\,-. ~.
186
PGVHEAD
DATA AREA:
SIZE:
9
CREATED BY:}
IPKFA,IPKIA
UPDATED BY:
FUNCTION:
Description of the global vector header.
DISPLMNT
DEC (HEX)
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
0
2
(0)
(2)
2
1
PGVHLEN
PGVHIOP
RECORD LENGTH
GLOBAL VECTOR lOP (LNG=PCSRIOP)
6
(6)
1
JSW0028
PROGRAM SWITCH
1... . ...
SWGVLST
LAST RECORD SWITCH
2
PGVENTl
GLOBAL VECTOR ITEM
1
(1)
FIELD
NAME
[
SIZE
PGVENT1
PGVHIOP
PGVHLEN
SWGVLST
DISPLACEMENT
DECIMAL (HEX)
1
2
0
6
(1)
(2)
(0)
(6)
*POINTER
Data Areas
187
PHYR
DATA AREA:
SIZE:
11-18
CREATED BY: }
IPKKA,IPKLA
UPDATED BY:
FUNCTION:
Description of an entry in the symbol table.
DISPLMNT
DEC
(HEX)
0
(0)
2
(2)
SIZE
2
1 •••
• 1 ••
• • 1.
• •• 1
3
(3)
2
5
(5)
2
3
7
(7)
10
(AI
11
(B)
(13)
19
FIELD
NAME
ENTESD
ENTRYER
HASHPTR
LDNAME
LXFLAG
SYMBREG
SYMESDID
SYMFLAGS
SYMLATTR
SYMLENG
SYMNXT
SYMSRC
*SYMVALUE
*POINTER
188
1
8
1
DISPLACEMENT
DECIMAL (HEX)
2
2
0
2
(2)
(2)
(0)
(2)
2
(2)
2
(2)
5
(5)
(2)
(3)
2
3
10
19
11
7
(A)
(13)
(B)
(7)
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
HASHPTR
HASH
SYMFLAGS
PROGRAM SWITCH
ENTESD
LXFLAG
ENTRYER
LDNAME
FLAGS: ENTRY EXITS IN ESD TAB
ENTRY SYM WITHOUT DEF
ENTRY NOT ALLOWED
ENTRY SYMBOL
SYMLATTR
SYMESDID
SYMVALUE
SYMLENG
SYMSRC
SYMNXT
LENGTH ATTRIBUTE OF SYMBOL
RELOC ATTRIBUTE OF SYMBOL
VALUE OF SYMBOL
MOVE LENGTH OF SYMBOL SOURCE
SYMBOL SOURCE 1-8 CHARACTERS
BEGINNING OF NEXT ENTRY
PINTER
PSTRINGS
DATA AREA:
SIZE:
Variable
CREATED BY:}
IPKCA, IPKCB, IPKCC, IPKCD, IPKDA, IPKDB, IPKEA, IPKGA,
IPKFA,IPKHA,IPKIA,IPKJA, IPKKA, IPKLA, IPKPA
UPDATED BY:
FUNCTION:
Description of the different fields in source records.
DISPLMNT
DEC
(HEX)
C~
0
(0)
1
(1)
2
(2)
0
(0)
1
(1)
2
(2)
0
(0)
1
(1)
2
(2)
0
(0)
1
(1)
2
(2)
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
1
1
1
PNAMLEN
PNAMCOL
PNAMSRC
1
1
1
POPLEN
POPCOL
POPSRC
1
1
1
POPDLEN
POPDCOL
POPDSRC
1
1
1
PSTRLEN
PSTRCOL
PSTRSRC
PFLDLEN
PFLDCOL
PFLDSRC
LENGTH OF NAME
START COLUMN OF NAME
NAME
OP-CODE
LENGTH OF OP-CODE
START COLUMN OF OP-CODE
OP-CODE
OPERAND
LENGTH OF OPERAND
START COLUMN OF OPERAND
OPERAND
STRING
STRING LENGTH
START COLUMN OF STRING
STRING
FIELD (ANY OF ABOVE TYPES)
FIELD LENGTH
START COLUMN OF FIELD
FIELD
*
SIZE
0
(0)
1
1
(1)
1
2
(2)
1
••.• 1
FIELD
NAME
PFLDCOL
PFLDLEN
PFLDSRC
PNAMCOL
PNAMLEN
PNAMSRC
POPCOL
POPDCOL
POPDLEN
POPDSRC
POPLEN
POPSRC
PSTRCOL
PSTRLEN
PSTRSRC
C
THISCHAR
NXTCHAR
EQUATES FOR
SCANNING
DISPLACEMENT
DECIMAL (HEX)
1
(1 )
0
2
(0)
1
(1)
(2)
0
(0)
2
(2)
1
1
(1)
(1)
0
2
0
2
(0)
(2)
(0)
(2)
1
(1 )
0
2
(2)
(0)
*POINTER
Data Areas
189
DATA AREA:
SIZE:
RLDENTRY
6
CREATED BY: }
IPKOA, IPKQA
UPDATED BY:
FUNCTION:
Description of an entry in the relocation dictionary table.
DISPLMNT
(HEX) SIZE
DEC
FIELD
NAME
DECSRIPTION: CONTENTS,
MEANING/USE
0
2
(0)
(2)
2
2
RLADID
RLREFID
ID OF CONSTANT
ID OF REFERENCE
4
(4)
1
RLFLAG
PROGRAM SWITCH
ACONSW
YCONSW
CCWSW
VCONSW
LEN1SW
LEN2SW
SIGNSW
A CONSTANT
Y CONSTANT
CCW CONSTANT
V CONSTANT
BIT 4 USED AS LENGTH
BIT 5 USED AS LENGTH
O-POS • REL. FAC. l-NEG. REL. FAC.
RLADDR
RLDNXT
RELOCATION ADDRESS
NEXT ENTRY
1 ...
.1 ..
.. 1.
. .. 1
1 ...
.1 ..
. . 1.
5
8
(5)
(8)
FIELD
NAME
ACONSW
CCWSW
LEN1SW
LEN2SW
*RLADDR
RLADID
RLDNXT
RLFLAG
RLREFID
SIGNSW
VCONSW
YCONSW
* POINTER
190
3
1
DISPLACEMENT
DECIMAL (HEX)
4
4
4
4
5
0
8
4
2
4
4
4
(4)
(4)
(4 )
(4 )
(5)
(0)
(8)
(4)
(2 )
(4 )
(4)
(4 )
SMTENT
DATA AREA:
SIZE:
10
CREATED BY: }
IPKEA,IPKGA,IPKFA
UPDATED BY:
FUNCTION:
Description of the source macro table.
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANINg/USE
SWSMT
PROGRAM SWITCH
SWSMTATR
SWSMTINM
SWSMTGBL
SWSMTNST
SWSMTNED
SWSMTNGN
ATTRIBUTES
INNER MACROS
GLOBAL VARIABLES
DONT STORE
DONT EDIT
DONT GENERATE
8
SMTNP
SMTLEN
SMTNAME
NIP TO MACRO HEADER (LNG=PNOTEPNT)
LENGTH OF MACRO NAME
MACRO NAME
• • •• '. 1. 1
SMTENTL
1
SMTEFLG
OR INSTEAD OF LENGTH BYTE
END FLAG
ESMT
ESMTB
END OF TABLE FLAG
END OF BLOCK FLAG
DISPLMNT
DEC (HEX) SIZE
0
1
(0)
1 •••
• 1 ••
•• 1.
• •• 1
1.·• •
• 1 ••
1
9
10
[
9
1
1
(1)
(9)
(A)
(9)
1111.111
1111.1.1
FIELD
NAME
ESMT
ESMTB
SMTEE'LG
SMTLEN
SMTNAME
SMTNP
SWSMT
SWSMTATR
SWSMTGBL
SWSMTINM
SWSMTNED
SWSMTNGN
SWSMTNST
DISPLACEMENT
DECIMAL (HEX)
9
9
9
9
10
1
0
0
0
0
0
0
0
(9)
(9)
(9)
(9)
(A)
(1)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
*POINTER
Data Areas
191
SSD
DATA AREA:
SIZE:
4
CREATED BY:}
IPKDA, IPKDB, IPKEA, IPKGA
UPDATED BY:
FUNCTION:
Description of the sequence symbol dictionary.
DISPLMNT
DEC (HEX) SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
0
3
(0)
3
(3)
4
(4)
1
1
SSDOFFS
SSDSYML
SSDSYM
3
(3)
1
SSDFLAG
OFFSET IN EDITED TEXT
LENGTH OF SYMBOL
SYMBOL
OR INSTEAD OF LENGTH BYTE
EO BLOCK/EO DICTIONARY FLAG
1111 .111
1111 .1.1
.111
ESSD
ESSDB
SSDMAXL
END OF DICTIONARY
END OF BLOCK
MAX ENTRY LENGTH
VSD AND SSD INFO BLOCKS
FIELD
NAME
ESSD
ESSDB
SSDFLAG
SSDOFFS
SSDSYM
SSDSYML
DISPLACEMENT
DECIMAL (HEX)
3
3
3
0
4
3
,./
"
\
\"" __ J /
(3)
(3)
(3)
(0)
(4)
(3)
*POINTER
((
'-
\~.~/
192
VSD
DATA AREA:
SIZE:
4
CREATED BY:}
IPKDA,IPKDB,IPKGA
UPDATED BY:
FUNCTION:
Description of the variable symbol dictionary.
DISPLMNT
DEC (HEX)
SIZE
0
(0)
1
(1)
3
4
4
(3)
(4)
(4)
1
2
1
1
2
3
(3)
1
1111.111
1111.1.1
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
VSDTYPE
VSDNDX
VSDSYML
VSDSYM
VSDDIM
VSDFLAG
TYPE
INDEX NUMBER
LENGTH OF SYMBOL
SYMBOL
MAX DIM, ONLY SUBSCRIPTEDS
OR INSTEAD OF LENGTH BYTE
END SEGMENT/END DICTIONARY
EVSD
EVSDB
END OF DICTIONARY
END OF SEGMENT
SSD ENTRY FORMAT
['~
FIELD
NAME
EVSD
EVSDB
VSDDIM
VSDFLAG
VSDNDX
VSDSYM
VSDSYML
VSDTYPE
DISPLACEMENT
DECIMAL (HEX)
3
3
3
(3)
(3)
(4)
(3)
1
(1)
4
(4)
(3)
(0)
4
3
0
*POINTER
c
Data Areas
193
DATA AREA:
SIZE:
WORKDTF
152
CREATED BY:}
IPKAA,IPKBA
UPDATED BY:
FUNCTION:
DISPLMNT
DEC (HEX)
Description of the DTFSD.
SIZE
(0)
2
2
(2)
1'
JSWOO.49 .
PROGRAM SWITCH
WIOCOMPL
THE COMPLETION BI
JSW0050
PROGRAM SWITCH
W1
W2
W3
I/O ERROR BITS
1
WCSW
PROGRAM SWITCH
••••••• 1
WEOF
CSW STATUS BYTE 1
1. •• .' •••
1
(3)
1 •••
••• 1
•• 1.
4
DESCRIPTION: CONTENTS,
MEANING/USE
RESIDUAL COUNT
0
3
FIELD
NAME
(4)
,/
"
",- >/
I
I
5
16
20
29
30
32
38
39
40
(5)
(10)
( 14)
(1D)
(1E)
(20)
(26)
(21)
(28)
42
46
50
(2A)
11
4
9
WMODAD
1
WDEVTYP
WPCTY
2
6
1
2
4
4
4
(2E)
(32)
50
(32)
4
54
56
56
56
(36)
(38)
(38)
(38)
2
5
56
(38)
4
58
59
60
(3A)
(3B)
(3C)
1
1
61
WLOWHEAD
WUPHEAD
WRECLEN
1
WILOWEXT
WCLOWEXT
WCHIEXT
WEXTLIM
WeeHHR
WCCHH
wee
WCURBLK
4
2
1
WH
WREC
SWITCH BYTE
JSWOO52
1
(3D)
WFRST
1 •••
1•••
••• 1
194
WTRKLM
WPNT
CSWSTAT BYTE 2, REST OF CCB .
ADDR OF LOGIC MODULE
DTF TYPE ETC
DTF DEVICE TYP-INIT BY BA
DRMAINING BYTES ON TRACK
-NOT USED BY 10 ROUT
LOWER HEAD LIMIT
UPPER HEAD LIMIT
RECORD LENGTH
INIT EXTENT LOWER LIMIT
CURRENT EXTENT LOWER LIMIT
EXTENT HIGH LIMIT
EXTENT HIGH LIMIT
SEEK-SEARCH BUCKET -BB
CCHHR PART,WHICH IS
SEEK-SEARCH BUCKET
CYLINDER
CURRENT POSITION
(FBA BLOCK NO)
PART OF HEAD NUMBER,ALWAYS 0
HEAD , FOLLOWED BY
RECORD
,.
TO INDICATE
PROGRAM SWITCH
FIRST REC ON TRACK WRITTEN
TRACK LIMIT REACHED AT READ
POINT
'f
i.,
\
''l,_/
r
DISPLMNT
DEC
(HEX)
SIZE
62
(3E)
2
64
(40)
8
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANINGjUSE
WMPCTY
TRACK CAPACITY CONSTANT
RESERVED SPACE FOR RPS
CHANNEL PROGRAM
72
96
96
96
(48)
6
(60)
(60)
16
(60)
2
CCWS
CCWS1
••••• 1 t.
RDAT
1
• ••• .1.1
96
(60)
1
••• 1 .11.
96
96
r
(60)
(60)
97
(61)
104
(68)
WDAT
VWDAT
WCKD
VWCKD
REST OF 1ST CCW
CCWS2
WCCW
WCCW2
(1 E)
(80)
2
RCCW
(70)
(78)
(78)
124
126
(7C)
128
(79)
(80)
WDATAD
WDATLEN
•••• .11.
RDA
1
VRDA
••••• 1.1
128
128
VRDAT
2
2
1
3
2
2
112
120
120
121
128
1
1
7
2
SEEK-SEARCH-TIC CCW
2 CCWS FOR READ, WRITE OR WRUPD
1
2
THE ASSEMBLED CCW:S IN DTF:S
HAVE BEEN ADJUSTED BY INIT TOCCW:S TO WRITE
WRITE CCW 1
WRITE CCW 2
COMMAND (0)
DATA ADDRESS
CHAIN BYTE AND
RECORD LENGTH
CCW:S TO READ OR UPDATE WRITE
WDA
(80)
(80)
(81)
(84)
1
1
3
2
(86)
2
RDATLEN
DATA ADDRESS
CHAIN BYTE AND
RECORD LENGTH
136
(88)
2
RCCWl
CCW TO READ COUNT BUCKET
144
144
144
148
(90)
(90)
(90)
2
5
4
1
WCOUNT
WCNTCHR
WCNTCH
WCNTR
COUNT BUCKET
DISK ADDRESS - CCHHR
CCHH
129
132
134
(94)
1 •• 1 •• 11
149
150
(95)
(96)
VWDA
RDATAD
WCNTH
1
2
WCNTDL
R
(TO ADDRESS HEAD NR)
RECORD LENGTH 1ST BYTE,O
RECORD LENGTH
Data Areas
195
DISPLMNT
DEC
(HEX)
152
153
156
SIZE
(98)
(99)
(9C)
1
3
4
0000 1001
DESCRIPTION: CONTENTS,
FIELD
NAME
ME~NING/USE
WVER3FLl
WVER3FL2
WCISIZE
WSHCON
VERSION 3
VERSION 3
CISIZE IF
CONSTANTS
FLAGS
FLAGS
PRESENT
FOR
160
(AO)
2
EFFECTIVE RECORD LENGTH
WMCOM
162
(A2 )
2
WADCON
CALCULATION
THE FOLLOWING CONSTANTS ARE INIT FOR AND USED BY PPOINTGN ONLY
164
(A4 )
2
EFFECTIVE RECORD LENGTH
WEFRLEN
(A6 )
1
166
PBLKPTRK
BLOCKS/TRACK
(A6 )
PBLKPCI
1
BLOCKS/CONTROL INTERVAL
166
WTRKPCYL
(A 7)
1
TRACKS/CYL FOR POINTGN ROUT
167
CI MAX CAPACITY
CIMAXCAP
168
(A8 )
2
170
(AA)
2
WRECLENl
LENGTHS OF TWO PRECEDING BLOCKS
WRECLEN2
172
(AC)
2
LENGTHS OF TWO PRECEDING BLOCKS
(AE)
1
174
NOTESW
SWITCH FOR CONTR. PNOTE
(AF)
NOTESWI
SWITCH FOR CONTR. PNOTE
1
175
CKDEBASW
176
(BO)
1
CKD/FBA SWITCH
0000 0000
CKDTYPE
CODE FOR CKD DEVICE
1001 0000
FBATYPE
CODE FOR FBA DEVICE
FIELD
NAME
CCWS
CCWS1
CCWS2
CIMAXCAP
CKDFBASW
NOTESW
NOTESWl
PBLKPCI
PBLKPTRK
RCCW
RCCW1
RDA
RDAT
*RDATAD
*RDATLEN
VRDA
VRDAT
VWCKD
VWDA
VWDAT
WADCON
WCC
WCCHH
WCCHHR
WCCW
WCCW2
WCHIEXT
WCKD
WCLOWEXT
WCNTCH
WCNTCHR
WCNTDL
*POINTER
196
DISPLACEMENT
DECIMAL (HEX)
96
96
104
168
176
174
175
166
166
128
136
128
96
129
134
128
96
96
128
96
162
56
56
56
112
120
50
96
46
144
144
150
(60)
(60)
(68)
(A8 )
(BO)
(AE)
(AF)
(A6 )
(A6 )
(80)
(88)
(80)
(60)
(81)
(86)
(80)
(60)
(60)
(80)
(60)
(A2)
(38)
(38)
(38)
PO)
(78)
(32)
(60)
(2E)
(90)
(90)
(96)
C.-
{~
FIELD
NAME
WCNTR
WCOUNT
WCSW
WCURBLK
WDA
WDAT
*WDATAD
*WDATLEN
WDEVTYP
WEFFRLEN
WEOF
WEXTLIM
WFRST
WH
WILOWEXT
WIOCOMPL
WLOWHEAD
WMCON
WMODAD
WMPCTY
WPCTY
WPNT
WREC
WRECLEN
WRECLEN1
WRECLEN2
WTRKLM
WTRKPCYL
WUPHEAD
WVER3FL1
WVER3FL2
W1
W2
W3
DISPLACEMENT
DECIMAL (HEX)
148
(94)
144
(90)
4
(4)
56
(38)
128
(80)
96
(60)
121
(79)
126
PE)
29
(11:')
164
(A4)
4
(4)
50
(32)
61
(3D)
59
(3B)
42
(2A)
2
(2)
38
(26)
160
(AD)
16
(10)
62
(3E)
30
(1 E)
61
(3D)
60
(3q
40
(28)
170
(AA)
172
(AC)
61
(3D)
167
(A7)
39
(27)
152
(98)
153
(99)
3
(3)
3
(3)
3
(3)
*POINTER
Data Areas
197
XREFREC
DATA AREA:
SIZE:
11-17
~EATED BY: }
IPKlCA,IPKLA
UPDATED BY:
FUNCTION:
Description of an entry in the cross-reference table.
DISPLMNT
DEC (HEX)
0
(0)
8
(8)
SIZE
e
1
....
1.1.
• ·1 ••••••
... 1•••••
9
11
11
13
15
18
(9)
(B)
(B)
(D)
2
1
2
(F)
3
1
(12)
FIELD
NAME
DEFIN
DUPL
REF
XDEFEND
XREFEND
XRESDID
XRFLAG
XRLATTR
XRSN
XRSYMBOL
I·XRVALUE
·POINTER
198
2
DISPLACEMENT
DECIMAL (HEX)
8
8
8
18
11
13
8
11
9
0
15
(8)
(8)
(8)
(12t
(B)
(D)
(8)
(B)
(9)
(0)
(Ft
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
XRSYMBOL
XRFLAG
XREF ENTRIES FOR DEFN AND REF
CROSSREF FLAG
DWL
REF
DEFIN
DUPLICATE
REFERENCE
DEFINITION
XRSN
XREFEND
XRLAT'l'R
XRESDID
XRVALUE
XDEFEND
STATEMENT NUMBER
END OF REFERENCE RECORD
LENGTH ATTRIBUTE
ESDID
SYMBOL VALUE
END OF DEF OR DUPL RECORD
DATA AREA:
SIZE:
XRFENTRY
Variable (depending upon the literal source)
CREATED BY:}
IPKRA,IPKRB,IPKRC
UPDATED BY:
FUNCTION:
Description of a cross-reference record.
DISPLMNT
DEC (HEX)
0
SIZE
(0)
0
1
XRFEOB
1
VXRFEOB
(0)
1 •• 1
LITERAL RECORD IF NUMERIC
(0)
(0)
1
1
VXRFLIT
0
0
(0)
(0)
11
6
XRFREF
XRFPSEUD
0
(0)
8
XRFSYM
PSEUDO NAME FOR LITERAL XREF
FIRST BYTE IN XREF RECORD
SYMBOL NAME
8
(8)
1
XRFLAG
PROGRAM SWITCH
DUPSW
REFSW
DEFSW
DUPLICA'IE DEFINITION RECORD
REFERENCE RECORD
LITERAL DEFINITION RECORD
XREF STATEMENT NUMBER
1 •••
9
111
11
13
1 15
....
....
11
12
2
(9)
(B)
(B)
2
(D)
2
(F)
3
XRFSN
XRF'7AL
XRFLATTR
XRFESDID
XRFVALUE
(B)
(C)
1
1
XRFLITLN
XRFLSRC
FIELD
NAME
DEFSW
DUPSW
REFSW
VXRFEOB
VXRFLIT
XRFBYTE1
XRFEOB
XRFESDID
"'/
XRFLIT
XREF END OF BLOCK
0
0
• 1 ••
• • 1,.
[,
DESCRIPTION: CONTENTS,
MEANING/USE
XRFBYTEl
1111.111
·...
r
FIELD
NAME
7
FIRST BYTE IN XREF RECORD
LENGTH ATTR OF SYMBOL
ESD 10
VALUE OF SYMBOL
DEFINITION RECORD FIELD
LENGTH OF LIT XREF
BEGINNING OF LITERAL SOURCE
DISPLACEMENT
DECIMAL (HEX)
8
8
8
(8)
(8)
(8)
(0)
(0)
(0)
0
0
0
0
(0)
13
(D)
*POINTER
Data Areas
199
FIELD
NAME
XRFLAG
XRFLA'l"l'R
XRFLI'l'
XRFLI'l'LN
XRFLSRC
XRFPSEUD
XRFREF
XRFSN
XRFSYM
XRFVAL
XRFVALUE
·POIN'l'ER.
200
DISPLACEMEN'l'
DECIMAL (HEX)
8
11
(8)
0
(0)
11
12
(B)
(C)
0
0
9
0
(0,
(0)
(9,
(0)
11
15
(B)
(B)
(F)
I", .. /
DATA AREA FIELD CROSS-REFERENCE
The following is a directory of field entries in the data areas
illustrated in this section. The list includes the field name, DSECT
name, and the field displacement in decimal and hexadecimal. FOr a
cross-reference of the statements modifying or referencing these
fields, see Appendix I.
(~
C··
."
Data Areas
201
FIELD
ASSGNSW
BCCOLUMN
BCDUMMY
BCITEM
BCITEMST
BEGOFIN
BEGOFOUT
BITLEM
BLKINCNO
BLKINSW
BLKNP1
BLKNP2
BOTTHALF
BTYPE
* BUFADDR
* BUFADDR1
* BUFADDR2
* BUFADDR3
*BUFPT
*BUFPT1
*BUFPT2
*BUFPT3
BUF2SW
* BYTEOFFS
CCWS
CCWSW
CCWSl
CCWS2
CHARC
CHARFLAG
CHAR ITEM
CHARK
CHART
CHITEMK
CHITEMST
CHITEMT
CIMAXCAP
CKDFBASW
CMTYPE
CODEHWD
CODESW
COMMAFLAG
COMMODSW
*CORADDR
CROSSNP
CROSSW
CTYPE
*CURESD
CURNP
CURSECT
CURSECTL
DBCORE
DBFULLSW
DBVSDADR
DCEXP
DC VAL
DIMBIT
DEFIN
DEFSW
DIRENT
DLINK
DSECT
DISPLACEMENT
DECIMAL (HEX)
PCOMMON
EDPNI
EDPMI
EDPMI
EDPMI
PCOMMON
PCOMMON
PDCEDIT
PCOMMON
DIRENTRY
DIRENTRY
DIRENTRY
PCOMMON
PDCEDIT
PFCB
PCOMMON
PCOMMON
PCOMMON
PFCB
PCOMMON
PCOMMON
PCOMMON
PFCB
PCOMMON
WORKDTF
RLDENTRY
WORKDTF
WORKDTF
EPAR
EPAR
EDPMI
EPAR
EPAR
EDPMI
EDPMI
EDPMI
WORKDTF
WORKDTF
ESDENTRY
CODE
CODE
CODE
PCOMMON
DIRENTRY
PCOMMON
PCOMMON
PDCEDIT
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PDCEDIT
PDCEDIT
GSDENTRY
XREFREC
XRFENTRY
DIRENTRY
PCOMMON
1922
10
10
10
11
2044
2040
5
1995
19
5
11
2035
4
6
1694
1729
1764
3
1691
1726
1761
17
1953
96
4
96
104
3
0
1C
2
1
11
12
10
168
172
0
0
0
0
1926
0
1961
1922
4
1992
1967
1932
1931
1951
1926
2000
0
0
3
8
8
0
2024
(782)
(A)
(A)
(A)
(B)
(7FC)
(7F8)
(5)
(7D3)
( 13)
(5)
(B)
(7F 3)
(4)
(6)
(69E)
(6C 1)
(6E4)
(3)
(69B)
(6BE)
(6E1)
( 11)
(7A 1)
(60)
(4)
(60)
(68)
(3)
(O)
(A)
(2)
(1)
(B)
(C)
(A)
(A8)
(AC)
(0)
(0)
(0)
(0)
(786)
(0)
(71.9)
(782)
(4)
(7C8)
(7AF)
(78C)
(78B)
(79F)
(786)
(7DO)
(0)
(0)
(3)
(8)
(8)
(0)
(7E8)
FIELD
DONESYM
DSCOMSW
DSTYPE
DTYPE
DUPL
DUPSW
EAWF2END
EDFLAG
EDPMIORG
EFLG
EGSD
EGSDB
EITEMNK
EITEMNP
ELINK
EMNA
EMNAB
*ENDBUF
ENDID
ENDITEM
ENDSW
ENTESD
ENTRYCNT
ENTRYER
ENTVALUE
EOFLDPTR
EPARFLAG
EPARREST
EPART
EQORGSW
ERDSCOM
ERITEM
ERRAREA
ERRCONST
ERRCOUNT
ERRINFO
ERRINOPD
ERRLNG
ERRNO
ERRNO
ERRSW
ERRTXT
ERTYPE
ESDESDID
* ESDHILC
ESDIDHI
ESDIDLO
* ESDLCTR
ESDNXT
* ESDPTR
ESDSYM
ESDTABSW
ESDTYPE
ESMT
ESMTB
ESSD
ESSDB
ETYPE
EVALUE
EVLENGTH
EVNXT
EVPLUS
DSECT
DISPLACEMENT
DECIMAL (HEX)
PETFLDS
PCOMMON
ESDENTRY
PDCEDIT
XREFREC
XRFENTRY
PCOMMON
CODE
EDPMI
MNAENT
GSDENTRY
GSDENTRY
EDPMI
EDPMI
PCOMMON
MNAENT
MNAENT
PFCB
PCOMMON
EDPMI
PCOMMON
PHYR
PCOMMON
PHYR
PETFLDS
ERRENT
EPAR
EPAR
EPAR
PCOMMON
PETFLDS
EDPMI
ERRBYTES
ERRBYTES
PCOMMON
ERRENT
PCOMMON
ERRBYTES
ERRBYTES
ERRENT
ERR BYTES
ERRBYTES
ESDENTRY
ESDENTRY
ESDENTRY
PCOMMON
PCOMMON
ESDENTRY
ESDENTRY
PCOMMON
ESDENTRY
PCOMMON
ESDENTRY
SMTENT
SMTENT
SSD
SSD
PDCEDIT
EVALSTCK
EVALSTCK
EVALSTCK
EVALSTCK
0
2031
0
4
8
8
1920
0
6
2
3
3
11
10
1976
2
2
11
2011
10
1963
2
(0)
(7EF)
(O)
(4)
(8)
(8)
(780)
(0)
(6)
(2)
(3)
(3)
(B)
(A)
(788)
(2)
(2)
(B)
(7DB)
(A)
(7AB)
(2)
2008
(7D8)
2
(2)
0
5
0
2
1
1922
0
10
0
0
2036
0
1926
2
0
0
1
3
0
1
6
1955
2013
3
17
1987
9
1963
0
9
9
3
3
4
1
5
10
5
(0)
(5)
(0)
(2)
( 1)
(782)
(0)
(A)
(0)
(0)
(7F4)
(0)
(782)
(2)
(0)
(0)
( 1)
(3)
(0)
( 1)
(6)
(7A3)
(7DD)
( 3)
(11)
(7C4)
(9)
(7AB)
(0)
(9)
(9)
( 3)
(3)
(4)
(1)
(5)
(A)
(5)
*POINTER.
,if
~=/
202
FIELD
EVRELOC
EVSD
EVSDB
EVVARY
EXPLEN
EXPON
FILE1NP
FILE1NPR
FILE12EX
FILE2NP
FILE2NPR
FILL
FIRSTSW
FLAG
FLAGPMSK
FLINK
FTYPE
GARDIM
GAREND
GAR FLAG
GARLEN
GARLGTH
GARNDX
GARTYPE
*GAVAPT
*GBVAPT
* GCVAPT
GLINK
GSDDIM
GSDFLG
GS DL EN
GSDNDX
GSDSYM
GSDTYPE
HASHPTR
BLINK
HTYPE
IATESTSW
IFSAVE
IJJALSW
IJJCPADJ
IJJCPCCB
IJJCPCCW
IJJCPCNT
IJJCPCTR
IJJCPDAT
IJJCPF1
IJJCPMAX
IJJCPREC
IJJCPRMX
IJJCPSCW
IJJCPSEK
IJJCPSST
IJJCPSWS
IJJCPUPP
IJJCPVER
IJJCPXTN
IJJCP2ND
. IJJC2NSW
IJJECCW1
IJJECCW2
IJJFRSTR
DSECT
DISPLACEMENT
DECIMAL (HEX)
EVALSTCK
VSD
VSD
EVALSTCK
PDCEDIT
PDCEDIT
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
DIRENTRY
PFCB
DIRENTRY
EPAR
PCOMMON
PDCEDIT
GARENT
GARENT
GARD
GARD
GARENT
GARENT
GARENT
PCOMMON
PCOMMON
PCOMMON
PCOMMON
GSDENTRY
GSDENTRY
GSDENTRY
GSDENTRY
GSDENTRY
GSDENTRY
PHYR
PCOMMON
PDCEDIT
PCOMMON
PCOMMON
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
I JJC PTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
IJJCPTAB
6
3
3
7
5
0
1880
1886
1904
1892
1898
17
17
19
0
1960
4
4
4
6
0
3
1
0
1940
1943
1946
1913
4
3
3
1
4
0
0
1949
4
1926
1672
44
74
0
112
76
80
82
30
54
64
72
48
60
88
42
68
128
40
45
43
152
160
73
(6)
(3)
(3)
(7)
(5)
(0)
(758)
(75E)
(770)
(764)
(76A)
(11 )
( 11)
(13)
(0)
(7A8)
(4)
(4)
(4)
(6)
(0)
(3)
( 1)
(0)
(794)
(797)
(79A)
(779)
(4)
(3)
(3)
(1)
(4)
(0)
(0)
(79D)
(4)
(786)
(688)
(2C)
(4A)
(0)
(70)
(4C)
(50)
(52)
(1E)
(36)
(40)
(48)
(30)
(3C)
(58)
(2A)
(44)
(80)
(28)
(2D)
(2B)
(98)
(AO)
(49)
FIELD
IJJLOAD
IJJLOHED
IJJSAVEA
ILINK
IMPLEN
INDENT
INDEX
INDKEY
INDNP
INDXB
INDXC
INDXCL
IN DX FLAG
ITEM
ITEMATSW
ITEMFLAG
ITEliIKWSW
ITEML
ITEMLISW
ITEMLONG
ITEMSLSW
ITEMT
ITEM1ST
JLINK
KEY
KITEM
KLINK
KWTLEN
LBARADDR
LCLASIZ
LCLASZ
LCLBSIZ
LCLBSZ
LCLCSIZ
LCLCSZ
LDNAME
LDTYPE
LEN1SW
LEN2SW
LITSW
LLINK
LMNAME
* LOCCNTHI
* LOCCNTR
LOCLATR
LOCRATR
LOCSTMH
LOCTYPE
LPNAME
LTYPE
LX FLAG
MACNAM
MACROSW
MAN
MFLAGS
MIB
*MIBADDR
MLEVEL
MNALEN
MNAM
MNAME
MNAMEL
DSECT
DISPLACEMENT
DECIMAL (HEX)
IJJCPTAB
IJJCPTAB
IJJCPTAB
PCOMMON
PDCEDIT
INDENTRY
EDPMI
INDENTRY
INDENTRY
EPAR
EPAR
EPAR
EPAR
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
PCOMMON
DIRENTRY
EDPMI
PCOMMON
KEYTAB
PCOMMON
PCOMMON
MAC HEAD
PCOMMON
MAC HEAD
PCOMMON
MAC HEAD
PHYR
ESDENTRY
RLDENTRY
RLDENTRY
PCOMMON
PCOMMON
EDPMI
PCOMMON
PCOMMON
PCOMMON
PCOMMON
OCSTMH
PCOMMON
EDPMI
PDCEDIT
PHYR
EDPMI
PCOMMON
MNAENT
PCOMMON
PCOMMON
PCOMMON
PCOMMON
MNAENT
PCOMMON
MACHEAD
MACHEAD
84
52
168
19811
5
0
16
0
11
1
6
5
0
10
8
8
8
9
8
8
8
7
8
1928
11
10
2072
0
1994
1932
16
1935
19
1935
22
2
0
4
4
1963
2072
7
2028
2025
2021
2023
7
2031
7
4
2
8
1926
3
1922
1922
1948
1951
2
19211
8
7
(54)
(34)
(A8)
(760)
(5)
(0)
(10)
(0)
(B)
(1)
(6)
(5)
(0)
(A)
(8)
(8)
(8)
(9)
(8)
(8)
(8)
(7)
(8)
(788)
(B)
(A)
(818)
(0)
(76A)
(78C)
(10)
(78F)
(13)
(792)
(16)
(2)
(0)
(4)
(4)
(7AB)
(818)
(7)
(7EC)
(7E9)
(7E5)
(7E7)
(7)
(7EF)
(7)
(4)
(2)
(8)
(786)
(3)
(782)
(782)
(79C)
(79D)
(2)
(784)
(8)
(7)
OINTER.
Data Areas
203
,
FIELD
MNANDX
NALTSRC
NERNUMB
NEXPF1
NEXPF2
NEXPF3
NEXTCODE
NLINK
NOPRNUMB
NOSTRING
NOTESW
NOTESW1
NPLITBEG
NPMIB
NPSSDR1
NPSSDWL
NPTEMP
NPTEMPCC
NPTEMPH
NPTEMPR
NPTEMPTB
NPVSD
NPVSDR1
* NXTENTRY
NXTRA
OFFS
OLINK
OM ITEM
OPENSW
OPND
OVFLADDR
PABENDC
PAFLAG2
*PAFLD
PAFLG
PALGNBIT
PALIGN
PANXT
PASSGNSW
PBITAL
PBITALGN
PBLKPCI
PBLKPTRK
*PBUFLEN1
*PBUFLEN2
*PBUFLEN3
PB1FISIZ
PB12SIZ
PCAEDTXT
PCASRC
PCBTYPE
PCCHR
PCI
PCIBAL
PCNXT
PCODE
PCONTSW
PCSREAD
PCSRFLGA
PCSRHEAD
PCSRIOP
PCSRLEN
*POINTER.
204
DSECT
MNAENT
EDPMI
NTABFMT
PETFLDS
PETFLDS
PETFLDS
CODE
PCOMMON
NTABFMT
ERRENT
WORKDTF
WORKDTF
PCOMMON
OCSTMH
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
EVALSTCK
DIRENTRY
PCOMMON
EDPMI
PFCB
ERRBYTES
PCOMMON
PCOMMON
PETFLDS
PETFLDS
PETFLDS
PETR
PCOMMON
PETFLDS
PCOMMON
PDCOUT
PDCEDIT
WORKDTF
WORKDTF
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCSR
PCSR
PETR
PFCB
PFCB
PFCB
PETFLDS
PETFLDS
PCOMMON
PCSR
PCSR
PCSR
PCSR
PCSR
DISPLACEMENT
DECIMAL (HEX)
0
8
0
1
1
1
2
1960
1
5
170
171
1913
7
1963
1970
1660
1660
1662
1663
1664
1947
1987
2004
3
3
1960
10
17
1
1997
1669
0
1
0
2
1659
4
2035
7
7
166
166
1697
1732
1767
1890
1892
6
6
5
21
21
25
3
1
1904
5
6
0
2
0
(0)
(8)
(0)
( 1)
(1)
(1 )
(2)
(7A8)
(1)
(5)
(AA)
(AB)
(779)
(7)
(7AB)
(7B2)
(67C)
(67C)
(67E)
(67F)
(680)
(79B)
(7C3)
(7D4)
(3)
(3)
(7A8)
(A)
( 11)
( 1)
(7CD)
(685)
(0)
(1)
(0)
(2)
(67B)
(4)
(7F3)
(7)
(7)
(A6)
(A6)
(6A 1)
(6C4)
(6E7)
(762)
(764)
(6)
(6)
(5)
( 15)
(15)
(19)
(3)
( 1)
(770)
(5)
(6)
(0)
(2)
(O)
FIELD
PCSRLIT1
PCSRLIT2
PCSRLIT3
PCSRMCOP
PCSROP
PCSROPX
PCSROPO
PCSROP3
PCSRSTR1
PCSWOVL
PCTYPE
PDCCODE
PDCCONT
PDCED
PDCFL
PDCFLAG
PDCFLD
PDCLEN
PDCSTYPE
PDCTYPE
PDECK
PDEFENT
PDF
PDSWOVL
*PDTFADDR
*PDTFADR1
*PDTFADR2
*PD'rFADR3
PDUPC
PDCUPCONT
PDUPEXP
PDUPLFAC
PDUPSYM
PEDECK
*PENDBUF1
*PENDBUF2
*PENDBUF3
PENTDEF
PENTVAL
PEOBSW
*PEOF
*PEOFADR1
*PEOFADR2
*PEOFADR3
PERLNG
PERNOQ
PERREXC
PERREXPT
PERRHD
PERRIOP
PERRIOPC
PERRIOP1
PERRIOP2
PERRLEN
PERRSTNO
PERRSTNR
PERRSTR
PERRSTRL
PERSRC
PER2STR
PETDEAD
PETEPX
DSECT
DISPLACEMENT
DECIMAL (HEX)
PCSR
PCSR
PCSR
PCSR
PCSR
PCSR
PCSR
PCSR
PCSR
PCOMMON
ESDENTRY
PDCOUT
PETR
PDCOUT
PDCOUT
PDCEDIT
PDCEDIT
PDCEDIT
PETR
PDCEDIT
PCOMMON
PETR
PCOMMON
PCOMMON
PFCB
PCOMMON
PCOMMON
PCOMMON
PDCOUT
PDCEDIT
PDCEDIT
PDCOUT
PETR
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PETFLDS
PCOMMON
PFCB
PCOMMON
PCOMMON
PCOMMON
PETR
PETR
PETR
PERR
PERR
PERR
PERR
PERR
PERR
PERR
PETR
PERR
PETR
PERR
PETR
PETR
PETR
PETR
2
2
2
2
3
4
2
5
7
1871
0
11
2
3
6
6
2
1
2
4
1659
2
1659
1871
0
1688
1723
1758
6
6
0
0
2
1659
1699
1734
1769
1922
9
1658
18
1706
1741
1776
6
2
9
9
0
2
2
3
4
0
6
6
8
8
7
2
5
4
(2)
(2)
(2)
(2)
(3)
(4)
(2)
(5)
(7)
(74F)
(0)
(B)
(2)
(3)
(6)
(6)
(2)
(1)
(2),
(4)
(67B)
(2)
(67B)
(74F)
(0)
(698)
(6BB)
(6DE)
(6)
(6)
(0)
(0)
(2)
(67B)
(6A3)
(6C6)
(6E9)
(782)
(9)
(67A)
(12)
(6AA)
(6CD)
(6FO)
(6)
(2)
(9)
(9)
(0)
(2)
(2)
(3)
(4)
(0)
(6)
(6)
(8)
(8)
(7)
(2)
(5)
(4)
DSECT
DISPLACEMENT
DECIMAL (HEX)
PETHEAD
PETIOP
PETLEN
PETMCOP
PETOP
PETOPO
PETOP3
PETSTNO
PEXPFLAG
PEXPVAL
PFCBSW
PFCBSW1
PFCBSW2
*PFETCHDA
*PFETCHOB
*PFETCHIA
*PFETCHIB
*PFETCHIC
PFILEl
PFILE2
PFILE3
*PFINOP'I'
PFLOCOL
PFLOLEN
PFLOSRC
PFROMLIB
PFRSTASG
PFRSTOV
PGBLASIZ
PGBLBSIZ
PGBLCSIZ
PGBLSIZ
PGENSTMT
PGENSW
PGEN5SW
PGFMSGSW
PGVENTl
PGVHIOP
PGVHLEN
*PHICORE
PIBSW
PICSW
PETR
PETR
PETR
PETR
PETR
PETR
PETR
PETR
PETFLDS
PETFLOS
PFCB
PFCB
PFCB
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PSTRINGS
PSTRINGS
PSTRINGS
PCSR
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCSR
PCOMMON
PCOMMON
PCOMMON
PGVHEAD
PGVHEAO
PGVHEAD
PCOMMON
PCOMMON
PCOMMON
0
2
0
2
3
2
5
6
1
5
17
17
17
2008
2012
1956
1960
1964
1688
1723
1758
1896
1
0
2
6
1922
2035
1945
1948
1951
1945
6
1926
1926
1863
7
2
0
1666
1926
1926
(0)
(2)
(0)
(2)
(3)
(2)
(5)
(6)
( 1)
(5)
( 11)
*PICTLCNT
*PICTLEND
*PICTLST
P IERCNT
P IERSTK
PINEOFSW
*PINPUTPT
PINSTRLN
PISWOVL
PITEM
PJSWOVL
PKSWOVL
PLA
PLASTSUB
PLBEOFSW
PLENATTR
PLENFLAG
PLINECNT
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PETR
PCOMMON
EDPMI
PCOlV'.MON
PCOMMON
PETFLDS
PCOMMON
PCOMMON
PETR
PCEDIT
PCOMMON
1856
1855
1854
1974
1976
1659
1899
5
1871
10
1871
1871
2
2035
1658
8
5
1848
(740)
(73F)
(73E)
(7B6)
(7B8)
(67B)
(76B)
(5)
(74F)
(A)
(74F)
(74F)
(2)
(7F 3)
(67A)
(8)
(5)
(738)
FIELD
r
( 11)
( 11)
(708)
(7DC)
(7A4)
(7A8)
(7AC)
(698)
(6BB)
(60E)
(768)
(1 )
(0)
(2)
(6)
(782)
(7F3)
(799)
(79C)
(79F)
(799)
(6)
(786)
(786)
(747)
(7)
(2)
(0)
(682)
(786)
(786)
FIELD
PLINENUM
PLINK
PLIST
PLITBLK
PLITLEN
*PLOCCNTR
PLORMIN
PLRECLN
PLRELATR
*PMAVBSIZ
*PMAVNO
PMAVNP
PMAXBSIZ
*PMIBLEN
PMODEXP
PMODFLAG
PMODIFS
PNAMCOL
PNAME
PNAMFLO
PNAMLEN
PNAMLNG
PNAMSRC
PNEXTNP
PNEXTNPl
PNEXTNP2
PNEXTNP3
PNOBKSW
PNOCONST
PNOSEQSW
PNOSTNO
PNOTEPNT
PNPMACl
PNPOCGV
PNPOFFS
PNPOINTl
PNPOINT2
PNPOINT3
PNPRW
PNWTRKSW
PNXTBKT
PNXTMOD
POLSTR
POPCOL
POPOCOL
POP OLEN
POPDSRC
POP FLAG
POPLEN
POPNUMB
POPSRC
POPSW
POVLSW
PPAGENO
PRA
PRATT
PREC
PRECLEN
PREFCNT
PRLD
PROGID
DSECT
DISPLACEMENT
DECIMAL (HEX)
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PETR
EVALSTCK
PCOMMON
PETR
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCEDIT
PCEDIT
PCEOIT
PSTRINGS
PETFLDS
PETR
PSTRINGS
PETFLOS
PSTRINGS
PFCB
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PCEOIT
PCOMMON
PCSR
PFCB
PCOMMON
PCOMMON
PFCB
PCOMMON
PCOMMON
PCOMMON
PFCB
PCOMMON
PETFLOS
PCEDIT
PETFLDS
PSTRINGS
PSTRINGS
PSTRINGS
PSTRINGS
PETFLOS
PSTRINGS
PETR
PSTRINGS
PCOMMON
PCOMMON
PCOMMON
PETFLDS
PETFLDS
PFCB
PFCB
PCOMMON
PCOMMON
PCOMMON
1923
1659
1659
1909
1911
12
0
1670
10
1941
1943
1935
1787
1956
1
0
9
1
1
16
0
0
2
29
1717
1752
1787
1658
3
1863
2
21
1912
1927
27
1709
1744
1779
21
1658
9
4
2
1
1
0
2
0
0
4
2
1658
1871
1925
4
10
24
9
1936
1658
1850
(783)
(67B)
(67B)
(775)
(777)
(C)
(0)
(686)
(A)
(795)
(797)
(78F)
(6FB)
(7A4)
( 1)
(0)
(9)
( 1)
( 1)
(10)
(0).
(0)
(2)
(10)
(6B5)
(608)
(6FB)
(67A)
(3)
(747)
(2)
( 15)
(778)
(787)
( 1B)
(6AD)
(600)
(6F3)
( 15)
(67A)
(9)
(4)
(2)
( 1)
( 1)
(0)
(2)
(0)
(0)
(4)
(2)
(67A)
(74F)
(785)
(4)
(A)
(18)
(9)
(790)
(67A)
(73A)
*POINTER
(
'.".
f
Data Areas
205
DSECT
DISPLACEMENT
DECIMAL (HEX)
PRONAME
PSAVETBL
PSAVPT
PSAVTEMP
PSBSTNAM
PSBSTOP
PSBSTOPD
PSFLAG2
PSIGN
PSLENATR
PSMACDEF
PSPILLA
PSRELATR
PSTMCNAM
PSTMCSEQ
PSTRCOL
PSTRLEN
PSTRSRC
*PSVALUE
PSXREF
PSYMBOL
PSYMFLAG
PSYMLEN
PSYMNO
*PSYMTABL
PSYSNDX
PSYSPLEN
PSYSPSTR
PTRKBAL
PTRUNR
PTRUNRHT
PTYPE
PUNDEFSW
PVSDSIZE
*PWAADDR
*PWAADDR1
*PWAADDR2
*PWAADDR3
PXREF
EDPMI
PCOMMON
PCOMMON
PCOMMON
PCSR
PCSR
PCSR
PETFLDS
PETFLDS
PETFLDS
PCSR
PCOMMON
PETFLDS
PCOMMON
PCOMMON
PSTRINGS
PSTRINGS
PSTRINGS
PETFLDS
PCOMMON
PETFLDS
PETFLDS
PETFLDS
PETR
PCOMMON
PCOMMON
PCOMMON
PCOMMON
PFCB
PDCOUT
PDCEDIT
PDCEDIT
PCOMMON
PCOMMON
PFCB
PCOMMON
PCOMMON
PCOMMON
PCOMMON
8
1796
1836
1840
6
6
6
0
9
1
6
1968
3
1912
1915
1
0
2
5
1658
1
0
0
15
2032
1927
1880
1881
25
6
6
4
1926
1904
14
1702
1737
1772
1659
( 8)
(.704)
(72C)
(730)
(6)
(6)
(6)
(0)
(9)
( 1)
(6)
(.7B 0)
(3)
(778)
(77B)
( 1)
(0)
(2)
(5)
(67A)
( 1)
(0)
(0)
(F)
(7FO)
(787)
(758)
(759)
( 19)
(6)
(6)
(4)
(786)
(770)
(E)
(6A6)
(6C9)
(6EC)
(67B)
RANR
RAONE
RCCW
RCCW1
RDA
RDAT
*RDATAD
*RDATLEN
READSW
REF
REFSW
RELLEN
*RLADDR
RLADID
RLDNXT
RLFLAG
RLREFID
*SAVADDR
SAVAR
SAVESDNP
SAVREG1
EVALSTCK
EVALSTCK
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
PFCB
XREFREC
XRFENTRY
EVALSTCK
RLDENTRY
RLDENTRY
RLDENTRY
RLDENTRY
RLDENTRY
PCOMMON
PCOMMON
PCOMMON
PCOMMON
0
1
128
136
128
96
129
134
17
8
8
8
5
0
8
4
2
2048
2051
1967
2060
(0)
( 1)
(80)
(88)
(80)
(60)
( 81)
(86)
( 11)
(8)
(8)
(8)
(5)
(0)
(8)
(4)
(2)
(800)
(803)
(7B5)
(80C)
FIELD
-
*POINTER
206
FIELD
SAVREG2
SCALE
SDEFB
SDEFC
SDEFFLAG
SDEFITEM
SDEFK
SDEFT
SDITEMB
SDITEMK
SDIEMST
SDITEMT
SDTYPE
SECTC
SECTCL
SECTFLAG
SECTSW
SEITEM
SEQFLD
SFLAG
SIGNSW
SMTEFLG
SMTLEN
SMTNA.~E
St-1TNP
SMTSIZE
SREG
SSDADDR
SSDBLK1
*SSDEND
SSDFLAG
SSDINFO
SSDNP
SSDNPT
SSOOFFS
SSDSIZE
SSDSYM
SSDSYML
SSITEMK
*STABEND
*STARTLOC
STARTSW
STEP
STLENGTH
STMTNR
STRING
STRPTR
STYPE
SUBE
SUBEFLAG
SUB ITEM
SUBEL
SUBLFLAG
SUBLHEAD
SUBLK
SUBLL
SUBLN
SUBS ITEM
SWATRINS
SWATTR
SWCAFT
DSECT
DISPLACEMENT
DECIMAL (HEX)
PCOMMON
PCEDIT
EPAR
EPAR
EPAR
EDPMI
EPAR
EPAR
EDPMI
EDPMI
EDPMI
EDPMI
ESDENTRY
EPAR
EPAR
EPAR
PCOMMON
EDPMI
EDPMI
CODE
RLDENTRY
SMTENT
SMTENT
SMTENT
SMTENT
PCOMMON
PETFLDS
PCOMMON
PCOMMON
PCOMMON
SSD
PCOMMON
PCOMMON
MAC HEAD
SSD
PCOMMON
SSD
SSD
EDPMI
PCOMMON
PCOMMON
PCOMMON
PCOMMON
EVALSTCK
PCOMMON
ERRENT
ERRENT
PDCEDIT
EPAR
EPAR
EDPMI
EPAR
EPAR
EPAR
EPAR
EPAR
EPAR
EDPMI
EDPMI
PCOMMON
PCOMMON
2064
0
2
6
0
10
5
1
11
14
15
10
0
12
11
10
1963
10
18
0
4
9
9
10
1
1902
0
1953
1969
2019
3
1958
1941
25
0
1961
4
3
10
2000
1952
1922
1844
0
1921
5
2
4
7
5
10
6
0
0
4
1
3
10
6
1922
1889
(810)
(0)
(2)
(6)
(0)
(A)
(5)
(1)
(B)
(E)
(F)
(A)
(0)
(C)
(B)
(A)
(7AB)
(A)
( 12)
(0)
(4)
(9)
(9)
(A)
(1)
(76E)
(0)
(7A 1)
(7B 1)
(7E3)
(3)
(7A6)
(795)
( 19)
(0)
(7A9)
(4)
(3)
(A)
(7DO)
(7AO)
(782)
(734)
(0)
(781)
(5)
(2)
(4)
(7)
(5)
(A)
(6)
(0)
(0)
(4)
( 1)
(3)
(A)
(6)
(782)
(761)
FIELD
r
SWCAOC
SWCOPY
SWDS
SWEFILE
SWFLUSH
SWGBLX
SWGVLST
SWINM
SWKT
SWLA
SWLASTKW
SWMACRO
SWMATR
SWMGBL
SWMH
SWMINM
SWMIOC
SWMKEYW
SWNOED
SWNOGEN
SWNOSTOR
SWOC
SWPMI1
SWPROTO
SWREPRO
SWSFILE
SWSM
SWSMT
SWSMTATR
SWSMTGBL
SWSMTINM
SWSMTNED
SWSMTNGN
SWSMTNST
SWSTART
SWSTR
SWSUBST
SW2
!*SYMADDR
SYMBREG
SYMESDID
SYMFLAGS
SYMLATTR
SYMLENG
SYMNXT
SYMSRC
,*SYMVALUE
SYM1C
SYM1FLAG
SYMl I
SYMl ITEM
SYM1K
SYM1L
SYM1S
SYM1T
SYM2C
SYM2FLAG
SYM2ITEM
SYM2K
SYM2L
SYM2T
DSECT
DISPLACEMENT
DECIMAL (HEX)
PCOMMON
PCOMMON
PCOMMON
PCSR
PCOMMON
PCOMMON
PGVHEAD
PCOMMON
PCOMMON
PCOMMON
KEYTAB
PCOMMON
MAC HEAD
MAC HEAD
MACHEAD
MACHEAD
PCOMMON
MAC HEAD
PCOMMON
PCOMMON
PCOMMON
PC aMMON
EDPMI
PCOMMON
PCOMMON
PCSR
PCOMMON
SMTENT
SMTENT
SMTENT
SMTENT
SMTENT
SMTENT
SMTENT
PCOMMON
ERRENT
EDPMI
PCOMMON
PCOMMON
PHYR
PHYl{
PHYR
PHYR
PHYR
PHYR
PHYR
PHYR
EPAR
EPAR
EPAR
EDPMI
EPAR
EPAR
EPAR
EPAR
EPAR
EPAR
EDPMI
EPAR
EPAR
EPAR
1889
1920
1922
2
1920
1922
6
1922
1922
1922
6
1920
6
6
6
6
1889
6
1922
1922
1922
1920
6
1920
1920
2
1889
0
0
0
0
0
0
0
1963
0
6
1963
1996
2
5
2
3
10
19
11
7
9
0
6
10
8
2
(761)
(780)
(782)
(2)
(780)
(782)
(6)
(782)
(782)
(782)
(6)
(780)
(6)
(6)
(6)
(6)
(761)
(6)
(782)
(782)
(782)
(780)
(6)
(780)
(780)
(2)
(761)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(7AB)
(0)
(6)
(7AB)
(7CC)
(2)
(5)
(2)
(3)
(A)
(13)
(B)
(7)
(9)
(0)
(6)
(A)
(8)
(2)
4
(4)
1
5
0
10
( 1)
(5)
(0)
(A)
4
(4)
2
1
(2)
( 1)
I
FIELD
DSECT
DISPLACEMENT
DECIMAL (HEX)
S1ITEMI
SlITEMK
SlITEML
S1 ITEMS
SlITEMST
S1ITEMT
S2ITEMK
S2ITEML
S2ITEMST
S2ITEMT
TEXT
THISELEM
TYPEBC
TYPECHAR
TYPEEND
TYPEER
TYPEESD
TYPEK
TYPEKP
TYPEOM
TYPEPP
TYPESDEF
TYPESUBE
TYPESUBS
TYPESl
TYPES2
UNFLAG
UPDSW
UPD2SW
VBITLEN
VCMTYPE
VCONSW
VCTYPE
VDCEXP
VDCVAL
VDSTYPE
VERTYPE
VEXPLEN
VEXPON
VIMPLEN
VLDTYPE
VPCTYPE
VRDA
VRDAT
VSCALE
VSADDR
VSDBLK1
VSDDIM
*VSDEND
VSDFLAG
VSDINFO
VSDNDX
VSDNPT
VSDSIZE
VSDSYM
VSDSYML
VSDTYPE
VSDTYPE
VTYPE
VVCTYPE
VWCKD
EDPMI
15
EDP~n
17
11
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
ERRBYTES
PETFLDS
EDPMI
EDPMI
EDPMI
EDPMI
PCOMMON
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
EDPMI
CODE
PFCB
PFCB
PDCEDIT
ESDENTRY
RLDENTRY
ESDENTRY
PDCEDIT
PDCEDIT
ESDENTRY
ESDENTRY
PDCEDIT
PDCEDIT
PDCEDIT
ESDENTRY
ESDENTRY
WORKDTF
WORKDTF
PCEDIT
PCOMMON
PCOMMON
VSD
PCOMMON
VSD
PCOMMON
VSD
MAC HEAD
PCOMMON
VSD
VSD
ESDENTRY
VSD
PDCEDIT
ESDENTRY
WORKDTF
13
18
10
13
11
14
10
1
0
11
11
11
11
2010
11
11
11
11
11
11
11
11
11
0
(F)
( 11)
(B)
(D)
( 12)
(A)
(D)
(B)
(E)
(A)
(1 )
(0)
(B)
(B)
(B)
(B)
(7DA)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
(B)
(0)
17
17
5
0
(11 )
( 11)
(5)
(0)
4
(4)
0
0
0
0
0
5
0
5
0
0
128
96
0
1982
1993
(0)
(0)
4
(4)
2016
3
1982
1
31
1985
(7EO)
(3)
(7BE)
(1 )
(1F)
(7C 1)
4
(4)
3
0
0
(3)
(0)
(0)
(0)
(0)
(5)
(0)
(5)
(0)
(0)
(80)
(60)
(0)
(7BE)
(7C9)
(0)
(4)
(0)
4
0
96
(60)
*POINTER
Data Areas
207
FIELD
VWDA
VWDAT
VWXTYPE
VXRFEOB
VXRFLIT
WAOCON
WCC
WCCHH
WCCHHR
WCCW
WCCW2
WCHIEXT
WCKD
WCLOWEXT
WCNTCH
WCNTCHR
WCNTDL
WCNTR
WCOUNT
WCSW
WCURBLK
WDA
WDAT
*WDATAD
*WDATLEN
WDEVTYP
WEFFRLEN
WEOF
WEXTLIM
WFRST
WH
WILOWEXT
WIOCOMPL
WLOWHEAD
WMCOM
WMODAD
WMPCTY
WPCTY
WPNT
WREC
WRECLEN
WTRKLM
WTRKPCYL
WUPHEAD
WVER3FL1
WVER3FL3
WXTYPE
W1
W2
W3
*POINTER
208
DSECT
WORKDTF
WORKDTF
ESDENTRY
XRFENTRY
XRFENTRY
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
ESDENTRY
WORKDTF
WORKDTF
WORKDTF
DISPLACEMENT
DECIMAL (HEX)
128
96
0
0
0
162
56
56
56
112
120
50
96
46
144
144
150
148
144
4
56
128
96
121
126
29
164
4
50
61
59
42
2
38
160
16
62
30
61
60
40
61
167
39
152
153
0
3
3
3
(80)
(60)
(0)
(0)
(0)
(A2)
(38)
(38)
(38)
(70)
(78)
(32)
(60)
(2E)
(90)
(90)
(96)
(94)
(90)
(4)
(38)
(80)
(60)
(79)
(7E)
( 1D)
(M)
(4)
(32)
(3D)
(3B)
(2A)
(2)
(26)
(AO)
(10)
(3E)
( 1E)
(3D)
(3C)
(28)
(3D)
(A7)
(27)
(98)
(99)
(0)
(3)
( 3)
(3)
FIELD
XDEFEND
*XRAREND
*XREFADDR
XREFEND
XREFLEN
XREFPARM
*XREFPTR
XRESDID
XRFBYTE1
XRFEOB
XRFESDID
XRFLAG
XRFFLAG
XRFLATTR
XRFLIT
XRFLITLN
XRFLSRC
XRFPSEUD
XRFREF
XRFSN
XRFSYM
XRFVAL
XRFVALUE
XRFLATTR
XRSN
XRSYMBOL
*XRVALUE
XTYPE
YCONSW
YTYPE
ZTYPE
DSECT
DISPLACEMENT
DECIMAL (HEX)
XREFREC
PCOMMON
PCOMMON
XREFREC
PCOMMON
PCOMMON
PCOMMON
XREFREC
XRFENTRY
XRFENTRY
XRFENTRY
XREFREC
XRFENTRY
XRFENTRY
XRFENTRY
XRFENTRY
XRFENTRY
XRFENTRY
XRFENTRY
XRFENTRY
XRFENTRY
XRFENTRY
XRFENTRY
XREFREC
XREFREC
XREFREC
XREFREC
PDCEDIT
RLDENTRY
PDCEDIT
PDCEDIT
18
1982
2016
11
2019
2013
1979
13
0
0
13
8
8
11
0
11
12
0
0
9
0
11
15
11
9
0
15
4
4
4
4
( 12)
(7BE)
(7EO)
(B)
(7E3)
(7DF)
(7BB)
(D)
(0)
(0)
(D)
(8)
(8)
(B)
(0)
(B)
(C)
(0)
(0)
(9)
(0)
(B)
(F)
(B)
(9)
(0)
(F)
(4)
( 4)
(4)
( 4)
(This page intentionally left blank.)
r--
C'
",/
Data Areas
209
(This page intentionally left blank.)
",
no
Diagnoatic Aida
Paupo. of the Seetion
This section contains information that may be
useful in diagnosing problems within the
.
assembler. The section includes the follOWing
information:
• Debugging aids
• I/O activity and workfile layouts
• Register usage
(:
Diagnostic Aids
211
Debugging Aids
It is seldom possible to fix assembler faults while in the field;
however, you may want to try the following "First Aid" when attempting
to circumvent a problem:
First Aid
•
If there has been a program check, try to rerun the job in a
different-sized partition
•
Find out what changes were made to the source program since it last
assembled successfully and either delete them or incorporate them
using another method
In general, assembler malfunctions can be divided into two classes:
those in which you get the wrong output from the assembler and those in
which you get a program check.
WRONG ASSEMBLER OUTPUT
An error message issued against a correct statement or an erroneous ESD,
RLD, or object record, are examples of wrong assembler output. In these
cases it is usually possible to trace the error to a particular
statement or sequence of statements and rewrite them. At the same time,
an APAR should be submitted (see Appendix J) to the assembler maintenance group.
PROGRAM CHECK
If the nFirst Aid" measures described above do not work, in some cases
it may help to know what statement was being processed when the program
check occurred. Although it is not certain that the fault was caused by
the "current" statement, it may be possible to find the corresponding
source statements and rewrite them in such a way that the assembly will
be successful.
How to Find the Current Statement
1. Identify the object module executing when the program check
occurred. General register 11 points to an address 10 bytes to the right
of the identifier for the module.
2. Identify which workfiles were being read from or written on (see
Figure 3 or the relevant method-of-operation diagram).
3. Find the corresponding workarea for the workfile being read from or
written on -- each workfile has its own workarea in the common data area
(COMMON). The offsets for these workareas in COMMON are given in the
dummy control section "PCOMMON" (see the Data Area Field Cross-reference
in "Data Areas") and are:
I,
~ ..
212
Workfile
Workarea offset
1
2
6A6
6C9
3
6EC
PCOMMON label
PWAADDR1
PWAADDR2
PWAADDR3
4. Find the beginning of COMMON by examining the contents of register
13 -- it points to COMMON.
5. Add the offset obtained in step 3 to the starting address of COMMON
to find the workarea you are interested in.
Interpreting the Statement
Once you have found the current statement in its edited form, you will
want to interpret it in order to identify its source-statement
equivalent. You may be able to identify the statement by examining the
pseudo operation code field; this field is always the fourth byte of the
edited statement. The name field and the symbols used in the operand,
if they are still present in the edited statement, will also help to
identify it.
To fully interpret statements in their edited format, you will need
the following information:
I
What you need to know
Where to find it
The statement formats for the phase
Overview: Appendix H
Details: Relevant DSECT in
"Data Areas"
Pseudo opcodes assigned by the
assembler
Appendix E
The assembler internal character
sets
Appendix F
Edited text flags
Appendix G
Examples of Edited Text
This section contains two statements shown at different stages in
processing. The statements were made complex in order to make the
examples comprehensive.
Diagnostic Aids
213
Example 1. AlP statement, object module IPKDA.
The AlP statement is part of the following macro definition:
&A
&B
.SEOSYM
MACRO
MACl
LCLA
LCLB
LCLC
SETA
SETB
AlF
ANOP
MEND
&PARMl,&PARM2,&PARM3
&X,&Y,&Z,&A
&M,&N, &B
&O~&C,(50)
5
1
('ABC' EO '&C(&A)' AND &A*&B+l LT &PARM2).SEOSYM
Following the instructions given in the previous section, we can
find the record as it was written out by object module IPKDA:
l4030AOB OCOAOOOl 00320000 03382900
l206lCOE lAlC22l6 2F3A
)
003904 2E240000 00040BOA l20F38l1
00030400 02lFl8l0 Oll60COO 053424lB
/
,1 "~-~
214
We can interpret the record with the help of the record format for
an AlF statement (see Appendix H, -Object Module lPKDA-).
0039
04
2E
24
00
00
00040BOA120F3811
14
03
OAOBOC -ABCOA
0001
0032
00
0003
38
29
00
0003
04
0002
1F
18
10
01
16
OC
0005
34
24
1B
12
06
1COE1A1C22162F
3A
record length
file flag
pseudo opcode (-AlF-)
DSECT pcsr
opcode extension (dummy)
type flag
flag A
sequence field
character string (see Appendix ~
length
(see Appendix ~
LeLC dimensioned (- SC-)
SCs index
maximum dimension of SA
LeLA (-SA-)
-SA-s index
subscript
character EQ
LeLA (-SA-)
-SA-s index
LCLB (-SB-)
-SB-s index
Boolean to arithmetic conversion
* (mul tip1ication)
1-byte binary value
value (-1-)
+ (addi tion)
positional parameter C-SPARM2-)
-SPARM2-s index
binary parameter value
arithmetic LT
AND
3-byte binary value
length of sequence symbol
-SEQSYMAlP
Note that the expression has been translated into reverse Polish
notation and is in the form
ABC SC SA ( ) EQ SA SB*1 + SPARM2 LT AND
Example 2. S-type address constant, object module lPKJA.
The constant is defined in the following coding:
A
SCON
XY'Z
USING *,5
DC F'O'
EQU*
DC (SCON-A)SL(2*(L'A-3»
«SCON-A)/2(L'*+L'SCON»
The statement is shown below as it is read in by object module
lPKJA:
003F 000B1300
172AOA2D 1C152802 2B281530 OA2A032D
2915301C OC18172D 2D
00040121 2223030A ODOC2EOE 281COC18
2D28281C OC18172A OA2D2C02 2815302B
Diagnostic Aids
215
The record can be interpreted as follows
003F
00
record length
file flag
OB
pseudo opcode (DC)
13
opcode extension
00
type flag
00
flag A
04
length of name
01
column pointer (source)
212223
"XYZ"
03
length of opcode field
OA
column pointer (source)
ODOC
"DC"
2E
length of operand field
OE
column pointer (source)
281CO ••• 172D2D operand (in internal assembler code)
Example 3. S-type address constant, object module IPKJA.
The same DC statement as in Example 2 is shown after processing by
IPKJA:
00 6AOOOBOO 00000400
2F2F2F40 OA2F2F2F 2F2F2F2F 400A2F2F
2F2F2F2F 2F2F2F03 lCOC1817 2F2F2F2F
443B0635 352A3802 2C393634 35342939
00000000 00060321 2223431C OC18172F
2F2F2F2F 2F031COC 18172F2F 2F2FOOOA
010D3535 2A394038 02353438 032A2B39
3A
The record can be interpreted as follows:
006A
00
OB
00
00
0004
0000
00
000000
06
03
212223
.4
3
1COC1817
2F2F2F2F
record length
file flag
pseudo opcode (DC)
opcode extension
flag A
statement number
length attribute (not filled in until IPK~
relocation attribute (not filled in until IPKKA)
location counter value (not filled in until IPKKA)
number of symbol buckets
length of name field
"XYZ"
flag (symbol must be previously defined)
length -1 of symbol
"SCON"
four blanks
flag (symbol must be previously defined)
length -1 of symbol
OA
"A"
2F2F2F2F2F2F2F blanks
}
symbol bucket 1
4
o
flag (symbol must be previously defined
length -1 of symbol
OA
"A"
2F2F2F2F2F2F2F blanks
} symbol bucket 2
4
o
} symbol bucket 3
o
3
1COC1817
2F2F2F2F
216
length -1 of symbol
"SCON"
blanks
} symbol bucket •
o
o
length -1 of symbol
OA
"A"
}
symbol bucket 5
}
symbol bucket 6
2F2F2F2F2F2F2F blanks
o
3
1COC1811
2F2F2F2F
01
OD
35
35
2A
39
40
38
length -1 of symbol
"SCON"
blanks
number of constant
type flag (S-type address constant)
symbol flag (" SCON")
symbol flag ("A" -- second bucket)
- (subtraction)
end of expression
explicit length flag
self-defining term <256 bytes
02
"2"
35
34
38
03
2A
2B
39
44
3B
06
35
35
2A
38
symbol flag ("A" -- third bucket)
length attribute
self-defining term <256 bytes
"3"
- (subtraction)
* (multiplication)
end
DC exponent
start of operand
02
2C
39
36
34
35
34
29
39
3A
symbol flag ("SCON" -- fourth bucket)
symbol flag ("A" -- fifth bucket)
- (subtraction)
self-defining term <256 bytes
"2"
/ (division)
end of expression
location counter value
length attribute
symbol flag ("SCON"
sixth bucket)
length attribute
+ (addition)
end of expression
end of operand
Note that the expressions have been translated into reverse Polish
notation and are of the form
SCON A2A L'3-*
SCON A-2/
*L'SCON L'+
Diagnostic Aids
217
PROGRAM IDENTIFICATION
The current release number of the assembler can be found starting at the
first byte of the object code in a program dump. For example:
current
release
number
Every assembler object module contains an identifier with the module
name and current release number. The identifier is at the beginning of
the module~ starting at the first byte, and has the following format:
module
name
218
current
release
number
I/O Activity and WorJdile Layouts
The following diagrams show the I/O activity for the phases of the
assembler and the layouts of the workfiles during different operations.
The following symbols are used in the diagrams:.
a note/point address
an input operation
an output operation
both an input and output operation
(
,",,'
"
Diagnostic Aids
219
MNAblocks
WF3
r
D
U
MR'T< '''KCC)
PREAD (lPKCC)
~
Text
________________________
output
________________________
~A~
WF2
PPUTL (lPKCA IPKCC, IPKCD)
Figure 21.
220
I/O Activity for ASSECA.
~
r
MNA
blocks
MIS
.
~J
I
I
WF3
i
I
First
source
I I
I
,
macro
I
VSD
blocks
SSD
blocks
I
I
I
I
I
I
.-----..
,I
I
I
I
I
I
I
I
2)
F/
MIS
}J
Open
code
I
VSD
SSD
blocks
blocks
_--./'---V--'
. - ___ ~
,/
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
~"
PWRITE(JPKDB)
PWRITE/UPDATE(JPKDB)
PWRITE (JPKDB)
PREAD (JPKDA,
IPKDB)
PWRITE (JPKDA)
PREAD (JPKDA)
PWRITE (JPKDB)
PWRITE (JPKDB) PWRITE(JPKDA)
PWRITE/UPDATE (IPKDB) PREAD (JPKDA, PREAD(JPKDA)
IPKDB)
Text input
/~----------------------~~.~----------------------~,
WF2
H
E
A
0
E
R
0
C
S
T
A
R
T
Source
macros
4
Open
code
N'OCST~
1],
PGETL (JPKDA,IPKDB)
Text output
/'r----------------J;~--------------------~,
WF1
H
E
A
0
E
R
Source macro source
and edited text
0
C
S
T
A
R
T
~
Open code source
and edited text
1.
At the beginning of a macro, a dummy macro information block is written to reserve space. After the VSD and SSD
blocks have been built, the complete macro information block is written into its reserved place with PWRITE!UPDATE.
2.
Open code is processed only if conditional assembly statements are detected by IPKCA.
Figure 22.
I/O Activity for ASSEDA.
Diagnostic Aids
221
MNA
block.
WF3
MIB
I
I
I
I
I
I
VSD
blo c ks
I
source
I
macro
1
(,
I
I
I
I
I
I
I
I
I
I
I
I
First
MIB
SSD
blo c k•
I
I
IJ
I
Open
code
)r
"
PREAD
I
I
I
I
I
I
I
I
I
I
I
I
I
I
V
\J
PREAD
SSD
blocks
I
I
/,
.,
'
7
I
VSD
bloc k•
11
'J
PREAD
Source
macros
Nn!U
PREAD
PPUTL
11
H
WF2
H
E
A
0
E
R
E
A
0
E
R
Source macros
edited text
~
Opan code source
and edited text
~~
PPUTL
PPUTL
2)
0
C
S
T
A
R
T
Source macros
(source)
WF2
~
H
Open code
source
E
A
0
E
R
Source macros
edited text
/'
NPOCST
PPUTL
SMT
blocks
1)
0
C
S
T
A
R
T
H
WF3
E
A
0
E
R
Source macros
(source) and edited text
, .,
,
~
Open code source
and edited text
)
NPSMT
I
I
I
I
r
I
I
I
I
I
I
I
I
I
/
\J
PGETL
PGETL
1.
If conditional assembly in open code.
2.
If !!2 conditional assembly in open code.
Figure 23.
222
I/O Activity for ASSEEA.
PREAD
PWRITE
I
~
MISs (not used)
MNA
Source macro source
VSDa and SSDi
~~~~~A~~~::I~¥===~~A==~==~
~
____________
~
Error and statistics racords
WF3
PPUTL
PREAD
11, . Edited source
macros
A,-
,
I
I
WF2
Open code edited
and source racords
I
I
~
I
I
I
WF2
I
'"I
I
I
I
,
Edited source macros
...
I
I
I
I
I
I
I
I
I
I
I
I
I
I
Open code
I
I
I
..
3'/
, t
V
PGETL
,
SMT blocks
A
,
EDECK (optional)
Not used bV ASSEGA
WF1
/
NPSMT
V
PREAD
1.
If conditional assembly in open code.
2.
If..!!!!. conditional assembly in open code.
3.
Note/point value from SMT.
4.
Note/point value from macro header.
Figure 24.
PPUNCH
I/O Activity for ASSEGA.
Diagnostic Aids
223
"
MNA
blocks
-
Source macros (source)
~
1
1
I
I
I
I
WF3
I
I
I
Not used by
ASSEFA
1
I
I
I
I
1
1
I
I
I
ASSEGA error and
statistics records
ASSEFA error and
statistics records
I
~
NPTXT3
"
PREAD
PPUTL
11 Edited source macros
,
,
GSD.MND. MAV, blocks
A
,..
I
"
IGI
WF2
Open code
global array
IAI
I I
1
Open code edited
and sOurce records'
I
PGETL
PGETL
PWRITE
Edited -source macros
GSD. MND. MAV blocks
21~______________~~r-______, -__________~,~:~:;:;~A~--~~----~A~----~,
WF2
a~
Not used by
ASSEFA
E
R
Open
code
global
array
Open code
edited and
source records
31
PGETL
PREAD
PWRITE
WF1
MAVblocks
Edited macros
SMTblocks
Not used by
ASSEFA
Open code
global vector
PMAVNP/~
PREAD
Edited macros
PPUTL
PPUTL
1.
If conditional assembly in open code.
2.
If .!!2. conditional assembly in open code.
3.
Note/point value from 8MT.
PFIND
Figure 25,.
224
PWRITE
I/O Activity for ASSEFA.
1("
\(.c/'
Text input and output
.....
21
[-
0
WF2
Not used by
ASSEHA
e
S
T
A
R
O"en code source
Not used
by ASSEHA
and edited text
T
PGETL. PPUTL
11
WF3
21
Not used by
ASSEHA
Source
macros
{sourcel
ASSEGA ASSEFA
error and error and
statistic. statistics
_ords
{lOurcel
NPATTR
0
e
S
Opan code source
and edited text
T
A
R
T
Not used
by ASSEHA
/1)
'7
'V
PPUTL. PGETL
1.
Because of split records. ASSEHA uses WF3 to update records. The text is written back onto WF2 for ASSEFA.
2.
If no source macros, the open code text begins at the start of WF2.
Figure 26.
I/O Activity for ASSEHA.
C:
Diagnostic Aids
225
/~
H
E
A
0
E
R
WF1
Key_rd
tabla
Global
vector
V
1
,
V
V
H
E
A
0
E
R
Edited text
MAV'
ENTRY1
s.
Symbol
buckets
Value of
~
Symbol
:>
PETR
Operand
end flag
Operand
,
3
2
V
.HQ.SYMBOL TABLE OVERFLOW OR LAST PASS
:>
PETFLDS
Operand all
except DCs
Operand
flag
1-3
Expression
flags
expression!*'
V
ALL RECORDS
~(-------------------~------------------------~I
Pseudo
opcode
Record
length
Operand
end flag
Operand
Location
Relocation
attribute
L'
Statement
number
counter
V
DC
Value of
Operand duplication
No. constants
Type
flag
Length
'flag
Length
value
3
Scale
flag
Scale
value
Exponent
flag
3
3
Address Constant
DC
Operand
flag
expression
Expression
flag
nJ
1-2
expression
V
Data Constant
*
Expression
,-:l.
~{""
Length
No. relo- Exprassio.
attribute cation
value
ettribute.
-+
Location
attribute
"
""«""
2
DC
value
Length of
'constant
Constant as
coded
V
280
4
2
Object Module IPKNA
MACHINE INSTRUCTIONS
PETR
~
f- P&:T&:I n._;,\
""
Record
length
File
flags
Opcode
extension
Pseudo
opcode
Type
flags
Statement
number
2
2
L'
Relocation
attribute
Location
counter
2
2
3
FI..
AD1
""'"
~
,"
.~
Flag
AD2
Value
...,"
Value
3
Code
fleg
Object
code
3
2·6
DC INSTRUCTIONS
I...
..£E.LB.
Record
length
File
flags
Pseudo
opcode
",'2
Opcode
extension
Type
flags
Statement
number
Length of object code
before duplication
...
..1)
2
2
2
PDCOUT
11
....
Duplication
factor
,.."
3
Not
used·
Switches
3
No. bits
to shift
Not
used
Object
code
3
V
Object Module IPKOA
DC INSTRUCTIONS
(See IPKNA)
Appendix H: Edited Statement Formats
281
Appendix I: Statements Modifying Data Areas
[
When checking the contents of data areas common to more than one module,
it is often necessary to know how other modules modify the area. This
appendix lists all symbols defined in such data areas and named in
operands modified by the following operation codes: AP, CVD, MVC, MVI,
MVN, MVO, MVZ, NC, NI, OC, 01, PACK, ST, STC, STCM, STH, STM, TR, TRT,
UNPK, XC, and XI. In addition, the occurence of such a symbol in the
operand field of an LA instruction is listed.
The following information is given:
Field name - the symbol naming the modified field.
DSECT name - the name of the dummy section in which the field
defined.
is
Displacement - the displacement of the field within the dummy section in
decimal and hexadecimal notation.
CSECT name - the name of the control section containing the instruction
with the field name in a modified operand.
Statement number - the approximate statement number of the modifying
statement.
Operation - the operation code of the instruction in which the field
name appears in an operand that represents a modified storage
address.
(
Code - the following information about the modified operand:
1 - only one term in this operand.
2 - more than one expression in the operand, but the first
expression contains only one term. Unless the operation is type
RX, the second expression is probably a length field.
3 - one multiterm expression in the operand. The field name appears
as one term but the value of the modified address will depend
upon the value of the whole expression.
S - more than one expression in this operandi the first expression
contains more than one term.
Note: This list does not include EQU statements. If a symbol in a DSECT
is equated to another symbol, the appearance of the symbol in a modified
operand will not be entered in the list.
(
',"
"
Appendix I: Statements Modifying Data Areas
283
[-
r
-~
C:
---------MODIFIED AREA---------DISPLACEMENT
DSECT
FIELD
DEC
HEX
NAME
NAME
BUFADDR1
PCOMMON
1694
(69E)
BUFADDR2
PCOMMON
1729
(6C 1)
BUFADDR3
PCOMMON
1764
(6E4)
BUFPT
PFCB
3
(3)
CCWS
WORKDTF
96
(60)
CHARC
CHARK
CHITEMK
EPAR
EPAR
EDPMI
3
2
11
(3)
(2)
(B)
CHITEMST
EDPMI
12
(C)
CHITEMT
EDPMI
10
(A)
CORADDR
DIRENTRY
0
(0)
CROSSNP
PCOMMON
1949
(79D)
CURESD
PCOMMON
1977
(7B9)
CURNP
PCOMMON
1955
(7A3)
CURSECT
CURSECTL
PCOMMON
PCOMMON
1927
1926
(787)
(786)
DBCORE
PCOMMON
1946
(79A)
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX. )
NAME
IPKEAOOO
IPKFAOOO
IPKJAOOO
IPKJAOOO
IPKKA001
IPKBAOOO
IPKEAOOO
IPKFAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKKA001
IPKBAOOO
IPKPAOOO
IPKAAOOO
IPKAAOOO
IPKAAOOO
IPKAAOOO
IPKAA002
IPKAA002
IPKIAOOO
IPKIAOOO
IPKCCOOO
IPKHAOOO
IPKCCOOO
IPKHAOOO
IPKCCOOO
IPKCCOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKRBOOO
IPKRBOOO
IPKRBOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKA001
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
2030
3137
4794
4857
4463
2217
2020
3132
2536
4260
4783
4868
4471
2232
4096
1923
2022
2035
2395
1520
1562
4925
3627
3210
1550
3226
1552
3202
3208
1547
1557
2394
2431
991
1120
1337
3174
3189
3267
3818
3832
4343
4360
2553
2566
2623
3504
3534
2624
3505
3535
3626
3837
4363
4511
2504
2503
5748
2332
STCM
STCM
STCM
LA
STCM
STCM
STCM
STCM
LA
LA
STCM
LA
STCM
STCM
STCM
MVC
STCM
STH
STCM
MVC
MVC
LA
LA
STC
LA
MVC
LA
MVI
MVI
MVI
MVI
MVI
MVC
STCM
MVC
STCM
LA
MVC
LA
LA
MVC
LA
MVC
LA
MVC
ST
ST
ST
MVC
MVC
MVC
LA
MVC
MVC
MVC
MVC
STC
XC
STH
Appendix I: Statements Modifying Data Areas
CODE
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
5
1
1
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
2
1
1
1
285
---------MODIFIED AREA---------FIELD
DSECT
DISPLACEMENT
NAME
NAME
DEC
HEX
----MODIFyING INSTRUCTION----CSECT
STMNT NO. OPERATION
NAME
(APPROX.)
CODE
<"
~
DBCORE
PCOMMON
1946
(79A)
DBVSDADR
EAWF2END
PCOMMON
PCOMMON
1995
1915
(7CB)
(77B)
EFLG
MNAENT
2
(2)
ENDBUF
ENDID
PFCB
PCOMMON
11
1996
(B)
(7CC)
ENTRYCNT
PCOMMON
1993
(7C9)
EOFLDPTR
ERRENT
5
(5)
EPARFLAG
EPART
ERRCONST
EPAR
EPAR
ERR BYTES
0
1
0
(0)
( 1)
(0)
ERRCOUNT
PCOMMON
2018
(7E2)
ERR I NFO
ERRENT
0
(0)
ERRLNG
ERRBYTES
2
(2)
ERRSW
ERR BYTES
1
(1)
ERRTXT
ERRBYTES
3
(3)
ESDESDID
ESDENTRY
1
( 1)
ESDHILC
ESDENTRY
5
(5)
ESDIDHI
PCOMMON
1947
(79B)
ESDIDLO
PCOMMON
1997
(7CD)
ESDLCTR
ESDENTRY
2
(2)
286
,IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKDBOOO
IPKFAOOO
IPKHAOOO
IPKCA001
IPKCCOOO
IPKCCOOO
IPKFAOOO
IPKFAOOO
IPKMAOOO
IPKKAOOO
IPKQAOOO
IPKKAOOO
IPKKAOOO
IPKKA001
IPKDAOOO
IPKDBOOO
IPKIAOOO
IPKIAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKA001
IPKLAOOO
IPKLAOOO
IPKDAOOO
IPKDAOOO
IPKDBOOO
I PKKA 0 00
IPKLAOOO
IPKKAOOO
IPKLAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKA001
IPKKAOOO
IPKKA001
IPKKAOOO
2445
5364
5655
2870
3212
2699
1123
1741
1767
2756
2818
1098
3531
1213
2537
3972
4513
2364
2661
5079
5093
3040
3046
2419
2425
3625
3762
4607
1446
3059
3126
4474
2438
2505
2370
2388
2663
3050
2429
3042
2421
3043
3051
2422
2430
2539
3521
3978
3986
4179
3519
3642
3596
4097
4178
4497
3589
4498
2540
STH
STH
MVC
STCM
MVC
MVC
MVI
MVI
MVI
MVI
MVI
STCM
MVC
MVC
STH
STH
MVC
STCM
MVC
MVC
MVC
MVC
MVC
MVC
MVC
STC
MVI
MVI
MVI
STC
MVI
MVI
STC
MVI
MVC
MVC
MVC
STC
STC
01
01
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
STC
MVC
MVC
STC
STC
STC
MVI
STC
MVI
MVC
1
1
1
1
2
2
1
5
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
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
;(-"
~~.
(-
---------MODIFIED AREA---------FIELD
DSECT
DISPLACEMENT
NAME
DEC
HEX
NAME
----MODIFyING INSTRUCTION----CSECT
STMNT NO. OPERATION
(APPROX.)
NAME
ESDLCTR
ESDENTRY
2
(2)
ESDNXT
ESDENTRY
16
( 10)
ESDPTR
PCOMMON
1973
(7B5)
ESDSYM
ESDENTRY
8
(8)
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKMAOOO
IPKMAOOO
IPKKAOOO
IPKKA001
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKMAOOO
IPKMAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKMAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKKAOOO
IPKLAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKKAOOO
IPKLAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
I PKJAO 0 0
IPKJAOOO
IPKKA001
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKPAOOO
ESDTYPE
ESDENTRY
0
(0)
EVALUE
EVALSTCK
1
( 1)
EVLENGTH
EVALSTCK
5
(5)
EVNXT
EVALSTCK
9
(9)
EVPLUS
EVALS'+CK
5
(5)
EVRELOC
EVALSTCK
6
(6)
EVVARY
EVALSTCK
7
(7)
FILE1NP
PCOMMON
1875
(753)
r-\
C:
3522
3641
3987
4170
3690
1442
1504
3706
4508
2541
3524
3979
3988
4171
1424
1490
2538
3523
3973
4068
4070
4169
1309
2785
2861
2895
2967
2174
2237
2271
2345
2869
2969
2970
2246
2347
2790
2179
2787
2910
2959
2176
2286
2338
2788
2177
2933
2971
2311
2348
2533
4257
4523
1244
1246
1258
2607
2609
4107
MVC
MVC
MVC
MVC
LA
LA
LA
ST
MVC
MVC
MVC
MVC
MVC
MVC
TR
TR
MVI
MVC
MVI
MVI
MVI
MVI
TRT
ST
ST
ST
ST
ST
ST
ST
ST
LA
MVI
MVI
LA
MVC
LA
LA
MVI
LA
MVC
MVI
LA
MVC
STeM
STeM
LA
LA
LA
LA
MVC
MVC
LA
XC
XC
LA
XC
XC
LA
Appendix I: Statements Modifying Data Areas
CODE
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
1
1
1
1
1
1
3
1
1
1
1
1
1
2
1
1
2
1
1
2
1
2
1
2
2
1
2
2
1
2
2
1
287
---------MODIFIED AREA---------DISPLACEMENT
DSECT
FIELD
HEX
DEC
NAME
-.NAME
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX.)
NAME
CODE
\"""----
FILE1NPR
PCOMMON
1881
(759)
FILE2NP
PCOMMON
1887
(75F)
FILE2NPR
PCOMMON
1893
(765)
FLAG
DIRENTRY
19
( 13)
GARDIM
GARLEN
GARENT
GARD
4
0
(4)
(0)
GARLGTH
GARTYPE
GSDDIM
GSDFLG
GARENT
GARENT
GSDENTRY
GSDENTRY
3
0
4
3
(3)
GSDLEN
GSDNDX
GSDSYM
GSDTYPE
HASHPTR
GSDENTRY
GSDENTRY
GSDENTRY
GSDENTRY
PHYR
3
1
4
0
0
(3)
( 1)
(4)
(0)
(0)
IF SAVE
PCOMMON
1672
(688)
IJJALSW
IJJCPTAB
44
(2C)
1JJCPCNT
1JJCPTAB
76
(4C)
1JJCPCTR
1JJCPTAB
80
(50)
288
(0)
(4)
(3)
IPKJAOOO
IPKJAOOO
IPKSAOOO
IPKSBOOO
IPKSBOOO
IPKJAOOO
IPKJAOOO
IPKLAOOO
IPKLAOOO
IPKRAOOO
IPKRAOOO
IPKJAOOO
IPKKAOOl
IPKLAOOO
IPKOAOOO
IPKRAOOO
IPKRBOOO
IPKRBOOO
IPKRBOOO
IPKRBOOO
IPKRBOOO
IPKFAOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKDBOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKABOOO
IPKABOOO
IPKACOOO
IPKAEOOO
IPKAEOOO
IPKAFOOO
IPKAIOOO
IJJCPDO
IJJCPDO
IJJCPD1N
1JJCPD1N
1JJCPD2
IJJCPDO
IJJCPD1N
IJJCPDO
IJJCPD1N
2538
4262
3028
1396
1472
4865
4873
1245
2608
1590
1599
4870
4518
1253
1202
1399
995
1068
1114
1122
1346
2505
1998
1999
2042
2043
1521
1676
2502
2443
2506
2368
2445
3205
2467
2431
2434
2426
2434
3446
3999
4049
4205
774
880
840
595
656
768
657
155
175
1230
1254
148
227
1273
230
1276
MVC
MVC
LA
LA
LA
MVC
LA
XC
XC
LA
LA
MVC
LA
LA
LA
NI
01
01
NI
01.
01
LA
LA
STH
LA
STH
MVC
mc
LA
MVC
LA
MVI
MVI
MVI
MVC
STH
LA
STC
MVC
MVC
MVC
MVC
MVC
STM
STM
STM
STM
STM
STM
STM
01
N1
N1
01
01
MVC
MVC
STC
STC
2
2
1
1
1
2
1
2
2
1
1
2
1
1
1
1
1
1
1
1
1
2
3
1
3
1
1
1
1
2
2
1
1
1
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
1
1
/'.
~,
~/
;(~.,
i".,
~--~
r~
r
t
---------MODIFIED AREA---·-----DISPLACEMENT
FIELD
DSECT
DEC
HEX
NAME
NAME
IJJCPDAT
IJJCPTAB
82
(52)
IJJCPREC
IJJCPTAB
64
(40)
IJJCPSEK
IJJCPTAB
60
(3C)
IJJCP2ND
IJJCPTAB
45
(2D)
IJJFRSTR
IJJCPTAB
73
(49)
INDEX
EDPMI
16
( 10)
INDKEY
INDENTRY
0
(0)
INDNP
INDENTRY
11
(B)
INDXB
INDXC
EPAR
EPAR
1
6
( 1)
(6)
INDXCL
EPAR
5
(5)
INDXFLAG
ITEM
EPAR
EDPMI
0
10
(0)
(A)
ITEMFLAG
EDPMI
8
(8)
ITEML
EDPMI
9
(9)
("
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
NAME
(APPROX.)
IJJCPDO
IJJCPD1N
IJJCPDO
IJJCPDO
IJJCPD1N
IJJCPD1N
1JJCPD2
IJJCPD2
IJJCPDO
IJJCPD1N
1JJCPD2
IJJCPDO
IJJCPD2
IJJCPDO
1JJCPD1N
IPKCCOOO
IPKFAOOO
IPKFAOOO
IPKRAOOO
IPKRBOOO
IPKRBOOO
IPKRAOOO
IPKRBOOO
IPKRBOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKDAOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKIAOOO
IPK1AOOO
IPKIAOOO
IPKIAOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKDAOOO
IPKHAOOO
IPKIAOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKDAOOO
I PKDA 0 0 0
IPKDAOOO
IPKDAOOO
IPKIAOOO
104
1200
212
226
1256
1272
121
165
223
1268
164
139
135
189
1292
1537
2678
2816
1424
968
1375
1442
954
1374
4483
4486
4487
3606
4488
4484
1795
1787
2372
2375
4538
4650
5084
5152
3216
3223
3363
3372
3378
3385
3395
3425
2527
2434
5186
3211
3265
3512
3611
3650
1815
1816
1861
1862
4902
XC
XC
MVC
MVC
MVC
MVC
STC
MVC
ST
ST
ST
XC
XC
01
01
MVC
STH
STH
MVC
MVI
MVC
MVC
LA
MVC
ST
UNPK
MVZ
LA
~1
MVI
LA
LA
LA
LA
LA
LA
LA
LA
XC
01
XC
01
01
01
01
01
NI
01
NI
STC
STC
STC
STC
STC
LA
LA
LA
LA
LA
CODE
2
2
2
2
2
2
1
2
1
1
1
2
2
1
1
1
1
1
1
1
2
2
1
2
1
1
1
1
1
1
1
2
2
1
2
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
5
1
5
3
//
Appendix I:
Statements Modifying Data Areas
289
---------MODIFIED AREA---------FIELD
DSECT
DISPLACEMENT
NAME
NAME
DEC
HEX
----MODIFyING INSTRUCTION----CSECT
STMNT NO. OPERATION
NAME
(APPROX.)
ITEMT
EDPMI
1
(1)
KEY
DIRENTRY
11
(B)
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKDAOOO
IPKDAOOO
IPKDAOOO
IPKDBOOO
IPKHAOOO
IPKHAOOO
IPKIAOOO
IPKIAOOO
IPKRAOOO
IPKRAOOO
IPKRBOOO
IPKRBOOO
IPKRBOOO
IPKRBOOO
IPKRBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKIAOOO
IPKDBOOO
IPKDBOOO
IPKCCOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
KITEM
LBARADDR
LCLASIZ
LCLASZ
LCLBSIZ
LCLCSIZ
LMNAME
LOCCNTHI
EDPMI
PCOMMON
PCOMMON
MAC HEAD
PCOMMON
PCOMMON
EDPMI
PCOMMON
10
1989
1921
16
1930
1933
1
2010
(A)
(1C5)
(181)
(10)
(18A)
(18D)
(1)
(1DA)
LOCCNTR
PCOMMON
2001
(1D1)
LOCLATR
PCOMMON
2004
(1D4)
290
1548
3365
3446
3485
3566
3518
3868
4326
1169
1816
1862
1153
2404
2421
4521
4902
1314
1396
1058
1135
1215
1293
1330
1869
2815
2055
5115
2061
2065
1523
1893
3503
3520
3640
1551
1894
2210
2500
2625
3346
3414
3502
3568
4039
4103
4130
4221
4246
1592
1535
1583
1610
1623
1641
1686
1699
1128
2055
2519
LA
MVC
MVC
LA
MVC
MVC
LA
LA
LA
LA
LA
LA
MVI
MVI
LA
LA
MVC
MVI
MVC
MVI
LA
LA
MVC
LA
STCM
STCM
LA
STCM
STCM
MVC
MVC
MVC
MVC
MVC
STCM
STCM
STCM
STCM
MVC
STCM
MVC
MVC
MVC
XC
MVC
MVC
STCM
STCM
STCM
STH
STH
MVC
MVC
MVC
MVC
MVC
MVC
STH
MVC
CODE
1
1
2
1
2
5
1
1
5
5
5
1
1
1
1
3
1
1
2
1
1
1
2
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
1
1
1
1
1
. t..
[
---------MODIFIED AREA---------FIELD
DSECT
DISPLACEMENT
NAME
NAME
DEC
HEX
LOCLATR
PCOMMON
2004
(7D4)
LOCRATR
PCOMMON
2006
(7D6)
LOCTYPE
PCOMMON
2013
(7DD)
LPNAME
MAN
EDPMI
MNAENT
7
3
(7)
(3)
MFLAGS
PCOMMON
1917
(77D)
MIB
PCOMMON
1917
(77D)
MIBADDR
PCOMMON
1948
(79C)
MLEVEL
PCOMMON
1944
(798)
MNALEN
MNAENT
2
(2)
MNAMEL
MNANDX
MAC HEAD
MNAENT
7
0
(7)
(0)
NEXT COD E
CODE
2
(2)
NPLITBEG
PCOMMON
1908
(774)
NPMIB
OCSTMH
7
(7)
NPSSDR1
NPSSDWL
PCOMMON
PCOMMON
1958
1965
(7A6)
(7AD)
rl
['
----MODIFyING INSTRUCTION----CSECT
STMNT NO. OPERATION
NAME
(APPROX.)
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKA001
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKDAOOO
IPKDAOOO
IPKDAOOO
IPKDAOOO
IPKDAOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKEAOOO
IPKEAOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKEAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKCCOOO
IPKFAOOO
IPKFAOOO
IPKCCOOO
IPKFAOOO
IPKSAOOO
IPKSBOOO
IPKJAOOO
IPKJAOOO
IPKRAOOO
IPKRAOOO
IPKDBOOO
IPKDBOOO
IPKEAOOO
IPKDAOOO
IPKDAOOO
IPKDAOOO
IPKDAOOO
IPKDBOOO
IPKDBOOO
3418
4036
1482
2626
3501
3587
3595
4085
4089
4099
4104
4496
3371
3382
3395
4314
1712
1740
1788
2354
3679
3697
3763
1867
1886
1974
2380
2668
1161
1933
1542
2839
1486
1546
2840
1371
2328
2453
5654
1763
2838
2138
1746
2813
3125
1783
2547
4034
1493
1512
1627
1658
1367
2767
2733
2750
2762
1455
1527
MVC
MVC
MVC
MVC
MVC
STC
STC
MVC
MVC
STC
MVC
XC
MVI
MVI
MVI
MVC
LA
LA
01
01
01
01
01
01
01
01
01
01
01
01
XC
LA
LA
LA
STCM
LA
STH
STH
XC
MVC
MVC
LA
STH
STH
LA
LA
MVC
MVC
LA
MVC
MVC
MVC
LA
MVC
LA
LA
MVC
LA
LA
Appendix I: Statements Modifying Data Areas
CODE
1
1
2
1
1
1
1
1
1
1
1
2
1
1
1
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
2
2
2
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
2
1
1
291
---------MODIFIED
FIELD
DSECT
NAME
NAME
AREA---------~
DISPLACEMENT
DEC
HEX
----MODIF.Y1NG INSTRUCTI0N----CSECT
STMNT NO. OPERATION
NAME
(APPROX. )
CODE
.. ~...
NPSSDWL
PCOMMON
1965
(7AD)
NPVSD
NPVSDR1
PCOMMON
PCOMMON
1942
1982
(796)
(7BE)
NXTENTRY
PCOMMON
1989
(7C5)
NXTRA
EVALSTCK
2
(2)
OFFS
DIRENTRY
3
(3)
OVFLADDR
PABENDC
PCOMMON
PCOMMON
1992
1669
(7C8)
(685)
PAFt.AG2
PETFLDS
0
(0)
PANXT
PASSGNSW
292
PETFLDS
PCOMMON
4
2017
(4)
(7E1)
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKA001
IPKKA001
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
1PKRAOOO
IPKRBOOO
IPKRBOOO
1PKDBOOO
1PKBAOOO
IPKBAOOO
1PKFAOOO
1PKFAOOO
1PKFAOOO
1PKJAOOO
1PKJAOOO
IPKJAOOO
1PKJAOOO
IPKKAOOO
1PKKAOOO
1PKKAOOO
IPKKAOOO
1PKKAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKPAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1533
1536
2104
2109
2108
2606
2441
3456
4003
4052
4210
4425
4486
2876
2878
2915
2920
2922
2937
2957
2253
2256
2275
2291
2297
2299
2315
2335
1382
1020
1095
2873
1309
1395
2237
2395
3269
2085
3140
3145
3188
2297
3904
3956
3981
3983
1539
1825
1844
18.57
1860
1912
1929
1975
·2529
3289
3699
3834
4352
mc
mc
mc
LA
MVC
MVC
ST
ST
ST
ST
ST
mc
ST
LA
LA
LA
STH
LA
LA
LA
LA
LA
LA
LA
STH
LA
LA
LA
STH
STH
STH
STCM
MVI
MVl
MV1
MVl
MVl
01
STC
01
STC
Nl
LA
01
Nl
01
01
Nl
01
01
01
01
01
01
LA
01
Nl
01
01
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
.1
1
2
1
1
2
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
\
... -
---------MOD1F1ED AREA---------DISPLACEMENT
DSECT
FIELD
DEC
HEX
NAME
NAME
[
PASSGNSW
PCOMMON
2017
(7El)
PB1TALGN
PDCED1T
7
(7)
PBLKPTRK
WORKDTF
70
(46)
PBUFLENl
PCOMMON
1697
(6A 1)
PBUFLEN2
PCOMMON
1732
(6C4)
PBUFLEN3
PB1F1SIZ
PB12SIZ
PCBTYPE
PCNXT
PCODE
PCOMMON
PCOMMON
PCOMMON
PETR
PETFLDS
PETFLDS
1767
1885
1887
5
3
1
(6E7)
(75D)
(75F)
(5)
(3)
( 1)
PCSRFLGA
PCSR
6
(6)
rl
('
PCSRHEAD
PCSR
0
(0)
PCSRIOP
PCSRLEN
PCSR
PCSR
2
0
(2)
(0)
----MODIFyING 1NSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX. )
NAME
1PKKAOOl
1PKKAOOl
1PKLAOOO
1PKLAOOO
IPKNAOOO
IPKPAOOO
1PKPAOOO
IPKBAOOO
1PKBAOOO
IPKBAOOO
IPKFAOOO
1PKJAOOO
IPKKAOOl
1PKBAOOO
1PKJAOOO
IPKBAOOO
1PKBAOOO
1PKBAOOO
IPKNAOOO
IPKPAOOO
1PKPAOOO
1PKPAOOO
1PKCAOOl
1PKCA001
IPKCAOOl
IPKCA001
1PKCAOOl
IPKCDOOl
IPKCDOOl
IPKDAOOO
1PKDAOOO
IPKDAOOO
1PKDBOOO
1PKDBOOO
IPKEAOOO
1PKGAOOO
1PKIAOOO
IPKIAOOO
1PK1AOOO
1PKJAOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
1PKJAOOO
IPKCA001
IPKCA001
1PKCA001
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCDOOl
IPKDAOOO
4505
4510
1235
2616
1531
2230
2238
1912
2085
1983
3139
4792
4457
1897
4781
1807
2072
2151
1738
2557
2546
2557
1421
1448
1538
1612
1627
1398
1669
1674
2922
2946
1934
2010
1144
1525
2094
2249
2665
4550
1499
1518
4268
4310
1962
1995
2039
4549
1194
1597
1900
1530
1535
1632
1863
3476
4312
1641
2834
CODE
MV1
NI
01
NI
XC
STC
MVI
STC
STC
STH
MVC
STH
MVC
STH
MVC
STH
STH
STH
LA
LA
LA
LA
01
01
01
01
N1
or
01
NI
01
N1
N1
N1
01
01
01
01
01
MVC
XC
XC
XC
XC
XC
XC
XC
MVC
MVC
STCM
MVC
MVC
MVC
MVC
STCM
STH
MVI
MVC
STH
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
5
1
5
1
1
1
1
1
1
1
1
1
1
l'
1
1
1
1
1
1
1
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
3
1
1
W"
Appendix I: Statements Modifying Data Areas
293
r
---------MODIFIED AREA---------DISPLACEMENT
FIELD
DSECT
NAME
DEC
HEX
NAME
PCSROP3
r'
PCSR
5
(5)
PCSRSTRl
PCSR
7
(7)
PDCCODE
PDCOUT
11
(B)
PDCFL
PDCFLAG
PDCOUT
PDCEDIT
6
6
(6)
(6)
PDCFLD
PDCEDIT
2
(2)
PDCLEN
PDCEDIT
1
( 1)
t
('-"
~
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX.)
NAME
IPKCAOOl
IPKCBOOO
IPKCBOOO
IPKDAOOO
IPKDAOOO
IPKGAOOO
IPKICOOO
IPKCCOOO
IPKCCOOO
IPKDAOOO
IPKDAOOO
IPKDAOOO
IPKEAOOO
IPKHAOOO
IPKHAOOO
IPKIAOOO
IPKIAOOO
IPKICOOO
IPKJAOOO
1PKJAOOO
1PKJAOOO
1PKJAOOO
1PKJAOOO
1PKPAOOO
1PKPAOOO
1PKPAOOO
IPKNAOOO
1PKNBOOO
IPKNBOOO
1PKNBOOO
1PKNBOOO
1PKNBOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
1PKNBOOO
IPKNBOOO
1PKNBOOO
1PKOAOOO
IPKOAOOO
IPKOAOOO
1PKOAOOO
1PKOAOOO
1PKOAOOO
1PKOAOOO
I PKOAO 0 0
1PKOAOOO
1PKOAOOO
IPKOAOOO
IPKLAOOO
1PKLAOOO
1PKNAOOO
1PKNAOOO
1PKLAOOO
1PKOAOOO
1PKOAOOO
1PKOAOOO
1PKOAOOO
1PKLAOOO
2167
1054
1064
1872
2244
1390
1033
1574
1962
1856
1873
1880
1269
1293
1652
1999
2495
938
2394
2568
2609
2912
3755
1729
2126
3560
1535
3041
3047
3117
3186
3227
3231
3233
3235
3231
3268
3311
1445
1480
1522
1524
1555
1559
1564
1585
1685
1158
1489
1669
1677
1528
1530
1654
1481
1500
1622
1724
1657
01
MVN
OC
01
01
MVC
01
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
ST
ST
STCM
STCM
STCM
STCM
STCM
ST
ST
LA
LA
STC
LA
STC
STC
XC
LA
MVC
mc
01
NI
01
XC
NI
LA
LA
TR
LA
LA
mc
CODE
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
3
1
1
1
1
1
1
5
1
1
1
5
1
5
1
1
1
1
1
1
1
1
1
1
1
5
5
5
5
2
2
2
1
1
1
1
2
1
2
1
2
1
1
1
>'
Appendix I: Statements Modifying Data Areas
295
---------MODIFIED AREA---------FIJn,D
DSECT
DISPLACEMENT
NAME
NAME
DEC
HEX
----MODIFyING INSTRUCTION----CSECT
STMNT NO. OPERATION
NAME
(APPROX.)
CODE
'_."
PDCLEN
PDCEDIT
1
( 1)
PDTFADR1
PDTFADR2
PDTFADR3
PDUPEXP
PCOMMON
PCOMMON
PCOMMON
PDCEDIT
1688
1123
1758
0
(698)
(6BB)
(6DE)
(0)
PDUPLFAC
PDCOUT
0
(0)
PENDBUFl
PCOMMON
1699
(6A3)
PENDBUF2
PENDBUF3
PENTVAL
PEOF
PCOMMON
PCOMMON
PETFLDS
PFCB
1734
1769
9
18
(6C6)
(6E9)
(9)
( 12)
PEOFADRl
PEOFADR2
PCOMMON
PCOMMON
1706
1741
(6AA)
(6CD)
PEOFADR3
PCOMMON
1776
(6FO)
PERLNG
PETR
6
(6)
296
IPKNBOOO
IPKNBOOO
IPKBAOOO
IPKBAOOO
IPKBAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKNAOOO
IPKNBOOO
IPKBAOOO
IPKEAOOO
IPKFAOOO
IPKJAOOO
IPKKA001
IPKBAOOO
IPKEAOOO
IPKFAOOO
IPKJAOOO
IPKKA001
IPKBAOOO
IPKPAOOO
IPKLAOOO
IPKDAOOO
IPKEAOOO
IPKJAOOO
IPKMAOOO
IPKOAOOO
IPKSAOOO
IPKSBOOO
IPKSBOOO
IPKPAOOO
I PKHAO 0 0
IPKIAOOO
IPKKA001
IPKLAOOO
IPKLAOOO
IPKHAOOO
IPKPAOOO
IPKDAOOO
IPKDBOOO
IPKFAOOO
IPKFAOOO
IPKGAOOO
IPKGAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNBOOO
3105
3299
1449
.1450
1451
1627
1629
1679
1535
3047
2241
2026
3152
4789
4459
2245
2016
3149
4780
4469
2249
4094
1911
1387
2098
4839
1088
1208
3034
1401
1508
1551
1219
5609
4424
1239
1249
1220
1549
2436
2712
2911
2912
1743
1744
2308
4408
4703
5226
5321
3754
3088
3117
2467
2496
1916
1927
1968
2888
LA
LA
MVC
MVC
MVC
MVC
LA
MVC
LA
LA
STCM
STCM
STeM
STeM
STeM
STCM
STCM
STeM
STCM
STCM
STCM
STeM
MVC
STeM
MVC
MVC
MVC
STCM
STCM
STCM
STCM
STCM
MVC
MVC
STeM
STCM
STCM
MVC
STCM
STe
STC
MVC
mc
MVC
MVC
MVC
MVI
MVC
STC
mc
STe
MVI
STC
MVI
STC
MVI
STC
STe
STC
1
1
1
1
1
3
5
2
5
5
1
1
1
1
1
1
1
1
1
1
1
1
1
3
5
1
1
1
1
1
\
....
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
1
2
1
2
1
1
1
1
1
1
1
1
1
1<
~4..._
r
---------MODIFIED AREA---------DSECT
DISPLACEMENT
FIELD
DEC
HEX
NAME
NAME
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX. )
NAME
PERLNG
PETR
6
(6)
PERREXC
PETR
9
(9)
PERRHD
PERR
0
(0)
PERRLEN
PERRSTNR
PERRSTR
PERR
PERR
PETR
0
6
8
(0)
(6)
(8)
PERSRC
PETR
7
(7)
PETEPX
PETR
4
(4)
IPKNBOOO
IPKNBOOO
IPKOAOOO
IPKOAOOO
IPKOAOOO
IPKSAOOO
IPKSBOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKSAOOO
IPKSBOOO
IPKDAOOO
IPKDBOOO
IPKIAOOO
IPKIAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKOAOOO
IPKOAOOO
IPKOAOOO
IPKOAOOO
IPKOAOOO
IPKCAOOl
IPKCCOOO
IPKCD001
IPKDAOOO
IPKDBOOO
IPKEAOOO
IPKFAOOO
IPKGAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKJAOOO
IPKKAOOO
IPKLAOOO
r
I
('"
2907
2913
1303
1322
1328
3064
1717
4033
4045
4035
4032
3066
1719
2454
2730
4417
5238
3739
3092
3098
3101
3118
2471
2477
2480
2497
1912
1920
1925
2881
2885
2896
2900
2904
1296
1300
1311
1315
1319
2376
4359
1717
2419
2695
1961
2855
1765
2306
2317
2635
2745
4698
4701
5225
5319
5469
3730
3081
2460
STC
LA
STC
STC
LA
LA
LA
MVC
MVC
STH
STH
MVC
MVC
MVC
MVC
LA
MVC
MVC
MVC
MVC
LA
LA
MVC
MVC
LA
LA
LA
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVI
MVI
MVI
STC
MVI
MVI
MVI
MVI
STC
MVC
MVC
MVC
Appendix I: Statements Modifying Data Areas
CODE
1
5
1
1
5
1
1
1
5
1
1
2
2
2
2
5
2
1
2
2
3
5
2
2
3
5
1
2
2
2
2
2
5
5
2
2
2
5
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
297
-----·---MODIFIED AREA---------DISPLACEMENT
DSECT
FIELD
DEC
HEX
NAME
NAME
PETEPX
PETR
4
(4)
PET HEAD
PETR
0
(0)
PET lOP
PETR
2
(2)
PETLEN
PETR
0
(0)
298
----MODIFyING INSTRUCTION~---STMNT NO. OPERATION
CSECT
(APPROX.)
NAME
IPKNAOOO
IPKNBOOO
IPKOAOOO
IPKCAOO1
IPKCD001
IPKDAOOO
IPKDBOOO
IPKEAOOO
IPKGAOOO
IPKGAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKNBOOO
IPKOAOOO
IPKFAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKCA001
IPKCCOOO
IPKCD001
IPKDAOOO
IPKDBOOO
IPKEAOOO
IPKFAOOO
IPKGAOOO
IPKGAOOO
IPKGAOOO
IPKIAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKNAOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKOAOOO
1949
2917
1332
2370
1711
2416
2692
1958
1706
1764
1570
1820
3118
2497
2913
1328
2854
2604
2908
3694
4487
2372
4360
1713
2444
2720
1960
2901
1713
1731
1776
4418
2228
2746
3696
3756
1648
1670
1821
1897
1919
2155
2242
2590
2596
2646
3089
3119
3514
3542
1611
2468
2498
1891
2914
3048
3053
3462
1329
MVC
STC
STC
XC
XC
XC
XC
XC
MVC
MVC
LA
LA
LA
LA
LA
LA
MVC
MVC
MVC
MVC
MVC
MVC
MVC
MVC
STH
STH
MVC
STH
STH
STH
STH
STH
MVC
STH
MVC
STH
MVC
MVC
STH
MVC
MVC
STH
MVC
MVC
MVC
MVC
MVC
STH
MVC
MVC
STH
MVC
STH
STH
STH
STH
STH
STH
STH
CODE
2
1
1
2
2
2
2
2
1
1
5
5
5
5
5
5
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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
,-
;(
\'
....
'--
[
---------MODIFIED AREA---------DISPLACEMENT
DSECT
FIELD
DEC
HEX
NAME
NAME
PETLEN
PETR
0
(0)
PETOP
PETR
3
(3)
PETOPO
PETR
2
(2)
f
1.
[~
PETOP3
PETR
5
(5)
PETSTNO
PETR
6
(6)
PEXPFLAG
PFCBSW
PETFLDS
PFCB
1
(1)
(11)
17
----MODIFyING INSTRUCT10N----STMNT NO. OPERATION
CSECT
(APPROX. )
NAME
IPKOAOOO
IPKOAOOO
IPKCA001
IPKCCOOO
IPKCD001
IPKDAOOO
IPKDBOOO
IPKEAOOO
IPK1AOOO
IPKJAOOO
IPKKAOOO
IPKLAOOO
IPKNAOOO
IPKFAOOO
IPKIAOOO
IPKJAOOO
1PKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
1PKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNBOOO
IPKSBOOO
IPK1AOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKNAOOO
IPKNAOOO
IPKJAOOO
IPKJAOOO
IPKNAOOO
IPKAAOOO
IPKAAOOO
1452
1459
2371
4358
1712
2418
2694
1959
4412
3729
3080
2459
1948
2870
4413
1562
1783
2047
3728
4629
1453
1541
1542
1706
1707
1738
1739
1977
3079
3100
1238
1369
1667
1675
1746
1757
1854
2458
2479
1521
1907
1909
3016
1725
5559
2227
1569
1669
1845
1918
2241
3567
1659
1664
2729
4591
2182
1925
2004
STH
STH
MV1
MV1
MVI
MV1
MVI
MV1
MV1
MV1
MV1
MV1
MV1
01
XC
NI
01
01
MV1
MV1
N1
NI
OC
N1
OC
N1
OC
OC
MVI
01
01
N1
MVC
01
01
01
N1
MV1
01
01
N1
01
01
01
01
01
01
01
01
01
01
01
01
N1
STH
MVC
01
01
N1
Appendix I: Statements Modyifying Data Areas
CODE
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
1
1
1
1
1
2
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
299
•
r
---------MODIFIED AREA---------FIELD
DSECT
DISPLACEMENT
NAME
DEC
NAME
HEX
----MODIFyING INSTRUCTION----CSECT
STMNT NO. OPERATION
NAME
(APPROX.)
PFILE2
PCOMMON
1723
(6BB)
PFILE3
PCOMMON
1758
(6DE)
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKGAOOO
IPKGAOOO
IPKGAOOO
IPKGAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKKAOOO
IPKKA001
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKMAOOO
IPKOAOOO
IPKOAOOO
IPKOAOOO
IPKRAOOO
IPKRAOOO
IPKRAOOO
IPKBAOOO
IPKCCOOO
IPKCCOOO
IPKCD001
IPKDAOOO
IPKDAOOO
r
1
(.
1765
1961
2210
2302
2949
2982
3028
3210
3253
3277
3355
1226
1509
1806
1881
1210
1216
1237
2628
2630
2640
2697
2450
2472
2526
5340
5478
5500
5683
5712
5751
1462
3668
3699
3759
4571
4594
4624
4852
4856
1436
4517
1242
1252
1362
2605
1087
1201
1206
1221
1586
1595
1668
1589
1689
1777
1621
2732
2749
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
XC
XC
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
XC
LA
LA
XC
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
CODE
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
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
1
1
1
1
1
"'~""-
Appendix I: Statements Modifying Data Areas
301
---------MODIFIED AREA---------DSECT
DISPLACEMENT
FIELD
DEC
NAME
NAME
HEX
----MODIFyING INSTRUCTION----CSECT
STMNT NO. OPERATION
NAME
(APPROX.)
PFILE3
IPKDAOOO
IPKDAOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKGAOOO
IPKGAOOO
IPKGAOOO
IPKGAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKICOOO
IPKICOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
302
PCOMMON
1758
(6DE)
3008
3013
1454
1480
1485
1520
1526
1545
1553
2090
2502
2517
2588
1357
1366
1405
1434
1475
1581
1860
1865
1876
1912
2095
2101
2905
3062
3223
3238
3366
1534
1623
1739
1779
1189
1233
2629
2634
2652
2676
2690
2117
2516
2671
4422
4985
5261
5492
5563
5699
1006
1036
1500
4838
4877
3173
3178
3183
3187
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
XC
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
CODE
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
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
1
1
1
1
1
[
r
l
(,'
---------MODIFIED AREA---------DISPLACEMENT
DSECT
FIELD
DEC
HEX
NAME
NAME
PFILE3
PCOMMON
1758
(6DE)
PFINDPT
PCOMMON
1891
(763)
PFLDCOL
PSTRINGS
PFLDLEN
PSTRINGS
0
(0)
PFLDSRC
PSTRINGS
2
(2)
PGBLASIZ
PCOMMON
1940
(794)
PGBLBSIZ
PCOMMON
1943
(797)
( 1)
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX.)
NAME
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKA001
IPKLAOOO
IPKLAOOO
IPKMAOOO
IPKMAOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKQAOOO
IPKRAOOO
IPKRAOOO
IPKBAOOO
IPKFAOOO
IPKCA001
IPKCAOOl
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKEAOOO
IPKIAOOO
IPKJAOOO
IPKCA001
IPKCA001
IPKCCOOO
IPKCCOOO
IPKIAOOO
IPKIAOOO
IPKJAOOO
IPKCAOOl
IPKCA001
IPKCA001
IPKCCOOO
IPKCCOOO
IPKCD001
IPKDAOOO
IPKDAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKJAOOO
IPKFAOOO
IPKIAOOO
IPKFAOOO
3266
3271
3276
3283
3625
3761
3780
3817
3822
4280
4322
4342
4348
4441
2552
2557
1078
1236
2776
3393
3589
1666
2467
4101
1088
1075
1604
2169
3112
1197
2018
1936
1974
2000
1279
2181
4562
1196
1998
1610
1919
2202
2237
4561
1198
2021
2024
1939
1942
1236
2318
2485
2185
2203
2265
4576
2928
5647
2937
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
MVC
MVC
MVI
STC
STC
LA
LA
LA
LA
MVI
MVI
STC
MVI
STC
STC
MVI
STC
MVC
LA
MVC
LA
MVC
LA
LA
LA
LA
LA
LA
MVC
STCM
LA
STCM
Appendix I: Statements Modifying Data Areas
CODE
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
1
1
1
1
1
2
1
2
2
1
1
1
1
1
1
1
1
2
5
2
5
2
1
1
5
1
1
1
2
1
1
1
303
---------MODIFIED AREA---------FIELD
DSECT
DISPLACEMENT
NAME
DEC
HEX
NAME
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX.)
NAME
CODE
,,~
PGBLCSIZ
PGBLSIZ
PGENSW
PCOMMON
PCOMMON
PCOMMON
1946
1940
1921
(79A)
(794)
(781)
PGVENTl
PGVHEAD
7
(7)
PGVHLEN
PH ICORE
PIERCNT
PGVHEAD
PCOMMON
PCOMMON
0
1666
1969
(0)
(682)
(7B 1)
PIERSTK
P1NPUTPT
PCOMMON
PCOMMON
1971
1894
(7B3)
(766)
PITEM
EDPMI
10
(A)
PLA
PETFLDS
2
(2)
PLENATTR
PETR
8
(8)
PLINECNT
PLINENUM
PCOMMON
PCOMMON
1843
1917
(733)
(77D)
PLITBLK
PCOMMON
1904
(770)
IPKFAOOO
IPKFAOOO
IPKFAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPK1AOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKICOOO
IPKIAOOO
IPKIAOOO
IPKFAOOO
IPKBAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKBAOOO
IPKFAOOO
IPKTAOOO
IPKCCOOO
IPKDBOOO
IPKLAOOO
IPKNBOOO
IPKNBOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKNAOOO
IPKNBOOO
1PKNBOOO
IPKNBOOO
IPKOAOOO
IPKOAOOO
IPKOAOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKBAOOO
1PKQAOOO
IPKSAOOO
IPKJAOOO
IPKJAOOO
2941
3344
2959
1918
1942
2375
2416
2452
4461
4707
4977
5256
5326
1009
2615
2617
2569
1299
2000
2028
2755
4393
5750
4390
2165
3108
1013
3676
1853
1579
3252
3256
1536
1582
1644
1687
1700
1818
1861
2056
3513
3541
1457
1527
3038
3094
3289
1441
1681
1716
2077
2226
2247
2345
1339
1098
3143
2493
4030
STCM
XC
N1
N1
NI
01
01
NI
NI
01
01
01
01
01
LA
LA
STH
MVC
XC
XC
XC
STH
XC
STC
MVC
MVC
MVC
MVC
LA
LA
LA
LA
STH
STH
MVC
MVC
MVC
STH
MVC
mc
MVC
MVC
MVC
STH
STH
STCM
STCM
STH
STH
STCM
STH
STH
STH
STH
MVC
MVC
mc
STH
STH
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
1
1
1
1
1
1
2
1
1
1
2
1
1
5
5
1
1
2
2
2
1
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
5
1
1
1
1
.1
'~
304
----~----MODIFIED
r
DSECT
NAME
PLITBLK
PCOMMON
1904
(770)
PLITLEN
PCOMMON
1906
(772)
PLOCCNTR
PETR
11
(B)
PLORMIN
EVALSTCK
0
(0)
PLRELATR
PETR
10
(A)
PMAVBSIZ
PMAVNO
PCOMMON
PCOMMON
1936
1938
(790)
(792)
PMAVNP
PCOMMON
1930
(78A)
PM1BLEN
PMODEXP
PMODFLAG
PCOMMON
PDCED1T
PDCEDIT
1951
1
0
(1)
PMOD1FS
PDCED1T
9
(9)
PNAMCOL
PSTR1NGS
( 1)
PNAME
PETFLDS
(1 )
PNAMFLD
(,~
AREA---------DISPLACEMENT
DEC
HEX
FIELD
NAME
PETR
15
(79F)
(0)
(F)
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX. )
NAME
IPKJAOOO
IPKRAOOO
IPKJAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKPAOOO
1PKPAOOO
1PKPAOOO
IPKPAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
IPKKAOOO
1PKLAOOO
IPKLAOOO
1PKLAOOO
1PKLAOOO
IPKKAOOO
1PKKAOOO
IPKKAOOO
IPKFAOOO
1PKFAOOO
IPKFAOOO
IPKFAOOO
1PK1AOOO
1PKDBOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
IPKNAOOO
1PKNBOOO
IPKOAOOO
IPKCCOOO
1PKHAOOO
1PK1COOO
1PKJAOOO
1PKJAOOO
IPKJAOOO
1PKJAOOO
1PKKAOOO
1PKKAOOO
IPKKAOOO
1PKLAOOO
1PKLAOOO
1PKJAOOO
1PKJAOOO
1PKJAOOO
1PKJAOOO
IPKJAOOO
1PKJAOOO
1PKJAOOO
IPKKAOOO
1PKKAOOO
1PKKAOOO
4882
1497
4772
4891
1540
1708
1737
1456
1806
1814
2040
2112
2873
2875
2921
2936
2250
2252
2298
2314
1543
1740
2587
3342
2187
3343
2974
5634
2842
1644
1627
1634
1628
1629
1532
3018
1413
1578
1658
942
2398
3569
3558
3561
2279
2351
3322
1766
1770
1568
1570
2608
2834
2911
3695
4490
1554
1646
1709
STH
STH
MVC
STH
STCM
STCM
STCM
MVC
STCM
STCM
STCM
STCM
MV1
MV1
MVC
MVC
MV1
MVI
~VC
MVC
MVC
MVC
MVC
MVC
STH
XC
MVC
LA
STH
LA
MVC
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
MVC
LA
LA
LA
LA
01
LA
MV1
LA
LA
LA
LA
MVI
LA
LA
MVC
LA
Appendix I: Statements Modifying Data Areas
CODE
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
1
1
2
2
1
1
1
1
1
1
2
1
1
1
3
5
1
5
3
1
1
2
2
2
2
2
2
2
2
2
2
1
2
1
5
1
3
1
1
1
1
2
1
305
-------,..-MODIFIED AREA--;..------DSECT
FIELD
DISPLACEMENT
NAME
NAME
DEC
HEX
----MODIFyING INSTRUCTION----;..
CSECT
STMNT NO. OPERATION
NAME
(APPROX.)
CODE
~
',",,-
PNAMFLD
PETR
15
(F)
PNAMLEN
PSTRINGS
0
(0)
PNAMLNG
PETFLDS
0
(0)
PNAMSRC
PSTRINGS
2
(2)
PNEXTNP
PFCB
29
(1D)
PNEXTNP3
PNPMAC1
PCOMMON
PCOMMON
1787
1907
(6FB)
(773)
PNPOCGV
PCOMMON
1922
(782)
PNPOFFS
PFCB
27
(1B)
PNPRW
PFCB
21
( 15)
PNXTBKT
PETFLDS
9
(9)
306
IPKKAOOO
IPKKAOOO
IPKKAOOO
I PKKA 000
IPKKAOOO
I PKKA 00 0
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKJAOOO
IPKPAOOO
IPKPAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKCD001
IPKJAOOO
IPKJAOOO
IPKPAOOO
IPKPAOOO
IPKAAOOO
IPKAAOOO
IPKAAOOO
I PKAAO 0 0
IPKAAOOO
IPKAAOOO
IPKHAOOO
IPKFAOOO
IPKIAOOO
IPKFAOOO
IPKIAOOO
IPKAAOOO
IPKAAOOO
IPKAAOOO
IPKAAOOO
IPKAAOOO
IPKEAOOO
IPKEAOOO
IPKJAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
. IPKKAOOO
IPKKAOOO .
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
1820
1822
1895
2188
2273
2346
2589
3318
3369
3380
3393
3401
3873
4189
1489
1782
1813
1880
1954
4554
2775
3093
3560
3556
3557
1097
2579
3527
2744
3070
1946
2052
2068
2167
2186
2214
2693
3352
4592
1658
5736
2024
2393
1942
2064
2181
1345
1709
3161
3191
2184
2326
2360
2783
2793
2993
3904
1540
1861
LA
LA
STCM
LA
LA
LA
MVC
LA
MVC
MVC
MVC
LA
LA
LA
LA
LA
LA
LA
LA
MVI
LA
LA
STC
MVC
MVC
LA
LA
LA
LA
LA
MVC
LA
MVC
LA
MVC
LA
MVC
MVC
LA
MVC
LA
STH
STH
MVC
MVC
lWC
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
5
1
1
1
1
1
2
1
2
2
2
1
5
1
1
1
1
3
3
1
5
5
1
2
3
1
1
1
1
3
2
1
2
1
2
1
1
2
1
2
1
1
1
2
2
2
1
1
1
1
1
1
1
1
1
1
5
1
1
\
"'= -.-
(f~
.~
[--
r·
t
C
---------MODIFIED AREA---------DISPLACEMENT
FIELD
DSECT
NAME
NAME
DEC
HEX
----MODIFyING INSTRUCTION----STMNT NO. OPERATIOn
CSECT
(APPROX.)
NAME
PNXTBKT
PETFLDS
9
(9)
PNXTMOD
PDCEDIT
4
(4)
POLSTR
PETFLDS
2
(2)
POPCOL
POPDCOL
PSTRINGS
PSTRINGS
1
1
(1)
POPDSRC
PSTRINGS
2
(2)
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKOAOOO
IPKOAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKJAOOO
IPKCD001
IPKCD001
IPKHAOOO
IPKJAOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKJAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKDAOOO
IPKPAOOO
IPKPAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKICOOO
IPKJAOOO
IPKMAOOO
IPKMAOOO
IPKPAOOO
IPKQAOOO
IPKRAOOl
IPKSAOOO
IPKSBOOO
IPKMAOOO
IPKMAOOO
IPKKAOOO
IPKKAOOO
IPKKA001
IPKLAOOO
IPKCD001
IPKCDOOl
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKMAOOO
( 1)
POPFLAG
PETFLDS
0
(0)
POPLEN
PSTRINGS
0
(0)
POPNUMB
PETR
4
(4)
POPSRC
PSTRINGS
2
(2)
PPAGENO
PCOMMON
1919
(77F)
PRECLEN
PFCB
9
(9)
PREFCNT
PCOMMON
1928
(788)
PROGID
PCOMMON
1845
(735)
1930
1979
2171
2183
2375
1633
1634
1704
1710
1609
1758
1780
1870
2578
3329
1667
1320
1937
2402
1159
1412
1322
2403
2786
2887
3115
3245
3396
2741
1577
1599
1606
1980
2777
3095
1567
1786
2050
952
2399
1531
1612
3938
1369
2123
3186
1835
1094
1193
3165
3260
4503
2544
1088
1119
2570
2578
2589
1171
CODE
MVC
MVC
ST
ST
XC
ST
MVC
3
1
1
1
1
1
5
1
1
1
1
1
1
1
1
2
2
2
2
1
1
1
1
1
1
1
1
1
1
2
1
1
2
5
5
1
1
1
1
3
1
1
1
1
1
1
1
1
2
1
1
1
1
1
MVC
2
MVC
LA
MVC
1
1
1
1
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
MVI
MVC
MYI
MVI
MVC
LA
LA
STC
MVI
MVI
LA
LA
AP
AP
AP
AP
AP
AP
AP
TR
Appendix I: Statements Modifying Data Areas
307
---------MODIFIED AREA---------FIELD
DSECT
DISPLACEMENT
DEC
HEX
NAME
NAME
PSAVPT
PCOMMON
1833
(729)
PSFLAG2
PSIGN
PETFLDS
PETFLDS
0
9
(0)
(9)
( 1)
PSLENATR
PETFLDS
PSPILLA
PCOMMON
1963
(7AB)
PSRELATR
PETFLDS
3
(3)
PSTMCSEQ
PCOMMON
1910
(776)
PSTRCOL
PSTRINGS
PSTRLEN
PSTRINGS
0
(0)
PSTRSRC
PSTRINGS
2
(2)
PSVALUE
PSYMBOL
PETFLDS
PETFLDS
4
1
(4)
( 1)
PSYMNO
PETR
14
(E)
308
( 1)
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX. )
NAME
IPKCCOOO
IPKDAOOO
IPKFAOOO
IPKIAOOO
IPKJAOOO
IPKNAOOO
IPKTAOOO
IPKKAOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKNBOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKACOOO
IPKGAOOO
IPKCAOOl
IPKCA001
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKHAOOO
IPKCA001
IPKCCOOO
IPKCAOOl
IPKCCOOO
IPKPAOOO
IPKPAOOO
IPKKAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKLAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
1461
1531
2164
4710
1478
1474
1015
2315
3196
3252
3256
3328
3526
3572
2314
4146
1538
1842
5341
5359
5610
2183
4153
4180
855
1717
1585
1964
1607
1853
3911
1719
1949
3906
1965
3912
3695
3830
2182
3138
3166
3189
3194
1974
1517
2607
2835
2840
1645
1819
1862
2141
2588
2595
2645
1455
1547
1664
1694
XC
XC
XC
XC
XC
XC
XC
01
LA
LA
LA
LA
LA
LA
MVC
MVC
MVC
MVC
LA
MVC
MVC
t<1VI
MVC
STC
AP
AP
LA
STC
LA
LA
STC
LA
STC
STC
LA
LA
LA
LA
XC
MVC
MVC
MVC
MVC
01
MVI
LA
MVI
STC
MVI
MVI
MVI
STC
MVI
MVI
MVI
STCM
LA
LA
LA
CODE
1
1
1
1
1
1
1
1
1
'"
""
5
5
1
1
1
2
5
2
2
1
2
1
1
5
5
1
1
2
1
2
2
1
2
1
1
1
1
5
5
1
1
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
/~
'"
[
r
--------·MODIFIED AREA---------DISPLACEMENT
FIELD
DSECT
HEX
DEC
NAME
NAME
PSYMNO
PETR
14
(E)
PSYMTABL
PSYSNDX
PCOMMON
PCOMMON
2014
1922
(7DE)
(782)
PSYSPSTR
PCOMMON
1876
(754)
PVSDSIZE
PWAADDR
PCOMMON
PFCB
1899
14
(76B)
(E)
PWAADDRl
PCOMMON
1702
(6A6)
PWAADDR2
PCOMMON
1737
(6C9)
PWAADDR3
PCOMMON
1772
(6EC)
l
PO
Pl
('
PCOMMON
PCOMMON
90
90
(SA)
(SA)
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX. )
NAME
IPKNAOOO
IPKNAOOO
IPKNBOOO
IPKNBOOO
IPKOAOOO
IPKOAOOO
IPKOAOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKPAOOO
IPKKA001
IPKIAOOO
IPKIAOOO
IPKBAOOO
IPKSBOOO
IPKBAOOO
IPKDAOOO
IPKDAOOO
IPKFAOOO
IPKBAOOO
IPKEAOOO
IPKFAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOl
IPKPAOOO
IPKPAOOO
IPKBAOOO
IPKEAOOO
IPKFAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOl
IPKBAOOO
IPKHAOOO
IPKHAOOO
IPKPAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
1476
1883
2795
2798
1225
1228
1361
1828
1953
2054
2206
4502
4482
5749
1375
1619
2016
1796
1800
2953
2229
2033
3135
4796
3295
4465
3988
4041
2219
2023
3134
4786
3293
4466
2234
1185
2694
4098
1583
1583
1666
1666
1667
1667
1944
1944
2250
2250
2251
2251
2515
2515
1886
1888
1933
1934
1938
1946
1969
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
STCM
ST
XC
TR
LA
STH
STCM
STCM
MVC
STCM
STCM
STCM
STCM
MVC
STCM
STCM
STCM
STCM
STCM
STCM
STCM
MVC
STCM
STCM
MVC
MVC
STCM
STH
STH
ST
ST
MVI
MVI
STC
STC
ST
ST
MVC
~VC
MVC
MVC
MVC
LA
UNPK
NI
MVC
LA
LA
Appendix I: Statements Modifying Data Areas
CODE
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
3
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
309
---------MODIFIED AREA---------FIELD
DSECT
DISPLACEMENT
DEC
NAME
NAME
HEX
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX.)
NAME
p1
PCOMMON
90
(SA)
P2
PCOMMON
90
(SA)
P4
PCOMMON
90
(5A)
P7
PCOMMON
90
(5A)
P8
PCOMMON
90
(5A)
P9
PCOMMON
90
(5A)
RANR
EVALSTCK
0
(0)
1PKNAOOO
1PKNAOOO
IPKNAOOO
1PKNAOOO
I PKNAO 0 0
1PKNAOOO
1PKNAOOO
1PKNAOOO
IPKNAOOO
IPKNAOOO
IPKNAOOO
1PKNAOOO
IPKNAOOO
1PKNAOOO
1PKNAOOO
1PKNAOOO
IPKJAOOO
1PKNAOOO
IPKNAOOO
1PKNAOOO
1PKNAOOO
1PKKA001
1PKNAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
IPKKAOOO
IPKLAOOO
IPKLAOOO
IPKLAOOO
1PKLAOOO
IPKLAOOO
1PKAA002
1PKAA002
1PKKAOOO
1PKLAOOO
1PKNBOOO
1PKNBOOO
1PKNBOOO
IPKQAOOO
1PKQAOOO
1PKQAOOO
1PKNBOOO
1PKNBOOO
1PKNBOOO
1PKKA001
IPKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
IPKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKA001
1PKKAOO1
1PKJAOOO
1PKKAOOO
/
(81) .
(86)
(7)
RDATAD
RDATLEN
RELLEN
WORKDTF
WORKDTF
EVALSTCK
1
RLADDR
RLAD1D
RLDNXT
RLDENTRY
RLDENTRY
RLDENTRY
0
6
(3)
(0)
(6)
RLF'LAG
RLDENTRY
2
(2)
RLREF1D
SAVADDR
SAVAR
RLDENTRY
PCOMMON
PCOMMON
1
2027
2030
(7EB)
PEE)
SAVESDNP
PCOMMON
1961
(7A9)
SAVREGl
310
PCOMMON
la9
1134
3
2036
( 1)
(7F4)
1980
2048
2064
2381
1584
1929
1935
1967
1971
1973
2329
2372
2508
1668
2252
2509
1922
2360
1919
1976
2347
4429
1972
2786
2927
2946
2952
2968
2175
2304
2325
2330
2346
1560
1561
2789
2178
3386
3378
3388
1152
1189
1IJ22
3380
3384
3379
4473
1622
1770
3670
3701
3762
3777
3806
4291
4IJ51
4512
1679
1939
LA
LA
LA
T,A
LA
LA
N1
LA
MVC
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
LA
MV1
STC
STC
STC
MVI
MVI
STC
STC
STC
MV1
STCM
MVC
MVC
MVC
STCM
MVC
LA
LA
LA
LA
MVC
01
MVC
STCM
MVC
MVC
MVC
MVC
LA
MVC
MVC
MVC
MVC
MVC
ST
ST
CODE
2
1
2
2
2
1
2
2
2
1
2
2
2
2
2
3
2
2
1
1
1
2
2
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
2
1
1
1
1
1
1
1
1
1
1
t
[
r
i
(:
---------MODIFIED AREA---------FIELD
DSECT
DISPLACEMENT
HEX
NAME
NAME
DEC
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
NAME
(APPROX.)
SAVREG1
PCOMMON
2036
(7F4)
SAVREG2
PCOMMON
2040
(7F8)
SDEFC
SDEFITEM
SDEFK
SDITEMB
SDITEMK
SDITEMST
EPAR
EDPMI
EPAR
EDPMI
EDPMI
EDPMI
6
10
5
11
14
15
(6)
(A)
(5)
(B)
(E)
(F)
SDITEMT
SECTCL
EDPMI
EPAR
10
11
(A)
(B)
SECT FLAG
SEQFLD
SMTEFLG
EPAR
EDPMI
SMTENT
10
18
9
(A)
( 12)
(9)
SMTLEN
SMTNAME
SMTENT
SMTENT
9
10
(9)
(A)
SMTNP
SMTENT
1
( 1)
SMTSIZE
SSDADDR
PCOMMON
PCOMMON
1897
1953
(769)
(7A 1)
SSDEND
PCOMMON
2014
(7DE)
SSDFLAG
SSO
3
(3)
IPKKAOOO
IPKLAOOO
IPKJAOOO
IPKJAOOO
IPKKAOOO
IPKLAOOO
IPKIAOOO
IPKCCOOO
IPKIAOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKCCOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKCCOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKFAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKEAOOO
IPKFAOOO
IPKGAOOO
IPKBAOOO
IPKDAOOO
IPKDAOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKEAOOO
IPKDAOOO
IPKDBOOO
IPKDAOOO
IPKDAOOO
IPKDBOOO
IPKDBOOO
IPKGAOOO
IPKGAOOO
IPKDAOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKEAOOO
IPKDAOOO
IPKDBOOD
IPKDBOOO
IPKDBOOO
IPKEAOOO
IPKEAOOO
IPKDAOOO
IPKCCOOO
IPKKA001
IPKKA001
IPKKAOOO
SSDINFO
SSDNP
PCOMMON
PCOMMON
1953
1936
(7A 1)
(790)
SSDOFFS
SSDSIZE
SSD
PCOMMON
0
1956
(0)
(7A4)
SSDSYM
SSD
4
(4)
SSDSYML
SSITEMK
STABEND
SSD
EDPMI
PCOMMON
3
10
1985
(3)
(A)
(7Cl)
STARTLOC
PCOMMON
1944
(798)
2274
1578
1794
2098
2280
1640
4930
3260
3644
3309
3267
3260
3315
3266
3619
4493
4494
1528
1730
1766
2042
3178
1193
1675
1765
1761
1837
1227
2043
2737
2754
1460
1531
2859
2057
2726
2084
2725
2746
1449
2083
1680
1681
2661
1469
1472
1521
1406
2723
1451
1465
2857
1546
1892
2771
3510
4487
4493
3347
ST
ST
ST
ST
ST
ST
LA
LA
LA
STCM
STC
LA
MVC
MVI
LA
MVC
MVI
MVC
MVI
MVI
MVI
MVI
MVC
LA
LA
MVC
LA
LA
STH
LA
LA
LA
LA
STCM
STCM
STCM
STCM
MVI
MVI
LA
MVI
MVI
LA
LA
MVC
MVC
LA
LA
MVC
STH
MVC
STH
LA
LA
MVC
STC
MVC
ST
STCM
Appendix I: Statements Modifying Data Areas
CODE
1
1
1
1
1
1
5
5
1
1
1
5
2
1
1
2
1
1
1
1
1
1
2
5
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
5
1
5
5
1
2
1
1
1
1
1
1
1
2
5
2
1
1
1
1
311
---------MODIFIEDAREA~---------
FIELD
NAME
DSECT
NAME
STARTLOC
STLENGTH
PCOMMON
EVALSTCK
1944
0
(798)
(0)
STMTNR
PCOMMON
1914
(77A)
STRPTR
ERRENT
2
(2)
SUBE
EPAR
7
(7)
DISPLACEMENT
DEC
HEX
----MODIFYING INSTRUCTION----CSECT
STMNT NO. OPERATION
(APPROX.)
NAME
CODE
..til<
SUBEFLAG
EPAR
SUBEL
SUBLFLAG
SUBLK
SUBLL
SUBLN
SWMH
SWSMT
SYMADDR
SYMESD1D
EPAR
EPAR
EPAR
EPAR
EPAR
MAC HEAD
SMTENT
PCOMMON
PHYR
SYMFLAGS
PHYR
5
(5)
6
0
4
(6)
(0)
(4)
1
( 1)
3
6
0
1981
5
(3)
(6)
(0)
(7BD)
(5)
2
(2)
/
/'
./
SYMLATTR
PHYR
3
(3)
SYMLENG
PHYR
9
(9)
312
IPKKA001
IPKKAOOO
1PKKAOOO
1PKLAOOO
1PKLAOOO
1PKJAOOO
IPKJAOOO
1PKKAOOO
1PKDAOOO
1PKDBOOO
1PK1AOOO
1PK1AOOO
1PK1AOOO
1PKIAOOO
1PK1AOOO
IPKIAOOO
1PK1AOOO
IPKIAOOO
1PK1AOOO
1PK1AOOO
1PK1AOOO
1PK1AOOO
1PKEAOOO
1PKEAOOO
1PKKA001
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
IPKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
IPKKAOOO
1PKKAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKLAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1PKKAOOO
1 PKKAO 0 0
4506
2942
2956
2321
2334
2728
4884
1445
2363
2660
3685
3721
3874
3711
3858
4750
4799
4749
4797
4798
4830
4831
1381
1760
4485
2436
3598
4074
4098
1639
2437
2522
2527
3476
3485
3599
3601
3990
4002
4008
4053
4057
4110
4206
4235
4236
4238
1748
1852
1914
1978
2435
2459
3447
3474
4054
4207
4231
2440
MVC
STH
STH
STH
STH
STH
mc
MVC
STCM
STCM
LA
LA
LA
LA
LA
MVI
LA
STC
MV1
MVC
STH
mc
MVC
MVC
ST
MVC
MVC
MVC
STC
01
MVC
MV1
MV1
01
01
MVC
01
01
MVI
01
MV1
01
MVI
MVC
MVC
01
MV1
NI
01
01
MV1
MVC
MVC
MVC
MVC
MVC
MVC
MVC
STC
1
1
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
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
1
1
2
1
2
1
2
2
1
~
[
r
l
[:
---------MODIFIED AREA---------DISPLACEMENT
DSECT
FIELD
HEX
DEC
NAME
NAME
SYMLENG
PHYR
9
(9)
SYMSRC
PHYR
10
(A)
SYMVALUE
PHYR
6
(6)
SYM1C
SYM1K
SYM2C
SYM2K
S1ITEMI
S1ITEMK
SlITEMST
EPAR
EPAR
EPAR
EPAR
EDPMI
EDPMI
EDPMI
9
8
5
4
15
17
18
(9)
(8)
(5)
(4)
(F)
(11 )
( 12)
S1ITEMT
EDPMI
10
(A)
S2ITEMK
S2ITEMST
S2ITEMT
THISELEM
EDPMI
EDPMI
EDPMI
PETFLDS
13
14
10
0
(D)
(E)
(A)
(0)
TYPEESD
PCOMMON
1995
(7CB)
VERTYPE
VRDA
VRDAT
ESDENTRY
WORKDTF
WORKDTF
0
128
96
(0)
(80)
(60)
VSDADDR
PCOMMON
1917
(1B9)
VSDDIM
VSDEND
VSD
PCOMMON
4
2011
(4)
(1DB)
VSDFLAG
VSD
3
(3)
VSDINFO
VSDNDX
VSDSIZE
PCOMMON
VSD
PCOMMON
1917
1
1980
(1)
VSDSYM
VSD
4
(4)
(1B9)
(7BC)
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
J
(APPROX.)
NAME
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKIAOOO
IPKHAOOO
IPKHAOOO
IPKCCOOO
IPKHAOOO
IPKIAOOO
IPKCCOOO
IPKHAOOO
IPKIAOOO
IPKHAOOO
IPKHAOOO
IPKHAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKJAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKKAOOO
IPKMAOOO
IPKAA002
IPKAAOOO
IPKAA002
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKGAOOO
IPKGAOOO
IPKDAOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKDAOOO
IPKDAOOO
IPKDBOOO
3455
4001
4051
4209
2452
4121
2438
3453
4055
4915
3653
4920
3680
2411
2406
3198
2438
4880
3198
2405
4880
2423
2439
2422
2381
2388
2411
2437
2447
3370
3381
3389
3394
3560
1349
1557
1930
1700
2095
2852
2410
1580
2423
1579
2076
2422
2479
2584
2636
1619
1620
4133
2406
2078
2100
2853
4153
4155
2458
STC
STC
STC
STC
MVC
MVI
MVC
MVC
MVC
LA
LA
LA
LA
STH
STC
LA
MVC
LA
LA
MVC
LA
STC
MVC
MVC
MVC
MVC
LA
MVC
MVI
MVI
MVI
MVI
MVI
MVI
MVI
MVI
MVI
MVI
LA
STCM
STH
STCM
STCM
MVI
LA
MVI
LA
MVI
LA
MVI
LA
LA
STH
STH
MVC
MVC
LA
LA
LA
Appendix I: Statements Modifying Data Areas
CODE
1
1
1
1
2
1
1
1
1
5
1
5
1
1
1
5
2
5
5
2
5
1
2
2
2
2
3
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
5
1
5
1
5
5
5
1
1
1
1
1
2
5
2
313
---------MODIFIED AREA---------DSECT
DISPLACEMENT
FIELD
HEX
DEC
NAME
NAME
VSDSYM
VSDSYML
VSDTYPE
VWDA
WCC
VSD
VSD
VSD
WORKDTF
WORKDTF
4
3
0
128
56
(4)
(3)
(0)
(80)
(38)
WCCHH
WCCHHR
WCCW
WCCW2
WCNTCH
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
56
56
112
120
144
(38)
(38)
(70)
(78)
(90)
WCNTCHR
WCNTDL
WCNTR
WDATAD
WDATLEN
WDEVTYP
WEFFRLEN
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
WORKDTF
144
150
148
121
126
29
68
(90)
(96)
(94)
(79)
(7E)
( 1D)
(44)
WH
WORKDTF
59
PB)
WMPCTY
WPCTY
WORKDTF
WORKDTF
62
30
PE)
(1E)
WREC
WORKDTF
60
(3C)
l
WRECLEN
WORKDTF
40
(28)
WTRKPCYL
WORKDTF
71
(47)
XDEFEND
XREFREC
17
( 11)
XRAREND
XREFADDR
PCOMMON ,
PCOMMON
1970
1999
(7B2)
(7CF)
XREFEND
XREFREC
11
(B)
XREFLEN
PCOMMON
2002
(7D2)
XREFPARM
PCOMMON
1998
(7CE)
XREFPTR
PCOMMON
1967
(7AF)
XRFLAG
XREFREC
8
(8)
XRFLSRC
XRFPSEUD
XRFSYM
XRLATTR
XRFENTRY
XRFENTRY
XRFENTRY
XREFREC
12
0
0
11
(C)
(0)
(0)
(B)
XRSN
XREFREC
9
(9)
XRSYMBOL
XREFREC
0
(0)
314
----MODIFyING INSTRUCTION----STMNT NO. OPERATION
CSECT
(APPROX.)
NAME
IPKDBOOO
IPKDBOOO
IPKDBOOO
IPKAA002
IPKAA002
IPKAA002
IPKAA002
I PKAA 0 0 2
IPKBAOOO
IPKBAOOO
IPKAA002
IPKAA002
IPKAA002
IPKAA002
IPKAA002
IPKAA002
IPKAA002
IPKBAOOO
IPKBAOOO
IPKBAOOO
IPKAA002
IPKAA002
IPKBAOOO
I PKAA 0 0 0
IPKAA002
IPKAA002
IPKAA002
IPKAA002
IPKAA002
IPKAA002
IPKAA002
IPKAAOOO
IPKAAOOO
IPKBAOOO
IPKBAOOO
IPKKAOOO
IPKLAOOO
I PKKA 0 0 1
IPKKAOOO
IPKLAOOO
IPKKAOOO
IPKLAOOO
IPKKAOOO
IPKKAOOO
IPKLAOOO
IPKKAOOO
IPKKA001
IPKKAOOO
IPKKA001
IPKLAOOO
IPKKAOOO
IPK:tAOOO
IPKRA001
IPKRAOOO
IPKRAOOO
IPKKAOOO
IPKLAOOO
IPKKAOOO
IPKLAOOO
2461
2387
2399
' 1592
1530
1706
1724
1576
1524
1534
1541
1571
1716
1519
1540
1516
1518
1517
1904
2077
1531
1707
1519
1934
1545
1573
1714
1725
1536
1579
1726
2270
2435
1917
2090
3209
2586
4478
3179
2558
3214
2590
3163
3255
2542
3272
4482
3210
4480
2587
3204
2581
2017
1102
1100
3208
2585
3199
2576
LA
MVC
MVC
MVI
STCM
MVC
MVC
MVC
MVC
MVI
MVC
STCM
MVC
STH
STC
STCM
STH
MVC
STH
STH
STCM
MVC
MVC
XC
STH
STH
MVC
MVC
STC
MVI
MVI
MVC
MVC
STC
STC
LA
LA
STCM
LA
LA
LA
LA
STH
STH
STH
LA
ST
STCM
STCM
STCM
MVC
MVC
LA
TR
TR
MVC
MVC
MVC
MVC
IPKKAOOO
IPKLAOOO
3200
2577
MVC
MVC
CODE
5
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
1
1
1
1
1
1
1
1
2
2
1
1
1
1
(~
Appendix J: APAR Documentation for the Assembler
[
Certain material should be sent to the assembler maintenance group along
with the submission of an APAR. The material is required in order to
successfully recreate the problem. The following information should
accompany an APAR:
•
•
•
•
•
•
•
•
•
•
Information on the CPU model, main storage size, and devices used
DOS release level
Partition size
Source cards or tape with the failing program
User-written macros and COpy code
Main storage dump if applicable
PTFs applied
Output showing the error
Any other material necessary for this particular problem
Cataloged procedures used
Note: APARs concerning errors in system macro definitions should not be
sent to the assembler maintenance group. Only assembler language
errors, including those in which the assembler has failed to expand the
macro instruction correctly according to the language manual, are valid
APARs against the assembler.
Appendix J: APAR Documentation for the Assembler
315
Index
a
COM instruction
entry in ESD table 55
object code for 73
common data area 110
compressed source records,
edited statement format 23,71
conditional assembly 11
editing of 17
perform 33
constants
address 65
3705 assembler 320
control flow between phases 92-93
control information 3
controls statements, list 71
converting reverse Polish notation
expressions 47
COpy code usage by assembler 255-258
COpy library 3
COpy statements 15
cross-reference
directory 79
index table 79
literals 79
sort technique 79
CSECT instruction
enter in ESD table 55
object code for 73
CSR (see compressed source record)
23,71
current location counter 55
current release number, how to
find 218
current statement, how to find 212
CW instruction 321,323
ABEND processing 85
ACTR edited statement format 277
address constants
edited statement format 278,280
processing of 65
AGO edited statement format 278
aids, debugging 212-217
AIF
edited statement format 278
edited text example 214-215
3705 ALIGN Option 321,324
allocation of main storage 94
APAR documentation 315
assembler
data sets 1
instructions 41,73
interface modules 2,93
option switches 83
ASSGN cards 83
attribute
collect 11,31
insert 31
references 31
attribute table 31
overflow 31
b
B (internal sort block size) 79
basic character expression item format
BKEND card 23
buffer areas 83
buffer sizes 83
build object code diagrams 58,69
c
()
CATALS card 23
CCW instruction
information for printing 73
object code for 65
processing of 53
character mode operators 19
character set, internal 270
character string item format
(type attribute) 276
<:NOP instruction
edited statement format 279
editing of 51
object code for 73
processing of 53
3705 assembler 322
276
d
data area/field cross-reference 201-210
data areas 129-200
statements modifying the 283-314
data flow between phases 92-93
data sets used by the assembler
DC instruction
edited formats 278-281
information for printing 73
length calculation 51
literal handling of 49
object code for 65,69
processing of 53
DCL instruction
generation of 49
length calculation 51
object code for 69
processing of 53
debugging aids
program check 212
wrong assembler output 212
de-editing 3
device needs 1
Index
317
diagnostic information 23
diagnostic message number/module
cross-reference 238-242
dictionary block overflow 34
dictionary information block (DIB)
directory, cross-reference 79
DROP instruction 57
processing of 63
DSECT dictionary 67
DSECT instruction 55
DS instruction
length calculation 51
object code for 69
processing of 53
duplication factors calculated for
DC, DS, DCL 51
36.2
e
EDECK
option 11,23
output 2 1,81
edited macro definitions
expansion of 24
formatting for global editing 21
global vector and global value area 29
input from library 11
keyword table 36.2
output for EDECK 23
edited macro instruction 36.1
edited macro instruction record
format 276
edited macro prototype record format 276
edited statement formats 273-286
edited text
examples of 213-217
flags 271-272
records 15,71
editing 17,43
assembler and machine instructions 45
conditional assembly 17
global 11
local 11
macros 13,15
model statements 17
EJECT control statement 71
elements of reverse Polish notation 259-266
end character mode operator 19
END instruction
evaluate expression 51
generation of 49
object code for 73
processing of 53
punching 77
end-of-job command 85
end-of-operand item format 276
ENTRY instruction 55
entry symbol/module cross-reference 243-244
environmental characteristics 1
device needs 1
system configuration 1
system interfaces 2
EQU instruction
edited statement format 278
evaluate expression 51
318
EQU instruction (continued)
object code for 73
processing of 53
3705 EQUR instruction 321,322
error messages (see also diagnostic
messages)
81,85
3705 assembler 324
error record
edited statement format 275
item format 276
processing of 71,81
error table 61
ESD (see external symbol dictionary)
ESDID
entered in symbol table 53
entered in using table 63
evaluate expressions 53
evaluation of reverse Polish notation 39
example for interpreting current
statement 213
examples of symbols buckets 216-217
exceptions to RPN operator processing 19,47
EXIT instruction 321
expressions of reverse Polish notation 19,47
extended description, definition of 5
3705 extended mnemonic codes 319-320
EXTRN instruction 55
EXTRN symbol/module cross-reference 243-244
external symbol dictionary
building of 51
definition 55
table 67
f
file assignments 83
first aid, debugging 212
flags, edited text 271-272
flow of control between phases 91-92
flow of data between phases 91-92
function of assembler 1
functions of phases, summary of 89-90
9
GA (see global array)
generation-time value areas 19,25
global array
building of global vector 25
global definitions entered in 17
global editing 11
global symbol dictionary
definition 29
overflow 26
global symbol value area 25
definition 33
global vector 29
global variable symbols 11
indexes for 29
global vector
building of 29
definition 25
position in MDB 36
GSD (see global symbol dictionary)
GV (see global vector)
local value areas 36.2
local variable symbol declarations
local variable symbols 11
location counter
definition 55
updating of 53
log errors 65,69
LTORG instruction
function of 49
object code for 73
processing of 53
h
hash table 50,52
high location counter
55
.I
m
I/O activity for the phases 279-234
identifier, object module 218
indexes for global symbols 29
index table, cross-reference sort 79
inner macros 25
input
opening files for 83
to assembler 2
in-storage sort 79
instructions
assembler 41,7l
machine 41,53,61,73
3705 assembler 317,322
interface moCJlul~s, assembler 2,93
internal chatacter set 270
internal operation codes 267-268
interpreting current statement 213
item formats for edited macro prototype
and instructions 276
.
k
keyword macro instruction item format
keyword name array
dictionary block overflow 34
function of 36.1
keyword parameters
entered in parameter table 36.1
in prototype records 15
keyword prototype item format 276
keyword table
building of 17
reading 36.1
KT (see keyword table)
I
layouts
I/O activity for phases 219-234
workfile 219-234
length calculated for DC, DCL, DS 51
literal
cross-reference sort 79
pool 43,49,79
processing of 49
symbolic name 49
3705 assembler 321
literal DC instruction 53
local editing 11
23
276
machine instructions 41
edited statement format 281
processing of 53,61,73
3705 assembler 317,322
3705 machine op-code table 317-319
macro address vector
definition 25
overflow 27
macro definition
edited 25
processing of 33
reconstruction of 23
macro dictionary block
building of 33
contents of 36.1
macro dictionary information block 34
macro header 17,36.2
macro information block
building of 17
global editing 21
macro instructions
edited 36.1
editing of 11
expansion of 11
substitution 17
macro library 3
3705 assembler 320
macro name array 15
macro name dictionary
definition 25
overflow 26
macro prototype
edited 13
statements created for 15·
macro usage by assembler 245-253
main storage
allocation 94
layouts for phases 95-109
MAV (see macro address vector)
M blocks (see also cross-reference sort)
MDB (see macro dictionary block)
MDIB ~acro 4ictionary information
block)
34
MEND record 23
message number/module
cross-reference 238-242
method of operation diagrams 8-84
diagnostic message/module crossreference 238-242
how to read 5
symbols used in 7
MIB (see macro information block)
17,21
Index
79
319
MNA (see macro name array)
15
MND (see macro name dictionary)
MNOTE processing 71
model statements 17
module
diagnostic message/diagram crossreference 238-242
entry symbol/EXTRN symbol crossreference 243-244
identifier 218
o
object module identifier 218
OCDIB (open code dictionary information
block)
34
offset table, error records 81
omitted operand outside sublist item
format 276
opcode insert 13,15
open code
attribute references 31
edited text 36
global vector 29
open code dictionary block
contents of 33
processing during overflow 34-35
open code dictionary information block 34
operand edited format 278
operand restriction table 61
operand syntax checked 45
operands, reverse polish notation 259-261
operational considerations
input 2
output 3
operation codes 267-268
operator priority 18,47
operators
character mode 19
reverse polish notation 262-266
option switches 83
ORG instruction
edited statement format 278
evaluating expression 51
high location counter 55
object code for 73
processing of 53
output from assembler 3
output line 323
overflow
attribute table 31
cross-reference directory 79
dictionary block 34
global symbol dictionary 26
macro address vector 26
macro name dictionary 26
source macro table 26
symbol table 51
320
p
parameter pointer vector
contents of 36.1
overflow 34
parameters
keyword 15,36.1
positional 15,23,36.1
parameter table
contents of 36.1
overflow 34
PARPTV (see parameter pointer vector)
PARTBL (see parameter table)
partition sizes 83
phase/control section/object module
directory 88-89
phase functions, summary of 89-90
phase I/O activity 219-234
phase storage layouts 94-110
physical considerations 2
positional parameters
edited prototypes 15
parameter table 36.1
punching of 23
pre-edited macros 23
PRINT control statement 71
program check 212
program identification 218
prototype records 15
pseudo operation codes 267-268
insert 15
PUNCH records 67,71
purpose of the assembler 1
r
record storage area 78
registers changed by interfat:e routines 236
register usage for the assembler 235
release number, finding the current 218
relocation dictionary
print and punch 77
table 65,77
REPRO records 67,71
resolution of symbol references 57
restriction table for operands 61
reverse Polish notation
expression processing 47
element formats 259-266
evaluation of 39
flags 271-272
translate expressions 18
RLD (see relocation dictionary)
RPN (see reverse Polish notation)
RSA (record storage area) 78
3705 R-type constant 321,323
[
r
l
s
t
self-defining term item format 276
sequence,symbol dictionary
entering symbols in 17
punching 23
sequence symbol references
replaced by offsets 17
resolution of 21
size of buffers 83
size of assembler 1
SMT (see source macro table)
sort (see cross-reference)
source macro definitions 15
source macro table
definition 21
overflow 26
function of 23
source statements 15
SPACE control statement 71
special features 3
SSD (see sequence symbol dictionary)
standard register usage 235
start character mode 19
START instruction
entry in ESD 55
object code for 73
statement formats, edited 273-286
statements modifying data areas 283-314
statistics, assembler 81
storage layouts of phases 94-110
S-type address constant 65
example in edited text 215-217
sublist
end item format 276
start item format 276
subheading 323
summary of errors found in assembly 81
summary of functions of phases 90-91
symbol buckets 45
examples of 216-217
symbol definitions collected 51,53
symbol item formats 276
symbolic literal name 49
symbol references, resolution 57
symbol table 51
entries to 53
overflow 51,57
edited statement format 80
syntax check operands 45
system configuration 1
system interfaces 2
TITLE control statement
71
u
updating location counter
USING instruction
object code for 73
processing of 63
using table
definition 63
function of 61
implicit addresses 65
53,55
v
value areas
generation-time 19,25
global 25,29,33
local 36.2
variable symbol dictionary 17
variable symbols 17
VSD (variable symbol dictionary)
17
V-type address constant 55
work areas 83
workfile layouts for phases 219-234
workfiles
closing of 85
opening of 83
wrong assembler output 212
WXTRN instruction 55
x
XREF (cross-reference)
79
3705 assembler 317-324
extended mnemonics 319-320
machine op-code table 317-319
Index
321
Part 2 - ESERV Logic
(
"'--'
"
'
Organization of Part 2
•
•
•
•
•
Introduction
Method of Operation
Program Organization
Data Areas
Diagnostic Aids
i
Contents
r
r
l
INTRODUCTION . . . . . . . . .
Size of the ESERV Program
Purpose and Function of ESERV
Environmental Characteristics
System Configuration
System Interfaces . . .
Physical Considerations
Operational Considerations
Input . . . . . . .
Output . . . . . .
Control Information
1
1
1
1
1
1
METHOD OF OPERATION
Purpose of the Section
How to Read the Diagram and Description
ESERV
. . . .
3
3
3
6
PROGRAM ORGANIZATION
Purpose of the Section
Phase/Control Section/Object Module Directory
Summary of ESERV Phases and Functions
ESERV Control and Data Flow
ESERV Main Storage Allocation
Main Storage Work Area Layout
ESERV Common
COMMONEQ
COMNDATA
COMSTRUC
INTFBRTB
9
9
13
DATA AREAS .
Purpose of the Section
ESERV Data Area Field Cross-Reference
19
2
2
2
2
2
10
11
12
14
16
16
16
17
17
19
26
DIAGNOSTIC AIDS
Purpose of the Section
Program Identification
I/O Activity and Workfile Layouts
Register Usage for ESERV
34
APPENDIXES .
35
APPENDIX A.
29
29
30
31
EDITED STATEMENT FORMATS
37
APPENDIX B. PSEUDO (INTERNAL) OPERATION CODES
47
INDEX
49
iii
/
Figure.
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
1.
2.
3.
4.
5.
6.
7.
8.
9.
Phase/Control Section/Object Module Directory • . .
Summary of ESERV Phases and Functions • • •
•
ESERV Control and Data Flow • • • • • . • •
ESERV Main Storage Allocation • • . • • • •
·
Work Area Layout for Phases ESERVE, ESERVF, ESERVG
Work Area Layout for Phase ESERVI • • • • •
I/O Activity for ESERVD, ESERVE, ESERVF, ESERVG •
I/O Activity for ESERVI • •
•
ESERV Register Usage • • • • • • • • • • • • • . .
r
L
v
. . . 10
• • • 11
• • •
•
•
•
• • •
. . .
12
13
14
15
32
33
34
"I
/f~"
'\\-,./
Introduction
Three object modules of the ESERV program are written in assembler
language: IPKAD, IPKVA, and IPKVB. All other modules are written in
Programming Language System (PL/S) II. For information on reading and
interpreting PL/S II program listings see Guide to PL/S Generated
Listings, Order NO. GC28-6786.
Size of the ESERV Program
The minimum virtual partition size required by the ESERV program is 24K.
Purpose and Function of ESERV
The ESERV program generates a complete source macro definition from an
edited macro. Several macros can be "de-edited" in one run of ESERV and
macros can be updated in combination with the de-editing. For a
com~lete description of the ESERV program and how to use it see
Guide to the DOS/ySE Assembler.
r
l
Environmental Characteristics
SYSTEM CONFIGURATION
The configuration required is the same as that required by the DOS/VSE
Assembler.
SYSTEM INTERFACES
System-dependent functions and operations of ESERV are centralized in
interface modules to allow relative ease of modification for new
features of the Disk Operating System. The names and functions of these
modules are listed below.
IPKVA
IPKAD
Interface logic, I/O logic, common data area
and initialization code.
SYSSLB logic module (DTFSL)
(CO~MON)
Interface macros used by ESERV to provide service functions and to call
for functions from the interface modules, are described in Part 1,
A~pendix C, 'Macro Usage'.
c
Introduction
1
Physical Considerations
The ESERV program is made up of 7 phases residing on a core image
library. See "Program Organization" for a table showing the phases,
control sections, and otject modules of ESERV.
Operational Considerations
INPUT
Input to ESERV is as follows:
Control statements
(cards, disk, or tape)
Edited macro definitions (sublibrary on a
source statement litr~r~
SYSIPT
SYSRES/SYSSLB
For a complete description of the input see Guide to the DOSIYSE
Assembler.
OUTPUT
Output for ESERV is as follows:
Source format macro definition
if r,equested)
(updated
SYSLST/SYSFCH
If ESERV is run with the UPDATE option, an update survey listing, each
update control statement, and the affected source record(s) are printed
on SYSLST. A statement number is attached to each statement to enable a
list of error references to be printed following the macro definition.
For a complete description of the output see Guide to the DOSIYSE
Assembler.
CONTROL INFORMATION
The user srecifies options of the ESERV program through special control
staterrents. These control statements are fully described in Guide to
the DOSIYSE Asserr.bler.
2
Method of Operation
Purpose of the Section
The purpose of this section is to give a functional description of the
ESERV program and to provide a cross-reference from this description to
other parts of the manual and the program listings.
HOW TO READ THE DIAGRAM AND DESCRIPTION
The following diagram illustrates:
• Input - showing what the data is and where it is from
• Process - describing how the data is processed by ESERV
• Output - showing where the data goes
Data areas are identified on the diagram in two ways: main storage
address (upper case, parentheses), and by PL/S II structure name (upper
case, underlined).
r -,
1
The extended description is related to the diagram by numbered
process steps. In addition, the description supplies the names of
the modules and routines which perform the function. Start reading
the process block and refer to the input and output as you proceed
through the diagram. Use the extended description if you require
more detailed information.
Method of Operation
3
ESERV
INPUT
PROCESS
OUTPUT
EXT. DESCRIPTION
MODULE
ROUTINE
AREA 1
OUTPUT A
D
OUTPUTB
AREA2
3~
The following symbols are used in the diagram.
____-.....>
r
Data flow
Pointer
•
I
Control flow
- -
- -
~
(LlBRBUFF)
STRINGS
Data reference
Main storage address
Structure name
Ci
Method of Operation
5
ESERV
INPUT
PROCESS
OUTPUT
(WORKFILE 2) IP1WKAR)
1
~:'
.~ 2
.,-------
'.
l~~~~'CAi'
,,
,
I
"LI~;~~--
I
Macro header
(L1BRBUFF)
Kevword table
en
IG....
,.~,
l:=
RECORDS IN
UII
3
r;::!>
4
SAVE KEYWORD
TABLE RECORDS;
BUILD SHRUNK
KEYWORD TABLE
BUILD GLOBAL
DECLARATIONS,
BUILD SHRUNK
GLOBAL ARRAY
-
~
~
5
dictionary
DECLARATIONS
IN CSR FORMAT
STRINGS
---..1 EDITED TE~ I
I~
p
i
(CONDITIONAL
ASSEMBLY
STATEMENTS,
MODEL
STATEMENTSI
II
Ii
LOCAL
~
DECLARATIONS
IN CSR FORMAT
STRINGS
MAIN STORAGE
SHRUNK KEYWORD
TABLE SRUKTITM
6
Sequence
symbol
BUILD PROTOTYPE
STATEMENT; INSERT
GLOBAL AND LOCAL
DECLARATIONS
~_-.......~I GLOBAL
Edited text
Variable
symbol
dictionary
8
,r:
r rT"T""""""
EDITED FORMAT
KTITEM ~
READ CONTROL
CARDS AND
__ -1- - -FETCH MACRO
,1
EDITED MACRO_,
rT'"----.../1 KEYWORD TABLE
INITIALIZE
SHRUNK GLOBAL
ARRAY 'l§J1lIEM
7 SAVE SEQUENCE
SYMBOL DICTIONARY
POSiTIONAL
PARAMETER
DICTIONARY
~
LOCAL VARIABLE
DICTIONARY
~
SEQUENCE
1L........
n
9
InP/
10
INSERT NAMES OF
VARIABLES,
PARAMETERS,
SEQUENCE SYMBOL
DEFINITIONS, AND
STATEMENT
NUMBERS
PERFORM UPDATE IF
REQUESTED
(WORKFILE1)
r
UPDATE CONTROL
STATEMENT (SI
MACRO
SOURCE
11
PUNCH AND/OR
12 PRINT ERROR
(3
DEFINITION
PRINT SOURCE
MACRO DEFINITION
AND PRINT UPDATE
CONTROL RECORDS
=~:::>I
STATEMENT
NUMBERS AND
UPDATE CENTRAL
RECORDS
B
SYSPCH
SYSLST
(PRNTADDR)
SYMBOL
DICTIONARY
~
~,
\,
~
n" "
EXTENDED DESCRIPTION
-.J
,...--..,
1---.........,..,
MODULE
ROUTINE
2.
ESERV control records are read in from SYSIPT and the specified macro is fetched
from the macro library. The edited macro records are read in and processed one at
a time. Update control records are kept in the control card buffer for later processing
(see step 10).
IPKVD
MAIN1
3.
Keyword table records are saved in their edited format on workfile 2. A shrunk keyword
table -- containing the length and name of the symbol -- is built and kept in main storage
to resolve any keyword parameter references in the edited text.
IPKVE
KTPROC1
(BLKBLD)
4.
Global declarations are built in compressed source record format and saved on workfile 2.
A shrunk global array -- containing the type, index, length, and name (and dimension if
present) of the symbol -- is built and kept in main storage to resolve any global variable
references in the edited text.
IPKVE
GAPROC
(BLKBLD)
5.
Text written in reverse Polish notation is converted back to the original source order
among operators and operands. References to symbolic variables remain in index number
format. An offset value is placed following the common header of each record to enable
the insertion of sequence symbol definitions (see step 9).
IPKVF
EDTXT
(DEPO)
6.
The variable symbol dictionary is split into two separate dictionaries: the positional
parameter dictionary and the local variable dictionary. Local declarations are built
in compressed source record format from the variable symbol dictionary, immediately
before its division, and they are saved on workfile 2. The positional parameter and local
variable dictionaries are then saved in main storage for later processing (see steps 8 and 9).
IPKVG
VSDPROC
LVDPROC
7.
The sequence symbol dictionary is read from the library and saved in main storage for
later processing (see steps 8 and 9).
IP,KVG
SSDPROC
8.
Keyword parameters are read from the keyword table and positional parameters are read
from the positional parameter dictionary in main storage. The parameters are combined
to build the macro prototype statement. Global and local declarations are read in from
workfile 2 and decompressed.
IPKVI
PROTYP
KTPROC2
DECL
EXTENDED DESCRIPTION (continued)
9.
00
All index references to variables and parameters are replaced by the actual variable names.
Sequence symbol definitions are inserted into their proper locations by means of ANOPs.
A statement number is attached to each statement and any error references are written on
workfile 2.
MODULE
ROUTINE
IPKVI
NAMEINS
10. The sequence number of the record is compared with the sequence number of the current
update control statement in the control card buffer. If the numbers match, the updating
is performed. The update control statement is then saved on workfile 1 for later printing
(see step 11) and the next update control statement is read.
IPKVK
11. The reconstructed source macro definition is printed and/or punched on SYSlST /SYSPCH.
A complete list of all update changes is printed on SYSlST following the MEND statement.
IPKVM
12. A list of error statement numbers from workfile 2 is printed on SYSlST following the
macro definition and update changes.
IPKVI
Overflow and search technique
Each overflow block starts with an entry containing the index number (the offset value in the case
of sequence symbol dictionary entries) of the last variable in the block. This entry is used to help
speed up the searching process. The entry is three bytes long in all dictionaries except the local
variable dictionary which has three separate three-byte entries: one for lClA, one for lClB, and
one for lClC variables. Each of the three types of local variables has its own index series.
If overflow occurs, the dictionary -- shrunk keyword table, shrunk global array, positional parameter
dictionary, local variable dictionary, or sequence symbol dictionary -- overflows onto workfile 1.
After the last entry is made, the dictionary block is written onto workfile 1 in order to free the
dictionary area. Each index or offset searched for (see steps 8 and 9) is compared with the entry
numbers in the dictionary blocks.
I'-~
ERRPROC
r-The purpose of this section is to describe the
structure of the !;SERV program: how it is
divided into ph.ses, how the phases are loaded
into main storage. and how control and data are
passed within the program.
This section contains a
•
•
•
•
•
•
rl
C.'\
./
Phase/control section/object module directory
Summary of ESERV phases and functions
ESERV control and data flow
ESERV main storage allocation
Main storage work area layouts
ESERV cOllllllon
Phase/Control
~ction/Object
Module Directory
Phase
Control
section
Object
module
Description of the object module
ESERV
IPKVMOOO
Ii'KVM
ESERV" identifier, text output with,
statement numbers
SYSLB logic module (DTFSL)
",
;
IPKADOOO
IPKAD100
IPKVAOO3
IJJCPD1
;
',IPKAD
IPKVA
IPKVA
IPKVAOOO
IPKVA
ESERVD
IPKVAOO2
IPKVDOOO
IPKVA
IPKVD
ESERVE
IPKVEOOO
IPKVE
ESERVF
ESERVG
IPKVFOOO
IPKVGOOO
IPKVF
IPKVG
ESERVI
IPKVIOOO
IPKVI
ESERVB
IP:kVKOOO
IPKVBOOO
IPKVK
IPKVB
Figure 1.
10
Initializer
SYSIPT/SYSPCH/SYSLST logic module
(CPMOD)
I " Basic interface routines, common
datCi, area
Workfile loaic module
control record and dictionary
overflow
Process keyword table and global
array
Convert ed1ted text to source
Process variable and sequence
symbol dictionary
Process prototype, symbo11C
variable references, and sequence
symbol definitions
U~date processing (if necessary)
ABEND rout1ne
Phase/Control Section/Object Module Directory.
shows how the phases of the ESERV program are
control sections and object modules.
This figure
into
divide~
Summary of ESERV Ph..es and FunctioN
[
The following figure describes the functions and subfunctions
accomplished in each phase of the ESERV program. For information on the
various control sections and object modules of the phases see Figure 1.
Phase
Function
ESERV
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
ESERVD
ESERVE
ESERVF
ESERVG
ESERVI
Figure 2.
Open workfiles, SYSIPT, and SYSLST
Compute buffer sizes and table addresses
Perform I/O
Check file assignments
Check edited deck for sequence error
Output record and insert statement number
Read and process control records from SYSIPT
Read edited macro from source statement library
Branch to appropriate subroutines
Read and save keyword table
Read global array and build global declarations
Build shrunk keYWord table and alobal array
Determine type of record
Determine field to be de-edited
Reconstruct original source order of operands and
operators
• Build positional parameter and local variable
dictionaries
• Build local declarations
• Build sequence symbol dictionary blocks
• BU1ld prototype statement
• Decompress and insert global and local declarations
• Decompress and insert model statements
• Regenerate conditional assembly and inner macro calls
• Perform update operation (if necessary)
• Output source record
• Output update survey (if update performed)
Summary of ESERV Phases and Functions
Program Organization
11
ESERV Control and Data Flow
ESERV
Input
Source
statement
library
(I nitializel
Edited
macro
definition
WF2
KT records
GBLx inst.
Edited text
LCLx inst.
ESERVD
ESERVE
ESERVF
ESERVG
.
WF1
~ ~p~a!: ~e'!..ue~t~ ___
ESERVI
I-'
tv
Output
Figure 3.
SYSLST
------.
If sequence error
WF2
- -
Update control
records
Error statement
numbers
ESERV control and Data Flow
.~·~··~ff
l
ESERV Main Storage Allocation
The vertical axis of the diagram below represents the amount of main storage available to the partition. The
horizontal axis represents time, the order in which the phases are loaded and executed in main storage. Most
of the ESERV phase is in main storage throughout execution. ESERVD is in main storage during the
execution of phases ESERVE, ESERVF, and ESERVG. The shaded portion of the diagram represents the
work areas, buffers, dictionaries, tables, etc., of the phases. These work areas are illustrated in Figures 5
and 6.
Low address of
partition
ESERV
5.7K
ESERVD
High address of
partition
Figure 4. ESERV Main Storage Allocation
Program Organization
13
Main Storage Work Area Layouts
The following figures illustrate the work areas, buffers, dictionaries, etc., used by the
phases of ESERV while they are in main storage. Figure 5 describes the contents of
the work areas used jointly by phases ESERVE, ESERVF, and ESERVG. Work areas,
etc., generally begin at the high storage address and work downwards using only as
much of the available storage as they require. The information shown on Figures 5
and 6 corresponds with the shaded portion of Figure 4.
End of code
Not used
LlBRBUF
Input buffer and work area for macro block from library
P1WKAR
Work area for workfile 2
BUFFILE2
Output buffer for workfile 2
SSDADDR
Sequence symbol dictionary (SSO)
LVDADDR
/1.:;~c~l4~riable dict!9~y (LVD)
/
PPDADDR
/
/
/
GAADDR
..
Positional par~meter dictionary (PPD)
"Shrunk" global array (GA)
KTADDR
"Shrunk" keyword table (KT)
PRNTADDR
Print area
Figure 5.
Work Area Layout for Phases ESERVE, ESERVF, and ESERVG
.e(
'"
14
/
End of code
ERRNUMBL
P2WKAR2
Error statement number block
Work area 2 for workfile 2
P2WKAR1
Work area 1 for workfile 2
BUFFILE2
I nput buffer for workfile 2
SSDADDR
Sequence symbol dictionary (SSD)
LVDADQR
local variable dictionary (lVD)
PPDADDR
GAADDR
Positional parameter dictionary (PPD)
"Shrunk" global array (GA)
KTADDR
"Shrunk" keyword table (KT)
PRNTADDR
Print area
Figure 6.
Work Area Layout for Phase ESERVI
Program Organization
15
FSERV Common
Information used in common by various phases of ESERV is divided up as
follows:
•
•
•
•
CQMMQNEQ
COMNDATA
COMSTRUC
INTFBRTB
COMMONEQ
All information in .COMMONEQ (basically the same as the assemblerEQU
function) is in the form of CONSTANT declarations in PL/S II code.
COMMONEQ is. compiled as INCLUDE code in each module of the ESERV
program. No storage space is allocated for COMMONEQ. The following
information is contained in COMMONEQ:
•
•
•
•
•
Internal code equates
Pseudo (Internal) operation code equates
Operand and operator equates
Register equates
Miscellaneous equates (print control character,
END flag for dictionaries and continuations cards etc.)
COMNDATA
)
/'
. /. /
All the information in COMNDATA is coded as one based structure. This
is done in order to achieve the same effect as a -DSECT-version- of a
common data area written in assembler language. COMNDATA is complied as
INCLUDE code in each module of the ESERV program. The -CSECT-versionof COMNDATA is contained in the interface module IPKVA and is written in
assembler language.
The following information is contained in COMNDATA:
•
•
•
•
-
Option switches
Buffer sizes
NOTE/POINT values
Parameter tables
Miscellaneous pointers (addresses of various buffers and workareas,
some special pointers to certain based structures, etc.)
16
COMSTRUC
All the information in COMSTRUC is in the form of based structures.
COMSTRUC is compiled as INCLUDE code in each module of the ESERV
program.
The following information is contained in COMSTRUC:
• Declarations of various structures used by more than one phase
of the ESERV program (COMHEAD, KTITEM, STRINGS, etc.)
INTFBRTB
I
I
The INTFBRTB data area is the same as the DOS/VS Assembler branch table
in COMMON except that some symbols have been added (FINDBOK and GETREC)
and some have been deleted (PFETCH, PRETURN, PSAVE, and PPOIN'l'GN). The
DSECT PFCB is also included in the INTFBRTB data area. INTFBRTE is
included in each module as COpy code during assembly time.
I
r
i .
I
I
I
Program Organization
17·
(""
"
.....:..,./
Data Areas
Purpose of the Section
This section shows the contents of the common
data area located in the beginning of the
interface module IPKVA. It contains information
such as parameter tables and NOTE/~OINT value
tables for dictionaries, addresses of workareas,
end-of-file addresses, switches, etc., used by
various modules of ESERV. It is in storage
throughout the execution of ESERV. Workarea
addresses referred to in the method-of-operation
diagram and the workarea layout diagrams, are
defined in this data area. This data area is
accessable through the structure COMNDATA
in all modules except IPKVB.
C'
.. j/
Data Areas
19
DATA AREA:
IPKVA
DISPLMNT
DEC (HEX)
SIZE
o
(0)
FIELD
NAME
DESCRIPTION:
MEANING/USE
CONTENTS
EMBEDDED IDENTIFIER
8
***************************************************************
*
*
BRANCH TABLE FOR THE INTERFACE MACROS
*
*
*****************************************************************
***************************************************************
**
REGISTER EQUATES
**
*****************************************************************
• •• 1
• • 1.
• • 11
• 1 ••
• 1. 1
• 11.
• 111
1 •••
1 •• 1
1. 1.
1. 11
11 ••
11. 1
111.
1111
• 11.
• 111
1 •••
1 •• 1
1.1.
1. 11
11 ••
11. 1
111.
• • 1.
RO
Rl
R2
R3
R4
R5
R6
R7
R8
R9
R10
R 11
R12
R13
R14
R15
ROFFS
RPARM
RFILE
RINPT
ROUTPT
RBIF
RBB
RBA
RBR
RBRSAVE
PARAMETER REGS
*FOR
*INTERFACE MACROS
PGETL RECORD POINTER
PPUTL RECORD POINTER
INTERFACE BASE REGISTER
*
*
STANDARD BRANCH REGISTER
BRANCH REGISTER FOR PSAVE
***************************************************************
*
*
BIT EQUATES FOR BIT HANDLING MACROS
*
*
*
*
***************************************************************
1 •••
• 1 ••
• • 1.
• •• 1
1 •••
• 1 ••
• • 1.
20
BITO
BIT1
BIT2
BIT3
BIT4
BIT5
BIT6
DISPLNMT
DEC (HEX)
FIELD
NAME
SIZE
r--
• •• 1
1111 1111
DESCRIPTION:
MEANING/USE
CONTENTS
BIT7
BITFF
********************************************************
*
*
MASK EQUATES
*
*
**********************************************************
• 111
1 •••
• •• 1
86
1
(S6)
1 •••
• 1 ••
• • 1.
r-\
ADDR
HIGHBY'IE
LOWBYTE
'ICM MASK' FOR ADDRESS
JSWOOOS
PROGRAM SWITCH
POPSW
PLIST
PI NEOFSW
TELLS PRETURN TO POP STACK
OPTION LIST
END OF FILE ON SYSIPT
87
(S7)
6
NP'IEMP
87
89
90
91
(S7)
(S9)
(SA)
(SB)
2
1
1
2
NPTEMPCC
NPTEMPH
NPTEMPR
NPTEMP'IB
TEMPORARY STORAGE FOR READNEXT
NOTE VALUE
CYLINDER
HEAD
RECORD
REMAINING TRACK CAPACITY
• 1. 1 • 111
PABENDC
CODE FOR ABEND REASON
********************************************************
*
*
FILE CONTROL BLOCKS
*
*
*
*
********************************************************
93
93
96
99
102
104
107
110
111
114
122
128
128
131
14S
(SD)
(SD)
(60)
(63)
(66)
(68)
(6B)
(6E)
(6F)
(72)
(7A)
(80)
(80)
(83)
(91)
3S
3
3
3
2
3
3
PFILE2
PDTFADR2
BUFPT2
BUFADDR2
PBUFLEN2
PENDBUF2
PWAADDR2
1
3
8
6
3
3
14
1
PEOFADR2
PNPOIN'I2
PNEXTNP2
PFILE1
PDTFADR1
FILE CONTROL BLOCK FOR FILE 2
ADDRESS OF DTFSD
POINTER TO NEXT RCD IN BUFFER
ADDRESS OF BUFFER
BUFFER LENGTH
ADDRESS OF LAST BYTE OF BUFFER
ADDRESS OF WORKAREA
SWITCHES (SEE DSECT PFCB)
ADDRESS OF END-OF-FILE ROUTINE
NOTE/POINT VALUE
N/P VALUE FOR NEXT BLOCK
FILE CONTROL BLOCK FOR FILE 1
ADDRESS OF DTFSD
NOT USED FOR FILE1
SWITCHES
Data Areas
21
DISPLMNT
DEC (HEX)
SIZE
FIELD
NAME
DESCRIPTION:
MEANING/USE
CONTENTS
•••••••••• ** •• *•• *.* •••••• ** •••••• *.*.** •••••••••••• *••
•
•
FILE CONTROL BLOCK DSECT
• PFCB:
••
•.** ••••••• ** ••••••••••••••• *•• *.** •• *.**.*.* •••••••••••
0
(0)
3
6
(3)
9
11
14
(9)
(B)
(E)
2
17
( 11)
3
3
PDTFADDR
BUFPT
BUFADDR
PRECLEN
ENDBUF
PWAADDR
ADDRESS OF
POINTER TO
ADDRESS OF
MAX RECORD
ADDRESS OF
ADDRESS OF
1
PFCBSW
PROGRAM SWITCH
OPENSW
READSW
UPDSW
BUF2SW
UPD2SW
FIRSTSW
PFCBSW1
PFCBSW2
IF
IF
IF
IF
IF
IF
PEOF
PNOTEPNT
PNPRW
PCCHR
PTRKBAL
PNPOFFS
PNEXTNP
EOF ADDRESS
NOTE POINT VALUES
3
3
3
(6)
1 •••
.1 ••
• • 1.
••• 1
·...
1 •••
.1 ••
• • 1.
• •• 1
18
21
21
21
25
27
29
22
( 12)
( 15)
( 15)
( 15)
( 19)
(1B)
(1D)
3
8
6
4
2
2
1
•
•
1,
1,
1,
1,
1,
1,
DTF
RECORD IN BUFFER
BUFFER
LENGTH
LAST BYTE OF BUFFER
WORKAREA
FILE OPEN
READ, IF 0, WRITE
WRITE UPDATE
TiID BUFFERS
UPDATE MODE
FIRST I/O OPERATION
CYLINDER, HEAD, RECORD
TRACK BALANCE
RECORD OFFSET FROM BUFFER START
N/P VALUE FOR NEXT BLOCK (LNG=PNPRW)
~/
DISPLMNT
DEC (HEX)
[
SIZE
CONTENTS
(92)
SAVMHFLG
SAVEAREA FOR MAC HEAD FLAG
146
(93)
JSWOO09
PROGRAM SWITCH
GLBVARB
KWPARB
TWO UNUSED BITS
GLOBAL ARRAY PRESENT SW
OFSINCR
KEYWORD TABLE PRESENT
NOT USED YET
LENGTH OF MACRO NAME
MACRO LIBRARY
NAME OF MACRO
NIP VAL TO WRITE ERRNUM BLOCK
NIP VAL TO READ ERRNUM BLOCKS
NIP VAL FOR EDITED TEXT
NIP VAL FOR LCLX RECORDS
NIP VAL FOR UPDATE CONTROL
STATEMENTS
TABLE OF NIP VALUES (LNG=6*5)
NIP VAL FOR PPC
NIP VAL FOR LVD
NIP VAL FOR GA
NIP VAL FOR SSD
NIP VAL FOR K'I
TABLE OF PARAMETER TABLES (LNG=6*5)
FOR PREAD/PWRITE
PARAMETER TABLE FOR PPD
PPD BUFFER ADDRESS
PPD BUFFER LENGTH
PARAMETER TABLE FOR LVD
LVD BUFFER ADDRESS
LVD BUFFER LENGTH
....
•• 1 •
l
DESCRIPTION:
MEANING/USE
146
....
r
FIELD
NAME
.• 1.
147
149
150
151
152
160
166
172
180
188
(95)
(96)
(97)
(98)
(AO)
(A6)
CAC)
(B4)
(BC)
2
1
1
1
8
6
6
8
8
6
194
194
200
206
212
218
224
(C2)
(C2)
(C8)
(CE)
(D4)
(DA)
(EO)
0
6
6
6
6
6
0
224
224
227
229
229
231
(EO)
(EO)
(E3)
(E5)
(E5)
(E8)
5
3
2
5
3
2
(93)
MACLGTH
MACLIB
MAC NAME
ERNPTWR
ERNPTRD
TXTNPT
LCLXNPT
UPDATNPT
NOTVALTB
PRMTABLS
PPDADDR
PPDL
LVDADDR
LVDL
Data Areas
23
it
DISPLMNT
DEC (HEX)
FIELD
NAME
SIZll:.
DESCRIPTION: CONTENTS,
MEANING/USE ,
!
234
234
237
239
239
242
244
244
247
249
249
252
(EA)
(EA)
(ED)
(EF)
(EF)
(F2)
(F4)
(F4)
(F7)
(F9)
(F9)
(FC)
5
3
2
5
3
2
5
3
2
5
3
2
254
(FE)
1
1 •••
• •• 1
1 •••
.1 ••
... 1.
• •• 1
255
1
(FF)
1 •••
• 1 ••
• • 1.
• •• 1 '
(100)
1 •••
• 1 ••
1
··.......
1 •••
.1 ••
JSWOO10
PROGRAM -SWITCH
SWCRDMIS
SWREC
SWLIST
SWPUNCH
SWUPD
SWCOL1
SWPCHOPN
SWPASGND
ON IF GETREC FOUND SEQ ERR
ON IF CONTROL. RECORD IN PROCESS
LIST OPTION REQUESTED
PUNCH OPTION REQUESTED
ON IF UPDATE MODE
ON IF FIRST RCD
ON IF SYSPUNCH OPENED
ON IF SYSPUNCH ASSIGNED
JSW0011
• • 1.
• •• 1
256
ERRNUMBRS
ERRNUMBL BUFFER LENGTH
..
SSDADDR
SSDL
~
• • 1.
ERRNUMBL
ERRL
GAADDR
GAL
··......
• 1 ••
KTADDR
KTL
PARAMETER TABLE FOR GA
GA BUFFER ADDRESS
GA BUFFER LENGTH
PARAMETER TABLE FOR SSD
SSD BUFFER ADDRESS
SSD BUFFER LENGTH
PARAMETER TABLE FOR I:NCATA 16
compressed source records format 43
format for global declarations 41
format for local declarations 42
COMSTRUC 17
control flow 12
control records 7
update 7,8
control section/phase/object module
directory 10
CONSTANT declarations
16
current release number, how to find 30
d
data area/field cross-reference
data area IPKVA 20-25
data flow 12
diagnostic aids 29
26-28
e
keyword parameters 7
keyword table records 7
edited statement format
40
I
local declarations 7
local variable dictionary
7
m
macro block header
edited statement format 38
macro prototype statement 7
main storage allocation 13
main storage work area layouts
method of operation diagram 6
how to read 3
symbols used in 7
14,15
o
edited macro instruction £ormat
edited statement formats 37-46
error statements, listing of 8
44
f
field/data area cross-reference 26-28
function of ESERV program 1
functions of the phases, summary of 11
object module/phas~/control section
directory 10
object module identifier 30
operational considerations
control information 2
input 2
output 2
operation codes 47
overflow technique 7
p
g
global declarations
7
7
phase
control section/object module
directory 10
Index
49
I/O activity 31-33
workfile layouts 32-33
physical considerations 2
positional parameter dictionary
program identification 30
pseudo operation codes 47
purpose of ESERV 1
r
7
statement numbers, insertion of
summary of phases and functions
source macro, printing of 7
system configuration 1
system interfaces 1
11
u
register usage 34
release number, how to find 30
reverse polish notation 7, 41
update changes 8
update control records
UPDATE option 2
survey listing 2
s
v
sequence symbol dictionary 7
record format 42
SETx edited statement format 43
shrunk global array 7
shrunk keyword table 7
size of ESERV 1
variable symbol dictionary
record format 42
7,8
7
w
work area layouts, main storage
workfile layouts 32-33
50
8
14,15
'c'
I)
SY33-8567-1
o
oen
.......
<
en
m
»
~
3
I:::J
en
....
r
o
to
0'
o
oen
.......
<
en
m
International Business Machines Corporation
Data Processing Division
1133 Westchester Avenue, White Plains, New York 10604
(U.S.A. only)
IBM World Trade Corporation
821 United Nations Plaza, New York, New York 10017
(International)
SY33-8567-1
READER'S
COMMENT
FORM
DOS/VSE Assembler Logic
r-Your views about this publication may help improve its usefulness; this form
will be sent to the author's department for appropriate action. Using this
form to request system assistance or additional publications will delay response,
however. For more direct handling of such request, please contact your
IBM representative or the IBM Branch Office serving your locality.
n
c
-i
»
r
o
z
Cl
o
o
~
m
o
C
Z
m
Reply requested:
Yes 0
No
0
Name:
Job Title: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __
Address: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __
Zip _ _ _ _ _ _ _ __
Thank you for your cooperation. No postage stamp necessary if mailed in the U.S.A. (Elsewhere, an IBM office
or representative will be happy to forward your comments.)
SY33-8567-1
DOS/VSE Assembler Logic
Your comments, please ...
This manual is part of a library that serves as a reference source for systems analysts,
programmers, and operators of IBM systems. Your comments on the other side of this
form will be carefully reviewed by the persons responsible for writing and publishing
this material.
IBM may use or distribute any of the information you supply in any way it believes
appropriate without incurring any obligation whatever. You may, of course, continue
to use the information you supply.
(")
C
-i
0
:0
"T1
0
r
Fold
FOld
0
»
r
en
.......
0
<
en
Cl
»
z
r
First Class
Permit 40
Armonk
New York
0
0
z
m
m
II>
II>
CD
3
CT
...
CD
r
0
C:;.
r
0
z
G)
First Class
Permit 40
Armonk
New York
C
z
m
0
a
en
-.
<
en
m
»
en
~
3
t:T
...iD
r
0
tQ
o·
-n
iD
Business Reply Mail
z /--,
91
No postage stamp necessary if mailed in the U.S.A.
en\.
W
.....
9I\)
< ••
-
Postage will be paid by:
0
a
en
-.
<
en
International Business Machines Corporation
Department 813 L
1133 Westchester Avenue
White Plains, New York 10604
m
""C
:::!.
...
::J
CD
Co
::J
C
en
Fold
Fold
~
en
-<
W
W
00
(J1
a>
';-I
....
International Business Machines Corporation
Data Processing Division
1133 Westchester Avenue, White Plains, New York 10604
(U.S.A. only)
IBM World Trade CorporatiOn
821 United Nations Plaza, New York, New York 10017
(International)
j
SY33-8567-1
READER'S
COMMENT
FORM
DOS/VSE Assembler Logic
Your views about this publication may help improve its usefulness; this form
will be sent to the author's department for appropriate action. Using this
form to request system assistance or additional publications will delay response,
however. For more direct handling of such request, please contact your
IBM representative or the IBM Branch Office serving your locality.
n
c
-I
»
r
o
z
o
o
Cl
-I
-I
m
"~
,
(
o
"
!
-j
C
Z
m
Reply requested:
Yes 0
No
D
o
Name:
Job Title: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __
Address: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __
Zip __________
Thank you for your cooperation. No postage stamp necessary if mailed in the U.S.A. (Elsewhere, an IBM office,
or representative will be happy to forward your comments.)
·'·t
SY33-8567-1
DOS/VSE Assembler Logic
"-r"/' >'"
"'-_i)
Your comments, please ...
This manual is part of a library that serves as a reference source for systems analysts,
programmers, and operators of IBM systems. Your comments on the other side of this
form will be carefully reviewed by the persons responsible for writing and publishing
this material.
'
IBM may use or distribute any of the information you supply in any way it believes
appropriate without incurring any obligation whatever. You may, of course, continue
to use the information you supply.
o
C
-I
o
JJ
o"
l>
r
o
o
~
<
Ul
G)
»
r
Fold
Fold
o
....................................................................................................... oz
r
First Class
Permit 40
Armonk
New York
Z
m
m
~
3
0-
m
.,
b
o·
cc
"m
Business Reply Mail
t ',t!"""'\
~\.)
~,-..<
No postage stamp necessary if.mailed in the U.S.A.
<;'
'"
Postage will be paid by:
o
@
«
Ul
--
International Business Machines Corporation
Department 813 L
1133 Westchester Avenue
White Plains, New York 10604
m
"'tI
~.
:J
at
c..
......................................................................................................
Fold
Fold
:J
c
en'
~
Ul
-<.
to)
CfJ
(X)
U'1
....~
International Business Machines Corporation
Data Processing Division
1133 Westchester Avenue, White Plains, New York 10604
(U.S.A. only)
IBM World Trade Corporation
821 United Nations Plaza, New York, New York 10017
.(International)
,--_ _...,0
Translate
Source
Code into
Object
Code
I
2
1
Expand
Macro Inst.
and do
Conditional
Assembly
1.3
Global
Edit
Assemble
1.5
1.4
Collect
and Insert
Attributes
Generate
2.1
Edit
Assembler
and
Machine
Instructions
2.2
Collect
Symbol
Definitions
2.3
Resolve
Symbol
References
2.4
Build
Object
Code 1
•
1.3
]
1.3.1
Build
Global
Vector
1.5.1
Build
Macro
Dictionary
Block
2.1.1
1.5.2
Evaluate
Reverse
Polish
Notation
2.1.2
Handle
Literals
Edit
2.2.1
Build
Symbol
Table
2.6
2.5
Print!
Punch the
External
Symbol
Dictionary
2.2.2
Build
External
S.ymbol
Dictionary
Table
2.8
2.7
Build
Object
Code 2
PostProcess
Output
•
I
2.4.1
Process
Machine
Instructions
I
2.4.2
Process
USING
and
.'
DROP
I
2.4;3
Process
Address
Constants
and CCWs
2.7.1
Process
Edited
Text
2.8.1
Print/
Punch
the
Relocation
Dictionary
2.8.2
Sort and
Print the
CrossReference
Dictionary
2.8.3
Diagnostics
and
Statistics
2.1.1.1
Convert
Assembly
Expressions
to Reverse
Polish
Figure 46.
. - - - - -----------
Table of Contents for Method of Operation Diagrams
51
J
,...---..."o
Translate
Source
Code into
Object
Code
I
2
1
Expand
Macro Inst.
and do
Conditional
Assembly
1.1
1.2
Punch
Edited
Macro
Definitions
Local
Edit
1.1.1
Compress
and Edit
1.1.2
Edit Macro
Definitions
and
Conditional
Assembly
1.3
Global
Edit
1.1.3
Resolve
Sequence
Symbol
References
Assemble
1.5
1.4
Collect
and Insert
Attributes
1.3.1
Build
Global
Vector
Generate
1.5.1
Build
Macro
Dictionary
Block
2.2
2.1
Edit
Assembler
and
Machine
Instructions
Collect
Symbol
Definitions
2.1.1
-,
Convert Pre·
Assembly
Expressions
to Reverse
Polish
2.1.2
Handle
Literals
Edit
•
1.1.2.1
Resolve
Symbol
References
2.4
Build
Object
Code 1
•
1.5.2
Evaluate
Reverse
Polish
Notation
2.3
2.2.1
Build
Symbol
Table
Print!
Punch the
External
Symbol
Dictionary
2.2.2
Build
External
Symbol
Dictionary
Table
2.7
2.6
2.5
Build
Object
Code 2
Output
•
I
2.4.1
Process
Machine
Instructions
~2
Process
USING
and
DROP
~.3
Process
Address
Constants
and CCWs
[
2.1.1.1
Convert
Assembly
Expressions
to Reverse
Polish
Figure 46.
Ta
,',"
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37 Producer : Adobe Acrobat 9.31 Paper Capture Plug-in Modify Date : 2010:03:20 21:51:58-08:00 Create Date : 2010:03:20 21:51:58-08:00 Metadata Date : 2010:03:20 21:51:58-08:00 Format : application/pdf Document ID : uuid:7bc68c30-abbc-4199-992f-6e1c5de301db Instance ID : uuid:99325ff8-c414-4d7b-9b47-10a5317b02e9 Page Layout : SinglePage Page Mode : UseNone Page Count : 402EXIF Metadata provided by EXIF.tools