I'm trying to get Indy256 and Monkey Island to work with my K5-PR166 system and the patched EXEs still return divide by zero errors.. Has anyone gotten these to work with a AMD K5?
Retronautics: A digital gallery of my retro computers, hardware and projects.
I've tried the SoMI patch and kept getting divide errors. The solution I use for making these games work under MS-DOS is by using a utility called Setmul. You can use Setmul to disable the L1 Cache of your CPU which will slow things down enough to let you play these games properly.
You can also use a program called MySlow under Windows 9x which will also allow you to play them without having to boot into DOS.
I will give setmul a try but I am not sure it works with K5, we will see..
I also thought these slow-down utilities which can disable caches only work on certain processors....maybe I should try it on my P3 700mhz (which has zero hardware slowdown/BIOS-enabled type stuff from what I can see on my 440bx MB's bios).
Also, BTW, I'm still able to play Monkey Island 1 and 2 at the seemingly correct speed on my P3 - I didn't patch the .EXE or anything. (I've tried them both through Win98, and exiting to pure DOS mode as well).
The divide error in Indy 3 and Monkey 1 are part of the AdLib-related code. There are no other CPU speed related issues in the code that I'm aware of. If you force these games into pure PC Speaker mode by running them with the "i" parameter, the games should work perfectly fine regardless of the CPU speed.
Later releases of Monkey 1 don't have that divide error and I think that by the time Monkey 2 came out the problem in the AdLib code was fixed for good.
It's possible to apply a custom patch to the executable that fixes the divide error. I've created such a patch for the EGA version of Monkey 1 last year. And I think I also created patches for the VGA floppy versions of Indy 3 and Monkey 1. If you want to create fully fixed executables for these games so that you don't have to rely on slowdown utilities anymore, let me know.
My copy of Loom EGA (version 3.5.37) doesn't have the problem with the divide eror.
Monkey 1 VGA and Indy 3 VGA are basically 1-byte fixes, the fixes for Monkey 1 EGA are a bit more complicated. If you have a different version, I would need you to send me the executables.
Edit: corrected the patches for Monkey 1 VGA and Indy 3 and added Loom VGA/CD as well as another version of Monkey 1 VGA Edit 2: corrected the version number for Loom
Last edited by K1n9_Duk3 on 2021-04-23, 22:23. Edited 1 time in total.