1
0
mirror of https://github.com/raphnet/4nes4snes synced 2024-08-13 16:23:46 -04:00
4nes4snes/usbdrv/oddebug.c

51 lines
1.0 KiB
C
Raw Normal View History

2007-03-24 22:59:30 -04:00
/* Name: oddebug.c
* Project: AVR library
* Author: Christian Starkjohann
* Creation Date: 2005-01-16
* Tabsize: 4
* Copyright: (c) 2005 by OBJECTIVE DEVELOPMENT Software GmbH
2009-05-02 08:41:40 -04:00
* License: GNU GPL v2 (see License.txt) or proprietary (CommercialLicense.txt)
* This Revision: $Id: oddebug.c,v 1.2 2009-05-02 12:41:41 cvs Exp $
2007-03-24 22:59:30 -04:00
*/
#include "oddebug.h"
#if DEBUG_LEVEL > 0
2009-05-02 08:41:40 -04:00
#warning "Never compile production devices with debugging enabled"
2007-03-24 22:59:30 -04:00
static void uartPutc(char c)
{
while(!(ODDBG_USR & (1 << ODDBG_UDRE))); /* wait for data register empty */
ODDBG_UDR = c;
}
static uchar hexAscii(uchar h)
{
h &= 0xf;
if(h >= 10)
h += 'a' - (uchar)10 - '0';
h += '0';
return h;
}
static void printHex(uchar c)
{
uartPutc(hexAscii(c >> 4));
uartPutc(hexAscii(c));
}
void odDebug(uchar prefix, uchar *data, uchar len)
{
printHex(prefix);
uartPutc(':');
while(len--){
uartPutc(' ');
printHex(*data++);
}
uartPutc('\r');
uartPutc('\n');
}
#endif