Sour
ea657c1898
UI: Call EmuApi.Release() before the main window closes
...
This seems to fix deadlocks (join on VideoRenderer thread never finished) in some scenarios when closing the emulator using the "Exit" shortcut (only seen on Linux)
2025-01-05 10:46:47 +09:00
Sour
b37f2e38a6
SNES: Added missing "else" in condition
...
This caused the SPC writes to trigger the PPU's "unimplemented register write" debug message (in debug builds only), but doesn't have any impact on accuracy/etc.
2025-01-05 10:41:53 +09:00
Sour
abb86d4f0e
Audio: Fixed buffer overflow crashes when slowing down emulation below ~5%
...
+ Mute audio when playback is so slow that the sound breaks
2025-01-05 00:02:58 +09:00
Sour
18269da46b
SNES: Add support for Sufami Turbo games
2025-01-03 09:18:59 +09:00
Sour
8d6830a70a
SNES: Add support for ST018 coprocessor
...
Used by a single game: Hayazashi Nidan Morita Shougi 2
2024-12-29 23:41:52 +09:00
Sour
43afe7956b
UI: Change Avalonia build to nightly containing the AOT deadlock fix (instead of the PR build)
2024-12-29 11:50:47 +09:00
Sour
21f1f62424
SNES: Added sinc audio interpolation option
2024-12-27 23:02:02 +09:00
Sour
636e645436
Debugger: Fixed code comments not supporting non-ASCII text
...
Entering CJK characters or accented characters in a comment resulted in ? characters in the disassembly, etc.
2024-12-27 14:21:08 +09:00
Sour
d6537ed0a5
Debugger: SNES - Fixed crash when resetting game while SPC debugger is opened
2024-12-27 11:49:16 +09:00
Sour
1063146082
GG: Fixed freeze at boot in BIOS code (when a bios is provided)
2024-12-26 16:48:11 +09:00
Sour
eed94fdbe7
UI: Fixed error message/broken layout when clearing the text/value in a NumericUpDown control
2024-12-26 16:09:21 +09:00
Sour
8dda623a1f
UI: Focus game selection screen on startup
...
+Try to avoid menu getting stuck with focus
+Improve keyboard/gamepad navigation for it
+Make selected game a bit easier to see
2024-12-26 16:09:17 +09:00
Sour
7f0831a542
GBA/SMS/WS: Fixed broken lag counter
...
Also make counter reset to 0 when game is reset on all consoles
2024-12-26 12:01:19 +09:00
Sour
e0dd12bcdb
SNES: SPC - Tweak previous timing fix for Kishin Douji
...
The previous fix on its own fixed Kishin, but broke Kawasaki Superbike
2024-12-26 11:10:37 +09:00
Sour
44337e507e
SNES: Fixed regression in Kawasaki Carribean Challenge (palette corruption)
...
Caused by CGRAM writes on scanline 0 being blocked, even though they apparently should work correctly
2024-12-25 23:03:36 +09:00
Sour
0dfc8ac834
UI: Update to Avalonia build that fixes freezes in AOT builds on Windows
2024-12-25 19:02:23 +09:00
Sour
6820db3793
Fixed compilation errors in clang (in VS)
2024-12-25 18:58:57 +09:00
Sour
0ab6e92dc2
SNES: Set internal palette address to 0 when outputting bg color (when no layers have visible pixels)
...
This fixes regressions in PGA Tour Golf and Mini Yonku Shining Scorpion. These games attempt to write to CGRAM during rendering, but at a time where the background color is being rendered, so the writes overwrite address 0 in CGRAM. Without this fix, the last non-transparent pixel's color address was being used, causing it to corrupt the wrong color in CGRAM (which caused the glitches)
2024-12-25 15:10:22 +09:00
Sour
30d28c83a5
SNES: Performance improvements
...
This makes performance equal or slightly better to what it was before all of the recent accuracy improvements
2024-12-24 22:56:57 +09:00
Sour
a9d3cb5755
SNES: Implement correct/better behavior when reading/writing to CGRAM during rendering
...
This allows 93143's "dmacolor" demo to work correctly: https://forums.nesdev.org/viewtopic.php?p=164248#p164248
Also prevents reading from VRAM during rendering
2024-12-24 18:09:47 +09:00
Sour
542d73029a
SNES: Fixed freeze in intro/menus in Battle Grand Prix
...
The alignment done at the end of DMA appears to ignore master clocks spent in DRAM refresh (which is why a separate counter is needed). Unsure if this has been verified on hardware, but this is also what ares does to fix this issue.
2024-12-24 17:47:19 +09:00
Sour
59f106b8cc
SNES: Fixed NMI/IRQ timing issues
...
Passes all NMI/IRQ tests: demo_irqtest, demo_nmitest, irq, nmi, test_irq, test_irq4200, test_irq4209, test_irqb, test_nmi,
Also fixes timing issues with WAI
2024-12-24 17:43:09 +09:00
Sour
831e177d87
SNES: Fixed HDMA timing issues
...
Passes the test_hdma, test_hdmasync, test_hdmatiming tests
2024-12-24 15:08:55 +09:00
Sour
29df2fb4d0
Debugger: SNES - Fixed minor issues with CPU internal registers' peek implementation
2024-12-24 15:04:53 +09:00
Sour
c0d61b46f4
SNES: Delay the SPC's access to the new values written by the CPU
...
This allows Kishin Douji Zenki to boot without locking up on a black screen
2024-12-24 15:04:40 +09:00
Sour
e4d317635f
SNES: Improved gamepad auto-read behavior
...
Based on new tests: blip-autojoy-test, blip-autojoy-test-automatic, enable-autojoy-late-test-2
2024-12-20 18:51:03 +09:00
Sour
88210b3fcf
SNES/PCE/SMS: Added missing "allow invalid input" option (and prevent invalid inputs by default)
2024-12-20 14:48:15 +09:00
Sour
32ab5cfa7e
GBA: Fixed open bus issues
...
This fixes a freeze in Zelda Minish Cap (in the final dungeon) and fixes a test in the mGBA test suite (Misc -> DMA prefetch -> Read)
2024-12-20 14:25:10 +09:00
Sour
71ecb09ffe
UI: Added Firmwares tab in emulation settings to view/manage firmware files
2024-12-19 20:06:28 +09:00
Sour
c447eaf997
Debugger: Improve call stack/profiler behavior when dealing with some types of stack manipulation
2024-12-17 18:52:17 +09:00
Sour
1e3422b69e
Debugger: Profiler - Show [irq]/[nmi] markers on functions
2024-12-17 18:51:01 +09:00
Sour
d1aa957a80
SNES: Allow gamepad auto-read to be disabled while it's running
...
Matches new hardware tests: clear-autojoy-1st-vb-sl / clear-autojoy-during-autojoy
2024-12-17 17:21:41 +09:00
Sour
84995227fc
Debugger: PCE - Added DDA output value to register viewer, fixed incorrect addresses
2024-12-16 21:54:02 +09:00
Sour
f7c1bebdbc
PCE: Fixed PSG channels in DDA mode not immediately updating output when a new output value was written
2024-12-16 20:41:20 +09:00
Sour
86cac326d7
Debugger: Tile editor - Improved behavior when editing tiles from a tilemap in games that bankswitch vram in the middle of the screen
...
-Also allows cropping the edit window when the size doesn't fit (e.g using 4x4 near the bottom of the screen can result in a 4x2 edit window, etc.)
-Fixed a display issue when the number of edited columns & rows didn't match
2024-12-14 23:19:02 +09:00
Sour
e2ea8438f2
Debugger: Added edit 8x8 tile option in tilemap/tile viewers
2024-12-14 22:38:12 +09:00
Sour
6b77200364
SNES: Improved gamepad auto-read emulation based on research/test rom
2024-12-14 14:39:42 +09:00
Sour
0352c7d675
Debugger: Always show modal popups in the taskbar
...
It's possible to click minimize on them, which isn't very user friendly (appears as a tiny title bar at the bottom left in Windows, not sure about Linux/macOS)
2024-12-13 23:35:47 +09:00
Sour
ed1b5c51ca
Debugger: Keep focus on main window when opening script windows alongside a rom via the command line
2024-12-13 23:13:37 +09:00
Sour
ff1580def4
SNES: Fixed input issues with Pocky & Rocky
...
Caused by the game enabling controller auto-read in the middle of the auto-read "portion" of the frame
2024-12-13 19:36:48 +09:00
Sour
84919bccdc
Rewind: Fixed partial desync of input data when rewind stops
...
This could potentially cause desyncs on subsequent rewinds, but most obviously it caused rewinding during movie playback to break movie playback entirely (because some inputs were handled by the rewind, while others were handled by the movie, causing the _deviceIndex value to be out of sync with its expected value)
2024-12-13 19:00:32 +09:00
Sour
0ff6e6a1ea
Debugger: Added basic support for SDCC symbol files (.cdb), including source mappings
2024-12-12 22:28:33 +09:00
Sour
b30bb12000
WS: EEPROM - Fixed "read done" flag never being reset
2024-12-12 21:04:26 +09:00
Sour
460ea81ca3
Debugger: WS - Fixed "freeze" memory not working
2024-12-12 20:57:55 +09:00
Sour
604f1a6fc9
PCE: Fixed SuperGrafx layering problem
...
When VDC1 had both BG and sprites disabled, it blocked the VDC2's background (resulting in a black screen). VDC1's output should count as transparent in this scenario
2024-12-11 18:32:55 +09:00
Sour
75b667d2cc
NES: Fixed behavior for SHX, SHY, SHA, TAS
2024-12-11 18:27:06 +09:00
Sour
d32763e7f8
NES: Fixed regression in "remove sprite limit" feature that caused some sprites to be missing
...
Caused by recent accuracy improvements to sprite evaluation
2024-12-10 19:11:02 +09:00
Sour
8ad34343ba
Debugger: Prevent UI freeze when viewer updates pile up and end up taking up 100% of the UI thread's time
...
Prevent queueing another update while the previous update is still running, which should prevent most issues.
Also slightly improves performance for the SNES tilemap viewer (which was causing the freeze when displaying an 8bpp 1024x1024 tilemap)
2024-12-10 18:59:13 +09:00
Sour
8d49d0ea54
Debugger: Label list - Toggle breakpoint on ram labels should create RWX breakpoints
2024-12-08 17:22:51 +09:00
Sour
d94646590d
Debugger: Source View - Fix selected file/scroll position being incorrect after manually loading a symbol file when the source view tab was already visible
2024-12-08 16:48:01 +09:00