diff --git a/README.md b/README.md
index 0df5823e..f3b32bef 100644
--- a/README.md
+++ b/README.md
@@ -93,6 +93,7 @@ There are some short introductions for beginners:
- [Games](doc/games.md)
- [Printing](doc/printing.md)
- [Assembling ITS](doc/NITS.md)
+- [Com link mode](doc/comlink.md)
A list of [known ITS machines](doc/machines.md).
diff --git a/doc/comlink.md b/doc/comlink.md
new file mode 100644
index 00000000..547bedf2
--- /dev/null
+++ b/doc/comlink.md
@@ -0,0 +1,31 @@
+# How to use com links in ITS
+
+Com links allow terminal sharing between users.
+
+### Entering and exiting com link mode
+
+Use ^_C*foo* to attach to terminal or user
+*foo*. An octal number specifies a terminal number. This works with
+any number of users.
+
+Initially, input and output to programs is disabled, so users can type
+text to each other.
+
+Use ^_N to detach from terminal sharing.
+
+
+### Using programs in com link mode
+
+In com link mode, toggle program I/O with ^\_I
+and ^_O. When I/O is enabled, programs can
+use the terminal normally.
+
+
+### Slaving terminals
+
+Slaving a terminal means sending input to it from another terminal.
+When in com link mode, use ^\_S*foo* to slave
+another terminal. To toggle sending it input, use
+^\_E. Doing ^_E will
+automatically slave the other terminal if there are only two terminals
+in the com link session.