Commit graph

23 commits

Author SHA1 Message Date
Sour
d0a3db20d8 PCE: Fixed ADPCM audio decoding issues
-Output is a 12-bit value and should wrap
-"Magnitude"/"step size" should be reset to 0 when playback starts

This fixes sound effects in NEXZR that were broken by the previous (incorrect) fix and also broken because _magnitude was not being reset to 0 when each sample started playing
2025-03-12 16:46:32 +09:00
Sour
4ce300877d PCE: Fixed memory mappings for save ram
Save ram is not mirrored across the entire 8kb, can only be accessed in the first 2kb
This fixes Death Bringer corrupting save ram when trying to start a new game
2025-02-01 18:01:15 +09:00
Sour
2aa9cc5908 PCE: Fixed save ram size (2kb instead of 8kb)
+ only create .sav file if game actually writes to save ram
2024-09-20 21:53:36 +09:00
Sour
abe6f0f860 PCE: Fixed sound mixing issue causing pops in ADPCM and CD audio 2024-06-07 20:25:43 +09:00
Sour
64126ace83 PCE: CD-ROM timing improvements
-IRQ/SCSI status should happen after seek is done when a play command is sent (fixes  audio sync in Brandish intro cutscene)
-Fixed seek delay not being applied correctly when swapping from audio playback to data loading and tweaked seek delays to make them a bit slower (fixes Brandish audio glitch during introduction)
-Fixed regression that causes the "transfer ready" irq flag to not be reset when a sector was done reading (this broke the intro sequence in "It came from the desert")
-Improved behavior when a load operation is cancelled (to match the expected results of both scsitest and verificator tests)
2024-02-03 12:00:45 +09:00
Sour
6ed7e45bd4 Fixed compilation warnings 2024-01-09 16:46:02 +09:00
Sour
f9614e0b1e PCE: Allow reading back bits 0-3 for 1804 + minor code cleanup 2024-01-03 20:21:50 +09:00
Sour
4696c2ca50 PCE: More CD-ROM emulation improvements
-ADPCM DMA speed now matches what krikzz's test rom expects
-Implemented some delays in CD-ROM interface that mostly match the test rom
-Implemented delay when software fails to read an entire sectore before the next one is ready (improves audio sync in Sherlock Holmes movies)
-Re-fixed issues with Ys IV that were apparently caused by the read command not properly updating the SCSI signals after the drive starts seeking to the requested sector
-Fixed some ADPCM playback flags/timing issues based on okitest test rom (playing/busy flag gets turned off slightly delayed vs end reached flag, etc.)
-Implemented delay for $1805 writes, based on test rom
2023-12-29 23:12:05 +09:00
Sour
c6b86ba887 PCE: CD-ROM emulation improvements
-ADPCM edge cases work better (reset, length latching, dma, etc.)
-BRAM unlocking/locking fixes
-Read ToC command returns the correct amount of data
-SCSI data port returns the drive's reply whenever a reply is being read, regardless of the value written to the port through $1801
-Implemented/fixed audio sample read behavior (latching, L/R toggle)
-Fixed missing (unused) readable/writable bits in some registes

All of these fixes are based on the test results from krikzz's test rom here: https://github.com/krikzz/turbo-ed-pro-pub/tree/main/tcd-verificator
2023-12-27 23:27:07 +09:00
Sour
dcd9c2249e Debugger: PCE - Highlight arcade card accesses in memory viewer 2023-12-27 23:27:07 +09:00
Sour
64e189f047 PCE: Improve cd-rom seek time emulation + adpcm read/write delays
Fixes issues in Ys IV (black bars while scrolling), F1 Team Simulation (loud noise at start of intro), Mugen Senshi Valis (de-synced audio/video)
2023-12-26 17:08:54 +09:00
Sour
04793df83c PCE: Fixed (?) arcade card register mirroring
Unsure if any games depend on this
2023-12-25 16:50:37 +09:00
Sour
e521fe700f PCE: Fixed arcade card shift register behavior for right shifts
Garou Densetsu Special was broken because of this - going in the  stage's back row would cause character sprites to disappear for several seconds
2023-12-25 15:40:51 +09:00
Sour
9a7e52d820 PCE: Log unexpected arcade card reads/writes in debug 2023-12-25 15:39:26 +09:00
Sour
b6d865fdcd Debugger: PCE - Event Viewer - Split CD-ROM and Arcade Card reads/writes into 2 separate categories 2023-12-25 15:29:39 +09:00
Sour
2926a49dbe PCE: Fixed endless intro restart bug in Tenshi no Uta 2 2023-11-19 23:39:54 +09:00
Sour
36e9db1cb5 PCE: Fixed SCSI drive behavior when an invalid command is received
Fixes crash in It Came from The Desert during the introduction
2023-04-20 20:06:38 -04:00
Sour
fd17a0669b Debugger: PCE - Log SCSI commands in debug log 2023-04-20 20:06:14 -04:00
Sour
bc491a7e2a PCE: Fixed ADPCM issue when setting read address
Address should only be updated if the previous write had the bit cleared
Fixes a crash in the Games Express game "CD Mahjong Bishoujo Chuushinha" after character selection
2023-04-17 21:30:53 -04:00
Sour
dc52149c7d PCE: Always init CD-ROM save ram with 0s (+header)
Improves compatibility with some games that don't like the random data
2023-04-11 18:03:18 -04:00
Sour
f1921b365f PCE: Fixed freeze when using the start option in Record of Lodoss War 2023-04-02 16:45:29 -04:00
Sour
3a77015a7c Debugger: PCE - Fixed read/write highlights and breakpoints for ADPCM memory 2023-04-02 15:39:12 -04:00
Sour
c90181c1a2 Refactoring - Moved some GB/PCE files into subfolders 2022-09-08 22:23:30 -04:00