diff options
author | athrxx | 2019-01-26 22:55:25 +0100 |
---|---|---|
committer | athrxx | 2019-03-06 20:48:20 +0100 |
commit | 890c4c5f41e74938640f4bc8ddb843ac3ca9928d (patch) | |
tree | 1574c7a04f65cc2ce468380b8b9d05a70c0cfaec /engines/kyra/graphics/screen_eob.cpp | |
parent | 4cc9c81a75f73216ba98b3744a32c900aad36061 (diff) | |
download | scummvm-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.cpp | 12 |
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); |