1                       radix   dec
2                       ; Code bank 0; Start address: 0; End address: 4095
3      0000 :           org     0
4                       ; Define start addresses for data regions
5    00000070 = shared___globals equ 112
6    00000020 = globals___0 equ 32
7    000000a0 = globals___1 equ 160
8    00000120 = globals___2 equ 288
9    000001a0 = globals___3 equ 416
10   00000000 = __indf equ 0
11   00000002 = __pcl equ 2
12   00000003 = __status equ 3
13   00000004 = __fsr equ 4
14   00000003 = __c___byte equ 3
15   00000000 = __c___bit equ 0
16   00000003 = __z___byte equ 3
17   00000002 = __z___bit equ 2
18   00000003 = __rp0___byte equ 3
19   00000005 = __rp0___bit equ 5
20   00000003 = __rp1___byte equ 3
21   00000006 = __rp1___bit equ 6
22   00000003 = __irp___byte equ 3
23   00000007 = __irp___bit equ 7
24   0000000a = __pclath equ 10
25   0000000a = __cb0___byte equ 10
26   00000003 = __cb0___bit equ 3
27   0000000a = __cb1___byte equ 10
28   00000004 = __cb1___bit equ 4
29              
30                      ; # Copyright (c) 2004-2005 by Wayne C. Gramlich
31                      ; # All rights reserved.
32              
33                      ; buffer = 'servo4'
34                      ; line_number = 6
35                      ; library _robobricks_pic16f688 entered
36              
37                      ; # Copyright (c) 2000-2005 by Wayne C. Gramlich and Bill Benson
38                      ; # All rights reserved.
39              
40                      ; buffer = '_robobricks_pic16f688'
41                      ; line_number = 6
42                      ; library _pic16f688 entered
43                      ; # Copyright (c) 2004 by Wayne C. Gramlich
44                      ; # All rights reserved.
45              
46                      ; buffer = '_pic16f688'
47                      ; line_number = 5
48                      ; processor pic16f688
49                      ; line_number = 6
50                      ; configure_address 0x2007
51                      ; line_number = 7
52                      ;  configure_fill 0x3000
53                      ; line_number = 8
54                      ;  configure_option fcmen: on = 0x800
55                      ; line_number = 9
56                      ;  configure_option fcmen: off = 0x000
57                      ; line_number = 10
58                      ;  configure_option ieso: on = 0x400
59                      ; line_number = 11
60                      ;  configure_option ieso: off = 0x000
61                      ; line_number = 12
62                      ;  configure_option boden: on = 0x300
63                      ; line_number = 13
64                      ;  configure_option boden: partial = 0x200
65                      ; line_number = 14
66                      ;  configure_option boden: sboden = 0x100
67                      ; line_number = 15
68                      ;  configure_option boden: off = 0x000
69                      ; line_number = 16
70                      ;  configure_option cpd: on = 0x00
71                      ; line_number = 17
72                      ;  configure_option cpd: off = 0x80
73                      ; line_number = 18
74                      ;  configure_option cp: on = 0x00
75                      ; line_number = 19
76                      ;  configure_option cp: off = 0x40
77                      ; line_number = 20
78                      ;  configure_option mclre: on = 0x20
79                      ; line_number = 21
80                      ;  configure_option mclre: off = 0x20
81                      ; line_number = 22
82                      ;  configure_option pwrte: on = 0x00
83                      ; line_number = 23
84                      ;  configure_option pwrte: off = 0x10
85                      ; line_number = 24
86                      ;  configure_option wdte: on = 8
87                      ; line_number = 25
88                      ;  configure_option wdte: off = 0
89                      ; line_number = 26
90                      ;  configure_option fosc: rc_clk = 7
91                      ; line_number = 27
92                      ;  configure_option fosc: rc_no_clk = 6
93                      ; line_number = 28
94                      ;  configure_option fosc: int_clk = 5
95                      ; line_number = 29
96                      ;  configure_option fosc: int_no_clk = 4
97                      ; line_number = 30
98                      ;  configure_option fosc: ec = 3
99                      ; line_number = 31
100                     ;  configure_option fosc: hs = 2
101                     ; line_number = 32
102                     ;  configure_option fosc: xt = 1
103                     ; line_number = 33
104                     ;  configure_option fosc: lp = 0
105             
106                     ; line_number = 35
107                     ;  code_bank 0x0 : 0xfff
108                     ; line_number = 36
109                     ;  data_bank 0x0 : 0x7f
110                     ; line_number = 37
111                     ;  data_bank 0x80 : 0xff
112                     ; line_number = 38
113                     ;  data_bank 0x100 : 0x17f
114                     ; line_number = 39
115                     ;  data_bank 0x180 : 0x1ff
116                     ; line_number = 40
117                     ;  global_region 0x20 : 0x6f
118                     ; line_number = 41
119                     ;  global_region 0xa0 : 0xef
120                     ; line_number = 42
121                     ;  global_region 0x120 : 0x16f
122                     ; line_number = 43
123                     ;  global_region 0x1a0 : 0x1ef
124                     ; line_number = 44
125                     ;  shared_region 0x70 : 0x7f
126                     ; line_number = 45
127                     ;  interrupts_possible
128                     ; line_number = 46
129                     ;  packages pdip=14, soic=14, tssop=14
130                     ; line_number = 47
131                     ;  pin vdd, power_supply
132                     ; line_number = 48
133                     ; pin_bindings pdip=1, soic=1, tssop=1
134                     ; line_number = 49
135                     ; pin ra5_in, ra5_nc, ra5_out, t1cki, osc1, clkin
136                     ; line_number = 50
137                     ; pin_bindings pdip=2, soic=2, tssop=2
138                     ; line_number = 51
139                     ;  bind_to _porta@5
140                     ; line_number = 52
141                     ;  or_if ra5_in _trisa 32
142                     ; line_number = 53
143                     ;  or_if ra5_nc _trisa 32
144                     ; line_number = 54
145                     ;  or_if ra5_out _trisa 0
146                     ; line_number = 55
147                     ; pin ra4_in, ra4_nc, ra4_out, t1g, osc2, an3, clkout
148                     ; line_number = 56
149                     ; pin_bindings pdip=3, soic=3, tssop=3
150                     ; line_number = 57
151                     ;  bind_to _porta@4
152                     ; line_number = 58
153                     ;  or_if ra4_in _trisa 16
154                     ; line_number = 59
155                     ;  or_if ra4_nc _trisa 16
156                     ; line_number = 60
157                     ;  or_if ra4_out _trisa 0
158                     ; line_number = 61
159                     ;  or_if an3 _trisa 8
160                     ; line_number = 62
161                     ;  or_if ra4_in _ansel 0
162                     ; line_number = 63
163                     ;  or_if ra4_out _ansel 0
164                     ; line_number = 64
165                     ;  or_if an3 _ansel 8
166                     ; line_number = 65
167                     ;  or_if ra4_in _adcon0 0
168                     ; line_number = 66
169                     ;  or_if ra4_out _adcon0 0
170                     ; line_number = 67
171                     ;  or_if an3 _adcon0 1
172                     ; line_number = 68
173                     ; pin ra3_in, ra3_nc, mclr, vpp
174                     ; line_number = 69
175                     ; pin_bindings pdip=4, soic=4, tssop=4
176                     ; line_number = 70
177                     ;  bind_to _porta@4
178                     ; line_number = 71
179                     ;  or_if ra3_in _trisa 8
180                     ; line_number = 72
181                     ;  or_if ra3_nc _trisa 8
182                     ; line_number = 73
183                     ; pin rc5_in, rc5_nc, rc5_out, rx, dt
184                     ; line_number = 74
185                     ; pin_bindings pdip=5, soic=5, tssop=5
186                     ; line_number = 75
187                     ;  bind_to _portc@5
188                     ; line_number = 76
189                     ;  or_if rc5_in _trisc 32
190                     ; line_number = 77
191                     ;  or_if rc5_nc _trisc 32
192                     ; line_number = 78
193                     ;  or_if rc5_out _trisc 0
194                     ; line_number = 79
195                     ;  or_if rx _trisc 32
196                     ; line_number = 80
197                     ; pin rc4_in, rc4_nc, rc4_out, c2out, tx, ck
198                     ; line_number = 81
199                     ; pin_bindings pdip=6, soic=6, tssop=6
200                     ; line_number = 82
201                     ;  bind_to _portc@4
202                     ; line_number = 83
203                     ;  or_if rc4_in _trisc 16
204                     ; line_number = 84
205                     ;  or_if rc4_nc _trisc 16
206                     ; line_number = 85
207                     ;  or_if rc4_out _trisc 0
208                     ; # The UART documentation says TX must be marked as in input:
209                     ; line_number = 87
210                     ;  or_if tx _trisc 16
211                     ; line_number = 88
212                     ; pin rc3_in, rc3_nc, rc3_out, an7
213                     ; line_number = 89
214                     ; pin_bindings pdip=7, soic=7, tssop=7
215                     ; line_number = 90
216                     ;  bind_to _portc@3
217                     ; line_number = 91
218                     ;  or_if rc3_in _trisc 8
219                     ; line_number = 92
220                     ;  or_if rc3_nc _trisc 8
221                     ; line_number = 93
222                     ;  or_if rc3_out _trisc 0
223                     ; line_number = 94
224                     ;  or_if an7 _trisc 8
225                     ; line_number = 95
226                     ;  or_if rc3_in _ansel 0
227                     ; line_number = 96
228                     ;  or_if rc3_out _ansel 0
229                     ; line_number = 97
230                     ;  or_if an7 _ansel 128
231                     ; line_number = 98
232                     ;  or_if rc3_in _adcon0 0
233                     ; line_number = 99
234                     ;  or_if rc3_out _adcon0 0
235                     ; line_number = 100
236                     ;  or_if an7 _adcon0 1
237                     ; line_number = 101
238                     ; pin rc2_in, rc2_nc, rc2_out, an6
239                     ; line_number = 102
240                     ; pin_bindings pdip=8, soic=8, tssop=8
241                     ; line_number = 103
242                     ;  bind_to _portc@2
243                     ; line_number = 104
244                     ;  or_if rc2_in _trisc 4
245                     ; line_number = 105
246                     ;  or_if rc2_nc _trisc 4
247                     ; line_number = 106
248                     ;  or_if rc2_out _trisc 0
249                     ; line_number = 107
250                     ;  or_if an6 _trisc 4
251                     ; line_number = 108
252                     ;  or_if rc2_in _ansel 0
253                     ; line_number = 109
254                     ;  or_if rc2_out _ansel 0
255                     ; line_number = 110
256                     ;  or_if an6 _ansel 64
257                     ; line_number = 111
258                     ;  or_if rc2_in _adcon0 0
259                     ; line_number = 112
260                     ;  or_if rc2_out _adcon0 0
261                     ; line_number = 113
262                     ;  or_if an6 _adcon0 1
263                     ; line_number = 114
264                     ; pin rc1_in, rc1_nc, rc1_out, an5, c2in_minus
265                     ; line_number = 115
266                     ; pin_bindings pdip=9, soic=9, tssop=9
267                     ; line_number = 116
268                     ;  bind_to _portc@1
269                     ; line_number = 117
270                     ;  or_if rc1_in _trisc 2
271                     ; line_number = 118
272                     ;  or_if rc1_nc _trisc 2
273                     ; line_number = 119
274                     ;  or_if rc1_out _trisc 0
275                     ; line_number = 120
276                     ;  or_if rc1_in _cmcon0 7
277                     ; line_number = 121
278                     ;  or_if rc1_out _cmcon0 7
279                     ; line_number = 122
280                     ;  or_if an5 _trisc 2
281                     ; line_number = 123
282                     ;  or_if rc1_in _ansel 0
283                     ; line_number = 124
284                     ;  or_if rc1_out _ansel 0
285                     ; line_number = 125
286                     ;  or_if an5 _ansel 32
287                     ; line_number = 126
288                     ;  or_if rc1_in _adcon0 0
289                     ; line_number = 127
290                     ;  or_if rc1_out _adcon0 0
291                     ; line_number = 128
292                     ;  or_if an5 _adcon0 1
293                     ; line_number = 129
294                     ; pin rc0_in, rc0_nc, rc0_out, an4, c2in_plus
295                     ; line_number = 130
296                     ; pin_bindings pdip=10, soic=10, tssop=10
297                     ; line_number = 131
298                     ;  bind_to _portc@0
299                     ; line_number = 132
300                     ;  or_if rc0_in _trisc 1
301                     ; line_number = 133
302                     ;  or_if rc0_nc _trisc 1
303                     ; line_number = 134
304                     ;  or_if rc0_out _trisc 0
305                     ; line_number = 135
306                     ;  or_if rc0_in _cmcon0 7
307                     ; line_number = 136
308                     ;  or_if rc0_out _cmcon0 7
309                     ; line_number = 137
310                     ;  or_if an4 _trisc 1
311                     ; line_number = 138
312                     ;  or_if rc0_in _ansel 0
313                     ; line_number = 139
314                     ;  or_if rc0_out _ansel 0
315                     ; line_number = 140
316                     ;  or_if an4 _ansel 16
317                     ; line_number = 141
318                     ;  or_if rc0_in _adcon0 0
319                     ; line_number = 142
320                     ;  or_if rc0_out _adcon0 0
321                     ; line_number = 143
322                     ;  or_if an4 _adcon0 1
323                     ; line_number = 144
324                     ; pin ra2_in, ra2_nc, ra2_out, an2, c1out, t0cki, int
325                     ; line_number = 145
326                     ; pin_bindings pdip=11, soic=11, tssop=11
327                     ; line_number = 146
328                     ;  bind_to _porta@2
329                     ; line_number = 147
330                     ;  or_if ra2_in _trisa 4
331                     ; line_number = 148
332                     ;  or_if ra2_nc _trisa 4
333                     ; line_number = 149
334                     ;  or_if ra2_out _trisa 0
335                     ; line_number = 150
336                     ;  or_if an2 _trisa 4
337                     ; line_number = 151
338                     ;  or_if ra2_in _ansel 0
339                     ; line_number = 152
340                     ;  or_if ra2_out _ansel 0
341                     ; line_number = 153
342                     ;  or_if an2 _ansel 4
343                     ; line_number = 154
344                     ;  or_if ra2_in _adcon0 0
345                     ; line_number = 155
346                     ;  or_if ra2_out _adcon0 0
347                     ; line_number = 156
348                     ;  or_if an2 _adcon0 1
349                     ; line_number = 157
350                     ; pin ra1_in, ra1_nc, ra1_out, an1, c1in_minus, vref, icspclk
351                     ; line_number = 158
352                     ; pin_bindings pdip=12, soic=12, tssop=12
353                     ; line_number = 159
354                     ;  bind_to _porta@1
355                     ; line_number = 160
356                     ;  or_if ra1_in _trisa 2
357                     ; line_number = 161
358                     ;  or_if ra1_nc _trisa 2
359                     ; line_number = 162
360                     ;  or_if ra1_out _trisa 0
361                     ; line_number = 163
362                     ;  or_if ra1_in _cmcon0 7
363                     ; line_number = 164
364                     ;  or_if ra1_out _cmcon0 7
365                     ; line_number = 165
366                     ;  or_if an1 _trisa 2
367                     ; line_number = 166
368                     ;  or_if ra1_in _ansel 0
369                     ; line_number = 167
370                     ;  or_if ra1_out _ansel 0
371                     ; line_number = 168
372                     ;  or_if an1 _ansel 2
373                     ; line_number = 169
374                     ;  or_if ra1_in _adcon0 0
375                     ; line_number = 170
376                     ;  or_if ra1_out _adcon0 0
377                     ; line_number = 171
378                     ;  or_if an1 _adcon0 1
379                     ; line_number = 172
380                     ; pin ra0_in, ra0_nc, ra0_out, an0, c1in_plus, icspdat, ulpwu
381                     ; line_number = 173
382                     ; pin_bindings pdip=13, soic=13, tssop=13
383                     ; line_number = 174
384                     ;  bind_to _porta@0
385                     ; line_number = 175
386                     ;  or_if ra0_in _trisa 1
387                     ; line_number = 176
388                     ;  or_if ra0_nc _trisa 1
389                     ; line_number = 177
390                     ;  or_if ra0_out _trisa 0
391                     ; line_number = 178
392                     ;  or_if ra0_in _cmcon0 7
393                     ; line_number = 179
394                     ;  or_if ra0_out _cmcon0 7
395                     ; line_number = 180
396                     ;  or_if an0 _trisa 1
397                     ; line_number = 181
398                     ;  or_if ra0_in _ansel 0
399                     ; line_number = 182
400                     ;  or_if ra0_out _ansel 0
401                     ; line_number = 183
402                     ;  or_if an0 _ansel 1
403                     ; line_number = 184
404                     ;  or_if ra0_in _adcon0 0
405                     ; line_number = 185
406                     ;  or_if ra0_out _adcon0 0
407                     ; line_number = 186
408                     ;  or_if an0 _adcon0 1
409                     ; line_number = 187
410                     ; pin vss, ground
411                     ; line_number = 188
412                     ; pin_bindings pdip=14, soic=14, tssop=14
413             
414             
415                     ; # Register/bit bindings:
416             
417                     ; # Databank 0 (0x0 - 0x7f):
418             
419                     ; line_number = 197
420                     ; register _indf = 
421  00000000 = _indf equ 0
422             
423                     ; line_number = 199
424                     ; register _tmr0 = 
425  00000001 = _tmr0 equ 1
426             
427                     ; line_number = 201
428                     ; register _pcl = 
429  00000002 = _pcl equ 2
430             
431                     ; line_number = 203
432                     ; register _status = 
433  00000003 = _status equ 3
434                     ; line_number = 204
435                     ; bind _irp = _status@7
436  00000003 = _irp___byte equ _status
437  00000007 = _irp___bit equ 7
438                     ; line_number = 205
439                     ; bind _rp1 = _status@5
440  00000003 = _rp1___byte equ _status
441  00000005 = _rp1___bit equ 5
442                     ; line_number = 206
443                     ; bind _rp0 = _status@5
444  00000003 = _rp0___byte equ _status
445  00000005 = _rp0___bit equ 5
446                     ; line_number = 207
447                     ; bind _to = _status@4
448  00000003 = _to___byte equ _status
449  00000004 = _to___bit equ 4
450                     ; line_number = 208
451                     ; bind _pd = _status@3
452  00000003 = _pd___byte equ _status
453  00000003 = _pd___bit equ 3
454                     ; line_number = 209
455                     ; bind _z = _status@2
456  00000003 = _z___byte equ _status
457  00000002 = _z___bit equ 2
458                     ; line_number = 210
459                     ; bind _dc = _status@1
460  00000003 = _dc___byte equ _status
461  00000001 = _dc___bit equ 1
462                     ; line_number = 211
463                     ; bind _c = _status@0
464  00000003 = _c___byte equ _status
465  00000000 = _c___bit equ 0
466             
467                     ; line_number = 213
468                     ; register _fsr = 
469  00000004 = _fsr equ 4
470             
471                     ; line_number = 215
472                     ; register _porta = 
473  00000005 = _porta equ 5
474                     ; line_number = 216
475                     ; register _ra = 
476  00000005 = _ra equ 5
477                     ; line_number = 217
478                     ; bind _ra5 = _porta@5
479  00000005 = _ra5___byte equ _porta
480  00000005 = _ra5___bit equ 5
481                     ; line_number = 218
482                     ; bind _ra4 = _porta@4
483  00000005 = _ra4___byte equ _porta
484  00000004 = _ra4___bit equ 4
485                     ; line_number = 219
486                     ; bind _ra3 = _porta@3
487  00000005 = _ra3___byte equ _porta
488  00000003 = _ra3___bit equ 3
489                     ; line_number = 220
490                     ; bind _ra2 = _porta@2
491  00000005 = _ra2___byte equ _porta
492  00000002 = _ra2___bit equ 2
493                     ; line_number = 221
494                     ; bind _ra1 = _porta@1
495  00000005 = _ra1___byte equ _porta
496  00000001 = _ra1___bit equ 1
497                     ; line_number = 222
498                     ; bind _ra0 = _porta@0
499  00000005 = _ra0___byte equ _porta
500  00000000 = _ra0___bit equ 0
501             
502                     ; line_number = 224
503                     ; register _portc = 
504  00000007 = _portc equ 7
505                     ; line_number = 225
506                     ; register _rc = 
507  00000007 = _rc equ 7
508                     ; line_number = 226
509                     ; bind _rc5 = _portc@5
510  00000007 = _rc5___byte equ _portc
511  00000005 = _rc5___bit equ 5
512                     ; line_number = 227
513                     ; bind _rc4 = _portc@4
514  00000007 = _rc4___byte equ _portc
515  00000004 = _rc4___bit equ 4
516                     ; line_number = 228
517                     ; bind _rc3 = _portc@3
518  00000007 = _rc3___byte equ _portc
519  00000003 = _rc3___bit equ 3
520                     ; line_number = 229
521                     ; bind _rc2 = _portc@2
522  00000007 = _rc2___byte equ _portc
523  00000002 = _rc2___bit equ 2
524                     ; line_number = 230
525                     ; bind _rc1 = _portc@1
526  00000007 = _rc1___byte equ _portc
527  00000001 = _rc1___bit equ 1
528                     ; line_number = 231
529                     ; bind _rc0 = _portc@0
530  00000007 = _rc0___byte equ _portc
531  00000000 = _rc0___bit equ 0
532             
533                     ; line_number = 233
534                     ; register _pclath = 
535  0000000a = _pclath equ 10
536             
537                     ; line_number = 235
538                     ; register _intcon = 
539  0000000b = _intcon equ 11
540                     ; line_number = 236
541                     ; bind _gie = _intcon@7
542  0000000b = _gie___byte equ _intcon
543  00000007 = _gie___bit equ 7
544                     ; line_number = 237
545                     ; bind _peie = _intcon@6
546  0000000b = _peie___byte equ _intcon
547  00000006 = _peie___bit equ 6
548                     ; line_number = 238
549                     ; bind _t0ie = _intcon@5
550  0000000b = _t0ie___byte equ _intcon
551  00000005 = _t0ie___bit equ 5
552                     ; line_number = 239
553                     ; bind _inte = _intcon@4
554  0000000b = _inte___byte equ _intcon
555  00000004 = _inte___bit equ 4
556                     ; line_number = 240
557                     ; bind _raie = _intcon@3
558  0000000b = _raie___byte equ _intcon
559  00000003 = _raie___bit equ 3
560                     ; line_number = 241
561                     ; bind _t0if = _intcon@2
562  0000000b = _t0if___byte equ _intcon
563  00000002 = _t0if___bit equ 2
564                     ; line_number = 242
565                     ; bind _intf = _intcon@1
566  0000000b = _intf___byte equ _intcon
567  00000001 = _intf___bit equ 1
568                     ; line_number = 243
569                     ; bind _raif = _intcon@0
570  0000000b = _raif___byte equ _intcon
571  00000000 = _raif___bit equ 0
572             
573                     ; line_number = 245
574                     ; register _pir1 = 
575  0000000c = _pir1 equ 12
576                     ; line_number = 246
577                     ; bind _eeif = _pir1@7
578  0000000c = _eeif___byte equ _pir1
579  00000007 = _eeif___bit equ 7
580                     ; line_number = 247
581                     ; bind _adif = _pir1@6
582  0000000c = _adif___byte equ _pir1
583  00000006 = _adif___bit equ 6
584                     ; line_number = 248
585                     ; bind _rcif = _pir1@5
586  0000000c = _rcif___byte equ _pir1
587  00000005 = _rcif___bit equ 5
588                     ; line_number = 249
589                     ; bind _c2if = _pir1@4
590  0000000c = _c2if___byte equ _pir1
591  00000004 = _c2if___bit equ 4
592                     ; line_number = 250
593                     ; bind _c1if = _pir1@3
594  0000000c = _c1if___byte equ _pir1
595  00000003 = _c1if___bit equ 3
596                     ; line_number = 251
597                     ; bind _osfif = _pir1@2
598  0000000c = _osfif___byte equ _pir1
599  00000002 = _osfif___bit equ 2
600                     ; line_number = 252
601                     ; bind _txif = _pir1@1
602  0000000c = _txif___byte equ _pir1
603  00000001 = _txif___bit equ 1
604                     ; line_number = 253
605                     ; bind _tmr1if = _pir1@0
606  0000000c = _tmr1if___byte equ _pir1
607  00000000 = _tmr1if___bit equ 0
608             
609                     ; line_number = 255
610                     ; register _tmr1l = 
611  0000000e = _tmr1l equ 14
612             
613                     ; line_number = 257
614                     ; register _tmr1h = 
615  0000000f = _tmr1h equ 15
616             
617                     ; line_number = 259
618                     ; register _t1con = 
619  00000010 = _t1con equ 16
620                     ; line_number = 260
621                     ; bind t1ginv = _t1con@7
622  00000010 = t1ginv___byte equ _t1con
623  00000007 = t1ginv___bit equ 7
624                     ; line_number = 261
625                     ; bind _tmr1ge = _t1con@6
626  00000010 = _tmr1ge___byte equ _t1con
627  00000006 = _tmr1ge___bit equ 6
628                     ; line_number = 262
629                     ; bind _t1ckps1 = _t1con@5
630  00000010 = _t1ckps1___byte equ _t1con
631  00000005 = _t1ckps1___bit equ 5
632                     ; line_number = 263
633                     ; bind _t1ckps0 = _t1con@4
634  00000010 = _t1ckps0___byte equ _t1con
635  00000004 = _t1ckps0___bit equ 4
636                     ; line_number = 264
637                     ; bind _t1oscen = _t1con@3
638  00000010 = _t1oscen___byte equ _t1con
639  00000003 = _t1oscen___bit equ 3
640                     ; line_number = 265
641                     ; bind _t1sync = _t1con@2
642  00000010 = _t1sync___byte equ _t1con
643  00000002 = _t1sync___bit equ 2
644                     ; line_number = 266
645                     ; bind _tmr1cs = _t1con@1
646  00000010 = _tmr1cs___byte equ _t1con
647  00000001 = _tmr1cs___bit equ 1
648                     ; line_number = 267
649                     ; bind _tmr1on = _t1con@0
650  00000010 = _tmr1on___byte equ _t1con
651  00000000 = _tmr1on___bit equ 0
652             
653                     ; line_number = 269
654                     ; register _baudctl = 
655  00000011 = _baudctl equ 17
656                     ; line_number = 270
657                     ; bind _abdovf = _baudctl@7
658  00000011 = _abdovf___byte equ _baudctl
659  00000007 = _abdovf___bit equ 7
660                     ; line_number = 271
661                     ; bind _rcidl = _baudctl@6
662  00000011 = _rcidl___byte equ _baudctl
663  00000006 = _rcidl___bit equ 6
664                     ; line_number = 272
665                     ; bind _sckp = _baudctl@4
666  00000011 = _sckp___byte equ _baudctl
667  00000004 = _sckp___bit equ 4
668                     ; line_number = 273
669                     ; bind _brg16 = _baudctl@3
670  00000011 = _brg16___byte equ _baudctl
671  00000003 = _brg16___bit equ 3
672                     ; line_number = 274
673                     ; bind _wue = _baudctl@1
674  00000011 = _wue___byte equ _baudctl
675  00000001 = _wue___bit equ 1
676                     ; line_number = 275
677                     ; bind _abden = _baudctl@0
678  00000011 = _abden___byte equ _baudctl
679  00000000 = _abden___bit equ 0
680             
681                     ; line_number = 277
682                     ; register _spbrgh = 
683  00000012 = _spbrgh equ 18
684             
685                     ; line_number = 279
686                     ; register _spbrg = 
687  00000013 = _spbrg equ 19
688             
689                     ; line_number = 281
690                     ; register _rcreg = 
691  00000014 = _rcreg equ 20
692             
693                     ; line_number = 283
694                     ; register _txreg = 
695  00000015 = _txreg equ 21
696             
697                     ; line_number = 285
698                     ; register _txsta = 
699  00000016 = _txsta equ 22
700                     ; line_number = 286
701                     ; bind _csrc = _txsta@7
702  00000016 = _csrc___byte equ _txsta
703  00000007 = _csrc___bit equ 7
704                     ; line_number = 287
705                     ; bind _tx9 = _txsta@6
706  00000016 = _tx9___byte equ _txsta
707  00000006 = _tx9___bit equ 6
708                     ; line_number = 288
709                     ; bind _txen = _txsta@5
710  00000016 = _txen___byte equ _txsta
711  00000005 = _txen___bit equ 5
712                     ; line_number = 289
713                     ; bind _sync = _txsta@4
714  00000016 = _sync___byte equ _txsta
715  00000004 = _sync___bit equ 4
716                     ; line_number = 290
717                     ; bind _sendb = _txsta@3
718  00000016 = _sendb___byte equ _txsta
719  00000003 = _sendb___bit equ 3
720                     ; line_number = 291
721                     ; bind _brgh = _txsta@2
722  00000016 = _brgh___byte equ _txsta
723  00000002 = _brgh___bit equ 2
724                     ; line_number = 292
725                     ; bind _trmt = _txsta@1
726  00000016 = _trmt___byte equ _txsta
727  00000001 = _trmt___bit equ 1
728                     ; line_number = 293
729                     ; bind _tx9d = _txsta@7
730  00000016 = _tx9d___byte equ _txsta
731  00000007 = _tx9d___bit equ 7
732             
733                     ; line_number = 295
734                     ; register _rcsta = 
735  00000017 = _rcsta equ 23
736                     ; line_number = 296
737                     ; bind _spen = _rcsta@7
738  00000017 = _spen___byte equ _rcsta
739  00000007 = _spen___bit equ 7
740                     ; line_number = 297
741                     ; bind _rx9 = _rcsta@6
742  00000017 = _rx9___byte equ _rcsta
743  00000006 = _rx9___bit equ 6
744                     ; line_number = 298
745                     ; bind _sren = _rcsta@5
746  00000017 = _sren___byte equ _rcsta
747  00000005 = _sren___bit equ 5
748                     ; line_number = 299
749                     ; bind _cren = _rcsta@4
750  00000017 = _cren___byte equ _rcsta
751  00000004 = _cren___bit equ 4
752                     ; line_number = 300
753                     ; bind _adden = _rcsta@3
754  00000017 = _adden___byte equ _rcsta
755  00000003 = _adden___bit equ 3
756                     ; line_number = 301
757                     ; bind _ferr = _rcsta@2
758  00000017 = _ferr___byte equ _rcsta
759  00000002 = _ferr___bit equ 2
760                     ; line_number = 302
761                     ; bind _oerr = _rcsta@1
762  00000017 = _oerr___byte equ _rcsta
763  00000001 = _oerr___bit equ 1
764                     ; line_number = 303
765                     ; bind _rx9d = _rcsta@0
766  00000017 = _rx9d___byte equ _rcsta
767  00000000 = _rx9d___bit equ 0
768             
769                     ; line_number = 305
770                     ; register _wdtcon = 
771  00000018 = _wdtcon equ 24
772                     ; line_number = 306
773                     ; bind _wdtps3 = _wdtcon@4
774  00000018 = _wdtps3___byte equ _wdtcon
775  00000004 = _wdtps3___bit equ 4
776                     ; line_number = 307
777                     ; bind _wdtps2 = _wdtcon@3
778  00000018 = _wdtps2___byte equ _wdtcon
779  00000003 = _wdtps2___bit equ 3
780                     ; line_number = 308
781                     ; bind _wdtps1 = _wdtcon@2
782  00000018 = _wdtps1___byte equ _wdtcon
783  00000002 = _wdtps1___bit equ 2
784                     ; line_number = 309
785                     ; bind _wdtps0 = _wdtcon@1
786  00000018 = _wdtps0___byte equ _wdtcon
787  00000001 = _wdtps0___bit equ 1
788                     ; line_number = 310
789                     ; bind _swdten = _wdtcon@0
790  00000018 = _swdten___byte equ _wdtcon
791  00000000 = _swdten___bit equ 0
792             
793                     ; line_number = 312
794                     ; register _cmcon0 = 
795  00000019 = _cmcon0 equ 25
796                     ; line_number = 313
797                     ; bind _c1out = _cmcon0@7
798  00000019 = _c1out___byte equ _cmcon0
799  00000007 = _c1out___bit equ 7
800                     ; line_number = 314
801                     ; bind _c2out = _cmcon0@6
802  00000019 = _c2out___byte equ _cmcon0
803  00000006 = _c2out___bit equ 6
804                     ; line_number = 315
805                     ; bind _c1inv = _cmcon0@5
806  00000019 = _c1inv___byte equ _cmcon0
807  00000005 = _c1inv___bit equ 5
808                     ; line_number = 316
809                     ; bind _c2inv = _cmcon0@4
810  00000019 = _c2inv___byte equ _cmcon0
811  00000004 = _c2inv___bit equ 4
812                     ; line_number = 317
813                     ; bind _cis = _cmcon0@3
814  00000019 = _cis___byte equ _cmcon0
815  00000003 = _cis___bit equ 3
816                     ; line_number = 318
817                     ; bind _cm2 = _cmcon0@2
818  00000019 = _cm2___byte equ _cmcon0
819  00000002 = _cm2___bit equ 2
820                     ; line_number = 319
821                     ; bind _cm1 = _cmcon0@1
822  00000019 = _cm1___byte equ _cmcon0
823  00000001 = _cm1___bit equ 1
824                     ; line_number = 320
825                     ; bind _cm0 = _cmcon0@0
826  00000019 = _cm0___byte equ _cmcon0
827  00000000 = _cm0___bit equ 0
828             
829                     ; line_number = 322
830                     ; register _cmcon1 = 
831  0000001a = _cmcon1 equ 26
832                     ; line_number = 323
833                     ; bind _t1gss = _cmcon1@0
834  0000001a = _t1gss___byte equ _cmcon1
835  00000000 = _t1gss___bit equ 0
836                     ; line_number = 324
837                     ; bind _c2sync = _cmcon1@1
838  0000001a = _c2sync___byte equ _cmcon1
839  00000001 = _c2sync___bit equ 1
840             
841                     ; line_number = 326
842                     ; register _adresh = 
843  0000001e = _adresh equ 30
844             
845                     ; line_number = 328
846                     ; register _adcon0 = 
847  0000001f = _adcon0 equ 31
848                     ; line_number = 329
849                     ; bind _adfm = _adcon0@7
850  0000001f = _adfm___byte equ _adcon0
851  00000007 = _adfm___bit equ 7
852                     ; line_number = 330
853                     ; bind _vcfg = _adcon0@6
854  0000001f = _vcfg___byte equ _adcon0
855  00000006 = _vcfg___bit equ 6
856                     ; line_number = 331
857                     ; bind _chs2 = _adcon0@4
858  0000001f = _chs2___byte equ _adcon0
859  00000004 = _chs2___bit equ 4
860                     ; line_number = 332
861                     ; bind _chs1 = _adcon0@3
862  0000001f = _chs1___byte equ _adcon0
863  00000003 = _chs1___bit equ 3
864                     ; line_number = 333
865                     ; bind _chs0 = _adcon0@2
866  0000001f = _chs0___byte equ _adcon0
867  00000002 = _chs0___bit equ 2
868                     ; line_number = 334
869                     ; bind _go = _adcon0@1
870  0000001f = _go___byte equ _adcon0
871  00000001 = _go___bit equ 1
872                     ; line_number = 335
873                     ; bind _adon = _adcon0@0
874  0000001f = _adon___byte equ _adcon0
875  00000000 = _adon___bit equ 0
876             
877                     ; # Data bank 1 (0x80-0xff):
878             
879                     ; line_number = 339
880                     ; register _option_reg = 
881  00000081 = _option_reg equ 129
882                     ; line_number = 340
883                     ; bind _rapu = _option_reg@7
884  00000081 = _rapu___byte equ _option_reg
885  00000007 = _rapu___bit equ 7
886                     ; line_number = 341
887                     ; bind _intedg = _option_reg@6
888  00000081 = _intedg___byte equ _option_reg
889  00000006 = _intedg___bit equ 6
890                     ; line_number = 342
891                     ; bind _t0cs = _option_reg@5
892  00000081 = _t0cs___byte equ _option_reg
893  00000005 = _t0cs___bit equ 5
894                     ; line_number = 343
895                     ; bind _t0se = _option_reg@4
896  00000081 = _t0se___byte equ _option_reg
897  00000004 = _t0se___bit equ 4
898                     ; line_number = 344
899                     ; bind _psa = _option_reg@3
900  00000081 = _psa___byte equ _option_reg
901  00000003 = _psa___bit equ 3
902                     ; line_number = 345
903                     ; bind _ps2 = _option_reg@2
904  00000081 = _ps2___byte equ _option_reg
905  00000002 = _ps2___bit equ 2
906                     ; line_number = 346
907                     ; bind _ps1 = _option_reg@1
908  00000081 = _ps1___byte equ _option_reg
909  00000001 = _ps1___bit equ 1
910                     ; line_number = 347
911                     ; bind _ps0 = _option_reg@0
912  00000081 = _ps0___byte equ _option_reg
913  00000000 = _ps0___bit equ 0
914             
915                     ; line_number = 349
916                     ; register _trisa = 
917  00000085 = _trisa equ 133
918                     ; line_number = 350
919                     ; bind _trisa5 = _trisa@5
920  00000085 = _trisa5___byte equ _trisa
921  00000005 = _trisa5___bit equ 5
922                     ; line_number = 351
923                     ; bind _trisa4 = _trisa@4
924  00000085 = _trisa4___byte equ _trisa
925  00000004 = _trisa4___bit equ 4
926                     ; line_number = 352
927                     ; bind _trisa3 = _trisa@3
928  00000085 = _trisa3___byte equ _trisa
929  00000003 = _trisa3___bit equ 3
930                     ; line_number = 353
931                     ; bind _trisa2 = _trisa@2
932  00000085 = _trisa2___byte equ _trisa
933  00000002 = _trisa2___bit equ 2
934                     ; line_number = 354
935                     ; bind _trisa1 = _trisa@1
936  00000085 = _trisa1___byte equ _trisa
937  00000001 = _trisa1___bit equ 1
938                     ; line_number = 355
939                     ; bind _trisa0 = _trisa@0
940  00000085 = _trisa0___byte equ _trisa
941  00000000 = _trisa0___bit equ 0
942             
943                     ; line_number = 357
944                     ; register _trisc = 
945  00000087 = _trisc equ 135
946                     ; line_number = 358
947                     ; bind _trisc5 = _trisc@5
948  00000087 = _trisc5___byte equ _trisc
949  00000005 = _trisc5___bit equ 5
950                     ; line_number = 359
951                     ; bind _trisc4 = _trisc@4
952  00000087 = _trisc4___byte equ _trisc
953  00000004 = _trisc4___bit equ 4
954                     ; line_number = 360
955                     ; bind _trisc3 = _trisc@3
956  00000087 = _trisc3___byte equ _trisc
957  00000003 = _trisc3___bit equ 3
958                     ; line_number = 361
959                     ; bind _trisc2 = _trisc@2
960  00000087 = _trisc2___byte equ _trisc
961  00000002 = _trisc2___bit equ 2
962                     ; line_number = 362
963                     ; bind _trisc1 = _trisc@1
964  00000087 = _trisc1___byte equ _trisc
965  00000001 = _trisc1___bit equ 1
966                     ; line_number = 363
967                     ; bind _trisc0 = _trisc@0
968  00000087 = _trisc0___byte equ _trisc
969  00000000 = _trisc0___bit equ 0
970             
971                     ; line_number = 365
972                     ; register _pie1 = 
973  0000008c = _pie1 equ 140
974                     ; line_number = 366
975                     ; bind _eeie = _pie1@7
976  0000008c = _eeie___byte equ _pie1
977  00000007 = _eeie___bit equ 7
978                     ; line_number = 367
979                     ; bind _adie = _pie1@6
980  0000008c = _adie___byte equ _pie1
981  00000006 = _adie___bit equ 6
982                     ; line_number = 368
983                     ; bind _rcie = _pie1@5
984  0000008c = _rcie___byte equ _pie1
985  00000005 = _rcie___bit equ 5
986                     ; line_number = 369
987                     ; bind _c2ie = _pie1@4
988  0000008c = _c2ie___byte equ _pie1
989  00000004 = _c2ie___bit equ 4
990                     ; line_number = 370
991                     ; bind _c1ie = _pie1@3
992  0000008c = _c1ie___byte equ _pie1
993  00000003 = _c1ie___bit equ 3
994                     ; line_number = 371
995                     ; bind _osfie = _pie1@2
996  0000008c = _osfie___byte equ _pie1
997  00000002 = _osfie___bit equ 2
998                     ; line_number = 372
999                     ; bind _txie = _pie1@1
1000 0000008c = _txie___byte equ _pie1
1001 00000001 = _txie___bit equ 1
1002                    ; line_number = 373
1003                    ; bind _tmr1ie = _pie1@0
1004 0000008c = _tmr1ie___byte equ _pie1
1005 00000000 = _tmr1ie___bit equ 0
1006            
1007                    ; line_number = 375
1008                    ; register _pcon = 
1009 0000008e = _pcon equ 142
1010                    ; line_number = 376
1011                    ; bind _ulpwue = _pcon@5
1012 0000008e = _ulpwue___byte equ _pcon
1013 00000005 = _ulpwue___bit equ 5
1014                    ; line_number = 377
1015                    ; bind _sboden = _pcon@4
1016 0000008e = _sboden___byte equ _pcon
1017 00000004 = _sboden___bit equ 4
1018                    ; line_number = 378
1019                    ; bind _por = _pcon@1
1020 0000008e = _por___byte equ _pcon
1021 00000001 = _por___bit equ 1
1022                    ; line_number = 379
1023                    ; bind _bod = _pcon@0
1024 0000008e = _bod___byte equ _pcon
1025 00000000 = _bod___bit equ 0
1026            
1027                    ; line_number = 381
1028                    ; register _osccon = 
1029 0000008f = _osccon equ 143
1030                    ; line_number = 382
1031                    ; bind _ircf2 = _osccon@6
1032 0000008f = _ircf2___byte equ _osccon
1033 00000006 = _ircf2___bit equ 6
1034                    ; line_number = 383
1035                    ; bind _ircf1 = _osccon@5
1036 0000008f = _ircf1___byte equ _osccon
1037 00000005 = _ircf1___bit equ 5
1038                    ; line_number = 384
1039                    ; bind _ircf0 = _osccon@4
1040 0000008f = _ircf0___byte equ _osccon
1041 00000004 = _ircf0___bit equ 4
1042                    ; line_number = 385
1043                    ; bind _osts = _osccon@3
1044 0000008f = _osts___byte equ _osccon
1045 00000003 = _osts___bit equ 3
1046                    ; line_number = 386
1047                    ; bind _hts = _osccon@2
1048 0000008f = _hts___byte equ _osccon
1049 00000002 = _hts___bit equ 2
1050                    ; line_number = 387
1051                    ; bind _lts = _osccon@3
1052 0000008f = _lts___byte equ _osccon
1053 00000003 = _lts___bit equ 3
1054                    ; line_number = 388
1055                    ; bind _scs = _osccon@2
1056 0000008f = _scs___byte equ _osccon
1057 00000002 = _scs___bit equ 2
1058            
1059                    ; line_number = 390
1060                    ; register _osctune = 
1061 00000090 = _osctune equ 144
1062                    ; line_number = 391
1063                    ; bind _tun4 = _osctune@4
1064 00000090 = _tun4___byte equ _osctune
1065 00000004 = _tun4___bit equ 4
1066                    ; line_number = 392
1067                    ; bind _tun3 = _osctune@3
1068 00000090 = _tun3___byte equ _osctune
1069 00000003 = _tun3___bit equ 3
1070                    ; line_number = 393
1071                    ; bind _tun2 = _osctune@2
1072 00000090 = _tun2___byte equ _osctune
1073 00000002 = _tun2___bit equ 2
1074                    ; line_number = 394
1075                    ; bind _tun1 = _osctune@1
1076 00000090 = _tun1___byte equ _osctune
1077 00000001 = _tun1___bit equ 1
1078                    ; line_number = 395
1079                    ; bind _tun0 = _osctune@0
1080 00000090 = _tun0___byte equ _osctune
1081 00000000 = _tun0___bit equ 0
1082                    ; line_number = 396
1083                    ; constant _osccal_lsb = 1
1084 00000001 = _osccal_lsb equ 1
1085            
1086                    ; line_number = 398
1087                    ; register _ansel = 
1088 00000091 = _ansel equ 145
1089                    ; line_number = 399
1090                    ; bind _ans7 = _ansel@7
1091 00000091 = _ans7___byte equ _ansel
1092 00000007 = _ans7___bit equ 7
1093                    ; line_number = 400
1094                    ; bind _ans6 = _ansel@6
1095 00000091 = _ans6___byte equ _ansel
1096 00000006 = _ans6___bit equ 6
1097                    ; line_number = 401
1098                    ; bind _ans5 = _ansel@5
1099 00000091 = _ans5___byte equ _ansel
1100 00000005 = _ans5___bit equ 5
1101                    ; line_number = 402
1102                    ; bind _ans4 = _ansel@4
1103 00000091 = _ans4___byte equ _ansel
1104 00000004 = _ans4___bit equ 4
1105                    ; line_number = 403
1106                    ; bind _ans3 = _ansel@3
1107 00000091 = _ans3___byte equ _ansel
1108 00000003 = _ans3___bit equ 3
1109                    ; line_number = 404
1110                    ; bind _ans2 = _ansel@2
1111 00000091 = _ans2___byte equ _ansel
1112 00000002 = _ans2___bit equ 2
1113                    ; line_number = 405
1114                    ; bind _ans1 = _ansel@1
1115 00000091 = _ans1___byte equ _ansel
1116 00000001 = _ans1___bit equ 1
1117                    ; line_number = 406
1118                    ; bind _ans0 = _ansel@0
1119 00000091 = _ans0___byte equ _ansel
1120 00000000 = _ans0___bit equ 0
1121            
1122                    ; line_number = 408
1123                    ; register _wpua = 
1124 00000095 = _wpua equ 149
1125                    ; line_number = 409
1126                    ; bind _wpua5 = _wpua@5
1127 00000095 = _wpua5___byte equ _wpua
1128 00000005 = _wpua5___bit equ 5
1129                    ; line_number = 410
1130                    ; bind _wpua4 = _wpua@4
1131 00000095 = _wpua4___byte equ _wpua
1132 00000004 = _wpua4___bit equ 4
1133                    ; line_number = 411
1134                    ; bind _wpua2 = _wpua@2
1135 00000095 = _wpua2___byte equ _wpua
1136 00000002 = _wpua2___bit equ 2
1137                    ; line_number = 412
1138                    ; bind _wpua1 = _wpua@1
1139 00000095 = _wpua1___byte equ _wpua
1140 00000001 = _wpua1___bit equ 1
1141                    ; line_number = 413
1142                    ; bind _wpua0 = _wpua@0
1143 00000095 = _wpua0___byte equ _wpua
1144 00000000 = _wpua0___bit equ 0
1145            
1146                    ; line_number = 415
1147                    ; register _ioca = 
1148 00000096 = _ioca equ 150
1149                    ; line_number = 416
1150                    ; bind _ioca5 = _ioca@5
1151 00000096 = _ioca5___byte equ _ioca
1152 00000005 = _ioca5___bit equ 5
1153                    ; line_number = 417
1154                    ; bind _ioca4 = _ioca@4
1155 00000096 = _ioca4___byte equ _ioca
1156 00000004 = _ioca4___bit equ 4
1157                    ; line_number = 418
1158                    ; bind _ioca3 = _ioca@3
1159 00000096 = _ioca3___byte equ _ioca
1160 00000003 = _ioca3___bit equ 3
1161                    ; line_number = 419
1162                    ; bind _ioca2 = _ioca@2
1163 00000096 = _ioca2___byte equ _ioca
1164 00000002 = _ioca2___bit equ 2
1165                    ; line_number = 420
1166                    ; bind _ioca1 = _ioca@1
1167 00000096 = _ioca1___byte equ _ioca
1168 00000001 = _ioca1___bit equ 1
1169                    ; line_number = 421
1170                    ; bind _ioca0 = _ioca@0
1171 00000096 = _ioca0___byte equ _ioca
1172 00000000 = _ioca0___bit equ 0
1173            
1174                    ; line_number = 423
1175                    ; register _eedath = 
1176 00000097 = _eedath equ 151
1177            
1178                    ; line_number = 425
1179                    ; register _eeadrh = 
1180 00000098 = _eeadrh equ 152
1181            
1182                    ; line_number = 427
1183                    ; register _vrcon = 
1184 00000099 = _vrcon equ 153
1185                    ; line_number = 428
1186                    ; bind _vren = _vrcon@7
1187 00000099 = _vren___byte equ _vrcon
1188 00000007 = _vren___bit equ 7
1189                    ; line_number = 429
1190                    ; bind _vrr = _vrcon@5
1191 00000099 = _vrr___byte equ _vrcon
1192 00000005 = _vrr___bit equ 5
1193                    ; line_number = 430
1194                    ; bind _vr3 = _vrcon@3
1195 00000099 = _vr3___byte equ _vrcon
1196 00000003 = _vr3___bit equ 3
1197                    ; line_number = 431
1198                    ; bind _vr2 = _vrcon@2
1199 00000099 = _vr2___byte equ _vrcon
1200 00000002 = _vr2___bit equ 2
1201                    ; line_number = 432
1202                    ; bind _vr1 = _vrcon@1
1203 00000099 = _vr1___byte equ _vrcon
1204 00000001 = _vr1___bit equ 1
1205                    ; line_number = 433
1206                    ; bind _vr0 = _vrcon@0
1207 00000099 = _vr0___byte equ _vrcon
1208 00000000 = _vr0___bit equ 0
1209            
1210                    ; line_number = 435
1211                    ; register _eedata = 
1212 0000009a = _eedata equ 154
1213                    ; line_number = 436
1214                    ; bind _eedat7 = _eedata@7
1215 0000009a = _eedat7___byte equ _eedata
1216 00000007 = _eedat7___bit equ 7
1217                    ; line_number = 437
1218                    ; bind _eedat6 = _eedata@6
1219 0000009a = _eedat6___byte equ _eedata
1220 00000006 = _eedat6___bit equ 6
1221                    ; line_number = 438
1222                    ; bind _eedat5 = _eedata@5
1223 0000009a = _eedat5___byte equ _eedata
1224 00000005 = _eedat5___bit equ 5
1225                    ; line_number = 439
1226                    ; bind _eedat4 = _eedata@4
1227 0000009a = _eedat4___byte equ _eedata
1228 00000004 = _eedat4___bit equ 4
1229                    ; line_number = 440
1230                    ; bind _eedat3 = _eedata@3
1231 0000009a = _eedat3___byte equ _eedata
1232 00000003 = _eedat3___bit equ 3
1233                    ; line_number = 441
1234                    ; bind _eedat2 = _eedata@2
1235 0000009a = _eedat2___byte equ _eedata
1236 00000002 = _eedat2___bit equ 2
1237                    ; line_number = 442
1238                    ; bind _eedat1 = _eedata@1
1239 0000009a = _eedat1___byte equ _eedata
1240 00000001 = _eedat1___bit equ 1
1241                    ; line_number = 443
1242                    ; bind _eedat0 = _eedata@0
1243 0000009a = _eedat0___byte equ _eedata
1244 00000000 = _eedat0___bit equ 0
1245            
1246                    ; line_number = 445
1247                    ; register _eeadr = 
1248 0000009b = _eeadr equ 155
1249                    ; line_number = 446
1250                    ; bind _eeadr7 = _eeadr@7
1251 0000009b = _eeadr7___byte equ _eeadr
1252 00000007 = _eeadr7___bit equ 7
1253                    ; line_number = 447
1254                    ; bind _eeadr6 = _eeadr@6
1255 0000009b = _eeadr6___byte equ _eeadr
1256 00000006 = _eeadr6___bit equ 6
1257                    ; line_number = 448
1258                    ; bind _eeadr5 = _eeadr@5
1259 0000009b = _eeadr5___byte equ _eeadr
1260 00000005 = _eeadr5___bit equ 5
1261                    ; line_number = 449
1262                    ; bind _eeadr4 = _eeadr@4
1263 0000009b = _eeadr4___byte equ _eeadr
1264 00000004 = _eeadr4___bit equ 4
1265                    ; line_number = 450
1266                    ; bind _eeadr3 = _eeadr@3
1267 0000009b = _eeadr3___byte equ _eeadr
1268 00000003 = _eeadr3___bit equ 3
1269                    ; line_number = 451
1270                    ; bind _eeadr2 = _eeadr@2
1271 0000009b = _eeadr2___byte equ _eeadr
1272 00000002 = _eeadr2___bit equ 2
1273                    ; line_number = 452
1274                    ; bind _eeadr1 = _eeadr@1
1275 0000009b = _eeadr1___byte equ _eeadr
1276 00000001 = _eeadr1___bit equ 1
1277                    ; line_number = 453
1278                    ; bind _eeadr0 = _eeadr@0
1279 0000009b = _eeadr0___byte equ _eeadr
1280 00000000 = _eeadr0___bit equ 0
1281            
1282                    ; line_number = 455
1283                    ; register _eecon1 = 
1284 0000009c = _eecon1 equ 156
1285                    ; line_number = 456
1286                    ; bind _eepgd = _eecon1@7
1287 0000009c = _eepgd___byte equ _eecon1
1288 00000007 = _eepgd___bit equ 7
1289                    ; line_number = 457
1290                    ; bind _wrerr = _eecon1@3
1291 0000009c = _wrerr___byte equ _eecon1
1292 00000003 = _wrerr___bit equ 3
1293                    ; line_number = 458
1294                    ; bind _wren = _eecon1@2
1295 0000009c = _wren___byte equ _eecon1
1296 00000002 = _wren___bit equ 2
1297                    ; line_number = 459
1298                    ; bind _wr = _eecon1@1
1299 0000009c = _wr___byte equ _eecon1
1300 00000001 = _wr___bit equ 1
1301                    ; line_number = 460
1302                    ; bind _rd = _eecon1@0
1303 0000009c = _rd___byte equ _eecon1
1304 00000000 = _rd___bit equ 0
1305            
1306                    ; line_number = 462
1307                    ; register _eecon2 = 
1308 0000009d = _eecon2 equ 157
1309            
1310                    ; line_number = 464
1311                    ; register _adresl = 
1312 0000009e = _adresl equ 158
1313            
1314                    ; line_number = 466
1315                    ; register _adcon1 = 
1316 0000009f = _adcon1 equ 159
1317                    ; line_number = 467
1318                    ; bind _adcs2 = _adcon1@6
1319 0000009f = _adcs2___byte equ _adcon1
1320 00000006 = _adcs2___bit equ 6
1321                    ; line_number = 468
1322                    ; bind _adcs1 = _adcon1@5
1323 0000009f = _adcs1___byte equ _adcon1
1324 00000005 = _adcs1___bit equ 5
1325                    ; line_number = 469
1326                    ; bind _adcs0 = _adcon1@4
1327 0000009f = _adcs0___byte equ _adcon1
1328 00000004 = _adcs0___bit equ 4
1329            
1330                    ; # Data Bank 2 (0x100 - 0x17f):
1331            
1332                    ; buffer = '_robobricks_pic16f688'
1333                    ; line_number = 6
1334                    ; library _pic16f688 exited
1335                    ; line_number = 7
1336                    ; library clock8mhz entered
1337                    ; # Copyright (c) 2004-2005 by Wayne C. Gramlich
1338                    ; # All rights reserved.
1339            
1340                    ; # This library defines the contstants {clock_rate}, {instruction_rate},
1341                    ; # and {clocks_per_instruction}.
1342            
1343                    ; # Define processor constants:
1344                    ; buffer = 'clock8mhz'
1345                    ; line_number = 9
1346                    ; constant clock_rate = 8000000
1347 007a1200 = clock_rate equ 8000000
1348                    ; line_number = 10
1349                    ; constant clocks_per_instruction = 4
1350 00000004 = clocks_per_instruction equ 4
1351                    ; line_number = 11
1352                    ; constant instruction_rate = clock_rate / clocks_per_instruction
1353 001e8480 = instruction_rate equ 2000000
1354                    ; line_number = 12
1355                    ; constant microsecond = 2
1356 00000002 = microsecond equ 2
1357            
1358            
1359                    ; buffer = '_robobricks_pic16f688'
1360                    ; line_number = 7
1361                    ; library clock8mhz exited
1362            
1363                    ; # Get some EUSART constants defined:
1364                    ; line_number = 10
1365                    ; constant _eusart_clock = clock_rate
1366 007a1200 = _eusart_clock equ 8000000
1367                    ; line_number = 11
1368                    ; constant _eusart_factor = 4
1369 00000004 = _eusart_factor equ 4
1370                    ; line_number = 12
1371                    ; library _eusart entered
1372            
1373                    ; # Copyright (c) 2005 by Wayne C. Gramlich
1374                    ; # All rights reserved.
1375            
1376                    ; # This library contains a bunch of definitions for the Enhanced Universal
1377                    ; # Asynchronous Serial Receiver/Transmitter (EUSART) that is available
1378                    ; # on many of the PIC microcontrollers.
1379            
1380                    ; # In order to use this module you have to get two constants defined
1381                    ; # BEFORE including this library -- {_eusart_factor} and {_eusart_clock}.
1382                    ; # {_eusart_clock} should be set to the frequency oscillator for the chip.
1383                    ; # {_eusart_factor} should be set to 4, 16, or 64 depending upon whether
1384                    ; # the {_brg16} and {_brgh} bits are set.  Use the table below to select:
1385                    ; #
1386                    ; #        _{brg16}	{_brgh}		_{eusart_factor}
1387                    ; #	    0		   0		      64
1388                    ; #	    0		   1		      16
1389                    ; #	    1		   0		      16
1390                    ; #	    1		   1		       
1391            
1392                    ; # 2400 baud:
1393                    ; buffer = '_eusart'
1394                    ; line_number = 23
1395                    ; constant _eusart_2400 = (_eusart_clock / (2400 * _eusart_factor)) - 1
1396 00000340 = _eusart_2400 equ 832
1397                    ; line_number = 24
1398                    ; constant _eusart_2400_low = _eusart_2400 & 0xff
1399 00000040 = _eusart_2400_low equ 64
1400                    ; line_number = 25
1401                    ; constant _eusart_2400_high = _eusart_2400 >> 8
1402 00000003 = _eusart_2400_high equ 3
1403                    ; line_number = 26
1404                    ; constant _eusart_2400_index = 0
1405 00000000 = _eusart_2400_index equ 0
1406                    ; # 4800 baud:
1407                    ; line_number = 28
1408                    ; constant _eusart_4800 = (_eusart_clock / (4800 * _eusart_factor)) - 1
1409 0000019f = _eusart_4800 equ 415
1410                    ; line_number = 29
1411                    ; constant _eusart_4800_low = _eusart_4800 & 0xff
1412 0000009f = _eusart_4800_low equ 159
1413                    ; line_number = 30
1414                    ; constant _eusart_4800_high = _eusart_4800 >> 8
1415 00000001 = _eusart_4800_high equ 1
1416                    ; line_number = 31
1417                    ; constant _eusart_4800_index = 1
1418 00000001 = _eusart_4800_index equ 1
1419                    ; # 9600 baud:
1420                    ; line_number = 33
1421                    ; constant _eusart_9600 = (_eusart_clock / (9600 * _eusart_factor)) - 1
1422 000000cf = _eusart_9600 equ 207
1423                    ; line_number = 34
1424                    ; constant _eusart_9600_low = _eusart_9600 & 0xff
1425 000000cf = _eusart_9600_low equ 207
1426                    ; line_number = 35
1427                    ; constant _eusart_9600_high = _eusart_9600 >> 8
1428 00000000 = _eusart_9600_high equ 0
1429                    ; line_number = 36
1430                    ; constant _eusart_9600_index = 2
1431 00000002 = _eusart_9600_index equ 2
1432                    ; # 19200 baud:
1433                    ; line_number = 38
1434                    ; constant _eusart_19200 = (_eusart_clock / (19200 * _eusart_factor)) - 1
1435 00000067 = _eusart_19200 equ 103
1436                    ; line_number = 39
1437                    ; constant _eusart_19200_low = _eusart_19200 & 0xff
1438 00000067 = _eusart_19200_low equ 103
1439                    ; line_number = 40
1440                    ; constant _eusart_19200_high = _eusart_19200 >> 8
1441 00000000 = _eusart_19200_high equ 0
1442                    ; line_number = 41
1443                    ; constant _eusart_19200_index = 3
1444 00000003 = _eusart_19200_index equ 3
1445                    ; # 38400 baud:
1446                    ; line_number = 43
1447                    ; constant _eusart_38400 = (_eusart_clock / (38400 * _eusart_factor)) - 1
1448 00000033 = _eusart_38400 equ 51
1449                    ; line_number = 44
1450                    ; constant _eusart_38400_low = _eusart_38400 & 0xff
1451 00000033 = _eusart_38400_low equ 51
1452                    ; line_number = 45
1453                    ; constant _eusart_38400_high = _eusart_38400 >> 8
1454 00000000 = _eusart_38400_high equ 0
1455                    ; line_number = 46
1456                    ; constant _eusart_38400_index = 4
1457 00000004 = _eusart_38400_index equ 4
1458                    ; # 57600 baud:
1459                    ; line_number = 48
1460                    ; constant _eusart_57600 = (_eusart_clock / (57600 * _eusart_factor)) - 1
1461 00000021 = _eusart_57600 equ 33
1462                    ; line_number = 49
1463                    ; constant _eusart_57600_low = _eusart_57600 & 0xff
1464 00000021 = _eusart_57600_low equ 33
1465                    ; line_number = 50
1466                    ; constant _eusart_57600_high = _eusart_57600 >> 8
1467 00000000 = _eusart_57600_high equ 0
1468                    ; line_number = 51
1469                    ; constant _eusart_57600_index = 5
1470 00000005 = _eusart_57600_index equ 5
1471                    ; # 115200 baud:
1472                    ; line_number = 53
1473                    ; constant _eusart_115200 = (_eusart_clock / (115200 * _eusart_factor)) - 1
1474 00000010 = _eusart_115200 equ 16
1475                    ; line_number = 54
1476                    ; constant _eusart_115200_low = _eusart_115200 & 0xff
1477 00000010 = _eusart_115200_low equ 16
1478                    ; line_number = 55
1479                    ; constant _eusart_115200_high = _eusart_115200 >> 8
1480 00000000 = _eusart_115200_high equ 0
1481                    ; line_number = 56
1482                    ; constant _eusart_115200_index = 6
1483 00000006 = _eusart_115200_index equ 6
1484                    ; # 203400 baud:
1485                    ; line_number = 58
1486                    ; constant _eusart_203400 = (_eusart_clock / (203400 * _eusart_factor)) - 1
1487 00000008 = _eusart_203400 equ 8
1488                    ; line_number = 59
1489                    ; constant _eusart_203400_low = _eusart_203400 & 0xff
1490 00000008 = _eusart_203400_low equ 8
1491                    ; line_number = 60
1492                    ; constant _eusart_203400_high = _eusart_203400 >> 8
1493 00000000 = _eusart_203400_high equ 0
1494                    ; line_number = 61
1495                    ; constant _eusart_203400_index = 7
1496 00000007 = _eusart_203400_index equ 7
1497            
1498            
1499                    ; buffer = '_robobricks_pic16f688'
1500                    ; line_number = 12
1501                    ; library _eusart exited
1502            
1503                    ; line_number = 14
1504                    ; global debug_mode bit
1505 0000006f = debug_mode___byte equ globals___0+79
1506 00000000 = debug_mode___bit equ 0
1507                    ; line_number = 15
1508                    ; global in_byte_get bit
1509 0000006f = in_byte_get___byte equ globals___0+79
1510 00000001 = in_byte_get___bit equ 1
1511            
1512                    ; Delaying code generation for procedure  byte_get
1513                    ; Delaying code generation for procedure  byte_put
1514                    ; Delaying code generation for procedure  baud_rate_low
1515                    ; Delaying code generation for procedure  baud_rate_high
1516            
1517                    ; buffer = 'servo4'
1518                    ; line_number = 6
1519                    ; library _robobricks_pic16f688 exited
1520            
1521                    ; line_number = 8
1522                    ; package pdip
1523                    ; line_number = 9
1524                    ; pin 1 = power_supply
1525                    ; line_number = 10
1526                    ;  pin 2 = ra5_out, name = servo0, bit = servo0_bit, mask = servo0_mask
1527 00000005 = servo0___byte equ _porta
1528 00000005 = servo0___bit equ 5
1529 00000005 = servo0_bit equ 5
1530 00000020 = servo0_mask equ 32
1531                    ; line_number = 11
1532                    ;  pin 3 = ra4_in, name = debug
1533 00000005 = debug___byte equ _porta
1534 00000004 = debug___bit equ 4
1535                    ; line_number = 12
1536                    ;  pin 4 = ra3_in, name = cal_mode
1537 00000005 = cal_mode___byte equ _porta
1538 00000004 = cal_mode___bit equ 4
1539                    ; line_number = 13
1540                    ;  pin 5 = rx
1541                    ; line_number = 14
1542                    ;  pin 6 = tx
1543                    ; line_number = 15
1544                    ;  pin 7 = rc3_out, name = servo1, bit = servo1_bit, mask = servo1_mask
1545 00000007 = servo1___byte equ _portc
1546 00000003 = servo1___bit equ 3
1547 00000003 = servo1_bit equ 3
1548 00000008 = servo1_mask equ 8
1549                    ; line_number = 16
1550                    ;  pin 8 = rc2_out, name = servo2, bit = servo2_bit, mask = servo2_mask
1551 00000007 = servo2___byte equ _portc
1552 00000002 = servo2___bit equ 2
1553 00000002 = servo2_bit equ 2
1554 00000004 = servo2_mask equ 4
1555                    ; line_number = 17
1556                    ;  pin 9 = rc1_out, name = servo3, bit = servo3_bit, mask = servo3_mask
1557 00000007 = servo3___byte equ _portc
1558 00000001 = servo3___bit equ 1
1559 00000001 = servo3_bit equ 1
1560 00000002 = servo3_mask equ 2
1561                    ; line_number = 18
1562                    ;  pin 10 = an4, name = sense3
1563 00000007 = sense3___byte equ _portc
1564 00000000 = sense3___bit equ 0
1565                    ; line_number = 19
1566                    ;  pin 11 = an2, name = sense2
1567 00000005 = sense2___byte equ _porta
1568 00000002 = sense2___bit equ 2
1569                    ; line_number = 20
1570                    ;  pin 12 = an1, name = sense0
1571 00000005 = sense0___byte equ _porta
1572 00000001 = sense0___bit equ 1
1573                    ; line_number = 21
1574                    ;  pin 13 = an0, name = sense1
1575 00000005 = sense1___byte equ _porta
1576 00000000 = sense1___bit equ 0
1577                    ; line_number = 22
1578                    ;  pin 14 = ground
1579                    ; line_number = 23
1580                    ; bind tris_servo0 = _trisa@servo0_bit
1581 00000085 = tris_servo0___byte equ _trisa
1582 00000005 = tris_servo0___bit equ 5
1583                    ; line_number = 24
1584                    ; bind tris_servo1 = _trisc@servo1_bit
1585 00000087 = tris_servo1___byte equ _trisc
1586 00000003 = tris_servo1___bit equ 3
1587                    ; line_number = 25
1588                    ; bind tris_servo2 = _trisc@servo2_bit
1589 00000087 = tris_servo2___byte equ _trisc
1590 00000002 = tris_servo2___bit equ 2
1591                    ; line_number = 26
1592                    ; bind tris_servo3 = _trisc@servo3_bit
1593 00000087 = tris_servo3___byte equ _trisc
1594 00000001 = tris_servo3___bit equ 1
1595            
1596                    ; line_number = 28
1597                    ; constant trisa_inputs = servo0_mask
1598 00000020 = trisa_inputs equ 32
1599                    ; line_number = 29
1600                    ; constant trisc_inputs = servo1_mask | servo2_mask | servo3_mask
1601 0000000e = trisc_inputs equ 14
1602                    ; line_number = 30
1603                    ; constant rx_mask = 1 << 5
1604 00000020 = rx_mask equ 32
1605            
1606                    ; #configure cp=on, wdte=on
1607            
1608                    ; # Define the pin bindings:
1609                    ; line_number = 35
1610                    ; constant initial_minimum = 1000
1611 000003e8 = initial_minimum equ 1000
1612                    ; line_number = 36
1613                    ; constant initial_maximum = 2000
1614 000007d0 = initial_maximum equ 2000
1615                    ; line_number = 37
1616                    ; constant initial_scale = (initial_maximum - initial_minimum) >> 4
1617 0000003e = initial_scale equ 62
1618                    ; line_number = 38
1619                    ; constant initial_high = initial_minimum >> 8
1620 00000003 = initial_high equ 3
1621                    ; line_number = 39
1622                    ; constant initial_low = initial_minimum & 0xff
1623 000000e8 = initial_low equ 232
1624            
1625                    ; line_number = 41
1626                    ; global analogs[4] array[byte]
1627 00000023 = analogs equ globals___0+3
1628            
1629                    ; # The next {eedata_size} bytes are saved and restored from EEData:
1630                    ; line_number = 44
1631                    ; constant eedata_size = 13
1632 0000000d = eedata_size equ 13
1633                    ; line_number = 45
1634                    ; global base_lows[4] array[byte]
1635 00000027 = base_lows equ globals___0+7
1636                    ; line_number = 46
1637                    ; global base_highs[4] array[byte]
1638 0000002b = base_highs equ globals___0+11
1639                    ; line_number = 47
1640                    ; global scales[4] array[byte]
1641 0000002f = scales equ globals___0+15
1642                    ; line_number = 48
1643                    ; global address byte
1644 00000033 = address equ globals___0+19
1645            
1646                    ; line_number = 50
1647                    ; global fines[4] array[byte]
1648 00000034 = fines equ globals___0+20
1649                    ; line_number = 51
1650                    ; global positions[4] array[byte]
1651 00000038 = positions equ globals___0+24
1652                    ; line_number = 52
1653                    ; global interrupts byte
1654 0000003c = interrupts equ globals___0+28
1655                    ; line_number = 53
1656                    ; global enables byte
1657 0000003d = enables equ globals___0+29
1658            
1659                    ; line_number = 55
1660                    ; global command_previous byte
1661 0000003e = command_previous equ globals___0+30
1662                    ; line_number = 56
1663                    ; global command_last byte
1664 0000003f = command_last equ globals___0+31
1665                    ; line_number = 57
1666                    ; global sent_previous byte
1667 00000040 = sent_previous equ globals___0+32
1668                    ; line_number = 58
1669                    ; global sent_last byte
1670 00000041 = sent_last equ globals___0+33
1671            
1672                    ; line_number = 60
1673                    ; origin 0
1674   0000 :           org     0
1675            
1676                    ; line_number = 62
1677                    ; procedure start_up
1678   0000 :   start_up:
1679                    ; arguments_none
1680                    ; line_number = 64
1681                    ;  returns_nothing
1682            
1683                    ; before procedure statements delay=non-uniform, bit states=(data:00=>00 code:XX=>XX)
1684                    ; line_number = 66
1685                    ;  assemble
1686                    ; line_number = 67
1687 0000 2823          goto    main
1688            
1689                    ; delay after procedure statements=non-uniform
1690                    ; Implied return
1691 0001 3400          retlw   0
1692            
1693            
1694            
1695            
1696                    ; line_number = 69
1697                    ; origin 4
1698   0004 :           org     4
1699            
1700                    ; line_number = 71
1701                    ; procedure interrupt
1702   0004 :   interrupt:
1703 00000043 = interrupt___w_save equ globals___0+35
1704 00000042 = interrupt___status_save equ globals___0+34
1705                    ; Carefully save __w and __tatus into RAM
1706                    ; Save W first (easy)
1707 0004 00c3          movwf   interrupt___w_save
1708                    ; Save Status without smashing it (tricky)
1709                    ; Move swapped version of status into W
1710 0005 0e03          swapf   __status,w
1711                    ; Store swapped version of status into RAM
1712 0006 00c2          movwf   interrupt___status_save
1713                    ; arguments_none
1714                    ; line_number = 73
1715                    ;  returns_nothing
1716            
1717                    ; before procedure statements delay=non-uniform, bit states=(data:00=>?? code:XX=>XX)
1718                    ; line_number = 75
1719                    ;  servo0 := 0
1720 0007 1283          bcf     __rp0___byte, __rp0___bit
1721 0008 1303          bcf     __rp1___byte, __rp1___bit
1722 0009 1285          bcf     servo0___byte, servo0___bit
1723                    ; line_number = 76
1724                    ;  servo1 := 0
1725 000a 1187          bcf     servo1___byte, servo1___bit
1726                    ; line_number = 77
1727                    ;  servo2 := 0
1728 000b 1107          bcf     servo2___byte, servo2___bit
1729                    ; line_number = 78
1730                    ;  servo3 := 0
1731 000c 1087          bcf     servo3___byte, servo3___bit
1732                    ; line_number = 79
1733                    ;  tris_servo0 := 0
1734 000d 1683          bsf     __rp0___byte, __rp0___bit
1735 000e 1285          bcf     tris_servo0___byte, tris_servo0___bit
1736                    ; line_number = 80
1737                    ;  tris_servo1 := 0
1738 000f 1187          bcf     tris_servo1___byte, tris_servo1___bit
1739                    ; line_number = 81
1740                    ;  tris_servo2 := 0
1741 0010 1107          bcf     tris_servo2___byte, tris_servo2___bit
1742                    ; line_number = 82
1743                    ;  tris_servo3 := 0
1744 0011 1087          bcf     tris_servo3___byte, tris_servo3___bit
1745                    ; line_number = 83
1746                    ;  _tmr1if := 0
1747 0012 1283          bcf     __rp0___byte, __rp0___bit
1748 0013 100c          bcf     _tmr1if___byte, _tmr1if___bit
1749            
1750                    ; #assemble
1751                    ; #	retfie
1752            
1753            
1754                    ; delay after procedure statements=non-uniform
1755                    ; Interrupt return
1756                    ; Carefully restore __w and __tatus from RAM
1757                    ; Restore swapped status into W
1758 0014 0e42          swapf   interrupt___status_save,w
1759                    ; W now contains (unswapped) status
1760                    ; Restore W to __status
1761 0015 0083          movwf   __status
1762                    ; From here on out, do not modify __status
1763                    ; Swap saved W register in RAM
1764 0016 0ec3          swapf   interrupt___w_save,f
1765                    ; Unswap the saved W reg and restore to W
1766 0017 0e43          swapf   interrupt___w_save,w
1767                    ; __w and __status are now restored
1768                    ; Return from interrupt
1769 0018 0009          retfie  
1770            
1771            
1772            
1773            
1774                    ; line_number = 89
1775                    ; procedure us100
1776   0019 :   us100:
1777                    ; Last argument is sitting in W; save into argument variable
1778 0019 00c4          movwf   us100__count
1779                    ; delay=4294967295
1780                    ; line_number = 90
1781                    ; argument count byte
1782 00000044 = us100__count equ globals___0+36
1783                    ; line_number = 91
1784                    ;  returns_nothing
1785            
1786                    ; # This procedure will delay by {count} * 100uS.
1787            
1788                    ; before procedure statements delay=non-uniform, bit states=(data:00=>00 code:XX=>XX)
1789                    ; line_number = 95
1790                    ;  loop_exactly count start
1791 00000054 = us100__1 equ globals___0+52
1792 001a 0844          movf    us100__count,w
1793 001b 00d4          movwf   us100__1
1794   001c :   us100__2:
1795                    ; line_number = 96
1796                    ; delay 100 * microsecond start
1797                    ; Delay expression evaluates to 200
1798                    ; line_number = 97
1799                    ; do_nothing
1800            
1801            
1802                    ; Delay 200 cycles
1803                    ; Delay loop takes 50 * 4 = 200 cycles
1804 001c 3032          movlw   50
1805   001d :   us100__3:
1806 001d 3eff          addlw   255
1807 001e 1d03          btfss   __z___byte, __z___bit
1808 001f 281d          goto    us100__3
1809                    ; line_number = 96
1810                    ; delay 100 * microsecond done
1811                    ; line_number = 95
1812                    ;  loop_exactly count wrap-up
1813 0020 0bd4          decfsz  us100__1,f
1814 0021 281c          goto    us100__2
1815                    ; line_number = 95
1816                    ;  loop_exactly count done
1817                    ; delay after procedure statements=non-uniform
1818                    ; Implied return
1819 0022 3400          retlw   0
1820            
1821            
1822            
1823            
1824                    ; line_number = 100
1825                    ; constant servo_on = 0
1826 00000000 = servo_on equ 0
1827                    ; line_number = 101
1828                    ; constant servo_off = 1
1829 00000001 = servo_off equ 1
1830            
1831                    ; line_number = 103
1832                    ; procedure main
1833   0023 :   main:
1834                    ; Initialize some registers
1835 0023 3001          movlw   1
1836 0024 009f          movwf   _adcon0
1837 0025 3017          movlw   23
1838 0026 1683          bsf     __rp0___byte, __rp0___bit
1839 0027 0091          movwf   _ansel
1840 0028 3007          movlw   7
1841 0029 1283          bcf     __rp0___byte, __rp0___bit
1842 002a 0099          movwf   _cmcon0
1843 002b 301f          movlw   31
1844 002c 1683          bsf     __rp0___byte, __rp0___bit
1845 002d 0085          movwf   _trisa
1846 002e 3031          movlw   49
1847 002f 0087          movwf   _trisc
1848                    ; arguments_none
1849                    ; line_number = 105
1850                    ;  returns_nothing
1851            
1852                    ; line_number = 107
1853                    ;  local command byte
1854 00000045 = main__command equ globals___0+37
1855                    ; line_number = 108
1856                    ;  local glitch byte
1857 00000046 = main__glitch equ globals___0+38
1858                    ; line_number = 109
1859                    ;  local id_index byte
1860 00000047 = main__id_index equ globals___0+39
1861                    ; line_number = 110
1862                    ;  local temporary byte
1863 00000048 = main__temporary equ globals___0+40
1864                    ; line_number = 111
1865                    ;  local servo byte
1866 00000049 = main__servo equ globals___0+41
1867                    ; line_number = 112
1868                    ;  local position byte
1869 0000004a = main__position equ globals___0+42
1870            
1871                    ; # Switch over to 8MHz:
1872                    ; before procedure statements delay=non-uniform, bit states=(data:00=>01 code:XX=>XX)
1873                    ; line_number = 115
1874                    ;  _osccon := 0x71
1875 0030 3071          movlw   113
1876 0031 008f          movwf   _osccon
1877            
1878                    ; # Warm up the UART:
1879                    ; line_number = 118
1880                    ;  _txsta := 0x24
1881 0032 3024          movlw   36
1882 0033 1283          bcf     __rp0___byte, __rp0___bit
1883 0034 0096          movwf   _txsta
1884                    ; line_number = 119
1885                    ;  _rcsta := 0x90
1886 0035 3090          movlw   144
1887 0036 0097          movwf   _rcsta
1888                    ; line_number = 120
1889                    ;  _baudctl := 0x08
1890 0037 3008          movlw   8
1891 0038 0091          movwf   _baudctl
1892                    ; line_number = 121
1893                    ;  _spbrg := _eusart_2400_low
1894 0039 3040          movlw   64
1895 003a 0093          movwf   _spbrg
1896                    ; line_number = 122
1897                    ;  _spbrgh := _eusart_2400_high
1898 003b 3003          movlw   3
1899 003c 0092          movwf   _spbrgh
1900            
1901                    ; # These registers are in data bank 1:
1902                    ; line_number = 125
1903                    ;  _psa := 0
1904 003d 1683          bsf     __rp0___byte, __rp0___bit
1905 003e 1181          bcf     _psa___byte, _psa___bit
1906            
1907                    ; line_number = 127
1908                    ;  loop_forever start
1909   003f :   main__1:
1910                    ; line_number = 128
1911                    ; servo0 := servo_on
1912 003f 1283          bcf     __rp0___byte, __rp0___bit
1913 0040 1285          bcf     servo0___byte, servo0___bit
1914                    ; line_number = 129
1915                    ;  servo1 := servo_on
1916 0041 1187          bcf     servo1___byte, servo1___bit
1917                    ; line_number = 130
1918                    ;  servo2 := servo_on
1919 0042 1107          bcf     servo2___byte, servo2___bit
1920                    ; line_number = 131
1921                    ;  servo3 := servo_on
1922 0043 1087          bcf     servo3___byte, servo3___bit
1923            
1924                    ; line_number = 133
1925                    ;  call us100(15)
1926 0044 300f          movlw   15
1927 0045 2019          call    us100
1928            
1929                    ; line_number = 135
1930                    ;  servo0 := servo_off
1931 0046 1685          bsf     servo0___byte, servo0___bit
1932                    ; line_number = 136
1933                    ;  servo1 := servo_off
1934 0047 1587          bsf     servo1___byte, servo1___bit
1935                    ; line_number = 137
1936                    ;  servo2 := servo_off
1937 0048 1507          bsf     servo2___byte, servo2___bit
1938                    ; line_number = 138
1939                    ;  servo3 := servo_off
1940 0049 1487          bsf     servo3___byte, servo3___bit
1941            
1942                    ; line_number = 140
1943                    ;  call us100(190)
1944 004a 30be          movlw   190
1945 004b 2019          call    us100
1946            
1947            
1948                    ; line_number = 127
1949                    ;  loop_forever wrap-up
1950 004c 283f          goto    main__1
1951                    ; line_number = 127
1952                    ;  loop_forever done
1953                    ; line_number = 143
1954                    ; loop_forever start
1955   004d :   main__2:
1956                    ; line_number = 144
1957                    ; _trisa := trisa_inputs
1958 004d 3020          movlw   32
1959 004e 1683          bsf     __rp0___byte, __rp0___bit
1960 004f 0085          movwf   _trisa
1961                    ; line_number = 145
1962                    ;  _trisc := trisc_inputs | rx_mask
1963                    ; Expression is strictly a constant
1964 0050 302e          movlw   46
1965 0051 0087          movwf   _trisc
1966                    ; #servo0 := 0
1967                    ; #servo1 := 0
1968                    ; #servo2 := 0
1969                    ; #servo3 := 0
1970            
1971                    ; line_number = 151
1972                    ;  _trisa := 0
1973 0052 3000          movlw   0
1974 0053 0085          movwf   _trisa
1975                    ; line_number = 152
1976                    ;  _trisc := rx_mask
1977 0054 3020          movlw   32
1978 0055 0087          movwf   _trisc
1979                    ; line_number = 153
1980                    ;  servo0 := 0
1981 0056 1283          bcf     __rp0___byte, __rp0___bit
1982 0057 1285          bcf     servo0___byte, servo0___bit
1983                    ; line_number = 154
1984                    ;  servo1 := 0
1985 0058 1187          bcf     servo1___byte, servo1___bit
1986                    ; line_number = 155
1987                    ;  servo2 := 0
1988 0059 1107          bcf     servo2___byte, servo2___bit
1989                    ; line_number = 156
1990                    ;  servo3 := 0
1991 005a 1087          bcf     servo3___byte, servo3___bit
1992                    ; line_number = 157
1993                    ;  servo0 := 1
1994 005b 1685          bsf     servo0___byte, servo0___bit
1995                    ; line_number = 158
1996                    ;  servo1 := 1
1997 005c 1587          bsf     servo1___byte, servo1___bit
1998                    ; line_number = 159
1999                    ;  servo2 := 1
2000 005d 1507          bsf     servo2___byte, servo2___bit
2001                    ; line_number = 160
2002                    ;  servo3 := 1
2003 005e 1487          bsf     servo3___byte, servo3___bit
2004            
2005                    ; line_number = 143
2006                    ; loop_forever wrap-up
2007 005f 284d          goto    main__2
2008                    ; line_number = 143
2009                    ; loop_forever done
2010                    ; # These registers are in data bank 0:
2011                    ; line_number = 163
2012                    ;  _t1con := 0x00
2013 0060 3000          movlw   0
2014 0061 0090          movwf   _t1con
2015                    ; line_number = 164
2016                    ;  interrupts := 0
2017 0062 3000          movlw   0
2018 0063 00bc          movwf   interrupts
2019            
2020                    ; line_number = 166
2021                    ;  _eeadr := 0
2022 0064 3000          movlw   0
2023 0065 1683          bsf     __rp0___byte, __rp0___bit
2024 0066 009b          movwf   _eeadr
2025                    ; line_number = 167
2026                    ;  loop_exactly 13 start
2027 00000055 = main__3 equ globals___0+53
2028 0067 300d          movlw   13
2029 0068 1283          bcf     __rp0___byte, __rp0___bit
2030 0069 00d5          movwf   main__3
2031   006a :   main__4:
2032                    ; line_number = 168
2033                    ; _rd := 1
2034 006a 1683          bsf     __rp0___byte, __rp0___bit
2035 006b 141c          bsf     _rd___byte, _rd___bit
2036                    ; line_number = 169
2037                    ;  base_lows[_eeadr] := _eedata
2038                    ; index_fsr_first
2039 006c 081b          movf    _eeadr,w
2040 006d 3e27          addlw   base_lows
2041 006e 0084          movwf   __fsr
2042 006f 081a          movf    _eedata,w
2043 0070 0080          movwf   __indf
2044                    ; line_number = 170
2045                    ;  _eeadr := _eeadr + 1
2046 0071 0a9b          incf    _eeadr,f
2047            
2048 0072 1283          bcf     __rp0___byte, __rp0___bit
2049                    ; line_number = 167
2050                    ;  loop_exactly 13 wrap-up
2051 0073 0bd5          decfsz  main__3,f
2052 0074 286a          goto    main__4
2053                    ; line_number = 167
2054                    ;  loop_exactly 13 done
2055                    ; line_number = 172
2056                    ; if base_lows[0] = 0xff start
2057                    ; Left minus Right
2058 0075 0827          movf    base_lows,w
2059 0076 3e01          addlw   1
2060                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2061                    ; CASE: true_code.size = 0 && false_code.size > 1
2062                    ; bit_code_emit_helper1: body_code.size=22 true_test=true body_code.delay=0 (non-uniform delay)
2063 0077 1d03          btfss   __z___byte, __z___bit
2064 0078 2891          goto    main__7
2065                    ; line_number = 173
2066                    ; servo := 0
2067 0079 3000          movlw   0
2068 007a 00c9          movwf   main__servo
2069                    ; line_number = 174
2070                    ;  loop_exactly 4 start
2071 00000055 = main__5 equ globals___0+53
2072 007b 3004          movlw   4
2073 007c 00d5          movwf   main__5
2074   007d :   main__6:
2075                    ; line_number = 175
2076                    ; base_lows[servo] := initial_low
2077                    ; index_fsr_first
2078 007d 0849          movf    main__servo,w
2079 007e 3e27          addlw   base_lows
2080 007f 0084          movwf   __fsr
2081 0080 30e8          movlw   232
2082 0081 0080          movwf   __indf
2083                    ; line_number = 176
2084                    ;  base_highs[servo] := initial_high
2085                    ; index_fsr_first
2086 0082 0849          movf    main__servo,w
2087 0083 3e2b          addlw   base_highs
2088 0084 0084          movwf   __fsr
2089 0085 3003          movlw   3
2090 0086 0080          movwf   __indf
2091                    ; line_number = 177
2092                    ;  scales[servo] := initial_scale
2093                    ; index_fsr_first
2094 0087 0849          movf    main__servo,w
2095 0088 3e2f          addlw   scales
2096 0089 0084          movwf   __fsr
2097 008a 303e          movlw   62
2098 008b 0080          movwf   __indf
2099                    ; line_number = 178
2100                    ;  servo := servo + 1
2101 008c 0ac9          incf    main__servo,f
2102                    ; line_number = 174
2103                    ;  loop_exactly 4 wrap-up
2104 008d 0bd5          decfsz  main__5,f
2105 008e 287d          goto    main__6
2106                    ; line_number = 174
2107                    ;  loop_exactly 4 done
2108                    ; line_number = 179
2109                    ; address := 0xff
2110 008f 30ff          movlw   255
2111 0090 00b3          movwf   address
2112                    ; Recombine size1 = 0 || size2 = 0
2113   0091 :   main__7:
2114                    ; code.delay=4294967295 back_code.delay=4294967295
2115                    ; <=bit_code_emit@symbol; sym=__z (data:00=>00 code:XX=>XX)
2116                    ; line_number = 172
2117                    ; if base_lows[0] = 0xff done
2118                    ; line_number = 180
2119                    ; servo := 0
2120 0091 3000          movlw   0
2121 0092 00c9          movwf   main__servo
2122                    ; line_number = 181
2123                    ;  loop_exactly 4 start
2124 00000055 = main__8 equ globals___0+53
2125 0093 3004          movlw   4
2126 0094 00d5          movwf   main__8
2127   0095 :   main__9:
2128                    ; line_number = 182
2129                    ; positions[servo] := 0
2130                    ; index_fsr_first
2131 0095 0849          movf    main__servo,w
2132 0096 3e38          addlw   positions
2133 0097 0084          movwf   __fsr
2134 0098 3000          movlw   0
2135 0099 0080          movwf   __indf
2136                    ; line_number = 183
2137                    ;  fines[servo] := 0
2138                    ; index_fsr_first
2139 009a 0849          movf    main__servo,w
2140 009b 3e34          addlw   fines
2141 009c 0084          movwf   __fsr
2142 009d 3000          movlw   0
2143 009e 0080          movwf   __indf
2144                    ; line_number = 184
2145                    ;  servo := servo + 1
2146 009f 0ac9          incf    main__servo,f
2147            
2148                    ; line_number = 181
2149                    ;  loop_exactly 4 wrap-up
2150 00a0 0bd5          decfsz  main__8,f
2151 00a1 2895          goto    main__9
2152                    ; line_number = 181
2153                    ;  loop_exactly 4 done
2154                    ; # For now:
2155                    ; #enables := 0xf
2156                    ; line_number = 188
2157                    ;  enables := 0
2158 00a2 3000          movlw   0
2159 00a3 00bd          movwf   enables
2160            
2161                    ; # According to the specification sheet, TMR1L, TRM1H, and
2162                    ; # TMR1IF must be clear before enabling TMR1IE.  Since they
2163                    ; # do not say why, it is unclear what problem that this addresses.
2164                    ; line_number = 193
2165                    ;  _tmr1l := 0
2166 00a4 3000          movlw   0
2167 00a5 008e          movwf   _tmr1l
2168                    ; line_number = 194
2169                    ;  _tmr1h := 0
2170 00a6 3000          movlw   0
2171 00a7 008f          movwf   _tmr1h
2172                    ; line_number = 195
2173                    ;  _tmr1if := 0
2174 00a8 100c          bcf     _tmr1if___byte, _tmr1if___bit
2175                    ; line_number = 196
2176                    ;  _tmr1ie := 1
2177 00a9 1683          bsf     __rp0___byte, __rp0___bit
2178 00aa 140c          bsf     _tmr1ie___byte, _tmr1ie___bit
2179                    ; line_number = 197
2180                    ;  _peie := 1
2181 00ab 1283          bcf     __rp0___byte, __rp0___bit
2182 00ac 170b          bsf     _peie___byte, _peie___bit
2183                    ; line_number = 198
2184                    ;  _gie := 1
2185 00ad 178b          bsf     _gie___byte, _gie___bit
2186                    ; line_number = 199
2187                    ;  _tmr1on := 1
2188 00ae 1410          bsf     _tmr1on___byte, _tmr1on___bit
2189                    ; #_tmr1ie := 0
2190                    ; #_peie := 0
2191                    ; #_gie := 0
2192                    ; #_tmr1on := 1
2193            
2194                    ; # Let's initialize the servo's to off:
2195                    ; line_number = 206
2196                    ;  servo0 := 0
2197 00af 1285          bcf     servo0___byte, servo0___bit
2198                    ; line_number = 207
2199                    ;  servo1 := 0
2200 00b0 1187          bcf     servo1___byte, servo1___bit
2201                    ; line_number = 208
2202                    ;  servo2 := 0
2203 00b1 1107          bcf     servo2___byte, servo2___bit
2204                    ; line_number = 209
2205                    ;  servo3 := 0
2206 00b2 1087          bcf     servo3___byte, servo3___bit
2207            
2208                    ; line_number = 211
2209                    ;  glitch := 0
2210 00b3 3000          movlw   0
2211 00b4 00c6          movwf   main__glitch
2212                    ; line_number = 212
2213                    ;  id_index := 0
2214 00b5 3000          movlw   0
2215 00b6 00c7          movwf   main__id_index
2216            
2217                    ; line_number = 214
2218                    ;  loop_forever start
2219   00b7 :   main__10:
2220                    ; line_number = 215
2221                    ; command := byte_get()
2222 00b7 22eb          call    byte_get
2223 00b8 00c5          movwf   main__command
2224                    ; line_number = 216
2225                    ;  servo := command & 3
2226 00b9 3003          movlw   3
2227 00ba 0545          andwf   main__command,w
2228 00bb 00c9          movwf   main__servo
2229                    ; line_number = 217
2230                    ;  switch command >> 6 start
2231 00bc 3000          movlw   main__87>>8
2232 00bd 008a          movwf   __pclath
2233 00000055 = main__88 equ globals___0+53
2234 00be 0e45          swapf   main__command,w
2235 00bf 00d5          movwf   main__88
2236 00c0 0cd5          rrf     main__88,f
2237 00c1 0c55          rrf     main__88,w
2238 00c2 3903          andlw   3
2239 00c3 3ec5          addlw   main__87
2240 00c4 0082          movwf   __pcl
2241                    ; page_group 4
2242   00c5 :   main__87:
2243 00c5 28c9          goto    main__83
2244 00c6 2907          goto    main__84
2245 00c7 291b          goto    main__85
2246 00c8 292f          goto    main__86
2247                    ; line_number = 218
2248                    ; case 0
2249   00c9 :   main__83:
2250                    ; # 00xx xxxx
2251                    ; line_number = 220
2252                    ;  switch (command >> 3) & 7 start
2253 00c9 3000          movlw   main__20>>8
2254 00ca 008a          movwf   __pclath
2255 00000055 = main__21 equ globals___0+53
2256 00cb 0c45          rrf     main__command,w
2257 00cc 00d5          movwf   main__21
2258 00cd 0cd5          rrf     main__21,f
2259 00ce 0c55          rrf     main__21,w
2260 00cf 3907          andlw   7
2261 00d0 3ed2          addlw   main__20
2262 00d1 0082          movwf   __pcl
2263                    ; page_group 8
2264   00d2 :   main__20:
2265 00d2 28da          goto    main__15
2266 00d3 28e5          goto    main__16
2267 00d4 28f0          goto    main__17
2268 00d5 28fb          goto    main__18
2269 00d6 2906          goto    main__19
2270 00d7 2906          goto    main__19
2271 00d8 2906          goto    main__19
2272 00d9 2906          goto    main__19
2273                    ; line_number = 221
2274                    ; case 0
2275   00da :   main__15:
2276                    ; # 0000 0xxx:
2277                    ; line_number = 223
2278                    ;  temporary := byte_get()
2279 00da 22eb          call    byte_get
2280 00db 00c8          movwf   main__temporary
2281                    ; line_number = 224
2282                    ;  if command@2 start
2283 00000045 = main__select__11___byte equ main__command
2284 00000002 = main__select__11___bit equ 2
2285                    ; # 0000 01ss (Write Base High):
2286                    ; line_number = 226
2287                    ;  base_highs[servo] := temporary
2288                    ; index_fsr_first
2289 00dc 0849          movf    main__servo,w
2290                    ; # 0000 00ss (Write Base Low):
2291                    ; line_number = 229
2292                    ;  base_lows[servo] := temporary
2293                    ; index_fsr_first
2294                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2295                    ; CASE: true_size=1 && false_size=1
2296                    ; SUBCASE: Double test; true, then false
2297 00dd 1945          btfsc   main__select__11___byte, main__select__11___bit
2298 00de 3e2b          addlw   base_highs
2299 00df 1d45          btfss   main__select__11___byte, main__select__11___bit
2300 00e0 3e27          addlw   base_lows
2301                    ; code.delay=4294967295 back_code.delay=4294967295
2302 00e1 0084          movwf   __fsr
2303 00e2 0848          movf    main__temporary,w
2304 00e3 0080          movwf   __indf
2305                    ; <=bit_code_emit@symbol; sym=main__select__11 (data:00=>00 code:XX=>XX)
2306                    ; line_number = 224
2307                    ;  if command@2 done
2308 00e4 2906          goto    main__22
2309                    ; line_number = 230
2310                    ; case 1
2311   00e5 :   main__16:
2312                    ; # 0000 1xxx:
2313                    ; line_number = 232
2314                    ;  temporary := byte_get()
2315 00e5 22eb          call    byte_get
2316 00e6 00c8          movwf   main__temporary
2317                    ; line_number = 233
2318                    ;  if command@2 start
2319 00000045 = main__select__12___byte equ main__command
2320 00000002 = main__select__12___bit equ 2
2321                    ; # 0000 11ss (Write Scale):
2322                    ; line_number = 235
2323                    ;  scales[servo] := temporary
2324                    ; index_fsr_first
2325 00e7 0849          movf    main__servo,w
2326                    ; # 0000 10ss (Write Position)
2327                    ; line_number = 238
2328                    ;  positions[servo] := temporary
2329                    ; index_fsr_first
2330                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2331                    ; CASE: true_size=1 && false_size=1
2332                    ; SUBCASE: Double test; true, then false
2333 00e8 1945          btfsc   main__select__12___byte, main__select__12___bit
2334 00e9 3e2f          addlw   scales
2335 00ea 1d45          btfss   main__select__12___byte, main__select__12___bit
2336 00eb 3e38          addlw   positions
2337                    ; code.delay=4294967295 back_code.delay=4294967295
2338 00ec 0084          movwf   __fsr
2339 00ed 0848          movf    main__temporary,w
2340 00ee 0080          movwf   __indf
2341                    ; <=bit_code_emit@symbol; sym=main__select__12 (data:00=>00 code:XX=>XX)
2342                    ; line_number = 233
2343                    ;  if command@2 done
2344 00ef 2906          goto    main__22
2345                    ; line_number = 239
2346                    ; case 2
2347   00f0 :   main__17:
2348                    ; # 0001 0xxx:
2349                    ; line_number = 241
2350                    ;  if command@2 start
2351 00000045 = main__select__13___byte equ main__command
2352 00000002 = main__select__13___bit equ 2
2353                    ; # 0001 01ss (Read Base High):
2354                    ; line_number = 243
2355                    ;  temporary := base_highs[servo]
2356 00f0 0849          movf    main__servo,w
2357                    ; # 0001 00ss (Read Base Low):
2358                    ; line_number = 246
2359                    ;  temporary := base_lows[servo]
2360                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2361                    ; CASE: true_size=1 && false_size=1
2362                    ; SUBCASE: Double test; true, then false
2363 00f1 1945          btfsc   main__select__13___byte, main__select__13___bit
2364 00f2 3e2b          addlw   base_highs
2365 00f3 1d45          btfss   main__select__13___byte, main__select__13___bit
2366 00f4 3e27          addlw   base_lows
2367                    ; code.delay=4294967295 back_code.delay=4294967295
2368 00f5 0084          movwf   __fsr
2369 00f6 0800          movf    __indf,w
2370 00f7 00c8          movwf   main__temporary
2371                    ; <=bit_code_emit@symbol; sym=main__select__13 (data:XX=>00 code:XX=>XX)
2372                    ; line_number = 241
2373                    ;  if command@2 done
2374                    ; line_number = 247
2375                    ; call byte_put(temporary)
2376 00f8 0848          movf    main__temporary,w
2377 00f9 22f6          call    byte_put
2378 00fa 2906          goto    main__22
2379                    ; line_number = 248
2380                    ; case 3
2381   00fb :   main__18:
2382                    ; # 0001 1xxx:
2383                    ; line_number = 250
2384                    ;  if command@2 start
2385 00000045 = main__select__14___byte equ main__command
2386 00000002 = main__select__14___bit equ 2
2387                    ; # 0001 11ss (Read Scale):
2388                    ; line_number = 252
2389                    ;  temporary := scales[servo]
2390 00fb 0849          movf    main__servo,w
2391                    ; # 0001 10ss (Read Position):
2392                    ; line_number = 255
2393                    ;  temporary := positions[servo]
2394                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2395                    ; CASE: true_size=1 && false_size=1
2396                    ; SUBCASE: Double test; true, then false
2397 00fc 1945          btfsc   main__select__14___byte, main__select__14___bit
2398 00fd 3e2f          addlw   scales
2399 00fe 1d45          btfss   main__select__14___byte, main__select__14___bit
2400 00ff 3e38          addlw   positions
2401                    ; code.delay=4294967295 back_code.delay=4294967295
2402 0100 0084          movwf   __fsr
2403 0101 0800          movf    __indf,w
2404 0102 00c8          movwf   main__temporary
2405                    ; <=bit_code_emit@symbol; sym=main__select__14 (data:XX=>00 code:XX=>XX)
2406                    ; line_number = 250
2407                    ;  if command@2 done
2408                    ; line_number = 256
2409                    ; call byte_put(temporary)
2410 0103 0848          movf    main__temporary,w
2411 0104 22f6          call    byte_put
2412 0105 2906          goto    main__22
2413                    ; line_number = 257
2414                    ; case 4, 5, 6, 7
2415   0106 :   main__19:
2416                    ; # 001x xxxx:
2417                    ; line_number = 259
2418                    ;  do_nothing
2419   0106 :   main__22:
2420                    ; switch end:(data:00=>?? code:XX=>XX)
2421                    ; line_number = 220
2422                    ;  switch (command >> 3) & 7 done
2423 0106 2a0f          goto    main__89
2424                    ; line_number = 260
2425                    ; case 1
2426   0107 :   main__84:
2427                    ; # 01hh hhhh (Set High):
2428                    ; line_number = 262
2429                    ;  position := positions[servo]
2430 0107 0849          movf    main__servo,w
2431 0108 3e38          addlw   positions
2432 0109 0084          movwf   __fsr
2433 010a 0800          movf    __indf,w
2434 010b 00ca          movwf   main__position
2435                    ; line_number = 263
2436                    ;  position := position & 0xf | (command << 2) & 0xf0
2437 00000055 = main__23 equ globals___0+53
2438 010c 300f          movlw   15
2439 010d 054a          andwf   main__position,w
2440 010e 00d5          movwf   main__23
2441 00000056 = main__24 equ globals___0+54
2442 010f 0d45          rlf     main__command,w
2443 0110 00d6          movwf   main__24
2444 0111 0d56          rlf     main__24,w
2445 0112 39f0          andlw   240
2446 0113 0455          iorwf   main__23,w
2447 0114 00ca          movwf   main__position
2448                    ; line_number = 264
2449                    ;  positions[servo] := position
2450                    ; index_fsr_first
2451 0115 0849          movf    main__servo,w
2452 0116 3e38          addlw   positions
2453 0117 0084          movwf   __fsr
2454 0118 084a          movf    main__position,w
2455 0119 0080          movwf   __indf
2456 011a 2a0f          goto    main__89
2457                    ; line_number = 265
2458                    ; case 2
2459   011b :   main__85:
2460                    ; # 10ll llll (Set Low):
2461                    ; line_number = 267
2462                    ;  position := positions[servo]
2463 011b 0849          movf    main__servo,w
2464 011c 3e38          addlw   positions
2465 011d 0084          movwf   __fsr
2466 011e 0800          movf    __indf,w
2467 011f 00ca          movwf   main__position
2468                    ; line_number = 268
2469                    ;  position := position & 0xf0 | (command >> 2) & 0xf
2470 00000055 = main__25 equ globals___0+53
2471 0120 30f0          movlw   240
2472 0121 054a          andwf   main__position,w
2473 0122 00d5          movwf   main__25
2474 00000056 = main__26 equ globals___0+54
2475 0123 0c45          rrf     main__command,w
2476 0124 00d6          movwf   main__26
2477 0125 0c56          rrf     main__26,w
2478 0126 390f          andlw   15
2479 0127 0455          iorwf   main__25,w
2480 0128 00ca          movwf   main__position
2481                    ; line_number = 269
2482                    ;  positions[servo] := position
2483                    ; index_fsr_first
2484 0129 0849          movf    main__servo,w
2485 012a 3e38          addlw   positions
2486 012b 0084          movwf   __fsr
2487 012c 084a          movf    main__position,w
2488 012d 0080          movwf   __indf
2489 012e 2a0f          goto    main__89
2490                    ; line_number = 270
2491                    ; case 3
2492   012f :   main__86:
2493                    ; # 11xx xxxx:
2494                    ; line_number = 272
2495                    ;  switch (command >> 3) & 7 start
2496 012f 3001          movlw   main__80>>8
2497 0130 008a          movwf   __pclath
2498 00000055 = main__81 equ globals___0+53
2499 0131 0c45          rrf     main__command,w
2500 0132 00d5          movwf   main__81
2501 0133 0cd5          rrf     main__81,f
2502 0134 0c55          rrf     main__81,w
2503 0135 3907          andlw   7
2504 0136 3e38          addlw   main__80
2505 0137 0082          movwf   __pcl
2506                    ; page_group 8
2507   0138 :   main__80:
2508 0138 2940          goto    main__74
2509 0139 2955          goto    main__75
2510 013a 2961          goto    main__76
2511 013b 2974          goto    main__77
2512 013c 29b4          goto    main__78
2513 013d 29b4          goto    main__78
2514 013e 29b4          goto    main__78
2515 013f 29b5          goto    main__79
2516                    ; line_number = 273
2517                    ; case 0
2518   0140 :   main__74:
2519                    ; # 1100 0ess (Set Enable and Position):
2520                    ; line_number = 275
2521                    ;  positions[servo] := byte_get()
2522                    ; index_temporary_first
2523 00000055 = main__27 equ globals___0+53
2524 00000056 = main__28 equ globals___0+54
2525 0140 0849          movf    main__servo,w
2526 0141 00d5          movwf   main__27
2527 0142 22eb          call    byte_get
2528 0143 00d6          movwf   main__28
2529 0144 0855          movf    main__27,w
2530 0145 3e38          addlw   positions
2531 0146 0084          movwf   __fsr
2532 0147 0856          movf    main__28,w
2533 0148 0080          movwf   __indf
2534                    ; line_number = 276
2535                    ;  temporary := mask_get(servo)
2536 0149 0849          movf    main__servo,w
2537 014a 22b2          call    mask_get
2538 014b 00c8          movwf   main__temporary
2539                    ; line_number = 277
2540                    ;  if command@2 start
2541 00000045 = main__select__29___byte equ main__command
2542 00000002 = main__select__29___bit equ 2
2543                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2544                    ; CASE: true_code_size > 1 && false_code_size > 1
2545                    ; true_code_size=2 false_code_size=3
2546 014c 1d45          btfss   main__select__29___byte, main__select__29___bit
2547 014d 2951          goto    main__30
2548                    ; line_number = 278
2549                    ; enables := enables | temporary
2550 014e 0848          movf    main__temporary,w
2551 014f 04bd          iorwf   enables,f
2552 0150 2954          goto    main__31
2553   0151 :   main__30:
2554                    ; line_number = 280
2555                    ; enables := enables & (temporary ^ 0xf)
2556 0151 300f          movlw   15
2557 0152 0648          xorwf   main__temporary,w
2558 0153 05bd          andwf   enables,f
2559   0154 :   main__31:
2560                    ; code.delay=4294967295 back_code.delay=4294967295
2561                    ; <=bit_code_emit@symbol; sym=main__select__29 (data:00=>00 code:XX=>XX)
2562                    ; line_number = 277
2563                    ;  if command@2 done
2564 0154 2a0f          goto    main__82
2565                    ; line_number = 281
2566                    ; case 1
2567   0155 :   main__75:
2568                    ; # 1100 1ess (Set Enable Flag Only):
2569                    ; line_number = 283
2570                    ;  temporary := mask_get(servo)
2571 0155 0849          movf    main__servo,w
2572 0156 22b2          call    mask_get
2573 0157 00c8          movwf   main__temporary
2574                    ; line_number = 284
2575                    ;  if command@2 start
2576 00000045 = main__select__32___byte equ main__command
2577 00000002 = main__select__32___bit equ 2
2578                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2579                    ; CASE: true_code_size > 1 && false_code_size > 1
2580                    ; true_code_size=2 false_code_size=3
2581 0158 1d45          btfss   main__select__32___byte, main__select__32___bit
2582 0159 295d          goto    main__33
2583                    ; line_number = 285
2584                    ; enables := enables | temporary
2585 015a 0848          movf    main__temporary,w
2586 015b 04bd          iorwf   enables,f
2587 015c 2960          goto    main__34
2588   015d :   main__33:
2589                    ; line_number = 287
2590                    ; enables := enables & (temporary ^ 0xf)
2591 015d 300f          movlw   15
2592 015e 0648          xorwf   main__temporary,w
2593 015f 05bd          andwf   enables,f
2594   0160 :   main__34:
2595                    ; code.delay=4294967295 back_code.delay=4294967295
2596                    ; <=bit_code_emit@symbol; sym=main__select__32 (data:00=>00 code:XX=>XX)
2597                    ; line_number = 284
2598                    ;  if command@2 done
2599 0160 2a0f          goto    main__82
2600                    ; line_number = 288
2601                    ; case 2
2602   0161 :   main__76:
2603                    ; # 1101 0xxx:
2604                    ; line_number = 290
2605                    ;  if command@2 start
2606 00000045 = main__select__37___byte equ main__command
2607 00000002 = main__select__37___bit equ 2
2608                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2609                    ; CASE: true_code_size > 1 && false_code_size > 1
2610                    ; true_code_size=10 false_code_size=4
2611 0161 1d45          btfss   main__select__37___byte, main__select__37___bit
2612 0162 296e          goto    main__38
2613                    ; # 1101 01ss (Read Enable):
2614                    ; line_number = 292
2615                    ;  temporary := 0
2616 0163 3000          movlw   0
2617 0164 00c8          movwf   main__temporary
2618                    ; line_number = 293
2619                    ;  if enables & mask_get(servo) != 0 start
2620                    ; Left minus Right
2621 00000055 = main__36 equ globals___0+53
2622 0165 083d          movf    enables,w
2623 0166 00d5          movwf   main__36
2624 0167 0849          movf    main__servo,w
2625 0168 22b2          call    mask_get
2626 0169 0555          andwf   main__36,w
2627                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2628                    ; CASE: true_code.size=0 && false_code.size=1
2629 016a 1d03          btfss   __z___byte, __z___bit
2630                    ; line_number = 294
2631                    ; temporary@0 := 1
2632 00000048 = main__select__35___byte equ main__temporary
2633 00000000 = main__select__35___bit equ 0
2634 016b 1448          bsf     main__select__35___byte, main__select__35___bit
2635                    ; Recombine size1 = 0 || size2 = 0
2636                    ; code.delay=4294967295 back_code.delay=4294967295
2637                    ; <=bit_code_emit@symbol; sym=__z (data:00=>00 code:XX=>XX)
2638                    ; line_number = 293
2639                    ;  if enables & mask_get(servo) != 0 done
2640                    ; line_number = 295
2641                    ; call byte_put(temporary)
2642 016c 0848          movf    main__temporary,w
2643 016d 2972          goto    main__39
2644   016e :   main__38:
2645                    ; # 1101 00ss (Read position):
2646                    ; line_number = 298
2647                    ;  call byte_put(positions[servo])
2648 016e 0849          movf    main__servo,w
2649 016f 3e38          addlw   positions
2650 0170 0084          movwf   __fsr
2651 0171 0800          movf    __indf,w
2652   0172 :   main__39:
2653                    ; code.delay=4294967295 back_code.delay=4294967295
2654 0172 22f6          call    byte_put
2655                    ; <=bit_code_emit@symbol; sym=main__select__37 (data:00=>00 code:XX=>XX)
2656                    ; line_number = 290
2657                    ;  if command@2 done
2658 0173 2a0f          goto    main__82
2659                    ; line_number = 299
2660                    ; case 3
2661   0174 :   main__77:
2662                    ; # 1101 1xxx:
2663                    ; line_number = 301
2664                    ;  if command@2 start
2665 00000045 = main__select__54___byte equ main__command
2666 00000002 = main__select__54___bit equ 2
2667                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2668                    ; CASE: true_code_size > 1 && false_code_size > 1
2669                    ; true_code_size=5 false_code_size=53
2670 0174 1d45          btfss   main__select__54___byte, main__select__54___bit
2671 0175 297c          goto    main__55
2672                    ; # 1101 11ss (Read Current Draw):
2673                    ; line_number = 303
2674                    ;  call byte_put(analogs[servo])
2675 0176 0849          movf    main__servo,w
2676 0177 3e23          addlw   analogs
2677 0178 0084          movwf   __fsr
2678 0179 0800          movf    __indf,w
2679 017a 22f6          call    byte_put
2680 017b 29b3          goto    main__56
2681   017c :   main__55:
2682                    ; # 1101 10xx:
2683                    ; line_number = 306
2684                    ;  if command@1 start
2685 00000045 = main__select__51___byte equ main__command
2686 00000001 = main__select__51___bit equ 1
2687                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2688                    ; CASE: true_code_size > 1 && false_code_size > 1
2689                    ; true_code_size=42 false_code_size=8
2690 017c 1cc5          btfss   main__select__51___byte, main__select__51___bit
2691 017d 29ab          goto    main__52
2692                    ; # 1101 101x:
2693                    ; line_number = 308
2694                    ;  if command@0 start
2695 00000045 = main__select__48___byte equ main__command
2696 00000000 = main__select__48___bit equ 0
2697                    ; # 1101 1011 (Set Address):
2698                    ; line_number = 310
2699                    ;  address := byte_get()
2700 017e 22eb          call    byte_get
2701                    ; # 1101 1010 (Save settings):
2702                    ; # Need magic OK byte first:
2703                    ; line_number = 314
2704                    ;  if byte_get() = 0xa5 start
2705                    ; Left minus Right
2706                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2707                    ; CASE: true.size=1 false.size>1; no GOTO
2708 017f 1c45          btfss   main__select__48___byte, main__select__48___bit
2709 0180 2983          goto    main__49
2710 0181 00b3          movwf   address
2711 0182 29aa          goto    main__50
2712   0183 :   main__49:
2713 0183 3e5b          addlw   91
2714                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2715                    ; CASE: true.size>1 false.size=1; no GOTO's
2716 0184 1d03          btfss   __z___byte, __z___bit
2717 0185 29a8          goto    main__46
2718                    ; #FIXME: Compiler problem kludge!!!
2719                    ; line_number = 316
2720                    ;  temporary := 0
2721 0186 3000          movlw   0
2722 0187 00c8          movwf   main__temporary
2723                    ; line_number = 317
2724                    ;  _eeadr := 0
2725 0188 3000          movlw   0
2726 0189 1683          bsf     __rp0___byte, __rp0___bit
2727 018a 009b          movwf   _eeadr
2728                    ; line_number = 318
2729                    ;  _gie := 0
2730 018b 1283          bcf     __rp0___byte, __rp0___bit
2731 018c 138b          bcf     _gie___byte, _gie___bit
2732                    ; line_number = 319
2733                    ;  loop_exactly 13 start
2734 00000055 = main__43 equ globals___0+53
2735 018d 300d          movlw   13
2736 018e 00d5          movwf   main__43
2737 018f 1683          bsf     __rp0___byte, __rp0___bit
2738   0190 :   main__44:
2739                    ; line_number = 320
2740                    ; _eedata := base_lows[_eeadr]
2741 0190 1683          bsf     __rp0___byte, __rp0___bit
2742 0191 081b          movf    _eeadr,w
2743 0192 3e27          addlw   base_lows
2744 0193 0084          movwf   __fsr
2745 0194 0800          movf    __indf,w
2746 0195 009a          movwf   _eedata
2747                    ; line_number = 321
2748                    ;  _wren := 1
2749 0196 151c          bsf     _wren___byte, _wren___bit
2750                    ; line_number = 322
2751                    ;  _eecon2 := 0x55
2752 0197 3055          movlw   85
2753 0198 009d          movwf   _eecon2
2754                    ; line_number = 323
2755                    ;  _eecon2 := 0xaa
2756 0199 30aa          movlw   170
2757 019a 009d          movwf   _eecon2
2758                    ; line_number = 324
2759                    ;  _wr := 1
2760 019b 149c          bsf     _wr___byte, _wr___bit
2761                    ; line_number = 325
2762                    ;  while _wr start
2763   019c :   main__45:
2764                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2765                    ; CASE: True.size=1 False.size=0
2766 019c 189c          btfsc   _wr___byte, _wr___bit
2767                    ; true=GOTO
2768 019d 299c          goto    main__45
2769                    ; code.delay=4294967295 back_code.delay=4294967295
2770                    ; <=bit_code_emit@symbol; sym=_wr (data:XX=>XX code:XX=>XX)
2771                    ; line_number = 325
2772                    ;  while _wr done
2773                    ; line_number = 327
2774                    ; _eeadr := _eeadr + 1
2775 019e 0a9b          incf    _eeadr,f
2776 019f 1283          bcf     __rp0___byte, __rp0___bit
2777                    ; line_number = 319
2778                    ;  loop_exactly 13 wrap-up
2779 01a0 0bd5          decfsz  main__43,f
2780 01a1 2990          goto    main__44
2781                    ; line_number = 319
2782                    ;  loop_exactly 13 done
2783                    ; line_number = 328
2784                    ; _gie := 1
2785 01a2 178b          bsf     _gie___byte, _gie___bit
2786                    ; line_number = 329
2787                    ;  _wren := 0
2788 01a3 1683          bsf     __rp0___byte, __rp0___bit
2789 01a4 111c          bcf     _wren___byte, _wren___bit
2790                    ; line_number = 330
2791                    ;  call byte_put(0xa5)
2792 01a5 30a5          movlw   165
2793 01a6 1283          bcf     __rp0___byte, __rp0___bit
2794 01a7 29a9          goto    main__47
2795   01a8 :   main__46:
2796                    ; line_number = 332
2797                    ; call byte_put(0x11)
2798 01a8 3011          movlw   17
2799   01a9 :   main__47:
2800                    ; code.delay=4294967295 back_code.delay=4294967295
2801 01a9 22f6          call    byte_put
2802                    ; <=bit_code_emit@symbol; sym=__z (data:00=>00 code:XX=>XX)
2803                    ; line_number = 314
2804                    ;  if byte_get() = 0xa5 done
2805   01aa :   main__50:
2806                    ; code.delay=4294967295 back_code.delay=4294967295
2807                    ; <=bit_code_emit@symbol; sym=main__select__48 (data:XX=>00 code:XX=>XX)
2808                    ; line_number = 308
2809                    ;  if command@0 done
2810                    ; Recombine code1_bit_states != code2_bit_states
2811 01aa 29b3          goto    main__53
2812   01ab :   main__52:
2813                    ; # 1101 100x:
2814                    ; line_number = 335
2815                    ;  if command@0 start
2816 00000045 = main__select__40___byte equ main__command
2817 00000000 = main__select__40___bit equ 0
2818                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2819                    ; CASE: true_code_size > 1 && false_code_size > 1
2820                    ; true_code_size=3 false_code_size=2
2821 01ab 1c45          btfss   main__select__40___byte, main__select__40___bit
2822 01ac 29b1          goto    main__41
2823                    ; # 1101 1001 (Set Enables):
2824                    ; line_number = 337
2825                    ;  enables := byte_get() & 0xf
2826 01ad 22eb          call    byte_get
2827 01ae 390f          andlw   15
2828 01af 00bd          movwf   enables
2829 01b0 29b3          goto    main__42
2830   01b1 :   main__41:
2831                    ; # 1101 1001 (Read Enables):
2832                    ; line_number = 340
2833                    ;  call byte_put(enables)
2834 01b1 083d          movf    enables,w
2835 01b2 22f6          call    byte_put
2836   01b3 :   main__42:
2837                    ; code.delay=4294967295 back_code.delay=4294967295
2838                    ; <=bit_code_emit@symbol; sym=main__select__40 (data:00=>00 code:XX=>XX)
2839                    ; line_number = 335
2840                    ;  if command@0 done
2841   01b3 :   main__53:
2842                    ; code.delay=4294967295 back_code.delay=4294967295
2843                    ; <=bit_code_emit@symbol; sym=main__select__51 (data:00=>00 code:XX=>XX)
2844                    ; line_number = 306
2845                    ;  if command@1 done
2846   01b3 :   main__56:
2847                    ; code.delay=4294967295 back_code.delay=4294967295
2848                    ; <=bit_code_emit@symbol; sym=main__select__54 (data:00=>00 code:XX=>XX)
2849                    ; line_number = 301
2850                    ;  if command@2 done
2851 01b3 2a0f          goto    main__82
2852                    ; line_number = 341
2853                    ; case 4, 5, 6
2854   01b4 :   main__78:
2855                    ; # 1110 0xxx, 1110 1xxx, 1111 0xxx:
2856                    ; line_number = 343
2857                    ;  do_nothing
2858 01b4 2a0f          goto    main__82
2859                    ; line_number = 344
2860                    ; case 7
2861   01b5 :   main__79:
2862                    ; # 1111 1xxx
2863                    ; line_number = 346
2864                    ;  switch command & 7 start
2865 01b5 3001          movlw   main__72>>8
2866 01b6 008a          movwf   __pclath
2867 01b7 3007          movlw   7
2868 01b8 0545          andwf   main__command,w
2869 01b9 3ebb          addlw   main__72
2870 01ba 0082          movwf   __pcl
2871                    ; page_group 8
2872   01bb :   main__72:
2873 01bb 29c3          goto    main__64
2874 01bc 29c6          goto    main__65
2875 01bd 29c9          goto    main__66
2876 01be 29ce          goto    main__67
2877 01bf 29d1          goto    main__68
2878 01c0 29de          goto    main__69
2879 01c1 29e1          goto    main__70
2880 01c2 29e6          goto    main__71
2881                    ; line_number = 347
2882                    ; case 0
2883   01c3 :   main__64:
2884                    ; This case body wants this bit set
2885 01c3 1683          bsf     __rp0___byte, __rp0___bit
2886                    ; line_number = 348
2887                    ; _osctune := _osctune - _osccal_lsb
2888 01c4 0390          decf    _osctune,f
2889 01c5 2a0f          goto    main__73
2890                    ; line_number = 349
2891                    ; case 1
2892   01c6 :   main__65:
2893                    ; This case body wants this bit set
2894 01c6 1683          bsf     __rp0___byte, __rp0___bit
2895                    ; line_number = 350
2896                    ; _osctune := _osctune + _osccal_lsb
2897 01c7 0a90          incf    _osctune,f
2898 01c8 2a0f          goto    main__73
2899                    ; line_number = 351
2900                    ; case 2
2901   01c9 :   main__66:
2902                    ; This case body wants this bit set
2903 01c9 1683          bsf     __rp0___byte, __rp0___bit
2904                    ; line_number = 352
2905                    ; call byte_put(_osctune)
2906 01ca 0810          movf    _osctune,w
2907 01cb 1283          bcf     __rp0___byte, __rp0___bit
2908 01cc 22f6          call    byte_put
2909 01cd 2a0f          goto    main__73
2910                    ; line_number = 353
2911                    ; case 3
2912   01ce :   main__67:
2913                    ; line_number = 354
2914                    ; call byte_put(0)
2915 01ce 3000          movlw   0
2916 01cf 22f6          call    byte_put
2917 01d0 2a0f          goto    main__73
2918                    ; line_number = 355
2919                    ; case 4
2920   01d1 :   main__68:
2921                    ; line_number = 356
2922                    ; temporary := 0
2923 01d1 3000          movlw   0
2924 01d2 00c8          movwf   main__temporary
2925                    ; line_number = 357
2926                    ;  if id_index < id.size start
2927 01d3 3028          movlw   40
2928 01d4 0247          subwf   main__id_index,w
2929                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
2930                    ; CASE: true.size=0 && false.size>1
2931                    ; bit_code_emit_helper1: body_code.size=4 true_test=false body_code.delay=0 (non-uniform delay)
2932 01d5 1803          btfsc   __c___byte, __c___bit
2933 01d6 29db          goto    main__57
2934                    ; line_number = 358
2935                    ; temporary := id[id_index]
2936 01d7 0847          movf    main__id_index,w
2937 01d8 22bd          call    id
2938 01d9 00c8          movwf   main__temporary
2939                    ; line_number = 359
2940                    ;  id_index := id_index + 1
2941 01da 0ac7          incf    main__id_index,f
2942   01db :   main__57:
2943                    ; Recombine size1 = 0 || size2 = 0
2944                    ; code.delay=4294967295 back_code.delay=4294967295
2945                    ; <=bit_code_emit@symbol; sym=__c (data:00=>00 code:XX=>XX)
2946                    ; line_number = 357
2947                    ;  if id_index < id.size done
2948                    ; line_number = 360
2949                    ; call byte_put(temporary)
2950 01db 0848          movf    main__temporary,w
2951 01dc 22f6          call    byte_put
2952 01dd 2a0f          goto    main__73
2953                    ; line_number = 361
2954                    ; case 5
2955   01de :   main__69:
2956                    ; line_number = 362
2957                    ; id_index := 0
2958 01de 3000          movlw   0
2959 01df 00c7          movwf   main__id_index
2960 01e0 2a0f          goto    main__73
2961                    ; line_number = 363
2962                    ; case 6
2963   01e1 :   main__70:
2964                    ; line_number = 364
2965                    ; call byte_put(glitch)
2966 01e1 0846          movf    main__glitch,w
2967 01e2 22f6          call    byte_put
2968                    ; line_number = 365
2969                    ;  glitch := 0
2970 01e3 3000          movlw   0
2971 01e4 00c6          movwf   main__glitch
2972 01e5 2a0f          goto    main__73
2973                    ; line_number = 366
2974                    ; case 7
2975   01e6 :   main__71:
2976                    ; line_number = 367
2977                    ; glitch := glitch + 1
2978 01e6 0ac6          incf    main__glitch,f
2979                    ; #enables := 0xf
2980                    ; line_number = 369
2981                    ;  command := byte_get()
2982 01e7 22eb          call    byte_get
2983 01e8 00c5          movwf   main__command
2984                    ; line_number = 370
2985                    ;  servo := command & 3
2986 01e9 3003          movlw   3
2987 01ea 0545          andwf   main__command,w
2988 01eb 00c9          movwf   main__servo
2989                    ; line_number = 371
2990                    ;  position := byte_get()
2991 01ec 22eb          call    byte_get
2992 01ed 00ca          movwf   main__position
2993                    ; line_number = 372
2994                    ;  temporary := address
2995 01ee 0833          movf    address,w
2996 01ef 00c8          movwf   main__temporary
2997                    ; line_number = 373
2998                    ;  if address = 0xff start
2999                    ; Left minus Right
3000 01f0 0a33          incf    address,w
3001                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3002                    ; CASE: true_code.size = 0 && false_code.size > 1
3003                    ; bit_code_emit_helper1: body_code.size=12 true_test=true body_code.delay=0 (non-uniform delay)
3004 01f1 1d03          btfss   __z___byte, __z___bit
3005 01f2 29ff          goto    main__61
3006                    ; line_number = 374
3007                    ; temporary := (analogs[3] >> 2) & 0x30 | (analogs[2] >> 4) & 0xc
3008 00000055 = main__58 equ globals___0+53
3009 00000056 = main__59 equ globals___0+54
3010 01f3 0826          movf    analogs+3,w
3011 01f4 00d6          movwf   main__59
3012 01f5 0cd6          rrf     main__59,f
3013 01f6 0c56          rrf     main__59,w
3014 01f7 3930          andlw   48
3015 01f8 00d5          movwf   main__58
3016 00000056 = main__60 equ globals___0+54
3017 01f9 0825          movf    analogs+2,w
3018 01fa 00d6          movwf   main__60
3019 01fb 0ed6          swapf   main__60,f
3020 01fc 390c          andlw   12
3021 01fd 0455          iorwf   main__58,w
3022 01fe 00c8          movwf   main__temporary
3023            
3024                    ; Recombine size1 = 0 || size2 = 0
3025   01ff :   main__61:
3026                    ; code.delay=4294967295 back_code.delay=4294967295
3027                    ; <=bit_code_emit@symbol; sym=__z (data:00=>00 code:XX=>XX)
3028                    ; line_number = 373
3029                    ;  if address = 0xff done
3030                    ; line_number = 376
3031                    ; if (command ^ temporary) & 0xfc = 0 start
3032                    ; Left minus Right
3033 01ff 0845          movf    main__command,w
3034 0200 0648          xorwf   main__temporary,w
3035 0201 39fc          andlw   252
3036                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3037                    ; CASE: true_code.size = 0 && false_code.size > 1
3038                    ; bit_code_emit_helper1: body_code.size=11 true_test=true body_code.delay=0 (non-uniform delay)
3039 0202 1d03          btfss   __z___byte, __z___bit
3040 0203 2a0f          goto    main__63
3041                    ; line_number = 377
3042                    ; positions[servo] := position
3043                    ; index_fsr_first
3044 0204 0849          movf    main__servo,w
3045 0205 3e38          addlw   positions
3046 0206 0084          movwf   __fsr
3047 0207 084a          movf    main__position,w
3048 0208 0080          movwf   __indf
3049                    ; line_number = 378
3050                    ;  enables := enables | mask_get(servo)
3051 00000055 = main__62 equ globals___0+53
3052 0209 083d          movf    enables,w
3053 020a 00d5          movwf   main__62
3054 020b 0849          movf    main__servo,w
3055 020c 22b2          call    mask_get
3056 020d 0455          iorwf   main__62,w
3057 020e 00bd          movwf   enables
3058            
3059            
3060                    ; Recombine size1 = 0 || size2 = 0
3061   020f :   main__63:
3062                    ; code.delay=4294967295 back_code.delay=4294967295
3063                    ; <=bit_code_emit@symbol; sym=__z (data:00=>00 code:XX=>XX)
3064                    ; line_number = 376
3065                    ; if (command ^ temporary) & 0xfc = 0 done
3066   020f :   main__73:
3067                    ; switch end:(data:00=>0? code:XX=>XX)
3068                    ; line_number = 346
3069                    ;  switch command & 7 done
3070   020f :   main__82:
3071                    ; switch end:(data:00=>?? code:XX=>XX)
3072                    ; line_number = 272
3073                    ;  switch (command >> 3) & 7 done
3074   020f :   main__89:
3075                    ; switch end:(data:00=>?? code:XX=>XX)
3076                    ; line_number = 217
3077                    ;  switch command >> 6 done
3078                    ; line_number = 214
3079                    ;  loop_forever wrap-up
3080                    ; Need to adjust code banks to match front of loop
3081 020f 1283          bcf     __rp0___byte, __rp0___bit
3082 0210 1303          bcf     __rp1___byte, __rp1___bit
3083 0211 28b7          goto    main__10
3084                    ; line_number = 214
3085                    ;  loop_forever done
3086                    ; delay after procedure statements=non-uniform
3087            
3088            
3089            
3090            
3091                    ; line_number = 381
3092                    ; procedure delay
3093   0212 :   delay:
3094                    ; arguments_none
3095                    ; line_number = 383
3096                    ;  returns_nothing
3097                    ; #exact_delay delay_instructions
3098            
3099                    ; # This procedure delays 1/3 of a bit.
3100            
3101                    ; line_number = 388
3102                    ;  local counter byte
3103 0000004b = delay__counter equ globals___0+43
3104                    ; line_number = 389
3105                    ;  local servo byte
3106 0000004c = delay__servo equ globals___0+44
3107                    ; line_number = 390
3108                    ;  local position_low byte
3109 0000004d = delay__position_low equ globals___0+45
3110                    ; line_number = 391
3111                    ;  local position_high byte
3112 0000004e = delay__position_high equ globals___0+46
3113                    ; line_number = 392
3114                    ;  local servo_low byte
3115 0000004f = delay__servo_low equ globals___0+47
3116                    ; line_number = 393
3117                    ;  local servo_high byte
3118 00000050 = delay__servo_high equ globals___0+48
3119                    ; line_number = 394
3120                    ;  local scale byte
3121 00000051 = delay__scale equ globals___0+49
3122                    ; line_number = 395
3123                    ;  local temporary byte
3124 00000052 = delay__temporary equ globals___0+50
3125            
3126                    ; before procedure statements delay=non-uniform, bit states=(data:00=>00 code:XX=>XX)
3127                    ; line_number = 397
3128                    ;  watch_dog_reset done
3129 0212 0064          clrwdt  
3130                    ; #debug_out := 1
3131                    ; line_number = 399
3132                    ;  counter := (counter + 1) & 0x7f
3133 0213 0a4b          incf    delay__counter,w
3134 0214 397f          andlw   127
3135 0215 00cb          movwf   delay__counter
3136                    ; line_number = 400
3137                    ;  servo := (counter >> 5) & 3
3138 00000057 = delay__1 equ globals___0+55
3139 0216 0e4b          swapf   delay__counter,w
3140 0217 00d7          movwf   delay__1
3141 0218 0c57          rrf     delay__1,w
3142 0219 3903          andlw   3
3143 021a 00cc          movwf   delay__servo
3144                    ; line_number = 401
3145                    ;  switch counter & 0x1f start
3146 021b 3002          movlw   delay__32>>8
3147 021c 008a          movwf   __pclath
3148 021d 301f          movlw   31
3149 021e 054b          andwf   delay__counter,w
3150 021f 3e21          addlw   delay__32
3151 0220 0082          movwf   __pcl
3152                    ; page_group 32
3153   0221 :   delay__32:
3154 0221 2a41          goto    delay__25
3155 0222 2a5d          goto    delay__26
3156 0223 2a5d          goto    delay__26
3157 0224 2a5d          goto    delay__26
3158 0225 2a5d          goto    delay__26
3159 0226 2a5d          goto    delay__26
3160 0227 2a5d          goto    delay__26
3161 0228 2a5d          goto    delay__26
3162 0229 2a5d          goto    delay__26
3163 022a 2a6e          goto    delay__27
3164 022b 2a8f          goto    delay__28
3165 022c 2a9d          goto    delay__29
3166 022d 2a9f          goto    delay__30
3167 022e 2aaf          goto    delay__31
3168 022f 2aaf          goto    delay__31
3169 0230 2aaf          goto    delay__31
3170 0231 2aaf          goto    delay__31
3171 0232 2aaf          goto    delay__31
3172 0233 2aaf          goto    delay__31
3173 0234 2aaf          goto    delay__31
3174 0235 2aaf          goto    delay__31
3175 0236 2aaf          goto    delay__31
3176 0237 2aaf          goto    delay__31
3177 0238 2aaf          goto    delay__31
3178 0239 2aaf          goto    delay__31
3179 023a 2aaf          goto    delay__31
3180 023b 2aaf          goto    delay__31
3181 023c 2aaf          goto    delay__31
3182 023d 2aaf          goto    delay__31
3183 023e 2aaf          goto    delay__31
3184 023f 2aaf          goto    delay__31
3185 0240 2aaf          goto    delay__31
3186                    ; line_number = 402
3187                    ; case 0
3188   0241 :   delay__25:
3189                    ; # Set up for multiply:
3190                    ; line_number = 404
3191                    ;  position_low := positions[servo]
3192 0241 084c          movf    delay__servo,w
3193 0242 3e38          addlw   positions
3194 0243 0084          movwf   __fsr
3195 0244 0800          movf    __indf,w
3196 0245 00cd          movwf   delay__position_low
3197                    ; line_number = 405
3198                    ;  servo_low := base_lows[servo]
3199 0246 084c          movf    delay__servo,w
3200 0247 3e27          addlw   base_lows
3201 0248 0084          movwf   __fsr
3202 0249 0800          movf    __indf,w
3203 024a 00cf          movwf   delay__servo_low
3204                    ; line_number = 406
3205                    ;  servo_high := base_highs[servo]
3206 024b 084c          movf    delay__servo,w
3207 024c 3e2b          addlw   base_highs
3208 024d 0084          movwf   __fsr
3209 024e 0800          movf    __indf,w
3210 024f 00d0          movwf   delay__servo_high
3211                    ; line_number = 407
3212                    ;  scale := scales[servo]
3213 0250 084c          movf    delay__servo,w
3214 0251 3e2f          addlw   scales
3215 0252 0084          movwf   __fsr
3216 0253 0800          movf    __indf,w
3217 0254 00d1          movwf   delay__scale
3218                    ; line_number = 408
3219                    ;  position_high := position_low >> 4
3220 0255 0e4d          swapf   delay__position_low,w
3221 0256 00ce          movwf   delay__position_high
3222 0257 300f          movlw   15
3223 0258 05ce          andwf   delay__position_high,f
3224                    ; line_number = 409
3225                    ;  position_low := position_low << 4
3226                    ; Assignment of variable to self (no code needed)
3227 0259 0ecd          swapf   delay__position_low,f
3228 025a 30f0          movlw   240
3229 025b 05cd          andwf   delay__position_low,f
3230 025c 2aaf          goto    delay__33
3231                    ; line_number = 410
3232                    ; case 1, 2, 3, 4, 5, 6, 7, 8
3233   025d :   delay__26:
3234                    ; # Do one multiply cycle:
3235                    ; line_number = 412
3236                    ;  position_low := position_low >> 1
3237                    ; Assignment of variable to self (no code needed)
3238 025d 0ccd          rrf     delay__position_low,f
3239 025e 13cd          bcf     delay__position_low, 7
3240                    ; line_number = 413
3241                    ;  if position_high@0 start
3242 0000004e = delay__select__3___byte equ delay__position_high
3243 00000000 = delay__select__3___bit equ 0
3244                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3245                    ; CASE: True.size=1 False.size=0
3246 025f 184e          btfsc   delay__select__3___byte, delay__select__3___bit
3247                    ; line_number = 414
3248                    ; position_low@7 := 1
3249 0000004d = delay__select__2___byte equ delay__position_low
3250 00000007 = delay__select__2___bit equ 7
3251 0260 17cd          bsf     delay__select__2___byte, delay__select__2___bit
3252                    ; Recombine size1 = 0 || size2 = 0
3253                    ; code.delay=4294967295 back_code.delay=4294967295
3254                    ; <=bit_code_emit@symbol; sym=delay__select__3 (data:00=>00 code:XX=>XX)
3255                    ; line_number = 413
3256                    ;  if position_high@0 done
3257                    ; line_number = 415
3258                    ; position_high := position_high >> 1
3259                    ; Assignment of variable to self (no code needed)
3260 0261 0cce          rrf     delay__position_high,f
3261 0262 13ce          bcf     delay__position_high, 7
3262                    ; line_number = 416
3263                    ;  if scale@7 start
3264 00000051 = delay__select__4___byte equ delay__scale
3265 00000007 = delay__select__4___bit equ 7
3266                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3267                    ; CASE: true_code.size = 0 && false_code.size > 1
3268                    ; bit_code_emit_helper1: body_code.size=6 true_test=true body_code.delay=0 (non-uniform delay)
3269 0263 1fd1          btfss   delay__select__4___byte, delay__select__4___bit
3270 0264 2a6b          goto    delay__5
3271                    ; line_number = 417
3272                    ; servo_high := servo_high + position_high
3273 0265 084e          movf    delay__position_high,w
3274 0266 07d0          addwf   delay__servo_high,f
3275                    ; line_number = 418
3276                    ;  servo_low := servo_low + position_low
3277 0267 084d          movf    delay__position_low,w
3278 0268 07cf          addwf   delay__servo_low,f
3279                    ; line_number = 419
3280                    ;  if _c start
3281                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3282                    ; CASE: True.size=1 False.size=0
3283 0269 1803          btfsc   _c___byte, _c___bit
3284                    ; line_number = 420
3285                    ; servo_high := servo_high + 1
3286 026a 0ad0          incf    delay__servo_high,f
3287                    ; Recombine size1 = 0 || size2 = 0
3288                    ; code.delay=4294967295 back_code.delay=4294967295
3289                    ; <=bit_code_emit@symbol; sym=_c (data:00=>00 code:XX=>XX)
3290                    ; line_number = 419
3291                    ;  if _c done
3292                    ; Recombine size1 = 0 || size2 = 0
3293   026b :   delay__5:
3294                    ; code.delay=4294967295 back_code.delay=4294967295
3295                    ; <=bit_code_emit@symbol; sym=delay__select__4 (data:00=>00 code:XX=>XX)
3296                    ; line_number = 416
3297                    ;  if scale@7 done
3298                    ; line_number = 421
3299                    ; scale := scale << 1
3300                    ; Assignment of variable to self (no code needed)
3301 026b 0dd1          rlf     delay__scale,f
3302 026c 1051          bcf     delay__scale, 0
3303 026d 2aaf          goto    delay__33
3304                    ; line_number = 422
3305                    ; case 9
3306   026e :   delay__27:
3307                    ; # Do final wrap-up on multiply:
3308                    ; line_number = 424
3309                    ;  servo_low := servo_low + fines[servo]
3310 026e 084c          movf    delay__servo,w
3311 026f 3e34          addlw   fines
3312 0270 0084          movwf   __fsr
3313 0271 0800          movf    __indf,w
3314 0272 07cf          addwf   delay__servo_low,f
3315                    ; line_number = 425
3316                    ;  if _c start
3317                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3318                    ; CASE: True.size=1 False.size=0
3319 0273 1803          btfsc   _c___byte, _c___bit
3320                    ; line_number = 426
3321                    ; servo_high := servo_high + 1
3322 0274 0ad0          incf    delay__servo_high,f
3323                    ; Recombine size1 = 0 || size2 = 0
3324                    ; code.delay=4294967295 back_code.delay=4294967295
3325                    ; <=bit_code_emit@symbol; sym=_c (data:00=>00 code:XX=>XX)
3326                    ; line_number = 425
3327                    ;  if _c done
3328                    ; #servo_high := 6
3329                    ; #servo_low := 0
3330                    ; line_number = 429
3331                    ;  _tmr1l := 0
3332 0275 3000          movlw   0
3333 0276 008e          movwf   _tmr1l
3334                    ; line_number = 430
3335                    ;  _tmr1h := servo_high ^ 0xff
3336 0277 30ff          movlw   255
3337 0278 0650          xorwf   delay__servo_high,w
3338 0279 008f          movwf   _tmr1h
3339                    ; line_number = 431
3340                    ;  _tmr1l := servo_low ^ 0xff
3341 027a 30ff          movlw   255
3342 027b 064f          xorwf   delay__servo_low,w
3343 027c 008e          movwf   _tmr1l
3344                    ; line_number = 432
3345                    ;  if servo@1 start
3346 0000004c = delay__select__16___byte equ delay__servo
3347 00000001 = delay__select__16___bit equ 1
3348                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3349                    ; CASE: true_code_size > 1 && false_code_size > 1
3350                    ; true_code_size=7 false_code_size=7
3351 027d 1ccc          btfss   delay__select__16___byte, delay__select__16___bit
3352 027e 2a87          goto    delay__17
3353                    ; line_number = 433
3354                    ; if servo@0 start
3355 0000004c = delay__select__13___byte equ delay__servo
3356 00000000 = delay__select__13___bit equ 0
3357                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3358                    ; CASE: true_code_size > 1 && false_code_size > 1
3359                    ; true_code_size=2 false_code_size=2
3360 027f 1c4c          btfss   delay__select__13___byte, delay__select__13___bit
3361 0280 2a84          goto    delay__14
3362                    ; line_number = 434
3363                    ; if enables@3 start
3364 0000003d = delay__select__12___byte equ enables
3365 00000003 = delay__select__12___bit equ 3
3366                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3367                    ; CASE: True.size=1 False.size=0
3368 0281 19bd          btfsc   delay__select__12___byte, delay__select__12___bit
3369                    ; #servo3 := 1
3370                    ; line_number = 436
3371                    ;  tris_servo3 := 1
3372 0282 1487          bsf     tris_servo3___byte, tris_servo3___bit
3373                    ; Recombine size1 = 0 || size2 = 0
3374                    ; code.delay=4294967295 back_code.delay=4294967295
3375                    ; <=bit_code_emit@symbol; sym=delay__select__12 (data:00=>01 code:XX=>XX)
3376                    ; line_number = 434
3377                    ; if enables@3 done
3378 0283 2a86          goto    delay__15
3379   0284 :   delay__14:
3380                    ; line_number = 438
3381                    ; if enables@2 start
3382 0000003d = delay__select__11___byte equ enables
3383 00000002 = delay__select__11___bit equ 2
3384                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3385                    ; CASE: True.size=1 False.size=0
3386 0284 193d          btfsc   delay__select__11___byte, delay__select__11___bit
3387                    ; #servo2 := 1
3388                    ; line_number = 440
3389                    ;  tris_servo2 := 1
3390 0285 1507          bsf     tris_servo2___byte, tris_servo2___bit
3391                    ; Recombine size1 = 0 || size2 = 0
3392                    ; code.delay=4294967295 back_code.delay=4294967295
3393                    ; <=bit_code_emit@symbol; sym=delay__select__11 (data:00=>01 code:XX=>XX)
3394                    ; line_number = 438
3395                    ; if enables@2 done
3396   0286 :   delay__15:
3397                    ; code.delay=4294967295 back_code.delay=4294967295
3398                    ; <=bit_code_emit@symbol; sym=delay__select__13 (data:00=>00 code:XX=>XX)
3399                    ; line_number = 433
3400                    ; if servo@0 done
3401 0286 2a8e          goto    delay__18
3402   0287 :   delay__17:
3403                    ; line_number = 442
3404                    ; if servo@0 start
3405 0000004c = delay__select__8___byte equ delay__servo
3406 00000000 = delay__select__8___bit equ 0
3407                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3408                    ; CASE: true_code_size > 1 && false_code_size > 1
3409                    ; true_code_size=2 false_code_size=2
3410 0287 1c4c          btfss   delay__select__8___byte, delay__select__8___bit
3411 0288 2a8c          goto    delay__9
3412                    ; line_number = 443
3413                    ; if enables@1 start
3414 0000003d = delay__select__7___byte equ enables
3415 00000001 = delay__select__7___bit equ 1
3416                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3417                    ; CASE: True.size=1 False.size=0
3418 0289 18bd          btfsc   delay__select__7___byte, delay__select__7___bit
3419                    ; #servo1 := 1
3420                    ; line_number = 445
3421                    ;  tris_servo1 := 1
3422 028a 1587          bsf     tris_servo1___byte, tris_servo1___bit
3423                    ; Recombine size1 = 0 || size2 = 0
3424                    ; code.delay=4294967295 back_code.delay=4294967295
3425                    ; <=bit_code_emit@symbol; sym=delay__select__7 (data:00=>01 code:XX=>XX)
3426                    ; line_number = 443
3427                    ; if enables@1 done
3428 028b 2a8e          goto    delay__10
3429   028c :   delay__9:
3430                    ; line_number = 447
3431                    ; if enables@0 start
3432 0000003d = delay__select__6___byte equ enables
3433 00000000 = delay__select__6___bit equ 0
3434                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3435                    ; CASE: True.size=1 False.size=0
3436 028c 183d          btfsc   delay__select__6___byte, delay__select__6___bit
3437                    ; #tris_servo0 := 1
3438                    ; line_number = 449
3439                    ;  servo0 := 1
3440 028d 1685          bsf     servo0___byte, servo0___bit
3441                    ; Recombine size1 = 0 || size2 = 0
3442                    ; code.delay=4294967295 back_code.delay=4294967295
3443                    ; <=bit_code_emit@symbol; sym=delay__select__6 (data:00=>00 code:XX=>XX)
3444                    ; line_number = 447
3445                    ; if enables@0 done
3446   028e :   delay__10:
3447                    ; code.delay=4294967295 back_code.delay=4294967295
3448                    ; <=bit_code_emit@symbol; sym=delay__select__8 (data:00=>00 code:XX=>XX)
3449                    ; line_number = 442
3450                    ; if servo@0 done
3451   028e :   delay__18:
3452                    ; code.delay=4294967295 back_code.delay=4294967295
3453                    ; <=bit_code_emit@symbol; sym=delay__select__16 (data:00=>00 code:XX=>XX)
3454                    ; line_number = 432
3455                    ;  if servo@1 done
3456 028e 2aaf          goto    delay__33
3457                    ; line_number = 450
3458                    ; case 10
3459   028f :   delay__28:
3460                    ; line_number = 451
3461                    ; if servo@1 start
3462 0000004c = delay__select__21___byte equ delay__servo
3463 00000001 = delay__select__21___bit equ 1
3464                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3465                    ; CASE: true_code_size > 1 && false_code_size > 1
3466                    ; true_code_size=4 false_code_size=4
3467 028f 1ccc          btfss   delay__select__21___byte, delay__select__21___bit
3468 0290 2a96          goto    delay__22
3469                    ; line_number = 452
3470                    ; if servo@0 start
3471 0000004c = delay__select__20___byte equ delay__servo
3472 00000000 = delay__select__20___bit equ 0
3473                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3474                    ; CASE: true_size=1 && false_size=1
3475                    ; SUBCASE: Double test; true, then false
3476 0291 184c          btfsc   delay__select__20___byte, delay__select__20___bit
3477                    ; line_number = 453
3478                    ; _adcon0 := 0x1c
3479 0292 301c          movlw   28
3480 0293 1c4c          btfss   delay__select__20___byte, delay__select__20___bit
3481                    ; line_number = 455
3482                    ; _adcon0 := 0x18
3483 0294 3018          movlw   24
3484                    ; code.delay=4294967295 back_code.delay=4294967295
3485 0295 2a9a          goto    delay__23
3486   0296 :   delay__22:
3487                    ; line_number = 457
3488                    ; if servo@0 start
3489 0000004c = delay__select__19___byte equ delay__servo
3490 00000000 = delay__select__19___bit equ 0
3491                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3492                    ; CASE: true_size=1 && false_size=1
3493                    ; SUBCASE: Double test; true, then false
3494 0296 184c          btfsc   delay__select__19___byte, delay__select__19___bit
3495                    ; line_number = 458
3496                    ; _adcon0 := 0x4
3497 0297 3004          movlw   4
3498 0298 1c4c          btfss   delay__select__19___byte, delay__select__19___bit
3499                    ; line_number = 460
3500                    ; _adcon0 := 0x10
3501 0299 3010          movlw   16
3502                    ; code.delay=4294967295 back_code.delay=4294967295
3503   029a :   delay__23:
3504                    ; code.delay=4294967295 back_code.delay=4294967295
3505 029a 009f          movwf   _adcon0
3506                    ; <=bit_code_emit@symbol; sym=delay__select__20 (data:00=>00 code:XX=>XX)
3507                    ; line_number = 452
3508                    ; if servo@0 done
3509                    ; <=bit_code_emit@symbol; sym=delay__select__19 (data:00=>00 code:XX=>XX)
3510                    ; line_number = 457
3511                    ; if servo@0 done
3512                    ; <=bit_code_emit@symbol; sym=delay__select__21 (data:00=>00 code:XX=>XX)
3513                    ; line_number = 451
3514                    ; if servo@1 done
3515                    ; line_number = 461
3516                    ; _adon := 1
3517 029b 141f          bsf     _adon___byte, _adon___bit
3518 029c 2aaf          goto    delay__33
3519                    ; line_number = 462
3520                    ; case 11
3521   029d :   delay__29:
3522                    ; line_number = 463
3523                    ; _go := 1
3524 029d 149f          bsf     _go___byte, _go___bit
3525 029e 2aaf          goto    delay__33
3526                    ; line_number = 464
3527                    ; case 12
3528   029f :   delay__30:
3529                    ; line_number = 465
3530                    ; analogs[servo] := _adresh
3531                    ; index_fsr_first
3532 029f 084c          movf    delay__servo,w
3533 02a0 3e23          addlw   analogs
3534 02a1 0084          movwf   __fsr
3535 02a2 081e          movf    _adresh,w
3536 02a3 0080          movwf   __indf
3537                    ; line_number = 466
3538                    ;  if !cal_mode start
3539                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3540                    ; CASE: true.size=0 && false.size>1
3541                    ; bit_code_emit_helper1: body_code.size=8 true_test=false body_code.delay=0 (non-uniform delay)
3542 02a4 1a05          btfsc   cal_mode___byte, cal_mode___bit
3543 02a5 2aae          goto    delay__24
3544                    ; line_number = 467
3545                    ; enables := 3
3546 02a6 3003          movlw   3
3547 02a7 00bd          movwf   enables
3548                    ; line_number = 468
3549                    ;  temporary := analogs[2]
3550 02a8 0825          movf    analogs+2,w
3551 02a9 00d2          movwf   delay__temporary
3552                    ; line_number = 469
3553                    ;  positions[0] := temporary
3554 02aa 0852          movf    delay__temporary,w
3555 02ab 00b8          movwf   positions
3556                    ; line_number = 470
3557                    ;  positions[1] := analogs[3]
3558 02ac 0826          movf    analogs+3,w
3559 02ad 00b9          movwf   positions+1
3560   02ae :   delay__24:
3561                    ; Recombine size1 = 0 || size2 = 0
3562                    ; code.delay=4294967295 back_code.delay=4294967295
3563                    ; <=bit_code_emit@symbol; sym=cal_mode (data:00=>00 code:XX=>XX)
3564                    ; line_number = 466
3565                    ;  if !cal_mode done
3566 02ae 2aaf          goto    delay__33
3567                    ; line_number = 471
3568                    ; case 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
3569   02af :   delay__31:
3570                    ; line_number = 473
3571                    ; do_nothing
3572   02af :   delay__33:
3573                    ; switch end:(data:00=>?? code:XX=>XX)
3574                    ; line_number = 401
3575                    ;  switch counter & 0x1f done
3576                    ; #debug_out := 0
3577            
3578            
3579                    ; delay after procedure statements=non-uniform
3580 02af 1283          bcf     __rp0___byte, __rp0___bit
3581 02b0 1303          bcf     __rp1___byte, __rp1___bit
3582                    ; Implied return
3583 02b1 3400          retlw   0
3584            
3585            
3586            
3587            
3588                    ; line_number = 477
3589                    ; procedure mask_get
3590   02b2 :   mask_get:
3591                    ; Last argument is sitting in W; save into argument variable
3592 02b2 00d3          movwf   mask_get__bit_number
3593                    ; delay=4294967295
3594                    ; line_number = 478
3595                    ; argument bit_number byte
3596 00000053 = mask_get__bit_number equ globals___0+51
3597                    ; line_number = 479
3598                    ;  returns byte
3599            
3600                    ; # This procedure will return the mask for {bit_number}.
3601            
3602                    ; before procedure statements delay=non-uniform, bit states=(data:00=>00 code:XX=>XX)
3603                    ; line_number = 483
3604                    ;  switch bit_number start
3605 02b3 3002          movlw   mask_get__5>>8
3606 02b4 008a          movwf   __pclath
3607 02b5 0853          movf    mask_get__bit_number,w
3608 02b6 3eb8          addlw   mask_get__5
3609 02b7 0082          movwf   __pcl
3610                    ; page_group 4
3611   02b8 :   mask_get__5:
3612                    ; line_number = 485
3613                    ; return 1 start
3614                    ; line_number = 485
3615 02b8 3401          retlw   1
3616                    ; line_number = 485
3617                    ; return 1 done
3618                    ; line_number = 487
3619                    ; return 2 start
3620                    ; line_number = 487
3621 02b9 3402          retlw   2
3622                    ; line_number = 487
3623                    ; return 2 done
3624                    ; line_number = 489
3625                    ; return 4 start
3626                    ; line_number = 489
3627 02ba 3404          retlw   4
3628                    ; line_number = 489
3629                    ; return 4 done
3630                    ; line_number = 491
3631                    ; return 8 start
3632                    ; line_number = 491
3633 02bb 3408          retlw   8
3634                    ; line_number = 491
3635                    ; return 8 done
3636            
3637            
3638   02bc :   mask_get__6:
3639                    ; switch end:(data:00=>00 code:XX=>XX)
3640                    ; line_number = 483
3641                    ;  switch bit_number done
3642                    ; delay after procedure statements=non-uniform
3643                    ; Exiting procedure with no return(s); fail with infinite loop
3644   02bc :   mask_get__7:
3645 02bc 2abc          goto    mask_get__7
3646            
3647            
3648            
3649            
3650                    ; line_number = 494
3651                    ; constant zero8 = "\0,0,0,0,0,0,0,0\"
3652                    ; zero8 = '\0,0,0,0,0,0,0,0\'
3653                    ; line_number = 495
3654                    ; constant module_name = "\7\Servo4I"
3655                    ; module_name = '\7\Servo4I'
3656                    ; line_number = 496
3657                    ; constant vendor_name = "\7\Gramson"
3658                    ; vendor_name = '\7\Gramson'
3659            
3660                    ; line_number = 498
3661                    ; string id = "\1,0,15,7,1,0,0,0\" ~ zero8 ~ zero8 ~ module_name ~ vendor_name start
3662                    ; id = '\1,0,15,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7\Servo4I\7\Gramson'
3663   02bd :   id:
3664                    ; Temporarily save index into FSR
3665 02bd 0084          movwf   __fsr
3666                    ; Initialize PCLATH to point to this code page
3667 02be 3002          movlw   id___base>>8
3668 02bf 008a          movwf   __pclath
3669                    ; Restore index from FSR
3670 02c0 0804          movf    __fsr,w
3671 02c1 3ec3          addlw   id___base
3672                    ; Index to the correct return value
3673 02c2 0082          movwf   __pcl
3674                    ; page_group 40
3675   02c3 :   id___base:
3676 02c3 3401          retlw   1
3677 02c4 3400          retlw   0
3678 02c5 340f          retlw   15
3679 02c6 3407          retlw   7
3680 02c7 3401          retlw   1
3681 02c8 3400          retlw   0
3682 02c9 3400          retlw   0
3683 02ca 3400          retlw   0
3684 02cb 3400          retlw   0
3685 02cc 3400          retlw   0
3686 02cd 3400          retlw   0
3687 02ce 3400          retlw   0
3688 02cf 3400          retlw   0
3689 02d0 3400          retlw   0
3690 02d1 3400          retlw   0
3691 02d2 3400          retlw   0
3692 02d3 3400          retlw   0
3693 02d4 3400          retlw   0
3694 02d5 3400          retlw   0
3695 02d6 3400          retlw   0
3696 02d7 3400          retlw   0
3697 02d8 3400          retlw   0
3698 02d9 3400          retlw   0
3699 02da 3400          retlw   0
3700 02db 3407          retlw   7
3701 02dc 3453          retlw   83
3702 02dd 3465          retlw   101
3703 02de 3472          retlw   114
3704 02df 3476          retlw   118
3705 02e0 346f          retlw   111
3706 02e1 3434          retlw   52
3707 02e2 3449          retlw   73
3708 02e3 3407          retlw   7
3709 02e4 3447          retlw   71
3710 02e5 3472          retlw   114
3711 02e6 3461          retlw   97
3712 02e7 346d          retlw   109
3713 02e8 3473          retlw   115
3714 02e9 346f          retlw   111
3715 02ea 346e          retlw   110
3716                    ; line_number = 498
3717                    ; string id = "\1,0,15,7,1,0,0,0\" ~ zero8 ~ zero8 ~ module_name ~ vendor_name start
3718            
3719                    ; Appending 4 delayed procedures to code bank 0
3720                    ; buffer = '_robobricks_pic16f688'
3721                    ; line_number = 17
3722                    ; procedure byte_get
3723   02eb :   byte_get:
3724                    ; arguments_none
3725                    ; line_number = 19
3726                    ;  returns byte
3727            
3728                    ; # This procedure will return the next byte from the UART.
3729                    ; # It continuously calls delay() while it is waiting.
3730            
3731                    ; before procedure statements delay=non-uniform, bit states=(data:00=>00 code:XX=>XX)
3732                    ; line_number = 24
3733                    ;  while !_rcif start
3734   02eb :   byte_get__1:
3735                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3736                    ; CASE: true.size=0 && false.size>1
3737                    ; bit_code_emit_helper1: body_code.size=4 true_test=false body_code.delay=0 (non-uniform delay)
3738 02eb 1a8c          btfsc   _rcif___byte, _rcif___bit
3739 02ec 2af1          goto    byte_get__2
3740                    ; line_number = 25
3741                    ; in_byte_get := 1
3742 02ed 14ef          bsf     in_byte_get___byte, in_byte_get___bit
3743                    ; line_number = 26
3744                    ;  call delay()
3745 02ee 2212          call    delay
3746                    ; line_number = 27
3747                    ;  in_byte_get := 0
3748 02ef 10ef          bcf     in_byte_get___byte, in_byte_get___bit
3749 02f0 2aeb          goto    byte_get__1
3750   02f1 :   byte_get__2:
3751                    ; Recombine size1 = 0 || size2 = 0
3752                    ; code.delay=4294967295 back_code.delay=4294967295
3753                    ; <=bit_code_emit@symbol; sym=_rcif (data:00=>00 code:XX=>XX)
3754                    ; line_number = 24
3755                    ;  while !_rcif done
3756                    ; line_number = 28
3757                    ; interrupt_pending := 0
3758                    ; line_number = 29
3759                    ;  command_previous := command_last
3760 02f1 083f          movf    command_last,w
3761 02f2 00be          movwf   command_previous
3762                    ; line_number = 30
3763                    ;  _rcif := 0
3764 02f3 128c          bcf     _rcif___byte, _rcif___bit
3765                    ; line_number = 31
3766                    ;  return _rcreg start
3767                    ; line_number = 31
3768 02f4 0814          movf    _rcreg,w
3769 02f5 0008          return  
3770                    ; line_number = 31
3771                    ;  return _rcreg done
3772            
3773            
3774                    ; delay after procedure statements=non-uniform
3775            
3776            
3777            
3778            
3779                    ; line_number = 34
3780                    ; procedure byte_put
3781   02f6 :   byte_put:
3782                    ; Last argument is sitting in W; save into argument variable
3783 02f6 00a0          movwf   byte_put__value
3784                    ; delay=4294967295
3785                    ; line_number = 35
3786                    ; argument value byte
3787 00000020 = byte_put__value equ globals___0
3788                    ; line_number = 36
3789                    ;  returns_nothing
3790            
3791                    ; # This procedure will output {value} to the UART.  If the UART is
3792                    ; # already busy transmitting a character, the {delay} procedure is
3793                    ; # repeatably called until {value} can be sent.
3794            
3795                    ; before procedure statements delay=non-uniform, bit states=(data:00=>00 code:XX=>XX)
3796                    ; line_number = 42
3797                    ;  while !_trmt start
3798   02f7 :   byte_put__1:
3799                    ; (after recombine) true_delay=non-uniform, false_delay=non-uniform
3800                    ; CASE: true.size=0 && false.size>1
3801                    ; bit_code_emit_helper1: body_code.size=2 true_test=false body_code.delay=0 (non-uniform delay)
3802 02f7 1896          btfsc   _trmt___byte, _trmt___bit
3803 02f8 2afb          goto    byte_put__2
3804                    ; line_number = 43
3805                    ; call delay()
3806 02f9 2212          call    delay
3807 02fa 2af7          goto    byte_put__1
3808   02fb :   byte_put__2:
3809                    ; Recombine size1 = 0 || size2 = 0
3810                    ; code.delay=4294967295 back_code.delay=4294967295
3811                    ; <=bit_code_emit@symbol; sym=_trmt (data:00=>00 code:XX=>XX)
3812                    ; line_number = 42
3813                    ;  while !_trmt done
3814                    ; line_number = 44
3815                    ; debug := 0
3816 02fb 1205          bcf     debug___byte, debug___bit
3817                    ; line_number = 45
3818                    ;  sent_previous := sent_last
3819 02fc 0841          movf    sent_last,w
3820 02fd 00c0          movwf   sent_previous
3821                    ; line_number = 46
3822                    ;  sent_last := value
3823 02fe 0820          movf    byte_put__value,w
3824 02ff 00c1          movwf   sent_last
3825                    ; line_number = 47
3826                    ;  _txreg := value
3827 0300 0820          movf    byte_put__value,w
3828 0301 0095          movwf   _txreg
3829            
3830            
3831                    ; delay after procedure statements=non-uniform
3832                    ; Implied return
3833 0302 3400          retlw   0
3834            
3835            
3836            
3837            
3838                    ; line_number = 50
3839                    ; procedure baud_rate_low
3840   0303 :   baud_rate_low:
3841                    ; Last argument is sitting in W; save into argument variable
3842 0303 00a1          movwf   baud_rate_low__baud_rate_index
3843                    ; delay=4294967295
3844                    ; line_number = 51
3845                    ; argument baud_rate_index byte
3846 00000021 = baud_rate_low__baud_rate_index equ globals___0+1
3847                    ; line_number = 52
3848                    ;  returns byte
3849            
3850                    ; #: This procedure will return the baud rate low byte for {baud_rate_index}.
3851            
3852                    ; before procedure statements delay=non-uniform, bit states=(data:00=>00 code:XX=>XX)
3853                    ; line_number = 56
3854                    ;  switch baud_rate_index start
3855 0304 3003          movlw   baud_rate_low__9>>8
3856 0305 008a          movwf   __pclath
3857 0306 0821          movf    baud_rate_low__baud_rate_index,w
3858 0307 3e09          addlw   baud_rate_low__9
3859 0308 0082          movwf   __pcl
3860                    ; page_group 8
3861   0309 :   baud_rate_low__9:
3862                    ; line_number = 58
3863                    ; return _eusart_2400_low start
3864                    ; line_number = 58
3865 0309 3440          retlw   64
3866                    ; line_number = 58
3867                    ; return _eusart_2400_low done
3868                    ; line_number = 60
3869                    ; return _eusart_4800_low start
3870                    ; line_number = 60
3871 030a 349f          retlw   159
3872                    ; line_number = 60
3873                    ; return _eusart_4800_low done
3874                    ; line_number = 62
3875                    ; return _eusart_9600_low start
3876                    ; line_number = 62
3877 030b 34cf          retlw   207
3878                    ; line_number = 62
3879                    ; return _eusart_9600_low done
3880                    ; line_number = 64
3881                    ; return _eusart_19200_low start
3882                    ; line_number = 64
3883 030c 3467          retlw   103
3884                    ; line_number = 64
3885                    ; return _eusart_19200_low done
3886                    ; line_number = 66
3887                    ; return _eusart_38400_low start
3888                    ; line_number = 66
3889 030d 3433          retlw   51
3890                    ; line_number = 66
3891                    ; return _eusart_38400_low done
3892                    ; line_number = 68
3893                    ; return _eusart_57600_low start
3894                    ; line_number = 68
3895 030e 3421          retlw   33
3896                    ; line_number = 68
3897                    ; return _eusart_57600_low done
3898                    ; line_number = 70
3899                    ; return _eusart_115200_low start
3900                    ; line_number = 70
3901 030f 3410          retlw   16
3902                    ; line_number = 70
3903                    ; return _eusart_115200_low done
3904                    ; line_number = 72
3905                    ; return _eusart_203400_low start
3906                    ; line_number = 72
3907 0310 3408          retlw   8
3908                    ; line_number = 72
3909                    ; return _eusart_203400_low done
3910            
3911            
3912   0311 :   baud_rate_low__10:
3913                    ; switch end:(data:00=>00 code:XX=>XX)
3914                    ; line_number = 56
3915                    ;  switch baud_rate_index done
3916                    ; delay after procedure statements=non-uniform
3917                    ; Exiting procedure with no return(s); fail with infinite loop
3918   0311 :   baud_rate_low__11:
3919 0311 2b11          goto    baud_rate_low__11
3920            
3921            
3922            
3923            
3924                    ; line_number = 75
3925                    ; procedure baud_rate_high
3926   0312 :   baud_rate_high:
3927                    ; Last argument is sitting in W; save into argument variable
3928 0312 00a2          movwf   baud_rate_high__baud_rate_index
3929                    ; delay=4294967295
3930                    ; line_number = 76
3931                    ; argument baud_rate_index byte
3932 00000022 = baud_rate_high__baud_rate_index equ globals___0+2
3933                    ; line_number = 77
3934                    ;  returns byte
3935            
3936                    ; # This procedure will return the baud rate high byte for
3937                    ; # {baud_rate_index}.
3938            
3939                    ; before procedure statements delay=non-uniform, bit states=(data:00=>00 code:XX=>XX)
3940                    ; line_number = 82
3941                    ;  switch baud_rate_index start
3942 0313 3003          movlw   baud_rate_high__9>>8
3943 0314 008a          movwf   __pclath
3944 0315 0822          movf    baud_rate_high__baud_rate_index,w
3945 0316 3e18          addlw   baud_rate_high__9
3946 0317 0082          movwf   __pcl
3947                    ; page_group 8
3948   0318 :   baud_rate_high__9:
3949                    ; line_number = 84
3950                    ; return _eusart_2400_high start
3951                    ; line_number = 84
3952 0318 3403          retlw   3
3953                    ; line_number = 84
3954                    ; return _eusart_2400_high done
3955                    ; line_number = 86
3956                    ; return _eusart_4800_high start
3957                    ; line_number = 86
3958 0319 3401          retlw   1
3959                    ; line_number = 86
3960                    ; return _eusart_4800_high done
3961                    ; line_number = 88
3962                    ; return _eusart_9600_high start
3963                    ; line_number = 88
3964 031a 3400          retlw   0
3965                    ; line_number = 88
3966                    ; return _eusart_9600_high done
3967                    ; line_number = 90
3968                    ; return _eusart_19200_high start
3969                    ; line_number = 90
3970 031b 3400          retlw   0
3971                    ; line_number = 90
3972                    ; return _eusart_19200_high done
3973                    ; line_number = 92
3974                    ; return _eusart_38400_high start
3975                    ; line_number = 92
3976 031c 3400          retlw   0
3977                    ; line_number = 92
3978                    ; return _eusart_38400_high done
3979                    ; line_number = 94
3980                    ; return _eusart_57600_high start
3981                    ; line_number = 94
3982 031d 3400          retlw   0
3983                    ; line_number = 94
3984                    ; return _eusart_57600_high done
3985                    ; line_number = 96
3986                    ; return _eusart_115200_high start
3987                    ; line_number = 96
3988 031e 3400          retlw   0
3989                    ; line_number = 96
3990                    ; return _eusart_115200_high done
3991                    ; line_number = 98
3992                    ; return _eusart_203400_high start
3993                    ; line_number = 98
3994 031f 3400          retlw   0
3995                    ; line_number = 98
3996                    ; return _eusart_203400_high done
3997            
3998   0320 :   baud_rate_high__10:
3999                    ; switch end:(data:00=>00 code:XX=>XX)
4000                    ; line_number = 82
4001                    ;  switch baud_rate_index done
4002                    ; delay after procedure statements=non-uniform
4003                    ; Exiting procedure with no return(s); fail with infinite loop
4004   0320 :   baud_rate_high__11:
4005 0320 2b20          goto    baud_rate_high__11
4006            
4007            
4008            
4009            
4010                    ; Configuration bits
4011                    ; fill = 0x3000
4012                    ; fcmen = off (0x0)
4013                    ; ieso = off (0x0)
4014                    ; boden = off (0x0)
4015                    ; cpd = off (0x80)
4016                    ; cp = off (0x40)
4017                    ; mclre = off (0x20)
4018                    ; pwrte = off (0x10)
4019                    ; wdte = off (0x0)
4020                    ; fosc = int_no_clk (0x4)
4021                    ; 12532 = 0x30f4
4022   30f4 =           __config 12532
4023                    ; Define start addresses for data regions
4024                    ; Region="shared___globals" Address=112" Size=16 Bytes=0 Bits=0 Available=16
4025                    ; Region="globals___0" Address=32" Size=80 Bytes=56 Bits=2 Available=23
4026                    ; Region="globals___1" Address=160" Size=80 Bytes=0 Bits=0 Available=80
4027                    ; Region="globals___2" Address=288" Size=80 Bytes=0 Bits=0 Available=80
4028                    ; Region="globals___3" Address=416" Size=80 Bytes=0 Bits=0 Available=80
4029                    end
