diff options
Diffstat (limited to 'engines/glk/frotz/glk_interface.cpp')
-rw-r--r-- | engines/glk/frotz/glk_interface.cpp | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/engines/glk/frotz/glk_interface.cpp b/engines/glk/frotz/glk_interface.cpp index c046bb4d1e..c2d6ca2703 100644 --- a/engines/glk/frotz/glk_interface.cpp +++ b/engines/glk/frotz/glk_interface.cpp @@ -165,13 +165,11 @@ void GlkInterface::initialize() { h_interpreter_number = h_version == 6 ? INTERP_MSDOS : INTERP_AMIGA; h_interpreter_version = 'F'; - { - // Set these per spec 8.3.2. - h_default_foreground = WHITE_COLOUR; - h_default_background = BLACK_COLOUR; - if (h_flags & COLOUR_FLAG) - h_flags &= ~COLOUR_FLAG; - } + // Set these per spec 8.3.2. + h_default_foreground = WHITE_COLOUR; + h_default_background = BLACK_COLOUR; + if (h_flags & COLOUR_FLAG) + h_flags &= ~COLOUR_FLAG; /* * Open the windows @@ -451,11 +449,11 @@ void GlkInterface::gos_cancel_pending_line() { void GlkInterface::showBeyondZorkTitle() { uint winW, winH, imgW, imgH; - winid_t win = glk_window_open(0, 0, 0, wintype_TextGrid, 0); - glk_window_get_size(gos_lower, &winW, &winH); + winid_t win = glk_window_open(0, 0, 0, wintype_Graphics, 0); + glk_window_get_size(win, &winW, &winH); if (os_picture_data(1, &imgW, &imgH)) { - os_draw_picture(1, win, Common::Point(1, 1)); + os_draw_picture(1, win, Common::Rect(0, 0, winW, winH)); _events->waitForPress(); } @@ -466,6 +464,10 @@ void GlkInterface::os_draw_picture(int picture, winid_t win, const Common::Point glk_image_draw(win, picture, pos.x - 1, pos.y - 1); } +void GlkInterface::os_draw_picture(int picture, winid_t win, const Common::Rect &r) { + glk_image_draw_scaled(win, picture, r.left, r.top, r.width(), r.height()); +} + zchar GlkInterface::os_read_key(int timeout, bool show_cursor) { event_t ev; winid_t win = gos_curwin ? gos_curwin : gos_lower; |