[Scummvm-tracker] [ScummVM] #10814: QFG4: Crash in cave when fighting Pit Horror below the tightrope

Vhati trac at scummvm.org
Thu Nov 22 09:31:11 CET 2018


#10814: QFG4: Crash in cave when fighting Pit Horror below the tightrope
--------------------------------+-------------------------
  Reporter:  Vhati              |      Owner:  (none)
      Type:  defect             |     Status:  new
  Priority:  normal             |  Component:  Engine: SCI
Resolution:                     |   Keywords:  SCI32
      Game:  Quest for Glory 4  |
--------------------------------+-------------------------

Comment (by Vhati):

 @m-kiewitz:
 > The kernel function is definitely not at fault.
 > [...]
 > SetNowSeen32 returns a boolean, so that can't be it.
 I'm sorry to ask but... Does it?
 \\
 \\
 [https://github.com/scummvm/scummvm/blob/7f83640894c16b46aaff60baff0268a6e5e951bc/engines/sci/sci.h#L222
 Source]: sci/sci.h
 {{{
 enum SciVersion {
 // ...
         SCI_VERSION_2, // GK1, PQ4 floppy, QFG4 floppy
         SCI_VERSION_2_1_EARLY, // GK2 demo, KQ7 1.4/1.51, LSL6 hires,
 PQ4CD, QFG4CD
 }
 }}}
 \\
 \\
 [https://github.com/scummvm/scummvm/blob/c9a8ee019073a6fb0501f404d63631530716b498/engines/sci/engine/kgraphics32.cpp#L102
 Source]: sci/engine/kgraphics32.cpp - kSetNowSeen32()
 {{{
 reg_t kSetNowSeen32(EngineState *s, int argc, reg_t *argv) {
         const bool found = g_sci->_gfxFrameout->kernelSetNowSeen(argv[0]);

         // MGDX is assumed to use the older kSetNowSeen since it was
 released before
         // SQ6, but this has not been verified since it cannot be
 disassembled at
         // the moment (Phar Lap Windows-only release)
         // (See also getNowSeenRect)
         if (getSciVersion() <= SCI_VERSION_2_1_EARLY ||
                 g_sci->getGameId() == GID_SQ6 ||
                 g_sci->getGameId() == GID_MOTHERGOOSEHIRES) {

                 return s->r_acc;
         }

         return make_reg(0, found);
 }
 }}}
 I got lost. Can't tell if it's returning acc as-is or deferring to
 something behind frameout that would modify it.

--
Ticket URL: <https://bugs.scummvm.org/ticket/10814#comment:11>
ScummVM <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list