1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-01 13:41:34 +00:00
Commit Graph

2251 Commits

Author SHA1 Message Date
uz
b6276e75f3 Fixed a problem with debug symbol ids. Invalid ids were written to the file
because of a wrong check.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5430 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-31 20:44:27 +00:00
uz
44e7225ce6 Fixed an internal error that was triggered by an attempt to move an empty list
of instructions in the code segment (Oliver Schmidt).
                       


git-svn-id: svn://svn.cc65.org/cc65/trunk@5419 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-21 21:35:49 +00:00
uz
631c553233 Reverted some errorneously committed changes which enabled debug output.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5414 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-20 16:04:37 +00:00
uz
cbefb85d47 Fixed a problem reported by Greg King. structs returned from functions in the
primary register are actually rvalues and need special treatment.
                                                                 


git-svn-id: svn://svn.cc65.org/cc65/trunk@5413 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-20 16:01:25 +00:00
uz
66f1f82943 Masking a bit field is unnecessary if there was no shift operation or if the
shift operation shifted just zeroes into the value.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5412 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-20 15:54:43 +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
3f8ceff73f Forgot to check these in. They contain the new expression opcodes for far
addresses (24 bit) and dwords (32 bit).


git-svn-id: svn://svn.cc65.org/cc65/trunk@5409 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-19 11:50:21 +00:00
uz
7ecb4c50b1 Add bounded expressions for immediate addressing and list the new feature in
the docs.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5406 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-18 19:50:34 +00:00
uz
8ddcbc5f01 Fixed an error in calculation of the fill bytes necessary for alignment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5396 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-11 18:30:25 +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
e7e4877e6e Mark segments that are referenced in a .BANK statement.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5383 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-04 22:15:47 +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
ol.sc
9c2cb68b50 The VLIR table description didn't contain that much information anymore, but on the other hand it seems nice to consolidate all application metadata in one place. So the VLIR table description was replaced by a general MEMORY defintion that allows define the stack size and the usage of the background buffer together with the overlay-related settings.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5373 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-03 21:12:43 +00:00
uz
be77192bcf No need to simplify an expression in SegDone() if it is replaced by a constant
anyway.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5372 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-03 19:40:00 +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
ol.sc
803686e179 The (to be written) "Apple GEOS UnConvert" tool should be allowed to rely on a valid file size (aka EOF) in the ProDOS directory entry.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5369 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 23:30:55 +00:00
ol.sc
110bbeafde Fixed type in target name (it is not supposed to be "geos-apple2") and adjusted the CPU attribute to 65C02 as Apple GEOS only runs on newer Apple machines with 128kB anyway.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5368 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 12:45:25 +00:00
uz
a9f48e663b Symbols imported from the linker config must have the config file position
added to the symbol references, not the definitions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5367 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 12:39:55 +00:00
ol.sc
f24ff82ea2 Renamed apple-geos.cfg to geos-apple.cfg and added it as built-in configuration.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5366 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 12:28:44 +00:00
ol.sc
4c82d5e0c2 Renamed geos.cfg to geos-cbm.cfg.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5365 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 12:18:18 +00:00
ol.sc
6fa0564790 According to http://wweicht.homepage.t-online.de/projekte.htm ("GEOS 64/128 (Wheels and MegaPatch also) use internal a two digit value for year. After the year 99 comes the year 00.") it's advisable to generally limit the year to two digits.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5364 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 12:07:03 +00:00
ol.sc
2bac717dee Another try in normalizing C coding style.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5363 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 12:01:43 +00:00
ol.sc
8abedd2bae Another try in normalizing C coding style.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5362 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 11:54:15 +00:00
uz
e935c8fead Fixed a problem: For symbols of type weak or external defined in the linker
config, a value is mandatory, but the check inside the code checked for the
TYPE attribute instead of the VALUE attribute.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5357 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-01 20:29:42 +00:00
uz
0692c66db3 Fixed a bug: To check for signed types use IsSignSigned, not !IsSignUnsigned.
The latter may be true for types and are neither signed nor unsigned.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5353 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-01 18:26:39 +00:00
uz
081308942c Let the linker generate a new symbol __NAME_FILEOFFS__ that contains the
offset of a memory area in the output file. Partially based on a contribution
by David M. Lloyd, david.lloyd@redhat.com.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5351 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-31 15:21:33 +00:00
uz
45f7cc1403 Support for the Mitsubishi 740 CPU for da65. Written and contributed by
Chris Baird, cjb@brushtail.apana.org.au.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5350 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-31 13:09:55 +00:00
uz
af12aa8b2d Fix SVN version stuff. The old implementation apparently had problems with
subversion >= 1.7.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5349 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-29 21:18:23 +00:00
silverdr
a37c0427a7 removed one conditional in the cc65 Makefile gcc.mak in order to make SVN version work also with SVN 1.7.x working copies
git-svn-id: svn://svn.cc65.org/cc65/trunk@5348 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-29 20:37:32 +00:00
uz
049ff2ce3e Change option processing and options to be more compatible with the other
tools. Support long options. Remove unnecessary newlines from error messages.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5346 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-28 18:12:47 +00:00
uz
3364c1d779 Renamed the main file to main.c for consistency reasons.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5345 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-28 17:46:17 +00:00
uz
8fb6d2c3b1 Removed an anused constant.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5344 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-28 17:43:48 +00:00
uz
70a3bcb0df Order of table entries was wrong, so bsearch failed.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5342 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-28 17:09:26 +00:00
uz
6ead4abf24 Added support for arbitrary alignments.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5341 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-28 16:28:19 +00:00
uz
5bcbb39bba Make the error message for large alignments more descriptive. Don't use the
real number of fill bytes for an alignment, we didn't accept anyway.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5340 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-28 16:00:16 +00:00
uz
4bdcad03a0 Added TGT_GEOS_CBM and TGT_GEOS_APPLE.
Added new targets to the geos resource compiler already prepared by Oliver.
Changed the target module to allow target name aliases and consolidated target
properties into a TargetProperties structure kept in that module. Numeric
targets are now gone.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5338 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-28 13:33:38 +00:00
uz
5be3aeab7f Fixed a compiler warning.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5337 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-28 13:29:09 +00:00
ol.sc
920a3eb794 First steps towards supporting Apple GEOS.
- The generated file is a "Apple GEOS Convert" format.
- VLIR support is yet to come.
- The "Apple GEOS UnConvert" tool is yet to come.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5336 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-27 23:36:05 +00:00
uz
2a18b0dd1d Small changes for arbitrary alignment in object files.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5335 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-27 22:56:39 +00:00
uz
badfe85991 Allow arbitrary alignments, not just powers of two. Beware: This needs support
in the linker which is currently missing.
                                         


git-svn-id: svn://svn.cc65.org/cc65/trunk@5334 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-27 22:54:52 +00:00
uz
be14b8e5e4 Bumped object file version since file format has changed.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5333 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-27 22:53:42 +00:00
uz
281b04d066 Added LARGE_ALIGNMENT.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5332 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-27 22:53:15 +00:00
uz
71b134db78 Fix warning about possibly uninitialized variable.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5331 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-27 22:45:20 +00:00
uz
7d187fe92c Export MAX_ALIGNMENT.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5330 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-27 22:36:28 +00:00
uz
d0555c400e New function AlignCount.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5329 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-12-27 22:31:36 +00:00