We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I am using 89C51RD2, when ever my code exceed 8KByte and error is generated by the compiler i.e. *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: DATA SEGMENT: ?DT?_PPP?MAIN LENGTH: 0006H*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT SYMBOL: ?_PPP?BYTE SEGMENT: ?DT?_PPP?MAIN
Please help me how can I resolve this problem. My compiler is Keil version 7.07. Also the compiler is not evaluation version. I've some codes of my friend that exceeds 18KByte, but they are working well. How can I resolve this problme. Please Help.
Maaz Qazi.
Actually I am not familiar with the error. My code is compiling well but as soon as I add a function "sprintf" my code size increases 8KB, and this error occuring. ppp is the function that too works like printf but there is a little difference. What about address space? I couldn't actually understand the problem. Please breifly explain me. Thanx for your time.
"What about address space? I couldn't actually understand the problem."
Then you need to go back to basics - this is a fundamental part of the 8051 architecture!
http://www.keil.com/support/man/docs/c51/c51_le_memareas.htm
You probably also need to study the so-called "bible" for the 8051:
Chapter 1 - 80C51 Family Architecture: www.nxp.com/.../80C51_FAM_ARCH_1.pdf
Chapter 2 - 80C51 Family Programmer's Guide and Instruction Set: www.nxp.com/.../80C51_FAM_PROG_GUIDE_1.pdf
Chapter 3 - 80C51 Family Hardware Description: www.nxp.com/.../80C51_FAM_HARDWARE_1.pdf