aboutsummaryrefslogtreecommitdiff
path: root/dlog.h
diff options
context:
space:
mode:
Diffstat (limited to 'dlog.h')
-rw-r--r--dlog.h18
1 files changed, 14 insertions, 4 deletions
diff --git a/dlog.h b/dlog.h
index 2878ac9..19337cd 100644
--- a/dlog.h
+++ b/dlog.h
@@ -56,14 +56,26 @@ static inline void dlog_init()
// No initialization required
}
-static inline void dputc(char c);
-#pragma aux dputc = \
+static inline void dconputc(char c);
+#pragma aux dconputc = \
"mov ah, 0x0E" \
"xor bx, bx" \
"int 0x10" \
__parm [AL] \
__modify __exact [AH AL BH BL];
+static inline void dputc(char c)
+{
+ // Need to convert CR into CRLF...
+ if (c == '\n') {
+ dconputc('\n');
+ dconputc('\r');
+ } else {
+ dconputc(c);
+ }
+}
+
+
#elif DLOG_TARGET == DLOG_TARGET_SERIAL
static void dlog_init()
@@ -167,7 +179,6 @@ static void d_itoa(int num, unsigned base)
{
unsigned unum;
- // TODO
if (num < 0) {
dputc('-');
unum = -num;
@@ -182,7 +193,6 @@ static void d_ltoa(long num, unsigned base)
{
unsigned long unum;
- // TODO
if (num < 0) {
dputc('-');
unum = -num;