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.
hi,
during compilation of my program i have been getting too many address overflow errors. Mostly the errors were due to function arguments placed in the data space instead of xdata...i solved it using the 'large' keyword..however now i get this error on a particular formula im implementing...viz."DecED1 = (DecCurrAss1 - DecReb1) * 0.125;" all of them are xdata float...how do i solve this..?
below is a part of the error log..
*** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?_BUFFER2PAGE?STSBMV1 LENGTH: 0047H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?GET_KEY?STSBMV1 LENGTH: 0045H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?CF_BITS?STSBMV1 LENGTH: 0045H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?C?LDIV LENGTH: 0044H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?DISP_INITIAL?STSBMV1 LENGTH: 0040H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?_CLR?FILEDOWNLOAD LENGTH: 003DH *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?_DEBUG?FILEDOWNLOAD LENGTH: 003CH *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?SOFTKEY_ON?STSBMV1 LENGTH: 003BH *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?SCREENINIT?FILEDOWNLOAD LENGTH: 003BH *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?_CONVERTDATE2?FILEDOWNLOAD LENGTH: 0037H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?_WRITE_OP?FILEDOWNLOAD LENGTH: 0036H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?CO?MICRO1 LENGTH: 0036H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?CO?MICRO2 LENGTH: 0036H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?DISP_TIME?STSBMV1 LENGTH: 0033H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?_DISP_MSGB?STSBMV1 LENGTH: 0031H *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: CODE SEGMENT: ?PR?_PRT_MSG?STSBMV1 LENGTH: 002EH
too many address overflow errors
do you mean that few of them are acceptable...? :-)
anythin is acceptable if it compiles and builds me a hex file ;)...by the way the adress overflow is in the code space...the code size is 67002..n MCu is 8032 Generic...any workaround for this....?
"the code size is 67002"
And you are surprised that you have a code space overflow??!
Think about it: what is the maximum code space supported by a generic 8032...?
Hint: What is the size of the address bus...?
Think about the effect of moving from Small to Large memory models - in particular, what effect will it have on the size of the generated code...?
DecED1 = (DecCurrAss1 - DecReb1) * 0.125;
Floating point also consumes a large amount of code - do you really need floating point?
If you really do need floating point, is an 8032 really a good choice for this project?
Unfortunately i inherited the hardware...so i can do nothin about it...but i do have an 12mb flash in it...i cant avoid floating point, which i wld love to...
the problem is not the code size...coz i have fed it codes of size 87771 n it runs...is there any godly keywords like "large" which i can use....
Mostly the errors were due to function arguments placed in the data space instead of xdata...i solved it using the 'large' keyword..however now i get this error on a particular formula im implementing go back to small and keyword a sufficien number of (preferably rarely used) variables with xdata
Erik
lisetn to sir eraks wise wording of wisdom.
he is wise and clever and knows lots if stuff.
ho, kalib, if you were only a female admirer... :-)
Why can't you remove the floating point?
Too hard to switch to fixed point?
Are you sure that's not just the size of the Hex file?
If it's the actual size of the executable code, then there's something(s) important that you're not telling us...
That would be Bible time, then!
;-)
http://www.biblegateway.com/