Function Key Strip Printer

By Richard Dimond

Originally published in EUG #26

As I had not got the Function Key Strip for View with my Master 128, I borrowed a friend's strip so that I could make a copy. There was a program published in The Micro User for doing this but this was too long to work on the Electron as it worked in Mode 1. It also used the characters on the computer and I thought it would be better to use the graphics characters of the printer to give an improved strip.

Another reason I decided to write this program was that my printer will only print a width of 8 inches and the strip needed to be shortened by about a quarter of an inch. This has meant that the leftmost section can only be for 4 Elite characters so <CTRL> and <SHIFT> are abbreviated to CTL> and SHT>. The remaining sections are able to contain up to 14 characters in Condensed Elite on each of two lines and these are arranged for the text to centred.

The Main Menu gives the following options:

  1. Enter key details
2. Print key strip
3. Load file
4. Save file
5. Quit program
6. Clear memory
*. Enter * command

I will comment on these in turn -

  1. On selecting this option, a second menu is shown. This gives options or entering each of the six lines for the key selected by pressing keys 1 to 6. Pressing N cycles the keys 0 to 9 and M returns to the Main Menu.

    On selecting a line number, you are given a cue for entering the details for the key number and line number. This should not be more than 14 characters or you will get the meesage 'Too long'. When an entry is entered, you are returned to the menu and the entry is shown in the box.

    When entering is completed, you can then return to the Main Menu to save the file or print it.

    PROCct enters the string input to the correct position in the array S$. K% being the key number and L% the line number minus 1. Line 600 of the program ensures that the string is not too long and lines 610 and 620 add the necessary spaces to centralise the text and make up the string to 14 characters. This is needed for the printing to line up.
  2. This option (and the remaining ones) first asks if you want to continue or not so that you can return to the menu.

    The print routine is rather involved but each line to be printed is of a similar form though some program lines became too long and had to be split.

    Line 1050 expands the character set for the graphics characters. Elite printing is selected at line 1060 and_1/8 inch line spacing at line 1070.

    Each line is similar in that they are made up as follows:

    PROCcoff - turns off the condensed printing for the first section to be printed - 4 elite characters between the division characters.

    PROCcon - turns on the condensed printing for the remainder of the line - 14 condensed elite characters plus a division character for each section.
  3. Load the array in the usual way using nested FOR/NEXT loops.
  4. Save the array in the usual way using nested FOR/NEXT loops.
  5. Ends the program or returns to the menu.
  6. Enters strings of 14 zero characters into each section of the array to clear memory.

The * command lets you use * commands for changing discs or *. for cataloguing the disk. I have narrowed the window for this so that it will appear as single column.

Richard Dimond, EUG #26