3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS kernel
5 * FILE: lib/ntdll/dbg/print.c
6 * PURPOSE: Debug output
7 * PROGRAMMER: Eric Kohl
12 #include <ddk/ntddk.h>
18 /* FUNCTIONS ***************************************************************/
20 ULONG
DbgService (ULONG Service
, PVOID Context1
, PVOID Context2
);
21 __asm__ ("\n\t.global _DbgService\n\t"
23 "mov 4(%esp), %eax\n\t"
24 "mov 8(%esp), %ecx\n\t"
25 "mov 12(%esp), %edx\n\t"
40 ANSI_STRING DebugString
;
44 /* init ansi string */
45 DebugString
.Buffer
= Buffer
;
46 DebugString
.MaximumLength
= sizeof(Buffer
);
48 va_start (ap
, Format
);
49 DebugString
.Length
= _vsnprintf (Buffer
, sizeof(Buffer
), Format
, ap
);
52 DbgService (1, &DebugString
, NULL
);
54 return (ULONG
)DebugString
.Length
;
62 DbgPrint(PCH Format
, ...)
64 ANSI_STRING DebugString
;
68 /* init ansi string */
69 DebugString
.Buffer
= Buffer
;
70 DebugString
.MaximumLength
= sizeof(Buffer
);
72 va_start (ap
, Format
);
73 DebugString
.Length
= _vsnprintf (Buffer
, sizeof(Buffer
), Format
, ap
);
77 return DbgPrintEx (0, 0, DebugString
.Buffer
);
96 Input
.MaximumLength
= InputSize
;
97 Input
.Buffer
= InputString
;
99 Output
.Length
= strlen (OutputString
);
100 Output
.MaximumLength
= Output
.Length
+ 1;
101 Output
.Buffer
= OutputString
;