1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-25 17:29:50 +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
header (FF FF <2 byte start address> <2 bytes end address>
[program bytes]). These values are calculated in the crt0.s
file from the __CODE_LOAD__ and __BSS_LOAD__ values, so keep this in
mind if you create a custom linker config file and start moving
segments around (see section <ref name="Reserving a memory area inside the program" id="memhole">). You can
override this behaviour by creating your own crt0.s file and linking
it into your program. A run vector is added to the end of the file
(&dollar;02E0 &lt;run vector&gt;) and is calculated using
__CODE_LOAD__ in crt0.s.
file from the __STARTUP_LOAD__ and __ZPSAVE_LOAD__ values, so keep
this in mind if you create a custom linker config file and start
moving segments around (see section
<ref name="Reserving a memory area inside the program" id="memhole">).
You can override this behaviour by creating your own crt0.s file and
linking it into your program. A run vector is added to the end of the
file (&dollar;02E0 &lt;run vector&gt;) and is calculated using
__STARTUP_LOAD__ in crt0.s.
<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
installed memory and cartridges present, by inspecting the value in
the MEMTOP (&dollar;2E5) variable. Then the initial stack pointer,
which indicates the upper bound of memory used, is adjusted. The load
address of &dollar;2E00 was chosen to accommodate having a DOS loaded
and a driver that resides in low memory such as the 850 R: handler.
You can override this behaviour by creating a custom linker config
file.
which indicates the upper bound of memory used, is adjusted. The
default load address of &dollar;2E00 was chosen to accommodate having
a DOS loaded and a driver that resides in low memory such as the 850
R: handler. You can override this behaviour by creating a custom
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:
@ -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
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"
name="uz@cc65.org"> or <htmlurl url="mailto:cpg@aladdin.de"
name="cpg@aladdin.de">).
name="uz@cc65.org"> or <htmlurl url="mailto:chris@groessler.org"
name="chris@groessler.org"> ).