yuzu/src/input_common/tas
MonsterDruide1 4297d2fea2 core: Hacky TAS syncing & load pausing
To keep the TAS inputs synced to the game speed even through lag spikes and loading zones, deeper access is required.

First, the `TAS::UpdateThread` has to be executed exactly once per frame. This is done by connecting it to the service method the game calls to pass parameters to the GPU: `Service::VI::QueueBuffer`.

Second, the loading time of new subareas and/or kingdoms (SMO) can vary. To counteract that, the `CPU_BOOST_MODE` can be detected: In the `APM`-interface, the call to enabling/disabling the boost mode can be caught and forwarded to the TASing system, which can pause the script execution if neccessary and enabled in the settings.
2021-09-18 23:22:20 +02:00
..
tas_input.cpp core: Hacky TAS syncing & load pausing 2021-09-18 23:22:20 +02:00
tas_input.h core: Hacky TAS syncing & load pausing 2021-09-18 23:22:20 +02:00
tas_poller.cpp input_common/tas: Base playback & recording system 2021-09-18 23:22:00 +02:00
tas_poller.h input_common/tas: Base playback & recording system 2021-09-18 23:22:00 +02:00