view runtime/syntax/asmh8300.vim @ 28485:75f181bef230 v8.2.4767

patch 8.2.4767: openscad files are not recognized Commit: https://github.com/vim/vim/commit/c360b2566ce2390d45d9436a6a85719fe2b387d5 Author: salkin-mada <adam@oddodd.org> Date: Sat Apr 16 21:33:54 2022 +0100 patch 8.2.4767: openscad files are not recognized Problem: Openscad files are not recognized. Solution: Add a filetype pattern. (Niklas Adam, closes https://github.com/vim/vim/issues/10199)
author Bram Moolenaar <Bram@vim.org>
date Sat, 16 Apr 2022 22:45:04 +0200
parents 8dad79c661d1
children
line wrap: on
line source

" Vim syntax file
" Language:		Hitachi H-8300h specific syntax for GNU Assembler
" Maintainer:		Doug Kearns <dougkearns@gmail.com>
" Previous Maintainer:	Kevin Dahlhausen <kdahlhaus@yahoo.com>
" Last Change:		2020 Oct 31

if exists("b:current_syntax")
  finish
endif

runtime! syntax/asm.vim

syn case ignore

syn match asmDirective	"\.h8300[hs]n\="

"h8300[h] registers
syn match asmRegister	"e\=r\o[lh]\="

"h8300[h] opcodes - order is important!
syn match asmOpcode "add\.[lbw]"
syn match asmOpcode "add[sx :]"
syn match asmOpcode "and\.[lbw]"
syn match asmOpcode "bl[deots]"
syn match asmOpcode "cmp\.[lbw]"
syn match asmOpcode "dec\.[lbw]"
syn match asmOpcode "divx[us].[bw]"
syn match asmOpcode "ext[su]\.[lw]"
syn match asmOpcode "inc\.[lw]"
syn match asmOpcode "mov\.[lbw]"
syn match asmOpcode "mulx[su]\.[bw]"
syn match asmOpcode "neg\.[lbw]"
syn match asmOpcode "not\.[lbw]"
syn match asmOpcode "or\.[lbw]"
syn match asmOpcode "pop\.[wl]"
syn match asmOpcode "push\.[wl]"
syn match asmOpcode "rotx\=[lr]\.[lbw]"
syn match asmOpcode "sha[lr]\.[lbw]"
syn match asmOpcode "shl[lr]\.[lbw]"
syn match asmOpcode "sub\.[lbw]"
syn match asmOpcode "xor\.[lbw]"

syn keyword asmOpcode andc band bcc bclr bcs beq bf bge bgt
syn keyword asmOpcode bhi bhs biand bild bior bist bixor bmi
syn keyword asmOpcode bne bnot bnp bor bpl bpt bra brn bset
syn keyword asmOpcode bsr btst bst bt bvc bvs bxor cmp daa
syn keyword asmOpcode das eepmov eepmovw inc jmp jsr ldc movfpe
syn keyword asmOpcode movtpe mov nop orc rte rts sleep stc
syn keyword asmOpcode sub trapa xorc

syn case match

hi def link asmOpcode	Statement
hi def link asmRegister	Identifier

let b:current_syntax = "asmh8300"

" vim: nowrap sw=2 sts=2 ts=8 noet