From ScummVM :: Wiki
< Parallaction
Revision as of 20:57, 5 July 2007 by Peres (talk | contribs) (Comments on DLTA chunks)
Jump to navigation Jump to search


  • make a clean implementation of double-buffering, with centralized updateScreen(). This would significantly deviate from the original engine, but may be the only way to effectively implement hardware-based effects (like half-brite). Other versions of the engine will surely benefit from a clean approach, too.
  • merge input loops: make one input routine for menu, one for dialogue and one for _c_endIntro (possibly merge it with menu). It would be probably needed as part of the new double-buffering implementation. Should be worthy to investigate if it can be made before.
  • make a real Parser: maybe not strictly necessary but sounds cool :)

Nippon Safes

Known serious issues:

  • Dino sometimes crashes after reduction at Matsushita Lab: the game scripts seems to assign an incorrect y coordinate to the character, crashing the engine.
  • Dino crashes when opening the shopping bag in Mitsushita office (not on loadgames) [under investigation]
  • Dough crashes when parachuting from monastery (not on loadgames) [under investigation]

Other less relevant issues:

  • The Halfbrite spotlight for donna's show is not working: the effect is handled in hardware in the original game, and the current implementation doesn't allow for a clean solution. See General TODO above (double-buffering stuff).
  • Characters should walk faster to match the original

Amiga issues:

  • Hiragana code blocks in protection screen should change color when pressed.
  • Make proper balloons with rounded corners for dialogues [needs a polygon fill routine]
  • Add support for additional delta encoding used for dino, donna, donnatras and dough character faces data, in the 'disk0' file. A 'DLTA' tag is used, following by data size (big endian dword) and the delta encoded data.
    • DLTA chunks can be decompressed using the algorithm you can find in section 2.2.2 of this document[1]. Right now the packed bitmap are directly transformed into color-index images for ScummVM, but this must be changed to work with DLTA. The right way to do this would be: unpack bitmap (previous frame) into bitplanes, apply DLTA, transform bitplanes into color-index mode for use with ScummVM.