summaryrefslogtreecommitdiff
path: root/Source/Kernel/Core
diff options
context:
space:
mode:
authorAlexis211 <alexis211@gmail.com>2009-11-11 19:33:09 +0100
committerAlexis211 <alexis211@gmail.com>2009-11-11 19:33:09 +0100
commit7e3ecd80af5ddcedbfa3d849284400ed6568f516 (patch)
tree524acf3185b0d0fad75f99ae5be54a48286056c6 /Source/Kernel/Core
parentb367cdbbc77f3b1b0f83a87219ea2c4d88ee78f1 (diff)
downloadMelon-7e3ecd80af5ddcedbfa3d849284400ed6568f516.tar.gz
Melon-7e3ecd80af5ddcedbfa3d849284400ed6568f516.zip
8bpp modes now supported :)
Diffstat (limited to 'Source/Kernel/Core')
-rw-r--r--Source/Kernel/Core/kmain.wtf.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/Source/Kernel/Core/kmain.wtf.cpp b/Source/Kernel/Core/kmain.wtf.cpp
index cf1713f..e3344f1 100644
--- a/Source/Kernel/Core/kmain.wtf.cpp
+++ b/Source/Kernel/Core/kmain.wtf.cpp
@@ -22,6 +22,7 @@
#include <SyscallManager/IDT.ns.h>
#include <String.class.h>
#include <ByteArray.class.h>
+#include <Rand.ns.h>
#include <VFS/Part.ns.h>
#include <FileSystems/RamFS/RamFS.class.h>
#include <VFS/FileNode.class.h>
@@ -100,10 +101,13 @@ void selectVideoMode(SimpleVT& v) {
v << "\nYour selection: ";
String answer = v.readLine();
u32int n = answer.toInt();
+ v.unmap();
if (n >= 0 and n < Disp::modes.size() and Disp::setMode(Disp::modes[n])) {
return;
} else {
- v << "Error while switching video mode, please select another one.\n";
+ Disp::setMode(Disp::modes[1]);
+ v.map();
+ v << "Error while switching video mode, please select another one.";
}
}
}
@@ -173,7 +177,6 @@ void kmain(multiboot_info_t* mbd, u32int magic) {
asm volatile("sti");
selectVideoMode(*kvt); //////////////////////// SETUP VIDEO MODE
- kvt->unmap();
//Create a VT for handling the Melon bootup logo
SimpleVT *melonLogoVT = new SimpleVT(melonLogoLines, melonLogoCols, TXTLOGO_FGCOLOR, TXTLOGO_BGCOLOR);