diff --git a/src/emu/audio.rs b/src/emu/audio.rs index 11bd5c3..959b9c8 100644 --- a/src/emu/audio.rs +++ b/src/emu/audio.rs @@ -38,10 +38,13 @@ impl<'a> AudioProcessor<'a> { if self.audio_queue.size() == 0 { log::trace!("Detected Queue empty!"); } - while self.audio_queue.size() > 10 { + while self.audio_queue.size() > 32 { ::std::thread::sleep(Duration::from_micros(1)) } self.ram.try_copy_block(audio_base_reg, fb)?; + fb.iter_mut().for_each(|item|{ + *item^= 0x80; + }); self.audio_queue.queue_audio(fb).map_err(|s| { EmulatorError::OtherError(Some(AUDIO), s) }) } fn get_audio_base_reg(&self) -> u16 { diff --git a/src/main.rs b/src/main.rs index 7427c2f..408cf8a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -2,6 +2,7 @@ use std::fs::File; use std::io::Read; use std::time::Duration; use clap::Parser; +use log::LevelFilter; use sdl2::audio::{AudioQueue, AudioSpecDesired}; use sdl2::event::Event; use sdl2::EventPump;