Difference between revisions of "AGI/Specifications"
< AGI
Jump to navigation
Jump to search
m (adding wikilinks to individual pages, not just sections) |
Lance.ewing (talk | contribs) |
||
(13 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
==[[AGI Specifications/Introduction|AGI Specifications v3. | ==[[AGI/Specifications/Introduction|AGI Specifications v3.2, 17 July 2007]]== | ||
Lance Ewing, Peter Kelly, Claudio Matsuoka, Stu George | Lance Ewing, Peter Kelly, Claudio Matsuoka, Stu George, David Symonds | ||
Line 7: | Line 7: | ||
* 1.1 [[AGI Specifications/Introduction#About|About]] | * 1.1 [[AGI/Specifications/Introduction#About|About]] | ||
* 1.2 [[AGI Specifications/Introduction#Audience|Audience]] | * 1.2 [[AGI/Specifications/Introduction#Audience|Audience]] | ||
* 1.3 [[AGI Specifications/Introduction#Conventions|Conventions used in this document]] | * 1.3 [[AGI/Specifications/Introduction#Conventions|Conventions used in this document]] | ||
* 1.4 [[AGI Specifications/Introduction#WhatsStillMissing|What's still missing]] | * 1.4 [[AGI/Specifications/Introduction#WhatsStillMissing|What's still missing]] | ||
* 1.5 [[AGI Specifications/Introduction#ChangeLog|Change log]] | * 1.5 [[AGI/Specifications/Introduction#ChangeLog|Change log]] | ||
* 1.6 [[AGI Specifications/Introduction#Credits|Credits]] | * 1.6 [[AGI/Specifications/Introduction#Credits|Credits]] | ||
==[[AGI Specifications/Overview|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]] | ||
* 2.2 [[AGI Specifications/Overview#GameFiles|AGI game files]] | * 2.2 [[AGI/Specifications/Overview#GameFiles|AGI game files]] | ||
* 2.3 [[AGI Specifications/Overview#Logic|LOGIC, PICTURE, SOUND, and VIEW data files]] | * 2.3 [[AGI/Specifications/Overview#Logic|LOGIC, PICTURE, SOUND, and VIEW data files]] | ||
* 2.4 [[AGI Specifications/Overview#Ego|What is Ego?]] | * 2.4 [[AGI/Specifications/Overview#Ego|What is Ego?]] | ||
* 2.5 [[AGI Specifications/Overview#Commands|AGI commands]] | * 2.5 [[AGI/Specifications/Overview#Commands|AGI commands]] | ||
* 2.6 [[AGI Specifications/Overview#Debug|Debug modes]] | * 2.6 [[AGI/Specifications/Overview#Debug|Debug modes]] | ||
* 2.7 [[AGI Specifications/Overview#Priority|Priority bands and control lines]] | * 2.7 [[AGI/Specifications/Overview#Priority|Priority bands and control lines]] | ||
==[[AGI Specifications/Internals|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]] | ||
* 3.2 [[AGI Specifications/Internals#VariableTypes|Variable types]] | * 3.2 [[AGI/Specifications/Internals#VariableTypes|Variable types]] | ||
* 3.3 [[AGI Specifications/Internals#Variables|Variables used by the interpreter]] | * 3.3 [[AGI/Specifications/Internals#Variables|Variables used by the interpreter]] | ||
* 3.4 [[AGI Specifications/Internals#Flags|Flags used by the interpreter]] | * 3.4 [[AGI/Specifications/Internals#Flags|Flags used by the interpreter]] | ||
* 3.5 [[AGI Specifications/Internals#Memory|Memory organization]] | * 3.5 [[AGI/Specifications/Internals#Memory|Memory organization]] | ||
* 3.6 [[AGI Specifications/Internals#GameID|Game IDs and loaders]] | * 3.6 [[AGI/Specifications/Internals#GameID|Game IDs and loaders]] | ||
* 3.7 [[AGI Specifications/Internals#Encryption|Encrypted AGI data]] | * 3.7 [[AGI/Specifications/Internals#Encryption|Encrypted AGI data]] | ||
* 3.8 [[AGI Specifications/Internals#Input|Player input parsing]] | * 3.8 [[AGI/Specifications/Internals#Input|Player input parsing]] | ||
* 3.9 [[AGI Specifications/Internals#InterpreterVersions|AGI interpreter versions]] | * 3.9 [[AGI/Specifications/Internals#InterpreterVersions|AGI interpreter versions]] | ||
* 3.10 [[AGI Specifications/Internals#VersionDifferences|Version differences]] | * 3.10 [[AGI/Specifications/Internals#VersionDifferences|Version differences]] | ||
==[[AGI Specifications/Logic|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]] | ||
* 4.2 [[AGI Specifications/Logic#CommandRef|Reference of the LOGIC commands]] | * 4.2 [[AGI/Specifications/Logic#CommandRef|Reference of the LOGIC commands]] | ||
* 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 ]] | ||
==[[AGI Specifications/Formats|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]] | ||
* 5.2 [[AGI Specifications/Formats#Vol2|Format of Vol files (version 2)]] | * 5.2 [[AGI/Specifications/Formats#Vol2|Format of Vol files (version 2)]] | ||
* 5.3 [[AGI Specifications/Formats#Vol3|Format of Vol files (version 3)]] | * 5.3 [[AGI/Specifications/Formats#Vol3|Format of Vol files (version 3)]] | ||
* 5.4 [[AGI Specifications/Formats#Sample|Sample code]] | * 5.4 [[AGI/Specifications/Formats#Sample|Sample code]] | ||
==[[AGI Specifications/Resources|LOGIC resources]]== | ==[[AGI/Specifications/Resources|LOGIC resources]]== | ||
* 6.1 [[AGI Specifications/Resources#Intro|Introduction]] | * 6.1 [[AGI/Specifications/Resources#Intro|Introduction]] | ||
* 6.2 [[AGI Specifications/Resources#CmdList|Command list and argument types]] | * 6.2 [[AGI/Specifications/Resources#CmdList|Command list and argument types]] | ||
* 6.3 [[AGI Specifications/Resources#LogicFormat|LOGIC resource format | * 6.3 [[AGI/Specifications/Resources#LogicFormat|LOGIC resource format]] | ||
==[[AGI Specifications/Pic|PICTURE resources]]== | ==[[AGI/Specifications/Pic|PICTURE resources]]== | ||
* 7.1 [[AGI Specifications/Pic#Intro|Introduction]] | * 7.1 [[AGI/Specifications/Pic#Intro|Introduction]] | ||
* 7.2 [[AGI Specifications/Pic#PicFormat|PICTURE resource format]] | * 7.2 [[AGI/Specifications/Pic#PicFormat|PICTURE resource format]] | ||
* 7.3 [[AGI Specifications/Pic#Implementation|Implementation]] | * 7.3 [[AGI/Specifications/Pic#Implementation|Implementation]] | ||
* 7.4 [[AGI Specifications/Pic#HiRes|Using higher resolution modes]] | * 7.4 [[AGI/Specifications/Pic#HiRes|Using higher resolution modes]] | ||
* 7.5 [[AGI Specifications/Pic#PicEdit|Sierra's picture editor]] | * 7.5 [[AGI/Specifications/Pic#PicEdit|Sierra's picture editor]] | ||
* 7.6 [[AGI Specifications/Pic#Sample|Sample code]] | * 7.6 [[AGI/Specifications/Pic#Sample|Sample code]] | ||
==[[AGI Specifications/View|VIEW resources]]== | ==[[AGI/Specifications/View|VIEW resources]]== | ||
* 8.1 [[AGI Specifications/View#Intro|Introduction]] | * 8.1 [[AGI/Specifications/View#Intro|Introduction]] | ||
* 8.2 [[AGI Specifications/View#ViewFormat|VIEW resource format]] | * 8.2 [[AGI/Specifications/View#ViewFormat|VIEW resource format]] | ||
* 8.3 [[AGI Specifications/View#ViewTable|VIEW table]] | * 8.3 [[AGI/Specifications/View#ViewTable|VIEW table]] | ||
* 8.4 [[AGI Specifications/View#ViewTest|VIEW test commands]] | * 8.4 [[AGI/Specifications/View#ViewTest|VIEW test commands]] | ||
* 8.5 [[AGI Specifications/View#Sample|Sample code ]] | * 8.5 [[AGI/Specifications/View#Sample|Sample code ]] | ||
==[[AGI Specifications/Sound|SOUND resources]]== | ==[[AGI/Specifications/Sound|SOUND resources]]== | ||
* 9.1 [[AGI Specifications/Sound#Intro|Introduction]] | * 9.1 [[AGI/Specifications/Sound#Intro|Introduction]] | ||
* 9.2 [[AGI Specifications/Sound#PCJr|Sound in the IBM PCjr]] | * 9.2 [[AGI/Specifications/Sound#PCJr|Sound in the IBM PCjr]] | ||
* 9.3 [[AGI Specifications/Sound#IIgs|Sound in the Apple IIgs]] | * 9.3 [[AGI/Specifications/Sound#IIgs|Sound in the Apple IIgs]] | ||
* 9.4 [[AGI Specifications/Sound#Other|Sound in other platforms]] | * 9.4 [[AGI/Specifications/Sound#Other|Sound in other platforms]] | ||
* 9.5 [[AGI Specifications/Sound#PCJrFormat|SOUND resource format (PCjr version)]] | * 9.5 [[AGI/Specifications/Sound#PCJrFormat|SOUND resource format (PCjr version)]] | ||
* 9.6 [[AGI Specifications/Sound#IIgsFormat|SOUND resource format (IIgs version)]] | * 9.6 [[AGI/Specifications/Sound#IIgsFormat|SOUND resource format (IIgs version)]] | ||
* 9.7 [[AGI Specifications/Sound#Playing|Playing the sounds on a sound card]] | * 9.7 [[AGI/Specifications/Sound#Playing|Playing the sounds on a sound card]] | ||
* 9.8 [[AGI Specifications/Sound#Sample|Sample code]] | * 9.8 [[AGI/Specifications/Sound#Sample|Sample code]] | ||
==[[AGI Specifications/Data|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]] | ||
* 10.2 [[AGI Specifications/Data#Words|Format of words.tok]] | * 10.2 [[AGI/Specifications/Data#Words|Format of words.tok]] | ||
* 10.3 [[AGI Specifications/Data#Sample|Sample code]] | * 10.3 [[AGI/Specifications/Data#Sample|Sample code]] | ||
==[[AGI Specifications/Other|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]] | ||
==[[AGI/Specifications/Booters|Booter versions of AGI games]]== | |||
* 12.1 [[AGI/Specifications/Booters#DDP|Donald Duck's Playground]] | |||
==[[AGI/Specifications/Fan Made Extensions|Fan-Made Extensions to the AGI Engine]]== | |||
* 13.1 [[AGI/Specifications/Fan Made Extensions#AGIPAL|AGIPAL]] | |||
* 13.2 [[AGI/Specifications/Fan Made Extensions#AGI256|AGI256]] | |||
* 13.3 [[AGI/Specifications/Fan Made Extensions#AGI256-2|AGI256-2]] | |||
==[[AGI/Specifications/Savegame|Savegame files]]== | |||
* 14.1 [[AGI/Specifications/Savegame#Introduction|Introduction]] | |||
* 14.2 [[AGI/Specifications/Savegame#Saved_Game_Format|Saved Game Format]] | |||
* 14.3 [[AGI/Specifications/Savegame#Restoring_a_Game|Restoring a Game]] |
Latest revision as of 22:22, 11 March 2017
AGI Specifications v3.2, 17 July 2007
Lance Ewing, Peter Kelly, Claudio Matsuoka, Stu George, David Symonds
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
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
Booter versions of AGI games
* 12.1 Donald Duck's Playground
Fan-Made Extensions to the AGI Engine
* 13.1 AGIPAL * 13.2 AGI256 * 13.3 AGI256-2
Savegame files
* 14.1 Introduction * 14.2 Saved Game Format * 14.3 Restoring a Game