66 lines
1.5 KiB
C
66 lines
1.5 KiB
C
//video.h
|
|
// 08/18/03 Josh Holtrop
|
|
// Modified: 11/12/03
|
|
|
|
void video_init();
|
|
void video_horiz(int y, int x1, int x2, dword color);
|
|
void video_vert(int x, int y1, int y2, dword color);
|
|
void video_rect(int x1, int y1, int x2, int y2, dword color);
|
|
void video_rectf(int x1, int y1, int x2, int y2, dword color);
|
|
inline void video_pset(int x, int y, dword color);
|
|
void video_psetp16(int pixel, dword color);
|
|
void video_psetp24(int pixel, dword color);
|
|
void video_psetp32(int pixel, dword color);
|
|
void video_renderChar(int x, int y, int character, dword color);
|
|
|
|
typedef struct{
|
|
word ModeAttributes;
|
|
byte WinAAttributes;
|
|
byte WinBAttributes;
|
|
word WinGranularity;
|
|
word WinSize;
|
|
word WinASegment;
|
|
word WinBSegment;
|
|
dword WinFuncPtr;
|
|
word BytesPerScanLine;
|
|
|
|
word XResolution;
|
|
word YResolution;
|
|
byte XCharSize;
|
|
byte YCharSize;
|
|
byte NumberOfPlanes;
|
|
byte BitsPerPixel;
|
|
byte NumberOfBanks;
|
|
byte MemoryModel;
|
|
byte BankSize;
|
|
byte NumberOfImagePages;
|
|
byte Reserved1;
|
|
|
|
byte RedMaskSize;
|
|
byte RedFieldPosition;
|
|
byte GreenMaskSize;
|
|
byte GreenFieldPosition;
|
|
byte BlueMaskSize;
|
|
byte BlueFieldPosition;
|
|
byte RsvdMaskSize;
|
|
byte RsvdFieldPosition;
|
|
byte DirectColorModeInfo;
|
|
|
|
dword PhysBasePtr;
|
|
dword OffScreenMemOffset;
|
|
word OffScreenMemSize;
|
|
byte Reserved[206];
|
|
} ModeInfoBlock;
|
|
|
|
ModeInfoBlock video_mode;
|
|
byte *vid_ptr24;
|
|
word *vid_ptr16;
|
|
dword *vid_ptr32;
|
|
void (*video_psetp)(int, dword); //function pointer to set a pixel
|
|
|
|
|
|
|
|
|
|
|
|
|