DOCUMENT:Q269149 05-SEP-2001 [winnt] TITLE :Code Page Specific Fonts Lost in DOS Graphics Mode PRODUCT :Microsoft Windows NT PROD/VER::2000,4.0 OPER/SYS: KEYWORDS:kbenv ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Windows NT Workstation version 4.0 - Microsoft Windows NT Server version 4.0 - Microsoft Windows NT Server, Enterprise Edition version 4.0 - Microsoft Windows 2000 Professional - Microsoft Windows 2000 Server - Microsoft Windows 2000 Advanced Server ------------------------------------------------------------------------------- SYMPTOMS ======== If your computer runs a different system default locale other than U.S. English, and uses an OEM/ASCII code page other than code page 437, and you have an MS-DOS program which uses extended characters based on your specific locale, the following behavior may occur: When your MS-DOS program switches to Graphics mode, and then back to Text mode at a screen attribute of 80x25 characters, these extended characters are not shown correctly when you run your program in Full Screen mode. CAUSE ===== The Microsoft Windows NT Virtual DOS Machine (NTVDM) cannot reload the missing font information that was lost when you switched back from Graphics mode. This behavior can occur for all code pages other than code page 437. RESOLUTION ========== To resolve this behavior, use any of the following methods: - After you return to Text mode, switch the console to Windowed mode. You may use the full screen when you are in Windowed mode. - Run the DOS program at a higher row count such as 43 or 50. - After you switch back from Graphics mode, run a tool (available from Microsoft Support) from the DOS program to reload the correct font information. NOTE: Tools for this process are available from Microsoft for Russian (code page 866) and Turkish (code page 857) languages. - Install a similar tool that reloads the font information as an INT 10h handler DOS call implemented in a terminate-and-stay-resident (TSR). NOTE: At present this tool is unavailable. STATUS ====== Microsoft has confirmed this to be a problem in the Microsoft products that are listed at the beginning of this article. MORE INFORMATION ================ To support extended code page fonts, the font image is loaded into the A000:0000 memory allocation space for the VGA adapter to use. When the computer's mode is changed to Graphics mode, that allotted memory space is used for the graphics plane and the font image data is removed. In DOS, the font image is also removed. DOS continues to work because when the mode is changed to Text mode, the font image is reloaded by the Display.sys file. This file hooks the INT 10h handler DOS call and reloads the font image. If you call the original INT 10H handler DOS call (located in the VGA BIOS), the same problem can occur. In NTVDM DOS, the Display.sys file does not exist. The INT 10h handler DOS call only changes the mode and does not reload the font image. The difference between Windowed mode and Full Screen mode is that INT 10h handler DOS calls are passed directly to the BIOS of the VGA adapter and the hooks provided by NTVDM are not used. Also, if the DOS program runs with a row count of 43 or 50, the VGA BIOS reloads. Additional query words: bulgarian polish russian hungarian latvian estonia belarussian ukranian hebrew greek czech 852 864 855 863 865 869 862 932 934 936 866 938 ====================================================================== Keywords : kbenv Technology : kbWinNTsearch kbWinNTWsearch kbWinNTW400 kbWinNTW400search kbWinNT400search kbwin2000AdvServ kbwin2000AdvServSearch kbwin2000Serv kbWinNTSsearch kbWinNTSEntSearch kbWinNTSEnt400 kbWinNTS400search kbWinNTS400 kbwin2000ServSearch kbwin2000Search kbwin2000ProSearch kbwin2000Pro kbWinAdvServSearch Version : :2000,4.0 Hardware : ALPHA x86 Issue type : kbbug Solution Type : kbnofix ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 2001.