Appendix A Microsoft OpenGL Information
Submitted by Samuel Paik.
- Mini
Client Driver
- S3Virge
- [Sample Windows 2000 display driver supporting DirectDraw,
Direct3D, OpenGL MCD, Video Port Extensions]
- OpenGL
for 3D Color Graphics Programming
- [Summary of OpenGL support in Windows]
- Driver
Licensing Program for OpenGL and Direct3D
- WHQL
- Test Kits and Procedures
- [OpenGL Conformance tests are included in the display
driver tests]
- GDI
Display Drivers in Windows 2000
- GDI
Display Drivers in Windows 2000
- Multimedia
Components in Windows 95 and Windows 2000
- Implementing
Display Control Panel Extensions in Windows 95 and
Windows 98
- [Notes on acceptible "Wait for Vblank" usage]
- Microsoft
Releases New 3-D DDK
- [New ICD kit announcement including SGI OpenGL
improvements--result of OpenGL truce with SGI]
Fluff articles
- Industry
Solutions: OpenGL Update
- [Says OpenGL is important to Microsoft and that OpenGL 1.2
support will likely be available in a future Windows 2000
Service Pack]
- Insider:
Fixing Color Distortions in Windows 98 3D Screen Savers
- Windows
NT Workstation: Benchmark Results: Windows NT Workstation
4.0 Bests Unix Workstations in Two Industry-Standard
Engineering Application Benchmarks
- Windows
NT Workstation: Windows NT Workstation and Windows 95:
Technical Differences
- [Windows 95 acquired OpenGL with Service Pack 1]
- POCKETPC:
Here Comes GAPI!
- [OpenGL and DirectX are too heavyweight for CE, so yet
another "Game API"]
- PressPass:
Microsoft Delivers Performance-Leading Version of OpenGL
- [OpenGL 1.1 introduced for Windows 95 and Windows NT, 1.1
bundled with NT 4.0]
- PressPass:
Silicon Graphics and Microsoft Form Strategic Alliance To
Define the Future of Graphics
- [Fahrenheit project announcement--goes with OpenGL truce]
- PressPass:
Microsoft and Silicon Graphics Define Distribution And
Support of OpenGL on the Windows Platform
- [Truce over OpenGL--goes with Fahrenheit announcement.
New DDK to incorporate old ICD DDK with code from SGI
OpenGL]
- OpenGL
3-D Graphics
- [OpenGL technology brief]
- EMRGLSBOUNDEDRECORD
- The EMRGLSBOUNDEDRECORD structure contains members for
an enhanced metafile record generated by OpenGL functions.
It contains data for OpenGL functions with information in
pixel units that must be scaled when playing the metafile.
- EMRGLSRECORD
- The EMRGLSRECORD structure contains members for an
enhanced metafile record generated by OpenGL functions,
It contains data for OpenGL functions that scale
automatically to the OpenGL viewport.
- OpenGL
- Legal
Information
- Overview
- Win32 Extensions to OpenGL
-
- Reference
- Porting to OpenGL
- Glossary
- Appendix
OpenGL technical articles
- OpenGL
1.1
- [OpenGL 1.1 was first introduced into the Windows 9X line
with Windows 95, OEM Service Release 2]
- OpenGL
I: Quick Start
- This article describes GLEasy, a simple OpenGL program.
OpenGL is a three-dimensional (3-D) graphics library
included with the Microsoft® Windows NT® version 3.5
operating system. GLEasy is a Microsoft Foundation Class
Library (MFC) application that provides a good starting
point for investigations into the Windows NT
implementation of OpenGL.
- OpenGL
II: Windows Palettes in RGBA Mode
- If a program written for the Microsoft® Windows®
operating system needs more than 16 colors and is running
on an 8-bits-per-pixel (bpp) display adapter, the program
must create and use a palette. OpenGL programs running on
Windows NT® or (eventually) Windows 95 are no exception.
OpenGL imposes additional requirements on the colors and
their locations on the palette in RGBA mode. The articles
"OpenGL I: Quick Start" and "Windows NT
OpenGL: Getting Started" in the MSDN Library cover
the basics of using OpenGL in a Windows-based program and
are required reading for this article. Two sample
applications, GLEasy and GLpal, accompany this article.
- OpenGL
III: Building an OpenGL C++ Class
- This article discusses the development of a C++ class
library for encapsulating OpenGLT code. The C++ class
presented is for demonstration and educational purposes
only. I will expand the class library for future OpenGL
articles. The class library is not currently part of the
Microsoft® Foundation Class Library (MFC), and there are
no plans to add this class to MFC in the future. I assume
that the reader has already read the first article in
this series, "OpenGL I: Quick Start," in the
MSDN Library. The class library is in the GLlib.DLL file
included with this article. The EasyGL sample application,
also included with this article, uses the classes in
GLlib.DLL.
- Color
Index Mode
- This article explores the Windows NTT implementation of
OpenGLT color index mode. In color index mode, colors are
specified as indexes into a palette instead of as levels
of red, green, and blue. The EasyCI sample application (provided
with this article) is a conversion of EasyGL that uses
color index mode. EasyCI uses the GLlib.DLL, also
included with this article.
- OpenGL
IV: Translating Windows DIBs
- OpenGLT is a portable language for rendering three-dimensional
(3-D) graphics. OpenGL does not understand Microsoft®
Windows® device-independent bitmaps (DIBs); instead, it
has its own format for representing images. This article
explains how to translate a Windows DIB into a format
usable with OpenGL. Some knowledge of the Windows DIB
format and the Microsoft Foundation Class Library (MFC)
is expected. The EasyDIB sample application and GLlib
dynamic-link library (DLL) demonstrate the ideas
presented in this article.
- OpenGL
VI: Rendering on DIBs with PFD_DRAW_TO_BITMAP
- The PFD_DRAW_TO_BITMAP pixel format descriptor flag
allows OpenGLT applications to render on a Microsoft®
Windows® device-independent bitmap (DIB). The resulting
DIB can be manipulated to the full extent using the
commands in the Windows graphics device interface (GDI).
This article explains how you can render OpenGL scenes on
DIBs with PFD_DRAW_TO_BITMAP. The EasyBit sample
application demonstrates the techniques presented in the
article.
- OpenGL
VII: Scratching the Surface of Texture Mapping
- This article explains how to apply bitmaps to OpenGLT
surfaces to give them a realistic appearance. The bitmaps
are known as textures and can resemble wood,
marble, or any other interesting material or pattern. The
process of applying or mapping a texture to a surface is
known as texture mapping. The EasyTex and PicCube
sample applications demonstrate the concepts discussed in
this article.
- OpenGL
VIII: wglUseFontOutlines
- This article explains how to use the Win32® wglUseFontOutlines
function. This function creates three-dimensional (3-D)
characters based on a TrueType® font for use in OpenGLT-rendered
scenes. The EasyFont sample application demonstrates
using wglUseFontOutlines.
- Windows
NT OpenGL: Getting Started
- OpenGL, an industry-standard three-dimensional software
interface, is now a part of Microsoft® Windows NTT
version 3.5. As a hardware-independent interface, the
operating system needs to provide pixel format and
rendering context management functions. Windows NT
provides a generic graphics device interface (GDI)
implementation for this as well as a device
implementation. This article details these
implementations, OpenGL/NT functions, and tasks that
applications need to accomplish before OpenGL commands
can be used to render images on the device surface.
- CUBE:
Demonstrates an OpenGL Application
- CUBE is a simple OpenGLT application. It demonstrates how
to integrate OpenGL with the MFC single document
interface (SDI), and how OpenGL's resource contexts are
used in conjunction with device contexts.
- OPENGL:
Demonstrates Using OpenGL
- This sample creates a control that draws a spinning cube
using the OpenGL graphics library. [Uses ATL: Active
Template Library]
- OpenGL
Without the Pain: Creating a Reusable 3D View Class for
MFC
- DirectX
6.0 Goes Ballistic With Multiple New Features And Much
Faster Code
- Get
Fast and Simple 3D Rendering with DrawPrimitive and
DirectX 5.0
- February
97 Microsoft Interactive Developer Column: Fun and Games
- [claims OpenGL will be based on Direct3D Immediate Mode
in the future--I believe this work on this ended some
time ago, may eventually be revived]
- Poking
Around Under the Hood: A Programmer's View of Windows NT
4.0
- [What's new with Windows NT 4.0, including WGL (very
misleading information)]
- Windows
NT Resource Kit: Registry Value Entries: Video Device
Driver Entries
- [OpenGL registry keys, among others]
- Windows
NT Resource Kit: Dynamic Link Library Files
- [Annotated list of system DLLs]
- DirectX
Developer FAQ
- [Notes that the DX7 Direct3D lighting model was changed
to match OpenGL lighting]
Useful other articles
- DIBs
and Their Use
- This article discusses the DIB (device-independent bitmap)
concept from definition and structure to the API that
uses it. Included is a small sample application that
illustrates some of the most common methods of using DIBs
to display and manipulate digital images. Functions
discussed are GetDIBits, SetDIBits, CreateDIBitmap,
SetDIBitsToDevice, StretchDIBits, and CreateDIBPatternBrush.
This article does not discuss using palettes with DIBs.
- Using
DIBs with Palettes
- This article discusses using palettes in conjunction with
DIBs (device-independent bitmaps). It does not delve into
involved uses of the Microsoft® WindowsT Palette Manager.
- Creating
Programs Without a Standard Windows User Interface Using
Visual C++ and MFC
- Microsoft® Visual C++T and the Microsoft Foundation
Class Libraries (MFC) provided a very fast way to get a
standard WindowsT-based application up and running. But
what if you don't want the normal look and feel? Many
games and educational applications have special user
interface needs that can't be met with the standard
Windows user interface. This article takes a look at
creating a simple child's coloring game that uses only a
single window and has no window border, caption, buttons,
cursor, or any other recognizable elements of a Windows
user interface.
Knowledge Base
Current
- Q254265
- 'Advanced' Button Under 'Display' Does Not Work After
Installation of Windows NT 4.0 Drivers in Windows 2000
- [Windows 2000] After you upgrade from Microsoft Windows
NT 4.0 to Microsoft Windows 2000, or after you install
Windows NT 4.0 drivers in Windows 2000, and you click the
Advanced button on the Settings tab under Display in
Control Panel, you may receive an error message.
- Q253521
- INFO: OpenGL Drivers
- OpenGL drivers have traditionally been provided by the
hardware vendors who provide the 3D adapter in your
computer.
- Q247438
- OpenGL Support Not Available on nVidia TNT2 Card in
Microsoft Windows 2000
- [Windows 2000] When you attempt to play a game that
requires support for the OpenGL standard (for three-dimensional
graphics display) on a Microsoft Windows 2000-based
computer, the game does not run. [ed note: Microsoft does
not ship display drivers with OpenGL support with Windows
2000]
- Q240896
- OpenGL Program May Cause an Invalid Page Fault Error
Message if the Window is Moved or Resized
- [Windows 95, 98, 98SE] When you move or resize a window,
a program that uses OpenGL may perform an illegal
operation, and then shutdown. For example, Microsoft
Internet Explorer may generate an invalid page fault if a
Java tool using OpenGL is running, and the window
displaying the OpenGL graphic content is moved. Also, the
following message may be generated in the Details section
of the Application error dialog box:
- Q233390
- BUG: First Chance Exceptions When Calling
ChoosePixelFormat
- [Windows 95, 98] The following error is displayed in the
debug window of Visual C++:
- First-chance exception in myapp.exe (GDI32.DLL): 0xC0000005:
Access Violation.
- Q228099
- PRB: wglUseFontOutlines Does Not Handle DBCS
- [Windows 98, NT 4.0] On Windows 98, the OpenGL function
wglUseFontOutlines does not work with DBCS or UNICODE
strings. On Windows NT, UNICODE strings work; however,
DBCS strings do not.
- Q227279
- OpenGL Screen Saver Prevents Power Management Standby
Mode
- [Windows 2000] When you configure your computer to use an
OpenGL screen saver and the System Standby feature in
Advanced Power Management (APM), your computer may not
start the Standby mode.
- Glide
API Features Disabled on Video Adapter
- [Windows NT 4.0; I don't see why this doesn't affect
Windows 9X or Windows 2000. The description is confused]
After you install Windows NT 4.0 Service Pack 4 on a
computer with a proprietary 3Dfx function library file (such
as the 3dfxgl.dll file installed during the installation
of id Software's Quake II), you may not be able to access
your video adapter's support for 3Dfx graphics.
- Windows
98 Components for Typical, Portable and Compact Setup
- [Lists components installed, OpenGL is not installed in
"Compact" installation]
- Q176752
- Glen.exe Shows How to Enumerate Pixel Formats in OpenGL
- The GLEnum sample provides a demonstration of how to
enumerate pixel formats and method for checking the
available pixel formats provided on your machine. The
GLEnum sample is included in Glen.exe.
- GLEN.EXE:
SAMPLE: Pixel Format Enumeration in OpenGL Demo
- Q169954
- INFO: Layer Planes in OpenGL
- Layer Planes are a new feature in the Microsoft
implementation of OpenGL 1.1. Before using OpenGL layer
planes, there are several new functions and some driver
dependency issues that you should be aware of.
- Q160817
- Demonstrates OpenGL Texture-Mapping Capabilities
- GLTEXTUR.EXE provides a demonstration of how to use a
Device-independent Bitmap (DIB) as a texture-map for
OpenGL by pasting a DIB (chosen by the user) onto three
different OpenGL objects.
- GLTEXTUR.EXE:
SAMPLE: Demonstrates OpenGL Texture-Mapping Capabilities
- Q154877
- OpenGL 1.1 Release Notes & Components
- Opengl95.exe contains the release notes for OpenGL
version 1.1 for Windows 95 and all of the components
associated with OpenGL such as the DLL, library, and
include files.
- Note that Windows 95 OSR2, Windows 98, and Windows NT
already include OpenGL with the O.S., so this download is
not necessary (or recommended) for those platforms
- OPENGL95.EXE
- Q152001
- GLLT.EXE Demonstrates Simple Lighting in OpenGL
- The GLLight sample provides a demonstration of how the
various light settings effect an OpenGL scene. The
initial scene is simply a single white sphere with a
single blue light (GL_LIGHT0) shining on it.
- Q151489
- INFO: When to Select and Realize OpenGL Palettes
- An OpenGL application must select and realize its palette
before setting the current rendering context with
wglMakeCurrent.
- Q148301
- GLTex Demos How to Use DIBs for Texture Mapping
- The GLTex sample provides a demonstration of how to use a
DIB (device- independent bitmap) as a texture-map for
OpenGL by pasting a DIB (chosen by the user) onto all
sides of a three-dimensional cube. [Appears to have been
superceded by Q160817, code no longer here.]
- Q139967
- GLEXT: Demo of GL_WIN_swap_hint & GL_EXT_vertex_array
- The GLEXT sample illustrates how to use the GL_WIN_swap_hint
extension to speed up animation by reducing the amount of
repainting between frames and how to use GL_EXT_vertex_array
extension to provide fast rendering of multiple geometric
primitives with one glDrawArraysEXT call. It also shows
how to use glPixelZoom and glDrawPixels to display an
OpenGL bitmap.
- Q139653
- PRB: Antialiased Polygons Not Drawn in OpenGL Antipoly
Sample
- The antipoly sample in OpenGL SDK BOOK directory is
unable to draw antialised polygons with the generic
implementation of Windows NT and Windows 95 OpenGL.
- Q136266
- Demonstration of OpenGL Material Property and Printing
- The GLBMP sample illustrates how to define the material
properties of the objects in the scene: the ambient,
diffuse, and specular colors; the shininess; and the
color of any emitted lights. This sample also
demonstrates how to print an OpenGL image by writing the
OpenGL image into a DIB section and printing the DIB
section. The current version of Microsoft's
implementation of OpenGL in Windows NT does not provide
support for printing. To work around this current
limitation, draw the OpenGL image into a memory bitmap,
and then print the bitmap.
- GLBMP.EXE:
Sample: OpenGL Material Property & Printing
- Q131130
- HOWTO: Set the Current Normal Vector in an OpenGL
Application
- [Information on using the cross product to obtain a
normal vector for a polygon]
- Q131024
- Drawing Three-Dimensional Text in OpenGL Appliations
- GDI operations, such as TextOut, can be performed on an
OpenGL window only if the window is single-buffered. The
Windows NT implementation of OpenGL does not support GDI
graphics in a double-buffered window. Therefore, you
cannot use GDI functions to draw text in a double-buffered
window, for example. To draw text in a double-buffered
window, an application can use the wglUseFontBitmaps and
wglUseFontOutlines functions to create display lists for
characters in a font, and then draw the characters in the
font with the glCallLists function.
- The wglUseFontOutlines function is new to Windows
NT 3.51 and can be used to draw 3-D characters of
TrueType fonts. These characters can be rotated, scaled,
transformed, and viewed like any other OpenGL 3-D image.
This function is designed to work with TrueType fonts.
- The GLFONT sample shows how to use the wglUseFontOutlines
function to create display lists for characters in a
TrueType font and how to draw, scale, and rotate the
glyphs in the font by using glCallLists to draw the
characters and other OpenGL functions to rotate and scale
them. You need the Win32 SDK for Windows NT 3.51 to
compile this sample, and you need to incorporate wglUseFontOutlines
in your own application. You also need Windows NT 3.51 to
execute the application.
- GLFONT.EXE:
Sample: Drawing 3-D Text in an OpenGL App
- Q127071
- MFCOGL a Generic MFC OpenGL Code Sample
- Microsoft Windows NT's OpenGL can be used with the
Microsoft Foundation Class (MFC) library. This article
gives you the steps to follow to enable MFC applications
to use OpenGL.
- MFCOGL.EXE:
Code Sample Demonstrates Using OpenGL with MFC
- Q128122
- Implementing Multiple Threads in an OpenGL Application
- It is possible to create multiple threads in an OpenGL
application and have each thread call OpenGL functions to
draw an image. You might want to do this when multiple
objects need to be drawn at the same time or when you
want to have certain threads perform the rendering of
specific types of objects.
- GLTHREAD.EXE:
SAMPLE: Using Multiple Threads in OpenGL App
- Q126019
- PRB: Most Common Cause of SetPixelFormat() Failure
- SetPixelFormat() fails with incorrect class or window
styles. [I'm not convinced this is the most common
cause today.]
- Q124870
- XFONT.C from SAMPLES\OPENGL\BOOK Subdirectory
- XFONT.C from the SAMPLES\OPENGL\BOOK subdirectory is not
in the MAKEFILE, and subsequently is never built.
- OPENGL3.EXE:
MSJ Source: Feb '95: OPENGL3.EXE
- [The associated KB article Q124/2/06 has disappeared.
This code apparently went with the Microsoft Systems
Journal "Understanding Modelview Transformations in
OpenGL for Windows NT"]
- Q124034
- OpenGL Interface in Windows NT 3.5
- This article defines and explains the OpenGL interface
that is available and can be implemented in Windows NT
version 3.5.
- Q121381
- Microsoft Systems Journal: November 1994
- This article lists the filenames and Snumbers for files
available from online services that contain the source
code described in articles published in the November 1994
issue of the "Microsoft Systems Journal."
- CUBES.EXE:
MSJ Source: Nov, 1994 cubes.exe
- [This code apparently went with the Microsoft Systems
Journal article introducing OpenGL with Windows NT 3.5:
"3-D Graphics for Windows NT 3.5. Introducing the
OpenGL Interface, Part II."]
- Q121282
- OPENGL Screen Savers May Degrade Server Performance
- If OPENGL screen savers are used on a Windows NT Server,
network server performance (the Server's responsiveness
to clients) may be degraded while the screen saver is
running.
- OPENGL.EXE:
MSJ Source: Oct, 1994 opengl.exe
- [Associated KB article Q119/8/62 appears to have
disappeared. This code apparently went with the Microsoft
Systems Journal article introducing OpenGL with Windows
NT 3.5: "3-D Graphics for Windows NT 3.5.
Introducing the OpenGL Interface, Part I."]
Archive
- Q224792
- List of Bugs Fixed in Windows NT 4.0 Service Pack 1, 2,
and 3
- Err
Msg: STOP 0x00000050 PAGE_FAULT_IN_NONPAGED_AREA
- [Windows NT 4.0] When you run NetMeeting with sharing
enabled, you may receive the following error message on a
blue screen if you restart your computer and start
NetMeeting again:
- Q191359
- SMS: Windows 95 OpenGL Screen Saver May Cause Computer
to Stop
- [Windows 95 OSR2] Computers that are running Microsoft
Windows 95 may lose their ability to safely shut down
after the OpenGL or Mystify Your Mind screen saver is
started and stopped several times. This may occur on
computers that have the ATI 64 and ATI Rage Series video
adapters installed.
- Q189979
- OpenGL-Based Programs Do Not Work After Upgrade to
Windows 98
- [Windows 98] After you upgrade to Windows 98, your OpenGL-based
programs may no longer work correctly, or may not work at
all.
- Q166334
- OpenGL Access Violation on Windows NT Version 4.0
- [Windows NT 4.0] Under heavy stress, OpenGL applications
may experience access violations. Also, OpenGl Line and
Polygon texture clipping functions may fail when fogging
is enabled.
- Q166257
- Applications Using OpenGL Cause Access Violation in
OPENGL.DLL
- [Windows NT 4.0] A multi-threaded or multi-windowed
application that uses OpenGL may cause an access
violation in the Opengl.dll library.
- Q166198
- Display Color Problem with OpenGL Applications in
Windows NT 4.0 Service Pack 2
- [Windows NT 4.0 SP2] After you apply Windows NT 4.0
Service Pack 2, coloring problems may occur with OpenGL
applications where the wrong colors are drawn in a wide
variety of situations. [See Q163677]
- Q164158
- OpenGL Diffuse Settings Revert to Default
- [Windows NT 4.0] When using OpenGL with Windows NT, the
diffuse parameter changes back to the default when the
color material changes from AMBIENT_AND_DIFFUSE to
AMBIENT.
- Q163677
- BUG: OpenGL Color Problems Using Service Pack 2 for Win
NT 4.0
- [Windows NT 4.0 SP2] When you use Service Pack 2 for
Windows NT 4.0, various coloring problems may arise that
are not present in previous versions. The coloring
problems involve drawing the wrong colors in a variety of
situations.
- GLSP2FIX.EXE:
BUG: OpenGL Color Problems Using Service Pack 2 for Win
NT 4.0
- Q160651
- [pre-Windows NT 4.0 SP2] An application that uses OpenGL
may crash with an exception 0xC0000090.
- Q159129
- OpenGL Access Violation with Invalid OpenGL Context
- [Pre-Windows NT 4.0 SP2] The API gluGetString causes an
access violation and affects OpenGL operations.
- Q156473
- BUG: Windows NT Version 4.0 Bug List - GDI
- [Windows NT 4.0. Known bugs at time of release]
- Q152841
- Windows NT 4.0 Service Pack 3 Readme.txt File (40-bit)
- Q147798
- Windows NT 4.0 Service Pack 3 Readme.txt File (128-bit)
- Access
Violation in glsbCreateAndDuplicateSection API on PowerPC
- [Windows NT 3.51 for PowerPC] When you install a OpenGL
client video driver on your PowerPC computer running
Windows NT and you run an OPENGL program, for example,
the Windows NT Pipes screen saver, an access violation
occurs in the glsbCreateAndDuplicateSection application
programming interface (API).
- Q134893
- 3D OpenGL Screen Saver Restores Windows NT 3.51 Help
- [Windows NT 3.51] When you return to your desktop from
any of Windows NT 3D OpenGL screen savers, any minimized
Windows NT 3.51 Help files that use the Windows 95 Help
engine are restored to full size.
- Q134765
- Unknown Software Exception When Application Calls
OpenGL
- [Windows NT 3.51] An unknown software exception occurs
when applications call OpenGL. When Windows NT attempts
to shutdown the computer, a blue screen appears.
- Q133322
- List of Confirmed Bugs in Windows NT Version 3.51
- Q133220
- List of Confirmed Bugs in Windows NT Version 3.5
- Q132866
- DOCERR: Printing an OpenGL Image
- The documentation relating to printing an OpenGL image in
the Win32 SDK versions 3.5, 3.51, and 4.0 is incorrect.
The current version of Microsoft's implementation of
OpenGL in Windows NT does not provide support for
printing. More specifically, an application cannot call
wglCreateContext or wglMakeCurrent on a printer device
context.
- Q132748
- Choosing a Workstation OS: Windows 95/Windows NT
Workstation
- Q128531
- README.TXT: Windows NT Version 3.51 U.S. Service Pack
- Snow/White
Noise with Mach 32 at 1024x768 - 65536 colors
- [Windows NT 3.5] When you use the ATI Mach 32 video
adapter driver included with Windows NT version 3.5,
white haze (also known as snow) may appear when you move
windows on the desktop. This problem can also occur when
you use the 3D Pipes (OpenGL) screen saver.
- Q126128
- Message Popup Changes Color When Using OpenGL Screen
Saver
- [Windows NT 3.5] When you run Windows NT with a 800 x 600
(256 color) or 1024 x 768 (256 color) video driver and
test an OpenGL screen-saver, the Title Bar and OK button
in the Messenger Service dialog box are red.