1*21966Sdist /* 2*21966Sdist * Copyright (c) 1983 Regents of the University of California. 3*21966Sdist * All rights reserved. The Berkeley software License Agreement 4*21966Sdist * specifies the terms and conditions for redistribution. 5*21966Sdist * 6*21966Sdist * @(#)vax.h 5.1 (Berkeley) 06/04/85 7*21966Sdist */ 811714Smckusick 911714Smckusick /* 1011714Smckusick * opcode of the `calls' instruction 1111714Smckusick */ 1211714Smckusick #define CALLS 0xfb 1311714Smckusick 1411714Smckusick /* 1511714Smckusick * offset (in bytes) of the code from the entry address of a routine. 1611714Smckusick * (see asgnsamples for use and explanation.) 1711714Smckusick */ 1811714Smckusick #define OFFSET_OF_CODE 2 1911806Smckusick #define UNITS_TO_CODE (OFFSET_OF_CODE / sizeof(UNIT)) 2011714Smckusick 2111714Smckusick /* 2211714Smckusick * register for pc relative addressing 2311714Smckusick */ 2411714Smckusick #define PC 0xf 2511714Smckusick 2611714Smckusick enum opermodes { 2711714Smckusick literal, indexed, reg, regdef, autodec, autoinc, autoincdef, 2811714Smckusick bytedisp, bytedispdef, worddisp, worddispdef, longdisp, longdispdef, 2911714Smckusick immediate, absolute, byterel, bytereldef, wordrel, wordreldef, 3011714Smckusick longrel, longreldef 3111714Smckusick }; 3211714Smckusick typedef enum opermodes operandenum; 3311714Smckusick 3411714Smckusick struct modebyte { 3511714Smckusick unsigned int regfield:4; 3611714Smckusick unsigned int modefield:4; 3711714Smckusick }; 3811714Smckusick 39