-
Notifications
You must be signed in to change notification settings - Fork 0
/
mix_encode.h
74 lines (68 loc) · 2.25 KB
/
mix_encode.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
/*
* mix_encode.h
*
* Created on: Sep 9, 2015
* Author: eyal
*/
#ifndef MIX_ENCODE_H_
#define MIX_ENCODE_H_
#include "mix_types.h"
typedef enum {
MIX_NOP, MIX_ADD, FADD, DADD,
MIX_SUB, FSUB, DSUB, MIX_MUL, FMUL, DMUL, FDML,
MIX_DIV, FDIV, DDIV, DFDV, NUM, CHR, HLT, LEN, SHR, FIX, FLOT, MIX_INT,
SLA, SRA, SLAX, SRAX, SLC, SRC, MIX_MOV,
MIX_LDA, LD1, LD2, LD3, LD4, LD5, LD6, MIX_LDX,
LDAN, LD1N, LD2N, LD3N, LD4N, LD5N, LD6N, LDXN,
MIX_STA, ST1, ST2, ST3, ST4, ST5, ST6, MIX_STX,
MIX_STJ, MIX_STZ, MIX_JBUS, BBUS, MIX_IOC,
MIX_IN, MIX_OUT,
MIX_JRED, BRED,
JMP, JSJ, JOV, JNOV,
JL, JE, JG, JGE, JNE, JLE, JCMP,
JNGE, JNGL, JNLE, JNL, JGL, JNG, JNC,
BOV, BNOV,
BN, BE, BG, BGE, BNE, BLE, BCMP,
BNGE, BNGL, BNLE, BNL, BGL, BNG, BNC,
JAN, JAZ, JAP, JANN, JANZ, JANP,
JFIN, JFIZ, JFIP, JFPZ, JFPN, JFZN, JFRE,
JFN, JFZ, JFP, JFNN, JFNZ, JFNP, JFNR,
JDIN, JDIZ, JDIP, JDPZ, JDPN, JDZN, JDRE,
BAN, BAZ, BAP, BANN, BANZ, BANP,
BFIN, BFIZ, BFIP, BFPZ, BFPN, BFZN, BFRE,
BFN, BFZ, BFP, BFNN, BFNZ, BFNP, BFNR,
BDIN, BDIZ, BDIP, BDPZ, BDPN, BDZN, BDRE,
J1N, J1Z, J1P, J1NN, J1NZ, J1NP,
B1N, B1Z, B1P, B1NN, B1NZ, B1NP,
J2N, J2Z, J2P, J2NN, J2NZ, J2NP,
B2N, B2Z, B2P, B2NN, B2NZ, B2NP,
J3N, J3Z, J3P, J3NN, J3NZ, J3NP,
B3N, B3Z, B3P, B3NN, B3NZ, B3NP,
J4N, J4Z, J4P, J4NN, J4NZ, J4NP,
B4N, B4Z, B4P, B4NN, B4NZ, B4NP,
J5N, J5Z, J5P, J5NN, J5NZ, J5NP,
B5N, B5Z, B5P, B5NN, B5NZ, B5NP,
J6N, J6Z, J6P, J6NN, J6NZ, J6NP,
B6N, B6Z, B6P, B6NN, B6NZ, B6NP,
JXN, JXZ, JXP, JXNN, JXNZ, JXNP,
JGIN, JGIZ, JGIP, JGPZ, JGPN, JGZN, JGRE,
JGN, JGZ, JGP, JGNN, JGNZ, JGNP, JGNR,
JDN, JDZ, JDP, JDNN, JDNZ, JDNP, JDNR,
BXN, BXZ, BXP, BXNN, BXNZ, BXNP,
BGN, BGZ, BGP, BGNN, BGNZ, BGNP, BGNR,
BGIN, BGIZ, BGIP, BGPZ, BGPN, BGZN, BGRE,
BDN, BDZ, BDP, BDNN, BDNZ, BDNP, BDNR,
INCA, DECA, ENTA, ENNA, INC1, DEC1, ENT1, ENN1,
INC2, DEC2, ENT2, ENN2, INC3, DEC3, ENT3, ENN3,
INC4, DEC4, ENT4, ENN4, INC5, DEC5, ENT5, ENN5,
INC6, DEC6, ENT6, ENN6, INCX, DECX, ENTX, ENNX,
MIX_CMPA, FCMP, DCMP, CMP1, CMP2, CMP3,
CMP4, CMP5, CMP6, MIX_CMPX, GCMP,
CON, LONG, MIX_FLT, MIX_DBL, EQU, ALF, END, ORIG
} instruction;
extern mix_byte default_f[];
extern mix_byte opcode[];
extern int nnames;
extern instruction instr_table[];
extern char instr_name[][5];
#endif /* MIX_ENCODE_H_ */