Hi Pete,

> >     I think your problem may be to have a big variable, in the compiler
> > model you can't have variables that use more than 256 bytes and this
> > counts for arrays, for example you can't have:
> 
> Nope, the largest is a buffer of 16 unsigned chars.
> 
> I seem not to be using much programme memory and from gpsim it looks like 
> I'm using less than 25% of the ram.

Your message is about code_autothermal, which is the segment containing
all code (plus strings) from autothermal.c, so your autothermal.c is too
large.
Background: According to gplink's 16f877.lkr, the 16f877 has four banks
for code, (nearly) each 0x800 bytes, equalling 2k---which is wrong, as
the device has 12k program memory, but still...
Probably gplink tries to map code sections to banks, which fails for
your code. If you went and split yout file into smaller pieces, gplink
could fill up the banks with code from different sections.
!!! Beware, splitting your code will introduce additional PAGESEL
instructions around inter-file function calls.

HTH,
Raphael



-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to