Added memsrch function to VVS stdlib.
[vvhitespace] / stdlib / README.md
index e56080f..925c82c 100644 (file)
@@ -25,9 +25,28 @@ following reservations:
 The following labels are entry points to stdlib functions. Read the
 header comment for each function to learn the call and return stack.
 
-    stdio.pvvs:
-           1000 - print string from stack
-           1001 - print string from heap
+         000xxx - reserved
+         001xxx - print functions
+           1000 ----- print string from stack       (stdio.pvvs)
+           1001 ----- print string from heap        (stdio.pvvs)
+           1010 ----- print number from stack       (stdio.pvvs)
+         010xxx - math functions
+          10000 ----- random                        (math.pvvs)
+          10001 ----- absolute value                (math.pvvs)
+         011xxx - heap functions
+          11000 ----- memset                        (heap.pvvs)
+          11001 ----- memcpy                        (heap.pvvs)
+          11010 ----- memrand                       (heap.pvvs)
+          11011 ----- memcmp                        (heap.pvvs)
+          11100 ----- memsrch                       (heap.pvvs)
+         100xxx - unassigned
+         101xxx - unassigned
+         110xxx - conversion functions
+         111xxx - debug functions
+         111000 ----- dump heap                     (debug.pvvs)
+        1xxxxxx - reserved for less common entry points
+        1000000 ----- print sign of number          (stdio.pvvs)
+        1000001 ----- print magnitude of number     (stdio.pvvs)
 
 # Misc #
 
@@ -37,3 +56,6 @@ private label space associated with it, formed as follows:
     00001000 xxxxxxxx - for use by 1000
     00001001 xxxxxxxx - for use by 1001
     ...etc
+
+Also by convention, functions which return a pointer will use the value `0` to
+represent a `NULL` pointer.