102
102
current_attr = make_attr(foreground_color, background_color, blink);
105
BYTE tui_ascii_conversion_table[] = {
106
128, 129, 130, 131, 132, 133, 134, 135,
107
136, 137, 'S', 139, 'E', 141, 'Z', 143,
108
144, 145, 146, 147, 148, 149, 150, 151,
109
152, 153, 's', 155, 156, 157, 'z', 'Y',
110
160, 161, 162, 163, 'Y', 165, 'S', 167,
111
168, 169, 170, 171, 172, 173, 174, 175,
112
176, 177, 178, 179, 180, 'u', 182, 183,
113
184, 185, 186, 187, 188, 189, 190, 191,
114
'A', 'A', 'A', 'A', 'A', 'A', 198, 'C',
115
200, 201, 'E', 'E', 'I', 'I', 'I', 'I',
116
'D', 'N', 'O', 'O', 'O', 'O', 'O', 215,
117
'O', 'U', 'U', 'U', 'U', 'Y', 222, 223,
118
'a', 'a', 'a', 'a', 'a', 'a', 230, 'c',
119
'e', 'e', 'e', 'e', 'i', 'i', 'i', 'i',
120
240, 'n', 'o', 'o', 'o', 'o', 'o', 247,
121
248, 'u', 'u', 'u', 'u', 'y', 254, 'y',
105
124
void tui_put_char(int x, int y, BYTE c)
107
126
unsigned long addr = screen_addr(x, y);
108
127
BYTE attr_byte = (BYTE)current_attr;
110
129
_farsetsel(_dos_ds);
111
_farnspokeb(addr, c);
131
_farnspokeb(addr, tui_ascii_conversion_table[c-128]);
133
_farnspokeb(addr, c);
112
134
_farnspokeb(addr + 1, attr_byte);