1
0
mirror of https://github.com/cc65/cc65.git synced 2025-01-13 09:31:53 +00:00

misc updates

git-svn-id: svn://svn.cc65.org/cc65/trunk@4729 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cpg 2010-06-26 00:20:44 +00:00
parent c992a3596b
commit ea3f4f34c3

View File

@ -39,13 +39,14 @@ The standard binary output format generated by the linker for the
Atari target is a machine language program with a standard executable Atari target is a machine language program with a standard executable
header (FF FF <2 byte start address> <2 bytes end address> header (FF FF <2 byte start address> <2 bytes end address>
[program bytes]). These values are calculated in the crt0.s [program bytes]). These values are calculated in the crt0.s
file from the __CODE_LOAD__ and __BSS_LOAD__ values, so keep this in file from the __STARTUP_LOAD__ and __ZPSAVE_LOAD__ values, so keep
mind if you create a custom linker config file and start moving this in mind if you create a custom linker config file and start
segments around (see section <ref name="Reserving a memory area inside the program" id="memhole">). You can moving segments around (see section
override this behaviour by creating your own crt0.s file and linking <ref name="Reserving a memory area inside the program" id="memhole">).
it into your program. A run vector is added to the end of the file You can override this behaviour by creating your own crt0.s file and
(&dollar;02E0 &lt;run vector&gt;) and is calculated using linking it into your program. A run vector is added to the end of the
__CODE_LOAD__ in crt0.s. file (&dollar;02E0 &lt;run vector&gt;) and is calculated using
__STARTUP_LOAD__ in crt0.s.
<sect>Memory layout<p> <sect>Memory layout<p>
@ -56,11 +57,12 @@ the BASIC cartridge unplugged). This gives a usable memory range from
current memory configuration, which depends on the size of the current memory configuration, which depends on the size of the
installed memory and cartridges present, by inspecting the value in installed memory and cartridges present, by inspecting the value in
the MEMTOP (&dollar;2E5) variable. Then the initial stack pointer, the MEMTOP (&dollar;2E5) variable. Then the initial stack pointer,
which indicates the upper bound of memory used, is adjusted. The load which indicates the upper bound of memory used, is adjusted. The
address of &dollar;2E00 was chosen to accommodate having a DOS loaded default load address of &dollar;2E00 was chosen to accommodate having
and a driver that resides in low memory such as the 850 R: handler. a DOS loaded and a driver that resides in low memory such as the 850
You can override this behaviour by creating a custom linker config R: handler. You can override this behaviour by creating a custom
file. linker config file or by using the "--start-addr" cl65 command line
argument or the "--start-addr" or "-S" ld65 command line arguments.
Special locations: Special locations:
@ -501,8 +503,8 @@ defines the location of the stack by initializing sp.
If you have problems using the library, if you find any bugs, or if you're If you have problems using the library, if you find any bugs, or if you're
doing something interesting with it, I would be glad to hear from you. Feel doing something interesting with it, I would be glad to hear from you. Feel
free to contact me by email (<htmlurl url="mailto:uz@cc65.org" free to contact me by email (<htmlurl url="mailto:uz@cc65.org"
name="uz@cc65.org"> or <htmlurl url="mailto:cpg@aladdin.de" name="uz@cc65.org"> or <htmlurl url="mailto:chris@groessler.org"
name="cpg@aladdin.de">). name="chris@groessler.org"> ).