From 94c7d1b32cc23d5cf2c2b1c97e3b5a06d32051e3 Mon Sep 17 00:00:00 2001 From: "R. Belmont" Date: Sat, 15 Oct 2011 18:46:25 +0000 Subject: [PATCH] 68681: work around core problem where a timer set to 0 hz locks up MAME (nw) --- src/emu/machine/68681.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/emu/machine/68681.c b/src/emu/machine/68681.c index fca5530bca8..17b4d7cde37 100644 --- a/src/emu/machine/68681.c +++ b/src/emu/machine/68681.c @@ -574,6 +574,13 @@ READ8_DEVICE_HANDLER(duart68681_r) //attotime rate = attotime::from_hz(duart68681->clock) * (16*duart68681->CTR.w.l); attotime rate = attotime::from_hz(2*device->clock()/(2*16*16*duart68681->CTR.w.l)); //hz = ATTOSECONDS_TO_HZ(rate.attoseconds); + + // workaround for maygay1b locking up MAME + if ((2*device->clock()/(2*16*16*duart68681->CTR.w.l)) == 0) + { + rate = attotime::from_hz(1); + } + duart68681->duart_timer->adjust(rate, 0, rate); } break;