Commit Graph

9740 Commits

Author SHA1 Message Date
PabloMK7
bf97245c7f Merge master 2023-08-23 19:54:37 +02:00
PabloMK7
4d4c6146e3 Latest online related changes 2023-08-02 23:03:35 +02:00
GPUCode
88ea66053e
Miscallenious fixes to gl backend and qt frontend (#6834)
* renderer_gl: Make rasterizer normal class member

* It doesn't need to be heap allocated anymore

* gl_rasterizer: Remove default_texture

* It's unused

* gl_rasterizer: General cleanup

* gl_rasterizer: Lower case lambdas

* Match style with review comments from vulkan backend

* rasterizer_cache: Prevent memory leak

* Since the switch from shared_ptr these surfaces were no longer being destroyed properly. Use our garbage collector for that purpose to destroy it safely for both backends

* rasterizer_cache: Make temp copy of old surface

* The custom surface would override the memory region of the old region resulting in garbage data, this ensures the custom surface is constructed correctly

* citra_qt: Manually create dialog tabs

* Allows for custom constructors which is very useful. While at it, global state is now eliminated from configuration

* citra_qt: Eliminate global system usage

* core: Remove global system usage in memory and HIO

* citra_qt: Use qOverload

* tests: Run clang format

* gl_texture_runtime: Fix surface scaling
2023-08-02 01:40:39 +03:00
Tobias
970f2284d8
http/soc: Various implementations and fixes (#6828) 2023-08-02 00:37:56 +02:00
GPUCode
baf3ea4beb
custom_tex_manager: Allow old hash in the dumper (#6832) 2023-08-01 20:38:51 +03:00
PabloMK7
35e208b447
Move MiiData to its own namespace and add ChecksummedMiiData (#6824)
* Move mii to own namespace and add checksummed mii data

* Fix compile issues

* Make mii classes trivial and add cast operator

* Fix Android side

* Add new line at the end of files.

* Make miidata a struct and crc16 a u32_be as per switch code.

* Apply suggestions

* Change back crc to u16 and set padding to 0.
2023-07-31 20:38:47 -07:00
GPUCode
f8b8b6e53c
core: De-globalize movie (#6659) 2023-08-01 02:57:38 +02:00
GPUCode
a955f02771
rasterizer_cache: Remove runtime allocation caching (#6705)
* rasterizer_cache: Sentence surfaces

* gl_texture_runtime: Remove runtime side allocation cache

* rasterizer_cache: Adjust surface scale during reinterpreration

* Fixes pixelated outlines. Also allows to remove the d24s8 specific hack and is more generic in general

* rasterizer_cache: Remove Expand flag

* Begone!

* rasterizer_cache: Cache framebuffers with surface id

* rasterizer_cache: Sentence texture cubes

* renderer_opengl: Move texture mailbox to separate file

* Makes renderer_opengl cleaner overall and allows to report removal threshold from runtime instead of hardcoding. Vulkan requires this

* rasterizer_cache: Dont flush cache on layout change

* rasterizer_cache: Overhaul framebuffer management

* video_core: Remove duplicate

* rasterizer_cache: Sentence custom surfaces

* Vulkan cannot destroy images immediately so this ensures we use our garbage collector for that purpose
2023-08-01 03:35:41 +03:00
Steveice10
3fedc68230
common: Only use libbacktrace if present. (#6827) 2023-07-31 14:24:27 -07:00
PabloMK7
38abbd41d7 Implement more http:c and GetServiceLocator 2023-07-31 18:01:40 +02:00
PabloMK7
94d0d689d2 Merge remote-tracking branch 'fltobi/http-fixes' into online 2023-07-31 11:10:46 +02:00
PabloMK7
307e20d43d Merge master 2023-07-31 11:07:21 +02:00
PabloMK7
6cc63061b1 Merge branch 'miirefactor' into online 2023-07-31 11:03:07 +02:00
FearlessTobi
3ba8da15c8 Address review comments 2023-07-31 05:06:44 +02:00
FearlessTobi
87f5aae7dd service: Move all services to folders
Is more consistent and allows for an easier overview of all available services.
2023-07-31 02:33:48 +02:00
FearlessTobi
ab39da18ae http_c: Implement and stub various functions 2023-07-31 02:23:58 +02:00
Steveice10
335fb78c5c
service/am: Clean up and optimize CIA installation. (#6718) 2023-07-30 21:40:35 +02:00
FearlessTobi
7d9d6c576a http_c: Split url for request
httplib requires the url to be split in a host and path component in order for requests to be made.
2023-07-30 20:04:43 +02:00
FearlessTobi
fea38f824d soc_u: Perform size checking for static buffers
Previously, the buffers pushed were too long and would trigger an ASSERT in our IPC handling code.
2023-07-30 20:03:17 +02:00
PabloMK7
b45d904f64 Change back crc to u16 and set padding to 0. 2023-07-30 13:44:19 +02:00
Tobias
22c4eb86d7
core/frd: Correct FunctionInfo and stub more functions (#6209) 2023-07-30 04:18:52 +02:00
PabloMK7
650078f70f Apply suggestions 2023-07-30 00:31:43 +02:00
Steveice10
964f9ee3cf
service/gsp: Implement saving of framebuffers in SaveVramSysArea. (#6821)
* service/gsp: Implement saving of framebuffers in SaveVramSysArea.

* Address review comments.

* service/apt: Separate capture info and capture buffer info.

The former is used with the RequestForSysApplet message and GetCaptureInfo.
The latter is used with SendCaptureBufferInfo and ReceiveCaptureBufferInfo.
2023-07-29 00:26:24 -07:00
Steveice10
bb364d9bc0
service/apt: Add and implement more service commands. (#6721)
* service/apt: Add and implement more service commands.

* service/apt: Implement power button.

* Address review comments and fix GetApplicationRunningMode bug.
2023-07-29 00:26:16 -07:00
PabloMK7
a230306376 Merge branch 'miirefactor' into online 2023-07-28 22:31:20 +02:00
PabloMK7
e76f480575 Make miidata a struct and crc16 a u32_be as per switch code. 2023-07-28 22:16:11 +02:00
PabloMK7
961136dde6 Remove unused var 2023-07-28 21:40:52 +02:00
SachinVin
51996c54f0
audio_core\hle\adts_reader.cpp: Use BitField to parse ADTS header (#6719) 2023-07-28 12:15:58 -07:00
PabloMK7
a9345a3569 Fix merge 2023-07-28 19:05:30 +02:00
PabloMK7
5825797a95 Merge miirefactor 2023-07-28 18:56:49 +02:00
PabloMK7
0f4480a232 Add new line at the end of files. 2023-07-28 17:50:21 +02:00
PabloMK7
d89a8466e4 Fix Android side 2023-07-28 15:34:44 +02:00
PabloMK7
bbd923d7a7 Make mii classes trivial and add cast operator 2023-07-28 13:36:55 +02:00
PabloMK7
7143b0652a Fix compile issues 2023-07-28 12:52:00 +02:00
PabloMK7
fa0c99c987 Move mii to own namespace and add checksummed mii data 2023-07-28 00:13:58 +02:00
PabloMK7
4db78f0a9d Fix ipc request headers 2023-07-27 23:20:14 +02:00
PabloMK7
71235bd678
Online (#2)
* Implement SOC_U::GetHostByName and partial SOC_U::GetNetworkOpt

* Implement AC::GetWifiStatus, and get proper network interface.

* Minor fixes

* More minor fixes

* Even more fixes

* Fix Get/Set SockOpt

* Implement SendToOther

* Apply suggestions and fix timer advance

* Fix variable name

* WIP implementation

* More implemented friends/mii/fs stuff

* Add more sockopt values and fix send/recv flags.

* Temporary disable GetFriendPresence

* Fix dontwait logic

* Fix linux build

* Add missing header for linux

* Remove TCP_STDURG

* frd stuff

* Fix poll and add more 3ds <-> platform conversions

* Finish implementing all platform <-> 3ds conversion.

* Disable UDP connreset and fix poll again.

* Fix compile issues

* Apply suggestions

* Fix compiler issues

* Fix compiler errors (again)

* Fix GetAddrInfo

* Use cert from nand files instead of account.

* Implement more frd functionality.

* common: Add thread pool from yuzu

* Is really useful for asynchronous operations like shader compilation and custom textures, will be used in following PRs

* core: Improve ImageInterface

* Provide a default implementation so frontends don't have to duplicate code registering the lodepng version

* Add a dds version too which we will use in the next commit

* rasterizer_cache: Rewrite custom textures

* There's just too much to talk about here, look at the PR description for more details

* rasterizer_cache: Implement basic pack configuration file

* custom_tex_manager: Flip dumped textures

* custom_tex_manager: Optimize custom texture hashing

* If no convertions are needed then we can hash the decoded data directly removing the needed for duplicate decode

* custom_tex_manager: Implement asynchronous texture loading

* The file loading and decoding is offloaded into worker threads, while the upload itself still occurs in the main thread to avoid having to manage shared contexts

* Address review comments

* custom_tex_manager: Introduce custom material support

* Remove files that were not added properly

* fix submodules

* Fix submodules again

* fix more files

---------

Co-authored-by: GPUCode <geoster3d@gmail.com>
2023-07-27 18:19:33 +02:00
Steveice10
539a1a0b6e
service/cfg: Separate out config block defaults and create when not found. (#6716) 2023-07-26 10:33:00 -07:00
Steveice10
8b21b902f2
hw/y2r: Templatize input/output formats. (#6717) 2023-07-25 05:51:57 -07:00
Vitor K
19107cec4b
citra-qt: update the separate window titles to use full_name and show Primary/Secondary identifier (#6712)
* citra-qt: update the separate window titles to use full_name and Primary/Secondary window identifier

* build_fullname: remove trailing space
2023-07-25 05:51:46 -07:00
Steveice10
a537f56766
services/cfg: Clean up definitions and access flag handling. (#6711) 2023-07-21 18:04:15 -07:00
GPUCode
b5e1a27a7e
rasterizer_cache: Handle texture cubes with duplicate faces (#6710) 2023-07-21 01:55:19 +03:00
Steveice10
a9e390b1b1
frontend: Fix clicking primary screen window touching screen. (#6707) 2023-07-20 15:48:50 -07:00
Steveice10
71582a72a4
sdl: Check correct windowID based on event type. (#6703) 2023-07-19 01:29:13 -07:00
GPUCode
e783b0d4a9
rasterizer_cache: Fixes to (unaligned) texture downloads (#6697)
* rasterizer_cache: Header cleanup

* gl_texture_runtime: Fix incorrect stride in single scanline downloads

* texture_codec: Fix unaligned texture downloads
2023-07-18 17:31:31 +03:00
Steveice10
700c00f021
audio_core/hle: Stub binary requests SaveState and LoadState. (#6684)
* audio_core/hle: Stub binary requests SaveState and LoadState.

* audio_core/hle: Fire DSP binary pipe interrupt on request completion instead of tick.
2023-07-16 17:54:40 -07:00
Steveice10
9cb14044ec
kernel: Improvements to process cleanup. (#6680)
* kernel: Properly clean up process threads on exit.

* kernel: Track process-owned memory and free on destruction.

* apt: Implement DoApplicationJump via home menu when available.

* kernel: Move TLS allocation management to owning process.
2023-07-16 17:54:29 -07:00
Steveice10
8b6b58a364
y2r: Pass ConversionConfiguration by copying. (#6690) 2023-07-15 01:57:06 -07:00
Steveice10
e043caac27
hle: Eliminate need to specify command headers for IPC. (#6678) 2023-07-14 17:32:59 -07:00
Steveice10
0bedb28bdc
rpc: Fix class hierarchy. (#6694) 2023-07-13 16:29:54 -07:00