mirror of
https://github.com/blawar/GLideN64.git
synced 2024-06-25 22:09:35 +00:00
Add config option for debug dump.
This commit is contained in:
parent
c907c3013a
commit
2f88a695a6
|
@ -115,4 +115,6 @@ void Config::resetToDefaults()
|
|||
onScreenDisplay.fps = 0;
|
||||
onScreenDisplay.percent = 0;
|
||||
onScreenDisplay.pos = posBottomLeft;
|
||||
|
||||
debug.dumpMode = 0;
|
||||
}
|
||||
|
|
|
@ -173,6 +173,10 @@ struct Config
|
|||
u32 pos;
|
||||
} onScreenDisplay;
|
||||
|
||||
struct {
|
||||
u32 dumpMode;
|
||||
} debug;
|
||||
|
||||
void resetToDefaults();
|
||||
};
|
||||
|
||||
|
|
|
@ -103,6 +103,9 @@ void EndDump()
|
|||
|
||||
void SwitchDump(u32 _mode)
|
||||
{
|
||||
if (_mode == 0)
|
||||
return;
|
||||
|
||||
if (!g_log)
|
||||
StartDump(_mode);
|
||||
else
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
#include <QRegExpValidator>
|
||||
|
||||
#include "../Config.h"
|
||||
#include "../DebugDump.h"
|
||||
#include "ui_configDialog.h"
|
||||
#include "Settings.h"
|
||||
#include "ConfigDialog.h"
|
||||
|
@ -288,6 +289,19 @@ void ConfigDialog::_init()
|
|||
ui->buttonBox->button(QDialogButtonBox::Ok)->setText(tr("OK"));
|
||||
ui->buttonBox->button(QDialogButtonBox::Cancel)->setText(tr("Cancel"));
|
||||
ui->buttonBox->button(QDialogButtonBox::RestoreDefaults)->setText(tr("Restore Defaults"));
|
||||
|
||||
ui->dumpLowCheckBox->setChecked((config.debug.dumpMode & DEBUG_LOW) != 0);
|
||||
ui->dumpNormalCheckBox->setChecked((config.debug.dumpMode & DEBUG_NORMAL) != 0);
|
||||
ui->dumpDetailCheckBox->setChecked((config.debug.dumpMode & DEBUG_DETAIL) != 0);
|
||||
|
||||
#ifndef DEBUG_DUMP
|
||||
for (int i = 0; i < ui->tabWidget->count(); ++i) {
|
||||
if ("Debug" == ui->tabWidget->tabText(i)) {
|
||||
ui->tabWidget->removeTab(i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void ConfigDialog::_getTranslations(QStringList & _translationFiles) const
|
||||
|
@ -502,6 +516,14 @@ void ConfigDialog::accept()
|
|||
config.onScreenDisplay.vis = ui->visCheckBox->isChecked() ? 1 : 0;
|
||||
config.onScreenDisplay.percent = ui->percentCheckBox->isChecked() ? 1 : 0;
|
||||
|
||||
config.debug.dumpMode = 0;
|
||||
if (ui->dumpLowCheckBox->isChecked())
|
||||
config.debug.dumpMode |= DEBUG_LOW;
|
||||
if (ui->dumpNormalCheckBox->isChecked())
|
||||
config.debug.dumpMode |= DEBUG_NORMAL;
|
||||
if (ui->dumpDetailCheckBox->isChecked())
|
||||
config.debug.dumpMode |= DEBUG_DETAIL;
|
||||
|
||||
writeSettings(m_strIniPath);
|
||||
|
||||
QDialog::accept();
|
||||
|
|
|
@ -116,6 +116,10 @@ void _loadSettings(QSettings & settings)
|
|||
config.onScreenDisplay.percent = settings.value("showPercent", config.onScreenDisplay.percent).toInt();
|
||||
config.onScreenDisplay.pos = settings.value("osdPos", config.onScreenDisplay.pos).toInt();
|
||||
settings.endGroup();
|
||||
|
||||
settings.beginGroup("debug");
|
||||
config.debug.dumpMode = settings.value("dumpMode", config.debug.dumpMode).toInt();
|
||||
settings.endGroup();
|
||||
}
|
||||
|
||||
void loadSettings(const QString & _strIniFolder)
|
||||
|
@ -232,6 +236,10 @@ void writeSettings(const QString & _strIniFolder)
|
|||
settings.setValue("showPercent", config.onScreenDisplay.percent);
|
||||
settings.setValue("osdPos", config.onScreenDisplay.pos);
|
||||
settings.endGroup();
|
||||
|
||||
settings.beginGroup("debug");
|
||||
settings.setValue("dumpMode", config.debug.dumpMode);
|
||||
settings.endGroup();
|
||||
}
|
||||
|
||||
static
|
||||
|
|
|
@ -3729,6 +3729,51 @@
|
|||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="debugTab">
|
||||
<attribute name="title">
|
||||
<string>Debug</string>
|
||||
</attribute>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_36">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_31">
|
||||
<item>
|
||||
<widget class="QCheckBox" name="dumpLowCheckBox">
|
||||
<property name="text">
|
||||
<string>dump low-level info</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="dumpNormalCheckBox">
|
||||
<property name="text">
|
||||
<string>dump display list commands</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="dumpDetailCheckBox">
|
||||
<property name="text">
|
||||
<string>dump detailed info (matrices, vertices and so on).</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_10">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
|
|
|
@ -119,7 +119,7 @@ void VI_UpdateScreen()
|
|||
g_debugger.checkDebugState();
|
||||
|
||||
if (isKeyPressed(G64_VK_G, 0x0001)) {
|
||||
SwitchDump(DEBUG_LOW|DEBUG_NORMAL);
|
||||
SwitchDump(config.debug.dumpMode);
|
||||
}
|
||||
|
||||
bool bVIUpdated = false;
|
||||
|
|
|
@ -185,6 +185,12 @@ bool Config_SetDefault()
|
|||
"Counters position (1=top left, 2=top center, 4=top right, 8=bottom left, 16=bottom center, 32=bottom right)");
|
||||
assert(res == M64ERR_SUCCESS);
|
||||
|
||||
#ifdef DEBUG_DUMP
|
||||
//#Debug settings
|
||||
res = ConfigSetDefaultInt(g_configVideoGliden64, "DebugDumpMode", config.debug.dumpMode, "Enable debug dump. Set 3 to normal or 7 to detailed dump.");
|
||||
assert(res == M64ERR_SUCCESS);
|
||||
#endif
|
||||
|
||||
return ConfigSaveSection("Video-GLideN64") == M64ERR_SUCCESS;
|
||||
}
|
||||
|
||||
|
@ -417,6 +423,10 @@ void Config_LoadConfig()
|
|||
config.onScreenDisplay.percent = ConfigGetParamBool(g_configVideoGliden64, "ShowPercent");
|
||||
config.onScreenDisplay.pos = ConfigGetParamInt(g_configVideoGliden64, "CountersPos");
|
||||
|
||||
#ifdef DEBUG_DUMP
|
||||
config.debug.dumpMode = ConfigGetParamInt(g_configVideoGliden64, "DebugDumpMode");
|
||||
#endif
|
||||
|
||||
if (config.generalEmulation.enableCustomSettings)
|
||||
Config_LoadCustomConfig();
|
||||
config.generalEmulation.hacks = hacks;
|
||||
|
|
Loading…
Reference in New Issue
Block a user