EnglishРусский  

   ..

   cmdlist.c

   cmdlist.g

   cmdlist.h

   ge.h

   geasm.c

   geload.c

   gesave.c

Реклама

Инсталлятор CreateInstall
Бесплатные и коммерческие инсталляторы

source\src\bytecode\cmdlist.h
  1 /******************************************************************************
  2 *
  3 * Copyright (C) 2006, The Gentee Group. All rights reserved.
  4 * This file is part of the Gentee open source project <http://www.gentee.com>.
  5 *
  6 * THIS FILE IS PROVIDED UNDER THE TERMS OF THE GENTEE LICENSE ("AGREEMENT").
  7 * ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE CONSTITUTES RECIPIENTS
  8 * ACCEPTANCE OF THE AGREEMENT.
  9 *
 10 * cmdlist_h 17.02.2009 0.0.A.
 11 *
 12 * Author: Generated with 'cmdlist' program
 13 *
 14 * Summary: This file contains a list of the embedded byte-code commands.
 15 *
 16 ******************************************************************************/
 17 
 18 #ifndef _CMDLIST_
 19 #define _CMDLIST_
 20 
 21    #ifdef __cplusplus
 22       extern "C" {
 23    #endif // __cplusplus
 24 
 25 #include "../common/types.h"
 26 
 27 #define  CMDCOUNT  236
 28 #define  STACK_COUNT  218
 29 
 30 enum {
 31    CNone,        //   0x0,  0 Error command
 32    TInt,         //   0x1,  1 int type
 33    TUint,        //   0x2,  2 uint type
 34    TByte,        //   0x3,  3 byte type
 35    TUbyte,       //   0x4,  4 ubyte type
 36    TShort,       //   0x5,  5 short type
 37    TUshort,      //   0x6,  6 ushort type
 38    TFloat,       //   0x7,  7 float type
 39    TDouble,      //   0x8,  8 double type
 40    TLong,        //   0x9,  9 long type
 41    TUlong,       //   0xA,  10 ulong type
 42    TReserved,    //   0xB,  11 reserved type
 43    TBuf,         //   0xC,  12 buf type
 44    TStr,         //   0xD,  13 str type
 45    TArr,         //   0xE,  14 arr type
 46    TCollection,  //   0xF,  15 collection type
 47    TAny,         //  0x10,  16 any type
 48    TFordata,     //  0x11,  17 foreach type
 49    CNop,         //  0x12,  18 The command does nothing
 50    CGoto,        //  0x13,  19 The unconditional jump.
 51    CGotonocls,   //  0x14,  20 The unconditional jump without clearing stack.
 52    CIfze,        //  0x15,  21 The conditional jump
 53    CIfznocls,    //  0x16,  22 The conditional jump without clearing stack
 54    CIfnze,       //  0x17,  23 The conditional jump
 55    CIfnznocls,   //  0x18,  24 The conditional jump without clearing stack.
 56    CByload,      //  0x19,  25 The next ubyte push into stack. GE only
 57    CShload,      //  0x1A,  26 The next ushort push into stack. GE only
 58    CDwload,      //  0x1B,  27 The next uint push into stack.
 59    CCmdload,     //  0x1C,  28 The next ID push into stack.
 60    CResload,     //  0x1D,  29 The next ID (resource) push into stack.
 61    CQwload,      //  0x1E,  30 The next ulong push into stack.
 62    CDwsload,     //  0x1F,  31 The next uints ( cmd 1 ) ( cmd 2 ) push into the stack
 63    CVarload,     //  0x20,  32 Load the value of parameter or variable with number ( cmd 1)
 64    CVarptrload,  //  0x21,  33 Load the pointer to value of parameter or variable with number ( cmd 1)
 65    CDatasize,    //  0x22,  34 Load the pointer to the next data and the size
 66    CLoglongtrue, //  0x23,  35 Return 1 if ulong in stack is not zero
 67    CLognot,      //  0x24,  36 Logical not
 68    CLoglongnot,  //  0x25,  37 Logical NOT for long ulong
 69    CDup,         //  0x26,  38 Duplicate top value
 70    CDuplong,     //  0x27,  39 Duplicate two top value
 71    CTop,         //  0x28,  40 Return the pointer to top
 72    CPop,         //  0x29,  41 Delete the top value
 73    CGetUB,       //  0x2A,  42  * ( pubyte ) 
 74    CGetB,        //  0x2B,  43  * ( pbyte ) 
 75    CGetUS,       //  0x2C,  44  * ( pushort ) 
 76    CGetS,        //  0x2D,  45  * ( pshort ) 
 77    CGetI,        //  0x2E,  46  * ( puint && pint && float ) 
 78    CGetL,        //  0x2F,  47  * ( pulong && plong && double ) 
 79    CSetUB,       //  0x30,  48  * ( pubyte ) = 
 80    CSetB,        //  0x31,  49  * ( pbyte ) = 
 81    CSetUS,       //  0x32,  50  * ( pushort ) = 
 82    CSetS,        //  0x33,  51  * ( pshort ) = 
 83    CSetI,        //  0x34,  52  * ( puint && pint && float ) = 
 84    CSetL,        //  0x35,  53  * ( pulong && plong && double ) = 
 85    CAddUIUI,     //  0x36,  54  + 
 86    CSubUIUI,     //  0x37,  55  - 
 87    CMulUIUI,     //  0x38,  56  * 
 88    CDivUIUI,     //  0x39,  57  / 
 89    CModUIUI,     //  0x3A,  58  % 
 90    CAndUIUI,     //  0x3B,  59  & 
 91    COrUIUI,      //  0x3C,  60  | 
 92    CXorUIUI,     //  0x3D,  61  ^ 
 93    CLeftUIUI,    //  0x3E,  62  << 
 94    CRightUIUI,   //  0x3F,  63  >> 
 95    CLessUIUI,    //  0x40,  64  < 
 96    CGreaterUIUI, //  0x41,  65  > 
 97    CEqUIUI,      //  0x42,  66  == 
 98    CNotUI,       //  0x43,  67  ~ 
 99    CIncLeftUI,   //  0x44,  68  ++i 
100    CIncRightUI,  //  0x45,  69  i++ 
101    CDecLeftUI,   //  0x46,  70  --i 
102    CDecRightUI,  //  0x47,  71  i-- 
103    CAddUI,       //  0x48,  72  += 
104    CSubUI,       //  0x49,  73  -= 
105    CMulUI,       //  0x4A,  74  *= 
106    CDivUI,       //  0x4B,  75  /= 
107    CModUI,       //  0x4C,  76  %= 
108    CAndUI,       //  0x4D,  77  &= 
109    COrUI,        //  0x4E,  78  |= 
110    CXorUI,       //  0x4F,  79  ^= 
111    CLeftUI,      //  0x50,  80  <<= 
112    CRightUI,     //  0x51,  81  >>= 
113    CVarsInit,    //  0x52,  82 Initialize variables in block cmd1 
114    CGetText,     //  0x53,  83 Get current output of text function
115    CSetText,     //  0x54,  84 Print string to current output of text function
116    CPtrglobal,   //  0x55,  85 Get to the global variable
117    CSubcall,     //  0x56,  86 Call a subfunc cmd 1 - goto
118    CSubret,      //  0x57,  87 The number of returned uint cmd 1
119    CSubpar,      //  0x58,  88 Parameters of subfunc. cmd 1 - Set block
120    CSubreturn,   //  0x59,  89 Return from a subfunc
121    CCmdcall,     //  0x5A,  90 Call a funcion
122    CCallstd,     //  0x5B,  91 Call a stdcall or cdecl funcion
123    CReturn,      //  0x5C,  92 Return from the function.
124    CAsm,         //  0x5D,  93 Assembler
125    CDbgTrace,    //  0x5E,  94 Debug line tracing
126    CDbgFunc,     //  0x5F,  95 Debug func entering
127    CMulII,       //  0x60,  96  * 
128    CDivII,       //  0x61,  97  / 
129    CModII,       //  0x62,  98  % 
130    CLeftII,      //  0x63,  99  << 
131    CRightII,     //  0x64,  100  >> 
132    CSignI,       //  0x65,  101  change sign 
133    CLessII,      //  0x66,  102  < 
134    CGreaterII,   //  0x67,  103  > 
135    CMulI,        //  0x68,  104  *= 
136    CDivI,        //  0x69,  105  /= 
137    CModI,        //  0x6A,  106  %= 
138    CLeftI,       //  0x6B,  107  <<= 
139    CRightI,      //  0x6C,  108  >>= 
140    CMulB,        //  0x6D,  109  *= 
141    CDivB,        //  0x6E,  110  /= 
142    CModB,        //  0x6F,  111  %= 
143    CLeftB,       //  0x70,  112  <<= 
144    CRightB,      //  0x71,  113  >>= 
145    CMulS,        //  0x72,  114  *= 
146    CDivS,        //  0x73,  115  /= 
147    CModS,        //  0x74,  116  %= 
148    CLeftS,       //  0x75,  117  <<= 
149    CRightS,      //  0x76,  118  >>= 
150    Cd2f,         //  0x77,  119 double 2 float
151    Cd2i,         //  0x78,  120 double 2 int
152    Cd2l,         //  0x79,  121 double 2 long
153    Cf2d,         //  0x7A,  122 float 2 double
154    Cf2i,         //  0x7B,  123 float 2 int
155    Cf2l,         //  0x7C,  124 float 2 long
156    Ci2d,         //  0x7D,  125 int 2 double
157    Ci2f,         //  0x7E,  126 int 2 float
158    Ci2l,         //  0x7F,  127 int 2 long
159    Cl2d,         //  0x80,  128 long 2 double
160    Cl2f,         //  0x81,  129 long 2 float
161    Cl2i,         //  0x82,  130 long 2 int
162    Cui2d,        //  0x83,  131 uint 2 double
163    Cui2f,        //  0x84,  132 uint 2 float
164    Cui2l,        //  0x85,  133 uint 2 long
165    CAddULUL,     //  0x86,  134 +
166    CSubULUL,     //  0x87,  135 -
167    CMulULUL,     //  0x88,  136 *
168    CDivULUL,     //  0x89,  137 /
169    CModULUL,     //  0x8A,  138 %
170    CAndULUL,     //  0x8B,  139 &
171    COrULUL,      //  0x8C,  140 |
172    CXorULUL,     //  0x8D,  141 ^
173    CLeftULUL,    //  0x8E,  142 <<
174    CRightULUL,   //  0x8F,  143 >>
175    CLessULUL,    //  0x90,  144 <
176    CGreaterULUL, //  0x91,  145 >
177    CEqULUL,      //  0x92,  146 ==
178    CNotUL,       //  0x93,  147 ~
179    CIncLeftUL,   //  0x94,  148 ++
180    CIncRightUL,  //  0x95,  149 ++
181    CDecLeftUL,   //  0x96,  150 --
182    CDecRightUL,  //  0x97,  151 --
183    CAddUL,       //  0x98,  152 +=
184    CSubUL,       //  0x99,  153 -=
185    CMulUL,       //  0x9A,  154 *=
186    CDivUL,       //  0x9B,  155 /=
187    CModUL,       //  0x9C,  156 %
188    CAndUL,       //  0x9D,  157 &=
189    COrUL,        //  0x9E,  158 |=
190    CXorUL,       //  0x9F,  159 &=
191    CLeftUL,      //  0xA0,  160 <<=
192    CRightUL,     //  0xA1,  161 >>=
193    CMulLL,       //  0xA2,  162 *
194    CDivLL,       //  0xA3,  163 /
195    CModLL,       //  0xA4,  164 %
196    CLeftLL,      //  0xA5,  165 <<=
197    CRightLL,     //  0xA6,  166 >>=
198    CSignL,       //  0xA7,  167 sign
199    CLessLL,      //  0xA8,  168 <
200    CGreaterLL,   //  0xA9,  169 >
201    CMulL,        //  0xAA,  170 *=
202    CDivL,        //  0xAB,  171 /=
203    CModL,        //  0xAC,  172 %=
204    CLeftL,       //  0xAD,  173 <<=
205    CRightL,      //  0xAE,  174 >>=
206    CAddFF,       //  0xAF,  175 +
207    CSubFF,       //  0xB0,  176 -
208    CMulFF,       //  0xB1,  177 *
209    CDivFF,       //  0xB2,  178 /
210    CSignF,       //  0xB3,  179 sign
211    CLessFF,      //  0xB4,  180 <
212    CGreaterFF,   //  0xB5,  181 >
213    CEqFF,        //  0xB6,  182 ==
214    CIncLeftF,    //  0xB7,  183 ++
215    CIncRightF,   //  0xB8,  184 ++
216    CDecLeftF,    //  0xB9,  185 --
217    CDecRightF,   //  0xBA,  186 --
218    CAddF,        //  0xBB,  187 +=
219    CSubF,        //  0xBC,  188 -=
220    CMulF,        //  0xBD,  189 *=
221    CDivF,        //  0xBE,  190 /=
222    CAddDD,       //  0xBF,  191 +
223    CSubDD,       //  0xC0,  192 -
224    CMulDD,       //  0xC1,  193 *
225    CDivDD,       //  0xC2,  194 /
226    CSignD,       //  0xC3,  195 sign
227    CLessDD,      //  0xC4,  196 <
228    CGreaterDD,   //  0xC5,  197 >
229    CEqDD,        //  0xC6,  198 ==
230    CIncLeftD,    //  0xC7,  199 ++
231    CIncRightD,   //  0xC8,  200 ++
232    CDecLeftD,    //  0xC9,  201 --
233    CDecRightD,   //  0xCA,  202 --
234    CAddD,        //  0xCB,  203 +=
235    CSubD,        //  0xCC,  204 -=
236    CMulD,        //  0xCD,  205 *=
237    CDivD,        //  0xCE,  206 /=
238    CIncLeftUB,   //  0xCF,  207 ++
239    CIncRightUB,  //  0xD0,  208 ++
240    CDecLeftUB,   //  0xD1,  209 --
241    CDecRightUB,  //  0xD2,  210 --
242    CAddUB,       //  0xD3,  211 +=
243    CSubUB,       //  0xD4,  212 -=
244    CMulUB,       //  0xD5,  213 *=
245    CDivUB,       //  0xD6,  214 /=
246    CModUB,       //  0xD7,  215 %=
247    CAndUB,       //  0xD8,  216 &=
248    COrUB,        //  0xD9,  217 |=
249    CXorUB,       //  0xDA,  218 ^=
250    CLeftUB,      //  0xDB,  219 <<=
251    CRightUB,     //  0xDC,  220 >>=
252    CIncLeftUS,   //  0xDD,  221 ++
253    CIncRightUS,  //  0xDE,  222 ++
254    CDecLeftUS,   //  0xDF,  223 --
255    CDecRightUS,  //  0xE0,  224 --
256    CAddUS,       //  0xE1,  225 +=
257    CSubUS,       //  0xE2,  226 -=
258    CMulUS,       //  0xE3,  227 *=
259    CDivUS,       //  0xE4,  228 /=
260    CModUS,       //  0xE5,  229 %=
261    CAndUS,       //  0xE6,  230 &=
262    COrUS,        //  0xE7,  231 |=
263    CXorUS,       //  0xE8,  232 ^=
264    CLeftUS,      //  0xE9,  233 <<=
265    CRightUS,     //  0xEA,  234 >>=
266    CCollectadd,  //  0xEB,  235 Run-time loading collection
267 
268 };
269 
270 extern const ubyte shifts[];
271 extern const ubyte embtypes[];
272 
273    #ifdef __cplusplus
274       }
275    #endif // __cplusplus
276 
277 #endif // _CMDLIST_
278 
Редактировать