aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/hopkins/anim.cpp171
-rw-r--r--engines/hopkins/anim.h3
-rw-r--r--engines/hopkins/graphics.cpp102
-rw-r--r--engines/hopkins/graphics.h3
-rw-r--r--engines/hopkins/objects.cpp40
-rw-r--r--engines/hopkins/sound.cpp8
-rw-r--r--engines/hopkins/sound.h2
7 files changed, 299 insertions, 30 deletions
diff --git a/engines/hopkins/anim.cpp b/engines/hopkins/anim.cpp
index 97a0aad250..5273fcde1e 100644
--- a/engines/hopkins/anim.cpp
+++ b/engines/hopkins/anim.cpp
@@ -993,4 +993,175 @@ void AnimationManager::RECHERCHE_ANIM(const byte *data, int idx, int nbytes) {
} while (v21 <= nbytes && !doneFlag);
}
+void AnimationManager::PLAY_SEQ(int a1, const Common::String &a2, uint32 a3, uint32 a4, uint32 a5) {
+ int v5;
+ int v7;
+ byte *ptr;
+ byte *v9;
+ byte *v10;
+ int v12;
+ int v13;
+ int v14;
+ int v15;
+ int v16;
+ int v17;
+ char v18;
+ size_t nbytes;
+ int buf;
+ char v22;
+ Common::File f;
+
+ v7 = 0;
+ v14 = 0;
+ v13 = 0;
+ v16 = 0;
+ v15 = 0;
+ v17 = 1;
+ _vm->_eventsManager.souris_flag = 0;
+ if (!NO_COUL) {
+ _vm->_eventsManager.VBL();
+ FileManager::CONSTRUIT_LINUX("TEMP.SCR");
+ if (_vm->_graphicsManager.nbrligne == SCREEN_WIDTH)
+ FileManager::SAUVE_FICHIER(_vm->_globals.NFICHIER, _vm->_graphicsManager.VESA_SCREEN, 0x4B000u);
+ if (_vm->_graphicsManager.nbrligne == (SCREEN_WIDTH * 2))
+ FileManager::SAUVE_FICHIER(_vm->_globals.NFICHIER, _vm->_graphicsManager.VESA_SCREEN, 0x96000u);
+ if (!_vm->_graphicsManager.nbrligne)
+ _vm->_graphicsManager.ofscroll = 0;
+ }
+ v9 = _vm->_graphicsManager.VESA_SCREEN;
+ v10 = _vm->_globals.dos_malloc2(0x16u);
+ FileManager::CONSTRUIT_FICHIER(_vm->_globals.HOPSEQ, a2);
+ if (!f.open(_vm->_globals.NFICHIER))
+ error("Error opening file - %s", _vm->_globals.NFICHIER);
+
+ f.read(&buf, 6u);
+ f.read(_vm->_graphicsManager.Palette, 0x320u);
+ f.read(&buf, 4u);
+ nbytes = f.readUint32LE();
+ v18 = f.readUint32LE();
+ v17 = f.readUint16LE();
+ v16 = f.readUint16LE();
+ v15 = f.readUint16LE();
+ v14 = f.readUint16LE();
+ v13 = f.readUint16LE();
+ f.read(v9, nbytes);
+
+ if (_vm->_graphicsManager.WinScan / _vm->_graphicsManager.Winbpp > SCREEN_WIDTH) {
+ v7 = 1;
+ ptr = _vm->_globals.dos_malloc2(0x4B000u);
+ memcpy(ptr, v9, 0x4B000u);
+ }
+ if (_vm->_animationManager.NO_SEQ) {
+ if (v7 == 1)
+ memcpy(ptr, _vm->_graphicsManager.VESA_BUFFER, 0x4B000u);
+ _vm->_graphicsManager.setpal_vga256(_vm->_graphicsManager.Palette);
+ } else {
+ _vm->_graphicsManager.DD_Lock();
+ if (_vm->_graphicsManager.Winbpp == 2) {
+ if (v7)
+ _vm->_graphicsManager.m_scroll16A(ptr, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
+ else
+ _vm->_graphicsManager.m_scroll16(v9, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
+ }
+ if (_vm->_graphicsManager.Winbpp == 1) {
+ if (v7)
+ _vm->_graphicsManager.m_scroll2A(ptr, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
+ else
+ _vm->_graphicsManager.m_scroll2(v9, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
+ }
+ _vm->_graphicsManager.DD_Unlock();
+ _vm->_graphicsManager.DD_VBL();
+ }
+ _vm->_eventsManager.lItCounter = 0;
+ _vm->_eventsManager.ESC_KEY = 0;
+ _vm->_soundManager.LOAD_ANM_SOUND();
+ if (_vm->_globals.iRegul == 1) {
+ do {
+ if (_vm->_eventsManager.ESC_KEY == 1) {
+ if (!_vm->_eventsManager.NOESC)
+ goto LABEL_59;
+ _vm->_eventsManager.ESC_KEY = 0;
+ }
+ _vm->_eventsManager.CONTROLE_MES();
+ _vm->_soundManager.VERIF_SOUND();
+ } while (_vm->_eventsManager.lItCounter < a3);
+ }
+ _vm->_eventsManager.lItCounter = 0;
+ v5 = 0;
+ v12 = 0;
+ do {
+ ++v12;
+ _vm->_soundManager.PLAY_ANM_SOUND(v12);
+ memset(&buf, 0, 6u);
+ memset(v10, 0, 0x13u);
+ if (f.read(v10, 16) != 16)
+ v5 = -1;
+
+ if (strncmp((const char *)v10, "IMAGE=", 7))
+ v5 = -1;
+ if (!v5) {
+ f.read(v9, READ_LE_UINT16(v10 + 8));
+ if (_vm->_globals.iRegul == 1) {
+ do {
+ if (_vm->_eventsManager.ESC_KEY == 1) {
+ if (!_vm->_eventsManager.NOESC)
+ goto LABEL_59;
+ _vm->_eventsManager.ESC_KEY = 0;
+ }
+ _vm->_eventsManager.CONTROLE_MES();
+ _vm->_soundManager.VERIF_SOUND();
+ } while (_vm->_eventsManager.lItCounter < a4);
+ }
+ _vm->_eventsManager.lItCounter = 0;
+ _vm->_graphicsManager.DD_Lock();
+ if (v7) {
+ if (*v9 != -4) {
+ _vm->_graphicsManager.Copy_WinScan_Vbe(v9, ptr);
+ if (_vm->_graphicsManager.Winbpp == 2)
+ _vm->_graphicsManager.m_scroll16A(ptr, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
+ else
+ _vm->_graphicsManager.m_scroll2A(ptr, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
+ }
+ } else if (*v9 != -4) {
+ if (_vm->_graphicsManager.Winbpp == 1)
+ _vm->_graphicsManager.Copy_Video_Vbe(v9);
+ if (_vm->_graphicsManager.Winbpp == 2)
+ _vm->_graphicsManager.Copy_Video_Vbe16a(v9);
+ }
+ _vm->_graphicsManager.DD_Unlock();
+ _vm->_graphicsManager.DD_VBL();
+ _vm->_soundManager.VERIF_SOUND();
+ }
+ } while (v5 != -1);
+ if (_vm->_globals.iRegul == 1) {
+ do {
+ if (_vm->_eventsManager.ESC_KEY == 1) {
+ if (!_vm->_eventsManager.NOESC)
+ goto LABEL_59;
+ _vm->_eventsManager.ESC_KEY = 0;
+ }
+ _vm->_eventsManager.CONTROLE_MES();
+ _vm->_soundManager.VERIF_SOUND();
+ } while (_vm->_eventsManager.lItCounter < a5);
+ }
+ _vm->_eventsManager.lItCounter = 0;
+LABEL_59:
+ _vm->_graphicsManager.NOLOCK = 0;
+ f.close();
+
+ if (!NO_COUL) {
+ FileManager::CONSTRUIT_LINUX("TEMP.SCR");
+ FileManager::bload(_vm->_globals.NFICHIER, _vm->_graphicsManager.VESA_SCREEN);
+ _vm->_eventsManager.souris_flag = 1;
+ }
+ if (v7 == 1)
+ _vm->_globals.dos_free2(ptr);
+ _vm->_globals.dos_free2(v10);
+}
+
+void AnimationManager::PLAY_SEQ2(const Common::String &a1, int a2, int a3, int a4) {
+ warning("PLAY_SEQ2");
+}
+
+
} // End of namespace Hopkins
diff --git a/engines/hopkins/anim.h b/engines/hopkins/anim.h
index 1c4ecb296a..74b002c2dd 100644
--- a/engines/hopkins/anim.h
+++ b/engines/hopkins/anim.h
@@ -39,6 +39,7 @@ public:
HopkinsEngine *_vm;
bool CLS_ANM;
bool NO_SEQ;
+ bool NO_COUL;
public:
AnimationManager();
void setParent(HopkinsEngine *vm) { _vm = vm; }
@@ -49,6 +50,8 @@ public:
void CHARGE_ANIM(const Common::String &animName);
void CLEAR_ANIM();
void RECHERCHE_ANIM(const byte *data, int idx, int nbytes);
+ void PLAY_SEQ(int a1, const Common::String &a2, uint32 a3, uint32 a4, uint32 a5);
+ void PLAY_SEQ2(const Common::String &a1, int a2, int a3, int a4);
};
} // End of namespace Hopkins
diff --git a/engines/hopkins/graphics.cpp b/engines/hopkins/graphics.cpp
index e4a5c1100d..f54649f976 100644
--- a/engines/hopkins/graphics.cpp
+++ b/engines/hopkins/graphics.cpp
@@ -1258,6 +1258,39 @@ void GraphicsManager::Copy_Video_Vbe16(const byte *surface) {
}
}
+void GraphicsManager::Copy_Video_Vbe16a(const byte *surface) {
+ int v2;
+ const byte *v3;
+ unsigned __int8 v4;
+
+ v2 = 0;
+ v3 = surface;
+ for (;;) {
+ v4 = *v3;
+ if (*v3 < 0xFCu)
+ goto Video_Cont_Vbe16a;
+ if (v4 == -4)
+ return;
+ if (v4 == -3) {
+ v2 += *(v3 + 1);
+ v4 = *(v3 + 2);
+ v3 += 2;
+ } else if (v4 == -2) {
+ v2 += READ_LE_UINT16(v3 + 1);
+ v4 = *(v3 + 3);
+ v3 += 3;
+ } else {
+ v2 += READ_LE_UINT32(v3 + 1);
+ v4 = *(v3 + 5);
+ v3 += 5;
+ }
+Video_Cont_Vbe16a:
+ WRITE_LE_UINT16(v2 + v2 + VideoPtr, READ_LE_UINT16(PAL_PIXELS + 2 * v4));
+ ++v3;
+ ++v2;
+ }
+}
+
void GraphicsManager::Capture_Mem(const byte *srcSurface, byte *destSurface, int xs, int ys, unsigned int width, int height) {
const byte *srcP;
byte *destP;
@@ -2411,4 +2444,73 @@ void GraphicsManager::videkey() {
// Empty in original
}
+void GraphicsManager::Copy_WinScan_Vbe(const byte *src, byte *dest) {
+ int result;
+ int destOffset;
+ const byte *srcPtr;
+ byte byteVal;
+
+ result = 0;
+ destOffset = 0;
+ srcPtr = src;
+ while (1) {
+ byteVal = *srcPtr;
+ if (*srcPtr < 0xFCu)
+ goto Video_Cont_wVbe;
+ if (byteVal == (byte)-4)
+ return;
+ if (byteVal == (byte)-3) {
+ destOffset += *(srcPtr + 1);
+ byteVal = *(srcPtr + 2);
+ srcPtr += 2;
+ } else if (byteVal == (byte)-2) {
+ destOffset += READ_LE_UINT16(srcPtr + 1);
+ byteVal = *(srcPtr + 3);
+ srcPtr += 3;
+ } else {
+ destOffset += READ_LE_UINT32(srcPtr + 1);
+ byteVal = *(srcPtr + 5);
+ srcPtr += 5;
+ }
+Video_Cont_wVbe:
+ *(dest + destOffset) = byteVal;
+ ++srcPtr;
+ ++destOffset;
+ }
+}
+
+void GraphicsManager::Copy_Video_Vbe(const byte *src) {
+ int destOffset;
+ const byte *srcP;
+ byte byteVal;
+
+ assert(VideoPtr);
+ destOffset = 0;
+ srcP = src;
+ while (1) {
+ byteVal = *srcP;
+ if (*srcP < 0xFCu)
+ goto Video_Cont_Vbe;
+ if (byteVal == -4)
+ return;
+ if (byteVal == -3) {
+ destOffset += *(srcP + 1);
+ byteVal = *(srcP + 2);
+ srcP += 2;
+ } else if (byteVal == -2) {
+ destOffset += READ_LE_UINT16(srcP + 1);
+ byteVal = *(srcP + 3);
+ srcP += 3;
+ } else {
+ destOffset += READ_LE_UINT32(srcP + 1);
+ byteVal = *(srcP + 5);
+ srcP += 5;
+ }
+Video_Cont_Vbe:
+ *((byte *)VideoPtr->pixels + destOffset) = byteVal;
+ ++srcP;
+ ++destOffset;
+ }
+}
+
} // End of namespace Hopkins
diff --git a/engines/hopkins/graphics.h b/engines/hopkins/graphics.h
index 0622e3678f..59febac9f1 100644
--- a/engines/hopkins/graphics.h
+++ b/engines/hopkins/graphics.h
@@ -146,6 +146,7 @@ public:
void Copy_WinScan_Vbe3(const byte *sourceSurface, byte *destSurface);
void Copy_Video_Vbe3(const byte *surface);
void Copy_Video_Vbe16(const byte *surface);
+ void Copy_Video_Vbe16a(const byte *surface);
void Capture_Mem(const byte *srcSurface, byte *destSurface, int xs, int ys, unsigned int width, int height);
/**
@@ -179,6 +180,8 @@ public:
void NB_SCREEN();
void SHOW_PALETTE();
void videkey();
+ void Copy_WinScan_Vbe(const byte *srcP, byte *destP);
+ void Copy_Video_Vbe(const byte *src);
};
} // End of namespace Hopkins
diff --git a/engines/hopkins/objects.cpp b/engines/hopkins/objects.cpp
index 25d4cde43a..b650c888a7 100644
--- a/engines/hopkins/objects.cpp
+++ b/engines/hopkins/objects.cpp
@@ -4605,7 +4605,7 @@ LABEL_1141:
CLEAR_ECRAN();
_vm->_soundManager.PLAY_SOUND("SOUND17.WAV");
_vm->_graphicsManager.FADE_LINUX = 2;
- _vm->_soundManager.PLAY_SEQ2("HELICO.SEQ", 10, 4, 10);
+ _vm->_animationManager.PLAY_SEQ2("HELICO.SEQ", 10, 4, 10);
_vm->_animationManager.CHARGE_ANIM("otage");
_vm->_graphicsManager.LOAD_IMAGE("IM05");
_vm->_graphicsManager.VISU_ALL();
@@ -4643,7 +4643,7 @@ LABEL_1141:
_vm->_graphicsManager.FIN_VISU();
_vm->_soundManager.SPECIAL_SOUND = 14;
_vm->_graphicsManager.FADE_LINUX = 2;
- _vm->_soundManager.PLAY_SEQ2("ASSOM.SEQ", 10, 4, 500);
+ _vm->_animationManager.PLAY_SEQ2("ASSOM.SEQ", 10, 4, 500);
_vm->_soundManager.SPECIAL_SOUND = 0;
_vm->_globals.DESACTIVE_INVENT = 0;
_vm->_globals.HELICO = 1;
@@ -4666,7 +4666,7 @@ LABEL_1141:
}
if (v76 == 37) {
_vm->_graphicsManager.FADE_LINUX = 2;
- _vm->_soundManager.PLAY_SEQ2("corde.SEQ", 32, 32, 100);
+ _vm->_animationManager.PLAY_SEQ2("corde.SEQ", 32, 32, 100);
_vm->_graphicsManager.NOFADE = 1;
}
if (v76 == 38) {
@@ -4674,7 +4674,7 @@ LABEL_1141:
_vm->_soundManager.CHARGE_SAMPLE(2, "SOUND42.WAV");
_vm->_soundManager.CHARGE_SAMPLE(3, "SOUND41.WAV");
_vm->_soundManager.SPECIAL_SOUND = 17;
- _vm->_soundManager.PLAY_SEQ(v1, "grenade.SEQ", 1, 32, 100);
+ _vm->_animationManager.PLAY_SEQ(v1, "grenade.SEQ", 1, 32, 100);
_vm->_soundManager.SPECIAL_SOUND = 0;
_vm->_graphicsManager.FADE_LINUX = 2;
_vm->_animationManager.PLAY_ANM("CREVE17.ANM", 24, 24, 200);
@@ -5063,11 +5063,11 @@ LABEL_1141:
if (v76 == 90) {
_vm->_soundManager.PLAY_SOUND("SOUND52.WAV");
if (!_vm->_globals.SAUVEGARDE->data[svField186]) {
- _vm->_soundManager.PLAY_SEQ(v1, "CIB5A.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "CIB5A.SEQ", 1, 12, 1);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 155, 29, 0);
}
if (_vm->_globals.SAUVEGARDE->data[svField186] == 1) {
- _vm->_soundManager.PLAY_SEQ(v1, "CIB5C.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "CIB5C.SEQ", 1, 12, 1);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 155, 29, 0);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 329, 87, 2);
}
@@ -5075,11 +5075,11 @@ LABEL_1141:
if (v76 == 91) {
_vm->_soundManager.PLAY_SOUND("SOUND52.WAV");
if (!_vm->_globals.SAUVEGARDE->data[svField186]) {
- _vm->_soundManager.PLAY_SEQ(v1, "CIB5B.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "CIB5B.SEQ", 1, 12, 1);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 155, 29, 5);
}
if (_vm->_globals.SAUVEGARDE->data[svField186] == 1) {
- _vm->_soundManager.PLAY_SEQ(v1, "CIB5D.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "CIB5D.SEQ", 1, 12, 1);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 155, 29, 5);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 283, 160, 6);
}
@@ -5087,11 +5087,11 @@ LABEL_1141:
if (v76 == 92) {
_vm->_soundManager.PLAY_SOUND("SOUND52.WAV");
if (!_vm->_globals.SAUVEGARDE->data[svField184]) {
- _vm->_soundManager.PLAY_SEQ(v1, "CIB6A.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "CIB6A.SEQ", 1, 12, 1);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 155, 29, 0);
}
if (_vm->_globals.SAUVEGARDE->data[svField184] == 1) {
- _vm->_soundManager.PLAY_SEQ(v1, "CIB6C.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "CIB6C.SEQ", 1, 12, 1);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 155, 29, 0);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 293, 139, 3);
}
@@ -5099,11 +5099,11 @@ LABEL_1141:
if (v76 == 93) {
_vm->_soundManager.PLAY_SOUND("SOUND52.WAV");
if (!_vm->_globals.SAUVEGARDE->data[svField184]) {
- _vm->_soundManager.PLAY_SEQ(v1, "CIB6B.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "CIB6B.SEQ", 1, 12, 1);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 155, 29, 5);
}
if (_vm->_globals.SAUVEGARDE->data[svField184] == 1) {
- _vm->_soundManager.PLAY_SEQ(v1, "CIB6D.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "CIB6D.SEQ", 1, 12, 1);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 155, 29, 5);
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 283, 161, 8);
}
@@ -5276,7 +5276,7 @@ LABEL_1141:
if (v76 == 210) {
_vm->_animationManager.NO_SEQ = 1;
_vm->_soundManager.SPECIAL_SOUND = 210;
- _vm->_soundManager.PLAY_SEQ2("SECRET1.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ2("SECRET1.SEQ", 1, 12, 1);
_vm->_soundManager.SPECIAL_SOUND = 0;
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 192, 152, 0);
BOBANIM_ON(9);
@@ -5298,7 +5298,7 @@ LABEL_1141:
_vm->_animationManager.NO_SEQ = 1;
_vm->_globals.NO_VISU = 0;
_vm->_soundManager.SPECIAL_SOUND = 211;
- _vm->_soundManager.PLAY_SEQ(v1, "SECRET2.SEQ", 1, 12, 100);
+ _vm->_animationManager.PLAY_SEQ(v1, "SECRET2.SEQ", 1, 12, 100);
_vm->_soundManager.SPECIAL_SOUND = 0;
_vm->_animationManager.NO_SEQ = 0;
_vm->_graphicsManager.NOFADE = 1;
@@ -5320,7 +5320,7 @@ LABEL_1141:
if (_vm->_globals.SAUVEGARDE->data[svField6] != _vm->_globals.SAUVEGARDE->data[svField401]) {
_vm->_soundManager.SPECIAL_SOUND = 208;
_vm->_eventsManager.NOESC = true;
- _vm->_soundManager.PLAY_SEQ(v1, "SORT.SEQ", 10, 4, 10);
+ _vm->_animationManager.PLAY_SEQ(v1, "SORT.SEQ", 10, 4, 10);
_vm->_eventsManager.NOESC = false;
_vm->_soundManager.SPECIAL_SOUND = 0;
}
@@ -5461,7 +5461,7 @@ LABEL_1141:
}
if (v76 == 229) {
_vm->_soundManager.SPECIAL_SOUND = 229;
- _vm->_soundManager.PLAY_SEQ(v1, "MUR.SEQ", 1, 12, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "MUR.SEQ", 1, 12, 1);
_vm->_soundManager.SPECIAL_SOUND = 0;
_vm->_graphicsManager.AFFICHE_SPEED(_vm->_globals.SPRITE_ECRAN, 340, 157, 2);
}
@@ -5891,7 +5891,7 @@ LABEL_1141:
_vm->_soundManager._vm->_soundManager.PLAY_SOUND("SOUND88.WAV");
if (_vm->_globals.SAUVEGARDE->data[svField341] == 2) {
_vm->_animationManager.NO_SEQ = 1;
- _vm->_soundManager.PLAY_SEQ(v1, "RESU.SEQ", 2, 24, 2);
+ _vm->_animationManager.PLAY_SEQ(v1, "RESU.SEQ", 2, 24, 2);
_vm->_animationManager.NO_SEQ = 0;
} else {
OPTI_ONE(7, 0, 14, 0);
@@ -5900,7 +5900,7 @@ LABEL_1141:
if (v76 == 242) {
_vm->_soundManager.PLAY_SOUND("SOUND87.WAV");
_vm->_animationManager.NO_SEQ = 1;
- _vm->_soundManager.PLAY_SEQ(v1, "RESUF.SEQ", 1, 24, 1);
+ _vm->_animationManager.PLAY_SEQ(v1, "RESUF.SEQ", 1, 24, 1);
_vm->_animationManager.NO_SEQ = 0;
v53 = &_vm->_globals.SAUVEGARDE->field380;
v53->field0 = 404;
@@ -5936,7 +5936,7 @@ LABEL_1141:
PERSO_ON = 1;
_vm->_graphicsManager.NB_SCREEN();
_vm->_animationManager.NO_SEQ = 1;
- _vm->_soundManager.PLAY_SEQ2("TUNNEL.SEQ", 1, 18, 20);
+ _vm->_animationManager.PLAY_SEQ2("TUNNEL.SEQ", 1, 18, 20);
_vm->_animationManager.NO_SEQ = 0;
_vm->_graphicsManager.NOFADE = 1;
_vm->_graphicsManager.FADE_OUTW();
@@ -7522,7 +7522,7 @@ void ObjectsManager::PERSONAGE(const Common::String &s1, const Common::String &s
_vm->_globals.BPP_NOAFF = 0;
_vm->_graphicsManager.FADE_INW();
if (_vm->_globals.ECRAN == 61) {
- _vm->_soundManager.PLAY_SEQ(0, "OUVRE.SEQ", 10, 4, 10);
+ _vm->_animationManager.PLAY_SEQ(0, "OUVRE.SEQ", 10, 4, 10);
BOBANIM_OFF(3);
_vm->_globals.NOT_VERIF = 1;
g_old_x = XSPR(0);
diff --git a/engines/hopkins/sound.cpp b/engines/hopkins/sound.cpp
index b138ee36ba..9b58f42d18 100644
--- a/engines/hopkins/sound.cpp
+++ b/engines/hopkins/sound.cpp
@@ -92,14 +92,6 @@ void SoundManager::PLAY_SAMPLE2(int idx) {
warning("PLAY_SAMPLE2");
}
-void SoundManager::PLAY_SEQ(int a1, const Common::String &a2, int a3, int a4, int a5) {
- warning("PLAY_SEQ");
-}
-
-void SoundManager::PLAY_SEQ2(const Common::String &a1, int a2, int a3, int a4) {
- warning("PLAY_SEQ2");
-}
-
void SoundManager::PLAY_WAV(int a1) {
warning("PLAY_WAV");
}
diff --git a/engines/hopkins/sound.h b/engines/hopkins/sound.h
index d962233f73..ea7151f564 100644
--- a/engines/hopkins/sound.h
+++ b/engines/hopkins/sound.h
@@ -64,8 +64,6 @@ public:
void MODSetMusicVolume(int volume);
void CHARGE_SAMPLE(int a1, const Common::String &file);
void PLAY_SAMPLE2(int idx);
- void PLAY_SEQ(int a1, const Common::String &a2, int a3, int a4, int a5);
- void PLAY_SEQ2(const Common::String &a1, int a2, int a3, int a4);
void PLAY_WAV(int a1);
};