<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<language _name="Assembler (DCPU-16 1.7)" version="1.0" _section="Sources" globs="*.dasm;*.10c" mimetypes="text/x-asm;text/x-assembler">
<escape-char>\</escape-char>
<line-comment _name = "Line Comment" style= "Comment">
<start-regex>#|@|;</start-regex>
</line-comment>
<pattern-item _name = "Label" style = "Preprocessor">
<regex>^[A-Za-z_][A-Za-z_0-9]*\:</regex>
</pattern-item>
<string _name = "Memory References" style = "Data Type" end-at-line-end = "TRUE">
<start-regex>\[</start-regex>
<end-regex>\]</end-regex>
</string>
<string _name = "String" style = "String" end-at-line-end = "TRUE">
<start-regex>"</start-regex>
<end-regex>"</end-regex>
</string>
<string _name = "SingleQuoteString" style = "String" end-at-line-end = "TRUE" >
<start-regex>'</start-regex>
<end-regex>'</end-regex>
</string>
<keyword-list _name = "Registers" style = "Data Type" case-sensitive="FALSE"
match-empty-string-at-beginning = "TRUE"
match-empty-string-at-end = "TRUE">
<keyword>a</keyword>
<keyword>b</keyword>
<keyword>c</keyword>
<keyword>x</keyword>
<keyword>y</keyword>
<keyword>z</keyword>
<keyword>i</keyword>
<keyword>j</keyword>
<keyword>pc</keyword>
<keyword>sp</keyword>
<keyword>ex</keyword>
<keyword>ia</keyword>
<keyword>peek</keyword>
<keyword>push</keyword>
<keyword>pop</keyword>
</keyword-list>
<keyword-list _name = "Statements" style = "Keyword" case-sensitive="FALSE"
match-empty-string-at-beginning = "TRUE"
match-empty-string-at-end = "TRUE">
<keyword>set</keyword>
<keyword>add</keyword>
<keyword>sub</keyword>
<keyword>mul</keyword>
<keyword>mli</keyword>
<keyword>div</keyword>
<keyword>dvi</keyword>
<keyword>mod</keyword>
<keyword>mdi</keyword>
<keyword>and</keyword>
<keyword>bor</keyword>
<keyword>xor</keyword>
<keyword>shr</keyword>
<keyword>asr</keyword>
<keyword>shl</keyword>
<keyword>ifb</keyword>
<keyword>ifc</keyword>
<keyword>ife</keyword>
<keyword>ifn</keyword>
<keyword>ifg</keyword>
<keyword>ifa</keyword>
<keyword>ifl</keyword>
<keyword>ifu</keyword>
<keyword>adx</keyword>
<keyword>sbx</keyword>
<keyword>sti</keyword>
<keyword>std</keyword>
<keyword>jsr</keyword>
<keyword>int</keyword>
<keyword>iag</keyword>
<keyword>ias</keyword>
<keyword>rfi</keyword>
<keyword>iaq</keyword>
<keyword>hwn</keyword>
<keyword>hwq</keyword>
<keyword>hwi</keyword>
<keyword>dat</keyword>
<keyword>hcf</keyword>
</keyword-list>
<pattern-item _name = "Decimal" style = "Decimal">
<regex>\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b</regex>
</pattern-item>
<pattern-item _name = "Hex Number" style = "Base-N Integer">
<regex>\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b</regex>
</pattern-item>
</language>