This is a text-only version of the following page on https://raymii.org: --- Title : Running WPS-8 (Word Processing System) on the DEC(mate) PDP-8i and SIMH Author : Remy van Elst Date : 09-03-2017 URL : https://raymii.org/s/articles/Running_WPS-8_(Word_Processing_System)_on_the_DEC(mate)_PDP-8i_and_SIMH.html Format : Markdown/HTML --- [![][1]][1] > A DEC VT78 running WPS-8 ([source][2]) This article covers running [WPS-8][3] on a modern day emulator. WPS-8 is a word processor by DEC for the [PDP-8][4]. The PDP-8 was a very populair 12-bit minicomputer from 1965. WPS-8 was released around 1970, it came bundled with DEC's VT78 terminal. This terminal bundle was also known as the [DECmate][5]. This article covers the setup of the emulator, simh with the correct disk images and terminal settings. It covers basic usage and the features of WPS-8 and it has a section on key remapping. The early keyboards used with WPS-8 have small but incompatible differences with recent keyboards, but nothing that xterm remapping can't fix. As you might know, I'm a fan of the PDP line of computers and legacy systems in general. Mainframes, homecomputers, you name it and I probably like it. Add flashing lights, panels and big controls to it and you have my attention in no time. Plus, in previous jobs I've worked on mainframes, VAX and PDP systems and the emulators used to keep those systems running on modern hardware. Think hospitals, banks, insurance companies, train signalling control and the likes. So, the interest did not spawn from nowhere. [Oscar Vermeulen created an amazing replica of the PDP-8/I][6]. It's a front panel with working switches and LED's, plus a simple Raspberry Pi running the SIMH emulator. [I've written][7] multiple [articles on the][8] [PDP and PiDP-8][9] and I like the device a lot in general.

Recently I removed all Google Ads from this site due to their invasive tracking, as well as Google Analytics. Please, if you found this content useful, consider a small donation using any of the options below:

I'm developing an open source monitoring app called Leaf Node Monitoring, for windows, linux & android. Go check it out!

Consider sponsoring me on Github. It means the world to me if you show your appreciation and you'll help pay the server costs.

You can also sponsor me by getting a Digital Ocean VPS. With this referral link you'll get $100 credit for 60 days.

So why run WPS-8 today you might ask? Well, first of all, because it is fun to play with. Second, to appreciate the modern software we use the present day more. Just imagine you writing your thesis on an ASR-33 teletype or a DECmate. Imagine the wrist and shoulder pain, the review process and all the other nice things we take for granted. The third reason of course is to bewonder how far advanced computers and software was more than 40 years ago. For less than the price of a small car, a business could own a PDP-8 and have their processes digitized, optimized and all the other advantages of a computer. Or just type their letters to look way more fancy. WPS-8 is very dependent on specific (vt52) terminal features. The article has a few sections on the workarounds required to use WPS-8 on a modern terminal. I've written a small xterm wrapper script around xterm to make this setup easier. Here is a screenshot of WPS-8 running with xterm in simh with a vt220 font: ![][11] ### What is WPS-8 WPS-8 is a Word Processing System that was sold by Digital Equipment Corporation (DEC) for use with their PDP-8 processors (including the VT78, VT278 DECmate, and PC238 DECmate II and PC24P DECmate III microcomputer systems). WPS-8 was DEC's attempt to compete with the IBM-PC and the word processors on those systems. ![][12] The standard DECstation configuration, which includes the VT78 (video terminal, mainboard, memory, real time clock and floppy drive interface) and a dual floppy disk was priced at $7995. [Wikipedia][3] has a bit more information on WPS-8. I've mirrored two WPS-8 manuals here. One is specifically for the DECmate: * [AA-5267C-TA _WPS-8_ Word _Processing_ System _Reference_ Manual _Versions_ 2.7 _and_ 3.0 _Dec_ 1978.pdf][13] * [AA-K663B-TA _Decmate_ Wordprocessing _Reference_ Manual.pdf][14] Most of this article on the usage of WPS-8 is taken from these manuals. If you want to know everything there is to know on WPS-8, read them. ### SIMH, Blinkenbone or the PiDP-8 or the real deal You need the [simh][15] emulator to run WPS-8 and work with this guide. On Ubuntu it can be installed with `apt`: apt-get install simh On Arch you can get version 3.9 (as of writing) from the repository: pacman -Sy simh I created a `PKGBUILD` for [simh-git][16] in the AUR, if you want to use version 4. In the below section I'll talk more on how I found out all the specific settings required to run WPS-8 correctly. If you just want to get started, skip all of that. Below is the `simh` ini file used in this article: set cpu 32K set cpu noidle set tto 7b ;;set console telnet=2323 attach rx0 wps78v3.4.rx01 attach rx1 wps-doc.rx01 boot rx0 exit The `wps78v3.4.rx01` disk file can be downloaded [here][17]. I got it from [pdp8.net][18]. `rx1` doesn't have to exist. If `simh` can't find it, it will create it. Later on in this guide, we'll format it as a document drive. The `PiDP-8` and BlinkenBone all come with SIMH bundled. [BlinkenBone][19] is a graphical front panel you can run on a Linux/Windows machine. It includes SIMH and a PDP-8i panel. I've written [a guide][19] with usage instuctions for BlinkenBone. You need to adapt (or copy) the `Adventure` files, place the disk images and start the simulator. It should then boot into WPS-8, but your terminal settings will be incorrect. You can however enjoy the front panel pattern. If you have the [PiDP-8][6] then you can use `scp` to copy the disk image over. Edit one of the SR toggle boot options with this configuration, add `telnet` and you're good to go. Connect your local xterm to that telnet server and you should get the WPS-8 screen. If you have a real [PDP-8e][20] you can enjoy the front panel MQ pattern, as seen in the video made by Michael Thompson of the [Rhode Island Computer Museum][21]. ### Terminal emulation and setup As said earlier, WPS-8 is dependent on old hardware, specifically the VT-52/VT-78 terminals and keyboards. Modern terminal emulators have little support or require significant configuration. I managed to find most of the issues and work around them. Many thanks to the [pidp-8 newsgroup][22] for the terminal emulation part. The `xterm` manpage and documentation are my new best friends as well, plus a whole new section of the internet regarding terminal ascii codes. I had trouble getting WPS-8 to display correctly. The system started up in the emulator, but it did not look right: ![][23] With some help of the [pidp-8 newsgroup][22] and mailing with Michael Thompson of the [Rhode Island Computer Museum][21] (who tested it on an actual PDP-8/e, many thanks) we got it working. WPS-8 seems to be very dependent on the DEC VT-52 terminal. There are specific escape codes used, which newer terminals and terminal emulators don't understand or support. In the above image there are a few things that stand out. First, all the text is on one line, instead of neatly formatted. Second, there are only capital letters. SIMH by default runs in 8-bit mode. The mailinglist suggested trying 7-bit mode. This requires the following line in the `simh.ini` file: set tto 7b When running SIMH with this option, one point above is solved: ![][24] Namely the all capital text. There are normal letters in there but the formatting is still wrong. On the mailing list Michael Thompson from the Rhode Island Computer Museum booted up their PDP-8/e with WPS-8 and tested the connection with Microsoft HyperTerminal, which seems to give the correct output: ![][25] Chris Smith looked at the second picture of the output and noticed all the squares with numbers in them. Here's what he said: The 'tto 7b mode' picture is rather enlightening. All those little squares have 1B in them - but, more specifically, they have 001B. 1B is ASCII decimal 27, which is ... ESCape. But the 001B notation is rather odd. It's almost as though this is a unicode stream rather than an ASCII stream. I rather get the impression that this is *not* being interpreted by a VT52 emulator. Such an emulator would have captured all the ESC-Y sequences, and you would not be seeing all of those extra letter Y. In fact -- a quick check of the VT52 page on Wikipedia suggests that this is real and good VT52 encoding. You just need to get it to an actual emulator. I tried to set my terminal (xfce-terminal and terminator) to vt52 mode by exporting `TERM=vt52`. That did not work, the text stayed garbled. I have a vt220 at home with the LK201 keyboard and I hooked that up to one of my machines with simh via an USB to serial cable. `serial-agetty` is set to explicity `vt52` mode. This is Arch linux specific but you get the gist for other distro's: # /lib/systemd/system/serial-getty\@.service [...] ExecStart=-/sbin/agetty -h -L 19200 %I vt52 At first that also did not work, but after replacing the usb-serial cable it did: ![][26] That left me to figure out why the terminal emulators did not display it correctly. I suspected that the modern terminal emulators did not implement this vt52 specific codes correctly. Therefore, I started looking into xterm. Consulting the `xterm` man page and [website on control sequences][27] told me that the `Y` code is used only in the vt52 to move the cursor on the screen: ESC Y Ps Ps Move the cursor to given row and column. That escape sequence can be tested in your terminal using `printf`: printf '\033Y11' Regular xterm also did not work as expected: ![][28] Reading further in to the xterm man page pointed me to the `-tn` and `-ti` options: -ti term_id Specify the name used by xterm to select the correct response to terminal ID queries. It also specifies the emulation level, used to determine the type of response to a DA control sequence. Valid values include vt52, vt100, vt101, vt102, vt220, and vt240 (the "vt" is optional). The default is "vt420". The term_id argument specifies the terminal ID to use. (This is the same as the decTerminalID resource). -tn name This option specifies the name of the terminal type to be set in the TERM environment variable. It corresponds to the termName resource. This terminal type must exist in the terminal database (termcap or terminfo, depending on how xterm is built) and should have li# and co# entries. If the terminal type is not found, xterm uses the built-in list "xterm", "vt102", etc. Using both options set to `vt52` like below gave the correct result on the escape code: xterm -tn vt52 -ti vt52 ![][29] As you can see, my bash prompt and all fancy stuff like colours are not working. But the escape code works, which is awesome. Now the big question, will WPS-8 also show up correctly? Let's take a look: ![][30] Behold, in all it's glory. WPS-8 on your modern day terminal emulator! Scroll down to the section `wps8term` to find my `xterm` wrapper script and the vt220 font. It sets up xterm with the key remappings explained below and starts up simh. ### Key remapping and PF1 / GOLD The keyboard used with this software had a special GOLD key. It's a function key like CTRL or ALT, but instead of keeping it pressed while you press the other key, like copy (CTRL+C), you pressed and released the gold key, then pressed the function key. Going back to the menu from the document editor for example is GOLD+M. You press and release the GOLD key, then press M. Non DECmate/vt78 keyboard like the LK201 had no coloured keys. Instead, they had, above the numeric island, PF1 through PF4. PF1 is the GOLD key On the terminals where WPS-8 was used, the function keys F1 through F5 were used with the hardware, not mapped to the software. F2 get's you in the hardware setup menu of a VT220 terminal. xterm remaps these keys (PF1 to PF4) to F1 to F4. Here is a picture of the keyboard on the vt78 terminal: ![][31] This is a schematic view of the VT78 keyboard, with colours and secondary functions: ![][32] ([source][33]) The backspace key will result in an error on the non-editor screens: When typing to the menu use the normal keys on the keyboard only. The line must end with RETURN. RUB CHAR and RUB WORD can also be used. Please press RETURN and try again. The working way to get a backspace is to press CTRL and backspace. The actual character sent is the [delete][34] character. Moving around with the arrow keys is not supported. The manual states that the arrow keys are not used in the word processor. `Using them can put extra characters in your document`, the manual states. There are a few alternatives however. Listed below under Mini keyboard functions are the numeric isle function keys. These, if you have an actual vt52 (or vt220), can be used to move around. The GOLD key can also be used with the regular keypad for movement: * GOLD B: Move to the bottom of the document * GOLD T: Move to the top of the document Furthermore you can use the search option. I wrote an xterm key translation (remap) script specifically for use with WPS-8. It remaps the arrow keys as well as the numpad. See below for more info. #### wps8term ![][11] On the [xterm][35] website there is a script named `vmsterm`. This implements key remapping so that the numeric isle on your keyboard mimics the PF1-PF4 keys, it remaps the Backspace to send the correct RUB OUT CHAR (ascii 127) and other specific keys. It is intended for usage with VMS (PDP11 -> VAX -> VMS). I used this script and the `showkey` command on my own `vt220` in `vt52` mode to get the correct keycodes for the numeric function keys. It works in the specific `vt52` mode required for WPS-8. It remaps the arrow keys as well: * UP: LINE * DOWN: LINE * LEFT: BACKUP * RIGHT: ADVANCE See below for a full explanation on the meaning of these specific keys. This mapping allows you to use left and right to go back one character and left/right + up/down to advance or go back one line at a time. This is a screenshot of xterm without using `wps8term`: ![][36] When using WPS-8, you will notice a lot of the keys not working, like the arrow keys or the Backspace. The remapping in the script fixes all of that. You can get `wps8term` from the [github repo][37] or [this site][38]. The font used in the screenshots can be found [here][39]. It is included in the repository as well. If you don't have the font installed xterm will default to a monospace-like font. #### Mini keyboard functions The numeric island is called the minikeyboard in the manual. It lists, per key, the function it has. The table is listed here for reference. It will help you with editing documents, as for example you can use copy and paste. `<> (Angle brackets)` Used with the ADVANCE or BACK UP keys to position cursor after the next or previous right angle bracket `ADVANCE` Used with the distance keys (described in Table 5) to advance the cursor through a document. Other uses are described in this man- ual as appropriate. `BACK UP` Used with the distance keys (described in Table 5) to move the cursor in reverse through a document. Other uses are described in this manual as appropriate. `BOLD` Makes text bolded. See Chapter 6, Bold Text. `CUT` Cuts text out of a document and puts it into the paste area. See Chapter 7, Cut. `DEL CHAR` Deletes the character at the cursor. `DEL WORD` Deletes the character at the cursor and all the following charac- ters, punctuation, and spaces up to the next word. `GOLD KEY` Activates the feature indicated by the gold lettering on the front of the main keyboard keys. See Table 3. Also used with the keys on the minikeyboard to perform special functions. See Table 4. `LINE` Used with ADVANCE to move the cursor to the first character of the next line and successive lines. Used with BACK UP to move the cursor to the start of the line the cursor is on and preceding lines. Also used with the highlighting feature (Chapter 6} and select feature (Chapter 7). `PAGE` Used with ADVANCE or BACK UP to move the cursor to the next or preceding page ending mark. Also used with the high- lighting feature (Chapter 6) and select feature (Chapter 7). `PARA` Used with ADVANCE or BACK UP to move the cursor to the beginning of the next paragraph or preceding paragraph. Also used with the highlighting feature (Chapter 6) and select feature (Chapter 7). `PASTE` Puts text saved in the paste area into the document at the cursor. `SEL` Selects a piece of text for cutting or highlighting. See Chapter 7, Select, and Chapter 6. `SENT` Used with ADVANCE or BACK UP to move the cursor one sentence forward or in reverse. Also used with the highlighting feature (Chapter 6) and select feature (Chapter 7). `TAB POS` Used with ADVANCE or BACK UP to move the cursor one tab position forward or in reverse. Also used with the highlighting feature (Chapter 6) and select feature (Chapter 7). `UNDERLINE` Underlines text. See Chapter 6, Underline Text. `UPPER CASE` Capitalizes text (puts text in uppercase letters). See Chapter 6, Capitalize Text. `WORD` Used with ADVANCE or BACK UP to move the cursor one word forward or in reverse. Also used with the highlighting feature (Chapter 6) and select feature (Chapter 7). ### Using WPS-8 After you've set up the date and time, you can almost start editing documents. We need to format a diskette first. The documents are not saved on the terminal itself but on a floppy disk. The DECmate system uses RX02 floppies. The image below shows on the left an rx02 floppy and on the right an rx50 floppy: ![][40] In the main menu, either type the `M` option two times, or just type `MC` followed by a `Return`. You are now in the `Diskette Maintenance Menu`: ![][41] The option `D` can be used to format a document diskette. In the `simh` config we defined this as `rx1`, the file is `wps-doc.rx01`. The disk needs to be formatted before we can use it. If you have other disk files you can attach and verify them as well with this menu. A single diskette holds, according to the manual, about 100 to 125 pages of text. After formatting the disk you need to go back to the main menu to create a new document. Press and release `(P)F1`, then press `M`. Remember, `F1` is the `GOLD` key, `M` is for Menu. #### Your first document ![][12] In the Main Menu, give the `C` option to create a document. Give it a name, press `RETURN` and you will be in the editor. Go ahead and type up your document. Write up a letter to a long lost friend, your pen-pal inmate or the love of your life. Or, like me, just a test document. At any time you can call up the special Document Edit menu with the `GOLD + M` key: ![][42] If you want to center a line, use `GOLD + C`. If you want to insert a new page, press `GOLD + N`. #### Saving A document can be saved to diskette in editing mode either by going back to the menu `(GOLD + M)` and then again `GOLD M`. Or, you can use `GOLD F` to `File the document you are editing after making all your changes on the diskette.` There is no auto save functon, so if you power off the emulator your unsaved changes are gone. #### Searching Searching for a phrase can be done via the GOLD , (comma). Enter a phrase and press ENTER. The cursor will be placed at the phrase if it's found. To continue to the next occurence of the phrase, press GOLD . (dot). #### File management The file management can be a bit cumbersome on WPS-8. You have no integrated file manager where you can do all operations. Instead you have seperate `C`reate, `E`dit, `I`ndex and `D`elete menu's. Editing and Deleting existing documents require the document name or number. To see the list of all documents, use option `I`. ![][43] We see an overview with 1 actual document, it has document number 2. There is also document number 1, more on that later. Don't ever edit that document. Remember the document filename, or the document number. Use `E` to open the edit existing document menu. It will ask you for the document name or number. I the above case I can enter 2, or the full name. If you have edited a document earlier and have not shut the system down, it will remember that filename and ask you. If that is the case, a simple `RETURN` opens that document. ![][44] The list of documents is also stored as a document. The document has no name, but the number is 1. If you go to the `E`dit menu and enter `1` as the filename, you get the document itself. The manual states, in CAPITALS, that `THE TEXT THAT DECMATE INSERTS IN THIS DOCUMENT SHOULD NEVER BE ERASED`, otherwise you might not be able to access your documents on the diskette. It also states that it's better not to edit that document. #### Printing WPS-8 supports a few different types of printers, of which none were working in simh. I filed a [bug][45] and in the latest 4.0 beta release printing to the `DD` (document draft) printer works in simh. This allows you to get your documents out of the system, onto the host where the emulater runs on. On Arch Linux [I maintain][16] the simh-git package. When 4.0 is released I'm sure it will go into the community repo, but for now you do need to compile the beta version if you want to print. In your `simh.ini` file make sure the following two lines are enabled for printing support: set LPT enable attach LPT printer.txt This file will be created by the emulator and it will get the contents of the printed documents in it, along with a boatload of newlines. #### Reusable text - library for abbreviations and paragraphs If you regularly create documents with a lot of the same text or you often use the same long words or sentences, the WPS-8 system has a great feature to help you with that. The system allows you to create abbreviations that expand to a bigger word or sentence, and paragraphs that expand to a bigger section of text on multiple lines. Let's say you're typing a guide on the WPS-8 system and you don't want to type `Word Processing System` all the time. You can add the abbreviation `wp`, which when inserted will be expanded to `Word Processing System`. Or you might just want to add the company address on a letter. Create a paragraph named `ADR1` and insert it. WPS-8 used two user-definable documents to store the abbreviations and paragraphs, in my disk image those are `199` for the abbreviations and `200` for the paragraphs. You can edit these by, from the main menu, choose `C` (create) if it's the first time you add a paragraph/abbreviation, or `E` if you later want to add a paragraph/abbreviation, and enter `199` or `200` as the document name. The VT78 keyboard used the gold key and one of the function keys to insert abbreviations, and the gold key and `L` to insert a paragraph. ![][46] I found out that you can use the paragraph document for abbreviations as well. That was nice because remapping the function key was cumbersome and didn't seem to work for me. To add a paragraph, or an abbreviation, open up the library document `200` as described above. The format for an abbreviation is as follows: <>Word Processing System<<>> <>Public Service Announcement<<>> ![][47] The abbreviation itself should be betwee `<<` and `>>` and must be two letters long. The expansion can be up to 120 characters. It must end with `<<>>` and a newline. The format for a paragraph is as follows: <> Sparkling Network Newfoundland Lane III 99231 CA Texas <<>> <> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. <<>> ![][48] The name must not be longer than 16 letters and the paragraph must end with `<<>>`. Inserting a paragraph or an abbreviation in a document can then be done with `GOLD+L`. ![][49] ![][50] ![][51] From the document menu (`GOLD+M`) you can also set another document to be the library document: ![][52] #### Finished using the system The manual states that only when you are leaving your WPS-8 system for a few hours or are done for the day you should turn off the system. In the main menu (`PF1 + M`) press `F` for option Finish. The screen will display a message like below: ![][53] You can return to the main menu by pressing `RETURN`, for example, when you just go for your lunch break. Or you can turn off the system. Using the `Finish` menu clears the `Paste` area before displaying the above screen. If you are editing confidential documents, remove the diskette with the documents on it. Because the Paste area is cleared, nobody can see the contents anymore. [1]: https://raymii.org/s/inc/img/pidp8/wps8/vt78.jpg [2]: http://www.pdp8.net/vt78/vt78.shtml?large [3]: https://en.wikipedia.org/wiki/WPS-8 [4]: https://en.wikipedia.org/wiki/PDP-8 [5]: https://en.wikipedia.org/wiki/DECmate [6]: http://obsolescence.wix.com/obsolescence#!pidp-8/cbie [7]: https://raymii.org/s/articles/Running_ADVENT-on-the-PDP-8-with-SIMH.html [8]: https://raymii.org/s/articles/Toggling_in_a_simple_program_on_the_DEC_PDP-8_and_PiDP-8_using_the_switch_register.html [9]: https://raymii.org/s/articles/Running_TSS_8_on_the_DEC_PiDP-8_i_and_SIMH.html [10]: https://www.digitalocean.com/?refcode=7435ae6b8212 [11]: https://raymii.org/s/inc/img/pidp8/wps8/wps-date.png [12]: https://raymii.org/s/inc/img/pidp8/wps8/edit-doc.png [13]: https://raymii.org/s/inc/downloads/pdp/8_Word_Processing_System_Reference_Manual_Versions_2.7_and_3.0_Dec_1978.pdf [14]: https://raymii.org/s/inc/downloads/pdp/AA-K663B-TA_Decmate_Wordprocessing_Reference_Manual.pdf [15]: http://simh.trailing-edge.com/ [16]: https://aur.archlinux.org/packages/simh-git/ [17]: https://raymii.org/s/inc/downloads/pdp/wps78v3.4.rx01 [18]: http://www.pdp8.net/images.shtml [19]: https://raymii.org/s/articles/Toggling_in_a_simple_program_on_the_DEC_PDP-8_and_PiDP-8_using_the_switch_register.html#BlinkenBone [20]: https://www.youtube.com/watch?v=fZhlOAIgVyI [21]: http://www.ricomputermuseum.org/ [22]: https://groups.google.com/forum/#!topic/pidp-8/o1cHg93t4uM [23]: https://raymii.org/s/inc/img/pidp8/wps8/garbled-8b.png [24]: https://raymii.org/s/inc/img/pidp8/wps8/garbled-7b.png [25]: https://raymii.org/s/inc/img/pidp8/wps8/hyperterm.jpg [26]: https://raymii.org/s/inc/img/pidp8/wps8/vt220.png [27]: http://invisible-island.net/xterm/ctlseqs/ctlseqs.html [28]: https://raymii.org/s/inc/img/pidp8/wps8/xterm1.png [29]: https://raymii.org/s/inc/img/pidp8/wps8/xterm2.png [30]: https://raymii.org/s/inc/img/pidp8/wps8/xterm3.png [31]: https://raymii.org/s/inc/img/pidp8/wps8/vt78kb.png [32]: https://raymii.org/s/inc/img/pidp8/wps8/vt78kbs.gif [33]: http://www.quadibloc.com/comp/kyb03.htm [34]: https://en.wikipedia.org/wiki/Delete_character [35]: http://invisible-island.net/xterm/xterm.faq.html [36]: https://raymii.org/s/inc/img/pidp8/wps8/nowpsterm.png [37]: https://github.com/RaymiiOrg/wps8term [38]: https://raymii.org/s/inc/downloads/pdp/wps8term.sh [39]: http://christfollower.me/misc/glasstty/index.html [40]: https://raymii.org/s/inc/img/pidp8/wps8/floppies.jpg [41]: https://raymii.org/s/inc/img/pidp8/wps8/floppy1.png [42]: https://raymii.org/s/inc/img/pidp8/wps8/doc-menu.png [43]: https://raymii.org/s/inc/img/pidp8/wps8/doclist.png [44]: https://raymii.org/s/inc/img/pidp8/wps8/editexist.png [45]: https://github.com/simh/simh/issues/353 [46]: https://raymii.org/s/inc/img/pidp8/wps8/abbreviationskey.png [47]: https://raymii.org/s/inc/img/pidp8/wps8/ablib2.png [48]: https://raymii.org/s/inc/img/pidp8/wps8/abaddr2.png [49]: https://raymii.org/s/inc/img/pidp8/wps8/abpa.png [50]: https://raymii.org/s/inc/img/pidp8/wps8/abpa2.png [51]: https://raymii.org/s/inc/img/pidp8/wps8/abaddr1.png [52]: https://raymii.org/s/inc/img/pidp8/wps8/ablib.png [53]: https://raymii.org/s/inc/img/pidp8/wps8/finish.png --- License: All the text on this website is free as in freedom unless stated otherwise. This means you can use it in any way you want, you can copy it, change it the way you like and republish it, as long as you release the (modified) content under the same license to give others the same freedoms you've got and place my name and a link to this site with the article as source. This site uses Google Analytics for statistics and Google Adwords for advertisements. You are tracked and Google knows everything about you. Use an adblocker like ublock-origin if you don't want it. All the code on this website is licensed under the GNU GPL v3 license unless already licensed under a license which does not allows this form of licensing or if another license is stated on that page / in that software: This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Just to be clear, the information on this website is for meant for educational purposes and you use it at your own risk. I do not take responsibility if you screw something up. Use common sense, do not 'rm -rf /' as root for example. If you have any questions then do not hesitate to contact me. See https://raymii.org/s/static/About.html for details.