Commit Graph

68 Commits

Author SHA1 Message Date
marcobaye
c1d8f90fae minor refactoring
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@183 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-20 16:39:19 +00:00
marcobaye
f5e7f23311 fix: values of quoted characters with msb set are now positive
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@182 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-19 21:04:57 +00:00
marcobaye
cd09855098 expression parser now knows about lists, strings, indexing and len().
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@181 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-19 20:41:12 +00:00
marcobaye
916bf9cbc8 part 4 of 4 of preparations for backslash escaping
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@179 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-19 16:28:36 +00:00
marcobaye
beaf86da5b refactored a bit to prepare for backslash escaping
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@175 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-19 11:09:46 +00:00
marcobaye
3448cda3df bugfix: unterminated strings could cause crashes
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@174 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-19 09:41:54 +00:00
marcobaye
2fbbc0324e added comments for next change
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@173 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-18 23:47:15 +00:00
marcobaye
c07f373b53 added code for indexing (commented out atm)
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@169 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-15 15:33:00 +00:00
marcobaye
665c579470 more work on special operators
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@168 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-15 13:46:17 +00:00
marcobaye
5ba17ccfc4 added error output for "unsupported operation"
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@167 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-15 11:39:00 +00:00
marcobaye
4e0d82ac69 added "len" operator, still disabled
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@166 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-14 17:36:09 +00:00
marcobaye
ccaf576e8a added text fields to operator and type structs (for better error messages later on), also renamed some stuff
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@165 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-14 14:01:30 +00:00
marcobaye
7c732fca59 renamed stuff
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@163 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-14 10:19:21 +00:00
marcobaye
a7ec38bff5 changed operator passing from enum to struct ptr, no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@161 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-14 00:04:20 +00:00
marcobaye
fd2ac55392 new priority values, no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@160 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-13 23:53:03 +00:00
marcobaye
365306428b added warnings about binary/octal/hex numbers without any digits, will be error in future! also renamed a function.
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@159 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-13 23:45:03 +00:00
marcobaye
40afd3311a cleaned up expression handler, it's now able to handle more than just ints/floats
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@158 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-13 23:26:40 +00:00
marcobaye
3300c9d468 added some TODO/FIXME comments
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@157 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-13 16:53:52 +00:00
marcobaye
abdea30e33 fixed behaviour of NOT operator concerning type checking: address refs are now negated.
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@152 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-10 22:01:04 +00:00
marcobaye
e908284773 refactored handler function for "float with dyadic operator"
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@151 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-10 21:35:50 +00:00
marcobaye
f7c52d747c split handler function for dyadic operators into int and float functions. refactored int, still need to do float.
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@150 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-10 12:33:41 +00:00
marcobaye
75bd395f2f more renaming
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@149 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-09 23:16:27 +00:00
marcobaye
440dc697ad split handler function for monadic operators into int and float functions
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@148 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-09 23:01:51 +00:00
marcobaye
4cad44f3ec renamed a bunch of stuff
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@147 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-09 20:58:08 +00:00
marcobaye
2b1c9d06bd refactored expression parser (more to come)
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@146 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-09 19:26:40 +00:00
marcobaye
55f303c05e minor refactoring
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@145 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-08 17:42:10 +00:00
marcobaye
c1f62fdef5 step 3 to fix ALU_* calls
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@144 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-08 13:22:15 +00:00
marcobaye
7d4200faa4 step 2 to fix ALU_* calls
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@141 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-08 00:34:46 +00:00
marcobaye
60603c7350 step 1 to fix ALU_* calls
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@140 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-07 23:32:06 +00:00
marcobaye
4565070849 improved "Value not defined" output: Now all undefined symbols of expression
are reported, but never more than once.


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@135 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-02 21:59:20 +00:00
marcobaye
d1ac849272 still more cleanup
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@133 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-02 14:58:17 +00:00
marcobaye
54defa1add cleanup
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@132 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-02 11:28:15 +00:00
marcobaye
e3e68af762 more cleanup
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@131 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-02 10:40:10 +00:00
marcobaye
7286e00855 typedef'd boolean to make source more readable. added "--test" option
(unused atm). no change in functionality.


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@130 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-01 21:01:23 +00:00
marcobaye
bf074b830d just added comments for future cleanup
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@129 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-04-30 16:34:09 +00:00
marcobaye
669f95c238 renamed a bunch of stuff, no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@128 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-04-28 16:02:09 +00:00
marcobaye
0a4c13bb2e internal cleanup, no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@127 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-04-28 11:18:22 +00:00
marcobaye
c4a88fa738 internal cleanup: instead of "value exists" flag, there is now a "expression is empty" field
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@126 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-04-26 22:26:05 +00:00
marcobaye
68b4409b1c internal cleanup: moved "indirect" flag from result to expression struct
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@125 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-04-26 20:14:39 +00:00
marcobaye
41f9534b99 more internal cleanup
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@124 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-04-26 18:53:14 +00:00
marcobaye
a4afd81f42 some internal cleanup concerning empty expressions
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@123 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-04-26 16:24:34 +00:00
marcobaye
c6f443d581 minor fix for output of segment list. no other change in functionality, only
internal cleanup (added some comments and TODOs)


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@122 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-04-25 10:20:52 +00:00
marcobaye
2ad798bef2 ACME release 0.96.5: Added "//" comments, added "--ignore-zeroes" and "--strict-segments" CLI switches.
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@121 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-04-14 00:28:31 +00:00
marcobaye
99d866e2e8 Some small changes in source, no change in functionality.
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@104 4df02467-bbd4-4a76-a152-e7ce94205b78
2019-02-01 11:23:28 +00:00
marcobaye
7cb100c480 ACME release 0.96.3: Added "!hex" and "!skip" pseudoops. Added cheap locals.
Added CLI switch to change pseudoop prefix to '.'
Fixed a bug in expression parser and added a warning.


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@94 4df02467-bbd4-4a76-a152-e7ce94205b78
2017-10-29 23:29:07 +00:00
marcobaye
47f09e9804 a bit of internal cleanup of names and comments, no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@92 4df02467-bbd4-4a76-a152-e7ce94205b78
2017-10-21 19:59:56 +00:00
marcobaye
294fe25c36 ACME Release 0.96: Added experimental support for instruction sets of Rockwell 65C02, WDC 65C02(S), CSG 65CE02 and CSG 4502.
Stack indexing can now be given either as ",s" or as ",sp" (only relevant for 65816 and 65CE02).


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@78 4df02467-bbd4-4a76-a152-e7ce94205b78
2016-12-28 20:32:00 +00:00
marcobaye
a63007c0f9 internal cleanup (zone -> scope), no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@73 4df02467-bbd4-4a76-a152-e7ce94205b78
2016-08-05 09:59:07 +00:00
marcobaye
5240b5eff4 Comments and whitespace only, no change in functionality.
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@68 4df02467-bbd4-4a76-a152-e7ce94205b78
2016-02-21 23:08:02 +00:00
marcobaye
8d2719db8a Release 0.95.6 (intermediate release): Removed ANC from DTV2 mode, "Value not defined"
message now includes symbol name, fixed bug in type system (!for loop counters), added
address() as alternative to addr(), fixed bug in report listing generator (CR in input
caused additional blank lines in output).


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@63 4df02467-bbd4-4a76-a152-e7ce94205b78
2015-06-14 23:16:23 +00:00