Posted August 04, 2013
It is nothing more than a simple hex edit of AM18.DLL
You need to make it bind the IMA to dsound.dll instead of dslite.dll (dslite does not function on NT based systems)
In any hex editor search for the string: dslite.dll in AM18.DLL, this should place you at offset 0x12820 in the file. Change it to dsound.dll and save the file, load it up without compatibility mode and IMA will function properly.
There is a AM18.DLL floating around on perhaps FilePlanet or some other random FTP that is nothing more than this particular string in the file changed. What's interesting is there is a invocation of regular dsound.dll already in the file but it appears to be for the actual sound system and not the IMA subsystem.
There's no ill effects to the music for causing it to bind the IMA to dsound.dll to my knowledge.
You can also apply this to Blood 2, infact the AM18.DLL I mention in this post that I downloaded in the past actually is interchangeable between the two games.
You need to make it bind the IMA to dsound.dll instead of dslite.dll (dslite does not function on NT based systems)
In any hex editor search for the string: dslite.dll in AM18.DLL, this should place you at offset 0x12820 in the file. Change it to dsound.dll and save the file, load it up without compatibility mode and IMA will function properly.
There is a AM18.DLL floating around on perhaps FilePlanet or some other random FTP that is nothing more than this particular string in the file changed. What's interesting is there is a invocation of regular dsound.dll already in the file but it appears to be for the actual sound system and not the IMA subsystem.
There's no ill effects to the music for causing it to bind the IMA to dsound.dll to my knowledge.
You can also apply this to Blood 2, infact the AM18.DLL I mention in this post that I downloaded in the past actually is interchangeable between the two games.