Set MFP interrupt at end of frame
authorPatrice Mandin <patmandin@gmail.com>
Wed, 20 Jul 2005 17:47:18 +0000
changeset 10982911ff0a32bb
parent 1097 c83fa1c650dd
child 1099 1ccbb2b7d905
Set MFP interrupt at end of frame
src/audio/mint/SDL_mintaudio_dma8.c
     1.1 --- a/src/audio/mint/SDL_mintaudio_dma8.c	Wed Jul 20 17:44:11 2005 +0000
     1.2 +++ b/src/audio/mint/SDL_mintaudio_dma8.c	Wed Jul 20 17:47:18 2005 +0000
     1.3 @@ -100,19 +100,13 @@
     1.4  	}
     1.5  
     1.6  	/* Check if we have 8 bits audio */
     1.7 -/*
     1.8  	if ((cookie_snd & SND_8BIT)==0) {
     1.9  		DEBUG_PRINT((DEBUG_NAME "no 8 bits sound\n"));
    1.10  	    return(0);
    1.11  	}
    1.12 -*/
    1.13 -	if ((cookie_mch>>16)>MCH_F30) {
    1.14 -		DEBUG_PRINT((DEBUG_NAME "unknown 8 bits audio chip\n"));
    1.15 -		return 0;
    1.16 -	}
    1.17  
    1.18  	/* Check if audio is lockable */
    1.19 -	if ((cookie_mch>>16) == MCH_F30) {
    1.20 +	if (cookie_snd & SND_16BIT) {
    1.21  		if (Locksnd()!=1) {
    1.22  			DEBUG_PRINT((DEBUG_NAME "audio locked by other application\n"));
    1.23  			return(0);
    1.24 @@ -247,6 +241,7 @@
    1.25  			masterprediv=MASTERPREDIV_TT;
    1.26  			break;
    1.27  		case MCH_F30:
    1.28 +		case MCH_ARANYM:
    1.29  			masterclock=MASTERCLOCK_FALCON1;
    1.30  			masterprediv=MASTERPREDIV_FALCON;
    1.31  			sfreq=1;
    1.32 @@ -318,6 +313,12 @@
    1.33  	Xbtimer(XB_TIMERA, 8, 1, SDL_MintAudio_Dma8Interrupt);
    1.34  	Jenabint(MFP_DMASOUND);
    1.35  
    1.36 +	if (cookie_snd & SND_16BIT) {
    1.37 +		if (Setinterrupt(SI_TIMERA, SI_PLAY)<0) {
    1.38 +			DEBUG_PRINT((DEBUG_NAME "Setinterrupt() failed\n"));
    1.39 +		}
    1.40 +	}
    1.41 +
    1.42  	/* Go */
    1.43  	DMAAUDIO_IO.control = 3;	/* playback + repeat */
    1.44