Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/vt/vt.h
Show First 20 Lines • Show All 42 Lines • ▼ Show 20 Lines | |||||
#include <sys/callout.h> | #include <sys/callout.h> | ||||
#include <sys/condvar.h> | #include <sys/condvar.h> | ||||
#include <sys/conf.h> | #include <sys/conf.h> | ||||
#include <sys/consio.h> | #include <sys/consio.h> | ||||
#include <sys/kbio.h> | #include <sys/kbio.h> | ||||
#include <sys/mouse.h> | #include <sys/mouse.h> | ||||
#include <sys/terminal.h> | #include <sys/terminal.h> | ||||
#include <sys/sysctl.h> | #include <sys/sysctl.h> | ||||
#include <sys/font.h> | |||||
#include "opt_syscons.h" | #include "opt_syscons.h" | ||||
#include "opt_splash.h" | #include "opt_splash.h" | ||||
#ifndef VT_MAXWINDOWS | #ifndef VT_MAXWINDOWS | ||||
#ifdef MAXCONS | #ifdef MAXCONS | ||||
#define VT_MAXWINDOWS MAXCONS | #define VT_MAXWINDOWS MAXCONS | ||||
#else | #else | ||||
▲ Show 20 Lines • Show All 334 Lines • ▼ Show 20 Lines | |||||
#define VT_FB_MAX_WIDTH 4096 | #define VT_FB_MAX_WIDTH 4096 | ||||
#endif | #endif | ||||
#ifndef VT_FB_MAX_HEIGHT | #ifndef VT_FB_MAX_HEIGHT | ||||
#define VT_FB_MAX_HEIGHT 2400 | #define VT_FB_MAX_HEIGHT 2400 | ||||
#endif | #endif | ||||
/* name argument is not used yet. */ | /* name argument is not used yet. */ | ||||
#define VT_DRIVER_DECLARE(name, drv) DATA_SET(vt_drv_set, drv) | #define VT_DRIVER_DECLARE(name, drv) DATA_SET(vt_drv_set, drv) | ||||
/* | |||||
* Fonts. | |||||
* | |||||
* Remapping tables are used to map Unicode points to glyphs. They need | |||||
* to be sorted, because vtfont_lookup() performs a binary search. Each | |||||
* font has two remapping tables, for normal and bold. When a character | |||||
* is not present in bold, it uses a normal glyph. When no glyph is | |||||
* available, it uses glyph 0, which is normally equal to U+FFFD. | |||||
*/ | |||||
struct vt_font_map { | |||||
uint32_t vfm_src; | |||||
uint16_t vfm_dst; | |||||
uint16_t vfm_len; | |||||
}; | |||||
struct vt_font { | |||||
struct vt_font_map *vf_map[VFNT_MAPS]; | |||||
uint8_t *vf_bytes; | |||||
unsigned int vf_height, vf_width; | |||||
unsigned int vf_map_count[VFNT_MAPS]; | |||||
unsigned int vf_refcount; | |||||
}; | |||||
#ifndef SC_NO_CUTPASTE | #ifndef SC_NO_CUTPASTE | ||||
struct vt_mouse_cursor { | struct vt_mouse_cursor { | ||||
uint8_t map[64 * 64 / 8]; | uint8_t map[64 * 64 / 8]; | ||||
uint8_t mask[64 * 64 / 8]; | uint8_t mask[64 * 64 / 8]; | ||||
uint8_t width; | uint8_t width; | ||||
uint8_t height; | uint8_t height; | ||||
}; | }; | ||||
▲ Show 20 Lines • Show All 43 Lines • Show Last 20 Lines |