additional macsbug commands
Posted: August 28th, 1984, 6:08 am
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10 UW 5/3/83; site uw-beaver
Path: utzoo!watmath!clyde!burl!ulysses!cbosgd!ucbvax!ucbcad!tektronix!uw-beaver!info-mac
From: info-mac@uw-beaver
Newsgroups: fa.info-mac
Subject: additional macsbug commands
Message-ID:
Date: Tue, 17-Jul-84 17:38:29 EDT
Article-I.D.: uw-beave.1241
Posted: Tue Jul 17 17:38:29 1984
Date-Received: Fri, 20-Jul-84 04:44:04 EDT
Sender: daemon@uw-beave
Organization: U of Washington Computer Science
Lines: 51
From: Bill Croft
The "new" macsbug (that uses a window at the bottom of the Mac screen)
that was posted to info-mac a few weeks ago, has some new command syntax.
Here is a note from Bruce Horn explaining the new commands:
----
Here's a summary of the new Macsbug commands:
CL a -- clears the breakpoint at location a. If a is omitted, all breakpoints
are cleared.
BR a c -- sets a breakpoint at location a for count c. This allows you to say
"Stop after this location is hit 6 times."
GT a -- is Go Till a. (i.e. sets temporary breakpoint at a and goes.)
T n -- Traces n instructions.
S n -- Steps through n instructions This is just like the old trace, where
it will actually step into the dispatcher. Now T, the previous command, will
step OVER a trap. No more tracing through the dispatcher when you just want
to get back to the main procedure.
MR n -- Looks n bytes down the stack and replaces the longword there (usually
a return address) with a magic address in the debugger. Instead of returning
normally, this returns control to the debugger which puts back in the real
address. This is a good way to step across subroutines which you know are
good--just trace one instruction into the routine and type MR.
WH x -- if x=512, the A-Trap "nearest" the address X will be printed. This is
useful for finding out what trap was executing when an error occurred.
RX -- Toggles the display mode so that the registers are or are not dumped
during a trace command. The disassembly at PC will always occur.
I think that's all of the new or changed routines in the improved Macsbug.
Parsing is slightly different, however. Gone is the DH command, replaced by
the prefix @ for indirect. So the command DH 4200 is replaced by DM @4200.
An additional symbol, TP (thePort) is also supported. This is useful for
looking at the Quickdraw globals.
You can reference addresses relative to a given location just by using the +
operator. You can also use ".", last address referenced, to temporarily have
an anchor from which to reference relative addresses. For example, DM 14000
will set . to 14000, and then you can say DM .+200, DM .+400, etc.
Bruce
-------
Posting-Version: version B 2.10 UW 5/3/83; site uw-beaver
Path: utzoo!watmath!clyde!burl!ulysses!cbosgd!ucbvax!ucbcad!tektronix!uw-beaver!info-mac
From: info-mac@uw-beaver
Newsgroups: fa.info-mac
Subject: additional macsbug commands
Message-ID:
Date: Tue, 17-Jul-84 17:38:29 EDT
Article-I.D.: uw-beave.1241
Posted: Tue Jul 17 17:38:29 1984
Date-Received: Fri, 20-Jul-84 04:44:04 EDT
Sender: daemon@uw-beave
Organization: U of Washington Computer Science
Lines: 51
From: Bill Croft
The "new" macsbug (that uses a window at the bottom of the Mac screen)
that was posted to info-mac a few weeks ago, has some new command syntax.
Here is a note from Bruce Horn explaining the new commands:
----
Here's a summary of the new Macsbug commands:
CL a -- clears the breakpoint at location a. If a is omitted, all breakpoints
are cleared.
BR a c -- sets a breakpoint at location a for count c. This allows you to say
"Stop after this location is hit 6 times."
GT a -- is Go Till a. (i.e. sets temporary breakpoint at a and goes.)
T n -- Traces n instructions.
S n -- Steps through n instructions This is just like the old trace, where
it will actually step into the dispatcher. Now T, the previous command, will
step OVER a trap. No more tracing through the dispatcher when you just want
to get back to the main procedure.
MR n -- Looks n bytes down the stack and replaces the longword there (usually
a return address) with a magic address in the debugger. Instead of returning
normally, this returns control to the debugger which puts back in the real
address. This is a good way to step across subroutines which you know are
good--just trace one instruction into the routine and type MR.
WH x -- if x=512, the A-Trap "nearest" the address X will be printed. This is
useful for finding out what trap was executing when an error occurred.
RX -- Toggles the display mode so that the registers are or are not dumped
during a trace command. The disassembly at PC will always occur.
I think that's all of the new or changed routines in the improved Macsbug.
Parsing is slightly different, however. Gone is the DH command, replaced by
the prefix @ for indirect. So the command DH 4200 is replaced by DM @4200.
An additional symbol, TP (thePort) is also supported. This is useful for
looking at the Quickdraw globals.
You can reference addresses relative to a given location just by using the +
operator. You can also use ".", last address referenced, to temporarily have
an anchor from which to reference relative addresses. For example, DM 14000
will set . to 14000, and then you can say DM .+200, DM .+400, etc.
Bruce
-------