Jump to content

DEVESC_HWREQUEST

From EDM2
Revision as of 23:49, 11 July 2025 by Martini (talk | contribs) (Created page with "{{DISPLAYTITLE:DEVESC_HWREQUEST}} '''GreEscape DEVESC_HWREQUEST''' is called by EnDIVE users to take advantage of enhanced acquire functions. In addition to performing the same serialization functions, GreEscape DEVESC_HWREQUEST lets each using process find out if its video memory buffer has been relocated or if system memory could not be allocated. ;Simulation support: None. ==Syntax==  GreEscape(hdc, ICODE, lInCount, pbInData, plOutCount, pbOutData); ==Paramet...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

GreEscape DEVESC_HWREQUEST is called by EnDIVE users to take advantage of enhanced acquire functions. In addition to performing the same serialization functions, GreEscape DEVESC_HWREQUEST lets each using process find out if its video memory buffer has been relocated or if system memory could not be allocated.

Simulation support

None.


Syntax

 GreEscape(hdc, ICODE, lInCount, pbInData, plOutCount, pbOutData);

Parameters

hdc (HDC) - input
Device context handle.
ICODE (LONG) - input
DEVESC_HWREQUEST escape code.
lInCount (LONG) - input
Number of bytes pointed to by pbInData.
pbInData (PBYTE) - input
Pointer to VRAMREQUESTIN data structure.
plOutCount (PLONG) - input
Number of bytes pointed to by pbOutData.
pbOutData (PLONG) - input
Pointer to VRAMREQUESTOUT data structure.

Returns

rc (LONG) - returns
Return Codes.
The handling routine returns:
DEV_OK
Successful
DEVESC_NOTIMPLEMENTED
Escape is not implemented for the specified code
DEVESC_ERROR
Error
WINGETLASTERROR can be called for specific error information.

Remarks

None.

Sample Source Code

Declaration:

#define INCL_GRE_DEVICE
#include <os2.h>

HDC       hdc;           /* Device context handle. */
LONG      ICODE;         /* DEVESC_HWREQUEST escape code. */
LONG      lInCount;      /* Number of bytes pointed to by pbInData. */
PBYTE     pbInData;      /* Pointer to VRAMREQUESTIN data structure. */
PLONG     plOutCount;    /* Number of bytes pointed to by pbOutData. */
PLONG     pbOutData;     /* Pointer to VRAMREQUESTOUT data structure. */
LONG      rc;            /* Return Codes. */

rc = GreEscape(hdc, ICODE, lInCount, pbInData,
        plOutCount, pbOutData);