Commit Graph
100 Commits
Author SHA1 Message Date
bunnei f75d609545 Update project license to GPL v3. 2022-03-24 18:51:23 -07:00
bunnei f6bcf6c7e2 hle: nvflinger: ConsumerBase: Mark ctor as explicit. 2022-03-24 18:13:34 -07:00
bunnei fa9f75819a hle: vi: NativeWindow: Fix trivially copyable issues. 2022-03-24 18:13:34 -07:00
bunnei 4fce11872d hle: nvdrv: nvdata: buffer_queue_producer: Minor cleanup. 2022-03-24 18:13:34 -07:00
bunnei f496aa102d hle: nvdrv: nvdata: Cleanup NvFence static assert. 2022-03-24 18:13:34 -07:00
bunnei 1299876ebe hle: nvflinger: Remove unused unordered_map include. 2022-03-24 18:13:34 -07:00
bunnei 21d554f464 hle: nvflinger: buffer_queue_consumer: AcquireBuffer: Fix typo. 2022-03-24 18:13:34 -07:00
bunnei 0b6b398bd4 hle: nvflinger: Merge Rect with Common::Rectangle. 2022-03-24 18:13:33 -07:00
bunnei ea2045efdf hle: nvflinger: buffer_queue_core: Declare default dtor. 2022-03-24 18:13:33 -07:00
bunnei 2d84848c24 hle: nvflinger: buffer_queue_producer: DequeueBuffer: Remove unnecessary lock. 2022-03-24 18:13:33 -07:00
bunnei 6828db705e hle: nvflinger: consumer_base: StillTracking: Should be const. 2022-03-24 18:13:33 -07:00
bunnei e7304f6bd2 hle: nvflinger: graphic_buffer_producer: Remove unnecessary pragma pack. 2022-03-24 18:13:33 -07:00
bunnei a08c906878 hle: nvflinger: parcel: Reserve token size. 2022-03-24 18:13:33 -07:00
bunnei e941573bb7 hle: nvflinger: buffer_queue_core: StillTracking: Take const reference. 2022-03-24 18:13:33 -07:00
bunnei 411a53eaf3 hle: nvflinger: buffer_queue_core: Cleanup locking. 2022-03-24 18:13:33 -07:00
bunnei d89257ddea hle: nvflinger: Use std::chrono for present_ns. 2022-03-24 18:13:33 -07:00
bunnei 1f6dcd3784 hle: nvflinger: Migrate android namespace -> Service::android. 2022-03-24 18:13:33 -07:00
bunnei a7f407ab22 hle: nvflinger: BufferQueueProducer: Handle SetPreallocatedBuffer with empty buffer.
- Used by Naruto Ultimate Ninja Storm.
2022-03-24 18:13:33 -07:00
bunnei f1a91e0397 hle: vi: Integrate new NVFlinger and HosBinderDriverServer service. 2022-03-24 18:13:33 -07:00
bunnei 13c1932008 hle: nvflinger: Add implementation for HosBinderDriverServer service. 2022-03-24 18:13:33 -07:00
bunnei 072445a74f hle: nvflinger: Add implementation for BufferQueueProducer class. 2022-03-24 18:13:33 -07:00
bunnei 12304ee7b6 hle: nvflinger: Add implementation for BufferQueueCore class. 2022-03-24 18:13:33 -07:00
bunnei 3693b78a28 hle: nvflinger: Add implementation for BufferQueueConsumer class. 2022-03-24 18:13:32 -07:00
bunnei 398f63e321 hle: nvflinger: Add implementation for QueueBufferInput and QueueBufferOutput structs. 2022-03-24 18:13:32 -07:00
bunnei 0de0899357 hle: nvflinger: Add implementation for BufferItemConsumer class. 2022-03-24 18:13:32 -07:00
bunnei 1955deb602 hle: nvflinger: Add implementation for ConsumerBase class. 2022-03-24 18:13:32 -07:00
bunnei e5f998f631 hle: nvflinger: Add implementation for BufferSlot class. 2022-03-24 18:13:32 -07:00
bunnei a5f9fbabfd hle: nvflinger: Add implementation for BufferItem class. 2022-03-24 18:13:32 -07:00
bunnei c1eed4083a hle: nvflinger: Move implementation for Parcel to its own header. 2022-03-24 18:13:32 -07:00
bunnei 466b74b507 hle: nvflinger: Add android buffer queue definitions to its own header. 2022-03-24 18:13:32 -07:00
bunnei 2112b078a2 hle: nvflinger: Add IBinder interface. 2022-03-24 18:13:32 -07:00
bunnei 753377ebe8 hle: nvflinger: Add IConsumerListener interface. 2022-03-24 18:13:32 -07:00
bunnei 3fdb53d4d5 hle: nvflinger: Add ProducerListener interface. 2022-03-24 18:13:32 -07:00
bunnei 36937d8f31 hle: nvflinger: Add android window enumerations to its own header. 2022-03-24 18:13:32 -07:00
bunnei 6ec03eded9 hle: nvflinger: Add android Status flags to its own header. 2022-03-24 18:13:32 -07:00
bunnei 476f456d2f hle: nvflinger: Move BufferTransformFlags to its own header. 2022-03-24 18:13:32 -07:00
bunnei a8ff414423 hle: nvdrv: Rename Fence to NvFence to avoid naming conflicts. 2022-03-24 18:13:32 -07:00
bunnei 3396730b85 hle: nvflinger: Move PixelFormat to its own header. 2022-03-24 18:13:32 -07:00
bunnei 7c04c18560 hle: nvflinger: Add implementation for GraphicBuffer class. 2022-03-24 18:13:32 -07:00
bunnei d5d04d5684 hle: nvflinger: Add implementation for Fence class. 2022-03-24 18:13:32 -07:00
bunnei fbd0e594ba hle: nvflinger: Add implementation for Rect class. 2022-03-24 18:13:32 -07:00
bunnei e3ee327a30 common: logging: Add a logger for NVFlinger. 2022-03-24 18:13:32 -07:00
bunnei ff090284b2 Merge pull request #8035 from lat9nq/disable-web-applet
yuzu qt: Disable the web applet by default
2022-03-23 21:08:20 -07:00
bunnei 853746deb2 Merge pull request #8031 from Morph1984/cleanup-mii-please
applets: Cleanup MiiEdit applet implementation
2022-03-22 21:56:42 -07:00
bunnei 888e4fbe8b Merge pull request #8070 from yuzu-emu/revert-8016-kill-mem-use
Revert "dynarmic: Reduce size of code caches"
2022-03-22 18:34:19 -07:00
bunnei 89a97915a8 Revert "dynarmic: Reduce size of code caches" 2022-03-22 18:32:54 -07:00
bunnei c9ffc287bf Merge pull request #8048 from ameerj/include-purge
general: Reduce unused includes across the project
2022-03-21 18:03:54 -07:00
bunnei 516853d8a3 Merge pull request #7812 from FernandoS27/made-straight-from-the-nut
BufferCache: Find direction of the stream buffer increase.
2022-03-20 15:23:53 -07:00
bunnei d7a39fa3a1 Merge pull request #7840 from lioncash/bitor
texture_cache: Amend unintended bitwise OR in SynchronizeAliases
2022-03-20 02:19:30 -07:00
bunnei 15dca3345c Merge pull request #8040 from Morph1984/handle-table
KHandleTable: Optimize table entry layout
2022-03-19 23:17:37 -07:00
bunnei bacc041dc4 Merge pull request #8047 from ameerj/msvc-test-disable
.ci/build-msvc: Disable YUZU_TESTS cmake variable
2022-03-19 16:28:17 -07:00
bunnei 4e856fadc7 Merge pull request #8025 from lat9nq/cmd-specify-config
yuzu_cmd: Allow user to specify config file location
2022-03-19 01:33:50 -07:00
bunnei 4fb93cbb3f Merge pull request #8028 from v1993/patch-9
bsd: Allow inexact match for address length in AcceptImpl
2022-03-18 18:06:13 -07:00
bunnei fdac72a864 Merge pull request #7964 from german77/miiii
applet: mii: Simple implementation of mii applet
2022-03-16 21:37:53 -07:00
bunnei 6d48129965 Merge pull request #8026 from lat9nq/ext-mem-ini
default_ini: List use_extended_memory_layout in default config file
2022-03-15 18:12:10 -07:00
bunnei 381e76722d Merge pull request #8006 from BytesGalore/fix_cmake_missing_qt5_dbus
build(cmake): fix missing Qt5::DBus link target for bundled linux package
2022-03-14 18:56:39 -07:00
bunnei 1494a66aa3 core: hle: kernel: init_slab_setup: Move CalculateSlabHeapGapSize to global namespace. 2022-03-14 18:14:54 -07:00
bunnei 8b109f8a69 core: hle: kernel: Allocate dummy threads on host thread storage.
- Fixes a crash where on subsequent boots, long-lived host threads would have their dummy threads freed.
2022-03-14 18:14:54 -07:00
bunnei 18baef2ec9 core: hle: kernel: Downgrade dangling objects warning to debug.
- It is not impossible to leak kernel objects, so this is not really any issue anymore (albeit, still interesting).
2022-03-14 18:14:54 -07:00
bunnei 58b39c8ad8 core: hle: kernel: Make object list container global and ensure it is reset on each emulation session. 2022-03-14 18:14:54 -07:00
bunnei 29924a999e core: hle: kernel: Remove server session tracking.
- These are now allocated/managed by emulated memory, so we do not need to track and free them on shutdown.
2022-03-14 18:14:54 -07:00
bunnei b7535cd853 core: hle: kernel: k_process: Remove handle table finalize, reset page table. 2022-03-14 18:14:54 -07:00
bunnei 2b881f4ccc core: hle: kernel: k_process: Implement thread local storage accurately. 2022-03-14 18:14:54 -07:00
bunnei c8dba7c578 core: hle: kernel: k_page_table: Add implementations of MapPages, UnmapPages, and FindFreeArea for TLS. 2022-03-14 18:14:54 -07:00
bunnei cb294300ea core: hle: kernel: k_slab_heap: Refresh to use guest allocations. 2022-03-14 18:14:54 -07:00
bunnei 4b022badf0 core: hle: kernel: Update init_slab_heap, use device memory, and add KThreadLocalPage and KPageBuffer.
- Refreshes our slab initialization code to latest known behavior.
- Moves all guest kernel slabs into emulated device memory.
- Adds KThreadLocalPage and KPageBuffer, which we will use for accurate TLS management.
2022-03-14 18:14:54 -07:00
bunnei 8e8d8724a2 core: hle: kernel: k_page_buffer: Add KThreadLocalPage primitive. 2022-03-14 18:14:53 -07:00
bunnei f92568936a core: hle: kernel: k_page_buffer: Add KPageBuffer primitive. 2022-03-14 18:14:53 -07:00
bunnei 84ced13966 core: hle: kernel: k_thread: Ensure host Fiber is freed. 2022-03-14 18:14:53 -07:00
bunnei 4aa9e8543d core: hle: kernel: k_server_session: Ensure SessionRequestManager is freed. 2022-03-14 18:14:53 -07:00
bunnei dfbf03438f core: hle: service: kernel_helpers: Use system resource limit. 2022-03-14 18:14:53 -07:00
bunnei c0a2ae3186 core: hle: service: sm: Fix KPort reference count. 2022-03-14 18:14:53 -07:00
bunnei c5516b1800 core: hle: kernel: k_thread: Update to reflect tree changes. 2022-03-14 18:14:53 -07:00
bunnei 8421193857 core: hle: kernel: Use weak_ptr where possible for SessionRequestHandler and SessionRequestManager. 2022-03-14 18:14:53 -07:00
bunnei cbf7c2eb40 core: hle: kernel: k_memory_layout: Update kernel slab memory sizes. 2022-03-14 18:14:53 -07:00
bunnei 33c5eca64c core: hle: kernel: svc_types: Add ThreadLocalRegionSize. 2022-03-14 18:14:53 -07:00
bunnei bb2c956cf9 core: hle: kernel: k_condition_variable: Update to reflect tree changes. 2022-03-14 18:14:53 -07:00
bunnei 075ae485b1 core: hle: kernel: k_address_arbiter: Update to reflect tree changes. 2022-03-14 18:14:53 -07:00
bunnei 492b983af4 common: tree: Various updates. 2022-03-14 18:14:53 -07:00
bunnei 3a7ac3cb72 common: intrusive_red_black_tree: Various updates. 2022-03-14 18:14:53 -07:00
bunnei 52db7331df Merge pull request #8015 from FernandoS27/fix-global-mem
Shader decompiler: Fix storage tracking in deko3d.
2022-03-14 16:03:23 -07:00
bunnei c7c318b73a Merge pull request #8007 from ameerj/vs-2022-errors
emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors
2022-03-13 03:43:06 -07:00
bunnei 56b249780d Merge pull request #7997 from Wunkolo/cpu_detect_more
cpu_detect: Add additional x86 flags and telemetry
2022-03-11 17:26:41 -08:00
bunnei bf810f9e10 Merge pull request #8003 from yuzu-emu/revert-7982-fix_cmake_missing_qt5_dbus
Revert "build(cmake): fix missing Qt5::DBus target on linux"
2022-03-11 15:22:30 -08:00
bunnei e8ada87451 Revert "build(cmake): fix missing Qt5::DBus target on linux" 2022-03-11 15:22:24 -08:00
bunnei df405f81b7 Merge pull request #7982 from BytesGalore/fix_cmake_missing_qt5_dbus
build(cmake): fix missing Qt5::DBus target on linux
2022-03-10 23:12:33 -08:00
bunnei 23a072fc7a Merge pull request #7936 from Wunkolo/cpu_detect
cpu_detect: Refactor detection of processor features
2022-03-09 15:34:42 -08:00
bunnei 685526c857 Merge pull request #7975 from bunnei/ldr-fix
hle: service: ldr: Use deterministic addresses when mapping NROs.
2022-03-08 17:39:03 -08:00
bunnei 86eaedbf19 hle: service: ldr: Use deterministic addresses when mapping NROs.
- Instead of randomization, choose in-order addresses for where to map NROs into memory.
- This results in predictable behavior when debugging and consistent behavior when reproducing issues.
2022-03-08 17:38:20 -08:00
bunnei d1aae938a9 Merge pull request #7986 from lat9nq/vk-callback
core, video_core: Fix two crashes when failing to create the emulated GPU instance
2022-03-08 12:36:57 -08:00
bunnei 0e203d30f9 Merge pull request #7974 from bunnei/improve-code-mem
Kernel Memory Updates (Part 5): Revamp MapCodeMemory and UnmapCodeMemory.
2022-03-07 20:28:39 -08:00
bunnei 9dd48f8f89 hle: kernel: KPageTable: Improve implementations of MapCodeMemory and UnmapCodeMemory.
- This makes these functions more accurate to the real HOS implementations.
- Fixes memory access issues in Super Smash Bros. Ultimate that occur when un/mapping NROs.
2022-03-07 17:18:20 -08:00
bunnei 9d25f5409d Merge pull request #7935 from Wunkolo/logging-join-fix
logging: Convert `backend_thread` into an `std::jthread`
2022-03-02 19:09:26 -08:00
bunnei ae301a650e Merge pull request #7956 from bunnei/improve-mem-manager
Kernel Memory Updates (Part 4): Revamp KMemoryManager & other fixes
2022-03-02 17:55:51 -08:00
bunnei 82ca8230ad hle: kernel: Re-create memory layout at initialization.
- As this can only be derived once.
2022-02-27 18:00:09 -08:00
bunnei 41c9c93736 hle: kernel: Remove unused pool locals. 2022-02-27 18:00:09 -08:00
bunnei 939707cf75 hle: kernel: k_memory_manager: Rework for latest kernel behavior.
- Updates the KMemoryManager implementation against latest documentation.
- Reworks KMemoryLayout to be accessed throughout the kernel.
- Fixes an issue with pool sizes being incorrectly reported.
2022-02-27 18:00:09 -08:00
bunnei d780096c3c hle: kernel: k_page_heap: GetPhysicalAddr can be const. 2022-02-27 10:34:02 -08:00
bunnei 00d395c330 hle: kernel: k_page_heap: Remove superfluous consexpr. 2022-02-27 10:34:02 -08:00
bunnei 3f129b2700 hle: kernel: k_page_heap: Various updates and improvements.
- KPageHeap tracks physical addresses, not virtual addresses.
- Various updates and improvements to match latest documentation for this type.
2022-02-27 10:34:02 -08:00