Annotation of 43BSDReno/share/doc/ucs/sumacc/ddt68.1, revision 1.1

1.1     ! root        1: .TH DDT68 1 MC68000
        !             2: .SU
        !             3: .SH NAME
        !             4: ddt68, fddt68 \- symbolic debugger for 68000
        !             5: .SH SYNOPSIS
        !             6: .B fddt68
        !             7: b.out
        !             8: .br
        !             9: .B cc68 ... -lddt (Sun)
        !            10: 
        !            11: .SH DESCRIPTION
        !            12: .I fddt68
        !            13: is a symbolic disassembler for b.out files created by the 68000 linker
        !            14: (ld68). Its main purpose is to allow testing of ddt logic in a
        !            15: more hospitable environment than the 68000.  It also gives a way of inspecting
        !            16: the assembly language form of a program without having to produce a .s file.
        !            17: In addition it gives a check on the operation of as68 and ld68.  It is called
        !            18: by typing:
        !            19: .sp
        !            20: fddt68 
        !            21: .I filename
        !            22: .sp
        !            23: on the Vax.
        !            24: .PP
        !            25: .I ddt68
        !            26: is a symbolic debugger for the 68000.  It is loaded at link edit time with
        !            27: the cc68 flag -lddt.  On starting a program with ddt loaded the user will be
        !            28: at the ddt command level.  Breakpoints may be set, and the program started,
        !            29: using the commands described below.
        !            30: .SH COMMANDS
        !            31: .I ddt68
        !            32: recognizes the following commands (\fI$\fP is used for \fI<esc>\fP):
        !            33: .TP
        !            34: .IB expression /
        !            35: .TP
        !            36: .IB expression \e
        !            37: open the location at \fIexpression\fP and display the contents in the
        !            38: current typeout mode.  The user may then optionally type an expression, whose
        !            39: value replaces the contents of the open location.  Finally the location is
        !            40: \fIclosed\fP by typing one of \fIreturn\fP (to return to \fIddt\fP's main
        !            41: command loop), \fI/\fP (to open the next location), or \fI\\\fP (to open the
        !            42: previous location).
        !            43: .TP
        !            44: .IB expression $g
        !            45: go - plant any breakpoints set with the \fI$b\fP command, load the registers,
        !            46: and start execution at \fIexpression\fP. If \fIexpression\fP is unspecified
        !            47: or zero, execution resumes starting from the current value of \fI$pc\fP
        !            48: (normally the point where the program was last interrupted).
        !            49: .TP
        !            50: .IB expression $x
        !            51: execute the next \fIexpression\fP instructions, starting from the current
        !            52: value of \fI$pc\fP and printing out all executed instructions.  If
        !            53: \fIexpression\fP is omitted, 1 is assumed.
        !            54: .TP
        !            55: .IB expression $$x
        !            56: same as above except execute subroutine calls and traps as single instructions,
        !            57: i.e. do not descend into the called subroutine.
        !            58: .TP
        !            59: .IB expression $p
        !            60: proceed - like \fIgo\fP with no argument, except that if we are presently at
        !            61: a breakpoint then \fIexpression\fP counts the number of times to pass this
        !            62: breakpoint before breaking.  \fI1$p\fP is synonymous with \fI$g\fP.
        !            63: .TP
        !            64: .IB expression $ bno b
        !            65: set breakpoint \fIbno\fP (in the range 1-9) at \fIexpression\fP.  If \fIbno\fP
        !            66: is omitted the first unused breakpoint number is assigned (the commonest
        !            67: usage).  If \fIexpression\fP is 0 the named breakpoint is cleared, or if there
        !            68: is no named breakpoint (\fIbno\fP is omitted) all breakpoints are cleared.
        !            69: If \fIexpression\fP is omitted all breakpoints are printed, whether or not
        !            70: \fIbno\fP is present.
        !            71: .TP
        !            72: .BI $ rspec /
        !            73: .TP
        !            74: .BI $ rspec \e
        !            75: examine register \fIrspec\fP where \fIrspec\fP is one of:
        !            76: .RS
        !            77: .TP
        !            78: .B d0-d7
        !            79: data registers 0-7
        !            80: .TP
        !            81: .B a0-a7
        !            82: address registers 0-7
        !            83: .TP
        !            84: .B fp
        !            85: frame pointer (synonym for \fIa6\fP)
        !            86: .TP
        !            87: .B sp
        !            88: stack pointer (synonym for \fIa7\fP)
        !            89: .TP
        !            90: .B pc
        !            91: program counter
        !            92: .TP
        !            93: .B sr
        !            94: status register
        !            95: .RE
        !            96: .TP
        !            97: .IB expression $=
        !            98: type out \fIexpression\fP in current output radix.
        !            99: .TP
        !           100: .IB lowlimit < highlimit > pattern ?
        !           101: search for \fIpattern\fP in the range \fIlowlimit\fP (inclusive) to
        !           102: \fIhighlimit\fP (exclusive).
        !           103: The pattern is interpreted as an object of the type in force as
        !           104: the current typeout mode, with instructions and strings being treated as
        !           105: 2-byte words.  Objects are assumed to be aligned on word (2-byte)
        !           106: boundaries except for 1-byte types and strings which are aligned on byte
        !           107: boundaries.  A mask (set with the following command) determines how much of
        !           108: the pattern is
        !           109: significant in the search, except that if the pattern is a string constant a
        !           110: separate mask matched to the length of the string is used.
        !           111: The three arguments to the search command are
        !           112: sticky; thus if \fIlowlimit<\fP (resp. \fIhighlimit\fP>) is omitted, the
        !           113: most recent lowlimit (resp. highlimit) applies.  While \fIpattern\fP may be
        !           114: omitted, the final ? may not be omitted.
        !           115: .TP
        !           116: .IB expression $m
        !           117: set the search mask to \fIexpression\fP.  \fI-1$m\fP forces a complete match,
        !           118: \fIf$m\fP checks only the low order 4 bits, \fI0$m\fP will make the search
        !           119: pattern match anything.
        !           120: .TP
        !           121: .IB base $ir
        !           122: set input radix to \fIbase\fP. (Note \fI10$i\fP can never change the radix.)
        !           123: If \fIbase\fP is omitted hexadecimal is assumed.
        !           124: .TP
        !           125: .IB base $or
        !           126: set output radix to \fIbase\fP.
        !           127: If \fIbase\fP is omitted hexadecimal is assumed.
        !           128: .TP
        !           129: .BI $ type t
        !           130: temporarily set typeout mode to \fItype\fP where \fItype\fP is one of:
        !           131: .RS
        !           132: .TP
        !           133: .B <space>
        !           134: deduce type from type of nearest symbol
        !           135: .TP
        !           136: .B c
        !           137: type out bytes as ascii characters.
        !           138: .TP
        !           139: .B h
        !           140: type out bytes in current output radix.
        !           141: .TP
        !           142: .B w
        !           143: type out words in current radix.
        !           144: .TP
        !           145: .B l
        !           146: type out longs in current radix.
        !           147: .TP
        !           148: .B s
        !           149: type out strings in current radix.  (In this mode new values cannot be
        !           150: entered.)
        !           151: .TP
        !           152: .B i
        !           153: type out as 68000 symbolic instructions.  (In this mode only the first
        !           154: two bytes of the opened location may be changed; the new value is typed in as
        !           155: a numeric expression rather than as a symbolic instruction.)
        !           156: .RE
        !           157: The new typeout mode stays in effect until a \fIreturn\fP is typed.
        !           158: .TP
        !           159: .BI $$ type t
        !           160: permanently set typeout mode to \fItype\fP.
        !           161: .PP
        !           162: An \fIexpression\fP is composed of symbols, numeric constants, string
        !           163: constants, and the operators \fI+\fP,
        !           164: \fI-\fP, and \fI|\fP representing 2's complement addition,
        !           165: subtraction, and inclusive bitwise or.
        !           166: Symbols are delimited by operators or \fI<esc>\fP.  A string constant has from
        !           167: 1 to 4 characters which are packed right justified into one long to form a
        !           168: numeric constant; thus "did"=646A64.  String constants are particularly
        !           169: useful in conjunction witht the search command for searching for a string.
        !           170: The single character \fI.\fP (dot) as a symbol on its own represents
        !           171: the address of the currently open memory location.
        !           172: All operations are carried out using 32 bit arithmetic and evaluated
        !           173: strictly left to right.
        !           174: .SH AUTHORS
        !           175: Jim Lawson and Vaughan Pratt

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.