Commit graph

329 commits

Author SHA1 Message Date
Unknown W. Brackets
46770aba3a Vulkan: Skip flips, not draw, for vsync unthrottle. 2021-09-14 22:35:32 -07:00
Henrik Rydgård
a7859cfd2a Fix some comments and a string 2021-08-18 09:28:17 +02:00
Henrik Rydgård
928bc88b01 Rename Unthrottle to Fast-forward globally 2021-08-18 09:28:13 +02:00
Unknown W. Brackets
6f9f9f5f2a HLE: Ignore flip time in syscall stats.
Don't want to count flip timing as the slowest thing, when it happens
inside sceDisplaySetFramebuf (immediate.)
2021-08-14 20:18:06 -07:00
Henrik Rydgård
5859596b95 Make the "Running Slow" warning a bit more lenient.
Might help #12024, or at least the annoying unnecessary warning.

Our audio mixer is able to cover for 97% speed by stretching the sound
anyway, so I think there's not much point in a visually loud warning
until it drops below that.
2021-07-11 11:09:05 +02:00
Henrik Rydgård
93fd62f54b
Merge pull request #13832 from unknownbrackets/events
SaveState: Make event restoring more obvious
2021-02-15 23:39:42 +01:00
Unknown W. Brackets
f32f89dd90 Global: Remove some unused variables. 2021-02-15 11:59:45 -08:00
Unknown W. Brackets
06f8ab5a49 SaveState: Make event restoring more obvious.
We still must restore all events, but everything can be taken care of
during the save state load.
2020-12-28 13:29:19 -08:00
Henrik Rydgård
d4c02ccc1c Address feedback about recent changes
Thanks unknown.
2020-10-19 22:50:31 +02:00
Henrik Rydgård
2127524b35 Fix a couple of issues with #13477, found by aliaspider.
Might help #13494 and other freezing issues.
2020-10-12 23:00:06 +02:00
Henrik Rydgård
e97baa503a Avoid a division in time_now_d(). Minor optimizations. 2020-10-10 19:05:46 +02:00
Henrik Rydgård
0e3a84b4a8 Move most GPU things to Common.
It works after the move, on Windows and Android at least.

Deletes the D3DX9 shader compiler loader, which was not used.
2020-10-04 23:39:02 +02:00
Henrik Rydgård
f01ba6dc84 Move NativeApp.h to Common/System, split into NativeApp.h and System.h
Buildfix
2020-10-04 11:42:16 +02:00
Henrik Rydgård
821817e6d4 Move the profiler to Common 2020-10-04 11:42:16 +02:00
Henrik Rydgård
ff8148dd92 Move native/util, native/data and native/i18 to Common/Data.
Also move colorutil.cpp/h

linking build fix experiment

Delete a bunch of unused CMakeLists.txt files

CMakeLists.txt linking fix

Don't include NativeApp.h from any headers.

Android.mk buildfix

Half of the UWP fix

Buildfix

Minor project file cleanup

Buildfixes

Guess what? More buildfixes!
2020-10-04 07:28:29 +02:00
Henrik Rydgård
054acf768c Don't cache time in a variable.
A little weirdness in the code that has stuck around for a long, long
time. It's really not necessary and mostly just confusing.
2020-09-24 23:52:43 +02:00
iota97
fe86f257b5 Cache 60 FPS requirement 2020-09-15 07:49:01 +02:00
iota97
0c885db052 User chain support 2020-09-13 21:48:00 +02:00
Henrik Rydgård
ccc0331279 Move timeutil to Common. (Experiment to see how much work it is to move these). 2020-08-15 20:53:08 +02:00
Henrik Rydgård
b43698a13d Remove most instances of base/logging.h from Common, Core, GPU, more 2020-08-15 19:08:44 +02:00
Unknown W. Brackets
b8342fb8ec SaveState: Rename ChunkFile files to Serialize.
Makes more sense and less weird than ChunkFileDoMap, etc.
2020-08-10 08:04:05 +00:00
Unknown W. Brackets
1dc5ee424b SaveState: Split out Do types to reduce headers. 2020-08-10 08:03:44 +00:00
Unknown W. Brackets
4b4e3432cd SaveState: Split Do() into a separate header. 2020-08-10 08:03:41 +00:00
Henrik Rydgård
d57edfbdac Rename FramebufferCommon.cpp/h to FramebufferManagerCommon.cpp/h for consistency 2020-08-03 23:17:22 +02:00
Unknown W. Brackets
4ef63843d2 Display: Allow unthrottle to skip only flipping.
Before, it either flipped continuously, or forced frameskip on.  This
makes it so you can still draw frames, but skip actual flips.

This is useful when games draw things only in a single frame and reuse
later.  It's also useful when measuring speed improvements if you already
get 100% speed on a device.
2020-07-19 13:57:04 +02:00
Henrik Rydgård
1897eed9b4 More buildfixes 2020-07-18 21:43:13 +02:00
Henrik Rydgård
a722dfe0fb Formalize "core excpetions" as a concept 2020-07-12 15:25:21 +02:00
Henrik Rydgård
df6f216056 Disable the "Duplicate frames" feature if frameskip != 0. Works around / Fixes #13068 2020-06-28 22:20:22 +02:00
Henrik Rydgård
788b8a29d6 Fix the logic around postEffectRequiresFlip so duplicateFrames doesn't require a post shader. 2020-03-17 13:10:43 +01:00
Unknown W. Brackets
a6edf70aa0 Display: Update latched fbaddr on immediate update.
This is needed for the next sceDisplayGetFramebuf() to return the right
value.  This is why it didn't seem to match tests.
2020-03-15 19:13:41 -07:00
Henrik Rydgård
d385096599 Add option to improve frame pacing through duplicate frames if framerate is below 60hz.
Should help #9736, and fixes #12325.
2020-03-15 17:33:16 +01:00
Unknown W. Brackets
6652fe261f PPGe: Use TextDrawer for save UI if available.
This should result in better spacing for non-Latin characters, and less
missing letters.  Basically the same benefits as for the UI.
2020-03-10 21:30:53 -07:00
Unknown W. Brackets
cebcfb1bbd GPU: Use old frame when presenting a skip.
If we flip using a skipped frame, we may show an even older frame causing
weird flickering.
2020-03-01 13:55:28 -08:00
Unknown W. Brackets
566e46d70c Vulkan: Allow alt speed above 60 with vsync.
Enabling frameskip when needed.  Also don't enable frameskip when it's not
needed, such as OpenGL on Windows with >100% alt speed.
2020-03-01 07:44:06 -08:00
Henrik Rydgård
2ec82951a0
Merge pull request #12659 from unknownbrackets/vsync
Support vsync in all hardware backends, support runtime update
2020-03-01 09:52:14 +01:00
Unknown W. Brackets
2a3fd05651 Vulkan: Present using FIFO for vsync.
This allows the setting to be changed at runtime in Vulkan too.

Should help #10105.
2020-02-29 22:48:59 -08:00
Unknown W. Brackets
ce694da5ff UI: Separate sleep time in frame time graph.
It's useful to know how much of the frame time is active vs inactive.
2020-02-17 11:29:32 -08:00
iota97
90ff68e6c9 Framegraph in devmenu 2020-02-11 08:19:30 +01:00
Unknown W. Brackets
5009698cc0 Core: Use a shared_ptr for i18n categories.
This does not make them thread safe, but it reduces the chances of a crash
a bit (see #12594.)
2020-02-09 07:35:16 -08:00
李通洲
55bb58e13e
NativeApp: add System_GetPropertyFloat all the places 2020-02-04 09:20:34 +08:00
Unknown W. Brackets
bc4a203fcf Power: Correct hz on update and improve resched.
It only reschedules when the PLL changes, which changes in steps.  This
also reads back much more accurate Mhz for each of PLL, CPU, and bus.
2019-04-14 14:51:35 -07:00
Unknown W. Brackets
11be1e7a67 Core: Fix lag sync on game start / after pause.
Fixes #11189.  It was often stuck thinking it was constantly running over,
needed a reset on large delay.
2019-02-19 03:09:42 -08:00
Henrik Rydgard
38a2d83aa8 Partially revert #10456 (avoid limit FPS without a clear).
It's a pretty gnarly hack-upon-a-hack. Better to remove the original hack (limit fps) in the general case.
2019-02-06 18:31:02 +01:00
Henrik Rydgard
47a9145355 Remove iForceMaxEmulatedFPS and replace with a compat setting for the two games that really need it.
Takes care of one setting listed in #8171 "Options to remove"
2019-02-06 15:03:15 +01:00
mrfixit2001
d9ad57e918
Move comments in function to be more relevant 2018-11-04 13:33:42 -05:00
root
c19d3fe06a MRFIXIT2001: This patch adds a second frameskip setting, one for setting the # of frames to skip, one for setting the % of frames to skip based off fps 2018-11-03 01:33:41 +00:00
Unknown W. Brackets
014d9ddead Display: Resched interrupt before vblank threads.
Otherwise, we may first schedule to a woken thread, and then immediately
reschedule to the interrupt.  Each reschedule costs ticks, and it doesn't
look like this should cause two reschedules.

Improves #11414, Breath of Fire 3 frame flicker.
2018-10-07 14:41:08 -07:00
Unknown W. Brackets
c10b2035b5 Debugger: Prevent record with no commands.
Should cut down on empty dumps, at least.
2018-09-01 09:51:04 -07:00
Unknown W. Brackets
95f270778e Core: Allow toggle between 2 custom speeds.
In addition to virtual keys for each speed separately.
2018-06-23 10:59:18 -07:00
Unknown W. Brackets
d33b8643cb Display: Prevent delaying flips inside interrupts.
It causes us to run out of idle threads, and doesn't even make sense.
2018-05-08 18:32:25 -07:00