Commit Graph

89 Commits

Author SHA1 Message Date
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
Michael Scire
fd9378754d Fix asm error in svcGetResourceLimit*Value 2018-05-09 02:32:44 +02:00
Michael Scire
ef47389228 Implement svcMap/UnmapPhysicalMemory(Unsafe), svcSetUnsafeLimit 2018-05-07 14:03:27 +02:00
SciresM
0ac5743c1f Add ResourceLimit SVCs, svcGetProcessInfo (#76) 2018-05-04 00:59:17 +02:00
hexkyz
b2b8e1ec67 Implement more SVCs (#74)
Implement svcSetThreadPriority.
Implement svcGetCurrentProcessorNumber.
Implement svcSignalEvent.
Implement svcSendSyncRequestWithUserBuffer.
Implement svcSendAsyncRequestWithUserBuffer.
Implement svcGetThreadId.
Implement svcReplyAndReceiveWithUserBuffer.
Implement svcCreateEvent.
Implement svcReadWriteRegister.
Implement svcCreateInterruptEvent.
Implement svcMapDeviceAddressSpaceByForce.
Implement svcTerminateProcess.
Fix svcMapDeviceAddressSpaceAligned.
Fix svcUnmapDeviceAddressSpace.
2018-04-30 00:43:52 +02:00
SciresM
d5bce6b0a6 Implement svcCreatePort. (#73)
* Implement svcCreatePort
* Implement svcConnectToPort
* Implement svcUnmapProcessMemory
* Implement svcGetSystemInfo
2018-04-24 18:33:46 -04:00
plutoo
d604976f08 Derp 2018-03-23 19:04:26 +01:00
plutoo
6c72bf8273 Detect 5.0.0 properly 2018-03-23 19:01:09 +01:00
plutoo
e112ab6968 Fix ipc session close race properly 2018-03-11 13:21:36 +01:00
plutoo
e162da18ff Fix race condition in tmem 2018-03-10 21:03:31 +01:00
yellows8
f7335b7ae5 Only clear allocated tmem when alloc was successful. 2018-03-01 22:57:44 -05:00
yellows8
20a549b46b Clear allocated tmem. 2018-03-01 22:55:17 -05:00
plutoo
20f3e87d11 Change type of TryLock to bool 2018-02-28 18:22:28 +01:00
Jules Blok
e966f21800 mutex: Add TryLock() variants. 2018-02-28 18:00:03 +01:00
plutoo
842ce50c2f Condvar fix 2018-02-21 03:05:15 +01:00
fincs
521bc1c5c9 Document kernel/condvar.h 2018-02-10 22:40:11 +01:00
fincs
cde9d05c80 Optimize/fix several things in svc.s 2018-02-10 22:40:11 +01:00
fincs
c20d372946 Clean up types.h:
- Move Permission to kernel/svc.h (also fix enum naming)
- Add s128, vu128, vs128
- voidfn -> VoidFn
2018-02-10 22:40:11 +01:00
fincs
41da28eb5c Document kernel/: shmem.h, thread.h, tmem.h, virtmem.h 2018-02-10 22:40:11 +01:00
fincs
cbd367c8a0 Document kernel/: detect.h, jit.h, mutex.h, random.h, rwlock.h 2018-02-10 22:40:11 +01:00
plutoo
75003f40f1 Add some syscalls 2018-02-01 22:04:37 +01:00
plutoo
b2810ab38d Condvar stylefix 2018-01-31 02:22:28 +01:00
plutoo
c7213b119b Condvar bugfix 2018-01-31 02:14:01 +01:00
plutoo
000a7f05c9 Experimental implementation of condvars 2018-01-30 22:39:02 +01:00
Lioncash
b637276c48 Silence a few missing prototype warnings 2018-01-28 01:03:56 +01:00
plutoo
340266502a Cache management for jit 2018-01-22 21:06:53 +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
e54bbc54ea Fix codestyle for results 2018-01-21 18:40:23 +01:00
plutoo
6b4b693842 3.0.0 jit also requires own process handle 2018-01-21 17:24:42 +01:00
plutoo
200240f328 Actually reprotect code segment to RX 2018-01-20 19:37:11 +01:00
plutoo
a4cff4de13 Jit bug number two 2018-01-20 14:19:14 +01:00
plutoo
de8b3f81e4 Jit errorcode bugfix 2018-01-20 14:03:44 +01:00
plutoo
81a39130fe Whitespace fix in svc 2018-01-20 14:01:26 +01:00
plutoo
22e9a0fcc3 Jit bringup, improvements to virtmem 2018-01-20 13:56:12 +01:00
plutoo
b877e1b1c1 Why is this not crashing 2018-01-20 12:26:31 +01:00
plutoo
8ae150d110 NRO loading bringup 2018-01-20 00:13:38 +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
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
d8061f67bd Introduce svcWaitForSynchronizationSingle to clean up code 2018-01-13 00:27:47 +01:00
plutoo
7482c849fe Introducing RwLock, make hid threadsafe 2018-01-11 22:25:49 +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
edcf789b6e C was developed in 1972 2018-01-06 13:54:59 +01:00