home *** CD-ROM | disk | FTP | other *** search
- /*
- Copyright 1990 by John Wiley & Sons, Inc.
- All Rights Reserved.
- */
-
- /****************************************/
- /* VGA Header File */
- /* for VGA access functions */
- /* written in Turbo C 2.0 */
- /* by */
- /* Craig A. Lindley */
- /* */
- /* Vers: 1.0 Last Update: 12/08/89 */
- /****************************************/
-
- /* defines for 320x200, 640x200 and 640x480 resolution VGA screens */
- #define LRMAXCOLS 320 /* 320x200 256 color mode */
- #define LRMAXROWS 200
- #define LRVIDEOMODE 0x13 /* as returned from GetVideoMode call */
-
- #define MRMAXCOLS 640 /* 640x200 16 color mode */
- #define MRMAXROWS 200
- #define MRVIDEOMODE 0x0E /* as returned from GetVideoMode call */
-
- #define HRMAXCOLS 640 /* 640x480 16 color mode */
- #define HRMAXROWS 480
- #define HRVIDEOMODE 0x12 /* as returned from GetVideoMode call */
-
- #define SCREENWIDTHINCHES (double) 9.500
- #define SCREENHEIGHTINCHES (double) 7.125
-
- /*
- The following values are used to convert between
- vertical and horiz pixels and inches of display.
- Used in aspect ratio calculations for image rotations.
- Could be calculated for all resolutions, but only
- low res (LR) is used currently.
- */
-
- /*
- LRPIXELSPERINCHHORIZ is LRMAXCOLS/SCREENWIDTHINCHES.
- It is defined as a constant for speed in floating
- point operations. LRINCHESPERPIXELHORIZ is 1 over
- LRPIXELPERINCHHORIZ.
- */
- #define LRPIXELSPERINCHHORIZ (double) 33.68421053
- #define LRINCHESPERPIXELHORIZ (double) 0.02968750
-
- /*
- LRPIXELSPERINCHVERT is LRMAXROWS/SCREENHEIGHTINCHES.
- It is defined as a constant for speed in floating
- point operations. LRINCHESPERPIXELVERT is 1 over
- LRPIXELPERINCHVERT.
- */
- #define LRPIXELSPERINCHVERT (double) 28.07017544
- #define LRINCHESPERPIXELVERT (double) 0.03562500
-
-
- #define MAXCOLREGVAL 63
-
- /* VGA Function Declarations */
-
- /* Assembler Language Function Prototypes */
- void PutPixel256 (unsigned Col, unsigned Row, unsigned Color);
- unsigned GetPixel256 (unsigned Col, unsigned Row);
-
- /* C Function Prototypes */
- void InitGraphics (void);
- unsigned GetVideoMode(void);
- void Set256ColorMode (void);
- void SetAColorReg (unsigned RegNum, unsigned Red,
- unsigned Green, unsigned Blue);
- void GetAColorReg (unsigned RegNum, unsigned *Red,
- unsigned *Green, unsigned *Blue);
- void LoadGray16Palette (void);
- void LoadGray64Palette (void);