Commit 0da65e79 by malcolm

Added more terminal manipulation functions

parent 291aa631
Showing with 17 additions and 0 deletions
...@@ -107,3 +107,18 @@ void terminal_writestring(const char* data) ...@@ -107,3 +107,18 @@ void terminal_writestring(const char* data)
terminal_putchar(data[i]); terminal_putchar(data[i]);
} }
} }
void terminal_movecursor(size_t x, size_t y)
{
if(x>=VGA_WIDTH || y>= VGA_HEIGHT) return;
terminal_column=x;
terminal_row=y;
update_csr();
}
void terminal_adjustcursor(int x, int y)
{
terminal_column+=x;
terminal_row+=y;
if(terminal_column>VGA_WIDTH) terminal_column=VGA_WIDTH;
if(terminal_row>VGA_HEIGHT) terminal_row=VGA_HEIGHT;
update_csr();
}
...@@ -36,3 +36,5 @@ void terminal_setcolor(uint8_t color); ...@@ -36,3 +36,5 @@ void terminal_setcolor(uint8_t color);
void terminal_putentryat(char c, uint8_t color, size_t x, size_t y); void terminal_putentryat(char c, uint8_t color, size_t x, size_t y);
void terminal_putchar(char c); void terminal_putchar(char c);
void terminal_writestring(const char* data); void terminal_writestring(const char* data);
void terminal_movecursor(size_t x, size_t y);
void terminal_adjustcursor(int x, int y);
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment