]> git.sur5r.net Git - cc65/blobdiff - doc/internal.txt
Added note on the necessity of tab chars at the beginning of make command lines.
[cc65] / doc / internal.txt
index fdda2359e13de4e84af7f6959c22130fccab69bd..0dca618ea7bc7e05fb35d61748c705e6285e904c 100644 (file)
@@ -78,7 +78,7 @@ Ex 1:  Function call:  Assuming 'i' declared int and 'c' declared
                lda     _i              ; get 'i', low byte
                ldx     _i+1            ; get 'i', hi byte
                jsr     pushax          ; push it
-               lda     _c              ; get 'c'
+               lda     _c              ; get 'c'
                jsr     pusha           ; push it
                jsr     _baz            ; call the function
                sta     _i              ; store the result
@@ -131,10 +131,8 @@ C128:      The startup code will reprogram the MMU, so that only the kernal ROM
        is enabled. This means, there are 41K of memory available to the
        program.
 
-Plus/4:        Unfortunately, the Plus/4 is not able to disable only part of it's
-       ROM, it's an all or nothing approach. So, on the Plus/4, the program
-               has only 28K available (16K machines are detected and the amount of
-       free memory is reduced to 12K).
+Plus/4:        Works with bank switching so 59K of memory are available to the 
+        program.
 
 CBM 500:
        The C program runs in bank #0 and has a total of 48K memory available.
@@ -151,26 +149,20 @@ PET:      The startup code will adjust the upper memory limit to the installed
        $8000, so on a 8032 or similar machine, 31K of memory are available to
        the program.
 
-APPLE2:        The program starts at $800, end of RAM is $8E00, so 33.5K of memory
-       (including stack) are available.
+Apple ][:
+        The program starts at $803, end of RAM is $95FF, so 35.5K of memory
+        (including stack) are available to the program.
 
 Atari:  The startup code will adjust the upper memory limit to the installed
-        memory, considering future graphics memory usage (which is allocated
-        at top of RAM). The programmer can specify which graphics mode is
-        about to be used by defining a variable _graphmode_used, unsigned
-        char, to the mode value (mode values like Atari DOS, 0-31).
-       (Please note that graphics mode selection isn't supported in the
-       Atari runtime lib yet!)
-       In the default case the upper memory limit will be $8035 (with Basic
-        cartridge) and $A035 (without cartridge). This is the default which
-        leaves room for the biggest possible graphics mode. If only standard
-        text mode is used (_graphmode_used = 0), the values are $9C1F (with
-        Basic) and $BC1F (no cartridge).
-       The program starts at $1F00 (to leave room for DOS), and the free
-        memory values are $6135 (24K, Basic, default mode), $8135 (32K, no
-        Basic, default mode), $7D1F (31K, Basic, mode 0) and $9D1F (39K,
-        no Basic, mode 0).
-       These values are for a 48K or 64K machine.
+        memory detected at runtime. The programmer can adjust the upper memory
+        limit by setting the __RESERVED_MEMORY__ variable at link time. The
+        given __RESERVED_MEMORY__ value will be subtracted from the upper
+        memory limit used by the runtine. This memory could be used as graphics
+        memory, for example.
+        In the default case (no setting of __RESERVED_MEMORY__) the upper
+        memory limit is $9C1F (with Basic cartridge) and $BC1F (without
+        cartridge). The program starts at $2E00 by default.
+        These values are for a 48K or 64K machine.
 
 Note: The above numbers do not mean that the remaining memory is unusable.
 However, it is not linear memory and must be accessed by other, nonportable