Looked at it. I've got 192MB in that machine, and apparently there's a bug in the game that causes it to react badly to over 32MB of RAM, with an error like "Error allocating XMS".
I can have Windows 98 expose less memory to the process, and the game launches, but no OPL3 audio then. Apparently there are some XMS-eater programs that would consume all the spare memory, but I haven't experimented with those yet.
That's the easy solution, but I'm tempted to find the error in the code and patch the binary.
Thanks for looking into it. Hmm, I recall that I was running the game on a Windows 95 (ver a or b most likely not OSR2) box with maybe 32MB of ram? Possibly 16MB
So on your machine, what sound card do you have installed? Are you able to select sound blaster 16 in the configuration?
Also, as a side note, I finally got to hear what it is supposed to sound like on archive.org :)
I've got a Creative Labs Sound Blaster 16 card. It's a version with ISA and PnP (no jumpers), but I don't remember the exact model number offhand.
I selected SB16 in the configuration without trouble.
I also did some extra credit work: I diagnosed and fixed the memory error that I described, to get it running on my machine. There's a place in the code where it gets the number of kilobytes of free RAM. It compares it to the required memory, then uses a "jg" (signed comparison, jump if greater) to jump. I changed that instruction to "ja" (unsigned comparison, jump if above), and the game boots correctly now.
Of course, the easier answer was always "download the demo from archive.org and run it in Dosbox", but then you're missing out on part of the fun ;-)
Thank you for the follow up. I have an old Pentium 3 laptop lying around that I have been meaning to try to use to simulate the audio issue. I am not convinced that giving the value of "dma" is what caused the audio glitch.
I wanted to record a video showing the issue so maybe we can try to trace what was causing the audio problem. It could have been maybe an old version of the shareware demo with the bug? Maybe there was something specifically wrong with my machine back in 1995? I do recall that I did have an ISA Sound Blaster 16 card. I am not entirely sure but I may have re-tested the game (and still had the problem) in 1998 when I got a better computer, this time with an AWE64 Value ISA card.
I have to embarrassingly admit that despite me studying CS, I would not know how to trace the game like you did to discover the cause of the memory problem. One day I hope to get to your level of expertise.
I have not been able to set aside some time to see if the audio glitch is reproduced on that Pentium 3 laptop. I am not even sure what kind of sound card is in there but it is the oldest hardware that I have so it will be worth a shot.
I can have Windows 98 expose less memory to the process, and the game launches, but no OPL3 audio then. Apparently there are some XMS-eater programs that would consume all the spare memory, but I haven't experimented with those yet.
That's the easy solution, but I'm tempted to find the error in the code and patch the binary.