First post, by Exploit
I am trying to get a virtual CD-ROM drive running in DR-DOS 3.41 in QEMU 7.0.0, but all attempts failed.
It works with the same Virtual Machine in MS-DOS 6.2 and FreeDOS 1.3 but not DR DOS 3.41.
The Problem seems to be that the CD-ROM driver and MSCDEX version 2.23 loads, but when i try to access the CD-ROM on Drive D: it fails
with the message:
Invalid drive specified
A CD-ROM ISO image file was inserted in the virtual CD-ROM drive.
Also UDVD2 gives the error message:
UDVD2, 3-05-2015. CD/DVD name is MSCD001BAD Controller at I-O address C640h, Chip I.D. 80867010h.CD0: IDE 0 Primary-master, QEMU DVD-ROM, PIO.
I tried several combinations of CD-ROM Drivers which where:
- UDVD2.SYS
- UIDE.SYS
- VIDE-CDD.SYS (proprietary Oak Technologies Universal IDE CD-ROM Driver)
and the DOS CD-ROM Extension:
- MSCDEX.EXE
- SHSUCDX.COM
But all have the same problem.
CONFIG.SYS with UDVD2 from FreeDOS 1.3
UDVD2 requires XMS memory, which DR DOS 3.41 lacks. Thus i loaded HimemEX from FreeDOS 1.3 for it:
...REM HimemEX from FreeDOS 1.3 is required for UDVD2DEVICE = C:\STUFF\HIMEMX\HIMEMX.EXEDEVICE = C:\STUFF\UDVD2\UDVD2.SYS /D:MSCD001...
CONFIG.SYS with UIDE.SYS
...REM HimemEX is not needed with the /N3 switch. /N3 = no XMS memory requiredREM DEVICE = C:\STUFF\HIMEMX\HIMEMX.EXEDEVICE = C:\STUFF\UIDE\UIDE.SYS /D:MSCD001 /N1 /N3 /R15REM I also tried the /A switch for alternate addressing:REM DEVICE = C:\STUFF\UIDE\UIDE.SYS /D:MSCD001 /N1 /N3 /R15 /AREM and the /E switch (makes the driver call the BIOS):REM DEVICE = C:\STUFF\UIDE\UIDE.SYS /D:MSCD001 /N1 /N3 /R15 /EREM and a combination of them:REM DEVICE = C:\STUFF\UIDE\UIDE.SYS /D:MSCD001 /N1 /N3 /R15 /A /E...
The comments where of course set and removed accordingly.
CONFIG.SYS with VIDE-CDD.SYS (proprietary Oak Technologies Universal IDE CD-ROM Driver)
...REM /P:XXX sets the base address for the IDE drive. Available settings are 1F0, 170, 1E8, 168REM If /P is not given, VIDE-CDD.SYS tries auto-detection.REM /L:xx language code. For the screenshot and this board i used US.DEVICE = C:\STUFF\CDROM\VIDE-CDD.SYS /D:MSCD001 /L:USREM DEVICE = C:\STUFF\CDROM\VIDE-CDD.SYS /D:MSCD001 /P:1F0 /L:USREM DEVICE = C:\STUFF\CDROM\VIDE-CDD.SYS /D:MSCD001 /P:170 /L:USREM DEVICE = C:\STUFF\CDROM\VIDE-CDD.SYS /D:MSCD001 /P:1E8 /L:USREM DEVICE = C:\STUFF\CDROM\VIDE-CDD.SYS /D:MSCD001 /P:168 /L:US...
AUTOEXEC.BAT with MSCDEX.EXE
...REM I did not use the /E parameter, thus extended memory was not requiredC:\STUFF\MSCDEX\MSCDEX.EXE /D:MSCD001 /M:16 /L:D /V...
AUTOEXEC.BAT with SHSUCDX.COM
...REM /C = stay in low memoryC:\STUFF\SHUSCDX\SHUSCDX.COM /D:MSCD001 /L:D /C...
Summary:
So i don't know why, but somehow DR-DOS 3.41 was never made to work with CD-ROM drives.
As i said before, the same virtual machine settings work with FreeDOS 1.3 and MS-DOS 6.2.
Does anyone know, what could be the problem with DR DOS 3.41?
Are these DOS incompatibilities?
I know that DR DOS 7.0 was shipped with its own NWCDEX DOS CD-ROM Extension but that is not available in DR DOS 3.41
and the problem seem to be right at the beginning when the CD-ROM drivers get loaded.
The reason why i want to use DR DOS 3.41 for this and not a later version or MS-DOS 6.2 or FreeDOS 1.3 is, that this was my first DOS in my childhood and i wanted to know how far i get with this version.
See screenshots for some of the combinations above.