I may have got the DLE 2.1 enhancement working now with fastboot but a sanity check is needed
I've never played the Dragons Lair enhancements and don't know how to tell the difference from the original. Can you let me know what I should be looking for to verify it is working with the enhancement?
So here's what I did...
I know the original rom and the DLE1.1 rom has the fastboot patch in memory address 0x121b and 0x1235 from my above post.
Those positions are within range of the first bin file - "dle11u1l.bin" file.
static struct rom_def roms[] =
{
{ "dle11u1l.bin", NULL, &m_cpumem[0x0000], 0x2000, 0x9E65B33D },
{ "dle11u2l.bin", NULL, &m_cpumem[0x2000], 0x2000, 0xF16FA36F },
{ "dle11u3l.bin", NULL, &m_cpumem[0x4000], 0x2000, 0xB8D07A16 },
{ "dle11u4l.bin", NULL, &m_cpumem[0x6000], 0x2000, 0x20FC79B7 },
{ NULL }
};
Looking at the file contents in hex editor I can see the hex value at both addresses is
F0 and that value does not appear often throughout the rest of the file.
Looking at the DLE21 rom, I verified that those addresses are within range of the first bin file - DLE21_U1.bin, and the contents confirm that DLE21 has
F0 at the same address
static struct rom_def roms[] =
{
{ "DLE21_U1.bin", NULL, &m_cpumem[0x0000], 0x2000, 0x4F8AF481 },
{ "DLE21_U2.bin", NULL, &m_cpumem[0x2000], 0x2000, 0x5FCA04C5 },
{ "DLE21_U3.bin", NULL, &m_cpumem[0x4000], 0x2000, 0xC14F36B3 },
{ NULL }
};
So, I patched the file and tried executing in Daphne with the -nocrc flag (to bypass the file level CRC checks). Didn't work though, because the dragons lair rom seems to have a built in CRC ROM check
I was left with 2 options.
1) compile daphne
2) figure a workaround for the roms CRC check
I tried 1), compiling Daphne was PITA, lots of pre-requisites, libraries and versions, had me going crazy. I managed to build a daphne.exe for windows but it would not run.
Maybe will revisit this one some time.
2) Workaround.
I came up with a cheeky workaround to fool Daphne into thinking the original Dragons Lair rom is being launched...
* Extract all files from the original dragons lair rom (lair.zip) into a folder. My version has 32 files.
* Delete the first 3 files: dl_a_u1.bin, dl_a_u2.bin, dl_a_u3.bin
* Copy all 4 files from the DLE21.zip into above folder: DLE21_U1.BIN, DLE_U2.BIN, DLE21_U3.BIN, readme21.txt
* Rename the 3 bin files inline with the original rom: DLE21_U1.BIN > dl_a_u1.bin, DLE21_U2.bin > dl_a_u2.bin, DLE_U3.bin > dl_a_u3.bin
* Leave the readme21.txt alone
* Zip the folder contents to make lair.zip and place this in the roms folder.
That's it.
Workaround was tested with the -fastboot flag.
daphne lair vldp -framefile "<framefile path>" -nocrc
In line with the rules on this site, I won't be posting any rom files.
Would be good for someone to verify the procedure above and also to sanity check the DLE21 is running as it should.
Jon