Difference between revisions of "Adventure Game Interpreter Specifications"

From AGI Wiki
Jump to navigationJump to search
 
(47 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<div align="center">'''by Peter Kelly, ptrkelly@ozemail.com.au (editor)'''<br />
+
__NOTOC__
'''Version 3.0 updated by Claudio Matsuoka, claudio@helllabs.org'''<br />
+
<div align="center">'''by [[Peter Kelly]], (editor)'''<br />
 +
'''Version 3.0 updated by [[Claudio Matsuoka]]<br />
 
v3.0, 22 May 1999 </div>
 
v3.0, 22 May 1999 </div>
  
Line 7: Line 8:
 
''This document is a collection of all the information currently known about the structure and operation of the Adventure Game Interpreter, used in 1984--1989 for a variety of adventure games published by Sierra On-Line such as [[Space Quest I]] and [[Space Quest II|II]], and [[Leisure Suit Larry in the Land of the Lounge Lizards]].''
 
''This document is a collection of all the information currently known about the structure and operation of the Adventure Game Interpreter, used in 1984--1989 for a variety of adventure games published by Sierra On-Line such as [[Space Quest I]] and [[Space Quest II|II]], and [[Leisure Suit Larry in the Land of the Lounge Lizards]].''
  
&nbsp;
+
==<br /> &nbsp;[[AGI Specifications: Chapter 1 - Introduction|Chapter 1 - Introduction]] ==
 
 
== <br />&nbsp;[[AGI Specifications: Chapter 1 - Introduction|Chapter 1 - Introduction]] ==
 
 
 
: [[AGI Specifications: Chapter 1 - Introduction#1|1.1 &nbsp;About this Document]]
 
: [[AGI Specifications: Chapter 1 - Introduction#2|1.2 &nbsp;Audience]]
 
: [[AGI Specifications: Chapter 1 - Introduction#3|1.3 &nbsp;Conventions Used in this Document]]
 
: [[AGI Specifications: Chapter 1 - Introduction#4|1.4 &nbsp;What's Still Missing]]
 
: [[AGI Specifications: Chapter 1 - Introduction#5|1.5 &nbsp;Change Log]]
 
: [[AGI Specifications: Chapter 1 - Introduction#6|1.6 &nbsp;Credits]]
 
  
&nbsp;
+
: [[AGI Specifications: Chapter 1 - Introduction#ss1.1|1.1 &nbsp;About this Document]]
 +
: [[AGI Specifications: Chapter 1 - Introduction#ss1.2|1.2 &nbsp;Audience]]
 +
: [[AGI Specifications: Chapter 1 - Introduction#ss1.3|1.3 &nbsp;Conventions Used in this Document]]
 +
: [[AGI Specifications: Chapter 1 - Introduction#ss1.4|1.4 &nbsp;What's Still Missing]]
 +
: [[AGI Specifications: Chapter 1 - Introduction#ss1.5|1.5 &nbsp;Change Log]]
 +
: [[AGI Specifications: Chapter 1 - Introduction#ss1.6|1.6 &nbsp;Credits]]
  
== [[AGI Specifications: Chapter 2 - Overview|Chapter 2 - Overview]] ==
+
==<br /> [[AGI Specifications: Chapter 2 - Overview|Chapter 2 - Overview]] ==
  
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.1|2.1 &nbsp;Versions of the AGI Interpreter]]
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.1|2.1 &nbsp;Versions of the AGI Interpreter]]
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.2|2.2 &nbsp;AGI Game Files]]
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.2|2.2 &nbsp;AGI Game Files]]
: [[AGI Specifications: Chapter 2 - Overview#ss2.3|2.3 &nbsp;LOGIC, PICTURE, SOUND, and VIEW Data Files]]
+
: [[AGI Specifications: Chapter 2 - Overview#ss2.3|2.3 &nbsp;Logic, Picture, Sound, and View Data Files]]
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.4|2.4 &nbsp;What is Ego?]]
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.4|2.4 &nbsp;What is Ego?]]
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.5|2.5 &nbsp;AGI Commands]]
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.5|2.5 &nbsp;AGI Commands]]
Line 30: Line 27:
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.7|2.7 &nbsp;Priority Bands and Control Lines]]
 
: [[AGI Specifications: Chapter 2 - Overview#ss2.7|2.7 &nbsp;Priority Bands and Control Lines]]
  
&nbsp;
+
==<br /> [[AGI Specifications: Chapter 3 - AGI Internals|Chapter 3 - AGI Internals]] ==
 
 
== [[AGI Specifications: Chapter 3 - AGI Internals|Chapter 3 - AGI Internals]] ==
 
  
 
: [[AGI Specifications: Chapter 3 - AGI Internals#intworks|3.1 &nbsp;How the Interpreter Works]]
 
: [[AGI Specifications: Chapter 3 - AGI Internals#intworks|3.1 &nbsp;How the Interpreter Works]]
Line 45: Line 40:
 
: [[AGI Specifications: Chapter 3 - AGI Internals#verdif|3.10 &nbsp;Version Differences]]
 
: [[AGI Specifications: Chapter 3 - AGI Internals#verdif|3.10 &nbsp;Version Differences]]
  
&nbsp;
+
==<br /> [[AGI Specifications: Chapter 4 - The Logic Language|Chapter 4 - The Logic Language]] ==
 
 
== [[AGI Specifications: Chapter 4 - The LOGIC Language|Chapter 4 - The LOGIC Language]] ==
 
 
 
: [[AGI Specifications: Chapter 4 - The LOGIC Language#1|4.1 &nbsp;LOGIC Syntax]]
 
: [[AGI Specifications: Chapter 4 - The LOGIC Language#2|4.2 &nbsp;Reference of the LOGIC Commands]]
 
: [[AGI Specifications: Chapter 4 - The LOGIC Language#3|4.3 &nbsp;Discussion of Sample LOGIC Code from KQ4]]
 
 
 
&nbsp;
 
 
 
== [[AGI Specifications: Chapter 5 - Resource Formats|Chapter 5 - Resource Formats]] ==
 
  
: [[AGI Specifications: Chapter 5 - Resource Formats#1|5.1 &nbsp;Directory Files]]
+
: [[AGI Specifications: Chapter 4 - The Logic Language#ss4.1|4.1 &nbsp;Logic Syntax]]
: [[AGI Specifications: Chapter 5 - Resource Formats#2|5.2 &nbsp;Format of VOL Files (version 2)]]
+
: [[AGI Specifications: Chapter 4 - The Logic Language#ss4.2|4.2 &nbsp;Reference of the Logic Commands]]
: [[AGI Specifications: Chapter 5 - Resource Formats#3|5.3 &nbsp;Version 3 Resource Storage]]
+
: [[AGI Specifications: Chapter 4 - The Logic Language#ss4.3|4.3 &nbsp;Discussion of Sample Logic Code from KQ4]]
: [[AGI Specifications: Chapter 5 - Resource Formats#4|5.4 &nbsp;Sample Code]]
 
  
&nbsp;
+
==<br /> [[AGI Specifications: Chapter 5 - Resource Formats|Chapter 5 - Resource Formats]] ==
  
== [[AGI Specifications: Chapter 6 - LOGIC Resources|Chapter 6 - LOGIC Resources]] ==
+
: [[AGI Specifications: Chapter 5 - Resource Formats#ss5.1|5.1 &nbsp;Directory Files]]
 +
: [[AGI Specifications: Chapter 5 - Resource Formats#ss5.2|5.2 &nbsp;Format of VOL Files (version 2)]]
 +
: [[AGI Specifications: Chapter 5 - Resource Formats#ss5.3|5.3 &nbsp;Version 3 Resource Storage]]
 +
: [[AGI Specifications: Chapter 5 - Resource Formats#ss5.4|5.4 &nbsp;Sample Code]]
  
: [[AGI Specifications: Chapter 6 - LOGIC Resources#1|6.1 &nbsp;Introduction]]
+
==<br /> [[AGI Specifications: Chapter 6 - Logic Resources|Chapter 6 - Logic Resources]] ==
: [[AGI Specifications: Chapter 6 - LOGIC Resources#2|6.2 &nbsp;Command List and Argument Types]]
 
: [[AGI Specifications: Chapter 6 - LOGIC Resources#3|6.3 &nbsp;LOGIC Resource Format]]
 
: [[AGI Specifications: Chapter 6 - LOGIC Resources#4|6.4 &nbsp;Sample Code]]
 
  
&nbsp;
+
: [[AGI Specifications: Chapter 6 - Logic Resources#ss6.1|6.1 &nbsp;Introduction]]
 +
: [[AGI Specifications: Chapter 6 - Logic Resources#ss6.2|6.2 &nbsp;Command List and Argument Types]]
 +
: [[AGI Specifications: Chapter 6 - Logic Resources#ss6.3|6.3 &nbsp;Logic Resource Format]]
 +
: [[AGI Specifications: Chapter 6 - Logic Resources#ss6.4|6.4 &nbsp;Sample Code]]
  
== [[AGI Specifications: Chapter 7 - PICTURE Resources|Chapter 7 - PICTURE Resources]] ==
+
==<br /> [[AGI Specifications: Chapter 7 - Picture Resources|Chapter 7 - Picture Resources]] ==
  
: [[AGI Specifications: Chapter 7 - PICTURE Resources#1|7.1 &nbsp;Introduction]]
+
: [[AGI Specifications: Chapter 7 - Picture Resources#ss7.1|7.1 &nbsp;Introduction]]
: [[AGI Specifications: Chapter 7 - PICTURE Resources#2|7.2 &nbsp;PICTURE Resource Format]]
+
: [[AGI Specifications: Chapter 7 - Picture Resources#ss7.2|7.2 &nbsp;Picture Resource Format]]
: [[AGI Specifications: Chapter 7 - PICTURE Resources#3|7.3 &nbsp;Implementation]]
+
: [[AGI Specifications: Chapter 7 - Picture Resources#ss7.3|7.3 &nbsp;Implementation]]
: [[AGI Specifications: Chapter 7 - PICTURE Resources#4|7.4 &nbsp;Using Higher Resolution Modes]]
+
: [[AGI Specifications: Chapter 7 - Picture Resources#ss7.4|7.4 &nbsp;Using Higher Resolution Modes]]
: [[AGI Specifications: Chapter 7 - PICTURE Resources#5|7.5 &nbsp;Sierra's Picture Editor]]
+
: [[AGI Specifications: Chapter 7 - Picture Resources#ss7.5|7.5 &nbsp;Sierra's Picture Editor]]
: [[AGI Specifications: Chapter 7 - PICTURE Resources#6|7.6 &nbsp;Sample Code]]
+
: [[AGI Specifications: Chapter 7 - Picture Resources#ss7.6|7.6 &nbsp;Sample Code]]
  
&nbsp;
+
==<br /> [[AGI Specifications: Chapter 8 - View Resources|Chapter 8 - View  Resources]] ==
  
== [[AGI Specifications: Chapter 8 - VIEW Resources|Chapter 8 - VIEW Resources]] ==
+
: [[AGI Specifications: Chapter 8 - View Resources#ss8.1|8.1 &nbsp;View Introduction]]
 +
: [[AGI Specifications: Chapter 8 - View Resources#ss8.2|8.2 &nbsp;View  Resource Format]]
 +
: [[AGI Specifications: Chapter 8 - View  Resources#ss8.3|8.3 &nbsp;View  Table]]
 +
: [[AGI Specifications: Chapter 8 - View  Resources#ss8.4|8.4 &nbsp;View  Test Commands]]
 +
: [[AGI Specifications: Chapter 8 - View  Resources#ss8.5|8.5 &nbsp;Sample Code]]
  
: [[AGI Specifications: Chapter 8 - VIEW Resources#1|8.1 &nbsp;Introduction]]
+
==<br /> [[AGI Specifications: Chapter 9 - Sound Resources|Chapter 9 - Sound Resources]] ==
: [[AGI Specifications: Chapter 8 - VIEW Resources#2|8.2 &nbsp;VIEW Resource Format]]
 
: [[AGI Specifications: Chapter 8 - VIEW Resources#3|8.3 &nbsp;VIEW Table]]
 
: [[AGI Specifications: Chapter 8 - VIEW Resources#4|8.4 &nbsp;VIEW Test Commands]]
 
: [[AGI Specifications: Chapter 8 - VIEW Resources#5|8.5 &nbsp;Sample Code]]
 
  
&nbsp;
+
: [[AGI Specifications: Chapter 9 - Sound Resources#ss9.1|9.1 &nbsp;Introduction]]
 +
: [[AGI Specifications: Chapter 9 - Sound Resources#ss9.2|9.2 &nbsp;Sound in the IBM PCjr]]
 +
: [[AGI Specifications: Chapter 9 - Sound Resources#ss9.3|9.3 &nbsp;Sound in the Apple IIgs]]
 +
: [[AGI Specifications: Chapter 9 - Sound Resources#ss9.4|9.4 &nbsp;Sound in Other Platforms]]
 +
: [[AGI Specifications: Chapter 9 - Sound Resources#ss9.5|9.5 &nbsp;Sound Resource Format (PCjr version)]]
 +
: [[AGI Specifications: Chapter 9 - Sound Resources#ss9.6|9.6 &nbsp;Sound Resource Format (IIgs version)]]
 +
: [[AGI Specifications: Chapter 9 - Sound Resources#ss9.7|9.7 &nbsp;Playing the Sounds on a Sound Card]]
 +
: [[AGI Specifications: Chapter 9 - Sound Resources#ss9.8|9.8 &nbsp;Sample code]]
  
== [[AGI Specifications: Chapter 9 - SOUND Resources|Chapter 9 - SOUND Resources]] ==
+
==<br /> [[AGI Specifications: Chapter 10 - Savegame Files|Chapter 10 - Savegames Files]] ==
  
: [[AGI Specifications: Chapter 9 - SOUND Resources#1|9.1 &nbsp;Introduction]]
+
: [[AGI_Specifications: Chapter 10 - Savegame Files#10.1_Introduction|10.1 Introduction]]
: [[AGI Specifications: Chapter 9 - SOUND Resources#2|9.2 &nbsp;Sound in the IBM PCjr]]
+
: [[AGI_Specifications: Chapter 10 - Savegame Files#10.2_Saved_Game_Format|10.2 Saved Game Format]]
: [[AGI Specifications: Chapter 9 - SOUND Resources#3|9.3 &nbsp;Sound in the Apple IIgs]]
+
: [[AGI_Specifications: Chapter 10 - Savegame Files#10.3_Restoring_a_Game|10.3 Restoring a Game]]
: [[AGI Specifications: Chapter 9 - SOUND Resources#4|9.4 &nbsp;Sound in Other Platforms]]
 
: [[AGI Specifications: Chapter 9 - SOUND Resources#5|9.5 &nbsp;SOUND Resource Format (PCjr version)]]
 
: [[AGI Specifications: Chapter 9 - SOUND Resources#6|9.6 &nbsp;SOUND Resource Format (IIgs version)]]
 
: [[AGI Specifications: Chapter 9 - SOUND Resources#7|9.7 &nbsp;Playing the Sounds on a Sound Card]]
 
: [[AGI Specifications: Chapter 9 - SOUND Resources#8|9.8 &nbsp;Sample code]]
 
  
&nbsp;
+
==<br /> [[AGI Specifications: Chapter 11 - Other Game Data|Chapter 11 - Other Game Data]] ==
  
== [[AGI Specifications: Chapter 10 - Other Game Data|Chapter 10 - Other Game Data]] ==
+
: [[AGI Specifications: Chapter 11 - Other Game Data#ss10.1|11.1 &nbsp;Format of the OBJECT File]]
 +
: [[AGI Specifications: Chapter 11 - Other Game Data#ss10.2|11.2 &nbsp;Format of WORDS.TOK]]
 +
: [[AGI Specifications: Chapter 11 - Other Game Data#ss10.3|11.3 &nbsp;Sample Code]]
  
: [[AGI Specifications: Chapter 10 - Other Game Data#1|10.1 &nbsp;Format of the OBJECT File]]
+
==<br /> [[AGI Specifications: Chapter 12 - Booter Versions|Chapter 12 - Booter Versions]] ==
: [[AGI Specifications: Chapter 10 - Other Game Data#2|10.2 &nbsp;Format of WORDS.TOK]]
 
: [[AGI Specifications: Chapter 10 - Other Game Data#3|10.3 &nbsp;Sample Code]]
 
  
&nbsp;
+
: [[AGI Specifications: Chapter 12 - Booter Versions#12.1 Donald Duck.27s Playground|12.1 Donald Duck's Playground]]
 +
:
  
== [[AGI Specifications: Chapter 11 - Other Information|Chapter 11 - Other Information]] ==
+
==<br /> [[AGI Specifications: Chapter 13 - Other Information|Chapter 13 - Other Information]] ==
  
: [[AGI Specifications: Chapter 11 - Other Information#1|11.1 &nbsp;The AGDS Package]]
+
: [[AGI Specifications: Chapter 13 - Other Information#ss11.1|13.1 &nbsp;The AGDS Package]]
: [[AGI Specifications: Chapter 11 - Other Information#2|11.2 &nbsp;The Making of the Thunderstorm Educational Program]]
+
: [[AGI Specifications: Chapter 13 - Other Information#ss11.2|13.2 &nbsp;The Making of the Thunderstorm Educational Program]]
: [[AGI Specifications: Chapter 11 - Other Information#3|11.3 &nbsp;Other AGI Interpreters]]
+
: [[AGI Specifications: Chapter 13 - Other Information#ss11.3|13.3 &nbsp;Other AGI Interpreters]]
 
 
&nbsp;
 
  
 
<span style="float: left"><span class="Inactive">&lt; Previous: AGI Specifications Specifications Preface</span></span><span style="float: right">[[AGI Specifications: Chapter 1 - Introduction|Next: Chapter 1 - Introduction &gt;]]</span>
 
<span style="float: left"><span class="Inactive">&lt; Previous: AGI Specifications Specifications Preface</span></span><span style="float: right">[[AGI Specifications: Chapter 1 - Introduction|Next: Chapter 1 - Introduction &gt;]]</span>
  
&nbsp;
+
[[Category:AGI Documentation]]
 
+
[[Category:References]]
[[Category:Adventure Game Interpreter Specifications]]
 

Latest revision as of 20:33, 2 March 2018

by Peter Kelly, (editor)

Version 3.0 updated by Claudio Matsuoka

v3.0, 22 May 1999

 

This document is a collection of all the information currently known about the structure and operation of the Adventure Game Interpreter, used in 1984--1989 for a variety of adventure games published by Sierra On-Line such as Space Quest I and II, and Leisure Suit Larry in the Land of the Lounge Lizards.


 Chapter 1 - Introduction

1.1  About this Document
1.2  Audience
1.3  Conventions Used in this Document
1.4  What's Still Missing
1.5  Change Log
1.6  Credits


Chapter 2 - Overview

2.1  Versions of the AGI Interpreter
2.2  AGI Game Files
2.3  Logic, Picture, Sound, and View Data Files
2.4  What is Ego?
2.5  AGI Commands
2.6  Debug Modes
2.7  Priority Bands and Control Lines


Chapter 3 - AGI Internals

3.1  How the Interpreter Works
3.2  Variable Types
3.3  Variables Used by the Interpreter
3.4  Flags Used by the Interpreter
3.5  Memory Organization
3.6  Game IDs and Loaders
3.7  Encrypted AGI Data
3.8  Player Input Parsing
3.9  AGI Interpreter Versions
3.10  Version Differences


Chapter 4 - The Logic Language

4.1  Logic Syntax
4.2  Reference of the Logic Commands
4.3  Discussion of Sample Logic Code from KQ4


Chapter 5 - Resource Formats

5.1  Directory Files
5.2  Format of VOL Files (version 2)
5.3  Version 3 Resource Storage
5.4  Sample Code


Chapter 6 - Logic Resources

6.1  Introduction
6.2  Command List and Argument Types
6.3  Logic Resource Format
6.4  Sample Code


Chapter 7 - Picture Resources

7.1  Introduction
7.2  Picture Resource Format
7.3  Implementation
7.4  Using Higher Resolution Modes
7.5  Sierra's Picture Editor
7.6  Sample Code


Chapter 8 - View Resources

8.1  View Introduction
8.2  View Resource Format
8.3  View Table
8.4  View Test Commands
8.5  Sample Code


Chapter 9 - Sound Resources

9.1  Introduction
9.2  Sound in the IBM PCjr
9.3  Sound in the Apple IIgs
9.4  Sound in Other Platforms
9.5  Sound Resource Format (PCjr version)
9.6  Sound Resource Format (IIgs version)
9.7  Playing the Sounds on a Sound Card
9.8  Sample code


Chapter 10 - Savegames Files

10.1 Introduction
10.2 Saved Game Format
10.3 Restoring a Game


Chapter 11 - Other Game Data

11.1  Format of the OBJECT File
11.2  Format of WORDS.TOK
11.3  Sample Code


Chapter 12 - Booter Versions

12.1 Donald Duck's Playground


Chapter 13 - Other Information

13.1  The AGDS Package
13.2  The Making of the Thunderstorm Educational Program
13.3  Other AGI Interpreters

< Previous: AGI Specifications Specifications PrefaceNext: Chapter 1 - Introduction >