Commit graph

483 commits

Author SHA1 Message Date
Sour
ad548465c6 Debugger: NES - Added new "break on..." options
Invalid VRAM access, Invalid OAM write, DMA controller read, Unstable opcodes
2025-03-27 21:16:02 +09:00
Sour
af9eda3524 Debugger: NES - MMC1 - Added shift register state to register viewer 2025-03-25 18:02:23 +09:00
Sour
fef5573bda NES: Added option to reverse DPCM bit playback order
Improves DPCM quality for some specific games that have their DPCM data reversed
2025-03-23 20:52:09 +09:00
Sour
004ec5f3db NES: Display header information in log even when the rom can't be loaded because of a bad header 2025-03-23 15:04:22 +09:00
Sour
85070a6dc2 NES: Mapper 142 - Added missing variable to save state 2025-03-20 17:24:45 +09:00
Sour
62e6fb750b NES: Mapper 107 - Fixed PRG mappings 2025-03-19 22:30:44 +09:00
Sour
99311f9af2 NES: Mapper 142 - Misc fixes, including IRQ behavior that was breaking SMB2j on reset 2025-03-19 22:30:27 +09:00
Sour
4921d09468 NES: Mapper 139 - Fixed mirroring issue 2025-03-19 22:29:49 +09:00
Sour
4e63730c73 FDS: Implemented 4030.3 bit (mirroring flag) 2025-03-15 18:18:12 +09:00
Sour
e8c99284d1 FDS: Audio - Fixed behavior of the 4089.7 bit.
When set, the wave unit continues to run, but the output is held at its previous value
2025-03-15 16:06:35 +09:00
Sour
f359b80eb5 Debugger: Assembler - Allow using #label syntax on NES/SNES/PCE
This used to be allowed in Mesen-S
2025-03-13 18:32:46 +09:00
Sour
24dfab45de NES: Added support for mapper 487 (Maxivision 30-in-1) 2025-03-12 20:18:06 +09:00
Sour
db4cc01967 NES: FDS - Fixed emulation issues with modulation
Fixes incorrect audio in Yuu Maze and 19 Neunzehn
2025-03-09 23:30:44 +09:00
Sour
470cf9d7ee NES: VRC6 - Fixed missing audio register mirrors 2025-03-09 08:51:26 +09:00
Sour
8dc389df49 NES: Runahead - Fixed issues switching disks or inserting coins with FDS/VS System 2025-02-20 18:43:56 +09:00
Sour
0b593d4c78 NES: FDS - Fixed IPS save data not being applied when loading the rom 2025-02-20 17:38:21 +09:00
Sour
d72658de7a NES: FDS - Fixed issues with Kosodate Gokko (unlicensed disk copying program)
+ Added option to save directly to the original rom file instead of creating .ips files (for FDS & cartridges with flashable prg/chr rom)
2025-02-19 21:27:15 +09:00
Sour
1da719bb80 NES: MMC5 - Added support for 128kb ram 2025-02-18 09:30:20 +09:00
Sour
352adae9f8 NES: FDS - Implement CRC checks/writes for .qd files 2025-02-15 22:38:32 +09:00
Sour
991136e58a Audio Player: Fixed shuffle/repeat buttons not working 2025-02-13 22:07:10 +09:00
Sour
b1c54193d2 Fixed compilation warnings 2025-02-12 16:57:59 +09:00
Sour
762e5ea617 Debugger: NES header editor - Fixed incorrect values for VS system roms 2025-02-11 21:46:30 +09:00
Sour
d0b1a9d6f5 NES: Fixed crash when changing region while playing VS Dualsystem games 2025-02-11 20:49:15 +09:00
Sour
30fd76d9e0 NES: Added support for .qd format FDS roms 2025-02-07 21:06:17 +09:00
Sour
031cb7058c Debugger: Fixed issues with NES/SNES/PCE assemblers
-Labels defined within the assembler that were referred to before their definition did not work properly and ended up being assigned the wrong value (when the label's address wasn't a value between 0x100 and 0xFFFF) - this is fixed by running multiple passes until the resulting byte code stops changing.
-Fixed issues where e.g EOR $00, Y would be assembled as a 2-byte instruction, which is invalid.
2025-02-06 21:20:24 +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
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
3e822297e9 FDS: Fixed out-of-bounds write that could cause crashes 2024-12-08 11:04:22 +09:00
Sour
614e61a2d1 Debugger: Fixed issues with step over/out in some scenarios (bank swapping, recursive functions, etc.)
Only break when both the stack pointer and the return address match what the debugger was expecting, instead of just the return address
2024-12-07 17:46:28 +09:00
Sour
bde9ad3879 NES: Rainbow mapper - Fixed save ram not being saved to disk 2024-11-19 16:54:04 +09:00
Sour
9161a9e2c1 NES: Removed incorrect mapper 220 mapping
Nothing uses mapper 220 - it's a mapper number that was used in FCEUX as a way to debug/test implementations
2024-11-17 19:14:51 +09:00
Sour
26b35426c1 Debugger: NES - Fixed tile/attribute write highlights not working 2024-11-01 20:32:30 +09:00
Sour
f675ced226 NES: HD Packs - Removed unused feature allowing loading hd packs from zip files
This caused games to load/reload slowly if zip files existed in the HdPacks folder
2024-10-30 17:16:58 +09:00
Sour
6f46da3aa1 NES: MMC5 - Fixed crash when loading MMC5 game with save ram
Caused by the recent changes done when adding support for the Rainbow mapper
2024-10-30 17:14:13 +09:00
Sour
a394d05c97 NES: Fixed issue with new sprite eval bug emulation option that caused an incorrect fetch pattern when sprite overflow occurred
This could cause OAM decay to be detected even though it should never be possible for OAM to decay while rendering is enabled (sprite eval will refresh all OAM rows on each scanline)
2024-10-20 12:48:27 +09:00
Sour
7107579a9c NES: Rainbow - Implemented audio volume register 2024-10-19 13:51:47 +09:00
Sour
f90465c7cd NES: Count partially-copied sprites towards the sprite count for the next row 2024-10-19 13:31:25 +09:00
Sour
ce4b3b8a56 NES: Added option to emulate sprite eval bug that causes unexpected pixels to be shown at X=255
This bug exists only on older PPU revisions (2C02B and earlier)
2024-10-19 10:15:35 +09:00
Sour
6ea096b123 NES: Fixed EPSM issues when using "long writes"
The OUT1 pin was using bit 1 of the data bus, which is incorrect (should match the last value writting to 4016)
2024-10-15 14:09:20 +09:00
Sour
3dee924218 NES: Emulate another sprite evaluation quirk
Tweaks the H/L address bits increment/reset logic during evaluation to better match how hardware behaves (based on test rom). Also changes sprite 0 hits to consider sprite 0 to be the first sprite that sprite eval loads (based on oamaddr), even if the sprite is not actually the first entry in OAM
2024-10-11 18:01:20 +09:00
Sour
c366798f91 NES: Rainbow - Fixed audio volume when read via $4011 2024-10-08 22:32:41 +09:00
Sour
d751502a58 NES: Added Rainbow support (mapper 682) 2024-10-08 21:37:44 +09:00
Sour
1affcd14ce NES: Fixed EPSM sound quality issues
The 500kHz to ~48kHz downsampling was causing problems
2024-10-02 17:14:16 +09:00
Sour
7ed5fd5562 NES: Added EPSM support 2024-10-01 20:57:06 +09:00
Sour
64933699a8 NES: Reset newly added internal flags on console reset 2024-09-29 20:19:43 +09:00
Sour
31c545a680 NES: Fixed OAM DMA getting skipped when DMC DMA was aborted on the same cycle as OAM DMA was triggered 2024-09-29 11:42:43 +09:00
Sour
3860e39615 NES: Halt cycle for an aborted DMA should not count as a read on input ports if the CPU is halted on a 4016/4017 read
The CPU will read 4016/4017 for 2 consecutive cycles, which the controllers will see a single read (except on the original famicom), so skip the dummy read to reproduce this behavior
2024-09-28 20:22:08 +09:00
Sour
efdf18dadb NES: DMAs interrupted during a write shouldn't start after the write 2024-09-28 20:15:26 +09:00
Sour
de20208abe NES: Added option to enable CPU test mode registers 2024-09-28 16:55:45 +09:00