include dosmgr.inc VxDcall DOSMGR_Instance_Device |
The DOSMGR_Instance_Device service instances the installed MS-DOS character device driver.
This service is only valid during the Init_Complete message.
ESI
Points to the 8-character device name. This name must exactly match the name as it found in the device header in low memory. Characters must be in uppercase; case conversion is not performed. Names shorter than 8 characters must be padded with spaces. The colon (:) must not be used.
The carry flag is clear if the device is instanced. Otherwise, the carry flag is set to indicate one of the following errors:
No device with this name in device list
Device is in MS-DOS RAM BIOS (Segment of device == 70h)
User overides with the global setting in SYSTEM.INI
This service applies only to installed character devices (where the device segment is not equal to 70h). It cannot instance devices that are in the MS-DOS RAM BIOS because there is no way to determine their start and end addresses. It is the job of MS-DOS instancing to correctly instance things related to character devices in the MS-DOS RAM BIOS.
This service instances the entire device. It cannot differentiate code and data.
This service is available during the Init_Complete message only, and cannot work until the DOSMGR_Device_Init service is complete. The service is in the ICODE segment so it becomes invalid after the Init_Complete message. Calls to the _AddInstanceItem service are also invalid after Init_Complete.
Do not use this service to instance devices added with the DOSMGR_Add_Device service. To instance an added device, a virtual device must call the _AddInstanceItem service or use the GVDAInstance flag in the _Allocate_Global_V86_Data_Area service.
Flags