Peter, > The overflow in DSEG is all > sloc variables and I don't know how to move those (thats what stack-auto > is supposed to do I think?) out of the internal ram.
Yes, stack-auto puts the sloc's on stack too. And you cannot move slocs to any other memory, because then SDCC would need sloc's to access those sloc's. > I don't have Keil (and at $2K US am not likely to buy it :-)) but this > code is written for it and runs (I have .hex files from the original code). > >From the Makefile I think it is using large model (only because the asm > >flags > set large). I would assume (but don't know for sure) that it should be > reentrant by default. From the original Makefile: > > KEIL = c:/apps/keil/c51 > > ASM = $(KEIL)/bin/a51 > AFLAGS = set "(large)" debug ep xref > > CC = $(KEIL)/bin/c51 > CFLAGS = code noaregs objectextend symbols debug > > export C51INC = ../W7100/inc > > LINK = $(KEIL)/bin/bl51 > export C51LIB = $(KEIL)/lib > > HEX = $(KEIL)/bin/oh51 > > Peter Van Epp I don't see anything like large in CFLAGS and therefor assume small memory model. Maybe the assembly does use large. Keil can mix the models IIRC. And no, the default for Keil is not reentrant. Maarten ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Sdcc-user mailing list Sdcc-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sdcc-user