Merge pull request #4483 from RoadrunnerWMC/audio-phys-addr-masking-fix
DSP: Add address mask for physical pointers to audio data buffers
This commit is contained in:
		@@ -284,7 +284,9 @@ bool Source::DequeueBuffer() {
 | 
				
			|||||||
        state.adpcm_state.yn2 = buf.adpcm_yn[1];
 | 
					        state.adpcm_state.yn2 = buf.adpcm_yn[1];
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    const u8* const memory = Memory::GetPhysicalPointer(buf.physical_address);
 | 
					    // This physical address masking occurs due to how the DSP DMA hardware is configured by the
 | 
				
			||||||
 | 
					    // firmware.
 | 
				
			||||||
 | 
					    const u8* const memory = Memory::GetPhysicalPointer(buf.physical_address & 0xFFFFFFFC);
 | 
				
			||||||
    if (memory) {
 | 
					    if (memory) {
 | 
				
			||||||
        const unsigned num_channels = buf.mono_or_stereo == MonoOrStereo::Stereo ? 2 : 1;
 | 
					        const unsigned num_channels = buf.mono_or_stereo == MonoOrStereo::Stereo ? 2 : 1;
 | 
				
			||||||
        switch (buf.format) {
 | 
					        switch (buf.format) {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user