BeginProc

include vmm.inc

BeginProc ProcName, Attributes


The BeginProc macro marks the start of a procedure having the specified attributes.

Parameters

ProcName

Specifies the name of the procedure to create.

Attributes

Specifies one or more procedure attributes. This parameter can be a combination of the following attributes:

Attribute Description

ASYNC_SERVICE Creates an asynchronous service that can be called by other virtual devices. The procedure must be re-entrant, must not call synchronous services, and must be defined in a locked segment. Asynchronous services are intended to be called by interrupt handling routines when processing interrupts.
HIGH_FREQ Specifies a frequently called procedure. The macro aligns the start of the procedure on a doubleword boundary to optimize calls to the procedure.
NO_LOG Prevents a call to the Log_Call_Proc service from being inserted at the beginning of the procedure. The macro inserts the Log_Call_Proc service only if the DEBUG symbol is defined.
PUBLIC Creates a global procedure that other procedures in the virtual device can call.
SERVICE Creates a service that other virtual devices can call. If the DEBUG symbol is defined, the macro inserts a call to the Test_Reenter service at the beginning of the procedure.

If more than one attribute is given, they must be separated by commas.

Return Value

This macro has no return value.

See Also

EndProc