VOGONS


Windows 3.x EGA Drivers

Topic actions

Reply 20 of 36, by Jo22

User metadata
Rank l33t++
Rank
l33t++

No, that was fine as far as I'm concerned. John did a good work, as far as I can tell. 😀
If I wasn't limited to a Raspbery Pi/ARM platform right now (PC broke), I would do some more testing here right now. 😢

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 21 of 36, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Update. I tried to apply John's patch to my copy of Windows 3.0a's ega.drv, and it kinda works here.

Since I started out on the Raspberry Pi with that funny Okteta hex editor, -which I did not get along with-,
I had to move over to my old Presario running XVI32 in the middle of the process..
That's where some errors must have found their ways into the hex file.

Anyway, back to the EGA driver.
I got it to "work" first time in Windows Real-Mode (win /r), when my main group got deleted somehow.
After this, I also tried Standard-Mode (win /s) and it worked, too. Enhanced Mode (wina20.386 present in root),
partially worked, with the half of the screen being dark.

Attachments

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 22 of 36, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Update. John's patched EGA driver runs on Windows 3.1 in 286 Standard-Mode, 386 Standard-Mode and 386 Enchanted-Mode! 😀
I'll add some screenshots soon. Stay tooned.

Edit: Pictures added.
Edit: Just to be clear; I likely made a mistake during hex edit (I'm sorry !). 😢
The point of these screenshots is only to prove that it's possible to run Windows 3.x with such a patch in Enhanced and Standard Modes.

Attachments

  • 2019-11-17-171454_1280x1024_scrot.png
    Filename
    2019-11-17-171454_1280x1024_scrot.png
    File size
    202.87 KiB
    Views
    405 views
    File comment
    Normal EGA as it is supposed to be (640x350)
    File license
    Fair use/fair dealing exception
  • 2019-11-17-171544_1280x1024_scrot.png
    Filename
    2019-11-17-171544_1280x1024_scrot.png
    File size
    165.58 KiB
    Views
    405 views
    File comment
    Patched driver, not enough memory to convert symbols - warning
    File license
    Fair use/fair dealing exception
  • 2019-11-17-171605_1280x1024_scrot.png
    Filename
    2019-11-17-171605_1280x1024_scrot.png
    File size
    168.77 KiB
    Views
    405 views
    File comment
    Patched driver, Setup configured for EGA
    File license
    Fair use/fair dealing exception
  • 2019-11-17-171812_1280x1024_scrot.png
    Filename
    2019-11-17-171812_1280x1024_scrot.png
    File size
    172.38 KiB
    Views
    405 views
    File comment
    Patched driver, Setup configured for CGA
    File license
    Fair use/fair dealing exception
  • 2019-11-17-171905_1280x1024_scrot.png
    Filename
    2019-11-17-171905_1280x1024_scrot.png
    File size
    172.69 KiB
    Views
    405 views
    File comment
    Patched driver, Setup configured for CGA, Enhanced Mode
    File license
    Fair use/fair dealing exception

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 23 of 36, by Charizard700

User metadata
Rank Newbie
Rank
Newbie

I have a Windows 3.1 EGA driver Remodeling to support 640x200 Succeeded.
The Windows 3.1 EGA driver works better than the Windows 3.0 driver.
This modified driver is designed to work from Windows 3.0 to Windows ME(4.9).

Attachments

  • Filename
    EGALD31B.zip
    File size
    31.3 KiB
    Downloads
    34 downloads
    File license
    Fair use/fair dealing exception

Reply 24 of 36, by Charizard700

User metadata
Rank Newbie
Rank
Newbie

The screenshot looks like this.

Attachments

  • win49.GIF
    Filename
    win49.GIF
    File size
    22.6 KiB
    Views
    348 views
    File license
    Public domain
  • win31.GIF
    Filename
    win31.GIF
    File size
    12.37 KiB
    Views
    348 views
    File license
    Public domain
  • win30.GIF
    Filename
    win30.GIF
    File size
    10.76 KiB
    Views
    348 views
    File license
    Public domain

Reply 26 of 36, by DigitalMan

User metadata
Rank Newbie
Rank
Newbie
Charizard700 wrote on 2020-04-30, 17:39:

The screenshot looks like this.

Nice! I've recently restored a Commodore PC 10-II with the Plantronics colorplus card. How complex would it be to create a Windows 3.0 driver to supports its 16 color mode?

Reply 27 of 36, by rmay635703

User metadata
Rank Oldbie
Rank
Oldbie
DigitalMan wrote on 2021-05-27, 21:03:
Charizard700 wrote on 2020-04-30, 17:39:

The screenshot looks like this.

Nice! I've recently restored a Commodore PC 10-II with the Plantronics colorplus card. How complex would it be to create a Windows 3.0 driver to supports its 16 color mode?

About as easy as a 16 color Tandy driver which hasn’t happened

Reply 28 of 36, by Jo22

User metadata
Rank l33t++
Rank
l33t++
rmay635703 wrote on 2021-05-28, 00:03:
DigitalMan wrote on 2021-05-27, 21:03:
Charizard700 wrote on 2020-04-30, 17:39:

The screenshot looks like this.

Nice! I've recently restored a Commodore PC 10-II with the Plantronics colorplus card. How complex would it be to create a Windows 3.0 driver to supports its 16 color mode?

About as easy as a 16 color Tandy driver which hasn’t happened

Not sure if that's possible, though.

Plantronics supports 4 colours only in 640x200 mode.
The 320x200 resolution was only used once by the MCGA driver in Windows 3.0 MME.
After it was never being heard of again.

"Problem" is, that Windows wants to have at least 20 colours for its own (as in - they are fixed/static).
http://www.fastgraph.com/help/windows_palette_manager.html

The normal 16 colours available in VGA mode 12h are somewhat borderline, already.

In short, 3.0 supports/knows three palette schemes only.
1-bit/monochrome, 4-bit/16c and 8-bit/256c

Not sure thus, how it would react to 2-bit/4c thus.
Maybe it goes monochrome, but lets the user do what ever he/she/they wants to do with these two extra colours (desktop colour etc).

It may behave a bit like GEM, perhaps.

Edit: A special case might be EGA perhaps (how fitting).
It had a 6-bit/64c in total, but only 16 colours could be picked and displayed at the same time.

Of course, changing the palette rapidly would make it look like as if there were more colours..

But Windows still wants its 20 static colours, so there's a conflict.

What I mean to say - not sure if Windows had another palette scheme burried deep inside.

EGA was very popular in early 16-Bit Windows.
This went so far, that early VGA drivers reduced VGA resolution for maximum compatibility with EGA applications.
Edit : Shortened. Already mentioned that one. 😅

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 30 of 36, by Caluser2000

User metadata
Rank l33t
Rank
l33t
Jo22 wrote on 2019-11-16, 09:31:
Update. John's patched EGA driver runs on Windows 3.1 in 286 Standard-Mode, 386 Standard-Mode and 386 Enchanted-Mode! :) I'll ad […]
Show full quote

Update. John's patched EGA driver runs on Windows 3.1 in 286 Standard-Mode, 386 Standard-Mode and 386 Enchanted-Mode! 😀
I'll add some screenshots soon. Stay tooned.

Edit: Pictures added.
Edit: Just to be clear; I likely made a mistake during hex edit (I'm sorry !). 😢
The point of these screenshots is only to prove that it's possible to run Windows 3.x with such a patch in Enhanced and Standard Modes.

It is just Standard Mode ol bean plain and simple.

http://gunkies.org/wiki/Windows_3.1
http://gunkies.org/wiki/Windows_3.0

There's a glitch in the matrix.

Apparently 32-bit is dead and nobody likes P4s.

Reply 31 of 36, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Hi! I'm speaking under correction, but I think on 3.1, Standard-Mode is available in
both krnl286.exe and krnl386.exe.
Windows 3.0 only had one in krnl286.exe.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 32 of 36, by Caluser2000

User metadata
Rank l33t
Rank
l33t
Jo22 wrote on 2021-05-30, 01:10:

Hi! I'm speaking under correction, but I think on 3.1, Standard-Mode is available in
both krnl286.exe and krnl386.exe.
Windows 3.0 only had one in krnl286.exe.

Doesn't matter what kernal it is old chap, the startup routine detects what processor it is running on. It is still just Standard Mode running the same as it would on a 286. In other words paging 64k chunks of memory. Reading the second link explains quite clearly.

Nice try though.

There's a glitch in the matrix.

Apparently 32-bit is dead and nobody likes P4s.

Reply 33 of 36, by Jo22

User metadata
Rank l33t++
Rank
l33t++

^Hi again. I'm sorry, I don't fully understand what you mean to say.
The Windows kernals (in Win 3.0) reside in kernal.exe, krnl286.exe and krnl386.exe.

On Windows 3.0, kernal is using Real-Mode, while krnl286 (+DOSX) is used for Standard-Mode. Krnl286 is using 16-Bit Protected-Mode.
By contrast, krnl386 is used for Enhanced-Mode. Krnl386 is using 32-Bit Peotected-Mode and V86.

In Windows 3.1 it's not as simple.
WIN.COM will check the CPU type and if it finds a 386 or higher, will always use krnl386:
Someone can delete krnl286.exe and WIN /S still works.
To execute the "true" Standard-Mode, on 386+, DOSX located in the SYSTEM directory must be executed. It will try to load krnl286.exe then.
However, it must be executed from within the Windows directory, if memory serves.

Edit: Long story short - I merely tested the patched EGA driver with both kernels for the sake of completeness.
This seemed reasonable to me,
because it was a Real-Mode compatible driver, originally.

Edit : I guess, someone could also say that Windows 3.1 has one Standard-Mode,
but two implementations of it. 😉
After all, a kernal is the very heart of a system.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 34 of 36, by FAMICOMASTER

User metadata
Rank Member
Rank
Member

Holy cow, I did not expect this request to go so far. The 286 I was running this on actually had a tantalum capacitor fail a few months ago and I haven't gotten around to even disassembling the machine to assess the damages.

This is absolutely amazing though, I always thought it would be cool to write my own drivers and someone here actually did. Amazing!

Reply 35 of 36, by Caluser2000

User metadata
Rank l33t
Rank
l33t
FAMICOMASTER wrote on 2021-06-09, 03:48:

Holy cow, I did not expect this request to go so far. The 286 I was running this on actually had a tantalum capacitor fail a few months ago and I haven't gotten around to even disassembling the machine to assess the damages.

This is absolutely amazing though, I always thought it would be cool to write my own drivers and someone here actually did. Amazing!

Some clever folk here alright 😀

There's a glitch in the matrix.

Apparently 32-bit is dead and nobody likes P4s.

Reply 36 of 36, by FAMICOMASTER

User metadata
Rank Member
Rank
Member
Caluser2000 wrote on 2021-06-09, 03:56:
FAMICOMASTER wrote on 2021-06-09, 03:48:

Holy cow, I did not expect this request to go so far. The 286 I was running this on actually had a tantalum capacitor fail a few months ago and I haven't gotten around to even disassembling the machine to assess the damages.

This is absolutely amazing though, I always thought it would be cool to write my own drivers and someone here actually did. Amazing!

Some clever folk here alright 😀

For sure, it's why I keep coming back after all this time.