summaryrefslogtreecommitdiff
path: root/packages/graph
diff options
context:
space:
mode:
authornickysn <nickysn@3ad0048d-3df7-0310-abae-a5850022a9f2>2010-09-19 15:41:56 +0000
committernickysn <nickysn@3ad0048d-3df7-0310-abae-a5850022a9f2>2010-09-19 15:41:56 +0000
commit379a66bcf3921244251cf79d28a96ccdf2423024 (patch)
treebbf2115effd8fc5778c397d569c4697ae26e7b86 /packages/graph
parent4247b6541f326527f7a62d3cb1fc906b156bc387 (diff)
downloadfpc-379a66bcf3921244251cf79d28a96ccdf2423024.tar.gz
* added SetBkColor and GetBkColor for Hercules
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@16012 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'packages/graph')
-rw-r--r--packages/graph/src/go32v2/graph.pp20
1 files changed, 20 insertions, 0 deletions
diff --git a/packages/graph/src/go32v2/graph.pp b/packages/graph/src/go32v2/graph.pp
index 6e879c4ef3..68d80c7b89 100644
--- a/packages/graph/src/go32v2/graph.pp
+++ b/packages/graph/src/go32v2/graph.pp
@@ -189,6 +189,9 @@ const
{* 720x348x2 Hercules mode routines *}
{************************************************************************}
+var
+ DummyHGCBkColor: Word;
+
procedure InitHGC720;
const
RegValues: array [0..11] of byte =
@@ -203,6 +206,21 @@ begin
Port[$3B8] := 10; { display page 0, graphic mode, display on }
DosMemFillChar($B000, 0, 65536, #0);
VideoOfs := 0;
+ DummyHGCBkColor := 0;
+end;
+
+{ compatible with TP7's HERC.BGI }
+procedure SetBkColorHGC720(ColorNum: Word);
+begin
+ if ColorNum > 15 then
+ exit;
+ DummyHGCBkColor := ColorNum;
+end;
+
+{ compatible with TP7's HERC.BGI }
+function GetBkColorHGC720: Word;
+begin
+ GetBkColorHGC720 := DummyHGCBkColor;
end;
procedure SetHGCRGBPalette(ColorNum, RedValue, GreenValue,
@@ -3595,6 +3613,8 @@ const CrtAddress: word = 0;
mode.SetActivePage := {$ifdef fpc}@{$endif}SetActiveHGC720;
mode.InitMode := {$ifdef fpc}@{$endif}InitHGC720;
mode.HLine := {$ifdef fpc}@{$endif}HLineHGC720;
+ mode.SetBkColor := {$ifdef fpc}@{$endif}SetBkColorHGC720;
+ mode.GetBkColor := {$ifdef fpc}@{$endif}GetBkColorHGC720;
mode.XAspect := 7500;
mode.YAspect := 10000;
AddMode(mode);