Add initial support for KQ6 Mac. Wrapper functions for read/writing to pointers are now used (found in util.*) for code that has different endianness in SCI1.1+ Mac games. Add support for Mac 'snd ' and 'CURS' resources. QFG1 Mac is not yet playable due to script compression.
svn-id: r49070
This commit is contained in:
parent
0fe2ba6a0d
commit
3dda73d9a2
18 changed files with 404 additions and 180 deletions
|
@ -650,11 +650,11 @@ int readPMachineInstruction(const byte *src, byte &extOpcode, int16 opparams[4])
|
|||
break;
|
||||
|
||||
case Script_Word:
|
||||
opparams[i] = READ_LE_UINT16(src + offset);
|
||||
opparams[i] = READ_SCI11ENDIAN_UINT16(src + offset);
|
||||
offset += 2;
|
||||
break;
|
||||
case Script_SWord:
|
||||
opparams[i] = (int16)READ_LE_UINT16(src + offset);
|
||||
opparams[i] = (int16)READ_SCI11ENDIAN_UINT16(src + offset);
|
||||
offset += 2;
|
||||
break;
|
||||
|
||||
|
@ -670,7 +670,7 @@ int readPMachineInstruction(const byte *src, byte &extOpcode, int16 opparams[4])
|
|||
if (extOpcode & 1) {
|
||||
opparams[i] = src[offset++];
|
||||
} else {
|
||||
opparams[i] = READ_LE_UINT16(src + offset);
|
||||
opparams[i] = READ_SCI11ENDIAN_UINT16(src + offset);
|
||||
offset += 2;
|
||||
}
|
||||
break;
|
||||
|
@ -680,7 +680,7 @@ int readPMachineInstruction(const byte *src, byte &extOpcode, int16 opparams[4])
|
|||
if (extOpcode & 1) {
|
||||
opparams[i] = (int8)src[offset++];
|
||||
} else {
|
||||
opparams[i] = (int16)READ_LE_UINT16(src + offset);
|
||||
opparams[i] = (int16)READ_SCI11ENDIAN_UINT16(src + offset);
|
||||
offset += 2;
|
||||
}
|
||||
break;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue