Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
05404 Core Minor Always Dec 30, 2013, 04:33 Dec 31, 2013, 06:24
Tester AWJ View Status Public Platform SDLMAME
Assigned To AWJ Resolution Fixed OS Linux
Status [?] Resolved Driver
Version 0.152 Fixed in Version 0.153 Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 05404: all: Screenshots from 64-bit builds have off-by-1 color errors
Description The attached file is the output of pngcmp on screenshots of the test grid screen in polepos taken with a 32-bit MAME build (left) and a 64-bit build (center). Although the two screenshots look identical to the naked eye, the merciless gaze of pngcmp reveals that every blue pixel is different. If you open the png in a graphics editor and use a "select by color" tool, you can see that the blue pixels in the 64-bit screenshot aren't even all the same color as each other!

In the 32-bit screenshot, every single blue pixel is RGB(45, 67, 157). In the 64-bit screenshot, most of the blue pixels are RGB(45, 67, 158), but the blue pixels at the lower and right edges of the blue squares are RGB(46, 68, 158).
Steps To Reproduce
Additional Information This bug seems to be caused by the SSE2 versions of the RGB utility functions (in emu/video/rgbsse.h), which are currently only used by 64-bit builds. If I modify emu/video/rgbutil.* to force use of the generic C implementation (emu/video/rgbgen.h), the errors go away and 64-bit screenshots become 100% identical to 32-bit screenshots.
Github Commit
Flags 64-bit specific
Regression Version
Affected Sets / Systems all
Attached Files
png file icon diff.png (5,026 bytes) Dec 30, 2013, 04:33 Uploaded by AWJ
related to 04157ResolvedAWJ  calspeed: Incorrect alpha in Mt. Shasta stage on 64-bit build 
There are no notes attached to this issue.