Dos Runtime Error 1
Contents |
CRT.ASM unit included with these compilers. DOS based programs that were compiled using these runtime error 200 dos buggy versions of the CRT unit will generate the RTE200 error when
Runtime Error At 1 0
started on a CPU that is faster then 200 Mhz (though some non-Intel CPU's would avoid the error up
Runtime Error At 1 0 Cannot Import Dll C
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
Runtime Error At 1 0 Malwarebytes
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). I'd suggest keeping PatchCRT.exe in your path, so that you runtime error at 1 145 can run it from any directory simply by typing it followed by the name of the .EXE to be patched. PatchCRT will only be able to patch .EXE files which have not been compressed by an EXE compressor, such as aPACK, Diet, LZEXE, PKLite, Petite, UPX, etc. If PatchCRT fails to patch the .EXE, there is a good chance it is because the .EXE has been compressed. The best tool I have found to uncompress .EXE files is UNP. This has worked for about 80% of the compressed .EXE files I have encountered. The nice thing about UNP is it runs well under Windows. My second choice would be CUP386, but this works best in a plain DOS environment without any extended memory manager (including himem.sys or emm386.sys) installed. I have used this tool to uncompress several .EXE's which UNP was unable to do. Once you have sucessfully uncompressed a compressed .EXE file, you should then be able to run PatchCRT on it to remove the RTE200 bug. If all the above fails, the other option is to run a TSR (Terminate and Stay Resident) utility th
File not found 03 Path not found 04 Too many open files (no handles left) 05 Access denied runtime error at 1 0 fix 06 Invalid handle 07 Memory control blocks destroyed 08 Insufficient memory 09 runtime error windows8 1 Invalid memory block address 0A Invalid environment 0B Invalid format 0C Invalid access mode (open mode is invalid) 0D win8 1 runtime error Invalid data 0E Reserved 0F Invalid drive specified 10 Attempt to remove current directory 11 Not same device 12 No more files 13 Attempt to write on a write-protected diskette http://www.pcmicro.com/elebbs/faq/rte200.html 14 Unknown unit 15 Drive not ready 16 Unknown command 17 CRC error 18 Bad request structure length 19 Seek error 1A Unknown media type 1B Sector not found 1C Printer out of paper 1D Write fault 1E Read fault 1F General failure 20 Sharing violation 21 Lock violation 22 Invalid disk change 23 FCB unavailable 24 Sharing buffer overflow http://stanislavs.org/helppc/dos_error_codes.html 25 Reserved 26 Unable to complete file operation (DOS 4.x) 27-31 Reserved 32 Network request not supported 33 Remote computer not listening 34 Duplicate name on network 35 Network name not found 36 Network busy 37 Network device no longer exists 38 NetBIOS command limit exceeded 39 Network adapter error 3A Incorrect network response 3B Unexpected network error 3C Incompatible remote adapter 3D Print queue full 3E No space for print file 3F Print file deleted 40 Network name deleted 41 Access denied 42 Network device type incorrect 43 Network name not found 44 Network name limit exceeded 45 NetBIOS session limit exceeded 46 Temporarily paused 47 Network request not accepted 48 Print or disk redirection is paused 49-4F Reserved 50 File already exists 51 Reserved 52 Cannot make directory entry 53 Fail on INT 24 54 Too many redirections 55 Duplicate redirection 56 Invalid password 57 Invalid parameter 58 Network device fault 59 Function not supported by network (DOS 4.x) 5A Required system component not installed (DOS 4.x) DOS Error Code/Classes Error Classes 01 Out of resource, out
games running before you start asking questions. Topic locked 3 posts • Page 1 of 1 Fix "Error 200" (Divide by zero) - by Snover and Stiletto, with thanks to http://www.vogons.org/viewtopic.php?t=93 edelbeb by Snover » 2002-7-26 @ 00:40 If you're trying to play an old http://mtech.dk/thomsen/program/pasbug.php game and it was written in Turbo Pascal, chances are, on any machine over 200MHz, you will get an Error 200 (Divide by zero error). This program corrects the problem by patching your executable. From the readme... ctbppat v1.2 © Andreas Stiller [April 2000]ctbppat fixes programs coded in Borland Pascal that cause runtime error 200 runtime error on systems with clock speeds of over 200MHz. This error occurs due to incorrect initialisation of the DELAY counter.ctbppat is also a universal EXE scanner, monitor, and patcher. It supports the usual EXE formats -- MZ for DOS; NE for OS/2, DPMI, and Windows 3.11; and PE for 32-bit environments -- and can detect the language with which the file was created. Running "bppatch *.* /s [/p]" will list runtime error at all file formats in the current directory.If you use the switches /NE, /MZ, or /PE, ctbppat will be restricted to the respective EXE format. This will increase the speed with which it can analyse files. Running in pure DOS mode with SmartDrive (if possible) will also increase analysation speed.If ctbppat finds an executable made with Borland Pascal 7.0, it will examine the file further to determine if it uses an original or changed CRT unit, whether this unit is already patched, and whether the DELAY function is called at all. (If it is not, patching is unnecessary.)Depending on the result of this examination, ctbppat may offer to patch the file. If the DELAY function is used, it can be fixed by using a different delay routine that should function properly up to ~4GHz.To do this, the BREAK routine in the CRT unit is shortened and the delay code patched into the free space.If DELAY is not used, the divisor is simply increased to 65535. This will prevent DELAY from operating; however, this will ensure that the program is able to run (theorhetically) on a 300GHz CPU.If the CRT unit has been changed, but contains the same incorrect initialisation, ctbppat will modify the faulty divisor (255
MSS03USA 2006South Africa 2008 Last updated: July 18th, 1999(Uploaded May 17th, 1998) Runtime Error 200 running a Pascal program on fast systems (PII 266+) Contents of this document General information Programmers information Programmers Option 1: Enhancing the Delay-routine Programmers Option 2: Removing the Delay-routine Optional replacement delayloop Users Patch-program General information The Runtime Error 200 (Division by zero) bug is not part of the Pentium Errors. It's a mistake Borland made. The initialization part of the CRT unit has a calibration loop for the procedure DELAY. The resulting value of a counter depends on the speed of the cpu. This counter has an overflow on high speed cpu's, including Pentium II 266 Mhz and faster. Actually it is the same bug that on earlier processors caused Delay to be inaccurate, that now causes programs to fail with a runtime error if they use the CRT unit! Some (earlier?) compiler versions mysteriously seem to go free of this bug - Delphi doesn't have them, for instance, and Turbo Pascal 6 seems to work too. Please note: I take no responsibility for the potential damage people may do to their RTL's, working programs or vital data while using the instructions in this document. Keep backups of the appropriate files! (and then some...) Programmers As a programmer you have several different options. First of all you can disable the delay-routine completely. If you need a delay routine you can use the one found in this document, you can create your own, or you can find another one somewhere on the web. Another solution is to change the Delay-routine so it will work on todays fast systems. This solution found in this document should push the problem about 10 years into the future if we assume that Moores Law is correct. If you're having Borland Pascal, you also have the sources of the runtime library. Just make the following changes and recompile the complete runtime library. A MAKEFILE is included with the sources. If you have Turbo Pascal only, it's a bit more complicated. You'll need the sources of unit CRT. At least the files CRT.PAS, CRT.ASM and SE.ASM. They are the same in 7.0 and 7.01. Unf