1 %macro dhl 1.nolist 2 db (%1) >> 8 3 db (%1) & 0xFF 4 %endmacro 5 %macro dhla 1.nolist 6 db ((%1)-_f0) >> 8 7 db ((%1)-_f0) & 0xFF 8 %endmacro 9 SECTION .data 10 global _f0 11 _f0: 12 13 ;; lua: return gsub(strings.Cdefs, "#", "%%") 14 %define H_AT 0x00 15 %define H_TO 0x01 16 %define H_CON 0x02 17 %define H_COL 0x03 18 %define H_RSR 0x04 19 %define FIP_RETURN 0xFFFF 20 %define FIP_RSREXIT 0xFFFE 21 %define FIP_FIPDROP 0xFFFD 22 %define SF_EXIT 0xFF 23 %define SF_STO 0xFE 24 %define SF_TOS 0xFD 25 %define F_EXIT 0xFCFF 26 %define F_STO 0xFCFE 27 %define F_COUNT 0xFCFD 28 %define F_2DUP 0xFCFC 29 %define F_PLUS 0xFCFB 30 %define F_TOS 0xFCFA 31 %define F_TYPE 0xFCF9 32 33 ;; lua: return strings.nasmbytecode 34 ADR_x26FOO: 35 00000000 00 db H_AT 36 ADR_FOOx21: 37 00000001 01 db H_TO 38 ADR_FOO: 39 00000002 02 db H_CON 40 00000003 45230100 dd 0x12345 41 ADR_Sx24x40x2c: 42 00000007 03 db H_COL 43 00000008 FE db SF_STO 44 00000009 FCFD dhl F_COUNT 45 0000000B FCFC dhl F_2DUP 46 0000000D FCFB dhl F_PLUS 47 0000000F FD db SF_TOS 48 00000010 FF db SF_EXIT 49 ADR_x3cx2ex22x3e: 50 00000011 04 db H_RSR 51 ADR_Sx3cx2ex22x3e: 52 00000012 03 db H_COL 53 00000013 0007 dhl ADR_Sx24x40x2c -_f0 54 00000015 FCF9 dhl F_TYPE 55 00000017 FF db SF_EXIT 56 ADR_2x3cx2ex22x3e: 57 00000018 04 db H_RSR 58 ADR_S2x3cx2ex22x3e: 59 00000019 03 db H_COL 60 0000001A 0012 dhl ADR_Sx3cx2ex22x3e -_f0 61 0000001C 0012 dhl ADR_Sx3cx2ex22x3e -_f0 62 0000001E FF db SF_EXIT 63 global ADR_DEMO 64 ADR_DEMO: 65 0000001F 03 db H_COL 66 00000020 0018 dhl ADR_2x3cx2ex22x3e -_f0 67 00000022 0648656C6C6F0A0654- db 6,'Hello',10,6,'There',10 68 0000002B 686572650A 69 00000030 0002 dhl ADR_FOO -_f0 70 00000032 0002 dhl ADR_FOO -_f0 71 00000034 FCFB dhl F_PLUS 72 00000036 0001 dhl ADR_FOOx21 -_f0 73 00000038 FF db SF_EXIT