===== SETUP.MOD ===== ''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. The first GAMEWAD.OBJ entry contains the file size for SETUP.MOD. 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]; }; Module pointers appear to be offset by 8 bytes. ==== 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'' |