1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-22 16:55:09 +00:00

Fuck it, add a 4th virtual console. :^)

This commit is contained in:
Andreas Kling 2018-10-31 00:27:34 +01:00
parent 4dec23b487
commit 7be30a2fa8
2 changed files with 5 additions and 0 deletions

View file

@ -68,6 +68,7 @@ void Keyboard::handleIRQ()
case '1': case '1':
case '2': case '2':
case '3': case '3':
case '4':
VirtualConsole::switchTo(map[ch] - '0' - 1); VirtualConsole::switchTo(map[ch] - '0' - 1);
break; break;
default: default:

View file

@ -37,6 +37,7 @@ system_t system;
VirtualConsole* tty0; VirtualConsole* tty0;
VirtualConsole* tty1; VirtualConsole* tty1;
VirtualConsole* tty2; VirtualConsole* tty2;
VirtualConsole* tty3;
Keyboard* keyboard; Keyboard* keyboard;
void banner() void banner()
@ -131,6 +132,7 @@ static void init_stage2()
vfs->registerCharacterDevice(*tty0); vfs->registerCharacterDevice(*tty0);
vfs->registerCharacterDevice(*tty1); vfs->registerCharacterDevice(*tty1);
vfs->registerCharacterDevice(*tty2); vfs->registerCharacterDevice(*tty2);
vfs->registerCharacterDevice(*tty3);
auto dev_hd0 = IDEDiskDevice::create(); auto dev_hd0 = IDEDiskDevice::create();
auto e2fs = Ext2FileSystem::create(dev_hd0.copyRef()); auto e2fs = Ext2FileSystem::create(dev_hd0.copyRef());
@ -195,6 +197,7 @@ static void init_stage2()
auto* sh0 = Task::createUserTask("/bin/sh", (uid_t)100, (gid_t)100, (pid_t)0, error, nullptr, tty0); auto* sh0 = Task::createUserTask("/bin/sh", (uid_t)100, (gid_t)100, (pid_t)0, error, nullptr, tty0);
auto* sh1 = Task::createUserTask("/bin/sh", (uid_t)100, (gid_t)100, (pid_t)0, error, nullptr, tty1); auto* sh1 = Task::createUserTask("/bin/sh", (uid_t)100, (gid_t)100, (pid_t)0, error, nullptr, tty1);
auto* sh2 = Task::createUserTask("/bin/sh", (uid_t)100, (gid_t)100, (pid_t)0, error, nullptr, tty2); auto* sh2 = Task::createUserTask("/bin/sh", (uid_t)100, (gid_t)100, (pid_t)0, error, nullptr, tty2);
auto* sh3 = Task::createUserTask("/bin/sh", (uid_t)100, (gid_t)100, (pid_t)0, error, nullptr, tty3);
#if 0 #if 0
// It would be nice to exit this process, but right now it instantiates all kinds of things. // It would be nice to exit this process, but right now it instantiates all kinds of things.
@ -231,6 +234,7 @@ void init()
tty0 = new VirtualConsole(0, VirtualConsole::AdoptCurrentVGABuffer); tty0 = new VirtualConsole(0, VirtualConsole::AdoptCurrentVGABuffer);
tty1 = new VirtualConsole(1); tty1 = new VirtualConsole(1);
tty2 = new VirtualConsole(2); tty2 = new VirtualConsole(2);
tty3 = new VirtualConsole(3);
VirtualConsole::switchTo(0); VirtualConsole::switchTo(0);
MemoryManager::initialize(); MemoryManager::initialize();