From f3d931aa7cfaf96baef8383b59a8938779541ee7 Mon Sep 17 00:00:00 2001 From: Amlal EL Mahrouss Date: Thu, 15 Aug 2024 18:35:34 +0200 Subject: [IMP] Moved source code into dev/ folder. Signed-off-by: Amlal EL Mahrouss --- dev/Boot/Modules/.keep | 0 dev/Boot/Modules/BootScr/.hgkeep | 0 dev/Boot/Modules/BootScr/Module.cxx | 19 +++++++++++++++++++ dev/Boot/Modules/BootScr/compile_flags.txt | 8 ++++++++ dev/Boot/Modules/NetBoot/.hgkeep | 0 dev/Boot/Modules/NetBoot/Module.cxx | 25 +++++++++++++++++++++++++ dev/Boot/Modules/NetBoot/NetBoot.hxx | 26 ++++++++++++++++++++++++++ dev/Boot/Modules/NetBoot/compile_flags.txt | 8 ++++++++ 8 files changed, 86 insertions(+) create mode 100644 dev/Boot/Modules/.keep create mode 100644 dev/Boot/Modules/BootScr/.hgkeep create mode 100644 dev/Boot/Modules/BootScr/Module.cxx create mode 100644 dev/Boot/Modules/BootScr/compile_flags.txt create mode 100644 dev/Boot/Modules/NetBoot/.hgkeep create mode 100644 dev/Boot/Modules/NetBoot/Module.cxx create mode 100644 dev/Boot/Modules/NetBoot/NetBoot.hxx create mode 100644 dev/Boot/Modules/NetBoot/compile_flags.txt (limited to 'dev/Boot/Modules') diff --git a/dev/Boot/Modules/.keep b/dev/Boot/Modules/.keep new file mode 100644 index 00000000..e69de29b diff --git a/dev/Boot/Modules/BootScr/.hgkeep b/dev/Boot/Modules/BootScr/.hgkeep new file mode 100644 index 00000000..e69de29b diff --git a/dev/Boot/Modules/BootScr/Module.cxx b/dev/Boot/Modules/BootScr/Module.cxx new file mode 100644 index 00000000..11bbb6c0 --- /dev/null +++ b/dev/Boot/Modules/BootScr/Module.cxx @@ -0,0 +1,19 @@ +/* + * ======================================================== + * + * NetBoot + * Copyright ZKA Technologies., all rights reserved. + * + * ======================================================== + */ + +#include + +EXTERN EfiSystemTable* ST; + +EXTERN_C Int32 ModuleMain(Void) +{ + ST->ConOut->ClearScreen(ST->ConOut); + + return kEfiOk; +} diff --git a/dev/Boot/Modules/BootScr/compile_flags.txt b/dev/Boot/Modules/BootScr/compile_flags.txt new file mode 100644 index 00000000..f9ca281f --- /dev/null +++ b/dev/Boot/Modules/BootScr/compile_flags.txt @@ -0,0 +1,8 @@ +-std=c++20 +-I../ +-I../../ +-I../../Kernel +-D__NEWOS_AMD64__ +-std=c++20 +-D__x86_64__ +-D__NEWOS_OTA__ diff --git a/dev/Boot/Modules/NetBoot/.hgkeep b/dev/Boot/Modules/NetBoot/.hgkeep new file mode 100644 index 00000000..e69de29b diff --git a/dev/Boot/Modules/NetBoot/Module.cxx b/dev/Boot/Modules/NetBoot/Module.cxx new file mode 100644 index 00000000..9bc65eda --- /dev/null +++ b/dev/Boot/Modules/NetBoot/Module.cxx @@ -0,0 +1,25 @@ +/* + * ======================================================== + * + * NetBoot + * Copyright ZKA Technologies., all rights reserved. + * + * ======================================================== + */ + +#include +#include + +EXTERN EfiSystemTable* ST; + +EXTERN_C Int32 ModuleMain(Void) +{ + ST->ConOut->ClearScreen(ST->ConOut); + + /// @todo + /// - Find a network drive called "\.\newoskrnl.dll" with fork 'For-NewOSLdr' in the network path. (NewFS formatted disk as well!) + /// - Download our image + /// - Boot from it. + + return kEfiOk; +} diff --git a/dev/Boot/Modules/NetBoot/NetBoot.hxx b/dev/Boot/Modules/NetBoot/NetBoot.hxx new file mode 100644 index 00000000..42dababa --- /dev/null +++ b/dev/Boot/Modules/NetBoot/NetBoot.hxx @@ -0,0 +1,26 @@ +/* + * ======================================================== + * + * NetBoot + * Copyright ZKA Technologies., all rights reserved. + * + * ======================================================== + */ + +#pragma once + +#include + +/// @brief the internet header is used to download updates OTA. +typedef struct NetBootInternetHeader +{ + Kernel::Char NB1; /// magic char 1 'N' + Kernel::Char NB2; /// magic char 2 'E' + Kernel::Char NB3; /// magic char 3 'T' + Kernel::Char NB4; /// magic char 4 'B' + + Kernel::Char PatchName[255]; /// example: ColdChoco + Kernel::Int32 PatchLength; /// the patch length. + Kernel::Char PatchTarget[255]; /// the target file. + Kernel::Boolean ImpliesROM; /// does it imply an EEPROM reprogram? +} NetBootInternetHeader; diff --git a/dev/Boot/Modules/NetBoot/compile_flags.txt b/dev/Boot/Modules/NetBoot/compile_flags.txt new file mode 100644 index 00000000..f9ca281f --- /dev/null +++ b/dev/Boot/Modules/NetBoot/compile_flags.txt @@ -0,0 +1,8 @@ +-std=c++20 +-I../ +-I../../ +-I../../Kernel +-D__NEWOS_AMD64__ +-std=c++20 +-D__x86_64__ +-D__NEWOS_OTA__ -- cgit v1.2.3