Go to file
Stephen Heumann aa9a585d19 Do not give spurious errors about segment alignment.
This would happen if a later object segment had a more restrictive alignment than previous object segments that contribute to the same load segment, as in the following example:

s1      start
        jsl s2
        rtl
        end

        align   256
s2      start
        rtl
        end

These alignment requirements can be satisfied by just giving the load segment the most restrictive alignment of any object segment (since all alignments are powers of 2) and inserting space as necessary to align the code from each object segment.
2021-03-03 18:41:45 -06:00
obj The ORCA Linker 2.0.3 from the Opus ][ CD 2017-10-01 21:26:59 -06:00
backup convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
build.ninja add makefile and ninja file for use with Golden Gate. 2017-10-02 16:01:45 -04:00
count convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
directpage convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
exp.asm convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
exp.mac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
file.asm Fix bug in handling of pathname buffers at the very beginning of a bank. 2017-10-08 20:47:06 -05:00
file.mac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
GNUmakefile add makefile and ninja file for use with Golden Gate. 2017-10-02 16:01:45 -04:00
LICENSE The ORCA Linker 2.0.3 from the Opus ][ CD 2017-10-01 21:26:59 -06:00
linker.asm Update linker version number to 2.0.6. 2021-02-25 22:29:56 -06:00
linker.mac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
linker.notes Do not give spurious errors about segment alignment. 2021-03-03 18:41:45 -06:00
linker.rez Update linker version number to 2.0.6. 2021-02-25 22:29:56 -06:00
linkit convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
make convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
out.asm Do not give spurious errors about segment alignment. 2021-03-03 18:41:45 -06:00
out.mac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
pass1.asm convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
pass1.mac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
pass2.asm Allow 2-byte RELEXPR records to be used for branches of + or - 64KB. 2021-02-19 18:18:47 -06:00
pass2.mac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
README.md The ORCA Linker 2.0.3 from the Opus ][ CD 2017-10-01 21:26:59 -06:00
seg.asm Search for object files under both lower- and upper-case extensions. 2018-09-15 16:20:18 -05:00
seg.mac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
smac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
symbol.asm Fix bugs in handling of symbol table entries at the very beginning of a bank. 2017-10-08 20:46:55 -05:00
symbol.mac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00
util.asm fix typos. 2017-10-23 09:32:39 -04:00
util.mac convert CR files to LF for better git compatibility. 2017-10-02 09:35:05 -04:00

Linker

Apple IIGS ORCA Linker, a link editor for the Apple IIGS object module format

If you would like to make changes to this linker and distribute them to others, feel free to submit them here. If the changes apply to compilation on and for an Apple IIGS, they will generally be approved for distribution on the master branch. For changes that run on a different platform, the project will either be forked or a new repository will be created, as appropriate.

The general conditions that must be met before a change is released on master are:

  1. The modified linker must compile under the currently released version of ORCA/M.

  2. The ORCA compilers must pass their test suites using the new linker, or the test suite must be suitably modified, too.

Contact support@byteworks.us if you need contributor access.

A complete distribution of the ORCA languages, including installers and documentation, is available from the Juiced GS store at https://juiced.gs/store/category/software/. It is distributed as part of the Opus ][ package.