Viitor_cc65/usr/share/doc/cc65/webdoc/atari-5.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

131 lines
4.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>Atari specific information for cc65: Loadable drivers</TITLE>
<LINK HREF="atari-6.html" REL=next>
<LINK HREF="atari-4.html" REL=previous>
<LINK HREF="atari.html#toc5" REL=contents>
</HEAD>
<BODY>
<A HREF="atari-6.html">Next</A>
<A HREF="atari-4.html">Previous</A>
<A HREF="atari.html#toc5">Contents</A>
<HR>
<H2><A NAME="s5">5.</A> <A HREF="atari.html#toc5">Loadable drivers</A></H2>
<H2><A NAME="ss5.1">5.1</A> <A HREF="atari.html#toc5.1">Graphics drivers</A>
</H2>
<P>Currently there are no graphics drivers available for the Atari platform.
However, the runtime library provides a function named _graphics, with
a mode parameter just like the BASIC GRAPHICS command. This function will
switch to the requested graphics mode.
There are currently no functions available to access the graphics
memory. The access must be implemented manually.</P>
<P>Many graphics modes require more memory than the text screen which is
in effect when the program starts up. Therefore the programmer has to
tell the program beforehand the memory requirements of the graphics
modes the program intends to use.
This can be done by using the __RESERVED_MEMORY__ linker config
variable. The number specified there describes the number of bytes to
subtract from the top of available memory as seen from the runtime
library. This memory is then used by the screen buffer.</P>
<P>The numbers for the different graphics modes presented below should
only be seen as a rule of thumb. Since the screen buffer memory needs
to start at specific boundaries, the numbers depend on the current top
of available memory.
The following numbers were determined by a BASIC program.</P>
<P>
<BR><CENTER>
<TABLE BORDER><TR><TD>
graphics mode</TD><TD>reserved memory</TD></TR><TR><TD>
0</TD><TD>1</TD></TR><TR><TD>
1</TD><TD>1</TD></TR><TR><TD>
2</TD><TD>1</TD></TR><TR><TD>
3</TD><TD>1</TD></TR><TR><TD>
4</TD><TD>1</TD></TR><TR><TD>
5</TD><TD>182</TD></TR><TR><TD>
6</TD><TD>1182</TD></TR><TR><TD>
7</TD><TD>3198</TD></TR><TR><TD>
8</TD><TD>7120</TD></TR><TR><TD>
9</TD><TD>7146</TD></TR><TR><TD>
10</TD><TD>7146</TD></TR><TR><TD>
11</TD><TD>7146</TD></TR><TR><TD>
12</TD><TD>162</TD></TR><TR><TD>
13</TD><TD>1</TD></TR><TR><TD>
14</TD><TD>3278</TD></TR><TR><TD>
15</TD><TD>7120</TD></TR><TR><TD>
16</TD><TD>1</TD></TR><TR><TD>
17</TD><TD>1</TD></TR><TR><TD>
18</TD><TD>1</TD></TR><TR><TD>
19</TD><TD>1</TD></TR><TR><TD>
20</TD><TD>1</TD></TR><TR><TD>
21</TD><TD>184</TD></TR><TR><TD>
22</TD><TD>1192</TD></TR><TR><TD>
23</TD><TD>3208</TD></TR><TR><TD>
24</TD><TD>7146</TD></TR><TR><TD>
25</TD><TD>7146</TD></TR><TR><TD>
26</TD><TD>7146</TD></TR><TR><TD>
27</TD><TD>7146</TD></TR><TR><TD>
28</TD><TD>160</TD></TR><TR><TD>
29</TD><TD>1</TD></TR><TR><TD>
30</TD><TD>3304</TD></TR><TR><TD>
31</TD><TD>7146
</TD></TR></TABLE>
<CAPTION>reserved memory required for different graphics modes</CAPTION>
</CENTER><BR>
</P>
<P>The values of "1" are needed because the graphics command crashes if
it doesn't have at least one byte available. This seems to be a bug of
the Atari ROM code.</P>
<H2><A NAME="ss5.2">5.2</A> <A HREF="atari.html#toc5.2">Extended memory drivers</A>
</H2>
<P>Currently there are no extended memory drivers available for the Atari
platform.</P>
<H2><A NAME="ss5.3">5.3</A> <A HREF="atari.html#toc5.3">Joystick drivers</A>
</H2>
<P>
<DL>
<DT><B><CODE>atari-stdjoy.joy</CODE></B><DD><P>Supports up to four standard joysticks connected to the joystick ports of
the Atari.</P>
</DL>
</P>
<H2><A NAME="ss5.4">5.4</A> <A HREF="atari.html#toc5.4">Mouse drivers</A>
</H2>
<P>Currently no drivers available (in fact, the API for loadable mouse drivers
does not exist). There is a static driver you can use.</P>
<H2><A NAME="ss5.5">5.5</A> <A HREF="atari.html#toc5.5">RS232 device drivers</A>
</H2>
<P>Currently there are no RS232 loadable drivers available for the Atari
platform. There is a static driver you can use.</P>
<HR>
<A HREF="atari-6.html">Next</A>
<A HREF="atari-4.html">Previous</A>
<A HREF="atari.html#toc5">Contents</A>
</BODY>
</HTML>