diff options
| -rw-r--r-- | arch/x86_64/include/arch/kernel/main.hpp | 2 | ||||
| -rw-r--r-- | arch/x86_64/src/kernel/main.cpp | 7 | ||||
| -rw-r--r-- | src/kernel/main.cpp | 5 |
3 files changed, 11 insertions, 3 deletions
diff --git a/arch/x86_64/include/arch/kernel/main.hpp b/arch/x86_64/include/arch/kernel/main.hpp index 6961594..57b9b58 100644 --- a/arch/x86_64/include/arch/kernel/main.hpp +++ b/arch/x86_64/include/arch/kernel/main.hpp @@ -5,7 +5,7 @@ namespace teachos::arch::kernel { - auto main() -> void; + auto main(size_t multiboot_information_address) -> void; } #endif
\ No newline at end of file diff --git a/arch/x86_64/src/kernel/main.cpp b/arch/x86_64/src/kernel/main.cpp index 0e90264..01c14a5 100644 --- a/arch/x86_64/src/kernel/main.cpp +++ b/arch/x86_64/src/kernel/main.cpp @@ -2,14 +2,19 @@ #include "arch/video/vga/text.hpp" +#include "stdio.h" + namespace teachos::arch::kernel { - auto main() -> void + auto main(size_t multiboot_information_address) -> void { using namespace video::vga; text::clear(); text::cursor(false); text::write("TeachOS is starting up...", text::common_attributes::green_on_black); + char address[32U] = {}; + snprintf(address, sizeof(address), "Multiboot address: (%lu)", multiboot_information_address); + text::write(address, text::common_attributes::green_on_black); } } // namespace teachos::arch::kernel diff --git a/src/kernel/main.cpp b/src/kernel/main.cpp index 07a9955..a1ef159 100644 --- a/src/kernel/main.cpp +++ b/src/kernel/main.cpp @@ -1,3 +1,6 @@ #include "arch/kernel/main.hpp" -extern "C" auto kernel_main() -> void { teachos::arch::kernel::main(); }
\ No newline at end of file +extern "C" auto kernel_main(size_t multiboot_information_address) -> void +{ + teachos::arch::kernel::main(multiboot_information_address); +} |
