plutoo
b877e1b1c1
Why is this not crashing
2018-01-20 12:26:31 +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
Lioncash
4b9a460fb6
usb_comms: Correct scenarios when freeing the endpoint out buffer
...
Previously g_usbComms_endpoint_out_buffer wouldnt be freed in
usbCommsExit, as g_usbComms_endpoint_out would be set to NULL before
the conditional check
2018-01-19 11:22:44 +01:00
plutoo
3faa6e8325
Add comment about seed
2018-01-18 21:11:58 +01: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
yellows8
e3f0e08a90
Skip HID init when applet-type is None.
2018-01-17 00:39:56 -05: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
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
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
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
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