[comp.lang.pascal] HELP!! TP stack problem

rocker@eve.wright.edu (Ronnie Peugh) (01/11/90)

I have been writing a appointment program.  The program allows the user
to enter appointments with the date and time.  When each appointment's
time comes the program reminds the user, i. e. I must use the timer
interrupt (1 potential stack problem)

It also must keep track of up to 300 people, who may have several
appointments in one day.  Therefore, I have to create appointments
dynamically, which means pointers, lots of pointers (another stack
user).

Now I'm almost done with the whole program, but everytime an appointment
comes up I get a stack overflow error.

No problem, rright?  WRONG, I put the stack up to 50k (from the 16k
defualt).  Same error, same place (almost, little diffect each time).

I have tried everything I can think of, but haven't gotten anywhere.

If anyone has any ideas please let me know and I'll try them.

thanx anyone..

rocking on...

(P.S.) I ran it with TURBO DEBUG and when it bombed out, it came back
with
	Drive C:, Not Ready.

davidr@hplsla.HP.COM (David M. Reed) (01/13/90)

I am probably wrong, but I suspect it is related to the STACKS setting for
DOS.  I think this started with MSDOS 3.3, but you can define the size and
number of hardware interrupt stacks used by DOS.  You place a STACKS=n,s
statement in CONFIG.SYS, where n = number of stack frames (from 8 to 64,
with 9 as a default) and s = size in bytes of each stack frame (from 32
to 512, with 128 being default).

We began having problems (system hangs, or crashes, or reports stack
overflow, and other symptoms) especially with Logitech mice, particularly
if the mouse is moved quickly (generating lots of interrupts, apparently
faster than they could be processed.  Our experimentation indicated, for
that case, that the second number had more influence on behaviour, and
our systems less susceptible to these problems when the size was in the
middle of its range.