From 81027667166d9624ee12f45f011426678d1bbbf4 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Thu, 29 May 2025 17:19:57 +0200 Subject: feat: Improve libSystem's architecture and implementation. fix: Fix NeKit's Ref, and ErrorOr classes. fix: Fix userland tools. next: - Finish the latest tickets and then release nekernel 0.0.3 Signed-off-by: Amlal El Mahrouss --- dev/libSystem/src/System.cc | 94 --------------------------------------------- 1 file changed, 94 deletions(-) delete mode 100644 dev/libSystem/src/System.cc (limited to 'dev/libSystem/src/System.cc') diff --git a/dev/libSystem/src/System.cc b/dev/libSystem/src/System.cc deleted file mode 100644 index 1c28303d..00000000 --- a/dev/libSystem/src/System.cc +++ /dev/null @@ -1,94 +0,0 @@ -/* ------------------------------------------- - - Copyright (C) 2024-2025, Amlal El Mahrouss, all rights reserved. - -------------------------------------------- */ - -#include -#include - -/// @file SystemCalls.cc -/// @brief Source file for the memory functions/syscalls for libSystem.sys - -IMPORT_C VoidPtr MmCopyMemory(_Input VoidPtr dest, _Input VoidPtr src, _Input SizeT len) { - if (!len || !dest || !src) { - return nullptr; - } - - for (SizeT i = 0; i < len; i++) { - ((Char*) dest)[i] = ((Char*) src)[i]; - } - - return dest; -} - -IMPORT_C SInt64 MmStrLen(const Char* in) { - if (!in) return 0; - - SizeT len{0}; - - do { - ++len; - } while (in[len] != '\0'); - - return len; -} - -IMPORT_C VoidPtr MmFillMemory(_Input VoidPtr dest, _Input SizeT len, _Input UInt8 value) { - if (!len || !dest) { - return nullptr; - } - - for (SizeT i = 0; i < len; i++) { - ((Char*) dest)[i] = value; - } - - return dest; -} - -//-----------------------------------------------------------------------------------------------------------// -/// @brief Systems Calls implementation. -/// @internal -//-----------------------------------------------------------------------------------------------------------// - -IMPORT_C Ref IoOpenFile(_Input const Char* path, _Input const Char* drv_letter) { - return sci_syscall_arg_3(1, reinterpret_cast(const_cast(path)), - reinterpret_cast(const_cast(drv_letter))); -} - -IMPORT_C Void IoCloseFile(_Input Ref desc) { - sci_syscall_arg_2(2, desc); -} - -IMPORT_C UInt64 IoSeekFile(_Input Ref desc, _Input UInt64 off) { - auto ret = (volatile UInt64*) sci_syscall_arg_3(3, reinterpret_cast(desc), - reinterpret_cast(&off)); - - MUST_PASS((*ret) != ~0UL); - return *ret; -} - -IMPORT_C UInt64 IoTellFile(_Input Ref desc) { - auto ret = (volatile UInt64*) sci_syscall_arg_2(4, reinterpret_cast(desc)); - return *ret; -} - -IMPORT_C SInt32 PrintOut(_Input IORef desc, const char* fmt, ...) { - va_list args; - - va_start(args, fmt); - - auto ret = (volatile UInt64*) sci_syscall_arg_4( - 5, reinterpret_cast(desc), reinterpret_cast(const_cast(fmt)), args); - - va_end(args); - - return *ret; -} - -IMPORT_C Void _rtl_assert(Bool expr, const Char* origin) { - if (!expr) { - PrintOut(nullptr, "Assertion failed: %s\r", origin); - PrintOut(nullptr, "Origin: %s\r", origin); - } -} -- cgit v1.2.3