Commit Graph

1435 Commits

Author SHA1 Message Date
SciresM
ee34c620f7 pcv: add pcvGetModuleId (#269)
* pcv: add pcvGetModuleId
2019-04-24 19:44:13 -04:00
Samuel P
bc1786b7b0 pcv Set/GetClockRate changes in 8.0.0 (#266)
* version check on pre-8.0.0 pcv funcs
* clkrst API
* Add PcvModuleId enum
2019-04-24 13:36:19 -04:00
yellows8
1dd057ac09
Added pctlConfirmStereoVisionPermission and pctlResetConfirmedStereoVisionPermission. 2019-04-22 12:33:01 -04:00
Michael Scire
9884ce0462 ldr: change ldrDmntGetModuleInfos to match roDmnt 2019-04-22 16:57:03 +02:00
Michael Scire
50db74a15b Implement ro:1 2019-04-22 16:57:03 +02:00
Michael Scire
23bd10f6db ro: add ldrRoLoadNrrEx, fix roDmnt 2019-04-22 16:57:03 +02:00
yellows8
76b6f521fe
Added appletIsVrModeEnabled and appletSetVrModeEnabled. 2019-04-21 13:45:49 -04:00
Michael Scire
6b50fddd9b Implement svcQueryProcessMemory 2019-04-21 13:48:59 +02:00
yellows8
3b0f2014e3
Added appletGetCurrentIlluminance, appletGetCurrentIlluminanceEx, and appletIsIlluminanceAvailable. 2019-04-20 16:11:05 -04:00
yellows8
2916bd631a
Added pctlIsStereoVisionPermitted. 2019-04-20 16:09:35 -04:00
fincs
1c832bebd6 Avoid overwriting TLS[0x100] and TLS[0x102] as per 8.0.0 2019-04-20 19:19:34 +02:00
fincs
2f70ee6a92 Remove apm:p support as per 8.0.0 2019-04-16 17:45:12 +02:00
yellows8
3dde2148cc
Added appletSetCpuBoostMode, appletGetCurrentPerformanceConfiguration, and ApmCpuBoostMode enum. Updated comments / various minor changes. 2019-04-14 12:16:37 -04:00
yellows8
d4de738dfd
Added support for [6.0.0+] web functionality. Various minor changes. 2019-04-12 21:37:53 -04:00
Ezekiel Bethel
26458fc1e8 add 0x402 (path exists) => EEXIST mapping in fs_dev 2019-04-09 22:16:34 -04:00
yellows8
57b028fec5
Added support for swkbd [6.0.0+] functionality. Added swkbdConfigSet*() funcs which should now be used instead of accessing the arg structs directly. Added version checking for some swkbdInlineSet*() funcs. Various other changes. 2019-04-09 18:32:54 -04:00
fincs
a469a68b20 Add custom extension to MOD0 header & a few other useful symbols 2019-04-08 16:36:45 +02:00
Michael Scire
e4481e12cb Implement AES-(128, 192, 256)-CMAC 2019-04-04 20:13:36 +02:00
Michael Scire
048a0508bf sha1: unroll all the loops inside processing block 2019-04-04 20:13:36 +02:00
Michael Scire
21a704f0b6 Implement accelerated sha1 + hmac-sha1 2019-04-04 20:13:36 +02:00
Michael Scire
0dde100135 Implement accelerated SHA256, HMAC-SHA256 2019-04-04 20:13:36 +02:00
Michael Scire
e4dda8fa46 minor style fixes 2019-04-04 20:13:36 +02:00
Michael Scire
017b47151d Implement accelerated AES-XTS 2019-04-04 20:13:36 +02:00
Michael Scire
82ae0f0c9e cbc/ctr: expose iv/ctr reset 2019-04-04 20:13:36 +02:00
Michael Scire
3eb6dd45a6 Implement accelerated AES-CTR 2019-04-04 20:13:36 +02:00
Michael Scire
9eb74bc9e0 crypto: fix style in aes_cbc, mark handlers inline. 2019-04-04 20:13:36 +02:00
Michael Scire
9c7adf0c44 crypto: add aes-cbc apis. 2019-04-04 20:13:36 +02:00
Michael Scire
f8375c46c0 crypto: add aes-ecb block enc/dec 2019-04-04 20:13:36 +02:00
yellows8
39f40b26ae
Added pctl. 2019-04-01 21:29:51 -04:00
yellows8
7b25d55342
Added pctlauth. 2019-03-31 22:01:48 -04:00
yellows8
9bbcee9bcf
Added libappletStart and libappletLaunch. Updated comments. 2019-03-31 21:59:04 -04:00
yellows8
fd9e02b271
Added romfsMountFromFsdev and fsdevTranslatePath. Internal romfs_dev improvements. 2019-03-29 19:49:08 -04:00
fincs
56471670ee Remove old C11 threads implementation 2019-03-29 18:40:26 +01:00
fincs
9d9b2efe29 devkitA64 r13 support changes, including pthread support 2019-03-29 18:40:26 +01:00
fincs
626b07fac8 Implement TLS slot support (with destructors) 2019-03-29 18:40:26 +01:00
yellows8
3a14e9094a
Fixed error handling with appletHolderPushInData() for tmem-storage in swkbdShow(). 2019-03-28 21:01:04 -04:00
yellows8
b463693094 Changed errorApplicationSetNumber to static inline. 2019-03-28 20:19:38 -04:00
yellows8
8b5a4d580d Various minor changes + changed some error* funcs to static inline. Removed errorResultBacktraceClose, errorSystemClose, and errorApplicationClose. 2019-03-28 20:19:38 -04:00
yellows8
b91bc09c57 Added ErrorType enum. errorCode* funcs are now static inline + minor changes. Updated docs. 2019-03-28 20:19:38 -04:00
yellows8
505042bc73 Added ErrorCode and the funcs for it, funcs which use low/desc now use this instead. Updated docs. 2019-03-28 20:19:38 -04:00
yellows8
0ea16ae8c7 Added errorResultRecordShow/errorCodeRecordShow. 2019-03-28 20:19:38 -04:00
yellows8
f6287086d3 Added errorResultShow/errorCodeShow. Updated ErrorCommonHeader and added ErrorPctlArg. 2019-03-28 20:19:38 -04:00
yellows8
6be5ad949e In errorSystemSetContext(), return immediately on pre-4.0.0. 2019-03-28 20:19:38 -04:00
yellows8
68e3204a88 Added support for errorResultBacktrace*. Updated/added error structs. 2019-03-28 20:19:38 -04:00
yellows8
018441a1f6 Added support for errorEulaShow/errorSystemUpdateEulaShow. 2019-03-28 20:19:38 -04:00
yellows8
1ec8e3b29e Added support for error Application. Allow passing NULL to errorSystemCreate() for fullscreen_message, and minor other adjustments. 2019-03-28 20:19:38 -04:00
yellows8
3995447de7 Renamed error funcs and updated/added structs. Updated errorSystemCreate. Merged errorConfigSetShortDescription/errorConfigSetDetailedDescription into errorSystemCreate. Replaced errorConfigSetModule/errorConfigSetDescription with errorSystemSetCode, and added an errorSystemSetResult wrapper. Added errorSystemSetLanguageCode and errorSystemSetContext. 2019-03-28 20:19:38 -04:00
yellows8
9bf699f712 Improved error-applet launching handling. Updated ErrorConfig and added ErrorContext. 2019-03-28 20:19:38 -04:00
Liam Minopulos
ecfc8f8966 Added error LibraryApplet wrapper (#243)
* Implement error applet
2019-03-28 20:19:38 -04:00
plutoo
b7fe92f3a2 rwlock: Move over to condvar implementation. (#255)
This one is superior to the previous because it is write-preferring.
2019-03-28 23:53:04 +01:00
Michael Scire
5575966d0c fix fsdev bug 2019-03-25 00:02:18 +01:00
Michael Scire
1bea504732 Added fsOpenDataStorageByDataId and romfsMountFromDataArchive 2019-03-25 00:02:18 +01:00
Michael Scire
43128b613b romfs: refactor to allow specifying mount name 2019-03-25 00:02:18 +01:00
natinusala
9c016a4cee Implemented nifmGetInternetConnectionStatus 2019-03-19 12:35:52 -04:00
Michael Theall
b49cb8a1a6 const params for usbDs 2019-03-16 00:07:39 +01:00
exelix
093471609d Change nifm initialization mode and add SetWirelessCommunicationEnabled (#247)
* Init nifm in the proper context, add SetWirelessCommunicationEnabled
* add nifmSetServiceType to set which nifm service to init
2019-03-15 17:11:40 -04:00
natinusala
a7facade0a Implement wlaninfGetState and wlaninfGetRSSI 2019-03-15 11:35:02 -04:00
yellows8
c542d3ab8a Added hidMouseMultiRead + mouse handling adjustments. Closes #235. 2019-03-11 23:34:58 -04:00
yellows8
275a61a2e2 Improved WebWifi, including handling for NULL conntest_url. 2019-03-09 16:18:10 -05:00
yellows8
bf3673c19f Added WebFooterFixedKind enum. Actually check sysver in webConfigSetFooterFixedKind. Updated web docs. 2019-03-07 21:36:48 -05:00
yellows8
4160622165 Support passing NULL for webConfigShow out. Minor docs adjustment. 2019-03-06 23:46:46 -05:00
yellows8
9e52d7c4df Check for sysver [3.0.0+] for viSetDisplayMagnification. 2019-03-06 13:56:36 -05:00
yellows8
9d0603845a Updated WebBootDisplayKind and added WebBackgroundKind + WebLeftStickMode. Improved web docs. 2019-03-05 23:33:54 -05:00
exelix
2d1116743e Add wrappers for brightness-related functions (#246)
* Add wrappers for brightness-related functions
2019-03-04 21:37:33 -05:00
yellows8
966d554e7d Use PACKED for raw in _binderTransactParcelAuto. 2019-03-04 20:21:38 -05:00
yellows8
18a4351330 Use the actual enum for webConfigSetBootDisplayKind instead of u32. Improved web docs. 2019-03-04 17:20:18 -05:00
yellows8
a897b9a836 Moved web common AppletHolder into WebCommonConfig, _webShow now takes AppletHolder as a param. Added webConfigRequestExit. Renamed WebExitReason_Unknown2 to WebExitReason_Requested. 2019-03-04 10:46:19 -05:00
yellows8
d353213d72 Added appletHolderRequestExit. 2019-03-04 10:42:07 -05:00
yellows8
c10508d95e Added WebExitReason enum and improved LastUrl/CallbackUrl docs. 2019-03-03 23:30:06 -05:00
yellows8
ded540e5f1 Implemented full support for web Offline-applet + minor other changes. Improved web docs. 2019-03-03 20:37:14 -05:00
yellows8
b19c35fe2c Added webReplyGet* funcs. Added WebReplyType enum and _webTLVReadVarSize. 2019-03-02 20:44:22 -05:00
yellows8
2ed160624a webConfigShow now uses new struct WebCommonReply as the output, for supporting WebCommonTLVStorage reply data. 2019-03-02 11:11:39 -05:00
yellows8
bc7b178036 Added webConfigSetAdditionalCommentText, webConfigSetAdditionalMediaData, and webConfigSetMediaCreatorApplicationRatingAge. Improved web docs. 2019-03-01 22:49:01 -05:00
yellows8
166652a0eb Removed version check from webShareCreate. 2019-03-01 22:25:23 -05:00
yellows8
dc3cf7084e Added webConfigSetAlbumEntry and webConfigSetApplicationAlbumEntry. 2019-03-01 22:17:11 -05:00
yellows8
fbf1aab792 Initial support for web ShareApplet. Check shim-kind in webConfigSetDisplayUrlKind. 2019-03-01 21:54:45 -05:00
yellows8
6211510b21 In webConfigSetBootAsMediaPlayer with News on 3.0.0+, set WebArgType_BootAsMediaPlayerInverted. Added _webTLVRead/_webConfigGet*. Improved web docs. 2019-03-01 16:33:13 -05:00
yellows8
ff3a4f9844 Renamed usbDsEndpoint_StallCtrl to *Stall. 2019-03-01 12:40:23 -05:00
yellows8
121f2cf868 Added webConfigSetScreenShot, and minor other web changes. 2019-02-28 22:15:18 -05:00
yellows8
4ef0dd09f0 Added webConfigSetMediaPlayerUserGestureRestriction, webConfigSetJsExtension, webConfigSetTouchEnabledOnContents, webConfigSetPageCache, webConfigSetWebAudio, webConfigSetFooterFixedKind, webConfigSetPageFade, webConfigSetBootLoadingIcon, and webConfigSetPageScrollIndicator. Minor other changes. 2019-02-28 21:54:08 -05:00
yellows8
5f9264df16 Added webConfigSetFooter and webConfigSetKeyRepeatFrame. 2019-02-28 17:54:57 -05:00
yellows8
344d87a3e4 Added support for web Lobby applet. Added webConfigSetBackgroundKind, webConfigSetPointer, and webConfigSetLeftStickMode. Fixed order of web funcs. Minor other web adjustments. 2019-02-28 13:07:56 -05:00
yellows8
6736053ae1 Added webConfigSetUserID, and internal web adjustments. 2019-02-27 22:48:48 -05:00
yellows8
526441a547 Added webYouTubeVideoCreate and improved web docs. 2019-02-27 20:44:11 -05:00
yellows8
81ce04eb7b In nxlinkStdio(), return sock on success instead of ret. 2019-02-27 19:15:31 -05:00
yellows8
6dea82a668 Moved applet notification-msg handling code into new funcs appletGetMessage and appletProcessMessage (with some improvements), which appletMainLoop now calls. 2019-02-27 19:03:35 -05:00
yellows8
eb750b641b Added webNewsCreate, webConfigSetEcClientCert, and webConfigSetShopJump. Improved web docs. 2019-02-27 17:52:00 -05:00
exelix
ad5b8c019f Add some functions from IOverlayAppletProxy and hid:sys (#242) 2019-02-27 16:17:03 +01:00
Michael Scire
d2c24bbe10 pm: Add pmdmntGetServiceSession() 2019-02-27 12:44:44 +01:00
yellows8
ef71282f31 Added webConfigSetBootAsMediaPlayer and webConfigSetMediaPlayerAutoClose. Updated WebBootDisplayKind. Removed 'Enabled' from WebArgType enums. 2019-02-26 21:54:47 -05:00
yellows8
a48f7c3502 Added webConfigSetBootDisplayKind and enum WebBootDisplayKind. Added enum WebShimKind_Offline. Minor other web adjustments. 2019-02-26 19:40:20 -05:00
yellows8
9e11dd1bd7 Added error handling for web TLVs. webPageCreate and webConfigSet* now return Result. Moved webWifiCreate/webWifiShow immediately after _webShow in web.c. 2019-02-26 17:55:16 -05:00
yellows8
2cd9825074 Added webConfigSetCallbackUrl, webConfigSetCallbackableUrl, and webConfigSetUserAgentAdditionalString. Improved web docs. 2019-02-26 15:16:26 -05:00
yellows8
50e2d43b70 Added WebArgType enum. 2019-02-25 23:22:49 -05:00
yellows8
91bf06653e Added webConfigSetDisplayUrlKind. Added more _webConfigSet* funcs. 2019-02-25 21:23:53 -05:00
yellows8
708ad83ead Renamed webShow to webConfigShow. Added webConfigSetWhitelist. 2019-02-25 20:12:36 -05:00
yellows8
7ccc29f397 Internal web arg handling improvements. 2019-02-25 19:38:15 -05:00
yellows8
ec5f1dc17f Renamed WebPageConfig to WebCommonConfig with more fields. Renamed webPageShow to webShow. Various web improvements including version handling. 2019-02-25 19:08:49 -05:00
yellows8
9f45bb4d7e Fixed IPC issues with bsdRead. 2019-02-24 22:17:27 -05:00
yellows8
4b8e501fdb Various web improvements, changed/added some structs. 2019-02-23 17:00:10 -05:00
fincs
bf13da990a Critical fix in new barrier impl 2019-02-23 21:09:41 +01:00
plutooo
e8f3964475 barrier: More efficient impl, maybe 2019-02-23 21:05:39 +01:00
yellows8
0a230bae65 Fixed issue in _webTLVWrite. Updated web docs. The url param for webPageCreate is no longer optional. 2019-02-21 00:15:09 -05:00
yellows8
601c76b508 Initial support for WebApplet/non-webWifi. 2019-02-20 23:42:17 -05:00
yellows8
425df41e7e Improved internal web applet launching/exit handling. 2019-02-20 18:34:16 -05:00
yellows8
d61c2d07b6 Added appletRequestLaunchApplication and appletRequestLaunchApplicationForQuest. 2019-02-19 23:12:29 -05:00
yellows8
d90893c566 Expose libappletCreateWriteStorage. 2019-02-19 21:46:53 -05:00
yellows8
e2f05654dd Moved web applet-exit handling into a dedicated func, which can optionally handle reading the applet reply storage. Added out param to webWifiShow for the applet reply data. 2019-02-18 22:32:18 -05:00
yellows8
f392dc0ce2 Added libappletReadStorage and libappletPopOutData. 2019-02-18 22:29:53 -05:00
yellows8
821c46539d Added 7.0.0+ support for _viCreateStrayLayer. 2019-02-18 22:26:22 -05:00
yellows8
e3f021bab3 Verify that the version is 2.0.0+ in swkbdInlineCreate. 2019-02-18 16:42:12 -05:00
fincs
11b7bece4a Change all services except fatal to use hosversion* instead of kernelAboveXYZ 2019-02-18 21:48:49 +01:00
fincs
61cc738730 Introduce hosversion.h - HOS version detection utilities
- Simplify kernel/detect.h logic; introduce detectKernelVersion()
- Use set:sys (if available) during __appInit in order to initialize
  the current HOS version
2019-02-18 21:48:41 +01:00
yellows8
6c3f72929d Fixed WebWifiPageArg struct, improved web-wifi handling and added docs. 2019-02-18 12:29:40 -05:00
fincs
ee2e19ce38 Improve names/documentation for jit kernel patch functions in detect.h/c + codestylefixes 2019-02-16 16:42:08 +01:00
yellows8
1cb2c18fa5 Added capssc. 2019-02-15 20:30:39 -05:00
averne
7d9601810d Added nfp:user services wrappers. (#237)
* hid: move official/libnx controller converters to hid.h
2019-02-15 19:06:41 +01:00
plutooo
17731d750e Add function to test OFW behavior under CFW 2019-02-14 22:03:47 +01:00
plutooo
fc557cbf2a Detect and use the CFW jit patch. 2019-02-13 22:40:00 +01:00
yellows8
16cbf1c9f6 Fixed minimum required sysver for capssu. 2019-02-11 20:36:41 -05:00
yellows8
e02b6c167a Added capssu and caps.h. 2019-02-08 19:47:13 -05:00
Lioncash
224ba8a87d hwopus: Provide a better name for the flag parameter of _hwopusDecodeInterleaved()
This is a flag that determines whether or not a request to reset the
decoder context should occur prior to decoding. This is an analogue to the
libopus ctl:

opus_decoder_ctl(decoder, OPUS_RESET_STATE);

which is generally used when switching streams to keep decoder state
consistent.
2019-01-30 18:00:48 +01:00
yellows8
b3b5816fd0 Added swkbdInlineAppearArgSetLeftButtonText and swkbdInlineAppearArgSetRightButtonText. 2019-01-28 21:15:45 -05:00
yellows8
2ebac06061 Updated swkbdInlineMakeAppearArg, this now just writes defaults and sets type to the input param. Added swkbdInlineAppearArgSetOkButtonText. 2019-01-28 16:54:38 -05:00
shibbs
131b92a8c8 Add in more NIFM functionality (#236) 2019-01-27 00:12:15 +01:00
yellows8
6b91ac26a5 Added swkbdInlineSetUserWordInfo/swkbdInlineUnsetUserWordInfo. Handle storage-tmem closing in _swkbdProcessReply. Better CustomizeDic handling. Other changes. 2019-01-22 22:29:48 -05:00
yellows8
4a119e4028 Added swkbdInlineSetCustomizeDic/swkbdInlineUnsetCustomizeDic. Updated SwkbdChangedStringArg struct. 2019-01-21 18:33:15 -05:00
yellows8
be8e196eb0 Moved state field from swkbdInlineUpdate into SwkbdInline, and added out_state param. Removed unused State param from _swkbdProcessReply. Added SwkbdState enum. 2019-01-18 23:48:31 -05:00
yellows8
dbadcd76ed Implemented _swkbdProcessReply() with actual handling. Added set-callback funcs. Automatically call swkbdInlineSetUtf8Mode in swkbdInlineCreate. 2019-01-18 22:11:41 -05:00
Samuel P
8360e561c5 Added WifiWebAuthApplet launching (#233)
* Added WifiWebAuthApplet launching
2019-01-18 20:00:34 -05:00
yellows8
40d5fb8587 Added SwkbdReplyType. Added initial impl for _swkbdProcessReply. 2019-01-17 21:31:18 -05:00
yellows8
4250fb3752 Updated SwkbdInlineCalcArg struct. Added: swkbdInlineSetKeytopBgAlpha, swkbdInlineSetFooterBgAlpha, swkbdInlineSetKeytopScale, and swkbdInlineSetKeytopTranslate. Implemented field updating in swkbdInlineUpdate. 2019-01-16 20:34:53 -05:00
yellows8
8cc321d0f1 Allocate tmp-buffers for swkbd-inline, for use in swkbdInlineUpdate. Moved code for writing bool flags into dedicated funcs. Added: swkbdInlineSetInputModeFadeType, swkbdInlineSetAlphaEnabledInInputMode, swkbdInlineSetKeytopAsFloating, swkbdInlineSetFooterScalable. Removed a comment. 2019-01-15 21:31:02 -05:00
yellows8
74683089a0 Fixed+updated swkbd-inline structs. Added: swkbdInlineSetVolume, swkbdInlineSetInputText, swkbdInlineSetCursorPos, swkbdInlineSetUtf8Mode, swkbdInlineSetTouchFlag, swkbdInlineSetUSBKeyboardFlag, swkbdInlineSetDirectionalButtonAssignFlag, swkbdInlineSetSeGroup, and swkbdInlineSetBackspaceFlag. Added some storage reading to swkbdInlineUpdate. 2019-01-15 16:51:19 -05:00
yellows8
1a91c10c19 Added SwkbdInlineMode enum. 2019-01-14 14:57:28 -05:00
yellows8
9d5127d37d Improved keySetDisableBitmask handling in swkbdInlineMakeAppearArg. 2019-01-14 11:14:50 -05:00
yellows8
203aa2b368 Added viGetIndirectLayerImageMap and viGetIndirectLayerImageRequiredMemoryInfo. 2019-01-14 11:12:49 -05:00
yellows8
a812587a31 Updated SwkbdAppearArg. Updated comments. 2019-01-13 19:51:01 -05:00
yellows8
8cd2808eff Added swkbdInlineAppear, swkbdInlineDisappear, and swkbdInlineMakeAppearArg. Updated SwkbdAppearArg. 2019-01-11 18:24:14 -05:00
Cpasjuste
855a719728 c11-threads: return thrd_timedout on cnd_timedwait timeout (#232) 2019-01-09 13:33:23 +01:00
yellows8
2e3fd9bd9f Use const for appletQueryApplicationPlayStatistics. 2019-01-05 14:47:42 -05:00
yellows8
2ccaa302a1 Added appletQueryApplicationPlayStatistics. Use BufferType_Normal instead of 0 in _appletGetSessionProxy. 2019-01-05 14:34:18 -05:00
yellows8
2900622cb5 Initial SwkbdInline impl, minor swkbd adjustments. 2019-01-04 22:05:06 -05:00
fincs
50baeeaa80 nwindowGetDefault: Explicitly initialize dimensions to 1280x720 because 1.x reports a default size of 1x1 2019-01-04 20:41:05 +01:00
yellows8
82e526c72f Added appletHolderActive and appletHolderCheckFinished. 2019-01-04 11:46:36 -05:00
XProger
f589310ef2 fix unusable touch by adding touch identifier into touchPosition 2019-01-03 21:16:06 +01:00
fincs
e708372dca Finally remove deprecated old gfx API 2019-01-03 21:13:20 +01:00
yellows8
e59036d4c8 Added PsmSession, which is now an additional param for: psmBindStateChangeEvent, psmWaitStateChangeEvent, and psmUnbindStateChangeEvent. Hence, the psm session is now handled with this object instead of libnx automatically handling it internally. psmBindStateChangeEvent no longer calls psmUnbindStateChangeEvent. Other adjustments. 2018-12-31 19:36:07 -05:00
yellows8
2c89aed2b9 Swapped the order of the buffers used in usbHsAcquireUsbIf on 3.0.0+. 2018-12-29 19:13:53 -05:00
yellows8
e9cc565e92 Fixed usbhs 3.0.0+ support with usbHsAcquireUsbIf. 2018-12-26 11:18:09 -05:00
yellows8
653bcb27c9 Added SwkbdTextDrawType and replaced unk_x3b8 with textDrawType. 2018-12-24 01:00:39 -05:00
yellows8
21e01dfd68 Added SwkbdKeyDisableBitmask. 2018-12-23 22:55:19 -05:00
yellows8
00d0174c0a Removed the buffer memset from tmemCreateFromMemory, tmemCreateFromMemory should not write to the user buffer. 2018-12-23 22:18:24 -05:00
yellows8
477058d28a Added SwkbdType. Specifically set the type to SwkbdType_Normal in the Preset funcs which use it. Set type properly on 5.0.0+ for swkbdConfigMakePresetDownloadCode. Improved swkbd docs, including documenting what fields are set by the Preset funcs. 2018-12-23 01:26:00 -05:00
yellows8
56b767efbf Implemented actual swkbd TextCheck support. Moved strbuf alloc from _swkbdProcessOutput into swkbdShow(), so that it can be used for TextCheck. Added validation for the out_string* params in swkbdShow(). The out_string buffer is now cleared before calling _swkbdProcessOutput. 2018-12-23 00:39:06 -05:00
yellows8
e8482f7581 Improved SwkbdArgV0, and updated swkbd docs. 2018-12-22 19:26:38 -05:00
yellows8
e892e91360 Moved swkbd version init into swkbdCreate, and use the newer swkbd versions. Added swkbdConfigMakePreset*(). Changed unk_x3e0 to u32, and various other adjustments. 2018-12-22 16:50:20 -05:00
yellows8
901dc817e7 Handle <=3.0.0 swkbd versions, and filled in the arg struct. Handle the workbuf. Added a param to swkbdCreate and added swkbdClose. Added swkbdConfigSet*Text and swkbdConfigSet*OptionalSymbolKey. Various other changes. 2018-12-22 11:51:51 -05:00
yellows8
854e3058ba Replaced appletSetMediaPlaybackStateForApplication with appletSetMediaPlaybackState, which now supports non-Application. Added _appletCmdInU8/_appletCmdInBool, the latter is now used by appletSetMediaPlaybackState. 2018-12-21 11:33:56 -05:00
Cpasjuste
8be5cad7f8 Added appletSetMediaPlaybackStateForApplication 2018-12-21 10:30:28 -05:00
yellows8
59382cab1f Added LibnxError_LibAppletBadExit, which is now used in swkbd. 2018-12-20 21:08:36 -05:00
yellows8
58cbacc76f Handle the output swkbd storage. 2018-12-20 20:49:50 -05:00
yellows8
32f93bef5d Added initial swkbd impl. 2018-12-20 13:06:20 -05:00
yellows8
d821185e3d Added buffer param to appletCreateTransferMemoryStorage and appletCreateHandleStorageTmem, tmemCreateFromMemory will now be used with this when buffer is not NULL. 2018-12-20 12:59:59 -05:00
yellows8
2d5000ba57 Added libappletPushInData. Moved common storage creation+writing code into 1 func, in libapplet.c. 2018-12-20 12:57:35 -05:00
fincs
252e8ef9ff Add tmemCreateFromMemory 2018-12-20 16:12:22 +01:00
yellows8
0bab302c3b Added libappletRequestHomeMenu and libappletRequestJumpToSystemUpdate. 2018-12-19 20:37:19 -05:00
yellows8
6e10568589 Added applets/libapplet. Added appletSetThemeColorType and appletGetThemeColorType. 2018-12-19 19:49:57 -05:00
fincs
f448b0fbad nvioctlMap_Param -> nvioctlNvmap_Param 2018-12-19 19:33:31 +01:00
fincs
5039c0815e console_sw: Switch to PIXEL_FORMAT_RGB_565, optimize scrollWindow 2018-12-19 19:33:31 +01:00
fincs
e7c58fe59e Deprecate old gfx API; scheduled for removal at a later date. 2018-12-19 19:33:31 +01:00
fincs
1b18a3b056 console_sw: Use Framebuffer object instead of old gfx api. Moved RGBA8/_MAXALPHA to framebuffer.h. 2018-12-19 19:33:31 +01:00
fincs
f37518d848 Add framebufferMakeLinear - linear shadow buffer support 2018-12-19 19:33:31 +01:00
fincs
dbc960a24f NWindow: Internal rework to fix resource leak in nwindowReleaseBuffers 2018-12-19 19:33:31 +01:00
fincs
3a77a7ace8 Introduce nwindowGetDefault 2018-12-19 19:33:31 +01:00
fincs
f381066a43 Add NvColorFormat enum 2018-12-19 19:33:31 +01:00
fincs
b1600c9add gfxGetFramebufferHandle: return id instead of handle 2018-12-19 19:33:31 +01:00
fincs
d87f9541d1 NvMap: added support for loading remote NvMap objects (from id) 2018-12-19 19:33:31 +01:00
fincs
72a48f6598 Add nvioctlMap_Param and NvMapParam enum 2018-12-19 19:33:31 +01:00
fincs
260f34fa4e NWindow: add several new functions:
- nwindowIsValid
- nwindowGetDimensions
- nwindowSetDimensions
- nwindowSetCrop
- nwindowSetTransform
- nwindowIsConsumerRunningBehind
2018-12-19 19:33:31 +01:00
fincs
bf43284c9f Misc code style fixes, rename NvGraphicBuffer::layers to planes 2018-12-19 19:33:31 +01:00
Michael Scire
798d8ff50c Add vi wrappers for system StrayLayer usage. 2018-12-19 19:33:31 +01:00
fincs
4879937946 Introduce Framebuffer, experimental wrapper object around a framebuffer queue for use by software rendering clients 2018-12-19 19:33:31 +01:00
fincs
62aa8e8b23 NWindow: add nwindowReleaseBuffers, which is also done automatically on Close 2018-12-19 19:33:31 +01:00
fincs
412c84d5f9 Rename NvInfo to NvGpu 2018-12-19 19:33:31 +01:00
fincs
c5f8275978 Rename nvMapFree to nvMapClose for consistency reasons 2018-12-19 19:33:31 +01:00
fincs
a9cbd9116a Introduce NWindow, an experimental replacement for the GFX API 2018-12-19 19:33:31 +01:00
fincs
b188f5fb33 gfx.c: fix two single-line bugs 2018-12-19 19:33:31 +01:00
fincs
2af9531f5b Const correctness in bqCancelBuffer 2018-12-19 19:33:31 +01:00
fincs
ec6d878d12 Major buffer producer refactor, see details:
- Introduced NativeHandle (display/types.h)
- Introduced NvGraphicBuffer (nvidia/graphic_buffer.h)
- Renamed BqQueueBufferInput to BqBufferInput
- Renamed BqQueueBufferOutput to BqBufferOutput
- BqGraphicBuffer is now defined and marshalled in a way that matches
  official sw more closely, with a pointer to a NativeHandle instead of
  inline flattened data and other miscellaneous junk
- Const correctness fixes
- bqSetPreallocatedBuffer now has flattening logic for BqGraphicBuffer
- bqRequestBuffer doesn't have this logic for now, passing anything other
  than NULL will fail
- gfx.c updated to use the refactored buffer producer
2018-12-19 19:33:31 +01:00
fincs
d717507541 display/parcel.h: Const correctness fixes 2018-12-19 19:33:31 +01:00
fincs
ae77cbea97 gfx/hid/irs/nv/vi: changes related to sysmodule users, see details:
- Removed hard dependency on applet
- Allow appletGetAppletResourceUserId to fail (using default zero in that case)
- nvInitialize uses nvdrv:s for AppletType_None
- gfx now uses weak global __nx_gfx_vi_service_type for the ViServiceType passed to viInitialize
2018-12-19 19:33:31 +01:00
fincs
3a31df429e gfx: finally get rid of nvgfx, replaced with an NvMap object 2018-12-19 19:33:31 +01:00
fincs
5fe01c065a Major refactor and redesign of nvidia wrapper objects, see details:
- NvBuffer replaced with NvMap, which only manages the creation of
  raw nvmap objects. Users must map these objects manually to
  address spaces.
- nvAddressSpaceBindToChannel removed.
- nvChannelSetNvmapFd is now automatic and has been removed.
- Nv3DContext, NvCmdList, NvErrorNotifier, NvGpfifo, NvGpu and
  NvZcullContext have all been removed.
- Introduced NvGpuChannel, which provides all functionality that was
  part of said removed objects.
- Other miscellaneous changes and fixes.
2018-12-19 19:33:31 +01:00
fincs
85a20f43dc NvAddressSpace: major overhaul, see details:
- Now contains a 'page_size' field, used throughout the functions
- Removed NvPageSize
- Removed nvAddressSpaceReserveAlign/AtFixedAddr/Full
- Added nvAddressSpaceAlloc/AllocFixed/Free (replacing above functions)
- Removed nvAddressSpaceMapBuffer/UnmapBuffer
- Added nvAddressSpaceMap/MapFixed/Modify/Unmap (replacing above functions)
- Adapted NvBuffer/NvGpu to use the new functions
2018-12-19 19:33:31 +01:00
fincs
22499d8ddf nvhost-as-gpu.c: fix some mistakes, add nvioctlNvhostAsGpu_FreeSpace, add NvAllocSpaceFlags, add NvMapBufferFlags_Modify 2018-12-19 19:33:31 +01:00
fincs
f0de0c869d Added nvInfoGetGpuCharacteristics 2018-12-19 19:33:31 +01:00
yellows8
9f63f29988 Use eventActive for g_appletLibraryAppletLaunchableEvent. Fixed _appletWaitLibraryAppletLaunchableEvent, and set rc to eventWait ret in _appletWaitLibraryAppletLaunchableEvent. Added appletHolderWaitInteractiveOut. 2018-12-19 13:00:40 -05:00
yellows8
ced4f16ee1 Fixed+enabled appletSetTerminateResult and added it to applet.h. 2018-12-18 21:45:13 -05:00
yellows8
d8683ea188 Added appletHolderPopOutData and appletHolderPopInteractiveOutData. 2018-12-18 20:07:29 -05:00
yellows8
a6e1413712 Added storage pushing for AppletHolder. Verify that the input storage is initialized in _appletCmdInStorage(). 2018-12-18 19:37:07 -05:00
yellows8
5874a272d0 Added appletHolderJoin and appletHolderGetExitReason. 2018-12-18 19:03:22 -05:00
yellows8
bca797afc2 Use LibraryAppletLaunchableEvent and handle LibraryApplet self-creation. Implemented LibraryApplet starting. 2018-12-17 20:23:43 -05:00
yellows8
8f22e9e213 Initial impl for LibraryApplet creation. 2018-12-17 12:16:46 -05:00
natinusala
c8f732fda8 Add missing applet focus states and handling modes 2018-12-17 11:03:49 -05:00
fincs
beeeb057d2 Finishing touches to user-mode synchronization primitives 2018-12-17 16:06:23 +01:00
fincs
21f69bfa57 Add, document, and use MAX_WAIT_OBJECTS 2018-12-17 16:06:23 +01:00
fincs
33dad9b893 UTimer: use an actual 'started' flag instead of a magic tick value 2018-12-17 16:06:23 +01:00
fincs
8d813ee666 Generalize Waitable, moving UEvent/UTimer specific code into a vtable. 2018-12-17 16:06:23 +01:00
fincs
1d14cad1cf Separate WaiterNode initialization again, which is now done in waitImpl 2018-12-17 16:06:23 +01:00
fincs
a23d38ac77 Move waiterForXyz() functions to Xyz's header file. Implement waiter for (kernel mode) Event, and use it instead. 2018-12-17 16:06:23 +01:00
fincs
c9ee12ce20 Simplify WaiterNode, make it private. Improve UEvent autoclear logic. 2018-12-17 16:06:23 +01:00
fincs
47b786bcea Synchronize eventWait and _waitLoop code 2018-12-17 16:06:23 +01:00
fincs
2e76b2b150 waitN: Fix index bug when there are handles before UEvents in the array 2018-12-17 16:06:23 +01:00
fincs
3c9a84fe68 wait.c: Fix no-timeout handling; use new kernel error result codes 2018-12-17 16:06:23 +01:00
fincs
9144d78031 Stylefixes, part 1 2018-12-17 16:06:23 +01:00
plutooo
eb7d835a79 wait: Rename UsermodeEvent and UsermodeTimer 2018-12-17 16:06:23 +01:00
plutooo
376add30a4 wait: Introduce wait for raw handles too 2018-12-17 16:06:23 +01:00
plutooo
68b4d323a0 utimer: Add TimerType_OneShot 2018-12-17 16:06:23 +01:00
plutooo
0c0261bf2f wait: Improve timer calculation, thanks derrek 2018-12-17 16:06:23 +01:00
plutooo
b38983c1b7 wait: Fix a race 2018-12-17 16:06:23 +01:00
plutooo
eb01ccd097 wait: Doxygen 2018-12-17 16:06:23 +01:00
plutooo
6a6f654526 wait: Final implementation 2018-12-17 16:06:23 +01:00
plutooo
03ddd464a0 arm: Rename armTickToNs(), etc 2018-12-17 16:06:23 +01:00
plutooo
26b17cdae5 kernel: Review comments (move to private interface to private headers, atomics) 2018-12-17 16:06:23 +01:00
plutooo
9da123f916 wait: Check for disabled timer 2018-12-17 16:06:23 +01:00
plutooo
c6fc6a41e5 wait: Bug-fixes and lock-free utimer stop/start 2018-12-17 16:06:23 +01:00
plutooo
370d78453e kernel: Introduce utimer, uevent, and waitN 2018-12-17 16:06:23 +01:00
yellows8
42e7cf44cb Implemented applet IPC code for pushing storages/objects. Added appletPushToGeneralChannel(). 2018-12-16 18:16:01 -05:00
yellows8
f61e9237e6 Added accountGetPreselectedUser. 2018-12-15 21:50:27 -05:00
yellows8
41e75d0b7d Removed AppletStorage.isHandleStorage since it's not usable for storages not created by the current process. Hence, appletStorageGetSize no longer supports HandleStorage. 2018-12-15 18:11:21 -05:00
yellows8
10826dda13 Added appletPopLaunchParameter. 2018-12-15 17:31:36 -05:00
yellows8
d65c2ec94b Added support for tmem with AppletStorage, and added HandleStorage support. applet IPC improvements. 2018-12-15 16:34:23 -05:00
yellows8
1077cc2b46 Implemented AppletStorage. Various IPC improvements in applet.c, etc. 2018-12-13 22:48:48 -05:00
yellows8
8b86e4ecb8 Use domains for applet. 2018-12-12 21:13:01 -05:00
Michael Scire
3cff199b42 Add remaining pm:shell services, address issues 2018-12-10 00:12:46 +01:00
Michael Scire
0fad4244da Add ro:dmnt, ldr:ro. 2018-12-10 00:12:46 +01:00
Michael Scire
8e1ba23b83 pm: Add remaining pm:dmnt services 2018-12-10 00:12:46 +01:00
Michael Scire
0a92b0eb07 ns: Implement all of ns:dev 2018-12-10 00:12:46 +01:00
plutooo
bfad4d4557 Fix whitespace 2018-12-09 19:07:39 +01:00
plutooo
c328a74f71 Add fsIsExFatSupported() 2018-12-09 17:06:47 +01:00
Lioncash
69a98dc0cb kernel/svc: Correct SVC instruction values for svcMapPhysicalMemory and svcUnmapPhysicalMemory
0x2A corresponds to svcFlushEntireDataCache, while 0x2B corresponds to
svcFlushDataCache.
2018-12-07 12:19:16 +01:00
Michael Scire
40bccd7838 Add svcTerminateDebugProcess 2018-12-06 13:18:06 +01:00
yellows8
bc2dff0361 Added hidAcquireNpadStyleSetUpdateEventHandle. 2018-12-02 16:48:59 -05:00
Michael Scire
2a831c6196 Fix struct definition for splSetConfig 2018-12-01 21:29:41 +01:00
yellows8
ee066a27ee Implemented usbhs endpoints, other adjustments. Updated field name in UsbHsXferReport. Added defines in usb.h from libusb. 2018-11-30 20:13:58 -05:00
yellows8
31cea3a6b6 Implemented usbhs control transfers. Fixed eventCtrlXfer init. Updated a field name in UsbHsXferReport. 2018-11-30 20:13:58 -05:00
yellows8
2049ff081d Updated usbhs comments and store the interface ID in UsbHsClientIfSession. Added: usbHsIfSetInterface, usbHsIfGetInterface, usbHsIfGetAlternateInterface, usbHsIfGetCurrentFrame, and usbHsIfResetDevice. 2018-11-30 20:13:58 -05:00
yellows8
83dfc58adb Moved interface-specific data from UsbHsInterface into UsbHsInterfaceInfo. Added usbHsAcquireUsbIf/usbHsIfClose and the related structs. 2018-11-30 20:13:58 -05:00
yellows8
f1ba199d1c Initial usbhs support. 2018-11-30 20:13:58 -05:00
yellows8
725ac9f00a Moved usb code specific to usbds into seperate .c/.h. 2018-11-28 17:34:53 -05:00
yellows8
3726eb8950 Use PACKED for _usbDsGetSession resp, required for domains. Use domains for usbds, with changes from @SciresM. 2018-11-28 16:40:45 -05:00
yellows8
7ae659c2cb Handle the output u8 in _usbDsGetSession, without using it in the callers. 2018-11-28 15:03:06 -05:00
yellows8
36bed9f8fc Added support for getting file timestamps via 3.0.0+ fsFsGetFileTimeStampRaw, *stat() timestamps are now set when fsFsGetFileTimeStampRaw is successful. This is now used in fsdev_open() for supporting fstat. The sysver is now checked in fsFsCleanDirectoryRecursively(). Closes #204. 2018-11-20 14:22:19 -05:00
pixel-stuck
a7577f7b56 Add pcvSetVoltageEnabled and pcvGetVoltageEnabled (#208)
* Add pcvSetVoltageEnabled and pcvGetVoltageEnabled
2018-11-19 10:37:59 -05:00
yellows8
8767ea798b Determine whether to use AUDREN_REVISION_1-4 via the sysver, instead of hard-coding it for the 3.0+ rev. Updated comments and added AUDREN_REVISION_5/AUDREN_REVISION_6 defines. 2018-11-17 11:43:24 -05:00
yellows8
e7117a7903 Added enum for hidSetNpadJoyHoldType. Improved hid docs. Use hidSetNpadJoyHoldType during hid init/exit. Closes #206. 2018-11-15 21:36:34 -05:00
yellows8
12ee6e502e Fixed register corruption in crt0 introduced by the exception commit. Only handle exceptions when __libnx_exception_handler is defined by the user, and updated comments. 2018-11-14 20:55:17 -05:00
Michael Scire
4e4d5ef320 fatal: Implement fatalWithContext 2018-11-14 19:52:40 -05:00
Michael Scire
e943eb6ea5 Add fs gamecard attribute retrieve commands 2018-11-14 19:52:40 -05:00
Michael Scire
7b7bd9dd9d Add setsys fatal commands 2018-11-14 19:52:40 -05:00
Michael Scire
5386edef4f Add gpio wrapper 2018-11-14 19:52:40 -05:00
Michael Scire
dec6f1ffe1 Add i2cOpenSession, i2csessionSendAuto 2018-11-14 19:52:40 -05:00
Michael Scire
3ba8a5aa87 Add lblSwitchBacklightOn and lblSwitchBacklightOff 2018-11-14 19:52:40 -05:00
Michael Scire
8cb9004a2f Add pcvGetClockRate/pcvSetClockRate 2018-11-14 19:52:40 -05:00
Michael Scire
27936900d0 Add enum for PsmBatteryVoltageState 2018-11-14 19:52:40 -05:00
Michael Scire
94dc8f75f9 Add bpcGetSleepButtonState 2018-11-14 19:52:40 -05:00
Michael Scire
ee55b63f79 Add spsm wrapper. 2018-11-14 19:52:40 -05:00
yellows8
5e69f760fb Added support for exception-handling. 2018-11-14 16:17:02 -05:00
SciresM
e19765445d fs: Add fsFsQueryEntry (and fsFsSetArchiveBit helper) (#202)
* fs: Add fsFsSetArchiveBit

* Add fsdevSetArchiveBit wrapper
2018-11-09 22:03:47 -05:00
natinusala
fd4afacb01 Expose appletSetFocusHandlingMode 2018-11-08 19:27:56 -05:00
yellows8
5a078b1205 Use 6.0.0+ _hwopusDecodeInterleaved cmds. 2018-11-06 23:02:40 -05:00
yellows8
6a8dba4eb4 Added support for hwopus multistream. Minor adjustments in hwopus.h. 2018-11-06 15:10:54 -05:00
yellows8
c99518643c Use _hwopusDecodeInterleavedWithPerfOld on 4.0.0+. Use the multistream cmdid when a bool flag is set in HwopusDecoder, which is currently not set. 2018-11-06 10:47:09 -05:00
yellows8
b25be27525 Use BufferType_Normal in auddev. 2018-11-05 11:34:30 -05:00
yellows8
a6412e1e3a Fixed swapped output raw fields in hwopusDecodeInterleaved, and also swapped those in the params. 2018-11-04 20:29:38 -05:00
yellows8
34e99d53c2 Added hwopus. 2018-11-04 18:39:04 -05:00
SciresM
7c2d89dc71 psc: Add PmModule support (#200)
* psc: Add PmModule support
2018-11-03 21:40:15 -04:00
yellows8
576302444d Added auddev and AudioDeviceName. 2018-11-02 16:04:09 -04:00
fincs
ede79862fb Add threadGetCurHandle 2018-10-27 17:34:44 +02:00
yellows8
ccfb1fd4d2 Use Event in applet instead of raw handles. 2018-10-26 14:00:13 -04:00
yellows8
3b0348654e Use Event in audout/audin instead of raw handles. 2018-10-26 13:41:26 -04:00
yellows8
5dc7505139 Fixed swapped params for svcCreateEvent in eventCreate. 2018-10-26 13:08:45 -04:00
yellows8
49e4e31fcc Added support for psm StateChangeEvent. Added psmGetBatteryVoltageState. Code style adjustments, use serviceIpc*, etc. 2018-10-26 13:07:10 -04:00
SciresM
ac853db5f0 set:sys: Add GetFirmwareVersion(2) (#190)
* set:sys: Add GetFirmwareVersion
2018-10-24 17:16:35 -04:00
yellows8
bcddc1ea35 Only allow using video-recording with regular-application, since it's not usable with SystemApplication. Added _appletIsRegularApplication() for this. 2018-10-23 16:23:14 -04:00
tatehaga
b130d96445 barrier implementation using semaphores (#186) 2018-10-23 21:19:26 +02:00
yellows8
318562d13b Init/exit nifm in socketInitialize/socketExit, the user app no longer has to manually handle this when using gethostid/gethostname. Use domains for nifm. Style adjustments in nifm.c. 2018-10-23 14:04:58 -04:00
plutooo
6977cb24f5 virtmem: Fix minor regression
We need to fetch alias region to make sure virtmemReserve() avoids returning addresses inside of it
2018-10-23 04:07:01 +02:00
Michael Scire
e942b9cc25 virtmem: Fix stack region mapping on 1.0.0 2018-10-22 22:34:11 +02:00
yellows8
a15c9945a7 Updated comments regarding requirements for using video-recording, etc. Changed appletInitializeGamePlayRecording to (void) since the sysmodule only supports a fixed size. 2018-10-22 13:37:25 -04:00
yellows8
0fb0f67d2e hidGetControllerConnected -> hidIsControllerConnected 2018-10-22 12:20:28 -04:00
yellows8
0370140c12 Added hidGetControllerConnected() and updated CONTROLLER_P1_AUTO comment. 2018-10-22 12:13:59 -04:00
yellows8
a62e29d5cf Added support for applet video-recording, currently not usable. In appletExit, only call appletSetFocusHandlingMode when g_appletExitProcessFlag is zero, so that it isn't called twice during proc-exit. 2018-10-21 22:24:54 -04:00
yellows8
cfbc3e9278 Added usbCommsSetErrorHandling, don't throw fatalSimple for usbComms by default. 2018-10-19 12:34:17 -04:00
yellows8
319cc578ca Fixed swapped params for memalign in jitCreate(). 2018-10-17 14:47:14 -04:00
fincs
8e1736c480 Add RandomSeed (14) homebrew ABI key and related handling 2018-10-17 17:17:05 +02:00
yellows8
6a9d194fe3 Added hidGetControllerColors and HidControllerColors. Changed rightColorbuttons to rightColorButtons in HidControllerHeader. Updated CONTROLLER_P1_AUTO comment. 2018-10-16 22:45:44 -04:00
TuxSH
052fb34397 Reduce usage of malloc in select and poll. Fix poll not acceping -1 fds 2018-10-16 18:53:05 -04:00
fincs
fba43b0f10 nvBufferCreate: use separate is_cpu_cacheable/is_gpu_cacheable parameters 2018-10-17 00:32:47 +02:00
Michael Scire
86a25e1edd Make fsp-ldr use domains 2018-10-16 17:56:39 -04:00
Michael Scire
d67ae02bc5 Add domain support to fsp-srv 2018-10-16 17:56:39 -04:00
yellows8
cde495241c Added _hidActivateNpad/_hidDeactivateNpad for internal use in hidInitialize/hidExit. Added hidSetNpadJoyHoldType. Added _hidCmdWithInputU64 and _hidCmdWithNoInput. 2018-10-15 12:10:07 -04:00
yellows8
d4277b6d32 Added hidSetSupportedNpadIdType(), which is automatically called during init. Closes #148, however vibration disable+enable in system-settings is still needed. 2018-10-14 21:47:26 -04:00
yellows8
52686826d1 Added fsdevGetDeviceFileSystem(). 2018-10-12 22:13:14 -04:00
yellows8
42d3c32b37 Use FatalType_ErrorReportAndErrorScreen instead of FatalType_ErrorScreen, on pre-3.0.0. FatalType_ErrorScreen is only available with 3.0.0+, this fixes a regression where using fatalSimple on pre-3.0.0 caused a system hang. 2018-10-11 15:41:05 -04:00
SciresM
347e3b3156 Refactor usb:ds, add 5.0.0+ support to usbComms. (#181)
* Refactor usb:ds, add support for 5.0.0+. Closes #109.
2018-10-11 15:35:22 -04:00
Samuel P
74ebf370dd add an exit request hook type, allow to delay exit (#183)
* add an exit request hook type, allow to delay exit
* appletMainLoop: return false on exit request msg
2018-10-09 11:04:33 -04:00
Thog
8178c0fa45 _socketDeserializeHostent: fix usage of uninitialized h_name 2018-10-08 21:44:30 -04:00
fincs
420d5d4e61 C11 thread support: address standard compilance issues
Also fixes #158
2018-10-06 22:00:31 +02:00
fincs
1563df3921 Refactor console device, see details:
- Added ConsoleRenderer interface, which abstracts all relevant
  operations needed to set up and write characters to a text mode display
- ConsoleFont now has tileWidth/tileHeight parameters
- PrintConsole now holds a pointer to a ConsoleRenderer
- Added consoleExit for deinitializing the console
- Added consoleUpdate for updating the display every frame
- Corrected lots of obsolete/outdated comments
- Separated console software renderer into its own file (console_sw.c)
- Added getDefaultConsoleRenderer weak function, for selecting the
  default console renderer when none (NULL) is specified in PrintConsole
- Software renderer now takes care of gfxInitDefault/gfxExit
- All these changes are backwards compatible with older programs because:
  - gfxInitDefault has double-init protection
  - Old programs don't call consoleUpdate/Exit, but their implementation
    in the software renderer is identical to what old programs were
    already doing anyway
2018-10-06 16:48:03 +02:00
fincs
cc70f19e61 nvservices: increase default tmem size to 8MB 2018-10-06 16:47:53 +02:00
fincs
20204e3c48 NvFence: fix regression on 1.x 2018-10-06 16:47:25 +02:00
yellows8
4fb364060c Added support for timezones, hence localtime() will now return actual localtime. Added timeToCalendarTimeWithMyRule and TimeCalendarTime/TimeCalendarAdditionalInfo, which are used for timezones support. 2018-10-05 19:59:24 -04:00
yellows8
dc011024f9 Call appletSetFocusHandlingMode in appletExit for AppletType_Application. 2018-10-04 22:19:58 -04:00
yellows8
6d2699b38d Added pmshellGetApplicationPid(). 2018-10-04 18:44:45 -04:00
yellows8
b4859873ec Added env AppletFlags handling. Don't enter the msg-loop for AppletType_Application when the output from _appletGetCurrentFocusState is already 1. This fixes the hang issue with AppletType_Application where applet init with AppletType_Application was previously done. Moved AppletType_*Application checks into a dedicated function which also checks for AppletType_SystemApplication, hence some of these funcs which didn't check for AppletType_SystemApplication now support it. 2018-10-04 18:06:00 -04:00
yellows8
96dce1a8b6 In __libnx_gtod set errno to EIO instead of EINVAL when __boottime is invalid due to timeGetCurrentTime() failing during time init, and added this to __libnx_clock_gettime. Set errno to ENOSYS in __libnx_clock_settime. 2018-10-03 20:55:58 -04:00
yellows8
0b1b7039ca Changed the value of TimeType_Default to TimeType_UserSystemClock. When timeGetCurrentTime fails where __nx_time_type isn't TimeType_Default, call it again with TimeType_Default. 2018-10-03 19:48:33 -04:00
yellows8
16bbf3411e Added automatic process exit handling with applet cmds, see __nx_applet_exit_mode. appletSelfExit is no longer user-accessible, see __nx_applet_exit_mode instead. Added envSetExitFuncPtr. Added disabled _appletSetTerminateResult func. 2018-10-03 19:04:48 -04:00
yellows8
beef09a27e Removed appletSelfExit and replaced it with the previously disabled _appletSelfExit, now renamed to appletSelfExit. 2018-10-01 18:35:49 -04:00
Vicki Pfau
7a952ab39b hid: Uncomment function that works now 2018-09-30 16:39:51 -04:00
Vicki Pfau
8add42378b hid: Add SixAxis sensor support 2018-09-30 16:39:51 -04:00
Vicki Pfau
68b2ad0c1e hid: Call SetSupportedNpadStyleSet to enable additional Npad features 2018-09-27 16:23:37 -04:00
fincs
eb11e25dc5 Add Module_HomebrewAbi/Loader. Reassign Module_LibnxBinder, as it inadvertently collided with Module_HomebrewLoader. 2018-09-27 21:03:29 +02:00
yellows8
1cc3547990 Removed TODO comment in _hidGetDeviceHandles(). 2018-09-27 12:01:58 -04:00
yellows8
1267019d83 Added partial support for hid SixAxisSensor. Moved some hid ipc code into a single func for using cmds with an input u32. Moved handle-generation code from hidInitializeVibrationDevices into a new func, with some improvements + support for SixAxisSensor. 2018-09-26 22:28:40 -04:00
fincs
67886bb3df nvGpuClose: correct order of operations 2018-09-26 21:08:30 +02:00
leo60228
1c948e2d32 applet: Add appletSelfExit() 2018-09-21 15:55:06 -04:00
plutooo
00287b6a69 Fix pm:dmnt for 5.0.0+ 2018-09-18 09:38:17 +02:00
TuxSH
3ecd841ec2 Update svcGetDebugThreadContext, add svcSetDebugThreadContext, implement threadDumpContext 2018-09-18 01:13:55 +02:00
TuxSH
5498d3e0c7 Add ThreadContext, RegisterGroup, svcGetThreadContext3, threadDumpContext 2018-09-18 01:13:55 +02:00
Vicki Pfau
d9e3be27a2 Add psm:GetChargerType 2018-09-18 01:13:24 +02:00
Lioncash
a06bfb74a7 kernel/random: Avoid casting away const in the U8TO32_LITTLE macro
This macro is only ever used with const input data within chachaInit(),
which causes -Wcast-qual warnings. This is trivial enough to fix, by
preserving the qualifier within the cast.
2018-09-18 01:13:04 +02:00
fincs
4645ef7004 gfx: Add gfxAppendFence. Remove obsolete comments related to double buffering. 2018-09-16 18:03:35 +02:00
fincs
a50942509f NvGpfifo: Redesign API to allow for submitting multiple entries at once 2018-09-16 16:35:57 +02:00
plutooo
4a13ee3e62 Fix function name to not cause linker problems due to symbol truncation issues 2018-09-15 08:42:32 +02:00
Lioncash
9ff32e3260 Resolve trivial -Wmissing-prototypes warnings
Gets rid of trivial warnings caused by headers not being included into
the relevant .c file, empty parameter lists missing void, or functions
missing a prototype in the header.
2018-09-14 19:07:34 +02:00
fincs
e7ae7ea846 nv wrappers: Handle cacheability settings properly, more details:
- nvAddressSpaceMapBuffer now accepts a flags parameter instead of
  hardcoding NvMapBufferFlags_IsCacheable.
- NvBufferFlags was incorrect and was thus removed.
- nvBufferCreate/nvBufferCreateRw replaced with nvBufferCreate, with
  an extra 'is_cacheable' bool parameter. There's no such thing as a
  "read-only/read-write" buffer.
- nvBufferMakeCpuUncached/nvBufferMakeCpuCached were removed.
2018-09-14 18:09:58 +02:00
fincs
f469fa7458 Add nvioctlChannel_KickoffPb (uses Ioctl2) 2018-09-14 02:15:55 +02:00
fincs
cae1954ebc nv: add cloned session handle used with certain requests; add Ioctl2 2018-09-14 02:15:24 +02:00
fincs
1cbc67e650 NvBuffer: actually unmap and free the buffer in nvBufferFree 2018-09-13 20:05:55 +02:00
Rajko Stojadinovic
dcdb5c28a4 Fix fsOpenFileSystem (#153)
* Fix fsOpenFileSystem

* Make fsOpenFileSystem and fsOpenFileSystemWithId work on all firmware versions

* Add some comments for fsOpenFileSystem(WithId)
2018-09-09 19:56:38 +02:00
Random
122fec028c Added nsListApplicationRecord and nsListContentMetaStatus (#163) 2018-09-09 19:56:16 +02:00
neonsea
20a39ef86c Add appletBeginBlockingHomeButton() and appletEndBlockingHomeButton() (#165) 2018-09-09 19:55:53 +02:00
XorTroll
cd813ddb60 Add psm service and psmGetBatteryChargePercentage function (fixed) (#166) 2018-09-09 19:55:36 +02:00
Michael Scire
6ef26bff1a Implement kernelAbove600() 2018-09-09 19:55:12 +02:00
fincs
81d56a9e23 console: disable forced flush/swap/vblank due to performance reasons 2018-09-08 14:19:24 +02:00
fincs
52c0cee10c Add nvioctlChannel_SetTimeout & nvChannelSetTimeout 2018-09-08 14:17:54 +02:00
fincs
999edaa8b2 Changes to NvCmdList and NvGpfifo, see details:
- NvCmdList:
  - Added 'offset' parameter: start of the cmdlist within the buffer
  - Added nvCmdListReset for resetting a cmdlist (offset/num_cmds cleared)
- NvGpfifo:
  - nvGpfifoCreate: disabled fence wait
  - nvGpfifoSubmit -> nvGpfifoSubmitCmdList:
    - Added fence_incr parameter
    - Cleaned up flags and gpfifo entry creation
    - Now advances cmdlist offset by the number of cmds submitted
      instead of going back to the beginning
2018-09-07 17:27:15 +02:00
fincs
7f4001bec2 Potentially fix race condition nvGpfifoCreate by waiting on the fence returned by nvioctlChannel_AllocGpfifoEx2 2018-09-05 14:00:28 +02:00
fincs
d718a8dd28 NvBufferFlags_Nintendo doesn't exist, it's a misreading of the alignment parameter 2018-09-05 13:59:50 +02:00
fincs
e3a7187973 gfx: Remove gfxSetDrawFlip. Make 0 the default transform instead of FLIP_V. 2018-08-31 20:14:50 +02:00
fincs
0d1b8bd723 BqQueueBufferInput: add swapInterval field (purpose currently unknown) 2018-08-31 20:11:53 +02:00
fincs
651dd72ac1 Add bqCancelBuffer and use it in gfx.c 2018-08-31 14:14:54 +02:00
fincs
c8ebe8a3b5 buffer_producer: convert Binder error codes to Result values 2018-08-31 14:05:04 +02:00
fincs
a62fae427b Introduce Module_LibnxBinder result codes (based on Android status_t) and binderConvertErrorCode 2018-08-31 13:59:18 +02:00
fincs
819a6f0d89 display/binder.h: refactoring and other changes:
- Removed session_handle/native_handle state
- Consequence of the above: simplified binderCreate/binderInitSession
- Now using viGetSession_IHOSBinderDriverRelay internally
- Changed binderGetNativeHandle to return an Event
- Added readable aliases for binderAdjustRefcount
- gfx: now using async bqDequeueBuffer when the binder event is available
2018-08-31 13:05:23 +02:00
fincs
60cbb68f46 gfx: use new NvFence waiting code 2018-08-31 13:05:23 +02:00
fincs
a70acdd445 Implement nvFence 2018-08-31 13:05:23 +02:00
fincs
57e1f5f4cb nvioctlNvhostCtrl: add EventWaitAsync, EventUnregister; fix EventRegister 2018-08-31 13:05:23 +02:00
fincs
99f37184fb nvQueryEvent: return an Event instead of a raw Handle 2018-08-31 13:05:23 +02:00
fincs
7f8b6af64c runtime/newlib.c: use armGetSystemTick instead of svcGetSystemTick 2018-08-31 13:05:23 +02:00
fincs
b26bb6ce76 viGetDisplayVsyncEvent: return an Event instead of a raw handle 2018-08-31 13:05:22 +02:00
fincs
88e9d3bb83 kernel/event.h: several fixes, including autoclear support 2018-08-31 13:05:22 +02:00
fincs
f2f59c75c0 display/gfx.h & buffer_producer.h: Start major refactor, highly WIP 2018-08-31 13:05:22 +02:00
fincs
10684e205a nvidia/fence.h: sketching on NvFence/NvMultiFence {not implemented} 2018-08-31 13:05:22 +02:00
fincs
30e2ca8ec3 Introduce nvidia/types.h & move NvBufferKind to it (renamed to NvKind) 2018-08-31 13:05:22 +02:00
fincs
27f5aecea8 nvgfx: Strip down to bare minimum - remove unused logic 2018-08-31 13:05:22 +02:00
fincs
4e7159ce02 VI service: major revamp, see details:
- Added viOpenDefaultDisplay.
- Replaced viOpenLayer with viCreateLayer.
- NativeWindow parcel data is now parsed by viCreateLayer, and the
  ViLayer struct contains a new igbp_binder_obj_id field.
- LayerFlags/LayerId parameters replaced by weak global variables
  __nx_vi_layer_id/__nx_vi_stray_layer_flags.
- The root vi:* session is closed on startup.
- Simplified corresponding gfx code.
- Misc style fixes
2018-08-31 13:05:22 +02:00
fincs
180cd9b550 display/parcel.h: publish ParcelHeader struct 2018-08-31 13:05:22 +02:00
fincs
a0b3d3e193 source/nvidia/: do NOT include <switch.h> 2018-08-31 13:05:22 +02:00
Jules Blok
e234129598 gfx: Add a buffer index to gfxGetFramebufferHandle(). 2018-08-31 13:05:22 +02:00
Jules Blok
4f331eb9f7 gfx: Add function to query framebuffer pitch. 2018-08-31 13:05:22 +02:00
Jules Blok
06e50f74ab gfx: Add a call to get the framebuffer nvmap handle. 2018-08-31 13:05:22 +02:00
Jules Blok
d93c45a18d gpfifo: Reset the command buffer after submission.
Don't forget to wait on the fence before re-using the buffer.
2018-08-31 13:05:22 +02:00
Jules Blok
9ce884f29e cmd_list: The number of entries is the number of ints. 2018-08-31 13:05:22 +02:00
Jules Blok
3a750138c5 buffer: Align the size based on the param. 2018-08-31 13:05:22 +02:00
Jules Blok
cd85610ebb Fix nvBuffer memory allocation failure 2018-08-31 13:05:22 +02:00
plutooo
de93886c56 Buildfix 2018-08-31 13:05:22 +02:00
plutooo
a3a2e57fc2 More updates to nvidia 2018-08-31 13:05:22 +02:00
plutooo
1c88d99131 Implement cmd list 2018-08-31 13:05:22 +02:00
plutooo
d6dbb59872 Change code style 2018-08-31 13:05:22 +02:00
plutooo
9c234d4d40 Started sketching on cmd lists 2018-08-31 13:05:22 +02:00
plutooo
50718ddccb Bad cleanup in gpu.c 2018-08-31 13:05:22 +02:00
plutooo
6d21700ff7 Get rid of flag todo 2018-08-31 13:05:22 +02:00
plutooo
28cac45af8 Completing error notifier 2018-08-31 13:05:22 +02:00
plutooo
267e4e509b Error notifier bringup 2018-08-31 13:05:22 +02:00
plutooo
d22bc791f4 Nv fixes 2018-08-31 13:05:22 +02:00
plutooo
d6f2e1118c Zcull context works 2018-08-31 13:05:22 +02:00
plutooo
420d445a84 Minor fixes, now gets to whitescreen 2018-08-31 13:05:22 +02:00
plutooo
577a76dc06 Minor fixes, adding custom flag to buffer allocation 2018-08-31 13:05:22 +02:00
plutooo
1a22b484f8 Implemented zcull_ctx, 3d_ctx, random fixes 2018-08-31 13:05:21 +02:00
plutooo
cff044f497 Implement 3d_ctx 2018-08-31 13:05:21 +02:00
plutooo
87d29bdeb3 gpu takes reference on singletons 2018-08-31 13:05:21 +02:00
plutooo
f62f6e8b54 Add refcounting to nvidia stuff 2018-08-31 13:05:21 +02:00
plutooo
e7daaf1e71 Hide nv tmem size from gfx 2018-08-31 13:05:21 +02:00
plutooo
74958c57ce Use reference counting across services 2018-08-31 13:05:21 +02:00
plutooo
194e335532 Let nv reference applet 2018-08-31 13:05:21 +02:00
plutooo
efacee6956 Simplify nv 2018-08-31 13:05:21 +02:00
plutooo
4b20f609a9 Stubbed 3d_ctx 2018-08-31 13:05:21 +02:00
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
yellows8
6dd76f6288 Sync AudioOutBuffer comments with wiki. Updated audoutPlayBuffer() comments. Moved the waiting/post-append code from audoutPlayBuffer() into new func audoutWaitPlayFinish(). Removed '&' from code setting audoutAppendAudioOutBuffer() raw->tag. 2018-02-28 19:37:17 -05:00
plutoo
f4230f3ef0 Fix race condition in hid 2018-03-01 00:15:01 +01:00
plutoo
20f3e87d11 Change type of TryLock to bool 2018-02-28 18:22:28 +01:00
Jules Blok
e966f21800 mutex: Add TryLock() variants. 2018-02-28 18:00:03 +01:00
TuxSH
e0457c4534 Handle bsdInitialize failure codes properly 2018-02-27 19:14:44 +01:00
TuxSH
d33b26016d Add documentation to bsd.h and sfdnsres.h, etc. 2018-02-27 19:14:44 +01:00
TuxSH
3709ee92a5 Fix netdb functions 2018-02-27 19:14:44 +01:00
TuxSH
888f7e101f Fix inet_ntop6 2018-02-27 19:14:44 +01:00
TuxSH
472d305883 Move socket.c definitions around, fix bugs 2018-02-27 19:14:44 +01:00
TuxSH
dcf3e56300 Implement netdb.h functions, fix bugs, etc. 2018-02-27 19:14:44 +01:00
TuxSH
b8fb1722d0 Add sfdnsres 2018-02-27 19:14:44 +01:00
TuxSH
4b685d676b Add basic IPv6 definitions as sfdnsres seems to support it...
...also fix a bug in the inet_* functions.
2018-02-27 19:14:44 +01:00
TuxSH
0b92bb76b0 Add newlib wrapper for sockets...
... fix several bugs, etc.
2018-02-27 19:14:44 +01:00
TuxSH
88dbc66d01 Handle result code+errno properly...
also make fcntl and ioctl non-variadic for convenience for the newlib wrapper
2018-02-27 19:14:44 +01:00
TuxSH
a3e90d68a0 Add all the needed headers from FreeBSD...
... clean them up, also fix some bugs in bsd.c/h, etc.
2018-02-27 19:14:44 +01:00
TuxSH
4d78f12871 Implement most bsd:u/s service commands 2018-02-27 19:14:44 +01:00
yellows8
5664830f35 Fixed args parsing with quotes. 2018-02-27 02:14:23 -05:00
yellows8
f07d09aeb0 Added appletGetDesiredLanguage(). In set-serv('set'), added support for all language/region commands, etc. 2018-02-26 12:34:01 -05:00
plutoo
d3cc781bf6 Stylefix for nro 2018-02-26 02:10:49 +01:00
Dave Murphy
0bbfbadc39 switch to 16x16 console font 2018-02-25 15:49:25 +01:00
yellows8
e24c20f9e7 Added Nro prefix to Asset in nro.h + updated romfs_dev for this. 2018-02-24 15:39:30 -05:00
yellows8
4c1b09d6b9 Check for invalid handle in fs*Close(). Added fsOpenDataStorageByCurrentProcess(), fsStorageRead(), and fsStorageClose(). Added fsdevGetDefaultFileSystem(). Imported nro.h from nx-hbmenu. Implemented proper RomFS support. 2018-02-23 22:29:43 -05:00
yellows8
2022d545dc Store pixel-format in a global instead of hard-coding it and added a disabled func for setting it. Added a pixel-format comment to gfx.h. 2018-02-22 21:49:55 -05:00
yellows8
3c4c35e6e5 Added gfxSetDrawFlip() and gfxConfigureTransform(). 2018-02-22 20:31:51 -05:00
plutoo
60876ef3f3 Eyeballin set:sys 2018-02-22 08:44:12 +01:00
shinyquagsire23
954a48b8fe Add hidMouseRead, allows mouse position/velocity/scrollwheel velocity to be fetched 2018-02-22 06:48:00 +01:00
shinyquagsire23
1b255bfe15 Add usleep 2018-02-21 08:28:18 +01:00
plutoo
f8a86bf7b6 Merge branch 'master' of https://github.com/switchbrew/libnx 2018-02-21 08:38:49 +01:00
plutoo
e25aae5a97 Workaround for burn in issue 2018-02-21 08:38:22 +01:00
yellows8
d61154f0e5 Added timeSetCurrentTime() and attempt to initialize time-serv with 'time:s' first. 2018-02-21 00:26:21 -05:00
yellows8
0dcaeec959 In __libnx_gtod() set tv_usec, and moved+updated the timezones comment. 2018-02-20 22:24:35 -05:00
plutoo
842ce50c2f Condvar fix 2018-02-21 03:05:15 +01:00
yellows8
14263ddd78 Initial time support, timezones are not handled yet. 2018-02-20 18:17:32 -05:00
plutoo
6ee4d389a5 Binder bugfix 2018-02-19 23:40:48 +01:00
Mike H
cde07068dd Return result from audoutPlayBuffer (#46)
* Return result from audoutPlayBuffer
* Add alignment note in header file
2018-02-19 16:43:58 -05:00
yellows8
20cd940095 Implemented arg parsing for NRO env. When args aren't available, set __system_argv to {ptr to NULL} instead of NULL. 2018-02-17 21:25:21 -05:00
yellows8
a1462c8b0b Fixed size of bufferProducerGraphicBuffer and removed the union for it. Removed an invalid comment from gfx.c, since bufferProducerRequestBuffer() is used after bufferProducerGraphicBufferInit(). 2018-02-17 19:35:04 -05:00
Mike H
0e40828c19 Initial audio support (#43)
Initial audio support
2018-02-17 11:40:59 -05:00
yellows8
c22655e7a2 Moved the applet GetEventHandle code outside of the regularapp block since appletMainLoop() uses this event. 2018-02-16 22:54:15 -05:00
yellows8
3c6b8bb6dd Removed envGetArgc() and the related code, since it was removed from wiki-ABI. Updated a comment in argv.c. 2018-02-16 22:40:53 -05:00
yellows8
3f90f3b64c Align width/height to 4 in gfxInitResolution() and gfxConfigureCrop(). Updated the image-transfer code in gfxFlushBuffers() for removing the width misalignment handling. 2018-02-16 20:13:47 -05:00
yellows8
67af341594 Fixed romfs_dir struct for the parent field and fixed romfs_dev.h formatting. 2018-02-13 17:50:21 -05:00
yellows8
f5606bfb8a Added disabled _appletExitProcessAndReturn(). 2018-02-13 12:16:17 -05:00
yellows8
4efcc5b439 Only handle appletIFunctions for non-LibraryApplet. Added remaining init/exit for LibraryApplet. Handle appletExit() properly. 2018-02-12 22:15:56 -05:00
yellows8
83349f946a Use u128 for data-transfer in gfxFlushBuffers() when width is aligned for this. 2018-02-12 18:09:15 -05:00
yellows8
13b4c74723 Updated gfx API. Replaced gfxSetDoubleBuffering() with gfxSetMode(), and added GfxMode enum. Updated gfx.h comments. Updated gfxGetFramebufferDisplayOffset() for using the aligned width. The new GfxMode_LinearDouble is now used by default, apps must not use gfxGetFramebufferDisplayOffset() with this mode. Apps using gfxGetFramebufferDisplayOffset() must be updated. 2018-02-12 16:08:25 -05:00
yellows8
4b2a32af59 Imported transform enums from Android and updated g_gfxQueueBufferData.transform for this. 2018-02-12 11:58:54 -05:00
yellows8
a31e53d57a Added disabled applet code for cmds Exit, LockExit, and UnlockExit. 2018-02-11 15:44:49 -05:00
TuxSH
507bf71a7b Fix NV ioctl nameclashes...
...with bsd ioctls (coming soon) & C++ stdlib
2018-02-10 23:02:05 +01:00