mkwong98
8e0816807f
Add sprite frame range condition
...
A new condition named "spriteFrameRange" is added. It works like frameRange except it follows frame counters assigned to each sprite. Frame counter picks up the nearest frame counter within 6x6 pixels from the last frame and resets if graphics, palette, bg priority or orientation has changed. The condition can by used by sprite tiles only. For example:
<condition>myCondition,spriteFrameRange,301,60
[myCondition]<tile>0,1001,FF0F3600,8,0,1,N
2021-04-15 19:54:01 +08:00
Sour
dbe7e0dec8
PPU: Moved oam row corruption region by a couple of dots, to match oam_flicker_test
...
With this timing, Isolated Warrior's pause screen flickers as expected
2020-05-01 23:43:26 -04:00
Sour
77b4289299
PPU: Tweaked sprite evaluation code to simulate another hardware glitch seen in the oam_flicker_test_reenable test
...
When rendering is enabled/disabled around scanlines 128-136, a single 8 pixel sliver of a sprite appears on the following scanline, due to the previously discovered bug where disabling rendering increments the oam address pointer by 1
2020-05-01 20:06:56 -04:00
Sour
59fddb7008
PPU: Added option to emulate OAM row corruption when disabling rendering at certain points during rendering
2020-04-30 18:46:03 -04:00
Sour
e586ce7208
PPU: Tweak affected bits for $2006 scroll glitch based on Alien Syndrome (J) behavior (and other hardware tests)
...
It looks like the horizontal nametable bit is also affected when the write falls on a coarse scroll increment
2020-04-24 00:01:40 -04:00
Sour
17c8294f5d
MMC5: Improved accuracy (scanline counter, split screen mode, etc.)
2020-01-19 14:45:04 -05:00
Sour
984ce9bd05
PPU: Glitch on $2000 writes at cycle 257 should only corrupt bit 10 of v (not 10+11)
2019-12-25 12:19:16 -05:00
Sour
33a5d3b0c9
PPU: Fixed "remove sprite limit" option not working
2019-12-25 09:30:42 -05:00
Sour
e7ca41987c
PPU: Only trigger cycle 257 write glitches when the writes occur while the PPU is rendering
2019-12-24 22:31:43 -05:00
Sour
d84243b8b0
PPU: Prerender scanline sprite fetches should fetch dummy tiles (index $FF)
2019-12-22 17:57:47 -05:00
Sour
f7ff089689
Core: Fix NMI code to better reflect the hardware
...
Fixes a crash in Super Chinese 3 caused by the PPU rapidly switching the NMI signal on and then back off (which caused the CPU to incorrectly jump to the IRQ handler and crashed the game)
2019-11-21 22:33:08 -05:00
Sour
85f4c1cc2f
Debugger: Event Viewer - Apply emphasis/grayscale bits to ntsc borders
2019-11-20 18:43:38 -05:00
Sour
8508b211cc
Debugger: Event Viewer - Added option to show NTSC borders
...
+ Ported most of Mesen-S' event viewer code to allow this to work
2019-11-19 22:28:45 -05:00
Sour
26773a1ecc
CPU: Randomize cpu/ppu alignment on resets (not just power cycle)
2019-11-12 21:03:03 -05:00
Sour
fc7714d6f0
PPU: Added option to emulate the scroll glitch that can occur when writing to 2000/2005/2006 on cycle 256
2019-11-12 21:00:30 -05:00
Sour
36e2d04fe9
Debugger: Added option to break when a $2006 write scroll glitch occurs
2019-11-11 21:10:55 -05:00
Sour
85fd6b36a9
PPU: Implement glitched $2006 address updates when done on X/Y increment cycles
2019-11-11 21:10:50 -05:00
Sour
a72acc9f1a
Core: Rewrite DMC/OAM DMA, tweak PPU timings, add option to simulate PPU/CPU alignments
2019-11-11 21:10:47 -05:00
Sour
30c2c8d3bf
PPU: Disabling rendering midscreen should set the vram bus to the value of 'v'
...
This prevents jittering in the Steins;Gate 8-bit game that doesn't occur on hardware
2019-10-12 10:58:07 -04:00
Sour
e338ab0765
Fixed init order when loading a game to prevent potential crashes (or incorrect behavior) in some scenarios (mostly if using the random mapper state option)
2019-06-22 16:33:59 -04:00
Sour
5b80d2fe21
Core: Changed CPU cycle counter to be a 64-bit int (breaks save state compatibility)
2019-05-12 12:28:01 -04:00
Sour
e826d4dfdd
PPU: Fixed bug when reading status flag (this disabled blue emphasis).
...
Unsure why this line existed - seems to have been added by mistake 5 years ago
2019-04-12 19:43:03 -04:00
Sour
e758398b8f
PPU: Disabling rendering during sprite evaluation causes the OAM address to be incremented by 1
2019-02-02 00:25:08 -05:00
Sour
f6b474569d
PPU: Prevent palette writes during HBlank when rendering is enabled
...
+ Try to emulate the behavior of $2007 writes during rendering better
2019-01-27 20:53:25 -05:00
Sour
bdbb16866b
Debugger: Fixed "Break on decayed OAM read" option triggering a break when CPU cycle count reached max value
2019-01-14 20:16:26 -05:00
Sour
ec0853fcf1
Debugger: PPU Viewer - Fixed tile/attribute update logic when overclocking is turned on
2019-01-13 20:18:31 -05:00
Sour
72d9e7ee13
Core: Remove old savestate compatibility code
...
No longer needed since the previous commit broke compatibility completely.
2019-01-13 15:20:57 -05:00
Sour
6d693a432d
Debugger: Break on decayed OAM read option no longer triggers when sprite rendering is disabled
2019-01-10 18:40:53 -05:00
Sour
40710c3665
Debugger: Allow debugger to peek at APU/PPU registers without altering the state
2018-12-25 00:07:45 -05:00
Sour
937a90626d
Debugger: Added option to evaluate all breakpoints on the first cycle of an instruction
2018-12-24 15:21:21 -05:00
Sour
4459b18fa3
Debugger: Added option to display why the debugger breaks (breakpoint, break options, etc.)
2018-12-23 00:10:00 -05:00
Sour
d305abe8fe
Debugger: Nametable viewer - Fixed scroll overlay position when game updates scroll offsets mid-frame
2018-09-07 21:10:52 -04:00
Sour
15373016d0
Refactoring - removed statics from EmulationSettings
2018-07-14 18:32:32 -04:00
Sour
36b88ac6af
Debugger: Don't auto-start debugger when oam decay is turned on
2018-07-08 10:28:48 -04:00
Sour
9f12f1c756
Debugger: Added option to break on decayed OAM read
2018-07-08 10:28:48 -04:00
Sour
47fbe93b62
Added support for VS DualSystem (WIP - dual video/audio, input, save states, movies & netplay working)
2018-07-08 10:28:48 -04:00
Sour
c877f73891
Split part of MessageManager into non-static NotificationManager
...
+ Fixed movie recording/playback (for .mmo files)
2018-07-08 10:28:47 -04:00
Sour
04310eddb4
Core refactoring (remove static variables) - WIP
2018-07-08 10:28:47 -04:00
Sour
1e90a71394
Linux: Removed -Wno-switch option and fixed warnings
2018-06-25 15:56:05 -04:00
Sour
d179b5e7d1
Fixed uninitialized memory reads
2018-06-13 17:48:52 -04:00
Sour
aad8b2bd47
PPU: Simulate the PPU's address bus a bit better (fixes Touhou Rououmu homebrew that detected Mesen as an emulator because of it)
2018-06-02 22:12:00 -04:00
Sour
b641830058
Debugger: Lua - Fixed some bugs/limitations with drawing routines (now works with NTSC filters, etc.)
2018-03-24 10:09:04 -04:00
Sour
981b121848
Debugger: Reduce frame lag between event viewer and main window when running 1 frame at a time
2018-02-23 12:18:12 -05:00
Sour
11c592a622
Debugger: Event viewer improvements/fixes
2018-02-19 23:23:26 -05:00
Sour
d8e00168a4
Debugger: Added "Event Viewer" tool - replaces PPU Register Write Viewer
2018-02-18 23:03:02 -05:00
Sour
fcad33750b
Debugger: Added option to show previous frame behind the current frame
2018-02-16 20:05:15 -05:00
Sour
06d7c8f363
Debugger: Added PPU Register Write Viewer to PPU viewer
2018-02-16 17:36:37 -05:00
Sour
a0a6d89416
Input: Fixed extra frame of input lag
2018-01-07 10:31:37 -05:00
Sour
cf0bd50b9e
Libretro support (Windows)
2018-01-04 19:03:47 -05:00
Sour
423ac65a7e
Debugger: Allow PPU breakpoints to break on $3F00-$3FFF palette ram accesses
2017-12-29 20:03:32 -05:00