◱ PixelyIon
1f48fdd4a5
Fix Thread Insertion Optimization + Revert Per-Thread Scheduler Conditions
2021-03-05 14:55:34 +05:30
◱ PixelyIon
d5d133372f
Fix Clean Exiting + Optimize Core Queues + Optimize Thread Insertion + Implement HID SendVibrationValue
2021-03-05 14:55:34 +05:30
◱ PixelyIon
98b1fd9056
Optimize Scheduler/IPC/HID + Fix Various Bugs
...
* Optimize Scheduler With Per-Thread Scheduler Conditions
* Optimize IPC by yielding
* Optimize HID Vibration
* Fix Priority Inheritance
* Fix `KThread` Start/Kill/Signal Races
* Fix `YieldPending` Races in `StartThread` & `SvcHandler`
* Fix POSIX Time -> NN CalendarTime Conversion
* Fix HID `TouchScreen`/`NPad` Activation
2021-03-05 14:55:34 +05:30
◱ PixelyIon
ef52e22cef
Improve Synchronization SVCs + Fix TLS Page Allocation Race + Fix KProcess::GetHandle<KObject>
2021-03-05 14:55:34 +05:30
◱ PixelyIon
ebadc1d1e1
Generate Stack Traces + More Robust Terminate Handler + Exit Process on Signal in Guest
2021-03-05 14:55:34 +05:30
◱ PixelyIon
14dbb5305a
Fix Priority Queue + Cooperative Yielding + Conditional Variable Timeouts
2021-03-05 14:55:34 +05:30
◱ PixelyIon
33bbfb9fb7
Implement Conditional Variables
2021-03-05 14:55:34 +05:30
◱ PixelyIon
7079f11add
Implement PI-Mutexes + Optimize InsertThread
2021-03-05 14:55:34 +05:30
◱ PixelyIon
7ba7cd2394
Support Priority & Affinity Mask Changes
2021-03-05 14:55:34 +05:30
◱ PixelyIon
f41bcd1e22
Implement Preemptive Scheduling
2021-03-05 14:55:34 +05:30
◱ PixelyIon
cf000f5750
Implement Cooperative Scheduling With Load Balancing
2021-03-05 14:55:34 +05:30
◱ PixelyIon
8564edcb16
Address CR Comments #2
2020-11-23 11:44:43 +05:30
◱ PixelyIon
fbf9f06244
Address CR Comments + Fix Clock Rescaling
2020-11-22 23:56:17 +05:30
◱ PixelyIon
a3dd759a1c
Fix Circular Queue Destructor + Memory Infos + Improve Priority Documentation
2020-11-22 23:56:17 +05:30
Billy Laws
7167393e3c
Only initialise maxEntry for active input devices
...
This caused the menus in Sonic Mania to be nonfunctional, futhermore,
default init is not ran for the input structs so the default max
definition in CommonHeader never actually applied.
2020-11-22 23:56:17 +05:30
◱ PixelyIon
bc5c094860
Fix CircularQueue
+ NPDM ACI0 & Kernel Capability Parsing
2020-11-22 23:56:17 +05:30
◱ PixelyIon
a5927c5c7b
Fix Native-Initiated Exiting
2020-11-22 23:56:17 +05:30
◱ PixelyIon
d155e9cd71
Complete Exceptional Signal Handler Implementation + Fix More Destruction Behavior
2020-11-22 23:56:17 +05:30
Billy Laws
8bf08ed66f
Fix CircularQueue and improve debug logging + exefs loading
...
CircularQueue was looping around too early resulting in the wrong
pushbuffers being used. The debug logging is useful for interpreting the
GPU method call logs.
Exefs loading was changed to check if an NSO exists before trying to
read it, preventing exceptions that get annoying while debugging.
2020-11-22 23:56:17 +05:30
Billy Laws
c161ef0cac
Various accuracy improvements in services
...
* 'Fix' memory accounting to not measure reserved regions
* Fix some copy bugs introduced by switch to span
* Correct remap the behaviour of Modify so it actually works
2020-11-22 23:56:17 +05:30
Billy Laws
c7e5202042
Rework GPU VMM variable naming
2020-11-22 23:56:17 +05:30
Billy Laws
4c9d453008
Update formatter config for new AS and reformat
2020-11-22 23:56:17 +05:30
◱ PixelyIon
668f623256
Implement Exceptional Signal Handler + Fix Destruction Behavior
...
An exceptional signal handler allows us to convert an OS signal into a C++ exception, this allows us to alleviate a lot of crashes that would otherwise occur from signals being thrown during execution of games and be able to handle them gracefully.
2020-11-22 23:56:17 +05:30
◱ PixelyIon
3cde568c51
Run Guest on Main Emulator Thread + Remove Mutex/GroupMutex + Introduce PresentationEngine
2020-11-22 23:56:17 +05:30
◱ PixelyIon
779884edcf
Introduce TID to Logger + Fix VMM Bug + Fix NSO Backtrace + Improve Logger
2020-11-22 23:56:17 +05:30
Billy Laws
39f0345ac7
Fix bugs introduced by refactoring
...
GPU VMM was mistakenly checking the alignment of the PA rather than the
VA and NvMap::Free was not accounting for the handle index starting from
one.
2020-11-22 23:56:17 +05:30
◱ PixelyIon
c65c91e1bc
Implement NPDM, Core Mask SVCs + Fix VMM bug + Introduce Verbose Log Level
2020-11-22 23:56:17 +05:30
◱ PixelyIon
324381908b
Implement SvcMap/UnmapPhysicalMemory + Fix W-Register Writing + Improve Accuracy of SvcGetInfo
2020-11-22 23:56:17 +05:30
◱ PixelyIon
657beea070
JVM Auto-Attach + Fix Thread Exiting + Fix Thread Signal Handler
2020-11-22 23:56:17 +05:30
◱ PixelyIon
6f2cd41470
Move .patch to start of executable (Pre-Patching)
2020-11-22 23:56:17 +05:30
◱ PixelyIon
369bd469f6
Dynamic Guest Memory Base Allocation
2020-11-22 23:56:17 +05:30
◱ PixelyIon
cffbfc8034
Skip Saving Callee-Saved Registers + Fix GetMemoryObject
2020-11-22 23:56:17 +05:30
Billy Laws
31efb5e930
Correct an NSO loader bug and use the correct address space extents
2020-11-22 23:56:17 +05:30
Billy Laws
17feb68eb5
Fix audren voice sample copying
2020-11-22 23:56:17 +05:30
◱ PixelyIon
745ea19f42
Use u64
s for FmtCast
+ Remove Functional Casts + Fix VMM Bugs
2020-11-22 23:56:17 +05:30
◱ PixelyIon
1db76dee1e
NCE3: In-Process Guest Execution
2020-11-22 23:56:17 +05:30
◱ PixelyIon
90127740f0
Rework NCE/KThread/KProcess + Remove Guest Process
2020-11-22 23:56:17 +05:30
◱ PixelyIon
878cb24389
Make fmt::ptr
implicit for raw pointers + Update Submodules
2020-11-22 23:56:17 +05:30
◱ PixelyIon
02f3e37c4f
Remove KProcess Memory Functions
2020-11-22 23:56:17 +05:30
◱ PixelyIon
60e82e6af0
Rework VMM + Adapt KMemory Objects to be in-process
...
Note: This commit isn't functional on it's own, it will require the rest of NCE3 to work
2020-11-22 23:56:17 +05:30
Willi Ye
7b13f2d387
Add visibility toggle for osc
2020-11-12 22:19:55 +05:30
Willi Ye
f479aeb4ac
Add comments
2020-11-12 22:19:55 +05:30
Willi Ye
7526a985fb
Use property delegate to handle preferences
...
* Add option to disable joystick recentering
2020-11-12 22:19:55 +05:30
Willi Ye
5c4aa95da6
Add on screen controls layout edit settings
2020-11-12 22:19:55 +05:30
Willi Ye
22140defae
Rewrite adapter to handle any layout
2020-11-12 22:19:55 +05:30
Willi Ye
e023dbbf0a
Add joystick press and general clean up
2020-11-12 22:19:55 +05:30
Willi Ye
3057e4b29a
Add on screen controls
...
* Fix missing default constructor for dialog fragments
2020-11-12 22:19:55 +05:30
Billy Laws
85d5dd3619
Extend NvServices and implement IDirectory ( #107 )
...
* Fix alignment handling in NvHostAsGpu::AllocSpace
* Implement Ioctl{2,3} ioctls
These were added in HOS 3.0.0 in order to ease handling ioctl buffers.
* Introduce support for GPU address space remapping
* Fix nvdrv and am service bugs
Syncpoints are supposed to be allocated from ID 1, they were allocated
at 0 before. The ioctl functions were also missing from the service map
* Fix friend:u service name
* Stub NVGPU_IOCTL_CHANNEL_SET_TIMESLICE
* Stub IManagerForApplication::CheckAvailability
* Add OsFileSystem Directory support and add a size field to directory entries
The size field will be needed by the incoming HOS IDirectory support.
* Implement support for IDirectory
This is used by applications to list the contents of a directory.
* Address feedback
2020-11-03 15:10:42 +05:30
◱ PixelyIon
7ad86ec46f
Improve span::as_string
and other minor fixes
2020-10-02 15:28:48 +00:00
◱ PixelyIon
97ac45d83b
Update Logger to use NDK Logger APIs + Improve Backing API + Fix FDSAN issues
2020-10-02 15:28:48 +00:00