From 0a2e8f71545c44ea36600417cfe46e53c2dd31e8 Mon Sep 17 00:00:00 2001 From: Alex Date: Tue, 20 Dec 2022 00:47:46 +0200 Subject: [PATCH] Updated bitmap command --- Architecture/amd64/cpu/InterruptDescriptorTable.cpp | 2 +- Core/Crash/CrashHandler.cpp | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Architecture/amd64/cpu/InterruptDescriptorTable.cpp b/Architecture/amd64/cpu/InterruptDescriptorTable.cpp index e97b44e..794b96e 100644 --- a/Architecture/amd64/cpu/InterruptDescriptorTable.cpp +++ b/Architecture/amd64/cpu/InterruptDescriptorTable.cpp @@ -94,7 +94,7 @@ namespace InterruptDescriptorTable // "swapgs\n" // ".skip_swap_check_2:\n" - "iretq"); // pop CS RIP RFLAGS SS ESP + "iretq"); // pop CS RIP RFLAGS SS RSP } extern "C" void WarnSwapgs() { warn("swapgs"); } diff --git a/Core/Crash/CrashHandler.cpp b/Core/Crash/CrashHandler.cpp index 854b01b..1b13f73 100644 --- a/Core/Crash/CrashHandler.cpp +++ b/Core/Crash/CrashHandler.cpp @@ -427,7 +427,7 @@ namespace CrashHandler { Bitmap bm = KernelAllocator.GetPageBitmap(); - EHPrint("\n\eFAFAFA%08ld: ", 0); + EHPrint("\n\eFAFAFA[0%%] %08ld: ", 0); for (uint64_t i = 0; i < bm.Size; i++) { if (bm.Get(i)) @@ -436,11 +436,12 @@ namespace CrashHandler EHPrint("\e00FF000"); if (i % 128 == 127) { - EHPrint("\n\eFAFAFA%08ld: ", i); + uint64_t Percentage = (i * 100) / bm.Size; + EHPrint("\n\eFAFAFA[%03ld%%] %08ld: ", Percentage, i); Display->SetBuffer(SBIdx); } } - EHPrint("\n\e22AA44--- END OF BITMAP ---\nBitmap size: %ld\n", bm.Size); + EHPrint("\n\e22AA44--- END OF BITMAP ---\nBitmap size: %ld\n\n.", bm.Size); Display->SetBuffer(SBIdx); } else if (strcmp(Input, "mem") == 0)