summaryrefslogtreecommitdiff
path: root/3dc/win95/OURASERT.H
diff options
context:
space:
mode:
authorRebellion Developments <rebellion@nomail>2000-03-16 11:25:00 +0100
committerPatryk Obara <dreamer.tan@gmail.com>2019-08-19 05:45:17 +0200
commit218ca90543758a20ac326e444ca0643174ca7384 (patch)
tree16bfe3e5307f9f515489000f28728224291a0e3b /3dc/win95/OURASERT.H
Import Aliens vs Predator - Gold (Build 116)
Source code release, imported from: https://www.gamefront.com/games/aliens-vs-predator-3/file/avp-gold-complete-source-code All text files were converted to Unix format.
Diffstat (limited to '3dc/win95/OURASERT.H')
-rw-r--r--3dc/win95/OURASERT.H138
1 files changed, 138 insertions, 0 deletions
diff --git a/3dc/win95/OURASERT.H b/3dc/win95/OURASERT.H
new file mode 100644
index 0000000..6ffa3de
--- /dev/null
+++ b/3dc/win95/OURASERT.H
@@ -0,0 +1,138 @@
+
+/*
+ This is our assert file for the Win95
+ platform, with Dave's global/local assert
+ distinctions.
+*/
+
+/*
+ Note that WaitForReturn now calls FlushTextprintBuffer
+ and FlipBuffers implicitly.
+*/
+
+/*
+ Modified 10th December 1996 by Dave Malcolm. Now can be set so that
+ functions are supplied by the project/platform to fire when an assertion
+ fires.
+
+ Also is set so that the compiler will generate an error message if you manage to
+ include the file more than once (with confusing definitons of UseLocalAssert);
+ this can be disabled.
+*/
+
+
+#ifdef _OURASERT
+ #if StopCompilationOnMultipleInclusions
+ #error OURASERT.H included more than once
+ #endif
+#else
+ #define _OURASERT 1
+#endif
+
+
+#ifdef AVP_DEBUG_VERSION
+ #define ASSERT_SYSTEM_ON 1
+#else
+ #define ASSERT_SYSTEM_ON 0
+#endif
+
+
+#if UseProjPlatAssert
+/* New assertions system */
+
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+ int GlobalAssertFired(char* Filename, int LineNum, char* Condition);
+ int LocalAssertFired(char* Filename, int LineNum, char* Condition);
+ void ExitFired(char* Filename, int LineNum, int ExitCode);
+ #ifdef __cplusplus
+ };
+ #endif
+
+
+ #if ASSERT_SYSTEM_ON
+
+ #define GLOBALASSERT(x) \
+ (void)( (x) ? 1 : \
+ ( \
+ GlobalAssertFired \
+ ( \
+ __FILE__, \
+ __LINE__, \
+ #x \
+ ) \
+ ) \
+ )
+
+ #if UseLocalAssert
+
+ #define LOCALASSERT(x) \
+ (void)( (x) ? 1 : \
+ ( \
+ LocalAssertFired \
+ ( \
+ __FILE__, \
+ __LINE__, \
+ #x \
+ ) \
+ ) \
+ )
+
+ #else
+
+ #define LOCALASSERT(ignore)
+
+ #endif
+
+
+ #define exit(x) ExitFired(__FILE__,__LINE__,x)
+
+ #else
+
+ #define GLOBALASSERT(ignore) ((void)0)
+
+ #define LOCALASSERT(ignore) ((void)0)
+
+ #endif
+
+
+#else
+/* Old assertions system */
+
+ #define GlobalAssertCode 0xffff
+ #define LocalAssertCode 0xfffe
+
+
+ #if 0//debug
+
+ #define GLOBALASSERT(x) \
+ (void)((x) ? 1 : \
+ (textprint("\nGAF " #x "\nLINE %d\nFILE'%s'\n", \
+ __LINE__, __FILE__), WaitForReturn(), \
+ ExitSystem(), exit(GlobalAssertCode), \
+ 0))
+
+ #if UseLocalAssert
+
+ #define LOCALASSERT(x) \
+ (void)((x) ? 1 : \
+ (textprint("\nLAF " #x "LINE %d\nFILE'%s'\n", \
+ __LINE__, __FILE__), WaitForReturn(), \
+ ExitSystem(), exit(LocalAssertCode), \
+ 0))
+
+ #else
+
+ #define LOCALASSERT(ignore)
+
+ #endif
+
+ #else
+
+ #define GLOBALASSERT(ignore)
+
+ #define LOCALASSERT(ignore)
+
+ #endif
+#endif