1 " ***********************************************************
2 " * *
3 " * Copyright, C Honeywell Information Systems Inc., 1982 *
4 " * *
5 " ***********************************************************
6
7 name etx
8
9
10 segdef execute
11
12 segdef instruction_area
13 segdef instr_page_2
14 segdef set_ptrs
15 segdef set_regs
16 segdef set_ind
17 segdef indicators
18
19 segdef set_data1
20 segdef set_data2
21 segdef set_data3
22
23 segdef data1
24 segdef data2
25 segdef data3
26
27 segdef ind1
28 segdef ind2
29 segdef ind3
30
31
32
33 even
34
35 bss save_ptrs,16
36
37 set_ptrs:
38 oct 0,0 pr0
39 oct 0,0 pr1
40 oct 0,0 pr2
41 oct 0,0 pr3
42 oct 0,0 pr4
43 oct 0,0 pr5
44 set_pr6:
45 oct 0,0 pr6
46 oct 0,0 pr7
47
48 bss result_ptrs,16
49
50 bss save_regs,8
51 bss set_regs,8
52 bss result_regs,8
53
54 set_ind:
55 oct 0
56 indicators:
57 oct 0
58 "^L
59 execute:
60
61 spri save_ptrs
62 spri6 set_pr6 Keep stack pointer valid.
63 sreg save_regs
64
65 lpri set_ptrs
66 lreg set_regs
67 ldi set_ind
68
69 tra instruction_area,0 X0 set up with instruction offset.
70
71
72
73 " These args are just here for the hell of it.
74
75 arg instruction_area
76
77 arg set_data1
78 arg set_data2
79 arg set_data3
80
81 arg data1
82 arg data2
83 arg data3
84
85 arg ind1
86 arg ind2
87 "^L
88 " This is the 7 word area where the EIS instructions are placed
89 " for execution.
90
91
92 org 1024*2-3
93
94 bss instruction_area,3
95 " PAGE BOUNDARY
96 bss instr_page_2,4
97
98
99 sti indicators;
100 spri result_ptrs
101 sreg result_regs
102
103 lpri save_ptrs
104 lreg save_regs
105
106 return_loc:
107 short_return
108 "^L
109 " These are the data pages defined in this segment.
110
111
112 org 1024*4
113 set_data1:
114
115 org 1024*7
116 set_data2:
117
118 org 1024*10
119 set_data3:
120
121
122
123
124 org 1024*13
125 data1:
126
127 org 1024*16
128 data2:
129
130 org 1024*19
131 data3:
132
133
134
135
136 org 1024*21
137 ind1:
138
139 org 1024*22
140 ind2:
141
142 org 1024*23
143 ind3:
144
145 org 1024*24
146
147
148 end