diff options
author | James Brown | 2002-05-06 15:32:32 +0000 |
---|---|---|
committer | James Brown | 2002-05-06 15:32:32 +0000 |
commit | 21e14b44c53b483a098b3b3c0182d2546e9c979c (patch) | |
tree | cdaafc867c41e57c5937340547d7d0190eedc3dd | |
parent | 1dc2ccca8dc47422b7637600b22b987b6cac8ec2 (diff) | |
download | scummvm-rg350-21e14b44c53b483a098b3b3c0182d2546e9c979c.tar.gz scummvm-rg350-21e14b44c53b483a098b3b3c0182d2546e9c979c.tar.bz2 scummvm-rg350-21e14b44c53b483a098b3b3c0182d2546e9c979c.zip |
Add raw PCM part to dig .bun decompressor.
svn-id: r4219
-rw-r--r-- | akos.cpp | 2 | ||||
-rw-r--r-- | insane.cpp | 12 | ||||
-rw-r--r-- | saveload.cpp | 5 | ||||
-rw-r--r-- | scummvm.cpp | 1 | ||||
-rw-r--r-- | smush.h | 2 | ||||
-rw-r--r-- | sound.cpp | 4 |
6 files changed, 17 insertions, 9 deletions
@@ -434,7 +434,7 @@ void akos_c1_spec1(AkosRenderer * ar) || !((mask[0] | mask[ar->v1.imgbufoffs]) & maskbit))) { pcolor = ar->palette[color]; if (pcolor == 13) - pcolor = ar->shadow_table[*dst]; + pcolor = ar->shadow_table[*dst]; *dst = pcolor; } mask += 40; diff --git a/insane.cpp b/insane.cpp index 87bcddbddb..a931cf38a3 100644 --- a/insane.cpp +++ b/insane.cpp @@ -130,6 +130,16 @@ void SmushPlayer::parseAHDR() } +void SmushPlayer::parseIACT() { + unsigned char *src = _cur; + int size, codec; + _cur-=8; /* Move back to beginning of IACT block */ + + _cur+=4; size = READ_BE_UINT32(_cur) - 18; + _cur+=10; codec = READ_LE_UINT16(_cur); + + _cur = src; +} void SmushPlayer::parseNPAL() { @@ -692,7 +702,7 @@ void SmushPlayer::parseFRME() parseXPAL(); break; case 'IACT': - parseTRES(); + parseIACT(); break; case 'STOR': case 'FTCH': diff --git a/saveload.cpp b/saveload.cpp index 34d7014e38..8855623413 100644 --- a/saveload.cpp +++ b/saveload.cpp @@ -606,10 +606,9 @@ void Scumm::saveOrLoad(Serializer * s) s->saveLoadArrayOf(actor, NUM_ACTORS, sizeof(actor[0]), actorEntries); - if (_current_version < VER_V9) { - printf("Loading pre-v9\n"); + if (_current_version < VER_V9) s->saveLoadArrayOf(vm.slot, 25, sizeof(vm.slot[0]), scriptSlotEntries); - } else + else s->saveLoadArrayOf(vm.slot, NUM_SCRIPT_SLOT, sizeof(vm.slot[0]), scriptSlotEntries); s->saveLoadArrayOf(_objs, _numLocalObjects, sizeof(_objs[0]), objectEntries); diff --git a/scummvm.cpp b/scummvm.cpp index cebc26634c..e729e17210 100644 --- a/scummvm.cpp +++ b/scummvm.cpp @@ -892,7 +892,6 @@ void Scumm::processKbd() _vars[VAR_CHARINC] = _defaultTalkDelay / 20; } - _mouseButStat = _lastKeyHit; } @@ -82,7 +82,7 @@ struct SmushPlayer { void parsePSAD(); void parseTRES(); void parseXPAL(); - + void parseIACT(); void fileRead(void *mem, int len); uint32 nextBE32(); @@ -722,8 +722,8 @@ void Scumm::decompressBundleSound(int index) { switch(table[i].codec) { case 0: - warning("Unimplemented bundle codec 1"); - outputSize = 0; + outputSize = table[i].size; + memcpy(&CompOutput[0], &CompInput[0], outputSize); break; case 1: |