Cleaning up and commenting
This commit is contained in:
@@ -54,17 +54,24 @@ _start:
|
||||
mov ds, eax
|
||||
mov es, eax
|
||||
|
||||
//; Jump to kernel address space
|
||||
movabs rax, offset upper_memory
|
||||
jmp rax
|
||||
|
||||
upper_memory:
|
||||
|
||||
//; Move stack pointer to kernel space
|
||||
mov rax, KERNEL_OFFSET
|
||||
add rsp, rax
|
||||
|
||||
//; Remove identity mapping
|
||||
mov rax, 0
|
||||
movabs [BootP4], rax
|
||||
|
||||
//; Jump to kmain()
|
||||
.extern kmain
|
||||
movabs rax, offset kmain
|
||||
jmp rax
|
||||
call rax
|
||||
|
||||
hlt
|
||||
jmp $
|
||||
|
||||
@@ -2,14 +2,14 @@
|
||||
|
||||
void clear_screen()
|
||||
{
|
||||
unsigned char *vidmem = (void *)(0xB8000 + KERNEL_OFFSET);
|
||||
unsigned char *vidmem = P2V(0xB8000);
|
||||
for(int i=0; i < 80*24*2; i++)
|
||||
*vidmem++ = 0;
|
||||
}
|
||||
|
||||
void print_string(char *str)
|
||||
{
|
||||
unsigned char *vidmem = (void *)(0xB8000 + KERNEL_OFFSET);
|
||||
unsigned char *vidmem = P2V(0xB8000);
|
||||
while(*str)
|
||||
{
|
||||
*vidmem++ = *str++;
|
||||
|
||||
Reference in New Issue
Block a user