<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd"> <language name="Motorola DSP56k" section="Assembler" version="1.00" kateversion="2.4" extensions="*.asm;*.inc;*.ASM;*.INC" author="Miro Kropacek (miro.kropacek@gmail.com)" license="LGPL"> <highlighting> <list name="Data Registers"> <item>x</item> <item>x0</item> <item>x1</item> <item>y</item> <item>y0</item> <item>y1</item> <item>a2</item> <item>a1</item> <item>a0</item> <item>a</item> <item>a10</item> <item>ab</item> <item>b2</item> <item>b1</item> <item>b0</item> <item>b</item> <item>b10</item> <item>ba</item> </list> <list name="Address Registers"> <item>r0</item> <item>r1</item> <item>r2</item> <item>r3</item> <item>r4</item> <item>r5</item> <item>r6</item> <item>r7</item> </list> <list name="Offset Registers"> <item>n0</item> <item>n1</item> <item>n2</item> <item>n3</item> <item>n4</item> <item>n5</item> <item>n6</item> <item>n7</item> </list> <list name="Modifier Registers"> <item>m0</item> <item>m1</item> <item>m2</item> <item>m3</item> <item>m4</item> <item>m5</item> <item>m6</item> <item>m7</item> </list> <list name="Control Registers"> <item>la</item> <item>lc</item> <item>pc</item> <item>ssh</item> <item>ssl</item> <item>omr</item> <item>sr</item> <item>sp</item> <item>mr</item> <item>ccr</item> </list> <list name="Instructions"> <item>abs</item> <item>adc</item> <item>add</item> <item>addl</item> <item>addr</item> <item>and</item> <item>andi</item> <item>asl</item> <item>asr</item> <item>bchg</item> <item>bclr</item> <item>bset</item> <item>btst</item> <item>clr</item> <item>cmp</item> <item>cmpm</item> <item>div</item> <item>do</item> <item>enddo</item> <item>eor</item> <item>illegal</item> <item>jcc</item> <item>jhs</item> <item>jcs</item> <item>jls</item> <item>jec</item> <item>jeq</item> <item>jes</item> <item>jge</item> <item>jgt</item> <item>jlc</item> <item>jle</item> <item>jls</item> <item>jlt</item> <item>jmi</item> <item>jne</item> <item>jnr</item> <item>jpl</item> <item>jnn</item> <item>jclr</item> <item>jmp</item> <item>jscc</item> <item>jshs</item> <item>jscs</item> <item>jsls</item> <item>jsec</item> <item>jseq</item> <item>jses</item> <item>jsge</item> <item>jsgt</item> <item>jslc</item> <item>jsle</item> <item>jsls</item> <item>jslt</item> <item>jsmi</item> <item>jsne</item> <item>jsnr</item> <item>jspl</item> <item>jsnn</item> <item>jsclr</item> <item>jset</item> <item>jsr</item> <item>jsset</item> <item>lsl</item> <item>lsr</item> <item>lua</item> <item>mac</item> <item>macr</item> <item>move</item> <item>movec</item> <item>movem</item> <item>movep</item> <item>mpy</item> <item>mpyr</item> <item>neg</item> <item>nop</item> <item>norm</item> <item>not</item> <item>or</item> <item>ori</item> <item>rep</item> <item>reset</item> <item>rnd</item> <item>rol</item> <item>ror</item> <item>rti</item> <item>rts</item> <item>sbc</item> <item>stop</item> <item>sub</item> <item>subl</item> <item>subr</item> <item>swi</item> <item>tcc</item> <item>ths</item> <item>tcs</item> <item>tls</item> <item>tec</item> <item>teq</item> <item>tes</item> <item>tge</item> <item>tgt</item> <item>tlc</item> <item>tle</item> <item>tls</item> <item>tlt</item> <item>tmi</item> <item>tne</item> <item>tnr</item> <item>tpl</item> <item>snn</item> <item>tfr</item> <item>tst</item> <item>wait</item> </list> <list name="Directives"> <item>endif</item> <item>endc</item> <item>else</item> <item>ifne</item> <item>if</item> <item>ifeq</item> <item>ifle</item> <item>iflt</item> <item>ifge</item> <item>ifgt</item> <item>include</item> <item>incbin</item> <item>printval</item> <item>pass1val</item> <item>pass2val</item> <item>fail</item> <item>endm</item> <item>end</item> <item>org</item> <item>ds</item> <item>dsm</item> <item>list</item> <item>nolist</item> <item>macro</item> <item>dc</item> <item>equ</item> </list> <contexts> <!-- name = name of context, attribute = name of item data --> <context attribute="Normal Text" lineEndContext="#pop" name="Normal Text" > <RegExpr attribute="Memory" context="#pop" String="[xylpXYLP]:"/> <keyword attribute="Data Registers" context="#pop" String="Data Registers"/> <keyword attribute="Address Registers" context="#pop" String="Address Registers"/> <keyword attribute="Offset Registers" context="#pop" String="Offset Registers"/> <keyword attribute="Modifier Registers" context="#pop" String="Modifier Registers"/> <keyword attribute="Control Registers" context="#pop" String="Control Registers"/> <keyword attribute="Instructions" context="#pop" String="Instructions"/> <keyword attribute="Directives" context="#pop" String="Directives"/> <RegExpr attribute="Label" context="#pop" String="^[A-Za-z][A-Za-z_.0-9]*:?"/> <RegExpr attribute="Local label" context="#pop" String="^_[A-Za-z_][A-Za-z_.0-9]*:?"/> <DetectChar attribute="Comment" context="Comment" char=";"/> <DetectChar attribute="Comment" context="Comment" char="*" firstNonSpace="true"/> <DetectChar attribute="Constant" context="Constant" char="#"/> <DetectChar attribute="BaseN" context="Number16" char="$"/> <DetectChar attribute="BaseN" context="Number2" char="%"/> <DetectChar attribute="BaseN" context="Number8" char="@"/> <Float attribute="Float" context="#pop"/> <Int attribute="Number" context="#pop"/> <RangeDetect attribute="Char" context="#pop" char="'" char1="'"/> <AnyChar attribute="String" context="String" String=""'"/> </context> <context name="Comment" attribute="Comment" lineEndContext="#pop"/> <context name="String" attribute="String" lineEndContext="#pop"> <AnyChar attribute="String" context="#pop" String=""'"/> </context> <context name="Constant" attribute="Constant" lineEndContext="#pop"> <RegExpr attribute="Constant" context="Operators" String="[0-9]+"/> <RegExpr attribute="Constant" context="Operators" String="\$[A-Fa-f0-9]+"/> <RegExpr attribute="Constant" context="Operators" String="@[0-7]+"/> <RegExpr attribute="Constant" context="Operators" String="%[01]+"/> <RegExpr attribute="Label" context="Operators" String="[A-Za-z_][A-Za-z_.0-9]*"/> <RegExpr attribute="Local label" context="Operators" String="\.[A-Za-z_][A-Za-z_.0-9]*"/> <RangeDetect attribute="Char" context="#pop" char="'" char1="'"/> <DetectChar attribute="Normal Text" char="," context="#pop"/> <DetectSpaces attribute="Normal Text" context="#pop"/> <DetectChar attribute="Normal Text" char="(" context="#stay"/> </context> <context name="Operators" attribute="Normal Text" lineEndContext="#pop"> <DetectChar attribute="Normal Text" char="|" context="#pop"/> <DetectChar attribute="Normal Text" char="&" context="#pop"/> <DetectChar attribute="Normal Text" char="^" context="#pop"/> <DetectChar attribute="Normal Text" char="*" context="#pop"/> <DetectChar attribute="Normal Text" char="(" context="#pop"/> <DetectChar attribute="Normal Text" char=")" context="#pop"/> <DetectChar attribute="Normal Text" char="+" context="#pop"/> <DetectChar attribute="Normal Text" char="-" context="#pop"/> <DetectChar attribute="Normal Text" char="/" context="#pop"/> <DetectChar attribute="Normal Text" char="~" context="#pop"/> <DetectChar attribute="Normal Text" char="!" context="#pop"/> <DetectChar attribute="Normal Text" char="%" context="#pop"/> <Detect2Chars attribute="Normal Text" char="<" char1="<" context="#pop"/> <Detect2Chars attribute="Normal Text" char=">" char1=">" context="#pop"/> <DetectChar attribute="Normal Text" char="," context="#pop#pop"/> <DetectSpaces attribute="Normal Text" context="#pop#pop"/> </context> <context name="Number16" attribute="BaseN" lineEndContext="#pop"> <RegExpr attribute="BaseN" context="#pop" String="[A-Fa-f0-9]+"/> </context> <context name="Number2" attribute="BaseN" lineEndContext="#pop"> <RegExpr attribute="BaseN" context="#pop" String="[01]+"/> </context> <context name="Number8" attribute="BaseN" lineEndContext="#pop"> <RegExpr attribute="BaseN" context="#pop" String="[0-7]+"/> </context> </contexts> <itemDatas> <!-- keywords --> <itemData name="Normal Text" defStyleNum="dsNormal"/> <itemData name="Data Registers" defStyleNum="dsDataType"/> <itemData name="Address Registers" defStyleNum="dsDataType"/> <itemData name="Offset Registers" defStyleNum="dsDataType"/> <itemData name="Modifier Registers" defStyleNum="dsDataType"/> <itemData name="Control Registers" defStyleNum="dsDataType"/> <itemData name="Instructions" bold="true" defStyleNum="dsKeyword"/> <itemData name="Directives" bold="true" defStyleNum="dsOthers"/> <itemData name="Memory" bold="true" defStyleNum="dsOthers"/> <!-- defined in contexts --> <itemData name="Comment" italic="false" defStyleNum="dsComment"/> <itemData name="Label" defStyleNum="dsFunction"/> <itemData name="Local label" defStyleNum="dsFunction"/> <itemData name="Constant" defStyleNum="dsDataType"/> <itemData name="BaseN" defStyleNum="dsBaseN"/> <itemData name="Float" defStyleNum="dsFloat"/> <itemData name="Number" defStyleNum="dsDecVal"/> <itemData name="Char" defStyleNum="dsChar"/> <itemData name="String" defStyleNum="dsString"/> </itemDatas> </highlighting> <general> <keywords casesensitive="0"/> <comments> <comment name="singleLine" start=";"/> </comments> </general> </language>