Machine-Independent MDL for TOPS-20 and VAX.
[pdp10-muddle.git] / mim / development / mim / 20 / default.mima
1
2 #WORD *11031104327*
3                     <GFCN \1aX$DEF-GET-MODE ("VALUE" <OR FALSE STRING> CHANNEL ANY) CHANNEL4 OPER5>
4                     <TEMP DATA6 TEMP11>
5                     <INTGO>
6                     <NTHUV CHANNEL4 5 = DATA6>
7                     <DEAD CHANNEL4>
8                     <NTHUV DATA6 1 = DATA6 (TYPE FIX)>
9                     <IFSYS "VAX">
10                     <AND DATA6 #WORD *177777* = TEMP11>
11                     <ENDIF "VAX">
12                     <IFSYS "TOPS20">
13                     <AND DATA6 #WORD *777777* = TEMP11>
14                     <DEAD DATA6>
15                     <ENDIF "TOPS20">
16                     <SYSOP 'GTSTS TEMP11 (RETURN 2) = DATA6>
17                     <DEAD TEMP11>
18                     <LESS? DATA6 0 + PHRASE16 (TYPE FIX)>
19                     <RETURN "CLOSED">
20 PHRASE16
21                     <AND DATA6 #WORD *100000000000* = TEMP11>
22                     <VEQUAL? TEMP11 0 + PHRASE19 (TYPE FIX)>
23                     <DEAD TEMP11>
24                     <AND DATA6 #WORD *20000000000* = TEMP11>
25                     <DEAD DATA6>
26                     <VEQUAL? TEMP11 0 - PHRASE24 (TYPE FIX)>
27                     <DEAD TEMP11>
28                     <RETURN "APPEND">
29 PHRASE24
30                     <RETURN "MODIFY">
31 PHRASE19
32                     <AND DATA6 #WORD *200000000000* = TEMP11>
33                     <DEAD DATA6>
34                     <VEQUAL? TEMP11 0 - TAG29 (TYPE FIX)>
35                     <DEAD TEMP11>
36                     <RETURN %<>>
37 TAG29
38                     <RETURN "READ">
39                     <END \1aX$DEF-GET-MODE>
40
41 #WORD *617706206*
42                     <GFCN \1aX$DEF-GET-BYTE-SIZE ("VALUE" ANY CHANNEL ANY) CHANNEL4 OPER5>
43                     <TEMP DATA6 TEMP11>
44                     <INTGO>
45                     <NTHUV CHANNEL4 5 = DATA6>
46                     <DEAD CHANNEL4>
47                     <NTHUV DATA6 1 = DATA6 (TYPE FIX)>
48                     <SYSOP 'RFBSZ DATA6 (RETURN 2) = DATA6>
49                     <SET TEMP11 DATA6>
50                     <TYPE? TEMP11 <TYPE-CODE FALSE> + PHRASE16>
51                     <EQUAL? DATA6 7 - PHRASE13>
52                     <RETURN "ASCII">
53 PHRASE13
54                     <EQUAL? DATA6 8 - PHRASE14>
55                     <RETURN "8BIT">
56 PHRASE14
57                     <EQUAL? DATA6 36 - PHRASE15>
58                     <RETURN "BINARY">
59 PHRASE15
60                     <SET TEMP11 DATA6>
61                     <DEAD DATA6>
62 PHRASE16
63                     <RETURN TEMP11>
64                     <DEAD TEMP11>
65                     <END \1aX$DEF-GET-BYTE-SIZE>
66
67 #WORD *34764423542*
68                     <GFCN \1aX$DEF-SHORT-NAME ("VALUE" <OR FALSE STRING> CHANNEL ANY) CHANNEL4 OPER5>
69                     <TEMP DATA6>
70                     <INTGO>
71                     <NTHUV CHANNEL4 5 = DATA6>
72                     <DEAD CHANNEL4>
73                     <FRAME '\1aI$DO-JFNS>
74                     <NTHUV DATA6 1 = STACK (TYPE FIX)>
75                     <DEAD DATA6>
76                     <PUSH 153092097>
77                     <CALL '\1aI$DO-JFNS 2 = DATA6>
78                     <RETURN DATA6>
79                     <DEAD DATA6>
80                     <END \1aX$DEF-SHORT-NAME>
81
82 #WORD *34766427142*
83                     <GFCN \1aX$DEF-NM1 ("VALUE" <OR FALSE STRING> CHANNEL ANY) CHANNEL4 OPER5>
84                     <TEMP DATA6>
85                     <INTGO>
86                     <NTHUV CHANNEL4 5 = DATA6>
87                     <DEAD CHANNEL4>
88                     <FRAME '\1aI$DO-JFNS>
89                     <NTHUV DATA6 1 = STACK (TYPE FIX)>
90                     <DEAD DATA6>
91                     <PUSH 134217728>
92                     <CALL '\1aI$DO-JFNS 2 = DATA6>
93                     <RETURN DATA6>
94                     <DEAD DATA6>
95                     <END \1aX$DEF-NM1>
96
97 #WORD *34766463142*
98                     <GFCN \1aX$DEF-NM2 ("VALUE" <OR FALSE STRING> CHANNEL ANY) CHANNEL4 OPER5>
99                     <TEMP DATA6>
100                     <INTGO>
101                     <NTHUV CHANNEL4 5 = DATA6>
102                     <DEAD CHANNEL4>
103                     <FRAME '\1aI$DO-JFNS>
104                     <NTHUV DATA6 1 = STACK (TYPE FIX)>
105                     <DEAD DATA6>
106                     <PUSH 16777216>
107                     <CALL '\1aI$DO-JFNS 2 = DATA6>
108                     <RETURN DATA6>
109                     <DEAD DATA6>
110                     <END \1aX$DEF-NM2>
111
112 #WORD *34766467142*
113                     <GFCN \1aX$DEF-DEV ("VALUE" <OR FALSE STRING> CHANNEL ANY) CHANNEL4 OPER5>
114                     <TEMP DATA6>
115                     <INTGO>
116                     <NTHUV CHANNEL4 5 = DATA6>
117                     <DEAD CHANNEL4>
118                     <FRAME '\1aI$DO-JFNS>
119                     <NTHUV DATA6 1 = STACK (TYPE FIX)>
120                     <DEAD DATA6>
121                     <PUSH 8589934592>
122                     <CALL '\1aI$DO-JFNS 2 = DATA6>
123                     <RETURN DATA6>
124                     <DEAD DATA6>
125                     <END \1aX$DEF-DEV>
126
127 #WORD *25651047345*
128                     <GFCN \1aX$DEF-SNM ("VALUE" ANY CHANNEL ANY) CHANNEL4 OPER5>
129                     <TEMP DATA7 STR6 TEMP13>
130                     <INTGO>
131                     <NTHUV CHANNEL4 5 = DATA7>
132                     <DEAD CHANNEL4>
133                     <FRAME '\1aI$DO-JFNS>
134                     <NTHUV DATA7 1 = STACK (TYPE FIX)>
135                     <PUSH 1073741824>
136                     <CALL '\1aI$DO-JFNS 2 = STR6>
137                     <NTHUV DATA7 1 = TEMP13 (TYPE FIX)>
138                     <GETBITS TEMP13 18 18 = TEMP13>
139                     <VEQUAL? TEMP13 0 - BOOL12 (TYPE FIX)>
140                     <DEAD TEMP13>
141                     <FRAME '\1aT$GET-DEVICE-TYPE>
142                     <NTHUV DATA7 1 = STACK (TYPE FIX)>
143                     <DEAD DATA7>
144                     <CALL '\1aT$GET-DEVICE-TYPE 1 = TEMP13>
145                     <EQUAL? TEMP13 0 - PHRASE10>
146                     <DEAD TEMP13>
147 BOOL12
148                     <TYPE? STR6 <TYPE-CODE FALSE> + BOOL17>
149                     <EMPUS? STR6 - PHRASE10 (TYPE STRING)>
150 BOOL17
151                     <FRAME '\1aT$GET-CONNECTED-DIR>
152                     <CALL '\1aT$GET-CONNECTED-DIR 0 = TEMP13>
153                     <RETURN TEMP13>
154                     <DEAD TEMP13>
155 PHRASE10
156                     <RETURN STR6>
157                     <DEAD STR6>
158                     <END \1aX$DEF-SNM>
159
160 #WORD *21046032454*
161                     <GFCN \1aX$DEF-NAME ("VALUE" <OR FALSE STRING> CHANNEL ANY "OPTIONAL" ANY) CHANNEL6 OPER7 BITS8>
162                     <OPT-DISPATCH 2 %<> OPT4 OPT5>
163 OPT4
164                     <PUSH 31>
165 OPT5
166                     <TEMP DATA9 (ARGBITS10:FIX 1) TEMP13>
167                     <INTGO>
168                     <NTHUV CHANNEL6 5 = DATA9>
169                     <DEAD CHANNEL6>
170                     <AND BITS8 #WORD *20* = TEMP13>
171                     <VEQUAL? TEMP13 0 + PHRASE12 (TYPE FIX)>
172                     <DEAD TEMP13>
173                     <OR ARGBITS10 #WORD *100000000000* = ARGBITS10>
174 PHRASE12
175                     <AND BITS8 #WORD *10* = TEMP13>
176                     <VEQUAL? TEMP13 0 + PHRASE17 (TYPE FIX)>
177                     <DEAD TEMP13>
178                     <OR ARGBITS10 #WORD *10000000000* = ARGBITS10>
179 PHRASE17
180                     <AND BITS8 #WORD *4* = TEMP13>
181                     <VEQUAL? TEMP13 0 + PHRASE21 (TYPE FIX)>
182                     <DEAD TEMP13>
183                     <OR ARGBITS10 #WORD *1000000000* = ARGBITS10>
184 PHRASE21
185                     <AND BITS8 #WORD *2* = TEMP13>
186                     <VEQUAL? TEMP13 0 + PHRASE25 (TYPE FIX)>
187                     <DEAD TEMP13>
188                     <OR ARGBITS10 #WORD *100000000* = ARGBITS10>
189 PHRASE25
190                     <AND BITS8 #WORD *1* = TEMP13>
191                     <DEAD BITS8>
192                     <VEQUAL? TEMP13 0 + PHRASE29 (TYPE FIX)>
193                     <DEAD TEMP13>
194                     <OR ARGBITS10 #WORD *10000000* = ARGBITS10>
195 PHRASE29
196                     <FRAME '\1aI$DO-JFNS>
197                     <NTHUV DATA9 1 = STACK (TYPE FIX)>
198                     <DEAD DATA9>
199                     <PUSH ARGBITS10>
200                     <DEAD ARGBITS10>
201                     <CALL '\1aI$DO-JFNS 2 = TEMP13>
202                     <RETURN TEMP13>
203                     <DEAD TEMP13>
204                     <END \1aX$DEF-NAME>
205
206 #WORD *14070754150*
207                     <GFCN \1aI$DO-JFNS ("VALUE" <OR FALSE STRING> FIX FIX) JFN4 BITS5>
208                     <TEMP STR7:STRING TEMP14 CT6 OLD34 NEW35:STRING>
209                     <INTGO>
210                     <GVAL 'I$NAMSTR = STR7>
211                     <AND JFN4 #WORD *777777* = JFN4>
212                     <VEQUAL? JFN4 65 + BOOL11 (TYPE FIX)>
213                     <VEQUAL? JFN4 64 - PHRASE10 (TYPE FIX)>
214 BOOL11
215                     <AND BITS5 #WORD *100000000000* = TEMP14>
216                     <VEQUAL? TEMP14 0 - PHRASE13 (TYPE FIX)>
217                     <DEAD TEMP14>
218                     <RETURN "">
219 PHRASE13
220                     <AND BITS5 #WORD *1* = TEMP14>
221                     <DEAD BITS5>
222                     <VEQUAL? TEMP14 0 - PHRASE17 (TYPE FIX)>
223                     <DEAD TEMP14>
224                     <RETURN "TTY">
225 PHRASE17
226                     <RETURN "TTY:">
227 PHRASE10
228                     <SYSOP 'JFNS STR7 JFN4 BITS5 0 = CT6>
229                     <DEAD JFN4 BITS5>
230                     <SET TEMP14 CT6>
231                     <TYPE? TEMP14 <TYPE-CODE FALSE> + PHRASE22>
232                     <UUBLOCK <TYPE-CODE STRING> CT6 = CT6 (TYPE STRING)>
233                     <SET TEMP14 STR7 (TYPE STRING)>
234                     <DEAD STR7>
235                     <SET STR7 CT6 (TYPE STRING)>
236                     <LOOP>
237 MAP24
238                     <INTGO>
239                     <EMPUS? TEMP14 + MAPAP27>
240                     <EMPUS? STR7 + MAPAP27>
241                     <SET OLD34 TEMP14>
242                     <SET NEW35 STR7>
243                     <NTHUS OLD34 1 = OLD34 (TYPE CHARACTER)>
244                     <PUTUS NEW35 1 OLD34>
245                     <DEAD NEW35 OLD34>
246                     <RESTUS TEMP14 1 = TEMP14 (TYPE STRING)>
247                     <RESTUS STR7 1 = STR7 (TYPE STRING)>
248                     <JUMP + MAP24>
249 MAPAP27
250                     <SET TEMP14 CT6>
251                     <DEAD CT6>
252 PHRASE22
253                     <RETURN TEMP14>
254                     <DEAD TEMP14>
255                     <END \1aI$DO-JFNS>
256
257 #WORD *421616144*
258                     <GFCN \1aX$DEF-FLUSH ("VALUE" ANY CHANNEL ANY) CHANNEL4 OPER5>
259                     <TEMP DATA6>
260                     <INTGO>
261                     <NTHUV CHANNEL4 5 = DATA6>
262                     <DEAD CHANNEL4>
263                     <NTHUV DATA6 1 = DATA6 (TYPE FIX)>
264                     <AND DATA6 #WORD *777777* = DATA6>
265                     <OR DATA6 #WORD *4000000000* = DATA6>
266                     <SYSOP 'CLOSF DATA6 = DATA6>
267                     <TYPE? DATA6 <TYPE-CODE FALSE> + PHRASE9>
268                     <RETURN DATA6>
269                     <DEAD DATA6>
270 PHRASE9
271                     <RETURN DATA6>
272                     <DEAD DATA6>
273                     <END \1aX$DEF-FLUSH>
274
275 #WORD *13224016071*
276                     <GFCN \1aX$DEF-HACK-DATE ("VALUE" <OR FALSE FIX> CHANNEL ATOM "OPTIONAL" FIX) CHANNEL6 OPR7 NEW8>
277                     <OPT-DISPATCH 2 %<> OPT4 OPT5>
278 OPT4
279                     <PUSH #T$UNBOUND 0>
280 OPT5
281                     <TEMP DATA9 JFN11:FIX TEMP16>
282                     <INTGO>
283                     <NTHUV CHANNEL6 5 = DATA9>
284                     <DEAD CHANNEL6>
285                     <NTHUV DATA9 1 = DATA9 (TYPE FIX)>
286                     <AND DATA9 #WORD *777777* = JFN11>
287                     <DEAD DATA9>
288                     <NTHR 'DATEU 1 = DATA9 (RECORD-TYPE ATOM) (BRANCH-FALSE + TAG15)>
289                     <TYPE? DATA9 <TYPE-CODE FALSE> + TAG15>
290                     <NTHR DATA9 1 = DATA9 (RECORD-TYPE GBIND)>
291                     <TYPE? DATA9 <TYPE-CODE UNBOUND> - PHRASE14>
292                     <DEAD DATA9>
293 TAG15
294                     <UUBLOCK <TYPE-CODE UVECTOR> 3 = DATA9>
295                     <SET TEMP16 DATA9>
296                     <LOOP (TEMP16 VALUE LENGTH)>
297 ISTR17
298                     <EMPUU? TEMP16 + ISTRE18>
299                     <PUTUU TEMP16 1 0>
300                     <RESTUU TEMP16 1 = TEMP16>
301                     <JUMP + ISTR17>
302 ISTRE18
303                     <SETG 'DATEU DATA9>
304                     <DEAD DATA9>
305 PHRASE14
306                     <GVAL 'DATEU = TEMP16>
307                     <TYPE? NEW8 <TYPE-CODE UNBOUND> - PHRASE20>
308                     <SYSOP 'RFTAD JFN11 TEMP16 3 = DATA9>
309                     <DEAD JFN11>
310                     <TYPE? DATA9 <TYPE-CODE FALSE> + PHRASE29>
311                     <VEQUAL? OPR7 'T$READ-DATE - PHRASE24>
312                     <DEAD OPR7>
313                     <NTHUU TEMP16 3 = DATA9 (TYPE FIX)>
314                     <DEAD TEMP16>
315                     <RETURN DATA9>
316                     <DEAD DATA9>
317 PHRASE24
318                     <NTHUU TEMP16 1 = DATA9 (TYPE FIX)>
319                     <DEAD TEMP16>
320                     <RETURN DATA9>
321                     <DEAD DATA9>
322 PHRASE20
323                     <PUTUU TEMP16 1 -1>
324                     <PUTUU TEMP16 2 -1>
325                     <PUTUU TEMP16 3 -1>
326                     <VEQUAL? OPR7 'T$READ-DATE - PHRASE27>
327                     <DEAD OPR7>
328                     <PUTUU TEMP16 3 NEW8>
329                     <JUMP + COND26>
330 PHRASE27
331                     <PUTUU TEMP16 1 NEW8>
332 COND26
333                     <SYSOP 'SFTAD JFN11 TEMP16 3 = DATA9>
334                     <DEAD JFN11 TEMP16>
335                     <TYPE? DATA9 <TYPE-CODE FALSE> + PHRASE29>
336                     <SET DATA9 NEW8>
337                     <DEAD NEW8>
338 PHRASE29
339                     <RETURN DATA9>
340                     <DEAD DATA9>
341                     <END \1aX$DEF-HACK-DATE>