mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-12-23 06:57:08 +00:00
Changed several enums from Memmap.h to be static vars and implemented Get functions to query them. This seems to have boosted speed a bit in some titles? The new variables and some previously statically initialized items are now initialized via Memory::Init() and the new AddressSpace::Init(). s_ram_size_real and the new s_exram_size_real in particular are initialized from new OnionConfig values "MAIN_MEM1_SIZE" and "MAIN_MEM2_SIZE", only if "MAIN_RAM_OVERRIDE_ENABLE" is true. GUI features have been added to Config > Advanced to adjust the new OnionConfig values. A check has been added to State::doState to ensure savestates with memory configurations different from the current settings aren't loaded. The STATE_VERSION is now 115. FIFO Files have been updated from version 4 to version 5, now including the MEM1 and MEM2 sizes from the time of DFF creation. FIFO Logs not using the new features (OnionConfig MAIN_RAM_OVERRIDE_ENABLE is false) are still backwards compatible. FIFO Logs that do use the new features have a MIN_LOADER_VERSION of 5. Thanks to the order of function calls, FIFO logs are able to automatically configure the new OnionConfig settings to match what is needed. This is a bit hacky, though, so I also threw in a failsafe for if the conditions that allow this to work ever go away. I took the liberty of adding a log message to explain why the core fails to initialize if the MIN_LOADER_VERSION is too great. Some IOS code has had the function "RAMOverrideForIOSMemoryValues" appended to it to recalculate IOS Memory Values from retail IOSes/apploaders to fit the extended memory sizes. Worry not, if MAIN_RAM_OVERRIDE_ENABLE is false, this function does absolutely nothing. A hotfix in DolphinQt/MenuBar.cpp has been implemented for RAM Override. |
||
|---|---|---|
| .. | ||
| Boot | ||
| Config | ||
| ConfigLoaders | ||
| Debugger | ||
| DSP | ||
| FifoPlayer | ||
| HLE | ||
| HW | ||
| IOS | ||
| PowerPC | ||
| ActionReplay.cpp | ||
| ActionReplay.h | ||
| Analytics.cpp | ||
| Analytics.h | ||
| ARDecrypt.cpp | ||
| ARDecrypt.h | ||
| BootManager.cpp | ||
| BootManager.h | ||
| CMakeLists.txt | ||
| CommonTitles.h | ||
| ConfigManager.cpp | ||
| ConfigManager.h | ||
| Core.cpp | ||
| Core.h | ||
| Core.vcxproj | ||
| Core.vcxproj.filters | ||
| CoreTiming.cpp | ||
| CoreTiming.h | ||
| DSPEmulator.cpp | ||
| DSPEmulator.h | ||
| GeckoCode.cpp | ||
| GeckoCode.h | ||
| GeckoCodeConfig.cpp | ||
| GeckoCodeConfig.h | ||
| Host.h | ||
| HotkeyManager.cpp | ||
| HotkeyManager.h | ||
| LibusbUtils.cpp | ||
| LibusbUtils.h | ||
| MachineContext.h | ||
| MemoryWatcher.cpp | ||
| MemoryWatcher.h | ||
| MemTools.cpp | ||
| MemTools.h | ||
| Movie.cpp | ||
| Movie.h | ||
| NetPlayClient.cpp | ||
| NetPlayClient.h | ||
| NetPlayProto.h | ||
| NetPlayServer.cpp | ||
| NetPlayServer.h | ||
| PatchEngine.cpp | ||
| PatchEngine.h | ||
| State.cpp | ||
| State.h | ||
| SysConf.cpp | ||
| SysConf.h | ||
| TitleDatabase.cpp | ||
| TitleDatabase.h | ||
| WiiRoot.cpp | ||
| WiiRoot.h | ||
| WiiUtils.cpp | ||
| WiiUtils.h | ||