2005-03-19 17:59:39 +03:00
|
|
|
#
|
|
|
|
# NASM,WASM,TASM,MASM and GAS x86 syntax highlight
|
|
|
|
# // Mike Gorchak
|
|
|
|
#
|
|
|
|
|
|
|
|
context default lightgray
|
|
|
|
|
|
|
|
# NASM directives
|
|
|
|
keyword whole BITS white
|
|
|
|
keyword whole SECTION white
|
|
|
|
keyword whole SEGMENT white
|
|
|
|
keyword whole ABSOLUTE white
|
|
|
|
keyword whole EXTERN white
|
|
|
|
keyword whole GLOBAL white
|
|
|
|
keyword whole COMMON white
|
|
|
|
keyword whole CPU white
|
|
|
|
|
|
|
|
# NASM, WASM, TASM, MASM and common modifiers
|
|
|
|
keyword whole ALIGN white
|
|
|
|
keyword whole ALIGNB white
|
|
|
|
keyword whole STRUC white
|
|
|
|
keyword whole ENDSTRUC white
|
|
|
|
keyword whole ISTRUC white
|
|
|
|
keyword whole IEND white
|
|
|
|
keyword whole AT white
|
|
|
|
keyword whole __FILE__ white
|
|
|
|
keyword whole __LINE__ white
|
|
|
|
keyword whole __NASM_VER__ white
|
|
|
|
keyword whole __NASM_VERSION_ID__ white
|
|
|
|
keyword whole __NASM_MAJOR__ white
|
|
|
|
keyword whole __NASM_MINOR__ white
|
|
|
|
keyword whole __NASM_SUBMINOR__ white
|
|
|
|
keyword whole __NASM_PATCHLEVEL__ white
|
|
|
|
keyword whole __SECT__ white
|
|
|
|
keyword whole STRICT white
|
|
|
|
keyword whole SEG white
|
|
|
|
keyword whole WRT white
|
|
|
|
keyword whole NOSPLIT white
|
|
|
|
keyword whole BYTE white
|
|
|
|
keyword whole WORD white
|
|
|
|
keyword whole DWORD white
|
|
|
|
keyword whole QWORD white
|
|
|
|
keyword whole TWORD white
|
|
|
|
keyword whole align white
|
|
|
|
keyword whole alignb white
|
|
|
|
keyword whole struc white
|
|
|
|
keyword whole endstruc white
|
|
|
|
keyword whole istruc white
|
|
|
|
keyword whole iend white
|
|
|
|
keyword whole at white
|
|
|
|
keyword whole strict white
|
|
|
|
keyword whole seg white
|
|
|
|
keyword whole wrt white
|
|
|
|
keyword whole nosplit white
|
|
|
|
keyword whole byte white
|
|
|
|
keyword whole word white
|
|
|
|
keyword whole dword white
|
|
|
|
keyword whole qword white
|
|
|
|
keyword whole tword white
|
|
|
|
|
|
|
|
# Pseudo instructions
|
|
|
|
keyword whole Org white
|
|
|
|
keyword whole Equ white
|
|
|
|
keyword whole Db white
|
|
|
|
keyword whole Dw white
|
|
|
|
keyword whole Dd white
|
|
|
|
keyword whole Dq white
|
|
|
|
keyword whole Dt white
|
|
|
|
keyword whole Resb white
|
|
|
|
keyword whole Resw white
|
|
|
|
keyword whole Resd white
|
|
|
|
keyword whole Resq white
|
|
|
|
keyword whole Rest white
|
|
|
|
keyword whole Incbin white
|
|
|
|
keyword whole Times white
|
|
|
|
keyword whole org white
|
|
|
|
keyword whole equ white
|
|
|
|
keyword whole db white
|
|
|
|
keyword whole dw white
|
|
|
|
keyword whole dd white
|
|
|
|
keyword whole dq white
|
|
|
|
keyword whole dt white
|
|
|
|
keyword whole resb white
|
|
|
|
keyword whole resw white
|
|
|
|
keyword whole resd white
|
|
|
|
keyword whole resq white
|
|
|
|
keyword whole rest white
|
|
|
|
keyword whole incbin white
|
|
|
|
keyword whole times white
|
|
|
|
keyword whole ORG white
|
|
|
|
keyword whole EQU white
|
|
|
|
keyword whole DB white
|
|
|
|
keyword whole DW white
|
|
|
|
keyword whole DD white
|
|
|
|
keyword whole DQ white
|
|
|
|
keyword whole DT white
|
|
|
|
keyword whole RESB white
|
|
|
|
keyword whole RESW white
|
|
|
|
keyword whole RESD white
|
|
|
|
keyword whole RESQ white
|
|
|
|
keyword whole REST white
|
|
|
|
keyword whole INCBIN white
|
|
|
|
keyword whole TIMES white
|
|
|
|
|
|
|
|
# GAS specific
|
|
|
|
keyword whole .string white
|
|
|
|
keyword whole .section white
|
|
|
|
keyword whole .align white
|
|
|
|
keyword whole .type white
|
|
|
|
keyword whole .size white
|
|
|
|
keyword whole .comm white
|
|
|
|
keyword whole .ident white
|
|
|
|
keyword whole .globl white
|
|
|
|
keyword whole .rodata brightblue
|
|
|
|
keyword whole .data brightblue
|
|
|
|
keyword whole .text brightblue
|
|
|
|
keyword whole .bss brightblue
|
|
|
|
|
|
|
|
# NASM/TASM Macroses
|
|
|
|
keyword whole %ifdef brightred
|
|
|
|
keyword whole %define brightred
|
|
|
|
keyword whole %else brightred
|
|
|
|
keyword whole %elif brightred
|
|
|
|
keyword whole %endif brightred
|
|
|
|
keyword whole %macro brightred
|
|
|
|
keyword whole %endmacro brightred
|
|
|
|
keyword whole %rep brightred
|
|
|
|
keyword whole %repl brightred
|
|
|
|
keyword whole %strlen brightred
|
|
|
|
keyword whole %substr brightred
|
|
|
|
keyword whole %arg brightred
|
|
|
|
keyword whole %stacksize brightred
|
|
|
|
keyword whole %local brightred
|
|
|
|
keyword whole %push brightred
|
|
|
|
keyword whole %pop brightred
|
|
|
|
keyword whole %line brightred
|
|
|
|
keyword whole %\! brightred
|
|
|
|
keyword whole %\+ brightred
|
|
|
|
|
|
|
|
# Generic 16-bit registers set
|
|
|
|
keyword whole al brightmagenta
|
|
|
|
keyword whole bl brightmagenta
|
|
|
|
keyword whole cl brightmagenta
|
|
|
|
keyword whole dl brightmagenta
|
|
|
|
keyword whole ah brightmagenta
|
|
|
|
keyword whole bh brightmagenta
|
|
|
|
keyword whole ch brightmagenta
|
|
|
|
keyword whole dh brightmagenta
|
|
|
|
keyword whole ax brightmagenta
|
|
|
|
keyword whole bx brightmagenta
|
|
|
|
keyword whole cx brightmagenta
|
|
|
|
keyword whole dx brightmagenta
|
|
|
|
keyword whole si brightmagenta
|
|
|
|
keyword whole di brightmagenta
|
|
|
|
keyword whole bp brightmagenta
|
|
|
|
keyword whole sp brightmagenta
|
|
|
|
keyword whole es brightmagenta
|
|
|
|
keyword whole cs brightmagenta
|
|
|
|
keyword whole ds brightmagenta
|
|
|
|
|
|
|
|
keyword whole %al brightmagenta
|
|
|
|
keyword whole %bl brightmagenta
|
|
|
|
keyword whole %cl brightmagenta
|
|
|
|
keyword whole %dl brightmagenta
|
|
|
|
keyword whole %ah brightmagenta
|
|
|
|
keyword whole %bh brightmagenta
|
|
|
|
keyword whole %ch brightmagenta
|
|
|
|
keyword whole %dh brightmagenta
|
|
|
|
keyword whole %ax brightmagenta
|
|
|
|
keyword whole %bx brightmagenta
|
|
|
|
keyword whole %cx brightmagenta
|
|
|
|
keyword whole %dx brightmagenta
|
|
|
|
keyword whole %si brightmagenta
|
|
|
|
keyword whole %di brightmagenta
|
|
|
|
keyword whole %bp brightmagenta
|
|
|
|
keyword whole %sp brightmagenta
|
|
|
|
keyword whole %es brightmagenta
|
|
|
|
keyword whole %cs brightmagenta
|
|
|
|
keyword whole %ds brightmagenta
|
|
|
|
|
|
|
|
keyword whole AL brightmagenta
|
|
|
|
keyword whole BL brightmagenta
|
|
|
|
keyword whole CL brightmagenta
|
|
|
|
keyword whole DL brightmagenta
|
|
|
|
keyword whole AH brightmagenta
|
|
|
|
keyword whole BH brightmagenta
|
|
|
|
keyword whole CH brightmagenta
|
|
|
|
keyword whole DH brightmagenta
|
|
|
|
keyword whole AX brightmagenta
|
|
|
|
keyword whole BX brightmagenta
|
|
|
|
keyword whole CX brightmagenta
|
|
|
|
keyword whole DX brightmagenta
|
|
|
|
keyword whole SI brightmagenta
|
|
|
|
keyword whole DI brightmagenta
|
|
|
|
keyword whole BP brightmagenta
|
|
|
|
keyword whole SP brightmagenta
|
|
|
|
keyword whole ES brightmagenta
|
|
|
|
keyword whole CS brightmagenta
|
|
|
|
keyword whole DS brightmagenta
|
|
|
|
|
|
|
|
# Generic 32-bit registers set
|
|
|
|
keyword whole eax brightmagenta
|
|
|
|
keyword whole ebx brightmagenta
|
|
|
|
keyword whole ecx brightmagenta
|
|
|
|
keyword whole edx brightmagenta
|
|
|
|
keyword whole esi brightmagenta
|
|
|
|
keyword whole edi brightmagenta
|
|
|
|
keyword whole ebp brightmagenta
|
|
|
|
keyword whole esp brightmagenta
|
|
|
|
keyword whole fs brightmagenta
|
|
|
|
keyword whole gs brightmagenta
|
|
|
|
|
|
|
|
keyword whole %eax brightmagenta
|
|
|
|
keyword whole %ebx brightmagenta
|
|
|
|
keyword whole %ecx brightmagenta
|
|
|
|
keyword whole %edx brightmagenta
|
|
|
|
keyword whole %esi brightmagenta
|
|
|
|
keyword whole %edi brightmagenta
|
|
|
|
keyword whole %ebp brightmagenta
|
|
|
|
keyword whole %esp brightmagenta
|
|
|
|
keyword whole %fs brightmagenta
|
|
|
|
keyword whole %gs brightmagenta
|
|
|
|
|
|
|
|
keyword whole EAX brightmagenta
|
|
|
|
keyword whole EBX brightmagenta
|
|
|
|
keyword whole ECX brightmagenta
|
|
|
|
keyword whole EDX brightmagenta
|
|
|
|
keyword whole ESI brightmagenta
|
|
|
|
keyword whole EDI brightmagenta
|
|
|
|
keyword whole EBP brightmagenta
|
|
|
|
keyword whole ESP brightmagenta
|
|
|
|
keyword whole FS brightmagenta
|
|
|
|
keyword whole GS brightmagenta
|
|
|
|
|
|
|
|
keyword whole cr0 magenta
|
|
|
|
keyword whole cr1 magenta
|
|
|
|
keyword whole cr2 magenta
|
|
|
|
keyword whole dr0 magenta
|
|
|
|
keyword whole dr1 magenta
|
|
|
|
keyword whole tr0 magenta
|
|
|
|
keyword whole tr1 magenta
|
|
|
|
|
|
|
|
keyword whole CR0 magenta
|
|
|
|
keyword whole CR1 magenta
|
|
|
|
keyword whole CR2 magenta
|
|
|
|
keyword whole DR0 magenta
|
|
|
|
keyword whole DR1 magenta
|
|
|
|
keyword whole TR0 magenta
|
|
|
|
keyword whole TR1 magenta
|
|
|
|
|
2006-08-24 07:53:13 +04:00
|
|
|
# Generic AMD64 registers set
|
|
|
|
keyword whole rax brightmagenta
|
|
|
|
keyword whole rbx brightmagenta
|
|
|
|
keyword whole rcx brightmagenta
|
|
|
|
keyword whole rdx brightmagenta
|
|
|
|
keyword whole rsi brightmagenta
|
|
|
|
keyword whole rdi brightmagenta
|
|
|
|
keyword whole rbp brightmagenta
|
|
|
|
keyword whole rsp brightmagenta
|
|
|
|
keyword whole r8 brightmagenta
|
|
|
|
keyword whole r9 brightmagenta
|
|
|
|
keyword whole r10 brightmagenta
|
|
|
|
keyword whole r11 brightmagenta
|
|
|
|
keyword whole r12 brightmagenta
|
|
|
|
keyword whole r13 brightmagenta
|
|
|
|
keyword whole r14 brightmagenta
|
|
|
|
keyword whole r15 brightmagenta
|
|
|
|
|
|
|
|
keyword whole %rax brightmagenta
|
|
|
|
keyword whole %rbx brightmagenta
|
|
|
|
keyword whole %rcx brightmagenta
|
|
|
|
keyword whole %rdx brightmagenta
|
|
|
|
keyword whole %rsi brightmagenta
|
|
|
|
keyword whole %rdi brightmagenta
|
|
|
|
keyword whole %rbp brightmagenta
|
|
|
|
keyword whole %rsp brightmagenta
|
|
|
|
keyword whole %r8 brightmagenta
|
|
|
|
keyword whole %r9 brightmagenta
|
|
|
|
keyword whole %r10 brightmagenta
|
|
|
|
keyword whole %r11 brightmagenta
|
|
|
|
keyword whole %r12 brightmagenta
|
|
|
|
keyword whole %r13 brightmagenta
|
|
|
|
keyword whole %r14 brightmagenta
|
|
|
|
keyword whole %r15 brightmagenta
|
|
|
|
|
|
|
|
keyword whole RAX brightmagenta
|
|
|
|
keyword whole RBX brightmagenta
|
|
|
|
keyword whole RCX brightmagenta
|
|
|
|
keyword whole RDX brightmagenta
|
|
|
|
keyword whole RSI brightmagenta
|
|
|
|
keyword whole RDI brightmagenta
|
|
|
|
keyword whole RBP brightmagenta
|
|
|
|
keyword whole RSP brightmagenta
|
|
|
|
keyword whole R8 brightmagenta
|
|
|
|
keyword whole R9 brightmagenta
|
|
|
|
keyword whole R10 brightmagenta
|
|
|
|
keyword whole R11 brightmagenta
|
|
|
|
keyword whole R12 brightmagenta
|
|
|
|
keyword whole R13 brightmagenta
|
|
|
|
keyword whole R14 brightmagenta
|
|
|
|
keyword whole R15 brightmagenta
|
|
|
|
|
2005-03-19 17:59:39 +03:00
|
|
|
# FPU registers set
|
|
|
|
keyword whole st0 brightcyan
|
|
|
|
keyword whole st1 brightcyan
|
|
|
|
keyword whole st2 brightcyan
|
|
|
|
keyword whole st3 brightcyan
|
|
|
|
keyword whole st4 brightcyan
|
|
|
|
keyword whole st5 brightcyan
|
|
|
|
keyword whole st6 brightcyan
|
|
|
|
keyword whole st7 brightcyan
|
|
|
|
keyword whole %st0 brightcyan
|
|
|
|
keyword whole %st1 brightcyan
|
|
|
|
keyword whole %st2 brightcyan
|
|
|
|
keyword whole %st3 brightcyan
|
|
|
|
keyword whole %st4 brightcyan
|
|
|
|
keyword whole %st5 brightcyan
|
|
|
|
keyword whole %st6 brightcyan
|
|
|
|
keyword whole %st7 brightcyan
|
|
|
|
|
|
|
|
# MMX/3DNOW registers set
|
|
|
|
keyword whole mm0 brightcyan
|
|
|
|
keyword whole mm1 brightcyan
|
|
|
|
keyword whole mm2 brightcyan
|
|
|
|
keyword whole mm3 brightcyan
|
|
|
|
keyword whole mm4 brightcyan
|
|
|
|
keyword whole mm5 brightcyan
|
|
|
|
keyword whole mm6 brightcyan
|
|
|
|
keyword whole mm7 brightcyan
|
|
|
|
keyword whole %mm0 brightcyan
|
|
|
|
keyword whole %mm1 brightcyan
|
|
|
|
keyword whole %mm2 brightcyan
|
|
|
|
keyword whole %mm3 brightcyan
|
|
|
|
keyword whole %mm4 brightcyan
|
|
|
|
keyword whole %mm5 brightcyan
|
|
|
|
keyword whole %mm6 brightcyan
|
|
|
|
keyword whole %mm7 brightcyan
|
|
|
|
|
|
|
|
# SSE registers set
|
|
|
|
keyword whole xmm0 brightcyan
|
|
|
|
keyword whole xmm1 brightcyan
|
|
|
|
keyword whole xmm2 brightcyan
|
|
|
|
keyword whole xmm3 brightcyan
|
|
|
|
keyword whole xmm4 brightcyan
|
|
|
|
keyword whole xmm5 brightcyan
|
|
|
|
keyword whole xmm6 brightcyan
|
|
|
|
keyword whole xmm7 brightcyan
|
|
|
|
keyword whole %xmm0 brightcyan
|
|
|
|
keyword whole %xmm1 brightcyan
|
|
|
|
keyword whole %xmm2 brightcyan
|
|
|
|
keyword whole %xmm3 brightcyan
|
|
|
|
keyword whole %xmm4 brightcyan
|
|
|
|
keyword whole %xmm5 brightcyan
|
|
|
|
keyword whole %xmm6 brightcyan
|
|
|
|
keyword whole %xmm7 brightcyan
|
|
|
|
|
|
|
|
# Common symbols
|
|
|
|
keyword ; brown
|
2005-09-05 06:07:43 +04:00
|
|
|
keyword ! brown
|
|
|
|
keyword /\* brown
|
|
|
|
keyword \*/ brown
|
2005-03-19 17:59:39 +03:00
|
|
|
keyword [ white
|
|
|
|
keyword ] white
|
|
|
|
keyword , white
|
|
|
|
keyword \+ white
|
|
|
|
keyword - white
|
|
|
|
keyword . white
|
|
|
|
keyword ( white
|
|
|
|
keyword ) white
|
|
|
|
keyword : white
|
|
|
|
keyword @ white
|
|
|
|
keyword >> white
|
|
|
|
keyword << white
|
|
|
|
keyword % white
|
|
|
|
keyword \\ white
|
|
|
|
keyword / white
|
|
|
|
keyword // white
|
|
|
|
keyword ~ white
|
|
|
|
keyword ^ white
|
|
|
|
keyword & white
|
|
|
|
keyword \* white
|
|
|
|
keyword | white
|
|
|
|
keyword $ brightgreen
|
|
|
|
keyword $$ brightgreen
|
|
|
|
keyword %% cyan
|
|
|
|
|
|
|
|
context " " green
|
|
|
|
context ' ' brightgreen
|
|
|
|
context exclusive ; \n brown
|
|
|
|
spellcheck
|
2005-09-05 06:07:43 +04:00
|
|
|
|
|
|
|
context exclusive /\* \*/ brown
|
|
|
|
spellcheck
|
|
|
|
|
|
|
|
context exclusive ! \n brown
|
|
|
|
spellcheck
|