44 lines
903 B
C
44 lines
903 B
C
|
#ifndef PRINT_H
|
||
|
#define PRINT_H
|
||
|
#define REG_SCREEN_CTRL 0x3d4
|
||
|
#define REG_SCREEN_DATA 0x3d5
|
||
|
|
||
|
enum {
|
||
|
PRINT_COLOR_BLACK = 0,
|
||
|
PRINT_COLOR_BLUE = 1,
|
||
|
PRINT_COLOR_GREEN = 2,
|
||
|
PRINT_COLOR_CYAN = 3,
|
||
|
PRINT_COLOR_RED = 4,
|
||
|
PRINT_COLOR_MAGENTA = 5,
|
||
|
PRINT_COLOR_BROWN = 6,
|
||
|
PRINT_COLOR_LIGHT_GRAY = 7,
|
||
|
PRINT_COLOR_DARK_GRAY = 8,
|
||
|
PRINT_COLOR_LIGHT_BLUE = 9,
|
||
|
PRINT_COLOR_LIGHT_GREEN = 10,
|
||
|
PRINT_COLOR_LIGHT_CYAN = 11,
|
||
|
PRINT_COLOR_LIGHT_RED = 12,
|
||
|
PRINT_COLOR_PINK = 13,
|
||
|
PRINT_COLOR_YELLOW = 14,
|
||
|
PRINT_COLOR_WHITE = 15,
|
||
|
};
|
||
|
|
||
|
const static int NUM_COLS = 80;
|
||
|
const static int NUM_ROWS = 25;
|
||
|
|
||
|
struct Char {
|
||
|
char character;
|
||
|
char color;
|
||
|
};
|
||
|
|
||
|
void clear_row(int row);
|
||
|
void clear_all();
|
||
|
|
||
|
void print_newline();
|
||
|
void print_char(char character);
|
||
|
void print_set_color(char foreground, char background);
|
||
|
void print_str(char* str);
|
||
|
|
||
|
void set_cursor_pos(int col, int row);
|
||
|
|
||
|
void kernel_msg_ok(char* msg);
|
||
|
#endif
|