cuz
3894b074a6
Move more stuff from scanner.c into the new module token.c.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3801 b7a2c559-68d2-44c3-8de9-860c34a00d81
2007-08-28 21:14:21 +00:00
cuz
0b4a94a65e
Preparation for introducing token sources.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3798 b7a2c559-68d2-44c3-8de9-860c34a00d81
2007-08-27 20:39:02 +00:00
cuz
b6cb833560
Don't check for open .IF clauses when reaching the end of pushed input data.
...
This will allow to write macros that contain open .IFs.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3740 b7a2c559-68d2-44c3-8de9-860c34a00d81
2006-05-21 11:23:22 +00:00
cuz
84706bd2d5
Fixed portability problems with va_copy. In three places, calls to fstat
...
had to be replaced by calls to stat, because fileno is no longer available
when forcing the compiler into pure c89 (or c99) mode.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3683 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-12-11 12:40:51 +00:00
cuz
69485b5000
Fixed a problem with --feature labels_without_colons: The scanner inserts
...
a space at the beginning of a new file, with the assumption that this is a
"neutral" character. If above feature is enabled, it is no longer neutral,
so read the first character from the new input instead.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3650 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-11-20 12:30:24 +00:00
cuz
2a19f6b700
Fixed minor and rather obscure problem: When including files, the line after
...
the .include statement went into the listing file, before the contents of
the include file. The problem was caused by the several levels of lookahead
in the scanner, and the only way to avoid it was to remove the calls to
NextTok () in relevant places - and add compensation for it in others.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3609 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-08-31 21:29:11 +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
765dc3442b
New .sprintf function
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3508 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-05-10 15:42:32 +00:00
cuz
76d94bc8d9
Added a .IDENT function
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3506 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-05-09 18:57:03 +00:00
cuz
d204e4a1ad
Added zilog/intel style hex numbers
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3242 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-11 19:01:51 +00:00
cuz
7d0eb0d3ff
Added new CPU SWEET16
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3208 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-03 21:26:00 +00:00
cuz
777dcff9bf
New condes type interruptor
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3187 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:15:01 +00:00
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
c12c231f14
Add := assignment op, define some currently unused keywords
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2542 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-17 00:38:21 +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
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
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
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
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
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
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
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
208090ea36
Added .charmap
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1163 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-18 09:11:57 +00:00
cuz
2d96df46f1
Add new feature "leading_dot_in_identifiers".
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1156 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-14 10:05:51 +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
857a362e78
Partially fixed a bug with the long addressing modes that was introduced
...
with a change in the scanner and went undetected since then. Use of symbols
as lower part of the address does still not work.
git-svn-id: svn://svn.cc65.org/cc65/trunk@632 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-19 23:02:38 +00:00
cuz
8add1ad057
Use chartype.h instead of ctype.h
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@593 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-05 19:24:47 +00:00
cuz
77ec52a06d
OS/2 EMX fix
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@588 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-03 20:49:07 +00:00
cuz
b9970cb7da
Working on the condes feature
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@451 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-11-20 15:22:57 +00:00
cuz
9977ddd973
Add initializer
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@406 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-10-30 19:30:26 +00:00
cuz
d27cd62465
Added new emulation feature: loose_char_term
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@316 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-09-02 12:01:40 +00:00
cuz
6288682343
Separated the emulation features in a module.
...
Add a new command line option --feature that allows to set emulation
features from the command line.
git-svn-id: svn://svn.cc65.org/cc65/trunk@311 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-09-02 11:35:22 +00:00
cuz
51543fddb0
Increased the file count to 16 bits when written to the object file.
...
Moved the input file table to a separate module and added an AddFile()
function to add files to this table.
Removed the 8 bit limit for the file number in several places (the file
number is still 8 bits in the file position structure).
Added a pseudo instruction .dbg that will be used to add debug info from
high level code to the assembler source.
Added a subkey "file" to the .dbg command that allows to add a file to the
file table that is later written to the object file.
git-svn-id: svn://svn.cc65.org/cc65/trunk@258 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-08-01 21:36:45 +00:00
cuz
5ee8618510
Use the CHECK macros from the common dir
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@251 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-08-01 15:17:43 +00:00