[net.micro.pc] MS/PC DOS?

shields@husc2.UUCP (shields) (10/20/86)

I am an experienced user of PC-DOS, but I am still unclear on
the exact differences between MS-DOS and PC-DOS. A friend just
bought an IBM clone (I have the genuine, but don't ask why) and
his came with MS-DOS 3.1. Should I be jealous of him, or him of
me?

Any help (even technical) would be appreciated.

                                  Thanks,
                                          Tom Shields
                                          shields@husc4.HARVARD.EDU
                                          shields@harvunxu.BITNET

ben@catnip.UUCP (Bennett Broder) (10/23/86)

In article <985@husc2.UUCP> shields@husc2.UUCP (shields) writes:
>I am an experienced user of PC-DOS, but I am still unclear on
>the exact differences between MS-DOS and PC-DOS. A friend just
>bought an IBM clone (I have the genuine, but don't ask why) and
>his came with MS-DOS 3.1. Should I be jealous of him, or him of
>me?
>
>Any help (even technical) would be appreciated.

There is little if any difference between MS-DOS and PC-DOS.  They are
both the same OS, but PC-DOS is supported by IBM instead of Microsoft
or another hardware vendor.

I have only found one real difference:

* PC-DOS comes with BASIC and BASICA, which utilize the cassette
  basic ROMS on real IBM PCs and ATs.  MS-DOS comes with GWBASIC,
  which is self-contained.  BASICA leaves a trife more, and BASIC
  leaves substantially more free memory for your BASIC code and variables
  than GWBASIC.

Of course, IBM and other OEMs may make certain changes that will prevent
their version of MS-DOS from working on another vendor's computer, however
there should not be any difference in functionality between these different
versions.

-- 

Ben Broder
{ihnp4,decvax} !hjuxa!catnip!ben
{houxm,topaz}/

net@uwmacc.UUCP (jeff kesselman) (10/25/86)

In article <394@catnip.UUCP> ben@catnip.UUCP (Bennett Broder) writes:
>There is little if any difference between MS-DOS and PC-DOS.  They are
>both the same OS, but PC-DOS is supported by IBM instead of Microsoft
>or another hardware vendor.
>
>I have only found one real difference:
>
>* PC-DOS comes with BASIC and BASICA, which utilize the cassette
>  basic ROMS on real IBM PCs and ATs.  MS-DOS comes with GWBASIC,
>  which is self-contained.  BASICA leaves a trife more, and BASIC
>  leaves substantially more free memory for your BASIC code and variables
>  than GWBASIC.

There is one, very large and very important difference that I am aware of.
MS-DOS and PC-DOS store their hard drive's directories in different
sectors on the disk. If you mix the two, you can end up writing files with
one right over the directory of the other, or vice versa. Bad news.

In general, they are about the same, and as long as you just stick to one
or the other, you're fine. (Floppies seem to be data compatable, as each
can find files written by the other.)

Jeff Kesselman

bill@hp-pcd.UUCP (bill) (10/27/86)

> There is one, very large and very important difference that I am aware of.
> MS-DOS and PC-DOS store their hard drive's directories in different
> sectors on the disk. If you mix the two, you can end up writing files with
> one right over the directory of the other, or vice versa. Bad news.
>
> In general, they are about the same, and as long as you just stick to one
> or the other, you're fine. (Floppies seem to be data compatable, as each
> can find files written by the other.)
>
> Jeff Kesselman

I know of a few differences between PC- and MS-DOS, but this is the first
I've heard of hard disk incompatability.

I thought that DOS -- both PC and MS -- is supposed to read the BPB from
the boot sector of whatever disk it's talking to, and from its information
determine the size and location of key structures on the disk.  That's
why your floppies work interchangably.  Are you saying IBM is doing
something differently, or that Microsoft has messed up?

bill frolik
hp-pcd!bill
Hewlett-Packard Portable Computer Division
Corvallis, Oregon

kim@amdahl.UUCP (Kim DeVaughn) (10/28/86)

In article <394@catnip.UUCP>, ben@catnip.UUCP (Bennett Broder) writes:
> In article <985@husc2.UUCP> shields@husc2.UUCP (shields) writes:
> >I am an experienced user of PC-DOS, but I am still unclear on
> >the exact differences between MS-DOS and PC-DOS.
>
> There is little if any difference between MS-DOS and PC-DOS.  They are
> both the same OS, but PC-DOS is supported by IBM instead of Microsoft
> or another hardware vendor.
> 
> I have only found one real difference:
> 
> * PC-DOS comes with BASIC and BASICA, which utilize the cassette
>   basic ROMS on real IBM PCs and ATs.  MS-DOS comes with GWBASIC,
>   which is self-contained.  BASICA leaves a trife more, and BASIC
>   leaves substantially more free memory for your BASIC code and variables
>   than GWBASIC.
> 
> Of course, IBM and other OEMs may make certain changes that will prevent
> their version of MS-DOS from working on another vendor's computer, however
> there should not be any difference in functionality between these different
> versions.


Sorry, but I couldn't disagree more!

MS-DOS is a generic product which is sold to OEM's.  It provides all of
the system functions and calls that are accessed via interrupts above 20h
(i.e., int 20h, int21h, etc.)  This generic, base system is sometimes
slightly customized by the OEM (IBM does this to a minor degree, I'm told).
The basic operation of MS-DOS, and the functions provided via these rupts
are very well defined and consistent from vendor to vendor.  But that's
where it stops.

All of the functions/services that are provided by the BIOS are up to
the individual vendor to implement, and are implementation specific.  On
PClones these are things like rupts 10h - 1Fh, which provide services
for Video I/O, RS232, keyboard, printer, Basic, floppys, etc. (at the
BIOS level).  Then there are what are usually called H/W rupts (08h - 0Fh)
on PClones;  these too, are implementation specific.

There are several machines that run MS-DOS, but are in no way compatible
with IBM PC's or PClones, and have vastly different H/W and BIOS functions.
For example, my Fujitsu Micro-16s runs MS-DOS (2.11, currently), but
very little PC software (unless the s/w has been written to be MS-DOS
compatible, or a port has been done specifically for the Fuji machine).

To illustrate, the Fuji machine does not have memory-mapped video I/O,
but rather has a seperate I/O Subsystem and Processor (a 6809) that takes
care of this (and other types of I/O).  It uses a small, dual-ported RAM
that lives in the I/O instruction space of the 8086 processor to pass
data back and forth to the 6809, which really does the actual I/O oper-
ations.  (That's right, from the 8086's point of view, I/O is performed
using real IN and OUT instructions, plus a well-defined handshaking
protocol).  This is in NO WAY even close to the way PClones do Video I/O;
other BIOS-level functions are just as different.  Needless to say, all
the BIOS interfaces were written by Fujitsu, even though they interface
to Microsoft's MS-DOS.

The term PC-DOS is usually used to refer to the collection of MS-DOS
*and* the BIOS and H/W rupt support as implemented by IBM PC's (and "true
compatibles").  The BIOS part may be realized in s/w on a floppy, or may
be in ROM, or a combination of the two.

There are other pieces of the puzzle as well.  Things like the ANSI.SYS
and CONFIG.SYS files, etc.  Generally, these can be considered to be part
of the BIOS, and are (usually) implementation specific.  (You should see
what my Fuji does ... or tries to do ... when I try to use NANSI.SYS or
FANSI.SYS in place of the ANSI.SYS that Fuji supplies :-)!)

I short, while the MS-DOS part of the system s/w may be portable from
one vendor's machine to another, the BIOS/etc. parts may or may not be,
and then only if the machines are PClones.

What I really find annoying are advertisements that say something like:
"requires an IBM PC/XT/AT, and MS-DOS 2.xx or 3.xx".  This is a totally
meaningless statement, which may mean that what's required is a PClone
running PC-DOS, or it may mean it'll work on any 8086/8088/80186/80286
machine running MS-DOS, or ...

/kim


P.S.  I recently installed a board in the Fuji that provides about a 95%
      level of PC compatibility.  If anyone is interested in the details,
      send me email.


-- 
UUCP:  {sun,decwrl,hplabs,pyramid,ihnp4,seismo,oliveb}!amdahl!kim
DDD:   408-746-8462
USPS:  Amdahl Corp.  M/S 249,  1250 E. Arques Av,  Sunnyvale, CA 94086
CIS:   76535,25

[  Any thoughts or opinions which may or may not have been expressed  ]
[  herein are my own.  They are not necessarily those of my employer. ]

vanzandt@uiucdcsp.cs.uiuc.edu (10/28/86)

	
	How do the version numbers compare? Is PC 3.21 equal to 
MS 3.1 or is there an MS 3.21 also?

Lonnie.

bryan@druhi.UUCP (BryanJT) (10/29/86)

In article <4058@amdahl.UUCP>, kim@amdahl.UUCP writes:
> Sorry, but I couldn't disagree more!
> 
> MS-DOS is a generic product which is sold to OEM's.  It provides all of
> the system functions and calls that are accessed via interrupts above 20h
> (i.e., int 20h, int21h, etc.)  This generic, base system is sometimes
> slightly customized by the OEM (IBM does this to a minor degree, I'm told).
> The basic operation of MS-DOS, and the functions provided via these rupts
> are very well defined and consistent from vendor to vendor.  But that's
> where it stops.
> 
> All of the functions/services that are provided by the BIOS are up to
> the individual vendor to implement, and are implementation specific.  On
> PClones these are things like rupts 10h - 1Fh, which provide services
> for Video I/O, RS232, keyboard, printer, Basic, floppys, etc. (at the
> BIOS level).  Then there are what are usually called H/W rupts (08h - 0Fh)
> on PClones;  these too, are implementation specific.
> 

Sorry, but I have to disagree with you.  Not over anything factual you
said (it all seems to be accurate) except that your use of terminology
is misleading.

MS-DOS is Microsoft's 8088/8086/80188/80186/etc. generic operating system; it
provides the features you specified as being available on interrupts 20h
and up.  PC-DOS is, pure and simple, the version of MS-DOS that includes
the cutomised BIOS interface for the IBM PC.  Most other vendors call
their customized MS-DOS's "MS-DOS" because we'd all get tired of
"COMPAQ-DOS", "Z-DOS", "FUJI-DOS" and so forth -- and we'd never know
which were really MS-DOS and which were cheap vendors' cheap imitations.

Calling the IBM PC BIOS a part of PC-DOS is misleading; if my PC is
running CP/M-86, the BIOS is still there -- and it is used by CP/M-86.
Likewise, CP/M-86 running on a non-IBM PC is still CP/M-86, even though
it may have to be customized for that machine.

Now I'm not going to argue: much software is written to take advantage
of the IBM-PC BIOS directly; this is usable on machines that are
BIOS-compatible and running MS-DOS, but not on machines running MS-DOS
that are not BIOS compatible.

-- 
--------------------------------------------------------------------------
John T. Bryan              USENET:  ...!ihnp4!druhi!bryan
AT&T Information Systems   PHONE:   (303) 538-5172
12110 N. Pecos, #8C350     QUOTE:   I didn't mean what you thought I meant
Denver, CO  80234                   you said.
--------------------------------------------------------------------------
This is a disclaimer: I don't speak for AT&T, and they don't speak for me.
--------------------------------------------------------------------------

ben@catnip.UUCP (Bennett Broder) (10/29/86)

In article <4058@amdahl.UUCP> kim@amdahl.UUCP (Kim DeVaughn) writes:
>> >I am an experienced user of PC-DOS, but I am still unclear on
>> >the exact differences between MS-DOS and PC-DOS.
>>
>In article <394@catnip.UUCP>, I write:
>> There is little if any difference between MS-DOS and PC-DOS.  They are
>> both the same OS, but PC-DOS is supported by IBM instead of Microsoft
>> or another hardware vendor.
>> 
>> In article <985@husc2.UUCP> shields@husc2.UUCP (shields) writes:
>Sorry, but I couldn't disagree more!
>
>MS-DOS is a generic product which is sold to OEM's.  It provides all of
>the system functions and calls that are accessed via interrupts above 20h
>(i.e., int 20h, int21h, etc.)  This generic, base system is sometimes
>slightly customized by the OEM (IBM does this to a minor degree, I'm told).
>The basic operation of MS-DOS, and the functions provided via these rupts
>are very well defined and consistent from vendor to vendor.  But that's
>where it stops.

Exactly.

>All of the functions/services that are provided by the BIOS are up to
>the individual vendor to implement, and are implementation specific.  On
>PClones these are things like rupts 10h - 1Fh, which provide services
>for Video I/O, RS232, keyboard, printer, Basic, floppys, etc. (at the
>BIOS level).  Then there are what are usually called H/W rupts (08h - 0Fh)
>on PClones;  these too, are implementation specific.

>There are several machines that run MS-DOS, but are in no way compatible
>with IBM PC's or PClones, and have vastly different H/W and BIOS functions.
>For example, my Fujitsu Micro-16s runs MS-DOS (2.11, currently), but
>very little PC software (unless the s/w has been written to be MS-DOS
>compatible, or a port has been done specifically for the Fuji machine).

Yes.  And this issue is refered to as "PC compatiblity".  There are
machines that are very PC compatible that run MS-DOS, and machines
that are not, but the MS or PCDOS code and functionality are the same.

>The term PC-DOS is usually used to refer to the collection of MS-DOS
>*and* the BIOS and H/W rupt support as implemented by IBM PC's (and "true
>compatibles").  The BIOS part may be realized in s/w on a floppy, or may
>be in ROM, or a combination of the two.

Where did you see that definition?  When I purchased PC-DOS, it came
in a box with a manual and diskettes.  There were no BIOS ROMS in there.

And, as I type this, my keystrokes are being processed by those very same
BIOS ROMs, although my machine is running multiuser Xenix, not PC-DOS.

Quite simply, the BIOS routines are provided by the vendor to give
developers a consistant and well defined means to access the actual
hardware.  Although they are used by DOS, Xenix, CP/M 86, PICK and other
operating systems, BIOS routines are *not* a part of the O/S.  In fact,
many of the compatibility problems that plague owners of non-IBM hardware
occurs because developers access hardware directly, bypassing the BIOS
routines.  But even in the case of the totally incompatible BIOS supplied
with your Fujuitsu and several other 8086 based machines, the interface
between a program and MSDOS is consistant from vendor to vendor, while
at the same time, the operating system can do nothing to help or hinder
calls that an application program makes directly to the BIOS.

>I short, while the MS-DOS part of the system s/w may be portable from
>one vendor's machine to another, the BIOS/etc. parts may or may not be,
>and then only if the machines are PClones.

I think you are mistaking the issue of whether MSDOS=PCDOS with that
of PC compatibility.  I can take a copy of MSDOS from my employers AT&T
6300 and run the same programs I run with PC-DOS.
I could take my copy of PC-DOS to your machine, and you would *still* not
be able to run most PC software.

In short, compatibility is determined by the hardware and the BIOS, not
by whose version of DOS you buy.

-- 

Ben Broder
{ihnp4,decvax} !hjuxa!catnip!ben
{houxm,topaz}/

plocher@puff.wisc.edu (John Plocher) (10/29/86)

Notes from other messages:
>>>>I am an experienced user of PC-DOS, but I am still unclear on
>>>>the exact differences between MS-DOS and PC-DOS.

>>> There is little if any difference between MS-DOS and PC-DOS.

>>Sorry, but I couldn't disagree more!
>>The term PC-DOS is usually used to refer to the collection of MS-DOS
>>*and* the BIOS and H/W rupt support as implemented by IBM PC's (and "true

>And, as I type this, my keystrokes are being processed by those very same
>BIOS ROMs, although my machine is running multiuser Xenix, not PC-DOS.

    WRONG!

      If you are using XENIX, your keystrokes are NOT going through
      any ROM routines - in fact, the ROMs are ONLY used at boot time
      to determine HARD DISK parameters.

      The Xenix device drivers are totally seperate from any of the
      ROM BIOS routines!

      (this info relates to MicroSoft/IBM Xenix 2.0 (SVR2ish) only)

>
>In short, compatibility is determined by the hardware and the BIOS, not
>by whose version of DOS you buy.

	I agree totally!


-- 
"Never trust an idea you get sitting down" - Nietzche
------------	{harvard,seismo}!uwvax!uwmacc!uwhsms!plocher        (work)
John Plocher    {harvard,seismo}!uwvax!puff!plocher                 (school)
------------	decvax!encore!vaxine!spark!121!0!John_Plocher       (FidoNet)

smvorkoetter@watmum.UUCP (Stefan M. Vorkoetter) (10/30/86)

In article <277@puff.wisc.edu> plocher@puff.WISC.EDU (John Plocher) writes:
>>And, as I type this, my keystrokes are being processed by those very same
>>BIOS ROMs, although my machine is running multiuser Xenix, not PC-DOS.
>    WRONG!
>      If you are using XENIX, your keystrokes are NOT going through
>      any ROM routines - in fact, the ROMs are ONLY used at boot time
>      to determine HARD DISK parameters.
>      The Xenix device drivers are totally seperate from any of the
>      ROM BIOS routines!
>      (this info relates to MicroSoft/IBM Xenix 2.0 (SVR2ish) only)

This info probably relates to any PC UN*X system, since it would be hard
to implement (read: IMPOSSIBLE) a multitasking OS on top of a BIOS that
isn't re-entrant.

jpn@teddy.UUCP (John P. Nelson) (10/31/86)

>> There is one, very large and very important difference that I am aware of.
>> MS-DOS and PC-DOS store their hard drive's directories in different
>> sectors on the disk.

I believe that this is an untruth (although I suppose that it might be
true for SOME vendor's version of MSDOS).  I have a Tandy 1200, I run
PCDOS 3.1 by default (on my hard disk), but occasionally boot with the
MSDOS 2.1 floppy which came with the system, and I can access all the
hard disk files just fine!

wb8foz@ncoast.UUCP (David Lesher) (11/02/86)

In article <3449@teddy.UUCP> jpn@teddy.UUCP (John P. Nelson) writes:
>>> There is one, very large and very important difference that I am aware of.
>>> MS-DOS and PC-DOS store their hard drive's directories in different
>>> sectors on the disk.
>
>I believe that this is an untruth (although I suppose that it might be
>true for SOME vendor's version of MSDOS).  I have a Tandy 1200, I run
>PCDOS 3.1 by default (on my hard disk), but occasionally boot with the
>MSDOS 2.1 floppy which came with the system, and I can access all the
>hard disk files just fine!

Interesting! I run Zenith MS-DOS 3.1. I can boot and run PC DOS 3.1 
with no problem. BUT attempts to access the 20 meg HD when booted
off of MS 2.1 are ng, because 3.x allows the smaller cluster size (please
no flames if it isn't clusters, but you get the idea).
David Lesher

-- 

		      decvax!cwruecmp!ncoast!wb8foz
			ncoast!wb8foz@case.csnet 
		(ncoast!wb8foz%case.csnet@csnet-relay.ARPA)

    	         		"SERIOUS?
		Bones, it could upset the entire percentage!"
-- 

		      decvax!cwruecmp!ncoast!wb8foz
			ncoast!wb8foz@case.csnet 
		(ncoast!wb8foz%case.csnet@csnet-relay.ARPA)

    	         		"SERIOUS?
		Bones, it could upset the entire percentage!"