Commit graph

350 commits

Author SHA1 Message Date
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
Henrik Rydgård
b6472b562b
Revert "Limit the flip delay in the other direction to try to work around #10763." 2018-05-02 10:07:37 +02:00
Henrik Rydgård
5f9767d19e Remove misleading log 2018-04-29 09:45:34 +02:00
Henrik Rydgård
687b5f92b1 Limit the flip delay in the other direction to try to work around #10763. 2018-04-20 11:49:38 +02:00
Henrik Rydgård
c1e05ae861 Let's not do immediate flips in non-buffered. Should help #10395 2018-03-11 17:42:16 +01:00
Unknown W. Brackets
f9750dd137 Display: Avoid limiting FPS without a clear.
A bit of a dirty heuristic to avoid the slowdown in #8538.
2017-12-26 19:37:40 -08:00
Unknown W. Brackets
1776726bd6 Display: Only reapply state on load.
Shouldn't be needed on save.
2017-12-09 21:54:48 -08:00
Unknown W. Brackets
6f99383733 Display: Reset cycle counter on load state. 2017-12-09 21:53:26 -08:00
Henrik Rydgård
54ff4c8822 Avoid multiple flips per frame, fixes immediate flip for God of War 2017-12-06 14:29:08 +01:00
Henrik Rydgård
4c720631c1 Add mitigation for games like GTA that never call sceDisplaySetFramebuf 2017-12-06 14:29:08 +01:00
Henrik Rydgård
522de63eed Flip immediately if that's OK. This can save up to a frame of graphics latency, in games that display "immediately" instead of latched. 2017-12-06 14:29:08 +01:00
Unknown W. Brackets
b36a2c608b Display: Correct max FPS limiting skew.
We were letting a percentage of too frequent flips through, causing
sometimes much higher FPS still.  Improves performance in GoW.
2017-12-03 07:01:05 -08:00
Unknown W. Brackets
79cb51aa91 UI: Show slow message based on refresh rate.
It was always showing because it wasn't divided by 1000.
2017-07-01 16:21:47 -07:00
zminhquanz
7347c28464 Fixes 2017-06-15 21:43:41 +07:00
zminhquanz
e2c9fa7f57 Fixes 2017-06-15 12:15:56 +07:00
zminhquanz
bb5114bc84 Add 1 line 2017-06-12 13:41:04 +07:00
zminhquanz
98586e0af8 Oops 2017-06-11 20:42:54 +07:00
zminhquanz
1fb31c73cb Fix running slow message , it's always show when game run stable above 98% speed 2017-06-11 19:26:17 +07:00
Unknown W. Brackets
82beb726fc GE Debugger: Record init state and display buf.
Some things are now visible, but still drawing wrong...
2017-06-04 10:38:52 -07:00
Henrik Rydgård
6d58a8d8f6 Move up Software Rendering to Rendering where it belongs. Makes it easier to turn it off if enabled by accident. Also warn if used and it runs slow. 2017-05-18 14:56:10 +02:00
Henrik Rydgård
70b000bba7 Remove slowness warning if software renderer is enabled, it'll show on almost everything. 2017-05-16 12:27:40 +02:00
Henrik Rydgard
6313d2a7af Make the slow framerate warning yellow. Don't show it if running at "alternate speed". 2017-04-03 20:58:51 +02:00
Unknown W. Brackets
51fe978fe1 Core: Clear debug stats on frame start.
This way we can log drops and debug stats at the same time - oops.
2017-04-02 14:49:18 -07:00
Henrik Rydgård
f011ac39bf Merge pull request #9496 from unknownbrackets/idle-timing
Core: Reduce frame idle delay
2017-03-25 08:55:47 +01:00
Unknown W. Brackets
1fdf7c5373 UI: Skip game bg lookup without game.
This avoids trying to identify a file without a name.
2017-03-24 22:15:22 -07:00
Unknown W. Brackets
cf37da47ba Core: Reduce frame idle delay.
Otherwise we only have a single vblank of time left.  Sometimes that's not
enough.  Effectively, this makes us only sleep one vblank at a time.
2017-03-24 21:55:24 -07:00
Henrik Rydgård
33db883024 Merge pull request #9492 from unknownbrackets/frame-drops
Allow debug logging of frame drops
2017-03-24 20:37:18 +01:00
Unknown W. Brackets
01703f7ffc Core: Add UI option to enable frame drop logging. 2017-03-23 19:27:16 -07:00
Unknown W. Brackets
47565e1a9e Core: Add a feature to log stats on any frame drop. 2017-03-23 19:02:19 -07:00
Henrik Rydgard
ff2b6b3fca Assorted cleanup, UWP memory map fixes. PSPFlower runs in both 32-bit and 64-bit. 2017-03-23 10:02:28 +01:00