From 7d783baa3d45e3350fdd356ec85684442920269c Mon Sep 17 00:00:00 2001 From: Alan Steremberg Date: Sat, 3 Jul 2021 15:37:10 -0400 Subject: [PATCH 1/2] fixes for mac / linux --- verilator/sim/sim_input.cpp | 4 ++-- verilator/sim_main.cpp | 15 ++++++++------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/verilator/sim/sim_input.cpp b/verilator/sim/sim_input.cpp index 313777a..8165aeb 100644 --- a/verilator/sim/sim_input.cpp +++ b/verilator/sim/sim_input.cpp @@ -507,11 +507,11 @@ static const int ev2ps2[] = NONE, //222 NONE, //223 NONE, //224 - LSHIFT | 0x12, //225 KEY_LEFTSHIFT + 0x2A, //LSHIFT | 0x12, //225 KEY_LEFTSHIFT LALT | 0x11, //226 KEY_LEFTALT NONE, //227 RCTRL | EXT | 0x14, //228 KEY_RIGHTCTRL - RSHIFT | 0x59, //229 KEY_RIGHTSHIFT + 0x36, //RSHIFT | 0x59, //229 KEY_RIGHTSHIFT RALT | EXT | 0x11, //230 KEY_RIGHTALT }; diff --git a/verilator/sim_main.cpp b/verilator/sim_main.cpp index 6bad272..9c17ea5 100644 --- a/verilator/sim_main.cpp +++ b/verilator/sim_main.cpp @@ -173,13 +173,14 @@ int main(int argc, char** argv, char** env) { input.SetMapping(input_right, SDL_SCANCODE_RIGHT); input.SetMapping(input_down, SDL_SCANCODE_DOWN); input.SetMapping(input_left, SDL_SCANCODE_LEFT); - input.SetMapping(input_fire1, SDL_SCANCODE_SPACE); - input.SetMapping(input_start_1, SDL_SCANCODE_1); - input.SetMapping(input_start_2, SDL_SCANCODE_2); - input.SetMapping(input_coin_1, SDL_SCANCODE_3); - input.SetMapping(input_coin_2, SDL_SCANCODE_4); - input.SetMapping(input_coin_3, SDL_SCANCODE_5); - input.SetMapping(input_pause, SDL_SCANCODE_P); + input.SetMapping(input_a, SDL_SCANCODE_A); + input.SetMapping(input_b, SDL_SCANCODE_B); + input.SetMapping(input_x, SDL_SCANCODE_X); + input.SetMapping(input_y, SDL_SCANCODE_Y); + input.SetMapping(input_l, SDL_SCANCODE_L); + input.SetMapping(input_r, SDL_SCANCODE_R); + input.SetMapping(input_select, SDL_SCANCODE_1); + input.SetMapping(input_start, SDL_SCANCODE_2); #endif // Setup video output if (video.Initialise(windowTitle) == 1) { return 1; } From 80deaf38af10b087ac575ccf39293522ea9c63f4 Mon Sep 17 00:00:00 2001 From: Alan Steremberg Date: Sat, 3 Jul 2021 16:11:29 -0400 Subject: [PATCH 2/2] mac fixes --- verilator/sim/sim_input.cpp | 10 +++++----- verilator/sim/sim_input.h | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/verilator/sim/sim_input.cpp b/verilator/sim/sim_input.cpp index 8165aeb..fc9262c 100644 --- a/verilator/sim/sim_input.cpp +++ b/verilator/sim/sim_input.cpp @@ -507,11 +507,11 @@ static const int ev2ps2[] = NONE, //222 NONE, //223 NONE, //224 - 0x2A, //LSHIFT | 0x12, //225 KEY_LEFTSHIFT + LSHIFT | 0x12, //225 KEY_LEFTSHIFT LALT | 0x11, //226 KEY_LEFTALT NONE, //227 RCTRL | EXT | 0x14, //228 KEY_RIGHTCTRL - 0x36, //RSHIFT | 0x59, //229 KEY_RIGHTSHIFT + RSHIFT | 0x59, //229 KEY_RIGHTSHIFT RALT | EXT | 0x11, //230 KEY_RIGHTALT }; @@ -533,7 +533,7 @@ bool ReadKeyboard() #else m_keyboardState = SDL_GetKeyboardState(&m_keyboardStateCount); if (!m_keyboardState_last) m_keyboardState_last = (Uint8 *)calloc(m_keyboardStateCount,sizeof(Uint8)); - //fprintf(stderr,"count: %d\n",m_keyboardStateCount); + ////fprintf(stderr,"count: %d\n",m_keyboardStateCount); #endif return true; @@ -615,7 +615,7 @@ void SimInput::CleanUp() { #endif } -unsigned ps2_key_temp; +unsigned int ps2_key_temp; bool ps2_clock = 0; void SimInput::BeforeEval() @@ -625,7 +625,7 @@ void SimInput::BeforeEval() if (keyEvents.size() > 0) { // Get chunk from queue SimInput_PS2KeyEvent evt = keyEvents.front(); -//fprintf(stderr,"evt = %x\n",evt); +//fprintf(stderr,"evt = %x\n",evt.code); keyEvents.pop(); ps2_key_temp = ev2ps2[evt.code]; diff --git a/verilator/sim/sim_input.h b/verilator/sim/sim_input.h index 9ce505a..484433c 100644 --- a/verilator/sim/sim_input.h +++ b/verilator/sim/sim_input.h @@ -12,11 +12,11 @@ struct SimInput_PS2KeyEvent { public: - char code; + unsigned char code; bool pressed; bool extended; - SimInput_PS2KeyEvent(char code, bool pressed, bool extended) { + SimInput_PS2KeyEvent(unsigned char code, bool pressed, bool extended) { this->code = code; this->pressed = pressed; this->extended = extended;