delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1996/07/02/18:04:54

Date: Tue, 2 Jul 96 18:03:18 EDT
From: Mihai Moise <moisemih AT ift DOT ulaval DOT ca>
Message-Id: <9607022203.AA18873@vonneuman.ift.ulaval.ca>
To: djgpp AT delorie DOT com
Subject: fat-ds hack

Here is what Eli Zaretskii wrote in the faq about the fat-ds:


You then use the 32-bit wrap-around in the linear address space to access
memory at, say, linear address 0xa0000 ( which belongs to the vga )
or any other address on your memory-mapped device.

Aren't we talking about virtual addresses, as opposed to physical? If
so, then how can we be sure the vga will be mapped at 0xa0000 in virtual
space? ( CWSDPMI might decide on a whim to map it at 0x1234 ).
Using this method to access video memory at 0xf0000000 would 
probably cause a page-absent exception. 

This is all speculative, correct me if I'm wrong. I did not test
it, and no, I was unable to retrieve Junaid's original article.

I personally recommend the 

__dpmi_allocate_linear_memory_block()
__dpmi_map_device_to_memory_block()

duo.

By the way, does anybody know what function does a handle serve in the
dpmi protected-mode adress structure?

Mihai

"If the fool would persist in his folly he would become wise." -- William Blake

- Raw text -


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