Genesis-Plus-GX icon indicating copy to clipboard operation
Genesis-Plus-GX copied to clipboard

Errors with Krikzz's Mega-CD Verificator

Open ekeeke opened this issue 3 years ago • 20 comments

When being run in Genesis Plus GX, Krikzz's Mega-CD Verificator Test ROM reports several errors:

image

This test ROM has been reported (by Krikzz) to run without errors on CDX/Multimega hardware.

ekeeke avatar Jan 29 '22 17:01 ekeeke

Following tests have been fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/58accf068963e3dbf2d94a49256d334c3548e571: COLOR CALC : TEST 0x05 REG X002: TEST 0x29 REG 8030: TEST 0x02

image

ekeeke avatar Feb 25 '22 15:02 ekeeke

REG 2006 TEST 0x02 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/ee5b917c328186fc4680cca97a51339c8570b6e1 and https://github.com/ekeeke/Genesis-Plus-GX/commit/7fe8d95ca179485e53b94d45f315125e6f131f0d

image

ekeeke avatar Feb 25 '22 15:02 ekeeke

Just a heads up: I had a friend run the verificator on his European Model 1 MCD, and it reported this:

I do know that only NTSC seems to have been tested on krikzz's end, so the timing stuff probably is no surprise, but the CDC register thing is kind of interesting. Notably, it doesn't report back the same behavior with the supposed "RS" flag that the verificator's source code mentions. Originally, I had a PR that addressed this along with a couple other things, but this kinda complicates this a bit, in my opinion.

DevsArchive avatar Oct 04 '22 08:10 DevsArchive

Yes, this test was confirmed as not working on most Sega CD / Mega CD models by Blastem author (see http://gendev.spritesmind.net/forum/viewtopic.php?f=5&t=3166&start=25) so I suspect it only works on the specific CDC model (LC8913) used in CDX/Multimega and X-Eye/Wondermega M2. If you look at the (very limited) LC8913 datasheet, it seems there are some additional configuration (double/quad speed playback, configurable CD input stream format,...) that are not mentionned in the other chips of same family (LC89510 and LC89515) used in Model 1 / Model 2 hardware so it is quite possible this particular chip model extends the number of available registers and use 5 bits for Address Register.

ekeeke avatar Oct 04 '22 11:10 ekeeke

Ah, I didn't see that thread before, completely flew under my radar somehow. Glad to know.

DevsArchive avatar Oct 04 '22 14:10 DevsArchive

REG X002 test 0x03 and WORD RAM test 0x20 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/6cc8bbc2776dfbe62411fc1e8fbc5807c8e3558d (intially fixing issue #482)

image

ekeeke avatar Nov 19 '23 14:11 ekeeke

REG X002 test 0x2B fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/6669d259480bd686b388a313c50e6d43733f2e4e

image

ekeeke avatar Nov 19 '23 15:11 ekeeke

CDC INIT test 0x04 and CDC DMA3 test 0x02 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/b330eb85cfd5b8afea6c2609438151a60e399334

image

ekeeke avatar Nov 19 '23 15:11 ekeeke

all CDC REGS tests fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/fcb66202025662a35bda6772d1dac2105e3f0b96

Note: Wondermega M2, X'Eye, CDX or Multi-Mega BIOS is needed for these tests to run OK (with real hardware, these tests only pass on these models, cf comments above)

image

ekeeke avatar Nov 25 '23 18:11 ekeeke

CDC FLAGS test 0x22 and CDC DMA3 tests 0x04 & 0x13 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/52b4f78b821c9e14a2957c4d6765e7876f733823

image

ekeeke avatar Nov 26 '23 15:11 ekeeke

CDC REGS tests and REG 2006 tests 0x02, 0x03 & 0x05 (when run as CD BOOT ROM) fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/02c9dac337f986aefeb521577a8b134dd35c94eb and https://github.com/ekeeke/Genesis-Plus-GX/commit/d4ca576c073cfa0ac347bc25b3986201f1667608

image

ekeeke avatar Nov 26 '23 16:11 ekeeke

CDC DMA3 tests 0x20 and 0x21 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/16589b558fd0ff16e39c4a1811209f1f345d0126

image

ekeeke avatar Jan 18 '24 23:01 ekeeke

CDC DMA3 tests 0x42 to 0x55 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/da8e4e547affcbd295d2e3028735b3283ec2c462

image

ekeeke avatar Jan 21 '24 23:01 ekeeke

CDC DMA3 test 0x56 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/2c1a2d0defb7e9c4aaf0df6beb6b8615db9c0cfe

image

ekeeke avatar Jan 21 '24 23:01 ekeeke

CDC DMA3 tests 0x60 to 0x63 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/64d3e08e7defb585509bebb92bd2c359f74585f5

image

ekeeke avatar Jan 22 '24 00:01 ekeeke

CDC FLAGS tests 0x26 and 0x27 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/90c9c730f08610055833e2a5bebefd49183f41c2 CDC FLAGS test 0x30 infinite loop fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/79bd0e7582c26b6bbc1eaf3b56e7bb47c854e69a (also makes VAR TESTS 0x02 and REG 8030 test 0x07 returning more realistic measured timing values)

image

ekeeke avatar Feb 05 '24 22:02 ekeeke

CDC FLAGS test 0x30 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/904613f51c7988f326663251efb409d0ceb41a84 CDC FLAGS test 0x40 infinite loop fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/e8a6086c894016b6730b95bdc83587072e7cd467

image

ekeeke avatar Feb 05 '24 23:02 ekeeke

VAR TESTS 0x02 and CDC FLAGS tests 0x40/0x41 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/47761b9b8fd35eabd7b3ff3dc5ab0f54f1d95133

image

ekeeke avatar Feb 21 '24 18:02 ekeeke

CDC FLAGS test 0x42 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/f09c97336ed5b917c1018d295cae5b1c86c91cda

image

ekeeke avatar Feb 21 '24 19:02 ekeeke

CDC FLAGS test 0x46 fixed by https://github.com/ekeeke/Genesis-Plus-GX/commit/49a289df89fdff127485289a52ed3e0d7e22824a

image

ekeeke avatar Feb 22 '24 13:02 ekeeke