mirror of
https://github.com/uffejakobsen/acme.git
synced 2024-12-01 16:50:46 +00:00
5e365a8723
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@337 4df02467-bbd4-4a76-a152-e7ce94205b78
415 lines
6.9 KiB
Plaintext
415 lines
6.9 KiB
Plaintext
# JOE syntax highlight file for ACME assembly language
|
|
# new in version 3: added jml, jsl
|
|
# new in version 4: added !warn, !error, !serious
|
|
# new in version 5: changed mnemo colors
|
|
# new in version 6: added !ifndef, !addr
|
|
# new in version 7: added !symbollist
|
|
# new in version 8: adjusted for ACME 0.97
|
|
# added backslash escaping,
|
|
# added "//" comments,
|
|
# added new mnemonics, keywords and pseudo opcodes,
|
|
# reduced colors for different instruction sets
|
|
|
|
# define colors
|
|
#
|
|
# bold inverse blink dim underline
|
|
# white cyan magenta blue yellow green red black
|
|
# bg_white bg_cyan bg_magenta bg_blue bg_yellow bg_green bg_red bg_black
|
|
|
|
=Idle
|
|
=Ident
|
|
=Anon bold
|
|
=Bad bold red
|
|
=Call bold
|
|
=Comment green
|
|
=Constant cyan
|
|
=Escape bold cyan
|
|
=Keyword bold
|
|
=Pseudo bold
|
|
=Mnemo6502 bold yellow
|
|
=PCMnemo6502 bold red
|
|
=MnemoExt bg_blue bold yellow
|
|
=PCMnemoExt bg_blue bold red
|
|
|
|
:reset Idle
|
|
* idle noeat
|
|
" \t" reset
|
|
|
|
:slash Idle
|
|
* idle noeat
|
|
"/" line_comment recolor=-2
|
|
|
|
:idle Idle
|
|
* idle
|
|
";" line_comment recolor=-1
|
|
"/" slash
|
|
":{\n" reset
|
|
"!.a-zA-Z_€-" checkstring recolor=-1 buffer
|
|
"+" anonf_or_macro recolor=-1
|
|
"-" anonb recolor=-1
|
|
"0" got_zero recolor=-1
|
|
"%" binary recolor=-1
|
|
"&" octal recolor=-1
|
|
"1-9" decimal recolor=-1
|
|
"$" hex recolor=-1
|
|
"'" char recolor=-1
|
|
"\"" string recolor=-1
|
|
# *= "*"
|
|
# ",:=()><[]*&|!~+\-%^" control recolor=-1
|
|
|
|
:line_comment Comment
|
|
* line_comment
|
|
"\n" reset
|
|
|
|
:call Call
|
|
* idle noeat
|
|
"a-zA-Z0-9€-" call
|
|
|
|
:anonf_or_macro Anon
|
|
* idle noeat
|
|
"+" anonf
|
|
".a-zA-Z0-9€-" call recolor=-2
|
|
|
|
:anonf Anon
|
|
* idle noeat
|
|
"+" anonf
|
|
|
|
:anonb Anon
|
|
* idle noeat
|
|
"-" anonb
|
|
|
|
:got_zero Constant
|
|
* idle noeat
|
|
"xX" hex
|
|
"0-9" decimal noeat
|
|
|
|
:binary Constant
|
|
* idle noeat
|
|
"01.#" binary
|
|
"2-9" badnum noeat
|
|
|
|
:octal Constant
|
|
* idle noeat
|
|
"0-7" octal
|
|
"89" badnum noeat
|
|
|
|
:hex Constant
|
|
* idle noeat
|
|
"0-9A-Fa-f" hex
|
|
|
|
:decimal Constant
|
|
* idle noeat
|
|
"0-9" decimal
|
|
|
|
:badnum Bad
|
|
* idle noeat
|
|
"0-9" badnum
|
|
|
|
:string Constant
|
|
* string
|
|
"\"" idle
|
|
"\\" string_escape recolor=-1
|
|
|
|
:string_escape Escape
|
|
* string
|
|
|
|
:char Constant
|
|
* char
|
|
"'" idle
|
|
"\\" char_escape recolor=-1
|
|
|
|
:char_escape Escape
|
|
* char
|
|
|
|
:ident Idle
|
|
* idle noeat
|
|
"a-zA-Z0-9_" ident
|
|
|
|
:checkstring Ident
|
|
* idle noeat istrings
|
|
"!8" pseudo
|
|
"!08" pseudo
|
|
"!by" pseudo
|
|
"!byte" pseudo
|
|
"!16" pseudo
|
|
"!le16" pseudo
|
|
"!be16" pseudo
|
|
"!wo" pseudo
|
|
"!word" pseudo
|
|
"!24" pseudo
|
|
"!le24" pseudo
|
|
"!be24" pseudo
|
|
"!32" pseudo
|
|
"!le32" pseudo
|
|
"!be32" pseudo
|
|
"!tx" pseudo
|
|
"!txt" pseudo
|
|
"!text" pseudo
|
|
"!raw" pseudo
|
|
"!pet" pseudo
|
|
"!scr" pseudo
|
|
"!scrxor" pseudo
|
|
"!ct" pseudo
|
|
"!convtab" pseudo
|
|
"!fi" pseudo
|
|
"!fill" pseudo
|
|
"!zn" pseudo
|
|
"!zone" pseudo
|
|
"!sl" pseudo
|
|
"!symbollist" pseudo
|
|
"!src" pseudo
|
|
"!source" pseudo
|
|
"!bin" pseudo
|
|
"!binary" pseudo
|
|
"!eof" pseudo
|
|
"!endoffile" pseudo
|
|
"!pseudopc" pseudo
|
|
"!align" pseudo
|
|
"!cpu" pseudo
|
|
"!to" pseudo
|
|
"!set" pseudo
|
|
"!macro" pseudo
|
|
"!if" pseudo
|
|
"!ifdef" pseudo
|
|
"!ifndef" pseudo
|
|
"else" keyword
|
|
"if" keyword
|
|
"ifdef" keyword
|
|
"ifndef" keyword
|
|
"!for" pseudo
|
|
"!while" pseudo
|
|
"!do" pseudo
|
|
"until" keyword
|
|
"while" keyword
|
|
"!al" pseudo
|
|
"!as" pseudo
|
|
"!rl" pseudo
|
|
"!rs" pseudo
|
|
"!initmem" pseudo
|
|
"!debug" pseudo
|
|
"!info" pseudo
|
|
"!warn" pseudo
|
|
"!error" pseudo
|
|
"!serious" pseudo
|
|
"!addr" pseudo
|
|
"!address" pseudo
|
|
"!h" pseudo
|
|
"!hex" pseudo
|
|
"!xor" pseudo
|
|
"!skip" pseudo
|
|
"ora" mnemo6502
|
|
"asl" mnemo6502
|
|
"and" mnemo6502
|
|
"rol" mnemo6502
|
|
"eor" mnemo6502
|
|
"lsr" mnemo6502
|
|
"adc" mnemo6502
|
|
"ror" mnemo6502
|
|
"sta" mnemo6502
|
|
"stx" mnemo6502
|
|
"lda" mnemo6502
|
|
"ldx" mnemo6502
|
|
"cmp" mnemo6502
|
|
"dec" mnemo6502
|
|
"sbc" mnemo6502
|
|
"inc" mnemo6502
|
|
"bit" mnemo6502
|
|
"cpx" mnemo6502
|
|
"cpy" mnemo6502
|
|
"ldy" mnemo6502
|
|
"sty" mnemo6502
|
|
"php" mnemo6502
|
|
"clc" mnemo6502
|
|
"plp" mnemo6502
|
|
"sec" mnemo6502
|
|
"pha" mnemo6502
|
|
"cli" mnemo6502
|
|
"pla" mnemo6502
|
|
"sei" mnemo6502
|
|
"dey" mnemo6502
|
|
"txa" mnemo6502
|
|
"tya" mnemo6502
|
|
"txs" mnemo6502
|
|
"tay" mnemo6502
|
|
"tax" mnemo6502
|
|
"clv" mnemo6502
|
|
"tsx" mnemo6502
|
|
"iny" mnemo6502
|
|
"dex" mnemo6502
|
|
"cld" mnemo6502
|
|
"inx" mnemo6502
|
|
"nop" mnemo6502
|
|
"sed" mnemo6502
|
|
"jsr" mnemo6502
|
|
"brk" pcmnemo6502
|
|
"jmp" pcmnemo6502
|
|
"bpl" pcmnemo6502
|
|
"bmi" pcmnemo6502
|
|
"bvc" pcmnemo6502
|
|
"bvs" pcmnemo6502
|
|
"bcc" pcmnemo6502
|
|
"bcs" pcmnemo6502
|
|
"bne" pcmnemo6502
|
|
"beq" pcmnemo6502
|
|
"rti" pcmnemo6502
|
|
"rts" pcmnemo6502
|
|
"phy" mnemoExt
|
|
"ply" mnemoExt
|
|
"phx" mnemoExt
|
|
"plx" mnemoExt
|
|
"tsb" mnemoExt
|
|
"trb" mnemoExt
|
|
"stz" mnemoExt
|
|
"bra" pcmnemoExt
|
|
"rmb0" mnemoExt
|
|
"bbr0" mnemoExt
|
|
"smb0" mnemoExt
|
|
"bbs0" mnemoExt
|
|
"rmb1" mnemoExt
|
|
"bbr1" mnemoExt
|
|
"smb1" mnemoExt
|
|
"bbs1" mnemoExt
|
|
"rmb2" mnemoExt
|
|
"bbr2" mnemoExt
|
|
"smb2" mnemoExt
|
|
"bbs2" mnemoExt
|
|
"rmb3" mnemoExt
|
|
"bbr3" mnemoExt
|
|
"smb3" mnemoExt
|
|
"bbs3" mnemoExt
|
|
"rmb4" mnemoExt
|
|
"bbr4" mnemoExt
|
|
"smb4" mnemoExt
|
|
"bbs4" mnemoExt
|
|
"rmb5" mnemoExt
|
|
"bbr5" mnemoExt
|
|
"smb5" mnemoExt
|
|
"bbs5" mnemoExt
|
|
"rmb6" mnemoExt
|
|
"bbr6" mnemoExt
|
|
"smb6" mnemoExt
|
|
"bbs6" mnemoExt
|
|
"rmb7" mnemoExt
|
|
"bbr7" mnemoExt
|
|
"smb7" mnemoExt
|
|
"bbs7" mnemoExt
|
|
"wai" mnemoExt
|
|
"pei" mnemoExt
|
|
"per" mnemoExt
|
|
"mvp" mnemoExt
|
|
"mvn" mnemoExt
|
|
"rep" mnemoExt
|
|
"sep" mnemoExt
|
|
"pea" mnemoExt
|
|
"phd" mnemoExt
|
|
"tcs" mnemoExt
|
|
"pld" mnemoExt
|
|
"tsc" mnemoExt
|
|
"wdm" mnemoExt
|
|
"phk" mnemoExt
|
|
"tcd" mnemoExt
|
|
"tdc" mnemoExt
|
|
"phb" mnemoExt
|
|
"txy" mnemoExt
|
|
"plb" mnemoExt
|
|
"tyx" mnemoExt
|
|
"xba" mnemoExt
|
|
"xce" mnemoExt
|
|
"brl" pcmnemoExt
|
|
"cop" mnemoExt
|
|
"jml" pcmnemoExt
|
|
"jsl" mnemoExt
|
|
"rtl" pcmnemoExt
|
|
"stp" pcmnemoExt
|
|
"slo" mnemoExt
|
|
"rla" mnemoExt
|
|
"sre" mnemoExt
|
|
"rra" mnemoExt
|
|
"sax" mnemoExt
|
|
"lax" mnemoExt
|
|
"dcp" mnemoExt
|
|
"isc" mnemoExt
|
|
"anc" mnemoExt
|
|
"ane" mnemoExt
|
|
"asr" mnemoExt
|
|
"arr" mnemoExt
|
|
"alr" mnemoExt
|
|
"sbx" mnemoExt
|
|
"sha" mnemoExt
|
|
"shx" mnemoExt
|
|
"shy" mnemoExt
|
|
"las" mnemoExt
|
|
"tas" mnemoExt
|
|
"dop" mnemoExt
|
|
"top" mnemoExt
|
|
"lxa" mnemoExt
|
|
"jam" pcmnemoExt
|
|
"map" mnemoExt
|
|
"eom" mnemoExt
|
|
"aug" mnemoExt
|
|
"sac" mnemoExt
|
|
"sir" mnemoExt
|
|
"orq" mnemoExt
|
|
"aslq" mnemoExt
|
|
"inq" mnemoExt
|
|
"bitq" mnemoExt
|
|
"andq" mnemoExt
|
|
"rolq" mnemoExt
|
|
"deq" mnemoExt
|
|
"asrq" mnemoExt
|
|
"eorq" mnemoExt
|
|
"lsrq" mnemoExt
|
|
"adcq" mnemoExt
|
|
"rorq" mnemoExt
|
|
"stq" mnemoExt
|
|
"ldq" mnemoExt
|
|
"cpq" mnemoExt
|
|
"sbcq" mnemoExt
|
|
"cle" mnemoExt
|
|
"see" mnemoExt
|
|
"tsy" mnemoExt
|
|
"inz" mnemoExt
|
|
"tys" mnemoExt
|
|
"dez" mnemoExt
|
|
"neg" mnemoExt
|
|
"taz" mnemoExt
|
|
"tab" mnemoExt
|
|
"bsr" mnemoExt
|
|
"tza" mnemoExt
|
|
"tba" mnemoExt
|
|
"ldz" mnemoExt
|
|
"cpz" mnemoExt
|
|
"dew" mnemoExt
|
|
"asw" mnemoExt
|
|
"phz" mnemoExt
|
|
"inw" mnemoExt
|
|
"row" mnemoExt
|
|
"phw" mnemoExt
|
|
"plz" mnemoExt
|
|
"lbpl" pcmnemoExt
|
|
"lbmi" pcmnemoExt
|
|
"lbvc" pcmnemoExt
|
|
"lbvs" pcmnemoExt
|
|
"lbra" pcmnemoExt
|
|
"lbcc" pcmnemoExt
|
|
"lbcs" pcmnemoExt
|
|
"lbne" pcmnemoExt
|
|
"lbeq" pcmnemoExt
|
|
"rtn" pcmnemoExt
|
|
done
|
|
"!a-zA-Z0-9" checkstring
|
|
# " \t" idle noeat
|
|
|
|
:pseudo Pseudo
|
|
* idle noeat
|
|
:mnemo6502 Mnemo6502
|
|
* idle noeat
|
|
:pcmnemo6502 PCMnemo6502
|
|
* idle noeat
|
|
:mnemoExt MnemoExt
|
|
* idle noeat
|
|
:pcmnemoExt PCMnemoExt
|
|
* idle noeat
|
|
:keyword Keyword
|
|
* idle noeat
|