bunnei
542b0b0057
Merge pull request #466 from Subv/wake
...
Thread: Prevent waking a thread multiple times.
11 years ago
Subv
b68d51ed30
Thread: Prevent waking a thread multiple times.
...
If a thread was woken up by something, cancel the wakeup timeout.
11 years ago
Subv
38da198aa1
SVC: Wake up the thread after the delay in WaitSync1
11 years ago
archshift
3b555e2512
Stubbed y2r:u IsBusyConversion
...
There is no documentation available on this function, but we set the result to false as a stub.
This allows Super Little Acorns to move all the way in game with pp3c.
11 years ago
archshift
95be6ad7ae
Added Archive ID to fs:USER debug logs involving opening the archive.
11 years ago
archshift
228843c43e
Logging: Log all called service functions (under trace). Compile out all trace logs under release for performance.
11 years ago
Yuri Kunde Schlesner
8ad41775cc
Kernel: Start using boost::intrusive_ptr for lifetime management
11 years ago
Yuri Kunde Schlesner
d751de7341
Kernel: Don't re-assign object's handle when duplicating one
11 years ago
bunnei
6ae12424df
Merge pull request #444 from yuriks/handle-reform2
...
Kernel Lifetime Reform Pt. 2
11 years ago
bunnei
86e07124ad
Merge pull request #436 from kevinhartman/system-core
...
Warn if a new thread is intended to be run on the system CPU core
11 years ago
Yuri Kunde Schlesner
78ea76e12f
Thread: Fix nullptr access in a logging function
11 years ago
Yuri Kunde Schlesner
7f1557fbbd
Thread: Rename thread_queue => thread_list
11 years ago
Yuri Kunde Schlesner
9bf8462b96
Thread: Reduce use of Handles and move some funcs to inside the class.
11 years ago
Yuri Kunde Schlesner
ba72208cd4
Kernel: Move Thread's definition to the header file
11 years ago
Yuri Kunde Schlesner
7b3452c730
Move ThreadContext to core/core.h and deal with the fallout
11 years ago
bunnei
d46f650036
Merge pull request #255 from Subv/cbranch_3
...
Implemented timers
11 years ago
Subv
07044651ef
SVC: Implemented the Timer service calls.
11 years ago
Subv
dfc440785a
SVC: Fixed SleepThread.
...
It will now properly wait the specified number of nanoseconds and then wake up the thread.
11 years ago
Subv
60a373a786
Threads: Use a dummy idle thread when no other are ready.
...
This thread will not actually execute instructions, it will only advance the timing/events and try to yield immediately to the next ready thread, if there aren't any ready threads then it will be rescheduled and start its job again.
11 years ago
bunnei
b659cac2dc
Merge pull request #404 from bunnei/more-frame-synch-fixes
...
GPU: Toggle active framebuffer each frame
11 years ago
bunnei
f7a3f45f1e
GSP: Toggle active framebuffer each frame
11 years ago
bunnei
e6864a1f41
Merge pull request #431 from yuriks/thread-queue-cleanup
...
Common: Clean up ThreadQueueList
11 years ago
Kevin Hartman
63be6aaadd
Warn if a new thread is intended to be run on the system CPU core until we implement correct scheduling for such a thread.
11 years ago
Yuri Kunde Schlesner
122c2bb324
Common: Clean up ThreadQueueList
...
Replace all the C-style complicated buffer management with a std::deque.
In addition to making the code easier to understand it also adds support
for non-POD IdTypes.
Also clean the rest of the code to follow our code style.
11 years ago
Yuri Kunde Schlesner
a6ad68190f
Fix double-free in Service manager during shutdown
...
Fixes #423 .
11 years ago
bunnei
088863c921
Merge pull request #376 from Subv/arc_reorder
...
Archives: Change the folder layout of some archives.
11 years ago
Subv
32dbb76e00
Archives: Changed the unimplemented archives comment.
...
It now refers to me as the PoC
11 years ago
Subv
5244ac0e9c
Archives: Addressed some comments
11 years ago
bunnei
9eaef4e04a
Merge pull request #413 from purpasmart96/serv_clean
...
Services: Clean up a few things and add a few function names
11 years ago
bunnei
9b83f0e158
Merge pull request #272 from rohit-n/sign-compare
...
Silence some -Wsign-compare warnings.
11 years ago
purpasmart96
379b39e583
Services: Clean up a few things and add a few function names
11 years ago
bunnei
e9650f1c61
DSP: Signal (faked) interrupt on every frame.
...
- Hack to work around games checking that the DSP event has been signaled by a real DSP interrupt.
11 years ago
bunnei
cc23269ff4
Merge pull request #407 from Subv/arbiter
...
AddressArbiter: Ported arbitration type 2 from 3dmoo.
11 years ago
bunnei
96e6b2aa50
Merge pull request #408 from Subv/mutex
...
Mutex: Add the calling thread to the waiting list when needed
11 years ago
bunnei
26f31a2dfb
Merge pull request #386 from archshift/y2ru
...
Stub the y2r:u service
11 years ago
Subv
ea80363cc2
Mutex: Add the calling thread to the waiting list when needed
...
This will happen when the mutex is already owned by another thread. Should fix some issues with games being stuck due to waiting threads not being awoken.
11 years ago
Subv
90dffe3fc1
Archives: Make SYSTEM_ID and SDCARD_ID strings
11 years ago
Subv
71a063f45c
Archives: Changed the way paths are built for the archives.
...
Each archive now takes a mount point of either NAND or SDMC, and builds its own directory structure there, trying to simulate an HLE-friendly hardware layout
11 years ago
archshift
48130b1eaa
Stub the y2r:u service
11 years ago
Subv
0276a75f24
AddressArbiter: Ported arbitration type 2 from 3dmoo.
...
(Thanks 3dmoo!)
11 years ago
Subv
3bc9f5509b
Archives: Change the folder layout of some archives.
...
This is to better represent the hardware layout, they are still aren't quite accurate, but this better and will help a bit when implementing the other archives like NAND-RO and NAND-RW
11 years ago
Subv
aade417b14
Archives: Reduced duplicate code in RomFS and SaveCheck.
...
Fixed a few warnings and cleaned up the code
11 years ago
Subv
13efbdc201
SaveDataCheck: Preliminary work in this archive.
...
This allows Steel Diver to boot further, some files are needed.
This is still not ready and needs a big cleanup, this will possibly be delayed until the way we handle archives is fixed (with factory classes instead of ahead-of-time creation of archives)
11 years ago
bunnei
3d9bf13439
Merge pull request #391 from lioncash/pedantic
...
archive/elf: Minor misc changes.
11 years ago
Lioncash
0d81b1e75b
archive: Fix initializer list order
11 years ago
Lioncash
bdbd111c7e
soc_u: Fix a missing formatting argument
11 years ago
Rohit Nirmal
c589d82052
Silence some -Wsign-compare warnings.
11 years ago
Subv
97a7381d29
SOC_U: Preliminary implementation of sockets.
...
Stubbed CreateMemoryBlock
Using Berkeley sockets, and Winsock2.2 on Windows.
So far ftpony creates the socket and accepts incoming connections
SOC_U: Renamed functions to maintain consistency
Also prevents possible scope errors / conflicts with the actual Berkeley socket functions
SOCU: Close all the opened sockets when cleaning up SOCU
11 years ago
Subv
545ded954d
APT:A: Some style changes
11 years ago
Subv
2c89d4d5cd
Archives: Implemented ExtSaveData and SharedExtSaveData
...
They will be stored in /extsavedata/SDMC and /extsavedata/NAND respectively.
Also redirect some APT_A functions to their APT_U equivalents.
Implemented the gamecoin.dat file in SharedExtSaveData in the PTM module.
Implemented formatting the savegame.
Retake a previous savegame if it exists instead of reporting them as not formatted every time a game is loaded.
11 years ago
Yuri Kunde Schlesner
7e2903cb74
Kernel: New handle manager
...
This handle manager more closely mirrors the behaviour of the CTR-OS
one. In addition object ref-counts and support for DuplicateHandle have
been added.
Note that support for DuplicateHandle is still experimental, since parts
of the kernel still use Handles internally, which will likely cause
troubles if two different handles to the same object are used to e.g.
wait on a synchronization primitive.
11 years ago
Yuri Kunde Schlesner
23f2142009
Kernel: Replace GetStaticHandleType by HANDLE_TYPE constants
11 years ago
Yuri Kunde Schlesner
73fba22c01
Rename ObjectPool to HandleTable
11 years ago
bunnei
e5ddbfee02
Merge pull request #339 from bunnei/fixup-gsp-synch
...
Fixup gsp synch
11 years ago
bunnei
5d2ee78d8f
Merge pull request #330 from purpasmart96/new_srv
...
More services & small clean ups
11 years ago
bunnei
4783133bbd
ARM: Add a mechanism for faking CPU time elapsed during HLE.
...
- Also a few cleanups.
11 years ago
purpasmart96
9796bc1fa2
More services & small clean ups
11 years ago
archshift
81a538ccc2
Stubbed IsSdmcWriteable to always return writeable.
11 years ago
bunnei
2188af4a65
Merge pull request #322 from chinhodado/master
...
More warning cleanups
11 years ago
Subv
2030f9d946
CFG: Fixed some warnings and errors in Clang
11 years ago
Subv
304735fb52
CFG: More style changes
11 years ago
Subv
f080e3ccfa
CFGU: Indentation
11 years ago
Subv
6f304d3b00
CFG: Some indentation
11 years ago
Subv
b3cee19289
CFG: Changed the CreateConfigInfoBlk search loop
11 years ago
Subv
3e94b9054c
CFG: Corrected the licenses in cfg_i.cpp and cfg_u.cpp
11 years ago
Subv
6115f013a9
CFG: Create a new subfolder cfg inside service to handle cfg
...
Moved most of the shared CFG code there, implemented a few CFG:I functions
11 years ago
Subv
9e45240e23
CFGU: Some changes
11 years ago
Subv
cdd78fa01d
CFGU: Addressed some issues.
11 years ago
Subv
718a120754
CFGU: Addressed some comments.
11 years ago
Subv
a1b9b80a55
Style: Addressed some comments
11 years ago
Subv
a7cc7972de
CFG_U: Use Common::make_unique instead of the std version
11 years ago
Subv
9029efd873
CFG:U: Implemented some more blocks
11 years ago
Subv
8b0ee93526
CFG: Implemented block 0x00070001 in the config savefile
11 years ago
Subv
b3d1c8ba6a
CFGU: Use an absolute offset in the config savefile blocks
11 years ago
Subv
95ca6ae1e1
CFG: Load the Config savedata file if it already exists.
11 years ago
Subv
b49bdb6ba7
CFGU: Added block 0x000A0002 to the default savegame file
...
That's the language id block, we're using LANGUAGE_EN for now. This block allows some games to boot further
11 years ago
Subv
4cd21b43c1
CFG: Refactored how the config file works.
...
It is now kept in memory as per 3dbrew, all updates happen on memory, then they can be saved using UpdateConfigNANDSavegame.
11 years ago
Subv
462740278d
CFG:U: Add some data to the 0x00050005 config block.
...
Seems to allow some games to boot further, thanks @Normmatt for sharing this information
11 years ago
Subv
fa3d72ab3e
CFG: Implemented the GetConfigInfoBlk2 function.
...
Added a "config" file to the CFG process service (CFG:U), and added a few default blocks to it.
Implemented GetSystemModel and GetModelNintendo2DS
11 years ago
bunnei
0de6a08d75
Merge pull request #291 from purpasmart96/license
...
License change
11 years ago
Chin
0199a7d9ef
More warning cleanups
11 years ago
bunnei
572ce043c2
Merge pull request #271 from archshift/createf
...
Added CreateFile to the FS_USER service
11 years ago
archshift
0625dd09ea
Added CreateFile to the FS_USER service
...
Tested with hwtests.
11 years ago
purpasmart96
ebfd831ccb
License change
11 years ago
bunnei
4fcdbed9f6
Thread: Wait current thread on svc_SleepThread
...
- Removed unused VBLANK sleep mode
- Added error log for bad context switch
- Renamed VerifyWait to CheckWaitType to be more clear
11 years ago
bunnei
2e5869c939
Merge pull request #316 from yuriks/thread-handle
...
Kernel: Implement support for current thread pseudo-handle
11 years ago
bunnei
2b0d7a1d29
Merge pull request #315 from chinhodado/master
...
Clean up some warnings
11 years ago
Chin
e795692614
Clean up some warnings
11 years ago
Yuri Kunde Schlesner
82528ba7df
Common: Add a clone of std::make_unique
11 years ago
Yuri Kunde Schlesner
adee775f44
Kernel: Implement support for current thread pseudo-handle
...
This boots a few (mostly Nintendo 1st party) games further.
11 years ago
bunnei
f1309e6bf0
Merge pull request #306 from Subv/even_more_savedata
...
SaveData: Added some documentation to FormatSaveData
11 years ago
Subv
fc73bef692
FS_U: Added the command to the docs of SaveData functions
11 years ago
bunnei
017e6a488e
Merge pull request #302 from purpasmart96/flushshutup
...
GSP_GPU: Shut up FlushDataCache
11 years ago
purpasmart96
b2c64eb5ff
GSP_GPU: Shut up FlushDataCache
11 years ago
bunnei
765dbabdb6
Merge pull request #308 from Subv/more_savedata
...
SystemSaveData: Fixed a typo that was segfaulting
11 years ago
Subv
78e0f36857
SystemSaveData: Fixed a typo that was segfaulting
11 years ago
bunnei
c71f8840e5
Merge pull request #301 from Subv/more_savedata
...
SaveData: Implemented the SystemSaveData archive.
11 years ago
Subv
77f0cdfaf4
SaveData: Added some documentation to FormatSaveData
...
We still don't know what the other parameters do, but they appear to be very similar to those of FormatThisUserSaveData.
Most likely FormatThisUserSaveData is just an alias for FormatSaveData with LowPathType Empty
11 years ago
Subv
bec527fa24
SaveData: Implemented the SystemSaveData archive.
...
It will be stored in the /syssavedata folder. This archive is user by various Services and possibly games via the FS:U service.
11 years ago
bunnei
7bae450379
Merge pull request #185 from purpasmart96/mem_perm
...
Kernel: Add missing permissions
11 years ago
Subv
ea9ce0fba7
Filesystem/Archives: Implemented the SaveData archive
...
The savedata for each game is stored in /savedata/<ProgramID> for NCCH files. ELF files and 3DSX files use the folder 0 because they have no ID information
Got rid of the code duplication in File and Directory
Files that deal with the host machine's file system now live in DiskFile, similarly for directories and DiskDirectory and archives with DiskArchive.
FS_U: Use the correct error code when a file wasn't found
11 years ago
Yuri Kunde Schlesner
082bf803ab
Comment out empty arrays causing compile errors in MSVC
11 years ago
bunnei
cd2a31eaf4
Merge pull request #283 from yuriks/archive-refactor
...
Archive refactor
11 years ago
Yuri Kunde Schlesner
666f6deb47
Work around libstdc++'s lack of support for std::hash on enums
11 years ago
Yuri Kunde Schlesner
83e6e4ffec
FS.Archive: Clean up treatment of archives and their handles
...
- Refactor FS::Archive internals to make Archive creation and lifetime
management clearer.
- Remove the "Archive as a File" hack.
- Implement 64-bit Archive handles.
11 years ago
Yuri Kunde Schlesner
0931a42af0
Service.FS: Rename FileSys::File to FileBackend
11 years ago
Yuri Kunde Schlesner
d51afab0bc
Service.FS: Rename FileSys::Directory to DirectoryBackend
11 years ago
Yuri Kunde Schlesner
82fe821e87
Service.FS: Rename FileSys::Archive to ArchiveBackend
11 years ago
Yuri Kunde Schlesner
f6153679b0
Service.FS: Do archive registration using IdCode instead of name
11 years ago
Yuri Kunde Schlesner
ca67bb7945
HLE: Rename namespaces to match move & fix initialization order
11 years ago
Yuri Kunde Schlesner
c72ccfa6db
HLE: Move kernel/archive.* to service/fs/
11 years ago
bunnei
5df176425b
Merge pull request #282 from archshift/services
...
Added stubs for ldr:ro, cecd:u, nim:aoc, and am:app services
11 years ago
archshift
89eef9eb6d
Added stub for nim:aoc service...
11 years ago
archshift
1356a6b313
Added stub for cecd:u service...
...
I couldn't find any information about this service...
11 years ago
archshift
6117fad036
Added stub for ldr:ro service...
11 years ago
archshift
6b51683bb1
Added am:app service stub.
...
Apparently nothing at all is known about this service...
11 years ago
Yuri Kunde Schlesner
e321decf98
Remove SyncRequest from K::Object and create a new K::Session type
...
This is a first step at fixing the conceptual insanity that is our
handling of service and IPC calls. For now, interfaces still directly
derived from Session because we don't have the infrastructure to do it
properly. (That is, Processes and scheduling them.)
11 years ago
Subv
1051795c32
Kernel/Semaphores: Fixed build
11 years ago
Subv
ea95876431
Kernel/Semaphore: Small style change
11 years ago
Subv
effb181888
Kernel/Semaphores: Invert the available count checking.
...
Same semantics, idea by @yuriks
11 years ago
Subv
5e25986235
Kernel/Semaphores: Addressed some issues.
11 years ago
Subv
cc81a510e3
Semaphore: Removed an unneeded function
11 years ago
Subv
61434651d8
Semaphores: Addressed some style issues
11 years ago
Subv
abff4a7ee2
Semaphore: Implemented the initial_count parameter.
11 years ago
Subv
49b31badba
SVC: Implemented ReleaseSemaphore.
...
This behavior was tested on hardware, however i'm still not sure what use the "initial_count" parameter has
11 years ago
Subv
82c84883a5
SVC: Implemented svcCreateSemaphore
...
ToDo: Implement svcReleaseSemaphore
* Some testing against hardware needed
11 years ago
Lioncash
cfc0ee9c60
kernel: Remove unused log arguments
11 years ago
Yuri Kunde Schlesner
0600e2d8b5
Convert old logging calls to new logging macros
11 years ago
Yuri Kunde Schlesner
616d874443
New logging system
11 years ago
bunnei
a6791e4fc7
Merge pull request #267 from bunnei/apt-shared-font
...
APT shared font loading
11 years ago
bunnei
6fe61d3deb
APT_U: Added GetSharedFont service function.
11 years ago
bunnei
988998cca5
DSP: Added stub for ReadPipeIfPossible.
11 years ago
bunnei
4cb7a44d4e
MemMap: Renamed "GSP" heap to "linear", as this is not specific to GSP.
...
- Linear simply indicates that the mapped physical address is always MappedVAddr+0x0C000000, thus this memory can be used for hardware devices' DMA (such as the GPU).
11 years ago
bunnei
3a75c8069e
Merge pull request #256 from Subv/mutex
...
Kernel/Mutex: Properly lock the mutex when a thread enters it
11 years ago
Emmanuel Gil Peyrot
5a3b1b5f44
CFG:U: Store country codes as u16 instead of char pointers, and return the correct error in GetCountryCodeID.
11 years ago
bunnei
f94d8f9603
GSP: Trigger GPU interrupts at more accurate locations.
11 years ago
bunnei
e90b37b935
GSP: Updated TriggerCmdReqQueue to return success code.
11 years ago
bunnei
3e1654eaa8
GSP: Updated RegisterInterruptRelayQueue to return expected magic number.
11 years ago
bunnei
170123982d
GPU: Fixed bug in command list size decoding.
11 years ago
bunnei
b7327f807c
Merge pull request #217 from archshift/cmd_buff
...
Log the cmd_buff arguments when citra comes across an unimplemented function
11 years ago
bunnei
dd203f7068
Thread: Fixed to wait on address when in arbitration.
11 years ago
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 .
11 years ago
Subv
bc318c464b
Mutex: Remove some forward declarations
...
Moved Mutex::WaitSynchronization to the end of the file.
11 years ago
Subv
64128aa61a
Mutex: Release all held mutexes when a thread exits.
11 years ago
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.
11 years ago
bunnei
17fae11fc7
Merge pull request #250 from Subv/cbranch_2
...
SVC: Implemented GetThreadId.
11 years ago
bunnei
5056329a80
Merge pull request #222 from archshift/renamexyz
...
Implemented RenameFile and RenameDirectory in FS:USER
11 years ago
bunnei
21d183e1e6
Merge pull request #248 from lioncash/kernel
...
Misc minor kernel-related changes.
11 years ago
Subv
6fac2bf0ab
Threads: Remove a redundant function.
...
Use the next_thread_id variable directly.
11 years ago
Subv
ef1d5cda06
Threads: Implemented a sequential thread id
11 years ago
archshift
139a4d91d9
Updated archive.cpp functions for proper error handling
11 years ago
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.
11 years ago
bunnei
306b5392ca
Merge pull request #247 from lioncash/const
...
hid_user: Pass by reference with PadButtonPress/PadButtonRelease
11 years ago
bunnei
abbc340957
Merge pull request #238 from archshift/dsp
...
Add stub for ConvertProcessFromDspDram
11 years ago
archshift
a404ad5272
Add stub for ConvertProcessFromDspDram
...
Should theoretically push retail stuff further along
11 years ago
Lioncash
208598dbe2
kernel: Shorten GetCount
11 years ago
Lioncash
9b68d5e074
kernel: Make some functions const
11 years ago
Lioncash
7ff8f0d916
hid_user: Pass by reference with PadButtonPress/PadButtonRelease
11 years ago
purpasmart96
16fc98af64
PTM_U: Added a stub for GetBatteryLevel & GetBatteryChargeState & GetAdapterState
11 years ago
bunnei
e5b2733801
Merge pull request #231 from purpasmart96/serv_ac_wifi_status
...
AC_U: Added a stub for GetWifiStatus
11 years ago
bunnei
e2e56c7bac
Merge pull request #219 from Subv/ptm
...
PTM_U: Implemented the GetShellState function.
11 years ago
purpasmart96
32d420330d
AC_U: Added a stub for GetWifiStatus
11 years ago
bunnei
884ecd58ea
Merge pull request #224 from bunnei/dsp-service-improvements
...
Dsp service improvements
11 years ago
bunnei
b0a5b3d986
Merge pull request #214 from Subv/master
...
CFG:U: Implemented the GetCountryCodeID and GetCountryCodeString
11 years ago
bunnei
3e286fff7c
DSP: Added stubs for several commonly used DSP service functions.
11 years ago
bunnei
45fd3fe5c4
DSP: Fixed typo in port name.
11 years ago
Subv
4cdaac44d3
PTM_U: Implemented the GetShellState function.
11 years ago
bunnei
e3d1ffff4b
Merge pull request #225 from bunnei/fix-release-mutex
...
Mutex: Changed behavior to always release mutex for all threads.
11 years ago
bunnei
a5afad0937
Merge pull request #226 from bunnei/svc-and-thread-fixes
...
Svc and thread fixes
11 years ago
Subv
5753da89e4
CFG:U: Implemented the GetCountryCodeID and GetCountryCodeString.
11 years ago
vaguilar
223e76d51d
Fixed formatting and switch statement warnings
11 years ago
bunnei
de851ba1a1
Thread: Check that thread is actually in "wait state" when verifying wait.
11 years ago
bunnei
f985469901
SVC: Add debug log to ArbitrateAddress.
11 years ago
bunnei
e0e7443517
SVC: SleepThread should yield to the next ready thread.
11 years ago
bunnei
a449e0e11a
Mutex: Changed behavior to always release mutex for all threads.
11 years ago
archshift
43a682a106
Log the cmd_buff arguments when citra comes across an unimplemented function
11 years ago
archshift
e5ff01c2cd
Implemented RenameDirectory in FS:USER
11 years ago
archshift
45afc15aa6
Implemented RenameFile in FS:USER
11 years ago
Yuri Kunde Schlesner
8189593255
Use pointers instead of passing handles around in some functions.
11 years ago
Yuri Kunde Schlesner
22c86824a4
Remove duplicated docs/update them for changed parameters.
11 years ago
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.
11 years ago
bunnei
ef1b16a7eb
Merge pull request #191 from archshift/deletexyz
...
Added DeleteFile and DeleteDirectory functions to FS:USER and the archives.
11 years ago
archshift
8aeadbd95a
Added DeleteFile and DeleteDirectory functions to FS:USER and the archives.
11 years ago
purpasmart96
9821bfcb8e
Add more services and some fixes, along with more "override"
...
in the service's headers
11 years ago
bunnei
c0cd0fa78e
Merge pull request #211 from linkmauve/master
...
Remove trailing spaces from the entire project
11 years ago
bunnei
112768f436
Merge pull request #208 from lioncash/statics
...
Add static to some variables
11 years ago
Emmanuel Gil Peyrot
f5d38649c7
Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generated
11 years ago
Lioncash
7cbecde2ca
Add static to some variables
11 years ago
purpasmart96
66431bceda
Kernel:Add missing permissions in shared memory & svc
11 years ago
Lioncash
1a8f466217
Remove extraneous semicolons
11 years ago
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.
11 years ago
bunnei
11641b5e79
Archive: Fixed to not destroy archive handle on close.
11 years ago
bunnei
bcb0dbf7e1
Archive: Fixed close archive before freeing.
11 years ago
bunnei
3e09c07378
FS_User: Support FileSye::Path in a more generic way.
...
added a todo to kernel archive
11 years ago
bunnei
a3107a6b57
FileSys: Updated backend code to use FileSys::Path instead of string for paths.
11 years ago
archshift
e27f169acb
Add missing boss:U service, needed according to Nintendo Zone logs.
11 years ago
Lioncash
ac58b76e71
Fix two format strings.
11 years ago
bunnei
3cfdabb2e3
Merge pull request #183 from archshift/lowpath
...
Add support for UTF-16 strings for LowPaths in FS:USER
11 years ago
archshift
1f7c4ab7f6
Use std::u16string for conversion between UTF-8 and UTF-16, FS:USER functions
11 years ago
bunnei
a490490336
Merge pull request #188 from bunnei/apt-fixes
...
APT_U: Various improvements and bug fixes.
11 years ago
bunnei
9fb549cb84
APT_U: Added stub for function AppletUtility.
11 years ago
bunnei
19cfcfe8c0
APT_U: Set a valid parameter buffer size in GlanceParameter.
...
- Also Clarified GlanceParameter/ReceiveParameter documentation.
11 years ago
bunnei
8eced1b697
APT_U: Release service lock on initialization.
11 years ago
bunnei
0df9c34410
APT_U: Fixes for GetLockHandle to boot system titles.
...
- Also added comment to GetLockHandle function.
11 years ago
archshift
37e582c395
Add FRD:U service and functions
11 years ago
archshift
0ad5964c8b
Add support for UTF-16 strings for LowPaths in FS:USER
11 years ago
bunnei
9be17e4d84
Merge pull request #163 from archshift/create-directory
...
Added CreateDirectory function to service/fs.cpp, and in Archive.
11 years ago
archshift
04c90c395d
Added CreateDirectory function to service/fs.cpp, and in Archive.
11 years ago
archshift
40a84833ae
Added ReceiveNotification, PublishToSubscriber unimplemented functions to SRV
11 years ago
archshift
c22923f8c4
Added stub err:f service.
11 years ago
purpasmart96
539b4c883d
Added a bunch of services
11 years ago
bunnei
01e37962e7
Merge pull request #162 from SeannyM/warning-fixes
...
Fix some warnings
11 years ago
archshift
ed797a4354
FS:USER - Implemented IsSdmcDetected
11 years ago
Sean
9a012ff007
Fix some warnings
11 years ago
Gareth Poole
38df9e96dd
Renamed souce files of services to match port names
11 years ago
bunnei
a110b06fb6
Merge pull request #141 from archshift/crash-hunt
...
hid.cpp: Fixed crash when updating pad data while null
11 years ago
Yuri Kunde Schlesner
d72708c1f5
Add `override` keyword through the code.
...
This was automated using `clang-modernize`.
11 years ago
bunnei
53a22b84da
ARM: Integrate SkyEye faster "dyncom" interpreter.
...
Fixed typo (make protected member public)
Added license header back in. I originally removed this because I mostly rewrote the file, but meh
ARM: Fixed a type error in dyncom interpreter.
ARM: Updated dyncom to use unique_ptr for internal ARM state.
11 years ago
Emmanuel Gil Peyrot
2d960f5040
Don’t fail on empty filename in OpenFileDirectly, return the archive handle instead
11 years ago
archshift
366ae1b351
hid.cpp: Fixed crash when updating pad data while null
...
Fixes #137
11 years ago
bunnei
8d1154c24e
Merge pull request #128 from purpasmart96/master
...
APT:U Added a stub fuction for "GlanceParameter"
11 years ago
purpasmart96
20f15f31dd
APT: Added a stub for the "GlanceParameter" function.
11 years ago
Emmanuel Gil Peyrot
0be5c03176
FileSys: split the constructor into an Open method, in order to notify the opener something went wrong.
...
Kernel: Return an invalid handle to OpenFile when it failed to open.
11 years ago
Emmanuel Gil Peyrot
23c2fbfc7a
FileSys/Kernel: Implement SetSize service call for File objects.
11 years ago
purpasmart96
1d0ac47832
Added some more names to the function table
...
Added "SetApplicationCpuTimeLimit" and "GetApplicationCpuTimeLimit" to apt.cpp
11 years ago
purpasmart96
7d6f7684e1
added "StoreDataCache" to the function table
...
seems simple enough
11 years ago
archshift
1966f7b0ad
Use the citra user path for the sdmc directory
11 years ago
Emmanuel Gil Peyrot
3a570a9fee
Kernel: Implement the Close command for Archive, File and Directory.
11 years ago
Emmanuel Gil Peyrot
99bfa4ae1f
FS: Implement OpenArchive, OpenDirectory, OpenFile and OpenFileDirectly calls.
11 years ago
Emmanuel Gil Peyrot
c197ce2180
Kernel: Add a Directory object and a getter for it from an Archive object.
11 years ago
Emmanuel Gil Peyrot
19d04f3abe
Kernel: Add a File object and a getter for it from an Archive object.
11 years ago
Lioncash
741321ac24
Core: Get rid of unnecessary switch statement in Kernel
11 years ago
Kevin Hartman
02fd19b2f6
Added support for multiple input device types for KeyMap and connected Qt.
11 years ago
Kevin Hartman
4a94ec934a
Initial HID PAD work, with GLFW only.
11 years ago
Kevin Hartman
bb7ddede15
Created structure for PAD.
11 years ago
bunnei
532a9e80a0
Merge pull request #99 from archshift/ext-check
...
loader.cpp: improved file extension checking, made Upper/LowerStr useful, moved string_util into Common namespace
11 years ago
archshift
6e606c515f
core: Prune redundant includes
11 years ago
archshift
5472fd4d9b
Added string_util to common, small changes in loader.cpp
11 years ago
Lioncash
d30747efea
core: Pass string by reference in FetchFromPortName and DeleteService
11 years ago
bunnei
304999dfeb
Threading: Fix thread starting to execute first instruction correctly.
11 years ago
bunnei
fb908b9395
srv::Initialize: Return "success" status code.
11 years ago
Tony Wasserka
26ade98411
Pica/citra-qt: Replace command list view and command list debugging code with something more sophisticated.
11 years ago
Tony Wasserka
14b24a75b3
GSP: Update framebuffer information when necessary.
11 years ago
Tony Wasserka
590c206ac8
GSP: Implement SetBufferSwap.
11 years ago
Tony Wasserka
e832bbe554
GSP: Add a helper function for convenience.
11 years ago
archshift
4c4a01bf41
Added FS functions to Archive and Archive_RomFS
11 years ago
Lioncash
ab4648d3ca
Core: Use std::array for managing kernel object space
...
These avoid relying on memset for clearing the arrays.
11 years ago
bunnei
e9c5c563a5
Merge pull request #55 from lioncash/string
...
Core: Alter the kernel string functions to use std::string instead of const char*.
11 years ago
bunnei
10f25866e2
SVC: Added support for svc_GetSystemTick.
...
Changed HLE function return methods to be static inline functions.
11 years ago
Lioncash
98fa3f7cba
Core: Alter the kernel string functions to use std::string instead of const char*.
...
Most functions already operate on std::strings. This also removes the need to manually null terminate thread names.
11 years ago