Commit Graph

9958 Commits

Author SHA1 Message Date
Steveice10
0165012ba4 core_timing: Allow configuring a fixed or random initial system tick value. (#7309)
* core_timing: Apply random base ticks value on startup.

* core: Maintain consistent base system ticks in TAS movies.

* frontend: Add setting to configure a fixed base system ticks value.
2024-01-07 09:38:02 -08:00
Steveice10
96aa1b3a08 memory: Fix order of checks in PhysicalToVirtualAddressForRasterizer. (#7328) 2024-01-06 22:49:32 -08:00
Steveice10
b2c740ee0e plg_ldr: Revert state back to static for now. (#7326) 2024-01-06 15:21:42 -08:00
Steveice10
bc352e8168 applet_manager: Fix checking if HLE applet exists. (#7325) 2024-01-06 15:21:35 -08:00
Steveice10
4f00eb20db add volume quicksetting with volume slider (#7307)
Co-authored-by: Jonas Gutenschwager <spam.saikai@googlemail.com>
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2024-01-06 10:30:22 -08:00
Steveice10
8b6a9b0dd8 dsp: Fix mask sizes in LoadComponent. (#7319) 2024-01-06 08:46:19 -08:00
GPUCode
62409f8139 kernel: Release thread resource limit in Thread::Stop (#7318)
* core: Config plg_ldr after its creation

* Also use service manager to retrieve the service

* thread: Release resource limit in Thread::Stop

* service: Undo plgldr change
2024-01-05 16:12:00 -08:00
Steveice10
0df72f3873 ir: Set ir:rst max sessions to 2. (#7317) 2024-01-05 14:21:30 -08:00
Steveice10
f2ee9baec7 core: Eliminate more uses of Core::System::GetInstance(). (#7313) 2024-01-05 12:07:28 -08:00
Steveice10
8e2037b3ff audio_core: Clean up AAC decoder infrastructure. (#7310) 2024-01-04 11:00:03 -08:00
Steveice10
c6bcbc02de frontend: Fix missing persistence for texture sampling setting. (#7305) 2024-01-02 12:05:22 -08:00
Steveice10
36db566428 qt: Add support for opening files directly on macOS. (#7304)
* Associate 3ds files with Citra in Info.plist

* qt: Add support for opening files directly on macOS.

---------

Co-authored-by: shinra-electric <50119606+shinra-electric@users.noreply.github.com>
2024-01-02 12:05:12 -08:00
SachinVin
9b147d3f9c framebuffer_layout.cpp mini refactor (#7300)
* framebuffer_layout.cpp: simplify FrameLayoutFromResolutionScale

- upright_screen seems to only be swapped width and height calculation, so it is replaced with std::swap
- Get rid of call to GetCardboardSettings, The FrameLayoutFromResolutionScale function is used for Screenshots and Video Dumping where we dont need 3D effects

* framebuffer_layout.cpp: Combine SideFrameLayout and MobileLandscapeFrameLayout into variants of LargeFrameLayout

* framebuffer_layout.{cpp,h}: rename maxRectangle to MaxRectangle, plus

minor documentation update

* clang-format
2024-01-02 00:52:03 -08:00
Steveice10
7dd9174d31 cheats: Use global cheat engine (#7291)
* cheats: Use global cheat engine

* cheats: Prevent wasted double-load of cheat file.

* android: Fix for cheat engine updates.

---------

Co-authored-by: GPUCode <geoster3d@gmail.com>
2024-01-01 12:49:08 -08:00
GPUCode
5a7f615da1 kernel: Update to use atmosphere macros and correct Result (#7242)
* kernel: Switch to atmosphere style macros

* code: Rename ResultCode to Result

* code: Result constants are lower case

* Address review comments

* core: Remove CASCADE_CODE

* R_TRY replaces completely

* core: Run clang format
2023-12-31 09:01:40 -08:00
Steveice10
811303ea54 kernel: Fix freeing shared memory with wrong region. (#7301) 2023-12-30 15:36:12 -08:00
Steveice10
5bcdcffd96 kernel: Add some missing state to process serialization. (#7295) 2023-12-28 08:25:46 -08:00
GPUCode
2bb7f89c30 video_core: Refactor GPU interface (#7272)
* video_core: Refactor GPU interface

* citra_qt: Better debug widget lifetime
2023-12-28 11:46:57 +01:00
Steveice10
602f4f60d8 boss: Implement some NsData header and read commands. (#7283)
* boss: Implement some NsData header and read commands.

Co-authored-by: Rokkubro <lachlanb03@gmail.com>

* boss: Move opening ext data to common function and improve logging.

---------

Co-authored-by: Rokkubro <lachlanb03@gmail.com>
2023-12-26 09:01:32 -08:00
Steveice10
3113ae6616 cfg: Only select preferred region once per instance. (#7284) 2023-12-26 09:01:16 -08:00
Steveice10
bd4ec251cd gsp_gpu: Implement TryAcquireRight and stub SetInternalPriorities. (#7285)
* gsp_gpu: Implement TryAcquireRight.

* gsp_gpu: Stub SetInternalPriorities.

* gsp_gpu: Move serialization logic into implementation.

* gsp_gpu: Replace UINT32_MAX with std::numeric_limits<u32>::max().
2023-12-25 08:29:17 -08:00
Daniel López Guimaraes
b6b98af105 cecd: Stub GetCecInfoEventHandleSys (#7278)
This allows usage of the LLE news sysmodule.
2023-12-22 19:52:27 -08:00
James Forward
60a280af24 feat(android-hotkeys): Introduce hotkey support for Android app and add missing hybrid layout (#7241)
* feat(android-hotkeys): Introduce hotkey support for Android app

* android: Fix settings not saving for layout options - screen swap + layout.

* android: Fix `from` method to default to "DEFAULT" if passed an invalid method (and also not be based on ordering)

* android: PR response - name to togglePause
2023-12-22 19:52:12 -08:00
Steveice10
178e602589 misc: Improve defaults for macOS and handling of missing audio backends. (#7273)
* misc: Improve backend defaults for macOS.

* audio_core: Improve handling of missing audio backends.
2023-12-22 11:38:06 -08:00
Daniel López Guimaraes
dccb8f6b17 gamemode: Fix compile issues (#7276)
The Linux build fails to compile because gamemode will try to link
against `common` when it's not needed.
2023-12-22 19:29:44 +05:30
Steveice10
f177433d41 cfg: Set sound mode to stereo by default. (#7268) 2023-12-21 02:34:22 -08:00
Charles Lombardo
71b88c4c1f android: Disable focus color on input overlay (#7271) 2023-12-21 09:15:08 +01:00
Tobias
c7e9f8449e Port yuzu-emu/yuzu#11946: "Enable (Feral Interactive) Gamemode on Linux" (#7245) 2023-12-20 06:08:07 -08:00
Steveice10
2e369c03b8 ci: Revert back to unzipped Android artifacts. (#7258) 2023-12-19 18:51:47 -08:00
PabloMK7
a47d8a7b4d Fix incorrect service name in SOC_U::GetService (#7261) 2023-12-19 08:04:28 -08:00
CasualPokePlayer
02ba5c652b Add circle_pad_old_* to savestates. (#7250)
This is particularly relavant for TASing, not savestating these values will often cause dropped inputs on loading a savestate, due to the previous old circle pad values being used rather than the ones used during the savestate.
For casual usage, this likely doesn't have much effect compared to the previous code, considering a casual user is probably not likely to care if inputs on the first frame of loading a savestate is dropped or not.
2023-12-19 00:43:44 -08:00
Charles Lombardo
762ddfd07b Android UI Overhaul Part 4/4 (#7235)
* android: Rework cheats

Reworks cheats to use the navigation component, kotlin, and a tweaked layout for a better tuned look.

* android: Convert remaining files to kotlin and add overlay home button

* android: Remove Picasso dependency

* android: Fix home option layout centering

* android: Adjust logo size in-app
2023-12-17 17:32:30 -08:00
PabloMK7
d680b79725 Implement some missing SOC functionality (#7176)
* Implement some missing SOC functionality

* Add LOG_POLL macro for debugging

* Fix compilation

* Temporary fix for Android

* Temporary fix for Android (for real)

* Apply suggestions

* Add stubbed notice to android sockatmark

* Apply suggestions
2023-12-17 08:50:24 -08:00
GPUCode
2b20082581 common: Miscellaneous cleanups (#7239)
* code: Remove some old msvc workarounds

* android: Upgrade to NDK 26

* Allows access to newer libc++

* common/swap: Make use of std::endian

Allows removing a bunch of defines in favor of a two liner.

* common: Remove misc.cpp

* GetLastErrorMsg has been in error.h for a while and also helps removing a depedency from a hot header like common_funcs

* common: use SetThreadDescription API for thread names

* common: Remove linear disk cache

* Has never been used?

* bit_set: Make constexpr

* ring_buffer: Use feature macro

* bit_set: Use <bit> and concepts

* gsp_gpu: Restore comment

* core: Ignore GCC warning

---------

Co-authored-by: Lioncash <mathew1800@gmail.com>
Co-authored-by: Liam <byteslice@airmail.cc>
2023-12-14 16:26:33 +02:00
Tobias
15ea0c6336 Port yuzu-emu/yuzu#12100: "translations: Add android translations to transifex config" (#7246)
Port of https://github.com/yuzu-emu/yuzu/pull/12100.

Co-authored-by: Charles Lombardo <clombardo169@gmail.com>
2023-12-14 04:57:08 +01:00
Steveice10
9a6d15ab74 ci: Only use Linux clang for app image build. (#7244)
* ci: Only use Linux clang for app image build.

* build: Re-add -Wno-attributes for GCC 11.
2023-12-12 09:48:06 -08:00
Steveice10
60584e861d fs: Stub ControlArchive. (#7237) 2023-12-08 23:35:01 -08:00
Steveice10
070853b465 apt: Stub ReplySleepQuery and ReplySleepNotificationComplete. (#7236) 2023-12-08 23:34:54 -08:00
Steveice10
24b5ffbfca boss: Implement Spotpass service (part 1) (#7232)
* boss: Implement Spotpass service (part 1)

* boss: Fix save state (de)serialization.

* boss: Fix casing of SpotPass in log messages.

* boss: Minor logging improvements.

* common: Add boost serialization support for std::variant.

---------

Co-authored-by: Rokkubro <lachlanb03@gmail.com>
Co-authored-by: FearlessTobi <thm.frey@gmail.com>
2023-12-08 23:34:44 -08:00
Wunk
4d9eedd0d8 video_core/vulkan: Add debug object names (#7233)
* vk_platform: Add `SetObjectName`

Creates a name-info struct and automatically deduces the object handle type using vulkan-hpp's handle trait data.
Supports `string_view` and `fmt` arguments.

* vk_texture_runtime: Use `SetObjectName` for surface handles

Names both the image handle and the image-view.

* vk_stream_buffer: Add debug object names

Names the buffer and its device memory based on its size and type.

* vk_swapchain: Set swapchain handle debug names

Identifies the swapchain images themselves as well as the semaphores

* vk_present_window: Set handle debug names

* vk_resource_pool: Set debug handle names

* vk_blit_helper: Set debug handle names

* vk_platform: Use `VulkanHandleType` concept

Use a new `concept`-type rather than `enable_if`-patterns to restrict
this function to Vulkan handle-types only.
2023-12-08 06:58:47 +02:00
GPUCode
59df319f48 kernel: Improve accuracy of KResourceLimit emulation (#7221)
* core: Refactor resource limits

* svc: Implement SetResourceLimitLimitValues

* Also correct existing name and add missing error codes
2023-12-04 13:31:06 +02:00
Steveice10
875f5eaad5 file_sys: Add support for the BOSS ext save data archive. (#7231) 2023-12-03 14:02:23 -08:00
Wunk
ea9f522c0c shader_jit_a64: Use LDP/STP for address registers (#7225)
Move `address_registers` to be earlier in the `UnitState` structure to allow LDP/STP's 7-bit offset to reach these members.

Follow-up of https://github.com/citra-emu/citra/pull/7002#discussion_r1367270804
2023-12-03 05:07:21 -08:00
zhaobot
55e0b02863 Update translations (2023-12-01) (#7223)
Co-authored-by: The Citra Community <noreply-fake@community.citra-emu.org>
2023-12-03 05:07:13 -08:00
Charles Lombardo
59beeac4c7 Android UI Overhaul Part 3 (#7216)
* android: Rework Emulation Activity's UI

- New in-game menu
- Ability to open games from file manager
- New shader loading UI
- Fixes an issue where the system bars would stay visible during emulation

* android: Port yuzu's foreground service logic

Fixes an issue where the foreground service notification would be stuck with no way to dismiss it
2023-11-30 16:38:25 +01:00
Steveice10
0ed909e782 cfg: Fix auto-region detecting when the launched title has no regions. (#7218) 2023-11-29 12:36:18 -08:00
Steveice10
9da78f6126 qt: Fix loading screen metadata retention when title has no metadata. (#7215) 2023-11-28 14:15:44 -08:00
Steveice10
0842ee6d7b build: Make MSVC builds more deterministic to aid caching. (#7213) 2023-11-28 14:15:36 -08:00
GPUCode
6ec079ede8 core: De-globalize HLE lock (#7212) 2023-11-28 14:15:27 -08:00
Wunk
83b329f6e1 video_core/shader: Refactor JIT-Engines into JitEngine type (#7210) 2023-11-26 15:15:36 -08:00