[net.micro.cpm] CP/M80 and CP/M86

DDA@CMU-CS-C.ARPA (12/09/83)

From:  Drew Anderson <DDA@CMU-CS-C.ARPA>

On a "normal" implementation of CP/M (8", SSSD 128byte/sector,) can your
CP/M80 system read and write CP/M86 disks?  I would assume that this would
be true, but the guys at Priority One Electronics said no.

				Drew Anderson
				DDA@cmu-cs-c.arpa
-------

George.Wood%cmu-cs-a@sri-unix.UUCP (12/10/83)

While the disk formats, i.e 8", sssd, 128 byte/sector, can be used by
both cp/m-80 and cp/m-86, they have different directory structures. I
don't know the specifics, but I think '86 keeps the date of the last
file modification with the directory entry. 
	If you can figure out the directory format for '86, you should 
be able to read & write with DUU; but it would probably be exasperating.
It seems to me that a conversion program could be built by around duu --
any takers?
						George
(ps: I'd appreciate pointers to more info on the cp/m-86 directory structure)

ciaraldi@Rochester.ARPA (12/10/83)

From:  Mike Ciaraldi <ciaraldi@Rochester.ARPA>

I have successfully read and written CP/M-86 disks on a CP/M-80
system, and also on an MP/M-80 system.
The file and directory formats are exactly the same, with one
exception, which is very important.

CP/M-86 has an optional extension to the directory
that allows you to store extra information about each file,
such as date and time stamps, passwords, etc.
This is the same as used in MP/M.
Physically, it uses extra directory entries.
Ordinarily, CP/M-80 uses one directory entry per file,
unless the file is long, in which case it uses additonal
directory entries with the same file name and different status
bits to hold the pointers to the rest of the file.
In MP/M and CP/M-86 you can tell the file system
(using the STAT or SET command) that a particular diskette
will have XFCB's (extended File Control Blocks).
If you do, the OS uses an extra directory entry for 
each file. It has the name of the file and certain status bits
to show it is an XFCB. In the rest of the directory entry,
(where you would ordinarily find pointers to disk blocks)
are the time stamps, etc.
There is also one more special directory entry
which can store the name of the diskette and
its attributes (e.g. whether to have XFCB's, whether
to timestamp all files, etc.)

The result is that MP/M, CP/M-86, and Concurrent CP/M-86 disks
are "upward compatible" from CP/M-80.
The three newer operating systems can read and write
CP/M-80 disks, because to them the disks look like disks
that have not been labelled and have not had the extended
features activated.
But, the CP/M-80 system may get confused when
it reads and writes the disks from the other three.
As long as the diskette does NOT have the extra stuff
activated (which is usually, but not always, the way the
format program leaves a blank disk), CP/M-80 is happy.
But if it tries to use a disk with the extended stuff
activated, it may mess up.
The new version of CP/M-80, called
CP/M-Plus or CP/M 3.0, has these extended
file things.

All clear?
Boy, I hope I got this all right...

Mike Ciaraldi
ciaraldi@rochester