diff --git a/doc/fccharset.fncs b/doc/fccharset.fncs
index 036870d..efcd0cc 100644
--- a/doc/fccharset.fncs
+++ b/doc/fccharset.fncs
@@ -175,9 +175,27 @@ Returns whether a is a subset of b
@TYPE3@ FcChar32 * @ARG3@ next
@PURPOSE@ Start enumerating charset contents
@DESC@
-Builds an array of bits marking the first page of Unicode coverage of
-a. Returns the base of the array. next contains the next page in the
-font.
+Builds an array of bits in map marking the
+first page of Unicode coverage of a.
+*next is set to contains the base code point
+for the next page in a. Returns the base code
+point for the page, or FC_CHARSET_DONE if
+a contains no pages. As an example, if
+FcCharSetFirstPage returns
+0x300 and fills map with
+
+0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003
+
+Then the page contains code points 0x300 through
+0x33f (the first 64 code points on the page)
+because map[0] and
+map[1] both have all their bits set. It also
+contains code points 0x343 (0x300 + 32*2
++ (4-1)) and 0x35e (0x300 +
+32*2 + (31-1)) because map[2] has
+the 4th and 31st bits set. The code points represented by
+map[3] and later are left as an excercise for the
+reader ;).
@@
@RET@ FcChar32
@@ -187,9 +205,15 @@ font.
@TYPE3@ FcChar32 * @ARG3@ next
@PURPOSE@ Continue enumerating charset contents
@DESC@
-Builds an array of bits marking the Unicode coverage of a for page
-*next. Returns the base of the array. next contains the next page in
-the font.
+Builds an array of bits in map marking the
+Unicode coverage of a for page containing
+*next (see the
+FcCharSetFirstPage description for details).
+*next is set to contains the base code point
+for the next page in a. Returns the base of
+code point for the page, or FC_CHARSET_DONE if
+a does not contain
+*next.
@@
@RET@ FcChar32