delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/04/01/19:32:59

From: "AndrewJ" <luminous-is AT home DOT com>
Newsgroups: comp.os.msdos.djgpp
References: <vopaes8lf0dvmo6qcgr9mr700ttrc4nvl0 AT 4ax DOT com> <tScF4.102301$Hq3 DOT 2613355 AT news2 DOT rdc1 DOT on DOT home DOT com> <341beso0h099e7a3cl10alhg6rstecud3a AT 4ax DOT com> <OslF4.103702$Hq3 DOT 2655751 AT news2 DOT rdc1 DOT on DOT home DOT com> <auocesg1mljsqp404rfglttdosrpolbck3 AT 4ax DOT com>
Subject: Re: hmm can someone help me with VESA
Lines: 64
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.00.2919.6600
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600
Message-ID: <KXrF4.104683$Hq3.2691616@news2.rdc1.on.home.com>
Date: Sat, 01 Apr 2000 19:18:02 GMT
NNTP-Posting-Host: 24.42.120.18
X-Complaints-To: abuse AT home DOT net
X-Trace: news2.rdc1.on.home.com 954616682 24.42.120.18 (Sat, 01 Apr 2000 11:18:02 PST)
NNTP-Posting-Date: Sat, 01 Apr 2000 11:18:02 PST
Organization: @Home Network Canada
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

> this works without 0x0 but not in my program if i make a program that
> starts up into that mode then getch(); then closes works fine but in
> mine it doesnt make the change...

Well, I always hate to argue with people, but...

This is cut 'n pasted from Ralf Brown's Interrupt List:

(Table 00083)
Values for VESA video mode:
 00h-FFh OEM video modes (see #00010 at AH=00h) //// AKA STANDARD BIOS MODES
 100h 640x400x256
 101h 640x480x256
 102h 800x600x16
 103h 800x600x256
 104h 1024x768x16
 105h 1024x768x256
 106h 1280x1024x16
 107h 1280x1024x256
 108h 80x60 text
 109h 132x25 text
 10Ah 132x43 text
 10Bh 132x50 text
 10Ch 132x60 text
---VBE v1.2---
 10Dh 320x200x32K
 10Eh 320x200x64K
 10Fh 320x200x16M
 110h 640x480x32K
 111h 640x480x64K
 112h 640x480x16M
 113h 800x600x32K
 114h 800x600x64K
 115h 800x600x16M
 116h 1024x768x32K
 117h 1024x768x64K
 118h 1024x768x16M
 119h 1280x1024x32K
 11Ah 1280x1024x64K
 11Bh 1280x1024x16M
---VBE 2.0---
 120h 1600x1200x256
 121h 1600x1200x32K
 122h 1600x1200x64K
81FFh special full-memory access mode

Now if we look at this and find 117 (which is 75h in base-16/hexadecimal), we
see that this isn't even a VBE mode.  But if we look at 117h (aka in C parlance
0x117) then it is the mode you are looking for!  So you are wrong, sir.  All
VBE modes have a value of greater than or equal to 0x100 (256 in decimal)!

Either use:

regs.x.bx = 0x117; /* using hex */
-or-
regs.x.bx = 279; /* using decimal */

If you still don't understand what I am saying, then the only thing I can
suggest is that you either brush up on your knowledge of the VBE specification,
or study how decimal and hexadecimal work.

AndrewJ


- Raw text -


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