www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/11/26/14:35:46

From: tmurez AT nospam DOT planete DOT net (Thibaut Murez)
Newsgroups: comp.os.msdos.djgpp
Subject: VESA and more generally using dpmi to access VIDEO Memory
Date: Thu, 26 Nov 1998 20:11:56 +0100
Organization: Planete.net, France
Lines: 29
Message-ID: <MPG.10c7c628d7c67f2898969b@news>
NNTP-Posting-Host: numeris-bdx-9.planete.net
X-Newsreader: Anawave Gravity v2.00
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Hi
while i was building a vesa lib using nasm and djgpp i had big troubles 
to use LFB. I made it work but it did only on my computer and under 
dos...So i looked for any mystake but i haven't found one :(
Then i built a lib to write string in text modes directly in video 
memory...First i tried to map the memory area but it never worked...When 
i used the function __dpmi_segment_to_descriptor it worked really 
fine...That's why i have tried to use this function on 0xa000 
segment...And my lib worked fine...Then i used the physical memory 
mapping function and it didn't work anymore so i was wondering whether i 
was performing all steps to map memory. Here 's a snippet :
WORD VideoSelector;

this works : VideoSelector=__dpmi_segment_to_descriptor(0xa000);

this doesn't work :
__dpmi_meminfo LFB;

VideoSelector=__dpmi_allocate_ldt_descriptors(1);
LFB.size=0xffff;
LFB.address=0xa0000000l;
__dpmi_physical_address_mapping(&LFB);
__dpmi_set_segment_base_address(VideoSelector, LFB.address);
__dpmi_set_segment_limit(VideoSelector, LFB.size);

What have i forgotten ??

		thanks in advance
(i apologize for my mistakes but i'm a french froggy :) )

- Raw text -


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