<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -45,9 +45,9 @@ int main(int32 argc, char** argv)
 		repeats = atoi(argv[2]);
 	}
 
-	printf(&quot;%d\n&quot;,argc);
+	fprintf(stdout,&quot;%d\n&quot;,argc);
 	for(lcv = 0; lcv &lt; argc; lcv++)
-		printf(&quot;%s\n&quot;,argv[lcv]);
+		fprintf(stdout,&quot;%s\n&quot;,argv[lcv]);
 
 	/* Read in the data */
 	fp = fopen(&quot;input.dat&quot;,&quot;rb&quot;);
@@ -66,7 +66,7 @@ int main(int32 argc, char** argv)
 	/* FFT */
 	/*-------------------------------------------*/
 	FFT aFFT(N);
-	printf(&quot;FFT Created\n&quot;);
+	fprintf(stdout,&quot;FFT Created\n&quot;);
 	
 	time_0 = clock();
 	
@@ -78,7 +78,7 @@ int main(int32 argc, char** argv)
 
 	t1 = (double)(time_1 - time_0) /CLOCKS_PER_SEC;
 
-	printf(&quot;Time: %f\n&quot;,t1);
+	fprintf(stdout,&quot;Time: %f\n&quot;,t1);
 
 	fpo = fopen(&quot;output.dat&quot;,&quot;wb&quot;);
 	if(fpo != NULL)</diff>
      <filename>accessories/fft-test.cpp</filename>
    </modified>
    <modified>
      <diff></diff>
      <filename>gps-gse</filename>
    </modified>
    <modified>
      <diff></diff>
      <filename>gps-sdr</filename>
    </modified>
    <modified>
      <diff>@@ -136,8 +136,8 @@ GUI_Serial::GUI_Serial()
 	byte_count 		= 0;
 	serial 			= 0;
 	npipe_open 		= false;
-	npipe[READ] 	= NULL;
-	npipe[WRITE] 	= NULL;
+	npipe[READ] 	= -1;
+	npipe[WRITE] 	= -1;
 	lfile 			= NULL;
 	packet_count[LAST_M_ID] = 0;
 	decoded_packet.tic = decoded_packet.id = decoded_packet.length = 0;
@@ -179,8 +179,8 @@ void GUI_Serial::openSerial()
 	spipe = open(&quot;/dev/ttyS0&quot;, O_RDWR | O_NOCTTY | O_NONBLOCK);
     if(spipe &lt; 0)
     {
-		npipe[READ] = NULL;
-		npipe[WRITE] = NULL;
+		npipe[READ] = -1;
+		npipe[WRITE] = -1;
 		npipe_open = false;
     	return;
     }
@@ -246,8 +246,8 @@ void GUI_Serial::setPipe(bool _status)
 	{
 		close(npipe[READ]);
 		close(npipe[WRITE]);
-		npipe[READ] = NULL;
-		npipe[WRITE] = NULL;
+		npipe[READ] = -1;
+		npipe[WRITE] = -1;
 	}
 }
 /*----------------------------------------------------------------------------------------------*/
@@ -262,8 +262,8 @@ void GUI_Serial::setIO(int32 _serial)
 		npipe_open = false;
 		close(npipe[READ]);
 		close(npipe[WRITE]);
-		npipe[READ] = NULL;
-		npipe[WRITE] = NULL;
+		npipe[READ] = -1;
+		npipe[WRITE] = -1;
 	}
 
 	serial = _serial;</diff>
      <filename>gse/src/gui_serial.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -72,6 +72,7 @@ typedef struct _Options_S
 	int32	mode;			//!&lt; Run in a  2 antenna mode with 2 DBS-RXs, Run in a  2 antenna mode, board A L1, board B L2
 	int32	decimate;
 	int32	realtime;
+	int32	tlm_type;		//!&lt; Telemetry type (named pipe/serial)
 	double	f_lo_a;			//!&lt; LO freq for board A
 	double	f_ddc_a;		//!&lt; DDC freq for board A
 	double	f_lo_b;			//!&lt; LO freq for board B</diff>
      <filename>includes/sdr_structs.h</filename>
    </modified>
    <modified>
      <diff>@@ -46,17 +46,18 @@
 /*----------------------------------------------------------------------------------------------*/
 void usage(char *_str)
 {
-	fprintf(stderr, &quot;\n&quot;);
-	fprintf(stderr, &quot;usage: [-c] [-v] [-gr] [-gi] [-d] [-l] [-w] [-x]\n&quot;);
-	fprintf(stderr, &quot;[-c] log high rate channel data\n&quot;);
-	fprintf(stderr, &quot;[-v] be verbose \n&quot;);
-	fprintf(stderr, &quot;[-gr] &lt;gain&gt; set rf gain in dB (DBSRX only)\n&quot;);
-	fprintf(stderr, &quot;[-gi] &lt;gain&gt; set if gain in dB (DBSRX only)\n&quot;);
-	fprintf(stderr, &quot;[-d] operate in two antenna mode, A &amp; B as L1\n&quot;);
-	fprintf(stderr, &quot;[-l] operate in L1-L2 mode, A as L1, B as L2\n&quot;);
-	fprintf(stderr, &quot;[-w] &lt;bandwidth&gt; bandwidth of lowpass filter\n&quot;);
-	fprintf(stderr, &quot;[-x] the USRP samples at a modified 65.536 MHz (default is 64 MHz)\n&quot;);
-	fflush(stderr);
+	fprintf(stdout,&quot;\n&quot;);
+	fprintf(stdout,&quot;usage: [-c] [-v] [-gr] [-gi] [-d] [-l] [-w] [-x] [-s]\n&quot;);
+	fprintf(stdout,&quot;[-c] log high rate channel data\n&quot;);
+	fprintf(stdout,&quot;[-v] be verbose \n&quot;);
+	fprintf(stdout,&quot;[-gr] &lt;gain&gt; set rf gain in dB (DBSRX only)\n&quot;);
+	fprintf(stdout,&quot;[-gi] &lt;gain&gt; set if gain in dB (DBSRX only)\n&quot;);
+	fprintf(stdout,&quot;[-d] operate in two antenna mode, A &amp; B as L1\n&quot;);
+	fprintf(stdout,&quot;[-l] operate in L1-L2 mode, A as L1, B as L2\n&quot;);
+	fprintf(stdout,&quot;[-w] &lt;bandwidth&gt; bandwidth of lowpass filter\n&quot;);
+	fprintf(stdout,&quot;[-x] the USRP samples at a modified 65.536 MHz (default is 64 MHz)\n&quot;);
+	fprintf(stdout,&quot;[-s] output over /dev/ttyS0 instead of the named pipe\n&quot;);
+	fflush(stdout);
 	exit(1);
 }
 /*----------------------------------------------------------------------------------------------*/
@@ -70,18 +71,19 @@ void echo_options()
 
 	if(gopt.verbose)
 	{
-		fprintf(stderr, &quot;\n&quot;);
-		fprintf(stderr, &quot;Verbose:\t\t\t %d\n&quot;,gopt.verbose);
-		fprintf(stderr, &quot;Log channel:\t\t\t %d\n&quot;,gopt.log_channel);
-		fprintf(stderr, &quot;USRP Sample Rate:\t% 15.2f\n&quot;,gopt.f_sample);
-		fprintf(stderr, &quot;USRP Decimation:\t% 15d\n&quot;,gopt.decimate);
-		fprintf(stderr, &quot;DBSRX LO A:\t\t% 15.2f\n&quot;,gopt.f_lo_a);
-		fprintf(stderr, &quot;DBSRX LO B:\t\t% 15.2f\n&quot;,gopt.f_lo_b);
-		fprintf(stderr, &quot;RF Gain:\t\t% 15.2f\n&quot;,gopt.gr);
-		fprintf(stderr, &quot;IF Gain:\t\t% 15.2f\n&quot;,gopt.gi);
-		fprintf(stderr, &quot;DBSRX Bandwidth:\t% 15.2f\n&quot;,gopt.bandwidth);
-		fprintf(stderr, &quot;\n&quot;);
-		fflush(stderr);
+		fprintf(stdout,&quot;\n&quot;);
+		fprintf(stdout,&quot;Verbose:          %13d\n&quot;,gopt.verbose);
+		fprintf(stdout,&quot;Log channel:      %13d\n&quot;,gopt.log_channel);
+		fprintf(stdout,&quot;Telemetry:        %13d\n&quot;,gopt.tlm_type);
+		fprintf(stdout,&quot;USRP Decimation:  %13d\n&quot;,gopt.decimate);
+		fprintf(stdout,&quot;USRP Sample Rate: %13.2f\n&quot;,gopt.f_sample);
+		fprintf(stdout,&quot;DBSRX LO A:       %13.2f\n&quot;,gopt.f_lo_a);
+		fprintf(stdout,&quot;DBSRX LO B:       %13.2f\n&quot;,gopt.f_lo_b);
+		fprintf(stdout,&quot;RF Gain:          %13.2f\n&quot;,gopt.gr);
+		fprintf(stdout,&quot;IF Gain:          %13.2f\n&quot;,gopt.gi);
+		fprintf(stdout,&quot;DBSRX Bandwidth:  %13.2f\n&quot;,gopt.bandwidth);
+		fprintf(stdout,&quot;\n&quot;);
+		fflush(stdout);
 	}
 
 }
@@ -99,6 +101,7 @@ void Parse_Arguments(int32 argc, char* argv[])
 	/* Set default options */
 	gopt.verbose 		= 0;
 	gopt.log_channel 	= 0;
+	gopt.tlm_type		= TELEM_NAMED_PIPE;
 	gopt.mode 			= 0;		//!&lt; Single board L1 mode by default
 	gopt.decimate		= 16;		//!&lt; Default to work with both 65.536 and 64 MHz clocks
 	gopt.gr 			= 40; 		//!&lt; 40 dB of RF gain
@@ -167,6 +170,9 @@ void Parse_Arguments(int32 argc, char* argv[])
 			case 'x':
 				gopt.f_sample = 65.536e6;
 				break;
+			case 's':
+				gopt.tlm_type = TELEM_SERIAL;
+				break;
 			default:
 				usage(argv[0]);
 		}
@@ -186,7 +192,7 @@ int32 Hardware_Init(void)
 	if(CPU_MMX())
 	{
 		if(gopt.verbose)
-			printf(&quot;Detected MMX\n&quot;);
+			fprintf(stdout,&quot;Detected MMX\n&quot;);
 	}
 	else
 		return(false);
@@ -194,7 +200,7 @@ int32 Hardware_Init(void)
 	if(CPU_SSE())
 	{
 		if(gopt.verbose)
-			printf(&quot;Detected SSE\n&quot;);
+			fprintf(stdout,&quot;Detected SSE\n&quot;);
 	}
 	else
 		return(false);
@@ -202,7 +208,7 @@ int32 Hardware_Init(void)
 	if(CPU_SSE2())
 	{
 		if(gopt.verbose)
-			printf(&quot;Detected SSE2\n&quot;);
+			fprintf(stdout,&quot;Detected SSE2\n&quot;);
 	}
 	else
 		return(false);
@@ -210,25 +216,25 @@ int32 Hardware_Init(void)
 	if(CPU_SSE3())
 	{
 		if(gopt.verbose)
-			printf(&quot;Detected SSE3\n&quot;);
+			fprintf(stdout,&quot;Detected SSE3\n&quot;);
 	}
 
 	if(CPU_SSSE3())
 	{
 		if(gopt.verbose)
-			printf(&quot;Detected SSSE3\n&quot;);
+			fprintf(stdout,&quot;Detected SSSE3\n&quot;);
 	}
 
 	if(CPU_SSE41())
 	{
 		if(gopt.verbose)
-			printf(&quot;Detected SSE4.1\n&quot;);
+			fprintf(stdout,&quot;Detected SSE4.1\n&quot;);
 	}
 
 	if(CPU_SSE42())
 	{
 		if(gopt.verbose)
-			printf(&quot;Detected SSE4.2\n&quot;);
+			fprintf(stdout,&quot;Detected SSE4.2\n&quot;);
 	}
 
 	return(1);
@@ -261,6 +267,9 @@ int32 Object_Init(void)
 	/* Output info to the GUI */
 	pTelemetry = new Telemetry();
 
+	/* Serial or named pipe */
+	pTelemetry-&gt;SetType(gopt.tlm_type);
+
 	/* execute user commands */
 	pCommando = new Commando();
 
@@ -281,7 +290,7 @@ int32 Object_Init(void)
 
 	if(gopt.verbose)
 	{
-		printf(&quot;Cleared Object Init\n&quot;);
+		fprintf(stdout,&quot;Cleared Object Init\n&quot;);
 		fflush(stdout);
 	}
 
@@ -328,7 +337,7 @@ int32 Pipes_Init(void)
 
 	if(gopt.verbose)
 	{
-		printf(&quot;Cleared Pipes Init\n&quot;);
+		fprintf(stdout,&quot;Cleared Pipes Init\n&quot;);
 		fflush(stdout);
 	}
 </diff>
      <filename>main/init.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -44,7 +44,7 @@ int main(int argc, char* argv[])
 	if(success == false)
 	{
 		Hardware_Shutdown();
-		printf(&quot;Hardware_Init() failed, aborting.\n&quot;);
+		fprintf(stderr,&quot;Hardware_Init() failed, aborting.\n&quot;);
 		return(-1);
 	}
 
@@ -56,7 +56,7 @@ int main(int argc, char* argv[])
 	{
 		Pipes_Shutdown();
 		Hardware_Shutdown();
-		printf(&quot;Pipes_Init() failed, aborting.\n&quot;);
+		fprintf(stderr,&quot;Pipes_Init() failed, aborting.\n&quot;);
 		return(-1);
 	}
 
@@ -69,7 +69,7 @@ int main(int argc, char* argv[])
 		Pipes_Shutdown();
 		Object_Shutdown();
 		Hardware_Shutdown();
-		printf(&quot;Object_Init() failed, aborting.\n&quot;);
+		fprintf(stderr,&quot;Object_Init() failed, aborting.\n&quot;);
 		return(-1);
 	}
 
@@ -83,7 +83,7 @@ int main(int argc, char* argv[])
 		Pipes_Shutdown();
 		Object_Shutdown();
 		Hardware_Shutdown();
-		printf(&quot;Thread_Init() failed, aborting.\n&quot;);
+		fprintf(stderr,&quot;Thread_Init() failed, aborting.\n&quot;);
 		return(-1);
 	}
 </diff>
      <filename>main/main.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -57,7 +57,7 @@ void Acquisition::Start()
 	Start_Thread(Acquisition_Thread, NULL);
 
 	if(gopt.verbose)
-		printf(&quot;Acquisition thread started\n&quot;);
+		fprintf(stdout,&quot;Acquisition thread started\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -142,7 +142,7 @@ Acquisition::Acquisition(float _fsample, float _fif):Threaded_Object(&quot;ACQTASK&quot;)
 	pcFFT = new FFT(32);
 
 	if(gopt.verbose)
-		printf(&quot;Creating Acquisition\n&quot;);
+		fprintf(stdout,&quot;Creating Acquisition\n&quot;);
 
 }
 /*----------------------------------------------------------------------------------------------*/
@@ -177,7 +177,7 @@ Acquisition::~Acquisition()
 	delete [] _750Hzwipeoff;
 
 	if(gopt.verbose)
-		printf(&quot;Destructing Acquisition\n&quot;);
+		fprintf(stdout,&quot;Destructing Acquisition\n&quot;);
 
 }
 /*----------------------------------------------------------------------------------------------*/
@@ -661,7 +661,7 @@ void Acquisition::Import()
 		{
 			if((packet.count - lastcount) != 1)
 			{
-				printf(&quot;Broken GPS stream %d,%d\n&quot;,packet.count,lastcount);
+				fprintf(stdout,&quot;Broken GPS stream %d,%d\n&quot;,packet.count,lastcount);
 				ms = 0; /* Recollect data */
 			}
 		}
@@ -688,27 +688,27 @@ void Acquisition::Export(char * _fname)
 	FILE *fp;
 	Acq_Command_S *p;
 
-	if(_fname == NULL)
-	{
-		fp = fopen(&quot;acq.txt&quot;,&quot;wa&quot;);
-		if(fp == NULL)
-			return;
-		fseek(fp, 0x0, SEEK_SET);
-
-	}
-	else
-	{
-		fp = fopen(_fname,&quot;wt&quot;);
-		if(fp == NULL)
-			return;
-	}
-
-	for(lcv = 0; lcv &lt; MAX_SV; lcv++)
-	{
-		p = &amp;results[lcv];
-		fprintf(fp, &quot;%2d, %2d, %12d, %12d, %12d, %1d\n&quot;,p-&gt;type,lcv+1,p-&gt;code_phase,p-&gt;doppler,p-&gt;magnitude,p-&gt;success);
-	}
-	fclose(fp);
+//	if(_fname == NULL)
+//	{
+//		fp = fopen(&quot;acq.txt&quot;,&quot;wa&quot;);
+//		if(fp == NULL)
+//			return;
+//		fseek(fp, 0x0, SEEK_SET);
+//
+//	}
+//	else
+//	{
+//		fp = fopen(_fname,&quot;wt&quot;);
+//		if(fp == NULL)
+//			return;
+//	}
+//
+//	for(lcv = 0; lcv &lt; MAX_SV; lcv++)
+//	{
+//		p = &amp;results[lcv];
+//		ffprintf(stdout,fp, &quot;%2d, %2d, %12d, %12d, %12d, %1d\n&quot;,p-&gt;type,lcv+1,p-&gt;code_phase,p-&gt;doppler,p-&gt;magnitude,p-&gt;success);
+//	}
+//	fclose(fp);
 
 	/* Write result to the tracking task */
 	results[request.sv].count = request.count;</diff>
      <filename>objects/acquisition.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -35,7 +35,7 @@ Channel::Channel(int32 _chan):Threaded_Object(&quot;CHNTASK&quot;)
 	chan = _chan;
 
 	if(gopt.verbose)
-		printf(&quot;Creating Channel %d\n&quot;,chan);
+		fprintf(stdout,&quot;Creating Channel %d\n&quot;,chan);
 
 	if(gopt.log_channel)
 	{
@@ -61,7 +61,7 @@ Channel::~Channel()
 		fclose(fp);
 
 	if(gopt.verbose)
-		printf(&quot;Destructing Channel %d\n&quot;,chan);
+		fprintf(stdout,&quot;Destructing Channel %d\n&quot;,chan);
 
 }
 /*----------------------------------------------------------------------------------------------*/</diff>
      <filename>objects/channel.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -31,7 +31,7 @@
 void *Commando_Thread(void *_arg)
 {
 
-	while(1)
+	while(grun)
 	{
 		pCommando-&gt;Import();
 	}
@@ -47,7 +47,7 @@ void Commando::Start()
 	Start_Thread(Commando_Thread, NULL);
 
 	if(gopt.verbose)
-		printf(&quot;Commando thread started\n&quot;);
+		fprintf(stdout,&quot;Commando thread started\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -86,7 +86,7 @@ Commando::Commando():Threaded_Object(&quot;CMDTASK&quot;)
 	cmd_handlers[LAST_C_ID] 				= NULL;
 
 	if(gopt.verbose)
-		printf(&quot;Creating Commando\n&quot;);
+		fprintf(stdout,&quot;Creating Commando\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -95,7 +95,7 @@ Commando::Commando():Threaded_Object(&quot;CMDTASK&quot;)
 Commando::~Commando()
 {
 	if(gopt.verbose)
-		printf(&quot;Destructing Commando\n&quot;);
+		fprintf(stdout,&quot;Destructing Commando\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 </diff>
      <filename>objects/commando.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -54,7 +54,7 @@ void Correlator::Start()
 	Start_Thread(Correlator_Thread, NULL);
 
 	if(gopt.verbose)
-		printf(&quot;Correlator thread started\n&quot;);
+		fprintf(stdout,&quot;Correlator thread started\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -94,7 +94,7 @@ Correlator::Correlator():Threaded_Object(&quot;CORTASK&quot;)
 	SamplePRN();
 
 	if(gopt.verbose)
-		printf(&quot;Creating Correlator\n&quot;);
+		fprintf(stdout,&quot;Creating Correlator\n&quot;);
 
 }
 /*----------------------------------------------------------------------------------------------*/
@@ -110,7 +110,7 @@ Correlator::~Correlator()
 	delete [] main_code_rows;
 
 	if(gopt.verbose)
-		printf(&quot;Destructing Correlator\n&quot;);
+		fprintf(stdout,&quot;Destructing Correlator\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 </diff>
      <filename>objects/correlator.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -33,7 +33,7 @@ void *Ephemeris_Thread(void *_arg)
 
 	Ephemeris *aEphemeris = pEphemeris;
 
-	while(1)
+	while(grun)
 	{
 		aEphemeris-&gt;Import();
 	}
@@ -51,7 +51,7 @@ void Ephemeris::Start()
 	Start_Thread(Ephemeris_Thread, NULL);
 
 	if(gopt.verbose)
-		printf(&quot;Ephemeris thread started\n&quot;);
+		fprintf(stdout,&quot;Ephemeris thread started\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -72,7 +72,7 @@ Ephemeris::Ephemeris():Threaded_Object(&quot;EPHTASK&quot;)
 	ClearAlmanac(MAX_SV);
 
 	if(gopt.verbose)
-		printf(&quot;Creating Ephemeris\n&quot;);
+		fprintf(stdout,&quot;Creating Ephemeris\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -81,7 +81,7 @@ Ephemeris::Ephemeris():Threaded_Object(&quot;EPHTASK&quot;)
 Ephemeris::~Ephemeris()
 {
 	if(gopt.verbose)
-		printf(&quot;Destructing Ephemeris\n&quot;);
+		fprintf(stdout,&quot;Destructing Ephemeris\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 </diff>
      <filename>objects/ephemeris.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -136,7 +136,7 @@ void FFT::initW()
 		W[lcv].nq = (short)(-s);
 		W[lcv].ni = (short)(c);
 
-//		printf(&quot;W:%d,%d\n&quot;,W[lcv].i,W[lcv].q);
+//		fprintf(stdout,&quot;W:%d,%d\n&quot;,W[lcv].i,W[lcv].q);
 
 		//Inverse twiddles
 		iW[lcv].i = (short)(c);
@@ -165,7 +165,7 @@ void FFT::initBR()
 
 		BR[lcv] = index;
 
-//		printf(&quot;BR:%d\n&quot;,BR[lcv]);
+//		fprintf(stdout,&quot;BR:%d\n&quot;,BR[lcv]);
 	}
 
 }</diff>
      <filename>objects/fft.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -52,7 +52,7 @@ void FIFO::Start()
 	Start_Thread(FIFO_Thread, NULL);
 
 	if(gopt.verbose)
-		printf(&quot;FIFO thread started\n&quot;);
+		fprintf(stdout,&quot;FIFO thread started\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -90,7 +90,7 @@ FIFO::FIFO():Threaded_Object(&quot;FIFTASK&quot;)
 	sem_init(&amp;sem_empty, NULL, FIFO_DEPTH);
 
 	if(gopt.verbose)
-		printf(&quot;Creating FIFO\n&quot;);
+		fprintf(stdout,&quot;Creating FIFO\n&quot;);
 
 }
 /*----------------------------------------------------------------------------------------------*/
@@ -107,7 +107,7 @@ FIFO::~FIFO()
 	delete [] buff;
 
 	if(gopt.verbose)
-		printf(&quot;Destructing FIFO\n&quot;);
+		fprintf(stdout,&quot;Destructing FIFO\n&quot;);
 
 }
 /*----------------------------------------------------------------------------------------------*/</diff>
      <filename>objects/fifo.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -32,7 +32,7 @@
 #include &quot;telemetry.h&quot;
 #include &quot;gps_source.h&quot;
 
-#define FIFO_DEPTH (5000)	//!&lt; In ms
+#define FIFO_DEPTH (2500)	//!&lt; In ms
 
 /*! \ingroup CLASSES
  *</diff>
      <filename>objects/fifo.h</filename>
    </modified>
    <modified>
      <diff>@@ -34,7 +34,7 @@ GPS_Source::GPS_Source(Options_S *_opt)
 	Open_USRP_V1();
 
 	if(gopt.verbose)
-		printf(&quot;Creating GPS Source\n&quot;);
+		fprintf(stdout,&quot;Creating GPS Source\n&quot;);
 }
 
 GPS_Source::~GPS_Source()
@@ -42,7 +42,7 @@ GPS_Source::~GPS_Source()
 	Close_USRP_V1();
 
 	if(gopt.verbose)
-		printf(&quot;Destructing GPS Source\n&quot;);
+		fprintf(stdout,&quot;Destructing GPS Source\n&quot;);
 }
 
 void GPS_Source::Open_USRP_V1()
@@ -85,7 +85,7 @@ void GPS_Source::Open_USRP_V1()
 	if(urx == NULL)
 	{
 		if(opt.verbose)
-			printf(&quot;usrp_standard_rx::make FAILED\n&quot;);
+			fprintf(stdout,&quot;usrp_standard_rx::make FAILED\n&quot;);
 	}
 
 	/* Set mux */
@@ -133,12 +133,12 @@ void GPS_Source::Open_USRP_V1()
 
 		if(opt.verbose)
 		{
-			printf(&quot;DBS-RX A Configuration\n&quot;);
-			printf(&quot;DBS-RX A BW: \t\t% 15.2f\n&quot;,dbs_rx_a-&gt;bw());
-			printf(&quot;DBS-RX A LO: \t\t% 15.2f\n&quot;,dbs_rx_a-&gt;freq());
-			printf(&quot;DBS-RX A IF Gain: \t% 15.2f\n&quot;,dbs_rx_a-&gt;if_gain());
-			printf(&quot;DBS-RX A RF Gain: \t% 15.2f\n&quot;,dbs_rx_a-&gt;rf_gain());
-			printf(&quot;DDC 0: \t\t\t% 15.2f\n&quot;,urx-&gt;rx_freq(0));
+			fprintf(stdout,&quot;DBS-RX A Configuration\n&quot;);
+			fprintf(stdout,&quot;BW:      %15.2f\n&quot;,dbs_rx_a-&gt;bw());
+			fprintf(stdout,&quot;LO:      %15.2f\n&quot;,dbs_rx_a-&gt;freq());
+			fprintf(stdout,&quot;IF Gain: %15.2f\n&quot;,dbs_rx_a-&gt;if_gain());
+			fprintf(stdout,&quot;RF Gain: %15.2f\n&quot;,dbs_rx_a-&gt;rf_gain());
+			fprintf(stdout,&quot;DDC 0:   %15.2f\n&quot;,urx-&gt;rx_freq(0));
 		}
 	}
 
@@ -184,19 +184,20 @@ void GPS_Source::Open_USRP_V1()
 
 			if(opt.verbose)
 			{
-				printf(&quot;DBS-RX B Actual Configuration\n&quot;);
-				printf(&quot;DBS-RX B BW: \t\t% 15.2f\n&quot;,dbs_rx_b-&gt;bw());
-				printf(&quot;DBS-RX B LO: \t\t% 15.2f\n&quot;,dbs_rx_b-&gt;freq());
-				printf(&quot;DBS-RX B IF Gain: \t% 15.2f\n&quot;,dbs_rx_b-&gt;if_gain());
-				printf(&quot;DBS-RX B RF Gain: \t% 15.2f\n&quot;,dbs_rx_b-&gt;rf_gain());
-				printf(&quot;DDC 1: \t\t\t% 15.2f\n&quot;,urx-&gt;rx_freq(1));
+				fprintf(stdout,&quot;DBS-RX B Configuration\n&quot;);
+				fprintf(stdout,&quot;BW:      %15.2f\n&quot;,dbs_rx_b-&gt;bw());
+				fprintf(stdout,&quot;LO:      %15.2f\n&quot;,dbs_rx_b-&gt;freq());
+				fprintf(stdout,&quot;IF Gain: %15.2f\n&quot;,dbs_rx_b-&gt;if_gain());
+				fprintf(stdout,&quot;RF Gain: %15.2f\n&quot;,dbs_rx_b-&gt;rf_gain());
+				fprintf(stdout,&quot;DDC 0:   %15.2f\n&quot;,urx-&gt;rx_freq(0));
+
 			}
 
 		}
 	}
 
 	/* Start collecting data */
-	printf(&quot;USRP Start\n&quot;);
+	fprintf(stdout,&quot;USRP Start\n&quot;);
 
 	urx-&gt;start();
 
@@ -206,14 +207,8 @@ void GPS_Source::Open_USRP_V1()
 void GPS_Source::Close_USRP_V1()
 {
 
-	if(opt.verbose)
-		printf(&quot;Stopping USRP\n&quot;);
-
 	urx-&gt;stop();
 
-	if(opt.verbose)
-		printf(&quot;USRP Stopped\n&quot;);
-
 	if(dbs_rx_a != NULL)
 		delete dbs_rx_a;
 
@@ -223,6 +218,9 @@ void GPS_Source::Close_USRP_V1()
 	if(urx != NULL)
 		delete urx;
 
+	if(opt.verbose)
+		fprintf(stdout,&quot;Destructing USRP\n&quot;);
+
 }
 
 void GPS_Source::Read(ms_packet *_p)
@@ -270,7 +268,7 @@ void GPS_Source::Read(ms_packet *_p)
 //	{
 //		time(&amp;rawtime);
 //		timeinfo = localtime (&amp;rawtime);
-//		fprintf(stdout, &quot;\nUSRP overflow at time %s&quot;,asctime (timeinfo));
+//		ffprintf(stdout,stdout, &quot;\nUSRP overflow at time %s&quot;,asctime (timeinfo));
 //		fflush(stdout);
 //	}
 </diff>
      <filename>objects/gps_source.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -36,17 +36,18 @@ void *Keyboard_Thread(void *_arg)
 
 	while(grun)
 	{
-
 		key = getchar();
-		//printf(&quot;%c&quot;,(char)key);
+
+		fprintf(stderr,&quot;%c\n&quot;,(char)key);
 
 		if((char)key == 'Q')
 		{
 			grun = 0x0;
 		}
 
-		aKeyboard-&gt;IncExecTic();
+		usleep(1000);
 
+		aKeyboard-&gt;IncExecTic();
 	}
 
 	pthread_exit(0);
@@ -61,7 +62,7 @@ void Keyboard::Start()
 	Start_Thread(Keyboard_Thread, NULL);
 
 	if(gopt.verbose)
-		printf(&quot;Keyboard thread started\n&quot;);
+		fprintf(stdout,&quot;Keyboard thread started\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -70,7 +71,7 @@ void Keyboard::Start()
 Keyboard::Keyboard():Threaded_Object(&quot;KEYTASK&quot;)
 {
 	if(gopt.verbose)
-		printf(&quot;Creating Keyboard\n&quot;);
+		fprintf(stdout,&quot;Creating Keyboard\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -79,6 +80,6 @@ Keyboard::Keyboard():Threaded_Object(&quot;KEYTASK&quot;)
 Keyboard::~Keyboard()
 {
 	if(gopt.verbose)
-		printf(&quot;Destructing Keyboard\n&quot;);
+		fprintf(stdout,&quot;Destructing Keyboard\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/</diff>
      <filename>objects/keyboard.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -30,7 +30,7 @@
 void *PVT_Thread(void *_arg)
 {
 
-	while(1)
+	while(grun)
 	{
 		pPVT-&gt;Import();
 		pPVT-&gt;Navigate();
@@ -48,7 +48,7 @@ void PVT::Start()
 	Start_Thread(PVT_Thread, NULL);
 
 	if(gopt.verbose)
-		printf(&quot;PVT thread started\n&quot;);
+		fprintf(stdout,&quot;PVT thread started\n&quot;);
 
 }
 /*----------------------------------------------------------------------------------------------*/
@@ -58,7 +58,7 @@ void PVT::Start()
 PVT::~PVT()
 {
 	if(gopt.verbose)
-		printf(&quot;Destructing PVT\n&quot;);
+		fprintf(stdout,&quot;Destructing PVT\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -75,7 +75,7 @@ PVT::PVT():Threaded_Object(&quot;PVTTASK&quot;)
 	master_nav.stale_ticks = STALE_SPS_VALUE;
 
 	if(gopt.verbose)
-		printf(&quot;Creating PVT\n&quot;);
+		fprintf(stdout,&quot;Creating PVT\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 </diff>
      <filename>objects/pvt.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -31,7 +31,7 @@
 void *SV_Select_Thread(void *_arg)
 {
 
-	while(1)
+	while(grun)
 	{
 		pSV_Select-&gt;Import();
 	}
@@ -49,7 +49,7 @@ void SV_Select::Start()
 	Start_Thread(SV_Select_Thread, NULL);
 
 	if(gopt.verbose)
-		printf(&quot;SV_Select thread started\n&quot;);
+		fprintf(stdout,&quot;SV_Select thread started\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -81,7 +81,7 @@ SV_Select::SV_Select():Threaded_Object(&quot;SVSTASK&quot;)
 	config.strong_operation	= ACQ_OPERATION_STRONG;
 
 	if(gopt.verbose)
-		printf(&quot;Creating SV Select\n&quot;);
+		fprintf(stdout,&quot;Creating SV Select\n&quot;);
 
 }
 /*----------------------------------------------------------------------------------------------*/
@@ -91,7 +91,7 @@ SV_Select::SV_Select():Threaded_Object(&quot;SVSTASK&quot;)
 SV_Select::~SV_Select()
 {
 	if(gopt.verbose)
-		printf(&quot;Destructing SV Select\n&quot;);
+		fprintf(stdout,&quot;Destructing SV Select\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 </diff>
      <filename>objects/sv_select.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -31,6 +31,7 @@
 void lost_gui_pipe(int _sig)
 {
 	pTelemetry-&gt;ClosePipe();
+	fprintf(stderr,&quot;GUI disconnected\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -38,7 +39,7 @@ void lost_gui_pipe(int _sig)
 void *Telemetry_Thread(void *_arg)
 {
 
-	while(1)
+	while(grun)
 	{
 		pTelemetry-&gt;Import();
 		pTelemetry-&gt;Export();
@@ -55,7 +56,7 @@ void Telemetry::Start()
 	Start_Thread(Telemetry_Thread, NULL);
 
 	if(gopt.verbose)
-		printf(&quot;Telemetry thread started\n&quot;);
+		fprintf(stdout,&quot;Telemetry thread started\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -68,7 +69,7 @@ Telemetry::Telemetry():Threaded_Object(&quot;TLMTASK&quot;)
 	size = sizeof(Telemetry);
 
 	npipe_open = false;
-	npipe[READ] = npipe[WRITE] = 0;
+	npipe[READ] = npipe[WRITE] = -1;
 	pheader = (uint8 *)&amp;command_header;
 	pcommand = (uint8 *)&amp;command_body;
 
@@ -77,12 +78,12 @@ Telemetry::Telemetry():Threaded_Object(&quot;TLMTASK&quot;)
 	remove(&quot;/tmp/GPS2GUI&quot;);
 	fifo[WRITE] = mkfifo(&quot;/tmp/GPS2GUI&quot;, S_IRWXG | S_IRWXU | S_IRWXO);
 	if(fifo[WRITE] == -1)
-		printf(&quot;Error creating the named pipe&quot;);
+		fprintf(stderr,&quot;Error creating the named pipe /tmp/GPS2GUI\n&quot;);
 
 	remove(&quot;/tmp/GUI2GPS&quot;);
 	fifo[READ] = mkfifo(&quot;/tmp/GUI2GPS&quot;, S_IRWXG | S_IRWXU | S_IRWXO);
 	if(fifo[READ] == -1)
-		printf(&quot;Error creating the named pipe&quot;);
+		fprintf(stderr,&quot;Error creating the named pipe /tmp/GUI2GPS\n&quot;);
 
 	/* Build the function pointer array */
 	msg_handlers[FIRST_M_ID] 				= NULL;
@@ -145,7 +146,7 @@ Telemetry::Telemetry():Threaded_Object(&quot;TLMTASK&quot;)
 	msg_rates[LAST_M_ID] 				= 0;
 
 	if(gopt.verbose)
-		printf(&quot;Creating Telemetry\n&quot;);
+		fprintf(stdout,&quot;Creating Telemetry\n&quot;);
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -160,13 +161,26 @@ Telemetry::~Telemetry()
 	remove(&quot;/tmp/GUI2GPS&quot;);
 
 	if(gopt.verbose)
-		printf(&quot;Destructing Telemetry\n&quot;);
+		fprintf(stdout,&quot;Destructing Telemetry\n&quot;);
 
 }
 /*----------------------------------------------------------------------------------------------*/
 
 
 /*----------------------------------------------------------------------------------------------*/
+void Telemetry::SetType(int32 _type)
+{
+	if(_type == TELEM_NAMED_PIPE)
+		tlm_type = TELEM_NAMED_PIPE;
+	else
+		tlm_type = TELEM_SERIAL;
+
+	ClosePipe();
+}
+/*----------------------------------------------------------------------------------------------*/
+
+
+/*----------------------------------------------------------------------------------------------*/
 void Telemetry::OpenSerial()
 {
 	int32 spipe;
@@ -175,14 +189,14 @@ void Telemetry::OpenSerial()
 	spipe = open(&quot;/dev/ttyS0&quot;, O_RDWR | O_NOCTTY | O_NONBLOCK);
     if(spipe &lt; 0)
     {
-		npipe[READ] = NULL;
-		npipe[WRITE] = NULL;
+		npipe[READ] = -1;
+		npipe[WRITE] = -1;
 		npipe_open = false;
     	return;
     }
 
     memset(&amp;tty, 0x0, sizeof(tty));		//!&lt; Initialize the port settings structure to all zeros
-    tty.c_cflag =  B115200 | CS8 | CLOCAL | CREAD | CRTSCTS;	//!&lt; 8N1
+    tty.c_cflag =  B57600 | CLOCAL | CREAD | CS8;
     tty.c_iflag = IGNPAR;
     tty.c_oflag = 0;
     tty.c_lflag = 0;
@@ -191,7 +205,7 @@ void Telemetry::OpenSerial()
 
     tcflush(spipe, TCIFLUSH);				//!&lt; Flush old data
     tcsetattr(spipe, TCSANOW, &amp;tty);		//!&lt; Apply new settings
-    fcntl(spipe, F_SETFL, FASYNC);
+    fcntl(spipe, F_SETFL, FASYNC);			//!&lt; ???
 	fcntl(spipe, F_SETFL, O_NONBLOCK);		//!&lt; Nonblocking reads and writes
 
 	/* Alias the serial port */
@@ -214,15 +228,15 @@ void Telemetry::OpenPipe()
 		fcntl(npipe[READ] , F_SETFL, O_NONBLOCK);
 		fcntl(npipe[WRITE] , F_SETFL, O_NONBLOCK);
 		npipe_open = true;
-		printf(&quot;GUI connected\n&quot;);
+		fprintf(stdout,&quot;GUI connected\n&quot;);
 	}
 	else
 	{
 		npipe_open = false;
 		close(npipe[READ]);
 		close(npipe[WRITE]);
-		npipe[READ] = NULL;
-		npipe[WRITE] = NULL;
+		npipe[READ] = -1;
+		npipe[WRITE] = -1;
 	}
 }
 /*----------------------------------------------------------------------------------------------*/
@@ -234,8 +248,8 @@ void Telemetry::ClosePipe()
 	npipe_open = false;
 	close(npipe[READ]);
 	close(npipe[WRITE]);
-	npipe[READ] = NULL;
-	npipe[WRITE] = NULL;
+	npipe[READ] = -1;
+	npipe[WRITE] = -1;
 }
 /*----------------------------------------------------------------------------------------------*/
 
@@ -275,7 +289,16 @@ void Telemetry::ImportPVT()
 	{
 		export_messages = true;
 		if(npipe_open == false)
-			OpenPipe();
+		{
+			if(tlm_type == TELEM_NAMED_PIPE)
+			{
+				OpenPipe();
+			}
+			else
+			{
+				OpenSerial();
+			}
+		}
 	}
 
 	bread = read(SVS_2_TLM_P[READ], &amp;svs_s, sizeof(SVS_2_TLM_S));</diff>
      <filename>objects/telemetry.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -28,6 +28,12 @@
 #ifndef TELEMETRY_H_
 #define TELEMETRY_H_
 
+enum Telemetry_Type
+{
+	TELEM_NAMED_PIPE,
+	TELEM_SERIAL
+};
+
 #include &quot;includes.h&quot;
 //#include &quot;ekf.h&quot;				//!&lt; The EKF driver
 //#include &quot;idle.h&quot;				//!&lt; Idle CPU counter
@@ -63,12 +69,13 @@ class Telemetry : public Threaded_Object
 		uint32 msg_rates[LAST_M_ID+1];				//!&lt; Control output of periodic messages, 0 == off, !0 == decimation rate
 		void (Telemetry::*msg_handlers[LAST_M_ID+1])(void);	//!&lt; Function pointers for periodic message handlers
 
+		int32 tlm_type;
 		int32 fifo[2];
 		int32 npipe[2];								//!&lt; Named pipe and/or serial interface
 		int32 npipe_open;							//!&lt; Is the named pipe open!?
 
-		CCSDS_Packet_Header  packet_header;			//!&lt; CCSDS Packet header
-		CCSDS_Packet_Header  command_header;		//!&lt; CCSDS Command header
+		CCSDS_Packet_Header packet_header;			//!&lt; CCSDS Packet header
+		CCSDS_Packet_Header command_header;			//!&lt; CCSDS Command header
 		CCSDS_Decoded_Header decoded_header;		//!&lt; Decoded header
 
 		Command_Union command_body;					//!&lt; Body of a command
@@ -99,6 +106,7 @@ class Telemetry : public Threaded_Object
 		/* Default object methods */
 		Telemetry();								//!&lt; Constructor
 		~Telemetry();
+		void SetType(int32 _type);					//!&lt; Serial or named pipe
 		void OpenPipe();
 		void OpenSerial();
 		void ClosePipe();</diff>
      <filename>objects/telemetry.h</filename>
    </modified>
    <modified>
      <diff>@@ -105,7 +105,7 @@ void fill_prn_new(MIX *_vect, int32 _samps)
 int main(int32 argc, char* argv[])
 {
 
-	printf(&quot;SIMD_Test\n&quot;);
+	fprintf(stdout,&quot;SIMD_Test\n&quot;);
 
 	CPX *testvecta;
 	CPX *testvectb;
@@ -168,9 +168,9 @@ int main(int32 argc, char* argv[])
 	}
 
 	if(err)
-		printf(&quot;INT16 ADD \t\t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;INT16 ADD \t\t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;INT16 ADD \t\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;INT16 ADD \t\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 
@@ -203,9 +203,9 @@ int main(int32 argc, char* argv[])
 	}
 
 	if(err)
-		printf(&quot;INT16 SUB \t\t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;INT16 SUB \t\t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;INT16 SUB \t\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;INT16 SUB \t\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 
@@ -237,9 +237,9 @@ int main(int32 argc, char* argv[])
 
 	}
 	if(err)
-		printf(&quot;INT16 MUL \t\t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;INT16 MUL \t\t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;INT16 MUL \t\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;INT16 MUL \t\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 
@@ -262,15 +262,15 @@ int main(int32 argc, char* argv[])
 
 		if(val1 != val2)
 		{
-			printf(&quot;x86,SSE: %d,%d\n&quot;,val1,val2);
+			fprintf(stdout,&quot;x86,SSE: %d,%d\n&quot;,val1,val2);
 			err++;
 		}
 
 	}
 	if(err)
-		printf(&quot;INT16 DOT \t\t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;INT16 DOT \t\t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;INT16 DOT \t\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;INT16 DOT \t\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 
@@ -294,7 +294,7 @@ int main(int32 argc, char* argv[])
 		for(lcv2 = 0; lcv2 &lt; pts; lcv2++)
 		{
 
-			//printf(&quot;[%d,%d] [%d,%d]\n&quot;,testvecta[lcv2].i,testvecta[lcv2].q,testvectc[lcv2].i,testvectc[lcv2].q);
+			//fprintf(stdout,&quot;[%d,%d] [%d,%d]\n&quot;,testvecta[lcv2].i,testvecta[lcv2].q,testvectc[lcv2].i,testvectc[lcv2].q);
 
 			if(testvecta[lcv2].i != testvectc[lcv2].i)
 				err++;
@@ -305,9 +305,9 @@ int main(int32 argc, char* argv[])
 
 	}
 	if(err)
-		printf(&quot;CPX CONJ \t\t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;CPX CONJ \t\t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;CPX CONJ \t\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;CPX CONJ \t\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 
@@ -331,7 +331,7 @@ int main(int32 argc, char* argv[])
 		for(lcv2 = 0; lcv2 &lt; pts; lcv2++)
 		{
 
-			//printf(&quot;[%d,%d] [%d,%d]\n&quot;,testvecta[lcv2].i,testvecta[lcv2].q,testvectc[lcv2].i,testvectc[lcv2].q);
+			//fprintf(stdout,&quot;[%d,%d] [%d,%d]\n&quot;,testvecta[lcv2].i,testvecta[lcv2].q,testvectc[lcv2].i,testvectc[lcv2].q);
 
 			if(testvecta[lcv2].i != testvectc[lcv2].i)
 				err++;
@@ -342,9 +342,9 @@ int main(int32 argc, char* argv[])
 
 	}
 	if(err)
-		printf(&quot;CPX MUL \t\t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;CPX MUL \t\t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;CPX MUL \t\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;CPX MUL \t\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 
@@ -369,7 +369,7 @@ int main(int32 argc, char* argv[])
 		for(lcv2 = 0; lcv2 &lt; pts; lcv2++)
 		{
 
-			//printf(&quot;[%d,%d] [%d,%d]\n&quot;,testvecta[lcv2].i,testvecta[lcv2].q,testvectc[lcv2].i,testvectc[lcv2].q);
+			//fprintf(stdout,&quot;[%d,%d] [%d,%d]\n&quot;,testvecta[lcv2].i,testvecta[lcv2].q,testvectc[lcv2].i,testvectc[lcv2].q);
 
 			if(testvecta[lcv2].i != testvectc[lcv2].i)
 				err++;
@@ -380,9 +380,9 @@ int main(int32 argc, char* argv[])
 
 	}
 	if(err)
-		printf(&quot;CPX MUL SHIFT \t\t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;CPX MUL SHIFT \t\t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;CPX MUL SHIFT \t\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;CPX MUL SHIFT \t\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 
@@ -406,7 +406,7 @@ int main(int32 argc, char* argv[])
 		for(lcv2 = 0; lcv2 &lt; pts; lcv2++)
 		{
 
-			//printf(&quot;[%d,%d] [%d,%d]\n&quot;,testvecta[lcv2].i,testvecta[lcv2].q,testvectc[lcv2].i,testvectc[lcv2].q);
+			//fprintf(stdout,&quot;[%d,%d] [%d,%d]\n&quot;,testvecta[lcv2].i,testvecta[lcv2].q,testvectc[lcv2].i,testvectc[lcv2].q);
 
 			if(testvectc[lcv2].i != testvectd[lcv2].i)
 				err++;
@@ -417,9 +417,9 @@ int main(int32 argc, char* argv[])
 
 	}
 	if(err)
-		printf(&quot;CPX MUL SHIFT PRESERVE \t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;CPX MUL SHIFT PRESERVE \t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;CPX MUL SHIFT PRESERVE \t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;CPX MUL SHIFT PRESERVE \t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 
@@ -444,21 +444,21 @@ int main(int32 argc, char* argv[])
 
 		if(ai1 != ai2)
 		{
-			printf(&quot;Low32: %8x,%8x\n&quot;,ai1, ai2);
+			fprintf(stdout,&quot;Low32: %8x,%8x\n&quot;,ai1, ai2);
 			err++;
 		}
 
 		if(aq1 != aq2)
 		{
-			printf(&quot;High32: %8x,%8x\n&quot;,aq1, aq2);
+			fprintf(stdout,&quot;High32: %8x,%8x\n&quot;,aq1, aq2);
 			err++;
 		}
 
 	}
 	if(err)
-		printf(&quot;CPX ACCUM \t\t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;CPX ACCUM \t\t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;CPX ACCUM \t\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;CPX ACCUM \t\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 	/* SIMD x86_prn_accum */
@@ -495,14 +495,14 @@ int main(int32 argc, char* argv[])
 		if(err)
 		{
 			for(lcv2 = 0; lcv2 &lt; 3; lcv2++)
-				printf(&quot;%d.%d,%d.%d\n&quot;,accuma[lcv2].i,accuma[lcv2].q,accumb[lcv2].i,accumb[lcv2].q);
+				fprintf(stdout,&quot;%d.%d,%d.%d\n&quot;,accuma[lcv2].i,accuma[lcv2].q,accumb[lcv2].i,accumb[lcv2].q);
 		}
 
 	}
 	if(err)
-		printf(&quot;CPX PRN ACCUM \t\t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;CPX PRN ACCUM \t\t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;CPX PRN ACCUM \t\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;CPX PRN ACCUM \t\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 
@@ -539,14 +539,14 @@ int main(int32 argc, char* argv[])
 		if(err)
 		{
 			for(lcv2 = 0; lcv2 &lt; 3; lcv2++)
-				printf(&quot;%d.%d,%d.%d\n&quot;,caccuma[lcv2].i,caccuma[lcv2].q,caccumb[lcv2].i,caccumb[lcv2].q);
+				fprintf(stdout,&quot;%d.%d,%d.%d\n&quot;,caccuma[lcv2].i,caccuma[lcv2].q,caccumb[lcv2].i,caccumb[lcv2].q);
 		}
 
 	}
 	if(err)
-		printf(&quot;CPX PRN ACCUM NEW \t\tFAILED: %d\n&quot;,err);
+		fprintf(stdout,&quot;CPX PRN ACCUM NEW \t\tFAILED: %d\n&quot;,err);
 	else
-		printf(&quot;CPX PRN ACCUM NEW\t\tPASSED\n&quot;,err);
+		fprintf(stdout,&quot;CPX PRN ACCUM NEW\t\tPASSED\n&quot;,err);
 	/*----------------------------------------------------------------------------------------------*/
 
 	delete [] testvecta;</diff>
      <filename>simd/simd-test.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -51,7 +51,7 @@ typedef struct _options
 
 
 /*----------------------------------------------------------------------------------------------*/
-void PostStatus(char *_str) {fprintf(stdout,&quot;%s&quot;,_str); fflush(stdout);}
+void PostStatus(char *_str) {ffprintf(stdout,stdout,&quot;%s&quot;,_str); fflush(stdout);}
 void *record_thread(void *_opt);
 void *fifo_thread(void *_opt);
 void *key_thread(void *_arg);
@@ -76,15 +76,15 @@ pthread_mutex_t mFIFO;
 void usage(char *_str)
 {
 
-	fprintf(stderr, &quot;usage: [-gr] [-gi] [-d] [-l] [-w] [-v] [-c]\n&quot;);
-	fprintf(stderr, &quot;[-gr] &lt;gain&gt; set rf gain in dB (DBSRX only)\n&quot;);
-	fprintf(stderr, &quot;[-gi] &lt;gain&gt; set if gain in dB (DBSRX only)\n&quot;);
-	fprintf(stderr, &quot;[-d] operate in two antenna mode, A &amp; B as L1\n&quot;);
-	fprintf(stderr, &quot;[-l] operate in L1-L2 mode, A as L1, B as L2\n&quot;);
-	fprintf(stderr, &quot;[-w] &lt;bandwidth&gt; bandwidth of lowpass filter\n&quot;);
-	fprintf(stderr, &quot;[-v] output extra debug info\n&quot;);
-	fprintf(stderr, &quot;[-r] dump data to disk\n&quot;);
-	fprintf(stderr, &quot;[-c] the USRP samples at a modified 65.536 MHz (default is 64 MHz)\n&quot;);
+	fprintf(stderr,&quot;usage: [-gr] [-gi] [-d] [-l] [-w] [-v] [-c]\n&quot;);
+	fprintf(stderr,&quot;[-gr] &lt;gain&gt; set rf gain in dB (DBSRX only)\n&quot;);
+	fprintf(stderr,&quot;[-gi] &lt;gain&gt; set if gain in dB (DBSRX only)\n&quot;);
+	fprintf(stderr,&quot;[-d] operate in two antenna mode, A &amp; B as L1\n&quot;);
+	fprintf(stderr,&quot;[-l] operate in L1-L2 mode, A as L1, B as L2\n&quot;);
+	fprintf(stderr,&quot;[-w] &lt;bandwidth&gt; bandwidth of lowpass filter\n&quot;);
+	fprintf(stderr,&quot;[-v] output extra debug info\n&quot;);
+	fprintf(stderr,&quot;[-r] dump data to disk\n&quot;);
+	fprintf(stderr,&quot;[-c] the USRP samples at a modified 65.536 MHz (default is 64 MHz)\n&quot;);
 	fflush(stderr);
 
 	exit(1);
@@ -101,35 +101,35 @@ int echo_options(options *_opt)
 	usrp_standard_rx *urx = usrp_standard_rx::make(0, 8, 1, -1, 0, 0, 0);
 	if(urx == NULL)
 	{
-		printf(&quot;usrp_standard_rx::make FAILED\n&quot;);
+		fprintf(stdout,&quot;usrp_standard_rx::make FAILED\n&quot;);
 		return(-1);
 	}
 
 	switch(urx-&gt;daughterboard_id(0))
 	{
 		case 1:
-			fprintf(stdout,&quot;Board A:\t\t\tBasic RX\n&quot;); break;
+			ffprintf(stdout,stdout,&quot;Board A:\t\t\tBasic RX\n&quot;); break;
 		case 2:
-			fprintf(stdout,&quot;Board A:\t\t\t DBS RX\n&quot;); break;
+			ffprintf(stdout,stdout,&quot;Board A:\t\t\t DBS RX\n&quot;); break;
 		default:
-			fprintf(stdout,&quot;Board A:\t\t\tUnknown\n&quot;); break;
+			ffprintf(stdout,stdout,&quot;Board A:\t\t\tUnknown\n&quot;); break;
 	}
 
 	switch(urx-&gt;daughterboard_id(1))
 	{
 		case 1:
-			fprintf(stdout,&quot;Board B:\t\t\tBasic RX\n&quot;); break;
+			ffprintf(stdout,stdout,&quot;Board B:\t\t\tBasic RX\n&quot;); break;
 		case 2:
-			fprintf(stdout,&quot;Board B:\t\t\t DBS RX\n&quot;); break;
+			ffprintf(stdout,stdout,&quot;Board B:\t\t\t DBS RX\n&quot;); break;
 		default:
-			fprintf(stdout,&quot;Board B:\t\t\tUnknown\n&quot;); break;
+			ffprintf(stdout,stdout,&quot;Board B:\t\t\tUnknown\n&quot;); break;
 	}
 
 	switch(_opt-&gt;mode)
 	{
-		case 0: fprintf(stdout, &quot;Single L1 mode			(L1-&gt;A)\n&quot;); break;
-		case 1: fprintf(stdout, &quot;Dual L1 mode			(L1-&gt;A L1-&gt;B)\n&quot;); break;
-		case 2: fprintf(stdout, &quot;Dual L1-L2C mode		(L1-&gt;A L2C-&gt;B)\n&quot;); break;
+		case 0: ffprintf(stdout,stdout, &quot;Single L1 mode			(L1-&gt;A)\n&quot;); break;
+		case 1: ffprintf(stdout,stdout, &quot;Dual L1 mode			(L1-&gt;A L1-&gt;B)\n&quot;); break;
+		case 2: ffprintf(stdout,stdout, &quot;Dual L1-L2C mode		(L1-&gt;A L2C-&gt;B)\n&quot;); break;
 	}
 
 	/* Error check based on the mode */
@@ -138,7 +138,7 @@ int echo_options(options *_opt)
 		case 0:
 			if(urx-&gt;daughterboard_id(0) != 2)
 			{
-				fprintf(stdout, &quot;Board A is not a DBS-RX!\n&quot;);
+				ffprintf(stdout,stdout, &quot;Board A is not a DBS-RX!\n&quot;);
 				delete urx;
 				return(-1);
 			}
@@ -146,14 +146,14 @@ int echo_options(options *_opt)
 		case 1:
 			if(urx-&gt;daughterboard_id(0) != 2)
 			{
-				fprintf(stdout, &quot;Board A is not a DBS-RX!\n&quot;);
+				ffprintf(stdout,stdout, &quot;Board A is not a DBS-RX!\n&quot;);
 				delete urx;
 				return(-1);
 			}
 
 			if(urx-&gt;daughterboard_id(1) != 2)
 			{
-				fprintf(stdout, &quot;Board B is not a DBS-RX!\n&quot;);
+				ffprintf(stdout,stdout, &quot;Board B is not a DBS-RX!\n&quot;);
 				delete urx;
 				return(-1);
 			}
@@ -161,32 +161,32 @@ int echo_options(options *_opt)
 		case 2:
 			if(urx-&gt;daughterboard_id(0) != 2)
 			{
-				fprintf(stdout, &quot;Board A is not a DBS-RX!\n&quot;);
+				ffprintf(stdout,stdout, &quot;Board A is not a DBS-RX!\n&quot;);
 				delete urx;
 				return(-1);
 			}
 
 			if(urx-&gt;daughterboard_id(1) != 2)
 			{
-				fprintf(stdout, &quot;Board B is not a DBS-RX!\n&quot;);
+				ffprintf(stdout,stdout, &quot;Board B is not a DBS-RX!\n&quot;);
 				delete urx;
 				return(-1);
 			}
 				break;
 		default:
-			fprintf(stdout, &quot;_opt-&gt;mode non-valid\n&quot;);
+			ffprintf(stdout,stdout, &quot;_opt-&gt;mode non-valid\n&quot;);
 			delete urx;
 			return(-1);
 
 	}
 
-	fprintf(stdout, &quot;USRP Sample Rate:\t% 15.2f\n&quot;,_opt-&gt;f_sample);
-	fprintf(stdout, &quot;USRP Decimation:\t% 15d\n&quot;,_opt-&gt;decimate);
-	fprintf(stdout, &quot;DBSRX LO A:\t\t% 15.2f\n&quot;,_opt-&gt;f_lo_a);
-	fprintf(stdout, &quot;DBSRX LO B:\t\t% 15.2f\n&quot;,_opt-&gt;f_lo_b);
-	fprintf(stdout, &quot;RF Gain:\t\t% 15.2f\n&quot;,_opt-&gt;gr);
-	fprintf(stdout, &quot;IF Gain:\t\t% 15.2f\n&quot;,_opt-&gt;gi);
-	fprintf(stdout, &quot;DBSRX Bandwidth:\t% 15.2f\n&quot;,_opt-&gt;bandwidth);
+	ffprintf(stdout,stdout, &quot;USRP Sample Rate:\t% 15.2f\n&quot;,_opt-&gt;f_sample);
+	ffprintf(stdout,stdout, &quot;USRP Decimation:\t% 15d\n&quot;,_opt-&gt;decimate);
+	ffprintf(stdout,stdout, &quot;DBSRX LO A:\t\t% 15.2f\n&quot;,_opt-&gt;f_lo_a);
+	ffprintf(stdout,stdout, &quot;DBSRX LO B:\t\t% 15.2f\n&quot;,_opt-&gt;f_lo_b);
+	ffprintf(stdout,stdout, &quot;RF Gain:\t\t% 15.2f\n&quot;,_opt-&gt;gr);
+	ffprintf(stdout,stdout, &quot;IF Gain:\t\t% 15.2f\n&quot;,_opt-&gt;gi);
+	ffprintf(stdout,stdout, &quot;DBSRX Bandwidth:\t% 15.2f\n&quot;,_opt-&gt;bandwidth);
 
 	delete urx;
 
@@ -327,15 +327,15 @@ int main(int argc, char **argv)
 
 //	tparam.sched_priority = sched_get_priority_max(SCHED_FIFO);
 //	if(pthread_setschedparam(precord_thread, SCHED_FIFO, &amp;tparam))
-//		fprintf(stdout,&quot;Could not elevate priority of USRP thread\n&quot;);
+//		ffprintf(stdout,stdout,&quot;Could not elevate priority of USRP thread\n&quot;);
 
 //	tparam.sched_priority = sched_get_priority_max(SCHED_FIFO);
 //	if(pthread_setschedparam(pfifo_thread, SCHED_FIFO, &amp;tparam))
-//		fprintf(stdout,&quot;Could not elevate priority of FIFO thread\n&quot;);
+//		ffprintf(stdout,stdout,&quot;Could not elevate priority of FIFO thread\n&quot;);
 //
 //	tparam.sched_priority = sched_get_priority_max(SCHED_FIFO);
 //	if(pthread_setschedparam(pkey_thread, SCHED_FIFO, &amp;tparam))
-//		fprintf(stdout,&quot;Could not elevate priority of KEY thread\n&quot;);
+//		ffprintf(stdout,stdout,&quot;Could not elevate priority of KEY thread\n&quot;);
 
 	while(grun)
 	{
@@ -388,7 +388,7 @@ void *record_thread(void *opt)
 	if(urx == NULL)
 	{
 		if(_opt-&gt;verbose)
-			printf(&quot;usrp_standard_rx::make FAILED\n&quot;);
+			fprintf(stderr,&quot;usrp_standard_rx::make FAILED\n&quot;);
 		pthread_exit(0);
 	}
 
@@ -437,13 +437,13 @@ void *record_thread(void *opt)
 
 		if(_opt-&gt;verbose)
 		{
-			printf(&quot;DBS-RX A Configuration\n&quot;);
-			printf(&quot;DBS-RX A BW: \t\t% 15.2f\n&quot;,dbs_rx_a-&gt;bw());
-			printf(&quot;DBS-RX A LO: \t\t% 15.2f\n&quot;,dbs_rx_a-&gt;freq());
-			printf(&quot;DBS-RX A IF Gain: \t% 15.2f\n&quot;,dbs_rx_a-&gt;if_gain());
-			printf(&quot;DBS-RX A RF Gain: \t% 15.2f\n&quot;,dbs_rx_a-&gt;rf_gain());
-			printf(&quot;DDC 0: \t\t\t% 15.2f\n&quot;,urx-&gt;rx_freq(0));
-			//printf(&quot;DBS-RX A Diff: \t\t%f\n&quot;,dbs_rx_a-&gt;freq()-_opt-&gt;f_lo_a);
+			fprintf(stdout,&quot;DBS-RX A Configuration\n&quot;);
+			fprintf(stdout,&quot;DBS-RX A BW: \t\t% 15.2f\n&quot;,dbs_rx_a-&gt;bw());
+			fprintf(stdout,&quot;DBS-RX A LO: \t\t% 15.2f\n&quot;,dbs_rx_a-&gt;freq());
+			fprintf(stdout,&quot;DBS-RX A IF Gain: \t% 15.2f\n&quot;,dbs_rx_a-&gt;if_gain());
+			fprintf(stdout,&quot;DBS-RX A RF Gain: \t% 15.2f\n&quot;,dbs_rx_a-&gt;rf_gain());
+			fprintf(stdout,&quot;DDC 0: \t\t\t% 15.2f\n&quot;,urx-&gt;rx_freq(0));
+			//fprintf(stdout,&quot;DBS-RX A Diff: \t\t%f\n&quot;,dbs_rx_a-&gt;freq()-_opt-&gt;f_lo_a);
 		}
 
 
@@ -491,20 +491,20 @@ void *record_thread(void *opt)
 
 			if(_opt-&gt;verbose)
 			{
-				printf(&quot;DBS-RX B Actual Configuration\n&quot;);
-				printf(&quot;DBS-RX B BW: \t\t% 15.2f\n&quot;,dbs_rx_b-&gt;bw());
-				printf(&quot;DBS-RX B LO: \t\t% 15.2f\n&quot;,dbs_rx_b-&gt;freq());
-				printf(&quot;DBS-RX B IF Gain: \t% 15.2f\n&quot;,dbs_rx_b-&gt;if_gain());
-				printf(&quot;DBS-RX B RF Gain: \t% 15.2f\n&quot;,dbs_rx_b-&gt;rf_gain());
-				printf(&quot;DDC 1: \t\t\t% 15.2f\n&quot;,urx-&gt;rx_freq(1));
-				//printf(&quot;DBS-RX B Diff: \t\t%f\n&quot;,dbs_rx_b-&gt;freq()-_opt-&gt;f_lo_b);
+				fprintf(stdout,&quot;DBS-RX B Actual Configuration\n&quot;);
+				fprintf(stdout,&quot;DBS-RX B BW: \t\t% 15.2f\n&quot;,dbs_rx_b-&gt;bw());
+				fprintf(stdout,&quot;DBS-RX B LO: \t\t% 15.2f\n&quot;,dbs_rx_b-&gt;freq());
+				fprintf(stdout,&quot;DBS-RX B IF Gain: \t% 15.2f\n&quot;,dbs_rx_b-&gt;if_gain());
+				fprintf(stdout,&quot;DBS-RX B RF Gain: \t% 15.2f\n&quot;,dbs_rx_b-&gt;rf_gain());
+				fprintf(stdout,&quot;DDC 1: \t\t\t% 15.2f\n&quot;,urx-&gt;rx_freq(1));
+				//fprintf(stdout,&quot;DBS-RX B Diff: \t\t%f\n&quot;,dbs_rx_b-&gt;freq()-_opt-&gt;f_lo_b);
 			}
 
 		}
 	}
 
 	/* Start collecting data */
-	printf(&quot;USRP Start\n&quot;);
+	fprintf(stdout,&quot;USRP Start\n&quot;);
 
 	urx-&gt;start();
 
@@ -538,26 +538,26 @@ void *record_thread(void *opt)
 		{
 			time(&amp;rawtime);
 			timeinfo = localtime (&amp;rawtime);
-			fprintf(stdout, &quot;\nOverflow at time %s&quot;,asctime (timeinfo));
+			ffprintf(stdout,stdout, &quot;\nOverflow at time %s&quot;,asctime (timeinfo));
 			fflush(stdout);
 		}
 
 	}
 
 	if(_opt-&gt;verbose)
-		printf(&quot;Stopping USRP\n&quot;);
+		fprintf(stdout,&quot;Stopping USRP\n&quot;);
 	urx-&gt;stop();
 
 	if(_opt-&gt;verbose)
-		printf(&quot;USRP Stopped\n&quot;);
+		fprintf(stdout,&quot;USRP Stopped\n&quot;);
 
 	if(_opt-&gt;verbose)
-		printf(&quot;Closing pipe\n&quot;);
+		fprintf(stdout,&quot;Closing pipe\n&quot;);
 
 	close(npipe);
 
 	if(_opt-&gt;verbose)
-		printf(&quot;Pipe closed\n&quot;);
+		fprintf(stdout,&quot;Pipe closed\n&quot;);
 
 	if(dbs_rx_a != NULL)
 		delete dbs_rx_a;
@@ -580,7 +580,7 @@ int fifo_pipe;
 void wait_for_client()
 {
 
-	printf(&quot;Waiting for client\n&quot;);
+	fprintf(stdout,&quot;Waiting for client\n&quot;);
 	fifo_pipe = -1;
 	while((fifo_pipe == -1) &amp;&amp; grun)
 	{
@@ -589,10 +589,10 @@ void wait_for_client()
 	}
 
 	if(fifo_pipe != -1)
-		printf(&quot;Client connected\n&quot;);
+		fprintf(stdout,&quot;Client connected\n&quot;);
 	else
 	{
-		printf(&quot;Killed before client connected\n&quot;);
+		fprintf(stdout,&quot;Killed before client connected\n&quot;);
 		pthread_exit(0);
 	}
 
@@ -650,13 +650,13 @@ void *fifo_thread(void *arg)
 	lcv = 0;
 
 	if(_opt-&gt;verbose)
-		printf(&quot;FIFO thread start\n&quot;);
+		fprintf(stdout,&quot;FIFO thread start\n&quot;);
 
 	/* Everything set, now create a disk thread &amp; pipe, and do some recording! */
 	remove(&quot;/tmp/GPSPIPE&quot;);
 	fifo = mkfifo(&quot;/tmp/GPSPIPE&quot;, S_IRWXG | S_IRWXU | S_IRWXO);
 	if ((fifo == -1) &amp;&amp; (errno != EEXIST))
-        printf(&quot;Error creating the named pipe&quot;);
+        fprintf(stdout,&quot;Error creating the named pipe&quot;);
 
 	/* Wait for the gps-sdr */
 	wait_for_client();
@@ -776,7 +776,7 @@ void *fifo_thread(void *arg)
 			sem_getvalue(&amp;mFILLED, &amp;filled);
 			sem_getvalue(&amp;mEMPTY, &amp;empty);
 
-			fprintf(stdout,&quot;FIFO Filled\\Empty: %4d,%4d										\r&quot;,filled,empty);
+			ffprintf(stdout,stdout,&quot;FIFO Filled\\Empty: %4d,%4d										\r&quot;,filled,empty);
 			fflush(stdout);
 			lcv = 0;
 		}
@@ -791,7 +791,7 @@ void *fifo_thread(void *arg)
 		fclose(fp_out);
 
 	if(_opt-&gt;verbose)
-		printf(&quot;FIFO thread stop\n&quot;);
+		fprintf(stdout,&quot;FIFO thread stop\n&quot;);
 
 	pthread_exit(0);
 
@@ -808,7 +808,7 @@ void *key_thread(void *_arg)
 	char key;
 
 	if(_opt-&gt;verbose)
-		printf(&quot;Key thread start\n&quot;);
+		fprintf(stdout,&quot;Key thread start\n&quot;);
 
 	while(grun)
 	{
@@ -822,7 +822,7 @@ void *key_thread(void *_arg)
 	}
 
 	if(_opt-&gt;verbose)
-		printf(&quot;Key thread stop\n&quot;);
+		fprintf(stdout,&quot;Key thread stop\n&quot;);
 
 	pthread_exit(0);
 
@@ -834,7 +834,7 @@ void *key_thread(void *_arg)
 void kill_program(int _sig)
 {
 	//grun = false;
-	printf(&quot;Lost GPS-SDR!\n&quot;);
+	fprintf(stdout,&quot;Lost GPS-SDR!\n&quot;);
 	wait_for_client();
 }
 /*----------------------------------------------------------------------------------------------*/</diff>
      <filename>usrp/gps-usrp.cpp</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>8042ad7dd051aab2fd0613421ebda50a56bcde6f</id>
    </parent>
  </parents>
  <author>
    <name>Gregory W. Heckler</name>
    <email>gheckler@gs-mesa3079693.(none)</email>
  </author>
  <url>http://github.com/gps-sdr/gps-sdr/commit/f4dcf08d7b3b2f6103c223e602aa68fa08a0e82a</url>
  <id>f4dcf08d7b3b2f6103c223e602aa68fa08a0e82a</id>
  <committed-date>2009-06-01T14:55:25-07:00</committed-date>
  <authored-date>2009-06-01T14:55:25-07:00</authored-date>
  <message>Fixed a bug with the named pipe and a conflict with stdin.</message>
  <tree>620e89541a02b2f6635526f3766000e668a1fc53</tree>
  <committer>
    <name>Gregory W. Heckler</name>
    <email>gheckler@gs-mesa3079693.(none)</email>
  </committer>
</commit>
