pokecrystal-board/macros/enum.asm
yenatch e7a3ba0592 Add a macro for enumeration.
"enum" is like "const" but uses variables instead. This might not be desired.

It has been moved to the top of macros.asm so that included macros can be enumerated.
2015-04-13 21:41:32 -07:00

32 lines
352 B
NASM

; Enumerate variables
enum_start: macro
if _NARG >= 1
__enum__ = \1
else
__enum__ = 0
endc
if _NARG >= 2
__enumdir__ = \2
else
__enumdir__ = +1
endc
endm
enum: macro
\1 = __enum__
__enum__ = __enum__ + __enumdir__
endm
; Enumerate constants
const_def: MACRO
const_value = 0
ENDM
const: MACRO
\1 EQU const_value
const_value = const_value + 1
ENDM