Sarien
Sarien Loading Screen | |||
Latest Version: | 0.8.0 | ||
---|---|---|---|
Release Date: | July 21, 2004 | ||
Company: | N/A | ||
Publication Status: | Published | ||
Developer(s): | Stuart George, Lance Ewing, Claudio Matsuoka, Felipe Rosinha, XoXus, Igor Nesterov, Ari Heikkinen, Joshua Neal, Sad Rejeb, Robert Bihlmeyer, Ryan Gordon, Magnus Kristiansen, Jeremy Penner, Peter Hawkins, Justin Kerk, Matt Hargett, Ian Hanschen, Ziv Barber, Richard Houle, Paul Hill, Vasyl Tsvirkunov, Thomas Akesson | ||
Interface: | GUI | ||
Language: | C++ | ||
Open Source: | Open | ||
Source Availability: | |||
License: | GPL2 | ||
Type: | Third Party Interpreter | ||
Platform: | Windows, DOS, Mac, Linux, BeOS, Amiga, IRIX | ||
Localization: | English | ||
Website: | sarien.sourceforge.net/ (web archive) |
Description
Claudio Matsuoka, Stuart George, Matt Hargett and Eugene Sandulenko's 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.
License: GNU General Public License version 2.0 (GPLv2)
Features
Version History
Development Status
Sarien has been merged with ScummVM and all development since as been within the ScummVM project.
Usage
-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.
USER INPUT
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.
<F11>
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.
<F12>
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.
CONSOLE COMMANDS
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.
agiver
Show the AGI version we're emulating. AGI versions are listed in /etc/sarien.conf or set using the -v command line argument
cont
Resume interpreter execution after a debugging session.
crc
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.
debug
Enter debug mode. AGI script execution will stop, and scripts can be single-stepped using the step command.
flags
Show the value of all AGI flags.
fn
Show the value of the AGI flag n.
fn = 0|1
Set or reset the AGI flag n.
help
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
objs
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.
vars
List all AGI variables and their values.
vn
Show the value of the AGI variable n.
vn = m
Set the value of the AGI flag n to m.
ver
Show the Sarien interpreter version.
PICTURE VIEWER
EXAMPLES
Download
Download from here:
- File:Sarien 0 7 0.zip (ZIP file) [972 KB]
Source:
- File:Sarien 0 7 0 SRC.zip (ZIP file) [376 KB]
Known issues
FILES
Credits
- Stuart George (Darkfiber)
- Lance Ewing
- Claudio Matsuoka (cmatsuoka)
- Felipe Rosinha
- XoXus
- Igor Nesterov
- Ari Heikkinen
- Joshua Neal
- Sad Rejeb
- Robert Bihlmeyer
- Ryan Gordon
- Magnus Kristiansen
- Jeremy Penner
- Peter Hawkins
- Justin Kerk
- Matt Hargett
- Ian Hanschen
- Ziv Barber
- Richard Houle
- Paul Hill
- Vasyl Tsvirkunov
- Thomas Akesson
- Eugene Sandulenko (sev)
Thanks
References
Also See
- AGI
- Interpreter
- Third Party AGI Interpreters
- sarien.sourceforge.net/ (web archive)
- Fan AGI Tools
- Software Developed by Stuart George
- Software Developed by Lance Ewing
- Software Developed by Claudio Matsuoka
- Software Developed by Felipe Rosinha
- Software Developed by XoXus
- Software Developed by Igor Nesterov
- Software Developed by Ari Heikkinen
- Software Developed by Joshua Neal
- Software Developed by Sad Rejeb
- Software Developed by Robert Bihlmeyer
- Software Developed by Ryan Gordon
- Software Developed by Magnus Kristiansen
- Software Developed by Jeremy Penner
- Software Developed by Peter Hawkins
- Software Developed by Justin Kerk
- Software Developed by Matt Hargett
- Software Developed by Ian Hanschen
- Software Developed by Ziv Barber
- Software Developed by Richard Houle
- Software Developed by Paul Hill
- Software Developed by Vasyl Tsvirkunov
- Software Developed by Thomas Akesson
- AGI Interpreters
- Third Party AGI Interpreters
- Technical Info
- Debugging
- Variables