initial code for Nemesis' blip discovery
[picodrive.git] / cpu / cz80 / cz80.c
index d7bdba3..20e8053 100644 (file)
@@ -242,6 +242,7 @@ INT32 Cz80_Exec(cz80_struc *CPU, INT32 cycles)
        UINT32 res;\r
        UINT32 val;\r
        int afterEI = 0;\r
+       union16 *data;\r
 \r
        PC = CPU->PC;\r
 #if CZ80_ENCRYPTED_ROM\r
@@ -255,7 +256,8 @@ INT32 Cz80_Exec(cz80_struc *CPU, INT32 cycles)
 Cz80_Exec:\r
                if (CPU->ICount > 0)\r
                {\r
-                       union16 *data = pzHL;\r
+Cz80_Exec_nocheck:\r
+                       data = pzHL;\r
                        Opcode = READ_OP();\r
 #if CZ80_EMULATE_R_EXACTLY\r
                        zR++;\r
@@ -270,6 +272,8 @@ Cz80_Check_Interrupt:
                        if (CPU->IRQState != CLEAR_LINE)\r
                        {\r
                                CHECK_INT\r
+                               CPU->ICount -= CPU->ExtraCycles;\r
+                               CPU->ExtraCycles = 0;\r
                        }\r
                        goto Cz80_Exec;\r
                }\r