Commit Graph

2683 Commits

Author SHA1 Message Date
Nemoumbra
ef20a0ba34 Ctrl+X -> Ctrl+H for closing the bottom tabs 2023-09-07 14:39:15 +03:00
Henrik Rydgård
80a99a67d9 Control: Change internal interfaces to batch-process input axis updates
These naturally come in bunches on many platforms like Android, so lay
some groundwork to also handle them in bunches to minimize locking in
the future.

Linux buildfix
2023-08-31 11:55:53 +02:00
Henrik Rydgård
1025bbcf89 Log level/type: Use enum class instead of the awkward namespace trick.
Just a small cleanup I've wanted to do for a long time.
2023-08-25 11:48:59 +02:00
Henrik Rydgård
dfe187df1e Allow disabling HTTPS through the config file
Simply set:

```ini
[General]
DisableHTTPS = True
```

Added to help debug issue #17969
2023-08-24 21:28:30 +02:00
Henrik Rydgård
d2d8688e47 Add "Create frame dump" to the in-game developer menu (that can be enabled in dev settings)
Makes it possible to create one without connecting the websocket
debugger, even on non-Windows platforms.
2023-08-24 14:41:35 +02:00
Henrik Rydgård
60492ae579 Make System_ShowFileInFolder a "request"
Also makes support queryable.

Lets us remove the dummy implementations.
2023-08-24 14:22:35 +02:00
Henrik Rydgård
5b76615463 Cleanup and more sensible defaults for current directory 2023-08-18 15:04:20 +02:00
Henrik Rydgård
5acb421908
Merge pull request #17927 from hrydgard/path-creation-cleanup
Windows: Memstick directory creation cleanup
2023-08-18 13:51:42 +02:00
Henrik Rydgård
a8cbe060dc
Merge pull request #17926 from hrydgard/create-shortcut-windows
Windows: Fix "Create desktop shortcut" functionality
2023-08-18 13:20:22 +02:00
Henrik Rydgård
44d602ca7d Move InitSysDirectories to where it belongs and rename it. Plus warning fixes. 2023-08-18 13:03:32 +02:00
Henrik Rydgård
6f6ea4595a Windows: Split out Create... from InitSysDirectories, fixup uses 2023-08-18 12:46:40 +02:00
Henrik Rydgård
01f07c9f9c Windows: Fix "Create desktop icon" functionality
All it needed was to suffix the filename with .lnk correctly.
2023-08-18 10:49:00 +02:00
Henrik Rydgård
25f02d0227 Windows: Make switching UMD through "Emulation->Switch UMD" threadsafe 2023-08-18 10:29:10 +02:00
Henrik Rydgård
ef2d7a810a Add comments, move some stuff around, get rid of some indentation. No functionality change. 2023-08-15 18:34:06 +02:00
Henrik Rydgård
ff6e118fff Get rid of a lot of ifdefs around presentation mode. Instead, set things dynamically. 2023-08-14 11:02:29 +02:00
Henrik Rydgård
86fcb28d4d Remove "bool retainControl_" for simplicity. Not needed. 2023-08-13 18:40:35 +02:00
Henrik Rydgård
1ea11c233c Remove "SwapBuffers" from the GraphicsContext interface.
Buildfixes

More buildfix

headless buildfix

One more buildfix
2023-08-11 01:57:02 +02:00
Henrik Rydgård
ed9b033f7d D3D9/11: Move away from using context->SwapBuffers(), instead move present to draw_->Present(). 2023-08-11 01:57:02 +02:00
Henrik Rydgård
1bdbef487b D3D11: Pass the swapchain pointer into the thin3d context 2023-08-11 01:57:02 +02:00
Henrik Rydgård
be708e3e02 Move KeepScreenAwake to platform specific code. 2023-08-10 16:12:12 +02:00
Henrik Rydgård
96506544b7 Just some random driveby code cleanup 2023-08-10 10:28:25 +02:00
Henrik Rydgård
5533d5ec57 More lenient emoji check, remove unused variable 2023-08-06 17:17:24 +02:00
Henrik Rydgård
39d25ce91f D3D11: Allow setting the max frame latency 2023-08-04 11:53:51 +02:00
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