aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle
AgeCommit message (Collapse)Author
2020-12-28hle: service: nvdrv: Revert #4981 to remove usage of SleepClientThread.bunnei
- Note, this always processes the ioctl right away, which fixes BotW 1.0.0 issues.
2020-12-28hle: kernel: service_thread: Add parameter for thread pool size.bunnei
2020-12-28hle: service: nvflinger: Refactor locking and interfaces.bunnei
2020-12-28hle: service: vi: Remove usage of SleepClientThread.bunnei
2020-12-28core: hle: server_session: Use separate threads for each service connection.bunnei
2020-12-21Merge pull request #5042 from Morph1984/project-aetherbunnei
Project Aether: Reimplementation of the Web Browser Applet
2020-12-20Merge pull request #5131 from bunnei/scheduler-rewritebunnei
Rewrite Kernel scheduler based on Atmosphere
2020-12-18applets/web: Implement the online web browser appletMorph
2020-12-18main, applets/web: Re-add progress dialog for RomFS extractionMorph
2020-12-18pl_u, applets/web: Decrypt shared fonts to TTF filesMorph
2020-12-18ns_vm: Stub NeedsUpdateVulnerabilityMorph
This is used to force system updates on launching the web browser. We do not care about system updates so this can be set to false.
2020-12-18controllers/npad: Make press_state atomicMorph
2020-12-18applets/web: Implement the default web browser applet frontendMorph
2020-12-18applets/web: Implement the offline browser applet backendMorph
2020-12-18applets/web: Initial implementation of the web browser appletMorph
2020-12-18applets: Remove the previous web browser applet implementationMorph
2020-12-18buffer_queue: better use of std::arrayameerj
2020-12-17Overwrite slots instead of queuing them, add disconnect signalameerj
Fix for Katana Zero and Yoshi's Crafted World
2020-12-15Merge pull request #5190 from Morph1984/validate_device_handlebunnei
controllers/npad: Validate device handles before use
2020-12-15Merge pull request #5119 from Morph1984/fs-opendatastoragewithprogramindexbunnei
fsp_srv: Implement OpenDataStorageWithProgramIndex
2020-12-14Merge pull request #5168 from Morph1984/aoc-PurchaseEventManagerbunnei
aoc_u: Stub IPurchaseEventManager and its service commands
2020-12-12controllers/npad: Validate device handles before useMorph
Some games such as NEKOPARA Vol. 3 send invalid device handles when calling InitializeVibrationDevice. Introduce a check to validate the device handle before use.
2020-12-11Merge pull request #5172 from lioncash/svc-widebunnei
svc: Remove unnecessary casts
2020-12-10Merge pull request #5123 from Morph1984/nim-IsLargeResourceAvailablebunnei
nim: Stub IsLargeResourceAvailable
2020-12-09Merge pull request #5142 from comex/xx-poll-eventsRodrigo Locatti
network, sockets: Replace `POLL_IN`, `POLL_OUT`, etc. constants with an `enum class PollEvents`
2020-12-08Merge pull request #5166 from lioncash/log-castbunnei
core: Remove unnecessary enum casts in log calls
2020-12-08Merge pull request #5135 from Morph1984/applets-shadowbunnei
applets: Resolve variable shadowing
2020-12-08svc: Remove unnecessary castsLioncash
Simplifies and removes some casts. In all cases, these were generally widening from a 32-bit unsigned type to a 64-bit unsigned type, so no information would be lost from the conversion.
2020-12-08IPurchaseEventManager: Implement GetPurchasedEventReadableHandleMorph
- Used by Pokémon Café Mix - Used by DOOM: Eternal
2020-12-08IPurchaseEventManager: Stub Set(Default)DeliveryTargetMorph
- Used by Pokémon Café Mix - Used by DOOM: Eternal
2020-12-08aoc_u: Stub Create(Permanent)EcPurchasedEventManagerMorph
- Used by Pokémon Café Mix - Used by DOOM: Eternal
2020-12-08fsp_srv: Implement OpenDataStorageWithProgramIndexMorph
- Used by RollerCoaster Tycoon 3: Complete Edition
2020-12-08file_sys: Consolidate common Title ID operationsMorph
2020-12-07core: Remove unnecessary enum casts in log callsLioncash
Follows the video core PR. fmt doesn't require casts for enum classes anymore, so we can remove quite a few casts.
2020-12-07controller: Use std::move within ConvertToFrontendParameters()Lioncash
Avoids unnecessary copies.
2020-12-07controller: Avoid unnecessary copies in ConfigurationComplete()Lioncash
Avoids unnecessary 1072 byte copies when querying info about controllers.
2020-12-06Merge pull request #5148 from comex/xx-unused-fieldsbunnei
core: Mark unused fields as [[maybe_unused]]
2020-12-06Merge pull request #5154 from comex/xx-ipcbunnei
hle: Type check ResponseBuilder::Push arguments, and fix use in vi.cpp
2020-12-07Merge pull request #5147 from comex/xx-purevirtLC
nvdrv: Remove useless re-declaration of pure virtual methods that were already declared in the superclass
2020-12-07Merge pull request #5150 from comex/xx-boxcatLC
boxcat: Avoid unnecessary object copy
2020-12-07Merge pull request #5136 from lioncash/video-shadow3LC
video_core: Resolve more variable shadowing scenarios pt.3
2020-12-06network, sockets: Replace `POLL_IN`, `POLL_OUT`, etc. constants with an ↵comex
`enum class PollEvents` Actually, two enum classes, since for some reason there are two separate yet identical `PollFD` types used in the codebase. I get that one is ABI-compatible with the Switch while the other is an abstract type used for the host, but why not use `WSAPOLLFD` directly for the latter? Anyway, why make this change? Because on Apple platforms, `POLL_IN`, `POLL_OUT`, etc. (with an underscore) are defined as macros in <sys/signal.h>. (This is inherited from FreeBSD.) So defining a variable with the same name causes a compile error. I could just rename the variables, but while I was at it I thought I might as well switch to an enum for stronger typing. Also, change the type used for values copied directly to/from the `events` and `revents` fields of the host *native* `pollfd`/`WSASPOLLFD`, from `u32` to `short`, as `short` is the correct canonical type on both Unix and Windows.
2020-12-06Fix "explicitly defaulted but implicitly deleted" warningcomex
`PhysicalCore`'s move assignment operator was declared as `= default`, but was implicitly deleted because `PhysicalCore` has fields of reference type. Switch to explicitly deleting it to avoid a Clang warning. The move *constructor* is still defaulted, and is required to exist due to the use of `std::vector<PhysicalCore>`.
2020-12-06hle: Type check ResponseBuilder::Push arguments, and fix use in vi.cppcomex
- Add a type check so that calling Push with an invalid type produces a compile error rather than a linker error. - vi.cpp was calling Push with a variable of type `std::size_t`. There's no explicit overload for `size_t`, but there is one for `u64`, which on most platforms is the same type as `size_t`. On macOS, however, it isn't: both types are 64 bits, but `size_t` is `unsigned long` and `u64` is `unsigned long long`. Regardless, it makes more sense to explicitly use `u64` here instead of `size_t`.
2020-12-06core: Mark unused fields as [[maybe_unused]]comex
2020-12-06boxcat: Avoid unnecessary object copycomex
2020-12-06nvdrv: Remove useless re-declaration of pure virtual methods that were ↵comex
already declared in the superclass
2020-12-06hle: kernel: Process: Various style fixes based on code review feedback.bunnei
2020-12-06hle: kernel: Thread: Various style fixes based on code review feedback.bunnei
2020-12-06hle: kernel: KScopedSchedulerLockAndSleep: Various style fixes based on code ↵bunnei
review feedback.