From 543e71e350df112b007016fc36fbffef648b421f Mon Sep 17 00:00:00 2001
From: y2-shaffan <yousuf2.shaffan@live.uwe.ac.uk>
Date: Sun, 3 Mar 2024 11:31:34 +0000
Subject: [PATCH] Update file kernel.c

---
 kernel.c | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/kernel.c b/kernel.c
index e41db16..7d6efe9 100644
--- a/kernel.c
+++ b/kernel.c
@@ -85,15 +85,22 @@ void terminal_putentryat(char c, uint8_t color, size_t x, size_t y) {
 }
 
 void terminal_putchar(char c) {
-  terminal_putentryat(c, terminal_color, terminal_column, terminal_row);
-  if (++terminal_column == VGA_WIDTH) {
-    terminal_column = 0;
-    if (++terminal_row == VGA_HEIGHT) {
-      terminal_row = 0;
+    if (c == '\n') {
+        terminal_column = 0;
+        if (++terminal_row == VGA_HEIGHT) {
+            terminal_row = 0;
+        }
+    } else {
+        terminal_putentryat(c, terminal_color, terminal_column, terminal_row);
+        if (++terminal_column == VGA_WIDTH) {
+            terminal_column = 0;
+            if (++terminal_row == VGA_HEIGHT) {
+                terminal_row = 0;
+            }
+        }
     }
-  }
 }
- 
+
 void terminal_writestring(const char* data) {
   size_t datalen = strlen(data);
   for (size_t i = 0; i < datalen; i++)
-- 
GitLab