cuz
a7358314a0
New .FEATURE org_per_seg. If enabled, .org/.reloc do only influence the
...
current segment. Idea by Peter Wendrich <pwsoft@syntiac.com>.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3794 b7a2c559-68d2-44c3-8de9-860c34a00d81
2007-08-23 19:48:43 +00:00
cuz
c13f40a9f1
Emit warnings for symbols that were used suboptimal because of forward
...
definitions. For example a zero page symbol that is used as absolute because
it was undefined when encountered.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3724 b7a2c559-68d2-44c3-8de9-860c34a00d81
2006-04-09 10:56:23 +00:00
cuz
476e3f9acc
Fixed a bug in FuncStrAt. New shortcut function GenLiteral0().
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3605 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-08-30 19:40:43 +00:00
cuz
945bbe2b50
Added variable symbols using .set
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3510 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-05-11 08:31:42 +00:00
cuz
27b5721cf6
Allow a unary +
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3371 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-21 12:57:41 +00:00
cuz
b10b7cd3e8
Fixed a problem with {} enclosed token lists and implemented them for
...
.blank and .tcount.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3014 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-09 20:24:51 +00:00
cuz
fdb685b874
Allow token lists to be optionally enclosed in curly braces. Using such
...
enclosement, tokens that would otherwise terminate the list can be part
of the list.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3013 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-09 19:45:07 +00:00
cuz
95c0fb6e0b
Removed an unused assignment
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2872 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-01-04 21:35:38 +00:00
cuz
6d49e06fa2
Fixed a few bugs
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2860 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-30 22:42:49 +00:00
cuz
9dad608bc9
Use the WORD0 expression op instead of AND
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2732 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-12 16:02:30 +00:00
cuz
fd102deb77
New pseudo functions: .LOBYTE, .HIBYTE, .BANKBYTE, .LOWORD, .HIWORD
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2731 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-12 15:59:44 +00:00
cuz
54a50d9354
Code cleanup
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2728 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-12 12:59:10 +00:00
cuz
87857eced3
Fixed a bug
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2720 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-06 14:44:16 +00:00
cuz
92a001d3af
Fixes for scoping and better .sizeof support
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2706 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-03 10:13:41 +00:00
cuz
14d0577ef0
More work on .sizeof, fixed problems with cheap locals
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2704 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-03 09:18:31 +00:00
cuz
1a9a5f2687
More work on .sizeof
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2702 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-02 22:09:45 +00:00
cuz
9ebc3d1f01
Don't remove symbols or otherwise simplify expressions while assembly is
...
still in progress. There may be information that is needed, and when
assembly is done it is still time to do so. (Needs more work).
Better expression checks for fragments. Stuff that was detected by the
linker before is now handled by the assembler.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2700 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-30 21:47:40 +00:00
cuz
cf7b4e227a
More .size/.sizeof support
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2699 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-30 18:41:32 +00:00
cuz
c5cc4e1536
Don't use SF_TRAMPOLINE, change symbol references instead.
...
In smart mode, use RTL instead of RTS if the enclosing .PROC is far.
More address size changes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2696 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-29 07:53:26 +00:00
cuz
49f72c6d24
Much extended StudyExpr
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2681 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-23 21:39:30 +00:00
cuz
7e44224dd0
Moved StudyExpr + helpers into its own module
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2675 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-19 22:54:30 +00:00
cuz
cd918a387c
Temp fix for some address size problems
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2674 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-18 20:50:55 +00:00
cuz
57cc152ad6
Added .SIZEOF
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2671 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-17 17:59:30 +00:00
cuz
c5ad7d9af1
Replace address mode detection for expressions
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2670 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-17 12:56:44 +00:00
cuz
0e392b79bd
Added enums
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2665 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-14 09:03:32 +00:00
cuz
742b1ffd8e
New function GenAddExpr
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2664 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-14 08:44:12 +00:00
cuz
ba68b5f87a
More work on expressions and address sizes
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2658 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-13 00:21:31 +00:00
cuz
980f5b598f
Precalculate some expressions
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2651 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-12 16:40:26 +00:00
cuz
1e624c5e91
Fixed a problem
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2641 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-11 22:16:47 +00:00
cuz
4555fdcad1
Rewrote expression evaluation. More smaller changes.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2638 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-11 13:57:30 +00:00
cuz
44976a0461
Replace error/warning numbers by strings.
...
More work on address sizes and scoping.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2620 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-08 17:20:21 +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
8400fb848a
Revised symbol scoping
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2614 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-06 11:22:31 +00:00
cuz
5881a2b4f5
Changed freeing symbol relations, cosmetic changes
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2610 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-04 19:02:11 +00:00
cuz
64c5165a5b
Free expression trees when they're no longer needed
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2594 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-31 20:56:40 +00:00
cuz
fbdbf4d07c
Work on named scopes
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2592 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-31 20:21:48 +00:00
cuz
cb57a213eb
Move the segment handling stuff from objcode to a separate module
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2555 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-21 20:34:56 +00:00
cuz
2e030b707c
Change result of .CPU pseudo variable
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2505 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-10 17:38:06 +00:00
cuz
fcfaaee3a9
Added new .VERSION constant
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2280 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-12 15:11:55 +00:00
cuz
cdedb31199
Assertion checks were the wrong way round
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2205 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-06 21:09:36 +00:00
cuz
0d27afb21f
Completed assertions, add auto assertion for jmp (abs) bug
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2203 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-06 20:47:59 +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
b6c4ff2e01
Fixed problems that occured on input files with missing LF at end of file.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1903 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-19 12:04:33 +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
8fc78c2c8d
Added the .TIME pseudo function
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1651 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-26 13:44:35 +00:00
cuz
4dd4e76a88
Added a scope argument to the SymIsDef and SymIsDef functions, so it is
...
possible to request information for a specific scope.
Add an optional scope argument to the .DEFINED builtin function.
Change the long branch macros to look for symbols in local scope.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1574 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 01:45:00 +00:00
cuz
c3cb057407
Check for sign problems in compares
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@932 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 11:51:08 +00:00
cuz
1eff067ff9
Moved verbose output to a shared module in the common/ directory.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@619 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-10 10:21:03 +00:00
cuz
a5d8a5a94f
Translate chars returned by .strat into the target charset
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@509 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-01 10:37:41 +00:00
cuz
81249b8d92
Fix detection of byte sized expressions
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@503 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-01 09:04:07 +00:00