Page 1 of 1

game & watch CRC error (SVG files)

Posted: Sat Feb 08, 2020 5:07 pm
by JessicaJones
Hello,

I'm manually (using a tool) calculating CRC32 values of ROM files inside the zip files of game & watch games.
I'm using a working ROM zip file for mame 0.218 so my file is correct and plays in MAME.

I found CRC32 errors in -listxml .

for example: gnw_helmet.zip

This file has 2 files inside: "cn-17" and "gnw_helmet.svg"

The CRC32 of "cn-17" is 6d251e2e and correct.
The CRC32 of "gnw_helmet.svg" is 0dce1694 but is WRONG!
My result is fa8294a3
(you can confirm this by calculating CRC32 of file "gnw_helmet.svg")

Why is there a wrong CRC32 value for this file in -listxml? Is this a bug?

Many other game & watch games have wrong CRC32 for *.svg files inside the zip file. (it are always the *.svg files that have wrong CRC32, all other files inside the zip file are having correct CRC32).

examples with wrong CRC32 values for *.svg files:

gnw_ball.zip
gnw_bfight.zip
gnw_bjack.zip
gnw_boxing.zip
...

thx!

Re: game & watch CRC error (SVG files)

Posted: Sat Feb 08, 2020 5:15 pm
by abelenki
JessicaJones wrote:
Sat Feb 08, 2020 5:07 pm
I'm manually (using a tool) calculating CRC32 values of ROM files inside the zip files of game & watch games.
lol.
I'm using a working ROM zip file for mame 0.218 so my file is correct and plays in MAME.
lol.

learn how to use real ROM management tools, and where to get up-to-date MAME ROM set.

Re: game & watch CRC error (SVG files)

Posted: Sat Feb 08, 2020 8:16 pm
by JessicaJones
If you say I have WRONG ROM files, why does MAME NOT give me a CRC error when trying to run the game?

Also MAMEUI verifies the game using the 'audit' feature and tells 'ROM check: Passed'

Still, the CRC values of the *.svg files in my zip files are WRONG but BOTH MAME and MAMEUI do *NOT* give CRC errors for those files...



I'm talking about the bold line which has a wrong CRC for the game "gnw_helmet":

<machine name="gnw_helmet" sourcefile="hh_sm510.cpp">
<description>Game &amp; Watch: Helmet (CN-17 version)</description>
<year>1981</year>
<manufacturer>Nintendo</manufacturer>
<rom name="cn-17" size="1856" crc="6d251e2e" sha1="c61f591514de36fb2270038a6505945564c9f90e" region="maincpu" offset="0"/>
<rom name="gnw_helmet.svg" size="109404" crc="0dce1694" sha1="412e69054b95f17fe08545f3c303c11abbe26304" region="screen" offset="0"/>

Please explain somebody?

Re: game & watch CRC error (SVG files)

Posted: Sat Feb 08, 2020 8:37 pm
by abelenki
Also MAMEUI verifies the game using the 'audit' feature and tells 'ROM check: Passed'
MAMEUI has nothing to do with official MAME.
Still, the CRC values of the *.svg files in my zip files are WRONG but BOTH MAME and MAMEUI do *NOT* give CRC errors for those files...
just get up-to-date MAME ROM set (as i mentioned in previous post).

.svg files in ROM set are built-in LCD simulation / artwork for Game & Watch handhelds. they are usually work-in-progress. see:

https://forums.bannister.org/ubbthreads ... mber=97003

Re: game & watch CRC error (SVG files)

Posted: Sat Feb 08, 2020 8:46 pm
by JessicaJones
abelenki wrote:
Sat Feb 08, 2020 8:37 pm
.svg files in ROM set are LCD artwork for Game & Watch handhelds. they are usually work-in-progress. see:

https://forums.bannister.org/ubbthreads ... mber=97003
So MAME and ROM managers do NOT verify SVG files? Is that correct?

Re: game & watch CRC error (SVG files)

Posted: Sat Feb 08, 2020 8:50 pm
by abelenki
JessicaJones wrote:
Sat Feb 08, 2020 8:46 pm
So MAME and ROM managers do NOT verify SVG files? Is that correct?
no.

Clrmamepro verifies everything correctly (if you provided correct DAT file and ROM set).

learn how to use ROM managers and get up-to-date ROM set.

Re: game & watch CRC error (SVG files)

Posted: Sun Feb 09, 2020 2:29 am
by Tafoid
JessicaJones wrote:
Sat Feb 08, 2020 5:07 pm
Hello,

I'm manually (using a tool) calculating CRC32 values of ROM files inside the zip files of game & watch games.
I'm using a working ROM zip file for mame 0.218 so my file is correct and plays in MAME.

I found CRC32 errors in -listxml .

for example: gnw_helmet.zip

This file has 2 files inside: "cn-17" and "gnw_helmet.svg"

The CRC32 of "cn-17" is 6d251e2e and correct.
The CRC32 of "gnw_helmet.svg" is 0dce1694 but is WRONG!
My result is fa8294a3
(you can confirm this by calculating CRC32 of file "gnw_helmet.svg")

Why is there a wrong CRC32 value for this file in -listxml? Is this a bug?

Many other game & watch games have wrong CRC32 for *.svg files inside the zip file. (it are always the *.svg files that have wrong CRC32, all other files inside the zip file are having correct CRC32).

examples with wrong CRC32 values for *.svg files:

gnw_ball.zip
gnw_bfight.zip
gnw_bjack.zip
gnw_boxing.zip
...

thx!


Simply put, as has been stated by another, you are using parts of a romset which have since been updated from what you have locally and you'll need to obtain a copy matching what MAME expects. Great lengths are made to assure that everything that has any type of hash value in MAME has been verified to exist. MAME is 100% correct.

Example: gnw_helmet you mentioned and other handhelds there was an issue with the .svg files and display problems which was fixed in the latter commit shown below:

Initial commit - https://github.com/mamedev/mame/commit/ ... ae30bd1f3 - for 0.214
Romset changed - https://github.com/mamedev/mame/commit/ ... 2cbc4b0a7f - for 0.215


As far as your issue with auditing, MAMEDEV produced MAME will tell you that the romset is incorrect. In fact, if running through the internal MAME user interface, it will not let you attempt to emulate until the issue is resolved. If you run via command-line, you get an error as detailed before, but you can run it after acknowledging the mismatch issue - as well as attempting -verifyroms:
c:\mamegit\mame>mame64 gnw_helmet
gnw_helmet.svg WRONG LENGTH (expected: 0001ab5c found: 0001aab9)
gnw_helmet.svg WRONG CHECKSUMS:
EXPECTED: CRC(0dce1694) SHA1(412e69054b95f17fe08545f3c303c11abbe26304)
FOUND: CRC(fa8294a3) SHA1(05b734ac0126d3bffe160a23753a0a7e6f82996e)
WARNING: the machine might not run correctly.

c:\mamegit\mame>mame64 -verifyroms gnw_helmet
gnw_helmet : gnw_helmet.svg (109404 bytes) - INCORRECT LENGTH: 109241 bytes
romset gnw_helmet is bad
1 romsets found, 0 were OK.

In summary, update your romsets and know that MAME is 100% right when it comes to its hash data.