<!doctype linuxdoc system>
<article>
-
<title>Commodore 64-specific information for cc65
<author><url url="mailto:uz@cc65.org" name="Ullrich von Bassewitz"><newline>
<url url="mailto:greg.king5@verizon.net" name="Greg King">
-<date>2017-01-18
<abstract>
An overview over the C64 runtime system as it is implemented for the cc65 C
<sect1>80 Columns conio driver<p>
The C64 package comes with an alternative software driven 80 columns
-module <tt/c64-soft80.o/ which uses the memory under I/O between $d000
-and $ffff.
+module <tt/c64-soft80.o/ which uses the memory under I/O between $D000
+and $FF3F.
In memory constrained situations the memory from $400 to $7FF
can be made available to a program by calling <tt/_heapadd ((void *) 0x0400, 0x0400);/
<itemize>
<item>detect_c128
<item>detect_c64dtv
+<item>detect_c65
+<item>detect_chameleon
<item>detect_scpu
+<item>detect_turbomaster
<item>get_c128_speed
<item>get_c64dtv_speed
+<item>get_c65_speed
+<item>get_chameleon_speed
<item>get_scpu_speed
+<item>get_turbomaster_speed
<item>set_c128_speed
<item>set_c64dtv_speed
+<item>set_c65_speed
+<item>set_chameleon_speed
<item>set_scpu_speed
+<item>set_turbomaster_speed
</itemize>
<item>cbm_k_basin
<item>cbm_k_bsout
<item>cbm_k_clrch
+<item>cbm_k_tksa
+<item>cbm_k_second
<item>cbm_load
<item>cbm_open
<item>cbm_opendir
bytes each. Written and contributed by Marco van den Heuvel.
<tag><tt/c64-ram.emd (c64_ram_emd)/</tag>
- A driver for the hidden RAM below the I/O area and kernal ROM. Supports 48
+ A driver for the hidden RAM below the I/O area and kernal ROM. Supports 47
256 byte pages. Please note that this driver is incompatible with any of the
graphics drivers, or the soft80 conio driver!
<sect>Limitations<p>
+<sect1>Realtime clock<p>
+
+The realtime clock functions use the CIA1 TOD clock. As that clock only stores
+the time but not the date, the date set by <tt/clock_settime()/ is simply stored
+inside the C library for retrieval in the same program via <tt/clock_gettime()/.
+
+
<sect>Other hints<p>