summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-07-03kernel/process: Default initialize all member variablesLioncash
Ensures a Process instance is always created with a deterministic initial state.
2019-07-03kernel/process: Decouple TLS handling from threadsLioncash
Extracts out all of the thread local storage management from thread instances themselves and makes the owning process handle the management of the memory. This brings the memory management slightly more in line with how the kernel handles these allocations. Furthermore, this also makes the TLS page management a little more readable compared to the lingering implementation that was carried over from Citra.
2019-07-03kernel/vm_manager: Add overload of FindFreeRegion() that operates on a boundaryLioncash
This will be necessary for making our TLS slot management slightly more straightforward. This can also be utilized for other purposes in the future. We can implement the existing simpler overload in terms of this one anyways, we just pass the beginning and end of the ASLR region as the boundaries.
2019-07-03Merge pull request #2613 from ogniK5377/InitalizeApplicationInfoZach Hilman
Implemented InitializeApplicationInfo & InitializeApplicationInfoRestricted
2019-07-03Merge pull request #2608 from ogniK5377/Time_GetSharedMemoryNativeHandleZach Hilman
Implement Time::GetSharedMemoryNativeHandle
2019-07-03Merge pull request #2563 from ReinUsesLisp/shader-initializersZach Hilman
gl_shader_cache: Use static constructors for CachedShader initialization
2019-07-02Merge pull request #2604 from ogniK5377/INotificationServicebunnei
Implemented INotificationService
2019-07-02Merge pull request #2659 from FernandoS27/safe-cachesbunnei
rasterizer_cache: Protect inherited caches from submission level
2019-07-01Merge pull request #2660 from bakugo/deltafragmentsZach Hilman
file_sys: Ignore DeltaFragment NCAs during installation
2019-07-02file_sys: Rename other ContentRecordType membersBakugo
2019-07-01rasterizer_cache: Protect inherited caches from submission levelFernando Sahmkow
2019-07-01file_sys/registered_cache: Improve missing metadata errorBakugo
This can happen when installing NSPs too, not just XCIs.
2019-07-01file_sys/submission_package: Don't warn about missing DeltaFragment NCAsBakugo
DeltaFragments are not useful to us and are often not included in patch NSPs.
2019-07-01file_sys/registered_cache: Ignore DeltaFragment NCAs during installationBakugo
DeltaFragments are only used to download and apply partial patches on a real console, and are not useful to us at all. Most patch NSPs do not include them, and when they do, it's a waste of space to install them.
2019-07-01file_sys: Rename ContentRecordType::Patch to DeltaFragmentBakugo
Avoids potential confusion, since patches and DeltaFragments are not the same thing. Actual full patches are listed under the Program type.
2019-06-30Merge pull request #2583 from FernandoS27/core-timing-safebunnei
Core_Timing: Make core_timing threadsafe by default.
2019-06-29Merge pull request #2653 from FearlessTobi/revert-2474-patch-1Zach Hilman
Revert "CMake: Get Git submodule dependencies via CMake"
2019-06-29Revert "CMake: Get Git submodule dependencies via CMake (#2474)"Tobias
This reverts commit 5cef446f42e698a524c6c3240fedb0031f8e5694.
2019-06-28Merge pull request #2533 from DarkLordZach/memory-frozenbunnei
memory: Add class to manage and enforce memory freezing
2019-06-28Attemp clang format fix?David Marcec
Seems to be an issue with clang format
2019-06-28Added errors.h to cmakelistDavid Marcec
2019-06-28Addressed issuesDavid Marcec
2019-06-28Addressed issuesDavid Marcec
2019-06-27Implemented InitializeApplicationInfo & InitializeApplicationInfoRestrictedDavid Marcec
InitializeApplicationInfoRestricted will need further implementation as it's checking for other user requirements about the game. As we're emulating, we're assuming the user owns the game so we skip these checks currently, implementation will need to be added further on
2019-06-26Merge pull request #2548 from DarkLordZach/applet-shopnbunnei
applets: Implement backend and default frontend for Parental Controls and EShop (ShopN) applets
2019-06-26Merge pull request #2607 from DarkLordZach/arp-1bunnei
glue: Implement arp:w and arp:r services
2019-06-26Addressed issuesDavid Marcec
2019-06-25glue: Correct missing bytes in ApplicationLaunchParameterZach Hilman
2019-06-26Implement Time::GetSharedMemoryNativeHandleDavid Marcec
This PR attempts to implement the shared memory provided by GetSharedMemoryNativeHandle. There is still more work to be done however that requires a rehaul of the current time module to handle clock contexts. This PR is mainly to get the basic functionality of the SharedMemory working and allow the use of addition to it whilst things get improved on. Things to note: Memory Barriers are used in the SharedMemory and a better solution would need to be done to implement this. Currently in this PR I’m faking the memory barriers as everything is sync and single threaded. They work by incrementing the counter and just populate the two data slots. On data reading, it will read the last added data. Specific values in the shared memory would need to be updated periodically. This isn't included in this PR since we don't actively do this yet. In a later PR when time is refactored this should be done. Finally, as we don't handle clock contexts. When time is refactored, we will need to update the shared memory for specific contexts. This PR does this already however since the contexts are all identical and not separated. We're just updating the same values for each context which in this case is empty. Tiime:SetStandardUserSystemClockAutomaticCorrectionEnabled, Time:IsStandardUserSystemClockAutomaticCorrectionEnabled are also partially implemented in this PR. The reason the implementation is partial is because once again, a lack of clock contexts. This will be improved on in a future PR. This PR closes issue #2556
2019-06-25SizedNotificationInfo should be 0x10 bytes, user_uuid is incorrect, this ↵David Marcec
should be the users account id
2019-06-25fixed spelling errors and fixed issue with Pop not returning the ↵David Marcec
SizedNotificationInfo
2019-06-24applets: Pass current process title ID to appletsZach Hilman
Avoids using system accessor to get current process in applet code.
2019-06-24general_frontend: Add documentation for parental controls and ecommerce appletsZach Hilman
2019-06-24web_browser: Only delete temporary directory if it was createdZach Hilman
Prevents crashes with ShopN applet occasionally.
2019-06-24web_browser: Take ECommerce applet frontend optionally in constructorZach Hilman
If it is needed but wasn't passed (or passed nullptr), the Shop handling code will alert and throw an error.
2019-06-24frontend: Add base class and default impl for ECommerce applet frontendZach Hilman
2019-06-24web_browser: Use function tables for execute and initializeZach Hilman
Allows easy handling of multiple shim types, as they have enough in common to be the same backend but not enough to share init/exec.
2019-06-24web_browser: Correct structures and properly parse TLVs/ShimKindZach Hilman
Much, much more HW-accurate and allows us to easily support all of the different web 'shim' types.
2019-06-24yuzu: Accept default applets for Parental Controls and ECommerceZach Hilman
2019-06-24applets: Track ECommerce and Parental Control applet frontendsZach Hilman
2019-06-24web_browser: Rename OpenPage to OpenPageLocalZach Hilman
This is more representative of what actually occurs, as web does support remote URLs which wouldn't need a romfs callback. This paves for easy future support of this with a call like 'OpenPageRemote' or similar.
2019-06-24frontend: Add base class and default impl of parent controls applet frontendZach Hilman
2019-06-24applets: Implement Auth applet backendZach Hilman
This is responsible for parental controls and supports verifying, changing, and registering PIN codes.
2019-06-24core: Keep track of ARPManager and register current application on bootZach Hilman
2019-06-24glue: Implement arp:w and arp:r servicesZach Hilman
These keep track of running process' launch properties and control properties and allows for issuing and reading them by process and title ID.
2019-06-24glue: Add errors for glue/arp servicesZach Hilman
2019-06-24glue: Add scaffolding for bgtc:t and bgtc:sc servicesZach Hilman
2019-06-24arp: Move to glue servicesZach Hilman
Glue is the name of the sysmodule that contains both arp and bgtc.
2019-06-24glue: Add manager to keep track of application registryZach Hilman
Manages mapping between title IDs and application launch and control properties.
2019-06-24registered_cache: Add getter to determine source slot in content provider unionZach Hilman
Used to determine StorageId source for application data.