mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
e7a3ba0592
"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.
32 lines
352 B
NASM
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
|