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

How to construct xdata memory map from symbol table?

I would like to construct an xdata memory map for debugging purposes, but it seems that the LX51 MAP file does not contain enough information to do this.

What I would like to do:
1. Take the symbol table from the MAP file
2. Grep all XDATA symbols.
3. Sort them by starting address.

...and end up with a nice memory map.

This leaves me with two problems:
a) The symbol table does not list the length of each symbol (only for simple data types like BYTE, arrays and structs are simply listed as "---")
b) Variables located with the _at_ keyword are not included in the symbol table at all.

Is there any way to get this information out of the MAP file? Or is there another way to contruct the memory map altogether?

Background info: I am using LX51 v4.47a and I am not using the PRINTCONTROLS linker directive to suppress any output.

Thanks,
Jakob

  • No. The debugger makes use of debug information to know data types. This allows it to know not only where an object starts, but to figure out the offset of elements in an array or fields in a struct.

    The map file is not intended to be a replacement for debug information when debugging a program.