bunnei
a5bdf824e6
Merge pull request #8544 from german77/14dot0
...
service: Update some services to 14.0.0+
2022-07-17 12:30:52 -07:00
bunnei
6d160873c4
hle: service: nvflinger: Fix implicit conversion.
2022-07-16 23:11:42 -07:00
bunnei
02282477e7
yuzu: settings: Remove framerate cap and merge unlocked framerate setting.
...
- These were all somewhat redundant.
2022-07-16 23:11:39 -07:00
bunnei
f8aaa59990
hle: service: nvflinger: Factor speed limit into frame time calculation.
...
- This allows the %-based "Limit Speed Percent" setting to work with MC emulation.
- This is already supported for SC emulation.
2022-07-16 23:10:45 -07:00
bunnei
b8813edc51
Merge pull request #8594 from liamwhite/skip-wp
...
core/arm: skip watchpoint checks when reading instructions
2022-07-16 13:28:20 -07:00
bunnei
87bb44830b
Merge pull request #8511 from german77/hbmenu
...
service: ptm: Add TS, nifm: Stub GetInternetConnectionStatus
2022-07-16 11:30:56 -07:00
Link4565
912cae21b0
Enable the use of MSG_DONTWAIT flag on RecvImpl
2022-07-16 18:30:28 +01:00
Liam
a9a9999efd
core/arm: skip watchpoint checks when reading instructions
2022-07-15 19:47:28 -04:00
Morph
8266f63130
Merge pull request #8588 from merryhime/IBinder-vdestruct
...
nvflinger: Polymorphic destructor requried for abstract class IBinder
2022-07-15 06:02:31 -04:00
Merry
a1d2fb314e
KCodeMemory: Mark virtual methods as override
2022-07-15 10:39:58 +01:00
Merry
30b23fb7b8
nvflinger: Polymorphic destructor requried for abstract class IBinder
2022-07-15 10:28:54 +01:00
Merry
40e39ddd46
dynarmic: Abort watchpoints ASAP
2022-07-15 10:03:30 +01:00
Liam
a9a83fa726
kernel: Ensure all uses of disable_count are balanced
2022-07-14 22:47:18 -04:00
Liam
77137583cd
kernel: be more careful about initialization path for HLE threads
2022-07-14 22:47:18 -04:00
Liam
da07e13e07
kernel: fix single-core preemption points
2022-07-14 22:47:18 -04:00
Liam
21945ae127
kernel: fix issues with single core mode
2022-07-14 22:47:18 -04:00
Liam
0624c880bd
kernel: use KScheduler from mesosphere
2022-07-14 22:47:18 -04:00
liamwhite
9627c550a0
Merge pull request #8510 from german77/vibration
...
input_common: sdl: lower vibration frequency and use it's own unique thread
2022-07-14 20:41:29 -04:00
german77
1584de951a
service: fatal: Add function table
2022-07-14 16:33:09 -05:00
german77
2535e9d1ec
service: btdrv,bcat,btm: Update service tables to 14.0.0
2022-07-14 16:33:09 -05:00
german77
8e0e2e95e6
service am: Update service tables to 14.0.0
2022-07-14 16:33:08 -05:00
german77
32b522b1fd
service: ac: Replace intances of ProfileData with UserData
2022-07-14 16:33:07 -05:00
bunnei
802bbb2263
Merge pull request #8559 from liamwhite/waiter-list
...
kernel: fix usage of waiter_list in Finalize
2022-07-11 12:10:01 -07:00
german77
18550b165b
core: hid: Add fallback for dualjoycon and pro controllers
2022-07-10 20:27:40 -05:00
Kelebek1
b23c6b456c
PR
2022-07-10 08:29:37 +01:00
Kelebek1
240650f6a6
Rework CoreTiming
2022-07-10 06:59:40 +01:00
liamwhite
c765d5be0b
Merge pull request #8531 from FernandoS27/core-timing-fix-reg
...
Core timing: use only one thread.
2022-07-10 00:47:05 -04:00
Liam
1611c53c12
kernel: fix usage of waiter_list in Finalize
2022-07-09 18:54:54 -04:00
Mai
313f047f97
Merge pull request #8501 from liamwhite/backtrace-again
...
core/arm: better support for backtrace generation
2022-07-07 23:49:54 -04:00
liamwhite
7e75593c20
Merge pull request #8502 from liamwhite/end-wait
...
kernel: clean up waiting implementation
2022-07-07 17:31:49 -04:00
Fernando S
d244677df9
Merge pull request #8492 from german77/no_more_errors
...
service: hid: Correct some mistakes and add more validations
2022-07-07 08:29:34 +02:00
liamwhite
07e3c56f0d
Merge pull request #8532 from liamwhite/fiber-supplements
...
common/fiber: make fibers easier to use
2022-07-05 18:20:39 -04:00
Morph
908c79881b
Merge pull request #8521 from lat9nq/gdbstub-in-bounds
...
gdbstub_arch: Directly access SP register
2022-07-04 21:27:12 -04:00
Fernando Sahmkow
d3cb9201f1
Core timing: use only one thread.
2022-07-02 23:02:16 +02:00
Liam
ed0319cfed
common/fiber: make fibers easier to use
2022-07-02 12:33:49 -04:00
Fernando S
3f3c2dc20f
Merge pull request #8523 from liamwhite/sc-oopsie
...
cpu_manager: properly check idle on return from preemption
2022-07-01 22:40:02 +02:00
Morph
78ce053b4d
Merge pull request #8490 from liamwhite/read-code-stop
...
dynarmic: Stop ReadCode callbacks to unmapped addresses
2022-06-30 20:57:39 -07:00
Liam
2c1e2c63c3
cpu_manager: properly check idle on return from preemption
2022-06-30 16:54:05 -04:00
lat9nq
7b0affb6e0
gdbstub_arch: Directly access SP register
...
Currently to access the SP register, RegRead and RegWrite rely on a
out-of-bounds array access to reach the next element in a struct. As
of writing only git versions of GCC catch this error.
Specify the SP register when we want to access it in these functions.
2022-06-30 12:47:40 -04:00
Fernando S
603952bc27
Merge pull request #7454 from FernandoS27/new-core-timing
...
Core: Remake Core Timing
2022-06-30 12:38:50 +02:00
Fernando Sahmkow
3196d957b0
Adress Feedback.
2022-06-30 10:18:56 +02:00
german77
b38509b030
service: nifm: Stub GetInternetConnectionStatus
2022-06-28 19:22:46 -05:00
german77
c0264d2121
service: ptm: Rewrite PSM and add TS
2022-06-28 19:22:46 -05:00
german77
5e7e55b98a
input_common: sdl: lower vibration frequency and use it's own unique thread
2022-06-28 19:22:16 -05:00
Narr the Reg
36148fe7f6
service: hid: Correct some mistakes and add more validations
2022-06-28 19:14:55 -05:00
Morph
01bc0c84f0
Merge pull request #8512 from german77/nnResult
...
Replace multiple names with a better name
2022-06-28 16:59:33 -07:00
Fernando Sahmkow
86ccce3721
Address feedback.
2022-06-28 01:19:30 +02:00
Fernando Sahmkow
38e4a144a1
Core: Protect each event from race conditions within it.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
00b09de3d9
Core: add missing include.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
a2d29412cb
Core/Common: Corrections to core timing and add critical priority.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
846c994cc9
Core: Reimplement Core Timing.
2022-06-28 01:10:50 +02:00
bunnei
c78f6d4f20
Merge pull request #8504 from comex/mesosphere-current-process
...
Support `InfoType_MesosphereCurrentProcess`
2022-06-27 13:05:07 -07:00
german77
7b48e7b363
core: kernel: Replace instances of KPageLinkedList with KPageGroup
2022-06-26 20:21:45 -05:00
german77
a7d9be1384
core: Replace all instances of ResultCode with Result
2022-06-26 20:21:37 -05:00
bunnei
abfd690601
Merge pull request #8475 from liamwhite/x18
...
kernel: make current thread pointer thread local
2022-06-26 11:38:48 -07:00
comex
bf7e78795f
Re-add missing case
and braces, and trim whitespace
2022-06-25 18:01:56 -07:00
comex
a14438d013
Update src/core/hle/kernel/svc.cpp
...
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
2022-06-25 18:00:29 -07:00
comex
48737a4bb2
Support InfoType_MesosphereCurrentProcess
2022-06-25 16:23:23 -07:00
Liam
075155022e
kernel: clean up waiting implementation
2022-06-25 13:36:14 -04:00
Liam
8f8c0b69dc
core/arm: better support for backtrace generation
2022-06-25 12:54:24 -04:00
Liam
19f475fd70
gdbstub: fix register pokes
2022-06-25 12:07:20 -04:00
Liam
2c56e94702
kernel: make current thread pointer thread local
2022-06-23 00:28:00 -04:00
bunnei
95b844dbae
Merge pull request #8491 from Morph1984/extra-assert
...
KPageTable: Remove extraneous assert
2022-06-22 14:47:07 -07:00
bunnei
9da4e62573
Merge pull request #8483 from liamwhite/fire-emblem-three-semaphores
...
kernel: wait for threads to stop on pause
2022-06-22 14:46:33 -07:00
Morph
1c8f6ba18f
KPageTable: Remove extraneous assert
...
Since start is always 0 and VAddr is unsigned, we can safely remove this assert.
2022-06-21 21:28:54 -04:00
Liam
d657ea69c9
core/arm: increase minimum_run_cycles
2022-06-21 20:37:16 -04:00
merry
30e8876ea4
core/arm: re-enable cycle counting
2022-06-21 20:36:24 -04:00
Liam
1fd194141a
dynarmic: Stop ReadCode callbacks to unmapped addresses
2022-06-21 20:01:43 -04:00
bunnei
737c446fc1
Merge pull request #8432 from liamwhite/watchpoint
...
core/debugger: memory breakpoint support
2022-06-21 16:04:57 -07:00
bunnei
73e13aa090
Merge pull request #8468 from liamwhite/dispatch-tracking
...
kernel: fix some uses of disable_count
2022-06-21 15:30:27 -07:00
Narr the Reg
f37b2e6f10
service: am: Stub PerformSystemButtonPressingIfInFocus
...
Used by Ring Fit Adventure
2022-06-20 12:35:58 -05:00
Liam
24d7aaf43c
kernel: wait for threads to stop on pause
2022-06-18 16:54:33 -04:00
Liam
a6371fb69d
core: fix initialization in single core, sync GPU mode
2022-06-16 23:43:35 -04:00
Nikita Strygin
cf7e4bda92
Implement ExitProcess svc
...
Currently this just stops all the emulation
This works under assumption that only application will try to use
ExitProcess, with services not touching it
If application exits - it quite makes sense to end the emulation
2022-06-16 21:35:34 +03:00
Liam
208ed712f4
core/debugger: memory breakpoint support
2022-06-16 13:18:07 -04:00
Liam
744a208763
kernel: fix some uses of disable_count
2022-06-15 20:53:49 -04:00
Fernando S
f86b770ff7
Merge pull request #8457 from liamwhite/kprocess-suspend
...
kernel: implement KProcess suspension
2022-06-16 02:41:12 +02:00
bunnei
5ace5c1b7a
Merge pull request #8317 from german77/notifa
...
service: notifa: Implement most part of this service
2022-06-15 09:53:50 -07:00
Mai
23514388ed
Merge pull request #8464 from liamwhite/break-debug
...
kernel: notify debugger on break SVC
2022-06-15 11:55:54 -04:00
Mai
103997ee56
Merge pull request #8383 from Morph1984/shadow-of-the-past
...
yuzu: Make variable shadowing a compile-time error
2022-06-14 21:08:58 -04:00
Liam
a7358ff1d4
kernel: notify debugger on break SVC
2022-06-14 21:06:23 -04:00
Liam
20eab9fed9
core: centralize profile scope for Dynarmic
2022-06-14 18:19:04 -04:00
Liam
888f499188
kernel: implement KProcess suspension
2022-06-14 10:04:11 -04:00
Liam
bd38aefc57
kernel: fix passthrough of local captures in lambda
2022-06-13 20:09:32 -04:00
Liam
ebecdd3a74
general: fix compilation on MinGW GCC 12
2022-06-13 20:09:32 -04:00
Liam
d11547024c
general: fix compilation on GCC 12
2022-06-13 20:09:30 -04:00
Liam
6f59e2676b
kernel: ensure class token lambda exit is unreachable
2022-06-13 20:09:00 -04:00
Liam
8fea7e56e5
kernel: fix inconsistency in AutoObjectTraits macro definitions
2022-06-13 20:09:00 -04:00
Liam
084d7d6b01
common: Change semantics of UNREACHABLE to unconditionally crash
2022-06-13 20:09:00 -04:00
bunnei
741da9c8bf
Merge pull request #8388 from liamwhite/simpler-pause
...
CpuManager: simplify pausing
2022-06-13 15:48:03 -07:00
Morph
efc89c032b
CMakeLists: Make variable shadowing a compile-time error
...
Now that the entire project is free of variable shadowing, we can enforce this as a compile time error to prevent any further introduction of this logic bug.
2022-06-13 18:19:23 -04:00
Morph
a0407a8e64
Merge pull request #8446 from liamwhite/cmd-gdb
...
core/debugger: support operation in yuzu-cmd
2022-06-13 14:38:37 -04:00
Morph
7582717c9d
Merge pull request #8454 from liamwhite/inaddr-any
...
core/debugger: allow remote connections
2022-06-13 14:38:20 -04:00
bunnei
ec85eac3c9
Merge pull request #8443 from liamwhite/code-mem
...
kernel: fix KCodeMemory initialization
2022-06-13 11:32:27 -07:00
Liam
fb4b507ba4
core/debugger: allow remote connections
2022-06-12 11:50:50 -04:00
Lioncash
80ad90651e
gdbstub_arch: Add missing virtual destructor
...
The class is used polymorphically, so it's undefined behavior to delete
instances of GDBStubA64 and GDBStubA32 from the base class pointer.
2022-06-11 18:23:22 -04:00
Narr the Reg
bc8699a9fa
service: hid: Fix gesture regression
2022-06-10 13:14:31 -05:00
Liam
1f0fee33ed
core/debugger: fix a number of shutdown deadlocks
2022-06-10 09:17:12 -04:00
Liam
6c659c3a16
kernel: fix KCodeMemory initialization
2022-06-09 12:33:28 -04:00
Liam
af022294dd
CpuManager: simplify pausing
2022-06-08 21:47:29 -04:00
bunnei
073714a762
Merge pull request #8428 from bunnei/nvflinger-fix-timing
...
Follow-up fixes for NVFlinger rewrite (Part 3)
2022-06-08 11:20:05 -07:00
Liam
268878f895
core/debugger: fix asio write usage
2022-06-06 23:50:56 -04:00
Liam
d00b7be2d6
core/debugger: fix crash due to incorrect lambda capture
2022-06-06 23:39:48 -04:00
bunnei
c33c9c76bf
Merge pull request #8426 from liamwhite/elf
...
common: consolidate ELF structure definitions
2022-06-05 16:52:06 -07:00
bunnei
888e814130
hle: service: nvflinger: buffer_queue_consumer: Always free released buffers.
2022-06-05 16:06:06 -07:00
Mai M
cad53179ed
Merge pull request #8419 from liamwhite/library-list
...
gdbstub: add missing library list query
2022-06-05 18:23:29 -04:00
Liam
3c313a43fd
common: consolidate ELF structure definitions
2022-06-05 09:42:05 -04:00
bunnei
45bdbf538c
Merge pull request #8395 from german77/ir_stub
...
service: hid: Improve stub of IRS
2022-06-04 01:26:08 -07:00
Liam
2f2e443858
gdbstub: add missing library list command
2022-06-03 20:42:13 -04:00
Mai M
5c0a31e29f
Merge pull request #8410 from liamwhite/thread-names
...
gdbstub: Support reading guest thread names
2022-06-02 16:34:41 -04:00
Liam
07922abffc
core/debugger: Support reading guest thread names
2022-06-01 21:25:32 -04:00
Mai M
114a4562ed
Merge pull request #8409 from liamwhite/tdesc-fix
...
gdbstub: fix target descriptions
2022-06-01 21:16:33 -04:00
Morph
858f8ac6d9
Merge pull request #8402 from liamwhite/better-step
...
core/debugger: Improved stepping mechanism and misc fixes
2022-06-01 20:46:10 -04:00
Liam
b71130e6f1
gdbstub: fix target descriptions
2022-06-01 20:31:24 -04:00
liamwhite
a2f6a2480d
Merge pull request #8404 from Morph1984/virtual
...
core/debugger: Define defaulted virtual destructors
2022-06-01 12:30:47 -04:00
Morph
69511aed3d
core/debugger: Define defaulted virtual destructors
...
Resolves an MSVC warning where a virtual destructor is not defined in the base class with virtual functions.
2022-06-01 02:28:34 -04:00
Liam
989d4a7a41
core/debugger: Improved stepping mechanism and misc fixes
2022-06-01 02:15:15 -04:00
Morph
a32f6e9d8e
gdbstub: Explicitly cast return type to u8
...
Otherwise, the addition promotes the returned value to an int instead of keeping it as a u8.
2022-06-01 01:40:18 -04:00
Liam
fb4b3c127f
core/debugger: Implement new GDB stub debugger
2022-06-01 00:01:25 -04:00
Narr the Reg
e609bc1c6a
service: hid: Improve stub of IRS
2022-05-31 10:26:13 -05:00
bunnei
f6c47df671
Merge pull request #8368 from german77/seventimes
...
Service: hid: Several improvements and implementations
2022-05-30 10:44:36 -07:00
bunnei
1c8b509441
Merge pull request #8332 from Morph1984/reduce_exec_size
...
general: Use smaller array types where applicable
2022-05-29 02:33:24 -07:00
bunnei
d879741ec6
Merge pull request #8374 from german77/asnycvibrations
...
input_common: Make vibration request async
2022-05-28 00:55:53 -07:00
german77
a1f2610522
service: hid: Implement ResetIsSixAxisSensorDeviceNewlyAssigned
...
Needed by Nintendo Switch Sports
2022-05-27 10:22:37 -05:00
german77
240f59a4c8
service: hid: Implement LoadSixAxisSensorCalibrationParameter and GetSixAxisSensorIcInformation
...
Needed by Nintendo Switch Sports
2022-05-27 10:22:36 -05:00
german77
c889a5805e
service: hid: Implement EnableSixAxisSensorUnalteredPassthrough and IsSixAxisSensorUnalteredPassthroughEnabled
...
Needed by Nintendo Switch Sports
2022-05-27 10:21:10 -05:00
german77
762a30d0db
service: hid: Add error handling to sixaxis functions
2022-05-27 10:21:10 -05:00
german77
390d49c5f1
service: hid: Refractor sixaxis functions
2022-05-27 10:21:10 -05:00
german77
3cf15af31e
service: hid: Implement MergeSingleJoyAsDualJoy according to RE
2022-05-27 10:21:09 -05:00
german77
7aa1d10655
service: hid: Add error handling to setNpadAssignment and variants
2022-05-27 10:21:09 -05:00
german77
74d1b9a254
service: hid: Quick RE fixes and comments
2022-05-27 10:21:08 -05:00
Narr the Reg
bf948b5790
input_common: Make vibration request async
2022-05-23 12:25:02 -05:00
german77
c82806f9cb
input_common: touch: Rewrite touch driver to support multiple touch points
2022-05-23 11:01:14 -05:00
Lioncash
f981e90af3
general: Avoid ambiguous format_to compilation errors
...
Ensures that we're using the fmt version of format_to.
These are also the only three outliers. All of the other formatters we
have are properly qualified.
2022-05-14 16:48:34 -04:00
Morph
36d44bf52f
time_zone_manager: Use s8 for month length tables
...
Using this smaller type saves 512 bytes in the compiled executable.
2022-05-13 00:51:11 -04:00
german77
cc6a4bedfc
service: notifa: Implement most part of this service
...
Implements partially RegisterAlarmSetting, UpdateAlarmSetting, LoadApplicationParameter, DeleteAlarmSetting.
Needed for Fitness `Boxing 2: Rhythm & Exercise` and `Ring Fit Adventure`.
2022-05-09 10:28:04 -05:00
Narr the Reg
babd580c64
service: hid: Fix motion refresh rate
2022-05-06 11:13:49 -05:00
german77
7eb0992d2c
service: hid: Disable correctly motion input
2022-05-06 11:13:48 -05:00
Morph
4559112651
hle/result: Update std::expected replacement message
...
std::expected is included in C++23
2022-05-03 17:44:30 -04:00
Morph
f3f3f1b7d9
hle/result: Add ResultRange overload in ResultVal
...
Also marks the implicit conversion operator as constexpr instead of consteval as the constructor is not constant evaluated.
2022-05-03 17:44:30 -04:00
bunnei
b06f9f2606
Merge pull request #8272 from german77/stick_range
...
yuzu: config: Improve analog stick mapping
2022-05-03 14:36:39 -07:00
Morph
08bddd7d79
hle/result: Implement ResultRange
...
A ResultRange defines an inclusive range of error descriptions within an error module.
This can be used to check whether the description of a given ResultCode falls within the range.
The conversion function returns a ResultCode with its description set to description_start.
2022-05-02 18:17:39 -04:00
Morph
b50e1596cc
Merge pull request #8274 from german77/firmware
...
service: hid: Stub IsFirmwareUpdateNeededForNotification
2022-04-29 04:08:34 -04:00
Andrea Pappacoda
01cf05bc75
chore: add missing SPDX tags
...
Follow-up to 99ceb03a1c
2022-04-28 18:24:11 +02:00
bunnei
9ed0b5c5f9
Merge pull request #8229 from german77/reinterpret2
...
service: hid: Access shared memory directly
2022-04-27 12:31:27 -07:00
german77
173d849b8f
service: hid: Stub IsFirmwareUpdateNeededForNotification
...
Used in Fitness Boxing 2: Rhythm & Exercise (0100073011382000)
2022-04-27 00:06:30 -05:00
Narr the Reg
17ce54d7f2
yuzu: Config allow to delete single axis directions when buttons are mapped to a stick
2022-04-26 19:03:54 -05:00
Mai M
8304b14a90
Merge pull request #8261 from liamwhite/jit-cleanup
...
service: jit: document and clean up
2022-04-24 22:03:39 -04:00
Liam
64e93dc959
service: jit: document and clean up
2022-04-24 20:25:42 -04:00
Mai M
a7f7279d9d
Merge pull request #8260 from Morph1984/c4146
...
kernel: svc: Replace -1ULL with 0xFFFFFFFFFFFFFFFF
2022-04-24 18:25:00 -04:00
Morph
8eabdc058b
kernel: svc: Replace -1ULL with 0xFFFFFFFFFFFFFFFF
...
Resolves the C4146 compiler warning on MSVC.
2022-04-24 17:40:47 -04:00
Merry
91a6df0361
Remove unused PrepareReschedule function
2022-04-24 12:10:16 +01:00
Narr the Reg
0f3ad939a8
service: hid: Ensure all structs are initialized
2022-04-23 17:11:43 -05:00
Narr the Reg
61582efeb9
service: hid: Access shared memory directly
2022-04-23 15:41:42 -05:00
Morph
99ceb03a1c
general: Convert source file copyright comments over to SPDX
...
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-23 05:55:32 -04:00
bunnei
04afcfe115
Merge pull request #7976 from BytesGalore/master
...
loader: log the type of mismatching file-extension
2022-04-22 23:55:07 -07:00
bunnei
a1ee9799bc
Merge pull request #8222 from german77/sixaxis_test
...
service: hid: Improve accuracy of sixaxis functions
2022-04-21 21:25:47 -07:00
Liam
0ca4dff62c
core/arm: separate backtrace collection
2022-04-20 21:39:42 -04:00
Narr the Reg
1d26fabaa7
service: hid: Improve accuracy of sixaxis functions
2022-04-18 15:02:47 -05:00
Fernando S
fd49b186fa
Merge pull request #6558 from german77/ringcon2
...
hidbus: Implement hidbus and ringcon
2022-04-16 15:51:14 +02:00
bunnei
a29a8c6f78
Merge pull request #8188 from merryhime/jit-race-page-table-changed
...
dynarmic: Fix race when switching page tables
2022-04-16 00:24:53 -07:00
german77
d2f9412cf1
yuzu: Add custom ringcon configuration
2022-04-16 00:49:26 -05:00
german77
b2359f1527
hidbus: Implement hidbus and ringcon
2022-04-16 00:49:21 -05:00
Fernando S
34710065e8
Merge pull request #8172 from bunnei/kernel-mutex
...
hle: kernel: Use std::mutex instead of spin locks for most kernel locking.
2022-04-16 00:05:04 +02:00
Fernando S
072b3e6e26
Merge pull request #8202 from merryhime/fix-single-core
...
dynarmic: Fix single core mode
2022-04-13 23:21:11 +02:00
merry
ba08f63ec4
dynarmic: Fix single core mode
...
Regression introduced in a5d040df3d
. Closes #8201 .
2022-04-13 20:40:12 +01:00
Liam
f17aaeccf9
service: jit: Implement the JIT service
2022-04-13 08:41:27 -04:00
bunnei
ca2accfb25
Merge pull request #8165 from bunnei/ensure-session-port-cleanup
...
Kernel: Track open references to KServerPort and KServerSession.
2022-04-12 14:01:40 -07:00
bunnei
dc2dd5d5a6
Merge pull request #8178 from tech-ticks/skyline-icache-fix
...
hle: kernel: Invalidate entire icache in UnmapProcessMemory and UnmapCodeMemory (fixes #8174 )
2022-04-12 11:23:20 -07:00
bunnei
3f0b93925f
core: hle: kernel: k_thread: Rework dummy thread waiting.
2022-04-11 21:15:38 -07:00
bunnei
965c05b43d
core: hle: service: Allocate a service thread.
2022-04-11 21:13:40 -07:00
bunnei
ae38b8bf5e
hle: kernel: k_spin_lock: Remove unused ThreadPause.
2022-04-11 21:13:40 -07:00
bunnei
8deaac8bd1
hle: kernel: Use std::mutex instead of spin locks for most kernel locking.
2022-04-11 21:13:40 -07:00
bunnei
fd5e1e80da
Merge pull request #8157 from lat9nq/kernel-races
...
kernel: Fix some data races
2022-04-11 21:13:01 -07:00
Jan Beich
d13e48e002
service: sfdnsres: add missing includes for some BSDs after 82d46a974a
...
src/core/hle/service/sockets/sfdnsres.cpp: In function 'Service::Sockets::NetDbError Service::Sockets::AddrInfoErrorToNetDbError(s32)':
src/core/hle/service/sockets/sfdnsres.cpp:66:10: error: 'EAI_NODATA' was not declared in this scope; did you mean 'EAI_NONAME'?
66 | case EAI_NODATA:
| ^~~~~~~~~~
| EAI_NONAME
src/core/hle/service/sockets/sfdnsres.cpp: In function 'std::vector<unsigned char> Service::Sockets::SerializeAddrInfo(const addrinfo*, s32, std::string_view)':
src/core/hle/service/sockets/sfdnsres.cpp:127:53: error: 'sockaddr_in' does not name a type; did you mean 'SockAddrIn'?
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^~~~~~~~~~~
| SockAddrIn
src/core/hle/service/sockets/sfdnsres.cpp:127:64: error: expected '>' before '*' token
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^
src/core/hle/service/sockets/sfdnsres.cpp:127:64: error: expected '(' before '*' token
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^
| (
src/core/hle/service/sockets/sfdnsres.cpp:127:65: error: expected primary-expression before '>' token
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^
src/core/hle/service/sockets/sfdnsres.cpp:127:84: error: expected ')' before ';' token
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^
| )
src/core/hle/service/sockets/sfdnsres.cpp:148:53: error: 'sockaddr_in6' does not name a type; did you mean 'SockAddrIn6'?
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^~~~~~~~~~~~
| SockAddrIn6
src/core/hle/service/sockets/sfdnsres.cpp:148:65: error: expected '>' before '*' token
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^
src/core/hle/service/sockets/sfdnsres.cpp:148:65: error: expected '(' before '*' token
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^
| (
src/core/hle/service/sockets/sfdnsres.cpp:148:66: error: expected primary-expression before '>' token
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^
src/core/hle/service/sockets/sfdnsres.cpp:148:85: error: expected ')' before ';' token
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^
| )
2022-04-11 22:26:37 +00:00
Fernando S
b86cfe159f
Merge pull request #8180 from liamwhite/symbols
...
core: extract symbol reading
2022-04-11 18:40:34 +02:00
Fernando S
4ad6bca31c
Merge pull request #8171 from tech-ticks/skyline-improvements
...
Improvements for game modding with Skyline, DNS resolution
2022-04-10 23:40:54 +02:00
merry
59cbeb3e1b
dynarmic: Fix race when switching page tables
2022-04-10 15:46:29 +01:00
tech-ticks
3b91d213b1
hle: kernel: Invalidate entire icache in UnmapProcessMemory and UnmapCodeMemory ( fixes #8174 )
2022-04-09 13:29:19 +02:00
Liam
b29242862b
core: extract symbol reading
2022-04-09 02:16:34 -04:00
bunnei
32e2fb5d33
Merge pull request #8138 from german77/data-no-race
...
core: hid: Reduce the amount of data races
2022-04-08 14:14:53 -07:00
bunnei
a7f73d606f
hle: kernel: Unify and integrate reference tracking for KServerPort/KServerSession.
...
- These are not managed elsewhere, and need to be tracked and closed on emulation shutdown.
2022-04-08 14:13:22 -07:00
bunnei
b44a564792
hle: kernel: k_server_port: Release ref-counted host emulation members on Destroy.
2022-04-08 14:11:40 -07:00
bunnei
788bebb160
hle: kernel: k_auto_object: Move unregister with kernel to after Destroy.
...
- Destructor is no longer invoked, so our object counting was off.
2022-04-08 14:11:40 -07:00
bunnei
d737652d08
hle: service: sm: Remove manual tracking of KServerPorts.
2022-04-08 14:11:39 -07:00
bunnei
f55fc850a2
hle: kernel: hle_ipc: HasSessionRequestHandler: Check if domain handler is expired rather than locking.
2022-04-08 14:11:39 -07:00
bunnei
04efd729d6
Merge pull request #8169 from merryhime/scoped_lock
...
Replace lock_guard with scoped_lock
2022-04-08 14:01:42 -07:00
tech-ticks
82d46a974a
service: sfdnsres: Implement DNS address resolution
2022-04-08 21:28:03 +02:00
Narr the Reg
bbaa08d7f0
core: hid: Fix double lock on softlock and forced updates
2022-04-07 17:08:01 -05:00
merry
50b10c4bac
Merge pull request #8167 from Tachi107/patch-1
...
fix: remove #pragma once in .cpp file
2022-04-07 22:47:43 +01:00
tech-ticks
1c3983c12e
service: bsd: Add keepalive socket option
2022-04-07 23:30:23 +02:00
tech-ticks
f05e87402a
patch_manager: Apply layered exefs patches from 'atmosphere' SD directory
2022-04-07 23:02:44 +02:00
Narr the Reg
9c85cb354a
core: hid: Replace lock_guard with scoped_lock
2022-04-07 13:52:51 -05:00
Merry
d79274a5d9
core/hle: Standardize scoped_lock initializers
2022-04-07 19:44:07 +01:00
Merry
6a071c42d2
core: Replace lock_guard with scoped_lock
2022-04-07 19:44:07 +01:00
Merry
1f275eb077
core/hle: Replace lock_guard with scoped_lock
2022-04-07 19:44:07 +01:00
german77
fa5277ecdb
core: hid: Reduce the amount of dataraces
2022-04-07 13:18:03 -05:00
Fernando S
50192eb4ad
Merge pull request #8148 from merryhime/interrupts
...
dynarmic: Better interrupts
2022-04-07 16:21:41 +02:00
Andrea Pappacoda
5ca67332ee
fix: remove #pragma once in .cpp file
2022-04-07 12:03:47 +02:00
bunnei
172137f1a0
Merge pull request #8164 from liamwhite/jit-stub
...
service: jit: stub JIT service
2022-04-06 18:34:45 -07:00
Liam
0cfcee95c7
service: jit: stub JIT service
2022-04-06 20:07:01 -04:00
bunnei
eb8c8db899
Merge pull request #8122 from bunnei/improve-thread-usage
...
Improve usage of service host threads
2022-04-06 12:25:25 -07:00
german77
8c089f4e2a
service: hid: Partially revert #8123
2022-04-05 22:35:38 -05:00
bunnei
12dc4d0527
Merge pull request #8137 from bunnei/improve-nvflinger-2
...
Follow-up fixes for NVFlinger rewrite (Part 2)
2022-04-05 19:11:28 -07:00
bunnei
0c1b954e07
Merge pull request #8100 from Morph1984/registered-crash
...
registered_cache: Prevent nullptr dereference when accumulating files
2022-04-05 18:18:41 -07:00
lat9nq
b976cac49d
k_system_control: Fix data race
...
`return distribution(gen)` is a data race between a read and a write in
two threads, reported by TSan. Remove static random number generators so
they aren't using the same generator.
2022-04-05 19:55:56 -04:00
merry
7f11710e0a
dynarmic: Print stack trace on unrecognised instruction or other exception
2022-04-05 20:40:20 +01:00
bunnei
f114436120
Merge pull request #8089 from merryhime/paranoia
...
configuration: Add Paranoid CPU accuracy level
2022-04-04 11:07:38 -07:00
lat9nq
983916e919
k_auto_object: Fix data race
...
Change the memory order to acqure-release when we decrement the
reference count. Prevents a race with line 89 reported by TSan.
2022-04-03 21:47:58 -04:00
lat9nq
6bcbbb29e7
k_thread: Fix data race
...
TSan reports a data race between writing at cpp:1162 and reading at
h:262. Make the thread_state atomic to prevent this.
2022-04-03 21:47:58 -04:00
lat9nq
d6a0666268
k_process: Fix data race
...
TSan reported a race between thread 36 and thread 34, a read at :225 and
a write at :225 respectively. Make total_proces_running_time_ticks
atomic to avoid this race.
2022-04-03 21:47:57 -04:00
lat9nq
5b5a1b7fa7
kernel: Fix current_process race
...
TSan reported a race at :258 and :803, so make current_process an atomic
pointer.
2022-04-03 21:47:57 -04:00
lat9nq
83b86d915a
k_scheduler_lock: Fix data race
...
TSan reports a race between the main thread and T37 during
IsLockedByCurrentThread and when it's set at the end of Lock(),
respectively. Set owner_thread to an atomic pointer to fix it.
Co-authored-by: bunnei <bunneidev@gmail.com>
2022-04-03 21:47:57 -04:00
merry
a5d040df3d
arm_dynarmic: Use HaltReason for svc calls and reschedules
2022-04-03 18:20:11 +01:00
merry
f8b8af47ad
dynarmic: Better interrupts
2022-04-03 16:39:48 +01:00
bunnei
2d1af6beee
Merge pull request #8135 from Morph1984/websession-hack
...
applets/web: Keep foreground (websession) web applet open
2022-04-02 20:49:51 -07:00
bunnei
b5910ad0ba
Merge pull request #8123 from german77/bombslinger
...
service: hid: Remove inaccurate behavior on initialization
2022-04-02 20:12:45 -07:00
german77
3e5469a974
service: npad: Default initialize shared memory
2022-04-02 19:43:49 -06:00
Andrea Pappacoda
0c214cb5b9
fix: typos
2022-04-02 16:34:07 +02:00
bunnei
fdf4909f97
hle: service: nvflinger: buffer_queue_producer: Cleanup & fixes.
2022-04-01 22:59:35 -07:00
bunnei
4036e37bbe
hle: service: nvflinger: consumer_base: Cleanup & fixes.
2022-04-01 22:58:40 -07:00
bunnei
30b07878ba
hle: service: nvflinger: buffer_queue_producer: Cleanup & add GetReleasedBuffers.
2022-04-01 22:58:02 -07:00
bunnei
7610554b1e
hle: service: nvflinger: buffer_queue_core: Cleanup & fixes.
2022-04-01 22:56:32 -07:00
bunnei
f9371f36a4
hle: service: nvflinger: Use correct logger namespace.
2022-04-01 22:55:44 -07:00
Morph
93f010c988
hle: service: nvdrv: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
d02bf6dab1
hle: service: vi: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
99770653bb
hle: service: bsd: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
2afef2b609
hle: service: filesystem: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
11120b5b1e
hle: service: audio: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
bf1750664c
hle: service: Add option for service interfaces to create or use the default thread.
2022-04-02 01:24:30 -04:00
bunnei
864523327f
hle: kernel: Create a default thread for services that do not need their own host thread.
2022-04-02 01:24:30 -04:00
Morph
1166c3910d
applets/web: Keep foreground (websession) web applet open
...
This is a hack to keep the foreground (websession) web applet open in games using these such as Super Mario 3D All-Stars.
2022-04-01 22:50:01 -04:00
Fernando S
078a6cb0cb
Merge pull request #8116 from ameerj/nvhost_ctrl_bad_param
...
nvhost_ctrl: Only mark EventState::Busy as BadParameter
2022-04-01 01:29:46 +02:00
german77
9346f0b33d
service: hid: Remove inaccurate behavior on initialization
2022-03-31 12:35:57 -06:00
bunnei
c6aa4ec687
Merge pull request #8120 from german77/signal
...
service: hid: Signal event on AcquireNpadStyleSetUpdateEventHandle
2022-03-30 22:45:40 -07:00
bunnei
365c6ad753
Merge pull request #8090 from bunnei/fix-skyline
...
Kernel Memory Updates (Part 7): Various fixes to code memory (Skyline support)
2022-03-30 18:23:37 -07:00
Narr the Reg
c04e65c254
service: hid: Signal event on AcquireNpadStyleSetUpdateEventHandle
2022-03-30 17:09:28 -06:00
ameerj
69807dd208
nvhost_ctrl: Only mark EventState::Busy as BadParameter
...
Fixes an svc break in Kirby and the Forgotten Land with async GPU enabled.
2022-03-29 15:13:30 -04:00
Morph
ea7a0d4652
registered_cache: Prevent nullptr dereference when accumulating files
...
For whatever reason, nca_file/dir can be nullptr in the list of files/dirs. I have not determined the cause of this yet, so add a nullptr check for these prior to dereferencing them.
2022-03-27 17:06:27 -04:00
merry
1383441b15
arm_dynarmic_64: Invalidate on all cores
2022-03-27 15:37:19 +01:00
Fernando S
99654721eb
Merge pull request #8088 from bunnei/fixup-nvflinger
...
Follow-up fixes for NVFlinger rewrite
2022-03-27 13:09:59 +02:00
bunnei
af04f8b8e9
Revert "Memory GPU <-> CPU: reduce infighting in the texture cache by adding CPU Cached memory."
2022-03-26 12:38:30 -07:00
bunnei
9408100a80
hle: kernel: k_page_table: Fix implementations of LockForCodeMemory & UnlockForCodeMemory.
2022-03-26 01:49:34 -07:00
bunnei
0c75913bf2
hle: kernel: k_page_table: Implement LockMemoryAndOpen & UnlockMemory.
2022-03-26 01:46:41 -07:00
merry
3c8547160d
configuration: Add Paranoid CPU accuracy level
...
Disables most optimizations for the paranoid.
2022-03-26 08:46:25 +00:00
bunnei
1b3dba329a
hle: kernel: svc: MapProcessMemory: Fix usage of KPageLinkedList to use physical address space.
2022-03-26 01:35:37 -07:00
bunnei
3bc0c2a625
hle: kernel: svc: CreateCodeMemory: Remove log of 'out' host pointer.
...
- This does not seem terribly useful and is inconsistent with other usage.
2022-03-26 01:34:29 -07:00
bunnei
94543f129e
hle: kernel: k_code_memory: Fix usage of KPageLinkedList to use physical address space.
2022-03-26 01:33:16 -07:00
bunnei
5b667f5e52
hle: kernel: k_page_table: Implement MakeAndOpenPageGroup & MakePageGroup.
2022-03-26 01:25:52 -07:00
bunnei
c975a51ae7
hle: kernel: k_page_table: Add IsHeapPhysicalAddress method.
2022-03-26 01:23:43 -07:00