First post, by kjliew
The game, both demo and retailed version is a "trojan" by nature, the installation and uninstallation tried to replace several system files and triggered Win98SE SFP but still corrupting a good OS image. Luckily with Win98SE VM, the image can be restored within minutes. If anyone tried it on real system, then good luck. The game even shipped with VtoolsD "ramlockC.VXD" and I wonder how anyone could ever run the game on anything other than Win98/ME.
The game checked for installed DirectX version and it had to be precisely version 6.1 to continue, even after the stable official 1.2 patch. Unfortunately 1.3 patch (which also had the check removed) was unstable, especially for Direct3D renderer, resulting in HUD loss switching in and out of game. So the best option is to bypass the DirectX version check and stay with last stable 1.2 patch. The following is the patch for both the playable demo and retailed version 1.2 of the game, meant for audience comfortable with hex-editing the game EXEs. It applies for all the versions, 3Dfx, D3D and Software, but I doubt anyone would be interested in the Software version.
(xx = don't care)
Search: 85 C0 75 xx 68 00 00 18 40
Replace: xx xx EB xx xx xx xx xx xx
After the patch, the both the demo and retailed 1.2 version worked perfectly for QEMU. It is easier for the 3Dfx version, both dgVoodoo2 and nGlide render the game correctly, but both aren't available outside of Windows. Both OpenGlide and Zeckensack's Glide Wrapper failed on this game. Luckily, the D3D version works out great on QEMU with WineD3D, so this could be the only way to play for modern Linux.
Requiem Avenging Angel (1999) Retailed 1.2 Direct3D at 1024x768 native on Win98 VM