<< Previous | Index | Next >>

> ## Appendix B. Map File Generation

> All symbol information is put into a single file. The map file has three sections: a memory map section, a function section, and a globals section.

> The map file format is designed to be easy to read, but with parsing in mind for use in program down-loaders and in other possible future utilities (for example, an independent debugger). Also, the memory map, as defined by the `#org` statements, will be saved into the map file.

> Map files are generated in the same directory as the file that is compiled. If compilation is not successful, the contents of the map file are not reliable.

> ### B.1 Grammar

> <mapfile>: <memmap section> <function section> <global section>

> <memmap section>: <memmapreg>+

> <memmapreg>: <register var> = <8-bit const>

> <register var>: XPC|SEGSIZE|DATASEG

> <function section>: <function descripton>+

> <function description>: <identifier> <address> <size>

> <address>: <logical address> | <physical address>

> <logical address>: <16-bit constant>

> <physical address: <8-bit constant>:<16-bit constant>

> <size>: <20-bit constant>

> <global section>: <global description>+

> <global description>: <scoped name> <address>

> <scoped name>: <global>| <local static>

> <global>: <identifier>

> <local static>: <identifier>:<identifier>

> Comments are C++ style (// only).

Dynamic C User's Manual | << Previous | Index | Next>> | rabbit.com