From d46f9f45657dee9dc0277e5470fcf7e8bb3eb3e7 Mon Sep 17 00:00:00 2001 From: Fenrir Date: Tue, 6 Feb 2018 23:45:56 -0700 Subject: [PATCH] Update examples --- examples/src/bin/buttons.rs | 3 ++- examples/src/bin/hello-both-screens.rs | 3 ++- examples/src/bin/hello-world.rs | 10 +++++++--- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/examples/src/bin/buttons.rs b/examples/src/bin/buttons.rs index b906e59..6395620 100644 --- a/examples/src/bin/buttons.rs +++ b/examples/src/bin/buttons.rs @@ -9,7 +9,7 @@ fn main() { // Setup services let apt = Apt::init().unwrap(); let hid = Hid::init().unwrap(); - let mut gfx = Gfx::default(); + let gfx = Gfx::default(); let console = Console::default(); println!("Hi there! Try pressing a button"); @@ -71,5 +71,6 @@ fn main() { // Flush and swap framebuffers gfx.flush_buffers(); gfx.swap_buffers(); + gfx.wait_for_vblank(); } } diff --git a/examples/src/bin/hello-both-screens.rs b/examples/src/bin/hello-both-screens.rs index 1c214e9..33229ea 100644 --- a/examples/src/bin/hello-both-screens.rs +++ b/examples/src/bin/hello-both-screens.rs @@ -9,7 +9,7 @@ fn main() { // Initialize services let apt = Apt::init().unwrap(); let hid = Hid::init().unwrap(); - let mut gfx = Gfx::default(); + let gfx = Gfx::default(); // Start a console on the top screen let top_screen = Console::init(Screen::Top); @@ -33,6 +33,7 @@ fn main() { while apt.main_loop() { gfx.flush_buffers(); gfx.swap_buffers(); + gfx.wait_for_vblank(); hid.scan_input(); if hid.keys_down().contains(KeyPad::KEY_START) { diff --git a/examples/src/bin/hello-world.rs b/examples/src/bin/hello-world.rs index fa70c1d..73afa22 100644 --- a/examples/src/bin/hello-world.rs +++ b/examples/src/bin/hello-world.rs @@ -10,15 +10,15 @@ fn main() { // Service handles are internally reference-counted. When all instances of a // service handle go out of scope, the service will be closed. - // The APT service handles application management functions, such as - // syncing our main loop with the graphics hardware. + // The APT service handles application management functions, such as enabling sleep + // mode and jumping to the home menu or to other applications let apt = Apt::init().unwrap(); // The HID service handles button and touch screen inputs. let hid = Hid::init().unwrap(); // The GFX service manages the framebuffers for the top and bottom screens. - let mut gfx = Gfx::default(); + let gfx = Gfx::default(); // Initialize a ctrulib console and direct standard output to it. // Consoles can be initialized on both the top and bottom screens. @@ -41,8 +41,12 @@ fn main() { gfx.flush_buffers(); gfx.swap_buffers(); + // Wait for the next frame to begin + gfx.wait_for_vblank(); + // Scan for user input. hid.scan_input(); + // Check if the user has pressed the given button on this frame. // If so, break out of the loop. if hid.keys_down().contains(KeyPad::KEY_START) {