Burroughs MCP: Advanced CANDE

In the last post we looked at using the CANDE command shell for basic program editing and execution; this time we'll go into some more advanced features.

Security

By default, files are not visible to other time-sharing users on CANDE. With the UNLOCK command you can make them visible and read-only to others; PUBLIC makes them read/write. LOCK returns files to their default state. You can see the protection on files with LIST FILES.

UNLOCK HELLO
#
LIST FILES
09/26/26 RUPERT         02:27 PM
NAME    TYPE     RECS SEGS   CREATED   ACCESSED  W/R  W/B  S-F LOCKD BY
HELLO   BASIC       4   10  09/23/25 * 09/26/25   10  300    7  UNLOCKD
HELLO   OBJ(B)     13   13  09/23/25 * 09/26/25   30   30    7  UNLOCKD
       2  FILES         23  SEGMENTS      17  RECORDS

Other users can access them by adding a / then the user name, eg RUN HELLO/RUPERT.

It's also possible to apply more granular permissions with a GUARD file. You run the interactive GUARD command to create a list of names and permissions, then apply via LOCK WITH. For example, to grant read only access to a staff group containing FRED and MARY:

GUARD
 RUNNING
        

NEW OR OLD LOCK FILE??NEW
LOCK FILE NAME??STAFF
READ ONLY NAMES??FRED,MARY
READ/WRITE NAMES??
ADD, DELETE, LIST, SAVE, OR QUIT?
?LIST
(R) FRED
(R) MARY
ADD, DELETE, LIST, SAVE, OR QUIT?
?SAVE
LOCK FILE SAVED.
ADD, DELETE, LIST, SAVE, OR QUIT?
?QUIT
THANK YOU.


 END GUARD .0 SEC.

LOCK HELLO WITH STAFF
#

Note that this security model only applies to CANDE. Batch jobs can access any file on the system.

Scheduling

You can run a sequence of commands - like a Unix shell script - using the SCHEDULE facility. First you need to create a DATA file containing the commands. DATA files do not have line numbers and their contents can be entered by starting a line with ?DATA and terminating with ?END.

CREATE HRUN DATA
FILE:HRUN - TYPE:DATA  -- CREATED
?DATA
 OK
LOAD HELLO
LIST
RUN
?END

You then issue the SCHEDULE command, giving the file to send output to as the second parameter. The AFTER time parameter is optional, without it the job should be scheduled as soon as possible.

SCHEDULE HRUN TO HOUT AFTER 1530

You can then use STATUS with the output file name to see its status, or STOP to cancel it.

STATUS HOUT
SCHEDULED

However, in practice I have found that these jobs never get executed - they stay in state SCHEDULED forever. Let me know if you find a way to get this working.

Redirection

This is a way to make a program send input/output to a different place without changing the source code. Say you have this simple Algol program:

FILE:P42    -10/02/25  6:41 PM.

100  BEGIN
110  FILE OUT TYPEWRITER 19 (1, 10);
120  INTEGER J;
130  J := 42;
140  WRITE(TYPEWRITER, /, J);
150  END.

which if run prints 42 to the user's terminal

RUN
 RUNNING
        
42,

 END P42 .0 SEC.

In the code, the FILE statement defines an output file called TYPEWRITER to attach to unit 19, which is the user's terminal. (We'll go into I/O on Algol in more detail in a later post).

Using the CANDE EQUATE verb you can redirect this to a file or another device. The file must already exist before running. So if you wanted to send output to MYOUT:

CREATE MYOUT
SAVE
LOAD P42
EQUATE TYPEWRITER=MYOUT
RUN
 RUNNING

 END P42 .0 SEC.

LIST MYOUT 

FILE:MYOUT  -10/02/25  6:37 PM.

 42,

 END QUIKLST .0 SEC.

Note that the EQUATE only lasts until the next RUN command, but you can stack up more than one EQUATE before running.

Chat

There's a way to send single line messages to other users or the operator via the TO command. For example, if It was logged in as GUEST and wanted to send a message to RUPERT:

TO RUPERT HELLO

and if he was logged in he would see:

 ** FROM GUEST   (03)     HELLO

With the first parameter set to SPO it gets sent to the operator's console.

TO SPO HELP I LOST MY TAPE

and they would see:

R ** FROM GUEST(03) HELP I LOST MY TAPE

Extensions to CANDE

It's not possible for an end user to add new verbs to CANDE, nor can they use other compilers beyond those already defined. However, all Burroughs sites would receive the source code for CANDE so it would be possible for the system programmers to add these. For example, Georgia Tech added a CALL command to execute programs like GPSS or APL.

Command summary

Finally here's a list of all commands on CANDE.

In the table, f is a file name; if not given, it assumes the work file. Note that if you have say a file FOO which you load into work and then change, COMPILE will compile that working file, but COMPILE FOO will compile the old version on disk.

Several commands have synonyms not listed here: for example DO does the same as EXECUTE

APPEND Add a file to the current file
BYE Log off
CC Set line length, SHORT=72, LONG=unlimited
CHANGE PASSWORD Change user's password
CHANGE f TO fn Rename file to f2
CHANGE f TYPE TO t Change type of file f to t
CHARGE Enter account to charge time to
COMPILE f Compile file
COPY f Make a copy of f to file or device
CREATE f t Create a new file
DELETE Delete all or parts of the work file
DISPLAY Like list, but use 8 chars for line number
EQUATE Reassign references to I/O devices
EXECUTE f Execute a file
FILES List files in directory, short form
FIND f Find text in file
FIX Edit the program
GUARD Allow access to files
HELLO Log in again without disconnecting line
LIST List program lines
LIST FILES List files in directory, long form
LOAD Load a program into the work area
LOCK Restore file security to private
MERGE f Merge a file into the work file
MONITOR f Record an audit log of changes to f
PRINT Like LIST, but suppresses the header
PUBLIC Make a file read/write by all
PUNCH Punch to terminal paper tape
REMOVE Remove a file from disk
RENAME f Rename work file to f
RESEQ Renumber sequence numbers
RESET Clear an option from SET or MONITOR
RUN Compile (if needed) and execute
SAVE Save work file to disk
SCHEDULE Run a command in batch
SEQ Set up line numbers for entry
SET Set options for verbosity and messages
STATUS Show status of scheduled jobs
STOP Stop a scheduled job
TAPE Read a file from terminal paper tape
TIME Show stats on current session
TO Send a message to a user / the operator
TYPE Change a file's type
UNLOCK Allow read access to a file
WHATS Describes a file

More information

On bitsavers, the Time-sharing System User's Guide is the best first reference; note this is from a different version of MCP so some of the commands may differ. The Georgia Tech B5700 Time-sharing System Manual is a more complete reference, giving examples of each command, but note this also contains extensions added by Georgia Tech not available on the base Burroughs system.

Also of interest is The Complete CANDE Primer in the Charles Babbage Institute Burroughs collection. However this is from 1980 so for a much enhanced version of CANDE compared to what we have today.

Questions, corrections, comments

I welcome any questions or comments, and also especially any corrections if I have got something wrong. Please email me at rupert@timereshared.com and I will add it here and update the main text.


Burroughs MCP: Using CANDE

CANDE, (Command And Edit) is the user facing part of time-sharing on Burroughs MCP, similar to a shell.

Logging on

On retro-b5500. halt/load the system, and enable time-sharing by entering CE on the operator console. navigate to the terminal (DCA) window and click connect.

On simh, start the system - time-sharing is already enabled if you used the quick-start - then use telnet to connect to port 5500 on localhost. Then give your user name and password.

B5500 TIME SHARING - 01/00, STATION 02
ENTER USER CODE, PLEASE-RUPERT
AND YOUR PASSWORD
RUPERT@@
09/23/25 12:11 PM.
GOOD AFTERNOON, RUPERT LANE     YOU HAVE STATION 02

#

General usage

Once logged in, you can either edit a work file or issue commands, in an interface similar to Dartmouth DTSS.

Input lines should be less than 72 characters long. You can use backspace to correct mistakes and Enter to terminate a line - this is a convenience of the emulator; on the real system you'd use ' to backspace and ← to finish a line.

A line starting with " is treated as a comment, ie just printed on the teletype but not saved or processed.

More than one command can be given on a single line by separating them with ;. Commands can usually be abbreviated, eg LIST can by typed as L.

If you get an error message, typing ? will often provide more details.

If you get stuck, eg a program is in an infinite loop, you can interrupt it back to the command level by pressing break, which is Control-E on simh or Control-B on retro-b6600.

Selecting a work file

CANDE has the concept of a work file which is a temporary copy of a program on disk. You can make a work file by creating a new file or loading from an existing disk file.

File names in CANDE are 6 characters long and must start with a letter.

To create a new work file, use CREATE name type where name is the file name and type is a programming language: BASIC, ALGOL, FORTRAN, or COBOL. You can also set type to be SEQ (for general line numbered files) or DATA (for un-numbered line files).

CREATE HELLO BASIC
FILE:HELLO - TYPE:BASIC  -- CREATED

To load an existing file, use LOAD

LOAD HELLO
FILE:HELLO - TYPE:BASIC  -- LOADING
4 RECORDS LOADED.

Editing a program

Typing a line starting with a number adds to a program or replaces the line if it already exists. Typing a line number on its own will delete that line. Lines can be entered in any order.

You can use the SEQ command (or just the abbreviation +) to automatically create a line number for each line you enter. Terminate it by pressing Enter on a blank new line.

SEQ
100FOR I = 1 TO 5
200PRINT "HELLO, WORLD"
300NEXT I
400END
500
#

As well as retyping a line, there is also the FIX command which can delete or change part of a line.

FIX's syntax is

    FIX line-number delimiter old delimiter [new]

So for the line

    200 PRINT "HELLO, WORLD"

you can change this to "HELLO, EARTH" with

    FIX 200 /WORLD/EARTH

and delete HELLO with

    FIX 200 /HELLO, /

The delimiter used above was /, but this could be any character. Note that only two delimiters are used, compared to say Unix sed where you'd do s/world/earth/.

Note also that FIX only makes changes the next time the file is used (eg on LIST or RUN) - so any errors in your FIX syntax will be presented then, not immediately.

FIX can also be abbreviated to just *.

Compiling and running

COMPILE will compile your work file, printing out any errors if found. EXECUTE will run the compiled file. Typing RUN will compile and execute, skipping the compile if the program has not changed.

RUN
 WAIT.

 COMPILING.


 END COMPILE .0 SEC.

 RUNNING
        

HELLO, EARTH
HELLO, EARTH
HELLO, EARTH
HELLO, EARTH
HELLO, EARTH


 END HELLO .0 SEC.

Listing

You can use LIST to list out your program; rather than listing the whole file you can give a single line number or a range as parameters, eg LIST 200-300. PRINT is like LIST but will omit the banner.

PRINT 200-300
200 PRINT "HELLO, EARTH"
300 NEXT I

File management

You can see what files you have in your disk area with FILE or for slightly more detail, LIST FILES.

FILES
 *HELLO  HELLO
#
LIST FILES
09/23/25 RUPERT         12:57 PM
NAME    TYPE     RECS SEGS   CREATED   ACCESSED  W/R  W/B  S-F LOCKD BY
HELLO   BASIC       4   10  09/23/25 * 09/23/25   10  300    7
HELLO   OBJ(B)     13   13  09/23/25 * 09/23/25   30   30    7
       2  FILES         23  SEGMENTS      17  RECORDS


 END LFILES .0 SEC.

You can manipulate files with COPY, RENAME and REMOVE, as well as APPEND and MERGE to combine several files.

Logging off

Type BYE to end your session. If you have modified your work file, you will get an error; you can either type SAVE to save it or DELETE to discard.

When you log off you will see some statistics

 ON FOR  3 MIN, 45.2 SEC.
 C&E USE .0 SEC.
 EXECUTE .0 SEC.
 IO TIME .0 SEC.
 OFF AT   6:50 PM.
 GOODBYE GUEST
07/14/25

Some funny responses to commands

If you enter ? to find out details of an error before you have submitted any commands at all, you get:

?
I AM THE GENIE OF THE DISK--WHAT IS YOUR COMMAND?

If you halt/load the system while still connected to the terminal you will see the following when the system comes back up:

P 
 L 
  o 
   P 
RESTARTING . . PLEASE WAIT

In the next post I will go into more details on some advanced CANDE commands.

More information

On bitsavers, the Time-sharing System User's Guide is the best first reference; note this is from a different version of MCP so some of the commands may vary. The Georgia Tech B5700 Time-sharing System Manual is a more complete reference, giving examples of each command, but note this also contains extensions added by Georgia Tech not available on the base Burroughs system.

Also of interest is The Complete CANDE Primer in the Charles Babbage Institute Burroughs collection. However this is from 1980 so for a much enhanced version of CANDE compared to what we have today.

Questions, corrections, comments

I welcome any questions or comments, and also especially any corrections if I have got something wrong. Please email me at rupert@timereshared.com and I will add it here and update the main text.


Burroughs MCP Architecture

The Burroughs B5500 machine, along with the Master Control Program (MCP) operating system, had some novel ideas for a system from the early 1960s. One of these was that the hardware was developed side-by-side with the software - compare this to the IBM 709x where the manufacturer did not provide software until well after the hardware was released. But at Burroughs:

Hardware engineers were educated in the intricacies of software architecture and software designers learned the subtleties of hardware design. These people were then merged into a single design team.

Source: Time-sharing System User's Guide

In this article I'll take a brief look at how the system works, focusing on some of its innovative features.

Hardware

The B5500 was a 48 bit machines with 6 bit characters and could have up to 32 kwords of core memory. It could contain one or two CPUs, with the second CPU only doing compute rather than I/O. The B5000 only supported drum storage but the B5500 brought a fast head-per-track disk. Each stored 48 or 96 Mbytes and in theory up to 20 could be attached.

A dedicated teletype console, called the SPO (supervisory printer/keyboard), allowed an operator to interact with the system.

A data controller allowed up to 15 terminals - initially teletypes - to be attached for use by time-sharing or other programs.

There was also the usual peripherals - magnetic tape drives. card punch, card reader and line printer.

/images/mcp/b5500-system-diagram.png B5000 System Diagram. Note this is for the B5000 so shows a drum instead of the disk used on the B5500. Source: The Descriptor at bitsavers.

MCP versions

As noted in the introductory, the original drum-based version of MCP was modified to use disks and called the Disk File MCP (DFMCP); another version used the data concentrator for terminal access and was called the DCMCP; finally there was the time-sharing variant of MCP was called the TSMCP.

The TSMCP allowed both batch and time-sharing jobs to be run simultaneously. The main way that time-sharing users communicate with the system is a job called CANDE, standing for Command and Edit. This managed communication with each data line, allowing users to log in, edit programs and run jobs.

Memory was divided into two sections ('the fence'); the MCP and CANDE run on one side, user programs run on the other. The TSMCP would schedule time-sharing jobs so they would receive regular short time-slices, while batch jobs would queue up until they had enough memory to run for longer time-slices.

Compiler Oriented Hardware

The system had no assembler - it was programmed entirely in high level languages. Initially Algol and COBOL was supported, with BASIC and Fortran being added later. Compilers would generate machine code directly.

This lack of an assembler even extended to system software, with the entire operating system being written in an extended form or Algol called ESPOL that could do low level operations not defined in pure Algol. For example, you could access any position in memory via an array.

This also meant that the machine was never used 'bare' - programs would not run directly on the hardware, they would always be run under the MCP.

Stack and segmentation

Machine operations were done with a push down stack, so to add two numbers you would push the numbers onto the stack and then execute an add, leaving the result on the top of the stack. This made writing a compiler much easier as expressions could be translated into stack operations without having to deal with temporary memory locations. This also enabled easy relocation of programs and support for recursion.

Larger areas of memory, such as programs or arrays, were arranged into segments that could be swapped in and out of memory, allowing programs or data sets larger than core to be handled. Each compiler organised how it broke down programs into segments, which did mean there was no facility to link together code from multiple languages.

Segments were tagged as either data or code, so it was impossible for user programs to modify its own code.

Dynamic hardware recognition

You may have noticed while installing the system there was no need for a system generation phase where you tell the OS what hardware it can access. Instead, the MCP senses what hardware is connected, and can cope with peripherals, memory and even the second CPU being temporarily offline without restarting.

File system

Files had a two part name separated by a /, such as HELLO/GUEST. The second part indicated the grouping of a set of files, in this case the time-sharing user GUEST. This is not a directory, however: you could call a file HELLO/XYZ without having to create XYZ first.

Magnetic tape files are device independent: if a job wants to read from a certain tape file, it just needs to call for the tape file name. MCP senses what tapes are mounted where and will direct the read to the correct device.

Further information

See the documents on bitsavers, especially the Time-sharing System User's Guide and The Descriptor.

Questions, corrections, comments

I welcome any questions or comments, and also especially any corrections if I have got something wrong. Please email me at rupert@timereshared.com and I will add it here and update the main text.


A quick tour of Burroughs MCP using simh

In this post we will turn our attention to Richard Cornwell's B5500 emulator running on simh. Along with the emulator, Richard has created a package of tapes, cards and config files to run MCP on it, and even rebuild the OS from source. Unlike retro-b5500 this is a command line program; by using the simh core it brings in its flexibility and automation capabilities. It also supports more than one time-sharing terminal via telnet.

You can follow the instructions on Richard's site to set this up - start on this page and note the PDF link which gives a great summary.

I have also created a quick start that allows you to build and run the time-sharing system with two commands.

Before you start

Install required software

You will need a Unix-like environment capable of running a shell, git, make, a C compiler, wget and unzip. You will also need the telnet command line program or a GUI telnet client.

Clone the quick start repo

git clone https://github.com/timereshared/burroughs-mcp-simh-quickstart

Get the operating system tape file

The MCP operating system is free for non-commercial use under a license from Unisys, but cannot be redistributed here. You will need to get it from Paul Kimpel's site as follows:

If you omit this step, the build command will refuse to continue.

Define time-sharing users

Edit the file tss-setup.card. Copy the 4 lines starting with $USER "GUEST" and ending with NO CHARGE and insert just before $END. Edit these copied lines to define your own user account. For example, I might do:

$USER "RUPERT"
PASSWORD "SECRET"
NAME "RUPERT LANE"
NO CHARGE

You can add as many users as you want, and remove the GUEST user if you like.

If you omit this step, the build command will only create the GUEST user with password GUEST.

Build the system

Type ./build.sh. This will download simh and the mcp-kit under packages/, build the simh b5500 binary and copy files. The file structure on your PC will now look like

bin/ simh binary
disks/ virtual disks for MCP
tapes/ tape files for MCP
units/ printer and card images

It will then proceed to

  • cold boot the B5500 from a punched card image
  • set up the virtual disks and install MCP files
  • add extra software that has been collected.
  • set up time-sharing and create users

/images/mcp/simh-mcp-cold-start.png Installing MCP on simh. Source: Rupert Lane. License: CC0.

This will take around 5 minutes and will only need to be done once. If you ever need to rebuild the system, run build.sh again; it will not re-download the package files.

Start MCP

Type ./run.sh. After a few seconds the system will say it is ready for connection. Using a telnet client, connect to port 5500 (eg via telnet 0 5500.)

In the telnet session, type your username and password. Your screen will look something like this, with the window on top being the console and the one below the user session.

/images/mcp/simh-mcp-cande-login.png Login to CANDE on MCP under simh. Source: Rupert Lane. License: CC0.

Create and run a hello world program

Here's an example of a complete session.

$ telnet 0 5500
Trying 0.0.0.0...
Connected to 0.
Escape character is '^]'.


Connected to the B5500 simulator DTC device, line 0


B5500 TIME SHARING - 01/00, STATION 02
ENTER USER CODE, PLEASE-GUEST
AND YOUR PASSWORD
GUEST@@@
09/02/25  6:04 PM.
GOOD EVENING, GUEST USER      YOU HAVE STATION 02

#
CREATE HELLO BASIC
FILE:HELLO - TYPE:BASIC  -- CREATED
100 FOR I = 1 TO 5
200 PRINT "HELLO, WORLD"
300 NEXT I
400 END
RUN
 WAIT.

 COMPILING.


 END COMPILE .0 SEC.

 RUNNING
        

HELLO, WORLD
HELLO, WORLD
HELLO, WORLD
HELLO, WORLD
HELLO, WORLD


 END HELLO .0 SEC.

LIST


FILE:HELLO - TYPE:BASIC  --09/02/25  6:08 PM.

100  FOR I = 1 TO 5
200  PRINT "HELLO, WORLD"
300  NEXT I
400  END


 END QUIKLST .0 SEC.

SAVE
FILE:HELLO - TYPE:BASIC  -- SAVED.

BYE
 ON FOR  4 MIN, 00.4 SEC.
 C&E USE .0 SEC.
 EXECUTE .0 SEC.
 IO TIME 2.9 SEC.
 OFF AT   6:08 PM.
 GOODBYE GUEST
09/02/25

After we login, we create a new BASIC file called HELLO, and type in the program using line numbers. RUN will compile and execute it, LIST will display a listing.

Finishing your session

Type BYE to log out. If it complains about unsaved work, you can either type SAVE to keep it on disk or DELETE to discard your work.

There is no shutdown process for the operating system itself. Go to the emulator window and type Control-E to interrupt it, then q to quit.

You can restart MCP with ./run.sh as needed.

Questions, corrections, comments

I welcome any questions or comments, and also especially any corrections if I have got something wrong. Please email me at rupert@timereshared.com and I will add it here and update the main text.


A quick tour of Burroughs MCP using retro-b5500

The first Burroughs B5500 emulator we will look at is retro-b5500 by Nigel Williams and Paul Kimpel. We'll get the the system set up, install the operating system, enable time-sharing and enter a simple BASIC program interactively.

Using retro-b5500

As mentioned in the introduction, retro-b5500 runs in any modern desktop web browser. It aims to emulate each component of the system with a graphical user interface so you get a taste of what it would be like to operate the machine.

The project includes some great information on its wiki, starting here, describing how the system works and what you need to do step by step. Rather than repeat this here, I will give a summary of the steps involved along with some screenshots. For a first install I recommend you use the server code hosted on the web and the default configuration.

Getting the Burroughs software

You will need a copy of the virtual install tapes for MCP. Unisys, the current owners of the OS, have provided a license to use these non-commercially. Go to Burroughs B5500 Mark XIII System Software, read and accept the license, download the files, unzip and store them somewhere.

You will also need to download the cold start card image.

Power on and set up media

Go to the main page and click Start & Power On. Accept the default configuration and the emulator front panel will pop up along with windows for each peripheral. Note that you should keep the main page visible at all times otherwise the browser may think it's inactive and starve resources from the emulator. I have found it OK to arrange windows I don't use often, such as the card punch, into tabs instead of windows.

Find the tape drive window and load the uncompressed system tape you downloaded earlier, then click the REMOTE button.

Find the card reader and load the cold start card you downloaded earlier. Click the START button.

On the operator console, click CARD LOAD SELECT.

On the SPO (operator console), ensure REMOTE is selected.

Arrange the windows so you can see all the above. Your screen should now look something like this:

/images/mcp/retro-b5500-ready-for-install.png retro-b5500 just before starting the install. Source: Rupert Lane. License: CC0.

Install the operating system

Follow the wiki instructions on cold starting the system. This will involve:

  • Booting the system from the card deck.
  • The system will start and read from the tape drive, and then initialise the disk. This is all automatic and you should see console messages, ending with MCP FILE LOADED.
  • It will then reboot and load from disk from the first time.
  • You will be prompted to enter the date and time on the SPO.
  • More software will be automatically installed to the disk.
  • You will then set the intrinsics (system library).

This should all take less than ten minutes. After this is done, you can shut the system down by pressing the HALT button - there's no special shutdown procedure.

You can restart by pressing LOAD. The system will ask for the date and time again and look something like this:

/images/mcp/retro-b5500-first-boot.png retro-b5500 on first boot. Source: Rupert Lane. License: CC0.

The guide has one more section on Loading Additional System Files which you can follow if you want, but we will basically load the entire tape as part of the next section so this is not necessary.

Install time-sharing

At this point the system can accept and run batch jobs. To add time-sharing (CANDE) we need to install more components. Switch over to WebUI Setting Up TSMCP and CANDE for this.

You will need to create two new card files to control terminal line set up and specify user accounts as part of this. Load each of these into the card reader and press START, and the system will read and create these files on disk.

You then tell the system to load all files from tape with the CC command specified in the above wiki. While this is happening, the screen will look like this:

/images/mcp/retro-b5500-installing-cande.png Installing CANDE on retro-b5500. Source: Rupert Lane. License: CC0.

Finally, tell the system about the new install with the CM and CI commands, and halt-load.

Using time-sharing

When you next start up, enter date and time as before, and enter one more operator command CE to begin time-sharing. (This will need to be done each time you start the system.)

Now find the Datacom window and press CONNECT. You may need to hit enter to get a login prompt. Type the user name and password you specified earlier - when the screen prompts for the password it will type some characters that on a real typewriter would overwrite the password, but on a screen this will not, and you do need to wait for the overprint to stop before entering the password.

Once you are logged in, try creating a simple program and running it:

CREATE HELLO BASIC
10 FOR I = 1 TO 5
20 PRINT "HELLO, WORLD"
30 NEXT I
40 END
RUN

When you type RUN it will compile and execute the program. The screen will look like this:

/images/mcp/retro-b5500-using-timesharing.png

Note the tasks you are doing also show up in the SPO.

To finish, type SAVE to store the working copy of the program to disk, and type BYE to log out. You can then click HALT on the main console.

Questions, corrections, comments

I welcome any questions or comments, and also especially any corrections if I have got something wrong. Please email me at rupert@timereshared.com and I will add it here and update the main text.


← Previous  Next →