Several FP6000 documents are presented here in two groups:

Photo of FP6000#2
Photo of FP6000#2 courtesy Ingenium Canada

Software Memos     Hardware Memos     Page Images

{Formatting approximates that of the 1963/64 typewriter documents. Some minor changes in format have been made intentionally and accidentally. Page headers have been relocated to avoid breaking sections. Remarks in curly braces are my comments.}

The software group comprises:

Specifications for two programs used to convert a collection of semi-compiled (relocatable) programs into an executable program in storage. Together these two programs provide what might be called "linkedit" or "binding" in modern parlance.

Consolidator CNSL reads leader information to assign absolute addresses to all cues (names) in the program. Certain other calculations are performed.

General Purpose Loader GPL reads a consolidated leader from CNSL and the semi-compiled programs which CNSL read. The result is in store and ready for execution.

{One omission in the preceding documents is that the format of compiler output on magnetic tape is not described. Assuming a single tape drive for the compiler, the request slip and GPL copy would be preceded by semi-compiled programs. Format would have to incorporate some mechanism where EXECUTIVE could easily skip to the request slip. Drum output has a similar problem.}

Notes on the Order Code This is a supplement to the FP6000 Programming Manual

The hardware group comprises:

There is some confusion on FP6000 sales and manufacturing numbers. Machines 1 thru 5 were sold to external customers. Machines 7 and 8 were ordered after the FP6000 and other Ferranti computers were sold to ICT/ICL. Thus five machines were sold/leased to external customers; seven were built.

Machines were numbered based on sales which causes minor confusions
#1 Federal Reserve Bank of New York controlled a Pitney Bowes cheque sorter renumbered #6
#2 Defence Research Establishment in Dartmouth Nova Scotia (now in Canada Science and Technology Museum)
#3 Toronto Stock Exchange online quotations
#4 Saskatchewan Power Corp engineering and EDP now in Western Development Museum
#5 Ferranti Dalkeith EDP
#6 internal use for software development formerly #1
#7 ICL West Gorton hardware interface development
#8 ICL Putney software development (had FPU later sold to SPC)

{Notation in Notes on Order Code and FPU spec:
   x: is the two registers x and x+1
   x* is the register x+1
   n: is the two storage words n, n+1}

Specification of Floating Point Arithmetic UnitOnly one floating point unit was built. It was originally attached to FP6000#8 at ICL's Putney Bridge computer centre. In 1968 it was sold to SPC and attached to #4. The design was a single accumulator with 38 bit mantissa and 9 bit exponent. Typical add time was three storage cycles (6µs for fast storage) plus 8µs to execute addition. Execution of the arithmetic operation was independent of the processor (like Intel 8087).

{FP modified the Fortran arithmetic package for SPC so that add/subtract etc subroutines used the FPU. SPC wanted more performance so I altered the Algol 60 compiler to emit floating instructions rather than call %FAP. The overlap of FPU with main computer gave limited benefit as a code fragment with lots of floating arithmetic had limited benefits in a statement such as: x := a+b; Assuming the "store result in X" instruction is index-modified, phase 1 will require 4µs. This is overlapped with execution of the addition in the FPU.}

{Some information in these hardware specifications assume general knowledge of Attachment of Peripheral Equipment as described in Marcotty, Longstaff & Williams.}

Specification for FP6000 Card Reader Control describes the card reader interface seen by EXECUTIVE. Translation tables for conversion between BCD card codes and FP6000 internal code are included with the document.

Specification of FP6000 Drum ControlFP6000 used a drum intended for the USAF BUIC project. The specification describes a controller which could be expanded to much larger environment with multiple computers accessing multiple drums. The drum at SPC held 153,600 24-bit words (660.8 kilobytes). Transfer rate was one 24 bit word per 180 usec (133 kbits / sec).

Specification of FP6000 Magnetic Tape Channel and Magnetic Tape Unit Control. Hierarchy of unit and channel in the FP6000 was unusual. EXECUTIVE addressed a tape unit which then attempted to select a channel to execute the command. A command could be rejected with an "all channels busy" signal.

{FP6000#4 at Saskatchewan Power had two tape channels serving five tape drives. Automatic channel selection worked fine until the introduction of a scheme to run tape diagnostics as a normal mode program. There was no way to bind the channel being serviced to a program. The practical solution was to avoid other tape using programs and manually busy-out the idle tape channel with a jumper wire.}

description of Executive mode vs normal mode The first of these two pages describes the difference in execution of certain instruction in Executive rather than normal mode. The second page summarises executive Special Register bit assignments for a list of peripherals. The devices mentioned are P.T. READER, P.T. PUNCH, M.I.C.R., PRINTER, SORTER, TYPEWRITER INPUT, TYPEWRITER OUTPUT. {I assume this page was prepared for FP6000#1 at FRBNY as no other machine had MICR and Sorter peripherals.}

FP6000 PROJECT MEMORANDUM # 10 describes the interface between the computer and a peripheral controller.

{My copy of PMM 10 has sections 1 & 2 but is missing 3,4 and 5.}

FP6000 PROJECT MEMORANDUM # 28 gives the address assignments for peripherals (SR#64 bit, and 170/171 addresses for control word and special register). The devices represent a union of peripherals found on machines #4 #5 and #6.

Scanned images of document pages are provided here.
They are not of interest to the casual reader. Format is a .zip file of JPG images (400dpi). Two of the files are rather large).

Card Reader Ctl 7.9E6 bytes
CNSL 5.5E6 bytes
Drum Control
Executive Misc
Floating Point Unit
General Purpose Loader
Magnetic Tape Control
PMM10 & PMM28
Notes on the Order Code