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:
Matthew Hoops 2010-05-18 04:17:58 +00:00
parent 0fe2ba6a0d
commit 3dda73d9a2
18 changed files with 404 additions and 180 deletions

View file

@ -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;