]>
Commit | Line | Data |
---|---|---|
3d6c6501 SEF |
1 | /* |
2 | * Copyright (c) 1983 Regents of the University of California. | |
3 | * All rights reserved. | |
4 | * | |
5 | * Redistribution and use in source and binary forms are permitted | |
6 | * provided that: (1) source distributions retain this entire copyright | |
7 | * notice and comment, and (2) distributions including binaries display | |
8 | * the following acknowledgement: ``This product includes software | |
9 | * developed by the University of California, Berkeley and its contributors'' | |
10 | * in the documentation or other materials provided with the distribution | |
11 | * and in all advertising materials mentioning features or use of this | |
12 | * software. Neither the name of the University nor the names of its | |
13 | * contributors may be used to endorse or promote products derived | |
14 | * from this software without specific prior written permission. | |
15 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR | |
16 | * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED | |
17 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | |
18 | * | |
12516a37 | 19 | * @(#)vax.h 5.4 (Berkeley) 6/1/90 |
3d6c6501 SEF |
20 | */ |
21 | ||
22 | /* | |
12516a37 | 23 | * opcode of the `calls' instruction |
3d6c6501 SEF |
24 | */ |
25 | #define CALLS 0xfb | |
26 | ||
27 | /* | |
12516a37 KR |
28 | * offset (in bytes) of the code from the entry address of a routine. |
29 | * (see asgnsamples for use and explanation.) | |
3d6c6501 | 30 | */ |
5489fcc3 KR |
31 | #define OFFSET_TO_CODE 2 |
32 | #define UNITS_TO_CODE (OFFSET_TO_CODE / sizeof(UNIT)) | |
3d6c6501 SEF |
33 | |
34 | /* | |
12516a37 | 35 | * register for pc relative addressing |
3d6c6501 SEF |
36 | */ |
37 | #define PC 0xf | |
38 | ||
12516a37 KR |
39 | enum opermodes |
40 | { | |
41 | literal, indexed, reg, regdef, autodec, autoinc, autoincdef, | |
3d6c6501 SEF |
42 | bytedisp, bytedispdef, worddisp, worddispdef, longdisp, longdispdef, |
43 | immediate, absolute, byterel, bytereldef, wordrel, wordreldef, | |
44 | longrel, longreldef | |
12516a37 KR |
45 | }; |
46 | typedef enum opermodes operandenum; | |
3d6c6501 | 47 | |
12516a37 KR |
48 | struct modebyte |
49 | { | |
50 | unsigned int regfield:4; | |
51 | unsigned int modefield:4; | |
52 | }; |