Cine/TODO
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 Operation Stealth support
- Palette not correct on loading savegames for first screen.
- Z-Order not correct e.g. Scene 2 in the Bank Vault
- Save/Load not possible between Scene 5 (Otto throws John into Sea off Boat) until after Scene 6 Labyrinth Arcade Sequence and During Scene 8 Rat Labyrinth Arcade Sequences - Think this was possible in the original and makes the arcade sequences much harder.
- WARNING: Undefined opcode 0x40 in OSScriptInfo::opcodeHandler!
- WARNING: Unable to find part file for filename '02-.ADL'!
- WARNING: Unable to load soundfx instrument '02-.ADL'!
- WARNING: Unable to find part file for filename 'QTRACK32.SPL'!
- Misspelling Script Bugs :
- Object "Bench of Bank Notes" - Should be Bunch
- Read(y) - Missing y
- Passport "English" should be British
- Electrique Cable (for Razor) - should be Electric
- Clean up any remaining memory leaks
Bugs
- Future Wars: Looping samples don't loop in Amiga version (#3091660)