]> git.sur5r.net Git - cc65/blobdiff - doc/plus4.sgml
Ignore start address in cbm_opendir. Rearrange the code somewhat to make it
[cc65] / doc / plus4.sgml
index 712afbabe31c588fe152bead427f54bd97c123ea..2fce4d86a5122f57fb67fcb54ca9956ad1b1a423 100644 (file)
@@ -31,8 +31,8 @@ information.
 Since the Plus/4 and the Commodore 16/116 are almost identical (the latter are
 missing the 6551 ACIA and do only have 16KB of memory), the <htmlurl
 url="c16.html" name="C16 documentation"> is also worth a look. The difference
-between both targets is that the Plus/4 runtime uses banking to support full
-64K RAM, while the C16 does not use banking and supports up to 32K RAM.
+between both cc65 targets is that the Plus/4 runtime uses banking to support
+full 64K RAM, while the C16 does not use banking and supports up to 32K RAM.
 Because banking is not needed, most C16 programs will be somewhat smaller than
 the same program compiled for the Plus/4. However, programs compiled for the
 C16 will always run on the Plus/4, while the reverse is not necessarily true.
@@ -138,7 +138,7 @@ structures, accessing the struct fields will access the chip registers.
   declaration of the structure.
 
   <tag><tt/COLOR_RAM/</tag>
-  A character array that mirrors the color RAM of the C64 at &dollar;D800.
+  A character array that mirrors the color RAM of the Plus/4 at &dollar;0800.
 
 </descrip><p>
 
@@ -180,24 +180,50 @@ does not exist).
 <descrip>
 
   <tag><tt/plus4-stdser.ser/</tag>
-  Driver for the 6551 ACIA chip built into the Plus/4 Supports up to 19200
+  Driver for the 6551 ACIA chip built into the Plus/4. Supports up to 19200
   baud, hardware flow control (RTS/CTS) and interrupt driven receives. Note
   that because of the peculiarities of the 6551 chip transmits are not
   interrupt driven, and the transceiver blocks if the receiver asserts flow
   control because of a full buffer.
 
-  Note that you need an adapter to use the builtin port, since the output
-  levels available at the user port don't follow the RS232 standard.
+  You need an adapter to use the builtin port, since the output levels
+  available at the user port don't follow the RS232 standard.
 
 </descrip><p>
 
 
 
+<sect>Limitations<p>
+
+
+
 <sect>Other hints<p>
 
 <sect1>Passing arguments to the program<p>
 
-Command line argument passing is currently not supported for the Plus/4.
+Command line arguments can be passed to <tt/main()/. Since this is not
+supported by BASIC, the following syntax was chosen:
+
+<tscreen><verb>
+    RUN:REM ARG1 " ARG2 IS QUOTED" ARG3 "" ARG5
+</verb></tscreen>
+
+<enum>
+<item>Arguments are separated by spaces.
+<item>Arguments may be quoted.
+<item>Leading and trailing spaces around an argument are ignored. Spaces within
+      a quoted argument are allowed.
+<item>The first argument passed to <tt/main/ is the program name.
+<item>A maximum number of 10 arguments (including the program name) are
+      supported.
+</enum>
+
+
+
+<sect1>Program return code<p>
+
+The program return code (low byte) is passed back to BASIC by use of the
+<tt/ST/ variable.
 
 
 <sect1>Interrupts<p>