if (subscreen_address) {
             execute_cheat(subscreen_address, 0x0002, NULL);
             if (credits_address[0]){
-                if (execute_cheat(credits_address[0], 0x0320, NULL));
+                if (execute_cheat(credits_address[0], 0x0320, NULL))
                     execute_cheat(credits_address[1], 0x0000, NULL);
-                if (execute_cheat(credits_address[2], 0xF809, NULL));
+                if (execute_cheat(credits_address[2], 0xF809, NULL))
                     execute_cheat(credits_address[3], 0x0000, NULL);
             }
         }
 
    }
 #define CHECK_MEMORY()
 
-#include "interpreter.def"
-
 // two functions are defined from the macros above but never used
 // these prototype declarations will prevent a warning
 #if defined(__GNUC__)
-  void JR_IDLE(void) __attribute__((used));
-  void JALR_IDLE(void) __attribute__((used));
+  static void JR_IDLE(void) __attribute__((used));
+  static void JALR_IDLE(void) __attribute__((used));
 #endif
 
+#include "interpreter.def"
+
 static cpu_instruction_table pure_interpreter_table = {
    LB,
    LBU,
 
           current_instruction_table.NOTCOMPILED) \
          invalid_code[address>>12] = 1;
 
-#include "interpreter.def"
-
 // two functions are defined from the macros above but never used
 // these prototype declarations will prevent a warning
 #if defined(__GNUC__)
-  void JR_IDLE(void) __attribute__((used));
-  void JALR_IDLE(void) __attribute__((used));
+  static void JR_IDLE(void) __attribute__((used));
+  static void JALR_IDLE(void) __attribute__((used));
 #endif
 
+#include "interpreter.def"
+
 // -----------------------------------------------------------
 // Flow control 'fake' instructions
 // -----------------------------------------------------------