--- BasiliskII/src/AmigaOS/audio_amiga.cpp 1999/11/03 10:56:18 1.6 +++ BasiliskII/src/AmigaOS/audio_amiga.cpp 2002/01/15 14:58:34 1.10 @@ -1,7 +1,7 @@ /* * audio_amiga.cpp - Audio support, AmigaOS implementation using AHI * - * Basilisk II (C) 1997-1999 Christian Bauer + * Basilisk II (C) 1997-2002 Christian Bauer * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -37,15 +37,6 @@ #include "debug.h" -// Supported sample rates, sizes and channels -int audio_num_sample_rates = 1; -uint32 audio_sample_rates[] = {22050 << 16}; -int audio_num_sample_sizes = 1; -uint16 audio_sample_sizes[] = {16}; -int audio_num_channel_counts = 1; -uint16 audio_channel_counts[] = {2}; - - // Global variables static ULONG ahi_id = AHI_DEFAULT_ID; // AHI audio ID static struct AHIAudioCtrl *ahi_ctrl = NULL; @@ -64,14 +55,23 @@ static __saveds __attribute__((regparm(3 * Initialization */ +// Set AudioStatus to reflect current audio stream format +static void set_audio_status_format(void) +{ + AudioStatus.sample_rate = audio_sample_rates[0]; + AudioStatus.sample_size = audio_sample_sizes[0]; + AudioStatus.channels = audio_channel_counts[0]; +} + void AudioInit(void) { sample[0].ahisi_Address = sample[1].ahisi_Address = NULL; // Init audio status and feature flags - AudioStatus.sample_rate = audio_sample_rates[0]; - AudioStatus.sample_size = audio_sample_sizes[0]; - AudioStatus.channels = audio_channel_counts[0]; + audio_sample_rates.push_back(22050 << 16); + audio_sample_sizes.push_back(16); + audio_channel_counts.push_back(2); + set_audio_status_format(); AudioStatus.mixer = 0; AudioStatus.num_sources = 0; audio_component_flags = cmpWantsRegisterMessage | kStereoOut | k16BitOut; @@ -250,16 +250,19 @@ void AudioInterrupt(void) * It is guaranteed that AudioStatus.num_sources == 0 */ -void audio_set_sample_rate(int index) +bool audio_set_sample_rate(int index) { + return true; } -void audio_set_sample_size(int index) +bool audio_set_sample_size(int index) { + return true; } -void audio_set_channels(int index) +bool audio_set_channels(int index) { + return true; }