bbbradsmith
ac2ecb0b2c
65816 now generate EXPR_NEARADDR instead of EXPR_WORD0 for default assumed address mode, which will be validated by the linker's range check rather than blindly truncated. Assuming the assembler correctly validated this, the linker is allowed to truncate.
2019-05-11 12:32:44 +02:00
Christian Groessler
dd53c2ddc3
src/ld65/main.c: fix copy'n'paste error in comment
2019-05-01 10:57:48 +02:00
Christian Groessler
5a05acf936
ld65: implement '--allow-multiple-definition' command line parameter
2019-05-01 10:57:48 +02:00
Christian Groessler
c248c14075
src/ld65/exports.c: Issue an error instead of a warning for duplicate global symbols.
2019-05-01 10:57:48 +02:00
Daniel Serpell
61463e1a70
Don't write INITAD if the memory area is empty.
2019-02-21 19:00:17 -03:00
Daniel Serpell
b03ae76b54
Add support for INITAD to the Atari binary format.
2019-02-21 19:00:03 -03:00
Daniel Serpell
2aa5b4cafe
Rewrites ATARI EXE segment writing to optimally write segment sizes.
...
We now expand segments as needed to write a minimal set of headers.
2019-02-03 18:13:35 -03:00
Daniel Serpell
4e51fcbdd4
Don't support overwrite segments.
...
This simplifies the memory area size calculations.
2019-02-03 18:11:53 -03:00
Daniel Serpell
63d9b492b7
Only write full ATARI XEX header in the first chunk.
2019-02-03 18:09:51 -03:00
Daniel Serpell
8e3fe2ef86
Remove unused function.
2019-02-03 18:05:15 -03:00
Daniel Serpell
0e947d594f
Add support for Atari XEX file format to LD65
2019-02-03 18:04:46 -03:00
Greg King
a6b04f6e97
Changed most "backticks" (grave accents) into apostrophes.
...
Quotations that are embraced by tick marks now look better, in most fonts.
2019-01-05 14:57:12 -05:00
Evgeny Vrublevsky
d4088f9eee
Don't output a warning about alignment when section address is defined by START or OFFSET and fits required alignment requirements
2018-10-18 15:37:14 +02:00
Laubzega
d293d766ef
New segment type renamed to "overwrite".
2018-09-08 19:18:41 -07:00
Laubzega
c7bb27bac9
Rename more stuff from "overlay" to "replace".
2018-09-06 00:18:39 -07:00
Laubzega
cd9efd53fe
Segment OVERLAY renamed to REPLACE. Bugfix for read-only segments. Formatting.
2018-09-04 00:34:28 -07:00
Laubzega
1b0e2cf783
Fix for multiple overlay segments.
2018-08-25 20:21:12 -07:00
Laubzega
8b584cb89f
Add segment type "overlay".
2018-08-25 10:18:23 -07:00
Chris Cacciatore
bad8412131
All programs print version and exit successfully.
...
* All programs are now using the ProgName variable as well.
2016-08-12 08:54:41 -07:00
Lauri Kasanen
8951e74ba7
ld65: Be more verbose in token errors
2016-05-27 20:03:58 +03:00
Greg King
fac246c799
Moved a warning message, about misaligned segments, to a configuration function.
...
It used to be shown only if the segment was written into a binary file. Now, it's shown for all badly-aligned segments.
2016-03-29 05:40:12 -04:00
Greg King
8e9bf4d419
Changed the way that ld65 handles bad offset/start segment attributes, and reports memory area overflows.
...
1. Offset/start attributes within a memory area are ignored after an overflow.
2. If a previous segment ends past an offset/start address, then that address is not used.
3. Short map files were generated for memory overflows; now, they are generated for bad offset/start addresses, too.
2015-10-22 19:24:08 -04:00
Greg King
0390c34e88
Changed multi-line C comments into another style.
...
The left side doesn't look unbalanced.
2014-06-30 16:51:07 -04:00
Christian Groessler
f7bc6a836d
Set the "simple" bit in the .o65 mode word only if text, data, and bss
...
are adjacent.
2014-05-21 23:49:56 +02:00
Christian Groessler
1a348ab73f
Fix error which slipped in in '-L' command line parameter handling.
2014-03-28 22:40:53 +01:00
Christian Groessler
5114a3b861
Make ld65 -L command line option position independent again.
...
Handle long versions of command line arguments correctly.
2014-03-27 23:50:25 +01:00
Christian Groessler
18c2289784
Make ld65 -L command line option position dependent again.
2014-03-25 15:36:38 +01:00
Christian Groessler
2a9cdf9152
Make ld65 command line arguments position independent.
2014-03-24 13:58:34 +01:00
Christian Groessler
bdc60b21d4
add a missing ":"
2014-03-20 02:22:43 +01:00
Christian Groessler
d72e62cae2
Extend the map file to include a table of exports sorted by value.
2014-03-20 02:01:52 +01:00
Oliver Schmidt
4185caf855
Normalized code.
2014-03-04 01:11:19 +01:00
Oliver Schmidt
50c4fd1c4c
Improve MinGW support.
...
- Code specific to Windows was #ifdef'ed with _MSC_VER so it wasn't included with MinGW. So _MSC_VER is replaced with _WIN32.
- MinGW doesn't support _get_pgmptr() so it is necessary to directly call the Win32 function GetModuleFileName(). This implies including windows.h which in turn causes a name clash with the Win32 function SearchPath(). So the cc65 type SearchPath is renamed to SearchPaths.
2014-03-03 22:12:14 +01:00
Oliver Schmidt
c22c6f28ff
Removed option from usage.
...
The option in question was removed with 37c492b544
2013-10-09 11:33:53 +02:00
Greg King
cf7f7b9ef2
Fixed ld65's precalculation of memory-area sizes.
...
Before this fix, BSS-type and ZP-type segments never were counted. Now, they are counted if their memory areas are filled. (It must be done because their places in the output file are filled.)
The fix allows us to build programs for the CBM510 and CBM610 platforms. We won't see an "Internal error" diagnostic message about a bad file-offset.
2013-07-10 02:37:09 -04:00
Oliver Schmidt
85885001b1
Removed (pretty inconsistently used) tab chars from source code base.
2013-05-09 13:57:12 +02:00
Oliver Schmidt
5ddf9e0878
Merge pull request #7 from greg-king5/config-buf
...
Removed unneeded variable and function.
2013-05-07 10:02:15 -07:00
Greg King
1b2095d7e9
Removed unneeded variable and function.
...
They were used with built-in configurations.
Commit 37c492b544
made them obsolete.
2013-05-06 20:35:18 -04:00
Oliver Schmidt
55667b94fb
Added search path relative to running binary on Windows.
...
In contrast to *IX it doesn't make much sense to add compile time defined
search paths to Windows binaries: There's no standard path like /usr/local/bin
(and there are no symbolic links to link from there to another location).
On the other hand it's (again in contrast to *IX) easy for Windows binaries
to determine their own paths. Therefore it's appropriate to make use of that
to add run time defined default search paths.
2013-05-06 23:20:56 +02:00
Greg King
af55b24593
Changed the order of directories that are searched for files.
2013-05-06 08:11:01 -04:00
Oliver Schmidt
0456ff8e70
Removed unused variable.
2013-05-02 15:13:19 +03:00
Oliver Schmidt
8f7da7885a
Removed unused variable.
2013-05-02 15:09:38 +03:00
Oliver Schmidt
f2f3c8addf
No copyright message here.
2013-04-27 17:39:52 +02:00
Oliver Schmidt
052b229f86
Replaced whole bunch for Makefiles with a single generic Makefile.
...
- Targeting GNU toolchain.
- Modern dependency handling.
- Warning-free build.
- GCC option -Werror set.
- Dynamic search paths.
- Don't write into source directories.
- Easy cleanup by just removing 'wrk'.
2013-04-27 17:20:36 +02:00
Oliver Schmidt
ede72d78b2
Allow to supply searchpath defines as simple values instead of escaped C strings.
2013-04-27 17:20:34 +02:00
Greg King
d57ae65aad
Stopped interrupt dispatcher from being linked even when there are no interruptors.
...
Put ld65's CONDES import names into object module's list instead of linker's list.
2013-04-22 15:55:52 -04:00
Oliver Schmidt
d38b008080
Allow for warning-free build of ld65 with MS VC on warning level 3.
2013-04-09 23:10:57 +02:00
Oliver Schmidt
37c492b544
Replaced builtin linker configs with ordinary .cfg files.
...
The benefits are:
- Independency of ld65 build from perl
- More transparent behaviour
2013-04-09 23:09:46 +02:00
ol.sc
1607b05104
Just some beautification.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@5984 b7a2c559-68d2-44c3-8de9-860c34a00d81
2013-02-12 20:55:19 +00:00
ol.sc
378101ea52
Added missing __CALLIRQ__ import attribute.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@5983 b7a2c559-68d2-44c3-8de9-860c34a00d81
2013-02-12 20:22:27 +00:00
uz
274a7210e7
Fixed several issues where an object file reference or line infos were
...
accessed when they in fact didn't exist, because the symbol was linker
generated (in the config or on the command line).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5981 b7a2c559-68d2-44c3-8de9-860c34a00d81
2013-02-10 20:56:13 +00:00