Move main module to c++
This commit is contained in:
@@ -2,44 +2,16 @@
|
||||
#include <stdint.h>
|
||||
|
||||
#include "font.h"
|
||||
#include "kernel_data.h"
|
||||
#include "screen.h"
|
||||
|
||||
void do_the_set_registers();
|
||||
|
||||
#pragma pack(push, 1)
|
||||
struct popcorn_data {
|
||||
uint32_t magic;
|
||||
uint16_t version;
|
||||
uint16_t length;
|
||||
|
||||
uint32_t _reserverd0;
|
||||
uint32_t flags;
|
||||
|
||||
void *font;
|
||||
size_t font_length;
|
||||
|
||||
void *data;
|
||||
size_t data_length;
|
||||
|
||||
void *memory_map;
|
||||
void *runtime;
|
||||
|
||||
void *acpi_table;
|
||||
|
||||
void *frame_buffer;
|
||||
size_t frame_buffer_size;
|
||||
uint32_t hres;
|
||||
uint32_t vres;
|
||||
uint32_t rmask;
|
||||
uint32_t gmask;
|
||||
uint32_t bmask;
|
||||
uint32_t _reserved1;
|
||||
extern "C" {
|
||||
void do_the_set_registers(popcorn_data *header);
|
||||
void kernel_main(popcorn_data *header);
|
||||
}
|
||||
__attribute__((aligned(8)));
|
||||
#pragma pack(pop)
|
||||
|
||||
void
|
||||
kernel_main(struct popcorn_data *header)
|
||||
kernel_main(popcorn_data *header)
|
||||
{
|
||||
struct screen screen;
|
||||
struct font font;
|
||||
@@ -20,7 +20,7 @@ screen_init(
|
||||
uint32_t bmask,
|
||||
struct screen *s)
|
||||
{
|
||||
s->data = frame_buffer;
|
||||
s->data = static_cast<uint32_t *>(frame_buffer);
|
||||
s->hres = hres;
|
||||
s->vres = vres;
|
||||
s->rmask = rmask;
|
||||
Reference in New Issue
Block a user