VOID
STDCALL
-KdpPrintToLog(PCH String)
+KdpPrintToLog(PCH String,
+ ULONG StringLength)
{
- ULONG StringLength = strlen(String);
-
/* Don't overflow */
if ((CurrentPosition + StringLength) > BufferSize) return;
VOID
STDCALL
-KdpSerialDebugPrint(LPSTR Message)
+KdpSerialDebugPrint(LPSTR Message,
+ ULONG Length)
{
PCHAR pch = (PCHAR) Message;
/* SCREEN FUNCTIONS **********************************************************/
+VOID
+STDCALL
+KdpScreenPrint(LPSTR Message,
+ ULONG Length)
+{
+ /* Call HAL */
+ HalDisplayString(Message);
+}
+
VOID
STDCALL
KdpScreenInit(PKD_DISPATCH_TABLE DispatchTable,
{
/* Write out the functions that we support for now */
DispatchTable->KdpInitRoutine = KdpScreenInit;
- DispatchTable->KdpPrintRoutine = HalDisplayString;
+ DispatchTable->KdpPrintRoutine = KdpScreenPrint;
/* Register as a Provider */
InsertTailList(&KdProviders, &DispatchTable->KdProvidersList);
ULONG
STDCALL
-KdpPrintString(PANSI_STRING String)
+KdpPrintString(LPSTR String,
+ ULONG Length)
{
if (!KdpDebugMode.Value) return 0;
- PCH pch = String->Buffer;
PLIST_ENTRY CurrentEntry;
PKD_DISPATCH_TABLE CurrentTable;
KdProvidersList);
/* Call it */
- CurrentTable->KdpPrintRoutine(pch);
+ CurrentTable->KdpPrintRoutine(String, Length);
/* Next Table */
CurrentEntry = CurrentEntry->Flink;
}
/* Call the Wrapper Routine */
- if (WrapperInitRoutine) WrapperTable.KdpPrintRoutine(pch);
+ if (WrapperInitRoutine) WrapperTable.KdpPrintRoutine(String, Length);
/* Return the Length */
- return((ULONG)String->Length);
+ return Length;
}
/* EOF */