mirror of
https://github.com/cemu-project/Cemu.git
synced 2025-04-29 14:59:26 -04:00
Minor changes.
This commit is contained in:
parent
f44e12f4d8
commit
7529383861
3 changed files with 39 additions and 32 deletions
|
@ -80,33 +80,6 @@ MMURange* memory_getMMURangeByAddress(MPTR address)
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
template<>
|
|
||||||
void MemStreamWriter::write(const MMURange& v)
|
|
||||||
{
|
|
||||||
writeBool(v.m_isMapped);
|
|
||||||
write(v.baseAddress);
|
|
||||||
write((uint8)v.areaId);
|
|
||||||
write((uint8)v.flags);
|
|
||||||
write(v.name);
|
|
||||||
write(v.size);
|
|
||||||
write(v.initSize);
|
|
||||||
}
|
|
||||||
|
|
||||||
template <>
|
|
||||||
void MemStreamReader::read(MMURange& mmuRange)
|
|
||||||
{
|
|
||||||
bool needsMapped = readBool();
|
|
||||||
mmuRange.m_isMapped = false;
|
|
||||||
mmuRange.baseAddress = read<uint32>();
|
|
||||||
mmuRange.areaId = (MMU_MEM_AREA_ID)read<uint8>();
|
|
||||||
mmuRange.flags = (MMURange::MFLAG)read<uint8>();
|
|
||||||
mmuRange.name = read<std::string>();
|
|
||||||
mmuRange.size = read<uint32>();
|
|
||||||
mmuRange.initSize = read<uint32>();
|
|
||||||
if (needsMapped)
|
|
||||||
mmuRange.mapMem();
|
|
||||||
}
|
|
||||||
|
|
||||||
MMURange::MMURange(const uint32 baseAddress, const uint32 size, MMU_MEM_AREA_ID areaId, const std::string_view name, MFLAG flags) : baseAddress(baseAddress), size(size), initSize(size), areaId(areaId), name(name), flags(flags)
|
MMURange::MMURange(const uint32 baseAddress, const uint32 size, MMU_MEM_AREA_ID areaId, const std::string_view name, MFLAG flags) : baseAddress(baseAddress), size(size), initSize(size), areaId(areaId), name(name), flags(flags)
|
||||||
{
|
{
|
||||||
g_mmuRanges.emplace_back(this);
|
g_mmuRanges.emplace_back(this);
|
||||||
|
@ -439,6 +412,33 @@ void memory_createDump()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template<>
|
||||||
|
void MemStreamWriter::write(const MMURange& v)
|
||||||
|
{
|
||||||
|
writeBool(v.m_isMapped);
|
||||||
|
write(v.baseAddress);
|
||||||
|
write((uint8)v.areaId);
|
||||||
|
write((uint8)v.flags);
|
||||||
|
write(v.name);
|
||||||
|
write(v.size);
|
||||||
|
write(v.initSize);
|
||||||
|
}
|
||||||
|
|
||||||
|
template <>
|
||||||
|
void MemStreamReader::read(MMURange& v)
|
||||||
|
{
|
||||||
|
bool needsMapped = readBool();
|
||||||
|
v.m_isMapped = false;
|
||||||
|
read(v.baseAddress);
|
||||||
|
v.areaId = (MMU_MEM_AREA_ID)read<uint8>();
|
||||||
|
v.flags = (MMURange::MFLAG)read<uint8>();
|
||||||
|
read(v.name);
|
||||||
|
read(v.size);
|
||||||
|
read(v.initSize);
|
||||||
|
if (needsMapped)
|
||||||
|
v.mapMem();
|
||||||
|
}
|
||||||
|
|
||||||
void memory_Serialize(MemStreamWriter& s)
|
void memory_Serialize(MemStreamWriter& s)
|
||||||
{
|
{
|
||||||
for (auto& itr : g_mmuRanges)
|
for (auto& itr : g_mmuRanges)
|
||||||
|
@ -455,7 +455,7 @@ void memory_Deserialize(MemStreamReader& s)
|
||||||
{
|
{
|
||||||
for (auto& itr : g_mmuRanges)
|
for (auto& itr : g_mmuRanges)
|
||||||
{
|
{
|
||||||
s.read<MMURange>(*itr);
|
s.read(*itr);
|
||||||
if (itr->isMapped())
|
if (itr->isMapped())
|
||||||
{
|
{
|
||||||
s.readData(memory_base + itr->getBase(), itr->getSize());
|
s.readData(memory_base + itr->getBase(), itr->getSize());
|
||||||
|
|
|
@ -928,7 +928,7 @@ template <>
|
||||||
void MemStreamWriter::write(const iosu::fsa::_FSAHandleTable& v)
|
void MemStreamWriter::write(const iosu::fsa::_FSAHandleTable& v)
|
||||||
{
|
{
|
||||||
write(v.m_currentCounter);
|
write(v.m_currentCounter);
|
||||||
for (sint32 i = 0; i < v.m_handleTableSize; i++)
|
for (sint32 i = 0; i < v.m_handleTable.size(); i++)
|
||||||
{
|
{
|
||||||
write(v.m_handleTable[i].handleCheckValue);
|
write(v.m_handleTable[i].handleCheckValue);
|
||||||
writeBool(v.m_handleTable[i].isAllocated);
|
writeBool(v.m_handleTable[i].isAllocated);
|
||||||
|
@ -942,12 +942,19 @@ template <>
|
||||||
void MemStreamReader::read(iosu::fsa::_FSAHandleTable& v)
|
void MemStreamReader::read(iosu::fsa::_FSAHandleTable& v)
|
||||||
{
|
{
|
||||||
read(v.m_currentCounter);
|
read(v.m_currentCounter);
|
||||||
for (sint32 i = 0; i < v.m_handleTableSize; i++)
|
for (sint32 i = 0; i < v.m_handleTable.size(); i++)
|
||||||
{
|
{
|
||||||
read(v.m_handleTable[i].handleCheckValue);
|
read(v.m_handleTable[i].handleCheckValue);
|
||||||
readBool(v.m_handleTable[i].isAllocated);
|
readBool(v.m_handleTable[i].isAllocated);
|
||||||
|
|
||||||
if (readBool()) v.m_handleTable[i].fscFile = FSCVirtualFile::Restore(*this);
|
if (readBool())
|
||||||
|
{
|
||||||
|
v.m_handleTable[i].fscFile = FSCVirtualFile::Restore(*this);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
v.m_handleTable[i].fscFile = nullptr;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -173,7 +173,7 @@ namespace coreinit
|
||||||
s_allocatedVirtMemory.reserve(s_allocatedVirtMemorySize);
|
s_allocatedVirtMemory.reserve(s_allocatedVirtMemorySize);
|
||||||
for (sint32 i = 0; i < s_allocatedVirtMemorySize; i++)
|
for (sint32 i = 0; i < s_allocatedVirtMemorySize; i++)
|
||||||
{
|
{
|
||||||
s_allocatedVirtMemory.push_back(OSVirtMemoryEntry(s.read<MPTR>(), s.read<uint32>(), s.read<uint32>()));
|
s_allocatedVirtMemory.emplace_back(s.read<MPTR>(), s.read<uint32>(), s.read<uint32>());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue