SAM Coupé Pro-DOS [CP/M 2.2] Resource Pages
Formats Pro-DOS Review.
In volume 5 issue 9 of INDUGs Format magazine John Wase reviewed Pro-DOS.

By:- John Wase
Sam's what!!!??? Metamorphosis - a change from one thing to something quite different. What is it? How well does it work? Read on! You will have seen the adverts in FORMAT, from B.G.Services, for a program called Pro-DOS for SAM. You might well have seen that this implements CP/M. You might even be asking just what it is and if it's any use to you. Well, here's the lowdown.
Once upon a time, in the 1970's, there were, as now, all sorts of computers just appearing on the market. These (in those days) were eight-bit jobs. CP/M was devised by a company called Digital Research as an operating system which would work on various makes of computer. Although each of these makes was different from the next, provided the computer could run the operating system, it could run a program designed to run under that operating system. In other words, although all different, each computer could then run the same program. Lots of computers, all running the same programs. So programs which would run under CP/M proliferated.
Incidentally, a company called IBM (heard of 'em?) had some disagreement with DR in the late 70's-early 80's. So they chose a small, unknown company, one Microsoft, to develop a successor to CP/M. 'Twas called MS-DOS; the dreaded MS-DOS, and I guess you must have heard of that one.
Anyway, back to the fore-runner; CP/M. A version was devised to run on SAM after a conversation between Brian Gaff (of Micronet fame) and Chris Pile, the principal author. They were looking for a new project after experiencing comms problems with a quirk in SAM's RS232 interface (see last month's "Short Spot"). CP/M came up in their discussions.
Knowing that, at a guess, DR would have charged anything upwards of £10,000 for the original CP/M code, Chris, indicated that it would not be too difficult to reverse-engineer an implementation - and he was sober, too! So he observed RAM layout and the specified entry and exit conditions, and wrote the code appropriately to do the same job.
What came out was to be compatible with CP/M version 2.2. You see (at the risk of teaching Grannies to suck eggs), there is backward compatibility - CP/M 2.2 will run all programs designed for it or earlier versions, but not (necessarily) later ones. So CP/M+ programs will not necessarily run on CP/M 2.2. Unfortunately, Chris had insufficient documentation to emulate anything above version 2.2. Rest assured though, 2.2 will do. Most of the programs out there in the real world run in 2.2 or earlier.
So Chris carried on with his programming, Brian checked, bug-tested and criticised and Wayne Weedon, the third member of the team, collected and collated programs which he thought ought to work, mostly PD (which are available through him as a PD disc collection). There were some hiccups - SAM is pretty unobliging when it comes to reading the keyboard, which sports an enormous "bounce", leading to double inputs or none at all - try the original SAM version of Tasword 2 if you don't believe me. Some pretty involved code obviated this problem. And finally, there was a further delay when Brian persuaded Chris to implement some "extra" keys at a rather late stage. However, in the end, all was well, and in due course the expected parcel thudded on my met.
Inside was a package containing a
Boot disc, a System disc and a 68-page A5 plastic spiral bound lie-flat instruction book. I like A5 lie-flat books - very practical. The instructions are, in general, clear and easy to understand, though there are a lot of grammatical liberties.
Can't sit staring at the box all day. In with the boot disc; press F9. Frantic activity inside the drive. A big blue screen, which contains some advice about which drives are connected and the size of the RAMdisc. And a line, asking me to press any key. And then... the familiar A> prompt which has caused so much apoplexy in the past... And that's about the size of it. Just one point. The system disc contains lots of utilities, like FORMAT.COM and COPY.COM which you need to keep the system going. So the first thing is to make a copy of the system disc and put the master disc away where it won't get damaged. (Wase does this beautifully, year in and year out. And then can't remember where the disc is when it is wanted. So, if you have a number of discs to store; consider a filing system). And this is where a feature of Pro-DOS I just mentioned comes in - the RAMdrive. Pro-DOS will recognise the memory extension to 512k if you've got one, and will configure the size of the RAMdisc accordingly. Unfortunately, it doesn't acknowledge the existence of the add-on RAMpack. Or is this fortunately; see later? Anyway, all you've got to do is to copy all your system files to the RAMdrive using COPY *.* C: it's pretty quick at that. Then if you do C: COPY *.* B:, a copy of everything will fly from the default disc (disc A) to disc B. Without the RAMdisc, you cannot copy from A to B without a copy of COPY.COM on disc A. And it's slow, too. All the utilities in RAM make things happen much more quickly and smoothly. Unfortunately, the boot disc is uncopiable. I'm not very happy about that, though I appreciate the reasoning
So there we are. We've formatted a new disc and copied all the system files over to it.
What else will it do? Well, the answer lies in the wide variety of professional and PD software already available to run on CP/M computers. You can get word-processors, databases and spreadsheets. In variety. More than 57 varieties. I now had Brian Gaff's PD disc to play with. And I also have three of Wayne's discs - 1 (file and disc utilities), 2 (file compressors and archivers) and 5 (text processing). As each disc is full of compressed files, you can get up to 1300k's worth of bits and pieces. Like the file and disc utilities issue contains 30 files. And the cost? Two quid, including postage and all. A real labour of love for Wayne. The other discs contain such goodies as comms, programming (lots of languages - fancy Forth? Or a "C" compiler?) and games. Wonderful! Can't but be good value.
Actually, there's not a lot I can say about Chris Pile's implementation It does all the things one would expect of an operating system. I ought to, since it is. It does many them clumsily, because it's CP/M, not because Chris Pile wrote it. Apart from a couple of special features, i fades happily into the background. Are so it should.
Features? There's a special comma to read SAMdiscs. And another one change screen colours. CP/M has ba of possibilities, like the origin "model T". "paper" and "ink" o colour for each. The default is bl with white letters, and I find this pretty usable combination: a go choice.
There's one or two interesting bits on Brian's PD disc. For one of them, I must first digress a little bit. If you have an Amstrad 6128 (or a Tatung Einstein, for that matter), you'll probably know that they both run CP/M as an operating system. And they both have those ghastly 3" discs: well, they're all right, but very, very pricey, and they don't hold that much, either. You'll also recall how our favourite barrer-boy bought up the ailinq Uncle Clive's outfit, glued a data-recorder on his investronicas (sounds painful)
following with a swift stick-on 3" disc job; the Spectrum +3. What is perhaps not so well known is that the +3's disc drive operating system was imported (I don't know if they ported the code over or merely rewrote it, and I don't really care) from Amstrads' existing knowledge base. So it's essentially CP/M; bodged to accommodate the Spectrum header. There are lots of loose ends, like the dodgy implementation of user-areas, but it (mostly) works.
I'm lucky. I've got a Spectrum +3. And an add-on drive; drive B: which formats standard 3.5" discs to 706k. And these can be read directly on SAM with Chris Pile's CP/M program. So now we have a fascinating situation, haven't we. Indeed, experts like Brian Gaff are already well aware of the possibilities: on his PD disc, there's a little utility to strip off Spectrum headers... As well as the odd word processor, data base and spreadsheet. Nice one, Brian.
So I could have a nice little play. For instance, I got hold of a copy of "Wordstar 3.00"; yes, the dreaded "Wordstar" on 3" disc. Transferred it to 3.5" on the +3 - no header trouble: just use COPY "A:*.*" TO "B:" and everything grinds across. Then I started to get problems. Once "Wordstar" is set up, it winds in various overlays from the disc. They come complete with instructions which are fed into the panel at the top. One overlay wouldn't. Cussed, decided I'd got a defective version. So I went back to the Spectrum +3 and copied some ASCII files and some Tasword +3 files, and tried to look at those. Funny, they seemed to lack the start. Maybe the header.... Look for Brian's PD disc. Invoke his bit of header-stripping sorcery. No joy.
Things definitely went down-hill from then on. Eventually, in desperation, I sent Brian a collection of discs. He reported that there sure was some problem. Textfiles had the first sector. marked by CP/M, but that was all;
completely blank; no ASCII codes. Even the COPY.COM program was defective. A crazy situation. At that point, I baulked. I just hadn't the time to spend endless hours playing. Up to this point fate had been, to say the least, unhelpful. Now, at last, there was a positive intervention. I needed to see Andy Wright. He asked me if I could transfer "Wordstar to 3.5 disc. I took a sample over to him, mentioning the problem - and then stood, amazed, when the overlay quietly loaded in the version I handed to him. I went home that night in some confusion.
I made two more copies. I checked them. Neither worked on my SAM. I put one of them in my pocket and SAM in the car boot. Next day, I called on Andy in the lunch hour - poor Andy: I always interrupt his lunch.
You've guessed it. It worked on his, but not on mine. We then started playing with the add ons. If you took the backplane (complete with other bits and bobs) out of the output port, all was well. Mystified, I went home and did a systematic test on SAM's backplane with a I Megabyte RAM and a parallel printer port/drive controller. My results were as follows:-
Backplane Results
So there you have it. We're back to the -old problem. Just like the good old days of Uncle Clive. Not quite enough power to run the add-on bits and bobs. The result was weird, looking like RAM failure. Indeed, I mentioned that in a previous "Short Spot" and got a RAM check from Brian. Moral; something about counting chickens. Funnily enough, this was about the same time that Bob failed to run a demo disc when the backplane was
connected. So watch out, there can be trouble there.
And that all but wraps it up. I just ought to mention that Waynes PD library is called FDOS. Odd name but good value. Overall, this is a good and bug-free implementation (provided there aren't too many add-ons). You have all the standard CP/M facilities. You can get ASCII from SAMdiscs. You can change the screen colours and you can get lots of software cheaply, either through the FDOS or other PD libraries. At thirty quid, it's good. My only reservation is that there is only one programmer, who has distanced himself from the one seller, who is also responsible for technical backup. Fine, until something goes wrong. You could then be left with a legacy of useless programs, as the boot disc is heavily copy protected. This is by no means the only program sold in this way: if you're prepared to take the risk; great.