summaryrefslogtreecommitdiff
path: root/src/core (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #1959 from DarkLordZach/custom-rtcGravatar bunnei2019-01-103-7/+21
|\ | | | | settings: Add support for setting the RTC manually
| * settings: Fix comment structureGravatar Zach Hilman2019-01-071-4/+5
| |
| * settings: Use std::chrono::seconds instead of s64 for RTCGravatar Zach Hilman2019-01-073-11/+10
| |
| * time: Use custom RTC settings if applicable for gameGravatar Zach Hilman2019-01-071-6/+10
| |
| * core: Set custom RTC differential on game bootGravatar Zach Hilman2019-01-071-0/+7
| |
| * settings: Add custom RTC settingsGravatar Zach Hilman2019-01-071-0/+3
| | | | | | Stored as signed seconds since epoch.
* | Merge pull request #1939 from DarkLordZach/web-appletGravatar bunnei2019-01-1020-586/+1012
|\ \ | |/ |/| applets: Implement HLE web browser applet (LibAppletOff)
| * travis: Use correct package for linux Qt5WebEngineGravatar Zach Hilman2018-12-282-3/+2
| |
| * web_browser: Add bounds checking to applet interfaceGravatar Zach Hilman2018-12-287-134/+139
| |
| * core: Add getter and setter for WebBrowserApplet frontendGravatar Zach Hilman2018-12-284-2/+22
| |
| * frontend: Add frontend responder for web browserGravatar Zach Hilman2018-12-282-0/+52
| |
| * applets: Implement LibAppletOff (Web) appletGravatar Zach Hilman2018-12-284-0/+234
| |
| * loader: Add accessor for Manual RomFSGravatar Zach Hilman2018-12-285-0/+30
| |
| * hid: Make Hid service accessible and add GetPressStateGravatar Zach Hilman2018-12-284-459/+540
| |
| * romfs: Add SingleDiscard extraction typeGravatar Zach Hilman2018-12-282-2/+6
| | | | | | | | Needed for manual RomFS extraction, as Full generates an extra directory and Truncated generates variable results.
| * am: Add size parameter to am:IStorage loggingGravatar Zach Hilman2018-12-281-4/+4
| |
* | Merge pull request #1989 from lioncash/setGravatar bunnei2019-01-071-39/+58
|\ \ | | | | | | service/vi: Unstub IApplicationDisplayService's SetLayerScalingMode
| * | service/vi: Correct scaling mode conversionsGravatar Lioncash2019-01-041-15/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | These values are not equivalent, based off RE. The internal value is put into a lookup table with the following values: [3, 0, 1, 2, 4] So the values absolutely do not map 1:1 like the comment was indicating.
| * | service/vi: Factor out scaling mode conversions from the IPC function itselfGravatar Lioncash2019-01-041-17/+21
| | | | | | | | | | | | | | | | | | Avoids entangling the IPC buffer appending with the actual operation of converting the scaling values over. This also inserts the proper error handling for invalid scaling values.
| * | service/vi: Unstub IApplicationDisplayService' SetLayerScalingMode()Gravatar Lioncash2019-01-041-21/+38
| | | | | | | | | | | | | | | | | | | | | | | | This appears to only check if the scaling mode can actually be handled, rather than actually setting the scaling mode for the layer. This implements the same error handling performed on the passed in values.
* | | Merge pull request #1988 from lioncash/resGravatar bunnei2019-01-051-12/+8
|\ \ \ | | | | | | | | service/vi: Correct reported dimensions from IApplicationDisplayService's GetDisplayResolution()
| * | | service/vi: Correct reported dimensions from IApplicationDisplayService's ↵Gravatar Lioncash2019-01-041-12/+8
| |/ / | | | | | | | | | | | | | | | | | | | | | GetDisplayResolution() Within the actual service, it makes no distinguishing between docked and undocked modes. This will always return the constants values reporting 1280x720 as the dimensions.
* | | Merge pull request #1981 from ogniK5377/open-app-area-createGravatar bunnei2019-01-041-4/+4
|\ \ \ | | | | | | | | Return no application area when games try to open an application area
| * | | Return no application area when games try to open an application areaGravatar David Marcec2019-01-041-4/+4
| | | | | | | | | | | | | | | | This will prompt CreateApplicationArea
* | | | Merge pull request #1980 from ogniK5377/applet-msg-updateGravatar bunnei2019-01-041-1/+10
|\ \ \ \ | |_|/ / |/| | | Proper no message handling for AM::PopMessage
| * | | Proper no message handling for AM::PopMessageGravatar David Marcec2019-01-041-1/+10
| |/ / | | | | | | | | | When we have no messages, we should be returning an error code.
* | | Removed pulse event typeGravatar David Marcec2019-01-043-7/+0
| | | | | | | | | | | | Pulse is considered a hack and nothing should be using it. We should completely remove it
* | | Merge pull request #1975 from lioncash/viGravatar bunnei2019-01-031-4/+15
|\ \ \ | | | | | | | | service/vi: Minor updates and corrections to the DisplayInfo struct
| * | | service/vi: Correct initial width and height valuesGravatar Lioncash2019-01-021-2/+2
| | | | | | | | | | | | | | | | | | | | Based off RE, it appears that almost all display types seem to use 1920x1080 except for a few (null display, edid display).
| * | | service/vi: Document unknown DisplayInfo struct membersGravatar Lioncash2019-01-021-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | It appears that the two members indicate whether a display has a bounded number of layers (and if set, the second member indicates the total number of layers).
* | | | Fixed botw deadlock(and possibly 30 fps games rendering too fast? needs ↵Gravatar David Marcec2019-01-031-1/+1
| |/ / |/| | | | | | | | | | | | | | testing to confirm) Upon investigating the issue with #1878, I found that games are the ones who handle the vsync event resetting and not us.
* | | Merge pull request #1976 from lioncash/displayGravatar bunnei2019-01-021-4/+17
|\ \ \ | | | | | | | | service/vi: Implement OpenDefaultDisplay in terms of OpenDisplay
| * | | service/vi: Implement OpenDefaultDisplay in terms of OpenDisplayGravatar Lioncash2019-01-021-4/+17
| |/ / | | | | | | | | | | | | | | | Internally within the vi services, this is essentially all that OpenDefaultDisplay does, so it's trivial to just do the same, and forward the default display string into the function.
* | | service/vi: Implement SetDisplayEnabled()Gravatar Lioncash2019-01-021-1/+10
| | | | | | | | | | | | | | | | | | | | | This IPC command is simply a stub inside the actual service itself, and just returns a successful error code regardless of input. This is likely only retained in the service interface to not break older code that relied upon it succeeding in some way.
* | | Merge pull request #1977 from lioncash/vi-logGravatar bunnei2019-01-021-63/+74
|\ \ \ | | | | | | | | service/vi: Log more information where applicable
| * | | service/vi: Log more information where applicableGravatar Lioncash2019-01-021-63/+74
| |/ / | | | | | | | | | | | | | | | In many cases, we didn't bother to log out any of the popped data members. This logs them out to the console within the logging call to provide more contextual information.
* / / core/kernel: Remove unnecessary inclusionsGravatar Lioncash2018-12-3116-16/+22
|/ / | | | | | | Gets rid of a few unnecessary header dependencies in some source files.
* | Merge pull request #1966 from lioncash/backtraceGravatar bunnei2018-12-312-7/+8
|\ \ | | | | | | arm_interface: Minor cleanup
| * | arm_interface: Make include path relative for arm_interface.hGravatar Lioncash2018-12-301-1/+1
| | | | | | | | | | | | Makes it consistent with the rest of the includes.
| * | arm_interface: Make LogBacktrace() a const member functionGravatar Lioncash2018-12-302-2/+2
| | | | | | | | | | | | This function doesn't modify instance state, so it can be made const.
| * | arm_interface: Mark variables as const where applicable in LogBacktrace()Gravatar Lioncash2018-12-301-3/+4
| | | | | | | | | | | | | | | Two of these variables have fixed values, so we can make that immediately obvious from the get-go.
| * | arm_interface: Remove unnecessary semicolonGravatar Lioncash2018-12-301-1/+1
| | | | | | | | | | | | | | | Namespaces don't require the use of a semicolon. Silences a -Wextra-semi warning.
* | | kernel/svc: Correct misleading error message within CreateThread()Gravatar Lioncash2018-12-301-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bounds check to ensure that the thread priority is within the valid range of 0-64. If it exceeds 64, that doesn't necessarily mean that an actual priority of 64 was expected (it actually means whoever called the function screwed up their math). Instead clarify the message to indicate the allowed range of thread priorities.
* | | kernel/svc: Sanitize core number and thread priorities in CreateThread()Gravatar Lioncash2018-12-301-6/+17
| | | | | | | | | | | | | | | | | | Now that we handle the kernel capability descriptors we can correct CreateThread to properly check against the core and priority masks like the actual kernel does.
* | | kernel/process: Rename GetAllowedProcessorMask() and ↵Gravatar Lioncash2018-12-302-11/+11
| | | | | | | | | | | | | | | | | | GetAllowedThreadPriorityMask() Makes them consistent with their kernel capability counterparts.
* | | kernel/svc: Simplify thread core ID sanitizing in CreateThreadGravatar Lioncash2018-12-301-7/+1
|/ / | | | | | | | | Rather than use a switch here, this can be collapsed into a simple range check, which is a little easier on the eyes.
* | Merge pull request #1956 from lioncash/process-threadGravatar Sebastian Valle2018-12-305-57/+51
|\ \ | | | | | | kernel/process: Start the main thread using the specified ideal core
| * | kernel/process: Start the main thread using the specified ideal coreGravatar Lioncash2018-12-271-2/+2
| | | | | | | | | | | | | | | This matches kernel behavior in that processes are started using their specified ideal core, rather than always starting on core 0.
| * | kernel: Rename 'default' CPU core to 'ideal' coreGravatar Lioncash2018-12-274-21/+21
| | | | | | | | | | | | | | | | | | This makes the naming more closely match its meaning. It's just a preferred core, not a required default core. This also makes the usages of this term consistent across the thread and process implementations.
| * | kernel/thread: Move process thread initialization into process.cppGravatar Lioncash2018-12-273-36/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This function isn't a general purpose function that should be exposed to everything, given it's specific to initializing the main thread for a Process instance. Given that, it's a tad bit more sensible to place this within process.cpp, which keeps it visible only to the code that actually needs it.