GE-115 Emulator
An Emulator of the General Electrics GE-115 computer
opcodes.h
Go to the documentation of this file.
1#ifndef OPCODES_H
2#define OPCODES_H
3
4/* Operation codes and instruction formats
5 * --------------------------------------- */
6
7/* P format instructions */
8
9#define ENS_OPCODE 0x02
10#define ENS_2NDCHAR 0x10
11
12#define INS_OPCODE 0x02
13#define INS_2NDCHAR 0x20
14
15#define LOFF_OPCODE 0x02
16#define LOFF_2NDCHAR 0x40
17
18#define LON_OPCODE 0x02
19#define LON_2NDCHAR 0x80
20
21#define LOLL_OPCODE 0x02
22#define LOLL_2NDCHAR 0x91
23
24#define NOP2_OPCODE 0x07
25#define HLT_OPCODE 0x0A
26
27/* PM format instructions */
28
29#define JIE_OPCODE 0x53
30#define JIE_2NDCHAR 0x20
31
32#define JS2_OPCODE 0x53
33#define JS2_2NDCHAR 0x40
34
35#define JS1_OPCODE 0x53
36#define JS1_2NDCHAR 0x80
37
38#define JRT_OPCODE 0x41
39#define JC_OPCODE 0x43
40#define JU_OPCODE 0x47 /* unconditional jump (JC-family; mask 0xF0) */
41#define JCC_OPCODE 0x40 /* jump on condition, decimal-deck variant (mask in aux char) */
42#define LA_OPCODE 0x68
43#define TM_OPCODE 0x91
44#define MVI_OPCODE 0x92
45#define NI_OPCODE 0x94
46#define CMI_OPCODE 0x95
47#define CI_OPCODE 0x96
48#define XI_OPCODE 0x97
49#define PERI_OPCODE 0x9c
50#define LPSR_OPCODE 0x9d
51#define PER_OPCODE 0x9e
52#define RDC_OPCODE 0x90 /* peripheral read-card, decimal-deck variant (PER-family) */
53#define STR_OPCODE 0xb4 /* Store Register; funktionalcpu step 0x38 (was wrongly 0x84) */
54#define LR_OPCODE 0xbc
55#define CMR_OPCODE 0xbd
56#define AMR_OPCODE 0xbe
57#define SMR_OPCODE 0xbf
58
59/* PMM Format Instructions */
60
61#define MVC_OPCODE 0xd2
62#define NC_OPCODE 0xd4
63#define CMC_OPCODE 0xd5
64#define OC_OPCODE 0xd6
65#define XC_OPCODE 0xd7
66#define UPK_OPCODE 0xd8
67#define SR_OPCODE 0xd9
68#define PK_OPCODE 0xdA
69#define SL_OPCODE 0xdb
70#define TL_OPCODE 0xdc
71#define EDT_OPCODE 0xde
72#define MVP_OPCODE 0xe8
73#define CMP_OPCODE 0xe9
74#define AP_OPCODE 0xea
75#define SP_OPCODE 0xeb
76#define MP_OPCODE 0xec
77#define DP_OPCODE 0xed
78#define PKS_OPCODE 0xee
79#define UPKS_OPCODE 0xef
80#define MVQ_OPCODE 0xf8
81#define CMQ_OPCODE 0xf9
82#define AD_OPCODE 0xfa
83#define SD_OPCODE 0xfb
84#define AB_OPCODE 0xfe
85#define SB_OPCODE 0xff
86
87/* from cpu fo. 10, 11 */
88
89#endif