Commit graph

3187 commits

Author SHA1 Message Date
Pengfei Zhu ac419c8612
Merge pull request #4159 from FearlessTobi/port-1067
Port yuzu-emu/yuzu#1067 from yuzu: "emu_window: Ensure WindowConfig members are always initialized"
2018-08-31 19:44:33 +08:00
Pengfei Zhu 13f2cc9964
Merge pull request #4162 from FearlessTobi/port-1126
Port yuzu-emu/yuzu#1126 from yuzu: "Don't allocate std::string instances for program lifetime in GetTelemetryId() and RegenerateTelemetryId()"
2018-08-31 17:39:49 +08:00
Lioncash 893f6e9766 telemetry_session: Don't allocate std::string instances for program lifetime in GetTelemetryId() and RegenerateTelemetryId()
Given these functions aren't intended to be used frequently, there's no
need to keep the std::string instances allocated for the whole lifetime
of the program. It's just a waste of memory.
2018-08-31 01:51:32 +02:00
Lioncash d82ecb67f7 emu_window: Ensure WindowConfig members are always initialized
Previously we weren't always initializing all members of the struct.
Prevents potentially wonky behavior from occurring.
2018-08-31 00:55:04 +02:00
Lioncash 8fa861c2c6 memory: Make prototype parameter names match their definitions
Keeps the code consistent.
2018-08-31 00:33:20 +02:00
Lioncash 379b8c65b9 memory: Remove unnecessary const qualifiers in prototypes
These aren't necessary, as value-wise const only matters in the
definition.
2018-08-31 00:22:55 +02:00
James Rowe 83cc398514
Merge pull request #4127 from FearlessTobi/port-929
Port #929 from yuzu: "gdbstub: Minor changes "
2018-08-26 12:21:11 -06:00
James Rowe a6723ec2eb
Merge pull request #4126 from FearlessTobi/port-892
Port #892 from yuzu: "Make global EmuWindow instance part of the base renderer class"
2018-08-26 12:00:55 -06:00
Ben b20607dfc6 Add system time configuration (#4043)
* Add setting to switch between a fixed start time and the system time

Add clock settings to SDL

Make clock configureable in qt

Add a SharedPage handler class

Init shared_page_handler for tests
2018-08-26 11:47:45 -06:00
James Rowe 13262c187c
Merge pull request #3922 from zhaowenlan1779/qt-movie
movie: Add Qt Movie feature
2018-08-26 11:07:15 -06:00
Merry 9b9227089b
Merge pull request #4121 from FearlessTobi/port-894
Port #894 from yuzu: "kernel: Move object class to its own source files"
2018-08-26 00:02:33 +01:00
Lioncash 91559bfdfe gdbstub: Use type alias for breakpoint maps
Rather than having to type out the full std::map type signature, we can
just use a straightforward alias. While we're at it, rename
GetBreakpointList to GetBreakpointMap, which makes the name more
accurate. We can also get rid of unnecessary u64 static_casts, since
VAddr is an alias for a u64.
2018-08-25 15:34:21 +02:00
fearlessTobi 80f1ffd8dc Remove newline 2018-08-25 15:27:47 +02:00
Lioncash 8a109333b7 gdbstub: Move all file-static variables into the GDBStub namespace
Keeps everything under the same namespace. While we're at it, enclose
them all within an inner anonymous namespace
2018-08-25 15:27:46 +02:00
Lioncash db8ec37066 gdbstub: Replace PAddr alias with VAddr
In all cases, a virtual address is being passed in, not a physical one.
2018-08-25 15:25:12 +02:00
fearlessTobi f61c9c3eb7 video_core: Make global EmuWindow instance part of the base renderer …
…class

Makes the global a member of the RendererBase class. We also change this
to be a reference. Passing any form of null pointer to these functions
is incorrect entirely, especially given the code itself assumes that the
pointer would always be in a valid state.

This also makes it easier to follow the lifecycle of instances being
used, as we explicitly interact the renderer with the rasterizer, rather
than it just operating on a global pointer.
2018-08-25 15:20:40 +02:00
Merry b49d042200
Merge pull request #4101 from Hedges/GDBClean
GDB Modernization
2018-08-25 13:58:38 +01:00
fearlessTobi 8fceac801c Fix clang-format 2018-08-25 14:05:59 +02:00
Merry 0a5621fafc
Merge pull request #3970 from FearlessTobi/more-popup-madness
citra_qt: Add more verbose popups for video_core errors
2018-08-24 19:21:35 +01:00
Merry cf4f8463f1
Merge pull request #4122 from FearlessTobi/port-905
Port #905 from yuzu: "kernel/vm_manager: Minor changes"
2018-08-24 19:01:57 +01:00
Merry f2816aa430
Merge pull request #4123 from FearlessTobi/port-914
Port #914 from yuzu: "kernel/process: Use accessors instead of class members for referencing segment array"
2018-08-24 19:01:07 +01:00
zhaowenlan1779 642f0bd62b Port "kernel/event: Make data members private" from yuzu (#4077)
* kernel/event: Make data members private

Instead we can simply provide accessors to the required data instead of
giving external read/write access to the variables directly.

* fix compile error
2018-08-24 19:43:28 +02:00
zhaowenlan1779 75927ee462 Port "client_port: Make all data members private" from yuzu (#4064)
* client_port: Make all data members private

These members don't need to be entirely exposed, we can instead expose
an API to operate on them without directly needing to mutate them

We can also guard against overflow/API misuse this way as well, given
active_sessions is an unsigned value.

* make the condition an assert
2018-08-24 19:31:20 +02:00
fearlessTobi 2abe11ee1e Fix compile errors 2018-08-23 18:23:21 +02:00
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