summaryrefslogtreecommitdiffhomepage
path: root/dev/Boot/Mod/SysChk
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-12-28 05:03:47 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-12-28 05:06:33 +0100
commiteb5271c14e02aab956ab53f5e74290bca495e2ff (patch)
tree2fb4fd88baa4b67852ac8ae13a02cad274d4693c /dev/Boot/Mod/SysChk
parent46a2b68fa4d69df59b21afb04d5382293f005137 (diff)
See details of commit.
IMPL: Better Bootloader architecture. FIX: Remove overcomplicated FbMgr code. IMPL: Implement the SwapMgrDisk function to dump process data to disk. FIX: Fix the format system in Boot. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Boot/Mod/SysChk')
-rw-r--r--dev/Boot/Mod/SysChk/Module.cc27
-rw-r--r--dev/Boot/Mod/SysChk/build.json3
2 files changed, 8 insertions, 22 deletions
diff --git a/dev/Boot/Mod/SysChk/Module.cc b/dev/Boot/Mod/SysChk/Module.cc
index a48e524c..e51eabef 100644
--- a/dev/Boot/Mod/SysChk/Module.cc
+++ b/dev/Boot/Mod/SysChk/Module.cc
@@ -21,27 +21,12 @@
#include <BootKit/Thread.h>
#include <Mod/GfxMgr/FBMgr.h>
-EXTERN_C Int32 ModuleMain(Kernel::HEL::BootInfoHeader* Handover)
+EXTERN_C Int32 ModuleMain(Kernel::HEL::BootInfoHeader* handover)
{
- EfiSystemTable* system_table = (EfiSystemTable*)Handover->f_FirmwareCustomTables[1];
+ if (!handover)
+ return kEfiFail;
- EfiInputKey key{};
-
- system_table->ConIn->ReadKeyStroke(system_table->ConIn, &key);
-
- if (key.UnicodeChar == 'F' ||
- key.UnicodeChar == 'f')
- {
- UI::ui_draw_background();
-
- fb_init();
-
- FBDrawBitMapInRegion(zka_no_disk, ZKA_NO_DISK_HEIGHT, ZKA_NO_DISK_WIDTH, (kHandoverHeader->f_GOP.f_Width - ZKA_NO_DISK_WIDTH) / 2, (kHandoverHeader->f_GOP.f_Height - ZKA_NO_DISK_HEIGHT) / 2);
-
- fb_fini();
-
- return kEfiOk;
- }
-
- return kEfiFail;
+ Boot::BDiskFormatFactory<BootDeviceATA> partition_factory;
+
+ return !partition_factory.IsPartitionValid() ? kEfiOk : kEfiFail;
}
diff --git a/dev/Boot/Mod/SysChk/build.json b/dev/Boot/Mod/SysChk/build.json
index cd21e269..2c079889 100644
--- a/dev/Boot/Mod/SysChk/build.json
+++ b/dev/Boot/Mod/SysChk/build.json
@@ -2,7 +2,7 @@
"compiler_path": "x86_64-w64-mingw32-g++",
"compiler_std": "c++20",
"headers_path": ["../", "../../", "../../../Kernel", "../../../", "./"],
- "sources_path": ["*.cc", "*.S"],
+ "sources_path": ["*.cc", "*.S", "../../src/HEL/AMD64/*.cc", "../../src/HEL/AMD64/*.S", "../../src/*.cc"],
"output_name": "syschk.sys",
"compiler_flags": [
"-ffreestanding",
@@ -16,6 +16,7 @@
"cpp_macros": [
"__MINOSKRNL__",
"__ZBAOSLDR__",
+ "__BOOTLDR_STANDALONE__",
"__ZKA_AMD64__",
"kChkVersionHighest=0x0100",
"kChkVersionLowest=0x0100",