On 2025/12/01 20:22, [email protected] wrote:
From: Marc-André Lureau <[email protected]>
AUD_init_time_stamp_{in,out} and AUD_get_elapsed_usec_{in,out} are only
used by the adlib device. The result isn't actually being used since
ADLIB_KILL_TIMERS was set some 20y ago. Let's drop this dead code now.
Signed-off-by: Marc-André Lureau <[email protected]>
---
audio/audio_template.h | 34 ----------------------------------
include/qemu/audio.h | 6 ------
hw/audio/adlib.c | 18 +-----------------
3 files changed, 1 insertion(+), 57 deletions(-)
diff --git a/audio/audio_template.h b/audio/audio_template.h
index 7a8c431f2d..1ab3c47fd7 100644
--- a/audio/audio_template.h
+++ b/audio/audio_template.h
@@ -569,40 +569,6 @@ bool glue(AUD_is_active_, TYPE)(SW *sw)
return sw ? sw->active : 0;
}
-void glue (AUD_init_time_stamp_, TYPE) (SW *sw, QEMUAudioTimeStamp *ts)
-{
- if (!sw) {
- return;
- }
-
- ts->old_ts = sw->hw->ts_helper;
-}
-
-uint64_t glue (AUD_get_elapsed_usec_, TYPE) (SW *sw, QEMUAudioTimeStamp *ts)
-{
- uint64_t delta, cur_ts, old_ts;
-
- if (!sw) {
- return 0;
- }
-
- cur_ts = sw->hw->ts_helper;
- old_ts = ts->old_ts;
It seems old_ts of QEMUAudioTimeStamp is no longer used.
Regards,
Akihiko Odaki
- /* dolog ("cur %" PRId64 " old %" PRId64 "\n", cur_ts, old_ts); */
-
- if (cur_ts >= old_ts) {
- delta = cur_ts - old_ts;
- } else {
- delta = UINT64_MAX - old_ts + cur_ts;
- }
-
- if (!delta) {
- return 0;
- }
-
- return muldiv64 (delta, sw->hw->info.freq, 1000000);
-}
-
#undef TYPE
#undef HW
#undef SW
diff --git a/include/qemu/audio.h b/include/qemu/audio.h
index c56af895d6..2562710bec 100644
--- a/include/qemu/audio.h
+++ b/include/qemu/audio.h
@@ -71,9 +71,6 @@ int AUD_get_buffer_size_out (SWVoiceOut *sw);
void AUD_set_active_out(SWVoiceOut *sw, bool on);
bool AUD_is_active_out(SWVoiceOut *sw);
-void AUD_init_time_stamp_out (SWVoiceOut *sw, QEMUAudioTimeStamp *ts);
-uint64_t AUD_get_elapsed_usec_out (SWVoiceOut *sw, QEMUAudioTimeStamp *ts);
-
#define AUDIO_MAX_CHANNELS 16
typedef struct Volume {
bool mute;
@@ -112,9 +109,6 @@ size_t AUD_read (SWVoiceIn *sw, void *pcm_buf, size_t size);
void AUD_set_active_in(SWVoiceIn *sw, bool on);
bool AUD_is_active_in(SWVoiceIn *sw);
-void AUD_init_time_stamp_in (SWVoiceIn *sw, QEMUAudioTimeStamp *ts);
-uint64_t AUD_get_elapsed_usec_in (SWVoiceIn *sw, QEMUAudioTimeStamp *ts);
-
void audio_cleanup(void);
typedef struct st_sample st_sample;
diff --git a/hw/audio/adlib.c b/hw/audio/adlib.c
index 19d3a5f128..2a2fe7d04f 100644
--- a/hw/audio/adlib.c
+++ b/hw/audio/adlib.c
@@ -34,8 +34,6 @@
#define DEBUG 0
-#define ADLIB_KILL_TIMERS 1
-
#define ADLIB_DESC "Yamaha YM3812 (OPL2)"
#if DEBUG
@@ -71,7 +69,6 @@ struct AdlibState {
uint64_t dexp[2];
SWVoiceOut *voice;
int left, pos, samples;
- QEMUAudioTimeStamp ats;
FM_OPL *opl;
PortioList port_list;
};
@@ -88,19 +85,7 @@ static void adlib_kill_timers (AdlibState *s)
for (i = 0; i < 2; ++i) {
if (s->ticking[i]) {
- uint64_t delta;
-
- delta = AUD_get_elapsed_usec_out (s->voice, &s->ats);
- ldebug (
- "delta = %f dexp = %f expired => %d",
- delta / 1000000.0,
- s->dexp[i] / 1000000.0,
- delta >= s->dexp[i]
- );
- if (ADLIB_KILL_TIMERS || delta >= s->dexp[i]) {
- adlib_stop_opl_timer (s, i);
- AUD_init_time_stamp_out (s->voice, &s->ats);
- }
+ adlib_stop_opl_timer(s, i);
}
}
}
@@ -149,7 +134,6 @@ static void timer_handler (void *opaque, int c, double
interval_Sec)
#endif
s->dexp[n] = interval_Sec * 1000000.0;
- AUD_init_time_stamp_out (s->voice, &s->ats);
}
static int write_audio (AdlibState *s, int samples)