Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / regression_tests / lustre_files / success / kind_fmcad08 / large / microwave24.lus @ b745c1a8

History | View | Annotate | Download (46.4 KB)

1 fa9e78e5 bourbouh
node top(KP_START: bool; 
2
      KP_CLEAR: bool; 
3
      KP_0: bool; 
4
      KP_1: bool; 
5
      KP_2: bool; 
6
      KP_3: bool; 
7
      KP_4: bool; 
8
      KP_5: bool; 
9
      KP_6: bool; 
10
      KP_7: bool; 
11
      KP_8: bool; 
12
      KP_9: bool; 
13
      DOOR_CLOSED: bool
14
) returns (OK:bool);
15
16
   
17 bd3f748f ploc
--@ contract guarantee OK;
18 fa9e78e5 bourbouh
var
19
   LEFT_DIGIT: int; 
20
      SETUP: bool; 
21
      COOKING: bool; 
22
      SUSPENDED: bool; 
23
      START_PRESSED: bool; 
24
      CLEAR_PRESSED: bool; 
25
      MIDDLE_DIGIT: int; 
26
      RIGHT_DIGIT: int; 
27
      enable: bool; 
28
      STEPS_TO_COOK: int;
29
      
30
   rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock: bool; 
31
   KP_01: bool; 
32
   KP_11: bool; 
33
   KP_21: bool; 
34
   KP_31: bool; 
35
   KP_41: bool; 
36
   KP_51: bool; 
37
   KP_61: bool; 
38
   KP_71: bool; 
39
   KP_81: bool; 
40
   KP_91: bool; 
41
   rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_init_step: bool; 
42
   microwave_microwave_KEYPAD_PROCESSING_DISPLAY_LEFT_DIGIT_DIGIT_TO_DISPLAY: int; 
43
   microwave_microwave_KEYPAD_PROCESSING_DISPLAY_MIDDLE_DIGIT_DIGIT_TO_DISPLAY: int; 
44
   microwave_microwave_KEYPAD_PROCESSING_DISPLAY_RIGHT_DIGIT_DIGIT_TO_DISPLAY: int; 
45
   rlt__Arrow5: int; 
46
   rlt__Arrow4: int; 
47
   rlt__Arrow3: int; 
48
   rlt__Arrow2: int; 
49
   rlt__Arrow1: int; 
50
   rlt__Arrow: int; 
51 9b45f3df ploc
   chart_microwave_mode__logic_start: int; 
52
   chart_microwave_mode__logic_clear_off: int; 
53
   chart_microwave_mode__logic_door_closed: int; 
54
   chart_microwave_mode__logic____wakeup___: bool; 
55
   rlt_eval_microwave_mode__logic_ON_rlt_fired_1: bool; 
56
   rlt_eval_microwave_mode__logic_ON_rlt_state_1_states___root: int; 
57
   rlt_eval_microwave_mode__logic_ON_rlt_state_2_states___root: int; 
58
   rlt_eval_microwave_mode__logic_ON_rlt_fired_2: bool; 
59
   rlt_eval_microwave_mode__logic_ON_rlt_complete_1: bool; 
60
   rlt_eval_microwave_mode__logic_ON_rlt_state_3_states___root: int; 
61
   rlt_eval_microwave_mode__logic_ON_rlt_state_3_outports_mode_: int; 
62
   rlt_eval_microwave_mode__logic_ON_rlt_state_4_states___root: int; 
63
   rlt_eval_microwave_mode__logic_ON_rlt_state_4_outports_mode_: int; 
64
   rlt_eval_microwave_mode__logic_ON_rlt_fired_4: bool; 
65
   rlt_eval_microwave_mode__logic_ON_rlt_complete_2: bool; 
66
   rlt_eval_microwave_mode__logic_ON_rlt_state_6_states___root: int; 
67
   rlt_eval_microwave_mode__logic_ON_rlt_state_6_outports_steps_remaining: int; 
68
   rlt_eval_microwave_mode__logic_ON_rlt_state_7_states___root: int; 
69
   rlt_eval_microwave_mode__logic_ON_rlt_fired_5: bool; 
70
   rlt_eval_microwave_mode__logic_ON_rlt_state_8_outports_mode_: int; 
71
   rlt_eval_microwave_mode__logic_ON_rlt_state_9_states___root: int; 
72
   rlt_eval_microwave_mode__logic_ON_rlt_state_10_states___root: int; 
73
   rlt_eval_microwave_mode__logic_ON_rlt_fired_6: bool; 
74
   rlt_eval_microwave_mode__logic_ON_rlt_state_11_states___root: int; 
75
   rlt_eval_microwave_mode__logic_ON_rlt_state_11_outports_mode_: int; 
76
   rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root: int; 
77
   rlt_enter_microwave_mode__logic_ON_rlt_fired_0: bool; 
78
   rlt_enter_microwave_mode__logic_ON_rlt_fired_1: bool; 
79
   rlt_enter_microwave_mode__logic_ON_rlt_state_2_states___root: int; 
80
   rlt_enter_microwave_mode__logic_ON_rlt_state_2_outports_mode_: int; 
81
   rlt_enter_microwave_mode__logic_ON_rlt_fired_2: bool; 
82
   rlt_enter_microwave_mode__logic_ON_rlt_state_4_states___root: int; 
83
   rlt_eval_microwave_mode__logic_rlt_fired_0: bool; 
84
   rlt_eval_microwave_mode__logic_rlt_state_1_outports_steps_remaining: int; 
85
   rlt_eval_microwave_mode__logic_rlt_fired_1: bool; 
86
   rlt_eval_microwave_mode__logic_rlt_state_2_states___root: int; 
87
   rlt_eval_microwave_mode__logic_rlt_state_3_states___root: int; 
88
   rlt_eval_microwave_mode__logic_rlt_state_3_outports_mode_: int; 
89
   rlt_enter_microwave_mode__logic_rlt_state_2_states___root: int; 
90
   chart_microwave_mode__logic_rlt_evtInitStep: bool; 
91
   chart_microwave_mode__logic_begin_state_states___root: int; 
92
   chart_microwave_mode__logic_begin_state_outports_mode_: int; 
93
   chart_microwave_mode__logic_begin_state_outports_steps_remaining: int; 
94
   chart_microwave_mode__logic_final_state_states___root: int; 
95
   chart_microwave_mode__logic_mode_: int; 
96
   chart_microwave_mode__logic_steps_remaining: int; 
97 fa9e78e5 bourbouh
   microwave_microwave_TIME_ON_DISPLAY_SECONDS_TO_MINUTES__QUOTIENT: int; 
98
   microwave_microwave_TIME_ON_DISPLAY_SECONDS_TO_TENS__QUOTIENT: int; 
99
   microwave_microwave_TIME_ON_DISPLAY_SECONDS_TO_TENS__REMAINDER: int; 
100 9b45f3df ploc
   microwave_microwave_mode__logic_mode_: int; 
101 fa9e78e5 bourbouh
   MWI_FcnMaxI_In16: int; 
102
   MWI_FcnMaxI_In15: int; 
103
   MWI_FcnMaxI_In13: int; 
104
   MWI_FcnMaxI_In12: int; 
105
   MWI_FcnMaxI_In11: int; 
106
   MWI_FcnMaxI_In1: int; 
107
   p22: bool; 
108
   p23: bool; 
109
   p24: bool; 
110
   p25: bool; 
111
   p26: bool; 
112
   p27: bool; 
113
   p28: bool; 
114
   p29: bool; 
115
   p30: bool; 
116
   p31: bool; 
117
   p32: bool; 
118
   p33: bool; 
119
   p34: bool; 
120
   p35: bool; 
121
   p36: bool; 
122
   p37: bool; 
123
let 
124
   rlt__Arrow5 = (639 -> 
125
      (if (not (not SETUP))
126
         then 
127
               (if (MWI_FcnMaxI_In13 > 0)
128
                  then MWI_FcnMaxI_In13
129
                  else 0)
130
         else 639));
131
132
   rlt__Arrow4 = (639 -> 
133
      (if (not SUSPENDED)
134
         then 
135
               (if (MWI_FcnMaxI_In12 > 0)
136
                  then MWI_FcnMaxI_In12
137
                  else 0)
138
         else 639));
139
140
   rlt__Arrow3 = (639 -> 
141
      (if (not (not COOKING))
142
         then 
143
               (if (MWI_FcnMaxI_In16 > 0)
144
                  then MWI_FcnMaxI_In16
145
                  else 0)
146
         else 639));
147
148
   rlt__Arrow2 = (639 -> 
149
      (if (not (not SUSPENDED))
150
         then 
151
               (if (MWI_FcnMaxI_In15 > 0)
152
                  then MWI_FcnMaxI_In15
153
                  else 0)
154
         else 639));
155
156
   rlt__Arrow1 = (639 -> 
157
      (if (not COOKING)
158
         then 
159
               (if (MWI_FcnMaxI_In11 > 0)
160
                  then MWI_FcnMaxI_In11
161
                  else 0)
162
         else 639));
163
164
   rlt__Arrow = (639 -> 
165
      (if (not SETUP)
166
         then 
167
               (if (MWI_FcnMaxI_In1 > 0)
168
                  then MWI_FcnMaxI_In1
169
                  else 0)
170
         else 639));
171
172
173
   p23 = (true -> (((not (enable and 
174
      (not KP_CLEAR))) or 
175
      (not ((((((((((KP_1 and 
176
      (not (pre KP_1))) or 
177
      (KP_2 and 
178
      (not (pre KP_2)))) or 
179
      (KP_3 and 
180
      (not (pre KP_3)))) or 
181
      (KP_4 and 
182
      (not (pre KP_4)))) or 
183
      (KP_5 and 
184
      (not (pre KP_5)))) or 
185
      (KP_6 and 
186
      (not (pre KP_6)))) or 
187
      (KP_7 and 
188
      (not (pre KP_7)))) or 
189
      (KP_8 and 
190
      (not (pre KP_8)))) or 
191
      (KP_9 and 
192
      (not (pre KP_9)))) or 
193
      (KP_0 and 
194
      (not (pre KP_0)))))) or 
195
      (MIDDLE_DIGIT = ((STEPS_TO_COOK - (STEPS_TO_COOK div 60)*60) div 10))));
196
197
   p35 = (true -> ((not (enable and 
198
      (not KP_CLEAR))) or 
199
      ((not ((KP_8 and 
200
      (not (pre KP_8))) and 
201
      ((not (KP_7 and 
202
      (not (pre KP_7)))) and 
203
      ((not (KP_6 and 
204
      (not (pre KP_6)))) and 
205
      ((not (KP_5 and 
206
      (not (pre KP_5)))) and 
207
      ((not (KP_4 and 
208
      (not (pre KP_4)))) and 
209
      ((not (KP_3 and 
210
      (not (pre KP_3)))) and 
211
      ((not (KP_2 and 
212
      (not (pre KP_2)))) and 
213
      ((not (KP_1 and 
214
      (not (pre KP_1)))) and 
215
      (not (KP_0 and 
216
      (not (pre KP_0))))))))))))) or 
217
      (RIGHT_DIGIT = 8))));
218
219
   p33 = (true -> ((not (enable and 
220
      (not KP_CLEAR))) or 
221
      ((not ((KP_6 and 
222
      (not (pre KP_6))) and 
223
      ((not (KP_5 and 
224
      (not (pre KP_5)))) and 
225
      ((not (KP_4 and 
226
      (not (pre KP_4)))) and 
227
      ((not (KP_3 and 
228
      (not (pre KP_3)))) and 
229
      ((not (KP_2 and 
230
      (not (pre KP_2)))) and 
231
      ((not (KP_1 and 
232
      (not (pre KP_1)))) and 
233
      (not (KP_0 and 
234
      (not (pre KP_0))))))))))) or 
235
      (RIGHT_DIGIT = 6))));
236
237
   MIDDLE_DIGIT = microwave_microwave_TIME_ON_DISPLAY_SECONDS_TO_TENS__QUOTIENT;
238
239
   RIGHT_DIGIT = microwave_microwave_TIME_ON_DISPLAY_SECONDS_TO_TENS__REMAINDER;
240
241
   p25 = (enable or 
242
      (RIGHT_DIGIT = 0));
243
244
   p22 = (true -> (((not (enable and 
245
      (not KP_CLEAR))) or 
246
      (not ((((((((((KP_1 and 
247
      (not (pre KP_1))) or 
248
      (KP_2 and 
249
      (not (pre KP_2)))) or 
250
      (KP_3 and 
251
      (not (pre KP_3)))) or 
252
      (KP_4 and 
253
      (not (pre KP_4)))) or 
254
      (KP_5 and 
255
      (not (pre KP_5)))) or 
256
      (KP_6 and 
257
      (not (pre KP_6)))) or 
258
      (KP_7 and 
259
      (not (pre KP_7)))) or 
260
      (KP_8 and 
261
      (not (pre KP_8)))) or 
262
      (KP_9 and 
263
      (not (pre KP_9)))) or 
264
      (KP_0 and 
265
      (not (pre KP_0)))))) or 
266
      (MIDDLE_DIGIT = (pre RIGHT_DIGIT))));
267
268
   p36 = (true -> ((not (enable and 
269
      (not KP_CLEAR))) or 
270
      ((not ((KP_9 and 
271
      (not (pre KP_9))) and 
272
      ((not (KP_8 and 
273
      (not (pre KP_8)))) and 
274
      ((not (KP_7 and 
275
      (not (pre KP_7)))) and 
276
      ((not (KP_6 and 
277
      (not (pre KP_6)))) and 
278
      ((not (KP_5 and 
279
      (not (pre KP_5)))) and 
280
      ((not (KP_4 and 
281
      (not (pre KP_4)))) and 
282
      ((not (KP_3 and 
283
      (not (pre KP_3)))) and 
284
      ((not (KP_2 and 
285
      (not (pre KP_2)))) and 
286
      ((not (KP_1 and 
287
      (not (pre KP_1)))) and 
288
      (not (KP_0 and 
289
      (not (pre KP_0)))))))))))))) or 
290
      (RIGHT_DIGIT = 9))));
291
292
   MWI_FcnMaxI_In1 = ((pre rlt__Arrow) - 1);
293
294
   CLEAR_PRESSED = (KP_CLEAR -> (KP_CLEAR and 
295
      (not (pre KP_CLEAR))));
296
297 9b45f3df ploc
   microwave_microwave_TIME_ON_DISPLAY_SECONDS_TO_MINUTES__QUOTIENT = ((chart_microwave_mode__logic_steps_remaining div 1) div 60);
298 fa9e78e5 bourbouh
299 9b45f3df ploc
   microwave_microwave_TIME_ON_DISPLAY_SECONDS_TO_TENS__REMAINDER = (((chart_microwave_mode__logic_steps_remaining div 1) - (((chart_microwave_mode__logic_steps_remaining div 1) div 60) * 60)) - ((((chart_microwave_mode__logic_steps_remaining div 1) - (((chart_microwave_mode__logic_steps_remaining div 1) div 60) * 60)) div 10) * 10));
300 fa9e78e5 bourbouh
301
   SUSPENDED = 
302 9b45f3df ploc
      (if (3 = microwave_microwave_mode__logic_mode_)
303 fa9e78e5 bourbouh
         then true
304
         else false);
305
306
   p31 = (true -> ((not (enable and 
307
      (not KP_CLEAR))) or 
308
      ((not ((KP_4 and 
309
      (not (pre KP_4))) and 
310
      ((not (KP_3 and 
311
      (not (pre KP_3)))) and 
312
      ((not (KP_2 and 
313
      (not (pre KP_2)))) and 
314
      ((not (KP_1 and 
315
      (not (pre KP_1)))) and 
316
      (not (KP_0 and 
317
      (not (pre KP_0))))))))) or 
318
      (RIGHT_DIGIT = 4))));
319
320
   p37 = (true -> ((not (enable and 
321
      (not KP_CLEAR))) or 
322
      (((((((((((KP_1 and 
323
      (not (pre KP_1))) or 
324
      (KP_2 and 
325
      (not (pre KP_2)))) or 
326
      (KP_3 and 
327
      (not (pre KP_3)))) or 
328
      (KP_4 and 
329
      (not (pre KP_4)))) or 
330
      (KP_5 and 
331
      (not (pre KP_5)))) or 
332
      (KP_6 and 
333
      (not (pre KP_6)))) or 
334
      (KP_7 and 
335
      (not (pre KP_7)))) or 
336
      (KP_8 and 
337
      (not (pre KP_8)))) or 
338
      (KP_9 and 
339
      (not (pre KP_9)))) or 
340
      (KP_0 and 
341
      (not (pre KP_0)))) or 
342
      (RIGHT_DIGIT = (pre RIGHT_DIGIT)))));
343
344
   MWI_FcnMaxI_In11 = ((pre rlt__Arrow1) - 1);
345
346
   MWI_FcnMaxI_In15 = ((pre rlt__Arrow2) - 1);
347
348
   p24 = (true -> (((not (enable and 
349
      (not KP_CLEAR))) or 
350
      ((((((((((KP_1 and 
351
      (not (pre KP_1))) or 
352
      (KP_2 and 
353
      (not (pre KP_2)))) or 
354
      (KP_3 and 
355
      (not (pre KP_3)))) or 
356
      (KP_4 and 
357
      (not (pre KP_4)))) or 
358
      (KP_5 and 
359
      (not (pre KP_5)))) or 
360
      (KP_6 and 
361
      (not (pre KP_6)))) or 
362
      (KP_7 and 
363
      (not (pre KP_7)))) or 
364
      (KP_8 and 
365
      (not (pre KP_8)))) or 
366
      (KP_9 and 
367
      (not (pre KP_9)))) or 
368
      (KP_0 and 
369
      (not (pre KP_0))))) or 
370
      (MIDDLE_DIGIT = (pre MIDDLE_DIGIT))));
371
372
373
   p26 = ((not (enable and 
374
      KP_CLEAR)) or 
375
      (RIGHT_DIGIT = 0));
376
377 9b45f3df ploc
   microwave_microwave_TIME_ON_DISPLAY_SECONDS_TO_TENS__QUOTIENT = (((chart_microwave_mode__logic_steps_remaining div 1) - (((chart_microwave_mode__logic_steps_remaining div 1) div 60) * 60)) div 10);
378 fa9e78e5 bourbouh
379
   MWI_FcnMaxI_In16 = ((pre rlt__Arrow3) - 1);
380
381
382
   MWI_FcnMaxI_In12 = ((pre rlt__Arrow4) - 1);
383
384
385
   p30 = (true -> ((not (enable and 
386
      (not KP_CLEAR))) or 
387
      ((not ((KP_3 and 
388
      (not (pre KP_3))) and 
389
      ((not (KP_2 and 
390
      (not (pre KP_2)))) and 
391
      ((not (KP_1 and 
392
      (not (pre KP_1)))) and 
393
      (not (KP_0 and 
394
      (not (pre KP_0)))))))) or 
395
      (RIGHT_DIGIT = 3))));
396
397
   COOKING = 
398 9b45f3df ploc
      (if (2 = microwave_microwave_mode__logic_mode_)
399 fa9e78e5 bourbouh
         then true
400
         else false);
401
402
   LEFT_DIGIT = microwave_microwave_TIME_ON_DISPLAY_SECONDS_TO_MINUTES__QUOTIENT;
403
404
   START_PRESSED = (KP_START -> (KP_START and 
405
      (not (pre KP_START))));
406
407 9b45f3df ploc
   chart_microwave_mode__logic_start = 
408 fa9e78e5 bourbouh
      (if (START_PRESSED = false)
409
         then 0
410
         else 1);
411
412 9b45f3df ploc
   chart_microwave_mode__logic_clear_off = 
413 fa9e78e5 bourbouh
      (if (CLEAR_PRESSED = false)
414
         then 0
415
         else 1);
416
417 9b45f3df ploc
   chart_microwave_mode__logic_door_closed = 
418 fa9e78e5 bourbouh
      (if (DOOR_CLOSED = false)
419
         then 0
420
         else 1);
421
422 9b45f3df ploc
   chart_microwave_mode__logic____wakeup___ = true;
423 fa9e78e5 bourbouh
424 9b45f3df ploc
   chart_microwave_mode__logic_rlt_evtInitStep = (true -> 
425
      (if (pre chart_microwave_mode__logic____wakeup___)
426 fa9e78e5 bourbouh
         then false
427 9b45f3df ploc
         else (pre chart_microwave_mode__logic_rlt_evtInitStep)));
428 fa9e78e5 bourbouh
429 9b45f3df ploc
   chart_microwave_mode__logic_begin_state_states___root = (0 -> (pre chart_microwave_mode__logic_final_state_states___root));
430 fa9e78e5 bourbouh
431 9b45f3df ploc
   chart_microwave_mode__logic_begin_state_outports_mode_ = (0 -> (pre chart_microwave_mode__logic_mode_));
432 fa9e78e5 bourbouh
433 9b45f3df ploc
   chart_microwave_mode__logic_begin_state_outports_steps_remaining = (0 -> (pre chart_microwave_mode__logic_steps_remaining));
434 fa9e78e5 bourbouh
435 9b45f3df ploc
   chart_microwave_mode__logic_final_state_states___root = 
436
      (if chart_microwave_mode__logic____wakeup___
437 fa9e78e5 bourbouh
         then 
438 9b45f3df ploc
               (if chart_microwave_mode__logic_rlt_evtInitStep
439
                  then rlt_enter_microwave_mode__logic_rlt_state_2_states___root
440 fa9e78e5 bourbouh
                  else 
441 9b45f3df ploc
               (if ((not rlt_eval_microwave_mode__logic_rlt_fired_1) and 
442 fa9e78e5 bourbouh
                  
443
                  
444 9b45f3df ploc
                  ((rlt_eval_microwave_mode__logic_rlt_state_3_states___root >= 1) and 
445
                  (rlt_eval_microwave_mode__logic_rlt_state_3_states___root <= 3)))
446 fa9e78e5 bourbouh
                  then 
447 9b45f3df ploc
                        (if rlt_eval_microwave_mode__logic_ON_rlt_fired_6
448 fa9e78e5 bourbouh
                           then 
449 9b45f3df ploc
                                 (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_11_states___root = 3))
450 fa9e78e5 bourbouh
                                    then 
451
                                          
452
                                          3
453 9b45f3df ploc
                                    else rlt_eval_microwave_mode__logic_ON_rlt_state_11_states___root)
454
                           else rlt_eval_microwave_mode__logic_ON_rlt_state_11_states___root)
455
                  else rlt_eval_microwave_mode__logic_rlt_state_3_states___root))
456
         else chart_microwave_mode__logic_begin_state_states___root);
457 fa9e78e5 bourbouh
458 9b45f3df ploc
   chart_microwave_mode__logic_mode_ = 
459
      (if chart_microwave_mode__logic____wakeup___
460 fa9e78e5 bourbouh
         then 
461 9b45f3df ploc
               (if chart_microwave_mode__logic_rlt_evtInitStep
462 fa9e78e5 bourbouh
                  then 
463 9b45f3df ploc
                        (if (not (chart_microwave_mode__logic_begin_state_states___root = 4))
464 fa9e78e5 bourbouh
                           then 1
465 9b45f3df ploc
                           else chart_microwave_mode__logic_begin_state_outports_mode_)
466 fa9e78e5 bourbouh
                  else 
467 9b45f3df ploc
               (if ((not rlt_eval_microwave_mode__logic_rlt_fired_1) and 
468 fa9e78e5 bourbouh
                  
469
                  
470 9b45f3df ploc
                  ((rlt_eval_microwave_mode__logic_rlt_state_3_states___root >= 1) and 
471
                  (rlt_eval_microwave_mode__logic_rlt_state_3_states___root <= 3)))
472 fa9e78e5 bourbouh
                  then 
473 9b45f3df ploc
                        (if rlt_eval_microwave_mode__logic_ON_rlt_fired_6
474 fa9e78e5 bourbouh
                           then 
475 9b45f3df ploc
                                 (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_11_states___root = 3))
476 fa9e78e5 bourbouh
                                    then 3
477 9b45f3df ploc
                                    else rlt_eval_microwave_mode__logic_ON_rlt_state_11_outports_mode_)
478
                           else rlt_eval_microwave_mode__logic_ON_rlt_state_11_outports_mode_)
479
                  else rlt_eval_microwave_mode__logic_rlt_state_3_outports_mode_))
480
         else chart_microwave_mode__logic_begin_state_outports_mode_);
481 fa9e78e5 bourbouh
482 9b45f3df ploc
   chart_microwave_mode__logic_steps_remaining = 
483
      (if chart_microwave_mode__logic____wakeup___
484 fa9e78e5 bourbouh
         then 
485 9b45f3df ploc
               (if chart_microwave_mode__logic_rlt_evtInitStep
486
                  then chart_microwave_mode__logic_begin_state_outports_steps_remaining
487 fa9e78e5 bourbouh
                  else 
488 9b45f3df ploc
               (if ((not rlt_eval_microwave_mode__logic_rlt_fired_1) and 
489 fa9e78e5 bourbouh
                  
490
                  
491 9b45f3df ploc
                  ((rlt_eval_microwave_mode__logic_rlt_state_3_states___root >= 1) and 
492
                  (rlt_eval_microwave_mode__logic_rlt_state_3_states___root <= 3)))
493 fa9e78e5 bourbouh
                  then 
494 9b45f3df ploc
                        (if rlt_eval_microwave_mode__logic_ON_rlt_fired_5
495
                           then (rlt_eval_microwave_mode__logic_ON_rlt_state_6_outports_steps_remaining - 1)
496
                           else rlt_eval_microwave_mode__logic_ON_rlt_state_6_outports_steps_remaining)
497
                  else rlt_eval_microwave_mode__logic_rlt_state_1_outports_steps_remaining))
498
         else chart_microwave_mode__logic_begin_state_outports_steps_remaining);
499 fa9e78e5 bourbouh
500
   
501
   
502 9b45f3df ploc
   rlt_eval_microwave_mode__logic_rlt_fired_0 = (chart_microwave_mode__logic_begin_state_states___root = 4);
503 fa9e78e5 bourbouh
504
   
505
   
506 9b45f3df ploc
   rlt_eval_microwave_mode__logic_rlt_state_1_outports_steps_remaining = 
507
      (if rlt_eval_microwave_mode__logic_rlt_fired_0
508 fa9e78e5 bourbouh
         then STEPS_TO_COOK
509 9b45f3df ploc
         else chart_microwave_mode__logic_begin_state_outports_steps_remaining);
510 fa9e78e5 bourbouh
511
   
512
   
513 9b45f3df ploc
   rlt_eval_microwave_mode__logic_rlt_fired_1 = (rlt_eval_microwave_mode__logic_rlt_fired_0 and 
514
      ((chart_microwave_mode__logic_begin_state_states___root = 4) and 
515 fa9e78e5 bourbouh
      (
516 9b45f3df ploc
      (if (chart_microwave_mode__logic_start <> 0)
517 fa9e78e5 bourbouh
         then true
518
         else false) and 
519
      
520
      (if (
521
         (if ((STEPS_TO_COOK > 0) = false)
522
            then 0
523
            else 1) <> 0)
524
         then true
525
         else false))));
526
527
   
528
   
529 9b45f3df ploc
   rlt_eval_microwave_mode__logic_rlt_state_2_states___root = 
530
      (if rlt_eval_microwave_mode__logic_rlt_fired_1
531 fa9e78e5 bourbouh
         then 
532 9b45f3df ploc
               (if (chart_microwave_mode__logic_begin_state_states___root = 4)
533 fa9e78e5 bourbouh
                  then 
534
                        
535
                        0
536 9b45f3df ploc
                  else chart_microwave_mode__logic_begin_state_states___root)
537
         else chart_microwave_mode__logic_begin_state_states___root);
538 fa9e78e5 bourbouh
539
   
540
   
541 9b45f3df ploc
   rlt_eval_microwave_mode__logic_rlt_state_3_states___root = 
542
      (if rlt_eval_microwave_mode__logic_rlt_fired_1
543
         then rlt_enter_microwave_mode__logic_ON_rlt_state_4_states___root
544
         else rlt_eval_microwave_mode__logic_rlt_state_2_states___root);
545 fa9e78e5 bourbouh
   
546
   
547
548
   
549
   
550 9b45f3df ploc
   rlt_eval_microwave_mode__logic_rlt_state_3_outports_mode_ = 
551
      (if rlt_eval_microwave_mode__logic_rlt_fired_1
552 fa9e78e5 bourbouh
         then 
553 9b45f3df ploc
               (if rlt_enter_microwave_mode__logic_ON_rlt_fired_2
554 fa9e78e5 bourbouh
                  then 
555 9b45f3df ploc
                        (if (not (rlt_enter_microwave_mode__logic_ON_rlt_state_2_states___root = 3))
556 fa9e78e5 bourbouh
                           then 3
557 9b45f3df ploc
                           else rlt_enter_microwave_mode__logic_ON_rlt_state_2_outports_mode_)
558
                  else rlt_enter_microwave_mode__logic_ON_rlt_state_2_outports_mode_)
559
         else chart_microwave_mode__logic_begin_state_outports_mode_);
560 fa9e78e5 bourbouh
   
561
   
562
563
   
564
   
565 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_fired_1 = (((rlt_eval_microwave_mode__logic_rlt_state_3_states___root = 2) and 
566
      (rlt_eval_microwave_mode__logic_rlt_state_1_outports_steps_remaining <= 0)) and 
567
      (rlt_eval_microwave_mode__logic_rlt_state_3_states___root = 2));
568 fa9e78e5 bourbouh
569
   
570
   
571 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_1_states___root = 
572
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_1
573 fa9e78e5 bourbouh
         then 
574
               (if 
575
                  
576 9b45f3df ploc
                  ((rlt_eval_microwave_mode__logic_rlt_state_3_states___root >= 1) and 
577
                  (rlt_eval_microwave_mode__logic_rlt_state_3_states___root <= 3))
578 fa9e78e5 bourbouh
                  then 
579
                        
580
                        0
581 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_rlt_state_3_states___root)
582
         else rlt_eval_microwave_mode__logic_rlt_state_3_states___root);
583 fa9e78e5 bourbouh
584
   
585
   
586 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_2_states___root = 
587
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_1
588 fa9e78e5 bourbouh
         then 
589 9b45f3df ploc
               (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_1_states___root = 4))
590 fa9e78e5 bourbouh
                  then 
591
                        
592
                        4
593 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_1_states___root)
594
         else rlt_eval_microwave_mode__logic_ON_rlt_state_1_states___root);
595 fa9e78e5 bourbouh
   
596
   
597
598
   
599
   
600 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_fired_2 = ((rlt_eval_microwave_mode__logic_ON_rlt_state_2_states___root = 3) and 
601 fa9e78e5 bourbouh
      ((
602 9b45f3df ploc
      (if (chart_microwave_mode__logic_start <> 0)
603 fa9e78e5 bourbouh
         then true
604
         else false) and 
605
      
606 9b45f3df ploc
      (if (chart_microwave_mode__logic_door_closed <> 0)
607 fa9e78e5 bourbouh
         then true
608
         else false)) and 
609 9b45f3df ploc
      (not rlt_eval_microwave_mode__logic_ON_rlt_fired_1)));
610 fa9e78e5 bourbouh
611
   
612
   
613 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_complete_1 = (rlt_eval_microwave_mode__logic_ON_rlt_fired_2 or 
614
      rlt_eval_microwave_mode__logic_ON_rlt_fired_1);
615 fa9e78e5 bourbouh
616
   
617
   
618 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_3_states___root = 
619
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_2
620 fa9e78e5 bourbouh
         then 
621 9b45f3df ploc
               (if (rlt_eval_microwave_mode__logic_ON_rlt_state_2_states___root = 3)
622 fa9e78e5 bourbouh
                  then 
623
                        
624
                        1
625 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_2_states___root)
626
         else rlt_eval_microwave_mode__logic_ON_rlt_state_2_states___root);
627 fa9e78e5 bourbouh
628
   
629
   
630 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_3_outports_mode_ = 
631
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_1
632 fa9e78e5 bourbouh
         then 
633 9b45f3df ploc
               (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_1_states___root = 4))
634 fa9e78e5 bourbouh
                  then 1
635 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_rlt_state_3_outports_mode_)
636
         else rlt_eval_microwave_mode__logic_rlt_state_3_outports_mode_);
637 fa9e78e5 bourbouh
638
   
639
   
640 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_4_states___root = 
641
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_2
642 fa9e78e5 bourbouh
         then 
643 9b45f3df ploc
               (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_3_states___root = 2))
644 fa9e78e5 bourbouh
                  then 
645
                        
646
                        2
647 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_3_states___root)
648
         else rlt_eval_microwave_mode__logic_ON_rlt_state_3_states___root);
649 fa9e78e5 bourbouh
   
650
   
651
652
   
653
   
654 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_4_outports_mode_ = 
655
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_2
656 fa9e78e5 bourbouh
         then 
657 9b45f3df ploc
               (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_3_states___root = 2))
658 fa9e78e5 bourbouh
                  then 2
659 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_3_outports_mode_)
660
         else rlt_eval_microwave_mode__logic_ON_rlt_state_3_outports_mode_);
661 fa9e78e5 bourbouh
   
662
   
663
664
   
665
   
666 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_fired_4 = (((rlt_eval_microwave_mode__logic_ON_rlt_state_4_states___root = 3) and 
667 fa9e78e5 bourbouh
      (
668 9b45f3df ploc
      (if (chart_microwave_mode__logic_clear_off <> 0)
669 fa9e78e5 bourbouh
         then true
670
         else false) and 
671 9b45f3df ploc
      (not rlt_eval_microwave_mode__logic_ON_rlt_complete_1))) and 
672
      ((rlt_eval_microwave_mode__logic_ON_rlt_state_4_states___root = 3) and 
673
      (not rlt_eval_microwave_mode__logic_ON_rlt_complete_1)));
674 fa9e78e5 bourbouh
675
   
676
   
677 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_complete_2 = (rlt_eval_microwave_mode__logic_ON_rlt_fired_4 or 
678
      rlt_eval_microwave_mode__logic_ON_rlt_complete_1);
679 fa9e78e5 bourbouh
680
   
681
   
682 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_6_states___root = 
683
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_4
684 fa9e78e5 bourbouh
         then 
685
               (if 
686
                  
687 9b45f3df ploc
                  ((rlt_eval_microwave_mode__logic_ON_rlt_state_4_states___root >= 1) and 
688
                  (rlt_eval_microwave_mode__logic_ON_rlt_state_4_states___root <= 3))
689 fa9e78e5 bourbouh
                  then 
690
                        
691
                        0
692 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_4_states___root)
693
         else rlt_eval_microwave_mode__logic_ON_rlt_state_4_states___root);
694 fa9e78e5 bourbouh
695
   
696
   
697 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_6_outports_steps_remaining = 
698
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_4
699 fa9e78e5 bourbouh
         then 0
700 9b45f3df ploc
         else rlt_eval_microwave_mode__logic_rlt_state_1_outports_steps_remaining);
701 fa9e78e5 bourbouh
702
   
703
   
704 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_7_states___root = 
705
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_4
706 fa9e78e5 bourbouh
         then 
707 9b45f3df ploc
               (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_6_states___root = 4))
708 fa9e78e5 bourbouh
                  then 
709
                        
710
                        4
711 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_6_states___root)
712
         else rlt_eval_microwave_mode__logic_ON_rlt_state_6_states___root);
713 fa9e78e5 bourbouh
   
714
   
715
716
   
717
   
718 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_fired_5 = ((rlt_eval_microwave_mode__logic_ON_rlt_state_7_states___root = 2) and 
719
      ((rlt_eval_microwave_mode__logic_ON_rlt_state_6_outports_steps_remaining > 0) and 
720
      (not rlt_eval_microwave_mode__logic_ON_rlt_complete_2)));
721 fa9e78e5 bourbouh
722
   
723
   
724 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_8_outports_mode_ = 
725
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_4
726 fa9e78e5 bourbouh
         then 
727 9b45f3df ploc
               (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_6_states___root = 4))
728 fa9e78e5 bourbouh
                  then 1
729 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_4_outports_mode_)
730
         else rlt_eval_microwave_mode__logic_ON_rlt_state_4_outports_mode_);
731 fa9e78e5 bourbouh
732
   
733
   
734 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_9_states___root = 
735
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_5
736 fa9e78e5 bourbouh
         then 
737 9b45f3df ploc
               (if (rlt_eval_microwave_mode__logic_ON_rlt_state_7_states___root = 2)
738 fa9e78e5 bourbouh
                  then 
739
                        
740
                        1
741 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_7_states___root)
742
         else rlt_eval_microwave_mode__logic_ON_rlt_state_7_states___root);
743 fa9e78e5 bourbouh
744
   
745
   
746 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_10_states___root = 
747
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_5
748 fa9e78e5 bourbouh
         then 
749 9b45f3df ploc
               (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_9_states___root = 2))
750 fa9e78e5 bourbouh
                  then 
751
                        
752
                        2
753 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_9_states___root)
754
         else rlt_eval_microwave_mode__logic_ON_rlt_state_9_states___root);
755 fa9e78e5 bourbouh
   
756
   
757
758
   
759
   
760 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_fired_6 = ((rlt_eval_microwave_mode__logic_ON_rlt_state_10_states___root = 2) and 
761 fa9e78e5 bourbouh
      ((
762 9b45f3df ploc
      (if (chart_microwave_mode__logic_clear_off <> 0)
763 fa9e78e5 bourbouh
         then true
764
         else false) or 
765
      (not 
766 9b45f3df ploc
      (if (chart_microwave_mode__logic_door_closed <> 0)
767 fa9e78e5 bourbouh
         then true
768
         else false))) and 
769 9b45f3df ploc
      (not (rlt_eval_microwave_mode__logic_ON_rlt_fired_5 or 
770
      rlt_eval_microwave_mode__logic_ON_rlt_complete_2))));
771 fa9e78e5 bourbouh
772
   
773
   
774 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_11_states___root = 
775
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_6
776 fa9e78e5 bourbouh
         then 
777 9b45f3df ploc
               (if (rlt_eval_microwave_mode__logic_ON_rlt_state_10_states___root = 2)
778 fa9e78e5 bourbouh
                  then 
779
                        
780
                        1
781 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_10_states___root)
782
         else rlt_eval_microwave_mode__logic_ON_rlt_state_10_states___root);
783 fa9e78e5 bourbouh
784
   
785
   
786 9b45f3df ploc
   rlt_eval_microwave_mode__logic_ON_rlt_state_11_outports_mode_ = 
787
      (if rlt_eval_microwave_mode__logic_ON_rlt_fired_5
788 fa9e78e5 bourbouh
         then 
789 9b45f3df ploc
               (if (not (rlt_eval_microwave_mode__logic_ON_rlt_state_9_states___root = 2))
790 fa9e78e5 bourbouh
                  then 2
791 9b45f3df ploc
                  else rlt_eval_microwave_mode__logic_ON_rlt_state_8_outports_mode_)
792
         else rlt_eval_microwave_mode__logic_ON_rlt_state_8_outports_mode_);
793 fa9e78e5 bourbouh
794 9b45f3df ploc
   rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root = 
795 fa9e78e5 bourbouh
      (if (not 
796
         
797 9b45f3df ploc
         ((rlt_eval_microwave_mode__logic_rlt_state_2_states___root >= 1) and 
798
         (rlt_eval_microwave_mode__logic_rlt_state_2_states___root <= 3)))
799 fa9e78e5 bourbouh
         then 
800
               
801
               1
802 9b45f3df ploc
         else rlt_eval_microwave_mode__logic_rlt_state_2_states___root);
803 fa9e78e5 bourbouh
804
   
805
   
806 9b45f3df ploc
   rlt_enter_microwave_mode__logic_ON_rlt_fired_0 = ((not 
807 fa9e78e5 bourbouh
      
808 9b45f3df ploc
      ((rlt_eval_microwave_mode__logic_rlt_state_2_states___root >= 1) and 
809
      (rlt_eval_microwave_mode__logic_rlt_state_2_states___root <= 3))) and 
810 fa9e78e5 bourbouh
      
811
      
812 9b45f3df ploc
      ((rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root >= 1) and 
813
      (rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root <= 3)));
814 fa9e78e5 bourbouh
815
   
816
   
817 9b45f3df ploc
   rlt_enter_microwave_mode__logic_ON_rlt_fired_1 = (rlt_enter_microwave_mode__logic_ON_rlt_fired_0 and 
818 fa9e78e5 bourbouh
      (
819
      
820 9b45f3df ploc
      ((rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root >= 1) and 
821
      (rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root <= 3)) and 
822 fa9e78e5 bourbouh
      
823 9b45f3df ploc
      (if (chart_microwave_mode__logic_door_closed <> 0)
824 fa9e78e5 bourbouh
         then true
825
         else false)));
826
827
   
828
   
829 9b45f3df ploc
   rlt_enter_microwave_mode__logic_ON_rlt_state_2_states___root = 
830
      (if rlt_enter_microwave_mode__logic_ON_rlt_fired_1
831 fa9e78e5 bourbouh
         then 
832 9b45f3df ploc
               (if (not (rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root = 2))
833 fa9e78e5 bourbouh
                  then 
834
                        
835
                        2
836 9b45f3df ploc
                  else rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root)
837
         else rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root);
838 fa9e78e5 bourbouh
   
839
   
840
841
   
842
   
843 9b45f3df ploc
   rlt_enter_microwave_mode__logic_ON_rlt_state_2_outports_mode_ = 
844
      (if rlt_enter_microwave_mode__logic_ON_rlt_fired_1
845 fa9e78e5 bourbouh
         then 
846 9b45f3df ploc
               (if (not (rlt_enter_microwave_mode__logic_ON_rlt_state_1_states___root = 2))
847 fa9e78e5 bourbouh
                  then 2
848 9b45f3df ploc
                  else chart_microwave_mode__logic_begin_state_outports_mode_)
849
         else chart_microwave_mode__logic_begin_state_outports_mode_);
850 fa9e78e5 bourbouh
   
851
   
852
853
   
854
   
855 9b45f3df ploc
   rlt_enter_microwave_mode__logic_ON_rlt_fired_2 = (rlt_enter_microwave_mode__logic_ON_rlt_fired_0 and 
856 fa9e78e5 bourbouh
      (
857
      
858 9b45f3df ploc
      ((rlt_enter_microwave_mode__logic_ON_rlt_state_2_states___root >= 1) and 
859
      (rlt_enter_microwave_mode__logic_ON_rlt_state_2_states___root <= 3)) and 
860
      (not rlt_enter_microwave_mode__logic_ON_rlt_fired_1)));
861 fa9e78e5 bourbouh
862
   
863
   
864 9b45f3df ploc
   rlt_enter_microwave_mode__logic_ON_rlt_state_4_states___root = 
865
      (if rlt_enter_microwave_mode__logic_ON_rlt_fired_2
866 fa9e78e5 bourbouh
         then 
867 9b45f3df ploc
               (if (not (rlt_enter_microwave_mode__logic_ON_rlt_state_2_states___root = 3))
868 fa9e78e5 bourbouh
                  then 
869
                        
870
                        3
871 9b45f3df ploc
                  else rlt_enter_microwave_mode__logic_ON_rlt_state_2_states___root)
872
         else rlt_enter_microwave_mode__logic_ON_rlt_state_2_states___root);
873 fa9e78e5 bourbouh
   
874
   
875
876
   
877
   
878 9b45f3df ploc
   rlt_enter_microwave_mode__logic_rlt_state_2_states___root = 
879
      (if (not (chart_microwave_mode__logic_begin_state_states___root = 4))
880 fa9e78e5 bourbouh
         then 
881
               
882
               4
883 9b45f3df ploc
         else chart_microwave_mode__logic_begin_state_states___root);
884 fa9e78e5 bourbouh
   
885
   
886
887 9b45f3df ploc
   microwave_microwave_mode__logic_mode_ = chart_microwave_mode__logic_mode_;
888 fa9e78e5 bourbouh
889
890
   MWI_FcnMaxI_In13 = ((pre rlt__Arrow5) - 1);
891
892
   p27 = (((not (enable and 
893
      (not KP_CLEAR))) or 
894
      ((not KP_0) or 
895
      (RIGHT_DIGIT = 0))) -> ((not (enable and 
896
      (not KP_CLEAR))) or 
897
      ((not (KP_0 and 
898
      (not (pre KP_0)))) or 
899
      (RIGHT_DIGIT = 0))));
900
901
   rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock = enable;
902
903
   KP_01 = KP_0;
904
905
   KP_11 = KP_1;
906
907
   KP_21 = KP_2;
908
909
   KP_31 = KP_3;
910
911
   KP_41 = KP_4;
912
913
   KP_51 = KP_5;
914
915
   KP_61 = KP_6;
916
917
   KP_71 = KP_7;
918
919
   KP_81 = KP_8;
920
921
   KP_91 = KP_9;
922
923
   microwave_microwave_KEYPAD_PROCESSING_DISPLAY_LEFT_DIGIT_DIGIT_TO_DISPLAY = (0 -> 
924
      (if rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock
925
         then 
926
               (if rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_init_step
927
                  then 0
928
                  else 
929
               (if KP_CLEAR
930
                  then 0
931
                  else 
932
               (if 
933
                  (if (
934
                     (if (KP_01 and 
935
                        (not (pre KP_01)))
936
                        then 0
937
                        else 
938
                     (if (KP_11 and 
939
                        (not (pre KP_11)))
940
                        then 1
941
                        else 
942
                     (if (KP_21 and 
943
                        (not (pre KP_21)))
944
                        then 2
945
                        else 
946
                     (if (KP_31 and 
947
                        (not (pre KP_31)))
948
                        then 3
949
                        else 
950
                     (if (KP_41 and 
951
                        (not (pre KP_41)))
952
                        then 4
953
                        else 
954
                     (if (KP_51 and 
955
                        (not (pre KP_51)))
956
                        then 5
957
                        else 
958
                     (if (KP_61 and 
959
                        (not (pre KP_61)))
960
                        then 6
961
                        else 
962
                     (if (KP_71 and 
963
                        (not (pre KP_71)))
964
                        then 7
965
                        else 
966
                     (if (KP_81 and 
967
                        (not (pre KP_81)))
968
                        then 8
969
                        else 
970
                     (if (KP_91 and 
971
                        (not (pre KP_91)))
972
                        then 9
973
                        else 10)))))))))) <= 9)
974
                     then true
975
                     else false)
976
                  then (pre microwave_microwave_KEYPAD_PROCESSING_DISPLAY_MIDDLE_DIGIT_DIGIT_TO_DISPLAY)
977
                  else (pre microwave_microwave_KEYPAD_PROCESSING_DISPLAY_LEFT_DIGIT_DIGIT_TO_DISPLAY))))
978
         else (pre microwave_microwave_KEYPAD_PROCESSING_DISPLAY_LEFT_DIGIT_DIGIT_TO_DISPLAY)));
979
980
   microwave_microwave_KEYPAD_PROCESSING_DISPLAY_MIDDLE_DIGIT_DIGIT_TO_DISPLAY = (0 -> 
981
      (if rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock
982
         then 
983
               (if rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_init_step
984
                  then 0
985
                  else 
986
               (if KP_CLEAR
987
                  then 0
988
                  else 
989
               (if 
990
                  (if (
991
                     (if (KP_01 and 
992
                        (not (pre KP_01)))
993
                        then 0
994
                        else 
995
                     (if (KP_11 and 
996
                        (not (pre KP_11)))
997
                        then 1
998
                        else 
999
                     (if (KP_21 and 
1000
                        (not (pre KP_21)))
1001
                        then 2
1002
                        else 
1003
                     (if (KP_31 and 
1004
                        (not (pre KP_31)))
1005
                        then 3
1006
                        else 
1007
                     (if (KP_41 and 
1008
                        (not (pre KP_41)))
1009
                        then 4
1010
                        else 
1011
                     (if (KP_51 and 
1012
                        (not (pre KP_51)))
1013
                        then 5
1014
                        else 
1015
                     (if (KP_61 and 
1016
                        (not (pre KP_61)))
1017
                        then 6
1018
                        else 
1019
                     (if (KP_71 and 
1020
                        (not (pre KP_71)))
1021
                        then 7
1022
                        else 
1023
                     (if (KP_81 and 
1024
                        (not (pre KP_81)))
1025
                        then 8
1026
                        else 
1027
                     (if (KP_91 and 
1028
                        (not (pre KP_91)))
1029
                        then 9
1030
                        else 10)))))))))) <= 9)
1031
                     then true
1032
                     else false)
1033
                  then (pre microwave_microwave_KEYPAD_PROCESSING_DISPLAY_RIGHT_DIGIT_DIGIT_TO_DISPLAY)
1034
                  else (pre microwave_microwave_KEYPAD_PROCESSING_DISPLAY_MIDDLE_DIGIT_DIGIT_TO_DISPLAY))))
1035
         else (pre microwave_microwave_KEYPAD_PROCESSING_DISPLAY_MIDDLE_DIGIT_DIGIT_TO_DISPLAY)));
1036
1037
   microwave_microwave_KEYPAD_PROCESSING_DISPLAY_RIGHT_DIGIT_DIGIT_TO_DISPLAY = (
1038
      (if KP_CLEAR
1039
         then 0
1040
         else 
1041
      (if 
1042
         (if (
1043
            (if KP_01
1044
               then 0
1045
               else 
1046
            (if KP_11
1047
               then 1
1048
               else 
1049
            (if KP_21
1050
               then 2
1051
               else 
1052
            (if KP_31
1053
               then 3
1054
               else 
1055
            (if KP_41
1056
               then 4
1057
               else 
1058
            (if KP_51
1059
               then 5
1060
               else 
1061
            (if KP_61
1062
               then 6
1063
               else 
1064
            (if KP_71
1065
               then 7
1066
               else 
1067
            (if KP_81
1068
               then 8
1069
               else 
1070
            (if KP_91
1071
               then 9
1072
               else 10)))))))))) <= 9)
1073
            then true
1074
            else false)
1075
         then 
1076
               (if KP_01
1077
                  then 0
1078
                  else 
1079
               (if KP_11
1080
                  then 1
1081
                  else 
1082
               (if KP_21
1083
                  then 2
1084
                  else 
1085
               (if KP_31
1086
                  then 3
1087
                  else 
1088
               (if KP_41
1089
                  then 4
1090
                  else 
1091
               (if KP_51
1092
                  then 5
1093
                  else 
1094
               (if KP_61
1095
                  then 6
1096
                  else 
1097
               (if KP_71
1098
                  then 7
1099
                  else 
1100
               (if KP_81
1101
                  then 8
1102
                  else 
1103
               (if KP_91
1104
                  then 9
1105
                  else 10))))))))))
1106
         else 0)) -> 
1107
      (if rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock
1108
         then 
1109
               (if rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_init_step
1110
                  then 
1111
                        (if KP_CLEAR
1112
                           then 0
1113
                           else 
1114
                        (if 
1115
                           (if (
1116
                              (if KP_01
1117
                                 then 0
1118
                                 else 
1119
                              (if KP_11
1120
                                 then 1
1121
                                 else 
1122
                              (if KP_21
1123
                                 then 2
1124
                                 else 
1125
                              (if KP_31
1126
                                 then 3
1127
                                 else 
1128
                              (if KP_41
1129
                                 then 4
1130
                                 else 
1131
                              (if KP_51
1132
                                 then 5
1133
                                 else 
1134
                              (if KP_61
1135
                                 then 6
1136
                                 else 
1137
                              (if KP_71
1138
                                 then 7
1139
                                 else 
1140
                              (if KP_81
1141
                                 then 8
1142
                                 else 
1143
                              (if KP_91
1144
                                 then 9
1145
                                 else 10)))))))))) <= 9)
1146
                              then true
1147
                              else false)
1148
                           then 
1149
                                 (if KP_01
1150
                                    then 0
1151
                                    else 
1152
                                 (if KP_11
1153
                                    then 1
1154
                                    else 
1155
                                 (if KP_21
1156
                                    then 2
1157
                                    else 
1158
                                 (if KP_31
1159
                                    then 3
1160
                                    else 
1161
                                 (if KP_41
1162
                                    then 4
1163
                                    else 
1164
                                 (if KP_51
1165
                                    then 5
1166
                                    else 
1167
                                 (if KP_61
1168
                                    then 6
1169
                                    else 
1170
                                 (if KP_71
1171
                                    then 7
1172
                                    else 
1173
                                 (if KP_81
1174
                                    then 8
1175
                                    else 
1176
                                 (if KP_91
1177
                                    then 9
1178
                                    else 10))))))))))
1179
                           else 0))
1180
                  else 
1181
               (if KP_CLEAR
1182
                  then 0
1183
                  else 
1184
               (if 
1185
                  (if (
1186
                     (if (KP_01 and 
1187
                        (not (pre KP_01)))
1188
                        then 0
1189
                        else 
1190
                     (if (KP_11 and 
1191
                        (not (pre KP_11)))
1192
                        then 1
1193
                        else 
1194
                     (if (KP_21 and 
1195
                        (not (pre KP_21)))
1196
                        then 2
1197
                        else 
1198
                     (if (KP_31 and 
1199
                        (not (pre KP_31)))
1200
                        then 3
1201
                        else 
1202
                     (if (KP_41 and 
1203
                        (not (pre KP_41)))
1204
                        then 4
1205
                        else 
1206
                     (if (KP_51 and 
1207
                        (not (pre KP_51)))
1208
                        then 5
1209
                        else 
1210
                     (if (KP_61 and 
1211
                        (not (pre KP_61)))
1212
                        then 6
1213
                        else 
1214
                     (if (KP_71 and 
1215
                        (not (pre KP_71)))
1216
                        then 7
1217
                        else 
1218
                     (if (KP_81 and 
1219
                        (not (pre KP_81)))
1220
                        then 8
1221
                        else 
1222
                     (if (KP_91 and 
1223
                        (not (pre KP_91)))
1224
                        then 9
1225
                        else 10)))))))))) <= 9)
1226
                     then true
1227
                     else false)
1228
                  then 
1229
                        (if (KP_01 and 
1230
                           (not (pre KP_01)))
1231
                           then 0
1232
                           else 
1233
                        (if (KP_11 and 
1234
                           (not (pre KP_11)))
1235
                           then 1
1236
                           else 
1237
                        (if (KP_21 and 
1238
                           (not (pre KP_21)))
1239
                           then 2
1240
                           else 
1241
                        (if (KP_31 and 
1242
                           (not (pre KP_31)))
1243
                           then 3
1244
                           else 
1245
                        (if (KP_41 and 
1246
                           (not (pre KP_41)))
1247
                           then 4
1248
                           else 
1249
                        (if (KP_51 and 
1250
                           (not (pre KP_51)))
1251
                           then 5
1252
                           else 
1253
                        (if (KP_61 and 
1254
                           (not (pre KP_61)))
1255
                           then 6
1256
                           else 
1257
                        (if (KP_71 and 
1258
                           (not (pre KP_71)))
1259
                           then 7
1260
                           else 
1261
                        (if (KP_81 and 
1262
                           (not (pre KP_81)))
1263
                           then 8
1264
                           else 
1265
                        (if (KP_91 and 
1266
                           (not (pre KP_91)))
1267
                           then 9
1268
                           else 10))))))))))
1269
                  else (pre microwave_microwave_KEYPAD_PROCESSING_DISPLAY_RIGHT_DIGIT_DIGIT_TO_DISPLAY))))
1270
         else (pre microwave_microwave_KEYPAD_PROCESSING_DISPLAY_RIGHT_DIGIT_DIGIT_TO_DISPLAY)));
1271
1272
   STEPS_TO_COOK = (
1273
      (if (rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_init_step and 
1274
         (not rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock))
1275
         then 0
1276
         else ((((microwave_microwave_KEYPAD_PROCESSING_DISPLAY_RIGHT_DIGIT_DIGIT_TO_DISPLAY * 1) + (microwave_microwave_KEYPAD_PROCESSING_DISPLAY_MIDDLE_DIGIT_DIGIT_TO_DISPLAY * 10)) + (microwave_microwave_KEYPAD_PROCESSING_DISPLAY_LEFT_DIGIT_DIGIT_TO_DISPLAY * 60)) * 1)) -> 
1277
      (if (rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_init_step and 
1278
         (not rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock))
1279
         then 0
1280
         else 
1281
      (if rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock
1282
         then ((((microwave_microwave_KEYPAD_PROCESSING_DISPLAY_RIGHT_DIGIT_DIGIT_TO_DISPLAY * 1) + (microwave_microwave_KEYPAD_PROCESSING_DISPLAY_MIDDLE_DIGIT_DIGIT_TO_DISPLAY * 10)) + (microwave_microwave_KEYPAD_PROCESSING_DISPLAY_LEFT_DIGIT_DIGIT_TO_DISPLAY * 60)) * 1)
1283
         else (pre STEPS_TO_COOK))));
1284
1285
   rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_init_step = (true -> 
1286
      (if (not rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock)
1287
         then true
1288
         else 
1289
      (if (pre rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_clock)
1290
         then false
1291
         else (pre rlt_condact_resetmicrowave_microwave_KEYPAD_PROCESSING_rlt_init_step))));
1292
1293
   SETUP = 
1294 9b45f3df ploc
      (if (1 = microwave_microwave_mode__logic_mode_)
1295 fa9e78e5 bourbouh
         then true
1296
         else false);
1297
1298
   p32 = (true -> ((not (enable and 
1299
      (not KP_CLEAR))) or 
1300
      ((not ((KP_5 and 
1301
      (not (pre KP_5))) and 
1302
      ((not (KP_4 and 
1303
      (not (pre KP_4)))) and 
1304
      ((not (KP_3 and 
1305
      (not (pre KP_3)))) and 
1306
      ((not (KP_2 and 
1307
      (not (pre KP_2)))) and 
1308
      ((not (KP_1 and 
1309
      (not (pre KP_1)))) and 
1310
      (not (KP_0 and 
1311
      (not (pre KP_0)))))))))) or 
1312
      (RIGHT_DIGIT = 5))));
1313
1314
   enable = (true -> 
1315 9b45f3df ploc
      (if (1 = (pre microwave_microwave_mode__logic_mode_))
1316 fa9e78e5 bourbouh
         then true
1317
         else false));
1318
1319
   p28 = (true -> ((not (enable and 
1320
      (not KP_CLEAR))) or 
1321
      ((not ((KP_1 and 
1322
      (not (pre KP_1))) and 
1323
      (not (KP_0 and 
1324
      (not (pre KP_0)))))) or 
1325
      (RIGHT_DIGIT = 1))));
1326
1327
1328
   p29 = (true -> ((not (enable and 
1329
      (not KP_CLEAR))) or 
1330
      ((not ((KP_2 and 
1331
      (not (pre KP_2))) and 
1332
      ((not (KP_1 and 
1333
      (not (pre KP_1)))) and 
1334
      (not (KP_0 and 
1335
      (not (pre KP_0))))))) or 
1336
      (RIGHT_DIGIT = 2))));
1337
1338
   p34 = (true -> ((not (enable and 
1339
      (not KP_CLEAR))) or 
1340
      ((not ((KP_7 and 
1341
      (not (pre KP_7))) and 
1342
      ((not (KP_6 and 
1343
      (not (pre KP_6)))) and 
1344
      ((not (KP_5 and 
1345
      (not (pre KP_5)))) and 
1346
      ((not (KP_4 and 
1347
      (not (pre KP_4)))) and 
1348
      ((not (KP_3 and 
1349
      (not (pre KP_3)))) and 
1350
      ((not (KP_2 and 
1351
      (not (pre KP_2)))) and 
1352
      ((not (KP_1 and 
1353
      (not (pre KP_1)))) and 
1354
      (not (KP_0 and 
1355
      (not (pre KP_0)))))))))))) or 
1356
      (RIGHT_DIGIT = 7))));
1357
1358
   OK = ((not (enable and 
1359
      KP_CLEAR)) or 
1360
      (MIDDLE_DIGIT = 0));
1361
1362
  --%PROPERTY OK=true;
1363
  --%MAIN;
1364
1365
tel