<!doctype linuxdoc system>
<article>
-
<title>Atari 5200 specific information for cc65
<author>
<url url="mailto:chris@groessler.org" name="Christian Groessler"><newline>
-<date>2014-05-27
<abstract>
An overview over the Atari 5200 runtime system as it is implemented for the
<tag/Text screen/
The text screen is only enabled if any of the CONIO output functions
is used in the program. Its size is 20x24 characters (Antic mode 6,
- BASIC mode 1). The text screen is located at $3E00. The
+ BASIC mode 1) by default. The text screen is located at $3E00. The
address of the screen memory is available at runtime in the variable
SAVMSC ($001B).<p>
If the program doesn't use any CONIO output functions it needs to setup its own
<sect>Limitations<p>
+
+<sect1>Direct console I/O<p>
+
+The <tt/atari5200/ target uses Antic mode 6 (BASIC mode 1) for the console
+screen by default. There are four colors available:
+
+<itemize>
+<item><tt/COLOR_WHITE/
+<item><tt/COLOR_RED/
+<item><tt/COLOR_GREEN/
+<item><tt/COLOR_BLACK/
+</itemize>
+
+Note that the <tt/COLOR_GREEN/ and <tt/COLOR_RED/ colors aren't
+exactly the same colors as the ones with the same name on the
+<tt/atari/ target.
+They are the colors which are available as <tt/COLOR_LIGHTGREEN/
+and <tt/COLOR_LIGHTRED/ there.
+
+One can set the color shadow registers directly with other colors.
+Then the color defines from above will just become placeholders. In
+this scenario it might be more convenient to use index values (0..3)
+instead of the color defines. The index values specify which of the
+system shadow color registers (<tt/COLOR0/ .. <tt/COLOR3/) to use.
+
+The default console screen has a layout of 20x24 characters. An
+alternative layout, 20x12, Antic mode 7, BASIC mode 2, is provided in
+the file <tt/atari5200-conioscreen-20x12.o/.
+
+Using <tt/atari5200-conioscreen-20x12.o/ is as simple as placing it on
+the linker command line like this:
+
+<tscreen><verb>
+cl65 -t atari5200 myprog.c lib/atari5200-conioscreen-20x12.o
+</verb></tscreen>
+
+
<sect1>Disk I/O<p>
Disk I/O is not supported by the <tt/atari5200/ target. This means that
<sect>Other hints<p>
+AtariROMMaker (<url url="https://www.wudsn.com/index.php/productions-atari800/tools/atarirommaker"> )
+can be used to create a <tt/.CAR/ file from the binary ROM image cc65 generates.
+This might be more convenient when working with emulators.
<sect>License<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>