aboutsummaryrefslogtreecommitdiff
path: root/scumm/saveload.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'scumm/saveload.cpp')
-rw-r--r--scumm/saveload.cpp26
1 files changed, 23 insertions, 3 deletions
diff --git a/scumm/saveload.cpp b/scumm/saveload.cpp
index 6c0d698114..3445a453d2 100644
--- a/scumm/saveload.cpp
+++ b/scumm/saveload.cpp
@@ -252,10 +252,30 @@ bool ScummEngine::loadState(int slot, bool compat) {
else
setupV1ZakPalette();
} else if (_features & GF_16COLOR) {
- if ((_features & GF_AMIGA) || (_features & GF_ATARI_ST))
- setupAmigaPalette();
- else
+ switch (_renderMode) {
+ case Common::kRenderEGA:
setupEGAPalette();
+ break;
+
+ case Common::kRenderAmiga:
+ setupAmigaPalette();
+ break;
+
+ case Common::kRenderCGA:
+ setupCGAPalette();
+ break;
+
+ case Common::kRenderHercA:
+ case Common::kRenderHercG:
+ setupHercPalette();
+ break;
+
+ default:
+ if ((_features & GF_AMIGA) || (_features & GF_ATARI_ST))
+ setupAmigaPalette();
+ else
+ setupEGAPalette();
+ }
} else
setDirtyColors(0, 255);