1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-30 01:29:37 +00:00
Commit Graph

445 Commits

Author SHA1 Message Date
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
uz
d825bbde06 Since there is now line info with type ASM and a count not equal to zero, the
search for the toplevel line info had to be changed slightly.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5906 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-11-04 12:58:17 +00:00
uz
7b34609930 Have the callirq module export __CALLIRQ__ and changed all config files so
this symbol is a forced import for all interruptors.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5902 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-11-03 21:59:15 +00:00
uz
77bd3169f6 Added a new attribute IMPORT to the CONDES definition of the FEATURES section.
If this attribute is defined, an import for the given symbol is added to the
module that contains the condes declaraction. Using this feature, it is
possible to force linkage of a module that contains an export for the symbol.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5900 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-11-03 21:37:19 +00:00
uz
0e82853a4a Use O65OPT_FILENAME to place the filename of the output file into generated
o65 modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5886 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-10-28 19:31:24 +00:00
ol.sc
8a5430d138 Added C128 overlay linker config.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5831 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-09-30 14:53:12 +00:00
ol.sc
d080bea30f Minimal formatting adjustment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5830 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-09-30 14:18:47 +00:00
karri
2222df9143 Shring the bootloader by 20 bytes and remove restrictions on file size
git-svn-id: svn://svn.cc65.org/cc65/trunk@5824 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-09-11 13:01:39 +00:00
uz
574c8fa273 Added a "fillval" attribute to the segment definition. When given, it
overrides the value from the memory area for all space that lies within the
segment itself.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5823 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-09-09 19:00:43 +00:00
uz
43ea0e3df9 Move evaluation of the argument for .BANK into the linker. It is otherwise too
restricted, since no imported symbols may be used.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5746 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-30 17:18:03 +00:00
ol.sc
e3fb0233c8 Added secondary linker config for Atari overlays (located below main program like Apple II).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5741 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-24 21:23:25 +00:00
ol.sc
bb41dccfe3 Added secondary linker config for Apple2 overlays (like C64).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5730 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-16 23:09:20 +00:00
ol.sc
f6ab932b32 The Apple2 linker configs *-loader.cfg only differed in the presumed HIMEM from the default config. Rather have that value adjustable.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5728 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-16 22:48:45 +00:00
ol.sc
4647e98071 Adjusted comment to recent changes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5727 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-16 22:24:06 +00:00
ol.sc
610bb14988 Avoid mixing of memory areas and segments in address computations (and made move of segment INIT somewhat more readable).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5726 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-16 22:13:58 +00:00
ol.sc
7691da610b I just don't like 'file = "" '.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5725 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-16 21:12:56 +00:00
ol.sc
b7b7de55d0 Replaced "throwing away" of memeory area HEADER with the much more elegant "not referring" of symbol __EXEHDR__. This was recently made possible for the asm program config.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5724 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-16 21:06:13 +00:00
ol.sc
094ffa1984 Renamed segment 'HIGHCODE' to 'LC because:
1. Its use isn't limited to code. It may as well be used for rodata.
2. This fits better to the new __LCADDR__ / __LCSIZE__ parameters.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5723 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-16 20:57:49 +00:00
ol.sc
c9555b328a The Apple2 linker configs basically cover two dimension of settings:
1. BIN vs. SYS vs. Loader
2. With Quit code vs. w/o Quit code vs. full LC

Up two now these two dimensions were sort of folded into a number of useful combinations. However with the new asm config and the upcominger overlay config we end up with just to many configs.

Therefore now the second dimension isn't expressed anymore as distinct config. Rather the user has to override __LCADDR__ and __LCSIZE__ in order use the Quite code area or the full LC.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5722 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-16 20:36:34 +00:00
ol.sc
b014bd8196 Added basic Apple linker config for assembler programs (similiar to C64).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5717 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-14 20:59:08 +00:00
ol.sc
95686b169e Moved actual computation of DOS 3.3 header to linker configurations:
- This will allow for different "formulas".
- This brings things together in one place.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5716 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-14 20:44:35 +00:00
ol.sc
9cc99876b2 Moved Apple EXEHDR to separate module (similiar to CBMs).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5708 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-10 21:05:51 +00:00
ol.sc
45bf954fbe Better define 'EXTBSS' to allow developer to memset() set it to zero on startup.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5698 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-10 12:37:32 +00:00
ol.sc
ffc06fcea3 Apple GEOS reserves beside the main app area at $4000-$C000 a secondary app area at $0C00-$2000. While it was an elegant idea to use that secondary area for overlays at the end of the day those 5 kB are just too small. So now overlays go at the end of the main area (as with GEOS 64/128).
However the stack (usually 1 kB) can be securely placed in the secondary area without effort from the side of the developer. The rest of the secondary area (usually 4 kB) is made available to the developer as (uninitialized) 'EXTBSS'.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5696 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-08 21:46:51 +00:00
ol.sc
3cb0cce00d Added secondary linker config for C64 overlays (incl. demo program).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5679 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-03 16:16:11 +00:00
uz
35e1184901 Removed unneeded include files.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5630 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-04-01 15:48:11 +00:00
uz
772d51aa5e Added handling of new expression opcodes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5411 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-19 11:55:36 +00:00
uz
1fccae4cff Finish support for .BANK.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5384 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-04 22:45:26 +00:00
uz
02cbc7da25 Moved the segdefs module to ca65, since it was used only there and renamed it
to segdef, since there might be a new segdefs module in common soon.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5381 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-04 22:02:02 +00:00
uz
ad88e77f43 Fixed an error in file offset calculation.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5380 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-04 21:45:11 +00:00
uz
cb4ba24089 Fixed copy & paste errors in comments.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5379 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-04 21:44:46 +00:00
uz
9e68be3842 Started to add a new .BANK instruction that allows access to a memory area
attribute named "bank". Some error checks and a lot of testing is required.
Don't use for now.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5375 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-03 21:41:34 +00:00
ol.sc
74be82e77e Minimal beautification.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5374 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-03 21:14:33 +00:00
uz
b16a12d260 Adjusted/added names of geos include files.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5371 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-03 08:25:04 +00:00
ol.sc
5863777995 Introduced __BACKBUFSIZE__ which can be set to zero in order to disable the GEOS background buffering.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5370 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-03 00:32:46 +00:00