Download a new highlighting editor?
Want to parse FASM syntax?
What if FASM changes?
The solution is to use the FASM source code to generate the keyword file needed.
The minimalist way to do that is below:
virtual at 0
; SYSTEM.INC interface:
predefinitions:
get_environment_variable:
make_timestamp:
display_block:
fatal_error:
assembler_error:
create:
open:
lseek:
read:
write:
close:
include '..\source\version.inc'
include '..\source\errors.inc'
include '..\source\expressi.inc'
include '..\source\preproce.inc'
include '..\source\parser.inc'
include '..\source\assemble.inc'
include '..\source\formats.inc'
include '..\source\x86_64.inc'
include '..\source\messages.inc'
include '..\source\variable.inc'
end virtual
include '..\source\tables.inc'
...then the data can be accessed directly:
; macro_directives:
; preprocessor_directives:
; length byte ?
; string byte length dup(?)
; func word ?
;
; see get_directive in FASM source file "preproce.inc"
macro_directives.itterator:
xor eax,eax
lea esi,[macro_directives]
jmp preprocessor_directives.itterator.0
preprocessor_directives.itterator:
xor eax,eax
lea esi,[preprocessor_directives]
.0: lodsb
xchg ecx,eax
jecxz .x
lea eax,[esi+ecx+1]
mov byte [esi+ecx],0
xchg eax,esi
; EAX = string, null terminated
; ECX = length in bytes
call ebx
; ESI needs to be preserved
; EAX must be zero to continue
test eax,eax
jz .0
.x: retn
...any ideas?