Runtime Error 200
" bug
of Borland Pascal 7 on fast PCsNote: You are reading the download page. For more explanations and a nice index please go to the main page.
Notes:
Use: if your program is program.exe
,
enter the command tppatch program.exe
Warning: This patch will cause delay to run too fast on computers that are significantly faster than Pentium II with about 233 MHz. Some programs require correct timing, for those this patch may do more harm than help! Other programs should work fine with this.
Technical details:
TURBO.TPL
,
the file that contains the run time library of Turbo Pascal.
Works with TURBO.TPL
and optionally
TPP.TPL
(if you have Borland Pascal with protected mode)
of Turbo Pascal versions 7.0 and 7.01.Use: run this program in the same directory where the file TURBO.TPL is, for example C:\TP\BIN. Press P to apply the patches. This will create a new file TURBO.TPL and store the previous file as TURBO.OLD. Similar for TPP.TPL (if you have Borland Pascal with protected mode). After applying the patch simply recompile your pascal sources and the problem should be gone.
Note: if the program tells that it can't patch turbo.tpl, try the dos-command attrib -r turbo.tpl and try again, some cases were reported to me in which this file had the readonly attribute set, the above command will remove this.
Technical Details:
This unit comes as pascal source. It contains two things:
Additional feature: tries to make a program behave nice during delays if it runs in a multitasking environment. This will of course delay to be a too long and a bit different each time. If you don't like it, disable it in the source.
Use: In your program sources include this unit first, crt second, then all other units and then recompile your programs.
(maybe newer versions available here).
Patch procedure modifies the EXE file in memory while it is running.
No detailed description available yet.
The patch program for executables has the same problem as all these patches: if the patched program uses the delay procedure, this will run at incorrect speed, thus if the program requires precise timing and uses delay to do that, it will probably not work properly any more. Furthermore on even faster computers than today this patch will fail and the run time error will re-appear even with the patch applied.
Technical Details of RTL patch:
Warnings:
In the patched versions the delay procedure will use a 32 bit counter similar as in newdelay but without the nice idle behaviour.
Note: This is a new program version that will work also if you have only TURBO.TPL, no TPP.TPL (i.e. Turbo Pascal instead of Borland Pascal).
Note: This program is recommended by Borland.
Use: patch your TPL files, then recompile your pascal sources.
Warning: not only changes CRT.TPU, but also all other files in the Run Time Library. There are especially very many changes to SYSTEM.TPU. I find this a bit suspicious and are very uncomfortable with using the new file as long as I don't know precisely what's going on here.
Warning: this program probably causes the delay to run too fast, so likely the same warning applies as for TpPatch
Use: Install the TSR before any program is run that was compiled with Borland Pascal.
File contains exactly the same files CRT.ASM, CRT.PAS and CRT.TPU (included in TURBO.TPL) as BPPATCH.ZIP.
Warning: all the other TPU files contained in TURBO.TPL are different from the original files too, expecially SYSTEM.TPU contains a lot of changes. They are neither the version of Turbo Pascal 7.0, nor the ones of versions 7.01. I find this a bit suspicious and are very uncomfortable with using the new file as long as I don't know precisely what's going on here.