Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

VBESVGA.drv - PM code trying to write using code selector (Announce)

posted by ecm Homepage E-mail, Düsseldorf, Germany, 16.01.2025, 19:14

> 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

 

Complete thread:

Back to the forum
Board view  Mix view
22287 Postings in 2062 Threads, 399 registered users, 164 users online (1 registered, 163 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum