GE-115 Emulator
An Emulator of the General Electrics GE-115 computer
console.h
Go to the documentation of this file.
1 #ifndef CONSOLE
2 #define CONSOLE
3 
4 #include <stdint.h>
5 
6 #define PACKED __attribute__((packed))
7 
23 };
24 
26  uint16_t RO:9;
27  uint16_t _pad0:3;
28  uint16_t UR:1;
29  uint16_t _pad1:3; /* RO 9 LSbits + UR at bit 12 */
30 
31  uint16_t SO:8;
32  uint16_t _pad2:4;
33  uint16_t FA:4; /* SO 8 bits + FA bits 12-15 */
34 
35  uint16_t SA:8;
36  uint16_t _pad3:4;
37  uint16_t B:4; /* SA 8 bits + B bits 12-15 */
38 
39  uint16_t ADD_reg; /* 4 nibbles ADD REG - front panel */
40  uint16_t OP_reg:8;
41  uint16_t C3:1;
42  uint16_t C2:1;
43  uint16_t C1:1;
44  uint16_t I:1;
45  uint16_t JE:1;
46  uint16_t IM:1;
47  uint16_t NZ:1;
48  uint16_t OF:1;
49 
50  uint16_t DC_ALERT:1; /* red */
51  uint16_t POWER_OFF:1; /* yellow */
52  uint16_t STAND_BY:1; /* blue */
53  uint16_t POWER_ON:1; /* yellow */
54  uint16_t MAINTENANCE_ON:1; /* red */
55  uint16_t MEM_CHECK:1; /* red */
56  uint16_t INV_ADD:1; /* red */
57  uint16_t SWITCH_1:1; /* white */
58  uint16_t SWITCH_2:1; /* white */
59  uint16_t STEP_BY_STEP:1; /* white */
60  uint16_t HALT:1; /* white */
61  uint16_t LOAD_1:1; /* white */
62  uint16_t LOAD_2:1; /* white */
63  uint16_t OPERATOR_CALL:1; /* blue */
64 };
65 
81  uint16_t PAPA:1;
82 
89  uint16_t PATE:1;
90 
97  uint16_t RICI:1;
98 
105  uint16_t ACOV:1;
106 
113  uint16_t ACON:1;
114 
121  uint16_t INAR:1;
122 
126  uint16_t STOC:1;
127 
136  uint16_t INCE:1;
137 
145  uint16_t SITE:1;
146 
147  uint16_t lamps_on:1;
148  uint16_t _pad_0:6;
149 
155  uint16_t AM;
156 };
157 
159  uint16_t AC_ON:1;
160  uint16_t DC_ALERT:1;
161  uint16_t POWER_ON:1;
162  uint16_t MAINTENANCE_ON:1;
163  uint16_t SWITCH_1:1;
164  uint16_t SWITCH_2:1;
165  uint16_t STEP_BY_STEP:1;
166  uint16_t LOAD_1_2:1;
167  uint16_t EMERGEN_OFF:1;
168  uint16_t STANDBY:1;
169  uint16_t _pad_0:1;
170  uint16_t MEM_CHECK:1;
171  uint16_t CLEAR:1;
172  uint16_t LOAD:1;
173  uint16_t HALT_START:1;
174  uint16_t OPER_CALL:1;
175 };
176 
177 
179  struct ge_console_lamps lamps;
180  struct ge_console_switches switches;
181  struct ge_console_buttons buttons;
182  enum ge_console_rotary rotary;
183 };
184 
185 struct ge;
186 
187 void ge_fill_console_data(struct ge*, struct ge_console*);
188 void ge_set_console_switches(struct ge*, struct ge_console_switches*);
189 void ge_set_console_rotary(struct ge *, enum ge_console_rotary);
190 
191 #endif
void ge_set_console_switches(struct ge *, struct ge_console_switches *)
Definition: console.c:45
#define PACKED
Definition: console.h:6
void ge_set_console_rotary(struct ge *, enum ge_console_rotary)
Definition: console.c:58
void ge_fill_console_data(struct ge *, struct ge_console *)
Definition: console.c:7
ge_console_rotary
Definition: console.h:8
@ RS_FI_UR
Definition: console.h:20
@ RS_V1_SCR
Definition: console.h:16
@ RS_SO
Definition: console.h:21
@ RS_R1_L2
Definition: console.h:12
@ RS_PO
Definition: console.h:19
@ RS_V1_LETT
Definition: console.h:17
@ RS_V1
Definition: console.h:15
@ RS_L1
Definition: console.h:14
@ RS_V3
Definition: console.h:11
@ RS_NORM
Definition: console.h:18
@ RS_L3
Definition: console.h:10
@ RS_FO
Definition: console.h:22
@ RS_V4
Definition: console.h:9
@ RS_V2
Definition: console.h:13
uint16_t LOAD
Definition: console.h:172
uint16_t SWITCH_2
Definition: console.h:164
uint16_t DC_ALERT
Definition: console.h:160
uint16_t LOAD_1_2
Definition: console.h:166
uint16_t POWER_ON
Definition: console.h:161
uint16_t _pad_0
Definition: console.h:169
uint16_t MEM_CHECK
Definition: console.h:170
uint16_t STEP_BY_STEP
Definition: console.h:165
uint16_t STANDBY
Definition: console.h:168
uint16_t MAINTENANCE_ON
Definition: console.h:162
uint16_t CLEAR
Definition: console.h:171
uint16_t EMERGEN_OFF
Definition: console.h:167
uint16_t AC_ON
Definition: console.h:159
uint16_t HALT_START
Definition: console.h:173
uint16_t SWITCH_1
Definition: console.h:163
uint16_t C1
Definition: console.h:43
uint16_t SA
Definition: console.h:35
uint16_t I
Definition: console.h:44
uint16_t INV_ADD
Definition: console.h:56
uint16_t SWITCH_2
Definition: console.h:58
uint16_t UR
Definition: console.h:28
uint16_t LOAD_1
Definition: console.h:61
uint16_t DC_ALERT
Definition: console.h:50
uint16_t C2
Definition: console.h:42
uint16_t JE
Definition: console.h:45
uint16_t FA
Definition: console.h:33
uint16_t SO
Definition: console.h:31
uint16_t POWER_OFF
Definition: console.h:51
uint16_t LOAD_2
Definition: console.h:62
uint16_t POWER_ON
Definition: console.h:53
uint16_t HALT
Definition: console.h:60
uint16_t _pad2
Definition: console.h:32
uint16_t _pad1
Definition: console.h:29
uint16_t MEM_CHECK
Definition: console.h:55
uint16_t STEP_BY_STEP
Definition: console.h:59
uint16_t _pad3
Definition: console.h:36
uint16_t _pad0
Definition: console.h:27
uint16_t RO
Definition: console.h:26
uint16_t OF
Definition: console.h:48
uint16_t MAINTENANCE_ON
Definition: console.h:54
uint16_t STAND_BY
Definition: console.h:52
uint16_t IM
Definition: console.h:46
uint16_t OP_reg
Definition: console.h:40
uint16_t C3
Definition: console.h:41
uint16_t B
Definition: console.h:37
uint16_t OPERATOR_CALL
Definition: console.h:63
uint16_t NZ
Definition: console.h:47
uint16_t ADD_reg
Definition: console.h:39
uint16_t SWITCH_1
Definition: console.h:57
Console switches.
Definition: console.h:71
uint16_t SITE
Don't wait for external unit availability.
Definition: console.h:145
uint16_t INCE
Do not error-correct external units input.
Definition: console.h:136
uint16_t PATE
Stop after a cycle.
Definition: console.h:89
uint16_t ACON
Stops on jump condition not verified.
Definition: console.h:113
uint16_t RICI
Disables next status.
Definition: console.h:97
uint16_t lamps_on
Definition: console.h:147
uint16_t _pad_0
Definition: console.h:148
uint16_t AM
Forcing bits.
Definition: console.h:155
uint16_t INAR
Do not stop on memory error.
Definition: console.h:121
uint16_t ACOV
Stops on jump condition verified.
Definition: console.h:105
uint16_t PAPA
Step By Step execution.
Definition: console.h:81
The entire state of the emulated system, including registers, memory, peripherals and timings.
Definition: ge.h:94