aboutsummaryrefslogtreecommitdiff
path: root/src/kprintf
diff options
context:
space:
mode:
Diffstat (limited to 'src/kprintf')
-rw-r--r--src/kprintf/CMakeLists.txt2
-rw-r--r--src/kprintf/src/nwp_log.c12
2 files changed, 14 insertions, 0 deletions
diff --git a/src/kprintf/CMakeLists.txt b/src/kprintf/CMakeLists.txt
index fcc53c9..9164d14 100644
--- a/src/kprintf/CMakeLists.txt
+++ b/src/kprintf/CMakeLists.txt
@@ -18,3 +18,5 @@ add_library(kprintf)
add_subdirectory(src)
target_include_directories(kprintf PUBLIC include PRIVATE private_include)
target_link_libraries(kprintf PUBLIC c PRIVATE io nanowasm)
+
+target_link_libraries(kprintf PRIVATE drv_ps1_bios dynstr)
diff --git a/src/kprintf/src/nwp_log.c b/src/kprintf/src/nwp_log.c
index 2db9969..3247a6f 100644
--- a/src/kprintf/src/nwp_log.c
+++ b/src/kprintf/src/nwp_log.c
@@ -20,13 +20,25 @@
#include <nanowasm/nw.h>
#include <stdarg.h>
+
+#include <drv/ps1/bios.h>
+#include <dynstr.h>
int nwp_log(const char *const fmt, ...)
{
int ret;
va_list ap;
va_start(ap, fmt);
+#if 1
ret = ktvprintf(false, fmt, ap);
+#else
+ struct dynstr d;
+ dynstr_init(&d);
+ if (dynstr_vappend(&d, fmt, ap)) ret = -1;
+ else
+ ret = Printf("%s", d.str);
+ dynstr_free(&d);
+#endif
va_end(ap);
return ret;
}