diff src/audio/SDL_mixer_m68k.c @ 1662:782fd950bd46 SDL-1.3

Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API. WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid. The code is now run through a consistent indent format: indent -i4 -nut -nsc -br -ce The headers are being converted to automatically generate doxygen documentation.
author Sam Lantinga <slouken@libsdl.org>
date Sun, 28 May 2006 13:04:16 +0000
parents d910939febfa
children 4da1ee79c9af
line wrap: on
line diff
--- a/src/audio/SDL_mixer_m68k.c	Sun May 21 17:27:13 2006 +0000
+++ b/src/audio/SDL_mixer_m68k.c	Sun May 28 13:04:16 2006 +0000
@@ -28,184 +28,113 @@
 */
 
 #if defined(__M68000__) && defined(__GNUC__)
-void SDL_MixAudio_m68k_U8(char* dst, char* src, long len, long volume, char* mix8)
+void
+SDL_MixAudio_m68k_U8 (char *dst, char *src, long len, long volume, char *mix8)
 {
-    __asm__ __volatile__ (
-
-	"tstl	%2\n"
-"	beqs	stoploop_u8\n"
-"mixloop_u8:\n"
-
-	/* Mix a sample */
-
-"	moveq	#0,%%d0\n"
-"	moveq	#0,%%d1\n"
-
-"	moveb	%1@+,%%d0\n"	/* d0 = *src++ */
-"	sub	#128,%%d0\n"	/* d0 -= 128 */
-"	muls	%3,%%d0\n"	/* d0 *= volume (0<=volume<=128) */
-"	moveb	%0@,%%d1\n"	/* d1 = *dst */
-"	asr	#7,%%d0\n"	/* d0 /= 128 (SDL_MIX_MAXVOLUME) */
-"	add	#128,%%d0\n"	/* d0 += 128 */
-
-"	add	%%d1,%%d0\n"
-
-"	moveb	%4@(%%d0:w),%0@+\n"
-
-	/* Loop till done */
-
-"	subql	#1,%2\n"
-"	bhis	mixloop_u8\n"
-"stoploop_u8:\n"
-
-	 : /* no return value */
-	 : /* input */
-	 	"a"(dst), "a"(src), "d"(len), "d"(volume), "a"(mix8)	
-	 : /* clobbered registers */
-	 	"d0", "d1", "cc", "memory" 
-	 );
+    __asm__ __volatile__ ("tstl	%2\n" "	beqs	stoploop_u8\n" "mixloop_u8:\n"
+                          /* Mix a sample */
+                          "	moveq	#0,%%d0\n" "	moveq	#0,%%d1\n" "	moveb	%1@+,%%d0\n"    /* d0 = *src++ */
+                          "	sub	#128,%%d0\n"    /* d0 -= 128 */
+                          "	muls	%3,%%d0\n"      /* d0 *= volume (0<=volume<=128) */
+                          "	moveb	%0@,%%d1\n"     /* d1 = *dst */
+                          "	asr	#7,%%d0\n"      /* d0 /= 128 (SDL_MIX_MAXVOLUME) */
+                          "	add	#128,%%d0\n"    /* d0 += 128 */
+                          "	add	%%d1,%%d0\n"
+                          "	moveb	%4@(%%d0:w),%0@+\n"
+                          /* Loop till done */
+                          "	subql	#1,%2\n" "	bhis	mixloop_u8\n" "stoploop_u8:\n": /* no return value */
+                          :     /* input */
+                          "a" (dst), "a" (src), "d" (len), "d" (volume), "a" (mix8):    /* clobbered registers */
+                          "d0", "d1", "cc", "memory");
 }
 
-void SDL_MixAudio_m68k_S8(char* dst, char* src, long len, long volume)
+void
+SDL_MixAudio_m68k_S8 (char *dst, char *src, long len, long volume)
 {
-    __asm__ __volatile__ (
-
-	"tstl	%2\n"
-"	beqs	stoploop_s8\n"
-"	moveq	#-128,%%d2\n"
-"	moveq	#127,%%d3\n"
-"mixloop_s8:\n"
-
-	/* Mix a sample */
-
-"	moveq	#0,%%d0\n"
-"	moveq	#0,%%d1\n"
-
-"	moveb	%1@+,%%d0\n"	/* d0 = *src++ */
-"	muls	%3,%%d0\n"	/* d0 *= volume (0<=volume<=128) */
-"	moveb	%0@,%%d1\n"	/* d1 = *dst */
-"	asr	#7,%%d0\n"	/* d0 /= 128 (SDL_MIX_MAXVOLUME) */
-
-"	add	%%d1,%%d0\n"
-
-"	cmp	%%d2,%%d0\n"
-"	bges	lower_limit_s8\n"
-"	move	%%d2,%%d0\n"
-"lower_limit_s8:\n"
-
-"	cmp	%%d3,%%d0\n"
-"	bles	upper_limit_s8\n"
-"	move	%%d3,%%d0\n"
-"upper_limit_s8:\n"
-"	moveb	%%d0,%0@+\n"
-
-	/* Loop till done */
-
-"	subql	#1,%2\n"
-"	bhis	mixloop_s8\n"
-"stoploop_s8:\n"
-
-	 : /* no return value */
-	 : /* input */
-	 	"a"(dst), "a"(src), "d"(len), "d"(volume)	
-	 : /* clobbered registers */
-	 	"d0", "d1", "d2", "d3", "cc", "memory" 
-	 );
+    __asm__ __volatile__ ("tstl	%2\n"
+                          "	beqs	stoploop_s8\n"
+                          "	moveq	#-128,%%d2\n"
+                          "	moveq	#127,%%d3\n" "mixloop_s8:\n"
+                          /* Mix a sample */
+                          "	moveq	#0,%%d0\n" "	moveq	#0,%%d1\n" "	moveb	%1@+,%%d0\n"    /* d0 = *src++ */
+                          "	muls	%3,%%d0\n"      /* d0 *= volume (0<=volume<=128) */
+                          "	moveb	%0@,%%d1\n"     /* d1 = *dst */
+                          "	asr	#7,%%d0\n"      /* d0 /= 128 (SDL_MIX_MAXVOLUME) */
+                          "	add	%%d1,%%d0\n"
+                          "	cmp	%%d2,%%d0\n"
+                          "	bges	lower_limit_s8\n"
+                          "	move	%%d2,%%d0\n"
+                          "lower_limit_s8:\n"
+                          "	cmp	%%d3,%%d0\n"
+                          "	bles	upper_limit_s8\n"
+                          "	move	%%d3,%%d0\n"
+                          "upper_limit_s8:\n" "	moveb	%%d0,%0@+\n"
+                          /* Loop till done */
+                          "	subql	#1,%2\n" "	bhis	mixloop_s8\n" "stoploop_s8:\n": /* no return value */
+                          :     /* input */
+                          "a" (dst), "a" (src), "d" (len), "d" (volume):        /* clobbered registers */
+                          "d0", "d1", "d2", "d3", "cc", "memory");
 }
 
-void SDL_MixAudio_m68k_S16MSB(short* dst, short* src, long len, long volume)
+void
+SDL_MixAudio_m68k_S16MSB (short *dst, short *src, long len, long volume)
 {
-    __asm__ __volatile__ (
-
-	"tstl	%2\n"
-"	beqs	stoploop_s16msb\n"
-"	movel	#-32768,%%d2\n"
-"	movel	#32767,%%d3\n"
-"	lsrl	#1,%2\n"
-"mixloop_s16msb:\n"
-
-	/* Mix a sample */
-
-"	move	%1@+,%%d0\n"	/* d0 = *src++ */
-"	muls	%3,%%d0\n"	/* d0 *= volume (0<=volume<=128) */
-"	move	%0@,%%d1\n"	/* d1 = *dst */
-"	extl	%%d1\n"		/* extend d1 to 32 bits */
-"	asrl	#7,%%d0\n"	/* d0 /= 128 (SDL_MIX_MAXVOLUME) */
-
-"	addl	%%d1,%%d0\n"
-
-"	cmpl	%%d2,%%d0\n"
-"	bges	lower_limit_s16msb\n"
-"	move	%%d2,%%d0\n"
-"lower_limit_s16msb:\n"
-
-"	cmpl	%%d3,%%d0\n"
-"	bles	upper_limit_s16msb\n"
-"	move	%%d3,%%d0\n"
-"upper_limit_s16msb:\n"
-"	move	%%d0,%0@+\n"
-
-	/* Loop till done */
-
-"	subql	#1,%2\n"
-"	bhis	mixloop_s16msb\n"
-"stoploop_s16msb:\n"
-
-	 : /* no return value */
-	 : /* input */
-	 	"a"(dst), "a"(src), "d"(len), "d"(volume)	
-	 : /* clobbered registers */
-	 	"d0", "d1", "d2", "d3", "cc", "memory" 
-	 );
+    __asm__ __volatile__ ("tstl	%2\n"
+                          "	beqs	stoploop_s16msb\n"
+                          "	movel	#-32768,%%d2\n"
+                          "	movel	#32767,%%d3\n"
+                          "	lsrl	#1,%2\n" "mixloop_s16msb:\n"
+                          /* Mix a sample */
+                          "	move	%1@+,%%d0\n"    /* d0 = *src++ */
+                          "	muls	%3,%%d0\n"      /* d0 *= volume (0<=volume<=128) */
+                          "	move	%0@,%%d1\n"     /* d1 = *dst */
+                          "	extl	%%d1\n" /* extend d1 to 32 bits */
+                          "	asrl	#7,%%d0\n"      /* d0 /= 128 (SDL_MIX_MAXVOLUME) */
+                          "	addl	%%d1,%%d0\n"
+                          "	cmpl	%%d2,%%d0\n"
+                          "	bges	lower_limit_s16msb\n"
+                          "	move	%%d2,%%d0\n"
+                          "lower_limit_s16msb:\n"
+                          "	cmpl	%%d3,%%d0\n"
+                          "	bles	upper_limit_s16msb\n"
+                          "	move	%%d3,%%d0\n"
+                          "upper_limit_s16msb:\n" "	move	%%d0,%0@+\n"
+                          /* Loop till done */
+                          "	subql	#1,%2\n" "	bhis	mixloop_s16msb\n" "stoploop_s16msb:\n": /* no return value */
+                          :     /* input */
+                          "a" (dst), "a" (src), "d" (len), "d" (volume):        /* clobbered registers */
+                          "d0", "d1", "d2", "d3", "cc", "memory");
 }
 
-void SDL_MixAudio_m68k_S16LSB(short* dst, short* src, long len, long volume)
+void
+SDL_MixAudio_m68k_S16LSB (short *dst, short *src, long len, long volume)
 {
-    __asm__ __volatile__ (
-
-	"tstl	%2\n"
-"	beqs	stoploop_s16lsb\n"
-"	movel	#-32768,%%d2\n"
-"	movel	#32767,%%d3\n"
-"	lsrl	#1,%2\n"
-"mixloop_s16lsb:\n"
-
-	/* Mix a sample */
-
-"	move	%1@+,%%d0\n"	/* d0 = *src++ */
-"	rorw	#8,%%d0\n"
-"	muls	%3,%%d0\n"	/* d0 *= volume (0<=volume<=128) */
-"	move	%0@,%%d1\n"	/* d1 = *dst */
-"	rorw	#8,%%d1\n"
-"	extl	%%d1\n"		/* extend d1 to 32 bits */
-"	asrl	#7,%%d0\n"	/* d0 /= 128 (SDL_MIX_MAXVOLUME) */
-
-"	addl	%%d1,%%d0\n"
-
-"	cmpl	%%d2,%%d0\n"
-"	bges	lower_limit_s16lsb\n"
-"	move	%%d2,%%d0\n"
-"lower_limit_s16lsb:\n"
-
-"	cmpl	%%d3,%%d0\n"
-"	bles	upper_limit_s16lsb\n"
-"	move	%%d3,%%d0\n"
-"upper_limit_s16lsb:\n"
-"	rorw	#8,%%d0\n"
-"	move	%%d0,%0@+\n"
-
-	/* Loop till done */
-
-"	subql	#1,%2\n"
-"	bhis	mixloop_s16lsb\n"
-"stoploop_s16lsb:\n"
-
-	 : /* no return value */
-	 : /* input */
-	 	"a"(dst), "a"(src), "d"(len), "d"(volume)	
-	 : /* clobbered registers */
-	 	"d0", "d1", "d2", "d3", "cc", "memory" 
-	 );
+    __asm__ __volatile__ ("tstl	%2\n"
+                          "	beqs	stoploop_s16lsb\n"
+                          "	movel	#-32768,%%d2\n"
+                          "	movel	#32767,%%d3\n"
+                          "	lsrl	#1,%2\n" "mixloop_s16lsb:\n"
+                          /* Mix a sample */
+                          "	move	%1@+,%%d0\n"    /* d0 = *src++ */
+                          "	rorw	#8,%%d0\n" "	muls	%3,%%d0\n"      /* d0 *= volume (0<=volume<=128) */
+                          "	move	%0@,%%d1\n"     /* d1 = *dst */
+                          "	rorw	#8,%%d1\n" "	extl	%%d1\n" /* extend d1 to 32 bits */
+                          "	asrl	#7,%%d0\n"      /* d0 /= 128 (SDL_MIX_MAXVOLUME) */
+                          "	addl	%%d1,%%d0\n"
+                          "	cmpl	%%d2,%%d0\n"
+                          "	bges	lower_limit_s16lsb\n"
+                          "	move	%%d2,%%d0\n"
+                          "lower_limit_s16lsb:\n"
+                          "	cmpl	%%d3,%%d0\n"
+                          "	bles	upper_limit_s16lsb\n"
+                          "	move	%%d3,%%d0\n"
+                          "upper_limit_s16lsb:\n"
+                          "	rorw	#8,%%d0\n" "	move	%%d0,%0@+\n"
+                          /* Loop till done */
+                          "	subql	#1,%2\n" "	bhis	mixloop_s16lsb\n" "stoploop_s16lsb:\n": /* no return value */
+                          :     /* input */
+                          "a" (dst), "a" (src), "d" (len), "d" (volume):        /* clobbered registers */
+                          "d0", "d1", "d2", "d3", "cc", "memory");
 }
 #endif
-
+/* vi: set ts=4 sw=4 expandtab: */