1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-02 04:41:35 +00:00
Commit Graph

516 Commits

Author SHA1 Message Date
uz
fa1b5f5f3c Fixed a bug: Wrong variable size trucates data.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4945 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-28 16:03:41 +00:00
uz
a214ccff92 Use a collection for the modules in a library.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4938 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-27 22:43:33 +00:00
uz
713c019a24 Save a few bytes when writing file list entries to the object file.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4929 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-27 16:40:48 +00:00
uz
d7d1ad7fd0 Must read line infos earlier when reading in an object files, because later
data references it.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4927 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-27 16:20:14 +00:00
uz
b903e818d1 More detailed error message.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4926 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-27 16:12:10 +00:00
uz
e654ad49eb Allow different output formats using additional linker configs. Contributed by
Karri Kaksonen.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4925 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-26 22:14:42 +00:00
uz
733e832b5d Use LineInfo instead of raw FilePos objects. Most information in the object
files does now have lists of LineInfos attached. Compiles but UNTESTED!


git-svn-id: svn://svn.cc65.org/cc65/trunk@4921 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-26 19:42:17 +00:00
uz
6ddf79fc30 Fragments and assertions reference LineInfo items instead of having separate
embedded FilePos items.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4915 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-24 22:39:07 +00:00
uz
a2ec97ac13 More changes by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4899 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-04 19:39:07 +00:00
uz
d993b332a4 Lynx update including file routines that access a file system on a cartridge
by Karri Kaksonen.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4892 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-12-29 10:37:57 +00:00
uz
f11067e260 Latest versions of startup code and config by Karri Kaksonen. Citing: The new
header contains an encrypted loader, a small directory structure and a single
pixel black title screen. This is directly bootable on a real Lynx.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4890 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-12-22 15:37:20 +00:00
uz
81cfbe06c6 Changed the startup module and the linker config for the Commodore VIC to use
the common loadaddr and exehdr modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4874 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-17 13:35:43 +00:00
uz
9a9cea5a61 Changed the startup module and the linker config for the Commodore PET to use
the common loadaddr and exehdr modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4873 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-17 13:27:43 +00:00
uz
7252f071a2 Changed the startup module and the linker config for the C128 to use the
common loadaddr and exehdr modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4872 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-17 13:00:34 +00:00
uz
da59130820 Changed the startup module and the linker config for the C16 to use the common
loadaddr and exehdr modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4871 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-17 12:46:55 +00:00
uz
8aff2a9159 Fixed a problem with the last change in crt0.s: The symbols for the RAM memory
area had been used but not defined in the linker config. Changed the startup
module and the linker config to use the common loadaddr and exehdr modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4870 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-16 17:33:25 +00:00
uz
461bf5e81e Fixed wrong size of HEADER area. The invalid size had no bad effects, but it
was wrong anyway.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4869 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-16 17:30:42 +00:00
uz
dfd4c0ab63 Limit RAM area to $CFFF instead of $FFFF.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4865 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-14 17:00:21 +00:00
uz
b6d872e5b7 Added the first implementation of a linker config suited for c64 assembly
programs.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4864 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-14 13:11:09 +00:00
uz
413491d1b2 Modified the builtin c64 config to force inclusion of the new exehdr module.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4863 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-14 11:51:43 +00:00
uz
09a62690f3 Fixed typo in warning message.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4858 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-13 22:48:39 +00:00
uz
36dc806193 Force inclusion of the load address.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4857 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-13 16:57:42 +00:00
uz
4786caf496 For modules, the ZP memory area must be written to the output file. This is
required by the logic in the linker.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4854 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-13 10:20:28 +00:00
uz
c797be4767 Add an additional file = "" to memory areas that contain only bss or zp type
segments and aren't written to the output file. Before that, the "not going to
output file" was implicit because of the bss type of the segments contained.
The new attribute makes this explicit.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4853 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-12 19:59:02 +00:00
uz
de14990fbb Define the __XX_START__ symbol for a memory area earlier, so it may be used in
the expression for the size of the same area.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4852 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-12 18:01:31 +00:00
uz
5e8252fa36 Reworked and improved the SYMBOLS section. The old syntax (using symbol =
value) is now gone, attributes are used instead. The SYMBOLS section does now
support imports, so the linker config can be used to force symbols (and
therefore module) imports. Evaluation of start address and size for memory
areas has been delayed even further, so it is now possible to use the values
from one memory area in the definition of the next one.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4851 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-12 14:17:35 +00:00
uz
7c1094c086 Keep the config file position in a FilePos structure.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4847 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-10 19:52:40 +00:00
uz
7bd19b737a One more place where OutputNameUsed must be flagged.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4844 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-09 22:07:45 +00:00
uz
a2b7ef2b08 Merge CfgProcess and CfgAssignSegments because both do some sort of
postprocessing. Print a warning if %O was used in the config file and the
output file name is changed later using -o.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4842 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-09 21:01:27 +00:00
uz
c9b9069208 Better handling of imports in the ExprNode structure.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4841 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-09 20:34:08 +00:00
uz
da792b3fd0 Separate processing the linker config file into two phases: The config file is
read when the -t or -C switch is encountered and parts of it are processed.
The remaining parts are processed when all object files and libraries have
been read. To make this work, the expression evaluation in cfgexpr has been
rewritten to generate true expression trees. This means that expressions in
the linker config may use exports from the object files. 

Separation of config file processing is the base for several enhancements, for
example forced imports by linker config.

This code needs more work and is only very, very, very roughly tested.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4840 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-08 21:52:24 +00:00
uz
6c0a9c0438 Patch to correct the linkorder in the make files to make the --as-needed
ldflag work. By Mario Fetka.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4838 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-07 11:34:51 +00:00
ol.sc
aaf90c1252 Exclude (small) stack from RAM memory area (like on most other targets) to make explicit that the linker may not use all RAM. If the cc65 parameter stack isn't used at all the __STACKSIZE__ symbol may be overridden on the linker command line with -D __STACKSIZE__=0.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4820 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-02 10:20:00 +00:00
uz
112ae0e3db Renamed the defines in symdefs.h to something more meaningful. They were named
EXP_xxx for historic reasons, but SYM_ does make much more sense now.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4812 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-17 20:47:27 +00:00
uz
7e72e7d46b Change output for symbols in the debug info file to match that of the other
lines. The name is now preceeded by "name=".


git-svn-id: svn://svn.cc65.org/cc65/trunk@4803 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-09 21:28:47 +00:00
uz
b936617eb4 Fixed a C99ism.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4799 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-09 05:47:22 +00:00
uz
14e567aed2 Another format change: Record the output file and offset for each segment
written to the output. Make this information available in the debug info file.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4797 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-08 20:32:13 +00:00
uz
34c938e7ac More collection usage. This has also removed the need for the MemListNode
structure.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4795 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-08 15:35:56 +00:00
uz
fedb265a22 More collection usage.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4794 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-08 15:23:22 +00:00
uz
ad140bede4 Replace more linked lists by collections.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4793 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-08 15:13:53 +00:00
uz
026724482f Use collections instead of linked lists to simplify things.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4792 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-08 15:03:58 +00:00
uz
8c39874daa Some changes in debug info generation.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4788 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-07 12:46:12 +00:00
uz
12e7cc010d Output version information into the debug file.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4783 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-05 20:41:27 +00:00
uz
0807da74bd Corrected indentation - no code change.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4782 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-05 19:34:25 +00:00
uz
b8e7feb788 Fix relocation of line infos.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4781 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-05 19:34:03 +00:00
uz
abda26a309 Don't output multiple code ranges per line, since this is harder to parse.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4780 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-03 19:00:14 +00:00
uz
e046ecbcf2 Be sure to generate line info for all segments.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4778 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-01 13:52:06 +00:00
uz
83e5252785 Changed a comment
git-svn-id: svn://svn.cc65.org/cc65/trunk@4777 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-01 13:48:32 +00:00
uz
031ae666e3 Fixed an error in the macro version of HasObjData().
git-svn-id: svn://svn.cc65.org/cc65/trunk@4776 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-31 12:37:14 +00:00
uz
b2321ebdf7 Fixed an error: Some of the collections weren't initialized.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4775 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-31 09:44:25 +00:00
uz
23b867b7a4 Handle file position information for fragments differently: Instead of
handling them separately (which has historic reasons), generate real line info
information. This means that line info for the assembler source will be part
of the debug info file.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4774 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-30 22:44:09 +00:00
uz
f308a3c4d1 Use collections in the object file structure instead of managing the items
manually.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4773 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-30 20:58:51 +00:00
uz
05f7296369 Restructured search path handling.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4662 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-05-09 10:54:15 +00:00
uz
8e26fef105 Fixed the size of the RAM segment for the CBM610. The routine that does
cross-bank calls is located at $FECB and the stack grows downwards from 
there.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4637 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-23 19:40:48 +00:00
uz
3d06780f6d For the CBM 510, the stack is not part of RAM. And, because of the cross-bacnk
routine, it is smaller than the number used before.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4634 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-21 21:39:44 +00:00
ol.sc
4b689107a4 - No more HEAP segment
- RAM reduced by __STACKSIZE__
- Unified formatting

git-svn-id: svn://svn.cc65.org/cc65/trunk@4633 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-21 17:10:17 +00:00
uz
15f95d7623 Changed the size of available RAM so that the last used address is $7FFF.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4630 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-20 18:08:27 +00:00
uz
7450c25404 Allow escape sequences prefixed by '%' in strings. '%%' denotes a single
percent sign, %O is the name of the output file.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4628 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-20 17:48:15 +00:00
uz
b759e753e4 Changed the type of CfgSVal to a string buffer and removed the upper limit for
the length.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4627 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-20 17:23:51 +00:00
uz
61b69316c5 Added builtin .min() and .max() pseudo functions to the assembler.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4583 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-11 18:54:08 +00:00
ol.sc
3d5d3ef76a Define HEADER memory area for the EXEHDR segment for consistency reasons with the other targets with an EXEHDR segment (apple2[enh], atari, lynx, cbm[5|6]10).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4550 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-01-17 21:47:03 +00:00
uz
60bc009991 * Moved the BASIC stub that calls the compiled program into it's own segment
named EXEHDR.
* Renamed BASICHDR to EXEHDR for the PET-II machines.
* Moved the call to CHRCH in front of the code that saves the zero page, since
  open files are sometimes remembered in the zero page, so we need to close
  them before we grab a copy.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4507 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-09 12:42:24 +00:00
uz
1fae13274e An assignment for the ZPSAVE segment was missing in the linker config for the
32K memory config of the VIC20. Hint from Robert Hurst.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4505 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-08 20:41:43 +00:00
uz
1efebb9024 Add .assert actions that aren't evaluated at assembly time.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4321 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-04 12:40:19 +00:00
ol.sc
ba46bab009 Made stacksize user-adjustable on the cmdline.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4293 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-01 17:00:10 +00:00
uz
d42ce3b59e Lynx updates by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4285 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-01 14:09:19 +00:00
uz
0b4c486a49 Replace tabs by spaces in file lists.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4275 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-29 13:32:09 +00:00
uz
3d1ee0f974 Fixes for the watcom makefiles:
* Increase the stack size to 64K (instead of 4096). This solves a
    memory overwrite problem with the DOS version.
  * Generate a mapfile, but set it to "ignored" in svn.
  * Be somewhat more specific in zap.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4273 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-29 13:08:23 +00:00
uz
4056e97587 Use "override" when appending to CFLAGS, so this works even when CFLAGS is
specified on the command line.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4271 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-29 13:06:35 +00:00
uz
16f05a78c2 Create the .inc files before creating the dependency file, so we avoid
problems with files that weren't found.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4269 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-29 11:59:10 +00:00
uz
7b847321a8 Move the version numbers from the interface of the version module into a new
implementation. Allow for release candidates to be specified and disinguished.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4260 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-28 20:10:01 +00:00
uz
85f96a7d6f Fixed warnings generated by clang (run by Per Olofsson).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4255 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-28 15:59:18 +00:00
uz
2cc68784cc Make the watcom makefiles a bit more openwatcom compatible.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4248 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-27 18:40:00 +00:00
uz
a16dcb549f Separate the linker config for the apple2enh target from the ones for the
apple2.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4235 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-26 16:12:02 +00:00
uz
7867bf2921 Fixed the config for the CBM510. Because of changes in the startup code, it
didn't work any longer.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4226 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-24 20:42:55 +00:00
uz
b8e665e837 Change the makefiles so that CFLAGS that are special for the application are
appended after assigning the base value to CFLAGS. This allows to change
CFLAGS on the command line without too much hassle.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4219 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-24 15:07:11 +00:00
uz
cb688729af Changed search paths to use subdirectories of CC65_HOME, remove CC65_LIB.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4209 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-22 11:49:53 +00:00
uz
feb212df62 New linker config for the VIC-20 with 32K cartridge by Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4205 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-22 09:33:49 +00:00
uz
20eb942ab9 Oliver added a comment to the Apple2 linker config.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4197 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-20 13:14:29 +00:00
uz
9d00253227 Additional linker configs for the Apple by Oliver Schmidt.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4195 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-19 16:14:46 +00:00
uz
08f176c5aa Removed the - now unused - empty builtin configuration (was used for the ace
target before).


git-svn-id: svn://svn.cc65.org/cc65/trunk@4194 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-18 19:13:59 +00:00
uz
9a4ec37b40 Change search paths for the linker.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4193 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-18 19:00:24 +00:00
uz
050c56211a Renamed some additional (not builtin) linker configs.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4188 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-18 17:06:26 +00:00
uz
dca7cfd249 Removed the (unused and probably non-working) config for OS/A65.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4187 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-18 17:04:20 +00:00
uz
785d8ebb43 Removed the ace target. It didn't have a linker config and was untested for
~10 years


git-svn-id: svn://svn.cc65.org/cc65/trunk@4162 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-13 11:46:04 +00:00
uz
df22cbf925 Search config files also in the builtin search directory for libraries and in
the directory defined in the CC65_LIB environment variable.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4158 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-12 20:12:48 +00:00
uz
7f143d77d1 Added -u as an alias for --force-import. Updated command line option infos in
the cl65 and ld65 docs.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4061 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-28 10:23:19 +00:00
uz
ee6028993e Added a new "--force-import" command line option to the linker.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4052 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-27 14:43:44 +00:00
cpg
9cafacaf6d introduce STARTUP segment to Atari platform
git-svn-id: svn://svn.cc65.org/cc65/trunk@3995 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-04 20:04:41 +00:00
uz
f62b7a564e The "inc" target needed for the snapshot build script seems to have been lost.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3981 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-07-28 19:40:23 +00:00
uz
823d0b7636 Makefile cleanup. Among other things, allow use of the --as-needed linker flag
by rearranging arguments for the linker.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3922 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-08 17:19:45 +00:00
uz
4812feb44b git-svn-id: svn://svn.cc65.org/cc65/trunk@3863 b7a2c559-68d2-44c3-8de9-860c34a00d81 2008-08-02 22:02:54 +00:00
cuz
258a8e7d4c Move zpsave into its own segment to decrease the executable size.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3852 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-07-15 18:34:20 +00:00
cpg
254b252167 add "define=yes" for ZPSAVE segment, since it's needed by crt0.s
git-svn-id: svn://svn.cc65.org/cc65/trunk@3850 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-07-04 17:31:14 +00:00
cuz
f257b2ee81 Moved the data that keeps a copy of the used zero page locations in its own
segment to reduce the executable size.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3849 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-07-03 19:39:14 +00:00
cuz
11e0421fa7 Fixed another problem with the macros.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3828 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-03-31 21:23:10 +00:00
cuz
3f44e21b12 Fixed bugs in the macro versions of the GetStringId inline functions.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3826 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-03-31 21:13:10 +00:00
cuz
9174f65e54 Make much more usage of dynamic strings (StrBufs) instead of char* and
friends. Since names and other strings are now StrBufs in many places, code
for output had to be changed.
Added support for string literals to StrBuf.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3825 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-03-31 20:54:45 +00:00
cuz
feae688346 Oliver Schmidt updated the graphics drivers and part of the C library for the
Apple machines.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3816 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-03-16 09:37:22 +00:00
cuz
47860910e0 Renamed the Val field to IVal to allow values of other types later.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3802 b7a2c559-68d2-44c3-8de9-860c34a00d81
2007-08-30 20:24:16 +00:00
cuz
84706bd2d5 Fixed portability problems with va_copy. In three places, calls to fstat
had to be replaced by calls to stat, because fileno is no longer available
when forcing the compiler into pure c89 (or c99) mode.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3683 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-12-11 12:40:51 +00:00
cuz
66365154f8 Small map file string fix
git-svn-id: svn://svn.cc65.org/cc65/trunk@3678 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-12-02 23:18:32 +00:00
cuz
a60ef7ecb6 A BSS segment with an alignment, that is written to a memory area with the
fill attribute caused invalid output.
While fixing this, added somewhat more debug output.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3668 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-11-22 16:17:28 +00:00
cuz
33542e3ed9 Use the new linker features in apple2.cfg. This makes apple2-tgi.cfg
obsolete.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3648 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-09-14 08:55:28 +00:00
cpg
3951e0a579 add "define=yes" for CODE segment
git-svn-id: svn://svn.cc65.org/cc65/trunk@3603 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-08-29 22:14:21 +00:00
cuz
1bc775d21d Fixed the copyright message
git-svn-id: svn://svn.cc65.org/cc65/trunk@3588 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-08-24 20:05:37 +00:00
cpg
ee816e08e5 add __RESERVED_MEMORY__
git-svn-id: svn://svn.cc65.org/cc65/trunk@3570 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-08-07 15:49:50 +00:00
cpg
fe645102e4 add TRAILER; calculate RAM size depending on start address
git-svn-id: svn://svn.cc65.org/cc65/trunk@3560 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-07-29 21:16:38 +00:00
cuz
b6ac59be03 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3558 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-07-29 20:33:25 +00:00
cuz
33e86250ea Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3557 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-07-28 22:52:59 +00:00
cuz
aa7cdf30de Added simple expressions for the config file
git-svn-id: svn://svn.cc65.org/cc65/trunk@3556 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-07-28 19:50:22 +00:00
cuz
1d5c1b1983 Added symbol definitions on the command line and weak symbols in the config.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3552 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-07-26 20:42:30 +00:00
cuz
a45649752f New syntax for symbols
git-svn-id: svn://svn.cc65.org/cc65/trunk@3546 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-07-24 21:09:23 +00:00
cpg
7101c646e3 set RAM start address to %S; add STARTADDRESS
git-svn-id: svn://svn.cc65.org/cc65/trunk@3545 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-07-24 20:57:00 +00:00
cpg
4382eb25c8 add EXTZP segment
git-svn-id: svn://svn.cc65.org/cc65/trunk@3534 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-07-22 22:47:45 +00:00
cuz
fa3e713cc7 Interruptor support for all systems.
New HEAP segment.
Both changes by Greg King.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3481 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-04-21 02:10:56 +00:00
cpg
9e61c50de1 add "define = yes" to LOWCODE, remove it from INIT and CODE
git-svn-id: svn://svn.cc65.org/cc65/trunk@3443 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-31 21:51:48 +00:00
cuz
d194bdd702 Fixed numeric OS ids. Added new OS OPENCBM
git-svn-id: svn://svn.cc65.org/cc65/trunk@3435 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-30 19:28:28 +00:00
cuz
842841a8ad Minor changes requested by Oliver Schmidt
git-svn-id: svn://svn.cc65.org/cc65/trunk@3430 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-30 18:15:59 +00:00
cuz
fe2d8f26ed Added library groups
git-svn-id: svn://svn.cc65.org/cc65/trunk@3420 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-26 16:26:11 +00:00
cuz
25dd95438f No output when using wstrip
git-svn-id: svn://svn.cc65.org/cc65/trunk@3418 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-25 22:27:39 +00:00
cuz
8a6fdb8562 Output the help text to stdout
git-svn-id: svn://svn.cc65.org/cc65/trunk@3414 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-24 20:08:41 +00:00
cuz
137b66ac97 Added the INIT segment
git-svn-id: svn://svn.cc65.org/cc65/trunk@3413 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-24 10:52:07 +00:00
cuz
46cb3bb2e8 Move the constructor tables into the INIT segment
git-svn-id: svn://svn.cc65.org/cc65/trunk@3403 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-26 09:06:12 +00:00
cuz
34017fb89a Added the new INIT segment to all configs and adjusted formatting.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3402 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-25 07:52:50 +00:00
cuz
00b644ad18 Suppress wine debug output
git-svn-id: svn://svn.cc65.org/cc65/trunk@3387 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-14 11:01:20 +00:00
cuz
26ae91efff Allow numeric OS types in the config file
git-svn-id: svn://svn.cc65.org/cc65/trunk@3386 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-14 10:36:23 +00:00
cuz
e8abdea87c In case of memory area overflows, generate a short mapfile if one was
requested. This eases the task of rearranging segments when such an
overflow occurs.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3373 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-23 11:19:26 +00:00
cuz
2d623f00cc Better error message when a file is not found in the FILES section.
Better error messages in case of a wrong section order in the config file.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3369 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-20 07:55:38 +00:00
cuz
5b0ad76cd9 Recoded the last change
git-svn-id: svn://svn.cc65.org/cc65/trunk@3368 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-14 18:52:30 +00:00
cuz
8cd583d591 Fixed a bug (Report from Greg King)
git-svn-id: svn://svn.cc65.org/cc65/trunk@3367 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-14 18:40:33 +00:00
cuz
9cd0b7705c Fixed a bug: If all output data was discarded (by using file = "" in the
linker config), CheckExports was never called, which in turn meant that
the list of all exports was never built. This caused a crash later when
the linker tried to generate a map file. The solution is to separate the
creation of the exports list and the check for unresolved imports.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3360 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-09 13:16:51 +00:00
cuz
a456e503e4 More CfgName issues.
Use CfgError instead of calling Error directly.
Use dynamically allocated string buffers in the CfgError and CfgWarning
functions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3359 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 21:38:17 +00:00
cuz
8559581d9f Fixed several places were CfgName was used directly instead of calling
CfgGetName(). The former may be NULL, while the latter maps that to a
string like "builtin config".


git-svn-id: svn://svn.cc65.org/cc65/trunk@3358 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 21:08:59 +00:00
cuz
e128341854 Replace obsolete "wprot" segment type by "ro".
git-svn-id: svn://svn.cc65.org/cc65/trunk@3357 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 21:08:04 +00:00
cuz
7774e57eae New segment attribute ALIGN_LOAD. Some cleanup.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3353 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 13:44:11 +00:00
cuz
1875825e78 New segment APPZP
git-svn-id: svn://svn.cc65.org/cc65/trunk@3352 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-06 13:20:23 +00:00
cuz
56656eac69 interruptor is now supported by the runtime
git-svn-id: svn://svn.cc65.org/cc65/trunk@3265 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-26 19:46:26 +00:00
cuz
843c183698 Changes for new WINE version
git-svn-id: svn://svn.cc65.org/cc65/trunk@3241 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-11 17:09:56 +00:00
cuz
f962da83c2 Added the builtin config for the lynx game console
git-svn-id: svn://svn.cc65.org/cc65/trunk@3224 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-08 18:51:37 +00:00
cuz
3b58383277 Allow to override CC65_LIB on the command line
git-svn-id: svn://svn.cc65.org/cc65/trunk@3199 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 19:05:49 +00:00
cuz
cfef8e1e0d Renamed __IRQFUNC_xxx -> __INTERRUPTOR_xxx
git-svn-id: svn://svn.cc65.org/cc65/trunk@3189 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:24:59 +00:00
cuz
e6b456a8a6 New condes type interruptor
git-svn-id: svn://svn.cc65.org/cc65/trunk@3188 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:23:57 +00:00
cpg
7c1590b5d5 fix comment
git-svn-id: svn://svn.cc65.org/cc65/trunk@3174 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-08-04 00:10:55 +00:00
cuz
2bb2ceec33 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3067 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-02 21:20:18 +00:00
cuz
f5403e7d57 Load programs at 13:5900 instead of 00
git-svn-id: svn://svn.cc65.org/cc65/trunk@3057 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-31 19:25:38 +00:00
cuz
b58b62c77e Better error messages
git-svn-id: svn://svn.cc65.org/cc65/trunk@3025 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-12 08:51:58 +00:00
cuz
5f3ed8826f Added an interrupt facility similar to that on the C128 and Plus/4
git-svn-id: svn://svn.cc65.org/cc65/trunk@2956 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-23 21:50:15 +00:00
cuz
bcf09a96bb New target APPLE2ENH
git-svn-id: svn://svn.cc65.org/cc65/trunk@2910 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-11 21:21:33 +00:00
cuz
92d5130220 Improved PET-II support
git-svn-id: svn://svn.cc65.org/cc65/trunk@2857 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-30 08:09:08 +00:00
cuz
23935bd4c6 Fixed a watcom warning
git-svn-id: svn://svn.cc65.org/cc65/trunk@2823 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-22 23:13:15 +00:00
cuz
46a013c312 We cannot build the inc files from windows/wine
git-svn-id: svn://svn.cc65.org/cc65/trunk@2822 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-22 22:46:17 +00:00
cuz
467cc7c5ad Generate the inc files
git-svn-id: svn://svn.cc65.org/cc65/trunk@2820 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-22 21:29:28 +00:00
cuz
9e5d22cd9f Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@2817 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-22 20:39:15 +00:00
cuz
6b16c182b2 Config changes for improved 610 support
git-svn-id: svn://svn.cc65.org/cc65/trunk@2797 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-20 23:52:48 +00:00
cuz
108134f43d Changed format of debug info file
git-svn-id: svn://svn.cc65.org/cc65/trunk@2748 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-13 19:55:22 +00:00
cuz
67e83836ec Ignore generated file supervision.inc
git-svn-id: svn://svn.cc65.org/cc65/trunk@2734 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-12 17:45:50 +00:00
cuz
8f9a21ae3f Extend the object code format by adding a (currently empty) scope table.
Use the address size for import, export and debug symbols (object code
change).
More changes to support the --memory-model switch and address sizes.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2691 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-28 22:12:14 +00:00
cuz
53a7c0c7d9 Removed the EXPR_FORCE... ops
git-svn-id: svn://svn.cc65.org/cc65/trunk@2677 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-23 21:37:11 +00:00
cuz
71ceff750d Special config for use with the TGI driver added
git-svn-id: svn://svn.cc65.org/cc65/trunk@2655 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-12 16:55:16 +00:00
cuz
7c5a400e01 Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@2650 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-12 16:40:14 +00:00
cuz
8a49256df9 New DumpExpr signature
git-svn-id: svn://svn.cc65.org/cc65/trunk@2640 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-11 13:59:19 +00:00
cuz
1db1c7cabc Renamed expression ops for better readability
git-svn-id: svn://svn.cc65.org/cc65/trunk@2635 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-10 22:18:49 +00:00
cuz
814a0d3c84 Improved an error message in case of invalid input data
git-svn-id: svn://svn.cc65.org/cc65/trunk@2626 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-09 12:12:02 +00:00
cuz
18fb938f48 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2625 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-09 12:11:42 +00:00
cuz
7e74078801 Working on better 65816 support
git-svn-id: svn://svn.cc65.org/cc65/trunk@2619 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-07 19:28:37 +00:00
cuz
5b3d0ddaf9 Convert the watcom makefiles for use with wine under Linux
git-svn-id: svn://svn.cc65.org/cc65/trunk@2598 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-02 21:46:00 +00:00
cuz
8833089abe Added additional config files for supervision. These files are not really
used by the linker, but I had no better place for them, and config files
from this directory are automatically packed into the doc file, so for now
it seems to be the best place.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2579 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-28 11:26:42 +00:00
cpg
2ee6778705 changes from Stefan A. Haubenthal
git-svn-id: svn://svn.cc65.org/cc65/trunk@2574 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-23 19:41:05 +00:00
cuz
3085e7583e Change debug file format
git-svn-id: svn://svn.cc65.org/cc65/trunk@2541 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-17 00:38:01 +00:00
cuz
2541ddd2f6 New target: supervision
git-svn-id: svn://svn.cc65.org/cc65/trunk@2495 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-10 16:30:55 +00:00
cuz
8949233151 Added handling of memory areas references in expressions for o65
git-svn-id: svn://svn.cc65.org/cc65/trunk@2453 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-09-27 19:53:09 +00:00
cuz
5537aee205 More debug file output
git-svn-id: svn://svn.cc65.org/cc65/trunk@2441 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-09-14 21:08:05 +00:00
cuz
fe37c38972 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2418 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-27 09:48:10 +00:00
cuz
79edfdd0df Use $(RM) instead of rm -f
git-svn-id: svn://svn.cc65.org/cc65/trunk@2402 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-20 18:05:44 +00:00
cuz
cc389a3911 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2341 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-16 08:14:05 +00:00
cuz
f3e0d3fbb1 More debug infos
git-svn-id: svn://svn.cc65.org/cc65/trunk@2320 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-15 10:59:22 +00:00
cuz
5422c6924a Removed the -Lp switch, place --dbgfile into help screen
git-svn-id: svn://svn.cc65.org/cc65/trunk@2318 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-15 09:19:57 +00:00
cuz
ccdd31b51e Added gcc attributes
git-svn-id: svn://svn.cc65.org/cc65/trunk@2317 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-14 21:15:10 +00:00
cuz
88d2cc0410 INCS didn't include nes.inc
git-svn-id: svn://svn.cc65.org/cc65/trunk@2308 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-13 18:54:31 +00:00
cuz
b144a85dbb Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2292 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-12 19:34:09 +00:00
cuz
f28586ffcc Add compatibility code
git-svn-id: svn://svn.cc65.org/cc65/trunk@2265 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-11 21:34:22 +00:00
cuz
5faea71a56 Added missing files
git-svn-id: svn://svn.cc65.org/cc65/trunk@2206 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-06 21:15:42 +00:00
cuz
bb24d025f6 Added assertions
git-svn-id: svn://svn.cc65.org/cc65/trunk@2202 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-06 12:45:19 +00:00
cuz
0aa75f12d6 Fragment cleanup, more string pool use
git-svn-id: svn://svn.cc65.org/cc65/trunk@2201 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-06 06:50:27 +00:00
cuz
eb5637b6e4 More stringpool use / memory savings
git-svn-id: svn://svn.cc65.org/cc65/trunk@2199 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-05 16:50:01 +00:00
cuz
cea9aff3ef More string pool use
git-svn-id: svn://svn.cc65.org/cc65/trunk@2198 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-04 15:40:32 +00:00
cuz
edde7a3f45 Use a string pool to reduce the memory footprint
git-svn-id: svn://svn.cc65.org/cc65/trunk@2197 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-04 12:40:14 +00:00
cuz
4937cd236f Restructuring the object file format
git-svn-id: svn://svn.cc65.org/cc65/trunk@2196 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-03 22:19:46 +00:00
cuz
e60b68c7bd Changed file type and search path handling
git-svn-id: svn://svn.cc65.org/cc65/trunk@2185 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-02 13:37:05 +00:00
cuz
0957959976 Add file search path capability (still unused)
git-svn-id: svn://svn.cc65.org/cc65/trunk@2178 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-29 09:35:11 +00:00
cuz
76e67e2f97 Changed the object file and library format. There is now an additional
string table in the object file that (currently) holds all identifiers
from the import, export and debug info sections. The plan is to put all
strings into this table, so we have them in a central place and don't
waste memory. Apart from that, the indices are unique, so comparing strings
should be a lot easier than before (as soon as the programs take advantage
of this fact, which is currently not the case).


git-svn-id: svn://svn.cc65.org/cc65/trunk@2169 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-25 17:57:50 +00:00
cuz
cfb622f738 Add the new OPTIONAL attribute to the LOWCODE segment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2165 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-22 22:32:33 +00:00
cuz
40609f0a3c Added an OPTIONAL segment attribute
git-svn-id: svn://svn.cc65.org/cc65/trunk@2162 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-22 22:20:32 +00:00
cuz
6ace6309cd Added the NES target
git-svn-id: svn://svn.cc65.org/cc65/trunk@2121 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-02 13:49:49 +00:00
cuz
0db036a0e2 Added a new NES config from groepaz
git-svn-id: svn://svn.cc65.org/cc65/trunk@2120 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-02 13:47:43 +00:00
cuz
c24052fae4 Assume text mode, no need to free memory for graphics
git-svn-id: svn://svn.cc65.org/cc65/trunk@2049 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-13 22:25:29 +00:00
cuz
8632683f11 New atmos config from Debrune Jerome
git-svn-id: svn://svn.cc65.org/cc65/trunk@2041 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-09 19:14:56 +00:00
cuz
a9899eba15 Added a new extended (and machine specific) zeropage segment named EXTZP.
Renamed GEOSZP to EXTZP.
Added a --dump-config command that dumps a builtin linker config.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1987 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-16 14:32:13 +00:00
cuz
b0c86375b8 Fixed generation of o65 timestamp
git-svn-id: svn://svn.cc65.org/cc65/trunk@1946 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 21:13:13 +00:00
cuz
efc905a39e Type of LOWCODE was wrong. Cleanup.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1889 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-05 21:08:58 +00:00
cuz
4d892a7993 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1888 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-05 21:04:40 +00:00
cuz
abcc981253 Move the Debug flag into a new module "debugflag" in the common directory.
Remove the const qualifier from the argument of xfree().


git-svn-id: svn://svn.cc65.org/cc65/trunk@1877 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-04 16:59:51 +00:00
izydorst
0264d31e7c new GEOSZP segment for library use, added GEOS tgi driver, fixes in GEOS conio
git-svn-id: svn://svn.cc65.org/cc65/trunk@1864 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-31 15:35:55 +00:00
izydorst
dc207514dd support for .zeropage segment in GEOS
git-svn-id: svn://svn.cc65.org/cc65/trunk@1834 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-23 22:14:14 +00:00
cuz
0774fe273a Did some renaming and cleanup: Renamed EXPR_SEGMENT to EXPR_SECTION, since
this is what it really is. Added a real EXPR_SECTION which is now used in
the linker to represent the run address of a segment, provided that it is
requested to be defined. Changed some named in use of EXPR_MEMAREA. Added
handling of the new EXPR_SEGMENT to both, the binary and o65 output format.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1769 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-14 22:57:00 +00:00
cuz
76b41b3f9a Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@1763 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-13 11:26:21 +00:00
cuz
f79ac9168e New Lunix config file from Greg King
git-svn-id: svn://svn.cc65.org/cc65/trunk@1761 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-13 10:47:03 +00:00
cuz
da6462ebd3 Fixed formatting of the help text
git-svn-id: svn://svn.cc65.org/cc65/trunk@1756 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-13 00:29:40 +00:00
cuz
a5489728ae Converted all Watcom makefiles to use GNU make
git-svn-id: svn://svn.cc65.org/cc65/trunk@1745 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-12 23:19:53 +00:00
cuz
e84a1c068b Print a warning if a bss type segment has both, run and load areas assigned.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1737 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-11 18:29:58 +00:00
cuz
df5132d31c New feature: startaddress
git-svn-id: svn://svn.cc65.org/cc65/trunk@1713 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-03 22:32:38 +00:00
cuz
345d2ddf54 Adjusted the copyright string
git-svn-id: svn://svn.cc65.org/cc65/trunk@1648 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 17:33:58 +00:00
cuz
d7d86886b6 Add STARTUP and LOWCODE segments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1601 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-23 11:10:50 +00:00
cuz
fe75b5c3f3 Added LOWCODE and STARTUP segments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1600 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 23:50:45 +00:00
cuz
a7d67fb9b5 New upper memory limit
git-svn-id: svn://svn.cc65.org/cc65/trunk@1598 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 23:45:57 +00:00
cuz
cf71d811dc Comment was wrong
git-svn-id: svn://svn.cc65.org/cc65/trunk@1597 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 23:45:37 +00:00
cuz
6eabc2813a Added interrupt handler table
git-svn-id: svn://svn.cc65.org/cc65/trunk@1591 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 22:42:49 +00:00
cuz
527c0575ec Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1590 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 22:42:38 +00:00
izydorst
8c5da1ecc1 added LOWCODE and STARTUP segments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1583 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 18:46:55 +00:00
cuz
2b98a26cac Add STARTUP and LOWCODE segments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1582 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 17:43:47 +00:00
cuz
e41c0adbb2 New target c16
git-svn-id: svn://svn.cc65.org/cc65/trunk@1563 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 21:22:26 +00:00
cuz
c80596458c Renamed NMI segment to LOWCODE
git-svn-id: svn://svn.cc65.org/cc65/trunk@1562 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 21:15:19 +00:00
cuz
ead7de2b42 Ignore module.inc
git-svn-id: svn://svn.cc65.org/cc65/trunk@1550 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-20 17:03:14 +00:00
cuz
e688abde1f Moved the zero page locations for the PET machines
git-svn-id: svn://svn.cc65.org/cc65/trunk@1547 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-20 01:34:56 +00:00
cuz
4b805447b6 Prepare VIC20 startup for different start addresses
git-svn-id: svn://svn.cc65.org/cc65/trunk@1390 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-08-11 15:11:31 +00:00
cuz
f0d89e09bc Added VIC20 port changes from Steve Schmidtke
git-svn-id: svn://svn.cc65.org/cc65/trunk@1376 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-08-07 05:18:13 +00:00
cuz
afb0f66ab7 Removed obsolete version.h file
git-svn-id: svn://svn.cc65.org/cc65/trunk@1344 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-07-10 21:09:38 +00:00
cuz
0fec0ce4d0 Revoked last change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1333 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-07-05 21:12:06 +00:00
cuz
750f5e5028 Added a file header
git-svn-id: svn://svn.cc65.org/cc65/trunk@1332 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-07-05 21:11:16 +00:00
cuz
75f57eb1df Make the jump table segment writeable
git-svn-id: svn://svn.cc65.org/cc65/trunk@1327 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-06-23 09:42:00 +00:00
cuz
ad7e08bf56 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1307 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-06-15 12:03:06 +00:00
cuz
606ecafccd New target: oric atmos
git-svn-id: svn://svn.cc65.org/cc65/trunk@1296 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-06-03 20:14:11 +00:00
cuz
ec8ccd24a7 Fixed zero page handling for o65 modules
git-svn-id: svn://svn.cc65.org/cc65/trunk@1287 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-05-25 15:58:00 +00:00
cuz
effacc8d8b Fix o65 zeropage handling
git-svn-id: svn://svn.cc65.org/cc65/trunk@1286 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-05-25 15:52:05 +00:00
cuz
93813611e5 Added JUMPTABLE segment
git-svn-id: svn://svn.cc65.org/cc65/trunk@1281 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-05-18 21:39:50 +00:00
cuz
b0ceece52a Fixed a bug (offset was not correct if more than one module was used).
Added support for the new simple o65 addressing format.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1280 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-05-18 21:39:35 +00:00
cuz
6e32cf4b11 Add support for a module id
git-svn-id: svn://svn.cc65.org/cc65/trunk@1266 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-25 18:11:05 +00:00
cuz
dab745e4b1 New target 'module'
git-svn-id: svn://svn.cc65.org/cc65/trunk@1263 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-25 05:14:14 +00:00
cuz
0041c3c8ac Added configuration for cc65 modules
git-svn-id: svn://svn.cc65.org/cc65/trunk@1261 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-25 05:07:12 +00:00
cuz
2a921c4498 Export start and size of the ZP memory area
git-svn-id: svn://svn.cc65.org/cc65/trunk@1258 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-23 20:11:36 +00:00
cuz
3f9e7b56ae Support additional o65 attributes.
Add a special ID for the cc65 operating system that is written to the OS
field of the options header.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1254 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-21 20:00:04 +00:00
cuz
1c3e74a148 Add new o65 operating system
git-svn-id: svn://svn.cc65.org/cc65/trunk@1253 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-21 14:30:40 +00:00
cuz
0a68498252 Use cc65 character classification routines
git-svn-id: svn://svn.cc65.org/cc65/trunk@1245 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-20 11:49:53 +00:00
cuz
bcec4ba223 Add --config option to usage
git-svn-id: svn://svn.cc65.org/cc65/trunk@1227 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 18:39:51 +00:00
cuz
3bf4a3a735 Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1226 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 18:35:58 +00:00
cuz
e0d9f2817e Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1225 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 18:31:25 +00:00
cuz
17e86356c2 Ignore lunix.inc
git-svn-id: svn://svn.cc65.org/cc65/trunk@1170 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-06 07:57:22 +00:00
cuz
90fc74e835 Correct the END value for a segment so that it shows the last address in
use by this segment, not the start of the following one.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1148 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-06 13:36:25 +00:00
cpg
ffab34bdc8 set atari start address to (very conservative) $2E00; the previous
value didn't work with rs232 drivers loaded


git-svn-id: svn://svn.cc65.org/cc65/trunk@1134 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-12-09 23:49:24 +00:00