Date: Sun, 26 Feb 95 20:58 MST From: mat AT ardi DOT com (Mat Hostetter) To: "William Parsons Newhall, Jr." Cc: djgpp AT sun DOT soe DOT clarkson DOT edu Subject: Re: Accessing VESA SVGA Frame Buffer References: <9502261918 DOT AA24318 AT sun DOT soe DOT clarkson DOT edu DOT soe> >>>>> "William" == William Parsons Newhall, writes: William> Is there any way I can access the frame buffer(or the 64K William> DOS window into it at A000:0000) under dpmi? Sure, that's how Executor (our commercial Macintosh(tm) emulator) works. We make the VESA paging calls ourselves when necessary. There are a variety of ways to do what you want. Which is best depends on what you need to accomplish and how comfortable you are with x86 assembly. gcc's inline asm facilities are great if you need them. djgpp has library functions to allow you to move memory between "protected mode" memory and "conventional" (i.e. DOS) memory. The easiest thing would just be to use those. If you actually need to hack assembly for some reason (and you probably don't) the key is to load a selector with a value referring to conventional memory and then make 0xA0000 references using that selector. Since explicit "segment overrides" are expensive, there are a variety of ways to make sure your code is fast, again depending on what it is you want to accomplish. -Mat