Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

32-bit MSDOS (Announce)

posted by kerravon E-mail, Ligao, Free World North, 28.06.2021, 15:04

> > I guess I could create an INT 31H that just
> > redirects you to INT 21H if that would help.
>
> I think that DPMI API INT31 is something different that cannot be simply
> redirected to INT21. But maybe HDPMI/CWSDPMI source could be ported some
> way to PDOS. But I'm not sure what apps will then use DPMI as PDOS native
> apps are 32b and don't need DPMI and standard 32b DPMI apps for DOS cannot
> run in PDOS. But maybe PDOS could load e.g. DJGPP 32b apps? I don't know if
> there's some hard obstacle why not as they are also 32b apps but requires
> DPMI API...

I guess the first thing that should be asked is
what 32-bit MSDOS should look like.

There are multiple 32-bit DOS-extenders. DOS32A
comes close to what I decided was "clean" myself.

However, they mixed segments up in it.

Win32 doesn't use segments anywhere within the
application, and I agree with Microsoft that
that is clean.

Win32 also provides a "get memory" function,
unlike POSIX, and once again I agree with
Microsoft.

When I look at a Win32 executable that is
reliant on nothing more than msvcrt.dll, I
see a clean (and small) executable. I disagree
with Microsoft at this point because they didn't
make msvcrt.dll a formal interface. I have
instead standardized on that, and restricted
it to C90.

Another thing that I sort of diverge from
Microsoft is that I would have thought this
DLL, or rather, set of functions, should have
been provided as a parameter to the executable.
Like UEFI does. But I'm not 100% sure that
the UEFI/my way is superior to Microsoft's.
I'm not sure how to prove that one way or
the other.

When I look at DOS32A (or the DOS/4GW that
it followed), I think that their design is
inferior to the segment-less designs.

I don't know what all the other DOS extenders
did. If one of them had a clean segment-less
design, I might be willing to change PDOS to
use that, for compatibility.

But if it's a choice between cleanliness and
compatibility, I'll choose cleanliness.

And I note that I already have compatibility
with the ubiquitous Win32 executable format.
I don't think having an "INT 21H" in an
executable, even a 32-bit executable, is a
good thing to do. It prevents me from doing
the "C90 BIOS" thing which would allow me
to run PDOS as a user-mode application under
normal Windows.

So although I have an INT 21H OS, and it
works, I ask people to not directly execute
that. HX executing it would be fine though.
I'm interested in adjusting for HX. I'm just
not familiar with the internals of HX to
know what the scope of any adjustments
would be.

BFN. Paul.

 

Complete thread:

Back to the forum
Board view  Mix view
22632 Postings in 2109 Threads, 402 registered users, 367 users online (0 registered, 367 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum