{{Redirect|Microsoft CD-ROM Extensions|Microsoft's extension to the ISO 9660 format|Joliet (file system)}} {{Use dmy dates|date=June 2019|cs1-dates=y}} {{Use list-defined references|date=January 2022}} {{More citations needed|date=October 2025}} {{Infobox software | name = MSCDEX | logo = | screenshot = Windows 98 startup disk screenshot.png | screenshot size = | caption = MSCDEX as seen from a Windows 98 installation CD | developer = Microsoft | released = {{Release year|1986|df=yes}} | latest release version = 2.25 | latest release date = {{Start date and age|1995|df=yes}} | operating system = MS-DOS, Windows | platform = x86 | genre = Command | license = Proprietary commercial software | website = }}

'''MSCDEX''' or '''Microsoft CD-ROM Extensions''' is a software program produced by Microsoft and included with MS-DOS&nbsp;6.x<ref name="Wolverton_2003"/> and certain versions of Windows to provide CD-ROM support.<ref name="Microsoft_2000_History"/> Earlier versions of MSCDEX since 1986 were installable add-ons for MS-DOS&nbsp;3.1 and higher.<ref name="Barney_1986"/><ref name="Mace_1986"/>

==Overview== The program is a driver executable which allows MS-DOS programs to recognize, read, and control CD-ROMs using the High Sierra and – since version 2.0 as of 1988 – also the ISO&nbsp;9660 file systems.<ref name="Johnston_1988"/><ref name="Microsoft_1994_CDEX21"/> This requires the previous loading of an appropriate CD-ROM device driver (example: OAKCDROM.SYS), usually from CONFIG.SYS.

The final version of the MSCDEX program was 2.25,{{cn|date=January 2020|reason=Various editors have changed this to 2.25, 2.95 and 2.96.<!-- 2.25 is shown in Windows 98 screenshot -->}} included with Windows&nbsp;95 and used when creating bootable floppy disks with CD-ROM support. Starting with Windows&nbsp;95, CD-ROM access became possible through a 32-bit CDFS driver.

The driver uses the Microsoft networks interface in MS-DOS. This is the reason that at least version 3.1<!-- really 3.1, not 3.31? --> of MS-DOS is required. The driver essentially looks similar<!-- not identical --> to a network drive from the system perspective. It is implemented as a terminate-and-stay-resident program<ref name="Microsoft_1994_CDEX21"/> and an extension to the redirector interface ('''CDEX''').

Datalight ROM-DOS includes an implementation of MSCDEX.<ref name="Datalight_2005_ROM-DOS"/>

==Alternatives== {{anchor|NWCDEX}}Novell&nbsp;DOS&nbsp;7, Caldera OpenDOS&nbsp;7.01 and DR-DOS&nbsp;7.02 and higher provide a functional equivalent to MSCDEX named '''NWCDEX''', which also runs under MS-DOS and PC&nbsp;DOS. It has more flexible load-high capabilities, also allowing to relocate and run in protected mode through DPMS on 286 and higher processors, thereby leaving only a 7&nbsp;KB stub in conventional or upper memory (in comparison to MSCDEX, which occupies some 16&nbsp;KB).<ref name="Paul_1997_NWDOSTIP"/> Using EMS with a page frame, NWCDEX can reduce its footprint even down to a few bytes<!-- really bytes, not Kilobytes --> in conventional memory.<ref name="Paul_1997_NWDOSTIP"/> In contrast to MSCDEX, the driver does not depend on undocumented DOS APIs<ref name="Paul_1997_NWDOSTIP"/><ref name="Schulman_1994_Undocumented-DOS"/> and therefore, with a third-party helper tool named '''INSTCDEX''',<ref name="Paul_1997_NWDOSTIP"/><ref name="Paul_1997_INSTCDEX"/><ref name="Paul_1997_NWCDEX"/><ref name="Paul_1997_OD-A3"/> can be loaded via {{mono|INSTALL}} statements and be fully functional in CONFIG.SYS thereby increasing chances to load the driver high and, under these operating systems<!-- not under MS-DOS/PC DOS -->, allow to load other drivers not only from hard disk but also from CD-ROM while the operating system is still processing CONFIG.SYS.<ref name="Paul_1997_NWDOSTIP"/><ref name="Paul_1997_OD-A3"/> An alternative solution, but less flexible, some versions of DR-DOS offer to delay the installation of a driver in CONFIG.SYS until after the DOS data segment relocation via <code>[[<!--HI-->INSTALLLAST (CONFIG.SYS directive)|<!--[HI]-->INSTALLLAST]]</code>.

{{anchor|IMSCDEX}}Based on NWCDEX, IMS REAL/32, a successor to Novell's Multiuser&nbsp;DOS and Digital Research's Concurrent&nbsp;DOS, provides a similar driver named '''IMSCDEX'''.<ref name="Paul_1997_NWDOSTIP"/>

{{anchor|CLOAKING}}A cloaked variant of MSCDEX was provided as part of Helix Software's Multimedia Cloaking product. It uses Cloaking to relocate and run in protected mode on 386 and higher processors.

{{anchor|CORELCDX}}Corel offered '''CORELCDX.COM''' as alternative to MSCDEX.<ref name="Corel"/>

{{anchor|SHSUCDEX}}There's a free alternative called '''SHSUCDX'''<ref name="BOOTCD"/> that is used with the IDE/ATA driver UIDE.SYS<ref name="UIDE.SYS"/> first released in 2005.<ref name="SHSUCDEX"/> It is often used with FreeDOS and works with other DOSes as well.

In 1998, Caldera provided a DRFAT32 driver for DR-DOS to dynamically mount and unmount FAT32 volumes on DOS versions otherwise not natively supporting FAT32. DRFAT32 uses a variation and extension of the CDEX API in order to achieve this and work with older DOS versions.<ref name="Brown_RBIL"/>

==See also== * List of DOS commands

==References== {{Reflist|refs= <ref name="Wolverton_2003">{{Cite book |author-last=Wolverton |author-first=Van |title=Running MS-DOS Version 6.22 |version=20th Anniversary Edition |edition=6th revised |date=2003 |publisher=Microsoft Press |isbn=0-7356-1812-7}}</ref> <ref name="Microsoft_2000_History">{{cite web |title=History of Microsoft MS-DOS CD-ROM Extensions (MSCDEX) |publisher=Microsoft Corporation |date=2000-01-18 |id=Q123408 |work=Microsoft Product Support Services |url=http://support.microsoft.com/kb/q123408/ |access-date=2007-11-24 |url-status=dead |archive-url=https://web.archive.org/web/20080708235428/http://support.microsoft.com/kb/q123408/ |archive-date=2008-07-08}} [https://www.infania.net/ms6kb/Q123408.htm] (NB. Has information on MSCDEX versions 2.1, 2.2, 2.21, 2.22, 2.23.)</ref> <ref name="Barney_1986">{{cite journal |title=Microsoft lets micros read CD-ROMs |journal=Computerworld |author-first=Douglas |author-last=Barney |date=1986-09-22 |page=13 |url=https://books.google.com/books?id=vrrvpxLbx7UC&pg=PA13 |access-date=2016-11-18}}</ref> <ref name="Mace_1986">{{cite journal |title=Extensions to MS-DOS Run CD-ROM |author-first=Scott |author-last=Mace |journal=InfoWorld |volume=8 |issue=38 |date=1986-09-22 |pages=1, 8 |url=https://books.google.com/books?id=ZS8EAAAAMBAJ&pg=PA1 |access-date=2016-11-09}}</ref> <ref name="Paul_1997_OD-A3">{{cite web |author-first=Matthias R. |author-last=Paul |title=Caldera OpenDOS 7.01/7.02 Update Alpha 3 IBMBIO.COM README.TXT |url=http://www.uni-bonn.de/~uzs180/download/ibmbioa3.zip |date=1997-10-02 |access-date=2009-03-29 |url-status=dead |archive-url=https://web.archive.org/web/20031004074600/http://www-student.informatik.uni-bonn.de/~frinke/ibmbioa3.zip |archive-date=2003-10-04}} [https://web.archive.org/web/20181225154705/http://mirror.macintosharchive.org/max1zzz.co.uk/+Windows%20&%20DOS/DOS/System/Novell/Support/Bins/Op702src.zip<!-- Op702src.zip is an unofficial renamed distribution of the ibmbioa3.zip file -->]</ref> <ref name="Brown_RBIL">Ralf D. Brown. ''Ralf Brown's Interrupt List'', INTER61 as of 2000-07-16 ([https://www.cs.cmu.edu/~ralf/files.html])</ref> <ref name="Corel">{{citation |title=Mention of CORELCDX|url=http://files.mpoli.fi/unpacked/drivers_1/cd/teac/4x/teac4.zip/readme.txt|access-date=2023-12-31}}</ref> <ref name="Johnston_1988">{{cite journal |url=https://books.google.com/books?id=CD8EAAAAMBAJ&pg=PA20 |journal=InfoWorld |date=1988-03-07 |page=198 |author-first=Stuart J. |author-last=Johnston |title=Microsoft Steals Show At Its CD ROM Meeting - Firm Unveils Two Business Titles}}</ref> <ref name="Microsoft_1994_CDEX21">{{cite web |title=Microsoft MS-DOS CD-ROM Extensions 2.1 |version=Version 2.10 Beta |date=1994-03-16 |orig-year=1992-05-30 |type=MSCDEX21.DOC |id=000080010-100-O00-1186 |publisher=Microsoft |url=http://cybermax.tripod.com/mscdex.txt |access-date=2018-05-11 |url-status=live |archive-url=https://web.archive.org/web/20180511084215/http://cybermax.tripod.com/mscdex.txt |archive-date=2018-05-11}} [https://web.archive.org/web/20180511085639/http://ftp.lyx.org/pub/pc/garbo/windows/doc/mscdex21.zip]</ref> <ref name="Paul_1997_NWDOSTIP">{{cite book |title=NWDOS-TIPs &mdash; Tips & Tricks rund um Novell DOS 7, mit Blick auf undokumentierte Details, Bugs und Workarounds |work=MPDOSTIP |author-first=Matthias R. |author-last=Paul |date=1997-07-30 |orig-year=1994-05-01 |edition=3 |version=Release 157 |language=de |url=http://www.antonis.de/dos/dos-tuts/mpdostip/html/nwdostip.htm |access-date=2014-08-06 |url-status=live |archive-url=https://web.archive.org/web/20161104235829/http://www.antonis.de/dos/dos-tuts/mpdostip/html/nwdostip.htm |archive-date=2016-11-04}} (NB. NWDOSTIP.TXT is a comprehensive work on Novell DOS 7 and OpenDOS 7.01, including the description of many undocumented features and internals. It is part of the author's yet larger MPDOSTIP.ZIP<!-- still named TIPS_MP.ZIP between 1991 and 1996-11 --> collection maintained up to 2001 and distributed on many sites at the time. The provided link points to a HTML-converted older version of the NWDOSTIP.TXT file.) [https://web.archive.org/web/20190601152204/https://www.sac.sk/download/text/mpdostip.zip<!-- A yet older version 155 from 1997-05-13 of the 1997-07-15 distribution archive. -->]</ref> <ref name="Schulman_1994_Undocumented-DOS">{{cite book |author-first1=Andrew |author-last1=Schulman |author-first2=Ralf D. |author-last2=Brown |author-link2=Ralf D. Brown |author-first3=David |author-last3=Maxey |author-first4=Raymond J. |author-last4=Michels |author-first5=Jim |author-last5=Kyle |title=Undocumented DOS: A programmer's guide to reserved MS-DOS functions and data structures - expanded to include MS-DOS 6, Novell DOS and Windows 3.1 |publisher=Addison Wesley |edition=2 |date=1994 |orig-year=November 1993<!-- first printing --> |isbn=0-201-63287-X |url=https://archive.org/details/undocumenteddosp00andr_0}} (xviii+856+vi pages, 3.5"-floppy) Errata: [https://web.archive.org/web/20190417215556/https://www.cs.cmu.edu/afs/cs/user/ralf/pub/books/UndocumentedDOS/errata.ud2][https://web.archive.org/web/20190417212906/https://www.pcjs.org/pubs/pc/programming/Undocumented_DOS/#errata-2nd-edition]</ref> <ref name="BOOTCD">{{cite web |title=Command: shsucdx |date=2008 |orig-year=2003 |author-first1=Robert |author-last1=Platt |author-first2=W. |author-last2=Spiegl |work=FreeDOS Spec Command HOWTO |url=http://help.fdos.org/en/hhstndrd/base/shsucdx.htm |access-date=2018-05-11 |url-status=live |archive-url=https://web.archive.org/web/20180511081140/http://help.fdos.org/en/hhstndrd/base/shsucdx.htm |archive-date=2018-05-11}}</ref> <ref name="UIDE.SYS">{{cite web |title=Command: uide.sys / uidejr.sys |date=2011 |orig-year=2007 |author-first1=Jack |author-last1=Ellis |author-first2=W. |author-last2=Spiegl |work=FreeDOS Spec Command HOWTO |url=http://www.bootablecd.de/FreeDOS/help/en/hhstndrd/base/uide.htm |access-date=2018-05-11 |url-status=live |archive-url=https://web.archive.org/web/20180511081202/http://www.bootablecd.de/FreeDOS/help/en/hhstndrd/base/uide.htm |archive-date=2018-05-11}}</ref> <ref name="SHSUCDEX">{{cite web |title=SHSUCDX V3.03A CD-ROM Interface Driver |id=SHCDX33A.ZIP |date=2005-12-26 |url=http://johnson.tmfc.net/dos/shsucdx.html |url-status=dead |archive-url=https://web.archive.org/web/20061012083434/http://johnson.tmfc.net/dos/shsucdx.html |archive-date=2006-10-12}}</ref> <ref name="Paul_1997_INSTCDEX">{{cite web |title=INSTCDEX v2.12 |author-first=Matthias R. |author-last=Paul |date=1997-03-03 |orig-year=1996 |url=http://www.uni-bonn.de:80/~uzs180/mpdokeng.html#M.INSTCDEX |url-status=dead |archive-url=https://web.archive.org/web/20090215001349/http://www.uni-bonn.de/~uzs180/mpdokeng.html#M.INSTCDEX |archive-date=2009-02-15 |quote=[…] load CD-ROM drivers like NWCDEX.EXE/MSCDEX.EXE in CONFIG.SYS by using INSTCDEX […] more flexibility […] loading order of drivers […] more free UMB-RAM during installation […] better highloading memory consuming redirector drivers […] install […] other drivers […] from CD-ROM during execution of CONFIG.SYS […] setting the local CD-ROM flag […] |access-date=2018-07-16}}</ref> <ref name="Paul_1997_NWCDEX">{{cite web |title=NWCDEX |author-first=Matthias R. |author-last=Paul |date=1997-06-26 |work=OpenDOS |url=http://www.delorie.com/opendos//archives/browse.cgi?p=opendos/1997/06/26/06:13:28 |access-date=2018-05-10 |url-status=live |archive-url=https://web.archive.org/web/20180510211627/http://www.delorie.com/opendos//archives/browse.cgi?p=opendos%2F1997%2F06%2F26%2F06%3A13%3A28 |archive-date=2018-05-10 |quote=[…] Since Novell DOS the pre-CDS […] is an internal array containing 26 entries located at the upper end of the conventional memory, although the lastdrive entries in SYSVARS only report a lower value. LASTDRIVE= is one of those directives taking effect only *after* CONFIG.SYS, and the CDS array will be moved to its target position and will be reduced down to the LASTDRIVE= (or other minimum) or will be expanded up to 32 entries. […] INSTCDEX […] free already assigned drive slots for NWCDEX and thus allows NWCDEX to load in CONFIG.SYS. However, it will be unlinked after CONFIG.SYS, since the CDS-array is moved. INSTCDEX also provides means to save the status of the CDS-entry in CONFIG.SYS and relink […] NWCDEX to the new CDS in AUTOEXEC.BAT. […]}}</ref> <ref name="Datalight_2005_ROM-DOS">{{cite web |title=Datalight ROM-DOS User's Guide |date=April 2005 |publisher=Datalight, Inc. |id=Part No. 3010-0200-0716 |url=https://www.datalight.com/assets/files/ROM-DOS_Users_Guide.pdf |access-date=2021-01-02 |url-status=live |archive-url=https://web.archive.org/web/20211206062213/https://www.datalight.com/assets/files/ROM-DOS_Users_Guide.pdf |archive-date=2021-12-06}} (268 pages)</ref> }}

==Further reading== * {{Cite web |title=MS-DOS CD-ROM Extensions 2.2 Information Pack |id=DR0498.EXE |publisher=Microsoft |date=1991-11-01 |url=http://ftpmirror.your.org/pub/misc/ftp.microsoft.com/Softlib/MSLFILES/DR0498.EXE<!-- ftp://ftp.microsoft.com/Softlib/MSLFILES/DR0498.EXE --> |access-date=2018-05-11 |url-status=live |archive-url=https://web.archive.org/web/20180511080837/http://ftpmirror.your.org/pub/misc/ftp.microsoft.com/Softlib/MSLFILES/DR0498.EXE |archive-date=2018-05-11}} (Self-extracting archive, includes ''Microsoft MS-DOS CD-ROM Extensions Hardware-Dependent Device Driver Specification'') * {{Cite web |title=Command-Line Switches for MSCDEX.EXE |publisher=Microsoft |date=2007-01-18 |version=2.4 |id=KB87165, Q87165 |url=http://support.microsoft.com/kb/87165 |url-status=dead |archive-url=https://web.archive.org/web/20071117234429/http://support.microsoft.com/kb/87165 |archive-date=2007-11-17}} * {{Cite web |title=MSCDEX - Examples |url=http://2dos.homepage.dk/batutil/help/MSCDEX_E.HTM |url-status=dead |archive-url=https://web.archive.org/web/20071125174303/http://2dos.homepage.dk/batutil/help/MSCDEX_E.HTM |archive-date=2007-11-25}} * {{Cite book |author-last=Cooper |author-first=Jim |title=Using MS-DOS 6.22 |version=Special Edition |edition=3 |date=2001 |publisher=Que Publishing |isbn=978-0-7897-2573-8}} * {{Cite book |author-first1=Tim |author-last1=O'Reilly |author-link1=Tim O'Reilly |author-first2=Troy |author-last2=Mott |author-first3=Walter |author-last3=Glenn |date=1999 |title=Windows 98 in a Nutshell: A Desktop Quick Reference |publisher=O'Reilly |isbn=978-1-56592-486-4 |url=https://archive.org/details/windows98innutsh00orei}}

==External links== {{Wikibooks|Guide to Windows Commands}} * [https://www.computerhope.com/mscdex.htm MS-DOS and Windows command line MSCDEX command]

{{Windows commands}}

Category:External DOS commands Category:Windows commands