Commit | Line | Data |
---|---|---|
c0bc4ef7 DF |
1 | /* |
2 | * Copyright (c) 1983 Regents of the University of California. | |
ddb85eed | 3 | * All rights reserved. |
c0bc4ef7 | 4 | * |
6ecf3d85 | 5 | * %sccs.include.redist.c% |
ddb85eed | 6 | * |
6ecf3d85 | 7 | * @(#)vax.h 5.4 (Berkeley) %G% |
c0bc4ef7 | 8 | */ |
9ae42d58 KM |
9 | |
10 | /* | |
11 | * opcode of the `calls' instruction | |
12 | */ | |
13 | #define CALLS 0xfb | |
14 | ||
15 | /* | |
16 | * offset (in bytes) of the code from the entry address of a routine. | |
17 | * (see asgnsamples for use and explanation.) | |
18 | */ | |
19 | #define OFFSET_OF_CODE 2 | |
9b8e0da9 | 20 | #define UNITS_TO_CODE (OFFSET_OF_CODE / sizeof(UNIT)) |
9ae42d58 KM |
21 | |
22 | /* | |
23 | * register for pc relative addressing | |
24 | */ | |
25 | #define PC 0xf | |
26 | ||
27 | enum opermodes { | |
28 | literal, indexed, reg, regdef, autodec, autoinc, autoincdef, | |
29 | bytedisp, bytedispdef, worddisp, worddispdef, longdisp, longdispdef, | |
30 | immediate, absolute, byterel, bytereldef, wordrel, wordreldef, | |
31 | longrel, longreldef | |
32 | }; | |
33 | typedef enum opermodes operandenum; | |
34 | ||
35 | struct modebyte { | |
36 | unsigned int regfield:4; | |
37 | unsigned int modefield:4; | |
38 | }; | |
39 |