Lioncash
961ee4e3ea
service/sockets: Add ethc:c and ethc:i services
8 years ago
Lioncash
8827701e2a
service/sockets: Add missing bsdcfg socket service
8 years ago
Lioncash
fe262212e1
service: Add ldr services
Adds the skeleton for the ldr-related services based off the information
provided on Switch Brew.
8 years ago
Lioncash
6570f0cd5c
lm: Move LM's class declaration into the cpp file
This isn't used directly outside of this translation unit, so we can
hide it from external use.
8 years ago
Lioncash
24db60566b
lm: Amend names of Initialize() in Logger and Initialize() in LM
Amends these to match the information on Switch Brew.
8 years ago
Lioncash
a35847e520
lm: Add missing function entry to Logger's function table
8 years ago
Lioncash
cb8bf2372d
service: Add eupld services
Adds the skeleton for the eupld services based off information on Switch
Brew.
8 years ago
Lioncash
bbdc41e153
service: Add the erpt services
Adds the basic skeleton of the erpt service based off information on
Switch Brew.
8 years ago
Lioncash
7e87e94e33
service/nvdrv: Take std::string in Open() by const reference
Avoids copies from being made, since the string is only ever used for
lookup, the data is never transfered anywhere.
Ideally, we'd use a std::string_view here, but devices is a
std::unordered_map, not a std::map, so we can't use heterogenous lookup
here.
8 years ago
Lioncash
858c831282
service/nvdrv: Use std::move where applicable
Avoids unnecessary reference count increments and decrements.
In one case, we don't need to make a shared_ptr copy at all,
just to call a member function.
8 years ago
Lioncash
71f9a85a01
service/nifm: Deduplicate interface code
Rather than having the same code for each nifm service variant, we can
centralize it on one class and get rid of a bit of extra code.
8 years ago
Lioncash
c96ea0051d
service: Add pm services
Adds the skeleton for the process management services based off
information on Switch Brew.
8 years ago
Lioncash
397d500e33
service: Add the es service
Adds the skeleton for the ETicket service based off the information on
Switch Brew
8 years ago
Lioncash
11931ccf6a
time: Add the time:a service
Given we already have time:s and time:u, we should also have time:a
8 years ago
Lioncash
7449b47e7f
friend: Add friend:m, friend:s, and friend:v services
Given we already have friend:a and friend:u, we should add the remaining
services as well.
8 years ago
Lioncash
4ac9553a75
friend/interface: Add missing CreateDaemonSuspendSessionService() to the function handler table
8 years ago
Lioncash
a8473054f0
friend: Deduplicate interfaces
8 years ago
Lioncash
46a1bbceea
svc: Resolve sign comparison warnings in WaitSynchronization()
The loop's induction variable was signed, but we were comparing against
an unsigned variable.
8 years ago
Lioncash
5bd30caa5c
svc: Log parameters in SetMemoryAttribute()
Provides slightly more context than only logging out the address value.
8 years ago
Lioncash
bf002d355b
time: Simplify interface creation
We can use one instance of the interface instead of duplicating code.
8 years ago
MerryMage
672d7dd573
core_timing: Split off utility functions into core_timing_util
8 years ago
Lioncash
01efb33957
set_sys: Implement SetColorSetId()
8 years ago
Lioncash
506fb32dd5
ipc_helper: Add helper member function for popping enum values to RequestParser
8 years ago
Lioncash
88f34a5b96
core: Make converting constructors explicit where applicable
Avoids unwanted implicit conversions. Thankfully, given the large amount
of cleanup in past PRs, only this tiny amount is left over to cover.
8 years ago
Lioncash
592a444838
apm/interface: Remove redundant declaration of InstallInterfaces()
This is already declared in apm/apm.h
8 years ago
Lioncash
ecc4f5065a
mutex: Pass SharedPtr to GetHighestPriorityMutexWaitingThread() by reference
The pointed to thread's members are simply observed in this case, so we
don't need to copy it here.
8 years ago
Zach Hilman
bd410ce242
VFS Regression and Accuracy Fixes ( #776 )
* Regression and Mode Fixes
* Review Fixes
* string_view correction
* Add operator& for FileSys::Mode
* Return std::string from SanitizePath
* Farming Simulator Fix
* Use != With mode operator&
8 years ago
Lioncash
a15433c2a9
hle_ipc: Make constructors explicit where applicable
8 years ago
Lioncash
1c25b997e8
ipc_helpers: Make member variables of ResponseBuilder private
These aren't used externally at all, so they can be made private.
8 years ago
Lioncash
6e39fa5950
vi: Add std::is_trivially_copyable checks to Read and Write functions
It's undefined behavior to memcpy an object that isn't considered
trivially copyable, so put a compile-time check in to make sure this
doesn't occur.
8 years ago
Lioncash
dab340a3b3
vi: std::move std::vector in constructors where applicable
Allows avoiding unnecessary copies of the vector depending on the
calling code.
While we're at it, remove a redundant no-parameter base constructor call
8 years ago
Lioncash
ec38b938da
hle: Remove config_mem.h/.cpp
This is just an unused hold-over from citra, so we can get rid of this
to trim off an exposed global, among other things.
8 years ago
Lioncash
aba0f5452d
hle: Remove shared_page.h/.cpp
This is a holdover from citra that's essentially unused.
8 years ago
Lioncash
f53d6ee0bc
set: Add missing log call in GetAvailableLanguageCodeCount()
Forgot to include this in 2c22e4be19
8 years ago
Lioncash
2c22e4be19
set: Implement GetAvailableLanguageCodeCount()
This just returns the size of the language code buffer.
8 years ago
Lioncash
6b4ed7cf2f
set: Correct return code size of value in GetAvailableLanguageCodes()
The return code should be 32-bit in size.
8 years ago
Subv
e9639ffafa
Kernel/SVC: Perform atomic accesses in SignalProcessWideKey as per the real kernel.
8 years ago
Lioncash
861405d6c0
file_util, vfs: Use std::string_view where applicable
Avoids unnecessary construction of std::string instances where
applicable.
8 years ago
Subv
c4bfd25a6a
GPU: Implement the NVGPU_IOCTL_CHANNEL_KICKOFF_PB ioctl2 command.
This behaves quite similarly to the SubmitGPFIFO command. Referenced from Ryujinx.
Many thanks to @gdkchan for investigating this!
8 years ago
Lioncash
85ca923ed4
file_util: Use an enum class for GetUserPath()
Instead of using an unsigned int as a parameter and expecting a user to
always pass in the correct values, we can just convert the enum into an
enum class and use that type as the parameter type instead, which makes
the interface more type safe.
We also get rid of the bookkeeping "NUM_" element in the enum by just
using an unordered map. This function is generally low-frequency in
terms of calls (and I'd hope so, considering otherwise would mean we're
slamming the disk with IO all the time) so I'd consider this acceptable
in this case.
8 years ago
Subv
196a689d20
CPU: Save and restore the TPIDR_EL0 system register on every context switch.
Note that there's currently a dynarmic bug preventing this register from being written.
8 years ago
bunnei
1c43ebbdec
apm: Improve stub for GetPerformanceConfiguration.
8 years ago
Lioncash
9e7e0ed9f0
ipc_helpers: Add PushEnum() member function to ResponseBuilder
Allows pushing strongly-typed enum members without the need to always
cast them at the call sites.
Note that we *only* allow strongly-typed enums in this case. The reason
for this is that strongly typed enums have a guaranteed defined size, so
the size of the data being pushed is always deterministic. With regular
enums this can be a little more error-prone, so we disallow them.
This function simply uses the underlying type of the enum to determine
the size of the data. For example, if an enum is defined as:
enum class SomeEnum : u16 {
SomeEntry
};
if PushEnum(SomeEnum::SomeEntry); is called, then it will push a
u16-size amount of data.
8 years ago
Subv
34d18dac20
HLE/ACC: Stub IManagerForApplication::GetAccountId to return an error.
And make IManagerForApplication::CheckAvailability always return false.
Returning a bogus id from GetAccountId causes games to crash on boot.
We should investigate this with a hwtest and either stub it properly or implement it.
8 years ago
Lioncash
2ce4fde1ef
audren_u: Use a std::array instead of std::string for holding the audio interface/device name
std::string doesn't include the null-terminator in its data() + size()
range. This ensures that the null-terminator will also be written to the buffer
8 years ago
Lioncash
516bc05b15
audout_u: Use a std::array instead of std::string for holding the audio interface name
Uses a type that doesn't potentially dynamically allocate, and ensures
that the name of the interface is properly null-terminated when writing
it to the buffer.
8 years ago
Lioncash
059d0017f1
thread: Convert ThreadStatus into an enum class
Makes the thread status strongly typed, so implicit conversions can't
happen. It also makes it easier to catch mistakes at compile time.
8 years ago
Lioncash
433c9c7bac
pl_u: Simplify WriteBuffer() calls in GetSharedFontInOrderOfPriority()
With the new overload, we can simply pass the container directly.
8 years ago
Subv
5bad464f7b
HLE/ACC: Return an IProfile that is consistent with what was requested.
The default username for now is "yuzu".
We should eventually allow the creation of users in the emulator and have the ability to modify their parameters.
8 years ago
Subv
791d6b8b3a
HLE/ACC: Change the default user id to be consistent with what we tell games on startup.
In IApplicationFunctions::PopLaunchParameter we tell the games that they were launched as user id 1.
8 years ago