SY33 8041 0_OS_VS_Assembler_Logic_Jul72 0 OS VS Assembler Logic Jul72
User Manual: SY33-8041-0_OS_VS_Assembler_Logic_Jul72
Open the PDF directly: View PDF
.
Page Count: 266
| Download | |
| Open PDF In Browser | View PDF |
SY33-8041-0
Systems
,OS/VS Assembler logic
Release 1
First Edition
(July, 1972)
This edition applies to release 1 of as/vs 1 and to all subsequent releases until otherwise indicated in new editions or
Technical Newsletters. Changes are continually made to the
specifications herein; before using' this publication in
connection with the operation of IBM systems, consult the IBM
System/360 and System/370 Bibliography (GA22-6822) and the-current SRL Newsletter for the editions that are applicable
and current.
Requests for copies of IBM publications should be made to your
IBM representa~ive or to the IBM branch office serving your
locality.
A form is provided at the
comments. If th~ form has
to IBM Nordic Laboratory,
S-18l 09 Lidingo, Sweden.
back of this publication for reader's
been removed, comments may be addressed
Publications Development, Box 962,
Comments become the property of IBM.
CCopyrightlnternationa1 Business Machines Corporation 1972
2
Preface
This program logic manual is written for customer engineers and
programmers maintaining the OS/VS Assembler. The manual describes the
structure, logic, and operation of the assembler.
Prerequisites
This manual was written with the assumption that the reader has:
•
a good knowledge of the assembler language, including its macro and
conditional assembly facilities.
This language is covered in
OS/VS and DOS/VS Assembler Language, Order Number GC33-40l0.
o
a good knowledge of System/370 and System/360 machine instructions.
Machine instructions are described in IBM System/370 Principles of
Operation, Order Number GA22-7000, and IBM System/360 Principles of
Operation, Order Number GA22-682l.
o
a good knowledge of how to use the assembler. This is covered in the
OS/VS Assembler Programmer's Guide, Order Number GC33-402l.
How this Manual is Organized
The "Introduction" contains a summary of general information about the
program.
"Method of Operation" describes the functional objectives of the assembler. Method of Operation diagrams highlight the inputs, processing,
and outputs of the assembler functions.
The diagrams are accompanied
by text describing the functions in more detail and cross-references
to the program elements that perform the functions.
"Program Organization" describes how the program is devided into units.
The section contains detailed charts of how the assembler phases use
main storage and diagrams ~howing the flow of data and control between
assembler phases.
The "Directory" serves as a cross-reference between items in the "Method
of Operation" and IIProgram Organization" sections and to the microfiche
listings.
"Data Areas ll contains detailed layouts of data areas to help in interpreting storage dumps.
"Diagnostic Aids" contains information designed to be helpful in debugging.
The appendixes contain information about error message origin, macro
and copy code usage, met"a text flags, internal operation codes, entry
points and EXTRN symbols, record formats, and the internal character
set.
3
Additional Literature
OS!VS Supervisor Services & Macros, Order Number GC28-6646.
OS!VS Data Management Macro Instructions, Order Number GC26-3793.
OS!VS Data Management for System Programmers, Order Number GC28-6550.
4
Contents
INTRODUCTION . . . . . .
Purpose and Function . . . . . . . . . . .
Compatibility
...•.
Language Supported .
....... .
Environmental Characteristics
. • . . .
System Configuration . . . . . . . . .
System Interface
. . ..
....
Physical Characteristics
. . . .
Operational Considerations .
Input and Output
. • . .
Control Information
9
9
9
9
9
9
9
10
10
10
10
METHOD OF OPERATION
Purpose
. . . . ..
....
How this Section is Organized
How to Read the Diagrams and Descriptions
Relation of the Diagrams to Program Phases
Generate Object Code from Source Code (11 .
Expand Macro Instructions and Do Conditional Assembly (21 .
Edi t (31.. . . . . . .
....... .
Process ICTL, OPSYN, and COpy (41.. . . . .
Process Symbols (51. . . . • . . . . . . .
Process Macros and Build MDD(61. . . . . .
. ...... .
Convert Expressions to Postfix Notation (7}
... .
Build Generation-Time Dictionaries (81 . . . . . . . . . .
Build Ordinary Symbol Attribute Reference Dictionary(91 . .
Build Skeleton Dictionary and Macro Definition Vector (101.
Generate Assembler and Machine Instructions (IlL . . . . . . .
Build Parameter Table and Initialize Skeleton Dictionary (121 .
Do Conditional Assembly and Substitution (131. . • . .
Assemble Object Code from Machine, Data, and Assembler
Instructions (14)
. . • .
. ...... .
Process Symbols (15} . . . .
,Collect Symbols (161 . . . .
Define Symbols (Pass 1)(171.
Build Adjustment Table; Print/Punch ESD{181 . . . . . . . . . .
Resolve Symbol References (Pass 2); Adjust Records (191 .
Handle Symbol-Table Overflow (201
. • . .
Generate Object Code (211 . . . . .
. ..••....
Process Machine Instructions (22)..
.. • •
Process Data Instructions (231.
. .•.
Process Assembler Instructions (241
Update Location Counter (251 . .
Sort RLD and XREF(261.
Initialize (27) . . . .
. .
PROGRAM ORGANIZATION .
Logical Flow of Control
. . . .
Module Directory . . . . .
. • . .
Main Storage Layout
. . . .
Edit Phase (IFOXll) Main Storage Work Area
Dictionary Interlude Phase (IFOX2l) Main Storage Work Area:
Process Skeleton Dictionaries . . . . .... . • • . . . . .
Dictionary Interlude Phase (IFOX2l) Main Storage Work Area:
Build Ordinary Symbol Attribute Reference Dictionary . .
Dictionary Interlude Phase (IFOX2l) Main Storage Work Area:
Unchain Opsyn Table . . . . . . . . . . . . • . . . . . .
11
11
11
11
12
14
16
18
22
24
28
30
32
34
36
40
42
44
46
48
50
52
56
58
60
62
66
68
70
74
76
78
81
82
83
84
85
1 of 3,
. . .
2 of 3,
. .' .
3 of 3,
. . .
86
87
88
5
89
90
91
92
93
Generation Phase (IFOX31) Main storage Work Area . . . .
Symbol Resolution Phase (IFOX41) Main Storage Work Area
Assembly Phase (IFOX51) Main Storage Work Area . . . . .
Post Processor Phase (IFOX61) Main Storage Work Area . .
Assembler Data Flow . . . .
..... .
DATA AREA
ED SECT
ENDFIL .
ENDSEG .
ERRIN
ERRMESS
FARENT .
GBLDEF . .
GBLNTRY
GDNTRY .
J
JERRCD .
JFLEBLK
JINCOM . .
JOUTCOM
JTEXT
JTEXTA
LCLNTRY
MDDNTRY
MDVNTRY
OPNTRY . .
OPSTBL . . . . . . .
OPSYNTRY . . . . . .
OSDIR
. . . .
OSRDNTRY
....
OSREF
OSRTNTRY . . . . . .
·
· .
· . .
. •.. . . .
·
.
.
.
.
DIRECTORY
DIAGNOSTIC AIDS
. . . ..
Eyecatchers: Object Module and
Data Set Activity Summary
Edit Phase
. . . . ..
Dictionary Interlude Phase
Generate Phase . . . .
Symbol Resolution Phase . .
Assembly Phase . . . . . .
Post-Processor Phase
Register Usage Tables
.
IFOXOA Driver Routines
6
. III
. . . . . ..
. . . .
.
· . . . . . . .
· . . . . . . .
P
PPIN . .
PRMNTRY
RCARD
RLDIN
RPRINT . .
RSYMCRD
SKDCTHRD . . . . .
SSDEF . . . . • .
SSDIR
SSDTNTRY . . . . . . .
SSREF . . . .
UDSECT .
........ .
VSDENTRY . .
XRFIN
. . . . .
X5COM
. . . .
Data Area Directory
.
95
96
105
106
107
108
109
110
. . .
. . . . . . .
. . . ... . . . .
. . . . .
112
. . 113
· . 118
. . . 119
· 120
· 121
122
126
. . . 127
· . . 128
· . 129
· . . 130
· . . 131
· 132
. . . 133
· . . 134
135
· 136
137
· 138
· . 139
140
141
· 142
. . . 144
· . 146
· . 147
· . 148
. . . 149
. . . 150
· 151
· . . 152
· . . 153
154
. . . 160
169
........
. . . 189
Control Section (CSECT) Identifiers 190
191
....
. 191
. . 193
. . . . .
. . . . . . . ~ 194
. . .
. . . .
. . 196
. .
. . . . . . . . . . . . 197
. . . .
. 198
. . .
. 199
. 199
IFOXOB
IFOXOD
IFOXOF
IFOXOH
IFOXOI
IFNX1A
IFNX1I
IFNX1S
IFNX2A
IFNX3A
IFNX3B
IFNX3N
IFNX4D
IFNX4E
IFNX4M
IFNX4S
IFNX4V
IFNX5A
IFNX5C
IFNX5D
IFNX5F
IFNX5L
~FNX5M
IFNX5P
IFNX5V
IFNX6A
IFNX6B
Workfile I/O and Storage Mavagement Routines
.
Master Common Area Initialization Routines . .
.
Input Routines . . . . .
........
. .
Output Routines
. . . . .
.
Abort Routines . . . . . . . • . . .
....
.
Edit Phase (Mainline)
.
Edit Dictionary Routines .
. . . .
.
Postfix • . . . . . . .
. .
Dictionary Interlude . . .
. • ..
.....
Generate Phase (Mainline)
. . . . . . . .
Generate Phase (Symbol Resolution Preprocessor)
.
Generate Phase Dictionary Routines . • . . • . . .
•
Symbol Resolution Phase (DC/DS Evaluation Routines)
Symbol Resolution (ESD Routines) . . . . . .
Symbol Resolution (Mainline)
o.
•
Symbol Resolution (Symbol Table Routines)
..
Symbol Resolution (Expression Evaluation)
Assembler Opcode Processor .
Assembler Initialization . . . .
DC Evaluation Routine ........ . .
.
Floating Point Conversion Routine . . . .
.
Error Logging Routine
. .
Machine OP Processor .
. . . . . .
Print Routine
. . • . . . . . .
.
Evaluation Routine . . . . .
•
Post Processor .
. . . .
.
Diagnostic Phase . .
APPENDIXES
Appendix A:
Appendix B:
Appendix C:
Appendix D:
Appendix E:
Appendix F:
Appendix G:
0
0
0
0
0
0
0
0
0
0
•
00
0
•
•
0
0
•
•
0
0
0
•
0
0
•
•
•
•
•
0
0
. • . . . . . . . .
. . • .
Error Message/Module Cross-Reference • .
Macro & Copy Code/Module Cross-Reference • .
Internal Operation Codes . . . . . . . .
Meta Text Flags . . . . .
Entry Point & EXTRN Symbol/Module Cross-Reference
Internal Character Set. . . . . .
. ..
ESD, TXT, RLD, SYM Record Format . .
0
• • • • • • •
FOLDOUT: GUIDE TO METHOD OF OPERATION DIAGRAMS .
INDEX
0
0
200
201
202
203
204
205
207
208
209
210
211
212
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
·
·
·
·
231
232
237
246
248
249
· 251
• 252
o
· 257
259
7
Illustrations
14
Generate Object Code From Source.Code (1) . . . . . .
Expand Macro Instructions and Do Conditional Assembly (2) . . . . 16
Edit (3)
.•......
. ... .
18
Process ICTL, OPSYN, and COpy (4) . . . . . . . . .
22
Process Symbols (5) . . . . . . . . . . . . . . . .
24
Process Macros and Build Macro Definition Directory (6)
28
Convert Expressions to Postfix Notation (7) . . . .
30
Build Generation-Time Dictionaries (8)
..... .
32
Build Ordinary Symbol Attribute Feference Dictionary (9)
34
Build Skeleton Dictionary and Macro Defin·ition Vector (10)
36
Generate Assembler and Machine Instructions (11)
.....
40
Build Parameter Table and Initialize Skeleton Dictionary (12)
42
44
Do Conditional Assembly and Substitution (13) . . . . . . .
Assemble Object Code from Machine, Data, and Assembler
Instructions (14)
. . . .
. ........ .
46
Process Symbols (15)
......... .
48
Collect Symbols (16)
....
. .•.
50
Define Symbol~ (Pass 1) (17)
............. .
52
Build Adjustment Table; Print/Punch ESD (18) . .
56
Resolve Symbol References (Pass 2); Adjust Records (19)
58
Handle Symbol-Table Overflow (20)
..... .
60
Generate Object Code (21) . . . . .
62
Process Machine Instructions (22)
66
Process Data Instructions (23)
... .
68
Process Assembler Instructions (24) . . . . .
70
Update Location Counter (25)
74
Sort RLD and XREF (26)
...... .
76
Initialize (27) . . . . . . . . . .
78
Figure 1. Logical Flow of Control
....... .
82
Figure 2. Module Directory. . . .
. .. .
83
Figure 3. Main Storage Layout
. . . . . . . . . 84
Figure 4. Edit Phase (IFOXlll Main Storage Work Area.
85
Figure 5. Dictionary Interlude Phase (IFOX21) Main Storage Work
Area: 1 of 3, Process Skeleton Dictionaries . . . . . . .
86
Figure 6. Dictionary Interlude Phase (IFOX21) Main Storage Work
Area: 2 of 3, Build Ordinary Symbol Attribute Reference
87
Dic tionary . . . . . . . . . . . . . . . . . . . . . . . .
Figure 7. Dictionary Interlude Phase (IFOX21) Main Storage Work
Area: 3 of 3, Unchain Opsyn Table . . . . . . . . . . . .
88
Figure 8. Generation Phase (IFOX31) Main Storage Work Area.
89
Figure 9. Symbol Resolution Phase (IFOX41) Main Storage Work
Area . . . . . . . ..... . . . . . . . . .. . . . . • . . . .
90
Figure 10. Assembly Phase (IFOX51) Main Storage Work Area . .
91
Figure 11. Post Processor Phase (IFOX61) Main Storage Work Area . 92
Figure 12. Assembler Data Flow . . . . . . . . .
. .. .
93
Figure 13. SYM Record Format . . . . . . . . . .
. . . . . . 256
Figure 14. Guide to Method of Operation Diagrams . . . .
. . 257
8
Introduction
The OS/VS Assembler is the OS/VS assembler language processor.
It is
a three-pass assembler, with one pass over the source deck for editing,
one pass for macro-generation and symbol resolution, and a third pass
for final assembly.
Purpose and Function
The assembler translates a source program coded in assembler language
into a relocatable machine language object program. The assembler
assigns relative storage locations to instructions and other program
elements and performs auxiliary assembler functions specified by the
programmer. The object modules produced by the assembler are in the
format required by the linkage editor. They can be link-edited with
object modules produced by other language processors.
Compatibility
The language supported by the OS/VS Assembler is compatible with the
language of Assembler F. All programs which assemble error free on
Assembler F will also assemble error free on the OS/VS Assembler.
Because the language supported by the OS/VS Assembler has more capacity than that supported by Assembler F, some attribute values which
are undefined in F will be replaced by the true values. These
extensions and the extended SETC facility might, in odd cases, produce
different results.
Language Supporled
The language supported by the assembler is defined in the publication:
OS!VS and DOS!VS Assembler Language, Order Number GC33-4010.
Environmental Characteristics
SYSTEM CONFIGURATION
The OS/VS Assembler will operate on the minimum system configuration
required for OS/VS.
SYSTEM INTERFACE
All system dependent functions and operations are handled by the
assembler's interface modules. The interface modules are:
IFOXOA
IFOXOB
IFOXOC
IFOXOD
IFOXOE
IFOXOF
IFOXOG
IFOXOH
IFOXOI
Driver routines
Workfile I/O and core management
Master common work area
Assembler initialization
Input common work area
Input I/O module
Outuut common work area
Output I/O module
Abort routines
Introduction
9
PHYSICAL CHARACTERISTICS
The assembler is made up of 16 reentrant load modules which reside on
the link library.
Operational Considerations
INPUT AND OUTPUT
Input to the assembler is source code from SYSIN, SYSLIB, or a private
library. Output is an object module and an optional deck and/or listing.
INPUT
OUTPUT
~
SOURCE
STATEMENTS
SYSGO
OBJECT
MODULE
ASSEMBLER
>
or
( SYSPUNCH
I
SYSLIB
EJ
LISTING
Control Information
As the assembler is a processing program operating under OS/VS, control
information is passed to the operating system by means of job control
statements. The assembler options are specified in the PARM field of
the EXEC job control statement. For and explanation of these options,
see OS/VS Assembler Programmer's Guide, Order Number GC33-4021.
10
Method of Operation
Purpose
The purpose of this section is:
• To give a functional description of the assembler .
• To provide a cross reference from any given description to the
listing and to other parts of the manual.
How this Section is Organized
This section consists of diagrams which are arranged in a hierarchy as
shown in the foldout located at the back of the manual.
With each diagram is an "extended description" which contains
detailed information about the function or subfunction shown in the
diagram.
How to Read the Diagrams and Descriptions
Each diagram is divided into three parts: input, process, and output.
The input part shows the data before it is processed; the process part
shows, in abbreviated form, what is done to the data; and the output
part shows what the data is after it has been processed.
EDIT
INPUT
EDIT
PROCESS
OUTPUT
MOD
RTN
MOD
~
D
1
2
3~
1::
"-
..
~
"
-,
-.. -
--...
~
3~
z:;--
Diagram
~
D
-------==
~
2'
-----
.
------
Extended Description
Data areas are identified on the diagrams in two ways: by main-storage
address and by DSECT name. Data areas as shown on the diagrams are
highly schematic. For complete and accurate data area layouts, see the
section "Data Areas".
Method of Operation 11
RTN
Many of the data areas and routines are mentioned in two or more
diagrams. For a cross-reference of these items to the diagrams in this
section, use the "Directory" section of the manual. The Directory also
cross references the appropriate microfiche card if you wish to go
directly to the listing.
The extended descriptions are keyed by process step to the diagrams
and describe the process in more detail.
In addition, the extended
descriptions give the names of th~ module and routine that perform the
function.
The following symbols are used in the diagrams:
______>
______
>~
Data flow
----~
Data reference
Reference to another diagram
Pointer
Relation of the Diagrams to Program Phases
Since the diagrams are broken down by function of the assembler, they
are not organized exactly like the phases of the assembler.
Below is
a table showing which diagrams cover which phases.
12
Phase
Diag:ram
Initialization
Edit
Dictionary Interlude
Generation
Symbol Resolution
Assembly
Post Processor
Diagnostic
27
3, 4, 5, 6, 7
8, 9, 10
11, 12, 13
15, 16, 17, 18, 19, 20
21, 22, 23, 24, 25
26
21
This page intentionally left blank
Method of Operation 13
Generate Object Code from Source Code
D
PROCESS
;--/1.
Source macros
C J , A s s e m b l e r and
machine instructions
u
• Copy members
I-'
~
Data flow
-- ~
Data reference
~
Pointer
Q
Reference to
another diagram
LEGEND
OUTPUT
SYSPUNCH
Expand macro instructions
and do conditional assembly
CD
Assemble object code from
machine, data, and assembler
instructions
cv
~
U
SYSGOA·object
modulet=J!
SYSPRINT
D.
Listing
Generate Object Code from Source Code (cont.)
o
I--'
lJ1
Input to the assembler is source statements in the
following forms: SYSIN: source macro definitions
and machine and assembler instructions; SYSLlB:
COpy members (which may also contain macro
definitions) and library macro definitions (either
IBM-supplied or installation-written).
Source statements are read and macro instructions
expanded according to their definitions and the
results of the conditional assembly. Conditional
assembly in open code is also performed.
•
When all macro instructions have been expanded
and all conditional assembly performed, the source
statements are assembled into object code. Output
is an object module (either on SY.SGO or SYSPUNCH)
and a listing.
Expand Macro Instructions and Do Conditional Assembly
I
f
INPUT
OUTPUT/INPUT
$YS1N
FILE 1
Text segment
~
1
-------Text segment
-------- ~ ~r~i~i::cro
'di"d ""'~
macros
OUTPUT/INPUT
2
~ O~"=oo
Edited library
-------
Text segment
---~----
1~Open
fiLE 2
macros
Fr=51
--)
~
V
PROCESS
•
Text segment
dictionary
file
::)
I--
Data flow
Pointer
Reference to
another diagram
LEGEND
~
~
Macro defintion
directory
Ord symb.
definition
file
Opsyn table
~
----,/
\
BUILD
GENERATION
DICTIONARIES
...
FILE 3
Data reference
-
FILE 2.
CD
I
I
.J-..
~
~
I
I
PROCESS
I
Ordinary
symbol
attribute
ref. diet.
~
-,
--
.GENERATE
ASSEMBLER AND
MACHINE
INSTRUCTIONS
A
Opsyn
table
~
CV
~~
FILE 1
Skeleton
dictionaries
(one for
each text
segmentl
rV
r--r------'
Generated
statements
OUTPUT
FILE 2
Expand Macro Instructions and Do Conditional Assembly (cont.)
MODULE
o
Source statements are read from SYSIN and SYSLIB.
They are formatted, and expressions are translated
to postfix notation. Positions for symbol values in
in generation -time dictionaries are computed and
pointers to the positions inserted in the records.
IFNX1A
IFNXlJ
IFNX1S
MODULE
-•
The edited records are written on the edited text
file (file I) which is passed to Generate Assembler
and Machine Instructions (Diagram 11).
I--'
~
Another editing function is to collect information
needed to build generation-time dictionaries. The
sizes of the dictionaries ore calculated and in some
cases data is collected to fill them. This information is collected in the text segment dictionary
file and in the macro definition directory (files 2
and 3).
e
Information collected in the text segment
dictionary file and the macro definition directory
is used to build (and in some cases fill) the
dictionaries to be used during generation. The
macro definition vector, which serves as a link
between a macro call, its definition, and the
dictionaries necessary to expand the macro, is also
built.
The edited text file is read and the dictionaries
are used to produce assembler and mach ine
instructions from the macro instructions and
conditional assembly instructions. The output
contains no macros or conditional assembly
statements.
IFNX2A
IFNX3A
Edit
II
INPUT
PROCESS
UTPUT
(MDDSTRT) (FILE 3)
0
-8
Open code
Read statements
DSECT =OPSYNTRY
OPSYN table
Classify by operation code
•
Macro definition directory
Process ICTL, OPSYN, COPY
Edi~ ~am~, opcode, and operand: compute
•
positions
In
see
6
generation-time dictionaries
SYSLIB
(HANDLE ACCORDING TO OPCODE)
Library macro
definitions
EDITED TEXT FILE (FILE 1)
MACRO DEFINITION HEADER
FIRST STATEMENT OPEN CODE
I
Source macro
defintions
I
Copy
members
I
Initialize directories
,I
t-'
00
OPCODE TABLE
I
(FFNX1K)
I
I
I
Make MOD entry
I~- I
System macro definitions
CONDITIONAL ASSEMBLY
STATEMENTS
ASSEMBLER INSTRUCTIONS
MACHINE INSTRUCTIONS
(FILE2)
Text segment header
l3J
Process symbols
~
Translate expressions to post-fix. ~
MACRO
INSTRUCTIONS
Search MOD and make entry if needed
Insert pointer in metatext
~
CV
C9
~
MEND STATEMENT
Close text segment dictionary file
e
Close MOD entry
C9
Edit remarks and strings
~
~
~
~
Text segment(s)
End of segment
Text segment header
Text segment
Write edit record and parameter records
I
Text segment
End of text segment
Text segment header
~
Write records
see
End of segment
ORDINARY SYMBOL DEFINITION FILE (FILE 3)
see
8
Edit (cont.)
MODULE
ROUTINE
(LABEL)
G
Editing consists of converting records into an internal format
suitable for processing; inserting pointers to generationtime dictionaries for variable symbols, sequence symbols,
and ordinary symbol attribute references; and translating
expressions into postfix notation. Each record is split into
"virtual" text (a copy of the input record separated by
fields) and "metatext" (either a pointer to where a symbol's
value will be found at generation time or an expression
translated into postfix notation for generation-time
evaluation). The order of editing is opcode, name, operand,
and remarks and strings.
The variable symbol definition directory, the sequence
symbol reference directory, the ordinary symbol attribute reference directory, and the text segment directory
. file are initialized (see Diagram 5).
IFNX1A
tions). Edit scans past the name field to the opcode
•
The opcode is checked against the OPSYN and
. OPC ODE tables. Errors in opcode or a statement's
position in the source file cause error messages to be
generated. If the opcode is a variable symbol, the
statement is processed as a machine instruction (see
below).
ICTL, OPSYN, and COPY statements are processed
(see Diagram 4).
TBLOPS
IFNX1A
IFNXlJ
IFNX1A
IFNXlJ
MACRO
(MAC RENT}
STMTSEQ
(OPENENT)
•
Make MDD Entry (see Diagram 6).
IFNX1A
PROTOIN
•
Variable symbols (positioned and keyword parameters)
in the operand are processed (see Diagram 5).
IFNX1A
IFNX1J
VARSYM
(VARSYMD)
•
The prototype record is then wri tten on the edi ted
text file. Also, one parameter record is written for
each keyword parameter followed by an "end of all
parameters" record.
IFNX1A
NEXTPM
VARSYMD
VARSYMR
SEQSYMBD
SEQSYMBR
CRDSYMBR
READNEXT
(RDSRC)
(GSCAN)
field (but saves the name field). If the statement is
a comment, the complete record is written immediately.
•
IFNX1A
IMacro Definition Prototype I
~
Statements are read from SYSIN or from SYSLIB (in
the case of COpy code and library macro defini-
ROUTINE
(LABEL)
Macro Definition Header
First Statement of Open Code
I-'
o
The statements are handled according to their
opcode:
MODULE
Conditional Assembly Statements
Assembler Instructions
Machine Instructions
IFNX1A
IFNXlJ
TBLOPS
(OPERCODE)
•
Variable symbols, sequence symbols, and ordinary
symbol attributes are processed (see Diagram 5).
IFNXlJ
IFNX1A
TBLOPS
(lCTL)
(OPSYN)
(COPY)
•
Expressions are translated into postfix notation
(see Diagram 7).
IFNX1S
•
Edit records are written on the edited text file.
EDIT (cont.)
MODULE
IMacro Instructions
N
o
MODULE
ROUTINE
(LABEL)
ROUTINE
(LABEL)
IMEND Statement I
•
Process according to Diagram 6.
IFNX1A
MCALLIN
•
lhe record is put to the edited text file; also one parameter record for each parameter specified is written on
the edited text file. Each ordinary symbol used as a
parameter causes an ordinary symbol attribute reference
to be logged (see Diagram 5). If a positional parameter
is omitted, an "omitted parameter" record is written on
the edited text file. An "end of all parameters" record
follows the parameter records.
IFNX1A
IFNXlJ
NEXTPARM
(ORDSYMBR)
•
•
The text segment dictionary file is closed.
•
The MDD entry for the text segment is closed (see
Diagram 6).
The rest of the record (remarks and strings) is edited.
IFNX1A
IFNXlJ
MEND
(MACREND)
IFNX1A
WRAPFLD
~
~
co
..--l
.Q
+J
4-1
Q)
..--l
!>1
..--l
..--l
co
~
0
.r-!
+J
~
Q)
+J
~
'r-!
Q)
01
CO
0.,
Ul
.r-!
..c
E-t
21
Process ICTL, COPY, and OPSYN
II
OUTPUT
IMDDSTRT)
OI'SYN TABLE
J-~;-----l===::;t'-c-:--~-.::::=;)1 ~
I
(FItE 3)
DSECT ~
OPSYNTRY
Change begin, end, and continue
columns for source input
Make entry in opsyn table
OPSYN TABLE
Properties
of old
"delete"
Opcode
EDITED TEXT fl LE
N
N
1. Save present position in source input file
or SYSLIB in COpy nest stack
Icn
OPSYN
COpy
D
Copy
switch
status
IN/P
of discontinued
text
2. Reposition edit input to member
from system library
3. At end of member reposition to
interrupted text
=:)
Doto flow
---~
Data reference
~
Pointer
v
Reference to
another diagram
LEGEND
Up to 5
levels
(edited form)
(edited form)
(edited form)
(F IL€ I}
DSECT" JTEXT
Process ICTL, COPY, and OPSYN (cont.)
MODULE
ROUTI NE
(LABEL)
IFNX1A
Icn
[!ill]
An ICTL statement changes the beginning, end, and
continue columns for source input. The (edited) ICTL
record is put on the edited text fi Ie.
l\.)
w
I
For every valid OPSYN an entry is made in the OPSYN
table. Entries may be two forms: either the user wants
to give a standard opcode a duplicate name and keep
both opcode names as valid; or he wants to replace
a standard opcode name with one of his own and wants
the standard name to be invalid. The two types of
entries are shown in the table. The OPSYN table is
IFNX1A
IFNXlJ
OPSYN
OPSYNBID
ROUTINE
(LABEL)
IFNX1A
IFNX1A
IFNX1A
COpy
CSTKENT
CSTKEXT
complete when a statement other than ICTL, OPSYN,
print control, or comments is read. The (edited) OPSYN
statements are written on the edited text fi Ie. The
OPSYN table is built and kept in core during editing;
it is then written onto file 3.
leopy
IOPSYN
MODULE
I
Up to five levels of COPY nesting are allowed. When
a COpy statement is encountered, the present position
in the source input file (or in the system library) is
saved in the COpy nest stack. Each entry in the stack
consists of the copy level status switch and the NIP
address of the discontinued text. The input is repositio ned to edit the copy member from SYSLIB. At the end
of the member, the input is repositioned to the interrupted location. The (edited) COPY statement itself
is written on the edited text fi Ie.
Process Symbols
PROCESS
OUTPUT
DSECT=VSDENTRY
system variable symbols
I
&A loffset
LCLA
&.
Ir===7
I '~UI
A
Local Definition
Compute offset in generation-time dictionary
Log symbol and offset; insert offset in metatext,,' (--1')
Local Reference
,,' I ~
AIF
Find symbol and insert offset in metatext
Global Definition
GBLC &. G - _.........&..''\. 1.Calculate offset in global vector
2. Log symbol and offset; insert offset in metatext
3.Enter global definition
~
record
~
Global
Reference
AIF (& G EQ 'FF').X
Find symbol and insert offset in metatext
_____....·L'\. Macro Parameters (from Prototype)
MAC! &X
Compute offset in parameter vector;
log symbol and offset
Macro Parameter Reference
AR
3, & X
Find parameter and insert offset in metatext
N
~
~:
&~ffset_
..
glebal
OSteT"
GBLDEf
DSECT=SSDIR
SEQUENCE SYMBOL REFERENCE DIRECTORY
I
I
.X
I~:-I
(max. 10 entries)
I
.X
ANOP
AGO
SAM
ABC
~
SR
OS
'.'
MVC
L' ABC ....
F
I
Reference
/ "
1. Search for symbol. If found, insert offset in metatext, I
2. Not found, compute offset in sequ~nce symbol refl'!rence dictionary,
enter symbol and offset. Enter offset In metatext.
Enter sequence symbol reference record
(OSRDSTRT)
~
I ORDINARY SYMBOL I
ORDINARY SYMBOL ATTRIBUTE REFERENCE
X
,
DIRECTORY
0";";';0"
Copy record
8=>
Attribute Reference
&G
definltian
I SEQUENCE SYMBOL!
DefinItion
Enter definition record~
c:;;;:Toff-1
~
It
II
(max. 10 entries)
.
Process Symbols (cont.)
N
U1
To edit statements containing symbols, it is necessary to:
Symbols are processed according to type:
•
IVARIABLE SYMBOL
Compute the positions in generation-time dictionaries
of variable symbols (including macro parameters),
sequence symbols, and ordinary symbols with attribute
references.
'
MODULE
I
Local Definition
Insert the offset of the symbol value (in the dictionary)
in the record's metatext.
1. The offset of the symbol's value in the generationtime local dictionary is computed from the symbol
type and specified dimension.
IFNXlJ
•
•
Construct the text segment dictionary file, from which
the generation-time dictionaries and vectors are
built later.
2. The symbol and its offset are then entered in the
variable symbol definition directory; the offset is
entered in the metatext of the edit record.
IFNXlJ
Note: Only symbols needed for macro expansion and
conditional assembly (variable symbols, sequence
symbols, and ordinary symbols with attribute references) are processed at this stage. See Diagram 15
for processing of ordinary symbols for assembly.
Loca I Reference
Three internal work areas are used: The variable symbol
definition directory serves to keep track of which variable
symbols have been defined. It contains system variable
symbols, local and global variable symbols (and their offsets in generation-time di ctionaries), and macro parameters (with their offsets in the macro parameter vector).
The sequence symbol reference directory keeps track of
references to sequence symbols and where their definition positions will be in the generation-time dictionary.
The ordinary symbol attribute directory serves an exactly
analogous role for ordinary symbols whose attributes
have been referenced.
ROUTINE
(lABEL)
The symbol is found in the variable symbol definition
directory and its offset inserted in the edit record's
metatext.
IFNXlJ
VARSYMBD
(VSLOOKUP)
VARSYMBR
(VSLOOKUP)
Global Definition
1. The offset of the symbol's pointer in the global vector
is calculated (each entry in the global vector is
three bytes long).
IFNX1J
VARSYMBR
(VSLOOKUP)
2. The global vector offset is then entered in the record's IFNXlJ
metatext.
3. A global definition record (consisting of the symbol, its
dimension, type, and offset in the global vector) is
written on the text segment dictionary file.
Global Reference
Note: Both the sequence symbol reference dictionary
and the ordinary attribute, reference di ctionary contain only 10 entries at a time; thus a given symbol
may appear more than once in the corresponding
dictionary.
The symbol is found in the variable symbol definition
directory and its offset in the global vector inserted in
the meta text •
IFNXlJ
VARSYMBR
VSLOOKUP)
PROCESS SYMBOLS (cont.)
MODULE
MODULE
ROUTINE
(LABEL)
Macro Parameters (from Prototype)
The symbol's offset in the generation-time parameter vector
(see Diagram i2) is computed. The symbol and its vector
offset are logged in the variable symbol definition directory
and the offset i nser.ted in the parameter record metatext.
2. If not found, (a) the symbol's offset in the sequence symbol
I FNX1 J
reference dictionary is computed and the symbol and its
offset entered in the sequence symbol reference directory;
(b) the offset is entered in the record metatext; (c) a sequence
symbol reference record is written on the text segment
dictionary fi Ie.
IFNXlJ
Macro Parameter Reference
The symbol is found in the variable symbol definition
directory and its parameter vector offset placed in the
edit record's metatext.
IO-RDI NARY SYMBOLI
IFNXlJ
Definition
The record is copied onto the ordinary symbol definition file.
ISEQUENCE SYMBOLI
I\)
~
Attribute Reference
Definition
A sequence symbol definition record (with NIP v~lue of
edit record) is written on the text segment dictionary fi Ie.
IFNXlJ
SEQSYMBD
IFNX1J
SEQSYMBR
1.
The ordinary symbol attribute reference directory
is searched. If the symbol is found, its offset in
ordinary symbol attribute reference dictionary is inserted in the record's metatext.
2.
If the symbol is 'not found, its offset in the ordinary
symbol attribute reference dictionary is computed and
the symbol and offset entered in the ordinary symbol
attribute reference directory. The offset is entered
into the record's m etatext. An "ordinary symbol
attribute reference record" is written on the text segment dictionary file.
I
Reference
1. The sequence symbol reference directory (first 10
entries) is searched. If the definition is found, its offset
(in the sequence symbol reference dictionary) is inserted
in the record's metatext.
ROUTINE
(LABEL)
IFNX1J
ORDSYMBR
Ul
.r-t
..c:
8
27
Process Macros and Build Macro Definition Directory
Make MOO entry (with MOV offset and NIP address)
(if entry has not been made as ~'macro instruction")
~
1. Mark MOO entry "edited"
2. Enter sizes of global vector, sequence symbol
reference dictionary, and local
dictionary~
1. Search MOO - - - - - - - - 2. If found, insert MOV offset in
metatext
tv
OJ
C0====>
3. If not found, make MOO entry, insert MOV
offset in metatext, mark "not edited"
IEND OF FILE ON SYSIN/LiBRARY MACROS I
1. At EOF on SYSIN search MACLIB for MOD
entries marked "not edited"
2. Not found, mark entry "undefined ~
opcode"
~
Data flow
Data reference
Pointer
Ref erence to
(Jnother diagram
Process Macros and Build Macro Definition Directory (cont.)
MODULE
ROUTINE
(LABEL)
Macro prototypes, macro instructions, end-of-fi Ie on
SYSI N, and MEND all cause entries to be made in the
MDD.
IMACRO PROTOTYPE}
\!)
•
•
The MDD is searched for a corresponding entry.
2.
The sizes of the global vector, the sequence symbol
reference dictiona'ry, and the local dictionary for
the text segment are placed in the entry.
When a macro instruction is encountered
(either within a macro definition
code), the MDD is searched for a corresponding entry.
IFNX1J
MACRNAME
2.
If found, the MDV offset is inserted in the metatext of the macro instruction's edit record.
IFNXlJ
MSCANA
3.
If it is not found, the macro name and the next
calculated MDV offset are entered in a MDD entry
for the macro. Its MDV offset is inserted in the
metatext. The MDD entry is marked "not edited".
IFNXlJ
MACENTRY
I END OF FI LE on SYSI N (Librarz: Macros) I
If found, the NIP address on the edit text fi leis
IFNXlJ
added to the MDD entry. If not found, the macro
name, its calculated offset in the MDV, and its Nip
address on the edited text file are entered in the
MDD.
At the end of a macro definition (either source
or library) the MDD entry is marked "edited".
1.
I
MACRENT
IME N D Statement I
l.
ROUTINE
(LABEL)
IMACRO Instructionl
The macro definition directory (MDD) serves roughly the
same function for macros as the variable symbol definition
directory does for variable symbols: it keeps track of which
macros have been defined and helps in assigning pointers
to their generation-time definitions. Information from the
MDD is later used to bui Id the macro definition vector
(MDV) (see Diagram 10).
t\J
MODULE
IFNXlJ
MACREND
COMNEND
l.
At EOF on SYSI N each entry in the MDD marked
"not edited" is found. These entries are either
library macros or undefined opcodes. SYSLIB is
searched for corresponding entries.
IFNX1A
IFNX1J
IFNX1J
IFNX1A
IFNXlJ
NEOFRTN
OPEN END
COMNEND
ESYSMAC
EDITSYSM
2.
If not found, the MDD entry is marked "undefined
opcode".
IFNXlJ
MACREND
3.
If the macro is found on SYSLI B, the prototype is
edited as above and its NIP address on the edited
text file placed in the MDD entry (the entry will
be eventually marked "edited" by the MEND
statement processi ng).
IFNX1J
MACREND
Convert Expressions to Postfix Notation
D
INPUT
Ooerand of
SETx or AIF
statement
PROCESS
--:>1:
e
Scan expression
Pass tenns directly to metatext
Send operators to postfixer. Move to
metatext as binding factor dictates
OUTPUT
------.:>
Expression in postfix notation
MACRO
w
o
THIS META TEXT
MACI
& PARM 1 , &PARM2,&PARM3
LCLA
&X,&Y,&Z,&A
LCLB
&~,&N,&B
lClC
&Q,&C(SO}
&A
SETA
5
&B
SETB
i§
'\::01
THIS EXPRESSION
AIF
. LABEL
ANOP
MEND
::::I"~':""" """""""""""""""}~i:;::!~~~s~:~J:~':';':'>""""""""""""""""""""""",::,,',"':':':}""'::'::}}}}}":'{""
I
AND &A*&B+l LT &PARM2} .LABEL
GIVES
--->
'iiil
E0029
~!.-: ~32
:L 000019
t 0000
m: 17
""; 01
': OE
~'22
::000019
;'0000
~:24
r'
:::~
",:::/.
end character mode
:~:~tc~:rl:::: ::i~a~
~~~;nsion
for &C
of &C
offset in local dictionary for &A
0 (&A undimensioned)
dimension operator ( )
end character mode
EQ operator
setA
offset in local dictionary for &A
0 (&A undimensioned)
setB
1,:~:~1 F
~f~~~ ~~~~~~~s~:t~~ary for
:/08
*<>perator
self-defining term
1 (value of self-defining term)
ii2C
~tOOOOOOOl
I
&8
~ ~f~~;:~~~rom.". ."~ f~ &PA~ ~
L ff~~'~~;r~~&~f' d;".J
Convert Expressions to Postfix Notation (cont.)
MODULE
MODULE
ROUTINE
(LABEL)
7
Expressions are translated into postfix notation (also called
reverse Polish notation). This is a form easier for the
assembler to interpret during generation.
o
8
9
10
•
•
IFNX1A
Expressions are scanned
Elements (that is, non-operators) are assigned identifiers
are are inserted immediately into the metatext. VariIFNX1J
able symbols are processed as described in Diagram 5
and dictionary pointers entered.
W
o
1
2
3
4
5
6
GT, GE, LT, LE, EQ, NE
NOT
AND
OR
), END CHARACTER MODE, COMMA
(, START CHARACTER MODE
STATEMENT TERMINATOR
The first operator encountered is always entered in the stack.
For all other operators, the operator's binding factor value
is compared with that of the last operator entered into the
stack. If the value being compared is lower than that of the
last operator in the stack, the operator is placed in the stack.
If the value being compared is higher than or equal to that of
the last operator in the stack, the operator is removed from the
stack and placed in the metatext. The value is then compared
with the next element in the stack and so forth.
Operators are sent to the postfix routine, where they are IFNX1S
put into a stack according to their "binding factor".
This is a value assigned to each operator: the lower the
binding factor, the earlier the operator is inserted into
the metatext. Operators are assigned the following
binding factors:
I--'
11
12
13
META SCAN
ROUTINE
(LABEL)
DIMENSION OPERATOR
STRI NG OPERATOR
DUPLICATION OPERATOR
PERIOD (CONCATENATION)
UNARY PLUS AND MI NUS, TYPE, LENGTH,
SCALE, INTEGER, COUNT AND NUMBER
ATTRIBUTES
MULTIPLY, DIVIDE
ADD, SUBTRACT
"Start character mode" and "end character mode" operators
are placed immediately into the metatext, bypassing the
stack. When the end of the expression is reached, the edit
phase passes an "expression end" operator to the stack.
This operator has avery high binding factor and forces the
remaining operators in the stack into the metatext. The
"expression end" operator is placed last in the metatext to
serve as a term inator.
Processi.ng of the expression shown on Diagram 7 proceeds as follows:
('ABC'
1
EQ
2
'&C (&\)'
3
4
AND
5
&A*&B + 1 LT &PARM2). LABEL
678 9 10 11
12 13
METATEXT
ABC is placed immediately in
meta text
ABC
2
EQ is entered in the operator stack
ABC
3
&C&A placed in metatext
ABC&C&A
4 0 ' s binding factor compared to EQ's
binding factor; () is put in the stack
ABC&C&A
5
AND's binding factor> O's binding
factor. AND replaces 0 in stack;
goes to metatext. AND also
replaces EQ in the stack; EQ goes
to metatext.
ABC&C&A () EQ
&A goes to meta text
ABC&C&A 0 EQ&A
7
OPERATOR
STACK
UgJ
lE9J
lkJ
EQ
IANDI
*'s binding factor < AND's binding
factor. Enter'" in stack
ABC&C&A 0 EQ&A
8
&B goes to metatext
ABC&C&A 0 EQ&A&B
9
+'s binding factor> * 's binding
factor. * goes to metatext, + into
stack. +'s binding factor +'s binding
factor. + out, LT in. LT's binding
factor < AN D's; no change
ABC&C&A 0 EQ&A&B* 1+
12
&PARM2 into metatext
ABC&C&A () EQ&A&B*1+PARM2
13
END empties stack
ABC&C&A 0 EQ&A&B* 1+PARM2LTANDEND
o
6
ABC&C&A 0 EQ&A&B*
IA~DI
I LT I
lM!QJ
I
LT
I
~
Build Generation-Time Dictionaries
PROCESS
INPUT
ORDINARY SYMBOL
("'NIlION FILE ~IL")
OUTPUT
~
TEXT SEGMENT
,DICTIONARY filE (FILE 2)
ORDINARY SYMBOL
ATTRIBUTE REFERENCE
DICTIONARY (FILE 1)
CD
O
Build ordinary symbol attribute
reference dictionary
A
V
Build skeleton dictionaries and compute
size and layout of global dictionary
~
•
OSEe! '"
OSRTNTRY
SKELETON DICTIONARIES
DSECT =
SKDCTHD
Convert macro definition directory to
macro definition vector
.
(FILE I)
~
MACRO DEFINITION VECTOR (FILE 1)
W
tv
oseCT '"
MDVNTRY
OPSYN TABLE (generation formal) (FIL£, 2
(unchained entries)
Data flow
'---~
Data reference
---7
Pointer
Q
Reference to
another diagram
UGENo
DSEC! '"
0l'5T8L
Build Generation-Time Dictionaries (cont.)
Selected information collected during editing is used to set up
the dictionaries for use during generation.
MODULE
•
•
LV
LV
The ordinary symbol attribute reference dictionary
is bui It by matching entries in the ordinary symbol
definition file with corresponding entr ies in the
text segment di cti onary file (see Diagram 9).
Skeleton dictionaries are set up for each text segment. Because each skeleton dictionary contains
a global vector pointing to entries in a common
(for all text segments) global dictionary, it is
necessary to set up the global dictionary at the same
time. See Diagram 10.
IFNX2A
IFNX2A
ROUTINE
(lABEL)
ORDREF
ORDSYMBR
SEQREF
SEQDEF
GBLDEF
•
•
MODULE
Information in the macro definition directory is
split at this point. Part goes to the skeleton dictionary
headers, and part goes to make up the macro
definition vector. See Diagram 10.
IFNX2A
The OPSYN table is passed on for generation.
Entries are unchained and the size and location
of the table saved in COMMON.
IFNX2A
ROUTINE
(lABEL)
ENDSEGB
OPSYNBLD
PUTOPSYN
Build Ordinary Symbol Attribute Reference Dictionary
ORO INARY SYMBOL ATTRIBUTE
REFERENCE DICTIONARY
{FILE 2)
e
Scan text segment dictionary file for
ordinary symbol attribute references
8
Build ordinary symbol attribute reference
tc:.ble
DSECT '"
OSRDNTRY
scale I default
ORDINARY SYMBOL ATTRIBUTE
REFERENCE TABLE
e
w
~
O
=>
Data flow
---~
Data reference
-----+
Pointer
Q
Reference to
another diagram
LEGEND
Read ordinary symbol definition file
Get pointer to corresponding entry in
~
ordinary symbol attribute reference dictionary'
Build Ordinary Symbol Attribute Reference Dictionary (cont.)
MODULE
ROUTINE
(LABEL)
Attributes of ordinary symbols are collected and placed
in a dictionary to be used at generation.
•
The text segment dictionary file is scanned and type
"OC" (ordinary symbol attribute required) records
read •
•
The symbol is hashed and inserted in the ordinary
symbol reference table, along with a pointer to
its eventual position in the ordinary symbol attribute reference dictionary. Entries in the table
are chained.
•
W
lJ1
When all the "OC" records for a given text segment are read, the ordinary symbol definition fi Ie
containing the definition records for all ordinary
symbols, is read.
IFNX2A
ORDREF
IFNX2A
HASH
IFNX2A
ORDSYMBR
•
•
MODULE ROUTINE
(LABEL)
The symbol from the ordinary symbol definition
fi Ie is hashed and the ordinary symbol attribute
reference table searched for a corresponding entry.
If found (that is, if attributes are required), the
symbol's position in the ordinary symbol attribute
reference dictionary is obtained.
IFNX2A
The opcode and operand are then scanned to determine,
determine the attributes, which are inserted in the
dictionary at the positions given by the symbol's
hash-table chain. Pointers to dictionary locations
I FNX2A
have already been placed in the metatext of edit
records that require them (see Diagram 5). Note
that one symbol may have several identical entries
in the ordinary symbol attribute reference dictionary
because of the lO-entry limitation of the edit-time
ordinary symbol attribute reference directory.
HASH
OSLUKUP
BRONTYP
Build Skeleton Dictionary and Macro Definition Vector
GLOBAL DEFINITION
1. Search for global definitions ..
DIRECTORY (GDSTRT)
2. Compute global dictionary position,
i
make global directory entry ~
3. insert dictionary pointer in
~
global vector
I~~:~o goa
o
HEADER
DSECT = GDNTRY
o ptr. to seq.sym.ref.dict
o ptr. to local diet.
o length local diet.
i
>!.n!!!a~m~e"-,",,d<.Cic,..,..-/L"~_L.-_ _-,
I BUILD SEQUENCE SYMBOL REFERENCE DICTIONARY I
1. Scan 1: Make entries for ,sequence'
(one directory for all
symbol definitions
~ text se ments)
2. Scan 2: Make sequence
sym!><> I ref. dictionaryfB\
entries
\::..J
SEQUENCE SYMBOL
DEFINITION TABLE (SSDTSTRT) DSECT = SSDTNTRY
SEQUENCE SYMBOL REFERENCE
DICTIONARY
w
m
I MAKE SKELETON DIcTIONARY HEADE~
~
(one table for each
text segment)
11/
1. Insert pointer to sequence symbol
~
reference dictionary
2. Insert local dictionary pointer
and length
IMAKEMACRO DEFINITION VECTOR ENTRY]
1. Get offset into macro definition vector from
macro definition directory for this macr~
Enter text file NIP and skeleton
~
diction.ary location and size at that offset
text file NIP}
skel diet N7p
1st macro
skel.dict.size
}
I
J
2nd macro
1
1
':"
,
Build Skeleton Dictionary and Macro Definition Vector (cont.)
A skeleton dictionary for a text segment consists of a header, a global vector, and a
sequence symbol reference dictionary.
I
I
BUILD GLOBAL VECTOR
There is a global vector for each text segment. The relationship among global symbols,
global vectors, and the global dictionary is shown below:
Global vector for segment I
Edited text for segment I
I ~\ I ~:~
I -5}- I X '3' I &B I Z I. X'9
X '6
'I--V:j6-rlX~'6:-:-,1
1&-c-'-I-5"""""'S-I
'--75 I x'o' I
~
W
-.....J
Metatext
&A
~
Vi rtua I text
n_
"*
5$
I X '0' I &C
X'O'
X'9'
X'9'
X'12'
X'I2'
X'IB'
X '24'
&A*
&B*
&C*
&D*
D
Global vector for segment 2
Edited text for segment 2
I
Global Dictionary
X'O'
55
)}
I X '3' I
&A
I 55
55
I X '6' I
&D
I 55
X '0'
X'3'
X'6'
X "IB'
[J
The symbol itself does not appear in the dictionary. It is shown here only to indicate
which locations are assigned to which symbols. &A, &B, &C and &D are assumed in this
example to be GBLC variables, each of which takes up 9 bytes in the global dictionary.
(If the symbols are longer than 9 bytes, a dictionary extension is used.)
IFNX2A
GBLDEF
(GSHASHER)
IFNX2A
GBLDEF
IFNX2A
SEQDEF
(SSHASHER)
2. For each new definition (that is, one not defined in
a previous text segment) a position in the global
dictionary is computed and the symbol with its position entered in the global definition directory (an
in-core work area). The global definition directory
is used to keep track of which global symbols have
previously been defined and thus to insure that the
global dictionary contains only one entry per symbol.
The entries are accumulated from ~ text segments •
3. The global vector offset for this symbol is obtained
from the definition record. At that offset in the
global vector an entry is made giving the position
in the global dictionary.
IBUILD SEQUENCE
SYMBOL REFERENCE DICTIONARY
I
-
X '9
ROUTINE
(LABEL)
(global symbol definition) records.
Two passes over the text segment dictionary file are
needed to build the sequence symbol reference dictionary.
X'I2'
X'O'
1. The text segment dictionary file is read for type "00"
MODULE
I. On the first pass, the file is scanned for type "04"
(sequence symbol definition) reccrds. An entry for
each such record is made in the sequence symbol
definition table (an in-core work area).
2. On the second pass, type "08" records are read to
obtain the offset in the sequence symbol reference
di cti onary for each sequence symbol that has been
referenced. The NIP address of the symbol definition
is then inserted, at the offset given in the type "08"
record, in the sequence symbol reference dictionary.
Note that only sequence symbols which are referenced
are entered in the dictionary.
BUILD SKELETON DICTIONARY AND MACRO DEFINITION VECTOR (cont.)
MODULE
IMAKE SKELETON DICTIONARY HEADER ENTRIES
ROUTINE
(LABEL)
I
The skeleton dictionary header contains a pointer to the
sequence symbol ref~rence dictionary and a pointer to,
and the size of, the local dictionary.
IFNX2A
ENDSEGB
MODULE
IBUILD MACRO DEFINITI6N VECTOR
I
The macro definition vector (MDV) contains entries (one
for each macro) consisting of the text file NIP address
of the macro definition, the text fi Ie NIP address of the
skeleton dictionary for that segment, and the size of the
skeleton dictionary.
1. The pointer to the sequence symbol reference
dictionary for the text segment is taken from the MDD
and inserted in the skeleton dictionary header.
2. The size and location of the local dictionary for the
text segment are also placed in the header.
w
ex>
1. The offset in the MDV for the macro is obtained from
the MDD.
2. The NIP address of the macro definition, the NiP
address of the local dictionary, and the size of the
local dictionary are entered in the MDV.
IFNX2A
ROUTINE
(LABEL)
ENDSEGB
~
~
rcl
..--{
..0
.j..J
4-1
OJ
..--{
~
..--{
..--{
rcl
~
0
•.-1
.j..J
~
OJ
.j..J
~
•.-1
OJ
b'l
rcl
~
U)
•.-1
..c:
8
39
Generate Assembler and Machine Instructions
INPUT
-t
DlCnONAlUES
I
PROCESS
(fILES 1 cnd 2)
,
o
OUTPUT/INPUT
SKELETON DICT.
FOR OPEN CODE
(IN MAIN
STORAGE)
Initialize dictionaries
GLOBAL
DICTIONARY
,EDITED TEXT FILE
ORDINARY SYMBOL
ATTRIBUTE REF.
DICTIONARY
(FILE 1)
A
Macro definition
Macro instruction
V
OUTPUT
(fILE 3)
(for each text segment)
Build parameter table
and initialize skeleton
dictionary
cv
OPSYN TABLE
PROCESS
ASSEMBLER AND
MACHINE
INSTRUCTIO NS
PARAMETER TABLE
(FOR TEXT SEGMENT)
A
V
.f;>
Do conditional
assembly and
substi tuti on
o
SKELETON DICTIONARY
(FOR TEXT SEGMENT)
~
••
•
Skeleton dictionary
for text segment 1
Skel. dict. text seg. 2
=>
Data flow
---)
Data reference
-----7
Pointer
Q
Reference to
another diagram
Generate Assembler and Machine Instructions (cont.)
o
•
~
I--'
MODULE
The macro definition, the ordinary symbol
attribute reference dictionary, and the OPSYN
table are read into main storage from fi Ie 2.
The length of the global dictionary is retrieved
from COMMON and it is initialized. The
skeleton dictionary for open code is read from
file 1. The local dictionary for open code is
initialized.
As macro instructions are encountered, the pointer
to the corresponding entry in the MDV is retrieved.
The MDV entries consist of NIP addresses of the
macro definition and of the skeleton dictionary for
the text segment. Parts of the parameter table are
built. The text file is repositioned to the macro
definition.
ROUTINE
(LABEL)
The parameter table for the text segment is then
built. This table contains values for both positional
and keyword parameters. (See Diagram 12.)
IFNX3N
IFNX3N
MODULE
ROUTINE
(LABEL)
IFNX3N
PROTOKWD
IFNX3N
PROTOEND
PHASENTR
MACRCALL
MACRPOST
MACRKWRD
CALLEND
•
The skeleton dictionary for the text segment is then
read into main storage from file 1. Everything is
now ready for expanding the macro instruction and
performing the conditional assembly •
Macro definition (or conditional assembly) records
from the edited text fi Ie are read and their pointers
I FNX3A
to dictionary entries used to fill and reference
dictionaries. Expressions are evaluated and subI FNX3N
stitution performed. See Diagram 13. The output from this function is source statements free from
macro instructions or conditional assembly statements.
Build Parameter Table and Initialize Skeleton Dictionary
III
I
ADD A,B,Z = 3
each macro instruction
A
Enter parameters in
parameter table
B
Z=3
Make positional vector
.j:>.
N
paramo table for
Kwords from definition.
If not found, enter default
SKELETON DICTIONARY
(CURRDICT)
e
Skeleton
dictionary
.
Make keyword vector entries
for keyword parameters
Header
Global vector
(CURRGLBL)
r~~~r~~~e dSi~~bOI
(CU R RSEQS)
Local dictionary
(CURRLOCL)
Build Parameter Table and Initialize Skeleton Dictionary (cont.)
MODULE
o
•
•
•
.I:>.
W
ROUTINE
(LABEL)
MODULE
The edit file is read.
For each macro instruction encountered, entries are IFNX3N
made in the parameter table for each parameter record
following the macro instruction. Keyword parameter
values are chained.
An entry is made in the positional vector for every
I FNX3N
positional parameter entered in the parameter table.
The entries in the positional vector are addresses
of the parameter value in the parameter table.
MACRKWRD
MACRPOST
The text fi Ie is repositioned (using pointers to and
from the MDV) to read the macro definition.
The parameter table is searched (via the chained
CALLEND
PROTOKWD
IFNX3N
MACRPOST
ROUTINE
(LABEL)
keyword entries) for keyword entries corresponding
to the keyword parameter records in the definition.
If they are not found, the default value is entered
in the parameter table •
•
Entries are made in the keyword vector in the same
way as for the positional vector.
O
IFNX3N
PROTOKWD
The MDV also contains the NIP address of the
I FNX3N
skeleton dictionary for the text segment. This dictionary is read into main storage and the local dictionary
initialized.
PROTOEND
Do Conditional Assembly and Substitution
1m
Ir··
..
PROCESS
INPUT
1\ •. . EOJT!EXT FILE
L\
I
I
!
I
I
Local SETA ref.
28 I ptr. to °
local dlct.
t::J
Isl;lbscriptl
dlmen.
LOCAl DICTIONARY (CURRLOCl)·
Global SETB ref.
ptr. to
.lsubscriPtl
25 global vector dimen.
I
Global SETC ref.
............ ,
.27 I! ptr. to
.1 subscript!
global vector dim.
GL08AL
VECTOR
(CUltItGlal)
Self-defined term
1 2C I value
,
I
padding
GLOBAL DICTIONARY (G05TRT)"
~
"":i
l
v
Process according to type
Type
Processing
12E ,.
r:rii;t~
Evaluate expressions
Store [new] value in or
global dictionaries
ANOP
Process next statement
ACTR
Evaluate expression
Evaluate expression
~
~
I
Go to address given in
seq. symb. ref. dict.
False:
Read next record
GENERATED tEXT RECORDS (FILE 2)
, string
.
I
KEYWORD
VECTOR
(CURRKEYD)
I kword
ptr. to
rr~boperan
vector number
l
_k-'l
PARAMETER TARLE (CURRPAItM)
~
Positional paramo ref
ptr. to
32 pOSe vector rUboperan4
number
I
.....
Branch to address specifiec
in seq. symb. ref. dict.
AGO
Keyword paramo ref.
32
SETA
SETB
SETe
AIF
Character string
"'"'""
..
\.
l
...
II
OUTPUT
Retrieve value
from parameter
table or dictionary
Obtain dictionary
pointer from metatext;
Variable
build new record with
~mbol
substituted value. Check
substitution substituted operators
Variable
symbol
reference
.
=>
...
l
.....
Ordinary symb. attr. ref.
28 o.s.a.
ptr. to
dict.
. pa ddomg
I
I'
t
I
l
Seauence symbol ref.
~
ptr.ref.
to diet. pa ddomg
2A s.s.
I
)
Ii~'
~ .•.
.1
~IT~~!
~
SETA
SETS
SETe
ORDINARY SVMaDL ATTRIBUTE
REfERENCE DICTIONARY (OSRDSTRT)
r •.
Ii
I·····
..;~
system global
variables
I::iystem local
variables
........
...
"DSECT, '"
Ie. "OOENCESYMlI. REF, DICT, (CO"''''')
~...
....
VECTOR
(CURRPOST)
SETANTRY
SETBNTRY
SETC NT RY
..
GSYSVALS
LSYSVALS
=>
--
- -)
.
..
----'>
Q
..
....
Data flow
.:
Data reference
!>
......
..
..
Pointer
Reference to
another diagram
.....
I
lEGfND
. ....~
.
Do Conditional Assembly and Substitution (cont.)
MODULE
When a macro instruction or conditional assembly statements are encountered, it is necessary to do substitution
for variable symbols and to perform the conditional
assembly. In the case of a macro instruction, the input
file is repositioned to the macro definition. Values of
variable ~ymb.)ls are computed (in the case of expressions)
from SETx statements and inserted in their dictionaries
according to the dictionary pointers. These values can
then be used either in substitution or in conditional
assembly.
ROUTINE
(LABEL)
MODULE
ROUT!NE
(LABEL)
IFNX3A
IFNX3N
MAIF
EVAL
GENSTRNG
RESOLVE
GBLDICTR
LCLDICTR
PARMTBLR
ORDSYMBR
SEQSYMBR
IAGol
IFNX3A
MBRANCHl
The text file is repositioned to the address given in the
sequence symbol reference dictionary for the sequence
symbol •
IFNX3N
SEQSYMBR
IFNX3N
PARMTBLR
~
IFNX3A
The expression is evaluated. If truei the text file is
repositioned to the NIP address given in the sequence
symbol reference dictionary for the sequence symbol.
If fa Ise, the next statement is processed.
IFNX3N
The records are processed according to type:
ISETx
.f:>.
Ul
I
The value of the operand is placed in the proper dictionary (local or global). If the operand is an expression,
it is first evaluated.
I FNX3A
MSETA
MSETB
MSETC
EVAL
GENSTRNG
RESOLVE
IFNX3N
GBLDICTR
LCLDICTR
PARMTBLR
ORDSYMBR
GBLDICTS
LCLDICTS
IVARIABLESYMBOL REFERENCE
I
If a reference to a macro parameter, the value is retrieved from the parameter table. If a reference to a
variable symbol, it is retrieved from the relevant
di ctionary.
LCLDICTR
GBLDICTR
IANOpl
No processing; the next instruction is processed.
IVARIABLE SYMBOL SUBSTITUTION I
IACTRI
The operand is evaluated and the value kept during processing of the current text segment.
IFNX3A
IFWX3N
MACTR
EVAL
RESOLVE
GBLDICTR
LCLDICTR
PARMTBLR
ORDSYMBR
Evaluate as a SETC operand and move the value into
the generated text record. If substitution is performed
in the operator field, check against the OPSYN and
opcode tables for validity.
IFNX3A
IFNX3N
GENFLD
GENSTRNG
EVAL
RESOLVE
GBLDICTR
LCLDICTR
PARMTBLR
ORDSYMBR
Assemble Object Code hom Machine, Data, and Assembler
Instructio~s
SYSLIST
GENERATE
OBJECT CODE
cv
,::,..
m
SYSPUNCH
SYSGO
Data flow
Data reference
Pointer
Reference to
another diagram
Assemble Object Code from Machine, Data, and Assembler Instructions (cent.)
MODULE
MODULE
After all macro instructions have been expanded and
conditional assembly in open code performed, the
assembler is ready to generate object code from the
assembler and machine instructions.
•
~
-.]
The generated text fil.e is read. Symbols are defined
{that is, given addresses} and their definitions {and
resolved references} collected in a symbol file.
Information for each control section is collected
in the external symbol dictionary, which is passed
directly to be printed.
IFNX3B
•
The generated text file is read once again, this
time with the symbol fi Ie , to generate the object
code. Output is object code, put to either SYSGO
or SYSPUNCH, and a listing.
IFNX41
IFNX51
Process Symbols
PROCt~S
OUTPUt/INPUT
l'ROCE$S
OUTPUT
EXTE~NAL
SYMBOL
DICTIONARY
~
co
Data flow
___ ~
Dato reference
~
Pointer
Reference to
another diagram
Process Symbols (cont.)
MODULE
•
•
.t>.
1.0
The edited text is scanned and a sequential symbol
fi Ie (" symbol fi Ie I") of all records necessary for
symbol resolution produced. The fi Ie consists of
symbol definitions, symbol references, literals,
and other assembler operations affecting the ESD
or location counter.
IFNX3B
Symbol file I is scanned and the ESDID and
location counter updated for all symbol definitions
and references. Symbol definitions (ESDI D and
location counter values) are entered in the symbol table. External symbol dictionary entries
are made for control sections, dummy control
sections, external dummy sections, external
symbols and entry-point symbols. The symbol
table is searched for all references and the reference resolved if possible. A literal pool is built.
IFNX41
IFNX4M
IFNX4D
IFNX4E
IFNX4S
IFNX4V
ROUTI NE
(LABEL)
MODULE
(8
G
e
The adjustment table is used to add the start value
IFNX4E
of a control section to a symbol's location counter
value (for symbols defined in a control section that
does not start at 0). It is also used to change the
ESDI D for all symbols defined in a DSEeT referenced
by a Q-type address constant.
Symbol fi Ie II is scanned and symbol references resolved with the help of the symbol table. Literal
references are resolved. Resolved symbol records
are written on symbol file III. All ESDIDs and
location-counter values are adjusted, if necessary.
Special handling is necessary if the symbol table
overflows. See Diagram 20.
IFNX4M
IFNX4S
IFNX41
IFNX4M
IFNX4D
IFNX4E
IFNX4S
IFNX4V
ROUTINE
(LABEL)
MAKESD
Collect Symbols
PROCESS
OUTPUT
SYMBOL FILE I (FILE 1)
DSECT"RSYMRCD
Build definition records
• Labeled machine
instructions
operand
• Labeled and unlabeled
machine instructions
• Assembler instructions
(except ENTRY,
EXTRN, WXTRN)
• Machine instructions
(labeled and unlabeled)
containing literals
Ul
o
operand
=>
Data flow
---~
Data reference
~
Pointer
CJ
Reference to
another diagram
LEGEND
Collect Symbols (cont.)
MODULE
The edited text fi Ie (output from Generate) is read
and all symbol definitions and references logged in
symbol file I.
O
U1
I--'
A definition record is bui It for each assembler
instruction and labeled machine instruction.
The relative (that is, relative to the last definition or literal record) location counter value
and length attribute are placed in the output
record.
ROUTI NE
(LABEL)
MODULE
IFNX3B
•
Symbol reference records are built for all machine
and assembler instructions that have symbols in
their operands, except for ENTRY, EXTRN, and
WXTRN.
IFNX3B
Machine instructions are scanned for literals
and literal records built. The relative location
counter value is placed in the record.
IFNX3B
LTORG records are built when LTORG statements
are encountered.
IFNX3B
IFNX3B
•
. "
ROUTI NE
(LABEL)
Define Symbols (Pass 1)
II!I.~~~~~~--~-----
PR.OCESS
OUTPUT
DEFINE SYMBOLS (PASS 1)
DSECT=DSECT 14
Definition records
SYMBOL TABLE (SYMDIMEN)
flag
• Labels
• V-type constants
• ENTRY,XTRN,
WXTRN operands
• V-, Q.tvoe constants
•
~~~~~,~~~'~~:~IfRON~"
DSECT
• All tyJ)!ls
•
.
v
~
'1J... "'-,-",,--:------,
thers*
DXD
Scan symbol table
~
Found: Write adjustment record ~
Not found: Write reference record
G:t=:>
[Uteral r;cords
I
:;
;>1
Literal record
I
NO DSECT
(LTO-RG
:;
~dsl
;>1
LITERAL POOL (LATEND)
csr=::::>
Build literal pool
Write record on symbol file II
lJl
N
aCON
GI=)
I
LTORG
Write adjustment records for literal
~
pool entries
~
Write symbol reference records ~
Build literal adjustment ta~~
ll'
-
Symbol
{ef.
I
Literal
NO DSECT
=>
I (," ~ ,
Data flow
--7
Data reference
--7
Pointer
v
LITERAL ADJUSTMENT TABLE (lATADD)
Reference to
another diagram
LEGEND
*mT~,C~~'R~~~Tr~;CJcJ~,MsrART
Define Symbols (Pass 1) (cont.)
MODULE
Records are read from symbol fi Ie I and processed as follows:
I DEFINITION
RECORDS]
Make Symbol Table Entry.
A symbol-table entry is made for all symbols defined
in the name field of statements or in the operand field
of EXTRN, WXTRN, and ENTRY statements.
Update Locati on Counter.
The relative location counter value in the symbol
definition record is added to the current location
counter in the ESD. If a DS or DC statement,
the operand is evaluated and the location counter
updated by the length of the constant.
IFNX4S
ENTER
Make ESD Entry.
ESD entries are made for each unique START,
CSECT, DSECT, DXD, COM, ENTRY,
WTRN, and EXTRN symbol and Q- and
V- type address constants. ESDI D and ESD
numbers are assigned in ascending sequence from
for all entries.
There are two series of ESDID numbers, both assigned
in ascending sequence from 1. One set is assigned to DSECTs, the other to other entries of
all types.
IFNX4D
IFNX4E
ROUTINE
(LABEL)
IFNX4M
WRITE
I FNX4E
EXTRN
ENTRY statements receive special handling: if the symbol
IFNX4E
is not found in the symbol table, the ESDID and location
counter value can be passed to the record and it needs only
to be adjusted. If found, the type is changed to symbol reference and the symbol is resolved in pass 2.
ENTRY
Write Adjustment Records.
All labeled definition records and unlabeled
START, CSECT, DSECT, COM, DC and DS records
are changed to "adjustment records" (that is,
marked for later adjustment -- see Diagram 19)
and written on symbol file II. Current ESDID and
location counter values are moved into the adjustment record, as are the length attributes of the
symbols.
EXTRN and WTRN records, since they are not processed in pass 2, are changed to JTPASS (not needing
adjustment) records.
IFNX4M
U1
W
MODULE
ROUTI NE
(LABEL)
BLDESD
ENTRY
EXTRN
VCON
QCON
I REFERENCE RECORDSI
The symbol table is searched for the symbol in the reference record. If the name is found, the reference can
be resolved. Location counter value, ESDID, and length
attribute are moved from the symbol table into the symbol
record. Record type is changed to "adjustment" and the
record written on symbol file II. If the name is not found,
the record is written unchanged on symbol fi Ie II to be
resolved in the next pass.
IFNX4M
SYMBOL
I FNX4S
FIND
DEFINE SYMBOLS (PASS 1) (cont.)
MODULE
I LITERAL
I
RECORDS
Literal definitions are collected and the length of the
generated constant computed. Each unigue literal is
then hashed 'and entered int 0 one of the chains in the
literal pool. When the literal is entered, or if it
already is in the. pool, its chain identification and the
displacement of the literal within that chain are noted
and written in the record. (The literal pool is a table
containing a hash table and four chains of all the
unigue literals that have been defined since the start
of the assembly or since the last LTORG statement.
The hash table consists of four pointers, each the
address of one of the chains. Each chain is terminated by a zero chain pointer.)
Literal records are written on symbol file II.
U1
,J:::..
MODULE
ROUTINE
LABEL
ROUTINE
LABEL
I LTORG 1
IFNX4M
IFNX4D
LITERAL
Write Adjustment Record.
The literal pool is scanned and an adjustment record
written on symbol file 11 for each entry. The
location counter is updated for each entry.
Write Symbol Reference Record.
A symbol reference record is written on symbol file II
for each symbol in the literal statement.
Build Literal Adjustment Table.
The literal adjustment table is built by adding the
current location counter value to the chain lengths to
get the starting addresses of the literal chains.
IFNX4M
LTORG
LTDUMP
IFNX4D
IFNX4E
REFER
IFNX4D
LTORG
~
~
co
....-i
..Q
..jJ
4-l
Q)
....-i
>,
....-i
....-i
co
~
0
or-{
..jJ
r::
Q)
..jJ
~
.r-{
Q)
01
CO
~
til
or-{
..c:
E-t
55
Build Adiustment Table; Print
PROCEsS
INPUT
o
CSECTentry
Private code entry
~
•
Make adjustment table ent~ry~_ _ _~_ __
•
Enter start address and l e n = = u g t
in ESD
COMMON
DSECT
DXD
o.constant reference
Label definition
External reference
ADJUSTMENT TAStE (LATEND) NO DSECT
Read ESD table, process by type:
.
target
(ESDBlK I, ESDBLK '2) DSECT=DSECT 6
UPDATED ESD TABLE
[§J
CSECTentry
Private code entry
COMMON
DSECT
DXD
~n~e;~lignment and len~gth
Q-TYPE ADDRESS
CONSTANT REFERENCE
Make adjustment table. ~
entry
\J--v'
•
Label definition
External reference
~n~e;~lignment an~d
length
Doto flow
- - - ) Data reference
~
v
Pointer
Ref erence to
onother diogrom
LEGEND
AScan ESD table
Vand punch/print
ESD records
OUTPUT
Sv5PRtNT
LABEL DEFINITIONS
EXTERNAL REFS
=)
PROCESS
PRINT/PUNCH ESD
SYSPUNCH or
Change ESD type to DXD
Pass on unchanged
Q-con
artument \
~
• Enter start address and l e n l l g t h
in ESD
V1
0'1
o for
IESDID IESDI9 adjustmntl
h
rcoMI
•
IESDID I ESDID I
"
Build Adjustment Table; Print/Punch ESD (cont.)
MODULE ROUTINE
(LABEL)
•
The adjustment table consists of two kinds of entries:
U1
-.....J
1.
Those used to adjust location-counter values for symbols defined in a given CSECT or private code.
2.
Those used to change the ESDI D for all symbols
defined in a DSECT and all references to these symbols if the DSECT is referenced by a Q-type address
constant.
COM
DSECT
IDXD
I
SUMCST
I
SUMDXD
The alignment and length are entered into the ESD entry.
for DXD, the alignment factor and the length are obtained
from the ESD entry and the fields re-ordered {reversed}.
IQ-typ;-Add-ress Constant Reference I
The alignment factor is set to 7. The length of the
referenced DSECT is obtained from its ESD entry.
The alignment factor and length are stored in the
Q-type address constant reference ESD entry.
Read the ESD table and process by type:
The start address of the C SECT or private code is
computed from the lengths of the previous control
sections or the start value of private code. If the
START address of theCSECT or private code is nonzero, the start address is entered into the adjustment factor and the ESDI D moved from the ESD entry
to both argument and target ESDI D.
ROUTINE
(LABEL)
SUMCST
Same as step 2, above, except that the start address is O.
IFNX4E
•
The start address and the length are entered in the
ESD table. The length of the section is retrieved
from the original ESD entry.
i
An entry consists of three parts: an argument ESDI D, a target
ESDID, and an adjustment factor. For (1), above, both the
argument and the target ESDI D are the ESDI D of the C SECT
or private code. The adjustment factor is the start address
of the CSECT or private code. For (2) the adjustment
factor is O. The argument ESDI D is the ESDI D for the
DSECT. The target ESDI D is the ESDI D for the Q-type
constant reference.
•
MODULE
MAKESD
SUMESD
SUMCST
SUMDSD
Label Definitions
External References
SUMGET
These are passed from the old to the updated ESD
table without change.
. T h e updated ESD table is scanned and a record
printed or punched for all entries except DSECTs.
IFNX4E
MAKGET
Resolve Symbol References (Pass 2); Adjust Records
Resolve symbol
references
Vl
co
Resolve literals
Data flow
Data reference
Pointer
Reference to
another diagram
Resolve Symbol References (Pass 2); Adjust Records (cont.)
MODULE
ROUTI NE
MODULE ROUTI NE
(LABEL)
(LABEL)
o
•
Resolve symbol references. The symbol referenced in
symbol file II is searched for in the symbol table. If
IFNX4M
it is not found, the record is transferred urchanged
to symbol fi Ie III as an "undefined symbol record".
IFNX4S
If found, the location counter value, the ESDI D,
and the length attribute are moved from the symbol
table entry to the symbol reference record and it is
adjusted (see step 3, below).
SYMBL
FIND
Resolve literals.
o
The pointer to the corresponding entry in the literal
adjustment table isobtained from the literal record.
o
The location-counter value to the start of the
appropriate literal chain is obtained from the
literal adjustment table.
•
The displacement into the literal chain (obtained
from the literal record) is added to the location
counter value obtained in the previous step. The
result is the resolved location-counter value for the
literal.
I FNX4M
I
0
•
0
The ESDI D for the literal is obtained from the
literal adjustment table and stored in the literal
record.
The record is adjusted (see step 3, below).
Adjust all records.
0
The ESDI D is obtained from the record.
0
The adjustment table is searched for a corresponding
orgument ESDID. If a match is not found, the record
is transferred to symbol file III.
0
If a match is found, the ESDI D in the corresponding
target ESDI D is stored in the symbol record.
0
The corresponding adjustment factor is added to the
location counter value in the symbol record.
0
The record is written on symbol file III.
SYMBL
Ul
~
LlTRII
ADJUST
I FNX4M ADJUST
Handle Symbol Table Overflow
OUTPUT
SYMBOL TABLE
(NEW}
SYMBOL
TASlE(Ot.D)
Dif---"--------------:UTP;,:P:---'l
1,
'.1
II
I \
t \
I
I
I
\
PROCESS
'-
~~--------------------~
Scan literal pool
and build JTSYMII
records
en
o
Read rest of symbol
file I; resolve all possible ~/
references
SYMBOL FilE II
(FILE 3)
PROCESS
e
Scan symbol file II
and resolve all
possible references
o
Empty symbol table;
read JTSYMII records
8
Process symbol
file I
o
=)
Data flow
--7
Data reference
-----7
Pointer
v
Reference to
another diagram
Handle Symbol Table Overflow (cont.)
MODULE
MODULE
ROUTINE
(LABEL)
When, during symbol resolution {see Diagram 17}, the
symbol table is filled, it is necessary to take special
action to process the rest of symbol file I.
o
•
The literal pool and the symbol table are scanned
for symbol table entries corresponding to symbols
in literals. The symbol table entries {called
JTSYMII records} are oopi ed onto file I. These wi II
later be written into the new symbol table to resolve literals.
Symbol Reference Records: the type is changed to
adjustment.
IFNX4M
IFNX4D
IFNX4E
Symbol File I is read from the point at which the
IFNX4M
symbol table overflowed. The symbol table is searched
for each symbol record. If the symbol is not found,
the record is simply transferred. If it is found, it is
processed by type:
LTDUMP
ENTRY records: if a CSECT name, the record type
is changed to JTSYMBL and passed. If not a
CSECT name, the ESDID and the location counter
value are moved from the symbol table to the symbol record and the type changed to adjustment
record. An ESD entry is made.
IFNX4S
IFNX4E
Others: the record is marked
defined" and passed.
II
symbol previously
REFER
•
TRANSFER
SEARCH
ENTRY
EXTRN
After the rest of symbol fi Ie I has been written on
I FNX4M
fi Ie 1, symbol fi Ie II is scanned and written on fi Ie 3.
All symbol references are resolved, if possible.
IFNX4S
SYMBL
TRANSFER
FIND
•
REHASH
EOFIIS
FIND
ENTRY
EXTRN
e
The old symbol table is now emptied of all entries
that do not define ESD items and the JTSYMII
records read into it.
0"\
I--'
ROUTI NE
(LABEL)
IFNX4M
The rest of file I (the remaining part of symbol fi Ie I) IFNX4S
is now read and processed with the new symbol table
(as in Diagram 17).
SUBSET
ENTER
OUTPUT
PROCESS
OUTPUT/INPUT
$YSPRINT
eEdit and print listing
[MACHINE INSTRUCTIONS
/~
OPU"Oh obj• .,. ood.
~
IDATA INSTRUCTIONS
j
_Sort
,'~
1ASSEMBLER INSTRUCTIONS
j~
I
aod RL D
o
.
0'\
N
Data flow
- -
-
~
~
Data reference
Pointer
Reference to
another diagram
SYSPUNCH, SYSQO
and print XREF
d;"';~'D
Construct error
messages, collect
statistics, and
print
Generate Object Code (cont.)
MODULE
ROUTINE
(LABEL)
Object code is built from statements read from the
edited text fi Ie (fi Ie 2). When a symbol is encountered,
the symbol file (JINFILE) is used to cross-reference the
IFNX5M
symbol and to resolve addresses. A relocation dictionary (RLD) entry is made for relocatable address constants.
MODULE
IAss~mbler Instructions
ROUTINE
(LABEL)
I (Diagram 24)
These statements (which do not produce object code)
are processed according to type.
IFNX5A
I Error Recordsl
Output is object code (to SY SPUNCH or SYSGO) and a
listing (to SYSPRI NT).
o
Records are read from the edited text file and the
type of statement-determined from the operation
code and the "FLAGA" field.
IFNX5C
Processing proceeds according to record type
(machine instruction, data instruction, assembler
instructions, error records, print-only records).
0'1
W
\ Mach~~ Instructions]
I
Data I n~tructions
I
IFNX5M
These records (remarks, etc.) are edi ted and wri tten
directly on SYSPRINT,
e
(Diagram 23)
Each DC, DS, CXD, and DXD instruction or literal
definition is processed according to type. Crossreference entries are made for symbols and literals.
Relocation dictionary entries are made for relocatable
address constants. CCW,REPRO, and PUNCH statement processing is also shown here because these
statements, unlike other assembler statements, generate
object code.
IFNX5A
IFNX5P
ERRORO
IFNX5A
IFNX5A
AOP350
IFNX5A
LOCUPD
IPrint-Only Records I
(Diagram 22)
Each instruction is processed according to its type
and its operand restri ctions (as listed in the opcode
restriction table). Implicit addresses are resolved
by means of the using table and cross-reference
entries are made for all symbols and literals that
appear in the statement.
TEXTGET
The statement number assigned to a statement flagged
during previous phases is inserted into the error record
that follows the statement. Then the error record
is written on fj Ie 1 or 3 for subsequent processing
by diagnostic routines. Error records for errors
detected in this phase are also built, the number
of the statement in error inserted, and the record
written on file lor 3.
IFNX5A
IFNX5D
IFNX5F
A
~
Each instruction generating object code causes the
location counter to be updated. In addition, the
location counter is updated by ORG, CNOP,
CSECT, DSECT, COM, and START assembler
statements. Alignment is done for CCW, CNOP,
LTORG, and CXD statements, as well as for DS,
DC and machine instructions requiring it. (See
Diagram 25.)
For each statement the object code built is packed
and the virtual text is inserted into the print line
together with the packed code. Depending on the
linecount option given, new pages are ma'de and
headings are printed.
IFNX5P
GENERATE OBJECT CODE (cont.)
MODULE
o
e
o
0'\
~
The error number in the edited record is used to locate the message text associated with the number from
the table in I FNX6C. This text is scanned for $ and
#, which indicate insertion. A S indicates that an
MODULE
appended data field is to be inserted in the text. A
indicates that the text NEAR OPERAND COLUMN
followed by the value of the column pointer is to be
inserted.
The object code is packed into the current record.
When the 80 bytes are fi lied or the ESDI D for the
code changes, the current record is punch,ed and a
new one initiated.
RLD and XREF records are stored before they are
edited and printed (see Diagram 26).
ROUTINE
LABEL
#
IFNX6A
The line is edited to remove unnecessary blanks and
the statement number inserted.
During printing of the error messages, the number of
statements flagged is counted and the highest severity
code encountered is saved.
IFNX6B
ROUflNE
LABEL
~
~
rcl
r-i
..Q
4J
4-1
OJ
r-i
~
r-i
r-i
rcl
~
0
.r-(
+J
~
OJ
+J
~
.r-(
OJ
ty\
rcl
0..
Ul
.r-(
.c
8
65
Process Machine Instructions
OUTPUT
PROCESS
EDITED TEXT
DSecr ,~JTEXT, JTEXTA
m
D
LOCATION COUNTER
m
D
11
OBJECT CODE "EFT"Al')
I-----~D
CROSS REFERENCE RECORDS
1---'-----------,,1"" ~
Data flow
--~
Data reference
~
Pointer
CJ
Reference to
another diagram
3)
DSECT'llN
Process Machine Instructions (cont.)
MODULE ROUTI NE
{LABEL}
Two tables are used in the processing: the opcode restriction
table {an in-core table containing data on opcodes} and the
using table {containing available base registers and their
associated values and ESDIDs}. When a symbol is encountered, its definition is obtained from the symbol file; an
entry to the cross reference dictionary is also made.
o
0"1
-J
•
Records are read from the edited text file. The
opcode byte in the edited record is used to find
the associ ated entry in the opcode restri cti on
table. The table contains one entry for each
operand allowed. The operands can be classified
as I, S, SX, and SL. One operand can contain
both an immediate data portion {mask, register
or length} and a storage data part {data address or
implicit address}.
The operand is evaluated according to information
in the opcode restriction table. This table contains
information on operand type, allocation of fields
in the object code, restrictions on divisibility
and upper boundaries of immediate data, alignment,
whether or not literals are allowed, and if exec'ution of the instruction modifies storage.
IFNX5M
IFNX5M
DRIVER
•
•
•
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.
Object code for the instruction is built and the
location counter updated. In the listing, this
code is printed at the left of the source statements.
When a symbol or literal is found in the edited
text record, a record is read from the symbol fi Ie.
From the information in this record a cross-reference
record is built containing a flag telling if a definition or a reference record, the name of the symbol,
the statement number, the length attribute value,
and the location-counter value for the symbol. This
information will later be used to build the crossreference dictionary {Diagram 25}.
MODULE
ROUTINE
{LABEL}
IFNX5M
SPART
IFNX5M
IASGN
SPASGN
IFNX5V
SYM
Process Data Instructions
PROCESS
INPUT
UTP
LOCATION COUNTER (ELCTR)
EDITED TEXT FILE (fILE 2)
)
PROCESS BY TYPE:
V
I
DC, OS, DXD, L1TERALJ
DEFINITION
9'---____'
.
XR£F DICTiONARY (FILE 1 or 3)
1 Check displacement factor
;'
" .e. -
DC TABLE
r"
I
m
"
,,2 Check for valid data type
and modifier use
" Evaluate
operand and ~
~ - 3 produce object code
D
Update location
~
v
counter
4 Make cross-reference
records for symbols
and literals
5 Make R LD entry for
relocatable address
constant
I
PUNCH
DSECT",
DSECTI )
'(-
C
,SYSPRINT, SYSGO, SYSPUNCH
,
double quotes and
ampersands
~
I REPRO I
Write following record ~
I ccw I
I ....
=>
~
Pointer
Q
Data reference
Reference to
another diagram
D
1 Evaluate operands
2 Build object code
IV
DSECT=
RLDIN
~
1 Scan operand, remove
3 Make cross-reference
records for symbols
and literals
~
G;:::::>
4 Update location counter
~
OSEeT=
XRFIN
RELOCATION DICTIONARY (FILE 1 or3)
I
2 Write record
Data flow
9~
~
SYMBOL fiLE III (FILE 1 or 3)
CX>
,
Process Data Intructions (cont.)
MODULE
ROUTINE
(LABEL)
Included here are those assembler instructions which generate
data in the object code: DC, DS, DXD, REPRO and CCW.
IDC,
o
•
0)
~
•
DS, DXD, Literal Definition
I
For DS, DXD, and DC instructions with duplication factor 0, no object code is built; if no duplication factor
if given, the default value is 1.
A check is made to insure that the specified data type
is valid and that the specified modifiers are within the
ranges given in the DC table. If no modifiers are supplied, default values are used.
The last part of each entry in the DC table is a branch
address to the routine handling the given data type.
These routines scan the operands and evaluate them.
Values of symbols are obtained from the corresponding
symbol records.
IG
•
IFNX5A
DS0100
DC0100
DXD100
IFNX5D
DCEVAL
IFNX5D
CKON DKON
XKON AYKON
BKON VKON
PKON QKON
ZKON SKON
II
MODULE ROUTI NE
( LABEL)
An entry is made in the cross-reference dictionary
for symbols and literals.
IFNX5A
XREF
Relocation dictionary entries are made for address
constants with relocatable expressions in the
IFNX5A
RLDOUT
IFNX5A
REPROO
PUNCHO
IFNX5A
CCW100
opemnd.
PUNCH, REPRO
I
The operand of a PUNCH statement and the input record
following a REPRO statement is an 80-byte EBCDIC
string included in the object code.
Iccw I
The operand of a CCW instruction is evaluated and the
result stored in an 8-byte object code record that is
aligned to a double-word boundary. The location
counter is updated accordingly.
fJJ
'.4
'I
Process Assembler Instructions
INPUT
PROCESS
OUfPUT
I'Dmil T"" FT LE
{flU" 2)
PROCESS BY TYPE:
-,..
I
USINGTABte
(USINGT)
USING
DROP
POP USING
PUSH USING
r
PRINT
POP PRINT
PUSH PRINT
Upd". ,h. p,;n, """'
~
I
I
-J
2 bytes
I I'-------->1
PRINT STATUS SWITCH
(PRINTSW}
PSTMT BITO=I stmt.to be printeJ
PGEN BIT1~1 print gen.stmt
(
PDATA B1T2~1 print all DC data
SYSPRINT
~PACE
EJECT
o
REG.
SPECIF.
".-._ _ _ _----!L-_ _ _ _ _ _ _ _ _ _ _ _........J:~~
TITLE
Control the listing
_JJ
_
.
Listing
control
records
SYSPRINT
I
I
I
MNOTE
Produce message
I
...J\
(J
"
XREF DICTIONARY
....
"'
-v./
I
I
f
l
=>
Data flow
---~
Dato reference
---7
Pointer
Q
Reference to
another diagram
LEGEND
ENTRY
EXTRN
~::. 1, ,.f.,.no., fo,
1.
symbols
2. Evaluate EQU operand
for printing
I END
r~
I
1. Evaluate first operand
2 Make cross reference for symb...o"'I<--_ _
3. Scan second operand for format
4. Make END card
~
I
-V
L-END CARD
...J\
-,..
r--
1
Process Assembler Instructions (cont.)
MODULE
ROUTt NE
(LABEL)
USING
DROP
POP USING
PUSH USING
I-'
DROP
--The operand is scanned for registers to be dropped from
the using table. If the operand is blank, all registers
are dropped. Each register indicated causes a Scan of
the using table, and if it is found, the remaining
entries are moved up in the table, writing over the dropped register{s}.
PUSH USING
The operand is scanned for USING {and PRINT -- see
PUSH PRINT, below}. If USING is found, the using
table is saved in the PUSH stack for USI NG. A maximum of four copies of the using table can be saved.
PUSH does not affect the current status of the using
table.
POP USING
The operand is scanned for USING {and PRINT-see POP PRINT, below}. A USING value that has
previously been saved is restored; the current value
is destroyed. If the POP has not been preceded by
a PUSH with a USING operand, a diagnostic message
resu Its.
ROUTINE
(LABEL)
IFNX5A
PRINTO
PRINT
POP PRINT
PUSH PRINT
USING
----=rh'e operand is evaluated and the register or registers
I FNX5A
indicated are checked against the using table. The using
table has one entry for each value that has been specified
in a current USI NG statement. If the register was already
in use, the earlier entry is dropped. The new entry or
entries are made and the whole table sorted in descending
order. The primary sort field is the ESDID, the secondary
field is the value, and the tertiary sort field is the register number. If the ESDID is 0, the corresponding entry
is an absolute USING.
-...J
MODULE
USINGO
PUSH PRINT
The print options are saved in the PUSH stack for PRINT.
IFNX5A
A maximum of four values of the print options can be saved.
PUSH does not affect the current status of the PRI NT options.
IFNX5A
DROPOO
IFNX5A
PUSHOO
IFNX5A
PRINT
--The current print options are saved. All print options are
turned on. The print routine is called to list the PRINT
statement and, on return, the print options are restored.
The operand is then scanned and the print options updated
accordingly.
POP100
PCP PRINT
The PRINT value that has been previously saved is restored.
The current value is destroyed. If the POP has not been
preceded by a PUSH PRINT, a diagnostic message is produced.
TITLE
--The operand is scanned for duplicate ampersands and quotes
{duplicates are eliminated}. The title is saved, the carriage control index to the print routine is loaded into register 10, and register 11 is set to a negative number to
indicate an eject. The print routine is then called.
EJECT
--Register lOis loaded with the carriage control index for the
print routine. Register 11 is set to a negative number to
indicate an eject and the print routine is called.
PUSHOO
IFNX5A
POP100
IFNX5A
TtTLEO
IFNX5A
EJECTO
PROCESS ASSEMBLER I NSTRUCTI ONS (cont.)
MODULE
MODULE
ROUTINE
ENTRY
EXTRN
WXTRN
EQU
fFNX5A
ENTRYO
EXTRNO
EQU100
A message is generated. If a severity code is given, it is
saved for statistics. Double quotes and ampersands are
eliminated.
~
-.J
N
SPACE
------rhe operand is scanned for a decimal value. If no operand
is encountered, a value of 1 is loaded in register 11. Reg- IFNX5A
ister lOis loaded with the carriage control index and the
print routine is called.
SPACEO
I MNOTE I
These statements generate cross-reference dictionary entries.
The first operand of EQU is evaluated to get a value to
print.
The symbol (if any) in the operand is evaluated and the
value is saved for the postprocessor. Literals (if
any) cause alignment to a double word boundary,
the literals are evaluated and printed after the END
statement.
ROUTINE
LABEL
LABEL
IFNX5A
END100
I FNX5A MNOTEO
~
~
n::l
,.....,
..Q
+J
4-1
(l)
,.....,
>t
,.....,
,.....,
n::l
~
0
•..-1
+J
~
(l)
+J
~
•..-1
(l)
01
n::l
0...
til
•..-1
..c:
E-I
73
Update Location Counter
MACHINE INSTRUCTIONS
DC
DXD
DS
LITERALS
CCW
Update location counter
CCW
CNOP
LTORG
CXD
(DC,DXD,DS)
-..J
Update location counter
and align
.p..
EJ
Change location counter
to symbol value
Data flow
-
-
-
~
------7
Data reference
Pointer
Update Location Counter (cont.)
The location counter is updated by the following
instru cti ons:
START
CSECT
DSECT
COM
These instructions initialize the location counter and
the control section ESDI D with values from the symbol
file record. Symbols are cross-referenced.
-....J
Ul
MODULE
ROUTI NE
(LABEL)
IFNX5A
STARTO
MODULE ROUTI NE
(LABEL)
MACHINE INSTRUCTIONS
DC
DXD
DS
LI TERALS
CCW
After each machine instruction, and when object
IFNX5A
code is generated by other statements, the length of
the generated code is added to the current location
counter value. The result is saved as the "new" current
location counter. If the NOALIGN option is not in
effect, most instructions require alignment. Others,
such as LTORG and CNOP, are specifically designed
IFNX5A
to effect alignment. Alignment consists of updating the
location counter by the number of bytes needed (for
example, a CXD instruction adds four bytes to the
location counter. If the alignment is the result of a
DC instruction, zeroes are added to the object code.
A CNOP instruction fills the alignment bytes with 0700.)
LOC UPD
ALIGN
IORG I
The ORG instruction causes the location counter to
take on the value given by the operand. The new
value is taken from the symbol file record.
IFNX5A
ORG100
Sort RLD and XREF
IE
.....
OUTPUT
PROCESS
INPUT
I
L
G
RELOCATION QICTIONARY
(FILE lor 3)
DSECT=PPIN
CROSS-REFERENCE DICTIONARY
(FILE 1 or 3)
DSECT=PPIN
1
I
II
FILE 1
'")
\9
V
,
V
neces~ry
..
®
~
,t
~
t
ME'rge spilled 'itrings with
cascade merge
-
FILE 2
r------.
I---
FILE 3
V'
~
(SYSPRINT)
®
!
,I
,
Edit the merged records and
print them. Punch RLD.
f
r
I
==)
Data flow
t
---)
Data reference
r
-----7
Pointer
i
I
~
~
V
"~
I
~
-
Reference to
another diagram
LEGEND
-
rr~
~
V
~-
RLD
'\
XREF
~
LITERAL
XREF
,/
V
I
il·
'"
'"
Read into sort area and
sort and spill strings if
.v'
t
--J
0'1
Get sort work area
DSECT=RPRINT (LISTING)
RCARD (RLD DECK)
f
I
I
1
Sort RLD and XREF (cont.)
MODULE
ROUTINE
(LABEL)
IFNX6A
XGAENT
. . Records are read into the sort data area and a four- IFNX6A
'V byte entry for each record {its address} is made in
the sort pointer area. Entries are made unti I the
data area is filled or the input file is empty. The
records are then sorted {Shell's sort} using bytes
4-17 of the record as the sort field. If there is
more input it is spilled onto file 1 or 2.
GTRGTR
•
•
--.J
~l
A GETMAIN is issued to obtain all available core.
The area is divided into six buffers and a sort work
area. The sort work area and buffers 5 and 6 are
divided into a sort pointer area and a data area.
A cascade merge is used to reduce the number
of sorted strings. When two files contain one
string each and the third file is empty, a final
merge is done.
IFNX6A
MERGE
•
During the final merge the records are edited
and put out. The records have been sorted
in the order RLD, symbol XREF, and literal
XREF •
RLD records are simply formatted and printed
{and punched}. XREF symbol definition records
have the symbol, its length, value, and definition
fields fully inserted. A statement number is
added to each reference record. If a reference
record appears without being preceded by a definition, the symbol is marked "undefined" and the
undefined text is inserted. If a record appears
with the duplicate flag, a line with the message
** DUPLICATE ** is inserted. Literal XREF records are hand Ied in the same way.
MODULE
ROUT! NE
(LABEL)
IFNX6A
OUTPUTS
Initialize
@
Format heading identifier
(Jevel, time, date)
OUTPUT
ASS~MBlER
OPTIONS
fPARM""3l
(ID
NO DSEC'
Process assembler options
SYSPAAM FIELD
(JSYSPA~M)
-.J
(X)
Ql) Change standard ddnames
to over-riding name
Calculate buffer sizes;
open input and work files
Close input files; open
output files
Close work and output
files
I
]
]
'"
=)
Data flow
---7
Data reference
--7
Pointer
CJ
Reference to
another diagram
LEGEND
Initialize (cent.)
MODULE
•
The time and date are obtained with a TIME macro.
The level is contained in I FOXOA.
I FOXOD
•
Assembler options are obtained from the PARM field
of the EXEC statement and from the default options.
I FOXOD
the assembler has been invoked from another
(I When
program, there may be overriding DDnames.
-....J
\.0
•
IFOXOD
Relevant DCBs are changed to correspond to the new
names.
The buffer sizes for workfiles are calculated. If no
BUFSIZE option has been given, 37% of the region
is allocated to buffers and 63% to generation-time
dictionaries. If the BUFSIZE(MI N) option has been
specified, each utility data set is allocated a single
790-byte buffer and the remaining storage allocated
to dictionaries.
I FOXOA
MODULE
•o
SYSIN and SYSLIB are opened.
IFOXOF
SYSUTl, SYSUT2 and SYSUT3 are opened
I FOXOA
After all input has been read and processed, the
input files are closed and the output files
(SYSPUNCH, SYSGO, and SYSPUNCH) opened.
I FOXOF
IFOXOH
Finally, all files are closed.
I FOXOA
IFOXOH
This page intentionally left blank
80
Program Organization
This section describes how the program
is divided into units.
It contains
detailed charts of how the assembler
phases use main storage and diagrams
showing the flow of data and control
between assembler phases.
Program Organization
81
~
~
OPERATING SYSTEM
~
~
ASSEMBLER SYSTEM INTERFACE MODUlESI
"""
"""
INITIALIZATION PHASE
"'-
I
~
"-
EDIT PHASE (IFOXll)
""
c:::
I
~
DICTIONARY INTERLUDE PHASE (lFOX2l)
I
~
"-
GENERATE PHASE (IFOX3l)
l
I
""-.....
SYMBOL RESOLUTION PHASE (IFOX4l)
I
"-
"""
ASSEMBLY PHASE (IFOX5l)
"-
c:::
I
POST PROCESSOR PHASE (IFOX6l)
"""
~
Figur~ 1.
82
"
"
Logical Flow of Control
I
DIAGNOSTIC PHASE (lFOX62)
I
"~
OBJECT MODULE DESCRIPTION
LOAD
MODULE
NAME
CSECT
OBJECT
MODULE
IFOXOO
IFOXOAOO
IFOXOA
Driver Routines
IFOXOB
IFOXOC
Workfile I/O And Storage Management Routines
IFOXOI
IFOXOBOO
IFOXOCOO
IFOX02
IFOXODOO
IFOXOD
Master Common Area Initialization Routines
IFOXOJOO
IFOXOJ
Assembler Option Parameters
IFOX03
IFOXOEOO
IFOXOE
Input DCB's And Module XOF Work Areas
IFOX04
IFOXOFOO
IFOX05
IFOXOGOO
IFOXOF
IFOXOG
Input Routines
Output DCB's And Module XOH Work Areas
IFOX06
IFOXOHOO
IFOXOH
Output Routines
IFOX07
IFOXOIOO
IFOXOI
Abort Routines
IFOXll
IFNXlAOO
IFNXlA
Edit Phase Mainline Logic
IFNXlKUN
IFNXlK
Edit Phase Operation Code Table
IFNXlJOO
IFNXlJ
Edit Phase Dictionary Routines
IFNXlSOO
IFNXlS
Edit Phase Post-fix Routines
IF NX2AOO
IFNX2A
Dictionary Interlude Phase
IFNX3A
Generate Phase Mainline Logic
IFNX3B
IFNX3K
Generate Phase Symbol Resolution Preprocessor
IFNX3KUN
IFNX3NOO
IFNX3N
Generate Phase Dictionary Routines
IFNX4DOO
IFNX4D
Symbol Resolution Phase DS/DC Evaluation Routines
IFNX4EOO
IFNX4E
Symbol Resolution Phase ESD Routines
IFNX4MOO
IFNX4S00
IFNX4M
Symbol Resolution Phase Mainline Logic
IFNX4S
Symbol Resolution Phase Symbol Table Routine
IFNX4VOO
IFNX4V
Symbol Resolution Phase Expression Evaluation
IFNX4NOO
IFNX4N
Symbol Resolution Phase DS/DC Evaluation Routines (Test Option Specified)
IFNX4EOO
IFNX4E
Symbol Resalution Phase ESD Routines (Test Option Specified)
IFNX4TOO
IFNX4S00
IFNX4T
Symbol Resolution Phase Mainline Logic (Test Option Specified)
IFNX4S
Symbol Resolution Phase Symbol Table Routine Test Option Specified)
IFNX4VOO
IFNX4V
Symbol Resolution Phase Expression Evaluation (Test Option Specified)
IFNX5AOO
IFNX5A
Assembly Phase Operation Code Processor
Master Common Area
IFNXlAlO
IFNXlA20
IFNXlA30
IFOX21
IFNX2A02
IFOX3l
IFNX3AOO
IF NX3A03
IFNX3BOO
IFOX4l
IFOX42
IFOX5l
Generate Phase Operation Code Table
IF NX5A20
IFNX5A30
IFNX5A40
IFNX5A50
IFNX5COO
IFNX5C
Assembly Phase Mainline Logic
IFNX5DOO
IFNX5D
Assembly Phase Constant Processor
IFNX5FOO
IFNX5LOO
IFNX5F
IFNX5L
Assembly Phase Fixed Point/Floating Point Conversion
Assembly Phase Error Logging Routine
IFNX5MOO
IFNX5M
Assembly Phase Machine op Processor
IF NX5POO
IFNX5P
Assembly Phase Print Routine
IFNX5VOO
IFNX5V
Assembly Phase Expression Evaluation Routine
IFOX6l
IFNX6AOO
IFNX6A
Post Processor Phase
IFOX62
IFNX6BOO
IFNX6B
Diagnostic Phase
IF NX6B20
IFNX6COO
IFNX6C
Error Messages
Module Directory. This chart shows how the assembler is divided into program units, and how these program units
are subdivided. The make up of each load module is shown in terms of the objects modules and CSECTS that comprise it.
Furthermore, the module directory contains a description of each object module. For further and more detailed information
see the Directory.
Figure 2.
Module Directory
Program Organization
83
Main storage layout of the assembler. The vertical axis of this diagram represents the relative amount of main storage, and the
heights of the bars representing the assembler phase load modules show the relative sizes of the different phases. The
horizontal axis represents the progression of execution time, and therefore, at any point the diagram shows which load modules
are in main storage. For example, when the Dictionary Interlude Phase (I FOX21) executes, with it in main storage are the
Master Common Area (IFOX011 and the Driver Routines, Workfile I/O, and Storage Management Routines (IFOXOO).
End of
main storage
See fig. 11
See figs. 5 - 7
I FOX62
IFOX61
IFOX21
IFOX02
I FOX06
I FOX04
I FOX03
IFOX05
IFOX01
I FOXOO
Progression of execution
Figure 3.
84
~
Main Storage Layout
o
Work Areas (see Figures 4 - 11)
o
Phase Load Modu I es
...---LlMIT OF MAIN STORAGE
FIXED SIZE
EDIT PHASE COMMON
-=l
MACRO DEFINITION DIRECTORY
AND OPSYN TABLE
~
f
..
MDDSTRT
MDDSLOT
-.c;[
VSDSLOT
cS
VSDSTRT
~
OSRDSTRT
-=;
SSRDSTRT
VARIABLE SYMBOL
DIRECTORY
VARIABLE SYMBOL
HASH TABLE
ORDINARY SYMBOL ATTRIBUTE
REFERENCE DIRECTORY
CONTAINS TEN MOST
RECENT ENTRIES
SEQUENCE SYMBOL
REFERENCE DIRECTORY
~
STARTS IMMEDIATELY ABOVE
EDIT PHASE LOAD MODULE
Symbols ore in
tlie phose common
Figure 4.
Edit Phase (IFOXll)
Main storage Work Area
Program Organization
85
LIMIT OF MAIN STORAGE
COMMON
..
ERROR RECORD
BUFFER
MDDND
ERRBLK
MACRO DEFINITION
DIRECTORY
OPSYN TABLE
MACRO DEFINITION
VECTOR
SEQUENCE SYMBOL
REFERENCE DICTIONARY
SKELETON
DICTIONARY
GLOBAL
VECTOR
SKELETON
DICTIONARY
HEADER
COMSTRT
--
MDDSTRT
-
MDVSTRT
FREEEND
SEQSK
..
--
GBLSK
SKDCSTRT
SSDTSTRT
HASH TABLE FOR SEQUENCE
SYMBOL DEFINITION TABLE
SEQUENCE SYMBOL
DEFINITION TABLE
r-----l---- ...-
SSDTEND
GDEND
r - - - - - r - - - - - ...- OSRTENT
GLOBAL DEFINITION
DIRECTORY AND ORDINARY
SYMBOL ATTRIBUTE REFERENCE
TABLE
HASH TABLE FOR GLOBAL DEFINITION
DIRECTORY AND ORDINARY SYMBOL
A TTRIBUTE REFERENCE TABLE
.?
STARTS IMMEDIATELY ABOVE
DICTIONARY INTERLUDE PHASE
LOAD MODULE
Figure 5.
86
-
FREESTRT
GDSTRT
OSRTSTRT
Dictionary Interlude Phase (IFOX2l)
Main storage Work Area: 1 of 3
Process Skeleton Dictionaries
Symbols ore in
the phose common
LIMIT OF MAIN STORAGE
ORDINARY SYMBOL
ATTRIBUTE REFERENCE
DICTIONARY
. - - OSRDSTRT
COMPLETED GLOBAL DEFINITION
DIRECTORY AND ORDINARY SYMBOL
ATTRIBUTE REFERENCE TABLE
HASH TABLE FOR GLOBAL DEFINITION
DIRECTORY AND ORDINARY SYMBOL
ATTRIBUTE REFERENCE TABLE
STARTS IMMEDIATELY ABOVE
DICTIONARY INTERLUDE
PHASE LOAD MODULE
Symbols are in
the phase common
Figure 6.
Dictionary Interlude Phase (IFOX2l)
Main storage Work Area: 2 of 3
Build Ordinary Symbol Attribute Reference Dictionary
Program Organization
87
LIMIT OF MAIN STORAGE
.--MDDND
MACRO DEFINITION
DIRECTORY AND
OPSYN TABLE
OPSYN TABLE
(unchained)
+--FREESTRT
STARTS IMMEDIATELY ABOVE
DICTIONARY INTERLUDE
PHASE LOAD MODULE
Symbols are in
the phose common
Figure 7.
88
Dictionary Interlude Phase (IFOX2l)
Main Storage Work Area: 3 of 3
Unchain Opsyn Table
LIMIT OF MAIN STORAGE""---
1\\
DICTIONARY EXTENSION
FOR SETC VARIABLES
THAT ARE LONGER THAN
8 CHARACTERS
!
-
".
i
r---
I-I··.'·.•·•.'.····
I·,··········
~
WORK AREA WHERE
PARAMETER VECTORS
ARE BUILT
I-'-
SKELETON DICTIONARY
FOR INNERMOST MACRO
+---PARAMETER VECTOR FOR
INNERMOST MACRO
PARAMETER TABLE FO R
INNERMOST MACRO
CURRDICT
I
~
. . - - PVECTPTR
. . . - - CURRPARM
SKELETON DICTIONARY
FOR OUTERMOST MACRO
PARAMETER VECTOR FOR
OUTERMOST MACRO
PARAMETER TABLE FO R
OUTERMOST MACRO
SKELETON DICTIONARY
FOR OPEN CODE
ORDINARY SYMBOL ATTRIBUTE
REFERENCE DICTIONARY
+---- OSRDSTRT
GLOBAL DICTIONARY
. - - GDSTRT
OPSYN TABLE
. . . - - OPSNSTRT
MACRO DEFINITION VECTOR
+--
MDVSTRT
STARTS IMMEDIATELY ABOVE
GENERATION PHASE LOAD MODULE
Symbols are in
the phase common
Figure 8.
Generation Phase (IFOX31}
Main Storage Work Area
Program Organization
89
LIMIT OF MAIN STORAGE
ESD SYMBOL
TABLE
+--SYMDIMEN
AREA USED IF SYMBOL
TABLE OVERFLOW OCCURS
~
t
. - - SYMDIMEN+4
I
. - - SYMDIMEN+12
LITERAL POO L
. - - LATADD
SYMBOL RESOLUTION PHASE
COMMON
,
STARTS IMMEDIATELY ABOVE
SYMBOL RESOLUTION PHASE
LOAD MODULE
Symbols are in
tlie phase common
Figure 9.
90
Symbol Resolution Phase (IFOX41)
Main Storage Work Area
LIMIT OF MAIN STORAGE
I
I--
r-
I
I--
~
L
ASSEMBLY PHASE COMMON
STARTS IMMEDIATELY ABOVE
ASSEMBLY PHASE LOAD MODULE
Figure 10. Assembly Phase (IFOX51)
Main Storage Work Area
Program Organization
91
/
LIMIT OF MAl N STORAGE
Post-Processor Phose
Common
Remainder
of sort area
after pointer
area is
allocated
Data
Sort
Area
DATAPTR
Size is determined
by si ze of sort area
Buffer 6
1---------- - - - -
} CURFL' 3
Buffer 5
SORTPTR
Buffer 4
CURFL' {
At
Sort
Time
f------------- Buffer 3
CURFLE 2
}
Buffer 2
JINFIL' {
1-----:----------Buffer 1
}
At Merge
Time
CU~l'
Symbols are in
the phose common
Figure 11. Post Processor Phase (IFOX61)
Main storage Work Area
92
Initialization
-
-
r
-
-
Input
r
-
1
-
-
-
-I
I
L
-
-
-
- -
-
.......
1
1
Input File
Source Statements
I
I
I
- -
J
I
Library File
Copy Code
Macro Definitions
~
Edit
Phase
I
,r
Dictionary
Interlude
Phase
I
File 1 Text
Edited
Skeleton Dictionaries
Error Records
~
I
I
File 2
Dictionary Data
I
r
-
-1
I.
Punch FIle
Pre-ESD Punch/Repro
Output ESD Records
SYM Records
r
~
L:::J r
ESD Records
-..
Object File
Pre-ESD Punch/Repro
Output ESD Records
SYM Rornrrls
I..1-"
I
I
I
File 1 or 3
Partially Resolved
Symbol Data
'
....-
"""'"
L
,r
....
Generation
Phase
1
~
~
"
Symbol
Resolution
Phase
~ ~XT
..J
File 2
~ IOverflow
ESD Segments
Literal Adjustments
Table Overflow
.....
.A
r
~r
Print File
L.
,,," R""'"re U"
1
I
1,
I
J
l§::l
Error Records
Statistics
....
r
I~ I
Assembly
Phase
~
I~ I
II
I
I
~
....
~
II
~
Post Processor
Phase
I
....
~
~
L.. I
I~
I
I
1
File 2
Merged RLD/Cross
Reference Data
File 3 or 1
Merged RLD/Cross
Reference Data
I
I
I
Punch File
END Record
File 2
Generated Text
Error Records
...
1
I
I
Object File
RLD Records
END Record
"""'"
File 3 or 1
Symbol
Reference Data
.JI
I
Punch File
RLD Records
·1
...
.1 II
f
I
~
1
~r
Object File
Records, Post-ESD
Punch/Repro Output
I
I
TXT Records,
Post ESD I~
FB,
Punch/Repro Output
Print File
File 3
Symbol
Resolution Data
I
...
"""'"
I
Source Program
I
...-
1
r"""'"
L
II
File 3
Dictionary Data
I
I
A...
I
Output
II
~,
File 2
Dictionary Data
I
"'" 1
....
- - - - - - - -
1
~
File 1
Edited Text
I
Diagnostic
Phase
......
I
I
1-
Figure 12. Assembler Data Flow
Program Organization
93
File 1 or 3
RLD and Cross
Reference Data
Error Records
I
This page intentionally left blank
94
Data Areas
This section contains detailed layouts
of data areas to help in interpreting
storage dumps.
Data Areas
95
EDSECT
DSECT NAME:
LOAD MODULE:
SIZE:
IFOX11
1124
CREATED BY:
IFNX1A
IFNX1A,IFNX1J,IFNX1S
REFERENCED BY:
UPDATED BY:
FUNCTION:
IFNX1A,IFNX1J,IFNX1S
EDITOR COMMON
OPERATIONS DIAGRAMS:
DISPLMNT
DEC
(HEX)
0
1
2
3
4
SIZE
FIELD
NAME
(0000)
SWITCH1
PROGRAM SWITCH
(0001)
SMDEF
SXPRTO
SMISCN
SNOPSYN
SWITCH2
BIT 0
BIT 1
BIT 2
BIT 3
PROGRAM
- WITHIN MAC !:EF (SET BY MACRO)
- PROTO EXPECTED (SET BY MACRO)
- RETURN TO MISCAN
- OPSYN NO LONGER ALLOWED
SWITCH
BIT o
BIT 1
BIT 2
BIT 3
BIT 4
BIT 6
BIT 7
PROGRAM
-
(0002)
SONECD
SBYCNT
SONECT
SALLCT
SBYONE
SCTLRTN
SNOPND
SWITCH3
1
BIT o
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
-
(0003)
SCMTCT
SNXTCT
SPRVCT
SLSTCD
SINEOF
SGBLCL
SMI
SUB SOP
SWITCH4
1
SPGRMD
SOPNCD
SSYSMD
SICTL
SNOACTR
SABORT
SKPMND
SKPEND
SWITCH5
BIT o
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
(0004)
SCOPY
96
DESCRIPTION: CONTENTS,
MEANINGjUSE
READ ONE CARD (REPRO)
BYPASS ALL CONTINUATIONS
READ ONE CONTINUATION
READ ALL CONTINUATIONS
BYPASS ONE CARD IN EDITED FORM
- RETURN TO CALLER
- RETURN TO CALLER
SWITCH
-
COMMENTS CONTINUED
NEXT CD CNT'N OF THIS CD
THIS CD CNT'N OF PREVIOUS CD
LAST CARD
EOF ON SYSTEM INPUT
PROC'G GBLX, LCLX STMT
- EDITING MACRO INSTRUCTION
SUBSTITUTEC OP CODE FOUND
SWITCH
-
-
PROCESSING PROGRAMMER MACRO
OPEN COCE
IN SYST"EM MACRO DEFINITION
ICTL PROCESSED IN THIS RUN
~IN
-
-
- SKIP TO MEN!:
SKIP TO ENC
SWITCH
BIT 0 -
COpy STATEMENT
DISPLMNT
DEC
(HEX)
5
6
7
8
9
10
11
SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
1
SXMCRO
SFSTCD
SDINIT
SDENT
SUPDNT
SMDDENTR
SWITCH6
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
PROGRAM
- EXPECT MACRO (EDITING MD' S)
- READ FIRST CARD
- PREPARE TO INIl./CLOSE D'S
- PREPARE lO MAKE D ENlRY
SUPPRESS DIREClORY ENlRY
- MDD ENlRY MADE FOR lHIS MACRO
SWITCH
1
SUBLST
POSSUBL
SCNCAT
SKWPRM
PROTOCAL
SKPNAME
SPRMER
SENDST
SWITCH7
BIT o
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
- PROCESSING SUBLIST
- FIRST SCAN OF SUBLIST CANDIDATE
- CONCATENATION IN OPERAND
- PROCESSING KEYWORD PARAMETER
- EDITING PROlO/~~CRO CALL
SKIP TO OP CODE FIELD
- PARAMElER ERROR
- END STATEMENl ENCOUNlERED
SWITCH
1
SNMFND
SNOFND
SNOSMCRO
SBDPROTO
SNOSYSMD
SDTCMT
SASTCMT
STRCMT
SWITCH8
BIT o
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
- NAME FOUND
- FIELD NOl FOUND
- NO MACRO SlMl IN SYS MAC DEF
BAD PROTOTYPE STAlEMENl
- SYSTEM MAC CEF NOT FOUND
. * TYPE COlv1MENlS
* TYPE CO!1MENT
* TYPE COMMENT
SWITCH
1
SENAME
SEOPCD
SEOPND
SWITCH9
BIT 5
BIT 6
BIT 7
PROGRAM
- PRESENTLY EDITING NAME FIELD
- PRESENTLY EDITING OP CODE FIELD
- PRESENTLY ECITING OPERAND FIELD
SWITCH
1
SINCPY
SISEQ
SNOCNT
SMAC
AOTSW
BIT 0
BIT 1
BIT 2
BIT 3
PROGRAM
- IN COpy COCE
SEQ CHECK (SET BY ISEQ)
- CNT'N NOT ALLOWED (SET BY ICTL)
- MACRO STMT COPIED AT THIS LEVEL
SWITCH
BIT o
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
-
(OOOA)
AOEND
AOMEND
AICOPY
AOPSYN
AOCOPYX
AOMACROX
AOPENCDX
AOKBTNPM
GSCNSW
END STATEMENT
- MEND STATEMENl'
- ICTL/COPY STATEMENT
- OPSYN STATEMENl
- ILLEGAL WITHIN COpy CODE
- ILLEGAL WITHIN MACRO DEF
- ILLEGAL WITHIN OPEN CODE
- ALLOWED BElWEEN PROG'R MACRO
SWITCH
(OOOB)
GQST
GSUBS
GAIF
METSW
PARMSTAT
BIT 0
BIT 1
BIT 2
BIT 3
PROGRAM
- ODD QUOTE CHECKER
- FIELD NEEDS SUBSlIl'UTION
- AIF STATEMENT BEING SCANNED
- META TEXT INDICATION
SWITCH
(0005)
( 0006)
(0007)
(0008)
(0009)
1
Data Areas
97
DISPLMNT
DEC
(HEX)
12
13
14
15
16
18
20
24
28
32
36
40
44
48
52
56
60
64
68
72
76
80
84
88
108
112
116
98
SIZE
FIELD
NAME
DESCRIPTION: CONTENTS,
MEANING/USE
ENTERED FROM MIPR~OIN ROUTINE
OPERAND TREAIED AS DUMMY
DISALLOW SCI
LEFT PARENIHESIS WAS READ
END OPERANC - COMMA PASSED
END OPERANC - EQUAL SIGN PASI
- ODD QUOIE SIATUS
- NEW CARD WAS READ
SWITCH
BIT 0
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
-
1
DMIENT
DUMOP
DSDTX
DLPRN
DECMA
DEEQL
DQUOT
DNOCRD
NAMBYT
BIT 0
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
-
1
NQTSTG
NNALFA
NCNCAT
NMPURE
NNTGER
NOSYM
NSSYM
NVSYM
GSUMRY
(OOOE)
RQTSTG
RNALFA
RCNCAT
RMPURE
RNTGER
ROSYM
RSSYM
RVSYM
MSERR
BIT 0
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
(OOOF)
(0010)
(0012)
(0014)
(0018)
(001C)
(0020)
(0024)
(0028)
(002C)
(0030)
(0034)
(0038)
(003C)
(0040)
(0044)
(0048)
(004C)
(0050)
(0054)
(0058)
(006C)
(0070)
(0074)
MXVS
MXRPRN
SDENTR
SDENTR1
DDNDX
DSTGEND
ENDATA
FPTRSV
INPUT
IPTRSV
IRTNSV
OUTADR
VECPTR
FSTGL
AERRSTK
ESTKNDX
DSTGBGN
DSTGADJ
DSTGNDX
STGNDX
EDTSVX
EDTSVY
EDTSVZ
OCPTRSV
INTERMET
MEZZOPTR
BIT 0 - INVALID VARIABLE SYMBOL
BIT 1 EXCESSIVE RIGHI PARENTHESES
DIRECTORY ENTRY INDEX
DIR INDEX FOR EXTRN/WXIRN OPND
D ENTRY INDEX
DESTINATION AREA END PLUS 1
END OF DATA IN WORK BUFFER
FIELD POINTER SAVE AREA
INPUT WORK BUFFER ADDRESS
INPUT BUFFER ADDRESS SAVE AREA
RETURNED ADDRESS SAVE AREA
OUTPUT BUFFER LOCATION
PARAM VECTOR POINI'ER SAVE AREA
BEGIN OF STRING (PARAM)
ERROR MSG STACK ADDRESS
ERROR MSG STACK INDEX
DESTINATION AREA POINIER
DEST. AREA POINTER AFIER ADJ.
DESTINATION AREA INDEX
DISPATCH AREA INDEX
RETURN/TLINK REG SAVE
RETURN POINTER SAVE AREA
R15,R3 SAVE AREA
OPCODE POINTER SAVE AREA
INTERMEDIATE LOCATION IN MT
INTERMEDIATE LOC IN WORK AREA
(OOOC)
(OOOD)
1
2
2
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
20
4
4
4
-
QUOTED STRING
FIRST CARD NOI ALPHA
CONCATENA~ION
IMPURIIY (PASSED END COLUMN)
INTEGER (DECIMAL)
- 0 SYM
- SEQUENCE SYMBOL
V SYM
SWITCH
-
QUOTED SIRING
FIRST CHARACIER NOI ALPHA
CONCATENATION
IMPURIIY
(PASSED END COLUMN
INTEGER (DECIMAL)
- ORDINARY SYMBOL
- SEQUENCE SYMBOL
- VARIABLE SYMBOL
SWITCH
DISPLMNT
DEC
(HEX)
120
124
128
132
136
140
144
148
152
156
196
200
228
252
256
260
264
268
272
276
280
288
296
298
300
302
304
306
308
310
312
316
320
324
328
332
336
340
344
348
352
356
360
364
368
372
572
628
632
636
640
704
706
772
776
780
781
782
854
856
( 0078)
(007C)
( 0080)
(0084)
(0088)
(008C)
(0090)
(0094)
(0098)
(009C)
(00C4)
(00C8)
(00E4 )
(OOFC)
(0100)
(01 04)
(01 08)
(010C)
(0110)
(0114)
(011 8)
(0120)
(0128)
(012A)
(012C)
(012E)
(0130)
(0132)
(0134)
(0136 )
(0138)
(013C)
(0140)
(0144)
(0148)
(014C)
(0150)
(0154)
(0158)
(015C)
(0160)
(0164)
(0168)
(016C)
(0170)
(0174)
(023C)
(0274)
(0278)
(027C)
(0280)
(02CO)
(02C2)
(0304)
(0308)
(030C)
(030D)
(030E)
(0356)
(0358)
SIZE
4
4
4
4
4
L~
4
4
4
t~ 0
4
28
2lJ
I~
4
4
l~
4
4
4
8
8
2
2
2
2
2
2
2
2
4
4
4
4
4
4
4
FIELD
NAI>lE
OPNDPTR
RTNSV
MIOPNDSV
NAHP
NAl>lL
NAl>1P1
NAl>lL1
NOTESV1
NOTESV2
SEQSV
COPYSV2
COPYSV3
COPYSVIJ
HICVAL
TBGLN
TSRCLN
TCNTLN
PBGLEN
PNDLEN
ENDCOL
SMt"\CNAJJI
COPYCODE
COPYLN
DSTGLN
OCSAVE
PRNLVL
FLAGBT
DTLENG
OPNDCTR
MINDIF
MTXTP
MINPUT
MINPSTD
STNPSTD
I·UNPADJ
STNPADJ
OPCDPTR
LJ
END~iIlINUS 1
BAeRO NANE SAVE A.~EA
COpy CODE
COpy CODE LENGTH
STRING LENGTH
INTERNAL OP CODE SAVE AREA
PAREN LEVEL COUNTER
FLAG BYTE SAVE AREA
DATA LENGTH
OPERAND COUNTER
DIF BETt'lEEN I'1INPU'I ANI: INPU'!
MI/PROTO l>lETA TEX'I POIN'IER
CURRENT MI DATA AREA POIWIER
STANDARD MINPUT SAVED
STANDARD INPUT SAVED
ADJUSTED MINPUT SAVED
ADJUSTED INPUT SAVED
OP CODE'FIELD POINTER
END OF DATA AREA PLUS 1
ED SECT BASE REG SAVED
SAVE END OF DATA AREA-l"1
COLur·1N COUNTER
INDEXP SAVE AREA
SAVE STANDARD MINDIF
RSTACI~ NEXT AVAILABLE LOCA'rION
END OF RST,ACK + 1
MAXIMUH OF 25 ENTRIES
COpy CODE RECUL:.)ION S'IACI(
5 ENDING ADDRESS OF CS'IK+ 1
6 CSTI{ BEGIN ADDRESS
7 CSTK NEXT AVAILABLE LOCATION
REGISTER SAVE AREA
ERROR NSG COUNT - MAX 5 NSGS .•
ERROR 11SG STACK
LAST STACK ELEMENT PO INTER
START OF STACI{--CONS'IAN'I
OPERATOR
BINDING FACTOR
MAXIl1UM OF 35 OPERATORS IN
SET VAR TYPE SAVED FOR NANE
STRING COUNTER
Data }\re2s
99
DISPLMNT
DEC
(HEX)
857
858
900
904
908
912
916
920
928
932
938
939
944
948
952
956
960
964
968
972
976
980
984
988
992
996
1000
1004
1008
1012
1016
1020
1022
1023
1024
1028
1030
1032
1033
1034
1038
1040
1041
1044
1048
1052
1056
1058
(0359)
(035A)
(0384)
(0388)
(038C)
(0390)
(0394)
(0398)
(03AO)
(03A4)
(03AA)
(03AB)
( 03BO)
(03B4)
(03B8)
(03BC)
(03CO)
(03C4 )
(03C8)
(03CC)
( 03DO)
(03D4)
(03D8)
(03DC)
( 03EO)
(03E4)
(03E8)
(03EC)
(03FO)
(03F4)
(03F8)
(03FC)
(03FE)
(03FF)
(0400)
(0404)
(0406)
(0408)
(0409)
(040A)
(040E)
(0410)
(0411 )
(0414)
(0418)
(041C)
(0420)
(0422)
SIZE
1
42
4
4
4
4
4
8
4
6
1
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
2
1
1
4
2
2
1
1
4
2
1
3
4
4
4
2
1
FIELD
NAME
CNTCTR
SEQSVT
ADJSV
VSRSV
VSRSV1
MPOPSV
NEXPSV
SUBSAVE
REGSAVE3
DNTERR
DSEVCD
DERRCD
FREESTRT
VSDSTRT
MDDSTRT
SSRDSTRT
VSDSLOT
OSRDSTRT
MDDSLOT
CURMDDPT
REGSAVE1
GTMVALOC
HIBYTEO
MDDCHN
MDDCNT
OPSCHN
GTPVALOC
GTKVALOC
GTLDALOC
GTGVALOC
GTSDALOC
SSRAPDIS
SWITCHA
CONTINUATION CARD COUN~ER
SEQ FIELD - COMPARE V. SEQSV
RETURN POINTER SAVED HERE
VSRTN RETURN LINKAGE
HEADER DATA POINTER
MPOPND ROUTINE RE~URN LINKAGE
RETURN LINKAGE SAVED
MPOPSVjNEXPSV SAVE AREA
REGISTER SAVE AREA
ENTRY POINT TO LOG ERROR
SEVERITY CODE
ERROR CODE
PTR TO START OF DICT WORK AREA
PTR TO START OF VARB SYMB DIR
PTR TO START OF MACR tEFN DIR
PTR TO START OF SEQ SYMB REF DT
PTR TO NEXT AVAIL VSD ENTRY
PTR TO START OF ORD SYMB REF DT
PTR TO NEXT AVAIL MDD ENTRY
PTR TO CURRENT MDD EN~RY
REGISTER SAVE AREA
MACRO DEFINITION VECTOR LENGTH
FULL WORD WORK AREA
MASTER LINK, CHAINED MOD ENTRYS
NUMBER OF MDD ENTRYS
MASTER LINK, CHAINED OPSYN ENTR
POSITIONAL PARAM VECTOR LENGTH
KEYWORD PARAM VECTOR LENGTH
LOCAL DICTIONARY LENG~H
GLOBAL VECTOR LENGTH
SEQ SYMB REFER DICT LENG~H
DISPL IN SSRD FOR NEX~ ENTRY
PROGRAM SWITCH
FNDFLG
NOTEFIL2
LSTSYSMS
ITERSW
FSWITCH
GTODALOC
OSRAPDIS
SSDLNGTH
SSFLGVAL
SREFTYPE
BIT o - MATCHING DIRECT ENTRY FOUND
BIT 1 - NOTE OF NEXT RECORD REQ'D
BIT 2 SYSTEM MACRO EDIT COMPLETED
BIT 3 SYSTEM VARIABLE DEFINITIONS
FIRST RECORD WRITTEN NOTED
ORD SYMB REF DICT LENGTH
DISPL IN OSRD FOR NEX~ ENTRY
LENGTH OF SSRD ENTRY
TEXT FLAG FOR SEQ SYME REFER
RECORD TYPE, SEQ SYME REFER
FILLER FOR ALIGNMENT (REQ'D)
LENGTH OF OSRD ENTRY
TEXT FLAG FOR ORD SYME REFER
RECORD TYPE, ORD SYMB REFER
REGISTER SAVE AREA
FULL I/O AREA LENGTH
CURRENT I/O AREA ADDRESS
CURRENT I/O AREA LENG~H
PROGRAM SWITCH
OSDLNGTH
OSFLGVAL
OREFTYPE
REGSAVE2
PIOPARMB
PIOPARMA
PIOPARMC
IOCID
IZRO
lONE
ITWO
ITRE
100
DESCRIPTION: CONTEN'rS,
MEANING/USE
BIT o BIT 1 BIT 2 ..
BIT 3 -
IOCLNG - OPCODE
LENGTH REDEFINED
IOCTYD - OPCODE
TYPE REDINEC
DISPLMNT
DEC
(HEX)
1059
1060
1061
1062
1063
1071
1080
1112
1128
(0423)
(0424)
(0425)
SIZE
DESCRIPTION: CONTENTS,
MEANING/USE
1
CONCODE
PROGRAM SWITCH
1
BO
B1
B2
B3
B4
B5
B6
B7
ATTRSV
BIT o
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
- NOT
- NOT
- NOT
- NOT
- NOT
- NOT
- NOT
- NOT
SWITCH
BIT o
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
PROGRAM
-
1
ATO
AT1
AT2
AT3
AT4
AT5
AT6
AT7
MCALL
SWITCH
MCLA
MCLC
MCMPLX
MSLST
FLGBYT
BIT 0
BIT 1
BIT 2
BIT 4
PROGRAM
SETA TYPE
SETC TYPE
COMPLEX STA'IE
SYSLIS'I
SWITCH
VTYP1
VTYP2
·VPTYP
VSNS
VSLS
VDIM
VSTP1
VSTP2
NOTESAVE
SAVENOTE
REGSTACK
BIT o - 0& 1: 00 GLOEAL; 10-NOT DEFINED
01 LOCAL; 11-PARAMETER
BIT 1 BIT 2 - POSITIONAL/KEYWORD
SYSTEM/NON - SYS'IEM
BIT 3 SYSLIS'IjNON-SYSLIS'I
BIT 4 BIT 5 - DIMENSIOND/NON-DIMENSIONED
SUBTYPE
BIT 6 SUBTYPE·
BIT 7 NOTE OF START OF MACRO DEF'INTN
NOTE OF START OF DICT DATA FILE
REGISTER SAVE AREA
PATCH AREA
END OF MODULE COMMON AREA
(0426)
(0427)
(042F)
(0438)
(0458)
(0468)
FIELD
NAME
8
9
32
16
ENDEDSCT
USED
USED
USED
USED
USED
USED
USED
USED
Data Areas
101
FIELD
NA~E
ADJSV
*AERRSTK
AICOPY
ALAST
AOCOPYX
AOEND
AOKBTNPM
AOMACROX
AOMEND
AOPENCDX
AOPSYN
AOTSW
ATTRSV
ATO
AT1
AT2
AT3
A'I' 4
AT5
AT6
AT7
*BCSTK
BO
B1
B2
B3
B4
B5
B6
B7
CNTCTR
COLCTR
CON CODE
COPYCODE
COPYLN
COPYSV2
COPYSV3
COPYSV4
CSTK
*CSTKADR
CURMDDPT
DDNDX
DECMA
DEEQL
*DERRCD
DLPRN
DMIENT
DNOCRD
DNTERR
DQUOT
DSDTX
*DSEVCD
DSTGADJ
DSTGBGN
*DSTGEND
DSTGLN
DSTGNDX
*POINTER
102
DISPLACEMENT
DECIMAL (HEX)
900
56
9
776
9
9
9
9
9
9
9
9
1060
1060
1060
1060
1060
1060
1060
1060
1060
632
1059
1059
1059
1059
1059
1059
1059
1059
857
352
1059
288
296
196
200
228
572
636
972
18
11
11
939
11
11
11
932
11
11
938
68
64
20
298
72
(384)
(38)
(9)
(308)
(9)
(9)
(9)
(9)
(9)
(9)
(9)
(9)
(424)
(424)
(424)
(424)
(424)
(424)
(424)
(424)
(424)
(278)
(423)
(423)
(423)
(423)
(423)
(423)
(423)
(423)
(359)
( 160)
(423)
( 120)
( 128)
(C4)
(C8)
(E4)
(23C)
(27C)
(3CC)
( 12)
(B)
(B)
(3AB)
(B)
(B)
(B)
(3A4)
(B)
(B)
(3AA)
(44 )
(40)
(14 )
(12A)
(48)
FIELD
NAME
DTLENG
DUMOPND
EDTSVX
EDTSVY
EDTSVZ
* EN DATA
ENDCOL
ENDEDSCT
ENDWKA
ERRCNT
ERRSTK
* ESTKNDX
FLAGBT
FLGBYT
FNDFLG
*FPTRSV
FREESTRT
FSTGL
FSWITCH
GAIF
GQST
GSCNSW
GSUBS
GSUMRY
GTGVALOC
GTKVALOC
GTLDALOC
GTMVALOC
GTODALOC
GTPVALOC
GTSDALOC
HIBYTEO
HICVAL
*INPUT
INTERMET
'IOCID
lONE
*IPTRSV
*IRTNSV
ITERSW
ITRE
ITWO
IZRO
LSTSYSMS
MCALL
MCLA
MCLC
MCMPLX
MDDCHN
MDDCNT
MDDSLOT·
MDDSTRT
METSW
MEZZOPTR
MINDIF
MINPADJ
MINPSTD
MINPUT
*POINTER
DI SPLACEM.ENT
DECIMAL (HEX)
306
11
80
84
88
24
276
1128
340
704
706
60
304
1062
1022
28
944
52
1023
10
10
10
10
13
1012
1004
1008
980
1024
1000
1016
984
252
32
112
1058
1058
36
40
1022
1058
1058
1058
1022
1061
1061
1061
1061
988
992
968
952
10
116
310
328
320
316
( 132)
(B)
(50)
(54)
(58)
( 18)
(114 )
(468)
( 154)
(2CO)
(2C2)
(3C)
( 130)
(426)
(3FE)
( 1C)
(3BO)
(34)
(3FF)
(A)
(A)
(A)
(A)
(D)
(3F4)
(3EC)
(3FO)
(3D4)
(400)
(3E8)
(3F8)
(3D8)
(FC)
(20)
(70)
(422)
(422)
(24)
(28)
(3FE)
(422)
(422)
(422)
(3FE)
(425)
(425)
(425)
(425)
(3DC)
(3EO)
(3C8)
(3B8)
(A)
(74)
( 136)
( 148)
( 140)
(.13C)
FIELD
NA~E
MIOPNDSV
MPOPSV
MREGSV
MSERR
MSLST
M.TXTP
MXRPRN
MXVS
NAMBYT
NAML
NAML1
NCNCAT
*NCSTK
NEXPSV
NMPURE
NNALFA
NNTGER
NOSYM
NOTEFIL2
NOTESAVE
NOTESV1
NOTESV2
NQTSTG
*NRSTK
NSSYM
NVSYM
OCPTRSV
OCSAVE
OFPTRSV
OPCDPTR
OPNDCTR
OPNDPTR
OPSCHN
OREFTYPE
OSDLNGTH
OSFLGVAL
OSRAPDIS
OSRDSTRT
*OUTADR
PARMSTAT
PBGLEN
PIOPARMA
PIOPARMB
PIOPARMC
PNDLEN
POSSUBL
PRNLVL
PROTOCAL
*RAVSP
RCNCAT
REGSAVEl
REGSAVE2
REGSAVE3
REGSTACK
R~PURE
RNALFA
RNTGER
ROSYM
*POINTER
DISPLACEMENT
DECIMAL (HEX)
128
912
344
14
1061
312
14
14
12
136
144
12
628
916
12
12
12
12
1022
1063
148
152
12
368
12
12
108
300
356
336
308
120
996
1041
1038
1040
1028
964
44
11
268
1052
1048
1056
272
5
3.02
(80)
(390)
( 158)
(E)
(425t
( 138)
(E)
(E)
(C)
(88)
(90)
(C)
(274)
(394)
(C)
(C)
(C)
(C)
(3FE)
(427)
(94)
(98)
(C)
( 170)
(C)
(C)
(6C)
( 12C)
(164)
( 150)
( 134)
(78)
(3E4)
(411)
(40E)
(410)
(404)
(3C4)
(2C)
(B)
( 10C)
(41C)
(418)
(420)
(110)
(5)
( 12E)
5
(5)
364
13
976
1044
928
1080
13
13
13
13
( 16C)
(D)
(3DO)
(414 )
(3AO)
(438)
(D)
(D)
(D)
(D)
FIELD
NAME
RQTSTG
RSSYM
RSTACK
RTNSV
RVSYM
SABORT
SALLCT
SASTCMT
SAVENOTE
SAVMALL
SBDPROTO
SBYCNT
SBYONE
SCMTCT
SCNCAT
SCOPY
SCTLRTN
SDENT
SDENTR
SDENTR1
SDINIT
SDTCMT
SENAME
SENQST
SEOPCD
SEOPND
SEQSV
SEQSVT
SFSTCD
SGBLCL
SICTL
SINCPY
SINEOF
SISEQ'·
SKPEND
SKPMND
SKPNAME
SKYiP~
SLSTCD
SMAC·.
SMACNAM
SMDDENTR
SMDEF
sM.f····
SMISCN
SNMFND
SNOACTR
SNOCNT
SNOFND
SNOPND
SNOPSYN
SNOSMCRO
SNOSYSMD
SNXTCT
SONECD
SONECT
SOPNCD
SPGRMD
DISPLACEMENT
DECH-1AL (HEX)
13
13
372 .
124 '
13
3
1
6
1071
640
6
1
1
2
5
4
1
4
15
16
4
6
-7
5
7
7
156
858
4
2
3
8
2'
8
3
')
5
.'5
,2
8
280
.4
0
'2
Q
,6
. 3
"8
'6
i
0
.6
6
2
1
1
3
3
(D)
(D)
(174)
. (7C).
(D)
. (3)
. (1)
(6)
(42F)
(28'0)
(6) .
( 1) .
( 1)
(2)
(5) .
(4)
( 1)
(4)
(F)
(10)
(4)
, (6)
- :(7):.
(5 )
(7)
(7)
(ge)
(35A)
,( 4)'
(2)
(3)
(8) ,
'(2) .
(8)'
(3)
(3)
(5)
(5)
(2)
(8)
( 118)
(4)
(oj
(2)
(0)
(6)
(3)
(8) .
(6),
( 1), .
(0)
(6) .
(6)
,(2)
( 1)
( 1)
(3)
(3)
*POINTER
Data Areas
103
FIELD
NAME
SPRMER
SPRVCT
SREFTYPE
SSDLNGTH
SSFLGVAL
SSRAPDIS
SSRDSTRT
SSYSMD
STACK
STGCNT
STGNDX
STNPADJ
STNPSTD
STRCMT
SUBLST
SUBSAVE
SUBSOP
SUPDNT
SVENDWKA
SVLAST
SVMINDIF
SWITCHA
SWITCH1
SWITCH2
SWITCH3
SWITCH4
SWITCH5
SWITCH6
SWITCH7
SWITCH8
SWITCH9
SXMCRO
SXPRTO
TBGLN
TCNTLN
TEMPBIND
TEMPOP
TSRCLN
VDIM
VECPTR
VPTYP
VSDSLOT
VSDSTRT
VSFLG
VSLS
VSNS
VSRSV
VSRSV1
VSTP1
VSTP2
VTYP1
VTYP2
*POINTER
104
DISPLKCEMENT
DECIMAL (HEX)
5
2
1033
1030
1032
1020
956
3
782
856
76
332
324
6
5
920
2
4
348
772
360
1022
0
1
2
3
4
5
6
7
8
4
0
256
264
781
780
260
1062
48
1062
960
948
854
1062
1062
904
908
1062
1062
1062
1062
(5)
(2)
(409)
(406)
(408)
(3FC)
(3BC)
(3)
(30E)
(358)
(4C)
( 14C)
( 144)
(6)
(5)
(398)
(2)
(4)
( 15C)
(304)
(168)
(3FE)
(0)
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(4)
(0)
(100)
(108)
(30D)
(30C)
(104)
(426)
(30)
(426)
(3CO)
(3B4)
(356)
(426)
(426)
(388)
(38C)
(426)
(426)
(426)
(426)
ENDFIL
DSECT NAME:
LOAD MODULE:
SIZE:
IFOX11
3
CREATED BY:
IFNX1J
REFERENCED BY:
IFNX2A
UPDATED BY:
FUNCTION:
END-OF-SEGMENT RECORD FOR TEST DICTIONARY FILE
OPERATIONS DIAGRAMS:
DISPLMNT
DEC
(HEX)
o
2
(0000)
(0002)
SIZE
2
1
FIELD
NAME
EFILRL
EFILRT
DESCRIPTION:
MEANINGjUSE
CONTEN~S,
RECORD LENGTH
X'10' RECORD TYPE
2 EY'IES
1 EY'IE
Data Areas
105
ENDSEG
DSECT NAME:
LOAD MODULE:
SIZE:
IFOX11
3
CREATED BY:
IFNX1J
REFERENCED BY:
IFNX2A
UPDATED BY:
FUNCTION:
END-OF-SEGMENT RECORD FOR TEST SEGMENT
OPERATIONS DIAGRAMS:
DISPLMNT
DEC
(HEX)
o
2
106
(0000)
(0002)
SIZE
2
1
DIC~IONARY
5
FIELD
NAME
ESEGRL
ESEGRT
DESCRIPTION: CONTENTS,
MEANINGjUSE
RECORD LENGTH
X'10' RECORD TYPE
2 EYTES
1 EYTE
FILE
ERRIN
DSECT NAME:
LOAD MODULE:
SIZE:
IFOX51
22
CREATED BY:
IFNX5C
REFERENCED BY:
IFNX5V
UPDATED BY:
FUNCTION:
ERROR INDICATOR
OPERATIONS DIAGRAMS:
DISPLMNT
DEC
(HEX)
0
2
3
4
6
7
SIZE
(0000)
(0002)
(0003)
(0004)
(0006)
(0007)
FIELD
NAME
ERRFLD
ERRID
ERRLEN
ERRNUM
ERRSTMT
NUMERR
2
1
1
2
1
15
21
DESCRIPTION: CONTENTS,
,FIELD. '
NAME
ERRLEN
ERRID
NUMERR
E'RRSTMT
ERRNUM
ERRFLD
MEANIN~;USE
"
ERROR, RECORD LENG'IH
'ERROR' 'IDENTIFIER '
NUMBER OF ,ERRORS
ERROR. STATMENT NUMBER,
ERROR NUMBER
REST OF ERRORS
DISPLACEMENT
DECIMAL (HEX)
7
(7)
2
o
(2)
(0)
6
(6 )
4
3
(4)
(3)
*POINTER
Data Areas
107
ERRMESS
DSECT NAME:
LOAD MODULE:
SIZE:
IFOX11
11
CREATED BY:
IFNX1A
REFERENCED BY:
IFNX1A,IFNX1J,IFNX1S,IFNX3A,IFNX3N
UPDATED BY:
FUNCT ION:
ENTRY IN ERROR MESSAGE STACK
OPERATIONS DIAGRAMS:
DISPLMNT
DEC (HEX)
0
1
2
3
108
(OOOO)
(OOO1)
(OOO2)
(OOO3)
SIZE
0
1
1
8
FIELD
NAME
EMSGSVTY
EMSGCODE
ENTRYLNG
EMSGNTRY
DESCRIPTION: CONTENTS,
MEANING/USE
ERROR
ERROR
ERROR
ERROR
MSG
MSG
MSG
MSG
SEVERITY COI::E
CODE
ENTRY LENGTH
ENTRY
FAREl'JT
DSECT NAME:
LOAD MODULE:
SIZE:
IFOX5 °1
3
CREATED BY:
IFNX5l-1
REFERENCED BY:
IFNX5N
UPDATED BY:
FUNCTION:
MAPS OPCODE RESTRICTIONS
21, 22
OPERATIONS DIAGRAMS:
DISPLMNT
DEC
(HEX)
0
SIZE
( 0000)
FIELD
NA!1E
Fl·1T
PROGRAM
SNITCH
BIT 0
BIT 4
BIT 6
PROGRAN
NO LITERAL
- LENGTH FIELD
FIRST BIT OF FIALOC
SWITCH
DECIMAL DIGI'I
BIT 0 PROGRAH S~'lITCH
1
(0001)
1
1
(0001)
1
RIDEC
RSST
RSMOD
RSALvv
FENT
FIAL1
FILEN
FM.T
FSNLIT
RIDEC
RIST
RSALW
RSMOD
RSST
VEOP
r~EANING/USE
1
FSNLIT
FILEN
FIAL1
RIST
FIELD
NAME
DESCRIPTION: CONTENTS,
BIT o BIT t.• -
STORAGE HOr:IFIED
ALIGNMENT ALt'~AYS CHECI(ED
DI SPL]l~CE!1ENT
DECIMAL (HEX)
0
0
0
0
0
1
1
1
1
(0)
(0)
(0)
(0)
(0)
(1)
( 1)
(1)
( 1)
1
( 1)
0
(o(~,
*POINTER
Data Areas
109
GBLDEF
DSECT NAME:
LOAD MODULE:
SIZE:
IFOX11
7-13
CREATED BY:
IFNX1J
REFERENCED BY:
UPDATED BY:
FUNCTION:
IFNX2A
IFNX2A
GLOBAL DEFINITION RECORD FOR TEXT
SEGMENT DICTIONARY FILE
OPERATIONS DIAGRAMS:
DISPLMNT
DEC
(HEX)
0
2
3
4
0
1
4
SIZE
2
1
1
(0000)
(0002)
(0003)
(0004)
(0000)
(0001)
(0004)
1
1
3
2
5
FIELD
NAME
GDEFRL
GDEFRT
GDEFF
GDEFSL
GDEFTF
GDEFVP
GDEFD
*SEE FLGBYT IN EDSECT
FIELD
NAME
GDEFD
GDEFF
GDEFRL
GDEFRT
GDEFSL
GDEFTF
GDEFVP
*POINTER
110
DISPLACEMENT
DECIMAL (HEX)
3
0
2
4
0
(4)
(3)
(0)
(2)
(4)
(0)
1
(1)
4
DESCRIPTION: CONTENTS,
MEANINGjUSE
RECORD LENGTH
X'OO' RECORD TYPE
FLAGS *
SYMBOL LENGTH
TEXT FLAG VALUE
VECTOR POINTER
DIMENSION
2 EYTES
1 EYTE
1 EY'IE
1 EYTE
1 EYTE
3 EYTES
2 EYTES
GBLNTRY
DSECT NAME:
LOAD MODULE:
SIZE:
IFOX11
13-19
CREATED BY:
IFNX1J
REFERENCED BY:
IFNX1J
UPDATED BY:
FUNCTION:
GLOBAL VARIABLE ENTRY IN VARIABLE SYMBOL DEFINITION
DIRECTORY (IN-CORE ~'JORK TABLE)
OPERATIONS DIAGRAMS:
DISPLMNT
DEC
(HEX)
0
3
4
5
0
1
4
SIZE
(0000)
(0003)
(0004)
(0005)
(0000)
(0001)
(0004)
3
1
1
2-8
1
3
2
5
FIELD
NAME
GCHAIN
GFLAGS
GLNGTH
GSYMBL
GTFVAL
GVECTR
GDIMEN
DESCRIPTION: CONTEN'fS,
!-1EANI NG jU SE
CHAIN POINTER
FLAGS
SYMBOL LENGTH
VARIABLE SYHBOL
TEXT FLAG VALUE
VECTOR POINTER
DIMENSION
3 BY'IES
1 BY'IE
'I BY'IE
1 BY'IE
3 BY'IES
2 BY'IES
DISPLACEMENT
DECIMAL (HEX)
GCHAIN
GDIMEN
GFLAGS
GLNGTH
GTFVAL
GVECTR
o
o
(0)
(4)
(3)
(4)
(0)
1
(1)
4
3
4
>:(3DlJ)
980
EDSECT
;1024::,>: ,(400)
EDSECT
:1000. '- ,(.3E8)
'EDSECT
1016":
(3F8)
'ED SECT
"(3):
GDNTRY
3'
".(.3 )
3:
GDNTRY
,(1)
1
GBLNTRY
:,'984.
: (3D8)
EDSEC.T
"(FC)
252
EDSECT.'
X5COM':',,:, , 928
(3AO)
X5:COM
227 ,':.-, (E3)
' X5:COM
'1132·, : (I~ 6C)
-.'-'
.'
-'
<-
*POINTER.
*POINTER.
"
-
...
Data Areas
161
\',
~-
FIELD
DSECT
DISPLACEMENT
DECIMAL (HEX)
FIELD
*INPUT
INTERMET
IOCID
lONE
* IPTRSV
*IRTNSV
ITERSW
ITRE
ITWO
IZRO
*JAABORT
*JABORT
*JADINCM
*JAOOUTCM
JALGN
JALOGIC
JBEGCL
JBGNCL
*JBOS
*JBUF
*JBUFFER
JBUFNDX
JCALLS
JCHKFILE
*JCLVLPTR
JCNTCL
JCOMEND
JCOMMON
JCON'ICL
JCTBGN
JCTCHR
JCTLN
*JCURPCH
*JCURPRT
JDBLALL
JDBLBUF
JDCSX
JDECB
JDECK
JDECKID
JDECKIDL
JDECKSEQ
JDEF
JDPASS
JDUMPXO
JDUMPX1
JDUMPX2
JDUMPX3
JDUMPX4
JDUMPX5
JDUMPX6
JDWORD
JECOLPTR
JEERCOD
JEFLGA
JEFLGB
JENDCHK
JENDCL
EDSECT
EDSECT
ED SECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
J
J
J
J
J
J
32
112
1058
1058
36
40
1022
1058
1058
1058
708
704
248
252
309
309
752
JENDCOL
J
JENODATA JERRCD
*JENTRYPT 'J
J
*JEOS
JEPRPOS
JERRCD
JEPSOP
JERRCD
JERCDE
JERRCD
JERECL
JERRCD
JERR
JTEXT
JERRCHK
J
JESD
J
JESDCHK
J
JESDID
J
JESOOFLO J
JESEV
JERRCD
JESTMTNO JERRCD
JEXTB
JTEXT
JFLEBLK
*JFLE
*JFLEBLK1 J
*JFLEBLK2 J
*JFLEBLK3 J
JFWORD1
J
Jl·'WORD2
J
JGEN
JTEXT
JGETLPND JFLEBLK
..TGETLPNT JFLEBLK
JGETLSBF JFLEBLK
JHWORD1
J
JHWORD2
J
JIDR
J
JINDERRF J
JINFILE
J
JINFLAG
J
JINHB
JTEXT
JINLIB
J
*JINMLC
J
JINPC
JTEXT
JINVOPT
J
JIN2ND
J
JIOFLAG
JFLEBLK
JLINK
J
JLIST
J
JLITLNG
J
JLNCT
J
JLNCTKEY J
JTEXT
JLN2
JTEXT
JLN4
JLSTNOTE JFLEBLK
JLVTMDT
J
J
JMAXRL
JMAXRL1
J
J
JMAXRL2
JM.AXRL3
J
JMINBUF
J
J
Jrt..ISLIN
JMISPCH
J
J
JMISPRT
J
*JMLC
*POINTER.
162
J
X5COM
J
JFLEBLK
JFLEBLK
JFLEBLK
J
JFLEBLK
J
X5COM
J
J
J
J
J
J
JOUTCOM
JOUTCOM
J
JFLEBLK
JTEXT
JFLEBLK
J
J
J
JOUTCOM
JTEXT
J
J
J
J
J
J
J
J
J
JERRCD
JERRCD
JERRCD
JERRCD
J
X5COM
(20)
(70)
(422)
(422)
(24)
(28)
(3FE)
(422)
(422)
(422)
(2C4)
(2CO)
(F8)
(FC)
( 135)
( 135)
(2FO)
930
(3A2)
368
32
( 170)
28
38
309
40
376
932
1272
0
720
768
756
772
24
20
321
40
2
0
308
289
288
28
2
788
318
318
318
318
318
318
318
728
5
9
2
3
316
934
(20)
( 1C)
(26)
( 135)
(28)
( 178)
(3A4)
(4F8)
(0)
(2DO)
(300)
(2F4)
(304)
( 18)
(14 )
( 141)
(28)
(2)
(0)
(134 )
( 121)
( 120)
( 1C)
(2)
(314)
( 13E)
(13E)
( 13E)
( 13E)
( 13E)
( 13E)
(13E)
(2D8)
(5)
(9)
(2)
(3)
( 13C)
(3A6)
*POINTER.
DSECT
DISPLACEMENT
DECIMAL (HEX)
722
11
780
372
3
2
10
0
3
316
308
316
784
317
9
6
2
24
72
128
184
736
740
3
40
40
40
744
746
1232
317
776
319
2
319
328
2
317
319
40
308
308
848
298
310
2
2
41
264
246
240
242
244
310
317
317
317
324
(2D2)
(B)
(30C)
(174)
(3)
(2)
(A)
(0)
(3)
( 13C)
( 134)
( 13C)
(310)
( 13D)
(9)
(6)
(2)
( 18)
(48)
(80)
(B8)
(2EO)
(2E4)
(3)
(28)
(28)
(28)
(2E8)
(2EA)
(4DO)
( 13D)
(308)
( 13F)
(2)
( 13F)
( 148)
(2)
( 13D)
( 13F)
(28)
( 134)
( 134)
(350)
( 12A)
( 136)
(2)
(2)
(29)
( 108)
(F6)
(FO)
(F2)
(F4)
( 136)
( 13D)
( 13D)
(13D)
( 144)
FIELD
DSECT
DI SPLACEMEN'I'
DECIMAL (HEX)
JMLCFLAG
Jr.u.OGIC
JMSGL
JMSGLKEY
JNMERR
JNOCNT
JNOSEQPH
JNOTED
JNOTEVAL
JNUM
*JOUTCLOS
JOUTCMND
JOUTFILE
JOUTFLAG
*JOUTMLC
*JOUTOPEN
JOUTSW
JOUT2ND
*JPARM
* JPARMP TR
JPARMS
JPARM1
JPARM2
JPARM3
JPARM4
JPARM4
JPDFLAG
*JPDUMP
JPHBLANK
*JPHNAME
JPHPREF
JPHSUFF
JPRESD
JPRONLY
JPRTONLY
JPSOP
JPT4GET
JPT4READ
JPT4STAR
JPT4WRIT
JPUTLPND
JRECCHK
JRECIN
JRECLIB
JRECPCH
JRECPRT
JREENTR
JREF
JRENl'
JREQOP
JRL
JRLD
JRLDCHK
JSAFE
JSAVE
JSAVETBL
JSEQCL
JSEQLN
J
J
J
J
JTEXT
JTEXT
J
JFLEBLK
J
J
JOUTCOM
JOUTCOM
J
J
J
JOUTCOM
JOUTCOM
J
J
J
J
J
J
J
J
J
J
J
J
J
J
J
JTEXT
JTEXT
J
JTEXT
J
J
J
J
JFLEBLK
J
J
J
J
J
J
JTEXT
J
JTEXT
JFLEBLK
J
J
J
J
J
J
J
321
309
297
310
3
3
320
40
340
310
16
32
778
320
332
12
30
320
308
304
297
308
309
310
311
311
318
336
262
256
256
259
2
3
845
2
321
321
321
321
40
316
348
352
356
360
315
2
309
2
36
308
316
1160
0
384
760
764
*POINTER.
( 141)
( 135)
( 129)
( 136)
(3)
(3)
( 140)
(28)
(154 )
( 136)
(10)
(20)
(30A)
(140)
(14C)
(C)
( 1E)
( 140)
( 134)
( 130)
( 129)
( 134)
( 135)
( 136)
( 137)
( 137)
( 13E)
( 150)
(106)
(100)
(100)
(103)
(2)
(3)
(34D)
(2)
( 141)
( 141)
(141 )
( 141)
(28)
(13C)
( 15C)
( 160)
( 164)
( 168)
(13B)
(2)
( 135)
(2)
(24)
( 134)
( 13C)
(488)
(0)
( 180)
(2F8)
(2FC)
FIELD
DSECT
DISPLACEMENT
DECIMAL (HEX)
JSEVER
*JSLEN
JSRCLN
JSTMT
JSUBNAME
JSUBOPCD
JSUBOPND
*JSYSCLOS
JSYSDATE
JSYSGEN
*JSYSLNK
*JSYSLST
JSYSMAC
*JSYSOPEN
*JSYSPARM
*JSYSPCH
JSYSTIME
JTBLTRT
*JTCLOSE
JTCML
JTCOP
JTCPR
JTERM
JTEST
JTFLGA
JTFLGA1
JTFLGB
JTIOP
JTIOP1
JTIOP2
JTITLE
JTNML
JTNMO
JTNMOCD
JTNMP
JTOCL
J'I'OCO
JTOCOCD
JTOCP
JTOPL
JTOPO
JTOPOCD
JTOPP
JTRLI
JTRTABLE
JTSPR
JTSTC
JTSTL
JTSTL2
JTSTO
JTST02
JTSYMCNT
JWARNFLG
JXREF
JXREFCHK
JYCON
KCOUNT
KLENGTH
J
J
J
J
JTEXT
JTEXT
JTEXT
J
J
J
JOUTCOM
JOUTCOM
J
J
J
JOUTCOM
J
J
JFLEBLK
JTEX'I'A
JTEXTA
JTEXT
J
J
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
X5COM
JTEXTA
JTEXTA
JTEXTA
JTEXT
JTEXTA
JTEXTA
JTEXTA
JTEXT
JTEXTA
JTEXTA
JTEXTA
JTEXT
JTEX'I
844
364
748
310
3
3
3
716
280
846
8
0
309
712
300
4
274
850
20
1
0
12
310
308
2
2
3
4
4
5
70
1
0
0
6
1
0
0
8
1
0
0
10
0
901
14
0
2
1
1
0
16
315
308
316
315
1100
1084
J
JTEXT
JTEXTA
JTEX'I'A
JTEXTA
JTEXTA
JTEXTA
JTEXT
J
J
J
J
X5COM
X5COM
*POINTER.
Data Areas
163
(34C)
( 16C)
(2EC)
( 136)
(3)
(3)
(3)
(2CC)
( 118)
(34E)
(8)
(0)
( 135)
(2C8)
( 12C)
(4)
( 112)
(352)
(14 )
(1 )
(0)
(C)
(136)
( 134)
(2)
(2)
(3)
(4)
(4)
(5 )
(46)
(1 )
(0 )
(0)
(6)
(1)
(0)
(0)'
(8 )
(1)
(0)
(0)
(A)
(0)
(385)
(E)
(0)
(2)
(1)
(1 )
(0)
(10)
( 13B)
( 134)
(13C)
( 13B)
(44C)
(43C)
FIELD
KONSTRT
LATTRIB
LCHAIN
LCNTRL
LDICTR
LDIMEN
LEAVE
LEFTHF
LFLAGS
LHDPTR
LHFLGS
LHIMD
LHLNG
LHOPCD
LHWORK
LISTSW
LITDTL
LITESDID
LITLOCTR
LITPID
LITPOLID
LITRLC
LITRSD
LITRSW
LLNGTH
LMODSW
LNCNT
LOCATN
LOCLEN
LQl
LSTSYSMS
LTDECV
LTFVAL
MCALL
MCHAIN
MCLA
MCLC
MCMPLX
MDDCHN
MDDCNT
MDDSLOT
MDDSTRT
METSW
MEZZOPTR
MFLAGS
MGBLSZ
MINDIF
MINPADJ
MINPSTD
MINPUT
MIOPNDSV
MLCLSZ
MNLl
MNOPRT
MNPSD
MNPTXT
MPOPSV
MREGSV
*POINTER.
164
DSECT.
DISPLACEMENT
DECIMAL (HEX)
FIELD
DSECT
DISPLACEMENT
DECIMAL (HEX)
X5COM
OSRDNTRY
LCLNTRY
RPRINT
LCLNTRY
LCLNTRY
X5COM
X5COM
LCLNTRY
RPRINT
X5COM
X5COM
X5COM
X5COM
X5COM
X5COM
PPIN
PPIN
PPIN
X5COM
PPIN
X5COM
X5COM
X5COM
LCLNTRY
X5COM
X5COM
X5COM
X5COM
X5COM
EDSECT
X5COM
LCLNTRY
EDSECT
1096
1
0
0
1
4
64
24
3
43
44
29
44
28
940
66
19
10
6
1016
12
1012
1018
56
4
1102
20
24
1000
234
1022
57
0
1061
0
1061
1061
1061
988
992
968
952
10
116
3
31
310
328
320
316
128
37
3
65
MSDL
MSEQSZ
MSERR
MSLS'I'
MSYMBL
MTSDNP
MTSW
MTXTNP
MTXTP
MVECTR
MXRPRN
MXVS
NAMBYT
NAML
NAMLl
NAMPRS
NCNCAT
*NCSTK
NEXPSV
NMPURE
NNALFA
NNTGER
NOSEQ
NOSYM
NOTEFIL2
NOTEHS
NOTESAVE
NOTESVl
NOTESV2
NOTEVAL
NOTEWL
NQTSTG
*NRSTK
NSSYM
NUMERR
NVSYM
OBITS
OCHAIN
OCPTRSV
OCSAVE
OCTS
ODEL
OFLAGA
o FLAGS
OFPTRSV
OINTCD
OMAC
OMASK
·ONAME
ONAMEL
OPCDPTR
OPNADR
OPNDCT
OPNDCTR
OPNDPTR
OPNEND
OPNPRS
OPREV
MDVNTRY
MDDNTRY
EDSECT
EDSECT
MDDNTRY
MDDNTRY
X5COM
MDDNTRY
EDSECT
MDDNTRY
EDSECT
ED SECT
EDSECT
EDSECT
EDSECT
X5COM
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
JOUTCOM
EDSECT
EDSECT
X5COM
EDSECT
EDSECT
EDSECT
X5COM
X5COM
EDSECT
EDSECT
EDSECT
ERRIN
EDSECT
X5COM
OPNTRY
EDSECT
EDSECT
MDDNTRY
OPSYNTRY
OPNTRY
OPNTRY
EDSECT
OPNTRY
OPSYNTRY
OPNTRY
OPSYNTRY
OPSYNTRY
EDSECT
X5COM
X5COM
EDSECT
EDSECT
X5COM
X5COM
OPSYNTRY
16
34
14
1061
4
23
1106
15
312
12
14
14
12
136
144
55
12
628
916
12
12
12
30
12
1022
56
1063
148
152
1004
56
12
368
12
3
12
1122
0
108
300
3
3
0
2
356
1
3
2
8
7
336
196
1120
308
120
1152
55
3
~DDNTRY
EDSECT
EDSECT
EDSECT
ED SECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
MDDNTRY
MDDNTRY
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
MDDNTRY
MDDNTRY
X5COM
MDVNTRY
MDVNTRY
EDSECT
EDSECT
8
0
912
344
(448)
(1)
(O)
(0)
( 1)
{4}
(40)
( 18)
(3)
(2B)
(2C)
( lD)
(2C)
( lC)
(3AC)
(42)
( 13)
(A)
(6 )
(3F8)
(C)
(3F4)
(3FA)
(38)
(4)
(44E)
(14 )
( 18)
(3E8)
(EA)
(3FE)
(39)
(0 )
(425)
(0)
(425)
(425)
(425)
(3DC)
(3EO)
(3C8)
(3B8)
(A)
(74)
(3)
( 1F)
( 136)
( 148)
( 140)
( 13C)
(80)
(25)
(3)
(41)
(8)
(0)
(390)
( 158)
*POINTER.
(10)
{22}
{E}
(425)
(4)
( 17)
(452)
(F)
( 138)
{C}
(E)
(E)
(C)
(88)
(90)
(37)
(C)
(274)
(394)
(C)
(C)
(C)
( lE)
(C)
(3FE)
(38)
(427)
(94)
(98)
(3EC)
(38)
(C)
( 170)
(C)
(3)
(C)
(462)
(0)
(6C)
( 12C)
(3)
(3)
(0)
(2)
( 164)
( 1)
(3)
(2)
(8)
(7)
( 150)
(C4)
(460)
( 134)
(78)
(480)
(37)
(3)
FIELD
DSECT
DISPLACEMENT
DECIMAL (HEX)
FIELD
DSECT
DISPLACEMENT
DECIMAL (HEX)
OPRNS
OPSCHN
OPSFLGS
OPSTATTS
OPSTNAM
OPSTNL
OPSYNCH
OPSYNCHN
OPSYNFLG
OREFDP
OREFRL
OREFRT
OREFSL
OREFTYPE
OSDLNGTH
OSFLGVAL
OSPAD
OSRAPDIS
OSRDP
OSRDSTRT
OSRTCP
OSRTDP
OSRTSL
OSSYM
OTFVAL
*OUTADR
OUTSTART
PARENCNT
PARMSTAT
PBGLEN
PCHAIN
PCOMM
PDATA
PERR
PFLAGS
PGEN
PIOPARMA
PIOPARMB
PIOPARMC
PLEN
PLNGTH
PNAME
PNDLEN
POPER
POPND
POSID
POSID
POSOUT
POSSUBL
PPAD
PPFLG
PPIOC
PPRLI
PREGSV
PRINTSW
PRIORDEF
PRNLVL
PRNSAVE
X5COM
EDSECT
OPSTBL
OPSTBL
OPSTBL
OPSTBL
OPSYNTRY
OPSYNTRY
OPSYNTRY
OSREF
OSREF
OSREF
OSREF
EDSECT
EDSECT
EDSECT
OSDIR
EDSECT
OSDIR
EDSECT
OSRTNTRY
OSRTNTRY
OSRTNTRY
OSDIR
OSDIR
EDSECT
X5COM
X5COM
EDSECT
EDSECT
PRHNTRY
X5COM
X5COM
X5COM
PRMNTRY
X5COM
EDSECT
EDSECT
EDSECT
P
PRMNTRY
X5COM
EDSECT
x5COM
x5COH
PPIN
RLDIN
RPRINT
EDSECT
PRMNTRY
PPIN
PPIN
PPIN
X5COM
x5COM
RSYMRCD
EDSECT
X5COM
1321
996
0
1
5
4
0
4
3
3
0
2
6
1041
1038
1040
12
1028
9
964
0
3
6
0
8
44
1088
1224
11
268
0
62
60
57
3
60
1052
1048
1056
0
4
62
272
62
62
6
6
2
5
4
2
4
0
1064
60
5
302
204
PRNSV1
PRNTSV
PROTOCAL
PRPP
PRPU
PSTMT
PSYSGO
PSYSIN
PSYSLIB
PSYSPRIN
PSYSPUNC
PSYSUT1
PSYSUT2
PSYSUT3
PTFVAL
PVECTR
*RAVSP
RCNCAT
RCNTRL
REGSAVE1
REGSAVE2
REGSAVE3
REGSTACK
RELID
RELID
RELOCTR
RELOUT
REP CARD
RESDC
RESDI
RFIELDN
RFIELDX
RFLAG
RFLAG
RFLDI
RFLGA
RFLGB
RIDEC
RIST
RITEM
RLCTR
RLDBYT
RLDFLD
RLDFLG
RLDFLG
RLDLEN
RLDLEN
RLDNAM
RLDVAL
RLDVAL
RLIST
RLNGA
RLNGB
RLNGQ
RMPURE
RNALFA
RNAME
RNTGER
X5COM
X5COM
EDSECT
X5COM
X5COM
X5COM
P
P
P
P
P
P
P
P
PRMNTRY
PRMNTRY
EDSECT
EDSECT
RPRINT
EDSECT
EDSECT
EDSECT
EDSECT
PPIN
RLDIN
X5COM
RPRINT
X5COM
RSYHRCD
RSYMRCD
RSYMRCD
RSYMRCD
PPIN
RLDIN
RSYMRCD
RSYHRCD
RSYMRCD
FARENT
FARENT
RSYMRCD
RSYMRCD
RCARD
RCARD
PPIN
RLDIN
PPIN
RLDIN
RCARD
PPIN
RLDIN
X5COM
RSYMRCD
RSYMRCD
RSYMRCD
EDSECT
EDSECT
RSYr-1RCD
EDSECT
984
1052
5
57
918
60
82
34
26
42
50
58
66
74
0
1
364
13
0
976
1044
928
1080
8
8
1208
11
65
6
6
5
5
2
2
5
2
3
1
1
0
8
10
16
13
13
0
0
1
10
10
1160
12
22
20
13
13
12
13
*POINTER.
(529)
(3E4)
(0)
(1)
(5)
(4)
(0)
(4)
(3)
(3)
(0 )
(2)
(6)
(411 )
(40E)
(410)
(C)
(404)
(9)
(3C4)
(0)
(3)
(6)
(0)
(8)
(2C)
(440)
(4C8)
(B)
( 10C)
(0)
(3E)
(3C)
(39)
(3)
(3C)
(41C)
(418)
(420)
(0)
(4)
(3E)
(110)
(3E)
(3EJ
(6)
(6 )
(2)
(5 )
(4)
(2)
(4)
(0 )
(428)
(3C)
(5)
( 12E)
(CC)
*POINTER.
Data Areas
165
(3D8)
(41C)
(5)
(39)
(396)
(3C)
(52)
(22)
(1A)
(2A)
(32)
(3A)
(42)
(4A)
(0 )
(1 )
( 16C)
(D)
(0)
(3DO)
(414)
(3AO)
(438)
(8)
(8.)
(4B8)
(B)
( 41)
(6)
(6)
(5)
(5)
(2)
(2)
(5)
(2)
(3)
(1)
(1)
(0)
(8)
(A)
(10)
(D)
(D)
(0)
(0)
(1)
(A)
(A)
(488)
(C)
( 16)
( 14)
(D)
(D)
(C)
(D)
FIELD
DSECT
DISPLACEMENT
DECIMAL (HEX)
ROPCDE
ROPCDE
ROSYM
RPSOP
RQTSTG
RRCDL
RSALW
RSMOD
RSST
RSSYM
RSTACK
RSWTS
RSYMC1
RSYMC2
RTNSV
RTYPE
RVSYM
SABORT
SALLCT
SALOC
SASTCMT
SATTRIB
SAVENOTE
SAVMALL
SBDPROTO
SBYCNT
SBYONE
SCMTCT
SCNCAT
SCOPY
SCTLRTN
SDEFNP
SDEFRL
SDEFRT
SDEFSL
SDENT
SDENTR
SDENTR 1
SDINI'I'
SDTCMT
SELFDEFN
SENAME
SENDST
SEOPCD
SEOPND
SEQNUM
SEQSV
SEQSVT
'SFSTCD
SGBLCL
SHIFTN
SICTL
SIGNSW
SINCPY
SINEOF
SISEQ
SKACTRV
SKADNLD
PPIN
RLDIN
EDSECT
RSYMRCD
EDSECT
RSYMRCD
FARENT
FARENT
FARENT
EDSECT
EDSECT
RSYMRCD
RSYMRCD
RSYMRCD
EDSECT
RSYr1RCD
EDSSCT
EDSECT
ED SECT
X5COM
EDSECT
OSRDNTRY
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
SSDE:r'
SSDE:r'
SSDEF
SSDEF
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
X5COM
EDSECT
EDSECT
EDSECT
EDSECT
RCARD
EDSECT
EDSECT
EDSECT
EDSECT
X5COM
EDSECT
X5COM
EDSECT
EDSECT
ED SECT
SKDCTHDR.
SKDCTHDR
4
4
13
2
13
0
1
1
1
13
372
6
12
6
124
4
13
3
1
938
6
3
1071
640
6
1
1
2
5
4
1
3
0
2
11
4
15
16
4
6
1128
7
5
7
7
76
156
858
4
2
1232
3
1105
8
2
8
27
15
*POINTER.
166
(4)
(4)
(D)
(2)
(D)
(0)
( 1)
( 1)
(1)
(D)
(174)
(6)
(C)
(6)
(7C)
(4)
(D)
( 3)
(1)
(3AA)
(6)
(3)
(42F)
(280)
(6)
(1)
(1)
(2)
(5)
(4)
(1)
(3)
(0)
(2)
(B)
(4)
(F)
(10)
(4)
(6)
(468)
(7)
(5)
(7)
(7)
(4C)
(9C)
(35A)
(4)
(2)
(4DO)
(3)
(451)
(8)
(2)
(8)
( 1B)
(F)
FIELD
SKKVADR
SKLDADR
SKLDLNG
SKLOG
SKMPADR
SKNOFSLS
SKNPNLT
SKPEND
SKPMND
SKPNAME
SKSRDPT
SKWPRM
SLSTCD
SMAC
SMACNAM
SMDDENTR
SMDEF
S~I
SMISCN
SNMFND
SNOACTR
SNOCNT
SNOFND
SNOPND
SNOPSYN
SNOSMCRO
SNOSYSMD
SNXTCT
SONECD
SONECT
SOPNCD
SPGRMD
SPRMER
SPRVCT
SREFDP
SREFRL
SREFRT
SREFSL
SREFTYPE
SSDLNGTH
SSDTCP
SSDTNP
SSDTSL
SSFLGVAL
SSPAD
SSRAPDIS
SSRDP
SSRDSTRT
SSSYM
SSYSMD
STACK
STATUS
STFVAL
STGCNT
STGNDX
STMTN
STNPADJ
S1'NPSTD
*POINTER.
DSECT
DISPLACEMENT
DECIMfI.L (HEX)
SKDCTHDR
SKDCTHDR
SKDCTHDR
X5COM
SKDCTHDR
SKDCTHDR
SKDCTHDR
EDSECT
EDSECT
EDSECT
SKDCTHDR
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT EDSECT
SSREF
SSREF
SSREF
SSREF
EDSECT
ED SECT
SSDTNTRY
SSDTNTRY
SSDTNTRY
EDSECT
SSDIR
EDSECT
SSDIR
EDSECT
SSDIR
EDSECT
EDSECT
X5COM
SSDIR
ED SECT
EDSECT
X5COM
EDSECT
EDSECT
12
3
6
1103
9
31
19
3
3
5
0
5
2
8
280
4
0
2
0
6
3
8
6
1
0
6
6
2
1
1
3
3
5
2
3
0
2
6
1033
1030
0
3
11
1032
12
1020
9
956
0
3
782
1201
8
856
76
16
332
'324
(C)
(3)
(6)
(44F)
(9 )
( 1F)
( 13)
(3)
( 3)
(5)
(0)
(5)
(2)
(8)
( 118)
(4)
(0)
(2)
(0 )
(6)
(3)
(8 )
(6)
( 1)
(0)
(6)
(6)
(2)
(1)
( 1)
(3)
(3)
(5)
(2)
(3)
(0)
(2)
(6)
(409)
(406)
(0)
(3)
(B)
(408)
(C)
(3FC)
(9)
(3BC)
(0)
(3)
(30E)
(4B 1)
(8)
(358)
(4C)
(10)
( 14C)
(144)
FIELD
STRADR
STRCI'1T
STRTLC
SUBLST
SUBSAVE
SUBSOP
SUPDNT
SVENDvlKA
SVLAST
SVI-1INDIF
SvlITCHA
S~'7ITCHES
SNITCH1
S~'IITCH2
S~'lITCH3
SvlITCH4
SvlITCH5
S~'l ITCH6
S~'lI'rCH7
S~'lITCH8
m'lITCH9
SXt-1CRO
SXPRTO
SYI>1CNT
SYMDEF
SYMXRF
TATTRIB
TBGLN
TCNTLN
TEMPBIND
TEMPLC
T~1POP
TERMS
TITLE
TOOMANY
TPTEXT
TSEDIT
TSRCLN
TUBEOP
Tt'lASLC
TXTPTR
UADR1
UADR2
UBASD1
UBASD2
UESD
UGARB
ULOCO
UOPCOD
UREG
USINGT
USPHL
USSRT
UVAL
VALOUT
VCHAIN
VCOMPLEX
VDIM
*POINTER.
DSECT
DISPLACEMENT
DECIMAL (HEX)
X5COM
EDSECT
X5COM
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
X5COM
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
EDSECT
X5COM
X5COM
X5COM
OSRDNTRY
EDSECT
EDSECT
EDSECT
X5COM
EDSECT
X5COM
RPRINT
X5COM
X5COM
MDDNTRY
EDSECT
X5COM
X5COM
X5COM
X5COM
X5COM
X5COM
X5COM
UDSECT
X5COM
X5COM
X5COM
UDSECT
X5COM
X5COM
X5COM
UDSECT
RPRINT
VSDENTRY
X5COM
EDSECT
200
6
1080
5
920
2
4
348
772
360
1022
60
0
1
2
3
4
5
6
7
8
4
0
54
48
52
0
256
264
781
1108
780
1200
1
64
57
3
260
1127
57
12
964
972
952
956
2
960
940
948
8
238
58
55
4
28
0
1217
1062
(C8)
(6)
(438)
(5)
(398)
(2)
(4)
( 15C)
(304)
(168)
(3FE)
(3C)
(0 )
( 1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(4)
(0)
(36)
(30)
(34)
(0)
(100)
(108)
(30D)
(454)
(30C)
(4BO)
(1)
(40)
(39)
(3)
(104)
(467)
(39)
(e)
(3C4)
(3CC)
(3B8)
(3BC)
(2)
(3CO)
(3AC)
(3B4)
(8)
(EE)
(3A)
(37)
(4)
( 1C)
(0 )
(4C 1)
(426)
FIELD
VECPTR
VEJBYTE
V EN DPARN
VEOP
VFLAGS
VGDIHEN
VGVECTR
VHIDEFOP
VHIGENOP
VHIREFOP
VJEEOF
VJEOPCOD
VJTACTR
VJTADJII
VJTAGO
VJTAGOB
VJTAIF
VJTAIFB
VJTANOP
VJTCALL
VJTCCW
VJTCMNT
VJTCNOP
VJTCOM
VJTCOPY
VJTCPKEY
VJTCPPOS
VJTCSECT
VJTeXD
VJTDC
VJTDROP
VJTDS
VJTDSECT
VJTDXD
VJTEEDF
VJTEJECT
VJTEND
VJTENTRY
VJTEOF
VJTEOFII
VJTEQU
VJTERROR
VJTEXTRN
VJTGBLA
VJTGBLB
VJTGBLC
VJTHCMNT
VJTICTL
VJTINPe
VJTISEQ
VJTLCLA
VJTLCLB
VJTLCLC
VJTLITII
VJTLITR
VJTLTDC
VJTLTEND
VJTLTLC
DSECT
DISPLACEMENT
DECIMAL (HEX)
EDSECT
RPRINT
X5COM
FARENT
VSDENTRY
VSDENTRY
VSDENTRY
JTEXT
JTEXT
JTEXT
JERRCD
JERRCD
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
48
0
1320
0
3
4
1
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
*POINTER.
Data Areas
167
(30)
(0)
(528)
(0)
( 3)
(4)
(1)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
"(4 )
(4)
(4)
FIELD
VJTLTND
VJTLTORG
VJTMACRO
VJTMEND
VJTMEXIT
VJTMNOTE
VJTOPSYN
VJTORG
VJTPASS
VJTPEND
VJTPMOP
VJTPOP
VJTPPCH
VJTPPKEY
VJTPPPOS
VJTPREP
VJTPRINT
VJTPROTO
VJTPUNCH
VJTPUSH
VJTREPRO
VJTSETA
VJTSETB
VJTSETC
VJTSICTL
VJTSPACE
VJTSTART
VJTSYMBL
VJTSYMII
VJTTITLE
VJTUSING
VJTWXTRN
VLDICTR
VLDIMEN
VLIT
VLNGTH
VLODEFOP
VLOGENOP
VLONOPRN
VLOREFOP
V~AXBIT
VMAXCHAR
VMAXDEC
VMAXHEX
VMAXPARN
VNOPAREN
VNORELOC
VPPAD
VPTYP
VPVECTR
VSDSLOT
VSDSTRT
VSELFDEF
VSFLG
*POINTER.
168
DSECT
DISPLACEMENT
DECIMAL (HEX)
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEY.T
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
JTEXT
VSDENTRY
VSDENTRY
X5COM
VSDENTRY
JTEXT
JTEXT
JTEXT
JTEXT
X5COM
x5COM
X5COM
X5COM
x5COM
x5COM
x5COM
VSDENTRY
EDSECT
VSDENTRY
EDSECT
EDSECT
x5COM
EDSECT
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
1
4
63
4
4
4
4
4
1233
1233
1233
1233
1225
1225
1208
4
1062
1
960
948
1128
854
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
,(4 )
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
(4)
( 1)
(4)
(3F)
(4)
(4)
(4)
(4)
(4)
(4D 1)
(4D 1)
(4D 1)
(4D 1)
(4C9)
(4C9)
(4BS)
(4)
(426)
( 1)
(3CO)
(3B4)
(468)
(356)
FIELD
VSHIFTB
VSHIFTC
VSHIFTD
VSHIFTH
VSLS
VSNS
VSPACE1
VSPACE2
VSPACE3
VSRSV
VSRSV1
VSTATUS1
VSTATUS2
VSTP1
VSTP2
VTFVAL
V'l'YP1
VTYP2
WORKAREA
WRPFLG
XCNTRL
XDE
XDEFOUT
XFLAG
XFLAG
XLENOUT
XOPCDE
XOPCDE
XRECLN
XRECLN
XREFYES
XRFENT
XRFFLG
XRFFLG
XRFLEN
XRFLEN
XRFNO
XRFREF
XRFSTM
XRFSTM
XRFSYM
XRFSYM
XRFVAL
XRFVAL
XSSAV
XSYMOUT
XVALOUT
X5ASW
X5LSAV
X5MSW
X5SW1
X5VSW
ZAPIT
ZDUPSW
*POIN'IER.
DSECT
DISPLACEMENT
DECIMAL (HEX)
X5COM
X5COM
X5COM
X5COM
EDSECT
EDSECT
RPRINT
RPRINT
RPRINT
EDSECT
EDSECT
X5COM
X5COr-l
EDSECI'
EDSECI'
VSDENTRY
EDSECI'
EDSECI'
X5COM
X5COM
RPRINT
RPRINT
RPRINT
PPIN
XRFIN
RPRINT
PPIN
XRFIN
PPIN
XRFIN
X5COM
RPRINT
PPIN
XRFIN
PPIN
XRFIN
X5COM
RPRINT
PPIN
XRFIN
PPIN
XRFIN
PPIN
XRFIN
X5COM
RPRINT
RPRINT
X5COM
X5COM
X5COM
X5COM
X5COM
X5COM
X5COM
1232
1232
1232
1232
1062
1062
0
0
0
904
908
1201
1201
1062
1062
0
1062
1062
1020
57
0
30
25
2
2
10
4
4
0
0
1116
32
14
14
17
17
56
32
15
15
6
6
19
19
1350
1
16
65
212
64
57
63
63
1104
(4DO)
(4DO)
(tWO)
(l~DO)
(426)
(426}
(a)
(0 )
(0)
(388)
(38C)
(4B 1)
(4B 1)
(426 )
(426)
(0 )
(426)
(426)
(3FC)
(39)
(0)
(1 E)
(19)
(2 )
(2 )
(A)
(ll)
(4 )
(0 )
(0)
(45C)
(20)
(E)
(E)
(11 )
(11 )
(38)
(20)
(F)
(F)
(6 )
(6 )
(13 )
(13 )
(546 )
(1 )
(10)
(41 )
(D4)
(40)
(39)
(3 F)
(3F)
(450)
Directory
This section serves as a c~oss-reference between the items in the "Method of Operation"
section and the microfiche listings.
Directory
169
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
ADJUST
ESDID (SYMBOL RESOLUTION PHASE MAIN LINE
CONTROL)
19
IFNX4MOO
IFNX4M
ALIGN
POINT TO CURRENT LEVEL (ASSEMBLY PHASE ALIGNMENT ROUT IN E)
25
IFNX5A20
IFNX5A
ALIGN
SAVE REGISTERS (ASSEMBLY PHASE - ALIGNMENT
ROUTINE)
25
IFNX5A20
IFNX5A
ALIGN
ALIAS FOR IFNX5A21
AL IGNMENT ROUT IN E
25
HNX5A20
IFNX5A
AOP350
(ASSEMBLER OPCODE PROCESSOR - ASSEMBLY
PHASE - BRANCH TABLE AND)
21
IFNX5AOO
IFt~5A
AOP350
IS THIS AN END STATEMENT (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - BRANCH 'l'ABLE AND
21
IFNX5AOO
IFNX5A
AYKON
SET TEXT POINTER (ASSEMBLY PHASE - DC
EVALUATION)
23
IFNX5DO 0
IFNX5D
BKON
CLEAR BI T-LEN3TH (ASSEMBLY PHASE - DC
EVALUATION - PROCESS B-TYPE CONSTANT~
23
IFNX5DOO
IFNX5D
BLDESD
SAVE REGISTERS IN STACK (EXTERNAL SYMBOL
DIcrIONARY SUBROUTINES)
17
IFNXt'EOO
IFNXtlE
BRONTYP
ENTRY POINT -
DICTIONARY INTERLUDE PHASE
9
IFNX2A02
IFNX2A
CALLEND
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
11, 12
IFNX3NOO
IFNX3N
CCW100
GET ALIGNMENT CHECK BITS (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'CCW' STATEMENT)
23
IFNX5AOO
IFNX5A
CKON
SET STEPPER (ASSEMBLY PHASE - DC EVALUATION
- PROCESS C-TYPE CONSTANT)
23
IFNX5DOO
IFNX5D
COMNEND
ENTRY POINT ROUTINES
6
IFNX1JOO
IFNX1J
PTR TO PHASE COMMON AREA (DICTIONARY
INTERLUDE PHAS E)
F5
INTRCOM
IFNX2A
COpy
ENTRY POINT -
EDIT PHASE
3,4
IFNX1AOO
IFNX1A
CSTKENT
ENTRY POINT -
EDIT PHASE
4
IFNX1A10
IFNX1A
CSTKEXT
ENTRY POINT -
EDIT PHASE
4
IFNX1A10
IFNX1A
ASSEMBLY PHASE -
EDIT PHASE DICTIONARY
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO.A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
170
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MOCULE/
MCROFCH
CURFLE
FILE
(POST PROCESSOR PHASE)
F11
X6ACOMM
IFNX6A
CURFLE2
FILE 2
(POST PROCESSOR PHASE)
F11
X6ACOMM
IFNX6A
CURFLE3
FILE 3
(POST PROCESSOR PHASE)
F11
X6ACOMM
IFNX6A
CURRDICT
PTR TO HEADER OF CURRENT DICT
GENERATOR)
(XKE MACRO
Fa
GENCOH
IFNX3A
CURRDICT
PTR TO HEADER OF CURRENT DICT
PHASE DICI'IONARY ROUTINES)
(GENERATE
F8,12
GENCOM
IFNX3N
CURRGLBL
ETR TO CURRENT GLOBAL VECTOR (XKE MACRO
GENERATOR)
13
GENCOM
IFNX3A
CURRGLBL
PTR TO CURRENT GLOBAL VECTOR
PHASE DICTIONARY ROUTINES)
13
GENCOM
IFNX3N
CURRKEYD
PTR TO CURRENT KEYWD PARAM VCTR
GENERATOR)
(XKE MACRO
13
GENCOM
IFNX3A
CURRKEYD
PTR TO CURRENT KEYWD PARAM VCTR
PHASE DICTIONARY ROUTINES)
(GENERATE
13
GENCOM
IFNX3N
CURRLOCL
PTR TO CURRENT LOCAL DICTIONARY
GENERATOR)
(XKE MACRO
13
GENCOM
IFNX3A
CURRLOCL
PTR TO CURRENT LOCAL DICTIONARY
PHASE DICTIONARY ROUTINES)
(GENERATE
13
GENCOM
IFNX3N
CURRPARM
PTR TO CURRENT PARAM TABLE
GENERATOR)
(XKE MACRO
Fa,13
GENCOM
IFNX3A
CURRPARM
PTR TO CURRENT PARAM TABLE
RESOLUTION PREPROCESSOR)
(SYMBOL
Fa
GENCOM
IFNX3B
CURRPARM
PTR TO CURRENT PARAM TABLE
CICTIONARY ROUTINES)
(GENERATE PHASE
Fa
GENCOM
IFNX3N
CURRPOST
PTR TO CURRENT POSIT PARAM VCTR
GENERATOR)
13
GENCOM
IFNX3A
CURRPOST
PTR TO CURRENT POSIT PARAM VCTR (GENERATE
PHASE DICTIONARY ROUTINES)
12
GENCOM
U'NX3N
DATAPTR
DATA AREA POINTER
F11
X6ACOMM
IFNX6A
DCEVAL
ALIAS FOR IFNXSD01
ASSEMBLY PHASE DC EVALUATION - INITIALIZATION
23
IFNXSDOO
IFNXSD
DCEVAL
SAVE ENTRY REGISTERS ~SSEMBLY PHASE EVALUATION - INITIALIZATION)
23
IFNXSDOO
IFNX5D
DCEVAL
POINT TO CURRENT LEVEL (ASSEMBLY PHASE DC EV ALU AT ION - IN IT IAL IZAT ION)
23
IFNXSDOO
IFNXSD
DC0100
GO GET GOOD OPERAND COUNT (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'DC & DS' STATEM
23
IFNX5AOO
IFNX5A
DKON
SET PARAMETER POINTER (ASSEMBLY PHASE CC EVALUATION - PROCESS L-, D-, E-, F-,
23
IFNX5DOO
IFNX5D
22
IFNX5MOO
IFNX5M
22
IFNX5MOO
IFNX5M
DRIVER
DRIVER
(GENERATE
(XKE MACRO
(POST PROCESSOR PHASE)
(MACHINE INSTRUCTION PROCESSOR)
EXIT IF UNRECOVERABLE ERROR
INSTRUCTION PROCESSOR)
(MACHINE
DC
H-~YP
*DATA AREA.
SEE DATA AREA SECTION FOR DETAILED LAYOU~.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
Directory
171
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECTI
DSECT
~lODULE/
MC~OFCH
DROPOO
GET OPERAND POINTER (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'DROP' STATEMENT
24
IFNX5AOO
IFNX5A
DSECT10
DSECT NAME ASSEMBLER OPCODE PROCESSOR ASSEMBLY PHASE - COPY CODE
21,23,24
DSECT10
IFNX5A
DSECT10
DSECT NAME ASSEMBLY PHASE - MAINLINE
CONTROL - DSECT10 DEFINITION (RSYMRC
21
DSECT10
IFNX5C
DSECT14
DSECT NAME SYMBOL RESOLUTION .PHASE DC/DS
EVALUATION
17
DSECT 14
IFNX 4D
DSECT14
DSECT NAME EXTERNAL SYMBOL DICTIONARY
SUBROUTINES
17
DSECT14
IFNX4E
DSECT14
DSECT NAME SYMBOL RESOLUTION PHASE MAIN
LINE CONTROL
17
DSECT14
IFNX411
DSECT14
DS ECT NAME SYMBOL RESOLUTION PHASE DC/DS
EVALUATION
DSECT14
IFNX4N
DSECT6
DSECT NAME EXTERNAL SYI1BOL DICTIONARY
SUBROUTINES
DSECT6
IFNX4E
DSECT6
DS ECT NAME SYMBOL RESOLUTION PHASE MAIN
LINE CONTROL
DSECT6
IFNX411
DS0100
(ASSEMBLER OPCODE PROCESSOR PHASE - 'DC & DS' STATEM)
23
IFNX5AOO
IFNX5A
DS0100
INDICATE ENTRY IS A DS (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'DC & DS' STA'IEM
23
IFNX5AOO
IFNX5A
DXD100
(ASSEMBLER OPCODE PROCESSOR - ASSEMBLY
PHASE - 'DXD' STATEMENT)
23
IFNX5AO 0
IFNX5A
DXD100
INDICATE DXD FOR DCEVAL (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'DXD I STA.'IEMEN'I)
23
IFNX5AOO
IFNX5A
6
IFNX1 JOO
IFNX 1J
6
IFNX1JOO
IFNX1J
EDITSYSM
EDITSYSM
ASSEMBLY
(EDIT PHASE DICTIONARY ROUTINES)
SKIP IT ALL IF OVERLAP OCCURRED
DICTIONARY ROUTINES)
(EDIT PHASE
18
*EDSECT
DSECT NAME EDIT PHASE
EDSECT
IFNX 1A
*EDSECT
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
EDSECT
IFNX1J
*EDSEcr
DSECT NAME CONDITIONAL ASSEMBLY POSTFIX
ROUTINE
EDSECT
IFNX1S
IFNX5AOO
IFNX5A
EJECTO
LOAD NEGAT IVE VALUE IN REGISTER (ASSEMBLER
OPCODE PROCESSOR - ASSEMBLY PHASE - 'SPACE' A
24
*ENDFIL
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
ENDFIL
IFNX1J
*ENDFIL
DSECT NAME DICTIONARY INTERLUDE PHASE
ENDFIL
IFNX2A
*ENDSEG
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
ENDSEG
IFNX1J
*ENDSEG
DSECT NAME DICTIONARY INTERLUDE PHASE
ENDSEG
IFNX2A
10,8
IFNX2AOO
IFNX2A
5
ENDSEGB
ENTRY POINT -
END100
GET OPERAND POINTER (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'END' STA'IEMEN'I)
24
IFNX5AOO
IFNX5A
ENTER
SAVE REGISTERS IN STACK
SUBROUTINES)
17,20,27
IFNX4S00
IFNX4S
DICTIONARY INTERLUDE PHASE
(SYMBOL TABLE
*DATA AREA.
SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NrrMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE 1-1ETHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRA~ ORGANI ZATION SECI'ION.
172
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
ENI'RY
AVE REGIST ERS IN STACK (EXTERNAL SYl1BOL
DICTIONARY SUBROUTINES)
17
IFNX4EOO
IFNXIJE
ENTRY
GET ADDRESS OF PIVOT (SYMBOL RESOLUTION
PHASE MAIN LINE CONTROL)
20
IFNX4MOO
IFNX4M
ENTRYO
IS OPERAND BLANK (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'ENTRY & EXTRN')
24
IFNX5AOO
IFNX5A
ENTRYO
(ASSEMBLER OPCODE PROCESSOR - ASSEMBLY
PHASE - 'ENTRY & EXTRN')
24
IFNX5AOO
IFNX5A
20,27
IFNX4MOO
IFNX4M
EOFIIS
(SYMBOL RESOLUTION PHASE MAIN LINE CONI'ROL)
EQU100
GET NAME RECORD PTR (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'EQU' STATEMEN'I)
24
IFNX5AOO
IFNX5A
ERRBLK
PTR TO ERROR RECORD BUFFER
INTERLUDE PHAS E)
F5
INTRCOM
IFNX2A
(DICTIONARY
*ERRIN
DSECT NAME ASSEMBLY PHASE - MAINLINE
CONTROL - POST PROCESSOR RECORD DEFN
ERR IN
IFNX5C
*ERRIN
DSECT NAME EXPRESSION EVALUATION SUBROUTINE
ERR IN
IFNX5V
*ERRMESS
DSECT NAME EDIT PHASE
ERRMESS
IFNX1A
*ERRMESS
DS ECT NAME EDIT PHASE DICTIONARY ROU'I'INES
ERRMESS
IFNX1J
*ERRMESS
DSECT NAME CONDITIONAL ASSEMBLY POSTFIX
ROUTINE
ERRMESS
IFNX1S
*ERRMESS
DS ECT NAME XKE MACRO GENERATOR
ERRMESS
IFNX3A
*ERRMESS
DSECT NAME GENERATE PHASE DICTIONARY
ROUTINES
ERRMESS
IFNX3N
ERRORO
fASSEMBLER OPCODE PROCESSOR - ASSEMBLY
PHASE - ERROR RECORD PRO)
21
IFNX5AOO
IFNX5A
ERROR 0
SET ERROR RECORDS PRESENT (ASSEr.1BLER OPCODE
PROCESSOR - ASSEMBLY PHASE - ERROR RECORD PRO
21
IFNX5AOO
IFNX5A
ESDBLK 1
ESD BLOCK 1 (SYMBOL RESOLUTION PHASE DC/OS
FJ.J ALU AT ION)
17
DSECT7
IFNX4D
ESDBLK 1
ESD BLOCK 1 (EXTERNAL SYMBOL DlcrIONARY
SU BROUT IN ES)
17,18
DSECT7
IFNX4E
ESDBLK1
ESD BLOCK 1 (SYMBOL RESOLUTION PHASE MAIN
LINE CONTROL)
17
DSECT7
IFNX4M
ESDBLK 1
ESD BLOCK 1 (SYMBOL TABLE SUBROUTINES)
17
DSECT7
IFNX4S
ESD BLOCK 2 (SYMBOL RESOLUTION PHASE DC/OS
17
DSECT7
IFNX4D
ESDBLK2
FJ.J ALUAT ION)
ESDBLK2
ESD BLOCK 2 (EXTERNAL SYMBOL DICTIONARY
SU BROUT IN ES)
17,18
DSECT7
IFNX4E
ESDBLK2
ESD BLOCK 2 (SYMBOL RESOLUTION PHASE MAIN
LINE CONTROL)
17
DSECT7
IFNX4M
ESDBLK2
ESD BLOCK 2 (SYMBOL TABLE SUBROUTINES)
17
DSECT7
IFNX4S
ESYSMAC
BRANCH IF SYS MACROS ALL EDITED (EDIT PHAS E)
6
IFNX1A30
IFNX1A
6
IFNX1A30
IFNX1A
ESYSMAC
(EDIT PHASE)
*DATA AREA.
SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRru1 IN THE METHODS OF OPERATIONS SECTION.
'F', FOLLOV1ED BY A NUMERAL, REFERS TO A FIGURE IN '!HE PROGRAM ORGANI ZATION SECTION.
Directory
173
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
EVAL
ENTRY POINT -
13
IFNX3A03
IFNX3A
EXTRN
SAVE REGISTERS IN STACK
DICTIONARY SUBROUTINES)
17,~0,27,
IFNX4EOO
IFNX4E
EXTRN
TYPE (SYMBOL RESOLUTION PHASE MAIN LINE
CONTROL)
20,27
IFNX4MOO
IFNX4M
EXTRNO
DEFINE EXTRN ERTRY POINT (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'ENTRY & EXTRN')
24
IFNX5AOO
IFNX5A
FARENT
IFNX5M
3
J
IFNX1J
*FARENT
XKE MACRO GENERA'IOR
~XTERNAL
SYMBOL
DSECT NAME MACHINE INSTRUCTION PROCESSOR
FILEl
FILE 1 CODE (EDIT PHASE DICTIONARY
FILE1
FILE 1 CODE (GENERATE PHASE DICTIONARY
ROUTINES)
12
J
IFNX3N
FILE2
FILE 2 CODE
3
J
IFNX1J
FILE2
FILE 2 CODE (XKE MACRO GENERATOR)
13
J
IFNX3A
FILE2
FILE 2 CODE
ROUTINES)
13
J
IFNX3N
FILE3
FILE 3 CODE (EDIT PHASE DICTIONARY ROUTINES)
3
J
IFNX1J
FIND
GET NAME
17,19,20"
IFNX4S00
IFNX4S
FREEEND
PTR TO HIGH END OF WORK AREA (DICTIONARY
INTERLUDE PHASE)
F5
INTRCOM
IFNX2A
FREESTRT
PTR TO LOW END OF WORK AREA (DIcrIONARY
INTERLUDE PHASE)
F5
INTRCOM
IFNX2A
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
5
GBLDEF
IFNX1J
GBLDEF
ENTRY POINT -
DICTIONARY INTERLUDE PHASE
10,8
IFNX2AOO
IFNX2A
GBLDICTR
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
13
IFNX3NOO
IFNX3N
GBLDICTS
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
13
IFNX3NOO
IFNX3N
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
5
GBINTRY
IFNX1J
GBLSK
PTR TO START OF -GLOBAL VECTOR (DIcrIONARY
INTERLUDE PHASE)
F5,10
INTRCOM
IFNX2A
GDEND
PTR TO CURRENT END OF GBL DIR (DIcrIONARY
INTERLUCE PHASE)
F5
INTRCOM
IFNX2A
DSECT NAME DICTIONARY INTERLUDE PHASE
10
GDNTRY
IFNX2A
GDSTRI'
PTR TO START OF GBL DIRECTORY (DICTIONARY
INTERLUDE PHASE)
F5
INTRCOM
IFNX2A
GDSTRT
PTR TO START OF GBL DICTIONARY (XKE MACRO
GENERATOR)
F8,13
GENCOM
IFNX3A
GDSTRT
PTR TO START OF GBL DICTIONARY
RESOLUTION PREPROCESSOR)
F8
GENCOM
IFNX3B
GDSTRT
PTR TO START OF GBL DICTIONARY (GENERATE
PHASE DIcrIONARY ROUTINES)
F8
GENCOM
IFNX3N
*GBLDEF
*GBLNTRY
*GDNTRY
~DIT
ROUTINE~
PHASE DICTIONARY ROUTINES)
~ENERATE
PHASE DICTIONARY
(SYMBOL TABLE SUBROUTINES)
(SYMBOL
* DA'IA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOU'I.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS sEcrrON.
'F', FOLLO~ffiD BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
174
SYMBOLIC
NAME
CESCRIPI'ION: NAME AND USE
PLM
REF··
CSECT/
DSECT
MODULE/
MCROFCH
GENCOM
DSECT NAME GENERATE PHASE DICTIONARY
ROUTINES
13
GENCOM
IFNX3U
GENFLD
EN'lRY POINT -
XKE MACRO GENERATOR
13
IFNX3AOO
IFNX3A
GENS'lRNG
EN'lRY POINT -
XKE MACRO GENERATOR
13
IFNX3A03
IFNX3A
GSCAN
ENTRY POINT -
EDIT PHASE
3
IFNX1A10
IFNX1A
GSHASHER
CLEAR WORK AREA FOR VARB NAME
INTERLUDE PHASE)
10
IFNX2AOO
IFNX2A
GTRG'lR
READ RECORDS (POST PROCESSOR PHAS E)
26
IFNX6AOO
IFNX6A
HASH
EN'lRY POINT -
9
IFNX2AOO
IFNX2A
IASGN
IS IT 4-BIT OR 8-BIT FIELD (MACHINE
INSTRUCTION PROCESSOR)
22
IFNX51100
IFNX5l>!
ICTL
ENTRY POINT -
3,4
IFNX1AOO
IFNX1A
IFNX1AOO
CSECT NAME -
EDIT PHASE
2
IFNX1AOO
IFNX1A
IFNX1A10
CSECI' NAME -
EDIT PHASE
IFNX1A 10
IFNX 1n
IFNX1A20
CSECT NAME -
EDIT PHASE
IFNX1A20
IFNX1A
IFNX1A30
CSECT NAME -
EDIT PHASE
IFNX1A30
IFNX1A
IFNX1JOO
CSECT NAME -
EDIT PHASE DICTIONARY ROUTINES
IFNX1JOO
IFNX1J
IFNX1J01
EXTRN -
IFNX1AOO
IFNX1A
IFNX1KUN
CSECI' NAME -
OP CODE TABLE
3
IFNX1KUN
IFNX1K
IFNX1S00
CSECT NAME ROUTINE
CONDITIONAL ASSEMBLY POSTFIX
2,3
IFNX1S00
IFNX1S
IFNX1S0 1
EXTRN -
IFNX1AOO
IFNX1A
IFNX2AOO
CSECT NAME -
IFNX2AOO
IFNX2A
IFNX2A01
EN'lRY -
IFNX2AOO
IFNX2A
IFNX2A02
CSECT NAME -
DICTIONARY INTERLUDE PHASE
IFNX 2A 02
IFNX 2A
IFNX3AOO
CSECI' NAME -
XKE MACRO GENERATOR
IFNX3AOO
IFNX3A
IFNX3A01
ENTRY -
IFNX3AOO
IFNX3A
IFNX3A03
CSECI' NAME -
XKE MACRO GENERATOR
IFNX3A03
IFNX3A
IFNX3BOO
CSECT NAME -
SYMBOL RESOLUTION PREPROCESSOR
IFNX3BOO
IFN}{3E
IFNX3B01
EX'lRN -
IFNX3AOO
IFNX3A
IFNX3KUN
CSECT NAME -
OP CODE TABLE
IFNX3KUN
IFHX3K
IFNX3NOO
CSECI' NAME ROUTINES
GENERATE PHASE DICTIONARY
IFNX3NOO
IFNX3N
IFNX4DOO
CSECI' NAME EVALUATION
SYMBOL RESOLUTION PHASE DC/DS
IFNX4DOO
IFNXlJC
IFNX4D01
EN'lRY SYMBOL RESOLUTION PHASE DC/OS
EVALUATION
IFNX3NOO
IFNX3N
Ir~X4EOO
CSECT NAME ~
SUBROUTINES
IFNX4EOO
H'NX4E
(DICTIONARY
DICTIONARY INTERLUDE PHASE
EDIT PHASE
2,5
EDIT PHASE
EDIT PHASE
DICTIONARY INTERLUDE PHASE
2
DICTIONARY INTERLUDE PHASE
11,2
XKE MACRO GENERATOR
14,15
XKE MACRO GENERATOR
EXTERNAL SYMBOL DICTIONARY
15,20
15
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOU! •
• *EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE l1ETHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
Directory
175
CSECT/
DSECT
MODULE/
MCROFCH
IFNX4DOO
IFNX4D
IFNX4MOO
IFNX4M
IFNX4EOO
IFNX4E
IFNX4NOO
IFNX4N
IFNX4S00
IFNX4S
IFNX4MOO
IFNX4M
IFNX4TOO
IFNX4T
IFNX4VOO
IFNX4V
IFNX4S00
IFNX4S
IFNX5AOO
IFNX5A
ENTRY - ASSEMBLER OPCODE PROCESSOR ASSEMBLY PHASE - INITIALIZATION
IFNX5AOO
IFNX5A
IFNX5A20
CSECT NAME ROUTINE
IFNX5A20
IFNX5A
IFNX5A30
CSECT NAME - ASSEMBLY PHP.SE - LOCATION
COUNTER UPDATE ROUTINE
IFNX5A30
IFNX SA
IFNX5A40
CSECT NAME ROUTINE
ASSEMBLY PHASE - RLD OUTPUT
IFNX5A40
IFNX5A
IFNX5A50
CSECT NAME ROUTINE
ASSEMBLY PHASE - XREF OUTPUT
IFNX5A50
IFNX5A
IF'NX5COO
CSECT NAME - ASSEMBLy PHASE - MAINLINE
CONTROL - CONSTANTS AND PATCH AREA
IFNX5COO
IFNX5C
IFNX5C01
ENTRY -
IFNX 5C 00
IFNX 5C
IFNX5DOO
CSECT NAME - ASSEMBLY PHASE - DC
EVALUATION - INITIALIZATION
IFNX5DOO
IFNXSD
IFNX5FOO
CSECT NAME CONVERSION
IFNX5FOO
IFNX5F
IFNXSF01
EXTRN - ASSEMBLY PHASE - DC EVALUATION
- PROCESS L-, [)-, E-, F-, H-TYP
IFNXSDOO
IFNX5D
IFNX5LOO
CSECT NAME - ASSEMBLY PHASE - ERROR
LOGGING ROUTINE
IFNX5LOO
IFNX5L
IFNX5MOO
CSECT NAME -
IFNX5MOO
IFNX5M
IFNX5M01
EXTRN -
IFNX5COO
IFNX5C
IFNX5POO
CSECT NAME -
IFNX5POO
IFNX5P
IFNX5AOO
IFNX5A
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
IFNX4E01
ENTRY EXTERNAL SYMBOL DICTIONARY
SU BROUT IN ES
IFNX4MOO
CSECT NAME LINE CONTROL
IFNX4M01
ENTRY CONTROL
IFNX4NOO
CSECT NAME EVALUATION
SYMBOL RESOLUTION PHASE DC/DS
IFNX4S00
CSECT NAME -
SYMBOL TABLE SUBROUTINES
IFNX4S01
ENTRY -
IFNX4TOO
CSECT NAME LINE CONTROL
SYMBOL RESOLUTION PHASE MAIN
IFNX4VOO
CSECT NAME SUBROUTINE
EXPRESSION EVALUATION
IFNX4V01
ENTRY -
IFNX5AOO
CSECT NAME - ASSEMBLER OPCODE PROCESSOR
- ASSEMBLY PHASE - INITIALIZATION
IFNXSA01
SYMBOL RESOLUTION PHASE MAIN
15,20
SYMBOL RESOLUTION PHASE MAIN LINE
15
SYMBOL TABLE SUBROUTINES
15
EXPRESSION EVALUATION SUBROUTINE
21
ASSEMBLY PHASE - ALIGNMENT
21
ASSEMBLY PHASE - MAINLINE CONTROL
DC FIXED-FLOATING POINT
MACHINE INSTRUCTION PROCESSOR
21
21
ASSEMBLY PHASE - MAINLINE CONTROL
ASSEMBLY PHASE -
PRINT ROUTINE
IFNX5P01 . EXTRN - ASSEMBLER OPCODE PROCESSOR ASSEMBLY PHASE - BRANCH TABLE AND
21
*DATA AREA. SEE DATA-AREA SECTION FOR DETAILED LAYOU~.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
176
SYMBOLIC
NAME
DESCRIPI'ION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
IFNX5VOO
IFNX5V
IFNX6AOO
IFNX6A
IFNX6AOO
IFNX6A
IFNX6BOO
IFNX6E
IFNX6BOO
IFNX6B
IFNX6 B20
IFNX 6E
IFNX6COO
IFNX6C
IFOXOAOO
lFOXOA
IFNX5VOO
CSECT NAME SUBROUTINE
EXPRESSION EVALUATION
IFNx6AOO
CSECT NAME -
POST PROCESSOR PHASE
IFNX6A01
ENTRY -
IFNX6BOO
CSECT NAME -
IFNX6B01
ENTRY -
IFNX6B20
CSECT NAME -
IFNX6COO
CSECT NAME DIAGNOSTIC MESSAGE PHASE ERROR MESSAGES
IFOXOAOO
CSECT NAME -
IFOXOA01
ENTRY -
ASSEMBLER DRIVER
IFOXOAOO
IFOXOA
IFOXOBOO
CSECT NAME WORKFlLE I/O MODULE MAINLINE CONTROL
lFOXOBOO
IFOXOB
IFOXOCOO
CSECT NAME -
ASSEMBLER COMMON LOAD MODULE
IFOXOCOO
IFOXOC
IFOXODOO
CSECT NAME -
ASSEMBLER INITILIZATION
lFOXODOO
IFOXOD
IFOXOD01
ENTRY -
lFOXODOO
IFOXOD
IFOXOEOO
CSECT NAME DECB
INPUT COMMON LOAD MODULE -
IFOXOEOO
IFOXOE
IFOXOFOO
CSECT NAME CONTROL
INPUT I/O MODULE - MAINLINE
lFOXOFOO
IFOXOF
lFOXOF01
ENTRY -
IFOXOFOO
IFOXOF
IFOXOGOO
CSECT NAME - SYSGO DCB
IFOXOGOO
IFOXOG
lFOXOHOO
CSECT NAME OUTPUT I/O MODULE - FREEPOOL
ROUTINE, CONSTANTS AND PATCH AREA
lFOXOHO"O
IFOXOH
lFOXOH01
ENTRY CONTROL
IFOXOHOO
IFOXOH
IFOXOIOO
CSECT NAME - ABORT ROUTINE - CONSTANTS
ANt PATCH AREA
lFOXOIOO
IFOXOI
IFOXOJOO
CSECT NAME DIAGNOSTIC
CROSS REFERENCE AND ASSEMBLER SUMMA
IFOXOJOO
IFOXOJ
*J
DSECT NAME ASSEMBLER DRIVER - JCOMMON COpy
CODE
J
IFOXOA
*J
DSECT NAME AOORT ROUTINE - JCOMMON COpy CODE
J
IFOXOI
*J
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
J
IFNX1J
*J
DSECT NAME CONDITIONAL ASSEMBLY POSTFIX
ROUTINE
J
IFNX1S
*J
DSECT NAME DICTIONARY INTERLUDE PHASE
J
IFNX2A
*J
DSECT NAME XKE MACRO GENERATOR
J
IFNX3A
*J
DSECT NAME SYMOOL RESOLUTION PREPROCESSOR
J
IFNX3B
21
POST PROCESSOR PHASE
DIAGNOSTIC PHASE
21
DIAGNOSTIC PHASE
DIAGNOSTIC PHASE
ASSEMBLER DRIVER - CONSTANTS
27
27
ASSEMBLER INITILIZATION
27
INPUT I/O MODULE - MAINLINE CONTROL
OUTPUT COMMON LOAD MODULE
OUTPUT I/O MODULE - MAINLINE
27
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOU~.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN ~HE METHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN ~HE PROGRAM ORGANIZATION SECTION.
Directory
177
SYMBOLIC
NAME
DESCRIPI' ION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
*J
DSECT NAME GENERATE PHASE DICTIONARY
ROUTINES
J
IFNX3N
*J
DSECT NAME SYMBOL RESOLUTION PHASE DC/OS
FVALUATION
J
IFNX4D
*J
DSECT NAME EXTERNAL SYMBOL DICTIONARY
SU BROUT IN ES
J
IFNX4E
*J
DSECI' NAME SYMOOL RESOLUTION PHASE MAIN
LI NE CONTROL
J
IFNX4M
*J
DSECT NAME SYMBOL RESOLUTION PHASE DC/DS
EVALUATION
J
IFNX4N
*J
DS ECI' NAME SYMOOL TABLE SUBROUTINES
J
IFNX4S
*J
DSECT NA~£ SYMBOL RESOLUTION PHASE MAIN
LINE CONTROL
J
IFNX4T
*J
DSECI' NAME EXPRESSION EVALUATION SUBROUTINE
J
IFNX4V
*J
DSECT NAME ASSEMBLY PHASE - MAINLINE
CONTROL - JCOMMON COpy CODE
J
IFNX5C
*J
DS ECI' NAME DC FIXED- FLOATING POINT
CONVERSION
J
IFNX5F
*J
DSECT NAME EXPRESSION EVALUATION SUBROUTINE
J
IFNX5V
*J
DSECT NAME POST PROCESSOR PHASE
J
IFNX6A
*J
DSECT NAME DIAGNOSTIC MESSAGE PHASE JCOMMON COpy CODE
J
IFNX6C
*JERRCp
{;SECI' NAME EDIT PHASE
JERRCD
IFNX1A
* JERRCD
DS ECI' NAME DICI'IONARY INTERLUDE PHASE
JERRCD
IFNX2A
*JERRCD
DSECT NAME XKE MACRO GENERATOR
JERRCD
IFNX3A
*JFLEBLK
DSECT NAME ASSEMBLER DRIVER - JFLEBLK COPY
CODE
JFLEBLK
IFOXOA
*JFLEBLK
DSECT NAME ASSEMBLER ·INITILIZATION - FILE
BLOCK DSECT (JFLEBLK)
JFLEBLK
IFOXOD
*JINCOM
DSECI' NAME INPUT I/O MODULE - JINCOM COpy
CODE
JINCOM
IFOXOF
*JINCOM
DSECI' NAME AOORT ROUTINE - JINCOM COpy CODE
JINCOM
lroXOI
* JOUTCOM
DS Eel' NAME OUTPUT COMMON LOAD MODULE JO UTCOM DSEC T
JOUTCOM
IFOXOG
*JOUTCOM
DSECT NAME OUTPUT I/O MODULE - JOUTCOM COPY
CODE
JOUTCOM
IFOXOH
*JOUTCOM
DSECT NAME ABORT ROUTINE - JOUTCOM COpy CODE
JOUTCOM
IFOXOI
*JTEXT
PSECT NAME EDIT PHASE DICTIONARY ROUTINES
JTEXT
IFNX1J
*JTEXT
DSECT NAME DICTIONARY INTERLUDE PHASE
JTEXT
IFNX2A
*JTEXT
DSECT NAr·1E XKE MACRO GENERATOR
JTEXT
IFNX3A
*JTEXT
DS ECI' NAME SY:MOOL RESOLUTION PREPROCESSOR
JTEXT
IFNX3E
3,4
16
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
178
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
JTEXT
IFNX3N
JTEXT
IFNX4D
JTEXT
IFNX4E
JTEXT
IFNX4M
JTEXT
IFNX4N
JTEXT
IFNX4S
*JTEXT
DSECT NAME GENERATE PHASE DICTIONARY
ROUTINES
*JTEXT
DSECT NAME SYMBOL RESOLUTION PHASE DC/OS
EVALUATION
*JTEXT
DSECT NAME EXTERNAL SYMBOL DICTIONARY
SU BROUT IN ES
*JTEXT
os ECI' NAME SYMOOL RESOLUTION PHASE MAIN
LINE CONTROL
*JTEXT
DSECT NAME SYMBOL RESOLUTION PHASE DC/OS
EVALUATION
*JTEXT
DSECT NAME SYMBOL TABLE SUBROUTINES
*JTEXT
DSECT NAME SYMBOL RESOLUTION PHASE MAIN
LINE CONTROL
JTEXT
IFNX4T
*JTEXT
DSECI' NAME EXPRESSION EVALUATION SUBROUTINE
JTEXT
IFNX4V
*JTEXT
DSECI' NAME ASSEMBLY PHASE - MAINLINE
CONTROL - JTEXT COpy CODE
21
JTEXT
IFNX5C
*JTEXT
DSECT NAME DC FIXED-FLOATING POINT
CONVERSION
21
JTEXT
IFNX5F
*JTEXT
DSECT NAME EXPRESSION EVALUATION SUBROUTINE
JTEXT
IFNX5V
*JTEXTA
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
JTEXTA
IFNX1J
*JTEXTA
DSECT NAME DICTIONARY INTERLUDE PHASE
JTEXTA
IFNX2A
*JTEXTA
DS Ecr
JTEXTA
IFNX3A
*JTEXTA
DSECT NAME SYMOOL RESOJ. .UTION PREPROCESSOR
JTEXTA
IFNX3B
*JTEXTA
DSECT NAME GENERATE PHASE DICTIONARY
ROUTINES
JTEXTA
IFNX3N
*JTEXTA
DSECT NAME SYMBOL RESOLUTION PHASE DCjDS
EVALUATION
JTEXTA
IFNX4D
*JTEXTA
OSECI' NAME EXTERNAL SYMBOL DICTIONARY
SUBRO UTI NE S
JTEXTA
IFNX4E
*JTEXTA
OSECI' NA.~E SYMOOL RESOLUTION PHASE MAIN
LINE CONTROL
JTEXTA
IFNX4M
*JTEXTA
DS ECI' NAME SYMOOL RESOLUTION PHASE DC/DS
EVALUATION
JTEXTA
IFNX4N
*JTEXTA
os ECI' NAME SYMOOL RESOLUTION PHASE MAIN
LINE CONTROL
JTEXTA
IFNX4T
*JTEXTA
OSECI' NAME ASSEMBLY PHASE - MAINLINE
CONTROL - JTEXT COpy CODE
JTEXTA
IFNX5C
*JTEXTA
DSECT NAME MACHINE INSTRUCTION PROCESSOR
JTEXTA
IFNX5M
*JTEXTA
DS ECI'
JTEXTA
IFNX5P
*JTEXTA
DSECT NAME DIAGNOSTIC PHASE - TERMINAL
BUFFER DSECT AND JTEXTA DSECT
JTEXTA
IFNX6B
DSECT7
IFNX4D
LATADD
17
17
17
NAME XKE MACRO GENERATOR
22
NAME ASS EMBLY PHASE - PRINT ROUTINE
FIRST LITERAL ENTRY ADDRESS (SYMBOL
RESOLUTION PHASE DC/DS EVALUATION)
F9,17
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
Directory
179
SYMBOLIC
NAME
CESCRIPTIDN: NM1E AND USE
PLM
REF*·
CSECT/
DSECT
MODULE/
MCROFCH
LATADD
FIRST LITERAL ENTRY ADDRESS (EXTERNAL
SYMBOL DICTIONARY SUBROUTINES)
F9,17
DSECT7
IFNX4E
LATADD
FIRST LITERAL ENTRY ADDRESS (SYMBOL
RESOLUTION PHASE MAIN LINE CONTROL)
F9,19
DSECT7
IFNX4M
LATADD
FIRST LITERAL ENTRY ADDRESS
SU BROUT IN ES)
F9,17,19
DSECT7
IFNX4S
LATADD
FIRST LITERAL ENTRY ADDRESS (EXPRESSION
FN ALUAT ION SUBROUT IN E)
F9
DSECT7
IFNX4V
LCLDICTR
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
13
IFNX3NOO
IFNX3N
LCLDICTS
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
13
IFNX3NOO
IFNX3N
~YMBOL
TABLE
·LCLNTRY
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
5
LClNTRY
IFNX1J
LITERAL
PASS PARAMETERS (SYMBOL RESOLUTION PHASE
MAIN LINE CONTROL)
17
IFNX4MOO
IFNX4M
LITRII
ADJUSTMENT INDEX (SYMBOL RESOLUTION PHASE
MAIN LINE CONTROL)
19
IFNX4MOO
IFNX4M
LOCUPD
POINT TO CURRENT LEVEL (ASSEMBLY PHASE LOCATION COUNTER UPDATE ROUTINE)
21,25
IFNX5A30
IFNX5A
LOCUPD
ASSEMBLY PHASE ALIAS FOR IFNX5A31
LOCATION COUNTER UPDATE ROUTINE
21,25
IFNX5A30
IFNX5A
LOCUPD
SAVE REGISTERS (ASSEMBLY PHASE - LOCATION
COUNI'ER UPCATE ROUTINE)
21,25
IFNX5A30
IFNX5A
LTDUMP
SAVE REGISTERS (SYMBOL RESOLUTION PHASE
MAIN LINE CONTROL)
17,20,20
IFNX4MOO
IFNX4M
LTORG
ALIGN TO DOUBLEWORD BOUNDARY ~YMBOL
RESOLUTION PHASE MAIN LINE CONTROL)
17
IFNX4MOO
IFNX4M
MACENTRY
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
6
IFNX1JOO
IFNX1J
MACRCALL
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
11
IFNX3 NOO
IFNX3N
MACREND
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
3,6
IFNX1 JOO
IFNX1J
MACRENT
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
3,6
IFNX1JOO
IFNX1J
MACRKWRD
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
11,12
IFNX3 NOO
IFNX3N
MACRNAME
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
6
IFNX1JOO
IFNX1J
MACRO
ENTRY POINT -
EDIT PHASE
3
IFNX1AOO
IFNX1A
MACRPOST
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
11, 12
IFNX3NOO
IFNX3N
MACTR
ENTRY POINT -
XKE MACRO GENERATOR
13
IFNX3AOO
IFNX3A
MAIF
ENTRY POINT -
XKE MACRO GENERATOR
13
IFNX3AOO
IFNX3A
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL RE-FERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
180
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
(EXTERNAL SYMBOL
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
15,18
IFNX4EOO
IFNX4E
MAKESD
SAVE REGI STERS I N STACK
DICI'IONARY SUBROUT INES)
MAKGET
GET NEXT SEQUENTIAL ESD ENTRY (EXTERNAL
SYMBOL DICI'IONARY SUBROUTINES)
18
IFNX4EOO
IFNX4E
MBRANCH1
ENTRY POINT -
XKE MACRO GENERATOR
13
IFNX3AOO
IFNX3A
MCALLIN
ENTRY POINT -
EDIT PHASE
3
IFNX1A20
IFNX1A
MDDND
PTR TO END OF MACRO DEF DIRECT (C ICTIONARY
INTERLUDE PHASE)
F5,F7
INTRCOM
IFNX2A
*MDDNTRY
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
3,6
MDDNTRY
IFNX1J
*MDDNTRY
DSECT NAME DICTIONARY INTERLUDE PHASE
10,8
MDDNTRY
IFNX2A
F4,4
EDSECT
IFNX1A
PHAS~
MDDSTRT
PTR TO START OF MACR DEFN DIR (EDIT
MDDSTRT
PTR 'IO START OF MACR DEFN DIR (EDIT PHASE
DICI'lONARY ROUTINES)
F4,4
EDSECT
IFNX1J
MDDSTRT
PTR 'IO START OF ~.ACR DEFN DIR
ASSEMBLY POSTFIX ROUTINE)
F4
EDSECT
IFNX1S
MDDSTRT
PTR 'IO START OF MACRO DEF DIRCT (DICTIONARY
INTERLUCE PHAS E)
F5
INTRCOM
IFNX2A
*MDVNTRY
DSECT NAME DICTIONARY INTERLUDE PHASE
10,8
MDVNTRY
IFNX2A
*MDVNTRY
DSECT NAME GENERATE PHASE DICTIONARY
FOUTINES
MDVNTRY
IFNX3N
FS
INTRCOM
IFNX2A
(CONDITIONAL
MDVS'lRT
PTR TO START OF MACRO DEF VECTF
INTERLUDE PHAS E)
MDVS'lRT
PTR 'IO START OF MDV (XKE MACRO GENERATOR)
F8
GENCOM
IFNX3A
MDVSTRT
PTR 'IO START OF MDV (SYMBOL RESOLUTION
PREPROCESSOR)
F8
GENCOM
IFNX3B
MDVSTRT
PTR 'IO START OF MDV (GENERATE PHASE
DICI'IONARY ROUTINES)
F8,12
GENCOM
IFNX3N
MEND
ENTRY POINT -
EDIT PHASE
3
IFNX1AOO
IFNX1A
MERGE
ENTRY POINT -
POST PROCESSOR PHASE
26
IFNX6AOO
IFNX6A
METASCAN
ENTRY POINT -
EDIT PHASE
7
IFNX1A10
IFNX1A
MNOTEO
(ASSEMBLER OPCODE PROCESSOR - ASSEMBLY
PHASE - 'MNOTE' STAT EM EN)
24
IFNX5AOO
IFNXSA
MNOTEO
CHECK IF OPERAND PRESENT (ASSEMBLER OPCODE
PROCESSOR - ASSmBLY PHASE - 'MNOTE' S'IA'IEMEN
24
IFNX5AOO
IFNXSA
6
IFNX1JOO
IFNX1J
MSCANA
(DICTIONARY
(EDIT PHASE DICTIONARY ROUTINES)
MSCANA
SEE IF PRGMR MACRO PROTOTYPE (EDIT PHASE
DICI'IONARY ROUTINES)
6
IFNX1JOO
IFNX1J
MSETA
ENTRY POINT
~
XKE MACRO GENERATOR
13
IFNX3AOO
IFNX3A
MSETB
ENTRY POINT -
XKE MACRO GENERATOR
13
IFNX3AOO
IFNX3A
MSETC
ENTRY POINT -
XKE MACRO GENERATOR
13
IFNX3AOO
IFNX3A
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOU'I.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN '!'HE ME'IHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN 'IHE PROGRAM ORGANIZATION SECTION.
Directory
181
SY~BOLIC
NAME
NEOFRTN
DESCRIPI' ION: NAME AND USE
(EDIT PHASE)
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
6
IFNX1A30
IFNX1A
NEOFRTN
RESTORE EOF SWITCH (EDIT PHASE)
6
IFNX1A30
IFNX1A
NEXTPARM
ENTRY POINT -
EDIT PHASE
3
IFNX1A20
IFNX1A
NEXT PM
ENTRY POINT -
EDIT PHASE
3
IFNX1 A20
IFNX1 A
OPENEND
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
6
IFNX1JOO
IFNX1J
OPENENT
ENTRY POINT ROUTINES·
EDIT PHASE DICTIONARY
3
IFNX1JOO
IFNX1J
OPERCODE
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
3
IFNX1JOO
IFNX1J
*OPNTRY
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
OPNTRY
IFNX1J
*OPNTRY
DSECT NAME XKE MACRO GENERATOR
OPNTRY
IFNX3A
OPSNSTRT
Pl'R TO START OF OPSYN TABLE (XKE MACRO
GENERATOR)
F8
GENCOM
IFNX3A
OPSNSTRT
PTR TO START OF OPSYN TABLE (SYMBOL
RESOLUTION PREPROCESSOR)
F8
GENCOM
IFNX3B
OPSNSTRT
PTR TO START OF OPSYN TABLE
DICTIONARY ROUTINES)
F8
GENCOM
IFNX3N
DSECT NAME DICTIONARY INTERLUDE PHASE
8
OPSTBL
IFNX2A
OPSYN
ENTRY POINT -
EDIT PHASE
3,4
IFNX1AOO
IFNX1A
OPSYNBLD
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
4
IFNX1JOO
IFNX1J
OPSYNBLD
ENTRY POINT -
DICTIONARY INTERLUDE PHASE
8
IFNX2A02
IFNX2A
*OPSTBL
(GENERATE PHASE
*OPSYNTRY
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
3,4,4
OPSYNTRY
IFNX1J
*OPSYNTRY
DSECT NAME DICTIONARY INTERLUDE PHASE
8
OPSYNTRY
IFNX2A
* OPSYNrRY
DS ECI' NAME XKE MACRO GENERATOR
OPSYNTRY
IFNX3A
ORDREF
ENTRY POINT -
DICTIONARY INTERLUDE PHASE
8,9
IFNX2AOO
IFNX2A
ORDSYMBR
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
3,5
IFNX1JOO
IFNX1J
ORDSYMBR
ENTRY POINT -
DICTIONARY INTERLUDE PHASE
8,9
IFNX2A02
IFNX2A
ORDSYMBR
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
13
IFNX3NOO
IFNX3N
ORG100
GET SYMBOL DEFINITION POINTER (ASSEMBLER
OPCODE PROCESSOR - ASSEMBLY PHASE - 'ORG' STA
25
IFNX5AOO
IFNX5A
DSECI' NAME EDIT PHASE DICTIONARY ROUTINES
5
OSDI R
IFNX1 J
9
IFNX2A02
IFNX2A
DSECT NAME DICTIONARY INTERLUDE PHASE
8
OSRDNTRY
IFNX2A
OSRDSTRT
Pl'R TO STAR,:!;, OF ORD SYMB REF DT (EDIT PHASE)
F4
EDSECT
IFNX1A
OSRDSTRT
PTR TO START OF ORO SYMB REF DT (EDIT PHAS E
DICTIONARY ROUTINES)
F4
EDSECT
IFNX1J
*OSDIR
OSLUKUP
*OSRDNTRY
CHECK FOR END OF CHAIN
INTERLUDE PHASE)
~ICTIONARY
*DATA AREA.
SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
• F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN 'THE PROGRAM ORGANI ZATION SECTION.
182
SYMBOLIC
NAME
CESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
OSRDSTRT
PTR TO START OF ORD SYMB REF DT
(CONDITIONAL ASSEMBLY POSTFIX ROUTIN~
F4
EDSECT
IFNX1S
OSRDSTRT
PTR TO START OF ORO SYMB REF DI
INTERLUDE PHASE)
F6
I NTRCOM
IFNX2A
OSRDSTRT
PTR TO START OF ORD SYMB REF DT (XKE MACRO
GENERATOR)
Fa,13
GENCOM
IFNX3A
OSRDSTRT
PTR TO START OF ORD SYMB REF DT
RESOLUTION PREPROCESSOR)
Fa
GENCOM
IFNX3B
OSRDSTRT
PTR TO START OF ORD SYMB REF DT (GENERATE
PHASE DICl'IONARY ROUTINES)
Fa
GENCOM
IFNX3N
*OSREF
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
5
QSREF
IFNX1J
*OSREF
DSECT NAME DICTIONARY INTERLUDE PHASE
OSREF
IFNX2A
INI'RCOM
IFNX2A
OSRTNTRY
IFNX2A
OSRTEND
*OSRTNTRY
(DICTIONARY
(SYMBOL
PTR TO CURRENT END OF ORD SYMB (DICTIONARY
INTERLUDE PHASE)
F5
DSECT NAME DICTIONARY INTERLUDE PHASE
OSRTSTRT
PTR TO START OF ORD SYMB REF TB (DICTIONARY
INTERLUDE PHASE)
F5
INTRCOM
IFNX2A
OUTPUTS
HI LO COMPARE
26
IFNX6AOO
IFNX6A
(pOST PROCESSOR PHASE)
*p
CSECl' NAME ASSEl1BLER INITILIZATION - DCBD
MACRO
P
lFOXOC
*p
CS ECl' NAME INPUT I/O MODULE - DDNAME
OVERRIDE LIST
P
IFOXOF
*p
DS ECl' NAME OUTPUT I/O MODULE - PRINT IMAGE,
PUNCH IMAGE AND DDNAME OVERRI
P
IFOXOH
*p
DSECT NAME ABORT ROUTINE - DDNAME OVERRIDE
DSECl'
P
IFOXOI
11
IFNX3NOO
IFNX3N
PHASENTR
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
PKON
CLEAR CHARACTER REGISTER ~SSEMBLY PHASE
- DC EVALUATION - PROCESS P-TYPE CONSTANTS)
23
IFNX5DOO
IFNX5D
POP100
(ASSEMBLER OPCODE PROCESSOR - ASSEMBLY
PHASE - 'POP' STATEMENT)
24
IFNX5AOO
IFNX5A
POP100
DOES POP HAVE AN OPERAND (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'POP' STATEMENT)
24
IFNX5AOO
IFNX5A
PPIN
IFNX5M
*PPIN
CSECT NAME MACHINE INSTRUCTION PROCESSOR
*PPIN
DSECl' NAME POST PROCESSOR PHASE
26
FPIN
IFNX6A
PRINTSW
(ASSEMBLY PHASE - MAINLINE CONTROL - X5COM
COpy CODE)
21
X5COM
IFNX5C
PR INTSW
PRINT STATEMENT (ASSEMBLY PHASE - MAINLINE
CONI'ROL - X5COM COpy CODE)
21
X5COM
IFNX5C
PRINTSW
PRINT STATEMENT (DC FIXED-FLOATING POINT
CONVERS ION)
21
X5COM
IFNX5F
21
X5COM
IFNX5F
PRINTSW
(DC FIXED-FLOATING POINT CONVERSION)
*DATA AREA.
SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
'F', FOLLOOED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANIZATION SECTION.
Directory
183
SYMBOLIC
NAME
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
SAVE PRINT SWITCH (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'PRINT' STA'IEMEN
24
IFNX5AOO
IFNX5A
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
5
PRMNTRY
IFNX1J
PROTOEND
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
11, 12
IFNX3NOO
IFNX3N
PROTOIN
ENTRY POINT -
EDIT PHASE
3
IFNX1A20
IFNX1A
PROTOKWD
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
11, 12
IFNX3NOO
IFNX3N
PUNCHO
GO PRINT PUNCH STATEl-1ENT (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'PUNCH' & 'REPRO
23
IFNX5AOO
IFNX5A
PUSHOO
ERROR NO OPERAND (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'PUSH' STATEMENT
24
IFNX5AOO
IFNX5A
PUSHOO
(ASSEMBLER OPCODE PROCESSOR - ASSEMBLY
PHASE - 'PUSH' STAT El-1ENT)
.
24
IFNX5AOO
IFNX5A
PUTOPSYN
SEE IF ANY TABLE TO PUT (DICTIONARY
INTERLUI:E PHASE)
8
IFNX2A02
IFNX2A
PVECTPTR
PTR TO CURRENT PARAM VECTOR (XKE MACRO
GENERATOR)
F8
GENCOM
IFNX3A
PVECTPTR
PTR TO CURRENT PARAM VECTOR (SYMBOL
RESOLUTION PREPROCESSOR)
F8
GENCOM
IFNX3B
PVECTPTR
PTR TO CURRENT PARAM VECTOR
I:ICTIONARY ROUTINES)
F8
GENCOM
IFNX3N
QCON
SAVE REGISTERS IN STACK (EXTERNAL SYMBOL
I:ICTIONARY SUBROUTINES)
17
IFNX4EOO
IFNX4E
QKON
SET TEXT POINTER
EVALUATION)
23
IFNX5DOO
IFNX5D
RCARD
IFNX6A
3
IFNX1A20
IFNX1A
PRINTO
*PRMNTRY
*RCARD
DESCRIPTION: NAME AND USE
~SSEMBLY
(GENERATE PHAS E
PHASE - DC
DSECT NAME POST PROCESSOR PHASE
RDSRC
ENTRY POINT -
READ NEXT
POINT TO RCSRC (EDIT PHASE)
3
IFNX1AOO
IFNX1A
REFER
SAVE REGISTERS IN STACK (EXTERNAL SYMBOL
CICTIONARY SUBROUTINES)
17,20,20
IFNX4EOO
IFNX4E
20,27
IFNX4MOO
IFNX4M
EDIT PHASE
REHASH
(SYMBOL RESOLUTION PHASE MAIN LINE CONTROL)
REPROO
LOAD INI:EX FOR REPRO CARD (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'PUNCH' & 'REPRO
23
IFNX5AOO
IFNX5A
RESOLVE
ENTRY POINT -
13
IFNX3A03
IFNX3A
XKE MACRO GENERATOR
*RLDIN
DSECT NAME ASSEMBLY PHASE - MAINLINE
CONTROL - POST PROCESSOR RECORD DEFN
RLDIN
IFNXSC
*RLDIN
DSECT NAME EXPRESSION EVALUATION SUBROUTINE
RLDIN
IFNX5V
RLOOUT
SAVE REGISTERS (ASSEMBLY PHASE - RLD OUTPUT
ROUTINE)
23
IFNX5A40
IFNX5A
RLDOUT
POINT TO CURRENT LEVEL (ASSEMBLY PHASE RL C OUT PUT ROUT IN E)
23
IFNX5A40
IFNX5A
RLOOUT
ALIAS FOR IFNX5A41
RLD OUTPUT ROUTINE
23
IFNX5A40
IFNX5A
ASSEMBLY PHASE -
*DATA AREA.
SEE DAT~ AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE 1-1ETHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN THE PROGRAM ORGANI ZATION SECTION.
184
SYMBOLIC
NAME
CESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
* RPRINI'
DSEeI' NAME POST PROCESSOR PHASE
RPRINT
IFNX6A
*RSYMRCD
DSECT NAME XKE MACRO GENERATOR
RSYMRCD
IFNX3A
*RSYMRCD
DSECT NAME ASSEMBLY PHASE - ERROR LOGGING
ROUTINE - RSYMRCD COpy CODE
RSYMRCD
IFNX5L
20
IFNX4MOO
IFNX4M
SEARCH
(SYMBOL RESOLUTION PHASE MAIN LINE CONTROL)
SEQDEF
ENTRY POINT -
DICTIONARY INTERLUDE PHASE
10,8
IFNX2AOO
IFNX2A
SEQREF
ENTRY POINT -
DICTIONARY INTERLUDE PHASE
8
IFNX2AOO
IFNX2A
SEQSK
PI'R TO START OF SEQ ,SYM REF DIC (DICTIONARY
INTERLUDE PHASE)
F5
INTRCOM
IFNX2A
SEQSYMBD
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
3,5
IFNX1JOO
IFNX1J
SEQSYMBR
ENTRY POINT ROUTINES
EDIT PHASE DICTIONARY
3,5
IFNX1JOO
IFNX1J
SEQSYMBR
ENTRY POINT ROUTINES
GENERATE PHASE DICTIONARY
13
IFNX3 NOO
IFNX3N
SKDCSTRT
PTR TO START OF SKEL DICT (DICTIONARY
INTERLUDE PHASE)
F5
INTRCOM
IFNX2A
*SKDCTHDR
DSECT NAME DICTIONARY INTERLUDE PHASE
10,8
SKDCTHDR
IFNX2A
*SKDCTHDR
CSECT NAME GENERATE PHASE DICTIONARY
ROUTINES
SKDCTHDR
IFNX3N
SKON
TURN OFF SUB-FIELD FLAG (ASSEMBLY PHASE
- CC EVALUAT ION)
23
IFNX5DOO
IFNX5D
SORTPTR
SORT AREA POINTER (POST PROCESSOR PHASE)
F11
X6ACOMM
IFNX6A
SPACEO
(ASSEMBLER OPCODE PROCESSOR - ASSEMBLY
PHASE - 'SPACE' AND 'IDE)
24
IFNX5AOO
IFNX5A
SPACEO
GO SPACE 1 IF NO OPERAND ~SSEMBLER OPCODE
PROCESSOR ~ ASSEMBLY PHASE - 'SPACE' AND 'IDE
24
IFNX5AOO
IFNX5A
SPART
GO IF NO EXPLICIT BASE (MACHINE INSTRUCTION
PROCESSOR)
22
IFNX5MOO
IFNX5M
22
IFNX 5M 0 0
IFNX 5M
GET ZERO+GARBAGE+S PART ALLOC (MACHINE
INSTRU CT ION PROCESSOR)
22
IFNX5MOO
IFNX5M
*SSDEF
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
5
SSDEF
IFNX1J
*SSDEF
DSECT NAME DICTIONARY INTERLUDE PHASE
SSDEF
IFNX2A
*SSDIR
DSEeI' NAME EDIT PHASE DICTIONARY ROUTINES
5
SSDIR
IFNX1J
PTR TO CURRENT END OF SEQ SYMB (DIeI'IONARY
INTERLUDE PHASE)
F5
INTRCOM
IFNX2A
DSECT NAME DICTIONARY INTERLUDE PHASE
10
SSDTNTR Y
IFNX2A
SSDTSTRT
PTR TO START OF SEQ SYMB DEF TB (DIeI'IONARY
INTERLUDE PHASE)
F5
INTRCOM
IFNX2A
SSHASHER
CLEAR WORK AREA FOR SEQ SYMB (DICTIONARY
INTERLUDE PHASE)
10
IFNX2AOO
IFNX2A
SPART
SPASGN
SSDTEND
*SSDTNTRY
(MACHINE INSTRUCTION PROCESSOR)
*DATA AREA. SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
'F', FOLLOWED BY A NUMERAL, REFERS TO A FIGURE IN 'IHE PROGRAM ORGANI ZATION SECTION.
Directory
185
SYMBOLIC
NAME
DESCRIPTION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
SSRDSTRT
PI'R TO START OF SEQ SYMB REF DT (EDIT PHASE)
F4
EDSECT
IFNX1A
SSRDSTRT
PTR TO START OF SEQ SYMB REF DT (EDIT PHASE
DICTIONARY ROUTINES)
F4
EDSECT
IFNX1J
SSRDSTRT
PTR TO START OF SEQ SYMB REF DT
(CONDITIONAL ASSEMBLY POSTFIX ROUTINm
F4
EDSECT
IFNX1S
*SSREF
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
5
SSREF
IFNX1J
*SSREF
'CSECT NAME DICTIONARY INTERLUDE PHASE
SSREF
IFNX2A
STARTO
GET DATA POINTER (ASSEMBLER OPCODE
PROCESSOR- ASSEMBLY PHASE~ 'START, CSECT, 'CSE
25
IFNX5AOO
IFNX5A
STMTSEQ
ENTRY POINT -
3
IFNX1A10
IFNX1A
SUBSET
EXIT IF SUBSETTED THIS ROUND (SYMBOL TABLE
SU BROUT IN ES)
20,27
IFNX4S00
IFNX4S
SUMCST
GET CURRENT AND HIGH ADDRESS (EXTERNAL
SYMBOL DICTIONARY SUBROUTINES)
18
IFNX4EOO
IFNX4E
SUMDSD
CHANGE TYPE (EXTERNAL SYMBOL DICTIONARY
SU BROUT IN ES)
18
IFNX4EOO
IFNX4E
SUMESD
PUSH DOWN ONE MORE LEVEL (EXTERNAL SYMBOL
DICTIONARY SUBROUTINES)
18
IFNX4EOO
IFNX4E
SUMGET
PASS (EXTERNAL SYMBOL DICTIONARY
SU BROUT IN ES)
18
IFNX4EOO
IFNX4E
SYM
POINT TO NEXT CHARACTER (EXPRESSION
EVALUATION SUBROUTINE)
22
IFNX5VOO
IFNX5V
SYMBL
GET COUNT (SYMBOL RESOLUTION PHASE MAIN
LINE CONTROL)
19,20,27
IFNX4MOO
IFNX4M
~fMBOL
PARAMETER (SYMBOL RESOLUTION PHASE MAIN
LI NE CONTROL)
17
IFNX4MOO
IFNX4M
SYMDINEN
SYMBOL TABLE POINTERS (SYMBOL RESOLUTION
PHASE DC/I:S EVALUATION)
F9
DSECT7
IFNX4D
SYMDIMEN
SYMBOL TABLE POI NTERS (EXTERNAL SYMBOL
DICTIONARY SUBROUTINES)
F9
DSECT7
IFNX4E
SYMDIMEN
SYMBOL TABLE POINTERS (SYMBOL RESOLUTION
PHASE MAIN LINE CONTROL)
F9
DSECT7
IFNX4Z1
SYMDIMEN
SYMBOL TABLE POINTERS
SU EROUT IN ES)
F9
DSECT7
IFNX4S
SYMDIMEN
SYMBOL TABLE POINTERS (EXPRESSION
Ell ALU AT ION SU BROUT IN E)
F9
DSECT7
IFNX4V
TBLOPS
ENTRY POINT -
3
IFNX1AOO
IFNX 1A
TEXTGET
GET NUMBER OF SYMBOL XREFED (ASSEMBLY PHASE
- MAINLINE CONTROL - TEXT RECORD GET ROUTINE)
21
IFNX5COO
IFNX5C
TITLEO
GO SQUEEZE OUT QUOTE AND AMPSND (ASSEMBLER
OPCODE PROCESSOR - ASSEMBLY PHASE - 'TITLE' S
24
IFNX5AOO
IFNX5A
TRANSFER
ADDRESS OF OUTPUT FILE (SYMBOL RESOLUTION
PHASE MAIN LINE CONTROL)
20,27
IFNX4MOO
IFNX4M
EDIT PHASE
(SYMBOL TABLE
EDIT PHASE
*DATA AREA.
SEE DATA AREA SECTION FOR DETAILED LAYOUT.
**EXPLANATION OF PLM NUMBERED REFERENCES:
A SINGLE NUMERAL REFERS TO A HIPO DIAGRAM IN THE METHODS OF OPERATIONS SECTION.
, F', FOLLCMED BY A NUMERAL, REFERS TO A FIGURE IN THE PR(X;RAM ORGANIZATION SECTION.
186
SYMBOLIC
NAME
I)ESCRIPl'ION: NAME AND USE
PLM
REF**
CSECT/
DSECT
MODULE/
MCROFCH
*UDSECT
DSECT NAME ASSEMBLY PHASE - MAl NLINE
CONTROL - X5COM COpy CODE
UDSECT
IFNX5C
*UDSECT
DSECT NAME DC FIXED-FLOATING POINT
CONVERSION
UDSECT
IFNX5F
*UDSECT
DSECT NAME EXPRESSION EVALUATION SUBROUTINE
UDSECT
IFNX5V
USINGO
OPERAND PRESENT? (ASSEMBLER OPCODE
PROCESSOR - ASSEMBLY PHASE - 'USING' STATEMEN
24
IFNX5AOO
IFNX5A
USINGO
(ASSEMBLER OPCODE PROCESSOR - ASSEMBLY
PHASE - 'US lNG' STAT EM EN)
24
IFNX5AOO
IFNX5A
VARSYM
MAKE RECURSION STACK ENTRY (EDIT PHASE)
3
IFNX1A10
IFNX1A
VCON
SAVE REGISTERS IN STACK (EXTERNAL SYMBOL
DICTIONARY SUBROUTINES)
17
IFNX4EOO
IFNX4E
VKON
SET TEXT POINTER (ASSEMBLY PHASE - DC
EVALUATION)
23
IFNX5DOO
IFNX5D
*VSDENTRY
DSECT NAME EDIT PHASE DICTIONARY ROUTINES
5
VSDENTRY
IFNX1J
VSDSTRT
Pl'R TO START OF VARB SYMB DIR (EDIT PHASE)
F4
EDSECT
IFNX1A
VSDSTRT
PTR TO START OF VARB SYMB DIR (EDIT PHME
DICTIONARY ROUTINES)
F4
EDSECT
IFNX1J
VSDS'IRT
PTR TO START OF VARB SYMB DIR (CONDITIONAL
MSEMBLY POSTFIX ROUTINE)
F4
EDSECT
IFNX1S
VSLOOKUP
EN'IRY POINT ROUTINES
EDIT PHASE DICTIONARY
5
IFNX1JOO
IFNX1J
WRAPFLD
EN'IRY POINT -
EDI T PHASE
3
IFNX1AOO
IFNX1A
WRITE
DEFINE EXIT (SYMBOL RESOLUTION PHME MAIN
LINE CONTROL)
17
IFNX4MOO
IFNX4M
XKON
CLEAR CHARACTER REGISTER (ASSEMBLY -PHASE
- DC EVALUATION - PROCESS X-TYPE CONSTANTS)
23
IFNX5DOO
IFNX5D
XREF
SAVE REGISTERS (ASSEMBLY PHASE - XREF
OUTPUT ROUTINE)
23
IFNX5A50
IFNX5A
XREF
ALIAS FOR IFNX5A51
XREF OUTPUT ROUTINE
ASSEMBLY PHME -
23
IFNX5A50
IFNX5A
XREF
POINT TO CURRENT LEVEL (ASSEMBLY PHME XREF OUTPUT ROUTINE)
23
IFNX5A50
IFNX5A
*XRFIN
DSECT NAME ASSEMBLY PHASE - MAINLINE
CONTROL - POST PROCESSOR RECORD DEFN
XRFIN
IFNX5C
*XRFIN
DSECT NAME EXPRESSION EVALUATION SUBROUTINE
XRFIN
IFNX5V
*X5COM
DSECT NAME ASSEMBLY PHASE - MAINLINE
CONTROL - X500M COpy CODE
X5COM
IFNXSC
*X5COM
DSECT NAME DC FIXED-FLOATING POINT
CONVERSION
X5COM
IFNX5F
*X5COM
DSECT NAME EXPRESSION EVALUATION SUBROUTINE
X5COM
IFNX5V
EN'IRY POINT - ASSEMBLY PHASE - MAINLINE
CONTROL - X5COM COpy CODE
X5COM
IFNX5C
X5COMEND
Directory
187
This page
188
intenti~nally
left blank
Diagnostic Aids
This section contains information
designed to be helpful in debugging.
Diagnostic Aids
189
Eyecatchers: Object Module and Control Section (CSECT) Identifiers
OBJECT MODULE IDENTIFIER
In a dump, object module identifiers are located at the beginning of
each assembler object module. The identifier consists of two items:
•
the object module name
o
a halfword hexadecimal change level identifier
The following is an example of an object module identifier:
---C9C6D5E7F5C10001
IFNX5A HEX0001
CONTROL SECTION (CSECT) IDENTIFIER
In a dump, CSECT identifiers are located at the end of each assembler
CSECT. The CSECT identifier immediately precedes-the patch area for
the CSECT. The identifier consists of three items, separated by blanks:
o
the CSECT name
o
the time at which the CSECT was assembled
o
the date on which the CSECT was assembled
An example of CSECT identifier is given below:
C9C6D5E7F5C1FOF040F1F44BF2F340FOF74BF2F34BF7F2
-------blank
IFNX5AOO blank 14.23
(CSECT name)
(time)
190
07.23.72
(date)
+
beginning of
CSECT patch
area
Data Set Activity Summary
The following tables show the I/O activity of the assembler phases. The
tables cross-reference the type of I/O request to (1) the data set the
request is for and (2) the routine which issued the request.
In some cases, a second routine is given in the phase or module in
parentheses. This indicates that this routine is called by the first
routine listed.
EDIT PHASE (MODULE IFNX1A)
DATA SET
I/O ACTION
READ SOURCE
(JINPUT)
LOCATE OIP
BUFFER
(JPUTL)
System Input
RDSRC
(JINLIB SWITCH OFF)
---
System Library
File 1
RDSRC
(JINLIB SWITCH ON)
---
--OPUTL
FIND
(JFIND)
---
COPY
ESYSMAC
---
NOTE
(NOTELB)
---
CSTKENT
---
POINT
(JPOINTLB)
---
CSTKEXT
---
TRUNCATE
(JTRUNC)
---
---
PHSEND
Diagnostic Aids
191
EDIT PHASE (MODULE-I FNXl J)
DATA SET
I/O ACTION
File 1
File 2
File 3
PUT (Locate)
----
VARBSYMD
SEQSYMBR
SEQSYMBD
COMNEND
PHASEND
ORDSYMBD
WRITE
----
----
PHASEND
(BUFRITE)
CHECK
----
----
PHASEND
(BUFRITE)
NOTE
MACRENT
SEQSYMBD
GETNPF2
PHASEND
(BUFRITE)
POINT
----
PHASEND
----
TRUNCate
----
PHASEND
PHASEND
PUT(Move)
----
----
192
ORDSYMBD
DICTIONARY INTERLUDE PHASE (MODULE IFNX2A)
DATA SET
I/O ACTION
File 1
File 2
File 3
GET (Locate)
----
GETNXT
ORDSYMBR
READ
----
----
INTRENTR*
WRITE
ENDSEGB*
ERLOGER*
INTREXIT*
INITOSR*
OSRDFINI*
OPSYNBLD*
CHECK
ENDSEGB*
ERLOGER*
INTREXIT*
INITOSR*
OSRDFINI*
OPSYNBLD*
NOTE
ENDSEGB*
ERLOGER*
INTREXIT*
INITOSR*
OSRDFINI*
OPSYNBLD*
POINT
INITOSR
RESCAN
INITOSR
----
INTRENTR*
---INTRENTR
OPSYNBLD
* (BUFRITE)
Diagnostic Aids
193
GENERATE PHASE (MODULE IFNX3A)
DATA SET
I/O ACTION
File 1
File 2
File 3
GET (Locate)
MINPUT
MCALLEND
----
----
POINT
MEXIT10
----
MEXIT 10
PUT (Locate)
----
FEVAL25
ERRDUMP
PRINT90
----
PUT (Move)
----
TRUNC(ate)
----
MEXITlO
MINPUTl2
DMYENDRT
MCALLEND
MEXITlO
----
----
GENERATE PHASE (MODULE IFNX3B)
DATA SET
I/O ACTION
File 1
File 2
File 3
PUT (Locate)
----
----
IFNX3B
PUT (Move)
----
----
IFNX3B
194
GENERATE PHASE (MODULE IFNX3N)
DATA SET
I/O ACTION
File 1
File 2
READ
DCFETCH*
PHASENTR*
PHASENTR*
GET (Locate)
PROTOEND
PUT (Move)
----
CHECK
PHASENTR*
DCTFETCH*
NOTE
CALLEND
PROTOEND
POINT
PHASENTR
MACRFINI
CALLEND
PROTOEND
SEQSYMBR
DCTFETCH
File 3
-------
---PHASENTR
----
PHASENTR*
------;-
----
,.
PHASENTR
----
*(BUFREAD)
Diagnostic Aids
195
SYMBOL RESOLUTION Pj-lASE (ALL MODULES)
DATA SET
I/O ACTION
File 1
File 2
File 3
GET (Locate)
GETNEXT
----
GETNEXT
PUT (Move)
TRANSFER
----
TRANSFER
----
READ
----
GETESD
GETLAT
WRITE
----
GETESD
GETLAT
----
CHECK
----
GETESD
GETLAT
----
NOTE
GETREF
GETI:SD
GETLAT
GETREF
POINT
ENDOFILE
GETREF
ENDOFI LE
GETESD
ENDOFI LE
GETREF
196
ASSEMBLY PHASE (MODULES IFNX5A, IFNX5C, IFNX5D, IFNX5M, IFNX5V)
DATA SET
I/O ACTION
GET (Locate)
File 2
JINFILE (File 1 or File 3)
EDITED TEXT
RESOLVED SYMBOL DATA
ASSEMBLY PHASE (MODULES IFNX5A, IFNX5L, IFNX5P, IFNX5V)
DATA SET
I/O ACTION
PUT (Locate)
JOUTFI LE*
SYSPRINT
SYSLINK
SYSPCH
ERROR
XREF
RLD
LISTING
PUNCH
REPRO
TXT
PUNCH
REPRO
TXT
* Opposite of JINFILE
Diagnostic Aids
197
POST-PROCESSOR PHASE (MODULE IFNX6A)
DATA SET
I/O ACTION
CURFLE
CURFLE2
CURFLE3
READ FROM
JINFILE
(JREAD)
BUFIN
----
----
CHECK
(JCHECK)
BUFIN
SPILL
READFLl
READFL2
JNCTE
(JINFI LE)
XGARDX
----
JPOINT
XGARDX
EEREC
XGARDX
EEREC
EEREC
JWRITE
PADDING
SPILL
----
WRITE
READ
(JREAD)
READFLl
198
READ FL2
EEREC
WRITE
----
----
Register Usage Tables
IFOXOA
DRIVER ROUTINES
Register
Register Usage
o
Work Register
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
n
..
..
..
n
II
Not Used
Pointer to Phase Name
Address of Load Routine
Address of relete Routine
Base fer IFOXOA
Return Linkage
Work Register
..
n
Target Linkage
Common Ease
Work Register
..
II
Diagnostic Aids' 199
IFOXOB
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
WORKFILE I/O AND STORAGE MANAGEMENT ROUTINES
Register U7age
Not Used
Work Register
n
"
Pointer to Physical Buffer
Work Register
Pointer to Logical Record
Not Used
Pointer to JFLEBLK
Buffer Address
Return Linkage
Work Register
II
II
Ease for IFCXOB
Common Ease
Return Linkage
Work Register
Deviations - PUTM Routine
Register
3
Register Usage
From Address
Deviations - GETCORE Routine
Register
3
200
Register Usage
Work Register
IFOXOD
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
MASTER COMMON AREA INITIALIZATION ROUTINES
Register Usage
Work Register
Parm Field Pointer
Work Register
Pointer to Cefault Options
Work Register
Parm Field Pointer
Remaining Length of Parm Field
Work Register
Base for IFOXOD
Return Linkage
Work Register
Input Pointer
Target Linkage
Common Ease
Work Register
Work Register
Diagnostic Aids
201
IFOXOF
INPUT ROUTINES
Register
Register Usage
o
Work Register
CCE Pointer
DD Name Pointer
Work Register
1
2
3
4
n
II
5
6
7
n
n
II
II
Base for Input Common
__________________~8~________~W~o=r~k~R~egJster~--------------------------------------________________
9
Return Linkage
10
Work Register
11
Pointer to Logical Record
12
Base for IFOXOF
13
Common Ease
14
Work Register
15
II
n
Deviations - FINt Routine
Register
10
Deviations Register
10
Register Usage
Points to Member Name
POIN~LB
Routine
Register Usage
Points to Note/point Value
Deviations - tCE EXIT Routine
Register
10
Register Usage
Base Register
Deviations - ININIT Routine
Register
11
202
Register Usage
Parm Field Pointer
IFOXOH
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
OU'IPUT ROUTINES
Register Usage
Work Register
DCB Pointer
1:1:name Pointer
Open Parm List SYSPUNCH
"
n
n
SYSGO
Close Parm List SYSPUNCH
"
n
n
SYSGO
Output Common
Level Pointer for Saved Registers
Return Linkage
Addr of SYSPRINT DeB Exit
Parm Field Pointer
Ease for IFOXOH
Common Base
Work Register
"
"
Deviations - PRINT, PUNCH, TSO PRINT Routines
Register
1
2
11
Register Usage
Out~ut Record Pointer
Work Register
Buffer Address
Deviations - DCB EXIT Routine
Register
3
4
5
11
15
Register Usage
Work Register
n
n
n
n
Address of SYSPUNCH and SYSGO DCB Exit
Ease for Exit Routine
Diagnostic Aids
203
IFOXOI
ABORT ROUTINE
Register
Register Usage
o
Work Register
1
II
n
2
"
n
3
4
Not Used
..
"
5
DDname Pointer
6
Work Register
________________~7________~Inp~~--Qr--O-u~p~~Q~n~P~QLJU·n~tLte~r______________________________________
8
Base for IFOXOI
9
Return Linkage
10
Contains Error Code
11
Parm Field Pointer
12
Target Linkage
13
Common Ease
14
Not Used
15
Work Register
204
IFNX1A
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
EDIT PHASE (MAINLINE)
R~qister
Usage
Work Register
Work RegisterjReturn Linkage
Base for Phase Common
Return Linkage
Pointer to ~osition in variable part of Edit Record
Ease for Edit Record Header
Pointer to position in Source Record (Input)
IFNX1A10
Base for
IFNX1A20
IFNX1A30
Base for IFNX1AOO
Return Linkage
Pass symbol pointers to and from IFNX1J
Pass symbol pointers to and from IFNX1J
Target Linkage
Ease for Common
Work Register
Work Register
Deviations - METASCAN Routine
Register
3
5
9
12
14
Register Usage
Exit Code
Mtable Index
Return Linkage
Pointer to current entry in Mtable
Work Register
Deviations - RDSRC Routine
Register
3
4
5
9
10
11
12
13
Register Usage
Source data move length
Source begin column
Source continue character column
Return Linkage
Sequence field begin
Source record pointer
Sequence field length
INPTR Pointer
Continue field begin column
Source record end
string count
card
n
Diagnostic Aids
205
Deviations - TRTEST Routine
Register
1
2
3
10
11
12
15
206
Register Usage
Terminating character addr (at exit)
Work Register
Catagcry number (at exit)
Search type (at entry) ~ype Nurober (at exit)
Work Register
Translate table pointer
String move length (At Exit)
IFNX1J
Register
EDIT DICTIONARY ROUTINES
R7gister Usage
o
Work Register
2
3
4
8
9
10
11
Ease for Phase Common
Symbol length register
Symbol pointer register
Variable Symbol Dictionary
Base for
Sequence Symbol Reference
Opcode tatle
Opsyn synonym
Base for Current Variable Symtol Directery entry
Opsyn Table entry
Base for Current Macro Definition Directory entry
Cpsyn synonym entry
Ease for IFNX1JOO
Return Link
Pass symcol pointers to and from IFNX1A
Pass symbol pointers to and from IFNX1A
12
13
14
15
Base
Base
Work
Work
1
5
6
7
n"
for IFNX1JOO at entry
fer Common
Register
Register
Diagnostic Aids
207
IFNX1S
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
208
POSTFI~
Register Usage
Unused
Unused
Base for Phase Common
Pointer to last stack elerrent
Pointer to current position in Edit Record
Unused
Unused
Unused
Unused
Return linkage
Input O{:era tor
Unused
Base for IFNX1S00
Unused
Unused
Binding factor work register
(output)
IFNX2A
Register
o
1
2
3
4
5
6
7
8
9
10
1
12
13
14
15
DICTIONARY INTERLUCE
Register Usage
Work
Work
Base
Ease
Base
Register
Register
fer phase Common
for current macro definition entry
for
Skeleton Dictionary
Ordinary Symbol Attribute Reference Dictionary
Branch lable Base
Ordinary Symbol Attribute Reference lable
Base fer
Sequence Symbol Definition Table start
Global Cefinition Directery
Pointer to
Sequence Symbol Definition table entry
Operand teing scanned
Base fer IFNX2AOO
Return link
Work Register
Work Register
Base for IFNX2AOO at entry
Symbol length register
Base fer Common
Work Register
Work Register
Diagnostic Aids
209
IFNX3A
GENERA~E
PHASE
(~AINLINE)
Register Usage
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Work Register
Work Register
Work Register
Work Register
Pointer to Output Field
Input Text Record
Pointer to input field
Ease for Generate coromon
Base Register
Return linkage
Work Register
Output text record
Target Linkage
Ease for Common
Work Register
Work Register
Deviations - RESOLVE Routine
Register
10
14
Register Usage
Pointer to term
Pointer to parameter entry
Deviations - EVAL Routine
Register
5
6
Register Usage
Pointer to stack
Meta text pointer
Deviations - GEN9TRNG Routine
Register
4
6
10
11
210
Register Usage
Pointer to length field
of current string
Meta text pointer
Next availatle output
position
Next Meta flag
IFNX3B
Resister
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
GENERATE PHASE (SYMBOL RESOLUTION PREPROCESSOR)
Register Usage
Work Register
Work Register
Work Register
Work Register, Operand pointer
Points to beginning of operand
Points to input text record
Work Register
Ease for GENCOM
Base for IFNX3B
Return Linkage
Work Register
Output record pointer
Target linkage
Ease for Common
Not Used
Not Used
Diagnostic Aids
211
IFNX3N
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
GENERAT..E PHASE
DICTIONARY ROU'IINES
Register Usage
Work Register
Work R.egister
Pointer to next Allocation Address
Pointer to Error Record
Not Used
Maximum Record Length for File
File Pointer
Ease for Generate Coremon
Base for IFNX3N
Return Linkage
Work Register
Work Register
Target Linkage
Base for Common
Work Register
Work Register
Deviations - MACRCALL Routine
Register
2
7
8
10
11
Register Usage
Pointer to MtVENTRY
Base for Generate Common
Ease for IFNX3N
Meta text pointer
Return Code
Deviations - MACRPOST Routine
Register
o
1
2
3
4
5
6
7
8
10
11
12
13
14
15
212
Register Usage
Work Register
Work Register
Pointer to next parameter table entry
Pointer to parameter vector entry
Overlay check pointer
Parameter value length
Pointer to parameter record header
Ease for generate common
Base for IFNX3N
Pointer to parameter record
Pointer to Parameter Value
Length and Value
Target linkage
Ease for Common
Work Register
Work Register
Deviations - MACRKWRD Routine
Register Usage
2
3
4
5
6
Pointer
Pointer
Overlay
Keyword
Operand
to parameter table entry
to ~arameter vector entry
check pointer
value length
Pointer
Deviations - PROTOKW[ Routine
Register
1
2
3
4
7
8
9
10
11
12
13
14
15
Deviations -
Register Usage
Work Register
Pointer to keyword in pararreter table
Keyword length
Chain Pointer
Base for Generate Common
Base for IFOX3N
Return Linkage
Pointer to parameter record
Pointer to ~arameter value length and value
Target linkage
Base for Common
Work Register
Work Register
PRO~OEND
Routine
Register Usage
o
1
2
10
14
15
Work Register
Work Register
Chain pointer
Skeleton dictionary pointer
Pointer to MDV entry
Work Register
Work Register
Deviations - GELtICTR/S, LCLCICTR/S Routines
Register
1
3
10
11
14
15
Register Usage
Work Register
Dictionary ~ointer
Meta text pointer
Value of value pointer
Work Register
Work Register
Diagnostic Aids
213
Deviations Register
1
2
10
11
14
PARM~ELR
Routine
Register Usage
Work Register
Parameter vector
Meta text pointer
Parameter table entry
Work Register
Deviations - SEQSYMBR Routine
Register
2
10
11
Register Usage
Sequence symbol
Meta text pointer
Pointer to note/point address
Deviations - ORtSYMER Routine
Register
10
11
214
Register Usage
Meta text pointer
Pointer to entry in
ordinary symbol reference dictionary
IFNX4D
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SYMBOL RESOLU'IION PHASE (DC/OS EVALUATION ROUTINES)
Reg~~r
Usage
Work Register
Work Register
Work Register
Return linkage
Text record pointer
Operand pointer
ESD entry pointer
Common base for phase
IFNX4D base
Return linkage
Work Register
Work Register
Target linkage
Common Ease
Pointer to symbol table entry
Work Register
Diagnostic Aids
215
IFNX4E
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SYMBOL RESOLUTION
(ESL ROUTINES)
Register Usage
Work Register
"
"
n
n
"
"
n
"
Text record pointer
Work Register
Phase Common Ease
INFX4E Ease
Return linkage
Input and output pointer
Work Register
Target Linkage
Common Base
Symbol tacle entry pointer
Work Register
Deviations - GETESD Routine
Register
4
Register Usage
Note list pointer
Deviations - MAKESr Routine
Register
6
14
216
Register Usage
ESD entry pointer
Work Register
IFNX4M
SYMEOL RESOLUTION
Register
Register Usage
o
Work register
1
II
2
II
II
3
4
5
6
7
8
9
10
11
II
II
12
13
14
15
(MAINLINE)
II
Input record pointer
Operand pointer
ESt entry pointer
Phase common base
IFNX4M
Return Linkage
Work Register
II
II
Target linkage
Common Ease
Work Register
n
II
Diagnostic Aids
217
IFNX4S
SYMBOL RESOLU'IION (SYMBOL TABLE ROUTINES)
Register
Register Usage
o
Work Register
Return Linkage
Work Register
1
.2
3
4
5
6
7
8
9
10
11
12
13
14
15
218
..
II
n
n
n
n
Not used
Symbol Resolution Common Base
Base for IFNX4S
Return linkage
Work Register
n
..
Target linkage
Corerr:on Base
Symbol tacle entry pointer
Work Register
IFNX4V
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SYMBOL
RESOLU~ION
(EXPRESSION
EVALUA~ION)
Register Usage
Work Register
Work Register
Term stack pointer
Relocation list pointer
Operator stack pointer
Expression ~ointer
Pointer to ESC entry
Symbol Resolution Common Base
Ease for IFNX4S
Return linkage
ESCIC of expression
Value cf ex~ression
Target linkage
Base for Common
Work Register
Work Register
Diagnostic Aids
219
IFNX5A
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
220
ASSEMBLER OPCODE PROCESSOR
Register Usage
Not Used
Work Register
Work Register
Base Register for over 4K USING
Variable text pointer
Fixed test ~ointer
Return register for BAL
Base register for Phase Common Area
Base register for first 4K USING
Return register for BALR
Print index, File index
Resolved symbol data pointer,
RLC and XREF record pointer
Branch register BALR
Base register for Common
Work o~erand pointer
Work Register
IFNX5C
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
ASSEMBLER INITIALIZATION
Register Usage
Not Used
Work Register
Work Register
Not Used
Variable text pointer, symbol data
record base register
Fixed text ~ointer
Return register in BAL
Phase Common Base Register
IFNX51 Mainline Base Register
Return Register
File index
Symbol data record base, XREF record base
Branch register EALR
Base register for Common
Work Register
Work Register
Diagnostic Aids
221
IFNX5D
Register
o
Register Usaqe
Work Register
1
II
II
2
n
n
3
4
5
6
7
8
9
10
11
12
13
14
15
222
DC EVALUATION ROUTINE
tC table pointer
Work Register
II
II
Operand J;ointer
Phase Common Base
Ease Register for routine
Return register for BALR
EStlt of evaluated expression
Value cf evaluated expression, symbol record pointer
Eranch Register in BALR
Base Register for Common
Work Register
Save area pointer
IFNX5F
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
FLOATING
POIN~
CONVERSION ROUTINE
Register Usage
Scale factor
Pointer to scan character
Pointer to array
Work Register
Working storage base
Address of last constant
Work Register
Phase common low limit scale
Phase common high limit scale
Low word of decimal
position of decimal point
End ~ointer
Exponent modifier
Base for Corr~on
Adjective exponent, Return Register
Binary result
Diagnostic Aids
223
IFNX5L
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
224
ERROR LOGGING ROUTINE
Register Usage
Work Register
Work Register
Work Register
Work Register
Not Used
Text record pointer'
Not Used
Ease for Phase' Common
Base Register
Return register BALR
File index
Ease for errQ~ record
Branch register BALR
Ease for Corrmon
Work Register
Work Register
IFNX5M
MACHINE OP PROCESSOR
~ster
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Usage
Not Used
"
..
Work Register
Entry pointer
Value of expression
Fixed part pointer
EStIt of expression
Base fer Phase Common
Routine Base
Return register EALR
Variable text pointer, file index
XREF record base
Branch register for BALR
Ease for Common
Using fer extended opcodes
Using tatle pointer
Diagnostic Aids
225
IFNX5F
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
226
PRINT ROUTINE
Register Usage
Not Used
Work Register
Print buffer using, Funch butfer using
Work Register
Variable text part Using
Fixed text part Using
Return register BAL
Phase Common Ease
Return Register BALR
Subroutine Ease
Print index, File index
Work Register
Branch Register BALR
Common Ease
Field length
Work Register
IFNX5V
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
EVALUATION ROUTINE
Register Usage
Not Used
Work Register
Term stack ·~ointer
Relocation list pointer
Operator stack pointer
Input character pointer (DSECTS)
XREF Using
Base Phase Common
Work Register
Branch Register BALR
File index, Work Register
Symbol definition record Using
Return Register BALR
Ease Common
14
15
Work Register
Diagnostic Aids
227
IFNX6A
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
228
POSTPROCESSOR
Register Usage
End cf Buffer, string count file 1
String count file 2
Record ~ointer file 1
Record pointer file 2
Work Register
Work Register
Return Register BAL
Phase Common Ease
Subrcutine Base
Eranch register
File index
Euffer pointer
Return register
Common Ease
Work Register, RLD byte count
Work Register
IFNX6B
Register
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
DIAGNOSTIC PHASE
Register Usage
Work Register
Work Register
Message index
Message table pointer
Counting register
Return register EAL
Input pointer JGETL buffer
Ease for Phase Common
Base Register
Return Register EALR
File index, message length
Euffer pointer
Branch Register EAtR
Common Ease
Work Register
Work Register
D~agnostic
Aids
229
This page intentionally left blank
230
Appendixes
This section contains reference information about error message origin, macro
and copy code usage, metatext flags, internal operation codes, entry points and
EXTRN symbols, record formats, and the
internal character set.
Appendixes
231
Appendix A: Error Message/Module Cross-reference
ERROR MESSAGE NUMBER
ISSUING MODULE
IFOOOO
IFOOOl
IFOOO2
IFOOO3
IFOOO4
IFOOO5
IFOOO6
IFOOO7
IFOOO8
IFOOO9
IFOO1O
IFOOll
IFOO12
IFOO13
IFOO14
IFOO15
IFOO16
IFOO17
IFOO18
IFOO19
IFOO20
IFOO21
IFOO22
IFOO23
IFOO24
IFOO25
IFOO26
IFOO27
IFOO28
IFOO29
IFOO30
IFOO31
IFOO32
IFOO33
IFOO34
IFOO35
IFOO36
IFOO37
IFOO38
IFOO39
IFOO40
IFOO41
IFOO42
IFOO43
IFOO44
IFOO45
IFOO46
IFOO47
IFOO48
IFOO49
IFOO50
IFOO51
IFOO52
IFOO53
IFOO54
IFOO55
IFNX6B
IFNX1J
IFNX1J
IFNX1J
IFNX1J
IFNX1J
IFNX1J
IFNX1J
IFNX1J
IFNX1A, IFNX1J
IFNX1A, IFNX1J
IFNX1J
IFNX1A
IFNX1A
IFNX1A, IFNX1J
232
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A, IFNX5D
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
ERROR MESSAGE NUMBER
IF0056
IF0057
IF0058
IF0059
IF0060
IF006l
IF0062
IF0063
IF0064
IF0065
IF0066
IF0067
IF0068
IF0069
IF0070
IF007l
IF0072
IF0073
IF0074
IF0075
IF0076
IF0077
IF0078
IF0079
IF0080
IF008l
IF0082
IF0083
IF0084
IF0085
IF0086
IF0087
IF0088
IF0089
IF0090
IF009l
IF0092
IF0093
IF0094
IF0095
IF0096
IF0097
IF0098
IF0099
IF0100
IF010l
IF0102
IF0103
IF0104
IF0105
IF0106
IF0107
IF0108
IF0109
IFOllO
IFOlll
IFOl12
IFOl13
IFOl14
IFOl15
IFOl16
IFOl17
ISSUING MODULE
IFNX1A
IFNX1A
IFNX1A
IFNX1A, IFNX3A
IFNX1A
IFNX1A
IFNX2A
IFNX2A
IFNX2A
IFNX1A
IFNX1A
IFNX1A
IFNX1A
IFNX2A
IFNX2A
IFNX3A
IFNX2A
IFNX2A
IFNX3A
IFNX1A, IFNX3A
IFNX3A
IFNX3N
IFNX3A
IFNX3N
IFNX3N
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
Appendix A:
Error Message/Module Cross-reference
233
ERROR MESSAGE NUMBER
ISSUING MODULE
IFOl18
IFOl19
IF0120
IF0121
IF0122
IF0123
IF0124
IF0125
IF0126
IF0127
IF0128
IF0129
IF0130
IF0131
IF0132
IF0133
IF0134
IF0135
IF0136
IF0137
IF0138
IF0139
IF0140
IF0141
IF0142
IF0143
IF0144
IF0145
IF0146
IF0147
IF0148
IF0149
IF0150
IF0151
IF0152
11"0153
I?0154
IF0155
IF0156
IF0157
IF0158
IF0159
IF0160
IF0161
IF0162
IF0163
IF0164
IF0165
IF0166
IF0167
IF0168
IF0169
IF0170
IF0171
IF0172
IF0173
IF0174
IF0175
IF0176
IF0177
IF0178
IF0179
IFNX3A
234
IFNX3A, IFNX5V
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3A
IFNX3N
I~NX3N
IFNX3N
IFNX5M
IFNX5M
IFNX5A
IFNX5A
IFNX5A,
IFNX5V
IFNX5V
IFNX5V
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A,
IFNX5A
IFNX5A,
IFNX5A,
IFNX5C, IFNX5M
IFNX5D
IFNX5D, IFNX5M
IFNX5D
ERROR MESSAGE NUMBER
ISSUING MODULE
IF0180
IF0181
IF0182
IF0183
IF0184
IF0185
IF0186
IF0187
IF0188
IF0189
IF0190
IF0191
IF0192
IF0193
IF0194
IF0195
IF0196
IF0197
IF0198
IF0199
IF0200
IF0201
IF0202
IF0203
IF0204
IF0205
IF0206
IF0207
IF0208
IF0209
IF02l0
IF02ll
IF0212
IF0213
IF0214
IF0215
IF02l6
IF0217
IF0218
IF0219
IF0220
IF0221
IF0222
IF0223
IF0224
IF0225
IF0226
IF0227
IF0228
IF0229
IF0230
IF0231
IF0232
IF0233
IF0234
IF0235
IF0236
IF0237
IF0238
IF0239
IF0240
IF0241
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A,
IFNX5V
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A
IFNX5A,
IFNX5A
IFNX5D
IFNX5D
IFNX5D
IFNX5D
IFNX5D
IFNX5D
IFNX5A,
IFNX5D
IFNX5D
IFNX5D
IFNX5D,
IFNX5D,
IFNX5A,
IFNX5A,
IFNX5M
IFNX5A,
IFNX5M
IFNX5M
IFNX5A,
IFNX5A,
IFNX5M
IFNX5M
IFNX5M
IFNX5M
IFNX5M
IFNX5M
IFNX5D
IFNX5M
IFNX5M
IFNX5M
IFNX5M
IFNX5M
IFNX5D,
IFNX5D,
IFNX5D, IFNX5V
IFNX5C
IFNX5D
IFNX5M
IFNX5M
IFNX5M
IFNX5M
IFNX5D, IFNX5M
IFNX5M
IFNX5M, IFNX5V
IFNX5M
IFNX5V
IFNX5V
IFNX5V
IFNX5V
IFNX5D, IFNX5V
IFNX5A
IFNX5V
IFNX5D
IFN"X5A, IFNX5V
IFNX5A
Appendix A:
Error Message/Module Cross-reference
235
ERROR MESSAGE NUMBER
ISSUING MODULE
IF0242
IF0243
IF0244
IF0245
IF0246
IF0247
IF0248
IF0249
IF0250
IF0251
IF0252
IF0253
IF0254
IF0255
IF0256
IF0257
IF0258
IF0259
IF0260
IF0261
IF0262
IF0263
IF0264
IF0265
IF0266
IF0267
IFNX5A
IFNX5A
IFNX5A
236
IFNX5A, IFNX5M
IFNX5A
IFNX5D
IFNX6B
IFNX6B
IFNX6B
IFNX6B
IFOXOD, IFOXOI
IFOXOC, IFOXOE, IFOXOG, IFOXOI
IFOXOB, IFOXOI
IFOXOI
IFNX6B
IFNX6B
IFOXOI
IFNX6B
Appendix B: Macro & Copy Code/Module
Cross-reference
Macrc Narre
Used in Object Modules
Cescription of Macro
CHECK
IFOXOB, IFOXOF
See OSjVS rata Management Macro
Instructions.
CLOSE
IFOXOA, IFOXOB, IFOXOC.
IFOXOE, IFOXOF, IFCXOG,
IFOXOH, IFOXOI
See OSjVS Data Management
Instructicns.
CON'IAINS
IFNX4D, IFNX4E, IFNX4M,
IFNX4N, IFNX4S, IFNX4T,
IFNX4V
Inner macro to ICOMMON used to
create external rcutine name
array
CON'IENTS
IFNX4E, IFNX4S
Generates a branch tatle to
rcutines in IFNX4E
DBV
IFNX1A,
IFNX2A,
IFNX3N,
IFNX4M,
IFNX4T,
IFNXSC,
IFNXSM,
IFNX6E
DCB
IFOXOC, IFOXOE, IFOXOG
See OSjVS Cata Management Macro
Instructions.
DCBD
IFOXOD, IFOXOF, IFOXOI,
IFOXOH
See OS/VS Data Management
Instructions.
DCDSWORK
IFNX4r, IFNX4N
Generates a work area for CC/CS
Evaluation Routine.
DELETE
IFOXOA, IFOXOI
See OSjVS Su~erviscr Services and
Macro Instructicns.
DEV'IYPE
IOFXOD, IOFXOI
See OSjVS Data Management for the
Systerr Programmer.
DSW
IFOXOA,
IFNX1S,
IFNX3E,
IFNX4E,
IFNX4S,
IFNXSA,
IFNXSF,
IFNXSP,
IFNX6E,
EVALWORK
IFNX4V, IFNXSA, IFNXSC,
IFNXS r , IFNXS F, IFNXSV
Generates an evaluation routine work
area in the conrrcn area of the
~hase which calls EVALWORK.
FINC
IFOXOF
See OS/VS Data Management
Instructions.
IFNX1J,
IFNX3A,
IFNX4r,
IFNX4N,
IFNX4V,
IFNXSr,
IFNXSP,
IFNX 1A,
IFNX2A,
IFNX3N,
IFNX4M,
IFNX4T,
IFNXSC,
IFNXSL,
IFNXSV,
IFNX6C
Appendix B:
IFNX1S,
IFNX3B,
IFNX4E,
IFNX4S,
IFNXSA,
IFNXSL,
IFNX5V,
IFNX 1J ,
IFNX3A,
IFNX4r,
IFNX4N,
IFNX4V,
IFNXSD,
IFNXSM,
IFNX6A,
~acro
refines byte values by using
equates and rs OX.
~acro
Cefines a switch byte and names
the bits in the tyte.
~acro
Macro & Copy Code/Module Cross-reference
237
Macro Name
Used in Otject Modules
Cescription cf
FREE~AIN
IFOXOA, IFOXOr, IFOXOF,
IFOXOI .
See OS/VS Superviscr Services and
Macro Instructions.
FREE FOOL
IFOXOF, IFOXOH, IFOXOI
See OS/VS Data
Instructions.
GENERR
IFNX6C
Generates error messages and a
branch table.
GENCP
IFNX1K, IFNX3K
Generates the twc cp cede table
modules according to the value of
the o~erands in the call. ~he macro
hashes the op codes ~nto the tatle
and prints the hash chains.
GENOPS
IFNX3A
Programmer macro.
GENTAB
IFNX6C
Prcgrarrmer rracrc.
GET
IFOXOF
See OS/VS Data
Instructions.
GET~AIN
IFOXOA, IFOXOr, IFOXOF
See OS/VS Superviscr Services and
Macro Instructicns.
GOlF
IFOXOA,
IFOXOF,
IFNX1A,
IFNX2A,
IFNX4r,
IFNX4N,
IFNX4V,
IFNXSr,
IFNXSM,
IFNX6A,
IFOXOB,
IFOXOH,
IFNX1J,
IFNX3A,
IFNX4E,
IFNX4S,
IFNXSA,
IFNXSF,
IFNXSP,
IFNX6E
IFOXOD,
IFCXOI,
IFNX1S,
IFNX3E,
IFNX4M,
IFNX4T,
IFNXSC,
IFNXSL,
IFNXSV,
Generates instructions to test a
given conditicn and tranch if the
condition is satisfied.
GOIF1
IFOXOA,
IFOXOF,
IFNX1A,
IFNX2A,
IFNX4r,
IFNX4N,
IFNX4V,
IFNXSr,
IFNXSM,
IFNX6A,
IFOXOB,
IFOXOH,
IFNX1J,
IFNX3A,
IFNX4E,
IFNX4S,
IFNXSA,
IFNXSE,
IFNXSP,
IFNX6E
IFOXOD,
lFOXOI,
IFNX1S,
IFNX3B,
IFNX4M,
IFNX4T,
IFNXSC,
IFNXSL,
IFNXSV,
Inner macro to GOlF. Generates
instructions if a switch is to be
tested.
GOIF3
IFOXOA,
IFOXOF,
IFNX1A,
IFNX2A,
IFNX4r,
IFNX4N,
IFNX4V,
IFNXSr,
IFNXSM,
IFNX6A,
IFOXOB,
IFOXOH,
IFNX1J,
IFNX3A,
IFNX4E,
IFNX4S,
IFNXSA,
IFNXSF,
IFNXSP,
IFNX6E
IFOXOD,
lFOXOI,
IFNX1S,
IFNX3B,
IFNX4M,
IFNX4T,
IFNXSC,
IFNXSL,
IFNXSV,
Inner macro to GOlF. Generates
instructions tc test a field other
than a switch.
238
~acre
·~anagement
~anagement
~acro
~acro
Macro Name
Used in Object Modules
Description of
GOTO
IFNX4D, IFNX4E, IFNX4M,
IFNX4N, IFNX4S, INFX4T,
IFNX4V, IFNXSV
Generates a branch and link to a
specified subrcutine. The sucroutine
specified rrust be a syrr-bol defined
in the global array built by the
CONTAINS macro.
JCALL
IFOXOt, IFNX3A, IFNX5A,
IFNXSC, IFNXSt, IFNX5M,
IF'NX6E
Generates a branch and link
to a subroutine.
JCHECK
IFBX1J, IFNX2A, IFNX3N,
IFNX4E, IFNX6A
Generates a call to the Workfile
I/O Module Check Rcutine. This routine
checks fer a start I/O operation.
JCSECT
IFOXOA,
IFOXOD,
IFOXOG,
IFNX1A,
IFNX2A,
IFNX3N,
IFNXSt,
IFNXSM,
IFNX6E,
IFOXOE,
IFOXOE,
IFOXOE,
IFNX1J,
IFNX3A,
IFNXSA,
IFNXSF,
IFNXSP,
IFNX6C
IFOXOC,
IFOXOF,
IFOXOI,
IFNX1S,
IFNX3B,
IFNXSC,
IFNXSL,
IFNX6A,
Generates a CSEC~ with a CSEC~ name
from the macro instruc~ion operands.
If desired, an EQU to the CSECT
name will be generated.
JENTRY
IFOXOA,
IFOXOt,
IFOXOE,
IFNX1J,
IFNX3A,
IFNXSA,
IFNXSF,
IFNXSP,
IFNX6C
IFOXOB,
IFOXOF,
IFOXOI,
IFNX1S,
IFNX3E,
IFNXSC,
IFNXSL,
IFNX6A,
IFCXOC,
IFOXOE,
IFNX1A,
IFNX2A,
IFNX3N,
IFNXSD,
IFNXSM,
IFNX6B,
Generates an entry statement and,
if desired, an EQU to the entry
point.
JEXTRN
IFOXOA,
IFNX3A,
IFNXSA,
IFNXSM,
IFOXOD,
IFNX3N,
IFNXSC,
IFNXSV,
IFNX1J,
IFNX4V,·
IFNXSC,
IFNX6B
Generates an EXTRN statement. An
EQU to the external symbol is
generated if s~ecified in the
rracro call.
JFIND
IFNX1A
Generates a call to the FIND
reutine of the In~ut I(C ~odule
(IFOX04) • The FIND routine locates
a rracro or a cc~y code member.
JFRECORE
IFNX1A, IFNX1J, IFNX2A,
IFNX3A, IFNX4~, IFNX4T,
IFNXSC, IFNX6A, IFNX6B
Generates a call to the Workfile I/C
Module (IFOXOO) tc free a block of
storage.
JGEN
IFOXOC
Generates an ORG to a specified
address and a DC cf specified type
and value.
JGENERR
IFOXOE,
IFOXOE,
IFNX1A,
IFNX3A,
IFNXSC,
IFNXSV,
IFOXOC,
IFOXOG,
IFNX1J,
IFNX3N,
IFNXSt,
IFNX6E
Appendix B:
IFOXOD,
IFOXOI,
IFNX2A,
IFNXSA,
IFNXSM,
~acro
Copies copy code (ERMS) into
JERMSGCD.
Macro & Copy Code/Module Cross-reference
239
Macro Name
Used in Object Modules
Description of
JGENIN
IFOXOC, IFOXOD, IFNX4E,
IFNXSA, IFNXSP, IFNX6A,
IFNX6E, IFNX6C
Generates internally coded
character strings. It acce~ts
alphanumeric characters, and all
special characters exceFt ampersands and quotes.
JGETCORE
IFOXOA,
IFNX2A,
IFNX4M,
IFNX6A,
Generates a call to the I/C
Interface Modules to obtain
rrain storage.
JGETL
IFNX3A, IFNX3N, IFNX4V,
IFNXSA, IFNXSC, IFNXSD,
IFNXSM, IFNXSV, IFNX6B
Generates a call to the ~ork
file I/O Module (IFOXOO) to
get the address of the next
logical record.
JHEAC
IFOXOA,
IFOXOC,
IFOXOG,
IFNX1J,
IFNX3A,
IFNX4E,
IFNX4S,
IFNXSA,
IFNXSF,
IFNXSP,
IFNX6E,
Generates a ~I~LE statement
andoa status MNOTE in the
prolog of a module.
JINPUT
IFNX1A
Generates a call to the Input
I/O Module (IFCX04) to get the
next record from the input file.
JINST
IFNX1A
Generates rrachine instructions
according to macro call operand
values.
JMODID
IFOXOA,
IFOXOD,
IFOXOG,
IFNX1A,
IFNX2A,
IFNX3N,
IFNX4M,
IFNX4T,
IFNXSC,
IFNXSM,
IFNX6A,
JNOTE
IFNX1J, IFNX2A, IFNX3N,
IFNX4E, IFNX4V, IFNXSD,
IFNXSV, IFNX6A
Generates a call to the Workfile
I/O Module (IFCXOO) to note the
position of the last READ or
WRITE on a work file.
JNOTELE
IFNX1A
Generates a call to the Input I/C
~odule
(IFOX04) to note a
position in the rracro library.
JPARM
IFOXOJ
Generates code in IFOXOJ which
contains bit strings re~resenting
the options s~ecified in thePAR~
field.
240
IFNX1A, IFNX1J,
IFNX3A, IFNX3N,
IFNX4T, IFNXSC,
IFNX6E
IFOXOB,
IFOXOE,
IFOXOH,
IFNX1S,
IFNX3N,
IFNX4M,
IFNX4T,
IFNXSC,
IFNXSL,
IFNXSV,
IFNX6C
IFOXOB,
IFOXOE,
IFOXOH,
IFNX1J,
IFNX3A,
IFNX4D,
IFNX4N,
IFNXSA,
IFNXSF,
IFNXSP,
IFNX6B,
IFOXOC,
IFOXOF,
IFOXOI,
IFNX2A,
IFNX4C,
IFNX4N,
IFNX4V,
IFNXSD,
IFNXSM,
IFNX6A,
IFOXOC,
IFOXOF,
IFOXOI,
IFNX1S,
IFNX3B,
IFNX4E,
IFNX4S,
IFNXSC,
IFNXSL,
IFNXSV,
IFNX6C
~acro
Generates an embedded identifier
which consists of a six character
module name identifier and a half
word change level identifier.
~acro
Name
Used in Otject Modules
Lescription of
JPATCH
IFOXOA,
IFQXOL,
IFOXOG,
IFNX1J,
IFNX3A,
IFNX4L,
IFNX4N,
IFNX4V,
IFNX5r,
IFNX5M,
IFNX6B,
Calculates the size of a patch area
that is originally 5% cf the CSECT
size, then allccates that fatch area.
JPHASE
IFOXOA
JPOINT
IFNX1J,
IFNX3N,
IFNX4T,
IFNX5L,
JPOINTLB
IFNX1A
Generates a call to the Input I/O
Module (IFOX04) to position the
library file in order to get the
record after the one noted.
JPRINT
IFNX4E, IFNX5P, IFNX6A,
IFNX6E
Generates a call to the Output I/C
Module (IFOX06) to ~rint a line on
SYSPRINT and tc obtain the address
of the next buffer.
JPUNCH
IFNX4L, IFNX4E, IFNX4M,
IFNX4N, IFNX4T, IFNX5P,
IFNX6A, IFNX6E
Generates a call to the Output I/O
Module (IFOX06) to outfut an 80 byte
record on SYSPUNCH and SYSGO, and to
attain the address of the next buffer.
JPUTL
IFNX1A, IFNX1J, IFNX3A,
IFNX3E, IFNX4M, IFNX4T,
IFNX4V, IFNX5A, IFNX5C,
IFNX5L, IFN~5M, IFNX5V
Generates a call to the Workfile I/O
~odule (IFOXOO)
to obtain the address
of the next record in the buffer.
JPUTM
IFNX1J, IFNX3A, IFNX3B,
IFNX3N, IFNX4E, IFNX4M,
IFNX4T, IFNX5A, IFNX5C,
IFNX5L
Generates a call to the Workfile I/O
Module (IFOXOO) to copy a record into
the output buffer.
JREAD
IFNX2A, IFNX3N, IFNX4E,
IFNX6A
Generates a call to the Workfile I/O
Module (IFOXOO) to read a fhysical
record. A JCHECK rracro call must be
issued before any additional operations on the wcrkfile are attempted.
JRETURN
IFOXOA,
IFOXOF,
IFNX1A,
IFNX4M,
IFNX5C,
IFNX5L,
IFNX6A,
Restores registers R2 through R9 of
the calling frcgrarr fron: a push down
save area and then returns to the
caller via R9.
IFOXOB,
IFOXOE,
IFOXOH,
IFNX1S,
IFNX3E,
IFNX4E,
IFNX4S,
IFNX5A,
IFNX5F,
IFNX5P,
IFNX6C
IFOXOC,
IFOXOF,
IFOXOI,
IFNX2A,
IFNX3N,
IFNX4M,
IFNX4T,
IFNX5C,
IFNX5L,
IFNX5V,
~acro
Programmer macro
IFNX2A,
IFNX4E,
IFNX4V,
IFNX5V,
IFOXOB,
IFOXOH,
IFNX2A,
IFNX4T,
IFNX5L,
IFNX5M,
IFNX6B
Appendix B:
IFNX3A,
IFNX4M,
IFNX5C,
IFNX6A
IFOXOD,
IFOXOI,
IFNX3A,
IGNX5A,
IFNX5F,
IFNX5P,
Generates a call to the Workfile I/O
Module (IFOXOO) tc locate a specified
position in the work file.
Macro & Copy Code/Module Cross-reference
241
Macro Name
Used in Oeject Modules
Description cf
JSAVE
IFOXOA,
IFOXOF,
IFNX1A,
IFNX4M,
IFNXSA,
IFNXSL,
IFNX5V,
Saves registers R2 through R9 of the
calling prcgrarr in a push down save
area. Unless cverridden, the macro
will load the base register, R8,
froIT R12 and generate a USING
statement.
JPRINT
IFNX6B
Generates a call to the Output I/O
Module (IFOX06) tc output a record
on the system data set.
JTRUNC
IFNX1A, IFNX1J, IFNX3A
Generates a call to the Workfile
I/O Module (IFOXOO) to truncate
an output buffer. ~his causes the
current output buffer to ce regarded as full and it is written
out on the file. The next logical
record will be ~ut in the next
physical buffer.
JWRITE
IFNX1J, IFNX2A, IFNX4E,
IFNX6A
Generates a call to the Workfile
I/O Module (IFOXOO) to write a
physical record. This operation
must be checked ~CHECK) for
completion befcre any additional
operations on the file are
attempted.
LOAD
IFOXOA
See Data Management Macro
Instructions.
MIEND
IFNXSM
Programmer macro.
MITAE
IFNXSM
programmer macrc.
NOTE
IFOXOE, IFOXOF
See·OS/VS Data Management
Macro Instructions.
OP
IFNX lK, IFNX3K
Inner macro to GENOP. OP is
called each tirre as an op code
is to be added to the op code
tacle.
OPCD
IFNXSM
Programmer macro.
OPEN
IFOXOA, IFOXOC, IFOXOE,
IFOXOF, IFOXOG, IFOXOH
See OS/VS Cata Management
Macro Instructicns.
OPND
IFNX5M
Programmer macro.
OPS
IFNX3A
programmer rracrc.
POINT
IFOXOB, IFOXOF
See OS;VS Data Management
Macro Instructions.
PUT
IFOXOH
See OS/VS Data ~anagement
Macro Instructions.
READ
IFOXOE, lFOXOE, lFOXOF
See OS/VS Data Management
Macro Instructicns.
242
IFOXOB,
IFOXOH,
IFNX2A,
IFNX4T,
IFNXSC,
IFNXSM,
IFNX6A,
IFOXOD,
IFOXOI,
IFNX3A,
IFNX4V,
IFNXSF,
IFNXSP,
IFNX6B
~acro
~acro
Macro Name
Used in Object Modules
Description of
RETURN
IFOXOA
See OSjVS Supervisor Services
and Macro Instructions.
SAVE
IFOXOA
See OSjVS supervisor Services
and Macro Instructions.
SET
IFOXOA,
IFOXOF,
IFNX1J,
IFNX3E,
IFNX4M,
IFNX4T,
IFNX5C,
IFNX5M,
IFNX6A,
SYNADAF
IFOXOI
See OSjVS Cata Management
Macro Instructiens •
. IFOXOI
See OSjVS Cata Management
Macro Instructiens.
SYNADRLS
IFOXOB,
IFOXOH,
IFNX2A,
IFNX4C,
IFNX4N,
IFNX4V,
IFNX5C,
IFNX5P,
IFNX6E
IFOXOD,
IFNX1A,
IFNX3A,
IFNX4E,
IFNX4S,
IFNX5A,
IFNX5L,
IFNX5V,
Sets a specified bit on or off.
TBLGEN
IFNX1A
Generates two different tatles:
one table of dis~lacements and
one table of constants.
TEXT
IFNX5M
programmer macre.
TIME
IFOXOD
See OSjVS Supervisor Services and
Macro Instructiens.
TPUT
IFOXOH
See OS/VS Data Management
Macro Instructions.
WRITE
IFOXOE, IFOXOC
See OS/VS Data Management
Macro Instructiens.
WTO
IFOXOD, IFOXOI
See OSjVS Supervisor Services and
Macro Instructiens.
XDCDS
IFNX4C, IFNX4N
Depending en the call,. generates
assembler Symbel Resolution
DC/DS Evaluation Routines.
XDICT
IFNX4E
Generates rrodule IFNX4E.
XEVAL
IFNX4V, IFNX5V
Generates evaluation routines
IFNX4 V, IFNX5V_
XFOUR
IFNX4M, IFNX4T
Depending en the call, generates
IFNX4M and IFNX4T.
XSTBL
IFNX4S
Generates IFNX4S.
X5ERRL
IFNX4V, IFNX5A, IFNX5C,
IFNX5C, IFNX5M, IFNX5V
Generates a call to IFOX51
Error Logging Routine (IFNX5L)
with the error number as a
parameter.
Appendix B:
Macro & Copy Code/Module Cross-reference
243
Copy Code
Name
Used by Object Modules
Description of Copy Code
BMDSECTS
IFNX4V, IFNX5C, IFNXSV
DSECT mapping RLL, XREF, and
error records.
EDSECT
IFNX1A, IFNX1J, IFNX1S
DSECT mapping the Edit Phase
(IFOX11) Common Area.
ERMS
IFOXOB,
IFOXOE,
IFNX1A,
IFNX3A,
IFNX5[,
IFNX5V,
Contains the symbolic names
and associated text of all
error messages.
GENCOM
IFNX3A, IFNX3N
DSECT mapping generate phase
(IF~X31) Cerrrren Area.
I COMMON
IFNX4[, IFNX4E, IFNX4M,
IFNX4N, IFNX4S, IFNX4T,
IFNX4V, IFNX5V
Contains the code for modules
IFNX4D and IFNX4N.
JCOMMON
IFOXOA,
IFOXOE,
IFOXOH,
IFNX1J,
IFNX3A,
IFNX4[,
IFNX4N,
IFNX5A,
IFNX5F,
IFNXSP,
IFNX6E,
IFOXOC,
IFOXOF,
IFOXOI,
IFNX1S,
IFNX3E,
IFNX4E,
IFNX4S,
IFNX5C,
IFNX5L,
IFNX5V,
IFNX6C
IFOXOD,
IFOXOG,
IFNX1A,
IFNX2A,
IFNX3N,
IFNX4M,
IFNX4V,
IFNX5D,
IFNX5M,
IFNX6A,
Common DSECT which defines
register equates and dis~lace
rrents, bit equates, file
equates, internal character
code equates, it also issues
a USING staterr.ent for register
13.
JERMSGCD
IFOXOC,
IFOXOG,
IFNX2A,
IFNX4V,
IFNX5[,
IFOXOD,
IFOXOI,
IFNX3A,
IFNX5A,
IFNX5M,
IFOXOE,
IFNX1J,
IFNX3N,
IFNX5C,
IFNX5V
DSECT providing symbolic names
for error rressages and their
severity cedes.
JERRCD
IFNX1A, IFNX2A, IFNX5A,
IFNX5L, IFNX6E
DSECT mapping the error record
passed to asserrbly phase.
JFLEBLK
IFOXOA, IFOXOC, IFOXOD
DSECT mapping the information
for a workfile in Master Common.
JINCOM
IFOXO E, IFOXO F, IFOXO I
DSECT mapping Inr:ut Corr.Iron Area.
JOUTCOM
IFOXOG, IFOXOH, IFOXOI
DSECT mapping Output Common Area.
JTEXT
IFNX2A,
IFNX3N,
IFNX4M,
IFNX5A,
IFNX5L,
IFNX6E
DSECT mapping the header of
edited text recerds.
244
IFOXOC, IFOXOD,
IFOXOG, IFOXOI,
IFNX1J~ IFNX2A,
IFNX3N, IFNX5A,
IFNX5L, IFNX5M,
IFNX6E
IFNX3A,
IFNX4C,
IFNX4N,
IFNX5C,
IFNX5M,
IFNX3B,
IFNX4E,
IFNX4T,
IFNX5D,
IFNX5P,
Copy Code
Name
Used by Ol:::ject Modules
Description of
JTMTXT
IFNX1A, IFNX1J, IFNX3N
DSECT mapping the meta text operators and identifiers.
RSY~RCD
IFNX3A,
IFNX4E,
IFNX4T,
IFNXSL,
Copy code rra~~ing the symbol
file records.
RXLFMTS
IFNXSA, IFNXSM, IFNX6A
DSECT mapping RLL, XREF, and
literal XREF records.
XSCOM
IFNX4V, IFNXSA, IFNXSC,
IFNXSI:, IFNXSF, IFNXSL,
IFNXSM, IFNXSP, IFNXSV
DSECT maI=ping IFOXS1 Corrmon
Area.
IFNX3E, IFNX4D,
IFNX4M, IFNX4N,
IFNX4V, IFNXSA,
IFNXSV
Co~y
Code
Appendix B: Macro & Copy Code/Module Cross-reference
245
Appendix C: Internal Operation Codes
The internal operation codes used by the assembler are listed below.
These internal codes define the record type of the internal text format
for assembler statements. For an internal operation code to exist within
an edited text record, the flag JPSOP must be on.
HEX
SYMEOL
DESCRIP'lION
00
01
02
03
04
JTICTL
JTISEQ
JTOPSYN
JTCOPY
JTANOP
IC'lL instructicn
ISEQ instruction
OPSYN instructicn
COpy instruction
ANOP instructicn
05
06
07
08
09
JTGBLA
JTGELE
JTGBLC
JTLCLA
JTLCLB
GBLA
GBLB
GBLC
LCLA
LCLE
OA
OB
OC
OD
OD
JTLCLC
JTMACRO
JTACTR
JTAGO
JTAGE
OE
OE
JTAIF
JTAIFB
OF
JTSETA
LCLC instructicn
~ACRO instruction
AC'lR instructicn
AGO instruction
Same as AGO. (Provided for
compatibility. )
AIF instruction
Same as AIF. (Provided for
coro~atibili ty.)
SETA instruction
10
11
12
13
14
JTSETE
JTSET
JTMEXIT
JTMEND
JTCALL
SETB instructicn
SETC instruction
MEXIT instruction
~END instruction
CALL rracro instruction
15
16
17
18
19
JTCP1
r
o
Z
C)
o
..,mo
-l
o
C
Z
m
Reply requested:
Yes D
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-8041-0
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. All comments and suggestions become the property of IBM.
o
C
-f
o
:0
"TI
o
r
Fold
Fold
o
l>
r
o
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• Z
G>
r
First Class
Permit 40
Armonk
New York
Business Reply Mail
No postage stamp necessary if mailed in the U.S.A.
Postage will be paid by:
International Business Machines Corporation
Department 813 L
1133 Westchester Avenue
White Plains, New York 10604
Fold
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)
FoJd
Z
m
OS/VS Assembler Logic
READER'S
COMMENT
FORM
SY33-804l-0
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.
()
C
-f
l>
r
o
Z
C)
o
o
-f
-f
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-8041-0
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. All comments and suggestions become the property of IBM.
(')
C
-f
o
:0
."
o
Fold
FOld
r
o
»
r
..................................................................................................... o
z
G')
r
First Class
Permit 40
Armonk
New York
,
Business Reply Mail
No postage stamp necessary if mailed in the U.S.A.
Postage will be paid by:
I nternational Business Machines Corporation
Department 813 L
1133 Westchester Avenue
White Plains, New York 10604
Fold
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)
FoJd
Z
m
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 Create Date : 2012:06:08 22:10:06-08:00 Modify Date : 2012:06:09 12:25:50-07:00 Metadata Date : 2012:06:09 12:25:50-07:00 Producer : Adobe Acrobat 9.51 Paper Capture Plug-in Format : application/pdf Document ID : uuid:6f022879-1d87-4a57-9910-3a2196883fa4 Instance ID : uuid:8f554d92-897b-4c54-a280-cebf25fa04de Page Layout : SinglePage Page Mode : UseNone Page Count : 266EXIF Metadata provided by EXIF.tools