nes/examples/sdl/SdlKeyboardController.cpp
2025-09-09 00:24:39 +03:00

20 lines
605 B
C++

//
// Created by selim on 9/17/23.
//
#include "SdlKeyboardController.h"
#include <SDL3/SDL.h>
void SdlKeyboardController::poll() {
auto state = SDL_GetKeyboardState(nullptr);
_data = 0;
_data |= state[SDL_SCANCODE_Z] << Key::A;
_data |= state[SDL_SCANCODE_X] << Key::B;
_data |= state[SDL_SCANCODE_TAB] << Key::Select;
_data |= state[SDL_SCANCODE_RETURN] << Key::Start;
_data |= state[SDL_SCANCODE_UP] << Key::Up;
_data |= state[SDL_SCANCODE_DOWN] << Key::Down;
_data |= state[SDL_SCANCODE_LEFT] << Key::Left;
_data |= state[SDL_SCANCODE_RIGHT] << Key::Right;
}