1
0
mirror of https://github.com/cc65/cc65.git synced 2024-07-31 11:29:16 +00:00
Commit Graph

1089 Commits

Author SHA1 Message Date
cuz
897f3e9530 Base code for handling different CPUs, more improvements
git-svn-id: svn://svn.cc65.org/cc65/trunk@2253 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-08 11:12:04 +00:00
cuz
045dfad6b5 Added different 65SC02 and 65C02 CPUs
git-svn-id: svn://svn.cc65.org/cc65/trunk@2251 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-07 11:13:13 +00:00
cuz
b1f89ab793 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2250 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-07 11:12:39 +00:00
cuz
e829fe0ee2 Added 65C02 instructions
git-svn-id: svn://svn.cc65.org/cc65/trunk@2249 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-07 10:42:47 +00:00
cuz
33d16833f0 Some CPU definition changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@2248 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-07 08:22:16 +00:00
cuz
0192932e2c More instruction set stuff
git-svn-id: svn://svn.cc65.org/cc65/trunk@2247 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-07 08:13:46 +00:00
cuz
c130e597b0 New option --forget-inc-paths
git-svn-id: svn://svn.cc65.org/cc65/trunk@2243 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-03 11:58:11 +00:00
cuz
39478f2703 New function ForgetAllSearchPaths
git-svn-id: svn://svn.cc65.org/cc65/trunk@2242 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-03 11:51:12 +00:00
cuz
92dfde6c4e Order of keywords on the keyword table was wrong
git-svn-id: svn://svn.cc65.org/cc65/trunk@2240 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-02 10:07:00 +00:00
cuz
f7dfcbcc3d Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2239 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-02 09:55:54 +00:00
cuz
f08179d6af Added the near keyword
git-svn-id: svn://svn.cc65.org/cc65/trunk@2237 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-01 21:38:54 +00:00
cuz
8c62f6b417 The type "enum x" was not handled correctly in sizeof statements and casts.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2235 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-01 21:29:42 +00:00
cuz
d5b3ff4bca Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2234 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-07-26 07:31:15 +00:00
cuz
cc9263d413 Bug: Char arrays with a specified size could not be initialized with literal
strings that had the same length as the char array (in this case the zero
terminator must be omitted by the compiler).


git-svn-id: svn://svn.cc65.org/cc65/trunk@2230 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-07-19 09:12:38 +00:00
cuz
a01d673415 New option --asm-define
git-svn-id: svn://svn.cc65.org/cc65/trunk@2229 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-07-16 05:59:29 +00:00
cuz
76d26ae0a9 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2227 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-27 15:46:20 +00:00
cuz
6766f4a2c1 Octal character constants starting with '2' or '3' did not work.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2225 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-27 08:10:08 +00:00
cuz
309f1f0f88 PEI was broken
git-svn-id: svn://svn.cc65.org/cc65/trunk@2224 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-21 10:09:28 +00:00
cuz
3cbd6ca29b Added new address size override commands z:, a: and f:.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2222 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-17 20:22:14 +00:00
cuz
bd4702cb97 Improve help output
git-svn-id: svn://svn.cc65.org/cc65/trunk@2208 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-11 07:13:54 +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
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
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
c5255302db Increased the string pool size
git-svn-id: svn://svn.cc65.org/cc65/trunk@2200 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-06 06:44:07 +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
f47f86c7b4 Added new ld65 options
git-svn-id: svn://svn.cc65.org/cc65/trunk@2190 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-03 11:27:35 +00:00
cuz
98da4b5811 Added debugging output
git-svn-id: svn://svn.cc65.org/cc65/trunk@2189 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-03 07:25:49 +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
4525b13eb2 Add upper case extensions, use binary search
git-svn-id: svn://svn.cc65.org/cc65/trunk@2183 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-02 11:01:23 +00:00
cuz
1e4af7b04e Use the new filetype module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2182 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-30 20:50:34 +00:00
cuz
d0bb32e6c6 New filetype module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2181 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-30 20:49:19 +00:00
cuz
3629c9ac7c Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2180 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-30 10:25:55 +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
a0d9edf5ba Use AddSearchPathFromEnv
git-svn-id: svn://svn.cc65.org/cc65/trunk@2177 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-29 09:19:12 +00:00
cuz
10243b1bdb Add AddSearchPathFromEnv
git-svn-id: svn://svn.cc65.org/cc65/trunk@2176 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-29 09:19:01 +00:00
cuz
fc78f797ee Use the new searchpath common module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2175 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-29 09:10:18 +00:00
cuz
fda9a3b49a Moved most of cc65/incpath to a common searchpath module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2174 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-28 21:11:47 +00:00
cuz
9aa85743ba Fixed an include file search order problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@2173 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-27 21:48:05 +00:00
cuz
1ccb54d58d Encode option strings in the string pool
git-svn-id: svn://svn.cc65.org/cc65/trunk@2170 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-25 21:06:57 +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
9421bf0e70 New strpool module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2167 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-24 20:51:41 +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
be00adb757 Add a warning for an address expression that is usually the result of a typo
and almost never used in this form.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2158 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-13 19:10:32 +00:00
cuz
faea6dd29c Removed an unused warning
git-svn-id: svn://svn.cc65.org/cc65/trunk@2156 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-11 22:04:52 +00:00
izydorst
24ed6e5e3d fix for previous change: the last vlir chains could be blank, do not pad the last real file
git-svn-id: svn://svn.cc65.org/cc65/trunk@2154 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-09 19:52:23 +00:00
cuz
0a1266e59b Added the restrict keyword just to have it reserved
git-svn-id: svn://svn.cc65.org/cc65/trunk@2153 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-07 21:06:42 +00:00
cuz
e9f6a0a3ab Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@2143 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-04 21:51:13 +00:00
cuz
9330f3dc6a Added a new .MACPACK CBM
git-svn-id: svn://svn.cc65.org/cc65/trunk@2142 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-04 21:25:55 +00:00
cuz
5084e4ada5 New callback module
git-svn-id: svn://svn.cc65.org/cc65/trunk@2140 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-04 11:41:39 +00:00
cuz
84339f43bb Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@2139 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-04 09:31:44 +00:00
cuz
dbbce2e939 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2138 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-03 15:26:35 +00:00
cuz
9a883b6766 Add __NES__ #define
git-svn-id: svn://svn.cc65.org/cc65/trunk@2125 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-02 14:43:30 +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
c347c2ce94 Added a nes target
git-svn-id: svn://svn.cc65.org/cc65/trunk@2119 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-02 13:47:21 +00:00
cuz
986e3779ce Moved CPU definition into common/
git-svn-id: svn://svn.cc65.org/cc65/trunk@2111 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-01 23:24:20 +00:00
cuz
8fb90af8ff Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@2110 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-01 22:38:47 +00:00
cuz
2a5fbd00ef Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@2109 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-01 18:58:35 +00:00
cuz
09629cd229 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@2100 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-28 21:54:06 +00:00
cuz
459cfb06c1 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@2098 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-28 20:23:45 +00:00
cuz
0e32374efe Changed the size of the BRK instruction from 2 to 1
git-svn-id: svn://svn.cc65.org/cc65/trunk@2095 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-28 06:42:28 +00:00
cuz
1015edb2a2 New function FindName()
git-svn-id: svn://svn.cc65.org/cc65/trunk@2094 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-28 06:42:11 +00:00
cuz
94e6e73089 Moved the chiplib module into chip.c
git-svn-id: svn://svn.cc65.org/cc65/trunk@2093 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-28 06:19:33 +00:00
cuz
8bff858b09 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@2092 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-27 15:31:00 +00:00
cuz
251547f028 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@2091 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-27 11:49:53 +00:00
izydorst
951785d434 does not pad the last vlir chain to n*254 bytes filesize
git-svn-id: svn://svn.cc65.org/cc65/trunk@2075 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-26 12:57:30 +00:00
cuz
da57034f4e Fixed a small "problem": When .END is used, the line following this insn
is also put into the listing (but no more).


git-svn-id: svn://svn.cc65.org/cc65/trunk@2074 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-25 20:21:38 +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
izydorst
c415dc82d9 vertical menus height was too small by one pixel
git-svn-id: svn://svn.cc65.org/cc65/trunk@2037 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-04 14:07:01 +00:00
cuz
26cdf3a590 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2035 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-03 10:13:32 +00:00
cuz
8b3ab210be Fixed a bug in character literal handling
git-svn-id: svn://svn.cc65.org/cc65/trunk@2029 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-17 20:18:58 +00:00
cuz
86f78af374 Fixed a few comments
git-svn-id: svn://svn.cc65.org/cc65/trunk@2028 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-17 10:19:53 +00:00
cuz
7d350d3f61 Fixed a bug: .ENDPROC without .PROC would crash the assembler
git-svn-id: svn://svn.cc65.org/cc65/trunk@2027 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-17 10:14:43 +00:00
cuz
53518d59c9 Fixed initializers for standard behaviour (hopefully ok now)
git-svn-id: svn://svn.cc65.org/cc65/trunk@2026 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-16 15:18:10 +00:00
cuz
f6376d7d60 Revoked part of last change - didn't work
git-svn-id: svn://svn.cc65.org/cc65/trunk@2025 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-16 14:47:42 +00:00
cuz
6f52726647 Allow any number of optional braces around all initializers as required by the standard
git-svn-id: svn://svn.cc65.org/cc65/trunk@2024 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-16 14:31:48 +00:00
cuz
c8d76046cb Added better error recovery
git-svn-id: svn://svn.cc65.org/cc65/trunk@2013 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-13 12:35:54 +00:00
cuz
065b8f2596 If main() takes arguments, generate a forced import to a special module
constructor which will setup command line arguments.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2011 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-07 12:41:47 +00:00
cuz
2be826ded6 Remove debugging printf's
git-svn-id: svn://svn.cc65.org/cc65/trunk@2009 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-07 11:51:28 +00:00
cuz
b06d37d809 Added new .FORCEIMPORT pseudo op
git-svn-id: svn://svn.cc65.org/cc65/trunk@2007 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-07 11:33:14 +00:00
cuz
e925aa27ee Improve error recovery
git-svn-id: svn://svn.cc65.org/cc65/trunk@2002 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-06 12:12:25 +00:00
cuz
0ae6ab57ae Last fix was wrong
git-svn-id: svn://svn.cc65.org/cc65/trunk@1999 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-04 11:02:11 +00:00
cuz
c008e555b2 Fixed a bug in sign extension of constant values
git-svn-id: svn://svn.cc65.org/cc65/trunk@1998 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-04 10:46:27 +00:00
cuz
0fd653c416 .incbin did not honor the include search path
git-svn-id: svn://svn.cc65.org/cc65/trunk@1996 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-26 23:17:42 +00:00
cuz
f80a5148bd Fixed problem with array forward decl
git-svn-id: svn://svn.cc65.org/cc65/trunk@1994 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-19 22:58:13 +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
c6cf5d7fd9 Minor cleanup
git-svn-id: svn://svn.cc65.org/cc65/trunk@1979 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-12 23:15:34 +00:00
cuz
4af023a180 Add more co65 options
git-svn-id: svn://svn.cc65.org/cc65/trunk@1975 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-12 14:40:00 +00:00
cuz
686f267324 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1972 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-11 22:40:56 +00:00
cuz
631aeb2a8d Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1971 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-11 22:33:12 +00:00
cuz
606e81df3d Fix memory area start symbol
git-svn-id: svn://svn.cc65.org/cc65/trunk@1970 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-11 12:51:37 +00:00
cuz
b7c44015f7 Add co65 utility
git-svn-id: svn://svn.cc65.org/cc65/trunk@1963 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-10 23:14:23 +00:00
cuz
0346cf692e Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1949 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 23:00:40 +00:00
cuz
061caaca6d New function StrCaseCmp
git-svn-id: svn://svn.cc65.org/cc65/trunk@1948 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 22:23:29 +00:00
cuz
92b18822fa Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@1947 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 21:15:43 +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
5dbc41b0bb Output statistics if -v given
git-svn-id: svn://svn.cc65.org/cc65/trunk@1944 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 16:49:48 +00:00
cuz
79a2185c42 Added capability to conver o65 object files by using the new co65 utility
git-svn-id: svn://svn.cc65.org/cc65/trunk@1943 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 16:48:46 +00:00
cuz
bbb70a2d47 First import
git-svn-id: svn://svn.cc65.org/cc65/trunk@1942 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 16:32:55 +00:00
cuz
b28cf4cfd8 ValidSegName now defined in segnames.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@1941 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:54:47 +00:00
cuz
07cb34ba61 Move ValidSegName into segnames.c
git-svn-id: svn://svn.cc65.org/cc65/trunk@1940 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:53:44 +00:00
cuz
b9e04d5242 Move default segment names into segnames.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@1939 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:45:15 +00:00
cuz
1c5ba2bea5 Use default segment name definitions
git-svn-id: svn://svn.cc65.org/cc65/trunk@1938 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:40:01 +00:00
cuz
800451f1d8 Correct zeropage #def
git-svn-id: svn://svn.cc65.org/cc65/trunk@1937 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:39:36 +00:00
cuz
0c77a8cc34 Define default segment names
git-svn-id: svn://svn.cc65.org/cc65/trunk@1936 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:37:42 +00:00
izydorst
a5eefc2734 fixed VLIR linker (case when chain length was equal to n*254)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1931 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-06 02:00:33 +00:00
izydorst
443efb5f3a fixed value for VLIR record table (points TO the last byte in the sector, not the next one)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1930 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-06 00:23:37 +00:00
cuz
f817b05fa9 Allow initialization of flexible array struct members
git-svn-id: svn://svn.cc65.org/cc65/trunk@1928 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-05 22:02:48 +00:00
cuz
c123666d24 Added flexible array members for structs
git-svn-id: svn://svn.cc65.org/cc65/trunk@1925 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-03 22:14:20 +00:00
cuz
c5868d30c0 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1922 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-02 21:05:39 +00:00
cuz
47ce743518 Fixed a bug in JMP (IND)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1918 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-02 11:19:51 +00:00
cuz
88cb1a9fd8 Error message for negative array sizes.
Restrucured struct decl parsing code.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1914 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-01 12:39:12 +00:00
cuz
7a1a7745eb Fixed the address
git-svn-id: svn://svn.cc65.org/cc65/trunk@1913 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-01 12:38:43 +00:00
cuz
703447dd26 Locals with a qualifier and implicit int type where not parsed correctly
git-svn-id: svn://svn.cc65.org/cc65/trunk@1910 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-28 16:28:41 +00:00
cuz
6e6560abd9 Fixed the last fix. Sigh:-(
git-svn-id: svn://svn.cc65.org/cc65/trunk@1909 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-20 21:02:57 +00:00
cuz
4ca598de3a Fixed the last fix. Sigh:-(
git-svn-id: svn://svn.cc65.org/cc65/trunk@1908 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-20 20:53:42 +00:00
cuz
638f54f3e4 The check for illegal storage classes on globals was wrong
git-svn-id: svn://svn.cc65.org/cc65/trunk@1907 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-20 06:02:33 +00:00
cuz
66f6093ae2 Fixed last fix
git-svn-id: svn://svn.cc65.org/cc65/trunk@1905 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-20 05:56:48 +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
0293cc4bc0 Fixed a problem with line continuations and -T
git-svn-id: svn://svn.cc65.org/cc65/trunk@1893 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-07 21:45:20 +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
d4b73bc0ef Fixed several uses of memory after free()
git-svn-id: svn://svn.cc65.org/cc65/trunk@1879 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-05 19:03:48 +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
cuz
ed2bb59bcb Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1862 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-29 21:23:28 +00:00
cuz
9222de75da Check for implicit int return in all cases
git-svn-id: svn://svn.cc65.org/cc65/trunk@1851 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-26 16:14:57 +00:00
cuz
ed1e1db09b Fixed a bug introduced by EXPR_SEGMENT -> EXPR_SECTION change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1838 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-24 14:39:09 +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
5f666a19b8 Replaced the solution for the array conversion problem by a better one.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1784 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-17 12:12:44 +00:00
cuz
421c8771dc Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1783 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-17 11:39:02 +00:00
izydorst
803c1c0184 using functions from common/ in grc, correct order of menus in test.grc
git-svn-id: svn://svn.cc65.org/cc65/trunk@1779 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-17 09:10:57 +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
cd5f487b8c Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@1765 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-13 20:01:18 +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
1ec291fa4e Fixed a macro problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@1744 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-12 23:19:33 +00:00
cuz
7f9bb30731 Some Watcom related fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1742 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-12 21:53:26 +00:00
cuz
4e2110a7a9 Fixed the inlined strlen function
git-svn-id: svn://svn.cc65.org/cc65/trunk@1738 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-12 17:40:58 +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
11306120ea Fixed a bug that occurred when using // comments at the end of an #if
line.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1735 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-11 15:28:09 +00:00
cuz
2f8c281b89 Fixed hangup for loops in jump cascade
git-svn-id: svn://svn.cc65.org/cc65/trunk@1734 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-11 11:29:17 +00:00
cuz
e4d25caa56 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1717 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-05 12:59:07 +00:00
cuz
cca009fe78 Added stack usage info
git-svn-id: svn://svn.cc65.org/cc65/trunk@1716 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-05 12:59:00 +00:00
cuz
867b2ea2ed Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1714 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-04 11:03:15 +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
40c8cbdca5 Added a harmless function
git-svn-id: svn://svn.cc65.org/cc65/trunk@1686 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-01 23:32:13 +00:00
cuz
086d80e8c4 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1684 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-01 23:32:01 +00:00
cuz
1167d99a9b New .PUSHSEG and .POPSEG commands
git-svn-id: svn://svn.cc65.org/cc65/trunk@1671 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-28 17:42:16 +00:00
cuz
cf2162f5da Move the ValidSegName function into common (segdefs)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1669 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-28 17:34:42 +00:00
cuz
34f42ce630 Added SegDef struct and a few functions to the segdefs module
git-svn-id: svn://svn.cc65.org/cc65/trunk@1668 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-28 17:34:16 +00:00
cuz
6b46bf3b10 Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1667 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-28 15:25:11 +00:00
cuz
0348739164 New --register-space option
git-svn-id: svn://svn.cc65.org/cc65/trunk@1653 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-26 18:27:09 +00:00
cuz
bf5ae8b663 Add compiler options for register variables
git-svn-id: svn://svn.cc65.org/cc65/trunk@1652 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-26 18:23:44 +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
ef886278a8 Make the spawn module an include file as suggested by Greg King
git-svn-id: svn://svn.cc65.org/cc65/trunk@1649 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 21:12:00 +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
85e36f2ea5 Add capability to dump just the segment sizes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1647 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 17:32:16 +00:00
cuz
ea06b7286e Additional pointer load optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@1644 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 17:06:19 +00:00
cuz
9328da18fb Fixed symtab code
git-svn-id: svn://svn.cc65.org/cc65/trunk@1642 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 15:13:03 +00:00
cuz
70755921a9 Re-added register variables.
Changed/added several optimizer steps to detect register variables correctly
or to handle them in a special way.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1636 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 15:05:15 +00:00
cuz
d8338efc53 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1632 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 14:24:48 +00:00
cuz
da44e7ae4b Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1628 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-24 23:41:51 +00:00
cuz
ede471904c Reenable register variables
git-svn-id: svn://svn.cc65.org/cc65/trunk@1625 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-24 23:31:54 +00:00
cuz
b6898c3f1e Check register before static
git-svn-id: svn://svn.cc65.org/cc65/trunk@1624 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-24 21:07:39 +00:00
cuz
89f00263af Fixed a problem with the test expression in a for loop: It was not evaluated
correctly if it did not contain an explicit comparison operator.
Removed an old hack from the test subroutine that did no longer work.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1619 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-24 18:18:16 +00:00
cuz
b948d96206 More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1613 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-23 22:06:26 +00:00
cuz
c61729a15a A few size optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1606 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-23 16:33:35 +00:00
cuz
ac61d6826c Another optimization step
git-svn-id: svn://svn.cc65.org/cc65/trunk@1603 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-23 12:05:23 +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
86fb1f760a New harmless function
git-svn-id: svn://svn.cc65.org/cc65/trunk@1595 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 23:44:36 +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
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
08b095c604 Reversed the last change because it did not work
git-svn-id: svn://svn.cc65.org/cc65/trunk@1566 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 00:33:29 +00:00
cuz
4f9f06c20a Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1565 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 23:28:32 +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
f205950f54 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1561 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 21:10:10 +00:00
cuz
42463beaee Rewrote code for better readability
git-svn-id: svn://svn.cc65.org/cc65/trunk@1560 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 20:46:16 +00:00
cuz
0ba44bb2d4 Small but significant shift optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@1559 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 01:08:14 +00:00
cuz
cfbe5ec5b4 Commiting some old changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1551 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-20 17:04:29 +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
8ef3447248 Fixed an error in struct compare. For one, the behaviour was not standard
compliant, because struct tags were not compare, second, this lead to an
endless loop of recursive calls for a special case of wrong C code.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1523 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-15 13:19:46 +00:00
cuz
ca1386e9d4 Removed unused code
git-svn-id: svn://svn.cc65.org/cc65/trunk@1522 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-14 22:52:29 +00:00
cuz
b1cc64faaa Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1521 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-14 22:52:10 +00:00
cuz
57d6c2f51e New function ReplaceType
git-svn-id: svn://svn.cc65.org/cc65/trunk@1520 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-14 22:51:59 +00:00
cuz
c6abc5d9d4 Make small functions inline
git-svn-id: svn://svn.cc65.org/cc65/trunk@1519 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-14 22:51:39 +00:00
cuz
dadd136ae1 Use constants for datatype sizes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1480 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-02 12:39:10 +00:00
cuz
8810e38bb7 Move the assignment parser into a separate module.
When assigning structures, copy them using the primary register when the
size is 1, 2, or 4.
When assigning structures, allow structures by value when the size is 1,
2, or 4. These structures are expected to be in the primary register. The
only case when this can happen is by return from function, so this change
makes div() work.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1477 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-01 21:27:31 +00:00
cuz
5548b6fd56 Work on better type casts - not yet finished
git-svn-id: svn://svn.cc65.org/cc65/trunk@1476 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-01 15:16:16 +00:00
cuz
571ea849d9 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1475 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-29 17:53:17 +00:00
cuz
914b2a7e37 New store optimization.
New functions RegValIsKnown and RegValIsUnknown should be used instead of
direct compares against zero, so we can change the "unknown" representation
one day.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1466 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-17 21:37:01 +00:00
cuz
4da19658c2 Fixed error "variable has unknown size" for a local array where the size
was not given (introduced by last change).


git-svn-id: svn://svn.cc65.org/cc65/trunk@1465 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-17 21:14:40 +00:00
cuz
49fd7134e5 Fixed a buffer overflow (report from Christian Groessler).
git-svn-id: svn://svn.cc65.org/cc65/trunk@1464 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-14 16:23:26 +00:00
cuz
83fb2c8ab4 Allow initialization of local variables of compound type
git-svn-id: svn://svn.cc65.org/cc65/trunk@1458 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-10 21:15:24 +00:00
cuz
dcdaf8fd49 Restructured DeclareLocals()
git-svn-id: svn://svn.cc65.org/cc65/trunk@1457 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-10 20:24:16 +00:00
cuz
872c2b4453 Made a lot of short functions inline
git-svn-id: svn://svn.cc65.org/cc65/trunk@1456 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-10 20:23:41 +00:00
cuz
2e5fa9575c Add info about more functions
git-svn-id: svn://svn.cc65.org/cc65/trunk@1455 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-09 19:39:45 +00:00
cuz
13642fc6c4 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1454 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-09 19:39:36 +00:00
cuz
e68b8160ed Added more size optimizations, separate module
git-svn-id: svn://svn.cc65.org/cc65/trunk@1453 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-08 20:56:00 +00:00
cuz
3c31d063f7 New optimizer pass OptShift3.
Renamed CE_IsCall to CE_IsCallTo.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1451 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-06 20:54:01 +00:00
cuz
a0496ca53d Fixed an omission in AdjustStackOffset. Use CS_IsBasicBlock in OptStackOps.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1450 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-06 19:03:12 +00:00
cuz
9a62c92489 Improved implementation of OptPushPop
git-svn-id: svn://svn.cc65.org/cc65/trunk@1449 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-06 19:01:46 +00:00
cuz
1647c6783f New functions CS_ResetMarks, CS_ResetAllMarks and CS_IsBasicBlock.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1448 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-06 19:01:16 +00:00
cuz
6047165325 Fixed problem with earlier change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1445 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-05 22:55:42 +00:00
cuz
e9da20f961 Fix codesize setting
git-svn-id: svn://svn.cc65.org/cc65/trunk@1444 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-05 22:37:36 +00:00
cuz
7ce4196829 New/changed optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1443 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-05 20:32:31 +00:00
cuz
bc1085997d Minor improvement of optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1440 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-04 19:27:15 +00:00
cuz
89e8aae7d7 Increase the size of some buffers, so we are at the assembler level able to
handle any identifiers passed from the C level.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1439 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-04 17:54:46 +00:00
cuz
29c217b4b2 Use a #define instead of numeric value
git-svn-id: svn://svn.cc65.org/cc65/trunk@1429 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-03 11:20:45 +00:00
cuz
4389b0c438 Fixed a small bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1426 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-03 09:00:57 +00:00
cuz
f5243e514c Fixed optimizer bug in or/xor
git-svn-id: svn://svn.cc65.org/cc65/trunk@1425 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-02 22:21:42 +00:00
cuz
b4326d1930 Place all declarations that are local to a function into the local function
scope. Apart from some other advantages, this works around a bug where having
an external identifier in global scope and using an "extern" declaration for
exactly the same identifier in a function did not work, because the assembler
refused to export and import one and the same identifier. Since the import
now imports into local scope, both identifiers are distinct for the assembler
and the (valid) C code works.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1424 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-02 13:00:04 +00:00
cuz
980c17daef Allow more flexible numeric flag pragma arguments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1423 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-01 08:13:04 +00:00
cuz
65fa99f65e Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1422 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-30 21:58:39 +00:00
cuz
1f20202239 Ignore also cr's on input. This allows to compile sources with DOS/Windows
line separators on unix systems.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1419 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-30 19:32:33 +00:00
cuz
15d2c8fc83 Removed debug code
git-svn-id: svn://svn.cc65.org/cc65/trunk@1418 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-30 19:05:37 +00:00
cuz
d92676ef60 Add SB_GetNumber to scanstrbuf.c.
Rewrite of CharMapPragma in pragma.c
Fixed bug in scanner.c: Invalid octal constants containing the numbers 8
and 9 were accepted by the compiler.
Moved SignExtendChar from scanner.c to datatype.c.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1416 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-30 18:46:08 +00:00
cuz
2df5db1f04 Call StrBuf destructors
git-svn-id: svn://svn.cc65.org/cc65/trunk@1415 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-29 21:15:02 +00:00
cuz
e880ac6059 Use the new StrBuf features
git-svn-id: svn://svn.cc65.org/cc65/trunk@1414 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-29 21:13:09 +00:00
cuz
ea50befaac Redoing the pragma stuff
git-svn-id: svn://svn.cc65.org/cc65/trunk@1413 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-29 21:09:47 +00:00
cuz
092f10862e New function SB_Skip
git-svn-id: svn://svn.cc65.org/cc65/trunk@1412 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-29 19:55:38 +00:00
cuz
0e4493f075 Add a user index to class StrBuf
git-svn-id: svn://svn.cc65.org/cc65/trunk@1411 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-29 19:49:55 +00:00
cuz
9464c7dd29 Change the .LOCAL command so that the cheap local symbol prefix is kept.
This allows to create macros with local labels that expand to cheap local
symbols when the macro is expanded.
Tip from Dagan Galarneau <dagan@msd.com>


git-svn-id: svn://svn.cc65.org/cc65/trunk@1405 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-25 21:35:00 +00:00
cuz
ffdc8396c5 Changed a function name
git-svn-id: svn://svn.cc65.org/cc65/trunk@1404 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-25 10:42:42 +00:00
cuz
7215ebd145 Added the __DATE__ and __TIME__ preprocessor macros
git-svn-id: svn://svn.cc65.org/cc65/trunk@1403 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-23 21:37:15 +00:00
cuz
6676e27032 Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1402 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-23 21:37:01 +00:00
cuz
257005696f Improve type casts for ints.
Allow the second and third operand of the :? operator to be of type int.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1395 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-18 20:14:51 +00:00
cuz
a6fffdf770 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1393 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-16 20:13:05 +00:00
cuz
89b206f046 .BLANK was also broken
git-svn-id: svn://svn.cc65.org/cc65/trunk@1392 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-14 21:05:12 +00:00
cuz
e1d24121e8 The .IFNBLANK command was broken
git-svn-id: svn://svn.cc65.org/cc65/trunk@1391 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-14 20:56:37 +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
4db7198ade AllocIf would overwrite memory if the .IF nesting became too deep.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1389 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-08-11 14:49:42 +00:00
izydorst
b286cdf2b4 fixed error check
git-svn-id: svn://svn.cc65.org/cc65/trunk@1388 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-08-11 14:38:00 +00:00