summaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* yuzu/main: Remove unnecessary includesGravatar Lioncash2019-04-041-5/+8
| | | | | While we're at it, don't use <QtGui> and <QtWidgets> and instead include exactly which headers we actually need.
* common/lz4_compression: Remove #pragma once directive from the cpp fileGravatar Lioncash2019-04-031-2/+0
| | | | | | | Introduced within 798d76f4c7018174e58702fb06a042dc8c84f0be, this only really has an effect within header files. Silences a -Wpragma-once-outside-header warning with clang.
* Merge pull request #2328 from lioncash/transferGravatar bunnei2019-04-033-17/+37
|\ | | | | service/am: Correct behavior of CreateTransferMemoryStorage()
| * service/am: Correct behavior of CreateTransferMemoryStorage()Gravatar Lioncash2019-04-031-6/+6
| | | | | | | | | | | | | | | | For whatever reason, shared memory was being used here instead of transfer memory, which (quite clearly) will not work based off the name of the function. This corrects this wonky usage of shared memory.
| * kernel/transfer_memory: Add accessors to data and sizesGravatar Lioncash2019-04-032-11/+31
| | | | | | | | Also amend erroneous use of size_t. We should be using u64 here.
* | Merge pull request #2095 from FreddyFunk/open-transferable-shader-cacheGravatar bunnei2019-04-034-0/+44
|\ \ | | | | | | frontend: Open transferable shader cache for a selected game in the gamelist
| * | Use QString instead of std::string where applicableGravatar unknown2019-02-081-17/+11
| | |
| * | Use constexpr char array instead of string where applicableGravatar Mat M2019-02-081-1/+1
| | | | | | | | | Co-Authored-By: FreddyFunk <frederic.laing.development@gmail.com>
| * | frontend: Open transferable shader cache for a selected game in the gamelistGravatar unknown2019-02-084-0/+50
| | |
* | | Merge pull request #2093 from FreddyFunk/disk-cache-better-compressionGravatar bunnei2019-04-037-50/+153
|\ \ \ | | | | | | | | Better LZ4 compression utilization for the disk based shader cache and the yuzu build system
| * | | gl_shader_disk_cache: Use LZ4HC with compression level 9 instead of ↵Gravatar unknown2019-03-291-3/+3
| | | | | | | | | | | | | | | | compression level 12 for less compression time
| * | | Addressed feedbackGravatar unknown2019-03-297-91/+145
| | | |
| * | | core: Do not link LZ4 to core. Use common/data_compression for nso segment ↵Gravatar unknown2019-03-292-11/+8
| | | | | | | | | | | | | | | | decompression instead.
| * | | gl_shader_disk_cache: Use better compression for transferable and ↵Gravatar unknown2019-03-293-10/+26
| | | | | | | | | | | | | | | | precompiled shader disk chache files
| * | | data_compression: Move LZ4 compression from video_core/gl_shader_disk_cache ↵Gravatar unknown2019-03-295-39/+75
| | | | | | | | | | | | | | | | to common/data_compression
* | | | Merge pull request #2299 from lioncash/maxwellGravatar bunnei2019-04-034-17/+15
|\ \ \ \ | | | | | | | | | | gl_shader_manager: Remove reliance on a global accessor within MaxwellUniformData::SetFromRegs()
| * | | | gl_shader_manager: Remove unnecessary gl_shader_manager inclusionGravatar Lioncash2019-03-281-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This isn't used at all in the OpenGL shader cache, so we can remove it's include here, meaning one less file needs to be recompiled if any changes ever occur within that header. core/memory.h is also not used within this file at all, so we can remove it as well.
| * | | | gl_shader_manager: Move using statement into the cpp fileGravatar Lioncash2019-03-282-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | Avoids introducing Maxwell3D into the namespace for everything that includes the header.
| * | | | gl_shader_manager: Remove reliance on global accessor within ↵Gravatar Lioncash2019-03-283-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MaxwellUniformData::SetFromRegs() We can just pass in the Maxwell3D instance instead of going through the system class to get at it. This also lets us simplify the interface a little bit. Since we pass in the Maxwell3D context now, we only really need to pass the shader stage index value in.
| * | | | gl_shader_manager: Amend Doxygen string for MaxwellUniformDataGravatar Lioncash2019-03-271-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Previously only one line of the whole comment was in proper Doxygen formatting.
* | | | | Merge pull request #2324 from lioncash/enum-unusedGravatar bunnei2019-04-032-2/+0
|\ \ \ \ \ | | | | | | | | | | | | kernel/object: Remove unused handle type entry
| * | | | | kernel/object: Remove unused handle type entryGravatar Lioncash2019-04-032-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The AddressArbiter type isn't actually used, given the arbiter itself isn't a direct kernel object (or object that implements the wait object facilities). Given this, we can remove the enum entry entirely.
* | | | | | Merge pull request #2294 from lioncash/fatalGravatar bunnei2019-04-032-36/+63
|\ \ \ \ \ \ | | | | | | | | | | | | | | service/am: Implement EnterFatalSection/LeaveFatalSection
| * | | | | | service/am: Implement EnterFatalSection and LeaveFatalSectionGravatar Lioncash2019-03-262-2/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These functions act in tandem similar to how a lock or mutex require a balanced lock()/unlock() sequence. EnterFatalSection simply increments a counter for how many times it has been called, while LeaveFatalSection ensures that a previous call to EnterFatalSection has occured. If a previous call has occurred (the counter is not zero), then the counter gets decremented as one would expect. If a previous call has not occurred (the counter is zero), then an error code is returned.
| * | | | | | service/am: Sort ISelfController's member functions according to table orderGravatar Lioncash2019-03-262-36/+36
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | Makes the declaration order of the handling functions consistent with the handler table itself.
* | | | | | Merge pull request #2323 from lioncash/includeGravatar bunnei2019-04-032-4/+6
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | yuzu/debugger/profiler: Remove unnecessary includes
| * | | | | yuzu/debugger/profiler: Remove unnecessary includesGravatar Lioncash2019-04-032-4/+6
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | Moves includes into the cpp file where necessary. This way, microprofile-related stuff isn't dumped into other UI-related code when the dialog header gets included.
* | | | | Merge pull request #2302 from ReinUsesLisp/vk-swapchainGravatar bunnei2019-04-033-1/+305
|\ \ \ \ \ | | | | | | | | | | | | vk_swapchain: Implement a swapchain manager
| * | | | | vk_swapchain: Implement a swapchain managerGravatar ReinUsesLisp2019-03-293-1/+305
| | |_|/ / | |/| | |
* | | | | Merge pull request #2305 from lioncash/sharedGravatar bunnei2019-04-033-5/+18
|\ \ \ \ \ | | | | | | | | | | | | kernel/shared_memory: Sanitize supplied size when unmapping
| * | | | | kernel/shared_memory: Remove unused core/memory.h includeGravatar Lioncash2019-03-291-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nothing from this header is used, so we can remove this include, getting rid of a dependency on it.
| * | | | | kernel/shared_memory: Sanitize supplied size when unmappingGravatar Lioncash2019-03-293-4/+18
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The kernel makes sure that the given size to unmap is always the same size as the entire region managed by the shared memory instance, otherwise it returns an error code signifying an invalid size. This is similarly done for transfer memory (which we already check for).
* | | | | Merge pull request #2314 from lioncash/constGravatar bunnei2019-04-0311-18/+18
|\ \ \ \ \ | | | | | | | | | | | | kernel/thread: Minor interface cleanup
| * | | | | kernel/thread: Make AllWaitObjectsReady() a const qualified member functionGravatar Lioncash2019-04-012-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that ShouldWait() is a const qualified member function, this one can be made const qualified as well, since it can handle passing a const qualified this pointer to ShouldWait().
| * | | | | kernel/wait_object: Make ShouldWait() take thread members by pointer-to-constGravatar Lioncash2019-04-0111-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given this is intended as a querying function, it doesn't make sense to allow the implementer to modify the state of the given thread.
| * | | | | kernel/thread: Avoid sign conversion within GetCommandBufferAddress()Gravatar Lioncash2019-04-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously this was performing a u64 + int sign conversion. When dealing with addresses, we should generally be keeping the arithmetic in the same signedness type. This also gets rid of the static lifetime of the constant, as there's no need to make a trivial type like this potentially live for the entire duration of the program.
| * | | | | kernel/thread: Make parameter of GetWaitObjectIndex() const qualifiedGravatar Lioncash2019-04-012-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The pointed to member is never actually modified, so it can be made const.
* | | | | | yuzu/applets/software_keyboard: Use QDialogButtonBox standard buttons ↵Gravatar Lioncash2019-04-031-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | instead of custom buttons Like the previous change, this allows Qt to handle proper translations of the UI buttons, rather than us needing to handle it.
* | | | | | yuzu/applets/profile_select: Use QDialogButtonBox standard buttons instead ↵Gravatar Lioncash2019-04-031-4/+1
| |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | of custom buttons Makes for shorter code, while also not requiring the buttons to be directly translated, they'll be handled by Qt itself.
* | | | | Merge pull request #2270 from lioncash/plistGravatar bunnei2019-04-027-2/+123
|\ \ \ \ \ | | | | | | | | | | | | kernel/svc: Implement svcGetProcessList and svcGetThreadList
| * | | | | kernel/svc: Implement svcGetThreadListGravatar Lioncash2019-04-024-1/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similarly like svcGetProcessList, this retrieves the list of threads from the current process. In the kernel itself, a process instance maintains a list of threads, which are used within this function. Threads are registered to a process' thread list at thread initialization, and unregistered from the list upon thread destruction (if said thread has a non-null owning process). We assert on the debug event case, as we currently don't implement kernel debug objects.
| * | | | | kernel/svc: Implement svcGetProcessListGravatar Lioncash2019-04-024-1/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This service function simply copies out a specified number of kernel process IDs, while simultaneously reporting the total number of processes.
* | | | | | Merge pull request #2313 from lioncash/reslimitGravatar bunnei2019-04-023-14/+6
|\ \ \ \ \ \ | |/ / / / / |/| | | | | kernel/resource_limit: Remove the name member from resource limits
| * | | | | kernel/resource_limit: Remove the name member from resource limitsGravatar Lioncash2019-04-013-14/+6
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This doesn't really provide any benefit to the resource limit interface. There's no way for callers to any of the service functions for resource limits to provide a custom name, so all created instances of resource limits other than the system resource limit would have a name of "Unknown". The system resource limit itself is already trivially identifiable from its limit values, so there's no real need to take up space in the object to identify one object meaningfully out of N total objects.
* | | | | process: Fix up compilationGravatar ReinUsesLisp2019-04-021-1/+1
| | | | |
* | | | | Merge pull request #2281 from lioncash/memoryGravatar bunnei2019-04-015-7/+8
|\ \ \ \ \ | |/ / / / |/| | | | kernel/codeset: Make CodeSet's memory data member a regular std::vector
| * | | | kernel/codeset: Make CodeSet's memory data member a regular std::vectorGravatar Lioncash2019-03-225-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The use of a shared_ptr is an implementation detail of the VMManager itself when mapping memory. Because of that, we shouldn't require all users of the CodeSet to have to allocate the shared_ptr ahead of time. It's intended that CodeSet simply pass in the required direct data, and that the memory manager takes care of it from that point on. This means we just do the shared pointer allocation in a single place, when loading modules, as opposed to in each loader.
* | | | | Merge pull request #2301 from FearlessTobi/remove-amiibo-settingGravatar bunnei2019-04-017-28/+1
|\ \ \ \ \ | | | | | | | | | | | | core/yuzu: Remove enable_nfc setting
| * | | | | core/yuzu: Remove enable_nfc settingGravatar fearlessTobi2019-03-297-28/+1
| | |_|/ / | |/| | | | | | | | | | | | | This was initially added to prevent problems from stubbed/not implemented NFC services, but as we never encountered such and as it's only used in a deprecated function anyway, I guess we can just remove it to prevent more clutter of the settings.
* | | | | general: Use deducation guides for std::lock_guard and std::unique_lockGravatar Lioncash2019-04-0123-75/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since C++17, the introduction of deduction guides for locking facilities means that we no longer need to hardcode the mutex type into the locks themselves, making it easier to switch mutex types, should it ever be necessary in the future.