Difference between revisions of "Cine/TODO"

From ScummVM :: Wiki
Jump to navigation Jump to search
m (consistency change)
(Removed links to closed bugs)
Line 28: Line 28:
 
** resource loading (parts, vol.cnf)
 
** resource loading (parts, vol.cnf)
 
* finish OS support (crash early in-game)
 
* finish OS support (crash early in-game)
 +
* Clean up memory leaks.
  
 
== Bugs ==
 
== Bugs ==
* AdLib sound glitches ([https://sourceforge.net/tracker/index.php?func=detail&aid=1599270&group_id=37116&atid=418820 #1599270])
 
* Memory leaks ([https://sourceforge.net/tracker/?func=detail&atid=418820&aid=1726626&group_id=37116 #1726626])
 

Revision as of 09:38, 29 December 2010

Status

Future Wars was completable with original cinE. Operation Stealth has gfx glitches and now crashes early.

Source Cleanup

  • Wrap the code into C++ classes where applicable/suitable. Possible classes candidates :
    • Gfx/Screen (bg_list.cpp, gfx.cpp)
    • Script (script.cpp)
    • Resource (bg.cpp, msg.cpp, part.cpp, prc.cpp, pal.cpp)
    • CineEngine (object.cpp, anim.cpp, various.cpp)
    • Sound (already done)
  • rename functions and variables that need it
  • reorganize functions and variables in cine/various.cpp

ToDo

  • implement, adapt or remove the following options in the system menu :
    • Pause
    • Restart Game
    • Change Backup Drive
  • add support for AtariST sound and music resources (if different from Amiga)
  • add support for MT32 and PC Speaker instruments in the PC SoundFX player code (write PCSoundDriver subclasses)
  • add code for fadeIn/fadeOut
  • optimize the rendering (doing a full screen and palette refresh on each frame could be avoided)
  • use Common::List instead of custom linked lists (should allow removal and/or simplification of several functions)
  • cruisE and Cine have several chunks of code in common, find a way to factorize
    • sound code/system
    • gfx routines
    • unpacking routine
    • resource loading (parts, vol.cnf)
  • finish OS support (crash early in-game)
  • Clean up memory leaks.

Bugs