16 lines
369 B
C++
16 lines
369 B
C++
|
#include "memory/MemoryManager.h"
|
||
|
#include "sys/Syscall.h"
|
||
|
#include "video/TextConsole.h"
|
||
|
|
||
|
Result<u64> sys_console_write(Registers*, SyscallArgs args)
|
||
|
{
|
||
|
char* ptr = (char*)args[0];
|
||
|
usize size = (usize)args[1];
|
||
|
|
||
|
if (!MemoryManager::validate_user_read(ptr, size)) return err(EFAULT);
|
||
|
|
||
|
while (size--) { TextConsole::putchar(*ptr++); }
|
||
|
|
||
|
return { 0 };
|
||
|
}
|