2018-12-20 18:03:39 +01:00
|
|
|
//----------------------------------------------------------------------------//
|
|
|
|
// GNU GPL OS/K //
|
|
|
|
// //
|
|
|
|
// Authors: spectral` //
|
|
|
|
// NeoX //
|
|
|
|
// //
|
|
|
|
// Desc: Kernel entry point //
|
|
|
|
//----------------------------------------------------------------------------//
|
|
|
|
|
2019-01-14 14:31:49 +01:00
|
|
|
#include <kaleid.h>
|
2018-12-20 18:03:39 +01:00
|
|
|
|
2018-12-25 19:09:58 +01:00
|
|
|
//
|
2019-01-14 14:31:49 +01:00
|
|
|
// Entry point of kaleid-kernel.elf
|
2018-12-25 19:09:58 +01:00
|
|
|
//
|
2019-01-14 14:31:49 +01:00
|
|
|
noreturn void StartKern(void)
|
2018-12-29 23:51:00 +01:00
|
|
|
{
|
2018-12-30 20:13:56 +01:00
|
|
|
// we're not ready to deal with interrupts
|
2019-01-14 14:31:49 +01:00
|
|
|
DisableIRQs();
|
|
|
|
|
2018-12-30 20:13:56 +01:00
|
|
|
// booting!
|
2019-01-01 13:09:57 +01:00
|
|
|
SetKernState(KSTATE_INIT);
|
2018-12-29 23:51:00 +01:00
|
|
|
|
2018-12-30 20:13:56 +01:00
|
|
|
// kernel terminals
|
2019-01-01 13:09:57 +01:00
|
|
|
InitTerms();
|
2019-01-14 14:31:49 +01:00
|
|
|
|
2018-12-30 20:13:56 +01:00
|
|
|
// we're out
|
2019-01-01 13:09:57 +01:00
|
|
|
StartPanic("Goodbye World :(");
|
2018-12-20 18:03:39 +01:00
|
|
|
}
|
|
|
|
|