home *** CD-ROM | disk | FTP | other *** search
- STYLE TopMargin 2.8 Inch,BottomMargin 1 Inch,HeaderSpacing .6 Inch
- PAGEFOOTING
- BEGIN PAGEHEADING
- PRODUCT : TURBO PASCAL EDITOR TOOLBOX@>( )NUMBER : 443
- VERSION : 4.0
- OS : MS-DOS, PC-DOS
- DATE : SEPTEMBER 20, 1988@>( )PAGE : @value(page)/2
-
- TITLE : MICROSTAR CRITICAL ERROR HANDLER CORRECTIONS
- END PAGEHEADING
- BEGIN HEADERT
- PRODUCT : TURBO PASCAL EDITOR TOOLBOX@>( )NUMBER : 443
- VERSION : 4.0
- OS : MS-DOS, PC-DOS
- DATE : SEPTEMBER 20, 1988@>( )PAGE : @value(page)/2
-
- TITLE : MICROSTAR CRITICAL ERROR HANDLER CORRECTIONS
- END HEADERT
-
-
-
- This handout addresses a problem reported by users of the Turbo
- Pascal Editor Toolbox version 4.0.
-
- Users have found that MicroStar cannot recover from a DOS
- Critical Error. DOS Critical Errors occur when attempting to
- write or read a disk file with the disk door open, the drive
- empty, or the printer out of paper, etc. MicroStar reports the
- Critical Error correctly. However, the error will continue to be
- reported even when the error condition has been corrected (the
- drive door closed, the printer loaded with paper, etc). The only
- solution is to quit MicroStar and lose any of the changes to the
- current file since the last correct save.
-
- The problem lies with the Interrupt 24 Handler (the DOS Critical
- Error Handler) implemented within MicroStar; its source may be
- found in the file INT24.ASM of the MicroStar source code. The
- INT24.ASM correctly identifies Critical Errors but does not reset
- the flag signaling a DOS Critical Error properly. The solution
- involves correcting one line of INT24.ASM, reassembling IN24.ASM
- to an object format (INT24.OBJ), and recompiling the complete
- source for MicroStar.
-
- 1. Load INT24.ASM into an ASCII editor (Turbo Pascal's editor
- will do).
-
- 2. Find Line 68 which should read as follows:
-
- MOV CS:Int24ErrCode,0 ;Reset Int24ErrCode to 0
-
- 3. Replace this text with the following line.
-
- MOV CS:Int24Err,0 ;Reset Int24Err to 0
-
- 4. Use the Microsoft or a compatible assembler to assemble
- the code to an object format (.OBJ). This must replace
- the INT24.OBJ supplied with the distribution disks.
-
- 5. Set the compiler destination to disk
- (Compile/Destination option). Load MS.PAS into the editor
- and perform a build (Compile/Build option) on the entire
- application. Make sure the entire MicroStar source is
- available for recompilation.
-
-
- For those without an assembler, the following Turbo Pascal
- program corrects the unmodified MicroStar EXE file. From the
- directory containing MicroStar, enter the following lines of code
- into the Turbo Pascal editor and run from either memory or disk.
-
- program ChMS;
-
- var
- f : file of byte;
- b : byte;
-
- begin
-
- Assign(f,'MS.EXE');
- reset(f);
-
- seek( f, 129626); b := 30; write( f, b);
- seek( f, 154257); b := 101; write( f, b);
- seek( f, 154305); b := 4; write( f, b);
- seek( f, 154401); b := 103; write( f, b);
- seek( f, 154431); b := 115; write( f, b);
- seek( f, 154701); b := 108; write( f, b);
- seek( f, 154827); b := 108; write( f, b);
-
- close(f);
-
- end.
-