changeset 468:60b821f18853

A little here and there.
author roug
date Thu, 03 Oct 2002 21:39:06 +0000
parents b631b0ca676b
children 6b15b51ee3ba
files docs/ccguide/abs.refentry docs/ccguide/access.refentry docs/ccguide/asm.appendix docs/ccguide/basic09.appendix docs/ccguide/ccguide.docbook docs/ccguide/ccguide.pdf docs/ccguide/chain.refentry docs/ccguide/chap1.chapter docs/ccguide/chap2.chapter docs/ccguide/chap3.chapter docs/ccguide/chap4.chapter docs/ccguide/chdir.refentry docs/ccguide/chmod.refentry docs/ccguide/chown.refentry docs/ccguide/close.refentry docs/ccguide/crc.refentry docs/ccguide/creat.refentry docs/ccguide/defdrive.refentry docs/ccguide/dup.refentry docs/ccguide/errors.appendix docs/ccguide/exit.refentry docs/ccguide/feof.refentry docs/ccguide/fflush.refentry docs/ccguide/fopen.refentry docs/ccguide/fread.refentry docs/ccguide/fseek.refentry docs/ccguide/getc.refentry docs/ccguide/getpid.refentry docs/ccguide/gets.refentry docs/ccguide/getstat.refentry docs/ccguide/getuid.refentry docs/ccguide/intercept.refentry docs/ccguide/intro.preface docs/ccguide/isalpha.refentry docs/ccguide/kill.refentry docs/ccguide/longjmp.refentry docs/ccguide/lseek.refentry docs/ccguide/makefile docs/ccguide/mknod.refentry docs/ccguide/modload.refentry docs/ccguide/munlink.refentry docs/ccguide/open.refentry docs/ccguide/os9.refentry docs/ccguide/os9fork.refentry docs/ccguide/pause.refentry docs/ccguide/phases.appendix docs/ccguide/prerr.refentry docs/ccguide/putc.refentry docs/ccguide/puts.refentry docs/ccguide/read.refentry docs/ccguide/sbrk.refentry docs/ccguide/scanf.refentry docs/ccguide/setbuf.refentry docs/ccguide/setime.refentry docs/ccguide/setpr.refentry docs/ccguide/setstat.refentry docs/ccguide/setuid.refentry docs/ccguide/signal.refentry docs/ccguide/stacksize.refentry docs/ccguide/strass.refentry docs/ccguide/toupper.refentry docs/ccguide/tsleep.refentry docs/ccguide/ungetc.refentry docs/ccguide/unlink.refentry docs/ccguide/wait.refentry docs/ccguide/write.refentry
diffstat 66 files changed, 372 insertions(+), 122 deletions(-) [+]
line wrap: on
line diff
--- a/docs/ccguide/abs.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/abs.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,14 +1,14 @@
 <refentry id="abs">
 <refnamediv>
-<refname>abs</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Abs</refname>
+<refpurpose>Absolute value</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
 <funcprototype>
   <funcdef><function>abs</function></funcdef>
-  <paramdef>type <parameter>arg1</parameter></paramdef>
+  <paramdef>int <parameter>i</parameter></paramdef>
 </funcprototype>
 </funcsynopsis>
 
--- a/docs/ccguide/access.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/access.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,14 +1,15 @@
 <refentry id="access">
 <refnamediv>
-<refname>access</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Access</refname>
+<refpurpose>give file accessibility</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
 <funcprototype>
   <funcdef><function>access</function></funcdef>
-  <paramdef>type <parameter>arg1</parameter></paramdef>
+  <paramdef>char *<parameter>name</parameter></paramdef>
+  <paramdef>int <parameter>perm</parameter></paramdef>
 </funcprototype>
 </funcsynopsis>
 
--- a/docs/ccguide/asm.appendix	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/asm.appendix	Thu Oct 03 21:39:06 2002 +0000
@@ -1,9 +1,52 @@
 <appendix>
 <title>Relocating Macro Assembler Reference</title>
 <para>
-The error codes are shown in both hexadecimal (first column) and
-decimal (second column). Error codes other than those listed are
-generated by programming languages or user programs.
+This appendix gives a summary of the operation of the "Relocating
+Macro Assembler" (named c.asm as distributed with the C Compiler).
+This appendix and the example assembly source files supplied with
+the C compiler should provide the basic information on how to use the
+"Relocating Macro Assembler" to create relocatable-object format
+files (ROF). It is further assumed that you are familiar with the
+6809 instruction set and mnemonics. See the Microware Relocating
+Assembler Manual for a more detailed description. The main function
+of this appendix is to enable the reader to understand the output
+produced by c.asm. The Relocating Macro Assembler allows programs
+to be compiled separately and then linked together, and it also
+allows macros to be defined within programs.
+</para>
+<para>
+Differences between the Relocating Macro Assembler (RMA) and the
+Microware Interactive Assembler (MIA):
+</para>
+<blockquote>
+<para>
+RMA does not have an interactive mode. Only a disk file is
+allowed as input.
 </para>
-
+<para>
+RMA output is an ROF file. The ROF file must be processed by
+the linker to produce an executable OS9 memory module. The
+layout of the ROF file is described later.
+</para>
+<para>
+RMA has a number of new directives to control the placement of
+code and data in the executable module. Since RMA does not
+produce memory modules, the MIA directives "mod" and "emod" are
+not present. Instead, new directives PSECT and VSECT control
+the allocation of code and data areas by the linker.
+</para>
+<para>
+RMA has no equivalent to the MIA "setdp" directive. Data (and
+DP) allocation is handled by the linker.
+</para>
+</blockquote>
+<section>
+    <title>Symbolic Names</title>
+<para>
+A symbolic name is valid if it consists of from one to nine
+uppercase or lowercase characters, decimal digits or the characters
+"$", "_", "." or "@". RMA does not fold lowercase letters to
+uppercase. The names "Hi.you" and "HI.YOU" are distinct names.
+</para>
+</section>
 </appendix>
--- a/docs/ccguide/basic09.appendix	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/basic09.appendix	Thu Oct 03 21:39:06 2002 +0000
@@ -1,9 +1,12 @@
 <appendix>
 <title>Interfacing to Basic09</title>
 <para>
-The error codes are shown in both hexadecimal (first column) and
-decimal (second column). Error codes other than those listed are
-generated by programming languages or user programs.
+The object code generated by the Microware C Compiler can be made
+callable from the BASIC09 "RUN" statement. Certain portions of a
+BASIC09 program written in C can have a drmatic effect on execution
+speed. To effectively utilize this feature, one must be familiar
+with both C and BASIC09 internal data representation and procedure
+calling protocol.
 </para>
 
 </appendix>
--- a/docs/ccguide/ccguide.docbook	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/ccguide.docbook	Thu Oct 03 21:39:06 2002 +0000
@@ -123,14 +123,15 @@
 </revhistory>
 </bookinfo>
 
-<dedication>
+<preface>
+<title>Acknowledgements</title>
 <para>
 Thw OS-9 C Compiler was written by James McCosh with OS-9
 implementation assistance from Terry Crane and Kim Kempf. The
 Relocatable Assembler, Linker, and Profiler was edited by Wes Camden and
 Ken Kaplan.
 </para>
-</dedication>
+</preface>
 
 &preface;
 &chap1;
Binary file docs/ccguide/ccguide.pdf has changed
--- a/docs/ccguide/chain.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/chain.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="chain">
 <refnamediv>
-<refname>chain</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Chain</refname>
+<refpurpose>load and execute a new program</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/chap1.chapter	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/chap1.chapter	Thu Oct 03 21:39:06 2002 +0000
@@ -4,15 +4,27 @@
 <section>
 <title>Introduction</title>
 <para>
-OS-9 has been tailored to run on your standard, unmodified &make;
-Computer. To use it you'll need the following things:
+The "C" programming language is rapidly growing in popularity
+and seems destined to become one of the most popular programming
+languages used for microcomputers. The rapid rise in the use of C
+is not surprising. C is an incredibly versatile and efficient
+language that can handle tasks that previously would have required
+complex assembly language programming.
 </para>
 
 </section>
 <section>
-<title>Starting the System</title>
+<title>The Language Implementation</title>
 <para>
-To start up OS-9 follow these steps:
+OS-9 C is implemented almost exactly as described in 'The C
+Programming Language' by Kernighan and Ritchie (hereafter referred
+to as K&amp;R).
+</para>
+<para>
+Allthough this version of C follows the specification faithfully,
+there are some differences. The differences mostly reflect
+parts of C that are obsolete or the constraints imposed by memory
+size limitations.
 </para>
 </section>
 </chapter>
--- a/docs/ccguide/chap2.chapter	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/chap2.chapter	Thu Oct 03 21:39:06 2002 +0000
@@ -4,15 +4,38 @@
 <section>
 <title>The Object Code Module</title>
 <para>
-OS-9 has been tailored to run on your standard, unmodified &make;
-Computer. To use it you'll need the following things:
+The compiler produces position-independent, reentrant 6809 code
+in a standard OS-9 memory module format. The format of an executable
+program module is shown below. Detailed descriptions of each
+section of the module are given on following pages.
 </para>
+<informalfigure>
+<screen>
+Module
+Offset
 
-</section>
+                 +-------------------------------+
+                 !                               !
+                 !         Module Header         !
+                 !                               !
+                 !-------------------------------!
+                 !       Execution Offset        !
+                 !-------------------------------!
+                 !    Permanent Storage Size     !
+                 !-------------------------------!
+                 !   Data-text Reference Count   !
+                 v                               v
+                 :  Data-text Reference Offsets  :
+                 ^                               ^
+</screen>
+</informalfigure>
 <section>
-<title>Starting the System</title>
+<title>Module Header</title>
 <para>
-To start up OS-9 follow these steps:
+This is a standard module header with the type/language byte set to
+$11 (Program + 6809 Object Code), and the attribute/revision byte
+set to $81 (Reentrant + 1).
 </para>
 </section>
+</section>
 </chapter>
--- a/docs/ccguide/chap3.chapter	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/chap3.chapter	Thu Oct 03 21:39:06 2002 +0000
@@ -11,10 +11,36 @@
 here to enable the programmer to write systems calls into programs
 without looking further.
 </para>
-
-<section>
-<title>System Calls</title>
-
+<para>
+The names used for the system calls are chosen so that programs
+transported from other machines or operating systems should compile
+and run with as little modification as possible. However, care
+should be taken as the parameters and returned values of some calls
+may not be compatible with those on other systems. Programmers that
+are already familiar with OS-9 names and values should take
+particular care. Some calls do not share the same names as the OS-9
+assembly language equivalents. The assembly language equivalent
+call is shown, where there is one, on the relevant page of the C
+call description, and a cross-reference list is provided for those
+already familiar with OS-9 calls.
+</para>
+<para>
+The normal error indication on return from a system call is a
+returned value of -1. The relevant error will be found in the
+predefined int "errno". Errno always contains the error from the last
+erroneous system call. Definitions for the errors for inclusion in
+the programs are in "&lt;errno.h&gt;".
+</para>
+<para>
+In the "SEE ALSO" sections on the following pages, unless
+otherwise stated, the references are to other system calls.
+</para>
+<para>
+Where "#include" files are shown, it is not mandatory to include
+them, but it might be convenient to use the manifest constants
+defined in them rather than integers; it certainly makes for
+more readable programs.
+</para>
 &abortref;
 &absref;
 &accessref;
@@ -56,5 +82,4 @@
 &waitref;
 &writeref;
 
-</section>
 </chapter>
--- a/docs/ccguide/chap4.chapter	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/chap4.chapter	Thu Oct 03 21:39:06 2002 +0000
@@ -4,9 +4,14 @@
 The Standard Library contains functions which fall into two
 classes: high-level I/O and convenience.
 </para>
+<para>
+The high-level I/O functions provide facilities that are
+normally considered part of the definition of other languages; for
+example, the FORMAT "statement" of Fortran. In addition, automatic
+buffering of I/O channels improves the speed of file access because
+fewer system calls are necessary.
+</para>
 
-<section>
-<title>Function Calls</title>
 &atofref;
 &fflushref;
 &feofref;
@@ -31,5 +36,4 @@
 &systemref;
 &toupperref;
 &ungetcref;
-</section>
 </chapter>
--- a/docs/ccguide/chdir.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/chdir.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,8 @@
 <refentry id="chdir">
 <refnamediv>
-<refname>chdir</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Chdir</refname>
+<refname>Chxdir</refname>
+<refpurpose>change directory</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/chmod.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/chmod.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,14 @@
 <refentry id="chmod">
 <refnamediv>
-<refname>chmod</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Chmod</refname>
+<refpurpose>change access permissions of a file</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;modes.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>chmod</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/chown.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/chown.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="chown">
 <refnamediv>
-<refname>chown</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Chown</refname>
+<refpurpose>change the ownership of a file</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/close.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/close.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="close">
 <refnamediv>
-<refname>close</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Close</refname>
+<refpurpose>close a file</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/crc.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/crc.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="crc">
 <refnamediv>
-<refname>crc</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Crc</refname>
+<refpurpose>compute a cyclic redundancy count</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/creat.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/creat.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,14 @@
 <refentry id="creat">
 <refnamediv>
-<refname>creat</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Creat</refname>
+<refpurpose>create a file</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;modes.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>creat</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/defdrive.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/defdrive.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="defdrive">
 <refnamediv>
-<refname>defdrive</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Defdrive</refname>
+<refpurpose>get default system drive</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/dup.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/dup.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="dup">
 <refnamediv>
-<refname>dup</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Dup</refname>
+<refpurpose>duplicate an open path number</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/errors.appendix	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/errors.appendix	Thu Oct 03 21:39:06 2002 +0000
@@ -5,5 +5,24 @@
 decimal (second column). Error codes other than those listed are
 generated by programming languages or user programs.
 </para>
+<variablelist>
+<varlistentry><term>already a local variable</term>
+<listitem>
+<para>
+Variable has already been declared at the current block level.
+(8.1, 9.2)
+</para>
+</listitem>
+</varlistentry>
 
+<varlistentry><term>argument : &lt;text&gt;</term>
+<listitem>
+<para>
+Error from preprocessor. Self-explanatory. Most common cause
+of this error is not being able to find an include file.
+</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
 </appendix>
--- a/docs/ccguide/exit.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/exit.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,8 @@
 <refentry id="exit">
 <refnamediv>
-<refname>exit</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Exit</refname>
+<refname>_Exit</refname>
+<refpurpose>task termination</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/feof.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/feof.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>feof</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/fflush.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/fflush.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>fflush</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/fopen.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/fopen.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>fopen</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/fread.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/fread.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>fread</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/fseek.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/fseek.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>fseek</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/getc.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/getc.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>getc</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/getpid.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/getpid.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="getpid">
 <refnamediv>
-<refname>getpid</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Getpid</refname>
+<refpurpose>get the task id</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/gets.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/gets.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>gets</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/getstat.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/getstat.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,14 @@
 <refentry id="getstat">
 <refnamediv>
-<refname>getstat</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Getstat</refname>
+<refpurpose>get file status</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;sgstat.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>getstat</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/getuid.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/getuid.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="getuid">
 <refnamediv>
-<refname>getuid</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Getuid</refname>
+<refpurpose>return user id</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/intercept.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/intercept.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="intercept">
 <refnamediv>
-<refname>intercept</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Intercept</refname>
+<refpurpose>set function for interrupt processing</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/intro.preface	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/intro.preface	Thu Oct 03 21:39:06 2002 +0000
@@ -3,13 +3,36 @@
 <para>
 This package contains the OS-9 C Compiler Version 1.1. Many
 improvements and bug fixes have been incorporated since the V1.0
-release. If you are upgrading from V1.0
+release. If you are upgrading from V1.0, be <emphasis>absolutely sure</emphasis>
+to all <emphasis>all</emphasis> the files from the V1.1 disks. None of the
+compiler sections or the library is compatible with V1.0 files. Any ".r" or
+".a" files produced by the V1.0 compiler should not be assembled or
+linked with any ".a" or ".r" files produced by the V1.1 compiler.
+To be safe, recompile/reassemble <emphasis>all</emphasis> ".a" and ".r"
+files with V.1.1.
 </para>
 <para>
-This update...
+This update include appendices for the C Compiler User's Guide
+describing the compiler error messages, compiler phase command
+lines, interfacing C functions to BASIC09, and an overview of the
+relocating macro assembler.
 </para>
-
 <para>
 The remainder of this notice describes the changes made since V1.0.
 </para>
+
+<variablelist>
+<varlistentry><term>General:</term>
+<listitem>
+<para>
+The compiler code generator and c.opt have been improved to
+produce even smaller object code. This, and improved source
+coding, has resulted in a 1 page decrease in the size of c.comp
+and a 4 page decrease in c.pass1.
+</para>
+</listitem>
+</varlistentry>
+
+
+</variablelist>
 </preface>
--- a/docs/ccguide/isalpha.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/isalpha.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;ctype.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>isalpha</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/kill.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/kill.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,14 @@
 <refentry id="kill">
 <refnamediv>
-<refname>kill</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Kill</refname>
+<refpurpose>send an interrupt to a task</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;signal.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>kill</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/longjmp.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/longjmp.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;setjmp.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>longjmp</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/lseek.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/lseek.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="lseek">
 <refnamediv>
-<refname>lseek</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Lseek</refname>
+<refpurpose>position in file</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/makefile	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/makefile	Thu Oct 03 21:39:06 2002 +0000
@@ -6,8 +6,8 @@
 STDLIB= atof.refentry fflush.refentry feof.refentry findstr.refentry \
     fopen.refentry fread.refentry fseek.refentry getc.refentry \
     gets.refentry isalpha.refentry l3tol.refentry longjmp.refentry \
-    malloc.refentry mktemp.refentry putc.refentry puts.refentry \
-    qsort.refentry scanf.refentry setbuf.refentry sleep.refentry \
+    malloc.refentry mktemp.refentry printf.refentry putc.refentry \
+    puts.refentry qsort.refentry scanf.refentry setbuf.refentry sleep.refentry \
     strcat.refentry system.refentry toupper.refentry ungetc.refentry
 
 APPS=asm.appendix basic09.appendix errors.appendix phases.appendix
@@ -18,11 +18,10 @@
     exit.refentry getpid.refentry getstat.refentry getuid.refentry \
     intercept.refentry kill.refentry lseek.refentry mknod.refentry \
     modload.refentry munlink.refentry open.refentry os9fork.refentry \
-    os9.refentry pause.refentry prerr.refentry printf.refentry \
-    read.refentry sbrk.refentry setime.refentry setpr.refentry \
-    setstat.refentry setuid.refentry signal.refentry stacksize.refentry \
-    strass.refentry tsleep.refentry unlink.refentry wait.refentry \
-    write.refentry
+    os9.refentry pause.refentry prerr.refentry read.refentry \
+    sbrk.refentry setime.refentry setpr.refentry setstat.refentry \
+    setuid.refentry signal.refentry stacksize.refentry strass.refentry \
+    tsleep.refentry unlink.refentry wait.refentry write.refentry
 
 SUPPORT=$(PREFACE) $(CHAPTERS) $(APPS) $(STDLIB) $(SYSCALL)
 
--- a/docs/ccguide/mknod.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/mknod.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,14 @@
 <refentry id="mknod">
 <refnamediv>
-<refname>mknod</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Mknod</refname>
+<refpurpose>create a directory</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;modes.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>mknod</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/modload.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/modload.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,14 @@
 <refentry id="modload">
 <refnamediv>
-<refname>modload</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Modload</refname>
+<refpurpose>return a pointer to a module structure</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;module.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>modload</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/munlink.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/munlink.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,14 @@
 <refentry id="munlink">
 <refnamediv>
-<refname>munlink</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Munlink</refname>
+<refpurpose>unlink a module</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;module.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>munlink</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/open.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/open.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="open">
 <refnamediv>
-<refname>open</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Open</refname>
+<refpurpose>open a file for read/write access</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/os9.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/os9.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,13 +1,16 @@
 <refentry id="os9">
 <refnamediv>
-<refname>os9</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>_os9</refname>
+<refpurpose>system call interface from C programs</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;os9.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
-  <funcdef><function>os9</function></funcdef>
+  <funcdef><function>_os9</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
 </funcprototype>
 </funcsynopsis>
--- a/docs/ccguide/os9fork.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/os9fork.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="os9fork">
 <refnamediv>
-<refname>os9fork</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Os9fork</refname>
+<refpurpose>create a process</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/pause.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/pause.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="pause">
 <refnamediv>
-<refname>pause</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Pause</refname>
+<refpurpose>halt and wait for interrupt</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/phases.appendix	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/phases.appendix	Thu Oct 03 21:39:06 2002 +0000
@@ -1,9 +1,19 @@
 <appendix>
 <title>Compiler Phase Command Lines</title>
 <para>
-The error codes are shown in both hexadecimal (first column) and
-decimal (second column). Error codes other than those listed are
-generated by programming languages or user programs.
+This appendix decsribes the command lines and options for the
+individual compiler phases. Each phase of the compiler may be
+executed separately. The following information describes the
+options available to each phase.
 </para>
 
+<variablelist>
+<varlistentry><term>cc1 &amp; cc2 (C executives)</term>
+<listitem>
+<para>
+cc [options] file {file} [options]
+</para>
+</listitem>
+</varlistentry>
+</variablelist>
 </appendix>
--- a/docs/ccguide/prerr.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/prerr.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="prerr">
 <refnamediv>
-<refname>prerr</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Prerr</refname>
+<refpurpose>print error message</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/putc.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/putc.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>putc</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/puts.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/puts.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>puts</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/read.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/read.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="read">
 <refnamediv>
-<refname>read</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Read</refname>
+<refpurpose>read from a file</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/sbrk.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/sbrk.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="sbrk">
 <refnamediv>
-<refname>sbrk</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Sbrk</refname>
+<refpurpose>request additional working memory</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/scanf.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/scanf.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>scanf</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/setbuf.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/setbuf.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>setbuf</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/setime.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/setime.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,15 @@
 <refentry id="setime">
 <refnamediv>
-<refname>setime</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Setime</refname>
+<refname>Getime</refname>
+<refpurpose>set and get system time</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;time.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>setime</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/setpr.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/setpr.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="setpr">
 <refnamediv>
-<refname>setpr</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Setpr</refname>
+<refpurpose>set process priority</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/setstat.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/setstat.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,14 @@
 <refentry id="setstat">
 <refnamediv>
-<refname>setstat</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Setstat</refname>
+<refpurpose>set file status</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;sgstat.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>setstat</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/setuid.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/setuid.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="setuid">
 <refnamediv>
-<refname>setuid</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Setuid</refname>
+<refpurpose>set user id</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/signal.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/signal.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,11 +1,14 @@
 <refentry id="signal">
 <refnamediv>
-<refname>signal</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Signal</refname>
+<refpurpose>catch or ignore interrupts</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;signal.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>signal</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/stacksize.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/stacksize.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,14 +1,19 @@
 <refentry id="stacksize">
 <refnamediv>
-<refname>stacksize</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Stacksize</refname>
+<refname>Freemem</refname>
+<refpurpose>obtain stack reservation size</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
 <funcprototype>
   <funcdef><function>stacksize</function></funcdef>
-  <paramdef>type <parameter>arg1</parameter></paramdef>
+  <void>
+</funcprototype>
+<funcprototype>
+  <funcdef><function>freemem</function></funcdef>
+  <void>
 </funcprototype>
 </funcsynopsis>
 
--- a/docs/ccguide/strass.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/strass.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,13 +1,13 @@
 <refentry id="strass">
 <refnamediv>
-<refname>strass</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Strass</refname>
+<refpurpose>byte by byte copy</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
 <funcsynopsis>
 <funcprototype>
-  <funcdef><function>strass</function></funcdef>
+  <funcdef><function>_strass</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
 </funcprototype>
 </funcsynopsis>
--- a/docs/ccguide/toupper.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/toupper.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;ctype.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>toupper</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/tsleep.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/tsleep.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="tsleep">
 <refnamediv>
-<refname>tsleep</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Tsleep</refname>
+<refpurpose>put process to sleep</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/ungetc.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/ungetc.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -6,6 +6,9 @@
 
 <refsynopsisdiv>
 <funcsynopsis>
+<funcsynopsisinfo>
+#include &lt;stdio.h&gt;
+</funcsynopsisinfo>
 <funcprototype>
   <funcdef><function>ungetc</function></funcdef>
   <paramdef>type <parameter>arg1</parameter></paramdef>
--- a/docs/ccguide/unlink.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/unlink.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="unlink">
 <refnamediv>
-<refname>unlink</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Unlink</refname>
+<refpurpose>remove directory entry</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/wait.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/wait.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,7 @@
 <refentry id="wait">
 <refnamediv>
-<refname>wait</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Wait</refname>
+<refpurpose>wait for task termination</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>
--- a/docs/ccguide/write.refentry	Thu Oct 03 21:38:01 2002 +0000
+++ b/docs/ccguide/write.refentry	Thu Oct 03 21:39:06 2002 +0000
@@ -1,7 +1,8 @@
 <refentry id="write">
 <refnamediv>
-<refname>write</refname>
-<refpurpose>Placeholder</refpurpose>
+<refname>Write</refname>
+<refname>Writeln</refname>
+<refpurpose>write to a file or device</refpurpose>
 </refnamediv>
 
 <refsynopsisdiv>