Commit Graph

1849 Commits

Author SHA1 Message Date
Unknown
bddf244d0b default_icon now included in make install 2018-01-15 22:49:01 +01:00
fincs
fb9c53235e Fix ipc.h C++ compatibility errors (tested by compiling code as .cpp) 2018-01-15 22:48:46 +01:00
fincs
a8a15f7d16 Make fatalSimple error codes unique 2018-01-15 22:48:46 +01:00
yellows8
eec1fc2fcc Added svcSetProcessMemoryPermission and svcMapProcessCodeMemory/svcUnmapProcessCodeMemory. Added PERM_X. 2018-01-13 23:49:54 -05:00
yellows8
197b1900a1 Fixed appletInitialize() which broke during the Service changes. 2018-01-13 01:09:08 -05:00
plutoo
844f72fe67 Panic if any initialization fails 2018-01-13 00:43:38 +01:00
plutoo
61494b77cc Minor stuff 2018-01-13 00:36:31 +01:00
plutoo
d8061f67bd Introduce svcWaitForSynchronizationSingle to clean up code 2018-01-13 00:27:47 +01:00
plutoo
94658b9f60 More loader config 2018-01-13 00:18:04 +01:00
plutoo
fbf0b0643a Missed vi on the first round 2018-01-12 23:53:08 +01:00
plutoo
251e57fa59 Fix bug in newly introduced service impl 2018-01-12 23:31:59 +01:00
plutoo
f70d70f029 Introducing "Service" object, implemented service override, fixing minor formatting mistakes
NOT TESTED :(
2018-01-12 23:29:49 +01:00
cpasjuste
31049f051b Rename ipc function in vi 2018-01-12 22:13:21 +01:00
plutoo
efc7cbf653 Implement heap override 2018-01-12 19:10:46 +01:00
plutoo
3ac366528e
Merge pull request #24 from shinyquagsire23/vi-managedlayer
vi:m ManagedLayer support
2018-01-12 18:25:30 +01:00
shinyquagsire23
e5726cbc83 Move viCreateManagedLayer logic out of viOpenLayer 2018-01-11 19:11:39 -07:00
plutoo
6720355dd1 Bringup loader config block parsing
Not tested yet
2018-01-11 22:59:40 +01:00
plutoo
fd4522423b Hid stylefix 2018-01-11 22:29:16 +01:00
plutoo
7482c849fe Introducing RwLock, make hid threadsafe 2018-01-11 22:25:49 +01:00
plutoo
bf89c7526e Rename ipc functions before it's too late 2018-01-11 21:56:04 +01:00
plutoo
6585261210 Detect debugger and use svcBreak in panic 2018-01-11 21:49:41 +01:00
plutoo
5f860ad4b3 Rename version.{c.h} to detect 2018-01-11 21:43:37 +01:00
plutoo
4a19fb7022 Hide utf under runtime/, fix headers 2018-01-11 21:38:12 +01:00
shinyquagsire23
3fcd8a1596 This should be the ViServiceType 2018-01-09 03:47:13 -07:00
shinyquagsire23
ab3d5adb3d Add viCreateManagedLayer, attempt to use vi:m before using applet 2018-01-09 03:46:49 -07:00
plutoo
e1c762e2bd OCD fix. 2018-01-06 14:03:21 +01:00
plutoo
edcf789b6e C was developed in 1972 2018-01-06 13:54:59 +01:00
plutoo
cac3f735af Renamed misleading dir names "devices/" and "system/" to "runtime/" 2018-01-06 13:45:37 +01:00
plutoo
fbfb5cdba2 NV code style 2018-01-06 13:43:18 +01:00
plutoo
10246ebdbc Binder codestyle fix 2018-01-06 13:39:47 +01:00
plutoo
a63ce5d8bc Align VI code style 2018-01-06 13:34:08 +01:00
plutoo
3ca6e65984 Aligning code style of kernel primitives 2018-01-06 06:10:55 +01:00
plutoo
282fdefe2b Align code style of MemoryInfo 2018-01-06 06:04:35 +01:00
plutoo
fee6b42963 Align code style for AM 2018-01-06 05:57:56 +01:00
yellows8
6bf7eb84bf Added icon modified by @fincs, see README. 2018-01-05 18:21:50 -05:00
yellows8
9b64cfe3f8 Added empty default icon file. 2018-01-01 20:01:35 -05:00
plutoo
916dfb56f0 More threading functionality 2018-01-01 23:32:44 +01:00
plutoo
03e9fdb883 Make _SetupHeap overridable 2018-01-01 22:38:20 +01:00
plutoo
5739fda64a Make allocation of virtmem regions thread-safe 2018-01-01 22:35:54 +01:00
plutoo
53a63d861a Derp 2018-01-01 22:30:29 +01:00
plutoo
5cad71213b Cache version values, fix guard paging of threads on 2.0.0+ 2018-01-01 22:28:12 +01:00
plutoo
91afc81ce1 Detect 4.0.0 2018-01-01 19:52:41 +01:00
yellows8
a0ea8c53df Perf adjustments for gfxGetFramebufferDisplayOffset(). 2017-12-30 02:13:04 -05:00
yellows8
4e77c36c30 Perf adjustments for gfxGetFramebufferDisplayOffset(). 2017-12-29 22:04:15 -05:00
yellows8
28e2759412 Fixed vsync handling. 2017-12-29 18:44:09 -05:00
yellows8
1dda414f31 Implemented apm. 2017-12-29 16:15:17 -05:00
yellows8
02ec6d5c8a Updated the delay code in gfx-init and removed disabled get-{width/height} code. 2017-12-27 18:52:54 -05:00
yellows8
3c297c2a14 Added comment to vsync func. 2017-12-27 18:52:54 -05:00
yellows8
18a0d45afe Added gfxInitResolutionDefault(). Added gfxConfigureAutoResolution() and gfxConfigureAutoResolutionDefault(). 2017-12-27 18:52:54 -05:00
yellows8
b89036f6fd Added user-specified crop handling with gfxConfigureCrop() and gfxConfigureResolution(). Added gfxGetFramebufferResolution(). Updated gfxGetFramebufferDisplayOffset() for handling this. 2017-12-27 18:52:54 -05:00
yellows8
d62709adc7 Added gfxInitResolution() + added gfx.h comments. Updated gfxGetFramebufferDisplayOffset() so that the returned pixel-offset is in a region that's not displayed when the x/y is out-of-bounds. Fixed g_gfx_framebuf_aligned_{width/height} init when the initial width/height is not the default 0. Updated nvioctlNvhostAsGpu_InitializeEx/nvioctlNvhostAsGpu_AllocSpace usage etc, required for using non-720p framebufs. 2017-12-27 18:52:54 -05:00
yellows8
f00bc78569 Moved framebuf width/height/size fields from nvgfx into gfx + code used with those. Moved g_gfxprod_BufferInitData into gfx + renamed it. Moved code for using bufferProducerGraphicBufferInit() / struct init code into gfx. Removed commented out code for g_nvgfx_totalframebufs init. Replaced hard-coded width/height constants in gfx with the width/height fields. 2017-12-27 18:52:53 -05:00
yellows8
e128fd58f1 Disabled nvmap objs which aren't used afterwards which don't use an input_offset for MapBufferEx. Moved bufferProducerGraphicBufferInit() code outside of the loop and added a comment. Only use kind 0xdb for MapBufferEx framebuf init in the loop, since the other kind is unrelated to framebuf. 2017-12-27 18:52:53 -05:00
yellows8
a730cf977f Added bufferProducerRect for crop. Updated a resolution comment and added a comment for crop. 2017-12-27 18:52:53 -05:00
yellows8
a814c79827 Properly setup the data in bufferProducerGraphicBuffer via a struct. Setup size/width/height fields properly in bufferProducerGraphicBuffer, instead of hard-coding. 2017-12-27 18:52:53 -05:00
yellows8
917036cec6 Updated bufferProducerGraphicBuffer struct. 2017-12-27 18:52:53 -05:00
yellows8
dd4a9bbca6 Added bufferProducerGraphicBuffer struct. Parse the bufferProducerRequestBuffer parcel reply properly. Renamed bufferProducerTegraBufferInit to bufferProducerGraphicBufferInit + renamed the enum for it, and handle input/output for it properly. Properly return rc in bufferProducerGraphicBufferInit(). 2017-12-27 18:52:53 -05:00
yellows8
c0780f5267 Fixed flickering. 2017-12-27 18:52:53 -05:00
yellows8
e871eb9695 Added gfxGetFramebufferSize(). 2017-12-27 18:52:53 -05:00
yellows8
c80096e5cc Imported an enum from Android for use with bufferProducerConnect/bufferProducerDisconnect. 2017-12-27 18:52:53 -05:00
yellows8
c921c86922 Updated a comment. 2017-12-27 18:52:53 -05:00
yellows8
3477fff5ee Improved fence handling in _gfxDequeueBuffer(). Clear g_gfx_DequeueBuffer_fence in _gfxInit(). 2017-12-27 18:52:53 -05:00
yellows8
824dadd291 Added better code for gpfifo handling which is disabled, currently broken with the data written into the gpfifo-data mem. Updated nvgfxEventWait(). Load the classnum for nvioctlChannel_AllocObjCtx() from gpu_characteristics. Added disabled code for gpfifo in gfx.c + added a comment. 2017-12-27 18:52:53 -05:00
yellows8
2a26b50459 Removed commented-out code for g_gfxQueueBufferData fence, and added a comment for it. 2017-12-27 18:52:53 -05:00
yellows8
edf2d1417a Handle nvioctlChannel_ZCullBind() properly. 2017-12-27 18:52:53 -05:00
yellows8
0e1a90a7a9 Changed the RGBA8 define to RGBA8_MAXALPHA and adjusted it + moved it into gfx.h. Added RGBA8 define to gfx.h which is the same as the original except it now uses an input alpha param. Added a comment to gfx.c regarding width/height. 2017-12-27 18:52:53 -05:00
yellows8
945615ece3 Updated nvgfxEventWait() and nvioctlNvhostCtrl_EventWait(). Updated _gfxDequeueBuffer(). 2017-12-27 18:52:53 -05:00
yellows8
2db9a5fdb9 Imported enum for use with bufferProducerQuery(). Changed gfxGetDisplayResolution to static with adjusted name and removed it from the .h. Disabled _gfxGetDisplayResolution. Added disabled get-{resolution/width/height} code. Check fence->is_valid when calling nvgfxEventWait(), with the commented out line. 2017-12-27 18:52:52 -05:00
yellows8
4c1c1ee14b Parse bufferProducerConnect() parcel reply properly. Store the output QueueBufferOutput from bufferProducerConnect/bufferProducerQueueBuffer in gfx.c. 2017-12-27 18:52:52 -05:00
yellows8
63016db072 Updated bufferProducerFence. Updated nvgfxEventWait. Added better initialization validation to binder, etc. In bufferProducerDequeueBuffer(), use sizeof instead of a constant for the fence size. Updated g_gfxQueueBufferData. Fixed validation in _gfxGetNativeWindowID. Other changes. 2017-12-27 18:52:52 -05:00
yellows8
428d0373a8 Fixed output ptr for parcelReadData(). Pass fence ptr to _gfxDequeueBuffer() in gfxSwapBuffers(). 2017-12-27 18:52:52 -05:00
plutoo
eec87a6ccf Rename account -> acc 2017-12-27 18:52:52 -05:00
yellows8
6569775e7d Added parcelReadFlattenedObject/parcelWriteFlattenedObject. Parse bufferProducerDequeueBuffer output properly. Handle bufferProducerQueueBuffer input/output properly. Updated vsync handling. Added a 3s delay for gfx-init. Updated g_gfxQueueBufferData, etc. 2017-12-27 18:52:52 -05:00
plutoo
998980843f Fix gfxWaitForVsync 2017-12-27 18:52:52 -05:00
plutoo
8485facf99 Parcel refactor again 2017-12-27 18:52:52 -05:00
plutoo
12b2ba6eb6 Revert "Refactoring parcel a little, parcelTransact needs more work"
This reverts commit e97807ef293dc9456b5828235f4dee7716e8a7bc.
2017-12-27 18:52:52 -05:00
plutoo
806a75c841 More refactoring, renamed graphicsproducer -> bufferproducer 2017-12-27 18:52:52 -05:00
plutoo
7f2135754a Refactoring parcel a little, parcelTransact needs more work 2017-12-27 18:52:52 -05:00
plutoo
1cf6bb2056 Moved binder.c to gfx, refactored 2017-12-27 18:52:52 -05:00
plutoo
2fd13b5556 Moving ioctls to separate files 2017-12-27 18:52:39 -05:00
yellows8
99880a7b26 Added the default_font. 2017-12-27 18:50:16 -05:00
yellows8
41cd7bb725 Exit gfx properly. Adjusted the name for _gfxproducer_InterfaceDescriptor. 2017-12-27 18:50:16 -05:00
yellows8
e3d0c849ad Implemented {vi/gfx}GetDisplayResolution. Moved gfxGetFramebufferDisplayOffset into the .h as static inline. Added more comments to gfx.h. 2017-12-27 18:50:16 -05:00
yellows8
33c5181237 Added gfxSetDoubleBuffering(). Adjusted g_gfxCurrentBuffer updating. Imported console from libctru with adjustments for Switch. 2017-12-27 18:50:16 -05:00
yellows8
94809a1e15 Return pixel offset instead of byte offset in gfxGetFramebufferDisplayOffset(). 2017-12-27 18:50:16 -05:00
yellows8
353faed782 Added x/y bounds checking to gfxGetFramebufferDisplayOffset(). 2017-12-27 18:50:16 -05:00
yellows8
8f459cf958 Use u32 for gfxGetFramebuffer() width/height. Added gfxGetFramebufferDisplayOffset(). 2017-12-27 18:50:16 -05:00
yellows8
24adf197af Moved the single-framebuf-size field from gfx into nvgfx. Use this field instead of hard-coded size in nvgfx, in some cases. Other adjustments. 2017-12-27 18:50:16 -05:00
yellows8
7c826e57e8 Changed g_nvgfx_totalframebufs to 2. Removed the gfxFlushBuffers() call in _gfxInit() and added a dcache-flush in nvmapobjInitialize(). Moved the nvgfxGetFramebuffer() call. Added a delay in _gfxInit(). Changed the initial g_gfxCurrentBuffer value, which is then updated by _gfxDequeueBuffer() later. Adjusted the code for updating g_gfxCurrentBuffer. For the gfxproducerDequeueBuffer() call, changed the value for the async param from 1 to 0. 2017-12-27 18:50:16 -05:00
yellows8
34e22c82df Use total-framebufs value from a global field instead of hard-coding it. 2017-12-27 18:50:15 -05:00
yellows8
0a7de00fe0 Use all 4 buffers with g_gfxCurrentBuffer. 2017-12-27 18:50:15 -05:00
yellows8
283fdabbf6 Renamed gfxproducerBufferInit to gfxproducerTegraBufferInit. Use an enum for the binder 'code' for this. Added comments for the BufferInitData structure. 2017-12-27 18:50:15 -05:00
yellows8
fbce1e8029 Use the output buffer value from gfxproducerDequeueBuffer() with gfxproducer calls. Set g_gfxCurrentBuffer in _gfxDequeueBuffer() with the output buffer value. Removed a comment. 2017-12-27 18:50:15 -05:00
yellows8
ee3a74fa60 nvgfx event adjustments. Fixed loop interation check for running buffer init. Disabled updating a field in g_gfxQueueBufferData with _gfxQueueBuffer(). 2017-12-27 18:50:15 -05:00
yellows8
a85ee0458d Implemented interface for accessing framebuf. Adjustments for gfx init/exit. Removed 0x77 memset for framebuf in nvgfx init. 2017-12-27 18:50:15 -05:00
yellows8
0d3da1d900 Removed outdated parcel-error comments. 2017-12-27 18:50:15 -05:00
yellows8
b577367011 Implemented nvioctlNvmap_FromID() and nvioctlNvmap_GetID().
Added PARCEL_LOGGING define in parcel.c.
Fixed the 'code' value used in gfxproducerQueueBuffer().
Moved some gfxproducer init into nvgfx.
Moved some nvgfx event init into nvgfxEventInit().
Updated the code using gfxproducerBufferInit() for setting the nvmap-handles.
Disabled a nvQueryEvent() call which now fails.
Other changes.
The setup framebuf/windowbuf is now displayed.
2017-12-27 18:50:15 -05:00
yellows8
24fa9b0f4b More nv event stuff. Updated comment regarding NVHOST_IOCTL_CTRL_GET_CONFIG. 2017-12-27 18:50:15 -05:00
yellows8
79fd32f0c7 More nvgfx event stuff, still broken. 2017-12-27 18:50:15 -05:00
yellows8
d35986d773 Added nvioctlNvhostCtrl_EventRegister(). 2017-12-27 18:50:15 -05:00
yellows8
0f0a4cd0fe Added nvioctlNvhostCtrl_EventSignal and nvioctlNvhostCtrl_EventWait. More nvgfx init. 2017-12-27 18:50:15 -05:00
yellows8
8d68cb401f Yet another nvmap obj added to nvgfx init. 2017-12-27 18:50:15 -05:00
yellows8
cc22a5e92a Another nvmap obj. 2017-12-27 18:50:15 -05:00
yellows8
453e8b8303 More nvgfx init. 2017-12-27 18:50:15 -05:00
yellows8
e9dbf4d18f More nvgfx init. 2017-12-27 18:50:15 -05:00
yellows8
9e10c02c88 Fixed kind value for last *MapBufferEx() loop interation. 2017-12-27 18:50:15 -05:00
yellows8
bccd0df4ae More nvgfx init. 2017-12-27 18:50:15 -05:00
yellows8
2d3887fb0c Implemented more nvgfx init. 2017-12-27 18:50:15 -05:00
yellows8
1908b29708 Added nvioctlChannel_SubmitGPFIFO(). 2017-12-27 18:50:15 -05:00
yellows8
eeb43bae97 Added nvioctlChannel_ZCullBind(). Added more nvgfx init. 2017-12-27 18:50:15 -05:00
yellows8
017770b509 More ioctls + nvgfx init. Added nvmapobjSetup(). 2017-12-27 18:50:15 -05:00
yellows8
31b945dff9 Store nvmap obj state inside of a dedicated obj struct + funcs for using that, etc. 2017-12-27 18:50:15 -05:00
yellows8
20ec051ca4 Implemented nvioctlNvhostCtrlGpu_GetL2State(). 2017-12-27 18:50:15 -05:00
yellows8
690b8be39a Implemented setting offset in nvioctlNvhostAsGpu_MapBufferEx(). Fixed broken MapBufferEx usage in nvgfx init for the second nvmap obj. 2017-12-27 18:50:15 -05:00
yellows8
bf65d6734a Added note regarding nvQueryEvent. 2017-12-27 18:50:15 -05:00
yellows8
f6ab87e309 Added an ioctl usage comment to nvgfx. 2017-12-27 18:50:15 -05:00
yellows8
cfffdcc444 Setup the second nvmap obj. 2017-12-27 18:50:15 -05:00
yellows8
0cc65093e3 Implemented the ioctls which were skipped during nvgfx init. nvgfx init adjustments. Fixed ioctl direction define for nvioctlNvhostAsGpu_MapBufferEx, this now works properly. 2017-12-27 18:50:15 -05:00
yellows8
704ead0d5f Added more nvioctls + more nvgfx init. 2017-12-27 18:50:15 -05:00
yellows8
619a9a378c Added nvgfx. 2017-12-27 18:50:14 -05:00
yellows8
0c19c1738c Added nvioctl. 2017-12-27 18:50:14 -05:00
yellows8
1fccd4a1bb Improved handling for appletNotifyRunning(). 2017-12-24 23:31:58 -05:00
yellows8
ec594bfbcf Added _appletGetOperationMode() and _appletGetPerformanceMode(). In appletInitialize(), use _appletGetOperationMode and _appletGetPerformanceMode(). Also use _appletGetCurrentFocusState() in appletInitialize() with a global field even for non-application-type. Added _appletSetOperationModeChangedNotification/_appletSetPerformanceModeChangedNotification and use these in appletInitialize(). Added appletGetOperationMode(), appletGetPerformanceMode(), and appletGetFocusState(), which load from cached state fields. Handle notifications in appletMainLoop(). Added appletOperationMode enum. Imported applet hooking from libctru. 2017-12-22 03:26:26 -05:00
plutoo
146aad7f55 Fixes for 1.0.0, correcting NRO aslr base 2017-12-22 02:49:32 -05:00
yellows8
a0ebe68f54 Implemented actual args handling in __system_initArgv(). 2017-12-11 19:18:45 -05:00
yellows8
ebf81ab6ff Imported *MainLoop() from libctru. 2017-12-07 18:54:07 -05:00
plutoo
cddec5c754 More pm 2017-12-05 12:30:33 +01:00
plutoo
e5d0821678 Implement pm:dmnt 2017-12-05 12:30:21 +01:00
plutoo
12410fc44a
Merge pull request #22 from shinyquagsire23/hid-sharedmem-impl
HID Shared Memory - Structures + key held/down/up implementation
2017-12-02 23:21:10 +01:00
yellows8
d24671b306 Implemented applet initialization for application-type which was missing. Added svcResetSignal. 2017-12-01 23:15:40 -05:00
yellows8
7da25ba40f Updated fs_dev.h comments, etc. Fixed _fsdevUnmountDeviceStruct(). Added fsdevCommitDevice(). Check whether sdmc is already mounted in fsdevInit(). 2017-11-30 13:00:47 -05:00
yellows8
0c5efe5f9c Added a comment in fs_dev.h. Adjusted fs.h formatting, etc. Added support for mounting SaveData. 2017-11-30 01:58:21 -05:00
yellows8
a405bc4827 Added account. Added u128 type to types.h. 2017-11-29 23:31:18 -05:00
yellows8
cb123dd579 Imported initArgv from libctru. Load __system_argc/__system_argv in crt0. Enabled the __system_argc/__system_argv code in fsdev. 2017-11-29 21:30:40 -05:00
yellows8
99e4a61492 Moved fsdev_dir_t/*MAGIC into the .h. Removed fsdevWriteSafe(). Added fsdevMountDevice/fsdevUnmountDevice to the .h. Moved the code for fsdevUpdateDevices() into fsdevInit(). Changed _fsdevMountDevice() to static. Added fsdev_read_safe(). Automatically calll fsdev_{read/write}_safe() when required, instead of using fsdevWriteSafe(). 2017-11-29 19:40:21 -05:00
yellows8
49959e4e37 FS adjustments + fixed fsFsGetFreeSpace/fsFsGetTotalSpace. In fs_dev: fixed cwd handling, unmounting adjustments, use fsFsGetEntryType(), updated fsdev_dirnext(), and properly handle fsdev_statvfs(). 2017-11-29 01:47:11 -05:00
yellows8
4f2a16ec34 Added SWITCH define. 2017-11-28 12:42:53 -05:00
yellows8
02526c920e Updated comments for fsdevWriteSafe(). 2017-11-27 18:43:02 -05:00
yellows8
59880e9488 Removed output bytes_written for fsFileWrite() since the command doesn't actually return that. In fsdev_open(), set the FS_OPEN_APPEND flag when opening for writing. Adjusted file-creation handling in fsdev_open(). 2017-11-27 17:40:49 -05:00
plutoo
40dd1adc23 Mutex fix 2017-11-26 20:45:55 +01:00
plutoo
de52de8e88 Fixes for 1.0.0 2017-11-26 20:44:42 +01:00
yellows8
96010d3c75 Use a global field for default fsdev device. Added 'id' to fsdev_fsdevice struct. Adjusted fsdev mounting handling, and verify that the specified device name isn't already used. In _fsdevUnmountDeviceStruct(), call RemoveDevice() with ':' appended to name. Adjusted fsdevInit(). Adjusted comments for fsdevWriteSafe(). In fsdev_rename(), throw an error if the two paths don't use the same device. 2017-11-26 00:55:10 -05:00
yellows8
9703ddbf3e Fixed the stack_sz used for stack_top in threadCreate(). t->stack_sz is uninitialized at the time stack_top is set, hence this was causing memory corruption in some cases. 2017-11-25 12:54:42 -05:00
yellows8
cca73c47fa __thread fix by fincs. 2017-11-25 12:02:25 -05:00
yellows8
d7e611f9f4 fs_dev adjustments: disabled broken __thread, handle default device in fsdevFindDevice(), and check for fsdevFindDevice() failure in fsdev_fixpath(). Added a comment in _fsdevUnmountDeviceStruct(). Removed the return at the start of fsdev_open(). 2017-11-24 22:30:44 -05:00
yellows8
25f2839c75 Imported util/utf from libctru. Updated appInit/appExit. Fs adjustments + implemented IDirectory. Imported a modified version of sdmc_dev from libctru as fs_dev, this currently isn't usable. 2017-11-23 15:00:56 -05:00
yellows8
0bc5be0708 Fixed session-close error when using APPLET_TYPE_LibraryApplet. 2017-11-23 01:53:45 -05:00
shinyquagsire23
63f91dd215 Add hidTouchCount, hidTouchRead, KEY_TOUCH. Header tweaks. 2017-11-22 17:09:37 -07:00
shinyquagsire23
aa458e59f9 Add hidGetControllerLayout 2017-11-22 17:09:32 -07:00
yellows8
9c5afe8302 Added svcOutputDebugString. 2017-11-21 00:35:08 -05:00
shinyquagsire23
ffd10708ac Variable name adjustment, fixes, clarifications 2017-11-20 12:07:50 -07:00
shinyquagsire23
0f24d05077 Brace consistency 2017-11-20 02:53:09 -07:00
shinyquagsire23
472c408288 Add HIDMousebutton 2017-11-20 02:27:21 -07:00
shinyquagsire23
fc71b06161 Implement HID keys held/down/up 2017-11-20 02:17:30 -07:00
shinyquagsire23
11ee3c188e Add HID shared memory structures and enums 2017-11-20 02:17:26 -07:00
shinyquagsire23
3db154a8f0 Add bsdSendTo and bsdSetSockOpt 2017-11-19 01:45:15 -07:00
plutoo
c252b0a9d3 Until newlib gets updated 2017-11-18 01:29:08 +01:00
plutoo
69ce83479a Mutex bringup 2017-11-17 16:15:28 +01:00
yellows8
42fbabe9d1 Added nvQueryEvent(). 2017-11-15 22:34:07 -05:00
plutoo
61ff5bd9a1
Merge pull request #18 from devkitPro/dka64-a5-updates
devkitA64 alpha 5 updates (locks, TLS, etc) {TEST BEFORE MERGE}
2017-11-16 01:36:39 +01:00
fincs
00b5758912 Fix whitespace in fatal.c 2017-11-14 19:33:29 +01:00
yellows8
567e8ed6e1 Imported more defines from linux ioctl.h. In nvIoctl(), only set the addr/size for send/recv buffers when the associated direction bit is set. 2017-11-14 12:15:23 -05:00
fincs
5e0b10db70 Page-align stack size in threadCreate 2017-11-14 01:14:36 +01:00
fincs
508a87ea5d Mark fatalSimple with __attribute__((noreturn)) 2017-11-14 01:14:23 +01:00
fincs
e836ee7bb9 Implement TLS/newlib reent support (untested) 2017-11-14 00:31:47 +01:00
fincs
03674bba85 Implement lock_init{_recursive} newlib syscalls 2017-11-14 00:31:47 +01:00
fincs
f27685b7b3 Integrate newlib locks with libnx (R)Mutex (untested, incomplete) 2017-11-14 00:31:47 +01:00
fincs
757349c5c4 Add -mtp=soft to ARCH setting 2017-11-14 00:31:47 +01:00
yellows8
9377851197 Imported usbComms from elsewhere. Removed usb_dev.h since the .c for it was previously removed. In usbDsInitialize(), skip calling _usbDsSetVidPidBcd() when deviceinfo is NULL. 2017-11-13 17:18:07 -05:00
yellows8
38cc12f02c Moved ioctl defines into a dedicated header, with some additional defines. Load the output error field for nv cmds. 2017-11-12 23:27:42 -05:00
yellows8
caa06c4d6c Implemented nv. Use TransactParcelAuto instead of TransactParcel when running on >=3.0.0. Added ipcQueryPointerBufferSize(). Minor other change. 2017-11-12 20:34:30 -05:00
plutoo
4543558cd3 Add moar syscalls 2017-11-12 03:57:49 +01:00
yellows8
41303238e2 Added svcGetProcessId. Fixed pid type for svcDebugActiveProcess. 2017-11-09 15:49:41 -05:00
yellows8
80890a3b8e Fixed gfx and parcel issues. Parcel logging adjustments, etc. Changed out_parcel to parcel_reply. 2017-11-08 22:36:30 -05:00
yellows8
1d8c51f6fa Added svcGetSystemTick. Added LIBNX_PARCEL_ERRBASE to result.h. Added BINDER_FIRST_CALL_TRANSACTION. Added gfxproducer and parcel. Use gfxproducer in gfx and added gfxSwapBuffers(). 2017-11-07 13:56:57 -05:00
yellows8
b5abd52b8b Implemented viSetLayerScalingMode(). Implemented vsync handling. Minor other change. 2017-11-05 00:50:58 -04:00
plutoo
d0c9d8294d Don't mind this 2017-11-05 04:02:00 +01:00
plutoo
9a67c39fd0 Moved cache.s to arm/, implemented kernel/version.c, get rid of broken uart driver [for now] 2017-11-05 03:58:54 +01:00
plutoo
fd128b0ae2 Random shit 2017-11-05 03:58:54 +01:00
yellows8
9866f8e8b2 Implemented binder. Added error LIBNX_BADINPUT. Set StrayLayer in viOpenLayer properly. 2017-11-04 18:28:13 -04:00
yellows8
224f7151b3 Fixed vi issues. 2017-11-03 16:24:00 -04:00
yellows8
c5e6783870 Return _gfxInit() retval properly. _viOpenLayer and _viCreateStrayLayer are broken. 2017-11-03 13:30:35 -04:00
yellows8
ec1faa34ef Added display+layer support. Started 'gfx'. 2017-11-03 12:33:33 -04:00
yellows8
d62b909757 Added hid. 2017-10-27 17:10:48 -04:00
yellows8
557d68139a Implemented applet. 2017-10-27 12:20:52 -04:00
yellows8
ff80e7e668 Added svcGetProcessList. 2017-10-21 11:31:23 -04:00
yellows8
5fbf234afa Allow overriding the heaps. 2017-10-16 20:56:07 -04:00
yellows8
cc6005231e Added usbdev warning. 2017-10-16 19:35:41 -04:00
yellows8
68dbb72b04 Added fsExit and fsGetServiceSession. Check whether initialization was already done in fsInitialize, etc. Added fs to __appInit/__appExit. 2017-10-14 21:45:59 -04:00
plutoo
6280e1ba58 Introducing shmem 2017-10-14 15:00:52 +02:00
yellows8
96dc3a4ff0 Added usbdev under new directory 'devices'. Added more libnx errors to result.h. Added usbDsParseReportData() and the structs for it. Changed the post-buffer funcs 'out' field to 'urbId'. Updated the get-report funcs for using the report-data structure. 2017-10-12 18:20:31 -04:00
yellows8
6aa7ac0ec8 Fixed name for endpoint get-report cmd. 2017-10-12 02:08:25 -04:00
yellows8
7333864957 Added usbDsGetState() and usbDsWaitReady(). 2017-10-10 11:48:39 -04:00
yellows8
d1ba4d4e2b Added osDCacheFlush() for use by usbds. 2017-10-10 00:44:00 -04:00
yellows8
6cea85f338 Added usbds. The post-buffer cmds require dcache-flush for the specified buffer, this isn't included yet. 2017-10-09 21:05:53 -04:00
yellows8
8308791835 Imported Doxyfile. Added svcClearEvent. Added more libnx errors to result.h. Updated viInitialize for using error LIBNX_ALREADYINITIALIZED. 2017-10-09 20:54:29 -04:00
plutoo
99bd9c76aa Attempt to introduce newlib heap implementation 2017-10-09 21:24:11 +02:00
plutoo
85538c9fb3 Introducing thread.. 2017-10-08 18:39:33 +02:00
plutoo
a9555bb5b5 Implement virtual memory allocator 2017-10-08 15:11:59 +02:00
plutoo
b82ad0b099 Nobodys perfect 2017-10-07 23:18:21 +02:00
plutoo
74b14f4c63 Introducing fs.. 2017-10-07 22:49:16 +02:00
plutoo
3926969ebc Minor changes
* Refactored system/*
* Implemented all of tmem
* Introduced virtmem
2017-10-07 15:32:57 +02:00
yellows8
85edf0b826 Check smHasInitialized() in smInitialize(). 2017-09-24 18:46:13 -04:00
yellows8
c14d9baffb Merge branch 'master' of github.com:switchbrew/libnx 2017-09-24 18:40:26 -04:00
yellows8
8a9d51db0c Added smExit and added sm to appInit/appExit. Added svcCreateSession. Added vi. 2017-09-24 18:40:13 -04:00
plutoo
2a981d5c69 Introducing mutex 2017-09-25 00:04:03 +02:00
plutoo
983c708830 Ipc fixes 2017-09-24 21:28:36 +02:00
plutoo
718d55f45a Added sm service commands 2017-09-24 19:49:24 +02:00
plutoo
6e84dee135 Introducing fatal 2017-09-24 18:49:27 +02:00
fincs
1630fc1640 Implement proper .dynamic section parsing 2017-09-21 18:11:08 +02:00
fincs
a78a6ecc27 Move -fPIC to ARCH setting in Makefile 2017-09-20 19:53:21 +02:00
yellows8
ad6ce3d6f8 Merge pull request #7 from devkitPro/devkitA64-fixes
minor devkitA64 updates
2017-09-19 22:15:03 -04:00
yellows8
b52787a4fa Added MemInfo struct, based on the libctru one. Added some debug svcs. 2017-09-18 14:41:53 -04:00
Dave Murphy
a8c9b1e794 ignore generated files 2017-09-18 19:40:15 +01:00
plutoo
4fd0989bf3 Merge branch 'master' of https://gitlab.com/yellows8/libnx 2017-09-17 03:07:51 +02:00
plutoo
1f1b837004 Improving bsd 2017-09-17 03:07:22 +02:00
plutoo
94683c43d1 Improving heap init a little 2017-09-16 20:29:55 +02:00
yellows8
a1815dd7b9 Use custom funcs for handling init_array/fini_array. Updated crt0. 2017-09-16 12:55:18 -04:00
yellows8
19f0b5a828 Added sysinit/exit code similar to libctru, with updated crt0. Moved svcExitProcess into the library. Changed HEAP_SIZE. Adjusted some svc.s formatting. Added svcGetInfo. Added svcSleepThread, device SVCs, svcCallSecureMonitor, and the struct for svcCallSecureMonitor, based on code from naehrwert. 2017-09-16 10:52:10 -04:00
yellows8
50b52b1258 Added pragma to ipc.h. 2017-09-14 18:46:58 -04:00
plutoo
003e300e83 Introducing ipc domains, bsd stuff 2017-09-15 00:18:52 +02:00
plutoo
fb1d6f4d5c Missed the header file 2017-09-12 02:01:10 +02:00
plutoo
22727bcf8d Got bsdConnect working properly 2017-09-12 01:59:07 +02:00
plutoo
c6ffc2a6e1 Ipc bugfix 2017-09-11 05:16:15 +02:00
plutoo
6c2d06f9a8 Fixing bugs. bsdInitialize currently fails with 0xe401, probably due to ipc bug 2017-09-11 04:38:38 +02:00
plutoo
d8eb347247 Fixed heap 2017-09-11 01:13:01 +02:00
plutoo
30650b5d69 Implemented heap, transfer memory, bsd cmd0 2017-09-10 23:17:57 +02:00
plutoo
0d8a5a6839 Restructuring a little 2017-09-10 20:19:32 +02:00
plutoo
4c3a4ba271 Fix bug in smGetService 2017-09-10 17:53:21 +02:00
plutoo
10b41de71e Merge branch 'master' of https://gitlab.com/yellows8/libnx 2017-09-10 17:40:29 +02:00
plutoo
e2f5a17ba9 Almost done with ipc + sm implementation 2017-09-10 17:40:01 +02:00
yellows8
cfe87868f4 Added svcQueryMemory. 2017-09-09 22:10:53 -04:00
plutoo
1e5ce77847 Merge branch 'master' of https://gitlab.com/yellows8/libnx 2017-09-10 00:10:59 +02:00
yellows8
59290a5b87 Added svcQueryPhysicalAddress. 2017-09-09 16:27:55 -04:00
yellows8
1d20c999f1 Merge branch 'master' of gitlab.com:yellows8/libnx 2017-09-09 12:10:49 -04:00
yellows8
778d5fc4fb Added proper svcQueryIoMapping. 2017-09-09 12:10:45 -04:00
plutoo
8cec483f0a Implemented smGetService 2017-09-09 15:10:52 +02:00
plutoo
92f8243a42 Merge branch 'master' of https://gitlab.com/yellows8/libnx 2017-09-09 14:57:44 +02:00
plutoo
0290410d06 Finish ipc implementation prototype 2017-09-09 14:57:14 +02:00
yellows8
346324cc5b Added svcCloseHandle, svcWaitSynchronization, and svcAcceptSession. 2017-09-09 01:30:16 -04:00
plutoo
dc376aa222 More ipc 2017-09-09 06:38:56 +02:00
yellows8
74fef6895a Added pfs0/nso building in switch_rules and added svcBreak. 2017-09-08 23:57:49 -04:00
plutoo
b39773b1d4 Trying to make first few steps towards relocations 2017-09-09 02:48:15 +02:00
plutoo
a8fecf77e1 stuff 2017-09-09 01:42:33 +02:00
yellows8
b86cec7924 Properly fixed getThreadLocalStorage. 2017-09-08 18:31:54 -04:00
yellows8
6c05799e8c Added result.h. 2017-09-08 18:05:50 -04:00
yellows8
3b48bab62a Fixed getThreadLocalStorage. 2017-09-08 17:56:32 -04:00
yellows8
45d7a25a20 Added types.h and switch.h. Moved svc.h and updated svc.h. 2017-09-08 17:53:58 -04:00
yellows8
bda7f39904 Initial commit 2017-09-08 17:15:38 -04:00