mailwl
0b0c5672c8
Core: update Kernel Config Memory to latest version (11.2)
2017-01-30 11:29:00 +03:00
Yuri Kunde Schlesner
1410aa1824
Merge pull request #2368 from wwylele/camera-2
...
CAM: build the service framework with a dummy implementation
2017-01-29 22:16:39 -08:00
Yuri Kunde Schlesner
a925473995
Merge pull request #2429 from wwylele/auto-language-fix
...
CFG: move language override to the boot process
2017-01-29 22:14:35 -08:00
Kloen
2ca3beb9d3
core: fix err_f.cpp warning about unhandled enumeration value on OSX
2017-01-29 22:01:19 +01:00
Yuri Kunde Schlesner
3feb3ce283
Merge pull request #2434 from mailwl/nfc-amiibo
...
Service/NFC: stub some functions
2017-01-25 23:47:56 -03:00
Kloen
095f7c83fc
core: fix mic_u warnings on MSVC
2017-01-23 16:53:05 +01:00
wwylele
2c7676d371
HID: reset acceleroeter and gyroscope index in Init
2017-01-20 23:33:50 +02:00
wwylele
0045ea662f
CFG: override language setting on boot
2017-01-19 10:28:35 +02:00
wwylele
47960b0659
CoreTiming: use named constant for ARM11 clock rate
2017-01-16 09:59:16 +02:00
wwylele
3c333c53f1
HID: manages updating itself using correct ticks
2017-01-16 09:51:44 +02:00
mailwl
efe7e245b2
Service/NFC: stub some functions
...
Tested on: Mini-Mario & Friends - amiibo Challenge
2017-01-14 16:15:16 +03:00
mailwl
b458d7447c
GSP::WriteHWRegsWithMask: fix register mask
2017-01-14 13:37:04 +03:00
bunnei
7ddfd3054d
Merge pull request #2425 from Subv/cleanup_todos
...
Implement some TODOs in the code.
2017-01-12 10:14:30 -05:00
bunnei
597a7c615c
Merge pull request #2308 from mailwl/ac-i
...
Service/AC: add ac:i service
2017-01-12 10:12:46 -05:00
Subv
1ddff14511
Threads: Check the process' resource limit for the max allowed priority when creating a thread and remove the priority clamping code.
2017-01-11 16:38:05 -05:00
Subv
f2f2572fed
Thread: Added priority range checking to svcSetThreadPriority and removed priority clamping code from Thread::SetPriority.
2017-01-11 16:38:04 -05:00
Subv
5ddc2e09b1
Y2R: Use the proper error code when GetStandardCoefficient receives an invalid value.
2017-01-11 16:38:03 -05:00
wwylele
cf3a272332
CAM: implement basic camera functions with a blank camera
2017-01-11 11:46:44 +02:00
bunnei
84d72fd92f
Merge pull request #2397 from Subv/pulse
...
Kernel: Implemented Pulse event and timers.
2017-01-10 10:45:00 -05:00
bunnei
b5eac78b43
Merge pull request #2410 from Subv/sleepthread
...
Don't yield execution in SleepThread(0) if there are no available threads to run
2017-01-06 22:01:33 -05:00
bunnei
59f4f1d7ff
Merge pull request #2396 from Subv/sema_acquire
...
Kernel/Semaphore: Fixed a regression in semaphore waits.
2017-01-06 22:00:12 -05:00
Hyper
f0199a17f6
Kernel: Fix SharedMemory objects always returning error when addr = 0 ( #2404 )
...
Closes #2400
2017-01-06 08:21:22 -05:00
bunnei
1c792389e6
Merge pull request #2408 from Subv/priority_boosting
...
Kernel: Removed the priority boost code for starved threads.
2017-01-06 00:40:39 -05:00
Subv
fc2266130b
Kernel: Don't attempt to yield execution in SleepThread(0) if there are no available threads to run.
...
With this we avoid an useless temporary deschedule of the current thread.
2017-01-05 19:11:34 -05:00
Subv
5e2a8ebabf
Kernel: Remove some unused functions.
2017-01-05 13:17:06 -05:00
Subv
933df2606a
Kernel: Removed the priority boost code for starved threads.
...
After hwtesting and reverse engineering the kernel, it was found that the CTROS scheduler performs no priority boosting for threads like this, although some other forms of scheduling priority-starved threads might take place.
For example, it was found that hardware interrupts might cause low-priority threads to run if the CPU is preempted in the middle of an SVC handler that deschedules the current (high priority) thread before scheduling it again.
2017-01-05 13:12:39 -05:00
Subv
e52ca85711
Kernel: Implemented Pulse event and timers.
...
Closes #1904
2017-01-05 13:06:17 -05:00
Subv
4251eb26ec
Kernel/Semaphore: Fixed a regression in semaphore waits.
...
The regression was caused by a missing check in #2260 .
The new behavior is consistent with the real kernel.
2017-01-05 13:00:05 -05:00
Sebastian Valle
f20d872643
Merge pull request #2393 from Subv/synch
...
Kernel: Mutex priority inheritance and synchronization improvements.
2017-01-05 12:55:01 -05:00
Subv
dda4ec93be
Kernel: Add some asserts to enforce the invariants in the scheduler.
2017-01-05 09:40:18 -05:00
Subv
7f1dca8cd2
Kernel: Remove a thread from all of its waiting objects' waiting_threads list when it is awoken.
...
This fixes a potential bug where threads would not get removed from said list if they awoke after waiting with WaitSynchronizationN with wait_all = false
2017-01-05 09:40:15 -05:00
Subv
fd95b6ee26
Kernel: Remove Thread::wait_objects_index and use wait_objects to hold all the objects that a thread is waiting on.
2017-01-05 09:40:14 -05:00
Subv
cef5f45de2
Kernel: Use different thread statuses when a thread calls WaitSynchronization1 and WaitSynchronizationN with wait_all = true.
...
This commit removes the overly general THREADSTATUS_WAIT_SYNCH and replaces it with two more granular statuses:
THREADSTATUS_WAIT_SYNCH_ANY when a thread waits on objects via WaitSynchronization1 or WaitSynchronizationN with wait_all = false.
THREADSTATUS_WAIT_SYNCH_ALL when a thread waits on objects via WaitSynchronizationN with wait_all = true.
2017-01-04 15:58:50 -05:00
Subv
d3ff5b91e1
Kernel/Mutex: Propagate thread priority changes to other threads inheriting the priority via mutexes
2017-01-04 15:58:48 -05:00
Subv
b6a0355568
Kernel/Mutex: Update a mutex priority when a thread stops waiting on it.
2017-01-04 15:58:47 -05:00
Subv
7abf185390
Kernel/Mutex: Implemented priority inheritance.
...
The implementation is based on reverse engineering of the 3DS's kernel.
A mutex holder's priority will be temporarily boosted to the best priority among any threads that want to acquire any of its held mutexes.
When the holder releases the mutex, it's priority will be boosted to the best priority among the threads that want to acquire any of its remaining held mutexes.
2017-01-04 15:58:46 -05:00
Subv
e6a7723f2f
Kernel: Object ShouldWait and Acquire calls now take a thread as a parameter.
...
This will be useful when implementing mutex priority inheritance.
2017-01-04 15:58:45 -05:00
Subv
38a90882a4
Kernel/Synch: Do not attempt a reschedule on every syscall.
...
Not all syscalls should cause reschedules, this commit attempts to remedy that, however, it still does not cover all cases.
2017-01-04 15:58:44 -05:00
Jonathan Hao
c18cb1b192
Fix some warnings ( #2399 )
2017-01-04 13:48:29 -03:00
Lectem
ee6e88fdb5
fix comments alignment
2016-12-30 15:55:42 +01:00
mailwl
f2985f7080
Service/NFC: stub GetTagInRangeEvent
...
Fix Fatal Error in Mini-Mario & Friends - amiibo Challenge
2016-12-30 09:40:54 +03:00
mailwl
c6f4b93f2e
Service/AC: add ac:i service
2016-12-30 09:20:11 +03:00
bunnei
f556d6ee90
Merge pull request #2240 from wwylele/auto-region
...
Config: auto-select region and language
2016-12-29 22:09:01 -05:00
wwylele
f927beb5e2
Core: remove unused hle.cpp
2016-12-27 10:27:48 +02:00
Lectem
f91c51467a
move Pop methods out of class body
2016-12-26 14:42:06 +01:00
Lectem
8baae9d982
IPC helpers example
2016-12-26 14:07:29 +01:00
Lectem
8f2b642415
IPC helpers
2016-12-26 14:07:29 +01:00
MerryMage
64f98f4d0f
core: Move emu_window and key_map into core
...
* Removes circular dependences (common should not depend on core)
2016-12-23 13:42:39 +00:00
mailwl
069a88dad7
Service/NWM: add nwm services
2016-12-22 22:51:27 +03:00
bunnei
aa47af7fb6
Merge pull request #2343 from bunnei/core-cleanup
...
Core: Top-level consolidate & misc cleanup
2016-12-22 11:47:44 -05:00
bunnei
17d740299a
Merge pull request #2285 from mailwl/csnd-format
...
csnd:SND: Reformat source code
2016-12-22 00:47:50 -05:00
bunnei
8b1e269e58
ThreadContext: Move from "core" to "arm_interface".
2016-12-22 00:27:49 -05:00
bunnei
e26fbfd1d7
core: Replace "AppCore" nomenclature with just "CPU".
2016-12-22 00:27:46 -05:00
bunnei
5ac5cbeab7
Address clang-format issues.
2016-12-21 23:48:14 -05:00
bunnei
4fc8b8229e
core: Remove HLE module, consolidate code & various cleanups.
2016-12-21 23:48:13 -05:00
bunnei
232ef55c1a
core: Consolidate core and system state, remove system module & cleanups.
2016-12-21 23:29:13 -05:00
wwylele
5728e42634
Thread: remove the thread from the thread list when exiting
2016-12-17 19:23:52 +02:00
wwylele
4c9b80cee3
Kernel: remove object's waiting thread if it is dead
2016-12-16 12:33:18 +02:00
bunnei
cda7210fad
Merge pull request #2260 from Subv/scheduling
...
Threading: Reworked the way our scheduler works.
2016-12-16 00:41:22 -05:00
Yuri Kunde Schlesner
2427a5e976
Merge pull request #2328 from wwylele/fix-trace
...
Fix debug build from #2249
2016-12-15 21:06:12 -08:00
Yuri Kunde Schlesner
63e8174caa
Merge pull request #2320 from mailwl/cecd-update
...
Service/CECD: Add cecd:ndm service
2016-12-15 21:01:51 -08:00
bunnei
9dc43d3720
Merge pull request #2331 from lioncash/trunc
...
hid: Get rid of a double -> float truncation warning
2016-12-15 17:45:24 -05:00
wwylele
a7cd452ea1
FS: fix debug build from #2249
2016-12-16 00:22:36 +02:00
Sebastian Valle
3e4cc6b3d2
Merge pull request #2330 from lioncash/pragma
...
core: Add missing #pragma once directives where applicable
2016-12-15 16:06:43 -05:00
Lioncash
3faa675d6b
hid: Get rid of a double -> float truncation warning
...
float literals need to have the 'f' prefix.
2016-12-15 15:52:15 -05:00
Lioncash
2f3c1bdfb4
core: Add missing #pragma once directives where applicable
2016-12-15 15:40:51 -05:00
Lioncash
d467b5ce4f
act: Fix docstring typo
...
These aren't the AM services.
2016-12-15 14:51:45 -05:00
bunnei
bdb6956879
Merge pull request #2314 from mailwl/account
...
Service/ACT: move ACT services to folder
2016-12-15 13:51:29 -05:00
mailwl
7f27be1521
Service/CECD: Add cecd:ndm service
2016-12-15 09:52:40 +03:00
Yuri Kunde Schlesner
905fc92ce1
Merge pull request #2249 from Subv/sessions_v3
...
Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
2016-12-14 20:35:33 -08:00
Subv
016307ae65
Fixed the codestyle to match our clang-format rules.
2016-12-14 12:45:36 -05:00
Subv
5b1edc6ae7
Fixed the codestyle to match our clang-format rules.
2016-12-14 12:35:01 -05:00
mailwl
5dea1faedd
Service/ACT: move ACT services to folder
2016-12-14 09:05:46 +03:00
JamePeng
ac2ed18a3b
Minor amendment of GSP_GPU::ImportDisplayCaptureInfo code
2016-12-13 17:01:53 +08:00
mailwl
1238e48c58
csnd:SND reformat source code
2016-12-12 21:19:36 +03:00
mailwl
e53cd12c42
APT::GetStartupArgument: force clear startup argument
2016-12-11 22:36:12 +03:00
Lioncash
963aedd8cc
Add all services to the Service namespace
...
Previously there was a split where some of the services were in the
Service namespace and others were not.
2016-12-11 00:07:27 +00:00
Subv
406907d570
Properly remove a thread from its wait_objects' waitlist when it is awoken by a timeout.
2016-12-10 13:29:31 -05:00
bunnei
6edb024d38
Merge pull request #2291 from lioncash/svc
...
service: Add the cfg:nor service
2016-12-09 14:15:20 -05:00
Subv
ebbb55ec8f
Moved the HLE command buffer translation task to ServerSession instead of the HLE handler superclass.
2016-12-09 12:52:12 -05:00
Subv
deb83c9fc5
Kernel/IPC: Small codestyle cleanup
2016-12-09 12:39:12 -05:00
Subv
17b29d8865
WaitSynch: Removed unused variables and reduced SharedPtr copies.
...
Define a variable with the value of the sync timeout error code.
Use a boost::flat_map instead of an unordered_map to hold the equivalence of objects and wait indices in a WaitSynchN call.
2016-12-09 12:23:09 -05:00
Lioncash
a2d69adad1
service: Add cfg:nor service
2016-12-09 05:07:41 -05:00
Yuri Kunde Schlesner
a5cd925a95
Merge pull request #2292 from lioncash/bool
...
ptm: Use boolean instead of integral value
2016-12-09 01:43:57 -08:00
Lioncash
934b8ffcf8
ptm: Use boolean instead of integral value
...
The third parameter of Write is actually a bool type, not an int.
2016-12-09 04:04:28 -05:00
Lioncash
823d58ac9b
service: Drop '_Interface' from cfg service names
2016-12-09 01:08:35 -05:00
Subv
386112da32
Added a framework for partially handling Session disconnections.
...
Further implementation will happen in a future commit.
Fixes a regression.
2016-12-08 15:01:10 -05:00
Subv
f9bcf89510
Use std::move where appropriate.
2016-12-08 11:06:19 -05:00
Lioncash
007815647c
service: Add the ptm:s service
...
3dbrew documents this as being the exact same as ptm:sysm
2016-12-08 06:14:55 -05:00
Lioncash
56656b75ab
service: Add common ptm:u commands to other ptm services
...
3dbrew indicates that all services have access to these commands
except for ptm:sets.
2016-12-08 06:13:10 -05:00
Lioncash
cd778cf991
service: Drop '_Interface' in ptm service class names
...
Inheriting from Service::Interface makes this obvious.
2016-12-08 06:13:04 -05:00
Lioncash
41c03f481a
service: Add ptm::gets and ptm::sets services
2016-12-08 05:43:08 -05:00
Lioncash
2061d2014d
service: Add mvd and qtm services
...
Adds the two New3DS-only modules.
3dbrew was used for command information.
2016-12-08 04:34:03 -05:00
Lioncash
e8a960f6a1
service: Add nfc services
...
3dbrew was used for the command information.
2016-12-08 03:24:41 -05:00
Yuri Kunde Schlesner
43558dc40a
Merge pull request #2283 from lioncash/svc
...
service: Update function tables
2016-12-07 22:45:12 -08:00
Yuri Kunde Schlesner
bc48e2bda6
Merge pull request #2281 from lioncash/applet
...
applet: minor interface changes
2016-12-07 22:36:40 -08:00
Lioncash
a09602d6f6
ssl_c: Update function table
...
Updated based off information from 3dbrew
2016-12-08 00:57:53 -05:00
Lioncash
ab900f8a25
ptm: Update ptm_sysm function table
...
Updated based off information from 3dbrew.
2016-12-08 00:57:53 -05:00
Lioncash
c67dae54b9
pm_app: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:57:45 -05:00
Lioncash
9f2ad62084
nwm_uds: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:47 -05:00
Lioncash
4a150a8f3c
nim: Update function tables
...
Updated based off information from 3dbrew.
2016-12-08 00:56:47 -05:00
Lioncash
c4bcd5c4ac
http_c: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:47 -05:00
Lioncash
65d94857c3
gsp_lcd: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:47 -05:00
Lioncash
006e6a7f4a
fs_user: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:46 -05:00
Lioncash
093aa35c87
dlp_srvr: Update function table
2016-12-08 00:56:46 -05:00
Lioncash
733c8890aa
cfg: Update function tables
...
Updated based off information from 3dbrew
2016-12-08 00:56:46 -05:00
Lioncash
0229983ff2
cecd_u: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:46 -05:00
Lioncash
4ebdb7e3e1
boss_p: Update function table
2016-12-08 00:56:45 -05:00
Lioncash
74b3f0faa7
act: Update function tables
...
Updated based off information from 3dbrew.
2016-12-08 00:56:39 -05:00
Lioncash
258694996f
apt: Update apt function tables
...
Updated based off information from 3dbrew.
2016-12-07 22:53:10 -05:00
Lioncash
26ea6b9546
Update AM service function tables
...
Updated based off information from 3dbrew.
2016-12-07 20:55:59 -05:00
Lioncash
f1709b8b59
applet: Move common IsRunning underlying variable to the Applet class
...
Gets rid of basic duplication.
2016-12-07 17:13:46 -05:00
Lioncash
6f71fb2954
applet: Make virtual destructor defaulted
2016-12-07 17:04:14 -05:00
Lioncash
d3f4fd1777
applet: Make constructor protected
...
Considering the class is abstract, there's no need to make the constructor
public.
2016-12-07 16:50:32 -05:00
wwylele
84e78790ab
Config: auto-select region and language
2016-12-07 20:52:42 +02:00
bunnei
8d529a5cda
Merge pull request #2232 from wwylele/other-save
...
FS: implement archives for other game save data
2016-12-07 10:17:02 -05:00
Subv
7cde5b83bc
Use boost remove_erase_if instead of the erase-remove idiom
2016-12-06 19:31:53 -05:00
Subv
1f286b72a1
Improved the algorithm for GetHighestPriorityReadyThread.
2016-12-06 19:15:32 -05:00
Subv
c93c5a72bb
Return an error code when connecting to a saturated port.
...
The error code was taken from the 3DS kernel.
2016-12-05 13:59:57 -05:00
Subv
61a2fe8c3b
HLE: Use a member variable instead of a virtual function to retrieve the max number of sessions that can be connected to an HLE service at the same time.
2016-12-05 13:44:41 -05:00
Subv
00f0c77570
Split SessionRequestHandler::HandleSyncRequest into HandleSyncRequest, TranslateRequest and HandleSyncRequestImpl.
...
HandleSyncRequest now takes care of calling the command buffer translate function before actually invoking the command handler for HLE services.
2016-12-05 12:05:00 -05:00
Subv
29d809b6e1
Kernel: Remove the Redirection handle type.
2016-12-05 11:13:22 -05:00
Subv
dd8887c8cf
KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it.
2016-12-05 11:02:08 -05:00
Subv
bdad00c73f
Threading: Added some utility functions and const correctness.
2016-12-04 09:58:36 -05:00
Yuri Kunde Schlesner
efc8179747
GSP: Downgrade log severity of SetAxiConfigQoSMode
...
This function doesn't need to do anything for HLE and some games call it
quite often, spamming up the logs.
2016-12-04 06:14:27 -08:00
Subv
8634b8cb83
Threading: Reworked the way our scheduler works.
...
Threads will now be awakened when the objects they're waiting on are signaled, instead of repeating the WaitSynchronization call every now and then.
The scheduler is now called once after every SVC call, and once after a thread is awakened from sleep by its timeout callback.
This new implementation is based off reverse-engineering of the real kernel.
See https://gist.github.com/Subv/02f29bd9f1e5deb7aceea1e8f019c8f4 for a more detailed description of how the real kernel handles rescheduling.
2016-12-03 22:38:14 -05:00
Subv
2ce61344d6
Declare empty ServerSession and ClientSession constructors as default.
2016-12-02 22:58:02 -05:00
Subv
ed210c32b3
Threads do not wait for the server endpoint to call AcceptSession before returning from a ConnectToPort or GetServiceHandle call.
2016-12-01 10:47:06 -05:00
Subv
2eceee3a4c
Fixed the rebase mistakes.
2016-11-30 23:28:31 -05:00
Subv
009b15b3aa
A bit of a redesign.
...
Sessions and Ports are now detached from each other.
HLE services are handled by means of a SessionRequestHandler class, Interface now inherits from this class.
The File and Directory classes are no longer kernel objects, but SessionRequestHandlers instead, bound to a ServerSession when requested.
File::OpenLinkFile now creates a new session pair and binds the File instance to it.
2016-11-30 23:12:35 -05:00
Subv
c5e7e0fa26
IPC/HLE: Associate the ClientSessions with their parent port's HLE interface if it exists.
...
Pass the triggering ServerSession to the HLE command handler to differentiate which session caused the request.
2016-11-30 23:04:00 -05:00
Subv
c19afd2118
Kernel/HLE: Service::Interface no longer inherits from any Kernel object, and is now its own standalone class.
...
Interface is now used by aggregation in ClientPort, to forward service commands to their HLE implementation if needed.
2016-11-30 23:03:59 -05:00
Subv
0a33d915f8
fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
2016-11-30 23:02:06 -05:00
Subv
073653e858
Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
...
All handles obtained via srv::GetServiceHandle or svcConnectToPort are references to ClientSessions.
Service modules will wait on the counterpart of those ClientSessions (Called ServerSessions) using svcReplyAndReceive or svcWaitSynchronization[1|N], and will be awoken when a SyncRequest is performed.
HLE Interfaces are now ClientPorts which override the HandleSyncRequest virtual member function to perform command handling immediately.
2016-11-30 23:02:05 -05:00
mailwl
5b136aa211
Set client SDK version to Service APIs
2016-11-30 09:51:14 +03:00
wwylele
589b642790
FileSys: Implement OtherSaveData
2016-11-29 23:50:00 +02:00
wwylele
b25f19ac26
FS: add missing MediaType
2016-11-29 23:50:00 +02:00
wwylele
5af117e00c
FileSys: abstract SD save data archive source
2016-11-29 23:50:00 +02:00
Yuri Kunde Schlesner
3174bfd50c
Merge pull request #2196 from Subv/system_mode
...
Kernel/Loader: Grab the system mode from the NCCH ExHeader.
2016-11-27 17:04:11 -08:00
Sebastian Valle
4ba5acdaff
Merge pull request #2132 from wwylele/fix-fs-err
...
Correct FS error codes & add path boundary checks
2016-11-27 18:56:56 -05:00
mailwl
ec15e485c9
Output parameters to log
2016-11-25 09:37:20 +03:00
mailwl
d4cadf11fc
MIC_U: Stub service funcions
2016-11-25 09:37:19 +03:00
pippo2931
0c9c97e5ea
Bravely Default/Second stuck #1822 ( #2188 )
...
* Bravely Default/Second stuck #1822
CancelLibraryApplet stub
* Log parameter.
* Taking care of comments
* Sync with 3DBrew
* White space ?
* lower case
2016-11-23 22:57:56 -05:00
Yuri Kunde Schlesner
ef421696e3
Merge pull request #2186 from wwylele/config9
...
cfg: add config block 0x00090000
2016-11-23 18:51:01 -08:00
Yuri Kunde Schlesner
fefa645ec7
Merge pull request #1654 from JamePeng/errdisp
...
Rework the code of err:f service!
2016-11-23 17:43:02 -08:00
bunnei
f1798c1db6
Merge pull request #2193 from Subv/pulse_events
...
Kernel/Events: Log an error when trying to create Pulse events and timers
2016-11-19 22:19:45 -05:00
Subv
1323ab2f5f
Kernel/Loader: Grab the system mode from the NCCH ExHeader.
...
3dsx and elf files default to system mode 2 (96MB allocated to the application).
This allows Home Menu to boot without modifications.
Closes #1849
2016-11-19 20:40:04 -05:00
Subv
4ab8692475
Kernel/Events: Log an error when trying to create Pulse events and timers.
...
Related to #1904
2016-11-19 14:00:08 -05:00
Subv
d7ab4fd53d
APT/Applets: Renamed the members of the SignalType enum.
...
Names now make sense and match 3dbrew.
2016-11-19 13:42:07 -05:00
wwylele
d7d6975af0
FileSys: rename SaveDataCheck archive to NCCH archive
...
According to the observation from game and 3dbrew "Used for accessing general NCCH data"
2016-11-19 18:55:35 +02:00
wwylele
5c6e13a171
PTM & CFG: use the correct path and error code according to the new FileSys policy
2016-11-19 18:55:34 +02:00
wwylele
0987783699
FileSys: add SDMCWriteOnlyArchive
2016-11-19 18:55:34 +02:00
wwylele
a879984c06
FileSys: add ExtSaveDataArchive
...
ExtSaveData is more similar to SaveData, so let it be a subclass of SaveData
2016-11-19 18:24:37 +02:00
wwylele
7166fdc490
FileSys: add SaveDataArchive
...
The error checking of SaveDataArchive is completely different from DiskArchive, so it has to be a new class instead of a subclass of DiskArchive.
2016-11-19 17:17:19 +02:00
wwylele
dd5c15abd0
cfg: add config block 0x00090000
2016-11-17 19:34:02 +02:00
mailwl
af7f5bef8d
Style fix
2016-11-02 09:38:44 +03:00
mailwl
5872abeab9
Rename AcConfig, change types u8 to u32
2016-11-02 09:38:44 +03:00
mailwl
a62df98686
AC_U: Stub functions, used if EULA agreed
2016-11-02 09:38:44 +03:00
wwylele
4dd8a831bd
FileSys: make Archive interfaces return error code
...
and make the mode parameter a reference since it is a BitField union
2016-11-01 18:30:32 +02:00
bunnei
ae2fab4a0e
Merge pull request #2126 from wwylele/stub-nwm
...
NWM: stub Initialize with an error
2016-10-31 16:16:12 -04:00
Jan Beich
702439b519
core: some errno values are uncommon on Unix
...
src/core/hle/service/soc_u.cpp:107:6: error: 'ENODATA' was not declared in this scope
{ENODATA, 43},
^
src/core/hle/service/soc_u.cpp:117:6: error: 'ENOSR' was not declared in this scope
{ENOSR, 53},
^
src/core/hle/service/soc_u.cpp:118:6: error: 'ENOSTR' was not declared in this scope
{ENOSTR, 54},
^
src/core/hle/service/soc_u.cpp:139:6: error: 'ETIME' was not declared in this scope
{ETIME, 75},
^
2016-10-27 23:28:30 +00:00
mailwl
f672c7bd24
FRD: fix GetMyFriendKey
2016-10-25 09:54:29 +03:00
Ricardo de Almeida Gonzaga
13d46f6820
Fix typos
2016-10-20 12:26:59 -02:00
wwylele
32789a70fb
NWM: stub Initialize with an error
2016-10-12 22:33:44 +08:00
bunnei
cc7f1155a8
Merge pull request #2024 from JamePeng/update-boss-code
...
Update the stub code of BOSS
2016-10-07 23:02:39 -04:00
JamePeng
691f069743
Rework the code of err:f service
2016-10-06 21:03:12 +08:00
bunnei
09c3e444d4
Merge pull request #1652 from wwylele/kernal-tool
...
Debugger: implement wait tree widget
2016-10-04 23:01:56 -04:00
JamePeng
bd8c80a7b4
Update the stub code of BOSS
2016-10-02 17:36:57 +08:00
wwylele
257e7afb79
fs: clean up log format
2016-10-02 12:39:28 +08:00
wwylele
96b0e9476b
fs: implement DeleteDirectoryRecursively
2016-10-02 11:29:16 +08:00
wwylele
85a83158fb
move ResetType to kernel.h
2016-09-22 13:52:52 +08:00
wwylele
1c0179ad1b
name objects
2016-09-22 13:52:52 +08:00
wwylele
f69a543110
implement wait tree widget
2016-09-22 13:52:52 +08:00
Yuri Kunde Schlesner
84fbbe2629
Use negative priorities to avoid special-casing the self-include
2016-09-21 00:15:56 -07:00
Emmanuel Gil Peyrot
ebdae19fd2
Remove empty newlines in #include blocks.
...
This makes clang-format useful on those.
Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
2016-09-21 11:15:47 +09:00
Yuri Kunde Schlesner
396a8d91a4
Manually tweak source formatting and then re-run clang-format
2016-09-18 21:14:25 -07:00
Emmanuel Gil Peyrot
dc8479928c
Sources: Run clang-format on everything.
2016-09-18 09:38:01 +09:00
bunnei
05e120a4cc
arm: ResetContext shouldn't be part of ARM_Interface.
2016-09-15 17:49:30 -04:00
bunnei
7c934c5164
Merge pull request #2023 from yuriks/autobase-bcfnt
...
Auto-detect original shared_font.bin memory base
2016-08-30 09:26:38 -04:00
Yuri Kunde Schlesner
474586bc53
Merge pull request #1948 from wwylele/cro++
...
Implemented CRO
2016-08-28 22:21:24 -07:00
wwylele
1c9612b791
LDR: Implement CRO
2016-08-27 21:38:06 +08:00
Yuri Kunde Schlesner
1f7ec4be9b
Auto-detect original shared_font.bin memory base
...
This allows a file dumped from either an o3DS or a n3DS (and potentially
even an original unrebased file) to be used.
2016-08-27 01:04:26 -07:00
Lectem
a94fb932ff
fix #1942 and adds a few IPC functions for descriptors
2016-08-02 16:45:15 +02:00
bunnei
47fcd68b01
Merge pull request #1950 from JamePeng/fix-apt-0x0055004-and-0x00560000
...
Correct APT::0x00550040 and APT::0x00560000 function
2016-07-28 20:50:49 -04:00
Henrik Rydgard
9a9e9dc375
Instead of segfaulting, log an error to remind the user to dump the shared font file
2016-07-28 21:47:57 +02:00
wwylele
00c34e4df7
HLE: implement system time
2016-07-23 14:30:23 +03:00
JamePeng
d5aa474788
Correct APT::0x00550040 and APT::0x00560000 function
2016-07-15 19:47:01 +08:00
Yuri Kunde Schlesner
ffda82eea5
Merge pull request #1894 from wwylele/set-config-block
...
Implement config savegame editing & clean up
2016-07-09 20:39:19 -07:00
bunnei
6fa7b1f486
Merge pull request #1940 from JamePeng/fix-archive-error-code
...
Fix the errorcode of archive handle
2016-07-06 18:37:43 -04:00
Sebastian Valle
ff2d1a2b74
Merge pull request #1921 from Subv/fs_funcs
...
HLE/FS: Document some command parameters and implemented command 0x08560240
2016-07-05 14:45:40 -07:00
JamePeng
f87bb8ba0a
Fix the errorcode of archive handle
2016-07-05 00:39:09 +08:00
mailwl
e06f2705f0
HLE/Applets: Implement ErrEula applet
2016-07-04 09:54:51 +03:00
Subv
8752f07e8e
HLE/FS: Document some command parameters and implemented command 0x08560240 (CreateLegacySystemSaveData)
2016-07-03 13:42:52 -05:00
wwylele
ab2eef396a
Service::CFG/FS: add and refactor out utilities for front-end
2016-07-03 08:23:59 +03:00
wwylele
457b6413e6
Service::CFG: move known block ID to an enum
2016-07-03 08:23:59 +03:00
wwylele
324c8d21a4
Service::CFG: add SetConfigInfoBlk4
2016-07-03 08:23:58 +03:00
wwylele
f00e8d4b2b
Service::CFG: add missing language
2016-07-02 11:44:25 +03:00
wwylele
3687a805ec
Service::CFG: name sound output modes
2016-07-02 11:44:25 +03:00
wwylele
e023a4cfd0
Result: fix and update ErrorModule
2016-06-30 11:26:53 +03:00
Yuri Kunde Schlesner
de79b6fc48
Merge pull request #1869 from wwylele/dont-be-lazy
...
Switch context to the same thread if necessary
2016-06-28 21:03:52 -07:00
bunnei
87c07643ff
Merge pull request #1867 from mailwl/srv-update
...
srv: Update according 3dbrew
2016-06-28 18:53:10 -04:00
bunnei
8f86cc4df9
Merge pull request #1877 from wwylele/wait-fix-timeout
...
Thread: update timeout when reruning WaitSynch
2016-06-18 01:08:22 -04:00
bunnei
78f2b85fe6
Merge pull request #1842 from Subv/ports
...
Kernel: Added ClientPort and ServerPort classes, along with svcCreatePort.
2016-06-11 22:46:35 -04:00
Subv
7b445ddff0
Kernel/SVC: Implemented svcCreatePort.
2016-06-11 08:37:37 -05:00
wwylele
43183db51f
hid: add missing header
2016-06-11 08:45:29 +03:00
bunnei
f99961581e
Merge pull request #1789 from wwylele/input-refactor
...
Refactor input mapping & implement circle pad modifier
2016-06-10 22:28:58 -04:00
Subv
3d9fbffbab
Kernel: Added ClientPort and ServerPort classes.
...
This is part of an ongoing effort to implement support for multiple processes.
2016-06-05 09:35:31 -05:00
Lioncash
64b6a7c006
service: Add other DLP services
...
Specifically, dlp::CLNT and dlp::FKCL
Moves them to their own folder like with other services.
2016-06-04 19:43:33 -04:00
wwylele
7d56e88369
Thread: update timeout when rerunning WaitSynch
2016-06-04 09:27:16 +03:00
mailwl
07cc781163
gsp::gpu: Reset g_thread_id in UnregisterInterruptRelayQueue
2016-06-01 09:40:15 +03:00
mailwl
e85b22320a
Fix parameter name in EnableNotification
2016-05-31 10:06:00 +03:00
mailwl
eea08f281d
Fix mistakes, add output header codes
2016-05-31 10:06:00 +03:00
mailwl
eb231cb19d
remove ugly function
2016-05-31 10:06:00 +03:00
mailwl
dc338ccecf
srv: Update according 3dbrew
2016-05-31 10:06:00 +03:00
wwylele
81d3462a19
Switch context on the same thread if necessary
2016-05-30 07:34:53 +03:00
bunnei
ab4b27f0f5
Merge pull request #1692 from Subv/rm_getpointer2
...
Memory: Remove most usages of GetPointer
2016-05-29 21:57:07 -04:00
bunnei
1104913a8f
Merge pull request #1756 from wwylele/config-cleanup
...
Config block: clean up
2016-05-28 20:42:17 -04:00
Subv
0aef634a54
Memory: Handle RasterizerCachedMemory and RasterizerCachedSpecial page types in the memory block manipulation functions.
2016-05-28 13:52:50 -05:00
Subv
660499ac01
Memory: Make ReadBlock and WriteBlock accept void pointers.
2016-05-28 13:52:49 -05:00
Subv
99695d03d2
SOC_U: Remove usage of GetPointer
2016-05-28 13:52:49 -05:00
MerryMage
59b268de35
SSL_C: Remove use of Memory::GetPointer
2016-05-28 13:52:48 -05:00
MerryMage
5f33d2cf07
GSP_GPU: Remove use of Memory::GetPointer
2016-05-28 13:52:47 -05:00
MerryMage
e936f5952c
DSP_DSP: Remove use of Memory::GetPointer
2016-05-28 13:44:49 -05:00
MerryMage
896e5009ae
FS/Archive: Remove use of Memory::GetPointer
2016-05-28 13:44:44 -05:00
Mat M
ade0889519
Merge pull request #1855 from MerryMage/memory-headers-20160526
...
Memory: Added necessary headers and removed unnecessary header
2016-05-26 14:19:31 -04:00
MerryMage
80abe6eb08
Memory: Added necessary headers and removed unnecessary header
2016-05-26 18:55:37 +01:00
bunnei
c106f71beb
New3DS: Minor style cleanup to #1520 .
2016-05-24 17:24:11 -04:00
bunnei
2e5e7d9be0
Merge pull request #1520 from JamePeng/checknew3ds
...
Implement CheckNew3DS and CheckNew3DSApp
2016-05-24 17:19:26 -04:00
MerryMage
64068583fb
CFG: Remove use of Memory::GetPointer
2016-05-21 11:14:13 -05:00
MerryMage
fddd243b17
APT: Remove use of Memory::GetPointer
2016-05-21 11:14:12 -05:00
MerryMage
1ebaaf9bb1
Kernel/Thread: Remove use of Memory::GetPointer
2016-05-21 11:14:11 -05:00
MerryMage
aa84cab4e9
Applets/swkdb: Remove use of Memory::GetPointer
2016-05-21 11:14:10 -05:00
wwylele
86ea7995ad
SVC::WaitSynchronizationN: Reschedule at the end
2016-05-21 18:29:38 +03:00
András Domonkos
960297e577
Update ACT:U and create ACT:A ( #1809 )
...
* Update ACT_U
* Create act_a.h
* Create act_a.cpp
* Add service ACT:A
* Add ACT:A source and header
* Fix wrong header
2016-05-17 21:28:25 -04:00
bunnei
a39144050b
Merge pull request #1800 from JayFoxRox/set-fpscr
...
Set fpscr for new threads
2016-05-17 21:24:57 -04:00
Jannik Vogel
af37dd0d52
Set fpscr for new threads
2016-05-17 08:59:52 +02:00
Maribel
5c8beca792
DSP_DSP: Remove GetHeadphoneStatus logspam ( #1799 )
2016-05-15 20:43:01 -04:00
wwylele
6cccdcacd2
fixup! fixup! Refactor input system
2016-05-15 19:35:06 +03:00
wwylele
03631f9b8f
Refactor input subsystem
2016-05-15 13:24:22 +03:00
Subv
64da2bf0cd
Memory: Fixed a regression caused by #1695 and #1689 .
...
Reserve enough space in the vector that holds the linear heap memory to prevent relocations of the backing memory when growing too much.
Closes #1790
2016-05-14 11:24:19 -05:00
bunnei
18b517e236
Merge pull request #1689 from Subv/shmem
...
Kernel: Implemented shared memory.
2016-05-13 15:33:44 -04:00
bunnei
0d8bd3ba36
Merge pull request #1695 from Subv/tls_alloc
...
Kernel/Threads: Dynamically allocate the TLS region for threads.
2016-05-12 21:51:35 -04:00
Subv
ac2de12ed8
HLE/Applets: Give each applet its own block of heap memory, and use that when creating the framebuffer shared memory block.
2016-05-12 20:01:59 -05:00
Subv
d261984f54
Kernel: Account for automatically-allocated shared memories in the amount of used linear heap memory.
2016-05-12 20:01:59 -05:00
Subv
abf8dcd700
APT: Move the shared font loading and relocation functions to their own subdirectory services/apt/bcfnt.
2016-05-12 20:01:54 -05:00
Subv
5679d066b5
Kernel/SharedMemory: Log an error when Map fails.
2016-05-12 20:01:27 -05:00
Subv
0fb6d2a247
Kernel: Implemented shared memory permissions.
2016-05-12 20:01:26 -05:00
Subv
9005cda664
APT: Implement relocating the shared font to its true address.
2016-05-12 20:01:20 -05:00
Subv
f72bd57212
Kernel/Memory: Remove the Shared Memory region from the legacy memory map.
2016-05-12 20:00:33 -05:00
Subv
1bd0cf542f
Kernel/SharedMemory: Properly implemented shared memory support.
...
Applications can request the kernel to allocate a piece of the linear heap for them when creating a shared memory object.
Shared memory areas are now properly mapped into the target processes when calling svcMapMemoryBlock.
Removed the APT Shared Font hack as it is no longer needed.
2016-05-12 20:00:32 -05:00
Subv
42a50da76b
Kernel/SVC: Fixed the register order for svcCreateMemoryBlock.
...
R0 is used as the last parameter instead of R4.
2016-05-12 20:00:29 -05:00
bunnei
282a2ad539
Merge pull request #1766 from Subv/log_cpu
...
Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1)
2016-05-08 15:03:08 -04:00
bunnei
6abc6003f5
Merge pull request #1718 from alex-laties/fixup-type-conversions
...
fixup simple type conversions where possible
2016-05-07 17:24:16 -04:00
bunnei
8e9b33a34a
Merge pull request #1761 from Subv/applets_fb
...
HLE/Applets: Use the correct size for the framebuffer SharedMemory
2016-05-07 17:21:48 -04:00
Alexander Laties
0a31e373f1
fixup simple type conversions where possible
2016-05-07 11:41:55 -04:00
Subv
5b7f86708c
Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1).
...
We do not currently implement any cores other than the AppCore (Core 0).
2016-05-07 10:23:03 -05:00
Subv
d192fb066d
Kernel/Threads: Dynamically allocate the TLS region for threads in the BASE region of the linear heap.
...
Each thread gets a 0x200-byte area from the 0x1000-sized page, when all 8 thread slots in a single page are used up, the kernel allocates a new page to hold another 8 entries.
This is consistent with what the real kernel does.
2016-05-07 10:18:47 -05:00
Subv
6970b7d3d5
HLE/Applets: Use the correct size for the framebuffer SharedMemory in the swkbd and MiiSelector applets.
2016-05-07 10:01:40 -05:00
bunnei
75cbfeee58
Merge pull request #1762 from bunnei/global
...
hle: Get rid of direct global access to g_reschedule
2016-05-05 21:45:57 -04:00
bunnei
4cb2995c61
HLE: Rename RescheduleIsPending to IsReschedulePending.
2016-05-05 21:34:10 -04:00
mailwl
e311398a22
Layout Mii parameters input/output, and return success as result of applet work
2016-05-05 22:31:33 +03:00
wwylele
9b66e0dc8b
clean up config block
2016-05-03 19:27:47 +03:00
bunnei
a6e76c0903
Merge pull request #1732 from wwylele/config00170000
...
add config block 0x00170000; remove duplicated content
2016-05-02 19:04:20 -04:00
wwylele
7e1b76d406
remove duplicated function declaration
2016-05-01 07:44:55 +03:00
Emmanuel Gil Peyrot
691a42fe98
VideoCore: Run include-what-you-use and fix most includes.
2016-04-30 17:02:41 +01:00
bunnei
594bd182b4
Merge pull request #1650 from JamePeng/update-the-ndm-code
...
Update the stub code of NDM service!
2016-04-30 00:38:15 -04:00
bunnei
15d21c0dc5
Merge pull request #1647 from mailwl/acu-closeasync
...
ac:u: stub CloseAsync; align memory size in svc:GetProcessInfo(type=2)
2016-04-30 00:11:08 -04:00
bunnei
eb2d6e4015
Merge pull request #1699 from mailwl/gpu-rights
...
gsp::Gpu: implement AcquireRight, ReleaseRight functions
2016-04-29 20:50:08 -04:00
wwylele
84ade0713c
add config block 0x00170000
2016-04-29 13:31:29 +03:00
Yuri Kunde Schlesner
e3a8292495
Common: Remove section measurement from profiler ( #1731 )
...
This has been entirely superseded by MicroProfile. The rest of the code
can go when a simpler frametime/FPS meter is added to the GUI.
2016-04-29 00:07:10 -07:00
bunnei
1ecee38468
Merge pull request #1708 from MerryMage/dsp_dsp
...
DSP Service: Cleanup
2016-04-27 11:34:38 -04:00
MerryMage
c379b22117
DSP_DSP: Fix log format strings and arguments
2016-04-27 06:35:12 +01:00
MerryMage
2929b67c5f
DSP_DSP: Add return IPC headers
2016-04-27 06:35:08 +01:00
MerryMage
ff6db69c60
DSP_DSP: Updated interrupt implementation
2016-04-27 06:35:06 +01:00
bunnei
12f72a6597
y2r_u: Cleanup some formatting.
2016-04-26 21:50:56 -04:00
bunnei
61992170ac
Merge pull request #1447 from JamePeng/update-y2r-service
...
Update the code of service y2r!
2016-04-26 19:29:57 -04:00
Sam Spilsbury
e16541e47c
am: title_id is long long uint
2016-04-24 23:40:41 +08:00
MerryMage
913f7ee524
DSP_DSP: Remove unused variable
2016-04-24 09:01:53 +01:00
mailwl
67c657bf80
return checks if event and memory created
2016-04-23 16:17:03 +03:00
Sam Spilsbury
040b7386a9
fs: Fix what appears to be a typo (filename_size / file_size)
2016-04-23 11:54:02 +08:00
mailwl
efdff9ad3e
gsp::Gpu: implement AcquireRight, ReleaseRight functions
2016-04-22 21:15:25 +03:00
tfarley
22f3a7e94c
HWRasterizer: Texture forwarding
2016-04-21 17:27:56 -04:00
mailwl
bd8cc69893
ac:u: stub CloseAsync; check memory size aling in svc:GetProcessInfo(type=2)
2016-04-21 10:34:45 +03:00
JamePeng
14602287f7
Update the stub code of NDM service!
2016-04-21 02:25:58 +08:00
JamePeng
854912ca5d
Update the code of service y2r!
2016-04-20 18:38:01 +08:00
JamePeng
7129611e65
Implement CheckNew3DS and CheckNew3DSApp
...
Append an item[is_new3ds] to config file[System] group
Implement APT::SetNSStateField,it will update the unknown NS_state_field
2016-04-20 18:12:05 +08:00
bunnei
32dfd4b4fe
Merge pull request #1612 from ObsidianX/get-set-sockopt
...
SOC:U GetSockOpt/SetSockOpt
2016-04-18 20:45:19 -04:00
Lioncash
1cc183703a
core: Clean out some unnecessary header includes
2016-04-16 00:08:49 -04:00
mailwl
df0a81621f
Set Kernel config "Unknown Value" to 0x1
2016-04-11 13:47:52 +03:00
JamePeng
9045c57d6f
update the code of AM service! ( #1623 )
2016-04-08 15:44:00 -04:00
mailwl
61ec5fa776
cecd:u: stub GetCecStateAbbreviated ( #1648 )
2016-04-08 15:39:52 -04:00
bunnei
f531d4b810
Merge pull request #1577 from JamePeng/update-apta-func
...
Append the missing function name"GetAppletInfo", "SetAppCpuTimeLimit" and "GetAppCpuTimeLimit" to APT:A
2016-04-06 21:07:08 -04:00
JamePeng
857bf9cd09
append SetAppCpuTimeLimit and GetAppCpuTimeLimit to APT:A
2016-04-06 14:24:09 +08:00
bunnei
dccadce074
Merge pull request #1435 from mailwl/frd_u
...
frd:u: Initial stub some functions
2016-04-05 23:04:35 -04:00
Mathew Maidment
aa6380e5bc
Merge pull request #1643 from MerryMage/make_unique
...
Common: Remove Common::make_unique, use std::make_unique
2016-04-05 20:10:11 -04:00
MerryMage
a06dcfeb61
Common: Remove Common::make_unique, use std::make_unique
2016-04-05 13:31:17 +01:00
JamePeng
af9a8258b9
implement APT::GetStartupArgument
2016-04-05 02:04:58 +08:00
JamePeng
ef47d855ce
Append the missing function name"GetAppletInfo" to APT:A
2016-04-05 01:57:18 +08:00
bunnei
6d24c73ea9
Merge pull request #1616 from exhalatio/dlp_dummy
...
Dummy implementation dlp:SRVR Service.
2016-04-03 10:10:58 -04:00
exhalatio
bbdfbe44e6
Dummy implementation dlp:SRVR Service.
2016-04-03 06:05:20 +09:00