]> 4ch.mooo.com Git - 16.git/commitdiff
add printf-like _DEBUGF() function for debugging, too
authorJonathan Campbell <jonathan@castus.tv>
Sat, 28 May 2016 11:46:55 +0000 (04:46 -0700)
committerJonathan Campbell <jonathan@castus.tv>
Sat, 28 May 2016 11:46:55 +0000 (04:46 -0700)
src/16.c
src/lib/16_dbg.c
src/lib/16_dbg.h
src/scroll.c
src/test.c

index 380c3359bf7d681dfeeb3e92a4fa1a43088903c0..e7cee886f159f81c341af0251da0967901c1faeb 100755 (executable)
--- a/src/16.c
+++ b/src/16.c
@@ -59,6 +59,7 @@ main(int argc, char *argv[])
 #endif\r
        }\r
        _DEBUG("Serial debug output started\n"); // NTS: All serial output must end messages with newline, or DOSBox-X will not emit text to log\r
+       _DEBUGF("Serial debug output printf test %u %u %u\n",1U,2U,3U);\r
 \r
        //screen = modexDefaultPage();\r
        engi_stat = ENGI_RUN;\r
index be2c1d2626257d35fa7a626390de851d46b47bae..2215c42002c2acaa5ac9de10655db74ac1efa3a7 100644 (file)
@@ -3,6 +3,10 @@
 
 // TODO: Could we also provide a build mode to emit debug to the "Bochs E9 hack?"
 #ifdef DEBUGSERIAL
+# include <stdarg.h>
+# include <stdlib.h>
+# include <stdio.h>
+
 unsigned char _DEBUG_INITed = 0;
 struct info_8250 *_DEBUG_uart = NULL;
 
@@ -57,5 +61,16 @@ void _DEBUG(const char *msg) {
                }
        }
 }
+
+static char _DEBUGF_TMP[256];
+
+void _DEBUGF(const char *fmt,...) {
+       va_list va;
+
+       va_start(va,fmt);
+       vsnprintf(_DEBUGF_TMP,sizeof(_DEBUGF_TMP),fmt,va);
+       _DEBUG(_DEBUGF_TMP);
+       va_end(va);
+}
 #endif
 
index e408ac0ca84e8c3f52fa437bd47998ab71fc4260..9aaf9644c1757ef922bec2c51c10d536e9dd290a 100644 (file)
@@ -5,9 +5,13 @@
 # ifdef DEBUGSERIAL
 #  include <hw/8250/8250.h>
 
+void _DEBUGF(const char *fmt,...);
 void _DEBUG(const char *msg);
 int _DEBUG_INIT();
 # else
+static inline void _DEBUGF(const char *fmt,...) {
+       // NOTHING
+}
 static inline void _DEBUG(const char *msg) {
        // NOTHING
 }
index b108a20d6fd7901e052f454e6b70f3fc4a4082ef..8f8c27f514c90a91fbd582785df3eaef5fcbc2e0 100755 (executable)
@@ -91,6 +91,7 @@ void main(int argc, char *argv[])
 #endif
        }
        _DEBUG("Serial debug output started\n"); // NTS: All serial output must end messages with newline, or DOSBox-X will not emit text to log
+       _DEBUGF("Serial debug output printf test %u %u %u\n",1U,2U,3U);
 
        pan.pn=1;
        //player[0].data = &pp;
index 2c698a63327d5217413cfd335b6911a3ca88a045..bb3792ae16919090c0b3f6f6b1176b6494e7c4d3 100755 (executable)
@@ -70,6 +70,7 @@ void main(int argc, char *argv[])
 #endif\r
        }\r
        _DEBUG("Serial debug output started\n"); // NTS: All serial output must end messages with newline, or DOSBox-X will not emit text to log\r
+       _DEBUGF("Serial debug output printf test %u %u %u\n",1U,2U,3U);\r
 \r
        /* load our palette */\r
        modexLoadPalFile("data/default.pal", &pal2);\r