Difference between revisions of "AGI/Specifications"

From ScummVM :: Wiki
< AGI
Jump to navigation Jump to search
m (fixed link)
m (adding wikilinks to individual pages, not just sections)
Line 1: Line 1:
==AGI Specifications v3.0, 22 May 1999==
==[[AGI Specifications/Introduction|AGI Specifications v3.0, 22 May 1999]]==


Lance Ewing, Peter Kelly, Claudio Matsuoka, Stu George
Lance Ewing, Peter Kelly, Claudio Matsuoka, Stu George
Line 14: Line 14:
     * 1.6 [[AGI Specifications/Introduction#Credits|Credits]]
     * 1.6 [[AGI Specifications/Introduction#Credits|Credits]]


==General AGI overview==
==[[AGI Specifications/Overview|General AGI overview]]==


     * 2.1 [[AGI Specifications/Overview#Versions|Versions of the AGI interpreter]]
     * 2.1 [[AGI Specifications/Overview#Versions|Versions of the AGI interpreter]]
Line 24: Line 24:
     * 2.7 [[AGI Specifications/Overview#Priority|Priority bands and control lines]]
     * 2.7 [[AGI Specifications/Overview#Priority|Priority bands and control lines]]


==AGI internals==
==[[AGI Specifications/Internals|AGI internals]]==


     * 3.1 [[AGI Specifications/Internals#Interpreter|How the interpreter works]]
     * 3.1 [[AGI Specifications/Internals#Interpreter|How the interpreter works]]
Line 37: Line 37:
     * 3.10 [[AGI Specifications/Internals#VersionDifferences|Version differences]]
     * 3.10 [[AGI Specifications/Internals#VersionDifferences|Version differences]]


==The LOGIC language==
==[[AGI Specifications/Logic|The LOGIC language]]==


     * 4.1 [[AGI Specifications/Logic#Logic|LOGIC syntax]]
     * 4.1 [[AGI Specifications/Logic#Logic|LOGIC syntax]]
Line 43: Line 43:
     * 4.3 [[AGI Specifications/Logic#Sample|Discussion of sample LOGIC code from KQ4 ]]
     * 4.3 [[AGI Specifications/Logic#Sample|Discussion of sample LOGIC code from KQ4 ]]


==Formats of the resource files==
==[[AGI Specifications/Formats|Formats of the resource files]]==


     * 5.1 [[AGI Specifications/Formats#Dir|Directory files]]
     * 5.1 [[AGI Specifications/Formats#Dir|Directory files]]
Line 50: Line 50:
     * 5.4 [[AGI Specifications/Formats#Sample|Sample code]]
     * 5.4 [[AGI Specifications/Formats#Sample|Sample code]]


==LOGIC resources==
==[[AGI Specifications/Resources|LOGIC resources]]==


     * 6.1 [[AGI Specifications/Resources#Intro|Introduction]]
     * 6.1 [[AGI Specifications/Resources#Intro|Introduction]]
Line 57: Line 57:
     * 6.4 [[AGI Specifications/Resources#Sample|Sample code]]
     * 6.4 [[AGI Specifications/Resources#Sample|Sample code]]


==PICTURE resources==
==[[AGI Specifications/Pic|PICTURE resources]]==


     * 7.1 [[AGI Specifications/Pic#Intro|Introduction]]
     * 7.1 [[AGI Specifications/Pic#Intro|Introduction]]
Line 66: Line 66:
     * 7.6 [[AGI Specifications/Pic#Sample|Sample code]]
     * 7.6 [[AGI Specifications/Pic#Sample|Sample code]]


==VIEW resources==
==[[AGI Specifications/View|VIEW resources]]==


     * 8.1 [[AGI Specifications/View#Intro|Introduction]]
     * 8.1 [[AGI Specifications/View#Intro|Introduction]]
Line 74: Line 74:
     * 8.5 [[AGI Specifications/View#Sample|Sample code ]]
     * 8.5 [[AGI Specifications/View#Sample|Sample code ]]


==SOUND resources==
==[[AGI Specifications/Sound|SOUND resources]]==


     * 9.1 [[AGI Specifications/Sound#Intro|Introduction]]
     * 9.1 [[AGI Specifications/Sound#Intro|Introduction]]
Line 85: Line 85:
     * 9.8 [[AGI Specifications/Sound#Sample|Sample code]]
     * 9.8 [[AGI Specifications/Sound#Sample|Sample code]]


==Other game data==
==[[AGI Specifications/Data|Other game data]]==


     * 10.1 [[AGI Specifications/Data#Object|Format of the object file]]
     * 10.1 [[AGI Specifications/Data#Object|Format of the object file]]
Line 91: Line 91:
     * 10.3 [[AGI Specifications/Data#Sample|Sample code]]
     * 10.3 [[AGI Specifications/Data#Sample|Sample code]]


==Other information==
==[[AGI Specifications/Other|Other information]]==


     * 11.1 [[AGI Specifications/Other#AGDS|The AGDS package]]
     * 11.1 [[AGI Specifications/Other#AGDS|The AGDS package]]
     * 11.2 [[AGI Specifications/Other#Thunder|The making of the Thunderstorm educational Program]]
     * 11.2 [[AGI Specifications/Other#Thunder|The making of the Thunderstorm educational Program]]
     * 11.3 [[AGI Specifications/Other#Terps|Other AGI interpreters]]
     * 11.3 [[AGI Specifications/Other#Terps|Other AGI interpreters]]

Revision as of 13:23, 17 December 2006

AGI Specifications v3.0, 22 May 1999

Lance Ewing, Peter Kelly, Claudio Matsuoka, Stu George


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.


   * 1.1 About
   * 1.2 Audience
   * 1.3 Conventions used in this document
   * 1.4 What's still missing
   * 1.5 Change log
   * 1.6 Credits

General AGI 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

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

The LOGIC language

   * 4.1 LOGIC syntax
   * 4.2 Reference of the LOGIC commands
   * 4.3 Discussion of sample LOGIC code from KQ4 

Formats of the resource files

   * 5.1 Directory files
   * 5.2 Format of Vol files (version 2)
   * 5.3 Format of Vol files (version 3)
   * 5.4 Sample code

LOGIC resources

   * 6.1 Introduction
   * 6.2 Command list and argument types
   * 6.3 LOGIC resource format
   * 6.4 Sample code

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

VIEW resources

   * 8.1 Introduction
   * 8.2 VIEW resource format
   * 8.3 VIEW table
   * 8.4 VIEW test commands
   * 8.5 Sample code 

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

Other game data

   * 10.1 Format of the object file
   * 10.2 Format of words.tok
   * 10.3 Sample code

Other information

   * 11.1 The AGDS package
   * 11.2 The making of the Thunderstorm educational Program
   * 11.3 Other AGI interpreters