Commit Graph

11323 Commits

Author SHA1 Message Date
sonicfind f881bd9bd6 recording: Lock frameCounter incrementation on initial recording file load or during full/fast boot
Ensures that no frames of input are skipped over on the initial load of a recording file or during a fast/full boot when a recording file is active. Improved consistency.
2020-09-18 23:31:23 +01:00
sonicfind 5c5d3a770f recording: Handle mode toggle in InputRecordingControls 2020-09-18 23:31:23 +01:00
sonicfind 975a37f209 recording: Handle Boots & Savestates similarly
* Replaces the savestate load flag with a more general initial load flag to be used by full/fast boots and savestates.
* Have the Pcsx2App::ResetRecordingCounter() method mirror the similar method of the savestate class.
2020-09-18 23:31:23 +01:00
sonicfind b591c5e9ab recording: Rework Frame Value & Undo Count Functions
* Handle setting frameCounter to 0 in SetStartingFrame().
* FrameCounter, signed -> unsigned.
* Have SetFrameCounter handle the calculations for the relative frame displacement from the startingFrame.
* Optimizes InputRecording::controllerInterrupt.
* Flip the order of execution in inputRecordingFreeze.
* Set framecounter properly on full/fast boot.
* More accurately increment undo count
2020-09-18 23:31:23 +01:00
sonicfind 0304b124ed recording: Recording mode-based refactors
* Recording mode enum, NoneActive -> NotActive
* Changed IsMode method names and added an IsRecording method.
* Add methods designated to setting a recording to a certain mode.

Co-authored-by: Tyler Wilding <xtvaser@gmail.com>
2020-09-18 23:31:23 +01:00
Tyler Wilding 74bba35765 recording: Resolve issues discovered while testing around savestate handling
* Add a flag to explicitly indicate if the initial SS has been loaded.
* Additionally: bracket formatting / spaces -> tabs.
2020-09-18 23:31:23 +01:00
Tyler Wilding 6c80e6b93f recording: Recording controls rename and refactor to attempt to simplify
* RecordingControls - > InputRecordingControls (+ function refactors & simplifications)
* Avoid mutating g_FrameCount - now use isolated frameCounter & startingFrame variables for input recordings
* Pause or resume emulation preemptively based on GUI actions
* Exclusively handle GS window title updates in FrameForGS
2020-09-18 23:31:23 +01:00
GovanifY fa894d9d48
HostFS: free fds when shutting down vm (#3671)
* HostFS: free fds when shutting down vm

* HostFs: init arrays at given value
2020-09-18 15:34:43 -04:00
Kojin db36dc2326 GSdx: Purge International Star Soccer Hack
Confirmed to be a core issue.
See: #3568
2020-09-18 14:46:27 -04:00
lightningterror 8cdd823671 build.sh/cmake: Remove OPENCL_API flag. 2020-09-18 20:04:11 +02:00
lightningterror 413d58df57 3rdparty: Remove opencl lib source files. 2020-09-18 19:14:32 +02:00
lightningterror 6529fa419f vcxproj/vsprops/sln: Remove opencl 3rdparty libs. 2020-09-18 19:14:32 +02:00
lightningterror c50c6034c0 gsdx-hw: Remove opencl code and files from gsdx. 2020-09-18 19:14:32 +02:00
lightningterror fb640cbdb9 build.sh: Remove opencl. 2020-09-18 19:14:32 +02:00
lightningterror edd949583a cmake: Remove opencl. 2020-09-18 19:14:32 +02:00
lightningterror 3f99395d3b vcxproj: Remove opencl. 2020-09-18 19:14:32 +02:00
lightningterror f86ea02594 tools: Remove dynacrchack source files. 2020-09-18 19:13:45 +02:00
lightningterror dd5d1a1abb gsdx-hw: Remove DynamicCrcHack feature. 2020-09-18 19:13:45 +02:00
refractionpcsx2 40d02400ca
DMAC: Improve DMA Stall handling (#3701)
SIF: Implemented SIF0 and SIF1 DMA Stall handling
Cleaned up some of the handling of DMA Stalls on the other channels
2020-09-18 16:23:18 +01:00
Tyler Wilding a5cc8efb10 ci: Ignore workflows on non-code changes or irrelevant code changes 2020-09-18 03:31:13 +02:00
Tyler Wilding 645b2dc17a ci: Properly fail the linux workflows if the build fails 2020-09-18 03:31:13 +02:00
Tyler Wilding 0bd49ad778 ci: Remove clang, use GCC 10 and GTK 3 2020-09-18 03:31:13 +02:00
Tyler Wilding 81ccb637f9 ci: Remove directX downloading from windows build 2020-09-18 03:31:13 +02:00
Tyler Wilding 3fba5a2c11 ci: Add cron action to cleanup old artifacts to avoid hitting GH Actions limits 2020-09-18 03:31:13 +02:00
Tyler Wilding 359be55ce0 ci: Add working linux workflow 2020-09-18 03:31:13 +02:00
Tyler Wilding d7beb3cdc7 ci: Add windows workflow 2020-09-18 03:31:13 +02:00
Jonathan Li 176e3609a5 ci: base github actions from turtleli 2020-09-18 03:31:13 +02:00
RedDevilus 07eb0770cd Gamedb: Remove patches and add manual gamefixes
- Spiderwick Chronicles
- Amplitude
2020-09-18 02:25:37 +02:00
lightningterror 366e7b9dbd gsdx-hw: Purge Grandia3 crc hacks.
Upscaling issues can be solved with half pixel offset. Leave the
accurate blur alone!
2020-09-17 20:10:44 +02:00
lightningterror 8d8f0f82d8 gsdx-hw: Run clang format on GSHwHack.cpp. 2020-09-17 19:53:24 +02:00
lightningterror baabbc3c9f gsdx-hw: Purge Genji crc hacks.
Effects rendered correctly.
2020-09-16 01:22:26 +02:00
refractionpcsx2 751447a028 GameDB: Added missing rounding mode for Shin Megami Tensei: Lucifer's Call 2020-09-15 17:12:13 +01:00
refractionpcsx2 b5e3fc97dc
VIF: Set decoding status on VIF stall (#3683)
* VIF: Set decoding status on VIF stall

* VIF/GIF: Remove VIF Reset hack, Let GIF Unit reset queued path data (Except MTVU)
2020-09-14 23:28:55 +01:00
refractionpcsx2 f7f9e30efc SIF DMA: Fix bug with Tag Interrupts 2020-09-14 20:26:25 +01:00
refractionpcsx2 6229b204fa GameDB: Add auto game fixes for Taxi Rider to fix white models 2020-09-12 14:59:09 +01:00
lightningterror e5db98c137 [skip ci] Tools: Move gsdumpgui in it's own repository.
https://github.com/PCSX2/GSDumpGUI

Initial release has been published as well so developers can download
and use it without the hassle of compiling.
2020-09-12 14:16:14 +02:00
arcum42 dae2c31951
Revamp the wx spu2-x dialog. (#3670)
* Revamp the spu2-x wx dialog box to be more consistant with the wx GSdx dialog.

* Revised advanced sync text for brevity, changed it back to a label, and renamed the dialog box.

* LightningTerror thinks Spu2 looks better in uppercase.

* Change around the time stretching labels again.
2020-09-11 22:30:11 -07:00
sonicfind 4d66818746
GUI/Recording: Resolve issues around playing and creating input recordings under certain scenarios (#3669)
* 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>
2020-09-11 21:30:56 +01:00
lightningterror 4d0650baa0 3rdparty:opencl: Remove unused opencl files.
Currently they are not used when compiling with opencl so don't include
them, entire opencl 3rdparty needs to be updated. Can be done when
someone attempts to fix the opencl renderer.
2020-09-11 02:18:02 +02:00
RedDevilus 043832abdf Console-gui: Update descriptions.
Add Input to recording. Lowercase to uppercase words.
2020-09-11 01:49:32 +02:00
RedDevilus e079604c48 pcsx2-gui: Update main window description/tooltips.
Change 2 recordings (CaptureVideo and Recordings) to Screenrecorder and Input Recording.
2020-09-11 01:49:32 +02:00
RedDevilus 6a9a61ec68 MemoryCards-gui: Update descriptions/tooltips.
Auto-Eject checkbox is a failsave for broken saves. Card (file)name to Memory Card (like a real PS2 you need to plug a memory card in port 1 to work).
Add usable to formatted to be obvious if you can use the memory card. Changed default column width.
2020-09-11 01:49:32 +02:00
RedDevilus 3d014d28e6 EmulationSettings-gui: Update descriptions/tooltips.
FMV Aspect Ratio Override = Off is the same as the value for Aspect Ratio. Formatting fix for Zoom tooltip.
Double click on emulation windows also does fullscreen. Disable framelimiting means Uncapping the FPS.
Capped slowmotion adjust at 5% (it doesn't accept lower than 5 anyway). MTGS gets debug tag (useless for many).
2020-09-11 01:49:32 +02:00
RedDevilus 03a41fee23 GSdx-gui: Update descriptions/tooltips.
Large framebuffer should only be used in cases of stuttery FMVs (cutscenes). 4/8 bits is best used where GPU is much stronger than CPU.
Fix DPI scaling for OSD color sliders (FPS + other stats).
2020-09-11 01:49:32 +02:00
RedDevilus 4e2319c075 Lilypad-gui: Update descriptions/tooltips.(PR3457)
DS4 is finicky sometimes with Directinput enabled and is best used with Xinput + Steam (Steam is recommended for all controllers).
Alternative for DS4 is Ryochan7/DS4Windows (not main DS4Windows).
2020-09-11 01:49:32 +02:00
Tyler Wilding 79cd8d2190
GUI: Fix recording related hang when PAD plugin is open/closed while game is paused (#3299)
* recording: Resolve hang when opening PAD plugin with the game paused

* pcsx2-gui: Forbid editing the PAD settings while emulation is paused by recording tools

* pcsx2-gui: Resume emulation before configuring PAD plugin, resume on return
2020-09-10 23:05:54 +01:00
lightningterror fe872b5caa [skip travis] ci-appveyor: Skip building commits if only the following directories/files are changed. 2020-09-10 17:08:08 +02:00
refractionpcsx2 1b6b3f692d GS/Counters: Fix CSR Swap and VBlank Interrupt timing 2020-09-10 15:47:11 +01:00
refractionpcsx2 197eaf3899 VU: Also update Status/Mac instances after COP2, just in case 2020-09-10 12:25:52 +01:00
refractionpcsx2 19ab48c280 VU: Copy CLIP flag instance back to VU0 int and microVU when COP2 modifies it
Fixes Soul Calibur 3 hair
2020-09-10 11:52:47 +01:00