5e2099f019Fixed 'Unknown op size' exception when uppercase sizes were used.chrisly422022-04-26 10:43:07 +0200
ae92da7878Maintenance. Updated all dependencies to the latest versions. Fixed condition code for asr/lsr/lsl, which is has a different behaviour for V flag than asl.chrisly422022-04-07 10:30:12 +0200
85b2596c64Added some more settings for maximum parsed lines inside a macro and maximum displayed lines of code for documentation. RegisterFlow line counting fixed.
v0.8
chrisly422021-10-15 12:57:30 +0200
e0bd6981e3Full support for MC68010 ISA ('movec', 'moves' and new special registers 'SFC' and 'DFC').chrisly422021-10-11 11:27:46 +0200
0ae17046d6Added Language settings page with one option so far (-spaces option). Fixed lexer without -spaces option and directives.chrisly422021-10-09 16:56:06 +0200
031d5ff4abMissing files and fix for optional values in Memory Indirect mode.chrisly422021-10-08 17:52:57 +0200
653f8dc9fcExtended ISA for 68020+ addressing modes (without adding 68020+ instructions).chrisly422021-10-08 17:24:59 +0200
a92630e5c7Added Address Register Indirect with Base Displacement addressing mode.chrisly422021-10-08 15:09:41 +0200
3f1ef0e55aRefactored BNF for base and outer displacement to avoid ambiguity for these expressions.chrisly422021-10-08 11:22:53 +0200
722d4437ecAdded missing support for size qualifiers for base and outer displacement.chrisly422021-10-08 11:07:16 +0200
f1110ac3c9Added 68020 Memory Indirect and Program Counter Memory Indirect addressing modes.chrisly422021-10-08 08:38:04 +0200
7462c5b02dAdded support for SCALE in index addressing modes.chrisly422021-10-07 18:03:12 +0200
680b811e22Macro definition / invocation documentation provider that even tries to expand macros. Moved some util classes around.chrisly422021-10-03 20:26:33 +0200
cbffc3d841Label documentation now also works for local labels and includes end-of-line comment for label, too. Symbol definition documentation now also includes comments in the same way as the label documentation does. Refactored some code.chrisly422021-10-03 18:55:42 +0200
435b30efc3Bump to next version, updated docs due to Yann's first public release of his plugin.chrisly422021-10-02 20:01:51 +0200
c4051a0377'END' detection was breaking parsing, causing havoc.chrisly422021-09-25 16:31:35 +0200
a03de6c394Added documentation provider info for global labels. Shows directives and comments above. Fixed BNF for labels with preprocessor statements. Bumped versions.chrisly422021-09-25 15:11:02 +0200
1bff1a12c2Documentation for instruction with special register shows specific register expected.chrisly422021-09-05 18:33:18 +0200
665947827bUpdated build to latest versions.chrisly422021-09-04 14:04:12 +0200
3bb6165a58Courtesy 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.chrisly422021-09-04 13:11:28 +0200
431caf64fdAdded inspection for unresolved symbols, macros and labels.chrisly422021-08-09 11:26:13 +0200
a3f7ddb4f7New: Added inspection suppression possibility and quickfix.chrisly422021-08-09 10:08:41 +0200
593719043eNew: Code completion for local label definitions, suggesting undefined labels already referenced.chrisly422021-08-08 13:23:15 +0200
e0cdfef42bNew: Files in 'include' directives can be referenced and renamed/refactored.chrisly422021-08-06 20:03:47 +0200
8d7977927fAdded M68kIncludeFileProvider, but dunno what it's actually for.chrisly422021-08-06 12:16:11 +0200
ddf78ec210Slightly 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.chrisly422021-08-06 10:06:48 +0200
1dcf288d27Added inspection to warn about unexpected condition code unaffecting instructions before conditional instructions. Extended documentation. Bugfix in M68kDeadWriteInspection.chrisly422021-08-05 18:42:32 +0200
2abb5af8b0Macros with register name now abort Dead Write analysis. Fix for modifying statements extending the with of the written data.chrisly422021-08-05 16:21:32 +0200
6c9a726b86Preprocessor statements now abort Dead Write analysis.chrisly422021-08-05 15:46:16 +0200
921449cbb8Refactored 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.chrisly422021-08-04 17:39:54 +0200
6f99c2ffccMoved Condition-Code stuff to separate file, added reverse mapping function. Reworked Instruction Documentation provider, now shows condition codes. Cosmetics: Removed MutableList information where unnecessarychrisly422021-08-04 12:24:16 +0200
71398f51d2Reworked and extended ISA to hold condition code testing and affecting information (not used yet). Minor fix for andi/eori/ori to ccr which were not byte sized in ISA. Added alternate condition code tests HS (=CC) and LO (=CS).chrisly422021-08-03 13:45:44 +0200
eb26793a20movem 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.chrisly422021-08-03 10:57:53 +0200
954f42bf63Tweaking for M68kRegisterFlowDocumentationProvider regarding colors, formatting and abbreviated documentation on hover. Prepared next release.
v0.4
chrisly422021-08-03 07:59:47 +0200
94001c8b87Added explicit IndexRegister-PSI-Element. Major rework to support new DocumentationProvider on registers. When asking for documentation on registers, a code flow analysis is done.chrisly422021-08-02 20:54:30 +0200
55403f89a6Added a few tests for M68kSyntaxInspection.chrisly422021-08-02 10:07:25 +0200
7744b589d4Added support for movem with register list crossing from data to address (e.g. d0-a6) as found in p61a source.chrisly422021-08-02 09:41:15 +0200
19e3b519dbBugfix: Macro definitions with colons and without space supported (as found in P61a source).chrisly422021-08-02 09:31:10 +0200
587b284d25Fix in movem ISA (supports pc relative if first parameter). Also, single registers must also work (often optimized by the assembler). Increased default max macro parsing length to 250 lines.chrisly422021-08-02 09:08:01 +0200
44a4721d77Added 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.chrisly422021-08-01 19:51:42 +0200
09a4e62c7cBugfix: 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.chrisly422021-08-01 10:08:01 +0200
ce3cdbbed6Bugfix: Uppercase hexadecimal literals were not parsed (JFlex bug?)chrisly422021-07-31 14:12:58 +0200
27b7593de8Added several missing assembler directives (opt, machine, etc.)chrisly422021-07-31 14:04:18 +0200
3aeb415974Massively reworked and extended ISA-Description class. Added inspection to validate the correctness of a MC68000 instruction regarding operation size and address modes.chrisly422021-07-31 13:56:07 +0200
128330d2c7Added Structure View filters for Symbols, Macros and Labels.chrisly422021-07-30 15:23:08 +0200
ef900e9c19Added LICENSE.TXT, changed build.gradle to 2021.2 and added new build to plugin verification. Minor change to README.md regarding caching of coveralls badge.chrisly422021-07-30 14:05:37 +0200
fa1ef0b3d5Reduced lexer code by combining state rules. Removed one rule, that seemed to be wrong.chrisly422021-07-27 20:00:45 +0200
3de9e9eba2Restored compatibility with IDEs versions < 2021.1. Added PluginVerifier to build.gradle.chrisly422021-07-27 16:43:46 +0200
25450a9bf8Macro 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.chrisly422021-07-27 16:34:49 +0200
6e683eb6a0Started working on macro support. Macro-Definition are now plain, unparsed lines. Added Syntax-Highlighter options.chrisly422021-07-27 12:42:26 +0200
5ffffb5680Added M68kGlobalLabelSymbolCompletionContributor to replace variants returned by M68kGlobalLabelSymbolReference, to have more control over resolution. Contributor also adds registers to code completion. Code tidying.chrisly422021-07-26 19:52:48 +0200
fc5e1f6bf7Enhanced ISA description (no functional changes).chrisly422021-07-26 15:44:13 +0200
ad3b207362Added missing test for comparing expressions. Deleted unused generated file for Label-Implementation, noticed problem in inheritance hierarchy and removed base interface M68kLabel, too.chrisly422021-07-26 13:59:55 +0200
72db8ad8b2Changes to File stubbing, maybe this fixes some strange errors in log.chrisly422021-07-26 13:10:56 +0200
82feb8c43cFixed syntax error for files ending on non-empty linechrisly422021-07-26 10:59:40 +0200
3165d99fc2Changed LookupUtil to use stub indexes instead of iterating over global labels and symbol definitions. Added basic test for Structure View.chrisly422021-07-26 10:50:22 +0200
89ecaeb613Added stubbing and stub index for symbol definitions.chrisly422021-07-25 20:13:13 +0200
83d2ca3304Added first stubbing and stub index for global labels.chrisly422021-07-25 19:53:06 +0200
a800b13a3eCall Word-Index for Global Labels and Symbols instead of iterating over the files. Removed unused file.chrisly422021-07-24 19:46:28 +0200
27d9d3c543Decreased minimum build version to allow the compatible CLion 2019.3.6.chrisly422021-07-20 17:08:53 +0200
3319fc1c45Fixed compatibility with older IntelliJ versions. Minimum version now 2019.3.5, though. Converted a few missing files from Java to Kotlin.
v0.1
chrisly422021-07-20 14:25:41 +0200
9a37b9c569Added separate syntax highlighting for stack pointer vs. normal address registers.chrisly422021-07-20 11:02:11 +0200
c00a403638Added 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" :-/chrisly422021-07-20 10:31:08 +0200
5edaf47f28Renamed Language from M68k to MC68000 to allow coexistence with Yann Cébron's M68k-Plugin (unreleased).chrisly422021-07-19 15:56:08 +0200
25c755d729Reworked 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.chrisly422021-07-18 15:05:59 +0200
349372f6b3Added M68kLexerPrefs (preliminary). Added support for optional space-introducing comments.chrisly422021-07-17 16:35:56 +0200
63c38f68c3Reworked label handling: Colons are no longer part of the label definition itself. Added PsiNamedElement for Labels.chrisly422021-07-17 10:18:36 +0200
14dd7de763Migrated to latest gradle plugin. Upgraded kotlin and assertj version.chrisly422021-07-16 20:00:57 +0200