Commit Graph

1688 Commits

Author SHA1 Message Date
ekeeke f9f16d7a55 [Core/MD] added emulation of 68k delay during Z80 acccess to 68k bus (fixes graphical glitch on Rick Dangerous II title screen introduced after adding emulation of 68k bus refresh delays) 2024-05-01 18:44:46 +02:00
feos 0c45a8a8ab
use UNLIKELY() macro (#554) 2024-04-20 20:16:54 +02:00
ekeeke dbdb18eb50 Merge branch 'master' of https://github.com/ekeeke/Genesis-Plus-GX 2024-04-20 18:49:35 +02:00
ekeeke dd619513a4 [Core/CD] fixed CDD seeking start delay (fixes Radical Rex incorrect PRG-RAM & Word-RAM initialization, causing missing sprites during intro) 2024-04-20 18:48:25 +02:00
ekeeke 351d052e84 [Core/MD] fixed regression in some unlicensed games mapper emulation (introduced by 7316507339) 2024-04-20 18:26:32 +02:00
Eugene Kulabuhov 25a90c634d
Fix SDL2 build on MacOS (#544)
* Fix SDL2 build on MacOS

* Fixing compilation error
2024-03-24 08:11:17 +01:00
ekeeke 6972a5b0d6 [Core/VDP] improved FIFO emulation (fixes lockup in Shin Souseiki Ragnacenty (Japan) and other potential lockup when switching between H32 & H40 mode during active display) 2024-03-06 09:18:43 +01:00
ekeeke 8c72ba0d45 [Core/VDP] improved DMA fill timing accuracy (again) 2024-03-02 08:42:03 +01:00
ekeeke 5af254cd23 [Core/VDP] reverted stupid DMA fill timing modification introduced in 9a0a1c2922 (fixes DMA fill regression) 2024-03-02 08:12:00 +01:00
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 b35a602bb3 Merge branch 'master' of https://github.com/ekeeke/Genesis-Plus-GX 2024-01-16 14:00:43 +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
ds22x 611c960d6d
Fix nonstandard default for CD add-on (MD mode) (#536) 2024-01-09 08:36:43 +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 c3f02f9c90 Merge branch 'master' of https://github.com/ekeeke/Genesis-Plus-GX
# Conflicts:
#	core/mem68k.c
2023-08-25 17:34:33 +02:00
ekeeke 5a3e18f71b [Core/CD] improved Sub-CPU BUSREQ status accuracy 2023-08-25 17:29:09 +02:00