1 #pragma once 2 3 #define VGA_NORMAL 0 4 #define VGA_AND 8 5 #define VGA_OR 16 6 #define VGA_XOR 24 7 8 #define MISC (PUCHAR)0x3c2 9 #define SEQ (PUCHAR)0x3c4 10 #define SEQDATA (PUCHAR)0x3c5 11 #define CRTC (PUCHAR)0x3d4 12 #define CRTCDATA (PUCHAR)0x3d5 13 #define GRAPHICS (PUCHAR)0x3ce 14 #define GRAPHICSDATA (PUCHAR)0x3cf 15 #define ATTRIB (PUCHAR)0x3c0 16 #define ATTRIBREAD (PUCHAR)0x3c1 17 #define STATUS (PUCHAR)0x3da 18 #define PELMASK (PUCHAR)0x3c6 19 #define PELINDEX (PUCHAR)0x3c8 20 #define PELDATA (PUCHAR)0x3c9 21 #define FEATURE (PUCHAR)0x3da 22 23 typedef struct _VGA_REGISTERS 24 { 25 UCHAR CRT[24]; 26 UCHAR Attribute[21]; 27 UCHAR Graphics[9]; 28 UCHAR Sequencer[5]; 29 UCHAR Misc; 30 } VGA_REGISTERS, *PVGA_REGISTERS; 31