126 Commits

Author SHA1 Message Date
ekeeke
9bcf7c29b1 [Core/CD] increased CD access latency (fixes Thunder Storm FX) 2025-08-02 01:41:35 +02:00
ekeeke
ed6a539691 [Core/Misc] fixed libchdr compilation warnings and disabled libchdr cache hunk (non-functional) 2025-07-30 01:26:00 +02:00
Romain TISSERAND
2986c1a08c [Core/CD] Bump libchdr and adjust build (#586)
* Bump libchdr and adjust build
* Additional zstd cleanup and fix Wii build
* Fix libretro/android build
* Fix standalone sdl/gx_vstudio projects
* Fix CHD loading for libretro
2025-07-24 19:31:11 +02:00
saulfabreg Wii VC Project
8e3e705999 [Core/CD] more robust ov_callbacks (fixes OGG Vorbis playback in Libretro), disable multiple OGG at once on GC/Wii/Wii U libretro
* more robust ov_callbacks, fixes OGG Vorbis playback in some Libretro platforms, disable multiple OGG at once on GC/Wii/Wii U libretro

Not sure but it seems the libretro VFS implementation/stuff breaks OGG playback in some Libretro platforms (mostly GameCube/Wii/Wii U)...

Also disables multiple OGG files open at once in the libretro cores for GC, Wii, and Wii U, as it could also cause OGG playback issues.

Thanks to irixxxx for helping with this fix.

* change ov_seek64_wrap to ov_cdStreamSeek (suggested by ekeeke)
2025-07-21 19:52:58 +02:00
ekeeke
b7d7239040 [Core/CD] improved main-cpu/sub-cpu synchronization when triggering timer interrupt 2025-07-14 20:26:19 +02:00
ekeeke
a65a0ffb53 [Core/CD] fixed regression introduced by CDD seeking delay emulation 2025-07-14 20:18:36 +02:00
ekeeke
a6002bb254 [Core/CD] improved robustness of CDD seeking delay emulation (fixes Krikzz's mcd-verificator CDC INIT endless loop following dd619513a4) 2024-09-01 14:39:09 +02:00
ekeeke
7717557cb8 [Core/CDD] fixed compilation error introduced in 3b95fdf328 2024-09-01 14:20:52 +02:00
ekeeke
3b95fdf328 [Core/CD] improved GFX processing robustness in case of word-RAM address overflow (fixes potential emulator crash in Flink level 20) 2024-09-01 11:36:32 +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
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
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
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
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
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
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
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
1c972f5482 [Core/CD] improved GFX timing accuracy (fixes "Night Striker" crashing after completing a game) 2022-11-26 16:24:09 +01:00
ekeeke
ea8d299123 [Core/CD] improved GFX processing accuracy to halt it while Word RAM is allocated to Main CPU in 2M mode 2022-10-09 10:13:24 +02:00
ekeeke
4ecd33f4cd [Core/CD] fixed 32x32 pixels stamp index masking during GFX operation (fixes #436) 2022-05-31 01:52:17 +02:00
ekeeke
e366ca817f [Core/CD] added setting to enable/disable CD access time simulation 2022-05-01 15:47:18 +02:00
ekeeke
7d4ae7da0c [Core/CD] fixed byte access address range to Font Data registers 2022-02-26 10:26:12 +01:00
ekeeke
7fe8d95ca1 [Core/CD] fixed Boot ROM level 4 interrupt vector upper word value 2022-02-25 16:45:39 +01:00
ekeeke
58accf0689 [Core/CD] fixed Memory Mode, Timer and Font Color registers byte access at even address (verified on real hardware, cf. Krikzz's mcd-verificator) 2022-02-25 15:29:18 +01:00
ekeeke
9254c331d2 [Core/CD] added configurable CD-DA and PCM outputs mixing volume 2021-10-07 23:20:31 +02:00
ekeeke
8be7c0269b [Core/Misc] MSVC compatibility fixes (backported from libretro repository) 2021-10-05 19:40:08 +02:00
ekeeke
3cf83e7557 [Core/MD] improved MD+ audio track loopback transitions 2021-09-28 20:26:13 +02:00
ekeeke
0c63be93f7 [Core/CD] fixed track index when decoding CUE file MegaSD specific loop commands 2021-09-17 10:08:40 +02:00
ekeeke
dfe3672878 [Core/MD] added support for MegaSD CD hardware overlay (MD+ hacks) and extended SSF2 / ROM write mappers 2021-09-13 19:32:52 +02:00
ekeeke
e87891fcca [Core/CD] improved CD audio savestate and CD file seeking (in preparation for MegaSD support) 2021-09-09 00:54:45 +02:00
ekeeke
35ed78cc71 [Core/Misc] fixed ROM loading from memory
This properly addresses the loading issue in Retroarch with compressed files reported by https://github.com/libretro/Genesis-Plus-GX/pull/249
2021-08-31 09:50:38 +02:00
ekeeke
298676294a [Core/MD] fixed Game Genie / (Pro) Action Replay lock-on support with ROM larger than 8MB 2021-08-09 16:05:24 +02:00
ekeeke
e6ab7563e7 [Core/MD] added SRAM support for games larger than 8MB 2021-08-08 16:48:49 +02:00
Romain TISSERAND
77b967f4d5 Fix crash loading CHD on some ARM boards (minimal changes) 2020-10-29 21:07:28 +01:00