[Scummvm-cvs-logs] CVS: scummvm/scumm/smush chunk.cpp,1.22,1.23 insane.cpp,1.17,1.18 insane.h,1.11,1.12 smush_player.cpp,1.73,1.74
Eugene Sandulenko
sev at users.sourceforge.net
Thu Dec 18 15:01:02 CET 2003
Update of /cvsroot/scummvm/scummvm/scumm/smush
In directory sc8-pr-cvs1:/tmp/cvs-serv798/scumm/smush
Modified Files:
chunk.cpp insane.cpp insane.h smush_player.cpp
Log Message:
o Merged some variables into array, so simplifying the code
o Fix bugs
o Some mineroad support
Index: chunk.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/smush/chunk.cpp,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- chunk.cpp 15 Dec 2003 00:40:24 -0000 1.22
+++ chunk.cpp 18 Dec 2003 23:00:10 -0000 1.23
@@ -191,8 +191,7 @@
void FileChunk::reinit() {
_data->seek(0);
- _offset = sizeof(Chunk::type) + sizeof(uint32);
- _curPos = 0;
+ _offset = 0;
_type = _data->readUint32BE();
_size = _data->readUint32BE();
_curPos = 0;
Index: insane.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/smush/insane.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- insane.cpp 16 Dec 2003 21:35:30 -0000 1.17
+++ insane.cpp 18 Dec 2003 23:00:10 -0000 1.18
@@ -166,6 +166,7 @@
_weaponBenJustSwitched = false;
_kickEnemyProgress = false;
_weaponEnemyJustSwitched = false;
+ _beenCheated = 0;
_val11d = 0;
_val32d = -1;
_val51d = 0;
@@ -189,53 +190,6 @@
_val122_ = false;
_val123_ = false;
_val124_ = false;
[...1300 lines suppressed...]
void Insane::smlayer_setActorFacing(int actornum, int actnum, int frame, int direction) {
@@ -7723,6 +7972,9 @@
byte *tmp = fluPtr;
int32 offset;
+ debug(0, "smush_setupSanWithFlu(%s, %d, %d, %d, %d, %lx, %d)", filename, setupsan2,
+ step1, step2, setupsan1, fluPtr, numFrames);
+
_smush_setupsan1 = setupsan1;
/* skip FLUP marker */
@@ -7771,7 +8023,7 @@
}
void Insane::smush_setupSanFile(const char *filename, int32 offset) {
- debug(0, "smush_setupSanFile(%s, %d)", filename, offset);
+ debug(0, "smush_setupSanFile(%s, %x)", filename, offset);
_player->seekSan(filename, _scumm->getGameDataPath(), offset);
Index: insane.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/smush/insane.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- insane.h 16 Dec 2003 21:35:30 -0000 1.11
+++ insane.h 18 Dec 2003 23:00:10 -0000 1.12
@@ -124,82 +124,7 @@
int32 _battleScene;
bool _kickEnemyProgress;
bool _weaponEnemyJustSwitched;
- int32 _val8d;
- byte _val10b;
- int32 _val11d;
- int32 _val32d;
- int32 _val50d;
- int32 _val51d;
- int32 _val52d;
- int32 _val53d;
- int32 _val54d;
- int32 _val55d;
- int32 _val56d;
- int32 _val57d;
- int16 _val109w;
- int16 _val110w;
- int16 _val111w;
- int16 _val112w;
- int32 _val113d;
- int32 _val114d16[16];
- int16 _val115w;
- int16 _val116w;
- bool _val119_;
- bool _val120_;
- bool _val121_;
- bool _val122_;
- bool _val123_;
- bool _val124_;
- int32 _val128d;
- byte _val130b;
- int16 _val131w;
- int16 _val132w;
- int16 _val133w;
- int16 _val134w;
- int16 _val135w;
- int16 _val136w;
- byte _val140b;
- int16 _val141w;
- int16 _val142w;
- int16 _val143w;
- int16 _val144w;
- int16 _val145w;
- int16 _val146w;
- byte _val150b;
- int16 _val151w;
- int16 _val152w;
- int16 _val153w;
- int16 _val154w;
- int16 _val155w;
- int16 _val156w;
- byte _val160b;
- int16 _val161w;
- int16 _val162w;
- int16 _val163w;
- int16 _val164w;
- int16 _val165w;
- int16 _val166w;
- int16 _val167w;
- int16 _val168w;
- byte _val170b;
- int16 _val171w;
- int16 _val172w;
- int16 _val173w;
- int16 _val174w;
- int16 _val175w;
- int16 _val176w;
- int32 _val180d;
- byte _val181b;
- byte _val182b;
- int32 _val183d;
- int32 _val190d;
- int16 _val191w;
- int32 _val200d;
- int32 _val201d;
- byte _val202b;
- int32 _val211d;
- int32 _val212_;
- int32 _val213d;
+ int32 _enHdlVar[9][9];
int32 _trsFilePtr; // FIXME: we don't need it
int32 _smlayer_room;
int32 _smlayer_room2;
@@ -236,6 +161,37 @@
int16 _smush_frameNum2;
byte _smush_earlyFluContents[0x31a];
int16 _enemyState[9][10];
+ byte _iactBits[0x80];
+ int32 _val8d;
+ byte _val10b;
+ int32 _val11d;
+ int32 _val32d;
+ int32 _val50d;
+ int32 _val51d;
+ int32 _val52d;
+ int32 _val53d;
+ int32 _val54d;
+ int32 _val55d;
+ int32 _val56d;
+ int32 _val57d;
+ int16 _val109w;
+ int16 _val110w;
+ int16 _val111w;
+ int16 _val112w;
+ int32 _val113d;
+ int32 _val114d16[16];
+ int16 _val115w;
+ int16 _val116w;
+ bool _val119_;
+ bool _val120_;
+ bool _val121_;
+ bool _val122_;
+ bool _val123_;
+ bool _val124_;
+ int32 _val128d;
+ int32 _val211d;
+ int32 _val212_;
+ int32 _val213d;
struct enemy {
@@ -259,7 +215,7 @@
struct fluConf {
int sceneId;
- byte *fluPtr;
+ byte **fluPtr;
const char *filenamePtr;
int startFrame;
int numFrames;
@@ -444,10 +400,10 @@
void smlayer_showStatusMsg(int32 arg_0, byte *renderBitmap, int32 codecparam,
int32 x, int32 y, int32 arg_14, int32 arg_18,
int32 arg_1C, const char *formatString, char *str);
- void init_fluConfStruct(int n, int sceneId, byte *fluPtr,
+ void init_fluConfStruct(int n, int sceneId, byte **fluPtr,
const char *filenamePtr, int startFrame, int numFrames);
- int32 func10(bool flag);
- void func11(int32 arg_0);
+ int32 processBenOnRoad(bool flag);
+ void mineChooseRoad(int32 arg_0);
void actor02Reaction(int32 buttons);
void actor00Reaction(int32 buttons);
void actor01Reaction(int32 buttons);
@@ -515,6 +471,9 @@
void iactScene21(byte *renderBitmap, int32 codecparam, int32 setupsan12,
int32 setupsan13, Chunk &b, int32 size, int32 flags);
bool isBitSet(int n);
+ void setBit(int n);
+ void clearBit(int n);
+ void proc62(void);
};
} // End of namespace Insane
Index: smush_player.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/smush/smush_player.cpp,v
retrieving revision 1.73
retrieving revision 1.74
diff -u -d -r1.73 -r1.74
--- smush_player.cpp 16 Dec 2003 21:35:30 -0000 1.73
+++ smush_player.cpp 18 Dec 2003 23:00:10 -0000 1.74
@@ -323,7 +323,7 @@
}
void SmushPlayer::handleSoundBuffer(int32 track_id, int32 index, int32 max_frames, int32 flags, int32 vol, int32 bal, Chunk &b, int32 size) {
- debug(6, "SmushPlayer::handleSoundBuffer(%d)", track_id);
+ debug(6, "SmushPlayer::handleSoundBuffer(%d, %d)", track_id, index);
// if ((flags & 128) == 128) {
// return;
// }
@@ -389,6 +389,7 @@
void SmushPlayer::handleImuseBuffer(int32 track_id, int32 index, int32 nbframes, int32 size, int32 unk1, int32 track_flags, Chunk &b, int32 bsize) {
int32 track = (track_flags << 16) | track_id;
+ debug(6, "SmushPlayer::handleImuseBuffer(%d, %d)", track_id, index);
SmushChannel *c = _smixer->findChannel(track);
if (c == 0) {
@@ -897,6 +898,7 @@
_scumm->_videoFinished = true;
return;
}
+
Chunk *sub = _base->subBlock();
switch (sub->getType()) {
@@ -904,7 +906,7 @@
handleFrame(*sub);
break;
default:
- error("Unknown Chunk found : %d, %d", sub->getType(), sub->getSize());
+ error("Unknown Chunk found at %x: %d, %d", _base->tell(), sub->getType(), sub->getSize());
}
delete sub;
}
@@ -1003,8 +1005,10 @@
checkBlock(*sub, TYPE_AHDR);
handleAnimHeader(*sub);
- if (pos != 8)
+ if (pos != 8) {
+ _base->reinit();
_base->seek(pos, FileChunk::seek_start);
+ }
// FIXME: is this really applicable for FLU files? HACK
_frame = 0;
More information about the Scummvm-git-logs
mailing list