Reply 20 of 37, by jwt27
- Rank
- Oldbie
wrote:I have just run Lotus III version 14/07/93 on a Pentium II DOS machine with no joysticks attached at all. The music played at the correct speed. I did not use any slowdown utility; I first successfully ran it with the CPU's internal cache disabled, then at full speed after figuring out how to patch away the "invalid opcode error" (actually a divide overflow): open LOTUS.DAT with a hex editor, search for FB F7 F1 and replace with FB 90 90. It worked correctly (as far as I can tell) with that change applied at full machine speed.
Have you tried running the game on a different machine, with a different game controller card or at least with a different joystick cable? It's not out of the question that either the controller card or the cable might give the game false positives by reporting sponanteous bit changes.
Wow, thank you so much, that fixed it! It runs without any slowdown tools now and I no longer need to have any controllers connected! And the framerate is just perfect, I don't recall this game ever running as smooth as it does now!
And you're right, I said "invalid opcode error" but that happened with some other game. Lotus crashed with a divide overflow. Is it the same bug as the well known Borland runtime error 200 that happens with certain other games?
How do you even find these fixes? I wouldn't have any idea where to look... And if I did I would probably be looking in the exe, not the dat file, 🤣.