MouSynch: Difference between revisions
Appearance
mNo edit summary |
mNo edit summary |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 6: | Line 6: | ||
==Parameters== | ==Parameters== | ||
;IOWait (USHORT) - input : Wait for access. The flag Word is defined as follows: | ;IOWait (USHORT) - input : Wait for access. The flag Word is defined as follows: | ||
::0 - Control immediately returned to requestor. | |||
::1 - Requestor waits until mouse device driver is free. | |||
==Return Code== | ==Return Code== | ||
;rc (USHORT) - return:Return code descriptions are: | |||
Return code descriptions are: | |||
* 0 NO_ERROR | * 0 NO_ERROR | ||
* 121 ERROR_SEM_TIMEOUT | *121 ERROR_SEM_TIMEOUT | ||
==Remarks== | ==Remarks== | ||
MouSynch blocks all other threads within a session until the semaphore clears (returns from the subsystem to the router). To ensure proper synchronization, MouSynch should be issued by a mouse subsystem if it intends to access dynamically modifiable shared data for each session or if it intends to issue a DosDevIOCtl. MouSynch does not protect globally shared data from threads in other sessions. | MouSynch blocks all other threads within a session until the semaphore clears (returns from the subsystem to the router). To ensure proper synchronization, MouSynch should be issued by a mouse subsystem if it intends to access dynamically modifiable shared data for each session or if it intends to issue a DosDevIOCtl. MouSynch does not protect globally shared data from threads in other sessions. | ||
== | ==Bindings== | ||
=== C | ===C=== | ||
<PRE> | <PRE> | ||
#define INCL_MOU | #define INCL_MOU | ||
USHORT rc = MouSynch(IOWait); | USHORT rc = MouSynch(IOWait); | ||
USHORT IOWait; /* Indicate wait/no wait */ | |||
USHORT | USHORT rc; /* return code */ | ||
USHORT | |||
</PRE> | </PRE> | ||
===MASM | ===MASM=== | ||
<PRE> | <PRE> | ||
EXTRN MouSynch:FAR | EXTRN MouSynch:FAR |
Latest revision as of 18:14, 14 September 2019
This call provides synchronous access for a mouse subsystem to the mouse device driver.
Syntax
MouSynch (IOWait)
Parameters
- IOWait (USHORT) - input
- Wait for access. The flag Word is defined as follows:
- 0 - Control immediately returned to requestor.
- 1 - Requestor waits until mouse device driver is free.
Return Code
- rc (USHORT) - return
- Return code descriptions are:
- 0 NO_ERROR
- 121 ERROR_SEM_TIMEOUT
Remarks
MouSynch blocks all other threads within a session until the semaphore clears (returns from the subsystem to the router). To ensure proper synchronization, MouSynch should be issued by a mouse subsystem if it intends to access dynamically modifiable shared data for each session or if it intends to issue a DosDevIOCtl. MouSynch does not protect globally shared data from threads in other sessions.
Bindings
C
#define INCL_MOU USHORT rc = MouSynch(IOWait); USHORT IOWait; /* Indicate wait/no wait */ USHORT rc; /* return code */
MASM
EXTRN MouSynch:FAR INCL_MOU EQU 1 PUSH WORD IOWait ;Indicate wait/no wait CALL MouSynch Returns WORD