Commit Graph

584 Commits

Author SHA1 Message Date
plutooo
1660f99afe Stubbed gpfifo, zcull_ctx 2018-08-31 13:05:21 +02:00
plutooo
4bd1d3313c Fix nvgfx, add nvinfo 2018-08-31 13:05:21 +02:00
plutooo
f6aa4e3d52 Minimize nvgfx.c 2018-08-31 13:05:21 +02:00
plutooo
b24f6babbb Make compilable 2018-08-31 13:05:21 +02:00
plutooo
61ebd9ddfd Started implementing channels 2018-08-31 13:05:21 +02:00
plutooo
9a759c26f5 Rename nvmap->buffer 2018-08-31 13:05:21 +02:00
plutooo
04751087ca Stylechanges to binder, and implemented gpu address space 2018-08-31 13:05:21 +02:00
plutooo
cd753b1b58 Implemented nvmap.c 2018-08-31 13:05:21 +02:00
plutooo
112b2b5d8e Move nvidia driver to nvidia/ 2018-08-31 13:05:21 +02:00
plutooo
d8bb563546 Renamed gfx/ to display/ 2018-08-31 13:05:21 +02:00
plutooo
978c3f7f15 Style fixes, use structs for parsing parcels, renamed bufferProducer to bq 2018-08-31 13:05:21 +02:00
fincs
772c839c8c Add audio/ ("AudioDriver"), a high level wrapper around audren 2018-08-31 13:05:21 +02:00
fincs
6fbf25fb62 Add audren:u IPC service wrapper with structure definitions 2018-08-31 13:05:21 +02:00
fincs
80439a186b Add MOD0 header to crt0 2018-08-31 13:05:21 +02:00
plutooo
68a77ac950 Close sm session properly 2018-08-28 21:29:55 +02:00
David Marcec
d91c315f77 Fixed nifm not initializing properly for < 3.0.0 2018-08-27 16:10:53 +02:00
XorTroll
722450ae25 Add bpc service with ShutdownSystem and RebootSystem commands (#144) 2018-08-24 16:21:16 +02:00
Juan Antonio Hernández Cánovas
377683acd5 Add rwlockInit (#155) 2018-08-24 16:20:01 +02:00
yellows8
3513c91c3c Added the remaining init for AppletType_SystemApplet. 2018-08-17 21:55:37 -04:00
yellows8
a7ba75ea1a Added comment regarding the AppletType_Application double-init issue. 2018-08-15 16:32:11 -04:00
plutooo
fb42ebe53a Fix memory leak in tmemCreate 2018-08-11 15:01:12 +02:00
Lioncash
d3f388d2c8 socket: Correct missing break within _socketParseBsdResult() 2018-08-09 14:53:41 +02:00
Lioncash
12a473ecbe hid: Correct bitwise AND for pro controllers in hidInitializeVibrationDevices()
LAYOUT_PROCONTROLLER is a value of zero, so the bitwise AND condition
here would always be false (TYPE_PROCONTROLLER, on the other hand is a
value of 1)
2018-08-09 14:53:26 +02:00
fincs
f3b530cea3 C11 threads: enable preemptive scheduler and load balancing 2018-08-06 17:59:51 +02:00
fincs
b181d725ac Use revised CondVar API in C11 threads impl 2018-08-05 14:32:10 +02:00
fincs
1e349b6ce8 Change CondVar API to have the mutex be passed to condvarWait* instead of condvarInit 2018-08-05 14:31:31 +02:00
fincs
062ef2b188 Add svcGetThreadCoreMask and svcSetThreadCoreMask 2018-08-05 14:30:08 +02:00
fincs
d255fe730b Experimental partial C11 threads support 2018-08-05 13:23:08 +02:00
plutooo
9fc5e85c88 Event bringup 2018-08-05 13:23:08 +02:00
Jakob Dietrich
8e19bb5b0d Fix semaphoreTryWait 2018-08-04 12:14:02 +02:00
Michael Scire
81e6972ae1 Fatal: fix marshalling 2018-07-28 18:24:19 -07:00
Rajko Stojadinovic
d726c7c55c Implement some missing fs functions (#141) 2018-07-28 17:49:14 +02:00
klockee
27b8868646 Wrapped and implemented fsOpenBisFilesystem() (#140) 2018-07-28 17:08:42 +02:00
Rajko Stojadinovic
01fb4218ba Add ncmContentStorageGetPlaceHolderPath and ncmContentStorageCleanupAllPlaceHolder 2018-07-27 18:14:43 +02:00
Rajko Stojadinovic
1b7acba590 add ncmContentStorageDisableForcibly and ncmContentMetaDatabaseDisableForcibly 2018-07-27 18:14:43 +02:00
Rajko Stojadinovic
c3278ffd34 Add ncmContentStorage functions needed for writing content 2018-07-27 18:14:43 +02:00
Jakob Dietrich
a180a36cb3 Fixed hid in sysmodules (#135) 2018-07-27 18:01:41 +02:00
Dave Murphy
be509f62ce return through libc exit rather than __libnx_exit directly (#139) 2018-07-26 18:01:40 +02:00
Rajko Stojadinovic
e1d50dc129 Fix signature of ncmContentMetaDatabaseSet/Get, add ncmContentMetaDatabaseList (#134)
* Fix ncmContentMetaDatabaseSet/ncmContentMetaDatabaseGet, add ncmContentMetaDatabaseList
2018-07-25 20:15:54 -04:00
Oliver Kuckertz
1eafa1b283 Fix data race by reordering in _CacheValues 2018-07-22 17:03:36 +02:00
Joel16
2bcede91ba Add fsFsCleanDirectoryRecursively 2018-07-19 11:33:56 -04:00
Dave Murphy
aa3c35e6e3 adjust fsdev_fixpath for cwd changes (#132)
* adjust fsdev_fixpath for cwd changes
2018-07-19 11:31:51 -04:00
Adubbz
d48cf6aa2e Added ncm to switch.h, fixed wrong order in ncmContentMetaDatabaseListApplication 2018-07-19 11:29:48 -04:00
tesnos
9530da3237 Add fsOpenBisStorage and fsStorageGetSize (#130)
* add fsOpenBisStorage and fsStorageGetSize
2018-07-19 11:16:38 -04:00
Adubbz
e4c3f7d3a2 Added ncm commands (#129) 2018-07-07 04:03:48 +02:00
Daniel Edwards
ffc404a7f6 Added accountGetUserCount and accountListAllUsers (#103)
* Added accountGetUserCount and accountListAllUsers
2018-07-01 16:34:21 -04:00
Kevoot
fbe2c1f2ce Add Semaphore (#125) 2018-07-01 00:45:41 +02:00
SciresM
97b295acbc Fatal: Only exit process if required, exit cleanly. (#127)
* Fatal: Only exit process if required, exit cleanly.
2018-06-26 11:28:07 -04:00
Dave Murphy
35be7ac772 allow user additions to init/exit code (#124)
* allow user additions to init/exit code
2018-06-25 12:42:52 -04:00
SciresM
dbbaf64ad3 ns:dev: Add TerminateProcess and TerminateProgram (#122)
* ns:dev: Add TerminateProcess and TerminateProgram
2018-06-25 12:02:08 -04:00
Michael Scire
9770f4bb18 Implement svcGetThreadList 2018-06-25 11:18:07 -04:00
Michael Scire
481d27d1f1 Implement svcGetDebugThreadParam 2018-06-25 11:18:07 -04:00
gdkchan
b55317511c Fix mutexUnlock 2018-06-25 11:12:45 -04:00
Michael Scire
c26e410ed8 Fatal: Make fatalSimple not create report, add FatalType enum 2018-06-25 12:33:15 +02:00
Dave Murphy
8b2b12b454 fix _IOC cast 2018-06-14 18:26:29 -04:00
Dave Murphy
4e4d2fe3c6 translate horizon errno to newlib errno 2018-06-14 18:25:52 -04:00
Dave Murphy
70cd9e017d fix ioctl 2018-06-14 01:51:36 +02:00
Joel16
eb3c264e88 Add setsysSetColorSetId and region codes 2018-06-13 19:34:20 -04:00
Dave Murphy
9860ad331c implement nanosleep 2018-06-14 00:49:20 +02:00
jarulo
8b793729fc Fix inet_pton4 2018-06-12 13:08:27 +02:00
Somebody Whoisbored
ad4af954c2 Added nifm service (#110)
* Added nifm service
* Properly implemented gethostid
* Implemented gethostname
2018-06-07 18:00:51 -04:00
Joel
3c6344d7f3 Add more set:sys Get*/Set* functions (#108)
* Use setsysGetFlag/setsysSetFlag instead of setsysGet*/setsysSet*.
* Added more setsys Flags (now handled via an enum).
2018-06-07 16:06:36 -04:00
Dave Murphy
3326d5e62d Time fixes (#102)
* provide microseconds to gettimeofday
* implement clock functions
2018-06-07 15:35:41 -04:00
Joel
1abfb02460 Add nsGetSpace commands (#111)
* Add nsGetSpace commands
2018-06-05 22:15:52 -04:00
Adubbz
d3889fb9ed Added a few misc IPC wrappers (#107)
* Added a few misc IPC wrappers
2018-06-04 22:05:51 -04:00
jarulo
a5381e43c0 Fix incorrect pointer reference in socketDeserializeAddrInfo 2018-05-29 15:29:39 -04:00
Joel
deab92d486 Add some setsysGet* functions (#98)
* Add some setsysGet* functions
2018-05-22 11:33:45 -04:00
yellows8
b11288ea44 In jitTransitionToWritable() and jitTransitionToExecutable(), only run the JitType_CodeMemory handling code when it's actually needed. Actually free j->rx_addr in jitClose() for JitType_JitMemory. 2018-05-21 16:59:49 -04:00
yellows8
a12eb11eab Sync jit SVC names with wiki + updated the comment for JitType_JitMemory in jit.h. 2018-05-21 14:32:02 -04:00
yellows8
93957370a9 Disable using JitType_JitMemory on 5.0.0+, resulting in falling back to JitType_CodeMemory if available. 2018-05-21 14:04:20 -04:00
yellows8
726f8adfe3 Replaced the hard-coded timeout error constant in nvgfxEventWait() with the one from result.h. This fixes an issue caused by a past commit. 2018-05-19 21:45:18 -04:00
Joel
3605e40dbd Add string.h to remove compile error (#96)
* Add string.h to remove compile error
2018-05-19 15:41:15 -04:00
Joel
c28cae95cd Add setGetSerialNumber (#95) 2018-05-19 16:50:00 +02:00
yellows8
df203f0697 Added hidMergeSingleJoyAsDualJoy(). 2018-05-18 18:42:48 -04:00
Dave Murphy
28ebb9ed0c implement nxlink stdio redirect (#94) 2018-05-17 00:22:47 +02:00
Dave Murphy
71036319a7 translate crlf eol markers to lf for consistency 2018-05-15 12:27:25 +02:00
yellows8
fdf0949562 Fixed parsing in _socketDeserializeHostent(). 2018-05-15 02:10:13 -04:00
Matthew Bell
61d4140773 Implement pm:info (#88)
* Added pm:info and GetTitleId
2018-05-14 21:09:43 -04:00
yellows8
5ebe01191e Fixed hang in _socketDeserializeHostent(). 2018-05-14 12:37:56 -04:00
yellows8
ce718b3ac2 Set h_errno and errno for the socket.c 'Unimplementable functions'. 2018-05-14 12:32:07 -04:00
yellows8
3f75b79803 Copy the HidControllerHeader for each controller into hid state. Added disabled hidGetControllerType(). 2018-05-12 13:53:11 -04:00
yellows8
c548a76763 In select(), use pollinfo revents instead of events when processing poll() output. 2018-05-10 20:11:07 -04:00
yellows8
c8d68ae853 Fixed _socketOpen(). 2018-05-10 12:35:55 -04:00
yellows8
9c7ed03424 Fixed bsdGetSockOpt. 2018-05-09 22:07:54 -04:00
yellows8
2619142d78 Fixed bsdIoctl. 2018-05-09 12:57:07 -04:00
yellows8
adad6f1c0c Fixed passing rawdata params in _sfdnsresDispatchDnsRequest(). 2018-05-08 22:52:32 -04:00
Michael Scire
fd9378754d Fix asm error in svcGetResourceLimit*Value 2018-05-09 02:32:44 +02:00
yellows8
468924b730 Fixed static-buf-size issue with _bsdNameGetterCommand. 2018-05-08 16:22:18 -04:00
TuxSH
635599491c Add ipcAddSendSmart, ipcAddRecvSmart, use where applicable 2018-05-08 16:17:13 -04:00
Dave Murphy
e648524fa5 fix stringop-truncation warnings (#84)
avoid gcc 8.1.0 diagnostics as per https://gcc.gnu.org/onlinedocs/gcc-8.1.0/gcc/Warning-Options.html#index-Wstringop-truncation
2018-05-08 21:58:38 +02:00
Michael Scire
6f248b9b9e Add FS commands for SD card state change detection. 2018-05-08 13:29:56 +02:00
Michael Scire
dc133ab99f Implement all Loader Services. 2018-05-07 17:04:59 +02:00
Michael Scire
836ec09917 Implement CSRNG services 2018-05-07 17:04:59 +02:00
Michael Scire
24b42cb6a3 Implement SPL services 2018-05-07 17:04:59 +02:00
Michael Scire
1cc0ac7a94 Revise LR API to use actual LR function names 2018-05-07 17:04:59 +02:00
Michael Scire
65cca4bf13 Add support for fsp-pr. 2018-05-07 17:04:59 +02:00
Michael Scire
ef47389228 Implement svcMap/UnmapPhysicalMemory(Unsafe), svcSetUnsafeLimit 2018-05-07 14:03:27 +02:00
Michael Scire
7b5d1b1bf3 Implement sm:m. 2018-05-04 01:50:22 +02:00
SciresM
0ac5743c1f Add ResourceLimit SVCs, svcGetProcessInfo (#76) 2018-05-04 00:59:17 +02:00
fincs
e001318c42 Fix strncat vulnerabilities in fs_dev.c [reported by @TuxSH] 2018-05-02 16:09:11 +02:00
fincs
2818c99dea Revise fsdev initialization, see details:
- Removed fsdevInit/Exit
- Now automatically initializing fsdev state on first mount
- Added fsdevMountSdmc (replaces fsdevInit)
- Added fsdevUnmountAll (replaces fsdevExit)
2018-05-01 19:06:14 +02:00
hexkyz
b2b8e1ec67 Implement more SVCs (#74)
Implement svcSetThreadPriority.
Implement svcGetCurrentProcessorNumber.
Implement svcSignalEvent.
Implement svcSendSyncRequestWithUserBuffer.
Implement svcSendAsyncRequestWithUserBuffer.
Implement svcGetThreadId.
Implement svcReplyAndReceiveWithUserBuffer.
Implement svcCreateEvent.
Implement svcReadWriteRegister.
Implement svcCreateInterruptEvent.
Implement svcMapDeviceAddressSpaceByForce.
Implement svcTerminateProcess.
Fix svcMapDeviceAddressSpaceAligned.
Fix svcUnmapDeviceAddressSpace.
2018-04-30 00:43:52 +02:00
yellows8
c2b4f586f2 Merge branch 'master' of github.com:switchbrew/libnx 2018-04-25 12:49:10 -04:00
yellows8
6e1cc4dc1e Added plGetSharedFontByType(). Added _plRequestLoadWait which is used internally for both plGetSharedFontByType() and plGetSharedFont(). Moved offset/size validation code in pl into a dedicated func. 2018-04-25 12:49:01 -04:00
SciresM
d5bce6b0a6 Implement svcCreatePort. (#73)
* Implement svcCreatePort
* Implement svcConnectToPort
* Implement svcUnmapProcessMemory
* Implement svcGetSystemInfo
2018-04-24 18:33:46 -04:00
yellows8
9bb649b5e2 plFontData -> PlFontData and fixed @file in pl.h. 2018-04-24 14:08:12 -04:00
yellows8
07759f38d9 Added pl. 2018-04-23 21:15:32 -04:00
Michael Scire
cea3db77b1 Services: Add fsp-ldr, add lr/fsp-ldr to <switch.h> 2018-04-22 01:15:28 +02:00
yellows8
f727aa669a Added the remaining (pre-4.0.0) hid-serv vibration cmds. 2018-04-19 15:17:22 -04:00
yellows8
37bb9a6b7f Added nacpGetLanguageEntry and SetLanguage_Total. 2018-04-18 23:38:01 -04:00
Michael Scire
5e591d708a LR: Fix style for helper funcs, add comment 2018-04-18 14:06:15 +02:00
Michael Scire
d950853b4a LR: Implement wrappers for some commands 2018-04-18 14:06:15 +02:00
yellows8
a33fc64457 Implemented 3.0.0+ support for ns. 2018-04-15 22:13:07 -04:00
plutooo
daf819cb75 Stylefixes 2018-04-15 23:28:28 +02:00
yellows8
c5bc2ec77a Changed nsApplicationControlData to NsApplicationControlData. 2018-04-15 17:00:50 -04:00
yellows8
c82f2cea00 Added ns impl, and added nsGetApplicationControlData. Imported nacp.h from nx-hbmenu with adjustments. 2018-04-15 15:00:11 -04:00
yellows8
8091db8931 Added FsStorageId. Added pmshell init/exit and pmshellLaunchProcess. 2018-04-12 02:52:49 -04:00
yellows8
a3baa0eeb1 Allow using multiple interfaces with usbComms. Added usbComms Ex funcs. Use RwLock with usbComms. Various other usbComms changes. 2018-04-11 17:18:23 -04:00
yellows8
58835fae1a Use Service for AccountProfile. 2018-04-10 17:06:33 -04:00
yellows8
29211c1800 Use Service for all fs sessions. This fixes an issue with savedata commit. 2018-04-06 12:39:57 -04:00
yellows8
7f158396ad Added impl for accountProfile*. If the inital smGetService fails, attempt to use 'acc:u0'. 2018-03-28 19:31:36 -04:00
yellows8
26d2e6d7f4 Implemented FsSaveDataIterator (aka ISaveDataInfoReader). In fs*Close(), set the handle to INVALID_HANDLE after closing the handle. Changed ContentStorageId in FsSave to SaveDataType. Added enums FsSaveDataSpaceId and FsSaveDataType. Removed FS_MOUNTSAVEDATA_INVAL_DEFAULT/FS_MOUNTSYSTEMSAVEDATA_INVAL_DEFAULT. 2018-03-26 14:45:12 -04:00
Dave Murphy
45b36774e0 add socket flags translation 2018-03-25 17:51:09 +02:00
plutoo
d604976f08 Derp 2018-03-23 19:04:26 +01:00
plutoo
6c72bf8273 Detect 5.0.0 properly 2018-03-23 19:01:09 +01:00
yellows8
bf216aa667 Added mounting for SystemSaveData. 2018-03-22 22:56:38 -04:00
yellows8
51293c7fb0 In socket ioctl(), properly call fcntl-F_SETFL with the new flags. 2018-03-20 22:49:52 -04:00
Dave Murphy
21d27b935e modularise nxlink code 2018-03-18 20:51:49 +01:00
Dave Murphy
1394891509 better tag for nxlink host ip 2018-03-18 20:51:49 +01:00
Dave Murphy
23f577576c more checking of NXLINKED arg 2018-03-18 20:51:49 +01:00
Dave Murphy
e8fdd73561 add support for finding nxlink host 2018-03-18 20:51:49 +01:00
yellows8
213676c5f8 Added hidGetHandheldMode(). 2018-03-15 22:24:52 -04:00
yellows8
5e9869cc41 Added hidSendVibrationValues(). Improved hidInitializeVibrationDevices(), including changing the HidControllerLayoutType param to HidControllerType. 2018-03-14 21:47:21 -04:00
yellows8
3a8a9d7c26 Removed code for g_gfxPixelFormat/gfxSetPixelFormat and use hard-coded constant instead, since changing this value has no affect (even when changing g_gfx_BufferInitData.format). 2018-03-11 22:14:03 -04:00
yellows8
49bea43cce Added envGetLastLoadResult(). 2018-03-11 17:40:28 -04:00
plutoo
e112ab6968 Fix ipc session close race properly 2018-03-11 13:21:36 +01:00
plutoo
e162da18ff Fix race condition in tmem 2018-03-10 21:03:31 +01:00
plutoo
965c7cdd47 Irs stylefix 2018-03-10 14:48:15 +01:00
plutoo
1d34db8497 Improve atomics 2018-03-10 14:41:06 +01:00
plutoo
a102c64341 Introduce atomics.c, refcounting on all services 2018-03-10 14:33:40 +01:00
plutoo
d12e99e3ad Move ipc.h to kernel/ 2018-03-10 14:03:29 +01:00
yellows8
d1cefabd12 Renamed hidInitializeVibrationDevice() to hidInitializeVibrationDevices(), and added support for optionally returning 2 handles + other changes. 2018-03-07 01:16:35 -05:00
yellows8
cbaa0e359b Added hidPermitVibration() and hidIsVibrationPermitted(). 2018-03-06 23:38:33 -05:00
Kostas Missos
e243e4507e [irs] Name image transfer config variables (#61)
* [irs] Name image transfer config variables
2018-03-06 19:33:45 -05:00
yellows8
a3933c7a85 Added hid vibration. 2018-03-06 18:08:57 -05:00
yellows8
e7a4eba71c Added hidSetNpadJoyAssignmentModeSingleByDefault() and hidSetNpadJoyAssignmentModeDual(). Check serviceIsActive() in hidExit(). Use hidSetNpadJoyAssignmentModeDual() for all controllers during hidInitialize()/hidExit(). 2018-03-05 22:37:37 -05:00
Mike H
208daf6344 Audio input implementation and fixes (#60)
* Implemented audin service and fixed released audio buffer handling
2018-03-04 12:20:31 -05:00
yellows8
f7335b7ae5 Only clear allocated tmem when alloc was successful. 2018-03-01 22:57:44 -05:00
yellows8
20a549b46b Clear allocated tmem. 2018-03-01 22:55:17 -05:00
yellows8
07ec16a8e7 Implemented more irs. 2018-03-01 19:14:45 -05:00