[comp.sys.amiga.tech] SDB & Memory change breakpoint

greg@isrnix.UUCP (Gregory Travis) (06/28/88)

Is there a way, using either sdb or db (from Manx), to breakpoint
a program whenever it modifies a location from __H0_org to
__H0_end?  I'm trying to track down programs which modify their text
segment and therefore cannot be used with REZ (as sharable programs).
I tried using the memory hash function with db: "bh __H0_org>__H0_end"
That would trigger a breakpoint, but the stack was trashed and my machine
would GURU whenever the program was re-started.  Since the program ran
correctly if not run under db, I assumed that it was a
bug in the debugger.  I cannot find the equivalent of the "bh"
command in my SDB docs.  Is there a better way to do what I'm trying to do?

Why does SDB strip all but the final component of a pathname off when
doing an open?  For example, suppose I have a source directory (src:) of two
levels such that:
	src: main.c Aux
	src:Aux
		others.c
and I compile & link main.c and Aux/others.c in src: to produce src:main.
If I "sdb main", it cannot find the source to function calls whenever
main.c calls something in Aux/others.c.  However, it complains that it
cannot open "Aux/others.c" but in reality it's trying to open just "others.c".
I discovered this playing around with SDB with MicroGnuEmacs.  I got
around the problem using the "-s" option, but it seems it really
should have looked in the directory without my having to explicitly
state the possible location.  Are there good reasons for this?
-- 
 Gregory R. Travis
 Institute for Social Research - Indiana University - Bloomington, IN 47405
 ihnp4!inuxc!isrnix!greg
 {pur-ee,kangaro,iuvax}!isrnix!greg