Commit Graph

  • aed9ed686d Fixed links and version number. main chrisly42 2024-02-20 22:54:31 +0100
  • e3efc545a8 Flushing current state for a release. feat/formatter chrisly42 2024-02-20 22:41:33 +0100
  • df2a220473 WiP formatter. chrisly42 2022-12-23 20:24:50 +0100
  • 130f6a106d Fixed version for plugin verifier. chrisly42 2022-10-29 13:28:09 +0200
  • def6fe306f Added assembler directives to code completion. chrisly42 2022-10-29 13:10:55 +0200
  • cd0bcd22ff Added folding support for functions and macro definitions. chrisly42 2022-10-28 15:21:01 +0200
  • f87bc7fea9 Added simple custom navigation bar. chrisly42 2022-10-27 13:31:34 +0200
  • 64b7042208 addq/subq for address register stated it would affect the condition codes, which it in fact doesn't. chrisly42 2022-10-09 17:20:41 +0200
  • b785b716bb Added semantic highlighting. chrisly42 2022-08-16 21:41:46 +0200
  • 87cca67049 Updated dependencies. Tests work again. Cosmetics, fixed warnings. v0.9 chrisly42 2022-08-16 10:54:57 +0200
  • 5e2099f019 Fixed 'Unknown op size' exception when uppercase sizes were used. chrisly42 2022-04-26 10:43:07 +0200
  • ae92da7878 Maintenance. 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. chrisly42 2022-04-07 10:30:12 +0200
  • 85b2596c64 Added some more settings for maximum parsed lines inside a macro and maximum displayed lines of code for documentation. RegisterFlow line counting fixed. v0.8 chrisly42 2021-10-15 12:57:30 +0200
  • e0bd6981e3 Full support for MC68010 ISA ('movec', 'moves' and new special registers 'SFC' and 'DFC'). chrisly42 2021-10-11 11:27:46 +0200
  • 0ae17046d6 Added Language settings page with one option so far (-spaces option). Fixed lexer without -spaces option and directives. chrisly42 2021-10-09 16:56:06 +0200
  • 031d5ff4ab Missing files and fix for optional values in Memory Indirect mode. chrisly42 2021-10-08 17:52:57 +0200
  • 653f8dc9fc Extended ISA for 68020+ addressing modes (without adding 68020+ instructions). chrisly42 2021-10-08 17:24:59 +0200
  • a92630e5c7 Added Address Register Indirect with Base Displacement addressing mode. chrisly42 2021-10-08 15:09:41 +0200
  • 3f1ef0e55a Refactored BNF for base and outer displacement to avoid ambiguity for these expressions. chrisly42 2021-10-08 11:22:53 +0200
  • 722d4437ec Added missing support for size qualifiers for base and outer displacement. chrisly42 2021-10-08 11:07:16 +0200
  • f1110ac3c9 Added 68020 Memory Indirect and Program Counter Memory Indirect addressing modes. chrisly42 2021-10-08 08:38:04 +0200
  • 7462c5b02d Added support for SCALE in index addressing modes. chrisly42 2021-10-07 18:03:12 +0200
  • 9b93ea05fc Minor renaming & tweaks. chrisly42 2021-10-07 15:33:28 +0200
  • 680b811e22 Macro definition / invocation documentation provider that even tries to expand macros. Moved some util classes around. chrisly42 2021-10-03 20:26:33 +0200
  • cbffc3d841 Label 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. chrisly42 2021-10-03 18:55:42 +0200
  • 435b30efc3 Bump to next version, updated docs due to Yann's first public release of his plugin. chrisly42 2021-10-02 20:01:51 +0200
  • 62f7f13323 Bumped to IntelliJ/CLion 2021.2.2 v0.7 chrisly42 2021-09-25 21:29:17 +0200
  • c4051a0377 'END' detection was breaking parsing, causing havoc. chrisly42 2021-09-25 16:31:35 +0200
  • a03de6c394 Added documentation provider info for global labels. Shows directives and comments above. Fixed BNF for labels with preprocessor statements. Bumped versions. chrisly42 2021-09-25 15:11:02 +0200
  • 1bff1a12c2 Documentation for instruction with special register shows specific register expected. chrisly42 2021-09-05 18:33:18 +0200
  • 665947827b Updated build to latest versions. chrisly42 2021-09-04 14:04:12 +0200
  • 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. chrisly42 2021-09-04 13:11:28 +0200
  • 89bd964fe7 Minor updates to documentation. chrisly42 2021-08-09 15:27:12 +0200
  • 0cb90ff8d7 'END' directive stops parsing. Prepared next release. v0.6 chrisly42 2021-08-09 12:14:02 +0200
  • 431caf64fd Added inspection for unresolved symbols, macros and labels. chrisly42 2021-08-09 11:26:13 +0200
  • a3f7ddb4f7 New: Added inspection suppression possibility and quickfix. chrisly42 2021-08-09 10:08:41 +0200
  • 593719043e New: Code completion for local label definitions, suggesting undefined labels already referenced. chrisly42 2021-08-08 13:23:15 +0200
  • e0cdfef42b New: Files in 'include' directives can be referenced and renamed/refactored. chrisly42 2021-08-06 20:03:47 +0200
  • 8d7977927f Added M68kIncludeFileProvider, but dunno what it's actually for. chrisly42 2021-08-06 12:16:11 +0200
  • 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. chrisly42 2021-08-06 10:06:48 +0200
  • 2c3daf28f7 TODO list. Prepared next release (for tomorrow). v0.5 chrisly42 2021-08-05 19:02:55 +0200
  • 1dcf288d27 Added inspection to warn about unexpected condition code unaffecting instructions before conditional instructions. Extended documentation. Bugfix in M68kDeadWriteInspection. chrisly42 2021-08-05 18:42:32 +0200
  • 2abb5af8b0 Macros with register name now abort Dead Write analysis. Fix for modifying statements extending the with of the written data. chrisly42 2021-08-05 16:21:32 +0200
  • 6c9a726b86 Preprocessor statements now abort Dead Write analysis. chrisly42 2021-08-05 15:46:16 +0200
  • 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. chrisly42 2021-08-04 17:39:54 +0200
  • 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 chrisly42 2021-08-04 12:24:16 +0200
  • 5881dcdaf8 Optimized mnemonic lookup. chrisly42 2021-08-03 18:28:53 +0200
  • 71398f51d2 Reworked 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). chrisly42 2021-08-03 13:45:44 +0200
  • 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. chrisly42 2021-08-03 10:57:53 +0200
  • 954f42bf63 Tweaking for M68kRegisterFlowDocumentationProvider regarding colors, formatting and abbreviated documentation on hover. Prepared next release. v0.4 chrisly42 2021-08-03 07:59:47 +0200
  • 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. chrisly42 2021-08-02 20:54:30 +0200
  • 55403f89a6 Added a few tests for M68kSyntaxInspection. chrisly42 2021-08-02 10:07:25 +0200
  • 7744b589d4 Added support for movem with register list crossing from data to address (e.g. d0-a6) as found in p61a source. chrisly42 2021-08-02 09:41:15 +0200
  • 19e3b519db Bugfix: Macro definitions with colons and without space supported (as found in P61a source). chrisly42 2021-08-02 09:31:10 +0200
  • 587b284d25 Fix 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. chrisly42 2021-08-02 09:08:01 +0200
  • 719460ebfe Minor code refactoring. chrisly42 2021-08-01 20:02:36 +0200
  • 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. chrisly42 2021-08-01 19:51:42 +0200
  • 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. chrisly42 2021-08-01 10:08:01 +0200
  • ce3cdbbed6 Bugfix: Uppercase hexadecimal literals were not parsed (JFlex bug?) chrisly42 2021-07-31 14:12:58 +0200
  • 27b7593de8 Added several missing assembler directives (opt, machine, etc.) chrisly42 2021-07-31 14:04:18 +0200
  • 3aeb415974 Massively reworked and extended ISA-Description class. Added inspection to validate the correctness of a MC68000 instruction regarding operation size and address modes. chrisly42 2021-07-31 13:56:07 +0200
  • 128330d2c7 Added Structure View filters for Symbols, Macros and Labels. chrisly42 2021-07-30 15:23:08 +0200
  • ef900e9c19 Added 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. chrisly42 2021-07-30 14:05:37 +0200
  • 8ea70f0dfa Docs update. Prepared next release. v0.3 chrisly42 2021-07-28 08:00:09 +0200
  • fa1ef0b3d5 Reduced lexer code by combining state rules. Removed one rule, that seemed to be wrong. chrisly42 2021-07-27 20:00:45 +0200
  • 3de9e9eba2 Restored compatibility with IDEs versions < 2021.1. Added PluginVerifier to build.gradle. chrisly42 2021-07-27 16:43:46 +0200
  • 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. chrisly42 2021-07-27 16:34:49 +0200
  • 6e683eb6a0 Started working on macro support. Macro-Definition are now plain, unparsed lines. Added Syntax-Highlighter options. chrisly42 2021-07-27 12:42:26 +0200
  • f006199201 Prepared next release. v0.2 chrisly42 2021-07-27 08:01:03 +0200
  • 9553da6a1c Minor fix for ExpressionsTest. chrisly42 2021-07-26 20:02:20 +0200
  • 5ffffb5680 Added M68kGlobalLabelSymbolCompletionContributor to replace variants returned by M68kGlobalLabelSymbolReference, to have more control over resolution. Contributor also adds registers to code completion. Code tidying. chrisly42 2021-07-26 19:52:48 +0200
  • fc5e1f6bf7 Enhanced ISA description (no functional changes). chrisly42 2021-07-26 15:44:13 +0200
  • 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. chrisly42 2021-07-26 13:59:55 +0200
  • 72db8ad8b2 Changes to File stubbing, maybe this fixes some strange errors in log. chrisly42 2021-07-26 13:10:56 +0200
  • 82feb8c43c Fixed syntax error for files ending on non-empty line chrisly42 2021-07-26 10:59:40 +0200
  • 3165d99fc2 Changed LookupUtil to use stub indexes instead of iterating over global labels and symbol definitions. Added basic test for Structure View. chrisly42 2021-07-26 10:50:22 +0200
  • 89ecaeb613 Added stubbing and stub index for symbol definitions. chrisly42 2021-07-25 20:13:13 +0200
  • 83d2ca3304 Added first stubbing and stub index for global labels. chrisly42 2021-07-25 19:53:06 +0200
  • a800b13a3e Call Word-Index for Global Labels and Symbols instead of iterating over the files. Removed unused file. chrisly42 2021-07-24 19:46:28 +0200
  • d872feeec4 Added plugin icon. chrisly42 2021-07-24 18:27:41 +0200
  • 884624e833 Oops. Not good at dates :-/ chrisly42 2021-07-20 17:19:38 +0200
  • 27d9d3c543 Decreased minimum build version to allow the compatible CLion 2019.3.6. chrisly42 2021-07-20 17:08:53 +0200
  • 3319fc1c45 Fixed compatibility with older IntelliJ versions. Minimum version now 2019.3.5, though. Converted a few missing files from Java to Kotlin. v0.1 chrisly42 2021-07-20 14:25:41 +0200
  • 25245bea10 Rename .java to .kt chrisly42 2021-07-20 14:25:41 +0200
  • 1620f18e37 Added minimal docs and screenshot. chrisly42 2021-07-20 12:54:44 +0200
  • c0e2da6c38 Added structure view. chrisly42 2021-07-20 12:31:38 +0200
  • 331b88c05f Added ChooseByNameContributor. chrisly42 2021-07-20 11:18:42 +0200
  • 9a37b9c569 Added separate syntax highlighting for stack pointer vs. normal address registers. chrisly42 2021-07-20 11:02:11 +0200
  • 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" :-/ chrisly42 2021-07-20 10:31:08 +0200
  • 5edaf47f28 Renamed Language from M68k to MC68000 to allow coexistence with Yann Cébron's M68k-Plugin (unreleased). chrisly42 2021-07-19 15:56:08 +0200
  • b966623765 Fixed tests. chrisly42 2021-07-19 13:35:45 +0200
  • c13e488ab8 Added M68kSymbolReferenceElementManipulator to allow refactoring of local labels. chrisly42 2021-07-19 13:07:08 +0200
  • 56697ac1df Added caching for local label references. chrisly42 2021-07-19 12:44:46 +0200
  • 66fa728a45 Added local label reference (not final yet), but referencing kind of works. chrisly42 2021-07-19 12:08:47 +0200
  • 6073cd86ac Rename .java to .kt chrisly42 2021-07-19 12:08:47 +0200
  • 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. chrisly42 2021-07-18 15:05:59 +0200
  • 349372f6b3 Added M68kLexerPrefs (preliminary). Added support for optional space-introducing comments. chrisly42 2021-07-17 16:35:56 +0200
  • 618a4eee01 Minor test extension. chrisly42 2021-07-17 12:51:55 +0200
  • 63c38f68c3 Reworked label handling: Colons are no longer part of the label definition itself. Added PsiNamedElement for Labels. chrisly42 2021-07-17 10:18:36 +0200
  • 14dd7de763 Migrated to latest gradle plugin. Upgraded kotlin and assertj version. chrisly42 2021-07-16 20:00:57 +0200