[comp.sys.amiga.tech] Help! Need Suggestions on Debugging C Programs on Amiga

telam@pyrps5 (Thomas Elam) (08/30/90)

Hello!  I'm fairly used to dbx, and somewhat used to sdb, but I can't
even start my program under CPR without crashing (guruing) my Amiga.
Maybe I'm spoiled by a big programming environment like UNIX, but maybe
someone can grant me a few tips that will get me off to a running
start.  Are there some tried and true steps to getting a program past
the crucial steps, then keeping the debugging rolling quickly?  E.g.,
getting the program started, passing parameters properly to functions
(right lengths), debugging without resorting to a lot of printf's or
DPRINT's, etc.


Thanks!


P.S:  Lazy question:

Does the Lattice compiler have a "supercompatibility" mode like the
Manx compiler?

valentin@cbmvax.commodore.com (Valentin Pepelea) (08/31/90)

In article <125148@pyramid.pyramid.com> telam@pyrps5 (Thomas Elam) writes:
>
>Hello!  I'm fairly used to dbx, and somewhat used to sdb, but I can't
>even start my program under CPR without crashing (guruing) my Amiga.

CPR is know to require a *very* big stack. Increase it to 20000 or more
before starting it.

> Are there some tried and true steps to getting a program past the crucial
> steps, then keeping the debugging rolling quickly?  E.g., getting the
> program started, passing parameters properly to functions (right lengths),
> debugging without resorting to a lot of printf's or DPRINT's, etc.

I use KPrintF's with a terminal attached to the serial port rather than
printf's because, first of all, printf's are buffered. Thus your program may
crash, and you would not know how far it got to run. Another advantage of the
KPrintF's is that they do not need nor affect any other part of the system,
except the serial port. You may use KPrintF's even from interrupt code while
interrupts are disabled. (With Disable(), not or.w #0700,sr)

Valentin
-- 
The Goddess of democracy? "The tyrants     Name:    Valentin Pepelea
may distroy a statue,  but they cannot     Phone:   (215) 431-9327
kill a god."                               UseNet:  cbmvax!valentin@uunet.uu.net
             - Ancient Chinese Proverb     Claimer: I not Commodore spokesman be