Fernando Sahmkow
7b44187fd2
Dynarmic Interface: don't clear cache if JIT has not been created.
2020-06-27 11:36:08 -04:00
Fernando Sahmkow
ad92865497
General: Correct rebase, sync gpu and context management.
2020-06-27 11:36:08 -04:00
Fernando Sahmkow
bfb5244cf8
CoreTiming/CycleTimer: Correct Idling.
2020-06-27 11:36:07 -04:00
Fernando Sahmkow
bece52cd81
SingleCore: Correct ticks reset to be on preemption.
2020-06-27 11:36:06 -04:00
Fernando Sahmkow
48fa3b7a0f
General: Cleanup legacy code.
2020-06-27 11:36:05 -04:00
Fernando Sahmkow
c8bf47dcfb
Kernel/svcBreak: Implement CacheInvalidation for Singlecore and correct svcBreak.
2020-06-27 11:36:04 -04:00
Fernando Sahmkow
54e304fe2a
Bootmanager/CPU_Manager: Correct shader caches and sync GPU on OpenGL.
2020-06-27 11:36:03 -04:00
Fernando Sahmkow
19165cd859
HLE_IPC: Correct HLE Event behavior on timeout.
2020-06-27 11:36:03 -04:00
Fernando Sahmkow
7e2ce2f7f4
SingleCore: Improve Cycle timing Behavior and replace mutex in global scheduler for spinlock.
2020-06-27 11:36:02 -04:00
Fernando Sahmkow
a7ecd9e19c
FrameLimiting: Enable frame limiting for single core.
2020-06-27 11:36:01 -04:00
Fernando Sahmkow
f5e32935ca
SingleCore: Use Cycle Timing instead of Host Timing.
2020-06-27 11:36:01 -04:00
Fernando Sahmkow
9bde28d7b1
Scheduler: Correct Reload/Unload
2020-06-27 11:35:59 -04:00
Fernando Sahmkow
5974e3ea33
Thread: Release the ARM Interface on exitting.
2020-06-27 11:35:58 -04:00
Fernando Sahmkow
1567824d2d
General: Move ARM_Interface into Threads.
2020-06-27 11:35:58 -04:00
Fernando Sahmkow
1b82ccec22
Core: Refactor ARM Interface.
2020-06-27 11:35:56 -04:00
Fernando Sahmkow
534466754f
X64 Clock: Reduce accuracy to be less or equal to guest accuracy.
2020-06-27 11:35:55 -04:00
Fernando Sahmkow
7b18174eef
ARM/WaitTree: Better track the CallStack for each thread.
2020-06-27 11:35:54 -04:00
Fernando Sahmkow
87c49aa7be
SVC/ARM: Correct svcSendSyncRequest and cache ticks on arm interface.
2020-06-27 11:35:53 -04:00
Fernando Sahmkow
f2ade343e2
SingleCore: Move Host Timing from a sepparate thread to main cpu thread.
2020-06-27 11:35:52 -04:00
Fernando Sahmkow
5d3a2be04f
GUI: Make multicore only work with Async and add GUI for multicore.
2020-06-27 11:35:52 -04:00
Fernando Sahmkow
25565dffd5
ARM: Addapt to new Exclusive Monitor Interface.
2020-06-27 11:35:50 -04:00
Fernando Sahmkow
1a5f2e290b
CPU_Manager: Correct stopping on SingleCore.
2020-06-27 11:35:49 -04:00
Fernando Sahmkow
db68fba4a6
Scheduler: Correct yielding interaction with SetThreadActivity.
2020-06-27 11:35:49 -04:00
Fernando Sahmkow
7020d498c5
General: Fix microprofile on dynarmic/svc, fix wait tree showing which threads were running.
2020-06-27 11:35:48 -04:00
Fernando Sahmkow
e6f8bde74b
General: Fix Stop function
2020-06-27 11:35:47 -04:00
Fernando Sahmkow
f370de84b1
Kernel: Rewind on SVC change.
2020-06-27 11:35:46 -04:00
Fernando Sahmkow
d494b074e8
Kernel: Preempt Single core on redudant yields.
2020-06-27 11:35:45 -04:00
Fernando Sahmkow
a439cdf22e
CPU_Manager: Unload/Reload threads on preemption on SingleCore
2020-06-27 11:35:43 -04:00
Fernando Sahmkow
8a78fc2580
Synchronization: Correct wide Assertion.
2020-06-27 11:35:43 -04:00
Fernando Sahmkow
ab9aae28bf
General: Initial Setup for Single Core.
2020-06-27 11:35:42 -04:00
Fernando Sahmkow
391f5f360d
Scheduler: Set last running time on thread.
2020-06-27 11:35:41 -04:00
Fernando Sahmkow
9e9c287f8b
Kernel: Corrections to TimeManager, Scheduler and Mutex.
2020-06-27 11:35:40 -04:00
Fernando Sahmkow
6515c6e8c6
Kernel: Fixes, corrections and asserts to scheduler and different svcs.
2020-06-27 11:35:40 -04:00
Fernando Sahmkow
4217e58a10
Scheduler: Correct yields.
2020-06-27 11:35:39 -04:00
Fernando Sahmkow
445b4342b3
Mutex: Revert workaround due to poor exclusive memory.
2020-06-27 11:35:38 -04:00
Fernando Sahmkow
cd1c38be8d
ARM/Memory: Correct Exclusive Monitor and Implement Exclusive Memory Writes.
2020-06-27 11:35:37 -04:00
Fernando Sahmkow
535c542d84
SVC: WaitSynchronization add Termination Pending Result.
2020-06-27 11:35:36 -04:00
Fernando Sahmkow
725bac1404
Scheduler: Remove arm_interface lock and a few corrections.
2020-06-27 11:35:35 -04:00
Fernando Sahmkow
83c7ba1ef7
SVC: Correct SetThreadActivity.
2020-06-27 11:35:33 -04:00
Fernando Sahmkow
a66c61ca2d
SCC: Small corrections to CancelSynchronization
2020-06-27 11:35:33 -04:00
Fernando Sahmkow
44cb9997b3
Scheduler: Correct locking for hle threads.
2020-06-27 11:35:32 -04:00
Fernando Sahmkow
6ed28e15fa
Scheduler: Fix HLE Threads on guard
2020-06-27 11:35:31 -04:00
Fernando Sahmkow
3de33348e4
Scheduler: Protect on closed threads.
2020-06-27 11:35:31 -04:00
Fernando Sahmkow
19847d4d42
Scheduler: Correct assert.
2020-06-27 11:35:30 -04:00
Fernando Sahmkow
a33fbaddec
Core: Correct rebase.
2020-06-27 11:35:29 -04:00
Fernando Sahmkow
1c672128c4
Scheduler: Release old thread fiber before trying to switch to the next thread fiber.
2020-06-27 11:35:28 -04:00
Fernando Sahmkow
c43e559734
NVDRV: Remove frame limiting as Host Timing already takes care.
2020-06-27 11:35:28 -04:00
Fernando Sahmkow
a6bce296ad
Mutex: Correct Result writting to clear exclusivity.
2020-06-27 11:35:26 -04:00
Fernando Sahmkow
e4b175ade2
SVC: Correct svcWaitForAddress and svcSignalToAddress.
2020-06-27 11:35:25 -04:00
Fernando Sahmkow
1e987dbe8d
Scheduler: Correct Select Threads Step 2.
2020-06-27 11:35:24 -04:00
Fernando Sahmkow
07993ac8c8
Kernel: Corrections to Scheduling.
2020-06-27 11:35:23 -04:00
Fernando Sahmkow
b4dc01f16a
Kernel: Correct Signal on Thread Death and Setup Sync Objects on Thread for Debugging
2020-06-27 11:35:23 -04:00
Fernando Sahmkow
75e10578f1
Core: Correct HLE Event Callbacks and other issues.
2020-06-27 11:35:22 -04:00
Fernando Sahmkow
de5b521c09
Process: Protect TLS region and Modules.
2020-06-27 11:35:21 -04:00
Fernando Sahmkow
2a8837ff51
General: Add Asserts
2020-06-27 11:35:21 -04:00
Fernando Sahmkow
04e0f8776c
General: Add better safety for JIT use.
2020-06-27 11:35:20 -04:00
Fernando Sahmkow
bd36eaf15d
SVC: Correct races on physical core switching.
2020-06-27 11:35:19 -04:00
Fernando Sahmkow
cc3aa95926
NVFlinger: Lock race condition between CPU, Host Timing, VSync.
2020-06-27 11:35:18 -04:00
Fernando Sahmkow
3902067008
SVC: Add locks to the memory management.
2020-06-27 11:35:18 -04:00
Fernando Sahmkow
d4ebb510a0
SVC: Correct WaitSynchronization, WaitProcessWideKey, SignalProcessWideKey.
2020-06-27 11:35:17 -04:00
Fernando Sahmkow
5b6a67f849
SVC: Cleanup old methods.
2020-06-27 11:35:16 -04:00
Fernando Sahmkow
3d9fbb8226
CPU_Manager: Reconfigre guest threads for dynamrmic downsides
2020-06-27 11:35:15 -04:00
Fernando Sahmkow
15a79eb0d7
SVC: Correct SendSyncRequest.
2020-06-27 11:35:14 -04:00
Fernando Sahmkow
203e706302
SVC: Correct ArbitrateUnlock
2020-06-27 11:35:14 -04:00
Fernando Sahmkow
3b5b950c89
SVC: Correct SignalEvent, ClearEvent, ResetSignal, WaitSynchronization, CancelSynchronization, ArbitrateLock
2020-06-27 11:35:13 -04:00
Fernando Sahmkow
ef4afa9760
SVC: Remove global HLE Lock.
2020-06-27 11:35:13 -04:00
Fernando Sahmkow
589f9cf108
SVC: Correct GetThreadPriority, SetThreadPriority, GetThreadCoreMask, SetThreadCoreMask, GetCurrentProcessorNumber
2020-06-27 11:35:12 -04:00
Fernando Sahmkow
49ba563995
SVC: Correct CreateThread, StartThread, ExitThread, SleepThread.
2020-06-27 11:35:11 -04:00
Fernando Sahmkow
18dcb09342
HostTiming: Pause the hardware clock on pause.
2020-06-27 11:35:10 -04:00
Fernando Sahmkow
dc58058203
General: Setup yuzu threads' microprofile, naming and registry.
2020-06-27 11:35:09 -04:00
Fernando Sahmkow
a5c58a25ef
CPU_Manager: remove debugging code.
2020-06-27 11:35:08 -04:00
Fernando Sahmkow
e31425df38
General: Recover Prometheus project from harddrive failure
...
This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host
Timing, Reworks the Kernel's Scheduler, Introduce Idle State and
Suspended State, Recreates the bootmanager, Initializes Multicore
system.
2020-06-27 11:35:06 -04:00
David
0ea4a8bcc4
Merge pull request #3396 from FernandoS27/prometheus-1
...
Implement SpinLocks, Fibers and a Host Timer
2020-06-28 01:34:07 +10:00
VolcaEM
23515e0ccc
nfc: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/NFC_services
2020-06-27 13:09:36 +02:00
VolcaEM
c56414b80d
ncm: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/NCM_services
ILocationResolver's 16, 17, 18 and 19 have unofficial names
2020-06-27 13:05:22 +02:00
VolcaEM
b829643946
mm: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/Display_services
2020-06-27 12:59:01 +02:00
VolcaEM
5219424226
mig: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/Migration_services
2020-06-27 12:53:59 +02:00
VolcaEM
b9be484a51
ldn: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/LDN_services
2020-06-27 12:50:56 +02:00
VolcaEM
a8d17adb7c
Oops (fix typo)
2020-06-27 12:45:42 +02:00
VolcaEM
73b035d2e2
lbl: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/Backlight_services
2020-06-27 12:43:33 +02:00
VolcaEM
64fa9b9f57
grc: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/GRC_services
2020-06-27 12:41:21 +02:00
VolcaEM
af88767508
friend: Update function table
2020-06-27 12:39:10 +02:00
bunnei
9eaccac674
Merge pull request #4164 from Kewlan/mute-audio-hotkey
...
hotkeys: Add a "Mute Audio" hotkey
2020-06-27 02:47:13 -04:00
bunnei
6f16f54f10
Merge pull request #4158 from Morph1984/caps
...
caps: Use enum classes and check struct sizes on compile time
2020-06-27 00:09:32 -04:00
bunnei
a91f92a89d
Merge pull request #4152 from ogniK5377/ipc-err
...
Mark invalid IPC buffers as ASSERT_OR_EXECUTE_MSG
2020-06-26 23:37:19 -04:00
bunnei
705cccb1e4
Merge pull request #4154 from ogniK5377/swkbd-nullptr
...
Prevent nullptr dereference on swkbd error case
2020-06-26 23:25:04 -04:00
David
b32b7c6e74
Merge pull request #4178 from VolcaEM/patch-6
...
es: Update function table
2020-06-27 13:05:12 +10:00
VolcaEM
2d82b7f1a1
Use better names for "Unknown"s
2020-06-27 02:48:29 +02:00
VolcaEM
bc51a9365b
Update function names
2020-06-27 02:43:22 +02:00
David Marcec
0b23ce6ef2
btm: Give better names for unknown functions
2020-06-27 10:42:46 +10:00
VolcaEM
032b7d490d
btdrv: Update function table ( #4174 )
...
* btdrv: Update function table
2020-06-26 20:34:29 -04:00
VolcaEM
6e14edbcc2
bpc: Update function tables ( #4173 )
...
* bpc: Update function tables
This was based on Switchbrew page: https://switchbrew.org/wiki/PCV_services
2020-06-26 20:33:55 -04:00
VolcaEM
e6fee39ae7
bcat: Update function tables and add missing classes ( #4172 )
...
* bcat: Update function tables and add missing classes
2020-06-26 20:33:25 -04:00
VolcaEM
ca25a3845e
am: Update function tables and add missing classes ( #4169 )
...
* am: Update function tables and add missing classes
* Remove comments (1/5)
* Remove comments (2/5)
* Remove comments (3/5)
* Remove comments (4/5)
* Remove comments (5/5)
* Remove unused classes (1/2)
* Remove unused classes (2/2)
2020-06-26 20:32:26 -04:00
VolcaEM
b5d54619cc
aoc: Update function table ( #4170 )
...
* aoc: Update function table
* Remove comments
2020-06-26 20:31:44 -04:00
LC
98bbab8030
Merge pull request #4177 from VolcaEM/patch-5
...
btm: Update function tables
2020-06-26 20:30:59 -04:00
VolcaEM
0f4a611129
eupld: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/Error_Upload_services
2020-06-27 02:25:04 +02:00
VolcaEM
3828aa4927
es: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/ETicket_services
2020-06-27 02:17:51 +02:00
VolcaEM
d3e9b45ce0
btm: Update function tables
...
This was based on Switchbrew page: https://switchbrew.org/wiki/BTM_services
"No comment" edition
2020-06-27 01:57:48 +02:00
Morph
72f14ae21f
caps_u: Fix GetAlbumContentsFileListForApplication stub
2020-06-26 08:35:21 -04:00
Morph
3017be7855
caps: Use enum classes and check struct sizes on compile time
2020-06-26 08:35:21 -04:00
Morph
02a33feef4
caps: Update copyright headers
...
Updated to "yuzu Emulator Project"
2020-06-26 08:35:21 -04:00
Kewlan
3eb8efc095
Add a "Mute Audio" hotkey
2020-06-26 06:03:29 +02:00
bunnei
c4fe83a7bc
Merge pull request #4159 from ogniK5377/mem-manager-dumb-assert
...
memory_manager: Remove useless assertion
2020-06-25 22:53:13 -04:00
David
d11baf8bf8
Merge pull request #4141 from Morph1984/SevenSixAxisSensor
...
hid: Stub a series of "SevenSixAxisSensor" service commands
2020-06-25 19:37:39 +10:00
David Marcec
38868e5750
memory_manager: Remove useless assertion
...
num_pages is an std::size_t. It will always be >= 0
2020-06-25 16:35:58 +10:00
Morph
2c9308954c
hid: Stub a series of "SevenSixAxisSensor" service commands
...
- Used by Captain Toad: Treasure Tracker Update 1.3.0
While we're at it, fix the input parameters for SetIsPalmaAllConnectable and SetPalmaBoostMode
2020-06-24 11:57:39 -04:00
David Marcec
510838759f
Prevent nullptr dereference on swkbd error case
2020-06-25 00:25:15 +10:00
David Marcec
2f0b322e72
prepo: : Don't read extra buffer from report unless passed
...
Prepo doesn't always pass a secondary buffer, we assume it always does which leads to a bad read.
2020-06-24 23:01:00 +10:00
David Marcec
82ecdd0104
Mark invalid IPC buffers as ASSERT_OR_EXECUTE_MSG
...
Previously if applications would send faulty buffers(example homebrew) it would lead to us returning uninitalized data. Switching from ASSERT_MSG to ASSERT_OR_EXECUTE_MSG allows us to have a fail safe to prevent crashes but also continue execution without introducing undefined behavior
2020-06-24 22:50:27 +10:00
David Marcec
380fbd8cb7
Move GetKeyCodeMapImpl to an anonymous namespace
2020-06-24 13:05:08 +10:00
David Marcec
e3d2b646e0
Fixed logging output
2020-06-24 12:07:41 +10:00
David Marcec
5226610a15
Implement GetKeyCodeMap & GetKeyCodeMap2
...
Closes #3919
2020-06-24 12:05:52 +10:00
bunnei
3bab5a5e4a
Merge pull request #4138 from Morph1984/GyroscopeZeroDriftMode
...
hid: Implement Get/ResetGyroscopeZeroDriftMode
2020-06-23 21:56:16 -04:00
bunnei
1d1489da80
Merge pull request #4128 from lioncash/move2
...
software_keyboard: Eliminate trivial redundant copies
2020-06-23 18:24:15 -04:00
Morph
45dac6bc5c
lm: Silence no return value warning
2020-06-22 22:55:32 -04:00
VolcaEM
e193aa3f53
account: Update function tables and add missing classes ( #4145 )
...
* account: Update function tables and add missing classes
* clang-format
* Add missing "public"
* Add missing public again
* Add missing final
2020-06-22 16:03:26 -04:00
Morph
f2df941e8d
arm_dynarmic_64: Log the instruction when an exception is raised
2020-06-22 07:00:24 -04:00
Morph
e0af4cdf98
arm_dynarmic_32: Log under Core_ARM instead of HW_GPU
2020-06-22 06:59:41 -04:00
Morph
0235915baa
hid: Implement Get/ResetGyroscopeZeroDriftMode
...
- Used by Captain Toad Treasure Tracker
2020-06-21 16:25:41 -04:00
Lioncash
a5ed0c3df7
software_keyboard: Eliminate trivial redundant copies
...
We can just make use of moves here to get rid of two redundant copies
2020-06-20 01:06:10 -04:00
bunnei
7d1dca4c98
Merge pull request #4099 from MerryMage/macOS-build
...
Fix compilation on macOS
2020-06-19 23:31:04 -04:00
bunnei
9c5ed4408d
Merge pull request #4113 from ogniK5377/boxcat-disable
...
Fix compilation when not building with boxcat
2020-06-19 21:59:59 -04:00
MerryMage
7236393114
mii_model: Remove redundant std::move
...
Named return value optimization automatically applies here.
2020-06-19 14:29:09 +01:00
David Marcec
c7ed7d9427
Fix compilation when not building with boxcat
...
Fixes compilation when trying to build without boxcat enabled
2020-06-19 22:17:56 +10:00
Fernando Sahmkow
8f6ffcd5c4
Host Timing: Correct clang format.
2020-06-18 16:29:23 -04:00
Fernando Sahmkow
96b2d8419c
HostTiming: Correct rebase and implement AddTicks.
2020-06-18 16:29:22 -04:00
Fernando Sahmkow
49a7e0984a
Core/HostTiming: Allow events to be advanced manually.
2020-06-18 16:29:22 -04:00
Fernando Sahmkow
1f7dd36499
Common/Tests: Address Feedback
2020-06-18 16:29:21 -04:00
Fernando Sahmkow
1bd706344e
Common/Tests: Clang Format.
2020-06-18 16:29:19 -04:00
Fernando Sahmkow
e3524d1142
Common: Refactor & Document Wall clock.
2020-06-18 16:29:18 -04:00
Fernando Sahmkow
234b5ff6a9
Common: Implement WallClock Interface and implement a native clock for x64
2020-06-18 16:29:17 -04:00
Fernando Sahmkow
0f8e5a1465
Tests: Add base tests to host timing
2020-06-18 16:29:17 -04:00
Fernando Sahmkow
62e35ffc0e
Core: Implement a Host Timer.
2020-06-18 16:29:16 -04:00
ReinUsesLisp
778043a44c
arm_dynarmic_32: Fix implicit conversion error in SetTPIDR_EL0
...
On MSVC builds we treat conversion warnings as errors.
2020-06-18 16:52:15 -03:00
MerryMage
b19fe55f84
memory_manager: Explicitly specifcy std::min<size_t>
2020-06-18 15:47:44 +01:00
MerryMage
4f09f0aea4
shared_font: Service::NS::EncryptSharedFont takes a size_t&
2020-06-18 15:47:44 +01:00
VolcaEM
684dfbf209
Move SHA256Hash to its original position
...
It's not needed to have it in its previous position anymore
2020-06-18 15:45:47 +02:00
MerryMage
52bcfac116
arm_dynarmic_cp15: Implement CNTPCT
2020-06-17 17:10:24 +01:00
MerryMage
109df7705f
arm_dynarmic_cp15: Update CP15
2020-06-17 17:10:24 +01:00
MerryMage
32a127faaa
arm_dynarmic_32: InterpreterFallback should never happen
2020-06-17 17:10:24 +01:00
VolcaEM
bd9495c9ab
Remove unnecessary pragmas
2020-06-16 20:28:44 +02:00
VolcaEM
c0d6162050
Revert IsValidNRO refactor but make it more readable
2020-06-16 20:24:58 +02:00
bunnei
f22d02083c
Merge pull request #3966 from Morph1984/hide-internal-resolution-ui
...
yuzu/frontend: Remove internal resolution option
2020-06-16 14:12:17 -04:00
VolcaEM
4b71bf654d
Update assert string
2020-06-16 15:57:02 +02:00
bunnei
55ebf68636
Merge pull request #4070 from ogniK5377/GetTPCMasks-fix
...
nvdrv: Fix GetTPCMasks for ioctl3
2020-06-14 20:12:45 -04:00
VolcaEM
39213b1c59
Clang-format again
2020-06-14 19:41:28 +02:00
VolcaEM
198b0fa790
Use consistent variable names
2020-06-14 19:37:44 +02:00
VolcaEM
1520d7865d
Clang-format
2020-06-14 19:34:58 +02:00
VolcaEM
761d206049
Make assert strings consistent
2020-06-14 19:30:08 +02:00
VolcaEM
151a3fe7b3
Attempt to fix crashes in SSBU and refactor IsValidNRO
2020-06-14 19:28:39 +02:00
bunnei
89d11f2268
Merge pull request #4069 from ogniK5377/total-phys-mem
...
kernel: Account for system resource size for memory usage
2020-06-14 00:44:34 -04:00
bunnei
e1911e5c8b
Merge pull request #4010 from ogniK5377/reserve-always-break
...
kernel: ResourceLimit::Reserve remove useless while loop
2020-06-12 22:30:19 -04:00
David Marcec
b15cbf9bcf
nvdrv: Fix GetTPCMasks for ioctl3
...
Fixes animal crossing svcBreak on launch
2020-06-10 18:36:42 +10:00
David Marcec
74ff1db758
kernel: Account for system resource size for memory usage
...
GetTotalPhysicalMemoryAvailableWithoutSystemResource & GetTotalPhysicalMemoryUsedWithoutSystemResource seem to subtract the resource size from the usage.
2020-06-10 14:49:00 +10:00
Morph
03fad5ebe8
yuzu/frontend: Remove internal resolution option
2020-06-06 15:56:14 -04:00
bunnei
1adf640d37
service: nvhost_vic: Ignore Submit commands.
2020-06-04 22:32:28 -04:00
Zach Hilman
34635a42c0
nvdrv: Stub nvdec/vic ioctls to bypass nvdec movies
2020-06-04 22:32:28 -04:00
bunnei
624def4f38
Merge pull request #4044 from ogniK5377/handle-not-signalled-err
...
Downgrade "handle not signaled" error to trace
2020-06-04 12:23:40 -04:00
bunnei
34d4abc4f9
Merge pull request #4009 from ogniK5377/macro-jit-prod
...
video_core: Implement Macro JIT
2020-06-04 11:40:52 -04:00
David Marcec
c0d2e3212f
Downgrade "handle not signaled" error to trace
...
clogs logs quite a bit
2020-06-04 22:27:15 +10:00
VolcaEM
dfd1badc12
Address review comments
2020-06-02 17:54:10 +02:00
VolcaEM
8c84a7e7ec
Clang-format
2020-06-01 19:42:54 +02:00
VolcaEM
4d10d3113f
hid: Stub GetXpadIDs
...
Allows Minecraft: Nintendo Switch Edition (a.k.a. old Minecraft) to boot and go ingame
2020-06-01 19:38:44 +02:00
VolcaEM
a087b3365a
Add comment to nrr_kind
...
According to Atmosphére (c7026b9094/libraries/libstratosphere/include/stratosphere/ro/ro_types.hpp
), nrr_kind (Atmosphére calls it "type") is 7.0.0+
2020-05-31 19:12:09 +02:00
VolcaEM
2b1cc232bc
ldr: Update NRR/NRO structs
...
This was based on Switchbrew pages:
https://switchbrew.org/wiki/NRR
https://switchbrew.org/wiki/NRO
2020-05-31 18:49:51 +02:00
David Marcec
b032ebdfee
Implement macro JIT
2020-05-30 11:40:04 +10:00
David Marcec
43bf860b22
kernel: ResourceLimit::Reserve remove useless while loop
...
Timeout is a u64, it will always be >= 0
2020-05-29 13:48:01 +10:00
bunnei
5242b21524
Merge pull request #4002 from lat9nq/fix-nix-mod-directories
...
patch_manager: Add support for case-sensitivity on Linux
2020-05-28 22:36:39 -04:00
lat9nq
f57cbd9f24
Make copying directory string more concise
2020-05-28 13:33:50 -04:00
lat9nq
326403518d
Address requested changes
2020-05-28 13:30:22 -04:00
lat9nq
136c563f76
*nix systems can read any-case patch directories
...
Changes many patch_manager functions to use a case-less variant of
GetSubdirectory. Fixes patches not showing up on *nix systems when
patch directories are named with odd cases, i.e. `exeFS'.
2020-05-27 23:12:56 -04:00
bunnei
325e7eed3c
Merge pull request #3964 from ReinUsesLisp/arb-integration
...
renderer_opengl: Add assembly program code paths
2020-05-24 00:34:12 -04:00
VolcaEM
cb75ccc1f7
clang-format
2020-05-21 10:43:55 +02:00
VolcaEM
235805edf3
nifm: correct assert in CreateTemporaryNetworkProfile
...
This has been wrong since 0432af5ad1
I haven't found a game that called this function (and I haven't tried this on a real Switch), and because of this I haven't been able to check if the number in assert OR the string in the assert is wrong, but one of the two is wrong:
NetworkProfileData is 0x18E, while SfNetworkProfileData is 0x17C, according to Switchbrew
Switchbrew doesn't officially say that NetworkProfileData's size is 0x18E but it's possible to calculate its size since Switchbrew provides the size and the offset of all the components of NetworkProfileData (which isn't currently implemented in yuzu, alongside SfNetworkProfileData)
NetworkProfileData documentation: https://switchbrew.org/wiki/Network_Interface_services#NetworkProfileData
SfNetworkProfileData documentation: https://switchbrew.org/wiki/Network_Interface_services#SfNetworkProfileData
Since I trust ogniK's work on reversing NIFM, I'd assume this was just a typo in the string
2020-05-21 10:23:53 +02:00
bunnei
ae61e47cba
Merge pull request #3946 from ogniK5377/sysverdat-10-0-2
...
file_sys: Update SystemVersion archive to version 10.0.2
2020-05-20 19:21:27 -04:00
FearlessTobi
9f82a9a244
crypto: Make KeyManager a singleton class
...
Previously, we were reading the keys everytime a KeyManager object was created, causing yuzu to reread the keys file multiple hundreds of times when loading the game list.
With this change, it is only loaded once.
On my system, this decreased game list loading times by a factor of 20.
2020-05-20 21:28:16 +02:00
ReinUsesLisp
47a7c4f4fe
yuzu: Add frontend settings for assembly shaders
...
Add settings for assembly shaders. Currently hidden to avoid users from
accidentally enabled them.
2020-05-19 17:53:17 -03:00
bunnei
cf4ee279c6
Merge pull request #3926 from ogniK5377/keyboard-states
...
hid: Clear keyboard states & fix logic issue
2020-05-19 15:55:14 -04:00
bunnei
65010607b7
Merge pull request #3665 from bunnei/device-save
...
FS: Improve emulation of device saves
2020-05-16 12:39:58 -04:00
David Marcec
17455b7222
file_sys: Update SystemVersion archive to version 10.0.2
2020-05-16 13:56:06 +10:00
David Marcec
6f0360690b
nv_flinger: Use enum for pixel format instead of u32
2020-05-16 13:47:55 +10:00
Morph
b73f678ee8
frontend: Set minimum window size to 640x360 instead of 1280x720 ( #3413 )
2020-05-15 22:22:27 +02:00
bunnei
bba54e1880
time_zone: Use std::chrono::seconds for strong typing.
2020-05-12 18:44:07 -04:00
David Marcec
a79f060ea2
hid: Clear keyboard states & fix logic issue
...
Previously we never cleared the states of the entries and the key would stay held down, also looping over the key bytes for each key lead to setting every bit for the key state instead of the key we wanted
2020-05-12 12:40:50 +10:00
bunnei
3c8cd62b0d
hle: service: time_zone_manager: Use current time zone setting.
2020-05-11 17:55:25 -04:00
bunnei
988e42a3f5
core: settings: Add a setting for time zone.
2020-05-11 17:50:07 -04:00
bunnei
47b97b9577
service: fsp_srv: Stub implementation of OpenMultiCommitManager.
2020-05-11 12:54:30 -04:00
bunnei
ab9ddab0a2
file_sys: savefata_factory: Update to support DeviceSaveData.
2020-05-11 12:54:30 -04:00
bunnei
9c065c013e
file_sys: control_metadata: Expose device_save_data_size.
2020-05-11 12:54:30 -04:00
David Marcec
ecc8ccc9d3
Stub SendKeyboardLockKeyEvent
...
Needed for Puchikon 4 SmileBASIC 1.0.0
2020-05-12 01:01:50 +10:00
James Rowe
bc30a591ba
Replace externals with Conan ( #3735 )
...
* Remove git submodules that will be loaded through conan
* Move custom Find modules to their own folder
* Use conan for downloading missing external dependencies
* CI: Change the yuzu source folder user to the user that the containers run on
* Attempt to remove dirty mingw build hack
* Install conan on the msvc build
* Only set release build type when using not using multi config generator
* Re-add qt bundled to workaround an issue with conan qt not downloading prebuilt binaries
* Add workaround for submodules that use legacy CMAKE variables
* Re-add USE_BUNDLED_QT on the msvc build bot
2020-05-08 17:09:29 -04:00
bunnei
1121960f0e
Merge pull request #3879 from lioncash/global2
...
hle_ipc: Eliminate core memory globals
2020-05-07 19:13:34 -04:00
bunnei
88141bb2d4
Merge pull request #3881 from lioncash/mem-warning
...
kernel/memory: Resolve several compiler warnings
2020-05-05 15:41:18 -04:00
bunnei
929acd4d1e
Merge pull request #3880 from lioncash/encoding
...
kernel/memory: Amend potential encoding warnings
2020-05-04 18:50:29 -04:00
bunnei
500e9c5969
Merge pull request #3843 from ogniK5377/GetPopFromGeneralChannelEvent
...
am: IHomeMenuFunctions:GetPopFromGeneralChannelEvent
2020-05-04 16:20:11 -04:00
bunnei
29fce1a187
Merge pull request #3822 from ogniK5377/GetAccountId
...
acc: Return a unique value per account for GetAccountId
2020-05-03 23:15:03 -04:00
Lioncash
4620580245
kernel/memory: Remove #pragma once within cpp file
...
This isn't necessary in a cpp file and will cause warnings on clang.
2020-05-03 13:42:07 -04:00
Lioncash
1ecaa86a52
kernel/memory: Remove unused includes
...
Prevents header churn and needing to recompile these files if these
headers are ever changed in the future.
2020-05-03 13:41:18 -04:00
Lioncash
a2e61e6542
kernel/memory: Remove unused variables in memory_block_manager
...
Prevents unused variable warnings.
2020-05-03 13:36:20 -04:00
Lioncash
26aee55aef
kernel/memory: Make use of std::array consistently in address_space_info
...
This allows tuning standard library implementations to enable or disable
range checks at runtime, which is nicer for debugging.
2020-05-03 13:34:24 -04:00
Lioncash
dfa582169b
kernel/memory: Resolve -Wshadow warnings
...
Prevents variable name clashing.
2020-05-03 13:29:42 -04:00
Lioncash
93c083aef1
kernel/memory: Amend potential encoding warnings
...
While èis generally representable in some language encodings, in some
it isn't and will result in compilation warnings occurring. To remain
friendly with other language's codepages on Windows, we normalize it to
an ASCII e.
2020-05-03 13:01:03 -04:00
Lioncash
0ec07e8763
hle_ipc: Eliminate core memory globals
...
We can just pass the required instances into the constructor of the
request, eliminating all usages of the global system accessor.
2020-05-03 12:57:40 -04:00
Morph
3cfa7a89e0
settings: Add anisotropic filtering level to the yuzu configuration log ( #3875 )
2020-05-03 17:42:17 +02:00
bunnei
8db4feb5b4
Merge pull request #3871 from lioncash/semi
...
readable_event: Remove unnecessary semicolon in Signal()
2020-05-02 23:38:36 -04:00
bunnei
7459215933
Merge pull request #3824 from ogniK5377/GetDisplayVersion
...
am: Properly implement GetDisplayVersion
2020-05-02 23:35:38 -04:00
bunnei
c49f51eaf1
Update src/core/hle/service/am/am.cpp
...
Co-authored-by: Mat M. <mathew1800@gmail.com>
2020-05-02 23:35:31 -04:00
Lioncash
aabf5b2059
readable_event: Remove unnecessary semicolon in Signal()
...
Resolves a -Wextra-semi warning.
While we're at it, we can invert the branch to form a guard clause,
unindenting all of the contained code.
2020-05-02 14:07:31 -04:00
bunnei
30bd77c6e7
Merge pull request #3811 from ogniK5377/audin-init
...
audin:u: ListAudioIns, OpenAudioIn, ListAudioInsAuto, OpenAudioInAuto, ListAudioInsAutoFiltered, OpenAudioInProtocolSpecified
2020-05-02 13:11:52 -04:00
bunnei
5ddcc1b2f5
Merge pull request #3819 from ogniK5377/err-log2
...
kernel: Don't fail silently
2020-05-02 02:51:50 -04:00
bunnei
1bcdf5e61c
Merge pull request #3833 from qwell/caps_su-32-stub
...
Add stub for caps:su SetShimLibraryVersion
2020-05-01 23:34:05 -04:00
bunnei
fd005585f6
Merge pull request #3821 from ogniK5377/InitializeApplicationInfo-fix
...
acc: Fix InitializeApplicationInfo
2020-05-01 22:06:05 -04:00
bunnei
224cf3075c
Merge pull request #3812 from ogniK5377/lisst-qualified-users
...
account: ListQualifiedUsers
2020-05-01 22:05:37 -04:00
David Marcec
d5a69ecb68
nvdrv: Fix GetGpuTime stack corruption
...
IoctlGetGpuTime should be 16 bytes, not 8.
2020-05-02 00:14:37 +10:00
David Marcec
8850d85341
am: IHomeMenuFunctions:GetPopFromGeneralChannelEvent
...
QLaunch 1.0.0
2020-05-01 11:20:43 +10:00
Jason Parker
4b16e93f1a
caps:su Stub out SetShimLibraryVersion
...
Used by Animal Crossing: New Horizons when trying to take a picture.
2020-04-30 15:16:53 -04:00
Mat M
f88d2f5739
Merge pull request #3823 from ogniK5377/setvrmode
...
am: IsVrModeEnabled & SetVrModeEnabled fixes
2020-04-30 13:39:16 -04:00
Mat M
ecf1f2e054
Merge pull request #3830 from ogniK5377/GetFriendInvitationStorageChannelEvent
...
am: GetFriendInvitationStorageChannelEvent
2020-04-30 13:38:35 -04:00
Mat M
0a0b676286
Merge pull request #3835 from ogniK5377/GetFreeSpaceSize-GetTotalSpaceSize
...
fs-srv: GetFreeSpaceSize & GetTotalSpaceSize
2020-04-30 13:37:43 -04:00
Mat M
07552d4615
Merge pull request #3832 from ogniK5377/nim-eca-CreateServerInterface
...
nim: CreateServerInterface, CreateAccessorInterface, CreateAsyncInterface
2020-04-30 13:36:04 -04:00
Mat M
e6f4251988
Merge pull request #3831 from ogniK5377/caps-su-names
...
caps: Add missing service names to caps:su
2020-04-30 13:32:53 -04:00
David Marcec
78e5f162e2
fs-srv: GetFreeSpaceSize & GetTotalSpaceSize
...
Closes #3533
Turns out the functions were already implemented but just never added
2020-04-30 23:59:57 +10:00
David Marcec
55e423c8b6
nim: CreateServerInterface, CreateAccessorInterface, CreateAsyncInterface
...
Closes #3026
2020-04-30 23:10:20 +10:00
David Marcec
738140fdd8
caps: Add missing service names to caps:su
...
SetShimLibraryVersion, SaveScreenShotEx1 & SaveScreenShotEx2 were missing
2020-04-30 22:51:06 +10:00
David Marcec
10804d6d0e
am: GetFriendInvitationStorageChannelEvent
...
Closes #3829
2020-04-30 22:37:26 +10:00
David Marcec
973c40b63e
psm: Mark as debug instead of warning
...
No point to emulate battery life. However options are broken out if we ever want to add a setting for it
2020-04-29 22:39:49 +10:00
David Marcec
9acd336422
am: Properly implement GetDisplayVersion
...
Properly implement IApplicationFunctions::GetDisplayVersion
2020-04-29 22:13:56 +10:00
David Marcec
8bddc750e2
am: IsVrModeEnabled & SetVrModeEnabled fixes
...
Return the proper state of vr mode for IsVrModeEnabled
We should not return an error for SetVrModeEnabled. When VR Mode is turned on, it signals to lbl to turn vr mode on, not return an error code
2020-04-29 21:48:58 +10:00
David Marcec
1417849a2b
acc: Return a unique value per account for GetAccountId
2020-04-29 21:09:53 +10:00
David Marcec
1fbc341aba
acc: Fix InitializeApplicationInfo
...
We're not suppose to pop a u64, should just read the sent pid and check that
2020-04-29 20:49:35 +10:00
David Marcec
b6538c3e7c
kernel: Don't fail silently
2020-04-29 14:53:53 +10:00
Mat M
c3c3e07263
Merge pull request #3818 from ogniK5377/err-log
...
Don't fail silently for vi, sm, set and ns services
2020-04-28 21:41:13 -04:00
Mat M
5cb531b6cf
Merge pull request #3783 from lioncash/pointer
...
physical_core: Make use of std::make_unique instead of std::make_shared in ctor
2020-04-28 21:38:02 -04:00
David Marcec
b4dbf1b9c7
Don't fail silently for vi, sm, set and ns services
2020-04-29 11:15:21 +10:00
David Marcec
2261cf24af
kernel: Bad GetInfo ids should not be marked as stubs
...
As we currently match hardware and don't return a successful result, these should be marked as errors instead of warnings and as stubs.
2020-04-29 01:17:59 +10:00
David Marcec
fdbeb90bd0
Updated comment to reflect ListQualifiedUsers better
2020-04-29 01:13:03 +10:00
David Marcec
0f6064e5c9
style: Change AMs & Glues error codes to be dec instead of hex
...
Consistency for the rest of the error codes in the codebase
2020-04-29 00:49:49 +10:00
David Marcec
1276e425d2
marked stubs
2020-04-29 00:43:05 +10:00
David Marcec
a17813c4f4
account: ListQualifiedUsers
...
Closes #2844
2020-04-29 00:37:47 +10:00
David Marcec
fb51a655b8
Audin:u ListAudioIns, OpenAudioIn, ListAudioInsAuto, OpenAudioInAuto, ListAudioInsAutoFiltered, OpenAudioInProtocolSpecified
...
Closes #2874
2020-04-29 00:19:07 +10:00
bunnei
4dca2298f9
Merge pull request #3785 from ogniK5377/set-buffer-count-unit
...
vi: Don't let uninitialized data pass as a response for SetBufferCount
2020-04-27 17:10:28 -04:00
Mat M
e8e04a4b80
Merge pull request #3797 from slashiee/hid-stub
...
services: hid: Stub StopSevenSixAxisSensor.
2020-04-27 15:37:08 -04:00
bunnei
6c7d8073be
Merge pull request #3742 from FernandoS27/command-list
...
Optimize GPU Command Lists and Introduce Fast GPU Time Option
2020-04-27 00:18:46 -04:00
bunnei
11e1629d89
Merge pull request #3744 from lioncash/table2
...
service: Update function tables
2020-04-26 04:15:47 -04:00
M&M
c1ffaa8b29
services: hid: Stub StopSevenSixAxisSensor.
...
- Used by The Legend of Zelda: Breath of the Wild v1.6.0
2020-04-25 15:38:56 -07:00
bunnei
d1e7cf3bdc
Merge pull request #3780 from lioncash/process
...
svc: Re-add MapProcessCodeMemory/UnmapProcessCodeMemory
2020-04-24 23:22:26 -04:00
David Marcec
03a6f3b0f4
vi: Don't let uninitialized data pass as a response for SetBufferCount
...
Currently SetBufferCount doesn't write to the out buffer which then contains uninitialized data. This leads to non-zero data which leads to responding with different error codes
2020-04-24 17:24:58 +10:00
Lioncash
cc84b48ce5
physical_core: Make use of std::make_unique instead of std::make_shared in ctor
...
We can also allow unicorn to be constructed in 32-bit mode or 64-bit
mode to satisfy the need for both interpreter instances.
Allows this code to compile successfully of non x86-64 architectures.
2020-04-24 00:20:58 -04:00
Rodrigo Locatti
f24c67877b
Merge pull request #3777 from lioncash/warn
...
page_table: Remove unused captures
2020-04-23 21:47:54 -03:00
Rodrigo Locatti
db3dcb2f64
Merge pull request #3778 from lioncash/unused-var
...
svc: Remove unused variable
2020-04-23 21:47:24 -03:00
Lioncash
ce7c02735e
shared_memory: Amend doxygen reference
...
Amends the parameter to match the documentation reference.
Resolves a -Wdocumentation warning with clang.
2020-04-23 18:42:14 -04:00
Lioncash
4730347f8e
svc: Re-add MapProcessCodeMemory/UnmapProcessCodeMemory
...
These were lost in the re-implementation of the virtual memory manager.
2020-04-23 18:12:04 -04:00
Lioncash
bed4865981
svc: Remove unused variable
...
Since the VMM refactor, this is no longer used or needed.
2020-04-23 17:53:26 -04:00
Lioncash
f77b5dfe81
page_table: Remove unused captures
...
Any time the lambda function is called, the permission being used in the
capture would be passed in as an argument to the lambda, so the capture
is unnecessary.
2020-04-23 17:33:08 -04:00
bunnei
ff0c49e1ce
kernel: memory: Improve implementation of device shared memory. ( #3707 )
...
* kernel: memory: Improve implementation of device shared memory.
* fixup! kernel: memory: Improve implementation of device shared memory.
* fixup! kernel: memory: Improve implementation of device shared memory.
2020-04-23 11:37:12 -04:00
Fernando Sahmkow
b8aef40c56
GPU: Add Fast GPU Time Option.
2020-04-23 08:52:57 -04:00
bunnei
eb26e9e711
Merge pull request #3730 from lioncash/time
...
service/time: Remove reliance on the global system accessor
2020-04-23 02:41:38 -04:00
bunnei
2409fedacf
Merge pull request #3697 from lioncash/declarations
...
CMakeLists: Enable -Wmissing-declarations on Linux builds
2020-04-23 02:18:52 -04:00
bunnei
bf2ddb8fd5
Merge pull request #3677 from FernandoS27/better-sync
...
Introduce Predictive Flushing and Improve ASYNC GPU
2020-04-22 22:09:38 -04:00
bunnei
bee2c64b34
Merge pull request #3725 from MerryMage/fpcr
...
thread: FPCR.FZ is likely not 1 (and FPCR.RMode = TieAway and FPCR.DN = 0)
2020-04-22 19:49:13 -04:00
Fernando Sahmkow
7f44f22451
Correct Linux Compile Error.
2020-04-22 11:36:22 -04:00
Fernando Sahmkow
084ceb925a
UI: Replasce accurate GPU option for GPU Accuracy Level
2020-04-22 11:36:04 -04:00
bunnei
e84f82a028
Merge pull request #3699 from FearlessTobi/port-5185
...
Port citra-emu/citra#5185 : "gdbstub: Fix some gdbstub jankiness"
2020-04-21 22:26:10 -04:00
bunnei
cd47ccec49
Merge pull request #3745 from bunnei/fix-homebrew-load
...
Fix process memory initialization for ELF and NRO
2020-04-21 18:59:16 -04:00
bunnei
9bf3abcb63
Merge pull request #3698 from lioncash/warning
...
General: Resolve minor assorted warnings
2020-04-21 14:11:18 -04:00
bunnei
48b670d132
Merge pull request #3724 from bunnei/fix-unicorn
...
core: arm_unicorn: Fix interpret fallback by temporarily mapping instruction page.
2020-04-20 23:28:23 -04:00
David
11c63ca969
audio_renderer: Preliminary BehaviorInfo ( #3736 )
...
* audio_renderer: Preliminary BehaviorInfo
* clang format
* Fixed IsRevisionSupported
* fixed IsValidRevision
* Fixed logic error & spelling errors & crash
* Addressed issues
2020-04-20 22:57:30 -04:00
bunnei
9c12aef2f8
loader: nro: Fix process initialization using ProgramMetadata default.
2020-04-20 18:19:45 -04:00
bunnei
68039addbc
loader: elf: Fix process initialization using ProgramMetadata default.
2020-04-20 18:19:45 -04:00
bunnei
f0a7f05070
file_sys: program_metadata: Add a helper function for generating reasonable default metadata.
...
- We need this for homebrew process initialization.
2020-04-20 18:19:45 -04:00
Lioncash
99eaa2e6f2
service: Update function tables
...
Keeps the service function tables up to date.
Updated based off information on SwitchBrew.
2020-04-20 15:53:49 -04:00
Mat M
200f69d2ff
Merge pull request #3739 from MerryMage/disable_cpu_opt
...
dynarmic: Add option to disable CPU JIT optimizations
2020-04-20 14:19:18 -04:00
FearlessTobi
4e99a06c70
npad: Lower log level for VibrateController to Debug
2020-04-20 18:44:57 +02:00
FearlessTobi
6ce0f3575a
audren: Lower log level for RequestUpdateImpl to Debug
2020-04-20 18:44:41 +02:00
MerryMage
a3a12deecc
dynarmic: Add option to disable CPU JIT optimizations
2020-04-20 13:36:26 +01:00
bunnei
6de36f0b61
Merge pull request #3712 from lioncash/remove
...
service: Remove unused RequestParser instances
2020-04-20 01:04:04 -04:00
bunnei
e3977243e2
Merge pull request #3709 from lioncash/am
...
am: Resolve ineffective moves
2020-04-20 00:15:00 -04:00
Lioncash
bfee33cce3
service/time: Remove reliance on the global system accessor
...
Eliminates usages of the global system accessor and instead passes the
existing system instance into the interfaces.
2020-04-19 16:31:28 -04:00
bunnei
10fb26f69c
Merge pull request #3696 from lioncash/cast-size
...
hle_ipc: Remove std::size_t casts where applicable
2020-04-19 14:24:15 -04:00
MerryMage
2bfac7b61d
thread: FPCR.FZ is likely not 1
2020-04-19 08:37:20 +01:00
bunnei
74c27fd1b5
core: arm_unicorn: Fix interpret fallback by temporarily mapping instruction page.
2020-04-19 00:53:23 -04:00
bunnei
89e512ca8d
Merge pull request #3710 from lioncash/nso
...
loader/nso: Resolve moves not occurring in DecompressSegment
2020-04-18 14:44:42 -04:00
Mat M
45964e6fec
Merge pull request #3715 from bunnei/fix-impl-fallthrough
...
service: hid: npad: Fix implicit fallthrough errors.
2020-04-18 14:44:20 -04:00
bunnei
a8d5d08e2e
service: hid: npad: Fix implicit fallthrough errors.
2020-04-18 14:41:08 -04:00
bunnei
907ba8794e
Merge pull request #3713 from lioncash/time
...
service/time: Minor changes
2020-04-17 21:04:43 -04:00
Lioncash
7714b02d95
time/system_clock_core: Remove unnecessary initializer
...
This is already initialized within the class body.
2020-04-17 20:04:06 -04:00
Lioncash
b533f18ab9
service/time: Mark IsStandardNetworkSystemClockAccuracySufficient as const
...
This doesn't modify internal member state.
2020-04-17 20:02:45 -04:00
Lioncash
0cfd3b94db
service/time: Add virtual destructors where applicable
...
Many of these implementations are used to implement a polymorphic
interface. While not directly used polymorphically, this prevents
virtual destruction from ever becoming an issue.
2020-04-17 19:59:31 -04:00
Lioncash
4d8a8a8033
service: Remove unused RequestParser instances
...
These aren't used, so they should be removed to reduce compilation
warnings.
2020-04-17 19:47:43 -04:00
Lioncash
7e585bce28
memory/slab_heap: Make use of static_cast over reinterpret_cast
...
Casting from void* with static_cast is permitted by the standard, so we
can just make use of that instead.
2020-04-17 19:38:59 -04:00
Lioncash
441a2812ed
loader/nso: Resolve moves not occurring in DecompressSegment
...
Given the std::vector was const, an automatic move out of the function
could not occur.
We can allow automatic return value optimizations to occur by making the
buffer non-const.
2020-04-17 19:26:50 -04:00
Lioncash
64f226889c
am: Resolve ineffective moves
...
Previously const objects were being std::moved, which results in no move
actually occurring. This resolves that.
2020-04-17 19:22:46 -04:00
bunnei
8bbe74a8dc
core: hle: Address various feedback & code cleanup.
...
- Should be no functional changes.
2020-04-17 00:59:36 -04:00
bunnei
92caa003a8
core: device_memory: Remove incorrect usage of constexpr.
2020-04-17 00:59:36 -04:00
bunnei
6f3266e98b
memory: Add copyright notice for Atmosphere where applicable.
2020-04-17 00:59:35 -04:00
bunnei
02547a0cb4
kernel: Remove old VMManager class.
2020-04-17 00:59:35 -04:00
bunnei
bebfb05c1b
loader: nso: Fix loader size and arguments.
2020-04-17 00:59:35 -04:00
bunnei
83761d5316
loader: elf/kip/nro: Updates for new VMM.
2020-04-17 00:59:35 -04:00
bunnei
37b79ebe85
service: ldr: Updates for new VMM.
...
- Includes removing some service impls. that are untested.
2020-04-17 00:59:35 -04:00
bunnei
a8292f6cd9
kernel: memory: page_table: Simplify GetPhysicalAddr impl.
2020-04-17 00:59:35 -04:00
bunnei
c629e544a7
kernel: svc: Updates for new VMM.
...
- Includes removing some SVC impls. that are untested.
2020-04-17 00:59:34 -04:00
bunnei
ff5d5b6f41
core: memory: Fix memory access on page boundaries.
...
- Fixes Super Smash Bros. Ultimate.
2020-04-17 00:59:34 -04:00
bunnei
f7c03610e1
core: memory: Updates for new VMM.
2020-04-17 00:59:34 -04:00
bunnei
1d5923e150
core: gdbstub: Updates for new VMM.
2020-04-17 00:59:34 -04:00
bunnei
c7bc7986bb
core: reporter: Updates for new VMM.
2020-04-17 00:59:33 -04:00
bunnei
18c4bb6f5c
memory: cheat_engine: Updates for new VMM.
2020-04-17 00:59:33 -04:00
bunnei
108564df57
kernel: process: Updates for new VMM.
2020-04-17 00:59:33 -04:00
bunnei
77382ac2b2
service: pl_u: Update for new shared memory layout.
2020-04-17 00:59:33 -04:00
bunnei
67b3df683b
service: time: Update for new shared memory layout.
2020-04-17 00:59:33 -04:00
bunnei
8eca0f9cd2
service: hid: Update for new shared memory layout.
2020-04-17 00:59:33 -04:00
bunnei
8bbc38a7bd
service: irs: Update for new shared memory layout.
2020-04-17 00:59:32 -04:00
bunnei
fc61cb44ee
kernel: resource_limit: Reserve physical memory.
2020-04-17 00:59:32 -04:00
bunnei
8f75524e55
kernel: Initialize memory layout for new VMM.
2020-04-17 00:59:32 -04:00
bunnei
11c02a50e9
core: system: Rename GetDeviceManager -> DeviceManager.
...
- More consistent with other system components.
2020-04-17 00:59:32 -04:00
bunnei
3fcc4cab4f
kernel: transfer_memory: Refactor for new VMM.
2020-04-17 00:59:32 -04:00
bunnei
c53454ff46
core: Construct/Destruct DeviceMemory on Init/Shutdown.
2020-04-17 00:59:32 -04:00
bunnei
d0162fc3d7
kernel: shared_memory: Refactor for new VMM.
2020-04-17 00:59:32 -04:00
bunnei
a040a15246
core: device_memory: Update to use VirtualBuffer class.
2020-04-17 00:59:31 -04:00
bunnei
a238d08f71
kernel: errors: Add ERR_OUT_OF_RESOURCES.
2020-04-17 00:59:31 -04:00
bunnei
ffc3de762b
kernel: process_capability: Update to use Memory::PageTable.
2020-04-17 00:59:31 -04:00
bunnei
84f1b6d530
kernel: memory: Add PageTable class, to manage process address space.
2020-04-17 00:59:31 -04:00
bunnei
cfae8a1c1a
kernel: memory: Add MemoryLayout class, to build physical memory layout.
2020-04-17 00:59:31 -04:00
bunnei
5d6e8a5b44
kernel: memory: Add MemoryManager class, to manage page heaps.
2020-04-17 00:59:30 -04:00
bunnei
548ef190ab
kernel: memory: Add MemoryBlockManager class, to manage memory blocks.
2020-04-17 00:59:30 -04:00
bunnei
3927012734
kernel: memory: Add PageHeap class, to manage a heap of pages.
2020-04-17 00:59:30 -04:00
bunnei
dc720311cc
kernel: memory: Add PageLinkedList class, to manage a list of pages.
2020-04-17 00:59:30 -04:00
bunnei
81cb4d3c7f
kernel: memory: Add system_control code, which will be used for ASLR support.
2020-04-17 00:59:30 -04:00
bunnei
fc040b5b70
physical_memory: Add missing include for <vector>.
2020-04-17 00:59:30 -04:00
bunnei
c2f4dcb1e3
kernel: memory: Add MemoryBlock class, for managing memory blocks and their state.
2020-04-17 00:59:29 -04:00
bunnei
ea5ee9918e
kernel: memory: Add memory_types.h, for things that are commonly used in memory code.
2020-04-17 00:59:29 -04:00
bunnei
d364e7cf09
kernel: memory: Add SlabHeap class, for managing memory heaps.
...
- This will be used for TLS pages, among other things.
2020-04-17 00:59:29 -04:00
bunnei
14aa65ce00
kernel: memory: Add AddressSpaceInfo class, for managing the memory address space.
2020-04-17 00:59:29 -04:00
bunnei
dc25c86556
core: device_manager: Add a simple class to manage device RAM.
2020-04-17 00:59:29 -04:00
bunnei
f1b607829e
dynarmic: Enable strict alignment checks.
...
- Also add a missing include.
2020-04-17 00:59:29 -04:00
bunnei
4caff51710
core: memory: Move to Core::Memory namespace.
...
- helpful to disambiguate Kernel::Memory namespace.
2020-04-17 00:59:28 -04:00
bunnei
ad48ebb2c8
core: kernel: Add svc_types header to include SVC-specific types.
2020-04-17 00:59:28 -04:00
bunnei
82d457af37
core: kernel: Move SVC to its own namesapce.
2020-04-17 00:59:28 -04:00
bunnei
b0e3cbef7a
kernel: resource_limit: Improvements to implementation.
2020-04-17 00:59:27 -04:00
bunnei
7aa0e4a7ca
loader: nso: Fix loading of static objects to be properly sized and aligned.
2020-04-17 00:59:27 -04:00
bunnei
f2676efe23
process: SetupMainThread: Zero out argument on process start.
2020-04-17 00:11:50 -04:00
bunnei
0f4f90cd04
arm_interface: Ensure ThreadContext is zero'd out.
2020-04-17 00:11:50 -04:00
Lioncash
e2d8be1ca2
General: Resolve warnings related to missing declarations
2020-04-16 23:43:34 -04:00
MerryMage
1cc9507bc5
gdbstub: Fix some gdbstub jankiness
...
1. Ensure that register information available to gdbstub is most up-to-date.
2. There's no reason to check for current_thread == thread when emitting a trap.
Doing this results in random hangs whenever a step happens upon a thread switch.
2020-04-17 05:41:43 +02:00
bunnei
86f9c9aa1c
Merge pull request #3671 from lioncash/switch
...
kernel/thread: Resolve -Wswitch warnings
2020-04-16 23:30:32 -04:00
Lioncash
8f9c599c9f
key_manager: Resolve missing field initializer warning
2020-04-16 22:45:44 -04:00
Lioncash
337f2dc11f
time_zone_manager: Resolve sign conversion warnings
...
ttis and ats will never exceed the length of INT32_MAX in our case, so
this is safe.
2020-04-16 22:23:59 -04:00
Lioncash
77356731a9
hle_ipc: Remove std::size_t casts where applicable
...
These were added in the change that enabled -Wextra on linux builds so
as not to introduce interface changes in the same change as a
build-system flag addition.
Now that the flags are enabled, we can freely change the interface to
make these unnecessary.
2020-04-16 22:02:10 -04:00
bunnei
79c1269f0f
Merge pull request #3673 from lioncash/extra
...
CMakeLists: Specify -Wextra on linux builds
2020-04-16 21:12:33 -04:00
Markus Wick
fedf750e1b
externals: Move LibreSSL linking to httplib.
...
Neither core nor web_services use OpenSSL nor LibreSSL.
However they need to link them as it's a requirement of httplib.
So let's declare this within httplib instead of core and web_services.
2020-04-16 16:46:33 +02:00
Rodrigo Locatti
db67e017cb
Merge pull request #3659 from bunnei/time-calc-standard-user
...
service: time: Implement CalculateStandardUserSystemClockDifferenceByUser.
2020-04-16 02:51:57 -03:00
Lioncash
1c340c6efa
CMakeLists: Specify -Wextra on linux builds
...
Allows reporting more cases where logic errors may exist, such as
implicit fallthrough cases, etc.
We currently ignore unused parameters, since we currently have many
cases where this is intentional (virtual interfaces).
While we're at it, we can also tidy up any existing code that causes
warnings. This also uncovered a few bugs as well.
2020-04-15 21:33:46 -04:00
Lioncash
213fff67bc
CMakeLists: Make -Wreorder a compile-time error
...
This can result in silent logic bugs within code, and given the amount
of times these kind of warnings are caused, they should be flagged at
compile-time so no new code is submitted with them.
2020-04-15 14:14:41 -04:00
Lioncash
521c4c33b5
kernel/thread: Resolve -Wswitch warnings
2020-04-15 13:48:14 -04:00
bunnei
eb676c343a
service: time: Implement CalculateStandardUserSystemClockDifferenceByUser.
...
- Used by Animal Crossing: New Horizons.
2020-04-14 22:28:41 -04:00
Zach Hilman
e366b4ee1f
Merge pull request #3660 from bunnei/friend-blocked-users
...
service: friend: Stub IFriendService::GetBlockedUserListIds.
2020-04-14 16:59:46 -04:00
bunnei
fc35803f91
file_sys: patch_manager: Return early when there are no layers to apply.
2020-04-14 16:25:55 -04:00
bunnei
598740f1dd
service: friend: Stub IFriendService::GetBlockedUserListIds.
...
- This is safe to stub, as there should be no adverse consequences from reporting no blocked users.
2020-04-14 16:20:51 -04:00
bunnei
a9f866264d
Merge pull request #3606 from ReinUsesLisp/nvflinger
...
service/vi: Partially implement BufferQueue disconnect
2020-04-12 11:44:48 -04:00
Rodrigo Locatti
75e39f7f88
Merge pull request #3635 from FernandoS27/buffer-free
...
Buffer queue: Correct behavior of free buffer.
2020-04-11 17:58:15 -03:00
bunnei
51c6688e21
Merge pull request #3594 from ReinUsesLisp/vk-instance
...
yuzu: Drop SDL2 and Qt frontend Vulkan requirements
2020-04-10 20:06:55 -04:00
Fernando Sahmkow
486a42c45a
Buffer queue: Correct behavior of free buffer.
...
This corrects the behavior of free buffer after witnessing it in an
unrelated hardware test. I haven't found any games affected by it but in
name of better accuracy we'll correct such behavior.
2020-04-10 16:44:28 -04:00
ReinUsesLisp
8c0ba9c6fe
service/vi: Partially implement BufferQueue disconnect
2020-04-10 01:00:50 -03:00
Rodrigo Locatti
36f607217f
Merge pull request #3610 from FernandoS27/gpu-caches
...
Refactor all the GPU Caches to use VAddr for cache addressing
2020-04-09 17:59:21 -03:00
Fernando Sahmkow
913f42a3a7
Memory: Address Feedback.
2020-04-08 13:40:46 -04:00
ReinUsesLisp
bf1d66b7c0
yuzu: Drop SDL2 and Qt frontend Vulkan requirements
...
Create Vulkan instances and surfaces from the Vulkan backend.
2020-04-07 16:32:19 -03:00
enler
27f122c48c
file_sys: fix LayeredFS error when loading some games made with… ( #3602 )
...
* fix LayeredFS error when loading some games made with the Unity
2020-04-07 02:03:32 +02:00
Fernando Sahmkow
7fcd0fee6d
Buffer Cache: Use vAddr instead of physical memory.
2020-04-06 09:23:06 -04:00
Fernando Sahmkow
9c0f40a1f5
GPU: Setup Flush/Invalidate to use VAddr instead of CacheAddr
2020-04-06 09:21:46 -04:00
Fernando Sahmkow
9d8886b1a4
Merge pull request #3563 from bunnei/fix-ldr-memstate
...
services: ldr: Fix MemoryState for read/write regions of NROs.
2020-04-03 10:14:56 -04:00
Rodrigo Locatti
825a6e2615
Merge pull request #3552 from jroweboy/single-context
...
Refactor Context management (Fixes renderdoc on opengl issues)
2020-04-02 01:38:25 -03:00
Morph
224a75d839
capsrv: Split Capture services into individual files and stub GetAlbumContentsFileListForApplication ( #3571 )
...
* Organize capture services into individual files
* Stub GetAlbumContentsFileListForApplication
* Address feedback
2020-03-31 19:16:36 -04:00
bunnei
2c9879d2eb
Merge pull request #3568 from bunnei/time-calcspan
...
services: time: Implement CalculateSpanBetween.
2020-03-29 00:03:55 -04:00
bunnei
ffe1e2b5ec
Merge pull request #3562 from perillamint/vrsvc
...
am: Implement VR related APIs
2020-03-28 13:32:52 -04:00
bunnei
8a6a25e4b6
services: hid: Stub InitializeSevenSixAxisSensor.
...
- Used by Super Smash Bros. Ultimate v7.0.0.
2020-03-27 10:48:01 -04:00
bunnei
a60f34a850
services: time: Implement CalculateSpanBetween.
...
- Used by Super Smash Bros. Ultimate.
2020-03-27 10:42:13 -04:00
perillamint
a429644672
am: Implement VR related APIs
...
Implement (and stub) VR related APIs in AM sysmodule.
This fixes issue #2938
2020-03-27 18:22:28 +09:00
bunnei
5228bd0bb9
services: ldr: Fix MemoryState for read/write regions of NROs.
...
- Fixes #3541 , used by Final Fantasy VIII Remastered.
2020-03-26 15:52:59 -04:00
James Rowe
cf9c94d401
Address review and fix broken yuzu-tester build
2020-03-25 23:32:42 -06:00
James Rowe
282adfc70b
Frontend/GPU: Refactor context management
...
Changes the GraphicsContext to be managed by the GPU core. This
eliminates the need for the frontends to fool around with tricky
MakeCurrent/DoneCurrent calls that are dependent on the settings (such
as async gpu option).
This also refactors out the need to use QWidget::fromWindowContainer as
that caused issues with focus and input handling. Now we use a regular
QWidget and just access the native windowHandle() directly.
Another change is removing the debug tool setting in FrameMailbox.
Instead of trying to block the frontend until a new frame is ready, the
core will now take over presentation and draw directly to the window if
the renderer detects that its hooked by NSight or RenderDoc
Lastly, since it was in the way, I removed ScopeAcquireWindowContext and
replaced it with a simple subclass in GraphicsContext that achieves the
same result
2020-03-24 21:03:42 -06:00
bunnei
f8382c9d9d
Merge pull request #3524 from FearlessTobi/port-5106
...
Port citra-emu/citra#5106 : "gdbstub: Ensure gdbstub doesn't drop packets crucial to initialization"
2020-03-24 16:50:58 -04:00
FearlessTobi
4afebf26b6
sm/controller: Increase PointerBufferSize
...
This increases the PointerBufferSize as a lager one is required by some services.
This change is still not hw-accurate, but it is proven to work in Ryujinx.
Instead of using a hardcoded size, we should figure out the specific values for each service in the future. Some of them can be taken from Atmosphere: https://github.com/Atmosphere-NX/Atmosphere/search?q=PointerBufferSize .
2020-03-23 03:19:30 +01:00
bunnei
e731c4b991
Merge pull request #3477 from FearlessTobi/webapplet-shit
...
core/web_browser: Allow WebApplet to exit gracefully when an error occurs
2020-03-22 13:11:02 -04:00
FearlessTobi
977418c65b
core/web_browser: Allow WebApplet to exit gracefully when an error occurs
...
Currently, yuzu just freezes when an error occurs while Initializing the WebApplet.
From a user perspective, this obviously isn't great as the game just softlocks.
With this change, yuzu will call the Finalize method, so to the game it seems like as the user just exited the WebApplet normally.
This works around https://github.com/yuzu-emu/yuzu/issues/2852 .
2020-03-22 16:01:13 +01:00
Dan
06dea163fa
set: implement GetRegionCode
2020-03-19 10:37:42 +01:00
bunnei
bc681dc555
Merge pull request #3527 from FearlessTobi/output-mode
...
yuzu: Save sound output mode and set it to Stereo by default
2020-03-18 23:19:22 -04:00
ReinUsesLisp
ac7ee21331
time_zone_content_manager: Fix out of bounds read
...
There were cases where raw_data didn't contain enough
space to hold the zero terminator.
This was caught with -fsanitize=address.
2020-03-18 19:06:16 -03:00
FearlessTobi
cdeadd448b
yuzu: Save sound output mode and set it to Stereo by default
2020-03-17 19:03:00 +01:00
Gauvain "GovanifY" Roussel-Tarbouriech
eae2ed6b07
gdbstub: small logic bug fix with defer_start
2020-03-17 11:18:39 +01:00
Gauvain "GovanifY" Roussel-Tarbouriech
38036eb1c8
gdbstub: Ensure gdbstub doesn't drop packets crucial to initialization
2020-03-17 11:18:13 +01:00
bunnei
ca2d228c9d
Merge pull request #3497 from FernandoS27/microprogfile-extend
...
Small corrections and features to microprofile
2020-03-12 12:14:03 -04:00
Fernando Sahmkow
95b804ff05
NVFlinger: Do the microprofile Flip after processing a valid frame.
2020-03-12 10:52:44 -04:00
Vitor Kiguchi
e891ff9a0c
framebuffer_layout.h: drop the use of enum for screen dimensions.
...
+clang format
2020-03-11 14:22:28 -03:00
Rodrigo Locatti
22e825a3bc
Merge pull request #3301 from ReinUsesLisp/state-tracker
...
video_core: Remove gl_state and use a state tracker based on dirty flags
2020-03-09 18:34:37 -03:00
bunnei
84e9f9f395
Merge pull request #3452 from Morph1984/anisotropic-filtering
...
frontend/Graphics: Add "Advanced" graphics tab and experimental Anisotropic Filtering support
2020-03-07 22:28:35 -05:00
bunnei
dba112e510
core: hle: Implement separate A32/A64 SVC interfaces.
2020-03-02 21:52:03 -05:00
bunnei
c083ea7d78
core: Implement separate A32/A64 ARM interfaces.
2020-03-02 21:51:57 -05:00
bunnei
6fc485a607
core: loader: Remove check for 32-bit.
2020-03-02 21:43:15 -05:00
bunnei
64facb403e
core: dynarmic: Add CP15 from Citra.
2020-03-02 21:43:15 -05:00
bunnei
08c638f249
Merge pull request #3464 from FernandoS27/jit-fix
...
ARM_Interface: Cache the JITs instead of deleting/recreating.
2020-03-02 21:41:43 -05:00