36 Commits

Author SHA1 Message Date
a03de6c394 Added documentation provider info for global labels. Shows directives and comments above.
Fixed BNF for labels with preprocessor statements.
Bumped versions.
2021-09-25 15:19:05 +02:00
3bb6165a58 Courtesy of Yann:
Bugfix: Special registers for address mode matching only worked with lower case register names.
Bugfix: movem with pc-relative mode was missing for weird immediate mode.
Bugfix: btst with pc-relative and weird immediate mode was missing.
Enhancement: Assembler syntax with implicit immediate 1 for shifts and rotations no longer cause syntax errors.
2021-09-04 14:08:10 +02:00
0cb90ff8d7 'END' directive stops parsing. Prepared next release. 2021-08-09 12:14:02 +02:00
8d7977927f Added M68kIncludeFileProvider, but dunno what it's actually for. 2021-08-06 19:12:54 +02:00
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
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
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
19e3b519db Bugfix: Macro definitions with colons and without space supported (as found in P61a source). 2021-08-02 09:41:51 +02:00
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
ce3cdbbed6 Bugfix: Uppercase hexadecimal literals were not parsed (JFlex bug?) 2021-07-31 14:12:58 +02:00
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
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
9553da6a1c Minor fix for ExpressionsTest. 2021-07-26 20:02:20 +02:00
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
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
82feb8c43c Fixed syntax error for files ending on non-empty line 2021-07-26 10:59:40 +02:00
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
9a37b9c569 Added separate syntax highlighting for stack pointer vs. normal address registers. 2021-07-20 11:02:11 +02:00
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
b966623765 Fixed tests. 2021-07-19 13:35:45 +02:00
66fa728a45 Added local label reference (not final yet), but referencing kind of works. 2021-07-19 12:08:47 +02:00
25c755d729 Reworked BNF for symbol references and program counter. Enhanced syntax highlighting. Continued work on referencing (not yet working). Fixed renaming of Labels and Symbols. Added M68kRenameInputValidator for correct renaming of symbols and labels (allow local labels with dot or dollar). Added UsagesProvider (not sure if working). Added PairedBraceMatcher. 2021-07-18 15:05:59 +02:00
349372f6b3 Added M68kLexerPrefs (preliminary). Added support for optional space-introducing comments. 2021-07-17 16:49:50 +02:00
618a4eee01 Minor test extension. 2021-07-17 12:51:55 +02:00
63c38f68c3 Reworked label handling: Colons are no longer part of the label definition itself. Added PsiNamedElement for Labels. 2021-07-17 10:18:36 +02:00
d53a1fbac8 Nosfe also likes to place assignments with colons. Fixed assignment symbol detection (again :-/). 2021-07-16 14:13:29 +02:00
213150e51f Nosfe likes unquoted file paths with backslashes in include statements :-( 2021-07-16 12:20:36 +02:00
84104c86cd Added support for single = as comparison in expressions. 2021-07-16 12:01:39 +02:00
99ba1014e1 Similar enhanced expression parser asm-ops. 2021-07-16 10:38:58 +02:00
b7f655745b Enhanced expression parser for PC relative symbol and modulo handling and bitwise or. 2021-07-16 10:03:33 +02:00
e33470ea1a Split up opsizes for better syntax highlighting. Fixed bug in macro-call lexer. 2021-07-15 23:03:31 +02:00
beea9b2763 Added macro call. Extended syntax highlighting. 2021-07-15 22:15:22 +02:00
aa14984a8e Made AsmOperands private. Added support for generic assembler directives. Bugfixes. Added more Tests. 2021-07-15 21:00:12 +02:00
f482948abe Added first version of Syntax Highlighting. Commented out some tokens. 2021-07-15 16:40:17 +02:00
03c11ecef9 Fixed addressing modes. Added missing generated class, removed unused one. 2021-07-15 12:45:57 +02:00
2fe70deee2 Added first tests, improved BNF and Lexer. Fixed extra space in assignment symbol. 2021-07-15 12:04:05 +02:00