[Scummvm-cvs-logs] SF.net SVN: scummvm:[47088] scummvm/trunk/engines/sci
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Wed Jan 6 19:25:43 CET 2010
Revision: 47088
http://scummvm.svn.sourceforge.net/scummvm/?rev=47088&view=rev
Author: m_kiewitz
Date: 2010-01-06 18:25:43 +0000 (Wed, 06 Jan 2010)
Log Message:
-----------
SCI: search for %J in text resources to identify japanese games, switch to upscaled hires when japanese games are started, removed TODO
Modified Paths:
--------------
scummvm/trunk/engines/sci/detection.cpp
scummvm/trunk/engines/sci/sci.cpp
Modified: scummvm/trunk/engines/sci/detection.cpp
===================================================================
--- scummvm/trunk/engines/sci/detection.cpp 2010-01-06 17:25:54 UTC (rev 47087)
+++ scummvm/trunk/engines/sci/detection.cpp 2010-01-06 18:25:43 UTC (rev 47088)
@@ -318,14 +318,22 @@
// (like, for example, Eco Quest 1 and all SCI1.1 games and newer, e.g. Freddy Pharkas).
// As far as we know, these games store the messages of each language in separate
// resources, and it's not possible to detect that easily
+ // Also look for "%J" which is used in japanese games
Resource *text = resMan->findResource(ResourceId(kResourceTypeText, 0), 0);
uint seeker = 0;
if (text) {
while (seeker < text->size) {
- if (text->data[seeker] == '#') {
- s_fallbackDesc.language = charToScummVMLanguage(text->data[seeker + 1]);
+ if (text->data[seeker] == '#') {
+ if (seeker + 1 < text->size)
+ s_fallbackDesc.language = charToScummVMLanguage(text->data[seeker + 1]);
break;
}
+ if (text->data[seeker] == '%') {
+ if ((seeker + 1 < text->size) && (text->data[seeker + 1] == 'J')) {
+ s_fallbackDesc.language = charToScummVMLanguage(text->data[seeker + 1]);
+ break;
+ }
+ }
seeker++;
}
}
Modified: scummvm/trunk/engines/sci/sci.cpp
===================================================================
--- scummvm/trunk/engines/sci/sci.cpp 2010-01-06 17:25:54 UTC (rev 47087)
+++ scummvm/trunk/engines/sci/sci.cpp 2010-01-06 18:25:43 UTC (rev 47088)
@@ -114,8 +114,9 @@
#endif
) && getPlatform() == Common::kPlatformWindows;
- // TODO: Detect japanese editions and set upscaledHires on those as well
- // TODO: Possibly look at first picture resource and determine if its hires or not
+ // Japanese versions of games use hi-res font on upscaled version of the game
+ if ((getLanguage() == Common::JA_JPN) && (getSciVersion() <= SCI_VERSION_1_1))
+ upscaledHires = true;
// Initialize graphics-related parts
Screen *screen = 0;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list