IOCTL_VIDEO_MAP_VIDEO_MEMORY control code
Maps the video hardware frame buffer and video RAM into the virtual address space of the requester. Miniport drivers are required to handle this IOCTL and to map all video memory in the caller's address space with VideoPortMapMemory.
This request is both modal and nonmodal: the miniport driver must return the location size of the frame buffer within video memory, and the frame buffer size and location can vary from mode to mode (modal characteristic). However, a subsequent set-mode operation (to the same mode) must not cause the video memory to change location (nonmodal characteristic).
The VRP InputBuffer contains a VIDEO_MEMORY structure specifying either a requested virtual base address or zero, which requests the system to assign a virtual base address mapped to the adapter's RAM and frame buffer range(s).
The miniport driver returns a VIDEO_MEMORY_INFORMATION structure in the VRP OutputBuffer.
If the miniport driver successfully maps the memory, it sets the Information member of the STATUS_BLOCK structure to sizeof(VIDEO_MEMORY_INFORMATION); otherwise, it sets this member to zero.