diff options
author | H. Peter Anvin <hpa@zytor.com> | 2006-08-28 00:28:31 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2006-08-28 00:28:31 -0700 |
commit | 185b1c3a6c1f3ba8566507f1d8fe555480495a9c (patch) | |
tree | a7d8b1cad0ba798617ceec4b783f3937c23a8b54 /com32/lib/sys/vesa/video.h | |
parent | b76cbd9c17c8001bdba243dffe6df0199b2cf049 (diff) | |
download | syslinux-185b1c3a6c1f3ba8566507f1d8fe555480495a9c.tar.gz syslinux-185b1c3a6c1f3ba8566507f1d8fe555480495a9c.tar.xz syslinux-185b1c3a6c1f3ba8566507f1d8fe555480495a9c.zip |
More work on VESA graphical console support
Diffstat (limited to 'com32/lib/sys/vesa/video.h')
-rw-r--r-- | com32/lib/sys/vesa/video.h | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/com32/lib/sys/vesa/video.h b/com32/lib/sys/vesa/video.h index acbbc109..9237a85e 100644 --- a/com32/lib/sys/vesa/video.h +++ b/com32/lib/sys/vesa/video.h @@ -30,10 +30,37 @@ #define FONT_MAX_CHARS 256 #define FONT_MAX_HEIGHT 32 +#define FONT_WIDTH 8 #define VIDEO_X_SIZE 640 #define VIDEO_Y_SIZE 480 -extern uint8_t graphics_font[FONT_MAX_CHARS][FONT_MAX_HEIGHT]; +#define VIDEO_BORDER 8 +#define TEXT_PIXEL_ROWS (VIDEO_Y_SIZE-2*VIDEO_BORDER) +#define TEXT_PIXEL_COLS (VIDEO_X_SIZE-2*VIDEO_BORDER) + +#define SHADOW_NONE 0 +#define SHADOW_ALL 1 +#define SHADOW_NORMAL 2 +#define SHADOW_REVERSE 3 + +struct vesa_char { + uint8_t ch; /* Character */ + uint8_t attr; /* PC-style graphics attribute */ + uint8_t sha; /* Shadow attributes */ + uint8_t pad; /* Currently unused */ +}; + +extern struct vesa_char *__vesacon_text_display; + +extern int __vesacon_font_height; +extern uint8_t __vesacon_graphics_font[FONT_MAX_CHARS][FONT_MAX_HEIGHT]; +extern uint32_t __vesacon_background[VIDEO_Y_SIZE][VIDEO_X_SIZE]; +extern uint32_t __vesacon_shadowfb[VIDEO_Y_SIZE][VIDEO_X_SIZE]; + +extern unsigned char __vesacon_alpha_tbl[256][4]; + +extern int __vesacon_init_background(void); +int vesacon_load_background(const char *); #endif /* LIB_SYS_VESA_VIDEO_H */ |