* SPU Debugger: Fix try_get_insert_mask_info
* Debugger: Always update thread state on context's data change
No longer needing to press on thread's instructions for actions to work!
Fix logic error in callstacks handling code, always set first to false after first iteration.
Add explicit check for zero return addresses. Current code validity checks may not check for it properly when it sits on interrupt handler entry point (which may contain valid code).
Do not allow 0x3FFF0 to be a back chain address because it needs space for LR save area, only 0x3FFE0 and below satisfy this criteria.
Add prefetch hint list parameter.
Workloads may be executed by another thread on another CPU core.
It means they may benefit from directly prefetching the data as hinted.
Also implement mov_rdata_nt, for "streaming" data from such workloads.
Silence the wolf from telling us:
#warning "For timing resistance / side-channel attack prevention consider using harden options"
Also removed duplicate defines for Visual Studio project, to remove some additional warnings there.
The findData() on the invalid value correction wasn't working, and was still returning -1.
This was then used in the enable_buffering lambda as the IndexChanged callback, and throwing the Assert.
Have replaced this usage with a lambda to manually find the appropriate entry. Since we localise the text displayed, neither findData nor findText of the combo box did the job.
I haven't touched the is_ranged use of findData.
Provides a setting which can be applied per game, and allows for a custom date/time to be set.
The console time will then apply this as an offset to the computer wallclock.
This allows for games which look at the console time to determine their gameplay to be adjusted.
We accidentally always saved keyboard to Player 1 if null was selected.
The new code will only apply keyboard by default if the config file was not found.
In line with #4259
Trophies are changed to be 'Earned' / 'Not Earned', which also matches both the RSX displays the notification frame
And changed window title of Screenshot Preview -> Screenshot Viewer because as mentioned in the issue, the screenshot has been taken already, so it's not a preview (it is the view).