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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
yellows8
b52787a4fa
Added MemInfo struct, based on the libctru one. Added some debug svcs.
2017-09-18 14:41:53 -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
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
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
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
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