I use two different µC (C505 and C164). I use the following compilers: C51: V7.06i / BL51: 5.03 C166: V4.11 / L166: 4.10 (Updates not possible. I couldn't use newer one.)
How can I get information about used RAM (IRAM, XRAM, ...)? = How much RAM do my program needed?
I know that I can use the map files. But that's complicated and not easy and not fast.
Do anybody know an other method? How could I evaluate the map file (to know how many RAM my source code needed)?
Thanks for help
Finally comment: I found the reason for the unbelieveable xdata value of greater 1kByte.
1st at all - in my project the XDATA is used and defined as 1kByte: Map file:
XDATA (0XFC00-0XFFFF) ... N:0400H SYMBOL XDATALEN = 1024Bytes = 1kByte XRAM ... Program Size: data=247.7 xdata=739 code=32651
Thats completely normaly.
But in the other project (of a college which isn't anymore in the concern) it's defined as the following [this was the one I asked]:
XDATA (0XFD00-0XFFFF, ?XD?NV (0X1100)) PDATA (0XFC00) ... N:0300H SYMBOL XDATALEN = 768 Bytes ... Program Size: data=220.3 xdata=2615 code=32750
The shown value for the used xdata size contains also the EEPROM (NV) size. Therefore a value greater than 1kbyte (1024) is possible. I used the map file to get the information for the xdata(NV) size and could calculated the real used xram size.
Thanks a lot (also for the very sensitive answers).