Fix endian problem in xform_PLUT_step (bug #137)

git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@965 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
gewlitys
2003-05-19 23:13:30 +00:00
parent 48988b741a
commit 2c35fa93d9
2 changed files with 5 additions and 18 deletions
+1
View File
@@ -1,4 +1,5 @@
Changes towards version 0.3:
- Fix endian problem in colormap transform code (bug #137) -Mika
- Fix minor glitch in planet coarse scan (bug #238), from chmmravatar
- Wav loader is now endian safe (bug #165) -Mika
- Dialogue patch for Melnorme, fixing bug #335
+4 -18
View File
@@ -25,6 +25,7 @@
#include "options.h"
#include "comm.h"
#include "libs/sound/sound.h"
#include "endian.h"
void InitOscilloscope (int x, int y, int width, int height, FRAME_DESC *f);
void SetSliderImage (void *f);
@@ -572,18 +573,8 @@ xform_PLUT_step (SIZE TDelta)
float f = (control->TOrig - control->TTotal) / (float)control->TOrig;
COLORMAPPTR oldmap = (COLORMAPPTR) pOldCMap;
v0 = MAKE_DWORD
(
MAKE_WORD (oldmap[3], oldmap[2]),
MAKE_WORD (oldmap[1], oldmap[0])
);
v1 = MAKE_DWORD
(
MAKE_WORD (ColorMapPtr[3], ColorMapPtr[2]),
MAKE_WORD (ColorMapPtr[1], ColorMapPtr[0])
);
v0 = UQM_SwapBE32 (*(DWORD *)oldmap);
v1 = UQM_SwapBE32 (*(DWORD *)ColorMapPtr);
ColorMapPtr += sizeof (DWORD);
@@ -618,12 +609,7 @@ xform_PLUT_step (SIZE TDelta)
val = (val << 5) | (c0 & 0x1F);
*pOldCMap++;
*pCurCMap++ = MAKE_DWORD
(
MAKE_WORD ((val >> 24 ) & 0xff, (val >> 16) & 0xff),
MAKE_WORD ((val >> 8 ) & 0xff, (val >> 0 ) & 0xff)
);
*pCurCMap++ = UQM_SwapBE32 (val);
}
ColorChange = TRUE;
}