feat: add support for process to conduct Intel x87 and MMX related task.
[lunaix-os.git] / lunaix-os / includes / lunaix / tty / tty.h
1 #ifndef __LUNAIX_TTY_H
2 #define __LUNAIX_TTY_H
3
4 #include <lunaix/ds/fifo.h>
5
6 typedef unsigned short vga_attribute;
7
8 #define VGA_COLOR_BLACK 0
9 #define VGA_COLOR_BLUE 1
10 #define VGA_COLOR_GREEN 2
11 #define VGA_COLOR_CYAN 3
12 #define VGA_COLOR_RED 4
13 #define VGA_COLOR_MAGENTA 5
14 #define VGA_COLOR_BROWN 6
15 #define VGA_COLOR_DARK_GREY 8
16 #define VGA_COLOR_LIGHT_GREY 7
17 #define VGA_COLOR_LIGHT_BLUE 9
18 #define VGA_COLOR_LIGHT_GREEN 10
19 #define VGA_COLOR_LIGHT_CYAN 11
20 #define VGA_COLOR_LIGHT_RED 12
21 #define VGA_COLOR_LIGHT_MAGENTA 13
22 #define VGA_COLOR_LIGHT_BROWN 14
23 #define VGA_COLOR_WHITE 15
24
25 #define TTY_WIDTH 80
26 #define TTY_HEIGHT 25
27
28 void
29 tty_init(void* vga_buf);
30
31 void
32 tty_set_theme(vga_attribute fg, vga_attribute bg);
33
34 vga_attribute
35 tty_get_theme();
36
37 void
38 tty_flush_buffer(struct fifo_buf* buf);
39
40 void
41 tty_clear_line(int line_num);
42
43 void
44 tty_put_str_at(char* str, int x, int y);
45
46 #endif /* __LUNAIX_TTY_H */