Trailing-Edge
-
PDP-10 Archives
-
BB-FI82B-DD_1989
-
5,14/dmp4.doc
There are 7 other files named dmp4.doc in the archive. Click here to see a list.
DUMP.DOC -- Changes from V2 to V4
March 1979
COPYRIGHT (C) 1972,1978,1979 BY
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
TRANSFERRED.
THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
CORPORATION.
DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
DUMP.DOC Page 2
1.0 SUMMARY
This release adds a large number of new commands and fixes the large
number of bugs in previous versions of DUMP. some of the major new
features are: symbolic mode for dumping a program with symbols. The
output formatting logic has been improved and now works. Also, a
users guide has been written (DMPREF.RNO) and included in the Software
Notebooks.
DUMP Version 4 runs on all monitor. It has been tested on 5.03b,
5.04a, 5.05 and 5.06. DUMP Version 4 depends on c Version 4, SCNMAC
Version 3, SCAN Version 3 and HELPER Version 2. DUMP should operate
with all versions of DAEMON, however, testing was done with DAEMON
Version 6. there are a number of features in the DUMP design
specification which have not yet been implemented.
DUMP Version 4 is documented in the Software Notebooks. DUMP.RNO is
the formal specification for DUMP and DMPREF.RNO is a basic reference
Manual for DUMP. a copy of DMPREF.RNO is included as an appendix to
this file.
DUMP is a program to dump an arbitrary file in a printable format.
DUMP is flexible enough to allow the user to specify the exact format
for the dump or DUMP can automaticly format the dump for the user.
DUMP.DOC Page 3
2.0 CHANGES
Edits 2 thru 157 in no special order:
A AC'S were changed as follows:
F was moved from 7 to 12
V was eliminated
N was moved from 14 to 7
M was moved from 15 to 11
C was moved from 16 to 10
FM was added as 13
DL was added as 14
B ASCII and sixbit output modes were redefined as follows:
ASCII is a single right justified character if bits 0 to 28 are all
zero. it is 5 left justified characters if bits 0 to 28 are non-zero.
control characters print as blanks. sixbit is a single right adjusted
character if bits 0 to 29 are zero. if bits 0 to 29 are not zero it
is treated as 6 sixbit characters.
C the TDUMP command has been implemented to DUMP to both TTY:
and output file.
D definition of double quote has been corrected. it was defined
as 41 should be 42.
E MACRO definitions were moved from DUMP.MAC to SCNMAC.MAC.
F the following single letters were made to match commands:
D is unique for DUMP
I input
M mode
O output
T TDUMP
G tables and calls were modified to use SCAN not scanner.
H a table of absent defaults was built for pre-setting switches.
I the following built in symbols have been created:
. the address of the last word typed out.
$ the last byte typed out
% the last value the expression evaluator
returned.
J DUMP now looks for CCL files in TMPCOR prior to looking on
disk.
K SCAN is used instead of scanner
L the /type switch applies to each input file specified (input
file and symbol file)
DUMP.DOC Page 4
M numbers were changed to symbolic definitions. some symbols are
defined in C.MAC.
N the TITLE command was made to work
O poor and non-working code used for storing lists was corrected.
P the input character AC (C) has the following possible states:
-2 end of file
-1 end of line (lf-vt-ff)
0 escape
1-177 ASCII character
200 DUMP buffer on output
Q a case where dump would loop forever has been corrected. this
was caused by the index overflowing.
R width, justify, and mode lists were implemented.
S special patterns in strings now work correctly.
T quoted strings now work correctly. the following fixes were
involved:
1) End of line gets you out of quoted string mode. however, a closing
quote is required on all well formed strings.
2) ; Has no effect in a quoted string
3) Multiple spaces and tabs are preserved
U " has been added as an operator meaning take the left half word
and move it to the right half extending the sign bit. this is useful
for printing out blocks pointed to by IOWD'S.
V CPOPJ has been changed to .POPJ and CPOPJ1 has been changed to
.POPJ1. both routines have been moved to scan.
W the numeric input routine has been fixed to work for numbers
which fill all 36 bits. prior to this fix 777777777777(8) was changed
to 377777777777(8) during octal input
X the input routines were converted to read a symbol file.
Y full sub-file directory support has been added.
Z JOBDAT symbols have been changed from JOBXXX to .JBXXX
AA the file reading routines read the first block of the file.
prior to this fix if the first word of the file was requested the
read-in routines would think the block was in core and return zero.
BB the output formatter has been rewritten to fix several bugs.
in addition the following external changes have been made:
1 "word not in file" prints instead of
"\\\\".
2 negative addresses list as such.
3 after attempting to print nxm a referance
DUMP.DOC Page 5
to an existant location must be made to
resume printout.
4 radix 50 is now a supported mode
5 octal now prints in fixed format of
XXXXXX,XXXXXX
6 a line is never split between the minus
sign
and the number.
7 locations may be printed out as symbolic
instructions.
CC negative numbers print out as -number and not a sequence of
special characters.
DD address are now followed by /TAB> not /SPACE>
EE the SYFILE command specifies a file for a symbol table.
FF the XTRACT command reads the symbol file looking for DDT'S
symbol table pointer and extracting the symbol table.
GG symbols are now accepted on type-in. if the symbol is
multiply defined it must be preceded by a program name. E.G.
DUMP:EXPSYM
HH symbols are available for type out in symbolic instructions.
II a permutation vector is computed for the symbol table. this
allows a binary search of the symbol table when looking for a symbol
matching a value.
edits after 157:
161 fix lchr to handle TAB> correctly. prior to this edit it
considered TAB> a single print position.
162 make 20 thru 24 illegal in a listing file. only end of line
now valid are form feed, line feed and vertical tab.
163 make FNDADR return NXM if address is negative
164 remove junk after the not in file message
165 scan symbol table for opcodes after trying built in table
166 reload T1 after call to VAL2SY if we want numeric output.
167 do not output nulls
170 remove loc/ from blank lines.
171 clean up listing
172 improve FNDDAE to:
1. return NXM if address is .gt. 777777
2. return NXM if address is between low
DUMP.DOC Page 6
and high segs
3. remember first 200 words of core image
174 add code to make looking for a daemon category independent of
the order in which the categories are written
200 cleanup NXM message, fix bad logic, random fixes to the
listing.
203 AC'S do not contain the right values. buffer is remembered
from symbol file which is not right. fix: do not load buffer during
xtract command.
204 ill mem ref at cmpred caused by calling cmpred wrong. fix:
call correctly and fix the comments on cmpred.
205 part of listing missing. add a list PSEUDO-OP
206 the present defaults have been changed for several commands.
the new present defaults are:
ADDRESS ON
AUTOFORMAT ON
NUMPAGE 1
Note: A present default is the default when the switch is given
without an argument.
207 input, output, syfile etc. without an argument are now
ignored. prio to this edit they caused a halt.
210 the close command now clears the file open bit. it also
forces append mode.
211 the all command can now be terminated by an ESC>
212 fix .hgh and .shr files to dump correctly. this involves
starting the /all switch at the right place and making all addresses
below the hiseg nxm.
214 " operator given more precedence. also hrl changed to hlr as
intended.
215 datred now looks for errors
216 sometimes the numbers do not line up. crlf gets output in
pad field. cure: see if crlf needed and put out first if it is
required at all.
217 if an input command is given prior to a syfile command the
input file name is used as the default for xtract.
220 1b0 does not get output correctly. fix: make radix printer
add one so movm will return a positive number.
DUMP.DOC Page 7
221 titles do not work quite right. fix: make the special
pattern FF> call newpag.
222 call oscan to read user specific defaults. this is a file in
the users area called switch.ini which contains a list of switches on
a line begining with dump.
example:
DUMP /IRADIX:10/ORADIX:10/MODE:NUMERIC
DUMP:OCT /IRADIX:8/ORADIX:8/MODE:NUMERIC
DUMP:DEC /IRADIX:10/ORADIX:10/MODE:NUMERIC
This will set the defaults for IRADIX and ORADIX to 10 whenever DUMP
is invoked. In addition the command "OPTION OCT" will set the
defaults to octal and the command "OPTION DEC" will set the defaults
back to decimal. at some point in the future all DECSYSTEM-10
programs will read SWITCH.INI to get user specific defaults.
223 ignore spaces next to &
224 if a line ends in the middle of a quoted string ^? sometimes
gets printed. fix: test for end of line more often. ***NOTE: A
well formed string must end with a quote.
225 CALLI'S do not print correctly. fix: add devsts to table.
226 if an I/O error took place on a close command user got the
wrong error message. fix: test right half of status
227 any file which is less than 8 blocks long and is not in
compressed format looked zero when the first word was examined. fix:
load T1 with word from buffer prior to looking for errors. if an
error took place it will not cause wrong typeout.
230 the XTRACT command did not work correctly with more than 1
input file. fix: add current size of symbol table when asking for
core.
231 left margin works on TTY: not on LPT:. DIAGNOSIS: line
feed comes out after spaces. fix: put out line feed first.
32 change mode to modes in command table. remove listab.
3.0 KNOWN BUGS AND DEFICIENCIES
Some commands have not yet been coded.
DUMP.DOC Page 8
4.0 CHANGES IN INSTALLATION INSTRUCTIONS
Version 3 of QUIKDM.CCL should be place on device SYS:.
DUMP Page 9
DUMP REFERENCE MANUAL
Date: 15-Aug-72
File: DMPREF.RNO
Edition: 1
The information in this document is subject to change without notice
and should not be construed as a comitment by Digital Equipment
Corporation. Digital Equipment Corporation assumes no responsibility
for and errors that may appear in this document.
The software described in this document is furnished under a license
and may be used or copied only in accordance with the terms of such
license.
Digital Equipment Corporation assumes no responsibility for the use or
reliability of its software on equipment that is not supplied by
DIGITAL.
Copyright (C) 1972,1977,1979 by Digital Equipment Corporation
The following are trademarks of Digital Equipment Corporation:
DIGITAL DECsystem-10 MASSBUS
DEC DECtape OMNIBUS
PDP DIBOL OS/8
DECUS EDUSYSTEM PHA
DUMP Page 10
UNIBUS FLIP CHIP RSTS
COMPUTER LABS FOCAL RSX
COMTEX INDAC TYPESET-8
DDT LAB-8 TYPESET-10
DECCOMM DECsystem-20 TYPESET-11
DUMP Page 11
1.0 Introduction 3
2.0 Expressions and Symbols 3
3.0 Commands to Dump 4
ADDRESS 5
ALL 6
APPEND 7
AUTOFORMAT 8
CATEGORY 9
CLOSE 10
DUMP 11
EJECT 13
EXIT 14
HELP 15
INPUT 16
IRADIX 17
JUSTIFY 18
LEFTMARGIN 19
LINEPAGE 20
MODES 21
NUMPAGE 22
ORADIX 23
OUTPUT 24
RIGHTMARGIN 25
RUN 26
SUPERSEDE 27
SYFILE 28
TDUMP 29
TITLE 30
TYPE 31
WIDTH 32
XTRACT 33
4.0 Error Messages 35
4.1 Monitor Error Messages on DUMP or DCORE 35
4.2 DAEMON Error Messages on DUMP or DCORE 35
4.3 Messages From DUMP 36
4.4 System Error Messages 37
4.4.1 Messages From DAEMON 37
4.5 SCAN Error Messages 37
5.0 How to Make a Daemon Dump File 38
5.1 The DCORE Command 38
5.2 The DUMP Command 38
5.3 The .DCORE Function of CALLI DAEMON 39
6.0 Format of a Daemon Dump File 40
6.1 The Job Category 40
6.2 The Configuration Category 41
6.3 The DDB Category 41
6.4 The Core Category 41
6.5 The Feature Category 42
DUMP Page 12
1.0 INTRODUCTION
DUMP is a program that converts a file to a format suitable
for human understanding.
A file is nothing more than a collection of bits. Any
meaning given to those bits must be supplied by the reader.
DUMP provides a language for describing the format of a file
and various routines for printing out the file.
DUMP "knows" about some formats of files (.DAE, .SAV, .SHR,
...); however, any format of file may be dumped.
DUMP can be used with the monitor and the DAEMON program to
provide dumps of the user's core area and his job
environment.
This is a reference manual, not a "getting started with..."
However, if the novice user reads the manual and tries DUMP,
he will soon become a dump expert.
2.0 EXPRESSIONS AND SYMBOLS
Any place in a command where a number can be used, an
expression can be used.
The following operators are valid in an expression:
^ - power (2^3 is 8)
* - muliply (2*3 is 6)
/ - integer divide (2/3 is 0 3/2 is 1)
+ - addition (2+3 is 5)
- - subtraction (2-3 is -1)
- - unary minus (-(2+3) is -5)
" - half word left to right and extend operator.
This takes the left half of a 36 bit byte and
places it in the right half. If the number
was negative, the left half is set to ones;
if the number was positive, the left half is
set to zero.
("(-1) is -1, and "1 is 0)
In addition, there are 3 unary "contents of" operators
[ - The contents of the argument, e.g., [17 has
the value of the seventeenth word of the file.
\ - The contents of the right half of the
argument. \17 has the value of the right half
of the seventeenth word.
@ - The contents of the word addressed by the
right-most 23 bits of the argument. The
DUMP Page 13
argument address, including indexing and
indirect evaluation.
N.B. When [, \, or @ are nested, the PDP-10 addressing
modes apply with the first 16 words in the addressing space
used as AC's. Therefore @@@10 may give different results
from \\\10.
Symbols may be used in place of numbers (see the SYFILE and
XTRACT commands for information about loading symbols). A
symbol is of the form program:symbol where program is the
name of the program defining the symbol. If the symbol is
unique, the program name may be omitted.
The following symbols are built into DUMP:
. = The address of the last word dumped. This is
the location counter.
$ = The last byte typed out.
% = The last expression evaluated.
These will be overridden by the same symbol appearing in the
symbol table.
3.0 COMMANDS TO DUMP
DUMP notes its readiness by typing a slash(/).
The commands are listed in alphabetical order on the
following pages.
DUMP Page 14
ADDRESS
Specifies whether or not addresses will be dumped along with
their contents.
----------
EXAMPLE:
Assume word 10 of the current file contains 53 decimal.
/MODE DEC
/ADDRESS:ON
/D [10
would dump
10/ 53
/MODE DEC
/ADDRESS:OFF
/D [10
would dump
53
----------
NOTE:
1. The default is ON.
2. The output is an address followed by a slash and
then a tab.
DUMP Page 15
ALL
Dumps the entire file. When the file is a DAEMON core-image
file, the entire category is dumped.
----------
EXAMPLE:
/AL
/ALL
DUMP Page 16
APPEND
If the selected output file exists, new output is witten at
the end of the file. The old contents are not overwritten.
----------
EXAMPLES:
/APPEND
/AP
----------
NOTES:
1. APPEND is the default.
2. The command which turns off APPEND is SUPERSEDE.
3. This command should be issued prior to doing any
writing. It can be given before or after the
OUTPUT command.
DUMP Page 17
AUTOFORMAT
If AUTOFORMAT is on, DUMP will attempt to format the output
by inserting line feeds, form feeds, and titles where
needed. If AUTOFORMAT is off, the user must ensure that the
output is correctly formatted.
----------
EXAMPLES:
/AUTO ON
/AUTO OFF
/AU ON
----------
NOTES:
1. Unless the user wants to obtain a special result,
it is suggested that AUTOFORMAT should be left on.
2. The default is ON.
DUMP Page 18
CATEGORY
This command selects which category of a DAEMON dump file
will be used. Addressing begins with 0 at the beginning of
each category. Refer to Section 5.0 for a description of
DAEMON dump files.
----------
EXAMPLES:
/CAT JOB
/CAT CONFIGURATION
/CAT CON; same as configuration
/CAT DDB
/CAT CORE
/CAT FEATURES
----------
NOTES:
1. CORE is the default.
2. The CATEGORY command has no effect if the input
file is not a DAEMON dump file.
DUMP Page 19
CLOSE
Close the output file.
----------
EXAMPLES:
/CLOSE
/CL
----------
NOTES:
1. After a CLOSE command is given, another OUT command
should be given before the next command that does
any output.
2. A CLOSE not followed by another OUT command will
cause an error if any writing is attempted.
DUMP Page 20
DUMP DUMP descriptor>,DUMP descriptor>,...
Dumps the specified bytes in the current modes. A dump
descriptor is any of:
1. A string delimited by single quotes and containing
alphanumeric characters and special patterns.
EXAMPLE:
'THIS IS TEXT'
A special pattern is:
EL> - END LINE, (CR-LF)
VT> - VERTICAL TAB
FF> - FORM FEED
AL> - ALTMODE
HT> - HORIZONTAL TAB
^LETTER> - CONTROL CHARACTER
\LETTER> - LOWER CASE
EXAMPLE:
D 'LINE1EL>LINE2EL>HT>LINE3'
will generate
Line1
Line2
Line3
A leading double quote (") will cause the next character to
be taken literally.
EXAMPLE:
D 'THIS IS A QUOTE "" AND AN ARROW "^'
will generate
THIS IS A QUOTE " AND AN ARROW ^
2. A byte descriptor of the form:
WORDPOS,SIZE>
WORD is the address of a word.
POS is the position of the byte. It is the bit
number of the leftmost bit in the byte.
SIZE is the number of bits in the byte.
EXAMPLES:
63,2> specifies bits 3 and 4 in word 6.
DUMP Page 21
50,11> specifies bits 0 thru 10 in word 5.
227,18> specifies bits 27 thru 35 in word 2 and
0 thru 8 in word 3. That is an 18 bit
byte split over word boundries.
27 specifies all of word 27.
3118> specifies bits 0 thru 17 of word 31.
3. FROM byte-descriptor> & TO byte-descriptor>
This specifies everything from the first byte descriptor
to the second byte descriptor.
Examples:
/D [0&1000 dump from 0 to 1000
/D [0&[.JBREL dump from 0 to the word whose
address is in .JBREL
/IR 8
/D [0&[44 dump the entire low segment
Although numbers were shown in the previous examples, a dump
descriptor can consist of any valid expression.
EXAMPLES:
6+7
2*2+4
(3+5*6)(4+3),(3*3)>
DOG-CAT
4. The letter D may be used as an abbreviation of DUMP.
5. Each DUMP command starts a new line.
DUMP Page 22
EJECT
Skips to a new page.
----------
EXAMPLE:
/EJECT
/EJ
DUMP Page 23
EXIT
Close all files and return control to the DECsystem-10
monitor.
----------
EXAMPLE:
/EXIT
.
DUMP Page 24
HELP
Copies the HELP text from SYS: to the user's terminal.
----------
EXAMPLES:
/HELP
----------
NOTES:
1. /HELP SWITCHES will list the names for all the
switches.
2. The letter H may be used as an abbreviation for
HELP.
DUMP Page 25
INPUT
Selects an input file.
----------
EXAMPLE:
/IN
/IN ABC
/IN DSKB0:ABC.DAE[10,251,SFDX]
----------
NOTES:
1. The default file name is nnnDAE. Where nnn is the
job number.
2. Dump will look for the following extensions:
.TMP,.DAE,.SHR,.SAV,
.HGH,.LOW,.XPN,.DMP
in that order.
3. The letter I may be used as an abbreviation for
INPUT.
DUMP Page 26
IRADIX
This command sets the input radix. WARNING, the IRADIX
command uses decimal. The argument cannot be an expression.
----------
EXAMPLES:
/IR 8 ;Go from decimal to octal
/IR 10 ;Go from octal to decimal
----------
NOTES:
1. If an IRADIX command is given without an argument
or with an argument of 0, the input radix is set
back to its default value.
2. The default is 10 (decimal).
DUMP Page 27
JUSTIFY
This takes a key-word argument of LEFT, CENTER, or RIGHT and
specifies how the output should be justified. [Refer to the
MODES and WIDTH commands.]
----------
EXAMPLES:
/JUST L,L,C,R
/JUST LE,LEF,LEFT,C,CE,CEN
----------
NOTES:
1. JUSTIFY keys are used in a one to one relation with
MODE and WIDTH keys. If there are more MODE keys
than JUSTIFY keys, LEFT will be used. If there are
more JUSTIFY keys, the extra keys will be ignored.
DUMP Page 28
LEFTMARGIN
Sets the left margin.
----------
EXAMPLES:
/LEFT 7
/LEFT 1+2+6/3
/LEFT MAIN.:LEFTX
----------
NOTES:
1. The default is 0.
DUMP Page 29
LINEPAGE
Sets the number of lines per page.
----------
EXAMPLE:
/LINE 50
----------
NOTES:
1. The default is 50.
2. This counts all lines including blank lines and
titles.
DUMP Page 30
MODES
Selects a list of output modes from:
ALL - Dump in all modes.
ASCII - Dump the byte in ASCII. If bits 0 thru 28 are
zero, the word is dumped as a single right
justified character. If bits 0 thru 28 are
non-zero, the word is dumped as 5 ASCII
characters. Non-printing characters print as
spaces.
DECIMAL - Dump as a signed decimal number.
NULL - Do not dump anything.
NUMERIC - Dump as a signed number in the current ORADIX.
OCTAL - Dump as 12 octal digits. This mode always takes
13 positions. (6 digits, a comma, 6 digits).
RADIX50 - Dump in RADIX50.
SIXBIT - Dump as 1 SIXBIT character if bits 0 thru 29 are
zero. Otherwise, dump as 6 SIXBIT characters.
SOCTAL - Dump as signed octal. This mode suppresses
leading zeros.
SYMBOLIC - Dump as a symbolic instruction.
----------
EXAMPLES:
M ASC,SIX,NUL,RAD,SIX
MODE ASCII,SIXBIT,NULL,RADIX50
MODE OCT
----------
NOTES:
1. A mode may be repeated in the list.
2. The output is in the same order as the mode list.
3. MODES has no control over what is listed on a
single line.
4. The MODES command may be abbreviated as M.
5. The default mode is OCTAL.
DUMP Page 31
NUMPAGE
Starts numbering pages. If the argument is 0, page
numbering is turned off.
----------
EXAMPLES:
/NUM 10
/NUM 0
DUMP Page 32
ORADIX
Selects the output radix. WARNING: the ORADIX command uses
decimal. The argument cannot be an expression.
----------
Examples:
/OR 10
/OR 2
----------
NOTES:
1. The default is 10.
DUMP Page 33
OUTPUT
Selects the output file.
----------
Example:
/OUT DSK:LEMON
/OUT S55123[10,1,DUMP]
----------
1. The default file name is nnnDAE.LSD. Where nnn is
the job number.
2. The default device is LPT if no file name is typed,
and DSK if a file name is typed.
3. The letter O may be used as an abbreviation for
OUTPUT.
DUMP Page 34
RIGHTMARGIN
Sets the right margin. If a field would exceed this limit,
inserts a carriage-return, line-feed and spaces to the left
of any printing before dumping the field.
----------
EXAMPLES:
/RI 72
/RIGH 100
/RIGHT (8*8)/(15+2)
----------
NOTE:
1. If a field will not fit between the left and right
margins, it is allowed to overflow the right
margin.
2. If ADDRESS:ON is in effect, the new line will have
an address typed on it. If a page overflow took
place a title line may also be printed.
DUMP Page 35
RUN
This command runs some other program. It is the same as the
R command in the monitor.
----------
EXAMPLES:
/RUN:PIP
/RUN LOGOUT
DUMP Page 36
SUPERSEDE
If the output file already exists, it is overwritten by the
new output file.
----------
EXAMPLES:
/SUPER
/SUP
----------
NOTES:
1. The opposite of SUPERSEDE is APPEND.
2. APPEND is the default.
3. This command should be issued prior to any writing.
It may be given before or after the OUTPUT command.
DUMP Page 37
SYFILE
Selects a symbol file for the XTRACT command.
----------
EXAMPLES:
/SYF DSKB:SYSTEM.SAV[1,4]
/SYF DUMP.LOW
/SYF DSKD:S50273.XPN[10,1]
----------
NOTES:
1. Defaults are the same as those for the INPUT
command.
DUMP Page 38
TDUMP
Same as the DUMP command except that it also dumps on TTY:.
----------
EXAMPLES:
TD 'AC17',[17,'AC2',[2
TD [0&17
----------
NOTES:
1. Refer to the DUMP command.
2. The letter T may be used as an abbreviation for
TDUMP.
DUMP Page 39
TITLE
Specifies a title to be included in all subsequent page
headings.
----------
EXAMPLES:
/TITLE DUMP OF LOWSEG
/TITLE DUMP OF DDB CHAIN
/TITLE NMB'S ON THIS UFB
----------
NOTES:
1. TITLE with no argument turns off titling.
2. After a title command is given, an EJECT command
should be given to skip to a new page.
DUMP Page 40
TYPE
Specifies that the format of the input is one of the
following:
DAE -DAEMON dump file
DAT -Unspecified data (no special processing is
done)
HGH -High segment
LOW -Low segment
SAV -Save file
SHR -Shareable high segment
XPN -Expanded format
----------
EXAMPLE:
/TYPE DAT
----------
NOTE:
1. If the input file has one of the above types as an
extension, that is the default. Otherwise, DAE is
the default.
DUMP Page 41
WIDTH
Selects the width that each output mode will occupy. Refer
to the MODE and JUSTIFY commands.
----------
EXAMPLE:
/MOD SYM,OCT,RADIX50,SIX,ASCII
/WID 30,15,10,10,10
/JUS L,R,R,R,R
/RIGHT 8+2*(30 +15 + 10 + 10 + 10)
This will print each byte dumped as: a symbolic instruction
left justified in a 30 character field; an octal number
right justified in a 15 character field; and RADIX50,
SIXBIT, and ASCII each right justified in a 10 character
field. The RIGHTMARGIN command will insure 2 words are
printed per line (the 8 is an allowance for the address).
----------
NOTES:
1. WIDTH without any argument will turn off filling
and justification.
2. If a mode is specified without a corresponding
width, the byte is dumped in exactly the number of
positions required followed by 3 blanks.
3. If a width is specified, no free blanks are output.
(e.g. MODE ASCII and WIDTH 5, will dump ASCII
without any spaces between words).
4. If a MODE overflows its WIDTH, the entire output is
given and no justification takes place.
DUMP Page 42
XTRACT
Uses the file specified by the last SYFILE command as a core
image and extracts the symbol table left by the loader and
adds that to the symbol table in core.
----------
EXAMPLE:
/SYFILE DSK:KSYS.DAE
/XTRACT
4293 symbols extracted
----------
NOTES:
1. To cause the loader to leave a symbol table, use
loader switches /S/B or /S/1B to load the symbol
table into the low or high segment respectively.
DUMP Page 43
The following commands are reserved for future versions of
DUMP:
BEGIN
COFILE
COMPARE
DELSYM
DENSITY
DO
END
IF
INDEX
INSTRUCTION
IOFFSET
LISTAB
OOFFSET
OKNONE
PAGELIMIT
PARITY
PHYSICAL
POP
PROGSYM
PROTECTION
PUSH
RUNOFF
SKPBLOCKS
SKPFILES
STRS
SORT
SUBTITLE
SYMBOL
TABSYM
TCOMPARE
TSORT
DUMP Page 44
4.0 ERROR MESSAGES
4.1 Monitor Error Messages on DUMP or DCORE
?DAEMON NOT RUNNING
The DAEMON program must be started by the operator to allow
the DCORE or DUMP commands to function.
4.2 DAEMON Error Messages on DUMP or DCORE
?CANT OPEN DEVICE DEV>
The selected device is not available or does not exist.
?YOU DONT HAVE PRIVILEGES TO WRITE TYPE> file
The selected file (CCL or DAEMON) is protected.
?ENTER FAILURE N> ON CCL FILE
The CCL file for DUMP cannot be entered.
?DAEMON FILE MUST BE WRITTEN ON DISK
The DCORE device must be a disk device.
?LOOKUP/ENTER FAILURE N> ON DAEMON FILE
The lookup or enter monitor call failed with the indicated
code. Refer to the Monitor Calls manual for a description
of the error codes.
?PLEASE LOG IN AS [OPR]
Only the operator can type ".R DAEMON" to start the DAEMON
program.
%SWAP READ ERROR UNIT DISK> STATUS=N>
An I/O error took place reading the swapping space. The
data is written into the DAEMON file as read.
?INPUT/OUTPUT ERROR, STATUS=N>
An error occurred during the creation or updating of the
DAEMON file.
DUMP Page 45
4.3 Messages From DUMP
?INPUT ERROR STATUS =N>
An error occurred while DUMP was reading the input file. A
new IN command will cause another LOOKUP to be done.
%LISTING DEVICE OUTPUT ERROR, STATUS N>
An error took place while DUMP was writing the output file.
A new OUT command may be given to select a new file, or an
OUT command and an APPEND command may be given to try again.
?COMMAND> NOT CODED
The selected command is not in this version of DUMP.
?CANT EXPAND TABLE TABLE>
There is not enough core to expand the selected table.
SYMTAB is the symbol table and SYVTAB is a permutation
vector used for symbolic typeout.
?SYNTAX ERROR
The expression evaluator could not evaluate an expression.
Check for wrong parentheses or 2 operators in a row.
?MAX =N>
An argument was too large.
?CANT ENTER OUTPUT FILE N> FILE>
DUMP cannot enter the output file, the error code is n.
?NXM ADDRESS>
While DUMP was evaluating an expression, a "contents-of"
operator was encountered, but the selected word was not in
the file.
?LOOKUP FAILURE FOR INPUT FILE - CODE n> FILE>
DUMP can't read the input file.
?SYMBOL> IS AN UNDEFINED SYMBOL TABLE NAME
The symbol table specified has not been loaded with an
XTRACT command.
?WRONG FORMAT FOR SYMBOL
A colon (:) must be followed by a symbol.
?SYMBOL> IS AN UNDEFINED SYMBOL
The symbol is not in DUMP's symbol table.
SYMBOL> IS A MULTIPLY DEFINED LOCAL
The symbol is in more than one symbol table with different
values.
4.4 System Error Messages
DUMP Page 46
All these messages indicate that there is an error in the
system. They may indicate that a monitor which will not
support DAEMON is being run.
4.4.1 Messages from DAEMON
? ATTACH TO USERS JOB FAILED
? CANT GET USER'S PPN
? DETACH UUO FAILED
? JOBPEK UUO REQUIRED, NOT IMPLEMENTED
? CANT GET SWAPPING PARAMETERS
? DSKCHR FAILURE N> UNIT DISK>
? CANT OPEN SWAP UNIT DISK>
? CANT GET SWAPPING POINTER FOR JOB N>
? TRIED TO OVERWRITE DATA WORD
4.5 SCAN Error Messages
Many of the messages from SCAN can be provoked.
DUMP Page 47
5.0 HOW TO MAKE A DAEMON DUMP FILE
A DAEMON file is a file that contains information about a
job (job tables, monitor information, file status and a
complete core image).
A DAEMON file is written by a program called DAEMON. This
program runs as an operator service program and is poked by
the monitor when a user requests DAEMON service. DAEMON
then copies the user's core image into a file.
5.1 The DCORE Command
This command causes a DAEMON file to be written but does not
alter the state of the job in any way.
Format:
.DCORE dev:file.ext[project,programmer]
This command will write a DAEMON file on the specified
device with the selected filename.
Defaults:
dev: DSK:
file nnnDAE where nnn is your job number.
ext if a filename was typed, .DAE;
otherwise, .TMP.
[p,pn] The number you are logged in under, not
your default path.
5.2 The DUMP Command
This command writes a DAEMON file with the name nnnDAE.TMP.
It then runs the DUMP program.
Format:
.DUMP /command/command/command
or
.DUMP @dev:file.ext[p,pn]
The switches on the DUMP command are passed to the DUMP
program. An indirect file may be specified.
Defaults:
If no argument is typed @SYS:QUIKDM.CCL is used.
DUMP Page 48
Normal execution of this command with no arguments (i.e.,
implying use of SYS:QUIKDM.CCL) causes two files to be
created in the user's area: nnnDAE.TMP and ??????.LPT, the
first is the core image file and the second is the listing
file to be queued and deleted; return is then made to the
user at monitor command level.
5.3 The .DCORE Function of CALLI DAEMON
This is a method for taking a snapshot dump of a running
program. The call is:
CALLI AC,102
error return
normal return
and AC contains:
XWD LENGTH,BLOCK
and block contains:
BLOCK/ 1 ;FUNCTION
BLOCK+1/ SIXBIT/DEV/
BLOCK+2/ SIXBIT/FILE/
BLOCK+3/ SIXBIT/EXT/
BLOCK+4/ PROTECTION>B8
BLOCK+5/ PPN
If a word in the block (except the function) is missing or
zero, the default is substituted. The default is the same
as that of the DCORE command.
On the normal return, the file was written.
On the error return, AC will contain one of the following
codes:
unchanged UUO not implemented or
DAEMON not running
1 DMILF% illegal function
2 DMACK% address check
3 DMWNA% wrong number of arguments
4 DMSNH% something which should never happen
just did.
5 DMCWF% can't write file
6 DMNPV% no privileges
7 DMFFB% fact format bad
10 DMPTH% invalid path specification
6.0 FORMAT OF A DAEMON DUMP FILE
DUMP Page 49
A DAEMON dump file consists of five categories (job,
configuration, DDB, core, and features). Each category
begins with two header words; the first contains the
category number (1 for job, 2 for configuration...), and the
second word contains the number of data words in the
category. DUMP treats each category as a file, and
addresses within that category start at zero. The user
cannot examine the category header. It is also impossible
to read past the end of one category into the next category.
NOTE: The categories may be in any order.
6.1 The Job Category
This category contains information about the job obtained by
the use of the GETTAB UUO. The following table lists the
information in the job category. The first 2 columns list
the address in octal and decimal. The third column gives
the contents and the fourth column gives the location of
further information.
WORD(8) WORD(10) CONTENTS SEE
0 0 DAEMON version # a,b
1 1 DATE (given by CALLI date) b
2 2 TIME (given by MSTIME) b
3 3 LH=JOB# RH=SEG# b
4 4 LH is reserved RH=TTY# b
5 5 .GTSTS for job c
6 6 .GTSTS for seg c
7 7 .GTPPN for job b,c
10 8 .GTPPN for seg b,c
11 9 .GTPRG for job b,c
12 10 .GTPRG for seg b,c
13 11 .GTTIM (runtime in jiffies) b,c
14 12 .GTKCT (killo-core-ticks) b,c
15 13 .GTPRV b,c
16 14 .GTSWP for job c
17 15 .GTSWP for seg c
20 16 .GTRCT (total disk reads) b,d
21 17 .GTWCT (total disk writes) b,d
22 18 .GTTDB always zero
23 19 .GTDEV (device containing seg) c
24 20 .GTNM1 (1st half user name) c
25 21 .GTNM2 (2nd half user name) c
26 22 .GTCNO (charge number) c
27 23 .GTTMP (TMPCOR pointers) c
30 24 .GTWCH (watch bits) a,b,c
31 25 .GTSPL (spool bits) a,b,c
32 26 .GTRTD (real time status) b,c
33 27 .GTLIM (core and time limit) b,c
34 28 .GTSPS (processor status) a,b,c
a Operating System Commands Manual (DEC-10-MRDC-D)
DUMP Page 50
b Monitor Calls Manual (DEC-10-MRRC-D)
c listing of COMMON for your monitor
d listing of COMMOD for your monitor
6.2 The Configuration Category
This is a copy of .GTCNF from the monitor. This is
described in a listing of COMMON for your monitor. A
description of .GTCNF for the 5.05 monitor is in Section
3.6.3.4.2 of DECsystem-10 Monitor Calls (DEC-10-MRRC-D).
6.3 The DDB Category
This is a copy of the device data blocks currently in use
for this job. Each DDB begins with a word containing the
length of the DDB. The format of the DDB varies from device
to device and monitor to monitor. For more information
consult a monitor listing.
6.4 The Core Category
This is a zero-compressed core image of both the high and
low segments. This file only contains non-zero words.
6.5 The Feature Category
This is a copy of .GTFET from the monitor. A description of
.GTFET for the 5.05 monitor is in section 3.6.3.4.14 of
DECsystem-10 Monitor Calls (DEC-10-MRRC-D).