---- SDL-1.2.7/src/audio/SDL_mixer_MMX.c.orig 2002-11-09 07:13:28.000000000 +0100
-+++ SDL-1.2.7/src/audio/SDL_mixer_MMX.c 2004-03-05 19:44:10.874116112 +0100
+diff -uNr SDL-1.2.7.orig/src/audio/SDL_mixer_MMX.c SDL-1.2.7/src/audio/SDL_mixer_MMX.c
+--- SDL-1.2.7.orig/src/audio/SDL_mixer_MMX.c 2002-11-09 07:13:28.000000000 +0100
++++ SDL-1.2.7/src/audio/SDL_mixer_MMX.c 2004-03-08 19:07:00.538098528 +0100
@@ -14,7 +14,9 @@
void SDL_MixAudio_MMX_S16(char* dst,char* src,unsigned int size,int volume)
{
);
}
#endif
---- SDL-1.2.7/src/video/SDL_yuv_mmx.c.orig 2004-02-18 18:22:04.000000000 +0100
-+++ SDL-1.2.7/src/video/SDL_yuv_mmx.c 2004-03-05 20:57:20.332816960 +0100
-@@ -108,7 +108,9 @@
- relative addressing for the static tables, so right now we take the
- COW hit on the pages this code resides. Big deal.
- This spill is just to reduce register pressure in the PIC case. */
-+#ifdef __PIC__
- "pushl %%ebx\n"
-+#endif
- "movl %0, %%ebx\n"
-
- ".align 8\n"
-@@ -235,11 +237,15 @@
- "cmpl %7, %2\n"
- "jl 1b\n"
- "emms\n"
-+#ifdef __PIC__
- "popl %%ebx\n"
-+#endif
- :
- : "m" (cr), "r"(cb),"r"(lum),
- "r"(row1),"r"(cols),"r"(row2),"m"(x),"m"(y),"m"(mod)
-+#ifndef __PIC__
- : "%ebx"
-+#endif
- );
- }
-
-@@ -259,7 +265,9 @@
-
-
- __asm__ __volatile__(
-+#ifdef __PIC__
- "pushl %%ebx\n"
-+#endif
- "movl %0, %%ebx\n"
-
- ".align 8\n"
-@@ -410,11 +418,15 @@
- "cmpl %7, %2\n"
- "jl 1b\n"
- "emms\n"
-+#ifdef __PIC__
- "popl %%ebx\n"
-+#endif
- :
- :"m" (cr), "r"(cb),"r"(lum),
- "r"(row1),"r"(cols),"r"(row2),"m"(x),"m"(y),"m"(mod)
-+#ifndef __PIC__
- : "%ebx"
-+#endif
- );
- }
-
---- SDL-1.2.7/src/cpuinfo/SDL_cpuinfo.c.orig 2004-02-10 16:31:35.000000000 +0100
-+++ SDL-1.2.7/src/cpuinfo/SDL_cpuinfo.c 2004-03-05 21:04:58.747127392 +0100
+diff -uNr SDL-1.2.7.orig/src/cpuinfo/SDL_cpuinfo.c SDL-1.2.7/src/cpuinfo/SDL_cpuinfo.c
+--- SDL-1.2.7.orig/src/cpuinfo/SDL_cpuinfo.c 2004-02-10 16:31:35.000000000 +0100
++++ SDL-1.2.7/src/cpuinfo/SDL_cpuinfo.c 2004-03-08 19:07:00.540098224 +0100
@@ -105,6 +105,9 @@
int features = 0;
#if defined(__GNUC__) && defined(i386)
);
#elif defined(_MSC_VER)
__asm {
+diff -uNr SDL-1.2.7.orig/src/video/SDL_yuv_mmx.c SDL-1.2.7/src/video/SDL_yuv_mmx.c
+--- SDL-1.2.7.orig/src/video/SDL_yuv_mmx.c 2004-02-18 18:22:04.000000000 +0100
++++ SDL-1.2.7/src/video/SDL_yuv_mmx.c 2004-03-08 19:05:31.000000000 +0100
+@@ -36,29 +36,29 @@
+ #define ASM_VAR(X) X
+ #endif
+
+-static unsigned int ASM_VAR(MMX_0080w)[] = {0x00800080, 0x00800080};
+-static unsigned int ASM_VAR(MMX_00FFw)[] = {0x00ff00ff, 0x00ff00ff};
+-static unsigned int ASM_VAR(MMX_FF00w)[] = {0xff00ff00, 0xff00ff00};
+-
+-static unsigned short ASM_VAR(MMX_Ycoeff)[] = {0x004a, 0x004a, 0x004a, 0x004a};
+-
+-static unsigned short ASM_VAR(MMX_UbluRGB)[] = {0x0072, 0x0072, 0x0072, 0x0072};
+-static unsigned short ASM_VAR(MMX_VredRGB)[] = {0x0059, 0x0059, 0x0059, 0x0059};
+-static unsigned short ASM_VAR(MMX_UgrnRGB)[] = {0xffea, 0xffea, 0xffea, 0xffea};
+-static unsigned short ASM_VAR(MMX_VgrnRGB)[] = {0xffd2, 0xffd2, 0xffd2, 0xffd2};
+-
+-static unsigned short ASM_VAR(MMX_Ublu5x5)[] = {0x0081, 0x0081, 0x0081, 0x0081};
+-static unsigned short ASM_VAR(MMX_Vred5x5)[] = {0x0066, 0x0066, 0x0066, 0x0066};
+-static unsigned short ASM_VAR(MMX_Ugrn555)[] = {0xffe7, 0xffe7, 0xffe7, 0xffe7};
+-static unsigned short ASM_VAR(MMX_Vgrn555)[] = {0xffcc, 0xffcc, 0xffcc, 0xffcc};
+-static unsigned short ASM_VAR(MMX_Ugrn565)[] = {0xffe8, 0xffe8, 0xffe8, 0xffe8};
+-static unsigned short ASM_VAR(MMX_Vgrn565)[] = {0xffcd, 0xffcd, 0xffcd, 0xffcd};
+-
+-static unsigned short ASM_VAR(MMX_red555)[] = {0x7c00, 0x7c00, 0x7c00, 0x7c00};
+-static unsigned short ASM_VAR(MMX_red565)[] = {0xf800, 0xf800, 0xf800, 0xf800};
+-static unsigned short ASM_VAR(MMX_grn555)[] = {0x03e0, 0x03e0, 0x03e0, 0x03e0};
+-static unsigned short ASM_VAR(MMX_grn565)[] = {0x07e0, 0x07e0, 0x07e0, 0x07e0};
+-static unsigned short ASM_VAR(MMX_blu5x5)[] = {0x001f, 0x001f, 0x001f, 0x001f};
++unsigned int ASM_VAR(MMX_0080w)[] = {0x00800080, 0x00800080};
++unsigned int ASM_VAR(MMX_00FFw)[] = {0x00ff00ff, 0x00ff00ff};
++unsigned int ASM_VAR(MMX_FF00w)[] = {0xff00ff00, 0xff00ff00};
++
++unsigned short ASM_VAR(MMX_Ycoeff)[] = {0x004a, 0x004a, 0x004a, 0x004a};
++
++unsigned short ASM_VAR(MMX_UbluRGB)[] = {0x0072, 0x0072, 0x0072, 0x0072};
++unsigned short ASM_VAR(MMX_VredRGB)[] = {0x0059, 0x0059, 0x0059, 0x0059};
++unsigned short ASM_VAR(MMX_UgrnRGB)[] = {0xffea, 0xffea, 0xffea, 0xffea};
++unsigned short ASM_VAR(MMX_VgrnRGB)[] = {0xffd2, 0xffd2, 0xffd2, 0xffd2};
++
++unsigned short ASM_VAR(MMX_Ublu5x5)[] = {0x0081, 0x0081, 0x0081, 0x0081};
++unsigned short ASM_VAR(MMX_Vred5x5)[] = {0x0066, 0x0066, 0x0066, 0x0066};
++unsigned short ASM_VAR(MMX_Ugrn555)[] = {0xffe7, 0xffe7, 0xffe7, 0xffe7};
++unsigned short ASM_VAR(MMX_Vgrn555)[] = {0xffcc, 0xffcc, 0xffcc, 0xffcc};
++unsigned short ASM_VAR(MMX_Ugrn565)[] = {0xffe8, 0xffe8, 0xffe8, 0xffe8};
++unsigned short ASM_VAR(MMX_Vgrn565)[] = {0xffcd, 0xffcd, 0xffcd, 0xffcd};
++
++unsigned short ASM_VAR(MMX_red555)[] = {0x7c00, 0x7c00, 0x7c00, 0x7c00};
++unsigned short ASM_VAR(MMX_red565)[] = {0xf800, 0xf800, 0xf800, 0xf800};
++unsigned short ASM_VAR(MMX_grn555)[] = {0x03e0, 0x03e0, 0x03e0, 0x03e0};
++unsigned short ASM_VAR(MMX_grn565)[] = {0x07e0, 0x07e0, 0x07e0, 0x07e0};
++unsigned short ASM_VAR(MMX_blu5x5)[] = {0x001f, 0x001f, 0x001f, 0x001f};
+
+ /**
+ This MMX assembler is my first assembler/MMX program ever.
+@@ -108,7 +108,9 @@
+ relative addressing for the static tables, so right now we take the
+ COW hit on the pages this code resides. Big deal.
+ This spill is just to reduce register pressure in the PIC case. */
++#ifdef __PIC__
+ "pushl %%ebx\n"
++#endif
+ "movl %0, %%ebx\n"
+
+ ".align 8\n"
+@@ -235,11 +237,15 @@
+ "cmpl %7, %2\n"
+ "jl 1b\n"
+ "emms\n"
++#ifdef __PIC__
+ "popl %%ebx\n"
++#endif
+ :
+ : "m" (cr), "r"(cb),"r"(lum),
+ "r"(row1),"r"(cols),"r"(row2),"m"(x),"m"(y),"m"(mod)
++#ifndef __PIC__
+ : "%ebx"
++#endif
+ );
+ }
+
+@@ -259,7 +265,9 @@
+
+
+ __asm__ __volatile__(
++#ifdef __PIC__
+ "pushl %%ebx\n"
++#endif
+ "movl %0, %%ebx\n"
+
+ ".align 8\n"
+@@ -410,11 +418,15 @@
+ "cmpl %7, %2\n"
+ "jl 1b\n"
+ "emms\n"
++#ifdef __PIC__
+ "popl %%ebx\n"
++#endif
+ :
+ :"m" (cr), "r"(cb),"r"(lum),
+ "r"(row1),"r"(cols),"r"(row2),"m"(x),"m"(y),"m"(mod)
++#ifndef __PIC__
+ : "%ebx"
++#endif
+ );
+ }
+