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.
		
			
				
	
	
		
			71 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<idea-plugin>
 | 
						|
    <id>de.platon42.m68k</id>
 | 
						|
    <name>MC68000 Assembly Language Support</name>
 | 
						|
    <vendor email="chrisly@platon42.de" url="https://github.com/chrisly42/mc68000-asm-plugin">Chris 'platon42' Hodges
 | 
						|
    </vendor>
 | 
						|
 | 
						|
    <description><![CDATA[
 | 
						|
    MC68000 Assembly Language Plugin adds language support for Motorola 68000 (M68k) assembly language files (asm).
 | 
						|
    It provides syntax highlighting and refactoring possibilities among other things.
 | 
						|
    <p>
 | 
						|
    <a href="https://github.com/chrisly42/mc68000-asm-plugin/blob/main/README.md">Full documentation here...</a>
 | 
						|
    ]]></description>
 | 
						|
    <idea-version since-build="203.5981.166"/>
 | 
						|
 | 
						|
    <depends>com.intellij.modules.lang</depends>
 | 
						|
 | 
						|
    <extensions defaultExtensionNs="com.intellij">
 | 
						|
        <fileType name="MC68000 Assembler" implementationClass="de.platon42.intellij.plugins.m68k.M68kFileType"
 | 
						|
                  fieldName="INSTANCE" language="MC68000" extensions="asm;s;i"/>
 | 
						|
        <lang.parserDefinition language="MC68000"
 | 
						|
                               implementationClass="de.platon42.intellij.plugins.m68k.parser.M68kParserDefinition"/>
 | 
						|
        <lang.syntaxHighlighterFactory language="MC68000"
 | 
						|
                                       implementationClass="de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighterFactory"/>
 | 
						|
        <colorSettingsPage implementation="de.platon42.intellij.plugins.m68k.syntax.M68kColorSettingsPage"/>
 | 
						|
        <completion.contributor language="MC68000" implementationClass="de.platon42.intellij.plugins.m68k.asm.M68kMnemonicCompletionContributor"/>
 | 
						|
        <completion.contributor language="MC68000" implementationClass="de.platon42.intellij.plugins.m68k.refs.M68kGlobalLabelSymbolCompletionContributor"/>
 | 
						|
        <completion.contributor language="MC68000" implementationClass="de.platon42.intellij.plugins.m68k.refs.M68kLocalLabelDefCompletionContributor"/>
 | 
						|
        <completion.contributor language="MC68000" implementationClass="de.platon42.intellij.plugins.m68k.refs.M68kMacroCallCompletionContributor"/>
 | 
						|
        <lang.braceMatcher language="MC68000" implementationClass="de.platon42.intellij.plugins.m68k.syntax.M68kPairedBraceMatcher"/>
 | 
						|
        <lang.quoteHandler language="MC68000" implementationClass="de.platon42.intellij.plugins.m68k.M68kStringQuoteHandler"/>
 | 
						|
        <lang.findUsagesProvider language="MC68000" implementationClass="de.platon42.intellij.plugins.m68k.scanner.M68kFindUsagesProvider"/>
 | 
						|
        <lang.psiStructureViewFactory language="MC68000" implementationClass="de.platon42.intellij.plugins.m68k.structureview.M68kStructureViewFactory"/>
 | 
						|
        <lang.inspectionSuppressor language="MC68000" implementationClass="de.platon42.intellij.plugins.m68k.inspections.M68kInspectionSuppressor"/>
 | 
						|
        <lang.elementManipulator forClass="de.platon42.intellij.plugins.m68k.psi.M68kSymbolReference"
 | 
						|
                                 implementationClass="de.platon42.intellij.plugins.m68k.refs.M68kSymbolReferenceElementManipulator"/>
 | 
						|
        <lang.elementManipulator forClass="de.platon42.intellij.plugins.m68k.psi.M68kMacroCall"
 | 
						|
                                 implementationClass="de.platon42.intellij.plugins.m68k.refs.M68kMacroCallElementManipulator"/>
 | 
						|
        <lang.elementManipulator forClass="de.platon42.intellij.plugins.m68k.psi.M68kPreprocessorDirective"
 | 
						|
                                 implementationClass="de.platon42.intellij.plugins.m68k.refs.M68kPreprocessorDirectiveElementManipulator"/>
 | 
						|
        <lang.documentationProvider language="MC68000"
 | 
						|
                                    implementationClass="de.platon42.intellij.plugins.m68k.documentation.M68kSymbolDefinitionDocumentationProvider"/>
 | 
						|
        <lang.documentationProvider language="MC68000"
 | 
						|
                                    implementationClass="de.platon42.intellij.plugins.m68k.documentation.M68kRegisterFlowDocumentationProvider"/>
 | 
						|
        <lang.documentationProvider language="MC68000"
 | 
						|
                                    implementationClass="de.platon42.intellij.plugins.m68k.documentation.M68kInstructionDocumentationProvider"/>
 | 
						|
        <stubElementTypeHolder class="de.platon42.intellij.plugins.m68k.stubs.M68kElementTypes"/>
 | 
						|
        <stubIndex implementation="de.platon42.intellij.plugins.m68k.stubs.M68kGlobalLabelStubIndex"/>
 | 
						|
        <stubIndex implementation="de.platon42.intellij.plugins.m68k.stubs.M68kSymbolDefinitionStubIndex"/>
 | 
						|
        <stubIndex implementation="de.platon42.intellij.plugins.m68k.stubs.M68kMacroDefinitionStubIndex"/>
 | 
						|
        <psi.referenceContributor language="MC68000" implementation="de.platon42.intellij.plugins.m68k.refs.M68kReferenceContributor"/>
 | 
						|
        <gotoSymbolContributor implementation="de.platon42.intellij.plugins.m68k.refs.M68kChooseByNameContributor"/>
 | 
						|
        <renameInputValidator implementation="de.platon42.intellij.plugins.m68k.psi.M68kRenameInputValidator"/>
 | 
						|
        <include.provider implementation="de.platon42.intellij.plugins.m68k.scanner.M68kIncludeFileProvider"/>
 | 
						|
 | 
						|
        <localInspection implementationClass="de.platon42.intellij.plugins.m68k.inspections.M68kSyntaxInspection"
 | 
						|
                         displayName="Assembly instruction validity" groupName="M68k"
 | 
						|
                         enabledByDefault="true" level="ERROR"/>
 | 
						|
        <localInspection implementationClass="de.platon42.intellij.plugins.m68k.inspections.M68kDeadWriteInspection"
 | 
						|
                         displayName="Dead writes to registers" groupName="M68k"
 | 
						|
                         enabledByDefault="true" level="WARNING"/>
 | 
						|
        <localInspection implementationClass="de.platon42.intellij.plugins.m68k.inspections.M68kUnexpectedConditionalInstructionInspection"
 | 
						|
                         displayName="Unaffected condition codes before conditional instruction" groupName="M68k"
 | 
						|
                         enabledByDefault="true" level="WARNING"/>
 | 
						|
        <localInspection implementationClass="de.platon42.intellij.plugins.m68k.inspections.M68kUnresolvedReferenceInspection"
 | 
						|
                         displayName="Unresolved label/symbol/macro reference" groupName="M68k"
 | 
						|
                         enabledByDefault="true" level="WARNING"/>
 | 
						|
    </extensions>
 | 
						|
 | 
						|
    <actions>
 | 
						|
    </actions>
 | 
						|
</idea-plugin> |