194 lines
5.8 KiB
XML
194 lines
5.8 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE language SYSTEM "language.dtd">
|
|
<language name="C65CM" version="1.0" kateversion="5.0" section="Sources" extensions="*.c65" mimetype="text/x-c65cm" author="Converted from Sublime" license="MIT">
|
|
<highlighting>
|
|
<list name="keywords">
|
|
<item>ADD</item>
|
|
<item>AND</item>
|
|
<item>AS</item>
|
|
<item>ASM</item>
|
|
<item>BREAK</item>
|
|
<item>BYTE</item>
|
|
<item>CALL</item>
|
|
<item>CASE</item>
|
|
<item>CONST</item>
|
|
<item>DEC</item>
|
|
<item>DECREMENT</item>
|
|
<item>DEFAULT</item>
|
|
<item>DO</item>
|
|
<item>ELSE</item>
|
|
<item>ENDASM</item>
|
|
<item>ENDIF</item>
|
|
<item>ENDSCRIPT</item>
|
|
<item>ENDSWITCH</item>
|
|
<item>EXIT</item>
|
|
<item>FEND</item>
|
|
<item>FOR</item>
|
|
<item>FUNC</item>
|
|
<item>GOSUB</item>
|
|
<item>GOTO</item>
|
|
<item>IF</item>
|
|
<item>INC</item>
|
|
<item>INCREMENT</item>
|
|
<item>LABEL</item>
|
|
<item>LET</item>
|
|
<item>LIBRARY</item>
|
|
<item>MACRO</item>
|
|
<item>NEXT</item>
|
|
<item>OR</item>
|
|
<item>ORIGIN</item>
|
|
<item>PASSING</item>
|
|
<item>PEEK</item>
|
|
<item>PEEKW</item>
|
|
<item>POINTER</item>
|
|
<item>POKE</item>
|
|
<item>POKEW</item>
|
|
<item>SCRIPT</item>
|
|
<item>STEP</item>
|
|
<item>SUBEND</item>
|
|
<item>SUBTRACT</item>
|
|
<item>SWITCH</item>
|
|
<item>THEN</item>
|
|
<item>TO</item>
|
|
<item>WHILE</item>
|
|
<item>WITH</item>
|
|
<item>WEND</item>
|
|
<item>WORD</item>
|
|
<item>XOR</item>
|
|
</list>
|
|
|
|
<list name="registers">
|
|
<item>ACC</item>
|
|
<item>XREG</item>
|
|
<item>YREG</item>
|
|
</list>
|
|
|
|
<list name="opcodes">
|
|
<item>adc</item>
|
|
<item>and</item>
|
|
<item>asl</item>
|
|
<item>bcc</item>
|
|
<item>bcs</item>
|
|
<item>beq</item>
|
|
<item>bit</item>
|
|
<item>bmi</item>
|
|
<item>bne</item>
|
|
<item>bpl</item>
|
|
<item>brk</item>
|
|
<item>bvc</item>
|
|
<item>bvs</item>
|
|
<item>clc</item>
|
|
<item>cld</item>
|
|
<item>cli</item>
|
|
<item>clv</item>
|
|
<item>cmp</item>
|
|
<item>cpx</item>
|
|
<item>cpy</item>
|
|
<item>dec</item>
|
|
<item>dex</item>
|
|
<item>dey</item>
|
|
<item>eor</item>
|
|
<item>inc</item>
|
|
<item>inx</item>
|
|
<item>iny</item>
|
|
<item>jmp</item>
|
|
<item>jsr</item>
|
|
<item>lda</item>
|
|
<item>ldx</item>
|
|
<item>ldy</item>
|
|
<item>lsr</item>
|
|
<item>nop</item>
|
|
<item>ora</item>
|
|
<item>pha</item>
|
|
<item>php</item>
|
|
<item>pla</item>
|
|
<item>plp</item>
|
|
<item>rol</item>
|
|
<item>ror</item>
|
|
<item>rti</item>
|
|
<item>rts</item>
|
|
<item>sbc</item>
|
|
<item>sec</item>
|
|
<item>sed</item>
|
|
<item>sei</item>
|
|
<item>sta</item>
|
|
<item>stx</item>
|
|
<item>sty</item>
|
|
<item>tax</item>
|
|
<item>tay</item>
|
|
<item>tsx</item>
|
|
<item>txa</item>
|
|
<item>txs</item>
|
|
<item>tya</item>
|
|
</list>
|
|
|
|
<contexts>
|
|
<context name="Normal" attribute="Normal Text" lineEndContext="#stay">
|
|
<!-- C++ style comments -->
|
|
<Detect2Chars attribute="Comment" context="Comment" char="/" char1="/"/>
|
|
|
|
<!-- Assembly style comments -->
|
|
<DetectChar attribute="Comment" context="AsmComment" char=";"/>
|
|
|
|
<!-- Preprocessor directives -->
|
|
<RegExpr attribute="Preprocessor" context="#stay" String="^[ \t]*#(INCLUDE|PRAGMA|IFDEF|IFNDEF|IFEND|PRINT|HALT|UNDEF|DEFINE).*$"/>
|
|
|
|
<!-- Strings -->
|
|
<DetectChar attribute="String" context="String" char="""/>
|
|
|
|
<!-- Parameter modifiers (in, out, io) followed by colon -->
|
|
<RegExpr attribute="Parameter" context="#stay" String="\b(in|out|io)\b(?=\s*:)"/>
|
|
|
|
<!-- Keywords -->
|
|
<keyword attribute="Keyword" context="#stay" String="keywords"/>
|
|
|
|
<!-- Registers -->
|
|
<keyword attribute="Register" context="#stay" String="registers"/>
|
|
|
|
<!-- Assembly opcodes -->
|
|
<keyword attribute="Opcode" context="#stay" String="opcodes"/>
|
|
|
|
<!-- Hexadecimal numbers -->
|
|
<RegExpr attribute="Hex" context="#stay" String="\$[0-9a-fA-F]+"/>
|
|
|
|
<!-- Decimal numbers (including floating point) -->
|
|
<RegExpr attribute="Number" context="#stay" String="\b(([0-9]+)|([0-9]+\.[0-9]+([Ee][-]?[0-9]+)?))\b"/>
|
|
</context>
|
|
|
|
<context name="Comment" attribute="Comment" lineEndContext="#pop">
|
|
<LineContinue attribute="Comment" context="#stay"/>
|
|
</context>
|
|
|
|
<context name="AsmComment" attribute="Comment" lineEndContext="#pop">
|
|
<LineContinue attribute="Comment" context="#stay"/>
|
|
</context>
|
|
|
|
<context name="String" attribute="String" lineEndContext="#stay">
|
|
<RegExpr attribute="Escape" context="#stay" String="\\."/>
|
|
<DetectChar attribute="String" context="#pop" char="""/>
|
|
</context>
|
|
</contexts>
|
|
|
|
<itemDatas>
|
|
<itemData name="Normal Text" defStyleNum="dsNormal"/>
|
|
<itemData name="Keyword" defStyleNum="dsKeyword" bold="1"/>
|
|
<itemData name="Register" defStyleNum="dsConstant" bold="1"/>
|
|
<itemData name="Opcode" defStyleNum="dsBuiltIn"/>
|
|
<itemData name="Parameter" defStyleNum="dsAttribute"/>
|
|
<itemData name="Comment" defStyleNum="dsComment"/>
|
|
<itemData name="String" defStyleNum="dsString"/>
|
|
<itemData name="Escape" defStyleNum="dsSpecialChar"/>
|
|
<itemData name="Preprocessor" defStyleNum="dsPreprocessor"/>
|
|
<itemData name="Number" defStyleNum="dsDecVal"/>
|
|
<itemData name="Hex" defStyleNum="dsBaseN"/>
|
|
</itemDatas>
|
|
</highlighting>
|
|
|
|
<general>
|
|
<comments>
|
|
<comment name="singleLine" start="//"/>
|
|
<comment name="singleLine" start=";"/>
|
|
</comments>
|
|
<keywords casesensitive="0"/>
|
|
</general>
|
|
</language>
|