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
bunnei
3b65cfabfe
Merge pull request #220 from yuriks/patch-1
...
Add comment style notes to CONTRIBUTING.md
2014-11-23 16:57:24 -05:00
Yuri Kunde Schlesner
1d5d94a1b9
Update CONTRIBUTING.md
2014-11-23 19:54:04 -02:00
Yuri Kunde Schlesner
eee8cc67da
Add comment style notes to CONTRIBUTING.md
...
Closes #215
2014-11-23 19:44:00 -02:00
bunnei
aa986370f3
Merge pull request #190 from purpasmart96/more_services
...
Add more services and general fixes
2014-11-23 14:32:55 -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
bunnei
eeb921fc6e
Merge pull request #212 from archshift/idea
...
Update gitignore to exclude project/editor files
2014-11-18 19:01:13 -05:00
bunnei
40acd63631
Merge pull request #165 from neobrain/viewport-scaling
...
Stretch emulation output to render window and be display density independent
2014-11-18 18:32:01 -05:00
archshift
b73cae6b75
Update gitignore to exclude project/editor files
2014-11-18 15:16:19 -08: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
Tony Wasserka
9010b54a90
Merge pull request #206 from lioncash/semicolon
...
Remove extraneous semicolons
2014-11-18 14:42:48 +01: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
Tony Wasserka
963c923d59
citra GLFW: Ignore minimal window size hints.
...
GLFW provides no proper support for this, hence we just allow any window size to be used.
2014-11-18 13:16:02 +01:00
Tony Wasserka
5785f764ab
EmuWindow: Add some explicit documentation and set proper minimal client area size.
2014-11-18 13:16:02 +01:00
Tony Wasserka
688a5c033e
citra-qt: Small cleanup.
2014-11-18 13:16:02 +01:00
Tony Wasserka
6a6464807a
EmuWindow: Add a TODO.
...
Implementing this function currently is not critical, as we don't perform any configuration changes, yet.
However, the interface is a good starting point for adding this functionality.
2014-11-18 13:16:02 +01:00
Tony Wasserka
e02ff0121f
MathUtil: Make Rectangle work with unsigned types.
2014-11-18 13:15:59 +01:00
Tony Wasserka
c5c6e095f0
OpenGL Renderer: Cleanup viewport extent calculation.
2014-11-18 13:09:01 +01:00
Tony Wasserka
19bb01c223
EmuWindow: Better document the purpose of OnMinimalClientAreaChangeRequest.
2014-11-18 13:09:01 +01:00
Tony Wasserka
182476c96a
EmuWindow: Remove window title getters/setters.
...
The window title is none of the emulation core's business. The GUI code is free to put whatever it wants there.
Providing properly thread-safe window title getters and setters is a mess anyway.
2014-11-18 13:09:01 +01:00
Tony Wasserka
ded9c8a826
EmuWindow: Add documentation.
2014-11-18 13:09:01 +01:00
Tony Wasserka
722ce22589
EmuWindow: Add support for specifying minimal client area sizes.
2014-11-18 13:09:01 +01:00
Tony Wasserka
bd8f491e4c
Fixup EmuWindow interface and implementations thereof.
2014-11-18 13:09:01 +01:00
Kevin Hartman
221a9b023d
Viewport scaling and display density independence
...
The view is scaled to be as large as possible, without changing the aspect, within the bounds of the window.
On "retina" displays, or other displays where window units != pixels, the view should no longer draw incorrectly.
2014-11-18 13:06:05 +01:00
Tony Wasserka
c8d933a142
Add a GUI logging channel.
...
Replace asserts with _dbg_assert_.
2014-11-18 13:03:02 +01:00
bunnei
745b0219c5
Merge pull request #200 from lioncash/statics
...
core: Mark some hle functions as static
2014-11-17 22:55:50 -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
b66859714b
Merge pull request #192 from bunnei/fs-fix-paths
...
FileSys: Updates backend code to use FileSys::Path and fixes binary path types.
2014-11-17 22:26:54 -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
bunnei
77fe4b5c9e
Merge pull request #199 from lioncash/prototype
...
mem_map: Add missing prototype for Write64
2014-11-17 15:21:41 -05:00
bunnei
d563bcdaec
Merge pull request #202 from lioncash/init-order
...
emu_window: Fix initializer list order.
2014-11-17 12:05:32 -05:00
archshift
e27f169acb
Add missing boss:U service, needed according to Nintendo Zone logs.
2014-11-17 07:31:37 -08:00