#define FAMEC_CHECK_BRANCHES\r
#define FAMEC_EXTRA_INLINE\r
// #define FAMEC_DEBUG\r
-// #define FAMEC_NO_GOTOS\r
+#define FAMEC_NO_GOTOS\r
#define FAMEC_ADR_BITS 24\r
// #define FAMEC_FETCHBITS 8\r
#define FAMEC_DATABITS 8\r
#define ROR_33(A, C) (LSR_32(A, C) | LSL_32(A, 33-(C)))\r
\r
#ifndef FAMEC_NO_GOTOS\r
-#define NEXT \\r
+#define NEXT do { \\r
FETCH_WORD(Opcode); \\r
- goto *JumpTable[Opcode];\r
+ goto *JumpTable[Opcode]; \\r
+}\r
\r
#ifdef FAMEC_ROLL_INLINE\r
-#define RET(A) \\r
+#define RET(A) { \\r
ctx->io_cycle_counter -= (A); \\r
if (ctx->io_cycle_counter <= 0) goto famec_Exec_End; \\r
- NEXT\r
+ NEXT \\r
+}\r
#else\r
-#define RET(A) \\r
+#define RET(A) { \\r
ctx->io_cycle_counter -= (A); \\r
if (ctx->io_cycle_counter <= 0) goto famec_Exec_End; \\r
- goto famec_Exec;\r
+ goto famec_Exec; \\r
+}\r
#endif\r
\r
-#define RET0() \\r
+#define RET0() { \\r
ctx->io_cycle_counter = -6; \\r
- goto famec_End;\r
+ goto famec_End; \\r
+}\r
\r
#else\r
\r
JumpTable[Opcode](ctx); \\r
} while (ctx->io_cycle_counter > 0);\r
\r
-#define RET(A) \\r
+#define RET(A) { \\r
ctx->io_cycle_counter -= (A); \\r
- return;\r
+ return; \\r
+}\r
\r
-#define RET0() \\r
+#define RET0() { \\r
ctx->io_cycle_counter = -6; \\r
- return;\r
+ return; \\r
+}\r
\r
#endif\r
\r