Page 1 of 1

32-BIT DOS

Posted: Wed May 15, 2002 11:00 pm
by ASHLEY4
Can some one explain how to make a 32-bit PM dos os?
By this i meen to run programs like what are made by djgpp and free pascal for dos
but with out the DPMI exstander,it dos not after run dos real mode stuff.
But need direct port accec and easy programing like dos.
It's the interrupts i can not get my head round,I know how
real mode interrupts work,But not PM one's.
Like in linux the int 0x80 how do that work compead to int 21 ?.
Thanks in advance.

ASHLEY4.

RE:32-BIT DOS

Posted: Thu May 16, 2002 11:00 pm
by J. Weeks
>On 2002-05-16 14:42:43, ASHLEY4 wrote:

Wow! Finally a female on the list :) Don't suppose
you're hot, single and from Canada? lol
Sorry... I'll slap myself :)

>Can some one explain how to make a 32-bit PM dos os?
>By this i meen to run programs like what are made by djgpp and free pascal for dos
>but with out the DPMI exstander,it dos not after run dos real mode stuff.
>But need direct port accec and easy programing like dos.
>It's the interrupts i can not get my head round,I know how
>real mode interrupts work,But not PM one's.
>Like in linux the int 0x80 how do that work compead to int 21 ?.

So, basically, what you're looking to do is
rewrite the standard dos ints (ie, 0x21) and bios
ints (ie, 0x10) to function in pmode, right?
To provide the DOS interface, but withen protected
mode?

It's been done before, with OpenDOS from Caldera,
so you might want to check that out (I believe
they even released the source... I'm just not
sure if it's around anymore).

Ints in pmode aren't _that_ much different than
rmode, they simply contain permission information.
Try and find some docs on the "idt" (interrupt
descriptor table) for more information. You'll
also want to learn about the "gdt" or global
descriptor table, which describes memory regions
and permissions.

Protected Mode Software Architecture
by Tom Shanley describes all of these quite well,
or you can check out some of the links off this
site, or Bona Fide (see below).

Hope that helps a little,
Jeff