blob: 59fa45a3493f8dfca4fff760a7fabad449dc18a4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
#include <Core/common.wtf.h>
#include <Core/multiboot.wtf.h>
#include <Devices/Display/VGATextOutput.class.h>
#include <DisplayManager/Disp.ns.h>
#include <Ressources/logo.cd>
extern u32int end; //Placement address
extern "C" void kmain(multiboot_info_t* mbd, u32int magic);
void kmain(multiboot_info_t* mbd, u32int magic) {
DEBUG("Entering kmain.");
VGATextOutput vgaout;
Disp::setDisplay(&vgaout);
for (int i = 0; i < melonLogoLines; i++) {
int startCol = (Disp::textCols() / 2) - (melonLogoCols / 2);
for (int j = 0; j < melonLogoCols; j++) {
Disp::putChar(i + 2, j + startCol, melonLogo[i][j], 0x07);
}
}
if (magic != MULTIBOOT_BOOTLOADER_MAGIC) {
PANIC("Error with multiboot header.");
}
while(1);
}
|