diff --git a/BurnOutSharp/FileType/PLJ.cs b/BurnOutSharp/FileType/PLJ.cs index bfbe29b0..3e5dcb83 100644 --- a/BurnOutSharp/FileType/PLJ.cs +++ b/BurnOutSharp/FileType/PLJ.cs @@ -43,11 +43,11 @@ namespace BurnOutSharp.FileType // 0x00 Signature UInt32 // 0x04 Version UInt32 [0x00000000] // 0x08 Track ID UInt32 [Always 0xFFFFFFFF in CD titles] - // 0x0C Metadata? Offset UInt32 - // 0x10 Unknown Offset UInt32 - // 0x14 Unknown Offset UInt32 - // 0x18 Unknown UInt32 [Always 0x00000001] - // 0x1C Unknown UInt32 [Always 0x00000001 in download titles] + // 0x0C Unknown Offset 1 UInt32 + // 0x10 Unknown Offset 2 UInt32 + // 0x14 Unknown Offset 3 UInt32 + // 0x18 Unknown (Initial play count?) UInt32 [Always 0x00000001] + // 0x1C Unknown (Play count?) UInt32 [Always 0x00000001 in download titles] // 0x20 Year UInt32 [0xFFFFFFFF if unset] // 0x24 Track Number Byte // 0x25 Subgenre Byte @@ -65,19 +65,27 @@ namespace BurnOutSharp.FileType // 0x34+TL+TAL+AL+WL+PL Label Length UInt16 // 0x36+TL+TAL+AL+WL+PL Label String // - // The following samples also have a "Comments" section after the distributor, same format + // The following samples also have a "Comments" section after the label, same format // - golden_empire.plj // - i_want_to_take_you_higher.plj // - // 0x36+TL+TAL+AL+WL+PL+LL Metadata? Length UInt32 - // 0x38+TL+TAL+AL+WL+PL+LL Metadata? byte[ML] - // Most samples hae repeating or semi-repeating values here, roughly UInt32-sized - // 0x38+TL+TAL+AL+WL+PL+LL+ML Extras? UInt32 + // Unknown Offset 1 + // ------------------------------------------------------------------------------ + // UO1 Unknown Block 1 Length UInt32 + // UO1+2 Unknown Block 1 byte[UB1L] + // + // Unknown Offset 2 + // ------------------------------------------------------------------------------ + // UO2 Unknown Value UInt32 // Most of the samples have 0x00000000 - // lady.plj has 0x00000002 and references "ad006376_5.dat" after // nature_soundscape_v.plj has 0x00C88028 + // + // Unknown Offset 3 + // ------------------------------------------------------------------------------ + // UO3 Unknown Data byte[??] + // - // Header Layout (V2) + // Header Layout (V2) [WIP] // ------------------------------------------------------------------------------ // 0x00 Signature UInt32 // 0x04 Version UInt32 [0x0000000A] @@ -94,25 +102,9 @@ namespace BurnOutSharp.FileType // 0x34+TL+TAL+AL+WL Publisher String // 0x34+TL+TAL+AL+WL+PL Label Length UInt16 // 0x36+TL+TAL+AL+WL+PL Label String - - // Known Genre IDs (http://www.playj.com/static/genreindex_XX.html) - // ----------------------------------------------- - // 1 - Blues/Folk/Country - // 5 - Jazz - // 10 - Reggae - // 12 - Classical - // 13 - Electronic - // 15 - Pop/Rock - // 16 - World - // 17 - Urban - // 18 - Latin - // 20 - Soundtrack/Other - // 21 - New Age - // 22 - Spiritual - // 23 - Sway & Tech - // 24 - Jam Bands - // 25 - Comedy - // 26 - Brazilian + + // In the third block: + // lady.plj has 0x00000002 and references "ad006376_5.dat" after // Known Subgenre IDs (http://playj.com/static/subgenre_XX.html) // ----------------------------------------------- @@ -121,6 +113,7 @@ namespace BurnOutSharp.FileType // 4 - Blues/Folk/Country > Blues (Traditional) // 5 - Blues/Folk/Country > Folk (Traditional) // 6 - Blues/Folk/Country > Folk (Contemporary) + // 7 - Blues/Folk/Country > Folk (Jazz) // TODO: When converting to enum, fill in the rest } catch (Exception ex)