Added ip_spec.h
This commit is contained in:
parent
9b68f0e322
commit
6632781f95
1
h/.distr
1
h/.distr
|
@ -24,3 +24,4 @@ ocm_chan.h
|
||||||
ocm_parco.h
|
ocm_parco.h
|
||||||
ocm_proc.h
|
ocm_proc.h
|
||||||
m2_traps.h
|
m2_traps.h
|
||||||
|
ip_spec.h
|
||||||
|
|
40
h/ip_spec.h
Normal file
40
h/ip_spec.h
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
/*
|
||||||
|
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
|
||||||
|
* See the copyright notice in the ACK home directory, in the file "Copyright".
|
||||||
|
*/
|
||||||
|
/* Contents of flags used when describing interpreter opcodes */
|
||||||
|
|
||||||
|
#define RCS_IP "$Header$"
|
||||||
|
|
||||||
|
#define OPTYPE 07 /* type field in flag */
|
||||||
|
|
||||||
|
#define OPMINI 0 /* m MINI */
|
||||||
|
#define OPSHORT 1 /* s SHORT */
|
||||||
|
#define OPNO 2 /* - No operand */
|
||||||
|
#define OP8 3 /* 1 1-byte signed operand */
|
||||||
|
#define OP16 4 /* 2 2-byte signed operand */
|
||||||
|
#define OP32 5 /* 4 4-byte signed operand */
|
||||||
|
#define OP64 6 /* 8 8-byte signed operand */
|
||||||
|
#define OP16U 7 /* u 2-byte unsigned operand */
|
||||||
|
|
||||||
|
#define OPESC 010 /* e escaped opcode */
|
||||||
|
#define OPWORD 020 /* w operand is word multiple */
|
||||||
|
#define OPNZ 040 /* o operand starts at 1 ( or wordsize if w-flag) */
|
||||||
|
|
||||||
|
#define OPRANGE 0300 /* Range of operands: Positive, negative, both */
|
||||||
|
|
||||||
|
#define OP_BOTH 0000 /* the default */
|
||||||
|
#define OP_POS 0100 /* p Positive (>=0) operands only */
|
||||||
|
#define OP_NEG 0200 /* n Negative (<0) operands only */
|
||||||
|
|
||||||
|
struct opform {
|
||||||
|
char i_opcode ; /* the opcode number */
|
||||||
|
char i_flag ; /* the flag byte */
|
||||||
|
char i_low ; /* the interpreter first opcode */
|
||||||
|
char i_num ; /* the number of shorts/minis (optional) */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Escape indicators */
|
||||||
|
|
||||||
|
#define ESC 254 /* To escape group */
|
||||||
|
#define ESC_L 255 /* To 32 and 64 bit operands */
|
Loading…
Reference in a new issue