Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
trs:psx [2017/08/29 19:37] – [GAMEWAD.OBJ (TR5 NTSC 1.0)] zdimension | trs:psx [2017/08/29 19:38] (current) – zdimension | ||
---|---|---|---|
Line 2: | Line 2: | ||
The PSX versions of the game use different formats than the PC ones. Although the level files and the script files tend to stay consistent between platforms (including Dreamcast and others), some files are only present on console. | The PSX versions of the game use different formats than the PC ones. Although the level files and the script files tend to stay consistent between platforms (including Dreamcast and others), some files are only present on console. | ||
- | |||
- | ===== GAMEWAD.OBJ (TR5 NTSC 1.0) ===== | ||
- | |||
- | //By: Gh0stBlade// | ||
- | |||
- | <code cpp> | ||
- | |||
- | //The number of file entries stored in GAMEWAD.OBJ. | ||
- | #define NUM_GAMEWAD_FILE_ENTRIES 51 | ||
- | |||
- | //Maximum size of the GAMEWAD header struct. | ||
- | #define GAMEWAD_HEADER_MAX_LENGTH 512 | ||
- | |||
- | struct GamewadEntry | ||
- | { | ||
- | int fileOffset; | ||
- | int fileSize; | ||
- | }; | ||
- | |||
- | struct GamewadHeader | ||
- | { | ||
- | struct GamewadEntry entries[NUM_GAMEWAD_FILE_ENTRIES]; | ||
- | char reserved[GAMEWAD_HEADER_MAX_LENGTH - (NUM_GAMEWAD_FILE_ENTRIES * sizeof(GamewadEntry))]; | ||
- | }; | ||
- | |||
- | enum GamewadFiles | ||
- | { | ||
- | NONE, | ||
- | CUTSEQ, | ||
- | TITLE, | ||
- | ANDREA1, // Guessed | ||
- | ANDREA2, | ||
- | ANDREA3, | ||
- | JOBY2, | ||
- | JOBY3, | ||
- | JOBY4, | ||
- | JOBY5, | ||
- | ANDY1, | ||
- | ANDY2, | ||
- | ANDY3, | ||
- | RICH1, | ||
- | RICH2, | ||
- | RICHCUT2, | ||
- | RICH3, | ||
- | RESERVED_17, | ||
- | RESERVED_18, | ||
- | RESERVED_19, | ||
- | RESERVED_20, | ||
- | RESERVED_21, | ||
- | RESERVED_22, | ||
- | RESERVED_23, | ||
- | RESERVED_24, | ||
- | RESERVED_25, | ||
- | RESERVED_26, | ||
- | RESERVED_27, | ||
- | RESERVED_28, | ||
- | RESERVED_29, | ||
- | UNKNOWN_30, | ||
- | UNKNOWN_31, | ||
- | UNKNOWN_32, | ||
- | RESERVED_33, | ||
- | RESERVED_34, | ||
- | RESERVED_35, | ||
- | RESERVED_36, | ||
- | RESERVED_37, | ||
- | RESERVED_38, | ||
- | RESERVED_39, | ||
- | RESERVED_40, | ||
- | UNKNOWN_41, | ||
- | UNKNOWN_42, | ||
- | UNKNOWN_43, | ||
- | UNKNOWN_44, | ||
- | UNKNOWN_45, | ||
- | UNKNOWN_46, | ||
- | UNKNOWN_47, | ||
- | UNKNOWN_48, | ||
- | UNKNOWN_49, | ||
- | UNKNOWN_50 | ||
- | }; | ||
- | </ | ||
- | |||
- | The original PlayStation engine loads 512 bytes of data (GAMEWAD_HEADER_MAX_LENGTH) into the gamewad buffer. | ||
- | Level file entries contain 3 other files prior to the level file itself. | ||
- | - 262144 bytes of data is a 16bpp 512x256 BGR loading screen image. | ||
- | - 8192 bytes of data is a 16bpp 64x64 BGR spinning CD image. | ||
- | - 42012 is " | ||
- | |||
- | UNKNOWN_41 and UNKNOWN_46 are identical. UNKNOWN_44 and UNKNOWN_45 are too. Same for UNKNOWN_43 and UNKNOWN_47. And UNKNOWN_44 and UNKNOWN_48. | ||
- | |||
- | <note tip>For the file to be loadable by the PSX engine, all the file offsets must aligned to 2048 ('' | ||
- | |||
- | ==== Hidden messages ==== | ||
- | |||
- | === Tomb Raider 4 === | ||
- | |||
- | Too lazy to download it, someone give me TR4 gamewad.obj plz? | ||
- | |||
- | === Tomb Raider 5 === | ||
- | |||
- | Game : Tomb Raider 5 PSX (US), file : '' | ||
- | |||
- | < | ||
- | TR5 DATA FILE (C) 2000 Core Design... ' | ||
- | </ | ||
- | |||
- | With newlines: | ||
- | |||
- | < | ||
- | TR5 DATA FILE (C) 2000 Core Design... ' | ||
- | this version built by Del, second attempt submission, 1/ | ||
- | Hiya to Caroline and Abbie! | ||
- | lets hope we get to do a nice ONLINE game next... | ||
- | EVERQUEST RULES... | ||
- | ADSL ROCKS, when it works... | ||
- | someone really should kill BT , they suck. | ||
- | </ | ||