summaryrefslogtreecommitdiff
path: root/src/boot.s
diff options
context:
space:
mode:
authorAleksa Vučković <aleksav013@gmail.com>2021-10-25 00:36:33 +0200
committerAleksa Vučković <aleksav013@gmail.com>2021-10-25 00:36:33 +0200
commit20dd72e40dc2728d3c5335d860e4b8ab8da14fcc (patch)
treedabdfdf736c45f9632fa1388d2144b1de7a438b0 /src/boot.s
parent0bca634f7e70b05239f46f3bd40bb37468d67957 (diff)
Changing build system to recursive make
Diffstat (limited to 'src/boot.s')
-rw-r--r--src/boot.s82
1 files changed, 0 insertions, 82 deletions
diff --git a/src/boot.s b/src/boot.s
deleted file mode 100644
index 6fe5ab8..0000000
--- a/src/boot.s
+++ /dev/null
@@ -1,82 +0,0 @@
-.set ALIGN, 1<<0
-.set MEMINFO, 1<<1
-.set FLAGS, ALIGN | MEMINFO
-.set MAGIC, 0x1BADB002
-.set CHECKSUM, -(MAGIC + FLAGS)
-
-.section .multiboot
-.align 4
-.long MAGIC
-.long FLAGS
-.long CHECKSUM
-
-.global _start
-.global load_gdt
-.global load_idt
-.global enable_interrupts
-.global keyboard_handler
-.global ioport_in
-.global ioport_out
-
-.extern init_gdt_table
-.extern handle_keyboard_interrupt
-.extern kernel_main
-
-load_gdt:
- movl 4(%esp), %edx
- lgdt (%edx)
- ret
-
-load_idt:
- movl 4(%esp), %edx
- lidt (%edx)
- sti
- ret
-
-keyboard_handler:
- pushal
- cld
- call handle_keyboard_interrupt
- popal
- iretl
-
-ioport_in:
- movl 4(%esp),%edx
- in %dx,%al
- ret
-
-ioport_out:
- movl 4(%esp),%edx
- movl 8(%esp),%eax
- outb %al,%dx
- ret
-
-.set CODE_SEGMENT, 0x08
-.set DATA_SEGMENT, 0x10
-
-.section .bss
-.align 16
-stack_bottom:
-.skip 16384
-stack_top:
-
-.section .text
-.type _start, @function
-_start:
- call init_gdt_table
- ljmp $CODE_SEGMENT, $code
-
-code:
- movw $DATA_SEGMENT, %ax
- movw %ax, %ds
- movw %ax, %es
- movw %ax, %fs
- movw %ax, %gs
- movw %ax, %ss
- movl $stack_top, %esp
- cli
- call _init
- call kernel_main
- hlt
-
-.size _start, . - _start