Ejemplo n.º 1
0
debug_view_expression::debug_view_expression(running_machine &machine)
	: m_machine(machine)
	, m_dirty(true)
	, m_result(0)
	, m_parsed(machine.debugger().cpu().get_global_symtable())
	, m_string("0")
{
}
Ejemplo n.º 2
0
cheat_manager::cheat_manager(running_machine &machine)
	: m_machine(machine),
		m_disabled(true),
		m_symtable(&machine)
{
	// if the cheat engine is disabled, we're done
	if (!machine.options().cheat())
		return;

	m_output.resize(UI_TARGET_FONT_ROWS*2);
	m_justify.resize(UI_TARGET_FONT_ROWS*2);

	// request a callback
	machine.add_notifier(MACHINE_NOTIFY_FRAME, machine_notify_delegate(&cheat_manager::frame_update, this));

	// create a global symbol table
	m_symtable.add("frame", symbol_table::READ_ONLY, &m_framecount);
	m_symtable.add("frombcd", nullptr, 1, 1, execute_frombcd);
	m_symtable.add("tobcd", nullptr, 1, 1, execute_tobcd);

	// we rely on the debugger expression callbacks; if the debugger isn't
	// enabled, we must jumpstart them manually
	if ((machine.debug_flags & DEBUG_FLAG_ENABLED) == 0)
	{
		m_cpu = std::make_unique<debugger_cpu>(machine);
		m_cpu->configure_memory(m_symtable);
	}
	else
	{
		// configure for memory access (shared with debugger)
		machine.debugger().cpu().configure_memory(m_symtable);
	}

	// load the cheats
	reload();
}
Ejemplo n.º 3
0
debug_view_console::debug_view_console(running_machine &machine, debug_view_osd_update_func osdupdate, void *osdprivate)
	: debug_view_textbuf(machine, DVT_CONSOLE, osdupdate, osdprivate, *machine.debugger().console().get_console_textbuf())
{
}
Ejemplo n.º 4
0
debug_view_log::debug_view_log(running_machine &machine, debug_view_osd_update_func osdupdate, void *osdprivate)
	: debug_view_textbuf(machine, DVT_LOG, osdupdate, osdprivate, *machine.debugger().console().get_errorlog_textbuf())
{
}
Ejemplo n.º 5
0
void debug_none::wait_for_debugger(device_t &device, bool firststop)
{
	m_machine->debugger().cpu().get_visible_cpu()->debug()->go();
}