Commit Graph
356 Commits
Author SHA1 Message Date
Pokechu22 c63f0f37cd VideoCommon: Pass WindowSystemInfo to InitBackendInfo 2023-06-08 22:07:39 -07:00
Admiral H. Curtiss 7845fb00ee Merge pull request #11681 from iwubcode/asset_management
VideoCommon: migrate texture packs to use the asset loader system
2023-06-08 22:21:12 +02:00
Admiral H. Curtiss afc97ec20f Merge pull request #11895 from JosJuice/android-no-host-check
Android: Temporarily disable host thread check
2023-06-06 18:56:41 +02:00
JosJuice 361171fce0 Android: Temporarily disable host thread check
Very broken. Will investigate, but let's revert it for the time being.
2023-06-06 18:39:32 +02:00
JosJuice 6bd5473d56 Core: Declare emu thread as CPU thread while shutting down
Fixes https://bugs.dolphin-emu.org/issues/13274.
2023-06-06 18:04:21 +02:00
JosJuice 2d56daf1bb Merge pull request #11873 from AdmiralCurtiss/pause-and-lock-host
Core: Assert that only the Host thread may call PauseAndLock().
2023-06-06 13:50:20 +02:00
iwubcode f1f1ecc9d1 Core / VideoCommon: update HiresTexture to use CustomAssetLoader 2023-06-05 16:33:19 -05:00
LillyJadeKatrin e2d0ff718c Fixed Missing DoFrame Call
Somewhere in the process of getting the memory peeking right for achievements, the AchievementManager call to DoFrame went missing. This restores it properly.
2023-06-03 09:15:41 -04:00
Admiral H. Curtiss b3c9f49cbe Core: Assert that only the Host thread may call PauseAndLock(). 2023-06-02 18:51:43 +02:00
Lioncash 21df3ca572 StringUtil: Move IsPrintableCharacter() into Common namespace 2023-05-16 14:17:54 -04:00
LillyJadeKatrin 8b57c4b239 Added LoadGameByFilenameAsync and CloseGame to AchievementManager
LoadGameByFilenameAsync sets up a volume reader and hashes the volume, then uses that hash to make the three consecutive API requests to resolve hash, start session and load game data.

CloseGame resets the m_is_game_loaded flag, wipes the queue, and destroys all the game data responses.
2023-04-12 03:08:47 -04:00
Admiral H. Curtiss 23843583bf PowerPC: Refactor to class, move to System. 2023-04-09 21:48:37 +02:00
Admiral H. Curtiss 9217a9eba4 JitInterface: Refactor to class, move to System. 2023-03-26 14:38:07 +02:00
Lioncash 0888c93d48 Common: Move FPU-related helpers into Common namespace
Makes these utilities' namespace consistent with the majority of the
Common library.
2023-03-21 10:58:13 -04:00
Admiral H. Curtiss 026b6a3e0f HW: Pass System to functions. 2023-03-13 18:13:20 +01:00
Admiral H. Curtiss bf95d4012f HW/EXI: Refactor ExpansionInterface to class. 2023-03-11 00:56:37 +01:00
Admiral H. Curtiss 929222ffbd HW/DSP: Refactor to class. 2023-03-09 22:35:29 +01:00
Admiral H. Curtiss 912cd456fb Core: Add System parameter to CPUThreadGuard. 2023-03-08 22:41:42 +01:00
Admiral H. Curtiss 3b364c5c16 HW/CPU: Refactor to class, move to System. 2023-03-08 12:23:37 +01:00
Scott Mansell 70cfb46f8e Fix duplicated FPS
This is a small regression from KillRenderer, which caused duplicated
frames to be counted on the FPS counter when the "Skip Presenting
Duplicated Frames" option was disabled.
2023-03-05 23:31:12 +13:00
Admiral H. Curtiss 435d8c39ee Common/FatFsUtil: Add callback for cancelling SD card conversion. 2023-02-28 20:31:51 +01:00
JosJuice 7cecb28bdf DolphinQt: Properly lock CPU before accessing emulated memory
This fixes a problem I was having where using frame advance with the
debugger open would frequently cause panic alerts about invalid addresses
due to the CPU thread changing MSR.DR while the host thread was trying
to access memory.

To aid in tracking down all the places where we weren't properly locking
the CPU, I've created a new type (in Core.h) that you have to pass as a
reference or pointer to functions that require running as the CPU thread.
2023-02-12 11:27:50 +01:00
60f2b5af7b Apply suggestions from code review
Co-authored-by: Mai <mathew1800@gmail.com>
Co-authored-by: BhaaL <bhaalsen@gmail.com>
Co-authored-by: iwubcode <iwubcode@users.noreply.github.com>
2023-02-09 18:36:20 +13:00
Scott Mansell 31cfe8250d Lint fixes 2023-02-09 18:36:20 +13:00
Scott Mansell abfc75f362 Cleanup headers 2023-01-31 19:41:24 +13:00
Scott Mansell 0da69055d9 Split out everying remaining from Swap 2023-01-31 19:41:24 +13:00
Scott Mansell b007b8e104 Replace BeginUI/EndUI 2023-01-31 19:41:24 +13:00
Scott Mansell 0d4537d60f Move Presenting, Dumping and ImGui out of Renderer 2023-01-31 18:45:21 +13:00
Simonx22 df6f070a55 Core: Remove FPS, VPS and speed percentage from window title 2023-01-23 21:32:50 +01:00
MayImilae 9df1f0276d Don't Write OSD Messages to the titlebar
Turns out all OSD messages, every single one, are written to the titlebar. We've just never seen them because the FPS is in the title bar and it replaces it in a fraction of a second. This was only visible when saving savestates because it halts emulation for a moment while writing.

This is dumb, let's not do that anymore.
2023-01-22 00:19:51 -08:00
Sam Belliveau bc1cc9eeb4 CoreTiming: Throttle Before Every Event Using Chrono 2023-01-06 17:21:17 -05:00
Admiral H. Curtiss a164c47caf Core/Boot: Pass System instance to BootUp() and related. 2022-12-29 05:49:26 +01:00
Sam Belliveau 673f81c18a New FrameTime/VBlank Analyzer + Graph 2022-12-23 19:52:53 -05:00
Admiral H. Curtiss ceae4242fc VideoCommon/Fifo: Pass Core::System to methods. 2022-12-10 17:16:26 +01:00
Admiral H. Curtiss 5624dd6d39 VideoCommon/Fifo: Refactor to class, move to Core::System. 2022-12-10 17:16:19 +01:00
Admiral H. Curtiss c9558ecb4c CoreTiming: Refactor to class. 2022-11-27 03:47:12 +01:00
Admiral H. Curtiss 1c63349984 AudioCommon: Pass Core::System to AudioCommon functions. 2022-11-06 02:13:58 +01:00
Admiral H. Curtiss aade584180 Netplay: Completely rewrite Wiimote syncing logic to be similar to the GameCube controller one. 2022-10-02 23:22:02 +02:00
Admiral H. Curtiss 0a517ebdbd Core: Pass Netplay SRAM through boot process.
This removes the Netplay classes touching emulated hardware structures before emulation even starts.
2022-09-19 21:47:12 +02:00
Admiral H. Curtiss c310e504cb AudioCommon: Move sound stream variables to Core::System. 2022-08-31 21:44:21 +02:00
Shawn Hoffman 09089eeee0 Common::Timer: use chrono::steady_clock internally 2022-08-02 22:24:06 -07:00
JosJuice dabad82219 Require frontend to initialize controllers
We currently have two different code paths for initializing controllers:
Either the frontend (DolphinQt) can do it, or if the frontend doesn't do
it, the core will do it automatically when booting. Having these two
paths has caused problems in the past due to only one frontend being
tested (see de7ef47548). I would like to get rid of the latter path to
avoid further problems like this.
2022-07-17 14:03:04 +02:00
Admiral H. Curtiss a621fdf857 Core: In deterministic mode, build SD cards with a consistent filename order and dummy timestamps. 2022-07-11 23:11:41 +02:00
Admiral H. CurtissandPablo Stebler 77d4591fb4 Core: If configured, sync SD card image with SD card folder on emulation start and end.
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss b10808d815 Merge pull request #8763 from JosJuice/panic-alert-deadlock-gpu
DolphinQt: Fix the panic alert deadlock, dual core edition
2022-05-16 02:21:14 +02:00
Pokechu22 50d9349926 Fix integer sign difference comparison warnings 2022-02-13 14:38:59 -08:00
Léo Lam 83c5446d85 Fix static initialisation order fiasco issue for Version variables
Fixes a crash that could occur if the static constructor function for
the MainSettings.cpp TU happened to run before the variables in
Common/Version.cpp are initialised. (This is known as the static
initialisation order fiasco.)

By using wrapper functions, those variables are now guaranteed to be
constructed on first use.
2022-01-14 00:04:22 +01:00
JosJuice 3367e5e026 DolphinQt: Fix the panic alert deadlock, GPU thread edition
The fix in ef77872 worked for panic alerts from
the CPU thread, but there were still problems with
panic alerts from the GPU thread in dual core mode.
This change attempts to fix those.
2022-01-13 22:19:54 +01:00
Admiral H. Curtiss d8825f5635 Config: Port dual core setting to new config system. 2022-01-09 21:29:11 +01:00
Admiral H. Curtiss dc7e7d08ad Config: Port Fastmem setting to new config system. 2022-01-06 16:13:56 +01:00