include vmm.inc BeginProc ProcName, Attributes |
The BeginProc macro marks the start of a procedure having the specified attributes.
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.
This macro has no return value.