Date: Thu, 5 Jun 1997 11:25:44 +0300 (IDT) From: Eli Zaretskii To: Eric Lange cc: djgpp AT delorie DOT com, Charles Sandmann Subject: Re: DPMI and I/O question In-Reply-To: <3395C778.2470@emu.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Precedence: bulk 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 >