Commit Graph

127 Commits

Author SHA1 Message Date
YoshiRulz 65f5aecfa6
Fix warnings in external .NET projects 2022-09-30 08:51:53 +10:00
YoshiRulz 158c897702
Use `Google.FlatBuffers` NuGet package and check in new Nyma codegen 2022-09-30 05:33:18 +10:00
YoshiRulz d58a4a07f5
Update `PcxFileTypePlugin.HawkQuantizer` project file to match others 2022-08-19 17:02:27 +10:00
YoshiRulz a5652ee3bc
Backport `IEnumerable.Order`/`OrderDescending` shorthand
at time of writing, in .NET 7 preview
https://github.com/dotnet/runtime/pull/70525
2022-08-13 02:18:26 +10:00
CasualPokePlayer 32e8afcedc
Implement hardware accelerated CRC32 and SHA1, using them if possible (#3348)
* Implement hardware accelerated CRC32 and SHA1, use them if possible.
CRC32's generic function is also replaced with zlib's as it is much more performant than our implementation
Full hash of a ~731MB disc took only ~369 ms with this, and the generic CRC32 isn't so far behind at ~659 ms
SHA1 should perform 4x faster if the user's CPU supports the SHA instructions.

Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
Co-authored-by: Morilli <35152647+Morilli@users.noreply.github.com>
2022-08-09 23:30:17 -07:00
YoshiRulz 140e340a8d
Add Analyzer rule to warn of `FirstOrDefault` on list of structs 2022-07-28 03:06:01 +10:00
YoshiRulz a2fef59fe1
Add Analyzer rule to prohibit `typeof(T).ToString()` 2022-07-22 03:51:43 +10:00
YoshiRulz f3f90a4cd5
Add Analyzer rules to prohibit `this.GetType()`
seriously Meziantou is a godsend
2022-07-22 03:51:42 +10:00
YoshiRulz dcc8957be3
Fast-fail Analyzer properly, fix typo
thanks to https://www.meziantou.net/working-with-types-in-a-roslyn-analyzer.htm
2022-07-22 03:51:36 +10:00
YoshiRulz 3fddcdb2c5
Add Analyzer rule to enforce throwing in `[FeatureNotImplemented]` 2022-07-15 22:22:28 +10:00
YoshiRulz 26e02033f2
Do the analysis for BHI1005 properly 2022-07-15 22:22:28 +10:00
YoshiRulz 4f98733c29
Add Analyzer to enforce exception type for default switch branches 2022-07-14 23:46:34 +10:00
YoshiRulz 395aa0755b
Add `BizHawk.Analyzer` project 2022-07-14 04:26:27 +10:00
YoshiRulz 0a4bbce3f2
Some additions to ReflectionCache source generator 2021-12-03 16:36:03 +10:00
YoshiRulz 182699b967
Clean up ReflectionCache source generator 2021-11-28 03:33:34 +10:00
YoshiRulz 4f7a641453
Add missing $ before string in generated ReflectionCache source 2021-07-27 21:10:11 +10:00
YoshiRulz 652b38d04c
Check-in ReflectionCache assembly instead of including in build 2021-04-14 10:44:46 +10:00
YoshiRulz 65d5e3f7d5
Move NymaTypes to separate project, fiddling w/ project structure 2021-04-09 17:49:07 +10:00
YoshiRulz 55bf1d5f56
Reinstate assembly version check
made possible by #2697
2021-04-04 12:41:01 +10:00
YoshiRulz f204f4e367
Use a Source Generator for ReflectionCache classes 2021-04-04 12:41:01 +10:00
YoshiRulz e24c4c3971
Move CDFS (iso-parser) to new external project, update upstream info 2021-01-02 17:34:13 +10:00
YoshiRulz b9b1e2d237
Move Quantize to new external project, update upstream info 2020-12-23 16:37:47 +10:00
YoshiRulz 0bdd1b6d64
Add libdarm submodule and build script 2020-09-21 01:37:27 +10:00
YoshiRulz bffd8e4df3
Add Unix build script for FlatBuffers.Core 2020-05-30 17:48:10 +10:00
YoshiRulz 10e7cb0f34
Use pre-built assembly for FlatBuffers.Core
fixes 4be701e2a
2020-05-30 15:54:06 +10:00
YoshiRulz b56e229a45
Target .NET Standard where possible, restore Virtu TFM
fixes 5a0992c2b
2020-05-30 15:53:20 +10:00
nattthebear de25b53fe2 Use google flatbuffers for some waterbox core communication
Nyma cores have to move some big complex structs on init and it's annoying and error prone.  This solution is not fast, but these are one time transfers anyway, and it does keep code size and saved size down.  Architecture yay.
2020-05-29 18:03:01 -04:00