Commit Graph

9920 Commits

Author SHA1 Message Date
3f3e4efb30 Merge pull request #10806 from liamwhite/worst-fs-implementation-ever
vfs_real: misc optimizations
2023-06-22 21:46:50 -07:00
1586f1c0b1 general: remove atomic signal and wait 2023-06-22 09:25:23 -04:00
5da70f7197 Remove memory allocations in some hot paths 2023-06-22 08:05:10 +01:00
e3122c5b46 Merge pull request #10086 from Morph1984/coretiming-ng-1
core_timing: Use CNTPCT as the guest CPU tick
2023-06-21 21:12:46 -07:00
8cb6b33809 Merge pull request #10841 from liamwhite/math-is-hard
vfs_concat: fix offset calculation when not aligned to file boundary
2023-06-21 21:07:08 -07:00
84d43489c5 input_common: Implement native mifare support 2023-06-21 17:54:58 -06:00
ae1a8a7dc7 time_zone_manager: Add null terminator
We aren't null-terminating this string after the copy, and we need to.
2023-06-20 15:54:28 -04:00
fd5d7947f6 time_zone_manager: Stop on comma
This is a deviation from the reference time zone implementation. The
actual code will set a pointer to the time zone name here, but for us we
have a limited number of characters to work with, and the name of the
time zone here could be larger than 8 characters.

We can make the assumption that time zone names greater than five
characters in length include a comma that denotes more data. Nintendo
just truncates that data for the name, so we can do the same.

time_zone_manager: Check for length of array

Just to be double sure that we never break past the array length,
directly compare against it.
2023-06-20 15:54:05 -04:00
e5f1b22e16 vfs_concat: verify short read 2023-06-19 09:47:05 -04:00
b0beca52a3 vfs_concat: fix offset calculation when not aligned to file boundary 2023-06-18 22:21:29 -04:00
6e293be20b Merge pull request #10797 from lat9nq/tzdb-patch
time: Various time zone fixes
2023-06-17 23:47:16 -07:00
b99c4dd568 time_zone_service: Always write time zone rule data
Switch firmware will initialize this data even if the given parameters
are invalid. We should do the same.
2023-06-17 20:53:39 -04:00
e34e1b1c95 k_thread: Use a mutex and cond_var to sync bool
std::atomic<bool> is broken on MinGW and causes deadlocks there.
Use a normal cond var in its stead.
2023-06-17 15:25:36 -04:00
a1adcc31d3 Merge pull request #10731 from german77/misc_fixes
service: nfc: Accuracy fixes
2023-06-16 18:18:24 -04:00
94e7cb05da vfs_real: ensure size cache is reset on write 2023-06-16 16:43:14 -04:00
bf47f777b1 patch_manager: remove unnecessary GetSize calls 2023-06-16 16:29:10 -04:00
734242c5bc vfs_real: misc optimizations 2023-06-16 16:29:06 -04:00
8d8f850bd6 time_zone_manager: Compare to the correct boolean
Reference implementation does not compare the booleans as we had them.
Use the correct ones as in the reference.

Also adds an assert. I have been made aware of a crash here and am
not able to reproduce currently.
2023-06-15 23:05:41 -04:00
03e8d9aca7 nx_tzdb: Correct Antarctica spelling 2023-06-15 23:03:54 -04:00
ce0510913a Merge pull request #10729 from liamwhite/windows-is-a-meme
vfs_real: add file LRU cache for open file limits
2023-06-14 18:32:25 -07:00
61b4588517 service: nfc: Read tag protocol only for nfc backend 2023-06-14 18:16:23 -06:00
b1b13ddc6b service: nfc: Accuracy fixes 2023-06-14 18:08:35 -06:00
ed7c4af915 vfs_real: require file existence on open 2023-06-13 17:22:47 -04:00
dbbe237668 vfs_real: add simplified open file cache 2023-06-13 17:16:14 -04:00
698a3eda50 Merge pull request #10603 from lat9nq/tz-more-complete
core,common: Implement missing time zone data/computations
2023-06-13 13:28:45 -07:00
0e7eaaba5a vfs_real: lazily open files 2023-06-13 10:37:34 -04:00
f25236a4d6 vfs_real: add file LRU cache for open file limits 2023-06-13 10:37:34 -04:00
8506915208 core: decouple ARM interface from Dynarmic 2023-06-12 22:11:51 -04:00
a338de7850 android: Add update support 2023-06-11 23:33:50 -06:00
72d9dc9a3f android: Add proper homebrew check 2023-06-09 20:17:51 -04:00
b3e2c9f9f1 Merge pull request #10623 from german77/backup
service: nfc: Add backup support
2023-06-08 21:54:12 -04:00
6c34adb1de nvnflinger: allow locking framerate during video playback 2023-06-08 01:15:51 -04:00
3e6d81a008 nvdisp: Fix SingleCore frametime reporting 2023-06-07 22:04:02 -04:00
2e1e725443 core_timing: Fix SingleCore cycle timer 2023-06-07 21:44:42 -04:00
907507886d (wall, native)_clock: Add GetGPUTick
Allows us to directly calculate the GPU tick without double conversion to and from the host clock tick.
2023-06-07 21:44:42 -04:00
9dcc7bde8b time: Use compile time division for TimeSpanType conversion 2023-06-07 21:44:42 -04:00
8e56a84566 core_timing: Use CNTPCT as the guest CPU tick
Previously, we were mixing the raw CPU frequency and CNTFRQ.
The raw CPU frequency (1020 MHz) should've never been used as CNTPCT (whose frequency is CNTFRQ) is the only counter available.
2023-06-07 21:44:42 -04:00
bbd502f67a nvnflinger: Acquire lock prior to signaling the vsync variable 2023-06-07 21:44:42 -04:00
219bd90152 Merge pull request #10591 from keve1227/localized-game-icons
Localize game icons
2023-06-07 14:03:28 -04:00
107aa52cdb service: nfc: Add backup support 2023-06-06 17:06:21 -06:00
cb95d7fe1b Merge pull request #10508 from yuzu-emu/lime
Project Lime - yuzu Android Port
2023-06-05 21:43:43 -07:00
8f9afbcd91 tz_manager: Fix comparison to wrong integer 2023-06-05 15:15:23 -04:00
3218313c22 tz_manager: Implement missing transition times
time_zone_manager: Use s64 storage
2023-06-05 15:15:23 -04:00
78a47f1ee8 tz_manager: Warn on unimplemented code 2023-06-05 15:15:23 -04:00
dea61f5d00 tz_manager: Fix character offset not advancing 2023-06-05 15:15:23 -04:00
63c51abe42 tz_manager: Fix off-by-one error 2023-06-05 15:15:23 -04:00
84642bdd3f time_zone_binary: Add zoneinfo data
Adds the basic time zone data for the system archive.

time_zone_binary: Implement full system archive

time_zone_binary: Remove unneeded template

tz_binary: Make GenerateFiles static
2023-06-05 15:15:23 -04:00
a40e0fdf9e time: Implement missing services
Implements GetTotalLocationNameCount LoadLocationNameList and
GetTimeZoneRuleVersion.

tz-manager: Fix sign issue
2023-06-05 15:15:11 -04:00
8d52dc163a time_zone_manager: Implement go_ahead/go_back 2023-06-05 15:15:11 -04:00
5d9dd88387 tz_content_manager: Try the system time zone first
If we can't find the normal time zone string, try searching for the
closest one.
2023-06-05 15:15:11 -04:00