summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-01-03 22:05:03 +0000
committerMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-01-03 22:05:03 +0000
commit9b4c89d96993cb82c75655cf2529ab032317f36c (patch)
treeec7c74c156705b30b348c2b17cccd8f02eae8636
parent725a7a2631013ae00b8d363069331446eaff4273 (diff)
downloadxine-lib-9b4c89d96993cb82c75655cf2529ab032317f36c.tar.gz
xine-lib-9b4c89d96993cb82c75655cf2529ab032317f36c.tar.bz2
bad code, trying to fix.
CVS patchset: 3763 CVS date: 2003/01/03 22:05:03
-rw-r--r--src/post/goom/ifs_display.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/post/goom/ifs_display.c b/src/post/goom/ifs_display.c
index 9c43ff5dd..657a74063 100644
--- a/src/post/goom/ifs_display.c
+++ b/src/post/goom/ifs_display.c
@@ -1,5 +1,6 @@
#include "ifs.h"
#include "goom_config.h"
+#include "xineutils.h"
extern volatile int use_asm;
@@ -9,13 +10,15 @@ ifs_fun_mmx(guint32 * data, guint32 * back, int width, int height,
int increment, int nbpt, IFSPoint *points, int couleursl)
{
int i;
+
+ movd_m2r(couleursl,mm1);
for (i = 0; i < nbpt; i += increment) {
int x = points[i].x;
int y = points[i].y;
if ((x < width) && (y < height) && (x > 0) && (y > 0)) {
int pos = x + (y * width);
- register int b asm ("eax");
+/* register int b asm ("eax");
b = back[pos];
__asm__
@@ -27,6 +30,10 @@ ifs_fun_mmx(guint32 * data, guint32 * back, int width, int height,
"::
"edx" (couleursl));
data[pos] = b;
+*/
+ movd_m2r(back[pos],mm0);
+ paddusb_r2r(mm1,mm0);
+ movd_r2m(mm0,data[pos]);
}
}
__asm__ __volatile__ ("emms");