scummvm/backends/PalmOS/Src/games.h
Chris Apers c9c862989a Updated based on last changes
svn-id: r15768
2004-11-09 11:49:07 +00:00

159 lines
3.4 KiB
C

/* ScummVM - Scumm Interpreter
* Copyright (C) 2001 Ludvig Strigeus
* Copyright (C) 2001-2004 The ScummVM project
*
* 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, or (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, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Header$
*
*/
#ifndef __GAMES_H__
#define __GAMES_H__
#define curItemVersion sysMakeROMVersion(3,1,0,0,0)
#define itemVersion_30 sysMakeROMVersion(3,0,0,0,0)
#define itemVersion_27 sysMakeROMVersion(2,7,0,0,0)
#define itemVersion_26 sysMakeROMVersion(2,6,0,0,0)
#define itemVersion_25 sysMakeROMVersion(2,5,0,0,0)
#define itemVersion_20 sysMakeROMVersion(2,0,0,0,0)
// old config structs
typedef struct {
UInt32 version;
UInt16 icnID; // icon to display on the list
Boolean selected;
Char nameP[50]; // game name to display in list
Char pathP[150]; // path to the game files
Char gameP[10]; // scumm name of the game
UInt16 gfxMode;
Boolean autoLoad;
UInt16 loadSlot;
Boolean bootParam;
UInt16 bootValue;
Boolean amiga;
Boolean subtitles;
Boolean talkSpeed;
UInt16 talkValue;
UInt8 language;
} GameInfoTypeV0;
typedef struct {
UInt32 version;
UInt16 icnID; // icon to display on the list
Boolean selected;
Char nameP[50]; // game name to display in list
Char pathP[150]; // path to the game files
Char gameP[10]; // scumm name of the game
UInt16 gfxMode;
Boolean autoLoad;
Boolean bootParam;
Boolean setPlatform;
Boolean subtitles;
Boolean talkSpeed;
UInt16 loadSlot;
UInt16 bootValue;
UInt16 talkValue;
UInt8 platform;
UInt8 language;
} GameInfoTypeV2;
// Current config
typedef struct {
struct {
UInt16 master;
UInt16 music;
UInt16 sfx;
UInt16 speech;
UInt16 audiocd;
} volume;
struct {
// midi
Boolean multiMidi;
Boolean music;
UInt8 drvMusic;
UInt8 tempo;
// sound FX
Boolean sfx;
UInt8 rate;
// CD audio
Boolean CD;
UInt8 drvCD, frtCD;
UInt16 defaultTrackLength;
UInt16 firstTrack;
} sound;
} MusicInfoType;
typedef struct {
UInt32 version;
UInt16 icnID; // icon to display on the list
Boolean selected;
Char nameP[50]; // game name to display in list
Char pathP[150]; // path to the game files
Char gameP[15]; // scumm name of the game
UInt16 gfxMode;
Boolean autoLoad;
Boolean bootParam;
Boolean setPlatform;
Boolean subtitles;
Boolean talkSpeed;
UInt16 loadSlot;
UInt16 bootValue;
UInt16 talkValue;
UInt8 platform;
UInt8 language; // |- v2.5
Boolean filter; // v2.6
Boolean fullscreen; // |
Boolean aspectRatio; // |- v2.7
MusicInfoType musicInfo;// v3.0
UInt8 engine; // |- v3.1
} GameInfoType;
enum {
ENGINE_SCUMM = 0,
ENGINE_SIMON,
ENGINE_QUEEN,
ENGINE_SWORD1
};
// protos
Err GamOpenDatabase ();
void GamImportDatabase ();
void GamCloseDatabase (Boolean ignoreCardParams);
Err GamSortList ();
UInt16 GamGetSelected ();
void GamUnselect ();
Boolean GamJumpTo (Char letter);
extern DmOpenRef gameDB;
#endif