How to fix a Run Time Error 200

Run Time Error 200 (Divide by Zero) is usually caused by a bug in older versions of Turbo Pascal and Borland Pascal compilers (version 6 and earlier). The bug was specifically in the CRT.ASM unit included with these compilers.

DOS based programs that were compiled using these buggy versions of the CRT unit will generate the RTE200 error when started on a CPU that is faster then 200 Mhz (though some non-Intel CPU's would avoid the error up to 350 Mhz).

One solution is to recompile the source code using a later version of Pascal, or a fixed CRT.ASM unit. Obviously that's only possible if you have the source code available.

The more common solution is to patch the .EXE file to disable the bug. There are several programs that allow this. The one I recommend is PatchCRT by Kennedy Software. This one is more compatible then most others, including TPPatch (which is less effecent, and uses German results and error text).

Original article

dos/cpu_patch.txt · Last modified: 2022-10-20 01:40 by e1z0
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial 4.0 International
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki