X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;ds=sidebyside;f=doc%2Fld65.sgml;h=2195ca48daa4d05183b0ebc3870b89f2b75ffd1a;hb=1a5fa6dc512221490c5547505668a78308f904a8;hp=beb2144bfa728e21023763b4a84e26db20a0fe04;hpb=63e64f801a3ded5ab7052b4d5b340beec75b05f4;p=cc65 diff --git a/doc/ld65.sgml b/doc/ld65.sgml index beb2144bf..2195ca48d 100644 --- a/doc/ld65.sgml +++ b/doc/ld65.sgml @@ -24,21 +24,21 @@ It complements the features that are built into the ca65 macroassembler: - Accept any number of segments to form an executable module. + Accept any number of segments to form an executable module. - Resolve arbitrary expressions stored in the object files. + Resolve arbitrary expressions stored in the object files. - In case of errors, use the meta information stored in the object files - to produce helpful error messages. In case of undefined symbols, - expression range errors, or symbol type mismatches, ld65 is able to - tell you the exact location in the original assembler source, where - the symbol was referenced. + In case of errors, use the meta information stored in the object files + to produce helpful error messages. In case of undefined symbols, + expression range errors, or symbol type mismatches, ld65 is able to + tell you the exact location in the original assembler source, where + the symbol was referenced. - Flexible output. The output of ld65 is highly configurable by a config - file. Some more-common platforms are supported by default configurations - that may be activated by naming the target system. The output - generation was designed with different output formats in mind, so - adding other formats shouldn't be a great problem. + Flexible output. The output of ld65 is highly configurable by a config + file. Some more-common platforms are supported by default configurations + that may be activated by naming the target system. The output + generation was designed with different output formats in mind, so + adding other formats shouldn't be a great problem. @@ -808,8 +808,7 @@ segment. Other SEGMENT attributes

Segments may be aligned to some memory boundary. Specify " SEGMENTS { @@ -894,7 +893,7 @@ look like this: } -The only other available output format is the o65 format specified by Andre +There are two other available formats, one is the o65 format specified by Andre Fachat (see the ). It is defined like this: @@ -904,7 +903,20 @@ name="6502 binary relocation format specification">). It is defined like this: } -The necessary o65 attributes are defined in a special section labeled +The other format available is the Atari (xex) segmented file format, this is +the standard format used by Atari DOS 2.0 and upward file managers in the Atari +8-bit computers, and it is defined like this: + + + FILES { + %O: format = atari; + } + + +In the Atari segmented file format, the linker will write each . @@ -925,6 +937,30 @@ has several attributes that may be defined here. } +The Atari file format has two attributes: + + + + RUNAD = symbol + + Specify a symbol as the run address of the binary, the loader will call this + address after all the file is loaded in memory. If the attribute is omitted, + no run address is included in the file. + + INITAD = memory_area : symbol + + Specify a symbol as the initialization address for the given memory area. + The binary loader will call this address just after the memory area is loaded + into memory, before continuing loading the rest of the file. + + + + + + FORMATS { + atari: runad = _start; + } + The FEATURES section

@@ -1126,14 +1162,14 @@ including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: - 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. - Altered source versions must be plainly marked as such, and must not - be misrepresented as being the original software. - This notice may not be removed or altered from any source - distribution. + 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. + Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + This notice may not be removed or altered from any source + distribution.