32x: improve pwm accuracy
[picodrive.git] / pico / sek.c
index bc44c47..85bfd28 100644 (file)
@@ -1,11 +1,11 @@
-// This is part of Pico Library\r
-\r
-// (c) Copyright 2004 Dave, All rights reserved.\r
-// (c) Copyright 2006 notaz, All rights reserved.\r
-// Free for non-commercial use.\r
-\r
-// For commercial use, separate licencing terms must be obtained.\r
-\r
+/*\r
+ * PicoDrive\r
+ * (c) Copyright Dave, 2004\r
+ * (C) notaz, 2006-2009\r
+ *\r
+ * This work is licensed under the terms of MAME license.\r
+ * See COPYING file in the top-level directory.\r
+ */\r
 \r
 #include "pico_int.h"\r
 #include "memory.h"\r
@@ -219,7 +219,8 @@ PICO_INTERNAL void SekPackCpu(unsigned char *cpu, int is_sub)
   cpu[0x4d] = (context->execinfo & FM68K_HALTED) ? 1 : 0;\r
 #endif\r
 \r
-  *(unsigned int *)(cpu+0x40)=pc;\r
+  *(unsigned int *)(cpu+0x40) = pc;\r
+  *(unsigned int *)(cpu+0x50) = SekCycleCntT;\r
 }\r
 \r
 PICO_INTERNAL void SekUnpackCpu(const unsigned char *cpu, int is_sub)\r
@@ -256,12 +257,13 @@ PICO_INTERNAL void SekUnpackCpu(const unsigned char *cpu, int is_sub)
   context->execinfo &= ~FM68K_HALTED;\r
   if (cpu[0x4d]&1) context->execinfo |= FM68K_HALTED;\r
 #endif\r
+  SekCycleCntT = *(unsigned int *)(cpu+0x50);\r
 }\r
 \r
 \r
 /* idle loop detection, not to be used in CD mode */\r
 #ifdef EMU_C68K\r
-#include "cpu/Cyclone/tools/idle.h"\r
+#include "cpu/cyclone/tools/idle.h"\r
 #endif\r
 \r
 static unsigned short **idledet_ptrs = NULL;\r