recording: Factor in DPIScaling when scaling VirtualPad window
recording: Add a reset button, hopefully better quality backgrounds for lower resolutions
recording: Improved VPad analog alignment
Co-authored-by: sonicfind
recording: Some final VirtualPad coordinate adjustments
* recording: Only stop the current recording once the menuing hasnt been cancelled
* recording: Avoid changing menu option's state if the recording couldn't be played
* recording: Don't play a recording that uses a savestate, if no game is running
* recording: Don't modify `frameAdvance` flag when explicitly [un]pausing
These functions are only called when creating/playing a recording, and modifying the frameAdvance flag leads to unexpected behaviour (such as the game starting paused if the recording was made from "power-on")
* recording: Refactor and simplify `InputRecordingFile`
InputRecordingFile will no longer be concerned with loading the save-state when playing back an existing recording. This makes it much easier to only load the save-state if the file is valid and manipulate the emulation state correctly.
* recording: Update play logic with new refactor, resume emulation in the event of a failure
* recording/lint: spaces to tabs
* recording: Properly only examine controller 1A & 2A
The previous controller port checks in place never actually succeeded in their designated task. A new slot check in sio.cpp will perform this task instead.
* recording: Save the savestate in OpenNew() instead of open()
Ensures that the savesate could be saved before trying to create the actual input recording file. It will overwrite any previous backup savestate.
Also, allows for a simplified & easier to read code struture of open().
* Refactor and simplify `InputRecording`
Changes the return type of Play/Create from void to bool.
Optimizes Stop(), Pause(), and Unpause() call placements
Improved handling of emulation pause state, the recording menu on failures, and the conditioning of when a recording file should actually be unloaded.
For example, a currently loaded recording should not get unloaded if a user presses Play *but* chooses cancel in the file browser. However, the emulation should be paused during the duration of this action.
On the flipside, a loaded recording *should* get unloaded if the tools get disabled in settings AND emulation should resume if not already playing.
* recording: Simplify VirtualPad_Open_Click
Co-authored-by: Tyler Wilding <xtvaser@gmail.com>
VS complains about errors so isolate the code in each file for TAS with macros.
Remove ifndef for m_capturingVideo as it is used for video capture menu.
Squashed commit:
[7955b42e3] recording: Throw errors on fread/fwrite errors.
[5a2160f9e] recording: Remove function implementation from header files
[f2937ab5f] recording: Fixed UndoCount metadata bug and will gracefully fail if savestate is missing
[d7f4d43e5] recording: Refactored code-style to be consistent
[0f77fbb71] recording: Refactor to use switch statements
[28d7945f6] recording: Resolve CMake warnings and use tagged github links for cross-linking to LilyPad
[7c01c6cb4] recording: corrected disparity between comment and code
[17a8bd8d6] recording: Remove all usages of #define
[3830f5a82] recording: Refactor enums and general cleanup
[569ef7d67] recording: Completely disable new console log sources when recording is disabled