Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
trs:psx:setupmod [2017/08/29 19:39] – created zdimensiontrs:psx:setupmod [2017/08/31 09:20] (current) zdimension
Line 1: Line 1:
 ===== SETUP.MOD ===== ===== SETUP.MOD =====
  
-''SETUP.MOD'' is a file.+''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. 
 + 
 +<note tip>The first GAMEWAD.OBJ entry contains the file size for SETUP.MOD.</note> 
 + 
 +SETUP.MOD has it's own header which consists of various pointers as follows: 
 + 
 +<code cpp> 
 +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]; 
 +}; 
 +</code> 
 + 
 +<note tip>Module pointers appear to be offset by 8 bytes.</note> 
 + 
 +==== 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.1504035562.txt.gz · Last modified: 2017/08/29 19:39 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