Commit Graph

2660 Commits

Author SHA1 Message Date
Henrik Rydgård
a32249a3cf Move DebugOverlay rendering to the overlay screen, allowing drawing it on top of the menu 2023-08-03 16:19:18 +02:00
Henrik Rydgård
fc6879674e Refactor overlays into an enum 2023-08-02 13:03:04 +02:00
Henrik Rydgård
ffd5e57a20 Vulkan: Don't use multithreaded rendering if frames-in-flight is set to 1
It has no benefit, and loses by a few percent in simple benchmarking.
2023-08-01 21:08:07 +02:00
haorui wang
ec4927069e 1. remove some unused code
2. add some missing header
3. fix error address offset operation
2023-07-30 12:31:31 +08:00
Henrik Rydgård
b118e25b6a Vulkan: Make multithreaded rendering an option.
Multi-threaded rendering is good for smoothing out performance spikes
and increasing performance on low-power devices. However, the way we use
it it doesn't benefit latency (input lag) at all, rather the opposite.

So make it an option.
2023-07-23 22:06:01 +02:00
Henrik Rydgård
fbd980bee6 Get basic Naett requests to work (the store works in https mode) 2023-07-21 10:28:17 +02:00
Henrik Rydgård
83e3cf7872 Add winhttp.lib dependency 2023-07-21 10:27:40 +02:00
Henrik Rydgård
85f5136a81 Add a GetProperty query for the git version 2023-07-20 10:57:52 +02:00
Henrik Rydgård
cd681a698d
Merge pull request #17661 from Nemoumbra/debugger-ui
Added new Windows UI Debugger window
2023-07-18 15:24:32 +02:00
Nemoumbra
5ca099a747 Scan/remove -> edit symbols 2023-07-17 16:38:24 +03:00
Henrik Rydgård
2537f76277 UI: Add a basic FileChooserChoice view 2023-07-16 12:14:40 +02:00
Henrik Rydgård
bf3acd9208 Fix some minor login issues, center login dialog on Windows. 2023-07-11 10:16:58 +02:00
Henrik Rydgård
c17b84b3d4 Implement RetroAchievements challenge mode restrictions, and fix related bugs 2023-07-08 21:55:32 +02:00
Nemoumbra
cdba944643 Updated the resource file 2023-07-08 22:40:11 +03:00
Nemoumbra
23cbddd3c6 Logical error fixed and func list properly updated now 2023-07-08 22:40:11 +03:00
Nemoumbra
abd2b21d60 Added the logic to the ScanRemoveWindow 2023-07-08 22:40:11 +03:00
Nemoumbra
b8dbe02010 Added a new window class 2023-07-08 22:39:58 +03:00
Henrik Rydgård
e1060c80ff
Merge pull request #17671 from hrydgard/android-message-cleanup
Android string message cleanup
2023-07-06 19:06:14 +02:00
Henrik Rydgård
b15b283600 Buildfixes 2023-07-06 18:40:06 +02:00
Henrik Rydgård
84fffec4f3 Switch all NativeMessageReceived to System_PostUIMessage 2023-07-06 17:26:02 +02:00
Henrik Rydgård
77dff18701 XInputDevice: Dirty-track axes, for easier axis event debugging 2023-07-06 15:47:36 +02:00
Henrik Rydgård
eb21a2e6c9 Break out the OSD data holder from Common/System/System.h, into OSD.cpp/h 2023-06-30 17:15:49 +02:00
Henrik Rydgård
07e6543f6b Windows for ARM configuration fixes, Android.mk fix 2023-06-26 10:01:41 +02:00
Henrik Rydgård
84e9a85e0f Things link now. Let's see if it works.. 2023-06-26 10:01:40 +02:00
Henrik Rydgård
c0f0c05417 rcheevos initial build setup and basic scaffolding 2023-06-26 10:01:40 +02:00
haorui wang
10c2f055b4 use CommonWindows.h and remove unnecessary include 2023-06-25 21:12:45 +08:00
haorui wang
fa336edcb6 [what] update cmake compilation configuration in windows
[why] support some other IDE like VScode or clion

[how]
1. update CMakeLists.txt according to *.vcxproj
2. include some header like `windows.h` to support raw cmake compilation
3. exclude libcmt.lib
2023-06-24 21:36:46 +08:00
Henrik Rydgård
38f174eab4 Add query for system text input 2023-06-22 08:58:30 +02:00
Henrik Rydgård
2708f0b93e Add a new "System" request for a username-password dialog box 2023-06-22 08:58:29 +02:00
Henrik Rydgård
7cc8c6cea4 OSD: Add semantics, move the the OSD state to common (while keeping the renderer in the UI). 2023-06-20 14:40:46 +02:00
Henrik Rydgård
01cea7f088 Pass uvScale in as an argument to the vertex decoder
Cleaner than overwriting/restoring gstate_c.uvScale in the decoder
loop. A small cleanup I've been wanting to do for ages.

Expecting a negligble perf boost if any.
2023-06-12 20:25:18 +02:00
Henrik Rydgård
9db9fec898 VFPU: Some micro-optimizations. Don't fall back to interpreter path for vexp/vlog/vrexp. 2023-06-04 11:28:33 +02:00
Henrik Rydgård
2675d6ea43
Input event and device enums (#17514)
* Switch deviceID from int to enum InputDeviceID, globally

* Switch axisId to enum InputAxis

* Change int keycodes to InputKeyCode where it makes sense.

* SDL input buildfix

* SDL keycode buildfix

* Switch on enum warning fixes

* Qt keycode buildfix

* iOS keycode buildfix

* UWP keycode buildfix

* More iOS buildfix

* More iOS buildfix

* Update DinputDevice.cpp
2023-05-26 18:40:13 +02:00
Henrik Rydgård
0a069f39c9 Windows: Make double-click-for-fullscreen less oversensitive. 2023-05-25 09:28:55 +02:00
Henrik Rydgård
67a35d3476
Merge pull request #17356 from unknownbrackets/minor-cleanup
Cleanup some more string formats, mostly in debugger
2023-05-23 08:29:23 +02:00
ThirteenAG
4bb9779abd added WM_USER_GET_EMULATION_STATE message 2023-05-15 16:38:06 +03:00
Henrik Rydgård
7f2c03156f Fix the skip buffer effects menu item not having immediate effect (wrong invalidation).
Fixes part of #17404
2023-05-07 00:00:01 +02:00
Unknown W. Brackets
4ecd0a68f7 Windows: Fix initial window show for all displays. 2023-05-06 08:56:34 -07:00
Unknown W. Brackets
6da10463f9 Debugger: Make reg names safer, stop using v000.
Better to use S000, etc. as that's more clear throughout.
2023-04-29 09:48:33 -07:00
Henrik Rydgård
6945deec01 Replace a LOT of sprintf with snprintf, and a few strcpy with truncate_cpy 2023-04-28 21:04:05 +02:00
Henrik Rydgård
e1d4a19ce1 Add the basics of the Emulation menu to the Mac build 2023-04-28 15:16:57 +02:00
Henrik Rydgård
eeaeb8b7cc Add "Open Memory Stick" to File menu on Mac 2023-04-26 10:18:04 +02:00
Henrik Rydgård
d782a49229 Enable building a gold version for mac. 2023-04-19 15:06:02 +02:00
Henrik Rydgård
39d7651866
Merge pull request #17270 from unknownbrackets/debugger-cond
Debugger: Add memory breakpoint conditions
2023-04-12 23:13:26 +02:00
Henrik Rydgård
178fe27263
Merge pull request #17269 from unknownbrackets/debugger-minor
Debugger: Avoid unaligned reads in expressions
2023-04-12 10:38:08 +02:00
Unknown W. Brackets
9cebfc31b3 Debugger: Avoid unaligned reads in expressions.
Potentially, a watch or break condition could crash if it was unaligned
between mirrors.  This might happen if it's not the condition you wanted,
especially.  Play it safe.
2023-04-12 01:14:30 -07:00
Unknown W. Brackets
39bf8956ca Debugger: Windows UI for memory bp conditions. 2023-04-12 01:07:56 -07:00
Unknown W. Brackets
1e84047583 Debugger: Cleanup Windows breakpoint dialog.
Just cleanup of how its callback works.
2023-04-12 01:07:56 -07:00
Nemoumbra
5bf22c15d0 sceKernelPrintf improvement, QOL adjustments 2023-04-11 15:47:50 +03:00
Unknown W. Brackets
5629b01dc9 Debugger: Accept format for watches. 2023-04-09 16:39:25 -07:00
Henrik Rydgård
7f60acf898
Merge pull request #17259 from unknownbrackets/debugger-minor
A few more debugger things
2023-04-09 22:25:04 +02:00
Unknown W. Brackets
2374696d65 Debugger: Show vector load/store previews. 2023-04-09 11:09:36 -07:00
Unknown W. Brackets
f31a7a0582 Debugger: Update VFPU dialog more evenly.
Was previously not updating when you hit a breakpoint, stepped out, etc.
2023-04-09 10:12:54 -07:00
Unknown W. Brackets
be8a173026 Debugger: Clear button flags on lost focus.
This mouse tracking is kinda ugly.  This works around an issue where when
you removed a custom condition, the highlight would stick as if you were
dragging.
2023-04-09 10:11:37 -07:00
Henrik Rydgård
b4c766f756
Merge pull request #17256 from unknownbrackets/debugger-watch
Debugger: Add named watch expressions
2023-04-09 10:23:25 +02:00
Unknown W. Brackets
99bdb4f18a Debugger: Periodically refresh watches to be safe. 2023-04-09 00:52:03 -07:00
Unknown W. Brackets
c0fc2e65e0 Debugger: Highlight changed watches. 2023-04-09 00:47:36 -07:00
Unknown W. Brackets
85a071568c Debugger: Allow adding/removing watches. 2023-04-09 00:35:37 -07:00
Unknown W. Brackets
879e91dbf6 Debugger: Add empty watch tab for debugger.
Currently, there's nothing shown here.
2023-04-09 00:01:42 -07:00
Unknown W. Brackets
f708ab2965 Debugger: Add delete breakpoint to context menu. 2023-04-08 23:29:59 -07:00
Henrik Rydgård
12bd0ed26d Restore the shared_ptrs 2023-04-07 10:35:01 +02:00
Henrik Rydgård
ee6234ecb6 I18N: Switch to getting categories by index instead of by string lookup
Also gets rid of the shared_ptr usage, and generally makes things nicer.

Needed for later config refactorings, good to get in early.
2023-04-07 10:35:01 +02:00
Henrik Rydgård
8f96ec371e Rename iBufFilter -> iDisplayFilter 2023-04-05 09:34:18 +02:00
Henrik Rydgård
d996fb74d4 MSVC: Set language standard to c++17.
Noticed that we were getting some new warnings after merging the
constexpr stuff.
2023-04-02 17:55:15 +02:00
Henrik Rydgård
d1e21ab896 Fix return value from control mapper Key. Fixes volume key issue on Android. 2023-04-02 10:41:26 +02:00
Henrik Rydgård
c1b5aed9b7 Cleanup, confine g_controllerMap access to KeyMap.cpp 2023-04-01 20:28:42 +02:00
Henrik Rydgård
0e1c42ce70 Plumb multimappings all the way through. 2023-04-01 13:50:57 +02:00
Henrik Rydgård
3c9e968ca0
Merge pull request #17206 from unknownbrackets/debugger
Debugger: Fix memory viewer, inverted check
2023-03-29 08:07:39 +02:00
Unknown W. Brackets
a4d13d5f75 Debugger: Fix memory viewer, inverted check. 2023-03-28 22:52:01 -07:00
Nemoumbra
4a54409f09 Added new option "Copy Float (32 bit)" to Windows Debugger UI 2023-03-28 13:18:20 +03:00
Unknown W. Brackets
441c940fa9 UI: Remove some unnecessary Host.h includes. 2023-03-25 17:19:21 -07:00
Unknown W. Brackets
55c8b5b601 Windows: Save console position on shutdown. 2023-03-25 17:12:44 -07:00
Unknown W. Brackets
089580d09a Windows: Always detach request threads.
No point having a global if it's always detached after use.
2023-03-25 17:12:44 -07:00
Henrik Rydgård
9a6a23110b Fix controller polling when there's no Host. Fixes #17187 2023-03-26 00:33:07 +01:00
Henrik Rydgård
d586ec0d5e Don't create Host objects except in headless/unittest 2023-03-25 10:47:01 +01:00
Henrik Rydgård
7d0eac730f Remove WindowsHost 2023-03-25 10:43:00 +01:00
Henrik Rydgård
143f499d11 Remove a few of the Host implementations 2023-03-25 10:37:49 +01:00
Henrik Rydgård
9e125eeba7 Remove NotifyUserMessage from Host 2023-03-25 10:32:09 +01:00
Henrik Rydgård
7c5cc8cafd And ToggleDebugConsoleVisibility. 2023-03-24 21:43:45 +01:00
Henrik Rydgård
56c26eef4d Remove the old AsyncFileDialog thingy 2023-03-24 21:32:20 +01:00
Henrik Rydgård
a73ac49d59 Move the non-working "Create desktop shortcut" stuff to the request framework 2023-03-24 20:05:48 +01:00
Henrik Rydgård
e71be8af2e Remove PollControllers from host. Break out a WindowsInputManager from WindowsHost. 2023-03-24 19:57:24 +01:00
Henrik Rydgård
5a5779dcd6 Remove symbol-map related functions from Host 2023-03-24 18:08:31 +01:00
Henrik Rydgård
5af92cfca0 Cleanup 2023-03-24 17:52:56 +01:00
Henrik Rydgård
1250692657 Convert host->SetWindowTitle to a request 2023-03-24 17:52:01 +01:00
Henrik Rydgård
a5fdf3d05b Add samplerate argument to NativeMix 2023-03-24 14:48:53 +01:00
Henrik Rydgård
21bd50dcb0 Remove polling requirement from DSound audio backend
Might as well sleep for a short period instead, same effect really.
2023-03-24 10:40:10 +01:00
Henrik Rydgård
e21867315b Fix browsing for Cheat DB files. Easy now after the refactor! 2023-03-23 10:18:21 +01:00
Henrik Rydgård
b440e28e38 Remove System_SendMessage!
iOS, Qt buildfixes
2023-03-22 23:52:51 +01:00
Henrik Rydgård
5a55fd5fd3 And replace "graphics_restart", "toggle_fullscreen", etc 2023-03-22 23:52:15 +01:00
Henrik Rydgård
410b35fba3 Get rid of "finish" and "setclipboardtext" messages, replace with requests. 2023-03-22 22:17:26 +01:00
Henrik Rydgård
b7350f3cbf Fix folder browser on Android and Windows 2023-03-22 19:25:35 +01:00
Henrik Rydgård
70f0ac04af Port the file browser spawned by the Load button to the new request stuff 2023-03-22 15:36:14 +01:00
Henrik Rydgård
47ae31e293 Minor cleanups, drive-by fix for folder browser on iOS 2023-03-22 15:36:14 +01:00
Henrik Rydgård
e9f5394f59 Move the Windows open file dialog to the new system, switch the background image selector over. 2023-03-22 14:53:07 +01:00
Henrik Rydgård
de064e210e Replace the inputbox queue with a more generic RequestManager. 2023-03-22 12:41:11 +01:00
Henrik Rydgård
3852d4f698 Make a little system to replace the InputBox message queue with something more generic 2023-03-22 11:35:57 +01:00
Henrik Rydgård
94debfbf36 Rename screenManager to g_screenManager, readme update 2023-03-22 09:44:44 +01:00
Henrik Rydgård
47f063550a Remove InitGraphics/ShutdownGraphics from Host, except for headless 2023-03-21 22:47:20 +01:00
Henrik Rydgård
2786786c9f Avoid Host in Windows graphics init 2023-03-21 14:07:27 +01:00
Henrik Rydgård
f5472ba0d8 Cleanup up unnecessary audio init functions 2023-03-21 13:39:02 +01:00
Henrik Rydgård
f60f5ccaea Move SetDebugMode notification 2023-03-21 13:39:00 +01:00
Henrik Rydgård
fc1732cc22 Move NotifySwitchUMDUpdated 2023-03-21 13:37:19 +01:00
Henrik Rydgård
c92a4acb40 Move NotifySymbolMapUpdated to System_Notify 2023-03-21 13:37:19 +01:00
Henrik Rydgård
dda8635c89 Move three notifications out of Host 2023-03-21 13:37:19 +01:00
Henrik Rydgård
06fcc9ccd7 Add System_Notify 2023-03-21 13:37:16 +01:00
Henrik Rydgård
ac5855cdf8 Remove CanCreateShortcut function 2023-03-21 12:23:01 +01:00
Henrik Rydgård
d3955b42bb Rename some system functions, merge the Launch* ones.
android launchurl buildfix
2023-03-21 12:22:59 +01:00
Henrik Rydgård
a9eaa4fdc8 Get rid of an ifdef 2023-03-21 10:24:36 +01:00
Unknown W. Brackets
6bf5827407 Windows: Fix small atom leak. 2023-03-15 22:02:36 -07:00
Henrik Rydgård
53172eff63 Renaming and file splitting 2023-03-06 16:42:50 +01:00
Henrik Rydgård
3b39e9e068 Turn the VFS into a class, to be able to reuse it for other purposes. 2023-03-06 16:42:47 +01:00
Henrik Rydgård
82097b4a3b Implement NopInstruction feature in debugger
See #16975
2023-03-02 14:30:53 +01:00
Henrik Rydgård
f55782558c Debugger: Copy Address will now copy addresses for the whole selection 2023-03-02 13:59:07 +01:00
Henrik Rydgård
8b431b39ba
Wrap the display globals in a struct (#16998)
* Wrap the display globals in a struct

Makes it easier to search/replace these, for future refactorings.

* Some renaming

* Qt buildfix, also fix the Qt build on Mac (got broken with battery changes)

* Attempt at buildfixing ios

* UWP buildfix
2023-02-25 13:09:44 +01:00
Nemoumbra
aab4a3034c Added new MainWindow menu item "copy PSP memory base pointer" 2023-02-24 23:54:45 +03:00
Nemoumbra
c6b44cd5d7 Update gitignore 2023-02-24 23:44:32 +03:00
Unknown W. Brackets
cbc1ed4bfe Debugger: Lock memory during stack walk.
In case of shutdown during it.
2023-02-22 21:14:33 -08:00
Henrik Rydgård
d65dae7185 Depth scale functions: Clean up the naming, add a failing test 2023-02-10 14:57:45 +01:00
Henrik Rydgård
6f9d6c6c5f New version of WM_USER_GET_BASE_POINTER 2023-02-06 13:49:00 +01:00
Sergey P
bf2cabb82c merge from upstream 2023-02-01 13:33:07 +03:00
Henrik Rydgård
e0db28899c Windows: Correct menu bar when dark mode is off 2023-02-01 00:05:40 +01:00
Henrik Rydgård
599bfed1b8
Merge pull request #16878 from hrydgard/selective-restore-to-default
Restore settings to default - let you choose what to reset
2023-01-31 23:10:00 +01:00
Henrik Rydgård
79e4a3d345 Windows: Clamp the reported refresh rate to 60, experiment for problem from #16725 2023-01-31 20:41:12 +01:00
Henrik Rydgård
c554f4e2b6 Allow restoring only settings, recents or controls to defaults.
Fixes #16381 , though could make even more granular later.

The only translation change was deleting one sentence from a longer
string - used Google Translate to assist me in removing the correct part
for a few of them, most were obvious. Hope they're all right.
2023-01-31 18:56:18 +01:00
Henrik Rydgård
c8dce81ff0
Merge pull request #16156 from hrydgard/opengl-thread-refactor
OpenGL threading refactor
2023-01-31 11:14:01 +01:00
Henrik Rydgård
b04dd81cba
Merge pull request #16704 from hrydgard/darkmode
Windows Dark Mode: initial support
2023-01-31 10:45:07 +01:00
Henrik Rydgård
cb16f193ec Fix the problem. Still need to leave the loop with SDL even if we supply a swap function. 2023-01-30 15:45:05 +01:00
Henrik Rydgård
436a3e0d61 Cleaner exit from emuthread, as used by OpenGL. Don't know how it worked before... 2023-01-30 11:49:31 +01:00
Henrik Rydgård
b62572a78f Refactor the framedata/GPU thread management. 2023-01-30 11:49:31 +01:00
Unknown W. Brackets
489411359e Common: Add cpu_features library. 2023-01-29 14:35:58 -08:00
Henrik Rydgård
4287365411 Update URLs, fix feedback from #16851 2023-01-29 00:25:27 +01:00
Serena
30f6296767 Remove some Windows + Qt stuff + meow 2023-01-27 19:12:41 +03:00
Sergey P
91aa6ad608 merge from upstream 2023-01-26 14:50:09 +03:00
Henrik Rydgård
b4a91dbce5 Disable dark mode in disasm window, and the scrollbar hack 2023-01-12 01:05:06 +01:00
Henrik Rydgård
3c0a5e4c4c Fix the white line 2023-01-12 01:01:03 +01:00
Henrik Rydgård
8037eaa456 Further dark magic, no pun intended. Now for the menu bar. 2023-01-12 00:41:25 +01:00
Henrik Rydgård
62e5a5dfc3 Rudimentary support for Windows Dark Mode. Still undocumented for Win32 apps, so ugly. 2023-01-12 00:41:25 +01:00
Henrik Rydgård
3bb260784c
Merge pull request #16725 from hrydgard/windows-ui-refresh-rate
Windows: Adjust window sleep interval in idle menus to refresh rate
2023-01-05 13:26:27 +01:00
Henrik Rydgård
14f45e3b44 Check for valid fields calling EnumDisplaySettings 2023-01-05 13:07:36 +01:00
Unknown W. Brackets
88489bf4cc Debugger: Fix out of bounds read for unsized copy. 2023-01-04 21:42:46 -08:00
Henrik Rydgård
e37be42a6c Windows: Adjust window sleep interval in idle menus to refresh rate
For smoother scroll animations if you have a high refresh rate monitor.
2023-01-04 16:33:00 +01:00
Henrik Rydgård
d750ffbc6b
Merge pull request #16701 from unknownbrackets/debugger-memview
Debugger: Allow copy of byte range from memview
2023-01-04 10:03:29 +01:00
Henrik Rydgård
ae99b797d7 Remove some bad float suffixes 2023-01-02 22:30:01 +01:00
Unknown W. Brackets
7c099dc764 Debugger: Allow copy of byte range from memview. 2023-01-01 23:02:12 -08:00
Unknown W. Brackets
bba748d627 Debugger: Handle memview select right click better.
Shouldn't reset if you click inside.  Also should basically ignore
modifiers, that's how it normally behaves.
2023-01-01 22:49:04 -08:00
Unknown W. Brackets
a7101b128f Debugger: Allow memview select with keyboard. 2023-01-01 22:37:53 -08:00
Unknown W. Brackets
f66818ba80 Debugger: Allow selecting a range in memory view. 2023-01-01 22:28:29 -08:00
Unknown W. Brackets
f8064c6763 Debugger: Cleanup memview members.
Was fairly inconsistent.  This code has not changed a lot in a long time,
so let's just do a single cleanup pass before some changes.
2023-01-01 21:47:39 -08:00
Henrik Rydgård
40386bca08
Merge pull request #16688 from unknownbrackets/debugger
Debugger: Correct check of pending list item
2022-12-31 19:39:28 +01:00