summaryrefslogblamecommitdiffstats
path: root/private/sdktools/masm/asmindex.h
blob: fcc52bf03f51da12f551ea76e02c3232ae1e2297 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
































































































































































































































































































































































































































































































                                                           
/* asmindex.h -- include file for microsoft 80x86 assembler
**
** microsoft (r) macro assembler
** copyright (c) microsoft corp 1986.  all rights reserved
**
** randy nevin
*/

/* indices of opcodes */

#define I_AAA           0
#define I_AAD           1
#define I_AAM           2
#define I_AAS           3
#define I_ADC           4
#define I_ADD           5
#define I_AND           6
#define I_CALL          7
#define I_CBW           8
#define I_CLC           9
#define I_CLD           10
#define I_CLI           11
#define I_CMC           12
#define I_CMP           13
#define I_CMPS          14
#define I_CMPSB         15
#define I_CMPSW         16
#define I_CWD           17
#define I_DAA           18
#define I_DAS           19
#define I_DEC           20
#define I_DIV           21
#define I_ESC           22
#define I_HLT           23
#define I_IDIV          24
#define I_IMUL          25
#define I_IN            26
#define I_INC           27
#define I_INT           28
#define I_INTO          29
#define I_IRET          30
#define I_JA            31
#define I_JAE           32
#define I_JB            33
#define I_JBE           34
#define I_JC            35
#define I_JCXZ          36
#define I_JE            37
#define I_JG            38
#define I_JGE           39
#define I_JL            40
#define I_JLE           41
#define I_JMP           42
#define I_JNA           43
#define I_JNAE          44
#define I_JNB           45
#define I_JNBE          46
#define I_JNC           47
#define I_JNE           48
#define I_JNG           49
#define I_JNGE          50
#define I_JNL           51
#define I_JNLE          52
#define I_JNO           53
#define I_JNP           54
#define I_JNS           55
#define I_JNZ           56
#define I_JO            57
#define I_JP            58
#define I_JPE           59
#define I_JPO           60
#define I_JS            61
#define I_JZ            62
#define I_LAHF          63
#define I_LEA           64
#define I_LES           65
#define I_LDS           66
#define I_LOCK          67
#define I_LODS          68
#define I_LODSB         69
#define I_LODSW         70
#define I_LOOP          71
#define I_LOOPE         72
#define I_LOOPNE        73
#define I_LOOPNZ        74
#define I_LOOPZ         75
#define I_MOV           76
#define I_MOVS          77
#define I_MOVSB         78
#define I_MOVSW         79
#define I_MUL           80
#define I_NEG           81
#define I_NOP           82
#define I_NOT           83
#define I_OR            84
#define I_OUT           85
#define I_POP           86
#define I_POPF          87
#define I_PUSH          88
#define I_PUSHF         89
#define I_RCL           90
#define I_RCR           91
#define I_REP           92
#define I_REPE          93
#define I_REPNE         94
#define I_REPNZ         95
#define I_REPZ          96
#define I_RET           97
#define I_ROL           98
#define I_ROR           99
#define I_SAHF          100
#define I_SAL           101
#define I_SAR           102
#define I_SBB           103
#define I_SCAS          104
#define I_SCASB         105
#define I_SCASW         106
#define I_SHL           107
#define I_SHR           108
#define I_STC           109
#define I_STD           110
#define I_STI           111
#define I_STOS          112
#define I_STOSB         113
#define I_STOSW         114
#define I_SUB           115
#define I_TEST          116
#define I_WAIT          117
#define I_XCHG          118
#define I_XLAT          119
#define I_XLATB         120
#define I_XOR           121
#define I_ARPL          122
#define I_BOUND         123
#define I_CLTS          124
#define I_ENTER         125
#define I_INS           126
#define I_INSB          127
#define I_INSW          128
#define I_LAR           129
#define I_LEAVE         130
#define I_LGDT          131
#define I_LIDT          132
#define I_LLDT          133
#define I_LMSW          134
#define I_LSL           135
#define I_LTR           136
#define I_OUTS          137
#define I_OUTSB         138
#define I_OUTSW         139
#define I_POPA          140
#define I_PUSHA         141
#define I_SGDT          142
#define I_SIDT          143
#define I_SLDT          144
#define I_SMSW          145
#define I_STR           146
#define I_VERR          147
#define I_VERW          148
#define I_F2XM1         149
#define I_FABS          150
#define I_FADD          151
#define I_FADDP         152
#define I_FBLD          153
#define I_FBSTP         154
#define I_FCHS          155
#define I_FCLEX         156
#define I_FCOM          157
#define I_FCOMP         158
#define I_FCOMPP        159
#define I_FDECSTP       160
#define I_FDISI         161
#define I_FDIV          162
#define I_FDIVP         163
#define I_FDIVR         164
#define I_FDIVRP        165
#define I_FENI          166
#define I_FFREE         167
#define I_FIADD         168
#define I_FICOM         169
#define I_FICOMP        170
#define I_FIDIV         171
#define I_FIDIVR        172
#define I_FILD          173
#define I_FIMUL         174
#define I_FINCSTP       175
#define I_FINIT         176
#define I_FIST          177
#define I_FISTP         178
#define I_FISUB         179
#define I_FISUBR        180
#define I_FLD           181
#define I_FLD1          182
#define I_FLDCW         183
#define I_FLDENV        184
#define I_FLDL2E        185
#define I_FLDL2T        186
#define I_FLDLG2        187
#define I_FLDLN2        188
#define I_FLDPI         189
#define I_FLDZ          190
#define I_FMUL          191
#define I_FMULP         192
#define I_FNCLEX        193
#define I_FNDISI        194
#define I_FNENI         195
#define I_FNINIT        196
#define I_FNOP          197
#define I_FNSAVE        198
#define I_FNSTCW        199
#define I_FNSTENV       200
#define I_FNSTSW        201
#define I_FPATAN        202
#define I_FPREM         203
#define I_FPTAN         204
#define I_FRNDINT       205
#define I_FRSTOR        206
#define I_FSAVE         207
#define I_FSCALE        208
#define I_FSQRT         209
#define I_FST           210
#define I_FSTCW         211
#define I_FSTENV        212
#define I_FSTP          213
#define I_FSTSW         214
#define I_FSETPM        215
#define I_FSUB          216
#define I_FSUBP         217
#define I_FSUBR         218
#define I_FSUBRP        219
#define I_FTST          220
#define I_FWAIT         221
#define I_FXAM          222
#define I_FXCH          223
#define I_FXTRACT       224
#define I_FYL2X         225
#define I_FYL2XP1       226
#define I_FNRSTOR       227

#ifdef V386

#define I_MOVSX         228
#define I_MOVZX         229
#define I_CWDE          230
#define I_CDQ           231
#define I_LFS           232
#define I_LGS           233
#define I_LSS           234
#define I_SHLD          235
#define I_SHRD          236
#define I_CMPSD         237
#define I_INSD          238
#define I_LODSD         239
#define I_MOVSD         240
#define I_OUTSD         241
#define I_SCASD         242
#define I_STOSD         243
#define I_BSF           244
#define I_BSR           245
#define I_BT            246
#define I_BTC           247
#define I_BTR           248
#define I_BTS           249
#define I_IBTS          250
#define I_XBTS          251
#define I_JECXZ         252
#define I_SETO          253
#define I_SETNO         254
#define I_SETB          255
#define I_SETNAE        256
#define I_SETNB         257
#define I_SETAE         258
#define I_SETE          259
#define I_SETZ          260
#define I_SETNE         261
#define I_SETNZ         262
#define I_SETBE         263
#define I_SETNA         264
#define I_SETNBE        265
#define I_SETA          266
#define I_SETS          267
#define I_SETNS         268
#define I_SETP          269
#define I_SETPE         270
#define I_SETNP         271
#define I_SETPO         272
#define I_SETL          273
#define I_SETNGE        274
#define I_SETC          275
#define I_SETNC         276
#define I_SETLE         277
#define I_SETNG         278
#define I_SETNL         279
#define I_SETGE         280
#define I_SETNLE        281
#define I_SETG          282
#define I_PUSHAD        283
#define I_POPAD         284
#define I_POPFD         285
#define I_PUSHFD        286
#define I_IRETD         287
#define I_FUCOM         288
#define I_FUCOMP        289
#define I_FUCOMPP       290
#define I_FPREM1        291
#define I_FCOS          292
#define I_FSIN          293
#define I_FSINCOS       294
#define I_RETN          295
#define I_RETF          296

#else

#define I_RETN          228
#define I_RETF          229

#endif

/* indices for size table */

#define I_BYTE          0
#define I_DWORD         1
#define I_FAR           2
#define I_NEAR          3
#define I_QWORD         4
#define I_TBYTE         5
#define I_WORD          6
#define I_FWORD         7
#define I_PROC          8


/* indices for first tokens */

#define I_TASSUME       0
#define I_TCOMMENT      1
#define I_TDB           2
#define I_TDD           3
#define I_TDQ           4
#define I_TDT           5
#define I_TDW           6
#define I_TELSE         7
#define I_TEND          8
#define I_TENDIF        9
#define I_TENDM         10
#define I_TERR          11
#define I_TERR1         12
#define I_TERR2         13
#define I_TERRB         14
#define I_TERRDEF       15
#define I_TERRDIF       16
#define I_TERRE         17
#define I_TERRNZ        18
#define I_TERRIDN       19
#define I_TERRNB        20
#define I_TERRNDEF      21
#define I_TEVEN         22
#define I_TEXITM        23
#define I_TEXTRN        24
#define I_TIF           25
#define I_TIF1          26
#define I_TIF2          27
#define I_TIFB          28
#define I_TIFDEF        29
#define I_TIFDIF        30
#define I_TIFE          31
#define I_TIFIDN        32
#define I_TIFNB         33
#define I_TIFNDEF       34
#define I_TINCLUDE      35
#define I_TIRP          36
#define I_TIRPC         37
#define I_TLOCAL        38
#define I_TNAME         39
#define I_TORG          40
#define I_TPAGE         41
#define I_TPUBLIC       42
#define I_TPURGE        43
#define I_TREPT         44
#define I_TSUBTTL       45
#define I_TTITLE        46
#define I_TCREF         47
#define I_TLALL         48
#define I_TLFCOND       49
#define I_TLIST         50
#define I_TRADIX        51
#define I_TSALL         52
#define I_TSFCOND       53
#define I_TTFCOND       54
#define I_TXALL         55
#define I_TXCREF        56
#define I_TXLIST        57
#define I_TOUT          58
#define I_TALIGN        59
#define I_T8086         60
#define I_T8087         61
#define I_T287          62
#define I_T186          63
#define I_T286C         64
#define I_T286P         65
#define I_TINCLIB       66
#define I_TMSTACK       67
#define I_TDOSSEG       68
#define I_TMODEL        69
#define I_TCODE         70
#define I_TDATA         71
#define I_TDATAQ        72
#define I_TCONST        73
#define I_TFARDATA      74
#define I_TFARDATAQ     75
#define I_TSEQ          76
#define I_TALPHA        77
#define I_TCOMM         78
#define I_TIFDIFI       79
#define I_TIFIDNI       80
#define I_TERRDIFI      81
#define I_TERRIDNI      82
#define I_TELSEIF       83
#define I_TELSEIF1      84
#define I_TELSEIF2      85
#define I_TELSEIFB      86
#define I_TELSEIFDEF    87
#define I_TELSEIFDIF    88
#define I_TELSEIFE      89
#define I_TELSEIFIDN    90
#define I_TELSEIFNB     91
#define I_TELSEIFNDEF   92
#define I_TELSEIFDIFI   93
#define I_TELSEIFIDNI   94
#define I_TFPO          99

#ifdef V386
#define I_T386C         95
#define I_T386P         96
#define I_T387          97
#define I_TDF           98
#endif

/* indices for second tokens */

#define I2_TDB          0
#define I2_TDD          1
#define I2_TDQ          2
#define I2_TDT          3
#define I2_TDW          4
#define I2_TENDP        5
#define I2_TENDS        6
#define I2_TEQU         7
#define I2_TSUBSTR      8
#define I2_TCATSTR      9
#define I2_TSIZESTR     10
#define I2_TINSTR       11
#define I2_TGROUP       12
#define I2_TLABEL       13
#define I2_TMACRO       14
#define I2_TPROC        15
#define I2_TRECORD      16
#define I2_TSEGMENT     17
#define I2_TSTRUC       18

#ifdef V386
#define I2_TDF          19
#endif

/* indices for segment attributes */

#define IS_AT           0
#define IS_BYTE         1
#define IS_COMMON       2
#define IS_MEMORY       3
#define IS_PAGE         4
#define IS_PARA         5
#define IS_PUBLIC       6
#define IS_STACK        7
#define IS_WORD         8
#define IS_DWORD        9

#ifdef V386
#define IS_USE32        10
#define IS_USE16        11
#endif