1

final cleanup

This commit is contained in:
2022-07-24 23:13:12 +02:00
parent f711e41216
commit d04f4495ae
10 changed files with 26 additions and 10 deletions

View File

@ -34,11 +34,17 @@ struct BIOScall_params {
extern BIOScall_params* BC_params;
class BIOS {
private:
// Initialisierung: manuelles Anlegen einer Funktion
BIOS();
public:
BIOS(const BIOS& copy) = delete; // Verhindere Kopieren
// Initialisierung: manuelles Anlegen einer Funktion
BIOS();
static BIOS& instance() {
static BIOS bios;
return bios;
}
// BIOS-Aufruf, per Software-Interrupt
static void Int(int inter);

View File

@ -11,7 +11,7 @@
#include "kernel/Globals.h"
CGA_Stream kout; // Ausgabe-Strom fuer Kernel
BIOS bios; // Schnittstelle zum 16-Bit BIOS
const BIOS& bios = BIOS::instance(); // Schnittstelle zum 16-Bit BIOS
VESA vesa; // VESA-Treiber
PIC pic; // Interrupt-Controller

View File

@ -30,7 +30,7 @@
// I wanted to make more of these singletons but there were problems with atexit missing because of nostdlib I guess
extern CGA_Stream kout; // Ausgabe-Strom fuer Kernel
extern BIOS bios; // Schnittstelle zum 16-Bit BIOS
extern const BIOS& bios; // Schnittstelle zum 16-Bit BIOS
extern VESA vesa; // VESA-Treiber
extern PIC pic; // Interrupt-Controller

View File

@ -29,6 +29,8 @@ public:
PIC() = default;
// Can't make static because atexit
// IRQ-Nummern von Geraeten
enum {
timer = 0, // Programmable Interrupt Timer (PIT)