2 Commits

Author SHA1 Message Date
gryf 55efc1d2c4 Updated to KickAssembler 3.36 changes 2014-08-12 21:38:03 +02:00
gryf 9d32c3b942 Updated to KickAssembler 3.25 changes 2014-08-12 20:59:08 +02:00
2 changed files with 74 additions and 65 deletions
+2 -2
View File
@@ -22,7 +22,7 @@ You can also add to your vimrc file autocommand:
autocmd BufRead *.asm set filetype=kickass
From now on, all files with extension 'asm' will have brand new kickass
From now on, all files with extension *asm* will have brand new kickass
syntax.
Enjoy.
@@ -32,4 +32,4 @@ Enjoy.
.. _Vundle: https://github.com/gmarik/Vundle.vim
.. _NeoBundle: https://github.com/Shougo/neobundle.vim
.. _BitBucket: https://bitbucket.org/gryf/kickass-syntax-vim
.. _GitHub: https://bitbucket.org/gryf/kickass-syntax-vim
.. _GitHub: https://github.com/gryf/kickass-syntax-vim
+72 -63
View File
@@ -1,12 +1,16 @@
" Vim syntax file
" Language: Assembler, KickAssembler
" Maintainer: Roman 'gryf' Dobosz <gryf_esm@o2.pl>
" Last Change: 2012-07-09
" Version: 1.1
" Last Change: 2014-08-12
" Version: 1.3
"
" Changelog:
" 1.1 Since in assembly languages 'everything is a label' there pretty hard
" to distinguish labels from variables and structures, so I decided to
" 1.3 Updated to KickAssembler 3.36 changes (added addAll and uget* methods)
"
" 1.2 Updated to KickAssembler 3.25 changes
"
" 1.1 Since in assembly languages 'everything is a label' there pretty hard
" to distinguish labels from variables and structures, so I decided to
" remove highlighting labels at all. Instead numbers are highlighted, so that
" labels and defined variables are easily spotted in the code.
"
@@ -34,68 +38,66 @@ syn match kickAssMacroCall ":[a-z_][a-z0-9_]*"
syn case match
" 6502 mnemonics
syn keyword kickAssMnemonic brk clc cld cli clv dex dey nextgroup=kickAssLabels
syn keyword kickAssMnemonic inx iny nop pha php pla plp nextgroup=kickAssLabels
syn keyword kickAssMnemonic sec sed sei tax tay tsx txa nextgroup=kickAssLabels
syn keyword kickAssMnemonic txs tya nextgroup=kickAssLabels
syn keyword kickAssJump rti rts nextgroup=kickAssLabels
syn keyword kickAssMnemonic brk clc cld cli clv dex dey inx iny nop pha php
syn keyword kickAssMnemonic pla plp sec sed sei tax tay tsx txa txs tya
syn keyword kickAssJump rti rts
syn match kickAssMnemonic "\<adc\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<ahx\(\.\(izp\?y\|a\(bs\)\?y\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<alr\(\.imm\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<anc\(\.imm\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<anc2\(\.imm\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<and\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<arr\(\.imm\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<asl\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<axs\(\.imm\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<bcc\(\.r\(el\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<bcs\(\.r\(el\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<beq\(\.r\(el\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<bit\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<bmi\(\.r\(el\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<bne\(\.r\(el\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<bpl\(\.r\(el\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<bvc\(\.r\(el\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<bvs\(\.r\(el\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<cmp\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<cpx\(\.\(imm\?\|zp\?\|a\(bs\)\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<cpy\(\.\(imm\?\|zp\?\|a\(bs\)\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<dcp\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<dec\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<eor\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<inc\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<isc\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<jmp\(\.\(a\(bs\)\?\|i\(nd\)\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<jsr\(\.a\(bs\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<las\(\.a\(bs\)\?y\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<lax\(\.\(imm\?\|zp\?y\?\|izp\?[xy]\|a\(bs\)\?y\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<lda\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<ldx\(\.\(imm\?\|zp\?y\?\|a\(bs\)\?y\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<ldy\(\.\(imm\?\|zp\?x\?\|a\(bs\)\?x\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<lsr\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<ora\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<rla\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<rol\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<ror\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<rra\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<sax\(\.\(zp\?[xy]\?\|a\(bs\)\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<sbc\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<sbc2\(\.imm\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<shx\(\.a\(bs\)\?y\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<shy\(\.a\(bs\)\?x\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<slo\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<sre\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<sta\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<stx\(\.\(zp\?y\?\|a\(bs\)\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<sty\(\.\(zp\?x\?\|a\(bs\)\?\)\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<tas\(\.a\(bs\)\?y\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<xaa\(\.imm\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<adc\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<ahx\(\.\(izp\?y\|a\(bs\)\?y\)\)\?\>"
syn match kickAssMnemonic "\<alr\(\.imm\?\)\?\>"
syn match kickAssMnemonic "\<anc\(\.imm\?\)\?\>"
syn match kickAssMnemonic "\<anc2\(\.imm\?\)\?\>"
syn match kickAssMnemonic "\<and\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<arr\(\.imm\?\)\?\>"
syn match kickAssMnemonic "\<asl\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>"
syn match kickAssMnemonic "\<axs\(\.imm\?\)\?\>"
syn match kickAssJump "\<bcc\(\.r\(el\)\?\)\?\>"
syn match kickAssJump "\<bcs\(\.r\(el\)\?\)\?\>"
syn match kickAssJump "\<beq\(\.r\(el\)\?\)\?\>"
syn match kickAssMnemonic "\<bit\(\.\(zp\?\|a\(bs\)\?\)\)\?\>"
syn match kickAssJump "\<bmi\(\.r\(el\)\?\)\?\>"
syn match kickAssJump "\<bne\(\.r\(el\)\?\)\?\>"
syn match kickAssJump "\<bpl\(\.r\(el\)\?\)\?\>"
syn match kickAssJump "\<bvc\(\.r\(el\)\?\)\?\>"
syn match kickAssJump "\<bvs\(\.r\(el\)\?\)\?\>"
syn match kickAssMnemonic "\<cmp\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<cpx\(\.\(imm\?\|zp\?\|a\(bs\)\?\)\)\?\>"
syn match kickAssMnemonic "\<cpy\(\.\(imm\?\|zp\?\|a\(bs\)\?\)\)\?\>"
syn match kickAssMnemonic "\<dcp\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<dec\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>"
syn match kickAssMnemonic "\<eor\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<inc\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>"
syn match kickAssMnemonic "\<isc\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssJump "\<jmp\(\.\(a\(bs\)\?\|i\(nd\)\?\)\)\?\>"
syn match kickAssJump "\<jsr\(\.a\(bs\)\?\)\?\>"
syn match kickAssMnemonic "\<las\(\.a\(bs\)\?y\)\?\>"
syn match kickAssMnemonic "\<lax\(\.\(imm\?\|zp\?y\?\|izp\?[xy]\|a\(bs\)\?y\?\)\)\?\>"
syn match kickAssMnemonic "\<lda\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<ldx\(\.\(imm\?\|zp\?y\?\|a\(bs\)\?y\?\)\)\?\>"
syn match kickAssMnemonic "\<ldy\(\.\(imm\?\|zp\?x\?\|a\(bs\)\?x\?\)\)\?\>"
syn match kickAssMnemonic "\<lsr\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>"
syn match kickAssMnemonic "\<ora\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<rla\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<rol\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>"
syn match kickAssMnemonic "\<ror\(\.\(zp\?x\?\|a\(bs\)\?x\?\)\)\?\>"
syn match kickAssMnemonic "\<rra\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<sax\(\.\(zp\?[xy]\?\|a\(bs\)\?\)\)\?\>"
syn match kickAssMnemonic "\<sbc\(\.\(imm\?\|zp\?x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<sbc2\(\.imm\?\)\?\>"
syn match kickAssMnemonic "\<shx\(\.a\(bs\)\?y\)\?\>"
syn match kickAssMnemonic "\<shy\(\.a\(bs\)\?x\)\?\>"
syn match kickAssMnemonic "\<slo\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<sre\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<sta\(\.\(zp\?\x\?\|izp\?[xy]\|a\(bs\)\?[xy]\?\)\)\?\>"
syn match kickAssMnemonic "\<stx\(\.\(zp\?y\?\|a\(bs\)\?\)\)\?\>"
syn match kickAssMnemonic "\<sty\(\.\(zp\?x\?\|a\(bs\)\?\)\)\?\>"
syn match kickAssMnemonic "\<tas\(\.a\(bs\)\?y\)\?\>"
syn match kickAssMnemonic "\<xaa\(\.imm\?\)\?\>"
" DTV mnemonics
syn match kickAssJump "\<bra\(\.r\(el\)\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<sac\(\.imm\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssMnemonic "\<sir\(\.imm\?\)\?\>" nextgroup=kickAssLabels
syn match kickAssJump "\<bra\(\.r\(el\)\?\)\?\>"
syn match kickAssMnemonic "\<sac\(\.imm\?\)\?\>"
syn match kickAssMnemonic "\<sir\(\.imm\?\)\?\>"
" indexes
syn match kickAssIndex ",\s*[xy]"
@@ -130,6 +132,10 @@ syn match kickAssDirective /\.\<text\>/
syn match kickAssDirective /\.\<fill\>/
syn match kickAssDirective /\.\<pseudopc\>/
" modifiers
syn match kickAssDirective /\.\<modify\>/
syn match kickAssDirective /\.\<filemodify\>/
" import directive
syn match kickAssDirective "\.\<importonce\>"
syn match kickAssDirective "\.\<import\>" nextgroup=kickAssImportType skipwhite
@@ -236,6 +242,7 @@ syn match kickAssMethod "\.\<remove\>("he=e-1,hs=s+1
syn match kickAssMethod "\.\<shuffle\>("he=e-1,hs=s+1
syn match kickAssMethod "\.\<reverse\>("he=e-1,hs=s+1
syn match kickAssMethod "\.\<sort\>("he=e-1,hs=s+1
syn match kickAssMethod "\.\<addAll\>("he=e-1,hs=s+1
" READY.
" Hash - already defined names: get, remove
@@ -288,6 +295,8 @@ syn keyword kickAssConstant BD_C64FILE BF_BITMAP_SINGLECOLOR BF_KOALA BF_FLI
syn match kickAssFunction "\<LoadBinary\>("he=e-1
syn match kickAssMethod "\.\<getSize\>("he=e-1,hs=s+1
syn match kickAssFunction "\<LoadBinary\>("he=e-1
syn match kickAssMethod "\.\<uget[a-zA-Z0-9]*\>("he=e-1,hs=s+1
" Graphics files
syn match kickAssFunction "\<LoadPicture\>("he=e-1