[Back to EGAVGA SWAG index]  [Back to Main SWAG index]  [Original]

===========================================================================
 BBS: Canada Remote Systems
Date: 06-30-93 (16:12)             Number: 28771
From: SEAN PALMER                  Refer#: NONE
  To: JOHN DAILEY                   Recvd: NO
Subj: VGA INFO                       Conf: (1221) F-PASCAL
---------------------------------------------------------------------------
JD>I'm looking for a quick-and-dirty way of checking to see if
JD>a user has VGA capability in text mode.  ie. 50 line mode.
JD> Any help is appreciated.

function vgaPresent:boolean;assembler;asm
 mov ah,$F; int $10; mov oldMode,al;  {save old Gr mode}
 mov ax,$1A00; int $10;    {check for VGA/MCGA}
 cmp al,$1A; jne @ERR;     {no VGA Bios}
 cmp bl,7; jb @ERR;        {is VGA or better?}
 cmp bl,$FF; jnz @OK;
@ERR: xor al,al; jmp @EXIT;
@OK: mov al,1;
@EXIT:
 end;

otherwise you can check the BIOS save data area for number of rows on
screen... the EGA and VGA keep this updated, older adapters don't (they
set it to 0)

you can just leave the screen in the mode it was in already this way.

var
 lastRow:byte absolute $40:$84;    {newer bios only:rows on screen-1}

 * OLX 2.2 * Programming is like sex:  one mistake and you support it

--- Maximus 2.01wb
 * Origin: >>> Sun Mountain BBS <<< (303)-665-6922 (1:104/123)

[Back to EGAVGA SWAG index]  [Back to Main SWAG index]  [Original]