ScummVM API documentation
Agi Namespace Reference

Classes

struct  AgiAppleIIgsDelayOverwriteGameEntry
 
struct  AgiAppleIIgsDelayOverwriteRoomEntry
 
struct  AgiArtificialDelayEntry
 
class  AgiBase
 
struct  AgiBlock
 
struct  AgiControllerKeyMapping
 
struct  AgiDebug
 
struct  AgiDir
 
struct  AgiDiskVolume
 
class  AgiEngine
 
struct  AgiGame
 
struct  AGIGameDescription
 
class  AgiLoader
 
class  AgiLoader_A2
 
class  AgiLoader_v1
 
class  AgiLoader_v2
 
class  AgiLoader_v3
 
struct  AgiLogic
 
struct  AgiObject
 
struct  AgiOpCodeDefinitionEntry
 
struct  AgiOpCodeEntry
 
struct  AgiPicture
 
class  AgiSound
 
struct  AgiView
 
struct  AgiViewCel
 
struct  AgiViewLoop
 
class  AllowSyntheticEvents
 
struct  ChannelInfo
 
class  Console
 
struct  gameIdList
 
class  GfxFont
 
class  GfxMenu
 
class  GfxMgr
 
struct  GuiMenuEntry
 
struct  GuiMenuItemEntry
 
struct  IIgsExeInfo
 
class  IIgsGenerator
 
struct  IIgsInstrumentHeader
 
struct  IIgsInstrumentSetInfo
 
class  IIgsMidi
 
class  IIgsMidiChannel
 
struct  IIgsMidiProgramMapping
 
class  IIgsSample
 
struct  IIgsSampleHeader
 
struct  ImageStackElement
 
struct  InventoryEntry
 
class  InventoryMgr
 
struct  Item
 
struct  MessageState_Struct
 
class  MickeyConsole
 
class  MickeyEngine
 
struct  Mouse
 
struct  MouseCursorData
 
struct  MSA_DAT_HEADER
 
struct  MSA_GAME
 
struct  MSA_MENU
 
struct  MSA_MSG_BLOCK
 
struct  MSA_SND_NOTE
 
struct  MSA_TEXT_BLOCK
 
struct  MSA_TEXT_ENTRY
 
class  PCjrSound
 
class  PictureMgr
 
class  PreAgiEngine
 
struct  RoomDesc
 
struct  ScreenObjEntry
 
struct  ScriptPos
 
struct  SndGenChan
 
class  SoundGen
 
class  SoundGen2GS
 
class  SoundGenA2
 
class  SoundGenCoCo3
 
class  SoundGenMIDI
 
class  SoundGenPCJr
 
class  SoundGenSarien
 
class  SoundMgr
 
struct  Sprite
 
class  SpritesMgr
 
class  SystemUI
 
struct  SystemUIButtonEntry
 
struct  SystemUISavedGameEntry
 
struct  TextAttrib_Struct
 
class  TextMgr
 
struct  TextPos_Struct
 
struct  ToneChan
 
class  TrollEngine
 
struct  UserMsg
 
class  WagFileParser
 
class  WagProperty
 
class  WinnieConsole
 
class  WinnieEngine
 
struct  WordEntry
 
class  Words
 
struct  WTP_OBJ_HDR
 
struct  WTP_ROOM_BLOCK
 
struct  WTP_ROOM_HDR
 
struct  WTP_SAVE_GAME
 

Typedefs

typedef Common::Array< int16 > SavedGameSlotIdArray
 
typedef void(* AgiOpCodeFunction) (AgiGame *state, AgiEngine *vm, uint8 *p)
 
typedef Common::Array< InventoryEntryInventoryArray
 
typedef Common::Array< GuiMenuEntry * > GuiMenuArray
 
typedef Common::Array< GuiMenuItemEntry * > GuiMenuItemArray
 
typedef Common::List< SpriteSpriteList
 
typedef Common::List< Sprite * > SpritePtrList
 
typedef Common::Array< SystemUISavedGameEntrySystemUISavedGameArray
 
typedef Common::Array< SystemUIButtonEntrySystemUIButtonArray
 

Enumerations

enum  AgiGameType {
  GType_PreAGI = 0, GType_V1 = 1, GType_V2 = 2, GType_V3 = 3,
  GType_A2 = 4
}
 
enum  AgiGameFeatures {
  GF_AGIMOUSE = (1 << 0), GF_AGDS = (1 << 1), GF_AGI256 = (1 << 2), GF_FANMADE = (1 << 3),
  GF_2GSOLDSOUND = (1 << 5), GF_EXTCHAR = (1 << 6)
}
 
enum  AgiGameID {
  GID_AGIDEMO, GID_BC, GID_DDP, GID_GOLDRUSH,
  GID_KQ1, GID_KQ2, GID_KQ3, GID_KQ4,
  GID_LSL1, GID_MH1, GID_MH2, GID_MIXEDUP,
  GID_PQ1, GID_SQ1, GID_SQ2, GID_XMASCARD,
  GID_FANMADE, GID_GETOUTTASQ, GID_MICKEY, GID_WINNIE,
  GID_TROLL
}
 
enum  AGIErrors {
  errOK = 0, errFilesNotFound, errBadFileOpen, errNotEnoughMemory,
  errBadResource, errIOError, errUnk = 127
}
 
enum  kDebugLevels {
  kDebugLevelMain = 1 << 0, kDebugLevelResources = 1 << 1, kDebugLevelSprites = 1 << 2, kDebugLevelInventory = 1 << 3,
  kDebugLevelInput = 1 << 4, kDebugLevelMenu = 1 << 5, kDebugLevelScripts = 1 << 6, kDebugLevelSound = 1 << 7,
  kDebugLevelText = 1 << 8, kDebugLevelSavegame = 1 << 9
}
 
enum  { RESOURCETYPE_LOGIC = 1, RESOURCETYPE_SOUND, RESOURCETYPE_VIEW, RESOURCETYPE_PICTURE }
 
enum  { RES_LOADED = 0x01, RES_COMPRESSED = 0x40, RES_PICTURE_V3_NIBBLE_PARM = 0x80 }
 
enum  { lCOMMAND_MODE = 1, lTEST_MODE }
 
enum  AgiMouseButton { kAgiMouseButtonUp, kAgiMouseButtonLeft, kAgiMouseButtonRight, kAgiMouseButtonMiddle }
 
enum  {
  VM_VAR_CURRENT_ROOM = 0, VM_VAR_PREVIOUS_ROOM, VM_VAR_BORDER_TOUCH_EGO, VM_VAR_SCORE,
  VM_VAR_BORDER_CODE, VM_VAR_BORDER_TOUCH_OBJECT, VM_VAR_EGO_DIRECTION, VM_VAR_MAX_SCORE,
  VM_VAR_FREE_PAGES, VM_VAR_WORD_NOT_FOUND, VM_VAR_TIME_DELAY, VM_VAR_SECONDS,
  VM_VAR_MINUTES, VM_VAR_HOURS, VM_VAR_DAYS, VM_VAR_JOYSTICK_SENSITIVITY,
  VM_VAR_EGO_VIEW_RESOURCE, VM_VAR_AGI_ERROR_CODE, VM_VAR_AGI_ERROR_INFO, VM_VAR_KEY,
  VM_VAR_COMPUTER, VM_VAR_WINDOW_AUTO_CLOSE_TIMER, VM_VAR_SOUNDGENERATOR, VM_VAR_VOLUME,
  VM_VAR_MAX_INPUT_CHARACTERS, VM_VAR_SELECTED_INVENTORY_ITEM, VM_VAR_MONITOR = 26, VM_VAR_MOUSE_BUTTONSTATE = 27,
  VM_VAR_MOUSE_X = 28, VM_VAR_MOUSE_Y = 29
}
 
enum  AgiMonitorType { kAgiMonitorCga = 0, kAgiMonitorHercules = 2, kAgiMonitorEga = 3 }
 
enum  AgiComputerType {
  kAgiComputerPC = 0, kAgiComputerApple2 = 3, kAgiComputerAtariST = 4, kAgiComputerAmiga = 5,
  kAgiComputerApple2GS = 7
}
 
enum  AgiSoundType { kAgiSoundPC = 1, kAgiSoundTandy = 3, kAgiSound2GSOld = 8 }
 
enum  {
  VM_FLAG_EGO_WATER = 0, VM_FLAG_EGO_INVISIBLE, VM_FLAG_ENTERED_CLI, VM_FLAG_EGO_TOUCHED_P2,
  VM_FLAG_SAID_ACCEPTED_INPUT, VM_FLAG_NEW_ROOM_EXEC, VM_FLAG_RESTART_GAME, VM_FLAG_SCRIPT_BLOCKED,
  VM_FLAG_JOY_SENSITIVITY, VM_FLAG_SOUND_ON, VM_FLAG_DEBUGGER_ON, VM_FLAG_LOGIC_ZERO_FIRST_TIME,
  VM_FLAG_RESTORE_JUST_RAN, VM_FLAG_STATUS_SELECTS_ITEMS, VM_FLAG_MENUS_ACCESSIBLE, VM_FLAG_OUTPUT_MODE,
  VM_FLAG_AUTO_RESTART
}
 
enum  CycleInnerLoopType {
  CYCLE_INNERLOOP_GETSTRING = 0, CYCLE_INNERLOOP_GETNUMBER, CYCLE_INNERLOOP_INVENTORY, CYCLE_INNERLOOP_MENU_VIA_KEYBOARD,
  CYCLE_INNERLOOP_MENU_VIA_MOUSE, CYCLE_INNERLOOP_SYSTEMUI_SELECTSAVEDGAMESLOT, CYCLE_INNERLOOP_SYSTEMUI_VERIFICATION, CYCLE_INNERLOOP_MESSAGEBOX,
  CYCLE_INNERLOOP_HAVEKEY
}
 
enum  A2DirVersion { A2DirVersionOld, A2DirVersionNew }
 
enum  AgiArtificialDelayTriggerType { ARTIFICIALDELAYTYPE_NEWROOM = 0, ARTIFICIALDELAYTYPE_NEWPICTURE = 1, ARTIFICIALDELAYTYPE_END = -1 }
 
enum  GfxScreenUpscaledMode { DISPLAY_UPSCALED_DISABLED = 0, DISPLAY_UPSCALED_640x400 = 1 }
 
enum  GfxScreenMasks { GFX_SCREEN_MASK_VISUAL = 1, GFX_SCREEN_MASK_PRIORITY = 2, GFX_SCREEN_MASK_ALL = GFX_SCREEN_MASK_VISUAL | GFX_SCREEN_MASK_PRIORITY }
 
enum  AgiPictureVersion {
  AGIPIC_C64, AGIPIC_V1, AGIPIC_V15, AGIPIC_V2,
  AGIPIC_256
}
 
enum  AgiPictureFlags {
  kPicFNone = (1 << 0), kPicFCircle = (1 << 1), kPicFStep = (1 << 2), kPicFf3Stop = (1 << 3),
  kPicFf3Cont = (1 << 4), kPicFTrollMode = (1 << 5)
}
 
enum  ENUM_MSA_OBJECT {
  IDI_MSA_OBJECT_NONE = -1, IDI_MSA_OBJECT_ROCK_0, IDI_MSA_OBJECT_WRENCH, IDI_MSA_OBJECT_SCALE,
  IDI_MSA_OBJECT_CROWBAR, IDI_MSA_OBJECT_BONE, IDI_MSA_OBJECT_SUNGLASSES, IDI_MSA_OBJECT_DESK_STUFF,
  IDI_MSA_OBJECT_MATTRESS, IDI_MSA_OBJECT_SCARF, IDI_MSA_OBJECT_FLASHLIGHT, IDI_MSA_OBJECT_ROPE,
  IDI_MSA_OBJECT_ROCK_1, IDI_MSA_OBJECT_SCARF_C64, IDI_MSA_OBJECT_ROCK_2, IDI_MSA_OBJECT_ROCK_3,
  IDI_MSA_OBJECT_W_EARTH, IDI_MSA_OBJECT_W_VENUS, IDI_MSA_OBJECT_W_TRITON, IDI_MSA_OBJECT_W_MERCURY,
  IDI_MSA_OBJECT_W_TITAN, IDI_MSA_OBJECT_W_PLUTO, IDI_MSA_OBJECT_W_IO, IDI_MSA_OBJECT_W_MARS,
  IDI_MSA_OBJECT_W_OBERON, IDI_MSA_OBJECT_W_SPACE, IDI_MSA_OBJECT_XL31, IDI_MSA_OBJECT_XL31E,
  IDI_MSA_OBJECT_XL32, IDI_MSA_OBJECT_XL32E, IDI_MSA_OBJECT_XL33, IDI_MSA_OBJECT_XL33E,
  IDI_MSA_OBJECT_CRYSTAL
}
 
enum  ENUM_MSA_PLANET {
  IDI_MSA_PLANET_EARTH = 0, IDI_MSA_PLANET_VENUS, IDI_MSA_PLANET_NEPTUNE, IDI_MSA_PLANET_MERCURY,
  IDI_MSA_PLANET_SATURN, IDI_MSA_PLANET_PLUTO, IDI_MSA_PLANET_JUPITER, IDI_MSA_PLANET_MARS,
  IDI_MSA_PLANET_URANUS, IDI_MSA_PLANET_SPACESHIP
}
 
enum  ENUM_MSA_ITEM {
  IDI_MSA_ITEM_FLASHLIGHT = 0, IDI_MSA_ITEM_ROPE, IDI_MSA_ITEM_BONE, IDI_MSA_ITEM_LETTER,
  IDI_MSA_ITEM_CROWBAR, IDI_MSA_ITEM_WRENCH, IDI_MSA_ITEM_MATTRESS, IDI_MSA_ITEM_SCARF,
  IDI_MSA_ITEM_SUNGLASSES, IDI_MSA_ITEM_SCALE, IDI_MSA_ITEM_ROCK
}
 
enum  ENUM_MSA_SOUND {
  IDI_MSA_SND_THEME, IDI_MSA_SND_CRYSTAL, IDI_MSA_SND_TAKE, IDI_MSA_SND_GAME_OVER,
  IDI_MSA_SND_PRESS_BLUE, IDI_MSA_SND_PRESS_ORANGE, IDI_MSA_SND_SHIP_LAND, IDI_MSA_SND_XL30
}
 
enum  SelectionTypes {
  kSelYesNo, kSelNumber, kSelSpace, kSelAnyKey,
  kSelBackspace
}
 
enum  OptionType { OT_GO, OT_GET, OT_DO, OT_FLASHLIGHT }
 
enum  {
  IDI_WTP_SEL_HOME = -2, IDI_WTP_SEL_BACK, IDI_WTP_SEL_OPT_1, IDI_WTP_SEL_OPT_2,
  IDI_WTP_SEL_OPT_3, IDI_WTP_SEL_NORTH, IDI_WTP_SEL_SOUTH, IDI_WTP_SEL_EAST,
  IDI_WTP_SEL_WEST, IDI_WTP_SEL_TAKE, IDI_WTP_SEL_DROP, IDI_WTP_SEL_REAL_OPT_1,
  IDI_WTP_SEL_REAL_OPT_2, IDI_WTP_SEL_REAL_OPT_3
}
 
enum  {
  IDI_WTP_ROOM_NONE = -1, IDI_WTP_ROOM_NORTH, IDI_WTP_ROOM_SOUTH, IDI_WTP_ROOM_EAST,
  IDI_WTP_ROOM_WEST
}
 
enum  ENUM_WTP_SOUND {
  IDI_WTP_SND_POOH_0 = 1, IDI_WTP_SND_TIGGER, IDI_WTP_SND_TAKE, IDI_WTP_SND_DROP,
  IDI_WTP_SND_DROP_OK, IDI_WTP_SND_FANFARE, IDI_WTP_SND_POOH_1, IDI_WTP_SND_KEYHELP,
  IDI_WTP_SND_POOH_2, IDI_WTP_SND_WIND_0, IDI_WTP_SND_WIND_1
}
 
enum  { IDI_WTP_OBJ_DESC = 0, IDI_WTP_OBJ_TAKE, IDI_WTP_OBJ_DROP, IDI_WTP_OBJ_HELP }
 
enum  { IDI_WTP_PAR_OK = 0, IDI_WTP_PAR_GOTO, IDI_WTP_PAR_BACK }
 
enum  AgiSoundEmuType {
  AGI_SOUND_SAMPLE = 0x0001, AGI_SOUND_MIDI = 0x0002, AGI_SOUND_4CHN = 0x0008, AGI_SOUND_APPLE2 = 0xffff,
  AGI_SOUND_COCO3 = 0xfffe
}
 
enum  GenType { kGenSilence, kGenTone, kGenPeriod, kGenWhite }
 
enum  AgiSoundFlags { AGI_SOUND_LOOP = 0x0001, AGI_SOUND_ENVELOPE = 0x0002 }
 
enum  AgiSoundEnv { AGI_SOUND_ENV_ATTACK = 3, AGI_SOUND_ENV_DECAY = 2, AGI_SOUND_ENV_SUSTAIN = 1, AGI_SOUND_ENV_RELEASE = 0 }
 
enum  MotionType {
  kMotionNormal = 0, kMotionWander = 1, kMotionFollowEgo = 2, kMotionMoveObj = 3,
  kMotionEgo = 4
}
 
enum  CycleType { kCycleNormal = 0, kCycleEndOfLoop = 1, kCycleRevLoop = 2, kCycleReverse = 3 }
 
enum  ViewFlags {
  fDrawn = (1 << 0), fIgnoreBlocks = (1 << 1), fFixedPriority = (1 << 2), fIgnoreHorizon = (1 << 3),
  fUpdate = (1 << 4), fCycling = (1 << 5), fAnimated = (1 << 6), fMotion = (1 << 7),
  fOnWater = (1 << 8), fIgnoreObjects = (1 << 9), fUpdatePos = (1 << 10), fOnLand = (1 << 11),
  fDontUpdate = (1 << 12), fFixLoop = (1 << 13), fDidntMove = (1 << 14), fAdjEgoXY = (1 << 15)
}
 

Functions

Common::SeekableReadStreamopenPCDiskImage (const Common::Path &path, const Common::FSNode &node)
 
Common::SeekableReadStreamopenA2DiskImage (const Common::Path &path, const Common::FSNode &node, bool loadAllTracks=true)
 
void lzwExpand (uint8 *in, uint8 *out, int32 len)
 
void cmdIncrement (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDecrement (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAssignN (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAssignV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAddN (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAddV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSubN (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSubV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLindirectV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdRindirect (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLindirectN (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSet (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdReset (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdToggle (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdResetV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdToggleV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdNewRoom (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdNewRoomF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLoadLogic (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLoadLogicF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCall (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCallF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLoadPic (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLoadPicV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDrawPic (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDrawPicV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdShowPic (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDiscardPic (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdOverlayPic (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdShowPriScreen (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLoadView (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLoadViewF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDiscardView (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAnimateObj (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdUnanimateAll (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDraw (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdErase (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPosition (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPositionV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPositionF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPositionFV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGetPosn (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdReposition (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdRepositionV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetView (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetViewF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetLoop (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetLoopF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdFixLoop (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdReleaseLoop (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetCel (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetCelF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLastCel (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCurrentCel (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCurrentLoop (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCurrentView (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdNumberOfLoops (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetPriority (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetPriorityF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdReleasePriority (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGetPriority (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStopUpdate (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStartUpdate (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdForceUpdate (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdIgnoreHorizon (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdObserveHorizon (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetHorizon (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdObjectOnWater (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdObjectOnLand (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdObjectOnAnything (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdIgnoreObjs (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdObserveObjs (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDistance (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStopCycling (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStartCycling (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdNormalCycle (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdEndOfLoop (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdEndOfLoopV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdReverseCycle (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdReverseLoop (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdReverseLoopV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCycleTime (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStopMotion (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStopMotionV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStartMotion (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStartMotionV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStepSize (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStepTime (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdMoveObj (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdMoveObjF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdFollowEgo (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdWander (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdNormalMotion (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetDir (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGetDir (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdIgnoreBlocks (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdObserveBlocks (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdBlock (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdUnblock (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGet (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGetV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGetF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDrop (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPut (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPutF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGetRoomF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLoadSound (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSound (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStopSound (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPrint (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPrintF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDisplay (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDisplayF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdClearLines (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdTextScreen (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGraphics (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetCursorChar (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetTextAttribute (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdShakeScreen (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdConfigureScreen (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStatusLineOn (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStatusLineOff (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetString (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGetString (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdWordToString (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdParse (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGetNum (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPreventInput (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAcceptInput (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetKey (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAddToPic (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAddToPicV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAddToPicF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdStatus (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSaveGame (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLoadGame (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdInitDisk (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdRestartGame (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdShowObj (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdRandom (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdRandomV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdProgramControl (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPlayerControl (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdObjStatusF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdQuit (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdQuitV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdShowMem (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPause (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdEchoLine (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCancelLine (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdInitJoy (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdToggleMonitor (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdVersion (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdScriptSize (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetGameID (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdLog (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetScanStart (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdResetScanStart (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdRepositionTo (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdRepositionToF (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdTraceOn (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdTraceInfo (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPrintAt (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPrintAtV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdClearTextRect (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetUpperLeft (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetMenu (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetMenuItem (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSubmitMenu (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdEnableItem (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDisableItem (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdMenuInput (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdShowObjV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdOpenDialogue (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCloseDialogue (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdMulN (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdMulV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDivN (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDivV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCloseWindow (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetSimple (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAgi256LoadPic (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPushScript (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAgiMouseGetMouseState (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdPopScript (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdHoldKey (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetPriBase (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdDiscardSound (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdHideMouse (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAllowMenu (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdShowMouse (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdFenceMouse (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdGetMousePosn (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdReleaseKey (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdAdjEgoMoveToXY (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetSpeed (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdSetItemView (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdCallV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void cmdUnknown (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condEqual (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condEqualV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condLess (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condLessV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condGreater (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condGreaterV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condIsSet (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condIsSetV (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condHas (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condHasV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condObjInRoom (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condPosn (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condController (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condHaveKey (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condSaid (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condCompareStrings (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condObjInBox (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condCenterPosn (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condRightPosn (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condUnknown13 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condUnknown (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condIsSetV1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condSaid1 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condSaid2 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condSaid3 (AgiGame *state, AgiEngine *vm, uint8 *p)
 
void condBit (AgiGame *state, AgiEngine *vm, uint8 *p)
 
Common::String rightAlign (Common::String line, va_list args)
 

Variables

const uint8 scancodeTable []
 
const char IDS_MSA_CRYSTAL_NO [][3]
 
const char IDS_MSA_TEMP_C [][5]
 
const char IDS_MSA_TEMP_F [][5]
 
const char IDS_MSA_PLANETS [][10]
 
const char IDS_MSA_ERRORS [][40]
 
const char IDS_MSA_INSERT_DISK [][40]
 
const char IDS_MSA_NAME_OBJ [][9]
 
const int IDI_MSA_XTAL_ROOM_XY [9][3]
 
const char IDS_MSA_NAME_DAT [][13]
 
const char IDS_MSA_NAME_PLANET [][10]
 
const char IDS_MSA_NAME_PLANET_2 [][10]
 
const char IDS_MSA_ADDR_PLANET [][7]
 
const int IDI_MSA_HOME_PLANET []
 
const int IDI_MSA_SHIP_PLANET []
 
const char IDS_MSA_NAME_ITEM [][15]
 
const int IDO_MSA_HIDDEN_MSG []
 
const int IDO_MSA_GAME_OVER []
 
const int IDO_MSA_SAVE_GAME []
 
const int IDO_MSA_LOAD_GAME []
 
const int IDO_MSA_AIR_SUPPLY []
 
const int IDI_MSA_AIR_SUPPLY [] = { 30, 20, 10, 0 }
 
const int IDO_MSA_PLANET_INFO [9][4]
 
const int IDO_MSA_NEXT_PIECE [9][5]
 

Detailed Description

This is the namespace of the AGI engine.

Status of this engine: ???

Games using this engine:

  • Early Sierra adventure games
  • many fan made games
  • Mickey's Space Adventure (Pre-AGI)
  • Winnie the Pooh in the Hundred Acre Wood (Pre-AGI)
  • Troll's Tale (Pre-AGI)

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

AGI resources.

◆ anonymous enum

anonymous enum

AGI variables.

◆ AgiMonitorType

Different monitor types. Used with AGI variable 26 i.e. vMonitor.

◆ AgiComputerType

Different computer types. Used with AGI variable 20 i.e. vComputer.

◆ anonymous enum

anonymous enum

AGI flags

◆ A2DirVersion

Apple II version of the format for LOGDIR, VIEWDIR, etc. See AgiLoader_A2::loadDir for more details.

◆ AgiSoundEmuType

AGI sound resource types. These values are the first 16-bit LE words of each resource's header, except for AGIv1, Apple II, and CoCo3, which do not have headers.

Variable Documentation

◆ IDS_MSA_CRYSTAL_NO

const char Agi::IDS_MSA_CRYSTAL_NO[][3]
Initial value:
= {
"NO", " 1", " 2", " 3", " 4", " 5", " 6", " 7", " 8", " 9"
}

◆ IDS_MSA_TEMP_C

const char Agi::IDS_MSA_TEMP_C[][5]
Initial value:
= {
" 20 ", " 480", "-200", " 430", "-185", "-230", "-130", "-150", "-215"
}

◆ IDS_MSA_TEMP_F

const char Agi::IDS_MSA_TEMP_F[][5]
Initial value:
= {
" 68 ", " 897", "-328", " 807", "-301", "-382", "-202", "-238", "-355"
}

◆ IDS_MSA_PLANETS

const char Agi::IDS_MSA_PLANETS[][10]
Initial value:
= {
"EARTH. ", "VENUS. ", "TRITON. ", "MERCURY.", "TITAN. ",
"PLUTO. ", "IO. ", "MARS. ", "OBERON. "
}

◆ IDS_MSA_ERRORS

const char Agi::IDS_MSA_ERRORS[][40]
Initial value:
= {
"THAT CANNOT BE UNDERSTOOD",
"TRY GOING THERE INSTEAD",
"THAT CAN'T BE DONE",
"MICKEY WOULDN'T WANT TO DO THAT!",
"WHICH DIRECTION?",
"THAT DOESN'T MAKE SENSE!",
"MICKEY WOULDN'T WANT TO DO THAT!"
}

◆ IDS_MSA_INSERT_DISK

const char Agi::IDS_MSA_INSERT_DISK[][40]
Initial value:
= {
"Please insert disk 1 and press any key", "Please insert disk 2 and press any key"
}

◆ IDS_MSA_NAME_OBJ

const char Agi::IDS_MSA_NAME_OBJ[][9]
Initial value:
= {
"rok1", "wrench", "scale", "cbar", "bone", "glasses", "deskstuf", "raft",
"scarf", "flashlit", "rope", "rok1", "scarfc64", "rok2", "rock35", "earthw",
"venw", "trw", "merw", "titw", "plw", "iow", "mrw", "obw", "spw", "xl31",
"xl31e", "xl32", "xl32e", "xl33", "xl33e", "crys1"
}

◆ IDI_MSA_XTAL_ROOM_XY

const int Agi::IDI_MSA_XTAL_ROOM_XY[9][3]
Initial value:
= {
{ 155 , 14, 76},
{ 39 , 74, 80},
{ 64 , 70, 27},
{ 72 , 123, 64},
{ 89 , 110, 115},
{ 100 , 60, 104},
{ 110 , 56, 54},
{ 132 , 107, 100},
{ 145 , 90, 4}
}

◆ IDS_MSA_NAME_DAT

const char Agi::IDS_MSA_NAME_DAT[][13]
Initial value:
= {
"earth.dat", "venus.dat", "neptune.dat", "mercury.dat", "saturn.dat",
"pluto.dat", "jupiter.dat", "mars.dat", "uranus.dat", "spacship.dat"
}

◆ IDS_MSA_NAME_PLANET

const char Agi::IDS_MSA_NAME_PLANET[][10]
Initial value:
= {
"EARTH", "VENUS", "TRITON", "MERCURY", "TITAN",
"PLUTO", "IO", "MARS", "OBERON"
}

◆ IDS_MSA_NAME_PLANET_2

const char Agi::IDS_MSA_NAME_PLANET_2[][10]
Initial value:
= {
"EARTH", "VENUS", "NEPTUNE", "MERCURY", "SATURN",
"PLUTO", "JUPITER", "MARS", "URANUS"
}

◆ IDS_MSA_ADDR_PLANET

const char Agi::IDS_MSA_ADDR_PLANET[][7]
Initial value:
= {
"OB", "B", "OOBBB", "O", "OOBB",
"OOOBBB", "OBB", "OOB", "OOOBB"
}

◆ IDI_MSA_HOME_PLANET

const int Agi::IDI_MSA_HOME_PLANET[]
Initial value:
= {
17 , 33 , 49 , 76 ,
87 , 95 , 115 , 123 ,
137
}

◆ IDI_MSA_SHIP_PLANET

const int Agi::IDI_MSA_SHIP_PLANET[]
Initial value:
= {
0, 146 , 147 , 148 , 149 ,
150 , 151 , 152 , 153
}

◆ IDS_MSA_NAME_ITEM

const char Agi::IDS_MSA_NAME_ITEM[][15]
Initial value:
= {
"A FLASHLIGHT", "A ROPE ", "A BONE ", "A LETTER", "A CROWBAR", "A WRENCH",
"A MATTRESS", "A SCARF", "SUNGLASSES", "A SCALE ", "A ROCK "
}

◆ IDO_MSA_HIDDEN_MSG

const int Agi::IDO_MSA_HIDDEN_MSG[]
Initial value:
= {
0x8C44, 0x8C83, 0x8D23, 0x8D97, 0x8E2A
}

◆ IDO_MSA_GAME_OVER

const int Agi::IDO_MSA_GAME_OVER[]
Initial value:
= {
0x7914, 0x7978, 0x7A17, 0x7A94, 0x7B04, 0x7B8F, 0x7BEB, 0x7C79
}

◆ IDO_MSA_SAVE_GAME

const int Agi::IDO_MSA_SAVE_GAME[]
Initial value:
= {
0x73FA, 0x7436, 0x746C, 0x74E9, 0x75F6, 0x766A, 0x758B
}

◆ IDO_MSA_LOAD_GAME

const int Agi::IDO_MSA_LOAD_GAME[]
Initial value:
= {
0x76CE, 0x770B, 0x7777
}

◆ IDO_MSA_AIR_SUPPLY

const int Agi::IDO_MSA_AIR_SUPPLY[]
Initial value:
= {
0x7D10, 0x7D31, 0x7D51, 0x7D9B
}

◆ IDO_MSA_PLANET_INFO

const int Agi::IDO_MSA_PLANET_INFO[9][4]
Initial value:
= {
{0x6313, 0x63B2, 0x6449, 0},
{0x61EB, 0x6288, 0, 0},
{0x6B64, 0x6C06, 0x6CA3, 0},
{0x609B, 0x612C, 0x61CA, 0},
{0x6879, 0x6916, 0x6984, 0},
{0x6CCF, 0x6D72, 0x6E10, 0},
{0x667C, 0x6714, 0x67B1, 0x684E},
{0x6471, 0x650F, 0x65AD, 0x6651},
{0x69C3, 0x6A62, 0x6B00, 0}
}

◆ IDO_MSA_NEXT_PIECE

const int Agi::IDO_MSA_NEXT_PIECE[9][5]
Initial value:
= {
{0, 0, 0, 0, 0},
{0x4DCC, 0x4E20, 0x4E64, 0x4E9E, 0x4F0B},
{0x5900, 0x599B, 0x5A07, 0x5A8E, 0x5B07},
{0x4F57, 0x4FA3, 0x4FF1, 0x5056, 0x50BD},
{0x5471, 0x54DF, 0x5548, 0x55C2, 0x562A},
{0x5B78, 0x5BB6, 0x5C29, 0x5C76, 0x5CE1},
{0x526B, 0x52DA, 0x5340, 0x53A1, 0x540C},
{0x50F6, 0x512C, 0x5170, 0x51D5, 0x5228},
{0x56AA, 0x571C, 0x579E, 0x5807, 0x5875}
}