PCP/M on the MZ-700
written by Robin Hill, John Edwards and Maurice Hawes / SUC/UK
Source: SUC-magazine March 1993, Volume 13 Number 1, pp. 45 - 46
|MZ-800 PCP/M ON THE MZ-700|
John told me of Terrys letter, and I wrote to Terry explaining that our MZ-700 80-column system uses an "interlaced" screen which would not work with PCP/M, even if it had been converted to run on a normal MZ-700. I suggested that either we could send him the SUC 80-column MZ-700 CP/M; or he could send us Robins MZ-700 PCP/M, and we would see if we could adapt it to the SUC 80-column system.
Terry contacted Robin Hill and, as a result, a copy of Robins MZ-700 PCP/M arrived in Weymouth on April 14th 1992. 2 days later, coincidentally, John arrived for Easter, and we decided to look at PCP/M - but we could not even boot the disk ! This seemed odd, as I could boot PCP/M on my MZ-800; but then it hit me - my 700 was on Sharp drives, but my 800 was on Epson TF-16s. So I changed the MZ-700 drives to TF-16, and <BINGO>, the disk booted first time.
We soon had PCP/M running in 80 columns; but we had no cursor, and ( in some programs ) no menu-bar; and we still couldnt boot from Sharp drives. The cursor problem was a red herring, my 700 was on an old mono VDU, and when I substituted a portable B&W TV set, the cursor reappeared. But the menu-bar in DISKDEF and SETUP was still missing, and to check these programs we had to count keypresses, to work out where the menu-bar should be !
At this point, John returned home; later, on May 13th, I wrote to Robin Hill, to ask if he could suggest why his disk would not boot on Sharp drives, and wondering if he had any problems with the rnenu-bar ( expecting the answer "NO", because I thought the problem was in our 80-column system ). It took Robin a long time to answer, because he did have the menu-bar problem, and was busy solving it ! Then, on New Years Day 1993, he sent me a revised MZ-700 PCP/M, with the menu-bar working, in programs which he had converted to 40 columns because he does not ( yet ) have 80-columns. With the disk, Robin sent assembler listings of his changes.
The revised version got here on January 8th, and it took three weeks to sort out all the 80-column changes and the disk-booting problem. I could write pages, but I will restrict myself to three topics. First, when the menu-bar is variable-length on the MZ-800, it is a single white square on the MZ-700. Second, on the MZ-700, the status line shows the cursor position and its address in RAM ( in place of the "time" ). Third, and most important, I got the system to boot up on Sharp drives by using SETUP to change what Sharp call the "stepping rate". In tests, I discovered that, if you have Sharp MZ-80FD or MZ-80FB drives, you MUST use a "stepping rate" of 12ms or more; the 6ms setting in the distribution version of MZ-800 PCP/M is too fast. In the end, I set the "stepping rate" to 30ms because my Sharp drives sounded happiest at that setting.
For MZ-700 owners who wish to try out PCP/M, the main features of
both versions are summarized on the next page.
|THE PRINCIPAL FEATURES OF SHARP'S MZ-800 PCP/M|
MZ-800 PCP/M is a fairly standard implementation of CP/M 2.2, with "user friendly" additions. It "Auto-executes" VCCP.COM, which has 2 "windows"; the l.h. window displays the directory of the disk you have just booted, and the r.h. window lists PCP/M's built in commands. Also, there is a highlighted "status line" at the bottom of the screen which shows function-key settings, "time", and the state of CAPS ( highlighted = ON, normal display = OFF ).
A highlighted cursor-bar sits at the top of the r.h. window, and you may cursor up and down to select a command; then CR moves you to the l.h. window, where you execute the command. At any stage, you can cry HELP ( CTRL/D ), or ABORT ( CTRL/C ); HELP messages are displayed at various points in the L.H. window, in framed "boxes"; and ABORT restarts the VCCP as if you had just booted up.
( On the 80-column MZ-700, the HELP boxes are not framed, and the current "time" is replaced by the current cursor Position.)
The function keys are in 4 sets of 4. The current set is on keys F1 - F4, and key F5 is used to "rotate" F1 - F4 to the NEXT set.
Most of the systems programs in PCP/M are standard, and require no comment. But there are 3 additional programs of Sharp origin, all of which are VERY friendly and EXTREMELY useful:-
DISKEDIT.COM can be used to directly edit a PCP/M disk. You can select BLOCK, FILE or SECTOR mode, or you can TARGET a new drive. DISKEDIT.COM was used to make ALL the changes needed to get PCP/M working on an 80-column MZ-700. Its operation is self-explanatory, but note that it CANNOT read and write correctly to tracks 0 and 79 ( the two outside tracks ) on a PCP/M disk.
DISKDEF.COM can redefine the format accepted by drive B:. The options include 2 Sharp-CP/M formats ( MZ-80B, MZ-3500 ) plus 3 other formats ( 1D-IBM, 2D-IBM, MZ-5500 ). I am pretty sure that the last 3 formats are CP/M-86, but I have not been able to check.
SETUP.COM enables you to customize nine different items. These include the AUTO EXECUTE file ( default VCCP ); screen colours and intensities; CP/M "devices" and the number of drives; floppy-drive read after write & stepping rate; keyclick; masking of high bits; printer type ( Sharp / ASCII ), and printer CRLF; RS-232 settings; and, very useful, redefining the four function keys, the cursor keys, and the shifted and unshifted INST / DEL / TAB / BLANK keys.
( On the 80-column MZ-700, the highlighted menu-bar in DISKDEF and SETUP is changed to a single white square ).
*** WARNING - when using SETUP, do NOT reduce the floppy ***
As you can imagine, this has been a complex operation, and it would be silly to assume that we have solved ALL the problems. So for now, 80-column MZ-700 PCP/M is available from MAH in Weymouth as a "beta" disk. If satisfactory, it will be put in the Library.