Index: generic/include/interrupt.h
===================================================================
--- generic/include/interrupt.h	(revision 7ae44435719a45d52472fa45638d0a67fd5cf700)
+++ generic/include/interrupt.h	(revision 1120276ccc8b05501c44caedc58016ff6f503729)
@@ -31,10 +31,13 @@
 
 #include <arch/interrupt.h>
+#include <typedefs.h>
 
 #ifndef IVT_ITEMS
-#  define IVT_ITEMS 0
+#	define IVT_ITEMS 0
 #endif
 
-typedef void (* iroutine)(int n, void *stack);
+#ifndef IVT_FIRST
+#	define IVT_FIRST 0
+#endif
 
 extern iroutine exc_register(int n, const char *name, iroutine f);
Index: generic/include/typedefs.h
===================================================================
--- generic/include/typedefs.h	(revision 7ae44435719a45d52472fa45638d0a67fd5cf700)
+++ generic/include/typedefs.h	(revision 1120276ccc8b05501c44caedc58016ff6f503729)
@@ -87,3 +87,5 @@
 typedef struct cmd_info cmd_info_t;
 
+typedef void (* iroutine)(int n, void *stack);
+
 #endif
