The first implementation of Graphics Driver interfaces for high speed access to graphics hardware were shipped in the OS/2 2.1 DDK as extensions or DEVESC_ functions. The DEVESC_GETAPERTURE, DEVESC_ACQUIREFB, DEVESC_SWITCHBANK and DEVESC_DEAQUIREFB functions provide a device independent interface for application and system software to access display memory directly. With these DEVESC_ functions, time-sensitive software requiring simple, fast graphics throughput achieves a sizable performance boost.
Using the DIVE architecture, the OS/2 multimedia subsystem writes directly to video memory. As a user of the DIVE driver functions, the subsystem performs all window clipping, color translation and scaling required to write the data correctly in a window. Additionally, on bank-switched configurations, software using the DIVE driver functions must detect when video memory bank boundaries are crossed and then switch the bank correctly