Warning, /frameworks/syntax-highlighting/data/syntax/asm-dsp56k.xml is written in an unsupported language. File is not indexed.

0001 <?xml version="1.0" encoding="UTF-8"?>
0002 <!DOCTYPE language>
0003 
0004 <language name="Motorola DSP56k" section="Assembler" version="5" kateversion="5.62" extensions="*.asm;*.inc;*.ASM;*.INC" author="Miro Kropacek (miro.kropacek@gmail.com)" license="LGPL">
0005 
0006   <highlighting>
0007     <list name="Data Registers">
0008       <item>x</item>
0009       <item>x0</item>
0010       <item>x1</item>
0011       <item>y</item>
0012       <item>y0</item>
0013       <item>y1</item>
0014       <item>a2</item>
0015       <item>a1</item>
0016       <item>a0</item>
0017       <item>a</item>
0018       <item>a10</item>
0019       <item>ab</item>
0020       <item>b2</item>
0021       <item>b1</item>
0022       <item>b0</item>
0023       <item>b</item>
0024       <item>b10</item>
0025       <item>ba</item>
0026     </list>
0027 
0028     <list name="Address Registers">
0029       <item>r0</item>
0030       <item>r1</item>
0031       <item>r2</item>
0032       <item>r3</item>
0033       <item>r4</item>
0034       <item>r5</item>
0035       <item>r6</item>
0036       <item>r7</item>
0037     </list>
0038 
0039     <list name="Offset Registers">
0040       <item>n0</item>
0041       <item>n1</item>
0042       <item>n2</item>
0043       <item>n3</item>
0044       <item>n4</item>
0045       <item>n5</item>
0046       <item>n6</item>
0047       <item>n7</item>
0048     </list>
0049 
0050     <list name="Modifier Registers">
0051       <item>m0</item>
0052       <item>m1</item>
0053       <item>m2</item>
0054       <item>m3</item>
0055       <item>m4</item>
0056       <item>m5</item>
0057       <item>m6</item>
0058       <item>m7</item>
0059     </list>
0060 
0061     <list name="Control Registers">
0062       <item>la</item>
0063       <item>lc</item>
0064       <item>pc</item>
0065       <item>ssh</item>
0066       <item>ssl</item>
0067       <item>omr</item>
0068       <item>sr</item>
0069       <item>sp</item>
0070       <item>mr</item>
0071       <item>ccr</item>
0072     </list>
0073 
0074     <list name="Instructions">
0075       <item>abs</item>
0076       <item>adc</item>
0077       <item>add</item>
0078       <item>addl</item>
0079       <item>addr</item>
0080       <item>and</item>
0081       <item>andi</item>
0082       <item>asl</item>
0083       <item>asr</item>
0084       <item>bchg</item>
0085       <item>bclr</item>
0086       <item>bset</item>
0087       <item>btst</item>
0088       <item>clr</item>
0089       <item>cmp</item>
0090       <item>cmpm</item>
0091       <item>div</item>
0092       <item>do</item>
0093       <item>enddo</item>
0094       <item>eor</item>
0095       <item>illegal</item>
0096       <item>jcc</item>
0097       <item>jhs</item>
0098       <item>jcs</item>
0099       <item>jls</item>
0100       <item>jec</item>
0101       <item>jeq</item>
0102       <item>jes</item>
0103       <item>jge</item>
0104       <item>jgt</item>
0105       <item>jlc</item>
0106       <item>jle</item>
0107       <item>jls</item>
0108       <item>jlt</item>
0109       <item>jmi</item>
0110       <item>jne</item>
0111       <item>jnr</item>
0112       <item>jpl</item>
0113       <item>jnn</item>
0114       <item>jclr</item>
0115       <item>jmp</item>
0116       <item>jscc</item>
0117       <item>jshs</item>
0118       <item>jscs</item>
0119       <item>jsls</item>
0120       <item>jsec</item>
0121       <item>jseq</item>
0122       <item>jses</item>
0123       <item>jsge</item>
0124       <item>jsgt</item>
0125       <item>jslc</item>
0126       <item>jsle</item>
0127       <item>jsls</item>
0128       <item>jslt</item>
0129       <item>jsmi</item>
0130       <item>jsne</item>
0131       <item>jsnr</item>
0132       <item>jspl</item>
0133       <item>jsnn</item>
0134       <item>jsclr</item>
0135       <item>jset</item>
0136       <item>jsr</item>
0137       <item>jsset</item>
0138       <item>lsl</item>
0139       <item>lsr</item>
0140       <item>lua</item>
0141       <item>mac</item>
0142       <item>macr</item>
0143       <item>move</item>
0144       <item>movec</item>
0145       <item>movem</item>
0146       <item>movep</item>
0147       <item>mpy</item>
0148       <item>mpyr</item>
0149       <item>neg</item>
0150       <item>nop</item>
0151       <item>norm</item>
0152       <item>not</item>
0153       <item>or</item>
0154       <item>ori</item>
0155       <item>rep</item>
0156       <item>reset</item>
0157       <item>rnd</item>
0158       <item>rol</item>
0159       <item>ror</item>
0160       <item>rti</item>
0161       <item>rts</item>
0162       <item>sbc</item>
0163       <item>stop</item>
0164       <item>sub</item>
0165       <item>subl</item>
0166       <item>subr</item>
0167       <item>swi</item>
0168       <item>tcc</item>
0169       <item>ths</item>
0170       <item>tcs</item>
0171       <item>tls</item>
0172       <item>tec</item>
0173       <item>teq</item>
0174       <item>tes</item>
0175       <item>tge</item>
0176       <item>tgt</item>
0177       <item>tlc</item>
0178       <item>tle</item>
0179       <item>tls</item>
0180       <item>tlt</item>
0181       <item>tmi</item>
0182       <item>tne</item>
0183       <item>tnr</item>
0184       <item>tpl</item>
0185       <item>snn</item>
0186       <item>tfr</item>
0187       <item>tst</item>
0188       <item>wait</item>
0189     </list>
0190 
0191     <list name="Directives">
0192       <item>endif</item>
0193       <item>endc</item>
0194       <item>else</item>
0195       <item>ifne</item>
0196       <item>if</item>
0197       <item>ifeq</item>
0198       <item>ifle</item>
0199       <item>iflt</item>
0200       <item>ifge</item>
0201       <item>ifgt</item>
0202       <item>include</item>
0203       <item>incbin</item>
0204       <item>printval</item>
0205       <item>pass1val</item>
0206       <item>pass2val</item>
0207       <item>fail</item>
0208       <item>endm</item>
0209       <item>end</item>
0210       <item>org</item>
0211       <item>ds</item>
0212       <item>dsm</item>
0213       <item>list</item>
0214       <item>nolist</item>
0215       <item>macro</item>
0216       <item>dc</item>
0217       <item>equ</item>
0218     </list>
0219 
0220     <list name="Functions">
0221             <item>@abs</item>
0222             <item>@acs</item>
0223             <item>@asn</item>
0224             <item>@at2</item>
0225             <item>@atn</item>
0226             <item>@cel</item>
0227             <item>@coh</item>
0228             <item>@cos</item>
0229             <item>@flr</item>
0230             <item>@l10</item>
0231             <item>@log</item>
0232             <item>@max</item>
0233             <item>@min</item>
0234             <item>@pow</item>
0235             <item>@rnd</item>
0236             <item>@sgn</item>
0237             <item>@sin</item>
0238             <item>@snh</item>
0239             <item>@sqt</item>
0240             <item>@tan</item>
0241             <item>@tnh</item>
0242             <item>@xpn</item>
0243             <item>@cvf</item>
0244             <item>@cvi</item>
0245             <item>@cvs</item>
0246             <item>@fld</item>
0247             <item>@frc</item>
0248             <item>@lfr</item>
0249             <item>@lng</item>
0250             <item>@lun</item>
0251             <item>@rvb</item>
0252             <item>@unf</item>
0253             <item>@len</item>
0254             <item>@pos</item>
0255             <item>@scp</item>
0256             <item>@arg</item>
0257             <item>@cnt</item>
0258             <item>@mac</item>
0259             <item>@mxp</item>
0260             <item>@ccc</item>
0261             <item>@chk</item>
0262             <item>@ctr</item>
0263             <item>@def</item>
0264             <item>@exp</item>
0265             <item>@int</item>
0266             <item>@lcv</item>
0267             <item>@lst</item>
0268             <item>@msp</item>
0269             <item>@rel</item>
0270     </list>
0271 
0272     <contexts>
0273       <context name="Normal Text" attribute="Normal Text" lineEndContext="#stay" fallthroughContext="Operation">
0274         <DetectSpaces attribute="Normal Text"/>
0275 
0276         <DetectChar attribute="Comment" context="Comment" char="*" firstNonSpace="1"/>
0277 
0278         <DetectIdentifier attribute="Label" context="Label" column="0"/>
0279         <DetectChar attribute="Local label" context="LocalLabel" char="_" column="0"/>
0280 
0281         <keyword attribute="Instructions" context="Operation" String="Instructions"/>
0282         <keyword attribute="Directives" context="Operation" String="Directives"/>
0283 
0284         <RegExpr attribute="Label" context="EndLabel" String="[a-zA-Z][a-zA-Z0-9._]*+(?=:)"/>
0285         <RegExpr attribute="Local label" context="EndLabel" String="_[a-zA-Z][a-zA-Z0-9._]*+(?=:)"/>
0286 
0287         <DetectIdentifier attribute="Unknown Instructions" context="Operation"/>
0288       </context>
0289 
0290       <context name="Operation" attribute="Normal Text" lineEndContext="#pop" fallthroughContext="Expression">
0291         <AnyChar attribute="Constant" context="Addressing Mode" String="#&lt;&gt;"/>
0292         <RegExpr attribute="Memory" context="#stay" String="[xylpXYLP]:"/>
0293       </context>
0294 
0295       <context name="Addressing Mode" attribute="Constant" lineEndContext="#pop" fallthroughContext="#pop!Constant_Expression">
0296         <AnyChar attribute="Constant" context="#pop!Constant_Expression" String="&lt;&gt;"/>
0297       </context>
0298 
0299       <context name="Expression" attribute="Normal Text" lineEndContext="#pop">
0300         <DetectChar attribute="Hex" context="Number16" char="$"/>
0301         <DetectChar attribute="Binary" context="Number2" char="%"/>
0302         <DetectChar attribute="Number" context="Number8OrFunc" char="@" lookAhead="1"/>
0303         <Float attribute="Float" context="#stay"/>
0304         <Int attribute="Number" context="#stay"/>
0305         <IncludeRules context="Inc_Expression"/>
0306         <DetectIdentifier attribute="Normal Text"/>
0307       </context>
0308 
0309       <context name="Constant_Expression" attribute="Constant" lineEndContext="#pop">
0310         <DetectChar attribute="Constant" context="Constant_Number16" char="$"/>
0311         <DetectChar attribute="Constant" context="Constant_Number2" char="%"/>
0312         <DetectChar attribute="Constant" context="Constant_Number8OrFunc" char="@" lookAhead="1"/>
0313         <Float attribute="Constant" context="#stay"/>
0314         <Int attribute="Constant" context="#stay"/>
0315         <IncludeRules context="Inc_Expression"/>
0316         <DetectIdentifier attribute="Label"/>
0317       </context>
0318 
0319       <context name="Inc_Expression" attribute="Normal Text" lineEndContext="#pop">
0320         <DetectChar attribute="Comment" context="#pop!Comment" char=";"/>
0321         <DetectChar attribute="Symbol Separator" context="#pop" char=","/>
0322         <DetectSpaces attribute="Normal Text" context="#pop"/>
0323         <AnyChar attribute="Symbols" context="#stay" String="+-*/%?&amp;|&lt;&gt;^!=[]{}()"/>
0324 
0325         <DetectChar attribute="String" context="SQ_String" char="'"/>
0326         <DetectChar attribute="String" context="DQ_String" char="&quot;"/>
0327 
0328         <keyword attribute="Data Registers" context="#stay" String="Data Registers"/>
0329         <keyword attribute="Address Registers" context="#stay" String="Address Registers"/>
0330         <keyword attribute="Offset Registers" context="#stay" String="Offset Registers"/>
0331         <keyword attribute="Modifier Registers" context="#stay" String="Modifier Registers"/>
0332         <keyword attribute="Control Registers" context="#stay" String="Control Registers"/>
0333       </context>
0334 
0335       <context name="Constant_Number16" attribute="Constant" lineEndContext="#pop" fallthroughContext="#pop">
0336         <RegExpr attribute="Constant" context="#pop" String="[A-Fa-f0-9]+"/>
0337       </context>
0338 
0339       <context name="Constant_Number2" attribute="Constant" lineEndContext="#pop" fallthroughContext="#pop">
0340         <RegExpr attribute="Constant" context="#pop" String="[01]+"/>
0341       </context>
0342 
0343       <context name="Constant_Number8OrFunc" attribute="Constant" lineEndContext="#pop" fallthroughContext="#pop">
0344         <keyword attribute="Functions" context="#pop!Constant_Func" String="Functions"/>
0345         <DetectChar attribute="Constant" context="#pop!Constant_Number8OrFunc_2" char="@"/>
0346       </context>
0347       <context name="Constant_Number8OrFunc_2" attribute="Constant" lineEndContext="#pop" fallthroughContext="#pop">
0348         <DetectIdentifier attribute="Constant" context="#pop!Constant_Func"/>
0349         <RegExpr attribute="Constant" context="#pop" String="[0-7]+"/>
0350       </context>
0351       <context name="Constant_Func" attribute="Functions" lineEndContext="#pop" fallthroughContext="#pop">
0352         <DetectChar attribute="Symbols" context="#pop!Constant_InnerFunc" char="("/>
0353       </context>
0354       <context name="Constant_InnerFunc" attribute="Functions" lineEndContext="#pop">
0355         <DetectChar attribute="Symbols" context="#pop" char=")"/>
0356         <DetectChar attribute="Symbols" context="Constant_InnerFunc" char="("/>
0357         <DetectChar attribute="Symbol Separator" context="#stay" char=","/>
0358         <DetectChar attribute="Constant" context="Constant_Number16" char="$"/>
0359         <DetectChar attribute="Constant" context="Constant_Number2" char="%"/>
0360         <DetectChar attribute="Constant" context="Constant_Number8OrFunc" char="@" lookAhead="1"/>
0361         <Float attribute="Constant" context="#stay"/>
0362         <Int attribute="Constant" context="#stay"/>
0363         <IncludeRules context="Inc_Expression"/>
0364         <DetectIdentifier attribute="Normal Text"/>
0365       </context>
0366 
0367       <context name="Number8OrFunc" attribute="Octal" lineEndContext="#pop" fallthroughContext="#pop">
0368         <keyword attribute="Functions" context="#pop" String="Functions"/>
0369         <DetectChar attribute="Octal" context="#pop!Number8OrFunc_2" char="@"/>
0370       </context>
0371       <context name="Number8OrFunc_2" attribute="Octal" lineEndContext="#pop" fallthroughContext="#pop">
0372         <RegExpr attribute="Octal" context="#pop" String="[0-7]+"/>
0373         <DetectIdentifier attribute="Functions" context="#pop"/>
0374       </context>
0375 
0376       <context name="Number16" attribute="Hex" lineEndContext="#pop" fallthroughContext="#pop">
0377         <RegExpr attribute="Hex" context="#pop" String="[A-Fa-f0-9]+"/>
0378       </context>
0379 
0380       <context name="Number2" attribute="Binary" lineEndContext="#pop" fallthroughContext="#pop">
0381         <RegExpr attribute="Binary" context="#pop" String="[01]+"/>
0382       </context>
0383 
0384       <context name="Label" attribute="Label" lineEndContext="#pop" fallthroughContext="#pop!EndLabel">
0385         <DetectChar attribute="Label" context="Label2" char="."/>
0386       </context>
0387       <context name="Label2" attribute="Label" lineEndContext="#pop" fallthroughContext="#pop#pop!EndLabel">
0388         <DetectIdentifier attribute="Label" context="#stay"/>
0389         <DetectChar attribute="Label" context="#stay" char="."/>
0390       </context>
0391 
0392       <context name="LocalLabel" attribute="Local label" lineEndContext="#pop" fallthroughContext="#pop!EndLabel">
0393         <DetectChar attribute="Local label" context="LocalLabel2" char="."/>
0394       </context>
0395       <context name="LocalLabel2" attribute="Local label" lineEndContext="#pop" fallthroughContext="#pop#pop!EndLabel">
0396         <DetectIdentifier attribute="Local label" context="#stay"/>
0397         <DetectChar attribute="Local label" context="#stay" char="."/>
0398       </context>
0399 
0400       <context name="EndLabel" attribute="Normal Text" lineEndContext="#pop" fallthroughContext="#pop">
0401         <DetectChar attribute="Symbols" context="#stay" char=":"/>
0402         <DetectSpaces attribute="Normal Text" context="#stay"/>
0403         <keyword attribute="Instructions" context="#pop!Operation" String="Instructions"/>
0404         <keyword attribute="Directives" context="#pop!Operation" String="Directives"/>
0405         <DetectIdentifier attribute="Unknown Instructions" context="#pop!Operation"/>
0406       </context>
0407 
0408       <context name="SQ_String" attribute="String" lineEndContext="#pop">
0409         <DetectChar attribute="String" context="#pop" char="'"/>
0410         <DetectChar attribute="Char" context="Escape" char="\"/>
0411       </context>
0412 
0413       <context name="DQ_String" attribute="String" lineEndContext="#pop">
0414         <DetectChar attribute="String" context="#pop" char="&quot;"/>
0415         <DetectChar attribute="Char" context="Escape" char="\"/>
0416       </context>
0417 
0418       <context name="Escape" attribute="Char" lineEndContext="#pop" fallthroughContext="#pop">
0419         <AnyChar attribute="Char" context="#pop" String="bfnrt\'"/>
0420       </context>
0421 
0422       <context name="Comment" attribute="Comment" lineEndContext="#pop">
0423         <DetectSpaces attribute="Comment"/>
0424         <IncludeRules context="##Comments"/>
0425         <DetectIdentifier attribute="Comment"/>
0426       </context>
0427 
0428     </contexts>
0429 
0430     <itemDatas>
0431       <!-- keywords -->
0432       <itemData name="Normal Text" defStyleNum="dsNormal"/>
0433       <itemData name="Data Registers" defStyleNum="dsDataType"/>
0434       <itemData name="Address Registers" defStyleNum="dsDataType"/>
0435       <itemData name="Offset Registers" defStyleNum="dsDataType"/>
0436       <itemData name="Modifier Registers" defStyleNum="dsDataType"/>
0437       <itemData name="Control Registers" defStyleNum="dsDataType"/>
0438       <itemData name="Instructions" bold="true" defStyleNum="dsKeyword"/>
0439       <itemData name="Unknown Instructions" defStyleNum="dsKeyword"/>
0440       <itemData name="Directives" bold="true" defStyleNum="dsControlFlow"/>
0441       <itemData name="Memory" bold="true" defStyleNum="dsOthers"/>
0442       <itemData name="Functions" bold="true" defStyleNum="dsFunction"/>
0443       <!-- defined in contexts -->
0444       <itemData name="Comment" italic="false" defStyleNum="dsComment"/>
0445       <itemData name="Label" defStyleNum="dsFunction"/>
0446       <itemData name="Local label" defStyleNum="dsFunction"/>
0447       <itemData name="Constant" defStyleNum="dsConstant"/>
0448       <itemData name="Octal" defStyleNum="dsBaseN"/>
0449       <itemData name="Hex" defStyleNum="dsBaseN"/>
0450       <itemData name="Binary" defStyleNum="dsBaseN"/>
0451       <itemData name="Float" defStyleNum="dsFloat"/>
0452       <itemData name="Number" defStyleNum="dsDecVal"/>
0453       <itemData name="Char" defStyleNum="dsChar"/>
0454       <itemData name="String" defStyleNum="dsString"/>
0455       <itemData name="Symbol Separator" defStyleNum="dsOperator"/>
0456       <itemData name="Symbols" defStyleNum="dsOperator"/>
0457     </itemDatas>
0458   </highlighting>
0459 
0460   <general>
0461     <keywords casesensitive="0" weakDeliminator="@"/>
0462     <comments>
0463       <comment name="singleLine" start=";"/>
0464     </comments>
0465   </general>
0466 
0467 </language>
0468 <!-- kate: replace-tabs on; tab-width 2; indent-width 2; -->