Fixed a bug (the "bwt" and "bc" options were inversed) and added the
ability to skip a defined number of ret calls, useful when a function
continues after a ret call
SciEngine class
- Robot videos are now shown in frameOut(), like they should, and kRobot(sync) is only
used for syncing with the game scripts
- Hooked video playing into the "play_video" console command
svn-id: r55801
- The code now streams videos instead of loading them in memory, without utilizing seeking
- Removed the sound-related robot code from the graphics classes
- Started implementing the code for the sound in robot videos (still not finished)
svn-id: r55772
The handling has been moved inside readPMachineInstruction(), instead of run_vm(), as a
lot of parts of the code depend on this function handling all opcodes correctly (e.g. the
script dissassembler, the features class, find_callk etc)
svn-id: r55154
- Improved the find_callk function to properly find the end of script objects, by
monitoring jump calls
- Added three extra special calls to find_callk: find kernel function calls to dummy,
unused and unmapped kernel functions
- Updated several kernel function calls because of the above functionality
- The above functionality has also uncovered a VM bug in some SCI2/2.1 opcode - added
a FIXME for it
svn-id: r55151
Transitive SCI2.1 games (e.g. QFG4CD and PQ4CD, as well as GK2 demo) used a SCI2 table,
with some added functions. If a SCI2.1 game is loaded, show what kernel table it uses
svn-id: r55136
- VMD videos are now properly started from the associated play subop of the
kPlayVMD kernel call, and are now properly positioned on screen, and doubled
only if the games require them to be
- Added an enum for VMD video flags
svn-id: r55003
- Ignore invalid object in KQ5 script 784
- Script 980 looks to be an unused leftover, as its object contain references to
classes placed in script 988, which is missing
svn-id: r54455
- Extended the "verify_scripts" console command for SCI3 scripts
- Added a check for such large scripts when scripts are loaded, with
an error for now, till a mechanism to support such scripts with a
16-bit addressing scheme is in place (e.g. overlaying, or splitting
scripts). Either way, such scripts should span over more than one segment
svn-id: r54304
- Now playVideo() is used when playing videos from the console (reducing
code duplication)
- Added support for 16bpp scaling in scale2x, so that the 16-bit color
Duck videos are scaled correctly
svn-id: r54210
- Added support for savegame play time
- Removed obsolete variables for calculating the play time (EngineState::gameStartTime and Console::_enterTime)
- Renamed some variables to camelCase
svn-id: r53974