libnx v4.10.0
Loading...
Searching...
No Matches
set.h
Go to the documentation of this file.
1/**
2 * @file set.h
3 * @brief Settings services IPC wrapper.
4 * @author plutoo
5 * @author yellows8
6 * @author SciresM
7 * @copyright libnx Authors
8 */
9#pragma once
10#include "../types.h"
11#include "../kernel/event.h"
12#include "../services/time.h"
13#include "../services/acc.h"
14#include "../services/fs.h"
15#include "../services/btdrv_types.h"
16#include "../services/btm_types.h"
17#include "../sf/service.h"
18
19#define SET_MAX_NAME_SIZE 0x48
20
21typedef enum {
22 ColorSetId_Light = 0,
23 ColorSetId_Dark = 1,
24} ColorSetId;
25
26/// Console Product Models
27typedef enum {
28 SetSysProductModel_Invalid = 0, ///< Invalid Model
29 SetSysProductModel_Nx = 1, ///< Erista Model
30 SetSysProductModel_Copper = 2, ///< Erista "Simulation" Model
31 SetSysProductModel_Iowa = 3, ///< Mariko Model
32 SetSysProductModel_Hoag = 4, ///< Mariko Lite Model
33 SetSysProductModel_Calcio = 5, ///< Mariko "Simulation" Model
34 SetSysProductModel_Aula = 6, ///< Mariko OLED Model
36
37/// IDs for Language.
38typedef enum
39{
40 SetLanguage_JA = 0, ///< Japanese
41 SetLanguage_ENUS = 1, ///< US English ("AmericanEnglish")
42 SetLanguage_FR = 2, ///< French
43 SetLanguage_DE = 3, ///< German
44 SetLanguage_IT = 4, ///< Italian
45 SetLanguage_ES = 5, ///< Spanish
46 SetLanguage_ZHCN = 6, ///< Simplified Chinese ("Chinese")
47 SetLanguage_KO = 7, ///< Korean
48 SetLanguage_NL = 8, ///< Dutch
49 SetLanguage_PT = 9, ///< Portuguese
50 SetLanguage_RU = 10, ///< Russian
51 SetLanguage_ZHTW = 11, ///< Traditional Chinese ("Taiwanese")
52 SetLanguage_ENGB = 12, ///< GB English ("BritishEnglish")
53 SetLanguage_FRCA = 13, ///< CA French ("CanadianFrench")
54 SetLanguage_ES419 = 14, ///< "LatinAmericanSpanish"
55 SetLanguage_ZHHANS = 15, ///< [4.0.0+] ChineseSimplified
56 SetLanguage_ZHHANT = 16, ///< [4.0.0+] ChineseTraditional
57 SetLanguage_PTBR = 17, ///< [10.1.0+] "BrazilianPortuguese"
58 SetLanguage_Total, ///< Total languages supported by this enum.
60
61/// Region codes.
62typedef enum {
63 SetRegion_JPN = 0, ///< Japan
64 SetRegion_USA = 1, ///< The Americas
65 SetRegion_EUR = 2, ///< Europe
66 SetRegion_AUS = 3, ///< Australia/New Zealand
67 SetRegion_HTK = 4, ///< Hong Kong/Taiwan/Korea
68 SetRegion_CHN = 5, ///< China
69} SetRegion;
70
71/// ConnectionFlag
72typedef enum {
73 SetSysConnectionFlag_ConnectAutomaticallyFlag = BIT(0),
74 SetSysConnectionFlag_Unknown = BIT(1),
76
77/// AccessPointSecurityType
78typedef enum {
79 SetSysAccessPointSecurityType_None = 0,
80 SetSysAccessPointSecurityType_Shared = 1,
81 SetSysAccessPointSecurityType_Wpa = 2,
82 SetSysAccessPointSecurityType_Wpa2 = 3,
84
85/// AccessPointSecurityStandard
86typedef enum {
87 SetSysAccessPointSecurityStandard_None = 0,
88 SetSysAccessPointSecurityStandard_Wep = 1,
89 SetSysAccessPointSecurityStandard_Wpa = 2,
91
92/// AutoSettings
93typedef enum {
94 SetSysAutoSettings_AutoIp = BIT(0),
95 SetSysAutoSettings_AutoDns = BIT(1),
97
98/// ProxyFlags
99typedef enum {
100 SetSysProxyFlags_UseProxyFlag = BIT(0),
101 SetSysProxyFlags_ProxyAutoAuthenticateFlag = BIT(1),
103
104/// UserSelectorFlag
105typedef enum {
106 SetSysUserSelectorFlag_SkipsIfSingleUser = BIT(0),
108
109/// EulaVersionClockType
110typedef enum {
111 SetSysEulaVersionClockType_NetworkSystemClock = 0,
112 SetSysEulaVersionClockType_SteadyClock = 1,
114
115/// NotificationVolume
116typedef enum {
117 SetSysNotificationVolume_Mute = 0,
118 SetSysNotificationVolume_Low = 1,
119 SetSysNotificationVolume_High = 2,
121
122/// FriendPresenceOverlayPermission
123typedef enum {
124 SetSysFriendPresenceOverlayPermission_NotConfirmed = 0,
125 SetSysFriendPresenceOverlayPermission_NoDisplay = 1,
126 SetSysFriendPresenceOverlayPermission_FavoriteFriends = 2,
127 SetSysFriendPresenceOverlayPermission_Friends = 3,
129
130/// AudioDevice
131typedef enum {
132 SetSysAudioDevice_Console = 0,
133 SetSysAudioDevice_Headphone = 1,
134 SetSysAudioDevice_Tv = 2,
136
137/// PrimaryAlbumStorage
138typedef enum {
139 SetSysPrimaryAlbumStorage_Nand = 0,
140 SetSysPrimaryAlbumStorage_SdCard = 1,
142
143/// HandheldSleepPlan
144typedef enum {
145 SetSysHandheldSleepPlan_1Min = 0,
146 SetSysHandheldSleepPlan_3Min = 1,
147 SetSysHandheldSleepPlan_5Min = 2,
148 SetSysHandheldSleepPlan_10Min = 3,
149 SetSysHandheldSleepPlan_30Min = 4,
150 SetSysHandheldSleepPlan_Never = 5,
152
153/// ConsoleSleepPlan
154typedef enum {
155 SetSysConsoleSleepPlan_1Hour = 0,
156 SetSysConsoleSleepPlan_2Hour = 1,
157 SetSysConsoleSleepPlan_3Hour = 2,
158 SetSysConsoleSleepPlan_6Hour = 3,
159 SetSysConsoleSleepPlan_12Hour = 4,
160 SetSysConsoleSleepPlan_Never = 5,
162
163/// AudioOutputModeTarget
164typedef enum {
165 SetSysAudioOutputModeTarget_Unknown0 = 0,
166 SetSysAudioOutputModeTarget_Unknown1 = 1,
167 SetSysAudioOutputModeTarget_Unknown2 = 2,
168 SetSysAudioOutputModeTarget_Unknown3 = 3,
170
171/// AudioOutputMode
172typedef enum {
173 SetSysAudioOutputMode_Unknown1 = 1 ///< Default value.
175
176/// ServiceDiscoveryControlSettings
177typedef enum {
178 SetSysServiceDiscoveryControlSettings_IsChangeEnvironmentIdentifierDisabled = BIT(0),
180
181/// ErrorReportSharePermission
182typedef enum {
183 SetSysErrorReportSharePermission_NotConfirmed = 0,
184 SetSysErrorReportSharePermission_Granted = 1,
185 SetSysErrorReportSharePermission_Denied = 2,
187
188/// KeyboardLayout
189typedef enum {
190 SetKeyboardLayout_Japanese = 0,
191 SetKeyboardLayout_EnglishUs = 1,
192 SetKeyboardLayout_EnglishUsInternational = 2,
193 SetKeyboardLayout_EnglishUk = 3,
194 SetKeyboardLayout_French = 4,
195 SetKeyboardLayout_FrenchCa = 5,
196 SetKeyboardLayout_Spanish = 6,
197 SetKeyboardLayout_SpanishLatin = 7,
198 SetKeyboardLayout_German = 8,
199 SetKeyboardLayout_Italian = 9,
200 SetKeyboardLayout_Portuguese = 10,
201 SetKeyboardLayout_Russian = 11,
202 SetKeyboardLayout_Korean = 12,
203 SetKeyboardLayout_ChineseSimplified = 13,
204 SetKeyboardLayout_ChineseTraditional = 14,
206
207/// ChineseTraditionalInputMethod
208typedef enum {
209 SetChineseTraditionalInputMethod_Unknown1 = 1,
210 SetChineseTraditionalInputMethod_Unknown2 = 2,
212
213/// PtmCycleCountReliability
214typedef enum {
215 PtmCycleCountReliability_Default = 0,
216 PtmCycleCountReliability_Unk = 1,
218
219/// PlatformRegion. Other values not listed here should be handled as "Unknown".
220typedef enum {
221 SetSysPlatformRegion_Global = 1,
222 SetSysPlatformRegion_China = 2,
224
225/// TouchScreenMode, for "Touch-Screen Sensitivity".
226typedef enum {
228 SetSysTouchScreenMode_Standard = 1, ///< Standard, the default.
230
231/// BlockType
232typedef enum {
233 SetSysBlockType_Audio = 1,
234 SetSysBlockType_Video = 2,
235 SetSysBlockType_VendorSpecific = 3,
236 SetSysBlockType_Speaker = 4,
238
239/// ControllerType
240typedef enum {
241 SetSysControllerType_JoyConR = 1,
242 SetSysControllerType_JoyConL = 2,
243 SetSysControllerType_ProCon = 3,
245
246/// BatteryLot
247typedef struct {
248 char lot[0x18]; ///< BatteryLot string.
250
251/// NetworkSettings
252typedef struct {
253 char name[0x40];
254 Uuid uuid;
255 u32 connection_flags; ///< Bitmask with \ref SetSysConnectionFlag.
256 u32 wired_flag;
257 u32 connect_to_hidden_network; ///< Bitmask with UseStealthNetworkFlag.
258 char access_point_ssid[0x20];
259 u32 access_point_ssid_len;
260 u32 access_point_security_type; ///< Bitmask with \ref SetSysAccessPointSecurityType.
261 u32 access_point_security_standard; ///< Bitmask with \ref SetSysAccessPointSecurityStandard.
262 char access_point_passphrase[0x40];
263 u32 access_point_passphrase_len;
264 u32 auto_settings; ///< Bitmask with \ref SetSysAutoSettings.
265 u32 manual_ip_address;
266 u32 manual_subnet_mask;
267 u32 manual_gateway;
268 u32 primary_dns;
269 u32 secondary_dns;
270 u32 proxy_flags; ///< Bitmask with \ref SetSysProxyFlags.
271 char proxy_server[0x80];
272 u16 proxy_port;
273 u16 padding1;
274 char proxy_autoauth_user[0x20];
275 char proxy_autoauth_pass[0x20];
276 u16 mtu;
277 u16 padding2;
279
280/// LcdBacklightBrightnessMapping
281typedef struct {
282 float brightness_applied_to_backlight;
283 float ambient_light_sensor_value;
284 float unk_x8;
286
287/// BacklightSettings
288typedef struct {
289 u32 auto_brightness_flags;
290 float screen_brightness;
291 SetSysLcdBacklightBrightnessMapping brightness_mapping;
292 float unk_x14;
293 float unk_x18;
294 float unk_x1C;
295 float unk_x20;
296 float unk_x24;
298
299/// BacklightSettingsEx
300typedef struct {
301 u32 auto_brightness_flags;
302 float screen_brightness;
303 float current_brightness_for_vr_mode;
304 SetSysLcdBacklightBrightnessMapping brightness_mapping;
305 float unk_x18;
306 float unk_x1C;
307 float unk_x20;
308 float unk_x24;
309 float unk_x28;
311
312/// BluetoothDevicesSettings
313typedef struct {
314 BtdrvAddress addr; ///< \ref BtdrvAddress
315 BtmBdName name; ///< [1.0.0-12.1.0] BdName. On 13.0.0+ name2 is used instead.
317 u8 link_key[0x10]; ///< LinkKey
318 u8 link_key_present; ///< LinkKeyPresent
319 u16 version; ///< Version
320 u32 trusted_services; ///< TrustedServices
321 u16 vid; ///< Vid
322 u16 pid; ///< Pid
323 u8 sub_class; ///< SubClass
324 u8 attribute_mask; ///< AttributeMask
325 u16 descriptor_length; ///< DescriptorLength
326 u8 descriptor[0x80]; ///< Descriptor
327 u8 key_type; ///< KeyType
328 u8 device_type; ///< DeviceType
329 u16 brr_size; ///< BrrSize
330 u8 brr[0x9]; ///< Brr
331 u8 audio_source_volume; ///< [13.0.0+] AudioSourceVolume
332 char name2[0xF9]; ///< [13.0.0+] Name
333 u8 audio_sink_volume; ///< [15.0.0+] AudioSinkVolume
334 u32 audio_flags; ///< [14.0.0+] AudioFlags
335 u8 reserved[0x2C]; ///< Reserved
337
338/// Structure returned by \ref setsysGetFirmwareVersion.
339typedef struct {
340 u8 major;
341 u8 minor;
342 u8 micro;
343 u8 padding1;
344 u8 revision_major;
345 u8 revision_minor;
346 u8 padding2;
347 u8 padding3;
348 char platform[0x20];
349 char version_hash[0x40];
350 char display_version[0x18];
351 char display_title[0x80];
353
354/// Structure returned by \ref setsysGetFirmwareVersionDigest.
355typedef struct {
356 char digest[0x40];
358
359/// Structure returned by \ref setsysGetSerialNumber.
360typedef struct {
361 char number[0x18];
363
364/// DeviceNickName
365typedef struct {
366 char nickname[0x80];
368
369/// UserSelectorSettings
370typedef struct {
371 u32 flags; ///< Bitmask with \ref SetSysUserSelectorFlag.
373
374/// AccountSettings
375typedef struct {
378
379typedef struct {
380 u32 unk_x0; ///< 0 for Console and Tv, 2 for Headphones.
381 u8 volume; ///< From 0-15.
383
384/// EulaVersion
385typedef struct {
386 u32 version;
387 s32 region_code;
388 s32 clock_type; ///< \ref SetSysEulaVersionClockType
389 u32 pad;
390 u64 network_clock_time; ///< POSIX timestamp.
391 TimeSteadyClockTimePoint steady_clock_time; ///< \ref TimeSteadyClockTimePoint
393
394/// NotificationTime
395typedef struct {
396 s32 hour;
397 s32 minute;
399
400/// NotificationSettings
401typedef struct {
402 u32 flags; ///< Bitmask with NotificationFlag.
403 s32 volume; ///< \ref SetSysNotificationVolume
404 SetSysNotificationTime start_time; ///< \ref SetSysNotificationTime
405 SetSysNotificationTime end_time; ///< \ref SetSysNotificationTime
407
408/// AccountNotificationSettings
409typedef struct {
410 AccountUid uid; ///< \ref AccountUid
411 u32 flags; ///< Bitmask with AccountNotificationFlag.
412 s8 friend_presence_overlay_permission; ///< \ref SetSysFriendPresenceOverlayPermission
413 u8 pad[3]; ///< Padding.
415
416/// TvSettings
417typedef struct {
418 u32 flags; ///< Bitmask with TvFlag.
419 s32 tv_resolution; ///< \ref SetSysTvResolution
420 s32 hdmi_content_type; ///< \ref SetSysHdmiContentType
421 s32 rgb_range; ///< \ref SetSysRgbRange
422 s32 cmu_mode; ///< \ref SetSysCmuMode
423 u32 underscan; ///< Underscan.
424 float gamma; ///< Gamma.
425 float contrast; ///< Contrast.
427
428typedef struct {
429 u16 pixel_clock; ///< In 10 kHz units.
430 u8 horizontal_active_pixels_lsb;
431 u8 horizontal_blanking_pixels_lsb;
432 u8 horizontal_blanking_pixels_msb : 4;
433 u8 horizontal_active_pixels_msb : 4;
434 u8 vertical_active_lines_lsb;
435 u8 vertical_blanking_lines_lsb;
436 u8 vertical_blanking_lines_msb : 4;
437 u8 vertical_active_lines_msb : 4;
438 u8 horizontal_sync_offset_pixels_lsb;
439 u8 horizontal_sync_pulse_width_pixels_lsb;
440 u8 vertical_sync_pulse_width_lines_lsb : 4;
441 u8 vertical_sync_offset_lines_lsb : 4;
442 u8 vertical_sync_pulse_width_lines_msb : 2;
443 u8 vertical_sync_offset_lines_msb : 2;
444 u8 horizontal_sync_pulse_width_pixels_msb : 2;
445 u8 horizontal_sync_offset_pixels_msb : 2;
446 u8 horizontal_image_size_mm_lsb;
447 u8 vertical_image_size_mm_lsb;
448 u8 vertical_image_size_mm_msb : 4;
449 u8 horizontal_image_size_mm_msb : 4;
450 u8 horizontal_border_pixels;
451 u8 vertical_border_lines;
452 u8 features_bitmap_0 : 1;
453 u8 features_bitmap_1 : 1;
454 u8 features_bitmap_2 : 1;
455 u8 features_bitmap_34 : 2;
456 u8 features_bitmap_56 : 2;
457 u8 interlaced : 1;
459
460typedef struct {
461 struct {
462 u8 size : 5;
463 SetSysBlockType block_type : 3;
464 struct {
465 u8 svd_index : 7;
466 u8 native_flag : 1;
467 } svd[0xC];
468 } NX_PACKED video;
469 struct {
470 u8 size : 5;
471 SetSysBlockType block_type : 3;
472 u8 channel_count : 3;
473 u8 format_code : 4;
474 u8 padding1 : 1;
475 u8 sampling_rates_bitmap;
476 u8 bitrate;
477 } NX_PACKED audio;
478 struct {
479 u8 size : 5;
480 SetSysBlockType block_type : 3;
481 u8 ieee_registration_id[3];
482 u16 source_physical_address;
483 u8 mode_bitmap;
484 u8 max_tmds_frequency;
485 u8 latency_bitmap;
486 } NX_PACKED vendor_specific;
487 u8 padding[2];
489
490typedef struct {
491 u8 extension_tag; ///< 2 = CEA EDID timing extension, 0x70 = DisplayID Extension Block, 0xF0 = EDID Extension Block Map
492 union {
493 struct {
494 u8 revision;
495 u8 dtd_start;
496 u8 native_dtd_count : 4;
497 u8 native_dtd_feature_bitmap : 4;
498 SetSysDataBlock data_block;
499 SetSysModeLine extended_timing_descriptor[5];
500 u8 padding[5];
501 } NX_PACKED cea; ///< CEA EDID timing extension
502 struct {
503 u8 data[0x7E];
504 } display_id; ///< [13.0.0+] DisplayID Extension Block
505 struct {
506 u8 second_block_extension_tag;
507 u8 third_block_extension_tag;
508 u8 padding[0x7C];
509 } block_map; ///< [13.0.0+] EDID Extension Block Map
510 } extension_block;
511 u8 extended_checksum; ///< Sum of 128 extended bytes should equal 0 mod 256.
513
514/// Edid
515typedef struct {
516 u8 pattern[8]; ///< Fixed pattern 00 FF FF FF FF FF FF 00.
517 u16 pnp_id; ///< Big-endian set of 3 5-bit values representing letters, 1 = A .. 26 = Z.
518 u16 product_code;
519 u32 serial_number;
520 u8 manufacture_week;
521 u8 manufacture_year; ///< Real year is 1990 + val.
522 u8 edid_version;
523 u8 edid_revision;
524 u8 video_input_parameters_bitmap;
525 u8 display_width;
526 u8 display_height;
527 u8 display_gamma;
528 u8 supported_features_bitmap;
529 struct {
530 u8 green_y_lsb : 2;
531 u8 green_x_lsb : 2;
532 u8 red_y_lsb : 2;
533 u8 red_x_lsb : 2;
534 u8 blue_lsb : 4;
535 u8 white_lsb : 4;
536 u8 red_x_msb;
537 u8 red_y_msb;
538 u8 green_x_msb;
539 u8 green_y_msb;
540 u8 blue_x_msb;
541 u8 blue_y_msb;
542 u8 white_x_msb;
543 u8 white_y_msb;
544 } chromaticity;
545 u8 timing_bitmap[3];
546 struct {
547 u8 x_resolution; ///< Real value is (val + 31) * 8 pixels.
548 u8 vertical_frequency : 6; ///< Real value is val + 60 Hz.
549 u8 aspect_ratio : 2; ///< 0 = 16:10, 1 = 4:3, 2 = 5:4, 3 = 16:9.
550 } timing_info[8];
551 SetSysModeLine timing_descriptor[2];
552 struct {
553 u16 display_descriptor_zero;
554 u8 padding1;
555 u8 descriptor_type;
556 u8 padding2;
557 char name[0xD];
558 } display_descriptor_name;
559 struct {
560 u16 display_descriptor_zero;
561 u8 padding1;
562 u8 descriptor_type;
563 u8 range_limit_offsets;
564 u8 vertical_field_rate_min;
565 u8 vertical_field_rate_max;
566 u8 horizontal_line_rate_min;
567 u8 horizontal_line_rate_max;
568 u8 pixel_clock_rate_max; ///< Rounded up to multiples of 10 MHz.
569 u8 extended_timing_info;
570 u8 padding[7];
571 } display_descriptor_range_limits;
572 u8 extension_count;
573 u8 checksum; ///< Sum of all 128 bytes should equal 0 mod 256.
574 ///< Extended data.
578} SetSysEdid;
579
580/// DataDeletionSettings
581typedef struct {
582 u32 flags; ///< Bitmask with DataDeletionFlag.
583 s32 use_count; ///< Use count.
585
586/// SleepSettings
587typedef struct {
588 u32 flags; ///< Bitmask with SleepFlag.
589 s32 handheld_sleep_plan; ///< \ref SetSysHandheldSleepPlan
590 s32 console_sleep_plan; ///< \ref SetSysConsoleSleepPlan
592
593/// InitialLaunchSettings
594typedef struct {
595 u32 flags; ///< Bitmask with InitialLaunchFlag.
596 u32 pad; ///< Padding.
597 TimeSteadyClockTimePoint timestamp; ///< \ref TimeSteadyClockTimePoint timestamp.
599
600/// PtmFuelGaugeParameter
601typedef struct {
602 u16 rcomp0;
603 u16 tempc0;
604 u16 fullcap;
605 u16 fullcapnom;
606 u16 lavgempty;
607 u16 qresidual00;
608 u16 qresidual10;
609 u16 qresidual20;
610 u16 qresidual30;
611 u16 cycles; ///< Normally keeps the cycles reg. Unused and contains stack garbage.
612 u32 cycles_actual; ///< Keeps track of cycles. The fuel gauge cycles reg is reset if > 2.00 cycles and added here.
614
615/// Actually nn::util::Color4u8Type.
616typedef struct {
617 u8 field[4];
619
620/// NxControllerLegacySettings
621typedef struct {
622 BtdrvAddress address;
623 u8 type; ///< \ref SetSysControllerType.
624 char serial[0x10];
625 SetSysColor4u8Type body_color;
626 SetSysColor4u8Type button_color;
627 u8 unk_x1F[8];
628 u8 unk_x27;
629 u8 interface_type; ///< Bitmask with \ref XcdInterfaceType.
631
632/// NxControllerSettings
633typedef struct {
634 BtdrvAddress address;
635 u8 type; ///< \ref SetSysControllerType.
636 char serial[0x10];
637 SetSysColor4u8Type body_color;
638 SetSysColor4u8Type button_color;
639 u8 unk_x1F[8];
640 u8 unk_x27;
641 u8 interface_type; ///< Bitmask with \ref XcdInterfaceType.
642 u8 unk_x29[0x403]; ///< Unknown
644
645/// ConsoleSixAxisSensorAccelerationBias
646typedef struct {
647 float unk_x0;
648 float unk_x4;
649 float unk_x8;
651
652/// ConsoleSixAxisSensorAngularVelocityBias
653typedef struct {
654 float unk_x0;
655 float unk_x4;
656 float unk_x8;
658
659/// ConsoleSixAxisSensorAccelerationGain
660typedef struct {
661 float unk_x0;
662 float unk_x4;
663 float unk_x8;
664 float unk_xC;
665 float unk_x10;
666 float unk_x14;
667 float unk_x18;
668 float unk_x1C;
669 float unk_x20;
671
672/// ConsoleSixAxisSensorAngularVelocityGain
673typedef struct {
674 float unk_x0;
675 float unk_x4;
676 float unk_x8;
677 float unk_xC;
678 float unk_x10;
679 float unk_x14;
680 float unk_x18;
681 float unk_x1C;
682 float unk_x20;
684
685/// AllowedSslHosts
686typedef struct {
687 u8 hosts[0x100];
689
690/// HostFsMountPoint
691typedef struct {
692 char mount[0x100];
694
695/// BlePairingSettings
696typedef struct {
697 BtdrvAddress address;
698 u16 unk_x6;
699 u16 unk_x8;
700 u8 unk_xA;
701 u8 unk_xB;
702 u8 unk_xC;
703 u8 unk_xD;
704 u8 unk_xE;
705 u8 unk_xF;
706 u8 padding[0x70];
708
709/// ConsoleSixAxisSensorAngularVelocityTimeBias
710typedef struct {
711 float unk_x0;
712 float unk_x4;
713 float unk_x8;
715
716/// ConsoleSixAxisSensorAngularAcceleration
717typedef struct {
718 float unk_x0;
719 float unk_x4;
720 float unk_x8;
721 float unk_xC;
722 float unk_x10;
723 float unk_x14;
724 float unk_x18;
725 float unk_x1C;
726 float unk_x20;
728
729/// RebootlessSystemUpdateVersion. This is the content of the RebootlessSystemUpdateVersion SystemData, in the "/version" file.
730typedef struct {
731 u32 version;
732 u8 reserved[0x1c];
733 char display_version[0x20];
735
736/// AccountOnlineStorageSettings
737typedef struct {
738 AccountUid uid; ///< \ref AccountUid
739 u32 unk_x10;
740 u32 unk_x14;
742
743/// AnalogStickUserCalibration
744typedef struct {
745 u16 unk_x0;
746 u16 unk_x2;
747 u16 unk_x4;
748 u16 unk_x6;
749 u16 unk_x8;
750 u16 unk_xA;
751 u16 unk_xC;
752 u16 unk_xE;
754
755/// ThemeId
756typedef struct {
757 u64 theme_id[0x10];
759
760/// ThemeSettings
761typedef struct {
762 u64 theme_settings;
764
765/// Output from \ref setsysGetHomeMenuScheme. This contains RGBA8 colors which correspond with the physical shell of the system.
766typedef struct {
767 u32 main_color; ///< Main Color.
768 u32 back_color; ///< Back Color.
769 u32 sub_color; ///< Sub Color.
770 u32 bezel_color; ///< Bezel Color.
771 u32 extra_color; ///< Extra Color.
773
774/// ButtonConfigSettings
775typedef struct {
776 u8 settings[0x5A8];
778
779/// ButtonConfigRegisteredSettings
780typedef struct {
781 u8 settings[0x5C8];
783
784typedef struct {
785 u8 offset[0x6];
787
788typedef struct {
789 u8 scale[0x6];
791
792typedef struct {
793 u32 size;
794 u8 cert[0x70];
796
797typedef struct {
798 u32 size;
799 u8 cert[0x20];
801
802typedef struct {
803 u32 size;
804 u8 key[0x40];
805 u32 generation;
807
808typedef struct {
809 u32 size;
810 u8 cert[0x90];
812
813typedef struct {
814 u32 size;
815 u8 cert[0x14];
817
818typedef struct {
819 u32 size;
820 u8 key[0x50];
821 u32 generation;
823
824typedef struct {
825 u8 calibration[0x9];
827
828typedef struct {
829 u8 parameter[0x12];
831
832typedef struct {
833 u8 bd_addr[0x6];
835
836typedef struct {
837 u8 cfg[0x1E];
839
840typedef struct {
841 u8 offset[0x6];
843
844typedef struct {
845 char code[0x3]; ///< Country code.
847
848typedef struct {
849 u8 cert[0x180];
851
852typedef struct {
853 u32 size;
854 u8 key[0x50];
855 u32 generation;
857
858typedef struct {
859 u8 cert[0x400];
861
862typedef struct {
863 u32 size; ///< Size of the entire key.
864 u8 key[0x130];
865 u32 generation;
867
868typedef struct {
869 u8 offset[0x6];
871
872typedef struct {
873 u8 scale[0x6];
875
876typedef struct {
877 u8 addr[0x6]; ///< Mac address.
879
880typedef struct {
881 u8 cert[0x240];
883
884typedef struct {
885 u32 size; ///< Size of the entire key.
886 u8 key[0x240];
887 u32 generation;
889
891
892typedef struct {
893 u8 parameter[0x5A];
895
896typedef struct {
897 u32 size; ///< Size of the certificate data.
898 u8 cert[0x800];
900
901typedef struct {
902 u32 size; ///< Size of the entire key.
903 u8 key[0x130];
904 u32 generation;
906
907typedef struct {
908 u32 code; ///< Region code.
910
911/// Initialize set.
913
914/// Exit set.
915void setExit(void);
916
917/// Gets the Service object for the actual set service session.
919
920/// Converts LanguageCode to \ref SetLanguage.
921Result setMakeLanguage(u64 LanguageCode, SetLanguage *Language);
922
923/// Converts \ref SetLanguage to LanguageCode.
924Result setMakeLanguageCode(SetLanguage Language, u64 *LanguageCode);
925
926/// Gets the current system LanguageCode.
927/// Normally this should be used instead of \ref setGetLanguageCode.
928/// LanguageCode is a string, see here: https://switchbrew.org/wiki/Settings_services#LanguageCode
930
931/// Gets the current LanguageCode, \ref setGetSystemLanguage should be used instead normally.
933
934/// Gets available LanguageCodes.
935/// On system-version <4.0.0, max_entries is set to the output from \ref setGetAvailableLanguageCodeCount if max_entries is larger than that.
936Result setGetAvailableLanguageCodes(s32 *total_entries, u64 *LanguageCodes, size_t max_entries);
937
938/// Gets total available LanguageCodes.
939/// Output total is overridden with value 0 if the total is <0.
941
942/// Gets the RegionCode.
944
945/**
946 * @brief GetQuestFlag
947 * @note Only available on [5.0.0+].
948 * @param[out] out Output flag.
949 */
951
952/**
953 * @brief Gets the system's nickname.
954 * @note Only available on [10.1.0+].
955 * @param[out] nickname \ref SetSysDeviceNickName
956 */
958
959/// Initialize setsys.
961
962/// Exit setsys.
963void setsysExit(void);
964
965/// Gets the Service object for the actual setsys service session.
967
968/**
969 * @brief SetLanguageCode
970 * @param[in] LanguageCode LanguageCode.
971 */
973
974/**
975 * @brief SetNetworkSettings
976 * @param[in] settings Input array of \ref SetSysNetworkSettings.
977 * @param[in] count Size of the settings array in entries.
978 */
980
981/**
982 * @brief GetNetworkSettings
983 * @param[out] total_out Total output entries.
984 * @param[out] versions Output array of \ref SetSysNetworkSettings.
985 * @param[in] count Size of the settings array in entries.
986 */
988
989/**
990 * @brief Gets the system firmware version.
991 * @param[out] out Firmware version to populate.
992 */
994
995/**
996 * @brief GetFirmwareVersionDigest
997 * @param[out] out \ref SetSysFirmwareVersionDigest
998 */
1000
1001/**
1002 * @brief GetLockScreenFlag
1003 * @param[out] out Output flag.
1004 */
1006
1007/**
1008 * @brief SetLockScreenFlag
1009 * @param[in] flag Input flag.
1010 */
1012
1013/**
1014 * @brief GetBacklightSettings
1015 * @param[out] out \ref SetSysBacklightSettings
1016 */
1018
1019/**
1020 * @brief SetBacklightSettings
1021 * @param[in] settings \ref SetSysBacklightSettings
1022 */
1024
1025/**
1026 * @brief SetBluetoothDevicesSettings
1027 * @param[in] settings Input array of \ref SetSysBluetoothDevicesSettings.
1028 * @param[in] count Size of the settings array in entries.
1029 */
1031
1032/**
1033 * @brief GetBluetoothDevicesSettings
1034 * @param[out] total_out Total output entries.
1035 * @param[out] settings Output array of \ref SetSysBluetoothDevicesSettings.
1036 * @param[in] count Size of the settings array in entries.
1037 */
1039
1040/**
1041 * @brief GetExternalSteadyClockSourceId
1042 * @param[out] out \ref Uuid
1043 */
1045
1046/**
1047 * @brief SetExternalSteadyClockSourceId
1048 * @param[in] uuid \ref Uuid
1049 */
1051
1052/**
1053 * @brief GetUserSystemClockContext
1054 * @param[out] out \ref TimeSystemClockContext
1055 */
1057
1058/**
1059 * @brief SetUserSystemClockContext
1060 * @param[in] context \ref TimeSystemClockContext
1061 */
1063
1064/**
1065 * @brief GetAccountSettings
1066 * @param[out] out \ref SetSysAccountSettings
1067 */
1069
1070/**
1071 * @brief SetAccountSettings
1072 * @param[in] settings \ref SetSysAccountSettings
1073 */
1075
1076/**
1077 * @brief GetAudioVolume
1078 * @param[in] device \ref SetSysAudioDevice
1079 * @param[out] out \ref SetSysAudioVolume
1080 */
1082
1083/**
1084 * @brief SetAudioVolume
1085 * @param[in] device \ref SetSysAudioDevice
1086 * @param[in] volume \ref SetSysAudioVolume
1087 */
1089
1090/**
1091 * @brief GetEulaVersions
1092 * @param[out] total_out Total output entries.
1093 * @param[out] versions Output array of \ref SetSysEulaVersion.
1094 * @param[in] count Size of the versions array in entries.
1095 */
1097
1098/**
1099 * @brief SetEulaVersions
1100 * @param[in] versions Input array of \ref SetSysEulaVersion.
1101 * @param[in] count Size of the versions array in entries.
1102 */
1104
1105/// Gets the current system theme.
1107
1108/// Sets the current system theme.
1110
1111/**
1112 * @brief GetConsoleInformationUploadFlag
1113 * @param[out] out Output flag.
1114 */
1116
1117/**
1118 * @brief SetConsoleInformationUploadFlag
1119 * @param[in] flag Input flag.
1120 */
1122
1123/**
1124 * @brief GetAutomaticApplicationDownloadFlag
1125 * @param[out] out Output flag.
1126 */
1128
1129/**
1130 * @brief SetAutomaticApplicationDownloadFlag
1131 * @param[in] flag Input flag.
1132 */
1134
1135/**
1136 * @brief GetNotificationSettings
1137 * @param[out] out \ref SetSysNotificationSettings
1138 */
1140
1141/**
1142 * @brief SetNotificationSettings
1143 * @param[in] settings \ref SetSysNotificationSettings
1144 */
1146
1147/**
1148 * @brief GetAccountNotificationSettings
1149 * @param[out] total_out Total output entries.
1150 * @param[out] settings Output array of \ref SetSysAccountNotificationSettings.
1151 * @param[in] count Size of the settings array in entries.
1152 */
1154
1155/**
1156 * @brief SetAccountNotificationSettings
1157 * @param[in] settings Input array of \ref SetSysAccountNotificationSettings.
1158 * @param[in] count Size of the settings array in entries.
1159 */
1161
1162/**
1163 * @brief GetVibrationMasterVolume
1164 * @param[out] out Output volume.
1165 */
1167
1168/**
1169 * @brief SetVibrationMasterVolume
1170 * @param[in] volume Input volume.
1171 */
1173
1174/**
1175 * @brief Gets the size of a settings item value.
1176 * @param name Name string.
1177 * @param item_key Item key string.
1178 * @param size_out Pointer to output the size to.
1179 */
1180Result setsysGetSettingsItemValueSize(const char *name, const char *item_key, u64 *size_out);
1181
1182/**
1183 * @brief Gets the value of a settings item.
1184 * @param name Name string.
1185 * @param item_key Item key string.
1186 * @param value_out Pointer to output the value to.
1187 * @param value_out_size Size of the value_out buffer.
1188 * @param size_out Total size which was copied to value_out.
1189 */
1190Result setsysGetSettingsItemValue(const char *name, const char *item_key, void *value_out, size_t value_out_size, u64 *size_out);
1191
1192/**
1193 * @brief GetTvSettings
1194 * @param[out] out \ref SetSysTvSettings
1195 */
1197
1198/**
1199 * @brief SetTvSettings
1200 * @param[in] settings \ref SetSysTvSettings
1201 */
1203
1204/**
1205 * @brief GetEdid
1206 * @param[out] out \ref SetSysEdid
1207 */
1209
1210/**
1211 * @brief SetEdid
1212 * @param[in] edid \ref SetSysEdid
1213 */
1215
1216/**
1217 * @brief GetAudioOutputMode
1218 * @param[in] target \ref SetSysAudioOutputModeTarget
1219 * @param[out] out \ref SetSysAudioOutputMode
1220 */
1222
1223/**
1224 * @brief SetAudioOutputMode
1225 * @param[in] target \ref SetSysAudioOutputModeTarget
1226 * @param[in] mode \ref SetSysAudioOutputMode
1227 */
1229
1230/**
1231 * @brief GetSpeakerAutoMuteFlag
1232 * @param[out] out Output flag.
1233 */
1235
1236/**
1237 * @brief SetSpeakerAutoMuteFlag
1238 * @param[in] flag Input flag.
1239 */
1241
1242/**
1243 * @brief GetQuestFlag
1244 * @param[out] out Output flag.
1245 */
1247
1248/**
1249 * @brief SetQuestFlag
1250 * @param[in] flag Input flag.
1251 */
1253
1254/**
1255 * @brief GetDataDeletionSettings
1256 * @param[out] out \ref SetSysDataDeletionSettings
1257 */
1259
1260/**
1261 * @brief SetDataDeletionSettings
1262 * @param[in] settings \ref SetSysDataDeletionSettings
1263 */
1265
1266/**
1267 * @brief GetInitialSystemAppletProgramId
1268 * @param[out] out output ProgramId.
1269 */
1271
1272/**
1273 * @brief GetOverlayDispProgramId
1274 * @param[out] out output ProgramId.
1275 */
1277
1278/**
1279 * @brief GetDeviceTimeZoneLocationName
1280 * @param[out] out \ref TimeLocationName
1281 */
1283
1284/**
1285 * @brief SetDeviceTimeZoneLocationName
1286 * @param[in] name \ref TimeLocationName
1287 */
1289
1290/**
1291 * @brief GetWirelessCertificationFileSize
1292 * @param[out] out_size Output size.
1293 */
1295
1296/**
1297 * @brief GetWirelessCertificationFile
1298 * @param[out] buffer Output buffer.
1299 * @param[in] size Output buffer size.
1300 * @param[out] out_size Output size.
1301 */
1302Result setsysGetWirelessCertificationFile(void* buffer, size_t size, u64 *out_size);
1303
1304/**
1305 * @brief SetRegionCode
1306 * @param[in] region \ref SetRegion
1307 */
1309
1310/**
1311 * @brief GetNetworkSystemClockContext
1312 * @param[out] out \ref TimeSystemClockContext
1313 */
1315
1316/**
1317 * @brief SetNetworkSystemClockContext
1318 * @param[in] context \ref TimeSystemClockContext
1319 */
1321
1322/**
1323 * @brief IsUserSystemClockAutomaticCorrectionEnabled
1324 * @param[out] out Output flag.
1325 */
1327
1328/**
1329 * @brief SetUserSystemClockAutomaticCorrectionEnabled
1330 * @param[in] flag Input flag.
1331 */
1333
1334/**
1335 * @brief GetDebugModeFlag
1336 * @param[out] out Output flag.
1337 */
1339
1340/**
1341 * @brief GetPrimaryAlbumStorage
1342 * @param[out] out \ref GetPrimaryAlbumStorage
1343 */
1345
1346/**
1347 * @brief SetPrimaryAlbumStorage
1348 * @param[in] storage \ref SetSysPrimaryAlbumStorage
1349 */
1351
1352/**
1353 * @brief GetUsb30EnableFlag
1354 * @param[out] out Output flag.
1355 */
1357
1358/**
1359 * @brief SetUsb30EnableFlag
1360 * @param[in] flag Input flag.
1361 */
1363
1364/**
1365 * @brief Gets the \ref SetBatteryLot.
1366 * @param[out] out \ref SetBatteryLot
1367 */
1369
1370/**
1371 * @brief Gets the system's serial number.
1372 * @param[out] out \ref SetSysSerialNumber
1373 */
1375
1376/**
1377 * @brief GetNfcEnableFlag
1378 * @param[out] out Output flag.
1379 */
1381
1382/**
1383 * @brief SetNfcEnableFlag
1384 * @param[in] flag Input flag.
1385 */
1387
1388/**
1389 * @brief GetSleepSettings
1390 * @param[out] out \ref SetSysSleepSettings
1391 */
1393
1394/**
1395 * @brief SetSleepSettings
1396 * @param[in] settings \ref SetSysSleepSettings
1397 */
1399
1400/**
1401 * @brief GetWirelessLanEnableFlag
1402 * @param[out] out Output flag.
1403 */
1405
1406/**
1407 * @brief SetWirelessLanEnableFlag
1408 * @param[in] flag Input flag.
1409 */
1411
1412/**
1413 * @brief GetInitialLaunchSettings
1414 * @param[out] out \ref SetSysInitialLaunchSettings
1415 */
1417
1418/**
1419 * @brief SetInitialLaunchSettings
1420 * @param[in] settings \ref SetSysInitialLaunchSettings
1421 */
1423
1424/**
1425 * @brief Gets the system's nickname.
1426 * @note Same as \ref setGetDeviceNickname, which official sw uses instead on [10.1.0+].
1427 * @param[out] nickname \ref SetSysDeviceNickName
1428 */
1430
1431/**
1432 * @brief Sets the system's nickname.
1433 * @param[in] nickname \ref SetSysDeviceNickName
1434 */
1436
1437/**
1438 * @brief GetProductModel
1439 * @param[out] model Output SetSysProductModel.
1440 */
1442
1443/**
1444 * @brief GetLdnChannel
1445 * @param[out] out Output LdnChannel.
1446 */
1448
1449/**
1450 * @brief SetLdnChannel
1451 * @param[in] channel Input LdnChannel.
1452 */
1454
1455/**
1456 * @brief Gets an event that settings will signal on flag change.
1457 * @param out_event Event to bind. Output event will have autoclear=false.
1458 */
1460
1461/**
1462 * @brief Gets the settings flags that have changed.
1463 * @param flags_0 Pointer to populate with first 64 flags.
1464 * @param flags_1 Pointer to populate with second 64 flags.
1465 */
1467
1468/**
1469 * @brief GetPtmBatteryLot
1470 * @param[out] out \ref SetBatteryLot
1471 */
1473
1474/**
1475 * @brief SetPtmBatteryLot
1476 * @param[in] lot \ref SetBatteryLot
1477 */
1479
1480/**
1481 * @brief GetPtmFuelGaugeParameter
1482 * @param[out] out \ref SetSysPtmFuelGaugeParameter
1483 */
1485
1486/**
1487 * @brief SetPtmFuelGaugeParameter
1488 * @param[in] parameter \ref SetSysPtmFuelGaugeParameter
1489 */
1491
1492/**
1493 * @brief GetBluetoothEnableFlag
1494 * @param[out] out Output flag.
1495 */
1497
1498/**
1499 * @brief SetBluetoothEnableFlag
1500 * @param[in] flag Input flag.
1501 */
1503
1504/**
1505 * @brief GetMiiAuthorId
1506 * @param[out] out Output MiiAuthorId.
1507 */
1509
1510/**
1511 * @brief SetShutdownRtcValue
1512 * @param[in] value Input value.
1513 */
1515
1516/**
1517 * @brief GetShutdownRtcValue
1518 * @param[out] out Output value.
1519 */
1521
1522/**
1523 * @brief Gets an event that settings will signal on flag change.
1524 * @param out_event Event to bind. Output event will have autoclear=false.
1525 */
1527
1528/**
1529 * @brief Gets the settings flags that have changed.
1530 * @param flags_0 Pointer to populate with first 64 flags.
1531 * @param flags_1 Pointer to populate with second 64 flags.
1532 */
1534
1535/**
1536 * @brief GetAutoUpdateEnableFlag
1537 * @note Only available on [2.0.0+].
1538 * @param[out] out Output flag.
1539 */
1541
1542/**
1543 * @brief SetAutoUpdateEnableFlag
1544 * @note Only available on [2.0.0+].
1545 * @param[in] flag Input flag.
1546 */
1548
1549/**
1550 * @brief GetNxControllerSettings
1551 * @note On [13.0.0+] \ref setsysGetNxControllerSettingsEx should be used instead.
1552 * @param[out] total_out Total output entries.
1553 * @param[out] settings Output array of \ref SetSysNxControllerLegacySettings.
1554 * @param[in] count Size of the settings array in entries.
1555 */
1557
1558/**
1559 * @brief SetNxControllerSettings
1560 * @note On [13.0.0+] \ref setsysSetNxControllerSettingsEx should be used instead.
1561 * @param[in] settings Input array of \ref SetSysNxControllerLegacySettings.
1562 * @param[in] count Size of the settings array in entries.
1563 */
1565
1566/**
1567 * @brief GetBatteryPercentageFlag
1568 * @note Only available on [2.0.0+].
1569 * @param[out] out Output flag.
1570 */
1572
1573/**
1574 * @brief SetBatteryPercentageFlag
1575 * @note Only available on [2.0.0+].
1576 * @param[in] flag Input flag.
1577 */
1579
1580/**
1581 * @brief GetExternalRtcResetFlag
1582 * @note Only available on [2.0.0+].
1583 * @param[out] out Output flag.
1584 */
1586
1587/**
1588 * @brief SetExternalRtcResetFlag
1589 * @note Only available on [2.0.0+].
1590 * @param[in] flag Input flag.
1591 */
1593
1594/**
1595 * @brief GetUsbFullKeyEnableFlag
1596 * @note Only available on [3.0.0+].
1597 * @param[out] out Output flag.
1598 */
1600
1601/**
1602 * @brief SetUsbFullKeyEnableFlag
1603 * @note Only available on [3.0.0+].
1604 * @param[in] flag Input flag.
1605 */
1607
1608/**
1609 * @brief SetExternalSteadyClockInternalOffset
1610 * @note Only available on [3.0.0+].
1611 * @param[in] offset Input offset.
1612 */
1614
1615/**
1616 * @brief GetExternalSteadyClockInternalOffset
1617 * @note Only available on [3.0.0+].
1618 * @param[out] out Output offset.
1619 */
1621
1622/**
1623 * @brief GetBacklightSettingsEx
1624 * @note Only available on [3.0.0+].
1625 * @param[out] out \ref SetSysBacklightSettingsEx
1626 */
1628
1629/**
1630 * @brief SetBacklightSettingsEx
1631 * @note Only available on [3.0.0+].
1632 * @param[in] settings \ref SetSysBacklightSettingsEx
1633 */
1635
1636/**
1637 * @brief GetHeadphoneVolumeWarningCount
1638 * @note Only available on [3.0.0+].
1639 * @param[out] out Output count.
1640 */
1642
1643/**
1644 * @brief SetHeadphoneVolumeWarningCount
1645 * @note Only available on [3.0.0+].
1646 * @param[in] count Input count.
1647 */
1649
1650/**
1651 * @brief GetBluetoothAfhEnableFlag
1652 * @note Only available on [3.0.0+].
1653 * @param[out] out Output flag.
1654 */
1656
1657/**
1658 * @brief SetBluetoothAfhEnableFlag
1659 * @note Only available on [3.0.0+].
1660 * @param[in] flag Input flag.
1661 */
1663
1664/**
1665 * @brief GetBluetoothBoostEnableFlag
1666 * @note Only available on [3.0.0+].
1667 * @param[out] out Output flag.
1668 */
1670
1671/**
1672 * @brief SetBluetoothBoostEnableFlag
1673 * @note Only available on [3.0.0+].
1674 * @param[in] flag Input flag.
1675 */
1677
1678/**
1679 * @brief GetInRepairProcessEnableFlag
1680 * @note Only available on [3.0.0+].
1681 * @param[out] out Output flag.
1682 */
1684
1685/**
1686 * @brief SetInRepairProcessEnableFlag
1687 * @note Only available on [3.0.0+].
1688 * @param[in] flag Input flag.
1689 */
1691
1692/**
1693 * @brief GetHeadphoneVolumeUpdateFlag
1694 * @note Only available on [3.0.0+].
1695 * @param[out] out Output flag.
1696 */
1698
1699/**
1700 * @brief SetHeadphoneVolumeUpdateFlag
1701 * @note Only available on [3.0.0+].
1702 * @param[in] flag Input flag.
1703 */
1705
1706/**
1707 * @brief NeedsToUpdateHeadphoneVolume
1708 * @note Only available on [3.0.0-14.1.2].
1709 * @param[out] a0 Output arg.
1710 * @param[out] a1 Output arg.
1711 * @param[out] a2 Output arg.
1712 * @param[in] flag Input flag.
1713 */
1715
1716/**
1717 * @brief GetPushNotificationActivityModeOnSleep
1718 * @note Only available on [3.0.0+].
1719 * @param[out] out Output mode.
1720 */
1722
1723/**
1724 * @brief SetPushNotificationActivityModeOnSleep
1725 * @note Only available on [3.0.0+].
1726 * @param[in] mode Input mode.
1727 */
1729
1730/**
1731 * @brief GetServiceDiscoveryControlSettings
1732 * @note Only available on [4.0.0+].
1733 * @param[out] out \ref ServiceDiscoveryControlSettings
1734 */
1736
1737/**
1738 * @brief SetServiceDiscoveryControlSettings
1739 * @note Only available on [4.0.0+].
1740 * @param[in] settings \ref ServiceDiscoveryControlSettings
1741 */
1743
1744/**
1745 * @brief GetErrorReportSharePermission
1746 * @note Only available on [4.0.0+].
1747 * @param[out] out \ref SetSysErrorReportSharePermission
1748 */
1750
1751/**
1752 * @brief SetErrorReportSharePermission
1753 * @note Only available on [4.0.0+].
1754 * @param[in] permission \ref SetSysErrorReportSharePermission
1755 */
1757
1758/**
1759 * @brief GetAppletLaunchFlags
1760 * @note Only available on [4.0.0+].
1761 * @param[out] out Output AppletLaunchFlags bitmask.
1762 */
1764
1765/**
1766 * @brief SetAppletLaunchFlags
1767 * @note Only available on [4.0.0+].
1768 * @param[in] flags Input AppletLaunchFlags bitmask.
1769 */
1771
1772/**
1773 * @brief GetConsoleSixAxisSensorAccelerationBias
1774 * @note Only available on [4.0.0+].
1775 * @param[out] out \ref SetSysConsoleSixAxisSensorAccelerationBias
1776 */
1778
1779/**
1780 * @brief SetConsoleSixAxisSensorAccelerationBias
1781 * @note Only available on [4.0.0+].
1782 * @param[in] bias \ref SetSysConsoleSixAxisSensorAccelerationBias
1783 */
1785
1786/**
1787 * @brief GetConsoleSixAxisSensorAngularVelocityBias
1788 * @note Only available on [4.0.0+].
1789 * @param[out] out \ref SetSysConsoleSixAxisSensorAngularVelocityBias
1790 */
1792
1793/**
1794 * @brief SetConsoleSixAxisSensorAngularVelocityBias
1795 * @note Only available on [4.0.0+].
1796 * @param[in] bias \ref SetSysConsoleSixAxisSensorAngularVelocityBias
1797 */
1799
1800/**
1801 * @brief GetConsoleSixAxisSensorAccelerationGain
1802 * @note Only available on [4.0.0+].
1803 * @param[out] out \ref SetSysConsoleSixAxisSensorAccelerationGain
1804 */
1806
1807/**
1808 * @brief SetConsoleSixAxisSensorAccelerationGain
1809 * @note Only available on [4.0.0+].
1810 * @param[in] gain \ref SetSysConsoleSixAxisSensorAccelerationGain
1811 */
1813
1814/**
1815 * @brief GetConsoleSixAxisSensorAngularVelocityGain
1816 * @note Only available on [4.0.0+].
1817 * @param[out] out \ref SetSysConsoleSixAxisSensorAngularVelocityGain
1818 */
1820
1821/**
1822 * @brief SetConsoleSixAxisSensorAngularVelocityGain
1823 * @note Only available on [4.0.0+].
1824 * @param[in] gain \ref SetSysConsoleSixAxisSensorAngularVelocityGain
1825 */
1827
1828/**
1829 * @brief GetKeyboardLayout
1830 * @note Only available on [4.0.0+].
1831 * @param[out] out \ref SetKeyboardLayout
1832 */
1834
1835/**
1836 * @brief SetKeyboardLayout
1837 * @note Only available on [4.0.0+].
1838 * @param[in] layout \ref SetKeyboardLayout
1839 */
1841
1842/**
1843 * @brief GetWebInspectorFlag
1844 * @note Only available on [4.0.0+].
1845 * @param[out] out Output flag.
1846 */
1848
1849/**
1850 * @brief GetAllowedSslHosts
1851 * @note Only available on [4.0.0+].
1852 * @param[out] total_out Total output entries.
1853 * @param[out] out Output array of \ref SetSysAllowedSslHosts.
1854 * @param[in] count Size of the hosts array in entries.
1855 */
1857
1858/**
1859 * @brief GetHostFsMountPoint
1860 * @note Only available on [4.0.0+].
1861 * @param[out] out \ref SetSysHostFsMountPoint
1862 */
1864
1865/**
1866 * @brief GetRequiresRunRepairTimeReviser
1867 * @note Only available on [5.0.0+].
1868 * @param[out] out Output flag.
1869 */
1871
1872/**
1873 * @brief SetRequiresRunRepairTimeReviser
1874 * @note Only available on [5.0.0+].
1875 * @param[in] flag Input flag.
1876 */
1878
1879/**
1880 * @brief SetBlePairingSettings
1881 * @note Only available on [5.0.0+].
1882 * @param[in] settings Input array of \ref SetSysBlePairingSettings.
1883 * @param[in] count Size of the settings array in entries.
1884 */
1886
1887/**
1888 * @brief GetBlePairingSettings
1889 * @note Only available on [5.0.0+].
1890 * @param[out] total_out Total output entries.
1891 * @param[out] settings Output array of \ref SetSysBlePairingSettings.
1892 * @param[in] count Size of the hosts array in entries.
1893 */
1895
1896/**
1897 * @brief GetConsoleSixAxisSensorAngularVelocityTimeBias
1898 * @note Only available on [5.0.0+].
1899 * @param[out] out \ref SetSysConsoleSixAxisSensorAngularVelocityTimeBias
1900 */
1902
1903/**
1904 * @brief SetConsoleSixAxisSensorAngularVelocityTimeBias
1905 * @note Only available on [5.0.0+].
1906 * @param[in] bias \ref SetSysConsoleSixAxisSensorAngularVelocityTimeBias
1907 */
1909
1910/**
1911 * @brief GetConsoleSixAxisSensorAngularAcceleration
1912 * @note Only available on [5.0.0+].
1913 * @param[out] out \ref SetSysConsoleSixAxisSensorAngularAcceleration
1914 */
1916
1917/**
1918 * @brief SetConsoleSixAxisSensorAngularAcceleration
1919 * @note Only available on [5.0.0+].
1920 * @param[in] acceleration \ref SetSysConsoleSixAxisSensorAngularAcceleration
1921 */
1923
1924/**
1925 * @brief GetRebootlessSystemUpdateVersion
1926 * @note Only available on [5.0.0+].
1927 * @param[out] out \ref SetSysRebootlessSystemUpdateVersion
1928 */
1930
1931/**
1932 * @brief GetDeviceTimeZoneLocationUpdatedTime
1933 * @note Only available on [5.0.0+].
1934 * @param[out] out \ref TimeSteadyClockTimePoint
1935 */
1937
1938/**
1939 * @brief SetDeviceTimeZoneLocationUpdatedTime
1940 * @note Only available on [5.0.0+].
1941 * @param[in] time_point \ref TimeSteadyClockTimePoint
1942 */
1944
1945/**
1946 * @brief GetUserSystemClockAutomaticCorrectionUpdatedTime
1947 * @note Only available on [6.0.0+].
1948 * @param[out] out \ref TimeSteadyClockTimePoint
1949 */
1951
1952/**
1953 * @brief SetUserSystemClockAutomaticCorrectionUpdatedTime
1954 * @note Only available on [6.0.0+].
1955 * @param[in] time_point \ref TimeSteadyClockTimePoint
1956 */
1958
1959/**
1960 * @brief GetAccountOnlineStorageSettings
1961 * @note Only available on [6.0.0+].
1962 * @param[out] total_out Total output entries.
1963 * @param[out] settings Output array of \ref SetSysAccountOnlineStorageSettings.
1964 * @param[in] count Size of the settings array in entries.
1965 */
1967
1968/**
1969 * @brief SetAccountOnlineStorageSettings
1970 * @note Only available on [6.0.0+].
1971 * @param[in] settings Input array of \ref SetSysAccountOnlineStorageSettings.
1972 * @param[in] count Size of the settings array in entries.
1973 */
1975
1976/**
1977 * @brief GetPctlReadyFlag
1978 * @note Only available on [6.0.0+].
1979 * @param[out] out Output flag.
1980 */
1982
1983/**
1984 * @brief SetPctlReadyFlag
1985 * @note Only available on [6.0.0+].
1986 * @param[in] flag Input flag.
1987 */
1989
1990/**
1991 * @brief GetAnalogStickUserCalibrationL
1992 * @note Only available on [8.1.1+].
1993 * @param[out] out \ref SetSysAnalogStickUserCalibration
1994 */
1996
1997/**
1998 * @brief SetAnalogStickUserCalibrationL
1999 * @note Only available on [8.1.1+].
2000 * @param[in] calibration \ref SetSysAnalogStickUserCalibration
2001 */
2003
2004/**
2005 * @brief GetAnalogStickUserCalibrationR
2006 * @note Only available on [8.1.1+].
2007 * @param[out] out \ref SetSysAnalogStickUserCalibration
2008 */
2010
2011/**
2012 * @brief SetAnalogStickUserCalibrationR
2013 * @note Only available on [8.1.1+].
2014 * @param[in] calibration \ref SetSysAnalogStickUserCalibration
2015 */
2017
2018/**
2019 * @brief GetPtmBatteryVersion
2020 * @note Only available on [6.0.0+].
2021 * @param[out] out Output version.
2022 */
2024
2025/**
2026 * @brief SetPtmBatteryVersion
2027 * @note Only available on [6.0.0+].
2028 * @param[in] version Input version.
2029 */
2031
2032/**
2033 * @brief GetUsb30HostEnableFlag
2034 * @note Only available on [6.0.0+].
2035 * @param[out] out Output flag.
2036 */
2038
2039/**
2040 * @brief SetUsb30HostEnableFlag
2041 * @note Only available on [6.0.0+].
2042 * @param[in] flag Input flag.
2043 */
2045
2046/**
2047 * @brief GetUsb30DeviceEnableFlag
2048 * @note Only available on [6.0.0+].
2049 * @param[out] out Output flag.
2050 */
2052
2053/**
2054 * @brief SetUsb30DeviceEnableFlag
2055 * @note Only available on [6.0.0+].
2056 * @param[in] flag Input flag.
2057 */
2059
2060/**
2061 * @brief GetThemeId
2062 * @note Only available on [7.0.0+].
2063 * @param[in] type Input theme id type.
2064 * @param[out] out \ref SetSysThemeId
2065 */
2067
2068/**
2069 * @brief SetThemeId
2070 * @note Only available on [7.0.0+].
2071 * @param[in] type Input theme id type.
2072 * @param[in] theme_id \ref SetSysThemeId
2073 */
2075
2076/**
2077 * @brief GetChineseTraditionalInputMethod
2078 * @note Only available on [7.0.0+].
2079 * @param[out] out \ref SetChineseTraditionalInputMethod
2080 */
2082
2083/**
2084 * @brief SetChineseTraditionalInputMethod
2085 * @note Only available on [7.0.0+].
2086 * @param[in] method \ref SetChineseTraditionalInputMethod
2087 */
2089
2090/**
2091 * @brief GetPtmCycleCountReliability
2092 * @note Only available on [7.0.0+].
2093 * @param[out] out \ref SetSysPtmCycleCountReliability
2094 */
2096
2097/**
2098 * @brief SetPtmCycleCountReliability
2099 * @note Only available on [7.0.0+].
2100 * @param[in] reliability \ref SetSysPtmCycleCountReliability
2101 */
2103
2104/**
2105 * @brief Gets the \ref SetSysHomeMenuScheme.
2106 * @note Only available on [8.1.1+].
2107 * @param[out] out \ref SetSysHomeMenuScheme
2108 */
2110
2111/**
2112 * @brief GetThemeSettings
2113 * @note Only available on [7.0.0+].
2114 * @param[out] out \ref SetSysThemeSettings
2115 */
2117
2118/**
2119 * @brief SetThemeSettings
2120 * @note Only available on [7.0.0+].
2121 * @param[in] settings \ref SetSysThemeSettings
2122 */
2124
2125/**
2126 * @brief GetThemeKey
2127 * @note Only available on [7.0.0+].
2128 * @param[out] out \ref FsArchiveMacKey
2129 */
2131
2132/**
2133 * @brief SetThemeKey
2134 * @note Only available on [7.0.0+].
2135 * @param[in] key \ref FsArchiveMacKey
2136 */
2138
2139/**
2140 * @brief GetZoomFlag
2141 * @note Only available on [8.0.0+].
2142 * @param[out] out Output flag.
2143 */
2145
2146/**
2147 * @brief SetZoomFlag
2148 * @note Only available on [8.0.0+].
2149 * @param[in] flag Input flag.
2150 */
2152
2153/**
2154 * @brief Returns Terra platform type flag.
2155 * @note On [9.0.0+], this is a wrapper for \ref setsysGetPlatFormRegion() == 2.
2156 * @note Only available on [8.0.0+].
2157 * @param[out] out Output flag.
2158 */
2160
2161/**
2162 * @brief Sets Terra platform type flag.
2163 * @note On [9.0.0+], this is a wrapper for \ref setsysSetPlatFormRegion(1 + (IsT & 1)).
2164 * @note Only available on [8.0.0+].
2165 * @param[in] flag Input flag.
2166 */
2168
2169/**
2170 * @brief Gets the \ref SetSysPlatformRegion.
2171 * @note This is used internally by \ref appletGetSettingsPlatformRegion.
2172 * @note Only available on [9.0.0+].
2173 * @param[out] out \ref SetSysPlatformRegion
2174 */
2176
2177/**
2178 * @brief Sets the \ref SetSysPlatformRegion.
2179 * @note Only available on [9.0.0+].
2180 * @param[in] region \ref SetSysPlatformRegion
2181 */
2183
2184/**
2185 * @brief GetHomeMenuSchemeModel
2186 * @note This will throw an error when loading the "settings_debug!{...}" system-setting which is used with this fails.
2187 * @note Only available on [9.0.0+].
2188 * @param[out] out HomeMenuSchemeModel.
2189 */
2191
2192/**
2193 * @brief GetMemoryUsageRateFlag
2194 * @note Only available on [9.0.0+].
2195 * @param[out] out Output flag.
2196 */
2198
2199/**
2200 * @brief Gets the \ref SetSysTouchScreenMode.
2201 * @note Only available on [9.0.0+].
2202 * @param[out] out \ref SetSysTouchScreenMode
2203 */
2205
2206/**
2207 * @brief Sets the \ref SetSysTouchScreenMode.
2208 * @note Only available on [9.0.0+].
2209 * @param[in] mode \ref SetSysTouchScreenMode
2210 */
2212
2213/**
2214 * @brief GetButtonConfigSettingsFull
2215 * @note Only available on [10.0.0+].
2216 * @param[out] total_out Total output entries.
2217 * @param[out] settings Output array of \ref SetSysButtonConfigSettings.
2218 * @param[in] count Size of the settings array in entries.
2219 */
2221
2222/**
2223 * @brief SetButtonConfigSettingsFull
2224 * @note Only available on [10.0.0+].
2225 * @param[in] settings Input array of \ref SetSysButtonConfigSettings.
2226 * @param[in] count Size of the settings array in entries.
2227 */
2229
2230/**
2231 * @brief GetButtonConfigSettingsEmbedded
2232 * @note Only available on [10.0.0+].
2233 * @param[out] total_out Total output entries.
2234 * @param[out] settings Output array of \ref SetSysButtonConfigSettings.
2235 * @param[in] count Size of the settings array in entries.
2236 */
2238
2239/**
2240 * @brief SetButtonConfigSettingsEmbedded
2241 * @note Only available on [10.0.0+].
2242 * @param[in] settings Input array of \ref SetSysButtonConfigSettings.
2243 * @param[in] count Size of the settings array in entries.
2244 */
2246
2247/**
2248 * @brief GetButtonConfigSettingsLeft
2249 * @note Only available on [10.0.0+].
2250 * @param[out] total_out Total output entries.
2251 * @param[out] settings Output array of \ref SetSysButtonConfigSettings.
2252 * @param[in] count Size of the settings array in entries.
2253 */
2255
2256/**
2257 * @brief SetButtonConfigSettingsLeft
2258 * @note Only available on [10.0.0+].
2259 * @param[in] settings Input array of \ref SetSysButtonConfigSettings.
2260 * @param[in] count Size of the settings array in entries.
2261 */
2263
2264/**
2265 * @brief GetButtonConfigSettingsRight
2266 * @note Only available on [10.0.0+].
2267 * @param[out] total_out Total output entries.
2268 * @param[out] settings Output array of \ref SetSysButtonConfigSettings.
2269 * @param[in] count Size of the settings array in entries.
2270 */
2272
2273/**
2274 * @brief SetButtonConfigSettingsRight
2275 * @note Only available on [10.0.0+].
2276 * @param[in] settings Input array of \ref SetSysButtonConfigSettings.
2277 * @param[in] count Size of the settings array in entries.
2278 */
2280
2281/**
2282 * @brief GetButtonConfigRegisteredSettingsEmbedded
2283 * @note Only available on [10.0.0+].
2284 * @param[out] settings \ref SetSysButtonConfigRegisteredSettings
2285 */
2287
2288/**
2289 * @brief SetButtonConfigRegisteredSettingsEmbedded
2290 * @note Only available on [10.0.0+].
2291 * @param[in] settings \ref SetSysButtonConfigRegisteredSettings
2292 */
2294
2295/**
2296 * @brief GetButtonConfigRegisteredSettings
2297 * @note Only available on [10.0.0+].
2298 * @param[out] settings \ref SetSysButtonConfigRegisteredSettings
2299 */
2301
2302/**
2303 * @brief SetButtonConfigRegisteredSettings
2304 * @note Only available on [10.0.0+].
2305 * @param[in] settings \ref SetSysButtonConfigRegisteredSettings
2306 */
2308
2309/**
2310 * @brief GetFieldTestingFlag
2311 * @note Only available on [10.1.0+].
2312 * @param[out] out Output flag.
2313 */
2315
2316/**
2317 * @brief SetFieldTestingFlag
2318 * @note Only available on [10.1.0+].
2319 * @param[in] flag Input flag.
2320 */
2322
2323/**
2324 * @brief GetNxControllerSettingsEx
2325 * @param[out] total_out Total output entries.
2326 * @param[out] settings Output array of \ref SetSysNxControllerSettings.
2327 * @param[in] count Size of the settings array in entries.
2328 */
2330
2331/**
2332 * @brief SetNxControllerSettingsEx
2333 * @param[in] settings Input array of \ref SetSysNxControllerSettings.
2334 * @param[in] count Size of the settings array in entries.
2335 */
2337
2338/// Initialize setcal.
2340
2341/// Exit setcal.
2342void setcalExit(void);
2343
2344/// Gets the Service object for the actual setcal service session.
2346
2347/**
2348 * @brief Gets the \ref SetCalBdAddress.
2349 * @param[out] out \ref SetCalBdAddress
2350 */
2352
2353/**
2354 * @brief Gets the \ref SetCalConfigurationId1.
2355 * @param[out] out \ref SetCalConfigurationId1
2356 */
2358
2359/**
2360 * @brief Gets the \ref SetCalAccelerometerOffset.
2361 * @param[out] out \ref SetCalAccelerometerOffset
2362 */
2364
2365/**
2366 * @brief Gets the \ref SetCalAccelerometerScale.
2367 * @param[out] out \ref SetCalAccelerometerScale
2368 */
2370
2371/**
2372 * @brief Gets the \ref SetCalGyroscopeOffset.
2373 * @param[out] out \ref SetCalGyroscopeOffset
2374 */
2376
2377/**
2378 * @brief Gets the \ref SetCalGyroscopeScale.
2379 * @param[out] out \ref SetCalGyroscopeScale
2380 */
2382
2383/**
2384 * @brief Gets the \ref SetCalMacAddress.
2385 * @param[out] out \ref SetCalMacAddress
2386 */
2388
2389/**
2390 * @brief GetWirelessLanCountryCodeCount
2391 * @param[out] out_count Output count
2392 */
2394
2395/**
2396 * @brief GetWirelessLanCountryCodes
2397 * @param[out] total_out Total output entries.
2398 * @param[out] codes Output array of \ref SetCalCountryCode.
2399 * @param[in] count Size of the versions array in entries.
2400 */
2402
2403/**
2404 * @brief Gets the \ref SetCalSerialNumber.
2405 * @param[out] out \ref SetCalSerialNumber
2406 */
2408
2409/**
2410 * @brief SetInitialSystemAppletProgramId
2411 * @param[in] program_id input ProgramId.
2412 */
2414
2415/**
2416 * @brief SetOverlayDispProgramId
2417 * @param[in] program_id input ProgramId.
2418 */
2420
2421/**
2422 * @brief Gets the \ref SetBatteryLot.
2423 * @param[out] out \ref SetBatteryLot
2424 */
2426
2427/**
2428 * @brief Gets the \ref SetCalEccB233DeviceCertificate.
2429 * @param[out] out \ref SetCalEccB233DeviceCertificate
2430 */
2432
2433/**
2434 * @brief Gets the \ref SetCalRsa2048DeviceCertificate.
2435 * @param[out] out \ref SetCalRsa2048DeviceCertificate
2436 */
2438
2439/**
2440 * @brief Gets the \ref SetCalSslKey.
2441 * @param[out] out \ref SetCalSslKey
2442 */
2444
2445/**
2446 * @brief Gets the \ref SetCalSslCertificate.
2447 * @param[out] out \ref SetCalSslCertificate
2448 */
2450
2451/**
2452 * @brief Gets the \ref SetCalGameCardKey.
2453 * @param[out] out \ref SetCalGameCardKey
2454 */
2456
2457/**
2458 * @brief Gets the \ref SetCalGameCardCertificate.
2459 * @param[out] out \ref SetCalGameCardCertificate
2460 */
2462
2463/**
2464 * @brief Gets the \ref SetCalEccB233DeviceKey.
2465 * @param[out] out \ref SetCalEccB233DeviceKey
2466 */
2468
2469/**
2470 * @brief Gets the \ref SetCalRsa2048DeviceKey.
2471 * @param[out] out \ref SetCalRsa2048DeviceKey
2472 */
2474
2475/**
2476 * @brief Gets the \ref SetCalSpeakerParameter.
2477 * @param[out] out \ref SetCalSpeakerParameter
2478 */
2480
2481/**
2482 * @brief GetLcdVendorId
2483 * @note Only available on [4.0.0+].
2484 * @param[out] out_vendor_id Output LcdVendorId.
2485 */
2487
2488/**
2489 * @brief Gets the \ref SetCalRsa2048DeviceCertificate.
2490 * @note Only available on [5.0.0+].
2491 * @param[out] out \ref SetCalRsa2048DeviceCertificate
2492 */
2494
2495/**
2496 * @brief Gets the \ref SetCalRsa2048DeviceKey.
2497 * @note Only available on [5.0.0+].
2498 * @param[out] out \ref SetCalRsa2048DeviceKey
2499 */
2501
2502/**
2503 * @brief Gets the \ref SetCalAmiiboKey.
2504 * @note Only available on [5.0.0+].
2505 * @param[out] out \ref SetCalAmiiboKey
2506 */
2508
2509/**
2510 * @brief Gets the \ref SetCalAmiiboEcqvCertificate.
2511 * @note Only available on [5.0.0+].
2512 * @param[out] out \ref SetCalAmiiboEcqvCertificate
2513 */
2515
2516/**
2517 * @brief Gets the \ref SetCalAmiiboEcdsaCertificate.
2518 * @note Only available on [5.0.0+].
2519 * @param[out] out \ref SetCalAmiiboEcdsaCertificate
2520 */
2522
2523/**
2524 * @brief Gets the \ref SetCalAmiiboEcqvBlsKey.
2525 * @note Only available on [5.0.0+].
2526 * @param[out] out \ref SetCalAmiiboEcqvBlsKey
2527 */
2529
2530/**
2531 * @brief Gets the \ref SetCalAmiiboEcqvBlsCertificate.
2532 * @note Only available on [5.0.0+].
2533 * @param[out] out \ref SetCalAmiiboEcqvBlsCertificate
2534 */
2536
2537/**
2538 * @brief Gets the \ref SetCalAmiiboEcqvBlsRootCertificate.
2539 * @note Only available on [5.0.0+].
2540 * @param[out] out \ref SetCalAmiiboEcqvBlsRootCertificate
2541 */
2543
2544/**
2545 * @brief GetUsbTypeCPowerSourceCircuitVersion
2546 * @note Only available on [5.0.0+].
2547 * @param[out] out_version Output UsbTypeCPowerSourceCircuitVersion.
2548 */
2550
2551/**
2552 * @brief GetAnalogStickModuleTypeL
2553 * @note Only available on [8.1.1+].
2554 * @param[out] out_version Output AnalogStickModuleType.
2555 */
2557
2558/**
2559 * @brief Gets the \ref SetCalAnalogStickModelParameter.
2560 * @note Only available on [8.1.1+].
2561 * @param[out] out \ref SetCalAnalogStickModelParameter
2562 */
2564
2565/**
2566 * @brief Gets the \ref SetCalAnalogStickFactoryCalibration.
2567 * @note Only available on [8.1.1+].
2568 * @param[out] out \ref SetCalAnalogStickFactoryCalibration
2569 */
2571
2572/**
2573 * @brief GetAnalogStickModuleTypeR
2574 * @note Only available on [8.1.1+].
2575 * @param[out] out_version Output AnalogStickModuleType.
2576 */
2578
2579/**
2580 * @brief Gets the \ref SetCalAnalogStickModelParameter.
2581 * @note Only available on [8.1.1+].
2582 * @param[out] out \ref SetCalAnalogStickModelParameter
2583 */
2585
2586/**
2587 * @brief Gets the \ref SetCalAnalogStickFactoryCalibration.
2588 * @note Only available on [8.1.1+].
2589 * @param[out] out \ref SetCalAnalogStickFactoryCalibration
2590 */
2592
2593/**
2594 * @brief GetConsoleSixAxisSensorModuleType
2595 * @note Only available on [8.1.1+].
2596 * @param[out] out_version Output ConsoleSixAxisSensorModuleType.
2597 */
2599
2600/**
2601 * @brief Gets the \ref SetCalConsoleSixAxisSensorHorizontalOffset.
2602 * @note Only available on [8.1.1+].
2603 * @param[out] out \ref SetCalConsoleSixAxisSensorHorizontalOffset
2604 */
2606
2607/**
2608 * @brief GetBatteryVersion
2609 * @note Only available on [6.0.0+].
2610 * @param[out] out_version Output BatteryVersion.
2611 */
2613
2614/**
2615 * @brief GetDeviceId
2616 * @note Only available on [10.0.0+].
2617 * @param[out] out_type Output DeviceId.
2618 */
2620
2621/**
2622 * @brief GetConsoleSixAxisSensorMountType
2623 * @note Only available on [10.0.0+].
2624 * @param[out] out_type Output ConsoleSixAxisSensorMountType.
2625 */
Result setsysSetButtonConfigRegisteredSettings(const SetSysButtonConfigRegisteredSettings *settings, s32 count)
SetButtonConfigRegisteredSettings.
Result setsysGetButtonConfigRegisteredSettings(s32 *total_out, SetSysButtonConfigRegisteredSettings *settings, s32 count)
GetButtonConfigRegisteredSettings.
Result setsysGetSleepSettings(SetSysSleepSettings *out)
GetSleepSettings.
Result setcalGetEciDeviceCertificate(SetCalEccB233DeviceCertificate *out)
Gets the SetCalEccB233DeviceCertificate.
Result setsysGetVibrationMasterVolume(float *out)
GetVibrationMasterVolume.
Result setsysSetBluetoothDevicesSettings(const SetSysBluetoothDevicesSettings *settings, s32 count)
SetBluetoothDevicesSettings.
Result setcalGetConfigurationId1(SetCalConfigurationId1 *out)
Gets the SetCalConfigurationId1.
Result setsysGetAnalogStickUserCalibrationR(SetSysAnalogStickUserCalibration *out)
GetAnalogStickUserCalibrationR.
Result setcalGetConsoleSixAxisSensorModuleType(u8 *out_type)
GetConsoleSixAxisSensorModuleType.
Result setcalGetWirelessLanMacAddress(SetCalMacAddress *out)
Gets the SetCalMacAddress.
Result setGetAvailableLanguageCodes(s32 *total_entries, u64 *LanguageCodes, size_t max_entries)
Gets available LanguageCodes.
Result setcalGetBatteryVersion(u8 *out_version)
GetBatteryVersion.
Result setsysSetAnalogStickUserCalibrationL(const SetSysAnalogStickUserCalibration *calibration)
SetAnalogStickUserCalibrationL.
Result setGetSystemLanguage(u64 *LanguageCode)
Gets the current system LanguageCode.
Result setsysSetUsb30HostEnableFlag(bool flag)
SetUsb30HostEnableFlag.
Result setsysSetAutomaticApplicationDownloadFlag(bool flag)
SetAutomaticApplicationDownloadFlag.
Result setsysGetWirelessLanEnableFlag(bool *out)
GetWirelessLanEnableFlag.
Result setsysSetButtonConfigSettingsLeft(const SetSysButtonConfigSettings *settings, s32 count)
SetButtonConfigSettingsLeft.
Result setsysNeedsToUpdateHeadphoneVolume(u8 *a0, u8 *a1, u8 *a2, bool flag)
NeedsToUpdateHeadphoneVolume.
Result setsysGetRequiresRunRepairTimeReviser(bool *out)
GetRequiresRunRepairTimeReviser.
Result setsysSetConsoleSixAxisSensorAngularAcceleration(const SetSysConsoleSixAxisSensorAngularAcceleration *acceleration)
SetConsoleSixAxisSensorAngularAcceleration.
Result setsysSetNxControllerSettingsEx(const SetSysNxControllerSettings *settings, s32 count)
SetNxControllerSettingsEx.
Result setcalGetLcdVendorId(u32 *out_vendor_id)
GetLcdVendorId.
Result setcalGetEciDeviceKey2(SetCalRsa2048DeviceKey *out)
Gets the SetCalRsa2048DeviceKey.
Result setMakeLanguage(u64 LanguageCode, SetLanguage *Language)
Converts LanguageCode to SetLanguage.
Result setsysGetUsb30DeviceEnableFlag(bool *out)
GetUsb30DeviceEnableFlag.
SetKeyboardLayout
KeyboardLayout.
Definition set.h:189
Result setsysSetNetworkSettings(const SetSysNetworkSettings *settings, s32 count)
SetNetworkSettings.
Result setsysGetMiiAuthorId(Uuid *out)
GetMiiAuthorId.
Result setsysGetInitialSystemAppletProgramId(u64 *out)
GetInitialSystemAppletProgramId.
Result setsysGetTvSettings(SetSysTvSettings *out)
GetTvSettings.
Result setcalGetAccelerometerScale(SetCalAccelerometerScale *out)
Gets the SetCalAccelerometerScale.
SetRegion
Region codes.
Definition set.h:62
@ SetRegion_JPN
Japan.
Definition set.h:63
@ SetRegion_AUS
Australia/New Zealand.
Definition set.h:66
@ SetRegion_EUR
Europe.
Definition set.h:65
@ SetRegion_HTK
Hong Kong/Taiwan/Korea.
Definition set.h:67
@ SetRegion_CHN
China.
Definition set.h:68
@ SetRegion_USA
The Americas.
Definition set.h:64
Result setcalGetAnalogStickModuleTypeL(u8 *out_type)
GetAnalogStickModuleTypeL.
Result setcalGetGameCardKey(SetCalGameCardKey *out)
Gets the SetCalGameCardKey.
SetSysConsoleSleepPlan
ConsoleSleepPlan.
Definition set.h:154
Result setcalSetInitialSystemAppletProgramId(u64 program_id)
SetInitialSystemAppletProgramId.
Result setcalGetAnalogStickFactoryCalibrationR(SetCalAnalogStickFactoryCalibration *out)
Gets the SetCalAnalogStickFactoryCalibration.
Result setsysSetBacklightSettings(const SetSysBacklightSettings *settings)
SetBacklightSettings.
Result setsysGetExternalSteadyClockInternalOffset(u64 *out)
GetExternalSteadyClockInternalOffset.
Result setsysGetHostFsMountPoint(SetSysHostFsMountPoint *out)
GetHostFsMountPoint.
SetSysNotificationVolume
NotificationVolume.
Definition set.h:116
Result setsysSetBacklightSettingsEx(const SetSysBacklightSettingsEx *settings)
SetBacklightSettingsEx.
Result setsysGetShutdownRtcValue(u64 *out)
GetShutdownRtcValue.
Result setcalGetAmiiboEcdsaCertificate(SetCalAmiiboEcdsaCertificate *out)
Gets the SetCalAmiiboEcdsaCertificate.
Result setcalGetAmiiboEcqvBlsCertificate(SetCalAmiiboEcqvBlsCertificate *out)
Gets the SetCalAmiiboEcqvBlsCertificate.
Result setsysGetDebugModeFlag(bool *out)
GetDebugModeFlag.
Result setcalGetAnalogStickModuleTypeR(u8 *out_type)
GetAnalogStickModuleTypeR.
Result setcalSetOverlayDispProgramId(u64 program_id)
SetOverlayDispProgramId.
Result setsysSetErrorReportSharePermission(SetSysErrorReportSharePermission permission)
SetErrorReportSharePermission.
SetSysPtmCycleCountReliability
PtmCycleCountReliability.
Definition set.h:214
Result setsysGetAccountNotificationSettings(s32 *total_out, SetSysAccountNotificationSettings *settings, s32 count)
GetAccountNotificationSettings.
Result setsysSetButtonConfigSettingsRight(const SetSysButtonConfigSettings *settings, s32 count)
SetButtonConfigSettingsRight.
Result setsysSetDataDeletionSettings(const SetSysDataDeletionSettings *settings)
SetDataDeletionSettings.
Result setsysGetUserSystemClockAutomaticCorrectionUpdatedTime(TimeSteadyClockTimePoint *out)
GetUserSystemClockAutomaticCorrectionUpdatedTime.
Result setsysIsUserSystemClockAutomaticCorrectionEnabled(bool *out)
IsUserSystemClockAutomaticCorrectionEnabled.
Result setcalGetGameCardCertificate(SetCalGameCardCertificate *out)
Gets the SetCalGameCardCertificate.
Service * setsysGetServiceSession(void)
Gets the Service object for the actual setsys service session.
Result setsysGetAutoUpdateEnableFlag(bool *out)
GetAutoUpdateEnableFlag.
Result setsysGetAnalogStickUserCalibrationL(SetSysAnalogStickUserCalibration *out)
GetAnalogStickUserCalibrationL.
void setExit(void)
Exit set.
SetSysPlatformRegion
PlatformRegion. Other values not listed here should be handled as "Unknown".
Definition set.h:220
Result setcalGetAnalogStickModelParameterL(SetCalAnalogStickModelParameter *out)
Gets the SetCalAnalogStickModelParameter.
Result setcalGetAmiiboEcqvBlsKey(SetCalAmiiboEcqvBlsKey *out)
Gets the SetCalAmiiboEcqvBlsKey.
SetSysUserSelectorFlag
UserSelectorFlag.
Definition set.h:105
Result setsysGetZoomFlag(bool *out)
GetZoomFlag.
Service * setGetServiceSession(void)
Gets the Service object for the actual set service session.
Result setsysSetExternalSteadyClockSourceId(const Uuid *uuid)
SetExternalSteadyClockSourceId.
Result setsysSetUsb30EnableFlag(bool flag)
SetUsb30EnableFlag.
Result setsysGetButtonConfigSettingsRight(s32 *total_out, SetSysButtonConfigSettings *settings, s32 count)
GetButtonConfigSettingsRight.
Result setsysSetPtmBatteryLot(const SetBatteryLot *lot)
SetPtmBatteryLot.
Result setsysSetPrimaryAlbumStorage(SetSysPrimaryAlbumStorage storage)
SetPrimaryAlbumStorage.
Result setsysSetBluetoothBoostEnableFlag(bool flag)
SetBluetoothBoostEnableFlag.
Result setsysSetRegionCode(SetRegion region)
SetRegionCode.
Result setsysSetShutdownRtcValue(u64 value)
SetShutdownRtcValue.
Result setsysSetT(bool flag)
Sets Terra platform type flag.
SetSysBlockType
BlockType.
Definition set.h:232
Result setsysGetDataDeletionSettings(SetSysDataDeletionSettings *out)
GetDataDeletionSettings.
Result setsysSetThemeId(s32 type, const SetSysThemeId *theme_id)
SetThemeId.
Result setsysGetExternalRtcResetFlag(bool *out)
GetExternalRtcResetFlag.
SetSysAudioOutputMode
AudioOutputMode.
Definition set.h:172
@ SetSysAudioOutputMode_Unknown1
Default value.
Definition set.h:173
Result setsysSetUsb30DeviceEnableFlag(bool flag)
SetUsb30DeviceEnableFlag.
Result setsysGetBluetoothDevicesSettings(s32 *total_out, SetSysBluetoothDevicesSettings *settings, s32 count)
GetBluetoothDevicesSettings.
Result setsysGetSpeakerAutoMuteFlag(bool *out)
GetSpeakerAutoMuteFlag.
Result setsysSetBatteryPercentageFlag(bool flag)
SetBatteryPercentageFlag.
Result setsysSetConsoleSixAxisSensorAngularVelocityBias(const SetSysConsoleSixAxisSensorAngularVelocityBias *bias)
SetConsoleSixAxisSensorAngularVelocityBias.
Result setcalGetAnalogStickFactoryCalibrationL(SetCalAnalogStickFactoryCalibration *out)
Gets the SetCalAnalogStickFactoryCalibration.
SetChineseTraditionalInputMethod
ChineseTraditionalInputMethod.
Definition set.h:208
Result setsysGetTelemetryDirtyFlags(u64 *flags_0, u64 *flags_1)
Gets the settings flags that have changed.
Result setsysGetBluetoothBoostEnableFlag(bool *out)
GetBluetoothBoostEnableFlag.
Result setcalGetSslKey(SetCalSslKey *out)
Gets the SetCalSslKey.
Result setsysGetNetworkSystemClockContext(TimeSystemClockContext *out)
GetNetworkSystemClockContext.
Result setsysGetQuestFlag(bool *out)
GetQuestFlag.
Result setsysGetExternalSteadyClockSourceId(Uuid *out)
GetExternalSteadyClockSourceId.
SetSysControllerType
ControllerType.
Definition set.h:240
Result setsysSetInitialLaunchSettings(const SetSysInitialLaunchSettings *settings)
SetInitialLaunchSettings.
Result setsysGetNxControllerSettingsEx(s32 *total_out, SetSysNxControllerSettings *settings, s32 count)
GetNxControllerSettingsEx.
Result setsysSetPctlReadyFlag(bool flag)
SetPctlReadyFlag.
Result setsysSetNxControllerSettings(const SetSysNxControllerLegacySettings *settings, s32 count)
SetNxControllerSettings.
SetSysProxyFlags
ProxyFlags.
Definition set.h:99
Result setsysSetBluetoothEnableFlag(bool flag)
SetBluetoothEnableFlag.
Result setsysSetExternalSteadyClockInternalOffset(u64 offset)
SetExternalSteadyClockInternalOffset.
Result setsysGetUserSystemClockContext(TimeSystemClockContext *out)
GetUserSystemClockContext.
Result setsysGetAllowedSslHosts(s32 *total_out, SetSysAllowedSslHosts *out, s32 count)
GetAllowedSslHosts.
Result setcalGetBdAddress(SetCalBdAddress *out)
Gets the SetCalBdAddress.
Result setsysGetWebInspectorFlag(bool *out)
GetWebInspectorFlag.
Result setcalGetAccelerometerOffset(SetCalAccelerometerOffset *out)
Gets the SetCalAccelerometerOffset.
Result setsysGetThemeKey(FsArchiveMacKey *out)
GetThemeKey.
Result setsysSetTouchScreenMode(SetSysTouchScreenMode mode)
Sets the SetSysTouchScreenMode.
Result setsysGetBluetoothEnableFlag(bool *out)
GetBluetoothEnableFlag.
Result setsysGetSerialNumber(SetSysSerialNumber *out)
Gets the system's serial number.
Result setsysSetBlePairingSettings(const SetSysBlePairingSettings *settings, s32 count)
SetBlePairingSettings.
Result setsysSetSleepSettings(const SetSysSleepSettings *settings)
SetSleepSettings.
Result setsysGetPushNotificationActivityModeOnSleep(u32 *out)
GetPushNotificationActivityModeOnSleep.
Result setsysGetAudioOutputMode(SetSysAudioOutputModeTarget target, SetSysAudioOutputMode *out)
GetAudioOutputMode.
Result setsysGetPtmCycleCountReliability(SetSysPtmCycleCountReliability *out)
GetPtmCycleCountReliability.
Result setcalGetEciDeviceCertificate2(SetCalRsa2048DeviceCertificate *out)
Gets the SetCalRsa2048DeviceCertificate.
Result setcalGetGyroscopeScale(SetCalGyroscopeScale *out)
Gets the SetCalGyroscopeScale.
Result setsysSetAnalogStickUserCalibrationR(const SetSysAnalogStickUserCalibration *calibration)
SetAnalogStickUserCalibrationR.
SetSysFriendPresenceOverlayPermission
FriendPresenceOverlayPermission.
Definition set.h:123
Result setsysGetLockScreenFlag(bool *out)
GetLockScreenFlag.
Result setcalGetSpeakerParameter(SetCalSpeakerParameter *out)
Gets the SetCalSpeakerParameter.
Result setcalGetSslCertificate(SetCalSslCertificate *out)
Gets the SetCalSslCertificate.
Result setcalGetWirelessLanCountryCodeCount(s32 *out_count)
GetWirelessLanCountryCodeCount.
Result setsysSetAutoUpdateEnableFlag(bool flag)
SetAutoUpdateEnableFlag.
Result setsysSetZoomFlag(bool flag)
SetZoomFlag.
Result setsysGetHeadphoneVolumeUpdateFlag(bool *out)
GetHeadphoneVolumeUpdateFlag.
Result setsysSetNetworkSystemClockContext(const TimeSystemClockContext *context)
SetNetworkSystemClockContext.
Result setsysSetButtonConfigSettingsFull(const SetSysButtonConfigSettings *settings, s32 count)
SetButtonConfigSettingsFull.
Result setsysAcquireFatalDirtyFlagEventHandle(Event *out_event)
Gets an event that settings will signal on flag change.
Result setsysGetInRepairProcessEnableFlag(bool *out)
GetInRepairProcessEnableFlag.
Result setsysGetConsoleSixAxisSensorAngularAcceleration(SetSysConsoleSixAxisSensorAngularAcceleration *out)
GetConsoleSixAxisSensorAngularAcceleration.
Result setcalGetUsbTypeCPowerSourceCircuitVersion(u8 *out_version)
GetUsbTypeCPowerSourceCircuitVersion.
Result setsysSetKeyboardLayout(SetKeyboardLayout layout)
SetKeyboardLayout.
Result setcalInitialize(void)
Initialize setcal.
Result setcalGetAmiiboKey(SetCalAmiiboKey *out)
Gets the SetCalAmiiboKey.
Result setsysGetConsoleSixAxisSensorAngularVelocityGain(SetSysConsoleSixAxisSensorAngularVelocityGain *out)
GetConsoleSixAxisSensorAngularVelocityGain.
SetSysProductModel
Console Product Models.
Definition set.h:27
@ SetSysProductModel_Copper
Erista "Simulation" Model.
Definition set.h:30
@ SetSysProductModel_Iowa
Mariko Model.
Definition set.h:31
@ SetSysProductModel_Hoag
Mariko Lite Model.
Definition set.h:32
@ SetSysProductModel_Calcio
Mariko "Simulation" Model.
Definition set.h:33
@ SetSysProductModel_Aula
Mariko OLED Model.
Definition set.h:34
@ SetSysProductModel_Nx
Erista Model.
Definition set.h:29
@ SetSysProductModel_Invalid
Invalid Model.
Definition set.h:28
Result setsysSetPtmFuelGaugeParameter(const SetSysPtmFuelGaugeParameter *parameter)
SetPtmFuelGaugeParameter.
Result setsysSetQuestFlag(bool flag)
SetQuestFlag.
Result setsysGetBacklightSettingsEx(SetSysBacklightSettingsEx *out)
GetBacklightSettingsEx.
Result setsysGetBatteryPercentageFlag(bool *out)
GetBatteryPercentageFlag.
SetSysAudioOutputModeTarget
AudioOutputModeTarget.
Definition set.h:164
Result setcalGetDeviceId(u64 *out_device_id)
GetDeviceId.
Result setsysSetHeadphoneVolumeUpdateFlag(bool flag)
SetHeadphoneVolumeUpdateFlag.
Result setsysSetChineseTraditionalInputMethod(SetChineseTraditionalInputMethod method)
SetChineseTraditionalInputMethod.
Result setsysSetLanguageCode(u64 LanguageCode)
SetLanguageCode.
Result setsysSetUserSystemClockAutomaticCorrectionEnabled(bool flag)
SetUserSystemClockAutomaticCorrectionEnabled.
Result setcalGetConsoleSixAxisSensorMountType(u8 *out_type)
GetConsoleSixAxisSensorMountType.
Result setsysSetPlatformRegion(SetSysPlatformRegion region)
Sets the SetSysPlatformRegion.
Result setcalGetAmiiboEcqvBlsRootCertificate(SetCalAmiiboEcqvBlsRootCertificate *out)
Gets the SetCalAmiiboEcqvBlsRootCertificate.
Result setsysGetNetworkSettings(s32 *total_out, SetSysNetworkSettings *settings, s32 count)
GetNetworkSettings.
Result setsysGetEdid(SetSysEdid *out)
GetEdid.
Result setcalGetWirelessLanCountryCodes(s32 *total_out, SetCalCountryCode *codes, s32 count)
GetWirelessLanCountryCodes.
Result setsysGetConsoleSixAxisSensorAngularVelocityBias(SetSysConsoleSixAxisSensorAngularVelocityBias *out)
GetConsoleSixAxisSensorAngularVelocityBias.
Result setsysGetOverlayDispProgramId(u64 *out)
GetOverlayDispProgramId.
Result setsysGetButtonConfigSettingsFull(s32 *total_out, SetSysButtonConfigSettings *settings, s32 count)
GetButtonConfigSettingsFull.
Result setsysGetDeviceTimeZoneLocationUpdatedTime(TimeSteadyClockTimePoint *out)
GetDeviceTimeZoneLocationUpdatedTime.
Result setsysGetHomeMenuSchemeModel(u32 *out)
GetHomeMenuSchemeModel.
Result setsysGetButtonConfigRegisteredSettingsEmbedded(SetSysButtonConfigRegisteredSettings *settings)
GetButtonConfigRegisteredSettingsEmbedded.
Result setsysSetLdnChannel(s32 channel)
SetLdnChannel.
Result setsysSetFieldTestingFlag(bool flag)
SetFieldTestingFlag.
SetSysTouchScreenMode
TouchScreenMode, for "Touch-Screen Sensitivity".
Definition set.h:226
@ SetSysTouchScreenMode_Stylus
Stylus.
Definition set.h:227
@ SetSysTouchScreenMode_Standard
Standard, the default.
Definition set.h:228
SetSysServiceDiscoveryControlSettings
ServiceDiscoveryControlSettings.
Definition set.h:177
Result setsysGetFieldTestingFlag(bool *out)
GetFieldTestingFlag.
Result setsysGetProductModel(SetSysProductModel *model)
GetProductModel.
Result setsysGetErrorReportSharePermission(SetSysErrorReportSharePermission *out)
GetErrorReportSharePermission.
SetSysConnectionFlag
ConnectionFlag.
Definition set.h:72
Result setsysSetTvSettings(const SetSysTvSettings *settings)
SetTvSettings.
Result setsysGetPtmFuelGaugeParameter(SetSysPtmFuelGaugeParameter *out)
GetPtmFuelGaugeParameter.
Result setsysSetConsoleInformationUploadFlag(bool flag)
SetConsoleInformationUploadFlag.
SetSysErrorReportSharePermission
ErrorReportSharePermission.
Definition set.h:182
Result setsysGetRebootlessSystemUpdateVersion(SetSysRebootlessSystemUpdateVersion *out)
GetRebootlessSystemUpdateVersion.
Result setsysGetPrimaryAlbumStorage(SetSysPrimaryAlbumStorage *out)
GetPrimaryAlbumStorage.
SetSysAccessPointSecurityStandard
AccessPointSecurityStandard.
Definition set.h:86
Result setsysGetAutomaticApplicationDownloadFlag(bool *out)
GetAutomaticApplicationDownloadFlag.
Result setsysGetUsbFullKeyEnableFlag(bool *out)
GetUsbFullKeyEnableFlag.
Result setsysGetPctlReadyFlag(bool *out)
GetPctlReadyFlag.
SetSysPrimaryAlbumStorage
PrimaryAlbumStorage.
Definition set.h:138
Result setsysSetPtmBatteryVersion(u8 version)
SetPtmBatteryVersion.
Result setsysSetColorSetId(ColorSetId id)
Sets the current system theme.
Result setsysGetAudioVolume(SetSysAudioDevice device, SetSysAudioVolume *out)
GetAudioVolume.
Result setGetQuestFlag(bool *out)
GetQuestFlag.
Result setsysGetAccountSettings(SetSysAccountSettings *out)
GetAccountSettings.
Result setsysGetUsb30HostEnableFlag(bool *out)
GetUsb30HostEnableFlag.
Result setsysSetAudioOutputMode(SetSysAudioOutputModeTarget target, SetSysAudioOutputMode mode)
SetAudioOutputMode.
Result setsysSetHeadphoneVolumeWarningCount(u32 count)
SetHeadphoneVolumeWarningCount.
Result setsysSetButtonConfigSettingsEmbedded(const SetSysButtonConfigSettings *settings, s32 count)
SetButtonConfigSettingsEmbedded.
Result setsysGetServiceDiscoveryControlSettings(SetSysServiceDiscoveryControlSettings *out)
GetServiceDiscoveryControlSettings.
Result setsysSetUsbFullKeyEnableFlag(bool flag)
SetUsbFullKeyEnableFlag.
Result setsysGetBatteryLot(SetBatteryLot *out)
Gets the SetBatteryLot.
Result setsysGetPtmBatteryVersion(u8 *out)
GetPtmBatteryVersion.
void setsysExit(void)
Exit setsys.
Result setsysSetEulaVersions(const SetSysEulaVersion *versions, s32 count)
SetEulaVersions.
Result setsysSetThemeKey(const FsArchiveMacKey *key)
SetThemeKey.
Result setsysGetSettingsItemValue(const char *name, const char *item_key, void *value_out, size_t value_out_size, u64 *size_out)
Gets the value of a settings item.
Result setcalGetEticketDeviceCertificate(SetCalRsa2048DeviceCertificate *out)
Gets the SetCalRsa2048DeviceCertificate.
Result setsysGetThemeId(s32 type, SetSysThemeId *out)
GetThemeId.
Result setsysGetThemeSettings(SetSysThemeSettings *out)
GetThemeSettings.
Result setsysGetConsoleSixAxisSensorAccelerationGain(SetSysConsoleSixAxisSensorAccelerationGain *out)
GetConsoleSixAxisSensorAccelerationGain.
Result setsysGetSettingsItemValueSize(const char *name, const char *item_key, u64 *size_out)
Gets the size of a settings item value.
Result setGetDeviceNickname(SetSysDeviceNickName *nickname)
Gets the system's nickname.
Result setsysGetAccountOnlineStorageSettings(s32 *total_out, SetSysAccountOnlineStorageSettings *settings, s32 count)
GetAccountOnlineStorageSettings.
Result setsysGetWirelessCertificationFile(void *buffer, size_t size, u64 *out_size)
GetWirelessCertificationFile.
Result setsysSetInRepairProcessEnableFlag(bool flag)
SetInRepairProcessEnableFlag.
SetSysEulaVersionClockType
EulaVersionClockType.
Definition set.h:110
Result setsysGetEulaVersions(s32 *total_out, SetSysEulaVersion *versions, s32 count)
GetEulaVersions.
Result setsysSetDeviceTimeZoneLocationUpdatedTime(const TimeSteadyClockTimePoint *time_point)
SetDeviceTimeZoneLocationUpdatedTime.
Result setsysSetPushNotificationActivityModeOnSleep(u32 mode)
SetPushNotificationActivityModeOnSleep.
SetSysAutoSettings
AutoSettings.
Definition set.h:93
Result setsysSetBluetoothAfhEnableFlag(bool flag)
SetBluetoothAfhEnableFlag.
Result setsysGetChineseTraditionalInputMethod(SetChineseTraditionalInputMethod *out)
GetChineseTraditionalInputMethod.
Result setsysGetAppletLaunchFlags(u32 *out)
GetAppletLaunchFlags.
Result setsysGetDeviceNickname(SetSysDeviceNickName *nickname)
Gets the system's nickname.
Result setsysSetAppletLaunchFlags(u32 flags)
SetAppletLaunchFlags.
Result setsysGetNfcEnableFlag(bool *out)
GetNfcEnableFlag.
Service * setcalGetServiceSession(void)
Gets the Service object for the actual setcal service session.
Result setsysSetAudioVolume(SetSysAudioDevice device, const SetSysAudioVolume *volume)
SetAudioVolume.
Result setsysGetHeadphoneVolumeWarningCount(u32 *out)
GetHeadphoneVolumeWarningCount.
Result setsysGetButtonConfigSettingsLeft(s32 *total_out, SetSysButtonConfigSettings *settings, s32 count)
GetButtonConfigSettingsLeft.
Result setsysSetWirelessLanEnableFlag(bool flag)
SetWirelessLanEnableFlag.
Result setsysSetAccountOnlineStorageSettings(const SetSysAccountOnlineStorageSettings *settings, s32 count)
SetAccountOnlineStorageSettings.
Result setsysGetMemoryUsageRateFlag(bool *out)
GetMemoryUsageRateFlag.
Result setsysSetNotificationSettings(const SetSysNotificationSettings *settings)
SetNotificationSettings.
Result setsysGetNotificationSettings(SetSysNotificationSettings *out)
GetNotificationSettings.
Result setGetAvailableLanguageCodeCount(s32 *total)
Gets total available LanguageCodes.
Result setInitialize(void)
Initialize set.
Result setcalGetEciDeviceKey(SetCalEccB233DeviceKey *out)
Gets the SetCalEccB233DeviceKey.
Result setsysGetHomeMenuScheme(SetSysHomeMenuScheme *out)
Gets the SetSysHomeMenuScheme.
Result setsysGetBacklightSettings(SetSysBacklightSettings *out)
GetBacklightSettings.
Result setsysGetFirmwareVersionDigest(SetSysFirmwareVersionDigest *out)
GetFirmwareVersionDigest.
Result setsysGetWirelessCertificationFileSize(u64 *out_size)
GetWirelessCertificationFileSize.
Result setsysGetPtmBatteryLot(SetBatteryLot *out)
GetPtmBatteryLot.
Result setsysGetBluetoothAfhEnableFlag(bool *out)
GetBluetoothAfhEnableFlag.
Result setGetLanguageCode(u64 *LanguageCode)
Gets the current LanguageCode, setGetSystemLanguage should be used instead normally.
void setcalExit(void)
Exit setcal.
Result setMakeLanguageCode(SetLanguage Language, u64 *LanguageCode)
Converts SetLanguage to LanguageCode.
Result setsysGetT(bool *out)
Returns Terra platform type flag.
Result setsysGetBlePairingSettings(s32 *total_out, SetSysBlePairingSettings *settings, s32 count)
GetBlePairingSettings.
Result setsysSetSpeakerAutoMuteFlag(bool flag)
SetSpeakerAutoMuteFlag.
Result setsysSetUserSystemClockAutomaticCorrectionUpdatedTime(const TimeSteadyClockTimePoint *time_point)
SetUserSystemClockAutomaticCorrectionUpdatedTime.
Result setsysSetEdid(const SetSysEdid *edid)
SetEdid.
Result setsysSetConsoleSixAxisSensorAccelerationGain(const SetSysConsoleSixAxisSensorAccelerationGain *gain)
SetConsoleSixAxisSensorAccelerationGain.
Result setsysSetVibrationMasterVolume(float volume)
SetVibrationMasterVolume.
Result setsysSetUserSystemClockContext(const TimeSystemClockContext *context)
SetUserSystemClockContext.
Result setsysSetServiceDiscoveryControlSettings(SetSysServiceDiscoveryControlSettings settings)
SetServiceDiscoveryControlSettings.
Result setsysSetAccountSettings(SetSysAccountSettings settings)
SetAccountSettings.
Result setsysGetConsoleInformationUploadFlag(bool *out)
GetConsoleInformationUploadFlag.
Result setsysSetLockScreenFlag(bool flag)
SetLockScreenFlag.
Result setsysSetNfcEnableFlag(bool flag)
SetNfcEnableFlag.
Result setsysSetDeviceTimeZoneLocationName(const TimeLocationName *name)
SetDeviceTimeZoneLocationName.
Result setsysSetThemeSettings(const SetSysThemeSettings *settings)
SetThemeSettings.
SetSysAccessPointSecurityType
AccessPointSecurityType.
Definition set.h:78
Result setGetRegionCode(SetRegion *out)
Gets the RegionCode.
Result setsysSetButtonConfigRegisteredSettingsEmbedded(const SetSysButtonConfigRegisteredSettings *settings)
SetButtonConfigRegisteredSettingsEmbedded.
Result setsysGetFirmwareVersion(SetSysFirmwareVersion *out)
Gets the system firmware version.
Result setsysGetLdnChannel(s32 *out)
GetLdnChannel.
Result setsysGetConsoleSixAxisSensorAccelerationBias(SetSysConsoleSixAxisSensorAccelerationBias *out)
GetConsoleSixAxisSensorAccelerationBias.
Result setcalGetBatteryLot(SetBatteryLot *out)
Gets the SetBatteryLot.
Result setsysGetNxControllerSettings(s32 *total_out, SetSysNxControllerLegacySettings *settings, s32 count)
GetNxControllerSettings.
Result setsysSetAccountNotificationSettings(const SetSysAccountNotificationSettings *settings, s32 count)
SetAccountNotificationSettings.
Result setsysSetPtmCycleCountReliability(SetSysPtmCycleCountReliability reliability)
SetPtmCycleCountReliability.
Result setsysGetUsb30EnableFlag(bool *out)
GetUsb30EnableFlag.
Result setsysGetInitialLaunchSettings(SetSysInitialLaunchSettings *out)
GetInitialLaunchSettings.
Result setcalGetAmiiboEcqvCertificate(SetCalAmiiboEcqvCertificate *out)
Gets the SetCalAmiiboEcqvCertificate.
Result setsysGetFatalDirtyFlags(u64 *flags_0, u64 *flags_1)
Gets the settings flags that have changed.
Result setcalGetConsoleSixAxisSensorHorizontalOffset(SetCalConsoleSixAxisSensorHorizontalOffset *out)
Gets the SetCalConsoleSixAxisSensorHorizontalOffset.
Result setsysGetButtonConfigSettingsEmbedded(s32 *total_out, SetSysButtonConfigSettings *settings, s32 count)
GetButtonConfigSettingsEmbedded.
Result setsysSetDeviceNickname(const SetSysDeviceNickName *nickname)
Sets the system's nickname.
Result setcalGetAnalogStickModelParameterR(SetCalAnalogStickModelParameter *out)
Gets the SetCalAnalogStickModelParameter.
Result setsysInitialize(void)
Initialize setsys.
Result setsysSetRequiresRunRepairTimeReviser(bool flag)
SetRequiresRunRepairTimeReviser.
Result setsysSetConsoleSixAxisSensorAngularVelocityGain(const SetSysConsoleSixAxisSensorAngularVelocityGain *gain)
SetConsoleSixAxisSensorAngularVelocityGain.
Result setsysGetPlatformRegion(SetSysPlatformRegion *out)
Gets the SetSysPlatformRegion.
SetSysHandheldSleepPlan
HandheldSleepPlan.
Definition set.h:144
Result setsysGetDeviceTimeZoneLocationName(TimeLocationName *out)
GetDeviceTimeZoneLocationName.
Result setsysGetKeyboardLayout(SetKeyboardLayout *out)
GetKeyboardLayout.
Result setsysSetConsoleSixAxisSensorAngularVelocityTimeBias(const SetSysConsoleSixAxisSensorAngularVelocityTimeBias *bias)
SetConsoleSixAxisSensorAngularVelocityTimeBias.
Result setsysSetConsoleSixAxisSensorAccelerationBias(const SetSysConsoleSixAxisSensorAccelerationBias *bias)
SetConsoleSixAxisSensorAccelerationBias.
Result setsysGetColorSetId(ColorSetId *out)
Gets the current system theme.
Result setsysSetExternalRtcResetFlag(bool flag)
SetExternalRtcResetFlag.
Result setsysAcquireTelemetryDirtyFlagEventHandle(Event *out_event)
Gets an event that settings will signal on flag change.
Result setcalGetSerialNumber(SetCalSerialNumber *out)
Gets the SetCalSerialNumber.
SetLanguage
IDs for Language.
Definition set.h:39
@ SetLanguage_IT
Italian.
Definition set.h:44
@ SetLanguage_KO
Korean.
Definition set.h:47
@ SetLanguage_JA
Japanese.
Definition set.h:40
@ SetLanguage_ES419
"LatinAmericanSpanish"
Definition set.h:54
@ SetLanguage_PT
Portuguese.
Definition set.h:49
@ SetLanguage_ZHHANT
[4.0.0+] ChineseTraditional
Definition set.h:56
@ SetLanguage_ZHHANS
[4.0.0+] ChineseSimplified
Definition set.h:55
@ SetLanguage_FR
French.
Definition set.h:42
@ SetLanguage_Total
Total languages supported by this enum.
Definition set.h:58
@ SetLanguage_ZHTW
Traditional Chinese ("Taiwanese")
Definition set.h:51
@ SetLanguage_ZHCN
Simplified Chinese ("Chinese")
Definition set.h:46
@ SetLanguage_ES
Spanish.
Definition set.h:45
@ SetLanguage_PTBR
[10.1.0+] "BrazilianPortuguese"
Definition set.h:57
@ SetLanguage_FRCA
CA French ("CanadianFrench")
Definition set.h:53
@ SetLanguage_ENUS
US English ("AmericanEnglish")
Definition set.h:41
@ SetLanguage_DE
German.
Definition set.h:43
@ SetLanguage_NL
Dutch.
Definition set.h:48
@ SetLanguage_RU
Russian.
Definition set.h:50
@ SetLanguage_ENGB
GB English ("BritishEnglish")
Definition set.h:52
Result setsysGetConsoleSixAxisSensorAngularVelocityTimeBias(SetSysConsoleSixAxisSensorAngularVelocityTimeBias *out)
GetConsoleSixAxisSensorAngularVelocityTimeBias.
Result setcalGetGyroscopeOffset(SetCalGyroscopeOffset *out)
Gets the SetCalGyroscopeOffset.
SetSysAudioDevice
AudioDevice.
Definition set.h:131
Result setcalGetEticketDeviceKey(SetCalRsa2048DeviceKey *out)
Gets the SetCalRsa2048DeviceKey.
Result setsysGetTouchScreenMode(SetSysTouchScreenMode *out)
Gets the SetSysTouchScreenMode.
Account UserId.
Definition acc.h:25
Address.
Definition btdrv_types.h:245
BdName.
Definition btm_types.h:67
ClassOfDevice.
Definition btm_types.h:72
Kernel-mode event structure.
Definition event.h:13
This is nn::fssystem::ArchiveMacKey. Used by setsysGetThemeKey and setsysSetThemeKey....
Definition fs.h:146
Service object structure.
Definition service.h:14
BatteryLot.
Definition set.h:247
Definition set.h:784
Definition set.h:788
Definition set.h:792
Definition set.h:797
Definition set.h:802
Definition set.h:813
Definition set.h:818
Definition set.h:832
Definition set.h:836
Definition set.h:844
Definition set.h:848
Definition set.h:852
Definition set.h:858
Definition set.h:862
u32 size
Size of the entire key.
Definition set.h:863
Definition set.h:868
Definition set.h:872
Definition set.h:876
Definition set.h:907
u32 code
Region code.
Definition set.h:908
Definition set.h:880
Definition set.h:884
u32 size
Size of the entire key.
Definition set.h:885
Definition set.h:892
Definition set.h:896
u32 size
Size of the certificate data.
Definition set.h:897
Definition set.h:901
u32 size
Size of the entire key.
Definition set.h:902
AccountNotificationSettings.
Definition set.h:409
AccountUid uid
AccountUid
Definition set.h:410
u32 flags
Bitmask with AccountNotificationFlag.
Definition set.h:411
s8 friend_presence_overlay_permission
SetSysFriendPresenceOverlayPermission
Definition set.h:412
AccountOnlineStorageSettings.
Definition set.h:737
AccountUid uid
AccountUid
Definition set.h:738
AccountSettings.
Definition set.h:375
AllowedSslHosts.
Definition set.h:686
AnalogStickUserCalibration.
Definition set.h:744
Definition set.h:379
u32 unk_x0
0 for Console and Tv, 2 for Headphones.
Definition set.h:380
u8 volume
From 0-15.
Definition set.h:381
BacklightSettingsEx.
Definition set.h:300
BacklightSettings.
Definition set.h:288
BlePairingSettings.
Definition set.h:696
BluetoothDevicesSettings.
Definition set.h:313
u8 audio_source_volume
[13.0.0+] AudioSourceVolume
Definition set.h:331
u8 sub_class
SubClass.
Definition set.h:323
BtmClassOfDevice class_of_device
ClassOfDevice.
Definition set.h:316
BtdrvAddress addr
BtdrvAddress
Definition set.h:314
BtmBdName name
[1.0.0-12.1.0] BdName. On 13.0.0+ name2 is used instead.
Definition set.h:315
u8 attribute_mask
AttributeMask.
Definition set.h:324
u16 version
Version.
Definition set.h:319
u16 descriptor_length
DescriptorLength.
Definition set.h:325
u32 audio_flags
[14.0.0+] AudioFlags
Definition set.h:334
u16 vid
Vid.
Definition set.h:321
u8 link_key_present
LinkKeyPresent.
Definition set.h:318
u8 key_type
KeyType.
Definition set.h:327
u16 pid
Pid.
Definition set.h:322
u16 brr_size
BrrSize.
Definition set.h:329
u8 audio_sink_volume
[15.0.0+] AudioSinkVolume
Definition set.h:333
u8 device_type
DeviceType.
Definition set.h:328
u32 trusted_services
TrustedServices.
Definition set.h:320
ButtonConfigRegisteredSettings.
Definition set.h:780
ButtonConfigSettings.
Definition set.h:775
Actually nn::util::Color4u8Type.
Definition set.h:616
ConsoleSixAxisSensorAccelerationBias.
Definition set.h:646
ConsoleSixAxisSensorAccelerationGain.
Definition set.h:660
ConsoleSixAxisSensorAngularAcceleration.
Definition set.h:717
ConsoleSixAxisSensorAngularVelocityBias.
Definition set.h:653
ConsoleSixAxisSensorAngularVelocityGain.
Definition set.h:673
ConsoleSixAxisSensorAngularVelocityTimeBias.
Definition set.h:710
Definition set.h:460
DataDeletionSettings.
Definition set.h:581
u32 flags
Bitmask with DataDeletionFlag.
Definition set.h:582
s32 use_count
Use count.
Definition set.h:583
DeviceNickName.
Definition set.h:365
Edid.
Definition set.h:515
u8 x_resolution
Real value is (val + 31) * 8 pixels.
Definition set.h:547
u8 vertical_frequency
Real value is val + 60 Hz.
Definition set.h:548
SetSysExtensionBlock data2
[13.0.0+]
Definition set.h:576
u8 pixel_clock_rate_max
Rounded up to multiples of 10 MHz.
Definition set.h:568
u16 pnp_id
Big-endian set of 3 5-bit values representing letters, 1 = A .. 26 = Z.
Definition set.h:517
u8 checksum
Sum of all 128 bytes should equal 0 mod 256.
Definition set.h:573
u8 manufacture_year
Real year is 1990 + val.
Definition set.h:521
u8 aspect_ratio
0 = 16:10, 1 = 4:3, 2 = 5:4, 3 = 16:9.
Definition set.h:549
SetSysExtensionBlock data3
[13.0.0+]
Definition set.h:577
EulaVersion.
Definition set.h:385
s32 clock_type
SetSysEulaVersionClockType
Definition set.h:388
u64 network_clock_time
POSIX timestamp.
Definition set.h:390
TimeSteadyClockTimePoint steady_clock_time
TimeSteadyClockTimePoint
Definition set.h:391
Definition set.h:490
u8 extension_tag
2 = CEA EDID timing extension, 0x70 = DisplayID Extension Block, 0xF0 = EDID Extension Block Map
Definition set.h:491
u8 extended_checksum
Sum of 128 extended bytes should equal 0 mod 256.
Definition set.h:511
Structure returned by setsysGetFirmwareVersionDigest.
Definition set.h:355
Structure returned by setsysGetFirmwareVersion.
Definition set.h:339
Output from setsysGetHomeMenuScheme. This contains RGBA8 colors which correspond with the physical sh...
Definition set.h:766
u32 back_color
Back Color.
Definition set.h:768
u32 sub_color
Sub Color.
Definition set.h:769
u32 extra_color
Extra Color.
Definition set.h:771
u32 bezel_color
Bezel Color.
Definition set.h:770
u32 main_color
Main Color.
Definition set.h:767
HostFsMountPoint.
Definition set.h:691
InitialLaunchSettings.
Definition set.h:594
TimeSteadyClockTimePoint timestamp
TimeSteadyClockTimePoint timestamp.
Definition set.h:597
u32 flags
Bitmask with InitialLaunchFlag.
Definition set.h:595
u32 pad
Padding.
Definition set.h:596
LcdBacklightBrightnessMapping.
Definition set.h:281
Definition set.h:428
u16 pixel_clock
In 10 kHz units.
Definition set.h:429
NetworkSettings.
Definition set.h:252
u32 auto_settings
Bitmask with SetSysAutoSettings.
Definition set.h:264
u32 access_point_security_type
Bitmask with SetSysAccessPointSecurityType.
Definition set.h:260
u32 connection_flags
Bitmask with SetSysConnectionFlag.
Definition set.h:255
u32 proxy_flags
Bitmask with SetSysProxyFlags.
Definition set.h:270
u32 connect_to_hidden_network
Bitmask with UseStealthNetworkFlag.
Definition set.h:257
u32 access_point_security_standard
Bitmask with SetSysAccessPointSecurityStandard.
Definition set.h:261
NotificationSettings.
Definition set.h:401
u32 flags
Bitmask with NotificationFlag.
Definition set.h:402
SetSysNotificationTime end_time
SetSysNotificationTime
Definition set.h:405
SetSysNotificationTime start_time
SetSysNotificationTime
Definition set.h:404
s32 volume
SetSysNotificationVolume
Definition set.h:403
NotificationTime.
Definition set.h:395
NxControllerLegacySettings.
Definition set.h:621
u8 interface_type
Bitmask with XcdInterfaceType.
Definition set.h:629
u8 type
SetSysControllerType.
Definition set.h:623
NxControllerSettings.
Definition set.h:633
u8 type
SetSysControllerType.
Definition set.h:635
u8 interface_type
Bitmask with XcdInterfaceType.
Definition set.h:641
PtmFuelGaugeParameter.
Definition set.h:601
u32 cycles_actual
Keeps track of cycles. The fuel gauge cycles reg is reset if > 2.00 cycles and added here.
Definition set.h:612
u16 cycles
Normally keeps the cycles reg. Unused and contains stack garbage.
Definition set.h:611
RebootlessSystemUpdateVersion. This is the content of the RebootlessSystemUpdateVersion SystemData,...
Definition set.h:730
Structure returned by setsysGetSerialNumber.
Definition set.h:360
SleepSettings.
Definition set.h:587
s32 handheld_sleep_plan
SetSysHandheldSleepPlan
Definition set.h:589
u32 flags
Bitmask with SleepFlag.
Definition set.h:588
s32 console_sleep_plan
SetSysConsoleSleepPlan
Definition set.h:590
ThemeId.
Definition set.h:756
ThemeSettings.
Definition set.h:761
TvSettings.
Definition set.h:417
s32 tv_resolution
SetSysTvResolution
Definition set.h:419
float gamma
Gamma.
Definition set.h:424
s32 cmu_mode
SetSysCmuMode
Definition set.h:422
s32 hdmi_content_type
SetSysHdmiContentType
Definition set.h:420
float contrast
Contrast.
Definition set.h:425
u32 flags
Bitmask with TvFlag.
Definition set.h:418
s32 rgb_range
SetSysRgbRange
Definition set.h:421
u32 underscan
Underscan.
Definition set.h:423
UserSelectorSettings.
Definition set.h:370
u32 flags
Bitmask with SetSysUserSelectorFlag.
Definition set.h:371
Definition time.h:51
Definition time.h:55
Definition time.h:65
Definition types.h:48
#define BIT(n)
Creates a bitmask from a bit number.
Definition types.h:54
uint64_t u64
64-bit unsigned integer.
Definition types.h:22
uint8_t u8
8-bit unsigned integer.
Definition types.h:19
int8_t s8
8-bit signed integer.
Definition types.h:25
#define NX_PACKED
Packs a struct so that it won't include padding bytes.
Definition types.h:63
uint16_t u16
16-bit unsigned integer.
Definition types.h:20
u32 Result
Function error code result type.
Definition types.h:44
int32_t s32
32-bit signed integer.
Definition types.h:27
uint32_t u32
32-bit unsigned integer.
Definition types.h:21