diff options
| author | Max Horn | 2011-04-12 16:53:15 +0200 |
|---|---|---|
| committer | Max Horn | 2011-04-12 16:53:15 +0200 |
| commit | 0ce2ca4e006a70d787481040fa844c85aac43222 (patch) | |
| tree | 25fb61d7e7165ec2570ecf14a4af52e9bdb6b176 /engines/kyra | |
| parent | a8b3501252c46c3fc4fd129fa0a945eb87f47d0a (diff) | |
| download | scummvm-rg350-0ce2ca4e006a70d787481040fa844c85aac43222.tar.gz scummvm-rg350-0ce2ca4e006a70d787481040fa844c85aac43222.tar.bz2 scummvm-rg350-0ce2ca4e006a70d787481040fa844c85aac43222.zip | |
COMMON: Replace MKID_BE by MKTAG
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.
Diffstat (limited to 'engines/kyra')
| -rw-r--r-- | engines/kyra/resource_intern.cpp | 2 | ||||
| -rw-r--r-- | engines/kyra/saveload.cpp | 14 | ||||
| -rw-r--r-- | engines/kyra/script.cpp | 6 | ||||
| -rw-r--r-- | engines/kyra/script.h | 4 | ||||
| -rw-r--r-- | engines/kyra/script_tim.cpp | 4 | ||||
| -rw-r--r-- | engines/kyra/vqa.cpp | 42 |
6 files changed, 36 insertions, 36 deletions
diff --git a/engines/kyra/resource_intern.cpp b/engines/kyra/resource_intern.cpp index f26cb8fb26..1dc084f14d 100644 --- a/engines/kyra/resource_intern.cpp +++ b/engines/kyra/resource_intern.cpp @@ -356,7 +356,7 @@ Common::Archive *ResLoaderPak::load(Common::ArchiveMemberPtr memberFile, Common: const uint32 magic = stream.readUint32BE(); - if (magic != MKID_BE('SCVM')) + if (magic != MKTAG('S','C','V','M')) error("LINKLIST file does not contain 'SCVM' header"); const uint32 links = stream.readUint32BE(); diff --git a/engines/kyra/saveload.cpp b/engines/kyra/saveload.cpp index cd5ef52b92..44579c3377 100644 --- a/engines/kyra/saveload.cpp +++ b/engines/kyra/saveload.cpp @@ -47,13 +47,13 @@ KyraEngine_v1::kReadSaveHeaderError KyraEngine_v1::readSaveHeader(Common::Seekab header.flags = 0; header.thumbnail = 0; - if (type == MKID_BE('KYRA') || type == MKID_BE('ARYK')) { // old Kyra1 header ID + if (type == MKTAG('K','Y','R','A') || type == MKTAG('A','R','Y','K')) { // old Kyra1 header ID header.gameID = GI_KYRA1; header.oldHeader = true; - } else if (type == MKID_BE('HOFS')) { // old Kyra2 header ID + } else if (type == MKTAG('H','O','F','S')) { // old Kyra2 header ID header.gameID = GI_KYRA2; header.oldHeader = true; - } else if (type == MKID_BE('WWSV')) { + } else if (type == MKTAG('W','W','S','V')) { header.gameID = in->readByte(); } else { // try checking for original save header @@ -71,12 +71,12 @@ KyraEngine_v1::kReadSaveHeaderError KyraEngine_v1::readSaveHeader(Common::Seekab type = in->readUint32BE(); header.version = in->readUint16LE(); - if (type == MKID_BE('MBL3') && header.version == 100) { + if (type == MKTAG('M','B','L','3') && header.version == 100) { saveOk = true; header.description = descriptionBuffer; header.gameID = GI_KYRA2; break; - } else if (type == MKID_BE('MBL4') && header.version == 102) { + } else if (type == MKTAG('M','B','L','4') && header.version == 102) { saveOk = true; header.description = descriptionBuffer; header.gameID = GI_KYRA3; @@ -94,7 +94,7 @@ KyraEngine_v1::kReadSaveHeaderError KyraEngine_v1::readSaveHeader(Common::Seekab } header.version = in->readUint32BE(); - if (header.version > CURRENT_SAVE_VERSION || (header.oldHeader && header.version > 8) || (type == MKID_BE('ARYK') && header.version > 3)) + if (header.version > CURRENT_SAVE_VERSION || (header.oldHeader && header.version > 8) || (type == MKTAG('A','R','Y','K') && header.version > 3)) return kRSHEInvalidVersion; // Versions prior to 9 are using a fixed length description field @@ -190,7 +190,7 @@ Common::WriteStream *KyraEngine_v1::openSaveForWriting(const char *filename, con } // Savegame version - out->writeUint32BE(MKID_BE('WWSV')); + out->writeUint32BE(MKTAG('W','W','S','V')); out->writeByte(_flags.gameID); out->writeUint32BE(CURRENT_SAVE_VERSION); out->write(saveName, strlen(saveName)+1); diff --git a/engines/kyra/script.cpp b/engines/kyra/script.cpp index 0343cbfeae..956bf39b5a 100644 --- a/engines/kyra/script.cpp +++ b/engines/kyra/script.cpp @@ -68,14 +68,14 @@ EMCInterpreter::EMCInterpreter(KyraEngine_v1 *vm) : _vm(vm), _scriptData(0), _fi bool EMCInterpreter::callback(Common::IFFChunk &chunk) { switch (chunk._type) { - case MKID_BE('TEXT'): + case MKTAG('T','E','X','T'): _scriptData->text = new byte[chunk._size]; assert(_scriptData->text); if (chunk._stream->read(_scriptData->text, chunk._size) != chunk._size) error("Couldn't read TEXT chunk from file '%s'", _filename); break; - case MKID_BE('ORDR'): + case MKTAG('O','R','D','R'): _scriptData->ordr = new uint16[chunk._size >> 1]; assert(_scriptData->ordr); if (chunk._stream->read(_scriptData->ordr, chunk._size) != chunk._size) @@ -85,7 +85,7 @@ bool EMCInterpreter::callback(Common::IFFChunk &chunk) { _scriptData->ordr[i] = READ_BE_UINT16(&_scriptData->ordr[i]); break; - case MKID_BE('DATA'): + case MKTAG('D','A','T','A'): _scriptData->data = new uint16[chunk._size >> 1]; assert(_scriptData->data); if (chunk._stream->read(_scriptData->data, chunk._size) != chunk._size) diff --git a/engines/kyra/script.h b/engines/kyra/script.h index 68620829bb..faa80a3f21 100644 --- a/engines/kyra/script.h +++ b/engines/kyra/script.h @@ -84,9 +84,9 @@ public: // Both lead to some problems in our IFF parser, either reading after the end // of file or producing a "Chunk overread" error message. To work around this // we need to adjust the size field properly. - if (_formType == MKID_BE('EMC2')) + if (_formType == MKTAG('E','M','C','2')) _formChunk.size -= 8; - else if (_formType == MKID_BE('AVFS')) + else if (_formType == MKTAG('A','V','F','S')) _formChunk.size += 4; } }; diff --git a/engines/kyra/script_tim.cpp b/engines/kyra/script_tim.cpp index 28f18a1f79..1e978caf15 100644 --- a/engines/kyra/script_tim.cpp +++ b/engines/kyra/script_tim.cpp @@ -115,14 +115,14 @@ TIMInterpreter::~TIMInterpreter() { bool TIMInterpreter::callback(Common::IFFChunk &chunk) { switch (chunk._type) { - case MKID_BE('TEXT'): + case MKTAG('T','E','X','T'): _tim->text = new byte[chunk._size]; assert(_tim->text); if (chunk._stream->read(_tim->text, chunk._size) != chunk._size) error("Couldn't read TEXT chunk from file '%s'", _filename); break; - case MKID_BE('AVTL'): + case MKTAG('A','V','T','L'): _avtlChunkSize = chunk._size >> 1; _tim->avtl = new uint16[_avtlChunkSize]; assert(_tim->avtl); diff --git a/engines/kyra/vqa.cpp b/engines/kyra/vqa.cpp index 382ec2429d..b3371793de 100644 --- a/engines/kyra/vqa.cpp +++ b/engines/kyra/vqa.cpp @@ -204,7 +204,7 @@ bool VQAMovie::open(const char *filename) { if (!_file) return false; - if (_file->readUint32BE() != MKID_BE('FORM')) { + if (_file->readUint32BE() != MKTAG('F','O','R','M')) { warning("VQAMovie::open: Cannot find `FORM' tag"); return false; } @@ -212,7 +212,7 @@ bool VQAMovie::open(const char *filename) { // For now, we ignore the size of the FORM chunk. _file->readUint32BE(); - if (_file->readUint32BE() != MKID_BE('WVQA')) { + if (_file->readUint32BE() != MKTAG('W','V','Q','A')) { warning("WQAMovie::open: Cannot find `WVQA' tag"); return false; } @@ -228,7 +228,7 @@ bool VQAMovie::open(const char *filename) { uint32 size = _file->readUint32BE(); switch (tag) { - case MKID_BE('VQHD'): // VQA header + case MKTAG('V','Q','H','D'): // VQA header _header.version = _file->readUint16LE(); _header.flags = _file->readUint16LE(); _header.numFrames = _file->readUint16LE(); @@ -304,7 +304,7 @@ bool VQAMovie::open(const char *filename) { foundHeader = true; break; - case MKID_BE('FINF'): // Frame info + case MKTAG('F','I','N','F'): // Frame info if (!foundHeader) { warning("VQAMovie::open: Found `FINF' before `VQHD'"); return false; @@ -343,7 +343,7 @@ bool VQAMovie::open(const char *filename) { if (_file->eos()) break; - if (scanTag == MKID_BE('VQFR')) { + if (scanTag == MKTAG('V','Q','F','R')) { _frameInfo[0] = (_file->pos() - 8) | 0x80000000; break; } @@ -421,7 +421,7 @@ void VQAMovie::displayFrame(uint frameNum) { int32 end; switch (tag) { - case MKID_BE('SND0'): // Uncompressed sound + case MKTAG('S','N','D','0'): // Uncompressed sound foundSound = true; inbuf = (byte *)malloc(size); _file->read(inbuf, size); @@ -429,7 +429,7 @@ void VQAMovie::displayFrame(uint frameNum) { _stream->queueBuffer(inbuf, size, DisposeAfterUse::YES, Audio::FLAG_UNSIGNED); break; - case MKID_BE('SND1'): // Compressed sound, almost like AUD + case MKTAG('S','N','D','1'): // Compressed sound, almost like AUD foundSound = true; outsize = _file->readUint16LE(); insize = _file->readUint16LE(); @@ -449,13 +449,13 @@ void VQAMovie::displayFrame(uint frameNum) { } break; - case MKID_BE('SND2'): // Compressed sound + case MKTAG('S','N','D','2'): // Compressed sound foundSound = true; warning("VQAMovie::displayFrame: `SND2' is not implemented"); _file->seek(size, SEEK_CUR); break; - case MKID_BE('VQFR'): + case MKTAG('V','Q','F','R'): foundFrame = true; end = _file->pos() + size - 8; @@ -464,49 +464,49 @@ void VQAMovie::displayFrame(uint frameNum) { size = _file->readUint32BE(); switch (tag) { - case MKID_BE('CBF0'): // Full codebook + case MKTAG('C','B','F','0'): // Full codebook _file->read(_codeBook, size); break; - case MKID_BE('CBFZ'): // Full codebook + case MKTAG('C','B','F','Z'): // Full codebook inbuf = (byte *)allocBuffer(0, size); _file->read(inbuf, size); Screen::decodeFrame4(inbuf, _codeBook, _codeBookSize); break; - case MKID_BE('CBP0'): // Partial codebook + case MKTAG('C','B','P','0'): // Partial codebook _compressedCodeBook = false; _file->read(_partialCodeBook + _partialCodeBookSize, size); _partialCodeBookSize += size; _numPartialCodeBooks++; break; - case MKID_BE('CBPZ'): // Partial codebook + case MKTAG('C','B','P','Z'): // Partial codebook _compressedCodeBook = true; _file->read(_partialCodeBook + _partialCodeBookSize, size); _partialCodeBookSize += size; _numPartialCodeBooks++; break; - case MKID_BE('CPL0'): // Palette + case MKTAG('C','P','L','0'): // Palette assert(size <= 3 * 256); _file->read(_screen->getPalette(0).getData(), size); break; - case MKID_BE('CPLZ'): // Palette + case MKTAG('C','P','L','Z'): // Palette inbuf = (byte *)allocBuffer(0, size); _file->read(inbuf, size); Screen::decodeFrame4(inbuf, _screen->getPalette(0).getData(), 768); break; - case MKID_BE('VPT0'): // Frame data + case MKTAG('V','P','T','0'): // Frame data assert(size / 2 <= _numVectorPointers); for (i = 0; i < size / 2; i++) _vectorPointers[i] = _file->readUint16LE(); break; - case MKID_BE('VPTZ'): // Frame data + case MKTAG('V','P','T','Z'): // Frame data inbuf = (byte *)allocBuffer(0, size); outbuf = (byte *)allocBuffer(1, 2 * _numVectorPointers); @@ -613,13 +613,13 @@ void VQAMovie::play() { } switch (tag) { - case MKID_BE('SND0'): // Uncompressed sound + case MKTAG('S','N','D','0'): // Uncompressed sound inbuf = (byte *)malloc(size); _file->read(inbuf, size); _stream->queueBuffer(inbuf, size, DisposeAfterUse::YES, Audio::FLAG_UNSIGNED); break; - case MKID_BE('SND1'): // Compressed sound + case MKTAG('S','N','D','1'): // Compressed sound outsize = _file->readUint16LE(); insize = _file->readUint16LE(); @@ -636,12 +636,12 @@ void VQAMovie::play() { } break; - case MKID_BE('SND2'): // Compressed sound + case MKTAG('S','N','D','2'): // Compressed sound warning("VQAMovie::play: `SND2' is not implemented"); _file->seek(size, SEEK_CUR); break; - case MKID_BE('CMDS'): // Unused tag, always empty in kyra3 + case MKTAG('C','M','D','S'): // Unused tag, always empty in kyra3 _file->seek(size, SEEK_CUR); break; |
