From 02df8f4487dcc376d27e305d1e245f177ffb9829 Mon Sep 17 00:00:00 2001 From: Ville Linde Date: Fri, 18 Apr 2014 00:53:46 +0000 Subject: [PATCH] voodoo.c: Fixed an edge case where CMDFIFO execution would get stuck if the first word in CMDFIFO buffer is written out of order. (nw) --- src/emu/video/voodoo.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/emu/video/voodoo.c b/src/emu/video/voodoo.c index 24198fa0feb..6deceece796 100644 --- a/src/emu/video/voodoo.c +++ b/src/emu/video/voodoo.c @@ -2051,7 +2051,11 @@ static void cmdfifo_w(voodoo_state *v, cmdfifo_info *f, offs_t offset, UINT32 da if (f->holes != 0) logerror("Unexpected CMDFIFO: AMin=%08X AMax=%08X Holes=%d WroteTo:%08X\n", f->amin, f->amax, f->holes, addr); - f->amin = f->amax = addr; + //f->amin = f->amax = addr; + f->holes += (addr - f->base) / 4; + f->amin = f->base; + f->amax = addr; + f->depth++; }