Skip to content

Instantly share code, notes, and snippets.

@bkw777
Last active June 2, 2026 19:13
Show Gist options
  • Select an option

  • Save bkw777/8bd89ef73b2317043ad4a262b253018f to your computer and use it in GitHub Desktop.

Select an option

Save bkw777/8bd89ef73b2317043ad4a262b253018f to your computer and use it in GitHub Desktop.
z80 asm syntax for Geany
# /usr/share/geany/filedefs/filetypes.Z80asm.conf
# 20260408 b.kenyon.w@gmail.com
# z80 assembly for z88dk-z80asm
# Optionally edit /usr/share/geany/filetype_extensions.conf
# * under [Extensions] insert a new line "Z80asm=*.asm;"
# * under [Groups] apend "Z80asm;" to Programming=...
[styling=ASM]
[keywords]
# instructions, deduped, first appearance of each
#primary: nop ld inc dec rlca ex add rrca djnz rla jr rra daa cplscf ccf halt adc sub sbc and xor or cp ret pop jp call push rst [$CB] out exx in [$DD] [$ED] di ei [$FD]
#[$CB]: rlc rrc rl rr sla sra srl sll bit res set
#[$DD]: [$DDCB]
#[$ED]: neg retn im rrd rld ldi cpi ini outi ldd cpd ind outd ldir cpir inir otir lddr cpdr indr otdr
#[$FD]: [$FDCB]
#[$DDCB]:
#[$FDCB]:
instructions=nop ld inc dec rlca ex add rrca djnz rla jr rra daa cplscf ccf halt adc sub sbc and xor or cp ret pop jp call push rst out exx in di ei rlc rrc rl rr sla sra srl sll bit res set neg retn im rrd rld ldi cpi ini outi ldd cpd ind outd ldir cpir inir otir lddr cpdr indr otdr
registers=a b c d e h l hl ix iy nz z nc po pe p m bc de af sp asmpc
directives=assert defl exitm local macro endm rept reptc repti endr align .assume binary incbin call_oz call_pkg cu.wait cu.move cu.stop cu.nop defb db defm dm byte defw dw word defw_be de_be defdb ddb defp dp ptr defq dq dword defc dc defgroup define defs ds defvars equ dma.wr0 dma.wr1 dma.wr2 dma.wr3 dma.wr4 dma.wr5 dma.wr6 dma.cmd extern xref lib float ffp global if elif ifdef elifdef else endif ifndef elifndef include invoke line c_line lstoff lston module org phase dephase public xdef xlib section setfloat undefine
# z88dk-z80asm also allows: #define #ifdef #ifndef #else #endif ...
[lexer_properties=ASM]
[settings]
extension=asm
tag_parser=ASM
lexer_filetype=ASM
[build_settings]
# %f = filename
# %e = filename without ext
# foo.asm -> foo
#compiler=z88dk-z80asm -v -b -o="%e" "%f"
# foo.asm -> foo.bin
compiler=z88dk-z80asm -v -b "%f"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment