allow oring multiple DebugPort values
Modified: trunk/reactos/boot/freeldr/freeldr/debug.c

Modified: trunk/reactos/boot/freeldr/freeldr/debug.c
--- trunk/reactos/boot/freeldr/freeldr/debug.c	2005-01-28 06:07:48 UTC (rev 13344)
+++ trunk/reactos/boot/freeldr/freeldr/debug.c	2005-01-28 06:10:01 UTC (rev 13345)
@@ -46,9 +46,9 @@
 U32		DebugPrintMask = 0;
 #endif
 
-#define	SCREEN				0
-#define	RS232				1
-#define BOCHS				2
+#define	SCREEN				1
+#define	RS232				2
+#define BOCHS				4
 
 #define	COM1				1
 #define	COM2				2
@@ -60,6 +60,7 @@
 U32		DebugPort = RS232;
 //U32		DebugPort = SCREEN;
 //U32		DebugPort = BOCHS;
+//U32		DebugPort = SCREEN|BOCHS;
 U32		ComPort = COM1;
 //U32		BaudRate = 19200;
 U32		BaudRate = 115200;
@@ -81,7 +82,7 @@
 		DebugStartOfLine = TRUE;
 	}
 
-	if (DebugPort == RS232)
+	if (DebugPort & RS232)
 	{
 		if (Character == '\n')
 		{
@@ -89,11 +90,11 @@
 		}
 		Rs232PortPutByte(Character);
 	}
-	else if (DebugPort == BOCHS)
+	if (DebugPort & BOCHS)
 	{
 		WRITE_PORT_UCHAR((PUCHAR)BOCHS_OUTPUT_PORT, Character);
 	}
-	else
+	if (DebugPort & SCREEN)
 	{
 		MachConsPutChar(Character);
 	}
@@ -257,7 +258,7 @@
 			switch (c = *(format++))
 			{
 			case 'd': case 'u': case 'x':
-				
+
 				if (ll)
 				{
 					*convert_i64_to_ascii(str, c, *((unsigned long long*) dataptr)) = 0;
@@ -311,7 +312,7 @@
 VOID DebugPrint(U32 Mask, char *format, ...)
 {
 	int *dataptr = (int *) &format;
-	
+
 	// Mask out unwanted debug messages
 	if (!(Mask & DebugPrintMask))
 	{
@@ -340,7 +341,7 @@
 	PUCHAR	BufPtr = (PUCHAR)Buffer;
 	U32		Idx;
 	U32		Idx2;
-	
+
 	// Mask out unwanted debug messages
 	if (!(Mask & DebugPrintMask))
 	{