6.1.9.24 Irp And Irpc Directives
The IRP
and IRPC
directives operate in a
similar way to REPT
; however, instead of repeating the block a
fixed number of times, it is repeated once for each member of an argument
list.
In the case of IRP
, the list is a conventional macro
argument list. In the case or IRPC
, it is each character in one
argument. For each repetition, the argument is substituted for one formal
parameter.
For example:
IRP number,4865h,6C6Ch,6F00h
DW number
ENDM
would expand to:
DW 4865h
DW 6C6Ch
DW 6F00h
Note that you can use local labels and angle brackets in the same manner as with conventional macros.
The IRPC
directive is similar, except it substitutes one
character at a time from a string of non-space characters.
For example:
IRPC char,ABC
DB ’char’
ENDM
will expand to:
DB ’A’
DB ’B’
DB ’C’