diff options
Diffstat (limited to 'arch/x86/boot')
-rw-r--r-- | arch/x86/boot/bios.inc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/x86/boot/bios.inc b/arch/x86/boot/bios.inc new file mode 100644 index 0000000..d01b27c --- /dev/null +++ b/arch/x86/boot/bios.inc @@ -0,0 +1,19 @@ +.macro BIOS_PRINT string + mov $0x0e, %ah # Set writing char in TTY mode routine + mov \string, %si # Set in Source Index reg the beginning + # address of a string +print_loop\@: + lodsb # Increase SI by 1 byte => get next char + or %al, %al # Check for a '\0' + jz print_done\@ + + int $0x10 # Print a char in al register + jmp print_loop\@ +print_done\@: +.endm + +.macro PUTCHAR char + mov $0x0e, %ah # Set writing char in TTY mode routine + mov \char, %al + int $0x10 # Print a char in al register +.endm |