This is an old revision of the document!
SETUP.MOD (TR5 NTSC 1.0)
SETUP.MOD
is a container based file format which holds multiple “modules”. These modules are pre-game “SETUP” routines which have been bundled externally from the main game's executable. The SETUP.MOD module is located inside GAMEWAD.OBJ. It's stored right after the loading screen+loading cd bitmap data. Based on Tomb Raider 1's “TOMB.map” it is known that there is a file called “SETUP.C”. The file in question is not present in the PlayStation TR5 codebase judging by the symbol data. It's safe to assume the SETUP.mod module contains the same/similar code as listed in TR1's SETUP.C.
SETUP.MOD has it's own header which consists of various pointers as follows:
enum modules { UNKNOWN_0, UNKNOWN_1, UNKNOWN_2, UNKNOWN_3, UNKNOWN_4, UNKNOWN_5, UNKNOWN_6, MODULE_LEVEL_LOAD,//Contains the code which loads a level file into the game and setups up various game structs/calls initialisation routines. NUM_MODULES }; struct SETUP { uint32_t pModule[NUM_MODULES]; };
Values
The values here are the values from the original files + 8, in the format (Position Dec, Position Hex, Length Dec).
Module | Internal Beta | Retail | ||||
---|---|---|---|---|---|---|
Pos (10) | Pos (16) | Len (10) | Pos (10) | Pos (16) | Len (10) | |
Unknown 0 | 40896 | 9FC0 | 1352 | 40700 | 9EFC | 1320 |
Unknown 1 | 1352 | 548 | 22688 | 1320 | 528 | 22660 |
Unknown 2 | 25644 | 642C | 120 | 25584 | 63F0 | 120 |
Unknown 3 | 24040 | 5DE8 | 648 | 23980 | 5DAC | 648 |
Unknown 4 | 24688 | 6070 | 528 | 24628 | 6034 | 528 |
Unknown 5 | 25216 | 6280 | 428 | 25156 | 6244 | 428 |
Unknown 6 | 25764 | 64A4 | 15132 | 25704 | 6468 | 14996 |
Level Load | 528 | 210 | 824 | 528 | 210 | 792 |