4297d2fea2
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.
28 lines
626 B
C++
28 lines
626 B
C++
// Copyright 2021 yuzu Emulator Project
|
|
// Licensed under GPLv2 or any later version
|
|
// Refer to the license.txt file included.
|
|
|
|
#pragma once
|
|
|
|
// yuzu data directories
|
|
|
|
#define YUZU_DIR "yuzu"
|
|
#define PORTABLE_DIR "user"
|
|
|
|
// Sub-directories contained within a yuzu data directory
|
|
|
|
#define CACHE_DIR "cache"
|
|
#define CONFIG_DIR "config"
|
|
#define DUMP_DIR "dump"
|
|
#define KEYS_DIR "keys"
|
|
#define LOAD_DIR "load"
|
|
#define LOG_DIR "log"
|
|
#define NAND_DIR "nand"
|
|
#define SCREENSHOTS_DIR "screenshots"
|
|
#define SDMC_DIR "sdmc"
|
|
#define SHADER_DIR "shader"
|
|
#define TAS_DIR "scripts"
|
|
|
|
// yuzu-specific files
|
|
|
|
#define LOG_FILE "yuzu_log.txt"
|