Files
rgbds/test/asm/interpolation.asm
2025-09-06 13:45:12 -04:00

33 lines
649 B
NASM

SECTION "Test", ROM0[123]
def NAME equs "ITEM"
def FMT equs "d"
def ZERO_NUM equ 0
def ZERO_STR equs "0"
; Defines INDEX as 100
def INDEX = 1{ZERO_STR}{{FMT}:ZERO_NUM}
; Defines ITEM_100 as "\"hundredth\""
def {NAME}_{d:INDEX} equs "\"hundredth\""
; Prints "ITEM_100 is hundredth"
PRINTLN STRCAT("{NAME}_{d:INDEX}", " is ", {{NAME}_{d:INDEX}})
; Purges ITEM_100
PURGE {NAME}_{d:INDEX}
ASSERT !DEF({NAME}_{d:INDEX})
; undefined
PRINTLN "undef {undef}"
; referenced but undefined
ld hl, label
PRINTLN "label {label}"
label::
PRINTLN "label {label}"
; not string or number
MACRO foo
ENDM
PRINTLN "foo {foo}"
; hashless keyword
PRINTLN "xor {xor}"