diff options
author | Ludvig Strigeus | 2001-12-03 11:49:06 +0000 |
---|---|---|
committer | Ludvig Strigeus | 2001-12-03 11:49:06 +0000 |
commit | f01012c4e16ad2eeb56212d99a19a03196aa5b79 (patch) | |
tree | 8398a9ad39335a015a4fdde765e013706295721d | |
parent | 8c25be13e551c8fb289e1218a0e714d81c78acbb (diff) | |
download | scummvm-rg350-f01012c4e16ad2eeb56212d99a19a03196aa5b79.tar.gz scummvm-rg350-f01012c4e16ad2eeb56212d99a19a03196aa5b79.tar.bz2 scummvm-rg350-f01012c4e16ad2eeb56212d99a19a03196aa5b79.zip |
Fixed a couple of alignment issues
svn-id: r3521
-rw-r--r-- | akos.cpp | 10 | ||||
-rw-r--r-- | object.cpp | 8 |
2 files changed, 9 insertions, 9 deletions
@@ -122,7 +122,7 @@ void Scumm::akos_setPalette(AkosRenderer *ar, byte *palette) { uint size, i; akpl = findResource(MKID('AKPL'), ar->akos); - size = READ_BE_UINT32(akpl+4) - 8; + size = READ_BE_UINT32_UNALIGNED(akpl+4) - 8; akpl += 8; if (size > 256) @@ -183,7 +183,7 @@ bool Scumm::akos_drawCostumeChannel(AkosRenderer *ar, int chan) { if (code!=AKC_ComplexChan) { off = ar->akof + (code & 0xFFF); - assert( (code & 0xFFF)*6 < READ_BE_UINT32((byte*)ar->akof - 4)-8 ); + assert( (code & 0xFFF)*6 < READ_BE_UINT32_UNALIGNED((byte*)ar->akof - 4)-8 ); assert( (code&0x7000) == 0); @@ -469,7 +469,7 @@ void Scumm::akos_codec1(AkosRenderer *ar) { ar->v1.scaletable = default_scale_table; /* Setup color decoding variables */ - num_colors = READ_BE_UINT32(ar->akpl-4)-8; + num_colors = READ_BE_UINT32_UNALIGNED(ar->akpl-4)-8; if (num_colors == 32) { ar->v1.mask = (1<<3)-1; ar->v1.shl = 3; @@ -767,7 +767,7 @@ bool Scumm::akos_increaseAnims(byte *akos, Actor *a) { size = 0; if (akfo) { - size = (READ_BE_UINT32(akfo)-8)>>1; + size = (READ_BE_UINT32_UNALIGNED(akfo)-8)>>1; akfo += 8; } @@ -1039,4 +1039,4 @@ void Scumm::setAnimVar(Actor *a, byte var, int value) { } -#endif
\ No newline at end of file +#endif diff --git a/object.cpp b/object.cpp index 02b732dd30..3438dcb26d 100644 --- a/object.cpp +++ b/object.cpp @@ -621,7 +621,7 @@ void Scumm::findObjectInRoom(FindObjectInRoom *fo, byte findWhat, uint id, uint if (findWhat&foCheckAlreadyLoaded && getObjectIndex(id) != -1) { fo->obcd = obcdptr = getObjectAddress(id); assert((byte*)obcdptr > (byte*)256); - fo->obim = obimptr = obcdptr + READ_BE_UINT32(&((ImageHeader*)obcdptr)->size); + fo->obim = obimptr = obcdptr + READ_BE_UINT32_UNALIGNED(&((ImageHeader*)obcdptr)->size); fo->cdhd = (CodeHeader*)findResource(MKID('CDHD'), obcdptr); fo->imhd = (ImageHeader*)findResource(MKID('IMHD'), obimptr); return; @@ -841,7 +841,7 @@ void Scumm::setCursorImg(uint img, uint room, uint imgindex) { if (dataptr==NULL) error("setCursorImg: No such image"); - size = READ_BE_UINT32(dataptr+4); + size = READ_BE_UINT32_UNALIGNED(dataptr+4); if (size > sizeof(_grabbedCursor)) error("setCursorImg: Cursor image too large"); @@ -1014,10 +1014,10 @@ void Scumm::loadFlObject(uint object, uint room) { od = &_objs[_numObjectsInRoom]; /* Setup sizes */ - obcd_size = READ_BE_UINT32(foir.obcd + 4); + obcd_size = READ_BE_UINT32_UNALIGNED(foir.obcd + 4); od->offs_obcd_to_room = 8; od->offs_obim_to_room = obcd_size + 8; - obim_size = READ_BE_UINT32(foir.obim + 4); + obim_size = READ_BE_UINT32_UNALIGNED(foir.obim + 4); flob_size = obcd_size + obim_size + 8; /* Allocate slot & memory for floating object */ |