Commit graph

217 commits

Author SHA1 Message Date
Sour
2d96724b28 Debugger: SNES - Added new "break on..." options
Invalid vram/oam/cgram access, controller read while auto-read is running
2025-03-27 21:30:38 +09:00
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
a2637ef2d4 Debugger: Fixed labels getting erased when spamming reload rom shortcut 2025-03-24 22:02:15 +09:00
Sour
b844642866 Debugger: GB - Fixed tilemap viewer displaying incorrect tiles when the tile index is above 127
Seems to only happen in release builds in MSVC (unsure if other compilers were affected)
+ Also added missing member in GbCpuState in the UI
2025-03-23 13:16:31 +09:00
Sour
929d4dcc20 GB: Fixed APU emulation issues
-Super Mario Land 2 - Pops in menu are fixed by immediately updating APU output after a write
-Perfect Dark - Low voice volume is fixed by having the correct output when the channels are disabled (but DAC is still enabled)
-Daiku no Gen - Low voice volume is fixed by keeping square channel output to digital 0 (= analog 1) until its first tick after being enabled (the game does not let the channel tick at all while the voice sample is playing)
2025-03-21 23:03:01 +09:00
Sour
5823761791 SMS: Implemented fairly accurate sprite eval+fetch timings, for all modes
+ Fixed VRAM read to wait until next available CPU access slot
+ Fixed NMI triggering on the wrong scanline on SMS
+ Fixed NMI issues on ColecoVision
+ Fixed random ram option not working properly on SG-1000
+ Added "Mem access" tab to tilemap viewer to see fetch patterns
2025-03-01 00:09:36 +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
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
1063146082 GG: Fixed freeze at boot in BIOS code (when a bios is provided) 2024-12-26 16:48:11 +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
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
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
71ecb09ffe UI: Added Firmwares tab in emulation settings to view/manage firmware files 2024-12-19 20:06:28 +09:00
Sour
1e3422b69e Debugger: Profiler - Show [irq]/[nmi] markers on functions 2024-12-17 18:51:01 +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
7fdb6a0e85 GBA: Improved cartridge prefetch timing accuracy
Passes most of alyosha's prefetch tests
2024-11-06 19:12:33 +09:00
Sour
ecd012c2fe Debugger: Fixed issue that caused forbid breakpoints to prevent "run 1 frame/scanline/etc" from working properly in some scenarios 2024-10-30 22:02:40 +09:00
Sour
5b0173f43c Debugger: Tile viewer - Limit copied data to what is required to display the current view
This fixes performance issues on GBA, for example, when trying to display the "CPU Memory" memory type
2024-10-10 17:51:39 +09:00
Sour
d751502a58 NES: Added Rainbow support (mapper 682) 2024-10-08 21:37:44 +09:00
Sour
7ed5fd5562 NES: Added EPSM support 2024-10-01 20:57:06 +09:00
Sour
c5406773a0 Added WonderSwan support 2024-09-19 21:19:43 +09:00
Sour
aa1c20afe5 GBA: Fixed black screen regression in X-Men The Official Game
This was caused by changes done in the open bus implementation to pass the openbuster test, which broke this game
2024-09-15 23:21:59 +09:00
Sour
b95ad78e00 GBA: Fixed graphical glitches on right side of the screen in Fire Emblem The Sacred Stones
Changing X scroll breaks the rendering logic - keep a copy of it at the start of the scanline (not verified on hardware)
2024-09-15 20:43:50 +09:00
Sour
e79e655d3b Debugger: Event Viewer - Added missing address/value for some event types (marked breakpoints, etc.) 2024-09-12 17:11:56 +09:00
Sour
9f69e88b6c Debugger: Added undo for memory viewer/debugger code edits 2024-08-26 20:15:30 +09:00
Sour
bd12aaabe4 GBA: Only suspend prefetch after/if DMA accesses ROM
Fixes the remaining failures in mGBA Suite's "Timing Tests"
2024-08-23 21:30:53 +09:00
Sour
5b992e35f8 PCE: Implement better MWR latch timing
Changing anything but CG Mode mid-screen should not be allowed (latched in vblank)
2024-08-19 10:54:57 +09:00
Sour
d6d0b87c22 Added ColecoVision support
Also adds mode 1 (text mode) and mode 3 (multicolor mode) support for the SMS/SG-1000
2024-07-27 14:52:31 +09:00
Sour
ff874bc86d Debugger: NES Header Editor - Fixed behavior/crash when opening header editor with softpatched roms or compressed files 2024-07-19 21:37:51 +09:00
Sour
d208fdc6a7 UI: Support for NativeAOT
Added Windows & Linux builds using AOT compilation
2024-06-05 20:23:31 +09:00
Angelo
d82cd8a2c4
UI: Move mouse handling to core and add MacOS mouse support (#55) 2024-05-24 16:31:44 +09:00
Sour
d9f1d486a3 Debugger: SNES - Fixed palette display for mode 0 layers in tilemap viewer 2024-04-27 12:14:45 +09:00
Sour
13acb3fe42 Added GBA support 2024-03-30 11:42:31 +09:00
Sour
64126ace83 PCE: CD-ROM timing improvements
-IRQ/SCSI status should happen after seek is done when a play command is sent (fixes  audio sync in Brandish intro cutscene)
-Fixed seek delay not being applied correctly when swapping from audio playback to data loading and tweaked seek delays to make them a bit slower (fixes Brandish audio glitch during introduction)
-Fixed regression that causes the "transfer ready" irq flag to not be reset when a sector was done reading (this broke the intro sequence in "It came from the desert")
-Improved behavior when a load operation is cancelled (to match the expected results of both scsitest and verificator tests)
2024-02-03 12:00:45 +09:00
Sour
7a83827f6f GB: APU - Improved square 1 sweep behavior
Passes channel_1_sweep test
2024-01-31 23:25:38 +09:00
Sour
d16d92dd7f Debugger: Event Viewer - GB - Added more categories, improved layout 2024-01-28 22:27:41 +09:00
Sour
4745bab5e4 GB: Fixed read behavior for FEA0-FEFF when DMA is running 2024-01-24 22:21:15 +09:00
Sour
7569f58b4a GB: Fixed power on state for OAM DMA register 2024-01-23 22:26:01 +09:00
Sour
f9614e0b1e PCE: Allow reading back bits 0-3 for 1804 + minor code cleanup 2024-01-03 20:21:50 +09:00
Sour
c6b86ba887 PCE: CD-ROM emulation improvements
-ADPCM edge cases work better (reset, length latching, dma, etc.)
-BRAM unlocking/locking fixes
-Read ToC command returns the correct amount of data
-SCSI data port returns the drive's reply whenever a reply is being read, regardless of the value written to the port through $1801
-Implemented/fixed audio sample read behavior (latching, L/R toggle)
-Fixed missing (unused) readable/writable bits in some registes

All of these fixes are based on the test results from krikzz's test rom here: https://github.com/krikzz/turbo-ed-pro-pub/tree/main/tcd-verificator
2023-12-27 23:27:07 +09:00
Sour
b6d865fdcd Debugger: PCE - Event Viewer - Split CD-ROM and Arcade Card reads/writes into 2 separate categories 2023-12-25 15:29:39 +09:00
Sour
9258d1453f Debugger: Lua - Add folder that contains the current script to the folders that scripts can require other Lua scripts from 2023-12-18 22:04:47 +09:00
Sour
469734dc02 Linux: Fixed compilation errors/warnings 2023-12-15 03:43:37 -05:00
Sour
5308983ebb Added SMS/GG/SG-1000 support 2023-12-14 22:23:27 +09:00
Sour
af2afc4cf7 Reduced CPU usage for HUDs and when paused 2023-10-14 22:15:27 +09:00
Sour
f358ddaabd Video: Added option to use the software renderer on all platforms 2023-09-29 18:08:57 +09:00
Sour
eb17aab85d Debugger: Sprite viewer - Added option to change background color 2023-09-26 18:58:50 +09:00
Sour
1cd6d078a7 Debugger: NES - Fixed/improved display for DMC/OAM DMA reads 2023-07-18 18:21:03 +09:00
Sour
4cb89a29dd GB: Fixed stack overflow crash when 2 halt instructions are executed in a row with halt bug 2023-07-09 22:41:11 +09:00