Commit Graph

345 Commits

Author SHA1 Message Date
CasualPokePlayer 6f0ae7128a Add GetRawInputBuffer handling for RawKeyInput
Slightly speeds up windows keyboard handling as it reduces syscalls
2024-11-30 22:30:19 -08:00
CasualPokePlayer 411959e399 Add an IV for string encryption 2024-11-08 15:56:59 -08:00
CasualPokePlayer 6853439075 Improve string encryption 2024-11-05 00:59:03 -08:00
CasualPokePlayer c9bed01b13 Do basic "protection" against RA api tokens in the config 2024-11-03 23:39:42 -08:00
YoshiRulz 0bf59347be
Fix Windows 10 LTSC incorrectly being marked as EOL
clever hack, no?
2024-10-28 12:32:03 +10:00
YoshiRulz a8b8fb39ab
Clean up Windows version detection, now flagging Win11 21H2 2024-10-28 12:31:50 +10:00
YoshiRulz 9acdcdbcf7
Restore `BitmapBuffer.AsSpan` and add `AggressiveInlining`
fixes 9a5a75e5b and 7ab2ca6b8
2024-10-21 17:44:58 +10:00
Morilli 7ab2ca6b89 Add SequenceEqual extension to prevent linq usage
this speeds up the state history integrity check by about an order of magnitude
2024-10-20 14:00:11 +02:00
YoshiRulz 0a61b2754d
Revert refactor to `bool[].ToUByteBuffer()` extension too
see 37da7b3e1 and 30b2433a5
2024-10-07 04:19:32 +10:00
Morilli 30b2433a50 Revert changes to ToBoolBuffer
fixes the test, and apparently having non-0/1 bool values is sketchy anyways
2024-10-06 17:30:44 +02:00
Morilli 9f161bf40e Simplify Serializer array sync handling
val == null is impossible, so the check is completely useless.
2024-10-06 05:55:23 +02:00
Morilli 37da7b3e12 simplify some Util functions 2024-10-06 05:48:26 +02:00
YoshiRulz f99b8fa518
Use `PathEntryCollection.FirmwareAbsolutePath` extension 2024-10-04 23:39:32 +10:00
CasualPokePlayer 96b4de92af Only call GetDpiForWindow if it's actually available
apparently this is limited to windows 10 1607+
2024-09-23 03:08:19 -07:00
YoshiRulz 97a8e9011e
Add Analyzer to warn about decimal<=>float/double casts
fixes c882fe4ea and 32a66a955
2024-09-17 03:02:09 +10:00
YoshiRulz 21cdc86e8c
Enable MEN018 and fix noncompliance (except in Cores)
"Use Digit Separators" in integer literals
2024-09-15 23:19:07 +10:00
YoshiRulz 29c15adbbf
Promote BHI1007 to a build error, fixing some cases and muting others
"Don't use target-typed new for throw expressions"
where there was a type name checked-in before being removed,
I've restored it (they were all `Exception`)
2024-09-10 05:42:11 +10:00
Morilli d9069ea2cc Simplify PathExtensions.IsAbsolute
I've somewhat extensively tested this and this should be good. I've gotten to the point where even `Path.IsPathFullyQualified` returns wrong results (for "\?test"), so I'm not gonna look further.
2024-09-05 06:46:23 +02:00
YoshiRulz e9aba0557e
Use correct product name in `User-Agent` value 2024-09-02 05:31:19 +10:00
YoshiRulz cda23dd38e
Move `User-Agent` value to `VersionInfo` and ensure it's valid
fixes e22082c6b
2024-09-02 05:21:56 +10:00
YoshiRulz 5b5652d01e
Revert "Update VersionInfo.cs"
This reverts commit b9d8af8854.

Per https://github.com/TASEmulators/BizHawk/wiki/Release-checklist this
should be done immediately before release.
The reason for that is to avoid having several values for dev builds
between releases, a "stable API" if you will.
2024-08-31 22:50:44 +10:00
feos b9d8af8854
Update VersionInfo.cs 2024-08-31 09:46:54 +03:00
CasualPokePlayer 1ce8b855c7 remove app.config dpi stuff
mono does not like this (fixes #4002)
2024-08-30 17:11:22 -07:00
CasualPokePlayer d70daae5d6 Create Contains impl for arrays, fix device id blacklist detection 2024-08-30 16:10:54 -07:00
YoshiRulz 10ebea4dda
Ban `BitConverter.To*`
I was hoping not to mute this Analyzer for the Cores project, but there
were a couple usages of `BitConverter` there that were too far gone into
dumb territory to fix in this commit
2024-08-30 00:17:01 +10:00
Morilli a51ed03c02 move ReinterpretAsF32 to a common location and use it more
as well as its inverse
2024-08-29 06:17:40 +02:00
YoshiRulz 67f87b15c4
Ban runtime asserts without a message 2024-08-26 02:00:50 +10:00
YoshiRulz 7dfb624427
Remove `WorkingDictionary<K, V>` 2024-08-23 02:53:30 +10:00
YoshiRulz 34d71e90bc
Add more `GetValueOrDefault` overloads 2024-08-23 02:53:30 +10:00
YoshiRulz 633216be14
Remove `Bag<K, V>` 2024-08-23 02:48:03 +10:00
YoshiRulz 0f22ef2ad0
Revert "Change ToRawInt to ToRawUInt"
This reverts commit 542e043261.
2024-08-15 01:53:59 +10:00
YoshiRulz d7e9668d50
Add and use `Span`-from-`IntPtr` helper 2024-07-16 07:30:09 +10:00
YoshiRulz 1fdacd762a
Refactor `yield`ing methods to conventional LINQ 2024-07-12 14:42:11 +10:00
YoshiRulz e44810a725
Fix stacktraces for `RangeToExclusive` extension 2024-07-10 13:30:35 +10:00
YoshiRulz 5e5f5772c6
Enable Analyzer rules re: blank doc comments and fix noncompliance 2024-07-08 01:37:22 +10:00
YoshiRulz c93a0f9d1b
Enable SA1514 and fix noncompliance (except in Cores)
"Element documentation header should be preceded by blank line"
2024-07-07 12:12:08 +10:00
YoshiRulz a7e1c8fd09
Enable MA0060 and fix noncompliance (except in Cores)
"The value returned by Stream.Read/Stream.ReadAsync is not used"
2024-07-04 05:12:58 +10:00
YoshiRulz ccb69b18a9
Use a global import for `System.*` 2024-07-03 22:51:48 +10:00
YoshiRulz c0b676647b
Enable MA0104 and silence remaining cases
"Do not create a type with a name from the BCL"
2024-07-03 22:51:47 +10:00
YoshiRulz 0067dd4b0a
Extract helper method `HawkFile.PathContainsPipe` 2024-07-03 20:38:46 +10:00
YoshiRulz 43d16473d8
Backport `string.Contains(char)` and `string.EndsWith(char)` 2024-07-03 20:35:35 +10:00
Morilli 542e043261 Change ToRawInt to ToRawUInt
I firmly believe this has advantages. Don't ask me which.
Also move ReinterpretAsF32 to BizHawk.Common and use it more
2024-06-21 17:14:11 +02:00
YoshiRulz 3490b544b4
Have About dialog copy full Git commit hash to clipboard
and use full hash in GitHub web app URI
2024-06-20 04:01:58 +10:00
YoshiRulz e5dc04dc37
Move some version processing from About dialog to `VersionInfo` 2024-06-20 03:59:39 +10:00
Morilli 8abe276829 Give slightly more infformation in LoadOrThrow 2024-06-18 20:53:46 +02:00
YoshiRulz a8b0e74185
Maybe fix PowerShell script not running in CI
fixes c5f6dcd4e, reverts 68c160b96
2024-06-10 20:56:07 +10:00
YoshiRulz 68c160b96b
Skip trying to install Git hooks in CI 2024-06-09 22:29:46 +10:00
YoshiRulz c5f6dcd4e8
Make PowerShell strictly optional for Git hooks
...and remove auto-`dotnet tool restore`. If you don't have PowerShell
on `$PATH`/`%PATH%`, Git hooks will simply not be ran.
I still intend to migrate the rest of `/Dist` to PowerShell. Undecided
on unmanaged cores and wbox.
2024-06-09 12:51:32 +10:00
YoshiRulz cbf0728d4e
Scale back autorestore of dotnet tools to only be in `BizHawk.Common`
fixes f58b4640c
and to be fair this was the one place actually using a tool during the
build process, so it makes sense to keep them together I guess
2024-06-07 22:11:26 +10:00
YoshiRulz f58b4640c5
Have local dotnet tools restored with NuGet packages
reverts 8f7e61339
2024-06-07 22:03:16 +10:00