From 703a23dfab2143da8400279d806dd58d588470c0 Mon Sep 17 00:00:00 2001 From: Xnoe Date: Mon, 30 Aug 2021 07:26:54 +0100 Subject: [PATCH] Removed very broken and bad code that could've corrupted memory in other segments, updated hello.asm accordingly --- hello.asm | 3 ++- kernel.asm | 18 ++++-------------- 2 files changed, 6 insertions(+), 15 deletions(-) diff --git a/hello.asm b/hello.asm index cbbca8b..932b031 100644 --- a/hello.asm +++ b/hello.asm @@ -1,13 +1,14 @@ mov ax, 3000h mov ds, ax -push hello_world_str +mov si, hello_world_str mov ah, 01h int 22h retf hello_world_str db "Hello, World!", 13, 10, 13, 10, 0 +new_line db 13, 10, 0 buffer: times 32 db 0 \ No newline at end of file diff --git a/kernel.asm b/kernel.asm index 170c65b..56765b4 100644 --- a/kernel.asm +++ b/kernel.asm @@ -364,25 +364,15 @@ _decode_buffer: times 11 db 0 ihdlr: - pop word [_ihdlr_stack0] - pop word [_ihdlr_stack1] - pop word [_ihdlr_stack2] - cmp ah, 01h jne _ihdlr_2 + push si call print _ihdlr_2: cmp ah, 02h jne _ihdlr_3 + push si + push di call readline _ihdlr_3: - - - push word [_ihdlr_stack2] - push word [_ihdlr_stack1] - push word [_ihdlr_stack0] - iret - -_ihdlr_stack0 dw 0 -_ihdlr_stack1 dw 0 -_ihdlr_stack2 dw 0 \ No newline at end of file + iret \ No newline at end of file