1
2
3
4
5
6
7
8
9
10
11
12#ifndef _LINUX_CONSOLE_STRUCT_H_
13#define _LINUX_CONSOLE_STRUCT_H_
14
15#define NPAR 16
16
17struct vc_data {
18 unsigned short vc_num;
19 unsigned int vc_cols;
20 unsigned int vc_rows;
21 unsigned int vc_size_row;
22 const struct consw *vc_sw;
23 unsigned short *vc_screenbuf;
24 unsigned int vc_screenbuf_size;
25 unsigned char vc_attr;
26 unsigned char vc_def_color;
27 unsigned char vc_color;
28 unsigned char vc_s_color;
29 unsigned char vc_ulcolor;
30 unsigned char vc_halfcolor;
31 unsigned short vc_complement_mask;
32 unsigned short vc_hi_font_mask;
33 unsigned short vc_video_erase_char;
34 unsigned short vc_s_complement_mask;
35 unsigned int vc_x, vc_y;
36 unsigned int vc_top, vc_bottom;
37 unsigned int vc_state;
38 unsigned int vc_npar,vc_par[NPAR];
39 unsigned long vc_origin;
40 unsigned long vc_scr_end;
41 unsigned long vc_visible_origin;
42 unsigned long vc_pos;
43 unsigned int vc_saved_x;
44 unsigned int vc_saved_y;
45
46 unsigned int vc_charset : 1;
47 unsigned int vc_s_charset : 1;
48 unsigned int vc_disp_ctrl : 1;
49 unsigned int vc_toggle_meta : 1;
50 unsigned int vc_decscnm : 1;
51 unsigned int vc_decom : 1;
52 unsigned int vc_decawm : 1;
53 unsigned int vc_deccm : 1;
54 unsigned int vc_decim : 1;
55 unsigned int vc_deccolm : 1;
56
57 unsigned int vc_intensity : 2;
58 unsigned int vc_underline : 1;
59 unsigned int vc_blink : 1;
60 unsigned int vc_reverse : 1;
61 unsigned int vc_s_intensity : 2;
62 unsigned int vc_s_underline : 1;
63 unsigned int vc_s_blink : 1;
64 unsigned int vc_s_reverse : 1;
65
66 unsigned int vc_ques : 1;
67 unsigned int vc_need_wrap : 1;
68 unsigned int vc_can_do_color : 1;
69 unsigned int vc_report_mouse : 2;
70 unsigned int vc_kmalloced : 1;
71 unsigned char vc_utf : 1;
72 unsigned char vc_utf_count;
73 int vc_utf_char;
74 unsigned int vc_tab_stop[8];
75 unsigned char vc_palette[16*3];
76 unsigned short * vc_translate;
77 unsigned char vc_G0_charset;
78 unsigned char vc_G1_charset;
79 unsigned char vc_saved_G0;
80 unsigned char vc_saved_G1;
81 unsigned int vc_bell_pitch;
82 unsigned int vc_bell_duration;
83 unsigned int vc_cursor_type;
84 struct vc_data **vc_display_fg;
85 unsigned long vc_uni_pagedir;
86 unsigned long *vc_uni_pagedir_loc;
87
88};
89
90struct vc {
91 struct vc_data *d;
92
93
94
95
96};
97
98extern struct vc vc_cons [MAX_NR_CONSOLES];
99
100#define CUR_DEF 0
101#define CUR_NONE 1
102#define CUR_UNDERLINE 2
103#define CUR_LOWER_THIRD 3
104#define CUR_LOWER_HALF 4
105#define CUR_TWO_THIRDS 5
106#define CUR_BLOCK 6
107#define CUR_HWMASK 0x0f
108#define CUR_SWMASK 0xfff0
109
110#define CUR_DEFAULT CUR_UNDERLINE
111
112#define CON_IS_VISIBLE(conp) (*conp->vc_display_fg == conp)
113
114#endif
115