This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

lost DATA space

for this:

IDATA 0010H 000CH UNIT ?ID?SMAIN
001CH 0004H *** GAP ***
....
DATA 0056H 0022H UNIT ?DT?SMAIN
IDATA 0078H 0001H UNIT ?STACK

I am losing 16 bytes of the precious commodity DATA storage. Does anyone know of a way to get DATA in the 10-1f slot?. (I have enough globals, that I can use it for globals if that makes it doable).

cross posted on 8052

Erik

Parents
  • You could adjust the bit area up in memory (rather than from 20-2f) to 2A-2F. That would make the gap grow by 10 more bytes. The linker could then fit a a larger segment into the gap.
    a VERY cumbersome workaround, it would "blow up in your face when you added a few variables that happened to go in the segment that you made room for by moving the bit data up.

    I rallly think this is an issue Keil should consider "fixing" since DATA space is the most precious commodity in the '51.

    For now I'll stick with the workaround I found of declaring some "well known and stable" DATA variables in a separate segment in assembler.

    Erik

Reply
  • You could adjust the bit area up in memory (rather than from 20-2f) to 2A-2F. That would make the gap grow by 10 more bytes. The linker could then fit a a larger segment into the gap.
    a VERY cumbersome workaround, it would "blow up in your face when you added a few variables that happened to go in the segment that you made room for by moving the bit data up.

    I rallly think this is an issue Keil should consider "fixing" since DATA space is the most precious commodity in the '51.

    For now I'll stick with the workaround I found of declaring some "well known and stable" DATA variables in a separate segment in assembler.

    Erik

Children
No data