35 lines
507 B
C
35 lines
507 B
C
void kprintstr(char* str);
|
|
void khang();
|
|
|
|
/* HACK. kmain has to come first because of flat binary */
|
|
|
|
void kmain(void)
|
|
{
|
|
char* k_msg = "Hello world from 32-bit C kernel!";
|
|
kprintstr(k_msg);
|
|
khang();
|
|
}
|
|
|
|
void kprintstr(char* str)
|
|
{
|
|
/* last line of 80x25 */
|
|
char* ch = (char*)0xb8000 + 2 * 80 * 22;
|
|
while(*str)
|
|
{
|
|
*ch = *str;
|
|
ch++;
|
|
*ch = 0xf; /* white character */
|
|
ch++;
|
|
str++;
|
|
}
|
|
return;
|
|
}
|
|
|
|
void khang()
|
|
{
|
|
while(1)
|
|
{
|
|
|
|
}
|
|
}
|