mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-04-20 03:25:16 +00:00
HLE cellGcmSys: Make IOTable accurate
Affects cellGcmAddressToOffset when using addresses above 0xC0000000
This commit is contained in:
parent
1aa11440e0
commit
6de91a1691
2 changed files with 5 additions and 6 deletions
|
@ -93,13 +93,12 @@ void InitOffsetTable()
|
|||
{
|
||||
const auto cfg = g_fxo->get<gcm_config>();
|
||||
|
||||
cfg->offsetTable.ioAddress.set(vm::alloc(3072 * sizeof(u16), vm::main));
|
||||
cfg->offsetTable.eaAddress.set(vm::alloc(512 * sizeof(u16), vm::main));
|
||||
const u32 addr = vm::alloc((3072 + 512) * sizeof(u16), vm::main);
|
||||
|
||||
std::memset(cfg->offsetTable.ioAddress.get_ptr(), 0xFF, 3072 * sizeof(u16));
|
||||
std::memset(cfg->offsetTable.eaAddress.get_ptr(), 0xFF, 512 * sizeof(u16));
|
||||
cfg->offsetTable.ioAddress.set(addr);
|
||||
cfg->offsetTable.eaAddress.set(addr + (3072 * sizeof(u16)));
|
||||
|
||||
cfg->reserved_size = 0;
|
||||
std::memset(vm::base(addr), 0xFF, (3072 + 512) * sizeof(u16));
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
|
|
@ -30,7 +30,7 @@ struct gcm_config
|
|||
CellGcmContextData current_context;
|
||||
gcmInfo gcm_info;
|
||||
|
||||
CellGcmOffsetTable offsetTable;
|
||||
CellGcmOffsetTable offsetTable{};
|
||||
u16 IoMapTable[0xC00]{};
|
||||
shared_mutex gcmio_mutex;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue