Commit Graph

386 Commits

Author SHA1 Message Date
plutooo
bfad4d4557 Fix whitespace 2018-12-09 19:07:39 +01:00
plutooo
c328a74f71 Add fsIsExFatSupported() 2018-12-09 17:06:47 +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
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
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
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
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
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
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
6a9d194fe3 Added hidGetControllerColors and HidControllerColors. Changed rightColorbuttons to rightColorButtons in HidControllerHeader. Updated CONTROLLER_P1_AUTO comment. 2018-10-16 22:45:44 -04: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
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
fincs
cc70f19e61 nvservices: increase default tmem size to 8MB 2018-10-06 16:47:53 +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
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
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
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
Vicki Pfau
d9e3be27a2 Add psm:GetChargerType 2018-09-18 01:13:24 +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
cae1954ebc nv: add cloned session handle used with certain requests; add Ioctl2 2018-09-14 02:15:24 +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
fincs
99f37184fb nvQueryEvent: return an Event instead of a raw Handle 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
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
plutooo
d22bc791f4 Nv fixes 2018-08-31 13:05:22 +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
cd753b1b58 Implemented nvmap.c 2018-08-31 13:05:21 +02:00
plutooo
d8bb563546 Renamed gfx/ to display/ 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
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
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
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
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
Rajko Stojadinovic
e1d50dc129 Fix signature of ncmContentMetaDatabaseSet/Get, add ncmContentMetaDatabaseList (#134)
* Fix ncmContentMetaDatabaseSet/ncmContentMetaDatabaseGet, add ncmContentMetaDatabaseList
2018-07-25 20:15:54 -04:00
Joel16
2bcede91ba Add fsFsCleanDirectoryRecursively 2018-07-19 11:33:56 -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
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
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
c26e410ed8 Fatal: Make fatalSimple not create report, add FatalType enum 2018-06-25 12:33:15 +02:00
Joel16
eb3c264e88 Add setsysSetColorSetId and region codes 2018-06-13 19:34:20 -04: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
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
Joel
deab92d486 Add some setsysGet* functions (#98)
* Add some setsysGet* functions
2018-05-22 11:33:45 -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
Matthew Bell
61d4140773 Implement pm:info (#88)
* Added pm:info and GetTitleId
2018-05-14 21:09:43 -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
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
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
7b5d1b1bf3 Implement sm:m. 2018-05-04 01:50:22 +02: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
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
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
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
yellows8
bf216aa667 Added mounting for SystemSaveData. 2018-03-22 22:56:38 -04:00