VOGONS


WinDirect and MGL

Topic actions

First post, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t

Most of the articles I get to don't try to differentiate them. Or end up putting one as a subset of another thing.

Can people here clarify more on WinDirect and MGL and what they are individually supposed to do?

previously known as Discrete_BOB_058

Reply 1 of 23, by Gmlb256

User metadata
Rank l33t
Rank
l33t

MGL is a multi-platform graphics library while WinDirect is a technology to get direct access to VGA and VESA video modes in Windows, in particular non-NT based ones.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 2 of 23, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2023-09-29, 15:58:

MGL is a multi-platform graphics library while WinDirect is a technology to get direct access to VGA and VESA video modes in Windows, in particular non-NT based ones.

VGA, you mean VGA modes using VESA specs? Or some BIOS-sent direct VGA?

previously known as Discrete_BOB_058

Reply 3 of 23, by Gmlb256

User metadata
Rank l33t
Rank
l33t
BEEN_Nath_58 wrote on 2023-09-29, 18:41:
Gmlb256 wrote on 2023-09-29, 15:58:

MGL is a multi-platform graphics library while WinDirect is a technology to get direct access to VGA and VESA video modes in Windows, in particular non-NT based ones.

VGA, you mean VGA modes using VESA specs? Or some BIOS-sent direct VGA?

BIOS-sent direct VGA using plain mode 13h. WinDirect also supports VGA mode X (VGAX.DRV) as well but it is disabled in WinQuake-based games.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 4 of 23, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2023-09-29, 19:58:
BEEN_Nath_58 wrote on 2023-09-29, 18:41:
Gmlb256 wrote on 2023-09-29, 15:58:

MGL is a multi-platform graphics library while WinDirect is a technology to get direct access to VGA and VESA video modes in Windows, in particular non-NT based ones.

VGA, you mean VGA modes using VESA specs? Or some BIOS-sent direct VGA?

BIOS-sent direct VGA using plain mode 13h. WinDirect also supports VGA mode X (VGAX.DRV) as well but it is disabled in WinQuake-based games.

In layman terms it's just DOS graphics accessibility for Windows?

Let me guess, the VGA color palette isn't a necessarily a part of WinDirect, and that it could be used anywhere in non-NT without it?

(Related to Hexen 2 thread: how do you run GTA in WinDirect modes though?)

Edit: lament -> layman

Last edited by BEEN_Nath_58 on 2023-09-30, 05:37. Edited 1 time in total.

previously known as Discrete_BOB_058

Reply 5 of 23, by Gmlb256

User metadata
Rank l33t
Rank
l33t
BEEN_Nath_58 wrote on 2023-09-30, 02:56:

In lament terms it's just DOS graphics accessibility for Windows?

In layman terms, yes.

Let me guess, the VGA color palette isn't a necessarily a part of WinDirect, and that it could be used anywhere in non-NT without it?

The VGA color palette isn't a part of WinDirect at all, the registers weren't entirely virtualized.

However, Windows in 8-bit color mode changes the color palette depending on the current application.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 6 of 23, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2023-09-30, 03:24:

Let me guess, the VGA color palette isn't a necessarily a part of WinDirect, and that it could be used anywhere in non-NT without it?

The VGA color palette isn't a part of WinDirect at all, the registers weren't entirely virtualized.

However, Windows in 8-bit color mode changes the color palette depending on the current application.

More specifically, I was talking about this type of palette:
https://sourceforge.net/p/dxwnd/discussion/ge … e33e812d4/#bbf7

A one-to-one DirectX -> hardware palette

previously known as Discrete_BOB_058

Reply 7 of 23, by Gmlb256

User metadata
Rank l33t
Rank
l33t
BEEN_Nath_58 wrote on 2023-09-30, 05:46:
More specifically, I was talking about this type of palette: https://sourceforge.net/p/dxwnd/discussion/ge … e33e812d4/#bbf7 […]
Show full quote
Gmlb256 wrote on 2023-09-30, 03:24:

Let me guess, the VGA color palette isn't a necessarily a part of WinDirect, and that it could be used anywhere in non-NT without it?

The VGA color palette isn't a part of WinDirect at all, the registers weren't entirely virtualized.

However, Windows in 8-bit color mode changes the color palette depending on the current application.

More specifically, I was talking about this type of palette:
https://sourceforge.net/p/dxwnd/discussion/ge … e33e812d4/#bbf7

A one-to-one DirectX -> hardware palette

Yes, something like that. Those hacks are what enabled WinDirect.

Fun fact: Some older non-NT Windows video card drivers called a VESA video mode thru int 10h when changing screen resolutions by normal means. Not related to the VGA color palette, but it was more about having access to the registers where it shouldn't.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 8 of 23, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2023-09-30, 13:17:
BEEN_Nath_58 wrote on 2023-09-30, 05:46:
More specifically, I was talking about this type of palette: https://sourceforge.net/p/dxwnd/discussion/ge … e33e812d4/#bbf7 […]
Show full quote
Gmlb256 wrote on 2023-09-30, 03:24:

The VGA color palette isn't a part of WinDirect at all, the registers weren't entirely virtualized.

However, Windows in 8-bit color mode changes the color palette depending on the current application.

More specifically, I was talking about this type of palette:
https://sourceforge.net/p/dxwnd/discussion/ge … e33e812d4/#bbf7

A one-to-one DirectX -> hardware palette

Yes, something like that. Those hacks are what enabled WinDirect.

Fun fact: Some older non-NT Windows video card drivers called a VESA video mode thru int 10h when changing screen resolutions by normal means. Not related to the VGA color palette, but it was more about having access to the registers where it shouldn't.

I think I have seen it. Terracide by Eidos accesses the ports 0x3d5 and 0x3d4 on start-up to do something.

Another important question, is WinDirect computed with MGL libraries or it could be independent of MGL. Is there any SDK and demo for WinDirect?

previously known as Discrete_BOB_058

Reply 9 of 23, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2023-09-30, 13:17:
BEEN_Nath_58 wrote on 2023-09-30, 05:46:
More specifically, I was talking about this type of palette: https://sourceforge.net/p/dxwnd/discussion/ge … e33e812d4/#bbf7 […]
Show full quote
Gmlb256 wrote on 2023-09-30, 03:24:

The VGA color palette isn't a part of WinDirect at all, the registers weren't entirely virtualized.

However, Windows in 8-bit color mode changes the color palette depending on the current application.

More specifically, I was talking about this type of palette:
https://sourceforge.net/p/dxwnd/discussion/ge … e33e812d4/#bbf7

A one-to-one DirectX -> hardware palette

Yes, something like that. Those hacks are what enabled WinDirect.

Fun fact: Some older non-NT Windows video card drivers called a VESA video mode thru int 10h when changing screen resolutions by normal means. Not related to the VGA color palette, but it was more about having access to the registers where it shouldn't.

(2)

What other games used WinDirect? A good list of them?

previously known as Discrete_BOB_058

Reply 10 of 23, by Gmlb256

User metadata
Rank l33t
Rank
l33t
BEEN_Nath_58 wrote on 2023-09-30, 14:21:

Another important question, is WinDirect computed with MGL libraries or it could be independent of MGL.

Could be independent of MGL.

Is there any SDK and demo for WinDirect?

Yes, they can be still obtained on the following link: http://ftp.lanet.lv/ftp/mirror/x2ftp/msdos/pr … amming/scitech/

The files are svgakt51.zip and svtest51.zip for the SDK and demo respectively. It is the "SuperVGA Kit" which uses WinDirect.

BEEN_Nath_58 wrote on 2023-10-01, 12:18:

(2)

What other games used WinDirect? A good list of them?

Sadly, I only know one of these besides WinQuake and derivatives. 🙁

It is Total Mayhem. As for the list, it would be nice to make a new thread. Haven't seen anyone doing it yet.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 11 of 23, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2023-10-01, 13:33:
Could be independent of MGL. […]
Show full quote
BEEN_Nath_58 wrote on 2023-09-30, 14:21:

Another important question, is WinDirect computed with MGL libraries or it could be independent of MGL.

Could be independent of MGL.

Is there any SDK and demo for WinDirect?

Yes, they can be still obtained on the following link: http://ftp.lanet.lv/ftp/mirror/x2ftp/msdos/pr … amming/scitech/

The files are svgakt51.zip and svtest51.zip for the SDK and demo respectively. It is the "SuperVGA Kit" which uses WinDirect.

BEEN_Nath_58 wrote on 2023-10-01, 12:18:

(2)

What other games used WinDirect? A good list of them?

Sadly, I only know one of these besides WinQuake and derivatives. 🙁

It is Total Mayhem. As for the list, it would be nice to make a new thread. Haven't seen anyone doing it yet.

Okay I think that's enough I needed for now.
I created a thread for the apps List of applications utilising WinDirect

I also created a thread for it for Win32 games on DxWnd, I know it's like wishing at a shooting star (direct BIOS VGA isn't achieved, VBE for WDIR is far away) but it's open for discussion there.

Thanks.

previously known as Discrete_BOB_058

Reply 12 of 23, by rasz_pl

User metadata
Rank l33t
Rank
l33t

Wikipedia doesnt know either of those, so must be quite obscure.
ok so MGL is SciTech MegaGraph Graphics Library https://github.com/id-Software/Quake/blob/mas … nclude/mglwin.h
but wtf is WinDirect? Afaik its not a part of WinG, its not DirectDraw, who provided it?

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 13 of 23, by Gmlb256

User metadata
Rank l33t
Rank
l33t
rasz_pl wrote on 2023-10-02, 18:19:

but wtf is WinDirect? Afaik its not a part of WinG, its not DirectDraw, who provided it?

SciTech provided WinDirect, the very same company that made MGL, Display Doctor and UniVBE.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 14 of 23, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2023-10-02, 19:41:
rasz_pl wrote on 2023-10-02, 18:19:

but wtf is WinDirect? Afaik its not a part of WinG, its not DirectDraw, who provided it?

SciTech provided WinDirect, the very same company that made MGL, Display Doctor and UniVBE.

Hi, there's one game, Lemmings Paintball. The game is Win32 (1996) and contains DISPDIB.DLL. Does that mean it uses WinDirect?

previously known as Discrete_BOB_058

Reply 15 of 23, by Gmlb256

User metadata
Rank l33t
Rank
l33t
BEEN_Nath_58 wrote on 2023-12-08, 08:05:

Hi, there's one game, Lemmings Paintball. The game is Win32 (1996) and contains DISPDIB.DLL. Does that mean it uses WinDirect?

No, the DLL file isn't related to WinDirect. It is an official one from Microsoft that only provides direct VGA access.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 16 of 23, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2023-12-08, 13:49:
BEEN_Nath_58 wrote on 2023-12-08, 08:05:

Hi, there's one game, Lemmings Paintball. The game is Win32 (1996) and contains DISPDIB.DLL. Does that mean it uses WinDirect?

No, the DLL file isn't related to WinDirect. It is an official one from Microsoft that only provides direct VGA access.

From your previous comment, WinDirect allows VGA and VESA access in Windows. This is also a Win32 game, needing VGA and VESA access. Then shouldn't WinDirect be required? Is DISPDIB a competitior of WinDirect then?

previously known as Discrete_BOB_058

Reply 17 of 23, by Gmlb256

User metadata
Rank l33t
Rank
l33t
BEEN_Nath_58 wrote on 2023-12-08, 16:07:

From your previous comment, WinDirect allows VGA and VESA access in Windows. This is also a Win32 game, needing VGA and VESA access. Then shouldn't WinDirect be required?

This game doesn't require WinDirect and DISPDIB.DLL is only used in fullscreen mode.

Is DISPDIB a competitior of WinDirect then?

Kind of yes. DISPDIB.DLL doesn't provide direct VESA access.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 18 of 23, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2023-12-08, 17:01:
This game doesn't require WinDirect and DISPDIB.DLL is only used in fullscreen mode. […]
Show full quote
BEEN_Nath_58 wrote on 2023-12-08, 16:07:

From your previous comment, WinDirect allows VGA and VESA access in Windows. This is also a Win32 game, needing VGA and VESA access. Then shouldn't WinDirect be required?

This game doesn't require WinDirect and DISPDIB.DLL is only used in fullscreen mode.

Is DISPDIB a competitior of WinDirect then?

Kind of yes. DISPDIB.DLL doesn't provide direct VESA access.

Okay then I should look for WDIRXY.DLL files and not just DISPDIB.DLLs

Thanks

previously known as Discrete_BOB_058

Reply 19 of 23, by leileilol

User metadata
Rank l33t++
Rank
l33t++

DISPDIB's also for Windows 3.1 and allows VGA there (part of Video for Windows drivers ~1992). Some of the earlier games that can use it are Out of this World, Fury3 and Burn/Cycle. It has nothing to do with Scitech WinDirect/MGL.

apsosig.png
long live PCem