Microsoft KB Archive/255570

From BetaArchive Wiki

Article ID: 255570

Article Last Modified on 3/1/2007


  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition

This article was previously published under Q255570


This article applies only to MS-DOS-based 16-bit programs. Some MS-DOS-based programs (including terminate-and-stay-resident, or TSR programs), make use of the InDOS flag to manage synchronization. The InDOS flag is usually set to 1 when MS-DOS is handling certain operations and to zero otherwise.

The operations that affect the InDOS flag include absolute disk read and absolute disk write (interrupts 25h and 26h) operations. Under MS-DOS, the interrupt 25h and 26h handlers increment the InDOS flag, perform the disk operation, and then decrement the InDOS flag (on return, it is 0).

Because of a problem in the port of MS-DOS, the InDOS flag is decremented but never incremented. On the return of an interrupt 25h or 26h operation, the value of the InDOS flag is -1. After several interrupts, it becomes -2, -3, and so on. The InDOS flag is then corrupted and becomes meaningless. This may prevent some 16-bit MS-DOS-based programs that make use of the InDOS flag from working properly.


The disk operations are actually handled by the Windows NT Virtual DOS Machine (NTVDM), which is a 32-bit program, not by the MS-DOS emulator (Ntdos.sys). The interrupt 25h and 26h handlers do not call the functions that take care of the physical disk operation.


Windows 2000

To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

260910 How to Obtain the Latest Windows 2000 Service Pack

Windows NT 4.0

A supported fix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Apply it only to computers that are experiencing this specific problem.

To resolve this problem, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information about support costs, visit the following Microsoft Web site:

NOTE: In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

The English-language version of this fix should have the following file attributes or later:

   Date        Time     Size   File name  Platform
   02/23/2000  02:26p  27,858  Ntdos.sys  x86
   02/23/2000  02:26p  27,858  Ntdos.sys  Alpha


Windows 2000

Microsoft has confirmed that this is a problem in Windows 2000. This problem was first corrected in Windows 2000 Service Pack 1.

Windows NT 4.0

Microsoft has confirmed that this is a problem in Windows NT 4.0.

Keywords: kbhotfixserver kbqfe kbbug kbfix kbwin2000sp1fix KB255570