[Back ]
Panos is the operating system for the 32016 2nd processor, Cambridge Co-Processor, ABC200 & 210 and the Acorn Cambridge Workstation. It was launched with the 32016 2nd processor in 1984 and appeared with the Acorn Cambridge Workstation on Acorn price lists until 1988. The Acorn Scientific division supported and developed Panos.
I do not know when Acorn withdrew support.
There is an entertaining story in the Acorn newsgroups that Panos was named after the owner of a Greek restaurant in Cambridge where Acorn engineers often ate. I don't know if this is an urban myth or not.
The descriptions of Pandora and Panos, below, are based on the Acorn Scientific Panos Guide to Operation .
Pandora is a ROM based program which is stored in part of the 32016 co-processor's 16K ROM (2 x 8K ROMs).
Pandora:
The following programs run directly under Pandora:
As far as I can tell there was only one version of Pandora because I have only seen 1 set of ROMs (part numbers 0201-263-02 & 1201-264-02).
Panos is the disc based Operating System for the 32016 Co-processor. Panos provides facilities for writing, loading and exsecuting programs. It also provides ways of creating command files so that a range of activities can be carried out automatically (e.g. compiling, linking and running large batches of programs). Access to the hardware for both programmers and end users is supported and it has been designed to integrate with the BBC Microcomputer hardware and software. The minimum hardware required to run Panos is dual 80 track double sided single density floppy disc drives, giving a total of 800K. It also needs to be loaded from storage which can be a floppy disc, Winchester hard disc on an Econet file server. Panos is supplied on double sided single density 80 track floppy discs and must be installed before it can be run.
The Panos design objectives were:
Input/output, and hence dialogue with the user is based on the notion of streams. There are four logical streams associated with Panos:
Programs do not have to use logical streams and can use direct I/O to or from physical streams.
Panos supports the execution of both user and system programs. More specifically it provides a runtime environment for programs, in particular for programs written in high-level languages, and including those written in mixed languages. Panos supports a procedural model of program execution which means that programs can all other programs and resume execution on return. Communications between two programs running sequentially or procedurally is achieved through the use of global variables.
Panos presents its own device and filing system models to the user. These are implemented by lower level BBC Microcomputer mechanisms. For example Panos files are simply stored and maintained by a filing system such as the DFS (for floppy disc), ADFS (for Winchester or MFM floppy) or NFS (for Econet file server). The user need not be aware of the lower level implementation. Panos provides higher level properties than the raw filing system, e.g. timestamping of files, file name extensions and filing system names forming part of a file specification. Within Panos devices and filing systems are treated uniformly. Input output is based upon the concept of streams, an I/O object may be a device or a file, and is identified by a string (text name).
The Panos filing system model presents a logical filing system to the user, which is partly implemented by Panos and partly by mapping onto more primitive BBC Microcomputer i.e. physical filing systems. In principle the user only needs to know about the Panos model. Wherever possible Panos presents a uniform view regardless of the physical filing system. but limitations of the physical filing systems may impose restrictions, The Panos filing system model has the following components:
Standard Acorn file types and extensions:
Extension | Meaning |
-abs | absolute binary file (for execution under Pandora) |
-aof | Object file in Acorn Object Format |
-asm | Assembler source file |
-bbc | BBC Microcomputer host code |
-c | C source file |
-cmd | Command file |
-dat | Data file |
-f77 | Fortran 77 source file |
-h | Header file for use with C |
-lib | Object file in AOF used as a library |
-lis | Listing file |
-lsp | Lisp source file |
-map | Map files (FORTRAN 77 and Linker) |
-pas | Pascal source files |
-rif | Relocatable Image produced by Panos Linker |
-src | Source text (program in unspecified language) |
-tmp | Temporary file |
-txt | Text file |
Panos provides facilities for dealing with both synchronous and asynchronosus events, the former are sometimes called conditions or exceptions. Exceptions are synchronous to the flow of program execution and may be "hard" or "soft". Asynchronous events are generated by interrupts in the I/O processor.
The way in which Panos behaves is determined to an extent by the settings in the global variables (sometimes called global strings). A global variable is a name and a string value. A variable is declared by being set. There are a number of variables defined by the system, most of which are initialised by Panos itself or whenever Panos is entered by executing the !Panos command file.
When Panos is entered, a system program (the command line interpreter) is given control. The Panos command line interpreter interacts with the user and has the function of accepting commands and executing programs or interpreting command files. On system startup the interpreter is set running, it outputs a prompt and waits for a command to be entered. The command interpreter decodes the argument and expands wild symbols. It is the central component of the user interface model.
A command consists of a CommandName followed by an argument string, where a CommandName is one of:
The action of the command interpreter can be summarised as:
The built-in commands are:
Built-in command | Meaning |
.<space> | Comment, rest of line after <space> ignored |
.Delete <variable name> | Delete global string ,variable name> |
.Help | Provide help on built-in commands |
.key | Define a keystring in a command file |
.NewCommand | Change path used to determine the future set of known commands |
.Obey <command file name> | Execute Command file |
.pwd | Print currrent working directory |
.Quit | Leave Panos |
.Run <filename> | Run the RIF in <filename> |
.Set <variable name> | Set global string <variable name> |
.swd <path> | Set current working directory |
.wait | Causes the command interpreter to wait until RETURN is pressed |
Panos relies on utilities to perform most tasks, which means that Panos can be enhanced simply by writing new utilties. The utilities provided as standard with the system are:
Utiltiy | Description |
Access | Change the access permissions of one or more files |
Catalogue | Obtain information about files |
Configure | Set up configuration options |
Copy | Copy one or more files, directories or devices to a destination file or directory |
Create | Create new directories (or files) |
Delete | Delete one or more files or directories |
Echo | Print arguement on screen |
Logon | Log on to a network file server (equivalent of *I AM command) |
Rename | Rename one or more files or directories |
Set | Set the value of various Panos attributes (e.g. date and time) |
Show | Show the values of various Panos attributes |
Star | Issue BBC style * commands |
The editor is used in the creation and modification of source programs, it may also be used for general applications, for example, preparing manuals, data or command files. It can edit any file text or binary. The editor is screen-orientated, i.e. text is displayed a screen at a time on the screen and may be altered by moving the cursor around using the cursor keys and typing. The concept of windows is fundermental to the editor; several files can be edited simultaneously and material can easily be transferred between files which are viewed in their own separate windows.
The Command Line Interpreter can be accessed from the editor so that compilers, utilities and built-in commands can be used from within the editor.
The Acorn 32000 Linker is a utility program which runs under Panos and is used to combine compiled object (AOF) files with object libraries to produce an executable program image (RIF) file for execution under Panos.
The languages included with Panos are:
The Acorn Scientific Panos manuals are available in Documents.
The Panos installation discs are available from J.G.Harston's mdfs.net.
I think there were 3 Panos versions:
Date | Panos Version | Description |
Jan 1985 | 1.0 | Pre-release, for 32016 second processor(?) |
Nov 1985 | 1.1 | Release 10 |
?? | 1.4 | Release 12 |