Sarien: Difference between revisions

From Sierra Wiki
Jump to navigationJump to search
Andrew Branscom (talk | contribs)
No edit summary
Andrew Branscom (talk | contribs)
No edit summary
 
(14 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Category:AGI Pages]]
<div align="center"><span style="font-size: 22pt">Sarien</span><br />''Version 0.8.0''<br />''Authors: [[Sarien Team]]''<br />''2004-07-21''</div></div>
[[Category:Technical Info]]
<div align="center" style="font-size: 22pt">Sarien</div>
<div align="center">Version 0.8.0<br />
''Authors: Sarien Team''<br />
[[2004|2004-07-21]]</div>


{{FanAGIToolInfobox
{{FanAGISoftwareInfobox
| Tool = Sarien
| Software = Sarien
| Image = [[Image:SarienSS.png|190px]]<br />
| Image = [[Image:SarienSS.png|190px]]<br />
''Sarien'' Loading Screen
''Sarien Loading Screen''
| Version = 0.8.0
| Version = 0.8.0
| ReleaseDate = July 21, [[2004]]
| ReleaseDate = {{2014S}}-01-02<ref>[https://github.com/cmatsuoka/sarien/commit/aaef5e667757385b5b3650cc1f7365908720f7e6 sarien.sourceforge.net/ (web archive)]</ref>
| Company = {{N/A}}
| Company = {{NAToolCo}}
| DevStatus = {{MergedDev}}
| Published = {{Published}}
| Published = {{Published}}
| Developers = {{StuartGeorgeToolDev}}, {{LanceEwingToolDev}}, {{ClaudioMatsuokaToolDev}}, {{FelipeRosinhaToolDev}}, {{XoXusToolDev}}, {{IgorNesterovToolDev}}, {{AriHeikkinenToolDev}}, {{JoshuaNealToolDev}}, {{SadRejebToolDev}}, {{RobertBihlmeyerToolDev}}, {{RyanGordonToolDev}}, {{MagnusKristiansenToolDev}}, {{JeremyPennerToolDev}}, {{PeterHawkinsToolDev}}, {{JustinKerkToolDev}}, {{MattHargettToolDev}}, {{IanHanschenToolDev}}, {{ZivBarberToolDev}}, {{RichardHouleToolDev}}, {{PaulHillToolDev}}, {{VasylTsvirkunovToolDev}}, {{ThomasAkessonToolDev}}
| Developers = {{SarienTeamToolDev}}<!--{{StuartGeorgeToolDev}}, {{LanceEwingToolDev}}, {{ClaudioMatsuokaToolDev}}, {{FelipeRosinhaToolDev}}, {{XoXusToolDev}}, {{IgorNesterovToolDev}}, {{AriHeikkinenToolDev}}, {{JoshuaNealToolDev}}, {{SadRejebToolDev}}, {{RobertBihlmeyerToolDev}}, {{RyanGordonToolDev}}, {{MagnusKristiansenToolDev}}, {{JeremyPennerToolDev}}, {{PeterHawkinsToolDev}}, {{JustinKerkToolDev}}, {{MattHargettToolDev}}, {{IanHanschenToolDev}}, {{ZivBarberToolDev}}, {{RichardHouleToolDev}}, {{PaulHillToolDev}}, {{VasylTsvirkunovToolDev}}, {{ThomasAkessonToolDev}}-->
| Interface = {{GUI}}
| Interface = {{GUI}}
| ProgLanguage = {{C++}}
| ProgLanguage = {{C++}}
Line 20: Line 16:
| Source = {{SourceSW}}
| Source = {{SourceSW}}
| License = {{GPL2}}
| License = {{GPL2}}
| Type = {{FanThirdPartyAGIInterp}}
| Engine = {{AGITool}}
| Platform = {{WinTool}}, {{DOSTool}}, {{MacTool}}, {{LinuxTool}}, {{BeOSTool}}, {{AmigaTool}}, {{IRIXTool}}
| Platform = {{WinTool}}, {{DOSTool}}, {{MacTool}}, {{LinuxTool}}, {{BeOSTool}}, {{AmigaTool}}, {{IRIXTool}}
| Type = {{FanThirdPartyAGIInterp}}
| Localization = {{EnglishTool}}
| Localization = {{EnglishTool}}
| Website = [[wayback:20060411094142/http://sarien.sourceforge.net/|sarien.sourceforge.net/]] (web archive)
| Website = [[wayback:20060411094142/http://sarien.sourceforge.net/|sarien.sourceforge.net/]] (web archive)
}}
}}
<!-- Devs: -->
{{StuartGeorgeToolDevH}}{{LanceEwingToolDevH}}{{ClaudioMatsuokaToolDevH}}{{FelipeRosinhaToolDevH}}{{XoXusToolDevH}}{{IgorNesterovToolDevH}}{{AriHeikkinenToolDevH}}{{JoshuaNealToolDevH}}{{SadRejebToolDevH}}{{RobertBihlmeyerToolDevH}}{{RyanGordonToolDevH}}{{MagnusKristiansenToolDevH}}{{JeremyPennerToolDevH}}{{PeterHawkinsToolDevH}}{{JustinKerkToolDevH}}{{MattHargettToolDevH}}{{IanHanschenToolDevH}}{{ZivBarberToolDevH}}{{RichardHouleToolDevH}}{{PaulHillToolDevH}}{{VasylTsvirkunovToolDevH}}{{ThomasAkessonToolDevH}}{{EugeneSandulenkoToolDevH}}
<!-- Thanks: -->
<!-- Thanks: -->
<!--{{IIgs/Mac/Tandy sound samples & AGI resources: -->{{PaulLungaC}}
<!--{{IIgs/Mac/Tandy sound samples & AGI resources: -->{{PaulLungaC}}
Line 33: Line 32:
<!--{{Author of the Linux AGI Studio: -->{{HelenZommerC}}
<!--{{Author of the Linux AGI Studio: -->{{HelenZommerC}}
<br />
<br />
==<br /><br /> Description ==
==<br /> Description ==


<blockquote>
<blockquote>
Sarien was a portable reimplementation of the [[Sierra|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: Chapter I - The Sarien Encounter|Space Quest I]] and [[Space Quest II: Vohaul's Revenge|II]], [[King's Quest: Quest for the Crown| King's Quest I]] to [[King's Quest IV: The Perils of Rosella AGI|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.  
Sarien was a portable reimplementation of the [[Sierra|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: Chapter I - The Sarien Encounter|Space Quest I]] and [[Space Quest II: Vohaul's Revenge|II]], [[King's Quest: Quest for the Crown| King's Quest I]] to [[King's Quest IV: The Perils of Rosella AGI|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)
{{TechToDo}}
</blockquote>
</blockquote>
<!--
<!--
Line 53: Line 48:
==<br /> Features ==
==<br /> Features ==


* <!-- Add feature list here -->
<blockquote>
<!-- Add feature list here -->
</blockquote>
 
==<br /> Requirements ==
 
<blockquote>
<!-- Add requirements here -->
</blockquote>


==<br /> Version History ==
==<br /> Version History ==
Line 67: Line 70:
</blockquote>
</blockquote>


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


Line 203: Line 200:
==<br /> Known issues ==
==<br /> Known issues ==


&nbsp;
* None known
 
==== FILES ====
 
&nbsp;


== <br />Credits ==
== <br />Credits ==
Line 235: Line 228:
* [[Eugene Sandulenko]] (sev)
* [[Eugene Sandulenko]] (sev)


=== <br />Thanks ===
<blockquote>
===<br /> Acknowledgements ===
 
* [[Paul Lunga]], Thanks
* [[Ian Schmidt]], Thanks
* [[Nat Budin]], Thanks
* [[Nick Sonneveld]], Thanks
* [[Peter Makholm]], Thanks
* [[Helen Zommer]], Thanks
</blockquote>
 
==<br /> Legal ==


* [[Paul Lunga]]
<blockquote>
* [[Ian Schmidt]]
Sarien was distributed with the {{GPL2}}
* [[Nat Budin]]
</blockquote>
* [[Nick Sonneveld]]
* [[Peter Makholm]]
* [[Helen Zommer]]


==<br /> References ==
==<br /> References ==


<references />
<references /><!-- Do not edit this section. It is autopopulated by <ref></ref> tags -->


==<br /> Also See ==
==<br /> Also See ==
Line 255: Line 256:
* [[:Category:Third Party AGI Interpreters|Third Party AGI Interpreters]]
* [[:Category:Third Party AGI Interpreters|Third Party AGI Interpreters]]
* [[wayback:20060411094142/http://sarien.sourceforge.net/|sarien.sourceforge.net/]] (web archive)
* [[wayback:20060411094142/http://sarien.sourceforge.net/|sarien.sourceforge.net/]] (web archive)
* [[github:cmatsuoka/sarien|github.com/cmatsuoka/sarien]]


&nbsp;
&nbsp;


[[Category:Technical Info]]
[[Category:Technical Info]]
[[Category:AGI Technical Info]]
[[Category:Interpreters]]
[[Category:Interpreters]]
[[Category:AGI Interpreters]]
[[Category:AGI Interpreters]]
[[Category:Third Party Interpreters]]
[[Category:Third Party Interpreters]]
[[Category:Third Party AGI Interpreters]]
[[Category:Third Party AGI Interpreters]]
[[Category:Debugging]]
[[Category:Variables]]

Latest revision as of 14:29, 28 October 2025

Sarien
Version 0.8.0
Authors: Sarien Team
2004-07-21
Sarien

Sarien Loading Screen
Latest Version:  0.8.0
Release Date:  2014-01-02[1]
Company: N/A
Development Status:  Merged
Publication Status:  Published
Developer(s): Sarien Team
Interface: GUI
Language: C++
Open Source: Open
Source Availability: 
License: GPL2
Type: Third Party Interpreter
Relevant Engine: AGI
Platform: Windows, DOS, Mac, Linux, BeOS, Amiga, IRIX
Localization: English
Website: sarien.sourceforge.net/ (web archive)



Description

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.


Features


Requirements


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:


Known issues

  • None known


Credits


Acknowledgements


Legal

Sarien was distributed with the GPL2


References


Also See