en:ibm:prcp:open

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
en:ibm:prcp:open [2016/02/04 02:30] valeriusen:ibm:prcp:open [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1
Line 1: Line 1:
-==== MouOpen ==== 
- 
-**Bindings**: C, MASM  
- 
-This call opens the mouse device for the current session.  
- 
-//MouOpen// (**DriverName, DeviceHandle**)  
- 
-//DriverName// (**PSZ**) - input  
-//DriverName// is a far pointer to an **ASCIIZ** string in application storage containing the name of the pointer draw device driver to be used as the pointer-image drawing routine for this session.  
- 
-The name of the device driver must be included in the **CONFIG.SYS** file at system start-up time. Applications that use the default pointer draw device driver supplied by the system must push a double-word of 0s in place of an address.  
- 
-//DriverName// has a different definition when the caller is the Base Video Subsystem (**BVS**). In this case the selector portion of the far address is zero. The offset portion is non-zero and contains a display configuration number (sequentially numbered where 1 is the first display configuration). The [[open|MouOpen]] call issued by **BVS** is executed on the [[en:ibm:prcp:vio:setmode|VioSetMode]] path. Using the display configuration number passed on the [[open|MouOpen]] call, the Base Mouse Subsystem can detect a change in display configurations. This form of the MouOpen call is not recommended for applications. Applications should either push the far address of an **ASCIIZ** pointer draw device driver name or push two words of zeros.  
- 
-//DeviceHandle// (**PHMOU**) - output  
-Address of a 1-word value that represents the mouse handle returned to the application.  
- 
-//rc// (**USHORT**) - return  
-Return code descriptions are:  
- 
-|0 |NO_ERROR | 
-|385 |ERROR_MOUSE_NO_DEVICE | 
-|390 |ERROR_MOUSE_INV_MODULE_PT | 
-|466 |ERROR_MOU_DETACHED | 
-|501 |ERROR_MOUSE_NO_CONSOLE | 
-|505 |ERROR_MOU_EXTENDED_SG | 
- 
-**Remarks** 
- 
-[[open|MouOpen]] initializes the Mouse functions to a known state. The application may have to issue additional mouse functions to establish the environment it desires. For example, after the [[open|MouOpen]], the collision area is defined to be the size of the entire display. Therefore, to get the pointer to be displayed, the application must issue a [[drawptr|MouDrawPtr]] to remove the collision area.  
- 
-The state of the mouse after the first [[open|MouOpen]] is:  
- 
-  * Row/Col scale factors set to 16/8. (See [[setscalefact|MouSetScaleFact]].)  
-  * All events reported. (See [[seteventmask|MouSetEventMask]].)  
-  * Empty event queue. (See [[readeentque|MouReadEventQue]] and [[getnumqueel|MouGetNumQueEl]].)  
-  * All user settable Device Status bits reset. (Set to zero. See [[setdevstatus|MouSetDevStatus]].)  
-  * Pointer set to center of screen if valid display mode is set. (See [[setptrpos|MouSetPtrPos]].)  
-  * Pointer shape set to the default for the pointer device driver currently registered in the session. (See [[setptrshape|MouSetPtrShape]].)  
-  * Collision area equal to full screen. (See [[drawptr|MouDrawPtr]] and [[removeptr|MouRemovePtr]].)