mirror of
https://github.com/QB64Official/qb64.git
synced 2024-09-28 11:17:47 +00:00
32 lines
965 B
Markdown
32 lines
965 B
Markdown
The WAIT statement waits until the value read from an I/O port has certain bits set.
|
|
|
|
## Syntax
|
|
|
|
> WAIT port%, andMask%[, xorMask%]
|
|
|
|
## Description
|
|
|
|
* The WAIT statement reads a value from port% using INP.
|
|
* If xorMask% is specified, the value is XOR'd with xorMask%. It has the effect of "toggle these bits".
|
|
* The value is then AND'd with andMask%. It has the effect of "check if these bits are set".
|
|
* If the final value is non-zero, WAIT returns. Otherwise, another value is read from port% and checked again.
|
|
* The WAIT statement returns immediately if port% is not supported.
|
|
|
|
## Example(s)
|
|
|
|
> Waiting for vertical retrace
|
|
|
|
```vb
|
|
|
|
' Either statement can be used to try to reduce screen flickering.
|
|
' If both statements are used, try changing the order.
|
|
|
|
WAIT &H3DA, 8 ' finishes whenever the screen isn't being written to
|
|
WAIT &H3DA, 8, 8 ' finishes whenever the screen is being written to
|
|
|
|
```
|
|
|
|
## See Also
|
|
|
|
* [INP](INP), [OUT](OUT)
|
|
* [Scancodes](Scancodes)
|