WinG

Windows 3.x graphics API


title: "WinG" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["windows-apis", "discontinued-microsoft-software", "graphics-libraries", "1994-software"] description: "Windows 3.x graphics API" topic_path: "technology/operating-systems" source: "https://en.wikipedia.org/wiki/WinG" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0

::summary Windows 3.x graphics API ::

::figure[src="https://upload.wikimedia.org/wikipedia/commons/9/93/WinG_Graphics_Calibration_Screen.png" caption="Calibration screen"] ::

WinG (pronounced Win Gee) is an application programming interface that was designed to provide faster graphics performance on Windows 3.x operating environments. It was initially positioned as a way to help game developers more easily port MS-DOS games to Windows.{{cite web |url=https://www.gamedeveloper.com/programming/a-whirlwind-tour-of-wing |title=A Whirlwind Tour of WinG |last=Hecker |first=Chris |author-link=Chris Hecker |website=Gamasutra |date=1 June 1997 |access-date=2009-01-19

Background

WinG fixed two problems. The first problem that WinG fixed was that Windows 3.x did not support creating Device Contexts (DCs) based on device independent bitmaps, only actual display devices. One major limitation of the Graphics Device Interface (GDI) DCs was that they were write-only. Data, once written, could not be retrieved. The second problem was that all GDI drawing was implemented in the Windows 3.x video drivers. This included the drawing of bitmaps. Obviously performance of such routines varied across drivers.

Alex St. John, one of the creators of DirectX, said in a 2000 interview that, |url=http://www.firingsquad.com/features/alexstjohn/ |title=Alex St. John Interview |last=Colayco |first=Bob |date=7 March 2000 |publisher=firingsquad.com |archive-url=https://web.archive.org/web/20091006022255/http://www.firingsquad.com/features/alexstjohn/ |archive-date=6 October 2009

Microsoft announced WinG at the 1994 Game Developers Conference, demonstrating it with a port by id Software of Doom. WinG was shipped on September 21, 1994.{{cite web |url=http://craig.theeislers.com/2006/02/directx_then_and_now_part_1.php |title=DirectX Then and Now (Part 1) |last=Eisler |first=Craig |date=February 20, 2006 |access-date=2008-01-19 |work=Craig's Musings |archive-date=2012-07-11 |archive-url=https://archive.today/20120711181236/http://craig.theeislers.com/2006/02/directx_then_and_now_part_1.php |url-status=dead

Implementation

WinG introduced a new type of DC called a WinGDC,{{cite web |url=http://support.microsoft.com/kb/125928 |title=HOWTO: How to Mix GDI and WinG (MSKB125928) |work=Knowledge Base |publisher=Microsoft |access-date=2009-01-19

WinG would also perform a graphics hardware/driver profiling test on the first execution of the program in order to determine the best way to draw DIBs. This test showed a window full of red curved lines, sections of which would wobble as performance was tested. Once WinG had determined the fastest calls that did not cause graphics corruption, a profile would be saved so that the test would not need to be performed again.

Support

WinG out-of-the-box support (i.e. as a separate API to Win32) was dropped in Windows 98 Second Edition (which integrated DirectX 6), as it did nothing but pass through to the Win32 APIs that it was wrapping (including CreateDIBSection). WinG DLLs were sometimes distributed with an application, at which point it merely became a matter of copying the files wing.dll, wing32.dll, wingde.dll, wingdib.drv and wingpal.wnd to the system32 directory (for 32 bit Windows) or SysWOW64 directory (for 64 bit Windows) to regain system-wide support.

List of applications using WinG API

References

References

  1. (July 1994). "The Designer's Dilemma: The Eighth Computer Game Developers Conference".
  2. [https://www.classicdosgames.com/game/Microsoft_Return_of_Arcade.html Microsoft Return of Arcade 1996 review: RGB Classic Games]

::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::

windows-apisdiscontinued-microsoft-softwaregraphics-libraries1994-software