[Back to EGAVGA SWAG index] [Back to Main SWAG index] [Original]
(*
ERIC MILLER
> Let's suppose that I used VGA256.BGI. I change it to VGA256.OBJ. And in
> my program, I type the following: {$L VGA256.OBJ}
Well, you can't lin VGA256.BGI into the program that way; for some
reason, if it wasn't included in TP6 it won't register. You have
to use the InstallUserDriver function instead of RegisterBGIDriver.
Here is a program that get's into VGA256 mode that way - but of
course you must already know how to do it.
*)
PROGRAM Vg;
Uses
Graph;
FUNCTION vgaPresent : boolean; assembler;
asm
mov ah,$F
int $10
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;
{$F+}
FUNCTION DetectVGA256: Integer;
BEGIN
IF vgaPresent THEN
DetectVGA256 := 0
ELSE
DetectVGA256 := grError;
END;
{$F-}
VAR
VGA256: Integer;
B: Integer;
BEGIN
VGA256 := InstallUserDriver('VGA256', @DetectVGA256);
B := 0;
InitGraph(VGA256, B, '');
OutText('In 320x200x256 - press enter');
Readln;
CloseGraph;
END.
[Back to EGAVGA SWAG index] [Back to Main SWAG index] [Original]