Kintsugi OS 0.2.0
x86 Monolithic OS
Loading...
Searching...
No Matches
screen.h File Reference
#include "../kklibc/ctypes.h"

Go to the source code of this file.

Macros

#define VIDEO_ADDRESS   0xb8000
 
#define MAX_ROWS   25
 
#define MAX_COLS   80
 
#define WHITE_ON_BLACK   0x0f
 
#define WHITE_ON_BLUE   0x1f
 
#define WHITE_ON_RED   0x4f
 
#define BLUE_ON_WHITE   0x1f
 
#define WHITE_ON_DGREY   0x8
 
#define BLUE_ON_BLACK   0x01
 
#define GREEN_ON_BLACK   0x02
 
#define CYAN_ON_BLACK   0x03
 
#define RED_ON_BLACK   0x04
 
#define MAGENTA_ON_BLACK   0x05
 
#define BROWN_ON_BLACK   0x06
 
#define LGREY_ON_BLACK   0x07
 
#define DGREY_ON_BLACK   0x08
 
#define LBLUE_ON_BLACK   0x09
 
#define LGREEN_ON_BLACK   0x0A
 
#define LCYAN_ON_BLACK   0x0B
 
#define LRED_ON_BLACK   0x0C
 
#define LMAGENTA_ON_BLACK   0x0D
 
#define YELLOW_ON_BLACK   0x0E
 
#define RED_ON_WHITE   0xf4
 
#define REG_SCREEN_CTRL   0x3d4
 
#define REG_SCREEN_DATA   0x3d5
 

Functions

int get_cursor_offset ()
 Получение оффсета курсора
 
void clear_screen ()
 Стандартная очистка экрана
 
void halted_cpu_screen_clear ()
 Очистка и заполнение экраном halted cpu.
 
void kprint_at (char *message, int col, int row, int color)
 Вывод текста в определенном месте
 
void kprint (char *message)
 Вывод текста
 
void kprintln (char *message)
 Вывод текста с новой строкой
 
void kprintln_colored (char *message, int color)
 Цветной вывод с новой строкой
 
void kprint_colored (char *message, int color)
 Цветной вывод
 
void kprint_backspace ()
 Вывод символа backspace.
 
void panic_red_screen (char *title, char *description)
 Красный экран для паники ядра
 

Macro Definition Documentation

◆ BLUE_ON_BLACK

#define BLUE_ON_BLACK   0x01

◆ BLUE_ON_WHITE

#define BLUE_ON_WHITE   0x1f

◆ BROWN_ON_BLACK

#define BROWN_ON_BLACK   0x06

◆ CYAN_ON_BLACK

#define CYAN_ON_BLACK   0x03

◆ DGREY_ON_BLACK

#define DGREY_ON_BLACK   0x08

◆ GREEN_ON_BLACK

#define GREEN_ON_BLACK   0x02

◆ LBLUE_ON_BLACK

#define LBLUE_ON_BLACK   0x09

◆ LCYAN_ON_BLACK

#define LCYAN_ON_BLACK   0x0B

◆ LGREEN_ON_BLACK

#define LGREEN_ON_BLACK   0x0A

◆ LGREY_ON_BLACK

#define LGREY_ON_BLACK   0x07

◆ LMAGENTA_ON_BLACK

#define LMAGENTA_ON_BLACK   0x0D

◆ LRED_ON_BLACK

#define LRED_ON_BLACK   0x0C

◆ MAGENTA_ON_BLACK

#define MAGENTA_ON_BLACK   0x05

◆ MAX_COLS

#define MAX_COLS   80

◆ MAX_ROWS

#define MAX_ROWS   25

◆ RED_ON_BLACK

#define RED_ON_BLACK   0x04

◆ RED_ON_WHITE

#define RED_ON_WHITE   0xf4

◆ REG_SCREEN_CTRL

#define REG_SCREEN_CTRL   0x3d4

◆ REG_SCREEN_DATA

#define REG_SCREEN_DATA   0x3d5

◆ VIDEO_ADDRESS

#define VIDEO_ADDRESS   0xb8000

◆ WHITE_ON_BLACK

#define WHITE_ON_BLACK   0x0f

◆ WHITE_ON_BLUE

#define WHITE_ON_BLUE   0x1f

◆ WHITE_ON_DGREY

#define WHITE_ON_DGREY   0x8

◆ WHITE_ON_RED

#define WHITE_ON_RED   0x4f

◆ YELLOW_ON_BLACK

#define YELLOW_ON_BLACK   0x0E

Function Documentation

◆ clear_screen()

void clear_screen ( )

Стандартная очистка экрана

◆ get_cursor_offset()

int get_cursor_offset ( )

Получение оффсета курсора

Returns
int

◆ halted_cpu_screen_clear()

void halted_cpu_screen_clear ( )

Очистка и заполнение экраном halted cpu.

◆ kprint()

void kprint ( char *  message)

Вывод текста

Parameters
messageсообщение

◆ kprint_at()

void kprint_at ( char *  message,
int  col,
int  row,
int  color 
)

Вывод текста в определенном месте

Parameters
messageсообщение
colколонка
rowряд
colorцвет

Вывод сообщения в специфической локации Если col, row отрицательные, то используем текущий оффсет

◆ kprint_backspace()

void kprint_backspace ( )

Вывод символа backspace.

◆ kprint_colored()

void kprint_colored ( char *  message,
int  color 
)

Цветной вывод

Parameters
messageсообщение
colorцвет

◆ kprintln()

void kprintln ( char *  message)

Вывод текста с новой строкой

Parameters
messageсообщение

◆ kprintln_colored()

void kprintln_colored ( char *  message,
int  color 
)

Цветной вывод с новой строкой

Parameters
messageсообщение
colorцвет

◆ panic_red_screen()

void panic_red_screen ( char *  title,
char *  description 
)

Красный экран для паники ядра

Parameters
titleзаголовок
descriptionописание