[Scummvm-cvs-logs] CVS: scummvm/bs2 router.cpp,1.8,1.9
Max Horn
fingolfin at users.sourceforge.net
Fri Sep 12 17:20:12 CEST 2003
Update of /cvsroot/scummvm/scummvm/bs2
In directory sc8-pr-cvs1:/tmp/cvs-serv27551
Modified Files:
router.cpp
Log Message:
endian fix for walk data
Index: router.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/bs2/router.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- router.cpp 12 Sep 2003 23:22:45 -0000 1.8
+++ router.cpp 13 Sep 2003 00:19:39 -0000 1.9
@@ -1007,7 +1007,6 @@
modularPath[slidy].dir = 9;
modularPath[slidy].num = ROUTE_END_FLAG;
return 1;
-
}
//****************************************************************************
@@ -2646,17 +2645,28 @@
uint32 frameCounter = 0; // starts at frame 0 of mega set (16sep96 JEL)
- nWalkFrames = ob_walkdata->nWalkFrames;
- usingStandingTurnFrames = ob_walkdata->usingStandingTurnFrames;
- usingWalkingTurnFrames = ob_walkdata->usingWalkingTurnFrames;
- usingSlowInFrames = ob_walkdata->usingSlowInFrames;
- usingSlowOutFrames = ob_walkdata->usingSlowOutFrames;
+ nWalkFrames = FROM_LE_32(ob_walkdata->nWalkFrames);
+ usingStandingTurnFrames = FROM_LE_32(ob_walkdata->usingStandingTurnFrames);
+ usingWalkingTurnFrames = FROM_LE_32(ob_walkdata->usingWalkingTurnFrames);
+ usingSlowInFrames = FROM_LE_32(ob_walkdata->usingSlowInFrames);
+ usingSlowOutFrames = FROM_LE_32(ob_walkdata->usingSlowOutFrames);
numberOfSlowOutFrames = usingSlowOutFrames; // 0 = not using slow out frames; non-zero = using that many frames for each leading leg for each direction
memcpy(&numberOfSlowInFrames[0],ob_walkdata->nSlowInFrames,NO_DIRECTIONS*sizeof(numberOfSlowInFrames[0]));
memcpy(&leadingLeg[0],ob_walkdata->leadingLeg,NO_DIRECTIONS*sizeof(leadingLeg[0]));
memcpy(&dx[0],ob_walkdata->dx,NO_DIRECTIONS*(nWalkFrames+1)*sizeof(dx[0]));
memcpy(&dy[0],ob_walkdata->dy,NO_DIRECTIONS*(nWalkFrames+1)*sizeof(dy[0]));
+
+#ifdef SCUMM_BIG_ENDIAN
+ for (direction=0; direction<NO_DIRECTIONS; direction++) {
+ numberOfSlowInFrames[direction] = SWAP_BYTES_32(numberOfSlowInFrames[direction]);
+ leadingLeg[direction] = SWAP_BYTES_32(leadingLeg[direction]);
+ }
+ for (walkFrameNo = 0; walkFrameNo < NO_DIRECTIONS*(nWalkFrames+1); walkFrameNo++) {
+ dx[walkFrameNo] = SWAP_BYTES_32(dx[walkFrameNo]);
+ dy[walkFrameNo] = SWAP_BYTES_32(dy[walkFrameNo]);
+ }
+#endif
//---------------------------------------------------------
More information about the Scummvm-git-logs
mailing list