From 5c1c4eb0a4084b666342e6f8eb348eb80be6214b Mon Sep 17 00:00:00 2001 From: Aleksa Vuckovic Date: Fri, 12 Aug 2022 15:36:57 +0200 Subject: memcpy, memset; small fixes --- kernel/include/graphics.h | 2 +- kernel/include/heap.h | 3 ++- kernel/include/keyboard.h | 2 -- kernel/include/libk/math.h | 2 ++ kernel/include/libk/stdio.h | 3 +++ kernel/include/libk/string.h | 3 +++ 6 files changed, 11 insertions(+), 4 deletions(-) (limited to 'kernel/include') diff --git a/kernel/include/graphics.h b/kernel/include/graphics.h index 6876d3a..e974781 100644 --- a/kernel/include/graphics.h +++ b/kernel/include/graphics.h @@ -23,7 +23,7 @@ extern fb_t main_fb; #define WHITE 0x00ffffff #define BLACK 0x00000000 -uint64_t* pixel_offset(fb_t fb, int32_t x, int32_t y); +uint32_t* pixel_offset(fb_t fb, uint32_t x, uint32_t y); void fb_draw_pixel(fb_t fb, int32_t x, int32_t y, 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); void fb_draw_line_high(fb_t fb, int32_t x0, int32_t y0, int32_t x1, int32_t y1, uint32_t col); diff --git a/kernel/include/heap.h b/kernel/include/heap.h index 5997b7a..88a9ad0 100644 --- a/kernel/include/heap.h +++ b/kernel/include/heap.h @@ -3,7 +3,8 @@ #include -#define HEAP_START_ADDR 0x00400000 +#define HEAP_VMEM_ADDR 0xc0400000 +#define HEAP_PMEM_ADDR 0x00400000 #define HEAP_SIZE 0x01000000 #define HEAP_BLOCK_SIZE 0x00000010 diff --git a/kernel/include/keyboard.h b/kernel/include/keyboard.h index 6d395f3..e8dc774 100644 --- a/kernel/include/keyboard.h +++ b/kernel/include/keyboard.h @@ -6,8 +6,6 @@ #define KEYBOARD_DATA_PORT 0x60 #define KEYBOARD_STATUS_PORT 0x64 -uint64_t stoi(const char *s); -void itos(uint64_t num, char* s); void keyboard_handler(void); #endif diff --git a/kernel/include/libk/math.h b/kernel/include/libk/math.h index 27fee80..ec3363a 100644 --- a/kernel/include/libk/math.h +++ b/kernel/include/libk/math.h @@ -3,6 +3,8 @@ #include +#define min(a,b) (a > b ? b : a) +#define max(a,b) (a > b ? a : b) #define upper_div(a,b) ((a / b) * b < a ? (a / b) + 1 : (a / b)) int64_t abs(int64_t val); diff --git a/kernel/include/libk/stdio.h b/kernel/include/libk/stdio.h index 6799f11..99064f9 100644 --- a/kernel/include/libk/stdio.h +++ b/kernel/include/libk/stdio.h @@ -3,6 +3,9 @@ #include +extern uint32_t curr_x; +extern uint32_t curr_y; + void printf(const char *s, ...); #endif diff --git a/kernel/include/libk/string.h b/kernel/include/libk/string.h index 9fe8448..fd25cac 100644 --- a/kernel/include/libk/string.h +++ b/kernel/include/libk/string.h @@ -8,5 +8,8 @@ uint64_t stoi(const char *s); void itos(uint64_t num, char* s); void itoh(uint64_t num, char* s); void strrev(char *s); +void memcpy(const void* destptr, const void* srcptr, size_t n); +void memset(const void* destptr, uint8_t value, size_t n); +int32_t memcmp(const void* aptr, const void* bptr); #endif -- cgit v1.2.3