--- a/libs/include/SDI_compiler.h
+++ b/libs/include/SDI_compiler.h
@@ -46,6 +46,7 @@
  1.25  21.06.07 : added NEAR to be usable for __near specification for SAS/C
  1.26  14.10.07 : added DEPRECATED macro which defaults to __attribute__((deprecated))
                   for GCC compiles.
+       29.11.08   Added some defines for Ignition and support modules (Mazze)
 */
 
 /*
@@ -223,6 +224,61 @@
   #undef ASM
   #define ASM
 
+  #undef REGARGS
+  #define REGARGS
+
 #endif /* __AROS__ */
 
+/*************************************************************************/
+
+/* Ignition support */
+
+#define PUBLIC ASM SAVEDS
+#define PRIVATE REGARGS
+
+/* IPTR is an integer type which is large enough to store an address.*/
+#if !defined(__AROS__) && !defined(__MORPHOS__)
+  typedef ULONG IPTR;
+#endif
+
+#if defined(__AROS__)
+#  define LIBFUNC_INIT AROS_LIBFUNC_INIT
+#  define LIBFUNC_EXIT AROS_LIBFUNC_EXIT
+#  define LIB_LH0 AROS_LH0
+#  define LIB_LH1 AROS_LH1
+#  define LIB_LH2 AROS_LH2
+#  define LIB_LH3 AROS_LH3
+#  define LIB_LH4 AROS_LH4
+#  define LIB_LH5 AROS_LH5
+#  define LIB_LHA AROS_LHA
+#  define min(a,b) ((a)<(b)?(a):(b))
+#  define max(a,b) ((a)>(b)?(a):(b))
+#  define PI (M_PI)
+
+#  undef CHIP
+#  define CHIP
+
+#  define ALIGNED __attribute__ ((aligned (4)))
+#else
+   // TODO write LIB_... macros
+#  define LIBFUNC_INIT
+#  define LIBFUNC_EXIT
+
+#  define bug kprintf
+#endif
+
+#if defined(__AROS__)
+   /* Platforms which need HookEntry from amiga.lib */
+   //#  define SETHOOK(hookname, funcname) hookname.h_Entry = HookEntry; hookname.h_SubEntry = (HOOKFUNC)funcname
+   // FIXME for now we set funcname to h_Entry. This must later be changed to h_SubEntry (uncomment
+   // the line above)
+#  define SETHOOK(hookname, funcname) hookname.h_Entry = (HOOKFUNC)funcname;
+
+#  define SETDISPATCHER(classname, funcname) classname->cl_Dispatcher.h_Entry = HookEntry; \
+   classname->cl_Dispatcher.h_SubEntry = (HOOKFUNC)funcname
+#else
+#  define SETHOOK(hookname, funcname) hookname.h_Entry = (HOOKFUNC)funcname
+#  define SETDISPATCHER(classname, funcname) classname->cl_Dispatcher.h_Entry = (HOOKFUNC)funcname
+#endif
+
 #endif /* SDI_COMPILER_H */