Commit Graph
43 Commits
Author SHA1 Message Date
chrisly42 8d7977927f Added M68kIncludeFileProvider, but dunno what it's actually for. 2021-08-06 19:12:54 +02:00
chrisly42 ddf78ec210 Slightly reworked lexer to for a few directives:
'opt' and several other directives ('printt', 'fail' etc.) no longer causes a syntax error when unquoted.
'include', 'incdir' and 'incbin' and 'output' with '<pathname>' quotes no longer cause syntax error.
2021-08-06 10:06:48 +02:00
chrisly42 1dcf288d27 Added inspection to warn about unexpected condition code unaffecting instructions before conditional instructions.
Extended documentation.
Bugfix in M68kDeadWriteInspection.
2021-08-05 18:42:32 +02:00
chrisly42 2abb5af8b0 Macros with register name now abort Dead Write analysis. Fix for modifying statements extending the with of the written data. 2021-08-05 16:21:32 +02:00
chrisly42 6c9a726b86 Preprocessor statements now abort Dead Write analysis. 2021-08-05 15:46:16 +02:00
chrisly42 921449cbb8 Refactored stuff.
Added control flow information to ISA.
In ISA exg is no longer treated as setting a definitive value.
Added inspection find dead writes to registers.
2021-08-04 17:39:54 +02:00
chrisly42 6f99c2ffcc Moved Condition-Code stuff to separate file, added reverse mapping function.
Reworked Instruction Documentation provider, now shows condition codes.
Cosmetics: Removed MutableList information where unnecessary
2021-08-04 12:24:16 +02:00
chrisly42 eb26793a20 movem ISA was wrong regarding movem.w <ea>,<registerlist> (sign extends registers).
Changed Register Flow Documentation wording from 'reads' to 'uses' and from 'modifies' to 'changes'.
Updated screenshot. Added another test case for M68kRegisterFlowDocumentationProviderTest.
2021-08-03 10:57:53 +02:00
chrisly42 954f42bf63 Tweaking for M68kRegisterFlowDocumentationProvider regarding colors, formatting and abbreviated documentation on hover. Prepared next release. 2021-08-03 07:59:47 +02:00
chrisly42 94001c8b87 Added explicit IndexRegister-PSI-Element. Major rework to support new DocumentationProvider on registers.
When asking for documentation on registers, a code flow analysis is done.
2021-08-02 20:54:30 +02:00
chrisly42 55403f89a6 Added a few tests for M68kSyntaxInspection. 2021-08-02 10:07:25 +02:00
chrisly42 7744b589d4 Added support for movem with register list crossing from data to address (e.g. d0-a6) as found in p61a source. 2021-08-02 09:43:42 +02:00
chrisly42 19e3b519db Bugfix: Macro definitions with colons and without space supported (as found in P61a source). 2021-08-02 09:41:51 +02:00
chrisly42 719460ebfe Minor code refactoring. 2021-08-01 20:02:36 +02:00
chrisly42 44a4721d77 Added names for Adressing Modes.
Added Documentation Provider for symbol definitions (shows assigned declaration).
Added Documentation Provider for mnemonics (simple version, generated out of ISA information).
Work in progress for Register Flow Documentation Provider.
New minimum required version of IDE is now 2020.3.
2021-08-01 19:51:42 +02:00
chrisly42 09a4e62c7c Bugfix: Interpretation of register lists was wrong in BNF.
Massively extended M68kIsa with description on register modifications (not yet used in production code).
Changed BNF for additional AddressingMode interfaces.
2021-08-01 10:08:01 +02:00
chrisly42 ce3cdbbed6 Bugfix: Uppercase hexadecimal literals were not parsed (JFlex bug?) 2021-07-31 14:12:58 +02:00
chrisly42 3aeb415974 Massively reworked and extended ISA-Description class.
Added inspection to validate the correctness of a MC68000 instruction regarding operation size and address modes.
2021-07-31 13:56:07 +02:00
chrisly42 128330d2c7 Added Structure View filters for Symbols, Macros and Labels. 2021-07-30 15:25:48 +02:00
chrisly42 25450a9bf8 Macro definitions are now word and indexed, macro calls reference to definition.
Macro definition refactoring and find usages support.
Structural View also shows macro definitions.
Missing REPT and ENDR assembler directives added.
Changed or added some icons at various places.
Reference search for global labels and symbols now uses stub index.
2021-07-27 16:34:49 +02:00
chrisly42 6e683eb6a0 Started working on macro support. Macro-Definition are now plain, unparsed lines. Added Syntax-Highlighter options. 2021-07-27 12:42:26 +02:00
chrisly42 9553da6a1c Minor fix for ExpressionsTest. 2021-07-26 20:02:20 +02:00
chrisly42 5ffffb5680 Added M68kGlobalLabelSymbolCompletionContributor to replace variants returned by M68kGlobalLabelSymbolReference, to have more control over resolution. Contributor also adds registers to code completion. Code tidying. 2021-07-26 19:52:48 +02:00
chrisly42 ad3b207362 Added missing test for comparing expressions. Deleted unused generated file for Label-Implementation, noticed problem in inheritance hierarchy and removed base interface M68kLabel, too. 2021-07-26 14:13:12 +02:00
chrisly42 82feb8c43c Fixed syntax error for files ending on non-empty line 2021-07-26 10:59:40 +02:00
chrisly42 3165d99fc2 Changed LookupUtil to use stub indexes instead of iterating over global labels and symbol definitions. Added basic test for Structure View. 2021-07-26 10:50:22 +02:00
chrisly42 c00a403638 Added support for referencing / refactoring of global variables and symbols. Added getPresentation() for structural view, but does not seem to be working yet. Also Find Usages still reports "Unclassified" :-/ 2021-07-20 10:31:50 +02:00
chrisly42 b966623765 Fixed tests. 2021-07-19 13:35:45 +02:00
chrisly42 66fa728a45 Added local label reference (not final yet), but referencing kind of works. 2021-07-19 12:08:47 +02:00
chrisly42 349372f6b3 Added M68kLexerPrefs (preliminary). Added support for optional space-introducing comments. 2021-07-17 16:49:50 +02:00
chrisly42 618a4eee01 Minor test extension. 2021-07-17 12:51:55 +02:00
chrisly42 9ebc93fd15 Added Mnemonics auto-completion. 2021-07-16 15:23:30 +02:00
chrisly42 d53a1fbac8 Nosfe also likes to place assignments with colons. Fixed assignment symbol detection (again :-/). 2021-07-16 14:13:29 +02:00
chrisly42 213150e51f Nosfe likes unquoted file paths with backslashes in include statements :-( 2021-07-16 12:20:36 +02:00
chrisly42 84104c86cd Added support for single = as comparison in expressions. 2021-07-16 12:01:39 +02:00
chrisly42 99ba1014e1 Similar enhanced expression parser asm-ops. 2021-07-16 10:38:58 +02:00
chrisly42 b7f655745b Enhanced expression parser for PC relative symbol and modulo handling and bitwise or. 2021-07-16 10:03:33 +02:00
chrisly42 e33470ea1a Split up opsizes for better syntax highlighting. Fixed bug in macro-call lexer. 2021-07-15 23:03:31 +02:00
chrisly42 beea9b2763 Added macro call. Extended syntax highlighting. 2021-07-15 22:15:22 +02:00
chrisly42 aa14984a8e Made AsmOperands private. Added support for generic assembler directives. Bugfixes. Added more Tests. 2021-07-15 21:00:12 +02:00
chrisly42 03c11ecef9 Fixed addressing modes. Added missing generated class, removed unused one. 2021-07-15 12:45:57 +02:00
chrisly42 2fe70deee2 Added first tests, improved BNF and Lexer. Fixed extra space in assignment symbol. 2021-07-15 12:04:05 +02:00
chrisly42 1dc418ae84 Added JUnit5 framework. 2021-07-15 10:44:03 +02:00