mirror / dolphin-emu

ARCHIVED Moved to *dolphin-emu/dolphin*
https://github.com/dolphin-emu/dolphin
14 stars 14 forks source link

Adding MMU state values to state #28

Closed john-peterson closed 11 years ago

john-peterson commented 11 years ago

Adding MMU state values to state

Problem

State loading before CCPU::Run() in

result in a DSI interrupt because these values start at 0 which is the wrong value

Solution

Save the MMU state values

Discussion

The problem hasn't been fixed before because it's not noticed when loading a state

These values are used for page trable translation discussed at Terms and Acronyms

MMU PPC Memory Management Unit. Translates virtual address to physical. MMU has two translation mechanisms: block address translation and page table translation

Shutdown

Problem

It's not clear which values are state values

Solution

Adding the values to shutdown because that makes it clear that they're part of the system state

Fake VMEM

Problem

A state saved with "TLBHack" doesn't work if it's changed to "MMU" because fake VMEM isn't saved if "TLBHack" isn't used because

Fake VMEM should be saved regardless of the TLBHack setting because

truncate -s 32M file.bin
lzop -fo file.lzo file.bin
du -h file.lzo
152K   file.lzo