diff --git a/pcsx2/CDVD/InputIsoFile.cpp b/pcsx2/CDVD/InputIsoFile.cpp index 5240925bb17b6..aa29e0f54d658 100644 --- a/pcsx2/CDVD/InputIsoFile.cpp +++ b/pcsx2/CDVD/InputIsoFile.cpp @@ -160,6 +160,15 @@ int InputIsoFile::FinishRead3(u8* dst, uint mode) dst[diff - 9] = 2; } + // why do we need to byte swap here ?! + if (m_type == ISOTYPE_AUDIO && mode == CDVD_MODE_2352) + { + for (int i = 0; i < 2352; i += 2) + { + std::swap(dst[diff + i], dst[diff + i + 1]); + } + } + return 0; }