Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
05387 Timing Minor Always Dec 2, 2013, 00:52 Nov 26, 2019, 16:17
Tester Zaphod View Status Public Platform MAME (Official Binary)
Assigned To AJR Resolution Fixed OS Windows Vista/7/8 (64-bit)
Status [?] Resolved Driver snk6502.cpp
Version 0.151 Fixed in Version 0.217 Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 05387: nibbler: Some animations run too fast.
Description The snake warping in animation runs too fast, causing it to finish before the triple sweep does. On real hardware, it syncs precisely with the sound effect.

This is confirmed on video from real boards on youtube.

this has been present for a LONG time.
Steps To Reproduce Just start a game. Happens every single time.
Additional Information Incidentally, some real boards suffer from this same timing error.

The speed of actual gameplay is probably correct.

I believe similar issues exist with fantasy, because the timing of the ending seems off to me, but i cannot confirm this. but i'm pretty sure it's a general fault in the driver.
Github Commit
Flags Verified with Original
Regression Version
Affected Sets / Systems nibbler
Attached Files
There are no relationship linked to this issue.
User avatar
Dec 2, 2013, 14:46
I have a fix for this in 0.152 (r26289) by changing the clock rate down to adjust for the issue - but I'm told my divisor is wrong. So, it's not fixed but feels closer. It will need to be reexamined.
User avatar
Senior Tester
Dec 13, 2018, 23:10
This was fixed in mame 0.152:
-snk6502.c: Adjusted Nibbler board clock rate to use actual known
 master clock and a logical divisor. [Tafoid]
User avatar
Senior Tester
Dec 18, 2018, 06:10
Tafoid stated the divisor is not confirmed, so until we know what it is for certain, this remains open.
User avatar
Nov 26, 2019, 16:17
I've confirmed the actual CPU clock divider from schematics. It's 11.289 MHz divided by 8, but the wait states imposed on most ROM reads effectively cut that frequency in half most of the time. This applies to all games in snk6502.cpp but the earliest ones, which run with a CPU clock divider of 16 and no wait states.