Playboy CAM 2: Difference between revisions
Jump to navigation
Jump to search
| Line 51: | Line 51: | ||
Currently unfinished | Currently unfinished | ||
==== | ==== PICTURE DATA ==== | ||
: uint32 {4} - Picture type ID (possibly 0x01 TGA, 0x08 BM8, 0x04 BM4)<br><br> | : uint32 {4} - Picture type ID (possibly 0x01 TGA, 0x08 BM8, 0x04 BM4)<br><br> | ||
Revision as of 07:47, 23 November 2006
CAM (VERSION 2)
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
File header. Common to all .cam files
char {8} - Header (CYLBPC + 0x20 0x20)
uint16 {2} - Cam File Type
uint16 {2} - Version
uint32 {4} - Number Of Segment Types
uint32 {4} - length of the data segment type description area
Known file types:
- 1 animsndd.cam, pregame[ ,f,g,i,s,u].cam, textdat[a,f,g,i,p,s,u].cam files
- 2 everything not listed in other types
- 3 soundesc.cam
File Type 1 Format
Currently unfinished
File Type 2 Format
Currently unfinished
// for each type
- uint32 {4} - Segment Type ID
- uint32 {4} - Byte number of the segment descriptor record
// segement descriptor record, one for each segment type
- uint32 {4} - Number of records
- uint32 {4} - unknown (0x0000)
- // data records descriptors for each segment
- uint32 {4} - data record name, ie. p012, p013, p014 etc.
- uint32 {4} - Byte number of the start of data
- uint32 {4} - data length
- uint32 {4} - Length of record name (follows in name array)
- // array of record names
An array of names, each name corresponding to a record in the order given above follows here...
- uint8 {same as number of records} (note some lengths can be 0)
// buffer, filled with 0x00
A buffer filled with nulls follows. The next data is that pointed to by the 'Byte number of the start of data' above. The format of this data will depend upon the record type.
File Type 3 Format
Currently unfinished
PICTURE DATA
- uint32 {4} - Picture type ID (possibly 0x01 TGA, 0x08 BM8, 0x04 BM4)
See Playboy_PICT_1 or Playboy_PICT_2
MultiEx BMS
Not written yet