Commit Graph

4499 Commits

Author SHA1 Message Date
Subv fd93b1e0ef IPC Cleanup: Remove 3DS-specific code and translate copy, move and domain objects in IPC requests.
Popping objects from the buffer is still not implemented.
2018-01-07 17:11:47 -05:00
Subv 6a6013d4c3 IPC: Skip the entire u64 of the command id when receiving an IPC request.
Service code now doesn't have to deal with this.
2018-01-07 17:11:45 -05:00
Subv d6a5e0b61b IPC: Use the correct size when pushing raw data to the command buffer and fixed pushing domain objects.
Domain object ids are always stored immediately after the raw data.
2018-01-07 17:11:43 -05:00
bunnei 1aac4945d2 svc: Implement svcSignalProcessWideKey. 2018-01-07 16:55:17 -05:00
bunnei 9b8fff5568 audio: Log dropping frames as trace to reduce spam. 2018-01-07 16:52:59 -05:00
bunnei d15b38d32c semaphore: More changes for Switch. 2018-01-07 16:52:23 -05:00
bunnei 0459eb07c9 wait_object: Refactor to allow waking up a single thread. 2018-01-07 16:33:41 -05:00
bunnei 02dba7283f nso: Always load the filepath specified by the user. 2018-01-07 12:44:36 -05:00
bunnei 1ae217c357 core_timing: Increase clock speed for Switch docked. 2018-01-07 00:58:06 -05:00
bunnei 2720d550b7 svc: Implement svcWaitProcessWideKeyAtomic. 2018-01-06 16:14:12 -05:00
bunnei 2f66f2210d semaphore: Updates for Switch. 2018-01-06 15:55:40 -05:00
bunnei 718c77f373 lm: Assert on unsupported multi-message. 2018-01-06 14:41:56 -05:00
bunnei 260149fc9b svc: Implement WaitSynchronization for a single handle. 2018-01-06 14:34:32 -05:00
bunnei 25c27e356e svc: Refactor LockMutex code to use WaitSynchronization1. 2018-01-06 14:19:28 -05:00
bunnei 1941e021bc lm: Improve Log() to format a useful string. 2018-01-05 00:45:13 -05:00
bunnei dc6b80d997 svc: Add missing string_util include. 2018-01-04 19:45:15 -05:00
bunnei 6545152acd cmake: Don't compile Dynarmic as it's unused. 2018-01-04 17:01:02 -05:00
bunnei 878239d05c core: Increase tight_loop 100x for speed. 2018-01-04 16:52:16 -05:00
bunnei fbbaca8fb7 citra_qt: Remove VFP registers, since this isn't used anyways and caused an assert. 2018-01-04 13:52:29 -05:00
bunnei 08991b82fe arm_unicorn: Load/release unicorn DLL. 2018-01-04 13:40:01 -05:00
bunnei 4b1c34c257 externals: Use unicorn DLL instead of static lib. 2018-01-04 13:15:29 -05:00
bunnei 3ff86cab2e unicorn: Use for arm interface on Windows. 2018-01-04 00:13:23 -05:00
bunnei c3ee3f9d76 arm_dynarmic: More cleanup. 2018-01-04 00:09:12 -05:00
bunnei 71eb1a30f0 core: Remove unicorn_dynload. 2018-01-03 22:10:31 -05:00
bunnei 20165180ea arm_dynarmic: Gut interface until dynarmic is ready for general use. 2018-01-03 22:10:11 -05:00
bunnei b055ea2699 arm: Remove SkyEye/Dyncom code that is ARMv6-only. 2018-01-02 22:24:12 -05:00
bunnei 5739484470 vm_manager: Use a more reasonable MAX_ADDRESS size. 2018-01-02 21:37:56 -05:00
bunnei 0d63f6dc66 svc: Remove unnecessary "svc" prefix to naming scheme. 2018-01-02 20:47:26 -05:00
bunnei 7d16a38e06 pctl: Remove duplicate InstallInterfaces function. 2018-01-02 20:41:20 -05:00
bunnei b328c577ef hle: Move SVC code to kernel namespace. 2018-01-02 20:40:30 -05:00
bunnei add5ad40ad svc: Improve svcGetInfo. 2018-01-01 16:01:06 -05:00
bunnei 6a6de01d43 vm_manager: Stub out a bunch of interfaces used by svcGetInfo. 2018-01-01 15:59:31 -05:00
bunnei 7a96dfa16f svc: Fix string formatting for CreateThread. 2018-01-01 15:48:08 -05:00
bunnei 2d6060a29a cmake: Add missing object_address_table. 2018-01-01 15:41:05 -05:00
bunnei 4728cc141a core/video_core: Fix a bunch of u64 -> u32 warnings. 2018-01-01 15:40:35 -05:00
bunnei 082be53aab svc: Stub out svcWaitSynchronization.
- This does not matter until we implement other kernel objects, mutexes use svcLockMutex for waiting.
2018-01-01 14:47:57 -05:00
bunnei 37d55a0317 svc: Implement svcExitProcess. 2018-01-01 14:38:34 -05:00
bunnei aec03c0e73 svc: Implement svcUnlockMutex. 2018-01-01 14:04:36 -05:00
bunnei 16c66e09cc svc: Implement svcLockMutex. 2018-01-01 14:02:26 -05:00
bunnei fba61b93c7 kernel: Add ObjectAddressTable class. 2018-01-01 13:25:37 -05:00
bunnei 57d3544f96 thread: Keep track of the initially created handle.
This is kinda crufty, but we need it for now to update guest state variables.
2017-12-31 17:23:36 -05:00
bunnei a373ba43e4 svc: Implement svcExitThread. 2017-12-31 16:11:27 -05:00
bunnei c943ab553f svc: Implement svcCreateThread. 2017-12-31 16:10:01 -05:00
bunnei 753ab82242 svc: Cleanup svcGetThreadPriority. 2017-12-31 16:06:11 -05:00
bunnei 647243bd78 svc: Stub out svcGetCurrentProcessorNumber. 2017-12-31 16:01:04 -05:00
bunnei 10022dc332 errors: Define missing kernel error codes. 2017-12-31 15:59:00 -05:00
bunnei 8c14a2704d svc: Implement svcSetThreadPriority. 2017-12-31 15:58:16 -05:00
bunnei 4564526c43 svc: Change SignalProcessWideKey to a stub. 2017-12-31 15:55:11 -05:00
bunnei 1629d02a54 function_wrappers: Cleanup, fix warnings, remove unused code. 2017-12-31 15:46:30 -05:00
bunnei 3af6ad6bb9 svc: Implement svcUnmapMemory. 2017-12-31 15:22:49 -05:00
bunnei f10d490c94 svc: Minor cleanups. 2017-12-30 13:40:28 -05:00
bunnei 7a612ba7dd svc: Implement svcStartThread. 2017-12-30 13:37:07 -05:00
bunnei 3fc608b040 thread: Main thread should set thread handle to reg 1. 2017-12-30 12:10:58 -05:00
bunnei da4bd90980 thread: Remove THUMB mode flag. 2017-12-30 12:08:26 -05:00
bunnei d8a3de102e thread: Main thread should be ready by default, all others dormant. 2017-12-30 12:05:10 -05:00
bunnei 78531342a4 kernel: Various 64-bit fixes in memory/process/thread 2017-12-29 13:27:58 -05:00
bunnei 7b3a56f0fb applet_oe: Stub out a bunch of interfaces necessary for boot. 2017-12-29 00:44:46 -05:00
bunnei 33fa650a20 controller: Implement DuplicateSession. 2017-12-29 00:39:34 -05:00
bunnei 9d04a45a90 kernel: Fix implementation of ConvertSessionToDomain. 2017-12-29 00:36:22 -05:00
bunnei d203083a1c ap, aoc_u: Minor cleanup. 2017-12-28 23:45:44 -05:00
bunnei 26495098a9 service: Add empty interface for pctl:a. 2017-12-28 23:44:39 -05:00
bunnei 8331a996d6 kernel: Add basic support for Domain object. 2017-12-28 23:30:21 -05:00
bunnei 8fdafee314 kernel: Add SyncObject primitive, use it for ClientSession. 2017-12-28 23:12:28 -05:00
bunnei 58cf9d847a svc: Implement MapMemory. 2017-12-28 21:38:38 -05:00
bunnei e74563e0d0 process: Add method to mirror a memory region. 2017-12-28 21:35:49 -05:00
bunnei 4678ba1e18 svc: Implement SetHeapSize. 2017-12-28 15:29:52 -05:00
bunnei 82fb80da76 service: Clean up apm/lm/applet_oe/controller/sm ctor/dtor. 2017-12-28 15:27:30 -05:00
bunnei 6d0751cd00 service: Halt on ReportUnimplementedFunction and improve output log. 2017-12-28 15:24:59 -05:00
bunnei f9d160c819 service: Add empty interface for aoc:u. 2017-12-28 15:24:05 -05:00
bunnei 1edc9cc327 service: Return proper result code for IPC::CommandType::Close. 2017-10-31 19:30:05 -04:00
bunnei 714dd3da6d hle: Use Switch formatted result codes. 2017-10-31 19:26:11 -04:00
bunnei bfd01c7c71 svc: Implement GetThreadId and GetProcessId. 2017-10-23 00:15:45 -04:00
bunnei 9651b2db3a logging: Rename category "Core_ARM11" to "Core_ARM". 2017-10-23 00:13:12 -04:00
bunnei 0fba69c235 nso: Load more common submodules. 2017-10-22 23:50:26 -04:00
bunnei ec6eb66383 memory: Support 32-bit paging, move heap address space up. 2017-10-22 23:17:59 -04:00
bunnei bf69f3d1eb hle: Fix QueryMemory response for MemoryInfo. 2017-10-19 23:00:46 -04:00
bunnei bb50d29ca9 lm: Implement lm::Initialize and Logger::log. 2017-10-18 21:41:24 -04:00
bunnei a636b779e7 hle_ipc: Only copy necessary fields for outgoing command buffer. 2017-10-18 21:39:48 -04:00
bunnei f599769c3c hle_ipc: Parse out buffer X/A/B/B descriptors from incoming command buffer. 2017-10-18 21:38:01 -04:00
bunnei c6a1d24720 service: Add CreatePort function (that does not register/install). 2017-10-18 21:34:19 -04:00
bunnei 8b314ec3f9 memory: Print addresses as 64-bit. 2017-10-18 21:29:23 -04:00
bunnei 9ed2ef9c1c ipc_helpers: Fix alignment (was wrong as a result of a dynarmic bug). 2017-10-17 18:03:47 -04:00
bunnei c40bfc606d service: Print correct command ID on unimplemented function. 2017-10-17 18:02:08 -04:00
bunnei be299c7636 hle: Implement ConvertSessionToDomain, various cleanups. 2017-10-15 01:24:22 -04:00
bunnei 5e11c12766 core: Refactor MakeMagic usage and remove dead code. 2017-10-15 00:11:38 -04:00
bunnei 9ce5a90aa6 hle: Add service stubs for apm and appletOE. 2017-10-14 22:50:04 -04:00
bunnei 2ea8867549 hle: Initial implementation of NX service framework and IPC. 2017-10-14 22:18:42 -04:00
bunnei 14ebd959bd nso: Add a log for loading submodules. 2017-10-14 17:37:51 -04:00
bunnei 0176bad5b2 svc: Some logging cleanup. 2017-10-14 17:35:21 -04:00
bunnei 8a19114047 svc: Update MemoryInfo flags for 64-bit. 2017-10-14 17:31:25 -04:00
bunnei bdc3ccc8ac svc: Initial nx impl. for QueryMemory, ConnectToPort, SendSyncRequest, etc. 2017-10-14 17:30:07 -04:00
bunnei 8cf95d87aa Remove more 3DS-specific code. 2017-10-13 17:56:42 -04:00
bunnei 877d4c71d3 Remove more 3DS-specific code. 2017-10-12 21:45:06 -04:00
bunnei e36d959e34 Remove more 3DS-specific code. 2017-10-12 21:29:53 -04:00
bunnei 5993f6f6de Remove lots more 3DS-specific code. 2017-10-12 21:21:49 -04:00
bunnei dd4ffef0a2 hle: Remove a large amount of 3ds-specific service code. 2017-10-10 17:32:14 -04:00
bunnei 775cf60729 Merge remote-tracking branch 'upstream/master' into nx
# Conflicts:
#	src/core/CMakeLists.txt
#	src/core/arm/dynarmic/arm_dynarmic.cpp
#	src/core/arm/dyncom/arm_dyncom.cpp
#	src/core/hle/kernel/process.cpp
#	src/core/hle/kernel/thread.cpp
#	src/core/hle/kernel/thread.h
#	src/core/hle/kernel/vm_manager.cpp
#	src/core/loader/3dsx.cpp
#	src/core/loader/elf.cpp
#	src/core/loader/ncch.cpp
#	src/core/memory.cpp
#	src/core/memory.h
#	src/core/memory_setup.h
2017-10-09 23:56:20 -04:00
bunnei e36ccd5ff1 loader: Various improvements for NSO/NRO loaders. 2017-10-09 21:39:32 -04:00
Dragios cefb2e7745 Change command header in nwm::UDS Initialize function 2017-10-09 09:10:48 +08:00
Sebastian Valle 3fb50166a9 Merge pull request #2991 from Subv/getpointer
Remove more usages of GetPointer.
2017-10-08 10:11:12 -05:00