aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorNipun Garg2019-05-28 14:04:24 +0530
committerEugene Sandulenko2019-09-03 17:16:41 +0200
commit6a764f4252ab0705dce47e722ba112ba88c6cc50 (patch)
tree5788dfd81014c40247ff4c8789a3720a8989092f /engines
parente0d42fd044830fe95b7219a3c545aa92fec49f5c (diff)
downloadscummvm-rg350-6a764f4252ab0705dce47e722ba112ba88c6cc50.tar.gz
scummvm-rg350-6a764f4252ab0705dce47e722ba112ba88c6cc50.tar.bz2
scummvm-rg350-6a764f4252ab0705dce47e722ba112ba88c6cc50.zip
HDB: Fix Code Conventions and Formatting errors
Diffstat (limited to 'engines')
-rw-r--r--engines/hdb/file-manager.cpp70
-rw-r--r--engines/hdb/file-manager.h26
2 files changed, 49 insertions, 47 deletions
diff --git a/engines/hdb/file-manager.cpp b/engines/hdb/file-manager.cpp
index 5b3c9963aa..1530c64d12 100644
--- a/engines/hdb/file-manager.cpp
+++ b/engines/hdb/file-manager.cpp
@@ -33,49 +33,53 @@ bool FileMan::openMSD(const Common::String &filename) {
if (!_msdFile->open(filename)) {
error("FileMan::openMSD(): Error reading the MSD file");
return false;
- } else {
- dataHeader.id[0] = _msdFile->readByte();
- dataHeader.id[1] = _msdFile->readByte();
- dataHeader.id[2] = _msdFile->readByte();
- dataHeader.id[3] = _msdFile->readByte();
-
- if (!strncmp(dataHeader.id, MSD_IDENT_COMPRESSED, 4)) {
- _compressed = true;
- debug("COMPRESSED FILE");
- return false;
- } else if (!strncmp(dataHeader.id, MSD_IDENT_UNCOMPRESSED, 4)) {
- _compressed = false;
-
- offset = _msdFile->readUint32LE();
- _msdFile->seek((int32)offset, SEEK_SET);
+ }
- // Note: The MPC archive format assumes the offset to be uint32,
- // but Common::File::seek() takes the offset as int32.
+ _msdFile->read(&dataHeader.id, 4);
+
+ if (dataHeader.id == MKTAG('M', 'P', 'C', 'C')) {
+ _compressed = true;
+ debug("COMPRESSED FILE");
+ return false;
+ }
+ else if (dataHeader.id == MKTAG('M', 'P', 'C', 'U')) {
+ _compressed = false;
- dataHeader.dirSize = _msdFile->readUint32LE();
+ offset = _msdFile->readUint32LE();
+ _msdFile->seek((int32)offset, SEEK_SET);
- for (uint32 fileIndex = 0; fileIndex < dataHeader.dirSize; fileIndex++) {
- MSDEntry* dirEntry = new MSDEntry();
+ // Note: The MPC archive format assumes the offset to be uint32,
+ // but Common::File::seek() takes the offset as int32.
- for (int fileNameIndex = 0; fileNameIndex < 64; fileNameIndex++) {
- dirEntry->filename[fileNameIndex] = _msdFile->readByte();
- }
+ dataHeader.dirSize = _msdFile->readUint32LE();
- dirEntry->offset = _msdFile->readUint32LE();
- dirEntry->length = _msdFile->readUint32LE();
- dirEntry->ulength = _msdFile->readUint32LE();
- dirEntry->type = (DataType)_msdFile->readUint32LE();
+ for (uint32 fileIndex = 0; fileIndex < dataHeader.dirSize; fileIndex++) {
+ MSDEntry *dirEntry = new MSDEntry();
- _dir.push_back(dirEntry);
+ for (int fileNameIndex = 0; fileNameIndex < 64; fileNameIndex++) {
+ dirEntry->filename[fileNameIndex] = _msdFile->readByte();
}
- return true;
+ dirEntry->offset = _msdFile->readUint32LE();
+ dirEntry->length = _msdFile->readUint32LE();
+ dirEntry->ulength = _msdFile->readUint32LE();
+ dirEntry->type = (DataType)_msdFile->readUint32LE();
- } else {
- error("Invalid MPC File.");
- return false;
+ _dir.push_back(dirEntry);
}
+
+ return true;
+
}
+
+ error("Invalid MPC File.");
+ return false;
+
+}
+
+void FileMan::closeMSD() {
+ _dir.clear();
+ _msdFile->close();
}
-} \ No newline at end of file
+} // End of Namespace HDB
diff --git a/engines/hdb/file-manager.h b/engines/hdb/file-manager.h
index b0f9ccc63e..5b754cd981 100644
--- a/engines/hdb/file-manager.h
+++ b/engines/hdb/file-manager.h
@@ -44,9 +44,9 @@ enum DataType {
struct MSDEntry {
char filename[64]; // filename
- long offset; // offset in MSD file of data
- long length; // compressed length of data
- long ulength; // uncompressed length
+ int32 offset; // offset in MSD file of data
+ int32 length; // compressed length of data
+ int32 ulength; // uncompressed length
DataType type; // type of data
};
@@ -55,7 +55,7 @@ struct MSDEntry {
// gfx data follows the structure in the .msd
// The imagesize will always be 2048 bytes (32*32*2)
struct Tile32Type {
- long flags; // bit flags
+ int32 flags; // bit flags
char name[64]; // name of graphic
};
@@ -81,33 +81,31 @@ struct FontType {
// each character in a font has width info and
// an offset from the beginning of the font chunk
struct CharInfo {
- short width; // in pixels, of the character
- long offset; // from the start of the font charInfo chunk
+ int16 width; // in pixels, of the character
+ int32 offset; // from the start of the font charInfo chunk
};
class FileMan {
private:
- Common::File* _msdFile;
- Common::Array<MSDEntry*> _dir;
- MSDEntry* _dirEntry;
+ Common::File *_msdFile;
+ Common::Array<MSDEntry *> _dir;
int _numEntries;
bool _compressed;
public:
struct {
- char id[4];
- unsigned long dirSize;
+ uint32 id;
+ uint32 dirSize;
} dataHeader;
long readOffset;
bool openMSD(const Common::String &filename);
-};
+ void closeMSD();
-#define MSD_IDENT_COMPRESSED "MPCC"
-#define MSD_IDENT_UNCOMPRESSED "MPCU"
+};
} // End of Namespace HDB