|
PatchworkOS
|
#include <kernel/log/log_screen.h>#include <kernel/drivers/com.h>#include <kernel/log/glyphs.h>#include <kernel/sync/lock.h>#include <string.h>#include <sys/math.h>Go to the source code of this file.
Functions | |
| static log_screen_line_t * | log_screen_get_line (uint64_t y) |
| static void | log_screen_invalidate (const log_screen_pos_t *pos) |
| static void | log_screen_put (char chr) |
| static void | log_screen_flush (void) |
| void | log_screen_init (const boot_gop_t *bootGop) |
| Initialize the screen logging. | |
| static void | log_screen_scroll (void) |
| static void | log_screen_advance_cursor (char chr) |
| void | log_screen_clear (void) |
| Clear the screen. | |
| uint64_t | log_screen_get_width (void) |
| Get screen width in characters. | |
| uint64_t | log_screen_get_height (void) |
| Get screen height in characters. | |
| void | log_screen_write (const char *string, uint64_t length) |
| Write a string to the screen. | |
Variables | |
| static boot_gop_t | gop = {0} |
| static log_screen_pos_t | cursor = {0, 0} |
| static log_screen_t | screen = {0} |
| static lock_t | lock = LOCK_CREATE |
|
static |
Definition at line 138 of file log_screen.c.
References cursor, log_screen_t::height, log_screen_put(), log_screen_scroll(), screen, SCREEN_WRAP_INDENT, log_screen_t::width, log_screen_pos_t::x, and log_screen_pos_t::y.
Referenced by log_screen_write().
|
static |
Definition at line 65 of file log_screen.c.
References GLYPH_HEIGHT, GLYPH_WIDTH, gop, log_screen_t::invalidEnd, log_screen_t::invalidStart, log_screen_get_line(), memcpy(), log_screen_line_t::pixels, screen, SCREEN_LINE_STRIDE, boot_gop_t::stride, boot_gop_t::virtAddr, log_screen_pos_t::x, log_screen_pos_t::y, and y.
Referenced by log_screen_write().
|
static |
Definition at line 16 of file log_screen.c.
References log_screen_t::firstLineIndex, log_screen_t::height, log_screen_t::lines, screen, and y.
Referenced by log_screen_flush(), log_screen_put(), and log_screen_scroll().
|
static |
Definition at line 22 of file log_screen.c.
References log_screen_t::height, log_screen_t::invalidEnd, log_screen_t::invalidStart, MAX, MIN, screen, log_screen_t::width, log_screen_pos_t::x, and log_screen_pos_t::y.
Referenced by log_screen_put().
|
static |
Definition at line 42 of file log_screen.c.
References cache, cursor, glyph_cache_get(), GLYPH_HEIGHT, GLYPH_WIDTH, glyph_cache_t::glyphs, log_screen_line_t::length, log_screen_get_line(), log_screen_invalidate(), MAX, memcpy(), glyph_t::pixels, log_screen_line_t::pixels, SCREEN_LINE_STRIDE, log_screen_pos_t::x, log_screen_pos_t::y, and y.
Referenced by log_screen_advance_cursor(), and log_screen_write().
|
static |
Definition at line 98 of file log_screen.c.
References cursor, log_screen_t::firstLineIndex, GLYPH_HEIGHT, GLYPH_WIDTH, gop, log_screen_t::height, log_screen_t::invalidEnd, log_screen_t::invalidStart, log_screen_line_t::length, log_screen_get_line(), memcpy(), memset32(), log_screen_line_t::pixels, screen, SCREEN_LINE_STRIDE, boot_gop_t::stride, boot_gop_t::virtAddr, log_screen_pos_t::y, and y.
Referenced by log_screen_advance_cursor().
|
static |
Definition at line 11 of file log_screen.c.
Referenced by log_screen_advance_cursor(), log_screen_clear(), log_screen_init(), log_screen_put(), and log_screen_scroll().
|
static |
Definition at line 10 of file log_screen.c.
Referenced by log_screen_clear(), log_screen_flush(), log_screen_init(), and log_screen_scroll().
|
static |
Definition at line 14 of file log_screen.c.
Referenced by log_screen_clear(), and log_screen_write().
|
static |
Definition at line 12 of file log_screen.c.
Referenced by log_screen_advance_cursor(), log_screen_clear(), log_screen_flush(), log_screen_get_height(), log_screen_get_line(), log_screen_get_width(), log_screen_init(), log_screen_invalidate(), and log_screen_scroll().