#include "types.h" #include "utils/mem.h" void kmemset(void* ptr, u8 byte, u32 size) { u8* char_ptr = (u8*)ptr; for (u32 i = 0; i < size; i++) char_ptr[i] = byte; } void kmemcpy(const void* src, void* dest, u32 size) { const u8* char_src = (u8*)src; u8* char_dest = (u8*)dest; for (u32 i = 0; i < size; i++) char_dest[i] = char_src[i]; } void kmemzero(void* ptr, u32 size) { kmemset(ptr, '\0', size); } void kmemmove(const void* src, void* dest, u32 size) { u8* d = (u8*)dest; const u8* s = (u8*)src; if (d < s) { for (u32 i = 0; i < size; i++) d[i] = s[i]; } else { for (u32 i = size; i > 0; i--) d[i-1] = s[i-1]; } }