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