Commit graph

4441 commits

Author SHA1 Message Date
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
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
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
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
Steveice10
f177433d41
cfg: Set sound mode to stereo by default. (#7268) 2023-12-21 02:34:22 -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
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
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
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
Steveice10
0ed909e782
cfg: Fix auto-region detecting when the launched title has no regions. (#7218) 2023-11-29 12:36:18 -08:00
GPUCode
6ec079ede8
core: De-globalize HLE lock (#7212) 2023-11-28 14:15:27 -08:00
GPUCode
db7b929e47
core: Remove special regions (#7211) 2023-11-26 12:07:30 -08:00
Steveice10
dc8425a986
kernel: Fix memory mapping issue introduced in https://github.com/citra-emu/citra/pull/6680 (#7208) 2023-11-26 12:07:10 -08:00
Steveice10
670e9936a4
audio_core: Only perform audio stretching if below full speed. (#7201) 2023-11-26 12:06:59 -08:00
Steveice10
c0ecdb689d
cfg: Update preferred region data on-demand. (#7206) 2023-11-24 23:10:58 -08:00
Wunk
68e6a2185d
Fix missing u32 and LOG_TRACE includes (#7207)
This fixes a compile-error with gcc I was getting from
`LOG_TRACE`(`error: ‘LOG_TRACE’ was not declared in this scope`) and
`u32`(`error: ‘u32’ was not declared in this scope`) being used without
their header-files being included.

Not sure how `romfs_reader.cpp` is even compiling when nothing in its
include-tree is refers to those macros.
2023-11-23 15:39:17 -08:00
Steveice10
33a1f27a99
cfg: Load and save MCU config as binary file. (#7200) 2023-11-21 17:56:08 -08:00
PabloMK7
f8ae41dfe3
Implement cfg UUID Clock Sequence (#7169)
* Implement cfg UUID Clock Sequence

* Remove unneeded variable.

* Apply suggestions

* Apply suggestions
2023-11-20 20:05:16 -08:00
Steveice10
ca6dae1744
fs: Fix save data secure value stubs. (#7191) 2023-11-19 10:18:23 -08:00
PabloMK7
b6acebcb11
Stub some missing AM Ticket functions (#7172) 2023-11-18 15:55:47 -08:00
Wunk
90a5d989e7
mic: Fix gain undeclared identifier (#7177) 2023-11-15 19:27:43 -08:00
PabloMK7
de40153fa4
Implement PS:GetRandomBytes and use openssl for random bytes (#7164) 2023-11-14 16:15:50 -08:00
PabloMK7
e9936e01c2
Stub QTM_S:GetHeadtrackingInfo (#7166)
* Stub QTM_S:GetHeadtrackingInfo

* Suggestions
2023-11-15 02:04:14 +02:00
GPUCode
e28c2a390c
core: Make running_core always match kernel current_cpu (#7159) 2023-11-14 04:31:25 -08:00
PabloMK7
63d1830429
Download TWL titles from NUS and list them in AM. (#7162)
* Download TWL titles from NUS and list them in AM.

* Remove duplicate entries.

* Move TODO comment
2023-11-14 01:33:58 -08:00
Steveice10
88cc6acb4d
hle: Fix session limits for srv: and soc:U. (#7160) 2023-11-14 01:33:47 -08:00
PabloMK7
3b31720c4d
Map MappedBuffer guard pages in a single operation. (#7158) 2023-11-14 01:33:38 -08:00
Steveice10
f9bbae81aa
hw/aes: Clean up key generator. (#7143) 2023-11-13 13:35:30 -08:00
PabloMK7
1c793deece
Lower log level of CSND::ExecuteCommands stub warning (#7163) 2023-11-13 13:34:56 -08:00
Steveice10
5118798c30
mic: Refactor microphone state and management. (#7134) 2023-11-12 13:03:07 -08:00
Vitor K
222b1cc0d7
arm_dyncom: remove reference nullptr comparison (#7151) 2023-11-11 11:52:40 -08:00
Charles Lombardo
fa08df21a5
Android UI Overhaul Part 1 (#7108)
* android: Android 14 support

* android: New home UI flow

Port of the yuzu-android home UI with a few Citra specific tweaks.

A few important things to note
- New and existing Citra users will be guided through the new setup flow
- Existing game directory location is discarded and will have to be reselected
- Protections around making sure the user has selected a user directory were reworked to fit this new UI. I removed async directory init and DirectoryStateReceivers and check during MainActivity's onResume callback.
- Removed Citra premium. The light/dark theme is now available for everyone.

* android: New blue app theme

* android: Extend UI into status/navigation bar area

* android: Remove yellow theme specific styles

* android: Disable status/navigation bar contrast enforcement

We handle it ourselves so there's no need to use a contrasty background on the system bars

* android: GPU Driver Manager

Includes a rewrite of FileUtil with some helper functions for the manager

* android: Rework NativeLibrary in Kotlin

Besides the rewrite this cleans up the alert dialogs that are used for system errors. Generally removes unused JNI code and makes things a little more consistent.

* android: Home menu support + downloader

* android: Enable minify and resource shrinking

* android: Remove premium page and expose texture filtering modes

* android: Update AGP to 8.1.2

* android: Don't display emulation in cutout area

We don't currently handle the notch properly in the emulation fragment so just don't render under it for now.

* android: native.cpp ClangFormat fixes

* core: SystemTitles: Include std::optional

Without it, the android build would fail

* vk: android: Properly override GetDriverLibrary

* vk_instance: Blacklist timeline semaphore ext on turnip

* vk_platform: Hardcode apiVersion to VK_API_VERSION_1_3

* android: native: Use const where applicable

* android: native: Array pointer access style fix

* android: Share relevant log

Shares the old log if it exists and you haven't booted a game yet and shares the current log if you have booted a game.

* android: Apply dark theme color for software keyboard text

---------

Co-authored-by: GPUCode <geoster3d@gmail.com>
2023-11-10 15:16:54 -08:00