mirror of https://github.com/stella-emu/stella.git
Added the following pseudo-registers to the debugger:
_fcount : current frame count _cclocks : frame color clocks _vsync : whether vsync is currently on (0 or 1) _vblank : whether vblank is currently on (0 or 1) Fixed issue with breakpoints starting the debugger causing a crash. git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1614 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
This commit is contained in:
parent
7800ae585d
commit
b8320c2785
|
@ -13,7 +13,7 @@
|
||||||
// See the file "license" for information on usage and redistribution of
|
// See the file "license" for information on usage and redistribution of
|
||||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||||
//
|
//
|
||||||
// $Id: TIADebug.hxx,v 1.24 2009-01-01 18:13:35 stephena Exp $
|
// $Id: TIADebug.hxx,v 1.25 2009-01-12 15:11:54 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#ifndef TIA_DEBUG_HXX
|
#ifndef TIA_DEBUG_HXX
|
||||||
|
@ -205,6 +205,8 @@ class TIADebug : public DebuggerSystem
|
||||||
int clocksThisLine();
|
int clocksThisLine();
|
||||||
bool vsync();
|
bool vsync();
|
||||||
bool vblank();
|
bool vblank();
|
||||||
|
int vsyncAsInt() { return int(vsync()); } // so we can use _vsync pseudo-register
|
||||||
|
int vblankAsInt() { return int(vblank()); } // so we can use _vblank pseudo-register
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/** Display a color patch for color at given index in the palette */
|
/** Display a color patch for color at given index in the palette */
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
// See the file "license" for information on usage and redistribution of
|
// See the file "license" for information on usage and redistribution of
|
||||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||||
//
|
//
|
||||||
// $Id: FrameBuffer.cxx,v 1.157 2009-01-10 18:52:55 stephena Exp $
|
// $Id: FrameBuffer.cxx,v 1.158 2009-01-12 15:11:55 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
|
@ -158,7 +158,12 @@ void FrameBuffer::update()
|
||||||
case EventHandler::S_EMULATE:
|
case EventHandler::S_EMULATE:
|
||||||
{
|
{
|
||||||
// Run the console for one frame
|
// Run the console for one frame
|
||||||
|
// Note that the debugger can cause a breakpoint to occur, which changes
|
||||||
|
// the EventHandler state 'behind our back' - we need to check for that
|
||||||
myOSystem->console().mediaSource().update();
|
myOSystem->console().mediaSource().update();
|
||||||
|
#ifdef DEBUGGER_SUPPORT
|
||||||
|
if(myOSystem->eventHandler().state() != EventHandler::S_EMULATE) break;
|
||||||
|
#endif
|
||||||
if(myOSystem->eventHandler().frying())
|
if(myOSystem->eventHandler().frying())
|
||||||
myOSystem->console().fry();
|
myOSystem->console().fry();
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
// See the file "license" for information on usage and redistribution of
|
// See the file "license" for information on usage and redistribution of
|
||||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||||
//
|
//
|
||||||
// $Id: YaccParser.cxx,v 1.25 2009-01-01 18:13:40 stephena Exp $
|
// $Id: YaccParser.cxx,v 1.26 2009-01-12 15:11:55 stephena Exp $
|
||||||
//
|
//
|
||||||
// Based on code from ScummVM - Scumm Interpreter
|
// Based on code from ScummVM - Scumm Interpreter
|
||||||
// Copyright (C) 2002-2004 The ScummVM project
|
// Copyright (C) 2002-2004 The ScummVM project
|
||||||
|
@ -214,6 +214,18 @@ TIADEBUG_INT_METHOD getTiaSpecial(char *c) {
|
||||||
if(strcmp(c, "_scan") == 0)
|
if(strcmp(c, "_scan") == 0)
|
||||||
return &TIADebug::scanlines;
|
return &TIADebug::scanlines;
|
||||||
|
|
||||||
|
if(strcmp(c, "_fcount") == 0)
|
||||||
|
return &TIADebug::frameCount;
|
||||||
|
|
||||||
|
if(strcmp(c, "_cclocks") == 0)
|
||||||
|
return &TIADebug::clocksThisLine;
|
||||||
|
|
||||||
|
if(strcmp(c, "_vsync") == 0)
|
||||||
|
return &TIADebug::vsyncAsInt;
|
||||||
|
|
||||||
|
if(strcmp(c, "_vblank") == 0)
|
||||||
|
return &TIADebug::vblankAsInt;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue