Zach Hilman
94afffe9e5
pl_u: Use OSS system archives if real archives don't exist
2019-09-21 21:50:41 -04:00
David
a1b8e5d09a
Merge pull request #2612 from DarkLordZach/prepo-new
...
prepo: Implement New, System, and Non-User variants of SaveReport
2019-09-22 11:49:36 +10:00
Zach Hilman
682174b112
dmnt_cheat_vm: Make Cheat VM compliant to code style
2019-09-21 21:45:05 -04:00
Zach Hilman
3e729c13cc
core: Initialize cheats after load to avoid VMManager crash
...
This used to occur due to the VMManager being nullptr at the time cheats were registered (during load, but before it was done). This is bypassed by not accessing the VMManager for offset data until load is complete,
2019-09-21 21:45:05 -04:00
Zach Hilman
37850eeee5
core: Update RegisterCheatList for new VM
2019-09-21 21:45:05 -04:00
Zach Hilman
a0055192fe
patch_manager: Update cheat parsing for new VM
2019-09-21 21:45:05 -04:00
Zach Hilman
c6becfc9f5
nso: Pass build ID directly
...
As opposed to converting to string and then back to hex array
2019-09-21 21:44:22 -04:00
Zach Hilman
7d41c1f523
cheat_engine: Move to memory and strip VM
...
This is to go with the Atmosphere VM port, now it just contains the callbacks needed for the interface between DmntCheatVm and yuzu, along with the cheat parsers.
2019-09-21 21:44:22 -04:00
Zach Hilman
12aa127df3
memory: Port Atmosphere's DmntCheatVm
...
This was done because the current VM contained many inaccuracies and this also allows cheats to have identical behavior between hardware and yuzu.
2019-09-21 21:44:22 -04:00
Zach Hilman
8b857fc7c2
system_archive: Synthesize shared fonts system archives
2019-09-21 19:21:58 -04:00
Zach Hilman
ae9604faba
pl_u: Expose method to encrypt TTF to BFTTF
2019-09-21 19:21:58 -04:00
Zach Hilman
361a8fa318
externals: Move OSS font data to file_sys in core
2019-09-21 19:21:22 -04:00
Zach Hilman
8dd2e91427
prepo: Remove system global accessors
2019-09-21 19:17:45 -04:00
Zach Hilman
daf9cd9358
prepo: Implement SaveReport New and System variants
2019-09-21 19:17:08 -04:00
Zach Hilman
787b191abf
reporter: Differentiate between Old, New, and System play reports
2019-09-21 19:17:08 -04:00
Zach Hilman
038bcec111
configure_debug: Move reporting option to logging
2019-09-21 18:43:20 -04:00
Zach Hilman
a49169e819
filesystem: Add const qualification to various accessors
2019-09-21 16:50:39 -04:00
Zach Hilman
c182688ad6
core: Store FileSystemController in core
2019-09-21 16:50:39 -04:00
Zach Hilman
2590b5a9ea
settings: Add options for managing gamecard emulation
2019-09-21 16:43:10 -04:00
Zach Hilman
918119ae1b
settings: Add options for setting storage sizes
2019-09-21 16:43:10 -04:00
Zach Hilman
c6ff4a6f4d
yuzu: Port old usages of Filesystem namespace to FilesystemController
2019-09-21 16:43:10 -04:00
Zach Hilman
faf628ad8d
settings: Update LogSettings to show NAND/SDMC paths from FileUtil
2019-09-21 16:43:10 -04:00
Zach Hilman
ccaafaccfc
card_image: Add accessors for gamecard certificate
...
Used by fsp-srv/IDeviceOperator
2019-09-21 16:43:10 -04:00
Zach Hilman
77f9ecd32b
card_image: Add functions to query gamecard update partition
...
Includes version and meta title ID, used by fsp-srv/IDeviceOperator
2019-09-21 16:43:10 -04:00
Zach Hilman
e018a48460
content_archive: Add accessors for Rights ID and SDK Version
2019-09-21 16:43:10 -04:00
Zach Hilman
b4164d295b
partition_data_manager: Add accessor for decrypted PRODINFO partition
2019-09-21 16:43:10 -04:00
Zach Hilman
4b91057688
services: Pass FileSystemController as reference to services that need it
2019-09-21 16:43:10 -04:00
Zach Hilman
1b04b72653
am: Unstub IApplicationFunctions EnsureSaveData (20)
...
Creates a default save data for the application given a user ID.
2019-09-21 16:43:10 -04:00
Zach Hilman
43af31836e
filesystem: Pass Size Getter functions to IFileSystem for sizes
2019-09-21 16:43:10 -04:00
Zach Hilman
721a92775d
sdmc_factory: Add SD Card size getters
2019-09-21 16:43:10 -04:00
Zach Hilman
e47b57a90f
bis_factory: Add getters for NAND partition sizes
2019-09-21 16:43:10 -04:00
Zach Hilman
8abbc619a1
filesystem: Add FileSystemController to deglobalize FS services
2019-09-21 16:43:10 -04:00
Zach Hilman
0a8e540681
submisson_package: Fix edge case with improperly sized filenames
...
Prevents a crash if the filename is less than 9 characters long.
2019-09-21 16:43:10 -04:00
Zach Hilman
08c0783d34
sdmc_factory: Add accessor for SDMC Album directory
2019-09-21 16:43:10 -04:00
Zach Hilman
0084cceb20
sdmc_factory: Add accessor for SDMC PlaceholderCache
2019-09-21 16:43:10 -04:00
Zach Hilman
02b36b0eb5
sdmc_factory: Add accessor for content directory
2019-09-21 16:43:10 -04:00
Zach Hilman
49c44e3fae
savedata_factory: Implement savedata creation and don't create dir on open
...
Matches hardware behavior and eliminates some nasty behavior we were doing that wasn't hw-accurate at all.
2019-09-21 16:43:10 -04:00
Zach Hilman
62d772eaed
patch_manager: Add short-circuit edge-case to GetPatchVersionNames
...
If title ID is 0, there are no add ons, prevents wasting time looking for them.
2019-09-21 16:43:10 -04:00
Zach Hilman
06db4d94fd
patch_manager: Add error checking to load dir to prevent crashes
...
Prevents a crash if the load dir would be nullptr, instead logs an error and returns appropriately.
2019-09-21 16:43:10 -04:00
Zach Hilman
9d9fc8a675
registered_cache: Process *.cnmt.nca files
...
Needed to use the RegisteredCache/PlaceholderCache on gamecards.
2019-09-21 16:43:10 -04:00
Zach Hilman
8500ca797f
registered_cache: Implement PlaceholderCache to manage placeholder and installing content
2019-09-21 16:43:10 -04:00
Zach Hilman
256a50ad15
bis_factory: Fix mod loader edge-case with homebrew title IDs
...
Fixes a bug where homebrew that has a title ID with the update bit set can cause issues with the PatchManager
2019-09-21 16:43:10 -04:00
Zach Hilman
b71bda45ae
bis_factory: Add accessors for BIS placeholder caches
2019-09-21 16:43:10 -04:00
Zach Hilman
9bee885282
bis_factory: Add accessor for NAND Image Directory
2019-09-21 16:43:10 -04:00
Zach Hilman
4dae5a52a8
bis_factory: Add accessors for BIS content directories
2019-09-21 16:43:10 -04:00
Zach Hilman
3a1899d143
bis_factory: Add accessors for BIS partitions
2019-09-21 16:43:10 -04:00
David
183c445c30
Merge pull request #2806 from FearlessTobi/port-4882
...
Port citra-emu/citra#4882 : "Add frametime logging for tracking performance over time"
2019-09-21 20:09:55 +10:00
David
c7c8ffbc13
Merge pull request #2872 from FernandoS27/mem-gpu-opt
...
Core/Memory: Only FlushAndInvalidate GPU if the page is marked as RasterizerCachedMemory
2019-09-21 20:07:25 +10:00
David
25383b9ff2
Merge pull request #2576 from DarkLordZach/nsp-fix-1
...
nsp: Fix various errors with loading and processing of extracted NSPs
2019-09-21 20:05:24 +10:00
David Marcec
c2f966dbc1
Mark KickOffPb & SubmitGPFIFO as trace
...
These functions are not stubbed and are called fairly often. Due to the nature of how often they're called, we should keep them marked as LOG_TRACE instead of LOG_DEBUG or LOG_WARNING
2019-09-21 15:41:11 +10:00
David Marcec
0740758b25
disable clang-format temp
2019-09-20 10:25:12 +10:00
David Marcec
f9259c0383
Initial implementation of Ioctl2 & Ioctl3
...
Purpose of Ioctl2 and Ioctl3 is to prevent the passing of raw pointers through ioctls
2019-09-19 15:37:25 +10:00
Fernando Sahmkow
50259d7bdc
Core/Memory: Only FlushAndInvalidate GPU if the page is marked as RasterizerCachedMemory
...
This commit avoids Invalidating and Flushing the GPU if the page is not
marked as a RasterizerCache Page.
2019-09-18 22:47:22 -04:00
bunnei
ddfdeea3af
Merge pull request #2667 from DarkLordZach/profile-editor
...
acc: Implement IProfileEditor interface and 'Store'/'StoreWithImage' commands
2019-09-14 00:46:18 -04:00
FearlessTobi
d36a7a43c5
Address review comments
2019-09-10 12:57:45 +02:00
fearlessTobi
684b616f0d
Add frametime logging for tracking performance over time
...
Co-Authored-By: jroweboy <jroweboy@gmail.com>
2019-09-10 12:44:19 +02:00
David
07a0242535
Merge pull request #2847 from VelocityRa/nro-nacp-fix
...
nro/ui: Show "Developer" field in Properties
2019-09-09 16:45:28 +10:00
David
1487153e06
Merge pull request #2716 from lioncash/hle-global
...
service/am: Remove usages of global system accessors
2019-09-09 16:44:41 +10:00
David
6f7b349461
Merge pull request #2763 from lioncash/map-phys
...
kernel/vm_manager: Minor cleanup
2019-09-09 16:43:54 +10:00
Nick Renieris
bfc5bacecd
nro: Implement ReadControlData
...
With this, the "Developer" field in the Properties for homebrew is now populated.
Signed-off-by: Nick Renieris <velocityra@gmail.com>
2019-09-08 00:40:21 +03:00
David
14d8c1b594
Merge pull request #2418 from DarkLordZach/srv-es
...
es: Implement various ticket accessor commands from IEticketService
2019-09-05 12:13:14 +10:00
David
8795645d97
Merge pull request #2707 from DarkLordZach/oss-miimodel
...
system_archive: Add open-source reimplementation of MiiModel data
2019-09-05 10:56:32 +10:00
Lioncash
d1abe8e92a
service/am: Remove usages of global system accessors
...
Avoids the use of global accessors, removing the reliance on global
state. This also makes dependencies explicit in the interface, as
opposed to being hidden
2019-09-04 20:38:43 -04:00
Lioncash
f763e23083
kernel/vm_manager: Correct doxygen comment parameter tags for MapPhysicalMemory/UnmapPhysicalMemory
...
Corrects the parameter names within the doxygen comments so that they
resolve properly.
2019-09-04 19:58:55 -04:00
Lioncash
b0da7e4262
kernel/vm_manager: Move variables closer to usage spots in MapPhysicalMemory/UnmapPhysicalMemory
...
Narrows the scope of variables down to where they're only necessary.
2019-09-04 19:58:52 -04:00
David
d8e59a28ea
Merge pull request #2834 from Morph1984/audrenu_QueryAudioDeviceInputEvent
...
audren_u: Stub IAudioDevice::QueryAudioDeviceInputEvent
2019-09-05 09:51:50 +10:00
David
67bdd8ed58
Merge pull request #2836 from Morph1984/hid_vibration
...
hid: Implement PermitVibration and IsVibrationPermitted
2019-09-05 09:50:38 +10:00
David
0a4f0b6a5d
Merge pull request #2818 from MysticExile/fmt
...
externals: update fmt to 6.0.0
2019-09-05 09:50:17 +10:00
mailwl
a1d48b5f52
AM: Stub IApplicationFunctions::GetGpuErrorDetectedSystemEvent ( #2827 )
...
* AM: Implement IApplicationFunctions::GetGpuErrorDetectedSystemEvent
* Remove unneeded event clear
* Fix event name
2019-09-04 11:43:04 -04:00
bunnei
fe83ee102b
Merge pull request #2829 from Morph1984/audio
...
service/audio/audren_u: Stub IAudioDevice::GetAudioDeviceOutputVolume
2019-09-04 11:42:23 -04:00
Ethan
30448641f2
Fix clang-format
2019-09-04 16:53:29 +02:00
Morph1984
cd81194fc0
ditto
...
Co-Authored-By: David <25727384+ogniK5377@users.noreply.github.com>
2019-09-04 10:16:22 -04:00
Morph1984
ef98828d40
IsVibrationEnabled() as a const member func
2019-09-04 10:15:49 -04:00
Morph1984
d6969fa7d4
clang-format
2019-09-04 10:06:38 -04:00
Morph1984
ee35f7adf7
Update npad.h
2019-09-04 02:43:17 -04:00
Morph1984
5130b8a6a9
Update npad.cpp
2019-09-04 02:42:58 -04:00
Morph1984
1559477740
Update hid.h
2019-09-04 02:42:42 -04:00
Morph1984
a83eb90a78
Update hid.cpp
2019-09-04 02:42:22 -04:00
Morph1984
84815fa879
Add Kernel::EventPair audio_input_device_switch_event;
2019-09-03 23:50:56 -04:00
Morph1984
ec95c73a12
remove <f32>
...
We can remove this since its already a f32 value
2019-09-03 23:20:19 -04:00
Morph1984
1449ed9dbf
audren_u: Stub IAudioDevice::QueryAudioDeviceInputEvent
2019-09-03 23:13:32 -04:00
David
e1981b8b8d
Merge pull request #2708 from DarkLordZach/mii-db-source-crash
...
mii: Handle logging of unknown database source
2019-09-04 13:07:10 +10:00
Morph1984
58783b8a46
explicitly represent 1 as a float (1.0f instead of 1)
2019-09-03 23:06:32 -04:00
bunnei
19af91434e
Merge pull request #2793 from ReinUsesLisp/bgr565
...
renderer_opengl: Implement RGB565 framebuffer format
2019-09-03 22:36:32 -04:00
Morph1984
b1ca56bed2
Change u32 -> f32
...
Volume is a f32 value. (SwIPC describes it as a u32, but it is actually f32 as corroborated by switchbrew docs and SetAudioDeviceOutputVolume)
```cpp
const f32 volume = rp.Pop<f32>();
```
2019-09-03 22:30:20 -04:00
Morph1984
ba661c8d9a
service/audio/audren_u: Stub IAudioDevice::GetAudioDeviceOutputVolume
2019-09-03 16:05:33 -04:00
Lioncash
96cc9a9279
kernel/vm_manager: Correct behavior in failure case of UnmapPhysicalMemory()
...
If an unmapping operation fails, we shouldn't be decrementing the amount
of memory mapped and returning that the operation was successful. We
should actually be returning the error code in this case.
2019-08-29 19:29:43 -04:00
Lioncash
56c6f767ae
kernel/vm_manager: Reserve memory ahead of time for slow path in MergeAdjacentVMA
...
Avoids potentially expensive (depending on the size of the memory block)
allocations by reserving the necessary memory before performing both
insertions. This avoids scenarios where the second insert may cause a
reallocation to occur.
2019-08-29 19:29:43 -04:00
Lioncash
a43ee8d752
kernel/vm_manager: std::move shared_ptr instance in MergeAdjacentVMA
...
Avoids an unnecessary atomic reference count increment and decrement.
2019-08-29 19:28:58 -04:00
Lioncash
785c4946dd
kernel/vm_manager: Deduplicate iterator creation in MergeAdjacentVMA
...
Avoids needing to read the same long sequence of code in both code
paths. Also makes it slightly nicer to read and debug, as the locals
will be able to be shown in the debugger.
2019-08-29 19:28:57 -04:00
Lioncash
70485e690b
kernel/vm_manager: Simplify some std::vector constructor calls
...
Same behavior, one less magic constant to read.
2019-08-29 19:28:04 -04:00
Lioncash
3f695333cd
kernel/vm_manager: Simplify some assertion messages
...
Assertions already log out the function name, so there's no need to
manually include the function name in the assertion strings.
2019-08-29 19:26:42 -04:00
Ethan
5adbe66ae8
accommodate for fmt update
2019-08-29 21:34:51 +02:00
bunnei
b4a8cfbd00
Merge pull request #2748 from FernandoS27/align-memory
...
VM_Manager: Align allocated host physical memory to 256bytes
2019-08-21 12:10:10 -04:00
ReinUsesLisp
9a76e94b3d
gpu: Change optional<reference_wrapper<T>> to T* for FramebufferConfig
2019-08-21 01:55:25 -03:00
bunnei
ef584f1a3a
Merge pull request #2747 from lioncash/audio
...
service/audren_u: Unstub ListAudioDeviceName
2019-08-18 09:08:25 -04:00
bunnei
52f54c728d
Merge pull request #2592 from FernandoS27/sync1
...
Implement GPU Synchronization Mechanisms & Correct NVFlinger
2019-07-26 14:26:44 -04:00
Fernando Sahmkow
024b5fe91a
Kernel: Address Feedback
2019-07-19 11:28:57 -04:00
Fernando Sahmkow
9bede4eeed
VM_Manager: Align allocated memory to 256bytes
...
This commit ensures that all backing memory allocated for the Guest CPU
is aligned to 256 bytes. This due to how gpu memory works and the heavy
constraints it has in the alignment of physical memory.
2019-07-19 10:06:08 -04:00
Lioncash
16730c4c43
service/audren_u: Handle audio USB output revision queries in ListAudioDeviceName()
...
Audio devices use the supplied revision information in order to
determine if USB audio output is able to be supported. In this case, we
can only really handle using this revision information in
ListAudioDeviceName(), where it checks if USB audio output is supported
before supplying it as a device name.
A few other scenarios exist where the revision info is checked, such as:
- Early exiting from SetAudioDeviceOutputVolume if USB audio is
attempted to be set when that device is unsupported.
- Early exiting and returning 0.0f in GetAudioDeviceOutputVolume when
USB output volume is queried and it's an unsupported device.
- Falling back to AHUB headphones in GetActiveAudioDeviceName when the
device type is USB output, but is unsupported based off the revision
info.
In order for these changes to also be implemented, a few other changes
to the interface need to be made.
Given we now properly handle everything about ListAudioDeviceName(), we
no longer need to describe it as a stubbed function.
2019-07-19 07:55:27 -04:00