6502asm-sublime/6502asm.tmLanguage

132 lines
3.3 KiB
Plaintext

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>fileTypes</key>
<array>
<string>asm</string>
</array>
<key>name</key>
<string>6502 asm</string>
<key>patterns</key>
<array>
<dict>
<key>comment</key>
<string>Arithmetic and logic instructions</string>
<key>match</key>
<string>(?i)\b(adc|and|asl|dec|dex|dey|eor|inc|inx|iny|lsr|ora|rol|ror|sbc|nop)\b</string>
<key>name</key>
<string>keyword.arithlogic.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Branch instructions</string>
<key>match</key>
<string>(?i)\b(bcc|bcs|beq|bmi|bne|bpl|bvc|bvs|jmp|jsr|rti|rts)\b</string>
<key>name</key>
<string>keyword.branch.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Comparison instructions</string>
<key>match</key>
<string>(?i)\b(bit|cmp|cpx|cpy)\b</string>
<key>name</key>
<string>keyword.compare.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Flag setting instructions</string>
<key>match</key>
<string>(?i)\b(clc|cld|cli|clv|sec|sed|sei)\b</string>
<key>name</key>
<string>keyword.flagset.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Load, store, and transfer instructions</string>
<key>match</key>
<string>(?i)\b(lda|ldx|ldy|pha|php|pla|plp|sta|stx|sty|tax|tay|tsx|txa|txs|tya)\b</string>
<key>name</key>
<string>keyword.transfer.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Comment</string>
<key>match</key>
<string>(//|;)(\s|\S)*</string>
<key>name</key>
<string>comment.line.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Comment</string>
<key>match</key>
<string>(//|;)(\s|\S)*</string>
<key>name</key>
<string>comment.punctuation.definition.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Jump label</string>
<key>match</key>
<string>(?i)\b([\w|\d]*)\:</string>
<key>name</key>
<string>support.class.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Directives</string>
<key>match</key>
<string>(?i)\.([\w|\d]*)\b</string>
<key>name</key>
<string>entity.name.function.asm</string>
</dict>
<dict>
<key>comment</key>
<string>String</string>
<key>match</key>
<string>(^|\s)"[\w\s\W]*"</string>
<key>name</key>
<string>string.asm</string>
</dict>
<dict>
<key>comment</key>
<string>String</string>
<key>match</key>
<string>(^|\s)\'[\w\s\W]*\'($|\s)</string>
<key>name</key>
<string>string.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Hex number</string>
<key>match</key>
<string>(?i)\$((\d|[A-F])+)\b</string>
<key>name</key>
<string>constant.numeric.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Binary number</string>
<key>match</key>
<string>(?i)\%([0|1]+)\b</string>
<key>name</key>
<string>constant.numeric.asm</string>
</dict>
<dict>
<key>comment</key>
<string>Decimal number</string>
<key>match</key>
<string>(?i)\#([0-9a-f$%]+)\b</string>
<key>name</key>
<string>constant.numeric.asm</string>
</dict>
</array>
<key>scopeName</key>
<string>source.asm</string>
<key>uuid</key>
<string>2d29de24-0f40-4855-a408-6fe8b3055153</string>
</dict>
</plist>