Page 1

8086 
RELOCATABLE 
OBJECT 
MODULE 
FORMATS 
An 
Intel Technical Specification 
Order 
Number: 
121748-001 
. 
Copyr;ght~1981 
Intel Corporation, 
3065 
Intel Corporation 
Bowers 
Avenue, 
Santa Clara, California 
95051 
Page 2

Additional copies 
Literature Department 
Intel Corporation 
3065 
Bowers A venue 
Santa Clara, 
of 
this manual 
CA 
95051 
or 
other Intel literature may be obtained from: 
The information in this document 
Intel Corporation makes no warranty 
to. the implied warranties 
assumes no responsibility for any errors that may appear 
is 
subject to change without notice. 
of 
of 
merchantability 
any kind with regard to this material. including, but not limited 
and 
fitness for a particular purpose. Intel Corporation 
in 
this document. Intel Corporation makes no 
commitment to update nor to keep current the information contained in this document. 
Intel Corporation assumes no responsibility for the use 
an Intel product. No other circuit patent licenses 
Intel software products are copyrighted 
duplication 
or 
disclosure 
is 
subject to restrictions stated in Intel's software license. 
are 
implied. 
by 
and shall remain the property 
any circuitry other than circuitry embodied 
of 
Intel Corporation. Use. 
or 
as defined in ASPR 
in 
of 
7-104.9(a)(9). 
No part 
of 
this document may be copied 
of 
written consent 
Intel Cqrporation. 
The following are trademarks 
of 
Intel Corporation and its affiliates and may be used only to identify Intel 
or 
reproduced in any form 
or 
by 
any means without the prior 
products: 
BXP  Intelevision  Multibus 
CREDIT 
i 
ICE  iSBC 
iCS 
im 
Insile  MCS 
Intel 
inlel 
and the combination of ICE, iCS, iRMX, iSBC, iSBX, MCS. 
ii 
Intellec  Multimodule 
iRMX  Plug-A-Bubbk 
iSBX 
library 
Manager  RMX/!lO 
Megachassis 
Micromap 
or 
RMX and a numerical suffix. 
PROMPT 
Pwm\\are 
Sy,lcm 
:!OOO 
UPI 
"Scope 
IA 
500/1181/500 
IPI 
Page 3

8086 
Object 
Module 
Formats 
Version 
4." 
TABLE 
DOCUMENT 
- 'fABLE 
INTRODUCTION • • • • • • • • • • 
DEFINITION 
MODULE 
MODULE 
MODULE 
SEGMENT 
SEGMENT 
SYMBOL 
DATA 
INDICES 
CONCEPTUAL 
~~ODULE 
RECORD 
INTRODUCTION 
RECORD 
'r-MODULE 
L-MODULE 
R-MODULE 
LIST 
SEG~ENT 
~~OUP 
TYPE 
SYMBOL 
PUBLIC 
EXTERNAL 
LOCAL 
LINE NUMBERS 
BLOCK 
B 
DE8UG 
DATA 
RELOCATA9LE 
RELOCATABLE ITERATED 
PHYSICAL 
PHYSICAL ITERATED 
LOGICAL 
LOGICAL ITERATED 
FIXUP 
OVERLAY 
END 
REGISTEa 
MODULE 
LI 
i3RARY 
LIHRARY 
LIBRARY 
LIBRAHY 
CONTROL 
OF 
CONTENTS 
OF 
TERMS 
SEMANTICS 
IDENTIFICATION 
ATTRIBUTES 
DEFINITION 
ADDRESSING • 
DEFINITION 
• • • • • • • 
• • • • • • • • • • • 
FRAMEWORK 
SYN'fAX 
ORDER 
to 
FORl~ATS 
HEADER 
HEADER 
HEADER 
OF 
NAMES 
DEFINITION 
DEFINITION 
DEFINITION 
DEFINITION 
NAMES 
NAMES 
SYMBOLS 
DEFINITION 
LOCK 
END 
SYMBOLS 
RECORDS 
ENU~ERATED 
RECORD 
DEFINITIO~ 
RECORD 
INITIALIZATION 
E~D 
I~ECORDS 
HEADER 
~ODULE 
r-10DULE 
RECORD 
E~U~ERATED 
• • • • • • • • • • • • • • • • • • •  • • 
RECORD 
• • 
•••••• 
•••••• 
•••••• 
FOR 
• • • • 
the 
RECORD 
RECORD 
RECORD 
RECORD 
RECORD 
HECORD 
DEFINITION 
RECORD 
RECORD 
RECORD 
gNU~ERATED 
• • • • • • • • • • • • • • •  • 
• • • • • 
RECORD 
R~CORD 
RECORDS 
DEFINITION 
~ECORD 
• • • • • • • • • 
DATA 
DATA 
DATA 
RECORD 
• • • • • • • • • •  • • • • • • • 
RECORD 
NAMES 
LOCA'fIONS 
OF 
. . . . . . . 
• • • • 
• • • 
. . . 
FIXUPS 
FORMATS 
• • • • 
• • • • 
• 
••• 
• • • • 
RECORD 
•• 
• • • • • • • 
DATA 
DATA 
DATA 
RECORD 
RECORD 
RECORD 
RECORD 
RECORO 
RECORD 
~ECORD 
CONTENTS 
· . . . . . . . 
· . . . . . 
. 
· . . 
• • • •  • • •  9 
• • • • • • • • • • 
• • • • • • • • • • • 
• • • • • • • • • • • • • 
• • • • • • •  • • • • 
• • • • • • • • • • • • •. 
• • • • • • • • • • • • • 
• • • • • • • • • • • • 
• • 
• • • • 
• • • • • • • • • • • • • 21; 
• • • • • • • • • • • • • 
• • • • • • • • • • • • • 
• • • • • • • • • • • • • 
• • •  • • • • • • • • 
• • • •  • • • • • 
• • • • • • • •  • 
• 
RECORD 
• • • 
• • • 
• • • 
RECORD 
RECORD 
•  • • • • • • • 
• • • • • • • • • • • • • 
• • • • • • • • • • • • • 
•  • • • •  • 
• • • • • • • • • • • • • 
• • • • • • • • • 
• 
• • • • • • • • • • 
• • 
• • • • • • • • • • 
• • • • • • • • • • 
• • • • • • • 
• • • • • • • • • • 
•  • • • • 
• • • • • • • • 
• • • • • • • • • • 
• • • • • • • • • • • 
. . . . . . 
. 
· . . . 
• • • • • • • • 
• • • • • • 
• • • • • • • • 
•• 
. . . 
-. 
• • • • 
... 
~ 
•••• 
••• 
• •  9 
•• 
18 
10 
11 
12 
13 
22 
24 
27 
28 
31 
32 
36 
(0 
44 
47 
49 
51 
53 
56 
• • 
57 
~0 
~2 
~4 
~5 
~~ 
~R 
70 
74 
7~ 
77 
80 
82 
• 
83 
84 
2 
3 
5 
5 
9 
3 
Page 4

8086 
Object 
Module 
Formats 
Version 
4.(J 
LIBRARY DICTIONARY 
COMMENT 
1. 
NUMERIC 
2. 
TYPE REPRES ENTA'tIONS 
3. 
SYNTAX 
4. 
EXAMPLES 
RECORD 
LIST 
DIAGRA~S 
OF 
FIXUPS 
RECORD 
• • • • • • • 
OF 
RECORD 
• • • • • • 
TYPES 
••• 
•• 
· . . 
· . . 
APPENDICES 
· . . 
· . . 
. . 
· . . . . . . . 
• • 
· . .  . . . 
• • 
· . . 
· . . . . 
· . . . . 
• • 
. . . . . . 
• • • • 
• • 
• • • • 
• 
85 
• 
Sf; 
88 
89 
91 
97 
4 
Page 5

Sf) 
86 
Object 
i\4odule 
Formats 
INTRODUC'f ION 
Version 
4.rrJ 
Here 
lanquaqe 
the 
output 
processor. 
languaqe 
processors 
debuqgers. 
The 
relocatable 
Capabilities 
mapping 
facilities 
This 
The 
forward 
terms 
without 
OMF -acronym 
R&L -acronym 
MAS -acronym 
(1,048,576). 
which 
may 
are 
the 
for 
of 
all 
'fhe 
8086 
memory 
are 
section 
are 
for 
for 
for 
Note 
occupy 
object 
the 
8686 
lanquaqe 
8086 -object 
such 
object 
imaqes 
provided 
of 
defines 
ordered 
forward 
Object 
Relocation 
Memory 
that 
only 
record 
microprocessor. 
translators 
lanquaqe 
as 
module 
that 
that 
the 
8086 
certain 
not 
references. 
DEFINITION 
Module 
Formats. 
and 
Address 
the 
MAS 
a 
portion 
formats 
The 
with 
is 
input 
linkers, 
locaters, 
formats 
may 
allow 
be 
efficient 
microprocessor. 
terms 
fundamental 
alphabetically, 
of-TERMS 
Linkaqe. 
Space. 
is 
of 
The 
distinguished 
the 
MAS. 
that 
8086 
the 
permit 
linked 
8086 
define 
object 
8086 
and 
output 
specification 
to 
use 
but 
MAS 
from 
the 
lanquaqe 
as 
the 
for 
librarians, 
one 
of 
the 
to 
S08~ 
so 
you 
is 
1 
actual 
object 
tarqet 
object 
and 
another. 
memory 
R&L. 
can 
read 
meqabyte 
memory, 
is 
of 
MODULE 
information 
When a 
T-MODULE 
or 
ASM-86, 
L-MODULE 
earlier 
R-MODULE 
or 
more 
in 
this 
merely 
LIB86, 
there 
null.) 
default 
source 
ouqht 
(such 
an 
-inseparable" 
produced 
distinction 
will 
will 
versions, 
will 
constituent 
sense 
a 
transformation 
Two 
observations 
l} 
Every 
has 
is 
a 
no 
need 
Transl~tors 
name 
code 
2) 
to 
as 
nor 
Every 
have 
ICE-8n) 
must 
denote 
denote 
and 
denote 
by 
module 
handle 
to 
(possibly 
user 
T-module 
a 
different 
can 
by 
a 
be 
made, 
a 
module 
a 
module 
a 
module 
modules. 
LOCATE-86; 
of 
the 
about 
must 
have 
for 
provide 
will 
the 
file 
specifies 
in 
name, 
distinquish 
collection 
translator 
created 
created 
created 
(Note 
the 
input 
modules 
a 
name, 
the 
module 
a 
handle 
provide 
name 
otherwise. 
a 
collection 
so 
the 
of 
or 
by a translator, 
by 
by 
(8rrJ86 
that 
modules 
output 
module.) 
must 
names 
for 
or 
so 
for 
be 
that 
display 
LIB8o. 
for 
a 
of 
that 
symbolic 
various 
object 
by 
the 
(cross) 
based) 
are 
module 
made: 
the 
T-rnodules, 
null 
modules 
line 
code 
LINK-So 
such 
LINK-86 
LINK-86 
not 
from 
to 
the 
LOCATE-8fi 
808~ 
the 
name 
name) 
linked 
debuqoinq 
numbers 
and 
other 
proqram. 
as 
PLM86 
VI.3 
from 
"created" 
Librarian, 
user. 
may 
orovidinq 
if 
neither 
toqether 
systems 
and 
local 
or 
1 
is 
(If 
be 
a 
5 
Page 6

8086 
Object 
Module 
Formats 
Version 
4.0 
symbols. 
enforced 
LOGICAL 
contents 
binding) 
determined 
not 
LSEGts, 
at 
LOCATE-time 
object 
FRAME 
- A 
boundary 
because 
(possibly 
can 
access 
can 
addressed 
LSEG. 
PSEG 
-
MFRAME· 
and 
Mlogical
by 
SEGMENT 
are 
• 
be 
final 
forming 
code, 
contiguous 
the 
An 
LSEG 
fit 
This 
because 
This 
restriction 
it. 
determined 
Neither 
at 
translation-time: 
because 
a 
(althouqh 
whose 
(i.e., 
on a multiple 
content 
overlappinq) 
a 
memory 
is 
constrained 
in 
a  FRAME. 
by 
a 
l6-bit 
term 
is 
the 
M 
nature 
is 
(LSEG)  A 
at 
size 
the 
LSEG 
sinqle 
LSEG; 
location 
region 
of 
the 
of 
four 
FRAME's; 
location 
This 
offset 
equivalent 
terms 
of 
MPSEGM and 
the 
not 
reauired 
contiquous 
translation-time 
nor 
location 
size, 
~ay 
be 
combined 
location 
some 
is 
64K 
outside 
to 
from 
to 
translators 
already 
of 
of 
16 
8086 
no 
be 
no 
means 
the 
FRAME. 
MAS, 
bytes). 
seqment 
16-bit 
of 
qreater 
that 
base 
MLSEGd reflect 
underlyinq 
by 
reqion 
(except 
in 
MAS 
althouqh 
at 
in 
MAS 
is 
may 
determined). 
beqinninq 
This 
reqisters 
address 
the 
current 
than 
any 
byte 
of 
a 
Some 
people 
seqments. 
R&L, 
of 
are 
partially 
LINK-time 
usually 
produce 
on 
concept 
in 
four 
fi4K, 
in 
FRAME 
~refer 
the 
and 
memory 
for 
necessarily 
fixed, 
determined 
Mabsolute~ 
a 
paragraph 
is 
define 
the 
8086 
FRAME's. 
so 
an 
LSEG 
covering 
MPSEG~ 
~physicaln 
is 
whose 
address-
to 
other 
useful 
four 
code 
that 
may 
not 
may 
it 
be 
the 
to 
FRAME 
NU~BER 
Mparaqraphs· 
each 
PARAGRAPH 
PSEG 
of 
which 
NUMBER -This 
NU~BER 
PIC -acronym 
where 
load 
specified 
allowed. 
LTL -acronym 
PIC 
module 
GROUP 
whose 
will 
- a 
be 
group 
final 
at 
collection. 
The 
notation 
arouo, 
and 
The 
not 
imply 
contiquity 
in 
defines 
-
This 
for 
addresses 
relative 
for 
except 
is 
locations 
least 
that 
fact 
any 
orderinq 
between 
Every 
MAS 
can 
term 
Position 
to 
Load-Time 
that 
a 
collection 
one 
fRAME 
~Gr 
the 
qroup's 
that 
X, Y 
X, Y 
FRAME 
be 
numbered 
a FRAME. 
term 
is 
is 
equivalent 
Independent 
and 
seqment 
Locatable. 
base 
in 
fixups 
MAS 
which 
A(X,y,Z)d 
name 
and 
of 
X, Y 
and 
Z. 
beqins 
are 
equivalent 
reqister 
and 
of 
LSEG's 
have 
been 
covers 
means 
is 
Z 
are 
and 
on 
0,l,2, 
called 
to 
"FRAME 
Code. 
initialization 
qroup 
An 
are 
allowed. 
constrained 
that 
A. 
all 
LSEG's 
Z 
in 
a 
paraqraph 
••• 
,~5535. 
FRAME 
to 
"FRA,,.,E 
A 
bases. 
LTL 
module 
defined 
(contains) 
LSEG's 
MAS, 
nor 
boundary. 
These 
NUMBERS. 
NUl'JfBER." 
NU~BER.~ 
PIC 
module 
No 
is 
similar 
at 
translation-time, 
such 
every 
in 
X, Y 
the 
does 
and 
same 
it 
is 
values 
fixups 
that 
LSEG 
Z 
~roup 
imply 
The 
numhers, 
a 
module 
are 
are 
to 
there 
in 
the 
form 
does 
any 
a 
a 
Page 7

8086 
Object 
In 
one 
group 
G2(B,C,D) 
be 
in 
G2 
is 
not 
single 
the 
in 
more 
sufficient 
FRAME, 
Module 
PIC/LTL 
(e.g. 
the 
same 
than 
althouqh 
Formats 
case, 
defininq 
one 
to 
an 
module 
group. 
infer 
they 
LSEG 
two 
is 
The 
that 
miqht. 
is 
qroups 
not 
existence 
not 
legal). 
A,B,C,D 
allowed 
such 
Otherwise 
of 
to 
as 
Gr 
qroups 
all 
be 
in 
GI(A,C,B) 
an 
such 
lie 
within 
Version 
more 
LSEG 
as 
and 
Gl 
4.8 
than 
Gr 
may 
and 
some 
CANONIC 
FRAME's; 
has 
FRAME 
a 
is 
Thus, 
speak 
By 
extension, 
a 
unique 
canonic 
the 
FRAME 
SEGMENT 
names 
canonic 
of 
NAME -LSEG's 
serve 
1) 
combined 
2) 
LSEG·s. 
3) 
CLASS 
NAME 
translation-time. 
are 
in 
any 
but 
higher 
called 
if 
of 
the 
FRAME 
FRAME'S 
an 
only 
they 
with 
they 
they 
the 
same 
location 
one 
FRA~E 
Foa 
if 
FRA~E 
LSEG 
playa 
what 
may 
are 
LSEG's 
class 
of 
these 
NUMBER 
the 
canonic 
is 
a 
"canonic 
S 
is 
which 
of 
the 
of 
or 
of 
are 
3 
purposes: 
role 
other 
be 
used 
Classes 
in 
FRAME's 
symbol 
FRAME 
any 
set 
has 
locations 
the 
a 
Group 
assigned 
at 
LSEG's. 
used 
in 
assembly 
may 
iff 
they 
MAS 
is 
than 
any 
FRAME 
defininq 
of 
of 
memory 
the 
in 
set 
S. 
of 
names 
LINK-time 
at 
LOCATE-time 
optionally 
define 
have 
contained 
can 
be 
other 
of 
the 
a 
Faa·, 
lowest 
S. 
Thus, 
LSEG's. 
at 
in 
source 
be 
a 
partition 
the 
in 
exactly 
distinguished 
FRAME. 
location. 
memory 
or of 
-FOO's 
locations, 
FRAME 
This 
we 
unique 
may 
translation-time. 
determininq 
to 
code 
to 
assiqned 
on 
same 
Class 
4996 
This 
distinguished 
location, 
canonic 
then 
NU~BER 
in 
FRAME 
speak 
of 
~h~t 
desiqnate 
specify 
Class 
~~5EG's: 
Name. 
in 
there 
the 
is 
the 
LSEr,'s 
groups. 
two 
distinct 
that 
one 
FRAME". 
exists 
set 
called 
canonic 
These 
specific 
Names 
LSEG's 
it 
may 
of 
are 
at 
R&L 
semantics 
might 
be 
The 
Names 
above; 
identify 
OVERLAY 
translation-time 
translator 
module 
An 
a 
handle 
Class 
Names, 
LOCATE-86 
~located" 
associates 
are 
RED, BLUE, 
uses 
additionally, 
many 
NAME 
or 
will 
be 
Overlay 
on 
however, 
proqram. 
at 
overlappinq 
completely 
GREEN 
of 
Class 
LSEG's 
by a single 
LSEG's 
oratLINK-time. 
LINK-So 
assiqned 
Name 
is 
user-defined 
no 
semantics 
user-defined. 
or 
may 
is 
the 
similar 
Overlay 
(In 
brief. 
MAS 
ROM, 
Names 
Class 
include 
Names 
handle 
optionally 
invoked, 
same 
Overlay 
to 
equivalence 
Names 
LSEG's 
locations.) 
with 
RAM, 
This 
a 
specific 
Examples 
DISPLAYMEMORY. 
the 
first 
qive 
be 
and 
the 
at 
LOCATE-time. 
assiqned 
name 
all 
is 
LSEG's 
Name. 
Class 
N~me 
classes 
have 
semantics 
in 
different 
Class 
of 
2 
uses 
user 
an 
Overlay 
specified 
within 
in 
that 
of 
LSEG's. 
overlays 
Names; 
Class 
of 
the 
power 
when 
it 
kno~n 
class 
Names 
Seqment 
Name 
the 
the 
same 
provides 
Unlike 
by 
the 
may 
to 
at 
be 
7 
Page 8

8086 
Object 
Module 
Formats 
Version 
4.0 
COMPLET~ 
three 
Name 
NAME -The 
component 
and 
combined 
Overlay 
iff 
their 
~complete 
identification 
Name. 
Com~lete 
nameH of 
consistinq 
LSEG's 
Names 
from 
are 
an 
LSEG 
different 
identical. 
of 
is 
the 
defined 
Segment 
modules 
to 
be 
Name, 
will 
the 
Class 
be 
8 
Page 9

8086 
Object 
Module 
Formats 
Version 
4.9 
In 
order 
module 
There 
name. 
header 
are 
The 
below. 
A 
module 
translation 
called 
a  T-MODULE.  A T-MODULE 
(THEADR). 
translator. 
symbols 
A 
module 
and 
R-MODULE. 
(LHEADR). 
(RHEADR). 
be 
provided. 
to 
the 
An 
example 
R-~ODULE 
beqin 
as 
other 
the 
are 
with 
a 
directive 
tools 
oriqinatinq 
preserved 
three 
additional 
or 
A 
name 
line 
An 
An 
In 
module 
would 
C. 
an 
such 
MODULE 
to 
determin~ 
record 
will 
kinds 
functions 
name 
may 
linking. 
may 
This 
name 
numbers 
that 
results 
L-MODULE 
R-MODULE 
the 
LHEADR 
This 
will 
name 
without 
be 
two 
R-MODULE  C 
RHEADR 
from 
as 
record 
the 
the 
module's 
for 
debugginq 
IDENTIFICATION 
always 
of 
A 
that 
header 
be 
module 
a 
file 
be 
records 
of 
the 
qenerated 
that 
will 
be 
provided 
is 
found 
from 
will 
record 
is 
available 
usinq 
then 
always 
in 
linkinq 
always 
or 
any 
used 
the 
have 
the 
of 
T-MODULES, A 
will 
with 
user. 
library 
names, 
contain 
the 
The 
manaqer 
yet 
purposes. 
contains 
the 
first 
and 
header 
durinq 
results 
have 
in 
the 
to 
identify 
T-MODULE. 
is 
have 
an 
RHEADR 
for 
use 
its 
constituent 
and 
S, 
two 
name 
C 
·R-MODULE 
without 
the 
oriainatinq 
an 
record 
each 
records 
one 
from 
a T-MODULE 
THEADR 
called 
an 
an 
L-MODULE 
R-MODULE 
record 
as 
a 
means 
linked 
THEADR 
provided 
C 
can 
h~vinq 
object 
in 
provides 
are 
of 
two 
translation 
HEADER 
record 
the 
source 
L-MODULE 
HEADER 
HEADER 
a 
name 
of 
T-MODULE 
toqether 
records 
by 
be 
referred 
to 
module's 
program, 
a 
module. 
a 
module 
explained 
processes: 
RECORD 
of 
or 
RECORD 
RECORD 
may 
referrinq 
names. 
to 
and 
the 
linker 
know 
is 
by 
all 
an 
also 
form 
will 
to 
by 
about 
names 
a 
a 
In 
attribute 
starting 
module 
specifies 
If 
then 
this 
debuqginq 
module 
and 
initiated 
In 
may 
not 
A 
seauence 
addition 
of 
address. 
with 
the 
a 
value 
purposes. 
could 
summarYr 
have 
module 
of 
beinq 
the 
main 
result 
module 
has 
be 
the 
independent 
a 
startinq 
is 
defined 
records 
to 
an 
a 
main 
When 
attribute 
of 
is 
been 
A 
entry 
modules 
produced 
MODULE 
optional 
program 
linking 
finding 
not 
a 
provided 
starting 
point 
of 
a 
mayor 
address. 
SEGMENT 
as 
a 
ATTRIBUTES 
name, 
as 
multiple 
should 
two 
or 
main 
module 
by 
address 
of 
a 
procedure, 
main 
proqram. 
may 
DEFINITIO~ 
collection 
hy 
a 
translator. 
well 
be 
more 
a 
not 
a 
as 
modules 
given. 
main 
yet 
has 
translator, 
specified 
be 
main 
of 
object 
module 
havinq 
tog~ther, 
The 
modules. 
a 
starting 
which 
as 
code 
The 
may 
a 
linker 
possibly 
for 
may 
well 
defined 
obiect 
have 
specified 
only 
address 
a 
non-main 
be 
loaded 
as 
mayor 
the 
one 
EPS 
for 
by 
code 
a 
9 
Page 10

808fi 
Object 
Module 
Formats 
Version 
4.0 
represents 
determined 
SEGMENTS 
the 
attributes 
is 
the 
alignment, 
when 
multiple 
(GROUPING, 
required 
RHEAOR) 
• 
The 
from 
which 
addressed. 
segment 
(SS) 
base 
• 
The 
far 
exceeds 
reqisters 
modular 
program 
contiquous 
at 
(LSEG's). 
vehicle 
etc.) 
see 
to 
8086 
a 
64K 
There 
registers 
possible 
the 
may 
translation-time. 
A 
module 
of 
each 
by 
is 
LSEG's 
below) 
follow 
LSEG. 
which 
maintained. 
are 
is 
the 
SEGMENT 
addressing 
byte 
reqion 
is 
one 
(OS, 
number 
number 
require 
with 
of 
frequent 
many 
reqions 
of 
These 
all 
must 
The 
LSEG 
contain 
SEG~ENT 
information 
The 
combined 
est~blished. 
first 
header 
and 
ADDRESSING 
mechanism 
of 
memory, 
code 
seqment 
ES), 
of 
LSEG' s 
available 
and 
provides 
one 
that 
base 
loading. 
small 
data 
and/or 
memory 
reqions 
DEFINITION 
LSEG 
information 
when 
The 
record 
called 
base 
stack 
may 
This 
whose 
are 
information 
(name, 
seqment 
SEGDEF 
(THEADR, 
seqment 
a  FRAME, 
reqister 
seqment 
make 
up a memory 
registers. 
would 
code 
LSEG's. 
contents 
called 
that 
RECORD 
length, 
is 
addressability 
records 
or 
LHEADR, 
base 
registers 
(CS), 
base 
Thus, 
be 
the 
case 
are 
LOGICAL 
defines 
(SEGDEF) 
memory 
required 
are 
or 
may 
two 
be 
data 
reqister 
imaqe 
base 
in 
a 
Hence 
addressable 
name 
earlier 
for 
in 
To 
established, 
The 
GROUP 
segments 
segment 
defininq 
The 
records 
asGRPDEF 
GROUP. 
header 
explicit 
records 
orderinq 
Within 
definition 
requirements: 
be 
resolved 
(linkinq) 
numbers 
should 
the 
motivation 
unit 
this 
allow 
addressable 
the 
DEFINITION 
addressa~ility 
each 
DEFINITION 
either 
GRPDEF 
The 
GRPDEF 
as 
a 
module 
records. 
1) 
by 
and 
2) 
be 
that 
GROUP 
RECORD 
by 
segment 
symbol 
records 
records 
records 
some 
of 
records 
thera 
The 
references 
eauivalently 
attributes 
made 
to 
collect 
can 
be 
contained 
unit 
OF 
is 
TERMS. 
of 
must 
be 
explicitly 
(GRPDEF) 
name 
FOO" 
or 
or 
"the 
within 
may 
reference 
must 
R&L 
products 
is 
aiven 
SYMBOL,DEFINITIO~ 
may 
be 
necessity 
to 
LSEG's 
a 
GROUP 
objects 
provides 
by 
segment 
seqments 
a 
module 
also 
must 
Inter. 
six 
for 
externally 
defined 
of 
locally 
availahle 
for 
debuqqinq 
within 
defined 
SEGDEF 
precede 
process 
different 
these 
defined 
symbols 
defined 
toqether 
a 
memory 
and 
has 
within 
a 
list 
attribute 
with 
must 
records 
all 
them 
records 
in 
symbols 
purposes. 
a 
in 
of 
class 
follow 
other 
types 
is 
symbols 
another 
to 
form 
frame. 
been 
GROUP 
the 
constituent 
such 
name 
all 
in 
defininq 
records 
first. 
of 
based 
and 
one 
The 
defined 
to 
be 
module. 
as 
~the 
ROft1". 
SEGDEF 
but 
The 
symhol 
on 
two 
should 
module 
line 
a 
10 
Page 11

8086 
Object 
Module 
Formats 
Version 
4.0 
The 
linkinq 
the 
is 
EXTERNAL 
DEFINITION 
later. 
The 
LOCAL 
DEBUG 
the 
SYMBOLS 
SYMBOLS 
BLOCK 
(T¥PDEF) • 
their 
THEADR 
is 
are 
original 
record 
The 
data 
maintained 
of 
three 
There 
DATA 
Each 
FRA~E 
FRAME 
the 
RIDATA 
a 
RIDATA 
rather 
RECORD 
relocatable 
number, 
number, 
absolute 
record 
structure 
record 
than 
does. 
requirements 
satisfied 
NAMES 
RECORD 
requirements 
RECORD 
RECORD 
END 
RECORD 
The 
association 
defining 
as 
explained 
that 
in 
classes: 
are 
two 
(REOATA) 
DATA 
and 
and 
address 
differs 
that 
is 
must 
to 
explicitly 
for 
by 
the 
DEFINITION 
(TYPDEF). 
for 
(LOCSYM), 
(DEBSYM), 
(BLKEND), 
modules 
defines 
six 
varieties 
relocatable, 
Relocatable 
and 
record 
perhaps 
the 
GRPDEF 
at 
in 
be 
reduce 
symbol 
PUBLIC 
Their 
debugqinq 
the 
the 
and 
of 
the 
is 
earlier. 
DATA 
the 
memory 
of 
DATA 
RELOCAT~BLE 
is 
associated 
a GRPDEF 
record 
which 
that 
expanded 
the 
the 
module 
data 
data 
by 
size 
enumeratinq 
definition 
NAMES 
DEFINITION 
RECORD 
semantics 
information 
LINE 
BLOCK 
NU~BERS 
DEFINITION 
the 
line 
numbers 
essential 
imaqe 
DATA 
physical, 
records: 
ITERATED 
Record. 
provide 
bytes 
bytes 
the 
loader. 
by 
each 
(EXTDEF), 
are 
RECORD 
TYPE 
and 
and 
represented 
records. 
and 
RELOCATABLE 
DATA 
with 
The 
a SEGDEF 
SEGDEF 
information 
are 
are 
encodinq 
~yte, 
as 
records 
RECORD 
and 
will 
be 
satisfied 
(LINNU~), 
RECORD 
DEFINITION 
local 
maintained 
by 
The 
DATA 
loqical. 
RECORD 
record 
to 
to 
be 
loaded. 
represented 
The 
purpose 
repeated 
the 
REDATA 
for 
module 
(PUBDEF), 
the 
TYPE 
explained 
by 
the 
the 
(BLKDEF), 
RECORD 
symbols 
by 
the 
a 
module 
records 
ENUMERATED 
(RIOATA). 
record 
or 
or 
the 
determine 
The 
within 
of 
the 
data 
record 
to 
a 
There 
RECORD 
PEDATA 
data 
bytes 
There 
DATA 
RECORD 
Each 
SEGDEF 
records 
Physical 
Data 
records, 
address 
In 
logical 
are 
(PEDATA) 
and 
PIDATA 
it 
are 
record 
to 
DATA 
bytes 
as 
an 
(absolute) 
summary, 
two 
and 
records 
contains 
also 
(LEDATA) 
DATA 
provides 
be 
converted 
records. 
for 
LSEG 
Physical 
and 
record 
all 
is 
but 
there 
RELOCATABLE,  PHYSICAL, 
absolute 
found 
seqment~, 
in 
PHYSICAL 
divorced 
DATA 
DATA 
records: 
PHYSICAL  ITERATED 
are 
two 
provide 
to 
Loqical 
be 
an 
absolute 
loaded. 
DATA 
LOGICAL  ITERATED 
is 
associated 
information 
to 
LSEG's 
either 
has 
and 
relocatable 
not 
~re 
LOGICAL. 
form 
RECORDS. 
been 
three 
either 
are 
all 
that 
maintained 
divorced 
classes 
The 
LSEG 
Data 
PHYSICAL 
DATA 
RECORD 
address 
records: 
DATA 
with 
a SEGDEF 
allows 
Relocatable 
or 
it 
from 
of 
data 
and 
bytes 
GROUP 
bytes 
ENUMERATED 
LOGICAL 
RECORD 
the 
DATA 
in 
has 
been 
GROUP 
DATA 
of 
information, 
from 
(PIDATA). 
at 
which 
ENU~ERATED 
(LIOATA). 
record. 
loqical 
records 
loqical 
assiqned 
informntion. 
records, 
the 
"unnamed 
all 
LSEG's, 
DATA 
The 
the 
The 
DATA 
or 
DATA 
an 
are 
11 
Page 12

8086 
Object 
Module 
Formats 
Version 
4.~ 
absolute 
or 
ENUMERATED 
of 
representinq 
A 
8086 
probably 
for 
loadinq 
records 
DATA 
not 
are 
records 
Throughout 
An 
index 
collection 
INDEX, 
SEGMENT 
INDEX.) 
The 
special 
(e.q., 
absolute 
specifies 
"Decline 
relocatable, 
and 
ITERATED 
the 
loader 
be 
able 
LDATA 
sometimes 
are 
called 
the 
is 
an 
of 
such 
INDEX, 
(Note) 
index 
meaning 
a 
Seqment 
pseudo-segment; 
to 
actual 
can 
to 
maintain 
Records. 
uNon-Loadable
808~-OMF 
integer 
items. 
GROUP 
An 
index 
value 
dependant 
I~dex 
the 
"Untyped 
state"» 
are 
found 
attributes 
data 
load 
Thus, 
called 
INDICES 
specification, 
that 
(Exhaustive 
INDEX, 
is 
zero 
of 
~ 
in 
bytes. 
RDATA 
the 
"Loadable
selects 
EXTERNAL 
normally 
is 
upon 
zero 
a 
U 
type
(End 
of 
LOGICAL 
within 
or 
PDATA 
LSEG 
table 
Relocatable 
DATA 
" 
d 
DATA 
some 
list 
a 
reserved, 
the 
specifies 
Type 
(which 
Note) 
DATA 
the 
classes 
information 
records, 
records. 
"index
particular 
of 
INDEX, 
positive 
and 
type 
the 
Index 
is 
different 
RECORDS. 
Records, 
and 
U 
Physical 
fields 
examples: 
TYPE 
number. 
may 
carry 
of 
·Unnamed, 
of 
are 
two 
but 
reauired 
and 
item 
INDEX, 
a 
index 
zero 
from 
The 
ways 
will 
DATA 
Logical 
occur. 
from 
NA~E 
BLOCK 
a 
In 
larger 
contain 
indices 
The 
only) 
If 
byte 
the 
occupying 
between 
follows: 
order 
7 
general, 
than 
no 
indices 
will 
hiqh-order 
determines 
bit 
one 
0 
the 
bits 
255). 
be 
encoded 
is 
byte. 
and 
low-order 
are 
indices 
Nevertheless, 
with 
values 
(left-most) 
whether 
0, 
then 
If 
the 
32K-l, 
8 
in 
the 
first 
must 
in 
1 
assume 
or 
the 
bit 
occupyinq 
bits 
byte. 
a 
qreater 
2 
the 
index 
is 
are 
values 
qreat 
bytes, 
bit 
index 
1, 
two 
in 
number 
than 
as 
of 
the 
occupies 
is 
a 
then 
bytes, 
the 
quite 
50 
required: 
first 
number 
the 
second 
of 
or 
one 
index 
and 
byte, 
larqe 
ob;ect 
100. 
(and 
hyte 
between 
is 
is 
determined 
and 
(i.e., 
files 
Therefore, 
possibly 
or 
0 
and 
a 
the 
much 
will 
the 
two. 
127, 
number 
as 
hiqh-
12 
Page 13

808~ 
Object 
Module 
Formats 
Version 
4.0 
A 
translator, 
(see 
Appendix 
8086 
data: 
of 
two 
address 
defining 
CONCEPTUAL 
"Fixup" 
is 
performed 
4 
(Note) 
represents 
Nevertheless. 
modifications 
not 
conform 
bindinq 
or 
software 
modification 
code 
definition 
disparaqe 
sense. 
and/or 
(l) 
the 
possible 
to 
which 
a 
context 
is 
of 
treated 
,End 
place 
some 
for 
Examples) 
This 
the 
viewpoint 
the 
of 
to 
code 
floatinq 
to 
of 
object 
of 
8089 
and 
fixup 
LOCATION 
within 
FRAMEWORK 
modification 
by 
the 
R&L 
definition 
R&L 
system 
object 
this 
an 
as 
"fixup" 
definition. 
to 
either 
operation 
if 
it 
is 
code 
Note) 
translators 
type 
of 
MODE'S. 
must 
be 
which 
for 
to 
object 
system, 
of 
maintained 
can 
be 
code 
point 
(i.e., 
of 
hardware 
subroutines, 
code, 
were 
not 
an 
address. 
intended 
modifications 
specify 
a LOCATION 
(3) 
made 
the 
a  TARGET, 
to 
reference 
FIXUP's 
code, 
achievinq 
"fixup-
by 
the 
used 
dfixups") 
For 
where 
a 
to 
refer, 
takes 
accurately 
R&L 
to 
example. 
floatinq 
the 
The 
to 
disallow 
in 
the 
fixup 
be 
fixed 
which 
and 
requested 
address 
system. 
achieve 
that 
point 
is 
operation 
above 
wider 
by 
qivinq 
up, 
is 
(4) 
place. 
bindinq. 
do 
the 
a 
or 
(2) 
a 
a 
by 
four 
one 
mem(cy 
FRAME 
a 
LOCATION 
OFFSET, 
(remember 
byte 
word 
a HIBYTE, 
The 
vertical 
"Nith 
of 
the 
a 
pointer 
There 
that 
hiqher 
are 
and 
a LOBYTE: 
Pointer: 
Base: 
Offset: 
Hibyte: 
Lobyte: 
alignment 
the 
hiqh 
address): 
(and 
5 
types 
orner 
R~L 
of 
LOCATION:  a POINTER, a BASE, 
+----+----+----+----+ 
+----+----+----+----+ 
+----+----+ 
I  , 
+----+----+ 
+----+----+ 
I  I 
+----+----+ 
+----+ 
I  I 
+----+ 
+----+ 
I  I 
+----+ 
of 
this 
byte 
(1) 
~oesn't 
diaqram 
of 
a 
B.~SE 
care 
a 
if 
word 
is 
the 
illustrates 
in 
q~8~ 
merely 
low 
order 
me~ory 
the 
hi1h 
word 
4 
points 
is 
the 
':)rder 
of 
the 
an 
13 
Page 14

8086 
Object 
Module 
Formats 
version 
4.0 
pointer 
word 
follows 
OFFSET 
(4) 
a 
doesn't 
types 
specified 
Record; 
LOCAT 
MODE 
-
relative-. 
used 
relative 
TARGET -
explicitly, 
the 
object 
ways. 
primary 
NU~BER 
is 
present 
of 
a 
pointer 
or 
not); 
(and 
LOBYTE 
care 
R&L 
is 
if 
A  LOCATION 
the 
LOCATION 
by 
(2) 
is 
field 
R&L 
of 
supports 
Self-relative 
in 
the 
CALL,  JUMP 
fixups 
The 
TARGET 
the 
beinq 
There 
way 
'X', 
are 
of 
specifyinq 
and 
or 
(3) 
doesn't 
merely 
the 
hiQh 
is 
is, 
the 
LOC 
specified 
the 
FIXUPP 
2 
fixups 
support 
is 
the 
TARGET 
referenced.) 
4 
a 
displacement 
not): 
(and 
R&L 
a HIBYTE 
Nare 
the 
low 
order 
specified 
and 
subfield 
by 
the 
Record. 
kinds 
of 
support 
and 
all 
other 
location 
may 
-primarya 
TARGET 
(2) 
an 
doesn't 
is 
merely 
if 
the 
order 
half 
-by 2 data: 
(2) 
where 
DATA 
fixups: 
SHORT-JUMP 
be 
considered 
A TARGET 
ways, 
'0': 
OFFSET 
the 
low 
order 
half 
follows 
the 
of 
the 
RECORD 
dself-relative~ 
the 
8-
addressinq 
in 
MAS 
is 
and 
uses 
2 
is 
merely 
care 
hiqh 
of 
or 
(1) 
if 
half 
an 
not). 
which 
the 
order 
precedes 
OFFSET 
LOCATION 
LOCAT 
OFFSET 
and 
beina 
to 
field 
subfield 
16-bit 
instru~tions. 
modes 
of 
referenced. 
be 
the 
specified 
4 
~secondary-
data: 
an 
the 
high 
low 
order 
half 
or 
order 
of 
not); 
(and 
of 
the 
above 
is. 
of 
the 
(1) 
FIXUPP 
of 
and 
dseqment-
offsets 
that 
Seqment-
the 
8086. 
(More 
lowest 
in 
one 
ways. 
byte 
of 
-Each 
INDEX-or-FRAME-
word 
an 
R&L 
5 
is 
the 
are 
in 
8 
(T0)  X 
LSEG 
the 
lowest 
followinq 
External 
FRAME 
identified 
(TI) 
first 
(T2) 
(T3) 
identified 
in 
X 
byte 
MAS. 
X 
the 
Name 
X 
is 
is 
a 
by 
is 
a 
in 
is 
an 
byte 
identified 
a 
SEGMEN'r 
GROUP 
EXTERNAL 
FRAME 
by 
(X*16)+D). 
Each 
the 
INDEX-or-FRAME-NUMBER X. 
is 
assumed: 
(T4) 
in 
the 
(TS) 
in 
the 
lowest 
secondary 
X 
LSEG 
LSEG 
in 
~AS. 
is 
a 
identified 
X 
is 
in 
the 
SEGMENT 
a 
the 
INDEX. 
INDEX. 
the 
LSEG 
whose 
NUMBER. 
the 
way 
by 
GROUP 
specified 
INDEX. 
INDEX. 
by 
the 
FRAME 
of 
specifyinq 
INDEX. 
the 
INDEX. 
The 
in 
the 
address 
INDEX. 
The 
NUMBER 
An 
INDgX. 
qroup 
The 
TARGET 
qroup 
The 
TARGET 
(i.e., 
implicit 
The 
TARGeT 
The 
TARGET 
TARGET 
is 
that 
TARGET 
is 
(eventually) 
is 
the 
a TARGET 
displacement 
is 
is 
that 
is 
is 
the 
the 
O'th 
is 
eventually 
is 
the 
address 
uses 
the 
the 
eventually 
O'th 
the 
O'th 
only 
0'th 
~'th 
byte 
byte 
O'th 
qiven 
byte 
of 
TARGET 
1 
equal 
(first).byte 
(first) 
in 
the 
followinq 
LOCATE'd 
byte 
hy 
the 
in 
the 
datum: 
to 
zero 
byte 
LOCATE'd 
is 
14 
Page 15

R986 
Object 
Module 
Formats 
Version 
4.9 
(T6) 
address 
X 
is 
(eventually 
is 
INDEX. 
(T7) 
address 
The 
Here 
TARGET: 
X 
is 
(X*l6). 
following 
TARGET: 
TARGET: 
TARGET: 
TARGET: 
TARGET: 
TARGET: 
TARGET: 
TARGET: 
are 
SI(CODE) 
is 
SI«seqment 
GI«qroup 
EI«symbol 
<FRAME 
SI«seqment 
GI«qroup 
EI«symbol 
<FRAME 
some 
TARGET: GI(DATAAREA) 
an 
a 
FRAME 
nomenclature 
examples 
,1024 
EXTERNAL 
qiven 
NUMBER. 
name» 
name» 
name» 
INDEX. 
by) 
the 
External 
The 
TARGET 
is 
used 
,<displacement> 
,<displacement> 
,<displacement> 
The 
to 
NUM9ER>,<displacement> 
name» 
name» 
name» 
NUMBER> 
of 
how 
The 
the 
the 
a 
qroup 
this 
notation 
l025th 
segment 
location 
called 
TARGET 
Name 
is 
the 
describe 
byte 
in 
·CODE" 
in 
MAS 
-DATAAREA
is 
identified 
byte 
a TARGET: 
(T0] 
(TIl 
[T21 
(T3] 
(T41 
(T51 
(T~l 
(T71 
can 
be 
of 
the 
d 
byte 
whose 
used: 
whose 
by 
the 
20-bit 
TARGET: 
TARGET: 
TARGET: EI(PAYSCHEDULE) 
Altnouqh 
the 
same 
TARG8T, 
discussed 
arithmetic. 
FRAME -Every 
some 
seqment 
FRAME; 
register. 
reference, 
respect 
fixup 
below. 
as 
above. 
to 
specifies 
Some 
This 
reference 
independently 
EI(SIN) 
8000H,24H 
-TARGET: 
their 
below 
8086 
in 
memory 
where 
it 
must 
which 
FRAME 
such 
ways 
Other 
is 
may 
use 
ways 
not 
be 
of 
the 
the 
In 
order 
know 
the 
a 
FRAME, 
a 
require 
the 
case 
to 
FRA~E. 
,24 
SICA)" 
use 
section 
reference 
FRAME 
for 
not 
reference 
datum, 
of 
any 
location 
the 
subroutine 
MAS 
the 
location 
EXTERNAL 
called 
and 
can 
is 
is 
R&L 
only 
in 
one 
X, 
which 
no 
datum. 
an 
8089 
The 
address 
location 
24th 
byte 
of 
data 
dPAYSCHEOULE-
"TARGET: 
have 
on 
different 
intermediate 
to 
a 
desiqnated 
to 
form a correct, 
what 
the 
is 
of 
5 
is 
self-relative 
within 
only 
of 
the 
·SIN" 
800248 
followinq 
an 
structure 
SI(A) 
location 
by 
TARGET 
heinq 
ways 
(F0, 
an 
INDEX-or-FRAME-NUMBER, 
an 
restriction 
external 
,0" 
effects, 
values 
contained 
the 
content 
is, 
made. 
••• 
8089 
the 
both 
usable 
but 
also 
Thus 
,F5) 
described 
reference. 
is 
that 
specify 
as 
in 
fixup 
within 
of 
some 
memory 
with 
every 
The 
proaram, 
the 
is 
15 
Page 16

808~ 
Object 
Module 
Formats 
Version 
4.0 
displacement 
To 
indicate 
is 
introduced. 
Below 
frames: 
(Fe) 
the 
LSEG 
(FI) 
defined 
the 
by 
qroup 
(F2) 
External 
LSEG, 
canonic 
reference 
Group. 
subfield 
symbol's 
between 
this 
is 
x 
defined 
X 
is 
the 
that 
X 
is 
Name's 
(F2a) 
and 
(F2b) 
type 
the 
is 
a 
by 
a 
GROUP 
descriptlon 
SEGMENT 
group 
is 
eventually 
an 
EX'rERNAL 
public 
The 
there 
FRAME 
The 
to 
The 
of 
the 
definition. 
the 
of 
the 
(i.e 
definition 
is 
is 
an 
FRAME 
PUBDEF 
LOCATION 
fixup, 
INDEX. 
INDEX. 
INDEX. 
•• 
the 
LOCATE'd 
INDEX. 
symbol 
no 
associated 
specified. 
symbol 
LSEG, 
is 
Record 
and 
the 
a 
7th 
way 
of 
the 
The 
FRAME 
The 
canonic 
FRA~E 
FRAME 
lowest 
The 
FRAME 
is 
found. 
is 
defined 
is 
defined 
and 
there 
speci~ied 
(a.v.) 
TARGET 
(F6) 
seven 
is 
is 
defined 
in 
is 
There 
relative 
Group. 
absolutely, 
is 
no 
by 
the 
that 
must 
of 
specifyinq 
ways 
the 
canonic 
the 
MAS). 
determined 
are 
The 
associated 
FRAME 
qives 
be 
within 
of 
specifying 
canonic 
by 
the 
3 
cases: 
to 
some 
LSEG's 
without 
NUMBER 
the 
a 
FRAME 
LSEG 
when 
32K. 
frame 
of 
FRAME 
in 
the 
there 
the 
the 
GROUP 
(F3) 
CF4) 
containing 
a 
PEDATA 
~contained~ 
(F2) 
the 
above, 
DATA 
(FS) 
X 
No 
LOCATION. 
Record 
Record. 
No 
cases: 
this 
this 
this 
(F2c) 
is 
Group 
is 
a 
X. 
in 
taking 
X. 
(FSa) 
case, 
(FSb) 
case. 
(FSc) 
case. 
Reqardless 
an 
associated 
is 
INDEX 
FRAME 
The 
or 
an 
LSEG: 
the 
'fhe 
The 
the 
The 
the 
The 
the 
specified. 
subfield 
NUMBER 
FRA~E 
(If 
LOCATION 
a  PIDATA 
in 
FRAME 
FRA~E 
is 
TARGET 
FRAME 
is 
TARGET 
FRAME 
is 
TARGET 
FRAME 
is 
of 
how 
Group. 
of 
the 
(specifying 
is 
the 
Record 
this 
case 
NUMBER 
determined 
specified 
determined 
specified 
determined 
specified 
determined 
The 
(The 
is 
specified 
from 
the 
symbol 
canonic 
qroup 
PUBDEF 
the 
canonic 
(a.v.», 
the 
FRAME 
the 
by 
the 
a 
SEG~ENT 
as 
a 
as 
an 
EXTERNAL 
~s 
is 
specified 
Record 
obvious 
FRAME 
absolutely 
is 
FRAME 
TARGET. 
in 
(F0) 
GROUP 
in 
(Fl) 
in 
(F2) 
is 
defined, 
FRAME 
(q.v.).) 
FRAME). 
of 
then 
determined 
NU~BER 
INDEX: 
above. 
INDEX: 
above. 
INDEX: 
above. 
of 
by 
the 
(i.e., 
it 
field 
There 
in 
in 
in 
is 
LSEG 
as 
are 
in 
not 
in 
of 
4 
, 
l~ 
Page 17

8886 
Object 
Module 
Formats 
Verslon 
4.8 
FRAME 
in 
(F6) 
R&L 
that 
siqned 
TARGET 
an 
displacement 
20-bit 
Nomenclature 
nomenclature 
FRAME: 
FRAME: 
FRAME: 
FRAME: 
FRAME: 
FRAME: 
FRAME: 
In 
practice, 
the 
FRAME 
FRAME 
by a seqment 
LSEG 
of 
containinq 
(FSd) 
NUMBER: 
(F3) 
No 
above. 
X. 
8089 
address 
for 
SI«seqment 
GI«group 
EI«symbol 
<FRAME 
LOCATION 
TARGET 
NONE 
specified 
the 
LSEG 
relative 
The 
in 
There 
self-relative 
between 
must 
describing 
TARGET's, 
NUMB~R> 
for 
by 
a 
containinq 
reference 
the 
TARGET. 
TARGET 
this 
is 
no 
be 
case 
computed. 
viz: 
name» 
name» 
name» 
an 
808~ 
self-relative 
This 
is 
specified 
the 
FRAME. 
reference 
the 
LOCATION 
FRAME's 
memory 
the 
LOCATION, 
will 
be 
will 
FRAME 
This 
is 
is 
similar 
reference, 
reference 
the 
be 
further 
with 
is 
determined 
is 
a 
to 
20-bit 
will 
and 
the 
canonic 
an 
explicit 
way 
to 
be 
processed. 
address 
to 
[FA1 
[F11 
[F21 
[F3] 
{F41 
[F51 
[F6] 
it 
is 
be 
FRAME 
FRAME 
explained 
as 
indicate 
and 
the 
likely 
the 
canonic 
specified 
of 
below. 
to 
A 
the 
above 
that 
the 
A 
self-relative 
implicitly 
following 
reference, 
block 
Proqram 
reference) 
For 
are 
there 
outside 
is 
address 
position 
For 
32K 
unique 
from 
l6-bit 
TARGET. 
If 
LOCATION 
If 
the 
the 
range 
displacement 
defined 
LOCATION 
the 
• 
8086 
self-relative 
the 
a 
uniaue 
implicitly 
of 
TARGET 
8089 
self-relative 
LOCATION, 
siqned 
the 
LOCATION 
modulo 
LOCATION 
{-128:l27}, 
is 
by 
8086 
IP 
pointer) 
specified 
l6-bit 
in 
~553~: 
added 
SELF-RELATIVE 
fixup 
operates 
LOCATION: 
(because 
(Instruction 
is 
references, 
FRAME, 
displacement 
defined 
the 
by 
FRAME. 
references 
R&L 
qives 
displacement 
is 
an 
no 
errors 
is 
a LOBYTE, 
otherwise 
to 
LOCATION 
namely 
at 
pointing 
LOCATION, 
a 
OFFSET, 
are 
the 
modulo 
FIXUPS ' 
as 
follows: 
the 
the 
time 
Pointer) 
to 
if 
R&L 
qives 
which, 
(F~), 
warninq. 
between 
the 
reported. 
displacement 
R&L 
will 
25~. 
A 
address 
of 
or 
the 
the 
either 
byte 
a 
warninq. 
LOCATION 
when 
will 
if 
yield 
TARGET 
Otherwise, 
the 
LOCATION 
displacement 
qive 
memory 
of 
a 
self-relative 
8989 
following 
added 
the 
is 
must 
a 
warninq. 
address 
the 
TP 
or 
TARGET 
Otherwise, 
to 
relative 
not 
within 
there 
and 
is 
added 
be 
within 
is 
byte 
(Task 
the 
the 
is 
the 
to 
The 
a 
17 
Page 18

8086 
Object 
what 
defined 
A 
neqative 
FRAME 
defined 
If 
this 
then 
to 
fixup 
65536) 
65536) 
to 
the 
Module 
If 
the 
LOCATION 
the 
translator 
by 
LINK-86 
seqment-relative 
l~-bit 
specified 
as 
the 
signed 
R&L 
will 
LOCATION 
(1) 
if 
LOCATION 
to 
the 
high 
to 
the 
low 
(2) 
if 
LOCATION 
BASE; 
FOVAL 
Formats 
and/or 
number, 
by 
the 
distance 
20-bit 
report 
in 
order 
order 
is 
is 
a BASE. POINTER. 
had 
in 
mind, 
LOCATE-86 
EPS·s. 
and 
or 
the 
SEGMENT-RELATIVE FIXUPS 
fixup 
FBVAL, 
fixup, 
number 
an 
the 
following 
is 
a  POINTER" 
word 
word 
is 
a BASE, 
from 
is 
error. 
of 
operates 
is 
defined 
and 
a 
the 
less 
Otherwise 
fashion: 
of 
POINTER, 
POINTER. 
then 
in 
signed 
base 
than 
then 
FBVAL 
the 
as 
of 
0 
and 
ignored. 
HIBYTE. 
action 
followinq 
the 
20-bit 
the 
or 
qreater 
FBVAL 
FBVAL 
FOVAL 
is 
added 
FRAME 
number, 
FRAME 
and 
is 
is 
Version 
it 
is 
taken 
way: 
NUMBER 
FOVAL, 
to 
the 
than 
FOVAL 
added 
added 
(modulo 
unclear 
by 
R&L 
a 
of 
TARGET. 
65535, 
are 
(modulo 
(modulo 
~5536) 
4.0 
is 
non-
the 
is 
used 
(3) 
65535) 
to 
(4) 
(modulo 
division 
(5) 
(modulo 
The 
that, 
if 
assumed 
warninq 
order 
messaqe. 
to 
intermediate 
values 
are 
Record. 
if 
the 
if 
LOCATION 
25~) 
is 
dinteqer 
if 
LOCATION 
256) 
8086 
a 
TARGET 
FRAME, 
perform 
values 
The 
LOCATION 
OFFSET; 
FBVAL 
is 
to 
the 
division
is 
to 
the 
LOBYTE; FaVAL 
IN'rERMEDIATE 
Object 
can 
not 
then 
that 
This 
this 
checkinq, 
of 
retained 
followinq 
is 
an 
is 
a  HIBYTE, 
HI8YTEi 
d
• 
a LOBYTE, 
VALUES 
Module 
be 
accessed 
failure 
checkinq 
its 
address 
either 
diaqram 
OFFSET. 
ignored. 
then 
FBVAL 
i.e 
•• 
then 
is 
iqnored. 
in 
FIXUP ARITHI\1ETIC 
Formats 
can 
be 
is 
called 
LINK-8~ 
arithmetic. 
in 
the 
illustrates 
then 
(FOVAL  / 
is 
the 
remainder 
(FOVAL 
quarantee 
from 
detected 
daccess 
and 
DATA 
three 
FOVAL 
is 
25~) 
iqnored. 
is 
modulo 
255) 
fixups 
a 
LOCATION 
and 
R&L 
verification·
LOCATE-8~ 
need 
These 
Record, 
or 
cases: 
added 
is 
(The 
indicated 
discarded.) 
is 
in 
the 
with 
can 
to 
intermediate 
in 
the 
(modulo 
added 
added 
sense 
the 
issue 
l
In 
• 
retain 
FIXUP 
a 
18 
Page 19

808~ 
Object 
~odule 
Formats 
Version 
4.9 
<----
+------+ 
+n 
in 
or 
+------+ 
+------+ 
q 
or 
+------+ 
+------+ 
q 
+------+ 
a 
"secondary" 
FIXUP 
the 
or 
a 
separately, 
a POINTER.) 
be 
non-negative 
to 
a 
verification 
or 
Case 
Record, 
DATA 
word. 
specification 
OATA 
Record 
----> 
<---
+------+------+ 
+n 
+-------+ 
+-~----+------+ 
1 
illustrates 
way. 
so 
Record. 
(If 
so 
In 
incorporates 
... 
------+ 
q 
No 
arithmetic 
As 
tha 
LOCATION 
the 
above 
Case 
1, 
numbers 
of 
a 
the 
situation 
explicit 
must 
diagram 
is 
a POINTER, 
diagram 
the 
value(s) 
("+n"', 
displacement 
the 
<null> 
+------+----~~+ 
displacement 
be 
and 
value 
in 
FIXUP 
+n 
where 
done 
shows, 
applies 
in 
are 
"+n". 
Record 
a 
in 
the 
the 
arithmetic 
separately 
LOCATION 
considered 
'0'; 
---> 
fixup 
10' 
LOCATION 
thus 
is 
is 
LOCATION 
is 
are 
to 
the 
<---
<---
<---
specified 
provided 
itself, 
may 
on 
to 
considered 
each 
each 
be 
equivalent 
R&L 
be a byte 
Case 
Case 
Case 
in 
half 
half 
access 
1 
2 
3 
in 
the 
in 
of 
to 
Case 
a 
"primary" 
FIXUP 
number 
complete, 
validity 
or 
value 
complement; 
final 
instead 
{0:65535}, 
ranqe 
be 
allows 
in 
is 
location, 
best 
the 
REFERENT 
Record. 
("+n-). 
modulo 
g
d
" 
staqe 
Case 
{-1,048,576:1,048,575}. 
supported. 
support, 
a 
"primary" 
Here 
necessary 
First, 
made 
TARGET 
2 
the 
by 
may 
3 
of 
may 
are 
with 
clear 
is 
illustrates 
wa:'. 
This 
When 
resultant 
R&L, 
65536) 
of 
is 
is 
the 
be 
R&L 
the 
the 
beinq 
represent 
It 
way, 
some 
or 
desirable: 
yet 
respect 
by 
the 
location 
and 
with 
An 
explicit 
displacement 
all 
then, 
to 
the 
considered 
doesn't 
fixup. 
same 
is 
cases 
another 
an 
24'th 
as 
restricted 
signed 
desiqned 
R&L 
with 
negative 
~here 
to 
example: 
TARGET: EI(STRUCT) 
named 
the 
situation 
displacement 
arithmetic 
value 
finally, 
oriqinalcontent 
care 
Case 
access 
definition: 
which 
byte 
(in 
as 
because 
2, 
to 
(Note: 
into 
a 
a 
in 
after 
"STRUCT" 
where 
is 
considered 
required 
the 
FIXUP 
that 
non-negative, 
except 
non-negative 
(2's 
the 
verification, 
displacefl\ents 
"primary" 
result 
there 
complement) 
initially, 
formats 
a  -REFERENT" 
TARGE'r 
the 
specification 
,24 
the 
location 
itself. 
a 
fixup 
'0' 
is 
to 
Record) 
is 
of 
LOCATION 
or 
is 
no 
that 
is 
the 
numbers 
for 
of 
101.) 
specification 
positioned. 
named "STRUCT"; 
is 
specified 
provided 
be a non-neqative 
by 
the 
is 
added 
as 
checkinq 
displacement 
in 
numbers 
this 
TARGET'S 
case 
completeness: 
is 
in 
fixup 
checked 
(modulo 
C'q"). 
siqned 
in 
the 
in 
will 
specified 
of 
a 
TARGET 
a 
memory 
This 
in 
the 
is 
for 
256 
The 
2's 
this 
'0', 
range 
the 
not 
it 
is 
the 
19 
Page 20

8086 
Object 
Module 
Formats 
Version 
4.0 
(1) 
this 
The 
case, 
reason 
located, 
Thus, 
Now 
is 
LINK-8~ 
the 
eventually 
LOCATION; 
Thus, 
as 
various 
maintain 
translator 
for 
LINK-86 
(2) 
REFERENT. 
external 
register 
translator 
and 
place 
access 
TARGET 
is 
A  5 HORT-JMP 
the 
TARGET 
is 
that 
it 
will 
probably 
will 
programmer 
LOCATE'd, 
however, 
LINK-86 
pieces 
the 
The 
array 
that 
must 
to 
For 
will 
would 
of 
offset. 
provide 
maintain 
translator 
example, 
ARY, 
use 
FRAME: 
TARGET: 
the 
dneqative 
verification 
not 
guaranteed, 
should 
TARGET: 
when 
convert 
may 
this 
maintains 
LSEG 
contain 
SI(FOO) 
EI(ARY) 
to 
is 
being 
be 
EI(subroutine) 
LINK-86 
be 
a 
the 
. TARGET: 
be 
correct 
the 
does 
A 
are 
not 
combined, 
Since 
an 
offset 
intermediate 
wishes 
if 
the 
and 
the 
the 
,0000H 
offset-
the 
and 
made 
to 
an 
specified 
learns 
known 
above 
TARGET 
the 
offset 
TARGET 
SI(A) 
in 
dknowinq· 
mean 
(possibly 
,dl 
will 
that 
it 
the 
LOCATION 
field 
in 
fixup 
to 
reference 
TARGET 
is 
the 
reference 
address 
FFFEH 
of 
in 
LOCATION. 
REFERENT  ARY: 
is 
the 
programmer's 
external 
as 
,0000H 
where 
(dl) 
to 
dl 
changing) 
needs 
the 
values. 
word 
is 
with 
the 
LSEG 
however, 
subroutine. 
be 
the 
within 
the 
that 
within 
is 
subroutine 
some 
form: 
when 
128 
less 
value 
a 
full 
is 
a 
sinqle 
fixup 
·backwards~ 
in 
record 
front 
respect 
named 
R&L 
will 
access 
responsibility. 
the 
than 
LSEG 
proqram 
bytes 
of 
word 
byte, 
itself 
from 
of 
to 
a 
FOO, 
perform 
to 
l28! 
dl 
base 
In 
is 
A. 
of 
as 
to 
the 
the 
the 
the 
the 
Note: 
translator 
if 
could 
FRAME: 
TARGET: 
and 
R&L 
would 
(as 
above), 
(2) 
quantities: 
(say, 
BAZ) 
but 
(continued) 
the 
containing 
BAZ.  LOCATE-86 
difference 
(location 
is 
not 
into 
fixup 
this 
as 
qreater 
difference 
FRAME: 
TARGET: 
then 
linkaqe 
LOCATION 
because 
a 
translator'S 
LINK-86 
positive 
would 
to 
linkaae) 
itself, 
the 
R&L 
~5534, 
intentions. 
Case 
use 
perform 
to 
the 
MAS-location 
can 
of 
SAZ 
than 
SI(FOO) 
EI(ARY) 
have 
where 
system 
the 
3 
in 
SI(FOO) 
EI(ARY) 
access 
actual 
The 
ARY, 
enforce 
plus 
~5535r 
are 
known.--rl~he 
had 
relative 
it 
qets 
cannot 
access 
the 
above 
,-2 
verification, 
TARGET 
calculation 
of 
and 
that 
relative 
provided 
to 
maintain 
~added~ 
know 
verification 
FOO, 
the 
the 
offset) 
offset 
if 
diaqram 
(in 
front 
the 
relative 
final 
that 
translator 
the 
of 
to 
the 
were 
not 
to 
the 
of 
ARY)! 
by 
LOCATE-Sfi 
MAS-location 
offset 
offset, 
-
(location 
all 
quantities 
had 
(possibly 
ARY 
the 
FFFEH 
of 
within 
content 
was 
R~L 
available, 
REFERENT 
of 
of 
which 
of 
specified 
chanqinq 
BAZ. 
FFFEH. 
a 
neoative 
may 
thNart 
involves 
the 
ARY 
within 
is 
FOO) 
r 
enterinq 
in 
the 
ARY 
LSEG 
the 
the 
from 
the 
And 
2 
or 
the 
3 
20 
Page 21

8086 
Object 
Module 
Formats 
version 
4.9 
~he 
works 
whether 
(3) 
REFERENT, 
FRAME. 
external 
R&L 
will 
the 
190'th 
constraint 
FRAME 
of 
(4) 
in 
that 
Only 
used 
after 
as 
truncation 
is 
LOCATE'd. 
followinq 
The 
and 
For 
example, 
structure 
FRAME: 
TARGET: 
ensure 
miqht 
FOO.) 
Hibyte 
a 
full 
a 
fixup 
of 
example 
the 
TARGET 
translator 
to 
ensure 
we 
STRCT. 
SI(FOO) 
EI(STRCT) 
that 
byte 
of 
be 
the 
achieved 
fixups 
word 
is 
LOCATE'inq 
value. 
low 
byte 
(3) 
specification 
wishes 
that 
wish 
to 
The 
,99 
distance. 
STRCT 
even 
specified 
used 
will 
This 
before 
to 
the 
prevents 
is 
a 
to 
the 
TARGET 
reference 
translator 
from 
is 
less 
if 
in 
accumulate 
value 
addinq 
case 
is 
reference 
the 
than 
STRCT 
a 
primary 
of 
the 
the 
where 
~primary~ 
lies 
the 
may 
canonic 
lies 
access 
·forwards~ 
within 
l00'th 
specify 
FRAME 
6553~. 
outside 
way 
the 
value 
the 
hibyte 
loss 
address 
of 
accuracy 
at 
verification 
or 
·secondary-: 
the 
byte 
the 
of 
(Note 
the 
will 
of 
an 
of 
an 
which 
from 
specified 
in 
fixup 
Foa 
that 
canonic 
be 
correct 
offset. 
offset 
due 
an 
object 
a 
an 
as 
to 
this 
be 
to 
21 
Page 22

8086 
Object 
Module 
Formats 
Version 
4.0 
A 
object 
modules, 
defined 
object 
records 
provide 
syntactic 
CACM, 
object~file 
sequence 
library 
module 
tmod 
lmod 
rmod 
or 
as 
a 
records. 
to 
form a module. 
information 
description 
November 
RECORD 
code 
a 
collection 
= 
= 
module 
= LIBHEO 
= tmod I lmod I rmod  
= 
= 
= 
file 
library 
The 
about 
1977, 
sequence 
THEADR 
LHEADR 
RHEADR 
v 
must 
containing 
of 
followinq 
lan~uage 
20, 
I 
{module}. 
{module} 
sqr;_table 
sQr.table 
sgr_table 
contain 
object 
In 
addition, 
how 
to 
nIl, 
library. 
1ibtail. 
used 
ORDER 
zero 
code 
syntax 
interpret 
p 
822 
omod. 
{data} 
{data} 
a 
seauence 
or 
more 
defined 
shows 
the 
the 
herein 
-
823. 
{component} 
It_component} 
It_component} 
of 
modules. 
by 
the 
qiven 
record 
is 
defined 
a 
valid 
semantic 
(one 
sequence. 
modtail. 
modtail. 
or 
A 
module 
sequence 
orderinqs 
in 
modtail. 
more) 
is 
of 
of 
rules 
The 
WIRTH: 
omod 
sqr. 
table 
sqor.table 
seQ.qrp 
o. 
component 
t~component 
component 
data 
debuq. 
content 
thread 
data 
record 
def 
def 
record 
= 
= 
= 
= 
= 
= 
= 
= 
= 
= 
= 
= 
RHEADR 
seq~grp 
seq 
{LNAMES} 
{data} 
THEADR 
data 
content 
LOCSYM I LINNUM 
data 
FIXUPP. 
LIDATA I LEDATA 
sqor_table 
qrp 
REDATA 
{OVLDEF} 
{SEGDEF} 
It_component} 
{co~ponent}. 
I 
debuq. 
.. 
def 
TYPDEF 
BLKDEF I BLKENO 
record 
(containinq 
record. 
thread·def 
PUBDEF 
{FIXUPP}. 
I HIDATA. 
{o,:.component} 
[REGINT1. 
[REGINT1. 
{ 
TYPDEF I EXTDEF 
ENOREC. 
I 
I Ex'rDEF. 
I 
DEBSYM 
only 
I PIDATA I 
I 
I ENOREe. 
thread 
fields) 
PEDATA 
I 
I 
GRPDEF 
o·modtail. 
}. 
o 
modtail 
22 
= 
{OVLDEF} 
modtail. 
Page 23

808~ 
mod 
tail 
libtail 
Object 
Module 
Formats 
= [REGINT1 
= 
LIBNAM 
MODEND. 
LIBLOC 
LIBDIC. 
Version 
4.9 
NOTE: 
are 
not 
section 
The 
following 
1. 
A FIXUPP 
2. 
The 
named 
3. 
All 
precede 
4. 
COMENT 
first 
or 
5. 
OVLDEF 
and 
MODEND 
records 
order 
the 
The 
character 
literals 
defininq 
debug 
by 
LNAMES, 
records 
or 
within 
records 
qroup 
records), 
of 
first 
but 
the 
rules 
record 
apply: 
always 
records 
the 
nearest 
SEGDEF,  GRPDEF,  TYPDEF, 
all 
records 
may 
last 
a 
record 
libtail. 
may 
definitio~s 
must 
these 
be 
records 
OVLDEF 
strinqs 
are 
Record 
have 
precedinq 
that 
appear 
app~ar 
but 
not 
equal 
record 
represented 
identifiers 
Formats. 
refers 
as 
their 
refer 
anywhere 
in 
a 
file 
either 
or 
at 
both 
to 
must 
be 
pointinq 
that 
to 
the 
originatinq 
THEADR 
to 
or 
immediately 
at 
the 
places. 
the 
number 
same 
to 
by 
are 
previous 
record. 
them. 
within 
module, 
end 
as 
the 
capital 
further 
and 
a 
within 
(before 
The 
of 
0 
the 
'root'" 
letters 
defined 
DATA 
record. 
module 
EXTDE~ 
file, 
except 
a 
after 
the 
number 
components, 
-0, 
component 
part. 
above 
in 
the 
the 
records 
content~def, 
the 
module 
as 
seqment 
REGINT 
of 
OVLDEF 
and 
must 
the 
and 
the 
order, 
6 
•. 
As 
with 
at 
the 
beqinninq 
OVLDEF's 
there 
can 
the 
if 
not 
OVLDEF 
of 
any) 
be 
two 
records, 
a 
or 
at 
REGINT 
module 
the 
the 
(after 
end 
records 
REGINT 
(before 
in 
record 
SEGDEF's, 
the 
MODEND 
the 
same 
may 
appear 
GRPDEF's, 
module. 
record), 
either 
and 
but 
23 
Page 24

8086 
Object 
Module 
Formats 
Version 
4.0 
The 
schematic 
conventions: 
** 
*  *  *  *  *  * 
* 
* TYP *  
* 
*  *  *  *  *  * 
***********************1//*********1111*********** 
TITLE 
At 
the 
with 
programs, 
products, 
abbreviation 
abbreviation 
an 
official 
followinq 
form. 
!~~B~P~~TION.to. 
paqes 
Here 
present 
is 
SAMPLE, 
... 
-. 
--
.. 
the. 
a 
sample, 
RECORD 
----
- . 
(SAMREC) 
RECORD 
diaqrams 
FORMAT 
*********************111********* 
* 
RECORD 
REC 
LENG'rH 
xxH 
*  *  *  *  * 
and 
OFFICIAL 
top 
including 
and 
should 
is 
is 
the 
abbreviation. 
various 
always 
ABBREVIATION 
name 
translators, 
tools 
be 
6 
letters. 
NAME 
* 
* 
I  I 
+----rpt----+ 
of 
the 
Record 
To 
promote 
such 
used 
in 
both 
* 
* 
debuqqers, 
as 
FO~MATS 
of 
Record 
to 
illustrate 
II I 1*********** 
NUMBER 
Format 
uniformity 
EDOJ9~ 
code 
Described, 
and 
and 
documentation. 
* 
* 
the 
CHK 
SUM 
among 
Formats 
the 
various 
* 
* 
toqether 
various 
various 
OJED8~, 
in 
R&L 
the 
The 
'fhe 
Each 
boxes, 
The 
wide 
bytes 
slashes 
one 
asterisks, 
represent 
255, 
the 
or 
REC 
The 
indicatinq 
RECORD 
The 
record, 
NAME 
BOXES 
outlined 
boxes, 
each. 
in 
more, 
'ryp 
second 
format 
The 
the 
depending 
but 
4-byte 
first 
LENGTH 
exclusive 
is 
entirely 
outlined 
wide 
top 
and 
with 
fields. 
byte 
which 
field 
drawn 
boxes, 
bottom, 
four 
in 
record 
in 
of 
with 
entirely 
upon 
vertical 
each 
each 
the 
boxes 
with 
outlined 
represent 
content. 
record 
type 
record 
first 
of -two 
asterisks, 
with 
with 
The 
bars 
contains 
the 
record 
contains 
2 
fields. 
sizes. 
represent 
~sterisks, 
asterisks, 
a 
variable 
wide 
in 
is. 
the 
boxes, 
the 
a 
value 
number 
represent 
but 
number 
top 
The 
sinqle 
with 
of 
outlined 
and 
between 
of 
bytes 
narrow 
bytes. 
two 
three 
bytes, 
with 
bottom, 
~ 
and 
in 
24 
Page 25

8086 
Object 
Module 
Formats 
Version 
4.0 
Any 
structure: 
inclusive, 
field. 
byte 
set: 
translators 
strictlY1 
all 
where 
byte 
byte, 
fields 
indicated 
some 
.1 
cond i tional" 
The 
must 
current 
NUMBER 
A 
4-byte 
the 
(lowest 
etc. 
REPEATED 
Some 
that 
Similarly, 
qiven 
field 
the 
that 
remaininq 
represent 
{ 
?(rl:. 
will 
the 
above 
processors. 
first 
address), 
OR 
portions 
may 
by 
the 
condition 
or d cond" 
that 
1st 
indicates 
0l2345f;789ABCDEFGHIJKLMNOPQRSTUVWXYZ 
NUMBER 
8 
bits 
CONDITIONAL FIELDS 
MrepeatedM 
some 
byte 
bytes 
choose 
set 
of 
a 
be 
portions 
is 
indicates 
contains 
are 
the 
Ascii 
to 
has 
been 
field 
(least-siqnificant) 
the 
Record 
repeated 
or 
true; 
br 
ackets 
a 
the 
interpreted 
code 
constrain 
chosen 
represents 
next 
Format 
0 
-rPt-
of 
a 
these 
below 
number 
or 
Record 
~NAMEd 
a 
number 
of 
a 
to 
8 
bits 
contain 
more 
brackets 
fields 
the 
has 
the 
of 
remaininq 
as 
character 
the 
McoverM 
a 
32-bit 
are 
are 
a 
times. 
below 
Format 
are 
boxes. 
between 
a 
byte 
character 
stored 
stored 
field 
are 
indicated 
followinq 
bytes 
string1 
drawn 
}. 
that 
unsiqned 
Such 
in 
in 
or 
the 
present 
required 
portions 
boxes. 
0 
from 
set 
the 
the 
series 
by 
internal 
and 
in 
each 
this 
Most 
more 
inteqer, 
first 
second 
are 
only 
simIlar 
40, 
the 
by 
of 
if 
CHK 
The 
the 
2's 
record. 
equals 
BI'r 
Descriptions 
the 
bit 
drawn 
indicate 
bit-fields 
SUM 
last 
complement 
Therefore, 
0. 
FIELDS 
level. 
throuqh 
bit 
field 
boundaries, 
of 
3-, 
of 
of 
Boxes 
them, 
1-, 
irt 
each 
the 
the 
contents 
outlined 
represent 
and 
sum 
sum 
thus 
4-bits: 
record 
(modulo 
(modulo 
of 
in 
the 
is 
a 
check 
256) 
25~) 
fields 
asterisks, 
bytes 
byte, 
or 
of 
of 
will 
words; 
represented 
************************* 
* 
* 
* 
************************* 
sum, 
all 
all 
sometimes 
but 
* 
* 
* 
other 
bytes 
with 
the 
which 
bytes 
in 
vertical 
vertical 
below, 
the 
qet 
contains 
in 
the 
record 
down 
lines 
lines 
has 
to 
3 
25 
Page 26

8986 
Object 
Module 
Formats 
version 
4.0 
Every 
HEADER 
original 
encountered 
or 
MODULE 
This 
can 
translators. 
be 
***********************///*********** 
*  *  *  *  * 
* 
REC 
* 
TYP 
* 
80H 
*  *  *  *  * 
***********************///*********** 
module 
RECORD. 
defining 
in 
the 
END RECOR[. 
record 
the 
first 
* 
* 
* 
output 
Its 
module 
module 
can 
T-MODULE 
RECORD 
LENG'fH 
from 
purpose 
for 
up 
also 
record, 
serve 
HEADER 
(THEAi5R) 
*  T 
* 
MODULE 
* 
a 
translator 
is 
all 
to 
line 
the 
as 
and 
RECORD 
NAME 
to 
provide 
numbers 
followinq 
the 
header 
will 
* 
CHK 
* SUI" * 
*  * 
must 
be 
for 
* 
have 
the 
identity 
and 
T-MODULE 
for 
a 
module
modules 
aT-MODULE 
local 
HEADER 
i.e 
r 
output 
of 
the 
symbols 
RECORD 
•• 
it 
from 
T-MODULE 
The 
T-MODULE 
NAME 
NAME 
provides 
a 
name 
for 
the 
T-Module. 
Page 27

8086 
Object 
Module 
Formats 
Version 
4.0 
Every 
earlier) 
record 
(output) 
form 
from 
the 
those 
LIS86 
The 
module 
or 
by 
serves 
by 
LINK-86/LOCATE-86. 
another 
of 
proqram, 
L-MODULE 
L-MODULE 
Lr~ODULE, 
HEADER 
(LHEADR) 
RECORD 
***********************///*********** 
*  *  *  *  * 
* 
REC 
* 
* 
TYP 
* 
RECORD 
LENGTH 
* 
L-MODULE 
* 
NAME 
* 
* 
CHK 
SU~ 
* 
* 
* 82H *  *  *  * 
*  *  *  *  * 
***********************///*********** 
previously 
LOCATE-8~ 
only 
module, 
the 
NAME 
linked 
for 
NAME 
to 
the 
example). 
provides 
may 
identify 
new 
modules, 
created 
have 
When 
module 
a 
an 
L-MODULE 
a 
several 
requires 
by 
which 
name 
by 
module 
for 
(cross) 
HEADER 
that 
modules 
a 
it 
can 
the 
name, 
L-Module. 
LINK-86 
has 
are 
be 
referred 
RECORD. 
been 
perhaps 
processed 
linked 
(Vl.3 
unique 
to 
or 
This 
to 
(by 
27 
Page 28

8~8~ 
Object 
Module 
Formats 
"er~ 
ion 
4., 
~ 
R-~ODULE 
HEADER 
(RHEADR) 
RECORD 
***********************///*********///*********///*********** 
*  *  *  *  *  *  * 
* 
REC 
* 
TYP 
* 
* 
* 6EH * 
RECORD 
LENG'fH 
* 
R-MODULE 
* 
NAME 
* 
R-MODULE 
* 
*  ATTR 
* 
* 
R-MOOULE 
*  INFO 
* 
* CHK *  
* 
SUI., 
*  * 
*  *  *  *  *  *  * 
***********************///*********///*********///*********** 
Every 
HEADER 
been 
module 
When 
module 
modules, 
example). 
processed 
several 
R-MODULE 
The 
module 
RECORD. 
(output) 
attributes 
modules 
requires 
by 
which 
NAME 
R-~ODULE 
created 
This 
and 
are 
a 
name, 
it 
can 
NAME 
by 
LINK-8~/LOCATE-8~ 
record 
by 
LINK-86/LOCATE-86. 
gives 
linked 
be 
provides 
serves 
information 
to 
perhaps 
referred 
a 
name 
to 
form 
unique 
to 
for 
identify 
on 
another 
(by 
the 
may 
It 
memory 
from 
the 
LIB8~ 
R-Module. 
have 
a 
also 
module, 
those 
an 
module 
specifies 
usaqe 
of 
proqram, 
and 
the 
* 
R-MODULg 
that 
the 
has 
the 
need. 
new 
linked 
for 
R-MODULE 
The 
attributes, 
************************·******~·~~************I' 
*  *  *  *  *  * 
* 
* 
* 
*  *  *  * 
***********************************************1 I I 1***** 
The 
Zis 
assigned 
R-MODULE 
MOD 
* 
OAT 
* 
~OD 
indicates 
a 
function. 
ATTR 
and 
SEGil\ENT 
RECORD 
* 
COUNT 
OAT 
ATTR 
has 
the 
field 
following 
GROUP 
* 
*. 
RECORD 
COUNT 
* 
provides 
format: 
* 
* 
* 
information 
OVERLAY 
RECORD 
COUNT 
* 
* 
* 
*  * 
sunfield 
has 
the 
followinq 
format: 
********************************* 
*  ,  ,  I  t  I 
*Z, 
*  I  ,  I  ,  , 
********************************* 
that 
Z I 
these 
These 
z, 
bits 
Z, 
l-bit 
Z I Z 
are 
fields 
reauired 
TYP 
I  * 
have 
to 
on 
OVERLAY 
RECORD 
OFFSET 
* 
* 
not 
be 
various 
I 1***** 
currently 
zero. 
module 
* 
* 
* 
been 
28 
Page 29

8086 
Object 
Module 
Formats 
Version 
4.0 
TYP 
semantics 
TYP=0 
TYP=l 
TYP=2 
TYP=3 
The 
Segment 
The 
Definition 
The 
Overlay 
Definition 
The 
contains 
relative 
Definition 
OVERLAY 
is 
a 
are 
defined 
The 
The 
other 
The 
It 
can 
The 
It 
can 
fixups 
SEGMENT 
Definition 
GROOP 
Records 
OVERLAY 
Definition 
Record 
OVERLAY 
a 
32-bit 
to 
the 
Record 
RECORD 
2-bit 
module 
module 
than 
module 
be 
module 
be 
to 
RECORD 
Records 
RECORD 
in 
RECORD 
for 
RECORD 
unsigned 
start 
in 
COUNT 
su~field 
as 
follows: 
is 
an 
is 
a 
relocatable 
base 
is 
fixups 
a 
Position 
loaded 
is 
a 
Load-Time 
loaded 
be 
performed. 
COUNT 
in 
COUNT 
the 
module. 
COUNT 
Records 
the 
'Root'). 
OFFSET 
number 
of 
the 
module. 
is 
zero. 
that 
absolute 
may 
anywhere. 
anywhere 
subfield 
the 
module. 
subfield 
subfield 
in 
the 
indicatinq 
the 
specifies 
module. 
module. 
still 
Independent 
No 
fixups 
Locatable 
with 
indicates 
module 
subfield 
object 
This 
field 
be 
perhaps 
indicates 
indicates 
is 
the 
file, 
the 
module 
Fixups 
present. 
Code 
are 
needed. 
Module. 
some 
the 
number 
(including 
a 
4-byte 
location 
of 
the 
must 
module. 
base 
the 
the 
first 
be 
type. 
number 
of 
number 
Overlay 
field. 
in 
Overlay 
zero 
The 
of 
Group 
of 
It 
bytes, 
when 
R-MODULE 
The 
unsiqned 
of 
memory 
fo 
rmat: 
STATIC 
module. 
allocated 
MAXIMU!"1 
seqments 
S'rATIC 
SIZE) 
available 
STATIC 
INFO 
R-MODULE 
numbers 
space 
*****1111*********1 
* 
STATIC 
* 
* 
SIZE 
* 
* 
INFO 
specifyinq 
that 
* 
ft4AXIMUM 
* 
STATIC 
* 
SIZE 
* 
* 
field 
the 
the 
contains 
different 
module 
1'1*********1111*********' 
* 
* 
* 
* 
* 
*****1111*********1111*********' 
This 
to 
in 
SIZE. 
This 
memory, 
SIZE 
SIZE 
the 
value 
and 
is 
is 
the 
module 
S'fATIC 
module. 
(By 
defaul 
only 
the 
the 
the 
total 
the 
mlnlmum 
so 
SIZE 
is 
This 
t 
MAXIJ\1UM 
qives 
loader 
MAXIMUM 
size 
that 
the 
value 
the 
may 
STATIC 
static 
the 
maximum 
STATIC 
maximum 
allocate 
will 
DYNAMIC 
STORAGE 
111*********1111***** 
of 
module 
must 
SIZE. 
a 
types 
need. 
the 
memory 
can 
total 
be 
qreater 
SIZE 
soace 
any 
sequence 
and 
It 
sizes 
has 
I' 
of 
four 
the 
1***** 
*  * 
MAXIMUM 
* 
DYNAMIC 
* 
STORAGE 
* 
* 
LTL 
is 
seqments 
space 
be 
loaded. 
size 
set 
needed. 
value 
that 
of 
than 
e~ual 
Dependina 
between 
or 
32-bit 
(in 
bytes) 
followinq 
* 
* 
* 
* 
in 
must 
the 
equal 
to 
STATIC 
the 
be 
LTL 
to 
on 
the 
29 
Page 30

8086 
Object 
Module 
Formats 
Version 
4.0 
buffer, 
value 
miqht 
equal 
is 
set 
DYNAMIC 
for 
dynamic 
is 
zero. 
MAXIMUM 
be 
needed 
to 
DYNAMIC 
equal 
STORAGE 
DYNAMIC 
by 
the 
STORAGE 
to 
DYNAMIC 
is 
the 
expansion, 
STORAGE 
module. 
STORAGE· 
memory 
etc 
(By 
default 
value) 
••• 
is 
This 
space 
) 
the 
.value 
• 
that 
at 
must 
load-time. 
maximum 
must 
MAXIMUM 
be 
dynamic 
be 
qreater 
DYNAMIC 
allocated 
The 
memory 
STORAGE 
(for 
d&faUl· 
that 
than 
value 
or 
30 
Page 31

8086 
Object 
Module 
Formats 
Version 
4.0 
This 
followinq 
Classes, 
The 
the 
ordering 
on 
the 
2, 
3, 
Segment 
Name 
Index 
Names. 
4, 
Record 
SEGDEF 
Overlays 
ordering 
of 
••• 
Name 
These 
fields 
LIST 
------
OF· 
NAMES. 
(LNAMEST-' 
RECORD 
-"-' 
... 
***********************///*********** 
*  *  *  *  *  
* 
REC 
* 
RECORD 
* TYP * 
* 
9~H 
LENGTH 
*  *  *  * 
*  *  *  *  *  
***********************///*********** 
provides 
and 
Names 
Thus, 
Index, 
and/or 
of 
numbers 
of 
the 
GRPDEF 
Groups. 
LNAMES 
within 
these 
Class 
SEGDEF 
names 
Name 
* 
NAME 
*  * SUM * 
I  1 
+----rpt----+ 
of 
a 
list 
Records 
Records 
each 
are 
and 
LNAMES 
are 
used 
Index, 
GRPDEF 
Names 
as 
the 
within 
Record, 
considered 
as 
Overlay 
Records. 
* 
CHK 
names 
a 
module, 
dName 
Name 
* 
that 
induces 
to 
Indices
may 
of 
toqether 
be 
numbered: 
Index 
be 
used 
Seqments, 
an 
orderinq 
d 
in 
and 
in 
with 
1, 
the 
Group 
lenq 
This 
th. 
repeatable 
field 
provides 
a 
name. 
which 
may 
have 
zero 
11 
Page 32

808~ 
Object 
Module 
formats 
Version 
4.0 
SEG~ENT 
DEFINITION. 
(SEGDEF) 
RECORD 
**********************///*****************///*******///*******///********** 
* 
* 
* 
* 
REC 
'r'll' 
98H 
* 
* 
* 
* 
*  * 
RECORD 
LENG'fH 
* 
SEGMENT 
* 
ATTR 
* 
* 
* 
*  * 
* 
* SEGi-\EN'r * SEGMEN'r *  CLASS 
"* 
LENG'fH 
* 
*  * 
* 
* 
NAME 
INDEX 
* 
* 
* 
NAME 
INDEX 
* 
OVERLA'l * 
* 
NAME 
* 
INDEX 
* 
* 
**********************///*****************///*******///*******///********** 
I  I 
SEGI\1EN'r 
record 
the 
(SEGMENT 
seqment", 
of 
LOCATE-86, 
if 
they 
of 
the 
types 
sequence 
possibly 
wish.) 
SEG, AT'rR 
The 
segment, 
INDEX 
to 
in 
INDEX 
which 
disjoint 
although 
SEG 
refer 
which 
0 
is 
ATTR 
and 
values 
to 
SEGDEF 
is 
reserved 
not 
really 
regions 
translators 
field 
has 
the 
1 
throuqh 
specific 
Records 
a 
provides 
followinq 
+----c 
to 
seqment: 
of 
may 
0 n d i t 
327fi7, 
LSEG's, 
appear 
indicate 
it 
memory; 
create 
information 
forMat: 
which 
are 
defined 
in 
the 
is 
a 
it 
is 
portions 
on 
ion 
are 
used 
the 
·unnamed 
possibly 
normally 
of 
various 
a 
1----+ 
in 
implicitly 
object 
absolute 
empty 
created 
it 
as 
attributes 
*  * 
CHK 
* 
SUM 
* 
* 
* 
other 
file. 
well, 
* 
* 
* 
by 
set 
by 
******************************************************* 
* 
ACB 
* 
p 
* 
* 
* 
******************************************************* 
The 
ACBP 
specifications. 
A 
(Alionment) 
* 
* 
* 
FRAME 
NUMBER 
* 
OFF * LTL 
* 
SET 
* 
*  * 
* 
+---conditional---+---
byte 
contains 
This 
* 
byte 
********************************* 
*  I  ,  * 
*  A  C  I B I P * 
*  ,  I  * 
********************************* 
is 
a 
3-bit 
* 
* 
* 
*  * 
4 
numbers, 
has 
OAT 
con 
the 
following 
subfield 
*  *  * 
MAXIMU,., 
* 
SEG,..,EN'r 
* 
LENG'rH 
* 
* 
* 
* 
GROUP 
OFFSET 
* 
* 
* 
*  * 
I 
~ 
i t 
the 
that 
A, 
C, B, 
format: 
soecifies 
ion 
a 1 
and 
---+ 
P 
the 
attribute 
aliqnment 
32 
Page 33

d086 
Object 
Module 
Formats 
version 
4.0 
attribute 
A=0  SEGDEF 
A=l 
SEGDEF 
A=2  SEGDEF 
A=3  SEGDEF 
A=4  SEGDEF 
A=5  SEGDEF 
A=6  SEGDEF 
aligned 
In 
addition 
··conditional·· 
NUMBER 
MAXIMU~ 
A<>5 
and 
SEGMENT 
then 
C 
combination 
must 
have 
combined 
OFFSET's 
For 
relocatable 
or 
7 
indicatinq 
of 
this 
attribute 
combined: 
the 
combination 
and 
let 
MXY 
gap 
required 
aliqnment 
(combined) 
and 
let 
followinq 
offsets 
dy 
in 
dx' 
Y: 
of 
the 
LSEG. 
describes 
describes 
describes 
describes 
describes 
describes 
describes 
LSEG 
fields 
OFFSET 
LENGTH, 
the 
three 
(Combination) 
attribute 
combination 
like 
match 
C=6 
below 
(For 
segments, 
how 
is 
Let 
X,Y 
of 
denote 
between 
attribute 
LSEG 
dy 
table 
Zi 
similarly 
qives 
and 
dye 
if 
the 
will 
fields 
NAME 
of 
zero 
the 
best 
be 
X,Y. 
the 
the 
of 
let 
the 
in 
The 
semantics 
an 
absolute 
a 
relocatable, 
a 
relocatable, 
a 
relocatable, 
a 
relocatable, 
an 
unnamed 
a 
load-time 
not 
member 
value 
be 
present. 
will 
and 
GROUP 
INDEX 
is 
a 
the 
LSEG. 
(C=0). 
if 
and 
A=0 
their 
the 
segment 
qiven 
LSEG's, 
Let 
LX 
maximum 
X-
and 
Y. 
dx 
(0<=dx<LX) 
be 
lenqth 
Z 
for 
absolute 
of 
of 
A 
be 
present. 
OFFSET 
fields 
3-bit 
Absolute 
In 
only 
if 
complete 
C 
field 
may 
be 
by 
considerinq 
and 
let 
and 
LY 
of 
LX,LY. 
Y-components 
Let 
LZ 
be 
the 
the 
offset 
LZ 
bytes 
of 
are 
defined 
LSEG. 
byte 
word 
paraqraph 
paqe 
locatable 
any 
qroup. 
determines 
If 
A=0 
If 
fields 
will 
be 
subfield 
seqments 
this 
case 
their 
names 
encodes 
combined. 
Z 
-be 
the 
be 
the 
Let 
of 
denote 
the 
offset 
in 
the 
combined 
correspondinq 
as 
aliqned 
aliqned 
aligned 
portion 
(LTL), 
if 
or 
A=5 
A=6 
will 
present. 
that 
the 
FRAME 
Must 
a 
number 
The 
how 
LSEG 
lenqths 
G 
be 
Z 
to 
the 
Y 
of 
follows: 
LSEG. 
LSEG. 
aligned 
LSEG. 
of 
MAS. 
paraqraph 
one 
or 
then 
then 
be 
the 
present. 
specifies 
(A=0 
seqments 
NUMBER's 
match 
0,1,2,4,5,6 
interpretation 
two 
LSEG's 
resulting 
of 
X 
the 
length 
accommodate 
length 
in 
X 
of 
a 
byte. 
LSEG 
to 
Z, 
dx 
LSEG. 
several 
the 
LTL 
or 
will 
as 
and 
of 
a 
Then 
and 
in 
FRAME 
OAT, 
the 
A=5) 
and 
well). 
are 
from 
of 
any 
the 
the 
byte, 
the 
the 
X 
and 
If 
be 
Y, 
The 
indicates 
same 
the 
LSEG 
above 
seqment 
B 
Seament 
LENGTH 
LZ 
C 
LX+LY+G 
'2 
4 
LX+LY 
LX+LY 
5 
~ 
MXY 
7 
I~XY 
above 
that 
combination 
so 
that 
all 
other 
semantics 
(Big) 
is 
Lenqth 
field 
must 
dx' 
di-
dx 
dx+LY 
dx 
dx+MXY-LX 
table 
the 
relocatable 
semantics 
LOCATE-8~ 
LSEG's 
of 
8080 
a 
I-bit 
is 
exactly 
contain 
~y~ 
dy+LX+G 
dy 
dy+LX 
dy 
dy+MXY-LY 
has 
no 
as 
will 
in 
R&L); C=3 
subfield 
zero. 
lines 
LSEG 
C=6, 
(in 
MAS 
which. 
~4K 
for 
may 
not 
but 
addition~lly 
the 
default 
(this 
is 
undefined. 
if 
(6553fi). 
C=0, 
be 
combined; 
case) 
corresponds 
1, 
indicates 
In 
this 
C=l 
or 
C=3. 
C=l 
"distinquishes" 
place 
to 
the 
that 
case 
the 
C=0 
has 
the 
the 
LSEG 
MEMORY 
the 
SEGMENT 
33 
Page 34

8086 
Object 
P 
the 
·(This 
seqment 
corresponds 
The 
seqments, 
segment. 
inclusive. 
adjustment 
The 
specifies 
format: 
-
zls 
assigned 
Module 
(Paqe-Resident) 
be 
FRAME 
The 
LTL 
A-9 
of 
the 
NUMBER 
or 
range 
If 
a 
the 
OAT 
attributes 
subfield 
********************************* 
*  I  I  I  I  I  I  I  * 
* G I Z 1 z 1 z I Z I Z I Z 18SM* 
*  I  I  I  I  I  I  I  * 
********************************* 
indicate 
a 
function. 
Formats 
located 
to 
the 
and 
A-5) 
of 
value 
FRAME 
that 
These 
is 
a 
l-bit 
in 
Min-paqe-
OFFSET 
specify 
OFFSET 
larQer 
NUMBER 
(present 
of 
these 
bits 
~AS 
the 
i$ 
than 
should 
an 
I-bit 
subfield 
without 
relocation 
fields 
(present 
placement 
constrained 
15 
is 
be 
only 
LTL 
seqment. 
fields 
are 
required 
which, 
crossinq 
desired 
done. 
for 
have-
type 
in 
to 
to 
only 
MAS 
be 
LTL 
It 
not 
be 
if 
1, 
a 
page 
of 
8080 
of 
between 
for 
OFFSET 
seqments, 
has 
currently 
zero. 
Version 
demands 
boundary. 
R&L.) 
for 
the 
0 
the 
followinq 
4.0 
that 
absolute 
absolute 
and 
then 
A=n) 
been 
15 
an 
G 
seqment 
the 
group. 
BSM 
specifies 
case 
the 
The 
seqments, 
segment. 
loader 
value 
the 
value 
field 
The 
8SM 
to 
give 
The 
qives 
base 
value 
to 
the 
of 
will 
the 
SEGMENT 
(Group) 
is 
a 
(Big 
that 
MAXIMUM 
MAXIMUM 
A=6) 
(The 
as 
to 
in 
this 
in 
is 
only 
attribute 
the 
GROUP 
offset 
the 
be 
qroup 
member 
Segment 
the 
SEGMENT 
specifies 
purpose 
reserve 
field.) 
the 
SEGMENT 
big 
seqment 
OFFSET 
of 
parent 
used 
base 
LENGTH 
is 
a 
of 
maximum 
SEGMENT 
memory 
enouqh 
bit 
a 
MAXIMU~ 
the 
qroup. 
by 
of 
the 
I-bit 
a 
group, 
~aximum 
segment 
LENGTH 
the 
of 
this 
This 
LENGTH 
to 
in 
the 
subfield 
first 
the 
loader 
data 
field 
and 
Length) 
must 
LENGTH 
maximum 
field 
space 
va~.ue 
field. 
hold 
LTL 
OAT 
length 
(present 
byte 
It 
must 
to 
records 
that, 
should 
lenqth 
contain 
subfield 
length 
is 
as 
much 
must 
numbers 
field 
of 
of 
the 
be 
zero 
determine 
belonainq 
be 
is 
a 
is 
to 
as 
be 
The 
from 
h4K. 
only 
seqment 
if 
1, 
loaded 
I-bit 
exactly 
zero. 
(present· 
in 
bytes 
provide 
possible 
qreater 
MAXIMUM 
0 
to 
(see 
above) 
for 
if 
the 
the 
to 
specifies 
as 
field 
~4K. 
information 
than 
SEGMENT 
n4K-l 
must 
LTL 
seoments, 
relative 
G 
bit 
location 
the 
seornent. 
a 
that, 
only 
of 
up 
or 
equal 
inclusive. 
be 
is 
0. 
that 
part 
if 
In 
this 
for 
the 
to· 
to 
LENGTH 
used 
A=6) 
to 
This 
relative 
the 
of 
1, 
LTL 
LTL 
a 
the 
to 
the 
bytes. 
not 
only 
34 
The 
delete 
bi~ 
SEGMENT 
The 
lenqth 
the 
enouqh 
LENGTH 
may 
segment 
to 
hold 
field 
be 
zero: 
from 
numbers 
the 
qives 
if 
so, 
module. 
from 
the 
LINK-3~ 
The 
a 
to 
~4K-l 
lenqth 
(unlike 
SEG~ENT 
inclusive. 
of 
LENGTH 
the 
seq~ent 
LINK-SO) 
field 
The 
in 
will 
is 
8 
Page 35

8086 
Object 
Module 
Formats 
Version 
4.8 
attribute 
segment 
SEGMENT 
-------. 
The 
to 
the 
STACK. 
l;st 
assign 
has 
programmer 
referred 
RED, WHITE, BLUE; 
Class 
LNAMES 
the 
the 
by 
of 
CLASS 
The 
length 
OVERLAY 
The 
programmer's 
Class 
indexing 
bit 
a 
length 
NAME 
Segment 
segment. 
This 
names 
to 
Name, 
Record(s). 
field 
NAME 
Class 
a 
segment. 
0.) 
to 
to 
(e.g. 
NAME 
Overlay 
Name, 
into 
in 
provided 
define 
by 
the 
of 
INDEX 
Name 
provides 
INDEX 
Name 
The 
at 
ROM, 
indexing 
INDEX 
Name 
behest, 
may 
the 
ACBP 
field 
64K. 
is 
a 
name 
Examples: 
the 
by 
the 
is 
a 
(If 
none 
purpose 
a 
-candle· 
LOCATE-time) 
FASTRAM, 
into 
is 
a 
name 
apply 
be 
null. 
list 
of 
(see 
the 
CODE, 
Segment 
LNAMES 
name 
is 
assigned, 
of 
by 
by a single 
DISPLAYRAM. 
the 
the 
to 
a 
This 
names 
field 
provided 
above) 
programmer 
DATA, 
Record(s). 
the 
Class 
which 
list 
translator 
segment. 
must 
TAXDATA, 
Name, 
proqrammer 
the 
Names 
several 
of 
provides 
by 
be 
or 
by 
indexing 
name 
reference. 
This 
names 
and/or 
The 
the 
used 
translator 
MODULENAME 
or 
is 
field 
OVerlay 
the 
LNAMES 
to 
translator 
is 
null, 
to 
LSEG's. 
provides 
provided 
LINK-86, 
Name, 
Overlay 
Record(s). 
give 
into 
,allow 
may 
Examples: 
the 
assigns 
CODE, 
the 
can 
and 
the 
the 
by 
the 
like 
Name, 
be 
at 
(Note) 
component 
Name 
may 
be 
and 
null.) 
The 
entity 
an 
MComplete 
comprising 
Overlay 
(End 
of 
Name. 
Note) 
Namea 
Segment 
(The 
of 
latter 
a 
segment 
Name, 
is 
a 
2 
components 
a 
3-
Class 
35 
Page 36

8086 
Object 
Module 
Formats 
Version 
4.0 
LSEG's 
that. 
some 
this 
into 
GROUP 
.......--..-..--
DEFINITiON 
(GRPDEF) 
RECORD 
***********************///**********///************ 
*  *  *  *  *  * 
* 
REC 
* 
RECORD 
* TYP * 
9AH *  *  INDEX  * DESCRIPTOR  *  * 
* 
LENGTH 
*  *  * 
* 
* 
GROUP 
NAME 
* 
* 
GROUP 
COMPONENT 
* 
* 
CHK 
SUM 
*  *  * 
***********************///**********///************ 
I  I 
+--repeated---+ 
GROUP 
The 
when 
FRAME 
is 
The 
the 
Group 
may 
not 
GROUP 
list 
NAME 
Name 
be 
referenced. 
the 
which 
the 
NAME 
of 
INDEX 
LSEG's 
contains 
case, 
names 
is 
a 
name 
The 
are 
eventuallv 
(or 
LOCATE-8~ 
INDEX 
field 
provided 
by 
which 
important 
~cove~sd) 
will 
provides 
by 
the 
a 
fixed 
every 
issue 
LNAMES 
collection 
property 
in 
a 
the 
of 
MAS, 
LSEG 
warning 
Group 
Record(s). 
of 
such 
there 
of 
the 
message. 
Name, 
* 
* 
1 
a 
must 
qroup. 
by 
or 
more 
qroup 
exist 
indexinq 
is 
If 
GROUP 
Each 
COMPONENT 
GROUP 
COMPONENT 
DESCRIPTOR 
DESCRIPTOR 
***********///***** 
*  *  * 
~ 
51 
* 
SEGMENT 
*  * 
INDEX 
*(FFH)* 
* 
* 
***********///***** 
***********///***** 
*  *  * 
* 
EI 
.* 
EXTERNAL 
*  * 
INDEX 
*(FEH)* 
*  *  * 
***********///***** 
has 
1 
* 
* 
* 
* 
* 
* 
* 
of 
the 
followinq 
formats: 
3t5 
Page 37

8186 
Object 
Module 
Formats 
***********///*********///*********///***** 
*  *  *  *  * 
* 
sea 
* 
*  * 
*(FDH)* 
SEGMENT 
NAME 
INDEX 
* 
* 
* 
CLASS 
NAME 
INDEX 
• 
OVERLAY 
* 
NAME 
• 
INDEX 
* 
* 
* 
*  *  *  *  * 
***********///*********///********///****** 
************************************* 
* 
• 
* 
*(FBH)* 
*  * 
*  * 
LTL * LTL 
* 
OAT 
GRP 
MAXIMUM 
* 
*  GROUP 
LENGTH 
* 
* 
* 
* 
* 
* 
* 
GROUP 
LENGTH 
* 
* 
* 
* 
* 
************************************* 
************************* 
*  * 
* 
* 
ASS 
GRP 
* 
* 
FRAME 
NUMBER 
*(FAH)* 
*  * 
************************* 
*  * 
OFF 
* 
* 
* 
* 
SET 
* 
* 
* 
* 
Version 
4.1 
These 
If 
the 
DESCRIPTOR 
selects 
DESCRIPTOR 
selects 
External 
DESCRIPTOR 
which 
Overlay 
or 
separate 
the 
If 
the 
the 
(eventually) 
(i.e., 
rather 
specification 
If 
determine 
Name(s). 
proqrammer 
5 
kinds 
first 
contains 
LSEG 
first 
contains 
LSEG 
Name. 
(Note) 
the 
than 
the 
translations 
first 
contains 
to 
of 
DESCRIPTOR's 
byte 
described 
byte 
that 
one 
respectively. 
of 
1 
of 
1 
is 
If 
the 
found 
External 
an 
has 
byte 
3 
more 
or 
include 
(for 
more 
more 
(eventually) 
LSEG), 
occurred. 
are 
the 
DESCRIPTOR 
field, 
by a precedinq 
the 
descriptor 
field, 
definition 
to 
be 
physical 
is 
defined 
then 
(End 
of 
the 
DESCRIPTOR 
fields, 
more 
in 
which 
which 
Segment 
This 
a 
~roup, 
SEG~ENT 
now 
discussed: 
contains 
which 
which 
found 
of 
the 
with 
an 
DESCRIPTOR 
is 
SEGDEF 
contains 
is 
an 
to 
External 
instead 
respect 
error 
of 
note) 
contains 
are 
Name(s), 
one 
INDEX's 
0FFH, 
a 
SEGMgNT 
record. 
0FEH, 
EXTERNAL 
contain 
of 
to 
in 
Name 
Class 
allows 
or 
more 
cannot 
the 
Index 
logical 
a 
qroup 
0FDH, 
Index 
Name{s), 
a 
be 
then 
INDEX 
then 
INDEX 
specified 
is 
PSEG 
then 
fields, 
translator 
LSEG's 
known). 
the 
that 
the 
that 
the 
and 
from 
37 
Page 38

8086 
Object 
Module 
Formats 
Version 
4.0 
A Name 
specifies 
occur 
DESCRIPTOR 
maximum 
descriptor, 
record. 
GRPDEF 
qroup. 
assigned 
specifies 
GROUP 
in 
If 
the 
length 
record. 
A 
The 
Zis 
BGL 
LENGTH 
Index 
all 
other 
first 
contains 
if 
There 
seqment 
LTL 
DATA 
indicate 
a 
function. 
(Biq 
that 
subfield 
with 
~ames. 
record 
byte 
of 
the 
present. 
may 
There 
can 
field 
be 
value 
(Note: 
types.) 
of 
3 
more 
qroup, 
at 
not 
has 
the 
must· 
most 
may 
be 
zero 
carries 
Name 
DESCRIPTOR 
fields. 
and 
the 
precede 
one 
not 
in 
the 
descriptor 
be 
two 
followinq 
Indices 
which 
lenqth 
any 
such 
special 
contains 
are 
all 
absolute 
qroups. 
format: 
with 
other 
********************************* 
*  I  I  I  I  I  I  ,  * 
* Z I Z I Z I Z I Z I Z IBGLIBGM* 
*  I  I  I  I  I  I  I  * 
********************************* 
that 
Group 
the 
These 
Group 
must 
these 
Lenqth) 
lenqth 
contain 
I-bit 
bits 
are 
is 
is 
fields 
required 
a 
I-bit 
exactly 
zero. 
have 
64K. 
siqnificance: 
zero 
the 
LTL 
of 
the 
descriptors 
of 
this 
not 
to 
be 
subfield 
In 
value 
0FBH. 
OAT 
field. 
qroup. 
type 
component 
currently 
zero. 
that. 
this 
case 
may 
then 
in 
in 
This 
in 
been 
if 
it 
not 
the 
the 
the 
a 
the 
1. 
the 
BGM 
specifies 
case 
the 
The 
that 
has 
seqments 
have 
been 
The 
of 
the 
qroup 
using 
·If 
the 
the 
DESCRIPTOR 
LOCATEd. 
all 
base 
Group 
of 
If 
the 
a 
fixups 
are 
then 
Group 
Group 
absolute 
the 
GRPDEr"' 
record. 
reco 
(Biq 
that 
Group 
the 
MAXIMUM 
GROUP 
been 
in 
determined 
the 
group 
performed 
MAXIMU~ 
that 
maximum 
first 
contains 
it 
has 
an 
have 
required 
the 
FRAME. 
is 
also 
has 
and 
this 
There 
rd. 
Maximum 
maximum 
GROUP 
LENGTH 
arc 
relative 
GROUP 
has 
lenqths 
byte 
the 
address 
been 
after 
NU~BER 
available 
been 
descriptor 
may 
Lenqth) 
qroup 
LENGTH 
subfield 
subfield 
after 
put 
in 
to 
LENGTH 
been 
of 
subfield 
determined 
of 
the 
the 
DESCRIPTOR 
address 
chosen 
performed. 
LOCATE-8~ 
should 
for 
assiqned 
must 
be 
at 
most 
is 
length 
specifies 
the 
Group 
contiquous 
the 
base 
segment 
of 
the 
by 
LOCA 
If 
has 
assiqned 
be 
debuqqinq 
an 
address 
precede 
one 
a 
I-bit 
is 
must 
of 
specifies 
after 
components. 
contains 
Group. 
r
rE-8f), 
fixups 
used 
as 
all 
descriptor 
subfield 
exactly 
contain 
the 
length 
is 
~locatedM, 
memory 
the 
area. 
Group. 
the 
the 
Group 
Once a Group 
relative 
relative 
an 
the 
base. 
systems 
by 
LOCATE-86 
other 
of 
that, 
~4K. 
zero. 
of 
All 
maximum 
.  . ~ 
is 
~located", 
0FAH, 
to 
address 
The 
such 
then 
descriptors 
this 
In 
the 
and 
then 
has 
to 
the 
to 
address 
as 
type 
if 
this 
group 
the 
fixups 
lenqth 
the 
been 
which 
Group 
the 
ICE. 
it 
in 
1, 
is 
in 
a 
38 
Page 39

80B6 
Object 
Module 
Formats 
Version 
4.0 
(Examples) 
names  "DATA", 
and 
"MEMORY" 
7 
and 
8, 
respectively 
The 
LSEG 
"DATA" • 
with 
"unspecified") 
all 
regardless 
"Small" 
one 
contains 
[eFOH, 
with 
The 
Segment 
The 
LSEG's 
The 
contains 
Descriptor 
S'eqment 
Descriptor 
Descriptor 
with 
of 
PLM-86 
assumptions 
the 
7, 
7, 
Assume 
I' 
RAM 
are 
selected 
Name "MYPROG", 
Name "MYPROG-, 
Overlay 
Seqment 
their 
compile~ 
the 
descriptors 
5], 
and 
that 
'I 
, 
It 
MYPROG" 
•. 
with 
with 
Overlay 
by 
sinqle 
fields: 
Name. 
with 
emitting 
[~FDH, 
by 
an 
Name 
4 
fields: 
Class 
fields: 
Name 
Name(s). 
will 
descriptor 
8, 8, 
LNAMES 
, 
"CODE", 
record 
Index 
[eFDH, 
Class 
{0FDH, 
Name "DATA", 
"MYPROG" 
be 
2 GRPOEF 
[0FOH, 
5]. 
Name 
(eFDH, 
able 
1, 
(End 
.. 
" 
(null), 
values 
"DATA", 
3, 
1, 
3, 
1, 
and 
to 
(Group 
{0FDH, 
1, 
51, 
of 
exists 
of 
1, 
3, 
1, 
51 
specifies 
and 
01 
Class 
inform 
Definition) 
4, 
4, 
Examples) 
such 
"STACK-" 
2, 
3, 
11 
specifies 
and 
Overlay 
no 
(or 
·null-# 
specifies 
Name  ·DATA
LOCATE-86 
51, 
[eFDH, 
the 
that 
"CONST" 
4, 
5, 
the 
any 
of 
Records: 
other 
6, 
6, 
the 
6, 
the 
Name 
LSEG 
or 
and 
II
the 
51, 
, 
39 
Page 40

8086 
Object 
Module 
Formats 
Version 
4.9 
************************///*********///************ 
*  *  *  *  *  * 
REC 
* 
* 
TY 
P * 
* SEH *  *  USE)  * DESCRIPTOR *  * 
*  *  *  *  *  * 
************************///*********///************ 
This 
or 
objects 
EXTDEF, BLKDEF, 
as 
a 
supported, 
appendix. 
As 
describe 
describes 
eiqht 
record 
Branch, 
many 
a 
leaves.) 
presumably 
and 
II 
branch. 
eiqht 
TYPE 
-----(TyPDEF)-----
* 
RECORD 
LENGTH 
provides 
named 
DEBSYI~ 
which 
the 
EIGHT LEAF 
leaves; 
and/or 
consists 
correspondinq 
(Every 
DEFINITION 
* 
NAME 
RECORD 
*  EIGHT  * 
*  (L"INK86  *  LEAF  * 
I  I 
+-----rpt----+ 
the 
description 
by 
DESeRI 
such 
the 
one 
or 
LOCSY~ 
of 
a 
branches, 
PTOR" 
field 
last 
such 
records. 
fields 
of 
more 
sequence 
except 
names 
field 
the 
of 
are 
as 
necessary 
the 
describes 
type 
provided 
The 
Leaves. 
last 
CHK 
SUM 
of 
type 
provided 
in 
* 
* 
an 
in 
is 
described 
The 
,are 
the 
from 
object 
PU6DEF, 
types 
in 
an 
used 
record 
one 
to 
to 
TYPE INDEX 
record 
defined 
the 
obj 
Use 
place 
of 
Leaves 
necessary. 
Branch 
leaves. 
a 
name 
EIGHT 
This 
a 
types 
implicitly 
ect 
file. 
of 
sinqle 
of 
LEAF 
field 
are 
is 
deemed 
This 
values 
to 
associate 
by 
this 
lenqth 
to 
Unless 
field 
byte 
DESCRIPTOR 
can 
be 
to 
field 
1 
through 
the 
sequence 
is 
reserved 
containinq 
zero). 
describe 
represented, 
the 
last 
end 
in 
an 
has 
the 
followinq 
***********///****** 
ohject 
3 
up 
leaf 
32767, 
in 
to 
indefinite 
*  *  * 
*  E  *  LEAF  * 
* 
~ 
* DESCRIPTOR * 
* 
* 
***********///****** 
* 
* 
I  I 
+----rpt-----+ 
in 
for 
it 
eiqht 
the 
is 
which 
types 
which 
(which 
a 
format: 
TYPDEF 
LINK-8~. 
Leaves. 
field 
Repeat 
sequence 
* 
* 
are 
with 
is 
may 
Leaf 
contained 
object 
records 
Translators 
the 
representation 
If; 
more 
be 
(see 
of 
in 
names, 
appear 
than 
repeated 
below), 
easy 
other 
are 
in 
should 
eight, 
as 
the 
null 
Page 41

8086 
the 
(bit=l) 
has 
Object 
The 
following 
• 
The 
one 
of 
Module 
EN 
field 
LEAF DESCRIPTOR 
the 
Formats 
is 
a 
8 
Leaves 
followinq 
byte: 
******* 
*  * 
0 
to 
128 
* 
* 
* 
* 
* 
* 
* 
* 
******* 
******************* 
*  *  * 
*  * 
* 
129 
* 
*  *  
*  * 
******************* 
(left 
field. 
formats: 
·0 
to 
64K-1 
the 
8 
to 
which 
* 
* 
* 
* 
bits, 
riqht) 
occurs 
left 
are 
to 
Easy 
between 
riqht, 
(bit=0) 
1 
Version 
indicate 
and 
8 
or 
times, 
4." 
if 
Nice 
***********///***** 
*  *  * 
130 
* 
* 
NAME 
* 
* 
* 
* 
* 
*  *  
*  *  * 
***********///***** 
***********///***** 
*  *  * 
*  *  * 
* 
131 
*  INDEX  * 
* 
*  * 
*  *  * 
***********//1-***** 
************************* 
*  *  * 
*  * 
* 
132 
* 
*  * 
* 
************************* 
* 
e 
to 
11;M-1 
* 
* 
* 
* 
41 
Page 42

8086 
Object 
Module 
Formats 
******* 
* 
* 
*  * 
133 
* 
* 
*  * 
* 
* 
******* 
************* 
*  *  * 
* 
* 
* 
134 
*-127 
* 
to 
*+127 
* 
* 
* 
*  *  * 
************* 
******************* 
*  *  * 
* 
* 
-32K 
to 
+32K 
*  * 
135 
* 
*  * 
* 
******************* 
* 
* 
* 
* 
Version 
4.0 
The 
reoresents 
represents 
represents 
The 
second 
a 
Numeric 
The 
a 
String 
string, 
The 
an 
Index 
Index, 
representation. 
Leaf. 
third 
Leaf. 
in 
fourth 
Leaf. 
which 
**************************.*** 
136 
* 
* 
* 
4-byte 
integer 
signed 
* 
* 
* 
*  * 
*  * 
****************************** 
sinqle 
a 
Numeric 
a 
a 
Numeric 
OMF's 
byte, 
Leaf 
Null 
form, 
form, 
The 
form, 
The 
is 
Leaf. 
Leaf 
The 
number 
field 
standard 
field 
a  number 
Recursively 
containinq 
or 
with 
with 
with 
with 
a 
is 
a 
followinq 
representation. 
a 
fo1lowinq 
a 
Null 
If 
the 
the 
leadinq 
contained 
leadinq 
leadinq 
between 
defined 
Leaf. 
indicated 
byte 
byte 
the 
byte 
the 
types 
a 
value 
value 
in 
leadinq 
leadinq 
0 
and 
* 
* 
* 
* 
* 
between 
If 
the 
is 
less 
inteqer 
containinq 
the 
followinq 
containinq 
byte 
containino 
byte 
32K~., 
are 
allowed. 
value 
number. 
129, 
130, 
represents 
131, 
represents 
in 
OMF's 
0 
is 
than 
represents 
2 
represents 
represents 
anti 
128. 
bytes. 
standard 
128 
j t 
128, 
the 
an 
it 
a 
Numeric 
42 
The 
fifth 
Leaf. 
form, 
with 
The number 
a 
leading 
is 
byte 
contained 
containinq 
in 
the 
fo11owinq 
132, 
represents 
3 
bytes. 
Page 43

8086 
Object 
Module 
Formats 
Version 
4.8 
'fhe 
Repeat 
last 
leaf 
considered 
considered 
leaves. 
The 
represents 
followinq 
The 
a 
Signed 
bytes, 
'rhe 
a 
Signed 
bytes, 
siqned 
sixth 
Leaf 
seventh 
byte, 
eighth 
Numeric 
signed 
ninth 
Numeric 
can 
of 
to 
to 
a 
Siqned 
extended 
fo 
extended 
form, 
only 
a 
branch 
repeat 
end 
form, 
which 
form, 
Leaf. 
rm, 
Leaf. 
~ 
occur 
indefinitely. 
in 
an 
with 
Numeric 
will 
with 
The 
if 
neccessary. 
wi 
th 
a 
The 
if 
necessary. 
sinqle 
as 
the 
is 
a 
indefinitely 
be 
siqned 
a 
leading 
number 
lead 
number 
byte 
last 
Repeat 
a 
leading 
Leaf. 
in~ 
of 
leaf 
Leaf 
Otherwise 
The 
extended 
byte 
is 
contained 
byte 
is 
contained 
133, 
of 
then 
lonq 
byte 
number 
if 
containing 
conta 
in 
is 
a 
a 
Branch. 
the 
previous 
the 
sequence 
containing 
is 
contained 
neccessary. 
in 
inq 
13;, 
in 
the 
Repeat 
'Branch 
of 
135. 
the 
following 
following 
Leaf. 
If 
leaf 
easy 
Null 
134, 
in 
represents 
represents 
A 
the 
is 
is 
the 
2 
4 
43 
Page 44

8086 
Object 
Module 
Formats 
Version 
4." 
PUBLIC 
-------(PUBDEF)-----
NAMES 
DEFINITION 
RECORD 
***********************///*********///*********************///*********** 
*  *  *  *  *  *  *  * 
REC 
* 
* 
* 
TYP * 
90H 
* 
RECORD 
LENG'rH 
*  *  *  *  *  *  * 
*  PUBLIC  * 
*  BASE  * 
P~BLIC 
NAME 
*  PUBLIC  *  TYPE  * 
* 
OFFSET 
* 
INDEX 
* SU,4 * 
CHK 
* 
*  *  *  *  *  *  *  * 
***********************///*********///*********************///*********** 
I  , 
+-------------repeated--------------+ 
each 
the 
by 
This 
one, 
offset 
the 
PUSLIC 
The 
3 
name. 
PUBLIC 
record 
datums 
value 
BASE 
provides 
are 
of 
BASE 
provided: 
the 
has 
name, 
the 
a 
list 
(1) 
and 
followinq 
(3) 
of 
1 
or 
a 
base 
the 
format: 
more 
type 
value 
of 
PUBLIC 
for 
entity 
NAME's; 
the 
na~e, 
represented 
for 
(2) 
*****///*********///***************** 
*  *  *  * 
* 
* 
* 
* 
GROUP 
INDEX 
* 
SEGMENT 
*  INDEX  * 
* 
* 
* 
FRAME 
NUMBER 
* 
* 
* 
*  *  * 
*****///*********///***************** 
,  I 
+conditional+ 
The 
a 
number 
"associates· 
described 
there 
provides 
location 
non-neqative 
first 
absent. 
means 
is 
value 
is 
The 
A 
byte 
A 
that 
taken 
in 
non-zero 
SEGMENT 
44 
GROUP 
between 
a 
on 
paqe 
no 
associated 
SEGMENT 
a 
number 
of 
each 
displacement 
of 
the 
the 
location 
~s 
a 
displacement 
the 
FRAME 
INDEX 
0 
qroup 
16, 
INDEX 
between 
SEGMEN~ 
public 
selected 
INDEX 
NU~8ER 
field 
and 
with 
case 
qroup. 
has 
32767 
(F2c). 
field 
0 
and 
INDEX 
symbol 
(qiven 
LSEG, 
of 
0 
of 
each 
from 
field. 
a 
the 
defined 
(leaal 
format 
inclusive. 
public 
A 
zero 
has 
327~7 
public 
the 
a 
selects 
by 
a PUBLIC OFFSET 
and 
the 
base 
qiven 
sym~ol, 
GROUP 
format 
inclusive. 
an 
in 
the 
FRAME 
only 
if 
symbol 
of 
earlier, 
A 
LSEG, 
record 
NU~BER 
GROUP 
defined 
the 
non-zero 
and 
INDEX 
qiven 
in 
is 
field) 
INDEX 
FRAM~ 
and 
GROUP 
is 
indicates 
earlier, 
which 
taken 
field 
is 
in 
the 
rlefined 
provides 
INDEX 
used 
that 
and 
case 
from 
must 
as 
also 
record 
by 
the 
the 
the 
as 
a 
be 
~) 
Page 45

8086 
Object 
Module 
Formats 
Version 
4.0 
(Informal 
both 
is 
public 
the 
A 
taken 
non-zero 
symbols 
LOCATE-86 
fixup 
(where 
be 
of 
.pM 
converted 
where M SI 
and 
PUBLIC OFFSET 
the 
frame 
old 
fixup, 
public 
OFFSET, 
to 
the 
bit 
public 
symbol, 
and 
a 
{base,offset} 
base 
offset 
symbol's 
Discussion) 
SEGMENT 
as 
the 
will 
the 
is 
perform 
form: 
a 
by 
(L)" 
and 
specifier 
viz.: 
as 
(optionally) 
of 
the 
cannot 
INDEX 
GROUP 
-frame 
defined 
public 
LINK-86 
TARGET: 
FRAME: 
"d" 
fields. 
in 
FRAME: 
defined 
pair, 
indicated 
then 
value, 
The 
and 
GROUP 
INDEX 
of 
reference-
in 
the 
TARGET: 
FRAME: 
symbol 
to 
a 
are 
provided 
(The 
the 
new 
TARGET.) 
by 
FRAME 
the 
group. 
complete 
an 
error 
FRAME 
INDEX 
selects 
this 
record, 
following 
El 
(P) 
TARGET 
in 
this 
fixup 
SI(L),d 
GI 
(G) 
Mnormalft 
fixup 
the 
NUMBER 
base 
part 
the 
will 
NUMBER 
are 
some 
qroup1 
for 
e.q., 
actions: 
PUBDEF 
of 
the 
by 
the 
action 
be 
the 
(2) 
When 
SEGMENT 
fields, 
will 
(If 
a 
definition 
occur.) 
is 
present 
zero. 
this 
references 
LINK-86 
(1) 
record) 
form: 
SEGMENT 
would 
same 
the 
as 
value 
INDEX.  PUBLIC 
is 
converted 
be 
taken 
non-neqative 
of 
iff 
group 
to 
all 
and 
Any 
will 
I,NDEX 
have 
in 
the 
of 
16-
the 
a 
as 
not 
the 
the 
of 
SEG~ENT 
puaLIC 
The 
location 
must 
contain 
PUBLIC OFFSET 
The 
offset 
INDEX 
specified 
A 
GROUP 
alter 
the 
symbol, 
absolute 
the 
segment 
INDEX 
NAME 
PUBLIC 
in 
MAS 
1 
or 
(Note) 
in 
names 
throuqh 
be 
to 
listing 
7EH" 
used, 
However, 
character 
PUBLIC OFFSET 
of 
the 
Public 
> 
0), 
or 
FRA~E 
INDEX 
FRAME 
and 
value 
field. 
NAME 
is 
more 
R&L's 
is 
that 
(tilde) 
but 
devices, 
set 
the 
(if 
of 
specification 
LOCATE-86 
of 
(either 
field 
to 
be 
made 
characters. 
only 
they 
may 
produce 
translators 
more 
strictly. 
field 
Symbol 
offset 
SEGMENT 
zero 
selects 
will 
the 
public 
LSEG 
(End 
of 
qives 
available 
cdnstraint 
lie 
within 
inclusive. 
etc. 
may 
is 
a 
with 
of 
respect 
the 
INDEX 
take, 
symbol, 
or 
Informal 
the 
Other 
awkward 
proscribe 
(End 
l~-bit 
Public 
= 
~). 
no 
qroup. 
of 
PSEG) 
name 
to 
upon 
the 
results 
of 
value, 
to 
Symbol 
LINK-S6 
fixups 
as 
the 
base 
the 
canonic 
determined 
Discussion) 
of 
the 
other 
range 
the 
modules. 
characters 
20H 
characters 
when 
the 
admissible 
Note) 
which 
an 
LSEG 
with 
will 
referencing 
part 
frame 
by 
object 
(space) 
may 
output 
is 
either 
(if 
respect 
of 
the 
whose 
The 
name 
the 
SEG~EN'r 
to 
the 
as 
Page 46

808~ 
Object 
Module 
Formats 
Version 
4.0 
TYPE 
The 
Definition) 
represented 
INDEX 
TYPE 
by 
INDEX 
Record 
the 
field 
containinq 
Public 
identifies 
Symbol. 
a 
a 
descriptor 
sinqle 
precedinq 
for 
the 
TYPDEF 
typ~ 
of 
(Type 
entity 
Page 47

898n 
Object 
Module 
Formats 
version 
4.0 
such 
each 
(if 
such 
of 
the 
of 
an 
request 
same 
or 
not 
Record 
EXT~RNAL 
... 
!AMES 
DEFINITION 
(EXTDEF) 
RECORD 
***********************///*********///*********** 
*  *  *  *  *  * 
* 
REC 
* 
* 
* 
RECORD 
TYP 
* 
LENGTH 
8CH 
*  *  *  *  * 
* 
EXTERNAL 
* 
NAME 
*  TYPE  * 
* 
INDEX 
*  *  *  *  *  * 
***********************///*********///*********** 
This 
name, 
External 
EXTERNAL. 
This 
external 
Inclusion 
name 
a 
same 
that 
declared 
the 
in 
Record 
the 
name 
type. 
.. 
_._ 
.. 
_--
field 
External 
the 
provides 
type 
Name 
is 
found). 
NAME 
provides 
object. 
of 
a Name 
the 
as 
module. 
of 
object 
the 
object 
a 
Name 
,  , 
+-------repeated--------+ 
a 
value 
orovided 
the 
in 
file 
Public 
is 
it 
name, 
an 
External 
Symbol. 
actually 
list 
provided 
be 
of 
external 
represents. 
that 
which 
Names 
linked 
This 
referenced 
by 
the 
must 
to 
an 
two 
a 
request 
names, 
LINK-S6 
identical 
names 
have 
Record 
module 
C~K 
* SUM * 
will 
name 
non-zero 
is 
containinq 
obtains 
within 
* 
an~ 
Public 
an 
some 
for 
assign 
objects 
lenqth, 
implicit 
whether 
FIXUPP 
each 
to 
~ame 
the 
The 
the 
orderinq 
orderinq 
Thus, 
These 
and/or 
particular 
given 
an 
any 
numbers 
earlfer. 
External 
external 
record 
orderinq 
on 
the 
External 
FRAME 
External 
positively: 
gxternal 
zero: 
808~ 
use 
3 
of 
Caution) 
definition 
referring 
of 
of 
External 
set 
Names 
are 
used 
DATUM 
(Caution) 
Names, 
",1,2, 
Indices 
as 
a 
default 
indices 
EXTDEF 
of 
all 
are 
considered 
as 
fields 
Name. 
808~ 
1,2,3,... 
which 
••. 
The 
(Seqment 
may 
record 
to 
that 
Records 
Names 
External 
II 
External 
of 
The 
reason 
value 
not 
object 
within 
FIXUPP 
format 
External 
This 
were 
Index, 
with 
be 
forward 
definina 
within 
each 
Names 
to 
be 
Indices" 
Records, 
of 
an 
Names 
is 
a 
numbered 
is 
to 
Type 
special 
referrinq. 
the 
with 
index 
a 
module, 
EXTDEF 
requested 
numbered: 
in 
in 
External 
are 
chanqe 
startinq 
conform 
Index, 
meaninq. 
kith 
object 
k. 
Record, 
by 
the 
order 
from 
with 
etc.) 
tOQether 
induces 
the 
1,2,3,4, 
TARGET 
to 
refer 
Index 
numbered 
That 
has 
S080 
from 
other 
which 
(End 
is 
must 
with 
module. 
••• 
DATUM 
to 
been 
to 
say, 
precede 
an 
a 
47 
Page 48

8086 
Object 
Module 
Formats 
Version 
4.0 
T~il·E. 
This 
Definition) 
named 
by 
INDEX 
field 
the 
identifies 
Record 
External 
containinq 
Symbol. 
a 
sinqle 
a 
descriptor 
precedina 
for 
the 
TYPDEF 
type 
of 
(Type 
object 
48 
Page 49

8086 
Object 
Module 
Formats 
Version 
4.0 
LOCAL 
SY~BOLS. 
( 
LOCSYl~) 
RECORD 
***********************///*********///*********************///*********** 
*  *  *  *  *  *  *  * 
* 
REC 
* 
* 
* 
RECORD 
TYP 
* 
LENGTH 
928 
*  * 
* 
* 
SYMBOLS 
LOCAL 
BASE 
* 
* 
* 
LOCAL 
SYMBOL 
NAME 
* 
LOCAL 
* 
SY~BOL 
* 
* 
TYPE 
INDEX 
* 
* 
CHK 
SUM 
* 
* 
*  OFFSET  *  *  * 
*  *  *  *  *  *  *  * 
***********************///*********///*********************///*********** 
I  I 
+-------------repeated--------------+ 
This 
in 
the 
module. 
debugging 
The 
not 
used 
The 
module 
reco 
rd. 
record 
source 
The 
purpose 
proqrams. 
information 
by 
the 
symbols 
of 
name 
provides 
proqram 
R&L 
products. 
in 
the 
given 
of 
this 
provided 
record 
by 
the 
information 
input 
to 
information 
by 
the 
were 
most 
recently 
about 
the 
translator 
LOCSYM 
originally 
symbols 
is 
to 
record 
precedinq 
which 
aid 
defined 
that 
ICE 
is 
T-MODULE 
were 
produced 
and 
processed 
in 
a 
used 
the 
other 
but 
source 
HEADER 
LOCAL 
The 
LOCAL 
The 
LOCAL 
dreferent~ 
(location 
qivinq, 
(2) 
it 
values 
The 
FRA~E 
than 
~, 
in 
for 
gives 
of 
the 
referent 
NUMBER. 
then 
SYMBOLS 
BASE 
SY~BOLS 
BASE 
has 
the 
followinq 
*****///*********///***************** 
* 
* 
* 
GROUP 
INDEX 
*  * 
SEGMENT 
* 
* 
INDEX 
* 
* 
FRAME 
NUI~BER 
*  *  *  * 
*  *  *  * 
*****///*********///***************** 
I  I 
+conditional+ 
SY,\<\BOLS 
value 
MAS) 
each 
an 
indication 
symbols 
If 
the 
(location 
of 
the 
referent 
BASE 
every 
symbol 
should 
value 
SEGMENT 
provides 
in 
~AS) 
symbol 
in 
the 
to 
LOCATE-8~ 
be 
is 
qiven 
INDEX 
value 
two 
, 
with 
in 
the 
record, 
as 
decomposed 
by 
field 
is 
the 
location 
thinas: 
respect 
record 
a 
to 
into 
the 
contains 
format: 
* 
* 
* 
(1) 
to 
which 
will 
non-neqative 
how 
{base,offset} 
SEGMENT 
6f 
the 
a 
the 
be 
INDEX 
number 
it 
defined 
offset; 
final 
canonic 
qives 
the 
(20-bit) 
pairs. 
or 
by 
oreater 
a 
value 
by 
and 
the 
frame 
49 
Page 50

808~ 
of 
Object 
the 
LSEG 
NUMBER 
SEGMENT 
NU~BER: 
first 
byte 
If 
of 
the 
FRAME 
INDEX 
NU~BER 
is 
specified 
described 
warninq. 
field 
INDEX 
in 
of 
the 
LSEG 
non-zero, 
by 
with 
) 
Module 
specified 
in 
field 
this 
the 
specified 
GROUP 
specified 
(if 
SEGMENT 
the 
GROUP 
respect 
Formats 
by 
this 
contain 
case, 
INDEX 
the 
the 
case.) 
the 
is 
zero,-the 
by 
the 
INDEX 
base 
INDEX. 
to 
SEGMENT 
If 
zero, 
referent 
frame. 
SEGMENT 
field 
will 
(If 
such 
both 
then 
be 
the 
a 
base, 
INDEX. 
the 
the 
value 
base 
will 
INDEX 
contains 
the 
canonic 
value 
then 
(There 
GROUP 
next 
is 
be 
(if 
non-zero), 
zero). 
of 
a 
LOCATE-8~ 
must 
INDEX 
field 
the 
location 
the 
frame 
symbol 
Version 
be 
field 
is 
canonic 
or 
If 
the 
of 
cannot 
will 
no 
a 
the 
FRAME 
and 
FRAME 
of 
fra~e 
by 
GROUP 
GroQP 
give 
4.0 
the 
the 
the 
be 
a 
LOCAL 
This 
LOCAL 
The 
offset 
> 
0), 
specified 
TYPE 
The 
Hecord 
the 
Local 
(Note) 
have 
When 
SEGMENT 
SYMBOL 
field 
S~~BOL 
LOCAL 
of 
the 
Local 
or 
the 
FAAME 
INDEX 
TYPE 
INDEX 
containing 
Symbol. 
GROUP 
INDEX> 
NAME 
provides 
OFFSET 
SYMBOL 
OFFSET 
Symbol 
offset 
(if 
SEGP1EN'r 
field 
a 
~escriptor 
INDEX 
0. 
the 
name 
is 
with 
of 
the 
INDEX = 0). 
identifies 
is 
> 
(End 
of 
a 
respect 
Local 
for 
3, 
then 
of 
note) 
the 
symbol. 
l~-bit 
to 
Synbol 
a 
the 
ty~e 
value, 
an 
sinale 
of 
one 
which 
LSEG 
with 
entity 
must 
also 
is 
(if 
SEGMENT 
respect 
preceding 
represented 
either 
the 
INDEX 
to 
the 
TYPDEF 
by 
50 
Page 51

808~ 
Object 
Module 
Formats 
Version 
4.0 
LINE 
NUMBERS 
(LINNUM) 
RECORD 
***********************///*********************************** 
*  *  *  *  *  *  * 
REC 
* 
* 
* TYP * 
RECORD 
LENGTH 
*  LINE  *  LINE  * 
* 
NUMBER 
* 
NUMBER 
* 
LINE 
NUMBER 
* CHK * 
* 
SUM 
* 94H *  *  BASE  *  *  OFFSET  *  * 
*  *  *  *  *  *  * 
***********************///*********************************** 
I  I 
+--------repeated-------+ 
This 
to 
a 
source 
Since 
numberinq, 
identification 
and 
identification 
also 
LINE 
record 
debugger 
code 
and 
several 
the 
NU!\1BER 
may 
of 
is 
provides 
proqram, 
the 
correspondinq 
independent 
be 
a 
source 
name 
provided 
SASE 
linked 
of 
the 
means 
the 
correspondence 
source 
text 
the 
original 
by 
the 
translated 
to 
line 
previous 
by 
modules, 
form 
must 
containinq 
which 
a 
include 
a 
translator 
between 
code. 
with 
sinqle 
module. 
T-MODULE 
a 
line 
independent 
module, 
both 
HEADER 
may 
number 
its 
The 
Record. 
* 
pass 
line 
a 
full 
number, 
latter 
in 
The 
The 
the 
LOCAL 
INDEX 
location 
number. 
logical 
field, 
describing 
shows 
the 
code 
and 
thus 
the 
assumption 
location 
LINE 
NUMBER 
*****///*********///***************** 
*  *  *  * 
* 
* 
* 
*  *  *  * 
*****///*********///***************** 
LINE 
SY~BOL 
and 
of 
This 
(SEGMENT INDEX 
if 
the 
segment 
references 
of 
NU~BER 
(if 
the 
location 
non-zero, 
the 
final, 
use 
that 
the 
base 
BASE 
present) 
first 
of 
it 
BASE 
GROUP 
INDEX 
BA~~ 
described 
byte 
is 
informs 
20-bit 
a 
non-zero 
is 
compiling 
to 
pieces 
the 
of 
has 
the 
SEGMENT 
* 
INDEX  * 
* 
* 
has 
the 
the 
of 
code 
may 
non-zero). 
appropriate 
the 
be 
location 
Group 
of 
group. 
following 
* 
* 
I  , 
+conditional+ 
same 
for 
FRAME 
correspondinq 
physical 
LOCATE-8h 
is 
the 
format 
the 
LOCSYM 
NUMBER 
The 
of 
Index: 
~ut 
one 
code 
seqment 
At 
debuq 
format: 
FRAME 
NUMBER 
(SEGMENT INDEX 
value 
what 
the 
code 
A 
LSEG 
seqment 
register 
time, 
* 
* 
* 
and 
interpretation 
record. 
fields 
to 
some 
of 
the 
base-part 
line. 
translator 
of 
many 
are 
the 
The 
determine 
source 
GROUP 
to 
An 
knows 
in 
fixed 
contains 
user 
SEGMENT 
the 
line 
is 
0) 
INDEX 
use 
for 
example 
that 
a 
Group, 
up 
under 
the 
may 
tell 
as 
or 
51 
Page 52

8986 
Ob·ject 
Module 
Formats 
Version 
4.0 
ICE-86 
to 
respond 
long 
jump 
register 
translating 
LINE 
------
A 
line 
binary 
and 
the 
INDEX> 
specified 
by 
must 
LINE 
,-------_._-
The 
offset 
-GO 
by 
executinq 
will 
be 
the 
NUMBER 
number 
this 
be 
zero. 
NUMBER 
LINE 
8), 
or 
FRAME 
TO 
LINE 
set 
set 
code. 
field. 
OFFSET 
NUMBER 
of 
the 
the 
(if 
NUMBER 
a 
lonq 
the 
CS 
in 
accordance 
This 
between 
The 
OFFSET 
line 
offset 
SEGMEN'r 
22 
OF 
jump 
register; 
is 
the 
Band 
high 
32767, 
order 
field 
number 
of 
the 
with 
line 
INDEX = 0). 
MODULE 
to 
the 
it 
with 
purpose 
bit 
is 
a 
respect 
number 
MODNAME
appropriate 
is 
important 
the 
of 
inclusive, 
is 
reserved 
l6-bit 
M
• 
location. 
assumptions 
the 
GROUP 
is 
for 
value, 
to 
with 
an 
which 
LSEG 
respect 
ICE-8~ 
that 
made 
INDEX 
provided 
future 
is 
(if 
may 
This 
the 
SEGMENT 
to 
CS 
while 
field. 
in 
use 
either 
the 
52 
Page 53

8086 
Object 
Module 
Formats 
Version 
4.0 
BLOCK 
DEFINITION 
RECORD 
--------(SLKDEF'-------
**********************///**********///*********///*********///*********** 
*  *  *  *  *  *  * 
"REC 
**********************///**********///*********///*********///*********** 
* 
RECORD 
TYP 
* 
LENGTH 
7AH 
*  *  *  *  *  *  * 
*  *  *  *  *  *  * 
* 
* 
BLOCK 
BASE 
* 
BLOCK 
*INFORMATION*INFOR~ATION* 
* 
PROCEDURE 
* 
TYPE 
INDEX 
,  I 
+conditional+ 
This 
in 
the 
module. 
for 
information 
not 
module 
every 
The 
used 
The 
record 
source 
A 
BLKDEF 
block 
is 
information 
by 
the 
blocK 
of 
name 
provides 
program 
record 
to 
aid 
R&L 
in 
given 
that 
ICE 
provided 
products. 
the 
by 
the 
information 
input 
will 
contains 
and 
record 
most 
he 
other 
by 
to 
the 
qenerated 
variables. 
debuQginq 
the 
BLKDEF 
was 
recently 
about 
translator 
oriqinally 
blocks 
for 
record 
precedina 
that 
which 
every 
The 
proqrams. 
is 
defined 
THEADR 
procedure 
purpose 
processed 
* 
* 
were 
produced 
in 
record. 
defined 
of 
a 
CHK 
SUM 
the 
and 
this 
but 
source 
* 
* 
BLOCK 
implicitly 
BLOCK 
The 
The 
LOCAL 
SYMBOL 
INDEX 
by 
BASE 
BLOCK 
BLOCK 
BASE 
values, 
the 
sequence 
eASE 
*****///*********///***************** 
*  * 
* 
* 
* 
* 
*****///*********///***************** 
has 
GROUP 
INDEX 
eASE 
described 
the 
has 
used 
of 
followinq 
* 
* 
* 
* 
the 
for 
in 
the 
BLKDEF 
SEGMENT 
INDEX 
same 
the 
format 
LOCSY~ 
DEBSYi~ 
records 
format: 
*  * 
FRAME 
* 
NUMBER 
* 
* 
* 
,  , 
+conditional+ 
and 
record. 
record, 
in 
the 
T-MODULE. 
* 
* 
* 
* 
interpretation 
are 
defined 
as 
the 
53 
Page 54

808~ 
Object 
Module 
Formats 
Version 
4.0 
SLOCK 
The 
NAME 
This 
describes 
no 
label 
BLOCK 
-
... 
The 
1st 
by 
byte 
the 
INFOR~ATIO~ 
BLOCK 
INFORMATION 
*****///***************************** 
*  *  *  * 
* 
NAME 
* 
* 
*  * 
*****///***************************** 
field 
an 
in 
-._---.....------
OFFSET 
BLOCK 
of 
BLOCK 
contains 
unnamed 
PL/M) 
OFFSET 
the 
BASE. 
the 
block 
block 
BLOCK 
* 
OFFSET 
* 
*  * 
the 
name 
block 
NAME 
is 
in 
will 
a 
l~-bit 
with 
respect 
the 
has 
be 
the 
* 
* 
* 
of 
source 
of 
value 
to 
followinq 
BLOCK 
LENG'rH 
the 
code 
lenqth 
which 
the 
block. 
(e.q. 
0. 
is 
referent 
format: 
* 
* 
* 
* 
the 
If 
a 
DO 
offset 
value 
the 
block 
of 
specified 
record 
with 
the 
BLOCK 
This 
LENGTH 
field 
qives 
the 
lenqth 
of 
the 
hlock 
in 
bytes. 
54 
Page 55

8086 
Object 
I~dule 
Formats 
Version 
4.0 
PROCEDURE 
The 
The 
was 
OFFSET 
value 
If 
generated 
The 
P=0 
INFORMATION 
PROCEDURE 
INFOR~ATION 
block 
has 
the 
followinq 
************************************************** 
* , I I I I I I * 
* I I I I I I I * 
*PILI010101010IB* 
* , I I , , I I * 
, I I I , I I * 
* 
************************************************** 
+----------conditional-----------+ 
P 
is 
(CS 
the 
(Procedure) 
present 
L 
(LONG) 
and 
L=0 
L=l 
L 
IP) 
-> 
-> 
bit 
from 
only 
bit 
or 
2-byte 
4-byte 
has 
bit, 
a 
procedure 
if 
tells 
a 
2-byte 
return 
return 
no 
meaning 
if 
P=l. 
whether 
1, 
value 
address 
address 
and 
RETURN 
ADDRESS 
OFFSET 
indicates 
in 
the 
the 
(IP 
is 
required 
source. 
return 
only) 
that 
• 
the 
The 
address 
to 
be 
BLKDEF 
RETURN 
O. 
format: 
* 
* 
* 
* 
* 
is 
a 
record 
ADDRESS 
4-byte 
The 
(from 
activation 
TYPE 
The 
record 
name. 
RETURN 
BP) 
This 
of 
record 
INDEX 
TYPE 
containinq 
field 
should 
Note) 
ADDRESS 
the 
on 
INDEX 
is 
(Note) 
not 
OFFSET, a 
procedure's 
the 
stack. 
field 
the 
type 
present 
Symbols 
be 
repeated 
l~-bit 
return 
identifies 
descriptor 
only 
if 
defined 
in 
value, 
address 
a 
for 
the 
NAME 
in 
DEBSY~ 
is 
sinqle 
the 
is 
BLKDEF 
records. 
the 
in 
the 
precedinq 
procedure 
non-zero. 
reco 
(End 
hyte 
procedure's 
rd 
offset 
TYPDEF 
or 
s 
of 
block 
55 
Page 56

8986 
Object 
Module 
Formats 
Version 
4." 
This 
information 
Each 
of 
order 
the 
BLKOEF 
BLKDEF. 
of 
record, 
about 
reco 
debuq 
declaration 
(Note) 
scope 
need 
source 
(e.q. 
not 
BLOCK 
ENn 
RECORD 
(BLKEND) 
************************* 
*  *  *  * 
* 
REC 
* 
* 
* 
RECORD 
TYP 
* 
LENGTH 
7CH 
*  *  * 
* 
* 
CHK 
SUM 
*  *  *  * 
************************* 
toqether 
the 
scope 
rd 
must 
symbol 
in 
For 
translators 
reflect 
module. 
be 
the 
AS~86) 
(End 
with 
of 
variables 
followed 
records. 
source 
the 
the 
order 
of 
the 
by 
and 
module. 
whose 
orderina 
of 
Note) 
* 
* 
BLKDEF 
in. 
a 
8LKE~D 
BLKENDs 
variables 
of 
declaration 
the 
should 
the 
record, 
source 
record. 
don't 
records 
reflect 
have 
in 
The 
the 
provides 
program. 
order 
the 
5~ 
Page 57

808#; 
O,?ject 
Module 
Formats 
Version 
4.(') 
DEBUG. 
--.---- - -{OEBSYM) 
~*********************///*********///*********************///*********** 
SYMBOLS. 
RECORD 
*  *  *  *  *  *  * 
REC 
* 
RECORD 
TYP * 
7 EH *  *  *  *  *  *  * 
LENGTH 
* 
FRAME 
*INFORMATION* 
* 
SYMBOL 
NAME 
*  *  TYPE  * CaK * 
* OFFSET  *  INDEX  * 
SUM 
* 
*  *  *  *  *  *  * 
~*********************///*********///*********************///*********** 
I  I 
+-------------repeated--------------+ 
This 
includinq 
is 
to 
aid 
The 
R& 
L 
prod 
The 
module 
record. 
The 
block 
been 
qlobal 
preceding 
of 
closed 
record 
stack 
ICE 
and 
information 
ucts. 
symbols 
of 
name 
scope 
the 
most 
by 
to 
the 
THEADR. 
provides 
and 
based 
other 
in 
the 
qiven 
of 
the 
recently 
a 
BLKE~D. 
source 
debuqqinq 
in 
this 
~ecord 
by 
the 
symbols 
module 
information 
symbols. 
record 
were 
most 
in 
precedinq 
If 
no 
The 
programs. 
is 
oriqinally 
recently 
the 
such 
of 
purpose 
processed 
record 
BLKDEF 
BLKDEF 
name 
qiven 
about 
defined 
precedinq 
is 
whose 
exists 
all 
of 
this 
but 
defined 
extent 
the 
by 
the 
local 
not 
in 
T-~ODULE 
symbols 
most 
symbols 
information 
used 
a 
to 
be 
has 
not 
recently 
by 
the 
source 
HEADER 
the 
yet 
are 
defined 
FRAME. 
This 
in 
The 
FRAME 
INFOR~ATION 
field 
the 
gives 
record. 
INFO 
********************************* 
*  ,  I  I  I  I  
* B I L I 
*  I  I  I  I  , 
********************************* 
information 
It's 
format 
about 
is 
***********///***** 
*  *  * 
*FRAME* 
*INfO 
* 
DATUM 
*  * 
*  *  * 
***********///***** 
byte 
has 
(l 
the 
I " I 
followin~ 
~ 
I 
the 
as 
frame 
follows: 
* 
* 
* 
format: 
I  ,  * 
FRA~E 
r-1ETHOD 
* 
* 
of 
the 
symbols 
57 
Page 58

808~ 
by 
the 
the 
OFFSET 
bit 
Object 
The 
the 
address 
The 
If 
frame 
If 
has 
Module 
B 
(Based) 
FRAME 
of 
L 
(Long) 
L=0 
L=l 
L=0 
q i 
ven 
8=0, 
fields 
no 
meaning 
Formats 
bit, 
INFORMATION 
a 
symbol. 
bit 
-) 
2 
bytes 
-) 
4 
bytes 
the 
frame 
by 
the 
the 
is 
location 
the 
and 
if 
and 
tells 
part 
FRAME 
location 
is 
reQuired 
1, 
means 
OFFSET 
the 
lenqth 
of 
the 
symbol 
IN FORI"ATION 
defined 
of 
the 
that 
fields 
to 
the 
of 
this 
address 
fie 
by 
symbol. 
be 
0. 
location 
contains 
value. 
ld 
• 
the 
FRAME 
In 
in 
a 
value 
is 
defined 
INFORMATION 
this 
Version 
MAS 
case 
defined 
that 
to 
the 
4.0 
is 
be 
and 
L 
The 
DATUI~ 
The 
identical 
LOCSYM 
field. 
If 
interpretation 
If 
FRAME 
FRAME 
to 
reco 
FRAME 
METHOD 
~ETHOD=0, 
field 
the 
defines 
DATUM 
has 
the 
what 
format: 
*****///*********///***************** 
*  *  *  * 
* 
GROUP 
*  INDEX  *  INDEX  * 
* 
SEGMENT 
* 
FRAME 
NUMBER 
*  *  *  * 
*  *  *  * 
*****///*********///***************** 
I  I 
+conditional+ 
of 
the 
rd. 
METHOD=l, 
the 
interpretation 
the 
*****///***** 
*  * 
* 
* 
*  * 
*  * 
*****///***** 
DATUM 
of 
DATUM 
EXTERNAL 
has 
INDEX 
the 
fields 
LOCAL. 
the 
* 
* 
format: 
kind 
in 
the 
SYMBOLS 
of 
* 
* 
data 
above 
BASE 
is 
in 
format 
in 
the 
is 
the 
58 
Page 59

8~86 
Object 
If 
FRAME 
Module 
~ETHOD=2, 
Formats 
the 
DATUM 
has 
*****///***** 
*  * 
BLOCK 
* 
* 
INDEX 
* 
* 
*****///***** 
* 
* 
* 
* 
the 
format: 
Version 
4.0 
FRAME 
is 
METHODs 
The 
in 
the 
FRA~E 
OFFSET 
SYMBOL 
This 
field 
OFFSET 
The OFFSET 
as 
follows: 
If 
FRAME 
to 
the 
FRAME 
INFORMATION 
If 
FRAME 
external 
symbol 
field. 
rf 
FRAME 
in 
the 
activation 
FHAME 
INFOR~ATION 
of 
~ETHOD 
NAME 
provides 
field 
~ETHOD 
NUMBER 
field. 
~ETHOD=1 
specified 
METHOD=2 
3 
to 7 are 
field 
is 
or 
record 
field. 
field 
(see 
the 
contains 
0 
then 
SEGMENT 
then 
by 
then 
of 
illegal. 
also 
below). 
name 
a 
l~-bit 
this 
specified 
this 
the 
this 
the 
block 
specifies 
of 
the 
field 
field 
DATU~ 
field 
specified 
what 
symbol. 
value 
is 
by 
the 
is 
the 
of 
is 
the 
which 
the 
the 
byte 
by 
kind 
is 
offset 
DATUM 
byte 
offset 
FRAME 
offset 
the 
of 
information 
interpreted 
with 
of 
respect 
the 
from 
INFORMATION 
(from 
DATU~ 
of 
FRAME 
the 
BP) 
the 
record 
the 
symbol. 
TYPE 
The 
INDEX 
TYPE 
containinq 
INFO 
. 
record. 
INDEX 
a 
(Note 
field 
field 
descriptor 
on 
LOCSYMs) A DEB$'il" 
is 
0 
(End 
of 
is 
Note 
identifies 
for 
exactly 
on 
a 
the 
type 
recor'i 
equivalent 
LOCSY,t1s) 
sinqle 
of 
entity 
"Nhose 
to 
precedinq 
represented 
FRA~E 
a 
LOCSYM 
TYPDEF 
by 
59 
Page 60

8086 
Obiect 
Module 
Formats 
Version 
4.0 
RELOCATABLE 
--------
ENUMERATED 
---
--("~ 
E:DATA)--------------
DATA 
RECORD 
***********************///***************************** 
*  *  *  *  *  *  * 
* 
REC 
* 
RECORD 
* 
TY 
P *  LENG'fH  * 
* 
72H 
*  * 
* 
DATA 
RECORD 
BASE 
* 
* 
DATA 
RECORD 
* 
OAT * CHK 
*  * 
*  OFFSE:T  *  *  * 
*  *  *  *  *  *  * 
***********************///***************************** 
I  I 
+-rpt-+ 
This 
808~ 
loaded 
For 
(LTL) 
Group 
divorced 
is 
memory 
this 
The 
subject 
or 
record 
imaqe 
directly 
reason 
Enumerated 
data 
it 
may 
from 
to 
provides 
may 
eventually 
by 
an 
the 
record 
Data 
provided 
be 
all 
modification 
Record. 
assiqned 
LSEG/Group 
contiquous 
8086 
may 
in 
absolute 
by 
loader, 
also 
this 
information. 
FIXUPP 
data 
be 
constructed. 
be 
record 
3095 
reco-rds. 
with 
called 
from 
perhaps 
~ay 
memory 
The 
if 
which 
The 
Load-Time 
belonq 
addresses 
data 
any. 
a 
some 
which 
SUr-1 
portion 
data 
base 
to 
any 
in 
this 
* 
* 
of 
may 
fixups. 
Locatable 
LSEG 
and 
record 
follow. 
an 
be 
or 
be 
This 
LINK-8fi 
record 
DATA 
rfhe 
The 
final 
format 
LOCSYi-1 
DATA 
record 
to 
produce 
by 
the 
RECORD 
DA'fA 
DATA 
address 
and 
interpretation 
ceco 
rd. 
RECORD 
may 
be 
loadable 
LOCATE-8n 
BASE 
RECORD 
BASE 
qenerated 
modules. 
proqram. 
has 
the 
by 
translators 
and 
followinq 
will 
be 
format: 
*****///*********///***************** 
* 
* 
* 
* 
GROUP 
INDEX 
* 
SEGI."EN'r 
* 
* 
* 
INDEX 
*  * 
FRAME 
* 
NUMBER 
* 
* 
*  *  * 
*****///*********///***************** 
I  I 
+conditional+ 
RECORD 
of 
BASE 
the 
OFFSET 
specifies 
data 
as 
record 
the 
the 
may 
LOCAL 
base 
be 
defined. 
SYMBOL 
relative 
BASE 
or 
converted 
* 
* 
* 
* 
to 
It 
described 
(808~ 
to 
which 
has 
the 
based) 
PEDATA 
same 
for 
the 
the 
field 
This 
either 
field 
with 
specifies 
respect 
to 
an 
an 
offset 
LSEG 
of 
(if 
the 
first 
SEG~ENT 
byte 
INDEX 
) 
of 
~) 
or 
the 
OAT 
with 
Page 61

808fi 
Object 
Module 
Formats 
Version 
4.8 
respect 
data 
bytes 
memory. 
DAT 
If 
up 
to 
data. 
RECORD 
to 
the 
in 
one 
1024 
consecutive 
Otherwise, 
LENGTH 
data 
data 
the 
or 
field. 
(Note 
record 
record. 
specifi~d 
OAT 
field 
more 
FIXUPP 
the 
on 
data 
must 
This 
bytes 
repeated 
record 
be 
is 
FRA~E 
occupy 
records 
of 
within 
true 
(if 
SEGM.ENT 
successively 
follow 
load-time 
field 
size) 
for 
the 
All 
frame 
all 
INDEX 
then 
locatable 
is 
constrained 
qata 
specified 
~ 
data 
(REDATA,  RIDATA,  PEDATA,  PIDATA,  LEOATA, 
(End 
of 
Note 
on 
data 
record 
size). 
= 
higher 
this 
bytes 
record 
0). 
Successive 
locations 
field 
or 
only 
in 
hy 
the 
types 
LICATA). 
provides 
absolute 
by 
the 
a 
of 
Page 62

808~ 
Object 
Module 
Formats 
Ve:· 
sion 
4.0 
RELOCATABLE. 
***********************111*********************//1****
*  *  *  *  *  *  * 
REC 
* 
* 
* 
* 
RECORD 
TYP 
* 
LENG'fH 
748 
*  * 
* 
DATA 
*  RECORD  *  RECORD  * 
BASE 
ITERATED.DATA~RECORD 
-
{RIDATA) 
******* 
* 
DATA 
*  OFFSET  *  BLOCK  *  * 
* ITERATED  * CHK * 
DATA 
* 
SUM 
*  *  *  *  *  *  * 
***********************111*********************1//****
,  I 
+-repeated--+ 
This 
8086 
loaded 
For 
(LTL) 
Group 
divorced 
.is 
this 
The 
subject 
record 
memory 
directly 
reason 
Iterated 
data 
or 
it 
from 
to 
provides 
imaqe 
by 
Data 
provided 
may 
all 
m~ification 
may 
eventually 
an 
8086 
the 
record 
Record. 
in 
be 
assiqned 
LSEG/Group 
contiouous 
loader, 
may 
this 
record 
absolute 
information. 
by 
FIXUPP 
be 
with 
also 
data 
may 
records, 
from 
constructed. 
perhaps 
be 
called 
belonq 
808~ 
The 
which 
some 
Load-Time 
memory 
data 
if 
any, 
******* 
a 
portion 
The 
hase 
to 
any 
addresses 
in 
this 
which 
data 
* 
of 
may 
fixups. 
Locatable 
LSEG 
follo-,.,. 
or 
and 
record 
an 
be 
be 
This 
LINK-86 
record 
DATA 
The 
The 
final 
format 
LOCSYl" 
address 
DATA 
record 
to 
produce 
by 
the 
RECORD 
DATA 
DATA 
and 
interpretation 
reco 
rd 
RECORD 
may 
load 
LOCATE-8~ 
BASE 
RECORD 
be 
able 
proqra~. 
SASE 
has 
qenerated 
modules, 
the 
followin«1 
by 
and 
translators 
will 
be 
format: 
or 
converted 
*****///*********///***************** 
*  *  *  * 
* 
GROUP 
* 
INDEX 
* 
* 
*****///****~****///***************** 
RECORD 
of 
the 
data 
• 
OFFSET 
BASE 
record 
as 
* 
SEG~ENT 
* 
INDEX 
* 
* 
specifies 
the 
may 
~e 
LOCAL 
* 
FRAME 
* 
NU~8ER 
* 
* 
I  , 
+conditional+ 
the 
base 
defined. 
3Y~dOL 
relative 
BASE 
* 
* 
* 
* 
It 
has 
described 
(RA8~ 
to 
to 
which 
the 
for 
based) 
RIOATA 
the 
sa~e 
the 
This 
ITEHATED 
62 
field 
DATA 
specifies 
BLOCK 
field 
an 
offset 
either 
of 
with 
the 
respect 
first 
to 
byte 
an 
of 
the 
LSEG ( if 
Page 63

8086 
Object 
Module 
Formats 
Version 
4.8 
S~GMENT 
SEGMENT 
BLOCK 
bytes. 
portion 
must 
INDEX> 
field 
ITERATED 
This 
It 
REPEAT 
This 
of 
be 
non-zero. 
INDEX 
occupy 
repeated 
is 
COUNT 
field 
this 
0) 
or 
= 
DATA 
a 
structure 
with 
0). 
successively 
BLOCK 
field 
respect 
Successive 
hiqher 
is 
a 
structure 
that 
has 
to 
data 
the 
the 
bytes 
locations 
specifyinq 
following 
specified 
in 
of 
*****************************///***** 
*  *  *  * 
*  REPEAT  
* 
COUNT 
* 
* 
BLOCK 
COUNT 
*  * 
* 
CONTENT 
*  *  *  * 
*  *  *  * 
*****************************///***** 
specifies 
ITERATED 
the 
DATA 
number 
BLOCK 
is 
of 
to 
times 
be 
repeated. 
the 
memory. 
the 
format: 
* 
that 
FRAME 
ITERATED 
repeated 
the 
REPEAT 
CONTENT 
(if 
DATA 
data 
COUNT 
BLOCK 
This 
are 
If 
ITERATED 
the 
SLOCKs. 
the 
followed 
the 
to 
this 
CONTENT 
CON'rEN'r 
This 
value 
If 
If 
first 
field 
be 
field 
DATA 
of 
BLOCK 
by 
BLOCK 
byte 
nested 
the 
(End 
COUNT 
found 
has 
BLOCK 
portion 
field 
the 
COU~T 
the 
of 
(Note) 
ITERATED 
number 
of 
Note) 
specifies 
in 
the 
value 
is 
is 
~ay 
be 
previous 
is 
indicated 
COUNT 
another 
From 
of 
levels 
the 
number 
CONTENT 
zero 
interpreted 
interpreted 
interpreted 
BLOCK 
zero 
is 
then 
number 
non-zero 
ITERATED 
the 
outermost 
DATA 
of 
of 
portion 
then 
as 
as 
in 
COUNT 
this 
of 
data 
then 
DATA 
BLOCKS 
recursion 
ITERATED 
of 
the 
data 
that 
one 
field. 
field 
this 
BLOCK. 
level, 
is 
this 
CONTENT 
number 
of 
bytes. 
li~ited 
is 
ITERATED 
bytes. 
two 
is 
field 
the 
limited 
DAT~ 
portion 
If 
of 
ways, 
a  1 
is 
number 
to 
17, 
BLOCKS 
DATA 
of 
non-zero 
ITERATED 
dependinq 
byte 
interpreted 
of 
i.e., 
to 
17. 
that 
BLOCK. 
this 
then 
DATA 
on 
count 
as 
Page 64

808~ 
Object 
Module 
Formats 
Version 
4.9 
************************************************* 
*  *  *  *  *  *  * 
* 
* TYP * 
* 
*  *  *  *  *  *  * 
************************************************* 
This 
an 
8086 
"unnamed 
8~8~ 
information. 
if 
any, 
the 
loadable 
8t;. 
memory 
memory 
which 
RECORD 
This 
PHYSICAL 
REC 
* 
RECORD 
LENGTH 
848 
*  *  *  *  *  * 
record 
absolute 
addresses 
The 
follow. 
LENG~H 
record 
absolute 
imaqe 
data 
is 
data 
provides 
may 
segment" 
constrained 
may 
ENUMERATED 
* 
* 
NUMBER 
contiquous 
be 
constructed. 
and 
is 
subject 
If 
there 
be 
qenerated 
record 
(PEOATA) 
FRAME 
in 
that 
has 
to 
are 
to 
and 
will 
DATA 
RECORD 
* OFF *  * 
* SET * 
data, 
is 
been 
modification 
FIXUPp· 
be 
less 
by 
be 
OAT * SUM 
+-rpt-+ 
from 
The 
has 
divorced 
records 
than 
translators 
also 
data 
been· 
qenerated 
CHK 
which 
belonqs 
assiqned 
from 
by 
following, 
or 
equal 
* 
* 
a 
portion 
all 
FIXUPP 
to 
to 
by 
to 
absolute 
records, 
1028. 
produce 
LOCATE-
of 
the 
LSEG 
then 
a 
FRAME 
This 
bytes 
which 
Successive 
locations 
the 
desired 
up 
the 
will 
OFFSE'r 
This 
ranqe 
OAT 
If 
to 
1~24 
repeated 
NU 
field 
be 
field 
defines 
data 
of 
0 
then 
one 
consecutive 
... 
.,SER 
loaded. 
to 
an 
or 
field 
the 
memory. 
15 
specifies 
specifies 
location 
bytes 
adjustment 
more 
in 
inclusive. 
FIXUPP 
bytes 
is 
ccnstrained 
a 
an 
the 
The 
of 
Frame 
offset 
of 
the 
OAT 
value 
If 
the 
records 
of 
field 
an 
FRAME 
an 
only 
Number 
relative 
first 
of 
OFFSET 
OFFSET 
follow 
80S6 
by 
relative 
data 
occupy 
is 
value 
NUMBER 
then 
memory 
the 
to 
to 
the 
byte 
RECORD 
of 
successively 
constrained 
qreater 
should 
this 
iMaqe. 
which 
FRAM~ 
the 
OAT 
than 
be 
done. 
field 
Otherwise, 
LENGTH 
the 
data 
NUMBER 
field. 
hiaher 
to 
be 
15 
provides 
field. 
in 
is 
64 
Page 65

808fi 
Object 
Module 
Formats 
Version 
4.0 
PHYSICAL 
ITERATED 
( P 
tDA 
T 
DATA 
A,--
RECORD 
*****************************************///*********** 
*  *  *  *  *  *  * 
* 
* 
RECORD 
LENG'rH 
* REC * 
* 
TYP 
* 
86H 
*  *  *  *  *  *  * 
*****************************************///*********** 
This 
an 
8086 
of 
data 
object 
a  memory 
in 
that 
been 
divorced 
modification 
FIXUPP 
be 
less 
record 
memory 
seqments 
modules 
imaqe. 
it 
has 
records 
than 
imaqe 
when 
been 
from 
by 
followinq 
then 
1025. 
provides 
may 
and 
"there 
The 
assiqned 
the 
FRAME 
* 
NUJ\1BER 
* 
* 
be 
provides 
are 
data 
all 
FIXUPP 
ITERATED 
* 
* SET * 
*  * 
contiquous 
constructed. 
repeated 
belongs 
absolute 
LSEG 
information. 
records 
DATA 
OFF * ITERATED 
DATA 
BLOCK 
,  , 
+-repeated--+ 
data. 
a 
mechanism 
data 
to 
the 
8086 
BLOCK 
from 
It 
allows 
to 
to 
be 
~unnamed 
memory 
The 
if 
any. 
len~th 
which 
reduce 
used 
addresses 
data 
* 
CHK 
* 
SUM 
*  * 
a 
initialization 
the 
to 
absolute 
is 
If 
is 
constrained 
* 
* 
portion 
size 
initialize 
seqment
and 
subject 
there 
of 
of 
d 
has 
to 
are 
to 
This 
loadahle 
8~. 
FRAME 
This 
bytes 
will 
OFFSET 
This 
which 
DATA 
defines 
BLOCK. 
successively 
constrained 
than 
should 
15 
is 
be 
Same 
record 
absolute 
NUMBER 
field 
be 
loaded. 
field 
the 
Successive 
hiqher 
to 
desired 
done. 
as 
for 
may 
be 
data 
specifies 
specifies 
location 
locations 
be 
between 
for 
RIDATA 
generated 
record 
a 
of 
data 
OFFSET 
record. 
and 
frame 
an 
the 
bytes 
of 
~ 
then 
by 
translators 
will 
number 
offset 
first 
in 
be 
relative 
relative 
data 
the 
ITERATED 
memory.  The 
and 
15 
inclusive. 
an 
adjustment 
also 
byte 
qenerated 
to 
which 
to 
the 
in 
DATA 
ranQe 
If 
of 
to 
FRA~E 
the 
BLOCK 
of 
a 
value 
FRAME 
~roduce 
by 
LOCATE-
the 
data 
NUMBER 
IT~RATED 
occupy 
OFFSET 
laroer 
NUMBER 
a 
is 
Page 66

8086 
Object 
Module 
Formats 
Version 
4.0 
LOGICAL 
-_._. 
ENUMERATED 
·------(tEDATA)"---·-· 
DATA,RECORD 
_ 
..... _ ... 
***********************///***************************** 
*  *  *  *  *  *  * 
* 
REC 
* 
* 
* 
RECORD 
TYP 
* 
LENG'rH 
ASH 
*  *  *  OFFSET  *  *  * 
* 
SEG~ENT 
* 
INDEX 
* 
ENUMERATED* 
* 
DATA 
* 
OAT 
*  *  *  *  *  *  * 
***********************///***************************** 
This 
8086 
memory 
probably 
further 
The 
SASE 
be 
found 
INDEX. 
attribute 
relocatable. 
record 
NOT 
processed 
data 
portion 
in 
If 
is 
image 
he 
provided 
of 
the 
SEG~ENT 
the 
not 
provides 
may 
eventually 
loaded 
by 
the 
the 
address 
SEGMENT 
absolute 
contiquous 
directly 
808~ 
in 
this 
in 
DEFINITION 
INDEX 
then 
.  I  I 
R&L 
record 
the 
the 
data 
be 
constructed. 
by 
products. 
may 
case 
RECORD 
specifies 
data 
from 
an 
80R~ 
helonq 
of 
an 
specified 
a 
provided 
+-rpt-+ 
which 
loader 
to.any 
absolute 
seament 
by 
* 
CHK 
* 
SUM 
a 
portion 
The 
as 
by 
whose 
this 
* 
* 
data 
it 
must 
LSEG. 
seqment 
the 
SEGMENT 
alianment 
record 
of 
will 
will 
an 
be 
The 
is 
This 
based) 
the 
LOCATE-8~ 
S 
EGt..,Er4'r 
This 
the 
SEGMENT 
The 
as 
~umber 
to 
SEGMEN'r 
one 
be 
placed 
LSEG's 
ENUMERATED 
This 
the 
LSEG 
relative 
data 
bytes 
memory. 
offset 
SEGDEF 
OAT 
record 
LINK-86 
field 
DEFINITIO~ 
DEFINITION 
of 
the 
is 
provided 
into 
with 
absolute 
field 
that 
location 
in 
If 
is 
relative 
RECORD. 
proaram 
proaram. 
INDE:X 
must 
attributes 
LEDATA 
DATA 
specifies 
is 
specified 
the 
OAT 
the 
may 
be 
and 
be 
non-zero 
RECORDS 
RECORD 
of 
in 
the 
SEGDEF 
RECORDs 
LSEG's 
OFFSET 
of 
the 
field 
SEG~ENT 
to 
the 
Frame 
converted 
will 
be 
found 
may 
the 
seqrnent. 
record. 
so 
can 
be 
an 
offset 
by 
the 
first 
occupy 
INDEX 
specified 
Number 
to 
a 
converted 
and 
specifies 
previous 
specify 
that 
achieved. 
that 
SEGMENT 
byte 
of 
successively 
providect 
HEDATA 
to 
an 
to 
that 
In 
Absolute 
aroupinq 
is 
relative 
INDEX 
the 
DAT 
hiaher 
an 
absolute 
RECORD 
a 
PEDATA 
index 
the 
the 
data 
this 
data 
and 
field. 
in 
the 
by 
the 
RECORD 
relative 
LEDATA 
case 
must 
of 
to 
RECORD. 
is 
absolute 
a 
be 
relocatable 
the 
~ase 
defines 
Successive 
locations 
LS~G 
then 
correspondinq 
(8A8~ 
by 
to 
Frame 
able 
of 
the 
of 
the 
Page 67

808fi 
Object 
Module 
Formats 
version 
4.0 
or 
This 
absolute 
field 
data. 
provides 
up 
to 
1024 
consecutive 
bytes 
of 
relocatahle 
~7 
Page 68

8086 
Object 
Module 
Formats 
Version 
4.9 
LOGICAL 
ITERATED 
DATA 
RECORD 
---(LIDATA)----·-
***********************///*********************///*********** 
*  *  •  *  •  *  * 
* REC * 
* TYP * 
• AlH *  *  * 
*  *  * 
*****.*****************///***~***********.*****///*********** 
This 
an 
80R5 
probably 
further 
'l'he 
portion 
found 
SEGMENT 
data 
provided 
RECORD 
LENGTH 
record 
memory 
NOT 
processed 
data 
of 
the 
in 
the 
INDEX 
provides 
imaqe 
be 
loaded 
in 
address 
SEGDEF 
specifies 
by 
this 
* 
SEGMENT 
*  INDEX  * 
contiquous 
may 
eventually 
directly 
by 
the 
808~ 
this 
in 
record 
an 
record 
record 
the 
specified 
LSEG 
~ 
ITERATED· 
DATA 
OFFSET 
ITERATED * 
* 
DATA 
* 
BLOCK 
CHK 
* 
SUM 
*  * 
*  •  *  * 
I  I 
+-
r e 
by 
R~L 
case 
other 
is 
relocatable. 
data, 
be 
an 
808~ 
products. 
may 
of 
belono 
named 
hy 
than 
pe a ted 
from 
which 
constructed. 
loa~er 
to 
absolute 
the 
SEG..,EN'r INDEX. 
an 
absolute 
any 
--+ 
a 
as 
LSEG. 
data, 
portion 
The 
it 
LSEG 
• 
• 
data 
must 
The 
will 
then 
If 
of 
will 
be 
BASE 
be 
the 
the 
This 
based) 
the 
LOCATE-8~ 
SEGMENT 
This 
the 
SEGDEF 
record 
attributes 
the 
of 
SEGDEF 
relocatable 
ITERATED 
This 
the 
LSEG 
relative 
Successive 
·hiqher 
absolute 
provided 
ITERATED 
record 
LINK-8~ 
proqram. 
INDEX 
field 
records 
may 
specify 
of 
the 
record. 
DATA 
field 
that 
location 
data 
locatiorts 
LSEG 
in 
the 
DATA 
may 
program 
must 
and 
be 
found 
that 
LSEG. 
The 
LSEG's 
with 
OFFSET 
specifies 
is 
specified 
of 
the 
bytes 
of 
then 
in 
memory. 
the 
correspondinq 
~LOCK 
be 
converted 
will 
non-zero 
previous 
the 
In 
this 
LIDATA 
absolute 
an 
first 
the 
offset 
to 
a RIDATA 
be 
converted 
and 
specifies 
to 
the 
data 
case 
RECORD 
is 
a 
Fra~e 
is 
LSEG's. 
offset 
byte 
ITERATED 
If 
by 
the 
the 
is 
th~t 
SEGMENT 
in 
DATA 
SEG~ENT 
relative 
SEGOEF RECORD. 
RECORD 
to 
a PIDATA 
an 
index 
LIDATA HECORD. 
a~solute 
~umber 
reauired 
is 
relative 
INDEX 
the 
ITERATED 
BLOCK 
as 
is 
to 
to 
and 
occuPy 
INDEX 
to 
the 
by 
the 
RECORD 
relative 
The 
one 
provided 
allow 
~roupina 
the 
base 
defines 
DATA 
successively 
specified 
Fr~me 
(809~ 
by 
to 
SEGOEF 
of 
the 
in 
of 
the 
~LOCK. 
an 
Number 
Page 69

8086 
Object 
Module' 
Formats 
Version 
4.8 
Same 
as 
for 
the 
RIDATA 
record. 
-;9 
Page 70

8e8~ 
Object 
Module 
Formats 
Version 
4.8 
This 
modification 
Each 
location, 
may 
by 
subseauently 
Eight 
for 
by a THREAD, 
same 
th(;· 3ame 
(in 
fixup 
be 
specified 
reference 
A 
THREAD 
threads 
tarqet 
or 
type 
the 
same 
a 
specification. 
followinq 
FIXUP 
.  (FIXUPP)  . 
RECORD 
***********************///*********** 
*  *  *  *  * 
* 
REC 
* 
TYP 
9CH * 
* 
* 
* 
RECORD 
LENG'rH' 
* 
THREAD 
* 
or 
*  FIXUP 
*  *  *  *  * 
***********************///*********** 
I  I 
+----rpt----+ 
record 
(fixup) 
is 
mode, a target 
to 
it 
or 
specifies" 
specified 
totally 
a 
precedinq 
field 
be 
referred 
are 
provided; 
may 
(TARGET 
another 
to 
a 
LOCATION 
by a FIXUP 
within 
specifies 
be 
referred 
FIXUPP 
0 r 
FRAME) 
FIXUPP 
or 
more 
within 
field 
and a frame. 
the 
PIXUP 
THREAD 
a 
to 
four 
Once a 
records), 
field. 
default 
in 
identifyinq 
for 
tarqet 
to 
by 
and 
thread 
record). 
frame 
until 
fixups. 
a 
that 
The 
field, 
tarqet 
or 
followinq 
another 
number 
* 
CHK 
* 
* SUM * 
* 
previous 
frame 
specification 
frame 
* 
Each 
fixup 
specifies 
and 
or 
may 
or 
frame 
a 
tarqet 
has 
FIXUP 
THREAD 
(B 
DATA 
the 
be 
or 
been 
fields 
3) 
requests 
record. 
4 
data: 
tarqet 
soecifiec 
that 
a 
frame. 
and 
specified 
(in 
field 
appear! 
a 
a 
may 
four 
the 
with 
THREAD 
THREAD 
The 
structure: 
TRD 
is 
OAT 
a 
field 
with 
the 
followinq 
format: 
***********///***** 
*  *  * 
* 
TRD 
* 
* 
* 
* INDEX 
OAT 
* 
*  NUI'18ER 
* 
or 
FRAMe 
* 
* 
* 
* 
***********///***** 
,  I 
+conditional+ 
(ThReaD 
DATa) 
subfield 
is 
a 
byte 
********************************* 
*  I 
* 0 I 0 1 Z I 
'1 
I  I  I  * 
METHOD 
I THRED * 
*  1  I  ,  I  I  I  ,  * 
********************************* 
with 
this 
internal 
70 
Page 71

8080 
function, 
Object 
The 
'Z' 
that 
Module 
is 
a 
is 
Formats 
one 
bit 
required 
subfield, 
to 
contain 
currently 
0. 
without 
Version 
any 
4.0 
defined 
The 
is 
beinq 
and 
if 
0=1 
METHOD 
(0=0) 
, 
0
Thus, 
required 
will 
methods 
what 
the 
numberd to 
External 
the 
or 
or 
If 
••• 
,  7 
METHOD 
be 
If 
kind 
frame. 
THRED 
INDEX 
METHOD 
F~ 
are 
0=0. 
specified 
0=1, 
'0' 
subfield 
specified. 
then 
is 
a 
number 
then 
indicate 
indicates 
to 
specify 
then 
F0, 
••• , F6 
(if 
any) 
is 
the 
or 
FRAME 
Index, 
subfield. 
specified 
a 
frame 
a 3 
between 
~ETHOD 
in 
METHOD 
a 
frame 
or 
is 
If 
0=0 
thread 
bit 
subfield 
methods 
what 
the 
a 
primary 
of 
of 
Index 
number 
or 
tarqet 
NU~8ER 
Frame 
This 
by 
METHOD. 
one 
bit 
then 
is 
0 
and 
= 
(0, 
1, 
kind 
target, 
or 
= 
0, 
1, 
specifyinq 
or 
Frame 
between 
defined 
contains 
Number 
subfield 
that 
a 
tarqet 
beinq 
containinq 
r, 
(0=1). 
2, 
3, 
, 
T0
••• , T7 
of 
without 
secondary 
2. 
3, 
a 
Number 
3 
and 
a 
dependinq 
will 
specifies 
thread 
defined. 
4, 
5, 
Index 
4, 
frame. 
3, 
by 
the 
Seqment 
not 
what 
a 
number 
~, 
7) 
of 
specifyinq 
or 
indicatinq 
way. 
5, 
~ 
Here. 
is 
required 
and 
associates 
THREAD 
Index, 
on 
the 
be 
present 
type 
is 
beinq 
between 
mod 
4, 
Frame 
correspondinq 
METHOD 
field. 
specification 
Number 
if 
the 
to 
Group 
if·F4 
of 
thread 
defined 
0 
and 
where 
a 
tarqet. 
tarqet 
indicates 
specify 
a 
~thread 
Index. 
or 
3 
the 
is 
to 
in 
F5 
FIXUP 
FIXUP 
is 
a 
field 
with 
the 
following 
format: 
***********************///*********///*********///***** 
*  *  *  *  *  * 
* 
* 
* 
LOCAT 
* 
* 
* 
FIX 
OAT 
* 
* 
* 
FRAME 
DATUM 
*  TARGET 
* 
DATUM 
* 
*  TARGET 
* 
015-
* 
PLACEMENT 
* 
* 
* 
*  *  *  *  *  * 
***********************///*********///*********///***** 
r  ,  ,  I 
+conditional+conditional+conditional+ 
LOCAT 
is 
a 
byte 
pair 
with 
the 
followinq 
format: 
***************************************************************** 
*  I  ,  I 
* 1 , 
~ 
I 5 I 
*  ,  I  r 
I  , 
LOC 
I  r 
I  * 
o A T*A 
f  * 
I  I  I  I 
R E 
COR 
0 
I  I  ,  ! 
,  ,  I 
OFF 
5 
~ 
I  I  ,  * 
**************************************************-***-*********-
I 
+---~--------lo~byte------------+------------hi 
byte------------+ 
* 
T  * 
71 
Page 72

808~ 
Object 
M 
is 
self-relative 
Module 
a 
one 
bit 
(M=0) 
Formats 
subfielG 
or 
segment 
that 
relative 
sgecifies 
the 
(M=l). 
mode 
of 
Version 
the 
4.8 
fixUDS: 
(~ote) 
RIDATA, LICATA, 
S 
is 
a 
one 
bit 
TARGET DISPLACEMENT 
field 
number, 
2's 
will 
be 
5=0) 
complement 
either 
or 
form, 
(Note) 
LOC 
preceding 
'of 
fset' 
'hibyte' 
The 
inclusive, 
of 
LOCATION 
DATA 
in 
record. 
the 
data 
(Cautionary 
record, 
designate 
COU~T 
subfield 
deemed 
mal 
formed 
Cautionary 
extension, 
is 
currently 
is 
a 3 
DATA 
(LOC=l), 
(LOC=4). 
DATA 
that 
fields 
it 
is 
a 
an 
error. 
reco 
Note) 
and 
bit 
Record 
a  • 
RECORD 
gives 
(the 
The 
DATA 
Note) 
possible 
~locationH 
of 
the 
rd 
is 
Self-relative 
or 
PIDATA 
subfield 
subfield, 
two 
bytes 
three 
bytes 
5=1). 
3-byte 
are 
subfields 
not 
mandatory. 
subfield 
to 
base' 
(Other 
values 
OFFSET 
the 
relative 
actual 
bytes 
RECORD 
in 
the 
DATA 
If 
for 
within 
ITERATED 
LINK-86's 
undefined, 
that 
if 
(containing 
(containing 
currently 
(End 
indicatinq 
be 
fixed 
(LOC=2), 
in 
is 
beina 
OFFSET 
RECORDs. 
the 
the 
value 
DATA 
and 
fixups 
records. 
specifies 
present, 
are 
of 
up 
a  • 
LOC 
a 
number 
position 
fixed 
is 
precedinq 
a REPEAT 
field. 
LOCATE-86's 
and 
probabl 
may 
NO~ 
(End" 
that 
(see 
a 
a 
sioned 
a 
possible 
supported. 
Note) 
that 
are 
a 
po 
inter' 
are 
invalid.) 
of 
up) 
relative 
DATA 
of 
DATA 
COUNT 
Such" 
y 
be 
applied 
of 
Note) 
the 
below), 
l~-bit 
24-bit 
Thus, 
the 
byte(s) 
'lobyte' 
between 
the 
lowest 
within 
to 
the 
record 
RECORD 
subfield 
a 
action 
awkward. 
to 
lenoth 
in 
non-ne~ative 
this 
of 
FIXUP 
number 
future 
S=0 
in 
(LOC=~), 
(LOC=3), 
0 
order 
the 
first 
is 
OFFS~T 
or 
or 
and 
1023, 
byte 
precedinq 
byte 
an 
IDATA 
a 
BLOCK 
reference 
on 
such 
(end 
the 
in 
the 
an 
a 
to 
is 
a 
of 
this 
by 
and 
F=l 
most 
with 
in 
72 
the 
FIX 
DAT 
F 
is 
FIXUP 
FRAME 
the 
F 
is 
is 
bit. 
corresponds 
then 
PRAME 
recently 
the 
same 
saMe, 
is 
a 
one 
specified 
a 
defined 
thread 
or 
a 
byte 
with 
the 
following 
format: 
********************************* 
*  , 
* F I 
*  I 
I  , 
FRAME 
I  I 
I  I  I  ,  * 
I 
TIP 
I 
TARGT 
I  I  r  I  * 
********************************* 
bit 
number 
If 
F 
to 
methods 
is 
in 
an 
subfield 
by a thread 
interpreted 
is 
zero 
F~, 
a 
thread 
by a THREAD 
number. 
earlier 
that 
in 
then 
FRAME 
•••• 
number 
field 
(Note 
FIXUPP 
specifies 
(F=l) 
one 
F~ 
of 
(0-3). 
that 
that 
record.) 
or 
explicitly 
of 
two 
is 
a 
number 
specifyina 
It 
~efined 
the 
THREAD 
whether 
* 
ways 
between 
a 
specifies 
a 
field 
the 
frame 
(F=~). 
as 
indicated 
FRA~E. 
the 
frame 
~ay 
J 
and 
frame 
thrend 
aopear 
for 
h 
If 
Page 73

808fi 
Object 
'r 
specified 
or 
is 
P 
specified 
specified 
Since 
the 
P 
attribute 
is 
aiven 
is 
a 
bit 
Module 
a 
one 
for 
explicitly 
a 
one 
in 
a 
in 
a 
tarqet 
is 
the 
of 
the 
Formats 
bit 
this 
bit 
subfield 
fixup 
subfield 
primary 
secondary 
thread 
only 
target 
is 
defined 
in 
the 
that 
way 
does 
field 
way 
(requires 
(requires 
not 
that 
specification. 
that 
FIXUP 
indicates 
have 
specifies 
by 
reference 
field 
a 
TARGET 
no 
a 
primary/secondary 
specifies 
(T=0). 
whether 
DISPLACEMENT, 
TARGET 
the 
Version 
whether 
to 
a 
the 
the 
thread 
tarqet 
DISPLACEMENT, 
attribute, 
primary/secondary 
target 
CT=l). 
P-0) 
P=l). 
4.8 
~ 
or 
TARGT 
provides 
T3 
or 
as 
the 
a 
T4, 
high 
by a thread 
FRAME 
and 
is 
a 
Number. 
specified 
F5 
or 
Ffi. 
'fARGET 
specification. 
Index 
when 
or 
the 
TARGET 
by 
"primary" 
is 
present 
is 
interpreted 
number 
••• , T7, 
order 
(T=l) 
DATU~ 
Segment 
The 
is 
Index, 
FRAME 
neither 
DATUM 
and 
a 
Frame 
target 
is 
DISPLACEMENT 
ways 
iff 
P=0. 
between 
0 
depending 
bit 
of 
TO, 
then 
TARGT 
the 
"referent" 
a 
DATUM 
Grou·p 
subfield 
by a thread 
is 
is 
a 
Segment 
Number. 
not 
specified 
is 
of 
specifyinq 
as 
and 
on 
••• , T7). 
specifies 
(F=O) 
the 
The 
TARGET 
the 
a 
two 
3, 
corresponding 
the 
value 
a 
portion 
Index, 
is 
an 
present 
nor 
II 
referent" 
Index, 
a 
DATU~ 
by a thread 
2-
or 
3-byte 
TARGETs. 
bit 
subfie1d. 
of 
P 
When 
the 
thread 
of 
External 
explicitly 
Group 
subfield 
(T=0). 
This 
to 
methods 
(P 
can 
be 
tarqet 
number 
a 
frame 
specification, 
Index, 
only 
when 
by 
methods 
portion 
Index, 
is 
displacement 
2-
or 
3-byte 
When 
interpreted 
ia 
specified 
(0-3). 
or 
the 
of 
a 
an 
present 
T=I, 
T0, 
••• 
a 
Frame 
frame 
F4 
tarqet 
External 
only 
required 
subfie1d 
it 
, 
is 
or 
Page 74

8086 
Object 
Module 
Formats 
Version 
4." 
OVERLAY 
***********************///*********1 
DEFINITION 
(OVLDEFf 
1'1*********///*********** 
RECORD 
----
--
*  *  *  *  *  *  * 
* 
REC 
* 
* TYP * 
* 
70H 
* 
RECORD 
LENG'fH 
* 
OVERLAY 
*  NAME 
* 
*  *  *  *  *  *  * 
***********************///*********~ 
This 
overlay 
loader 
in 
the 
OVERLA~(NAME 
The 
1 
or 
more 
The 
ordering 
OVLDEF 
These 
field 
numbers 
of 
in 
may 
object 
OVERLAY 
LSEG's 
ordering 
on 
records 
followinq 
Record 
the 
object 
use 
this 
file. 
the 
are 
provides 
NAME 
and/or 
set 
are 
used 
OVLDEF 
file, 
record 
field 
Groups 
of 
OVLOEF 
of 
all 
considered 
as 
.. 
* 
* 
the 
and 
to 
locate 
provides 
may 
Overlays 
dOverlay 
records. 
OVERLAY 
LOCATION 
OVERLAY 
* 
* 
ATTR 
* 
111*********///*********** 
overlay 
the 
attributes 
be 
Records 
defined 
to 
Indices· 
the 
a 
name 
referenced 
be 
name, 
data 
within 
records 
by 
in 
numbered: 
in 
the 
of 
which 
for 
a 
the 
the 
the 
module 
* CHK * 
* 
SUM 
*  * 
location 
overlay. 
of 
the 
a 
collection 
load 
ina. 
module. 
1, 
2, 
OVERLAY 
* 
overlay 
induces 
3, 
of 
Thus, 
4, 
ATTR 
the 
A 
of 
an 
••• 
an 
overlay 
any 
record 
in 
bytes 
records 
Overlay 
definition 
referrinci 
OVERLAY 
The 
OVERLAY 
relative 
in 
the 
OVERLAY 
The 
OVERLAY 
indices 
LOCATION 
LOCATIO~ 
to 
overlay. 
ATTR 
ATTR 
***********///*********///***** 
*  *  *  *  
*  *  SHARED  * 
* 
*  *  INDEX  * 
* 
***********///*********///***** 
may 
not 
be 
forward 
to 
the 
SA 
record 
that 
field 
* 
defininq 
overlay 
is 
a 
start 
has 
OVERLAY 
4-byte 
of 
the 
* 
I  I  I 
+conditional+conditionnl+ 
the 
with 
field 
the 
file 
followino 
* 
* 
referrinq. 
kith 
index 
ADJACENT * 
OVERLAY 
INDEX  * 
which 
of 
overlay 
k. 
the 
format: 
* 
* 
That 
must 
~ives 
first 
is 
the 
byte 
to 
say, 
precede 
location 
of 
the 
74 
Page 75

8086 
the 
function. 
overlay 
indicated 
overlay 
indicated 
Object 
The 
followinq 
Z's 
S 
A 
Module 
SA 
subfield 
format: 
indicates 
These 
(shared) 
will 
(adjacent) 
will 
in 
in 
have 
the 
have 
the 
Formats 
provides 
**************************~****** 
information 
for 
memory 
layout. 
*  I  I  I  I  I  ,  I  * 
* z I Z I Z I Z I Z I Z I S I A * 
*  I  I  I  I  ,  I  I  * 
********************************* 
that 
bits 
is 
to 
SHARED 
to 
ADJACENT 
are 
a 
be 
is 
be 
these 
I-bit 
loaded 
OVERLAY 
a 
I-bit 
required 
I-bit 
loaded 
OVERLAY 
field 
at 
INDEX 
field 
field 
to 
the 
next 
INDEX 
be 
zero. 
that. 
same 
field. 
that, 
in 
field. 
have 
if 
location 
if 
memory 
not 
1, 
1, 
been 
indicates 
as 
indicates 
to 
Version 
assigned 
that 
the 
that 
the 
4.8 
It 
has 
the 
overlay 
the 
overlay 
a 
The 
subfield 
indicates 
and/or 
at 
the 
The 
subfield 
indicates 
the 
current 
the 
same 
SHARED 
is 
1, 
that 
the 
groups 
same 
location. 
ADJACENT 
is 
1, 
that 
OVLDEF 
names 
OVERLAY 
points 
the 
with 
OVERLAY 
points 
the 
in 
the 
to 
segments 
same 
to 
seqments 
record 
indicated 
INDEX 
a 
previously 
names 
INDEX 
a 
previously 
must 
subfield, 
with 
subfield, 
and/or 
be 
overlay. 
same 
in 
the 
qroups 
loaded 
present 
defined 
seqment 
two 
present 
defined 
in 
adjacent 
if 
OVLDEF 
names 
overlays 
if 
OVLDEF 
the 
overlay 
to 
bit 
and 
must 
bit 
the 
S 
in 
record 
class 
be 
A 
in 
record 
defined 
ones 
the 
SA 
and 
names 
loaded 
the 
SA 
and 
by 
with 
75 
Page 76

808~ 
Object 
Module 
Formats 
END 
RECORD 
--(ENOREe) 
******************************* 
* 
* 
* 
* 
*  * 
REC 
TYP 
78H 
* 
* 
* 
* 
RECORD 
LENGTH 
*  *  * 
END * CHK 
* 
TYP 
* 
* 
*  *  * 
******************************* 
* 
SUM 
* 
* 
*  * 
Version 
4." 
as 
a 
format: 
ends: 
This 
block. 
END·TYP 
~his 
TYP 
field 
is 
TYP 
-0' -
1  End 
2 
3 
record 
and 
a 
two 
TYPE 
End-
-of 
(Illeqal) 
(Illeqal) 
is 
used 
an 
overlay. 
specifies 
to 
the 
denote 
type 
of 
the 
the 
end 
set. 
of 
a 
********************************* 
*  I  I  I  I  I  I 
* Z I Z , Z I Z I Z I z I 
*  I  I  I  I  I  I 
I  * 
TYP  * 
I  * 
********************************* 
bit 
OF 
-o-virlay 
of 
block 
subfield 
END 
that 
specifies 
the 
set 
ot 
It 
has 
fO'llowinq 
records 
the 
such 
followinq 
types 
of 
z 
functIon. 
indicates 
These 
th~t 
bits 
this 
are 
bit 
has 
required 
not 
to 
currently 
be 
zero. 
been 
assianed 
a 
Page 77

808~ 
Object 
Module 
*****************************///*********** 
*  *  *  *  *  * 
* 
REC 
* 
TYP 
* 
708 
*  *  *  *  *  * 
*****************************///*********** 
Formats 
REGISTER INITIALIZATION RECORD 
-
.. 
* 
* 
------
RECORD 
LENGTH 
.. 
--fREGiNT,-----44-----
* 
REG 
* REGISTER  * 
* 
TYP * CONTENTS 
* 
CHK 
SUM 
* 
* 
*  *  *  *  * 
I  I 
+----repeated-----+ 
Version 
4.0 
This 
registers/register-pairs: 
purpose 
reqisters 
REG·TYP 
The 
also 
the 
currently 
zero. 
reqisterslreqister-pairs 
indicates 
next 
Zis 
REGID 
of 
for 
REG 
field. 
are 
been 
is 
record 
this 
initiation 
TYP 
I-bit 
assigned 
a  two 
provides 
CS 
and 
information 
of 
execution. 
field 
the 
It 
********************************* 
type 
has 
provides 
of 
the 
followinq 
reqister 
information 
IP, 
is 
for 
the 
SS 
and 
SP, 
OS, 
a 
loader 
reqister/reqister-pair 
content 
format: 
to 
specification 
*  ,  I  I  I  I  I  ,  * 
* 
REGID 
* 
********************************* 
subfields 
, Z I Z I Z I Z I Z I L * 
I  I  I  I  ,  I  I  * 
a 
function. 
bit 
as 
follows: 
which 
subfield 
indicate 
These 
that 
that 
bits 
specifies 
these 
are 
about 
set 
required 
the 
and 
the 
bits 
na~e 
the 
ES. 
neccessary 
name. 
given 
have 
to 
of 
8086 
The 
not 
the 
It 
in 
be 
REGID 
o 
1 
2 
3 
L 
CONTENTS 
reauires 
offset 
the 
specifications 
correspondinq 
~~9!§!https://manualmachine.com/~~~l.EJ~~=~~!~ 
CS 
and 
IP 
SS 
and 
SP 
OS 
ES 
is 
a 
field 
fixinq 
one 
is 
bit 
to 
up 
reqister/reqister-pair. 
field 
be 
interpreted 
by 
LINK-8~/LOCATE-8~, 
(L=0) 
that 
appropriate 
indicates 
as 
a 
for 
loqical 
or 
the 
whether 
address 
as 
the 
(L=l) 
a 
pair 
initialization 
of 
REGISTER 
that 
base 
and 
of 
77 
Page 78

8086 
Object 
Module 
Formats 
Version 
4.0 
REGISTER 
The 
fo 
rmats: 
First 
same 
address 
and 
field 
DATU~, 
method 
form 
In 
manner 
the 
REGISTER 
this 
to 
FIXUPP 
have 
and 
TARGET 
F4 
is 
CONTENTS 
CONTENTS 
(L=l) 
field 
has 
either 
of 
***********///*********///***************** 
*  *  *  *  * 
* 
REG 
* 
* 
OAT 
* 
*  * 
FRA~E 
DATUM 
* 
* 
* 
TARGET 
DATUM 
* 
TARGET 
* 
015-
* 
PLACEMENT 
*  *  *  * 
***********///*********///***************** 
,  I  I  I 
+conditional+conditional+conditional+ 
case 
as 
a 
the 
not 
the 
reqister 
in 
the 
specification 
physical 
record. 
same 
DISPLACEMENT 
allowed. 
semantics 
address 
The 
contents 
above 
fields 
of 
as 
used 
subfields 
as 
the 
in 
are 
the 
in 
FIX 
the 
specified 
mappina 
the 
discussion 
of 
the 
DAT, 
FRAME 
FIXUPP 
REGISTER 
the 
* 
* 
* 
in 
exactly 
of 
DATU~, 
record. 
following 
a 
logical 
of 
fixups 
CONTENTS 
TARGET 
Frame 
the 
§~~~ 
~~._!2!!!' 
LINK-86/LOCATE-8~ 
field 
into 
The 
_J~=!l 
a 
REGISTER 3ASE 
field 
will 
having 
the 
convert 
following 
the 
format: 
above 
*****///***************** 
*  *  * 
* REGISTER 
* 
BASE 
* 
* REGISTER  *  
*  OFFSET  * 
*  * 
*  *  * 
*****///***************** 
field 
*****///*********///***************** 
*  *  *  * 
* 
* 
* 
GROUP 
INDEX 
* 
* 
*  * 
,  I 
+conrlitional+ 
has 
the 
SEGMENT 
INDEX 
followino 
* 
FRAME 
* 
~UM8ER 
for~at: 
*  *  *  * 
*****///*********///***************** 
I  , 
+contiitional+ 
REGISTER 
* 
* 
* 
CONTENTS 
78 
Page 79

808~ 
Object 
Module-
Formats 
Version 
4.1 
The 
field 
record. 
The 
specifies 
or 
to 
format 
is 
identical 
REGISTER  OFFSET 
an 
offset 
the 
FRAME 
(if 
(Note) 
absolutely 
base 
field 
of 
for 
of 
the 
is 
the 
the 
corresPQnding 
the 
initialization 
(REGID  = 
determined 
If 
GROUP 
the 
value 
If 
offset 
the 
location 
REGISTER 
specified 
GROUP 
relative 
OFFSET). 
and 
to 
the 
the 
relative 
SEGCt1EN'r 
Once 
located 
object 
appropriate 
0) 
or 
as 
follows: 
INDE·X = 0, 
INDEX 
to 
specified 
interpretation 
LOCAL 
SY~BOL 
field 
to 
the 
INDEX 
the 
(by 
= 
seqments 
a 
loader 
pointed 
value 
base 
reqister. 
of 
the 
SP 
the 
in 
the 
REGISTER OFFSET 
> 
0, 
the 
base 
by 
(End 
of 
Note) 
BASE 
(present 
Seqment 
0) 
• 
to 
for 
either 
reqister 
offset 
the 
of 
the 
the 
of 
the 
described 
only 
(if 
SEGMENT 
and/or 
or 
LOCATE-8~), 
by 
the 
REGISTER 
the 
initialization 
The 
the 
(REGID  = 
value 
offset 
specified 
pair 
(SEGMENT 
above 
if 
groups 
offset 
IP 
is 
given 
field. 
value 
qroup 
REGISTER BASE 
in 
the 
REGID 
INDEX 
LOCSYM 
<= 
) 
are 
the 
BASE 
value 
reqister 
1) 
is 
by 
is 
the 
of 
INDEX, 
1) 
0) 
79 
Page 80

8g8~ 
Object 
Module 
Formats 
Version 
4.8 
This 
module 
specified 
true 
then 
MOD 
This 
allocation 
MODULE 
----(MODEND) 
~ND 
RECORD 
*****************************///*********** 
*  *  *  *  •  * 
* 
REC 
* 
RECORD 
* 
TYP 
* 
LENGTH 
* 
8AH 
*  •  *  *  * 
*  *  *  *  *  * 
*****************************///*********** 
record 
and 
entry 
the 
'ryp 
field 
and 
serves 
indicates 
point 
execution 
specifies 
associated 
for 
* 
* 
two 
purposes. 
whether 
initiation 
address 
the 
meanings 
MOD 
* 
START 
TYP 
* 
ADDRS 
. 1  , 
+conditional+ 
It 
the 
is 
module 
of 
execution. 
specified. 
attributes 
are 
as 
follows: 
* 
CHK 
* 
SUM 
denotes 
just 
of 
the 
• 
* 
the 
terminated 
If 
module. 
the 
end 
latter 
of 
has 
The 
a 
a 
is 
bit 
MATTR 
attr 
ibutes: 
MA'r'rR 
--O-~-· 
L 
as 
a 
Ioqical 
(L=l) 
and 
IP 
Z 
functIon. 
1 
2 
3 
indicates 
or 
as 
registers 
indicates 
These 
********************************* 
*  I  I  t  I  I  I  I  * 
* 
MATTR 
*  I  I  I  ,  I  I  ,  * 
********************************* 
is 
a two 
~ODULE 
Non=maln-inOd 
~on-main 
Main 
~a 
in 
address 
a 
physical 
bit 
ATTRI8UTE 
~odule 
module 
!nod 
ule 
wheth£r 
that 
of 
the 
that 
bits 
I Z , Z I Z I Z 1 z I L • 
subfield 
uTe-wi 
with 
wi 
address 
8085 
this 
are 
with 
th 
the 
requires 
bit 
required 
that 
th 
no 
START 
START 
no 
START 
S'rAR~r 
START 
ADDRS 
ADDRS 
fixinq 
appropriate 
(L=~). 
has 
not 
to 
specifies 
ADDRS 
ADDRS 
ADORS 
field 
currently 
be 
zero. 
up 
for 
the 
followinq 
is 
to 
by 
LINK-8n/LOCATE-8~ 
placement 
been 
be 
interpreted 
into 
assioned 
module 
the 
CS 
a 
8'" 
Page 81

8086 
Object 
Module 
Formats 
Version 
4.8 
'rhe 
either 
The 
other 
startingthe 
same 
address 
record. 
semantics 
DISPLACEMENT 
allowed. 
START 
of 
the 
starting 
logical 
address 
manner 
as 
The 
Frame 
ADDRS 
following 
field 
formats: 
(present 
only 
if 
MATTR 
***********///*********///***************** 
*  *  *  *  * 
* 
END 
* 
FRAME 
* 
DAT 
* 
DATU~ 
*  *  *  * 
*  TARGET  *  TARGET  * 
* 
DATUM 
* 
D1S-
PLACEMENT 
*  *  *  *  * 
***********///*********///***************** 
I  I  I  I 
+conditional+conditional+conditional+ 
reference 
specified 
above 
as 
flelds 
as 
the 
method 
address 
to 
a 
mapping 
subfields 
FIX 
in 
of 
found 
physical-
any 
in 
OAT, 
the 
FIXUPP 
F4 
is 
the 
of 
not 
a 
module 
in 
a 
startinq 
other 
discussion 
the 
FRAME 
allowed. 
module. 
loqical 
START 
DATUM, 
record. 
has 
all 
The 
address 
address 
of 
ADDRS 
TARGET 
Only 
the 
attributes 
mappinq 
is 
fixups 
field 
DATU,,,,, 
·primary· 
is 
* 
* 
done 
to 
ahd 
have 
1 
of 
a 
or 
a 
loqical 
in 
exactly 
physical 
the 
the 
and 
fixups 
3) 
has 
of 
any 
FIXUPP 
same 
TARGET 
are 
START 
address, 
~odule 
insertion 
defines 
execution. 
register 
AQDRS 
When 
FRAME 
OFFSET 
the 
the 
will 
the 
for 
(second 
logical 
START 
NUMBER 
beqin 
into 
specifies 
exact 
This 
program 
the 
form) 
address 
ADDR£ 
field 
is 
takes 
mapped, 
on 
************************* 
*  *  * 
* 
* 
* 
FRAME 
NUMBER 
OFFSET 
* 
*  * 
* 
*  *  * 
************************* 
specifies 
execution. 
CS 
reqister 
location 
value 
initiation. 
an 
is 
a 
for 
offset 
of 
the 
appropriate 
frame 
This 
proqram 
relative 
first 
by 
LOCATE-8~, 
the 
following 
number 
value 
initiation. 
tn 
nyte 
for 
* 
* 
relative 
is 
the 
at 
insertion 
to 
format: 
to 
appropriate 
FRAME 
NUMBER 
which 
a 
which 
to 
into 
physical 
the 
for 
which 
~eqin 
the 
IP 
Rl 
Page 82

8~8~ 
Object 
Module 
Formats 
Version 
4.0 
LIBRARY 
HEADER 
RECORD 
-------fCfSHED)------
************************************************************* 
*  *  *  *  *  *  * 
* 
REC 
* 
RECORD 
* 
TYP 
* 
LENGTH 
A4H *  *  *  *  *  * 
* 
*  *  *  *  *  *  * 
************************************************************* 
This 
immediately 
the 
modules 
MODULE 
DICTIONARY 
MODULE 
This 
may 
have 
record 
precedes 
are 
NAMES 
RECORD. 
COU~T 
... 
field 
any 
value, 
RECORD, 
_--
* 
MODULg 
* 
is 
the 
the 
three 
more 
indicates 
includinq 
COUNT 
fir~t 
modules 
records 
LIBRARY 
how many 
* 
.* 
NUMBER 
record 
(if 
MODULE 
zero. 
BLOCK 
any) 
in 
the 
LOCATIO~S·RECORD, 
modules 
* 
BYTE 
* 
NUMBER 
in 
a 
library 
in 
the 
library. 
followinQ 
are 
in 
the 
* 
* 
order: 
library. 
CHK 
SUM 
file. 
and 
* 
* 
It 
Followinq 
LIBRARY 
LIBRARY 
It 
of 
the 
ISIS-II 
These 
LIBRARY 
file 
fields 
MODULE 
format. 
indicate 
NAMES 
the 
relative 
RECORD 
in 
the 
location 
library 
of 
file, 
the 
first 
usinq 
byte 
the 
82 
Page 83

8086 
Object 
Module 
Formats 
Version 
4.0 
The 
th 
eli 
name 
This 
names 
bra 
The 
of 
ry 
the 
LIBRARY. 
MODULE 
NAMES 
RECORD 
(LiSNAM) 
***********************///*********** 
*  *  *  *  * 
* REC * 
* TYP * 
* 
A6H 
RECORD 
LENGTH 
* 
*  * 
***********************///*********** 
record 
are 
• 
i'th 
i'th 
qiven 
MODULE 
module 
qives 
in 
the 
the 
NAME 
in 
names 
same 
field 
the 
MODULE 
* 
NAME 
* 
* 
* 
I  I 
+-repeated--+ 
of 
all 
the 
sequence 
in 
library. 
the 
as 
record 
* 
* SUM * 
*  * 
*  * 
CHK 
modules 
the 
* 
in 
modules 
contains 
the 
appear 
the 
library. 
in 
module 
A3 
Page 84

808~ 
Object 
Module 
Formats 
Version 
4."0 
file, 
LHEADH 
the 
order 
~~OCK-
the 
module 
library 
LIBRARY 
MODULE 
(LIBLOC) 
LOCATIONS 
RECORD 
------~-.-
************************************************* 
*  *  *  *  *  * 
REC 
* 
TYP 
* 
ASH 
* 
* 
* 
* 
* 
* 
RECORD 
LENGTH 
* 
NUMBER 
* 
* 
* 
BLOCK 
* 
NUI~BER 
* 
* 
* 
BYTE 
CHK 
* 
SUI., 
* 
*  * 
*  * 
************************************************* 
+--------reoeated-------+ 
This 
The 
The 
record 
of 
or 
RHEADR 
order 
of 
i'th 
within 
provides 
the 
NUMBER~ 
the 
file 
first 
of 
pair 
the 
record) 
the 
modules 
of 
library, 
the 
relative 
byte 
block-number/byte-number 
~XTE 
of 
the 
of 
of 
each 
within 
~UMBER 
fields 
first 
byte 
usinq 
the 
module 
the 
provides 
of 
the 
first 
library. 
the 
ISIS-II 
location, 
record 
in 
the 
the 
relative 
first 
library. 
pairs 
file 
within-
( 
either 
record 
format. 
* 
.. 
the 
a 
THEADR 
corresponds 
location 
of 
the 
library 
or 
t~ 
within 
i'th 
84 
Page 85

8086 
Object 
Module" 
Formats 
version 
4.8 
This 
library. 
in 
the 
format 
Thus, 
names 
~ibrary. 
the 
in 
LIBRARY DICTIONARY 
--
..... 
.-.-
(LIBDIC) 
R~CORD 
***********************///***************** 
*  *  *  *  *  * 
* 
REC 
* 
* 
TYP 
* 
RECORD 
LENGTH 
*  PUBLIC  *  * CHK * 
* 
NAME 
* 00H * 
SUM 
* AAH *  *  *  *  * 
*  *  *  *  *  * 
***********************///***************** 
I  I  I 
record 
Since 
the 
are 
'00' 
ilth 
qives 
a 
bytes 
group 
all 
name 
distinquishable 
must 
separate 
are 
+-re~eated--+ 
+----repeated-----+ 
the 
names 
have 
defined 
of 
a 
non-zero 
from 
the 
in 
public 
PUBLIC 
the 
the 
I 
symbols 
lenqth, 
PUBLIC 
NAMES 
i'th 
* 
the 
NAME 
into 
module 
within 
'00' 
fields. 
qroups; 
of 
the 
bytes 
all 
the 
85 
Page 86

8086 
Object 
Module 
Formats 
Version 
4.0 
***********************************///*********** 
*  *  *  *  *  *  
* 
* TYP * 
* 
*  *  * 
***********************************///*********** 
This 
information 
COr-1M 
This 
record. 
those 
format 
processes 
of 
COMMENT 
RECORD 
(COMENTf---
REC 
* 
RECORD 
LENGTH 
8SH 
*  *  *  *  * 
record 
in 
object 
EN'r 
TY 
P E 
field 
This 
this 
indicates 
allows 
that 
field 
wish 
* 
COM~ENT 
*  TYPE  * 
allows 
text. 
the 
commentary 
to 
is 
as 
follows: 
translators 
type 
information 
selectively 
*  * 
COM~ENT 
*  *  * 
to 
of 
comment 
act 
CHK 
* 
SUM 
include 
carried 
to 
be 
on 
* 
* 
commentary 
structured 
comments. 
by 
this 
for 
The 
****************************************************************** 
* N I N I  I  I  I  I  I  * 
*pl 
LI 
ZI 
zl 
ZI 
ZI 
ZI 
z* 
COMMEN'r 
CLASS 
****************************************************************** 
The 
NP 
not 
purqable 
capability 
The 
COMMENT 
utility 
CO,.,EN'r 
The 
(NOPURGE) 
by 
of 
deletinq 
NL 
(NOLIST) 
field 
proqrams 
reco 
COMMENT 
1 
2-155 
l5~-255 
is 
rds. 
object 
not 
CLASS 
Lanquaqe 
Intel_'£~2Y..E!9.!:!~_~~,!,!!~~~. 
set. 
Reserved 
Reserv~d 
apply 
bit. 
to 
which 
if 
file 
COMENT 
field 
no 
utility 
bit, 
be 
listed 
implement 
translator 
for 
for 
semantics 
1. 
record. 
if 
is 
defined 
Intel 
users. 
indicates 
.proqrams 
1, 
indicates 
in 
the 
the 
comment 
use. 
to 
that 
listinq 
capabiltiy 
as 
follows: 
'rhe 
Intel 
these 
the 
which 
that 
NP 
prorlucts 
values. 
COMENT 
file 
of 
bi 
t mLlst 
implement 
the 
text 
of 
ohject 
listina 
will 
record 
in 
object 
he 
* 
* 
is 
the 
the 
file 
Page 87

8086 
Object 
COM(t1ENT 
Module 
Formats 
Version 
4.8 
This 
field 
provides 
the 
commentary 
information. 
P7 
Page 88

SgS6 
Object 
Module 
Formats 
Version 
4.1 
NUMERIC 
APPENDIX 
LIST 
~E 
RHEADR 
70 
REGINT 
72 
REDATA 
74 
RIDATA 
76 
OVLDEF 
78 
ENOREC 
7A 
BLKOEF 
7C 
BLKEND 
7E 
DEBSY~ 
80 
THEADR 
82 
LHEADR 
84 
PEOATA 
86 
PIDATA 
88 
COJ'ltENT 
8A 
MOOEND 
BC 
EXTDEF 
TYPDEF 
8E 
9" 
PUBDEF 
92 
LOCSY~ 
94 
LINNUM 
9t; 
LNAMES 
98 
SEGDEF 
9'" 
GRPDEF 
9C 
FIXUPP 
9E 
A0 
LEDATA 
A2 
LIDATA 
A4 
LIBHED 
AF, 
LIBNAM 
A8 
LIBLOC 
AA 
LIBDIC 
OF 
(none) 
1 
RECORD 
TYPES 
ae 
Page 89

8086 
Object 
Module 
Formats 
APPENDIX 2 
Version 
4.8 
The 
without 
Andleaves 
Types 
leaves 
relations, 
and 
Orleaves 
may 
be 
+------~~+----~-----+---~~----------+ 
+--~-----+~--------+~---~------~--+ 
REPRESENTATIONS 
diagrams 
Leaves, 
not 
supported 
by 
branches 
I 
(length) 
+------
I POINTER , 
... 
_---+ 
, 
(scalar 
Index 
at 
of 
the 
may 
Leaves 
this 
followinq 
type) 
be 
time. 
Numeric 
or 
Null 
forms: 
, 
Leaves 
Leaves. 
in 
defined 
I 
SCALAR 
the 
Strinq 
TYPE 
following 
are 
+-----.-----+ 
+-----~-~-+----------~-+-~-------~+ 
, 
SCALAR 
(length) 
I 
@pointer 
I 
+-------~---+----------+~-----------~---~--~-+~--------~-----------+ 
I STRUCTURE I 
(lenqth) 
I 
(number 
of 
components) 
I 
~list 
of 
components 
I 
+-~-------~-+--------~-+----------------------+--~----~---~---------+ 
+------+-
I 
LIST 
+------+---+---+---+ 
+--~~---+----~-----+-------+ 
I 
ARRAY I (lenqth) 
+-----~~+----------+-~-----+ 
... 
-+---+---+ 
, ? I ? I ? I 
. 
... 
I 
~type 
+---+ 
I ? , 
+---+ 
, 
89 
Page 90

8086 
+--~-~------+-----+-------+-~-~~-----+---~--~~~~---------~----+-------+ 
I 
PROCEDURE I nil 
Object 
Module 
I 
~type 
Formats 
+----~------+-~-----+ 
I 
PARAMETER 
I 
(return) 
I 
~type 
, 
(number 
I 
of 
parameters) 
Version 
I 
Alist 
4. 
I 
+~----~-----+--~--+-------+----------+-----------~------------+-~-----+ 
+-------+-----+---~------+ 
I 
LABEL I nil 
I 
(return) 
I 
where 
IN'rEGER. 
indicates, 
should 
following 
for 
EDOJ86, 
and 
and 
proqrams 
Numeric 
this 
qive 
2. 
translator 
FORTRAN-8~). 
-(scalar 
or 
REAL. • 
in 
be 
a 
"short" 
values 
99 
100 
101 
102 
103 
104 
105 
10f' 
107 
108 
109 
110 
III 
(Note) 
the 
(althouqh 
SCALAR, 
are 
choice 
a 
For 
type)· 
(return)" 
the 
case 
jump 
are 
assiqned: 
INTERRUPT 
FILE 
PACKED 
UNPACKED 
SET 
( 
reserved 
CHAMELEON 
BOOLEAN 
'fRUE 
FALSE 
CHAR 
INTEGER 
CONST 
1. 
The 
convenience 
and 
OJED8~. 
conceptually 
for 
example, 
rather 
may 
correctly 
Leaf 
as 
correctly 
wronq 
more 
identifier. 
detailed 
EPS's 
(end 
of 
or 
for 
above 
1arqe, 
a 
(e.q. 
of 
can 
can 
a LABEL. 
a 
-lonqd 
1enqth) 
(decimal) 
of 
All 
there 
can't 
so 
decide 
number 
most 
type 
Note) 
be 
either 
be 
ei 
ther 
jump, 
112 
113 
114 
115 
lIn 
117 
118 
119 
120 
121 
122 
123 
124 
125 
126 
127 
utility. 
numbers 
is 
be 
that 
of 
AS~-8~, 
object 
whether 
or 
as 
the 
descriPtions 
UNSIGNED INTEGER. SIGNED 
SHORT 
whether 
respectively), 
(reserved 
a 
or 
jump 
for 
LONG 
to 
the 
1enath) 
and 
LABEL 
LONG 
SHORT 
PROCEDURE 
PARAMETER 
DIMENSION 
ARRAY 
( 
reserved 
for 
len<1th) 
STRUCTURE 
POIN'rER 
SCALAR 
U~SIGNED 
INTEGER 
SIGNED INTEGeR 
REAL 
LIST 
values 
proqrams 
no 
the 
an 
identifier, 
time, 
PLM-8~, 
are 
reason 
same 
module 
to 
represent 
are 
chosen 
such 
as 
different 
why 
REAL 
number), 
display 
make 
and 
PASCAL-~~, 
see 
never 
the 
a 
(wh 
l.Jbel 
ich 
the 
Page 91

8086 
Object 
Module 
Formats 
APPENDIX 3 
version 
4.e 
+------------+ 
--+-->1 
I 
I 
. I 
1-->1 
sequence 
1 
+----------+ 
+---------+ 
library 
1 
+---------+ 
sequence 
+--
... 
-----+ 
--+-->1 
A  + 
+------~--~----~+ 
library 
module 
___ ~ ___ 
1--+--> 
_+ 
1 
SYNTAX 
DIAGRAMS 
-~~( 
module 
LIBHED 
-~~~~~-~ 
+------+ 
--+-->1 tmod 
I 
-+------+ 
I 
+------+ 
+--> 
+--
I lmod 
I 
+------+ 
I 
+------+ 
> 1 rmod 1 
I 
+------+ 
I 
+------+ 
+-->1 omod 
+------+ 
)--+---------------+-->( 
~ 
+--------+ 
+--1 
module 
1<--+ 
+---------+ 
1--+--> 
.... 
I 
1--+ 
.... 
, 
--+ 
.... 
I 
1--+ 
LIBNAM 
I 
~------~ 
)-->( 
LIBLOC 
~~------
)-->( 
LIBDIC 
---~~-~-
)--> 
91 
Page 92

tmod 
8086 
Object 
Module 
Formats 
Version 
4"" 
-->( 
Imod 
-->( 
---------
rmod 
-->( 
THEADR 
LHEADR 
RHEADR 
+---~~----
) -> I 
sqr 
... 
table 
---+ 
,-+---~~--~---+--+---~~-------~---+->I 
+-----------+ 
+~ 
.. 
---.----~ 
)->1 
)->1 
sgr 
table 
+--------.--~ 
+---
+~--~------+ 
sqr 
.. 
~-.--
table 
1-+-----------+--+----------------+->1 
ft 
+-1 
.. 
-+ 
I-+------~----+--+----------------+->I 
_ 
+-1 
... 
+ 
.... 
____ 
+  I 
data 
+------+ 
+~~-~-~+ 
data 
+------+ 
1<-+ 
I  A 
1<-+ 
+-It_componentl<-+ 
+-It 
+-------------+ 
component 
1 
1<-+ +-1 
+------------+ 
+---~------~+ 
+----_ 
... 
_----+ 
+-----------+ 
co~ponentl<-+ 
I 
I 
+------------+ 
+------------+ 
modtail 
1--
+---------+ 
+--~-
+-----
+---
... 
----+ 
modtail 
.. 
--~-+ 
... 
-----+ 
modtail 
1--
1--
+---------+ 
omod 
-->( 
RHEADR )->1 
~~-------
+~--
+~----------+ 
sqor 
.... 
~-----+ 
table 
1-------------+----------------+->1 
+---,.. 
0 
+------~----+ 
+-Io_componentl<-+ 
+-----------+ 
, 
+--=~~------+ 
.. 
------+ 
modtail 
1--
92 
Page 93

sqr 
808~ 
_table 
Object 
+-------~-+ 
+ 
____ 
~_~ 
__ 
-->1 
seq 
+  I  ________  A 
qrp 
1--+---------------+--> 
Module 
Formats 
Version 
4.0 
sgor 
-->1 
_table 
+----~ 
+----~----+ 
+--( 
seq 
-----
LNAMgS 
.... 
---+ 
qrp 
1--+---------------+--+---------------+--> 
...... 
--
)<--+ 
+-->( 
~ 
+--( 
REGINT 
----~---
OVLDEF 
I 
+--( 
)--+ 
)<--+ 
---------
SEGDEF 
I  f 
+-->( 
)<--+ 
~~-~~--~ 
REGINT 
I 
--------
+--( 
, 
+--( 
I 
+--( 
TypOEF 
---~~~-~ 
... 
..,-~-.., 
EXTDEF 
--------
~-
GRPDE~ 
.. 
--~--
~ 
)--+ 
I 
)<--+ 
I 
.. - I 
)<--+ 
-, 
I 
)<--+ 
rnodtail 
--+--------------_+~->( 
I 
+--> ( REGINT 
--+---------------+--+---------------+-->( 
A 
+--{ 
-~---~--
_~~ 
___ 
~_ 
OVLDEF 
)<--+ 
~ 
)--+ 
" 
MODE~D 
~~------
________ 
+-->( 
REGINT 
)--> 
)--+ 
~ 
MODEND 
_______ 
_ 
)--} 
93 
Page 94

o 
_component 
8986 
Object 
~odule 
Pormats 
Version 
4, 
--~-+---------~~--+--+-~-----------~------+-->( 
-->( 
~ 
+--~---+ 
+--1 
+~---~~+ 
t. 
_component 
'fHEADR 
data 
)--+------------------+--> 
,  -
1<--+ +--1 
A 
+_ 
+--1 
+-~--~--------+ I -----~--
t_component 
+------~------+ 
... 
_----------
compOnent 
1<--+ 
1<--+ 
1 
ENOREe 
)--> 
+-----------+ 
component 
+--
.. 
--+--->1 
I 
1 
+--------------+ 
+-->1 
+--------------+ 
------~--
data 
+--
... 
--------~-+ 
debug 
_reco 
rd 
.. 
+ 
1--+--> 
I 
1--+ 
94 
Page 95

iata 
+---------------+ 
--+-->1 
I  + 
I 
+------------+ 
+-->1 
I 
+----~--.:----+ 
I 
+---->( 
t 
, 
+---->( 
I 
I 
+---->( 
8e8~ 
content 
____ ~ ___ 
thread 
Object 
= 
def 
--------
TYPDEF 
--------
--------
PUBDEF 
--~----~ 
-----~--
EXTDEF 
Module 
deE 
1---+--> 
____ 
+  A 
1--->+ 
)----->+ 
)----->+ 
)----->+ 
Formats 
I 
I 
I 
I 
I 
I 
I 
Version 
4.rtJ 
--+-->( 
t 
I 
+--> 
I 
I 
+--> 
t 
I 
+--> 
I 
I 
+-->(. 
.. 
_------
LOCSYM 
________ 
------~-
( 
LINNUM 
--------
~-------
( BLKDEF 
--------
--------
( 
BLKEND 
--------
--------
DEBSYM 
)---+--> 
)-->+ 
)-->+ 
)-->+ 
)-->+ 
A 
, 
t 
, 
t 
I 
t 
1 
95 
Page 96

88.8~ 
Obj 
ect 
Mod 
ule 
Pormats 
Version 
4. 
content 
--+-->( 
I 
I 
+--> 
I 
I 
+-->( 
, 
I 
+-->( 
I 
I 
+-->( 
I 
I 
+-->( 
thread 
def 
LIDATA 
---~-~--
)---+--+---------------+--> 
--------
( 
LEDATA ) -->+ 
---~-~--
---~----
PIDATA 
----~---
--------
PEDATA 
----~~--
)-->+ 
)-->+ 
--------
RIDATA 
--~-~---
-~---~--
REDATA 
)-->+ 
)-->+ 
def 
- A  
I 
I 
I 
I 
I 
I 
I 
I 
, 
~--~~---
+--( 
FIXUPP 
-------
I 
)<--+ 
--->( 
FIXUPP 
)--> 
~ote: 
Must 
contain 
thread 
fields 
only. 
9~ 
Page 97

808~ 
Object 
Module 
Formats 
APPENDIX 4 
Version 
4.9 
This 
supplemented 
Fixupsd. 
fixups 
in 
understandinq 
In 
the 
linker 
and 
Examples 
examples 
The 
of 
diaqrams 
appendix 
a 
paper, 
It 
is 
included 
pictorial 
the 
8086 
followinq 
LOCATE 
is 
of 
Self-relative 
the 
Seqment-relative 
are 
coded 
EXAMPLES 
was 
now 
originally 
obsolete, 
here 
represe~tation, 
fixup 
meehanisms. 
examples, 
name 
of 
fixu~s 
fixups 
KEY 
TO 
SAMPLe 
as 
follows: 
OF 
called 
because 
we 
a 
locater 
appear 
FIXUP 
FIXU~S 
written 
"Overview 
it 
and 
assume 
for 
a~pear 
in 
DIAGRAMS 
in 
provides 
therefore 
that 
the 
in 
PART 1 of 
PART 
November 
of 
copious 
LINK 
808~ 
2. 
is 
is 
R&L 
this 
1977, 
Proposed 
examples 
an 
the 
aid 
name 
system. 
appendix1 
and 
8086 
of 
to 
of 
a 
PPP 
LLL 
~~~ 
. . . 
indicates 
indicates 
indicates 
the 
the 
real 
boundary 
boundary 
memory 
of 
a 
PSEG 
of 
an 
LSEG 
boundaries 
Page 98

868~ 
Object 
~odule 
Formats 
Version 
4.a 
PART 
PPPPPPPPPPPPPPPPPPPPPP 
P 
p-
- -
p 
P 
p 
p 
P 
P 
P 
P  P 
p 
P 
p 
p 
P 
P 
P 
P  P 
P  P 
P 
P  P 
P 
p 
P 
P  P 
P 
P  P 
P 
P 
P  P 
P 
P  P 
PPPPPPPPPPPPPPPPPPPPPP 
-
+------~------+ 
TARGET 
+-----~ 
+--~.----------+ 
LOCATION 
+ .......... ~-.... 
-
-
-
.. -... --.. 
-----
-
--
-+ 
.. + 
1. 
p 
P 
P 
p 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
SELF-RELATIVE 
PSEG 
P 
p 
p 
P 
P 
P 
P 
P 
P 
<-
<-
<-
-> 
PP 
PT 
REFERE~CES 
, 
I 
PPPPPPPPPPlppppPPPPPPP 
P 
p-
- -
p 
P 
P 
+ 
.. 
P 
P 
P 
P 
P 
P 
~ 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P  P 
P 
P 
P. 
P 
P 
pppppppp~ptppPP?PPPPPP 
_-_ 
LOCATION 
+_ 
.. 
_-------_ 
+-------------+ 
+-------------+ 
I 
-1-
-
I 
, 
I 
.... 
__ 
TARGET 
, 
I 
I 
t 
- - -
.. 
_---+ 
.... 
-
_+ 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
P 
p 
p 
P 
P 
P 
P 
<-
<-
PP 
PT 
PP 
-
point 
PT -point 
If 
diaqrams, 
distance 
and 
is 
commonly 
98 
defininq 
defining 
the 
then 
between 
PSEG, 
the 
positions 
the 
arrows 
the 
zero. 
usually 
TARG~T 
of 
would 
tepef 
an 
LSEG 
LOCATIO~ 
Doint 
the 
PSEG 
and 
down 
anrl 
TARGET 
instead 
point 
Pi? 
were 
of 
is 
exchanqerl 
UP. 
less 
than 
in 
~ote: 
1~ 
bytes, 
the 
The 
Page 99

909~ 
1 
Self-Relative 
Object 
Module 
Intraseq~ent 
Formats 
References 
LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL 
L  L 
L  L 
L  L 
L 
L 
L 
L  L 
L  L 
L  L 
+--------------+ 
+----~----~---~+ 
TARGET 
L 
L 
L 
L  L 
L  L 
L  L 
L  L 
L 
L  LOCATION  L  
L 
L  I  L 
L  I  L 
L  I  L 
L  I  L 
+--------~--------~-+ 
+~--------~---------+ 
L 
L 
L  V  L 
L 
L 
L 
+--------------+ 
TARGET 
+-~~~----------+ 
L 
L 
L 
L  L 
L  L 
L  L 
L  L 
L  L 
L  L 
L  L 
LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL 
Version 
4.0 
fixup, 
Self-Relative 
the 
translator 
references 
puts 
the 
within 
appropriate 
a 
sin~le 
value 
LSEG 
into 
no 
not 
LOCATION. 
require 
a 
99 
Page 100

808~ 
Object 
Module 
Formats 
Version 
4.1 
1.2 
Self-Relative 
Example: 
LLLLLLLLLLLLLL 
A 
L 
L 
L 
L 
L 
L 
L 
LLLLLLLLLLLLLL 
Both 
FIXUP. REPRESENTATION: 
LSEG's 
-
.. 
--
Self-relative 
+--_ 
LOC 
+--.-------+ 
--_.-
Interseqment 
...... 
_--+ 
,-----~-------
are 
created 
-. 
References 
jump 
<-
L  L 
L 
L 
L 
L  L 
L  L 
in 
or 
call 
pp 
I 
---------->1 
the 
S~Me 
to 
B 
LLLLLLLLLLLLLL 
L 
L  L 
L 
LLLLLLLLLLLLLL 
translation. 
another 
+--------+ 
TARGET 
+~-----
segment. 
I 
... 
-+ 
L 
L 
L 
L 
L 
L 
, 
dl 
I 
V 
<-
P'E 
LINK. 
above 
LOCATION:  OFFSET 
P5EG: 
TARGET: 
OPERATION: 
If 
L5EG  B 
form 
by 
a' 
B 
51 
(A) 
SI(B) 
or 
51 
combines 
chanqinq 
(thi 
,dl 
(B) 
SI(B) 
••••••.••••••• 
LLLLLLLLLLLLLL 
L 
L 
+--------+ 
, 
'fARGET 
L 
L 
+--------+ 
L 
L 
L 
LLLLLLLLLLLLLL 
(see 
, 
or 
sis 
diaqram 
then 
,dl 
• 
d2 
.. 
L 
dl 
V 
L 
L 
L 
L 
L 
L 
LOBYTE 
the 
the 
to 
I 
v 
=> 
most 
LINKER 
SI(8) 
B 
common 
and 
discussion 
will 
,dl+d2 
L 
L 
+--------+ 
, 
TARGET 
L 
L 
+--------+ 
L  L 
L  L 
L 
L  L  
LLLLLLLLLLLLLL 
cho 
ice) 
followinq 
modify 
L 
L 
L 
I 
L 
L 
all 
<-
fixups 
p'r 
LOCATE 
of 
OPE~ 
the 
InO