+}\r
+\r
+#ifdef PICODRIVE_HACK\r
+\r
+#define INSTALL_IDLE(fake_op_base,real_op,detector,idle_handler,normal_handler) \\r
+ JumpTable[fake_op_base] = CAST_OP(idle_handler); \\r
+ JumpTable[fake_op_base|0x0200] = CAST_OP(normal_handler); \\r
+ JumpTable[real_op] = CAST_OP(detector)\r
+\r
+#define UNDO_IDLE(fake_op_base,real_op,normal_handler) \\r
+ JumpTable[fake_op_base] = JumpTable[fake_op_base|0x0200] = CAST_OP(0x4AFC); \\r
+ JumpTable[real_op] = CAST_OP(normal_handler)\r
+\r
+idle_install:\r
+ // printf("install..\n");\r
+ INSTALL_IDLE(0x71fa, 0x66fa, idle_detector_bcc8, 0x6601_idle, 0x6601);\r
+ INSTALL_IDLE(0x71f8, 0x66f8, idle_detector_bcc8, 0x6601_idle, 0x6601);\r
+ INSTALL_IDLE(0x71f6, 0x66f6, idle_detector_bcc8, 0x6601_idle, 0x6601);\r
+ INSTALL_IDLE(0x71f2, 0x66f2, idle_detector_bcc8, 0x6601_idle, 0x6601);\r
+ INSTALL_IDLE(0x75fa, 0x67fa, idle_detector_bcc8, 0x6701_idle, 0x6701);\r
+ INSTALL_IDLE(0x75f8, 0x67f8, idle_detector_bcc8, 0x6701_idle, 0x6701);\r
+ INSTALL_IDLE(0x75f6, 0x67f6, idle_detector_bcc8, 0x6701_idle, 0x6701);\r
+ INSTALL_IDLE(0x75f2, 0x67f2, idle_detector_bcc8, 0x6701_idle, 0x6701);\r
+ INSTALL_IDLE(0x7dfe, 0x60fe, idle_detector_bcc8, 0x6001_idle, 0x6001);\r
+ INSTALL_IDLE(0x7dfc, 0x60fc, idle_detector_bcc8, 0x6001_idle, 0x6001);\r
+ return 0;\r
+\r
+idle_remove:\r
+ // printf("remove..\n");\r
+ UNDO_IDLE(0x71fa, 0x66fa, 0x6601);\r
+ UNDO_IDLE(0x71f8, 0x66f8, 0x6601);\r
+ UNDO_IDLE(0x71f6, 0x66f6, 0x6601);\r
+ UNDO_IDLE(0x71f2, 0x66f2, 0x6601);\r
+ UNDO_IDLE(0x75fa, 0x67fa, 0x6701);\r
+ UNDO_IDLE(0x75f8, 0x67f8, 0x6701);\r
+ UNDO_IDLE(0x75f6, 0x67f6, 0x6701);\r
+ UNDO_IDLE(0x75f2, 0x67f2, 0x6701);\r
+ UNDO_IDLE(0x7dfe, 0x60fe, 0x6001);\r
+ UNDO_IDLE(0x7dfc, 0x60fc, 0x6001);\r
+ return 0;\r
+\r
+#endif\r
+}\r