Commit graph

578 commits

Author SHA1 Message Date
Sour
48a7cdc252 Apply power on ram state setting to SPC RAM 2019-07-12 08:02:07 -04:00
Sour
f5bb073b9d PPU: Improved frame skipping logic 2019-07-11 23:30:40 -04:00
Sour
81d373b99b PPU: Convert VRAM to uint16_t array (cleaner code) 2019-07-11 23:03:02 -04:00
Sour
6ba622df9f PPU: Minor refactoring/optimizations 2019-07-11 21:45:56 -04:00
Sour
aa9f7b3f23 PPU: Convert CGRAM to uint16_t array (performance + code simplicity) 2019-07-11 20:03:57 -04:00
Sour
f40b9527af PPU: Mosaic "start" scanline should not be reset when writing to the mosaic register while mosaic is already enabled
(Fixes FF3 battle mosaic)
2019-07-10 23:13:06 -04:00
Sour
c6f8ab4276 Debugger: Fixed UI crash when using debug tools while the loaded rom is inside a zip/7z file 2019-07-10 22:50:40 -04:00
Sour
26bf239cee PPU: Cycle-by-cycle sprite evaluation & fetching
Not 100% accurate, but much better than doing it all at once
2019-07-10 22:50:12 -04:00
Sour
9996d569d4 PPU: Fixed mosaic issues (was disabled on subscreens and palette wasn't properly kept for the entire block) 2019-07-08 23:46:31 -04:00
Sour
31fa31dc3d SPC: Implemented SLEEP/STOP behavior to avoid lock up when a crashed SPC program calls them 2019-07-08 22:06:12 -04:00
Sour
3f4a72a338 CPU: Reset D & DBR to 0 on reset (fixes SG&G freeze on reset)
+ Generally fix reset behavior for the 65816 based on available info
2019-07-08 22:03:58 -04:00
Sour
8623cddf68 Debugger: Fixed SPC debugger window 2019-07-08 21:17:20 -04:00
Sour
f963a6562e PPU: Mode 7 - Latch scroll values at the start of a scanline and keep them for the whole scanline (fixes NHL 94 intro) 2019-07-08 19:25:53 -04:00
Sour
353a13963b PPU: Fetch sprites tile data from H=272 to 339 2019-07-08 15:24:43 -04:00
Sour
d2ee975c65 PPU: Moved bg tile prefetch to H=0 2019-07-08 09:18:38 -04:00
Sour
40a165d07c PPU: Improved mosaic effect (still wrong in high res) 2019-07-08 09:13:08 -04:00
Sour
cb8feb702f Libretro: Cut off 7px at the top instead of 8 (since there is only a 7px gap at the top) 2019-07-07 19:59:16 -04:00
Sour
173350b860 Input: Reduced input lag by 1 frame by moving the polling to be after the emulation sleeps, rather than before. 2019-07-07 19:55:08 -04:00
Sour
9415a939e1 Save states: Fixed PPU state code to avoid breaking compatibility 2019-07-07 19:27:39 -04:00
Sour
e3730a90c0 Fixed missing break statement that caused games that use h-irqs to break 2019-07-07 18:57:04 -04:00
Sour
5c17890142 PPU: Implemented cycle-by-cycle fetches for tilemap/tile data (for modes 0-6) 2019-07-07 18:22:20 -04:00
Sour
3e8abac530 DMA: Fixed HDMA not properly interrupting DMA (fixes Dekitate High School)
Also fixed timing inaccuracies and refactored a bit.
2019-07-06 18:07:09 -04:00
Sour
9ebf8a49c4 Debugger: Event Viewer - Fixed issues caused by output size changes 2019-07-06 14:58:09 -04:00
Sour
f282675003 Initialize all ram (vram, cgram, oam, work ram, save ram) based on ram power on state setting 2019-07-06 14:25:51 -04:00
Sour
f16970a2fd Video: Output standard resolution frames in 256x239 instead of always doubling resolution 2019-07-06 14:03:27 -04:00
Sour
5d79229f3a CPU: Added cycle-by-cycle emulation for mul & div registers 2019-07-06 09:29:35 -04:00
Sour
6032728699 CPU: Reads should happen slightly earlier within a CPU cycle compared to writes
Fixes Rendering Ranger R2 freeze on stage start
2019-07-06 09:21:57 -04:00
Sour
03848580a5 Carts: Fixed Ongaku Tsukuru Kanadeeru using the wrong mappings due to it using an exception not meant for that cart 2019-07-05 21:27:45 -04:00
Sour
dd7144965c Carts: Added exception for dezaemon 2019-07-05 21:16:06 -04:00
Sour
6e6751689c Debugger: Fixed crash in label manager 2019-07-05 19:19:38 -04:00
Sour
2927939a56 DMA: Implemented cpu cycle that skips the IRQ/NMI check after DMA 2019-07-05 19:18:30 -04:00
Sour
731f86e846 MSVC: Fix for compiler bug in x86 (did not generate valid assembly) 2019-07-04 21:06:23 -04:00
Sour
f3a0eb9c5c ExHiRom: Fixed save ram mappings 2019-07-04 20:33:27 -04:00
Sour
3f62e07f52 Libretro: Switch const for constexpr to fix missing core options in some configurations 2019-07-04 16:51:33 -04:00
Sour
b1ab495136 Libretro: Fixed "auto" region being set to 50 FPS 2019-07-03 22:09:03 -04:00
Sour
455cb8838c Libretro: Changed option names to avoid conflicts with Mesen's config 2019-07-03 22:08:28 -04:00
Sour
5a298154f7 Libretro: Fixed error message when unloading game/core 2019-07-03 19:12:07 -04:00
Sour
63fd012686 Debugger: Event Viewer - Show label names in tooltips 2019-07-03 19:12:05 -04:00
Sour
103541a2a6 Fixed compilation warnings 2019-07-03 19:12:01 -04:00
Sour
a70a746df1 MinGW: Fixed compilation errors/warnings 2019-07-03 00:44:45 -04:00
Sour
88f66a8b59 Fixed compilation warnings 2019-07-02 20:18:57 -04:00
Sour
b5847a3d1f Libretro: Added libretro core 2019-07-02 19:56:00 -04:00
Sour
f9e08d2c24 Fixed some compilation warnings 2019-07-02 19:13:11 -04:00
Sour
da031ab697 Debugger: Fixed out-of-bounds memory access in disassembler 2019-07-01 18:35:21 -04:00
Sour
cbeaa18c7d SPC: Allow SPC core to run a single cycle at a time (fixes several spc related lockups) 2019-07-01 18:34:39 -04:00
Sour
937f927850 Cart: Change SRAM mappings for lorom depending on cart size
(Fixes Wanderers from Ys)
2019-06-30 20:17:29 -04:00
Sour
57c31ad354 PPU: Reading $2137 should only latch h/v when bit 7 of $4201 is set 2019-06-30 19:51:52 -04:00
Sour
66c3d0a3b1 CPU: Fixed pre/post-DMA timings when writing to $420B
i.e: read next opcode pre-DMA, finish that instruction post-DMA
2019-06-30 19:47:12 -04:00
Sour
a36a09df32 CPU: Fixed timing issues with some instructions 2019-06-30 12:36:15 -04:00
Sour
e8fb04634b Debugger: Trace Logger - Added format tag for hclock 2019-06-29 11:34:24 -04:00