15#include "../kklibc/ctypes.h"
19#define VIDEO_ADDRESS 0xb8000
22#define WHITE_ON_BLACK 0x0f
23#define WHITE_ON_BLUE 0x1f
24#define WHITE_ON_RED 0x4f
25#define BLUE_ON_WHITE 0x1f
26#define WHITE_ON_DGREY 0x8
29#define BLUE_ON_BLACK 0x01
30#define GREEN_ON_BLACK 0x02
31#define CYAN_ON_BLACK 0x03
32#define RED_ON_BLACK 0x04
33#define MAGENTA_ON_BLACK 0x05
34#define BROWN_ON_BLACK 0x06
35#define LGREY_ON_BLACK 0x07
36#define DGREY_ON_BLACK 0x08
37#define LBLUE_ON_BLACK 0x09
38#define LGREEN_ON_BLACK 0x0A
39#define LCYAN_ON_BLACK 0x0B
40#define LRED_ON_BLACK 0x0C
41#define LMAGENTA_ON_BLACK 0x0D
42#define YELLOW_ON_BLACK 0x0E
43#define RED_ON_WHITE 0xf4
46#define REG_SCREEN_CTRL 0x3d4
47#define REG_SCREEN_DATA 0x3d5
114void kprint_at(
char* message,
int col,
int row,
int color);
163int print_char(
char c,
int col,
int row,
char attr);
int print_char(char c, int col, int row, char attr)
Definition screen.c:182
void _screen_kprint(char *message)
Вывод текста
Definition screen.c:98
int get_offset(int col, int row)
Definition screen.c:275
void kprint(char *message)
Definition screen.c:64
void set_cursor_offset(int offset)
Definition screen.c:249
char * get_input_buffer(void)
Получить текущий буфер ввода (для шелла)
Definition screen.c:334
int read_line(char *buffer, int max_len)
Чтение строки с клавиатуры с экрана
Definition screen.c:310
void kprint_colored(char *message, int color)
Definition screen.c:82
void clear_input_buffer(void)
Очистить буфер ввода
Definition screen.c:338
void clear_screen()
Стандартная очистка экрана
Definition screen.c:257
void _screen_kprint_backspace()
Вывод символа backspace.
Definition screen.c:120
void _screen_kprint_colored(char *message, int color)
Цветной вывод
Definition screen.c:115
void kprintln_colored(char *message, int color)
Definition screen.c:77
void halted_cpu_screen_clear()
Очистка и заполнение экраном halted cpu.
Definition screen.c:132
int get_cursor_offset()
Получение оффсета курсора
Definition screen.c:237
void panic_red_screen(char *title, char *description)
Красный экран для паники ядра
Definition screen.c:144
void printf_panic_screen(char *title, const char *reason_fmt,...)
Definition screen.c:163
void _screen_kprintln(char *message)
Вывод текста с новой строкой
Definition screen.c:103
int read_line_with_prompt(const char *prompt, char *buffer, int max_len)
Вывести приглашение и прочитать строку
Definition screen.c:329
int get_offset_row(int offset)
Definition screen.c:279
void _screen_kprintln_colored(char *message, int color)
Цветной вывод с новой строкой
Definition screen.c:109
void kprint_backspace(void)
Definition screen.c:90
int get_offset_col(int offset)
Definition screen.c:283
void handle_input_char(char c)
Definition screen.c:287
void kprint_at(char *message, int col, int row, int color)
Вывод текста в определенном месте
Definition screen.c:30
void kprint_at_pos(int col, int row, char c, char attr)
Вывод символа в определенной позиции
Definition screen.c:51
void kprintln(char *message)
Definition screen.c:72