Migrate KD subsystem to C++
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (amd64, release) (push) Successful in 31s
Builds / ExectOS (i686, debug) (push) Successful in 28s
Builds / ExectOS (i686, release) (push) Successful in 26s

This commit is contained in:
2025-09-13 23:40:07 +02:00
parent 4592955da1
commit 79ec28641a
12 changed files with 453 additions and 406 deletions

31
xtoskrnl/kd/data.cc Normal file
View File

@@ -0,0 +1,31 @@
/**
* PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory
* FILE: xtoskrnl/kd/globals.cc
* DESCRIPTION: Kernel Debugger global and static data
* DEVELOPERS: Aiken Harris <harraiken91@gmail.com>
*/
#include <xtos.hh>
/* Pointer to DbgPrint() routine */
PKD_PRINT_ROUTINE KdPrint = nullptr;
/* Kernel Debugger mode */
KD_DEBUG_MODE KD::DebugIo::DebugMode;
/* Debugger I/O providers initialization routines */
PKD_INIT_ROUTINE KD::DebugIo::IoProvidersInitRoutines[KDBG_PROVIDERS_COUNT] = {
InitializeFrameBufferProvider,
InitializeSerialPortProvider
};
/* List of active I/O providers */
LIST_ENTRY KD::DebugIo::Providers;
/* Debugger's serial port handle */
CPPORT KD::DebugIo::SerialPort;
/* Pre-defined serial port addresses */
ULONG KD::DebugIo::SerialPortList[COMPORT_COUNT] = COMPORT_ADDRESS;