delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/06/05/04:32:27

Date: Thu, 5 Jun 1997 11:25:44 +0300 (IDT)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
To: Eric Lange <ericl AT emu DOT com>
cc: djgpp AT delorie DOT com, Charles Sandmann <sandmann AT clio DOT rice DOT edu>
Subject: Re: DPMI and I/O question
In-Reply-To: <3395C778.2470@emu.com>
Message-ID: <Pine.SUN.3.91.970605112435.5841T-100000@is>
MIME-Version: 1.0

On Wed, 4 Jun 1997, Eric Lange wrote:

> I want to trap writes to certain or all I/O ports.  I know that the 386
> and up supports this in a V86 session with the I/O map and permission
> bits in the TSS.  I also know that Windows provides this functionality
> with a nice handy VMM call.
> 
> I want to write a DPMI compliant driver that can run in DOS, without
> Windows being loaded, that allows this.

I might be wrong here, but I think you can't, because your program
runs in ring 3, and only a ring-0 task can get the exceptions due to
priviledged calls.  Charles?

> #3.  Does a decent API or SDK exist for DOS DPMI development? 

What's wrong with the DPMI calls in DJGPP's library?  What kind of SDK
do you have in mind?

> #4.  Is VCPI an option for me?

You mean, to roll your own DOS extender?  Sure' that's an option; but
the amount of work...

On Wed, 4 Jun 1997, Eric Lange wrote:

> I want to trap writes to certain or all I/O ports.  I know that the 386
> and up supports this in a V86 session with the I/O map and permission
> bits in the TSS.  I also know that Windows provides this functionality
> with a nice handy VMM call.
> 
> I want to write a DPMI compliant driver that can run in DOS, without
> Windows being loaded, that allows this.
> 
> #1.  Do QEMM, 386MAX, and other DPMI servers, by default, place the chip
> in V86 while running DOS?  I noticed in the DPMI 0.9 spec that this is
> only an OPTION for DPMI servers, but they can also run in real mode.  If
> they do run in V86, then certainly it is possible to trap the exception
> caused by a write to a port.
> 
> #2.  How do I set the I/O map for the V86 session in a way that DPMI
> allows?
> 
> #3.  Does a decent API or SDK exist for DOS DPMI development? 
> Preferably free?
> 
> #4.  Is VCPI an option for me?
> 
> Basically, I want to virtualize some hardware unbeknownst to DOS
> programs.
> 
> Any suggestions?
> 
> I would appreciate any help I can get.
> 
> Eric Lange
> ericl AT emu DOT com
> 

- Raw text -


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