]> git.sur5r.net Git - cc65/blobdiff - doc/creativision.sgml
ld65: implement '--allow-multiple-definition' command line parameter
[cc65] / doc / creativision.sgml
index 64623b3b27cf19a1bc8ba1ef2d339ae64b3a5141..f7e5de8b1ac931e544ebc132011bfa47dcb31a24 100644 (file)
@@ -1,10 +1,8 @@
 <!doctype linuxdoc system>
 
 <article>
-
 <title>VTech Creativision (aka Funvision) specific information for cc65
 <author><url url="mailto:polluks+cc65@sdf.lonestar.org" name="Stefan A. Haubenthal">
-<date>2016-04-14
 
 <abstract>
 An overview over the Creativision runtime system as it is implemented for the
@@ -31,14 +29,16 @@ more than one platform. Please see the function reference for more information.
 <sect>Binary format<p>
 
 The standard binary output format generated by the linker for the Creativision target
-is a 4 kbyte machine language program. It is of course possible to change
-this behaviour by using one of the different linker configs.
+is a 4 KB ROM image. To create an 8 KB ROM a custom linker script has
+to be used.
 
 <sect>Memory layout<p>
 
-cc65 generated programs with the default setup run with the I/O area enabled,
-which gives a usable memory range of &dollar;B000 - &dollar;BEFF.
-More ROM may need additional bankswitching code.
+cc65 generated programs with the default setup are 4 KB in size,
+occupying &dollar;B000 - &dollar;BFFF. Usable memory space for the
+user program is &dollar;B000 - &dollar;BEFF. &dollar;BF00 -
+&dollar;BFFF is reserved for the runtime and cartridge configuration
+area.
 
 Special locations:
 
@@ -47,11 +47,15 @@ Special locations:
   The text screen is located at VRAM &dollar;1000.
 
   <tag/Stack/
-  The C runtime stack is located at &dollar;3FF and growing downwards.
+  The C runtime stack is located at &dollar;03FF and growing downwards.
+
+  <tag/RAM/
+  The available RAM for cc65 programs of an unexpanded Creativision
+  starts at &dollar;01FA and ends at &dollar;03FF.
 
   <tag/Heap/
-  The C heap is located at the end of the program and grows towards the C
-  runtime stack.
+  The C heap is located at the end of the program's data area and
+  grows towards the C runtime stack.
 
 </descrip><p>
 
@@ -164,14 +168,14 @@ including commercial applications, and to alter it and redistribute it
 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>