make_labels
-----------
(c) Kevin Thacker, January 2005.

A utility for parsing a MAP file generated by ASMLNK (part of SDCC suite) and generating an 
assembler file or an object file which contains references to the labels in the map file.

This tool is meant to be used where you are building a kernel of functions, and then create seperate 
programs which statically link into that kernel of functions. This means you don't need to have the 
source for the functions in every program provided that the kernel of functions is loaded.

This utility was made for the SDCC suite, and to help me to port Contiki to the CPC.

An example of usage:

An operating system kernel is built and a map file is generated by the linker. make_labels is then 
used on the map file to generate a linkable object file which contains the symbols in the 
kernel (e.g. kernel_labels.obj).

Programs which use the operating system kernel are linked with kernel_labels.obj when they 
are built. The programs are statically linked against the kernel. 

The program can be executed as long as the kernel is loaded.

NOTE: If a the kernel changes, then the programs must be rebuilt, as the functions in the kernel may 
potentially move. This problem can be reduced if the functions are always accessed through a 
jumptable which is in a fixed location, or a 'system call' function which is fixed into memory.
 
