summaryrefslogtreecommitdiff
path: root/Kernel/Graphics
diff options
context:
space:
mode:
Diffstat (limited to 'Kernel/Graphics')
-rw-r--r--Kernel/Graphics/BochsGraphicsAdapter.cpp4
-rw-r--r--Kernel/Graphics/BochsGraphicsAdapter.h4
-rw-r--r--Kernel/Graphics/Console/Console.h8
-rw-r--r--Kernel/Graphics/Console/ContiguousFramebufferConsole.cpp40
-rw-r--r--Kernel/Graphics/Console/ContiguousFramebufferConsole.h30
-rw-r--r--Kernel/Graphics/Console/GenericFramebufferConsole.cpp (renamed from Kernel/Graphics/Console/FramebufferConsole.cpp)75
-rw-r--r--Kernel/Graphics/Console/GenericFramebufferConsole.h (renamed from Kernel/Graphics/Console/FramebufferConsole.h)29
-rw-r--r--Kernel/Graphics/Console/TextModeConsole.cpp8
-rw-r--r--Kernel/Graphics/Console/TextModeConsole.h8
-rw-r--r--Kernel/Graphics/FramebufferDevice.h2
-rw-r--r--Kernel/Graphics/GraphicsManagement.cpp1
-rw-r--r--Kernel/Graphics/IntelNativeGraphicsAdapter.cpp4
-rw-r--r--Kernel/Graphics/VGACompatibleAdapter.cpp4
13 files changed, 135 insertions, 82 deletions
diff --git a/Kernel/Graphics/BochsGraphicsAdapter.cpp b/Kernel/Graphics/BochsGraphicsAdapter.cpp
index 5d764e2a05..bf8aa1300a 100644
--- a/Kernel/Graphics/BochsGraphicsAdapter.cpp
+++ b/Kernel/Graphics/BochsGraphicsAdapter.cpp
@@ -10,7 +10,7 @@
#include <Kernel/Debug.h>
#include <Kernel/Graphics/Bochs.h>
#include <Kernel/Graphics/BochsGraphicsAdapter.h>
-#include <Kernel/Graphics/Console/FramebufferConsole.h>
+#include <Kernel/Graphics/Console/ContiguousFramebufferConsole.h>
#include <Kernel/Graphics/GraphicsManagement.h>
#include <Kernel/IO.h>
#include <Kernel/PCI/Access.h>
@@ -55,7 +55,7 @@ UNMAP_AFTER_INIT BochsGraphicsAdapter::BochsGraphicsAdapter(PCI::Address pci_add
, m_mmio_registers(PCI::get_BAR2(pci_address) & 0xfffffff0)
{
// We assume safe resolutio is 1024x768x32
- m_framebuffer_console = Graphics::FramebufferConsole::initialize(PhysicalAddress(PCI::get_BAR0(pci_address) & 0xfffffff0), 1024, 768, 1024 * sizeof(u32));
+ m_framebuffer_console = Graphics::ContiguousFramebufferConsole::initialize(PhysicalAddress(PCI::get_BAR0(pci_address) & 0xfffffff0), 1024, 768, 1024 * sizeof(u32));
// FIXME: This is a very wrong way to do this...
GraphicsManagement::the().m_console = m_framebuffer_console;
diff --git a/Kernel/Graphics/BochsGraphicsAdapter.h b/Kernel/Graphics/BochsGraphicsAdapter.h
index 56bf5da18d..663c098c53 100644
--- a/Kernel/Graphics/BochsGraphicsAdapter.h
+++ b/Kernel/Graphics/BochsGraphicsAdapter.h
@@ -8,7 +8,7 @@
#include <AK/String.h>
#include <AK/Types.h>
-#include <Kernel/Graphics/Console/FramebufferConsole.h>
+#include <Kernel/Graphics/Console/GenericFramebufferConsole.h>
#include <Kernel/Graphics/FramebufferDevice.h>
#include <Kernel/Graphics/GraphicsDevice.h>
#include <Kernel/PCI/DeviceController.h>
@@ -56,7 +56,7 @@ private:
PhysicalAddress m_mmio_registers;
RefPtr<FramebufferDevice> m_framebuffer_device;
- RefPtr<Graphics::FramebufferConsole> m_framebuffer_console;
+ RefPtr<Graphics::GenericFramebufferConsole> m_framebuffer_console;
SpinLock<u8> m_console_mode_switch_lock;
bool m_console_enabled { false };
bool m_io_required { false };
diff --git a/Kernel/Graphics/Console/Console.h b/Kernel/Graphics/Console/Console.h
index 9c3b7ec350..181db2e07f 100644
--- a/Kernel/Graphics/Console/Console.h
+++ b/Kernel/Graphics/Console/Console.h
@@ -54,10 +54,10 @@ public:
virtual void hide_cursor() = 0;
virtual void show_cursor() = 0;
- virtual void clear(size_t x, size_t y, size_t length) const = 0;
- virtual void write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical = false) const = 0;
- virtual void write(size_t x, size_t y, char ch, bool critical = false) const = 0;
- virtual void write(char ch, bool critical = false) const = 0;
+ virtual void clear(size_t x, size_t y, size_t length) = 0;
+ virtual void write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical = false) = 0;
+ virtual void write(size_t x, size_t y, char ch, bool critical = false) = 0;
+ virtual void write(char ch, bool critical = false) = 0;
virtual ~Console() { }
diff --git a/Kernel/Graphics/Console/ContiguousFramebufferConsole.cpp b/Kernel/Graphics/Console/ContiguousFramebufferConsole.cpp
new file mode 100644
index 0000000000..12a7cd45ca
--- /dev/null
+++ b/Kernel/Graphics/Console/ContiguousFramebufferConsole.cpp
@@ -0,0 +1,40 @@
+/*
+ * Copyright (c) 2021, Sahan Fernando <sahan.h.fernando@gmail.com>
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#include <Kernel/Graphics/Console/ContiguousFramebufferConsole.h>
+#include <Kernel/TTY/ConsoleManagement.h>
+
+namespace Kernel::Graphics {
+
+NonnullRefPtr<ContiguousFramebufferConsole> ContiguousFramebufferConsole::initialize(PhysicalAddress framebuffer_address, size_t width, size_t height, size_t pitch)
+{
+ return adopt_ref(*new ContiguousFramebufferConsole(framebuffer_address, width, height, pitch));
+}
+
+ContiguousFramebufferConsole::ContiguousFramebufferConsole(PhysicalAddress framebuffer_address, size_t width, size_t height, size_t pitch)
+ : GenericFramebufferConsole(width, height, pitch)
+ , m_framebuffer_address(framebuffer_address)
+{
+ set_resolution(width, height, pitch);
+}
+
+void ContiguousFramebufferConsole::set_resolution(size_t width, size_t height, size_t pitch)
+{
+ m_width = width;
+ m_height = height;
+ m_pitch = pitch;
+
+ dbgln("Framebuffer Console: taking {} bytes", page_round_up(pitch * height));
+ m_framebuffer_region = MM.allocate_kernel_region(m_framebuffer_address, page_round_up(pitch * height), "Framebuffer Console", Region::Access::Read | Region::Access::Write, Region::Cacheable::Yes);
+ VERIFY(m_framebuffer_region);
+
+ // Just to start cleanly, we clean the entire framebuffer
+ memset(m_framebuffer_region->vaddr().as_ptr(), 0, pitch * height);
+
+ ConsoleManagement::the().resolution_was_changed();
+}
+
+}
diff --git a/Kernel/Graphics/Console/ContiguousFramebufferConsole.h b/Kernel/Graphics/Console/ContiguousFramebufferConsole.h
new file mode 100644
index 0000000000..bf4d458566
--- /dev/null
+++ b/Kernel/Graphics/Console/ContiguousFramebufferConsole.h
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 2021, Sahan Fernando <sahan.h.fernando@gmail.com>
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#pragma once
+
+#include <Kernel/Graphics/Console/GenericFramebufferConsole.h>
+
+namespace Kernel::Graphics {
+
+class ContiguousFramebufferConsole final : public GenericFramebufferConsole {
+public:
+ static NonnullRefPtr<ContiguousFramebufferConsole> initialize(PhysicalAddress, size_t width, size_t height, size_t pitch);
+
+ virtual void set_resolution(size_t width, size_t height, size_t pitch) override;
+ virtual void flush() override { }
+
+private:
+ virtual u8* framebuffer_data() override
+ {
+ return m_framebuffer_region->vaddr().as_ptr();
+ }
+ OwnPtr<Region> m_framebuffer_region;
+ ContiguousFramebufferConsole(PhysicalAddress, size_t width, size_t height, size_t pitch);
+ PhysicalAddress m_framebuffer_address;
+};
+
+}
diff --git a/Kernel/Graphics/Console/FramebufferConsole.cpp b/Kernel/Graphics/Console/GenericFramebufferConsole.cpp
index 7990993d82..6fe72f9940 100644
--- a/Kernel/Graphics/Console/FramebufferConsole.cpp
+++ b/Kernel/Graphics/Console/GenericFramebufferConsole.cpp
@@ -4,7 +4,7 @@
* SPDX-License-Identifier: BSD-2-Clause
*/
-#include <Kernel/Graphics/Console/FramebufferConsole.h>
+#include <Kernel/Graphics/Console/GenericFramebufferConsole.h>
#include <Kernel/TTY/ConsoleManagement.h>
namespace Kernel::Graphics {
@@ -200,65 +200,39 @@ static inline BGRColor convert_standard_color_to_bgr_color(Console::Color color)
}
}
-NonnullRefPtr<FramebufferConsole> FramebufferConsole::initialize(PhysicalAddress framebuffer_address, size_t width, size_t height, size_t pitch)
-{
- return adopt_ref(*new FramebufferConsole(framebuffer_address, width, height, pitch));
-}
-
-void FramebufferConsole::set_resolution(size_t width, size_t height, size_t pitch)
-{
- m_width = width;
- m_height = height;
- m_pitch = pitch;
-
- dbgln("Framebuffer Console: taking {} bytes", page_round_up(pitch * height));
- m_framebuffer_region = MM.allocate_kernel_region(m_framebuffer_address, page_round_up(pitch * height), "Framebuffer Console", Region::Access::Read | Region::Access::Write, Region::Cacheable::Yes);
- VERIFY(m_framebuffer_region);
-
- // Just to start cleanly, we clean the entire framebuffer
- memset(m_framebuffer_region->vaddr().as_ptr(), 0, pitch * height);
-
- ConsoleManagement::the().resolution_was_changed();
-}
-
-FramebufferConsole::FramebufferConsole(PhysicalAddress framebuffer_address, size_t width, size_t height, size_t pitch)
- : Console(width, height)
- , m_framebuffer_address(framebuffer_address)
- , m_pitch(pitch)
-{
- set_resolution(width, height, pitch);
-}
-
-size_t FramebufferConsole::bytes_per_base_glyph() const
+size_t GenericFramebufferConsole::bytes_per_base_glyph() const
{
// FIXME: We assume we have 32 bit bpp framebuffer.
return 8 * 32;
}
-size_t FramebufferConsole::chars_per_line() const
+size_t GenericFramebufferConsole::chars_per_line() const
{
return width() / bytes_per_base_glyph();
}
-void FramebufferConsole::set_cursor(size_t, size_t)
+void GenericFramebufferConsole::set_cursor(size_t, size_t)
{
}
-void FramebufferConsole::hide_cursor()
+
+void GenericFramebufferConsole::hide_cursor()
{
}
-void FramebufferConsole::show_cursor()
+
+void GenericFramebufferConsole::show_cursor()
{
}
-void FramebufferConsole::clear(size_t x, size_t y, size_t length) const
+void GenericFramebufferConsole::clear(size_t x, size_t y, size_t length)
{
ScopedSpinLock lock(m_lock);
if (x == 0 && length == max_column()) {
// if we need to clear the entire row, just clean it with quick memset :)
- auto* offset_in_framebuffer = (u32*)m_framebuffer_region->vaddr().offset(x * sizeof(u32) * 8).offset(y * 8 * sizeof(u32) * width()).as_ptr();
+ auto* offset_in_framebuffer = (u32*)&framebuffer_data()[x * sizeof(u32) * 8 + y * 8 * sizeof(u32) * width()];
for (size_t current_x = 0; current_x < 8; current_x++) {
memset(offset_in_framebuffer, 0, width() * sizeof(u32));
offset_in_framebuffer = (u32*)((u8*)offset_in_framebuffer + width() * 4);
}
+ flush();
return;
}
for (size_t index = 0; index < length; index++) {
@@ -268,33 +242,39 @@ void FramebufferConsole::clear(size_t x, size_t y, size_t length) const
if (y >= max_row())
y = 0;
}
- clear_glyph(x, y);
+ auto* offset_in_framebuffer = (u32*)&framebuffer_data()[x * sizeof(u32) * 8 + y * 8 * sizeof(u32) * width()];
+ for (size_t current_x = 0; current_x < 8; current_x++) {
+ memset(offset_in_framebuffer, 0, 8 * sizeof(u32));
+ offset_in_framebuffer = (u32*)((u8*)offset_in_framebuffer + width() * sizeof(u32));
+ }
}
+ flush();
}
-void FramebufferConsole::clear_glyph(size_t x, size_t y) const
+void GenericFramebufferConsole::clear_glyph(size_t x, size_t y)
{
VERIFY(m_lock.is_locked());
- auto* offset_in_framebuffer = (u32*)m_framebuffer_region->vaddr().offset(x * sizeof(u32) * 8).offset(y * 8 * sizeof(u32) * width()).as_ptr();
+ auto* offset_in_framebuffer = (u32*)&framebuffer_data()[x * sizeof(u32) * 8 + y * 8 * sizeof(u32) * width()];
for (size_t current_x = 0; current_x < 8; current_x++) {
memset(offset_in_framebuffer, 0, 8 * sizeof(u32));
offset_in_framebuffer = (u32*)((u8*)offset_in_framebuffer + width() * sizeof(u32));
}
+ flush();
}
-void FramebufferConsole::enable()
+void GenericFramebufferConsole::enable()
{
ScopedSpinLock lock(m_lock);
- memset(m_framebuffer_region->vaddr().as_ptr(), 0, height() * width() * sizeof(u32));
+ memset(framebuffer_data(), 0, height() * width() * sizeof(u32));
m_enabled.store(true);
}
-void FramebufferConsole::disable()
+void GenericFramebufferConsole::disable()
{
ScopedSpinLock lock(m_lock);
m_enabled.store(false);
}
-void FramebufferConsole::write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical) const
+void GenericFramebufferConsole::write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical)
{
ScopedSpinLock lock(m_lock);
if (!m_enabled.load())
@@ -315,7 +295,7 @@ void FramebufferConsole::write(size_t x, size_t y, char ch, Color background, Co
return;
}
clear_glyph(x, y);
- auto* offset_in_framebuffer = (u32*)m_framebuffer_region->vaddr().offset(x * sizeof(u32) * 8).offset(y * 8 * sizeof(u32) * width()).as_ptr();
+ auto* offset_in_framebuffer = (u32*)&framebuffer_data()[x * sizeof(u32) * 8 + y * 8 * sizeof(u32) * width()];
int current_bitpixels = 0;
int current_bitpixel = 0;
auto bitmap = font8x8_basic[(int)ch];
@@ -340,14 +320,15 @@ void FramebufferConsole::write(size_t x, size_t y, char ch, Color background, Co
if (m_y >= max_row())
m_y = 0;
}
+ flush();
}
-void FramebufferConsole::write(size_t x, size_t y, char ch, bool critical) const
+void GenericFramebufferConsole::write(size_t x, size_t y, char ch, bool critical)
{
write(x, y, ch, m_default_background_color, m_default_foreground_color, critical);
}
-void FramebufferConsole::write(char ch, bool critical) const
+void GenericFramebufferConsole::write(char ch, bool critical)
{
write(m_x, m_y, ch, m_default_background_color, m_default_foreground_color, critical);
}
diff --git a/Kernel/Graphics/Console/FramebufferConsole.h b/Kernel/Graphics/Console/GenericFramebufferConsole.h
index 13665af1a5..2fda341a76 100644
--- a/Kernel/Graphics/Console/FramebufferConsole.h
+++ b/Kernel/Graphics/Console/GenericFramebufferConsole.h
@@ -12,12 +12,9 @@
#include <Kernel/PhysicalAddress.h>
namespace Kernel::Graphics {
-class FramebufferConsole final : public Console {
-public:
- static NonnullRefPtr<FramebufferConsole> initialize(PhysicalAddress, size_t width, size_t height, size_t pitch);
-
- void set_resolution(size_t width, size_t height, size_t pitch);
+class GenericFramebufferConsole : public Console {
+public:
virtual size_t bytes_per_base_glyph() const override;
virtual size_t chars_per_line() const override;
@@ -31,19 +28,25 @@ public:
virtual void hide_cursor() override;
virtual void show_cursor() override;
- virtual void clear(size_t x, size_t y, size_t length) const override;
- virtual void write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical = false) const override;
- virtual void write(size_t x, size_t y, char ch, bool critical = false) const override;
- virtual void write(char ch, bool critical = false) const override;
+ virtual void clear(size_t x, size_t y, size_t length) override;
+ virtual void write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical = false) override;
+ virtual void write(size_t x, size_t y, char ch, bool critical = false) override;
+ virtual void write(char ch, bool critical = false) override;
virtual void enable() override;
virtual void disable() override;
+ virtual void set_resolution(size_t width, size_t height, size_t pitch) = 0;
+ virtual void flush() = 0;
+
protected:
- void clear_glyph(size_t x, size_t y) const;
- FramebufferConsole(PhysicalAddress, size_t width, size_t height, size_t pitch);
- OwnPtr<Region> m_framebuffer_region;
- PhysicalAddress m_framebuffer_address;
+ GenericFramebufferConsole(size_t width, size_t height, size_t pitch)
+ : Console(width, height)
+ , m_pitch(pitch)
+ {
+ }
+ virtual u8* framebuffer_data() = 0;
+ void clear_glyph(size_t x, size_t y);
size_t m_pitch;
mutable SpinLock<u8> m_lock;
};
diff --git a/Kernel/Graphics/Console/TextModeConsole.cpp b/Kernel/Graphics/Console/TextModeConsole.cpp
index 2739ba4c7e..568d6f6018 100644
--- a/Kernel/Graphics/Console/TextModeConsole.cpp
+++ b/Kernel/Graphics/Console/TextModeConsole.cpp
@@ -112,7 +112,7 @@ void TextModeConsole::show_cursor()
IO::out8(0x3D5, 0x20);
}
-void TextModeConsole::clear(size_t x, size_t y, size_t length) const
+void TextModeConsole::clear(size_t x, size_t y, size_t length)
{
ScopedSpinLock lock(m_vga_lock);
auto* buf = (u16*)(m_current_vga_window + (x * 2) + (y * width() * 2));
@@ -120,12 +120,12 @@ void TextModeConsole::clear(size_t x, size_t y, size_t length) const
buf[index] = 0x0720;
}
}
-void TextModeConsole::write(size_t x, size_t y, char ch, bool critical) const
+void TextModeConsole::write(size_t x, size_t y, char ch, bool critical)
{
write(x, y, ch, m_default_background_color, m_default_foreground_color, critical);
}
-void TextModeConsole::write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical) const
+void TextModeConsole::write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical)
{
ScopedSpinLock lock(m_vga_lock);
// If we are in critical printing mode, we need to handle new lines here
@@ -172,7 +172,7 @@ void TextModeConsole::set_vga_start_row(u16 row)
IO::out8(0x3d5, LSB(m_current_vga_start_address));
}
-void TextModeConsole::write(char ch, bool critical) const
+void TextModeConsole::write(char ch, bool critical)
{
write(m_x, m_y, ch, critical);
}
diff --git a/Kernel/Graphics/Console/TextModeConsole.h b/Kernel/Graphics/Console/TextModeConsole.h
index 9f1c567bee..54f512f26e 100644
--- a/Kernel/Graphics/Console/TextModeConsole.h
+++ b/Kernel/Graphics/Console/TextModeConsole.h
@@ -24,10 +24,10 @@ public:
virtual void set_cursor(size_t x, size_t y) override;
virtual void hide_cursor() override;
virtual void show_cursor() override;
- virtual void clear(size_t x, size_t y, size_t length) const override;
- virtual void write(size_t x, size_t y, char ch, bool critical = false) const override;
- virtual void write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical = false) const override;
- virtual void write(char ch, bool critical = false) const override;
+ virtual void clear(size_t x, size_t y, size_t length) override;
+ virtual void write(size_t x, size_t y, char ch, bool critical = false) override;
+ virtual void write(size_t x, size_t y, char ch, Color background, Color foreground, bool critical = false) override;
+ virtual void write(char ch, bool critical = false) override;
virtual void enable() override { }
virtual void disable() override { VERIFY_NOT_REACHED(); }
diff --git a/Kernel/Graphics/FramebufferDevice.h b/Kernel/Graphics/FramebufferDevice.h
index c716e0959c..55dfe90302 100644
--- a/Kernel/Graphics/FramebufferDevice.h
+++ b/Kernel/Graphics/FramebufferDevice.h
@@ -38,7 +38,7 @@ public:
private:
// ^File
- virtual const char* class_name() const { return "FramebufferDevice"; }
+ virtual const char* class_name() const override { return "FramebufferDevice"; }
virtual bool can_read(const FileDescription&, size_t) const override final { return true; }
virtual bool can_write(const FileDescription&, size_t) const override final { return true; }
diff --git a/Kernel/Graphics/GraphicsManagement.cpp b/Kernel/Graphics/GraphicsManagement.cpp
index 69a1528eb7..f78d864ce2 100644
--- a/Kernel/Graphics/GraphicsManagement.cpp
+++ b/Kernel/Graphics/GraphicsManagement.cpp
@@ -9,7 +9,6 @@
#include <Kernel/CommandLine.h>
#include <Kernel/Debug.h>
#include <Kernel/Graphics/BochsGraphicsAdapter.h>
-#include <Kernel/Graphics/Console/FramebufferConsole.h>
#include <Kernel/Graphics/Console/TextModeConsole.h>
#include <Kernel/Graphics/GraphicsManagement.h>
#include <Kernel/Graphics/IntelNativeGraphicsAdapter.h>
diff --git a/Kernel/Graphics/IntelNativeGraphicsAdapter.cpp b/Kernel/Graphics/IntelNativeGraphicsAdapter.cpp
index 89d1e0278a..a84f67921b 100644
--- a/Kernel/Graphics/IntelNativeGraphicsAdapter.cpp
+++ b/Kernel/Graphics/IntelNativeGraphicsAdapter.cpp
@@ -4,7 +4,7 @@
* SPDX-License-Identifier: BSD-2-Clause
*/
-#include <Kernel/Graphics/Console/FramebufferConsole.h>
+#include <Kernel/Graphics/Console/ContiguousFramebufferConsole.h>
#include <Kernel/Graphics/Definitions.h>
#include <Kernel/Graphics/GraphicsManagement.h>
#include <Kernel/Graphics/IntelNativeGraphicsAdapter.h>
@@ -206,7 +206,7 @@ IntelNativeGraphicsAdapter::IntelNativeGraphicsAdapter(PCI::Address address)
VERIFY(m_framebuffer_pitch != 0);
VERIFY(m_framebuffer_height != 0);
VERIFY(m_framebuffer_width != 0);
- m_framebuffer_console = Graphics::FramebufferConsole::initialize(framebuffer_address, m_framebuffer_width, m_framebuffer_height, m_framebuffer_pitch);
+ m_framebuffer_console = Graphics::ContiguousFramebufferConsole::initialize(framebuffer_address, m_framebuffer_width, m_framebuffer_height, m_framebuffer_pitch);
// FIXME: This is a very wrong way to do this...
GraphicsManagement::the().m_console = m_framebuffer_console;
}
diff --git a/Kernel/Graphics/VGACompatibleAdapter.cpp b/Kernel/Graphics/VGACompatibleAdapter.cpp
index 53603bbce6..dbe5a85ebc 100644
--- a/Kernel/Graphics/VGACompatibleAdapter.cpp
+++ b/Kernel/Graphics/VGACompatibleAdapter.cpp
@@ -4,7 +4,7 @@
* SPDX-License-Identifier: BSD-2-Clause
*/
-#include <Kernel/Graphics/Console/FramebufferConsole.h>
+#include <Kernel/Graphics/Console/ContiguousFramebufferConsole.h>
#include <Kernel/Graphics/Console/TextModeConsole.h>
#include <Kernel/Graphics/GraphicsManagement.h>
#include <Kernel/Graphics/VGACompatibleAdapter.h>
@@ -53,7 +53,7 @@ UNMAP_AFTER_INIT VGACompatibleAdapter::VGACompatibleAdapter(PCI::Address address
, m_framebuffer_height(framebuffer_height)
, m_framebuffer_pitch(framebuffer_pitch)
{
- m_framebuffer_console = Graphics::FramebufferConsole::initialize(framebuffer_address, framebuffer_width, framebuffer_height, framebuffer_pitch);
+ m_framebuffer_console = Graphics::ContiguousFramebufferConsole::initialize(framebuffer_address, framebuffer_width, framebuffer_height, framebuffer_pitch);
// FIXME: This is a very wrong way to do this...
GraphicsManagement::the().m_console = m_framebuffer_console;
}