1
<?xml version="1.0" encoding="UTF-8"?>
2
<!DOCTYPE language SYSTEM "language.dtd">
4
<language name="Motorola 68k (VASM/Devpac)" section="Assembler" version="1.01" kateversion="2.4" extensions="*.s;*.i;*.S;*.I" author="Miro Kropacek (miro.kropacek@gmail.com)" license="LGPL">
7
<list name="Data Registers">
18
<list name="Address Registers">
30
<list name="Control Registers">
57
<!-- <item>dc</item> -->
61
<list name="FPU Registers">
75
<list name="Instructions (CPU)">
190
<item>pflushan</item>
262
<list name="Instructions (FPU)">
363
<item>frestore</item>
419
<item>ftrapgle</item>
425
<item>ftrapnge</item>
426
<item>ftrapngle</item>
427
<item>ftrapngl</item>
428
<item>ftrapngt</item>
429
<item>ftrapnle</item>
430
<item>ftrapnlt</item>
431
<item>ftrapoge</item>
432
<item>ftrapogl</item>
433
<item>ftrapogt</item>
434
<item>ftrapole</item>
435
<item>ftrapolt</item>
437
<item>ftrapseq</item>
439
<item>ftrapsne</item>
442
<item>ftrapueq</item>
443
<item>ftrapuge</item>
444
<item>ftrapugt</item>
445
<item>ftrapule</item>
446
<item>ftrapult</item>
452
<list name="Directives">
532
<!-- name = name of context, attribute = name of item data -->
533
<context attribute="Normal Text" lineEndContext="#stay" name="Normal Text" >
534
<keyword attribute="Data Registers" context="#stay" String="Data Registers"/>
535
<keyword attribute="Address Registers" context="#stay" String="Address Registers"/>
536
<keyword attribute="Control Registers" context="#stay" String="Control Registers"/>
537
<keyword attribute="FPU Registers" context="#stay" String="FPU Registers"/>
538
<keyword attribute="Instructions (CPU)" context="#stay" String="Instructions (CPU)"/>
539
<keyword attribute="Instructions (FPU)" context="#stay" String="Instructions (FPU)"/>
540
<keyword attribute="Directives" context="#stay" String="Directives"/>
542
<!-- precedes ".[bwlsdqpx]" match -->
543
<RegExpr attribute="Label" context="#stay" String="^[A-Za-z_][A-Za-z_.0-9]*:?"/>
544
<RegExpr attribute="Local label" context="#stay" String="^\.[A-Za-z_][A-Za-z_.0-9]*:?"/>
546
<RegExpr attribute="Operand sizes (CPU)" context="#stay" insensitive="true" String="\.b[\s,]"/>
547
<RegExpr attribute="Operand sizes (CPU)" context="#stay" insensitive="true" String="\.w[\s,]"/>
548
<RegExpr attribute="Operand sizes (CPU)" context="#stay" insensitive="true" String="\.l[\s,]"/>
549
<RegExpr attribute="Operand sizes (FPU)" context="#stay" insensitive="true" String="\.s[\s,]"/>
550
<RegExpr attribute="Operand sizes (FPU)" context="#stay" insensitive="true" String="\.d[\s,]"/>
551
<RegExpr attribute="Operand sizes (FPU)" context="#stay" insensitive="true" String="\.p[\s,]"/>
552
<RegExpr attribute="Operand sizes (FPU)" context="#stay" insensitive="true" String="\.q[\s,]"/>
553
<RegExpr attribute="Operand sizes (FPU)" context="#stay" insensitive="true" String="\.x[\s,]"/>
555
<DetectChar attribute="Comment" context="Comment" char=";"/>
556
<DetectChar attribute="Comment" context="Comment" char="*" firstNonSpace="true"/>
557
<DetectChar attribute="Constant" context="Constant" char="#"/>
558
<DetectChar attribute="BaseN" context="Number16" char="$"/>
559
<DetectChar attribute="BaseN" context="Number2" char="%"/>
560
<DetectChar attribute="BaseN" context="Number8" char="@"/>
561
<Float attribute="Float" context="#stay"/>
562
<Int attribute="Number" context="#stay"/>
563
<RangeDetect attribute="Char" context="#stay" char="'" char1="'"/>
564
<AnyChar attribute="String" context="String" String=""'"/>
567
<context name="Comment" attribute="Comment" lineEndContext="#pop"/>
569
<context name="String" attribute="String" lineEndContext="#pop">
570
<AnyChar attribute="String" context="#pop" String=""'"/>
573
<context name="Constant" attribute="Constant" lineEndContext="#pop">
574
<RegExpr attribute="Constant" context="Operators" String="[0-9]+"/>
575
<RegExpr attribute="Constant" context="Operators" String="\$[A-Fa-f0-9]+"/>
576
<RegExpr attribute="Constant" context="Operators" String="@[0-7]+"/>
577
<RegExpr attribute="Constant" context="Operators" String="%[01]+"/>
578
<RegExpr attribute="Label" context="Operators" String="[A-Za-z_][A-Za-z_.0-9]*"/>
579
<RegExpr attribute="Local label" context="Operators" String="\.[A-Za-z_][A-Za-z_.0-9]*"/>
580
<RangeDetect attribute="Char" context="#pop" char="'" char1="'"/>
581
<DetectChar attribute="Normal Text" char="," context="#pop"/>
582
<DetectSpaces attribute="Normal Text" context="#pop"/>
583
<DetectChar attribute="Normal Text" char="(" context="#stay"/>
586
<context name="Operators" attribute="Normal Text" lineEndContext="#pop">
587
<DetectChar attribute="Normal Text" char="|" context="#pop"/>
588
<DetectChar attribute="Normal Text" char="&" context="#pop"/>
589
<DetectChar attribute="Normal Text" char="^" context="#pop"/>
590
<DetectChar attribute="Normal Text" char="*" context="#pop"/>
591
<DetectChar attribute="Normal Text" char="(" context="#pop"/>
592
<DetectChar attribute="Normal Text" char=")" context="#pop"/>
593
<DetectChar attribute="Normal Text" char="+" context="#pop"/>
594
<DetectChar attribute="Normal Text" char="-" context="#pop"/>
595
<DetectChar attribute="Normal Text" char="/" context="#pop"/>
596
<DetectChar attribute="Normal Text" char="~" context="#pop"/>
597
<DetectChar attribute="Normal Text" char="!" context="#pop"/>
598
<DetectChar attribute="Normal Text" char="%" context="#pop"/>
599
<Detect2Chars attribute="Normal Text" char="<" char1="<" context="#pop"/>
600
<Detect2Chars attribute="Normal Text" char=">" char1=">" context="#pop"/>
601
<DetectChar attribute="Normal Text" char="," context="#pop#pop"/>
602
<DetectSpaces attribute="Normal Text" context="#pop#pop"/>
605
<context name="Number16" attribute="BaseN" lineEndContext="#pop">
606
<RegExpr attribute="BaseN" context="#pop" String="[A-Fa-f0-9]+"/>
609
<context name="Number2" attribute="BaseN" lineEndContext="#pop">
610
<RegExpr attribute="BaseN" context="#pop" String="[01]+"/>
613
<context name="Number8" attribute="BaseN" lineEndContext="#pop">
614
<RegExpr attribute="BaseN" context="#pop" String="[0-7]+"/>
620
<itemData name="Normal Text" defStyleNum="dsNormal"/>
621
<itemData name="Data Registers" defStyleNum="dsDataType"/>
622
<itemData name="Address Registers" defStyleNum="dsDataType"/>
623
<itemData name="Control Registers" defStyleNum="dsDataType"/>
624
<itemData name="FPU Registers" defStyleNum="dsDataType"/>
625
<itemData name="Instructions (CPU)" bold="true" defStyleNum="dsKeyword"/>
626
<itemData name="Instructions (FPU)" bold="true" defStyleNum="dsKeyword"/>
627
<itemData name="Directives" bold="true" defStyleNum="dsOthers"/>
628
<!-- defined in contexts -->
629
<itemData name="Operand sizes (CPU)" bold="true" defStyleNum="dsKeyword"/>
630
<itemData name="Operand sizes (FPU)" bold="true" defStyleNum="dsKeyword"/>
631
<itemData name="Comment" italic="false" defStyleNum="dsComment"/>
632
<itemData name="Label" defStyleNum="dsFunction"/>
633
<itemData name="Local label" defStyleNum="dsFunction"/>
634
<itemData name="Constant" defStyleNum="dsDataType"/>
635
<itemData name="BaseN" defStyleNum="dsBaseN"/>
636
<itemData name="Float" defStyleNum="dsFloat"/>
637
<itemData name="Number" defStyleNum="dsDecVal"/>
638
<itemData name="Char" defStyleNum="dsChar"/>
639
<itemData name="String" defStyleNum="dsString"/>
644
<keywords casesensitive="0"/>
646
<comment name="singleLine" start=";"/>
647
<comment name="singleLine" start="*"/>