Commit Graph

412 Commits

Author SHA1 Message Date
ekeeke
302fe82fcc [Core/MD] improved invalid SRAM header info detection (fixes crashes with some unlicensed hacks/translations) 2024-02-27 01:47:21 +01:00
ekeeke
ed7988f8ca [Core/MD] added emulation of Z80 halt when accessing 68k bus during DMA from 68k bus 2024-02-23 15:40:42 +01:00
ekeeke
9a0a1c2922 [Core/VDP] improved accuracy of DMA to CRAM/VSRAM (verified on real hardware by Mask of Destiny) and DMA Fill timings 2024-02-23 14:48:00 +01:00
ekeeke
5f2f0ce89f [Core/VDP] improved VINT timing accuracy in H32 mode (verified on real hardware by Nemesis) 2024-02-23 14:08:57 +01:00
ekeeke
0ca78b897e |Core/VDP] fixed inverted H32 & H40 modes HBLANK flag timings 2024-02-23 13:48:19 +01:00
ekeeke
4c4a762588 [Core/MD] improved accuracy of 68k access to Z80 bus delays 2024-02-23 11:23:13 +01:00
ekeeke
c04a9426b7 [Core/VDP] reverted FIFO access timings hack when using invalid write code value 2024-02-23 11:19:43 +01:00
ekeeke
49a289df89 [Core/CD] fixed byte access to word-only registers (verified on real hardware, cf. Krikzz's mcd-verificator) 2024-02-22 14:14:27 +01:00
ekeeke
f09c97336e [Core/CD] added clear of CDC decoder interrupt pending flag when decoding is disabled (verified on real hardware, cf. Krikzz's mcd-verificator) 2024-02-21 20:25:04 +01:00
ekeeke
47761b9b8f [Core/MD] added basic emulation of 68k bus access refresh delays (fixes Super Airwolf graphical glitch during intro & some Krikzz's mcd-verificator timing tests) 2024-02-21 19:50:08 +01:00
ekeeke
405c54555e [Core/CPU] improved 68k auto-vectored interrupts acknowledge cycle timing accuracy (fixes Pacman 2 - New Adventures crashes during Pac-Jr minigame levels transitions) 2024-02-20 18:54:00 +01:00
ekeeke
6b1dfa1cef [Core/CPU] improved 68k MOVEM instruction accuracy (implements extra read cycle from memory as verified on real hardware, cf https://gendev.spritesmind.net/forum/viewtopic.php?t=2010) 2024-02-20 15:01:34 +01:00
ekeeke
771452f7a1 [Core/CD] improved SUB-CPU synchronization with graphics processing when polling end of graphics operation 2024-02-20 13:59:36 +01:00
ekeeke
30dfba4966 [Core/CD] fixed potential edge case with CDC DMA halting 2024-02-19 21:47:32 +01:00
ekeeke
3397941b60 [Core/CD] fixed regression in SUB-CPU synchronization with CDC DMA introduced by da8e4e547a (fixes freezes in Ultraverse Prime and probably other games) 2024-02-19 20:27:54 +01:00
ekeeke
e8a6086c89 [Core/CD] improved accuracy of CDC decoder processing (verified on real hardware, cf. Krikzz's mcd-verificator) 2024-02-06 00:37:42 +01:00
ekeeke
904613f51c [Core/CD] added CDC decoder processing when disc is not playing (fixes MCD-verificator CDC Flags Test 0x30) 2024-02-06 00:27:25 +01:00
ekeeke
90c9c730f0 [Core/CD] improved accuracy of CDC interrupt processing (verified on real hardware, cf. Krikzz's mcd-verificator) 2024-02-05 23:53:57 +01:00
ekeeke
79bd0e7582 [Core/CD] improved Main-CPU & Sub-CPU idle loop detection (fixes cases where ADDQ instruction is used in tight counter incrementing loop) 2024-02-05 23:28:18 +01:00
ekeeke
64d3e08e7d [Core/CD] improved accuracy of CDC data transfer to Main-CPU and Sub-CPU when writing to CDC data register (verified on real hardware, cf. Krikzz's mcd-verificator) 2024-01-22 01:02:42 +01:00
ekeeke
2c1a2d0def [Core/CD] improved accuracy of CDC DMA to PRG-RAM write-protected area (verified on real hardware, cf. Krikzz's mcd-verificator) 2024-01-22 00:34:24 +01:00
ekeeke
da8e4e547a [Core/CD] improved accuracy of CDC DMA processing (verified on real hardware, cf. Krikzz's mcd-verificator) 2024-01-22 00:22:52 +01:00
ekeeke
16589b558f [Core/CD] improved accuracy of CDC transfer to Main-CPU (resp. Sub-CPU) when destination is set to Sub-CPU (resp. Main-CPU) (verified on real hardware, cf. Krikzz's mcd-verificator) 2024-01-19 00:01:02 +01:00
ekeeke
9f25226536 [Core/CD] improved emulation of Word-RAM access limitations in 2M mode (fixes regression in Mortal Kombat) 2024-01-16 14:00:21 +01:00
ekeeke
d4ca576c07 [Core/CD] fixed BOOT ROM level 4 interrupt vector upper word value (verified on real hardware, cf. Krikzz's mcd-verificator) 2023-11-26 17:48:55 +01:00
ekeeke
02c9dac337 [Core/CD] added CD hardware model auto-detection when BIOS is loaded as normal ROM file 2023-11-26 17:41:12 +01:00
ekeeke
52b4f78b82 [Core/CD] improved accuracy of CDC transfer to Main-CPU & Sub-CPU (verified on real hardware, cf. Krikzz's mcd-verificator) 2023-11-26 16:27:15 +01:00
ekeeke
fcb6620202 [Core/CD] added limited support for LC89513K extended registers (only when Wondermega M2, X'Eye, CDX or Multi-Mega BIOS is detected) and improved accuracy of Main-CPU & Sub-CPU access to CDC registers (fixes mcd-verificator CDC REGS tests) 2023-11-25 19:09:03 +01:00
ekeeke
b330eb85cf [Core/CD] improved MAIN-CPU/SUB-CPU synchronization when reading CDC host data and CDC transfer status from MAIN-CPU (fixes MCD-verificator CDC INIT Test #4 and CDC DMA3 Test #2) 2023-11-19 16:18:38 +01:00
ekeeke
6669d25948 [Core/CD] fixed memory mode register bits masking when read from MAIN-CPU and SUB-CPU (verified on real hardware, cf. Krikzz's mcd-verificator) 2023-11-19 16:02:33 +01:00
ekeeke
6cc8bbc277 [Core/CD] added emulation of Word-RAM access limitations in 2M mode (fixes graphical issues in Marko's Magic Football) 2023-11-18 19:38:33 +01:00
ekeeke
9b0b8d3afc [Core/CD] minor optimization of Word-RAM switching in 1M mode 2023-11-18 18:01:01 +01:00
ekeeke
8169f02496 [Core/CD] MAIN-CPU/SUB-CPU synchronization code cleanup 2023-11-18 17:51:55 +01:00
ekeeke
6f0ac9a668 [Core/IO] improved Japanese Paddle emulation (fixes Paddle support on control port #2) 2023-11-10 15:21:11 +01:00
ekeeke
a42843bf6c [Core/Sound] updated Nuked OPN2 core to latest version (1.0.12) 2023-11-10 14:41:10 +01:00
ekeeke
8e02a430aa [Core/CD] fixed CDC DMA to PCM RAM when transfer length is not word-aligned 2023-11-10 14:25:32 +01:00
ekeeke
a2931d161f [Core/MS] added support for more Korean x-in-1 mappers (credits to Ben Sittler & Omar Cornut from smspower.org for mappers reverse-engineering and description) 2023-09-11 23:43:32 +02:00
ekeeke
5a3e18f71b [Core/CD] improved Sub-CPU BUSREQ status accuracy 2023-08-25 17:29:09 +02:00
ekeeke
7316507339 [Core/MD] fixed another potential regression with savestate support for games using SRAM bankswitching 2023-07-25 00:02:44 +02:00
ekeeke
091b4124a8 [Core/MD] fixed Sonic The Hedgehog 3 lock-on support regression introduced in 4bb149ba0b 2023-07-24 23:14:20 +02:00
ekeeke
83ab969f29 [Core/MD] added "Demons of Asteborg" and "Astebros" in internal mapper database (fixes Steam versions which incorrectly use Everdrive extended SSF mapper indicator in ROM header) 2023-07-01 15:34:52 +02:00
ekeeke
4bb149ba0b [Core/MD] fixed SRAM bankswitching for games also using ROM bankswitching (fixes Astebros) 2023-06-13 01:00:56 +02:00
ekeeke
95bde804a6 [Core/MD] fixed soft-reset in X-in-1 pirate games 2023-06-08 22:47:42 +02:00
Nicholas Hubbard
3bed408176
fix error in zstate comment (#509) 2023-06-04 17:44:14 +02:00
ekeeke
c4077c4f24 [Core/Misc] Fixed -Wmaybe-uninitialized warnings with GCC compiler 2023-05-20 19:44:57 +02:00
ekeeke
a7f42b438e [Core/CD] increased minimal latency (fixes BIOS freeze when CD latency is disabled in emulator settings) 2023-05-09 00:54:56 +02:00
ekeeke
b5f1027c15 [Core/CD] fixed CDD position reset when disc is stopped (fixes random freezes in Spiderman vs Kingpin when switching between audio tracks) 2023-05-07 14:46:23 +02:00
ekeeke
1db51e2c5f [Core/MS] simplified latest Korean x-in-1 mappers implementation 2023-04-07 09:06:42 +02:00
ekeeke
4a07f8a9f6 [Core/MS] added support for latest Korean x-in-1 mappers (credits to Ben Sittler and Omar Cornut at smspower.org for mappers reverse-engineering and description) 2023-04-06 01:00:40 +02:00
ekeeke
f0c8f83926 [Core/MD] improved Realtec mapper accuracy (verified on real cartridge hardware) 2023-03-20 00:26:37 +01:00