summaryrefslogtreecommitdiff
path: root/kernel/src/libk/stdio.c
diff options
context:
space:
mode:
authorAleksa Vuckovic <aleksav013@gmail.com>2022-08-12 15:36:57 +0200
committerAleksa Vuckovic <aleksav013@gmail.com>2022-08-12 15:48:26 +0200
commit5c1c4eb0a4084b666342e6f8eb348eb80be6214b (patch)
tree18fd33482c2cdd66eb6be18ac25ad8bde62012ad /kernel/src/libk/stdio.c
parent97c5f8569a845b6e9b3f75460b3b90a2de9b72a8 (diff)
memcpy, memset; small fixes
Diffstat (limited to 'kernel/src/libk/stdio.c')
-rw-r--r--kernel/src/libk/stdio.c32
1 files changed, 16 insertions, 16 deletions
diff --git a/kernel/src/libk/stdio.c b/kernel/src/libk/stdio.c
index be75b73..da5d839 100644
--- a/kernel/src/libk/stdio.c
+++ b/kernel/src/libk/stdio.c
@@ -5,32 +5,32 @@
#include <libk/string.h>
#include <graphics.h>
-int32_t x;
-int32_t y;
+uint32_t curr_x;
+uint32_t curr_y;
inline void print_char(char c)
{
+ if (curr_x * 8 >= main_fb.width) {
+ curr_x = 0;
+ curr_y++;
+ }
+ if (curr_y * 16 >= main_fb.height) {
+ curr_x = 0;
+ curr_y = 0;
+ }
if (c == '\n') {
- x = 0;
- y++;
+ curr_x = 0;
+ curr_y++;
return;
}
if (c == '\b') {
- if (x != 0) {
- x--;
+ if (curr_x != 0) {
+ curr_x--;
}
return;
}
- if (x * 8 >= (int32_t)main_fb.width) {
- x = 0;
- y++;
- }
- if (y * 16 >= (int32_t)main_fb.height) {
- x = 0;
- y = 0;
- }
- fb_draw_character(main_fb, c, x * 8, y * 16, WHITE, BLACK);
- x++;
+ fb_draw_character(main_fb, c, (int32_t)curr_x * 8, (int32_t)curr_y * 16, WHITE, BLACK);
+ curr_x++;
}
inline void print_string(const char* s)