Billy Laws
e5264f7762
Address review comments
2020-08-15 10:21:41 +00:00
Billy Laws
ae131502c6
Fix reservation in GPU VMM
...
Rather than reserving a region so it *can* be used by MapAllocate
reserved actually prevents a region from being used by MapAllocate.
2020-08-15 10:21:41 +00:00
Billy Laws
ade8a711fb
Format code and misc cleanup
2020-08-15 10:21:41 +00:00
Billy Laws
fcae5d54da
Switch NvHostCtrlGpu to use QueryEvent
2020-08-15 10:21:41 +00:00
Billy Laws
cf60869fac
Stub INotificationService
2020-08-15 10:21:41 +00:00
Billy Laws
9d90cd877c
Stub IFile:Flush
2020-08-15 10:21:41 +00:00
Billy Laws
c69efed2ad
Implement GetAccumulatedSuspendedTickChangedEvent
2020-08-15 10:21:41 +00:00
Billy Laws
6c9e0a943c
Add some IApplicationFunctions calls used by newer games
2020-08-15 10:21:41 +00:00
Billy Laws
9e39cbaf7b
Implement GetBase in IProfile
2020-08-15 10:21:41 +00:00
Billy Laws
dc6da8303e
Add support for listing users in account services
2020-08-15 10:21:41 +00:00
Billy Laws
cae270a174
Use nvhost fences in IHOSBinderDriver
2020-08-15 10:21:41 +00:00
Billy Laws
94d1b40faf
Add an empty ISslContext service
2020-08-15 10:21:41 +00:00
Billy Laws
7503496bb0
Implement the basis of the Maxwell 3D engine together with a macro
...
interpreter.
The Maxwell 3D engine handles all 3D rendering, currently only non
rendering related methods are implemented. Macros are small pieces of
code that run on the GPU and allow methods to be quickly called for
things like instanced drawing.
2020-08-15 10:21:41 +00:00
Billy Laws
68d5a48df1
Implement syncpoints and nvhost events and fix an nvmap bug
...
These are used to allow the CPU to synchronise with the GPU as it
reaches specific points in its command stream.
Also fixes an nvmap bug where a struct was incorrect.
2020-08-15 10:21:41 +00:00
Billy Laws
ed3ff862f6
Extend GPU VMM with unmapping/remapping support + code cleanup
2020-08-15 10:21:41 +00:00
Billy Laws
cf468c20e2
Extend the GPFIFO implementation with support for engines and fix a few
...
bugs
An engine is effectively a HW block in the GPU, the main one is the
Maxwell 3D which is used for 3D graphics. Engines can be bound to
individual subchannels and then methods within them can be called
through pushbuffers.
The engine side of the GPFIO is also included, it currently does nothing
but will need to be extended in the future with semaphores.
2020-08-15 10:21:41 +00:00
Billy Laws
9fd0dd848b
Add support for processing GP Entries and the pushbuffers they contain
...
This is the backbone of the GPU, in the future this will be expanded to
support calling into engines.
2020-08-15 10:21:41 +00:00
Billy Laws
be70f8715d
Enable the use of C++20
2020-08-15 10:21:41 +00:00
Billy Laws
8dc9a10324
Implement the host side of host1x syncpoints
...
This will be extended in the future to support interfacing with the GPU.
2020-08-15 10:21:41 +00:00
Billy Laws
3c5cc33a34
Minor bug fixes in GPU VMM and add support for reading
2020-08-15 10:21:41 +00:00
Billy Laws
78712712c7
Fix a few bugs in CreateStrayLayer
2020-08-15 10:21:41 +00:00
Billy Laws
6edf89b538
Initial Savedata Implementation ( #75 )
...
* Rework VFS to support creating and writing files and introduce OsFileSystem
OsFileSystem abstracts a directory on the device using the filesystem API.
This also introduces GetEntryType and changes FileExists to use it.
* Implement the Horizon FileSystem APIs using our VFS framework
Horizon provides access to files through its IFileSystem class, we can
closely map this to our vfs::FileSystem class.
* Add support for creating application savedata
This implements basic savedata creation using the OsFileSystem API. The
data is stored in Skyline's private directory is stored in the same
format as yuzu.
2020-08-09 01:08:51 +05:30
Willi Ye
f72b81fcea
Make sure icons have a 1:1 ratio ( #80 )
...
* Make sure icons have a 1:1 ratio
* Use recyclerview padding to increase grid edge margins
* Fix race condition in searching roms
* Use notify insert for adapter
2020-08-08 23:31:21 +05:30
Willi Ye
392a1ac437
account: Remove unnecessary null termination
2020-07-21 18:29:45 +00:00
Willi Ye
1f282af87e
More code style aligning
...
* Null terminate nickname array and correct character limit in settings perference
2020-07-21 18:29:45 +00:00
Willi Ye
93da9f2826
Align code style with project
...
* Return correct error code for invalid user
* Always return first icon color
2020-07-21 18:29:45 +00:00
Willi Ye
ffb9e743dd
Add profile service to support custom usernames
2020-07-21 18:29:45 +00:00
Willi Ye
b86aac26d7
Align with code style and remove unnecessary code
2020-07-21 18:11:43 +00:00
Willi Ye
c3e54d1abf
Redesign cards in grid view
...
* Refactor some classes and clean up
* Refresh style on the fly
2020-07-21 18:11:43 +00:00
Billy Laws
b23779bda1
Implement a block based GPU virtual memory manager
...
The GPU has it's own seperate address space to the CPU. It is able to
address 40 bit addresses and accesses the system memory. A sorted vector
has been used to store blocks as insertions are not very frequent.
2020-07-17 16:21:34 +00:00
Billy Laws
80e7b82bad
Fix the LUT shift in the audio resampler
...
We do not need to shift back as we use a struct to hold the LUT entries.
2020-07-17 14:30:53 +00:00
Billy Laws
a3a2cb682e
Truncate service names to 8 chars maximum
2020-07-17 14:30:53 +00:00
Billy Laws
8684e20a29
Treat GetAudioDeviceServiceWithRevisionInfo as GetAudioDeviceService
2020-07-17 14:30:53 +00:00
Billy Laws
3734599615
Extend the IAudioController implementation with volume stubs
...
This is used by ARMS.
2020-07-17 14:30:53 +00:00
Billy Laws
4cd7502df2
Implement post 4.0.0 language list features in ISettingsServer
2020-07-17 14:30:53 +00:00
Billy Laws
d1c1fa214c
Stub (un)lockExit in ISelfController
2020-07-17 14:30:53 +00:00
Billy Laws
c2fadffe60
Extend time services with support for the steady clock
...
The steady clock has a fixed timepoint that can not change while an
application is running.
2020-07-17 14:30:53 +00:00
Billy Laws
e3313ae731
Use the device sample rate when creating an audio track in audren
2020-07-17 14:30:53 +00:00
Willi Ye
27d7839bcb
MainActivity: Fix snackbar overlapping FABs
2020-07-14 09:15:57 +00:00
Willi Ye
c69e72a12e
services: Add missing audio functions
...
* Those are needed to run playtone and audren from switch homebrew examples
2020-07-13 21:14:57 +01:00
Willi Ye
118b4d8a43
MainActivity: Fix shadows of FABs
...
* Don't cut them off
2020-07-09 20:19:55 +01:00
Billy Laws
6548d4914d
Implement IAudioDevice for accessing audio output properties
...
This is used by Super Mario Odyssey in its init routine.
2020-07-09 18:42:36 +00:00
Billy Laws
f71b54b901
Stub SetRestartMessageEnabled in ISelfController
...
This is used by Super Mario Odyssey.
2020-07-09 18:42:36 +00:00
Billy Laws
2b4adee213
Stub gameplay recording and save data checking functions
...
Gameplay recording does not need to be emulated and EnsureSaveData isn't
necessary for proper save data support.
2020-07-09 18:42:36 +00:00
Billy Laws
2e60b5e60d
Stub play reporting services
2020-07-09 18:42:36 +00:00
Billy Laws
378e494d82
Add an empty ssl service implementation
...
This stubs a single function that is needed for SMO's init.
2020-07-09 18:42:36 +00:00
Billy Laws
a2c6a2a4ff
Add a base socket (bsd) services implementation
...
This stubs enough to pass SMO's socket init.
2020-07-09 18:42:36 +00:00
Billy Laws
2aefb4ae84
Implement network interface services
...
nifm:u is used by applications to enable a connection to the network.
2020-07-09 18:42:36 +00:00
Billy Laws
7102fa910e
Implement nfp services
2020-07-09 18:42:36 +00:00
Billy Laws
4cf7f9288e
Add an empty friend service implementation
...
This is used to access a users friends. It is used by Super Mario
Odyssey.
2020-07-09 18:42:36 +00:00