Viitor_cc65/usr/share/doc/cc65/webdoc/c64-4.html
kueller 223cc6685e Neue Version V963
git-svn-id: svn://svn.compuextreme.de/Viitor/V963/Viitor_cc65@5933 504e572c-2e33-0410-9681-be2bf7408885
2011-01-03 10:48:06 +00:00

109 lines
3.1 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.20">
<TITLE>Commodore 64 specific information for cc65: Platform specific header files</TITLE>
<LINK HREF="c64-5.html" REL=next>
<LINK HREF="c64-3.html" REL=previous>
<LINK HREF="c64.html#toc4" REL=contents>
</HEAD>
<BODY>
<A HREF="c64-5.html">Next</A>
<A HREF="c64-3.html">Previous</A>
<A HREF="c64.html#toc4">Contents</A>
<HR>
<H2><A NAME="s4">4.</A> <A HREF="c64.html#toc4">Platform specific header files</A></H2>
<P>Programs containing C64 specific code may use the <CODE>c64.h</CODE> or <CODE>cbm.h</CODE>
header files. Using the later may be an option when writing code for more than
one CBM platform, since it includes <CODE>c64.h</CODE> and declares several functions
common to all CBM platforms.</P>
<H2><A NAME="ss4.1">4.1</A> <A HREF="c64.html#toc4.1">C64 specific functions</A>
</H2>
<P>The functions listed below are special for the C64. See the
<A HREF="funcref.html">function reference</A> for declaration and usage.</P>
<P>
<UL>
<LI>get_ostype</LI>
</UL>
</P>
<H2><A NAME="ss4.2">4.2</A> <A HREF="c64.html#toc4.2">CBM specific functions</A>
</H2>
<P>Some functions are available for all (or at least most) of the Commodore
machines. See the
<A HREF="funcref.html">function reference</A> for
declaration and usage.</P>
<P>
<UL>
<LI>cbm_close</LI>
<LI>cbm_closedir</LI>
<LI>cbm_k_setlfs</LI>
<LI>cbm_k_setnam</LI>
<LI>cbm_k_load</LI>
<LI>cbm_k_save</LI>
<LI>cbm_k_open</LI>
<LI>cbm_k_close</LI>
<LI>cbm_k_readst</LI>
<LI>cbm_k_chkin</LI>
<LI>cbm_k_ckout</LI>
<LI>cbm_k_basin</LI>
<LI>cbm_k_bsout</LI>
<LI>cbm_k_clrch</LI>
<LI>cbm_load</LI>
<LI>cbm_open</LI>
<LI>cbm_opendir</LI>
<LI>cbm_read</LI>
<LI>cbm_readdir</LI>
<LI>cbm_save</LI>
<LI>cbm_write</LI>
<LI>get_tv</LI>
</UL>
</P>
<H2><A NAME="ss4.3">4.3</A> <A HREF="c64.html#toc4.3">Hardware access</A>
</H2>
<P>The following pseudo variables declared in the <CODE>c64.h</CODE> header file do allow
access to hardware located in the address space. Some variables are
structures, accessing the struct fields will access the chip registers.</P>
<P>
<DL>
<DT><B><CODE>VIC</CODE></B><DD><P>The <CODE>VIC</CODE> structure allows access to the VIC II (the graphics
controller). See the <CODE>_vic2.h</CODE> header file located in the include
directory for the declaration of the structure.</P>
<DT><B><CODE>SID</CODE></B><DD><P>The <CODE>SID</CODE> structure allows access to the SID (the sound interface
device). See the <CODE>_sid.h</CODE> header file located in the include directory
for the declaration of the structure.</P>
<DT><B><CODE>CIA1, CIA2</CODE></B><DD><P>Access to the two CIA (complex interface adapter) chips is available via
the <CODE>CIA1</CODE> and <CODE>CIA2</CODE> variables. The structure behind these variables
is explained in <CODE>_6526.h</CODE>.</P>
<DT><B><CODE>COLOR_RAM</CODE></B><DD><P>A character array that mirrors the color RAM of the C64 at $D800.</P>
</DL>
</P>
<HR>
<A HREF="c64-5.html">Next</A>
<A HREF="c64-3.html">Previous</A>
<A HREF="c64.html#toc4">Contents</A>
</BODY>
</HTML>