aboutsummaryrefslogtreecommitdiffstats
path: root/src/main.rs
diff options
context:
space:
mode:
authorLibravatarLarge Libravatar /dev/urandom <johnfkennedymaili2p>2025-02-15 04:43:43 +0100
committerLibravatarLarge Libravatar /dev/urandom <johnfkennedymaili2p>2025-02-15 04:43:43 +0100
commit612349572f728c82dec3983d71020f98eb09d648 (patch)
treeb46d3daf0e3dedfad6c4cf35a1c3dbf2a6480209 /src/main.rs
parenta62d11357cca3b5063532f797f801cd002aff8bd (diff)
downloadcosin25-invite-mountainbytes-612349572f728c82dec3983d71020f98eb09d648.tar.gz
cosin25-invite-mountainbytes-612349572f728c82dec3983d71020f98eb09d648.tar.bz2
cosin25-invite-mountainbytes-612349572f728c82dec3983d71020f98eb09d648.tar.lz
cosin25-invite-mountainbytes-612349572f728c82dec3983d71020f98eb09d648.zip

feat: 32k no music

Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs51
1 files changed, 29 insertions, 22 deletions
diff --git a/src/main.rs b/src/main.rs
index 82ec725..83b2929 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -4,12 +4,14 @@ mod font;
pub mod generated;
mod interpolation;
+#[cfg(all(feature = "music", not(feature = "32k")))]
mod music;
mod render;
pub mod vendored;
use std::time::{Duration, SystemTime};
+#[cfg(all(feature = "music", not(feature = "32k")))]
use music::{mmc2r_to_pcm, Music};
use sdl2::{event::Event, keyboard::Keycode};
@@ -17,33 +19,38 @@ use sdl2::{event::Event, keyboard::Keycode};
const TIMEOUT_DEATH: f64 = render::JUST_DVD + 20.0;
use sdl2::audio::AudioSpecDesired;
+
+#[cfg(all(feature = "music", not(feature = "32k")))]
use vendored::micromod::MmC2r;
pub fn main() {
let sdl_context = sdl2::init().unwrap();
- let audio_subsystem = sdl_context.audio().unwrap();
-
- let desired_spec = AudioSpecDesired {
- freq: Some(48_000),
- channels: Some(2),
- samples: Some(8192 as u16),
- };
-
- let device = audio_subsystem
- .open_playback(None, &desired_spec, |spec| {
- // initialize the audio callback
- Music {
- offset: 0,
- pcm: mmc2r_to_pcm(
- &mut MmC2r::new(include_bytes!("../uwudhd.mod"), spec.freq as isize).unwrap(),
- ),
- }
- })
- .unwrap();
-
- // Start playback
- device.resume();
+ #[cfg(all(feature = "music", not(feature = "32k")))]
+ {
+ let audio_subsystem = sdl_context.audio().unwrap();
+
+ let desired_spec = AudioSpecDesired {
+ freq: Some(48_000),
+ channels: Some(2),
+ samples: Some(8192 as u16),
+ };
+
+ let device = audio_subsystem
+ .open_playback(None, &desired_spec, |spec| {
+ // initialize the audio callback
+ Music {
+ offset: 0,
+ pcm: mmc2r_to_pcm(
+ &mut MmC2r::new(include_bytes!("../uwudhd.mod"), spec.freq as isize).unwrap(),
+ ),
+ }
+ })
+ .unwrap();
+
+ // Start playback
+ device.resume();
+ }
let video_subsystem = sdl_context.video().unwrap();