Previous 199869 Revisions Next

r20038 Thursday 3rd January, 2013 at 14:21:18 UTC by Phil Bennett
MSM6242: Fix hang on savestate load -nw-
[src/emu/machine]msm6242.c

trunk/src/emu/machine/msm6242.c
r20037r20038
104104   save_item(NAME(m_irq_flag));
105105   save_item(NAME(m_irq_type));
106106   save_item(NAME(m_tick));
107   save_item(NAME(m_last_update_time));
107108}
108109
109110
r20037r20038
247248   m_last_update_time = curtime;
248249
249250   // no delta?  just return
250   if (delta <= 0)
251   if (delta == 0)
251252      return;
252253
253254   // ticks
254255   if ((m_tick % 200) != ((delta + m_tick) % 0x200))
255256      irq(IRQ_64THSECOND);
256257   delta = bump(RTC_TICKS, delta, 0, 0x8000);
257   if (delta <= 0)
258   if (delta == 0)
258259      return;
259260
260261   // seconds
261262   irq(IRQ_SECOND);
262263   delta = bump(RTC_SECOND, delta, 0, 60);
263   if (delta <= 0)
264   if (delta == 0)
264265      return;
265266
266267   // minutes
267268   irq(IRQ_MINUTE);
268269   delta = bump(RTC_MINUTE, delta, 0, 60);
269   if (delta <= 0)
270   if (delta == 0)
270271      return;
271272
272273   // hours
273274   irq(IRQ_HOUR);
274275   delta = bump(RTC_HOUR, delta, 0, 24);
275   if (delta <= 0)
276   if (delta == 0)
276277      return;
277278
278279   // days

Previous 199869 Revisions Next


© 1997-2024 The MAME Team