diff options
Diffstat (limited to 'kernel/src/misc')
| -rw-r--r-- | kernel/src/misc/graphics.c | 30 | ||||
| -rw-r--r-- | kernel/src/misc/stdbuff.c | 14 |
2 files changed, 24 insertions, 20 deletions
diff --git a/kernel/src/misc/graphics.c b/kernel/src/misc/graphics.c index 7ab67f3..f595146 100644 --- a/kernel/src/misc/graphics.c +++ b/kernel/src/misc/graphics.c @@ -1,6 +1,5 @@ #include <types.h> #include <graphics.h> - #include <multiboot2.h> #include <font.h> #include <libk/string.h> @@ -10,15 +9,17 @@ fb_t main_fb; void fb_draw_pixel(fb_t fb, int32_t x, int32_t y, uint32_t col) { - if (x < 0 || y < 0) return; - if (x >= (int32_t)fb.width || y >= (int32_t)fb.height) return; + if (x < 0 || y < 0) + return; + if (x >= (int32_t)fb.width || y >= (int32_t)fb.height) + return; uint32_t fb_offset = (uint32_t)y * fb.pitch + (uint32_t)x * fb.bpp / 8; - __volatile__ uint32_t* fb_buff = (uint32_t*)fb.addr; + __volatile__ uint32_t *fb_buff = (uint32_t *)fb.addr; fb_buff[fb_offset / 4] = col; } -void set_color(fb_t* fb, uint32_t char_col, uint32_t bg_col) +void set_color(fb_t *fb, uint32_t char_col, uint32_t bg_col) { fb->char_col = char_col; fb->bg_col = bg_col; @@ -37,7 +38,8 @@ void clear_screen(fb_t fb) /* https://en.wikipedia.org/wiki/Bresenham%27s_line_algorithm */ -void fb_draw_line_low(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, uint32_t col) +void fb_draw_line_low(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, + uint32_t col) { int32_t dx = x1 - x0; int32_t dy = y1 - y0; @@ -58,10 +60,10 @@ void fb_draw_line_low(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, u D = D + 2 * dy; } } - } -void fb_draw_line_high(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, uint32_t col) +void fb_draw_line_high(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, + uint32_t col) { int32_t dx = x1 - x0; int32_t dy = y1 - y0; @@ -84,7 +86,8 @@ void fb_draw_line_high(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, } } -void fb_draw_line(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, uint32_t col) +void fb_draw_line(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, + uint32_t col) { if (abs(y1 - y0) < abs(x1 - x0)) { if (x0 > x1) @@ -101,13 +104,12 @@ void fb_draw_line(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, uint3 void fb_draw_character(fb_t fb, char c, int32_t x, int32_t y) { - if (c < 0) return; + if (c < 0) + return; int32_t offset = 32 + c * 16; - for (int32_t i = 0 ; i < 16; i++) - { - for (int32_t j = 0 ; j < 8; j++) - { + for (int32_t i = 0; i < 16; i++) { + for (int32_t j = 0; j < 8; j++) { if (font[offset + i] & (1 << (7 - j))) { fb_draw_pixel(fb, x + j, y + i, fb.char_col); } else { diff --git a/kernel/src/misc/stdbuff.c b/kernel/src/misc/stdbuff.c index cca58d6..4362882 100644 --- a/kernel/src/misc/stdbuff.c +++ b/kernel/src/misc/stdbuff.c @@ -2,9 +2,9 @@ #include <heap.h> #include <stdbuff.h> -stdbuff* init_buff(uint32_t buff_size) +stdbuff *init_buff(uint32_t buff_size) { - stdbuff* buffer = kalloc(sizeof(stdbuff)); + stdbuff *buffer = kalloc(sizeof(stdbuff)); buffer->head = 0; buffer->tail = 0; buffer->size = buff_size; @@ -12,19 +12,21 @@ stdbuff* init_buff(uint32_t buff_size) return buffer; } -void read_buff(stdbuff* buffer, char* dest_ptr, size_t read_size) +void read_buff(stdbuff *buffer, char *dest_ptr, size_t read_size) { for (size_t i = 0; i < read_size; i++) { - memcpy(dest_ptr + i, buffer->data + ((buffer->tail + i) % buffer->size), 1); + memcpy(dest_ptr + i, + buffer->data + ((buffer->tail + i) % buffer->size), 1); } dest_ptr[read_size] = '\0'; buffer->tail = (buffer->tail + read_size) % buffer->size; } -void write_buff(stdbuff* buffer, const char* src_ptr, size_t write_size) +void write_buff(stdbuff *buffer, const char *src_ptr, size_t write_size) { for (size_t i = 0; i < write_size; i++) { - memcpy(buffer->data + ((buffer->head + i) % buffer->size), src_ptr + i, 1); + memcpy(buffer->data + ((buffer->head + i) % buffer->size), + src_ptr + i, 1); } buffer->head = (buffer->head + write_size) % buffer->size; } |
