Commit Graph

3694 Commits

Author SHA1 Message Date
James Groom 5685befe14
Move `&&`/`||` to start of next line in Emulation.Cores project 2024-03-27 02:10:39 +00:00
Morilli e5582cd016 Use UtcNow instead of Now 2024-03-26 22:28:18 +01:00
Morilli 95381170d8 Add optimization for >>1k fps scenarios 2024-03-26 20:14:54 +01:00
Morilli cf45d41c85 Don't unnecessarily create and return a Dictionary from GetAxisValues 2024-03-26 19:23:50 +01:00
Morilli 032d1b85d6 -1 list allocation per frame yay 2024-03-26 19:20:54 +01:00
Morilli d498f8c3be Simplify logic in OverrideAdapter 2024-03-26 19:10:22 +01:00
Morilli 45159091e6 Optimize IsLoaded<T>
can we get rid of the other 3 functions maybe?
2024-03-26 18:32:32 +01:00
James Groom 3c2b01f34b
Replace some spaces used as indentation 2024-03-26 16:52:47 +00:00
James Groom 7b5f688590
Fix double enumeration in `InputRoll.SelectRow` 2024-03-26 01:11:07 +10:00
James Groom 85caed48cc
Fix movie importer crashing on files with unrecognised extentions 2024-03-22 17:00:43 +00:00
Sergio Martin 9c4a818423
Replace QuickNES core with QuickerNES (squashed PR #3839)
resolves #3848
2024-03-23 01:31:22 +10:00
James Groom 0857dd6771
Clean up equality implementation for `Cell` 2024-03-20 22:19:57 +00:00
James Groom 01ed94d167
Replace mutation w/ pre-init check for N64 C button column header hack
also fixes width not being recalculated
fixes fde16fa5a
2024-03-20 19:51:41 +00:00
James Groom 41cae2dd22
Remove unused props from `RollColumn` and `RollColumns` 2024-03-20 19:46:56 +00:00
James Groom c5a478a28a
Remove unused prop `Cell.CurrentText` 2024-03-20 19:34:45 +00:00
James Groom bbe7040554
Remove temporary no-crash-plz shims 2024-03-20 19:33:46 +00:00
James Groom a3aa67681f
Clean up debug serialisation of `Cell`
fixes 2a67cf93e
2024-03-20 19:31:34 +00:00
YoshiRulz 57439f9697 Reduce LINQ calls on `CellList` 2024-03-20 11:24:13 +00:00
James Groom 0f9f6f0e53 Drop import 2024-03-20 11:24:13 +00:00
Morilli ca0fb69570 Optimize operations with selected items 2024-03-20 11:24:13 +00:00
James Groom 2a67cf93ec Replace `SortedSet` with `SortedList<T>` in `InputRoll`
see 6d40c08c3
2024-03-20 11:24:13 +00:00
SkiHatDuckie 328d36d0ca
Refactor window scale menu, add 6x through 9x (squashed PR #3872)
resolves #3826
2024-03-20 09:48:15 +10:00
adelikat b6efbfe54b add hotkey to toggle the last used lua script 2024-03-19 11:10:15 -05:00
Morilli bfae8d0f1e reduce allocations in CalculatePointedCell 2024-03-16 13:26:53 +01:00
Morilli cad3699221 Don't triple-allocate in FrameToStringPadded 2024-03-15 18:31:46 +01:00
James Groom 2f6a507fdf
Simplify some logic in `InputRoll.{SelectCell,OnMouseDown}` 2024-03-15 12:10:20 +00:00
James Groom 967ce66e9e
Use helper prop in `InputRoll`, simplifying LINQ call 2024-03-15 12:01:58 +00:00
Morilli 0cbc65ba4e Improve Cell comparison 2024-03-14 21:59:25 +01:00
James Groom 86a4aa69ee
Fix double enumeration in `InputRoll.SelectRow` 2024-03-15 06:02:29 +10:00
James Groom ce6d032051
Fix logic in `Bk2Controller.SetFromMnemonic`
fixes fdf63900b
2024-03-14 04:15:56 +10:00
James Groom 8d892346d2
Fix crash when loading `.wch` into RAM Search 2024-03-13 23:42:25 +10:00
James Groom 0f8995eec7
Clean up conditionals in `TAStudio.TasView_QueryItemIcon`
fixes 17ed62b39
2024-03-12 15:35:44 +10:00
James Groom e55c6c2688
Avoid delegate wrapper in `ICollection.RemoveAll` extension hot path
see 6d40c08c3
2024-03-12 15:24:41 +10:00
James Groom 24bd99eb07
Refactor `HotkeyInfo.ResolveWithDefaults` 2024-03-12 15:22:07 +10:00
Morilli fdf63900b6 Reduce string allocations in SetFromMnemonic 2024-03-12 02:17:59 +01:00
Morilli 17ed62b39e Prevent unnecessary TasMovieRecord queries 2024-03-12 01:41:22 +01:00
Morilli 9a2de650d1 Reduce Cell allocation spam
Don't really like this change but it does help allocation count a lot. Perhaps Cell should just be a struct?
2024-03-12 00:04:29 +01:00
Morilli 6d40c08c3c fix #3675
This looks to just be better on .net framework...
2024-03-11 22:43:57 +01:00
CasualPokePlayer 5bf9d387b4 prevent various apis from being used while in an input/memory callback 2024-03-10 23:18:55 -07:00
CasualPokePlayer 38ef6028d7 correct buffer check condition 2024-03-10 15:25:01 -07:00
CasualPokePlayer 04fe0d7d04 fix crash with SDLResampler 2024-03-10 15:10:17 -07:00
CasualPokePlayer 03fa3fc19d get rid of this Flush call
isn't really needed
2024-03-10 15:03:33 -07:00
CasualPokePlayer d9a93c474a throw out the speex resampler, place in SDL's resampler to replace it
no more 2010 vc++ runtime requirement
2024-03-10 15:02:25 -07:00
Morilli 05abb3adfa Optimize IndexOfFrame function in TAStudio 2024-03-10 19:21:05 +01:00
Morilli 87197e0524 Optimize IsMarker checks in TAStudio 2024-03-10 18:57:08 +01:00
CasualPokePlayer d547ff3d57 update comment due to prev commit 2024-03-10 03:40:18 -07:00
CasualPokePlayer c85aee928f remove DInput dependency with RawKeyInput 2024-03-09 22:01:44 -08:00
CasualPokePlayer 90369fce13 encore: add lag detection 2024-03-08 20:25:25 -08:00
CasualPokePlayer 59176ca2d3 encore: fix aes_keys.txt / seeddb.bin not being properly picked up by the core 2024-03-08 19:12:54 -08:00
CasualPokePlayer 6dd0bb25e8 encore: remove async file io completely, fix savestate crashes due to AsyncWakeUpCallback serialization attempts 2024-03-08 17:29:40 -08:00
James Groom 69d29c39f5
Fix cheat editor resetting display type when changing size
and when choice is no longer valid, default to hex instead of unsigned
2024-03-08 21:42:20 +10:00
James Groom 2f758459dd
Add docs and unit tests for `IList.LowerBoundBinarySearch` extension
without d29da10e9, the final case in this test method would throw an exception
2024-03-08 11:22:44 +00:00
James Groom 49fa40f562
Rename newly-added `.props` file, improve MSTest output
fixes 6df491c9d
2024-03-08 10:50:57 +00:00
James Groom 5a6fcce981
Use new way of importing MSTest framework 2024-03-08 10:42:37 +00:00
James Groom 9e12480c3e
Bump MSTest and Magick.NET 2024-03-08 10:38:08 +00:00
James Groom 6df491c9d9
Dedup test project files and also mute style warnings in GambatteSuite 2024-03-08 10:33:53 +00:00
James Groom 8630ccdd41
Update list of known testrom failures from Gambatte suite 2024-03-08 10:30:12 +00:00
CasualPokePlayer d9cd9f4810 do various determinism fixes for encore 2024-03-07 22:31:16 -08:00
James Groom 729ca96517
Hopefully fix double BOM
thanks VS Code
2024-03-08 03:50:05 +00:00
James Groom 615c2eaf88 Leave comment in `FindIOSurfaceInfo`
fixes 7ee0e0afa
2024-03-08 13:42:47 +10:00
Morilli 7ee0e0afac Reduce allocations in FindIOSurfaceInfo 2024-03-08 02:22:56 +01:00
Morilli d29da10e91 Fix LowerBoundBinarySearch, fix lag check 2024-03-08 02:22:31 +01:00
Morilli b8e49413cf Remove unnecessary TasMovieRecord allocations 2024-03-07 23:52:18 +01:00
Morilli 674997b345 Optimize speed and allocations of TasMovieMarker.Previous[OrCurrent]
was quite a ridiculous amount of allocations due the amount of calls to this functions
2024-03-07 22:53:39 +01:00
James Groom 592eb34370
Update lists of known testrom failures (except Gambatte suite) 2024-03-07 06:55:43 +00:00
James Groom 1f70320ea8
Get testroms projects building again
fixes 8ae947fed, e87536ea8, e7f4ad822, 59fcdb04c, 72cc19266, d788e603f, and 86684b689
2024-03-07 06:54:16 +00:00
CasualPokePlayer 7c4f997f88 encore: add in some new settings, expose some other settings, rework upscaling management (more in line with how melonds is handled) 2024-03-06 21:08:57 -08:00
James Groom 07d1c41712
Fix typo
fixes 8c3f857ab
2024-03-06 17:39:38 +10:00
James Groom 8c3f857ab6
Fix cheat editor showing "0x" prefix when not hex type 2024-03-06 16:30:14 +10:00
CasualPokePlayer 5a55f04f1e -headless isn't a postfix for encore 2024-03-05 18:28:12 -08:00
CasualPokePlayer 1bbc54f29f add back encore submodule + build script + add windows build + a few more renamings 2024-03-05 16:13:51 -08:00
CasualPokePlayer 7cf8c968df rename all the things 2024-03-04 18:39:30 -08:00
CasualPokePlayer f02080b61b fix build 2024-03-04 17:13:51 -08:00
CasualPokePlayer 5304467855 update to nightly-2104 2024-03-04 17:06:40 -08:00
James Groom 3f58dba4f5
Use title case for this menu item 2024-02-25 06:42:51 +10:00
James Groom 4df850973f
Document invariant
see df4aa7974
2024-02-24 05:15:31 +10:00
Morilli df4aa7974b Optimize InputDisplayGenerator.Generate 2024-02-22 19:27:38 +01:00
YoshiRulz d31047ffc3 Use NuGet central package management 2024-02-14 16:24:31 +00:00
James Groom daf9ea7bb2
Check for FFmpeg when using DiscoHawk's bottom box
no download option for now
2024-02-14 16:23:11 +00:00
James Groom 3f2f9cc170
Copy error dialog code from DiscoHawk's top box to its bottom box 2024-02-14 16:21:34 +00:00
feos 54ef35d2e0 black text on white BG is how input roll is meant to look
if we ever support swapping the colors for a dark theme, bd3f919129 could be a useful refactor, but only allowing linux users to see input roll properly was wrong (because setting BG to Control color makes it look disabled)
2024-02-13 01:11:50 +03:00
CasualPokePlayer b34e713f1c update sqlite stuff, also swap it with Microsoft.Data.Sqlite.Core / SQLitePCLRaw.provider.e_sqlite3 and do a different hack to avoid pulling in native deps 2024-02-12 13:59:16 -08:00
James Groom 131bc65e8f
Bump .NET SDK to 8.x 2024-02-12 20:38:03 +00:00
CasualPokePlayer 17434f78cf init rtc before calling nyma init functions
mainly needed for saturnus
2024-02-09 18:37:34 -08:00
CasualPokePlayer 5fb7b486b3 dumb rcheevos saturn memory fix
yeah this is dumb
2024-02-08 23:48:53 -08:00
CasualPokePlayer 2c521fdc5a add ISaveRam explicitly
this is needed for new saveram interface to be picked up apparently
fixes 446fac3242
2024-02-08 23:36:12 -08:00
CasualPokePlayer 446fac3242 add in c# side code to actually use new saturnus saveram interface 2024-02-08 23:32:14 -08:00
CasualPokePlayer 5d54c09577 update saturn entries in firmware db
mainly don't consider other region bios files as "acceptable", mednafen policy is to reject the wrong region (see ss.bios_sanity handling)
2024-02-07 06:17:54 -08:00
James Groom 33f0b5ca32
Remove imports no longer used after recent changes 2024-02-06 11:10:05 +00:00
James Groom 33a71cf0e1
Replace `null` array w/ empty in `NESSyncSettings.OkBtn_Click` (fixes #3858)
fixes 103fb3832
2024-02-06 09:03:16 +10:00
James Groom 103fb38322
Clean up `NESSyncSettings.OkBtn_Click` (resolves #3856) 2024-02-01 15:11:52 +00:00
James Groom 484e1fee78
Clean up `NESSyncSettings.InitialWRamStatePattern` 2024-02-01 15:10:02 +00:00
James Groom 7e8950ea52
Clean up `BytesToHexString` 2024-02-01 15:04:36 +00:00
James Groom f3aae71da6
Expose PALRAM domain from NesHawk (resolves #3854) 2024-01-31 09:31:22 +00:00
CasualPokePlayer 2f11560b14 fix alternative keyboard layout handling for extended scancodes 2024-01-26 07:01:22 -08:00
James Groom acf368e67f
Rewrite Game Genie (GB) decoder 2024-01-21 15:01:20 +00:00
James Groom 2f9119834b
Add test cases for Game Genie (GB) decoder 2024-01-21 14:49:22 +00:00
James Groom 21706d8421
Fix typo
fixes f6a9dee46
2024-01-18 14:55:51 +10:00
James Groom f6a9dee467
Prevent an IooRE in *Action 52*
see https://github.com/TASEmulators/BizHawk/issues/2999#issuecomment-1895239013
2024-01-17 17:35:25 +10:00
CasualPokePlayer 62afd3c747 add missing member to this struct 2024-01-16 22:04:30 -08:00
CasualPokePlayer 1b7fe8e7fd misc cheevo stuff 2024-01-16 20:16:25 -08:00
CasualPokePlayer d03d076fa7 several rcheevo updates, mostly for 3DS stuff 2024-01-16 20:00:45 -08:00
CasualPokePlayer 67b535d0f8 remove dsi skip fw restriction c# side 2024-01-16 11:08:40 -08:00
CasualPokePlayer 8be0111e72 fix build 2023-12-31 18:02:49 -08:00
CasualPokePlayer d6fdf503b9 /s/RIM_KEY/RI_KEY
seems to be a dumb typo (docs have RI_KEY_* not RIM_KEY_*)
2023-12-31 06:00:48 -08:00
CasualPokePlayer 6330a703a1 fix Pause key not working with RAWINPUT 2023-12-31 05:44:50 -08:00
CasualPokePlayer 79d6bee75f this can be null 2023-12-30 16:40:25 -08:00
CasualPokePlayer f94bcb64b1 add back hawk sound when opening About box 2023-12-30 16:37:37 -08:00
CasualPokePlayer 51925e7cc9 make SDL2WavStream consume a generic Stream rather than passing in a file path
this now should make it functionally the same as a System.Media.SoundPlayer, letting us only doing disk access one time per wav file (and allows some embbed wav to be played)
2023-12-30 16:03:21 -08:00
CasualPokePlayer a38e854a6d add method to play wav files via ISoundOutput, use this instead of System.Media.SoundPlayer 2023-12-30 04:49:26 -08:00
CasualPokePlayer 94f6616e74 fix #1862, also rename front facing setting ("non-vi" makes no sense here) 2023-12-25 00:46:13 -08:00
CasualPokePlayer bc432de43a fix 7ceb6345e4
somehow mixed up files and put the wrong tmd in lol
2023-12-24 23:46:20 -08:00
CasualPokePlayer 7ceb6345e4 add missing TMD for USA California Super Sports, also remove unneeded data in TMDs 2023-12-24 19:05:20 -08:00
CasualPokePlayer ded668fe5a add PolySharp as explicit dep, do some BizHawk.Common .NET6 cleanups
PolySharp was already an implicit dep due to some transitive dep from Vortice. This causes some problems in the test project, although it seems it's specific to the test project setup / one of the test project deps exposing internal classes rather than actually the fault of PolySharp (enabling PolySharpExcludeTypeForwardedToDeclarations works around it)
PolySharp provides source generated internal IsExternalInit/Range/Index, allowing us to use init props and range/index operators, and since it's source generated and internal to each project, it should play nice with potential multi-targetting (keeping in mind the test project is an edge case that doesn't apply in general)
2023-12-22 14:26:24 -08:00
James Groom 3fb30a2ca7
Clean up some `AskSaveChanges` implementations 2023-12-22 04:48:49 +00:00
James Groom bd3f919129
Don't hardcode colours in InputRoll 2023-12-22 04:16:01 +00:00
James Groom cae739a826
Clean up peeking for Hex Editor's N64 Matrix view 2023-12-22 01:17:02 +10:00
James Groom 0d5b0ac964
Fix typos from copy-pasting via human
fixes 6f39bed3f
2023-12-22 01:11:39 +10:00
James Groom 6f39bed3f8
UI+UX improvements for Hex Editor's N64 Matrix view
no idea what this is actually for but now it's usable
2023-12-22 01:04:57 +10:00
James Groom e1571189c5
Mute NU1702 harder 2023-12-21 13:36:13 +10:00
James Groom ea00f3be54
Use helper method
fixes 73bb9b4bd
this is the only code style warning atm
2023-12-21 13:35:23 +10:00
CasualPokePlayer d00a512026 add comment noting StopSound can't be used for directsound's ResetToDefaultDevice 2023-12-18 02:37:30 -08:00
CasualPokePlayer f4ac17c904 Replace OpenAL dlls with openal-soft provided ones (downloaded from their official site: https://www.openal-soft.org/)
Fix hanging issue with OpenAL on device disconnection
Cleanup other hanging/crash fixes in other audio backends
2023-12-18 02:32:37 -08:00
CasualPokePlayer ad3aa2f5dc fix weird double utf8 bom in Bk2LogEntryGenerator 2023-12-17 04:27:17 -08:00
CasualPokePlayer f4ef12a38b simplify xaudio2 critical error handling
don't need to be this fancy, also this can still potentially deadlock anyways since audio throttle isn't going to be message pumping in throttling code
2023-12-17 04:24:19 -08:00
CasualPokePlayer d5fc092c0a Fix disconnecting an audio device potentially crashing/hanging for DirectSound and XAudio2
OpenAL seems to only do this on Windows, Linux does not care. This issue is also only relevant for audio throttle wrt XAudio2/OpenAL.
2023-12-17 04:11:27 -08:00
James Groom 7f21cbd029
Fix syntax errors in interp. string
fixes 0e084eaef
2023-12-17 20:00:30 +10:00
James Groom 0e084eaefd
Elaborate on admin warning, now with manual override (resolves #3835) 2023-12-17 09:46:44 +00:00
feos 4f522bac11 mame: put soft reset first so its dups could be resolved automatically
should complete #3704
2023-12-13 20:57:43 +03:00
James Groom 8a806c897d
Improve error message in `Bk2LogEntryGenerator` ctor (see #3704) 2023-12-13 07:50:16 +10:00
CasualPokePlayer 3bcc6ee977 do some more cleanup with rcheevos stuff, also rework rcheevos read map. having a dict full of delegates ends up allocating >26GiB of memory for New 3DS (i.e. 256MiB of memory), so instead have a map of _memFunction indexes corresponding to address, thereby making memory usage equal to the memory mapping size (so for New 3DS this will only take 256MiB of memory). it comes with some limitations, none of which matter for now 2023-12-11 03:59:10 -08:00
CasualPokePlayer 6b0b6f2106 do cleanup with rcheevos, using record structs where possible
also add in `in` support for the BizInvoker for compat interop
(non-compat interop doesn't really matter here, the point of `in` is to avoid a copy back for non-blittable objects, which doesn't apply for non-compat which only works for blittable objects / always just pins them down)
2023-12-10 16:02:07 -08:00
Morilli 83e784ecec Actually provide proper OAM memory domain in bsnes 2023-12-10 00:48:50 +01:00
CasualPokePlayer cc0b6c0d99 update rcheevos to latest release, change a ton of ints to uints (what's actually used often)
todo: trim out unneeded defs and do c# 10 cleanups
2023-12-09 02:25:40 -08:00
CasualPokePlayer 4d6bc5a33a fix build 2023-12-06 23:23:16 -08:00
CasualPokePlayer 2019f4baf2 c# side for 7b4bd8cdc3 2023-12-06 23:22:17 -08:00
feos 688fb249f9 fix #3715 2023-12-03 15:50:49 +03:00
feos 79baa45ca6 bounds have proper dimensions now 2023-12-03 11:48:49 +03:00
feos 0efdd02085 address #3715 (need to fix hawk side aspect ratio) 2023-12-03 03:12:58 +03:00
feos 73bb9b4bd9 mame: add driver src file to dump info 2023-12-02 22:35:05 +03:00
feos 2a40b172e1 fix #3704 2023-12-02 20:53:37 +03:00
feos a3746fe7b7 fix #3721 2023-12-02 18:06:43 +03:00
CasualPokePlayer 5f6243bd76 Remove SDL_INIT_HAPTIC use
We don't actually use the haptic API, which is a separate thing from SDL_GameControllerRumble/SDL_JoystickRumble
2023-11-23 23:09:46 -08:00
James Groom 2105871122
Clean up handling of modal dialogs and parenting in RA 2023-11-23 07:56:45 +00:00
James Groom 36df9c387b
Add `IDialogParent.AddOnScreenMessage` extension 2023-11-23 07:45:40 +00:00
James Groom 5ef398c309
Lazily init `BasicApiProvider`/`ApiContainer` 2023-11-23 06:47:36 +00:00
James Groom 525c9c2f9c
Use `MainForm.QuicksaveLoad` directly for RA 2023-11-23 06:34:29 +00:00
James Groom 40b17b59c4
Move events from `EmuClientApi` to `MainForm`
the `event` members remain, but the triggering is now delegated back to `MainForm`, and the additional processing has been moved there too
2023-11-22 12:25:44 +00:00
James Groom ca5dc1a6e8
Extract disc hashing from Octoshock, clean it up, and add to Nymashock 2023-11-21 06:54:11 +00:00
CasualPokePlayer 859ea8e249 improve Program startup, remove the OSTailoredCode duplication hack, use RuntimeInformation.IsOSPlatform for figuring out OS, use AppContext.BaseDirectory to get exe location (apparently even works with bundled assemblies in .net5+) 2023-11-18 20:00:16 -08:00
feos c7d65eb0ca mame: add defender mnemonics 2023-11-18 12:52:46 +03:00
James Groom 000f741994
Respect `BIZHAWK_HOME` for e.g. loading Waterbox cores
pretty much only affects NixHawk, where the wbox cores are in one dir and EmuHawk.exe and the other assemblies are in another, and all are symlinked into one tree
2023-11-18 17:26:49 +10:00
CasualPokePlayer ba24907d9c Improve NLua lua library loading, using C# function pointers. It now no longer depends on BizHawk.BizInvoke/BizHawk.Common. It might be faster too
Add in liblua-* variant for Linux lua library names (resolves #3678)
Remove some more unused NLua code
Make LuaState internal, we don't need to see it (NLua.Lua API slightly changed to accommodate this, tests could be broken due to this?)
Make various other NLua classes internal, we don't need to see them
Check against lua library loading failing, provide a non-fatal message box if it has failed instead of crashing on some exception.
Remove UnixSearchPaths (unneeded with LD_LIBRARY_PATH being set) and unused IImportResolvers
2023-11-17 19:03:03 -08:00
James Groom 1956302a15
Use IRODictionary in `BkmMnemonicConstants` 2023-11-18 04:52:09 +10:00
James Groom a9bfd96027
Backport `IEnumerable<KeyValuePair<,>>.ToDictionary` 2023-11-18 04:26:28 +10:00
James Groom c2ddc40468
Clean up impl. of `LinkedDebuggable`
see ed5a708f9
2023-11-18 04:11:02 +10:00
James Groom a227e7d113
Fix typos
fixes b36f4aa4e and ed5a708f9
2023-11-18 03:44:36 +10:00
James Groom ed5a708f93
Clean up `IDebuggable` impl. for GBHawkLink{,3x,4x} 2023-11-18 03:37:17 +10:00
James Groom b36f4aa4ef
Remove unused imports 2023-11-18 03:30:27 +10:00
James Groom 024739d22e
Fix typo in `GBHawkLink4x.SetCpuRegister`
broken since introduction in a751aab74
2023-11-18 03:20:50 +10:00
James Groom 63127695d4
Expose `IInputApi.GetPressedAxes` to Lua, improve `input` lib docs 2023-11-17 13:27:53 +10:00
James Groom 8eef419c62
Rename "Max" window size menu item to "10x" to reflect behaviour 2023-11-17 12:36:51 +10:00
James Groom e53f30f105
Fix "Max" window size menu item never being unchecked 2023-11-17 12:35:50 +10:00
CasualPokePlayer 7edba4962c fix 70bd081a93 (again)
see a2185d9ef0 and 8a5921182e
2023-11-16 09:14:25 -08:00
CasualPokePlayer 582446651f fix all the analyser warnings in NLua 2023-11-16 03:14:47 -08:00
CasualPokePlayer 49807254f6 remove ComImport usage for Win32ShellContextMenu, also /s/ShlobjImports/Shell32Imports 2023-11-15 18:58:06 -08:00
CasualPokePlayer 4660e4d25b Slightly improve ShellLink com interop, resolve todo (seems to work perfectly fine) 2023-11-15 13:29:09 -08:00
CasualPokePlayer 3bc44d6756 Remove SHGetMalloc usage, use Marshal.FreeCoTaskMem instead
Marshal.FreeCoTaskMem can be used instead (assuming we're >= Win2000), see https://learn.microsoft.com/en-us/windows/win32/api/shlobj_core/nf-shlobj_core-shgetmalloc
Also fix pszDisplayName allocation (needs * sizeof(char) due to unicode funny)
2023-11-15 12:55:40 -08:00
CasualPokePlayer 956af3577e Change a lot of CharSet.Auto's to CharSet.Unicode, explicitly put W postfix on relevant winapi functions/structs, put ExactSpelling = true for winapi functions.
We don't care for ANSI functions (no way somebody is going to run BizHawk on Windows 98/ME), and ExactSpelling = false (default) has a minor runtime cost, so this should be slightly more performant.
Also, replace ShellLink COM usage with custom COM interaction code. See https://github.com/TASEmulators/BizHawk/issues/3767. The same is yet to be done for the two other COM usages.
2023-11-15 11:33:50 -08:00
James Groom 391190b6d4
Inline `ICoreFileProvider.DllPath` 2023-11-14 18:05:32 +10:00
CasualPokePlayer edf5f15134 slightly improve xlib bindings, should now in theory work for 32 bit systems 2023-11-11 11:16:52 -08:00
CasualPokePlayer f9c85172e4 try to fix issues where reloading Citra when recording a movie results a crash due to the temp user folder having active file handles
unloading the dll would forcefully evict these file handles. unknown whether Linux does the same with the .so, perhaps it does, perhaps it doesn't. not really any extra harm if it doesn't
2023-11-11 09:11:17 -08:00
James Groom e9468cb0c8
Check FWIDs in database at runtime
see e119bdda3
2023-11-09 08:51:29 +10:00
CasualPokePlayer 282417c9af pass DateTimeFormatInfo.CurrentInfo here instead of suppressing the warning
fixes 5ae15c8
2023-11-08 11:58:38 -08:00
CasualPokePlayer 5ae15c89c3 remove invariant culture here
fixes 6e20a3091c
2023-11-08 10:32:37 -08:00
CasualPokePlayer e119bdda39 fix up firmware entries which had spaces in the id 2023-11-08 10:26:01 -08:00
CasualPokePlayer 5095f0c999 force real bios use when gba cart is present for melonds
melonds' freebios doesn't work with gba cart usage
2023-11-08 08:27:42 -08:00
CasualPokePlayer 6a80336787 add some more ds fw hashes 2023-11-06 09:46:34 -08:00
CasualPokePlayer eeb824d035 add in Chinese / Korean language options, remove unneeded firmware checks 2023-11-04 05:33:14 -07:00
Morilli 7d4b21f9c7 Fix some analyzer warnings
also improve globalconfig readability
2023-11-03 11:56:23 +01:00
CasualPokePlayer cdf89f4b09 add in missing asms in SubMain asm ver check 2023-11-03 03:52:32 -07:00
CasualPokePlayer b1f16cf437 fix ordinal loading (im pretty sure what was being done before only actually worked for dllimport and not getprocaddress)
cleanup some more win32 imports (new LoaderApiImports, although it isn't used for OSTailoredCode to avoid hard dep on BizHawk.Common, probably want to use same hack on LoaderApiImports)
2023-11-02 22:48:12 -07:00
CasualPokePlayer 195846f2f3 cleanup c# side melon code 2023-11-02 13:55:12 -07:00
CasualPokePlayer 7e91e1b260 fix dsi firmware checking 2023-11-02 10:16:30 -07:00
CasualPokePlayer 1ca7b0295d c# changes for melonDS update 2023-11-02 10:12:56 -07:00
Moritz Bender e1fb97dee6
Update snes9x to 1.62.3 (#3729)
* Update snes9x to 1.62.3

* Update snes9x submodule

* Implement msu1 for snes9x

* do less bullshit initialization

* Update snes9x submodule
2023-11-02 18:48:54 +03:00
Morilli abc5ddcc6e Fix lua console null output logging
- closes #3810
- fixes bb7f933429
2023-11-02 13:56:20 +01:00
CasualPokePlayer ebaafe2658 error check against gl context being failed to be set to current
in practice this should only throw when someone has a broken driver
2023-11-01 08:03:17 -07:00
CasualPokePlayer 151908104e Revert 683aa263a0 2023-10-28 22:50:05 -07:00
James Groom aaf46cc9a7
Fix `--lua=*.luases` being interpreted as a script (fixes #3814) 2023-10-29 06:38:06 +10:00
CasualPokePlayer c8f109eb34 fix ctrl/shift (probably more) with alt kb layout handling with RawKeyInput
also fix dinput not filtering out unknown key events (TODO: shouldn't this be handled higher up the input chain? surely we wouldn't want to respond at all to unknown key events)
2023-10-28 08:21:44 -07:00
CasualPokePlayer b98942dcfd minor fix in CWDHacks.Get()
fixes 686119c7dd
2023-10-28 05:10:31 -07:00
CasualPokePlayer 686119c7dd organize and cleanup a ton of win32 imports, do cleanup elsewhere with that 2023-10-28 05:05:36 -07:00
feos b4a6b06fba tastudio: disable rec mode when drawing inputs
see #2144
2023-10-28 13:35:01 +03:00
feos bb0bd415a6 address #3500 2023-10-28 12:20:22 +03:00
James Groom ef864536de
Fix typo'd `return;` in non-void method
fixes 672536305
2023-10-28 12:12:15 +10:00
James Groom 6725363052
Allow drawing on LuaPictureBoxes on multiple windows (fixes #3778)
fixes bb4ba2184, though it wasn't working correctly before that either
this whole thing needs deduping
2023-10-28 02:35:27 +10:00
James Groom 14c00d0ca2
In Debug config, don't use `Assembly.Load(byte[])` for ext. tools
apparently messes with the debugger IDK
2023-10-27 08:21:11 +10:00
James Groom 940c392fa3
Prevent selecting 'None' placeholder ext. tool 2023-10-27 06:46:20 +10:00
CasualPokePlayer 5c475ce898 Remove BizExvoker (unused for a long time, probably never going to use it)
Move MemoryBlock stuff and FPCtrl over from BizInvoke to Common
Move imports over to Common, remove unused imports
Do tons of cleanup here
2023-10-26 03:22:28 -07:00