summaryrefslogtreecommitdiff
path: root/Source/Kernel
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Kernel')
-rw-r--r--Source/Kernel/Devices/Display/VESADisplay.class.cpp19
-rw-r--r--Source/Kernel/Makefile2
2 files changed, 19 insertions, 2 deletions
diff --git a/Source/Kernel/Devices/Display/VESADisplay.class.cpp b/Source/Kernel/Devices/Display/VESADisplay.class.cpp
index f882d5b..d4aee07 100644
--- a/Source/Kernel/Devices/Display/VESADisplay.class.cpp
+++ b/Source/Kernel/Devices/Display/VESADisplay.class.cpp
@@ -245,7 +245,24 @@ void VESADisplay::drawChar(u16int line, u16int col, WChar c, u8int color) {
fgcolor = color & 0xF;
bgcolor = (color >> 4) & 0xF;
}
-
+
+ if (c == WChar(" ")) {
+ u8int* p = memPos(sx, sy);
+ for (int y = 0; y < C_FONT_HEIGHT; y++) {
+ if (m_pixWidth == 1) memset(p, bgcolor, 9);
+ if (m_pixWidth == 2) memsetw((u16int*)p, bgcolor, 9);
+ if (m_pixWidth == 3) {
+ for (int i = 0; i < 9; i++) {
+ p[0] = (bgcolor >> 16);
+ p[1] = (bgcolor >> 8);
+ p[2] = (bgcolor);
+ p += 3;
+ }
+ }
+ p += m_currMode.pitch;
+ }
+ return;
+ }
int y = 0;
for (u8int* p = memPos(sx, sy); p < memPos(sx, sy + C_FONT_HEIGHT); p += m_currMode.pitch) {
diff --git a/Source/Kernel/Makefile b/Source/Kernel/Makefile
index 660017a..0f244d5 100644
--- a/Source/Kernel/Makefile
+++ b/Source/Kernel/Makefile
@@ -5,7 +5,7 @@ CXX = g++
LD = ld
LDFLAGS = -T Link.ld -Map Map.txt --oformat=elf32-i386
CFLAGS = -nostdlib -nostartfiles -nodefaultlibs -fno-builtin -fno-stack-protector -Wall -Wextra -Werror -I .
-CXXFLAGS = -nostartfiles -nostdlib -fno-exceptions -fno-rtti -I . -I ../Library/Common -I ../Library/Interface -Wall -Werror -Wno-write-strings -funsigned-char -D THIS_IS_MELON_KERNEL -D RANDOM_SEED=1`date +%N`LL
+CXXFLAGS = -nostartfiles -nostdlib -fno-exceptions -fno-rtti -I . -I ../Library/Common -I ../Library/Interface -Wall -Werror -Wno-write-strings -funsigned-char -D THIS_IS_MELON_KERNEL -D RANDOM_SEED=1`date +%N`LL -O2
ASM = nasm
ASMFLAGS = -f elf