COMMODORE CP/M+ Beta-Test Report= Released to the Public Domain for distribution on 24 November 1986 COMPATIBILITY AND OPERABILITY OF THE C=128 CP/M+ OPERATING SYSTEM Copyright 15 March 1986: RAMA Corporation> P.O. Box 214, Mercer Island WA/USA 98040 Phone:(206)232-7070 BY: RALPH A. MORRILL, V.P. Sr. Professional Consultant PROLOG-TO CBM: In July 1985 we purchased our first C=128 Computer, upgrading from three years of use of the C=64 for our routine business operations. We are a small AI/Expert Systems R&D Consulting firm dedicated to the propagation of the considerable talents of our Principals to a distinguished list of Clients, which includes Fortune 500 firms. Most of our services are conducted on Large MainFrames and MiniComputers - but we learned a considerable respect for the capabilities of the CBM MicroComputers through practical business use of the C=64. The economies were outstanding in both the Hardware and Software costs for this purpose. Our first C=128 (July 85) was a Beta Unit, distuinguished by a two column grey right border on the Graphics Screen, and improper vertical striping of all VIC output in odd color assortments. A replacement was not available until October - during which time, denied full use of the 64 and 128 Modes, we began evaluating the CP/M Mode. Ours was one of the first of many letters to CBM pointing out the numerous "bugs" and deficiencies in the first two issues of the CP/M+ Operating System. Long TeleCons with CBM Customer Relations about our early findings resulted in a formal invitation in December 1985 to Beta-Test the 6 December '85 Revisions and CBM future upgrades to CP/M+. Two preliminary "Letter Reports" were submitted on a timely basis, allowing CBM sufficient time to respond to our recommendations before completing our Beta-Tests. This is our Final Report to CBM of the results of our tests and evaluations. It has not been paid for by CBM, nor will it be. It is therefor PROPRIETARY COPYRIGHTED information and the property of RAMA Corporation, intended for public release to the Media catering to Commodore Computer users. It was submitted to CBM March 1986 for comment and response. Two attempts to gain interest of RUN and Compute Gazette in publishing this report have resulted in null answers. ------------------------------------------------------------------------- INTRODUCTION: Like Christmas, there is always a sense of tense excitement when unwraping your new Computer, be it the first, third or n-th. It was July '85 and I had anticipated this moment since last February when the first public information releases had been made on the new Commodore C=128 MicroComputer. The decision had been made then to upgrade our Business Computer System with the new C=128. I had read everything available, even written a brief article about this "NEW THREE-IN-ONE" for a local Commodore User Group...... FINALLY! It had arrived and I eagerly got it out of the boxes and quickly connected to the existing peripherials (a compatability unusual in itself). The old C=64 was laid aside....retired from its three years of daily fault free service as our busy business computer... I connected the 40/80 Column Screen switching box (made a month earlier), then the Modem, High-Res Composit Color Monitor, Printer, and two new 1571 "smart" Disk Drives. NOW... lets see what this beauty will do! I doff my hat to the sage who once said "anticipation is nine-tenths of the pleasure....", however in this case, he was wrong. The C=128 was MORE than Commodore had said it would be... so busy selling "features" CBM had dramatically understated the full CAPABILITIES of this Mean Machine! It was perfect for our business use - and a great deal MORE. The uneasiness caused by the opening screen - which states that BASIC 7.0 was Copyrighted in 1977 by MicroSoft, and updated by CBM in 1985 - soon disapeared as I began to try some of the BASIC features provided. Help, Tron, Sound, Graphics, Sprites and the new BASIC 7.0 commands made programming effortless - all greatly enhanced by the 40/80 Column Screens, extended CNTRL and ESC codes. I BOOTed the CP/M+ which I hadn't played with for years (V 1.4 ....as I recall) and discoverd a near CP/M-86 capability imbedded in the Calls - approaching a REAL "Operating System"... that CP/M never was before. I had purchased an early Beta-Test Unit, distuinguished by a small brown dot under the "M" in the word COMPUTER on the Name-Tag, and a grey stripe on the right side of the Graphics Screen. This one had a ROM fault that caused random character errors and a bad VIC Chip. Our software worked alright for business use...but the Graphics were Verticle Striped in an odd assortment of colors. This didn't bother me much... having accepted it as a high probability for one of the first units sold... but a replacement would not be available until October. DISCOVERING CP/M+: Denied the full use of graphics in the 64 and 128 Modes of operation until a replacement Unit was received, I concentraited on the fully independent CP/M Mode....learning all there was to know about the CBM upgrades to CP/M 3.0, and ordering the "DRI Special Offer". The later is one of the best buys in the country... and probably the ONLY "support" we will ever receive from Digital Research Incorporated (DRI) for their Operating System. The "Two Utility Disks" in this DRI Offer are more than just that... they contain the assembly level ASM/LIB Files, Macros and Object Codes - plus the necessary MAC, RMAC, SID, ED etc. utilities which are ESSENTIAL if any programming is to be done, or Public Domain Software installed on the System. The two inch thick, three-in-one Manual(s) that comes with these disks, also an essentail, is cryptic to a fault.... but I would hate to do without it. It, sort of, explains the functions (NOT the functional use of) the Utilities and reveils the content and details of the BIOS, BDOS, CCP and other incorporated subroutines of the Operating System. A forth manual, "Programmer's Utilities Guide for the CP/M Family of Operating Systems" refered to frequently in the above Manual(s), is not available from DRIs publisher for seperate purchase. Rather than pay an outlandish $75 for repeated purchase of the Manual(s) materials, I recommend the Osborne/McGraw-Hill CP/M Users Guide, Third Edition. CBMs Manual and Programmers Guide should have eliminated this serious problem, but did not. The first thing to do when starting any new System is read the File Headers and DOC files. The HELP file on the first Distribution Disks serves as a reference untill the "DRI Special Offer" arrives - although it is just as cryptic as the DRI Manual(s). There is NOTHING you can do with all these files until you obtain some Applications Software or the ESSENTIAL Utilities for Programing contained in the DRI Utilities Disks. You're stuck, except to study what you have on the origional Distribution Disks, and try them out against each other. Furthermore, the first two CP/M+ issues by CBM did not permit a required DEVICE assignment to a Modem (RS232 Port) - and thus NO Telecommunication and Downloading of Applicaions Programs is possible. Remember, the big sales pitch by CBM for the CP/M+ Operating System was the "Free Software" available in the Public Domain - now inaccessable. DISCOVERING PROBLEMS IN CP/M+: I tried the simple exercises of the CP/M+ Operating System and Utilities and fortunately all the Utilities DID work properly (I have a few words later to describe my feelings about the archaic SID and ED file editors). The first, most obvious problem discovered was that the Printer would not properly copy (echo) the screen - no matter what I did to the Intereface configuration switches. This was later reveiled to be a problem within the Interface (it works fine in 64 and 128 Modes) that was not designed to handle the eight-bit ASCII or PETASCII codes (nulling the high-bit), and was "coloring" the printing with odd [SHRT] "soft-returns" mid-line and mid-word. I also had some random graphics and Font Switching codes being sent to the Printer at carrage- returns. Asking others about their Printer problems reveiled that ONLY the CARDCO Plus and Plus-G interfaces did not have all these CP/M+ problems, although Upper-Case characters were still being printed in Italics. I had to get rid of the PETASCII and Print with the Interface in ASCII Transparent mode. Further testing reveiled that, although the intent of CBM was to default (Boot) the system in an ADM-31 Terminal Configuration, the BIOS KEYCODEs were wrong...resulting in a keyboard that, at best, was and ADM-3A Terminal Configuration plus some odd ESC codes unique to the C=128. The Console Commanad Processor (CCP) was also deficient and trying to install and run Commercial Applications Software was, in many cases, a disaster. In some, the opening Screen and Menus were in all graphics characters (the alternate key-set produced by ESC-G-1) or resulted in a resounding CRASH because they wrote to high memory overwriting the CCP. Furthermore, random character errors kept showing up on the screen and printer outputs, along with double characters - most annoying and unpredictable crashes resulted. At that time I was compelled to advised CBM of my consternation and frustrations. My letter was not complementry - I learned later that it had been read to the Board of Directors and circulated to CBM Management. The reply (I actually got one..) was from the CBM Legal Council denying all responsibility. (Naturally! Thats what he is paid for.) When the "DRI Special Offer" finally arrived six weeks late, the READ-ME file was not the least bit illuminating, but the MAKEROM.DOC and MAKESYS.DOC files did guide me through the exercises of assembling and linking the Object Codes that fill these disks. DO NOT try to make sense of the File names and Headers with the DRI Manual(s) - there is NO CORRELATION between these, (this information should have been in the READ-ME file, according to the DRI Manual). This lack of correlation was the source of enormous frustration to me and my innate compulsion to MAKE IT WORK! The second curiousity was that although the MAKESYS exercise did, infact, assemble and install a new (and supposidly improved) CP/M+ System.... ALL the faults discovered in the first issue prevailed - including the denial of use of a Modem for Downloads. IN ADDITION the MAKEROM exercise dead-ended with a set of BIOS "CXROM...." files of absolutely no utility or reason, since they had already been included in the MAKESYS files under other/different Object Code file names. DRI refused to answer my questions - sending me back to CBMs Hotline Mummies. The Author, finally reached directly, admitted to me that this mess was intentional, not an accident or oversight, in the process of developing these Files. It DOES provide us with a fairly complete set of the CP/M+ Object Codes...and we may all be greatfull to him for these in any future upgrades of our CP/M+ Operating System. INVITED TO BETA-TEST CP/M+ REVISIONS: I tried using SID and ED to find and make corrections to the CX....ASM files that governed the functions that were faulty in the BIOS/BDOS/CCP Codes... and decided this was an exercise in futility without very extensive study. Did you ever try to edit someone elses Codes, on a limited display screen, without seeing the Curser position and without having full screen edit capability..... it is AWFUL!! Furthermore, some of the most dramatic Crashes imaginable resulted from these efforts - resoundingly slaping my sensativities as to my own capability as a programmer (now seriously in doubt). Once again I let CBM know about my concern and frustrations with this situation - and was invited to help constructively solve them as a "Beta-Tester" for the third issue of CP/M+ which was alledged to solve all these problems. It would accomodate the Modem , RAM Disk and other DEVICE assignments, and much, much, more. Having already developed a small effection for this "Mean Machine" - I agreed to Beta-Test the CP/M+ revisions. This latest CBM revision of CP/M+ (6 Dec. 85) for the C=128 was to be a fully corrected version, removing of all the faults I had cited above. It would now allow Modem (RS232 Port) operation in CP/M for downloading software that would make the Beta-Tests a significant exercise, and covering a wide range of Utilities and Applications Software. I immediately sent some 38 letters to the top CP/M Software suppliers (very few of whom responded) for Test Samples. I also promptly downloaded (in 128 Mode) and converted the Public Domain release of the 4 Dec. CP/M+ BIOS, and went to work in getting a first-class Terminal (MODEM7) Program up and operating. Finding a properly overlayed IMP244.LBR (which I highly recommend) was a bit of a struggle, but it had just made available on ComPuserv. My Downloading began, and over the next few weeks - while waiting for CBM to send me the Beta-Test Issue of the CP/M+ BIOS - I accumulated an outstanding set of Utilities and Software. THE FIRST CP/M+ REVISION: The disk that arrived from CBM in January was folded into a U and stuffed into our Postal Box. With heart sick feelings about the condition of the disk (and a bitter word or two to the Postmaster)... I hurried back to the office and was pleased to find I could gently unfold it and run the Disk in the 1571 Drive - copying everything promptly to a new disk, just in case. Along with a new CPM+.SYS file was a SCREEN40.COM file that I investigated immediately. This little ditty solved several serious problems. It turned off the 40 Column Screen and completely eliminated the random character errors experenced above, particularly in 1200 Baud Modem transfers. The source was thus reveiled for at least one of the faults in the CCP/BIOS - although SCREEN40 is no more than a Band-Aid for more serious problems that were still internal to the CP/M+ Operating System. My downloads from the BBSs would now be clean of random errors that plagued our first test software. About this same time the C=128 "Configurator" CONF.COM and its Menued HLP file became available on the Public Domain. With the proper settings of the O.S. using CONF.COM, and the Printer interface set transparent to eight-bit ASCII, my STAR Delta 10 Printer properly recieves and prints the direct ASCII codes without interference from the interface. Calling CONF PRT1=ASCII turns off the PETASCII conversion (that has been fouled up in the CP/M+ Codes) needed for CBM Printers. Calling CONF 40COL=OFF turns off the 40 column screen (like SCREEN40), switches to Two MegaHertz and gets rid of the random character errors at 1200 Baud and double keying problems. There is a full menu of other configuration control and set-up Calls in CONF.COM, as well, (see below) that provides the needed configuration control of the system - including screen colors. The controls provided by CONF.COM are REQUIRED for the successful use of the 6 December issue of CP/M+. They are only a Band- Aid "fix" however, to the many serious problems that are still imbedded in the CP/M+ source codes. With the improvement of the printer operation (by setting the PRT1=ASCII in CONF.COM) I realized my first real success with echoing the screen, and running several NLQ Font Programs that bit-map output to the dot-matrix printer. I use the "CBM emulate mode" of the Interface only in 64 and 128 Modes now, with the software designed for CBM Printers. With the Beta-Test CP/M+ you must still configure Commercial Software for the ADM-3A Terminal Configuraton, and thus are denied use of the full keyboard features and the much faster Screens of ADM-31 Terminal operation. Since this is not a hardware problem, but a fault of the CP/M+ Codes, we should expect CBM to properly correct this problem. Several of the Commercial and Public Domain Software packages evaluated require that the CCP be overlayed or made a PRL (program relocatable) File to work with their Resident Commands. As the CCP MUST be reprogrammed to correct remaining errors in its codes, WE NEED an assembly level copy of the CCP (ie CCP.ASM or CPR.ASM) to successfully run this excellent new software. Several Z80 Disassemblers I have tried all crash the CP/M+ O.S. - although nearly all CP/M 2.2 or 3.0 Commercial Software and Utilities run great on the C=128 (in ADM-3A Terminal mode with the Band-Aids affixed to the O.S.). Not one piece of Osborne Software from the First Osborne Groups (FOG) Public Domain Library that I have acquired will run on the C=128. Yet nearly all CP/M-80 Software from the SIG-M Library, and so called "vinilla" Programs (ie. without special Machine Unique calls imbedded) downloaded HAVE properly run. (I do NOT recommend that the C=128 CP/M+ be reconfigured to accomodate Osborne Software - even the Osborne Executive's CP/M 3.0). All Osborne, QX-10 and KayPro Disk configurations DO load and copy properly (even between disk formats) with the 1571 Disk Drives. As a matter of fact....the 1571 is remarkably fast and fault free in the CP/M Mode (although we cannot say the same for the 128 Mode where the DOS fails periodically). Although our C=128 Unit does have the infamous "shifted Q problem", our C=64 software is 100% compatable. Even the fully loaded FLIGHT SIMULATOR II will run without having to disconnect the Printer Interface and Cassette ports (thanks to CBM for cleaning this mess up). SOFTWARE REPORTS = SUCCESSES: The following abstracts are briefs of the software I have tested and which does operate successfully on the C=128 (under the certain conditions stated above and with the band-aids) with the 6 Dec. Beta- Test issue of CP/M+. We anticipate that CBM will make all necessary changes to the BIOS and CCP, and correct the remaining faults discovered in the codes, for the final release of the Upgraded CP/M+ Operating System scheduled for May of this year (now 5 Months late). I will not belabor this point further here. Only positive results are presented below, but rest assured - there were many failures. MODEM PROGRAMS - PUBLIC DOMAIN: MEX114.LBR - Contains an excellent Terminal Program (needs Jump Table edits to work on the C=128). A full set of Utilities and large set of Overlays for various systems and Modems are contained on several disks. The C=128 overlay has been installed on one version available on local BBSs, but only for the CBM 1670/Hayes Modems. It is loaded with set-up controls and toggles, for those who like this feature, and will Batch Transfer in several protocols that include ComPuserv's. It is very well documented and available on SIG-M Library Vol #218, 219, 220 and 241. IMP244.LBR - Another excellent Terminal Program with all the features of MEX - but most are automatic and transparent to the user. It also will Batch Transfer 128, 256 and 1K Byte Blocks and has KMD or XMODEM (Christensen) Protocols. I much prefer this one (its fool proof)... and have recommended CBM license it and adapt it to all CBM Modems. There is an C=128 overlay (I2C8-1.OVL for the 1670) and a converted version (IMP-128.COM) available on most local BBSs. The needed Utilities are included only in the LBR file - so get both. It is very well documented, but the overlays must be ordered from the Author. UTILITIES FROM THE PUBLIC DOMAIN: CONF.COM/HLP - The C=128 Configurator. These files MUST be on the CP/M+ Update Disk. It was released to the Public Domain on 21 Jan. 86 by the author Von Ertwine and has been a lifesaver. The command and help file support the set-up of system: - 40COL: toggles on/off the 40 column screen (and eliminates random character errors). - BAUD: sets the baud rate for the RS232 Port. - BACK/BORD/CURSOR: set colors on the screen. - DATE: sets system date and time. - DRV: assigns Disk Drive device numbers to A:,B:, etc.. - DUMP: dumps 16 bytes of memory from ROM in Hex from a selected address. - FEEL: sets key scan frequency. - HELP: types the help menu and instructions - MAP: maps the keyboard assignment by KEYFIG. - PARITY: sets byte character (ie 8/N/1, etc.) - POKE: pokes a Hex code into memory at selected location. - PRT(1 or 2): sets printer output to ASCII or PETASCII and selects character set. - REPEAT: toggles repeat keys on or off. - VOL: sets audible key-click volume level. NULU151.LBR - Menued and well documented LIB file utility. Makes and unmakes libraries with squeezed files. Has features for reading, extracting, squeezing/unsqueezing, making and erasing files. You will want to find the COM and DOC files seperately to get started (or get USQ.COM and DELBR.COM files to open this LBR). NUSWEEP107.LBR - Library file utility with some features not found in NULU. Well documented and Menued for ease of operation. Actually, both are needed and complement each other. Both will allow indexing of files and in one "sweep", extract only those files selected - unsqueezing as it goes. USQ/DELBR/BISHOW.COM - A nice set of individual LIB file utilities contained on all SIG-M Disks. Unsqueeze/Extract (ie de-library)/Read files in squeezed or unsqueezed format, respectively. BISHOW (or QSHOW) outperforms the TYPE.COM utility on the CP/M+ Distribution Disk. CPM3UTIL.LBR - Excellent set of CP/M+ utilities found in SIG-M Library Volume 234. Contains the following: - DISK3.COM: full directory listing and available space. - EDIT3.COM: Text Editor enhanced over ED. - IMAGE.COM: track by track disk copier, any disk format. - PASSWORD.COM: to protect the CP/M+ System in PROFILE. - UNLOAD,COM: converts Binary file to Intel Hex file. - VERIFY3.COM: checks all disk sectors - any format. - DISKED3.COM: menued sector editor for direct read/write. - WRTSYS.COM: writes boot to system tracks of disks. UNERA+.LBR - Poorly documented, it restores erased files. SUPERZAP.LBR - Full screen Disk Editor, with Menues. CPM3-CAT.LBR - Disk Catalogue maker. BRADFORD.LBR - NLQ Printer software like Fancy Font. Few fonts, not documented "free ware" - but worth it. COMMERCIAL SOFTWARE TESTS: WORDSTAR 3.3 - Latest version of the Word Processor standard. Do not bother with earlier versions. Good books are available to cover documentation needs. WORD FINDER - Thesarus for use with WordStar. Excellent to check for spelling, as you type the document. SUPERWRITER - Fine Word Processor with SpellChecker and Dictionary. Works with SUPERCALC2 to print full reports. SUPERCALC2 - Great spreadsheet software that has Data File Format Converter included for CP/M-86/80 formats. Works with SUPERWRITER to produce full reports. FANCY FONT - Excellent NLQ Printer Software in many Type styles and almost any ASCII file format. A very large library of Fonts are available, in sizes from 4-72 Point. Very well documented, Bit-Maped and S L O W !! TWIST & SHOUT - Sideways and Banner printing Utility for Dot- Matrix Printers. Few Fonts compared with Print Shop. TURBO-PASCAL - A MUST for any CP/M+ system. Compiler, editor and other utilities. Makes the Public Domain T-Pascal software usable. C/80 3.1 & MATHPAK - C Compiler and Utilities for C language programming. Well documented and recommended. GAMES - We tried ZORK II, Adventure 80, SNAKE, ELIZA and some of the other CP/M text games - with some limited interest. Not as exciting as the C=64/128 Arcade games, to say the least. COMPUTER CHEF - The main software of a set of four recipe disks and meal planners. As an amature chef I liked it - particularly the Chocolate Bytes Library. Auto-sizes recipes to number of guests. ZCPR3.LBR - Im still in the process of evaluating this MASSIVE set of Files (seven disks full) to replace the CP/M CCP and E X P A N D ! the limited capability of the Operating System - DRAMATICALLY! It was written for CP/M 2.2, and will take a great deal of time to install. I will report on this seperately, later. I HIGHLY recommend that CBM take a long and serious look at this outstanding option. WRAP-UP OF THIS REPORT - TO CBM: We have taken the process of Beta-Testing of the CP/M+ Upgrades to their logical conclusion consisting of the preceeding series of recommendations to CBM for needed correction of several problems. The software tests are by no means completed - but will continue and be published as appropriate for unique software available as well as future CBM issues. Our recommendation that CBM fully investigate ZCPR3 implementation is taken seriously by Exchelon in California - it has promise of making a MAGNIFICENT MONSTER out of this 'Mean Machine'. The origional CCP is a mess inherented from an archaic CP/M concept. With its replacement, ZCPR3, the capability of the C=128 will be greatly expanded to include; Shells, Aliases, I/O Redirection, Flow Control, Named Directories, Search Paths, Custom Menues, Multi-Command Lines, MANY Resident Commands .... and Much More! With it we will realize the UNIX like Operating System capability from this MicroComputer, that exceeds any other available on the market today in this price range. A "MUCH Higher Intelligence - at a MUCH Lower Price" - indeed! On the Hardware Front...we do highly recommend that an expansion package be made available, from CBM, to add two more banks of 64K Bytes of RAM/ROM in the "Empty Socket". The upgraded CP/M+ BIOS should accomodate this capability. Your promise of a GEM capability will thus be realized...and the full utility of the C=128 for us, the BUSINESS COMMUNITY of USERS, will be greatly enhanced. We have enjoyed performing this extensive Research and Evaluation exercise for CBM, and their loyal following of Commodore Computer Users. We have recognized the enormous potential of the C=128, better than most, - perhaps better than CBM at this time.