This version (2017/09/02 14:26) was approved by zdimension.The Previously approved version (2017/08/30 17:56) is available.Diff

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
trs/psx/setupmod.txt · Last modified: 2017/08/31 11:20 by zdimension
Back to top
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0