summaryrefslogtreecommitdiff
path: root/Source/Kernel/Devices/Display
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Kernel/Devices/Display')
-rw-r--r--Source/Kernel/Devices/Display/Display.proto.h3
-rw-r--r--Source/Kernel/Devices/Display/VGATextOutput.class.cpp9
-rw-r--r--Source/Kernel/Devices/Display/VGATextOutput.class.h3
3 files changed, 14 insertions, 1 deletions
diff --git a/Source/Kernel/Devices/Display/Display.proto.h b/Source/Kernel/Devices/Display/Display.proto.h
index d91023a..1c8e724 100644
--- a/Source/Kernel/Devices/Display/Display.proto.h
+++ b/Source/Kernel/Devices/Display/Display.proto.h
@@ -2,8 +2,9 @@
#define DEF_DISPLAY_PROTO_H
#include <Core/common.wtf.h>
+#include <Devices/Device.proto.h>
-class Display {
+class Display : public Device {
public:
virtual u16int textCols() = 0;
virtual u16int textRows() = 0;
diff --git a/Source/Kernel/Devices/Display/VGATextOutput.class.cpp b/Source/Kernel/Devices/Display/VGATextOutput.class.cpp
index 28c943a..a424153 100644
--- a/Source/Kernel/Devices/Display/VGATextOutput.class.cpp
+++ b/Source/Kernel/Devices/Display/VGATextOutput.class.cpp
@@ -1,9 +1,18 @@
#include "VGATextOutput.class.h"
+//Virtual address in higher half
#define RAM_ADDR 0xC00B8000
using namespace Sys; //For outb
+String VGATextOutput::getClass() {
+ return "display.text";
+}
+
+String VGATextOutput::getName() {
+ return "Standard mode0 VGA text display";
+}
+
u16int VGATextOutput::textCols() {
return 80;
}
diff --git a/Source/Kernel/Devices/Display/VGATextOutput.class.h b/Source/Kernel/Devices/Display/VGATextOutput.class.h
index a7968c7..eb3fc99 100644
--- a/Source/Kernel/Devices/Display/VGATextOutput.class.h
+++ b/Source/Kernel/Devices/Display/VGATextOutput.class.h
@@ -5,6 +5,9 @@
class VGATextOutput : public Display {
public:
+ String getClass();
+ String getName();
+
u16int textCols();
u16int textRows();
void putChar(u16int line, u16int col, char c, u8int color);