summaryrefslogtreecommitdiff
path: root/include/gba
diff options
context:
space:
mode:
Diffstat (limited to 'include/gba')
-rw-r--r--include/gba/gba.h13
-rw-r--r--include/gba/isagbprint.h36
2 files changed, 43 insertions, 6 deletions
diff --git a/include/gba/gba.h b/include/gba/gba.h
index 42ae3cdde..7e58efb9f 100644
--- a/include/gba/gba.h
+++ b/include/gba/gba.h
@@ -1,11 +1,12 @@
#ifndef GUARD_GBA_GBA_H
#define GUARD_GBA_GBA_H
-#include "gba/defines.h"
-#include "gba/io_reg.h"
-#include "gba/types.h"
-#include "gba/multiboot.h"
-#include "gba/syscall.h"
-#include "gba/macro.h"
+#include "defines.h"
+#include "io_reg.h"
+#include "types.h"
+#include "multiboot.h"
+#include "syscall.h"
+#include "macro.h"
+#include "isagbprint.h"
#endif // GUARD_GBA_GBA_H
diff --git a/include/gba/isagbprint.h b/include/gba/isagbprint.h
new file mode 100644
index 000000000..ce547928c
--- /dev/null
+++ b/include/gba/isagbprint.h
@@ -0,0 +1,36 @@
+#ifndef GUARD_GBA_ISAGBPRINT_H
+#define GUARD_GBA_ISAGBPRINT_H
+
+#ifdef NDEBUG
+#define AGBPrintInit()
+#define AGBPutc(cChr)
+#define AGBPrint(pBuf)
+#define AGBPrintf(pBuf, ...)
+#define AGBPrintFlush1Block()
+#define AGBPrintFlush()
+#define AGBAssert(pFile, nLine, pExpression, nStopProgram)
+#else
+void AGBPrintInit(void);
+void AGBPutc(const char cChr);
+void AGBPrint(const char *pBuf);
+void AGBPrintf(const char *pBuf, ...);
+void AGBPrintFlush1Block(void);
+void AGBPrintFlush(void);
+void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopProgram);
+#endif
+
+#undef AGB_ASSERT
+#ifdef NDEBUG
+#define AGB_ASSERT(exp)
+#else
+#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 1);
+#endif
+
+#undef AGB_WARNING
+#ifdef NDEBUG
+#define AGB_WARNING(exp)
+#else
+#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 0);
+#endif
+
+#endif // GUARD_GBA_ISAGBPRINT_H