Commit Graph

855 Commits

Author SHA1 Message Date
yellows8
41e75d0b7d Removed AppletStorage.isHandleStorage since it's not usable for storages not created by the current process. Hence, appletStorageGetSize no longer supports HandleStorage. 2018-12-15 18:11:21 -05:00
yellows8
10826dda13 Added appletPopLaunchParameter. 2018-12-15 17:31:36 -05:00
yellows8
d65c2ec94b Added support for tmem with AppletStorage, and added HandleStorage support. applet IPC improvements. 2018-12-15 16:34:23 -05:00
yellows8
1077cc2b46 Implemented AppletStorage. Various IPC improvements in applet.c, etc. 2018-12-13 22:48:48 -05:00
yellows8
8b86e4ecb8 Use domains for applet. 2018-12-12 21:13:01 -05:00
Michael Scire
3cff199b42 Add remaining pm:shell services, address issues 2018-12-10 00:12:46 +01:00
Michael Scire
0fad4244da Add ro:dmnt, ldr:ro. 2018-12-10 00:12:46 +01:00
Michael Scire
8e1ba23b83 pm: Add remaining pm:dmnt services 2018-12-10 00:12:46 +01:00
Michael Scire
0a92b0eb07 ns: Implement all of ns:dev 2018-12-10 00:12:46 +01:00
plutooo
bfad4d4557 Fix whitespace 2018-12-09 19:07:39 +01:00
plutooo
c328a74f71 Add fsIsExFatSupported() 2018-12-09 17:06:47 +01:00
Lioncash
69a98dc0cb kernel/svc: Correct SVC instruction values for svcMapPhysicalMemory and svcUnmapPhysicalMemory
0x2A corresponds to svcFlushEntireDataCache, while 0x2B corresponds to
svcFlushDataCache.
2018-12-07 12:19:16 +01:00
Michael Scire
40bccd7838 Add svcTerminateDebugProcess 2018-12-06 13:18:06 +01:00
yellows8
bc2dff0361 Added hidAcquireNpadStyleSetUpdateEventHandle. 2018-12-02 16:48:59 -05:00
Michael Scire
2a831c6196 Fix struct definition for splSetConfig 2018-12-01 21:29:41 +01:00
yellows8
ee066a27ee Implemented usbhs endpoints, other adjustments. Updated field name in UsbHsXferReport. Added defines in usb.h from libusb. 2018-11-30 20:13:58 -05:00
yellows8
31cea3a6b6 Implemented usbhs control transfers. Fixed eventCtrlXfer init. Updated a field name in UsbHsXferReport. 2018-11-30 20:13:58 -05:00
yellows8
2049ff081d Updated usbhs comments and store the interface ID in UsbHsClientIfSession. Added: usbHsIfSetInterface, usbHsIfGetInterface, usbHsIfGetAlternateInterface, usbHsIfGetCurrentFrame, and usbHsIfResetDevice. 2018-11-30 20:13:58 -05:00
yellows8
83dfc58adb Moved interface-specific data from UsbHsInterface into UsbHsInterfaceInfo. Added usbHsAcquireUsbIf/usbHsIfClose and the related structs. 2018-11-30 20:13:58 -05:00
yellows8
f1ba199d1c Initial usbhs support. 2018-11-30 20:13:58 -05:00
yellows8
725ac9f00a Moved usb code specific to usbds into seperate .c/.h. 2018-11-28 17:34:53 -05:00
yellows8
3726eb8950 Use PACKED for _usbDsGetSession resp, required for domains. Use domains for usbds, with changes from @SciresM. 2018-11-28 16:40:45 -05:00
yellows8
7ae659c2cb Handle the output u8 in _usbDsGetSession, without using it in the callers. 2018-11-28 15:03:06 -05:00
yellows8
36bed9f8fc Added support for getting file timestamps via 3.0.0+ fsFsGetFileTimeStampRaw, *stat() timestamps are now set when fsFsGetFileTimeStampRaw is successful. This is now used in fsdev_open() for supporting fstat. The sysver is now checked in fsFsCleanDirectoryRecursively(). Closes #204. 2018-11-20 14:22:19 -05:00
pixel-stuck
a7577f7b56 Add pcvSetVoltageEnabled and pcvGetVoltageEnabled (#208)
* Add pcvSetVoltageEnabled and pcvGetVoltageEnabled
2018-11-19 10:37:59 -05:00
yellows8
8767ea798b Determine whether to use AUDREN_REVISION_1-4 via the sysver, instead of hard-coding it for the 3.0+ rev. Updated comments and added AUDREN_REVISION_5/AUDREN_REVISION_6 defines. 2018-11-17 11:43:24 -05:00
yellows8
e7117a7903 Added enum for hidSetNpadJoyHoldType. Improved hid docs. Use hidSetNpadJoyHoldType during hid init/exit. Closes #206. 2018-11-15 21:36:34 -05:00
yellows8
12ee6e502e Fixed register corruption in crt0 introduced by the exception commit. Only handle exceptions when __libnx_exception_handler is defined by the user, and updated comments. 2018-11-14 20:55:17 -05:00
Michael Scire
4e4d5ef320 fatal: Implement fatalWithContext 2018-11-14 19:52:40 -05:00
Michael Scire
e943eb6ea5 Add fs gamecard attribute retrieve commands 2018-11-14 19:52:40 -05:00
Michael Scire
7b7bd9dd9d Add setsys fatal commands 2018-11-14 19:52:40 -05:00
Michael Scire
5386edef4f Add gpio wrapper 2018-11-14 19:52:40 -05:00
Michael Scire
dec6f1ffe1 Add i2cOpenSession, i2csessionSendAuto 2018-11-14 19:52:40 -05:00
Michael Scire
3ba8a5aa87 Add lblSwitchBacklightOn and lblSwitchBacklightOff 2018-11-14 19:52:40 -05:00
Michael Scire
8cb9004a2f Add pcvGetClockRate/pcvSetClockRate 2018-11-14 19:52:40 -05:00
Michael Scire
27936900d0 Add enum for PsmBatteryVoltageState 2018-11-14 19:52:40 -05:00
Michael Scire
94dc8f75f9 Add bpcGetSleepButtonState 2018-11-14 19:52:40 -05:00
Michael Scire
ee55b63f79 Add spsm wrapper. 2018-11-14 19:52:40 -05:00
yellows8
5e69f760fb Added support for exception-handling. 2018-11-14 16:17:02 -05:00
SciresM
e19765445d fs: Add fsFsQueryEntry (and fsFsSetArchiveBit helper) (#202)
* fs: Add fsFsSetArchiveBit

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

* Make fsOpenFileSystem and fsOpenFileSystemWithId work on all firmware versions

* Add some comments for fsOpenFileSystem(WithId)
2018-09-09 19:56:38 +02:00
Random
122fec028c Added nsListApplicationRecord and nsListContentMetaStatus (#163) 2018-09-09 19:56:16 +02:00
neonsea
20a39ef86c Add appletBeginBlockingHomeButton() and appletEndBlockingHomeButton() (#165) 2018-09-09 19:55:53 +02:00
XorTroll
cd813ddb60 Add psm service and psmGetBatteryChargePercentage function (fixed) (#166) 2018-09-09 19:55:36 +02:00
Michael Scire
6ef26bff1a Implement kernelAbove600() 2018-09-09 19:55:12 +02:00
fincs
81d56a9e23 console: disable forced flush/swap/vblank due to performance reasons 2018-09-08 14:19:24 +02:00
fincs
52c0cee10c Add nvioctlChannel_SetTimeout & nvChannelSetTimeout 2018-09-08 14:17:54 +02:00
fincs
999edaa8b2 Changes to NvCmdList and NvGpfifo, see details:
- NvCmdList:
  - Added 'offset' parameter: start of the cmdlist within the buffer
  - Added nvCmdListReset for resetting a cmdlist (offset/num_cmds cleared)
- NvGpfifo:
  - nvGpfifoCreate: disabled fence wait
  - nvGpfifoSubmit -> nvGpfifoSubmitCmdList:
    - Added fence_incr parameter
    - Cleaned up flags and gpfifo entry creation
    - Now advances cmdlist offset by the number of cmds submitted
      instead of going back to the beginning
2018-09-07 17:27:15 +02:00
fincs
7f4001bec2 Potentially fix race condition nvGpfifoCreate by waiting on the fence returned by nvioctlChannel_AllocGpfifoEx2 2018-09-05 14:00:28 +02:00
fincs
d718a8dd28 NvBufferFlags_Nintendo doesn't exist, it's a misreading of the alignment parameter 2018-09-05 13:59:50 +02:00
fincs
e3a7187973 gfx: Remove gfxSetDrawFlip. Make 0 the default transform instead of FLIP_V. 2018-08-31 20:14:50 +02:00
fincs
0d1b8bd723 BqQueueBufferInput: add swapInterval field (purpose currently unknown) 2018-08-31 20:11:53 +02:00
fincs
651dd72ac1 Add bqCancelBuffer and use it in gfx.c 2018-08-31 14:14:54 +02:00
fincs
c8ebe8a3b5 buffer_producer: convert Binder error codes to Result values 2018-08-31 14:05:04 +02:00
fincs
a62fae427b Introduce Module_LibnxBinder result codes (based on Android status_t) and binderConvertErrorCode 2018-08-31 13:59:18 +02:00
fincs
819a6f0d89 display/binder.h: refactoring and other changes:
- Removed session_handle/native_handle state
- Consequence of the above: simplified binderCreate/binderInitSession
- Now using viGetSession_IHOSBinderDriverRelay internally
- Changed binderGetNativeHandle to return an Event
- Added readable aliases for binderAdjustRefcount
- gfx: now using async bqDequeueBuffer when the binder event is available
2018-08-31 13:05:23 +02:00
fincs
60cbb68f46 gfx: use new NvFence waiting code 2018-08-31 13:05:23 +02:00
fincs
a70acdd445 Implement nvFence 2018-08-31 13:05:23 +02:00
fincs
57e1f5f4cb nvioctlNvhostCtrl: add EventWaitAsync, EventUnregister; fix EventRegister 2018-08-31 13:05:23 +02:00
fincs
99f37184fb nvQueryEvent: return an Event instead of a raw Handle 2018-08-31 13:05:23 +02:00
fincs
7f8b6af64c runtime/newlib.c: use armGetSystemTick instead of svcGetSystemTick 2018-08-31 13:05:23 +02:00
fincs
b26bb6ce76 viGetDisplayVsyncEvent: return an Event instead of a raw handle 2018-08-31 13:05:22 +02:00
fincs
88e9d3bb83 kernel/event.h: several fixes, including autoclear support 2018-08-31 13:05:22 +02:00
fincs
f2f59c75c0 display/gfx.h & buffer_producer.h: Start major refactor, highly WIP 2018-08-31 13:05:22 +02:00
fincs
10684e205a nvidia/fence.h: sketching on NvFence/NvMultiFence {not implemented} 2018-08-31 13:05:22 +02:00
fincs
30e2ca8ec3 Introduce nvidia/types.h & move NvBufferKind to it (renamed to NvKind) 2018-08-31 13:05:22 +02:00
fincs
27f5aecea8 nvgfx: Strip down to bare minimum - remove unused logic 2018-08-31 13:05:22 +02:00
fincs
4e7159ce02 VI service: major revamp, see details:
- Added viOpenDefaultDisplay.
- Replaced viOpenLayer with viCreateLayer.
- NativeWindow parcel data is now parsed by viCreateLayer, and the
  ViLayer struct contains a new igbp_binder_obj_id field.
- LayerFlags/LayerId parameters replaced by weak global variables
  __nx_vi_layer_id/__nx_vi_stray_layer_flags.
- The root vi:* session is closed on startup.
- Simplified corresponding gfx code.
- Misc style fixes
2018-08-31 13:05:22 +02:00
fincs
180cd9b550 display/parcel.h: publish ParcelHeader struct 2018-08-31 13:05:22 +02:00
fincs
a0b3d3e193 source/nvidia/: do NOT include <switch.h> 2018-08-31 13:05:22 +02:00
Jules Blok
e234129598 gfx: Add a buffer index to gfxGetFramebufferHandle(). 2018-08-31 13:05:22 +02:00
Jules Blok
4f331eb9f7 gfx: Add function to query framebuffer pitch. 2018-08-31 13:05:22 +02:00
Jules Blok
06e50f74ab gfx: Add a call to get the framebuffer nvmap handle. 2018-08-31 13:05:22 +02:00
Jules Blok
d93c45a18d gpfifo: Reset the command buffer after submission.
Don't forget to wait on the fence before re-using the buffer.
2018-08-31 13:05:22 +02:00
Jules Blok
9ce884f29e cmd_list: The number of entries is the number of ints. 2018-08-31 13:05:22 +02:00
Jules Blok
3a750138c5 buffer: Align the size based on the param. 2018-08-31 13:05:22 +02:00
Jules Blok
cd85610ebb Fix nvBuffer memory allocation failure 2018-08-31 13:05:22 +02:00
plutooo
de93886c56 Buildfix 2018-08-31 13:05:22 +02:00
plutooo
a3a2e57fc2 More updates to nvidia 2018-08-31 13:05:22 +02:00
plutooo
1c88d99131 Implement cmd list 2018-08-31 13:05:22 +02:00
plutooo
d6dbb59872 Change code style 2018-08-31 13:05:22 +02:00
plutooo
9c234d4d40 Started sketching on cmd lists 2018-08-31 13:05:22 +02:00
plutooo
50718ddccb Bad cleanup in gpu.c 2018-08-31 13:05:22 +02:00
plutooo
6d21700ff7 Get rid of flag todo 2018-08-31 13:05:22 +02:00
plutooo
28cac45af8 Completing error notifier 2018-08-31 13:05:22 +02:00
plutooo
267e4e509b Error notifier bringup 2018-08-31 13:05:22 +02:00
plutooo
d22bc791f4 Nv fixes 2018-08-31 13:05:22 +02:00
plutooo
d6f2e1118c Zcull context works 2018-08-31 13:05:22 +02:00
plutooo
420d445a84 Minor fixes, now gets to whitescreen 2018-08-31 13:05:22 +02:00
plutooo
577a76dc06 Minor fixes, adding custom flag to buffer allocation 2018-08-31 13:05:22 +02:00
plutooo
1a22b484f8 Implemented zcull_ctx, 3d_ctx, random fixes 2018-08-31 13:05:21 +02:00
plutooo
cff044f497 Implement 3d_ctx 2018-08-31 13:05:21 +02:00
plutooo
87d29bdeb3 gpu takes reference on singletons 2018-08-31 13:05:21 +02:00
plutooo
f62f6e8b54 Add refcounting to nvidia stuff 2018-08-31 13:05:21 +02:00
plutooo
e7daaf1e71 Hide nv tmem size from gfx 2018-08-31 13:05:21 +02:00
plutooo
74958c57ce Use reference counting across services 2018-08-31 13:05:21 +02:00
plutooo
194e335532 Let nv reference applet 2018-08-31 13:05:21 +02:00
plutooo
efacee6956 Simplify nv 2018-08-31 13:05:21 +02:00
plutooo
4b20f609a9 Stubbed 3d_ctx 2018-08-31 13:05:21 +02:00
plutooo
1660f99afe Stubbed gpfifo, zcull_ctx 2018-08-31 13:05:21 +02:00
plutooo
4bd1d3313c Fix nvgfx, add nvinfo 2018-08-31 13:05:21 +02:00
plutooo
f6aa4e3d52 Minimize nvgfx.c 2018-08-31 13:05:21 +02:00
plutooo
b24f6babbb Make compilable 2018-08-31 13:05:21 +02:00
plutooo
61ebd9ddfd Started implementing channels 2018-08-31 13:05:21 +02:00
plutooo
9a759c26f5 Rename nvmap->buffer 2018-08-31 13:05:21 +02:00
plutooo
04751087ca Stylechanges to binder, and implemented gpu address space 2018-08-31 13:05:21 +02:00
plutooo
cd753b1b58 Implemented nvmap.c 2018-08-31 13:05:21 +02:00
plutooo
112b2b5d8e Move nvidia driver to nvidia/ 2018-08-31 13:05:21 +02:00
plutooo
d8bb563546 Renamed gfx/ to display/ 2018-08-31 13:05:21 +02:00
plutooo
978c3f7f15 Style fixes, use structs for parsing parcels, renamed bufferProducer to bq 2018-08-31 13:05:21 +02:00
fincs
772c839c8c Add audio/ ("AudioDriver"), a high level wrapper around audren 2018-08-31 13:05:21 +02:00
fincs
6fbf25fb62 Add audren:u IPC service wrapper with structure definitions 2018-08-31 13:05:21 +02:00
fincs
80439a186b Add MOD0 header to crt0 2018-08-31 13:05:21 +02:00
plutooo
68a77ac950 Close sm session properly 2018-08-28 21:29:55 +02:00
David Marcec
d91c315f77 Fixed nifm not initializing properly for < 3.0.0 2018-08-27 16:10:53 +02:00
XorTroll
722450ae25 Add bpc service with ShutdownSystem and RebootSystem commands (#144) 2018-08-24 16:21:16 +02:00
Juan Antonio Hernández Cánovas
377683acd5 Add rwlockInit (#155) 2018-08-24 16:20:01 +02:00
yellows8
3513c91c3c Added the remaining init for AppletType_SystemApplet. 2018-08-17 21:55:37 -04:00
yellows8
a7ba75ea1a Added comment regarding the AppletType_Application double-init issue. 2018-08-15 16:32:11 -04:00
plutooo
fb42ebe53a Fix memory leak in tmemCreate 2018-08-11 15:01:12 +02:00
Lioncash
d3f388d2c8 socket: Correct missing break within _socketParseBsdResult() 2018-08-09 14:53:41 +02:00
Lioncash
12a473ecbe hid: Correct bitwise AND for pro controllers in hidInitializeVibrationDevices()
LAYOUT_PROCONTROLLER is a value of zero, so the bitwise AND condition
here would always be false (TYPE_PROCONTROLLER, on the other hand is a
value of 1)
2018-08-09 14:53:26 +02:00
fincs
f3b530cea3 C11 threads: enable preemptive scheduler and load balancing 2018-08-06 17:59:51 +02:00
fincs
b181d725ac Use revised CondVar API in C11 threads impl 2018-08-05 14:32:10 +02:00
fincs
1e349b6ce8 Change CondVar API to have the mutex be passed to condvarWait* instead of condvarInit 2018-08-05 14:31:31 +02:00
fincs
062ef2b188 Add svcGetThreadCoreMask and svcSetThreadCoreMask 2018-08-05 14:30:08 +02:00
fincs
d255fe730b Experimental partial C11 threads support 2018-08-05 13:23:08 +02:00
plutooo
9fc5e85c88 Event bringup 2018-08-05 13:23:08 +02:00
Jakob Dietrich
8e19bb5b0d Fix semaphoreTryWait 2018-08-04 12:14:02 +02:00
Michael Scire
81e6972ae1 Fatal: fix marshalling 2018-07-28 18:24:19 -07:00
Rajko Stojadinovic
d726c7c55c Implement some missing fs functions (#141) 2018-07-28 17:49:14 +02:00
klockee
27b8868646 Wrapped and implemented fsOpenBisFilesystem() (#140) 2018-07-28 17:08:42 +02:00
Rajko Stojadinovic
01fb4218ba Add ncmContentStorageGetPlaceHolderPath and ncmContentStorageCleanupAllPlaceHolder 2018-07-27 18:14:43 +02:00
Rajko Stojadinovic
1b7acba590 add ncmContentStorageDisableForcibly and ncmContentMetaDatabaseDisableForcibly 2018-07-27 18:14:43 +02:00
Rajko Stojadinovic
c3278ffd34 Add ncmContentStorage functions needed for writing content 2018-07-27 18:14:43 +02:00
Jakob Dietrich
a180a36cb3 Fixed hid in sysmodules (#135) 2018-07-27 18:01:41 +02:00
Dave Murphy
be509f62ce return through libc exit rather than __libnx_exit directly (#139) 2018-07-26 18:01:40 +02:00
Rajko Stojadinovic
e1d50dc129 Fix signature of ncmContentMetaDatabaseSet/Get, add ncmContentMetaDatabaseList (#134)
* Fix ncmContentMetaDatabaseSet/ncmContentMetaDatabaseGet, add ncmContentMetaDatabaseList
2018-07-25 20:15:54 -04:00
Oliver Kuckertz
1eafa1b283 Fix data race by reordering in _CacheValues 2018-07-22 17:03:36 +02:00
Joel16
2bcede91ba Add fsFsCleanDirectoryRecursively 2018-07-19 11:33:56 -04:00
Dave Murphy
aa3c35e6e3 adjust fsdev_fixpath for cwd changes (#132)
* adjust fsdev_fixpath for cwd changes
2018-07-19 11:31:51 -04:00
Adubbz
d48cf6aa2e Added ncm to switch.h, fixed wrong order in ncmContentMetaDatabaseListApplication 2018-07-19 11:29:48 -04:00
tesnos
9530da3237 Add fsOpenBisStorage and fsStorageGetSize (#130)
* add fsOpenBisStorage and fsStorageGetSize
2018-07-19 11:16:38 -04:00
Adubbz
e4c3f7d3a2 Added ncm commands (#129) 2018-07-07 04:03:48 +02:00
Daniel Edwards
ffc404a7f6 Added accountGetUserCount and accountListAllUsers (#103)
* Added accountGetUserCount and accountListAllUsers
2018-07-01 16:34:21 -04:00
Kevoot
fbe2c1f2ce Add Semaphore (#125) 2018-07-01 00:45:41 +02:00
SciresM
97b295acbc Fatal: Only exit process if required, exit cleanly. (#127)
* Fatal: Only exit process if required, exit cleanly.
2018-06-26 11:28:07 -04:00
Dave Murphy
35be7ac772 allow user additions to init/exit code (#124)
* allow user additions to init/exit code
2018-06-25 12:42:52 -04:00
SciresM
dbbaf64ad3 ns:dev: Add TerminateProcess and TerminateProgram (#122)
* ns:dev: Add TerminateProcess and TerminateProgram
2018-06-25 12:02:08 -04:00
Michael Scire
9770f4bb18 Implement svcGetThreadList 2018-06-25 11:18:07 -04:00
Michael Scire
481d27d1f1 Implement svcGetDebugThreadParam 2018-06-25 11:18:07 -04:00
gdkchan
b55317511c Fix mutexUnlock 2018-06-25 11:12:45 -04:00
Michael Scire
c26e410ed8 Fatal: Make fatalSimple not create report, add FatalType enum 2018-06-25 12:33:15 +02:00
Dave Murphy
8b2b12b454 fix _IOC cast 2018-06-14 18:26:29 -04:00
Dave Murphy
4e4d2fe3c6 translate horizon errno to newlib errno 2018-06-14 18:25:52 -04:00
Dave Murphy
70cd9e017d fix ioctl 2018-06-14 01:51:36 +02:00
Joel16
eb3c264e88 Add setsysSetColorSetId and region codes 2018-06-13 19:34:20 -04:00
Dave Murphy
9860ad331c implement nanosleep 2018-06-14 00:49:20 +02:00
jarulo
8b793729fc Fix inet_pton4 2018-06-12 13:08:27 +02:00
Somebody Whoisbored
ad4af954c2 Added nifm service (#110)
* Added nifm service
* Properly implemented gethostid
* Implemented gethostname
2018-06-07 18:00:51 -04:00
Joel
3c6344d7f3 Add more set:sys Get*/Set* functions (#108)
* Use setsysGetFlag/setsysSetFlag instead of setsysGet*/setsysSet*.
* Added more setsys Flags (now handled via an enum).
2018-06-07 16:06:36 -04:00
Dave Murphy
3326d5e62d Time fixes (#102)
* provide microseconds to gettimeofday
* implement clock functions
2018-06-07 15:35:41 -04:00
Joel
1abfb02460 Add nsGetSpace commands (#111)
* Add nsGetSpace commands
2018-06-05 22:15:52 -04:00
Adubbz
d3889fb9ed Added a few misc IPC wrappers (#107)
* Added a few misc IPC wrappers
2018-06-04 22:05:51 -04:00
jarulo
a5381e43c0 Fix incorrect pointer reference in socketDeserializeAddrInfo 2018-05-29 15:29:39 -04:00
Joel
deab92d486 Add some setsysGet* functions (#98)
* Add some setsysGet* functions
2018-05-22 11:33:45 -04:00
yellows8
b11288ea44 In jitTransitionToWritable() and jitTransitionToExecutable(), only run the JitType_CodeMemory handling code when it's actually needed. Actually free j->rx_addr in jitClose() for JitType_JitMemory. 2018-05-21 16:59:49 -04:00
yellows8
a12eb11eab Sync jit SVC names with wiki + updated the comment for JitType_JitMemory in jit.h. 2018-05-21 14:32:02 -04:00
yellows8
93957370a9 Disable using JitType_JitMemory on 5.0.0+, resulting in falling back to JitType_CodeMemory if available. 2018-05-21 14:04:20 -04:00
yellows8
726f8adfe3 Replaced the hard-coded timeout error constant in nvgfxEventWait() with the one from result.h. This fixes an issue caused by a past commit. 2018-05-19 21:45:18 -04:00
Joel
3605e40dbd Add string.h to remove compile error (#96)
* Add string.h to remove compile error
2018-05-19 15:41:15 -04:00
Joel
c28cae95cd Add setGetSerialNumber (#95) 2018-05-19 16:50:00 +02:00
yellows8
df203f0697 Added hidMergeSingleJoyAsDualJoy(). 2018-05-18 18:42:48 -04:00
Dave Murphy
28ebb9ed0c implement nxlink stdio redirect (#94) 2018-05-17 00:22:47 +02:00
Dave Murphy
71036319a7 translate crlf eol markers to lf for consistency 2018-05-15 12:27:25 +02:00
yellows8
fdf0949562 Fixed parsing in _socketDeserializeHostent(). 2018-05-15 02:10:13 -04:00
Matthew Bell
61d4140773 Implement pm:info (#88)
* Added pm:info and GetTitleId
2018-05-14 21:09:43 -04:00
yellows8
5ebe01191e Fixed hang in _socketDeserializeHostent(). 2018-05-14 12:37:56 -04:00