"Not ready" error with MSXCDEX.COM

By Louthrax

Prophet (2167)

Louthrax's picture

27-01-2020, 23:30

I don't know if many of you are still using CD drives on their MSX machines, but that's something I like to do from time to time (also to check if my tools are also running fine on it).

The only issue is that I always had a random issue with my Gouda SCSI interface and my Pioneer CD-ROM drive: from time to time, I was getting a "Not ready" error, causing the calling application to fail miserably. After some investigations, I think I've found a fix for that in MSXCDEX.COM (looping over the "TstUnitRdy" function call instead of just exiting immediately with error code).

It seems to work well so far (my CD-ROM has been spinning for now 2 hours, displaying random MSX pictures with no issues...). I'll probably release the fix tomorrow, but I'd like to know if somebody already noticed the issue (or if that's specific to my CD-ROM drive).

Also, maybe the same fix could be applied to the IDECDEX.COM, but I'm not sure if that makes sense (is there an equivalent "IsReady" function for IDE), and if anybody has also noticed the problem on this interface ?

Login or register to post comments

By NYYRIKKI

Enlighted (5457)

NYYRIKKI's picture

28-01-2020, 00:15

Maybe you have too fast CD-ROM that takes a bit too much time to spin up? When I was using Gouda SCSI, I believe I had 2x or 4x CD-ROM drive, but I don't remember having these kind of issues... Can't be sure though... It's a bit too long ago to remember accurately. Smile

By sdsnatcher73

Paladin (766)

sdsnatcher73's picture

28-01-2020, 13:15

Nice fix, I never used a CD drive with my MSX (I could not afford it back in the ‘90s) but I was wondering if with Rookie Drive NX and a USB slimline DVD drive (as they are most common now) it would be possible to read CD-ROM. Not sure what would be needed for that to work (a USBCDEX.COM) and/or a driver inside the Rookie Drive?

By lintweaker

Master (172)

lintweaker's picture

28-01-2020, 20:02

@Louthrax, I'd like to test the fix. (It seems we are neighbour Saterday Smile )

By Louthrax

Prophet (2167)

Louthrax's picture

28-01-2020, 21:40

NYYRIKKI wrote:

Maybe you have too fast CD-ROM that takes a bit too much time to spin up? When I was using Gouda SCSI, I believe I had 2x or 4x CD-ROM drive, but I don't remember having these kind of issues... Can't be sure though... It's a bit too long ago to remember accurately. Smile

I have a Pioneer DR-U124X, which seems quite old... After some more tries, the problem seems more related to the burning speed or type of CD used. Anyway looping over the "Not ready" definitively helps, but adding a "max iteration" parameter would be better I guess (for now I just loop forever). Too bad the MSXCDEX sources are not available...

By Louthrax

Prophet (2167)

Louthrax's picture

28-01-2020, 21:42

lintweaker wrote:

@Louthrax, I'd like to test the fix. (It seems we are neighbour Saterday Smile )

Do you have the "Not ready" issue too ? I can send you what I have now for test purposes (I'm not confident enough yet to make an official release). Two parts of the code need to be patched (one seems more related to "seeking" and the other one to "reading").

Looking forward to see you in Nijmegen Smile

By Louthrax

Prophet (2167)

Louthrax's picture

28-01-2020, 22:21

OK, no issues with CD burnt at 52x speed (but issues with CD burnt at lower speed like 8x or 4x). I always imagined that burning at lower speed would be better for old drives, but that seems to be totally wrong in my case (maybe because modern CDs are more targeted for high-speed burning ?)

By lintweaker

Master (172)

lintweaker's picture

29-01-2020, 17:35

I have a lot of problems with SCSI CDROM drives in general lately Smile Maybe it's due to their age (diminishing laser).

By Louthrax

Prophet (2167)

Louthrax's picture

29-01-2020, 21:42

lintweaker wrote:

I have a lot of problems with SCSI CDROM drives in general lately Smile Maybe it's due to their age (diminishing laser).

So, you can try this apha version here: MSXCDEX_patched.zip. It helps, even mith CD burnt at 52x I still had the "Not ready" error from times to times.

Let me know if that improves things on your side too.

For now, it is a "looping forever" fix. I'd like to add a retry count, maybe if I have time (and it that's useful to other people).