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 took some old code (saved with the original version) and decided to see what happened if I compiled with 7.xx. To my surprise I got DATA space overflow. What I found was that there is no DATA_GROUP shown in the map and all functions have their own private space in DATA and IDATA. What am I missing? Erik PS not uVision but commandline.
"PS not uVision but commandline." Perhaps the (default) commandline options have changed, so that you didn't end up enabling overlaying? Have you tried building with uVision to see what command-line options it uses?
What am I missing? A main C function?? Are there any linker errors? Jon
A main C function?? Are there any linker errors? I had a look at another project that was started after the upgrade and - lo and behold - there is no overlaying. The smaller size of this project makes that not a problem. The project where the problem was detected has a ton of linker errors, first data space overflow, the a lot of undefined externs (global data) Erik
Perhaps the (default) commandline options have changed, so that you didn't end up enabling overlaying? There is nothing in the revision notes and no on line manual for the linker. You do not get new books with an upgrade. Have you tried building with uVision to see what command-line options it uses? Since I have and had no intention of using uVision (it can't make multibuilds with file substitutions) I must go through an excruciating rebuild of everything together with learning something I am not going to use - so that will be the last resort. Erik
Data overlaying is Optimisation Level 2 on the C51 Compiler options.
Data overlaying is Optimisation Level 2 on the C51 Compiler options. What is the default in 7.xx Erik It is 'real funny' to receive an upgrade without new documentation (on line would be ok, but where is the linker manual?)
"It is 'real funny' to receive an upgrade without new documentation" Mine came with a full set of PDFs: Keil\C51\HLP\A51.pdf - Assembler, Linker, Librarian Keil\C51\HLP\C51.pdf - Compiler Keil\C51\HLP\GS51.pdf - uVision Getting Started Keil\C51\HLP\TR51.PDF - RTX51 Keil\C51\HLP\U51.PDF - Utilities (BL51, LIB51, OC51, OH51) Keil\C51\MON51\Mon51.pdf Admitedly, the documentation of the LX51 advanced features is incomplete...
Mine came with a full set of PDFs: I'm sure so did mine, now if I could find the blasted thing. Erik PS I were under the impression that all documentation was available on the net - I stand corrected.
Sorry about the triple, I got an error on the 1st two attempts and thus tried again )-: Erik
Regarding optimization levels: What is the default in 7.xx Are you sure you should have to know that to solve this puzzle? I certainly assumed your own build procedures would contain their own explicit optimization switches, so it shouldn't matter what the default is. Relying on such fleeting things as optimization level defaults seems would seem like a rather sure recipe for disaster, to me.
Hans-Bernhard, all is inherited and changes come gradually. It is more important to keep the project alive than to change it. I have now reached the point where I have a bit of time to make it "right" thus this. Erik