Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Upgrade ms-dos 6.22 to 7.01?

965 views
Skip to first unread message

Mike Walsh

unread,
Dec 30, 2002, 10:57:33 AM12/30/02
to

John Dunne wrote:
>
> Hello,
>
> Is it possible to 'upgrade' ms-dos 6.22 to say v7.01 by copying files on
> top of the older installation or by any other means? Would such a setup be
> more or less stable?

Yes

> v6.22 has more files and i'd like to have the full set of features of 6.2
> with e.g. the added ability to see FAT32.
>
> I tried something like the setup mentioned in the beginning and
> > help print
> would give
> - incorrect dos version
> though i _could_ print a text file.

You need to use Setver to allow older versions of DOS COM and EXE files to work with DOS7. You will have to use DOS6x help files as there is no corresponding help file for DOS7.


--
Mike Walsh
West Palm Beach, Florida, U.S.A.

Richard Collins

unread,
Dec 30, 2002, 1:12:13 PM12/30/02
to

"John Dunne" <th...@is.invalid> wrote in message
news:3e106b00$0$35642$8fcf...@news.wanadoo.nl...

> Hello,
>
> Is it possible to 'upgrade' ms-dos 6.22 to say v7.01 by copying files on
> top of the older installation or by any other means? Would such a setup be
> more or less stable?
>
> v6.22 has more files and i'd like to have the full set of features of 6.2
> with e.g. the added ability to see FAT32.
>
> I tried something like the setup mentioned in the beginning and
> > help print
> would give
> - incorrect dos version
> though i _could_ print a text file.

That goes right to the core of "What is DOS"?

Arguebly, it's command.com, io.sys, and msdos.sys - everthing else are
simply utilitities that add some user functionality.

In your example, the "incorrect DOS version" may have been generated bu
Help, not Print.

Now (and this is my opinion, which differs from most here) there _is_ no
"MS-DOS 7.01". 6.22 was the last MS-DOS version released.

Guys, don't bother flaming that statement. I'm not about to change my mind.


Mike Walsh

unread,
Dec 30, 2002, 4:35:24 PM12/30/02
to

He probably meant DOS7.1, not DOS7.01. Although Microsoft does not differentiate among minor releases DOS7 with FAT32 support is usually referred to as DOS7.1. Run this to find the DOS version:
Type Io.sys |find /I "DOS version"


Richard Collins wrote:
>
> That goes right to the core of "What is DOS"?
>
> Arguebly, it's command.com, io.sys, and msdos.sys - everthing else are
> simply utilitities that add some user functionality.
>
> In your example, the "incorrect DOS version" may have been generated bu
> Help, not Print.
>
> Now (and this is my opinion, which differs from most here) there _is_ no
> "MS-DOS 7.01". 6.22 was the last MS-DOS version released.
>
> Guys, don't bother flaming that statement. I'm not about to change my mind.

--

JD Adams

unread,
Dec 30, 2002, 6:47:38 PM12/30/02
to
John Dunne wrote:

> :>print /?
> gives: Incorrect DOS Version
>
> :>help print
> works fine (6.22 Help).
>
> The thing with setver didn't work. Strangely enough setver listst print.exe
> as 7.10, though the file is from 1994. As long as I can print and the
> system keeps stable, I can live with that.
>
> Thanks for your response, cheers.

Rather than use SETVER, one can copy off everthing in the installed
C:\Windows\Command subdirectory to the boot floppy. These utilities
will work fine with the 7.1 you've just created.

-JD


For Email, replace 'nospam' with 'JDAdams'

Charles Dye

unread,
Dec 30, 2002, 7:18:14 PM12/30/02
to
On Mon, 30 Dec 2002 21:35:24 GMT, Mike Walsh
<spam13...@earthlink.net> wrote:

>He probably meant DOS7.1, not DOS7.01. Although Microsoft does
>not differentiate among minor releases DOS7 with FAT32 support
>is usually referred to as DOS7.1. Run this to find the DOS
>version:
>Type Io.sys |find /I "DOS version"

It's true that Microsoft's embedded copyright strings only give
the major version number, e.g. "MS-DOS version 7" in the Windows
98 IO.SYS or "MS DOS version 6" [sic] in MS-DOS 6.22. But the
correct way to get the DOS version is via the documented INT 21h
functions: 21h/30h (old style) or 21h/3306h ("true" version,
not modified by SETVER.) These functions will report both the
major and minor version codes, e.g. 0A07h for MS-DOS 7.1 or
1606h for MS-DOS 6.22.

--
Charles Dye ras...@highfiber.com


Charles Dye

unread,
Dec 30, 2002, 7:32:18 PM12/30/02
to
On 30 Dec 2002 15:49:21 GMT, John Dunne <th...@is.invalid> wrote:

>Is it possible to 'upgrade' ms-dos 6.22 to say v7.01 by copying files on
>top of the older installation or by any other means?

Use the SYS command. There are differences in the bootstrap code;
simply copying files won't update that.

--
Charles Dye ras...@highfiber.com


Kay Archer

unread,
Dec 30, 2002, 7:54:09 PM12/30/02
to
"John Dunne" <th...@is.invalid> wrote in message
news:3e106b00$0$35642$8fcf...@news.wanadoo.nl...
> Hello,
>
> Is it possible to 'upgrade' ms-dos 6.22 to say v7.01 by copying files on
> top of the older installation or by any other means? Would such a setup be
> more or less stable?
>
> v6.22 has more files and i'd like to have the full set of features of 6.2
> with e.g. the added ability to see FAT32.
>
> I tried something like the setup mentioned in the beginning and
> > help print
> would give
> - incorrect dos version
> though i _could_ print a text file.
>
Have you considered PC-DOS 8? y2k compliant, pcmcia support, etc:

http://www-3.ibm.com/software/os/dos/


Ian Gay

unread,
Dec 31, 2002, 12:54:26 AM12/31/02
to
ab...@127.0.0.1 (Kay Archer) wrote in
<v11ql0n...@corp.supernews.com>:

>http://www-3.ibm.com/software/os/dos/

From the FAQ at that site:

Does PC DOS 2000 support the FAT32 file system and Long File Names?

PC DOS 2000 supports only the FAT16 file system. File names must be in
the form 8.3. That is, the filename must be 1 to 8 characters long and
the file extension up to 3 characters.

Richard Collins

unread,
Dec 31, 2002, 9:14:16 AM12/31/02
to

"John Dunne" <th...@is.invalid> wrote in message
news:3e11752d$0$37218$8fcf...@news.wanadoo.nl...
> JD Adams <nos...@Promedia.Net> wrote in news:3E10DB...@Promedia.Net:

>
> > Rather than use SETVER, one can copy off everthing in the installed
> > C:\Windows\Command subdirectory to the boot floppy. These utilities
> > will work fine with the 7.1 you've just created.
>
> Copied the files from \windows\command\ on top of the old \dos\ directory.
> Then from a Windows 98SE diskette sys c: on active partition. Not
> everything works though:
>
> C>defrag
> Microsoft Defrag for MS-DOS
> Copyright 1988-1993 Symantec Corporation
> This version of Microsoft Defrag requires MS-DOS version 6.0 or higher
>
>
> Windows 98 defrag.exe is a 32 bit application that won't run in DOS.
>
> What bothers me is that it seems as if not every 6.22 utility wil work in
> this setup.

And quite possibly with very good reason.

Charles Dye

unread,
Dec 31, 2002, 10:16:53 AM12/31/02
to
On 31 Dec 2002 10:45:22 GMT, John Dunne <th...@is.invalid> wrote:

>ras...@highfiber.com (Charles Dye) wrote in
>news:3e10dfa...@news1.nmia.com:


>
>> It's true that Microsoft's embedded copyright strings only give
>> the major version number, e.g. "MS-DOS version 7" in the Windows
>> 98 IO.SYS or "MS DOS version 6" [sic] in MS-DOS 6.22. But the
>> correct way to get the DOS version is via the documented INT 21h
>> functions: 21h/30h (old style) or 21h/3306h ("true" version,
>> not modified by SETVER.) These functions will report both the
>> major and minor version codes, e.g. 0A07h for MS-DOS 7.1 or
>> 1606h for MS-DOS 6.22.
>

>Could you explain where exactly i have to put which (exemplary) command? I
>can't seem to get the syntax right.

I'm sorry, but I can't understand that question at all. What
exactly are you trying to do?

--
Charles Dye ras...@highfiber.com


Mike Walsh

unread,
Dec 31, 2002, 10:39:46 AM12/31/02
to

Change the Setver listing for print.exe to 6.2 (I have DOS6.2, you might have to change it to 6.22)
<Setver print.exe 6.2>
I also had to change tree.com to 6.2 to get it to work.
These utilities are from DOS6x but the Setver we are running is from DOS7x. Setver must list these utilities as the current version by default.


John Dunne wrote:
>
> If I type Help i get the 6.22 Help fine.


>
> :>print /?
> gives: Incorrect DOS Version
>
> :>help print
> works fine (6.22 Help).
>
> The thing with setver didn't work. Strangely enough setver listst print.exe
> as 7.10, though the file is from 1994. As long as I can print and the
> system keeps stable, I can live with that.
>
> Thanks for your response, cheers.

--

Mike Walsh

unread,
Dec 31, 2002, 12:01:43 PM12/31/02
to

My mistake. The DOS type and find commands will not show the version. WinNT (where I spend most of my time) returns this:

ËØ3À´DÍ!ö€uò´>Í!ëæ´=ùÍ!ð ÏMS-DOS Version 7 (C)Copyright 1981-1995 Microsoft Corp Licensed Material - Property of Microsoft All rights reserved NUL
Your previous MS-DOS version is not supported. $
ÃMS-DOS Version 7 (C)Copyright 1981-1995 Microsoft Corp Licensed Material - Property of Microsoft All rights reserved 6€>r


John Dunne wrote:
>
> John Dunne <th...@is.invalid> wrote in

> news:3e117534$0$37218$8fcf...@news.wanadoo.nl:
>
> > C:> find /i "dos version" io.sys
> > didn't give the strings with "dos version 7", though I can
> > see with other means they _are_ in the file.
>
> That is, found only 1 occurence of "DOS version", no number.
>
> Cheers

JD Adams

unread,
Dec 31, 2002, 12:55:33 PM12/31/02
to
John Dunne wrote:
> This version of Microsoft Defrag requires MS-DOS version 6.0 or higher
>
> Windows 98 defrag.exe is a 32 bit application that won't run in DOS.
>
> What bothers me is that it seems as if not every 6.22 utility wil work in
> this setup.

Hmmm. This may be a problem specific to MS-DOS 8/Win98. I copied v7.1
(from my licenced Win95b installation) over to a newly-created boot
floppy and everything works famously.

-JD

Matthias Paul

unread,
Dec 31, 2002, 3:08:52 PM12/31/02
to
On 2002-12-31, Kay Archer wrote:

> Have you considered PC-DOS 8? y2k compliant, pcmcia support, etc:

There is no IBM PC DOS 8. At the time of this writing, IBM's latest
version of DOS is PC DOS 2000, which reports itself as being
IBM PC DOS 7.0 revision 1, and that's exactly what it is.

It's a recommendable product as a replacement for MS-DOS 6.22,
but it does not support FAT32, LBA, nor LFNs, unforunately.

Matthias

--
<mailto:Matthi...@post.rwth-aachen.de>; <mailto:mp...@drdos.org>
http://www.uni-bonn.de/~uzs180/mpdokeng.html; http://mpaul.drdos.org

"Programs are poems for computers."

Charles Dye

unread,
Dec 31, 2002, 5:37:46 PM12/31/02
to
On Tue, 31 Dec 2002 21:08:52 +0100, "Matthias Paul"
<Matthi...@post.rwth-aachen.de> wrote:

>On 2002-12-31, Kay Archer wrote:
>
>> Have you considered PC-DOS 8? y2k compliant, pcmcia support, etc:
>
>There is no IBM PC DOS 8. At the time of this writing, IBM's latest
>version of DOS is PC DOS 2000, which reports itself as being
>IBM PC DOS 7.0 revision 1, and that's exactly what it is.
>
>It's a recommendable product as a replacement for MS-DOS 6.22,
>but it does not support FAT32, LBA, nor LFNs, unforunately.

Actually, there is a PC DOS 7.1 which *does* support FAT32 volumes.
The bad news is that AFAIK it is not a retail product and you can't
buy it anywhere. But you will occasionally find it bundled in with
other software, e.g. the enterprise Symantec Ghost package.

All I've ever seen of it is the kernel and command shell; I don't
know whether or not they have updated the utilities. (But you can
run 4DOS or NDOS on it, obviating the need for many of those.)

--
Charles Dye ras...@highfiber.com


Martin Str|mberg

unread,
Dec 31, 2002, 11:37:28 PM12/31/02
to
Richard Collins <r..collins@sympatico.ca> wrote:
: Now (and this is my opinion, which differs from most here) there _is_ no

: "MS-DOS 7.01". 6.22 was the last MS-DOS version released.

So what is the version that is returned by the DOS version call
(INT21, AH=0x30), 7.1? WINDOZE version or what?!


Right,

MartinS

The Pinny Parlour

unread,
Dec 31, 2002, 11:47:36 PM12/31/02
to
"JD Adams" <JDA...@Promedia.Net> wrote in message
news:3E11DA...@Promedia.Net...
newbie so flame away. But what files and exe are required? What did you
copy over to floppy?

Thanks


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.434 / Virus Database: 243 - Release Date: 25/12/2002


Richard Collins

unread,
Jan 1, 2003, 7:53:54 AM1/1/03
to

"Martin Str|mberg" <a...@speedy.ludd.luth.se> wrote in message
news:10413958...@queeg.ludd.luth.se...

Go buy MS-DOS Version 7.x and you'll have MS-DOS Version 7.X.

Go buy Windows and you won't.

Martin Str|mberg

unread,
Jan 1, 2003, 9:48:40 AM1/1/03
to
Richard Collins <r..collins@sympatico.ca> wrote:
:> So what is the version that is returned by the DOS version call

:> (INT21, AH=0x30), 7.1? WINDOZE version or what?!

: Go buy MS-DOS Version 7.x and you'll have MS-DOS Version 7.X.

Agreed.

: Go buy Windows and you won't.

Hmm, well it sure looks to me that I get DOS 7.X in the "bargain".

Perhaps you have the opinion that WINDOZE 9x isn't a GUI ontop plain
DOZE just as WINDOZE 3.x was?


Right,

MartinS

Richard Collins

unread,
Jan 1, 2003, 4:10:04 PM1/1/03
to

"Martin Str|mberg" <a...@speedy.ludd.luth.se> wrote in message
news:10414325...@queeg.ludd.luth.se...

Right, I have the opinion that Win 9.x is everything that came in the box
labelled Win 9.x.

The fact that one _used to_ be able to buy an OS that was very similar to
the platform on which Win is now built doesn't mean that platform is that
other OS.


JD Adams

unread,
Jan 2, 2003, 7:33:24 PM1/2/03
to
The Pinny Parlour wrote:

> newbie so flame away. But what files and exe are required? What did you
> copy over to floppy?

I'm sorry; I don't flame newbies. Ex-wives, liberals and other people
of little brain are a different story.

I formatted a floppy using a Windows 95b DOS window with the '/S' option
to create the boot disk. I then copied everything in C:\Windows\Command
to the floppy. (I've earlier trimmed those files down to only those I
regularly used.)

What I ended up with was:


Volume in drive A is DOS_710
Volume Serial Number is 3670-11D2
Directory of A:\

COMMAND COM 93,974 12-30-02 10:50a COMMAND.COM
ATTRIB EXE 15,252 08-24-96 11:11a ATTRIB.EXE
CHKDSK EXE 28,096 08-24-96 11:11a CHKDSK.EXE
DELTREE EXE 19,019 08-24-96 11:11a DELTREE.EXE
DISKCOPY COM 21,975 08-24-96 11:11a DISKCOPY.COM
EDIT COM 69,886 08-24-96 11:11a EDIT.COM
EDIT HLP 10,790 08-24-96 11:11a EDIT.HLP
FDISK EXE 63,116 08-24-96 11:11a FDISK.EXE
FORMAT COM 49,543 05-01-97 12:14p FORMAT.COM
LABEL EXE 9,324 08-24-96 11:11a LABEL.EXE
MEM EXE 32,146 08-24-96 11:11a MEM.EXE
MODE COM 29,271 08-24-96 11:11a MODE.COM
MOVE EXE 27,235 08-24-96 11:11a MOVE.EXE
MSCDEX EXE 25,473 08-24-96 11:11a MSCDEX.EXE
SCANDISK EXE 142,353 05-01-97 12:14p SCANDISK.EXE
SCANDISK INI 7,332 08-24-96 11:11a SCANDISK.INI
SCOPY EXE 35,324 06-21-93 2:03a SCOPY.EXE
SYS COM 18,967 08-24-96 11:11a SYS.COM
XCOPY EXE 3,878 02-19-99 10:55a xcopy.exe
XCOPY32 EXE 41,472 02-19-99 10:55a xcopy32.exe
HIMEM SYS 33,191 08-24-96 11:11a HIMEM.SYS
AUTOEXEC BAT 47 07-06-02 11:48a AUTOEXEC.BAT
CONFIG SYS 26 02-26-02 12:38p CONFIG.SYS
23 file(s) 777,690 bytes
0 dir(s) 458,240 bytes free


The contents of 'MSDOS.SYS' is a single text line that says, ';FORMAT'.
I may delete this and see what happens. This floppy boots and runs fine
in my old 433 machines. It seems to support huge amounts of installed
RAM, LBA, and large hard drives over 2GB. This is a hellova nice thing
to happen to an old DOS machine.

-JD

The Pinny Parlour

unread,
Jan 1, 2003, 11:13:42 PM1/1/03
to
Thank You


"JD Adams" <JDA...@Promedia.Net> wrote in message

news:3E14DA...@Promedia.Net...

E.P. van Westendorp

unread,
Jan 2, 2003, 8:27:55 AM1/2/03
to
Both Dos function 30h and 3306h are documented in various MicroSoft
versions of "MicroSoft Programmer's Reference" and many other places.
Below is copied from Ralf Brown's Interrupt List Release 61
http://www-2.cs.cmu.edu/~ralf/files.html


INT 21 30-- - DOS 2+ - GET DOS VERSION


Category: D - DOS kernel

Inp.:
AH = 30h
---DOS 5+ ---
AL = what to return in BH
00h OEM number (see #01394)
01h version flag
Return: AL = major version number (00h if DOS 1.x)
AH = minor version number
BL:CX = 24-bit user serial number (most versions do not use this)
---if DOS <5 or AL=00h---
BH = MS-DOS OEM number (see #01394)
---if DOS 5+ and AL=01h---
BH = version flag
bit 3: DOS is in ROM
other: reserved (0)
Notes: the OS/2 v1.x Compatibility Box returns major version 0Ah (10)
the OS/2 v2.x Compatibility Box returns major version 14h (20)

OS/2 Warp 3.0 Virtual DOS Machines report v20.30; Warp 4 VDMs report
v20.40.
the Windows NT DOS box returns version 5.00, subject to SETVER
DOS 4.01 and 4.02 identify themselves as version 4.00; use
INT 21/AH=87h to distinguish between the original European MS-DOS 4.0
and the later PC-DOS 4.0x and MS-DOS 4.0x
IBM DOS 6.1 reports its version as 6.00; use the OEM number to
distinguish between MS-DOS 6.00 and IBM DOS 6.1 (there was never an
IBM DOS 6.0)
IBM's PC DOS 7 and Y2K updates report themselves as IBM 7.0 to be
distinguished from the MS-DOS 7.0 portion of Windows 95.

MS-DOS 6.21 reports its version as 6.20; version 6.22 returns the
correct value
Windows95 returns version 7.00 (the underlying MS-DOS), as did the
"Chicago" beta (reported in _Microsoft_Systems_Journal_,August 1994);
Windows95 OSR2 and OSR2.5 (OPK3) return MS version 7.10
DR DOS 5.0 and 6.0 report version 3.31; Novell DOS 7 reports IBM v6.00,
which some software displays as IBM DOS v6.10 (because of the version
mismatch in true IBM DOS, as mentioned above). The Novell DOS 7
SETVER.EXE has an undocumented option /G x.y which sets the "global"
DOS version returned by this function for all executables not given

a specific version number in SETVER to major version x and minor
version y.
Heiko Goeman's Advanced WinDOS 2.10/2.11/2.21 returns "IBM" DOS 5.00
(subject to SETVER) and serial number 0.
All versions of CCI Multiuser DOS up to "CCI Multiuser DOS 7.22 Gold"
as of 1997-02-10 report DOS 3.31.
DR DOS 3.31, 3.32, 3.33, 3.34, 3.35, 3.40, 3.41, 5.0, 6.0 and
DR PalmDOS/NetWare PalmDOS 1.0 report version 3.31;
DR DOS "Panther" BETA 1 and "StarTrek" report as 5.0.
Novell DOS 7, OpenDOS 7.01, DR-OpenDOS 7.02, DR-DOS 7.02, DR-DOS 7.03
all report themselves as IBM 6.00, which some software displays as

IBM DOS 6.10 (because of the version mismatch in true IBM DOS,
as mentioned above). Use INT 21/AX=4452h to distinguish the DR-DOS
family from PC DOS.
The Novell DOS 7 and OpenDOS 7.01 SETVER.EXE has an undocumented
option /G x.y which sets the "global" DOS version returned by this
function for all executables not given a specific version number in
SETVER to major version x >= 5 and minor version y = 0..254,
y = 255 is used to disable the BDOS version check at INT 21/AX=4452h.
A slightly modified option has been documented for DR-OpenDOS 7.02+:
in /X mode it now allows for x >= 1, while y >= 100 requires /X mode,

and y >= 128 is used to control advanced version control means now
(see below).
DR-DOS 7.02+ IBMDOS.COM (since 1998-01-10) now recognizes optional
paths to filenames stored in the SETVER list. Previously such entries
were never found. This allows for a three staged model for SETVERed
versions:
highest priority = entry with path is matching.
middle priority = entry without path is matching.
lowest priority = use global version (SETVER /G).
The DR-DOS 7.02+ SETVER 1.01+ (1998-01-12) has also been enhanced to
allow DOS *and* BDOS version faking (see INT 21/AX=4452h): In /X mode,

setting a sub-version of y = 128..255 will be reported as 0..127 DOS
sub-version, sub-versions of y = 100..127 will instead be used to
report this value as BDOS version (64h..7Fh) via INT 21/AX=4452h, and
the DOS revision stored in PCM_HEADER in the IBMDOS.COM file will
be used to report the DOS sub-version (usually this holds 0, but it
can be patched to other values, see INT 21/AX=4452h !!!).
Note, that DR-DOS SHARE 2.05+ (1998-01-05) has relaxed version
checking, and will install on any DOS revision 0..127, as long as
run on a DR-DOS 72h+ kernel (formerly it was bound to a revision

byte of 0 only).
Under Novell DOS 7+, the SETVERing also affects the version number
WORD stored at offset +40h in each program's PSP (see #01378).
This holds true even for special sub-versions of 100..255
(see INT 21/AX=4452h).
generic MS-DOS 3.30, Compaq MS-DOS 3.31, and others identify themselves
as PC-DOS by returning OEM number 00h
the version returned under DOS 4.0x may be modified by entries in
the special program list (see #01662 at AH=52h); the version returned
under DOS 5+ may be modified by SETVER--use AX=3306h to get the true
version number
SeeAlso: AX=3000h/BX=3000h,AX=3306h,AX=4452h,AH=87h,INT 15/AX=4900h

SeeAlso: AH=20h"S/DOS",INT 2F/AX=122Fh,INT 2F/AX=4010h,INT 2F/AX=4A33h
SeeAlso: INT 2F/AX=E002h

INT 21
Copied from Ralf Brown's Interrupt List


INT 21 3306 - DOS 5+ - GET TRUE VERSION NUMBER


Category: D - DOS kernel

Inp.:
AX = 3306h
Return: BL = major version
BH = minor version
DL = revision (bits 2-0, all others 0)
DH = version flags
bit 3: DOS is in ROM
bit 4: DOS is in HMA
AL = FFh if true DOS version < 5.0
Notes: this function always returns the true version number, unlike AH=30h,
whose return value may be changed with SETVER
because of the conflict from the CBIS redirector (see next
entry), programs should check whether BH is less than 100 (64h)
and BL is at least 5 before accepting the returned BX as the true
version number; however, even this is not entirely reliable when

that redirector is loaded
Under MS-DOS/PC DOS, DR DOS, PTS-DOS, S/DOS this function does not
use any of the DOS internal stacks and thus is fully reentrant
OS/2 v2.1 will return BX=0A14h (version 20.10)
Windows 95 and Windows 95 SP1 return version 7.00; Windows 95 OSR2
and OPK3 (OSR2.5) return version MS 7.10.
the Windows NT DOS box returns BX=3205h (version 5.50)
Novell DOS 7 returns IBM v6.00, which some software displays as
IBM DOS v6.10 (because of the version mismatch in true IBM DOS
mentioned for INT 21/AH=30h); versions through Update 15 all
return revision code 00h
Windows95 and Windows95 SP1 return version 7.00; Windows95 OSR2 returns
version 7.10
Heiko Goeman's Advanced WinDOS 2.10/2.11/2.21 returns DOS 5.00,

revision 0.
Novell DOS 7, OpenDOS 7.01, DR-OpenDOS 7.02, DR-DOS 7.02, DR-DOS 7.03
all return IBM 6.00, which some software displays as IBM DOS 6.10
(because of the version mismatch in true IBM DOS mentioned for
INT 21/AH=30h); versions through Novell DOS 7 Update 15.2 (01/1996)
all return revision code 00h. The DOS revision is stored in bits 7-0
of the "patch_version" field in the PCM_HEADER structure in the
IBMDOS.COM file (see also INT 21/AX=4452h !!!). The version
flags (DH) are stored in bits 15-8 of "patch_version", but is updated
at runtime to reflect the actual status. "patch_version" is also

reported as DX in INT 21/AX=4452h.
Unlike MS-DOS, under Novell DOS 7+ IBMDOS.COM will also allow to
SETVER the returned "true" DOS version same as with INT 21/AX=3000h
and INT 21/AX=3001h.
DR-DOS 7.02+ IBMDOS.COM (since 1998-01-10) now recognizes optional
paths to filenames stored in the SETVER list. Previously such
entries were never found. This enables a three staged model of
SETVERed versions:
highest priority = entry with path is matching.
middle priority = entry without path is matching.
lowest priority = use global version (SETVER /G).
The DR-DOS 7.02+ SETVER 1.01+ (1998-01-12) has also been enhanced to

allow BDOS and DOS version faking (see INT 21/AX=4452h). In /X mode,
a set sub-version of y = 128..255 will be reported as 0..127 DOS
sub-version, sub-versions of y = 100..127 will be used to report this
value as BDOS version (64h..7Fh) with INT 21/AX=4452h instead while
bits 6-0 of the DOS revision stored in PCM_HEADER in the IBMDOS.COM
file will be used to report the BH DOS sub-version 0..127 (usually
this holds 0, but it can be patched to other values).
DR-DOS SHARE 2.05 (1998-01-05) has relaxed version checking now, and
will install on any DOS revision 0..127 (formerly it was bound to

DOS revision 0 only), as long as run on a DR-DOS 72h or 73h BDOS
kernel. Hence, if there will be changes in the SHARE implementation
without changing the BDOS version, DR-DOS SHARE 2.05 can still be
stopped from installing by changing the DOS revision in PCM_HEADER
to something in the range 128..255.
Under Novell DOS 7+, the version SETVERing also affects the version
number WORD stored at offset +40h in each program's PSP (see
Table xxxx at INT 21/AH=26h). This holds true even for special
sub-versions of 100..255 (see INT 21/AX=4452h).
S/DOS 1.0 (1995) returns a DOS revision of 9, while its own PTS OEM

revision still defaults to 0 (see also INT 21/AH=20h"S/DOS").
BUG: DR DOS 5.0 and 6.0 return CF set/AX=0001h for INT 21/AH=33h
subfunctions other than 00h-02h and 05h, while MS-DOS returns AL=FFh
for invalid subfunctions
SeeAlso: AH=30h,INT 2F/AX=122Fh,INT 2F/AX=E000h"SETDRVER"
INT 21
Copied from Ralf Brown's Interrupt List


--

Eric P. van Westendorp Tel: +31(0252)210579
Reigerslaan 22 2215NN Voorhout Netherlands


John Dunne wrote:

> The documented INT 21h functions: 21h/30h (old style) or 21h/3306h ("true"

> version, not modified by SETVER.)

> are they like a debug command? Not a DOS command line, I think. Where could
> i find this documentation?
>
> Cheers

Matthias Paul

unread,
Jan 2, 2003, 9:07:29 AM1/2/03
to
On 2002-12-31, Charles Dye wrote:

> Actually, there is a PC DOS 7.1 which *does* support FAT32 volumes.
> The bad news is that AFAIK it is not a retail product and you can't
> buy it anywhere. But you will occasionally find it bundled in with
> other software, e.g. the enterprise Symantec Ghost package.

Now, that's very interesting news. Thanks for telling us.

E.P. van Westendorp

unread,
Jan 2, 2003, 10:07:50 AM1/2/03
to
I have the DOS 7.10 taken from Windows 98SE running on a harddisk with
only ;SYS in MSDOS.SYS.
The DOS files are in a folder DOS710.

Just ran SYS from a bootable floppy like yours, copied the DOS files to
the DOS710 folder and adapted Config.Sys and AutoExec.Bat.

For those who doubt this is what Dos function 30h and 3306h report.

Report from function AX=3000h, Get version number
Dos version: 07.10

Report from function AX=3306h, Get MS-Dos version
Dos version: 07.10
Revision number: 00
Dos in RAM, High memory

--

Eric P. van Westendorp Tel: +31(0252)210579
Reigerslaan 22 2215NN Voorhout Netherlands


JD Adams wrote:

John Savage

unread,
Jan 2, 2003, 6:47:00 PM1/2/03
to
< referenced article's topposting and 149-char line length corrected >

Mike Walsh <spam13...@earthlink.net> wrote:


>John Dunne wrote:
>>
>> > C:> find /i "dos version" io.sys
>> > didn't give the strings with "dos version 7", though I can
>> > see with other means they _are_ in the file.
>>
>> That is, found only 1 occurence of "DOS version", no number.
>

>My mistake. The DOS type and find commands will not show the version.

That's because the TYPE command stops at the first ctrl-Z character
it finds, and this may happen before it gets to the Version string.
The correct way to use FIND on binary files is with redirected input:

find /i "version" < c:\io.sys

You're still not going to find out the minor revision, though.
--
John Savage (for email, replace "ks" with "k" and delete "n")

John Savage

unread,
Jan 2, 2003, 6:47:19 PM1/2/03
to
ras...@highfiber.com (Charles Dye) writes:

><spam13...@earthlink.net> wrote:
>>version:
>>Type Io.sys |find /I "DOS version"
>
>It's true that Microsoft's embedded copyright strings only give
>the major version number, e.g. "MS-DOS version 7" in the Windows
>98 IO.SYS or "MS DOS version 6" [sic] in MS-DOS 6.22. But the
>correct way to get the DOS version is via the documented INT 21h
>functions: 21h/30h (old style) or 21h/3306h ("true" version,
>not modified by SETVER.) These functions will report both the
>major and minor version codes, e.g. 0A07h for MS-DOS 7.1 or
>1606h for MS-DOS 6.22.

Does this give you anything that can't be learned using: VER /R ?

Charles Dye

unread,
Jan 2, 2003, 9:56:32 PM1/2/03
to

Usually VER will report the same version number that the kernel
does, but not always. Off the top of my head, I think that VER
gives a different answer in MS-DOS 6.21, PC DOS 6.2, and
PC DOS 4.01. And then there are other DOSses and other command
shells. (The VER command in DR DOS's COMMAND.COM is rather
amusing....)

At any rate, VER is the obvious way to check the DOS version
from the command line or in a batch file, but the kernel calls
are a better solution from within a program.

--
Charles Dye ras...@highfiber.com


Matthias Paul

unread,
Jan 2, 2003, 9:57:43 PM1/2/03
to
On 2003-01-03, John Savage wrote:

>> But the correct way to get the DOS version is via the documented
>> INT 21h functions: 21h/30h (old style) or 21h/3306h ("true" version,
>> not modified by SETVER.) These functions will report both the
>> major and minor version codes, e.g. 0A07h for MS-DOS 7.1 or
>> 1606h for MS-DOS 6.22.
>
> Does this give you anything that can't be learned using: VER /R ?

Not for the casual user, but in contrast to the for the most part
hard-wired info COMMAND.COM displays, these interrupts return the
actual system status, including the internal DOS revision and
serial number, as well as the DOS OEM ID (so you can distinguish
between the dozends of OEMs and alternative DOS implementations).

In combination with other functions, these functions can also be
used to track down if the system uses SETVER to fake DOS versions
or not, if the underlaying "DOS" is a DOS emulation like under OS/2
or Windows NT/2000/XP or a true DOS, like under Windows 95/98/SE/ME.

Greetings,

William Allen

unread,
Jan 3, 2003, 9:30:49 AM1/3/03
to
"John Dunne" wrote in message
...snip
> Thank you. Sorry for being so obtuse, but in which program/mode/context do
> I enter/use/view these instructions?

You can execute a small program written in Debug.

This screen capture shows the commands to enter to call INTerrupt 21
function 33 subfunction 06. The nnnn will be four hex digits that vary
according to system

============Screen capture Windows 95
C:\WORK>debug
-a
nnnn:0100 mov ax,3306
nnnn:0103 int 21
nnnn:0105 int 3
nnnn:0106
-g

AX=3306 BX=0A07 CX=0000 DX=1000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=nnnn ES=nnnn SS=nnnn CS=nnnn IP=0105 NV UP EI PL NZ NA PO NC
nnnn:0105 CC INT 3
-q

C:\WORK>
============End screen capture

The commands entered were
debug
a (for a=assemble code)
mov ax,3306
int 21 (the DOS interrupt)
int 3 (Breakpoint interrupt - returns control to Debug)
(press an extra [Return])
g (for g=go ahead and execute program)
q (for q=quit debug)


The result is in BX: the low part (BL)=07 is major version 7
The high part (BH)=0A is hex for 10 decimal = minor version .10

So for Windows 95 OSR 2 the interrupt returned DOS version 7.10

--
William Allen


E.P. van Westendorp

unread,
Jan 3, 2003, 10:13:34 AM1/3/03
to
Ralf Brown's Interrupt list is mostly used by people programming in
Assembler, the same for the Programmer's Reference I mentioned.

--

Eric P. van Westendorp Tel: +31(0252)210579
Reigerslaan 22 2215NN Voorhout Netherlands

Martin Str|mberg

unread,
Jan 3, 2003, 6:25:54 PM1/3/03
to
Richard Collins <r..collins@sympatico.ca> wrote:
: "Martin Str|mberg" <a...@speedy.ludd.luth.se> wrote in message
:> Hmm, well it sure looks to me that I get DOS 7.X in the "bargain".

:>
:> Perhaps you have the opinion that WINDOZE 9x isn't a GUI ontop plain
:> DOZE just as WINDOZE 3.x was?

: Right, I have the opinion that Win 9.x is everything that came in the box
: labelled Win 9.x.

And you won't get any DOS when you buy that WIDOZE 9x?

Have you noticed that you can still play som old plain DOZE games with
that WINDOZE. Perhaps you consider that an elaborate DOZE emulation
(which it is to some extent but still not total emulation as it still
calls some of those DOZE interrupts in real mode or VM86 mode we all
know and love)?

Do you call the DOZE that you get when you boot and inhibit WINDOZE,
the GUI, to start, WINDOZE?


Right,

MartinS

Frank Slootweg

unread,
Jan 6, 2003, 9:49:50 AM1/6/03
to
Give it a rest. Mr. Collins is keen on playing his semantic games. He
does not wish to be understood, at least not on this issue.

To be fair, in this round he more or less warned (generic) 'you' not
to respond, but being the good people that you are, you did anyway.

Bud

unread,
Jan 9, 2003, 4:54:24 PM1/9/03
to
"Matthias Paul" <Matthi...@post.rwth-aachen.de> wrote in message news:<av1h7p$mm6$1...@nets3.rz.RWTH-Aachen.DE>...

> On 2002-12-31, Charles Dye wrote:
>
> > Actually, there is a PC DOS 7.1 which *does* support FAT32 volumes.
> > The bad news is that AFAIK it is not a retail product and you can't
> > buy it anywhere. But you will occasionally find it bundled in with
> > other software, e.g. the enterprise Symantec Ghost package.
>
> Now, that's very interesting news. Thanks for telling us.
>
> Matthias

Datalight (http://www.datalight.com) has a product called ROMDOS SUV
available for purchase. This product is 7.1 or 6.22 compatible.
Supports Fat32 and Long filenames. See the website for a complete
list of features.

Bud

0 new messages