Patent ID: 8738887

Claim:
A method for customizing an initialization program for a chipset, comprising: generating a first module to be stored in non-volatile memory within the program as an executable file having a code section and a data section, wherein the executable file does not have a reallocation information section, comprising: finding references to relative memory addresses in the code section of the first module; replacing each reference to a relative memory address with a function, F(relative address, base address), where F returns the absolute address of a memory location in the data section of the first module without reference to reallocation information, given the relative address of the memory location and a to-be-determined base address of the first module; compiling the first module with the function for the replaced reference to a relative memory address pending determination of the base address; and inserting the compiled first module in the program; customizing the program by adding at least another module as a separate and independent process from the generating of the first module; and storing the program in non-volatile memory; wherein during execution of the program, the first module performs dynamic fix up of global variables.