diff options
| author | 2014-07-22 12:41:16 +0200 | |
|---|---|---|
| committer | 2014-07-23 00:44:31 +0200 | |
| commit | 9b0d0c81a006ebd9e054758bc2c973d67650ca70 (patch) | |
| tree | c0827e78475e98070c42732328cab30480122d2e /src/citra_qt/debugger/graphics.cpp | |
| parent | RegisterSet: Simplify code by using structs for register definition instead o... (diff) | |
| download | yuzu-9b0d0c81a006ebd9e054758bc2c973d67650ca70.tar.gz yuzu-9b0d0c81a006ebd9e054758bc2c973d67650ca70.tar.xz yuzu-9b0d0c81a006ebd9e054758bc2c973d67650ca70.zip | |
GSP: Clean up GX command processing a lot and treat command id as a u8 rather than a u32.
Anonymous structs are not standard C++, hence don't use them.
Diffstat (limited to 'src/citra_qt/debugger/graphics.cpp')
| -rw-r--r-- | src/citra_qt/debugger/graphics.cpp | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/src/citra_qt/debugger/graphics.cpp b/src/citra_qt/debugger/graphics.cpp index 9aaade8f9..0f911a015 100644 --- a/src/citra_qt/debugger/graphics.cpp +++ b/src/citra_qt/debugger/graphics.cpp | |||
| @@ -28,22 +28,24 @@ QVariant GPUCommandStreamItemModel::data(const QModelIndex& index, int role) con | |||
| 28 | const GSP_GPU::GXCommand& command = GetDebugger()->ReadGXCommandHistory(command_index); | 28 | const GSP_GPU::GXCommand& command = GetDebugger()->ReadGXCommandHistory(command_index); |
| 29 | if (role == Qt::DisplayRole) | 29 | if (role == Qt::DisplayRole) |
| 30 | { | 30 | { |
| 31 | std::map<GSP_GPU::GXCommandId, const char*> command_names; | 31 | std::map<GSP_GPU::GXCommandId, const char*> command_names = { |
| 32 | command_names[GSP_GPU::GXCommandId::REQUEST_DMA] = "REQUEST_DMA"; | 32 | { GSP_GPU::GXCommandId::REQUEST_DMA, "REQUEST_DMA" }, |
| 33 | command_names[GSP_GPU::GXCommandId::SET_COMMAND_LIST_FIRST] = "SET_COMMAND_LIST_FIRST"; | 33 | { GSP_GPU::GXCommandId::SET_COMMAND_LIST_FIRST, "SET_COMMAND_LIST_FIRST" }, |
| 34 | command_names[GSP_GPU::GXCommandId::SET_MEMORY_FILL] = "SET_MEMORY_FILL"; | 34 | { GSP_GPU::GXCommandId::SET_MEMORY_FILL, "SET_MEMORY_FILL" }, |
| 35 | command_names[GSP_GPU::GXCommandId::SET_DISPLAY_TRANSFER] = "SET_DISPLAY_TRANSFER"; | 35 | { GSP_GPU::GXCommandId::SET_DISPLAY_TRANSFER, "SET_DISPLAY_TRANSFER" }, |
| 36 | command_names[GSP_GPU::GXCommandId::SET_TEXTURE_COPY] = "SET_TEXTURE_COPY"; | 36 | { GSP_GPU::GXCommandId::SET_TEXTURE_COPY, "SET_TEXTURE_COPY" }, |
| 37 | command_names[GSP_GPU::GXCommandId::SET_COMMAND_LIST_LAST] = "SET_COMMAND_LIST_LAST"; | 37 | { GSP_GPU::GXCommandId::SET_COMMAND_LIST_LAST, "SET_COMMAND_LIST_LAST" } |
| 38 | QString str = QString("%1 %2 %3 %4 %5 %6 %7 %8 %9").arg(command_names[static_cast<GSP_GPU::GXCommandId>(command.id)]) | 38 | }; |
| 39 | .arg(command.data[0], 8, 16, QLatin1Char('0')) | 39 | const u32* command_data = reinterpret_cast<const u32*>(&command); |
| 40 | .arg(command.data[1], 8, 16, QLatin1Char('0')) | 40 | QString str = QString("%1 %2 %3 %4 %5 %6 %7 %8 %9").arg(command_names[command.id]) |
| 41 | .arg(command.data[2], 8, 16, QLatin1Char('0')) | 41 | .arg(command_data[0], 8, 16, QLatin1Char('0')) |
| 42 | .arg(command.data[3], 8, 16, QLatin1Char('0')) | 42 | .arg(command_data[1], 8, 16, QLatin1Char('0')) |
| 43 | .arg(command.data[4], 8, 16, QLatin1Char('0')) | 43 | .arg(command_data[2], 8, 16, QLatin1Char('0')) |
| 44 | .arg(command.data[5], 8, 16, QLatin1Char('0')) | 44 | .arg(command_data[3], 8, 16, QLatin1Char('0')) |
| 45 | .arg(command.data[6], 8, 16, QLatin1Char('0')) | 45 | .arg(command_data[4], 8, 16, QLatin1Char('0')) |
| 46 | .arg(command.data[7], 8, 16, QLatin1Char('0')); | 46 | .arg(command_data[5], 8, 16, QLatin1Char('0')) |
| 47 | .arg(command_data[6], 8, 16, QLatin1Char('0')) | ||
| 48 | .arg(command_data[7], 8, 16, QLatin1Char('0')); | ||
| 47 | return QVariant(str); | 49 | return QVariant(str); |
| 48 | } | 50 | } |
| 49 | else | 51 | else |