18 #if defined(SARCH_PC98) 19 #define DEFAULT_DEBUG_PORT 2 20 #define DEFAULT_DEBUG_COM1_IRQ 4 21 #define DEFAULT_DEBUG_COM2_IRQ 5 22 #define DEFAULT_DEBUG_BAUD_RATE 9600 23 #define DEFAULT_BAUD_RATE 9600 25 #define DEFAULT_DEBUG_PORT 2 26 #define DEFAULT_DEBUG_COM1_IRQ 4 27 #define DEFAULT_DEBUG_COM2_IRQ 3 28 #define DEFAULT_DEBUG_BAUD_RATE 115200 29 #define DEFAULT_BAUD_RATE 19200 32 #if defined(_M_IX86) || defined(_M_AMD64) 33 #if defined(SARCH_PC98) 40 #elif defined(_M_MIPS) 45 #error Unknown architecture 48 #define MAX_COM_PORTS (sizeof(BaseArray) / sizeof(BaseArray[0]) - 1) 134 KDDBGPRINT(
"KdpPortInitialize, Port = COM%ld\n", ComPortNumber);
163 PCHAR CommandLine, PortString, BaudString, IrqString;
170 CommandLine = LoaderBlock->LoadOptions;
176 PortString =
strstr(CommandLine,
"DEBUGPORT");
177 BaudString =
strstr(CommandLine,
"BAUDRATE");
178 IrqString =
strstr(CommandLine,
"IRQ");
184 PortString +=
strlen(
"DEBUGPORT");
187 while (*PortString ==
' ') PortString++;
191 if (
strncmp(PortString,
"COM", 3) != 0)
205 ComPortNumber =
Value;
212 BaudString +=
strlen(
"BAUDRATE");
215 while (*BaudString ==
' ') BaudString++;
230 IrqString +=
strlen(
"IRQ");
233 while (*IrqString ==
' ') IrqString++;
NTSTATUS NTAPI KdDebuggerInitialize0(IN PLOADER_PARAMETER_BLOCK LoaderBlock OPTIONAL)
_In_ ULONG _In_ ULONG _In_ ULONG Length
ACPI_SIZE strlen(const char *String)
IN BOOLEAN OUT PSTR Buffer
#define STATUS_INVALID_PARAMETER
char * strstr(char *String1, char *String2)
KDP_STATUS NTAPI KdpReceiveByte(OUT PUCHAR OutByte)
NTSTATUS NTAPI KdRestore(IN BOOLEAN SleepTransition)
USHORT NTAPI CpGetByte(IN PCPPORT Port, OUT PUCHAR Byte, IN BOOLEAN Wait, IN BOOLEAN Poll)
BOOLEAN NTAPI CpDoesPortExist(IN PUCHAR Address)
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
KDP_STATUS NTAPI KdpPollBreakIn(VOID)
NTSTATUS NTAPI KdDebuggerInitialize1(IN PLOADER_PARAMETER_BLOCK LoaderBlock OPTIONAL)
#define DEFAULT_DEBUG_PORT
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
NTSTATUS NTAPI KdD0Transition(VOID)
#define DEFAULT_DEBUG_BAUD_RATE
KDP_STATUS NTAPI KdpPollByte(OUT PUCHAR OutByte)
#define NT_SUCCESS(StatCode)
int strncmp(const char *String1, const char *String2, ACPI_SIZE Count)
VOID NTAPI KdpSendByte(IN UCHAR Byte)
VOID NTAPI CpPutByte(IN PCPPORT Port, IN UCHAR Byte)
_Check_return_ long __cdecl atol(_In_z_ const char *_Str)
#define BREAKIN_PACKET_BYTE
NTSTATUS NTAPI CpInitialize(IN PCPPORT Port, IN PUCHAR Address, IN ULONG BaudRate)
_CRTIMP char *__cdecl _strupr(_Inout_z_ char *_String)
NTSTATUS NTAPI KdD3Transition(VOID)
static const ULONG BaseArray[]
#define DEFAULT_BAUD_RATE
void int int ULONGLONG int va_list * ap
NTSTATUS NTAPI KdSave(IN BOOLEAN SleepTransition)
NTSTATUS NTAPI KdpPortInitialize(IN ULONG ComPortNumber, IN ULONG ComPortBaudRate)
PULONG MinorVersion OPTIONAL