UsingTheFlexAndPaperTape - pkimpel/retro-205 GitHub Wiki
Using the Flexowriter and Paper Tape
Flexowriter and Typewriter Control Unit
The Flexowriter was a heavy-duty electric typewriter used by many early computer systems. It also had a built-in paper-tape reader and punch. The emulator models the typewriter and reader, but not the punch -- although see the discussion of the high-speed punch below.

There were two models of the Flexowriter, one used with the Datatron 203/204 and earlier systems that did not have a Cardatron, and one that was modified for use with the 205 and Cardatron. The difference between models was the character encoding used.
The emulator supports both models. The character encoding defaults to that for the Cardatron, but 204 encoding can be enabled on the Emulator Configuration Window page. The coding can also be toggled temporarily between Cardatron and 204 modes by clicking the black button below the Friden Flexowriter logo. Changes made using the button are not saved in the system configuration and will revert to the setting in the emulator configuration the next time the emulator is started. The button label always shows the mode that is currently active.
See the Burroughs 220 Pocket Card for the Cardatron encoding, which was the same for the 205 and 220. See the Datatron Programming and Coding Manual manual for the 204 encoding. Note that for 204 mode, character code 33 printed the apostrophe (') in lower case but the double quote (") in upper case.
Associated with the Flexowriter was a box of relay logic known as the Typewriter Control Unit (TCU). This unit could perform limited formatting of data printed by the 205. It could insert tabs or spaces between words as they were printed, insert a carriage return after a specified number of words on a line, double-space between groups of a specified number of lines, and optionally halt the computer after a specified number of groups were printed (e.g., to change the paper in the printer).
The emulator fully supports the TCU. It cannot be powered off, but it can be effectively disabled (and thus permit all formatting to be under program control) by setting the GROUPING | COUNTERS switch to the OFF-OFF (middle) position. See the Handbook of Operating Procedures for the Burroughs 205 manual for details.
A patch panel on the back of the TCU allowed some interesting routing of data both from the processor during on-line operations, and among the devices during off-line operations. See page 5-5 in the Operating Procedures manual above for details, but note that the emulator does not support any of the patch panel functions.
The Flexowriter window can be resized like any other window, and the "paper" area will resize with it. Lines that scroll off the visible portion of the paper area are retained in memory, and can be viewed by scrolling back the paper area. The maximum capacity of the paper area is 15,000 lines (about 250 pages -- 25 hours of printing). Exceeding this capacity will cause the oldest lines to be discarded.
You can save or print the contents of the paper area by double-clicking anywhere in the text of that area. A new, temporary window will open, the entire contents of the paper area will be copied to that new window, and the paper area in the Flexowriter will be cleared. From the temporary window, you can print or save the text using the normal facilities your browser provides for that purpose. When you are finished with it, simply close the temporary window.
Paper Tape Reader
The emulator models both the high-speed optical paper-tape reader and the reader on the Flexowriter as one device using this window. Both the OPTICAL READER and MECH. READER settings of the INPUT knob on the Control Console will read from data supplied to this window. The only difference between the two selections is the speed at which data is read. The optical reader works at 540 characters/second; the reader on the Flexowriter works at 10 characters/second.

Paper tape I/O on the 205 was very primitive -- it read raw words from the tape as strings of decimal digits. The tape had seven channels: four for the binary-coded decimal (BCD) value of the digit, one for a "clock" punch that identified rows where a valid digit occurred, one for a "finish" punch that identified the end of a word, and one for a "delete" punch that would invalidate the digit in that position and cause it to be skipped. This was considerably pre-ASCII -- there was no facility for reading alphanumeric data.
You prepare a "paper tape" for the emulator as an ordinary text file. Each line in the file represents one word to be read by the system. The new-line sequence between lines of text in the file is interpreted as a finish punch. If the last line in a file is not terminated with a new-line, the end of the file acts as a finish punch. A new-line may be:
- a carriage-return followed by line-feed (ASCII hex 0D0A, the Windows convention)
- a line-feed (ASCII hex 0A, the Unix/Linux convention)
- a carriage-return (ASCII hex 0D, the pre-OS X Macintosh convention).
Only the decimal digits 0-9 are significant within a line; all other characters are simply ignored. A 205 word consists of 11 digits (sign plus 10 numeric digits). These are read left-to-right, with the sign in the leftmost position. If fewer than 11 digits appear on a line, the digits will be stored in the word right-justified over zeros. If more than 11 digits appear on a line, only the rightmost 11 will be used.
To load a file representing a paper tape into the reader, click the Browse... or Choose File... button on the window's file picker control and select the desired file from your local file system. You can also select multiple files at one time. The content of all of those files will be concatenated in the reader, although the order in which they will appear depends on the browser and operating system. You can also use the file picker multiple times to load a sequence of files, one at a time, into the reader. Once the files are loaded, the data acts as if the tapes had been spliced, and looks to the system like one long tape.
Below the file picker control is a progress bar that shows the relative amount of data left to be read from the virtual input tape. To remove unread data from the reader, click this bar. An alert will pop up asking if you want to empty the reader. Click the OK or Cancel button as appropriate.
Below the progress bar is a text area that will scroll, showing the data as it is being read. Only the decimal digits from the file appear here; any non-decimal characters will not be shown. Each finish punch is shown as a space.
Paper-tape input is called for by executing a PTR (00) or DAD (10) instruction with the INPUT knob on the Control Console set to OPTICAL READER or MECH. READER. If a "tape" has been loaded into the reader, the system will begin reading it. If no tape is loaded, however, the system will pause and the reader window will pop up. Simply loading a file into the reader will cause the system to resume reading.
Whenever the system calls for data from either reader, an orange PAPER TAPE READER annunciator will appear in the lower-right of the Control Console. This is an artifact of the emulator and did not exist on a real 205, where you could hear the reader's motor start up. The annunciator is a visual analog to that audible clue.
High-Speed Paper-Tape Punch
The 205 had a paper tape punch that could output data at 60 characters per second. This was "high speed" relative only to the punch on the Flexowriter, which worked at 10 cps. The OUTPUT knob on the Control Console determined whether output went to this punch or the Flexowriter. Output to the punch on the Flexowriter was controlled locally on the Flexowriter as an alternative to printing on paper, which is why the emulator does not model the Flexowriter punch.

The emulator's high-speed punch works very similar to the "paper" area of the Flexowriter, except that data is output one word per line and the sign digit is output as a decimal digit rather than "+" or "-". Output from the punch can be saved and then used as input to the paper-tape reader.
To save or print the contents of the punch "tape" area, do the same as for the Flexowriter -- double-click anywhere in the text of that area and a new, temporary window will pop up. The text in the tape area will be moved to that temporary window, from which you can save or print the data. The punch has a capacity of 15,000 lines (words). When output exceeds this limit, the oldest lines will be discarded.
Decimal Keyboard
The Control Console had a small numeric keypad that sat on the console desk and was attached by a cable to the console's electronics. Since the Control Console did not have the ability to set individual toggles as the Supervisory Panel did, this keyboard was used to enter instructions and data into the system when operating the system from the Control Console.
The keyboard's abilities were somewhat limited, however. Digits entered on the keyboard shifted into the low end of the D register. An "F" (finish) key on the keyboard signaled the end of a word. This was sufficient to enter words into memory and key in single instructions for immediate execution.
Input from the keyboard was accomplished the same way as from paper tape -- by execution of a PTR (00) or DAD (10) instruction, but in this case with the INPUT knob on the Control Console in the KEYBOARD position.
Whenever the system calls for data from the keyboard, an orange KEYBOARD annunciator will appear in the lower-right of the Control Console. This is an artifact of the emulator and did not exist on a real 205. The annunciator simply indicates that the keyboard is active and ready for input.
The emulator will accept keystrokes from your workstation's keyboard when the 205 decimal keyboard is enabled. Digits may be entered either on the numeric keypad or the numeric row of the main keyboard. An Enter or "F" key on your workstation's keyboard will act as the "F" key on the decimal keyboard and terminate input. All other keystrokes are ignored.
Note that in order for the emulator to sense your keystrokes, the Control Console window must have the focus. This window is automatically given the focus whenever input is called for from the keyboard.
See the Handbook of Operating Procedures for the Burroughs 205 manual for details on how to use the keyboard to enter instructions and data into the system.