1 # need to do some nested macro stuff to workaround 2 # missing 'for' loop and nested limits 3 4 # iterate 0x40 times 5 .macro __dw b, i, e 6 .if \i < \e 7 .dw \b + \i 8 __dw \b, (\i + 1), \e 9 .endif 10 .endm 11 12 # iterate 0x20 times 13 .macro _dw b, i, e 14 .if \i < \e 15 __dw \b, \i, \i + 0x40 16 _dw \b, \i + 0x40, \e 17 .endif 18 .endm 19 20 # iterate 0x4 times 21 .macro dw b, i, e 22 .if \i < \e 23 _dw \b, \i, \i + 0x800 24 dw \b, \i + 0x800, \e 25 .endif 26 .endm 27 28 dw 0x0000 0 0x2000 29 dw 0x2000 0 0x2000 30 dw 0x4000 0 0x2000 31 dw 0x6000 0 0x2000 32 dw 0x8000 0 0x2000 33 dw 0xa000 0 0x2000 34