Skip to content

Instantly share code, notes, and snippets.

@auriza
Last active September 2, 2021 10:01
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save auriza/9fb537d16388d5f043225b3ec8070acb to your computer and use it in GitHub Desktop.
Save auriza/9fb537d16388d5f043225b3ec8070acb to your computer and use it in GitHub Desktop.
Assembly (x86) config for Geany
# For complete documentation of this file, please see Geany's main documentation
[styling]
# Edit these in the colorscheme .conf file instead
default=default
comment=comment_line
commentblock=comment
commentdirective=comment
number=number_1
string=string_1
operator=operator
identifier=identifier_1
cpuinstruction=keyword_1
mathinstruction=keyword_2
register=type
directive=preprocessor
directiveoperand=keyword_3
character=character
stringeol=string_eol
extinstruction=keyword_4
[keywords]
# all items must be in one line
# x86 asm (nasm syntax)
instructions=aaa aad aam aas adc add and call cbw clc cld cli cmc cmp cmpsb cmpsd cmpsw cwd daa das dec div enter esc f2xm1 fabs fadd faddp fbld fbstp fchs fclex fcom fcomp fcompp fcos fdecstp fdiv fdivp fdivr fdivrp ffree fiadd ficom ficomp fidiv fidivr fild fimul fincstp finit fist fistp fisub fisubr fld fld1 fldcw fldenv fldenvd fldenvw fldl2e fldl2t fldlg2 fldln2 fldpi fldz fmul fmulp fnclex fninit fnop fnsave fnsavew fnstcw fnstenv fnstenvw fnstsw fpatan fprem fprem1 fptan frndint frstor frstord frstorw fsave fsaved fsavew fscale fsin fsincos fsqrt fst fstcw fstenv fstenvd fstenvw fstp fstsw fsub fsubp fsubr fsubrp ftst fwait fxam fxch fxtract fyl2x fyl2xp1 hlt idiv imul in inc ins insd int into iret ja jae jb jbe jc jcxz je jecxz jg jge jl jle jmp jna jnae jnb jnbe jnc jne jng jnge jnl jnle jno jnp jns jnz jo jp jpe jpo js jz lahf lds lea leave les lock lodsb lodsd lodsw loop loopd loope looped loopne loopned loopnz loopnzd loopz loopzd mov movsb movsd movsw mul neg nop not or out outs outsd pop popa popad popf popfd push pusha pushad pushf pushfd rcl rcr rep repe repne repnz repz ret retn retf rol ror sahf sal sar sbb scasb scasd scasw shl shld shr shrd stc std sti stosb stosd stosw sub test wait xchg xlat xor
registers=al ah ax eax bl bh bx ebx cl ch cx ecx dl dh dx edx bp ebp sp esp si esi di edi st0 st1 st2 st3 st4 st5 st6 st7
directives=bits extern equ global incbin section segment strict times %define %if %ifn %ifdef %ifndef %elif %elifn %elifdef %elifndef %else %endif %include %macro %endmacro db dw dd dq dt do resb resw resd resq rest reso byte word dword qword tword oword nosplit %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 $ $$
[settings]
# default extension used when saving files
extension=asm
# the following characters are these which a "word" can contains, see documentation
#wordchars=_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
# single comments, like # in this file
comment_single=;
# multiline comments
#comment_open=
#comment_close=
# set to false if a comment character/string should start at column 0 of a line, true uses any
# indentation of the line, e.g. setting to true causes the following on pressing CTRL+d
#command_example();
# setting to false would generate this
# command_example();
# This setting works only for single line comments
comment_use_indent=true
# context action command (please see Geany's main documentation for details)
context_action_cmd=
[indentation]
#width=4
# 0 is spaces, 1 is tabs, 2 is tab & spaces
#type=1
[build-menu]
FT_00_LB=_Assemble
FT_00_CM=yasm %f -f elf32 -g dwarf2 -l %e.lst
FT_00_WD=
FT_01_LB=_Build
FT_01_CM=yasm %f -f elf32 -g dwarf2 -l %e.lst && gcc -o %e -m32 %e.o
FT_01_WD=
EX_01_LB=_Debug
EX_01_CM=ddd "%e" && exit
EX_01_WD=
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment