BUG: Printing to stdout with CV /2 Can Cause Screen Corruption

ID: Q116489


The information in this article applies to:
  • Microsoft CodeView for MS-DOS, versions 4.0, 4.01, 4.1


SYMPTOMS

Screen corruption occurs when printing to stdout from a DOS application, while using CV /2 to start CodeView in a DOS session under Windows. Portions of the screen may get blanked out and restored from old buffered screens, the mouse position may move to the middle of the screen, or existing text may get overwritten. Note that these problems do not occur when running outside of Windows under native DOS.


RESOLUTION

To work around the problem, you can debug under native DOS or switch to single monitor mode.

Depending on your application, the following may also work while debugging under Windows:

  • Clear the screen before starting CV at the DOS session prompt.


  • If you have Visual C++, start CodeView for DOS from the Workbench Tools menu.



STATUS

Microsoft has confirmed this to be a problem with the interaction between Windows and CodeView for DOS while running in a Windows DOS session. We will post more information here in the Knowledge Base as it becomes available.


MORE INFORMATION

The example program below demonstrates the problem. Once you have built the program, run CodeView in dual monitor mode and step through the code in the debugger, observing the changes to the VGA screen. It is best to begin with a full screen of text before starting CodeView.

Sample Code


/* Compile options needed: /Zi /Od */ 
#include <stdio.h>

void main( void )
{
    int i;

    for( i = 0; i < 50; i++ )
    {
        fprintf( stdout,"Hello World\n" );
    }
} 

Additional query words: 4.00 4.10

Keywords : kb16bitonly
Version : :4.0,4.01,4.1
Platform :
Issue type :


Last Reviewed: October 27, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.