| 2867 | } |
| 2868 | |
| 2869 | void VMManager::Internal::EntryPointCompilingOnCPUThread() |
| 2870 | { |
| 2871 | if (s_elf_executed) |
| 2872 | return; |
| 2873 | |
| 2874 | const bool reset_speed_limiter = (EmuConfig.EnableFastBootFastForward && IsFastBootInProgress()); |
| 2875 | |
| 2876 | Console.WriteLn( |
| 2877 | Color_StrongGreen, fmt::format("ELF {} with entry point at 0x{:08X} is executing.", s_elf_path, s_elf_entry_point)); |
| 2878 | s_elf_executed = true; |
| 2879 | |
| 2880 | if (reset_speed_limiter) |
| 2881 | { |
| 2882 | UpdateTargetSpeed(); |
| 2883 | PerformanceMetrics::Reset(); |
| 2884 | } |
| 2885 | |
| 2886 | HandleELFChange(true); |
| 2887 | |
| 2888 | Patch::ApplyBootPatches(); |
| 2889 | |
| 2890 | // If the config changes at this point, it's a reset, so the game doesn't currently know about the memcard |
| 2891 | // so there's no need to leave the eject running. |
| 2892 | FileMcd_CancelEject(); |
| 2893 | |
| 2894 | // Toss all the recs, we're going to be executing new code. |
| 2895 | mmap_ResetBlockTracking(); |
| 2896 | ClearCPUExecutionCaches(); |
| 2897 | |
| 2898 | R5900SymbolImporter.OnElfLoadedInMemory(); |
| 2899 | } |
| 2900 | |
| 2901 | void VMManager::Internal::VSyncOnCPUThread() |
| 2902 | { |
nothing calls this directly
no test coverage detected