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|
|3" and 3.5" versions for Japanese Sharp Computers|
|3.5" versions for Sharp Computers in Europe and Australia|
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:-
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.184.108.40.206 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|
In M-T CP/M 220.127.116.11 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 18.104.22.168 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 22.214.171.124
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|
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|
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.
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.
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.
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 126.96.36.199. The total disk space is therefore 40/35 times that in CP/M 188.8.131.52, giving a 'User' space of 384K and a 'Free' space of 380K ( cf. 340K & 336K in CP/M 184.108.40.206 ).
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|
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 220.127.116.11 and 18.104.22.168|
BACKUP80.COM copies 80 tracks ( and in the Continental 'Hi-Speed' Version of MZ-80B CP/M 22.214.171.124 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 126.96.36.199 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 )|
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':-
( 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 )|
|3.5" CP/M and PCP/M Systems - Recommendations|
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 188.8.131.52, 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.
khmweb barrierefreies webdesign Berchtesgaden