diff --git a/doc/DDT.md b/doc/DDT.md
index 9d61e5ac..e9374bf9 100644
--- a/doc/DDT.md
+++ b/doc/DDT.md
@@ -1,36 +1,45 @@
## DDT cheat sheet for Unix users
-To get access to a terminal, first type ^Z (Control-Z). After that,
-you can log in.
+To get access to a terminal, first type ^Z (Control-Z).
+After that, you can log in.
-The `$` character represents typing ESC.
+The ◊ character represents typing ESC, or holding down the
+Meta key. On a text terminal, it will show up as `$`.
| Unix command | DDT command | Colon command |
| ------------- | -------------------- | ------------------------ |
-| login user | user$u | :login user |
-| logout | $$u | :logout |
+| login user | user◊u | :login user |
+| logout | ◊◊u | :logout |
| TERM=vt52 | | :tctyp vt52 |
-| TERM=vt100 | | :crtsty vt100 |
-| ls | ^F | :listf |
-| ls dir | dir^F | :listf dir |
-| ls / | ^R m.f.d. (file) | :print m.f.d. (file) |
-| ls *.foo | ^R dir: second foo | :print dir: second foo |
-| more file | ^R file | :print file |
-| mkdir dir | ^R dir;..new. (udir) | :print dir;..new. (udir) |
-| cd dir | dir$$s | :cwd dir |
-| cp f1 f2 | $^R f1,f2 | :copy f1,f2 |
-| rm file | ^O file | :delete file |
-| ln f1 f2 | $^O f1,f2 | :link f1,f2 |
-| mv f1 f2 | $$^O f1,f2 | :rename f1,f2 |
+| TERM=vt100 | | :tctyp aaa |
+| TERM=ansi | | :crtsty ansi |
+| clear | ^L | :clear |
+| ls | ^F | :listf |
+| ls -l | ◊◊^F | :lf |
+| ls dir | dir^F | :listf dir |
+| ls / | ^R m.f.d. (file) | :print m.f.d. (file) |
+| ls *.foo | ^R dir: second foo | :print dir: second foo |
+| more file | ^R file | :print file |
+| mkdir dir | ^R dir;..new. (udir) | :print dir;..new. (udir) |
+| cd dir | dir◊^S | :cwd dir |
+| /foo/bar | | :foo;bar |
+| cp f1 f2 | ◊^R f1,f2 | :copy f1,f2 |
+| rm file | ^O file | :delete file |
+| ln f1 f2 | ◊^O f1,f2 | :link f1,f2 |
+| mv f1 f2 | ◊◊^O f1,f2 | :rename f1,f2 |
| mv file dir | | :move file,dir |
-| emacs | emacs^K | :emacs |
-| ps | $$v | :listj |
-| kill pid | pid$^X | :job pid :kill |
-| sudo -u u cmd | u$^S cmd | |
-| top | | :peek |
-| ^U | ^D | |
-| ^C | ^G | |
-| ^Z | ^Z | |
-| ^D | ^C | |
-| fg | $P | :continue |
-| bg | ^P | :proceed |
+| emacs | emacs^K | :emacs |
+| ps | ◊◊v | :listj |
+| kill pid | pid◊^X | :job pid *then* :kill |
+| kill -9 pid | | :lock *then* pid gun |
+| sudo -u u cmd | u◊◊^S cmd | |
+| top | peek^H | :peek |
+| ^U | ^D | |
+| ^C | ^G | |
+| ^Z | ^Z | |
+| ^D | ^C | |
+| fg | ◊P | :continue |
+| bg | ^P | :proceed |
+| man 2 open | | :call open |
+| dmesg | | :sysmsg |
+| uptime | | :time |
diff --git a/doc/EMACS.md b/doc/EMACS.md
index 64567e64..8c8e622e 100644
--- a/doc/EMACS.md
+++ b/doc/EMACS.md
@@ -1,14 +1,14 @@
## Basic editing with EMACS
-- ^X^F *file* CR - load file
-- ^X^S *file* CR - save file
-- ^X^C - exit (but don't kill emacs)
-- ^F - move cursor right (forward)
-- ^B - move cursor left (backward)
-- ^A - beginning of line
-- ^E - end of line
-- ^N - go to next line
-- ^P - go to previous line
-- ^D - delete character to the right
-- DEL - delete character to the left
-- ^K - delete to end of line
+- ^X^F *file* CR - load file
+- ^X^S *file* CR - save file
+- ^X^C - exit (but don't kill emacs)
+- ^F - move cursor right (forward)
+- ^B - move cursor left (backward)
+- ^A - beginning of line
+- ^E - end of line
+- ^N - go to next line
+- ^P - go to previous line
+- ^D - delete character to the right
+- DEL - delete character to the left
+- ^K - delete to end of line
diff --git a/doc/TECO.md b/doc/TECO.md
index 550c7b1c..9f2e848d 100644
--- a/doc/TECO.md
+++ b/doc/TECO.md
@@ -1,15 +1,22 @@
## TECO survival guide
-Note: all commands must be terminated by $$ to execute them.
+Note: ◊ is the SAIL rendition of the Altmode character. It's used by
+the Knight TV and SUPDUP. On a text terminal, it will show up as `$`.
-- ER*file*$@Y - load file
-- EIEE*file*$ - save file
-- ^Z - suspend
-- *n*R - move cursor left
-- *n*C - move cursor right
-- 0L - beginning of line
-- :L - end of line
-- *n*L - beginning of *n*th line from the current position
-- I*text*$ - insert text
-- *n*D - delete *n* characters to the right
-- K - delete to end of line
+All commands must be terminated by ◊◊ to execute them. You can enter
+several commands in a row.
+
+| Command | Function
+| --- | ---
+| ER *file*◊ @Y | Load file
+| EIEE *file*◊ | Save file
+| ^Z | Suspend
+| *n* R | Move cursor left
+| *n* C | Move cursor right
+| 0L | Beginning of line
+| :L | End of line
+| *n* L | Beginning of *n*th line from the current position
+| I *text*◊ | Insert text
+| *n* D | Delete *n* characters to the right
+| -*n* D | Delete *n* characters to the left
+| K | Delete to end of line
diff --git a/doc/debugging.md b/doc/debugging.md
index 3dcec371..7a0438b6 100644
--- a/doc/debugging.md
+++ b/doc/debugging.md
@@ -4,30 +4,30 @@ Notes where exec DDT differs from timesharing DDT.
| Command | Timesharing DDT | Exec DDT
| --- | --- | ---
-| *file*^K | Start program without symbols loaded | N/A
-| ^Z | Suspend program | N/A
-| $P | Continue
-| $^K | Load symbols | N/A
-| *name*$J | Create job named *name* | N/A
-| $L *file* | Load *file* into current job, including symbols | N/A
-| $^X. | Kill current job | N/A
-| $G | Run program from start
-| $0G | Set PC to starting address | N/A
-| *n*$B | Set breakpoint at *n*
-| $B | Remove breakpoint at current location | Remove all breakpoints
-| .$B | Set breakpoint at current location
+| *file*^K | Start program without symbols loaded | N/A
+| ^Z | Suspend program | N/A
+| ◊P | Continue
+| ◊^K | Load symbols | N/A
+| *name*◊J | Create job named *name* | N/A
+| ◊L *file* | Load *file* into current job, including symbols | N/A
+| ◊^X. | Kill current job | N/A
+| ◊G | Run program from start
+| ◊0G | Set PC to starting address | N/A
+| *n*◊B | Set breakpoint at *n*
+| ◊B | Remove breakpoint at current location | Remove all breakpoints
+| .◊B | Set breakpoint at current location
| . | Current location
-| $. | Current value of PC
-| $Q | Last printed quantity
+| ◊. | Current value of PC
+| ◊Q | Last printed quantity
| *n*/ | Open location *n* symbolically (show instructions and symbols)
-| / | Open $Q
-| ^J | Open next location
+| / | Open ◊Q
+| ^J | Open next location
| ^ | Open previous location
| *n*[ | Open location *n* numerically
-| = | Print $Q numerically
-| _ | Print $Q as a symbol
-| ' | Print $Q as six SIXBIT characters
-| " | Print $Q as five ASCII characters
-| # | Print $Q as one ASCII character | N/A
-| ^N | Single step | N/A
-| $^N | Stop at next instruction (skip over calls) | N/A
+| = | Print ◊Q numerically
+| _ | Print ◊Q as a symbol
+| ' | Print ◊Q as six SIXBIT characters
+| " | Print ◊Q as five ASCII characters
+| # | Print ◊Q as one ASCII character | N/A
+| ^N | Single step | N/A
+| ◊^N | Stop at next instruction (skip over calls) | N/A
diff --git a/doc/hello-midas.md b/doc/hello-midas.md
index 218ab3a6..ffdaabf1 100644
--- a/doc/hello-midas.md
+++ b/doc/hello-midas.md
@@ -26,13 +26,13 @@ Step by step guide on how to create a hello world in MIDAS.
end start ;Specify entry point.
```
-3. Save it as `hello 1` (^X^S) and exit (^X^C).
+3. Save it as `hello 1` (^X^S) and exit (^X^C).
4. Assemble it with MIDAS.
:midas ts hello_hello
-5. Go back to EMACS with $P if you need to do edits.
+5. Go back to EMACS with ◊P if you need to do edits.
6. Run the program.