Migrate KD subsystem to C++
This commit is contained in:
16
xtoskrnl/includes/kd.hh
Normal file
16
xtoskrnl/includes/kd.hh
Normal file
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/includes/kd.hh
|
||||
* DESCRIPTION: Kernel Debugger
|
||||
* DEVELOPERS: Aiken Harris <harraiken91@gmail.com>
|
||||
*/
|
||||
|
||||
#ifndef __XTOSKRNL_KD_HH
|
||||
#define __XTOSKRNL_KD_HH
|
||||
|
||||
#include <xtos.hh>
|
||||
|
||||
#include <kd/dbgio.hh>
|
||||
|
||||
#endif /* __XTOSKRNL_KD_HH */
|
40
xtoskrnl/includes/kd/dbgio.hh
Normal file
40
xtoskrnl/includes/kd/dbgio.hh
Normal file
@@ -0,0 +1,40 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/includes/kd/dbgio.hh
|
||||
* DESCRIPTION:
|
||||
* DEVELOPERS: Aiken Harris <harraiken91@gmail.com>
|
||||
*/
|
||||
|
||||
#ifndef __XTOSKRNL_KD_DBGIO_HH
|
||||
#define __XTOSKRNL_KD_DBGIO_HH
|
||||
|
||||
#include <xtos.hh>
|
||||
|
||||
|
||||
/* Kernel Debugger */
|
||||
namespace KD
|
||||
{
|
||||
class DebugIo
|
||||
{
|
||||
private:
|
||||
STATIC KD_DEBUG_MODE DebugMode;
|
||||
STATIC PKD_INIT_ROUTINE IoProvidersInitRoutines[KDBG_PROVIDERS_COUNT];
|
||||
STATIC LIST_ENTRY Providers;
|
||||
STATIC CPPORT SerialPort;
|
||||
STATIC ULONG SerialPortList[COMPORT_COUNT];
|
||||
|
||||
public:
|
||||
STATIC XTCDECL VOID DbgPrint(PCWSTR Format, ...);
|
||||
STATIC XTAPI XTSTATUS InitializeDebugIoProviders(VOID);
|
||||
STATIC XTAPI VOID SetPrintRoutine(PKD_PRINT_ROUTINE DebugPrintRoutine);
|
||||
|
||||
private:
|
||||
STATIC XTAPI XTSTATUS DetectDebugPorts(VOID);
|
||||
STATIC XTAPI XTSTATUS InitializeFrameBufferProvider(VOID);
|
||||
STATIC XTAPI XTSTATUS InitializeSerialPortProvider(VOID);
|
||||
STATIC XTCDECL XTSTATUS SerialWriteCharacter(WCHAR Character);
|
||||
};
|
||||
}
|
||||
|
||||
#endif /* __XTOSKRNL_KD_DBGIO_HH */
|
@@ -21,7 +21,7 @@ namespace KE
|
||||
STATIC PKERNEL_INITIALIZATION_BLOCK InitializationBlock;
|
||||
|
||||
public:
|
||||
STATIC XTAPI PVOID GetDebugPrint(VOID);
|
||||
STATIC XTAPI PKD_PRINT_ROUTINE GetDebugPrint(VOID);
|
||||
STATIC XTAPI SYSTEM_FIRMWARE_TYPE GetFirmwareType(VOID);
|
||||
STATIC XTAPI XTSTATUS GetKernelParameter(IN PCWSTR ParameterName,
|
||||
OUT PCWSTR *Parameter);
|
||||
|
@@ -29,6 +29,7 @@ extern "C" {
|
||||
#include <ar.hh>
|
||||
#include <ex.hh>
|
||||
#include <hl.hh>
|
||||
#include <kd.hh>
|
||||
#include <ke.hh>
|
||||
#include <po.hh>
|
||||
#include <rtl.hh>
|
||||
|
Reference in New Issue
Block a user