From ef79bbde537d6b9c745a7d86cb9df1d04c35590d Mon Sep 17 00:00:00 2001 From: PCSX* teams Date: Tue, 16 Nov 2010 14:15:22 +0200 Subject: pcsxr-1.9.92 --- plugins/dfxvideo/key.c | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 plugins/dfxvideo/key.c (limited to 'plugins/dfxvideo/key.c') diff --git a/plugins/dfxvideo/key.c b/plugins/dfxvideo/key.c new file mode 100644 index 0000000..061bc0c --- /dev/null +++ b/plugins/dfxvideo/key.c @@ -0,0 +1,95 @@ +/*************************************************************************** + key.c - description + ------------------- + begin : Sun Oct 28 2001 + copyright : (C) 2001 by Pete Bernert + email : BlackDove@addcom.de + ***************************************************************************/ +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. See also the license.txt file for * + * additional informations. * + * * + ***************************************************************************/ + +#define _IN_KEY + +#include "externals.h" +#include "menu.h" +#include "gpu.h" +#include "draw.h" +#include "key.h" + +#define VK_INSERT 65379 +#define VK_HOME 65360 +#define VK_PRIOR 65365 +#define VK_NEXT 65366 +#define VK_END 65367 +#define VK_DEL 65535 +#define VK_F5 65474 + +void GPUmakeSnapshot(void); + +unsigned long ulKeybits=0; + +void GPUkeypressed(int keycode) +{ + switch(keycode) + { + case 0xFFC9: //X11 key: F12 + case ((1<<29) | 0xFF0D): //special keycode from pcsx-df: alt-enter + bChangeWinMode=TRUE; + break; + case VK_F5: + GPUmakeSnapshot(); + break; + + case VK_INSERT: + if(iUseFixes) {iUseFixes=0;dwActFixes=0;} + else {iUseFixes=1;dwActFixes=dwCfgFixes;} + SetFixes(); + if(iFrameLimit==2) SetAutoFrameCap(); + break; + + case VK_DEL: + if(ulKeybits&KEY_SHOWFPS) + { + ulKeybits&=~KEY_SHOWFPS; + DoClearScreenBuffer(); + } + else + { + ulKeybits|=KEY_SHOWFPS; + szDispBuf[0]=0; + BuildDispMenu(0); + } + break; + + case VK_PRIOR: BuildDispMenu(-1); break; + case VK_NEXT: BuildDispMenu( 1); break; + case VK_END: SwitchDispMenu(1); break; + case VK_HOME: SwitchDispMenu(-1); break; + case 0x60: + { + iFastFwd = 1 - iFastFwd; + bSkipNextFrame = FALSE; + UseFrameSkip = iFastFwd; + BuildDispMenu(0); + break; + } +#ifdef _MACGL + default: { void HandleKey(int keycode); HandleKey(keycode); } +#endif + } +} + +void SetKeyHandler(void) +{ +} + +void ReleaseKeyHandler(void) +{ +} -- cgit v1.2.3