aboutsummaryrefslogtreecommitdiff
path: root/src/core
AgeCommit message (Collapse)Author
2020-07-28configure_graphics: Remove Force 30 FPS modeMorph
The introduction of multicore rendered this setting non-functional as timing code was changed. This removes the setting entirely.
2020-07-28common/atomic_ops: Don't cast away volatile from pointersLioncash
Preserves the volatility of the pointers being casted.
2020-07-28service/bsd: Handle Poll with no entries accuratelyReinUsesLisp
Testing shows that Poll called with zero entries returns -1 and signals an errno of zero.
2020-07-28services/bsd: Implement most of bsd:sReinUsesLisp
This implements: Socket, Poll, Accept, Bind, Connect, GetPeerName, GetSockName, Listen, Fcntl, SetSockOpt, Shutdown, Recv, RecvFrom, Send, SendTo, Write, and Close The implementation was done referencing: SwIPC, switchbrew, testing with libnx and inspecting its code, general information about bsd sockets online, and analysing official software. Not everything from these service calls is implemented, but everything that is not implemented will be logged in some way.
2020-07-28service/sockets: Add worker pool abstractionReinUsesLisp
Manage worker threads with an easy to use abstraction. We can expand this to support thread deletion in the future.
2020-07-28service/sockets: Add worker abstraction to execute blocking calls asynchronouslyReinUsesLisp
This abstraction allows executing blocking functions (like recvfrom on a socket configured for blocking) without blocking the service thread. It is intended to be used with SleepClientThread.
2020-07-28service/sockets: Add translate functionsReinUsesLisp
These functions translate from Network enumerations/structures to guest enumerations/structures and viceversa.
2020-07-28service/sockets: Add enumerations and structuresReinUsesLisp
Add guest enumerations and structures used in socket services
2020-07-28services/nifm: Implement GetCurrentIpAddressReinUsesLisp
This is trivially implemented using the Network abstraction - Used by ftpd
2020-07-27device_memory: Remove unused system memberLioncash
This isn't used by anything in particular, so it can be removed.
2020-07-27cpu_manager: Remove redundant std::function declarationsLioncash
We can just return the function directly. Making for less reading.
2020-07-27Update src/core/hle/service/nvdrv/devices/nvmap.cppbunnei
Co-authored-by: LC <mathew1800@gmail.com>
2020-07-27core_timing: Make use of uintptr_t to represent user_dataLioncash
Makes the interface future-proofed for supporting other platforms in the event we ever support platforms with differing pointer sizes. This way, we have a type in place that is always guaranteed to be able to represent a pointer exactly.
2020-07-27remove unused variable;CrazyMax
2020-07-26hle: nvdrv: Rewrite of GPU memory management.bunnei
2020-07-25nvflinger: Mark interface functions with return values as [[nodiscard]]Lioncash
Not using the return value of these functions are undeniably the source of a bug. This way we allow compilers to loudly make any future misuses evident.
2020-07-25nvflinger: Use return value of Lock()Lioncash
comex reported in #4424 that we were incorrectly discarding the return value of Lock() which is correct.
2020-07-25Merge pull request #4350 from ogniK5377/hid-update-connectedbunnei
hid: Only update keyboard & debug pad inputs if enabled
2020-07-24Merge pull request #4380 from ogniK5377/swkbd-inline-1bunnei
swkbd: Return result for Calc request for inlined swkbd
2020-07-25audio_core: Apollo Part 1, AudioRenderer refactorDavid Marcec
2020-07-22network: add missing include for BSDsJan Beich
src/core/network/network.cpp:112:28: error: use of undeclared identifier 'SHUT_RD' constexpr int SD_RECEIVE = SHUT_RD; ^ src/core/network/network.cpp:113:25: error: use of undeclared identifier 'SHUT_WR' constexpr int SD_SEND = SHUT_WR; ^ src/core/network/network.cpp:114:25: error: use of undeclared identifier 'SHUT_RDWR' constexpr int SD_BOTH = SHUT_RDWR; ^ src/core/network/network.cpp:120:37: error: unknown type name 'in_addr'; did you mean 'in_addr_t'? constexpr IPv4Address TranslateIPv4(in_addr addr) { ^~~~~~~ in_addr_t /usr/include/netdb.h:66:20: note: 'in_addr_t' declared here typedef __uint32_t in_addr_t; ^ src/core/network/network.cpp:121:27: error: member reference base type 'in_addr_t' (aka 'unsigned int') is not a structure or union const u32 bytes = addr.s_addr; ~~~~^~~~~~~ src/core/network/network.cpp:121:15: error: variables defined in a constexpr function must be initialized const u32 bytes = addr.s_addr; ^ src/core/network/network.cpp:126:10: error: incomplete result type 'sockaddr' in function definition sockaddr TranslateFromSockAddrIn(SockAddrIn input) { ^ /usr/include/netdb.h:142:9: note: forward declaration of 'sockaddr' struct sockaddr *ai_addr; /* binary address */ ^ src/core/network/network.cpp:127:5: error: unknown type name 'sockaddr_in'; did you mean 'sockaddr'? sockaddr_in result; ^~~~~~~~~~~ sockaddr /usr/include/netdb.h:142:9: note: 'sockaddr' declared here struct sockaddr *ai_addr; /* binary address */ ^ src/core/network/network.cpp:127:17: error: variable has incomplete type 'sockaddr' sockaddr_in result; ^ /usr/include/netdb.h:142:9: note: forward declaration of 'sockaddr' struct sockaddr *ai_addr; /* binary address */ ^ src/core/network/network.cpp:131:29: error: use of undeclared identifier 'AF_INET' result.sin_family = AF_INET; ^ src/core/network/network.cpp:135:29: error: use of undeclared identifier 'AF_INET' result.sin_family = AF_INET; ^ src/core/network/network.cpp:139:23: error: use of undeclared identifier 'htons' result.sin_port = htons(input.portno); ^ src/core/network/network.cpp:143:14: error: variable has incomplete type 'sockaddr' sockaddr addr; ^ /usr/include/netdb.h:142:9: note: forward declaration of 'sockaddr' struct sockaddr *ai_addr; /* binary address */ ^ src/core/network/network.cpp:156:1: error: unknown type name 'linger' linger MakeLinger(bool enable, u32 linger_value) { ^ src/core/network/network.cpp:157:5: error: unknown type name 'linger' linger value; ^ src/core/network/network.cpp:185:16: error: use of undeclared identifier 'AF_INET' return AF_INET; ^ src/core/network/network.cpp:195:16: error: use of undeclared identifier 'SOCK_STREAM' return SOCK_STREAM; ^ src/core/network/network.cpp:197:16: error: use of undeclared identifier 'SOCK_DGRAM' return SOCK_DGRAM; ^ src/core/network/network.cpp:207:16: error: use of undeclared identifier 'IPPROTO_TCP' return IPPROTO_TCP; ^ fatal error: too many errors emitted, stopping now [-ferror-limit=]
2020-07-21vi: IApplicationDisplayService:GetIndirectLayerImageRequiredMemoryInfoDavid Marcec
Needed for dark souls and monster hunter
2020-07-21Merge pull request #4306 from ReinUsesLisp/bsd-networkDavid
core/network: Add network abstraction
2020-07-20Address issuesDavid Marcec
2020-07-19swkbd: Return result for Calc request for inlined swkbdDavid Marcec
Fixes random swkbd popups in monster hunter
2020-07-19core/network: Add network abstractionReinUsesLisp
This commit adds a network abstraction designed to implement bsd:s but at the same time work as a generic abstraction to implement any networking code we have to use from core. This is implemented on top of BSD sockets on Unix systems and winsock on Windows. The code is designed around winsocks having compatibility definitions to support both BSD and Windows sockets.
2020-07-18Merge pull request #4348 from lioncash/nanobunnei
core_timing: Make usage of nanoseconds more consistent in the interface
2020-07-18Merge pull request #4345 from Morph1984/fix-createfilebunnei
filesystem: Create subdirectories prior to creating a file
2020-07-18Merge pull request #4273 from ogniK5377/async-shaders-prodbunnei
video_core: Add asynchronous shader decompilation and compilation
2020-07-17Merge pull request #4365 from lioncash/miibunnei
mii/manager: Make use of designated initializers
2020-07-17Merge pull request #4366 from lioncash/mii-signbunnei
mii/manager: Resolve sign mismatch warnings
2020-07-17Merge pull request #4344 from VolcaEM/c3bunnei
dmnt_cheat_vm: Implement opcode 0xC3 (ReadWriteStaticRegister)
2020-07-17Merge pull request #4309 from Morph1984/fix-romfs-bugbunnei
fs: Fix RomFS building when zero byte files are present
2020-07-17Drop settings namespaceDavid Marcec
2020-07-17Rebase for per game settingsDavid Marcec
2020-07-17Merge pull request #4347 from lioncash/loggingDavid
settings: Make use of std::string_view over std::string for logging
2020-07-17Merge pull request #4371 from lioncash/cmake2David
core/CMakeLists: Add missing physical_memory.h header file
2020-07-17Merge pull request #4357 from lioncash/unused4David
kernel: Remove unused variables
2020-07-17Merge pull request #4358 from lioncash/unused5David
kernel/thread: Remove unimplemented function prototype
2020-07-16core/CMakeLists: Add missing physical_memory.h header fileLioncash
Allows this header file to show up in IDE CMake generators.
2020-07-16constants: Add missing <array> includeLioncash
Eliminates reliance on an indirect include.
2020-07-16mii/manager: Resolve sign mismatch warningsLioncash
Previously the loop termination condition was testing variables of different signedness.
2020-07-16mii/manager: Make use of designated initializersLioncash
Allows returning the structure in a more concise manner.
2020-07-16Merge pull request #4292 from bunnei/mii-rewritebunnei
hle: service: mii: Rewrite service to properly support creation of random and default miis.
2020-07-16Merge pull request #4327 from lioncash/desig2Rodrigo Locatti
address_space_info: Make use of designated initializers
2020-07-16kernel/thread: Remove unimplemented function prototypeLioncash
This isn't used, so it can be removed.
2020-07-16kernel: Remove unused variablesLioncash
Resolves some compiler warnings in the Linux build.
2020-07-16kernel: Add missing includeLioncash
2020-07-16cpu_manager: Mark function getters as staticLioncash
All these do are return std::function instances of static functions, so these can be used without an instance of the CPU manager.
2020-07-16cpu_manager: Remove unused preemption_count variableLioncash
Shrinks the data structure by 8 bytes.