aboutsummaryrefslogtreecommitdiff
path: root/unix/os/doc/zraloc.hlp
diff options
context:
space:
mode:
Diffstat (limited to 'unix/os/doc/zraloc.hlp')
-rw-r--r--unix/os/doc/zraloc.hlp45
1 files changed, 45 insertions, 0 deletions
diff --git a/unix/os/doc/zraloc.hlp b/unix/os/doc/zraloc.hlp
new file mode 100644
index 00000000..5b423295
--- /dev/null
+++ b/unix/os/doc/zraloc.hlp
@@ -0,0 +1,45 @@
+.help zraloc May84 "System Interface"
+.ih
+NAME
+zraloc -- reallocate memory
+.ih
+SYNOPSIS
+.nf
+zraloc (buffer, nbytes, status)
+
+int buffer # address of buffer
+int nbytes # size of buffer
+int status
+.fi
+.ih
+DESCRIPTION
+The size of the previously allocated buffer pointed to by \fIbuffer\fR is
+changed to \fInbytes\fR. The buffer pointer must be the SPP char address
+returned by a previous call to \fBzmaloc\fR or \fBzraloc\fR.
+If necessary the buffer will be moved and the buffer pointer \fIbuffer\fR
+modified to point to the new buffer. If the buffer is moved the contents of
+the buffer are preserved.
+.ih
+RETURN VALUE
+XERR is returned if the buffer pointer is invalid or if the buffer cannot be
+reallocated. XOK is returned if the operation is successful.
+.ih
+NOTES
+The integer \fIbuffer\fR is a memory address in SPP char units with an
+arbitrary zero point, i.e., the type of address returned by \fBzlocva\fR.
+The high level code converts the buffer address into an offset into \fBMem\fR,
+i.e., into an SPP pointer.
+
+.nf
+ char_pointer_into_Mem = buffer - zlocva(Memc) + 1
+ Memc[char_pointer] = first char of buffer
+.fi
+
+Since the buffer address is returned in char units the buffer must be aligned
+to at least the size of a char; no greater degree of alignment is guaranteed
+nor required. See the specifications of \fBzlocva\fR for additional information
+about addresses and address arithmetic.
+.ih
+SEE ALSO
+zmaloc, zmfree, zlocva
+.endhelp