A freeware utility, which patches some older MS-DOS EXE files, to permit
them to run on fast Pentium CPUs.
This speed problem applies only on CPUs which match or exceed the speed of a Pentium 200
(approx), and applies only to some older versions of a specific software module named
CRT.ASM, which was part of the Turbo-Pascal offerings from Borland.
Be aware that this CRT.ASM module has been used in a variety of other products, and it is
often not initially obvious that some flawed CRT.ASM code is embedded in other apps.
The symptom is a Divide-by-Zero error message when the app is run on a fast CPU,
or a Divide Overflow error message, or a Runtime Error 200 message, or
similar. Unfortunately, the error message usually won't simply say that the CPU is too
fast !.
The preferred solution is to use an updated version of CRT.ASM, or to contact the software
developer, and request that an updated CRT.ASM be used to re-build the app/utility.
However, if this is not possible, then PatchCRT can be tried. Similar CRT.ASM
"patchers" are available from others - though feedback suggests that a few
different versions of flawed CRT.ASM code were released, and that this patcher copes with
all known releases. Note: we've seen a few EXE files with the 200 error, but which
PatchCRT, up to ver 1.5, would not adjust. On looking inside these EXEs, we noticed some
code which is similar to published versions of CRT.ASM, but not EXACTLY the same. As of
Jan 2000, we released ver 1.6, which also recognises this similar code, and
patches it accordingly. Which is another way of saying - TEST your app carefully, if
PatchCRT patches it !!.
This program is freeware: use it at your own risk; take good backups first; test
carefully - the usual small print.
We'd appreciate feedback, if it works for you, and feedback if it does not !.
Download PatchCRT.ZIP.
This file-size is about 30k. (See Download Instructions).
Note-1: Sometimes, EXE files are Compressed. PatchCRT does not include any de-compression
code, and therefore will not repair compressed EXE files. If PatchCRT does not work for
you, you might check if the EXE file is compressed, eg using PKLITE, LZEXE, etc. (To do
so, you'll probably need to analyse the internal structure of the EXE file, which is WAY
outside the scope of this brief note!!). If it's compressed, identify the compressor that
was used, run the appropriate de-compressor and retry PatchCRT on the de-compressed file.
If it works, you can probably re-compress the updated file, or just use the de-compressed
version.
Note-2: We think there is some other software product out there with the same name
(PatchCRT). We apologise if this is a source of confusion. We could change the name of
this utility, if needed, though it has been on Compuserve (and on this website!) for some
years, and it's probably now "late-in-the-day" to change it. Also, the need for
this utility is quite small, and a duplicate name is probably of little concern.
Note-3: Some nice comments, and variour useful advice, links, etc, at: http://www.pcmicro.com/elebbs/faq/rte200.html.
Thank you! |