Difference between revisions of "Kyra/Opcodes"

From ScummVM :: Wiki
Jump to navigation Jump to search
(initial page)
 
m
Line 2: Line 2:


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


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

Revision as of 20:22, 6 June 2005

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.

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?