clarify PicoDrive's license
[picodrive.git] / pico / 32x / 32x.c
index e7779b9..a452f83 100644 (file)
@@ -1,3 +1,10 @@
+/*
+ * PicoDrive
+ * (C) notaz, 2009,2010
+ *
+ * This work is licensed under the terms of MAME license.
+ * See COPYING file in the top-level directory.
+ */
 #include "../pico_int.h"
 #include "../sound/ym2612.h"
 
@@ -194,6 +201,7 @@ static __inline void run_m68k(int cyc)
 {
   pprof_start(m68k);
 
+p32x_poll_event(3, 0);
 #if defined(EMU_C68K)
   PicoCpuCM68k.cycles = cyc;
   CycloneRun(&PicoCpuCM68k);
@@ -210,7 +218,8 @@ static __inline void run_m68k(int cyc)
 // ~1463.8, but due to cache misses and slow mem
 // it's much lower than that
 //#define SH2_LINE_CYCLES 735
-#define CYCLES_M68K2SH2(x) ((x) * 6 / 4)
+#define CYCLES_M68K2MSH2(x) (((x) * p32x_msh2_multiplier) >> 10)
+#define CYCLES_M68K2SSH2(x) (((x) * p32x_ssh2_multiplier) >> 10)
 
 #define PICO_32X
 #define CPUS_RUN_SIMPLE(m68k_cycles,s68k_cycles) \
@@ -227,12 +236,12 @@ static __inline void run_m68k(int cyc)
       elprintf(EL_32X, "slice %d", slice); \
     if (!(Pico32x.emu_flags & (P32XF_SSH2POLL|P32XF_SSH2VPOLL))) { \
       pprof_start(ssh2); \
-      sh2_execute(&ssh2, CYCLES_M68K2SH2(slice)); \
+      sh2_execute(&ssh2, CYCLES_M68K2SSH2(slice)); \
       pprof_end(ssh2); \
     } \
     if (!(Pico32x.emu_flags & (P32XF_MSH2POLL|P32XF_MSH2VPOLL))) { \
       pprof_start(msh2); \
-      sh2_execute(&msh2, CYCLES_M68K2SH2(slice)); \
+      sh2_execute(&msh2, CYCLES_M68K2MSH2(slice)); \
       pprof_end(msh2); \
     } \
     pprof_start(dummy); \