X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=doc%2Fvic20.sgml;h=26a4aa55829d8ee8f7bfbfbb66248e711a4c6c01;hb=4cfa3e6f9230d4e68ceb81b6c0147a5557614a0c;hp=562ea002ab2a9da506297a9e215714952933c448;hpb=c3d93d259b65c51ed5ac8e6cd58327af908c9501;p=cc65 diff --git a/doc/vic20.sgml b/doc/vic20.sgml index 562ea002a..26a4aa558 100644 --- a/doc/vic20.sgml +++ b/doc/vic20.sgml @@ -2,10 +2,11 @@
-Commodore VIC20 (aka VC20) specific information for cc65 -<author>Ullrich von Bassewitz, <htmlurl url="mailto:uz@cc65.org" name="uz@cc65.org"> -Stefan A. Haubenthal, <htmlurl url="mailto:polluks@sdf.lonestar.org" name="polluks@sdf.lonestar.org"> -<date>2004-09-13 +<title>Commodore VIC20 (aka VC20 aka VIC1001) specific information for cc65 +<author> +<url url="mailto:uz@cc65.org" name="Ullrich von Bassewitz">,<newline> +<url url="mailto:polluks@sdf.lonestar.org" name="Stefan A. Haubenthal"> +<date>2017-05-18 <abstract> An overview over the VIC20 runtime system as it is implemented for the cc65 C @@ -20,11 +21,11 @@ compiler. <sect>Overview<p> This file contains an overview of the VIC20 runtime system as it comes with the -cc65 C compiler. It describes the memory layout, VIC20 specific header files, +cc65 C compiler. It describes the memory layout, VIC20-specific header files, available drivers, and any pitfalls specific to that platform. -Please note that VIC20 specific functions are just mentioned here, they are -described in detail in the separate <htmlurl url="funcref.html" name="function +Please note that VIC20-specific functions are just mentioned here, they are +described in detail in the separate <url url="funcref.html" name="function reference">. Even functions marked as "platform dependent" may be available on more than one platform. Please see the function reference for more information. @@ -63,24 +64,24 @@ Special locations: -<sect>Platform specific header files<p> +<sect>Platform-specific header files<p> -Programs containing VIC20 specific code may use the <tt/vic20.h/ or <tt/cbm.h/ +Programs containing VIC20-specific code may use the <tt/vic20.h/ or <tt/cbm.h/ header files. Using the later may be an option when writing code for more than one CBM platform, since it includes <tt/vic20.h/ and declares several functions common to all CBM platforms. -<sect1>VIC20 specific functions<p> +<sect1>VIC20-specific functions<p> There are currently no special VIC20 functions. -<sect1>CBM specific functions<p> +<sect1>CBM-specific functions<p> Some functions are available for all (or at least most) of the Commodore -machines. See the <htmlurl url="funcref.html" name="function reference"> for +machines. See the <url url="funcref.html" name="function reference"> for declaration and usage. <itemize> @@ -151,6 +152,8 @@ No extended memory drivers are currently available for the VIC20. <sect1>Joystick drivers<p> +The default drivers, <tt/joy_stddrv (joy_static_stddrv)/, point to <tt/vic20-stdjoy.joy (vic20_stdjoy_joy)/. + <descrip> <tag><tt/vic20-stdjoy.joy (vic20_stdjoy_joy)/</tag> @@ -158,9 +161,9 @@ No extended memory drivers are currently available for the VIC20. <tag><tt/vic20-ptvjoy.joy (vic20_ptvjoy_joy)/</tag> Driver for the Protovision 4-player adapter contributed by Groepaz. See - <htmlurl url="http://www.protovision-online.de/hardw/hardwstart.htm" - name="http://www.protovision-online.de/hardw/hardwstart.htm"> for prices and - building instructions. Up to three joysticks are supported. + <url url="http://www.protovision-online.de/hardw/4_player.php?language=en" + name="Protovision shop"> for prices and building instructions. Up to three + joysticks are supported. </descrip><p> @@ -179,17 +182,20 @@ No VIC1011 drivers are currently available for the VIC20. <sect>Limitations<p> +<sect1>Escape code<p> -<sect>Other hints<p> +The CTRL key cannot be used to type most control characters, +entering an Esc is not possible. -<sect1>Escape code<p> -For an Esc press CTRL and [ key. + +<sect>Other hints<p> + <sect1>Passing arguments to the program<p> -Command line arguments can be passed to <tt/main()/. Since this is not -supported by BASIC, the following syntax was chosen: +Command-line arguments can be passed to <tt/main()/. Since that is not +supported directly by BASIC, the following syntax was chosen: <tscreen><verb> RUN:REM ARG1 " ARG2 IS QUOTED" ARG3 "" ARG5 @@ -200,7 +206,7 @@ supported by BASIC, the following syntax was chosen: <item>Arguments may be quoted. <item>Leading and trailing spaces around an argument are ignored. Spaces within a quoted argument are allowed. -<item>The first argument passed to <tt/main/ is the program name. +<item>The first argument passed to <tt/main()/ is the program name. <item>A maximum number of 10 arguments (including the program name) are supported. </enum> @@ -214,8 +220,7 @@ The program return code (low byte) is passed back to BASIC by use of the <sect1>Using extended memory<p> -The extended memory at $A000 may be added to the heap by using the following -code: +BLK5 memory may be added to the heap by using the following code: <tscreen><verb> /* Check for the existence of RAM */ @@ -232,7 +237,7 @@ The runtime for the VIC20 uses routines marked as <tt/.INTERRUPTOR/ for interrupt handlers. Such routines must be written as simple machine language subroutines and will be called automatically by the interrupt handler code when they are linked into a program. See the discussion of the <tt/.CONDES/ -feature in the <htmlurl url="ca65.html" name="assembler manual">. +feature in the <url url="ca65.html" name="assembler manual">.