scummvm/engines/access/resources.cpp
2014-08-02 15:14:42 -04:00

204 lines
12 KiB
C++

/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, 0xwhose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, 0xor (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program; if not, 0xwrite to the Free Software
* Foundation, 0xInc., 0x51 Franklin Street, 0xFifth Floor, 0xBoston, 0xMA 02110-1301, 0xUSA.
*
*/
#include "access/resources.h"
#include "access/access.h"
namespace Access {
const byte INITIAL_PALETTE[18 * 3] = {
0x00, 0x00, 0x00,
0xff, 0xff, 0xff,
0xf0, 0xf0, 0xf0,
0xe0, 0xe0, 0xe0,
0xd0, 0xd0, 0xd0,
0xc0, 0xc0, 0xc0,
0xb0, 0xb0, 0xb0,
0xa0, 0xa0, 0xa0,
0x90, 0x90, 0x90,
0x80, 0x80, 0x80,
0x70, 0x70, 0x70,
0x60, 0x60, 0x60,
0x50, 0x50, 0x50,
0x40, 0x40, 0x40,
0x30, 0x30, 0x30,
0x20, 0x20, 0x20,
0x10, 0x10, 0x10,
0x00, 0x00, 0x00
};
namespace Amazon {
const char *const FILENAMES[] = {
"S00.AP", "S01.AP", "S02.AP", "R03.AP", "S04.AP", "S05.AP",
"S06.AP", "S07.AP", "S08.AP", "S09.AP", "S10.AP", "S11.AP",
"S12.AP", "S13.AP", "S14.AP", "S15.AP", "S16.AP", "S17.AP",
"S18.AP", "S19.AP", "S20.AP", "S21.AP", "S22.AP", "S23.AP",
"S24.AP", "S25.AP", "S26.AP", "S27.AP", "S28.AP", "S29.AP",
"S30.AP", "S31.AP", "S32.AP", "S33.AP", "S34.AP", "R35.AP",
"S36.AP", "S37.AP", "S38.AP", "S39.AP", "S40.AP", "C26.AP",
"S42.AP", "S01.AP", "S44.AP", "S45.AP", "S46.AP", "S47.AP",
"C36.AP", nullptr, "S50.AP", nullptr, nullptr, "S53.AP",
"S54.AP", "S55.AP", "C35.AP", "S57.AP", "S58.AP", nullptr,
nullptr, "S61.AP", nullptr, nullptr, "S64.AP", "C00.AP",
"C01.AP", "C06.AP", "C07.AP", "C08.AP", "C05.AP", "C09.AP",
"C12.AP", "C03.AP", "C13.AP", "C15.AP", "C14.AP", "C16.AP",
"C17.AP", "C19.AP", "C20.AP", "C21.AP", "C22.AP", "C23.AP",
"C24.AP", "C25.AP", "C29.AP", "C30.AP", "C32.AP", "C33.AP",
"C34.AP", "CREDITS.AP", "MIDIDRV.AP", "SUMMARY.AP", "DEAD.AP",
"EST.AP", "CHAPTER.AP", "MIDI.AP", "SOUND.AP", "INV.AP",
"NARATE01.AP", "NARATE02.AP", "NARATE03.AP", "NARATE04.AP",
"NARATE05.AP", "NARATE06.AP", "NARATE07.AP", "NARATE08.AP",
"NARATE09.AP", "NARATE10.AP", "NARATE11.AP", "NARATE12.AP",
"NARATE13.AP", "NARATE14.AP"
};
const byte *CURSORS[10] = {
MOUSE0, MOUSE1, MOUSE2, MOUSE3, CURSEYE, CURSHAND, CURSGET, CURSCLIMB, CURSTALK, CURSHELP
};
const byte MOUSE0[] = {
0, 0, 0, 0,
0, 2, 6, 1, 0, 3, 6, 6, 1, 0, 3, 6, 6, 1,
0, 4, 6, 6, 6, 1, 0, 4, 6, 6, 6, 1, 0, 5, 6, 6, 6, 6,
1, 0, 5, 6, 6, 6, 6, 1, 0, 6, 6, 6, 6, 6, 6, 1, 0, 6,
6, 6, 6, 6, 6, 1, 0, 7, 6, 6, 6, 6, 6, 6, 1, 0, 6, 6,
6, 6, 6, 6, 1, 0, 5, 6, 6, 6, 6, 1, 2, 3, 6, 6, 1, 3,
3, 6, 6, 1, 3, 3, 6, 6, 1, 4, 2, 6, 1
};
const byte MOUSE1[] = {
0x07, 0x00, 0x07, 0x00, 0x06, 0x01, 0x05, 0x04, 0x05, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x03, 0x07,
0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x02, 0x09, 0xFF, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00,
0x00, 0xFF, 0x01, 0x0B, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x01,
0x0B, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x0D, 0x05, 0x00,
0x00, 0x05, 0x00, 0x05, 0x00, 0x05, 0x00, 0x05, 0x00, 0x00, 0x05, 0x01, 0x0B, 0xFF, 0x00, 0x00,
0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x01, 0x0B, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xFF, 0x02, 0x09, 0xFF, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0xFF,
0x03, 0x07, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x04, 0x05, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0x06, 0x01, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
const byte MOUSE2[] = {
0x08, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x04, 0x05, 0x07, 0x02, 0x04, 0x05,
0x07, 0x02, 0x04, 0x05, 0x07, 0x02, 0x04, 0x05, 0x07, 0x02, 0x04, 0x05, 0x02, 0x0C, 0x04, 0x04,
0x04, 0x04, 0x04, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x05, 0x07, 0x02, 0x04, 0x05, 0x07, 0x02,
0x04, 0x05, 0x07, 0x02, 0x04, 0x05, 0x07, 0x02, 0x04, 0x05, 0x07, 0x02, 0x04, 0x05, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00
};
const byte MOUSE3[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
0x06, 0x00, 0x0C, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x06, 0x05, 0x00,
0x0C, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x05, 0x05, 0x00, 0x0C, 0x06,
0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x00, 0x0C, 0x06, 0x06, 0x06,
0x06, 0x06, 0x05, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x00, 0x0C, 0x06, 0x06, 0x06, 0x06, 0x05,
0x00, 0x00, 0x06, 0x06, 0x06, 0x06, 0x05, 0x00, 0x0C, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06,
0x06, 0x06, 0x06, 0x06, 0x05, 0x00, 0x0C, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
0x06, 0x06, 0x05, 0x00, 0x0C, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
0x05, 0x00, 0x0C, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x00,
0x0C, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x00, 0x0C, 0x06,
0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x01, 0x0B, 0x05, 0x05, 0x05,
0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
const byte CURSEYE[] = {
0x01, 0x00, 0x08, 0x00, 0x04, 0x06, 0x0E, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x03, 0x09, 0x0E, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x0D, 0x02, 0x0B, 0x0E, 0x01, 0x33, 0x33, 0x01, 0x01, 0x33,
0x34, 0x01, 0x01, 0x0D, 0x01, 0x0D, 0x0E, 0x01, 0x04, 0x34, 0x01, 0x01, 0x01, 0x07, 0x33, 0x04,
0x04, 0x01, 0x0D, 0x00, 0x0F, 0x0E, 0x0E, 0x01, 0x07, 0x33, 0x33, 0x01, 0x01, 0x33, 0x34, 0x07,
0x07, 0x06, 0x01, 0x0E, 0x01, 0x0D, 0x0F, 0x0F, 0x06, 0x07, 0x34, 0x33, 0x33, 0x34, 0x07, 0x07,
0x06, 0x0F, 0x0E, 0x03, 0x09, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0E, 0x01, 0x01,
0x07, 0x00, 0x03, 0x07, 0x01, 0x07, 0x01, 0x01, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00
};
const byte CURSHAND[] = {
0x02, 0x00, 0x03, 0x00, 0x07, 0x02, 0x17, 0x0E, 0x05, 0x07, 0x0E, 0x12, 0x17, 0x0E, 0x13, 0x17,
0x0E, 0x02, 0x0C, 0x07, 0x00, 0x17, 0x0E, 0x11, 0x0F, 0x0E, 0x11, 0x17, 0x0E, 0x00, 0x17, 0x01,
0x0E, 0x07, 0x01, 0x07, 0x0F, 0x0E, 0x11, 0x17, 0x0E, 0x11, 0x0F, 0x0E, 0x12, 0x17, 0x0E, 0x02,
0x0D, 0x07, 0x00, 0x17, 0x0F, 0x12, 0x0F, 0x0F, 0x11, 0x17, 0x0E, 0x12, 0x0F, 0x0E, 0x04, 0x0B,
0x0F, 0x0E, 0x11, 0x17, 0x0E, 0x12, 0x0F, 0x0F, 0x11, 0x17, 0x0E, 0x04, 0x0B, 0x17, 0x0E, 0x12,
0x17, 0x0E, 0x12, 0x17, 0x0E, 0x11, 0x0F, 0x0E, 0x00, 0x0F, 0x0E, 0x0D, 0x12, 0x00, 0x17, 0x0F,
0x0F, 0x0F, 0x0F, 0x12, 0x0F, 0x0E, 0x12, 0x17, 0x0F, 0x00, 0x0F, 0x0F, 0x17, 0x0D, 0x11, 0x0F,
0x0E, 0x0D, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0E, 0x0D, 0x01, 0x0E, 0x0F, 0x17, 0x0F, 0x0E,
0x0F, 0x0D, 0x0D, 0x0D, 0x0D, 0x0E, 0x0F, 0x0F, 0x0E, 0x0D, 0x02, 0x0D, 0x0F, 0x17, 0x0F, 0x0E,
0x0D, 0x0D, 0x0F, 0x0F, 0x0E, 0x0F, 0x0E, 0x0E, 0x12, 0x03, 0x0C, 0x0F, 0x17, 0x0F, 0x0F, 0x0F,
0x0E, 0x0F, 0x0F, 0x0F, 0x0E, 0x0D, 0x12, 0x04, 0x0A, 0x0F, 0x17, 0x0F, 0x0F, 0x0F, 0x0E, 0x0F,
0x0F, 0x0E, 0x0D, 0x05, 0x09, 0x0F, 0x17, 0x0F, 0x0F, 0x0F, 0x0F, 0x0E, 0x0D, 0x12, 0x06, 0x08,
0x17, 0x0F, 0x0F, 0x0F, 0x0F, 0x0E, 0x0D, 0x12, 0x06, 0x07, 0x17, 0x0F, 0x0F, 0x0F, 0x3D, 0x0E,
0x0D
};
const byte CURSGET[] = {
0x07, 0x00, 0x0E, 0x00, 0x0A, 0x05, 0x1C, 0x07, 0x0F, 0x0F, 0x0F, 0x08, 0x08, 0x1C, 0x07, 0x0F,
0x0F, 0x0F, 0x0F, 0x0F, 0x0C, 0x06, 0x0A, 0x1C, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F,
0x0C, 0x05, 0x0A, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0C, 0x03, 0x0C, 0x07,
0x1C, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0C, 0x02, 0x0D, 0x1C, 0x0F, 0x0E,
0x0E, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0C, 0x01, 0x0E, 0x07, 0x0F, 0x0E, 0x0D,
0x0F, 0x0E, 0x0D, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0C, 0x00, 0x0F, 0x1C, 0x0F, 0x0E, 0x0D,
0x0F, 0x0E, 0x0D, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0C, 0x00, 0x0F, 0x1C, 0x0E, 0x0D,
0x0F, 0x0E, 0x0D, 0x0F, 0x0F, 0x0C, 0x0C, 0x0E, 0x0F, 0x0F, 0x0F, 0x0C, 0x00, 0x0E, 0x1C, 0x0D,
0x0F, 0x0E, 0x0D, 0x0F, 0x0F, 0x0C, 0x00, 0x00, 0x0E, 0x0F, 0x0F, 0x0C, 0x00, 0x0E, 0x1C, 0x0E,
0x0F, 0x0D, 0x0F, 0x0F, 0x0C, 0x00, 0x00, 0x0E, 0x1C, 0x0F, 0x0F, 0x0C, 0x00, 0x0D, 0x1C, 0x0D,
0x0F, 0x0D, 0x0F, 0x0C, 0x00, 0x00, 0x00, 0x0E, 0x1C, 0x0F, 0x0C, 0x01, 0x0B, 0x0E, 0x0F, 0x0E,
0x0F, 0x0C, 0x00, 0x00, 0x0E, 0x07, 0x0F, 0x0C, 0x02, 0x09, 0x0E, 0x0D, 0x0F, 0x0C, 0x00, 0x07,
0x0E, 0x0F, 0x0C, 0x03, 0x06, 0x0E, 0x0F, 0x0E, 0x07, 0x01, 0x07, 0x07, 0x01, 0x07
};
const byte CURSCLIMB[] = {
0x03, 0x00, 0x0E, 0x00, 0x06, 0x04, 0x01, 0x01, 0x01, 0x01, 0x06, 0x04, 0x0F, 0x0E, 0x01, 0x01,
0x06, 0x04, 0x0F, 0x0E, 0x0D, 0x01, 0x07, 0x02, 0x0F, 0x0D, 0x00, 0x0C, 0x0F, 0x00, 0x00, 0x00,
0x00, 0x13, 0x12, 0x12, 0x12, 0x12, 0x11, 0x11, 0x00, 0x0D, 0x0D, 0x0E, 0x00, 0x00, 0x13, 0x14,
0x13, 0x12, 0x12, 0x12, 0x11, 0x11, 0x0E, 0x01, 0x0C, 0x0D, 0x0D, 0x0D, 0x0E, 0x11, 0x13, 0x13,
0x12, 0x11, 0x11, 0x0E, 0x0D, 0x02, 0x0C, 0x0E, 0x0E, 0x00, 0x00, 0x00, 0x13, 0x12, 0x11, 0x00,
0x00, 0x0E, 0x0D, 0x03, 0x0B, 0x04, 0x04, 0x04, 0x22, 0x21, 0x21, 0x20, 0x00, 0x00, 0x00, 0x0D,
0x02, 0x0D, 0x22, 0x04, 0x20, 0x22, 0x04, 0x21, 0x04, 0x20, 0x00, 0x00, 0x00, 0x0E, 0x0E, 0x03,
0x07, 0x22, 0x21, 0x20, 0x20, 0x22, 0x04, 0x20, 0x04, 0x06, 0x01, 0x01, 0x00, 0x04, 0x22, 0x20,
0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x04, 0x20, 0x03, 0x09, 0x07, 0x01, 0x01,
0x00, 0x00, 0x00, 0x22, 0x04, 0x20, 0x02, 0x0B, 0x07, 0x01, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x01, 0x20, 0x03, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01
};
const byte CURSTALK[] = {
0x02, 0x00, 0x0B, 0x00, 0x03, 0x08, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x01, 0x0C,
0x06, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x06, 0x00, 0x0E, 0x06, 0x06,
0x06, 0x06, 0x07, 0x06, 0x07, 0x07, 0x06, 0x07, 0x07, 0x06, 0x07, 0x06, 0x00, 0x0F, 0x06, 0x08,
0x08, 0x08, 0x06, 0x08, 0x06, 0x06, 0x08, 0x06, 0x06, 0x08, 0x06, 0x08, 0x06, 0x00, 0x0F, 0x06,
0x06, 0x08, 0x06, 0x08, 0x06, 0x08, 0x06, 0x08, 0x06, 0x06, 0x08, 0x08, 0x06, 0x06, 0x00, 0x0F,
0x06, 0x06, 0x08, 0x06, 0x08, 0x08, 0x08, 0x06, 0x08, 0x06, 0x06, 0x08, 0x06, 0x08, 0x06, 0x01,
0x0E, 0x06, 0x08, 0x06, 0x08, 0x06, 0x08, 0x06, 0x08, 0x08, 0x06, 0x08, 0x06, 0x08, 0x06, 0x02,
0x0C, 0x06, 0x06, 0x06, 0x07, 0x06, 0x07, 0x06, 0x06, 0x07, 0x06, 0x07, 0x06, 0x04, 0x09, 0x06,
0x06, 0x06, 0x07, 0x07, 0x07, 0x07, 0x06, 0x06, 0x07, 0x04, 0x06, 0x07, 0x07, 0x06, 0x02, 0x08,
0x07, 0x00, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x01, 0x06, 0x07, 0x01, 0x07, 0x06, 0x06, 0x06,
0x02, 0x01, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
const byte CURSHELP[] = {
0x02, 0x00, 0x0B, 0x00, 0x04, 0x06, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x02, 0x0A, 0x24, 0x24,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x20, 0x20, 0x01, 0x0C, 0x24, 0x22, 0x22, 0x22, 0x20, 0x20,
0x20, 0x22, 0x22, 0x22, 0x22, 0x20, 0x00, 0x0E, 0x24, 0x22, 0x22, 0x22, 0x20, 0x00, 0x00, 0x00,
0x24, 0x22, 0x22, 0x22, 0x22, 0x20, 0x00, 0x0E, 0x24, 0x22, 0x22, 0x22, 0x22, 0x20, 0x00, 0x00,
0x00, 0x24, 0x22, 0x22, 0x22, 0x20, 0x00, 0x0E, 0x24, 0x22, 0x22, 0x22, 0x22, 0x20, 0x00, 0x00,
0x00, 0x24, 0x22, 0x22, 0x22, 0x20, 0x01, 0x0D, 0x24, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x24,
0x22, 0x22, 0x22, 0x22, 0x20, 0x07, 0x06, 0x24, 0x22, 0x22, 0x22, 0x22, 0x20, 0x05, 0x07, 0x24,
0x22, 0x22, 0x22, 0x22, 0x20, 0x20, 0x04, 0x05, 0x24, 0x22, 0x22, 0x22, 0x20, 0x02, 0x07, 0x07,
0x00, 0x24, 0x20, 0x20, 0x20, 0x20, 0x01, 0x03, 0x07, 0x01, 0x07, 0x02, 0x07, 0x07, 0x00, 0x00,
0x24, 0x24, 0x24, 0x24, 0x04, 0x06, 0x24, 0x22, 0x22, 0x22, 0x22, 0x20, 0x04, 0x06, 0x24, 0x22,
0x22, 0x22, 0x22, 0x20, 0x05, 0x04, 0x20, 0x20, 0x20, 0x20
};
} // End of namespace Amazon
} // End of namespace Access