diff options
Diffstat (limited to 'backends/gp32')
-rw-r--r-- | backends/gp32/gp32.cpp | 172 |
1 files changed, 86 insertions, 86 deletions
diff --git a/backends/gp32/gp32.cpp b/backends/gp32/gp32.cpp index 2c266aeca4..d81fbc2b8e 100644 --- a/backends/gp32/gp32.cpp +++ b/backends/gp32/gp32.cpp @@ -873,107 +873,107 @@ bool OSystem_GP32::poll_event(Event *event) { // fixme: make more user-friendly int key; key=GpKeyGet(); - if (key == GPC_VK_NONE) { - if (lastevent==EVENT_LBUTTONDOWN) { - lastevent=0; - event->event_code = EVENT_LBUTTONUP; - return true; - } - return false; - } - - if (key == oldkey) { - eventcount--; - if (eventcount) return false; + if (key == GPC_VK_NONE) { + if (lastevent==EVENT_LBUTTONDOWN) { + lastevent=0; + event->event_code = EVENT_LBUTTONUP; + return true; } - oldkey=key; - eventcount=EVENT_COUNT; - - event->event_code = EVENT_KEYDOWN; + return false; + } - if (key & GPC_VK_FL && key & GPC_VK_FR) { // L+R = save state - printf("Saving game, please wait..."); + if (key == oldkey) { + eventcount--; + if (eventcount) return false; + } + oldkey=key; + eventcount=EVENT_COUNT; - //extern void autosave(void * engine); - //autosave(NULL); //FIXME? - do key=GpKeyGet(); while (key != GPC_VK_NONE) ; - return false; - } else + event->event_code = EVENT_KEYDOWN; - if(key & GPC_VK_FL) { // L = debug console - //GpGraphicModeSet(8, NULL); //FIXME: if 16bit? - currsurface=DEBUG_SURFACE; - GpSurfaceFlip(&gpDraw[currsurface]); - GpSetPaletteEntry ( 0, 0,0,0 ); - GpSetPaletteEntry ( 1, 255,0,0 ); - GpSetPaletteEntry ( 2, 255,255,255 ); - return false; - } else - - if (key & GPC_VK_FR) { // R = game screen - //if (_overlay_visible) GpGraphicModeSet(16, NULL); - // else GpGraphicModeSet(8, NULL); - currsurface=GAME_SURFACE; - GpSurfaceFlip(&gpDraw[currsurface]); + if (key & GPC_VK_FL && key & GPC_VK_FR) { // L+R = save state + printf("Saving game, please wait..."); - _paletteDirtyStart=0; - _paletteDirtyEnd=255; //fixme? - return false; - } + //extern void autosave(void * engine); + //autosave(NULL); //FIXME? + do key=GpKeyGet(); while (key != GPC_VK_NONE) ; + return false; + } + + if (key & GPC_VK_FL) { // L = debug console + //GpGraphicModeSet(8, NULL); //FIXME: if 16bit? + currsurface=DEBUG_SURFACE; + GpSurfaceFlip(&gpDraw[currsurface]); + GpSetPaletteEntry ( 0, 0,0,0 ); + GpSetPaletteEntry ( 1, 255,0,0 ); + GpSetPaletteEntry ( 2, 255,255,255 ); + return false; + } + + if (key & GPC_VK_FR) { // R = game screen + //if (_overlay_visible) GpGraphicModeSet(16, NULL); + // else GpGraphicModeSet(8, NULL); + currsurface=GAME_SURFACE; + GpSurfaceFlip(&gpDraw[currsurface]); - if(key & GPC_VK_START) { // START = menu - event->kbd.keycode = 319; - event->kbd.ascii = 319; - return true; - } + _paletteDirtyStart=0; + _paletteDirtyEnd=255; //fixme? + return false; + } - if(key & GPC_VK_SELECT) { // SELECT == escape/skip - if (_overlay_visible) - do key=GpKeyGet(); while (key != GPC_VK_NONE) ; // prevent 2xESC - event->kbd.keycode = 27; - event->kbd.ascii = 27; - return true; - } + if (key & GPC_VK_START) { // START = menu + event->kbd.keycode = 319; + event->kbd.ascii = 319; + return true; + } - if (key & GPC_VK_FA) { - lastevent=EVENT_LBUTTONDOWN; - event->event_code = EVENT_LBUTTONDOWN; - return true; - } - if (key & GPC_VK_FB) { - lastevent=EVENT_RBUTTONDOWN; - event->event_code = EVENT_RBUTTONDOWN; - return true; - } + if (key & GPC_VK_SELECT) { // SELECT == escape/skip + if (_overlay_visible) + do key=GpKeyGet(); while (key != GPC_VK_NONE) ; // prevent 2xESC + event->kbd.keycode = 27; + event->kbd.ascii = 27; + return true; + } + + if (key & GPC_VK_FA) { + lastevent=EVENT_LBUTTONDOWN; + event->event_code = EVENT_LBUTTONDOWN; + return true; + } + if (key & GPC_VK_FB) { + lastevent=EVENT_RBUTTONDOWN; + event->event_code = EVENT_RBUTTONDOWN; + return true; + } - event->event_code = EVENT_MOUSEMOVE; + if(key & GPC_VK_LEFT) { + mx-=MOUSE_MIPS; + if (mx<1) mx=1; // wrong if 0? + } - if(key & GPC_VK_LEFT) { - mx-=MOUSE_MIPS; - if (mx<1) mx=1; // wrong if 0? - } + if(key & GPC_VK_RIGHT) { + mx+=MOUSE_MIPS; + if (mx>319) mx=319; + } - if(key & GPC_VK_RIGHT) { - mx+=MOUSE_MIPS; - if (mx>319) mx=319; - } + if(key & GPC_VK_UP) { + my-=MOUSE_MIPS; + if (my<1) my=1; // wrong if 0? + } - if(key & GPC_VK_UP) { - my-=MOUSE_MIPS; - if (my<1) my=1; // wrong if 0? - } + if(key & GPC_VK_DOWN) { + my+=MOUSE_MIPS; + if (my>199) my=199; + } - if(key & GPC_VK_DOWN) { - my+=MOUSE_MIPS; - if (my>199) my=199; - } + event->event_code = EVENT_MOUSEMOVE; + km.x = event->mouse.x = mx; + km.y = event->mouse.y = my; - event->event_code = EVENT_MOUSEMOVE; - km.x = event->mouse.x = mx; - km.y = event->mouse.y = my; + event->mouse.x /= _scaleFactor; + event->mouse.y /= _scaleFactor; - event->mouse.x /= _scaleFactor; - event->mouse.y /= _scaleFactor; + set_mouse_pos(event->mouse.x, event->mouse.y); } // Set the function to be invoked whenever samples need to be generated |