mirror of
https://github.com/cc65/cc65.git
synced 2024-12-23 04:30:10 +00:00
Update comments about the stack, add CBM 500 info
git-svn-id: svn://svn.cc65.org/cc65/trunk@923 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
2760fbd5dc
commit
09305ce21c
@ -13,10 +13,8 @@ data etc are allocated on this stack, and deallocated when functions exit.
|
||||
|
||||
The program code and data is located in low memory. The heap is located
|
||||
between the program code and the stack. The default size for the parameter
|
||||
stack is 2K, you may change this by declaring an externally visible variable
|
||||
named named _stksize that holds the new stack size:
|
||||
|
||||
unsigned _stksize = 4*1024; /* Use 4K stack */
|
||||
stack is 2K, you may change this for most platforms in the linker
|
||||
configuration.
|
||||
|
||||
Note: The size of the stack is only needed if you use the heap, or if you
|
||||
call the stack checking routine (_stkcheck) from somewhere in your program.
|
||||
@ -112,9 +110,9 @@ compiling them into assembler. Therefore if you have a C function named
|
||||
Systems:
|
||||
--------
|
||||
|
||||
Supported systems at this time are: C64, C128, Plus/4, CBM 600/700, the newer
|
||||
PET machines (not 2001), Atari 8bit, and the Apple ][ (thanks to Kevin Ruland,
|
||||
who did the port).
|
||||
Supported systems at this time are: C64, C128, Plus/4, CBM 500, CBM 600/700,
|
||||
the newer PET machines (not 2001), Atari 8bit, and the Apple ][ (thanks to
|
||||
Kevin Ruland, who did the port).
|
||||
|
||||
C64: The program runs in a memory configuration, where only the kernal ROM
|
||||
is enabled. The text screen is expected at the usual place ($400), so
|
||||
@ -129,6 +127,12 @@ Plus/4: Unfortunately, the Plus/4 is not able to disable only part of it's
|
||||
has only 28K available (16K machines are detected and the amount of
|
||||
free memory is reduced to 12K).
|
||||
|
||||
CBM 500:
|
||||
The C program runs in bank #0 and has about 61K memory available. The
|
||||
memory available on the CBM5x0 is slightly less than that available
|
||||
on its bigger brothers (CBM 600/700) because the video ram is also
|
||||
placed into bank #0 to allow sprites.
|
||||
|
||||
CBM 600/700:
|
||||
The C program runs in a separate segment and has almost full 64K of
|
||||
memory available.
|
||||
@ -198,6 +202,6 @@ This feature is useful with inline assembly and macros. For example, a macro
|
||||
that reads a CRTC register may be written like this:
|
||||
|
||||
#define wr(idx) (__AX__=(idx), \
|
||||
asm("\tsta\t$2000\n\tlda\t$2000\n\tldx\t#$00"), \
|
||||
asm("\tsta\t$2000\n\tlda\t$2000\n\tldx\t#$00"), \
|
||||
__AX__)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user