Changing super-basic test function to just test() because of how small and bland it is
This commit is contained in:
parent
88fad3c56e
commit
d42d68e5a9
@ -24,12 +24,14 @@ void clear_buffer() {
|
||||
*fp = 0x00;
|
||||
}
|
||||
}
|
||||
void print(char* str) {
|
||||
for(unsigned i =0;i<strlen(str);i+=2) {
|
||||
|
||||
// TODO: move this to the stl with printf functionality
|
||||
void print_fb(char* str) {
|
||||
for(unsigned i =0;i<strlen(str);i++) {
|
||||
write_cell(i, str[i], Green, White);
|
||||
}
|
||||
}
|
||||
|
||||
void yote() {
|
||||
print("asdf");
|
||||
void test() {
|
||||
print_fb("asdf");
|
||||
}
|
||||
|
@ -4,7 +4,13 @@
|
||||
#define AREA ( COLUMNS * ROWS )
|
||||
|
||||
|
||||
// address of our frame buffer
|
||||
#define FRAME_BUFFER_ADDR 0x000B8000
|
||||
|
||||
// Logical index of a cell in the frame buffer
|
||||
#define FRAME_CELL(cell_) (cell_ * 2)
|
||||
|
||||
// Colors available in text framebuffer
|
||||
#define Black 0x01
|
||||
#define Blue 0x02
|
||||
#define Green 0x03
|
||||
@ -26,6 +32,6 @@ void write_cell(unsigned cell, char c , char fg, char bg);
|
||||
|
||||
void clear_buffer();
|
||||
|
||||
void print(char* str);
|
||||
void print_fb(char* str);
|
||||
|
||||
void yote();
|
||||
void test();
|
||||
|
19
loader.asm
19
loader.asm
@ -1,6 +1,7 @@
|
||||
; since we have no stack we have to create one for the OS
|
||||
|
||||
global loader
|
||||
; this section is partly handled by nasm tolerating some minor bs
|
||||
MAGIC_NUMBER equ 0x1BADB002
|
||||
FLAGS equ 0x0
|
||||
CHECKSUM equ -MAGIC_NUMBER
|
||||
@ -9,18 +10,9 @@ CHECKSUM equ -MAGIC_NUMBER
|
||||
; size in bytes of stack
|
||||
KERNEL_STACK_SIZE equ 4096
|
||||
|
||||
; external labels(cdecl) calling convention
|
||||
extern yote
|
||||
|
||||
section .bss
|
||||
align 4 ; aligning to bytes for x86(32-bit) reasons
|
||||
; because this is the first thing we actually do (virual)address 0x00000000 will
|
||||
; contain 4KB of memory for our stack
|
||||
kernel_stack:
|
||||
resb KERNEL_STACK_SIZE ; reserver bytes instruction
|
||||
; point to what will be bottom of stack
|
||||
; which will grow down towards (virtual)address 0x00000000
|
||||
mov esp, kernel_stack + KERNEL_STACK_SIZE
|
||||
; external labels(cdecl) calling convention
|
||||
extern test
|
||||
|
||||
section .text
|
||||
; align all instructions to 4 byte boundary by the x86 instruction set law
|
||||
@ -31,12 +23,11 @@ align 4
|
||||
dd CHECKSUM
|
||||
|
||||
loader:
|
||||
call yote
|
||||
call test
|
||||
|
||||
.loop:
|
||||
jmp .loop
|
||||
|
||||
; section for our kernel stack
|
||||
KERNEL_STACK_SIZE equ 4096
|
||||
section .bss
|
||||
align 4 ; aligned to 4 bytes for performance
|
||||
kernel_stack:
|
||||
|
Loading…
Reference in New Issue
Block a user