summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--Source/Kernel/Core/kmain.wtf.cpp3
-rw-r--r--Source/Kernel/Makefile117
-rwxr-xr-xSource/Kernel/Melon.kebin165231 -> 165231 bytes
-rw-r--r--Source/Kernel/Shell/KernelShell.class.cpp2
5 files changed, 65 insertions, 60 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ea5395c
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+*.swp
+*.o
+
diff --git a/Source/Kernel/Core/kmain.wtf.cpp b/Source/Kernel/Core/kmain.wtf.cpp
index f1efc70..4df2ed5 100644
--- a/Source/Kernel/Core/kmain.wtf.cpp
+++ b/Source/Kernel/Core/kmain.wtf.cpp
@@ -76,7 +76,7 @@ void kmain(multiboot_info_t* mbd, u32int magic) {
//Create a VT for logging what kernel does
SimpleVT *kvt = new ScrollableVT(3, 69, 10, KVT_FGCOLOR, KVT_BGCOLOR);
- kvt->map(22);
+ kvt->map(15);
INFO(kvt); *kvt << "Lower ram : " << (s32int)mbd->mem_lower << "k, upper : " << (s32int)mbd->mem_upper << "k.\n";
INFO(kvt); *kvt << "Placement address : " << (u32int)Mem::placementAddress << "\n";
@@ -129,6 +129,7 @@ void kmain(multiboot_info_t* mbd, u32int magic) {
new KernelShell(cwd); //No need to save that in a var, it is automatically destroyed anyways
Log::log(KL_STATUS, "kmain : Kernel shell launched");
+ kvt->unmap();
while (KernelShell::getInstances() > 0) {
Task::currentThread->sleep(100);
diff --git a/Source/Kernel/Makefile b/Source/Kernel/Makefile
index fd5263b..76bc9eb 100644
--- a/Source/Kernel/Makefile
+++ b/Source/Kernel/Makefile
@@ -1,5 +1,5 @@
.PHONY: clean, mrproper
-
+
CC = gcc
CXX = g++
LD = ld
@@ -8,85 +8,86 @@ CFLAGS = -nostdlib -nostartfiles -nodefaultlibs -fno-builtin -fno-stack-protecto
CXXFLAGS = -nostartfiles -nostdlib -fno-exceptions -fno-rtti -I . -Wall -Werror -Wno-write-strings -funsigned-char
ASM = nasm
ASMFLAGS = -f elf
-
+
OutFile = Melon.ke
Objects = Core/loader.wtf.o \
- Core/kmain.wtf.o \
- Core/cppsupport.wtf.o \
- Core/Sys.ns.o \
- Core/CMem.ns.o \
- Core/Log.ns.o \
- MemoryManager/Mem.ns.o \
- MemoryManager/PhysMem.ns.o \
- MemoryManager/GDT.wtf.o \
- MemoryManager/GDT.ns.o \
- MemoryManager/PageDirectory.class.o \
- MemoryManager/PageAlloc.ns.o \
- DeviceManager/Disp.ns.o \
- DeviceManager/Dev.ns.o \
- DeviceManager/Time.ns.o \
- DeviceManager/Kbd.ns.o \
- TaskManager/Process.class.o \
- TaskManager/Thread.class.o \
- TaskManager/Task.ns.o \
- TaskManager/Task.wtf.o \
- TaskManager/Mutex.class.o \
- VTManager/VirtualTerminal.proto.o \
- VTManager/SimpleVT.class.o \
- VTManager/ScrollableVT.class.o \
- VTManager/PipeVT.class.o \
- VTManager/FileVT.class.o \
- VTManager/VirtualTerminal-kbd.proto.o \
- VTManager/VT.ns.o \
- Shell/KernelShell.class.o \
- Shell/KernelShell-fs.class.o \
- Shell/KernelShell-sys.class.o \
- Library/Bitset.class.o \
- Library/String.class.o \
- Library/ByteArray.class.o \
- Library/WChar.class.o \
- VFS/Partition.class.o \
- VFS/Part.ns.o \
- VFS/VFS.ns.o \
- VFS/File.class.o \
- VFS/TextFile.class.o \
- VFS/DirectoryNode.class.o \
- FileSystems/RamFS/RamFS.class.o \
- SyscallManager/IDT.ns.o \
- SyscallManager/IDT.wtf.o \
- Devices/Display/VGATextOutput.class.o \
- Devices/Keyboard/PS2Keyboard.class.o \
- Devices/Floppy/FloppyController.class.o \
- Devices/Floppy/FloppyDrive.class.o \
- Devices/Timer.class.o
-
+ Core/kmain.wtf.o \
+ Core/cppsupport.wtf.o \
+ Core/Sys.ns.o \
+ Core/CMem.ns.o \
+ Core/Log.ns.o \
+ MemoryManager/Mem.ns.o \
+ MemoryManager/PhysMem.ns.o \
+ MemoryManager/GDT.wtf.o \
+ MemoryManager/GDT.ns.o \
+ MemoryManager/PageDirectory.class.o \
+ MemoryManager/PageAlloc.ns.o \
+ DeviceManager/Disp.ns.o \
+ DeviceManager/Dev.ns.o \
+ DeviceManager/Time.ns.o \
+ DeviceManager/Kbd.ns.o \
+ TaskManager/Process.class.o \
+ TaskManager/Thread.class.o \
+ TaskManager/Task.ns.o \
+ TaskManager/Task.wtf.o \
+ TaskManager/Mutex.class.o \
+ VTManager/VirtualTerminal.proto.o \
+ VTManager/SimpleVT.class.o \
+ VTManager/ScrollableVT.class.o \
+ VTManager/PipeVT.class.o \
+ VTManager/FileVT.class.o \
+ VTManager/VirtualTerminal-kbd.proto.o \
+ VTManager/VT.ns.o \
+ Shell/KernelShell.class.o \
+ Shell/KernelShell-fs.class.o \
+ Shell/KernelShell-sys.class.o \
+ Library/Bitset.class.o \
+ Library/String.class.o \
+ Library/ByteArray.class.o \
+ Library/WChar.class.o \
+ VFS/Partition.class.o \
+ VFS/Part.ns.o \
+ VFS/VFS.ns.o \
+ VFS/File.class.o \
+ VFS/TextFile.class.o \
+ VFS/DirectoryNode.class.o \
+ FileSystems/RamFS/RamFS.class.o \
+ SyscallManager/IDT.ns.o \
+ SyscallManager/IDT.wtf.o \
+ Devices/Display/VGATextOutput.class.o \
+ Devices/Keyboard/PS2Keyboard.class.o \
+ Devices/Floppy/FloppyController.class.o \
+ Devices/Floppy/FloppyDrive.class.o \
+ Devices/Timer.class.o
+
all: $(OutFile)
echo "* Done with $(OutFile)."
-
+
rebuild: mrproper all
-
+
$(OutFile): $(Objects)
echo "* Linking executable : $(OutFile)..."
$(LD) $(LDFLAGS) -o $(OutFile) $^
-
+
%.o: %.c
echo "* Compiling $<..."
$(CC) -c $< -o $@ $(CFLAGS)
-
+
%.o: %.cpp
echo "* Compiling $<..."
$(CXX) -c $< -o $@ $(CXXFLAGS)
-
+
%.o: %.asm
echo "* Compiling $<..."
$(ASM) $(ASMFLAGS) -o $@ $<
-
+
clean:
echo "* Removing object files..."
rm -rf *.o
rm -rf */*.o
rm -rf */*/*.o
-
+
mrproper: clean
echo "* Removing executable : $(OutFile)"
rm -rf $(OutFile)
+
diff --git a/Source/Kernel/Melon.ke b/Source/Kernel/Melon.ke
index 4517c24..4988c1e 100755
--- a/Source/Kernel/Melon.ke
+++ b/Source/Kernel/Melon.ke
Binary files differ
diff --git a/Source/Kernel/Shell/KernelShell.class.cpp b/Source/Kernel/Shell/KernelShell.class.cpp
index 8e7bebb..88b9481 100644
--- a/Source/Kernel/Shell/KernelShell.class.cpp
+++ b/Source/Kernel/Shell/KernelShell.class.cpp
@@ -14,7 +14,7 @@ u32int shellRun(void* ks) {
}
KernelShell::KernelShell(DirectoryNode* cwd) {
- m_vt = new ScrollableVT(12, 76, 200, SHELL_FGCOLOR, SHELL_BGCOLOR);
+ m_vt = new ScrollableVT(15, 76, 200, SHELL_FGCOLOR, SHELL_BGCOLOR);
((ScrollableVT*)m_vt)->map(9);
Kbd::setFocus(m_vt);
m_cwd = cwd;