View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000012 | IDE Simulator | [All Projects] General | public | 2021-09-05 05:39 | 2021-09-05 17:23 |
Reporter | astigmatism | Assigned To | |||
Priority | normal | Severity | major | Reproducibility | sometimes |
Status | new | Resolution | open | ||
Summary | 0000012: Cannot read CD-ROM directory contents regularly in DOS 6.22 or Windows 3.11 | ||||
Description | Platform: ESC P5GX-m, Cyrix Media GX 266MHz, 64MB RAM. DOS 6.22/Windows 3.11 for Workgroups OAKCDROM.SYS, MSCDEX 3.32 firmware: "dos-refactor-fix" (6-18-2021) Browsing CD-ROM content in File Manager (Windows 3.11) will frequently throw this OS error message: "Error Reading Directory" There is no disk in drive D Insert a disk, and then try again Retry, Cancel Clicking "Retry" once or twice and the content will usually appear normally. Other times this issue seems to manifest itself by displaying empty directory contents in File Manager but when browsing to other folders and returning back all file contents will then be displayed. This error message is also present during Windows 3.11 gameplay if the game requires frequent CD-ROM access (I tested King's Quest 6). A similar dialog will appear overtop of the game indicating files could not be read. As you can imagine, this makes games like this unplayable. I've had similar read issues with games in DOS 6.22, namely Albion, when the game will crash and its error.log will contain something like this: BBDOS Library: DOS_setcurrentdir: unknown error - FILENAME: D:\ALBION - DATA: 0 - OSERROR: 1 Xload: File foes not exist. I attempted to rectify this issue with the following without success: Multiple IDE cables, multiple high-speed USB media, multiple dumps of the aforementioned games (in both ISO and BIN/CUE formats) I have included the final lines "monitor" below after one of these errors occurs. If it is possible to share the disk images I am using to create these issues, let me know how to share them. Finally, I absolutely love this product and thank you Colin for all your great efforts to get this going with the MS-DOS community. I certainly want to help make this device the best it can be :) | ||||
Additional Information | Final lines of monitor: PACKET: SCSI: READ (10): address=00 00 00 12 size=00 00 Finish: SCSI PACKET: SCSI: READ (10): address=00 00 00 12 size=00 01 Finish: SCSI PACKET: SCSI: TEST UNIT READY Finish: SCSI PACKET: SCSI: READ (10): address=00 00 00 14 size=00 01 PACKET: SCSI: TEST UNIT READY Finish: SCSI PACKET: SCSI: TEST UNIT READY Finish: SCSI PACKET: SCSI: TEST UNIT READY Finish: SCSI PACKET: SCSI: READ (10): address=00 00 00 14 size=00 01 PACKET: SCSI: TEST UNIT READY Finish: SCSI PACKET: SCSI: TEST UNIT READY Finish: SCSI PACKET: SCSI: READ (10): address=00 00 00 14 size=00 01 Finish: SCSI PACKET: SCSI: TEST UNIT READY Finish: SCSI | ||||
Tags | No tags attached. | ||||
|
It occurred to me just after posting that I might try reenabling SMARTDRV in DOS 6.22. I don't normally use it but thought this issue could be related to disk caching. Any thoughts on this? I will be testing configurations. |
|
SMARTDRV could do something as it's a TSR that sits handling interrupts just like the other drivers, but I can't imagine it does much for CD drivers themselves. The interesting things in the log are that it looks like the host machine isn't getting the notification that the pages are available to read (e.g. they do a READ, then TEST UNIT READY like they've decided the drive wasn't done, but the drive was probably waiting for them to do the transfer). There's hopefully a simple hardware reason for it to not have realised. How is the drive connected to the PC? Super I/O or is that machine new enough to have onboard IDE on the motherboard? |
|
This board includes an on-board IDE controller with the interface properties taken from the simulator listed below. Also important to add is that the issue described was not experienced using a traditional CD-ROM drive with the original disks. IDE interface: interrupt idle Config: Master (selected: YES) Feature Register: 00 Error Register: 00 Status Register: 50 DSC DRDY Sector Count Register: 03 Sector Number Register/LBA1: 00 Cylinder Low Register/LBA2: 00 Cylinder High Register/LBA3: 08 Command Register: A0 (PACKET) Event Register: 08 INTERRUPT_REQUEST DMA Mode: 00 DMA/PIO base address: 0432 DMA/PIO length: 0000 |
Date Modified | Username | Field | Change |
---|---|---|---|
2021-09-05 05:39 | astigmatism | New Issue | |
2021-09-05 06:13 | astigmatism | Note Added: 0000097 | |
2021-09-05 06:24 | colin | Note Added: 0000098 | |
2021-09-05 17:23 | astigmatism | Note Added: 0000099 |