chore: enable/disable gamepad input at compile time

This commit is contained in:
Rekai Nyangadzayi Musuka 2021-07-11 15:45:37 -05:00
parent db421c58f8
commit 45dc27301c
1 changed files with 6 additions and 4 deletions

View File

@ -11,6 +11,7 @@ pub const SM83_CYCLE_TIME: Duration = Duration::from_nanos(1_000_000_000 / SM83_
pub const CYCLES_IN_FRAME: Cycle = Cycle::new(456 * 154); // 456 Cycles times 154 scanlines pub const CYCLES_IN_FRAME: Cycle = Cycle::new(456 * 154); // 456 Cycles times 154 scanlines
pub(crate) const SM83_CLOCK_SPEED: u64 = 0x40_0000; // Hz which is 4.194304Mhz pub(crate) const SM83_CLOCK_SPEED: u64 = 0x40_0000; // Hz which is 4.194304Mhz
const DEFAULT_TITLE: &str = "DMG-01 Emulator"; const DEFAULT_TITLE: &str = "DMG-01 Emulator";
const GAMEPAD_ENABLED: bool = false;
pub fn init(boot_path: Option<&str>, rom_path: &str) -> Result<SM83> { pub fn init(boot_path: Option<&str>, rom_path: &str) -> Result<SM83> {
let mut cpu = match boot_path { let mut cpu = match boot_path {
@ -44,12 +45,13 @@ pub fn run(
} }
pub fn run_unsynced(game_boy: &mut SM83, gamepad: &mut Gilrs, input: &WinitInputHelper) -> Cycle { pub fn run_unsynced(game_boy: &mut SM83, gamepad: &mut Gilrs, input: &WinitInputHelper) -> Cycle {
if let Some(event) = gamepad.next_event() { if GAMEPAD_ENABLED {
joypad::handle_gamepad_input(game_boy.joypad_mut(), event); if let Some(event) = gamepad.next_event() {
} else { joypad::handle_gamepad_input(game_boy.joypad_mut(), event);
joypad::handle_keyboard_input(game_boy.joypad_mut(), input); }
} }
joypad::handle_keyboard_input(game_boy.joypad_mut(), input);
game_boy.step() game_boy.step()
} }