marcobaye
beb1e178cd
got rid of most of the *_init() functions
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@291 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-08-16 17:39:13 +00:00
marcobaye
2be25080aa
internal cleanup: keyword trees are now only built when needed.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@290 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-08-15 14:55:22 +00:00
marcobaye
b2b14cb176
minor cleanup, no change in functionality
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@288 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-08-12 12:31:06 +00:00
marcobaye
b03b217979
disabled all indexed addressing for m65's "quad" mode, except for LDQ.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@287 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-07-29 23:30:33 +00:00
marcobaye
3db33bafb5
nmos6502 mode now also accepts ALR mnemonic (alias for ASR)
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@286 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-07-28 23:08:07 +00:00
marcobaye
6dd15f7116
added BITQ and ASRQ to m65 cpu.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@283 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-07-27 23:37:36 +00:00
marcobaye
465da8c139
several small changes:
...
fixed a bug where "number out of range" error led to bogus "label already defined" errors
made "number out of range" errors more specific (8/16/24 bit range)
re-phrased two error messages
cleaned up docs concerning "command/opcode/mnemonic/instruction"
added test program to trigger "out of range" errors
internal cleanup concerning INW/DEW/JAM mnemonics
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@278 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-07-18 13:50:46 +00:00
marcobaye
b8f9bb9d36
minor changes only (FIXMEs and docs)
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@276 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-07-17 11:47:05 +00:00
marcobaye
ca08a1d150
started work on !watch and !trace (commented out), minor cleanup, no changes
...
in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@275 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-07-12 18:46:06 +00:00
marcobaye
70b9ee222d
tweaked docs and removed some comments, no change in functionality
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@273 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-06-30 09:24:30 +00:00
marcobaye
9d637eee25
comments only, no change in functionality
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@262 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-06-28 00:05:35 +00:00
marcobaye
c85081cbe4
allowed # characters in MVP/MVN syntax
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@261 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-06-26 10:45:20 +00:00
marcobaye
f9a2f5f698
got rid of DEFINED flag by making UNDEFINED its own number type
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@235 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-06-16 22:44:54 +00:00
marcobaye
f64780a3bd
added typedef for "bits"
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@231 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-06-14 00:26:38 +00:00
marcobaye
7a0f9f9528
disabled NOP mnemonic on m65 cpu
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@211 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-06-03 11:02:16 +00:00
marcobaye
f164b737ad
in 6510 mode, DOP/TOP can now also be written as NOP
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@209 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-06-02 15:09:36 +00:00
marcobaye
c03d1145f6
made warning about "pointer at $ff" depend on cpu flag
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@205 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-31 13:07:40 +00:00
marcobaye
8169cf6e06
changed 6510 to nmos6502 internally
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@199 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-29 13:04:28 +00:00
marcobaye
2ad075911b
enabled !while and new warning about parentheses
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@197 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-28 18:43:49 +00:00
marcobaye
0173eaf777
cleanup, now only output.c accesses CPU_state.pc
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@186 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-22 20:55:36 +00:00
marcobaye
dfca72688b
support for m65 should be finished now
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@185 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-21 23:46:11 +00:00
marcobaye
8eddb4f4bc
started suuport for MEGA65 cpu (not finished yet)
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@184 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-21 19:36:59 +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
20e04e22bc
fix for previous commit: do not complain about () inside []
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@154 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-11 12:42:47 +00:00
marcobaye
4c938480fc
added warning about parentheses for mnemonics without indirect addressing. currently needs "--test", will be enabled in next release.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@153 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-11 11:13:06 +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
bc0efebb3e
cleanup
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@138 4df02467-bbd4-4a76-a152-e7ce94205b78
2020-05-06 11:40:06 +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
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
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
9628f69f4e
ACME release 0.96.4: Fixed bug in zero page wrap-around warnings. Added "!xor" pseudo op. Added "-I" CLI switch.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@97 4df02467-bbd4-4a76-a152-e7ce94205b78
2017-12-22 22:55:36 +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
899f8c3b0c
rearranged some data tables
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@84 4df02467-bbd4-4a76-a152-e7ce94205b78
2017-01-08 22:16:43 +00:00
marcobaye
9603d13031
ACME release 0.96.1: Fixed bug where 65ce02's "(zp),z" addressing mode could be used in 65816 mode.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@81 4df02467-bbd4-4a76-a152-e7ce94205b78
2017-01-05 10:39:19 +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
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
marcobaye
4bcae073f9
refactoring - now all pseudo opcodes are back together in one file. no change in functionality.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@53 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-12-22 00:47:52 +00:00
marcobaye
c53505915d
Refactoring only; no change in functionality.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@47 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-12-03 22:18:06 +00:00
marcobaye
e85f677cbd
Release 0.95.4: Added the last remaining undocumented ("illegal") opcodes: LAS, TAS, SHA, SHX, SHY and ANE.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@44 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-11-25 23:57:15 +00:00
marcobaye
ded7f1a065
Removed a keyword tree with only two entries ("while" and "until") - that was just silly.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@43 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-11-25 16:15:22 +00:00
marcobaye
653ce7549c
Changed comments and struct names; no change in functionality
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@42 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-11-24 14:52:05 +00:00
marcobaye
0e66c1fcb2
Release 0.95.3: Added support for C64DTV, MSVC error output and VICE label dump.
...
Added "c64dtv2" cpu type so you can use its SIR, SAC and BRA opcodes;
along with the undocumented ("illegal") opcodes of the 6510.
Added Martin Piper's "--msvc" patch so error output can be configured
to be in Visual Studio format. Thanks Martin!
Merged third-party patch of unknown origin to output label dump in VICE
format. Still needs work to be configurable about the types of
symbols actually output.
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@41 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-11-23 23:40:01 +00:00
marcobaye
af1bd69455
Release 0.95.2: Changed "save labels" to "symbol list" in a lot of code, error messages and docs.
...
Added "!symbollist" alias for "!sl" pseudo opcode.
Change in undocumented ("illegal") opcodes: ANC #8 now generates 0x0b instead of 0x2b (both opcodes do the same thing).
Added experimental support for generating a report listing. Thanks to Johann Klasek for writing this extension patch.
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@40 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-11-22 01:36:02 +00:00
marcobaye
808ccf39a3
Release 0.95.1: Tweaked type system and changed "label" to "symbol" in a lot of places.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@35 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-06-07 00:12:10 +00:00
marcobaye
d152f60acd
Release 0.95: Added experimental type checking system (still missing docs, however). Made warning about old "!for" syntax configurable.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@34 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-06-02 00:47:46 +00:00
marcobaye
8b2c8187a2
Release 0.94.11: Number arguments to !warn, !error and !serious are now output in hex format as well. Also changed docs accordingly.
...
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@32 4df02467-bbd4-4a76-a152-e7ce94205b78
2014-05-28 21:39:15 +00:00