1
1
Fork 0
mirror of https://github.com/QB64Official/qb64.git synced 2024-09-16 03:54:01 +00:00
qb64/internal/help/WAIT.txt
Luke Ceddia b586eafd3b Integrated _BLINEINPUT into regular LINE INPUT for BINARY files
LINE INPUT will now use the faster method if passed a file handle
that has been opened FOR BINARY. As such, the _BLINEINPUT command
has been removed.

qb64.bas now takes advantage of this for reading from '$include files,
at least in Include Manager 1. Some tweaking of internal/source/main.txt
was required to get things into a sane state, so I'm holing off changing
the compiler any further so the auto-builder can make sure everything's
smoothed over.

Note: Everything should still compile as normal; I'm just being overcautious.
2014-07-27 00:06:17 +10:00

31 lines
No EOL
1.2 KiB
Text

The {{KW|WAIT}} statement waits until the value read from an I/O port has certain bits set.
{{PageSyntax}}
:{{KW|WAIT}} {{Parameter|port%}}, {{Parameter|andMask%}}[, {{Parameter|xorMask%}}]
{{PageDescription}}
* The {{KW|WAIT}} statement reads a value from {{Parameter|port%}} using {{KW|INP}}.
* If {{Parameter|xorMask%}} is specified, the value is {{KW|XOR}}'d with {{Parameter|xorMask%}}. It has the effect of "toggle these bits".
* The value is then {{KW|AND}}'d with {{Parameter|andMask%}}. It has the effect of "check if these bits are set".
* If the final value is non-zero, {{KW|WAIT}} returns. Otherwise, another value is read from {{Parameter|port%}} and checked again.
* The {{KW|WAIT}} statement returns immediately if {{Parameter|port%}} is not supported.
{{PageExamples}}
:Waiting for vertical retrace
{{CodeStart}}' 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
{{CodeEnd}}
{{PageSeeAlso}}
* {{KW|INP}}, {{KW|OUT}}
* [[Scancodes]]
{{PageNavigation}}