%macro dhl 1.nolist db (%1) >> 8 db (%1) & 0xFF %endmacro %macro dhla 1.nolist db ((%1)-_f0) >> 8 db ((%1)-_f0) & 0xFF %endmacro SECTION .data global _f0 _f0: ;; lua: return gsub(strings.Cdefs, "#", "%%") %define H_C1 0x00 %define H_RSR 0x01 %define H_COL 0x02 %define FIP_RETURN 0xFFFF %define FIP_RSREXIT 0xFFFE %define FIP_FIPDROP 0xFFFD %define SF_EXIT 0xFF %define SF_DUP 0xFE %define F_EXIT 0xFDFF %define F_STO 0xFDFE %define F_DUP 0xFDFD %define F_2DUP 0xFDFC %define F_TYPE 0xFDFB %define F_PLUS 0xFDFA %define F_1 0xFDF9 %define F_TOS 0xFDF8 ;; lua: return strings.nasmbytecode ADR_strlen: db H_C1 extern strlen dd strlen ADR_0x3cx2ex22x3e: db H_RSR ADR_S0x3cx2ex22x3e: db H_COL dhl F_STO db SF_DUP dhl ADR_strlen -_f0 dhl F_2DUP dhl F_TYPE dhl F_PLUS dhl F_1 dhl F_PLUS dhl F_TOS db SF_EXIT global ADR_DEMO ADR_DEMO: db H_COL dhl ADR_0x3cx2ex22x3e -_f0 db 'Hello',10,0 dhl ADR_0x3cx2ex22x3e -_f0 db 'There!',10,0 db SF_EXIT