#ifndef _SYS_CONSIO_H_
#define _SYS_CONSIO_H_
#ifndef _SYS_TYPES_H_
#include <sys/types.h>
#endif
#ifndef _SYS_IOCCOM_H_
#include <sys/ioccom.h>
#endif
#define KD_TEXT 0
#define KD_TEXT0 0
#define KD_GRAPHICS 1
#define KD_TEXT1 2
#define KD_PIXEL 3
#define KDGETMODE _IOR('K', 9, int)
#define KDSETMODE _IO('K', 10 )
#define KDSBORDER _IO('K', 13 )
struct _scr_size {
int scr_size[3];
};
typedef struct _scr_size scr_size_t;
#define KDRASTER _IOW('K', 100, scr_size_t)
struct _scrmap {
char scrmap[256];
};
typedef struct _scrmap scrmap_t;
#define GIO_SCRNMAP _IOR('k', 2, scrmap_t)
#define PIO_SCRNMAP _IOW('k', 3, scrmap_t)
#define GIO_ATTR _IOR('a', 0, int)
#define GIO_COLOR _IOR('c', 0, int)
#define CONS_CURRENT _IOR('c', 1, int)
#define CONS_GET _IOR('c', 2, int)
#define CONS_SET _IOW('c', 3, int)
#define CONS_BLANKTIME _IOW('c', 4, int)
#define CONS_BLINK_CURSOR (1 << 0)
#define CONS_CHAR_CURSOR (1 << 1)
#define CONS_CURSORTYPE _IOW('c', 7, int)
#define CONS_VISUAL_BELL (1 << 0)
#define CONS_QUIET_BELL (1 << 1)
#define CONS_BELLTYPE _IOW('c', 8, int)
#define CONS_HISTORY _IOW('c', 9, int)
#define CONS_CLRHIST _IO('c', 10)
struct mouse_data {
int x;
int y;
int z;
int buttons;
};
typedef struct mouse_data mouse_data_t;
struct mouse_mode {
int mode;
int signal;
};
typedef struct mouse_mode mouse_mode_t;
struct mouse_event {
int id;
int value;
};
typedef struct mouse_event mouse_event_t;
struct mouse_info {
int operation;
#define MOUSE_SHOW 0x01
#define MOUSE_HIDE 0x02
#define MOUSE_MOVEABS 0x03
#define MOUSE_MOVEREL 0x04
#define MOUSE_GETINFO 0x05
#define MOUSE_MODE 0x06
#define MOUSE_ACTION 0x07
#define MOUSE_MOTION_EVENT 0x08
#define MOUSE_BUTTON_EVENT 0x09
#define MOUSE_MOUSECHAR 0x0a
union {
mouse_data_t data;
mouse_mode_t mode;
mouse_event_t event;
int mouse_char;
} u;
};
typedef struct mouse_info mouse_info_t;
#define CONS_MOUSECTL _IOWR('c', 10, mouse_info_t)
#define CONS_IDLE _IOR('c', 11, int)
#define CONS_NO_SAVER (-1)
#define CONS_LKM_SAVER 0
#define CONS_USR_SAVER 1
#define CONS_SAVERMODE _IOW('c', 12, int)
#define CONS_SAVERSTART _IOW('c', 13, int)
struct fnt8 {
char fnt8x8[8*256];
};
typedef struct fnt8 fnt8_t;
struct fnt14 {
char fnt8x14[14*256];
};
typedef struct fnt14 fnt14_t;
struct fnt16 {
char fnt8x16[16*256];
};
typedef struct fnt16 fnt16_t;
#define PIO_FONT8x8 _IOW('c', 64, fnt8_t)
#define GIO_FONT8x8 _IOR('c', 65, fnt8_t)
#define PIO_FONT8x14 _IOW('c', 66, fnt14_t)
#define GIO_FONT8x14 _IOR('c', 67, fnt14_t)
#define PIO_FONT8x16 _IOW('c', 68, fnt16_t)
#define GIO_FONT8x16 _IOR('c', 69, fnt16_t)
struct colors {
char fore;
char back;
};
struct vid_info {
short size;
short m_num;
u_short font_size;
u_short mv_row, mv_col;
u_short mv_rsz, mv_csz;
struct colors mv_norm,
mv_rev,
mv_grfc;
u_char mv_ovscan;
u_char mk_keylock;
};
typedef struct vid_info vid_info_t;
#define CONS_GETINFO _IOWR('c', 73, vid_info_t)
#define CONS_GETVERS _IOR('c', 74, int)
#define CONS_CURRENTADP _IOR('c', 100, int)
#define CONS_ADPINFO _IOWR('c', 101, video_adapter_info_t)
#define CONS_MODEINFO _IOWR('c', 102, video_info_t)
#define CONS_FINDMODE _IOWR('c', 103, video_info_t)
#define CONS_SETWINORG _IO('c', 104 )
#define CONS_SETKBD _IO('c', 110 )
#define CONS_RELKBD _IO('c', 111)
#define CONS_SCRSHOT _IOWR('c', 105, scrshot_t)
struct scrshot {
int xsize;
int ysize;
u_int16_t* buf;
};
typedef struct scrshot scrshot_t;
#define TI_NAME_LEN 32
#define TI_DESC_LEN 64
struct term_info {
int ti_index;
int ti_flags;
u_char ti_name[TI_NAME_LEN];
u_char ti_desc[TI_DESC_LEN];
};
typedef struct term_info term_info_t;
#define CONS_GETTERM _IOWR('c', 112, term_info_t)
#define CONS_SETTERM _IOW('c', 113, term_info_t)
#define VT_OPENQRY _IOR('v', 1, int)
#ifndef _VT_MODE_DECLARED
#define _VT_MODE_DECLARED
struct vt_mode {
char mode;
#define VT_AUTO 0
#define VT_PROCESS 1
#define VT_KERNEL 255
char waitv;
short relsig;
short acqsig;
short frsig;
};
typedef struct vt_mode vtmode_t;
#endif
#define VT_SETMODE _IOW('v', 2, vtmode_t)
#define VT_GETMODE _IOR('v', 3, vtmode_t)
#define VT_FALSE 0
#define VT_TRUE 1
#define VT_ACKACQ 2
#define VT_RELDISP _IO('v', 4 )
#define VT_ACTIVATE _IO('v', 5 )
#define VT_WAITACTIVE _IO('v', 6 )
#define VT_GETACTIVE _IOR('v', 7, int)
#define VT_GETINDEX _IOR('v', 8, int)
#define VT_LOCKSWITCH _IOW('v', 9, int)
#ifdef _KERNEL
extern int break_to_debugger;
extern int alt_break_to_debugger;
#endif
#endif