-#define MODE_CHANOP CHFL_CHANOP
-#define MODE_VOICE CHFL_VOICE
-#define MODE_PRIVATE 0x0004
-#define MODE_SECRET 0x0008
-#define MODE_MODERATED 0x0010
-#define MODE_TOPICLIMIT 0x0020
-#define MODE_INVITEONLY 0x0040
-#define MODE_NOPRIVMSGS 0x0080
-#define MODE_KEY 0x0100
-#define MODE_BAN 0x0200
-#define MODE_LIMIT 0x0400
-#define MODE_REGONLY 0x0800 /* Only +r users may join */
-#define MODE_LISTED 0x10000
-#define MODE_SAVE 0x20000 /* save this mode-with-arg 'til later */
-#define MODE_FREE 0x40000 /* string needs to be passed to MyFree() */
-#define MODE_BURSTADDED 0x80000 /* channel was created by a BURST */
+#define MODE_CHANOP CHFL_CHANOP /**< +o Chanop */
+#define MODE_VOICE CHFL_VOICE /**< +v Voice */
+#define MODE_PRIVATE 0x0004 /**< +p Private */
+#define MODE_SECRET 0x0008 /**< +s Secret */
+#define MODE_MODERATED 0x0010 /**< +m Moderated */
+#define MODE_TOPICLIMIT 0x0020 /**< +t Topic Limited */
+#define MODE_INVITEONLY 0x0040 /**< +i Invite only */
+#define MODE_NOPRIVMSGS 0x0080 /**< +n No Private Messages */
+#define MODE_KEY 0x0100 /**< +k Keyed */
+#define MODE_BAN 0x0200 /**< +b Ban */
+#define MODE_LIMIT 0x0400 /**< +l Limit */
+#define MODE_REGONLY 0x0800 /**< Only +r users may join */
+#define MODE_DELJOINS 0x1000 /**< New join messages are delayed */
+#define MODE_REGISTERED 0x2000 /**< Channel marked as registered
+ * (for future semantic expansion) */
+#define MODE_SAVE 0x20000 /**< save this mode-with-arg 'til
+ * later */
+#define MODE_FREE 0x40000 /**< string needs to be passed to
+ * MyFree() */
+#define MODE_BURSTADDED 0x80000 /**< channel was created by a BURST */