Commit graph

3215 commits

Author SHA1 Message Date
Lioncash c786df3e4b kernel/process: Use std::array where applicable 2018-08-23 18:08:20 +02:00
Lioncash 37e78de206 kernel/process: Use accessors instead of class members for referencing segment array
Using member variables for referencing the segments array increases the
size of the class in memory for little benefit. The same behavior can be
achieved through the use of accessors that just return the relevant
segment.
2018-08-23 18:08:03 +02:00
Lioncash 469ed4a09f kernel/vm_manager: Convert loop into std::any_of() 2018-08-23 17:53:37 +02:00
Lioncash c7e1dab45b kernel/vm_manager: Use const where applicable
Makes our immutable state explicit.
2018-08-23 17:53:20 +02:00
Lioncash bb88c3b7b5 kernel/vm_manager: Use the VAddr type alias in CarveVMA()
These two variables correspond to address ranges.
2018-08-23 17:39:18 +02:00
Lioncash 63c7b44ba8 kernel: Move object class to its own source files
General moving to keep kernel object types separate from the direct
kernel code. Also essentially a preliminary cleanup before eliminating
global kernel state in the kernel code.
2018-08-23 17:31:59 +02:00
Nguyen Dac Nam 7d8569d799
fix soc service - Fcntl failed on validate header 2018-08-21 12:14:18 +07:00
zhupengfei 3b459f6eb3 citra_qt, movie: allow recording/playback before emulation starts 2018-08-20 11:34:27 +02:00
zhupengfei 0f44f7b481 core/movie: Movie refactor, add a completion callback 2018-08-20 11:27:25 +02:00
fearlessTobi d1c5f01afe Add more verbose popups for video_core errors 2018-08-19 15:48:40 +02:00
Jarek Syrylak 039fb95f80 More fixes as per PR feedback. 2018-08-16 19:44:31 +01:00
Jarek Syrylak a6ecb3c913 Fixed as per PR feedback. 2018-08-16 16:24:16 +01:00
Jarek Syrylak bd658a8801 GDB Modernization:
- Can be used in either DynCom or Dynarmic mode
- Added support for threads
- Proper support for FPU registers
- Fix for NibbleToHex conversion that used to produce false error codes
- Fix for clang-format failing under Windows
2018-08-16 10:40:52 +01:00
Weiyi Wang 1b1439c6af NWM_UDS: use sizeof(<var being used>) instead of hard-coded type (#4093)
* NWM_UDS: use sizeof(<var being used>) instead of hard-coded type

Intend to fix #4090. 

` node_map.node.second` type was changed to `u16` in #3985. However the type change wasn't reflected here. Should have used variable name instead to automatically do type change

* NWM_UDS: ... and also the node.first one

* NWM_UDS: ... and here

* Network: bump version because we changed UDS packet layout

* Update nwm_uds.cpp
2018-08-12 22:47:48 +02:00
Merry c18a7896e0
Merge pull request #4078 from zhaowenlan1779/port-yuzu-934
Port " core_timing: Make GetGlobalTimeUs() return std::chrono::microseconds" from yuzu
2018-08-11 10:26:21 +01:00
zhupengfei e1ae14d508
input_common/udp: allow changing pad index 2018-08-11 13:23:10 +08:00
Merry 4aec7ec96b
Merge pull request #4079 from zhaowenlan1779/port-yuzu-932
Port "core_timing: Use transparent functors where applicable" from yuzu
2018-08-10 21:15:00 +01:00
Merry 44fc338f21
Merge pull request #4083 from zhaowenlan1779/port-yuzu-904
Port "kernel/thread: Minor changes" from yuzu
2018-08-10 21:08:22 +01:00
Lioncash 39d5ada4e1 kernel/thread: Remove unimplemented function prototype
Given there's no implementation, we may as well remove the code
entirely.
2018-08-10 17:05:01 +08:00
Lioncash 596caf70b7 kernel/thread: Make GetFreeThreadLocalSlot()'s loop indices size_t
Avoids using a u32 to compare against a range of size_t, which can be a
source of warnings. While we're at it, compress a std::tie into a
structured binding.
2018-08-10 10:13:50 +08:00
Lioncash 893d9c5ff3 kernel/thread: Make GetFreeThreadLocalSlot() reference parameter a const reference
This function only reads the data being referenced, it doesn't modify
it, so we can turn the reference into a const reference.
2018-08-10 10:13:49 +08:00
Lioncash c71c9e63ec kernel/thread: Make GetFreeThreadLocalSlot() internally linked
This function isn't used outside of this translation unit, so we can
make it internally linked.
2018-08-10 10:13:48 +08:00
Lioncash a431c85b6b core_timing: Convert typedef into a type alias
Makes the alias a little more readable from left-to-right.
2018-08-10 10:00:36 +08:00
Lioncash 196ab8be89 core_timing: Use transparent functors where applicable
Gets rid of the need to hardcode the type in multiple places. This will
now be deduced automatically, based off the elements in the container
being provided to the algorithm.
2018-08-10 09:59:17 +08:00
Lioncash 660be9499d core_timing: Make GetGlobalTimeUs() return std::chrono::microseconds
Enforces the time unit being returned and also allows using the standard
time utilities to manipulate it.
2018-08-10 09:56:17 +08:00
Ben 5e658efdb8
Service::HTTP_C: Add decryption of the ClCertA (#4045)
* Service::HTTP_C: Add decryption of the ClCertA

* fixup! Service::HTTP_C: Add decryption of the ClCertA

* fixup! Service::HTTP_C: Add decryption of the ClCertA

* FileSys:: Add MakeNCCHArchivePath and MakeNCCHFilePath; Small fixes in HTTP_C::DecryptDefaultClientCert

* fixup! fixup! Service::HTTP_C: Add decryption of the ClCertA

* fixup! fixup! fixup! Service::HTTP_C: Add decryption of the ClCertA
2018-08-09 23:02:53 +02:00
BreadFish64 d09646ab9d citra-qt: service: add convenient LLE service module configuration (#3967)
* citra-qt: service: add convenient LLE service module configuration

* fix SDL settings

* unexpose AttemptLLE

* static

* fix array includes

* use default with writesetting
2018-08-09 21:10:11 +02:00
James Rowe cc6d3ce22f
Merge pull request #4053 from Steveice10/master
am: Corrections to handling of non-existent content indices.
2018-08-09 09:39:44 -06:00
B3n30 aa98e55a88 fixup! Service::SM: Wait till client is registered 2018-08-08 23:42:45 +02:00
B3n30 02a3b5ae2b Service::SM: Wait till client is registered 2018-08-08 23:30:48 +02:00
Weiyi Wang 84fc8eaaba
Merge pull request #4020 from wwylele/loader-crypto-new
ncch_container: support encrypted games
2018-08-08 22:12:19 +03:00
Ben 8ae126eb33
Merge pull request #4001 from Subv/http2
Services/HTTP: Corrected some error codes and added a few new ones.
2018-08-08 15:37:33 +02:00
Subv b72e7d48e8 Service/HTTP: Added logs to some of the error conditions. 2018-08-08 08:32:46 -05:00
James Rowe 6bcbda5ab2 Input: UDP Client to provide motion and touch controls
An implementation of the cemuhook motion/touch protocol, this adds the
ability for users to connect several different devices to citra to send
direct motion and touch data to citra.
2018-08-07 21:05:09 -06:00
wwylele d4a808c885 ncch_container: support encrypted games 2018-08-07 18:53:06 +03:00
Steveice10 4c3961d5dd am: Correct ListDLCContentInfos index bounds. 2018-08-04 01:27:05 -07:00
Steveice10 d93ed644f6 am: Return empty path string for non-existent content indices. 2018-08-04 01:03:29 -07:00
zhupengfei 0c37140690 video_core: Allow changing background color while emulation is running
As @jroweboy stated, this is just one more atomic in VideoCore.
2018-08-04 15:11:51 +08:00
Subv 79db1f8b49 Service/HTTP: Log the PIDs in the Initialize functions. 2018-08-03 15:24:26 -05:00
James Rowe c35a251d86
Merge pull request #3985 from BreadFish64/fix-warnings
core: clean up warnings
2018-08-02 11:14:57 -06:00
James Rowe 14b0435df2
Merge pull request #3994 from FearlessTobi/replace-clamp-functions
Remove MathUtil::Clamp and replace it with its std:: counterpart
2018-08-02 11:08:07 -06:00
Weiyi Wang 9b558253a0
Merge pull request #4031 from zhaowenlan1779/port-yuzu-723
Port "gdbstub: Get rid of a few signed/unsigned comparisons" from yuzu
2018-08-02 11:17:38 +03:00
Weiyi Wang 14bc20fc8d
Merge pull request #3996 from NarcolepticK/dsp-remove-weakptr
service/dsp: Clean up global state
2018-08-02 11:14:59 +03:00
BreadFish64 74cd98ecad core: clean up warnings 2018-08-01 14:10:23 -05:00
Merry 6a9e18a49a
Merge pull request #4022 from zhaowenlan1779/port-yuzu-837
Port yuzu-emu/yuzu#837 from yuzu
2018-08-01 15:01:17 +01:00
Lioncash 8e103d0675
kernel/timer: Make data members private where applicable
Instead, we can just expose functions that return the queryable state
instead of letting anything modify it.
2018-08-01 17:49:52 +08:00
James Rowe 05eb0ccb03
Merge pull request #4014 from wwylele/old-service
service: remove deprecated service interface
2018-07-30 11:31:54 -06:00
zhupengfei 5a47cbed17
no need to cast to u32 according to @wwylele comment 2018-07-30 22:40:56 +08:00
Lioncash b4cdbf3ee8
gdbstub: Get rid of a few signed/unsigned comparisons
Ensures both operands in comparisons are the same signedness.
2018-07-30 22:40:43 +08:00
Weiyi Wang 71729fd47a
Merge pull request #3951 from zhaowenlan1779/cfg-country-code
service/cfg, citra_qt: add country code configuration
2018-07-30 12:02:07 +03:00
Weiyi Wang 1f14ebf35d
Merge pull request #3977 from B3n30/bad_word_list
Add virtual bad word list; Load if dump is missing
2018-07-30 12:01:45 +03:00
Merry f4a389dca5
Merge pull request #4023 from zhaowenlan1779/port-yuzu-797
Port yuzu-emu/yuzu#797 from yuzu
2018-07-30 08:28:35 +01:00
Lioncash 661f7bbcfd core: Make converting constructors explicit where applicable
Avoids unwanted implicit conversions. Thankfully, given the large amount
of cleanup in past PRs, only this tiny amount is left over to cover.
2018-07-30 08:21:13 +08:00
NarcolepticK 8f70e9a318 service/dsp: Addressed comments about function name and pointer type 2018-07-29 15:18:30 -04:00
Ben 04bd104c4a
Merge pull request #3992 from Subv/applets_close
Services/HLE: Implement PrepareToCloseLibraryApplet and CloseLibraryApplet
2018-07-29 10:34:32 +02:00
Weiyi Wang 383cde84d3
Merge pull request #3917 from Steveice10/master
am: Fix DLC loading.
2018-07-28 18:48:28 +03:00
B3n30 97fda30839 Use std::begin and std::end for system archives c array 2018-07-28 12:07:11 +02:00
wwylele 323313b2e9 service: remove deprecated service interface 2018-07-27 21:22:15 +03:00
NarcolepticK 5c52c6e64a service/boss: Migrate to ServiceFramework (#3998)
* service/boss: Migrate to ServiceFramework

* service/boss: Addressed comments

* service/boss: Added TODO: verify ResetType
2018-07-27 16:07:23 +03:00
NarcolepticK 5a4ed10982 service/csnd: Moved into csnd folder and stubbed a few functions (#4006)
* service/csnd: Moved into csnd folder and stubbed a few functions

* service/csnd: Addresed comment about missing rb.Skip
2018-07-27 11:25:20 +03:00
Weiyi Wang 719bec84cd
Merge pull request #4007 from B3n30/romfs_file
RomFS: add RomFSFile and RomFS::GetFile
2018-07-27 11:24:31 +03:00
Weiyi Wang 7babd78a23
Merge pull request #3928 from zhaowenlan1779/log-settings
citra_qt: Log settings on launch
2018-07-27 11:22:23 +03:00
fearlessTobi 71e1d6e25d Fix compile errors 2018-07-26 13:23:25 +02:00
B3n30 123c0886e6 RomFSFile: Default constructor 2018-07-26 13:10:56 +02:00
B3n30 b1f8c2fe67 Remove RomFS::GetFilePointer 2018-07-26 12:59:31 +02:00
B3n30 b62978b5a1 RomFS: add RomFSFile and GetRomFSFile 2018-07-26 12:31:59 +02:00
Subv d19dbe8419 Services/HTTP: Added error handling to AddRequestHeader 2018-07-25 16:48:04 -05:00
Subv 03294ce6b4 Services/HTTP: Implemented the InitializeConnectionSession function. 2018-07-25 16:13:47 -05:00
Subv 28c296a13b Services/HTTP: Corrected some error codes and added a few new ones.
Use the session data to store information about the HTTP session state.
This is based on reverse engineering of the HTTP module.

The AddRequestHeader function is still mostly incorrect, this will be fixed in follow up PRs
2018-07-25 14:59:29 -05:00
James Rowe e4d65927c2
Merge pull request #3991 from zhaowenlan1779/no-lle-applets
applet_manager: disable loading LLE applets
2018-07-25 09:54:02 -06:00
James Rowe 9d95373282
Merge pull request #3999 from NarcolepticK/stub-service-ps
service/ps: Boilerplate to register service, no functions implemented
2018-07-25 09:52:45 -06:00
Sebastian Valle 472ee00e8f
Merge pull request #3981 from B3n30/httpc
Migrate HTTP_C to the ServiceFramework and implement functions
2018-07-25 10:20:27 -05:00
NarcolepticK 081becc9f5 service/ps: Boilerplate to register service, no functions implemented 2018-07-25 02:25:51 -04:00
B3n30 050d116cb6 Fixed include in http_c,h; added ERROR_CONTEXT_ERROR to CreateContext 2018-07-24 23:38:19 +02:00
NarcolepticK b840c63386 service/dsp: Clean up global state 2018-07-24 16:15:37 -04:00
Subv cce882b688 Services/HLE: Implement PrepareToCloseLibraryApplet and CloseLibraryApplet.
This allows LLE library applets (like swkbd) to properly close and return to the application instead of hanging.

There is still a bug in our rasterizer cache that may cause crashes some time after an applet is closed, but that is tangential to this change and should be tackled separately.
2018-07-24 14:50:19 -05:00
fearlessTobi 7a3e126a4f Replace MathUtil::Clamp with its std counterpart 2018-07-24 19:08:17 +02:00
zhupengfei 44db59be2b
applet_manager: disable loading LLE applets
Currently LLE applets cannot exit properly in Citra and causes Citra to hang. We are already providing HLE for applets, and the LLE applets are preventing users who dumped their system files from using the applets correctly. Before the further fix is done, I think we should temporaily disable loading LLE applets.
2018-07-24 23:24:27 +08:00
B3n30 daac1349db Service/HTTP_C: Add some comments; Fixed header in CloseContext 2018-07-23 21:14:41 +02:00
Weiyi Wang 14878a17d9
Merge pull request #3978 from zhaowenlan1779/remove-app-warning
core/loader: avoid "different type" warning for .app
2018-07-23 21:02:54 +03:00
B3n30 2f50bf0007 Service/HTTP_C: Fix error in CreateContext 2018-07-23 18:02:35 +02:00
zhupengfei 4fb16098a4
core/loader: avoid "different type" warning for .app
Previously for installed titles, the file type would be NCCH (assumed as CXI) and the extension would be ".app". This would trigger a warning of the file "having a different type than its extension", which is actually not true here.
2018-07-23 17:37:52 +08:00
B3n30 7605e26b94 Add virtual bad word list; Load if dump is missing 2018-07-22 22:55:44 +02:00
Weiyi Wang 8388e5519b
Merge pull request #3944 from wwylele/soc-new-framework
Service/SOC: convert to ServiceFramework
2018-07-22 22:23:05 +03:00
B3n30 2d09355a25 Make Service::HTTP::Context non-copyable 2018-07-22 18:15:44 +02:00
B3n30 5af6a1d8ee Revert stubbed InitializeConnectionSession 2018-07-22 18:15:44 +02:00
B3n30 32155cd683 Service/HTTP: stubbed InitializeConnectionSession 2018-07-22 18:15:44 +02:00
B3n30 65c7ed8445 Service/HTTP: Moved declarations to the header file 2018-07-22 15:01:32 +02:00
B3n30 0606e7010c Services/HTTP: Implemented the AddRequestHeader service function. 2018-07-22 13:38:31 +02:00
Subv 799b45233f Services/HTTP: Stubbed the CloseContext service function.
It is currently unknown how the real http module handles trying to close contexts for requests that are already in flight.
2018-07-21 20:11:20 -05:00
Subv 34baa882c8 Services/HTTP: Corrected the error code for an invalid request method. 2018-07-21 19:50:13 -05:00
Subv 70e6979695 Services/HTTP: Implemented the CreateContext function handler. 2018-07-21 19:30:40 -05:00
B3n30 87ec3934a6 Services/HTTP: Added structures to represent an HTTP context.
More fields will probably need to be added to these structures in the future.
2018-07-21 19:10:00 -05:00
B3n30 fe5a3d22c5 Services/HTTP: Added structures to store both client and server certificates. 2018-07-21 19:00:50 -05:00
B3n30 1f865fd524 Services/HTTP: Stubbed the Initialize function. 2018-07-21 18:54:06 -05:00
B3n30 28124c053a Services/HLE: Convert the http:C service to the new service framework. 2018-07-21 18:48:57 -05:00
Alexandre LittleWhite Laurent 578b08c53b Truncating UTF16 text before converting them toUTF8 2018-07-21 18:17:46 +02:00
Alexandre LittleWhite Laurent e28c527bfa Fix missing return value 2018-07-20 19:53:23 +02:00
zhupengfei e8ac58c480
settings: move log code to settings 2018-07-19 08:38:57 +08:00
Ben 7f1303a834 Use open source Shared Font if no dumped file is available (#3881)
* Add virtual SharedFont; Load if dumped is missing

* Move open_source_archives to externals; add readme and git hash to open_source_archives

* Updated shared font to newest version: m fixed, symbols fixed
2018-07-18 10:20:31 -06:00