summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/amd64/cpu/boot.S12
-rw-r--r--sys/arch/amd64/io/uart.S1
2 files changed, 13 insertions, 0 deletions
diff --git a/sys/arch/amd64/cpu/boot.S b/sys/arch/amd64/cpu/boot.S
index 3ce82e6..a6961be 100644
--- a/sys/arch/amd64/cpu/boot.S
+++ b/sys/arch/amd64/cpu/boot.S
@@ -29,6 +29,7 @@
.globl _start
.extern uart_init
+ .extern uart_write
.extern gdt_load
.extern GDTR
_start:
@@ -41,9 +42,20 @@ _start:
lea GDTR(%rip), %rdi /* Our GDTR */
call gdt_load /* Load our GDT */
+ lea bootmsg(%rip), %rdi
+ movq bootmsg_len, %rsi
+ call uart_write
1: cli
hlt
jmp 1b
+ .section .rodata
+bootmsg:
+ .ascii "[ preparing since 2025 ]\n"
+ .ascii "[ 00:00 delta @ crev : 89 seconds]\n"
+ .ascii "** booting rv7 ...\n"
+ .byte 0x00
+bootmsg_len: .quad . - bootmsg
+
/* vim: ft=gas :
*/
diff --git a/sys/arch/amd64/io/uart.S b/sys/arch/amd64/io/uart.S
index fee06c4..8e190ed 100644
--- a/sys/arch/amd64/io/uart.S
+++ b/sys/arch/amd64/io/uart.S
@@ -65,6 +65,7 @@ uart_init:
pop %r12
retq
+ .globl uart_write
uart_write:
/*
* void uart_write(const char *s, size_t len);