diff options
Diffstat (limited to 'src/kprintf')
| -rw-r--r-- | src/kprintf/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | src/kprintf/src/nwp_log.c | 12 |
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; } |
