Sharp logo
CP/M and PCP/M for Sharp Machines, on 3.5" disks 
written by Maurice Hawes / SUC/UK
Source: SUC-magazine March 2003, Volume 23 Number 1, pp. 12 - 16  
Sharp Users Club - General Section - CP/M and PCP/M on 3.5" disks
( RECAP ) 5.25" versions for Sharp Computers in Europe and Australia


All the early Sharp Z80-based computers were designed for use with 5.25“ drives, and many 5.25“ versions of CP/M, some official and some unofficial, were available for these machines. The official versions included:-

Crystal Research   CP/M 2.21 and 2.23   MZ-80K
Microtechnology   CP/M v.2.2.2.02   PC-3201
Sharp/D.R.   CP/M v.2.2 ( A.1 )   PC-3201
Microtechnology   CP/M 2.2.1.00   MZ-3500
Sharp/D.R.   CP/M v.2.0A   MZ-3500
Microtechnology   CP/M 2.2.2.08-15   MZ-80B and MZ-80A
Sharp/D.R.   Personal CP/M ( PCP/M )   MZ-800 in the U.K.
SDS/400   Personal CP/M ( PCP/M )   MZ-800 in Germany

In addition to the above, the SUC was eventually able to offer:-

Microtechnology   CP/M 2.2.2.15   MZ-700 ( edited by Dave Bagshaw )
Sharp/D.R.   Personal CP/M ( PCP/M )   MZ-700 ( edited by Robin Hill )

3" and 3.5" versions for Japanese Sharp Computers


The Sharp/D.R version of CP/M 2.2 for the 'X1' was on a 3" Amstrad-type disk, and Sharp's PCP/M system for the MZ-2500 was on a 3.5" disk. But these computers were never sold to the general public in the U.K., so I shall not attempt to cover these two systems in the present review.

3.5" versions for Sharp Computers in Europe and Australia


As far as I know ( AFAIK ), no-one has ever tried to create 3.5" versions of CP/M 2.2 for the MZ-80K, PC-3201 or MZ-3500. The reasons for this vary; the MZ-80K is lumbered with a 40-column screen that is very difficult to upgrade, and the PC-3201 and MZ-3500 were expensive machines aimed at the business market, and never really took off as 'hobby' machines.

On the other hand, the MZ-80B, MZ-80A, and MZ-700 all became very popular 'hobby' machines in the U.K., and the MZ-700 and MZ-800 became very popular in Europe, and especially in Germany. On account of this, I now have copies of the following CP/M-type systems on 3.5" disks:-

Microtechnology   CP/M 2.2.2.15   MZ-80B ( John Ibberson & others )
Microtechnology   CP/M 2.2.2.15 'Hi Speed'   MZ-80B ( Josef Arens (?) )
Microtechnology   CP/M 2.2.2.12   MZ-80B ( Robin Hill )
Microtechnology   CP/M 2.2.2.15   MZ-700 ( Robin Hill )
 
PCP/M80   Personal CP/M ( PCP/M )   80-column MZ-700 ( Robin Hill )
PCP/M80   Personal CP/M ( PCP/M )   MZ-800 ( Robin Hill )
SDS/768   Personal CP/M ( PCP/M )   MZ-800 ( Robin Hill )

This array of possible 3.5" systems is rather daunting, and for this reason I have, until now, been unwilling to recommend any particular version or versions from the above list. But I was recently forced to get to grips with two of the above systems, to create the new 4-Drive versions of Robin Hill's CONVxxxx.COM, and as a result I now feel able to offer some initial recommendations as outlined on the following pages.

THE SIMPLE '1 to 1' WAY OF USING 3.5" DISKS

If you want a quiet life, and are only interested in transferring your Library of 5.25" CP/M or PCP/M software onto 3.5" disks because they are more robust and more easily available, there is a very simple solution.

For example, under M-T CP/M v.2.2.2.15 on the MZ-80B, MZ-80A, or MZ-700, you can use the original 35-track FORMAT.COM utility to format the first 35 tracks of a 3.5" disk, and then use the original 35-track BACKUP utility to copy a 5.25" CP/M disk to the first 35 tracks on the 3.5" disk. This 3.5" disk will then behave in exactly the same way as the original 5.25" disk.

And the same process may be applied to 40-track 5.25" PCP/M disks on the MZ-700 or MZ-800 i.e. they may be copied to 3.5" disks using the original 40-track FORMAT and DISKCOPY utilities in PCP/M, the only difference being that, in this case, 40 tracks on the 3.5" disk are formatted and filled.

OTHER WAYS OF USING 3.5" DISKS


The '1 to 1' method is simple and free from pitfalls, but it wastes at least half of a 3.5" disk, and you may therefore feel that a more efficient alternative should be used. In order to understand the alternatives, it is necessary to look at a typical 'Sharp-MZ' CP/M format in a little detail.

In M-T CP/M 2.2.2.15 on the MZ-80B / 80A / 700 there are 35 tracks on each side of a 5.25" disk, 70 'physical' tracks in all, each of which can hold 5K; so the overall capacity of the disk is 350K; but the outer track on each side of the disk is reserved for the CP/M system, so only 68 'physical' tracks or 340K are available as 'User' space. CP/M 2.2 2.15 divides this 340K into 170 BLOCKS of 2K, and numbers those blocks $00 - $A9 hex ( 0 - 169 decimal ).

To take full advantage of the extra tracks on a 3.5" disk, you can either increase the number of blocks, or you can increase the block size.

In any CP/M 2.2 system the highest permitted block number is 255. If you go to this limit and keep 2K blocks, the largest 'User' space you can have on any disk is 512K. CP/M 2.2.2.15 uses a data density of 5K per track, so 512K 'User' space requires 102.4 tracks, which is a fairly efficient way of utilizing a 160-track 3.5" disk, and all that can go wrong is that you forget to tell the system about blocks 170 - 255 and they cannot be accessed.

On the other hand, there is no limit to block size but the bigger you make it the more disk space is wasted, because files must occupy whole blocks. A sensible approach is to use blocks of 4K. In CP/M 2.2.2.15 the empty space on an 80-track system disk is 790K; this can hold 197 4K blocks, well below the 256 limit and offering 788K 'User' space.

THE DISADVANTAGE OF MIXING BLOCK SIZES


The problem is that if the CP/M system is not told and does not know that the blocks on a disk are 4K, it will assume that they are 2K. This will cause it to 'read' a file from the wrong sectors on a disk, or 'write' a file to the wrong sectors on a disk. The result is chaos, but this will not become obvious until the corrupted file is loaded and 'run', when it will cause mayhem on the screen and almost certainly crash the computer.

With all these factors in mind, let us now reexamine the 80-track systems listed on the previous page.

DETAILS OF EXISTING 3.5" SYSTEMS

Microtechnology   CP/M 2.2.2.15   MZ-80B ( John Ibberson & others )
Microtechnology   CP/M 2.2.2.15 'Hi Speed'   MZ-80B ( Josef Arens (?) )

Both these Systems use 256 blocks of 2K, to give a 'User' space of 512K. The Directory occupies 4K, so the 'Free' space for files is 508K, and this figure is confirmed by FILES.COM. In track terms, both these systems use 104.4 of the 160 tracks on a 3.5" disk.

The 'Hi Speed' version, which came to us from Josef Arens in Holland but probably originated in Germany, may have additional features. It certainly boots up faster and more smoothly than the Micro-Technology versions of CP/M that were traditionally used in the U.K.

Microtechnology   CP/M 2.2.2.12   MZ-80B ( Robin Hill )
Microtechnology   CP/M 2.2.2.15   MZ-700 ( Robin Hill )

Both these Systems use 4K blocks, to allow the use of all 160 tracks on a 3.5" disk. Each 'physical' track can hold 5K, so the total capacity of the disk is 800K. The 'User' space, including the Directory, is 197 blocks or 788K, and the 'Free' space, as confirmed by 'FILES.COM', is 784K.

Both these systems contain a new 'DISKDEF.COM' program, written by Robin Hill, which can be used to tell the system which drives are '35T' and which are '80T'. 'DISKDEF.COM' is described in detail at the end of this article.

PCP/M80   Personal CP/M ( PCP/M )   MZ-700 and MZ-800 ( Robin Hill )

This system also uses 4K blocks and all 160 tracks. In PCP/M, a 'physical' track has a capacity of 4K, so the total capacity of the disk is 640K. The 'User' space is 159 blocks or 636K, but in this case 16K of that space is used by PCP/M.SYS and 4K is used by the Directory; so the 'Free' space, as confirmed by 'FILES.COM', is only 616K.

The DISKDEF.COM utility supplied with these 80-track systems was written by Robin Hill. It is an extended version of the original MZ-800 40-track DISKDEF.COM, and is described in detail at the end of this article.

SDS/768   Personal CP/M ( PCP/M )   MZ-800 ( Robin Hill )

The SDS system originated in Germany as SDS/400, on a 40-track 5.25" disk using the same data density and block size as CP/M 2.2.2.15. The total disk space is therefore 40/35 times that in CP/M 2.2.2.15, giving a 'User' space of 384K and a 'Free' space of 380K ( cf. 340K & 336K in CP/M 2.2.2.15 ).

SDS/400 contains fairly concrete evidence that its German authors were planning an 80-track version called SDS/768. We do not know whether this 'official' version of SDS/768 ever saw the light of day, but if it did, it would not necessarily have been the same as Robin's Hill's version, below.

Robin Hill's 3.5" version of SDS/768 uses blocks of 4K; but all the other parameters the same as in SDS/400 so in theory SDS/768 should have a 'User' space of 2 x 384K or 768K. But in practice Robin obtains a 'User' space of 788K and a 'Free' space of 784K, the latter confirmed by FILES.COM.

I have not been able to 'run' SDS/768, because I do not have 3.5" drives on my MZ-800; but I suspect that its DISKDEF.COM program is the same as that supplied with Robin's 80-track PCP/M80 Systems for the MZ-700 and MZ-800.

New Utility Programs for 3.5" versions of CP/M and PCP/M


All the old 35-track CP/M and 40-track PCP/M systems offer programs to format and copy 5.25" disks. PCP/M also offers DISKDEF.COM, a program that can redefine 5.25" drives to read/write other CP/M formats.

In the new 80T systems, new programs are needed to perform all these very important jobs. For example, FORMAT80 to format 80 tracks, BACKUP80 to copy 80 tracks, and DISKDEF ( or however you choose to name it ) to tell the system which drives are 35 or 40-track, and which are 80-track.

New Utility Programs for 3.5" CP/M 2.2.2.12 and 2.2.2.15


FORMAT80.COM formats 80 tracks ( and in the Continental 'Hi-Speed' version of MZ-80B CP/M 2.2.2.15 there is also a new FORMAT40.COM ).

BACKUP80.COM copies 80 tracks ( and in the Continental 'Hi-Speed' Version of MZ-80B CP/M 2.2.2.15 there is also a new BACKUP40.COM ).

DISKDEF.COM, a NEW program in Robin's 80-track versions of CP/M for the MZ-80B and MZ-700, allows the user to tell the System which drives are '35T' and which are '80T', with an option to SAVE the settings to the boot disk.

In the 'Hi-Speed' version of MZ-80B CP/M 2.2.2.15 there is no DISKDEF or equivalent program. Instead, ALL DRIVES are set to handle block numbers from 0 to 255. There are no problems READING a 35-track disk, but there may be problems WRITING to a nearly-full 35-track disk because the system assumes that ALL disks can hold 256 blocks, equivalent to about 53 tracks.

New Utility Programs for MZ-700 PCP/M80 ( by Robin Hill )


Robin has adopted his usual policy of leaving filenames unaltered and using screen messages to show that his new programs are different; and also of including his new '.ASM' files on the system disk so that you may see what changes he has made. The new 'Utility' features are therefore as follows:-

FORMAT.COM displays the initial message 'Format 80 Tracks Vers 1', and is listed in FORMAT.ASM.

DISKCOPY.COM displays the boxed heading 'MZ-700 P-CP/M80 - 80 Track Format' and is listed in DISKCOPY.ASM and COPYSYS.ASM.

DISKDEF.COM displays the boxed heading 'DISKDEF MZ-700 for 80 Track' and is listed in DISKDEF.ASM. This version offers more CP/M formats than its predecessors, but you should also note that Drive A cannot be redefined, the prefix 'HD' means 80-track, and 'MZ800' may also be read as 'MZ700':-

A   HDMZ800            
B   HDMZ800   1DIBMPC   2DIBMPC   2DMZ80B
    2DMZ3500   2DMZ5500   2DMZ800   SDS/400
    SDS/768            

( Drives C and D, if present, may be redefined in the same way as Drive B )

New Utility Programs for MZ-800 PCP/M80 and SDS/768 ( by Robin Hill )


I cannot RUN these programs because I do not have 3.5" drives on my MZ-800; but I can read the directories, and they show Utility programs FORMAT.COM, DISKCOPY.COM and DISKDEF.COM, the same names as in MZ-700 PCP/M80 above.

3.5" CP/M and PCP/M Systems - Recommendations


Now comes the big decision; out of all these versions of CP/M and PCP/M, which one(s) should we adopt as the SUC standard(s)?

As you probably recognize, these are decisions that I have been putting off for a long time, perhaps in the subconscious hope that they would go away. But early this year I was forced to sort out the various versions of Robin Hill's extremely useful CONV.COM program, and this inevitably led me to tangle with the 3.5" 80-track CP/M and PCP/M systems disks on which the latest and 'bug free' versions of these programs were supplied.

As a result of working with these 80-track CP/M and PCP/M systems during the past 3 months, in a fairly intense way, I have come to the conclusion that the advantages of using 4K blocks are outweighed by the potentially lethal file corruption that can arise in a CP/M or PCP/M setup involving the concurrent use of disks with 2K blocks and disk with 4K blocks.

So I am about to 'take the bull by the horns', and 'go out on a limb', if only to try and provoke some sort of reaction.

I therefore suggest that, in order to transfer CP/M or PCP/M software between ourselves, on 3.5" disks, we should all adopt the policy of doing this on 3.5" disks which use 2K blocks and have been formatted to 35 or 40 tracks using the original 5.25" CP/M or PCP/M software.

I know this sounds cowardly and retrograde, but my experiences with other more complex and higher-capacity systems during the past 3 months leads me to believe that any other way of doing things would lead to so many complications that it would, in the end, be counterproductive.

However, I do accept that, if this proves a useful first step, it would then be relatively simple to move up to the format used by the Continental 'Hi-Speed' version of MZ-80B CP/M 2.2.2.15, which still uses 2K blocks but increases the number of permitted blocks to the maximum of 256 and thereby utilizes 53 tracks and gives a 3.5" disk capacity of just over 500K, which by any standards should be sufficient for the foreseeable future.

I also accept that my problems with 80-track systems using 4K blocks may have arisen from the fact that, in my attempts to rewrite CONV.COM on two different machines, I was jumping about between the various systems in a way that would not normally be necessary, and that a 1-machine user who had become familiar with an 80-track system using 4K blocks would easily be able to avoid the sort of problems I had when I was try to 'mix and match' between 2K blocks and 4K blocks on two different machines.

I would therefore be very happy to supply ANY of the CP/M or CP/M systems I have just surveyed, to individual members, on an experimental basis.

But when it comes to software transfer in general, there is another point to be considered. There are only 2 formats that EVERYONE can read and write without any problems; one is the original 35T format for CP/M 2.2.2.x on the MZ-80B, MZ-80A and MZ-700, and the other is the original 40-track format for PCP/M on the MZ-800 ( a system that was later extended by the SUC to work on the MZ-700 ). This, I think, clinches the argument for using these two formats, and only these two formats, to transfer 3.5" CP/M and PCP/M software between ourselves or to and from our CP/M Libraries.

So there!


Go to the top of this page      Get next page - CP/M on Sharps part II      Home     

last updated August 18, 2003
SUC / UK: Maurice Hawes

khmweb barrierefreies webdesign Berchtesgaden