<!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);/
url="funcref.html" name="function reference"> for declaration and usage.
<itemize>
-<item>detect_c64dtv
<item>detect_c128
+<item>detect_c64dtv
+<item>detect_c65
+<item>detect_chameleon
<item>detect_scpu
-<item>get_c64dtv_speed
+<item>detect_turbomaster
<item>get_c128_speed
+<item>get_c64dtv_speed
+<item>get_c65_speed
+<item>get_chameleon_speed
<item>get_scpu_speed
-<item>set_c64dtv_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>
freely, subject to the following restrictions:
<enum>
-<item> The origin of this software must not be misrepresented; you must not
- claim that you wrote the original software. If you use this software
- in a product, an acknowledgment in the product documentation would be
- appreciated but is not required.
-<item> Altered source versions must be plainly marked as such, and must not
- be misrepresented as being the original software.
-<item> This notice may not be removed or altered from any source
- distribution.
+<item> The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+<item> Altered source versions must be plainly marked as such, and must not
+ be misrepresented as being the original software.
+<item> This notice may not be removed or altered from any source
+ distribution.
</enum>
</article>