mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-20 01:08:15 +01:00
[bootloader] Added userland header, rewrote lernel header
This commit is contained in:
29
bootloader/kernel_header.cpp
Normal file
29
bootloader/kernel_header.cpp
Normal file
@@ -0,0 +1,29 @@
|
||||
#include <bootloader/kernel_header.h>
|
||||
|
||||
extern "C" void jump_to_firmware(const uint32_t* stackPtr, const void(*startPtr)(void));
|
||||
|
||||
namespace Bootloader {
|
||||
|
||||
|
||||
const KernelHeader* s_kernelHeaderA = reinterpret_cast<const struct KernelHeader*>(0x90000000);
|
||||
const KernelHeader* s_kernelHeaderB = reinterpret_cast<const struct KernelHeader*>(0x90400000);
|
||||
|
||||
const char * KernelHeader::version() const {
|
||||
return m_version;
|
||||
}
|
||||
|
||||
const char * KernelHeader::patchLevel() const {
|
||||
return m_patchLevel;
|
||||
}
|
||||
|
||||
const bool KernelHeader::isValid() const {
|
||||
return m_header == Magic && m_footer == Magic;
|
||||
}
|
||||
|
||||
[[ noreturn ]] void KernelHeader::boot() const {
|
||||
jump_to_firmware(m_stackPointer, m_startPointer);
|
||||
for(;;);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user