aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Bacca2002-05-01 00:13:03 +0000
committerNicolas Bacca2002-05-01 00:13:03 +0000
commiteda81d39ffc6753ac1a4b53f6f9c75dd80ff3245 (patch)
treed1ca07bbda58598fea3611cddf5c736124f62083
parente18a256b768efdf684e399093843385604c915b2 (diff)
downloadscummvm-rg350-eda81d39ffc6753ac1a4b53f6f9c75dd80ff3245.tar.gz
scummvm-rg350-eda81d39ffc6753ac1a4b53f6f9c75dd80ff3245.tar.bz2
scummvm-rg350-eda81d39ffc6753ac1a4b53f6f9c75dd80ff3245.zip
Fixed packing for non GCC compilers - Loom & Zak work on WinCE now
svn-id: r4151
-rw-r--r--boxes.h8
-rw-r--r--gfx.h8
-rw-r--r--simon/simon.cpp9
3 files changed, 25 insertions, 0 deletions
diff --git a/boxes.h b/boxes.h
index 031ef96c94..b2287ba590 100644
--- a/boxes.h
+++ b/boxes.h
@@ -20,6 +20,10 @@
*
*/
+#if !defined(__GNUC__)
+ #pragma START_PACK_STRUCTS
+#endif
+
#define SIZEOF_BOX 20
struct Box { /* Internal walkbox file format */
int16 ulx,uly;
@@ -31,6 +35,10 @@ struct Box { /* Internal walkbox file format */
uint16 scale;
} GCC_PACK;
+#if !defined(__GNUC__)
+ #pragma END_PACK_STRUCTS
+#endif
+
struct AdjustBoxResult { /* Result type of AdjustBox functions */
int16 x,y;
uint16 dist;
diff --git a/gfx.h b/gfx.h
index 20d6505d01..beb7f2925a 100644
--- a/gfx.h
+++ b/gfx.h
@@ -82,11 +82,19 @@ struct BlastObject { /* BlastObjects to draw */
uint16 mode;
};
+#if !defined(__GNUC__)
+ #pragma START_PACK_STRUCTS
+#endif
+
struct BompHeader { /* Bomp header */
uint16 unk;
uint16 width,height;
} GCC_PACK;
+#if !defined(__GNUC__)
+ #pragma END_PACK_STRUCTS
+#endif
+
struct BompDrawData { /* Bomp graphics data */
byte *out;
int outwidth, outheight;
diff --git a/simon/simon.cpp b/simon/simon.cpp
index 7bd3827b10..c8056c5907 100644
--- a/simon/simon.cpp
+++ b/simon/simon.cpp
@@ -8248,6 +8248,10 @@ void SimonState::initSound() {
}
}
+#if !defined(__GNUC__)
+ #pragma START_PACK_STRUCTS
+#endif
+
struct WaveHeader {
uint32 riff;
uint32 unk;
@@ -8265,6 +8269,11 @@ struct WaveHeader {
uint16 bits_per_sample;
} GCC_PACK;
+#if !defined(__GNUC__)
+ #pragma END_PACK_STRUCTS
+#endif
+
+
void SimonState::playVoice(uint voice) {
WaveHeader wave_hdr;
uint32 data[2];