nscsi/cd.cpp: Change interpretation of play position slightly so games with redbook audio play it again. [R. Belmont]

This commit is contained in:
arbee committed 2026-07-20 07:36:52 -04:00
1 parent 76f3936922
commit d208b008a3
1 file changed
+14 -2
+14 -2
View File
@@ -1608,8 +1608,20 @@ void nscsi_cdrom_apple_device::scsi_command()
// 1 = address is the stop address, start address was set by a TRACK SEARCH command
if (m_scsi_cmdbuf[1] & 0x10)
{
const auto start = cdda->get_audio_lba();
cdda->start_audio(start, address - start);
// several games' audio playback track searches the same track and assume it means "just play this track"
if (m_stop_position == address)
{
if (start_track >= image->get_last_track())
{
m_stop_position = image->get_track_start(0xaa);
}
else
{
m_stop_position = image->get_track_start(start_track + 1);
}
}
cdda->start_audio(address, m_stop_position - address);
}
else
{