archshift
20d2ed0950
Make OpenDirectory fail if the directory doesn't exist
...
This is in line with what the hardware itself does.
It does this by splitting the initial directory opening into Directory.Open(), which will return false if a stat fails.
Then, Archive::OpenDirectory will return nullptr, and archive.cpp will return an error code .
2014-12-07 14:47:14 -08:00
Subv
bc318c464b
Mutex: Remove some forward declarations
...
Moved Mutex::WaitSynchronization to the end of the file.
2014-12-07 15:57:28 -05:00
Subv
64128aa61a
Mutex: Release all held mutexes when a thread exits.
2014-12-07 15:44:21 -05:00
bunnei
2aa2d341d0
Merge pull request #245 from rohit-n/null-nullptr
...
Change NULLs to nullptrs.
2014-12-07 13:40:04 -05:00
Subv
e3c8e4901c
Mutex: Properly lock the mutex when a thread enters it
...
Also resume only the next immediate thread waiting for the mutex when it is released, instead of resuming them all.
2014-12-05 23:40:43 -05:00
bunnei
17fae11fc7
Merge pull request #250 from Subv/cbranch_2
...
SVC: Implemented GetThreadId.
2014-12-04 22:15:03 -05:00
bunnei
5056329a80
Merge pull request #222 from archshift/renamexyz
...
Implemented RenameFile and RenameDirectory in FS:USER
2014-12-04 22:07:47 -05:00
bunnei
21d183e1e6
Merge pull request #248 from lioncash/kernel
...
Misc minor kernel-related changes.
2014-12-04 22:05:20 -05:00
Subv
6fac2bf0ab
Threads: Remove a redundant function.
...
Use the next_thread_id variable directly.
2014-12-04 14:59:56 -05:00
Subv
ef1d5cda06
Threads: Implemented a sequential thread id
2014-12-04 08:13:53 -05:00
archshift
139a4d91d9
Updated archive.cpp functions for proper error handling
2014-12-03 22:50:44 -08:00
Subv
029ff9f1fd
SVC: Implemented GetThreadId.
...
For now threads are using their Handle value as their Id, it should not really cause any problems because Handle values are unique in Citra, but it should be changed. I left a ToDo there because this is not correct behavior as per hardware.
2014-12-04 00:25:35 -05:00
bunnei
846dc72a37
Merge pull request #249 from lioncash/enum
...
mem_map: Make enum for addresses use u32 as the underlying type
2014-12-04 00:01:13 -05:00
bunnei
306b5392ca
Merge pull request #247 from lioncash/const
...
hid_user: Pass by reference with PadButtonPress/PadButtonRelease
2014-12-03 23:56:35 -05:00
Lioncash
3ba32d2b53
mem_map: Make enum for addresses use u32 as the underlying type
2014-12-03 23:36:45 -05:00
bunnei
abbc340957
Merge pull request #238 from archshift/dsp
...
Add stub for ConvertProcessFromDspDram
2014-12-03 23:35:06 -05:00
archshift
a404ad5272
Add stub for ConvertProcessFromDspDram
...
Should theoretically push retail stuff further along
2014-12-03 20:03:57 -08:00
Lioncash
208598dbe2
kernel: Shorten GetCount
2014-12-03 22:52:02 -05:00
Lioncash
9b68d5e074
kernel: Make some functions const
2014-12-03 19:48:34 -05:00
Lioncash
7ff8f0d916
hid_user: Pass by reference with PadButtonPress/PadButtonRelease
2014-12-03 19:33:54 -05:00
purpasmart96
16fc98af64
PTM_U: Added a stub for GetBatteryLevel & GetBatteryChargeState & GetAdapterState
2014-12-03 15:09:59 -08:00
Rohit Nirmal
8a62423970
Change NULLs to nullptrs.
2014-12-03 12:57:57 -06:00
bunnei
e5b2733801
Merge pull request #231 from purpasmart96/serv_ac_wifi_status
...
AC_U: Added a stub for GetWifiStatus
2014-12-03 10:00:13 -05:00
bunnei
e2e56c7bac
Merge pull request #219 from Subv/ptm
...
PTM_U: Implemented the GetShellState function.
2014-12-03 09:58:52 -05:00
bunnei
e3886adc22
MemMap: Updated memory map to subtract base address instead of mask.
...
- More readable, a little less error prone.
Conflicts:
src/core/mem_map.h
src/core/mem_map_funcs.cpp
2014-12-03 01:23:29 -05:00
purpasmart96
32d420330d
AC_U: Added a stub for GetWifiStatus
2014-12-02 15:30:42 -08:00
bunnei
884ecd58ea
Merge pull request #224 from bunnei/dsp-service-improvements
...
Dsp service improvements
2014-11-30 23:21:34 -05:00
bunnei
b0a5b3d986
Merge pull request #214 from Subv/master
...
CFG:U: Implemented the GetCountryCodeID and GetCountryCodeString
2014-11-30 23:19:07 -05:00
bunnei
3e286fff7c
DSP: Added stubs for several commonly used DSP service functions.
2014-11-30 23:14:57 -05:00
bunnei
45fd3fe5c4
DSP: Fixed typo in port name.
2014-11-30 23:14:48 -05:00
Subv
4cdaac44d3
PTM_U: Implemented the GetShellState function.
2014-11-30 19:50:14 -05:00
bunnei
e3d1ffff4b
Merge pull request #225 from bunnei/fix-release-mutex
...
Mutex: Changed behavior to always release mutex for all threads.
2014-11-30 08:47:49 -05:00
bunnei
a5afad0937
Merge pull request #226 from bunnei/svc-and-thread-fixes
...
Svc and thread fixes
2014-11-30 08:41:49 -05:00
bunnei
13005d54aa
Merge pull request #235 from yuriks/dyncom-map
...
dyncom: Use unordered_map rather than the terrible 2-level bb_map
2014-11-30 08:35:03 -05:00
Subv
5753da89e4
CFG:U: Implemented the GetCountryCodeID and GetCountryCodeString.
2014-11-29 21:16:28 -05:00
Yuri Kunde Schlesner
4a68e91a62
dyncom: Use unordered_map rather than the terrible 2-level bb_map
...
Seems (probably just placebo/wishful thinking) to make it slightly
faster. Also reduces memory usage and makes shutdown when debugging from
MSVC fast.
2014-11-29 17:42:39 -02:00
Lioncash
4f28861008
arm_dyncom_interpreter: Get rid of unused var warnings
2014-11-29 14:13:29 -05:00
vaguilar
223e76d51d
Fixed formatting and switch statement warnings
2014-11-27 02:59:14 -08:00
bunnei
de851ba1a1
Thread: Check that thread is actually in "wait state" when verifying wait.
2014-11-26 15:04:08 -05:00
bunnei
f985469901
SVC: Add debug log to ArbitrateAddress.
2014-11-26 15:04:07 -05:00
bunnei
e0e7443517
SVC: SleepThread should yield to the next ready thread.
2014-11-26 15:04:07 -05:00
bunnei
a449e0e11a
Mutex: Changed behavior to always release mutex for all threads.
2014-11-26 14:38:42 -05:00
Emmanuel Gil Peyrot
f8c05e53c4
Remove unused includes to common/thread.h
2014-11-25 20:39:25 +00:00
archshift
43a682a106
Log the cmd_buff arguments when citra comes across an unimplemented function
2014-11-24 15:51:48 -08:00
archshift
e5ff01c2cd
Implemented RenameDirectory in FS:USER
2014-11-24 15:09:12 -08:00
archshift
45afc15aa6
Implemented RenameFile in FS:USER
2014-11-24 15:09:11 -08:00
Yuri Kunde Schlesner
8189593255
Use pointers instead of passing handles around in some functions.
2014-11-24 17:08:37 -02:00
Yuri Kunde Schlesner
22c86824a4
Remove duplicated docs/update them for changed parameters.
2014-11-24 17:08:36 -02:00
Yuri Kunde Schlesner
c2588403c0
HLE: Revamp error handling throrough the HLE code
...
All service calls in the CTR OS return result codes indicating the
success or failure of the call. Previous to this commit, Citra's HLE
emulation of services and the kernel universally either ignored errors
or returned dummy -1 error codes.
This commit makes an initial effort to provide an infrastructure for
error reporting and propagation which can be use going forward to make
HLE calls accurately return errors as the original system. A few parts
of the code have been updated to use the new system where applicable.
One part of this effort is the definition of the `ResultCode` type,
which provides facilities for constructing and parsing error codes in
the structured format used by the CTR.
The `ResultVal` type builds on `ResultCode` by providing a container for
values returned by function that can report errors. It enforces that
correct error checking will be done on function returns by preventing
the use of the return value if the function returned an error code.
Currently this change is mostly internal since errors are still
suppressed on the ARM<->HLE border, as a temporary compatibility hack.
As functionality is implemented and tested this hack can be eventually
removed.
2014-11-24 17:08:36 -02:00
Yuri Kunde Schlesner
924bbde89b
Change some SkyEye defines to const ints
...
This prevents them from interfering with other constants defined in
different namespaces.
2014-11-24 16:47:01 -02:00
bunnei
ef1b16a7eb
Merge pull request #191 from archshift/deletexyz
...
Added DeleteFile and DeleteDirectory functions to FS:USER and the archives.
2014-11-23 20:02:23 -05:00
archshift
8aeadbd95a
Added DeleteFile and DeleteDirectory functions to FS:USER and the archives.
2014-11-23 00:33:43 -08:00
purpasmart96
9821bfcb8e
Add more services and some fixes, along with more "override"
...
in the service's headers
2014-11-20 17:09:57 -08:00
bunnei
c0cd0fa78e
Merge pull request #211 from linkmauve/master
...
Remove trailing spaces from the entire project
2014-11-19 15:24:46 -05:00
bunnei
112768f436
Merge pull request #208 from lioncash/statics
...
Add static to some variables
2014-11-19 09:39:20 -05:00
Emmanuel Gil Peyrot
739bb58c3a
Remove tabs in all files except in skyeye imports and in generated GL code
2014-11-19 09:04:03 +00:00
Emmanuel Gil Peyrot
f5d38649c7
Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generated
2014-11-19 09:03:07 +00:00
Lioncash
7cbecde2ca
Add static to some variables
2014-11-18 20:04:00 -05:00
Tony Wasserka
219628d1c8
Merge pull request #207 from lioncash/docs
...
Fix documentation of parameters
2014-11-18 16:55:58 +01:00
Tony Wasserka
d218a547fa
Merge pull request #209 from lioncash/warn
...
directory_sdmc: Fix a signed/unsigned mismatch comparison
2014-11-18 16:54:56 +01:00
Tony Wasserka
ed4e599008
Merge pull request #210 from lioncash/typedef
...
system: Get rid of an unnecessary enum typedef
2014-11-18 16:54:37 +01:00
Lioncash
b37f91c617
system: Get rid of an unnecessary enum typedef
2014-11-18 09:00:32 -05:00
Lioncash
548c49dfe9
directory_sdmc: Fix a signed/unsigned mismatch comparison
2014-11-18 08:51:03 -05:00
Lioncash
64cc6cb6cf
Fix documentation of parameters
2014-11-18 08:31:24 -05:00
Lioncash
1a8f466217
Remove extraneous semicolons
2014-11-18 08:27:16 -05:00
Lioncash
72846c418e
core: Mark some hle functions as static
...
These functions are not referred to by their linkage name outside of the translation unit, so they can be marked as static.
2014-11-17 22:41:49 -05:00
bunnei
11641b5e79
Archive: Fixed to not destroy archive handle on close.
2014-11-17 22:19:14 -05:00
bunnei
bcb0dbf7e1
Archive: Fixed close archive before freeing.
2014-11-17 22:19:14 -05:00
bunnei
3e09c07378
FS_User: Support FileSye::Path in a more generic way.
...
added a todo to kernel archive
2014-11-17 22:18:58 -05:00
bunnei
a3107a6b57
FileSys: Updated backend code to use FileSys::Path instead of string for paths.
2014-11-17 21:49:24 -05:00
bunnei
c04a04189a
FileSys: Added DebugStr method to Path class.
2014-11-17 18:42:37 -05:00
bunnei
4ac4c3caf1
Merge pull request #201 from archshift/boss
...
Add missing boss:U service
2014-11-17 17:46:18 -05:00
archshift
e27f169acb
Add missing boss:U service, needed according to Nintendo Zone logs.
2014-11-17 07:31:37 -08:00
Lioncash
cfea27a615
mem_map: Add missing prototype for Write64
2014-11-16 22:50:13 -05:00
Tony Wasserka
80e9c02bd6
Merge pull request #159 from SeannyM/enable_log
...
Add support for disabling log from settings
2014-11-15 12:42:08 +01:00
bunnei
26622818ae
Merge pull request #193 from lioncash/fmt
...
Fix two format strings.
2014-11-15 01:41:28 -05:00
bunnei
613627205c
Merge pull request #194 from lioncash/virt
...
ARM_Interface: Make destructor virtual
2014-11-15 01:38:51 -05:00
Lioncash
e8f4361d76
ARM_Interface: Make destructor virtual
...
Fixes some warnings on OSX.
2014-11-14 12:10:35 -05:00
Lioncash
ac58b76e71
Fix two format strings.
2014-11-14 12:08:26 -05:00
bunnei
3cfdabb2e3
Merge pull request #183 from archshift/lowpath
...
Add support for UTF-16 strings for LowPaths in FS:USER
2014-11-12 22:56:27 -05:00
archshift
1f7c4ab7f6
Use std::u16string for conversion between UTF-8 and UTF-16, FS:USER functions
2014-11-12 19:30:17 -08:00
bunnei
a490490336
Merge pull request #188 from bunnei/apt-fixes
...
APT_U: Various improvements and bug fixes.
2014-11-12 00:06:45 -05:00
bunnei
9fb549cb84
APT_U: Added stub for function AppletUtility.
2014-11-11 23:51:54 -05:00
bunnei
19cfcfe8c0
APT_U: Set a valid parameter buffer size in GlanceParameter.
...
- Also Clarified GlanceParameter/ReceiveParameter documentation.
2014-11-11 23:51:54 -05:00
bunnei
8eced1b697
APT_U: Release service lock on initialization.
2014-11-11 23:51:54 -05:00
bunnei
0df9c34410
APT_U: Fixes for GetLockHandle to boot system titles.
...
- Also added comment to GetLockHandle function.
2014-11-11 23:51:33 -05:00
bunnei
b8e6f52419
ARM: Fixed dyncom to use reg15 for PC (this core doesn't use pc variable).
...
- Fixes single stepping in debugger.
2014-11-11 19:54:18 -05:00
bunnei
ce1125d490
Core: Changed RunLoop iterations to 1000 (slightly better performance).
2014-11-11 19:54:09 -05:00
bunnei
573756e241
ARM: Removed unnecessary goto with each instruction.
2014-11-11 19:53:46 -05:00
bunnei
3409790668
ARM: Fixed several dyncom bugs.
...
- Fixed NZCVT flags to properly save state when function returns.
- Fixed counter to keep track of the actual number of instructions executed.
- Fixed single-step mode to only execute one instruction at a time.
- DefaultIni: Removed comment that no longer applied to dyncom.
2014-11-11 19:53:19 -05:00
archshift
37e582c395
Add FRD:U service and functions
2014-11-10 22:43:45 -08:00
archshift
0ad5964c8b
Add support for UTF-16 strings for LowPaths in FS:USER
2014-11-10 10:53:26 -08:00
Sean
371b61f3ea
Add support for disabling log from settings
2014-11-03 17:00:32 -05:00
Sean Maas
d06420807c
Fix compilation errors
2014-11-02 18:43:52 -05:00
bunnei
9be17e4d84
Merge pull request #163 from archshift/create-directory
...
Added CreateDirectory function to service/fs.cpp, and in Archive.
2014-11-02 17:15:52 -05:00
bunnei
7f9bcacdf7
Merge pull request #166 from bunnei/skyeye-vfp-fixes
...
SkyEye ARM/VFP fixes
2014-11-02 17:09:35 -05:00
archshift
04c90c395d
Added CreateDirectory function to service/fs.cpp, and in Archive.
2014-11-02 10:48:28 -08:00
archshift
40a84833ae
Added ReceiveNotification, PublishToSubscriber unimplemented functions to SRV
2014-11-01 23:15:38 -07:00
bunnei
0832cf7cd7
ARM: Merged additional ARMv6 instructions implemented by 3dmoo.
2014-11-02 01:04:54 -05:00
bunnei
bc6989b075
ARM: Merge latest VFP fixes from 3dmoo team.
2014-11-02 01:04:41 -05:00