CasualPokePlayer
f9d4737104
Expose SA1 IRAM in old BSNES
2024-09-30 22:16:26 -07:00
CasualPokePlayer
444d8d5d10
[Snes9x] Increase CARTRAM to 512KiB (the 128KiB limit was a product of the old snes9x port, newer snes9x has 512KiB as the new limit). Expose SA1 IRAM. Let ROM be writable in the memory domain (no reason not to)
2024-09-30 21:07:19 -07:00
Morilli
461a3dfb8d
Optimize some linq Any() calls to list Exists() calls
2024-09-30 23:31:54 +02:00
Morilli
08125ae82d
Cleanup CloseGame and CloseRom some more
...
- fixes #4061 and hopefully breaks nothing else
2024-09-30 23:29:53 +02:00
CasualPokePlayer
9ce41a2a88
only update custom backdrop palette if in mode 5
...
maybe affects https://github.com/TASEmulators/Genesis-Plus-GX/issues/5 ?
2024-09-30 13:32:12 -07:00
Moritz Bender
2d229be6ba
Move ZwinderBuffer invalidation logic into the class ( #4066 )
...
in scenarios with MANY states and high fps, the overhead of calling `GetState` every time was significant.
2024-09-30 15:55:48 +02:00
YoshiRulz
fedd2dbb03
Replace `ImGuiResourceCache.BrushCache` with a single `Brush`
2024-09-30 21:47:07 +10:00
YoshiRulz
fb425c9db6
Replace caches in `LuaPictureBox` with a single `Brush` and `Pen`
2024-09-30 21:47:07 +10:00
YoshiRulz
4f69796e51
Check for cached `SolidBrush` in `LuaPictureBox.DrawText`
2024-09-30 21:47:07 +10:00
YoshiRulz
6c514bcdd0
Change `NesPPU.HandlePaletteViewMouseMove` to re-use one `SolidBrush`
2024-09-30 21:47:07 +10:00
YoshiRulz
1b1589f2e8
Change `SNESGraphicsDebugger.RenderPalette` to re-use one `SolidBrush`
2024-09-30 21:47:07 +10:00
YoshiRulz
0313e1c119
Use `Brushes.*` instead of creating new ones from `Color` constants
2024-09-30 21:47:07 +10:00
YoshiRulz
f4298d74f4
Change `SNESGraphicsDebugger.DrawPaletteRegion` to re-use one `Pen`
2024-09-30 21:47:07 +10:00
YoshiRulz
ca95336349
Use `Pens.*` instead of creating new ones from `Color` constants
2024-09-30 21:47:07 +10:00
CasualPokePlayer
64f6742c15
Fix drawString not blending when it should
...
Drawing a string is really having GDI+ do the drawing in software, uploading the result to a texture, then overlaying it to the render target. Since this texture is largely transparent, it needs blending. Of course, assuming the colors are all otherwise opaque, we only need to do this for the string texture draw
2024-09-29 21:39:20 -07:00
Morilli
ae5d4ab160
Make StateInformation a readonly struct
...
This helps a lot when many states exist, struct allocs are much cheaper than classes
2024-09-29 04:05:32 +02:00
Morilli
0ac81016b1
Optimize sound output buffer handling
...
turns out a Queue isn't the optimal data structure when you're queueing millions of elements
2024-09-29 01:44:39 +02:00
Morilli
f3876da840
Optimize Vsync getter functions
...
trust me this is a highly relevant optimization
2024-09-29 01:39:55 +02:00
CasualPokePlayer
ed676cda39
rebuild libmgba for Linux
2024-09-28 09:02:21 -07:00
CasualPokePlayer
cab0b2df0b
[mGBA] Fix savestates not writing back GPIO variables to gpioBase
...
The issue wasn't light sensor specific, but rather GPIO specific (so e.g. RTC games like Pokemon would also get affected)
resolves #4060
2024-09-28 08:58:24 -07:00
Morilli
0669483bd2
optimize TasLagLog.RemoveLagEntry
...
just because I can
2024-09-28 17:30:42 +02:00
Morilli
24012bfb21
optimize TasLagLog.RemoveFrom
...
- closes #4058
2024-09-28 17:30:40 +02:00
YoshiRulz
9a440d0301
Add missing syncsetting check to `Gameboy.FrameAdvancePrep` (Gambatte)
...
see #4057
2024-09-28 18:01:00 +10:00
YoshiRulz
444d1b2182
Avoid exceptions in `AxisValue` implementations ( resolves #4057 )
...
see #4056
only in Release config, because cores really shouldn't be using
undeclared axes and I'd like to be able to catch that
2024-09-28 17:57:47 +10:00
YoshiRulz
e3cfcdaeb9
Nix expr: Fix `emuhawk-*-bin` eval error
...
fixes 760a5b528
2024-09-28 12:51:27 +10:00
Morilli
15ff0ec2c7
refactor sticky hold/autofire logic in TAStudio
...
- setting multiple buttons to autofire actually works
- the config to respect lag in autofire is applied now
- can set meaningful axis hold / autofire
- removed last reference to "float autofire"
2024-09-27 00:14:09 +02:00
Morilli
6d9aa4d467
implement bitwise logic for axes
...
noticable in inputdisplay or when trying to set axis autofire
2024-09-27 00:14:08 +02:00
YoshiRulz
509bd1504a
Set some more metadata on BizHawk assemblies
...
The documentation for these is lacking, as I've come to expect, but I'm
angry all the same.
For EmuHawk and DiscoHawk, I've pushed `$(Description)` (normally only
seen when publishing to NuGet) into `$(AssemblyTitle)`, which Windows
labels as "File description", and then explicitly set `$(Product)`.
Also `$(NeutralLanguage)` doesn't set a culture, it points any lookups
for `en-US` localisations to embedded resources, which I believe is the
default. This just makes it explicit.
2024-09-27 08:13:33 +10:00
Morilli
5504deb73f
make new from savestate and saveram work again
...
broke with 8956657a34
I'm assuming. Notably this will now no longer copy the current settings over, but that might actually be more consistent with the behavior of the normal new option, so...
2024-09-26 22:34:30 +02:00
Morilli
8f497d44f4
Make PatternsForm title text readable
2024-09-26 22:14:46 +02:00
YoshiRulz
4ccf4eafef
Add missing disc presence check to `NymaCore.FrameAdvancePrep`
...
fixes #4056
`ControllerAdapter` ctor uses `(discs?.Length ?? 0) > 0`, but it gets
`discs` from earlier in core init; when it's later assigned to `_disks`,
empty lists are replaced with null, and other places in `NymaCore` use
`_disks != null`. The `default(int)` is to match pre-3af5b7a7f
behaviour.
2024-09-27 05:47:27 +10:00
Morilli
eaef1f3829
Fix display issue in TAStudio when <3 frames are visible
...
also left a giant TODO, not sure what else to do about it
2024-09-26 21:11:17 +02:00
Morilli
bccc118091
Cleanup some more TAStudio function calls
...
in an ongoing effort to try and make the logic understandable
This should also restore default columns now when an existing tasmovie is currently loaded with column changes
and an existing bk2 is opened (which is then converted to a tasproj) (possible after 2ad7fc095c
)
2024-09-26 21:07:18 +02:00
Morilli
2ad7fc095c
Refactor tasmovie input roll settings handling
...
this allows loading the input roll settings stored in a tasproj even after it was initially `Load()`ed. This fixes those settings not getting applied when loading an existing, playing tasmovie into TAStudio.
2024-09-26 18:52:32 +02:00
Morilli
81b6c2793c
Respect AutoFireLagFrames config setting in sticky controllers
...
Previously, there was no way to configure this and sticky autofire controls would always adjust to lag.
2024-09-26 13:49:21 +02:00
Morilli
6eba7930fc
fix watch editor notes label position
2024-09-26 13:49:21 +02:00
YoshiRulz
dde61e309f
Make `ServiceNotApplicableAttribute` constructor `params`
2024-09-26 13:54:42 +10:00
YoshiRulz
f056059e48
Fix collection type in `ServiceNotApplicableAttribute`
2024-09-26 13:45:54 +10:00
YoshiRulz
bcd13fe37f
Make `IDriveLight` optional for cores
2024-09-26 13:45:15 +10:00
YoshiRulz
c22f2ab4f5
Remove redundant inter-project dependencies
2024-09-26 09:52:00 +10:00
Moritz Bender
3af5b7a7f0
Refactor sticky controller logic to separate it from user input ( #4047 )
2024-09-24 16:05:00 +02:00
Morilli
117b35f037
update bsnes from upstream source
...
includes some reverts to unnecessary source modifications
2024-09-24 15:57:17 +02:00
Morilli
1231d44afc
Update llvm to latest point release
2024-09-24 15:57:14 +02:00
Morilli
9f137753b9
hide no-op context menus for separators in ram watch
...
- closes #4051
2024-09-24 15:23:25 +02:00
YoshiRulz
e8b717c18e
Reorder fields in `WatchEditor` ( resolves #4046 )
2024-09-24 13:55:20 +10:00
YoshiRulz
775dc90ce2
Use a TLP to align UI elements in `WatchEditor`
2024-09-24 13:55:20 +10:00
YoshiRulz
9d1a22cab0
Fix typos from `WatchEditor` Designer file
2024-09-24 13:55:20 +10:00
YoshiRulz
b8d65ae92a
Merge in Designer file for `WatchEditor`
2024-09-24 13:54:39 +10:00
YoshiRulz
f1c901ce00
Revert "Improve watch editor layout"
...
This reverts commit f6bf38141a
.
2024-09-24 12:30:59 +10:00
YoshiRulz
1d8c088261
Fix `--lua`/`--luaconsole` causing that window to open before MainForm
2024-09-24 12:25:16 +10:00