wait_vbl

Function wait_vbl 

Source
pub fn wait_vbl()
Expand description

Calls waitvbl, which waits for a vertical blanking signal.

This should usually be called once per frame.

Examples found in repository?
examples/keyboard.rs (line 15)
8pub extern "C" fn dosmain() -> i32 {
9    goto_xy(2, 2);
10    put_str("KEYBOARD DEMO");
11    goto_xy(0, 16);
12    put_str("ESC - quit");
13    curs_off();
14    while !shutting_down() {
15        wait_vbl();
16        let keys = read_keys();
17
18        if !keys.is_empty() {
19            goto_xy(5, 5);
20            dos_like::text_color(3);
21            put_str("!");
22            dos_like::text_color(7);
23
24            for (i, key) in keys.iter().enumerate() {
25                goto_xy(2, 8 + i as u16);
26                put_str("                  ");
27                goto_xy(2, 8 + i as u16);
28                if key.is_pressed() {
29                    put_str(format!("{:?} pressed             ", key.key_code()));
30                } else {
31                    put_str(format!("{:?} released            ", key.key_code()));
32                }
33            }
34            for i in keys.len()..8 {
35                goto_xy(2, 8 + i as u16);
36                put_str("                              ");
37            }
38        } else {
39            goto_xy(5, 5);
40            put_str(" ");
41        }
42
43        if key_state(KeyCode::KEY_ESCAPE) {
44            break;
45        }
46    }
47    0
48}