aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/drascula/drascula.cpp6
-rw-r--r--engines/drascula/staticdata.h2
2 files changed, 7 insertions, 1 deletions
diff --git a/engines/drascula/drascula.cpp b/engines/drascula/drascula.cpp
index da621a6674..50d4aad644 100644
--- a/engines/drascula/drascula.cpp
+++ b/engines/drascula/drascula.cpp
@@ -1481,6 +1481,12 @@ void DrasculaEngine::print_abc_opc(const char *said, int screenX, int screenY, i
int c = toupper(said[h]);
+ // WORKAROUND: Even original did not process it correctly
+ // Fixes apostrophe rendering
+ if (_lang != kSpanish)
+ if (c == '\'')
+ c = '\244';
+
for (int i = 0; i < CHARMAP_SIZE; i++) {
if (c == charMap[i].inChar) {
// Convert the mapped char of the normal font to the
diff --git a/engines/drascula/staticdata.h b/engines/drascula/staticdata.h
index 8c06b39a17..e6e49f870c 100644
--- a/engines/drascula/staticdata.h
+++ b/engines/drascula/staticdata.h
@@ -75,7 +75,7 @@ const CharInfo charMap[CHARMAP_SIZE] = {
{ '\225', 78, 2 }, { '\227', 87, 2 }, // I, J
{ '\203', 96, 2 }, { '\210', 105, 2 }, // K, L
{ '\214', 114, 2 }, { '\223', 123, 2 }, // M, N
- { '\226', 132, 2 }, { '\047', 141, 2 }, // special Spanish char, O
+ { '\226', 132, 2 }, { '\'', 141, 2 }, // special Spanish char, O
{ '\200', 150, 2 }, { '\207', 150, 2 }, // P, P
{ '\265', 6, 2 }, { '\220', 15, 2 }, // A, B
{ '\326', 24, 2 }, { '\340', 33, 2 }, // C, D