aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/graphics/screen_eob.cpp
diff options
context:
space:
mode:
authorathrxx2019-01-26 22:55:25 +0100
committerathrxx2019-03-06 20:48:20 +0100
commit890c4c5f41e74938640f4bc8ddb843ac3ca9928d (patch)
tree1574c7a04f65cc2ce468380b8b9d05a70c0cfaec /engines/kyra/graphics/screen_eob.cpp
parent4cc9c81a75f73216ba98b3744a32c900aad36061 (diff)
downloadscummvm-rg350-890c4c5f41e74938640f4bc8ddb843ac3ca9928d.tar.gz
scummvm-rg350-890c4c5f41e74938640f4bc8ddb843ac3ca9928d.tar.bz2
scummvm-rg350-890c4c5f41e74938640f4bc8ddb843ac3ca9928d.zip
KYRA: (EOB1/Amiga) - fix start up
First efforts to get this running. The intro is shown with severe palette glitches. The Main Menu does not show, thanks to the lack of font drawing. - implement endian aware stream wrapper for amiga files - implement sound file handling - implement some Amiga palette handling - etc
Diffstat (limited to 'engines/kyra/graphics/screen_eob.cpp')
-rw-r--r--engines/kyra/graphics/screen_eob.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/engines/kyra/graphics/screen_eob.cpp b/engines/kyra/graphics/screen_eob.cpp
index 3945c034fc..bf5f7af029 100644
--- a/engines/kyra/graphics/screen_eob.cpp
+++ b/engines/kyra/graphics/screen_eob.cpp
@@ -219,6 +219,18 @@ void Screen_EoB::loadShapeSetBitmap(const char *file, int tempPage, int destPage
_curPage = 2;
}
+void Screen_EoB::loadBitmap(const char *filename, int tempPage, int dstPage, Palette *pal, bool) {
+ Screen::loadBitmap(filename, tempPage, dstPage, pal);
+
+ if (_isAmiga) {
+ // Yay, this is where EOB1 Amiga hides the palette data
+ loadPalette(_pagePtrs[3] + 40000, *_palettes[0], 64);
+ _palettes[0]->fill(0, 1, 0);
+
+ Screen::convertAmigaGfx(getPagePtr(dstPage), 320, 200);
+ }
+}
+
void Screen_EoB::loadEoBBitmap(const char *file, const uint8 *cgaMapping, int tempPage, int destPage, int convertToPage) {
const char *filePattern = _vm->gameFlags().platform == Common::kPlatformFMTowns ? "%s.SHP" : ((_vm->game() == GI_EOB1 && (_renderMode == Common::kRenderEGA || _renderMode == Common::kRenderCGA)) ? "%s.EGA" : "%s.CPS");
Common::String tmp = Common::String::format(filePattern, file);