diff --git a/rpcs3/Emu/Cell/SPUThread.cpp b/rpcs3/Emu/Cell/SPUThread.cpp index e996419a5c..1a9a7fd797 100644 --- a/rpcs3/Emu/Cell/SPUThread.cpp +++ b/rpcs3/Emu/Cell/SPUThread.cpp @@ -5029,8 +5029,24 @@ void fmt_class_string::format(std::string& out, u64 arg) { const auto& ch = get_object(arg); - // TODO (use try_read) - fmt::append(out, "count = %d", ch.get_count()); + u32 vals[4]{}; + const uint count = ch.try_read(vals); + + fmt::append(out, "count = %d, data:\n", count); + + out += "{ "; + + for (u32 i = 0; i < count;) + { + fmt::append(out, "0x%x", vals[i]); + + if (++i != count) + { + out += ", "; + } + } + + out += " }\n"; } DECLARE(spu_thread::g_raw_spu_ctr){};