From AGI Wiki
Jump to: navigation, search
Developer(s): Claudio Matsuoka (cmatsuoka), Stuart George (Darkfiber or Dark Fiber), Matt Hargett, Eugene Sandulenko (sev)
Language: C++
Version: 0.7.0
OS: Windows, MacOSX, Linux
Type: Interpreter
Localization: English
Website: (Source Forge Page)

Sarien was a portable reimplementation of the Sierra On-Line Adventure Game Interpreter (AGI), and is able to run games such as Leisure Suit Larry in the Land of the Lounge Lizards and Space Quest I and II, King's Quest I to IV (AGI) and The Black Cauldron. It was designed to be cross-platform to allow it to used on more modern OSs, such as Windows, MacOSX and Linux.


Note: Sarien has been merged with ScummVM and all development since as been within the ScummVM project.


License: GNU General Public License version 2.0 (GPLv2)  


sarien [-A|--amiga] [-a|--agds] [-C|--crc] [-d|--list-dictionary] [-E|--emulate-sound [-F|--full-screen] type] [-g|--no-gfx-optimizations] [-H|--hires 0|1] [-h|--help] [-L|--list-games] [-m|--agimouse] [-n|--no-sound] [-p|--picture-viewer] [-o|--list-objects] [-S|--scale num] [-r|--aspect-ratio 0|1] [-v|--emulate-version version] [-V|--version] [-x|--no-x-shm] [gamedir]  


-A, --amiga
Tell the interpreter to read Amiga word-aligned resource files.
 -a, --agds
Tell the interpreter to read AGDS games.
 -C, --crc
Compute the CRC of the game resources and exit.
 -d, --list-dictionary
List dictionary words and exit.
 -E, --emulate-sound type
Set the sound generator to emulate the output of Sierra's AGI in different platforms. The available types are: pc, mac and amiga.
 -F, --full-screen
Run the interpreter in full-screen mode, if supported by the graphics driver. This mode is currently supported only by the SDL driver.
 -g, --no-gfx-optimizations
Disable any graphics driver optimizations in use by the graphics driver. This option should be used with the X11 driver if the display is being exported to a server with different endianness.
 -H, --hires 0|1
Enable or disable double horizontal resolution for picture drawing. When it's enabled pictures look better, but some artifacting may appear. Hi-res mode can be also enabled or disabled from the interpreter console at runtime.
 -h, --help
Display a summary of available command-line parameters.
 -L, --list-games
List recognized games and versions.
 -m, --agimouse
Enable AGI Mouse 1.0 protocol emulation. Use this option only with AGI Mouse games, since it interferes with normal AGI commands and regular mouse operation.
 -n, --no-sound
Disable sound output.
 -p, --picture-viewer
Run the interpreter in picture viewer mode. See the PICTURE VIEWER section below for further information on this mode.
 -o, --list-objects
List game objects and exit.
 -S, --scale num
Set window scaling to num. This option is available in windowed graphics environments only. (Default scale is 2.)
 -r, --aspect-ratio 0|1
Enable or disable aspect ratio correction for square-pixel graphics modes to match the PC EGA 320x200 display. Aspect ratio correction is enabled by default in the drivers that support this feature.
 -v, --emulate-version version
Emulate the specified AGI version, overriding any autodetected defaults. Valid version numbers are: 2.089, 2.272, 2.440, 2.917, 2.936, 3.002.086, 3.002.149.
 -V, --version
Show version number and exit.
 -x, --no-x-shm
Disable X11 shared memory extension. This option should be used if you're exporting the display to a remote X server.



The interpreter accepts user input using the keyboard or the mouse. The mouse can be used to set ego destination, dismiss message boxes and select menu options (left button) or enable and disable the interpreter console (right button). User commands (such as EXAMINE ROOM or RESTORE GAME can be typed in the user input area.

The following special keys are recognized during gameplay:

Arrow keys, numeric keypad
Control direction of ego walk. The destination point can be also set left-clicking on the desired location. Selecting the same direction twice or pressing <5> on the numeric keypad causes ego to stop.
 < >
Switch the interpter console on and off.
Toggle debug information on the status line. If enabled, the current room number, previous room number, current ego coordinates and last clicked coordinates are shown on the status line.
Show or hide the priority screen.

Other keys are set by the game being executed. Traditionally <F3> is used to echo the last command line, and <TAB> is used to show the inventory items. Please refer to the game documentation or on-line help for a list of the supported keystrokes.  


The interpreter console (activated by the <`> key or the right mouse button) can be used to inspect and modify AGI game data at runtime, disassemble AGI bytecode and single-step through logic scripts and instructions.

Show the AGI version we're emulating. AGI versions are listed in /etc/sarien.conf or set using the -v command line argument
Resume interpreter execution after a debugging session.
Show the CRC of the currently loaded AGI game. CRCs are used in /etc/sarien.conf to identify games and set the correct AGI version.
Enter debug mode. AGI script execution will stop, and scripts can be single-stepped using the step command.
Show the value of all AGI flags.
Show the value of the AGI flag n.
 fn = 0|1
Set or reset the AGI flag n.
Show a summary of the available console commands.
 hires on|off
Switch hi-res mode on/off. Pictures usually look better in hi-res mode, but some undesired artifacting may appear. Use this command to disable hi-res mode if you notice too much artifacting, or if you want traditional Sierra AGI resolution. Hi-res mode affects picture resources only.
 logic0 on|off
In debug mode, enable or disable single stepping on logic script 0.
 load gamedir Load and execute the AGI game specified by gamedir.
" 10
List all available objects and their locations.
 opcode on|off
In debug mode, show or hide opcodes of the piece of code being executed.
 step n
In debug mode, single-step through n AGI instructions.
List all AGI variables and their values.
Show the value of the AGI variable n.
 vn = m
Set the value of the AGI flag n to m.
Show the Sarien interpreter version.












See Also