Changed debugger key to Pause (was -)!!!!
If non-debug mode => pause pauses dosbox. Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@1886
This commit is contained in:
parent
a79e0bffbc
commit
94795e0fd4
5 changed files with 49 additions and 18 deletions
|
@ -16,7 +16,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
/* $Id: render.cpp,v 1.28 2004-07-04 21:18:05 harekiet Exp $ */
|
||||
/* $Id: render.cpp,v 1.29 2004-07-12 12:42:20 qbix79 Exp $ */
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <dirent.h>
|
||||
|
@ -360,17 +360,17 @@ void RENDER_SetSize(Bitu width,Bitu height,Bitu bpp,double ratio,bool dblw,bool
|
|||
RENDER_ReInit();
|
||||
}
|
||||
|
||||
extern void GFX_SetTitle(Bits cycles, Bits frameskip);
|
||||
extern void GFX_SetTitle(Bits cycles, Bits frameskip,bool paused);
|
||||
static void IncreaseFrameSkip(void) {
|
||||
if (render.frameskip.max<10) render.frameskip.max++;
|
||||
LOG_MSG("Frame Skip at %d",render.frameskip.max);
|
||||
GFX_SetTitle(-1,render.frameskip.max);
|
||||
GFX_SetTitle(-1,render.frameskip.max,false);
|
||||
}
|
||||
|
||||
static void DecreaseFrameSkip(void) {
|
||||
if (render.frameskip.max>0) render.frameskip.max--;
|
||||
LOG_MSG("Frame Skip at %d",render.frameskip.max);
|
||||
GFX_SetTitle(-1,render.frameskip.max);
|
||||
GFX_SetTitle(-1,render.frameskip.max,false);
|
||||
}
|
||||
|
||||
void RENDER_Init(Section * sec) {
|
||||
|
@ -404,6 +404,6 @@ void RENDER_Init(Section * sec) {
|
|||
}
|
||||
MAPPER_AddHandler(DecreaseFrameSkip,MK_f7,MMOD1,"decfskip","Dec Fskip");
|
||||
MAPPER_AddHandler(IncreaseFrameSkip,MK_f8,MMOD1,"incfskip","Inc Fskip");
|
||||
GFX_SetTitle(-1,render.frameskip.max);
|
||||
GFX_SetTitle(-1,render.frameskip.max,false);
|
||||
}
|
||||
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
/* $Id: sdlmain.cpp,v 1.68 2004-07-05 11:54:53 harekiet Exp $ */
|
||||
/* $Id: sdlmain.cpp,v 1.69 2004-07-12 12:42:20 qbix79 Exp $ */
|
||||
|
||||
#ifndef _GNU_SOURCE
|
||||
#define _GNU_SOURCE
|
||||
|
@ -166,16 +166,42 @@ static SDL_Block sdl;
|
|||
static void CaptureMouse(void);
|
||||
|
||||
extern char * RunningProgram;
|
||||
void GFX_SetTitle(Bits cycles,Bits frameskip){
|
||||
void GFX_SetTitle(Bits cycles,Bits frameskip,bool paused){
|
||||
char title[200]={0};
|
||||
static Bits internal_cycles=0;
|
||||
static Bits internal_frameskip=0;
|
||||
if(cycles != -1) internal_cycles = cycles;
|
||||
if(frameskip != -1) internal_frameskip = frameskip;
|
||||
sprintf(title,"DOSBox %s,Cpu Cycles: %8d, Frameskip %2d, Program: %s",VERSION,internal_cycles,internal_frameskip,RunningProgram);
|
||||
if(paused)
|
||||
sprintf(title,"DOSBox %s,Cpu Cycles: %8d, Frameskip %2d, Program: %8s PAUSED",VERSION,internal_cycles,internal_frameskip,RunningProgram);
|
||||
else
|
||||
sprintf(title,"DOSBox %s,Cpu Cycles: %8d, Frameskip %2d, Program: %8s",VERSION,internal_cycles,internal_frameskip,RunningProgram);
|
||||
SDL_WM_SetCaption(title,VERSION);
|
||||
}
|
||||
|
||||
static void PauseDOSBox(void) {
|
||||
GFX_SetTitle(-1,-1,true);
|
||||
bool paused = true;
|
||||
SDL_Delay(500);
|
||||
SDL_Event event;
|
||||
while (SDL_PollEvent(&event)) {
|
||||
// flush event queue.
|
||||
}
|
||||
while (paused) {
|
||||
SDL_WaitEvent(&event); // since we're not polling, cpu usage drops to 0.
|
||||
switch (event.type) {
|
||||
case SDL_KEYDOWN: // Must use Pause/Break Key to resume.
|
||||
case SDL_KEYUP:
|
||||
if(event.key.keysym.sym==SDLK_PAUSE){
|
||||
paused=false;
|
||||
GFX_SetTitle(-1,-1,false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Reset the screen with current values in the sdl structure */
|
||||
Bitu GFX_GetBestMode(Bitu flags) {
|
||||
Bitu testbpp,gotbpp,setflags;
|
||||
|
@ -679,6 +705,11 @@ static void GUI_StartUp(Section * sec) {
|
|||
MAPPER_AddHandler(KillSwitch,MK_f9,MMOD1,"shutdown","ShutDown");
|
||||
MAPPER_AddHandler(CaptureMouse,MK_f10,MMOD1,"capmouse","Cap Mouse");
|
||||
MAPPER_AddHandler(SwitchFullScreen,MK_return,MMOD2,"fullscr","Fullscreen");
|
||||
#if C_DEBUG
|
||||
/* Pause binds with activate-debugger */
|
||||
#else
|
||||
MAPPER_AddHandler(PauseDOSBox,MK_pause,0,"pause","Pause");
|
||||
#endif
|
||||
}
|
||||
|
||||
void Mouse_AutoLock(bool enable) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue