Kyra/Opcodes

From ScummVM :: Wiki
< Kyra
Revision as of 12:51, 10 June 2005 by Clem (talk | contribs)
Jump to navigation Jump to search

This page is a work-in-progress document listing vm opcodes of the Kyrandia games. Unless otherwise noted, these opcodes are based on Kyrandia 1. Cyx created the list of Cmd functions, clem and Lordhoto will try to fill in parameters and usage notes.

Opcodes

 44 = push
 45 = ? compare [sp], [xx] ?
 49 = ? copy [xx], [sp] ?
 4C = add sp,xx   ; what would be dec sp,xx? maybe 4B or 4E?
 4E = execute command (see below)

Commands

 01              3 arguments     ; output string std color? (unk, unk, stringid) (see also 34)
 0B              4               ; walk to coordinates (unk, x,x,y) Cmd_Walk_Player_To_Point ?
 0D              4               ; remove item from screen? (removes note from desk)
 0E              1               ; pick up item (ie mousecursor=item id)
 29              4               ; play WSA file? (or just load it? coords?)
 34              4               ; output string defined color? (color, unk, unk, stringid) (see also 01)
 35              0               ; restore text background?
 36              0               ; disable mouse cursor
 37              0               ; enable mouse cursor
 8B              2               ; set room name/status text (unk, stringID)
 91              0               ; copyprotection box pops up
 93              0               ; Brandon turns to stone anim?