delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/06/01/21:35:00

From: "Mike Winsor" <mwinsor AT hotmail DOT com>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Protected Mode programming
Date: 2 Jun 1997 21:26:15 GMT
Organization: HookUp Communication Corporation, St. John's, Newfoundland, CANADA
Lines: 44
Message-ID: <01bc6ed2$86f63080$5514a8c0@j.downey.gnat.thezone.net>
References: <338db41a DOT 6844334 AT news DOT pcisys DOT net> <01bc6d5a$d98cd160$LocalHost AT vpoulain>
NNTP-Posting-Host: gnat.thezone.net
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

You really don't have to worry about protected mode as DJGPP handles it on
its own.  The big thing is when you use interrupts, especially for VESA as
uses conventional memory to allocate it's tables.  There are a few other
hardware things that an understanding of protected mode comes in handy. 
But as said before, DJGPP handles the privileges quite well.  Another thing
you will have to get used to is that there are no more segments, just
selectors.  The selector can be (at least for me) thought of as a segment. 
The _DOS_DS usually returns the selector in ES and you access video memory
(for example) this way in assembler: 
mov es,_DOS_DS (I think)
mov edi,a00000
mov es:edi,1

That's roughly about what it entails anyways... the example above won't
compile correctly but will give the general idea. This is different from
the non-protected mode by:
mov ax,A000h
mov es,ax
xor edi,edi
mov [es:edi],1

That's the old way with real mode.

It's not that hard when you get into it.  Other than that, it's the same as
programming in a real mode compiler.  The above stuff is not necessary to
know right away, or in fact at all (I think).  It really depends on what
you want to do with DJGPP.

Mike
-- 
E-Mail me at:
mwinsor AT hotmail DOT com or tape_worm AT geocities DOT com

Check out my game in development:
http://www.geocities.com/siliconvalley/park/2120

POULAIN Vincent <vpoulain AT club-internet DOT fr> wrote in article
<01bc6d5a$d98cd160$LocalHost AT vpoulain>...
> 
> 
> > Hello, I'm new to DJGPP and protected-mode programming, I was
> > wondering how do I use protected mode?  Do programs made w/ DJGPP
> > automatically go into protected mode when they are run??

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019