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