From: jamie@cdevil.unx.sas.com (James Cooper)
Subject: Re: Amiga as a debugging machine: BLECH
Originator: jamie@cdevil.unx.sas.com
Date: Fri, 13 Nov 1992 14:35:22 GMT
Organization: SAS Institute Inc.
Keywords: coredump, guru


In article <BxMqDG.8Ju@usenet.ucs.indiana.edu>, shulick@yankton.ucs.indiana.edu (Sam Hulick) writes:
>In article <1992Nov12.142819.9665@ifi.unizh.ch> matija@avalon.physik.unizh.ch (Matija Milostnik) writes:
>>In article <1953@lysator.liu.se> marvil@lysator.liu.se (Martin Vilcans) writes:
>>>Wouldn't you like the computer to continue working and then let the user
>>>decide if he/she wants to reset?
>>
>>Thats the suspend requester. Its your choise to suspend or reset.
>
>Guess what.  The Amiga doesn't always have that requester.  Sometimes it
>skips right to the guru.  And it seems the Guru is useless.  So I get
>8000 0001, or something like that which is a memory allocation error.
>Ok, I know memory is screwed somewhere in my program.  How the hell does
>this aid me in debugging?  It doesn't.  And the "Task" pointer in the
>guru alert can't be helpful, can it?  It jus tells you the location in
>memory of your program.. big deal.

Yes, unless you guard against it.

>IMO, debugging on the Amiga is like trying to port XWindows to the Apple
>II.  cpr (a SAS/C debugging tool) still is shoddy and ineffective.  I
>thought they'd spice it up a lot from v5.01 to v5.10b, but I was rather
>disappointed.

You don't mention 6.0, which is where the major changes were made, such
as CPR catching Enforcer hits, and putting the cursor on the line that
caused the hit, a function traceback window, etc., etc.  It still hasn't
changed much in looks, but it sure works a whole lot better now...

>Basically, I'm extremely pissed off because one of my C programs has a
>SERIOUS bug that Amiga debuggers can't nail.  No info WHATSOEVER on
>what's causing the crash.  All I know is that a call to free() was
>crashing.  So I took it to the UNIX and finally I got some decent info.
>Something like.. attempt to free memory not in heap, bad zone, IOT trap.
>Well, there's SOME info, but it doesn't make too much sense to me.  My
>point is, from what I've seen and used, Amiga is feeble for debugging
>and it's depressing.  Now.. if someone could show me some NICE debugging
>utils for the Amiga, I'd be QUITE grateful.  BTW, my machine is an
>A3000-25.  If I have to take my source code to another machine/OS just
>to debug, that's pretty sad.

So, have you tried linking with the alternative GURU catcher startup?

It has been part of the package for a *looonng* time now, and will catch
any GURUs which occur inside your program.  It will then give you a sort
of mini core dump, which you can use the TB program to decode.

If the GURU occurs outside your program, its not caught by this, but at
least you know where to look...

>(side note: the A3000 has an MMU.  doesn't this entitle me to memory
>protection and/or blocking crashes?)

Not unless you or Commodore add it.

"Gee, I found the hood ornament for a Ferrari!  Doesn't that entitle me
to own one?"  :-)
-- 
---------------
Jim Cooper
(jamie@unx.sas.com)                             bix: jcooper

Any opinions expressed herein are mine (Mine, all mine!  Ha, ha, ha!),
and not necessarily those of my employer.
Newsgroups: comp.sys.amiga.misc