(("segment shift") (1 byte) ("segsh"))
(("entry point") (1 byte) ("ep"))
(cond "ptr->ep"
- (cond "ptr->mt != MTYPE_ABS_LM"
+ (cond "ptr->mt != MTYPE_ABS_LM"
(("unit appearance number") (2 bytes) ("uan"))
(("section appearance number") (2 bytes) ("sa")))
(cond "segmented_p"
("sc" 0x08
- (("format") (2 bits) ("format"))
+ (("format") (2 bits) ("format"))
(("spare") (6 bits) ("spare"))
(("segment address") (segsize bytes) ("segadd"))
(("address") (addrsize bytes) ("addr"))
("ss" 0x09
(("neg number") (2 bytes) ("neg")))
-
+
("er" 0x0c
(("symbol type") (2 bits) ("type")
(("ER_ENTRY" "0")
("ER_NOTSPEC" "3")))
(("spare") (6 bits) ("spare"))
(("symbol name") (chars variable byte) ("name")))
-
+
("ed" 0x14
(("section appearance number") (2 bytes) ("section"))
(cond "ptr->cpf"
(("comp reps") (addrsize bytes) ("compreps")))
(("data") (barray counted byte) ("data")))
-
+
("rl" 0x20
- (("boundary of relocateable area") (4 bits) ("boundary"))
+ (("boundary of relocatable area") (4 bits) ("boundary"))
(("address polarity") (1 bit) ("apol"))
(("segment number") (1 bit) ("segment"))
(("sign of relocation") (1 bit) ("sign"))
("OP_EXT_REF" "2")))
(cond "ptr->op == OP_EXT_REF"
(("symbol number") (2 bytes) ("symn")) )
-
+
(cond "ptr->op == OP_SEC_REF"
(("section number") (2 bytes) ("secn"))
(("const opcode") (1 byte) ("copcode_is_3"))
(("dunno") (2 bytes) ("dunno")))
(("end") (1 byte) ("end")))
-
+
("du" 0x30
(("format") (2 bits) ("format"))
(cond "ptr->type == STYPE_TAG"
(("magic") (1 byte) ("magic"))))
-
+
("dul" 0x52
(("max declaration type flag") (1 bit) ("max_variable"))
(("minimum") (addrsize bytes) ("min"))))
(("negotiation") (2 bytes) ("neg")))
-
+
("dso" 0x3a
(("function name") (2 bytes) ("sid"))
(("sp update count") (4 bytes) ("spupdates"))
(("call count") (2 bytes) ("cc"))
)
(("neg") (2 bytes) ("neg")))
-
+
("dpp" 0x46
(("start/end") (1 bit) ("end"))
(("spare") (7 bits) ("spare"))
(("rules") (chars variable byte) ("rules"))
(("number of symbols") (2 bytes) ("nsymbols"))
(("unknown" ) (2 bytes) ("fixme")))
-
+
("pss" 0x40
(("negotiation number") (2 bytes) ("efn"))
(("number of source files") (2 bytes) ("ns"))
(("directory reference bit") (1 bit) ("drb"))
(("spare") (7 bits) ("spare"))
(("completed file name") (chars variable byte) ("fname"))
- (cond "ptr->drb[n]"
+ (cond "ptr->drb[n]"
(("directory apperance number") (2 bytes) ("dan"))))
-
+
(("number of directories") (2 bytes) ("ndir"))
(repeat "ptr->ndir"
(("directory name") (chars variable bytes) ("dname"))))
-; FIXME: the tr block has no contents. sysinfo, etc. aren't prepared
+; FIXME: the tr block has no contents. sysinfo, etc. aren't prepared
; to deal with that.
; ("tr" 0x7f)
(("directory reference bit") (1 bit) ("drb"))
(("spare") (7 bits) ("spare"))
(("completed file name") (chars variable byte) ("fname"))
- (cond "ptr->drb[n]"
+ (cond "ptr->drb[n]"
(("directory apperance number") (2 bytes) ("dan"))))
(("number of directories") (2 bytes) ("ndir"))
(repeat "ptr->ndir"
(("address") (addrsize bytes) ("address"))
(("block size") (addrsize bytes) ("block_size"))
(("nesting") (1 byte) ("nesting"))
- (cond "ptr->type == BLOCK_TYPE_PROCEDURE
+ (cond "ptr->type == BLOCK_TYPE_PROCEDURE
|| ptr->type == BLOCK_TYPE_FUNCTION"
(("return address") (1 bit) ("retaddr"))
(("interrupt function flag") (1 bit) ("intrflag"))