aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorJohannes Schickel2010-10-13 03:57:44 +0000
committerJohannes Schickel2010-10-13 03:57:44 +0000
commit75e8452b6e6a2bf4fb2f588aa00b428a60d873b5 (patch)
treef29541d55309487a94bd1d38e8b53bb3dde9aec6 /common
parent48ee83b88957dab86bc763e9ef21a70179fa8679 (diff)
parente9f50882ea5b6beeefa994040be9d3bab6a1f107 (diff)
downloadscummvm-rg350-75e8452b6e6a2bf4fb2f588aa00b428a60d873b5.tar.gz
scummvm-rg350-75e8452b6e6a2bf4fb2f588aa00b428a60d873b5.tar.bz2
scummvm-rg350-75e8452b6e6a2bf4fb2f588aa00b428a60d873b5.zip
OPENGL: Merged from trunk, from rev 52105 to 53396.
This includes an rather hacky attempt to merge all the recent gp2x backend changes into the branch. I suppose the gp2x backend and probably all new backends, i.e. gph, dingux etc., might not compile anymore. Since I have no way of testing those it would be nice if porters could look into getting those up to speed in this branch. svn-id: r53399
Diffstat (limited to 'common')
-rw-r--r--common/archive.h24
-rw-r--r--common/array.h6
-rw-r--r--common/config-manager.cpp25
-rw-r--r--common/endian.h8
-rw-r--r--common/macresman.cpp24
-rw-r--r--common/macresman.h11
-rw-r--r--common/messages.cpp2744
-rw-r--r--common/rational.cpp31
-rw-r--r--common/rational.h5
-rw-r--r--common/rect.h3
-rw-r--r--common/scummsys.h11
-rw-r--r--common/str.cpp40
-rw-r--r--common/stream.cpp85
-rw-r--r--common/stream.h26
-rw-r--r--common/translation.cpp316
-rw-r--r--common/translation.h93
-rw-r--r--common/unzip.cpp72
-rw-r--r--common/util.cpp3
18 files changed, 645 insertions, 2882 deletions
diff --git a/common/archive.h b/common/archive.h
index 1cc983f77b..c12ca79be0 100644
--- a/common/archive.h
+++ b/common/archive.h
@@ -79,7 +79,8 @@ public:
/**
- * Archive allows searches of (file)names into an arbitrary container.
+ * Archive allows managing of member of arbitrary containers in a uniform
+ * fashion, allowing lookup by (file)names.
* It also supports opening a file and returning an usable input stream.
*/
class Archive {
@@ -87,24 +88,23 @@ public:
virtual ~Archive() { }
/**
- * Check if a name is present in the Archive. Patterns are not allowed,
- * as this is meant to be a quick File::exists() replacement.
+ * Check if a member with the given name is present in the Archive.
+ * Patterns are not allowed, as this is meant to be a quick File::exists()
+ * replacement.
*/
virtual bool hasFile(const String &name) = 0;
/**
- * Add all the names present in the Archive which match pattern to
- * list. Returned names can be used as parameters to createReadStreamForMember.
- * Must not remove elements from the list.
+ * Add all members of the Archive matching the specified pattern to list.
+ * Must only append to list, and not remove elements from it.
*
- * @return the number of names added to list
+ * @return the number of members added to list
*/
virtual int listMatchingMembers(ArchiveMemberList &list, const String &pattern);
/**
- * Add all the names present in the Archive to list. Returned
- * names can be used as parameters to createReadStreamForMember.
- * Must not remove elements from the list.
+ * Add all members of the Archive to list.
+ * Must only append to list, and not remove elements from it.
*
* @return the number of names added to list
*/
@@ -116,8 +116,8 @@ public:
virtual ArchiveMemberPtr getMember(const String &name) = 0;
/**
- * Create a stream bound to a member in the archive. If no member with the
- * specified name exists, then 0 is returned.
+ * Create a stream bound to a member with the specified name in the
+ * archive. If no member with this name exists, 0 is returned.
* @return the newly created input stream
*/
virtual SeekableReadStream *createReadStreamForMember(const String &name) const = 0;
diff --git a/common/array.h b/common/array.h
index 4cc5369f9f..e3aab66dc6 100644
--- a/common/array.h
+++ b/common/array.h
@@ -150,6 +150,12 @@ public:
insert_aux(_storage + idx, &element, &element + 1);
}
+ void insert_at(int idx, const Array<T> &array) {
+ assert(idx >= 0 && (uint)idx <= _size);
+ insert_aux(_storage + idx, array.begin(), array.end());
+ }
+
+
T remove_at(int idx) {
assert(idx >= 0 && (uint)idx < _size);
T tmp = _storage[idx];
diff --git a/common/config-manager.cpp b/common/config-manager.cpp
index abc5bfb52d..554a99ea95 100644
--- a/common/config-manager.cpp
+++ b/common/config-manager.cpp
@@ -219,32 +219,27 @@ void ConfigManager::flushToDisk() {
stream = dump;
}
+ // Write the application domain
+ writeDomain(*stream, kApplicationDomain, _appDomain);
+
+#ifdef ENABLE_KEYMAPPER
+ // Write the keymapper domain
+ writeDomain(*stream, kKeymapperDomain, _keymapperDomain);
+#endif
+
// First write the domains in _domainSaveOrder, in that order.
// Note: It's possible for _domainSaveOrder to list domains which
- // are not present anymore.
+ // are not present anymore, so we validate each name.
Array<String>::const_iterator i;
for (i = _domainSaveOrder.begin(); i != _domainSaveOrder.end(); ++i) {
- if (kApplicationDomain == *i) {
- writeDomain(*stream, *i, _appDomain);
-#ifdef ENABLE_KEYMAPPER
- } else if (kKeymapperDomain == *i) {
- writeDomain(*stream, *i, _keymapperDomain);
-#endif
- } else if (_gameDomains.contains(*i)) {
+ if (_gameDomains.contains(*i)) {
writeDomain(*stream, *i, _gameDomains[*i]);
}
}
DomainMap::const_iterator d;
-
// Now write the domains which haven't been written yet
- if (find(_domainSaveOrder.begin(), _domainSaveOrder.end(), kApplicationDomain) == _domainSaveOrder.end())
- writeDomain(*stream, kApplicationDomain, _appDomain);
-#ifdef ENABLE_KEYMAPPER
- if (find(_domainSaveOrder.begin(), _domainSaveOrder.end(), kKeymapperDomain) == _domainSaveOrder.end())
- writeDomain(*stream, kKeymapperDomain, _keymapperDomain);
-#endif
for (d = _gameDomains.begin(); d != _gameDomains.end(); ++d) {
if (find(_domainSaveOrder.begin(), _domainSaveOrder.end(), d->_key) == _domainSaveOrder.end())
writeDomain(*stream, d->_key, d->_value);
diff --git a/common/endian.h b/common/endian.h
index db47ff2d07..32f92fd02c 100644
--- a/common/endian.h
+++ b/common/endian.h
@@ -189,22 +189,22 @@
#elif defined(__GNUC__) && (__GNUC__ >= 4)
FORCEINLINE uint16 READ_UINT16(const void *ptr) {
- struct Unaligned16 { uint16 val; } __attribute__ ((__packed__));
+ struct Unaligned16 { uint16 val; } __attribute__ ((__packed__, __may_alias__));
return ((const Unaligned16 *)ptr)->val;
}
FORCEINLINE uint32 READ_UINT32(const void *ptr) {
- struct Unaligned32 { uint32 val; } __attribute__ ((__packed__));
+ struct Unaligned32 { uint32 val; } __attribute__ ((__packed__, __may_alias__));
return ((const Unaligned32 *)ptr)->val;
}
FORCEINLINE void WRITE_UINT16(void *ptr, uint16 value) {
- struct Unaligned16 { uint16 val; } __attribute__ ((__packed__));
+ struct Unaligned16 { uint16 val; } __attribute__ ((__packed__, __may_alias__));
((Unaligned16 *)ptr)->val = value;
}
FORCEINLINE void WRITE_UINT32(void *ptr, uint32 value) {
- struct Unaligned32 { uint32 val; } __attribute__ ((__packed__));
+ struct Unaligned32 { uint32 val; } __attribute__ ((__packed__, __may_alias__));
((Unaligned32 *)ptr)->val = value;
}
diff --git a/common/macresman.cpp b/common/macresman.cpp
index eb6a5939b6..641702b5ec 100644
--- a/common/macresman.cpp
+++ b/common/macresman.cpp
@@ -110,6 +110,7 @@ bool MacResManager::open(Common::String filename) {
_baseFileName = filename;
return true;
}
+
delete macResForkRawStream;
#endif
@@ -169,6 +170,7 @@ bool MacResManager::open(Common::FSNode path, Common::String filename) {
_baseFileName = filename;
return true;
}
+
delete macResForkRawStream;
#endif
@@ -466,6 +468,28 @@ Common::SeekableReadStream *MacResManager::getResource(const Common::String &fil
return 0;
}
+Common::SeekableReadStream *MacResManager::getResource(uint32 typeID, const Common::String &filename) {
+ for (uint32 i = 0; i < _resMap.numTypes; i++) {
+ if (_resTypes[i].id != typeID)
+ continue;
+
+ for (uint32 j = 0; j < _resTypes[i].items; j++) {
+ if (_resLists[i][j].nameOffset != -1 && filename.equalsIgnoreCase(_resLists[i][j].name)) {
+ _stream->seek(_dataOffset + _resLists[i][j].dataOffset);
+ uint32 len = _stream->readUint32BE();
+
+ // Ignore resources with 0 length
+ if (!len)
+ return 0;
+
+ return _stream->readStream(len);
+ }
+ }
+ }
+
+ return 0;
+}
+
void MacResManager::readMap() {
_stream->seek(_mapOffset + 22);
diff --git a/common/macresman.h b/common/macresman.h
index 2168235670..d47b0ca329 100644
--- a/common/macresman.h
+++ b/common/macresman.h
@@ -57,7 +57,7 @@ public:
/**
* Read resource from the Mac Binary file
- * @param typeID FourCC with type ID
+ * @param typeID FourCC of the type
* @param resID Resource ID to fetch
* @return Pointer to a SeekableReadStream with loaded resource
*/
@@ -65,11 +65,20 @@ public:
/**
* Read resource from the Mac Binary file
+ * @note This will take the first resource that matches this name, regardless of type
* @param filename filename of the resource
* @return Pointer to a SeekableReadStream with loaded resource
*/
Common::SeekableReadStream *getResource(const Common::String &filename);
+ /**
+ * Read resource from the Mac Binary file
+ * @param typeID FourCC of the type
+ * @param filename filename of the resource
+ * @return Pointer to a SeekableReadStream with loaded resource
+ */
+ Common::SeekableReadStream *getResource(uint32 typeID, const Common::String &filename);
+
Common::SeekableReadStream *getDataFork();
Common::String getResName(uint32 typeID, uint16 resID);
uint32 getResForkSize();
diff --git a/common/messages.cpp b/common/messages.cpp
deleted file mode 100644
index 7fc7f9c814..0000000000
--- a/common/messages.cpp
+++ /dev/null
@@ -1,2744 +0,0 @@
-// generated by po2c 1.0.2-scummvm - Do not modify
-
-static const char * const _messageIds[] = {
- /* 0 */ "",
- /* 1 */ " Are you sure you want to quit ? ",
- /* 2 */ " (Active)",
- /* 3 */ " (Game)",
- /* 4 */ " (Global)",
- /* 5 */ "(built on %s)",
- /* 6 */ ", error while mounting the share",
- /* 7 */ ", share not mounted",
- /* 8 */ "... progress ...",
- /* 9 */ "11kHz",
- /* 10 */ "22 kHz",
- /* 11 */ "44 kHz",
- /* 12 */ "48 kHz",
- /* 13 */ "8 kHz",
- /* 14 */ "<default>",
- /* 15 */ "About ScummVM",
- /* 16 */ "AdLib Emulator",
- /* 17 */ "AdLib emulator:",
- /* 18 */ "AdLib is used for music in many games",
- /* 19 */ "Add Game...",
- /* 20 */ "Amiga Audio Emulator",
- /* 21 */ "Antialiased Renderer (16bpp)",
- /* 22 */ "Apple II GS Emulator (NOT IMPLEMENTED)",
- /* 23 */ "Aspect ratio correction",
- /* 24 */ "Associated key : %s",
- /* 25 */ "Associated key : none",
- /* 26 */ "Audio",
- /* 27 */ "Autosave:",
- /* 28 */ "Available engines:",
- /* 29 */ "A~b~out...",
- /* 30 */ "Bind Keys",
- /* 31 */ "Both",
- /* 32 */ "Brightness:",
- /* 33 */ "C64 Audio Emulator",
- /* 34 */ "Cancel",
- /* 35 */ "Cannot create file",
- /* 36 */ "Change game options",
- /* 37 */ "Change global ScummVM options",
- /* 38 */ "Check if you want to use your real hardware Roland-compatible sound device connected to your computer",
- /* 39 */ "Choose",
- /* 40 */ "Choose an action to map",
- /* 41 */ "Clear value",
- /* 42 */ "Close",
- /* 43 */ "Correct aspect ratio for 320x200 games",
- /* 44 */ "Could not find any engine capable of running the selected game",
- /* 45 */ "Current video mode:",
- /* 46 */ "Cursor Down",
- /* 47 */ "Cursor Left",
- /* 48 */ "Cursor Right",
- /* 49 */ "Cursor Up",
- /* 50 */ "DOSBox OPL emulator",
- /* 51 */ "DVD",
- /* 52 */ "DVD Mounted successfully",
- /* 53 */ "DVD not mounted",
- /* 54 */ "Date: ",
- /* 55 */ "Debugger",
- /* 56 */ "Default",
- /* 57 */ "Delete",
- /* 58 */ "Disable power off",
- /* 59 */ "Disabled GFX",
- /* 60 */ "Discovered %d new games ...",
- /* 61 */ "Discovered %d new games.",
- /* 62 */ "Display ",
- /* 63 */ "Display keyboard",
- /* 64 */ "Do you really want to delete this savegame?",
- /* 65 */ "Do you really want to remove this game configuration?",
- /* 66 */ "Do you really want to run the mass game detector? This could potentially add a huge number of games.",
- /* 67 */ "Do you want to load or save the game?",
- /* 68 */ "Do you want to perform an automatic scan ?",
- /* 69 */ "Do you want to quit ?",
- /* 70 */ "Double-strike",
- /* 71 */ "Down",
- /* 72 */ "Enable Roland GS Mode",
- /* 73 */ "Engine does not support debug level '%s'",
- /* 74 */ "English",
- /* 75 */ "Error running game:",
- /* 76 */ "Error while mounting the DVD",
- /* 77 */ "Extra Path:",
- /* 78 */ "FM Towns Emulator",
- /* 79 */ "Fast mode",
- /* 80 */ "Features compiled in:",
- /* 81 */ "Free look",
- /* 82 */ "Full title of the game",
- /* 83 */ "Fullscreen mode",
- /* 84 */ "GC Pad acceleration:",
- /* 85 */ "GC Pad sensitivity:",
- /* 86 */ "GFX",
- /* 87 */ "GM Device:",
- /* 88 */ "GUI Language:",
- /* 89 */ "GUI Renderer:",
- /* 90 */ "Game",
- /* 91 */ "Game Data not found",
- /* 92 */ "Game Id not supported",
- /* 93 */ "Game Path:",
- /* 94 */ "Global menu",
- /* 95 */ "Go to previous directory level",
- /* 96 */ "Go up",
- /* 97 */ "Graphics",
- /* 98 */ "Graphics mode:",
- /* 99 */ "Hardware scale (fast, but low quality)",
- /* 100 */ "Hercules Amber",
- /* 101 */ "Hercules Green",
- /* 102 */ "Hide Toolbar",
- /* 103 */ "High quality audio (slower) (reboot)",
- /* 104 */ "Higher value specifies better sound quality but may be not supported by your soundcard",
- /* 105 */ "Hold Shift for Mass Add",
- /* 106 */ "Horizontal underscan:",
- /* 107 */ "IBM PCjr Emulator",
- /* 108 */ "ID:",
- /* 109 */ "Init network",
- /* 110 */ "Initial top screen scale:",
- /* 111 */ "Initialising MT-32 Emulator",
- /* 112 */ "Initialising network",
- /* 113 */ "Input",
- /* 114 */ "Invalid Path",
- /* 115 */ "Key mapper",
- /* 116 */ "Keyboard",
- /* 117 */ "Keymap:",
- /* 118 */ "Keys",
- /* 119 */ "Language of ScummVM GUI",
- /* 120 */ "Language of the game. This will not turn your Spanish game version into English",
- /* 121 */ "Language:",
- /* 122 */ "Left",
- /* 123 */ "Left Click",
- /* 124 */ "Load",
- /* 125 */ "Load game:",
- /* 126 */ "Load savegame for selected game",
- /* 127 */ "MAME OPL emulator",
- /* 128 */ "MIDI",
- /* 129 */ "MIDI gain:",
- /* 130 */ "MT-32",
- /* 131 */ "MT-32 Device:",
- /* 132 */ "MT-32 Emulator",
- /* 133 */ "Main screen scaling:",
- /* 134 */ "Map",
- /* 135 */ "Mass Add...",
- /* 136 */ "Menu",
- /* 137 */ "Misc",
- /* 138 */ "Mixed AdLib/MIDI mode",
- /* 139 */ "Mount DVD",
- /* 140 */ "Mount SMB",
- /* 141 */ "Mouse click",
- /* 142 */ "Multi Function",
- /* 143 */ "Music Device:",
- /* 144 */ "Music volume:",
- /* 145 */ "Mute All",
- /* 146 */ "Name:",
- /* 147 */ "Network down",
- /* 148 */ "Network not initialsed (%d)",
- /* 149 */ "Network up",
- /* 150 */ "Network up, share mounted",
- /* 151 */ "Never",
- /* 152 */ "No",
- /* 153 */ "No date saved",
- /* 154 */ "No music",
- /* 155 */ "No playtime saved",
- /* 156 */ "No time saved",
- /* 157 */ "None",
- /* 158 */ "Normal (no scaling)",
- /* 159 */ "OK",
- /* 160 */ "Output rate:",
- /* 161 */ "Override global MIDI settings",
- /* 162 */ "Override global MT-32 settings",
- /* 163 */ "Override global audio settings",
- /* 164 */ "Override global graphic settings",
- /* 165 */ "Override global volume settings",
- /* 166 */ "PC Speaker Emulator",
- /* 167 */ "Password:",
- /* 168 */ "Path not a directory",
- /* 169 */ "Path not a file",
- /* 170 */ "Path not exists",
- /* 171 */ "Paths",
- /* 172 */ "Pause",
- /* 173 */ "Pick the game:",
- /* 174 */ "Platform the game was originally designed for",
- /* 175 */ "Platform:",
- /* 176 */ "Playtime: ",
- /* 177 */ "Please select an action",
- /* 178 */ "Plugins Path:",
- /* 179 */ "Preferred Device:",
- /* 180 */ "Press the key to associate",
- /* 181 */ "Quit",
- /* 182 */ "Quit ScummVM",
- /* 183 */ "Read permission denied",
- /* 184 */ "Reading failed",
- /* 185 */ "Remap keys",
- /* 186 */ "Remove game from the list. The game data files stay intact",
- /* 187 */ "Render mode:",
- /* 188 */ "Right",
- /* 189 */ "Right Click",
- /* 190 */ "Right click",
- /* 191 */ "Rotate",
- /* 192 */ "SFX volume:",
- /* 193 */ "SMB",
- /* 194 */ "Save",
- /* 195 */ "Save Path:",
- /* 196 */ "Save Path: ",
- /* 197 */ "Save game:",
- /* 198 */ "Scan complete!",
- /* 199 */ "Scanned %d directories ...",
- /* 200 */ "ScummVM Main Menu",
- /* 201 */ "ScummVM could not find any engine capable of running the selected game!",
- /* 202 */ "ScummVM could not find any game in the specified directory!",
- /* 203 */ "ScummVM couldn't open the specified directory!",
- /* 204 */ "Search in game list",
- /* 205 */ "Search:",
- /* 206 */ "Select SoundFont",
- /* 207 */ "Select a Theme",
- /* 208 */ "Select additional game directory",
- /* 209 */ "Select an action and click 'Map'",
- /* 210 */ "Select directory for GUI themes",
- /* 211 */ "Select directory for extra files",
- /* 212 */ "Select directory for plugins",
- /* 213 */ "Select directory for saved games",
- /* 214 */ "Select directory for savegames",
- /* 215 */ "Select directory with game data",
- /* 216 */ "Sensitivity",
- /* 217 */ "Server:",
- /* 218 */ "Share:",
- /* 219 */ "Short game identifier used for referring to savegames and running the game from the command line",
- /* 220 */ "Show Keyboard",
- /* 221 */ "Show mouse cursor",
- /* 222 */ "Show subtitles and play speech",
- /* 223 */ "Show/Hide Cursor",
- /* 224 */ "Skip",
- /* 225 */ "Skip line",
- /* 226 */ "Skip text",
- /* 227 */ "Snap to edges",
- /* 228 */ "Software scale (good quality, but slower)",
- /* 229 */ "Sound on/off",
- /* 230 */ "SoundFont is supported by some audio cards, Fluidsynth and Timidity",
- /* 231 */ "SoundFont:",
- /* 232 */ "Spch",
- /* 233 */ "Special dithering modes supported by some games",
- /* 234 */ "Special sound effects volume",
- /* 235 */ "Specifies default sound device for General MIDI output",
- /* 236 */ "Specifies default sound device for Roland MT-32/LAPC1/CM32l/CM64 output",
- /* 237 */ "Specifies output sound device or sound card emulator",
- /* 238 */ "Specifies path to additional data used by all games or ScummVM",
- /* 239 */ "Specifies path to additional data used the game",
- /* 240 */ "Specifies preferred sound device or sound card emulator",
- /* 241 */ "Specifies where your savegames are put",
- /* 242 */ "Speech",
- /* 243 */ "Speech volume:",
- /* 244 */ "Standard Renderer (16bpp)",
- /* 245 */ "Start selected game",
- /* 246 */ "Status:",
- /* 247 */ "Subs",
- /* 248 */ "Subtitle speed:",
- /* 249 */ "Subtitles",
- /* 250 */ "Swap character",
- /* 251 */ "Tap for left click, double tap right click",
- /* 252 */ "Text and Speech:",
- /* 253 */ "The chosen directory cannot be written to. Please select another one.",
- /* 254 */ "Theme Path:",
- /* 255 */ "Theme:",
- /* 256 */ "This game ID is already taken. Please choose another one.",
- /* 257 */ "This game does not support loading games from the launcher.",
- /* 258 */ "Time: ",
- /* 259 */ "Timeout while initialising network",
- /* 260 */ "Touch X Offset",
- /* 261 */ "Touch Y Offset",
- /* 262 */ "Touchpad mode disabled.",
- /* 263 */ "Touchpad mode enabled.",
- /* 264 */ "True Roland MT-32 (disable GM emulation)",
- /* 265 */ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack",
- /* 266 */ "Unknown",
- /* 267 */ "Unknown Error",
- /* 268 */ "Unmount DVD",
- /* 269 */ "Unmount SMB",
- /* 270 */ "Unscaled (you must scroll left and right)",
- /* 271 */ "Unsupported Color Mode",
- /* 272 */ "Untitled savestate",
- /* 273 */ "Up",
- /* 274 */ "Use both MIDI and AdLib sound generation",
- /* 275 */ "Use laptop trackpad-style cursor control",
- /* 276 */ "Username:",
- /* 277 */ "Using SDL driver ",
- /* 278 */ "Vertical underscan:",
- /* 279 */ "Video",
- /* 280 */ "Virtual keyboard",
- /* 281 */ "Volume",
- /* 282 */ "Windows MIDI",
- /* 283 */ "Write permission denied",
- /* 284 */ "Writing data failed",
- /* 285 */ "Yes",
- /* 286 */ "You have to restart ScummVM to take the effect.",
- /* 287 */ "Zone",
- /* 288 */ "Zoom down",
- /* 289 */ "Zoom up",
- /* 290 */ "every 10 mins",
- /* 291 */ "every 15 mins",
- /* 292 */ "every 30 mins",
- /* 293 */ "every 5 mins",
- /* 294 */ "~A~bout",
- /* 295 */ "~A~dd Game...",
- /* 296 */ "~C~ancel",
- /* 297 */ "~C~lose",
- /* 298 */ "~E~dit Game...",
- /* 299 */ "~H~elp",
- /* 300 */ "~I~ndy fight controls",
- /* 301 */ "~K~eys",
- /* 302 */ "~L~eft handed mode",
- /* 303 */ "~L~oad",
- /* 304 */ "~L~oad...",
- /* 305 */ "~N~ext",
- /* 306 */ "~O~K",
- /* 307 */ "~O~ptions",
- /* 308 */ "~O~ptions...",
- /* 309 */ "~P~revious",
- /* 310 */ "~Q~uit",
- /* 311 */ "~R~emove Game",
- /* 312 */ "~R~esume",
- /* 313 */ "~R~eturn to Launcher",
- /* 314 */ "~S~ave",
- /* 315 */ "~S~tart",
- /* 316 */ "~T~ransitions Enabled",
- /* 317 */ "~W~ater Effect Enabled",
- /* 318 */ "~Z~ip Mode Activated",
- NULL
-};
-
-struct PoMessageEntry {
- int msgid;
- const char *msgstr;
-};
-
-static const PoMessageEntry _translation_ca_ES[] = {
- { 0, "Project-Id-Version: ScummVM 1.2.0svn\nReport-Msgid-Bugs-To: scummvm-devel@lists.sf.net\nPOT-Creation-Date: 2010-08-11 22:12+0100\nPO-Revision-Date: 2010-06-26 16:45+0100\nLast-Translator: Jordi Vilalta Prat <jvprat@gmail.com>\nLanguage-Team: Catalan <scummvm-devel@lists.sf.net>\nMIME-Version: 1.0\nContent-Type: text/plain; charset=iso-8859-1\nContent-Transfer-Encoding: 8bit\nLanguage: Catalan\n" },
- { 2, " (Actiu)" },
- { 3, " (Joc)" },
- { 4, " (Global)" },
- { 5, "(compilat el %s)" },
- { 6, ", error al muntar la compartici\363" },
- { 7, ", compartici\363 no muntada" },
- { 8, "... progr\351s ..." },
- { 9, "11kHz" },
- { 10, "22 kHz" },
- { 11, "44 kHz" },
- { 12, "48 kHz" },
- { 13, "8 kHz" },
- { 14, "<per defecte>" },
- { 15, "Quant a ScummVM" },
- { 16, "Emulador d'AdLib" },
- { 17, "Emulador d'AdLib:" },
- { 18, "AdLib s'utilitza per la m\372sica de molts jocs" },
- { 19, "Afegeix Joc..." },
- { 20, "Emulador d'AdLib" },
- { 21, "Pintat amb antialias (16bpp)" },
- { 23, "Correcci\363 del rati d'aspecte" },
- { 24, "Tecla associada : %s" },
- { 25, "Tecla associada : cap" },
- { 26, "\300udio" },
- { 27, "Desat autom\340tic:" },
- { 28, "Motors disponibles:" },
- { 29, "~Q~uant a..." },
- { 30, "Mapeja tecles" },
- { 31, "Ambd\363s" },
- { 32, "Brillantor:" },
- { 33, "Emulador d'AdLib" },
- { 34, "Cancel\267la" },
- { 35, "No s'ha pogut crear el fitxer" },
- { 36, "Canvia les opcions del joc" },
- { 37, "Canvia les opcions globals de ScummVM" },
- { 38, "Marqueu si voleu utilitzar el vostre dispositiu hardware real de so compatible amb Roland connectat al vostre ordinador" },
- { 39, "Escull" },
- { 40, "Sel\267leccioneu una acci\363 per mapejar" },
- { 41, "Neteja el valor" },
- { 42, "Tanca" },
- { 43, "Corregeix la relaci\363 d'aspecte per jocs de 320x200" },
- { 44, "No s'ha pogut trobar cap motor capa\347 d'executar el joc seleccionat" },
- { 45, "Mode de v\355deo actual:" },
- { 46, "Cursor Avall" },
- { 47, "Cursor Esquerra" },
- { 48, "Cursor Dreta" },
- { 49, "Cursor Amunt" },
- { 50, "Emulador OPL de DOSBox" },
- { 51, "DVD" },
- { 52, "El DVD s'ha muntat satisfact\362riament" },
- { 53, "El DVD no est\340 muntat" },
- { 54, "Data: " },
- { 55, "Depurador" },
- { 56, "Per defecte" },
- { 57, "Suprimeix" },
- { 58, "Desactiva l'apagat autom\340tic" },
- { 59, "GFX desactivats" },
- { 60, "S'han descobert %d jocs nous ..." },
- { 61, "S'han descobert %d jocs nous." },
- { 62, "Pantalla" },
- { 63, "Mostra el teclat" },
- { 64, "Realment voleu suprimir aquesta partida?" },
- { 65, "Realment voleu suprimir la configuraci\363 d'aquest joc?" },
- { 66, "Esteu segur que voleu executar el detector massiu de jocs? Aix\362 pot afegir una gran quantitat de jocs." },
- { 67, "Voleu carregar o desar el joc?" },
- { 68, "Voleu fer una cerca autom\340tica?" },
- { 69, "Vols sortir?" },
- { 71, "Avall" },
- { 72, "Activa el Mode Roland GS" },
- { 73, "El motor no suporta el nivell de depuraci\363 '%s'" },
- { 74, "Angl\350s" },
- { 75, "Error al executar el joc:" },
- { 76, "Error al muntar el DVD" },
- { 77, "Cam\355 Extra:" },
- { 78, "Emulador de FM Towns" },
- { 79, "Mode r\340pid" },
- { 80, "Caracter\355stiques compilades:" },
- { 81, "Vista lliure" },
- { 82, "T\355tol complet del joc" },
- { 83, "Mode pantalla completa" },
- { 84, "Acceleraci\363 del Pad GC:" },
- { 85, "Sensibilitat del Pad GC:" },
- { 86, "GFX" },
- { 87, "Dispositiu GM:" },
- { 88, "Idioma de la interf\355cie d'usuari:" },
- { 89, "Mode de pintat de la interf\355cie d'usuari:" },
- { 90, "Joc" },
- { 91, "No s'han trobat les dades del joc" },
- { 92, "Identificador de joc no suportat" },
- { 93, "Cam\355 del Joc:" },
- { 94, "Men\372 global" },
- { 95, "Torna al nivell de directoris anterior" },
- { 96, "Amunt" },
- { 97, "Gr\340fics" },
- { 98, "Mode gr\340fic:" },
- { 99, "Escalat per hardware (r\340pid, per\362 de baixa qualitat)" },
- { 100, "Hercules \300mbar" },
- { 101, "Hercules Verd" },
- { 102, "Oculta la barra d'eines" },
- { 103, "Alta qualitat d'\340udio (m\351s lent) (reiniciar)" },
- { 104, "Valors m\351s alts especifiquen millor qualitat de so per\362 pot ser que la vostra tarja de so no ho suporti" },
- { 105, "Mantingueu premut Shift per a l'Addici\363 Massiva" },
- { 107, "Emulador d'IBM PCjr" },
- { 108, "Identificador:" },
- { 109, "Inicia la xarxa" },
- { 110, "Escalat inicial de la pantalla superior:" },
- { 111, "Iniciant l'Emulador de MT-32" },
- { 112, "Iniciant la xarxa" },
- { 113, "Entrada" },
- { 114, "Cam\355 incorrecte" },
- { 115, "Mapejador de tecles" },
- { 116, "Teclat" },
- { 117, "Mapa de teclat:" },
- { 118, "Tecles" },
- { 119, "Idioma de la interf\355cie d'usuari de ScummVM" },
- { 120, "Idioma del joc. Aix\362 no convertir\340 la vostra versi\363 Espanyola del joc a Angl\350s" },
- { 121, "Idioma:" },
- { 122, "Esquerra" },
- { 123, "Clic esquerre" },
- { 124, "Carrega" },
- { 125, "Carrega partida:" },
- { 126, "Carrega una partida pel joc seleccionat" },
- { 127, "Emulador OPL de MAME" },
- { 128, "MIDI" },
- { 129, "Guany MIDI:" },
- { 131, "Dispositiu MT32:" },
- { 132, "Emulador de MT-32" },
- { 133, "Escalat de la pantalla principal:" },
- { 134, "Mapeja" },
- { 135, "Addici\363 Massiva..." },
- { 136, "Men\372" },
- { 137, "Misc" },
- { 138, "Mode combinat AdLib/MIDI" },
- { 139, "Munta el DVD" },
- { 140, "Munta SMB" },
- { 141, "Clic del ratol\355" },
- { 142, "Funci\363 M\372ltiple" },
- { 143, "Dispositiu GM:" },
- { 144, "Volum de la m\372sica:" },
- { 145, "Silenciar tot" },
- { 146, "Nom:" },
- { 147, "Xarxa inactiva" },
- { 148, "Xarxa no iniciada (%d)" },
- { 149, "Xarxa activa" },
- { 150, "Xarxa activa, compartici\363 muntada" },
- { 151, "Mai" },
- { 152, "No" },
- { 153, "No hi ha data desada" },
- { 154, "Sense m\372sica" },
- { 155, "No hi ha temps de joc desat" },
- { 156, "No hi ha hora desada" },
- { 157, "Cap" },
- { 158, "Normal (sense escalar)" },
- { 159, "D'acord" },
- { 160, "Freq\374\350ncia de sortida:" },
- { 161, "Fer canvis sobre les opcions globals de MIDI" },
- { 162, "Fer canvis sobre les opcions globals de MIDI" },
- { 163, "Fer canvis sobre les opcions globals d'\340udio" },
- { 164, "Fer canvis sobre les opcions globals de gr\340fics" },
- { 165, "Fer canvis sobre les opcions globals de volum" },
- { 166, "Emulador d'Altaveu de PC" },
- { 167, "Contrasenya:" },
- { 168, "El cam\355 no \351s un directori" },
- { 169, "El cam\355 no \351s un fitxer" },
- { 170, "El cam\355 no existeix" },
- { 171, "Camins" },
- { 172, "Pausa" },
- { 173, "Seleccioneu el joc:" },
- { 174, "Plataforma per la que el joc es va dissenyar originalment" },
- { 175, "Plataforma:" },
- { 176, "Temps de joc: " },
- { 177, "Seleccioneu una acci\363" },
- { 178, "Cam\355 dels connectors:" },
- { 179, "Dispositiu Preferit:" },
- { 180, "Premeu la tecla a associar" },
- { 181, "Surt" },
- { 182, "Surt de ScummVM" },
- { 183, "S'ha denegat el perm\355s de lectura" },
- { 184, "Ha fallat la lectura" },
- { 185, "Remapeja les tecles" },
- { 186, "Elimina un joc de la llista. Els fitxers de dades del joc es mantenen intactes" },
- { 187, "Mode de pintat:" },
- { 188, "Dreta" },
- { 189, "Clic dret" },
- { 190, "Clic dret" },
- { 191, "Rotar" },
- { 192, "Volum dels efectes:" },
- { 193, "SMB" },
- { 194, "Desa" },
- { 195, "Cam\355 de les Partides:" },
- { 196, "Cam\355 de les Partides: " },
- { 197, "Desa la partida:" },
- { 198, "S'ha acabat la cerca!" },
- { 199, "S'han cercat %d directoris ..." },
- { 200, "Men\372 Principal de ScummVM" },
- { 201, "ScummVM no ha pogut trobar cap motor capa\347 d'executar el joc seleccionat!" },
- { 202, "ScummVM no ha pogut trobar cap joc al directori especificat!" },
- { 203, "ScummVM no ha pogut obrir el directori especificat!" },
- { 204, "Cerca a la llista de jocs" },
- { 205, "Cerca:" },
- { 206, "Seleccioneu el fitxer SoundFont" },
- { 207, "Seleccioneu un Tema" },
- { 208, "Seleccioneu el directori addicional del joc" },
- { 209, "Seleccioneu una acci\363 i cliqueu 'Mapeja'" },
- { 210, "Seleccioneu el directori dels temes de la Interf\355cie d'Usuari" },
- { 211, "Seleccioneu el directori dels fitxers extra" },
- { 212, "Seleccioneu el directori dels connectors" },
- { 213, "Seleccioneu el directori de les partides desades" },
- { 214, "Seleccioneu el directori de les partides desades" },
- { 215, "Seleccioneu el directori amb les dades del joc" },
- { 216, "Sensibilitat" },
- { 217, "Servidor:" },
- { 218, "Compartici\363:" },
- { 219, "Identificador de joc curt utilitzat per referir-se a les partides i per executar el joc des de la l\355nia de comandes" },
- { 220, "Mostra el teclat" },
- { 221, "Mostra el cursor del ratol\355" },
- { 222, "Mostra els subt\355tols i reprodueix la veu" },
- { 223, "Mostra/Oculta el cursor" },
- { 224, "Salta" },
- { 225, "Salta la l\355nia" },
- { 226, "Salta el text" },
- { 228, "Escalat per software (bona qualitat, per\362 m\351s lent)" },
- { 229, "So engegat/parat" },
- { 230, "Algunes targes de so, Fluidsynth i Timidity suporten SoundFont" },
- { 231, "Fitxer SoundFont:" },
- { 232, "Veus" },
- { 233, "Modes de dispersi\363 especials suportats per alguns jocs" },
- { 234, "Volum dels sons d'efectes especials" },
- { 235, "Especifica el dispositiu de so per defecte per a la sortida General MIDI" },
- { 236, "Especifica el dispositiu de so per defecte per a la sortida de Roland MT-32/LAPC1/CM32l/CM64" },
- { 237, "Especifica el dispositiu de so o l'emulador de tarja de so de sortida" },
- { 238, "Especifica el cam\355 de les dades addicionals utilitzades per tots els jocs o pel ScummVM" },
- { 239, "Especifica el cam\355 de dades addicionals utilitzades pel joc" },
- { 240, "Especifica el dispositiu de so o l'emulador de tarja de so preferit" },
- { 241, "Especifica on es desaran les partides" },
- { 242, "Veus" },
- { 243, "Volum de la veu:" },
- { 244, "Pintat est\340ndard (16bpp)" },
- { 245, "Iniciant el joc seleccionat" },
- { 246, "Estat:" },
- { 247, "Subt" },
- { 248, "Velocitat dels subt\355tols:" },
- { 249, "Subt\355tols" },
- { 250, "Commuta el personatge" },
- { 251, "Toc per a clic esquerre, doble toc per a clic dret" },
- { 252, "Text i Veus:" },
- { 253, "No es pot escriure al directori seleccionat. Si us plau, escolliu-ne un altre." },
- { 254, "Cam\355 dels Temes:" },
- { 255, "Tema:" },
- { 256, "Aquest identificador de joc ja est\340 usat. Si us plau, trieu-ne un altre." },
- { 257, "Aquest joc no suporta la c\340rrega de partides des del llan\347ador." },
- { 258, "Hora: " },
- { 260, "Despla\347ament X del toc" },
- { 261, "Despla\347ament Y del toc" },
- { 262, "Mode Touchpad desactivat." },
- { 263, "Mode Touchpad activat." },
- { 264, "Roland MT-32 real (desactiva l'emulaci\363 GM)" },
- { 265, "Desactiva la conversi\363 General MIDI pels jocs que tenen banda sonora per a Roland MT-32" },
- { 266, "Desconegut" },
- { 267, "Error desconegut" },
- { 268, "Desmunta el DVD" },
- { 269, "Desmunta SMB" },
- { 270, "Sense escalar (haureu de despla\347ar-vos a esquerra i dreta)" },
- { 271, "Mode de color no suportat" },
- { 272, "Partida sense t\355tol" },
- { 273, "Amunt" },
- { 274, "Utilitza MIDI i la generaci\363 de so AdLib alhora" },
- { 275, "Utilitza el control del cursor a l'estil del trackpad dels port\340tils" },
- { 276, "Nom d'usuari:" },
- { 277, "Utilitzant el controlador SDL " },
- { 279, "V\355deo" },
- { 280, "Teclat virtual" },
- { 281, "Volum" },
- { 282, "MIDI de Windows" },
- { 283, "S'ha denegat el perm\355s d'escriptura" },
- { 284, "Ha fallat l'escriptura de dades" },
- { 285, "S\355" },
- { 286, "Heu de reiniciar ScummVM perqu\350 tots els canvis tingui efecte." },
- { 287, "Zona" },
- { 288, "Redueix" },
- { 289, "Amplia" },
- { 290, "cada 10 minuts" },
- { 291, "cada 15 minuts" },
- { 292, "cada 30 minuts" },
- { 293, "cada 5 minuts" },
- { 294, "~Q~uant a" },
- { 295, "~A~fegeix Joc..." },
- { 296, "~C~ancel\267la" },
- { 297, "~T~anca" },
- { 298, "~E~dita Joc..." },
- { 299, "~A~juda" },
- { 300, "Controls de lluita de l'~I~ndy" },
- { 301, "~T~ecles" },
- { 302, "Mode ~e~squerr\340" },
- { 303, "C~a~rrega" },
- { 304, "~C~arrega..." },
- { 305, "~S~eg\374ent" },
- { 306, "~D~'acord" },
- { 307, "~O~pcions" },
- { 308, "~O~pcions..." },
- { 309, "~A~nterior" },
- { 310, "~T~anca" },
- { 311, "~S~uprimeix Joc" },
- { 312, "~C~ontinua" },
- { 313, "~R~etorna al Llan\347ador" },
- { 314, "~D~esa" },
- { 315, "~I~nicia" },
- { 316, "~T~ransicions activades" },
- { 317, "~E~fecte de l'aigua activat" },
- { 318, "Mode ~Z~ip activat" },
- { -1, NULL }
-};
-
-static const PoMessageEntry _translation_uk_UA[] = {
- { 0, "Project-Id-Version: ScummVM VERSION\nReport-Msgid-Bugs-To: scummvm-devel@lists.sf.net\nPOT-Creation-Date: 2010-08-11 22:12+0100\nPO-Revision-Date: 2010-07-30 22:19+0100\nLast-Translator: Lubomyr Lisen\nLanguage-Team: Ukrainian\nMIME-Version: 1.0\nContent-Type: text/plain; charset=iso-8859-5\nContent-Transfer-Encoding: 8bit\nLanguage: Ukrainian\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" },
- { 1, " \262\330 \343\337\325\322\335\325\335\366, \351\336 \345\336\347\325\342\325 \322\330\331\342\330? " },
- { 2, " (\260\332\342\330\322\335\320)" },
- { 3, " (\246\323\340\330)" },
- { 4, " (\263\333\336\321\320\333\354\335\320)" },
- { 5, "(\327\366\321\340\320\335\330\331 %s)" },
- { 6, ", \337\336\334\330\333\332\320 \337\366\324 \347\320\341 \337\366\324\332\333\356\347\325\335\335\357 \337\320\337\332\330" },
- { 7, ", \337\320\337\332\320 \335\325 \337\366\324\332\333\356\347\325\335\320" },
- { 8, "... \337\336\350\343\332 ..." },
- { 9, "11 \332\263\346" },
- { 10, "22 \332\263\346" },
- { 11, "44 \332\263\346" },
- { 12, "48 \332\263\346" },
- { 13, "8 \332\263\346" },
- { 14, "<\327\320 \343\334\336\322\347\320\335\335\357\334>" },
- { 15, "\277\340\336 ScummVM" },
- { 16, "\265\334\343\333\357\342\336\340 AdLib" },
- { 17, "\265\334\343\333\357\342\336\340 AdLib:" },
- { 18, "\267\322\343\332\336\322\320 \332\320\340\342\320 AdLib \322\330\332\336\340\330\341\342\336\322\343\364\342\354\341\357 \321\320\323\320\342\354\334\320 \366\323\340\320\334\330" },
- { 19, "\264\336\324. \323\340\343..." },
- { 20, "\265\334\343\333\357\342\336\340 AdLib" },
- { 21, "\300\320\341\342\325\340\330\327\320\342\336\340 \327\366 \327\323\333\320\324\326\343\322\320\335\335\357\334 (16bpp)" },
- { 23, "\272\336\340\325\332\346\366\357 \341\337\366\322\322\366\324\335\336\350\325\335\335\357 \341\342\336\340\366\335" },
- { 24, "\277\340\330\327\335\320\347\325\335\320 \332\333\320\322\366\350\320 : %s" },
- { 25, "\277\340\330\327\335\320\347\325\335\320 \332\333\320\322\366\350\320 : \335\325\334\320\364" },
- { 26, "\260\343\324\366\336" },
- { 27, "\260\322\342\336\327\321\325\340\325\326\325\335\335\357:" },
- { 28, "\264\336\341\342\343\337\335\366 \324\322\330\326\332\330:" },
- { 29, "\277\340\336 \337~\340~\336\323\340\320\334\343..." },
- { 30, "\337\340\330\327\335\320\347\330\342\330 \332\333\320\322\366\350\366" },
- { 31, "\262\341\325" },
- { 32, "\317\341\332\340\320\322\366\341\342\354:" },
- { 33, "\265\334\343\333\357\342\336\340 AdLib" },
- { 34, "\262\366\324\334\366\335\320" },
- { 35, "\275\325 \334\336\326\343 \341\342\322\336\340\330\342\330 \344\320\331\333" },
- { 36, "\267\334\366\335\330\342\330 \336\337\346\366\367 \323\340\330" },
- { 37, "\267\334\366\335\330\342\330 \323\333\336\321\320\333\354\335\366 \336\337\346\366\367 ScummVM" },
- { 38, "\262\366\324\334\366\342\354\342\325, \357\332\351\336 \343 \322\320\341 \337\366\324\332\333\356\347\325\335\330\331 Roland-\341\343\334\366\341\335\330\331 \327\322\343\332\336\322\330\331 \337\340\330\341\342\340\366\331 \366 \322\330 \345\336\347\325\342\325 \331\336\323\336 \322\330\332\336\340\330\341\342\320\342\330" },
- { 39, "\262\330\321\340\320\342\330" },
- { 40, "\262\330\321\325\340\366\342\354 \324\366\356 \324\333\357 \337\340\330\327\335\320\347\325\335\335\357" },
- { 41, "\276\347\330\341\342\330\342\330 \327\335\320\347\325\335\335\357" },
- { 42, "\267\320\332\340\330\342\330" },
- { 43, "\272\336\340\330\323\343\322\320\342\330 \341\337\366\322\322\366\324\335\336\350\325\335\335\357 \341\342\336\340\366\335 \324\333\357 \366\323\336\340 \327 \323\340\320\344\366\332\336\356 320x200" },
- { 44, "\275\325 \334\336\326\343 \327\335\320\331\342\330 \324\322\330\326\336\332 \324\333\357 \327\320\337\343\341\332\343 \322\330\321\340\320\335\336\367 \323\340\330" },
- { 45, "\302\325\332\343\347\330\331 \322\366\324\325\336\340\325\326\330\334:" },
- { 46, "\272\343\340\341\336\340 \322\335\330\327" },
- { 47, "\272\343\340\341\336\340 \322\333\366\322\336" },
- { 48, "\272\343\340\341\336\340 \322\337\340\320\322\336" },
- { 49, "\272\343\340\341\336\340 \322\322\325\340\345" },
- { 50, "\265\334\343\333\357\342\336\340 DOSBox OPL" },
- { 51, "DVD" },
- { 52, "DVD \337\366\324\332\333\356\347\325\335\330\331 \343\341\337\366\350\335\336" },
- { 53, "DVD \335\325 \337\366\324\332\333\356\347\325\335\330\331" },
- { 54, "\264\320\342\320: " },
- { 55, "\262\366\324\333\320\324\347\330\332" },
- { 56, "\267\320 \343\334\336\322\347\320\335\335\357\334" },
- { 57, "\262\330\324\320\333\330\342\330" },
- { 58, "\267\320\321\336\340\336\335\330\342\330 \322\330\334\332\335\325\335\335\357" },
- { 59, "\261\325\327 \323\340\320\344\366\332\330" },
- { 60, "\267\335\320\331\324\325\335\336 %d \335\336\322\330\345 \366\323\336\340 ..." },
- { 61, "\267\335\320\331\324\325\335\336 %d \335\336\322\330\345 \366\323\336\340." },
- { 62, "\277\336\332\320\327\320\342\330 " },
- { 63, "\277\336\332\320\327\320\342\330 \332\333\320\322\366\320\342\343\340\343" },
- { 64, "\262\330 \324\366\331\341\335\336 \345\336\347\325\342\325 \322\330\324\320\333\330\342\330 \346\325 \327\321\325\340\325\326\325\335\335\357?" },
- { 65, "\262\330 \324\366\331\341\335\336 \345\336\347\325\342\325 \322\330\324\320\333\330\342\330 \343\341\342\320\335\336\322\332\330 \324\333\357 \346\366\364\367 \323\340\330?" },
- { 66, "\262\330 \324\366\331\341\335\336 \345\336\347\325\342\325 \327\320\337\343\341\342\330\342\330 \324\325\342\325\332\342\336\340 \343\341\366\345 \366\323\336\340? \306\325 \337\336\342\325\335\346\366\331\335\336 \334\336\326\325 \324\336\324\320\342\330 \322\325\333\330\332\343 \332\366\333\354\332\366\341\342\354 \366\323\336\340." },
- { 67, "\262\330 \345\336\347\325\342\325 \327\320\322\320\335\342\320\326\330\342\330 \320\321\336 \327\321\325\340\325\323\342\330 \323\340\343?" },
- { 68, "\262\330 \345\336\347\325\342\325 \327\324\366\331\341\335\330\342\330 \320\322\342\336\334\320\342\330\347\335\330\331 \337\336\350\343\332?" },
- { 69, "\262\330 \345\336\347\330\342\325 \322\330\331\342\330?" },
- { 70, "\277\336\324\322\366\331\335\330\331 \343\324\320\340" },
- { 71, "\262\335\330\327" },
- { 72, "\303\322\366\334\332\335\343\342\330 \340\325\326\330\334 Roland GS" },
- { 73, "\264\322\330\326\336\332 \335\325 \337\366\324\342\340\330\334\343\364 \340\366\322\325\335\354 \322\366\324\333\320\324\332\330 '%s'" },
- { 74, "English" },
- { 75, "\277\336\334\330\333\332\320 \327\320\337\343\341\332\343 \323\340\330:" },
- { 76, "\277\336\334\330\333\332\320 \337\366\324 \347\320\341 \337\366\324\332\333\356\347\325\335\335\357 DVD" },
- { 77, "\264\336\324. \350\333\357\345:" },
- { 78, "\265\334\343\333\357\342\336\340 FM Towns" },
- { 79, "\310\322\330\324\332\330\331 \340\325\326\330\334" },
- { 80, "\262\332\333\356\347\325\335\366 \322 \321\366\333\324 \336\337\346\366\367:" },
- { 81, "\262\366\333\354\335\330\331 \336\323\333\357\324" },
- { 82, "\277\336\322\335\320 \335\320\327\322\320 \323\340\330" },
- { 83, "\277\336\322\335\336\325\332\340\320\335\335\330\331 \340\325\326\330\334" },
- { 84, "\277\340\330\341\332\336\340\325\335\335\357 GC \337\320\324\343:" },
- { 85, "\307\343\342\333\330\322\366\341\342\354 GC \337\320\324\343:" },
- { 86, "\263\340\344" },
- { 87, "\277\340\330\341\342\340\366\331 GM:" },
- { 88, "\274\336\322\320 \366\335\342\325\340\344\325\331\341\343:" },
- { 89, "\300\320\341\342\325\340\330\327\320\342\336\340 GUI:" },
- { 90, "\263\340\320" },
- { 91, "\275\325\334\320\364 \344\320\331\333\366\322 \323\340\330" },
- { 92, "Game Id \335\325 \337\366\324\342\340\330\334\343\364\342\354\341\357" },
- { 93, "\310\333\357\345 \324\336 \323\340\330: " },
- { 94, "\263\333\336\321\320\333\354\335\325 \334\325\335\356" },
- { 95, "\277\325\340\325\331\342\330 \335\320 \337\320\337\332\343 \340\366\322\335\325\334 \322\330\351\325" },
- { 96, "\262\322\325\340\345" },
- { 97, "\263\340\320\344\366\332\320" },
- { 98, "\263\340\320\344\366\347\335\330\331 \340\325\326\330\334:" },
- { 99, "\305\320\340\324\322\320\340\335\336\325 \334\320\341\350\342\320\321\343\322\320\335\335\357 (\350\322\330\324\332\336, \320\333\325 \335\330\327\354\332\336\367 \357\332\336\341\342\366)" },
- { 100, "Hercules \317\335\342\320\340\335\330\331" },
- { 101, "Hercules \267\325\333\325\335\330\331" },
- { 102, "\267\320\345\336\322\320\342\330 \337\320\335\325\333\354 \366\335\341\342\340\343\334\325\335\342\366\322" },
- { 103, "\262\330\341\336\332\320 \357\332\366\341\342\354 \327\322\343\332\343 (\337\336\322\366\333\354\335\366\350\325) (\340\325\321\343\342)" },
- { 104, "\262\325\333\330\332\366 \327\335\320\347\325\335\335\357 \327\320\324\320\356\342\354 \332\340\320\351\343 \357\332\366\341\342\354 \327\322\343\332\343, \337\340\336\342\325 \322\336\335\330 \334\336\326\343\342\354 \335\325 \337\366\324\342\340\330\334\343\322\320\342\330\341\357 \322\320\350\336\356 \327\322\343\332\336\322\336\356 \332\320\340\342\336\356" },
- { 105, "\303\342\340\330\334\343\331\342\325 \332\333\320\322\366\350\343 Shift \324\333\357 \342\336\323\336, \351\336\321 \324\336\324\320\342\330 \324\325\332\366\333\354\332\320 \366\323\336\340" },
- { 106, "\263\336\340\330\327\336\335\342\320\333\354\335\330\331 underscan:" },
- { 107, "\265\334\343\333\357\342\336\340 IBM PCjr" },
- { 108, "ID:" },
- { 109, "\246\335\366\346\366\320\333\366\327\320\346\366\357 \334\325\340\325\326\366" },
- { 110, "\277\336\347\320\342\332\336\322\330\331 \334\320\341\350\342\320\321 \322\325\340\345\335\354\336\323\336 \325\332\340\320\335\343:" },
- { 111, "\275\320\341\342\340\336\356\356 \325\334\343\333\357\342\336\340 MT-32" },
- { 112, "\275\320\333\320\350\342\336\322\343\356 \334\325\340\325\326\343" },
- { 113, "\262\322\366\324" },
- { 114, "\275\325\337\340\320\322\330\333\354\335\330\331 \350\333\357\345" },
- { 115, "\277\340\330\327\335\320\347\325\335\335\357 \332\333\320\322\366\350" },
- { 116, "\272\333\320\322\366\320\342\343\340\320" },
- { 117, "\302\320\321\333\330\346\357 \332\333\320\322\366\350:" },
- { 118, "\272\333\320\322\366\350\366" },
- { 119, "\274\336\322\320 \323\340\320\344\366\347\335\336\323\336 \366\335\342\325\340\344\325\331\341\343 ScummVM" },
- { 120, "\274\336\322\320 \323\340\330. \267\334\366\335\320 \346\354\336\323\336 \337\320\340\320\334\325\342\340\343 \335\325 \337\325\340\325\342\322\336\340\330\342\354 \323\340\343 \335\320 \320\335\323\333\366\331\341\354\332\366\331 \322 \343\332\340\320\367\335\341\354\332\343" },
- { 121, "\274\336\322\320:" },
- { 122, "\262\333\366\322\336" },
- { 123, "\273\366\322\330\331 \332\333\366\332" },
- { 124, "\267\320\322\320\335\342\320\326\330\342\330" },
- { 125, "\267\320\322\320\335\342\320\326\330\342\330 \323\340\343:" },
- { 126, "\267\320\322\320\335\342\320\326\330\342\330 \327\321\325\340\325\326\325\335\335\357 \324\333\357 \322\330\321\340\320\335\336\367 \323\340\330" },
- { 127, "\265\334\343\333\357\342\336\340 MAME OPL:" },
- { 128, "MIDI" },
- { 129, "\277\336\341\330\333\325\335\335\357 MIDI:" },
- { 130, "MT-32" },
- { 131, "\277\340\330\341\342\340\366\331 MT-32:" },
- { 132, "\265\334\343\333\357\342\336\340 MT-32" },
- { 133, "\274\320\341\350\342\320\321 \323\336\333\336\322\335\336\323\336 \325\332\340\320\335\343:" },
- { 134, "\277\340\330\327\335\320\347\330\342\330" },
- { 135, "\264\336\324. \321\320\323\320\342\336..." },
- { 136, "\274\325\335\356" },
- { 137, "\300\366\327\335\325" },
- { 138, "\267\334\366\350\320\335\330\331 \340\325\326\330\334 AdLib/MIDI" },
- { 139, "\277\366\324\332\333\356\347\330\342\330 DVD" },
- { 140, "\277\366\324\332\333\356\347\330\342\330 SMB" },
- { 141, "\272\333\366\332 \334\330\350\332\336\356" },
- { 142, "\274\343\333\354\342\366\344\343\335\332\346\366\357" },
- { 143, "\274\343\327\330\347\335\330\331 \277\340\330\341\342\340\366\331:" },
- { 144, "\263\343\347\335\366\341\342\354 \334\343\327\330\332\330:" },
- { 145, "\262\330\334\332\335\343\342\330 \343\341\325" },
- { 146, "\275\320\327\322\320:" },
- { 147, "\274\325\340\325\326\320 \322\330\334\332\335\325\335\320" },
- { 148, "\274\325\340\325\326\320 \335\325 \335\320\333\320\323\336\324\326\325\335\320 (%d)" },
- { 149, "\274\325\340\325\326\320 \337\340\320\346\356\364" },
- { 150, "\274\325\340\325\326\320 \337\340\320\346\356\364, \337\320\337\332\320 \337\366\324\332\333\356\347\325\335\320" },
- { 151, "\275\366\332\336\333\330" },
- { 152, "\275\366" },
- { 153, "\264\320\342\320 \335\325 \327\320\337\330\341\320\335\320" },
- { 154, "\261\325\327 \334\343\327\330\332\330" },
- { 155, "\307\320\341 \323\340\330 \335\325 \327\320\337\330\341\320\335\336" },
- { 156, "\307\320\341 \335\325 \327\320\337\330\341\320\335\330\331" },
- { 157, "\275\325 \327\320\324\320\335\330\331" },
- { 158, "\261\325\327 \327\321\366\333\354\350\325\335\335\357" },
- { 159, "OK" },
- { 160, "\262\330\345\366\324\335\320 \347\320\341\342\336\342\320:" },
- { 161, "\277\325\340\325\332\340\330\342\330 \323\333\336\321\320\333\354\335\366 \343\341\342\320\335\336\322\332\330 MIDI" },
- { 162, "\277\325\340\325\332\340\330\342\330 \323\333\336\321\320\333\354\335\366 \343\341\342\320\335\336\322\332\330 MT-32" },
- { 163, "\277\325\340\325\332\340\330\342\330 \323\333\336\321\320\333\354\335\366 \343\341\342\320\335\336\322\332\330 \320\343\324\366\336" },
- { 164, "\277\325\340\325\332\340\330\342\330 \323\333\336\321\320\333\354\335\366 \343\341\342\320\335\336\322\332\330 \323\340\320\344\366\332\330" },
- { 165, "\277\325\340\325\332\340\330\342\330 \323\333\336\321\320\333\354\335\366 \343\341\342\320\335\336\322\332\330 \323\343\347\335\336\341\342\366" },
- { 166, "\265\334\343\333\357\342\336\340 PC \341\337\366\332\325\340\320" },
- { 167, "\277\320\340\336\333\354:" },
- { 168, "\310\333\357\345 \335\325 \364 \337\320\337\332\336\356" },
- { 169, "\310\333\357\345 \335\325 \364 \344\320\331\333\336\334" },
- { 170, "\310\333\357\345 \335\325 \327\335\320\331\324\325\335\330\331" },
- { 171, "\310\333\357\345\330" },
- { 172, "\277\320\343\327\320" },
- { 173, "\262\330\321\325\340\366\342\354 \323\340\343:" },
- { 174, "\277\333\320\342\344\336\340\334\320, \324\333\357 \357\332\336\367 \323\340\320 \321\343\333\320 \341\337\336\347\320\342\332\343 \340\336\327\340\336\321\333\325\335\320" },
- { 175, "\277\333\320\342\344\336\340\334\320:" },
- { 176, "\307\320\341 \323\340\330: " },
- { 177, "\261\343\324\354 \333\320\341\332\320, \322\330\321\325\340\366\342\354 \324\366\356" },
- { 178, "\310\333\357\345 \324\336 \337\333\320\323\366\335\366\322:" },
- { 179, "\277\340\330\341\342\340\366\331 \357\332\336\334\343 \322\366\324\324\320\364\342\354\341\357 \337\325\340\325\322\320\323\320:" },
- { 180, "\275\320\342\330\341\335\366\342\354 \332\333\320\322\366\350\343 \324\333\357 \337\340\330\327\335\320\347\325\335\335\357" },
- { 181, "\262\330\345\366\324" },
- { 182, "\262\330\345\366\324 \327 ScummVM" },
- { 183, "\275\325\324\336\341\342\320\342\335\354\336 \337\340\320\322 \324\333\357 \347\330\342\320\335\335\357" },
- { 184, "\277\336\334\330\333\332\320 \347\330\342\320\335\335\357" },
- { 185, "\277\325\340\325\337\340\330\327\335\320\347\330\342\330 \332\333\320\322\366\350\366" },
- { 186, "\262\330\324\320\333\330\342\330 \323\340\343 \327\366 \341\337\330\341\332\343. \275\325 \322\330\324\320\333\357\364 \323\340\343 \327 \326\336\340\341\342\332\336\323\336 \324\330\341\332\320" },
- { 187, "\300\325\326\330\334 \340\320\341\342\340\343\322\320\335\335\357:" },
- { 188, "\262\337\340\320\322\336" },
- { 189, "\277\340\320\322\330\331 \332\333\366\332" },
- { 190, "\277\340\320\322\330\331 \332\333\366\332" },
- { 191, "\277\336\322\325\340\335\343\342\330" },
- { 192, "\263\343\347\335\366\341\342\354 \325\344\325\332\342\366\322:" },
- { 193, "SMB" },
- { 194, "\267\320\337\330\341\320\342\330" },
- { 195, "\310\333\357\345 \327\321\325\340.: " },
- { 196, "\310\333\357\345 \324\333\357 \327\321\325\340\325\326\325\335\354: " },
- { 197, "\267\321\325\340\325\323\342\330 \323\340\343: " },
- { 198, "\277\336\350\343\332 \327\320\332\366\335\347\325\335\330\331!" },
- { 199, "\277\340\336\323\333\357\335\343\342\336 %d \337\320\337\336\332 ..." },
- { 200, "\263\336\333\336\322\335\325 \334\325\335\356 ScummVM" },
- { 201, "ScummVM \335\325 \327\334\366\323 \327\335\320\331\342\330 \324\322\330\326\336\332 \324\333\357 \327\320\337\343\341\332\343 \322\330\321\340\320\335\336\367 \323\340\330!" },
- { 202, "ScummVM \335\325 \334\336\326\325 \327\335\320\331\342\330 \323\340\343 \343 \322\332\320\327\320\335\366\331 \337\320\337\346\366!" },
- { 203, "ScummVM \335\325 \334\336\326\325 \322\366\324\332\340\330\342\330 \322\332\320\327\320\335\343 \337\320\337\332\343!" },
- { 204, "\277\336\350\343\332 \322 \341\337\330\341\332\343 \366\323\336\340" },
- { 205, "\277\336\350\343\332:" },
- { 206, "\262\330\321\325\340\366\342\354 SoundFont" },
- { 207, "\262\330\321\325\340\366\342\354 \342\325\334\343" },
- { 208, "\262\330\321\325\340\366\342\354 \324\336\324\320\342\332\336\322\343 \337\320\337\332\343 \323\340\330" },
- { 209, "\262\330\321\325\340\366\342\354 \324\366\356 \366 \332\333\366\332\335\366\342\354 '\277\340\330\327\335\320\347\330\342\330'" },
- { 210, "\262\330\321\325\340\366\342\354 \337\320\337\332\343 \324\333\357 \342\325\334 GUI" },
- { 211, "\262\330\321\325\340\366\342\354 \337\320\337\332\343 \327 \324\336\324\320\342\332\336\322\330\334\330 \344\320\331\333\320\334\330" },
- { 212, "\262\330\321\325\340\366\342\354 \337\320\337\332\343 \327 \337\333\320\323\330\335\320\334\330" },
- { 213, "\262\330\321\325\340\366\342\354 \337\320\337\332\343 \324\333\357 \327\321\325\340\325\326\325\335\354" },
- { 214, "\262\330\321\325\340\366\342\354 \337\320\337\332\343 \324\333\357 \327\321\325\340\325\326\325\335\354" },
- { 215, "\262\330\321\325\340\366\342\354 \337\320\337\332\343 \327 \344\320\331\333\320\334\330 \323\340\330" },
- { 216, "\307\343\342\333\330\322\366\341\342\354" },
- { 217, "\301\325\340\322\325\340:" },
- { 218, "\274\325\340\325\326\325\322\320 \337\320\337\332\320:" },
- { 219, "\272\336\340\336\342\332\330\331 \366\324\325\335\342\330\344\366\332\320\342\336\340, \357\332\330\331 \322\330\332\336\340\330\341\342\336\322\343\364\342\354\341\357 \324\333\357 \335\320\327\322 \327\321\325\340\325\326\325\335\330\345 \366\323\336\340 \366 \324\333\357 \327\320\337\343\341\332\343 \327 \332\336\334\320\335\324\335\336\367 \341\342\340\366\347\332\330" },
- { 220, "\277\336\332\320\327\320\342\330 \332\333\320\322\366\320\342\343\340\343" },
- { 221, "\277\336\332\320\327\343\322\320\342\330 \332\343\340\341\336\340 \334\330\350\366" },
- { 222, "\277\336\332\320\327\343\322\320\342\330 \341\343\321\342\330\342\340\330 \366 \322\366\324\342\322\336\340\356\322\320\342\330 \334\336\322\343" },
- { 223, "\277\336\332\320\327\320\342\330/\301\345\336\322\320\342\330 \332\343\340\341\336\340" },
- { 224, "\277\340\336\337\343\341\342\330\342\330" },
- { 225, "\277\340\336\337\343\341\342\330\342\330 \340\357\324\336\332" },
- { 226, "\277\340\336\337\343\341\342\330\342\330 \342\325\332\341\342" },
- { 227, "\277\340\330\332\340\366\337\330\342\330 \324\336 \332\340\320\367\322" },
- { 228, "\277\340\336\323\340\320\334\335\325 \334\320\341\350\342\320\321\343\322\320\335\335\357 (\345\336\340\336\350\320 \357\332\366\341\342\354, \320\333\325 \337\336\322\366\333\354\335\366\350\325)" },
- { 229, "\267\322\343\332 \343\322\366\334/\322\330\334\332" },
- { 230, "SoundFont \337\366\324\342\340\330\334\343\364\342\354\341\357 \324\325\357\332\330\334\330 \327\322\343\332\336\322\330\334\330 \332\320\340\342\320\334\330, Fluidsynth \366 Timidity" },
- { 231, "SoundFont:" },
- { 232, "\276\327\322" },
- { 233, "\301\337\325\346\366\320\333\354\335\366 \340\325\326\330\334\330 \340\325\335\324\325\340\330\335\323\343, \357\332\366 \337\366\324\342\340\330\334\343\356\342\354 \324\325\357\332\366 \366\323\340\330" },
- { 234, "\263\343\347\335\366\341\342\354 \341\337\325\346\366\320\333\354\335\330\345 \327\322\343\332\336\322\330\345 \325\344\325\332\342\366\322" },
- { 235, "\262\332\320\327\343\364 \322\330\345\366\324\335\330\331 \327\322\343\332\336\322\330\331 \337\340\330\341\342\340\366\331 \324\333\357 MIDI" },
- { 236, "\262\332\320\327\343\364 \327\322\343\332\336\322\330\331 \337\340\330\341\342\340\366\331 \337\336 \343\334\336\322\347\320\335\335\356 \324\333\357 \322\330\322\336\324\343 \335\320 Roland MT-32/LAPC1/CM32l/CM64" },
- { 237, "\262\332\320\327\343\364 \322\330\345\366\324\335\330\331 \327\322\343\332\336\322\330\331 \337\340\330\341\342\340\366\331 \320\321\336 \325\334\343\333\357\342\336\340 \327\322\343\332\336\322\336\367 \332\320\340\342\330" },
- { 238, "\262\332\320\327\343\364 \350\333\357\345 \324\336 \324\336\324\320\342\332\336\322\330\345 \344\320\331\333\366\322 \324\320\335\330\345, \322\330\332\336\340\330\341\342\336\322\343\322\320\335\330\345 \343\341\366\334\320 \366\323\340\320\334\330, \320\321\336 ScummVM" },
- { 239, "\262\332\320\327\343\364 \350\333\357\345 \324\336 \324\336\324\320\342\332\336\322\330\345 \344\320\331\333\366\322 \324\320\335\330\345 \324\333\357 \323\340\330" },
- { 240, "\262\332\320\327\343\364 \322\330\345\366\324\335\330\331 \327\322\343\332\336\322\330\331 \337\340\330\341\342\340\366\331 \320\321\336 \325\334\343\333\357\342\336\340 \327\322\343\332\336\322\336\367 \332\320\340\342\330" },
- { 241, "\262\332\320\327\343\364 \350\333\357\345 \324\336 \327\321\325\340\325\326\325\335\354 \323\340\330" },
- { 242, "\276\327\322\343\347\325\335\335\357" },
- { 243, "\263\343\347\335\366\341\342\354 \336\327\322\343\347\325\335\335\357:" },
- { 244, "\301\342\320\335\324\320\340\342\335\330\331 \340\320\341\342\325\340\330\327\320\342\336\340 (16bpp)" },
- { 245, "\267\320\337\343\341\342\330\342\330 \322\330\321\340\320\335\343 \323\340\343" },
- { 246, "\301\342\320\335:" },
- { 247, "\301\343\321" },
- { 248, "\310\322\330\324\332\366\341\342\354 \341\343\321\342\330\342\340\366\322:" },
- { 249, "\301\343\321\342\330\342\340\330" },
- { 250, "\267\334\366\335\330\342\330 \323\325\340\336\357" },
- { 251, "\302\320\337 \324\333\357 \333\366\322\336\323\336 \332\333\320\346\320\335\335\357, \337\336\324\322\366\331\335\330\331 \342\320\337 \324\333\357 \337\340\320\322\336\323\336 \332\333\320\346\320\335\335\357" },
- { 252, "\302\325\332\341\342 \366 \336\327\322\343\347\325\335\335\357:" },
- { 253, "\275\325 \334\336\326\343 \337\330\341\320\342\330 \343 \322\330\321\340\320\335\343 \337\320\337\332\343. \261\343\324\354 \333\320\341\332\320, \322\332\320\326\366\342\354 \366\335\350\343." },
- { 254, "\310\333\357\345 \324\336 \342\325\334:" },
- { 255, "\302\325\334\320:" },
- { 256, "\306\325\331 ID \323\340\330 \322\326\325 \322\330\332\336\340\330\341\342\336\322\343\364\342\354\341\357. \261\343\324\354 \333\320\341\332\320, \322\330\321\325\340\366\342\354 \366\335\350\330\331." },
- { 257, "\306\357 \323\340\320 \335\325 \337\366\324\342\340\330\334\343\364 \327\320\322\320\335\342\320\326\325\335\335\357 \327\321\325\340\325\326\325\335\354 \347\325\340\325\327 \323\336\333\336\322\335\325 \334\325\335\356." },
- { 258, "\307\320\341: " },
- { 259, "\307\320\341 \337\366\324\332\333\356\347\325\335\335\357 \324\336 \334\325\340\325\326\366 \322\330\342\366\332" },
- { 260, "\267\334\366\351\325\335\335\357 \342\336\340\332\320\335\354 \337\336 \336\341\366 X" },
- { 261, "\267\334\366\351\325\335\335\357 \342\336\340\332\320\335\354 \337\336 \336\341\366 Y" },
- { 262, "\300\325\326\330\334 \342\320\347\337\320\324\343 \322\330\334\332\335\325\335\330\331." },
- { 263, "\300\325\326\330\334 \342\320\347\337\320\324\343 \343\322\366\334\332\335\325\335\330\331." },
- { 264, "\301\337\340\320\322\326\335\366\331 Roland MT-32 (\322\330\334\332\335\343\342\330 \325\334\343\333\357\346\330\356 GM)" },
- { 265, "\262\330\334\330\332\320\364 \334\320\337\337\366\335\323 General MIDI \324\333\357 \366\323\336\340 \366\327 \327\322\343\332\336\322\336\356 \324\336\340\366\326\332\336\356 \324\333\357 Roland MT-32" },
- { 266, "\275\325\322\366\324\336\334\336" },
- { 267, "\275\325\322\366\324\336\334\320 \337\336\334\330\333\332\320" },
- { 268, "\262\366\324\332\333\356\347\330\342\330 DVD" },
- { 269, "\262\366\324\332\333\356\347\342\330 SMB" },
- { 270, "\261\325\327 \334\320\341\350\342\320\321\343\322\320\335\335\357 (\342\340\325\321\320 \321\343\324\325 \337\340\336\332\340\343\347\343\322\320\342\330 \335\320\333\366\322\336 \366 \335\320\337\340\320\322\336)" },
- { 271, "\300\325\326\330\334 \272\336\333\354\336\340\343 \335\325 \337\366\324\342\340\330\334\343\364\342\354\341\357" },
- { 272, "\267\321\325\340\325\326\325\335\335\357 \321\325\327 \366\334\325\335\366" },
- { 273, "\262\322\325\340\345" },
- { 274, "\262\330\332\336\340\330\341\342\336\322\343\322\320\342\330 \366 MIDI \366 AdLib \324\333\357 \323\325\335\325\340\320\346\366\367 \327\322\343\332\343" },
- { 275, "\262\330\332\336\340\330\341\342\336\322\343\322\320\342\330 \343\337\340\320\322\333\366\335\335\357 \332\343\340\341\336\340\336\334 \357\332 \335\320 \342\340\325\332\337\320\324\366 \333\320\337\342\336\337\366\322" },
- { 276, "\272\336\340\330\341\342\343\322\320\347:" },
- { 277, "\262\330\332\336\340\330\341\342\336\322\343\356 \324\340\320\331\322\325\340 SDL " },
- { 278, "\262\325\340\342\330\332\320\333\354\335\330\331 underscan:" },
- { 279, "\262\366\324\325\336" },
- { 280, "\262\366\340\342\343\320\333\354\335\320 \332\333\320\322\366\320\342\343\340\320" },
- { 281, "\263\343\347\335\366\341\342\354" },
- { 282, "Windows MIDI" },
- { 283, "\275\325\324\336\341\342\320\342\335\354\336 \337\340\320\322 \324\333\357 \327\320\337\330\341\343" },
- { 284, "\277\336\334\330\333\332\320 \327\320\337\330\341\343 \324\320\335\330\345" },
- { 285, "\302\320\332" },
- { 286, "\262\330 \337\336\322\330\335\335\366 \337\325\340\325\327\320\337\343\341\342\330\342\330 ScummVM \351\336\321 \327\320\341\342\336\341\343\322\320\342\330 \327\334\366\335\330." },
- { 287, "\267\336\335\320" },
- { 288, "\267\334\335\350. \334\320\350\342\320\321" },
- { 289, "\267\321\366\333. \334\320\350\342\320\321" },
- { 290, "\332\336\326\335\366 10 \345\322" },
- { 291, "\332\336\326\335\366 15 \345\322" },
- { 292, "\332\336\326\335\366 30 \345\322" },
- { 293, "\332\336\326\335\366 5 \345\322" },
- { 294, "\277\340\336 \337\340\336~\323~\340\320\334\343" },
- { 295, "~\264~\336\324. \323\340\343..." },
- { 296, "\262\366~\324~\334\366\335\320" },
- { 297, "~\267~\320\332\340\330\342\330" },
- { 298, "\300\325\324\320~\323~. \323\340\343..." },
- { 299, "~\264~\336\337\336\334\336\323\320" },
- { 300, "\272\325\340\343\322\320\335\335\357 \321\336\357\334\330 \322 Indy" },
- { 301, "~\272~\333\320\322\366\350\366" },
- { 302, "\273\366\322\336\340\343\332\330\331 \340\325\326\330\334" },
- { 303, "~\267~\320\322\320\335\342\320\326\330\342\330" },
- { 304, "~\267~\320\322\320\335..." },
- { 305, "~\275~\320\341\342" },
- { 306, "~O~K" },
- { 307, "~\276~\337\346\366\367" },
- { 308, "~\276~\337\346\366\367..." },
- { 309, "~\277~\336\337\325\340" },
- { 310, "~\262~\330\345\366\324" },
- { 311, "~\262~\330\324\320\333\330\342\330 \323\340\343" },
- { 312, "\277\340\336\324\336\322~\326~\330\342\330" },
- { 313, "~\277~\336\322\325\340\335\343\342\330\341\354 \322 \323\336\333\336\322\335\325 \334\325\335\356" },
- { 314, "~\267~\320\337\330\341\320\342\330" },
- { 315, "\267~\320~\337\343\341\332" },
- { 316, "\277\325\340\325\345\336\324\330 \320\332\342\330\322\336\322\320\335\366" },
- { 317, "\265\344\325\332\342\330 \322\336\324\330 \322\332\333\356\347\325\335\366" },
- { 318, "\300\325\326\330\334 \350\322\330\324\332\336\323\336 \337\325\340\325\345\336\324\343 \320\332\342\330\322\336\322\320\335\330\331" },
- { -1, NULL }
-};
-
-static const PoMessageEntry _translation_ru_RU[] = {
- { 0, "Project-Id-Version: ScummVM VERSION\nReport-Msgid-Bugs-To: scummvm-devel@li\nPOT-Creation-Date: 2010-08-13 12:49+0300\nPO-Revision-Date: 2010-06-13 20:55+0300\nLast-Translator: Eugene Sandulenko <sev@scummvm.org>\nLanguage-Team: Russian\nMIME-Version: 1.0\nContent-Type: text/plain; charset=iso-8859-5\nContent-Transfer-Encoding: 8bit\nLanguage: Russian\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" },
- { 1, " \262\353 \343\322\325\340\325\335\353, \347\342\336 \345\336\342\330\342\325 \322\353\331\342\330? " },
- { 2, " (\260\332\342\330\322\335\320\357)" },
- { 3, " (\270\323\340\353)" },
- { 4, " (\263\333\336\321\320\333\354\335\320\357)" },
- { 5, "(\341\336\321\340\320\335 %s)" },
- { 6, ", \336\350\330\321\332\320 \322\336 \322\340\325\334\357 \337\336\324\332\333\356\347\325\335\330\357 \337\320\337\332\330" },
- { 7, ", \337\320\337\332\320 \335\325 \337\336\324\332\333\356\347\325\335\320" },
- { 8, "... \330\351\343 ..." },
- { 9, "11 \332\263\346" },
- { 10, "22 \332\263\346" },
- { 11, "44 \332\263\346" },
- { 12, "48 \332\263\346" },
- { 13, "8 \332\263\346" },
- { 14, "<\337\336 \343\334\336\333\347\320\335\330\356>" },
- { 15, "\276 \337\340\336\323\340\320\334\334\325 ScummVM" },
- { 16, "\315\334\343\333\357\342\336\340 AdLib" },
- { 17, "\315\334\343\333\357\342\336\340 AdLib:" },
- { 18, "\267\322\343\332\336\322\320\357 \332\320\340\342\320 AdLib \330\341\337\336\333\354\327\343\325\342\341\357 \334\335\336\323\330\334\330 \330\323\340\320\334\330" },
- { 19, "\275\336\322\320\357 \330\323\340\320..." },
- { 20, "\315\334\343\333\357\342\336\340 \327\322\343\332\320 Amiga" },
- { 21, "\300\320\341\342\325\340\330\327\320\342\336\340 \341\336 \341\323\333\320\326\330\322\320\335\330\325\334 (16bpp)" },
- { 22, "\315\334\343\333\357\342\336\340 Apple II GS (\336\342\341\343\342\341\342\322\343\325\342)" },
- { 23, "\272\336\340\340\325\332\346\330\357 \341\336\336\342\335\336\350\325\335\330\357 \341\342\336\340\336\335" },
- { 24, "\275\320\327\335\320\347\325\335\335\320\357 \332\333\320\322\330\350\320 : %s" },
- { 25, "\275\320\327\335\320\347\325\335\335\320\357 \332\333\320\322\330\350\320 : \335\325\342" },
- { 26, "\260\343\324\330\336" },
- { 27, "\260\322\342\336\341\336\345\340\320\335\325\335\330\325:" },
- { 28, "\264\336\341\342\343\337\335\353\325 \324\322\330\326\332\330:" },
- { 29, "\276 \337~\340~\336\323\340\320\334\334\325..." },
- { 30, "\275\320\327\335\320\347\330\342\354 \332\333\320\322\330\350\330" },
- { 31, "\262\341\361" },
- { 32, "\317\340\332\336\341\342\354:" },
- { 33, "\315\334\343\333\357\342\336\340 \327\322\343\332\320 C64" },
- { 34, "\276\342\334\325\335\320" },
- { 35, "\275\325 \334\336\323\343 \341\336\327\324\320\342\354 \344\320\331\333" },
- { 36, "\270\327\334\325\335\330\342\354 \336\337\346\330\330 \330\323\340\353" },
- { 37, "\270\327\334\325\335\330\342\354 \323\333\336\321\320\333\354\335\353\325 \336\337\346\330\330 ScummVM" },
- { 38, "\276\342\334\325\342\354\342\325, \325\341\333\330 \343 \322\320\341 \337\336\324\332\333\356\347\325\335\336 Roland-\341\336\322\334\325\341\342\330\334\336\325 \327\322\343\332\336\322\336\325 \343\341\342\340\336\331\341\342\322\336 \330 \322\353 \345\336\342\330\342\325 \325\323\336 \330\341\337\336\333\354\327\336\322\320\342\354" },
- { 39, "\262\353\321\340\320\342\354" },
- { 40, "\262\353\321\325\340\330\342\325 \324\325\331\341\342\322\330\325 \324\333\357 \335\320\327\335\320\347\325\335\330\357" },
- { 41, "\276\347\330\341\342\330\342\354 \327\335\320\347\325\335\330\325" },
- { 42, "\267\320\332\340\353\342\354" },
- { 43, "\272\336\340\340\325\332\342\330\340\336\322\320\342\354 \341\336\336\342\335\336\350\325\335\330\325 \341\342\336\340\336\335 \324\333\357 \330\323\340 \341 \340\320\327\340\325\350\325\335\330\325\334 320x200" },
- { 44, "\275\325 \334\336\323\343 \335\320\331\342\330 \324\322\330\326\336\332 \324\333\357 \327\320\337\343\341\332\320 \322\353\321\340\320\335\335\336\331 \330\323\340\353" },
- { 45, "\302\325\332\343\351\330\331 \322\330\324\325\336\340\325\326\330\334:" },
- { 46, "\272\343\340\341\336\340 \322\335\330\327" },
- { 47, "\272\343\340\341\336\340 \322\333\325\322\336" },
- { 48, "\272\343\340\341\336\340 \322\337\340\320\322\336" },
- { 49, "\272\343\340\341\336\340 \322\322\325\340\345" },
- { 50, "\315\334\343\333\357\342\336\340 DOSBox OPL" },
- { 51, "DVD" },
- { 52, "DVD \337\336\324\332\333\356\347\325\335 \343\341\337\325\350\335\336" },
- { 53, "DVD \335\325 \337\336\324\332\333\356\347\325\335" },
- { 54, "\264\320\342\320: " },
- { 55, "\276\342\333\320\324\347\330\332" },
- { 56, "\277\336 \343\334\336\333\347\320\335\330\356" },
- { 57, "\303\324\320\333\330\342\354" },
- { 58, "\267\320\337\340\325\342\330\342\354 \322\353\332\333\356\347\325\335\330\325" },
- { 59, "\261\325\327 \323\340\320\344\330\332\330" },
- { 60, "\275\320\331\324\325\335\336 %d \335\336\322\353\345 \330\323\340 ..." },
- { 61, "\275\320\331\324\325\335\336 %d \335\336\322\353\345 \330\323\340." },
- { 62, "\277\336\332\320\327\320\342\354 " },
- { 63, "\277\336\332\320\327\320\342\354 \332\333\320\322\330\320\342\343\340\343" },
- { 64, "\262\353 \324\325\331\341\342\322\330\342\325\333\354\335\336 \345\336\342\330\342\325 \343\324\320\333\330\342\354 \355\342\336 \341\336\345\340\320\335\325\335\330\325?" },
- { 65, "\262\353 \324\325\331\341\342\322\330\342\325\333\354\335\336 \345\336\342\330\342\325 \343\324\320\333\330\342\354 \343\341\342\320\335\336\322\332\330 \324\333\357 \355\342\336\331 \330\323\340\353?" },
- { 66, "\262\353 \324\325\331\341\342\322\330\342\325\333\354\335\336 \345\336\342\330\342\325 \327\320\337\343\341\342\330\342\354 \324\325\342\325\332\342\336\340 \322\341\325\345 \330\323\340? \315\342\336 \337\336\342\325\335\346\330\320\333\354\335\336 \334\336\326\325\342 \324\336\321\320\322\330\342\354 \321\336\333\354\350\336\325 \332\336\333\330\347\325\341\342\322\336 \330\323\340." },
- { 67, "\262\353 \345\336\342\330\342\325 \327\320\323\340\343\327\330\342\354 \333\330\321\336 \341\336\345\340\320\335\330\342\354 \330\323\340\343?" },
- { 68, "\262\353 \345\336\342\330\342\325 \337\340\336\330\327\322\325\341\342\330 \320\322\342\336\334\320\342\330\347\325\341\332\330\331 \337\336\330\341\332?" },
- { 69, "\262\353 \345\336\342\330\342\325 \322\353\331\342\330?" },
- { 70, "\264\322\336\331\335\336\331 \343\324\320\340" },
- { 71, "\262\335\330\327" },
- { 72, "\262\332\333\356\347\330\342\354 \340\325\326\330\334 Roland GS" },
- { 73, "\264\322\330\326\336\332 \335\325 \337\336\324\324\325\340\326\330\322\320\325\342 \343\340\336\322\325\335\354 \336\342\333\320\324\332\330 '%s'" },
- { 74, "English" },
- { 75, "\276\350\330\321\332\320 \327\320\337\343\341\332\320 \330\323\340\353:" },
- { 76, "\276\350\330\321\332\320 \322\336 \322\340\325\334\357 \337\336\324\332\333\356\347\325\335\330\357 DVD" },
- { 77, "\264\336\337. \337\343\342\354:" },
- { 78, "\315\334\343\333\357\342\336\340 FM Towns" },
- { 79, "\261\353\341\342\340\353\331 \340\325\326\330\334" },
- { 80, "\262\332\333\356\347\325\335\335\353\325 \322 \321\330\333\324 \336\337\346\330\330:" },
- { 81, "\301\322\336\321\336\324\335\353\331 \336\321\327\336\340" },
- { 82, "\277\336\333\335\336\325 \335\320\327\322\320\335\330\325 \330\323\340\353" },
- { 83, "\277\336\333\335\336\355\332\340\320\335\335\353\331 \340\325\326\330\334" },
- { 84, "\303\341\332\336\340\325\335\330\325 GC \337\320\324\320:" },
- { 85, "\307\343\322\341\342\322\330\342\325\333\354\335\336\341\342\354 GC \337\320\324\320:" },
- { 86, "\263\340\344" },
- { 87, "\303\341\342\340\336\331\341\342\322\336 GM:" },
- { 88, "\317\327\353\332 GUI:" },
- { 89, "\300\330\341\336\322\320\333\332\320 GUI:" },
- { 90, "\270\323\340\320" },
- { 91, "\275\325\342 \344\320\331\333\336\322 \330\323\340\353" },
- { 92, "Game Id \335\325 \337\336\324\324\325\340\326\330\322\320\325\342\341\357" },
- { 93, "\263\324\325 \330\323\340\320: " },
- { 94, "\263\333\336\321\320\333\354\335\336\325 \334\325\335\356" },
- { 95, "\277\325\340\325\331\342\330 \335\320 \324\330\340\325\332\342\336\340\330\356 \343\340\336\322\335\325\334 \322\353\350\325" },
- { 96, "\262\322\325\340\345" },
- { 97, "\263\340\320\344\330\332\320" },
- { 98, "\263\340\320\344. \340\325\326\330\334:" },
- { 99, "\305\320\340\324\322\320\340\335\336\325 \334\320\341\350\342\320\321\330\340\336\322\320\335\330\325 (\321\353\341\342\340\336, \335\336 \335\330\327\332\336\323\336 \332\320\347\325\341\342\322\320)" },
- { 100, "Hercules \317\335\342\320\340\335\353\331" },
- { 101, "Hercules \267\325\333\325\335\353\331" },
- { 102, "\301\337\340\357\342\320\342\354 \337\320\335\325\333\354 \330\335\341\342\340\343\334\325\335\342\336\322" },
- { 103, "\262\353\341\336\332\336\325 \332\320\347\325\341\342\322\336 \327\322\343\332\320 (\334\325\324\333\325\335\335\325\325) (\340\325\321\343\342)" },
- { 104, "\261\276\333\354\350\330\325 \327\335\320\347\325\335\330\357 \327\320\324\320\356\342 \333\343\347\350\325\325 \332\320\347\325\341\342\322\336 \327\322\343\332\320, \336\324\335\320\332\336 \336\335\330 \334\336\323\343\342 \335\325 \337\336\324\324\325\340\326\330\322\320\342\354\341\357 \322\320\350\325\331 \327\322\343\332\336\322\336\331 \332\320\340\342\336\331" },
- { 105, "\303\324\325\340\326\330\322\320\331\342\325 \332\333\320\322\330\350\343 Shift \324\333\357 \342\336\323\336, \347\342\336\321\353 \324\336\321\320\322\330\342\354 \335\325\341\332\336\333\354\332\336 \330\323\340" },
- { 106, "\263\336\340\330\327\336\335\342\320\333\354\335\353\331 underscan:" },
- { 107, "\315\334\343\333\357\342\336\340 IBM PCjr" },
- { 108, "ID:" },
- { 109, "\270\335\330\346\330\320\333\330\327\320\346\330\357 \341\325\342\330" },
- { 110, "\275\320\347\320\333\354\335\353\331 \334\320\341\350\342\320\321 \322\325\340\345\335\325\323\336 \355\332\340\320\335\320:" },
- { 111, "\275\320\341\342\340\320\330\322\320\356 \355\334\343\333\357\342\336\340 MT-32" },
- { 112, "\275\320\341\342\340\320\330\322\320\356 \341\325\342\354" },
- { 113, "\262\322\336\324" },
- { 114, "\275\325\322\325\340\335\353\331 \337\343\342\354" },
- { 115, "\275\320\327\335\320\347\325\335\330\325 \332\333\320\322\330\350" },
- { 116, "\272\333\320\322\330\320\342\343\340\320" },
- { 117, "\302\320\321\333\330\346\320 \332\333\320\322\330\350:" },
- { 118, "\272\333\320\322\330\350\330" },
- { 119, "\317\327\353\332 \323\340\320\344\330\347\325\341\332\336\323\336 \330\335\342\325\340\344\325\331\341\320 ScummVM" },
- { 120, "\317\327\353\332 \330\323\340\353. \270\327\334\325\335\325\335\330\325 \355\342\336\323\336 \337\320\340\320\334\325\342\340\320 \335\325 \337\340\325\322\340\320\342\330\342 \330\323\340\343 \335\320 \320\335\323\333\330\331\341\332\336\334 \322 \340\343\341\341\332\343\356" },
- { 121, "\317\327\353\332:" },
- { 122, "\262\333\325\322\336" },
- { 123, "\273\325\322\353\331 \351\325\333\347\336\332" },
- { 124, "\267\320\323\340\343\327\330\342\354" },
- { 125, "\267\320\323\340\343\327\330\342\354 \330\323\340\343:" },
- { 126, "\267\320\323\340\343\327\330\342\354 \341\336\345\340\335\325\335\330\325 \324\333\357 \322\353\321\340\320\335\335\336\331 \330\323\340\353" },
- { 127, "\315\334\343\333\357\342\336\340 MAME OPL" },
- { 128, "MIDI" },
- { 129, "\303\341\330\333\325\335\330\325 MIDI:" },
- { 130, "MT-32" },
- { 131, "\303\341\342\340. MT-32:" },
- { 132, "\315\334\343\333\357\342\336\340 MT-32" },
- { 133, "\274\320\341\350\342\320\321 \323\333\320\322\335\336\323\336 \355\332\340\320\335\320:" },
- { 134, "\275\320\327\335\320\347\330\342\354" },
- { 135, "\274\335\336\323\336 \330\323\340..." },
- { 136, "\274\325\335\356" },
- { 137, "\300\320\327\335\336\325" },
- { 138, "\301\334\325\350\320\335\335\353\331 \340\325\326\330\334 AdLib/MIDI" },
- { 139, "\277\336\324\332\333\356\347\330\342\354 DVD" },
- { 140, "\277\336\324\332\333\356\347\330\342\354 SMB" },
- { 141, "\272\333\330\332 \334\353\350\354\356" },
- { 142, "\274\343\333\354\342\330\344\343\335\332\346\330\357" },
- { 143, "\267\322\343\332\336\322\336\325 \343\341\342-\322\336:" },
- { 144, "\263\340\336\334\332. \334\343\327\353\332\330:" },
- { 145, "\262\353\332\333. \322\341\361" },
- { 146, "\275\320\327\322:" },
- { 147, "\301\325\342\354 \322\353\332\333\356\347\325\335\320" },
- { 148, "\301\325\342\354 \335\325 \335\320\341\342\340\336\325\335\320 (%d)" },
- { 149, "\301\325\342\354 \340\320\321\336\342\320\325\342" },
- { 150, "\301\325\342\354 \340\320\321\336\342\320\325\342, \337\320\337\332\320 \337\336\324\332\333\356\347\325\335\320" },
- { 151, "\275\330\332\336\323\324\320" },
- { 152, "\275\325\342" },
- { 153, "\264\320\342\320 \335\325 \327\320\337\330\341\320\335\320" },
- { 154, "\261\325\327 \334\343\327\353\332\330" },
- { 155, "\262\340\325\334\357 \330\323\340\353 \335\325 \327\320\337\330\341\320\335\336" },
- { 156, "\262\340\325\334\357 \335\325 \327\320\337\330\341\320\335\336" },
- { 157, "\275\325 \327\320\324\320\335" },
- { 158, "\261\325\327 \343\322\325\333\330\347\325\335\330\357" },
- { 159, "OK" },
- { 160, "\307\320\341\342\336\342\320 \327\322\343\332\320:" },
- { 161, "\277\325\340\325\332\340\353\342\354 \323\333\336\321\320\333\354\335\353\325 \343\341\342\320\335\336\322\332\330 MIDI" },
- { 162, "\277\325\340\325\332\340\353\342\354 \323\333\336\321\320\333\354\335\353\325 \343\341\342\320\335\336\322\332\330 MT-32" },
- { 163, "\277\325\340\325\332\340\353\342\354 \323\333\336\321\320\333\354\335\353\325 \343\341\342\320\335\336\322\332\330 \320\343\324\330\336" },
- { 164, "\277\325\340\325\332\340\353\342\354 \323\333\336\321\320\333\354\335\353\325 \343\341\342\320\335\336\322\332\330 \323\340\320\344\330\332\330" },
- { 165, "\277\325\340\325\332\340\353\342\354 \323\333\336\321\320\333\354\335\353\325 \343\341\342\320\335\336\322\332\330 \323\340\336\334\332\336\341\342\330" },
- { 166, "\315\334\343\333\357\342\336\340 PC \341\337\330\332\325\340\320" },
- { 167, "\277\320\340\336\333\354:" },
- { 168, "\277\343\342\354 \335\325 \357\322\333\357\325\342\341\357 \324\330\340\325\332\342\336\340\330\325\331" },
- { 169, "\277\343\342\354 \335\325 \357\322\333\357\325\342\341\357 \344\320\331\333\336\334" },
- { 170, "\277\343\342\354 \335\325 \335\320\331\324\325\335" },
- { 171, "\277\343\342\330" },
- { 172, "\277\320\343\327\320" },
- { 173, "\262\353\321\325\340\330\342\325 \330\323\340\343:" },
- { 174, "\277\333\320\342\344\336\340\334\320, \324\333\357 \332\336\342\336\340\336\331 \330\323\340\320 \321\353\333\320 \330\327\335\320\347\320\333\354\335\336 \340\320\327\340\320\321\336\342\320\335\320" },
- { 175, "\277\333\320\342\344\336\340\334\320:" },
- { 176, "\262\340\325\334\357 \330\323\340\353: " },
- { 177, "\277\336\326\320\333\343\331\341\342\320, \322\353\321\325\340\330\342\325 \324\325\331\341\342\322\330\325" },
- { 178, "\277\343\342\354 \332 \337\333\320\323\330\335\320\334:" },
- { 179, "\267\322\343\332\336\322\336\325 \343\341\342-\322\336:" },
- { 180, "\275\320\326\334\330\342\325 \332\333\320\322\330\350\343 \324\333\357 \335\320\327\335\320\347\325\335\330\357" },
- { 181, "\262\353\345\336\324" },
- { 182, "\262\353\345\336\324 \330\327 ScummVM" },
- { 183, "\275\325\324\336\341\342\320\342\336\347\335\336 \337\340\320\322 \324\333\357 \347\342\325\335\330\357" },
- { 184, "\276\350\330\321\332\320 \347\342\325\335\330\357" },
- { 185, "\277\325\340\325\335\320\327\335\320\347\330\342\354 \332\333\320\322\330\350\330" },
- { 186, "\303\324\320\333\330\342\354 \330\323\340\343 \330\327 \341\337\330\341\332\320. \275\325 \343\324\320\333\357\325\342 \330\323\340\343 \341 \326\325\341\342\332\336\323\336 \324\330\341\332\320" },
- { 187, "\300\325\326\330\334 \340\320\341\342\340\320:" },
- { 188, "\262\337\340\320\322\336" },
- { 189, "\277\340\320\322\353\331 \351\325\333\347\336\332" },
- { 190, "\277\340\320\322\353\331 \351\325\333\347\336\332" },
- { 191, "\277\336\322\325\340\335\343\342\354" },
- { 192, "\263\340\336\334\332. SFX:" },
- { 193, "SMB" },
- { 194, "\267\320\337\330\341\320\342\354" },
- { 195, "\277\343\342\354 \341\336\345\340: " },
- { 196, "\301\336\345\340\320\335\325\335\330\357 \330\323\340:" },
- { 197, "\301\336\345\340\320\335\330\342\354 \330\323\340\343: " },
- { 198, "\277\336\330\341\332 \327\320\332\336\335\347\325\335!" },
- { 199, "\277\340\336\341\334\336\342\340\325\335\336 %d \324\330\340\325\332\342\336\340\330\331 ..." },
- { 200, "\263\333\320\322\335\336\325 \334\325\335\356 ScummVM" },
- { 201, "ScummVM \335\325 \341\334\336\323 \335\320\331\342\330 \324\322\330\326\336\332 \324\333\357 \327\320\337\343\341\332\320 \322\353\321\340\320\335\335\336\331 \330\323\340\353!" },
- { 202, "ScummVM \335\325 \334\336\326\325\342 \335\320\331\342\330 \330\323\340\343 \322 \343\332\320\327\320\335\335\336\331 \324\330\340\325\332\342\336\340\330\330!" },
- { 203, "ScummVM \335\325 \334\336\326\325\342 \336\342\332\340\353\342\354 \343\332\320\327\320\335\335\343\356 \324\330\340\325\332\342\336\340\330\356!" },
- { 204, "\277\336\330\341\332 \322 \341\337\330\341\332\325 \330\323\340" },
- { 205, "\277\336\330\341\332:" },
- { 206, "\262\353\321\325\340\330\342\325 SoundFont" },
- { 207, "\262\353\321\325\340\330\342\325 \342\325\334\343" },
- { 208, "\262\353\321\325\340\330\342\325 \324\336\337\336\333\335\330\342\325\333\354\335\343\356 \324\330\340\325\332\342\336\340\330\356 \330\323\340\353" },
- { 209, "\262\353\321\325\340\330\342\325 \324\325\331\341\342\322\330\325 \330 \332\333\330\332\335\330\342\325 '\275\320\327\335\320\347\330\342\354'" },
- { 210, "\262\353\321\325\340\330\342\325 \324\330\340\325\332\342\336\340\330\356 \324\333\357 \342\325\334 GUI" },
- { 211, "\262\353\321\325\340\330\342\325 \324\330\340\325\332\342\336\340\330\356 \341 \324\336\337\336\333\335\330\342\325\333\354\335\353\334\330 \344\320\331\333\320\334\330" },
- { 212, "\262\353\321\325\340\330\342\325 \324\330\340\325\332\342\336\340\330\356 \341 \337\333\320\323\330\335\320\334\330" },
- { 213, "\262\353\321\325\340\330\342\325 \324\330\340\325\332\342\336\340\330\356 \324\333\357 \341\336\345\340\320\335\325\335\330\331" },
- { 214, "\262\353\321\325\340\330\342\325 \324\330\340\325\332\342\336\340\330\356 \324\333\357 \341\336\345\340\320\335\325\335\330\331" },
- { 215, "\262\353\321\325\340\330\342\325 \324\330\340\325\332\342\336\340\330\356 \341 \344\320\331\333\320\334\330 \330\323\340\353" },
- { 216, "\307\343\322\341\342\322\330\342\325\333\354\335\336\341\342\354" },
- { 217, "\301\325\340\322\325\340:" },
- { 218, "\301\325\342\325\322\320\357 \337\320\337\332\320:" },
- { 219, "\272\336\340\336\342\332\330\331 \330\324\325\335\342\330\344\330\332\320\342\336\340, \330\341\337\336\333\354\327\343\325\334\353\331 \324\333\357 \330\334\325\335 \341\336\345\340\320\335\325\335\330\331 \330\323\340 \330 \324\333\357 \327\320\337\343\341\332\320 \330\327 \332\336\334\320\335\324\335\336\331 \341\342\340\336\332\330" },
- { 220, "\277\336\332\320\327\320\342\354 \332\333\320\322\330\320\342\343\340\343" },
- { 221, "\277\336\332\320\327\353\322\320\342\354 \332\343\340\341\336\340 \334\353\350\330" },
- { 222, "\277\336\332\320\327\353\322\320\342\354 \341\343\321\342\330\342\340\353 \330 \322\336\341\337\340\336\330\327\322\336\324\330\342\354 \340\325\347\354" },
- { 223, "\277\336\332\320\327\320\342\354/\303\321\340\320\342\354 \332\343\340\341\336\340" },
- { 224, "\277\340\336\337\343\341\342\330\342\354" },
- { 225, "\277\340\336\337\343\341\342\330\342\354 \341\342\340\336\332\343" },
- { 226, "\277\340\336\337\343\341\342\330\342\354 \342\325\332\341\342" },
- { 227, "\277\340\330\332\340\325\337\330\342\354 \332 \323\340\320\335\330\346\320\334" },
- { 228, "\277\340\336\323\340\320\334\334\335\336\325 \334\320\341\350\342\320\321\330\340\336\322\320\335\330\325 (\345\336\340\336\350\325\325 \332\320\347\325\341\342\322\336, \335\336 \334\325\324\333\325\335\335\325\325)" },
- { 229, "\267\322\343\332 \322\332\333/\322\353\332\333" },
- { 230, "SoundFont\353 \337\336\324\324\325\340\324\326\330\322\320\356\342\341\357 \335\325\332\336\342\336\340\353\334\330 \327\322\343\332\336\322\353\334\330 \332\320\340\342\320\334\330, Fluidsynth \330 Timidity" },
- { 231, "SoundFont:" },
- { 232, "\276\327\322" },
- { 233, "\301\337\325\346\330\320\333\354\335\353\325 \340\325\326\330\334\353 \340\325\335\324\325\340\330\335\323\320, \337\336\324\324\325\340\326\330\322\320\325\334\353\325 \335\325\332\336\342\336\340\353\334\330 \330\323\340\320\334\330" },
- { 234, "\263\340\336\334\332\336\341\342\354 \341\337\325\346\330\320\333\354\335\353\345 \327\322\343\332\336\322\353\345 \355\344\344\325\332\342\336\322" },
- { 235, "\303\332\320\327\353\322\320\325\342 \322\353\345\336\324\335\336\325 \327\322\343\332\336\322\336\325 \343\341\342\340\336\331\341\342\322\336 \324\333\357 MIDI" },
- { 236, "\303\332\320\327\353\322\320\325\342 \327\322\343\332\336\322\336\325 \343\341\342\340\336\331\341\342\322\336 \337\336 \343\334\336\333\347\320\335\330\357 \324\333\357 \322\353\322\336\324\320 \335\320 Roland MT-32/LAPC1/CM32l/CM64" },
- { 237, "\303\332\320\327\353\322\320\325\342 \322\353\345\336\324\335\336\325 \327\322\343\332\336\322\336\325 \343\341\342\340\336\331\341\342\322\336 \330\333\330 \355\334\343\333\357\342\336\340 \327\322\343\332\336\322\336\331 \332\320\340\342\353" },
- { 238, "\303\332\320\327\353\322\320\325\342 \337\343\342\354 \332 \324\336\337\336\333\335\330\342\325\333\354\335\353\334 \344\320\331\333\320\334 \324\320\335\335\353\345, \330\341\337\336\333\354\327\343\325\334\353\345 \322\341\325\334\330 \330\323\340\320\334\330, \333\330\321\336 ScummVM" },
- { 239, "\303\332\320\327\353\322\320\325\342 \337\343\342\354 \332 \324\336\337\336\333\335\330\342\325\333\354\335\353\334 \344\320\331\333\320\334 \324\320\335\335\353\345 \324\333\357 \330\323\340\353" },
- { 240, "\303\332\320\327\353\322\320\325\342 \322\353\345\336\324\335\336\325 \327\322\343\332\336\322\336\325 \343\341\342\340\336\331\341\342\322\336 \330\333\330 \355\334\343\333\357\342\336\340 \327\322\343\332\336\322\336\331 \332\320\340\342\353" },
- { 241, "\303\332\320\327\353\322\320\325\342 \337\343\342\354 \332 \341\336\345\340\320\335\325\335\330\357\334 \330\323\340\353" },
- { 242, "\276\327\322\343\347\332\320" },
- { 243, "\263\340\336\334\332. \336\327\322\343\347\332\330:" },
- { 244, "\301\342\320\335\324\320\340\342\335\353\331 \340\320\341\342\325\340\330\327\320\342\336\340 (16bpp)" },
- { 245, "\267\320\337\343\341\342\330\342\354 \322\353\321\340\320\335\335\343\356 \330\323\340\343" },
- { 246, "\301\336\341\342\336\357\335\330\325:" },
- { 247, "\301\343\321" },
- { 248, "\301\332\336\340\336\341\342\354 \342\330\342\340\336\322:" },
- { 249, "\301\343\321\342\330\342\340\353" },
- { 250, "\301\334\325\335\330\342\354 \323\325\340\336\357" },
- { 251, "\302\320\337 \324\333\357 \333\325\322\336\323\336 \351\325\333\347\332\320, \324\322\336\331\335\336\331 \342\320\337 \324\333\357 \337\340\320\322\336\323\336 \351\325\333\347\332\320" },
- { 252, "\302\325\332\341\342 \330 \336\327\322\343\347\332\320:" },
- { 253, "\275\325 \334\336\323\343 \337\330\341\320\342\354 \322 \322\353\321\340\320\335\335\343\356 \324\330\340\325\332\342\336\340\330\356. \277\336\326\320\333\343\331\341\342\320, \343\332\320\326\330\342\325 \324\340\343\323\343\356." },
- { 254, "\263\324\325 \342\325\334\353:" },
- { 255, "\302\325\334\320:" },
- { 256, "\315\342\336\342 ID \330\323\340\353 \343\326\325 \330\341\337\336\333\354\327\343\325\342\341\357. \277\336\326\320\333\343\331\341\342\320, \322\353\321\325\340\330\342\325 \324\340\343\323\336\331." },
- { 257, "\315\342\320 \330\323\340\320 \335\325 \337\336\324\324\325\340\326\330\322\320\325\342 \327\320\323\340\343\327\332\343 \341\336\345\340\320\335\325\335\330\331 \347\325\340\325\327 \323\333\320\322\335\336\325 \334\325\335\356." },
- { 258, "\262\340\325\334\357: " },
- { 259, "\262\340\325\334\357 \337\336\324\332\333\356\347\325\335\330\357 \332 \341\325\342\330 \330\341\342\325\332\333\336" },
- { 260, "\301\334\325\351\325\335\330\325 \332\320\341\320\335\330\331 \337\336 \336\341\330 X" },
- { 261, "\301\334\325\351\325\335\330\325 \332\320\341\320\335\330\331 \337\336 \336\341\330 Y" },
- { 262, "\300\325\326\330\334 \342\320\347\337\320\324\320 \322\353\332\333\356\347\325\335." },
- { 263, "\300\325\326\330\334 \342\320\347\337\320\324\320 \322\332\333\356\347\325\335." },
- { 264, "\275\320\341\342\336\357\351\330\331 Roland MT-32 (\327\320\337\340\325\342\330\342\354 \355\334\343\333\357\346\330\356 GM)" },
- { 265, "\262\353\332\333\356\347\320\325\342 \334\320\337\337\330\335\323 General MIDI \324\333\357 \330\323\340 \341 \327\322\343\332\336\322\336\331 \324\336\340\336\326\332\336\331 \324\333\357 Roland MT-32" },
- { 266, "\275\325\330\327\322\325\341\342\335\336" },
- { 267, "\275\325\330\327\322\325\341\342\335\320\357 \336\350\330\321\332\320" },
- { 268, "\276\342\332\333\356\347\330\342\354 DVD" },
- { 269, "\276\342\332\333\356\347\342\354 SMB" },
- { 270, "\261\325\327 \334\320\341\350\342\320\321\330\340\336\322\320\335\330\357 (\335\343\326\335\336 \321\343\324\325\342 \337\340\336\332\340\343\347\330\322\320\342\354 \322\333\325\322\336 \330 \322\337\340\320\322\336)" },
- { 271, "\275\325\337\336\324\324\325\340\326\330\322\320\325\334\353\331 \340\325\326\330\334 \346\322\325\342\320" },
- { 272, "\301\336\345\340\320\335\325\335\330\325 \321\325\327 \330\334\325\335\330" },
- { 273, "\262\322\325\340\345" },
- { 274, "\270\341\337\336\333\354\327\336\322\320\342\354 \330 MIDI \330 AdLib \324\333\357 \323\325\335\325\340\320\346\330\330 \327\322\343\332\320" },
- { 275, "\270\341\337\336\333\354\327\336\322\320\342\354 \343\337\340\320\322\333\325\335\330\325 \332\343\340\341\336\340\336\334 \332\320\332 \335\320 \342\340\325\332\337\320\324\325 \333\325\337\342\336\337\336\322" },
- { 276, "\277\336\333\354\327\336\322\320\342\325\333\354:" },
- { 277, "\270\341\337\336\333\354\327\343\356 \324\340\320\331\322\325\340 SDL " },
- { 278, "\262\325\340\342\330\332\320\333\354\335\353\331 underscan:" },
- { 279, "\262\330\324\325\336" },
- { 280, "\262\330\340\342\343\320\333\354\335\320\357 \332\333\320\322\330\320\342\343\340\320" },
- { 281, "\263\340\336\334\332\336\341\342\354" },
- { 282, "Windows MIDI" },
- { 283, "\275\325\324\336\341\342\320\342\336\347\335\336 \337\340\320\322 \324\333\357 \327\320\337\330\341\330" },
- { 284, "\276\350\330\321\332\320 \327\320\337\330\341\330 \324\320\335\335\353\345" },
- { 285, "\264\320" },
- { 286, "\262\353 \324\336\333\326\335\353 \337\325\340\325\327\320\337\343\341\342\330\342\354 ScummVM \347\342\336\321\353 \337\340\330\334\325\335\330\342\354 \330\327\334\325\335\325\335\330\357." },
- { 287, "\267\336\335\320" },
- { 288, "\303\334\325\335\354\350. \334\320\341\350\342\320\321" },
- { 289, "\303\322\325\333. \334\320\341\350\342\320\321" },
- { 290, "\332\320\326\324\353\325 10 \334\330\335\343\342" },
- { 291, "\332\320\326\324\353\325 15 \334\330\335\343\342" },
- { 292, "\332\320\326\324\353\325 30 \334\330\335\343\342" },
- { 293, "\332\320\326\324\353\325 5 \334\330\335\343\342" },
- { 294, "\276 \337\340\336~\323~\340\320\334\334\325" },
- { 295, "~\264~\336\321. \330\323\340\343..." },
- { 296, "\276~\342~\334\325\335\320" },
- { 297, "~\267~\320\332\340\353\342\354" },
- { 298, "\276~\337~\346\330\330 \330\323\340\353..." },
- { 299, "~\277~\336\334\336\351\354" },
- { 300, "\303\337\340\320\322\333\325\335\330\325 \321\336\357\334\330 \322 Indy" },
- { 301, "~\272~\333\320\322\330\350\330" },
- { 302, "\273\325\322\336\340\343\332\330\331 \340\325\326\330\334" },
- { 303, "~\267~\320\323\340\343\327\330\342\354" },
- { 304, "~\267~\320\323\340\343\327\330\342\354..." },
- { 305, "~\301~\333\325\324" },
- { 306, "~O~K" },
- { 307, "~\276~\337\346\330\330" },
- { 308, "~\276~\337\346\330\330..." },
- { 309, "~\277~\340\325\324" },
- { 310, "~\262~\353\345\336\324" },
- { 311, "~\303~\324\320\333\330\342\354 \330\323\340\343" },
- { 312, "\277\340\336\324\336\333~\326~\330\342\354" },
- { 313, "~\262~\353\331\342\330 \322 \323\333\320\322\335\336\325 \334\325\335\356" },
- { 314, "~\267~\320\337\330\341\320\342\354" },
- { 315, "\277~\343~\341\332" },
- { 316, "\277\325\340\325\345\336\324\353 \320\332\342\330\322\330\340\336\322\320\335\353" },
- { 317, "\315\344\344\325\332\342\353 \322\336\324\353 \322\332\333\356\347\325\335\353" },
- { 318, "\300\325\326\330\334 \321\353\341\342\340\336\323\336 \337\325\340\325\345\336\324\320 \320\332\342\330\322\330\340\336\322\320\335" },
- { -1, NULL }
-};
-
-static const PoMessageEntry _translation_hu_HU[] = {
- { 0, "Project-Id-Version: ScummVM VERSION\nReport-Msgid-Bugs-To: scummvm-devel@lists.sf.net\nPOT-Creation-Date: 2010-08-11 22:12+0100\nPO-Revision-Date: 2009-11-25 07:42-0500\nLast-Translator: Alex Bevilacqua <alexbevi@gmail.com>\nLanguage-Team: Hungarian\nMIME-Version: 1.0\nContent-Type: text/plain; charset=cp1250\nContent-Transfer-Encoding: 8bit\nLanguage: \nPlural-Forms: nplurals=2; plural=(n != 1);\n" },
- { 14, "<alap\351rtelmezett>" },
- { 16, "AdLib vezet :" },
- { 17, "AdLib vezet :" },
- { 20, "AdLib vezet :" },
- { 23, "Aspect adag korrekci\363" },
- { 26, "Hang" },
- { 27, "Automatikus ment\351s:" },
- { 30, "Kulcsok" },
- { 33, "AdLib vezet :" },
- { 45, "Renderel\351si m\363d:" },
- { 56, "<alap\351rtelmezett>" },
- { 72, "K\351pess\351 Roland GS Mode" },
- { 77, "Extra \332tvonal:" },
- { 79, "Grafikus m\363d:" },
- { 83, "Teljes k\351perny s m\363d:" },
- { 89, "Lek\351pez eszk\366z GUI:" },
- { 93, "Extra \332tvonal:" },
- { 97, "Grafik\341val" },
- { 98, "Grafikus m\363d:" },
- { 118, "Kulcsok" },
- { 127, "AdLib vezet :" },
- { 129, "MIDI nyeres\351g:" },
- { 131, "Zene mennyis\351g:" },
- { 138, "Vegyes AdLib/MIDI m\363d" },
- { 143, "Zene mennyis\351g:" },
- { 144, "Zene mennyis\351g:" },
- { 145, "Muta \326sszes" },
- { 151, "Soha" },
- { 152, "Semmi" },
- { 157, "Semmi" },
- { 159, "Igen" },
- { 160, "Kimeneti teljes\355tm\351ny:" },
- { 171, "\326sv\351nyek" },
- { 172, "\326sv\351nyek" },
- { 187, "Renderel\351si m\363d:" },
- { 192, "SFX mennyis\351ge" },
- { 195, "Extra \332tvonal:" },
- { 217, "Soha" },
- { 242, "Csak a besz\351d" },
- { 243, "Besz\351d mennyis\351g:" },
- { 248, "Felirat sebess\351g:" },
- { 249, "Csak feliratok" },
- { 252, "Sz\366veg \351s besz\351d:" },
- { 255, "T\351ma:" },
- { 258, "T\351ma:" },
- { 264, "Igaz Roland MT-32 (megb\351n\355t GM emul\341ci\363)" },
- { 277, "Zenei vezet :" },
- { 281, "Volumene" },
- { 287, "Semmi" },
- { 290, "10 percenk\351nt" },
- { 291, "15 percenk\351nt" },
- { 292, "30 percenk\351nt" },
- { 293, "5 percenk\351nt" },
- { 301, "Kulcsok" },
- { 302, "Renderel\351si m\363d:" },
- { 306, "Igen" },
- { -1, NULL }
-};
-
-static const PoMessageEntry _translation_es_ES[] = {
- { 0, "Project-Id-Version: ScummVM 1.2.0svn\nReport-Msgid-Bugs-To: scummvm-devel@lists.sf.net\nPOT-Creation-Date: 2010-08-11 22:12+0100\nPO-Revision-Date: 2010-07-30 22:17+0100\nLast-Translator: Tom\341s Maidagan\nLanguage-Team: \nMIME-Version: 1.0\nContent-Type: text/plain; charset=iso-8859-1\nContent-Transfer-Encoding: 8bit\nLanguage: Espanol\n" },
- { 1, "\277Seguro que quieres salir?" },
- { 2, "(Activa)" },
- { 3, "(Juego)" },
- { 4, "(General)" },
- { 5, "(compilado el %s)" },
- { 6, ", error al montar el disco compartido" },
- { 7, ", disco compartido no montado" },
- { 8, "... progreso..." },
- { 9, "11kHz" },
- { 10, "22 kHz" },
- { 11, "44 kHz" },
- { 12, "48 kHz" },
- { 13, "8 kHz" },
- { 14, "<por defecto>" },
- { 15, "Acerca de ScummVM" },
- { 16, "Emulador de AdLib" },
- { 17, "Emulador de AdLib:" },
- { 18, "AdLib se usa para la m\372sica en muchos juegos" },
- { 19, "A\361adir juego..." },
- { 20, "Emulador de AdLib" },
- { 21, "Antialiasing (16bpp)" },
- { 23, "Correcci\363n de aspecto" },
- { 24, "Tecla asociada: %s" },
- { 25, "Tecla asociada: ninguna" },
- { 26, "Sonido" },
- { 27, "Autoguardado:" },
- { 28, "Motores disponibles:" },
- { 29, "Acerca ~d~e" },
- { 30, "Asignar teclas" },
- { 31, "Ambos" },
- { 32, "Brillo:" },
- { 33, "Emulador de AdLib" },
- { 34, "Cancelar" },
- { 35, "Imposible crear el archivo" },
- { 36, "Cambiar opciones de juego" },
- { 37, "Cambiar opciones generales de ScummVM" },
- { 38, "Marcar si se quiere usar un dispositivo de sonido real conectado al ordenador y compatible con Roland" },
- { 39, "Elegir" },
- { 40, "Elige la acci\363n a asociar" },
- { 41, "Eliminar valor" },
- { 42, "Cerrar" },
- { 43, "Corregir relaci\363n de aspecto en juegos 320x200" },
- { 44, "No se ha podido encontrar ning\372n motor capaz de ejecutar el juego" },
- { 45, "Modo de v\355deo actual:" },
- { 46, "Abajo" },
- { 47, "Izquierda" },
- { 48, "Derecha" },
- { 49, "Arriba" },
- { 50, "Emulador de DOSBox OPL" },
- { 51, "DVD" },
- { 52, "DVD montado con \351xito" },
- { 53, "DVD no montado" },
- { 54, "Fecha:" },
- { 55, "Debugger" },
- { 56, "Por defecto" },
- { 57, "Borrar" },
- { 58, "Desactivar apagado" },
- { 59, "GFX desactivados" },
- { 60, "Se han encontrado %d juegos nuevos..." },
- { 61, "Se han encontrado %d juegos nuevos." },
- { 62, "Pantalla" },
- { 63, "Mostrar el teclado" },
- { 64, "\277Seguro que quieres borrar esta partida?" },
- { 65, "\277Seguro que quieres eliminar la configuraci\363n de este juego?" },
- { 66, "\277Seguro que quieres ejecutar la detecci\363n masiva? Puede que se a\361ada un gran n\372mero de juegos." },
- { 67, "\277Quieres cargar o guardar el juego?" },
- { 68, "\277Quieres realizar una b\372squeda autom\341tica?" },
- { 69, "\277Quieres salir?" },
- { 70, "Doble golpe" },
- { 71, "Abajo" },
- { 72, "Activar modo Roland GS" },
- { 73, "El motor no soporta el nivel de debug '%s'" },
- { 74, "Ingl\351s" },
- { 75, "Error al ejecutar el juego:" },
- { 76, "Error al montar el DVD" },
- { 77, "Adicional:" },
- { 78, "Emulador de FM Towns" },
- { 79, "Modo r\341pido" },
- { 80, "Caracter\355sticas compiladas:" },
- { 81, "Vista libre" },
- { 82, "T\355tulo completo del juego" },
- { 83, "Pantalla completa" },
- { 84, "Aceleraci\363n del pad GC:" },
- { 85, "Sensibilidad del pad GC:" },
- { 86, "GFX" },
- { 87, "Dispositivo GM:" },
- { 88, "Idioma de la interfaz:" },
- { 89, "Render de la interfaz" },
- { 90, "Juego" },
- { 91, "No se han encontrado datos de juego" },
- { 92, "ID del juego no soportada" },
- { 93, "Juego:" },
- { 94, "Men\372 general" },
- { 95, "Ir al directorio anterior" },
- { 96, "Arriba" },
- { 97, "Gr\341ficos" },
- { 98, "Modo gr\341fico:" },
- { 99, "Escalado por hardware (r\341pido, pero de baja calidad)" },
- { 100, "Hercules \341mbar" },
- { 101, "Hercules verde" },
- { 102, "Ocultar barra de tareas" },
- { 103, "Sonido de alta calidad (m\341s lento) (reinicio)" },
- { 104, "Los valores m\341s altos ofrecen mayor calidad, pero puede que tu tarjeta de sonido no sea compatible" },
- { 105, "Mant\351n pulsado May\372s para a\361adir varios" },
- { 106, "Underscan horizontal" },
- { 107, "Emulador de IBM PCjr" },
- { 108, "ID:" },
- { 109, "Inicializar red" },
- { 110, "Escalado de la pantalla inicial superior:" },
- { 111, "Iniciando emulador de MT-32" },
- { 112, "Inicializando red" },
- { 113, "Entrada" },
- { 114, "Ruta no v\341lida" },
- { 115, "Asignaci\363n de teclas" },
- { 116, "Teclado" },
- { 117, "Asignaci\363n de teclas:" },
- { 118, "Teclas" },
- { 119, "Idioma de la interfaz de ScummVM" },
- { 120, "Idioma del juego. No sirve para pasar al ingl\351s la versi\363n espa\361ola de un juego" },
- { 121, "Idioma:" },
- { 122, "Izquierda" },
- { 123, "Clic izquierdo" },
- { 124, "Cargar" },
- { 125, "Cargar juego:" },
- { 126, "Cargar partida del juego seleccionado" },
- { 127, "Emulador de MAME OPL" },
- { 128, "MIDI" },
- { 129, "Ganancia MIDI:" },
- { 130, "MT-32" },
- { 131, "Dispositivo MT-32:" },
- { 132, "Emulador de MT-32" },
- { 133, "Escalado de la pantalla principal:" },
- { 134, "Asignar" },
- { 135, "A\361adir varios..." },
- { 136, "Men\372" },
- { 137, "Otros" },
- { 138, "Modo AdLib/MIDI" },
- { 139, "Montar DVD" },
- { 140, "Montar SMB" },
- { 141, "Clic de rat\363n" },
- { 142, "Multifunci\363n" },
- { 143, "Dispositivo de m\372sica:" },
- { 144, "Volumen de la m\372sica:" },
- { 145, "Silenciar" },
- { 146, "Nombre:" },
- { 147, "Red desconectada" },
- { 148, "Red no inicializada (%d)" },
- { 149, "Red conectada" },
- { 150, "Red conectada, disco compartido montado" },
- { 151, "Nunca" },
- { 152, "No" },
- { 153, "No hay fecha guardada" },
- { 154, "Sin m\372sica" },
- { 155, "No hay tiempo de juego guardado" },
- { 156, "No hay hora guardada" },
- { 157, "Ninguno" },
- { 158, "Normal (sin escalado)" },
- { 159, "De acuerdo" },
- { 160, "Frecuencia de salida:" },
- { 161, "Ignorar opciones MIDI generales" },
- { 162, "Ignorar opciones MT-32 generales" },
- { 163, "Ignorar opciones de sonido generales" },
- { 164, "Ignorar opciones gr\341ficas generales" },
- { 165, "Ignorar opciones de volumen generales" },
- { 166, "Emulador del altavoz de PC" },
- { 167, "Contrase\361a:" },
- { 168, "La ruta no es un directorio" },
- { 169, "La ruta no es un archivo" },
- { 170, "La ruta no existe" },
- { 171, "Rutas" },
- { 172, "Pausar" },
- { 173, "Elige el juego:" },
- { 174, "Plataforma para la que se dise\361\363 el juego" },
- { 175, "Plataforma:" },
- { 176, "Tiempo de juego:" },
- { 177, "Por favor, selecciona una acci\363n" },
- { 178, "Plugins:" },
- { 179, "Dispositivo preferido:" },
- { 180, "Pulsa la tecla a asignar" },
- { 181, "Salir" },
- { 182, "Cerrar ScummVM" },
- { 183, "Permiso de lectura denegado" },
- { 184, "Lectura fallida" },
- { 185, "Asignar teclas" },
- { 186, "Elimina el juego de la lista. Los archivos no se borran" },
- { 187, "Modo de renderizado:" },
- { 188, "Derecha" },
- { 189, "Clic derecho" },
- { 190, "Clic derecho" },
- { 191, "Rotar" },
- { 192, "Volumen de los efectos" },
- { 193, "SMB" },
- { 194, "Guardar" },
- { 195, "Partidas:" },
- { 196, "Partidas:" },
- { 197, "Guardar partida" },
- { 198, "\241B\372squeda completada!" },
- { 199, "Se ha buscado en %d directorios..." },
- { 200, "Men\372 principal de ScummVM" },
- { 201, "\241ScummVM no ha podido encontrar ning\372n motor capaz de ejecutar el juego!" },
- { 202, "\241ScummVM no ha encontrado ning\372n juego en el directorio!" },
- { 203, "\241ScummVM no ha podido abrir el directorio!" },
- { 204, "Buscar en la lista de juegos" },
- { 205, "Buscar:" },
- { 206, "Seleccionar SoundFont" },
- { 207, "Selecciona un tema" },
- { 208, "Seleccionar directorio de juego adicional" },
- { 209, "Selecciona una acci\363n y pulsa \"Asignar\"" },
- { 210, "Selecciona el directorio para temas de interfaz" },
- { 211, "Selecciona el directorio para archivos adicionales" },
- { 212, "Selecciona el directorio para plugins" },
- { 213, "Seleccionar directorio para partidas guardadas" },
- { 214, "Selecciona el directorio para partidas guardadas." },
- { 215, "Seleccionar directorio con los archivos del juego" },
- { 216, "Sensibilidad" },
- { 217, "Servidor:" },
- { 218, "Disco compartido:" },
- { 219, "Identificador usado para las partidas guardadas y para ejecutar el juego desde la l\355nea de comando" },
- { 220, "Mostrar teclado" },
- { 221, "Mostrar el cursor" },
- { 222, "Reproducir voces y subt\355tulos" },
- { 223, "Mostrar/ocultar cursor" },
- { 224, "Saltar" },
- { 225, "Saltar frase" },
- { 226, "Saltar texto" },
- { 227, "Pegar a los bordes" },
- { 228, "Escalado por software (buena calidad, pero m\341s lento)" },
- { 229, "Sonido activado/desactivado" },
- { 230, "Algunas tarjetas de sonido, Fluidsynth y Timidity soportan SoundFont" },
- { 231, "SoundFont:" },
- { 232, "Voces" },
- { 233, "Modos especiales de expansi\363n soportados por algunos juegos" },
- { 234, "Volumen de los efectos de sonido" },
- { 235, "Especifica el dispositivo de salida General MIDI por defecto" },
- { 236, "Especifica el dispositivo de sonido para la salida Roland MT-32/LAPC1/CM32l/CM64 por defecto" },
- { 237, "Especifica el dispositivo de sonido o emulador de tarjeta de sonido de salida" },
- { 238, "Especifica el directorio adicional usado por los juegos y ScummVM" },
- { 239, "Especifica un directorio para datos adicionales del juego" },
- { 240, "Especifica qu\351 dispositivo de sonido o emulador de tarjeta de sonido prefieres" },
- { 241, "Especifica d\363nde guardar tus partidas" },
- { 242, "Voces" },
- { 243, "Volumen de las voces" },
- { 244, "Est\341ndar (16bpp)" },
- { 245, "Jugar al juego seleccionado" },
- { 246, "Estado:" },
- { 247, "Subt." },
- { 248, "Velocidad de los subt\355tulos:" },
- { 249, "Subt\355tulos" },
- { 250, "Cambiar personaje" },
- { 251, "Un toque para clic izquierdo, dos para clic derecho" },
- { 252, "Texto y voces:" },
- { 253, "No se puede escribir en el directorio elegido. Por favor, selecciona otro." },
- { 254, "Temas:" },
- { 255, "Tema:" },
- { 256, "Esta ID ya est\341 siendo usada. Por favor, elige otra." },
- { 257, "Este juego no permite cargar partidas desde el lanzador." },
- { 258, "Hora:" },
- { 259, "Se ha excedido el tiempo de inicializaci\363n de red" },
- { 260, "Compensaci\363n X del toque" },
- { 261, "Compensaci\363n Y del toque" },
- { 262, "Modo Touchpad desactivado." },
- { 263, "Modo Touchpad activado." },
- { 264, "Roland MT-32 aut\351ntica (desactivar emulaci\363n GM)" },
- { 265, "Desactiva la conversi\363n General MIDI en juegos con sonido Roland MT-32" },
- { 266, "Desconocido" },
- { 267, "Error desconocido" },
- { 268, "Desmontar DVD" },
- { 269, "Desmontar SMB" },
- { 270, "Sin escalado (debes desplazar la pantalla a los lados)" },
- { 271, "Modo de color no soportado" },
- { 272, "Partida sin nombre" },
- { 273, "Arriba" },
- { 274, "Usar tanto MIDI como AdLib en la generaci\363n de sonido" },
- { 275, "Activar el sistema de control tipo trackpad de los port\341tiles" },
- { 276, "Usuario:" },
- { 277, "Usando driver SDL" },
- { 278, "Underscan vertical:" },
- { 279, "V\355deo" },
- { 280, "Teclado virtual" },
- { 281, "Volumen" },
- { 282, "Windows MIDI" },
- { 283, "Permiso de escritura denegado" },
- { 284, "Escritura de datos fallida" },
- { 285, "S\355" },
- { 286, "Tienes que reiniciar ScummVM para aplicar los cambios." },
- { 287, "Zona" },
- { 288, "Disminuir zoom" },
- { 289, "Aumentar zoom" },
- { 290, "cada 10 minutos" },
- { 291, "cada 15 minutos" },
- { 292, "cada 30 minutos" },
- { 293, "cada 5 minutos" },
- { 294, "Acerca ~d~e" },
- { 295, "~A~\361adir juego..." },
- { 296, "~C~ancelar" },
- { 297, "Cerra~r~" },
- { 298, "~E~ditar juego..." },
- { 299, "~A~yuda" },
- { 300, "Controles para pelear de ~I~ndy" },
- { 301, "~T~eclas" },
- { 302, "Modo para ~z~urdos" },
- { 303, "~C~argar" },
- { 304, "~C~argar..." },
- { 305, "Si~g~uiente" },
- { 306, "~S~\355" },
- { 307, "~O~opciones" },
- { 308, "~O~opciones..." },
- { 309, "~A~nterior" },
- { 310, "~S~alir" },
- { 311, "E~l~iminar juego" },
- { 312, "~R~eanudar" },
- { 313, "~V~olver al lanzador" },
- { 314, "~G~uardar" },
- { 315, "~J~ugar" },
- { 316, "Tra~n~siciones activadas" },
- { 317, "Efecto ag~u~a activado" },
- { 318, "Modo ~Z~ip activado" },
- { -1, NULL }
-};
-
-static const PoMessageEntry _translation_it_IT[] = {
- { 0, "Project-Id-Version: ScummVM 1.2.0svn\nReport-Msgid-Bugs-To: scummvm-devel@lists.sf.net\nPOT-Creation-Date: 2010-08-11 22:12+0100\nPO-Revision-Date: 2010-06-30 23:56+0100\nLast-Translator: Maff <matteo.maff at gmail dot com>\nLanguage-Team: Italian\nMIME-Version: 1.0\nContent-Type: text/plain; charset=iso-8859-1\nContent-Transfer-Encoding: 8bit\nLanguage: Italiano\n" },
- { 1, " Sei sicuro di voler uscire? " },
- { 2, " (Attivo)" },
- { 3, " (Gioco)" },
- { 4, " (Globale)" },
- { 5, "(build creata il %s)" },
- { 6, ", errore nel montare la condivisione" },
- { 7, ", condivisione non montata" },
- { 8, "... progresso ..." },
- { 9, "11kHz" },
- { 10, "22 kHz" },
- { 11, "44 kHz" },
- { 12, "48 kHz" },
- { 13, "8 kHz" },
- { 14, "<predefinito>" },
- { 15, "Informazioni su ScummVM" },
- { 16, "Emulatore AdLib" },
- { 17, "Emulatore AdLib:" },
- { 18, "AdLib \350 utilizzato per la musica in molti giochi" },
- { 19, "Aggiungi gioco..." },
- { 20, "Emulatore AdLib" },
- { 21, "Renderer con antialiasing (16bpp)" },
- { 23, "Correzione proporzioni" },
- { 24, "Tasto associato: %s" },
- { 25, "Tasto associato: nessuno" },
- { 26, "Audio" },
- { 27, "Autosalva:" },
- { 28, "Motori disponibili:" },
- { 29, "~I~nfo..." },
- { 30, "Associa tasti" },
- { 31, "Entrambi" },
- { 32, "Luminosit\340:" },
- { 33, "Emulatore AdLib" },
- { 34, "Annulla" },
- { 35, "Impossibile creare il file" },
- { 36, "Modifica le opzioni di gioco" },
- { 37, "Modifica le opzioni globali di ScummVM" },
- { 38, "Seleziona se vuoi usare il dispositivo hardware audio compatibile con Roland che \350 connesso al tuo computer" },
- { 39, "Scegli" },
- { 40, "Scegli un'azione da mappare" },
- { 41, "Cancella" },
- { 42, "Chiudi" },
- { 43, "Corregge le proporzioni dei giochi 320x200" },
- { 44, "Impossibile trovare un motore in grado di eseguire il gioco selezionato" },
- { 45, "Modalit\340 video attuale:" },
- { 46, "Cursore gi\371" },
- { 47, "Cursore a sinistra" },
- { 48, "Cursore a destra" },
- { 49, "Cursore su" },
- { 50, "Emulatore OPL DOSBox" },
- { 51, "DVD" },
- { 52, "DVD montato con successo" },
- { 53, "DVD non montato" },
- { 54, "Data: " },
- { 55, "Debugger" },
- { 56, "Predefinito" },
- { 57, "Elimina" },
- { 58, "Disattiva spegnimento in chiusura" },
- { 59, "Grafica disattivata" },
- { 60, "Rilevati %d nuovi giochi..." },
- { 61, "Rilevati %d nuovi giochi." },
- { 62, "Visualizza " },
- { 63, "Mostra tastiera" },
- { 64, "Sei sicuro di voler eliminare questo salvataggio?" },
- { 65, "Sei sicuro di voler rimuovere questa configurazione di gioco?" },
- { 66, "Vuoi davvero eseguire il rilevatore di giochi in massa? Potrebbe aggiungere un numero enorme di giochi." },
- { 67, "Vuoi caricare o salvare il gioco?" },
- { 68, "Vuoi eseguire una scansione automatica?" },
- { 69, "Sei sicuro di voler uscire?" },
- { 70, "Double-strike" },
- { 71, "Gi\371" },
- { 72, "Attiva la modalit\340 Roland GS" },
- { 73, "Il motore non supporta il livello di debug '%s'" },
- { 74, "Inglese" },
- { 75, "Errore nell'esecuzione del gioco:" },
- { 76, "Errore nel montare il DVD" },
- { 77, "Percorso extra:" },
- { 78, "Emulatore FM Towns" },
- { 79, "Modalit\340 veloce" },
- { 80, "Funzionalit\340 compilate in:" },
- { 81, "Osservazione libera" },
- { 82, "Titolo completo del gioco" },
- { 83, "Modalit\340 a schermo intero" },
- { 84, "Accelerazione pad GC:" },
- { 85, "Sensibilit\340 pad GC:" },
- { 86, "Grafica" },
- { 87, "Dispositivo GM:" },
- { 88, "Lingua GUI:" },
- { 89, "Renderer GUI:" },
- { 90, "Gioco" },
- { 91, "Dati di gioco non trovati" },
- { 92, "ID di gioco non supportato" },
- { 93, "Percorso gioco:" },
- { 94, "Menu globale" },
- { 95, "Vai alla cartella superiore" },
- { 96, "Cartella superiore" },
- { 97, "Grafica" },
- { 98, "Modalit\340:" },
- { 99, "Ridimensionamento hardware (veloce, ma di bassa qualit\340)" },
- { 100, "Hercules ambra" },
- { 101, "Hercules verde" },
- { 102, "Nascondi la barra degli strumenti" },
- { 103, "Audio ad alta qualit\340 (pi\371 lento) (riavviare)" },
- { 104, "Valori pi\371 alti restituiscono un suono di maggior qualit\340, ma potrebbero non essere supportati dalla tua scheda audio" },
- { 105, "Tieni premuto Shift per l'aggiunta in massa" },
- { 106, "Underscan orizzontale:" },
- { 107, "Emulatore IBM PCjr" },
- { 108, "ID:" },
- { 109, "Avvia rete" },
- { 110, "Schermo in primo piano:" },
- { 111, "Avvio in corso dell'emulatore MT-32" },
- { 112, "Avvio rete in corso" },
- { 113, "Input" },
- { 114, "Percorso non valido" },
- { 115, "Programmatore tasti" },
- { 116, "Tastiera" },
- { 117, "Mappa tasti:" },
- { 118, "Tasti" },
- { 119, "Lingua dell'interfaccia grafica di ScummVM" },
- { 120, "Lingua del gioco. Un gioco inglese non potr\340 risultare tradotto in italiano" },
- { 121, "Lingua:" },
- { 122, "Sinistra" },
- { 123, "Clic sinistro" },
- { 124, "Carica" },
- { 125, "Carica gioco:" },
- { 126, "Carica un salvataggio del gioco selezionato" },
- { 127, "Emulatore OPL MAME" },
- { 128, "MIDI" },
- { 129, "Guadagno MIDI:" },
- { 131, "Disposit. MT32:" },
- { 132, "Emulatore MT-32" },
- { 133, "Schermo principale:" },
- { 134, "Mappa" },
- { 135, "Agg. in massa..." },
- { 136, "Menu" },
- { 137, "Varie" },
- { 138, "Modalit\340 mista AdLib/MIDI" },
- { 139, "Monta DVD" },
- { 140, "Monta SMB" },
- { 141, "Clic del mouse" },
- { 142, "Multifunzione" },
- { 143, "Dispositivo GM:" },
- { 144, "Volume musica:" },
- { 145, "Disattiva audio" },
- { 146, "Nome:" },
- { 147, "Rete disattivata" },
- { 148, "Rete non avviata (%d)" },
- { 149, "Rete attiva" },
- { 150, "Rete attiva, condivisione montata" },
- { 151, "Mai" },
- { 152, "No" },
- { 153, "Nessuna data salvata" },
- { 154, "Nessuna musica" },
- { 155, "Nessun tempo salvato" },
- { 156, "Nessun orario salvato" },
- { 157, "Nessuno" },
- { 158, "Normale (nessun ridimensionamento)" },
- { 159, "OK" },
- { 160, "Frequenza:" },
- { 161, "Ignora le impostazioni MIDI globali" },
- { 162, "Ignora le impostazioni MIDI globali" },
- { 163, "Ignora le impostazioni audio globali" },
- { 164, "Ignora le impostazioni grafiche globali" },
- { 165, "Ignora le impostazioni globali di volume" },
- { 166, "Emulatore PC Speaker" },
- { 167, "Password:" },
- { 168, "Il percorso non \350 una cartella" },
- { 169, "Il percorso non \350 un file" },
- { 170, "Il percorso non esiste" },
- { 171, "Percorsi" },
- { 172, "Pausa" },
- { 173, "Scegli il gioco:" },
- { 174, "La piattaforma per la quale il gioco \350 stato concepito" },
- { 175, "Piattaforma:" },
- { 176, "Tempo di gioco: " },
- { 177, "Seleziona un'azione" },
- { 178, "Percorso plugin:" },
- { 179, "Disp. preferito:" },
- { 180, "Premi il tasto da associare" },
- { 181, "Esci" },
- { 182, "Chiudi ScummVM" },
- { 183, "Autorizzazione di lettura negata" },
- { 184, "Lettura fallita" },
- { 185, "Riprogramma tasti" },
- { 186, "Rimuove il gioco dalla lista. I file del gioco rimarranno intatti" },
- { 187, "Resa grafica:" },
- { 188, "Destra" },
- { 189, "Clic destro" },
- { 190, "Clic destro" },
- { 191, "Rotazione" },
- { 192, "Volume effetti:" },
- { 193, "SMB" },
- { 194, "Salva" },
- { 195, "Salvataggi:" },
- { 196, "Salvataggi:" },
- { 197, "Salva gioco:" },
- { 198, "Scansione completa!" },
- { 199, "%d cartelle analizzate..." },
- { 200, "Menu principale di ScummVM" },
- { 201, "ScummVM non ha potuto trovare un motore in grado di eseguire il gioco selezionato!" },
- { 202, "ScummVM non ha potuto trovare nessun gioco nella cartella specificata!" },
- { 203, "ScummVM non ha potuto aprire la cartella specificata!" },
- { 204, "Cerca nella lista dei giochi" },
- { 205, "Cerca:" },
- { 206, "Seleziona SoundFont" },
- { 207, "Seleziona un tema" },
- { 208, "Seleziona la cartella di gioco aggiuntiva" },
- { 209, "Seleziona un'azione e clicca 'Mappa'" },
- { 210, "Seleziona la cartella dei temi dell'interfaccia" },
- { 211, "Seleziona la cartella dei file aggiuntivi" },
- { 212, "Seleziona la cartella dei plugin" },
- { 213, "Seleziona la cartella dei salvataggi" },
- { 214, "Seleziona la cartella per i salvataggi" },
- { 215, "Seleziona la cartella contenente i file di gioco" },
- { 216, "Sensibilit\340" },
- { 217, "Server:" },
- { 218, "Condivisione:" },
- { 219, "Breve identificatore di gioco utilizzato per il riferimento a salvataggi e per l'esecuzione del gioco dalla riga di comando" },
- { 220, "Mostra tastiera" },
- { 221, "Mostra cursore del mouse" },
- { 222, "Mostra i sottotitoli e attiva le voci" },
- { 223, "Mostra/nascondi cursore" },
- { 224, "Salta" },
- { 225, "Salta battuta" },
- { 226, "Salta testo" },
- { 227, "Aggancia ai bordi" },
- { 228, "Ridimensionamento software (di buona qualit\340, ma pi\371 lento)" },
- { 229, "Suono on/off" },
- { 230, "SoundFont \350 supportato da alcune schede audio, Fluidsynth e Timidity" },
- { 231, "SoundFont:" },
- { 232, "Voci" },
- { 233, "Modalit\340 di resa grafica speciali supportate da alcuni giochi" },
- { 234, "Volume degli effetti sonori" },
- { 235, "Specifica il dispositivo audio predefinito per l'output General MIDI" },
- { 236, "Specifica il dispositivo audio predefinito per l'output Roland MT-32/LAPC1/CM32l/CM64" },
- { 237, "Specifica il dispositivo di output audio o l'emulatore della scheda audio" },
- { 238, "Specifica il percorso di ulteriori dati usati dai giochi o da ScummVM" },
- { 239, "Specifica il percorso di ulteriori dati usati dal gioco" },
- { 240, "Specifica il dispositivo audio o l'emulatore della scheda audio preferiti" },
- { 241, "Specifica dove archiviare i salvataggi" },
- { 242, "Voci" },
- { 243, "Volume voci:" },
- { 244, "Renderer standard (16bpp)" },
- { 245, "Esegue il gioco selezionato" },
- { 246, "Stato:" },
- { 247, "Sub" },
- { 248, "Velocit\340 testo:" },
- { 249, "Sottotitoli" },
- { 250, "Cambia personaggio" },
- { 251, "Un tocco per il clic sinistro, doppio tocco per il clic destro" },
- { 252, "Testo e voci:" },
- { 253, "La cartella scelta \350 in sola lettura. Si prega di sceglierne un'altra." },
- { 254, "Percorso tema:" },
- { 255, "Tema:" },
- { 256, "Questo ID di gioco \350 gi\340 in uso. Si prega di sceglierne un'altro." },
- { 257, "Questo gioco non supporta il caricamento di salvataggi dalla schermata di avvio." },
- { 258, "Ora: " },
- { 259, "Attesa per l'avvio della rete" },
- { 260, "Compensa X del tocco" },
- { 261, "Compensa Y del tocco" },
- { 262, "Modalit\340 touchpad disattivata." },
- { 263, "Modalit\340 touchpad attivata." },
- { 264, "Roland MT-32 effettivo (disattiva emulazione GM)" },
- { 265, "Disattiva la mappatura General MIDI per i giochi con colonna sonora Roland MT-32" },
- { 266, "Sconosciuto" },
- { 267, "Errore sconosciuto" },
- { 268, "Smonta DVD" },
- { 269, "Smonta SMB" },
- { 270, "Non ridimensionato (devi scorrere a sinistra e a destra)" },
- { 271, "Modalit\340 colore non supportata" },
- { 272, "Salvataggio senza titolo" },
- { 273, "Su" },
- { 274, "Utilizza generazione di suono sia MIDI che AdLib" },
- { 275, "Utilizza il controllo del cursore stile trackpad del portatile" },
- { 276, "Nome utente:" },
- { 277, "Utilizzo del driver SDL " },
- { 278, "Underscan verticale:" },
- { 279, "Video" },
- { 280, "Tastiera virtuale" },
- { 281, "Volume" },
- { 282, "MIDI Windows" },
- { 283, "Autorizzazione di scrittura negata" },
- { 284, "Scrittura dati fallita" },
- { 285, "S\354" },
- { 286, "Devi riavviare ScummVM affinch\351 le modifiche abbiano effetto." },
- { 287, "Zona" },
- { 288, "Zoom indietro" },
- { 289, "Zoom avanti" },
- { 290, "ogni 10 minuti" },
- { 291, "ogni 15 minuti" },
- { 292, "ogni 30 minuti" },
- { 293, "ogni 5 minuti" },
- { 294, "~I~nfo" },
- { 295, "~A~ggiungi gioco..." },
- { 296, "~A~nnulla" },
- { 297, "~C~hiudi" },
- { 298, "~M~odifica gioco..." },
- { 299, "~A~iuto" },
- { 300, "Controlli combattimento di ~I~ndy" },
- { 301, "~T~asti" },
- { 302, "~M~odalit\340 mancini" },
- { 303, "~C~arica" },
- { 304, "~C~arica..." },
- { 305, "~S~uccessivi" },
- { 306, "~O~K" },
- { 307, "~O~pzioni" },
- { 308, "~O~pzioni..." },
- { 309, "~P~recedenti" },
- { 310, "C~h~iudi" },
- { 311, "~R~imuovi gioco" },
- { 312, "~R~ipristina" },
- { 313, "~V~ai a schermata di avvio" },
- { 314, "~S~alva" },
- { 315, "~G~ioca" },
- { 316, "~T~ransizioni attive" },
- { 317, "~E~ffetto acqua attivo" },
- { 318, "Modalit\340 ~Z~ip attivata" },
- { -1, NULL }
-};
-
-static const PoMessageEntry _translation_fr_FR[] = {
- { 0, "Project-Id-Version: ScummVM 1.2.0svn\nReport-Msgid-Bugs-To: scummvm-devel@lists.sf.net\nPOT-Creation-Date: 2010-08-11 22:12+0100\nPO-Revision-Date: 2010-08-11 22:14+0100\nLast-Translator: Thierry Crozat <criezy@scummvm.org>\nLanguage-Team: French <scummvm-devel@lists.sf.net>\nMIME-Version: 1.0\nContent-Type: text/plain; charset=iso-8859-1\nContent-Transfer-Encoding: 8bit\nLanguage: Francais\nPlural-Forms: nplurals=2; plural=n>1;\n" },
- { 1, "Voulez-vous vraiment quitter?" },
- { 2, "(Actif)" },
- { 3, "(Jeu)" },
- { 4, "(Global)" },
- { 5, "(compil\351 sur %s)" },
- { 6, ", \351chec du montage du disque partag\351" },
- { 7, ", disque partag\351 non mont\351" },
- { 8, "... en cours ..." },
- { 9, "11 kHz" },
- { 10, "22 kHz" },
- { 11, "44 kHz" },
- { 12, "48 kHz" },
- { 13, "8 kHz" },
- { 14, "<defaut>" },
- { 15, "\300 propos de ScummVM" },
- { 16, "\311mulateur AdLib" },
- { 17, "\311mulateur AdLib:" },
- { 18, "AdLib est utilis\351 pour la musique dans de nombreux jeux" },
- { 19, "Ajouter..." },
- { 20, "\311mulateur Amiga Audio" },
- { 21, "Anti-cr\351nel\351 (16 bpp)" },
- { 22, "\311mulateur Apple II GS (PAS IMPL\311MENT\311)" },
- { 23, "Correction du rapport d'aspect" },
- { 24, "Touche associ\351e: %s" },
- { 25, "Touche associ\351e: aucune" },
- { 26, "Audio" },
- { 27, "Sauvegarde auto:" },
- { 28, "Moteurs disponibles:" },
- { 29, "\300 ~P~ropos..." },
- { 30, "Affecter les touches" },
- { 31, "Les deux" },
- { 32, "Luminosit\351:" },
- { 33, "\311mulateur C64 Audio" },
- { 34, "Annuler" },
- { 35, "Impossible de cr\351er le fichier" },
- { 36, "Change les options du jeu" },
- { 37, "Change les options globales de ScummVM" },
- { 38, "V\351rifie si vous voulez utiliser un p\351riph\351rique audio compatible Roland connect\351 \340 l'ordinateur" },
- { 39, "Choisir" },
- { 40, "S\351lectionnez une action \340 affecter" },
- { 41, "Effacer la valeur" },
- { 42, "Fermer" },
- { 43, "Corrige le rapport d'aspect pour les jeu 320x200" },
- { 44, "Impossible de trouver un moteur pour ex\351cuter le jeu s\351lectionn\351" },
- { 45, "Mode vid\351o actuel" },
- { 46, "Bas" },
- { 47, "Gauche" },
- { 48, "Droit" },
- { 49, "Haut" },
- { 50, "\311mulateur DOSBox OPL" },
- { 51, "DVD" },
- { 52, "DVD mont\351 avec succ\350s" },
- { 53, "DVD non mont\351" },
- { 54, "Date:" },
- { 55, "Debugger" },
- { 56, "D\351faut" },
- { 57, "Supprimer" },
- { 58, "D\351sactiv\351 l'extinction" },
- { 59, "GFX d\351sactiv\351" },
- { 60, "%d nouveaux jeux trouv\351s ..." },
- { 61, "%d nouveaux jeux trouv\351s." },
- { 62, "Affichage" },
- { 63, "Afficher le clavier" },
- { 64, "Voulez-vous vraiment supprimer cette sauvegarde?" },
- { 65, "Voulez-vous vraiment supprimer ce jeu?" },
- { 66, "Voulez-vous vraiment lancer la d\351tection automatique des jeux? Cela peut potentiellement ajouter un grand nombre de jeux." },
- { 67, "Voulez-vous charger ou sauver le jeu?" },
- { 68, "Voulez-vous ex\351cuter une recherche automatique?" },
- { 69, "Voulez-vous quitter?" },
- { 70, "Coup double" },
- { 71, "Bas" },
- { 72, "Activer le mode Roland GS" },
- { 73, "Le niveau de debug '%s' n'est pas support\351 par ce moteur de jeu" },
- { 74, "Anglais" },
- { 75, "Erreur lors de l'\351x\351cution du jeu:" },
- { 76, "\311chec du montage du DVD" },
- { 77, "Extra:" },
- { 78, "\311mulateur FM Towns" },
- { 79, "Mode rapide" },
- { 80, "Options incluses:" },
- { 81, "Regarder autour" },
- { 82, "Nom complet du jeu" },
- { 83, "Plein \351cran" },
- { 84, "Acceleration du pad GC:" },
- { 85, "Sensibilit\351 du pad GC:" },
- { 86, "GFX" },
- { 87, "Sortie GM:" },
- { 88, "Langue:" },
- { 89, "Interface:" },
- { 90, "Jeu" },
- { 91, "Fichier de don\351es introuvable" },
- { 92, "ID de jeu non support\351" },
- { 93, "Chemin du Jeu:" },
- { 94, "Menu global" },
- { 95, "Remonte d'un niveau dans la hi\351rarchie de r\351pertoire" },
- { 96, "Remonter" },
- { 97, "Graphique" },
- { 98, "Mode graphique:" },
- { 99, "Mise \340 l'echelle mat\351rielle (rapide mais qualit\351 faible)" },
- { 100, "Hercules Ambre" },
- { 101, "Hercules Vert" },
- { 102, "Cach\351 la barre d'outils" },
- { 103, "Audio haute qualit\351 (plus lent) (red\351marrer)" },
- { 104, "Une valeur plus \351lev\351e donne une meilleure qualit\351 audio mais peut ne pas \352tre support\351 par votre carte son" },
- { 105, "Ajoute un jeu \340 la Liste. Maintenez Shift enfonc\351e pour un Ajout Massif" },
- { 106, "Underscan horizontal:" },
- { 107, "\311mulateur IBM PCjr" },
- { 108, "ID:" },
- { 109, "Initialiser le r\351seau" },
- { 110, "\311chelle initiale de l'\351cran du haut" },
- { 111, "Initialisation de l'\311mulateur MT-32" },
- { 112, "Initialisation du r\351seau" },
- { 113, "Entr\351e" },
- { 114, "Chemin Invalide" },
- { 115, "Affectation des touches" },
- { 116, "Clavier" },
- { 117, "Affectation des touches:" },
- { 118, "Touches" },
- { 119, "Langue de l'interface graphique de ScummVM" },
- { 120, "Langue du jeu. Cela ne traduira pas en anglais par magie votre version espagnole du jeu." },
- { 121, "Langue:" },
- { 122, "Gauche" },
- { 123, "Clic Gauche" },
- { 124, "Charger" },
- { 125, "Charger le jeu:" },
- { 126, "Charge une sauvegarde pour le jeu s\351lectionn\351" },
- { 127, "\311mulateur MAME OPL" },
- { 128, "MIDI" },
- { 129, "Gain MIDI:" },
- { 130, "MT-32" },
- { 131, "Sortie MT-32:" },
- { 132, "\311mulateur MT-32" },
- { 133, "\311chelle de l'\351cran principal" },
- { 134, "Affecter" },
- { 135, "Ajout Massif..." },
- { 136, "Menu" },
- { 137, "Divers" },
- { 138, "Mode mixe AdLib/MIDI" },
- { 139, "Monter le DVD" },
- { 140, "Monter SMB" },
- { 141, "Clic de souris" },
- { 142, "Fonction Multiple" },
- { 143, "Sortie Audio:" },
- { 144, "Volume Musique:" },
- { 145, "Silence" },
- { 146, "Nom:" },
- { 147, "R\351seau d\351connect\351" },
- { 148, "R\351seau non initialis\351 (%d)" },
- { 149, "R\351seau connect\351" },
- { 150, "R\351seau connect\351, disque partag\351 mont\351" },
- { 151, "Jamais" },
- { 152, "Non" },
- { 153, "Date non sauv\351e" },
- { 154, "Pas de musique" },
- { 155, "Dur\351e de jeu non sauv\351e" },
- { 156, "Heure non sauv\351e" },
- { 157, "Aucun" },
- { 158, "Normal (\351chelle d'origine)" },
- { 159, "OK" },
- { 160, "Fr\351quence:" },
- { 161, "Utiliser des r\351glages MIDI sp\351cifiques \340 ce jeux" },
- { 162, "Utiliser des r\351glages MT-32 sp\351cifiques \340 ce jeux" },
- { 163, "Utiliser des r\351glages audio sp\351cifiques \340 ce jeux" },
- { 164, "Utiliser des r\351glages graphiques sp\351cifiques \340 ce jeux" },
- { 165, "Utiliser des r\351glages de volume sonore sp\351cifiques \340 ce jeux" },
- { 166, "\311mulateur Haut Parleur PC" },
- { 167, "Mot de passe:" },
- { 168, "Chemin n'est pas un r\351pertoire" },
- { 169, "Chemin n'est pas un fichier" },
- { 170, "Chemin inexistant" },
- { 171, "Chemins" },
- { 172, "Mettre en pause" },
- { 173, "Choisissez le jeu:" },
- { 174, "Plateforme pour laquelle votre jeu a \351t\351 con\347u" },
- { 175, "Plateforme:" },
- { 176, "Dur\351e de jeu:" },
- { 177, "Selectionnez une action" },
- { 178, "Plugins:" },
- { 179, "Sortie Pr\351f\351r\351:" },
- { 180, "Appuyez sur la touche \340 associer" },
- { 181, "Quitter" },
- { 182, "Quitter ScummVM" },
- { 183, "V\351roulli\351 en lecture" },
- { 184, "Echec de la lecture" },
- { 185, "Changer l'affectation des touches" },
- { 186, "Supprime le jeu de la liste. Les fichiers sont conserv\351s" },
- { 187, "Mode de rendu:" },
- { 188, "Droite" },
- { 189, "Clic Droit" },
- { 190, "Clic droit" },
- { 191, "Pivoter" },
- { 192, "Volume Bruitage:" },
- { 193, "SMB" },
- { 194, "Sauver" },
- { 195, "Sauvegardes:" },
- { 196, "Sauvegardes:" },
- { 197, "Sauvegarde:" },
- { 198, "Examen termin\351!" },
- { 199, "%d r\351pertoires examin\351s ..." },
- { 200, "Menu Principal ScummVM" },
- { 201, "ScummVM n'a pas pu trouv\351 de moteur pour lancer le jeu s\351lectionn\351." },
- { 202, "ScummVM n'a pas trouv\351 de jeux dans le r\351pertoire s\351lectionn\351." },
- { 203, "ScummVM n'a pas pu ouvrir le r\351pertoire s\351lectionn\351." },
- { 204, "Recherche dans la liste de jeux" },
- { 205, "Filtre:" },
- { 206, "Choisir une banque de sons" },
- { 207, "S\351lectionnez un Th\350me" },
- { 208, "S\351lectionner un r\351pertoire suppl\351mentaire" },
- { 209, "Selectionez une action et cliquez 'Affecter'" },
- { 210, "S\351lectionner le r\351pertoire des th\350mes d'interface" },
- { 211, "S\351lectionner le r\351pertoire pour les fichiers supl\351mentaires" },
- { 212, "S\351lectionner le r\351pertoire des plugins" },
- { 213, "S\351lectionner le r\351pertoire pour les sauvegardes" },
- { 214, "S\351lectionner le r\351pertoire pour les sauvegardes" },
- { 215, "S\351lectionner le r\351pertoire contenant les donn\351es du jeu" },
- { 216, "Sensibilit\351" },
- { 217, "Serveur:" },
- { 218, "Disque partag\351:" },
- { 219, "ID compact du jeu utilis\351 pour identifier les sauvegardes et d\351marrer le jeu depuis la ligne de commande" },
- { 220, "Afficher le clavier" },
- { 221, "Afficher le curseur de la souris" },
- { 222, "Affiche les sous-titres et joue les dialogues audio" },
- { 223, "Afficher/Cacher le curseur" },
- { 224, "Passer" },
- { 225, "Passer la phrase" },
- { 226, "Sauter le texte" },
- { 227, "Aligner sur les bords" },
- { 228, "Mise \340 l'\351chelle logicielle (bonne qualit\351 mais plus lent)" },
- { 229, "Audio marche/arr\352t" },
- { 230, "La banque de sons est utilis\351e par certaines cartes audio, Fluidsynth et Timidity" },
- { 231, "Banque de sons:" },
- { 232, "Audio" },
- { 233, "Mode sp\351cial de tramage support\351 par certains jeux" },
- { 234, "Volume des effets sp\351ciaux sonores" },
- { 235, "Sp\351cifie le p\351riph\351rique audio par d\351faut pour la sortie General MIDI" },
- { 236, "Sp\351cifie le p\351riph\351rique audio par d\351faut pour la sortie Roland MT-32/LAPC1/CM32l/CM64" },
- { 237, "Sp\351cifie le p\351riph\351rique de sortie audio ou l'\351mulateur de carte audio" },
- { 238, "Sp\351cifie un chemin vers des donn\351es suppl\351mentaires utilis\351es par tous les jeux ou ScummVM" },
- { 239, "D\351finie un chemin vers des donn\351es supl\351mentaires utilis\351es par le jeu" },
- { 240, "Sp\351cifie le p\351riph\351rique de sortie audio ou l'\351mulateur de carte audio pr\351f\351r\351" },
- { 241, "D\351finie l'emplacement o\371 les fichiers de sauvegarde sont cr\351\351s" },
- { 242, "Audio" },
- { 243, "Volume Dialogues:" },
- { 244, "Standard (16bpp)" },
- { 245, "D\351marre le jeu s\351lectionn\351" },
- { 246, "Status:" },
- { 247, "Subs" },
- { 248, "Vitesse des ST:" },
- { 249, "Sous-titres" },
- { 250, "Changement de personnage" },
- { 251, "Toucher pour un clic gauche, toucher deux fois pour un clic droit" },
- { 252, "Dialogue:" },
- { 253, "Le r\351pertoire s\351lectionn\351 est v\351rouill\351 en \351criture. S\351lectionnez un autre r\351pertoire." },
- { 254, "Th\350mes:" },
- { 255, "Th\350me:" },
- { 256, "Cet ID est d\351j\340 utilis\351 par un autre jeu. Choisissez en un autre svp." },
- { 257, "Le chargement de sauvegarde depuis le lanceur n'est pas support\351 pour ce jeu." },
- { 258, "Heure:" },
- { 259, "D\351passement du d\351lai lors de l'initialisation du r\351seau" },
- { 260, "D\351calage X du toucher" },
- { 261, "D\351callage Y du toucher" },
- { 262, "Mode touchpad d\351sactiv\351" },
- { 263, "Mode touchpad activ\351" },
- { 264, "Roland MT-32 exacte (d\351sactive l'\351mulation GM)" },
- { 265, "D\351sactiver la conversion des pistes MT-32 en General MIDI" },
- { 266, "Inconue" },
- { 267, "Erreur inconnue" },
- { 268, "D\351monter le DVD" },
- { 269, "D\351monter SMB" },
- { 270, "Sans changement d'\351chelle (vous devez faire d\351filer l'\351cran)" },
- { 271, "Mode de couleurs non support\351" },
- { 272, "Sauvegarde sans nom" },
- { 273, "Haut" },
- { 274, "Utiliser \340 la fois MIDI et AdLib" },
- { 275, "Activer le contr\364le du curseur de type trackpad" },
- { 276, "Nom d'utilisateur:" },
- { 277, "Utilise le pilote SDL" },
- { 278, "Underscan vertical:" },
- { 279, "Vid\351o" },
- { 280, "Clavier virtuel" },
- { 281, "Volume" },
- { 282, "MIDI Windows" },
- { 283, "Verrouill\351 en \351criture" },
- { 284, "Echec de l'\351criture des donn\351es" },
- { 285, "Oui" },
- { 286, "Vous devez relancer ScummVM pour que le changement soit pris en compte." },
- { 287, "Zone" },
- { 288, "Zoomer" },
- { 289, "D\351zoomer" },
- { 290, "Toutes les 10 mins" },
- { 291, "Toutes les 15 mins" },
- { 292, "Toutes les 30 mins" },
- { 293, "Toutes les 5 mins" },
- { 294, "\300 ~P~ropos" },
- { 295, "~A~jouter..." },
- { 296, "~A~nnuler" },
- { 297, "~F~ermer" },
- { 298, "~E~diter..." },
- { 299, "~A~ide" },
- { 300, "Contr\364le des combats d'~I~ndy" },
- { 301, "~T~ouches" },
- { 302, "Mode ~G~aucher" },
- { 303, "~C~harger" },
- { 304, "~C~harger" },
- { 305, "~S~uivant" },
- { 306, "~O~K" },
- { 307, "~O~ptions" },
- { 308, "~O~ptions..." },
- { 309, "~P~r\351c\351dent" },
- { 310, "~Q~uitter" },
- { 311, "~S~upprimer" },
- { 312, "~R~eprendre" },
- { 313, "Retour au ~L~anceur" },
- { 314, "~S~auver" },
- { 315, "~D~\351marrer" },
- { 316, "T~r~ansitions activ\351" },
- { 317, "~E~ffets de l'Eau Activ\351s" },
- { 318, "Mode ~Z~ip Activ\351" },
- { -1, NULL }
-};
-
-static const PoMessageEntry _translation_de_DE[] = {
- { 0, "Project-Id-Version: ScummVM 1.2.0svn\nReport-Msgid-Bugs-To: scummvm-devel@lists.sf.net\nPOT-Creation-Date: 2010-08-11 22:12+0100\nPO-Revision-Date: 2010-08-12 00:56+0100\nLast-Translator: Simon Sawatzki\nLanguage-Team: Lothar Serra Mari <Lothar@Windowsbase.de> & Simon Sawatzki <SimSaw@gmx.de>\nMIME-Version: 1.0\nContent-Type: text/plain; charset=iso-8859-1\nContent-Transfer-Encoding: 8bit\nLanguage: Deutsch\nPlural-Forms: nplurals=2; plural=n != 1;\n" },
- { 1, " M\366chten Sie wirklich beenden? " },
- { 2, " (Aktiv)" },
- { 3, " (Spiel)" },
- { 4, " (Global)" },
- { 5, "(erstellt am %s)" },
- { 6, ", Fehler beim Einbinden des \366ffentlichen Verzeichnisses" },
- { 7, ", \366ffentliches Verzeichnis nicht eingebunden" },
- { 8, "... l\344uft..." },
- { 9, "11 kHz" },
- { 10, "22 kHz" },
- { 11, "44 kHz" },
- { 12, "48 kHz" },
- { 13, "8 kHz" },
- { 14, "<Standard>" },
- { 15, "\334ber ScummVM" },
- { 16, "AdLib-Emulator" },
- { 17, "AdLib-Emulator" },
- { 18, "AdLib wird f\374r die Musik in vielen Spielen verwendet." },
- { 19, "Spiel hinzuf\374gen" },
- { 20, "Amiga-Audio-Emulator" },
- { 21, "Kantengl\344ttung (16bpp)" },
- { 23, "Seitenverh\344ltnis korrigieren" },
- { 24, "Zugewiesene Taste: %s" },
- { 25, "Zugewiesene Taste: keine" },
- { 26, "Audio" },
- { 27, "Autom. Speichern:" },
- { 28, "Verf\374gbare Spiele-Engines:" },
- { 29, "\334be~r~" },
- { 30, "Tasten zuweisen" },
- { 31, "Beides" },
- { 32, "Helligkeit:" },
- { 33, "C64-Audio-Emulator" },
- { 34, "Abbrechen" },
- { 35, "Kann Datei nicht erstellen." },
- { 36, "Spieloptionen \344ndern" },
- { 37, "Globale ScummVM-Einstellungen bearbeiten" },
- { 38, "W\344hlen Sie dies aus, wenn Sie Ihre echte Hardware, die mit einer Roland-kompatiblen Soundkarte verbunden ist, verwenden m\366chten." },
- { 39, "Ausw\344hlen" },
- { 40, "Eine Aktion zum Zuweisen ausw\344hlen" },
- { 41, "Wert l\366schen" },
- { 42, "Schlie\337en" },
- { 43, "Seitenverh\344ltnis f\374r Spiele mit der Aufl\366sung 320x200 korrigieren" },
- { 44, "Kann keine Spiel-Engine finden, die dieses Spiel starten kann." },
- { 45, "Aktueller Videomodus:" },
- { 46, "Zeiger runter" },
- { 47, "Zeiger nach links" },
- { 48, "Zeiger nach rechts" },
- { 49, "Zeiger hoch" },
- { 50, "DOSBox-OPL-Emulator" },
- { 51, "DVD" },
- { 52, "DVD erfolgreich eingebunden" },
- { 53, "DVD nicht eingebunden" },
- { 54, "Datum: " },
- { 55, "Debugger" },
- { 56, "Standard" },
- { 57, "L\366schen" },
- { 58, "Stromsparmodus abschalten" },
- { 59, "GFX ausgeschalten" },
- { 60, "%d neue Spiele gefunden..." },
- { 61, "%d neue Spiele gefunden." },
- { 62, "Anzeige" },
- { 63, "Tastatur anzeigen" },
- { 64, "Diesen Spielstand wirklich l\366schen?" },
- { 65, "M\366chten Sie wirklich diese Spielkonfiguration entfernen?" },
- { 66, "M\366chten Sie wirklich den PC nach Spielen durchsuchen? M\366glicherweise wird dabei eine gr\366\337ere Menge an Spielen hinzugef\374gt." },
- { 67, "M\366chten Sie ein Spiel laden oder speichern?" },
- { 68, "M\366chten Sie eine automatische Durchsuchung vornehmen?" },
- { 69, "M\366chten Sie beenden?" },
- { 70, "Doppelzeilen (kein Zeilensprungverfahren)" },
- { 71, "Runter" },
- { 72, "Roland-GS-Modus" },
- { 73, "Engine unterst\374tzt den Debug-Level \"%s\" nicht" },
- { 74, "English" },
- { 75, "Fehler beim Ausf\374hren des Spiels:" },
- { 76, "Fehler beim Einbinden der DVD" },
- { 77, "Extrapfad:" },
- { 78, "FM-Towns-Emulator" },
- { 79, "Schneller Modus" },
- { 80, "Verwendete Funktionen:" },
- { 81, "Freie Ansicht" },
- { 82, "Voller Name des Spiels" },
- { 83, "Vollbildmodus" },
- { 84, "GC-Pad-Beschleunigung:" },
- { 85, "GC-Pad-Empfindlichkeit:" },
- { 86, "GFX" },
- { 87, "GM-Ger\344t:" },
- { 88, "GUI-Sprache:" },
- { 89, "GUI-Renderer:" },
- { 90, "Spiel" },
- { 91, "Spieldaten nicht gefunden" },
- { 92, "Spielkennung nicht unterst\374tzt" },
- { 93, "Spielpfad:" },
- { 94, "Hauptmen\374" },
- { 95, "Zu h\366herer Pfadebene wechseln" },
- { 96, "Pfad hoch" },
- { 97, "Grafik" },
- { 98, "Grafikmodus:" },
- { 99, "Hardware-Skalierung (schnell, aber schlechte Qualit\344t)" },
- { 100, "Hercules Bernsteingelb" },
- { 101, "Hercules-Gr\374n" },
- { 102, "Werkzeugleiste verbergen" },
- { 103, "Hohe Audioqualit\344t (lansamer) (erfordert Neustart)" },
- { 104, "H\366here Werte bewirken eine bessere Soundqualit\344t, werden aber m\366glicherweise nicht von jeder Soundkarte unterst\374tzt." },
- { 105, "Umschalttaste (Shift) gedr\374ckt halten, um Verzeichnisse nach Spielen zu durchsuchen" },
- { 106, "Horizontale Bildverkleinerung:" },
- { 107, "IBM-PCjr-Emulator" },
- { 108, "Kennung:" },
- { 109, "Netzwerk starten" },
- { 110, "Verg\366\337erung des oberen Bildschirms:" },
- { 111, "MT-32-Emulator wird gestartet..." },
- { 112, "Netzwerk wird gestartet..." },
- { 113, "Eingabe" },
- { 114, "Ung\374ltiges Verzeichnis" },
- { 115, "Tasten zuordnen" },
- { 116, "Tastatur" },
- { 117, "Tasten-Layout:" },
- { 118, "Tasten" },
- { 119, "Sprache der ScummVM-Oberfl\344che" },
- { 120, "Sprache des Spiels. Diese Funktion wird nicht eine spanische Version des Spiels in eine deutsche verwandeln." },
- { 121, "Sprache:" },
- { 122, "Links" },
- { 123, "Linksklick" },
- { 124, "Laden" },
- { 125, "Spiel laden:" },
- { 126, "Spielstand f\374r ausgew\344hltes Spiel laden" },
- { 127, "MAME-OPL-Emulator" },
- { 128, "MIDI" },
- { 129, "MIDI-Lautst\344rke:" },
- { 130, "MT-32" },
- { 131, "MT-32-Ger\344t:" },
- { 132, "MT-32-Emulation" },
- { 133, "Hauptbildschirm-Skalierung:" },
- { 134, "Zuweisen" },
- { 135, "Durchsuchen" },
- { 136, "Men\374" },
- { 137, "Sonstiges" },
- { 138, "AdLib-/MIDI-Modus" },
- { 139, "DVD einbinden" },
- { 140, "SMB einbinden" },
- { 141, "Mausklick" },
- { 142, "Multifunktion" },
- { 143, "Musikger\344t:" },
- { 144, "Musiklautst\344rke:" },
- { 145, "Alles aus" },
- { 146, "Name:" },
- { 147, "Netzwerk ist aus." },
- { 148, "Netzwerk nicht gestartet (%d)" },
- { 149, "Netzwerk gestartet" },
- { 150, "Netzwerk gestartet, \366ffentliches Verzeichnis eingebunden" },
- { 151, "Niemals" },
- { 152, "Nein" },
- { 153, "Kein Datum gespeichert" },
- { 154, "Keine Musik" },
- { 155, "Keine Spielzeit gespeichert" },
- { 156, "Keine Zeit gespeichert" },
- { 157, "-" },
- { 158, "Normal (keine Skalierung)" },
- { 159, "OK" },
- { 160, "Ausgabefrequenz:" },
- { 161, "Globale MIDI-Einstellungen \374bergehen" },
- { 162, "Globale MT-32-Einstellungen \374bergehen" },
- { 163, "Globale Audioeinstellungen \374bergehen" },
- { 164, "Globale Grafikeinstellungen \374bergehen" },
- { 165, "Globale Lautst\344rke-Einstellungen \374bergehen" },
- { 166, "PC-Lautsprecher-Emulator" },
- { 167, "Passwort:" },
- { 168, "Ung\374ltiges Verzeichnis" },
- { 169, "Pfad ist keine Datei." },
- { 170, "Verzeichnis existiert nicht." },
- { 171, "Pfade" },
- { 172, "Pause" },
- { 173, "Spiel ausw\344hlen:" },
- { 174, "Plattform, f\374r die das Spiel urspr\374nglich erstellt wurde" },
- { 175, "Plattform:" },
- { 176, "Spieldauer: " },
- { 177, "Bitte eine Aktion ausw\344hlen" },
- { 178, "Plugin-Pfad:" },
- { 179, "Standard-Ger\344t:" },
- { 180, "Taste dr\374cken, um sie zuzuweisen" },
- { 181, "Beenden" },
- { 182, "ScummVM beenden" },
- { 183, "Lese-Berechtigung nicht vorhanden" },
- { 184, "Lesefehler aufgetreten" },
- { 185, "Tasten neu zuweisen" },
- { 186, "Spiel aus der Liste entfernen. Die Spieldateien bleiben erhalten." },
- { 187, "Render-Modus:" },
- { 188, "Rechts" },
- { 189, "Rechtsklick" },
- { 190, "Rechtsklick" },
- { 191, "Drehen" },
- { 192, "Effektlautst\344rke:" },
- { 193, "SMB" },
- { 194, "Speichern" },
- { 195, "Spielst\344nde:" },
- { 196, "Spielst\344nde: " },
- { 197, "Speichern:" },
- { 198, "Suchlauf abgeschlossen!" },
- { 199, "%d Ordner durchsucht..." },
- { 200, "ScummVM-Hauptmen\374" },
- { 201, "ScummVM konnte keine Engine finden, um das Spiel zu starten!" },
- { 202, "ScummVM kann in dem gew\344hlten Verzeichnis kein Spiel finden!" },
- { 203, "ScummVM kann das gew\344hlte Verzeichnis nicht \366ffnen!" },
- { 204, "In Spieleliste suchen" },
- { 205, "Suchen:" },
- { 206, "SoundFont ausw\344hlen" },
- { 207, "Thema ausw\344hlen" },
- { 208, "Verzeichnis mit zus\344tzlichen Dateien ausw\344hlen" },
- { 209, "Aktion ausw\344hlen und \"Zuweisen\" klicken" },
- { 210, "Verzeichnis f\374r Oberfl\344chen-Themen" },
- { 211, "Verzeichnis f\374r zus\344tzliche Dateien ausw\344hlen" },
- { 212, "Verzeichnis f\374r Erweiterungen ausw\344hlen" },
- { 213, "Verzeichnis f\374r Spielst\344nde ausw\344hlen" },
- { 214, "Verzeichnis f\374r Spielst\344nde ausw\344hlen" },
- { 215, "Verzeichnis mit Spieldateien ausw\344hlen" },
- { 216, "Empfindlichkeit" },
- { 217, "Server:" },
- { 218, "\326ffentliches Verzeichnis:" },
- { 219, "Kurzer Spielname, um die Spielst\344nde zuzuordnen und das Spiel von der Kommandozeile aus starten zu k\366nnen" },
- { 220, "Tastatur zeigen" },
- { 221, "Mauszeiger anzeigen" },
- { 222, "Untertitel anzeigen und Sprachausgabe aktivieren" },
- { 223, "Cursor zeigen/verbergen" },
- { 224, "\334berspringen" },
- { 225, "Zeile \374berspringen" },
- { 226, "Text \374berspringen" },
- { 227, "An Ecken anheften" },
- { 228, "Software-Skalierung (gute Qualit\344t, aber langsamer)" },
- { 229, "Ton ein/aus" },
- { 230, "SoundFont wird von einigen Soundkarten, Fluidsynth und Timidity unterst\374tzt." },
- { 231, "SoundFont:" },
- { 232, "Spr." },
- { 233, "Spezielle Farbmischungsmethoden werden von manchen Spielen unterst\374tzt." },
- { 234, "Lautst\344rke spezieller Soundeffekte" },
- { 235, "Legt das standardm\344\337ige Musikwiedergabe-Ger\344t f\374r General-MIDI-Ausgabe fest." },
- { 236, "Legt das standardm\344\337ige Tonwiedergabe-Ger\344t f\374r die Ausgabe von Roland MT-32/LAPC1/CM32l/CM64 fest." },
- { 237, "Legt das Musikwiedergabe-Ger\344t oder den Soundkarten-Emulator fest." },
- { 238, "Legt das Verzeichnis f\374r zus\344tzliche Spieldateien f\374r alle Spiele in ScummVM fest." },
- { 239, "Legt das Verzeichnis f\374r zus\344tzliche Spieldateien fest." },
- { 240, "Legt das bevorzugte Tonwiedergabe-Ger\344t oder den Soundkarten-Emulator fest." },
- { 241, "Legt fest, wo die Spielst\344nde abgelegt werden." },
- { 242, "Sprache" },
- { 243, "Sprachlautst\344rke:" },
- { 244, "Standard-Renderer (16bpp)" },
- { 245, "Ausgew\344hltes Spiel starten" },
- { 246, "Status:" },
- { 247, "Untert." },
- { 248, "Untertitel-Tempo:" },
- { 249, "Untertitel" },
- { 250, "Figur wechseln" },
- { 251, "Tippen f\374r Linksklick, Doppeltippen f\374r Rechtsklick" },
- { 252, "Text und Sprache:" },
- { 253, "In das gew\344hlte Verzeichnis kann nicht geschrieben werden. Bitte ein anderes ausw\344hlen." },
- { 254, "Themenpfad:" },
- { 255, "Thema:" },
- { 256, "Diese Spielkennung ist schon vergeben. Bitte eine andere w\344hlen." },
- { 257, "F\374r dieses Spiel wird das Laden aus der Spieleliste heraus nicht unterst\374tzt." },
- { 258, "Zeit: " },
- { 259, "Zeit\374berschreitung beim Starten des Netzwerks" },
- { 260, "Zu X-Position gehen" },
- { 261, "Zu Y-Position gehen" },
- { 262, "Touchpad-Modus ausgeschaltet." },
- { 263, "Touchpad-Modus aktiviert." },
- { 264, "Echte Roland-MT-32-Emulation (GM-Emulation deaktiviert)" },
- { 265, "Schaltet die General-MIDI-Zuweisung f\374r Spiele mit Roland-MT-32-Audiospur aus." },
- { 266, "Unbekannt" },
- { 267, "Unbekannter Fehler" },
- { 268, "DVD aush\344ngen" },
- { 269, "SMB aush\344ngen" },
- { 270, "Nicht skalieren (Sie m\374ssen nach links und nach rechts scrollen)" },
- { 271, "Farbmodus nicht unterst\374tzt" },
- { 272, "Unbenannt" },
- { 273, "Hoch" },
- { 274, "Benutzt MIDI und AdLib zur Sounderzeugung." },
- { 275, "Den Trackpad-Style f\374r Maussteuerung benutzen" },
- { 276, "Benutzername:" },
- { 277, "SDL-Treiber verwenden" },
- { 278, "Vertikale Bildverkleinerung:" },
- { 279, "Video" },
- { 280, "Virtuelle Tastatur" },
- { 281, "Lautst\344rke" },
- { 282, "Windows MIDI" },
- { 283, "Schreib-Berechtigung nicht vorhanden" },
- { 284, "Daten konnten nicht geschrieben werden." },
- { 285, "Ja" },
- { 286, "Sie m\374ssen ScummVM neustarten, um die Einstellungen zu \374bernehmen." },
- { 287, "Zone" },
- { 288, "Hineinzoomen" },
- { 289, "Herauszoomen" },
- { 290, "alle 10 Minuten" },
- { 291, "alle 15 Minuten" },
- { 292, "alle 30 Minuten" },
- { 293, "alle 5 Minuten" },
- { 294, "\334be~r~" },
- { 295, "Spiel ~h~inzuf\374gen" },
- { 296, "~A~bbrechen" },
- { 297, "~S~chlie\337en" },
- { 298, "Spielo~p~tionen" },
- { 299, "~H~ilfe" },
- { 300, "~K~ampfsteuerung f\374r Indiana Jones" },
- { 301, "~T~asten" },
- { 302, "~L~inke-Hand-Modus" },
- { 303, "~L~aden" },
- { 304, "~L~aden..." },
- { 305, "~W~eiter" },
- { 306, "~O~K" },
- { 307, "~O~ptionen" },
- { 308, "~O~ptionen" },
- { 309, "~Z~ur\374ck" },
- { 310, "~B~eenden" },
- { 311, "Spiel ~e~ntfernen" },
- { 312, "~F~ortsetzen" },
- { 313, "Zur Spiele~l~iste zur\374ck" },
- { 314, "~S~peichern" },
- { 315, "~S~tarten" },
- { 316, "\334ber~g~\344nge aktiviert" },
- { 317, "~W~assereffekt aktiviert" },
- { 318, "~Z~ip-Modus aktiviert" },
- { -1, NULL }
-};
-
-struct PoLangEntry {
- const char *lang;
- const char *charset;
- const char *langname;
- const PoMessageEntry *msgs;
-};
-
-const PoLangEntry _translations[] = {
- { "ca_ES", "iso-8859-1", "Catalan", _translation_ca_ES },
- { "uk_UA", "iso-8859-5", "Ukrainian", _translation_uk_UA },
- { "ru_RU", "iso-8859-5", "Russian", _translation_ru_RU },
- { "hu_HU", "cp1250", NULL, _translation_hu_HU },
- { "es_ES", "iso-8859-1", "Espanol", _translation_es_ES },
- { "it_IT", "iso-8859-1", "Italiano", _translation_it_IT },
- { "fr_FR", "iso-8859-1", "Francais", _translation_fr_FR },
- { "de_DE", "iso-8859-1", "Deutsch", _translation_de_DE },
- { NULL, NULL, NULL, NULL }
-};
-
-// code
-
-static const PoMessageEntry *_currentTranslation = NULL;
-static int _currentTranslationMessageEntryCount = 0;
-static const char *_currentTranslationCharset = NULL;
-
-void po2c_setlang(const char *lang) {
- _currentTranslation = NULL;
- _currentTranslationMessageEntryCount = 0;
- _currentTranslationCharset = NULL;
-
- // if lang is NULL or "", deactivate it
- if (lang == NULL || *lang == '\0')
- return;
-
- // searches for a valid language array
- for (int i = 0; _currentTranslation == NULL && _translations[i].lang != NULL; ++i) {
- if (strcmp(lang, _translations[i].lang) == 0) {
- _currentTranslation = _translations[i].msgs;
- _currentTranslationCharset = _translations[i].charset;
- }
- }
-
- // try partial searches
- for (int i = 0; _currentTranslation == NULL && _translations[i].lang != NULL; ++i) {
- if (strncmp(lang, _translations[i].lang, 2) == 0) {
- _currentTranslation = _translations[i].msgs;
- _currentTranslationCharset = _translations[i].charset;
- }
- }
-
- // if found, count entries
- if (_currentTranslation != NULL) {
- for (const PoMessageEntry *m = _currentTranslation; m->msgid != -1; ++m)
- ++_currentTranslationMessageEntryCount;
- }
-}
-
-const char *po2c_gettext(const char *msgid) {
- // if no language is set or msgid is empty, return msgid as is
- if (_currentTranslation == NULL || *msgid == '\0')
- return msgid;
-
- // binary-search for the msgid
- int leftIndex = 0;
- int rightIndex = _currentTranslationMessageEntryCount - 1;
-
- while (rightIndex >= leftIndex) {
- const int midIndex = (leftIndex + rightIndex) / 2;
- const PoMessageEntry * const m = &_currentTranslation[midIndex];
-
- const int compareResult = strcmp(msgid, _messageIds[m->msgid]);
-
- if (compareResult == 0)
- return m->msgstr;
- else if (compareResult < 0)
- rightIndex = midIndex - 1;
- else
- leftIndex = midIndex + 1;
- }
-
- return msgid;
-}
-
-const char *po2c_getcharset(void) {
- if (_currentTranslationCharset)
- return _currentTranslationCharset;
- else
- return "ASCII";
-}
-
-int po2c_getnumlangs(void) {
- return ARRAYSIZE(_translations) - 1;
-}
-
-const char *po2c_getlang(const int num) {
- assert(num < ARRAYSIZE(_translations));
- return _translations[num].lang;
-}
-
-const char *po2c_getlangname(const int num) {
- assert(num < ARRAYSIZE(_translations));
- if (_translations[num].langname != NULL)
- return _translations[num].langname;
- return _translations[num].lang;
-}
diff --git a/common/rational.cpp b/common/rational.cpp
index 6c5d44af84..f55c2dcfe3 100644
--- a/common/rational.cpp
+++ b/common/rational.cpp
@@ -22,6 +22,7 @@
* $Id$
*/
+#include "common/debug.h"
#include "common/rational.h"
#include "common/util.h"
#include "common/algorithm.h"
@@ -207,7 +208,7 @@ bool Rational::operator==(int right) const {
}
bool Rational::operator!=(int right) const {
- return (_denom == 1) && (_num != right);
+ return (_denom != 1) || (_num != right);
}
bool Rational::operator>(int right) const {
@@ -257,38 +258,34 @@ frac_t Rational::toFrac() const {
return (_num * FRAC_ONE) / _denom;
}
-Rational::operator int() const {
- return toInt();
-}
-
-Rational::operator double() const {
- return toDouble();
-}
-
const Rational operator+(int left, const Rational &right) {
- Rational tmp = right;
- tmp += left;
+ Rational tmp(left);
+ tmp += right;
return tmp;
}
const Rational operator-(int left, const Rational &right) {
- Rational tmp = right;
- tmp -= left;
+ Rational tmp(left);
+ tmp -= right;
return tmp;
}
const Rational operator*(int left, const Rational &right) {
- Rational tmp = right;
- tmp *= left;
+ Rational tmp(left);
+ tmp *= right;
return tmp;
}
const Rational operator/(int left, const Rational &right) {
- Rational tmp = right;
- tmp /= left;
+ Rational tmp(left);
+ tmp /= right;
return tmp;
}
+void Rational::debugPrint(int debuglevel, const char *caption) const {
+ debug(debuglevel, "%s %d/%d", caption, _num, _denom);
+}
+
bool operator==(int left, const Rational &right) {
return right == left;
}
diff --git a/common/rational.h b/common/rational.h
index 5ceac36209..bee09d8ddb 100644
--- a/common/rational.h
+++ b/common/rational.h
@@ -76,9 +76,6 @@ public:
bool operator>=(int right) const;
bool operator<=(int right) const;
- operator int() const;
- operator double() const;
-
void invert();
Rational getInverse() const;
@@ -86,6 +83,8 @@ public:
double toDouble() const;
frac_t toFrac() const;
+ void debugPrint(int debuglevel = 0, const char *caption = "Rational:") const;
+
private:
int _num;
int _denom;
diff --git a/common/rect.h b/common/rect.h
index dc97dcceec..326f481f3b 100644
--- a/common/rect.h
+++ b/common/rect.h
@@ -90,6 +90,9 @@ struct Rect {
Rect(int16 x1, int16 y1, int16 x2, int16 y2) : top(y1), left(x1), bottom(y2), right(x2) {
assert(isValidRect());
}
+ bool operator==(const Rect &rhs) const { return equals(rhs); }
+ bool operator!=(const Rect &rhs) const { return !equals(rhs); }
+
int16 width() const { return right - left; }
int16 height() const { return bottom - top; }
diff --git a/common/scummsys.h b/common/scummsys.h
index 994fdf593d..71873ee4e6 100644
--- a/common/scummsys.h
+++ b/common/scummsys.h
@@ -243,6 +243,13 @@
#define SCUMM_NEED_ALIGNMENT
#endif
+ // Very BAD hack following, used to avoid triggering an assert in uClibc dingux library
+ // "toupper" when pressing keyboard function keys.
+ #if defined(DINGUX)
+ #undef toupper
+ #define toupper(c) (((c & 0xFF) >= 97) && ((c & 0xFF) <= 122) ? ((c & 0xFF) - 32) : (c & 0xFF))
+ #endif
+
#elif defined(__DC__)
#define scumm_stricmp strcasecmp
@@ -308,6 +315,7 @@
#elif defined(__PSP__)
#include <malloc.h>
+ #include "backends/platform/psp/memory.h"
#define scumm_stricmp strcasecmp
#define scumm_strnicmp strncasecmp
@@ -315,6 +323,9 @@
#define SCUMM_LITTLE_ENDIAN
#define SCUMM_NEED_ALIGNMENT
+ /* to make an efficient, inlined memcpy implementation */
+ #define memcpy(dst, src, size) psp_memcpy(dst, src, size)
+
#elif defined(__amigaos4__)
#define scumm_stricmp strcasecmp
diff --git a/common/str.cpp b/common/str.cpp
index 744ba46ec7..c3c19adfe6 100644
--- a/common/str.cpp
+++ b/common/str.cpp
@@ -30,11 +30,6 @@
#include <stdarg.h>
-#if !defined(__SYMBIAN32__)
-#include <new>
-#endif
-
-
namespace Common {
MemoryPool *g_refCountPool = 0; // FIXME: This is never freed right now
@@ -421,7 +416,7 @@ void String::trim() {
// Trim leading whitespace
char *t = _str;
- while (isspace(*t))
+ while (isspace((unsigned char)*t))
t++;
if (t != _str) {
@@ -444,12 +439,20 @@ String String::printf(const char *fmt, ...) {
int len = vsnprintf(output._str, _builtinCapacity, fmt, va);
va_end(va);
- if (len == -1) {
- // MSVC doesn't return the size the full string would take up.
- // Try increasing the size of the string until it fits.
+ if (len == -1 || len == _builtinCapacity - 1) {
+ // MSVC and IRIX don't return the size the full string would take up.
+ // MSVC returns -1, IRIX returns the number of characters actually written,
+ // which is at the most the size of the buffer minus one, as the string is
+ // truncated to fit.
// We assume MSVC failed to output the correct, null-terminated string
// if the return value is either -1 or size.
+ // For IRIX, because we lack a better mechanism, we assume failure
+ // if the return value equals size - 1.
+ // The downside to this is that whenever we try to format a string where the
+ // size is 1 below the built-in capacity, the size is needlessly increased.
+
+ // Try increasing the size of the string until it fits.
int size = _builtinCapacity;
do {
size *= 2;
@@ -460,7 +463,7 @@ String String::printf(const char *fmt, ...) {
va_start(va, fmt);
len = vsnprintf(output._str, size, fmt, va);
va_end(va);
- } while (len == -1 || len >= size);
+ } while (len == -1 || len >= size - 1);
output._size = len;
} else if (len < (int)_builtinCapacity) {
// vsnprintf succeeded
@@ -626,7 +629,7 @@ Common::String lastPathComponent(const Common::String &path, const char sep) {
// Now scan the whole component
const char *first = last - 1;
- while (first >= str && *first != sep)
+ while (first > str && *first != sep)
--first;
if (*first == sep)
@@ -696,9 +699,18 @@ bool matchString(const char *str, const char *pat, bool ignoreCase, bool pathMod
switch (*pat) {
case '*':
- // Record pattern / string position for backtracking
- p = ++pat;
- q = str;
+ if (*str) {
+ // Record pattern / string position for backtracking
+ p = ++pat;
+ q = str;
+ } else {
+ // If we've reached the end of str, we can't backtrack further
+ // NB: We can't simply check if pat also ended here, because
+ // the pattern might end with any number of *s.
+ ++pat;
+ p = 0;
+ q = 0;
+ }
// If pattern ended with * -> match
if (!*pat)
return true;
diff --git a/common/stream.cpp b/common/stream.cpp
index 84b712a562..9f8f6127f1 100644
--- a/common/stream.cpp
+++ b/common/stream.cpp
@@ -226,6 +226,7 @@ BufferedReadStream::BufferedReadStream(ReadStream *parentStream, uint32 bufSize,
: _parentStream(parentStream),
_disposeParentStream(disposeParentStream),
_pos(0),
+ _eos(false),
_bufSize(0),
_realBufSize(bufSize) {
@@ -259,8 +260,12 @@ uint32 BufferedReadStream::read(void *dataPtr, uint32 dataSize) {
// At this point the buffer is empty. Now if the read request
// exceeds the buffer size, just satisfy it directly.
- if (dataSize > _bufSize)
- return alreadyRead + _parentStream->read(dataPtr, dataSize);
+ if (dataSize > _realBufSize) {
+ uint32 n = _parentStream->read(dataPtr, dataSize);
+ if (_parentStream->eos())
+ _eos = true;
+ return alreadyRead + n;
+ }
// Refill the buffer.
// If we didn't read as many bytes as requested, the reason
@@ -269,13 +274,19 @@ uint32 BufferedReadStream::read(void *dataPtr, uint32 dataSize) {
// return to the caller.
_bufSize = _parentStream->read(_buf, _realBufSize);
_pos = 0;
- if (dataSize > _bufSize)
+ if (_bufSize < dataSize) {
+ // we didn't get enough data from parent
+ if (_parentStream->eos())
+ _eos = true;
dataSize = _bufSize;
+ }
}
- // Satisfy the request from the buffer
- memcpy(dataPtr, _buf + _pos, dataSize);
- _pos += dataSize;
+ if (dataSize) {
+ // Satisfy the request from the buffer
+ memcpy(dataPtr, _buf + _pos, dataSize);
+ _pos += dataSize;
+ }
return alreadyRead + dataSize;
}
@@ -289,18 +300,76 @@ bool BufferedSeekableReadStream::seek(int32 offset, int whence) {
// in the buffer only.
// Note: We could try to handle SEEK_END and SEEK_SET, too, but
// since they are rarely used, it seems not worth the effort.
+ _eos = false; // seeking always cancels EOS
+
if (whence == SEEK_CUR && (int)_pos + offset >= 0 && _pos + offset <= _bufSize) {
_pos += offset;
+
+ // Note: we do not need to reset parent's eos flag here. It is
+ // sufficient that it is reset when actually seeking in the parent.
} else {
// Seek was not local enough, so we reset the buffer and
- // just seeks normally in the parent stream.
+ // just seek normally in the parent stream.
if (whence == SEEK_CUR)
offset -= (_bufSize - _pos);
_pos = _bufSize;
_parentStream->seek(offset, whence);
}
- return true; // FIXME: STREAM REWRITE
+ return true;
+}
+
+BufferedWriteStream::BufferedWriteStream(WriteStream *parentStream, uint32 bufSize, DisposeAfterUse::Flag disposeParentStream)
+ : _parentStream(parentStream),
+ _disposeParentStream(disposeParentStream),
+ _pos(0),
+ _bufSize(bufSize) {
+
+ assert(parentStream);
+ _buf = new byte[bufSize];
+ assert(_buf);
+}
+
+BufferedWriteStream::~BufferedWriteStream() {
+ assert(flush());
+
+ if (_disposeParentStream)
+ delete _parentStream;
+
+ delete[] _buf;
+}
+
+uint32 BufferedWriteStream::write(const void *dataPtr, uint32 dataSize) {
+ // check if we have enough space for writing to the buffer
+ if (_bufSize - _pos >= dataSize) {
+ memcpy(_buf + _pos, dataPtr, dataSize);
+ _pos += dataSize;
+ } else if (_bufSize >= dataSize) { // check if we can flush the buffer and load the data
+ // flush the buffer
+ assert(flushBuffer());
+ memcpy(_buf, dataPtr, dataSize);
+ _pos += dataSize;
+ } else { // too big for our buffer
+ // flush the buffer
+ assert(flushBuffer());
+ return _parentStream->write(dataPtr, dataSize);
+ }
+ return dataSize;
+}
+
+bool BufferedWriteStream::flushBuffer() {
+ uint32 bytesToWrite = _pos;
+
+ if (bytesToWrite) {
+ _pos = 0;
+ if (_parentStream->write(_buf, bytesToWrite) != bytesToWrite)
+ return false;
+ }
+ return true;
+}
+
+bool BufferedWriteStream::flush() {
+ return flushBuffer();
}
bool MemoryWriteStreamDynamic::seek(int32 offs, int whence) {
diff --git a/common/stream.h b/common/stream.h
index 5e0d7149b0..c6605cb42d 100644
--- a/common/stream.h
+++ b/common/stream.h
@@ -149,7 +149,6 @@ public:
void writeString(const String &str);
};
-
/**
* Generic interface for a readable data stream.
*/
@@ -495,16 +494,17 @@ protected:
DisposeAfterUse::Flag _disposeParentStream;
byte *_buf;
uint32 _pos;
+ bool _eos; // end of stream
uint32 _bufSize;
uint32 _realBufSize;
public:
BufferedReadStream(ReadStream *parentStream, uint32 bufSize, DisposeAfterUse::Flag disposeParentStream = DisposeAfterUse::NO);
- ~BufferedReadStream();
+ virtual ~BufferedReadStream();
- virtual bool eos() const { return (_pos == _bufSize) && _parentStream->eos(); }
+ virtual bool eos() const { return _eos; }
virtual bool err() const { return _parentStream->err(); }
- virtual void clearErr() { _parentStream->clearErr(); }
+ virtual void clearErr() { _eos = false; _parentStream->clearErr(); }
virtual uint32 read(void *dataPtr, uint32 dataSize);
};
@@ -525,7 +525,25 @@ public:
virtual bool seek(int32 offset, int whence = SEEK_SET);
};
+/**
+ * Wrapper class which adds buffering to any WriteStream.
+ */
+class BufferedWriteStream : public WriteStream {
+protected:
+ WriteStream *_parentStream;
+ DisposeAfterUse::Flag _disposeParentStream;
+ byte *_buf;
+ uint32 _pos;
+ uint32 _bufSize;
+ bool flushBuffer(); // write out the data in the buffer
+public:
+ BufferedWriteStream(WriteStream *parentStream, uint32 bufSize, DisposeAfterUse::Flag disposeParentStream = DisposeAfterUse::NO);
+ virtual ~BufferedWriteStream();
+
+ virtual uint32 write(const void *dataPtr, uint32 dataSize);
+ virtual bool flush();
+};
/**
* Simple memory based 'stream', which implements the ReadStream interface for
diff --git a/common/translation.cpp b/common/translation.cpp
index 36ce4be83f..a33e1a5243 100644
--- a/common/translation.cpp
+++ b/common/translation.cpp
@@ -29,7 +29,11 @@
#undef ARRAYSIZE
#endif
+#define TRANSLATIONS_DAT_VER 2
+
#include "translation.h"
+#include "common/archive.h"
+#include "common/config-manager.h"
DECLARE_SINGLETON(Common::TranslationManager)
@@ -39,18 +43,19 @@ DECLARE_SINGLETON(Common::TranslationManager)
#endif // !WIN32
#endif
-#ifdef USE_TRANSLATION
-#include "messages.cpp"
-#endif
-
namespace Common {
+bool operator<(const TLanguage &l, const TLanguage &r) {
+ return strcmp(l.name, r.name) < 0;
+}
#ifdef USE_TRANSLATION
// Translation enabled
-TranslationManager::TranslationManager() {
+TranslationManager::TranslationManager() : _currentLang(-1) {
+ loadTranslationsInfoDat();
+
#ifdef USE_DETECTLANG
#ifdef WIN32
// We can not use "setlocale" (at least not for MSVC builds), since it
@@ -120,50 +125,130 @@ TranslationManager::~TranslationManager() {
}
void TranslationManager::setLanguage(const char *lang) {
- if (*lang == '\0')
- po2c_setlang(_syslang.c_str());
- else
- po2c_setlang(lang);
+ // Get lang index
+ int langIndex = -1;
+ String langStr(lang);
+ if (langStr.empty())
+ langStr = _syslang;
+
+ // Searching for a valid language
+ for (unsigned int i = 0; i < _langs.size() && langIndex == -1; ++i) {
+ if (langStr == _langs[i])
+ langIndex = i;
+ }
+
+ // Try partial match
+ for (unsigned int i = 0; i < _langs.size() && langIndex == -1; ++i) {
+ if (strncmp(langStr.c_str(), _langs[i].c_str(), 2) == 0)
+ langIndex = i;
+ }
+
+ // Load messages for that lang
+ // Call it even if the index is -1 to unload previously loaded translations
+ if (langIndex != _currentLang) {
+ loadLanguageDat(langIndex);
+ _currentLang = langIndex;
+ }
}
const char *TranslationManager::getTranslation(const char *message) {
- return po2c_gettext(message);
+ return getTranslation(message, NULL);
+}
+
+const char *TranslationManager::getTranslation(const char *message, const char *context) {
+ // if no language is set or message is empty, return msgid as is
+ if (_currentTranslationMessages.empty() || *message == '\0')
+ return message;
+
+ // binary-search for the msgid
+ int leftIndex = 0;
+ int rightIndex = _currentTranslationMessages.size() - 1;
+
+ while (rightIndex >= leftIndex) {
+ const int midIndex = (leftIndex + rightIndex) / 2;
+ const PoMessageEntry *const m = &_currentTranslationMessages[midIndex];
+
+ int compareResult = strcmp(message, _messageIds[m->msgid].c_str());
+
+ if (compareResult == 0) {
+ // Get the range of messages with the same ID (but different context)
+ leftIndex = rightIndex = midIndex;
+ while (
+ leftIndex > 0 &&
+ _currentTranslationMessages[leftIndex - 1].msgid == m->msgid
+ ) {
+ --leftIndex;
+ }
+ while (
+ rightIndex < (int)_currentTranslationMessages.size() - 1 &&
+ _currentTranslationMessages[rightIndex + 1].msgid == m->msgid
+ ) {
+ ++rightIndex;
+ }
+ // Find the context we want
+ if (context == NULL || *context == '\0' || leftIndex == rightIndex)
+ return _currentTranslationMessages[leftIndex].msgstr.c_str();
+ // We could use again binary search, but there should be only a small number of contexts.
+ while (rightIndex > leftIndex) {
+ compareResult = strcmp(context, _currentTranslationMessages[rightIndex].msgctxt.c_str());
+ if (compareResult == 0)
+ return _currentTranslationMessages[rightIndex].msgstr.c_str();
+ else if (compareResult > 0)
+ break;
+ --rightIndex;
+ }
+ return _currentTranslationMessages[leftIndex].msgstr.c_str();
+ } else if (compareResult < 0)
+ rightIndex = midIndex - 1;
+ else
+ leftIndex = midIndex + 1;
+ }
+
+ return message;
}
const char *TranslationManager::getCurrentCharset() {
- return po2c_getcharset();
+ if (_currentCharset.empty())
+ return "ASCII";
+ return _currentCharset.c_str();
+}
+
+const char *TranslationManager::getCurrentLanguage() {
+ if (_currentLang == -1)
+ return "C";
+ return _langs[_currentLang].c_str();
}
String TranslationManager::getTranslation(const String &message) {
- return po2c_gettext(message.c_str());
+ return getTranslation(message.c_str());
+}
+
+String TranslationManager::getTranslation(const String &message, const String &context) {
+ return getTranslation(message.c_str(), context.c_str());
}
const TLangArray TranslationManager::getSupportedLanguageNames() const {
TLangArray languages;
- int total = po2c_getnumlangs();
- for (int i = 0; i < total; i++) {
- TLanguage lng(po2c_getlangname(i), i + 1);
+ for (unsigned int i = 0; i < _langNames.size(); i++) {
+ TLanguage lng(_langNames[i].c_str(), i + 1);
languages.push_back(lng);
}
- //sort(languages.begin(), languages.end());
+ sort(languages.begin(), languages.end());
return languages;
}
int TranslationManager::parseLanguage(const String lang) {
- int total = po2c_getnumlangs();
-
- for (int i = 0; i < total; i++) {
- if (lang == po2c_getlang(i))
+ for (unsigned int i = 0; i < _langs.size(); i++) {
+ if (lang == _langs[i])
return i + 1;
}
return kTranslationBuiltinId;
}
-
const char *TranslationManager::getLangById(int id) {
switch (id) {
case kTranslationAutodetectId:
@@ -171,8 +256,8 @@ const char *TranslationManager::getLangById(int id) {
case kTranslationBuiltinId:
return "C";
default:
- if (id >= 0 && id - 1 < po2c_getnumlangs())
- return po2c_getlang(id - 1);
+ if (id >= 0 && id - 1 < (int)_langs.size())
+ return _langs[id - 1].c_str();
}
// In case an invalid ID was specified, we will output a warning
@@ -181,6 +266,175 @@ const char *TranslationManager::getLangById(int id) {
return "";
}
+bool TranslationManager::openTranslationsFile(File& inFile) {
+ // First try to open it directly (i.e. using the SearchMan).
+ if (inFile.open("translations.dat"))
+ return true;
+
+ // Then look in the Themepath if we can find the file.
+ if (ConfMan.hasKey("themepath"))
+ return openTranslationsFile(FSNode(ConfMan.get("themepath")), inFile);
+
+ return false;
+}
+
+bool TranslationManager::openTranslationsFile(const FSNode &node, File& inFile, int depth) {
+ if (!node.exists() || !node.isReadable() || !node.isDirectory())
+ return false;
+
+ // Check if we can find the file in this directory
+ // Since File::open(FSNode) makes all the needed tests, it is not really
+ // necessary to make them here. But it avoid printing warnings.
+ FSNode fileNode = node.getChild("translations.dat");
+ if (fileNode.exists() && fileNode.isReadable() && !fileNode.isDirectory()) {
+ if (inFile.open(fileNode))
+ return true;
+ }
+
+ // Check if we exceeded the given recursion depth
+ if (depth - 1 == -1)
+ return false;
+
+ // Otherwise look for it in sub-directories
+ FSList fileList;
+ if (!node.getChildren(fileList, FSNode::kListDirectoriesOnly))
+ return false;
+
+ for (FSList::iterator i = fileList.begin(); i != fileList.end(); ++i) {
+ if (openTranslationsFile(*i, inFile, depth == -1 ? - 1 : depth - 1))
+ return true;
+ }
+
+ // Not found in this directory or its sub-directories
+ return false;
+}
+
+void TranslationManager::loadTranslationsInfoDat() {
+ File in;
+ if (!openTranslationsFile(in)) {
+ warning("You are missing the 'translations.dat' file. GUI translation will not be available");
+ return;
+ }
+
+ if (!checkHeader(in))
+ return;
+
+ char buf[256];
+ int len;
+
+ // Get number of translations
+ int nbTranslations = in.readUint16BE();
+
+ // Skip all the block sizes
+ for (int i = 0; i < nbTranslations + 2; ++i)
+ in.readUint16BE();
+
+ // Read list of languages
+ _langs.resize(nbTranslations);
+ _langNames.resize(nbTranslations);
+ for (int i = 0; i < nbTranslations; ++i) {
+ len = in.readUint16BE();
+ in.read(buf, len);
+ _langs[i] = String(buf, len);
+ len = in.readUint16BE();
+ in.read(buf, len);
+ _langNames[i] = String(buf, len);
+ }
+
+ // Read messages
+ int numMessages = in.readUint16BE();
+ _messageIds.resize(numMessages);
+ for (int i = 0; i < numMessages; ++i) {
+ len = in.readUint16BE();
+ in.read(buf, len);
+ _messageIds[i] = String(buf, len);
+ }
+}
+
+void TranslationManager::loadLanguageDat(int index) {
+ _currentTranslationMessages.clear();
+ _currentCharset.clear();
+ // Sanity check
+ if (index < 0 || index >= (int)_langs.size()) {
+ if (index != -1)
+ warning("Invalid language index %d passed to TranslationManager::loadLanguageDat", index);
+ return;
+ }
+
+ File in;
+ if (!openTranslationsFile(in))
+ return;
+
+ if (!checkHeader(in))
+ return;
+
+ char buf[1024];
+ int len;
+
+ // Get number of translations
+ int nbTranslations = in.readUint16BE();
+ if (nbTranslations != (int)_langs.size()) {
+ warning("The 'translations.dat' file has changed since starting ScummVM. GUI translation will not be available");
+ return;
+ }
+
+ // Get size of blocks to skip.
+ int skipSize = 0;
+ for (int i = 0; i < index + 2; ++i)
+ skipSize += in.readUint16BE();
+ // We also need to skip the remaining block sizes
+ skipSize += 2 * (nbTranslations - index);
+
+ // Seek to start of block we want to read
+ in.seek(skipSize, SEEK_CUR);
+
+ // Read number of translated messages
+ int nbMessages = in.readUint16BE();
+ _currentTranslationMessages.resize(nbMessages);
+
+ // Read charset
+ len = in.readUint16BE();
+ in.read(buf, len);
+ _currentCharset = String(buf, len);
+
+ // Read messages
+ for (int i = 0; i < nbMessages; ++i) {
+ _currentTranslationMessages[i].msgid = in.readUint16BE();
+ len = in.readUint16BE();
+ in.read(buf, len);
+ _currentTranslationMessages[i].msgstr = String(buf, len);
+ len = in.readUint16BE();
+ if (len > 0) {
+ in.read(buf, len);
+ _currentTranslationMessages[i].msgctxt = String(buf, len);
+ }
+ }
+}
+
+bool TranslationManager::checkHeader(File &in) {
+ char buf[13];
+ int ver;
+
+ in.read(buf, 12);
+ buf[12] = '\0';
+
+ // Check header
+ if (strcmp(buf, "TRANSLATIONS")) {
+ warning("Your 'translations.dat' file is corrupt. GUI translation will not be available");
+ return false;
+ }
+
+ // Check version
+ ver = in.readByte();
+
+ if (ver != TRANSLATIONS_DAT_VER) {
+ warning("Your 'translations.dat' file has a mismatching version, expected was %d but you got %d. GUI translation will not be available", TRANSLATIONS_DAT_VER, ver);
+ return false;
+ }
+
+ return true;
+}
+
#else // USE_TRANSLATION
// Translation disabled
@@ -208,14 +462,26 @@ String TranslationManager::getTranslation(const String &message) {
return message;
}
+const char *TranslationManager::getTranslation(const char *message, const char *) {
+ return message;
+}
+
+String TranslationManager::getTranslation(const String &message, const String &) {
+ return message;
+}
+
const TLangArray TranslationManager::getSupportedLanguageNames() const {
return TLangArray();
}
-
+
const char *TranslationManager::getCurrentCharset() {
return "ASCII";
}
+const char *TranslationManager::getCurrentLanguage() {
+ return "C";
+}
+
#endif // USE_TRANSLATION
-} // End of namespace Common
+} // End of namespace Common
diff --git a/common/translation.h b/common/translation.h
index ccdd0f3500..ff0a8a2acf 100644
--- a/common/translation.h
+++ b/common/translation.h
@@ -27,6 +27,8 @@
#include "common/singleton.h"
#include "common/str-array.h"
+#include "common/file.h"
+#include "common/fs.h"
namespace Common {
@@ -39,19 +41,20 @@ struct TLanguage {
const char *name;
int id;
- TLanguage() {
- name = 0;
- id = 0;
- }
-
- TLanguage(const char *n, int i) {
- name = n;
- id = i;
- }
+ TLanguage() : name(0), id(0) {}
+ TLanguage(const char *n, int i) : name(n), id(i) {}
};
+bool operator<(const TLanguage &l, const TLanguage &r);
+
typedef Array<TLanguage> TLangArray;
+struct PoMessageEntry {
+ int msgid;
+ String msgctxt;
+ String msgstr;
+};
+
/**
* Message translation manager.
*/
@@ -115,6 +118,28 @@ public:
String getTranslation(const String &message);
/**
+ * Returns the translation into the current language of the parameter
+ * message. In case the message isn't found in the translation catalog,
+ * it returns the original untranslated message.
+ *
+ * If a translation is found for the given context it will return that
+ * translation, otherwise it will look for a translation for the same
+ * massage without a context or with a different context.
+ */
+ const char *getTranslation(const char *message, const char *context);
+
+ /**
+ * Returns the translation into the current language of the parameter
+ * message. In case the message isn't found in the translation catalog,
+ * it returns the original untranslated message.
+ *
+ * If a translation is found for the given context it will return that
+ * translation, otherwise it will look for a translation for the same
+ * massage without a context or with a different context.
+ */
+ String getTranslation(const String &message, const String &context);
+
+ /**
* Returns a list of supported languages.
*
* @return The list of supported languages in a user readable form.
@@ -126,8 +151,52 @@ public:
*/
const char *getCurrentCharset();
+ /**
+ * Returns currently selected translation language
+ */
+ const char *getCurrentLanguage();
+
private:
- Common::String _syslang;
+#ifdef USE_TRANSLATION
+ /**
+ * Find the translations.dat file. It looks first using the SearchMan and
+ * then if needed using the Themepath. If found it opens the given File
+ * to read the translations.dat file.
+ */
+ bool openTranslationsFile(File&);
+
+ /**
+ * Find the translations.dat file in the given directory node.
+ * If found it opens the given File to read the translations.dat file.
+ */
+ bool openTranslationsFile(const FSNode &node, File&, int depth = -1);
+
+ /**
+ * Load the list of languages from the translations.dat file
+ */
+ void loadTranslationsInfoDat();
+
+ /**
+ * Load the translation for the given language from the translations.dat file
+ *
+ * @param index of the language in the list of languages
+ */
+ void loadLanguageDat(int index);
+
+ /**
+ * Check the header of the given file to make sure it is a valid translations data file.
+ */
+ bool checkHeader(File &in);
+
+ String _syslang;
+ StringArray _langs;
+ StringArray _langNames;
+
+ StringArray _messageIds;
+ Array<PoMessageEntry> _currentTranslationMessages;
+ String _currentCharset;
+ int _currentLang;
+#endif
};
} // End of namespace Common
@@ -136,10 +205,14 @@ private:
#ifdef USE_TRANSLATION
#define _(str) TransMan.getTranslation(str)
+#define _c(str, context) TransMan.getTranslation(str, context)
#else
#define _(str) str
+#define _c(str, context) str
#endif
#define _s(str) str
+#define _sc(str, ctxt) str
+#define DECLARE_TRANSLATION_ADDITIONAL_CONTEXT(str, ctxt)
#endif
diff --git a/common/unzip.cpp b/common/unzip.cpp
index a29518a796..e0ddb8f286 100644
--- a/common/unzip.cpp
+++ b/common/unzip.cpp
@@ -107,6 +107,9 @@ typedef struct {
#include "common/unzip.h"
#include "common/file.h"
+#include "common/hashmap.h"
+#include "common/hash-str.h"
+
#if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP)
/* like the STRICT of WIN32, we define a pointer that cannot be converted
from (void*) without cast */
@@ -362,6 +365,16 @@ typedef struct {
uLong byte_before_the_zipfile;/* byte before the zipfile, (>0 for sfx)*/
} file_in_zip_read_info_s;
+typedef struct {
+ uLong num_file; /* number of the current file in the zipfile*/
+ uLong pos_in_central_dir; /* pos of the current file in the central dir*/
+ uLong current_file_ok; /* flag about the usability of the current file*/
+ unz_file_info cur_file_info; /* public info about the current file in zip*/
+ unz_file_info_internal cur_file_info_internal; /* private info about it*/
+} cached_file_in_zip;
+
+typedef Common::HashMap<Common::String, cached_file_in_zip, Common::IgnoreCase_Hash,
+ Common::IgnoreCase_EqualTo> ZipHash;
/* unz_s contain internal information about the zipfile
*/
@@ -382,6 +395,7 @@ typedef struct {
unz_file_info_internal cur_file_info_internal; /* private info about it*/
file_in_zip_read_info_s* pfile_in_zip_read; /* structure about the current
file if we are decompressing it */
+ ZipHash _hash;
} unz_s;
/* ===========================================================================
@@ -589,7 +603,27 @@ unzFile unzOpen(Common::SeekableReadStream *stream) {
us->central_pos = central_pos;
us->pfile_in_zip_read = NULL;
- unzGoToFirstFile((unzFile)us);
+ err = unzGoToFirstFile((unzFile)us);
+
+ while (err == UNZ_OK) {
+ // Get the file details
+ char szCurrentFileName[UNZ_MAXFILENAMEINZIP+1];
+ unzGetCurrentFileInfo(us, NULL, szCurrentFileName, sizeof(szCurrentFileName) - 1,
+ NULL, 0, NULL, 0);
+
+ // Save details into the hash
+ cached_file_in_zip fe;
+ fe.num_file = us->num_file;
+ fe.pos_in_central_dir = us->pos_in_central_dir;
+ fe.current_file_ok = us->current_file_ok;
+ fe.cur_file_info = us->cur_file_info;
+ fe.cur_file_info_internal = us->cur_file_info_internal;
+
+ us->_hash[Common::String(szCurrentFileName)] = fe;
+
+ // Move to the next file
+ err = unzGoToNextFile((unzFile)us);
+ }
return (unzFile)us;
}
@@ -870,7 +904,6 @@ int unzGoToNextFile(unzFile file) {
return err;
}
-
/*
Try locate the file szFileName in the zipfile.
For the iCaseSensitivity signification, see unzipStringFileNameCompare
@@ -881,12 +914,6 @@ int unzGoToNextFile(unzFile file) {
*/
int unzLocateFile(unzFile file, const char *szFileName, int iCaseSensitivity) {
unz_s* s;
- int err;
-
-
- uLong num_fileSaved;
- uLong pos_in_central_dirSaved;
-
if (file==NULL)
return UNZ_PARAMERROR;
@@ -898,25 +925,20 @@ int unzLocateFile(unzFile file, const char *szFileName, int iCaseSensitivity) {
if (!s->current_file_ok)
return UNZ_END_OF_LIST_OF_FILE;
- num_fileSaved = s->num_file;
- pos_in_central_dirSaved = s->pos_in_central_dir;
-
- err = unzGoToFirstFile(file);
+ // Check to see if the entry exists
+ ZipHash::iterator i = s->_hash.find(Common::String(szFileName));
+ if (i == s->_hash.end())
+ return UNZ_END_OF_LIST_OF_FILE;
- while (err == UNZ_OK) {
- char szCurrentFileName[UNZ_MAXFILENAMEINZIP+1];
- unzGetCurrentFileInfo(file,NULL,
- szCurrentFileName,sizeof(szCurrentFileName)-1,
- NULL,0,NULL,0);
- if (unzStringFileNameCompare(szCurrentFileName,
- szFileName,iCaseSensitivity)==0)
- return UNZ_OK;
- err = unzGoToNextFile(file);
- }
+ // Found it, so reset the details in the main structure
+ cached_file_in_zip &fe = i->_value;
+ s->num_file = fe.num_file;
+ s->pos_in_central_dir = fe.pos_in_central_dir;
+ s->current_file_ok = fe.current_file_ok;
+ s->cur_file_info = fe.cur_file_info;
+ s->cur_file_info_internal = fe.cur_file_info_internal;
- s->num_file = num_fileSaved ;
- s->pos_in_central_dir = pos_in_central_dirSaved ;
- return err;
+ return UNZ_OK;
}
diff --git a/common/util.cpp b/common/util.cpp
index 179e648012..2fffdca8a6 100644
--- a/common/util.cpp
+++ b/common/util.cpp
@@ -259,6 +259,9 @@ const RenderModeDescription g_renderModes[] = {
{0, 0, kRenderDefault}
};
+DECLARE_TRANSLATION_ADDITIONAL_CONTEXT("Hercules Green", "lowres")
+DECLARE_TRANSLATION_ADDITIONAL_CONTEXT("Hercules Amber", "lowres")
+
RenderMode parseRenderMode(const String &str) {
if (str.empty())
return kRenderDefault;