]> git.sur5r.net Git - cc65/blobdiff - doc/c128.sgml
Forgot to add the new module that contains em_load_driver.
[cc65] / doc / c128.sgml
index fdbba63a71362ed0a219b97b33d2645b818439a2..d691e3cd77758292736a02fae7a7f29bea20be20 100644 (file)
@@ -32,10 +32,10 @@ information.
 <sect>Binary format<p>
 
 The standard binary output format generated by the linker for the C128 target
-is a machine language program with a one line BASIC stub. This means that a
-program can be loaded as BASIC program and started with RUN. It is of course
-possible to change this behaviour by using a modified startup file and linker
-config.
+is a machine language program with a one line BASIC stub, which calls the
+machine language part via SYS. This means that a program can be loaded as
+BASIC program and started with RUN. It is of course possible to change this
+behaviour by using a modified startup file and linker config.
 
 
 <sect>Memory layout<p>
@@ -43,12 +43,12 @@ config.
 cc65 generated programs with the default setup run with the I/O area and the
 kernal ROM enabled. Note that this is a non standard memory layout, and that
 there is no "memory configuration index" for this layout. This means that
-special case has to be taken when changing the configuration, or calling any
+special care has to be taken when changing the configuration, or calling any
 code that does this. The memory configuration register at &dollar;FF00 should
 be saved and restored instead of relying on the memory configuration index
 stored in the zero page.
 
-The setup gives a usable memory range of &dollar;1C00 - &dollar;CFFF. Having
+The setup gives a usable memory range of &dollar;1C00 - &dollar;BFFF. Having
 just the kernal ROM mapped in means, that kernal entry points may be called
 directly, but using the BASIC ROM is not possible without additional code.
 
@@ -59,7 +59,7 @@ Special locations:
   The text screen is located at &dollar;400 (as in the standard setup).
 
   <tag/Stack/
-  The C runtime stack is located at &dollar;CFFF and growing downwards.
+  The C runtime stack is located at &dollar;BFFF and growing downwards.
 
   <tag/Heap/
   The C heap is located at the end of the program and grows towards the C
@@ -83,7 +83,7 @@ The functions listed below are special for the C128. See the <htmlurl
 url="funcref.html" name="function reference"> for declaration and usage.
 
 <itemize>
-<item>toggle_videomode
+<item>videomode
 <item>c64mode
 <item>fast
 <item>slow
@@ -151,7 +151,7 @@ structures, accessing the struct fields will access the chip registers.
   is explained in <tt/_6526.h/.
 
   <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 C128 at &dollar;D800.
 
 </descrip><p>
 
@@ -195,6 +195,15 @@ missing on VDC and are translated to the two colors missing from VIC palette.
   An extended memory driver for the RAM in page 1. The common memory area is
   excluded, so this driver supports 251 pages of 256 bytes each.
 
+  <tag><tt/c128-ram2.emd/</tag>
+
+  An extended memory driver for the RAM in pages 1-3. The common memory area
+  is excluded, so this driver supports up to 731 pages of 256 bytes each. The
+  driver can be used as a full replacement for <tt/c128-ram.emd/, because RAM
+  in pages 2+3 is autodetected, but it's larger and there are not many
+  machines with RAM in banks 2+3, so it has been made a separate driver. The
+  additional code was contributed by Marco van den Heuvel.
+
   <tag><tt/c128-ramcart.emd/</tag>
   A driver for the RamCart 64/128 written and contributed by Maciej Witkowiak.
   Will test the hardware for the available RAM.
@@ -235,8 +244,20 @@ missing on VDC and are translated to the two colors missing from VIC palette.
 
 <sect1>Mouse drivers<p>
 
-Currently no drivers available (in fact, the API for loadable mouse drivers
-does not exist).
+<descrip>
+
+  <tag><tt/c128-1351.mou/</tag>
+  Supports a standard mouse connected to port #0 of the C128.
+
+  <tag><tt/c128-joy.mou/</tag>
+  Supports a mouse emulated by a standard joystick e.g. 1350 mouse in port
+  #1 of the C128.
+
+  <tag><tt/c128-pot.mou/</tag>
+  Supports a potentiometer device e.g. Koala Pad connected to port #1 of
+  the C128.
+
+</descrip><p>
 
 
 <sect1>RS232 device drivers<p>
@@ -291,7 +312,7 @@ The program return code (low byte) is passed back to BASIC by use of the
 
 <sect1>Interrupts<p>
 
-The runtime for the C128 uses routines marked as <tt/.CONDES/ type 2 for
+The runtime for the C128 uses routines marked as <tt/.INTERRUPTOR/ for
 interrupt handlers. Such routines must be written as simple machine language
 subroutines and will be called automatically by the interrupt handler code
 when they are linked into a program. See the discussion of the <tt/.CONDES/
@@ -330,7 +351,3 @@ freely, subject to the following restrictions:
 </enum>
 
 </article>
-
-
-
-