Skip to content

Commit

Permalink
DIRECTOR: Added default Mac palette
Browse files Browse the repository at this point in the history
  • Loading branch information
sev- committed Aug 3, 2016
1 parent dff575b commit c4e1d08
Showing 1 changed file with 76 additions and 7 deletions.
83 changes: 76 additions & 7 deletions engines/director/score.cpp
Expand Up @@ -44,6 +44,72 @@

namespace Director {

static byte defaultPalette[768] = {
0, 0, 0, 17, 17, 17, 34, 34, 34, 68, 68, 68,
85, 85, 85, 119, 119, 119, 136, 136, 136, 170, 170, 170,
187, 187, 187, 221, 221, 221, 238, 238, 238, 0, 0, 17,
0, 0, 34, 0, 0, 68, 0, 0, 85, 0, 0, 119,
0, 0, 136, 0, 0, 170, 0, 0, 187, 0, 0, 221,
0, 0, 238, 0, 17, 0, 0, 34, 0, 0, 68, 0,
0, 85, 0, 0, 119, 0, 0, 136, 0, 0, 170, 0,
0, 187, 0, 0, 221, 0, 0, 238, 0, 17, 0, 0,
34, 0, 0, 68, 0, 0, 85, 0, 0, 119, 0, 0,
136, 0, 0, 170, 0, 0, 187, 0, 0, 221, 0, 0,
238, 0, 0, 0, 0, 51, 0, 0, 102, 0, 0, 153,
0, 0, 204, 0, 0, 255, 0, 51, 0, 0, 51, 51,
0, 51, 102, 0, 51, 153, 0, 51, 204, 0, 51, 255,
0, 102, 0, 0, 102, 51, 0, 102, 102, 0, 102, 153,
0, 102, 204, 0, 102, 255, 0, 153, 0, 0, 153, 51,
0, 153, 102, 0, 153, 153, 0, 153, 204, 0, 153, 255,
0, 204, 0, 0, 204, 51, 0, 204, 102, 0, 204, 153,
0, 204, 204, 0, 204, 255, 0, 255, 0, 0, 255, 51,
0, 255, 102, 0, 255, 153, 0, 255, 204, 0, 255, 255,
51, 0, 0, 51, 0, 51, 51, 0, 102, 51, 0, 153,
51, 0, 204, 51, 0, 255, 51, 51, 0, 51, 51, 51,
51, 51, 102, 51, 51, 153, 51, 51, 204, 51, 51, 255,
51, 102, 0, 51, 102, 51, 51, 102, 102, 51, 102, 153,
51, 102, 204, 51, 102, 255, 51, 153, 0, 51, 153, 51,
51, 153, 102, 51, 153, 153, 51, 153, 204, 51, 153, 255,
51, 204, 0, 51, 204, 51, 51, 204, 102, 51, 204, 153,
51, 204, 204, 51, 204, 255, 51, 255, 0, 51, 255, 51,
51, 255, 102, 51, 255, 153, 51, 255, 204, 51, 255, 255,
102, 0, 0, 102, 0, 51, 102, 0, 102, 102, 0, 153,
102, 0, 204, 102, 0, 255, 102, 51, 0, 102, 51, 51,
102, 51, 102, 102, 51, 153, 102, 51, 204, 102, 51, 255,
102, 102, 0, 102, 102, 51, 102, 102, 102, 102, 102, 153,
102, 102, 204, 102, 102, 255, 102, 153, 0, 102, 153, 51,
102, 153, 102, 102, 153, 153, 102, 153, 204, 102, 153, 255,
102, 204, 0, 102, 204, 51, 102, 204, 102, 102, 204, 153,
102, 204, 204, 102, 204, 255, 102, 255, 0, 102, 255, 51,
102, 255, 102, 102, 255, 153, 102, 255, 204, 102, 255, 255,
153, 0, 0, 153, 0, 51, 153, 0, 102, 153, 0, 153,
153, 0, 204, 153, 0, 255, 153, 51, 0, 153, 51, 51,
153, 51, 102, 153, 51, 153, 153, 51, 204, 153, 51, 255,
153, 102, 0, 153, 102, 51, 153, 102, 102, 153, 102, 153,
153, 102, 204, 153, 102, 255, 153, 153, 0, 153, 153, 51,
153, 153, 102, 153, 153, 153, 153, 153, 204, 153, 153, 255,
153, 204, 0, 153, 204, 51, 153, 204, 102, 153, 204, 153,
153, 204, 204, 153, 204, 255, 153, 255, 0, 153, 255, 51,
153, 255, 102, 153, 255, 153, 153, 255, 204, 153, 255, 255,
204, 0, 0, 204, 0, 51, 204, 0, 102, 204, 0, 153,
204, 0, 204, 204, 0, 255, 204, 51, 0, 204, 51, 51,
204, 51, 102, 204, 51, 153, 204, 51, 204, 204, 51, 255,
204, 102, 0, 204, 102, 51, 204, 102, 102, 204, 102, 153,
204, 102, 204, 204, 102, 255, 204, 153, 0, 204, 153, 51,
204, 153, 102, 204, 153, 153, 204, 153, 204, 204, 153, 255,
204, 204, 0, 204, 204, 51, 204, 204, 102, 204, 204, 153,
204, 204, 204, 204, 204, 255, 204, 255, 0, 204, 255, 51,
204, 255, 102, 204, 255, 153, 204, 255, 204, 204, 255, 255,
255, 0, 0, 255, 0, 51, 255, 0, 102, 255, 0, 153,
255, 0, 204, 255, 0, 255, 255, 51, 0, 255, 51, 51,
255, 51, 102, 255, 51, 153, 255, 51, 204, 255, 51, 255,
255, 102, 0, 255, 102, 51, 255, 102, 102, 255, 102, 153,
255, 102, 204, 255, 102, 255, 255, 153, 0, 255, 153, 51,
255, 153, 102, 255, 153, 153, 255, 153, 204, 255, 153, 255,
255, 204, 0, 255, 204, 51, 255, 204, 102, 255, 204, 153,
255, 204, 204, 255, 204, 255, 255, 255, 0, 255, 255, 51,
255, 255, 102, 255, 255, 153, 255, 255, 204, 255, 255, 255 };

Score::Score(DirectorEngine *vm) {
loadMacFonts();
_vm = vm;
Expand All @@ -69,15 +135,18 @@ void Score::loadArchive() {
Common::Array<uint16> clutList = _movieArchive->getResourceIDList(MKTAG('C','L','U','T'));

if (clutList.size() > 1)
error("More than one palette was found");

if (clutList.size() == 0)
error("CLUT not found");
warning("More than one palette was found (%d)", clutList.size());

Common::SeekableSubReadStreamEndian *pal = _movieArchive->getResource(MKTAG('C', 'L', 'U', 'T'), clutList[0]);
if (clutList.size() == 0) {
warning("CLUT resource not found, using default Mac palette");
g_system->getPaletteManager()->setPalette(defaultPalette, 0, 256);
_vm->setPalette(defaultPalette, 256);
} else {
Common::SeekableSubReadStreamEndian *pal = _movieArchive->getResource(MKTAG('C', 'L', 'U', 'T'), clutList[0]);

loadPalette(*pal);
g_system->getPaletteManager()->setPalette(_vm->getPalette(), 0, _vm->getPaletteColorCount());
loadPalette(*pal);
g_system->getPaletteManager()->setPalette(_vm->getPalette(), 0, _vm->getPaletteColorCount());
}

assert(_movieArchive->hasResource(MKTAG('V','W','S','C'), 1024));
assert(_movieArchive->hasResource(MKTAG('V','W','C','F'), 1024));
Expand Down

0 comments on commit c4e1d08

Please sign in to comment.