From ceedd4f2c7e990162f1b619f0d60471eea3aed1f Mon Sep 17 00:00:00 2001 From: kotorifan Date: Sun, 8 Mar 2026 15:33:02 +0100 Subject: Made a common directory, moved the protmode print there --- src/common/common.protmode.print.asm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/common/common.protmode.print.asm (limited to 'src/common/common.protmode.print.asm') diff --git a/src/common/common.protmode.print.asm b/src/common/common.protmode.print.asm new file mode 100644 index 0000000..5995e69 --- /dev/null +++ b/src/common/common.protmode.print.asm @@ -0,0 +1,35 @@ +;; common.protmode.print.asm + +%include "common.asm" + +_print_string_pm_vga: + pusha + mov edi, VGA_BUFFER + mov ah, WB_COLOR + xor ecx, ecx + xor edx, edx + +.print_loop: + lodsb + test al, al + jz .done + + push eax + mov eax, edx + imul eax, eax, 160 + lea edi, [VGA_BUFFER + eax] + lea edi, [edi + ecx * 2] + pop eax + +;; Advance cursor + inc cl + cmp cl, 80 + jb .print_loop + xor cl, cl + inc dl + + jmp .print_loop + +.done: + popa + ret -- cgit v1.3