Message-Id: <199911251149.GAA38584@glitch.crosswinds.net> From: "Kalum Somaratna aka Grendel" To: djgpp AT delorie DOT com Date: Thu, 25 Nov 1999 18:47:19 +0600 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7BIT Subject: Re: fprintf() and using under graphic modes In-reply-to: <81hnbp$7jq$4@portraits.wsisiz.edu.pl> X-mailer: Pegasus Mail for Win32 (v3.12) Reply-To: djgpp AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On 24 Nov 99, at 13:29, Chaos wrote: > Do I really have to implement VESA 1.2 Bank Changing? > I' ve searched within my friends someone with video card old enough not > having VESA 2.0. > I've only found 1 guy besides using UniVbe. So, do I must stick with slow > (int 0x10 yuck!) bank changing? > Thnx for eventual answer. IMHO I think you should forget about VESA 1.2 bank switching support and code specifically for the Linear Frame Buffer (VESA 2.0 and above). AFAIK bank switching was implemented because the only way for real mode programs to access video memory was thorough the A000 range(64k). So if the card has 1MB vidram by bank switching the real mode prog could acess all the 1Mb vidram in 64K banks. However VBE 2.0 was designed so that Protected Mode Programs (DJGPP/DOS4GW etc progs) can address the full memory as a single linear buffer (instead of banking). Most SVGA DOS games (Quake 1.00, MechWarrior etc) are also designed so that they need at least VESA 2.0 as they use the LFB for speed since all those Vesa 1.2 int 10h bankswitching will be very slow. So if you code only for VBE 2.0 you will in good company. Also coding for the LFB is much more simpler and easier and you will introduce less bugs than all those ancient bank switching stuff. So IMHO you can program for the VESA 2.0 and distribute a copy of UNIVBE with it that will enable VBE 2.0 support on any computer that doesn't have it (like my VBE 1.2 card). Wishing you sucess! Kalum.