summaryrefslogtreecommitdiffstats
path: root/kate/data/picsrc.xml
diff options
context:
space:
mode:
Diffstat (limited to 'kate/data/picsrc.xml')
-rw-r--r--kate/data/picsrc.xml402
1 files changed, 402 insertions, 0 deletions
diff --git a/kate/data/picsrc.xml b/kate/data/picsrc.xml
new file mode 100644
index 000000000..57386f559
--- /dev/null
+++ b/kate/data/picsrc.xml
@@ -0,0 +1,402 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE language SYSTEM "language.dtd">
+<!-- kate: space-indent on; indent-width 2; -->
+
+<!-- Microchip PIC assembler syntaxfile for gpasm/mpasm assembler by
+ * Original author: Alain GIBAUD (alain.gibaud@univ-valenciennes.fr)
+ * Small modifications for the new DTD: Joseph Wenninger <jowenn@kde.org>
+ * Updated for 16-bit devices, etc.: Laurence Withers <lwithers@users.sf.net>
+-->
+
+<language name="PicAsm" version="1.07" kateversion="2.3" section="Assembler" extensions="*.src;*.SRC;*.asm;*.ASM;*.pic;*.PIC" mimetype="text/x-PicSrc;text/x-PicHdr" author="Alain GIBAUD (alain.gibaud@univ-valenciennes.fr)" license="LGPL">
+
+ <highlighting>
+ <list name="directives">
+ <item> __BADRAM </item>
+ <item> __CONFIG </item>
+ <item> __IDLOCS </item>
+ <item> __MAXRAM </item>
+
+ <item> cblock </item>
+ <item> constant </item>
+ <item> da </item>
+ <item> data </item>
+ <item> db </item>
+ <item> de </item>
+ <item> dt </item>
+ <item> dw </item>
+ <item> endc </item>
+ <item> endm </item>
+ <item> equ </item>
+ <item> error </item>
+ <item> errorlevel </item>
+ <item> exitm </item>
+ <item> fill </item>
+ <item> list </item>
+ <item> local </item>
+ <item> macro </item>
+ <item> messg </item>
+ <item> noexpand </item>
+ <item> nolist </item>
+ <item> org </item>
+ <item> page </item>
+ <item> processor </item>
+ <item> radix </item>
+ <item> res </item>
+ <item> set </item>
+ <item> space </item>
+ <item> subtitle </item>
+ <item> title </item>
+ <item> variable </item>
+ <item> end </item>
+
+ <item> CBLOCK </item>
+ <item> CONSTANT </item>
+ <item> DA </item>
+ <item> DATA </item>
+ <item> DB </item>
+ <item> DE </item>
+ <item> DT </item>
+ <item> DW </item>
+ <item> ENDC </item>
+ <item> ENDM </item>
+ <item> EQU </item>
+ <item> ERROR </item>
+ <item> ERRORLEVEL </item>
+ <item> EXITM </item>
+ <item> FILL </item>
+ <item> LIST </item>
+ <item> LOCAL </item>
+ <item> MACRO </item>
+ <item> MESSG </item>
+ <item> NOEXPAND </item>
+ <item> NOLIST </item>
+ <item> ORG </item>
+ <item> PAGE </item>
+ <item> PROCESSOR </item>
+ <item> RADIX </item>
+ <item> RES </item>
+ <item> SET </item>
+ <item> SPACE </item>
+ <item> SUBTITLE </item>
+ <item> TITLE </item>
+ <item> VARIABLE </item>
+ <item> END </item>
+ </list>
+
+ <list name="conditional">
+ <item> if </item>
+ <item> else </item>
+ <item> idef </item>
+ <item> ifndef </item>
+ <item> endif </item>
+ <item> while </item>
+ <item> include </item>
+ <item> endw </item>
+ <item> { </item>
+ <item> } </item>
+ </list>
+
+ <list name="gpasm_macro">
+ <item> addcf </item>
+ <item> b </item>
+ <item> clrc </item>
+ <item> clrz </item>
+ <item> setc </item>
+ <item> setz </item>
+ <item> movfw </item>
+ <item> skpc </item>
+ <item> skpz </item>
+ <item> skpnc </item>
+ <item> skpnz </item>
+ <item> subcf </item>
+ <item> tstf </item>
+
+ <item> ADDCF </item>
+ <item> B </item>
+ <item> CLRC </item>
+ <item> CLRZ </item>
+ <item> SETC </item>
+ <item> SETZ </item>
+ <item> MOVFW </item>
+ <item> SKPC </item>
+ <item> SKPZ </item>
+ <item> SKPNC </item>
+ <item> SKPNZ </item>
+ <item> SUBCF </item>
+ <item> TSTF </item>
+ </list>
+
+ <list name="instructions">
+ <item> addlw </item>
+ <item> addwf </item>
+ <item> addwfc </item>
+ <item> andlw </item>
+ <item> andwf </item>
+ <item> bc </item>
+ <item> bcf </item>
+ <item> bn </item>
+ <item> bnc </item>
+ <item> bnov </item>
+ <item> bnz </item>
+ <item> bov </item>
+ <item> bra </item>
+ <item> bsf </item>
+ <item> btg </item>
+ <item> bz </item>
+ <item> btfsc </item>
+ <item> btfss </item>
+ <item> call </item>
+ <item> clrf </item>
+ <item> clrw </item>
+ <item> clrwdt </item>
+ <item> comf </item>
+ <item> cpfseq </item>
+ <item> cpfslt </item>
+ <item> cpfsgt </item>
+ <item> daw </item>
+ <item> decf </item>
+ <item> dcfsnz </item>
+ <item> decfsz </item>
+ <item> goto </item>
+ <item> incf </item>
+ <item> incfsz </item>
+ <item> infsnz </item>
+ <item> iorlw </item>
+ <item> iorwf </item>
+ <item> lfsr </item>
+ <item> movf </item>
+ <item> movff </item>
+ <item> movlb </item>
+ <item> movlw </item>
+ <item> movwf </item>
+ <item> mullw </item>
+ <item> mulwf </item>
+ <item> negf </item>
+ <item> nop </item>
+ <item> option </item>
+ <item> pop </item>
+ <item> push </item>
+ <item> rcall </item>
+ <item> reset </item>
+ <item> retfie </item>
+ <item> retlw </item>
+ <item> return </item>
+ <item> rlcf </item>
+ <item> rlf </item>
+ <item> rlncf </item>
+ <item> rrcf </item>
+ <item> rrf </item>
+ <item> rrncf </item>
+ <item> setf </item>
+ <item> sleep </item>
+ <item> subfwb </item>
+ <item> sublw </item>
+ <item> subwf </item>
+ <item> subwfb </item>
+ <item> swapf </item>
+ <item> tblrd </item>
+ <item> tblwt </item>
+ <item> tstfsz </item>
+ <item> xorlw </item>
+ <item> xorwf </item>
+
+ <item> ADDLW </item>
+ <item> ADDWF </item>
+ <item> ADDWFC </item>
+ <item> ANDLW </item>
+ <item> ANDWF </item>
+ <item> BC </item>
+ <item> BCF </item>
+ <item> BN </item>
+ <item> BNC </item>
+ <item> BNOV </item>
+ <item> BNZ </item>
+ <item> BOV </item>
+ <item> BRA </item>
+ <item> BSF </item>
+ <item> BTG </item>
+ <item> BZ </item>
+ <item> BTFSC </item>
+ <item> BTFSS </item>
+ <item> CALL </item>
+ <item> CLRF </item>
+ <item> CLRW </item>
+ <item> CLRWDT </item>
+ <item> COMF </item>
+ <item> CPFSEQ </item>
+ <item> CPFSLT </item>
+ <item> CPFSGT </item>
+ <item> DAW </item>
+ <item> DCFSNZ </item>
+ <item> DECF </item>
+ <item> DECFSZ </item>
+ <item> GOTO </item>
+ <item> INCF </item>
+ <item> INCFSZ </item>
+ <item> INFSNZ </item>
+ <item> IORLW </item>
+ <item> IORWF </item>
+ <item> LFSR </item>
+ <item> MOVF </item>
+ <item> MOVFF </item>
+ <item> MOVLB </item>
+ <item> MOVLW </item>
+ <item> MOVWF </item>
+ <item> MULLW </item>
+ <item> MULWF </item>
+ <item> NEGF </item>
+ <item> NOP </item>
+ <item> OPTION </item>
+ <item> POP </item>
+ <item> PUSH </item>
+ <item> RCALL </item>
+ <item> RESET </item>
+ <item> RETFIE </item>
+ <item> RETLW </item>
+ <item> RETURN </item>
+ <item> RLCF </item>
+ <item> RLF </item>
+ <item> RLNCF </item>
+ <item> RRCF </item>
+ <item> RRF </item>
+ <item> RRNCF </item>
+ <item> SETF </item>
+ <item> SLEEP </item>
+ <item> SUBFWB </item>
+ <item> SUBLW </item>
+ <item> SUBWF </item>
+ <item> SUBWFB </item>
+ <item> SWAPF </item>
+ <item> TBLRD </item>
+ <item> TBLWT </item>
+ <item> TSTFSZ </item>
+ <item> XORLW </item>
+ <item> XORWF </item>
+ </list>
+
+ <list name="instruction_attr">
+ <item> A </item>
+ <item> ACCESS </item>
+ <item> BANKED </item>
+ <item> W </item>
+ <item> F </item>
+ </list>
+
+ <contexts>
+
+ <!-- The main ('normal') context -->
+
+ <context name="normal" attribute="Normal Text" lineEndContext="#stay">
+ <keyword attribute="Directives" context="#stay" String="directives"/>
+ <keyword attribute="Instructions" context="#stay" String="instructions"/>
+ <keyword attribute="InstructionAttr" context="#stay" String="instruction_attr"/>
+ <keyword attribute="Preprocessor" context="#stay" String="conditional"/>
+ <keyword attribute="GPASM-macros" context="#stay" String="gpasm_macro"/>
+ <HlCHex attribute="Based Numbers" context="#stay"/>
+ <RegExpr attribute="Based Numbers" context="#stay" String="([ \t,][0-9A-F]+H[ \t,])" insensitive="TRUE" />
+ <RegExpr attribute="Based Numbers" context="#stay" String="([ \t,][0-9A-F]+H)$" insensitive="TRUE" />
+ <RegExpr attribute="Based Numbers" context="#stay" String="([ \t,][0-9]+D)" insensitive="TRUE" />
+ <RegExpr attribute="Based Numbers" context="#stay" String="([ \t,][0-7]+O)" insensitive="TRUE" />
+ <RegExpr attribute="Based Numbers" context="#stay" String="([ \t,][0-1]+B)" insensitive="TRUE" />
+ <Int attribute="Non Based Numbers" context="#stay" />
+ <HlCChar attribute="Char" context="#stay"/>
+ <Detect2Chars attribute="Char" context="ASCIIChar" char="A" char1="'" />
+ <Detect2Chars attribute="Char" context="ASCIIChar" char="a" char1="'" />
+ <Detect2Chars attribute="Based Numbers" context="binaryDigits" char="B" char1="'" />
+ <Detect2Chars attribute="Based Numbers" context="binaryDigits" char="b" char1="'" />
+ <Detect2Chars attribute="Based Numbers" context="hexDigits" char="H" char1="'" />
+ <Detect2Chars attribute="Based Numbers" context="hexDigits" char="h" char1="'" />
+ <Detect2Chars attribute="Based Numbers" context="octDigits" char="O" char1="'" />
+ <Detect2Chars attribute="Based Numbers" context="octDigits" char="o" char1="'" />
+ <Detect2Chars attribute="Based Numbers" context="decimalDigits" char="D" char1="'" />
+ <Detect2Chars attribute="Based Numbers" context="decimalDigits" char="d" char1="'" />
+ <DetectChar attribute="String" context="string" char="&quot;" />
+ <DetectChar attribute="Comment" context="comment" char=";" />
+ <AnyChar attribute="Symbol" context="#stay" String="-/*%+=&gt;&lt;&amp;|^!~" />
+ <StringDetect attribute="Preprocessor" context="#stay" String="#define" />
+ <StringDetect attribute="Preprocessor" context="#stay" String="#undefine" />
+ <StringDetect attribute="Preprocessor" context="#stay" String="#v" />
+ </context>
+
+
+
+ <!-- Additional contexts -->
+
+ <context name="string" attribute="String" lineEndContext="#pop">
+ <LineContinue attribute="String" context="#stay"/>
+ <HlCStringChar attribute="Char" context="#stay"/>
+ <DetectChar attribute="String" context="#pop" char="&quot;"/>
+ </context>
+
+ <context name="comment" attribute="Comment" lineEndContext="#pop">
+ <RegExpr attribute="Instructions" context="#stay"
+ String="(INPUT|OUTPUT|PARAMETERS|AUTHOR|EMAIL)" />
+ <RegExpr attribute="Alert" context="#stay" String="(FIXME|TODO)" />
+ </context>
+
+
+
+ <!-- Quoted numbers -->
+
+ <context name="decimalDigits" attribute="Based Numbers" lineEndContext="#pop">
+ <DetectChar attribute="Based Numbers" context="#pop" char="'"/>
+ <RegExpr attribute="Error" context="QuotedNumError" String="\D" />
+ </context>
+
+ <context name="binaryDigits" attribute="Based Numbers" lineEndContext="#pop">
+ <DetectChar attribute="Based Numbers" context="#pop" char="'"/>
+ <RegExpr attribute="Error" context="QuotedNumError" String="[^0-1]" />
+ </context>
+
+ <context name="hexDigits" attribute="Based Numbers" lineEndContext="#pop">
+ <DetectChar attribute="Based Numbers" context="#pop" char="'"/>
+ <RegExpr attribute="Error" context="QuotedNumError" String="[^0-9A-Fa-f]" />
+ </context>
+
+ <context name="octDigits" attribute="Based Numbers" lineEndContext="#pop">
+ <DetectChar attribute="Based Numbers" context="#pop" char="'"/>
+ <RegExpr attribute="Error" context="QuotedNumError" String="[^0-7]" />
+ </context>
+
+ <context name="ASCIIChar" attribute="Char" lineEndContext="#pop">
+ <DetectChar attribute="Char" context="#pop" char="'"/>
+ <RegExpr attribute="Error" context="QuotedNumError" String=".[^']" />
+ </context>
+
+ <context name="QuotedNumError" attribute="Error" lineEndContext="#pop#pop">
+ <DetectChar attribute="Error" context="#pop#pop" char="'" />
+ </context>
+
+ </contexts>
+
+
+ <itemDatas>
+ <itemData name="Normal Text" defStyleNum="dsNormal"/>
+ <itemData name="Directives" defStyleNum="dsOthers"/>
+ <itemData name="Preprocessor" defStyleNum="dsOthers"/>
+ <itemData name="Instructions" defStyleNum="dsKeyword"/>
+ <itemData name="InstructionAttr" defStyleNum="dsNormal" color="#000080" selColor="#000080" bold="0" italic="1"/>
+ <itemData name="Unbased Numbers" defStyleNum="dsDecVal"/>
+ <itemData name="Char" defStyleNum="dsChar"/>
+ <itemData name="String" defStyleNum="dsString"/>
+ <itemData name="Comment" defStyleNum="dsComment" />
+ <itemData name="Symbol" defStyleNum="dsNormal" color="#FF0000" selColor="#083194" bold="0" italic="0"/>
+ <itemData name="Prep. Lib" defStyleNum="dsOthers"/>
+ <itemData name="Based Numbers" defStyleNum="dsBaseN" />
+ <itemData name="GPASM-macros" defStyleNum="dsNormal" color="#000000" selColor="#000000" bold="1" italic="1"/>
+ <itemData name="Alert" defStyleNum="dsAlert" />
+ <itemData name="Error" defStyleNum="dsError" />
+ </itemDatas>
+
+ </highlighting>
+
+
+ <general>
+ <comments>
+ <comment name="singleLine" start=";" />
+ </comments>
+ <keywords casesensitive="1" />
+ </general>
+
+</language>