mirror of
https://github.com/vgmstream/vgmstream.git
synced 2024-11-15 11:07:40 +01:00
Merge pull request #159 from bxaimc/master
Add type 3 GCM/IDSP variant for Lego LOTR (Wii) & Reduce strictness of EALayer 3 header checks
This commit is contained in:
commit
5cc215b408
@ -48,8 +48,9 @@ VGMSTREAM * init_vgmstream_ea_sps(STREAMFILE * streamFile) {
|
||||
if (!check_extensions(streamFile,"sps"))
|
||||
goto fail;
|
||||
|
||||
/* seems to be fixed */
|
||||
if ((read_32bitBE(0x00,streamFile) & 0xFFFFFF00) != 0x48000000)
|
||||
/* Very hacky but the original check for 0x48000000 rejected some playable files */
|
||||
if (((read_16bitBE(0x00,streamFile) & 0xFFFFFF00) != 0x4800) &&
|
||||
((read_8bit(0x00, streamFile) & 0xFFFFFF00) != 0x00))
|
||||
goto fail;
|
||||
|
||||
start_offset = read_8bit(0x03, streamFile);
|
||||
|
@ -1214,6 +1214,7 @@ fail:
|
||||
Lego Indiana Jones - The Original Adventures (Wii)
|
||||
Lego Indiana Jones 2 - The Adventure Continues (Wii)
|
||||
Lego Star Wars - The Complete Saga (Wii)
|
||||
Lego The Lord of the Rings (Wii)
|
||||
The Chronicles of Narnia - Prince Caspian (Wii) */
|
||||
VGMSTREAM * init_vgmstream_wii_idsp(STREAMFILE *streamFile) {
|
||||
VGMSTREAM * vgmstream = NULL;
|
||||
@ -1249,6 +1250,14 @@ VGMSTREAM * init_vgmstream_wii_idsp(STREAMFILE *streamFile) {
|
||||
|
||||
start_offset = 0xe0;
|
||||
}
|
||||
else if (read_32bitBE(0x4, streamFile) == 3 && //Lego The Lord of the Rings (Wii)
|
||||
read_32bitBE(0x8, streamFile) == 0x12c)
|
||||
{
|
||||
if (read_dsp_header(&ch0_header, 0x20, streamFile)) goto fail;
|
||||
if (read_dsp_header(&ch1_header, 0x80, streamFile)) goto fail;
|
||||
|
||||
start_offset = 0xe0;
|
||||
}
|
||||
else goto fail;
|
||||
|
||||
interleave = read_32bitBE(0xc, streamFile);
|
||||
|
Loading…
Reference in New Issue
Block a user