www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/02/05/14:15:05

Message-Id: <m0vs6Fi-000S1pC@natacha.inti.edu.ar>
Comments: Authenticated sender is <salvador AT natacha DOT inti DOT edu DOT ar>
From: "Salvador Eduardo Tropea (SET)" <salvador AT natacha DOT inti DOT edu DOT ar>
Organization: INTI
To: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>, djgpp AT delorie DOT com
Date: Wed, 5 Feb 1997 15:26:22 +0000
MIME-Version: 1.0
Subject: Re: DMA problems under Win 3.1

Hi All:

> On Tue, 4 Feb 1997, Salvador Eduardo Tropea (SET) wrote:
> 
> > What I make?:
> >  I touch the DMA registers to make a DMA transfer to the SB 16 from my DJGPP 
> > program.
> > 
> > What happend?:
> >  Windows says that I violated the OS integrity.
> 
> Can you post a code fragment that triggers this?
I'll prepare a little program for that. 

> >   So now the question is: Why in the hell I can do it from real mode and I 
> > can't from PMode.
> 
> I guess DJGPP programs interact with Windows through an extra layer of 
> the Windows built-in DOS extender and DPMI host, which real-mode 16-bit 
> programs avoid.  The extender and the DPMI host might have their own 
> ideas about what they do and don't allow.
Do you know if Windows uses all the 4 rings?, the only way that I imagine to 
get this difference is if the DJGPP program runs in a different ring than the 
real mode one. Do you know another case?
 
> Did you try to use the VDS (Virtual DMA Services) to achieve what you 
> need?  AFAIK, that is the proper way well-behaved extended DOS programs 
> should use DMA services.  It doesn't work on vanilla DOS (no memory 
> manager + CWSDPMI as DPMI host), but you can easily detect you run on 
> Windows and use it only then (if it works).
 I tried it some time ago without much success.

SET 
--------------- 0 --------------------------------
Salvador Eduardo Tropea (SET).
Address: Curapaligue 2124, Caseros, 3 de Febrero
Buenos Aires, (1678), ARGENTINA
TE: +(541) 759 0013

- Raw text -


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