1
Files
2022-07-24 23:13:12 +02:00

43 lines
1.6 KiB
C++

/*****************************************************************************
* *
* V E S A *
* *
*---------------------------------------------------------------------------*
* Beschreibung: VESA-Treiber ueber 16-Bit BIOS. *
* *
* Autor: Michael Schoettner, HHU, 19.5.2022 *
*****************************************************************************/
#ifndef VESA_include__
#define VESA_include__
#include "devices/LFBgraphics.h"
#include "user/lib/utility/Logger.h"
// Ausgewaehlte Grafikmodi mit Mode-Nummer
constexpr const unsigned int MODE_640_480_16BITS = 0x111;
constexpr const unsigned int MODE_640_480_24BITS = 0x112;
constexpr const unsigned int MODE_800_600_16BITS = 0x114;
constexpr const unsigned int MODE_800_600_24BITS = 0x115;
constexpr const unsigned int MODE_1024_768_16BITS = 0x117;
constexpr const unsigned int MODE_1024_768_24BITS = 0x118;
class VESA : public LFBgraphics {
private:
int mode_nr; // Nummer des Modus
NamedLogger log;
public:
VESA(const VESA& copy) = delete; // Verhindere Kopieren
VESA() : log("VESA") {}
// Can't make singleton because atexit
// Bestimmten Grafikmodus einschalten
bool initGraphicMode(unsigned short mode);
static void initTextMode();
};
#endif