Commit Graph

234 Commits

Author SHA1 Message Date
plutoo
b34f59e179 ARM cache operations 2018-01-22 20:29:49 +01:00
plutoo
9634a5467e Small stylefix 2018-01-22 20:15:03 +01:00
plutoo
6fa8370bfb This looks better 2018-01-22 20:11:55 +01:00
TuxSH
5abc4873d8 Include only what is really necessary...
add pragma once in every header, etc.
2018-01-22 18:42:57 +01:00
plutoo
5a67f0909d Stop confusing Nvidia error codes and Switch error codes 2018-01-21 18:54:11 +01:00
plutoo
e54bbc54ea Fix codestyle for results 2018-01-21 18:40:23 +01:00
yellows8
cd881bbc0e Added envHasNextLoad(). 2018-01-20 18:25:35 -05:00
plutoo
d4db5b7647 Stylefix 2018-01-20 19:37:11 +01:00
plutoo
97141448e9 Implement NextLoadPath for loader env 2018-01-20 19:37:11 +01:00
fincs
79e51cb733 More fatalSimple unique error codes (plus some fixing) 2018-01-20 14:41:05 +01:00
plutoo
22e9a0fcc3 Jit bringup, improvements to virtmem 2018-01-20 13:56:12 +01:00
shinyquagsire23
368fbbb570 hid: joystickPosition -> JoystickPosition 2018-01-20 10:37:47 +01:00
shinyquagsire23
52e928df0e hid: circlePosition -> joystickPosition 2018-01-20 10:37:47 +01:00
shinyquagsire23
a4dbd93b1f hid: Add hidJoystickRead 2018-01-20 10:37:47 +01:00
plutoo
8ae150d110 NRO loading bringup 2018-01-20 00:13:38 +01:00
yellows8
3a9451bbeb Added CONTROLLER_P1_AUTO. Added bounds checking for id in hid{Set|Get}ControllerLayout. 2018-01-19 13:58:32 -05:00
plutoo
15fe53dad3 Fix signature of randomGet64() 2018-01-18 20:53:04 +01:00
plutoo
ec4430d2e6 Introduce random 2018-01-18 20:51:55 +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
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
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
plutoo
edcf789b6e C was developed in 1972 2018-01-06 13:54:59 +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
plutoo
916dfb56f0 More threading functionality 2018-01-01 23:32:44 +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
1dda414f31 Implemented apm. 2017-12-29 16:15:17 -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
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
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
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
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
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
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
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
8f459cf958 Use u32 for gfxGetFramebuffer() width/height. Added gfxGetFramebufferDisplayOffset(). 2017-12-27 18:50:16 -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
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
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
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
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
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
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
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
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