diff options
| author | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-08-01 18:25:14 +0200 |
|---|---|---|
| committer | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-08-01 18:25:14 +0200 |
| commit | 86e291120d124dec7244202b1766901a59dfb2e6 (patch) | |
| tree | 1aa92d3b8a05216941986cf2724ff20ad01b3884 /Boot/Sources/HEL | |
| parent | f9579f444b1791d2b73d4d841569728fb203cb29 (diff) | |
[IMP] newoskrnl: Add symbol for cred_construct_token, reworked
ProcessHeap, new SCI.hxx for SCI and SCM.
[IMP] newosldr: Loads the kernel correctly and can launch it, improved
erorr handling.
[META] newoskrnl, newosldr: Improved code and refactors.
Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'Boot/Sources/HEL')
| -rw-r--r-- | Boot/Sources/HEL/AMD64/BootJump.S | 6 | ||||
| -rw-r--r-- | Boot/Sources/HEL/AMD64/BootMain.cxx | 11 |
2 files changed, 5 insertions, 12 deletions
diff --git a/Boot/Sources/HEL/AMD64/BootJump.S b/Boot/Sources/HEL/AMD64/BootJump.S index fc7b3c68..7c2fcbc4 100644 --- a/Boot/Sources/HEL/AMD64/BootJump.S +++ b/Boot/Sources/HEL/AMD64/BootJump.S @@ -8,11 +8,13 @@ @brief this function setups a stack and then jumps to a function */ rt_jump_to_address: - mov r8, rsp + mov rsp, r8 push rax push rdx - jmp rcx + mov rbx, rcx + mov rcx, rdx + jmp rbx pop rdx pop rax diff --git a/Boot/Sources/HEL/AMD64/BootMain.cxx b/Boot/Sources/HEL/AMD64/BootMain.cxx index 5e0c8b05..56ef0457 100644 --- a/Boot/Sources/HEL/AMD64/BootMain.cxx +++ b/Boot/Sources/HEL/AMD64/BootMain.cxx @@ -243,16 +243,7 @@ EFI_EXTERN_C EFI_API Int Main(EfiHandlePtr ImageHandle, loader->SetName("\"newoskrnl.exe\" (64-bit MP)"); } - if (!loader->IsValid()) - { - writer.Write("newosldr: Invalid kernel image!\r"); - - EFI::Stop(); - - CANT_REACH(); - } - - writer.Write("newosldr: ").Write(loader->GetName()).Write("\r"); + writer.Write("newosldr: Running: ").Write(loader->GetName()).Write("\r"); CopyMem(handoverHdrPtr->f_CommandLine[0], "/SMP", StrLen("/SMP")); |
