From 4d7a8653be2e2b80cfa861952e067fa62b80eeee Mon Sep 17 00:00:00 2001 From: Eryn Wells Date: Sat, 27 Feb 2016 13:59:30 -0500 Subject: [PATCH] Console has newline support --- src/Console.cc | 22 ++++++++++++++++------ src/Main.cc | 3 ++- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/Console.cc b/src/Console.cc index 65282a4..fd3de1a 100644 --- a/src/Console.cc +++ b/src/Console.cc @@ -52,12 +52,22 @@ Console::clear(Console::Color color) void Console::writeChar(char c) { - putEntryAt(mCursor.col, mCursor.row, c, mColor); - if (++mCursor.col == Console::Width) { - mCursor.col = 0; - if (++mCursor.row == Console::Height) { - mCursor.row = 0; - } + switch (c) { + case '\n': + mCursor.col = 0; + if (++mCursor.row == Console::Height) { + mCursor.row = 0; + } + break; + default: + putEntryAt(mCursor.col, mCursor.row, c, mColor); + if (++mCursor.col == Console::Width) { + mCursor.col = 0; + if (++mCursor.row == Console::Height) { + mCursor.row = 0; + } + } + break; } } diff --git a/src/Main.cc b/src/Main.cc index 15fa7ce..9bde247 100644 --- a/src/Main.cc +++ b/src/Main.cc @@ -17,7 +17,8 @@ kearly() { kernel::Console console; console.clear(kernel::Console::Color::Blue); - console.writeString("Hello world!"); + console.writeString("Hello world!\n"); + console.writeString("a\nb\nc\n"); }