CP-6 was modeled on Xerox's CP-V. The code was completely rewritten in a new high-level language,
PL-6, designed and built expressly for that purpose, rather than in assembly language as CP-V had been, because of increasing complexities of the new virtual addressing hardware (such as that in Honeywell's L66 and DPS 8 line). During the rewrite existing weaknesses were addressed and many new features added. Like CP-V, CP-6 had five access modes, which operated concurrently:
batch processing,
remote batch,
timesharing,
transaction processing, and
real-time processing. It included multiprogramming and operated on multiple CPUs. Also like CP-V, the design was an integrated file management system. Files were equally and compatibly available to programs executing in any mode. The files could be sorted in indexed, keyed, relative, or consecutive order. New in CP-6 was the use of communications and terminal interfaces through minicomputer (Honeywell Level 6)-based front-end processors, connected locally, remotely, or in combination through IMP (input manipulation processor). CP-6 included an integrated software development system which supported and included a set of language processors:
APL,
BASIC,
COBOL,
FORTRAN,
RPG, IDP, IDS/II, SORT/MERGE, PL-6, GMAP, and a text formatting program, TEXT. Commonly needed software packages (
Pascal,
SNOBOL,
LISP,
SPSS, BMDP, IMSL,
SPICEII, and SLAM) were developed by Carleton University. The operating system supported inter-system communication, job submission and file transfer between CP-6 systems and between CP-6 and CP-V and to and from IBM and other
HASP protocol systems. The system used communications and terminal interfaces through a
Honeywell Level 6 minicomputer-based
front-end processor. Asynchronous,
bisynchronous and
TCP/IP communications protocols were supported. The Honeywell hardware system for CP-6 consisted of a mainframe host processor (L66, DPS8, DPS8000, DPS90), to which connected disks, tapes, printers, and card equipment were connected. A high-speed
channel connected this host to a
Level 6 mini computer, which provided processing and connection for terminals, communications lines, and high-speed channel to remote computers, including LADC and customers for on-line support, new version download and problem fix patches. A
terminal emulator allowed use of
PCs as CP-6 terminals. In 1979 or 1980, LADC system engineer Dave Platt developed and incorporated into the CP-6 operating system a print output identification feature called Edgemark. Invoked via JCL (job control language) parameters, Edgemark printed the username of the user submitting the print job and the job number, scaled to the number of output pages, on the perforated edge of the fanfold paper used by line printers of the time. This allowed the user or system operator to easily locate the start and end pages of a given print job in a large stack of printer output simply by looking at the stack. Product additions in the mid eighties included adaptation for DPS8000 Bull mainframe computers. Honeywell has released the source for CP-6, in the form of program listings. ==Product support==