SCI

From ScummVM :: Wiki
Jump to navigation Jump to search
SCI
Engine developer fingolfin, lskovlun, m_kiewitz,
md5, waltervn, wjp
Companies that used it Sierra
Games that use it Sierra SCI Games, SCI Fan Games
Date added to ScummVM 2009-02-14
First release containing it 1.2.0

About

SCI, which Sierra referred to as both the "Script Code Interpreter" and later "Sierra's Creative Interpreter", is a p-machine style virtual machine for executing platform-independent, object-oriented code.

SCI was designed for 16-bit little-endian computers, although there were later attempts to create 32-bit versions, LSCI and SCI3. SCI was exclusively used by Sierra On-Line, Inc., to run its computer game series, with titles like Leisure Suit Larry 2-7, Space Quest 3-6, King's Quest 4-7, Quest for Glory 1-4, and several others.

The SCI engine in ScummVM is based on the code of the FreeSCI project, used with permission.


History

SCI was initially created in 1988 by Jeff Stephenson to replace AGI. The first game using it was King's Quest IV at the same year of its creation, which was simultaneously released with an AGI edition for lower-end machines.


Engine Status

Resources

Debugging

  • Show priority and control map in original interpreter (SCI1/SCI11)
    • search for A9 06 00 74 05 in original interpreter, replace with all 90h (NOP)
  • Change days in Gabriel Knight 1
    • vmvars g 7bh x - where x is the day number
  • Break into debugger immediately on VM start
    • Run ScummVM with --debugflags=onstartup

Error loading resource 999.pal message with original interpreter

King's Quest 7

  • resource.cfg has to include this:
 directory = .\
 videoDrv  = VESA.DRV
 soundDrv  = ADL.DRV
 audioDrv  = DACBLAST.DRV
 joyDrv    = NO
 cmd       = KQ7DOS
 mouseDrv  = NONE
 memoryDrv = NONE
 minMemory = 1600k
 brightness= 0
 language  = 1
 minCPU    = 386
 CD        = yes
 resMap=.\
 resAUD=.\
 resSFX=.\
 patchDir=.\;.\AVI
 robot=.\ 
  • start the game using sierrah -o resource.cfg

Space Quest 6

  • Just start the game using "sierra -o". That will fix it (happens at least with SQ6 DOS included in the Space Quest Collection).

External Links