optimizations and bugfixes for finally
[swftools.git] / lib / action / action.h
1 /* action.h
2  *
3  * $Id: action.h,v 1.1 2004/02/02 10:12:34 kramm Exp $
4  * 
5  * Notice: This header file contains declarations of functions and types that
6  * are just used internally. All library functions and types that are supposed
7  * to be publicly accessable are defined in ./src/ming.h.
8  */
9
10 #ifndef SWF_COMPILER_ACTION_H_INCLUDED
11 #define SWF_COMPILER_ACTION_H_INCLUDED
12
13 #include "ming.h"
14
15 enum
16 {
17   SWFACTION_END        = 0x00,
18
19 /* v3 actions */
20   SWFACTION_NEXTFRAME     = 0x04,
21   SWFACTION_PREVFRAME     = 0x05,
22   SWFACTION_PLAY          = 0x06,
23   SWFACTION_STOP          = 0x07,
24   SWFACTION_TOGGLEQUALITY = 0x08,
25   SWFACTION_STOPSOUNDS    = 0x09,
26   SWFACTION_GOTOFRAME     = 0x81, /* >= 0x80 means record has args */
27   SWFACTION_GETURL        = 0x83,
28   SWFACTION_WAITFORFRAME  = 0x8A,
29   SWFACTION_SETTARGET     = 0x8B,
30   SWFACTION_GOTOLABEL     = 0x8C,
31
32 /* v4 actions */
33   SWFACTION_ADD                     = 0x0A,
34   SWFACTION_SUBTRACT                = 0x0B,
35   SWFACTION_MULTIPLY                = 0x0C,
36   SWFACTION_DIVIDE                  = 0x0D,
37   SWFACTION_EQUAL                   = 0x0E,
38   SWFACTION_LESSTHAN                = 0x0F,
39   SWFACTION_LOGICALAND              = 0x10,
40   SWFACTION_LOGICALOR               = 0x11,
41   SWFACTION_LOGICALNOT              = 0x12,
42   SWFACTION_STRINGEQ                = 0x13,
43   SWFACTION_STRINGLENGTH            = 0x14,
44   SWFACTION_SUBSTRING               = 0x15,
45   SWFACTION_POP                     = 0x17,
46   SWFACTION_INT                     = 0x18,
47   SWFACTION_GETVARIABLE             = 0x1C,
48   SWFACTION_SETVARIABLE             = 0x1D,
49   SWFACTION_SETTARGETEXPRESSION     = 0x20,
50   SWFACTION_STRINGCONCAT            = 0x21,
51   SWFACTION_GETPROPERTY             = 0x22,
52   SWFACTION_SETPROPERTY             = 0x23,
53   SWFACTION_DUPLICATECLIP           = 0x24,
54   SWFACTION_REMOVECLIP              = 0x25,
55   SWFACTION_TRACE                   = 0x26,
56   SWFACTION_STARTDRAGMOVIE          = 0x27,
57   SWFACTION_STOPDRAGMOVIE           = 0x28,
58   SWFACTION_STRINGCOMPARE           = 0x29,
59   SWFACTION_RANDOM                  = 0x30,
60   SWFACTION_MBLENGTH                = 0x31,
61   SWFACTION_ORD                     = 0x32,
62   SWFACTION_CHR                     = 0x33,
63   SWFACTION_GETTIMER                = 0x34,
64   SWFACTION_MBSUBSTRING             = 0x35,
65   SWFACTION_MBORD                   = 0x36,
66   SWFACTION_MBCHR                   = 0x37,
67
68   SWFACTION_WAITFORFRAMEEXPRESSION  = 0x8D,
69   SWFACTION_PUSHDATA                = 0x96,
70   SWFACTION_BRANCHALWAYS            = 0x99,
71   SWFACTION_GETURL2                 = 0x9A,
72   SWFACTION_BRANCHIFTRUE            = 0x9D,
73   SWFACTION_CALLFRAME               = 0x9E,
74   SWFACTION_GOTOEXPRESSION          = 0x9F,
75
76 /* v5 actions */
77   SWFACTION_DELETEVAR               = 0x3A,/*not used yet*/
78   SWFACTION_DELETE                  = 0x3B,
79   SWFACTION_VAREQUALS               = 0x3C,
80   SWFACTION_CALLFUNCTION            = 0x3D,
81   SWFACTION_RETURN                  = 0x3E,
82   SWFACTION_MODULO                  = 0x3F,
83   SWFACTION_NEW                     = 0x40,
84   SWFACTION_VAR                     = 0x41,
85   SWFACTION_INITARRAY               = 0x42,
86   SWFACTION_INITOBJECT              = 0x43,
87   SWFACTION_TYPEOF                  = 0x44,
88   SWFACTION_TARGETPATH              = 0x45,
89   SWFACTION_ENUMERATE               = 0x46,
90   SWFACTION_NEWADD                  = 0x47,
91   SWFACTION_NEWLESSTHAN             = 0x48,
92   SWFACTION_NEWEQUALS               = 0x49,
93   SWFACTION_TONUMBER                = 0x4A,
94   SWFACTION_TOSTRING                = 0x4B,
95   SWFACTION_DUP                     = 0x4C,
96   SWFACTION_SWAP                    = 0x4D,
97   SWFACTION_GETMEMBER               = 0x4E,
98   SWFACTION_SETMEMBER               = 0x4F,
99   SWFACTION_INCREMENT               = 0x50,
100   SWFACTION_DECREMENT               = 0x51,
101   SWFACTION_CALLMETHOD              = 0x52,
102   SWFACTION_NEWMETHOD               = 0x53,/*not used yet*/
103   SWFACTION_INSTANCEOF              = 0x54,
104   SWFACTION_ENUM2                   = 0x55,/*not used yet*/
105   SWFACTION_BITWISEAND              = 0x60,
106   SWFACTION_BITWISEOR               = 0x61,
107   SWFACTION_BITWISEXOR              = 0x62,
108   SWFACTION_SHIFTLEFT               = 0x63,
109   SWFACTION_SHIFTRIGHT              = 0x64,
110   SWFACTION_SHIFTRIGHT2             = 0x65,
111   SWFACTION_STRICTEQ                = 0x66,
112   SWFACTION_CONSTANTPOOL            = 0x88,
113   SWFACTION_WITH                    = 0x94,
114   SWFACTION_DEFINEFUNCTION          = 0x9B,
115
116   SWFACTION_SETREGISTER             = 0x87
117 };
118
119 #endif /* SWF_COMPILER_ACTION_H_INCLUDED */