Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the board
Thread view  Mix view  Order
Japheth

Homepage

Germany (South),
21.10.2024, 05:54
 

WDe v1.1 (Announce)

Hello,

a few additions and fixes for WDe: https://github.com/Baron-von-Riedesel/WDe/releases/tag/v1.1

---
MS-DOS forever!

Zyzzle

21.10.2024, 11:08

@ Japheth

WDe v1.1

> Hello,
>
> a few additions and fixes for WDe:
> https://github.com/Baron-von-Riedesel/WDe/releases/tag/v1.1
Thanks very much for the update. WDe continues to be a very useful program, even more so since it can work with images files.

roytam

07.01.2025, 09:10

@ Japheth

WDe v1.1

> Hello,
>
> a few additions and fixes for WDe:
> https://github.com/Baron-von-Riedesel/WDe/releases/tag/v1.1

Off-topic: regarding your SVGA256.drv patch, someone found that it is incomplete: https://wuffs.org/blog/windows-3x-graphics

Japheth

Homepage

Germany (South),
07.01.2025, 17:03
(edited by Japheth, 10.01.2025, 06:49)

@ roytam

VBESVGA.drv

> Off-topic: regarding your SVGA256.drv patch, someone found that it is
> incomplete: https://wuffs.org/blog/windows-3x-graphics

Cool! I can't even remember why and when I wrote this stuff (must have been in 1999 or so, long after I abandoned Win3x ).

There's an interesting VESA driver (https://github.com/PluMGMK?tab=repositories) mentioned in the article, but I couldn't get it to work on my primary system. It makes Win31 exit during startup, without any error messages.

EDIT:: turned out that on this system the VBE 3.0 protected-mode interface is broken. The PMID structure exists, but the code isn't protected-mode compatible:

    mov ax,cs
    mov ds,ax
    ....
    mov [3xxx],ax
    mov [3yyy],ax


There's an option in VBESVGA.drv to disable the usage of this feature (PMIDcheck=disable), but apparently it "doesn't work".

---
MS-DOS forever!

roytam

14.01.2025, 15:08

@ Japheth

VBESVGA.drv

> > Off-topic: regarding your SVGA256.drv patch, someone found that it is
> > incomplete: https://wuffs.org/blog/windows-3x-graphics
>
> Cool! I can't even remember why and when I wrote this stuff (must have been
> in 1999 or so, long after I abandoned Win3x ).
>
> There's an interesting VESA driver
> (https://github.com/PluMGMK?tab=repositories) mentioned in the
> article, but I couldn't get it to work on my primary system. It makes Win31
> exit during startup, without any error messages.
>
> EDIT:: turned out that on this system the VBE 3.0 protected-mode
> interface is broken. The PMID structure exists, but the code isn't
> protected-mode compatible:
>
> mov ax,cs
> mov ds,ax
> ....
> mov [3xxx],ax
> mov [3yyy],ax
>

>
> There's an option in VBESVGA.drv to disable the usage of this feature
> (PMIDcheck=disable), but apparently it "doesn't work".

since there are some code changes since 10 Jan, I can't tell if the problem you described still persists or not.
https://github.com/PluMGMK/vbesvga.drv/commits/master/

and of course you can create an issue about it: https://github.com/PluMGMK/vbesvga.drv/issues

Japheth

Homepage

Germany (South),
14.01.2025, 20:23

@ roytam

VBESVGA.drv

> since there are some code changes since 10 Jan, I can't tell if the problem
> you described still persists or not.
> https://github.com/PluMGMK/vbesvga.drv/commits/master/
>
> and of course you can create an issue about it:
> https://github.com/PluMGMK/vbesvga.drv/issues

It's "fixed" in the meantime; was actually my fault. My graphics card's dysfunctional PMID support can be disabled and the driver is still fast enough. Nice tool!

---
MS-DOS forever!

ecm

Homepage E-mail

Düsseldorf, Germany,
16.01.2025, 19:14

@ Japheth

VBESVGA.drv - PM code trying to write using code selector

> EDIT:: turned out that on this system the VBE 3.0 protected-mode
> interface is broken. The PMID structure exists, but the code isn't
> protected-mode compatible:
>
> mov ax,cs
> mov ds,ax
> ....
> mov [3xxx],ax
> mov [3yyy],ax
>

>
> There's an option in VBESVGA.drv to disable the usage of this feature
> (PMIDcheck=disable), but apparently it "doesn't work".

I was puzzled for a moment. But I assume your example is meant to show that the code uses a Code Selector (copied from the running CS) for DS, then tries to write to memory using a segmented address which implies the use of DS. As I have noticed before, this is a fundamental difference between Real/Virtual 86 Mode and Protected Mode: In PM, writing using a code selector is never allowed. Copying from CS implies that the selector must be a valid code selector.

---
l

Back to the board
Thread view  Mix view  Order
22208 Postings in 2050 Threads, 396 registered users, 31 users online (0 registered, 31 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum