0
0
mirror of https://github.com/netwide-assembler/nasm.git synced 2025-10-10 00:25:06 -04:00
Files
nasm/macros/masm.mac
H. Peter Anvin 23ce05f906 treewide: replace verbose copyright headers with SPDX tags
SPDX is an international standard for documenting software license
requirements. Remove the existing headers and replace with a brief
SPDX preamble.

See: https://spdx.dev/use/specifications/

The script used to convert the files is added to "tools", and the
file header templates in headers/ are updated.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 11:45:31 -07:00

57 lines
1001 B
Plaintext

;; SPDX-License-Identifier: BSD-2-Clause
;; Copyright 2019-2025 The NASM Authors - All Rights Reserved
;;
;; masm.mac
;;
;; Very limited MASM compatibility package; intended to be used
;; primarily with machine-generated code. It does not include any
;; "programmer friendly" shortcuts, nor does it in any way support
;; ASSUME, symbol typing, or MASM-style structures.
;;
USE: masm
%unimacro segment 1+
%imacro segment 0-1+.nolist
%define __?SECT?__ [segment %00 %1]
__?SECT?__
%endmacro
%imacro ends 0+.nolist
%null ends %00
%endmacro
%imacro proc 0-*.nolist
%rep %0
%ifidni %1,far
%idefine ret retf
%else
%idefine ret retn
%endif
%rotate 1
%endrep
%endmacro
%imacro endp 0.nolist
%null endp %00
%undef ret
%endmacro
%ifndef st
%idefine st(x) st %+ x
%endif
%idefine ptr __?masm_ptr?__
%idefine flat __?masm_flat?__ ; is %idefine really correct here?
%idefine offset
%imacro end 0+.nolist
; Nothing
%endmacro
%idefine tbyte tword
default rel