1
0
mirror of https://github.com/cc65/cc65.git synced 2024-07-09 01:28:58 +00:00
Commit Graph

1431 Commits

Author SHA1 Message Date
cuz
9b2834ef7e Improve handling of files with foreign newline sequences.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3163 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-18 08:46:12 +00:00
cuz
104f041111 Add dummy return value to avoid a wcc warning
git-svn-id: svn://svn.cc65.org/cc65/trunk@3162 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-17 22:16:02 +00:00
cuz
feec244272 Remove exprnode.obj
git-svn-id: svn://svn.cc65.org/cc65/trunk@3161 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-17 22:15:43 +00:00
cuz
9c0bf14454 Fixed problems with unnamed labels
git-svn-id: svn://svn.cc65.org/cc65/trunk@3160 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-17 22:14:30 +00:00
cuz
764955a915 Make a few params const
git-svn-id: svn://svn.cc65.org/cc65/trunk@3155 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-11 14:06:49 +00:00
cuz
0ba074995c Check for invalid function names before trying to compare the name against
the names of known standard functions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3154 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-11 13:47:57 +00:00
cuz
725afdee94 Added SB_Compare
git-svn-id: svn://svn.cc65.org/cc65/trunk@3153 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-11 11:13:10 +00:00
cuz
1182d4cbd9 A main function not returning an int is not allowed in standard C
git-svn-id: svn://svn.cc65.org/cc65/trunk@3147 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-06 14:25:48 +00:00
cuz
2c3d5773f3 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3146 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-06 14:25:03 +00:00
cuz
9df7321d90 Cleanup in ShiftExpr.
Changed GetCodePos to also remember the stack pointer at the given location,
this removes the necessity to manipulate the stack when removing code. Since
CodeMark is now a struct, the API for most asmcode functions has changed.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3145 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-06 11:30:08 +00:00
cuz
07419b62f8 Changed shift functions, added info about shift runtime functions
git-svn-id: svn://svn.cc65.org/cc65/trunk@3142 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-30 19:18:56 +00:00
cuz
76e31df5f8 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3140 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:48:35 +00:00
cuz
e354d269f6 Remove shifts from kcalc
git-svn-id: svn://svn.cc65.org/cc65/trunk@3139 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:44:50 +00:00
cuz
809d1408ce Move shift expression evaluation into a separate module. More checks and
improvements for shift expressions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3138 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:44:01 +00:00
cuz
31f85bc23e Renaming and cleanup
git-svn-id: svn://svn.cc65.org/cc65/trunk@3137 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:37:18 +00:00
cuz
e8afc897cf Some renaming
git-svn-id: svn://svn.cc65.org/cc65/trunk@3136 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:35:39 +00:00
cuz
daf8e0d1e6 Added license information preproc.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@3135 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:26:27 +00:00
cuz
b2b7006939 Fixed a problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@3134 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-21 22:30:07 +00:00
cuz
13a2927e17 The -A and --ansi switches are gone, together with the __STRICT_ANSI__
predefined macro. Instead there is now a command line option --standard that
allows to set c89, c99 or cc65 as language standard. The compiler defines a
macro __CC65_STD__ that is one of __CC65_STD_C89__, __CC65_STD_C99__ or
__CC65_STD_CC65__ depending on the command line option. Default is cc65 (all
extensions) as before.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3133 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-21 22:22:11 +00:00
cuz
d01687fd82 Removed the undocumented, obsolete and unused OptDisable flagset
git-svn-id: svn://svn.cc65.org/cc65/trunk@3132 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 21:24:47 +00:00
cuz
ca2b070935 Make the -W flag stackable.
New pragmas codesize, optimize and warn.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3130 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 21:05:40 +00:00
cuz
d8279302a9 Make the -O and --codesize options stackable.
Copy the current optimization settings into a code segment on creation.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3129 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 20:29:49 +00:00
cuz
9cb7015055 Inline assembly can now reference C labels with the %g format specifier
git-svn-id: svn://svn.cc65.org/cc65/trunk@3128 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 20:08:01 +00:00
cuz
a3e6fbd21f Some cleanup
git-svn-id: svn://svn.cc65.org/cc65/trunk@3127 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 20:05:54 +00:00
cuz
a3039d57fc Fixed problems on 64 bit platforms and some other sloopyness when working
with the element count of an array.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3120 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-10 13:03:28 +00:00
cuz
300919d61f Better error messages
git-svn-id: svn://svn.cc65.org/cc65/trunk@3119 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-10 11:02:05 +00:00
cuz
cb7c50a8ce Fixed a warning
git-svn-id: svn://svn.cc65.org/cc65/trunk@3118 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-10 10:37:55 +00:00
cuz
d184d938fd Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3117 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-10 08:48:02 +00:00
cuz
573f1818df Check the return code of the submakes (Christian Groessler)
git-svn-id: svn://svn.cc65.org/cc65/trunk@3115 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-09 19:30:33 +00:00
cuz
975323ece2 Renamed ExprLoad to LoadExpr.
Moved LoadExpr + support functions into a separate module.
Removed obsolete files.
Some cleanup and makefile adjustments.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3114 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-09 19:25:28 +00:00
cuz
8752f0b2c1 Removed ExprLoad to LoadExpr.
Moved LoadExpr + support functions into a separate module.
Removed obsolete files.
Some cleanup and makefile adjustments.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3113 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-09 14:12:57 +00:00
cuz
3ac1a08baf Cleaned up the code used for handling jump labels and the label name.
Fixed a problem that caused the optimizer not to detect that flags set by
a load are used, if the use is "hidden" behind an unconditional branch. This
caused the optimizer to remove the load.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3111 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-07 21:16:49 +00:00
cuz
8425d988fe Removed debug code
git-svn-id: svn://svn.cc65.org/cc65/trunk@3110 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 18:36:15 +00:00
cuz
71ed8810c3 Minor change
git-svn-id: svn://svn.cc65.org/cc65/trunk@3109 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 18:36:08 +00:00
cuz
f500a641c5 Added support for floating point constants in the scanner and Primary()
git-svn-id: svn://svn.cc65.org/cc65/trunk@3108 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 15:59:44 +00:00
cuz
9fc71c5e93 Renamed ExprDesc.Val to ExprDesc.IVal. Added an FVal field for a floating
point constant.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3107 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 14:48:59 +00:00
cuz
eb388aa237 The loop code will access the stackpointer directly
git-svn-id: svn://svn.cc65.org/cc65/trunk@3106 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 10:52:32 +00:00
cuz
651c6e5cbf Add predefined type strings for float and double
git-svn-id: svn://svn.cc65.org/cc65/trunk@3105 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 10:49:59 +00:00
cuz
c76e14f9f5 Improved code for or and xor
git-svn-id: svn://svn.cc65.org/cc65/trunk@3102 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 22:10:04 +00:00
cuz
5586527fcc Move the test flags into the Flags bitset of struct ExprDesc
git-svn-id: svn://svn.cc65.org/cc65/trunk@3101 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 20:29:47 +00:00
cuz
aa39d98cbc When changing the reference to a jump label, do also replace the string
argument for the instruction with the name of the new jump label. This
allows CodeEntriesAreEqual to work in all cases, and therefore optimizations
based on this function will also work more effectively (or at all).


git-svn-id: svn://svn.cc65.org/cc65/trunk@3100 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 16:21:07 +00:00
cuz
e4473c0a96 Repeat the check in OptJumpTarget whenever a match is found to find rows of matches
git-svn-id: svn://svn.cc65.org/cc65/trunk@3099 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 16:19:23 +00:00
cuz
522f1d86d4 Generate LDY instead of INY whenever possible because this allows better
detection of known patterns and is replaced by INY in a later step anyway.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3098 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 16:18:30 +00:00
cuz
08eb9b7b0e Check for and warn on statements that don't have an effect
git-svn-id: svn://svn.cc65.org/cc65/trunk@3097 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 12:56:51 +00:00
cuz
3a0edbff75 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3096 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 11:50:04 +00:00
cuz
104ae3a54f Move the compiler stack pointer into its own module.
Improved the inlining of standard C functions. Added more standard functions
to inline.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3095 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 11:35:53 +00:00
cuz
a0c1b9fe38 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3094 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 11:33:44 +00:00
cuz
1ec972d0c4 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3093 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 21:30:37 +00:00
cuz
3a144965fa Added T_SIZE_T as an alias for T_UINT
git-svn-id: svn://svn.cc65.org/cc65/trunk@3090 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 17:52:19 +00:00
cuz
28a60dd8d5 Added strcpy
git-svn-id: svn://svn.cc65.org/cc65/trunk@3089 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 17:51:49 +00:00
cuz
da2049637a Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3088 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 17:00:48 +00:00
cuz
87d0d88986 Check the InlineStdFuncs flag later
git-svn-id: svn://svn.cc65.org/cc65/trunk@3086 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 14:37:50 +00:00
cuz
361316246b Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3085 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 14:36:54 +00:00
cuz
b1d7f78bce More debugging output
git-svn-id: svn://svn.cc65.org/cc65/trunk@3084 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 14:36:36 +00:00
cuz
eb9d9ee0c5 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3083 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 14:06:36 +00:00
cuz
f4995609ef Define symbols depending on the target system similar to the C compiler.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3079 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 21:12:29 +00:00
cuz
8c4b3599a2 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3073 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 12:09:24 +00:00
cuz
2fa9b6e5ac Improved code generation
git-svn-id: svn://svn.cc65.org/cc65/trunk@3072 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 12:08:49 +00:00
cuz
01104d26ea Fixed generation of non optimal code in StructRef()
git-svn-id: svn://svn.cc65.org/cc65/trunk@3071 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 11:10:30 +00:00
cuz
763a359114 Comment and indentation changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@3070 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 11:08:50 +00:00
cuz
6e34e386cb Rewrote code generation for the strlen standard function. Added code for
other standard functions in several places.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3069 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-02 21:33:35 +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
d8f7384091 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3066 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-01 20:30:44 +00:00
cuz
efdd68e735 Fix external function names
git-svn-id: svn://svn.cc65.org/cc65/trunk@3063 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-01 08:48:20 +00:00
cuz
111c69a826 String literals can be handled as static data in most cases
git-svn-id: svn://svn.cc65.org/cc65/trunk@3062 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-31 19:51:13 +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
8d8162eb23 Rewrite/cleanup of the complete expression flags handling.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3056 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-31 15:27:33 +00:00
cuz
ef6a034153 Removed unused modules
git-svn-id: svn://svn.cc65.org/cc65/trunk@3051 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-27 14:20:16 +00:00
cuz
fedb566ff1 Some renaming and restructuring
git-svn-id: svn://svn.cc65.org/cc65/trunk@3050 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-26 16:15:28 +00:00
cuz
4f024ca81b Added a missing include
git-svn-id: svn://svn.cc65.org/cc65/trunk@3049 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-26 13:55:48 +00:00
cuz
72923eb316 Generate assembler names for symbols
git-svn-id: svn://svn.cc65.org/cc65/trunk@3048 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-26 13:44:53 +00:00
cuz
2cdef2d58f Add standard names for library functions
git-svn-id: svn://svn.cc65.org/cc65/trunk@3047 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-26 13:42:19 +00:00
cuz
878e4f1352 Changed the expression parser to return the lvalue flag as part of the
ExprDesc structure, not as separate value.
WARNING: The current code does compile but does not work correctly, because
the lvalue flag is part of ExprDesc.Flags and not masked out in several tests
throughout the code.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3046 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-25 20:59:38 +00:00
cuz
556b861640 Better error messages in case of a range error
git-svn-id: svn://svn.cc65.org/cc65/trunk@3042 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-14 15:05:51 +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
19b9305f02 Added 6502 illegal instructions
git-svn-id: svn://svn.cc65.org/cc65/trunk@3022 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-11 20:32:36 +00:00
cuz
1a68dd715a New --list-bytes option
git-svn-id: svn://svn.cc65.org/cc65/trunk@3019 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-10 21:50:13 +00:00
cuz
ab78147991 Fixed a small memory leak
git-svn-id: svn://svn.cc65.org/cc65/trunk@3018 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-10 21:06:53 +00:00
cuz
0effd47c41 Add 6502X cpu
git-svn-id: svn://svn.cc65.org/cc65/trunk@3017 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-10 09:32:01 +00:00
cuz
1286c79d85 Added CPU_6502X for 6502 with illegal opcodes
git-svn-id: svn://svn.cc65.org/cc65/trunk@3016 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-09 21:06:36 +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
d7234541e2 Fixed compiler warnings
git-svn-id: svn://svn.cc65.org/cc65/trunk@3006 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-02 19:17:10 +00:00
cuz
fe9c53730c The type parser didn't check bounds for the type string it created in a
fixed size buffer.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3005 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-02 09:57:05 +00:00
cuz
4add4c3396 More output when using -v.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3004 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-02 09:50:27 +00:00
cuz
1ae117fed8 Fixed a bug in the handling of ranges where the granularity is not one: An
internally generated label could disrupt the output of such a range by
adding an offset not equal to the granularity. The solution is to only
add dependent labels within such a range on all addresses that do not
match the granularity (odd addresses for a .word table for example).


git-svn-id: svn://svn.cc65.org/cc65/trunk@3002 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-29 14:00:28 +00:00
cuz
3ccd9f97c7 Use .addr for address tables
git-svn-id: svn://svn.cc65.org/cc65/trunk@3001 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-28 20:52:28 +00:00
cuz
968cf01d58 Fixed a problem with the ubiquitous_idents change
git-svn-id: svn://svn.cc65.org/cc65/trunk@2983 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-20 13:10:52 +00:00
cuz
c3d510a9bc Add a new feature "ubiquitous_idents" that allows the use of instructions as
identifiers and macro names.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2981 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-20 12:49:36 +00:00
cuz
0eba6f615f Fixed a problem with .global: In some situations, exported symbols went
into the object files with an address size of ADDR_SIZE_DEFAULT, something
which cannot be handled by the linker.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2980 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-19 17:00:12 +00:00
cuz
5c63b08d26 New feature missing_char_term
git-svn-id: svn://svn.cc65.org/cc65/trunk@2964 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-29 15:58:34 +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
04d2a349af Rewrite. This fixes a bug where a forward reference (+1) to a non existing
label caused an internal error. It does also add checking for unreferenced
labels.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2950 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-21 16:15:55 +00:00
cuz
eeea3b9bc2 Adjust year in copyright string
git-svn-id: svn://svn.cc65.org/cc65/trunk@2949 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-21 16:15:04 +00:00
cuz
c638243881 Changed a bug in the the translation table for the Atari: \a (bell) should
now work.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2948 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-21 15:13:45 +00:00
cuz
1447b104db Fixed a problem with conditional assembly. The assembler did not check if end
of lined was reached after a .IF/.ELSE/... This could lead to invalid input
accepted without an error message.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2947 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-21 11:03:08 +00:00
cuz
3f1ebfe116 Fixed a small bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2946 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-20 19:23:03 +00:00
cuz
0bbcaa5c1a New option --list-targets
git-svn-id: svn://svn.cc65.org/cc65/trunk@2945 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-20 09:36:22 +00:00
cuz
60bf40f6db Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2941 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-19 10:38:09 +00:00
cuz
1b81dcc64f Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2940 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-19 10:18:21 +00:00
cuz
1a9c9bf32f Output a warning for a call to memset with a count of zero.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2939 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-18 09:43:08 +00:00
cuz
3f4096d303 Optimization for __bzero.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2933 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-15 22:03:50 +00:00
cuz
09a608cd58 Removed a useless function call
git-svn-id: svn://svn.cc65.org/cc65/trunk@2930 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-14 19:58:48 +00:00
cuz
b78ef1e0b4 Removed obsolete comment
git-svn-id: svn://svn.cc65.org/cc65/trunk@2929 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-14 11:16:49 +00:00
cuz
89fc8f3df7 Fixed a bug: The volatile keyword was not accepted in type casts or as
argument to the sizeof operator, if the type spec is starting with this
keyword.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2921 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-13 22:37:13 +00:00
cuz
5f2569ef28 New target APPLE2ENH
git-svn-id: svn://svn.cc65.org/cc65/trunk@2912 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-11 21:29:09 +00:00
cuz
897b12cdb2 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@2911 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-11 21:28:49 +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
c313ae2ce4 Added a new apple2enh target
git-svn-id: svn://svn.cc65.org/cc65/trunk@2909 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-11 20:52:23 +00:00
cuz
40dc3582a9 Allow push/pop arguments for segment name #pragmas
git-svn-id: svn://svn.cc65.org/cc65/trunk@2907 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-08 22:33:27 +00:00
cuz
742d8c3294 Renamed IS_Pop to IS_Drop
git-svn-id: svn://svn.cc65.org/cc65/trunk@2905 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-07 22:09:25 +00:00
cuz
9d439d9dd2 New module strstack
git-svn-id: svn://svn.cc65.org/cc65/trunk@2904 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-07 22:09:06 +00:00
cuz
d0ea9f34b6 Made several options that can be changed by #pragmas stackable.
Added new #pragma regvars.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2902 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-07 21:53:35 +00:00
cuz
7492c924e3 New module intstack
git-svn-id: svn://svn.cc65.org/cc65/trunk@2901 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-07 21:52:30 +00:00
cuz
04ccfdd660 Added missing 'simple escape sequences'
git-svn-id: svn://svn.cc65.org/cc65/trunk@2894 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:42:19 +00:00
cuz
f2a74164a2 Fixed a bug: Octal character constants were not handled correctly.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2893 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:42:07 +00:00
cuz
6577ca9cb3 SB_GetNumber didn't handle a sign correctly
git-svn-id: svn://svn.cc65.org/cc65/trunk@2892 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:30:08 +00:00
cuz
98e3d2815e Added missing 'simple escape sequences'
git-svn-id: svn://svn.cc65.org/cc65/trunk@2891 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:27:59 +00:00
cuz
9bf337a37b Pass chars as ints
git-svn-id: svn://svn.cc65.org/cc65/trunk@2890 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:25:26 +00:00
cuz
e47ed98aa7 Move the expression test code into separate modules.
The Test() and TestInParens() functions do now return information about the
expression that was tested.
An if... statement where the expression is always true will now print a
warning "Unreachable code" if it has an else clause.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2889 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 18:00:08 +00:00
cuz
9d46a42600 Fixed two errors, skip to end of line in case of an error
git-svn-id: svn://svn.cc65.org/cc65/trunk@2887 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 17:24:30 +00:00
cuz
96f96a5bde Identifiers starting with a dot could not be used as namens for .define
style macros, even with --leading_dots_in_identifiers. This was also true
for symbols with one character names and without a leading dot.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2882 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-02-22 11:34:29 +00:00
cuz
7165d4d77f The disassembler outputs .text instead of .byte
git-svn-id: svn://svn.cc65.org/cc65/trunk@2877 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-01-22 21:15:51 +00:00
cuz
4106dfd526 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2875 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-01-22 21:13:01 +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
77e667c14d Better debug output
git-svn-id: svn://svn.cc65.org/cc65/trunk@2863 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-31 09:55:18 +00:00
cuz
5cc3e809bb Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2861 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-30 22:44:03 +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
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
aa9d9445e8 Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@2837 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-26 21:03:54 +00:00
cuz
baef511276 Fixed address in comment
git-svn-id: svn://svn.cc65.org/cc65/trunk@2826 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-23 08:46:00 +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
01083b9534 Make the scope variables extern
git-svn-id: svn://svn.cc65.org/cc65/trunk@2819 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-22 21:14:32 +00:00
cuz
09a070edc6 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@2818 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-22 20:56:31 +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
1dec560743 Fixed a C99 issue
git-svn-id: svn://svn.cc65.org/cc65/trunk@2816 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-22 20:38:14 +00:00
cuz
72fe2c86a1 Fixed a weird bug. Some special where found to be register variables when they
weren't. Caused by the assignments of the type flags. The flags for the symbol
table entry should get reassigned, because this is not the first time they
caused a problem, but this requires more thought, so I hacked the function
that tests for register vars.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2813 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-21 18:54:39 +00:00
cuz
da019b064a Assume numeric subroutines use anything and change anything.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2801 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-21 10:44:39 +00:00
cuz
b0a2e6375f Fixed wrong assumptions in the optimizer when subroutine calls to absolute
addresses are made.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2800 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-21 10:23:23 +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
6a3ea29429 Set the address size once assembly is terminated
git-svn-id: svn://svn.cc65.org/cc65/trunk@2750 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-13 20:56:31 +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
1b2c277f8b Include exported symbols in debug info
git-svn-id: svn://svn.cc65.org/cc65/trunk@2747 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-13 19:54:38 +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
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
67d4f2b3ce Removed debug code
git-svn-id: svn://svn.cc65.org/cc65/trunk@2730 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-12 15:40:32 +00:00
cuz
841c5f814b Fixed several address size issues
git-svn-id: svn://svn.cc65.org/cc65/trunk@2729 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-12 15:40:08 +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
271391d217 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2727 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-12 12:57:49 +00:00
cuz
cb8c3746f5 A continue statement within a do loop did not work. Cleaned up the loop
code a little bit.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2722 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-09 16:29:59 +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
7f3c28a438 Make .sizeof work with code scopes. First support for segment ranges.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2719 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-06 14:29:16 +00:00
cuz
eea9accba6 Make .sizeof work with code scopes. First support for segment ranges.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2718 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-06 14:16:27 +00:00
cuz
ad86e4679a Make struct work as documented
git-svn-id: svn://svn.cc65.org/cc65/trunk@2716 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-06 13:35:05 +00:00
cuz
788208d7dc Syntax change
git-svn-id: svn://svn.cc65.org/cc65/trunk@2708 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-03 19:51:07 +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
3a7c054f6b Temp fix for address size detection of symbols
git-svn-id: svn://svn.cc65.org/cc65/trunk@2701 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-30 22:54:13 +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
05f3f154a9 Use smart mode, allow more CPUs, fix CPU dependent code, use address sizes
for functions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2694 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-29 07:40:41 +00:00
cuz
b520b182d0 Memory model additions
git-svn-id: svn://svn.cc65.org/cc65/trunk@2693 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-29 07:17:31 +00:00
cuz
add702a2f0 Special code for signed compares against zero
git-svn-id: svn://svn.cc65.org/cc65/trunk@2692 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-29 06:56:24 +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
e3eea961c2 Update by Stefan Haubenthal
git-svn-id: svn://svn.cc65.org/cc65/trunk@2690 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-28 15:57:24 +00:00
cuz
614d23b53a Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2688 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-27 20:43:37 +00:00
cuz
9fea0c5c42 Pass the memory model to the compiler
git-svn-id: svn://svn.cc65.org/cc65/trunk@2685 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-25 18:37:05 +00:00
cuz
349c94f9a2 New --memory-model switch
git-svn-id: svn://svn.cc65.org/cc65/trunk@2684 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-25 18:36:32 +00:00
cuz
5622524cbd New --memory-model option
git-svn-id: svn://svn.cc65.org/cc65/trunk@2683 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-24 19:18:01 +00:00
cuz
e9bd1d42b1 New module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2682 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-24 18:35:29 +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
f99049f84c Hold address sizes in an unsigned char
git-svn-id: svn://svn.cc65.org/cc65/trunk@2680 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-23 21:39:12 +00:00
cuz
eb7fc320cc New DefAddrSize variable
git-svn-id: svn://svn.cc65.org/cc65/trunk@2679 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-23 21:38:54 +00:00
cuz
2863d55ebd New option --memory-model
git-svn-id: svn://svn.cc65.org/cc65/trunk@2678 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-23 21:38:23 +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
efdee34870 Mark RTI as "uses all registers" to avoid problems with the optimizer
removing register loads from an interrupt handler return.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2676 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-22 13:02:37 +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
aa7b723b15 Added long address size
git-svn-id: svn://svn.cc65.org/cc65/trunk@2673 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-18 20:50:36 +00:00
cuz
5ef1f65c9b Allow conditional directives within .STRUCT7:UNION and .ENUM
git-svn-id: svn://svn.cc65.org/cc65/trunk@2672 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-17 18:49:50 +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
ebd2336d2b Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2663 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-13 22:19:56 +00:00
cuz
20608c81ce Added structs and unions, more work on scopes and expressions
git-svn-id: svn://svn.cc65.org/cc65/trunk@2662 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-13 22:03:24 +00:00
cuz
274bafe6a5 Remove bank.offs address spec
git-svn-id: svn://svn.cc65.org/cc65/trunk@2661 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-13 22:02:45 +00:00
cuz
88855545e4 Address size fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@2659 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-13 00:40:40 +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
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
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
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
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
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
e87bec47d7 Allow dumping of symbol expressions
git-svn-id: svn://svn.cc65.org/cc65/trunk@2639 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-11 13:58:00 +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
3d1e244a8a Use safe shift routines
git-svn-id: svn://svn.cc65.org/cc65/trunk@2637 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-11 09:44:19 +00:00
cuz
7e9b389428 New shift module, comment fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@2636 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-11 09:41:07 +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
1f5bd0c5e0 Added more missing ops
git-svn-id: svn://svn.cc65.org/cc65/trunk@2634 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-10 13:58:30 +00:00
cuz
e80c537c1b EXPR_SECTION was missing from dump
git-svn-id: svn://svn.cc65.org/cc65/trunk@2633 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-10 13:51:49 +00:00
cuz
bd2edbf02f Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2630 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-09 23:00:53 +00:00
cuz
6f088806d7 Fixed exports for now
git-svn-id: svn://svn.cc65.org/cc65/trunk@2628 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-09 22:50:36 +00:00
cuz
e5b4efc191 Ignore opctest
git-svn-id: svn://svn.cc65.org/cc65/trunk@2627 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-09 12:52:12 +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
88e702db0f Added .SCOPE/.ENDSCOPE
git-svn-id: svn://svn.cc65.org/cc65/trunk@2624 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-08 23:27:30 +00:00
cuz
587b807921 Files in the file tables have their names in the string pool
git-svn-id: svn://svn.cc65.org/cc65/trunk@2623 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-08 23:20:49 +00:00
cuz
87d3f32be1 More work on address sizes
git-svn-id: svn://svn.cc65.org/cc65/trunk@2622 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-08 23:13:02 +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
066ad63e35 Fixed compiler warnings
git-svn-id: svn://svn.cc65.org/cc65/trunk@2618 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-07 11:32:23 +00:00
cuz
cd8d69d1b0 New module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2617 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-06 20:17:03 +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
4a667ead00 Improved optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@2613 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-05 19:09:53 +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
b34d2df08b New function and bug fix
git-svn-id: svn://svn.cc65.org/cc65/trunk@2609 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-04 18:59:12 +00:00
cuz
b20cc4cc6e Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2604 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-03 16:25:31 +00:00
cuz
fdf047b4d7 PEI is no valid opcode for the 6502/sc02/c02
git-svn-id: svn://svn.cc65.org/cc65/trunk@2602 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-03 15:35:36 +00:00
cuz
86462c321f Fixed missing tab
git-svn-id: svn://svn.cc65.org/cc65/trunk@2601 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-03 14:30:42 +00:00
cuz
6e780debb8 Add dummy target strip
git-svn-id: svn://svn.cc65.org/cc65/trunk@2600 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-03 14:02:18 +00:00
cuz
8729fb4a53 Renamed targets
git-svn-id: svn://svn.cc65.org/cc65/trunk@2599 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-03 12:42:49 +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
e2c4314258 Converted the makefile to use wine under Linux
git-svn-id: svn://svn.cc65.org/cc65/trunk@2597 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-02 21:18:25 +00:00
cuz
e7df2d5d75 Change data types to get a smaller memory footprint
git-svn-id: svn://svn.cc65.org/cc65/trunk@2595 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-31 21:59:21 +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
929b9c174a Removed dead code
git-svn-id: svn://svn.cc65.org/cc65/trunk@2593 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-31 20:36:31 +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
8abe61a32f Added parens
git-svn-id: svn://svn.cc65.org/cc65/trunk@2591 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-31 16:44:20 +00:00
cuz
cba152f777 An "absolute mode override modifier" is now added for instructions where
the assembler will otherwise choose the cheaper zeropage addressing mode
because of the size of the operand.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2590 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-31 16:28:56 +00:00
cuz
7496da8f93 Fixed a bug in the opcode tables
git-svn-id: svn://svn.cc65.org/cc65/trunk@2588 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-30 20:35:07 +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
cuz
2ec21187ca Improvements by Piotr Fusik
git-svn-id: svn://svn.cc65.org/cc65/trunk@2578 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-28 09:09:52 +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
39ad3d6da0 Change API for the Compare function
git-svn-id: svn://svn.cc65.org/cc65/trunk@2573 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-23 14:54:58 +00:00
cuz
48c122e478 Move SymEntry stuff into its own module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2563 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-22 21:24:37 +00:00
cuz
966dbc53d8 Use the new generic hash tables
git-svn-id: svn://svn.cc65.org/cc65/trunk@2561 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-22 19:13:21 +00:00
cuz
ff2dca420b More tweaking of the new hashtab module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2560 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-22 19:13:02 +00:00
cuz
5e07b14e8d Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@2559 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-22 18:47:05 +00:00
cuz
a34f75d0fb Use the new hash table module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2558 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-22 18:13:07 +00:00
cuz
a492e6f895 New generic hash table module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2557 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-22 18:12:43 +00:00
cuz
5956040691 More string buffer functions
git-svn-id: svn://svn.cc65.org/cc65/trunk@2556 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-22 18:12:31 +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
bcb652ae83 Help for --linelabels was missing
git-svn-id: svn://svn.cc65.org/cc65/trunk@2551 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-20 10:02:29 +00:00
izydorst
d4043e87ec VLIR linker malloc's memory, fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@2546 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-17 13:48:43 +00:00