There are two main ways to use DIVE: using the DIVE blitter and using direct frame-buffer access. DIVE applications gain access to DIVE functions by obtaining a DIVE handle:
ULONG ulErrorCode; HDIVE *phDiveInst; BOOL fNonScreenInstance; PVOID ppFrameBuffer; ulErrorCode = DiveOpen( *phDiveInst, fNonScreenInstance, ppFrameBuffer );
A corresponding DiveClose function must be called at application termination. If DIVE is to be used for blitting to the screen, set fNonScreenInstance to FALSE. Otherwise, if DIVE is to be used only for off-screen sizing or color format conversion, set fNonScreenInstance to TRUE. If fNonScreenInstance is FALSE, a pointer to the frame buffer is returned in ppFrameBuffer.