diff src/audio/mint/SDL_mintaudio_it.S @ 961:185acc07127a

Date: Fri, 29 Oct 2004 11:47:09 +0200 From: Patrice Mandin Subject: Reworked audio drivers for Atari platform These are reworked audio drivers for the Atari platform. Previous drivers were missing some features: - Test external clock plugged to DSP port on Atari Falcon 030. - Ability to select internal or external clock. So now, I generate a list of frequencies available, with the master clock and predivisor to use. One big caveat to this: I do not have an external clock, so I hope it works.
author Patrice Mandin <patmandin@gmail.com>
date Fri, 29 Oct 2004 09:56:53 +0000
parents c4803992e09c
children d00b4d8508ab
line wrap: on
line diff
--- a/src/audio/mint/SDL_mintaudio_it.S	Sat Oct 09 22:11:45 2004 +0000
+++ b/src/audio/mint/SDL_mintaudio_it.S	Fri Oct 29 09:56:53 2004 +0000
@@ -23,7 +23,7 @@
 /*
 	Audio interrupts
 
-	Patrice Mandin
+	Patrice Mandin, Didier Méquignon
  */
 
 	.text
@@ -33,6 +33,7 @@
 	.globl	_SDL_MintAudio_GsxbInterrupt
 	.globl	_SDL_MintAudio_EmptyGsxbInterrupt
 	.globl	_SDL_MintAudio_XbiosInterrupt
+	.globl	_SDL_MintAudio_XbiosInterruptMeasureClock
 	.globl	_SDL_MintAudio_Dma8Interrupt
 	.globl	_SDL_MintAudio_StfaInterrupt
 
@@ -40,6 +41,7 @@
 	.globl	_SDL_MintAudio_audiobuf
 	.globl	_SDL_MintAudio_numbuf
 	.globl	_SDL_MintAudio_audiosize
+	.globl	_SDL_MintAudio_clocktics
 
 	.globl	_SDL_MintAudio_stfa
 
@@ -94,6 +96,17 @@
 _SDL_MintAudio_EmptyGsxbInterrupt:
 	rts
 
+/*--- Xbios interrupt vector to measure Falcon external clock ---*/
+
+_SDL_MintAudio_XbiosInterruptMeasureClock:          /* 1 mS */
+
+	btst	#0,0xFFFF8901:w	/* state DMA sound */
+	beqs	SDL_MintAudio_EndIntMeasure
+	addql	#1,_SDL_MintAudio_clocktics
+SDL_MintAudio_EndIntMeasure:
+	bclr	#5,0xFFFFFA0F:w	/* Clear service bit */
+	rte
+
 /*--- Xbios interrupt vector ---*/
 
 _SDL_MintAudio_XbiosInterrupt: