2017-11-04 07:45:48 -04:00
|
|
|
#include "console.h"
|
2017-11-03 22:32:23 -04:00
|
|
|
#include "logger.h"
|
|
|
|
#include "protected.h"
|
2017-11-04 01:31:37 -04:00
|
|
|
#include "paging.h"
|
2017-11-03 22:32:23 -04:00
|
|
|
#include "timer.h"
|
|
|
|
|
2017-11-04 06:38:28 -04:00
|
|
|
#include <kernelmq/info.h>
|
|
|
|
#include <kernelmq/stdlib.h>
|
|
|
|
|
|
|
|
static struct KernelMQ_Info kinfo;
|
|
|
|
|
2017-11-03 22:32:23 -04:00
|
|
|
static void on_timer();
|
|
|
|
|
2017-11-04 06:38:28 -04:00
|
|
|
void main(const struct KernelMQ_Info *const kinfo_ptr)
|
2017-11-03 22:32:23 -04:00
|
|
|
{
|
2017-11-04 07:45:48 -04:00
|
|
|
console_initialize();
|
|
|
|
|
2017-11-04 06:38:28 -04:00
|
|
|
kmemset(&kinfo, 0, sizeof(struct KernelMQ_Info));
|
|
|
|
|
|
|
|
if (!kinfo_ptr) {
|
|
|
|
logger_fail("No kernel information. Halt.");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
kinfo = *kinfo_ptr;
|
|
|
|
|
2017-11-03 22:32:23 -04:00
|
|
|
protected_initialize();
|
|
|
|
|
2017-11-04 01:31:37 -04:00
|
|
|
// paging_initialize();
|
|
|
|
|
2017-11-03 22:32:23 -04:00
|
|
|
timer_register_handler(on_timer);
|
|
|
|
timer_initialize(50);
|
|
|
|
|
|
|
|
logger_warn("Nothing to do.");
|
|
|
|
logger_fail("Halt.");
|
|
|
|
}
|
|
|
|
|
|
|
|
void on_timer()
|
|
|
|
{
|
|
|
|
logger_info("Timer tick.");
|
|
|
|
}
|