diff --git a/README b/README
index 19da318..a062b24 100644
--- a/README
+++ b/README
@@ -18,11 +18,6 @@
 
 *** TODO ***
 
- - the negotiate callback behavior needs to be redone so that the
-   app immediately confirms; right now if you set ev->accept=1 when
-   receiving a request to enable you can't immediately start sending
-   ubnegotiations because the confirmation hasn't been sent yet.  :/
- ? ZMP parsing
  ? MSSP parsing
  ? TTYPE parsing
  ? ENVIRON/NEW-ENVIRON parsing
@@ -416,6 +411,13 @@
    The event->command value will be 1 if compression has started and
    will be 0 if compression has ended.
  
+ TELNET_EV_ZMP
+   The ZMP event is sent whenever a ZMP command has been received.
+   The event->argc field is the number of ZMP parameters, including
+   the command name, that have been received.  The event->argv field
+   is an array of strings, one for each ZMP parameter.  The command
+   name will be in event->argv[0].
+ 
  TELNET_EV_WARNING
    The WARNING event is sent whenever something has gone wrong inside
    of libtelnet (possibly due to malformed data sent by the other
@@ -501,7 +503,48 @@
 then libtelnet will automatically detect the start of a COMPRESS2
 stream, in either the sending or receiving direction.
 
-VI. TELNET PROXY UTILITY
+VI. ZENITH MUD PROTOCOL (ZMP) SUPPORT
+=====================================================================
+
+The Zenith MUD Protocol allows applications to send messages across
+the TELNET connection outside of the normal user input/output data
+stream.  libtelnet offers some limited support for receiving and
+sending ZMP commands to make implementing a full ZMP stack easier.
+For more information on ZMP:
+
+ http://zmp.sourcemud.org/
+
+For a server to enable ZMP, it must send the WILL ZMP negotitaion:
+
+ telnet_negotiate(&telnet, TELNET_WILL, TELNET_TELOPT_ZMP);
+
+For a client to support ZMP it must include ZMP in the telopt table
+passed to telnet_init(), with the him field set to TELNET_DO:
+
+ { TELNET_TELOPT_ZMP,       TELNET_WONT, TELNET_DO   },
+
+Note that while ZMP is a bi-directional protocol, it is only ever
+enabled on the server end of the connection.  This automatically
+enables the client to send ZMP commands.  The client must never
+attempt to negotiate ZMP directly using telnet_negotiate().
+
+Once ZMP is enabled, any ZMP commands received will automatically be
+sent to the event handler function with the TELNET_EV_ZMP event
+code.
+
+To send ZMP commands to the remote end, use either telnet_send_zmp()
+or telnet_send_zmpv().
+
+ int telnet_send_zmp(telnet_t *telnet, size_t argv,
+    const char **argv);
+  Sends a ZMP command to the remote end.  The argc parameter is the
+  number of ZMP parameters (including the command name!) to be sent.
+  The argv parameter is an array of strings containing the
+  parameters.  The element in argv[0] is the command name itself.
+  The argv array must have at least as many elements as the value
+  argc.
+
+VII. TELNET PROXY UTILITY
 =====================================================================
 
 The telnet-proxy utility is a small application that serves both as a
