delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/09/25/09:06:10

From: "Nicolas Gasnier" <nicolas DOT gasnier AT wanadoo DOT fr>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Protected Mode problem (note: Eli Zaretskii)
Date: Sat, 25 Sep 1999 14:45:17 +0200
Organization: Wanadoo, l'internet avec France Telecom
Lines: 60
Message-ID: <7sifsr$nir$1@wanadoo.fr>
References: <19990924095805 DOT 27511 DOT rocketmail AT web1401 DOT mail DOT yahoo DOT com>
NNTP-Posting-Host: tours-9-217.abo.wanadoo.fr
X-Trace: wanadoo.fr 938263259 24155 164.138.85.217 (25 Sep 1999 12:40:59 GMT)
X-Complaints-To: abuse AT wanadoo DOT fr
NNTP-Posting-Date: 25 Sep 1999 12:40:59 GMT
X-Newsreader: Microsoft Outlook Express 4.72.3110.5
X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

I think that you don't need to take care about
the A20 line and whatever when you spawn a program.
The Spawn function will do it itself if necessary.
Your program crashes because it access system
registers. This triggers an exception, because
the program is run with user permissions. The
DPMI manager (whitch as privilegied rights), needed
to run DJGPP programs, don't like that, and try
to stop the program. There is the problem same
problem for the memory management,and gdt, idt,
and all things that conflicts with it.
That's not the fault of the DJGPP program or the
memory manager, but this is the mechanism of
protected mode.

A few solutions :
- run your program in full dos mode without any
memory managers (emm, qemm, himem...) and don't
spawn it from your DJGPP program.
- rewrite your program using DPMI interface

--
+-------
|  Blade Cox
|  e-mail : nicolas DOT gasnier AT wanadoo DOT fr
|  e-mail alternatif : syntax DOT terror AT caramail DOT com
   homepage : http://perso.wanadoo.fr/blade


Prashant TR a écrit dans le message
<19990924095805 DOT 27511 DOT rocketmail AT web1401 DOT mail DOT yahoo DOT com>...
>
>Hi everyone,
>
>  When I spawn a real mode program that itself
>switches to protected mode and does some extended
>memory access, I get a severe problem and my original
>parent DJGPP program crashes.
>
>  I've set everything back to normal including A20
>line, GDT, IDT, TS flag and almost everything you can
>think of. And what are the hardware interrupts DJGPP
>uses for IRQ0-7. Is it INT 78-7fh ? The Task register
>is modified my my program. I can't of course set this
>back to what it was.
>
> So, what could be the problem.
>
>And does DJGPP allow me to make reference to any
>portion of the extended memory ? I don't think it
>does.
>Someone please help.
>
>Thanks,
>Prashant TR
>__________________________________________________
>Do You Yahoo!?
>Bid and sell for free at http://auctions.yahoo.com


- Raw text -


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