11d8d0108Sdist /* 21d8d0108Sdist * Copyright (c) 1983 Regents of the University of California. 3*40159e57Sbostic * All rights reserved. 41d8d0108Sdist * 5*40159e57Sbostic * Redistribution and use in source and binary forms are permitted 6*40159e57Sbostic * provided that this notice is preserved and that due credit is given 7*40159e57Sbostic * to the University of California at Berkeley. The name of the University 8*40159e57Sbostic * may not be used to endorse or promote products derived from this 9*40159e57Sbostic * software without specific prior written permission. This software 10*40159e57Sbostic * is provided ``as is'' without express or implied warranty. 11*40159e57Sbostic * 12*40159e57Sbostic * @(#)vax.h 5.2 (Berkeley) 05/05/88 131d8d0108Sdist */ 146e0a246cSmckusick 156e0a246cSmckusick /* 166e0a246cSmckusick * opcode of the `calls' instruction 176e0a246cSmckusick */ 186e0a246cSmckusick #define CALLS 0xfb 196e0a246cSmckusick 206e0a246cSmckusick /* 216e0a246cSmckusick * offset (in bytes) of the code from the entry address of a routine. 226e0a246cSmckusick * (see asgnsamples for use and explanation.) 236e0a246cSmckusick */ 246e0a246cSmckusick #define OFFSET_OF_CODE 2 25407b5cabSmckusick #define UNITS_TO_CODE (OFFSET_OF_CODE / sizeof(UNIT)) 266e0a246cSmckusick 276e0a246cSmckusick /* 286e0a246cSmckusick * register for pc relative addressing 296e0a246cSmckusick */ 306e0a246cSmckusick #define PC 0xf 316e0a246cSmckusick 326e0a246cSmckusick enum opermodes { 336e0a246cSmckusick literal, indexed, reg, regdef, autodec, autoinc, autoincdef, 346e0a246cSmckusick bytedisp, bytedispdef, worddisp, worddispdef, longdisp, longdispdef, 356e0a246cSmckusick immediate, absolute, byterel, bytereldef, wordrel, wordreldef, 366e0a246cSmckusick longrel, longreldef 376e0a246cSmckusick }; 386e0a246cSmckusick typedef enum opermodes operandenum; 396e0a246cSmckusick 406e0a246cSmckusick struct modebyte { 416e0a246cSmckusick unsigned int regfield:4; 426e0a246cSmckusick unsigned int modefield:4; 436e0a246cSmckusick }; 446e0a246cSmckusick 45