Project

General

Profile

Statistics
| Revision:

root / trunk / code / behaviors / formation_control / Circle / Code / encoder_test / encoder_test.lss @ 1507

History | View | Annotate | Download (233 KB)

1

    
2
encoder_test.elf:     file format elf32-avr
3

    
4
Sections:
5
Idx Name          Size      VMA       LMA       File off  Algn
6
  0 .data         0000036e  00800100  00003040  000030d4  2**0
7
                  CONTENTS, ALLOC, LOAD, DATA
8
  1 .text         00003040  00000000  00000000  00000094  2**1
9
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
10
  2 .bss          00000160  0080046e  0080046e  00003442  2**0
11
                  ALLOC
12
  3 .stab         000068a0  00000000  00000000  00003444  2**2
13
                  CONTENTS, READONLY, DEBUGGING
14
  4 .stabstr      00002668  00000000  00000000  00009ce4  2**0
15
                  CONTENTS, READONLY, DEBUGGING
16

    
17
Disassembly of section .text:
18

    
19
00000000 <__vectors>:
20
       0:	0c 94 c7 00 	jmp	0x18e	; 0x18e <__ctors_end>
21
       4:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
22
       8:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
23
       c:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
24
      10:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
25
      14:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
26
      18:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
27
      1c:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
28
      20:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
29
      24:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
30
      28:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
31
      2c:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
32
      30:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
33
      34:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
34
      38:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
35
      3c:	0c 94 cf 0c 	jmp	0x199e	; 0x199e <__vector_15>
36
      40:	0c 94 86 0c 	jmp	0x190c	; 0x190c <__vector_16>
37
      44:	0c 94 5b 12 	jmp	0x24b6	; 0x24b6 <__vector_17>
38
      48:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
39
      4c:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
40
      50:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
41
      54:	0c 94 d1 13 	jmp	0x27a2	; 0x27a2 <__vector_21>
42
      58:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
43
      5c:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
44
      60:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
45
      64:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
46
      68:	0c 94 d1 12 	jmp	0x25a2	; 0x25a2 <__vector_26>
47
      6c:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
48
      70:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
49
      74:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
50
      78:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
51
      7c:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
52
      80:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
53
      84:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
54
      88:	0c 94 e6 00 	jmp	0x1cc	; 0x1cc <__bad_interrupt>
55

    
56
0000008c <__c.1778>:
57
      8c:	6e 61 6e 00                                         nan.
58

    
59
00000090 <__c.1776>:
60
      90:	69 6e 66 00 00 40 7a 10 f3 5a 00 a0 72 4e 18 09     inf..@z..Z..rN..
61
      a0:	00 10 a5 d4 e8 00 00 e8 76 48 17 00 00 e4 0b 54     ........vH.....T
62
      b0:	02 00 00 ca 9a 3b 00 00 00 e1 f5 05 00 00 80 96     .....;..........
63
      c0:	98 00 00 00 40 42 0f 00 00 00 a0 86 01 00 00 00     ....@B..........
64
      d0:	10 27 00 00 00 00 e8 03 00 00 00 00 64 00 00 00     .'..........d...
65
      e0:	00 00 0a 00 00 00 00 00 01 00 00 00 00 00 2c 76     ..............,v
66
      f0:	d8 88 dc 67 4f 08 23 df c1 df ae 59 e1 b1 b7 96     ...gO.#....Y....
67
     100:	e5 e3 e4 53 c6 3a e6 51 99 76 96 e8 e6 c2 84 26     ...S.:.Q.v.....&
68
     110:	eb 89 8c 9b 62 ed 40 7c 6f fc ef bc 9c 9f 40 f2     ....b.@|o.....@.
69
     120:	ba a5 6f a5 f4 90 05 5a 2a f7 5c 93 6b 6c f9 67     ..o....Z*.\.kl.g
70
     130:	6d c1 1b fc e0 e4 0d 47 fe f5 20 e6 b5 00 d0 ed     m......G.. .....
71
     140:	90 2e 03 00 94 35 77 05 00 80 84 1e 08 00 00 20     .....5w........ 
72
     150:	4e 0a 00 00 00 c8 0c 33 33 33 33 0f 98 6e 12 83     N......3333..n..
73
     160:	11 41 ef 8d 21 14 89 3b e6 55 16 cf fe e6 db 18     .A..!..;.U......
74
     170:	d1 84 4b 38 1b f7 7c 1d 90 1d a4 bb e4 24 20 32     ..K8..|......$ 2
75
     180:	84 72 5e 22 81 00 c9 f1 24 ec a1 e5 3d 27           .r^"....$...='
76

    
77
0000018e <__ctors_end>:
78
     18e:	11 24       	eor	r1, r1
79
     190:	1f be       	out	0x3f, r1	; 63
80
     192:	cf ef       	ldi	r28, 0xFF	; 255
81
     194:	d0 e1       	ldi	r29, 0x10	; 16
82
     196:	de bf       	out	0x3e, r29	; 62
83
     198:	cd bf       	out	0x3d, r28	; 61
84

    
85
0000019a <__do_copy_data>:
86
     19a:	14 e0       	ldi	r17, 0x04	; 4
87
     19c:	a0 e0       	ldi	r26, 0x00	; 0
88
     19e:	b1 e0       	ldi	r27, 0x01	; 1
89
     1a0:	e0 e4       	ldi	r30, 0x40	; 64
90
     1a2:	f0 e3       	ldi	r31, 0x30	; 48
91
     1a4:	00 e0       	ldi	r16, 0x00	; 0
92
     1a6:	0b bf       	out	0x3b, r16	; 59
93
     1a8:	02 c0       	rjmp	.+4      	; 0x1ae <__do_copy_data+0x14>
94
     1aa:	07 90       	elpm	r0, Z+
95
     1ac:	0d 92       	st	X+, r0
96
     1ae:	ae 36       	cpi	r26, 0x6E	; 110
97
     1b0:	b1 07       	cpc	r27, r17
98
     1b2:	d9 f7       	brne	.-10     	; 0x1aa <__do_copy_data+0x10>
99

    
100
000001b4 <__do_clear_bss>:
101
     1b4:	15 e0       	ldi	r17, 0x05	; 5
102
     1b6:	ae e6       	ldi	r26, 0x6E	; 110
103
     1b8:	b4 e0       	ldi	r27, 0x04	; 4
104
     1ba:	01 c0       	rjmp	.+2      	; 0x1be <.do_clear_bss_start>
105

    
106
000001bc <.do_clear_bss_loop>:
107
     1bc:	1d 92       	st	X+, r1
108

    
109
000001be <.do_clear_bss_start>:
110
     1be:	ae 3c       	cpi	r26, 0xCE	; 206
111
     1c0:	b1 07       	cpc	r27, r17
112
     1c2:	e1 f7       	brne	.-8      	; 0x1bc <.do_clear_bss_loop>
113
     1c4:	0e 94 e8 00 	call	0x1d0	; 0x1d0 <main>
114
     1c8:	0c 94 1e 18 	jmp	0x303c	; 0x303c <_exit>
115

    
116
000001cc <__bad_interrupt>:
117
     1cc:	0c 94 00 00 	jmp	0	; 0x0 <__vectors>
118

    
119
000001d0 <main>:
120
     1d0:	ef 92       	push	r14
121
     1d2:	ff 92       	push	r15
122
     1d4:	0f 93       	push	r16
123
     1d6:	1f 93       	push	r17
124
     1d8:	8f ef       	ldi	r24, 0xFF	; 255
125
     1da:	93 e0       	ldi	r25, 0x03	; 3
126
     1dc:	0e 94 97 07 	call	0xf2e	; 0xf2e <dragonfly_init>
127
     1e0:	0e 94 01 11 	call	0x2202	; 0x2202 <usb_init>
128
     1e4:	0e 94 ec 09 	call	0x13d8	; 0x13d8 <encoders_init>
129
     1e8:	0e 94 22 07 	call	0xe44	; 0xe44 <button1_read>
130
     1ec:	89 2b       	or	r24, r25
131
     1ee:	41 f0       	breq	.+16     	; 0x200 <main+0x30>
132
     1f0:	80 e0       	ldi	r24, 0x00	; 0
133
     1f2:	0e 94 80 08 	call	0x1100	; 0x1100 <encoder_rst_dx>
134
     1f6:	81 e0       	ldi	r24, 0x01	; 1
135
     1f8:	0e 94 80 08 	call	0x1100	; 0x1100 <encoder_rst_dx>
136
     1fc:	0e 94 93 08 	call	0x1126	; 0x1126 <encoder_rst_tc>
137
     200:	80 e0       	ldi	r24, 0x00	; 0
138
     202:	0e 94 5e 08 	call	0x10bc	; 0x10bc <encoder_read>
139
     206:	8c 01       	movw	r16, r24
140
     208:	81 e0       	ldi	r24, 0x01	; 1
141
     20a:	0e 94 5e 08 	call	0x10bc	; 0x10bc <encoder_read>
142
     20e:	7c 01       	movw	r14, r24
143
     210:	80 e0       	ldi	r24, 0x00	; 0
144
     212:	91 e0       	ldi	r25, 0x01	; 1
145
     214:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
146
     218:	c8 01       	movw	r24, r16
147
     21a:	0e 94 72 11 	call	0x22e4	; 0x22e4 <usb_puti>
148
     21e:	8f e1       	ldi	r24, 0x1F	; 31
149
     220:	91 e0       	ldi	r25, 0x01	; 1
150
     222:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
151
     226:	c7 01       	movw	r24, r14
152
     228:	0e 94 72 11 	call	0x22e4	; 0x22e4 <usb_puti>
153
     22c:	82 e2       	ldi	r24, 0x22	; 34
154
     22e:	91 e0       	ldi	r25, 0x01	; 1
155
     230:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
156
     234:	80 e0       	ldi	r24, 0x00	; 0
157
     236:	0e 94 7e 0b 	call	0x16fc	; 0x16fc <encoder_get_x>
158
     23a:	8c 01       	movw	r16, r24
159
     23c:	81 e0       	ldi	r24, 0x01	; 1
160
     23e:	0e 94 7e 0b 	call	0x16fc	; 0x16fc <encoder_get_x>
161
     242:	7c 01       	movw	r14, r24
162
     244:	85 e2       	ldi	r24, 0x25	; 37
163
     246:	91 e0       	ldi	r25, 0x01	; 1
164
     248:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
165
     24c:	c8 01       	movw	r24, r16
166
     24e:	0e 94 72 11 	call	0x22e4	; 0x22e4 <usb_puti>
167
     252:	8f e1       	ldi	r24, 0x1F	; 31
168
     254:	91 e0       	ldi	r25, 0x01	; 1
169
     256:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
170
     25a:	c7 01       	movw	r24, r14
171
     25c:	0e 94 72 11 	call	0x22e4	; 0x22e4 <usb_puti>
172
     260:	82 e2       	ldi	r24, 0x22	; 34
173
     262:	91 e0       	ldi	r25, 0x01	; 1
174
     264:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
175
     268:	80 e0       	ldi	r24, 0x00	; 0
176
     26a:	0e 94 c5 09 	call	0x138a	; 0x138a <encoder_get_v>
177
     26e:	8c 01       	movw	r16, r24
178
     270:	81 e0       	ldi	r24, 0x01	; 1
179
     272:	0e 94 c5 09 	call	0x138a	; 0x138a <encoder_get_v>
180
     276:	7c 01       	movw	r14, r24
181
     278:	84 e4       	ldi	r24, 0x44	; 68
182
     27a:	91 e0       	ldi	r25, 0x01	; 1
183
     27c:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
184
     280:	c8 01       	movw	r24, r16
185
     282:	0e 94 72 11 	call	0x22e4	; 0x22e4 <usb_puti>
186
     286:	8f e1       	ldi	r24, 0x1F	; 31
187
     288:	91 e0       	ldi	r25, 0x01	; 1
188
     28a:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
189
     28e:	c7 01       	movw	r24, r14
190
     290:	0e 94 72 11 	call	0x22e4	; 0x22e4 <usb_puti>
191
     294:	82 e2       	ldi	r24, 0x22	; 34
192
     296:	91 e0       	ldi	r25, 0x01	; 1
193
     298:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
194
     29c:	0e 94 8e 08 	call	0x111c	; 0x111c <encoder_get_tc>
195
     2a0:	8c 01       	movw	r16, r24
196
     2a2:	8d e5       	ldi	r24, 0x5D	; 93
197
     2a4:	91 e0       	ldi	r25, 0x01	; 1
198
     2a6:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
199
     2aa:	c8 01       	movw	r24, r16
200
     2ac:	0e 94 72 11 	call	0x22e4	; 0x22e4 <usb_puti>
201
     2b0:	8a e6       	ldi	r24, 0x6A	; 106
202
     2b2:	91 e0       	ldi	r25, 0x01	; 1
203
     2b4:	0e 94 66 11 	call	0x22cc	; 0x22cc <usb_puts>
204
     2b8:	84 ef       	ldi	r24, 0xF4	; 244
205
     2ba:	91 e0       	ldi	r25, 0x01	; 1
206
     2bc:	0e 94 9b 12 	call	0x2536	; 0x2536 <delay_ms>
207
     2c0:	93 cf       	rjmp	.-218    	; 0x1e8 <main+0x18>
208

    
209
000002c2 <vfprintf>:
210
     2c2:	a1 e1       	ldi	r26, 0x11	; 17
211
     2c4:	b0 e0       	ldi	r27, 0x00	; 0
212
     2c6:	e7 e6       	ldi	r30, 0x67	; 103
213
     2c8:	f1 e0       	ldi	r31, 0x01	; 1
214
     2ca:	0c 94 b1 17 	jmp	0x2f62	; 0x2f62 <__prologue_saves__>
215
     2ce:	3c 01       	movw	r6, r24
216
     2d0:	7f 87       	std	Y+15, r23	; 0x0f
217
     2d2:	6e 87       	std	Y+14, r22	; 0x0e
218
     2d4:	6a 01       	movw	r12, r20
219
     2d6:	fc 01       	movw	r30, r24
220
     2d8:	17 82       	std	Z+7, r1	; 0x07
221
     2da:	16 82       	std	Z+6, r1	; 0x06
222
     2dc:	83 81       	ldd	r24, Z+3	; 0x03
223
     2de:	81 fd       	sbrc	r24, 1
224
     2e0:	03 c0       	rjmp	.+6      	; 0x2e8 <vfprintf+0x26>
225
     2e2:	6f ef       	ldi	r22, 0xFF	; 255
226
     2e4:	7f ef       	ldi	r23, 0xFF	; 255
227
     2e6:	71 c3       	rjmp	.+1762   	; 0x9ca <vfprintf+0x708>
228
     2e8:	9e 01       	movw	r18, r28
229
     2ea:	2f 5f       	subi	r18, 0xFF	; 255
230
     2ec:	3f 4f       	sbci	r19, 0xFF	; 255
231
     2ee:	39 8b       	std	Y+17, r19	; 0x11
232
     2f0:	28 8b       	std	Y+16, r18	; 0x10
233
     2f2:	f3 01       	movw	r30, r6
234
     2f4:	23 81       	ldd	r18, Z+3	; 0x03
235
     2f6:	ee 85       	ldd	r30, Y+14	; 0x0e
236
     2f8:	ff 85       	ldd	r31, Y+15	; 0x0f
237
     2fa:	23 fd       	sbrc	r18, 3
238
     2fc:	85 91       	lpm	r24, Z+
239
     2fe:	23 ff       	sbrs	r18, 3
240
     300:	81 91       	ld	r24, Z+
241
     302:	ff 87       	std	Y+15, r31	; 0x0f
242
     304:	ee 87       	std	Y+14, r30	; 0x0e
243
     306:	88 23       	and	r24, r24
244
     308:	09 f4       	brne	.+2      	; 0x30c <vfprintf+0x4a>
245
     30a:	5c c3       	rjmp	.+1720   	; 0x9c4 <vfprintf+0x702>
246
     30c:	85 32       	cpi	r24, 0x25	; 37
247
     30e:	51 f4       	brne	.+20     	; 0x324 <vfprintf+0x62>
248
     310:	ee 85       	ldd	r30, Y+14	; 0x0e
249
     312:	ff 85       	ldd	r31, Y+15	; 0x0f
250
     314:	23 fd       	sbrc	r18, 3
251
     316:	85 91       	lpm	r24, Z+
252
     318:	23 ff       	sbrs	r18, 3
253
     31a:	81 91       	ld	r24, Z+
254
     31c:	ff 87       	std	Y+15, r31	; 0x0f
255
     31e:	ee 87       	std	Y+14, r30	; 0x0e
256
     320:	85 32       	cpi	r24, 0x25	; 37
257
     322:	29 f4       	brne	.+10     	; 0x32e <vfprintf+0x6c>
258
     324:	90 e0       	ldi	r25, 0x00	; 0
259
     326:	b3 01       	movw	r22, r6
260
     328:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
261
     32c:	e2 cf       	rjmp	.-60     	; 0x2f2 <vfprintf+0x30>
262
     32e:	98 2f       	mov	r25, r24
263
     330:	10 e0       	ldi	r17, 0x00	; 0
264
     332:	88 24       	eor	r8, r8
265
     334:	99 24       	eor	r9, r9
266
     336:	10 32       	cpi	r17, 0x20	; 32
267
     338:	b0 f4       	brcc	.+44     	; 0x366 <vfprintf+0xa4>
268
     33a:	9b 32       	cpi	r25, 0x2B	; 43
269
     33c:	69 f0       	breq	.+26     	; 0x358 <vfprintf+0x96>
270
     33e:	9c 32       	cpi	r25, 0x2C	; 44
271
     340:	28 f4       	brcc	.+10     	; 0x34c <vfprintf+0x8a>
272
     342:	90 32       	cpi	r25, 0x20	; 32
273
     344:	51 f0       	breq	.+20     	; 0x35a <vfprintf+0x98>
274
     346:	93 32       	cpi	r25, 0x23	; 35
275
     348:	71 f4       	brne	.+28     	; 0x366 <vfprintf+0xa4>
276
     34a:	0b c0       	rjmp	.+22     	; 0x362 <vfprintf+0xa0>
277
     34c:	9d 32       	cpi	r25, 0x2D	; 45
278
     34e:	39 f0       	breq	.+14     	; 0x35e <vfprintf+0x9c>
279
     350:	90 33       	cpi	r25, 0x30	; 48
280
     352:	49 f4       	brne	.+18     	; 0x366 <vfprintf+0xa4>
281
     354:	11 60       	ori	r17, 0x01	; 1
282
     356:	28 c0       	rjmp	.+80     	; 0x3a8 <vfprintf+0xe6>
283
     358:	12 60       	ori	r17, 0x02	; 2
284
     35a:	14 60       	ori	r17, 0x04	; 4
285
     35c:	25 c0       	rjmp	.+74     	; 0x3a8 <vfprintf+0xe6>
286
     35e:	18 60       	ori	r17, 0x08	; 8
287
     360:	23 c0       	rjmp	.+70     	; 0x3a8 <vfprintf+0xe6>
288
     362:	10 61       	ori	r17, 0x10	; 16
289
     364:	21 c0       	rjmp	.+66     	; 0x3a8 <vfprintf+0xe6>
290
     366:	17 fd       	sbrc	r17, 7
291
     368:	2a c0       	rjmp	.+84     	; 0x3be <vfprintf+0xfc>
292
     36a:	89 2f       	mov	r24, r25
293
     36c:	80 53       	subi	r24, 0x30	; 48
294
     36e:	8a 30       	cpi	r24, 0x0A	; 10
295
     370:	78 f4       	brcc	.+30     	; 0x390 <vfprintf+0xce>
296
     372:	16 ff       	sbrs	r17, 6
297
     374:	06 c0       	rjmp	.+12     	; 0x382 <vfprintf+0xc0>
298
     376:	fa e0       	ldi	r31, 0x0A	; 10
299
     378:	9f 9e       	mul	r9, r31
300
     37a:	90 2c       	mov	r9, r0
301
     37c:	11 24       	eor	r1, r1
302
     37e:	98 0e       	add	r9, r24
303
     380:	13 c0       	rjmp	.+38     	; 0x3a8 <vfprintf+0xe6>
304
     382:	3a e0       	ldi	r19, 0x0A	; 10
305
     384:	83 9e       	mul	r8, r19
306
     386:	80 2c       	mov	r8, r0
307
     388:	11 24       	eor	r1, r1
308
     38a:	88 0e       	add	r8, r24
309
     38c:	10 62       	ori	r17, 0x20	; 32
310
     38e:	0c c0       	rjmp	.+24     	; 0x3a8 <vfprintf+0xe6>
311
     390:	9e 32       	cpi	r25, 0x2E	; 46
312
     392:	21 f4       	brne	.+8      	; 0x39c <vfprintf+0xda>
313
     394:	16 fd       	sbrc	r17, 6
314
     396:	16 c3       	rjmp	.+1580   	; 0x9c4 <vfprintf+0x702>
315
     398:	10 64       	ori	r17, 0x40	; 64
316
     39a:	06 c0       	rjmp	.+12     	; 0x3a8 <vfprintf+0xe6>
317
     39c:	9c 36       	cpi	r25, 0x6C	; 108
318
     39e:	11 f4       	brne	.+4      	; 0x3a4 <vfprintf+0xe2>
319
     3a0:	10 68       	ori	r17, 0x80	; 128
320
     3a2:	02 c0       	rjmp	.+4      	; 0x3a8 <vfprintf+0xe6>
321
     3a4:	98 36       	cpi	r25, 0x68	; 104
322
     3a6:	59 f4       	brne	.+22     	; 0x3be <vfprintf+0xfc>
323
     3a8:	ee 85       	ldd	r30, Y+14	; 0x0e
324
     3aa:	ff 85       	ldd	r31, Y+15	; 0x0f
325
     3ac:	23 fd       	sbrc	r18, 3
326
     3ae:	95 91       	lpm	r25, Z+
327
     3b0:	23 ff       	sbrs	r18, 3
328
     3b2:	91 91       	ld	r25, Z+
329
     3b4:	ff 87       	std	Y+15, r31	; 0x0f
330
     3b6:	ee 87       	std	Y+14, r30	; 0x0e
331
     3b8:	99 23       	and	r25, r25
332
     3ba:	09 f0       	breq	.+2      	; 0x3be <vfprintf+0xfc>
333
     3bc:	bc cf       	rjmp	.-136    	; 0x336 <vfprintf+0x74>
334
     3be:	89 2f       	mov	r24, r25
335
     3c0:	85 54       	subi	r24, 0x45	; 69
336
     3c2:	83 30       	cpi	r24, 0x03	; 3
337
     3c4:	20 f4       	brcc	.+8      	; 0x3ce <vfprintf+0x10c>
338
     3c6:	81 2f       	mov	r24, r17
339
     3c8:	80 61       	ori	r24, 0x10	; 16
340
     3ca:	90 5e       	subi	r25, 0xE0	; 224
341
     3cc:	07 c0       	rjmp	.+14     	; 0x3dc <vfprintf+0x11a>
342
     3ce:	89 2f       	mov	r24, r25
343
     3d0:	85 56       	subi	r24, 0x65	; 101
344
     3d2:	83 30       	cpi	r24, 0x03	; 3
345
     3d4:	08 f0       	brcs	.+2      	; 0x3d8 <vfprintf+0x116>
346
     3d6:	a1 c1       	rjmp	.+834    	; 0x71a <vfprintf+0x458>
347
     3d8:	81 2f       	mov	r24, r17
348
     3da:	8f 7e       	andi	r24, 0xEF	; 239
349
     3dc:	86 fd       	sbrc	r24, 6
350
     3de:	02 c0       	rjmp	.+4      	; 0x3e4 <vfprintf+0x122>
351
     3e0:	76 e0       	ldi	r23, 0x06	; 6
352
     3e2:	97 2e       	mov	r9, r23
353
     3e4:	6f e3       	ldi	r22, 0x3F	; 63
354
     3e6:	f6 2e       	mov	r15, r22
355
     3e8:	f8 22       	and	r15, r24
356
     3ea:	95 36       	cpi	r25, 0x65	; 101
357
     3ec:	19 f4       	brne	.+6      	; 0x3f4 <vfprintf+0x132>
358
     3ee:	f0 e4       	ldi	r31, 0x40	; 64
359
     3f0:	ff 2a       	or	r15, r31
360
     3f2:	07 c0       	rjmp	.+14     	; 0x402 <vfprintf+0x140>
361
     3f4:	96 36       	cpi	r25, 0x66	; 102
362
     3f6:	19 f4       	brne	.+6      	; 0x3fe <vfprintf+0x13c>
363
     3f8:	20 e8       	ldi	r18, 0x80	; 128
364
     3fa:	f2 2a       	or	r15, r18
365
     3fc:	02 c0       	rjmp	.+4      	; 0x402 <vfprintf+0x140>
366
     3fe:	91 10       	cpse	r9, r1
367
     400:	9a 94       	dec	r9
368
     402:	f7 fe       	sbrs	r15, 7
369
     404:	0b c0       	rjmp	.+22     	; 0x41c <vfprintf+0x15a>
370
     406:	3b e3       	ldi	r19, 0x3B	; 59
371
     408:	39 15       	cp	r19, r9
372
     40a:	20 f4       	brcc	.+8      	; 0x414 <vfprintf+0x152>
373
     40c:	27 e0       	ldi	r18, 0x07	; 7
374
     40e:	5c e3       	ldi	r21, 0x3C	; 60
375
     410:	b5 2e       	mov	r11, r21
376
     412:	0e c0       	rjmp	.+28     	; 0x430 <vfprintf+0x16e>
377
     414:	b9 2c       	mov	r11, r9
378
     416:	b3 94       	inc	r11
379
     418:	27 e0       	ldi	r18, 0x07	; 7
380
     41a:	0a c0       	rjmp	.+20     	; 0x430 <vfprintf+0x16e>
381
     41c:	47 e0       	ldi	r20, 0x07	; 7
382
     41e:	49 15       	cp	r20, r9
383
     420:	28 f4       	brcc	.+10     	; 0x42c <vfprintf+0x16a>
384
     422:	27 e0       	ldi	r18, 0x07	; 7
385
     424:	bb 24       	eor	r11, r11
386
     426:	47 e0       	ldi	r20, 0x07	; 7
387
     428:	94 2e       	mov	r9, r20
388
     42a:	02 c0       	rjmp	.+4      	; 0x430 <vfprintf+0x16e>
389
     42c:	29 2d       	mov	r18, r9
390
     42e:	bb 24       	eor	r11, r11
391
     430:	c6 01       	movw	r24, r12
392
     432:	04 96       	adiw	r24, 0x04	; 4
393
     434:	9d 87       	std	Y+13, r25	; 0x0d
394
     436:	8c 87       	std	Y+12, r24	; 0x0c
395
     438:	f6 01       	movw	r30, r12
396
     43a:	60 81       	ld	r22, Z
397
     43c:	71 81       	ldd	r23, Z+1	; 0x01
398
     43e:	82 81       	ldd	r24, Z+2	; 0x02
399
     440:	93 81       	ldd	r25, Z+3	; 0x03
400
     442:	ae 01       	movw	r20, r28
401
     444:	4f 5f       	subi	r20, 0xFF	; 255
402
     446:	5f 4f       	sbci	r21, 0xFF	; 255
403
     448:	0b 2d       	mov	r16, r11
404
     44a:	0e 94 02 16 	call	0x2c04	; 0x2c04 <__ftoa_engine>
405
     44e:	6c 01       	movw	r12, r24
406
     450:	09 81       	ldd	r16, Y+1	; 0x01
407
     452:	20 2e       	mov	r2, r16
408
     454:	33 24       	eor	r3, r3
409
     456:	00 ff       	sbrs	r16, 0
410
     458:	04 c0       	rjmp	.+8      	; 0x462 <vfprintf+0x1a0>
411
     45a:	03 fd       	sbrc	r16, 3
412
     45c:	02 c0       	rjmp	.+4      	; 0x462 <vfprintf+0x1a0>
413
     45e:	1d e2       	ldi	r17, 0x2D	; 45
414
     460:	09 c0       	rjmp	.+18     	; 0x474 <vfprintf+0x1b2>
415
     462:	f1 fe       	sbrs	r15, 1
416
     464:	02 c0       	rjmp	.+4      	; 0x46a <vfprintf+0x1a8>
417
     466:	1b e2       	ldi	r17, 0x2B	; 43
418
     468:	05 c0       	rjmp	.+10     	; 0x474 <vfprintf+0x1b2>
419
     46a:	f2 fc       	sbrc	r15, 2
420
     46c:	02 c0       	rjmp	.+4      	; 0x472 <vfprintf+0x1b0>
421
     46e:	10 e0       	ldi	r17, 0x00	; 0
422
     470:	01 c0       	rjmp	.+2      	; 0x474 <vfprintf+0x1b2>
423
     472:	10 e2       	ldi	r17, 0x20	; 32
424
     474:	c1 01       	movw	r24, r2
425
     476:	8c 70       	andi	r24, 0x0C	; 12
426
     478:	90 70       	andi	r25, 0x00	; 0
427
     47a:	89 2b       	or	r24, r25
428
     47c:	b9 f1       	breq	.+110    	; 0x4ec <vfprintf+0x22a>
429
     47e:	11 23       	and	r17, r17
430
     480:	11 f4       	brne	.+4      	; 0x486 <vfprintf+0x1c4>
431
     482:	83 e0       	ldi	r24, 0x03	; 3
432
     484:	01 c0       	rjmp	.+2      	; 0x488 <vfprintf+0x1c6>
433
     486:	84 e0       	ldi	r24, 0x04	; 4
434
     488:	88 15       	cp	r24, r8
435
     48a:	10 f0       	brcs	.+4      	; 0x490 <vfprintf+0x1ce>
436
     48c:	88 24       	eor	r8, r8
437
     48e:	0a c0       	rjmp	.+20     	; 0x4a4 <vfprintf+0x1e2>
438
     490:	88 1a       	sub	r8, r24
439
     492:	f3 fc       	sbrc	r15, 3
440
     494:	07 c0       	rjmp	.+14     	; 0x4a4 <vfprintf+0x1e2>
441
     496:	80 e2       	ldi	r24, 0x20	; 32
442
     498:	90 e0       	ldi	r25, 0x00	; 0
443
     49a:	b3 01       	movw	r22, r6
444
     49c:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
445
     4a0:	8a 94       	dec	r8
446
     4a2:	c9 f7       	brne	.-14     	; 0x496 <vfprintf+0x1d4>
447
     4a4:	11 23       	and	r17, r17
448
     4a6:	29 f0       	breq	.+10     	; 0x4b2 <vfprintf+0x1f0>
449
     4a8:	81 2f       	mov	r24, r17
450
     4aa:	90 e0       	ldi	r25, 0x00	; 0
451
     4ac:	b3 01       	movw	r22, r6
452
     4ae:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
453
     4b2:	23 fe       	sbrs	r2, 3
454
     4b4:	03 c0       	rjmp	.+6      	; 0x4bc <vfprintf+0x1fa>
455
     4b6:	0c e8       	ldi	r16, 0x8C	; 140
456
     4b8:	10 e0       	ldi	r17, 0x00	; 0
457
     4ba:	0e c0       	rjmp	.+28     	; 0x4d8 <vfprintf+0x216>
458
     4bc:	00 e9       	ldi	r16, 0x90	; 144
459
     4be:	10 e0       	ldi	r17, 0x00	; 0
460
     4c0:	0b c0       	rjmp	.+22     	; 0x4d8 <vfprintf+0x216>
461
     4c2:	e1 14       	cp	r14, r1
462
     4c4:	f1 04       	cpc	r15, r1
463
     4c6:	09 f0       	breq	.+2      	; 0x4ca <vfprintf+0x208>
464
     4c8:	80 52       	subi	r24, 0x20	; 32
465
     4ca:	90 e0       	ldi	r25, 0x00	; 0
466
     4cc:	b3 01       	movw	r22, r6
467
     4ce:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
468
     4d2:	0f 5f       	subi	r16, 0xFF	; 255
469
     4d4:	1f 4f       	sbci	r17, 0xFF	; 255
470
     4d6:	05 c0       	rjmp	.+10     	; 0x4e2 <vfprintf+0x220>
471
     4d8:	ef 2c       	mov	r14, r15
472
     4da:	ff 24       	eor	r15, r15
473
     4dc:	f0 e1       	ldi	r31, 0x10	; 16
474
     4de:	ef 22       	and	r14, r31
475
     4e0:	ff 24       	eor	r15, r15
476
     4e2:	f8 01       	movw	r30, r16
477
     4e4:	84 91       	lpm	r24, Z+
478
     4e6:	88 23       	and	r24, r24
479
     4e8:	61 f7       	brne	.-40     	; 0x4c2 <vfprintf+0x200>
480
     4ea:	14 c1       	rjmp	.+552    	; 0x714 <vfprintf+0x452>
481
     4ec:	f7 fe       	sbrs	r15, 7
482
     4ee:	12 c0       	rjmp	.+36     	; 0x514 <vfprintf+0x252>
483
     4f0:	bc 0c       	add	r11, r12
484
     4f2:	24 fe       	sbrs	r2, 4
485
     4f4:	04 c0       	rjmp	.+8      	; 0x4fe <vfprintf+0x23c>
486
     4f6:	8a 81       	ldd	r24, Y+2	; 0x02
487
     4f8:	81 33       	cpi	r24, 0x31	; 49
488
     4fa:	09 f4       	brne	.+2      	; 0x4fe <vfprintf+0x23c>
489
     4fc:	ba 94       	dec	r11
490
     4fe:	1b 14       	cp	r1, r11
491
     500:	1c f0       	brlt	.+6      	; 0x508 <vfprintf+0x246>
492
     502:	bb 24       	eor	r11, r11
493
     504:	b3 94       	inc	r11
494
     506:	2d c0       	rjmp	.+90     	; 0x562 <vfprintf+0x2a0>
495
     508:	f8 e0       	ldi	r31, 0x08	; 8
496
     50a:	fb 15       	cp	r31, r11
497
     50c:	50 f5       	brcc	.+84     	; 0x562 <vfprintf+0x2a0>
498
     50e:	38 e0       	ldi	r19, 0x08	; 8
499
     510:	b3 2e       	mov	r11, r19
500
     512:	27 c0       	rjmp	.+78     	; 0x562 <vfprintf+0x2a0>
501
     514:	f6 fc       	sbrc	r15, 6
502
     516:	25 c0       	rjmp	.+74     	; 0x562 <vfprintf+0x2a0>
503
     518:	89 2d       	mov	r24, r9
504
     51a:	90 e0       	ldi	r25, 0x00	; 0
505
     51c:	8c 15       	cp	r24, r12
506
     51e:	9d 05       	cpc	r25, r13
507
     520:	4c f0       	brlt	.+18     	; 0x534 <vfprintf+0x272>
508
     522:	2c ef       	ldi	r18, 0xFC	; 252
509
     524:	c2 16       	cp	r12, r18
510
     526:	2f ef       	ldi	r18, 0xFF	; 255
511
     528:	d2 06       	cpc	r13, r18
512
     52a:	24 f0       	brlt	.+8      	; 0x534 <vfprintf+0x272>
513
     52c:	30 e8       	ldi	r19, 0x80	; 128
514
     52e:	f3 2a       	or	r15, r19
515
     530:	01 c0       	rjmp	.+2      	; 0x534 <vfprintf+0x272>
516
     532:	9a 94       	dec	r9
517
     534:	99 20       	and	r9, r9
518
     536:	49 f0       	breq	.+18     	; 0x54a <vfprintf+0x288>
519
     538:	e2 e0       	ldi	r30, 0x02	; 2
520
     53a:	f0 e0       	ldi	r31, 0x00	; 0
521
     53c:	ec 0f       	add	r30, r28
522
     53e:	fd 1f       	adc	r31, r29
523
     540:	e9 0d       	add	r30, r9
524
     542:	f1 1d       	adc	r31, r1
525
     544:	80 81       	ld	r24, Z
526
     546:	80 33       	cpi	r24, 0x30	; 48
527
     548:	a1 f3       	breq	.-24     	; 0x532 <vfprintf+0x270>
528
     54a:	f7 fe       	sbrs	r15, 7
529
     54c:	0a c0       	rjmp	.+20     	; 0x562 <vfprintf+0x2a0>
530
     54e:	b9 2c       	mov	r11, r9
531
     550:	b3 94       	inc	r11
532
     552:	89 2d       	mov	r24, r9
533
     554:	90 e0       	ldi	r25, 0x00	; 0
534
     556:	c8 16       	cp	r12, r24
535
     558:	d9 06       	cpc	r13, r25
536
     55a:	14 f0       	brlt	.+4      	; 0x560 <vfprintf+0x29e>
537
     55c:	99 24       	eor	r9, r9
538
     55e:	01 c0       	rjmp	.+2      	; 0x562 <vfprintf+0x2a0>
539
     560:	9c 18       	sub	r9, r12
540
     562:	f7 fc       	sbrc	r15, 7
541
     564:	03 c0       	rjmp	.+6      	; 0x56c <vfprintf+0x2aa>
542
     566:	25 e0       	ldi	r18, 0x05	; 5
543
     568:	30 e0       	ldi	r19, 0x00	; 0
544
     56a:	09 c0       	rjmp	.+18     	; 0x57e <vfprintf+0x2bc>
545
     56c:	1c 14       	cp	r1, r12
546
     56e:	1d 04       	cpc	r1, r13
547
     570:	1c f0       	brlt	.+6      	; 0x578 <vfprintf+0x2b6>
548
     572:	21 e0       	ldi	r18, 0x01	; 1
549
     574:	30 e0       	ldi	r19, 0x00	; 0
550
     576:	03 c0       	rjmp	.+6      	; 0x57e <vfprintf+0x2bc>
551
     578:	96 01       	movw	r18, r12
552
     57a:	2f 5f       	subi	r18, 0xFF	; 255
553
     57c:	3f 4f       	sbci	r19, 0xFF	; 255
554
     57e:	11 23       	and	r17, r17
555
     580:	11 f0       	breq	.+4      	; 0x586 <vfprintf+0x2c4>
556
     582:	2f 5f       	subi	r18, 0xFF	; 255
557
     584:	3f 4f       	sbci	r19, 0xFF	; 255
558
     586:	99 20       	and	r9, r9
559
     588:	29 f0       	breq	.+10     	; 0x594 <vfprintf+0x2d2>
560
     58a:	89 2d       	mov	r24, r9
561
     58c:	90 e0       	ldi	r25, 0x00	; 0
562
     58e:	01 96       	adiw	r24, 0x01	; 1
563
     590:	28 0f       	add	r18, r24
564
     592:	39 1f       	adc	r19, r25
565
     594:	88 2d       	mov	r24, r8
566
     596:	90 e0       	ldi	r25, 0x00	; 0
567
     598:	28 17       	cp	r18, r24
568
     59a:	39 07       	cpc	r19, r25
569
     59c:	14 f0       	brlt	.+4      	; 0x5a2 <vfprintf+0x2e0>
570
     59e:	88 24       	eor	r8, r8
571
     5a0:	01 c0       	rjmp	.+2      	; 0x5a4 <vfprintf+0x2e2>
572
     5a2:	82 1a       	sub	r8, r18
573
     5a4:	4f 2c       	mov	r4, r15
574
     5a6:	55 24       	eor	r5, r5
575
     5a8:	c2 01       	movw	r24, r4
576
     5aa:	89 70       	andi	r24, 0x09	; 9
577
     5ac:	90 70       	andi	r25, 0x00	; 0
578
     5ae:	89 2b       	or	r24, r25
579
     5b0:	39 f0       	breq	.+14     	; 0x5c0 <vfprintf+0x2fe>
580
     5b2:	08 c0       	rjmp	.+16     	; 0x5c4 <vfprintf+0x302>
581
     5b4:	80 e2       	ldi	r24, 0x20	; 32
582
     5b6:	90 e0       	ldi	r25, 0x00	; 0
583
     5b8:	b3 01       	movw	r22, r6
584
     5ba:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
585
     5be:	8a 94       	dec	r8
586
     5c0:	88 20       	and	r8, r8
587
     5c2:	c1 f7       	brne	.-16     	; 0x5b4 <vfprintf+0x2f2>
588
     5c4:	11 23       	and	r17, r17
589
     5c6:	29 f0       	breq	.+10     	; 0x5d2 <vfprintf+0x310>
590
     5c8:	81 2f       	mov	r24, r17
591
     5ca:	90 e0       	ldi	r25, 0x00	; 0
592
     5cc:	b3 01       	movw	r22, r6
593
     5ce:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
594
     5d2:	43 fe       	sbrs	r4, 3
595
     5d4:	07 c0       	rjmp	.+14     	; 0x5e4 <vfprintf+0x322>
596
     5d6:	08 c0       	rjmp	.+16     	; 0x5e8 <vfprintf+0x326>
597
     5d8:	80 e3       	ldi	r24, 0x30	; 48
598
     5da:	90 e0       	ldi	r25, 0x00	; 0
599
     5dc:	b3 01       	movw	r22, r6
600
     5de:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
601
     5e2:	8a 94       	dec	r8
602
     5e4:	88 20       	and	r8, r8
603
     5e6:	c1 f7       	brne	.-16     	; 0x5d8 <vfprintf+0x316>
604
     5e8:	f7 fe       	sbrs	r15, 7
605
     5ea:	46 c0       	rjmp	.+140    	; 0x678 <vfprintf+0x3b6>
606
     5ec:	86 01       	movw	r16, r12
607
     5ee:	d7 fe       	sbrs	r13, 7
608
     5f0:	02 c0       	rjmp	.+4      	; 0x5f6 <vfprintf+0x334>
609
     5f2:	00 e0       	ldi	r16, 0x00	; 0
610
     5f4:	10 e0       	ldi	r17, 0x00	; 0
611
     5f6:	76 01       	movw	r14, r12
612
     5f8:	08 94       	sec
613
     5fa:	e1 1c       	adc	r14, r1
614
     5fc:	f1 1c       	adc	r15, r1
615
     5fe:	e0 1a       	sub	r14, r16
616
     600:	f1 0a       	sbc	r15, r17
617
     602:	41 e0       	ldi	r20, 0x01	; 1
618
     604:	50 e0       	ldi	r21, 0x00	; 0
619
     606:	4c 0f       	add	r20, r28
620
     608:	5d 1f       	adc	r21, r29
621
     60a:	e4 0e       	add	r14, r20
622
     60c:	f5 1e       	adc	r15, r21
623
     60e:	26 01       	movw	r4, r12
624
     610:	4b 18       	sub	r4, r11
625
     612:	51 08       	sbc	r5, r1
626
     614:	89 2d       	mov	r24, r9
627
     616:	90 e0       	ldi	r25, 0x00	; 0
628
     618:	aa 24       	eor	r10, r10
629
     61a:	bb 24       	eor	r11, r11
630
     61c:	a8 1a       	sub	r10, r24
631
     61e:	b9 0a       	sbc	r11, r25
632
     620:	5f ef       	ldi	r21, 0xFF	; 255
633
     622:	0f 3f       	cpi	r16, 0xFF	; 255
634
     624:	15 07       	cpc	r17, r21
635
     626:	29 f4       	brne	.+10     	; 0x632 <vfprintf+0x370>
636
     628:	8e e2       	ldi	r24, 0x2E	; 46
637
     62a:	90 e0       	ldi	r25, 0x00	; 0
638
     62c:	b3 01       	movw	r22, r6
639
     62e:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
640
     632:	c0 16       	cp	r12, r16
641
     634:	d1 06       	cpc	r13, r17
642
     636:	34 f0       	brlt	.+12     	; 0x644 <vfprintf+0x382>
643
     638:	40 16       	cp	r4, r16
644
     63a:	51 06       	cpc	r5, r17
645
     63c:	1c f4       	brge	.+6      	; 0x644 <vfprintf+0x382>
646
     63e:	f7 01       	movw	r30, r14
647
     640:	80 81       	ld	r24, Z
648
     642:	01 c0       	rjmp	.+2      	; 0x646 <vfprintf+0x384>
649
     644:	80 e3       	ldi	r24, 0x30	; 48
650
     646:	01 50       	subi	r16, 0x01	; 1
651
     648:	10 40       	sbci	r17, 0x00	; 0
652
     64a:	08 94       	sec
653
     64c:	e1 1c       	adc	r14, r1
654
     64e:	f1 1c       	adc	r15, r1
655
     650:	0a 15       	cp	r16, r10
656
     652:	1b 05       	cpc	r17, r11
657
     654:	2c f0       	brlt	.+10     	; 0x660 <vfprintf+0x39e>
658
     656:	90 e0       	ldi	r25, 0x00	; 0
659
     658:	b3 01       	movw	r22, r6
660
     65a:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
661
     65e:	e0 cf       	rjmp	.-64     	; 0x620 <vfprintf+0x35e>
662
     660:	0c 15       	cp	r16, r12
663
     662:	1d 05       	cpc	r17, r13
664
     664:	39 f4       	brne	.+14     	; 0x674 <vfprintf+0x3b2>
665
     666:	9a 81       	ldd	r25, Y+2	; 0x02
666
     668:	96 33       	cpi	r25, 0x36	; 54
667
     66a:	18 f4       	brcc	.+6      	; 0x672 <vfprintf+0x3b0>
668
     66c:	95 33       	cpi	r25, 0x35	; 53
669
     66e:	11 f4       	brne	.+4      	; 0x674 <vfprintf+0x3b2>
670
     670:	24 fe       	sbrs	r2, 4
671
     672:	81 e3       	ldi	r24, 0x31	; 49
672
     674:	90 e0       	ldi	r25, 0x00	; 0
673
     676:	4b c0       	rjmp	.+150    	; 0x70e <vfprintf+0x44c>
674
     678:	8a 81       	ldd	r24, Y+2	; 0x02
675
     67a:	81 33       	cpi	r24, 0x31	; 49
676
     67c:	09 f0       	breq	.+2      	; 0x680 <vfprintf+0x3be>
677
     67e:	0f 7e       	andi	r16, 0xEF	; 239
678
     680:	90 e0       	ldi	r25, 0x00	; 0
679
     682:	b3 01       	movw	r22, r6
680
     684:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
681
     688:	99 20       	and	r9, r9
682
     68a:	a1 f0       	breq	.+40     	; 0x6b4 <vfprintf+0x3f2>
683
     68c:	8e e2       	ldi	r24, 0x2E	; 46
684
     68e:	90 e0       	ldi	r25, 0x00	; 0
685
     690:	b3 01       	movw	r22, r6
686
     692:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
687
     696:	12 e0       	ldi	r17, 0x02	; 2
688
     698:	e1 e0       	ldi	r30, 0x01	; 1
689
     69a:	f0 e0       	ldi	r31, 0x00	; 0
690
     69c:	ec 0f       	add	r30, r28
691
     69e:	fd 1f       	adc	r31, r29
692
     6a0:	e1 0f       	add	r30, r17
693
     6a2:	f1 1d       	adc	r31, r1
694
     6a4:	1f 5f       	subi	r17, 0xFF	; 255
695
     6a6:	80 81       	ld	r24, Z
696
     6a8:	90 e0       	ldi	r25, 0x00	; 0
697
     6aa:	b3 01       	movw	r22, r6
698
     6ac:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
699
     6b0:	9a 94       	dec	r9
700
     6b2:	91 f7       	brne	.-28     	; 0x698 <vfprintf+0x3d6>
701
     6b4:	44 fc       	sbrc	r4, 4
702
     6b6:	03 c0       	rjmp	.+6      	; 0x6be <vfprintf+0x3fc>
703
     6b8:	85 e6       	ldi	r24, 0x65	; 101
704
     6ba:	90 e0       	ldi	r25, 0x00	; 0
705
     6bc:	02 c0       	rjmp	.+4      	; 0x6c2 <vfprintf+0x400>
706
     6be:	85 e4       	ldi	r24, 0x45	; 69
707
     6c0:	90 e0       	ldi	r25, 0x00	; 0
708
     6c2:	b3 01       	movw	r22, r6
709
     6c4:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
710
     6c8:	d7 fc       	sbrc	r13, 7
711
     6ca:	05 c0       	rjmp	.+10     	; 0x6d6 <vfprintf+0x414>
712
     6cc:	c1 14       	cp	r12, r1
713
     6ce:	d1 04       	cpc	r13, r1
714
     6d0:	41 f4       	brne	.+16     	; 0x6e2 <vfprintf+0x420>
715
     6d2:	04 ff       	sbrs	r16, 4
716
     6d4:	06 c0       	rjmp	.+12     	; 0x6e2 <vfprintf+0x420>
717
     6d6:	d0 94       	com	r13
718
     6d8:	c1 94       	neg	r12
719
     6da:	d1 08       	sbc	r13, r1
720
     6dc:	d3 94       	inc	r13
721
     6de:	8d e2       	ldi	r24, 0x2D	; 45
722
     6e0:	01 c0       	rjmp	.+2      	; 0x6e4 <vfprintf+0x422>
723
     6e2:	8b e2       	ldi	r24, 0x2B	; 43
724
     6e4:	90 e0       	ldi	r25, 0x00	; 0
725
     6e6:	b3 01       	movw	r22, r6
726
     6e8:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
727
     6ec:	80 e3       	ldi	r24, 0x30	; 48
728
     6ee:	05 c0       	rjmp	.+10     	; 0x6fa <vfprintf+0x438>
729
     6f0:	8f 5f       	subi	r24, 0xFF	; 255
730
     6f2:	26 ef       	ldi	r18, 0xF6	; 246
731
     6f4:	3f ef       	ldi	r19, 0xFF	; 255
732
     6f6:	c2 0e       	add	r12, r18
733
     6f8:	d3 1e       	adc	r13, r19
734
     6fa:	3a e0       	ldi	r19, 0x0A	; 10
735
     6fc:	c3 16       	cp	r12, r19
736
     6fe:	d1 04       	cpc	r13, r1
737
     700:	bc f7       	brge	.-18     	; 0x6f0 <vfprintf+0x42e>
738
     702:	90 e0       	ldi	r25, 0x00	; 0
739
     704:	b3 01       	movw	r22, r6
740
     706:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
741
     70a:	c6 01       	movw	r24, r12
742
     70c:	c0 96       	adiw	r24, 0x30	; 48
743
     70e:	b3 01       	movw	r22, r6
744
     710:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
745
     714:	cc 84       	ldd	r12, Y+12	; 0x0c
746
     716:	dd 84       	ldd	r13, Y+13	; 0x0d
747
     718:	52 c1       	rjmp	.+676    	; 0x9be <vfprintf+0x6fc>
748
     71a:	93 36       	cpi	r25, 0x63	; 99
749
     71c:	31 f0       	breq	.+12     	; 0x72a <vfprintf+0x468>
750
     71e:	93 37       	cpi	r25, 0x73	; 115
751
     720:	99 f0       	breq	.+38     	; 0x748 <vfprintf+0x486>
752
     722:	93 35       	cpi	r25, 0x53	; 83
753
     724:	09 f0       	breq	.+2      	; 0x728 <vfprintf+0x466>
754
     726:	59 c0       	rjmp	.+178    	; 0x7da <vfprintf+0x518>
755
     728:	23 c0       	rjmp	.+70     	; 0x770 <vfprintf+0x4ae>
756
     72a:	f6 01       	movw	r30, r12
757
     72c:	80 81       	ld	r24, Z
758
     72e:	89 83       	std	Y+1, r24	; 0x01
759
     730:	5e 01       	movw	r10, r28
760
     732:	08 94       	sec
761
     734:	a1 1c       	adc	r10, r1
762
     736:	b1 1c       	adc	r11, r1
763
     738:	22 e0       	ldi	r18, 0x02	; 2
764
     73a:	30 e0       	ldi	r19, 0x00	; 0
765
     73c:	c2 0e       	add	r12, r18
766
     73e:	d3 1e       	adc	r13, r19
767
     740:	21 e0       	ldi	r18, 0x01	; 1
768
     742:	e2 2e       	mov	r14, r18
769
     744:	f1 2c       	mov	r15, r1
770
     746:	12 c0       	rjmp	.+36     	; 0x76c <vfprintf+0x4aa>
771
     748:	f6 01       	movw	r30, r12
772
     74a:	a0 80       	ld	r10, Z
773
     74c:	b1 80       	ldd	r11, Z+1	; 0x01
774
     74e:	16 fd       	sbrc	r17, 6
775
     750:	03 c0       	rjmp	.+6      	; 0x758 <vfprintf+0x496>
776
     752:	6f ef       	ldi	r22, 0xFF	; 255
777
     754:	7f ef       	ldi	r23, 0xFF	; 255
778
     756:	02 c0       	rjmp	.+4      	; 0x75c <vfprintf+0x49a>
779
     758:	69 2d       	mov	r22, r9
780
     75a:	70 e0       	ldi	r23, 0x00	; 0
781
     75c:	22 e0       	ldi	r18, 0x02	; 2
782
     75e:	30 e0       	ldi	r19, 0x00	; 0
783
     760:	c2 0e       	add	r12, r18
784
     762:	d3 1e       	adc	r13, r19
785
     764:	c5 01       	movw	r24, r10
786
     766:	0e 94 ee 16 	call	0x2ddc	; 0x2ddc <strnlen>
787
     76a:	7c 01       	movw	r14, r24
788
     76c:	1f 77       	andi	r17, 0x7F	; 127
789
     76e:	13 c0       	rjmp	.+38     	; 0x796 <vfprintf+0x4d4>
790
     770:	f6 01       	movw	r30, r12
791
     772:	a0 80       	ld	r10, Z
792
     774:	b1 80       	ldd	r11, Z+1	; 0x01
793
     776:	16 fd       	sbrc	r17, 6
794
     778:	03 c0       	rjmp	.+6      	; 0x780 <vfprintf+0x4be>
795
     77a:	6f ef       	ldi	r22, 0xFF	; 255
796
     77c:	7f ef       	ldi	r23, 0xFF	; 255
797
     77e:	02 c0       	rjmp	.+4      	; 0x784 <vfprintf+0x4c2>
798
     780:	69 2d       	mov	r22, r9
799
     782:	70 e0       	ldi	r23, 0x00	; 0
800
     784:	22 e0       	ldi	r18, 0x02	; 2
801
     786:	30 e0       	ldi	r19, 0x00	; 0
802
     788:	c2 0e       	add	r12, r18
803
     78a:	d3 1e       	adc	r13, r19
804
     78c:	c5 01       	movw	r24, r10
805
     78e:	0e 94 e3 16 	call	0x2dc6	; 0x2dc6 <strnlen_P>
806
     792:	7c 01       	movw	r14, r24
807
     794:	10 68       	ori	r17, 0x80	; 128
808
     796:	13 ff       	sbrs	r17, 3
809
     798:	07 c0       	rjmp	.+14     	; 0x7a8 <vfprintf+0x4e6>
810
     79a:	1b c0       	rjmp	.+54     	; 0x7d2 <vfprintf+0x510>
811
     79c:	80 e2       	ldi	r24, 0x20	; 32
812
     79e:	90 e0       	ldi	r25, 0x00	; 0
813
     7a0:	b3 01       	movw	r22, r6
814
     7a2:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
815
     7a6:	8a 94       	dec	r8
816
     7a8:	88 2d       	mov	r24, r8
817
     7aa:	90 e0       	ldi	r25, 0x00	; 0
818
     7ac:	e8 16       	cp	r14, r24
819
     7ae:	f9 06       	cpc	r15, r25
820
     7b0:	a8 f3       	brcs	.-22     	; 0x79c <vfprintf+0x4da>
821
     7b2:	0f c0       	rjmp	.+30     	; 0x7d2 <vfprintf+0x510>
822
     7b4:	f5 01       	movw	r30, r10
823
     7b6:	17 fd       	sbrc	r17, 7
824
     7b8:	85 91       	lpm	r24, Z+
825
     7ba:	17 ff       	sbrs	r17, 7
826
     7bc:	81 91       	ld	r24, Z+
827
     7be:	5f 01       	movw	r10, r30
828
     7c0:	90 e0       	ldi	r25, 0x00	; 0
829
     7c2:	b3 01       	movw	r22, r6
830
     7c4:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
831
     7c8:	81 10       	cpse	r8, r1
832
     7ca:	8a 94       	dec	r8
833
     7cc:	08 94       	sec
834
     7ce:	e1 08       	sbc	r14, r1
835
     7d0:	f1 08       	sbc	r15, r1
836
     7d2:	e1 14       	cp	r14, r1
837
     7d4:	f1 04       	cpc	r15, r1
838
     7d6:	71 f7       	brne	.-36     	; 0x7b4 <vfprintf+0x4f2>
839
     7d8:	f2 c0       	rjmp	.+484    	; 0x9be <vfprintf+0x6fc>
840
     7da:	94 36       	cpi	r25, 0x64	; 100
841
     7dc:	11 f0       	breq	.+4      	; 0x7e2 <vfprintf+0x520>
842
     7de:	99 36       	cpi	r25, 0x69	; 105
843
     7e0:	89 f5       	brne	.+98     	; 0x844 <vfprintf+0x582>
844
     7e2:	17 ff       	sbrs	r17, 7
845
     7e4:	08 c0       	rjmp	.+16     	; 0x7f6 <vfprintf+0x534>
846
     7e6:	f6 01       	movw	r30, r12
847
     7e8:	20 81       	ld	r18, Z
848
     7ea:	31 81       	ldd	r19, Z+1	; 0x01
849
     7ec:	42 81       	ldd	r20, Z+2	; 0x02
850
     7ee:	53 81       	ldd	r21, Z+3	; 0x03
851
     7f0:	84 e0       	ldi	r24, 0x04	; 4
852
     7f2:	90 e0       	ldi	r25, 0x00	; 0
853
     7f4:	0a c0       	rjmp	.+20     	; 0x80a <vfprintf+0x548>
854
     7f6:	f6 01       	movw	r30, r12
855
     7f8:	80 81       	ld	r24, Z
856
     7fa:	91 81       	ldd	r25, Z+1	; 0x01
857
     7fc:	9c 01       	movw	r18, r24
858
     7fe:	44 27       	eor	r20, r20
859
     800:	37 fd       	sbrc	r19, 7
860
     802:	40 95       	com	r20
861
     804:	54 2f       	mov	r21, r20
862
     806:	82 e0       	ldi	r24, 0x02	; 2
863
     808:	90 e0       	ldi	r25, 0x00	; 0
864
     80a:	c8 0e       	add	r12, r24
865
     80c:	d9 1e       	adc	r13, r25
866
     80e:	9f e6       	ldi	r25, 0x6F	; 111
867
     810:	f9 2e       	mov	r15, r25
868
     812:	f1 22       	and	r15, r17
869
     814:	57 ff       	sbrs	r21, 7
870
     816:	09 c0       	rjmp	.+18     	; 0x82a <vfprintf+0x568>
871
     818:	50 95       	com	r21
872
     81a:	40 95       	com	r20
873
     81c:	30 95       	com	r19
874
     81e:	21 95       	neg	r18
875
     820:	3f 4f       	sbci	r19, 0xFF	; 255
876
     822:	4f 4f       	sbci	r20, 0xFF	; 255
877
     824:	5f 4f       	sbci	r21, 0xFF	; 255
878
     826:	90 e8       	ldi	r25, 0x80	; 128
879
     828:	f9 2a       	or	r15, r25
880
     82a:	ca 01       	movw	r24, r20
881
     82c:	b9 01       	movw	r22, r18
882
     82e:	ae 01       	movw	r20, r28
883
     830:	4f 5f       	subi	r20, 0xFF	; 255
884
     832:	5f 4f       	sbci	r21, 0xFF	; 255
885
     834:	2a e0       	ldi	r18, 0x0A	; 10
886
     836:	30 e0       	ldi	r19, 0x00	; 0
887
     838:	0e 94 25 17 	call	0x2e4a	; 0x2e4a <__ultoa_invert>
888
     83c:	e8 2e       	mov	r14, r24
889
     83e:	e8 89       	ldd	r30, Y+16	; 0x10
890
     840:	ee 1a       	sub	r14, r30
891
     842:	41 c0       	rjmp	.+130    	; 0x8c6 <vfprintf+0x604>
892
     844:	95 37       	cpi	r25, 0x75	; 117
893
     846:	21 f4       	brne	.+8      	; 0x850 <vfprintf+0x58e>
894
     848:	1f 7e       	andi	r17, 0xEF	; 239
895
     84a:	2a e0       	ldi	r18, 0x0A	; 10
896
     84c:	30 e0       	ldi	r19, 0x00	; 0
897
     84e:	1c c0       	rjmp	.+56     	; 0x888 <vfprintf+0x5c6>
898
     850:	19 7f       	andi	r17, 0xF9	; 249
899
     852:	9f 36       	cpi	r25, 0x6F	; 111
900
     854:	61 f0       	breq	.+24     	; 0x86e <vfprintf+0x5ac>
901
     856:	90 37       	cpi	r25, 0x70	; 112
902
     858:	20 f4       	brcc	.+8      	; 0x862 <vfprintf+0x5a0>
903
     85a:	98 35       	cpi	r25, 0x58	; 88
904
     85c:	09 f0       	breq	.+2      	; 0x860 <vfprintf+0x59e>
905
     85e:	b2 c0       	rjmp	.+356    	; 0x9c4 <vfprintf+0x702>
906
     860:	0f c0       	rjmp	.+30     	; 0x880 <vfprintf+0x5be>
907
     862:	90 37       	cpi	r25, 0x70	; 112
908
     864:	39 f0       	breq	.+14     	; 0x874 <vfprintf+0x5b2>
909
     866:	98 37       	cpi	r25, 0x78	; 120
910
     868:	09 f0       	breq	.+2      	; 0x86c <vfprintf+0x5aa>
911
     86a:	ac c0       	rjmp	.+344    	; 0x9c4 <vfprintf+0x702>
912
     86c:	04 c0       	rjmp	.+8      	; 0x876 <vfprintf+0x5b4>
913
     86e:	28 e0       	ldi	r18, 0x08	; 8
914
     870:	30 e0       	ldi	r19, 0x00	; 0
915
     872:	0a c0       	rjmp	.+20     	; 0x888 <vfprintf+0x5c6>
916
     874:	10 61       	ori	r17, 0x10	; 16
917
     876:	14 fd       	sbrc	r17, 4
918
     878:	14 60       	ori	r17, 0x04	; 4
919
     87a:	20 e1       	ldi	r18, 0x10	; 16
920
     87c:	30 e0       	ldi	r19, 0x00	; 0
921
     87e:	04 c0       	rjmp	.+8      	; 0x888 <vfprintf+0x5c6>
922
     880:	14 fd       	sbrc	r17, 4
923
     882:	16 60       	ori	r17, 0x06	; 6
924
     884:	20 e1       	ldi	r18, 0x10	; 16
925
     886:	32 e0       	ldi	r19, 0x02	; 2
926
     888:	17 ff       	sbrs	r17, 7
927
     88a:	08 c0       	rjmp	.+16     	; 0x89c <vfprintf+0x5da>
928
     88c:	f6 01       	movw	r30, r12
929
     88e:	60 81       	ld	r22, Z
930
     890:	71 81       	ldd	r23, Z+1	; 0x01
931
     892:	82 81       	ldd	r24, Z+2	; 0x02
932
     894:	93 81       	ldd	r25, Z+3	; 0x03
933
     896:	44 e0       	ldi	r20, 0x04	; 4
934
     898:	50 e0       	ldi	r21, 0x00	; 0
935
     89a:	08 c0       	rjmp	.+16     	; 0x8ac <vfprintf+0x5ea>
936
     89c:	f6 01       	movw	r30, r12
937
     89e:	80 81       	ld	r24, Z
938
     8a0:	91 81       	ldd	r25, Z+1	; 0x01
939
     8a2:	bc 01       	movw	r22, r24
940
     8a4:	80 e0       	ldi	r24, 0x00	; 0
941
     8a6:	90 e0       	ldi	r25, 0x00	; 0
942
     8a8:	42 e0       	ldi	r20, 0x02	; 2
943
     8aa:	50 e0       	ldi	r21, 0x00	; 0
944
     8ac:	c4 0e       	add	r12, r20
945
     8ae:	d5 1e       	adc	r13, r21
946
     8b0:	ae 01       	movw	r20, r28
947
     8b2:	4f 5f       	subi	r20, 0xFF	; 255
948
     8b4:	5f 4f       	sbci	r21, 0xFF	; 255
949
     8b6:	0e 94 25 17 	call	0x2e4a	; 0x2e4a <__ultoa_invert>
950
     8ba:	e8 2e       	mov	r14, r24
951
     8bc:	58 89       	ldd	r21, Y+16	; 0x10
952
     8be:	e5 1a       	sub	r14, r21
953
     8c0:	8f e7       	ldi	r24, 0x7F	; 127
954
     8c2:	f8 2e       	mov	r15, r24
955
     8c4:	f1 22       	and	r15, r17
956
     8c6:	f6 fe       	sbrs	r15, 6
957
     8c8:	0b c0       	rjmp	.+22     	; 0x8e0 <vfprintf+0x61e>
958
     8ca:	8e ef       	ldi	r24, 0xFE	; 254
959
     8cc:	f8 22       	and	r15, r24
960
     8ce:	e9 14       	cp	r14, r9
961
     8d0:	38 f4       	brcc	.+14     	; 0x8e0 <vfprintf+0x61e>
962
     8d2:	f4 fe       	sbrs	r15, 4
963
     8d4:	07 c0       	rjmp	.+14     	; 0x8e4 <vfprintf+0x622>
964
     8d6:	f2 fc       	sbrc	r15, 2
965
     8d8:	05 c0       	rjmp	.+10     	; 0x8e4 <vfprintf+0x622>
966
     8da:	9f ee       	ldi	r25, 0xEF	; 239
967
     8dc:	f9 22       	and	r15, r25
968
     8de:	02 c0       	rjmp	.+4      	; 0x8e4 <vfprintf+0x622>
969
     8e0:	1e 2d       	mov	r17, r14
970
     8e2:	01 c0       	rjmp	.+2      	; 0x8e6 <vfprintf+0x624>
971
     8e4:	19 2d       	mov	r17, r9
972
     8e6:	f4 fe       	sbrs	r15, 4
973
     8e8:	0d c0       	rjmp	.+26     	; 0x904 <vfprintf+0x642>
974
     8ea:	fe 01       	movw	r30, r28
975
     8ec:	ee 0d       	add	r30, r14
976
     8ee:	f1 1d       	adc	r31, r1
977
     8f0:	80 81       	ld	r24, Z
978
     8f2:	80 33       	cpi	r24, 0x30	; 48
979
     8f4:	19 f4       	brne	.+6      	; 0x8fc <vfprintf+0x63a>
980
     8f6:	e9 ee       	ldi	r30, 0xE9	; 233
981
     8f8:	fe 22       	and	r15, r30
982
     8fa:	08 c0       	rjmp	.+16     	; 0x90c <vfprintf+0x64a>
983
     8fc:	1f 5f       	subi	r17, 0xFF	; 255
984
     8fe:	f2 fe       	sbrs	r15, 2
985
     900:	05 c0       	rjmp	.+10     	; 0x90c <vfprintf+0x64a>
986
     902:	03 c0       	rjmp	.+6      	; 0x90a <vfprintf+0x648>
987
     904:	8f 2d       	mov	r24, r15
988
     906:	86 78       	andi	r24, 0x86	; 134
989
     908:	09 f0       	breq	.+2      	; 0x90c <vfprintf+0x64a>
990
     90a:	1f 5f       	subi	r17, 0xFF	; 255
991
     90c:	0f 2d       	mov	r16, r15
992
     90e:	f3 fc       	sbrc	r15, 3
993
     910:	14 c0       	rjmp	.+40     	; 0x93a <vfprintf+0x678>
994
     912:	f0 fe       	sbrs	r15, 0
995
     914:	0f c0       	rjmp	.+30     	; 0x934 <vfprintf+0x672>
996
     916:	18 15       	cp	r17, r8
997
     918:	10 f0       	brcs	.+4      	; 0x91e <vfprintf+0x65c>
998
     91a:	9e 2c       	mov	r9, r14
999
     91c:	0b c0       	rjmp	.+22     	; 0x934 <vfprintf+0x672>
1000
     91e:	9e 2c       	mov	r9, r14
1001
     920:	98 0c       	add	r9, r8
1002
     922:	91 1a       	sub	r9, r17
1003
     924:	18 2d       	mov	r17, r8
1004
     926:	06 c0       	rjmp	.+12     	; 0x934 <vfprintf+0x672>
1005
     928:	80 e2       	ldi	r24, 0x20	; 32
1006
     92a:	90 e0       	ldi	r25, 0x00	; 0
1007
     92c:	b3 01       	movw	r22, r6
1008
     92e:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
1009
     932:	1f 5f       	subi	r17, 0xFF	; 255
1010
     934:	18 15       	cp	r17, r8
1011
     936:	c0 f3       	brcs	.-16     	; 0x928 <vfprintf+0x666>
1012
     938:	04 c0       	rjmp	.+8      	; 0x942 <vfprintf+0x680>
1013
     93a:	18 15       	cp	r17, r8
1014
     93c:	10 f4       	brcc	.+4      	; 0x942 <vfprintf+0x680>
1015
     93e:	81 1a       	sub	r8, r17
1016
     940:	01 c0       	rjmp	.+2      	; 0x944 <vfprintf+0x682>
1017
     942:	88 24       	eor	r8, r8
1018
     944:	04 ff       	sbrs	r16, 4
1019
     946:	0f c0       	rjmp	.+30     	; 0x966 <vfprintf+0x6a4>
1020
     948:	80 e3       	ldi	r24, 0x30	; 48
1021
     94a:	90 e0       	ldi	r25, 0x00	; 0
1022
     94c:	b3 01       	movw	r22, r6
1023
     94e:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
1024
     952:	02 ff       	sbrs	r16, 2
1025
     954:	1d c0       	rjmp	.+58     	; 0x990 <vfprintf+0x6ce>
1026
     956:	01 fd       	sbrc	r16, 1
1027
     958:	03 c0       	rjmp	.+6      	; 0x960 <vfprintf+0x69e>
1028
     95a:	88 e7       	ldi	r24, 0x78	; 120
1029
     95c:	90 e0       	ldi	r25, 0x00	; 0
1030
     95e:	0e c0       	rjmp	.+28     	; 0x97c <vfprintf+0x6ba>
1031
     960:	88 e5       	ldi	r24, 0x58	; 88
1032
     962:	90 e0       	ldi	r25, 0x00	; 0
1033
     964:	0b c0       	rjmp	.+22     	; 0x97c <vfprintf+0x6ba>
1034
     966:	80 2f       	mov	r24, r16
1035
     968:	86 78       	andi	r24, 0x86	; 134
1036
     96a:	91 f0       	breq	.+36     	; 0x990 <vfprintf+0x6ce>
1037
     96c:	01 ff       	sbrs	r16, 1
1038
     96e:	02 c0       	rjmp	.+4      	; 0x974 <vfprintf+0x6b2>
1039
     970:	8b e2       	ldi	r24, 0x2B	; 43
1040
     972:	01 c0       	rjmp	.+2      	; 0x976 <vfprintf+0x6b4>
1041
     974:	80 e2       	ldi	r24, 0x20	; 32
1042
     976:	f7 fc       	sbrc	r15, 7
1043
     978:	8d e2       	ldi	r24, 0x2D	; 45
1044
     97a:	90 e0       	ldi	r25, 0x00	; 0
1045
     97c:	b3 01       	movw	r22, r6
1046
     97e:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
1047
     982:	06 c0       	rjmp	.+12     	; 0x990 <vfprintf+0x6ce>
1048
     984:	80 e3       	ldi	r24, 0x30	; 48
1049
     986:	90 e0       	ldi	r25, 0x00	; 0
1050
     988:	b3 01       	movw	r22, r6
1051
     98a:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
1052
     98e:	9a 94       	dec	r9
1053
     990:	e9 14       	cp	r14, r9
1054
     992:	c0 f3       	brcs	.-16     	; 0x984 <vfprintf+0x6c2>
1055
     994:	ea 94       	dec	r14
1056
     996:	e1 e0       	ldi	r30, 0x01	; 1
1057
     998:	f0 e0       	ldi	r31, 0x00	; 0
1058
     99a:	ec 0f       	add	r30, r28
1059
     99c:	fd 1f       	adc	r31, r29
1060
     99e:	ee 0d       	add	r30, r14
1061
     9a0:	f1 1d       	adc	r31, r1
1062
     9a2:	80 81       	ld	r24, Z
1063
     9a4:	90 e0       	ldi	r25, 0x00	; 0
1064
     9a6:	b3 01       	movw	r22, r6
1065
     9a8:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
1066
     9ac:	ee 20       	and	r14, r14
1067
     9ae:	91 f7       	brne	.-28     	; 0x994 <vfprintf+0x6d2>
1068
     9b0:	06 c0       	rjmp	.+12     	; 0x9be <vfprintf+0x6fc>
1069
     9b2:	80 e2       	ldi	r24, 0x20	; 32
1070
     9b4:	90 e0       	ldi	r25, 0x00	; 0
1071
     9b6:	b3 01       	movw	r22, r6
1072
     9b8:	0e 94 f9 16 	call	0x2df2	; 0x2df2 <fputc>
1073
     9bc:	8a 94       	dec	r8
1074
     9be:	88 20       	and	r8, r8
1075
     9c0:	c1 f7       	brne	.-16     	; 0x9b2 <vfprintf+0x6f0>
1076
     9c2:	97 cc       	rjmp	.-1746   	; 0x2f2 <vfprintf+0x30>
1077
     9c4:	f3 01       	movw	r30, r6
1078
     9c6:	66 81       	ldd	r22, Z+6	; 0x06
1079
     9c8:	77 81       	ldd	r23, Z+7	; 0x07
1080
     9ca:	cb 01       	movw	r24, r22
1081
     9cc:	61 96       	adiw	r28, 0x11	; 17
1082
     9ce:	e2 e1       	ldi	r30, 0x12	; 18
1083
     9d0:	0c 94 cd 17 	jmp	0x2f9a	; 0x2f9a <__epilogue_restores__>
1084

    
1085
000009d4 <digital_input>:
1086
     9d4:	ac 01       	movw	r20, r24
1087
     9d6:	47 70       	andi	r20, 0x07	; 7
1088
     9d8:	50 70       	andi	r21, 0x00	; 0
1089
     9da:	9c 01       	movw	r18, r24
1090
     9dc:	83 e0       	ldi	r24, 0x03	; 3
1091
     9de:	35 95       	asr	r19
1092
     9e0:	27 95       	ror	r18
1093
     9e2:	8a 95       	dec	r24
1094
     9e4:	e1 f7       	brne	.-8      	; 0x9de <digital_input+0xa>
1095
     9e6:	24 30       	cpi	r18, 0x04	; 4
1096
     9e8:	31 05       	cpc	r19, r1
1097
     9ea:	09 f4       	brne	.+2      	; 0x9ee <digital_input+0x1a>
1098
     9ec:	44 c0       	rjmp	.+136    	; 0xa76 <digital_input+0xa2>
1099
     9ee:	25 30       	cpi	r18, 0x05	; 5
1100
     9f0:	31 05       	cpc	r19, r1
1101
     9f2:	54 f4       	brge	.+20     	; 0xa08 <digital_input+0x34>
1102
     9f4:	22 30       	cpi	r18, 0x02	; 2
1103
     9f6:	31 05       	cpc	r19, r1
1104
     9f8:	11 f1       	breq	.+68     	; 0xa3e <digital_input+0x6a>
1105
     9fa:	23 30       	cpi	r18, 0x03	; 3
1106
     9fc:	31 05       	cpc	r19, r1
1107
     9fe:	6c f5       	brge	.+90     	; 0xa5a <digital_input+0x86>
1108
     a00:	21 30       	cpi	r18, 0x01	; 1
1109
     a02:	31 05       	cpc	r19, r1
1110
     a04:	61 f4       	brne	.+24     	; 0xa1e <digital_input+0x4a>
1111
     a06:	0e c0       	rjmp	.+28     	; 0xa24 <digital_input+0x50>
1112
     a08:	26 30       	cpi	r18, 0x06	; 6
1113
     a0a:	31 05       	cpc	r19, r1
1114
     a0c:	09 f4       	brne	.+2      	; 0xa10 <digital_input+0x3c>
1115
     a0e:	4f c0       	rjmp	.+158    	; 0xaae <digital_input+0xda>
1116
     a10:	26 30       	cpi	r18, 0x06	; 6
1117
     a12:	31 05       	cpc	r19, r1
1118
     a14:	f4 f1       	brlt	.+124    	; 0xa92 <digital_input+0xbe>
1119
     a16:	27 30       	cpi	r18, 0x07	; 7
1120
     a18:	31 05       	cpc	r19, r1
1121
     a1a:	09 f4       	brne	.+2      	; 0xa1e <digital_input+0x4a>
1122
     a1c:	69 c0       	rjmp	.+210    	; 0xaf0 <digital_input+0x11c>
1123
     a1e:	8f ef       	ldi	r24, 0xFF	; 255
1124
     a20:	9f ef       	ldi	r25, 0xFF	; 255
1125
     a22:	08 95       	ret
1126
     a24:	8a b3       	in	r24, 0x1a	; 26
1127
     a26:	04 2e       	mov	r0, r20
1128
     a28:	02 c0       	rjmp	.+4      	; 0xa2e <digital_input+0x5a>
1129
     a2a:	22 0f       	add	r18, r18
1130
     a2c:	33 1f       	adc	r19, r19
1131
     a2e:	0a 94       	dec	r0
1132
     a30:	e2 f7       	brpl	.-8      	; 0xa2a <digital_input+0x56>
1133
     a32:	92 2f       	mov	r25, r18
1134
     a34:	90 95       	com	r25
1135
     a36:	98 23       	and	r25, r24
1136
     a38:	9a bb       	out	0x1a, r25	; 26
1137
     a3a:	89 b3       	in	r24, 0x19	; 25
1138
     a3c:	50 c0       	rjmp	.+160    	; 0xade <digital_input+0x10a>
1139
     a3e:	87 b3       	in	r24, 0x17	; 23
1140
     a40:	21 e0       	ldi	r18, 0x01	; 1
1141
     a42:	30 e0       	ldi	r19, 0x00	; 0
1142
     a44:	04 2e       	mov	r0, r20
1143
     a46:	02 c0       	rjmp	.+4      	; 0xa4c <digital_input+0x78>
1144
     a48:	22 0f       	add	r18, r18
1145
     a4a:	33 1f       	adc	r19, r19
1146
     a4c:	0a 94       	dec	r0
1147
     a4e:	e2 f7       	brpl	.-8      	; 0xa48 <digital_input+0x74>
1148
     a50:	20 95       	com	r18
1149
     a52:	28 23       	and	r18, r24
1150
     a54:	27 bb       	out	0x17, r18	; 23
1151
     a56:	86 b3       	in	r24, 0x16	; 22
1152
     a58:	42 c0       	rjmp	.+132    	; 0xade <digital_input+0x10a>
1153
     a5a:	84 b3       	in	r24, 0x14	; 20
1154
     a5c:	21 e0       	ldi	r18, 0x01	; 1
1155
     a5e:	30 e0       	ldi	r19, 0x00	; 0
1156
     a60:	04 2e       	mov	r0, r20
1157
     a62:	02 c0       	rjmp	.+4      	; 0xa68 <digital_input+0x94>
1158
     a64:	22 0f       	add	r18, r18
1159
     a66:	33 1f       	adc	r19, r19
1160
     a68:	0a 94       	dec	r0
1161
     a6a:	e2 f7       	brpl	.-8      	; 0xa64 <digital_input+0x90>
1162
     a6c:	20 95       	com	r18
1163
     a6e:	28 23       	and	r18, r24
1164
     a70:	24 bb       	out	0x14, r18	; 20
1165
     a72:	83 b3       	in	r24, 0x13	; 19
1166
     a74:	34 c0       	rjmp	.+104    	; 0xade <digital_input+0x10a>
1167
     a76:	81 b3       	in	r24, 0x11	; 17
1168
     a78:	21 e0       	ldi	r18, 0x01	; 1
1169
     a7a:	30 e0       	ldi	r19, 0x00	; 0
1170
     a7c:	04 2e       	mov	r0, r20
1171
     a7e:	02 c0       	rjmp	.+4      	; 0xa84 <digital_input+0xb0>
1172
     a80:	22 0f       	add	r18, r18
1173
     a82:	33 1f       	adc	r19, r19
1174
     a84:	0a 94       	dec	r0
1175
     a86:	e2 f7       	brpl	.-8      	; 0xa80 <digital_input+0xac>
1176
     a88:	20 95       	com	r18
1177
     a8a:	28 23       	and	r18, r24
1178
     a8c:	21 bb       	out	0x11, r18	; 17
1179
     a8e:	80 b3       	in	r24, 0x10	; 16
1180
     a90:	26 c0       	rjmp	.+76     	; 0xade <digital_input+0x10a>
1181
     a92:	82 b1       	in	r24, 0x02	; 2
1182
     a94:	21 e0       	ldi	r18, 0x01	; 1
1183
     a96:	30 e0       	ldi	r19, 0x00	; 0
1184
     a98:	04 2e       	mov	r0, r20
1185
     a9a:	02 c0       	rjmp	.+4      	; 0xaa0 <digital_input+0xcc>
1186
     a9c:	22 0f       	add	r18, r18
1187
     a9e:	33 1f       	adc	r19, r19
1188
     aa0:	0a 94       	dec	r0
1189
     aa2:	e2 f7       	brpl	.-8      	; 0xa9c <digital_input+0xc8>
1190
     aa4:	20 95       	com	r18
1191
     aa6:	28 23       	and	r18, r24
1192
     aa8:	22 b9       	out	0x02, r18	; 2
1193
     aaa:	81 b1       	in	r24, 0x01	; 1
1194
     aac:	18 c0       	rjmp	.+48     	; 0xade <digital_input+0x10a>
1195
     aae:	44 30       	cpi	r20, 0x04	; 4
1196
     ab0:	51 05       	cpc	r21, r1
1197
     ab2:	34 f0       	brlt	.+12     	; 0xac0 <digital_input+0xec>
1198
     ab4:	84 b7       	in	r24, 0x34	; 52
1199
     ab6:	80 68       	ori	r24, 0x80	; 128
1200
     ab8:	84 bf       	out	0x34, r24	; 52
1201
     aba:	84 b7       	in	r24, 0x34	; 52
1202
     abc:	80 68       	ori	r24, 0x80	; 128
1203
     abe:	84 bf       	out	0x34, r24	; 52
1204
     ac0:	80 91 61 00 	lds	r24, 0x0061
1205
     ac4:	21 e0       	ldi	r18, 0x01	; 1
1206
     ac6:	30 e0       	ldi	r19, 0x00	; 0
1207
     ac8:	04 2e       	mov	r0, r20
1208
     aca:	02 c0       	rjmp	.+4      	; 0xad0 <digital_input+0xfc>
1209
     acc:	22 0f       	add	r18, r18
1210
     ace:	33 1f       	adc	r19, r19
1211
     ad0:	0a 94       	dec	r0
1212
     ad2:	e2 f7       	brpl	.-8      	; 0xacc <digital_input+0xf8>
1213
     ad4:	20 95       	com	r18
1214
     ad6:	28 23       	and	r18, r24
1215
     ad8:	20 93 61 00 	sts	0x0061, r18
1216
     adc:	80 b1       	in	r24, 0x00	; 0
1217
     ade:	99 27       	eor	r25, r25
1218
     ae0:	02 c0       	rjmp	.+4      	; 0xae6 <digital_input+0x112>
1219
     ae2:	95 95       	asr	r25
1220
     ae4:	87 95       	ror	r24
1221
     ae6:	4a 95       	dec	r20
1222
     ae8:	e2 f7       	brpl	.-8      	; 0xae2 <digital_input+0x10e>
1223
     aea:	81 70       	andi	r24, 0x01	; 1
1224
     aec:	90 70       	andi	r25, 0x00	; 0
1225
     aee:	08 95       	ret
1226
     af0:	80 91 64 00 	lds	r24, 0x0064
1227
     af4:	21 e0       	ldi	r18, 0x01	; 1
1228
     af6:	30 e0       	ldi	r19, 0x00	; 0
1229
     af8:	04 2e       	mov	r0, r20
1230
     afa:	02 c0       	rjmp	.+4      	; 0xb00 <digital_input+0x12c>
1231
     afc:	22 0f       	add	r18, r18
1232
     afe:	33 1f       	adc	r19, r19
1233
     b00:	0a 94       	dec	r0
1234
     b02:	e2 f7       	brpl	.-8      	; 0xafc <digital_input+0x128>
1235
     b04:	20 95       	com	r18
1236
     b06:	28 23       	and	r18, r24
1237
     b08:	20 93 64 00 	sts	0x0064, r18
1238
     b0c:	80 91 63 00 	lds	r24, 0x0063
1239
     b10:	99 27       	eor	r25, r25
1240
     b12:	02 c0       	rjmp	.+4      	; 0xb18 <digital_input+0x144>
1241
     b14:	95 95       	asr	r25
1242
     b16:	87 95       	ror	r24
1243
     b18:	4a 95       	dec	r20
1244
     b1a:	e2 f7       	brpl	.-8      	; 0xb14 <digital_input+0x140>
1245
     b1c:	81 70       	andi	r24, 0x01	; 1
1246
     b1e:	90 70       	andi	r25, 0x00	; 0
1247
     b20:	08 95       	ret
1248

    
1249
00000b22 <digital_pull_up>:
1250
     b22:	ac 01       	movw	r20, r24
1251
     b24:	47 70       	andi	r20, 0x07	; 7
1252
     b26:	50 70       	andi	r21, 0x00	; 0
1253
     b28:	9c 01       	movw	r18, r24
1254
     b2a:	93 e0       	ldi	r25, 0x03	; 3
1255
     b2c:	35 95       	asr	r19
1256
     b2e:	27 95       	ror	r18
1257
     b30:	9a 95       	dec	r25
1258
     b32:	e1 f7       	brne	.-8      	; 0xb2c <digital_pull_up+0xa>
1259
     b34:	24 30       	cpi	r18, 0x04	; 4
1260
     b36:	31 05       	cpc	r19, r1
1261
     b38:	c9 f1       	breq	.+114    	; 0xbac <digital_pull_up+0x8a>
1262
     b3a:	25 30       	cpi	r18, 0x05	; 5
1263
     b3c:	31 05       	cpc	r19, r1
1264
     b3e:	5c f4       	brge	.+22     	; 0xb56 <digital_pull_up+0x34>
1265
     b40:	22 30       	cpi	r18, 0x02	; 2
1266
     b42:	31 05       	cpc	r19, r1
1267
     b44:	e9 f0       	breq	.+58     	; 0xb80 <digital_pull_up+0x5e>
1268
     b46:	23 30       	cpi	r18, 0x03	; 3
1269
     b48:	31 05       	cpc	r19, r1
1270
     b4a:	2c f5       	brge	.+74     	; 0xb96 <digital_pull_up+0x74>
1271
     b4c:	21 30       	cpi	r18, 0x01	; 1
1272
     b4e:	31 05       	cpc	r19, r1
1273
     b50:	09 f0       	breq	.+2      	; 0xb54 <digital_pull_up+0x32>
1274
     b52:	5b c0       	rjmp	.+182    	; 0xc0a <digital_pull_up+0xe8>
1275
     b54:	0c c0       	rjmp	.+24     	; 0xb6e <digital_pull_up+0x4c>
1276
     b56:	26 30       	cpi	r18, 0x06	; 6
1277
     b58:	31 05       	cpc	r19, r1
1278
     b5a:	09 f4       	brne	.+2      	; 0xb5e <digital_pull_up+0x3c>
1279
     b5c:	3d c0       	rjmp	.+122    	; 0xbd8 <digital_pull_up+0xb6>
1280
     b5e:	26 30       	cpi	r18, 0x06	; 6
1281
     b60:	31 05       	cpc	r19, r1
1282
     b62:	7c f1       	brlt	.+94     	; 0xbc2 <digital_pull_up+0xa0>
1283
     b64:	27 30       	cpi	r18, 0x07	; 7
1284
     b66:	31 05       	cpc	r19, r1
1285
     b68:	09 f0       	breq	.+2      	; 0xb6c <digital_pull_up+0x4a>
1286
     b6a:	4f c0       	rjmp	.+158    	; 0xc0a <digital_pull_up+0xe8>
1287
     b6c:	42 c0       	rjmp	.+132    	; 0xbf2 <digital_pull_up+0xd0>
1288
     b6e:	8b b3       	in	r24, 0x1b	; 27
1289
     b70:	02 c0       	rjmp	.+4      	; 0xb76 <digital_pull_up+0x54>
1290
     b72:	22 0f       	add	r18, r18
1291
     b74:	33 1f       	adc	r19, r19
1292
     b76:	4a 95       	dec	r20
1293
     b78:	e2 f7       	brpl	.-8      	; 0xb72 <digital_pull_up+0x50>
1294
     b7a:	82 2b       	or	r24, r18
1295
     b7c:	8b bb       	out	0x1b, r24	; 27
1296
     b7e:	08 95       	ret
1297
     b80:	28 b3       	in	r18, 0x18	; 24
1298
     b82:	81 e0       	ldi	r24, 0x01	; 1
1299
     b84:	90 e0       	ldi	r25, 0x00	; 0
1300
     b86:	02 c0       	rjmp	.+4      	; 0xb8c <digital_pull_up+0x6a>
1301
     b88:	88 0f       	add	r24, r24
1302
     b8a:	99 1f       	adc	r25, r25
1303
     b8c:	4a 95       	dec	r20
1304
     b8e:	e2 f7       	brpl	.-8      	; 0xb88 <digital_pull_up+0x66>
1305
     b90:	28 2b       	or	r18, r24
1306
     b92:	28 bb       	out	0x18, r18	; 24
1307
     b94:	08 95       	ret
1308
     b96:	25 b3       	in	r18, 0x15	; 21
1309
     b98:	81 e0       	ldi	r24, 0x01	; 1
1310
     b9a:	90 e0       	ldi	r25, 0x00	; 0
1311
     b9c:	02 c0       	rjmp	.+4      	; 0xba2 <digital_pull_up+0x80>
1312
     b9e:	88 0f       	add	r24, r24
1313
     ba0:	99 1f       	adc	r25, r25
1314
     ba2:	4a 95       	dec	r20
1315
     ba4:	e2 f7       	brpl	.-8      	; 0xb9e <digital_pull_up+0x7c>
1316
     ba6:	28 2b       	or	r18, r24
1317
     ba8:	25 bb       	out	0x15, r18	; 21
1318
     baa:	08 95       	ret
1319
     bac:	22 b3       	in	r18, 0x12	; 18
1320
     bae:	81 e0       	ldi	r24, 0x01	; 1
1321
     bb0:	90 e0       	ldi	r25, 0x00	; 0
1322
     bb2:	02 c0       	rjmp	.+4      	; 0xbb8 <digital_pull_up+0x96>
1323
     bb4:	88 0f       	add	r24, r24
1324
     bb6:	99 1f       	adc	r25, r25
1325
     bb8:	4a 95       	dec	r20
1326
     bba:	e2 f7       	brpl	.-8      	; 0xbb4 <digital_pull_up+0x92>
1327
     bbc:	28 2b       	or	r18, r24
1328
     bbe:	22 bb       	out	0x12, r18	; 18
1329
     bc0:	08 95       	ret
1330
     bc2:	23 b1       	in	r18, 0x03	; 3
1331
     bc4:	81 e0       	ldi	r24, 0x01	; 1
1332
     bc6:	90 e0       	ldi	r25, 0x00	; 0
1333
     bc8:	02 c0       	rjmp	.+4      	; 0xbce <digital_pull_up+0xac>
1334
     bca:	88 0f       	add	r24, r24
1335
     bcc:	99 1f       	adc	r25, r25
1336
     bce:	4a 95       	dec	r20
1337
     bd0:	e2 f7       	brpl	.-8      	; 0xbca <digital_pull_up+0xa8>
1338
     bd2:	28 2b       	or	r18, r24
1339
     bd4:	23 b9       	out	0x03, r18	; 3
1340
     bd6:	08 95       	ret
1341
     bd8:	20 91 62 00 	lds	r18, 0x0062
1342
     bdc:	81 e0       	ldi	r24, 0x01	; 1
1343
     bde:	90 e0       	ldi	r25, 0x00	; 0
1344
     be0:	02 c0       	rjmp	.+4      	; 0xbe6 <digital_pull_up+0xc4>
1345
     be2:	88 0f       	add	r24, r24
1346
     be4:	99 1f       	adc	r25, r25
1347
     be6:	4a 95       	dec	r20
1348
     be8:	e2 f7       	brpl	.-8      	; 0xbe2 <digital_pull_up+0xc0>
1349
     bea:	28 2b       	or	r18, r24
1350
     bec:	20 93 62 00 	sts	0x0062, r18
1351
     bf0:	08 95       	ret
1352
     bf2:	20 91 65 00 	lds	r18, 0x0065
1353
     bf6:	81 e0       	ldi	r24, 0x01	; 1
1354
     bf8:	90 e0       	ldi	r25, 0x00	; 0
1355
     bfa:	02 c0       	rjmp	.+4      	; 0xc00 <digital_pull_up+0xde>
1356
     bfc:	88 0f       	add	r24, r24
1357
     bfe:	99 1f       	adc	r25, r25
1358
     c00:	4a 95       	dec	r20
1359
     c02:	e2 f7       	brpl	.-8      	; 0xbfc <digital_pull_up+0xda>
1360
     c04:	28 2b       	or	r18, r24
1361
     c06:	20 93 65 00 	sts	0x0065, r18
1362
     c0a:	08 95       	ret
1363

    
1364
00000c0c <digital_output>:
1365
     c0c:	ac 01       	movw	r20, r24
1366
     c0e:	47 70       	andi	r20, 0x07	; 7
1367
     c10:	50 70       	andi	r21, 0x00	; 0
1368
     c12:	9c 01       	movw	r18, r24
1369
     c14:	53 e0       	ldi	r21, 0x03	; 3
1370
     c16:	35 95       	asr	r19
1371
     c18:	27 95       	ror	r18
1372
     c1a:	5a 95       	dec	r21
1373
     c1c:	e1 f7       	brne	.-8      	; 0xc16 <digital_output+0xa>
1374
     c1e:	67 2b       	or	r22, r23
1375
     c20:	09 f0       	breq	.+2      	; 0xc24 <digital_output+0x18>
1376
     c22:	88 c0       	rjmp	.+272    	; 0xd34 <digital_output+0x128>
1377
     c24:	24 30       	cpi	r18, 0x04	; 4
1378
     c26:	31 05       	cpc	r19, r1
1379
     c28:	09 f4       	brne	.+2      	; 0xc2c <digital_output+0x20>
1380
     c2a:	44 c0       	rjmp	.+136    	; 0xcb4 <digital_output+0xa8>
1381
     c2c:	25 30       	cpi	r18, 0x05	; 5
1382
     c2e:	31 05       	cpc	r19, r1
1383
     c30:	5c f4       	brge	.+22     	; 0xc48 <digital_output+0x3c>
1384
     c32:	22 30       	cpi	r18, 0x02	; 2
1385
     c34:	31 05       	cpc	r19, r1
1386
     c36:	11 f1       	breq	.+68     	; 0xc7c <digital_output+0x70>
1387
     c38:	23 30       	cpi	r18, 0x03	; 3
1388
     c3a:	31 05       	cpc	r19, r1
1389
     c3c:	6c f5       	brge	.+90     	; 0xc98 <digital_output+0x8c>
1390
     c3e:	21 30       	cpi	r18, 0x01	; 1
1391
     c40:	31 05       	cpc	r19, r1
1392
     c42:	09 f0       	breq	.+2      	; 0xc46 <digital_output+0x3a>
1393
     c44:	fe c0       	rjmp	.+508    	; 0xe42 <digital_output+0x236>
1394
     c46:	0d c0       	rjmp	.+26     	; 0xc62 <digital_output+0x56>
1395
     c48:	26 30       	cpi	r18, 0x06	; 6
1396
     c4a:	31 05       	cpc	r19, r1
1397
     c4c:	09 f4       	brne	.+2      	; 0xc50 <digital_output+0x44>
1398
     c4e:	4e c0       	rjmp	.+156    	; 0xcec <digital_output+0xe0>
1399
     c50:	26 30       	cpi	r18, 0x06	; 6
1400
     c52:	31 05       	cpc	r19, r1
1401
     c54:	0c f4       	brge	.+2      	; 0xc58 <digital_output+0x4c>
1402
     c56:	3c c0       	rjmp	.+120    	; 0xcd0 <digital_output+0xc4>
1403
     c58:	27 30       	cpi	r18, 0x07	; 7
1404
     c5a:	31 05       	cpc	r19, r1
1405
     c5c:	09 f0       	breq	.+2      	; 0xc60 <digital_output+0x54>
1406
     c5e:	f1 c0       	rjmp	.+482    	; 0xe42 <digital_output+0x236>
1407
     c60:	56 c0       	rjmp	.+172    	; 0xd0e <digital_output+0x102>
1408
     c62:	8a b3       	in	r24, 0x1a	; 26
1409
     c64:	02 c0       	rjmp	.+4      	; 0xc6a <digital_output+0x5e>
1410
     c66:	22 0f       	add	r18, r18
1411
     c68:	33 1f       	adc	r19, r19
1412
     c6a:	4a 95       	dec	r20
1413
     c6c:	e2 f7       	brpl	.-8      	; 0xc66 <digital_output+0x5a>
1414
     c6e:	82 2b       	or	r24, r18
1415
     c70:	8a bb       	out	0x1a, r24	; 26
1416
     c72:	8b b3       	in	r24, 0x1b	; 27
1417
     c74:	20 95       	com	r18
1418
     c76:	28 23       	and	r18, r24
1419
     c78:	2b bb       	out	0x1b, r18	; 27
1420
     c7a:	08 95       	ret
1421
     c7c:	87 b3       	in	r24, 0x17	; 23
1422
     c7e:	21 e0       	ldi	r18, 0x01	; 1
1423
     c80:	30 e0       	ldi	r19, 0x00	; 0
1424
     c82:	02 c0       	rjmp	.+4      	; 0xc88 <digital_output+0x7c>
1425
     c84:	22 0f       	add	r18, r18
1426
     c86:	33 1f       	adc	r19, r19
1427
     c88:	4a 95       	dec	r20
1428
     c8a:	e2 f7       	brpl	.-8      	; 0xc84 <digital_output+0x78>
1429
     c8c:	82 2b       	or	r24, r18
1430
     c8e:	87 bb       	out	0x17, r24	; 23
1431
     c90:	88 b3       	in	r24, 0x18	; 24
1432
     c92:	20 95       	com	r18
1433
     c94:	28 23       	and	r18, r24
1434
     c96:	86 c0       	rjmp	.+268    	; 0xda4 <digital_output+0x198>
1435
     c98:	84 b3       	in	r24, 0x14	; 20
1436
     c9a:	21 e0       	ldi	r18, 0x01	; 1
1437
     c9c:	30 e0       	ldi	r19, 0x00	; 0
1438
     c9e:	02 c0       	rjmp	.+4      	; 0xca4 <digital_output+0x98>
1439
     ca0:	22 0f       	add	r18, r18
1440
     ca2:	33 1f       	adc	r19, r19
1441
     ca4:	4a 95       	dec	r20
1442
     ca6:	e2 f7       	brpl	.-8      	; 0xca0 <digital_output+0x94>
1443
     ca8:	82 2b       	or	r24, r18
1444
     caa:	84 bb       	out	0x14, r24	; 20
1445
     cac:	85 b3       	in	r24, 0x15	; 21
1446
     cae:	20 95       	com	r18
1447
     cb0:	28 23       	and	r18, r24
1448
     cb2:	86 c0       	rjmp	.+268    	; 0xdc0 <digital_output+0x1b4>
1449
     cb4:	81 b3       	in	r24, 0x11	; 17
1450
     cb6:	21 e0       	ldi	r18, 0x01	; 1
1451
     cb8:	30 e0       	ldi	r19, 0x00	; 0
1452
     cba:	02 c0       	rjmp	.+4      	; 0xcc0 <digital_output+0xb4>
1453
     cbc:	22 0f       	add	r18, r18
1454
     cbe:	33 1f       	adc	r19, r19
1455
     cc0:	4a 95       	dec	r20
1456
     cc2:	e2 f7       	brpl	.-8      	; 0xcbc <digital_output+0xb0>
1457
     cc4:	82 2b       	or	r24, r18
1458
     cc6:	81 bb       	out	0x11, r24	; 17
1459
     cc8:	82 b3       	in	r24, 0x12	; 18
1460
     cca:	20 95       	com	r18
1461
     ccc:	28 23       	and	r18, r24
1462
     cce:	86 c0       	rjmp	.+268    	; 0xddc <digital_output+0x1d0>
1463
     cd0:	82 b1       	in	r24, 0x02	; 2
1464
     cd2:	21 e0       	ldi	r18, 0x01	; 1
1465
     cd4:	30 e0       	ldi	r19, 0x00	; 0
1466
     cd6:	02 c0       	rjmp	.+4      	; 0xcdc <digital_output+0xd0>
1467
     cd8:	22 0f       	add	r18, r18
1468
     cda:	33 1f       	adc	r19, r19
1469
     cdc:	4a 95       	dec	r20
1470
     cde:	e2 f7       	brpl	.-8      	; 0xcd8 <digital_output+0xcc>
1471
     ce0:	82 2b       	or	r24, r18
1472
     ce2:	82 b9       	out	0x02, r24	; 2
1473
     ce4:	83 b1       	in	r24, 0x03	; 3
1474
     ce6:	20 95       	com	r18
1475
     ce8:	28 23       	and	r18, r24
1476
     cea:	86 c0       	rjmp	.+268    	; 0xdf8 <digital_output+0x1ec>
1477
     cec:	80 91 61 00 	lds	r24, 0x0061
1478
     cf0:	21 e0       	ldi	r18, 0x01	; 1
1479
     cf2:	30 e0       	ldi	r19, 0x00	; 0
1480
     cf4:	02 c0       	rjmp	.+4      	; 0xcfa <digital_output+0xee>
1481
     cf6:	22 0f       	add	r18, r18
1482
     cf8:	33 1f       	adc	r19, r19
1483
     cfa:	4a 95       	dec	r20
1484
     cfc:	e2 f7       	brpl	.-8      	; 0xcf6 <digital_output+0xea>
1485
     cfe:	82 2b       	or	r24, r18
1486
     d00:	80 93 61 00 	sts	0x0061, r24
1487
     d04:	80 91 62 00 	lds	r24, 0x0062
1488
     d08:	20 95       	com	r18
1489
     d0a:	28 23       	and	r18, r24
1490
     d0c:	86 c0       	rjmp	.+268    	; 0xe1a <digital_output+0x20e>
1491
     d0e:	80 91 64 00 	lds	r24, 0x0064
1492
     d12:	21 e0       	ldi	r18, 0x01	; 1
1493
     d14:	30 e0       	ldi	r19, 0x00	; 0
1494
     d16:	02 c0       	rjmp	.+4      	; 0xd1c <digital_output+0x110>
1495
     d18:	22 0f       	add	r18, r18
1496
     d1a:	33 1f       	adc	r19, r19
1497
     d1c:	4a 95       	dec	r20
1498
     d1e:	e2 f7       	brpl	.-8      	; 0xd18 <digital_output+0x10c>
1499
     d20:	82 2b       	or	r24, r18
1500
     d22:	80 93 64 00 	sts	0x0064, r24
1501
     d26:	80 91 65 00 	lds	r24, 0x0065
1502
     d2a:	20 95       	com	r18
1503
     d2c:	28 23       	and	r18, r24
1504
     d2e:	20 93 65 00 	sts	0x0065, r18
1505
     d32:	08 95       	ret
1506
     d34:	24 30       	cpi	r18, 0x04	; 4
1507
     d36:	31 05       	cpc	r19, r1
1508
     d38:	09 f4       	brne	.+2      	; 0xd3c <digital_output+0x130>
1509
     d3a:	44 c0       	rjmp	.+136    	; 0xdc4 <digital_output+0x1b8>
1510
     d3c:	25 30       	cpi	r18, 0x05	; 5
1511
     d3e:	31 05       	cpc	r19, r1
1512
     d40:	5c f4       	brge	.+22     	; 0xd58 <digital_output+0x14c>
1513
     d42:	22 30       	cpi	r18, 0x02	; 2
1514
     d44:	31 05       	cpc	r19, r1
1515
     d46:	11 f1       	breq	.+68     	; 0xd8c <digital_output+0x180>
1516
     d48:	23 30       	cpi	r18, 0x03	; 3
1517
     d4a:	31 05       	cpc	r19, r1
1518
     d4c:	6c f5       	brge	.+90     	; 0xda8 <digital_output+0x19c>
1519
     d4e:	21 30       	cpi	r18, 0x01	; 1
1520
     d50:	31 05       	cpc	r19, r1
1521
     d52:	09 f0       	breq	.+2      	; 0xd56 <digital_output+0x14a>
1522
     d54:	76 c0       	rjmp	.+236    	; 0xe42 <digital_output+0x236>
1523
     d56:	0d c0       	rjmp	.+26     	; 0xd72 <digital_output+0x166>
1524
     d58:	26 30       	cpi	r18, 0x06	; 6
1525
     d5a:	31 05       	cpc	r19, r1
1526
     d5c:	09 f4       	brne	.+2      	; 0xd60 <digital_output+0x154>
1527
     d5e:	4e c0       	rjmp	.+156    	; 0xdfc <digital_output+0x1f0>
1528
     d60:	26 30       	cpi	r18, 0x06	; 6
1529
     d62:	31 05       	cpc	r19, r1
1530
     d64:	0c f4       	brge	.+2      	; 0xd68 <digital_output+0x15c>
1531
     d66:	3c c0       	rjmp	.+120    	; 0xde0 <digital_output+0x1d4>
1532
     d68:	27 30       	cpi	r18, 0x07	; 7
1533
     d6a:	31 05       	cpc	r19, r1
1534
     d6c:	09 f0       	breq	.+2      	; 0xd70 <digital_output+0x164>
1535
     d6e:	69 c0       	rjmp	.+210    	; 0xe42 <digital_output+0x236>
1536
     d70:	57 c0       	rjmp	.+174    	; 0xe20 <digital_output+0x214>
1537
     d72:	8a b3       	in	r24, 0x1a	; 26
1538
     d74:	02 c0       	rjmp	.+4      	; 0xd7a <digital_output+0x16e>
1539
     d76:	22 0f       	add	r18, r18
1540
     d78:	33 1f       	adc	r19, r19
1541
     d7a:	4a 95       	dec	r20
1542
     d7c:	e2 f7       	brpl	.-8      	; 0xd76 <digital_output+0x16a>
1543
     d7e:	92 2f       	mov	r25, r18
1544
     d80:	82 2b       	or	r24, r18
1545
     d82:	8a bb       	out	0x1a, r24	; 26
1546
     d84:	8b b3       	in	r24, 0x1b	; 27
1547
     d86:	98 2b       	or	r25, r24
1548
     d88:	9b bb       	out	0x1b, r25	; 27
1549
     d8a:	08 95       	ret
1550
     d8c:	87 b3       	in	r24, 0x17	; 23
1551
     d8e:	21 e0       	ldi	r18, 0x01	; 1
1552
     d90:	30 e0       	ldi	r19, 0x00	; 0
1553
     d92:	02 c0       	rjmp	.+4      	; 0xd98 <digital_output+0x18c>
1554
     d94:	22 0f       	add	r18, r18
1555
     d96:	33 1f       	adc	r19, r19
1556
     d98:	4a 95       	dec	r20
1557
     d9a:	e2 f7       	brpl	.-8      	; 0xd94 <digital_output+0x188>
1558
     d9c:	82 2b       	or	r24, r18
1559
     d9e:	87 bb       	out	0x17, r24	; 23
1560
     da0:	88 b3       	in	r24, 0x18	; 24
1561
     da2:	28 2b       	or	r18, r24
1562
     da4:	28 bb       	out	0x18, r18	; 24
1563
     da6:	08 95       	ret
1564
     da8:	84 b3       	in	r24, 0x14	; 20
1565
     daa:	21 e0       	ldi	r18, 0x01	; 1
1566
     dac:	30 e0       	ldi	r19, 0x00	; 0
1567
     dae:	02 c0       	rjmp	.+4      	; 0xdb4 <digital_output+0x1a8>
1568
     db0:	22 0f       	add	r18, r18
1569
     db2:	33 1f       	adc	r19, r19
1570
     db4:	4a 95       	dec	r20
1571
     db6:	e2 f7       	brpl	.-8      	; 0xdb0 <digital_output+0x1a4>
1572
     db8:	82 2b       	or	r24, r18
1573
     dba:	84 bb       	out	0x14, r24	; 20
1574
     dbc:	85 b3       	in	r24, 0x15	; 21
1575
     dbe:	28 2b       	or	r18, r24
1576
     dc0:	25 bb       	out	0x15, r18	; 21
1577
     dc2:	08 95       	ret
1578
     dc4:	81 b3       	in	r24, 0x11	; 17
1579
     dc6:	21 e0       	ldi	r18, 0x01	; 1
1580
     dc8:	30 e0       	ldi	r19, 0x00	; 0
1581
     dca:	02 c0       	rjmp	.+4      	; 0xdd0 <digital_output+0x1c4>
1582
     dcc:	22 0f       	add	r18, r18
1583
     dce:	33 1f       	adc	r19, r19
1584
     dd0:	4a 95       	dec	r20
1585
     dd2:	e2 f7       	brpl	.-8      	; 0xdcc <digital_output+0x1c0>
1586
     dd4:	82 2b       	or	r24, r18
1587
     dd6:	81 bb       	out	0x11, r24	; 17
1588
     dd8:	82 b3       	in	r24, 0x12	; 18
1589
     dda:	28 2b       	or	r18, r24
1590
     ddc:	22 bb       	out	0x12, r18	; 18
1591
     dde:	08 95       	ret
1592
     de0:	82 b1       	in	r24, 0x02	; 2
1593
     de2:	21 e0       	ldi	r18, 0x01	; 1
1594
     de4:	30 e0       	ldi	r19, 0x00	; 0
1595
     de6:	02 c0       	rjmp	.+4      	; 0xdec <digital_output+0x1e0>
1596
     de8:	22 0f       	add	r18, r18
1597
     dea:	33 1f       	adc	r19, r19
1598
     dec:	4a 95       	dec	r20
1599
     dee:	e2 f7       	brpl	.-8      	; 0xde8 <digital_output+0x1dc>
1600
     df0:	82 2b       	or	r24, r18
1601
     df2:	82 b9       	out	0x02, r24	; 2
1602
     df4:	83 b1       	in	r24, 0x03	; 3
1603
     df6:	28 2b       	or	r18, r24
1604
     df8:	23 b9       	out	0x03, r18	; 3
1605
     dfa:	08 95       	ret
1606
     dfc:	80 91 61 00 	lds	r24, 0x0061
1607
     e00:	21 e0       	ldi	r18, 0x01	; 1
1608
     e02:	30 e0       	ldi	r19, 0x00	; 0
1609
     e04:	02 c0       	rjmp	.+4      	; 0xe0a <digital_output+0x1fe>
1610
     e06:	22 0f       	add	r18, r18
1611
     e08:	33 1f       	adc	r19, r19
1612
     e0a:	4a 95       	dec	r20
1613
     e0c:	e2 f7       	brpl	.-8      	; 0xe06 <digital_output+0x1fa>
1614
     e0e:	82 2b       	or	r24, r18
1615
     e10:	80 93 61 00 	sts	0x0061, r24
1616
     e14:	80 91 62 00 	lds	r24, 0x0062
1617
     e18:	28 2b       	or	r18, r24
1618
     e1a:	20 93 62 00 	sts	0x0062, r18
1619
     e1e:	08 95       	ret
1620
     e20:	80 91 64 00 	lds	r24, 0x0064
1621
     e24:	21 e0       	ldi	r18, 0x01	; 1
1622
     e26:	30 e0       	ldi	r19, 0x00	; 0
1623
     e28:	02 c0       	rjmp	.+4      	; 0xe2e <digital_output+0x222>
1624
     e2a:	22 0f       	add	r18, r18
1625
     e2c:	33 1f       	adc	r19, r19
1626
     e2e:	4a 95       	dec	r20
1627
     e30:	e2 f7       	brpl	.-8      	; 0xe2a <digital_output+0x21e>
1628
     e32:	82 2b       	or	r24, r18
1629
     e34:	80 93 64 00 	sts	0x0064, r24
1630
     e38:	80 91 65 00 	lds	r24, 0x0065
1631
     e3c:	28 2b       	or	r18, r24
1632
     e3e:	20 93 65 00 	sts	0x0065, r18
1633
     e42:	08 95       	ret
1634

    
1635
00000e44 <button1_read>:
1636
     e44:	e4 e6       	ldi	r30, 0x64	; 100
1637
     e46:	f0 e0       	ldi	r31, 0x00	; 0
1638
     e48:	80 81       	ld	r24, Z
1639
     e4a:	8e 7f       	andi	r24, 0xFE	; 254
1640
     e4c:	80 83       	st	Z, r24
1641
     e4e:	e5 e6       	ldi	r30, 0x65	; 101
1642
     e50:	f0 e0       	ldi	r31, 0x00	; 0
1643
     e52:	80 81       	ld	r24, Z
1644
     e54:	81 60       	ori	r24, 0x01	; 1
1645
     e56:	80 83       	st	Z, r24
1646
     e58:	80 91 63 00 	lds	r24, 0x0063
1647
     e5c:	99 27       	eor	r25, r25
1648
     e5e:	80 95       	com	r24
1649
     e60:	90 95       	com	r25
1650
     e62:	81 70       	andi	r24, 0x01	; 1
1651
     e64:	90 70       	andi	r25, 0x00	; 0
1652
     e66:	08 95       	ret
1653

    
1654
00000e68 <button1_click>:
1655
     e68:	0e 94 22 07 	call	0xe44	; 0xe44 <button1_read>
1656
     e6c:	89 2b       	or	r24, r25
1657
     e6e:	19 f4       	brne	.+6      	; 0xe76 <button1_click+0xe>
1658
     e70:	80 e0       	ldi	r24, 0x00	; 0
1659
     e72:	90 e0       	ldi	r25, 0x00	; 0
1660
     e74:	08 95       	ret
1661
     e76:	0e 94 22 07 	call	0xe44	; 0xe44 <button1_read>
1662
     e7a:	89 2b       	or	r24, r25
1663
     e7c:	e1 f7       	brne	.-8      	; 0xe76 <button1_click+0xe>
1664
     e7e:	81 e0       	ldi	r24, 0x01	; 1
1665
     e80:	90 e0       	ldi	r25, 0x00	; 0
1666
     e82:	08 95       	ret
1667

    
1668
00000e84 <button2_read>:
1669
     e84:	e4 e6       	ldi	r30, 0x64	; 100
1670
     e86:	f0 e0       	ldi	r31, 0x00	; 0
1671
     e88:	80 81       	ld	r24, Z
1672
     e8a:	8d 7f       	andi	r24, 0xFD	; 253
1673
     e8c:	80 83       	st	Z, r24
1674
     e8e:	e5 e6       	ldi	r30, 0x65	; 101
1675
     e90:	f0 e0       	ldi	r31, 0x00	; 0
1676
     e92:	80 81       	ld	r24, Z
1677
     e94:	82 60       	ori	r24, 0x02	; 2
1678
     e96:	80 83       	st	Z, r24
1679
     e98:	80 91 63 00 	lds	r24, 0x0063
1680
     e9c:	99 27       	eor	r25, r25
1681
     e9e:	96 95       	lsr	r25
1682
     ea0:	87 95       	ror	r24
1683
     ea2:	80 95       	com	r24
1684
     ea4:	90 95       	com	r25
1685
     ea6:	81 70       	andi	r24, 0x01	; 1
1686
     ea8:	90 70       	andi	r25, 0x00	; 0
1687
     eaa:	08 95       	ret
1688

    
1689
00000eac <button2_click>:
1690
     eac:	0e 94 42 07 	call	0xe84	; 0xe84 <button2_read>
1691
     eb0:	89 2b       	or	r24, r25
1692
     eb2:	19 f4       	brne	.+6      	; 0xeba <button2_click+0xe>
1693
     eb4:	80 e0       	ldi	r24, 0x00	; 0
1694
     eb6:	90 e0       	ldi	r25, 0x00	; 0
1695
     eb8:	08 95       	ret
1696
     eba:	0e 94 42 07 	call	0xe84	; 0xe84 <button2_read>
1697
     ebe:	89 2b       	or	r24, r25
1698
     ec0:	e1 f7       	brne	.-8      	; 0xeba <button2_click+0xe>
1699
     ec2:	81 e0       	ldi	r24, 0x01	; 1
1700
     ec4:	90 e0       	ldi	r25, 0x00	; 0
1701
     ec6:	08 95       	ret
1702

    
1703
00000ec8 <button2_wait>:
1704
     ec8:	04 c0       	rjmp	.+8      	; 0xed2 <button2_wait+0xa>
1705
     eca:	8f e0       	ldi	r24, 0x0F	; 15
1706
     ecc:	90 e0       	ldi	r25, 0x00	; 0
1707
     ece:	0e 94 9b 12 	call	0x2536	; 0x2536 <delay_ms>
1708
     ed2:	0e 94 42 07 	call	0xe84	; 0xe84 <button2_read>
1709
     ed6:	89 2b       	or	r24, r25
1710
     ed8:	c1 f3       	breq	.-16     	; 0xeca <button2_wait+0x2>
1711
     eda:	08 95       	ret
1712

    
1713
00000edc <button1_wait>:
1714
     edc:	04 c0       	rjmp	.+8      	; 0xee6 <button1_wait+0xa>
1715
     ede:	8f e0       	ldi	r24, 0x0F	; 15
1716
     ee0:	90 e0       	ldi	r25, 0x00	; 0
1717
     ee2:	0e 94 9b 12 	call	0x2536	; 0x2536 <delay_ms>
1718
     ee6:	0e 94 22 07 	call	0xe44	; 0xe44 <button1_read>
1719
     eea:	89 2b       	or	r24, r25
1720
     eec:	c1 f3       	breq	.-16     	; 0xede <button1_wait+0x2>
1721
     eee:	08 95       	ret
1722

    
1723
00000ef0 <flash_red>:
1724
     ef0:	ff 92       	push	r15
1725
     ef2:	0f 93       	push	r16
1726
     ef4:	1f 93       	push	r17
1727
     ef6:	f8 94       	cli
1728
     ef8:	f4 b2       	in	r15, 0x14	; 20
1729
     efa:	05 b3       	in	r16, 0x15	; 21
1730
     efc:	87 e7       	ldi	r24, 0x77	; 119
1731
     efe:	84 bb       	out	0x14, r24	; 20
1732
     f00:	10 e0       	ldi	r17, 0x00	; 0
1733
     f02:	87 e7       	ldi	r24, 0x77	; 119
1734
     f04:	85 bb       	out	0x15, r24	; 21
1735
     f06:	8c e2       	ldi	r24, 0x2C	; 44
1736
     f08:	91 e0       	ldi	r25, 0x01	; 1
1737
     f0a:	0e 94 9b 12 	call	0x2536	; 0x2536 <delay_ms>
1738
     f0e:	86 e6       	ldi	r24, 0x66	; 102
1739
     f10:	85 bb       	out	0x15, r24	; 21
1740
     f12:	8c e2       	ldi	r24, 0x2C	; 44
1741
     f14:	91 e0       	ldi	r25, 0x01	; 1
1742
     f16:	0e 94 9b 12 	call	0x2536	; 0x2536 <delay_ms>
1743
     f1a:	1f 5f       	subi	r17, 0xFF	; 255
1744
     f1c:	13 30       	cpi	r17, 0x03	; 3
1745
     f1e:	89 f7       	brne	.-30     	; 0xf02 <flash_red+0x12>
1746
     f20:	f4 ba       	out	0x14, r15	; 20
1747
     f22:	05 bb       	out	0x15, r16	; 21
1748
     f24:	78 94       	sei
1749
     f26:	1f 91       	pop	r17
1750
     f28:	0f 91       	pop	r16
1751
     f2a:	ff 90       	pop	r15
1752
     f2c:	08 95       	ret
1753

    
1754
00000f2e <dragonfly_init>:
1755
     f2e:	cf 93       	push	r28
1756
     f30:	df 93       	push	r29
1757
     f32:	ec 01       	movw	r28, r24
1758
     f34:	78 94       	sei
1759
     f36:	80 91 64 00 	lds	r24, 0x0064
1760
     f3a:	8c 7f       	andi	r24, 0xFC	; 252
1761
     f3c:	80 93 64 00 	sts	0x0064, r24
1762
     f40:	80 91 65 00 	lds	r24, 0x0065
1763
     f44:	83 60       	ori	r24, 0x03	; 3
1764
     f46:	80 93 65 00 	sts	0x0065, r24
1765
     f4a:	c0 ff       	sbrs	r28, 0
1766
     f4c:	04 c0       	rjmp	.+8      	; 0xf56 <dragonfly_init+0x28>
1767
     f4e:	81 e0       	ldi	r24, 0x01	; 1
1768
     f50:	90 e0       	ldi	r25, 0x00	; 0
1769
     f52:	0e 94 a0 13 	call	0x2740	; 0x2740 <analog_init>
1770
     f56:	c1 ff       	sbrs	r28, 1
1771
     f58:	04 c0       	rjmp	.+8      	; 0xf62 <dragonfly_init+0x34>
1772
     f5a:	0e 94 01 11 	call	0x2202	; 0x2202 <usb_init>
1773
     f5e:	0e 94 0f 11 	call	0x221e	; 0x221e <xbee_init>
1774
     f62:	c6 ff       	sbrs	r28, 6
1775
     f64:	03 c0       	rjmp	.+6      	; 0xf6c <dragonfly_init+0x3e>
1776
     f66:	78 94       	sei
1777
     f68:	0e 94 cf 15 	call	0x2b9e	; 0x2b9e <buzzer_init>
1778
     f6c:	c2 ff       	sbrs	r28, 2
1779
     f6e:	03 c0       	rjmp	.+6      	; 0xf76 <dragonfly_init+0x48>
1780
     f70:	78 94       	sei
1781
     f72:	0e 94 96 10 	call	0x212c	; 0x212c <orb_init>
1782
     f76:	c3 ff       	sbrs	r28, 3
1783
     f78:	02 c0       	rjmp	.+4      	; 0xf7e <dragonfly_init+0x50>
1784
     f7a:	0e 94 99 10 	call	0x2132	; 0x2132 <motors_init>
1785
     f7e:	c7 ff       	sbrs	r28, 7
1786
     f80:	02 c0       	rjmp	.+4      	; 0xf86 <dragonfly_init+0x58>
1787
     f82:	0e 94 25 0c 	call	0x184a	; 0x184a <lcd_init>
1788
     f86:	d0 ff       	sbrs	r29, 0
1789
     f88:	02 c0       	rjmp	.+4      	; 0xf8e <dragonfly_init+0x60>
1790
     f8a:	0e 94 fa 10 	call	0x21f4	; 0x21f4 <range_init>
1791
     f8e:	d1 ff       	sbrs	r29, 1
1792
     f90:	09 c0       	rjmp	.+18     	; 0xfa4 <dragonfly_init+0x76>
1793
     f92:	0e 94 21 08 	call	0x1042	; 0x1042 <get_bom_type>
1794
     f96:	8f 3f       	cpi	r24, 0xFF	; 255
1795
     f98:	19 f4       	brne	.+6      	; 0xfa0 <dragonfly_init+0x72>
1796
     f9a:	0e 94 78 07 	call	0xef0	; 0xef0 <flash_red>
1797
     f9e:	02 c0       	rjmp	.+4      	; 0xfa4 <dragonfly_init+0x76>
1798
     fa0:	0e 94 f6 14 	call	0x29ec	; 0x29ec <bom_init>
1799
     fa4:	80 ea       	ldi	r24, 0xA0	; 160
1800
     fa6:	9f e0       	ldi	r25, 0x0F	; 15
1801
     fa8:	01 97       	sbiw	r24, 0x01	; 1
1802
     faa:	f1 f7       	brne	.-4      	; 0xfa8 <dragonfly_init+0x7a>
1803
     fac:	df 91       	pop	r29
1804
     fae:	cf 91       	pop	r28
1805
     fb0:	08 95       	ret
1806

    
1807
00000fb2 <eeprom_put_byte>:
1808
     fb2:	e1 99       	sbic	0x1c, 1	; 28
1809
     fb4:	fe cf       	rjmp	.-4      	; 0xfb2 <eeprom_put_byte>
1810
     fb6:	9f bb       	out	0x1f, r25	; 31
1811
     fb8:	8e bb       	out	0x1e, r24	; 30
1812
     fba:	6d bb       	out	0x1d, r22	; 29
1813
     fbc:	e2 9a       	sbi	0x1c, 2	; 28
1814
     fbe:	e1 9a       	sbi	0x1c, 1	; 28
1815
     fc0:	80 e0       	ldi	r24, 0x00	; 0
1816
     fc2:	90 e0       	ldi	r25, 0x00	; 0
1817
     fc4:	08 95       	ret
1818

    
1819
00000fc6 <eeprom_get_byte>:
1820
     fc6:	fb 01       	movw	r30, r22
1821
     fc8:	e1 99       	sbic	0x1c, 1	; 28
1822
     fca:	fe cf       	rjmp	.-4      	; 0xfc8 <eeprom_get_byte+0x2>
1823
     fcc:	9f bb       	out	0x1f, r25	; 31
1824
     fce:	8e bb       	out	0x1e, r24	; 30
1825
     fd0:	e0 9a       	sbi	0x1c, 0	; 28
1826
     fd2:	8d b3       	in	r24, 0x1d	; 29
1827
     fd4:	80 83       	st	Z, r24
1828
     fd6:	80 e0       	ldi	r24, 0x00	; 0
1829
     fd8:	90 e0       	ldi	r25, 0x00	; 0
1830
     fda:	08 95       	ret
1831

    
1832
00000fdc <get_robotid>:
1833
     fdc:	cf 93       	push	r28
1834
     fde:	df 93       	push	r29
1835
     fe0:	cd b7       	in	r28, 0x3d	; 61
1836
     fe2:	de b7       	in	r29, 0x3e	; 62
1837
     fe4:	23 97       	sbiw	r28, 0x03	; 3
1838
     fe6:	0f b6       	in	r0, 0x3f	; 63
1839
     fe8:	f8 94       	cli
1840
     fea:	de bf       	out	0x3e, r29	; 62
1841
     fec:	0f be       	out	0x3f, r0	; 63
1842
     fee:	cd bf       	out	0x3d, r28	; 61
1843
     ff0:	be 01       	movw	r22, r28
1844
     ff2:	6f 5f       	subi	r22, 0xFF	; 255
1845
     ff4:	7f 4f       	sbci	r23, 0xFF	; 255
1846
     ff6:	80 e1       	ldi	r24, 0x10	; 16
1847
     ff8:	90 e0       	ldi	r25, 0x00	; 0
1848
     ffa:	0e 94 e3 07 	call	0xfc6	; 0xfc6 <eeprom_get_byte>
1849
     ffe:	be 01       	movw	r22, r28
1850
    1000:	6e 5f       	subi	r22, 0xFE	; 254
1851
    1002:	7f 4f       	sbci	r23, 0xFF	; 255
1852
    1004:	81 e1       	ldi	r24, 0x11	; 17
1853
    1006:	90 e0       	ldi	r25, 0x00	; 0
1854
    1008:	0e 94 e3 07 	call	0xfc6	; 0xfc6 <eeprom_get_byte>
1855
    100c:	be 01       	movw	r22, r28
1856
    100e:	6d 5f       	subi	r22, 0xFD	; 253
1857
    1010:	7f 4f       	sbci	r23, 0xFF	; 255
1858
    1012:	82 e1       	ldi	r24, 0x12	; 18
1859
    1014:	90 e0       	ldi	r25, 0x00	; 0
1860
    1016:	0e 94 e3 07 	call	0xfc6	; 0xfc6 <eeprom_get_byte>
1861
    101a:	89 81       	ldd	r24, Y+1	; 0x01
1862
    101c:	89 34       	cpi	r24, 0x49	; 73
1863
    101e:	31 f4       	brne	.+12     	; 0x102c <get_robotid+0x50>
1864
    1020:	8a 81       	ldd	r24, Y+2	; 0x02
1865
    1022:	84 34       	cpi	r24, 0x44	; 68
1866
    1024:	19 f4       	brne	.+6      	; 0x102c <get_robotid+0x50>
1867
    1026:	8b 81       	ldd	r24, Y+3	; 0x03
1868
    1028:	99 27       	eor	r25, r25
1869
    102a:	02 c0       	rjmp	.+4      	; 0x1030 <get_robotid+0x54>
1870
    102c:	8f ef       	ldi	r24, 0xFF	; 255
1871
    102e:	90 e0       	ldi	r25, 0x00	; 0
1872
    1030:	23 96       	adiw	r28, 0x03	; 3
1873
    1032:	0f b6       	in	r0, 0x3f	; 63
1874
    1034:	f8 94       	cli
1875
    1036:	de bf       	out	0x3e, r29	; 62
1876
    1038:	0f be       	out	0x3f, r0	; 63
1877
    103a:	cd bf       	out	0x3d, r28	; 61
1878
    103c:	df 91       	pop	r29
1879
    103e:	cf 91       	pop	r28
1880
    1040:	08 95       	ret
1881

    
1882
00001042 <get_bom_type>:
1883
    1042:	cf 93       	push	r28
1884
    1044:	df 93       	push	r29
1885
    1046:	cd b7       	in	r28, 0x3d	; 61
1886
    1048:	de b7       	in	r29, 0x3e	; 62
1887
    104a:	24 97       	sbiw	r28, 0x04	; 4
1888
    104c:	0f b6       	in	r0, 0x3f	; 63
1889
    104e:	f8 94       	cli
1890
    1050:	de bf       	out	0x3e, r29	; 62
1891
    1052:	0f be       	out	0x3f, r0	; 63
1892
    1054:	cd bf       	out	0x3d, r28	; 61
1893
    1056:	be 01       	movw	r22, r28
1894
    1058:	6f 5f       	subi	r22, 0xFF	; 255
1895
    105a:	7f 4f       	sbci	r23, 0xFF	; 255
1896
    105c:	84 e1       	ldi	r24, 0x14	; 20
1897
    105e:	90 e0       	ldi	r25, 0x00	; 0
1898
    1060:	0e 94 e3 07 	call	0xfc6	; 0xfc6 <eeprom_get_byte>
1899
    1064:	be 01       	movw	r22, r28
1900
    1066:	6e 5f       	subi	r22, 0xFE	; 254
1901
    1068:	7f 4f       	sbci	r23, 0xFF	; 255
1902
    106a:	85 e1       	ldi	r24, 0x15	; 21
1903
    106c:	90 e0       	ldi	r25, 0x00	; 0
1904
    106e:	0e 94 e3 07 	call	0xfc6	; 0xfc6 <eeprom_get_byte>
1905
    1072:	be 01       	movw	r22, r28
1906
    1074:	6d 5f       	subi	r22, 0xFD	; 253
1907
    1076:	7f 4f       	sbci	r23, 0xFF	; 255
1908
    1078:	86 e1       	ldi	r24, 0x16	; 22
1909
    107a:	90 e0       	ldi	r25, 0x00	; 0
1910
    107c:	0e 94 e3 07 	call	0xfc6	; 0xfc6 <eeprom_get_byte>
1911
    1080:	be 01       	movw	r22, r28
1912
    1082:	6c 5f       	subi	r22, 0xFC	; 252
1913
    1084:	7f 4f       	sbci	r23, 0xFF	; 255
1914
    1086:	87 e1       	ldi	r24, 0x17	; 23
1915
    1088:	90 e0       	ldi	r25, 0x00	; 0
1916
    108a:	0e 94 e3 07 	call	0xfc6	; 0xfc6 <eeprom_get_byte>
1917
    108e:	89 81       	ldd	r24, Y+1	; 0x01
1918
    1090:	82 34       	cpi	r24, 0x42	; 66
1919
    1092:	49 f4       	brne	.+18     	; 0x10a6 <get_bom_type+0x64>
1920
    1094:	8a 81       	ldd	r24, Y+2	; 0x02
1921
    1096:	8f 34       	cpi	r24, 0x4F	; 79
1922
    1098:	31 f4       	brne	.+12     	; 0x10a6 <get_bom_type+0x64>
1923
    109a:	8b 81       	ldd	r24, Y+3	; 0x03
1924
    109c:	8d 34       	cpi	r24, 0x4D	; 77
1925
    109e:	19 f4       	brne	.+6      	; 0x10a6 <get_bom_type+0x64>
1926
    10a0:	8c 81       	ldd	r24, Y+4	; 0x04
1927
    10a2:	99 27       	eor	r25, r25
1928
    10a4:	02 c0       	rjmp	.+4      	; 0x10aa <get_bom_type+0x68>
1929
    10a6:	8f ef       	ldi	r24, 0xFF	; 255
1930
    10a8:	90 e0       	ldi	r25, 0x00	; 0
1931
    10aa:	24 96       	adiw	r28, 0x04	; 4
1932
    10ac:	0f b6       	in	r0, 0x3f	; 63
1933
    10ae:	f8 94       	cli
1934
    10b0:	de bf       	out	0x3e, r29	; 62
1935
    10b2:	0f be       	out	0x3f, r0	; 63
1936
    10b4:	cd bf       	out	0x3d, r28	; 61
1937
    10b6:	df 91       	pop	r29
1938
    10b8:	cf 91       	pop	r28
1939
    10ba:	08 95       	ret
1940

    
1941
000010bc <encoder_read>:
1942
    10bc:	88 23       	and	r24, r24
1943
    10be:	29 f4       	brne	.+10     	; 0x10ca <encoder_read+0xe>
1944
    10c0:	80 91 7a 05 	lds	r24, 0x057A
1945
    10c4:	90 91 7b 05 	lds	r25, 0x057B
1946
    10c8:	08 95       	ret
1947
    10ca:	81 30       	cpi	r24, 0x01	; 1
1948
    10cc:	19 f0       	breq	.+6      	; 0x10d4 <encoder_read+0x18>
1949
    10ce:	8f ef       	ldi	r24, 0xFF	; 255
1950
    10d0:	9f ef       	ldi	r25, 0xFF	; 255
1951
    10d2:	08 95       	ret
1952
    10d4:	80 91 af 04 	lds	r24, 0x04AF
1953
    10d8:	90 91 b0 04 	lds	r25, 0x04B0
1954
    10dc:	08 95       	ret
1955

    
1956
000010de <encoder_get_dx>:
1957
    10de:	88 23       	and	r24, r24
1958
    10e0:	29 f4       	brne	.+10     	; 0x10ec <encoder_get_dx+0xe>
1959
    10e2:	80 91 74 05 	lds	r24, 0x0574
1960
    10e6:	90 91 75 05 	lds	r25, 0x0575
1961
    10ea:	08 95       	ret
1962
    10ec:	81 30       	cpi	r24, 0x01	; 1
1963
    10ee:	19 f0       	breq	.+6      	; 0x10f6 <encoder_get_dx+0x18>
1964
    10f0:	8f ef       	ldi	r24, 0xFF	; 255
1965
    10f2:	9f ef       	ldi	r25, 0xFF	; 255
1966
    10f4:	08 95       	ret
1967
    10f6:	80 91 11 05 	lds	r24, 0x0511
1968
    10fa:	90 91 12 05 	lds	r25, 0x0512
1969
    10fe:	08 95       	ret
1970

    
1971
00001100 <encoder_rst_dx>:
1972
    1100:	88 23       	and	r24, r24
1973
    1102:	29 f4       	brne	.+10     	; 0x110e <encoder_rst_dx+0xe>
1974
    1104:	10 92 75 05 	sts	0x0575, r1
1975
    1108:	10 92 74 05 	sts	0x0574, r1
1976
    110c:	08 95       	ret
1977
    110e:	81 30       	cpi	r24, 0x01	; 1
1978
    1110:	21 f4       	brne	.+8      	; 0x111a <encoder_rst_dx+0x1a>
1979
    1112:	10 92 12 05 	sts	0x0512, r1
1980
    1116:	10 92 11 05 	sts	0x0511, r1
1981
    111a:	08 95       	ret
1982

    
1983
0000111c <encoder_get_tc>:
1984
    111c:	80 91 13 05 	lds	r24, 0x0513
1985
    1120:	90 91 14 05 	lds	r25, 0x0514
1986
    1124:	08 95       	ret
1987

    
1988
00001126 <encoder_rst_tc>:
1989
    1126:	10 92 13 05 	sts	0x0513, r1
1990
    112a:	10 92 14 05 	sts	0x0514, r1
1991
    112e:	10 92 15 05 	sts	0x0515, r1
1992
    1132:	10 92 16 05 	sts	0x0516, r1
1993
    1136:	08 95       	ret
1994

    
1995
00001138 <encoder_wait>:
1996
    1138:	9c 01       	movw	r18, r24
1997
    113a:	80 91 ad 04 	lds	r24, 0x04AD
1998
    113e:	90 91 ae 04 	lds	r25, 0x04AE
1999
    1142:	82 17       	cp	r24, r18
2000
    1144:	93 07       	cpc	r25, r19
2001
    1146:	cc f3       	brlt	.-14     	; 0x113a <encoder_wait+0x2>
2002
    1148:	10 92 ae 04 	sts	0x04AE, r1
2003
    114c:	10 92 ad 04 	sts	0x04AD, r1
2004
    1150:	08 95       	ret
2005

    
2006
00001152 <left_data_array_put>:
2007
    1152:	20 91 0f 05 	lds	r18, 0x050F
2008
    1156:	30 91 10 05 	lds	r19, 0x0510
2009
    115a:	2d 32       	cpi	r18, 0x2D	; 45
2010
    115c:	31 05       	cpc	r19, r1
2011
    115e:	29 f4       	brne	.+10     	; 0x116a <left_data_array_put+0x18>
2012
    1160:	10 92 10 05 	sts	0x0510, r1
2013
    1164:	10 92 0f 05 	sts	0x050F, r1
2014
    1168:	06 c0       	rjmp	.+12     	; 0x1176 <left_data_array_put+0x24>
2015
    116a:	2f 5f       	subi	r18, 0xFF	; 255
2016
    116c:	3f 4f       	sbci	r19, 0xFF	; 255
2017
    116e:	30 93 10 05 	sts	0x0510, r19
2018
    1172:	20 93 0f 05 	sts	0x050F, r18
2019
    1176:	e0 91 0f 05 	lds	r30, 0x050F
2020
    117a:	f0 91 10 05 	lds	r31, 0x0510
2021
    117e:	ee 0f       	add	r30, r30
2022
    1180:	ff 1f       	adc	r31, r31
2023
    1182:	ed 54       	subi	r30, 0x4D	; 77
2024
    1184:	fb 4f       	sbci	r31, 0xFB	; 251
2025
    1186:	91 83       	std	Z+1, r25	; 0x01
2026
    1188:	80 83       	st	Z, r24
2027
    118a:	08 95       	ret
2028

    
2029
0000118c <left_data_array_top>:
2030
    118c:	e0 91 0f 05 	lds	r30, 0x050F
2031
    1190:	f0 91 10 05 	lds	r31, 0x0510
2032
    1194:	ee 0f       	add	r30, r30
2033
    1196:	ff 1f       	adc	r31, r31
2034
    1198:	ed 54       	subi	r30, 0x4D	; 77
2035
    119a:	fb 4f       	sbci	r31, 0xFB	; 251
2036
    119c:	80 81       	ld	r24, Z
2037
    119e:	91 81       	ldd	r25, Z+1	; 0x01
2038
    11a0:	08 95       	ret
2039

    
2040
000011a2 <left_data_array_prev>:
2041
    11a2:	e0 91 0f 05 	lds	r30, 0x050F
2042
    11a6:	f0 91 10 05 	lds	r31, 0x0510
2043
    11aa:	30 97       	sbiw	r30, 0x00	; 0
2044
    11ac:	29 f4       	brne	.+10     	; 0x11b8 <left_data_array_prev+0x16>
2045
    11ae:	80 91 0d 05 	lds	r24, 0x050D
2046
    11b2:	90 91 0e 05 	lds	r25, 0x050E
2047
    11b6:	08 95       	ret
2048
    11b8:	ee 0f       	add	r30, r30
2049
    11ba:	ff 1f       	adc	r31, r31
2050
    11bc:	ef 54       	subi	r30, 0x4F	; 79
2051
    11be:	fb 4f       	sbci	r31, 0xFB	; 251
2052
    11c0:	80 81       	ld	r24, Z
2053
    11c2:	91 81       	ldd	r25, Z+1	; 0x01
2054
    11c4:	08 95       	ret
2055

    
2056
000011c6 <left_data_array_bottom>:
2057
    11c6:	e0 91 0f 05 	lds	r30, 0x050F
2058
    11ca:	f0 91 10 05 	lds	r31, 0x0510
2059
    11ce:	ed 32       	cpi	r30, 0x2D	; 45
2060
    11d0:	f1 05       	cpc	r31, r1
2061
    11d2:	29 f4       	brne	.+10     	; 0x11de <left_data_array_bottom+0x18>
2062
    11d4:	80 91 b3 04 	lds	r24, 0x04B3
2063
    11d8:	90 91 b4 04 	lds	r25, 0x04B4
2064
    11dc:	08 95       	ret
2065
    11de:	ee 0f       	add	r30, r30
2066
    11e0:	ff 1f       	adc	r31, r31
2067
    11e2:	eb 54       	subi	r30, 0x4B	; 75
2068
    11e4:	fb 4f       	sbci	r31, 0xFB	; 251
2069
    11e6:	80 81       	ld	r24, Z
2070
    11e8:	91 81       	ldd	r25, Z+1	; 0x01
2071
    11ea:	08 95       	ret
2072

    
2073
000011ec <right_data_array_put>:
2074
    11ec:	20 91 76 05 	lds	r18, 0x0576
2075
    11f0:	30 91 77 05 	lds	r19, 0x0577
2076
    11f4:	2d 32       	cpi	r18, 0x2D	; 45
2077
    11f6:	31 05       	cpc	r19, r1
2078
    11f8:	29 f4       	brne	.+10     	; 0x1204 <right_data_array_put+0x18>
2079
    11fa:	10 92 77 05 	sts	0x0577, r1
2080
    11fe:	10 92 76 05 	sts	0x0576, r1
2081
    1202:	06 c0       	rjmp	.+12     	; 0x1210 <right_data_array_put+0x24>
2082
    1204:	2f 5f       	subi	r18, 0xFF	; 255
2083
    1206:	3f 4f       	sbci	r19, 0xFF	; 255
2084
    1208:	30 93 77 05 	sts	0x0577, r19
2085
    120c:	20 93 76 05 	sts	0x0576, r18
2086
    1210:	e0 91 76 05 	lds	r30, 0x0576
2087
    1214:	f0 91 77 05 	lds	r31, 0x0577
2088
    1218:	ee 0f       	add	r30, r30
2089
    121a:	ff 1f       	adc	r31, r31
2090
    121c:	e8 5e       	subi	r30, 0xE8	; 232
2091
    121e:	fa 4f       	sbci	r31, 0xFA	; 250
2092
    1220:	91 83       	std	Z+1, r25	; 0x01
2093
    1222:	80 83       	st	Z, r24
2094
    1224:	08 95       	ret
2095

    
2096
00001226 <right_data_array_top>:
2097
    1226:	e0 91 76 05 	lds	r30, 0x0576
2098
    122a:	f0 91 77 05 	lds	r31, 0x0577
2099
    122e:	ee 0f       	add	r30, r30
2100
    1230:	ff 1f       	adc	r31, r31
2101
    1232:	e8 5e       	subi	r30, 0xE8	; 232
2102
    1234:	fa 4f       	sbci	r31, 0xFA	; 250
2103
    1236:	80 81       	ld	r24, Z
2104
    1238:	91 81       	ldd	r25, Z+1	; 0x01
2105
    123a:	08 95       	ret
2106

    
2107
0000123c <right_data_array_prev>:
2108
    123c:	e0 91 76 05 	lds	r30, 0x0576
2109
    1240:	f0 91 77 05 	lds	r31, 0x0577
2110
    1244:	30 97       	sbiw	r30, 0x00	; 0
2111
    1246:	29 f4       	brne	.+10     	; 0x1252 <right_data_array_prev+0x16>
2112
    1248:	80 91 72 05 	lds	r24, 0x0572
2113
    124c:	90 91 73 05 	lds	r25, 0x0573
2114
    1250:	08 95       	ret
2115
    1252:	ee 0f       	add	r30, r30
2116
    1254:	ff 1f       	adc	r31, r31
2117
    1256:	ea 5e       	subi	r30, 0xEA	; 234
2118
    1258:	fa 4f       	sbci	r31, 0xFA	; 250
2119
    125a:	80 81       	ld	r24, Z
2120
    125c:	91 81       	ldd	r25, Z+1	; 0x01
2121
    125e:	08 95       	ret
2122

    
2123
00001260 <right_data_array_bottom>:
2124
    1260:	e0 91 76 05 	lds	r30, 0x0576
2125
    1264:	f0 91 77 05 	lds	r31, 0x0577
2126
    1268:	ed 32       	cpi	r30, 0x2D	; 45
2127
    126a:	f1 05       	cpc	r31, r1
2128
    126c:	29 f4       	brne	.+10     	; 0x1278 <right_data_array_bottom+0x18>
2129
    126e:	80 91 18 05 	lds	r24, 0x0518
2130
    1272:	90 91 19 05 	lds	r25, 0x0519
2131
    1276:	08 95       	ret
2132
    1278:	ee 0f       	add	r30, r30
2133
    127a:	ff 1f       	adc	r31, r31
2134
    127c:	e6 5e       	subi	r30, 0xE6	; 230
2135
    127e:	fa 4f       	sbci	r31, 0xFA	; 250
2136
    1280:	80 81       	ld	r24, Z
2137
    1282:	91 81       	ldd	r25, Z+1	; 0x01
2138
    1284:	08 95       	ret
2139

    
2140
00001286 <left_data_at>:
2141
    1286:	e0 91 0f 05 	lds	r30, 0x050F
2142
    128a:	f0 91 10 05 	lds	r31, 0x0510
2143
    128e:	e8 1b       	sub	r30, r24
2144
    1290:	f9 0b       	sbc	r31, r25
2145
    1292:	f7 fd       	sbrc	r31, 7
2146
    1294:	be 96       	adiw	r30, 0x2e	; 46
2147
    1296:	ee 0f       	add	r30, r30
2148
    1298:	ff 1f       	adc	r31, r31
2149
    129a:	ed 54       	subi	r30, 0x4D	; 77
2150
    129c:	fb 4f       	sbci	r31, 0xFB	; 251
2151
    129e:	80 81       	ld	r24, Z
2152
    12a0:	91 81       	ldd	r25, Z+1	; 0x01
2153
    12a2:	08 95       	ret
2154

    
2155
000012a4 <right_data_at>:
2156
    12a4:	e0 91 76 05 	lds	r30, 0x0576
2157
    12a8:	f0 91 77 05 	lds	r31, 0x0577
2158
    12ac:	e8 1b       	sub	r30, r24
2159
    12ae:	f9 0b       	sbc	r31, r25
2160
    12b0:	f7 fd       	sbrc	r31, 7
2161
    12b2:	be 96       	adiw	r30, 0x2e	; 46
2162
    12b4:	ee 0f       	add	r30, r30
2163
    12b6:	ff 1f       	adc	r31, r31
2164
    12b8:	e8 5e       	subi	r30, 0xE8	; 232
2165
    12ba:	fa 4f       	sbci	r31, 0xFA	; 250
2166
    12bc:	80 81       	ld	r24, Z
2167
    12be:	91 81       	ldd	r25, Z+1	; 0x01
2168
    12c0:	08 95       	ret
2169

    
2170
000012c2 <get_dx>:
2171
    12c2:	ff 92       	push	r15
2172
    12c4:	0f 93       	push	r16
2173
    12c6:	1f 93       	push	r17
2174
    12c8:	cf 93       	push	r28
2175
    12ca:	df 93       	push	r29
2176
    12cc:	f8 2e       	mov	r15, r24
2177
    12ce:	80 91 0f 05 	lds	r24, 0x050F
2178
    12d2:	90 91 10 05 	lds	r25, 0x0510
2179
    12d6:	20 91 76 05 	lds	r18, 0x0576
2180
    12da:	30 91 77 05 	lds	r19, 0x0577
2181
    12de:	86 97       	sbiw	r24, 0x26	; 38
2182
    12e0:	8c 01       	movw	r16, r24
2183
    12e2:	06 1b       	sub	r16, r22
2184
    12e4:	17 0b       	sbc	r17, r23
2185
    12e6:	dc 01       	movw	r26, r24
2186
    12e8:	96 96       	adiw	r26, 0x26	; 38
2187
    12ea:	a6 1b       	sub	r26, r22
2188
    12ec:	b7 0b       	sbc	r27, r23
2189
    12ee:	26 52       	subi	r18, 0x26	; 38
2190
    12f0:	30 40       	sbci	r19, 0x00	; 0
2191
    12f2:	e9 01       	movw	r28, r18
2192
    12f4:	c6 1b       	sub	r28, r22
2193
    12f6:	d7 0b       	sbc	r29, r23
2194
    12f8:	2a 5d       	subi	r18, 0xDA	; 218
2195
    12fa:	3f 4f       	sbci	r19, 0xFF	; 255
2196
    12fc:	26 1b       	sub	r18, r22
2197
    12fe:	37 0b       	sbc	r19, r23
2198
    1300:	60 e0       	ldi	r22, 0x00	; 0
2199
    1302:	70 e0       	ldi	r23, 0x00	; 0
2200
    1304:	ff 20       	and	r15, r15
2201
    1306:	99 f4       	brne	.+38     	; 0x132e <get_dx+0x6c>
2202
    1308:	fd 01       	movw	r30, r26
2203
    130a:	b7 fd       	sbrc	r27, 7
2204
    130c:	be 96       	adiw	r30, 0x2e	; 46
2205
    130e:	ee 0f       	add	r30, r30
2206
    1310:	ff 1f       	adc	r31, r31
2207
    1312:	ed 54       	subi	r30, 0x4D	; 77
2208
    1314:	fb 4f       	sbci	r31, 0xFB	; 251
2209
    1316:	40 81       	ld	r20, Z
2210
    1318:	51 81       	ldd	r21, Z+1	; 0x01
2211
    131a:	f8 01       	movw	r30, r16
2212
    131c:	17 ff       	sbrs	r17, 7
2213
    131e:	02 c0       	rjmp	.+4      	; 0x1324 <get_dx+0x62>
2214
    1320:	fd 01       	movw	r30, r26
2215
    1322:	38 96       	adiw	r30, 0x08	; 8
2216
    1324:	ee 0f       	add	r30, r30
2217
    1326:	ff 1f       	adc	r31, r31
2218
    1328:	ed 54       	subi	r30, 0x4D	; 77
2219
    132a:	fb 4f       	sbci	r31, 0xFB	; 251
2220
    132c:	12 c0       	rjmp	.+36     	; 0x1352 <get_dx+0x90>
2221
    132e:	f9 01       	movw	r30, r18
2222
    1330:	37 fd       	sbrc	r19, 7
2223
    1332:	be 96       	adiw	r30, 0x2e	; 46
2224
    1334:	ee 0f       	add	r30, r30
2225
    1336:	ff 1f       	adc	r31, r31
2226
    1338:	e8 5e       	subi	r30, 0xE8	; 232
2227
    133a:	fa 4f       	sbci	r31, 0xFA	; 250
2228
    133c:	40 81       	ld	r20, Z
2229
    133e:	51 81       	ldd	r21, Z+1	; 0x01
2230
    1340:	fe 01       	movw	r30, r28
2231
    1342:	d7 ff       	sbrs	r29, 7
2232
    1344:	02 c0       	rjmp	.+4      	; 0x134a <get_dx+0x88>
2233
    1346:	f9 01       	movw	r30, r18
2234
    1348:	38 96       	adiw	r30, 0x08	; 8
2235
    134a:	ee 0f       	add	r30, r30
2236
    134c:	ff 1f       	adc	r31, r31
2237
    134e:	e8 5e       	subi	r30, 0xE8	; 232
2238
    1350:	fa 4f       	sbci	r31, 0xFA	; 250
2239
    1352:	80 81       	ld	r24, Z
2240
    1354:	91 81       	ldd	r25, Z+1	; 0x01
2241
    1356:	48 1b       	sub	r20, r24
2242
    1358:	59 0b       	sbc	r21, r25
2243
    135a:	ca 01       	movw	r24, r20
2244
    135c:	4e 96       	adiw	r24, 0x1e	; 30
2245
    135e:	cd 97       	sbiw	r24, 0x3d	; 61
2246
    1360:	68 f0       	brcs	.+26     	; 0x137c <get_dx+0xba>
2247
    1362:	6f 5f       	subi	r22, 0xFF	; 255
2248
    1364:	7f 4f       	sbci	r23, 0xFF	; 255
2249
    1366:	01 50       	subi	r16, 0x01	; 1
2250
    1368:	10 40       	sbci	r17, 0x00	; 0
2251
    136a:	11 97       	sbiw	r26, 0x01	; 1
2252
    136c:	21 97       	sbiw	r28, 0x01	; 1
2253
    136e:	21 50       	subi	r18, 0x01	; 1
2254
    1370:	30 40       	sbci	r19, 0x00	; 0
2255
    1372:	63 30       	cpi	r22, 0x03	; 3
2256
    1374:	71 05       	cpc	r23, r1
2257
    1376:	31 f6       	brne	.-116    	; 0x1304 <get_dx+0x42>
2258
    1378:	40 e0       	ldi	r20, 0x00	; 0
2259
    137a:	54 e0       	ldi	r21, 0x04	; 4
2260
    137c:	ca 01       	movw	r24, r20
2261
    137e:	df 91       	pop	r29
2262
    1380:	cf 91       	pop	r28
2263
    1382:	1f 91       	pop	r17
2264
    1384:	0f 91       	pop	r16
2265
    1386:	ff 90       	pop	r15
2266
    1388:	08 95       	ret
2267

    
2268
0000138a <encoder_get_v>:
2269
    138a:	1f 93       	push	r17
2270
    138c:	cf 93       	push	r28
2271
    138e:	df 93       	push	r29
2272
    1390:	18 2f       	mov	r17, r24
2273
    1392:	60 e0       	ldi	r22, 0x00	; 0
2274
    1394:	70 e0       	ldi	r23, 0x00	; 0
2275
    1396:	0e 94 61 09 	call	0x12c2	; 0x12c2 <get_dx>
2276
    139a:	ec 01       	movw	r28, r24
2277
    139c:	61 e0       	ldi	r22, 0x01	; 1
2278
    139e:	70 e0       	ldi	r23, 0x00	; 0
2279
    13a0:	81 2f       	mov	r24, r17
2280
    13a2:	0e 94 61 09 	call	0x12c2	; 0x12c2 <get_dx>
2281
    13a6:	24 e0       	ldi	r18, 0x04	; 4
2282
    13a8:	c0 30       	cpi	r28, 0x00	; 0
2283
    13aa:	d2 07       	cpc	r29, r18
2284
    13ac:	39 f4       	brne	.+14     	; 0x13bc <encoder_get_v+0x32>
2285
    13ae:	24 e0       	ldi	r18, 0x04	; 4
2286
    13b0:	80 30       	cpi	r24, 0x00	; 0
2287
    13b2:	92 07       	cpc	r25, r18
2288
    13b4:	41 f4       	brne	.+16     	; 0x13c6 <encoder_get_v+0x3c>
2289
    13b6:	80 e0       	ldi	r24, 0x00	; 0
2290
    13b8:	98 e0       	ldi	r25, 0x08	; 8
2291
    13ba:	0a c0       	rjmp	.+20     	; 0x13d0 <encoder_get_v+0x46>
2292
    13bc:	24 e0       	ldi	r18, 0x04	; 4
2293
    13be:	80 30       	cpi	r24, 0x00	; 0
2294
    13c0:	92 07       	cpc	r25, r18
2295
    13c2:	21 f4       	brne	.+8      	; 0x13cc <encoder_get_v+0x42>
2296
    13c4:	ce 01       	movw	r24, r28
2297
    13c6:	88 0f       	add	r24, r24
2298
    13c8:	99 1f       	adc	r25, r25
2299
    13ca:	02 c0       	rjmp	.+4      	; 0x13d0 <encoder_get_v+0x46>
2300
    13cc:	8c 0f       	add	r24, r28
2301
    13ce:	9d 1f       	adc	r25, r29
2302
    13d0:	df 91       	pop	r29
2303
    13d2:	cf 91       	pop	r28
2304
    13d4:	1f 91       	pop	r17
2305
    13d6:	08 95       	ret
2306

    
2307
000013d8 <encoders_init>:
2308
    13d8:	10 92 ae 04 	sts	0x04AE, r1
2309
    13dc:	10 92 ad 04 	sts	0x04AD, r1
2310
    13e0:	66 e2       	ldi	r22, 0x26	; 38
2311
    13e2:	7a e0       	ldi	r23, 0x0A	; 10
2312
    13e4:	85 e3       	ldi	r24, 0x35	; 53
2313
    13e6:	9a e0       	ldi	r25, 0x0A	; 10
2314
    13e8:	0e 94 41 12 	call	0x2482	; 0x2482 <spi_init>
2315
    13ec:	10 92 17 05 	sts	0x0517, r1
2316
    13f0:	10 92 b2 04 	sts	0x04B2, r1
2317
    13f4:	10 92 b1 04 	sts	0x04B1, r1
2318
    13f8:	10 92 79 05 	sts	0x0579, r1
2319
    13fc:	10 92 78 05 	sts	0x0578, r1
2320
    1400:	8f ef       	ldi	r24, 0xFF	; 255
2321
    1402:	9f ef       	ldi	r25, 0xFF	; 255
2322
    1404:	90 93 7b 05 	sts	0x057B, r25
2323
    1408:	80 93 7a 05 	sts	0x057A, r24
2324
    140c:	90 93 b0 04 	sts	0x04B0, r25
2325
    1410:	80 93 af 04 	sts	0x04AF, r24
2326
    1414:	10 92 10 05 	sts	0x0510, r1
2327
    1418:	10 92 0f 05 	sts	0x050F, r1
2328
    141c:	10 92 77 05 	sts	0x0577, r1
2329
    1420:	10 92 76 05 	sts	0x0576, r1
2330
    1424:	e3 eb       	ldi	r30, 0xB3	; 179
2331
    1426:	f4 e0       	ldi	r31, 0x04	; 4
2332
    1428:	11 92       	st	Z+, r1
2333
    142a:	11 92       	st	Z+, r1
2334
    142c:	85 e0       	ldi	r24, 0x05	; 5
2335
    142e:	ef 30       	cpi	r30, 0x0F	; 15
2336
    1430:	f8 07       	cpc	r31, r24
2337
    1432:	d1 f7       	brne	.-12     	; 0x1428 <encoders_init+0x50>
2338
    1434:	e8 e1       	ldi	r30, 0x18	; 24
2339
    1436:	f5 e0       	ldi	r31, 0x05	; 5
2340
    1438:	11 92       	st	Z+, r1
2341
    143a:	11 92       	st	Z+, r1
2342
    143c:	85 e0       	ldi	r24, 0x05	; 5
2343
    143e:	e4 37       	cpi	r30, 0x74	; 116
2344
    1440:	f8 07       	cpc	r31, r24
2345
    1442:	d1 f7       	brne	.-12     	; 0x1438 <encoders_init+0x60>
2346
    1444:	85 e0       	ldi	r24, 0x05	; 5
2347
    1446:	0e 94 55 12 	call	0x24aa	; 0x24aa <spi_transfer>
2348
    144a:	08 95       	ret
2349

    
2350
0000144c <encoder_recv_complete>:
2351
    144c:	10 92 17 05 	sts	0x0517, r1
2352
    1450:	80 91 ad 04 	lds	r24, 0x04AD
2353
    1454:	90 91 ae 04 	lds	r25, 0x04AE
2354
    1458:	01 96       	adiw	r24, 0x01	; 1
2355
    145a:	90 93 ae 04 	sts	0x04AE, r25
2356
    145e:	80 93 ad 04 	sts	0x04AD, r24
2357
    1462:	85 e0       	ldi	r24, 0x05	; 5
2358
    1464:	0e 94 55 12 	call	0x24aa	; 0x24aa <spi_transfer>
2359
    1468:	08 95       	ret
2360

    
2361
0000146a <encoder_recv>:
2362
    146a:	40 91 17 05 	lds	r20, 0x0517
2363
    146e:	42 30       	cpi	r20, 0x02	; 2
2364
    1470:	f1 f0       	breq	.+60     	; 0x14ae <encoder_recv+0x44>
2365
    1472:	43 30       	cpi	r20, 0x03	; 3
2366
    1474:	28 f4       	brcc	.+10     	; 0x1480 <encoder_recv+0x16>
2367
    1476:	44 23       	and	r20, r20
2368
    1478:	41 f0       	breq	.+16     	; 0x148a <encoder_recv+0x20>
2369
    147a:	41 30       	cpi	r20, 0x01	; 1
2370
    147c:	91 f5       	brne	.+100    	; 0x14e2 <encoder_recv+0x78>
2371
    147e:	0a c0       	rjmp	.+20     	; 0x1494 <encoder_recv+0x2a>
2372
    1480:	43 30       	cpi	r20, 0x03	; 3
2373
    1482:	d9 f0       	breq	.+54     	; 0x14ba <encoder_recv+0x50>
2374
    1484:	44 30       	cpi	r20, 0x04	; 4
2375
    1486:	69 f5       	brne	.+90     	; 0x14e2 <encoder_recv+0x78>
2376
    1488:	1d c0       	rjmp	.+58     	; 0x14c4 <encoder_recv+0x5a>
2377
    148a:	28 2f       	mov	r18, r24
2378
    148c:	33 27       	eor	r19, r19
2379
    148e:	32 2f       	mov	r19, r18
2380
    1490:	22 27       	eor	r18, r18
2381
    1492:	02 c0       	rjmp	.+4      	; 0x1498 <encoder_recv+0x2e>
2382
    1494:	28 2f       	mov	r18, r24
2383
    1496:	33 27       	eor	r19, r19
2384
    1498:	80 91 78 05 	lds	r24, 0x0578
2385
    149c:	90 91 79 05 	lds	r25, 0x0579
2386
    14a0:	82 2b       	or	r24, r18
2387
    14a2:	93 2b       	or	r25, r19
2388
    14a4:	90 93 79 05 	sts	0x0579, r25
2389
    14a8:	80 93 78 05 	sts	0x0578, r24
2390
    14ac:	1a c0       	rjmp	.+52     	; 0x14e2 <encoder_recv+0x78>
2391
    14ae:	28 2f       	mov	r18, r24
2392
    14b0:	33 27       	eor	r19, r19
2393
    14b2:	32 2f       	mov	r19, r18
2394
    14b4:	22 27       	eor	r18, r18
2395
    14b6:	33 0f       	add	r19, r19
2396
    14b8:	0a c0       	rjmp	.+20     	; 0x14ce <encoder_recv+0x64>
2397
    14ba:	28 2f       	mov	r18, r24
2398
    14bc:	33 27       	eor	r19, r19
2399
    14be:	22 0f       	add	r18, r18
2400
    14c0:	33 1f       	adc	r19, r19
2401
    14c2:	05 c0       	rjmp	.+10     	; 0x14ce <encoder_recv+0x64>
2402
    14c4:	88 1f       	adc	r24, r24
2403
    14c6:	88 27       	eor	r24, r24
2404
    14c8:	88 1f       	adc	r24, r24
2405
    14ca:	28 2f       	mov	r18, r24
2406
    14cc:	33 27       	eor	r19, r19
2407
    14ce:	80 91 b1 04 	lds	r24, 0x04B1
2408
    14d2:	90 91 b2 04 	lds	r25, 0x04B2
2409
    14d6:	82 2b       	or	r24, r18
2410
    14d8:	93 2b       	or	r25, r19
2411
    14da:	90 93 b2 04 	sts	0x04B2, r25
2412
    14de:	80 93 b1 04 	sts	0x04B1, r24
2413
    14e2:	84 2f       	mov	r24, r20
2414
    14e4:	99 27       	eor	r25, r25
2415
    14e6:	01 96       	adiw	r24, 0x01	; 1
2416
    14e8:	65 e0       	ldi	r22, 0x05	; 5
2417
    14ea:	70 e0       	ldi	r23, 0x00	; 0
2418
    14ec:	0e 94 83 17 	call	0x2f06	; 0x2f06 <__divmodhi4>
2419
    14f0:	80 93 17 05 	sts	0x0517, r24
2420
    14f4:	88 23       	and	r24, r24
2421
    14f6:	09 f0       	breq	.+2      	; 0x14fa <encoder_recv+0x90>
2422
    14f8:	ed c0       	rjmp	.+474    	; 0x16d4 <encoder_recv+0x26a>
2423
    14fa:	20 91 b1 04 	lds	r18, 0x04B1
2424
    14fe:	30 91 b2 04 	lds	r19, 0x04B2
2425
    1502:	24 fd       	sbrc	r18, 4
2426
    1504:	06 c0       	rjmp	.+12     	; 0x1512 <encoder_recv+0xa8>
2427
    1506:	82 e0       	ldi	r24, 0x02	; 2
2428
    1508:	94 e0       	ldi	r25, 0x04	; 4
2429
    150a:	90 93 7b 05 	sts	0x057B, r25
2430
    150e:	80 93 7a 05 	sts	0x057A, r24
2431
    1512:	c9 01       	movw	r24, r18
2432
    1514:	8c 70       	andi	r24, 0x0C	; 12
2433
    1516:	90 70       	andi	r25, 0x00	; 0
2434
    1518:	89 2b       	or	r24, r25
2435
    151a:	19 f0       	breq	.+6      	; 0x1522 <encoder_recv+0xb8>
2436
    151c:	83 e0       	ldi	r24, 0x03	; 3
2437
    151e:	94 e0       	ldi	r25, 0x04	; 4
2438
    1520:	06 c0       	rjmp	.+12     	; 0x152e <encoder_recv+0xc4>
2439
    1522:	21 ff       	sbrs	r18, 1
2440
    1524:	09 c0       	rjmp	.+18     	; 0x1538 <encoder_recv+0xce>
2441
    1526:	20 ff       	sbrs	r18, 0
2442
    1528:	07 c0       	rjmp	.+14     	; 0x1538 <encoder_recv+0xce>
2443
    152a:	81 e0       	ldi	r24, 0x01	; 1
2444
    152c:	94 e0       	ldi	r25, 0x04	; 4
2445
    152e:	90 93 7b 05 	sts	0x057B, r25
2446
    1532:	80 93 7a 05 	sts	0x057A, r24
2447
    1536:	0a c0       	rjmp	.+20     	; 0x154c <encoder_recv+0xe2>
2448
    1538:	75 e0       	ldi	r23, 0x05	; 5
2449
    153a:	36 95       	lsr	r19
2450
    153c:	27 95       	ror	r18
2451
    153e:	7a 95       	dec	r23
2452
    1540:	e1 f7       	brne	.-8      	; 0x153a <encoder_recv+0xd0>
2453
    1542:	33 70       	andi	r19, 0x03	; 3
2454
    1544:	30 93 7b 05 	sts	0x057B, r19
2455
    1548:	20 93 7a 05 	sts	0x057A, r18
2456
    154c:	20 91 78 05 	lds	r18, 0x0578
2457
    1550:	30 91 79 05 	lds	r19, 0x0579
2458
    1554:	24 fd       	sbrc	r18, 4
2459
    1556:	06 c0       	rjmp	.+12     	; 0x1564 <encoder_recv+0xfa>
2460
    1558:	82 e0       	ldi	r24, 0x02	; 2
2461
    155a:	94 e0       	ldi	r25, 0x04	; 4
2462
    155c:	90 93 b0 04 	sts	0x04B0, r25
2463
    1560:	80 93 af 04 	sts	0x04AF, r24
2464
    1564:	c9 01       	movw	r24, r18
2465
    1566:	8c 70       	andi	r24, 0x0C	; 12
2466
    1568:	90 70       	andi	r25, 0x00	; 0
2467
    156a:	89 2b       	or	r24, r25
2468
    156c:	19 f0       	breq	.+6      	; 0x1574 <encoder_recv+0x10a>
2469
    156e:	83 e0       	ldi	r24, 0x03	; 3
2470
    1570:	94 e0       	ldi	r25, 0x04	; 4
2471
    1572:	06 c0       	rjmp	.+12     	; 0x1580 <encoder_recv+0x116>
2472
    1574:	21 ff       	sbrs	r18, 1
2473
    1576:	09 c0       	rjmp	.+18     	; 0x158a <encoder_recv+0x120>
2474
    1578:	20 ff       	sbrs	r18, 0
2475
    157a:	07 c0       	rjmp	.+14     	; 0x158a <encoder_recv+0x120>
2476
    157c:	81 e0       	ldi	r24, 0x01	; 1
2477
    157e:	94 e0       	ldi	r25, 0x04	; 4
2478
    1580:	90 93 b0 04 	sts	0x04B0, r25
2479
    1584:	80 93 af 04 	sts	0x04AF, r24
2480
    1588:	0a c0       	rjmp	.+20     	; 0x159e <encoder_recv+0x134>
2481
    158a:	65 e0       	ldi	r22, 0x05	; 5
2482
    158c:	36 95       	lsr	r19
2483
    158e:	27 95       	ror	r18
2484
    1590:	6a 95       	dec	r22
2485
    1592:	e1 f7       	brne	.-8      	; 0x158c <encoder_recv+0x122>
2486
    1594:	33 70       	andi	r19, 0x03	; 3
2487
    1596:	30 93 b0 04 	sts	0x04B0, r19
2488
    159a:	20 93 af 04 	sts	0x04AF, r18
2489
    159e:	10 92 b2 04 	sts	0x04B2, r1
2490
    15a2:	10 92 b1 04 	sts	0x04B1, r1
2491
    15a6:	10 92 79 05 	sts	0x0579, r1
2492
    15aa:	10 92 78 05 	sts	0x0578, r1
2493
    15ae:	20 91 7a 05 	lds	r18, 0x057A
2494
    15b2:	30 91 7b 05 	lds	r19, 0x057B
2495
    15b6:	84 e0       	ldi	r24, 0x04	; 4
2496
    15b8:	20 30       	cpi	r18, 0x00	; 0
2497
    15ba:	38 07       	cpc	r19, r24
2498
    15bc:	08 f0       	brcs	.+2      	; 0x15c0 <encoder_recv+0x156>
2499
    15be:	45 c0       	rjmp	.+138    	; 0x164a <encoder_recv+0x1e0>
2500
    15c0:	8f ef       	ldi	r24, 0xFF	; 255
2501
    15c2:	93 e0       	ldi	r25, 0x03	; 3
2502
    15c4:	82 1b       	sub	r24, r18
2503
    15c6:	93 0b       	sbc	r25, r19
2504
    15c8:	90 93 7b 05 	sts	0x057B, r25
2505
    15cc:	80 93 7a 05 	sts	0x057A, r24
2506
    15d0:	0e 94 a9 08 	call	0x1152	; 0x1152 <left_data_array_put>
2507
    15d4:	20 91 7a 05 	lds	r18, 0x057A
2508
    15d8:	30 91 7b 05 	lds	r19, 0x057B
2509
    15dc:	e0 91 0f 05 	lds	r30, 0x050F
2510
    15e0:	f0 91 10 05 	lds	r31, 0x0510
2511
    15e4:	30 97       	sbiw	r30, 0x00	; 0
2512
    15e6:	29 f4       	brne	.+10     	; 0x15f2 <encoder_recv+0x188>
2513
    15e8:	80 91 0d 05 	lds	r24, 0x050D
2514
    15ec:	90 91 0e 05 	lds	r25, 0x050E
2515
    15f0:	06 c0       	rjmp	.+12     	; 0x15fe <encoder_recv+0x194>
2516
    15f2:	ee 0f       	add	r30, r30
2517
    15f4:	ff 1f       	adc	r31, r31
2518
    15f6:	ef 54       	subi	r30, 0x4F	; 79
2519
    15f8:	fb 4f       	sbci	r31, 0xFB	; 251
2520
    15fa:	80 81       	ld	r24, Z
2521
    15fc:	91 81       	ldd	r25, Z+1	; 0x01
2522
    15fe:	00 97       	sbiw	r24, 0x00	; 0
2523
    1600:	c1 f0       	breq	.+48     	; 0x1632 <encoder_recv+0x1c8>
2524
    1602:	28 1b       	sub	r18, r24
2525
    1604:	39 0b       	sbc	r19, r25
2526
    1606:	82 e0       	ldi	r24, 0x02	; 2
2527
    1608:	21 30       	cpi	r18, 0x01	; 1
2528
    160a:	38 07       	cpc	r19, r24
2529
    160c:	3c f0       	brlt	.+14     	; 0x161c <encoder_recv+0x1b2>
2530
    160e:	80 91 74 05 	lds	r24, 0x0574
2531
    1612:	90 91 75 05 	lds	r25, 0x0575
2532
    1616:	8f 5f       	subi	r24, 0xFF	; 255
2533
    1618:	93 40       	sbci	r25, 0x03	; 3
2534
    161a:	11 c0       	rjmp	.+34     	; 0x163e <encoder_recv+0x1d4>
2535
    161c:	8e ef       	ldi	r24, 0xFE	; 254
2536
    161e:	20 30       	cpi	r18, 0x00	; 0
2537
    1620:	38 07       	cpc	r19, r24
2538
    1622:	4c f4       	brge	.+18     	; 0x1636 <encoder_recv+0x1cc>
2539
    1624:	80 91 74 05 	lds	r24, 0x0574
2540
    1628:	90 91 75 05 	lds	r25, 0x0575
2541
    162c:	81 50       	subi	r24, 0x01	; 1
2542
    162e:	9c 4f       	sbci	r25, 0xFC	; 252
2543
    1630:	06 c0       	rjmp	.+12     	; 0x163e <encoder_recv+0x1d4>
2544
    1632:	20 e0       	ldi	r18, 0x00	; 0
2545
    1634:	30 e0       	ldi	r19, 0x00	; 0
2546
    1636:	80 91 74 05 	lds	r24, 0x0574
2547
    163a:	90 91 75 05 	lds	r25, 0x0575
2548
    163e:	82 0f       	add	r24, r18
2549
    1640:	93 1f       	adc	r25, r19
2550
    1642:	90 93 75 05 	sts	0x0575, r25
2551
    1646:	80 93 74 05 	sts	0x0574, r24
2552
    164a:	80 91 af 04 	lds	r24, 0x04AF
2553
    164e:	90 91 b0 04 	lds	r25, 0x04B0
2554
    1652:	24 e0       	ldi	r18, 0x04	; 4
2555
    1654:	80 30       	cpi	r24, 0x00	; 0
2556
    1656:	92 07       	cpc	r25, r18
2557
    1658:	e8 f5       	brcc	.+122    	; 0x16d4 <encoder_recv+0x26a>
2558
    165a:	0e 94 f6 08 	call	0x11ec	; 0x11ec <right_data_array_put>
2559
    165e:	20 91 af 04 	lds	r18, 0x04AF
2560
    1662:	30 91 b0 04 	lds	r19, 0x04B0
2561
    1666:	e0 91 76 05 	lds	r30, 0x0576
2562
    166a:	f0 91 77 05 	lds	r31, 0x0577
2563
    166e:	30 97       	sbiw	r30, 0x00	; 0
2564
    1670:	29 f4       	brne	.+10     	; 0x167c <encoder_recv+0x212>
2565
    1672:	80 91 72 05 	lds	r24, 0x0572
2566
    1676:	90 91 73 05 	lds	r25, 0x0573
2567
    167a:	06 c0       	rjmp	.+12     	; 0x1688 <encoder_recv+0x21e>
2568
    167c:	ee 0f       	add	r30, r30
2569
    167e:	ff 1f       	adc	r31, r31
2570
    1680:	ea 5e       	subi	r30, 0xEA	; 234
2571
    1682:	fa 4f       	sbci	r31, 0xFA	; 250
2572
    1684:	80 81       	ld	r24, Z
2573
    1686:	91 81       	ldd	r25, Z+1	; 0x01
2574
    1688:	00 97       	sbiw	r24, 0x00	; 0
2575
    168a:	c1 f0       	breq	.+48     	; 0x16bc <encoder_recv+0x252>
2576
    168c:	28 1b       	sub	r18, r24
2577
    168e:	39 0b       	sbc	r19, r25
2578
    1690:	82 e0       	ldi	r24, 0x02	; 2
2579
    1692:	21 30       	cpi	r18, 0x01	; 1
2580
    1694:	38 07       	cpc	r19, r24
2581
    1696:	3c f0       	brlt	.+14     	; 0x16a6 <encoder_recv+0x23c>
2582
    1698:	80 91 11 05 	lds	r24, 0x0511
2583
    169c:	90 91 12 05 	lds	r25, 0x0512
2584
    16a0:	8f 5f       	subi	r24, 0xFF	; 255
2585
    16a2:	93 40       	sbci	r25, 0x03	; 3
2586
    16a4:	11 c0       	rjmp	.+34     	; 0x16c8 <encoder_recv+0x25e>
2587
    16a6:	8e ef       	ldi	r24, 0xFE	; 254
2588
    16a8:	20 30       	cpi	r18, 0x00	; 0
2589
    16aa:	38 07       	cpc	r19, r24
2590
    16ac:	4c f4       	brge	.+18     	; 0x16c0 <encoder_recv+0x256>
2591
    16ae:	80 91 11 05 	lds	r24, 0x0511
2592
    16b2:	90 91 12 05 	lds	r25, 0x0512
2593
    16b6:	81 50       	subi	r24, 0x01	; 1
2594
    16b8:	9c 4f       	sbci	r25, 0xFC	; 252
2595
    16ba:	06 c0       	rjmp	.+12     	; 0x16c8 <encoder_recv+0x25e>
2596
    16bc:	20 e0       	ldi	r18, 0x00	; 0
2597
    16be:	30 e0       	ldi	r19, 0x00	; 0
2598
    16c0:	80 91 11 05 	lds	r24, 0x0511
2599
    16c4:	90 91 12 05 	lds	r25, 0x0512
2600
    16c8:	82 0f       	add	r24, r18
2601
    16ca:	93 1f       	adc	r25, r19
2602
    16cc:	90 93 12 05 	sts	0x0512, r25
2603
    16d0:	80 93 11 05 	sts	0x0511, r24
2604
    16d4:	80 91 13 05 	lds	r24, 0x0513
2605
    16d8:	90 91 14 05 	lds	r25, 0x0514
2606
    16dc:	a0 91 15 05 	lds	r26, 0x0515
2607
    16e0:	b0 91 16 05 	lds	r27, 0x0516
2608
    16e4:	01 96       	adiw	r24, 0x01	; 1
2609
    16e6:	a1 1d       	adc	r26, r1
2610
    16e8:	b1 1d       	adc	r27, r1
2611
    16ea:	80 93 13 05 	sts	0x0513, r24
2612
    16ee:	90 93 14 05 	sts	0x0514, r25
2613
    16f2:	a0 93 15 05 	sts	0x0515, r26
2614
    16f6:	b0 93 16 05 	sts	0x0516, r27
2615
    16fa:	08 95       	ret
2616

    
2617
000016fc <encoder_get_x>:
2618
    16fc:	88 23       	and	r24, r24
2619
    16fe:	29 f4       	brne	.+10     	; 0x170a <encoder_get_x+0xe>
2620
    1700:	80 91 74 05 	lds	r24, 0x0574
2621
    1704:	90 91 75 05 	lds	r25, 0x0575
2622
    1708:	08 95       	ret
2623
    170a:	81 30       	cpi	r24, 0x01	; 1
2624
    170c:	19 f0       	breq	.+6      	; 0x1714 <encoder_get_x+0x18>
2625
    170e:	8f ef       	ldi	r24, 0xFF	; 255
2626
    1710:	9f ef       	ldi	r25, 0xFF	; 255
2627
    1712:	08 95       	ret
2628
    1714:	80 91 11 05 	lds	r24, 0x0511
2629
    1718:	90 91 12 05 	lds	r25, 0x0512
2630
    171c:	08 95       	ret
2631

    
2632
0000171e <lcd_putc>:
2633
    171e:	95 e0       	ldi	r25, 0x05	; 5
2634
    1720:	89 9f       	mul	r24, r25
2635
    1722:	f0 01       	movw	r30, r0
2636
    1724:	11 24       	eor	r1, r1
2637
    1726:	ec 52       	subi	r30, 0x2C	; 44
2638
    1728:	ff 4f       	sbci	r31, 0xFF	; 255
2639
    172a:	20 e0       	ldi	r18, 0x00	; 0
2640
    172c:	30 e0       	ldi	r19, 0x00	; 0
2641
    172e:	80 81       	ld	r24, Z
2642
    1730:	8f b9       	out	0x0f, r24	; 15
2643
    1732:	77 9b       	sbis	0x0e, 7	; 14
2644
    1734:	fe cf       	rjmp	.-4      	; 0x1732 <lcd_putc+0x14>
2645
    1736:	2f 5f       	subi	r18, 0xFF	; 255
2646
    1738:	3f 4f       	sbci	r19, 0xFF	; 255
2647
    173a:	31 96       	adiw	r30, 0x01	; 1
2648
    173c:	25 30       	cpi	r18, 0x05	; 5
2649
    173e:	31 05       	cpc	r19, r1
2650
    1740:	b1 f7       	brne	.-20     	; 0x172e <lcd_putc+0x10>
2651
    1742:	1f b8       	out	0x0f, r1	; 15
2652
    1744:	77 9b       	sbis	0x0e, 7	; 14
2653
    1746:	fe cf       	rjmp	.-4      	; 0x1744 <lcd_putc+0x26>
2654
    1748:	08 95       	ret
2655

    
2656
0000174a <lcd_puts>:
2657
    174a:	cf 93       	push	r28
2658
    174c:	df 93       	push	r29
2659
    174e:	ec 01       	movw	r28, r24
2660
    1750:	03 c0       	rjmp	.+6      	; 0x1758 <lcd_puts+0xe>
2661
    1752:	0e 94 8f 0b 	call	0x171e	; 0x171e <lcd_putc>
2662
    1756:	21 96       	adiw	r28, 0x01	; 1
2663
    1758:	88 81       	ld	r24, Y
2664
    175a:	88 23       	and	r24, r24
2665
    175c:	d1 f7       	brne	.-12     	; 0x1752 <lcd_puts+0x8>
2666
    175e:	df 91       	pop	r29
2667
    1760:	cf 91       	pop	r28
2668
    1762:	08 95       	ret
2669

    
2670
00001764 <lcd_gotoxy>:
2671
    1764:	95 98       	cbi	0x12, 5	; 18
2672
    1766:	67 70       	andi	r22, 0x07	; 7
2673
    1768:	60 64       	ori	r22, 0x40	; 64
2674
    176a:	6f b9       	out	0x0f, r22	; 15
2675
    176c:	77 9b       	sbis	0x0e, 7	; 14
2676
    176e:	fe cf       	rjmp	.-4      	; 0x176c <lcd_gotoxy+0x8>
2677
    1770:	80 68       	ori	r24, 0x80	; 128
2678
    1772:	8f b9       	out	0x0f, r24	; 15
2679
    1774:	77 9b       	sbis	0x0e, 7	; 14
2680
    1776:	fe cf       	rjmp	.-4      	; 0x1774 <lcd_gotoxy+0x10>
2681
    1778:	95 9a       	sbi	0x12, 5	; 18
2682
    177a:	08 95       	ret
2683

    
2684
0000177c <lcd_clear_screen>:
2685
    177c:	80 e0       	ldi	r24, 0x00	; 0
2686
    177e:	90 e0       	ldi	r25, 0x00	; 0
2687
    1780:	1f b8       	out	0x0f, r1	; 15
2688
    1782:	77 9b       	sbis	0x0e, 7	; 14
2689
    1784:	fe cf       	rjmp	.-4      	; 0x1782 <lcd_clear_screen+0x6>
2690
    1786:	01 96       	adiw	r24, 0x01	; 1
2691
    1788:	21 e0       	ldi	r18, 0x01	; 1
2692
    178a:	88 3f       	cpi	r24, 0xF8	; 248
2693
    178c:	92 07       	cpc	r25, r18
2694
    178e:	c1 f7       	brne	.-16     	; 0x1780 <lcd_clear_screen+0x4>
2695
    1790:	60 e0       	ldi	r22, 0x00	; 0
2696
    1792:	70 e0       	ldi	r23, 0x00	; 0
2697
    1794:	80 e0       	ldi	r24, 0x00	; 0
2698
    1796:	90 e0       	ldi	r25, 0x00	; 0
2699
    1798:	0e 94 b2 0b 	call	0x1764	; 0x1764 <lcd_gotoxy>
2700
    179c:	08 95       	ret
2701

    
2702
0000179e <lcd_puti>:
2703
    179e:	ff 92       	push	r15
2704
    17a0:	0f 93       	push	r16
2705
    17a2:	1f 93       	push	r17
2706
    17a4:	cf 93       	push	r28
2707
    17a6:	df 93       	push	r29
2708
    17a8:	cd b7       	in	r28, 0x3d	; 61
2709
    17aa:	de b7       	in	r29, 0x3e	; 62
2710
    17ac:	26 97       	sbiw	r28, 0x06	; 6
2711
    17ae:	0f b6       	in	r0, 0x3f	; 63
2712
    17b0:	f8 94       	cli
2713
    17b2:	de bf       	out	0x3e, r29	; 62
2714
    17b4:	0f be       	out	0x3f, r0	; 63
2715
    17b6:	cd bf       	out	0x3d, r28	; 61
2716
    17b8:	8c 01       	movw	r16, r24
2717
    17ba:	de 01       	movw	r26, r28
2718
    17bc:	11 96       	adiw	r26, 0x01	; 1
2719
    17be:	ee e6       	ldi	r30, 0x6E	; 110
2720
    17c0:	f1 e0       	ldi	r31, 0x01	; 1
2721
    17c2:	86 e0       	ldi	r24, 0x06	; 6
2722
    17c4:	01 90       	ld	r0, Z+
2723
    17c6:	0d 92       	st	X+, r0
2724
    17c8:	81 50       	subi	r24, 0x01	; 1
2725
    17ca:	e1 f7       	brne	.-8      	; 0x17c4 <lcd_puti+0x26>
2726
    17cc:	17 ff       	sbrs	r17, 7
2727
    17ce:	06 c0       	rjmp	.+12     	; 0x17dc <lcd_puti+0x3e>
2728
    17d0:	8d e2       	ldi	r24, 0x2D	; 45
2729
    17d2:	0e 94 8f 0b 	call	0x171e	; 0x171e <lcd_putc>
2730
    17d6:	10 95       	com	r17
2731
    17d8:	01 95       	neg	r16
2732
    17da:	1f 4f       	sbci	r17, 0xFF	; 255
2733
    17dc:	86 e0       	ldi	r24, 0x06	; 6
2734
    17de:	f8 2e       	mov	r15, r24
2735
    17e0:	9e 01       	movw	r18, r28
2736
    17e2:	2f 5f       	subi	r18, 0xFF	; 255
2737
    17e4:	3f 4f       	sbci	r19, 0xFF	; 255
2738
    17e6:	fa 94       	dec	r15
2739
    17e8:	f9 01       	movw	r30, r18
2740
    17ea:	ef 0d       	add	r30, r15
2741
    17ec:	f1 1d       	adc	r31, r1
2742
    17ee:	c8 01       	movw	r24, r16
2743
    17f0:	6a e0       	ldi	r22, 0x0A	; 10
2744
    17f2:	70 e0       	ldi	r23, 0x00	; 0
2745
    17f4:	0e 94 83 17 	call	0x2f06	; 0x2f06 <__divmodhi4>
2746
    17f8:	80 5d       	subi	r24, 0xD0	; 208
2747
    17fa:	80 83       	st	Z, r24
2748
    17fc:	c8 01       	movw	r24, r16
2749
    17fe:	6a e0       	ldi	r22, 0x0A	; 10
2750
    1800:	70 e0       	ldi	r23, 0x00	; 0
2751
    1802:	0e 94 83 17 	call	0x2f06	; 0x2f06 <__divmodhi4>
2752
    1806:	8b 01       	movw	r16, r22
2753
    1808:	67 2b       	or	r22, r23
2754
    180a:	49 f0       	breq	.+18     	; 0x181e <lcd_puti+0x80>
2755
    180c:	ec cf       	rjmp	.-40     	; 0x17e6 <lcd_puti+0x48>
2756
    180e:	f8 01       	movw	r30, r16
2757
    1810:	ef 0d       	add	r30, r15
2758
    1812:	f1 1d       	adc	r31, r1
2759
    1814:	80 81       	ld	r24, Z
2760
    1816:	0e 94 8f 0b 	call	0x171e	; 0x171e <lcd_putc>
2761
    181a:	f3 94       	inc	r15
2762
    181c:	03 c0       	rjmp	.+6      	; 0x1824 <lcd_puti+0x86>
2763
    181e:	8e 01       	movw	r16, r28
2764
    1820:	0f 5f       	subi	r16, 0xFF	; 255
2765
    1822:	1f 4f       	sbci	r17, 0xFF	; 255
2766
    1824:	85 e0       	ldi	r24, 0x05	; 5
2767
    1826:	8f 15       	cp	r24, r15
2768
    1828:	90 f7       	brcc	.-28     	; 0x180e <lcd_puti+0x70>
2769
    182a:	26 96       	adiw	r28, 0x06	; 6
2770
    182c:	0f b6       	in	r0, 0x3f	; 63
2771
    182e:	f8 94       	cli
2772
    1830:	de bf       	out	0x3e, r29	; 62
2773
    1832:	0f be       	out	0x3f, r0	; 63
2774
    1834:	cd bf       	out	0x3d, r28	; 61
2775
    1836:	df 91       	pop	r29
2776
    1838:	cf 91       	pop	r28
2777
    183a:	1f 91       	pop	r17
2778
    183c:	0f 91       	pop	r16
2779
    183e:	ff 90       	pop	r15
2780
    1840:	08 95       	ret
2781

    
2782
00001842 <lcd_putbyte>:
2783
    1842:	8f b9       	out	0x0f, r24	; 15
2784
    1844:	77 9b       	sbis	0x0e, 7	; 14
2785
    1846:	fe cf       	rjmp	.-4      	; 0x1844 <lcd_putbyte+0x2>
2786
    1848:	08 95       	ret
2787

    
2788
0000184a <lcd_init>:
2789
    184a:	87 b3       	in	r24, 0x17	; 23
2790
    184c:	87 60       	ori	r24, 0x07	; 7
2791
    184e:	87 bb       	out	0x17, r24	; 23
2792
    1850:	81 b3       	in	r24, 0x11	; 17
2793
    1852:	80 63       	ori	r24, 0x30	; 48
2794
    1854:	81 bb       	out	0x11, r24	; 17
2795
    1856:	88 b3       	in	r24, 0x18	; 24
2796
    1858:	88 7f       	andi	r24, 0xF8	; 248
2797
    185a:	88 bb       	out	0x18, r24	; 24
2798
    185c:	95 98       	cbi	0x12, 5	; 18
2799
    185e:	8d b1       	in	r24, 0x0d	; 13
2800
    1860:	80 65       	ori	r24, 0x50	; 80
2801
    1862:	8d b9       	out	0x0d, r24	; 13
2802
    1864:	70 9a       	sbi	0x0e, 0	; 14
2803
    1866:	94 9a       	sbi	0x12, 4	; 18
2804
    1868:	8a e0       	ldi	r24, 0x0A	; 10
2805
    186a:	90 e0       	ldi	r25, 0x00	; 0
2806
    186c:	0e 94 9b 12 	call	0x2536	; 0x2536 <delay_ms>
2807
    1870:	94 98       	cbi	0x12, 4	; 18
2808
    1872:	84 e6       	ldi	r24, 0x64	; 100
2809
    1874:	90 e0       	ldi	r25, 0x00	; 0
2810
    1876:	0e 94 9b 12 	call	0x2536	; 0x2536 <delay_ms>
2811
    187a:	94 9a       	sbi	0x12, 4	; 18
2812
    187c:	81 e2       	ldi	r24, 0x21	; 33
2813
    187e:	8f b9       	out	0x0f, r24	; 15
2814
    1880:	77 9b       	sbis	0x0e, 7	; 14
2815
    1882:	fe cf       	rjmp	.-4      	; 0x1880 <lcd_init+0x36>
2816
    1884:	88 ec       	ldi	r24, 0xC8	; 200
2817
    1886:	8f b9       	out	0x0f, r24	; 15
2818
    1888:	77 9b       	sbis	0x0e, 7	; 14
2819
    188a:	fe cf       	rjmp	.-4      	; 0x1888 <lcd_init+0x3e>
2820
    188c:	86 e0       	ldi	r24, 0x06	; 6
2821
    188e:	8f b9       	out	0x0f, r24	; 15
2822
    1890:	77 9b       	sbis	0x0e, 7	; 14
2823
    1892:	fe cf       	rjmp	.-4      	; 0x1890 <lcd_init+0x46>
2824
    1894:	83 e1       	ldi	r24, 0x13	; 19
2825
    1896:	8f b9       	out	0x0f, r24	; 15
2826
    1898:	77 9b       	sbis	0x0e, 7	; 14
2827
    189a:	fe cf       	rjmp	.-4      	; 0x1898 <lcd_init+0x4e>
2828
    189c:	80 e2       	ldi	r24, 0x20	; 32
2829
    189e:	8f b9       	out	0x0f, r24	; 15
2830
    18a0:	77 9b       	sbis	0x0e, 7	; 14
2831
    18a2:	fe cf       	rjmp	.-4      	; 0x18a0 <lcd_init+0x56>
2832
    18a4:	8c e0       	ldi	r24, 0x0C	; 12
2833
    18a6:	8f b9       	out	0x0f, r24	; 15
2834
    18a8:	77 9b       	sbis	0x0e, 7	; 14
2835
    18aa:	fe cf       	rjmp	.-4      	; 0x18a8 <lcd_init+0x5e>
2836
    18ac:	95 9a       	sbi	0x12, 5	; 18
2837
    18ae:	0e 94 be 0b 	call	0x177c	; 0x177c <lcd_clear_screen>
2838
    18b2:	08 95       	ret
2839

    
2840
000018b4 <output_compare>:
2841
    18b4:	40 91 5b 03 	lds	r20, 0x035B
2842
    18b8:	50 91 5c 03 	lds	r21, 0x035C
2843
    18bc:	20 91 6f 04 	lds	r18, 0x046F
2844
    18c0:	a2 2f       	mov	r26, r18
2845
    18c2:	bb 27       	eor	r27, r27
2846
    18c4:	82 b7       	in	r24, 0x32	; 50
2847
    18c6:	fd 01       	movw	r30, r26
2848
    18c8:	ee 0f       	add	r30, r30
2849
    18ca:	ff 1f       	adc	r31, r31
2850
    18cc:	e4 0f       	add	r30, r20
2851
    18ce:	f5 1f       	adc	r31, r21
2852
    18d0:	91 81       	ldd	r25, Z+1	; 0x01
2853
    18d2:	9f 5f       	subi	r25, 0xFF	; 255
2854
    18d4:	89 17       	cp	r24, r25
2855
    18d6:	b8 f0       	brcs	.+46     	; 0x1906 <output_compare+0x52>
2856
    18d8:	95 b3       	in	r25, 0x15	; 21
2857
    18da:	11 96       	adiw	r26, 0x01	; 1
2858
    18dc:	aa 0f       	add	r26, r26
2859
    18de:	bb 1f       	adc	r27, r27
2860
    18e0:	a4 0f       	add	r26, r20
2861
    18e2:	b5 1f       	adc	r27, r21
2862
    18e4:	8c 91       	ld	r24, X
2863
    18e6:	98 2b       	or	r25, r24
2864
    18e8:	95 bb       	out	0x15, r25	; 21
2865
    18ea:	25 30       	cpi	r18, 0x05	; 5
2866
    18ec:	61 f0       	breq	.+24     	; 0x1906 <output_compare+0x52>
2867
    18ee:	2f 5f       	subi	r18, 0xFF	; 255
2868
    18f0:	e2 2f       	mov	r30, r18
2869
    18f2:	ff 27       	eor	r31, r31
2870
    18f4:	ee 0f       	add	r30, r30
2871
    18f6:	ff 1f       	adc	r31, r31
2872
    18f8:	e4 0f       	add	r30, r20
2873
    18fa:	f5 1f       	adc	r31, r21
2874
    18fc:	81 81       	ldd	r24, Z+1	; 0x01
2875
    18fe:	8f 3f       	cpi	r24, 0xFF	; 255
2876
    1900:	f9 f2       	breq	.-66     	; 0x18c0 <output_compare+0xc>
2877
    1902:	81 bf       	out	0x31, r24	; 49
2878
    1904:	dd cf       	rjmp	.-70     	; 0x18c0 <output_compare+0xc>
2879
    1906:	20 93 6f 04 	sts	0x046F, r18
2880
    190a:	08 95       	ret
2881

    
2882
0000190c <__vector_16>:
2883
    190c:	1f 92       	push	r1
2884
    190e:	0f 92       	push	r0
2885
    1910:	0f b6       	in	r0, 0x3f	; 63
2886
    1912:	0f 92       	push	r0
2887
    1914:	11 24       	eor	r1, r1
2888
    1916:	2f 93       	push	r18
2889
    1918:	3f 93       	push	r19
2890
    191a:	4f 93       	push	r20
2891
    191c:	5f 93       	push	r21
2892
    191e:	6f 93       	push	r22
2893
    1920:	7f 93       	push	r23
2894
    1922:	8f 93       	push	r24
2895
    1924:	9f 93       	push	r25
2896
    1926:	af 93       	push	r26
2897
    1928:	bf 93       	push	r27
2898
    192a:	ef 93       	push	r30
2899
    192c:	ff 93       	push	r31
2900
    192e:	80 91 6e 04 	lds	r24, 0x046E
2901
    1932:	88 23       	and	r24, r24
2902
    1934:	91 f0       	breq	.+36     	; 0x195a <__vector_16+0x4e>
2903
    1936:	20 91 5b 03 	lds	r18, 0x035B
2904
    193a:	30 91 5c 03 	lds	r19, 0x035C
2905
    193e:	80 91 5f 03 	lds	r24, 0x035F
2906
    1942:	90 91 60 03 	lds	r25, 0x0360
2907
    1946:	90 93 5c 03 	sts	0x035C, r25
2908
    194a:	80 93 5b 03 	sts	0x035B, r24
2909
    194e:	30 93 60 03 	sts	0x0360, r19
2910
    1952:	20 93 5f 03 	sts	0x035F, r18
2911
    1956:	10 92 6e 04 	sts	0x046E, r1
2912
    195a:	85 b3       	in	r24, 0x15	; 21
2913
    195c:	87 67       	ori	r24, 0x77	; 119
2914
    195e:	85 bb       	out	0x15, r24	; 21
2915
    1960:	85 b3       	in	r24, 0x15	; 21
2916
    1962:	e0 91 5b 03 	lds	r30, 0x035B
2917
    1966:	f0 91 5c 03 	lds	r31, 0x035C
2918
    196a:	90 81       	ld	r25, Z
2919
    196c:	89 23       	and	r24, r25
2920
    196e:	85 bb       	out	0x15, r24	; 21
2921
    1970:	10 92 6f 04 	sts	0x046F, r1
2922
    1974:	81 81       	ldd	r24, Z+1	; 0x01
2923
    1976:	81 bf       	out	0x31, r24	; 49
2924
    1978:	0e 94 5a 0c 	call	0x18b4	; 0x18b4 <output_compare>
2925
    197c:	ff 91       	pop	r31
2926
    197e:	ef 91       	pop	r30
2927
    1980:	bf 91       	pop	r27
2928
    1982:	af 91       	pop	r26
2929
    1984:	9f 91       	pop	r25
2930
    1986:	8f 91       	pop	r24
2931
    1988:	7f 91       	pop	r23
2932
    198a:	6f 91       	pop	r22
2933
    198c:	5f 91       	pop	r21
2934
    198e:	4f 91       	pop	r20
2935
    1990:	3f 91       	pop	r19
2936
    1992:	2f 91       	pop	r18
2937
    1994:	0f 90       	pop	r0
2938
    1996:	0f be       	out	0x3f, r0	; 63
2939
    1998:	0f 90       	pop	r0
2940
    199a:	1f 90       	pop	r1
2941
    199c:	18 95       	reti
2942

    
2943
0000199e <__vector_15>:
2944
    199e:	1f 92       	push	r1
2945
    19a0:	0f 92       	push	r0
2946
    19a2:	0f b6       	in	r0, 0x3f	; 63
2947
    19a4:	0f 92       	push	r0
2948
    19a6:	11 24       	eor	r1, r1
2949
    19a8:	2f 93       	push	r18
2950
    19aa:	3f 93       	push	r19
2951
    19ac:	4f 93       	push	r20
2952
    19ae:	5f 93       	push	r21
2953
    19b0:	6f 93       	push	r22
2954
    19b2:	7f 93       	push	r23
2955
    19b4:	8f 93       	push	r24
2956
    19b6:	9f 93       	push	r25
2957
    19b8:	af 93       	push	r26
2958
    19ba:	bf 93       	push	r27
2959
    19bc:	ef 93       	push	r30
2960
    19be:	ff 93       	push	r31
2961
    19c0:	0e 94 5a 0c 	call	0x18b4	; 0x18b4 <output_compare>
2962
    19c4:	ff 91       	pop	r31
2963
    19c6:	ef 91       	pop	r30
2964
    19c8:	bf 91       	pop	r27
2965
    19ca:	af 91       	pop	r26
2966
    19cc:	9f 91       	pop	r25
2967
    19ce:	8f 91       	pop	r24
2968
    19d0:	7f 91       	pop	r23
2969
    19d2:	6f 91       	pop	r22
2970
    19d4:	5f 91       	pop	r21
2971
    19d6:	4f 91       	pop	r20
2972
    19d8:	3f 91       	pop	r19
2973
    19da:	2f 91       	pop	r18
2974
    19dc:	0f 90       	pop	r0
2975
    19de:	0f be       	out	0x3f, r0	; 63
2976
    19e0:	0f 90       	pop	r0
2977
    19e2:	1f 90       	pop	r1
2978
    19e4:	18 95       	reti
2979

    
2980
000019e6 <apply_orbs>:
2981
    19e6:	0f 93       	push	r16
2982
    19e8:	1f 93       	push	r17
2983
    19ea:	cf 93       	push	r28
2984
    19ec:	df 93       	push	r29
2985
    19ee:	80 91 5a 03 	lds	r24, 0x035A
2986
    19f2:	88 23       	and	r24, r24
2987
    19f4:	09 f4       	brne	.+2      	; 0x19f8 <apply_orbs+0x12>
2988
    19f6:	94 c1       	rjmp	.+808    	; 0x1d20 <apply_orbs+0x33a>
2989
    19f8:	e0 91 5d 03 	lds	r30, 0x035D
2990
    19fc:	f0 91 5e 03 	lds	r31, 0x035E
2991
    1a00:	8f ef       	ldi	r24, 0xFF	; 255
2992
    1a02:	80 83       	st	Z, r24
2993
    1a04:	90 91 a3 05 	lds	r25, 0x05A3
2994
    1a08:	e0 91 5d 03 	lds	r30, 0x035D
2995
    1a0c:	f0 91 5e 03 	lds	r31, 0x035E
2996
    1a10:	91 50       	subi	r25, 0x01	; 1
2997
    1a12:	91 83       	std	Z+1, r25	; 0x01
2998
    1a14:	9f 5f       	subi	r25, 0xFF	; 255
2999
    1a16:	e0 91 5d 03 	lds	r30, 0x035D
3000
    1a1a:	f0 91 5e 03 	lds	r31, 0x035E
3001
    1a1e:	81 e0       	ldi	r24, 0x01	; 1
3002
    1a20:	82 83       	std	Z+2, r24	; 0x02
3003
    1a22:	99 23       	and	r25, r25
3004
    1a24:	39 f0       	breq	.+14     	; 0x1a34 <apply_orbs+0x4e>
3005
    1a26:	e0 91 5d 03 	lds	r30, 0x035D
3006
    1a2a:	f0 91 5e 03 	lds	r31, 0x035E
3007
    1a2e:	80 81       	ld	r24, Z
3008
    1a30:	8e 7f       	andi	r24, 0xFE	; 254
3009
    1a32:	80 83       	st	Z, r24
3010
    1a34:	90 91 a4 05 	lds	r25, 0x05A4
3011
    1a38:	e0 91 5d 03 	lds	r30, 0x035D
3012
    1a3c:	f0 91 5e 03 	lds	r31, 0x035E
3013
    1a40:	91 50       	subi	r25, 0x01	; 1
3014
    1a42:	93 83       	std	Z+3, r25	; 0x03
3015
    1a44:	9f 5f       	subi	r25, 0xFF	; 255
3016
    1a46:	e0 91 5d 03 	lds	r30, 0x035D
3017
    1a4a:	f0 91 5e 03 	lds	r31, 0x035E
3018
    1a4e:	82 e0       	ldi	r24, 0x02	; 2
3019
    1a50:	84 83       	std	Z+4, r24	; 0x04
3020
    1a52:	99 23       	and	r25, r25
3021
    1a54:	39 f0       	breq	.+14     	; 0x1a64 <apply_orbs+0x7e>
3022
    1a56:	e0 91 5d 03 	lds	r30, 0x035D
3023
    1a5a:	f0 91 5e 03 	lds	r31, 0x035E
3024
    1a5e:	80 81       	ld	r24, Z
3025
    1a60:	8d 7f       	andi	r24, 0xFD	; 253
3026
    1a62:	80 83       	st	Z, r24
3027
    1a64:	90 91 a5 05 	lds	r25, 0x05A5
3028
    1a68:	e0 91 5d 03 	lds	r30, 0x035D
3029
    1a6c:	f0 91 5e 03 	lds	r31, 0x035E
3030
    1a70:	91 50       	subi	r25, 0x01	; 1
3031
    1a72:	95 83       	std	Z+5, r25	; 0x05
3032
    1a74:	9f 5f       	subi	r25, 0xFF	; 255
3033
    1a76:	e0 91 5d 03 	lds	r30, 0x035D
3034
    1a7a:	f0 91 5e 03 	lds	r31, 0x035E
3035
    1a7e:	84 e0       	ldi	r24, 0x04	; 4
3036
    1a80:	86 83       	std	Z+6, r24	; 0x06
3037
    1a82:	99 23       	and	r25, r25
3038
    1a84:	39 f0       	breq	.+14     	; 0x1a94 <apply_orbs+0xae>
3039
    1a86:	e0 91 5d 03 	lds	r30, 0x035D
3040
    1a8a:	f0 91 5e 03 	lds	r31, 0x035E
3041
    1a8e:	80 81       	ld	r24, Z
3042
    1a90:	8b 7f       	andi	r24, 0xFB	; 251
3043
    1a92:	80 83       	st	Z, r24
3044
    1a94:	90 91 a6 05 	lds	r25, 0x05A6
3045
    1a98:	e0 91 5d 03 	lds	r30, 0x035D
3046
    1a9c:	f0 91 5e 03 	lds	r31, 0x035E
3047
    1aa0:	91 50       	subi	r25, 0x01	; 1
3048
    1aa2:	97 83       	std	Z+7, r25	; 0x07
3049
    1aa4:	9f 5f       	subi	r25, 0xFF	; 255
3050
    1aa6:	e0 91 5d 03 	lds	r30, 0x035D
3051
    1aaa:	f0 91 5e 03 	lds	r31, 0x035E
3052
    1aae:	80 e1       	ldi	r24, 0x10	; 16
3053
    1ab0:	80 87       	std	Z+8, r24	; 0x08
3054
    1ab2:	99 23       	and	r25, r25
3055
    1ab4:	39 f0       	breq	.+14     	; 0x1ac4 <apply_orbs+0xde>
3056
    1ab6:	e0 91 5d 03 	lds	r30, 0x035D
3057
    1aba:	f0 91 5e 03 	lds	r31, 0x035E
3058
    1abe:	80 81       	ld	r24, Z
3059
    1ac0:	8f 7e       	andi	r24, 0xEF	; 239
3060
    1ac2:	80 83       	st	Z, r24
3061
    1ac4:	90 91 a7 05 	lds	r25, 0x05A7
3062
    1ac8:	e0 91 5d 03 	lds	r30, 0x035D
3063
    1acc:	f0 91 5e 03 	lds	r31, 0x035E
3064
    1ad0:	91 50       	subi	r25, 0x01	; 1
3065
    1ad2:	91 87       	std	Z+9, r25	; 0x09
3066
    1ad4:	9f 5f       	subi	r25, 0xFF	; 255
3067
    1ad6:	e0 91 5d 03 	lds	r30, 0x035D
3068
    1ada:	f0 91 5e 03 	lds	r31, 0x035E
3069
    1ade:	80 e2       	ldi	r24, 0x20	; 32
3070
    1ae0:	82 87       	std	Z+10, r24	; 0x0a
3071
    1ae2:	99 23       	and	r25, r25
3072
    1ae4:	39 f0       	breq	.+14     	; 0x1af4 <apply_orbs+0x10e>
3073
    1ae6:	e0 91 5d 03 	lds	r30, 0x035D
3074
    1aea:	f0 91 5e 03 	lds	r31, 0x035E
3075
    1aee:	80 81       	ld	r24, Z
3076
    1af0:	8f 7d       	andi	r24, 0xDF	; 223
3077
    1af2:	80 83       	st	Z, r24
3078
    1af4:	90 91 a8 05 	lds	r25, 0x05A8
3079
    1af8:	e0 91 5d 03 	lds	r30, 0x035D
3080
    1afc:	f0 91 5e 03 	lds	r31, 0x035E
3081
    1b00:	91 50       	subi	r25, 0x01	; 1
3082
    1b02:	93 87       	std	Z+11, r25	; 0x0b
3083
    1b04:	9f 5f       	subi	r25, 0xFF	; 255
3084
    1b06:	e0 91 5d 03 	lds	r30, 0x035D
3085
    1b0a:	f0 91 5e 03 	lds	r31, 0x035E
3086
    1b0e:	80 e4       	ldi	r24, 0x40	; 64
3087
    1b10:	84 87       	std	Z+12, r24	; 0x0c
3088
    1b12:	99 23       	and	r25, r25
3089
    1b14:	39 f0       	breq	.+14     	; 0x1b24 <apply_orbs+0x13e>
3090
    1b16:	e0 91 5d 03 	lds	r30, 0x035D
3091
    1b1a:	f0 91 5e 03 	lds	r31, 0x035E
3092
    1b1e:	80 81       	ld	r24, Z
3093
    1b20:	8f 7b       	andi	r24, 0xBF	; 191
3094
    1b22:	80 83       	st	Z, r24
3095
    1b24:	e0 91 5d 03 	lds	r30, 0x035D
3096
    1b28:	f0 91 5e 03 	lds	r31, 0x035E
3097
    1b2c:	91 81       	ldd	r25, Z+1	; 0x01
3098
    1b2e:	83 81       	ldd	r24, Z+3	; 0x03
3099
    1b30:	89 17       	cp	r24, r25
3100
    1b32:	10 f0       	brcs	.+4      	; 0x1b38 <apply_orbs+0x152>
3101
    1b34:	61 e0       	ldi	r22, 0x01	; 1
3102
    1b36:	07 c0       	rjmp	.+14     	; 0x1b46 <apply_orbs+0x160>
3103
    1b38:	81 83       	std	Z+1, r24	; 0x01
3104
    1b3a:	93 83       	std	Z+3, r25	; 0x03
3105
    1b3c:	92 81       	ldd	r25, Z+2	; 0x02
3106
    1b3e:	84 81       	ldd	r24, Z+4	; 0x04
3107
    1b40:	82 83       	std	Z+2, r24	; 0x02
3108
    1b42:	94 83       	std	Z+4, r25	; 0x04
3109
    1b44:	60 e0       	ldi	r22, 0x00	; 0
3110
    1b46:	df 01       	movw	r26, r30
3111
    1b48:	15 96       	adiw	r26, 0x05	; 5
3112
    1b4a:	93 81       	ldd	r25, Z+3	; 0x03
3113
    1b4c:	85 81       	ldd	r24, Z+5	; 0x05
3114
    1b4e:	89 17       	cp	r24, r25
3115
    1b50:	40 f4       	brcc	.+16     	; 0x1b62 <apply_orbs+0x17c>
3116
    1b52:	83 83       	std	Z+3, r24	; 0x03
3117
    1b54:	95 83       	std	Z+5, r25	; 0x05
3118
    1b56:	94 81       	ldd	r25, Z+4	; 0x04
3119
    1b58:	ed 01       	movw	r28, r26
3120
    1b5a:	89 81       	ldd	r24, Y+1	; 0x01
3121
    1b5c:	84 83       	std	Z+4, r24	; 0x04
3122
    1b5e:	99 83       	std	Y+1, r25	; 0x01
3123
    1b60:	60 e0       	ldi	r22, 0x00	; 0
3124
    1b62:	8f 01       	movw	r16, r30
3125
    1b64:	09 5f       	subi	r16, 0xF9	; 249
3126
    1b66:	1f 4f       	sbci	r17, 0xFF	; 255
3127
    1b68:	95 81       	ldd	r25, Z+5	; 0x05
3128
    1b6a:	87 81       	ldd	r24, Z+7	; 0x07
3129
    1b6c:	89 17       	cp	r24, r25
3130
    1b6e:	58 f4       	brcc	.+22     	; 0x1b86 <apply_orbs+0x1a0>
3131
    1b70:	85 83       	std	Z+5, r24	; 0x05
3132
    1b72:	97 83       	std	Z+7, r25	; 0x07
3133
    1b74:	ed 01       	movw	r28, r26
3134
    1b76:	99 81       	ldd	r25, Y+1	; 0x01
3135
    1b78:	e8 01       	movw	r28, r16
3136
    1b7a:	89 81       	ldd	r24, Y+1	; 0x01
3137
    1b7c:	ed 01       	movw	r28, r26
3138
    1b7e:	89 83       	std	Y+1, r24	; 0x01
3139
    1b80:	e8 01       	movw	r28, r16
3140
    1b82:	99 83       	std	Y+1, r25	; 0x01
3141
    1b84:	60 e0       	ldi	r22, 0x00	; 0
3142
    1b86:	9f 01       	movw	r18, r30
3143
    1b88:	27 5f       	subi	r18, 0xF7	; 247
3144
    1b8a:	3f 4f       	sbci	r19, 0xFF	; 255
3145
    1b8c:	97 81       	ldd	r25, Z+7	; 0x07
3146
    1b8e:	81 85       	ldd	r24, Z+9	; 0x09
3147
    1b90:	89 17       	cp	r24, r25
3148
    1b92:	58 f4       	brcc	.+22     	; 0x1baa <apply_orbs+0x1c4>
3149
    1b94:	87 83       	std	Z+7, r24	; 0x07
3150
    1b96:	91 87       	std	Z+9, r25	; 0x09
3151
    1b98:	e8 01       	movw	r28, r16
3152
    1b9a:	99 81       	ldd	r25, Y+1	; 0x01
3153
    1b9c:	e9 01       	movw	r28, r18
3154
    1b9e:	89 81       	ldd	r24, Y+1	; 0x01
3155
    1ba0:	e8 01       	movw	r28, r16
3156
    1ba2:	89 83       	std	Y+1, r24	; 0x01
3157
    1ba4:	e9 01       	movw	r28, r18
3158
    1ba6:	99 83       	std	Y+1, r25	; 0x01
3159
    1ba8:	60 e0       	ldi	r22, 0x00	; 0
3160
    1baa:	af 01       	movw	r20, r30
3161
    1bac:	45 5f       	subi	r20, 0xF5	; 245
3162
    1bae:	5f 4f       	sbci	r21, 0xFF	; 255
3163
    1bb0:	91 85       	ldd	r25, Z+9	; 0x09
3164
    1bb2:	83 85       	ldd	r24, Z+11	; 0x0b
3165
    1bb4:	89 17       	cp	r24, r25
3166
    1bb6:	58 f4       	brcc	.+22     	; 0x1bce <apply_orbs+0x1e8>
3167
    1bb8:	81 87       	std	Z+9, r24	; 0x09
3168
    1bba:	93 87       	std	Z+11, r25	; 0x0b
3169
    1bbc:	e9 01       	movw	r28, r18
3170
    1bbe:	99 81       	ldd	r25, Y+1	; 0x01
3171
    1bc0:	ea 01       	movw	r28, r20
3172
    1bc2:	89 81       	ldd	r24, Y+1	; 0x01
3173
    1bc4:	e9 01       	movw	r28, r18
3174
    1bc6:	89 83       	std	Y+1, r24	; 0x01
3175
    1bc8:	ea 01       	movw	r28, r20
3176
    1bca:	99 83       	std	Y+1, r25	; 0x01
3177
    1bcc:	03 c0       	rjmp	.+6      	; 0x1bd4 <apply_orbs+0x1ee>
3178
    1bce:	66 23       	and	r22, r22
3179
    1bd0:	09 f0       	breq	.+2      	; 0x1bd4 <apply_orbs+0x1ee>
3180
    1bd2:	8f c0       	rjmp	.+286    	; 0x1cf2 <apply_orbs+0x30c>
3181
    1bd4:	91 81       	ldd	r25, Z+1	; 0x01
3182
    1bd6:	83 81       	ldd	r24, Z+3	; 0x03
3183
    1bd8:	89 17       	cp	r24, r25
3184
    1bda:	10 f0       	brcs	.+4      	; 0x1be0 <apply_orbs+0x1fa>
3185
    1bdc:	41 e0       	ldi	r20, 0x01	; 1
3186
    1bde:	07 c0       	rjmp	.+14     	; 0x1bee <apply_orbs+0x208>
3187
    1be0:	81 83       	std	Z+1, r24	; 0x01
3188
    1be2:	93 83       	std	Z+3, r25	; 0x03
3189
    1be4:	92 81       	ldd	r25, Z+2	; 0x02
3190
    1be6:	84 81       	ldd	r24, Z+4	; 0x04
3191
    1be8:	82 83       	std	Z+2, r24	; 0x02
3192
    1bea:	94 83       	std	Z+4, r25	; 0x04
3193
    1bec:	40 e0       	ldi	r20, 0x00	; 0
3194
    1bee:	93 81       	ldd	r25, Z+3	; 0x03
3195
    1bf0:	8c 91       	ld	r24, X
3196
    1bf2:	89 17       	cp	r24, r25
3197
    1bf4:	40 f4       	brcc	.+16     	; 0x1c06 <apply_orbs+0x220>
3198
    1bf6:	83 83       	std	Z+3, r24	; 0x03
3199
    1bf8:	9c 93       	st	X, r25
3200
    1bfa:	94 81       	ldd	r25, Z+4	; 0x04
3201
    1bfc:	ed 01       	movw	r28, r26
3202
    1bfe:	89 81       	ldd	r24, Y+1	; 0x01
3203
    1c00:	84 83       	std	Z+4, r24	; 0x04
3204
    1c02:	99 83       	std	Y+1, r25	; 0x01
3205
    1c04:	40 e0       	ldi	r20, 0x00	; 0
3206
    1c06:	9c 91       	ld	r25, X
3207
    1c08:	e8 01       	movw	r28, r16
3208
    1c0a:	88 81       	ld	r24, Y
3209
    1c0c:	89 17       	cp	r24, r25
3210
    1c0e:	58 f4       	brcc	.+22     	; 0x1c26 <apply_orbs+0x240>
3211
    1c10:	8c 93       	st	X, r24
3212
    1c12:	98 83       	st	Y, r25
3213
    1c14:	ed 01       	movw	r28, r26
3214
    1c16:	99 81       	ldd	r25, Y+1	; 0x01
3215
    1c18:	e8 01       	movw	r28, r16
3216
    1c1a:	89 81       	ldd	r24, Y+1	; 0x01
3217
    1c1c:	ed 01       	movw	r28, r26
3218
    1c1e:	89 83       	std	Y+1, r24	; 0x01
3219
    1c20:	e8 01       	movw	r28, r16
3220
    1c22:	99 83       	std	Y+1, r25	; 0x01
3221
    1c24:	40 e0       	ldi	r20, 0x00	; 0
3222
    1c26:	e8 01       	movw	r28, r16
3223
    1c28:	98 81       	ld	r25, Y
3224
    1c2a:	e9 01       	movw	r28, r18
3225
    1c2c:	88 81       	ld	r24, Y
3226
    1c2e:	89 17       	cp	r24, r25
3227
    1c30:	68 f4       	brcc	.+26     	; 0x1c4c <apply_orbs+0x266>
3228
    1c32:	e8 01       	movw	r28, r16
3229
    1c34:	88 83       	st	Y, r24
3230
    1c36:	e9 01       	movw	r28, r18
3231
    1c38:	98 83       	st	Y, r25
3232
    1c3a:	e8 01       	movw	r28, r16
3233
    1c3c:	99 81       	ldd	r25, Y+1	; 0x01
3234
    1c3e:	e9 01       	movw	r28, r18
3235
    1c40:	89 81       	ldd	r24, Y+1	; 0x01
3236
    1c42:	e8 01       	movw	r28, r16
3237
    1c44:	89 83       	std	Y+1, r24	; 0x01
3238
    1c46:	e9 01       	movw	r28, r18
3239
    1c48:	99 83       	std	Y+1, r25	; 0x01
3240
    1c4a:	03 c0       	rjmp	.+6      	; 0x1c52 <apply_orbs+0x26c>
3241
    1c4c:	44 23       	and	r20, r20
3242
    1c4e:	09 f0       	breq	.+2      	; 0x1c52 <apply_orbs+0x26c>
3243
    1c50:	50 c0       	rjmp	.+160    	; 0x1cf2 <apply_orbs+0x30c>
3244
    1c52:	91 81       	ldd	r25, Z+1	; 0x01
3245
    1c54:	83 81       	ldd	r24, Z+3	; 0x03
3246
    1c56:	89 17       	cp	r24, r25
3247
    1c58:	10 f0       	brcs	.+4      	; 0x1c5e <apply_orbs+0x278>
3248
    1c5a:	21 e0       	ldi	r18, 0x01	; 1
3249
    1c5c:	07 c0       	rjmp	.+14     	; 0x1c6c <apply_orbs+0x286>
3250
    1c5e:	81 83       	std	Z+1, r24	; 0x01
3251
    1c60:	93 83       	std	Z+3, r25	; 0x03
3252
    1c62:	92 81       	ldd	r25, Z+2	; 0x02
3253
    1c64:	84 81       	ldd	r24, Z+4	; 0x04
3254
    1c66:	82 83       	std	Z+2, r24	; 0x02
3255
    1c68:	94 83       	std	Z+4, r25	; 0x04
3256
    1c6a:	20 e0       	ldi	r18, 0x00	; 0
3257
    1c6c:	93 81       	ldd	r25, Z+3	; 0x03
3258
    1c6e:	8c 91       	ld	r24, X
3259
    1c70:	89 17       	cp	r24, r25
3260
    1c72:	40 f4       	brcc	.+16     	; 0x1c84 <apply_orbs+0x29e>
3261
    1c74:	83 83       	std	Z+3, r24	; 0x03
3262
    1c76:	9c 93       	st	X, r25
3263
    1c78:	94 81       	ldd	r25, Z+4	; 0x04
3264
    1c7a:	ed 01       	movw	r28, r26
3265
    1c7c:	89 81       	ldd	r24, Y+1	; 0x01
3266
    1c7e:	84 83       	std	Z+4, r24	; 0x04
3267
    1c80:	99 83       	std	Y+1, r25	; 0x01
3268
    1c82:	20 e0       	ldi	r18, 0x00	; 0
3269
    1c84:	9c 91       	ld	r25, X
3270
    1c86:	e8 01       	movw	r28, r16
3271
    1c88:	88 81       	ld	r24, Y
3272
    1c8a:	89 17       	cp	r24, r25
3273
    1c8c:	58 f4       	brcc	.+22     	; 0x1ca4 <apply_orbs+0x2be>
3274
    1c8e:	8c 93       	st	X, r24
3275
    1c90:	98 83       	st	Y, r25
3276
    1c92:	ed 01       	movw	r28, r26
3277
    1c94:	99 81       	ldd	r25, Y+1	; 0x01
3278
    1c96:	e8 01       	movw	r28, r16
3279
    1c98:	89 81       	ldd	r24, Y+1	; 0x01
3280
    1c9a:	ed 01       	movw	r28, r26
3281
    1c9c:	89 83       	std	Y+1, r24	; 0x01
3282
    1c9e:	e8 01       	movw	r28, r16
3283
    1ca0:	99 83       	std	Y+1, r25	; 0x01
3284
    1ca2:	02 c0       	rjmp	.+4      	; 0x1ca8 <apply_orbs+0x2c2>
3285
    1ca4:	22 23       	and	r18, r18
3286
    1ca6:	29 f5       	brne	.+74     	; 0x1cf2 <apply_orbs+0x30c>
3287
    1ca8:	91 81       	ldd	r25, Z+1	; 0x01
3288
    1caa:	83 81       	ldd	r24, Z+3	; 0x03
3289
    1cac:	89 17       	cp	r24, r25
3290
    1cae:	10 f0       	brcs	.+4      	; 0x1cb4 <apply_orbs+0x2ce>
3291
    1cb0:	21 e0       	ldi	r18, 0x01	; 1
3292
    1cb2:	07 c0       	rjmp	.+14     	; 0x1cc2 <apply_orbs+0x2dc>
3293
    1cb4:	81 83       	std	Z+1, r24	; 0x01
3294
    1cb6:	93 83       	std	Z+3, r25	; 0x03
3295
    1cb8:	92 81       	ldd	r25, Z+2	; 0x02
3296
    1cba:	84 81       	ldd	r24, Z+4	; 0x04
3297
    1cbc:	82 83       	std	Z+2, r24	; 0x02
3298
    1cbe:	94 83       	std	Z+4, r25	; 0x04
3299
    1cc0:	20 e0       	ldi	r18, 0x00	; 0
3300
    1cc2:	93 81       	ldd	r25, Z+3	; 0x03
3301
    1cc4:	8c 91       	ld	r24, X
3302
    1cc6:	89 17       	cp	r24, r25
3303
    1cc8:	40 f4       	brcc	.+16     	; 0x1cda <apply_orbs+0x2f4>
3304
    1cca:	83 83       	std	Z+3, r24	; 0x03
3305
    1ccc:	9c 93       	st	X, r25
3306
    1cce:	94 81       	ldd	r25, Z+4	; 0x04
3307
    1cd0:	ed 01       	movw	r28, r26
3308
    1cd2:	89 81       	ldd	r24, Y+1	; 0x01
3309
    1cd4:	84 83       	std	Z+4, r24	; 0x04
3310
    1cd6:	99 83       	std	Y+1, r25	; 0x01
3311
    1cd8:	02 c0       	rjmp	.+4      	; 0x1cde <apply_orbs+0x2f8>
3312
    1cda:	22 23       	and	r18, r18
3313
    1cdc:	51 f4       	brne	.+20     	; 0x1cf2 <apply_orbs+0x30c>
3314
    1cde:	91 81       	ldd	r25, Z+1	; 0x01
3315
    1ce0:	83 81       	ldd	r24, Z+3	; 0x03
3316
    1ce2:	89 17       	cp	r24, r25
3317
    1ce4:	30 f4       	brcc	.+12     	; 0x1cf2 <apply_orbs+0x30c>
3318
    1ce6:	81 83       	std	Z+1, r24	; 0x01
3319
    1ce8:	93 83       	std	Z+3, r25	; 0x03
3320
    1cea:	92 81       	ldd	r25, Z+2	; 0x02
3321
    1cec:	84 81       	ldd	r24, Z+4	; 0x04
3322
    1cee:	82 83       	std	Z+2, r24	; 0x02
3323
    1cf0:	94 83       	std	Z+4, r25	; 0x04
3324
    1cf2:	4f b7       	in	r20, 0x3f	; 63
3325
    1cf4:	f8 94       	cli
3326
    1cf6:	20 91 5d 03 	lds	r18, 0x035D
3327
    1cfa:	30 91 5e 03 	lds	r19, 0x035E
3328
    1cfe:	80 91 5f 03 	lds	r24, 0x035F
3329
    1d02:	90 91 60 03 	lds	r25, 0x0360
3330
    1d06:	90 93 5e 03 	sts	0x035E, r25
3331
    1d0a:	80 93 5d 03 	sts	0x035D, r24
3332
    1d0e:	30 93 60 03 	sts	0x0360, r19
3333
    1d12:	20 93 5f 03 	sts	0x035F, r18
3334
    1d16:	4f bf       	out	0x3f, r20	; 63
3335
    1d18:	81 e0       	ldi	r24, 0x01	; 1
3336
    1d1a:	80 93 6e 04 	sts	0x046E, r24
3337
    1d1e:	21 c0       	rjmp	.+66     	; 0x1d62 <apply_orbs+0x37c>
3338
    1d20:	80 91 a3 05 	lds	r24, 0x05A3
3339
    1d24:	81 11       	cpse	r24, r1
3340
    1d26:	81 e0       	ldi	r24, 0x01	; 1
3341
    1d28:	28 2f       	mov	r18, r24
3342
    1d2a:	80 91 a4 05 	lds	r24, 0x05A4
3343
    1d2e:	81 11       	cpse	r24, r1
3344
    1d30:	22 60       	ori	r18, 0x02	; 2
3345
    1d32:	80 91 a5 05 	lds	r24, 0x05A5
3346
    1d36:	81 11       	cpse	r24, r1
3347
    1d38:	24 60       	ori	r18, 0x04	; 4
3348
    1d3a:	80 91 a6 05 	lds	r24, 0x05A6
3349
    1d3e:	81 11       	cpse	r24, r1
3350
    1d40:	20 61       	ori	r18, 0x10	; 16
3351
    1d42:	80 91 a7 05 	lds	r24, 0x05A7
3352
    1d46:	81 11       	cpse	r24, r1
3353
    1d48:	20 62       	ori	r18, 0x20	; 32
3354
    1d4a:	80 91 a8 05 	lds	r24, 0x05A8
3355
    1d4e:	81 11       	cpse	r24, r1
3356
    1d50:	20 64       	ori	r18, 0x40	; 64
3357
    1d52:	9f b7       	in	r25, 0x3f	; 63
3358
    1d54:	f8 94       	cli
3359
    1d56:	85 b3       	in	r24, 0x15	; 21
3360
    1d58:	20 95       	com	r18
3361
    1d5a:	87 67       	ori	r24, 0x77	; 119
3362
    1d5c:	82 23       	and	r24, r18
3363
    1d5e:	85 bb       	out	0x15, r24	; 21
3364
    1d60:	9f bf       	out	0x3f, r25	; 63
3365
    1d62:	df 91       	pop	r29
3366
    1d64:	cf 91       	pop	r28
3367
    1d66:	1f 91       	pop	r17
3368
    1d68:	0f 91       	pop	r16
3369
    1d6a:	08 95       	ret
3370

    
3371
00001d6c <orb_n_set>:
3372
    1d6c:	98 2f       	mov	r25, r24
3373
    1d6e:	3f b7       	in	r19, 0x3f	; 63
3374
    1d70:	f8 94       	cli
3375
    1d72:	80 91 70 04 	lds	r24, 0x0470
3376
    1d76:	88 23       	and	r24, r24
3377
    1d78:	19 f0       	breq	.+6      	; 0x1d80 <orb_n_set+0x14>
3378
    1d7a:	e0 e0       	ldi	r30, 0x00	; 0
3379
    1d7c:	f0 e0       	ldi	r31, 0x00	; 0
3380
    1d7e:	05 c0       	rjmp	.+10     	; 0x1d8a <orb_n_set+0x1e>
3381
    1d80:	81 e0       	ldi	r24, 0x01	; 1
3382
    1d82:	80 93 70 04 	sts	0x0470, r24
3383
    1d86:	e1 e0       	ldi	r30, 0x01	; 1
3384
    1d88:	f0 e0       	ldi	r31, 0x00	; 0
3385
    1d8a:	3f bf       	out	0x3f, r19	; 63
3386
    1d8c:	31 97       	sbiw	r30, 0x01	; 1
3387
    1d8e:	81 f4       	brne	.+32     	; 0x1db0 <orb_n_set+0x44>
3388
    1d90:	89 2f       	mov	r24, r25
3389
    1d92:	99 27       	eor	r25, r25
3390
    1d94:	fc 01       	movw	r30, r24
3391
    1d96:	ee 0f       	add	r30, r30
3392
    1d98:	ff 1f       	adc	r31, r31
3393
    1d9a:	e8 0f       	add	r30, r24
3394
    1d9c:	f9 1f       	adc	r31, r25
3395
    1d9e:	ed 55       	subi	r30, 0x5D	; 93
3396
    1da0:	fa 4f       	sbci	r31, 0xFA	; 250
3397
    1da2:	60 83       	st	Z, r22
3398
    1da4:	41 83       	std	Z+1, r20	; 0x01
3399
    1da6:	22 83       	std	Z+2, r18	; 0x02
3400
    1da8:	0e 94 f3 0c 	call	0x19e6	; 0x19e6 <apply_orbs>
3401
    1dac:	10 92 70 04 	sts	0x0470, r1
3402
    1db0:	08 95       	ret
3403

    
3404
00001db2 <orb1_set>:
3405
    1db2:	38 2f       	mov	r19, r24
3406
    1db4:	2f b7       	in	r18, 0x3f	; 63
3407
    1db6:	f8 94       	cli
3408
    1db8:	80 91 70 04 	lds	r24, 0x0470
3409
    1dbc:	88 23       	and	r24, r24
3410
    1dbe:	19 f0       	breq	.+6      	; 0x1dc6 <orb1_set+0x14>
3411
    1dc0:	80 e0       	ldi	r24, 0x00	; 0
3412
    1dc2:	90 e0       	ldi	r25, 0x00	; 0
3413
    1dc4:	05 c0       	rjmp	.+10     	; 0x1dd0 <orb1_set+0x1e>
3414
    1dc6:	81 e0       	ldi	r24, 0x01	; 1
3415
    1dc8:	80 93 70 04 	sts	0x0470, r24
3416
    1dcc:	81 e0       	ldi	r24, 0x01	; 1
3417
    1dce:	90 e0       	ldi	r25, 0x00	; 0
3418
    1dd0:	2f bf       	out	0x3f, r18	; 63
3419
    1dd2:	01 97       	sbiw	r24, 0x01	; 1
3420
    1dd4:	51 f4       	brne	.+20     	; 0x1dea <orb1_set+0x38>
3421
    1dd6:	30 93 a3 05 	sts	0x05A3, r19
3422
    1dda:	60 93 a4 05 	sts	0x05A4, r22
3423
    1dde:	40 93 a5 05 	sts	0x05A5, r20
3424
    1de2:	0e 94 f3 0c 	call	0x19e6	; 0x19e6 <apply_orbs>
3425
    1de6:	10 92 70 04 	sts	0x0470, r1
3426
    1dea:	08 95       	ret
3427

    
3428
00001dec <orb2_set>:
3429
    1dec:	38 2f       	mov	r19, r24
3430
    1dee:	2f b7       	in	r18, 0x3f	; 63
3431
    1df0:	f8 94       	cli
3432
    1df2:	80 91 70 04 	lds	r24, 0x0470
3433
    1df6:	88 23       	and	r24, r24
3434
    1df8:	19 f0       	breq	.+6      	; 0x1e00 <orb2_set+0x14>
3435
    1dfa:	80 e0       	ldi	r24, 0x00	; 0
3436
    1dfc:	90 e0       	ldi	r25, 0x00	; 0
3437
    1dfe:	05 c0       	rjmp	.+10     	; 0x1e0a <orb2_set+0x1e>
3438
    1e00:	81 e0       	ldi	r24, 0x01	; 1
3439
    1e02:	80 93 70 04 	sts	0x0470, r24
3440
    1e06:	81 e0       	ldi	r24, 0x01	; 1
3441
    1e08:	90 e0       	ldi	r25, 0x00	; 0
3442
    1e0a:	2f bf       	out	0x3f, r18	; 63
3443
    1e0c:	01 97       	sbiw	r24, 0x01	; 1
3444
    1e0e:	51 f4       	brne	.+20     	; 0x1e24 <orb2_set+0x38>
3445
    1e10:	30 93 a6 05 	sts	0x05A6, r19
3446
    1e14:	60 93 a7 05 	sts	0x05A7, r22
3447
    1e18:	40 93 a8 05 	sts	0x05A8, r20
3448
    1e1c:	0e 94 f3 0c 	call	0x19e6	; 0x19e6 <apply_orbs>
3449
    1e20:	10 92 70 04 	sts	0x0470, r1
3450
    1e24:	08 95       	ret
3451

    
3452
00001e26 <orb_set>:
3453
    1e26:	38 2f       	mov	r19, r24
3454
    1e28:	2f b7       	in	r18, 0x3f	; 63
3455
    1e2a:	f8 94       	cli
3456
    1e2c:	80 91 70 04 	lds	r24, 0x0470
3457
    1e30:	88 23       	and	r24, r24
3458
    1e32:	19 f0       	breq	.+6      	; 0x1e3a <orb_set+0x14>
3459
    1e34:	80 e0       	ldi	r24, 0x00	; 0
3460
    1e36:	90 e0       	ldi	r25, 0x00	; 0
3461
    1e38:	05 c0       	rjmp	.+10     	; 0x1e44 <orb_set+0x1e>
3462
    1e3a:	81 e0       	ldi	r24, 0x01	; 1
3463
    1e3c:	80 93 70 04 	sts	0x0470, r24
3464
    1e40:	81 e0       	ldi	r24, 0x01	; 1
3465
    1e42:	90 e0       	ldi	r25, 0x00	; 0
3466
    1e44:	2f bf       	out	0x3f, r18	; 63
3467
    1e46:	01 97       	sbiw	r24, 0x01	; 1
3468
    1e48:	81 f4       	brne	.+32     	; 0x1e6a <orb_set+0x44>
3469
    1e4a:	30 93 a3 05 	sts	0x05A3, r19
3470
    1e4e:	60 93 a4 05 	sts	0x05A4, r22
3471
    1e52:	40 93 a5 05 	sts	0x05A5, r20
3472
    1e56:	30 93 a6 05 	sts	0x05A6, r19
3473
    1e5a:	60 93 a7 05 	sts	0x05A7, r22
3474
    1e5e:	40 93 a8 05 	sts	0x05A8, r20
3475
    1e62:	0e 94 f3 0c 	call	0x19e6	; 0x19e6 <apply_orbs>
3476
    1e66:	10 92 70 04 	sts	0x0470, r1
3477
    1e6a:	08 95       	ret
3478

    
3479
00001e6c <orbs_set>:
3480
    1e6c:	ef 92       	push	r14
3481
    1e6e:	0f 93       	push	r16
3482
    1e70:	58 2f       	mov	r21, r24
3483
    1e72:	3f b7       	in	r19, 0x3f	; 63
3484
    1e74:	f8 94       	cli
3485
    1e76:	80 91 70 04 	lds	r24, 0x0470
3486
    1e7a:	88 23       	and	r24, r24
3487
    1e7c:	19 f0       	breq	.+6      	; 0x1e84 <orbs_set+0x18>
3488
    1e7e:	80 e0       	ldi	r24, 0x00	; 0
3489
    1e80:	90 e0       	ldi	r25, 0x00	; 0
3490
    1e82:	05 c0       	rjmp	.+10     	; 0x1e8e <orbs_set+0x22>
3491
    1e84:	81 e0       	ldi	r24, 0x01	; 1
3492
    1e86:	80 93 70 04 	sts	0x0470, r24
3493
    1e8a:	81 e0       	ldi	r24, 0x01	; 1
3494
    1e8c:	90 e0       	ldi	r25, 0x00	; 0
3495
    1e8e:	3f bf       	out	0x3f, r19	; 63
3496
    1e90:	01 97       	sbiw	r24, 0x01	; 1
3497
    1e92:	81 f4       	brne	.+32     	; 0x1eb4 <orbs_set+0x48>
3498
    1e94:	50 93 a3 05 	sts	0x05A3, r21
3499
    1e98:	60 93 a4 05 	sts	0x05A4, r22
3500
    1e9c:	40 93 a5 05 	sts	0x05A5, r20
3501
    1ea0:	20 93 a6 05 	sts	0x05A6, r18
3502
    1ea4:	00 93 a7 05 	sts	0x05A7, r16
3503
    1ea8:	e0 92 a8 05 	sts	0x05A8, r14
3504
    1eac:	0e 94 f3 0c 	call	0x19e6	; 0x19e6 <apply_orbs>
3505
    1eb0:	10 92 70 04 	sts	0x0470, r1
3506
    1eb4:	0f 91       	pop	r16
3507
    1eb6:	ef 90       	pop	r14
3508
    1eb8:	08 95       	ret
3509

    
3510
00001eba <orb_n_set_color>:
3511
    1eba:	77 27       	eor	r23, r23
3512
    1ebc:	ab 01       	movw	r20, r22
3513
    1ebe:	43 70       	andi	r20, 0x03	; 3
3514
    1ec0:	50 70       	andi	r21, 0x00	; 0
3515
    1ec2:	25 e5       	ldi	r18, 0x55	; 85
3516
    1ec4:	30 e0       	ldi	r19, 0x00	; 0
3517
    1ec6:	d9 01       	movw	r26, r18
3518
    1ec8:	4a 9f       	mul	r20, r26
3519
    1eca:	90 01       	movw	r18, r0
3520
    1ecc:	4b 9f       	mul	r20, r27
3521
    1ece:	30 0d       	add	r19, r0
3522
    1ed0:	5a 9f       	mul	r21, r26
3523
    1ed2:	30 0d       	add	r19, r0
3524
    1ed4:	11 24       	eor	r1, r1
3525
    1ed6:	ab 01       	movw	r20, r22
3526
    1ed8:	4c 71       	andi	r20, 0x1C	; 28
3527
    1eda:	50 70       	andi	r21, 0x00	; 0
3528
    1edc:	55 95       	asr	r21
3529
    1ede:	47 95       	ror	r20
3530
    1ee0:	55 95       	asr	r21
3531
    1ee2:	47 95       	ror	r20
3532
    1ee4:	e4 e2       	ldi	r30, 0x24	; 36
3533
    1ee6:	f0 e0       	ldi	r31, 0x00	; 0
3534
    1ee8:	da 01       	movw	r26, r20
3535
    1eea:	ae 9f       	mul	r26, r30
3536
    1eec:	a0 01       	movw	r20, r0
3537
    1eee:	af 9f       	mul	r26, r31
3538
    1ef0:	50 0d       	add	r21, r0
3539
    1ef2:	be 9f       	mul	r27, r30
3540
    1ef4:	50 0d       	add	r21, r0
3541
    1ef6:	11 24       	eor	r1, r1
3542
    1ef8:	a5 e0       	ldi	r26, 0x05	; 5
3543
    1efa:	76 95       	lsr	r23
3544
    1efc:	67 95       	ror	r22
3545
    1efe:	aa 95       	dec	r26
3546
    1f00:	e1 f7       	brne	.-8      	; 0x1efa <orb_n_set_color+0x40>
3547
    1f02:	db 01       	movw	r26, r22
3548
    1f04:	ae 9f       	mul	r26, r30
3549
    1f06:	b0 01       	movw	r22, r0
3550
    1f08:	af 9f       	mul	r26, r31
3551
    1f0a:	70 0d       	add	r23, r0
3552
    1f0c:	be 9f       	mul	r27, r30
3553
    1f0e:	70 0d       	add	r23, r0
3554
    1f10:	11 24       	eor	r1, r1
3555
    1f12:	0e 94 b6 0e 	call	0x1d6c	; 0x1d6c <orb_n_set>
3556
    1f16:	08 95       	ret
3557

    
3558
00001f18 <orb1_set_color>:
3559
    1f18:	99 27       	eor	r25, r25
3560
    1f1a:	ac 01       	movw	r20, r24
3561
    1f1c:	43 70       	andi	r20, 0x03	; 3
3562
    1f1e:	50 70       	andi	r21, 0x00	; 0
3563
    1f20:	25 e5       	ldi	r18, 0x55	; 85
3564
    1f22:	30 e0       	ldi	r19, 0x00	; 0
3565
    1f24:	ba 01       	movw	r22, r20
3566
    1f26:	62 9f       	mul	r22, r18
3567
    1f28:	a0 01       	movw	r20, r0
3568
    1f2a:	63 9f       	mul	r22, r19
3569
    1f2c:	50 0d       	add	r21, r0
3570
    1f2e:	72 9f       	mul	r23, r18
3571
    1f30:	50 0d       	add	r21, r0
3572
    1f32:	11 24       	eor	r1, r1
3573
    1f34:	9c 01       	movw	r18, r24
3574
    1f36:	2c 71       	andi	r18, 0x1C	; 28
3575
    1f38:	30 70       	andi	r19, 0x00	; 0
3576
    1f3a:	35 95       	asr	r19
3577
    1f3c:	27 95       	ror	r18
3578
    1f3e:	35 95       	asr	r19
3579
    1f40:	27 95       	ror	r18
3580
    1f42:	e4 e2       	ldi	r30, 0x24	; 36
3581
    1f44:	f0 e0       	ldi	r31, 0x00	; 0
3582
    1f46:	2e 9f       	mul	r18, r30
3583
    1f48:	b0 01       	movw	r22, r0
3584
    1f4a:	2f 9f       	mul	r18, r31
3585
    1f4c:	70 0d       	add	r23, r0
3586
    1f4e:	3e 9f       	mul	r19, r30
3587
    1f50:	70 0d       	add	r23, r0
3588
    1f52:	11 24       	eor	r1, r1
3589
    1f54:	25 e0       	ldi	r18, 0x05	; 5
3590
    1f56:	96 95       	lsr	r25
3591
    1f58:	87 95       	ror	r24
3592
    1f5a:	2a 95       	dec	r18
3593
    1f5c:	e1 f7       	brne	.-8      	; 0x1f56 <orb1_set_color+0x3e>
3594
    1f5e:	8e 9f       	mul	r24, r30
3595
    1f60:	80 2d       	mov	r24, r0
3596
    1f62:	11 24       	eor	r1, r1
3597
    1f64:	0e 94 d9 0e 	call	0x1db2	; 0x1db2 <orb1_set>
3598
    1f68:	08 95       	ret
3599

    
3600
00001f6a <orb2_set_color>:
3601
    1f6a:	99 27       	eor	r25, r25
3602
    1f6c:	ac 01       	movw	r20, r24
3603
    1f6e:	43 70       	andi	r20, 0x03	; 3
3604
    1f70:	50 70       	andi	r21, 0x00	; 0
3605
    1f72:	25 e5       	ldi	r18, 0x55	; 85
3606
    1f74:	30 e0       	ldi	r19, 0x00	; 0
3607
    1f76:	ba 01       	movw	r22, r20
3608
    1f78:	62 9f       	mul	r22, r18
3609
    1f7a:	a0 01       	movw	r20, r0
3610
    1f7c:	63 9f       	mul	r22, r19
3611
    1f7e:	50 0d       	add	r21, r0
3612
    1f80:	72 9f       	mul	r23, r18
3613
    1f82:	50 0d       	add	r21, r0
3614
    1f84:	11 24       	eor	r1, r1
3615
    1f86:	9c 01       	movw	r18, r24
3616
    1f88:	2c 71       	andi	r18, 0x1C	; 28
3617
    1f8a:	30 70       	andi	r19, 0x00	; 0
3618
    1f8c:	35 95       	asr	r19
3619
    1f8e:	27 95       	ror	r18
3620
    1f90:	35 95       	asr	r19
3621
    1f92:	27 95       	ror	r18
3622
    1f94:	e4 e2       	ldi	r30, 0x24	; 36
3623
    1f96:	f0 e0       	ldi	r31, 0x00	; 0
3624
    1f98:	2e 9f       	mul	r18, r30
3625
    1f9a:	b0 01       	movw	r22, r0
3626
    1f9c:	2f 9f       	mul	r18, r31
3627
    1f9e:	70 0d       	add	r23, r0
3628
    1fa0:	3e 9f       	mul	r19, r30
3629
    1fa2:	70 0d       	add	r23, r0
3630
    1fa4:	11 24       	eor	r1, r1
3631
    1fa6:	75 e0       	ldi	r23, 0x05	; 5
3632
    1fa8:	96 95       	lsr	r25
3633
    1faa:	87 95       	ror	r24
3634
    1fac:	7a 95       	dec	r23
3635
    1fae:	e1 f7       	brne	.-8      	; 0x1fa8 <orb2_set_color+0x3e>
3636
    1fb0:	8e 9f       	mul	r24, r30
3637
    1fb2:	80 2d       	mov	r24, r0
3638
    1fb4:	11 24       	eor	r1, r1
3639
    1fb6:	0e 94 f6 0e 	call	0x1dec	; 0x1dec <orb2_set>
3640
    1fba:	08 95       	ret
3641

    
3642
00001fbc <orb_set_color>:
3643
    1fbc:	99 27       	eor	r25, r25
3644
    1fbe:	ac 01       	movw	r20, r24
3645
    1fc0:	43 70       	andi	r20, 0x03	; 3
3646
    1fc2:	50 70       	andi	r21, 0x00	; 0
3647
    1fc4:	25 e5       	ldi	r18, 0x55	; 85
3648
    1fc6:	30 e0       	ldi	r19, 0x00	; 0
3649
    1fc8:	ba 01       	movw	r22, r20
3650
    1fca:	62 9f       	mul	r22, r18
3651
    1fcc:	a0 01       	movw	r20, r0
3652
    1fce:	63 9f       	mul	r22, r19
3653
    1fd0:	50 0d       	add	r21, r0
3654
    1fd2:	72 9f       	mul	r23, r18
3655
    1fd4:	50 0d       	add	r21, r0
3656
    1fd6:	11 24       	eor	r1, r1
3657
    1fd8:	9c 01       	movw	r18, r24
3658
    1fda:	2c 71       	andi	r18, 0x1C	; 28
3659
    1fdc:	30 70       	andi	r19, 0x00	; 0
3660
    1fde:	35 95       	asr	r19
3661
    1fe0:	27 95       	ror	r18
3662
    1fe2:	35 95       	asr	r19
3663
    1fe4:	27 95       	ror	r18
3664
    1fe6:	e4 e2       	ldi	r30, 0x24	; 36
3665
    1fe8:	f0 e0       	ldi	r31, 0x00	; 0
3666
    1fea:	2e 9f       	mul	r18, r30
3667
    1fec:	b0 01       	movw	r22, r0
3668
    1fee:	2f 9f       	mul	r18, r31
3669
    1ff0:	70 0d       	add	r23, r0
3670
    1ff2:	3e 9f       	mul	r19, r30
3671
    1ff4:	70 0d       	add	r23, r0
3672
    1ff6:	11 24       	eor	r1, r1
3673
    1ff8:	f5 e0       	ldi	r31, 0x05	; 5
3674
    1ffa:	96 95       	lsr	r25
3675
    1ffc:	87 95       	ror	r24
3676
    1ffe:	fa 95       	dec	r31
3677
    2000:	e1 f7       	brne	.-8      	; 0x1ffa <orb_set_color+0x3e>
3678
    2002:	8e 9f       	mul	r24, r30
3679
    2004:	80 2d       	mov	r24, r0
3680
    2006:	11 24       	eor	r1, r1
3681
    2008:	0e 94 13 0f 	call	0x1e26	; 0x1e26 <orb_set>
3682
    200c:	08 95       	ret
3683

    
3684
0000200e <orbs_set_color>:
3685
    200e:	ef 92       	push	r14
3686
    2010:	ff 92       	push	r15
3687
    2012:	0f 93       	push	r16
3688
    2014:	1f 93       	push	r17
3689
    2016:	77 27       	eor	r23, r23
3690
    2018:	e8 2f       	mov	r30, r24
3691
    201a:	ff 27       	eor	r31, r31
3692
    201c:	cb 01       	movw	r24, r22
3693
    201e:	83 70       	andi	r24, 0x03	; 3
3694
    2020:	90 70       	andi	r25, 0x00	; 0
3695
    2022:	a5 e5       	ldi	r26, 0x55	; 85
3696
    2024:	b0 e0       	ldi	r27, 0x00	; 0
3697
    2026:	8a 9f       	mul	r24, r26
3698
    2028:	70 01       	movw	r14, r0
3699
    202a:	8b 9f       	mul	r24, r27
3700
    202c:	f0 0c       	add	r15, r0
3701
    202e:	9a 9f       	mul	r25, r26
3702
    2030:	f0 0c       	add	r15, r0
3703
    2032:	11 24       	eor	r1, r1
3704
    2034:	9b 01       	movw	r18, r22
3705
    2036:	2c 71       	andi	r18, 0x1C	; 28
3706
    2038:	30 70       	andi	r19, 0x00	; 0
3707
    203a:	35 95       	asr	r19
3708
    203c:	27 95       	ror	r18
3709
    203e:	35 95       	asr	r19
3710
    2040:	27 95       	ror	r18
3711
    2042:	84 e2       	ldi	r24, 0x24	; 36
3712
    2044:	90 e0       	ldi	r25, 0x00	; 0
3713
    2046:	28 9f       	mul	r18, r24
3714
    2048:	80 01       	movw	r16, r0
3715
    204a:	29 9f       	mul	r18, r25
3716
    204c:	10 0d       	add	r17, r0
3717
    204e:	38 9f       	mul	r19, r24
3718
    2050:	10 0d       	add	r17, r0
3719
    2052:	11 24       	eor	r1, r1
3720
    2054:	25 e0       	ldi	r18, 0x05	; 5
3721
    2056:	76 95       	lsr	r23
3722
    2058:	67 95       	ror	r22
3723
    205a:	2a 95       	dec	r18
3724
    205c:	e1 f7       	brne	.-8      	; 0x2056 <orbs_set_color+0x48>
3725
    205e:	68 9f       	mul	r22, r24
3726
    2060:	90 01       	movw	r18, r0
3727
    2062:	69 9f       	mul	r22, r25
3728
    2064:	30 0d       	add	r19, r0
3729
    2066:	78 9f       	mul	r23, r24
3730
    2068:	30 0d       	add	r19, r0
3731
    206a:	11 24       	eor	r1, r1
3732
    206c:	af 01       	movw	r20, r30
3733
    206e:	43 70       	andi	r20, 0x03	; 3
3734
    2070:	50 70       	andi	r21, 0x00	; 0
3735
    2072:	ba 01       	movw	r22, r20
3736
    2074:	6a 9f       	mul	r22, r26
3737
    2076:	a0 01       	movw	r20, r0
3738
    2078:	6b 9f       	mul	r22, r27
3739
    207a:	50 0d       	add	r21, r0
3740
    207c:	7a 9f       	mul	r23, r26
3741
    207e:	50 0d       	add	r21, r0
3742
    2080:	11 24       	eor	r1, r1
3743
    2082:	bf 01       	movw	r22, r30
3744
    2084:	6c 71       	andi	r22, 0x1C	; 28
3745
    2086:	70 70       	andi	r23, 0x00	; 0
3746
    2088:	75 95       	asr	r23
3747
    208a:	67 95       	ror	r22
3748
    208c:	75 95       	asr	r23
3749
    208e:	67 95       	ror	r22
3750
    2090:	db 01       	movw	r26, r22
3751
    2092:	a8 9f       	mul	r26, r24
3752
    2094:	b0 01       	movw	r22, r0
3753
    2096:	a9 9f       	mul	r26, r25
3754
    2098:	70 0d       	add	r23, r0
3755
    209a:	b8 9f       	mul	r27, r24
3756
    209c:	70 0d       	add	r23, r0
3757
    209e:	11 24       	eor	r1, r1
3758
    20a0:	b5 e0       	ldi	r27, 0x05	; 5
3759
    20a2:	f6 95       	lsr	r31
3760
    20a4:	e7 95       	ror	r30
3761
    20a6:	ba 95       	dec	r27
3762
    20a8:	e1 f7       	brne	.-8      	; 0x20a2 <orbs_set_color+0x94>
3763
    20aa:	e8 9f       	mul	r30, r24
3764
    20ac:	80 2d       	mov	r24, r0
3765
    20ae:	11 24       	eor	r1, r1
3766
    20b0:	0e 94 36 0f 	call	0x1e6c	; 0x1e6c <orbs_set>
3767
    20b4:	1f 91       	pop	r17
3768
    20b6:	0f 91       	pop	r16
3769
    20b8:	ff 90       	pop	r15
3770
    20ba:	ef 90       	pop	r14
3771
    20bc:	08 95       	ret
3772

    
3773
000020be <orb_enable_timer>:
3774
    20be:	86 e0       	ldi	r24, 0x06	; 6
3775
    20c0:	83 bf       	out	0x33, r24	; 51
3776
    20c2:	87 b7       	in	r24, 0x37	; 55
3777
    20c4:	83 60       	ori	r24, 0x03	; 3
3778
    20c6:	87 bf       	out	0x37, r24	; 55
3779
    20c8:	08 95       	ret
3780

    
3781
000020ca <orb_disable_timer>:
3782
    20ca:	87 b7       	in	r24, 0x37	; 55
3783
    20cc:	8c 7f       	andi	r24, 0xFC	; 252
3784
    20ce:	87 bf       	out	0x37, r24	; 55
3785
    20d0:	08 95       	ret
3786

    
3787
000020d2 <orb_set_mode>:
3788
    20d2:	81 30       	cpi	r24, 0x01	; 1
3789
    20d4:	41 f4       	brne	.+16     	; 0x20e6 <orb_set_mode+0x14>
3790
    20d6:	87 b7       	in	r24, 0x37	; 55
3791
    20d8:	8c 7f       	andi	r24, 0xFC	; 252
3792
    20da:	87 bf       	out	0x37, r24	; 55
3793
    20dc:	10 92 5a 03 	sts	0x035A, r1
3794
    20e0:	0e 94 f3 0c 	call	0x19e6	; 0x19e6 <apply_orbs>
3795
    20e4:	08 95       	ret
3796
    20e6:	81 e0       	ldi	r24, 0x01	; 1
3797
    20e8:	80 93 5a 03 	sts	0x035A, r24
3798
    20ec:	0e 94 f3 0c 	call	0x19e6	; 0x19e6 <apply_orbs>
3799
    20f0:	86 e0       	ldi	r24, 0x06	; 6
3800
    20f2:	83 bf       	out	0x33, r24	; 51
3801
    20f4:	87 b7       	in	r24, 0x37	; 55
3802
    20f6:	83 60       	ori	r24, 0x03	; 3
3803
    20f8:	87 bf       	out	0x37, r24	; 55
3804
    20fa:	08 95       	ret
3805

    
3806
000020fc <orb_init_common>:
3807
    20fc:	85 b3       	in	r24, 0x15	; 21
3808
    20fe:	87 67       	ori	r24, 0x77	; 119
3809
    2100:	85 bb       	out	0x15, r24	; 21
3810
    2102:	84 b3       	in	r24, 0x14	; 20
3811
    2104:	87 67       	ori	r24, 0x77	; 119
3812
    2106:	84 bb       	out	0x14, r24	; 20
3813
    2108:	40 e0       	ldi	r20, 0x00	; 0
3814
    210a:	60 e0       	ldi	r22, 0x00	; 0
3815
    210c:	80 e0       	ldi	r24, 0x00	; 0
3816
    210e:	0e 94 13 0f 	call	0x1e26	; 0x1e26 <orb_set>
3817
    2112:	08 95       	ret
3818

    
3819
00002114 <orb_init_binary>:
3820
    2114:	0e 94 7e 10 	call	0x20fc	; 0x20fc <orb_init_common>
3821
    2118:	81 e0       	ldi	r24, 0x01	; 1
3822
    211a:	0e 94 69 10 	call	0x20d2	; 0x20d2 <orb_set_mode>
3823
    211e:	08 95       	ret
3824

    
3825
00002120 <orb_init_pwm>:
3826
    2120:	0e 94 7e 10 	call	0x20fc	; 0x20fc <orb_init_common>
3827
    2124:	80 e0       	ldi	r24, 0x00	; 0
3828
    2126:	0e 94 69 10 	call	0x20d2	; 0x20d2 <orb_set_mode>
3829
    212a:	08 95       	ret
3830

    
3831
0000212c <orb_init>:
3832
    212c:	0e 94 90 10 	call	0x2120	; 0x2120 <orb_init_pwm>
3833
    2130:	08 95       	ret
3834

    
3835
00002132 <motors_init>:
3836
    2132:	8b b3       	in	r24, 0x1b	; 27
3837
    2134:	8f 70       	andi	r24, 0x0F	; 15
3838
    2136:	8b bb       	out	0x1b, r24	; 27
3839
    2138:	8a b3       	in	r24, 0x1a	; 26
3840
    213a:	80 6f       	ori	r24, 0xF0	; 240
3841
    213c:	8a bb       	out	0x1a, r24	; 26
3842
    213e:	87 b3       	in	r24, 0x17	; 23
3843
    2140:	80 66       	ori	r24, 0x60	; 96
3844
    2142:	87 bb       	out	0x17, r24	; 23
3845
    2144:	81 ea       	ldi	r24, 0xA1	; 161
3846
    2146:	8f bd       	out	0x2f, r24	; 47
3847
    2148:	89 e0       	ldi	r24, 0x09	; 9
3848
    214a:	8e bd       	out	0x2e, r24	; 46
3849
    214c:	1b bc       	out	0x2b, r1	; 43
3850
    214e:	1a bc       	out	0x2a, r1	; 42
3851
    2150:	19 bc       	out	0x29, r1	; 41
3852
    2152:	18 bc       	out	0x28, r1	; 40
3853
    2154:	08 95       	ret
3854

    
3855
00002156 <motor_l_set>:
3856
    2156:	89 2b       	or	r24, r25
3857
    2158:	51 f4       	brne	.+20     	; 0x216e <motor_l_set+0x18>
3858
    215a:	8b b3       	in	r24, 0x1b	; 27
3859
    215c:	80 73       	andi	r24, 0x30	; 48
3860
    215e:	80 31       	cpi	r24, 0x10	; 16
3861
    2160:	11 f0       	breq	.+4      	; 0x2166 <motor_l_set+0x10>
3862
    2162:	1b bc       	out	0x2b, r1	; 43
3863
    2164:	1a bc       	out	0x2a, r1	; 42
3864
    2166:	8b b3       	in	r24, 0x1b	; 27
3865
    2168:	8f 7c       	andi	r24, 0xCF	; 207
3866
    216a:	80 61       	ori	r24, 0x10	; 16
3867
    216c:	09 c0       	rjmp	.+18     	; 0x2180 <motor_l_set+0x2a>
3868
    216e:	8b b3       	in	r24, 0x1b	; 27
3869
    2170:	80 73       	andi	r24, 0x30	; 48
3870
    2172:	80 32       	cpi	r24, 0x20	; 32
3871
    2174:	11 f0       	breq	.+4      	; 0x217a <motor_l_set+0x24>
3872
    2176:	1b bc       	out	0x2b, r1	; 43
3873
    2178:	1a bc       	out	0x2a, r1	; 42
3874
    217a:	8b b3       	in	r24, 0x1b	; 27
3875
    217c:	8f 7c       	andi	r24, 0xCF	; 207
3876
    217e:	80 62       	ori	r24, 0x20	; 32
3877
    2180:	8b bb       	out	0x1b, r24	; 27
3878
    2182:	6a bd       	out	0x2a, r22	; 42
3879
    2184:	08 95       	ret
3880

    
3881
00002186 <motor_r_set>:
3882
    2186:	89 2b       	or	r24, r25
3883
    2188:	51 f4       	brne	.+20     	; 0x219e <motor_r_set+0x18>
3884
    218a:	8b b3       	in	r24, 0x1b	; 27
3885
    218c:	80 7c       	andi	r24, 0xC0	; 192
3886
    218e:	80 38       	cpi	r24, 0x80	; 128
3887
    2190:	11 f0       	breq	.+4      	; 0x2196 <motor_r_set+0x10>
3888
    2192:	19 bc       	out	0x29, r1	; 41
3889
    2194:	18 bc       	out	0x28, r1	; 40
3890
    2196:	8b b3       	in	r24, 0x1b	; 27
3891
    2198:	8f 73       	andi	r24, 0x3F	; 63
3892
    219a:	80 68       	ori	r24, 0x80	; 128
3893
    219c:	09 c0       	rjmp	.+18     	; 0x21b0 <motor_r_set+0x2a>
3894
    219e:	8b b3       	in	r24, 0x1b	; 27
3895
    21a0:	80 7c       	andi	r24, 0xC0	; 192
3896
    21a2:	80 34       	cpi	r24, 0x40	; 64
3897
    21a4:	11 f0       	breq	.+4      	; 0x21aa <motor_r_set+0x24>
3898
    21a6:	19 bc       	out	0x29, r1	; 41
3899
    21a8:	18 bc       	out	0x28, r1	; 40
3900
    21aa:	8b b3       	in	r24, 0x1b	; 27
3901
    21ac:	8f 73       	andi	r24, 0x3F	; 63
3902
    21ae:	80 64       	ori	r24, 0x40	; 64
3903
    21b0:	8b bb       	out	0x1b, r24	; 27
3904
    21b2:	68 bd       	out	0x28, r22	; 40
3905
    21b4:	08 95       	ret
3906

    
3907
000021b6 <motor1_set>:
3908
    21b6:	0e 94 ab 10 	call	0x2156	; 0x2156 <motor_l_set>
3909
    21ba:	08 95       	ret
3910

    
3911
000021bc <motor2_set>:
3912
    21bc:	0e 94 c3 10 	call	0x2186	; 0x2186 <motor_r_set>
3913
    21c0:	08 95       	ret
3914

    
3915
000021c2 <motors_off>:
3916
    21c2:	1a bc       	out	0x2a, r1	; 42
3917
    21c4:	18 bc       	out	0x28, r1	; 40
3918
    21c6:	08 95       	ret
3919

    
3920
000021c8 <linearize_distance>:
3921
    21c8:	fc 01       	movw	r30, r24
3922
    21ca:	84 31       	cpi	r24, 0x14	; 20
3923
    21cc:	91 05       	cpc	r25, r1
3924
    21ce:	54 f0       	brlt	.+20     	; 0x21e4 <linearize_distance+0x1c>
3925
    21d0:	86 38       	cpi	r24, 0x86	; 134
3926
    21d2:	91 05       	cpc	r25, r1
3927
    21d4:	3c f4       	brge	.+14     	; 0x21e4 <linearize_distance+0x1c>
3928
    21d6:	ee 0f       	add	r30, r30
3929
    21d8:	ff 1f       	adc	r31, r31
3930
    21da:	e7 5c       	subi	r30, 0xC7	; 199
3931
    21dc:	fc 4f       	sbci	r31, 0xFC	; 252
3932
    21de:	80 81       	ld	r24, Z
3933
    21e0:	91 81       	ldd	r25, Z+1	; 0x01
3934
    21e2:	08 95       	ret
3935
    21e4:	8f ef       	ldi	r24, 0xFF	; 255
3936
    21e6:	9f ef       	ldi	r25, 0xFF	; 255
3937
    21e8:	08 95       	ret
3938

    
3939
000021ea <range_read_distance>:
3940
    21ea:	0e 94 1b 13 	call	0x2636	; 0x2636 <analog8>
3941
    21ee:	0e 94 e4 10 	call	0x21c8	; 0x21c8 <linearize_distance>
3942
    21f2:	08 95       	ret
3943

    
3944
000021f4 <range_init>:
3945
    21f4:	60 e0       	ldi	r22, 0x00	; 0
3946
    21f6:	70 e0       	ldi	r23, 0x00	; 0
3947
    21f8:	84 e1       	ldi	r24, 0x14	; 20
3948
    21fa:	90 e0       	ldi	r25, 0x00	; 0
3949
    21fc:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
3950
    2200:	08 95       	ret
3951

    
3952
00002202 <usb_init>:
3953
    2202:	10 92 90 00 	sts	0x0090, r1
3954
    2206:	88 e0       	ldi	r24, 0x08	; 8
3955
    2208:	89 b9       	out	0x09, r24	; 9
3956
    220a:	59 9a       	sbi	0x0b, 1	; 11
3957
    220c:	8a b1       	in	r24, 0x0a	; 10
3958
    220e:	88 61       	ori	r24, 0x18	; 24
3959
    2210:	8a b9       	out	0x0a, r24	; 10
3960
    2212:	e5 e9       	ldi	r30, 0x95	; 149
3961
    2214:	f0 e0       	ldi	r31, 0x00	; 0
3962
    2216:	80 81       	ld	r24, Z
3963
    2218:	86 60       	ori	r24, 0x06	; 6
3964
    221a:	80 83       	st	Z, r24
3965
    221c:	08 95       	ret
3966

    
3967
0000221e <xbee_init>:
3968
    221e:	10 92 98 00 	sts	0x0098, r1
3969
    2222:	87 e6       	ldi	r24, 0x67	; 103
3970
    2224:	80 93 99 00 	sts	0x0099, r24
3971
    2228:	eb e9       	ldi	r30, 0x9B	; 155
3972
    222a:	f0 e0       	ldi	r31, 0x00	; 0
3973
    222c:	80 81       	ld	r24, Z
3974
    222e:	82 60       	ori	r24, 0x02	; 2
3975
    2230:	80 83       	st	Z, r24
3976
    2232:	ea e9       	ldi	r30, 0x9A	; 154
3977
    2234:	f0 e0       	ldi	r31, 0x00	; 0
3978
    2236:	80 81       	ld	r24, Z
3979
    2238:	88 61       	ori	r24, 0x18	; 24
3980
    223a:	80 83       	st	Z, r24
3981
    223c:	ed e9       	ldi	r30, 0x9D	; 157
3982
    223e:	f0 e0       	ldi	r31, 0x00	; 0
3983
    2240:	80 81       	ld	r24, Z
3984
    2242:	86 60       	ori	r24, 0x06	; 6
3985
    2244:	80 83       	st	Z, r24
3986
    2246:	08 95       	ret
3987

    
3988
00002248 <usb_putc>:
3989
    2248:	5d 9b       	sbis	0x0b, 5	; 11
3990
    224a:	fe cf       	rjmp	.-4      	; 0x2248 <usb_putc>
3991
    224c:	8c b9       	out	0x0c, r24	; 12
3992
    224e:	80 e0       	ldi	r24, 0x00	; 0
3993
    2250:	90 e0       	ldi	r25, 0x00	; 0
3994
    2252:	08 95       	ret
3995

    
3996
00002254 <xbee_putc>:
3997
    2254:	98 2f       	mov	r25, r24
3998
    2256:	80 91 9b 00 	lds	r24, 0x009B
3999
    225a:	85 ff       	sbrs	r24, 5
4000
    225c:	fc cf       	rjmp	.-8      	; 0x2256 <xbee_putc+0x2>
4001
    225e:	90 93 9c 00 	sts	0x009C, r25
4002
    2262:	80 e0       	ldi	r24, 0x00	; 0
4003
    2264:	90 e0       	ldi	r25, 0x00	; 0
4004
    2266:	08 95       	ret
4005

    
4006
00002268 <usb_getc>:
4007
    2268:	5f 9b       	sbis	0x0b, 7	; 11
4008
    226a:	fe cf       	rjmp	.-4      	; 0x2268 <usb_getc>
4009
    226c:	8c b1       	in	r24, 0x0c	; 12
4010
    226e:	99 27       	eor	r25, r25
4011
    2270:	08 95       	ret
4012

    
4013
00002272 <xbee_getc>:
4014
    2272:	80 91 9b 00 	lds	r24, 0x009B
4015
    2276:	87 ff       	sbrs	r24, 7
4016
    2278:	fc cf       	rjmp	.-8      	; 0x2272 <xbee_getc>
4017
    227a:	80 91 9c 00 	lds	r24, 0x009C
4018
    227e:	99 27       	eor	r25, r25
4019
    2280:	08 95       	ret
4020

    
4021
00002282 <usb_getc_nb>:
4022
    2282:	fc 01       	movw	r30, r24
4023
    2284:	5f 99       	sbic	0x0b, 7	; 11
4024
    2286:	03 c0       	rjmp	.+6      	; 0x228e <usb_getc_nb+0xc>
4025
    2288:	8f ef       	ldi	r24, 0xFF	; 255
4026
    228a:	9f ef       	ldi	r25, 0xFF	; 255
4027
    228c:	08 95       	ret
4028
    228e:	8c b1       	in	r24, 0x0c	; 12
4029
    2290:	80 83       	st	Z, r24
4030
    2292:	80 e0       	ldi	r24, 0x00	; 0
4031
    2294:	90 e0       	ldi	r25, 0x00	; 0
4032
    2296:	08 95       	ret
4033

    
4034
00002298 <xbee_getc_nb>:
4035
    2298:	fc 01       	movw	r30, r24
4036
    229a:	80 91 9b 00 	lds	r24, 0x009B
4037
    229e:	87 fd       	sbrc	r24, 7
4038
    22a0:	03 c0       	rjmp	.+6      	; 0x22a8 <xbee_getc_nb+0x10>
4039
    22a2:	8f ef       	ldi	r24, 0xFF	; 255
4040
    22a4:	9f ef       	ldi	r25, 0xFF	; 255
4041
    22a6:	08 95       	ret
4042
    22a8:	80 91 9c 00 	lds	r24, 0x009C
4043
    22ac:	80 83       	st	Z, r24
4044
    22ae:	80 e0       	ldi	r24, 0x00	; 0
4045
    22b0:	90 e0       	ldi	r25, 0x00	; 0
4046
    22b2:	08 95       	ret
4047

    
4048
000022b4 <hex_digit>:
4049
    22b4:	80 31       	cpi	r24, 0x10	; 16
4050
    22b6:	18 f0       	brcs	.+6      	; 0x22be <hex_digit+0xa>
4051
    22b8:	8f e3       	ldi	r24, 0x3F	; 63
4052
    22ba:	90 e0       	ldi	r25, 0x00	; 0
4053
    22bc:	08 95       	ret
4054
    22be:	e8 2f       	mov	r30, r24
4055
    22c0:	ff 27       	eor	r31, r31
4056
    22c2:	eb 5b       	subi	r30, 0xBB	; 187
4057
    22c4:	fb 4f       	sbci	r31, 0xFB	; 251
4058
    22c6:	80 81       	ld	r24, Z
4059
    22c8:	99 27       	eor	r25, r25
4060
    22ca:	08 95       	ret
4061

    
4062
000022cc <usb_puts>:
4063
    22cc:	fc 01       	movw	r30, r24
4064
    22ce:	04 c0       	rjmp	.+8      	; 0x22d8 <usb_puts+0xc>
4065
    22d0:	5d 9b       	sbis	0x0b, 5	; 11
4066
    22d2:	fe cf       	rjmp	.-4      	; 0x22d0 <usb_puts+0x4>
4067
    22d4:	8c b9       	out	0x0c, r24	; 12
4068
    22d6:	31 96       	adiw	r30, 0x01	; 1
4069
    22d8:	80 81       	ld	r24, Z
4070
    22da:	88 23       	and	r24, r24
4071
    22dc:	c9 f7       	brne	.-14     	; 0x22d0 <usb_puts+0x4>
4072
    22de:	80 e0       	ldi	r24, 0x00	; 0
4073
    22e0:	90 e0       	ldi	r25, 0x00	; 0
4074
    22e2:	08 95       	ret
4075

    
4076
000022e4 <usb_puti>:
4077
    22e4:	0f 93       	push	r16
4078
    22e6:	1f 93       	push	r17
4079
    22e8:	cf 93       	push	r28
4080
    22ea:	df 93       	push	r29
4081
    22ec:	cd b7       	in	r28, 0x3d	; 61
4082
    22ee:	de b7       	in	r29, 0x3e	; 62
4083
    22f0:	26 97       	sbiw	r28, 0x06	; 6
4084
    22f2:	0f b6       	in	r0, 0x3f	; 63
4085
    22f4:	f8 94       	cli
4086
    22f6:	de bf       	out	0x3e, r29	; 62
4087
    22f8:	0f be       	out	0x3f, r0	; 63
4088
    22fa:	cd bf       	out	0x3d, r28	; 61
4089
    22fc:	9c 01       	movw	r18, r24
4090
    22fe:	de 01       	movw	r26, r28
4091
    2300:	11 96       	adiw	r26, 0x01	; 1
4092
    2302:	e6 e5       	ldi	r30, 0x56	; 86
4093
    2304:	f4 e0       	ldi	r31, 0x04	; 4
4094
    2306:	86 e0       	ldi	r24, 0x06	; 6
4095
    2308:	01 90       	ld	r0, Z+
4096
    230a:	0d 92       	st	X+, r0
4097
    230c:	81 50       	subi	r24, 0x01	; 1
4098
    230e:	e1 f7       	brne	.-8      	; 0x2308 <usb_puti+0x24>
4099
    2310:	37 ff       	sbrs	r19, 7
4100
    2312:	07 c0       	rjmp	.+14     	; 0x2322 <usb_puti+0x3e>
4101
    2314:	5d 9b       	sbis	0x0b, 5	; 11
4102
    2316:	fe cf       	rjmp	.-4      	; 0x2314 <usb_puti+0x30>
4103
    2318:	8d e2       	ldi	r24, 0x2D	; 45
4104
    231a:	8c b9       	out	0x0c, r24	; 12
4105
    231c:	30 95       	com	r19
4106
    231e:	21 95       	neg	r18
4107
    2320:	3f 4f       	sbci	r19, 0xFF	; 255
4108
    2322:	46 e0       	ldi	r20, 0x06	; 6
4109
    2324:	8e 01       	movw	r16, r28
4110
    2326:	0f 5f       	subi	r16, 0xFF	; 255
4111
    2328:	1f 4f       	sbci	r17, 0xFF	; 255
4112
    232a:	41 50       	subi	r20, 0x01	; 1
4113
    232c:	f8 01       	movw	r30, r16
4114
    232e:	e4 0f       	add	r30, r20
4115
    2330:	f1 1d       	adc	r31, r1
4116
    2332:	c9 01       	movw	r24, r18
4117
    2334:	6a e0       	ldi	r22, 0x0A	; 10
4118
    2336:	70 e0       	ldi	r23, 0x00	; 0
4119
    2338:	0e 94 83 17 	call	0x2f06	; 0x2f06 <__divmodhi4>
4120
    233c:	80 5d       	subi	r24, 0xD0	; 208
4121
    233e:	80 83       	st	Z, r24
4122
    2340:	c9 01       	movw	r24, r18
4123
    2342:	6a e0       	ldi	r22, 0x0A	; 10
4124
    2344:	70 e0       	ldi	r23, 0x00	; 0
4125
    2346:	0e 94 83 17 	call	0x2f06	; 0x2f06 <__divmodhi4>
4126
    234a:	9b 01       	movw	r18, r22
4127
    234c:	67 2b       	or	r22, r23
4128
    234e:	51 f0       	breq	.+20     	; 0x2364 <usb_puti+0x80>
4129
    2350:	ec cf       	rjmp	.-40     	; 0x232a <usb_puti+0x46>
4130
    2352:	fc 01       	movw	r30, r24
4131
    2354:	e4 0f       	add	r30, r20
4132
    2356:	f1 1d       	adc	r31, r1
4133
    2358:	e0 81       	ld	r30, Z
4134
    235a:	5d 9b       	sbis	0x0b, 5	; 11
4135
    235c:	fe cf       	rjmp	.-4      	; 0x235a <usb_puti+0x76>
4136
    235e:	ec b9       	out	0x0c, r30	; 12
4137
    2360:	4f 5f       	subi	r20, 0xFF	; 255
4138
    2362:	02 c0       	rjmp	.+4      	; 0x2368 <usb_puti+0x84>
4139
    2364:	ce 01       	movw	r24, r28
4140
    2366:	01 96       	adiw	r24, 0x01	; 1
4141
    2368:	46 30       	cpi	r20, 0x06	; 6
4142
    236a:	98 f3       	brcs	.-26     	; 0x2352 <usb_puti+0x6e>
4143
    236c:	80 e0       	ldi	r24, 0x00	; 0
4144
    236e:	90 e0       	ldi	r25, 0x00	; 0
4145
    2370:	26 96       	adiw	r28, 0x06	; 6
4146
    2372:	0f b6       	in	r0, 0x3f	; 63
4147
    2374:	f8 94       	cli
4148
    2376:	de bf       	out	0x3e, r29	; 62
4149
    2378:	0f be       	out	0x3f, r0	; 63
4150
    237a:	cd bf       	out	0x3d, r28	; 61
4151
    237c:	df 91       	pop	r29
4152
    237e:	cf 91       	pop	r28
4153
    2380:	1f 91       	pop	r17
4154
    2382:	0f 91       	pop	r16
4155
    2384:	08 95       	ret
4156

    
4157
00002386 <usb_puts_P>:
4158
    2386:	ef 92       	push	r14
4159
    2388:	ff 92       	push	r15
4160
    238a:	0f 93       	push	r16
4161
    238c:	1f 93       	push	r17
4162
    238e:	cf 93       	push	r28
4163
    2390:	df 93       	push	r29
4164
    2392:	cd b7       	in	r28, 0x3d	; 61
4165
    2394:	de b7       	in	r29, 0x3e	; 62
4166
    2396:	21 97       	sbiw	r28, 0x01	; 1
4167
    2398:	0f b6       	in	r0, 0x3f	; 63
4168
    239a:	f8 94       	cli
4169
    239c:	de bf       	out	0x3e, r29	; 62
4170
    239e:	0f be       	out	0x3f, r0	; 63
4171
    23a0:	cd bf       	out	0x3d, r28	; 61
4172
    23a2:	8c 01       	movw	r16, r24
4173
    23a4:	7e 01       	movw	r14, r28
4174
    23a6:	08 94       	sec
4175
    23a8:	e1 1c       	adc	r14, r1
4176
    23aa:	f1 1c       	adc	r15, r1
4177
    23ac:	05 c0       	rjmp	.+10     	; 0x23b8 <usb_puts_P+0x32>
4178
    23ae:	5d 9b       	sbis	0x0b, 5	; 11
4179
    23b0:	fe cf       	rjmp	.-4      	; 0x23ae <usb_puts_P+0x28>
4180
    23b2:	8c b9       	out	0x0c, r24	; 12
4181
    23b4:	0f 5f       	subi	r16, 0xFF	; 255
4182
    23b6:	1f 4f       	sbci	r17, 0xFF	; 255
4183
    23b8:	41 e0       	ldi	r20, 0x01	; 1
4184
    23ba:	50 e0       	ldi	r21, 0x00	; 0
4185
    23bc:	b8 01       	movw	r22, r16
4186
    23be:	c7 01       	movw	r24, r14
4187
    23c0:	0e 94 da 16 	call	0x2db4	; 0x2db4 <memcpy_P>
4188
    23c4:	89 81       	ldd	r24, Y+1	; 0x01
4189
    23c6:	88 23       	and	r24, r24
4190
    23c8:	91 f7       	brne	.-28     	; 0x23ae <usb_puts_P+0x28>
4191
    23ca:	21 96       	adiw	r28, 0x01	; 1
4192
    23cc:	0f b6       	in	r0, 0x3f	; 63
4193
    23ce:	f8 94       	cli
4194
    23d0:	de bf       	out	0x3e, r29	; 62
4195
    23d2:	0f be       	out	0x3f, r0	; 63
4196
    23d4:	cd bf       	out	0x3d, r28	; 61
4197
    23d6:	df 91       	pop	r29
4198
    23d8:	cf 91       	pop	r28
4199
    23da:	1f 91       	pop	r17
4200
    23dc:	0f 91       	pop	r16
4201
    23de:	ff 90       	pop	r15
4202
    23e0:	ef 90       	pop	r14
4203
    23e2:	08 95       	ret
4204

    
4205
000023e4 <usb_puth8>:
4206
    23e4:	28 2f       	mov	r18, r24
4207
    23e6:	e8 2f       	mov	r30, r24
4208
    23e8:	e2 95       	swap	r30
4209
    23ea:	ef 70       	andi	r30, 0x0F	; 15
4210
    23ec:	ff 27       	eor	r31, r31
4211
    23ee:	eb 5b       	subi	r30, 0xBB	; 187
4212
    23f0:	fb 4f       	sbci	r31, 0xFB	; 251
4213
    23f2:	80 81       	ld	r24, Z
4214
    23f4:	99 27       	eor	r25, r25
4215
    23f6:	5d 9b       	sbis	0x0b, 5	; 11
4216
    23f8:	fe cf       	rjmp	.-4      	; 0x23f6 <usb_puth8+0x12>
4217
    23fa:	8c b9       	out	0x0c, r24	; 12
4218
    23fc:	e2 2f       	mov	r30, r18
4219
    23fe:	ff 27       	eor	r31, r31
4220
    2400:	ef 70       	andi	r30, 0x0F	; 15
4221
    2402:	f0 70       	andi	r31, 0x00	; 0
4222
    2404:	eb 5b       	subi	r30, 0xBB	; 187
4223
    2406:	fb 4f       	sbci	r31, 0xFB	; 251
4224
    2408:	80 81       	ld	r24, Z
4225
    240a:	99 27       	eor	r25, r25
4226
    240c:	5d 9b       	sbis	0x0b, 5	; 11
4227
    240e:	fe cf       	rjmp	.-4      	; 0x240c <usb_puth8+0x28>
4228
    2410:	8c b9       	out	0x0c, r24	; 12
4229
    2412:	08 95       	ret
4230

    
4231
00002414 <usb_puth16>:
4232
    2414:	ac 01       	movw	r20, r24
4233
    2416:	fc 01       	movw	r30, r24
4234
    2418:	ef 2f       	mov	r30, r31
4235
    241a:	ff 27       	eor	r31, r31
4236
    241c:	e2 95       	swap	r30
4237
    241e:	ef 70       	andi	r30, 0x0F	; 15
4238
    2420:	eb 5b       	subi	r30, 0xBB	; 187
4239
    2422:	fb 4f       	sbci	r31, 0xFB	; 251
4240
    2424:	80 81       	ld	r24, Z
4241
    2426:	28 2f       	mov	r18, r24
4242
    2428:	33 27       	eor	r19, r19
4243
    242a:	5d 9b       	sbis	0x0b, 5	; 11
4244
    242c:	fe cf       	rjmp	.-4      	; 0x242a <usb_puth16+0x16>
4245
    242e:	2c b9       	out	0x0c, r18	; 12
4246
    2430:	e5 2f       	mov	r30, r21
4247
    2432:	ff 27       	eor	r31, r31
4248
    2434:	ef 70       	andi	r30, 0x0F	; 15
4249
    2436:	f0 70       	andi	r31, 0x00	; 0
4250
    2438:	eb 5b       	subi	r30, 0xBB	; 187
4251
    243a:	fb 4f       	sbci	r31, 0xFB	; 251
4252
    243c:	80 81       	ld	r24, Z
4253
    243e:	28 2f       	mov	r18, r24
4254
    2440:	33 27       	eor	r19, r19
4255
    2442:	5d 9b       	sbis	0x0b, 5	; 11
4256
    2444:	fe cf       	rjmp	.-4      	; 0x2442 <usb_puth16+0x2e>
4257
    2446:	2c b9       	out	0x0c, r18	; 12
4258
    2448:	fa 01       	movw	r30, r20
4259
    244a:	84 e0       	ldi	r24, 0x04	; 4
4260
    244c:	f6 95       	lsr	r31
4261
    244e:	e7 95       	ror	r30
4262
    2450:	8a 95       	dec	r24
4263
    2452:	e1 f7       	brne	.-8      	; 0x244c <usb_puth16+0x38>
4264
    2454:	ff 27       	eor	r31, r31
4265
    2456:	ef 70       	andi	r30, 0x0F	; 15
4266
    2458:	f0 70       	andi	r31, 0x00	; 0
4267
    245a:	eb 5b       	subi	r30, 0xBB	; 187
4268
    245c:	fb 4f       	sbci	r31, 0xFB	; 251
4269
    245e:	80 81       	ld	r24, Z
4270
    2460:	28 2f       	mov	r18, r24
4271
    2462:	33 27       	eor	r19, r19
4272
    2464:	5d 9b       	sbis	0x0b, 5	; 11
4273
    2466:	fe cf       	rjmp	.-4      	; 0x2464 <usb_puth16+0x50>
4274
    2468:	2c b9       	out	0x0c, r18	; 12
4275
    246a:	e4 2f       	mov	r30, r20
4276
    246c:	ff 27       	eor	r31, r31
4277
    246e:	ef 70       	andi	r30, 0x0F	; 15
4278
    2470:	f0 70       	andi	r31, 0x00	; 0
4279
    2472:	eb 5b       	subi	r30, 0xBB	; 187
4280
    2474:	fb 4f       	sbci	r31, 0xFB	; 251
4281
    2476:	80 81       	ld	r24, Z
4282
    2478:	99 27       	eor	r25, r25
4283
    247a:	5d 9b       	sbis	0x0b, 5	; 11
4284
    247c:	fe cf       	rjmp	.-4      	; 0x247a <usb_puth16+0x66>
4285
    247e:	8c b9       	out	0x0c, r24	; 12
4286
    2480:	08 95       	ret
4287

    
4288
00002482 <spi_init>:
4289
    2482:	23 ed       	ldi	r18, 0xD3	; 211
4290
    2484:	2d b9       	out	0x0d, r18	; 13
4291
    2486:	21 e0       	ldi	r18, 0x01	; 1
4292
    2488:	2e b9       	out	0x0e, r18	; 14
4293
    248a:	27 b3       	in	r18, 0x17	; 23
4294
    248c:	27 60       	ori	r18, 0x07	; 7
4295
    248e:	27 bb       	out	0x17, r18	; 23
4296
    2490:	bb 98       	cbi	0x17, 3	; 23
4297
    2492:	c0 9a       	sbi	0x18, 0	; 24
4298
    2494:	90 93 73 04 	sts	0x0473, r25
4299
    2498:	80 93 72 04 	sts	0x0472, r24
4300
    249c:	70 93 75 04 	sts	0x0475, r23
4301
    24a0:	60 93 74 04 	sts	0x0474, r22
4302
    24a4:	10 92 71 04 	sts	0x0471, r1
4303
    24a8:	08 95       	ret
4304

    
4305
000024aa <spi_transfer>:
4306
    24aa:	80 93 71 04 	sts	0x0471, r24
4307
    24ae:	c0 98       	cbi	0x18, 0	; 24
4308
    24b0:	8f ef       	ldi	r24, 0xFF	; 255
4309
    24b2:	8f b9       	out	0x0f, r24	; 15
4310
    24b4:	08 95       	ret
4311

    
4312
000024b6 <__vector_17>:
4313
    24b6:	1f 92       	push	r1
4314
    24b8:	0f 92       	push	r0
4315
    24ba:	0f b6       	in	r0, 0x3f	; 63
4316
    24bc:	0f 92       	push	r0
4317
    24be:	11 24       	eor	r1, r1
4318
    24c0:	2f 93       	push	r18
4319
    24c2:	3f 93       	push	r19
4320
    24c4:	4f 93       	push	r20
4321
    24c6:	5f 93       	push	r21
4322
    24c8:	6f 93       	push	r22
4323
    24ca:	7f 93       	push	r23
4324
    24cc:	8f 93       	push	r24
4325
    24ce:	9f 93       	push	r25
4326
    24d0:	af 93       	push	r26
4327
    24d2:	bf 93       	push	r27
4328
    24d4:	ef 93       	push	r30
4329
    24d6:	ff 93       	push	r31
4330
    24d8:	80 91 71 04 	lds	r24, 0x0471
4331
    24dc:	88 23       	and	r24, r24
4332
    24de:	d1 f0       	breq	.+52     	; 0x2514 <__vector_17+0x5e>
4333
    24e0:	e0 91 72 04 	lds	r30, 0x0472
4334
    24e4:	f0 91 73 04 	lds	r31, 0x0473
4335
    24e8:	8f b1       	in	r24, 0x0f	; 15
4336
    24ea:	09 95       	icall
4337
    24ec:	80 91 71 04 	lds	r24, 0x0471
4338
    24f0:	81 50       	subi	r24, 0x01	; 1
4339
    24f2:	80 93 71 04 	sts	0x0471, r24
4340
    24f6:	80 91 71 04 	lds	r24, 0x0471
4341
    24fa:	88 23       	and	r24, r24
4342
    24fc:	49 f4       	brne	.+18     	; 0x2510 <__vector_17+0x5a>
4343
    24fe:	c0 9a       	sbi	0x18, 0	; 24
4344
    2500:	e0 91 74 04 	lds	r30, 0x0474
4345
    2504:	f0 91 75 04 	lds	r31, 0x0475
4346
    2508:	30 97       	sbiw	r30, 0x00	; 0
4347
    250a:	21 f0       	breq	.+8      	; 0x2514 <__vector_17+0x5e>
4348
    250c:	09 95       	icall
4349
    250e:	02 c0       	rjmp	.+4      	; 0x2514 <__vector_17+0x5e>
4350
    2510:	8f ef       	ldi	r24, 0xFF	; 255
4351
    2512:	8f b9       	out	0x0f, r24	; 15
4352
    2514:	ff 91       	pop	r31
4353
    2516:	ef 91       	pop	r30
4354
    2518:	bf 91       	pop	r27
4355
    251a:	af 91       	pop	r26
4356
    251c:	9f 91       	pop	r25
4357
    251e:	8f 91       	pop	r24
4358
    2520:	7f 91       	pop	r23
4359
    2522:	6f 91       	pop	r22
4360
    2524:	5f 91       	pop	r21
4361
    2526:	4f 91       	pop	r20
4362
    2528:	3f 91       	pop	r19
4363
    252a:	2f 91       	pop	r18
4364
    252c:	0f 90       	pop	r0
4365
    252e:	0f be       	out	0x3f, r0	; 63
4366
    2530:	0f 90       	pop	r0
4367
    2532:	1f 90       	pop	r1
4368
    2534:	18 95       	reti
4369

    
4370
00002536 <delay_ms>:
4371
    2536:	9c 01       	movw	r18, r24
4372
    2538:	06 c0       	rjmp	.+12     	; 0x2546 <delay_ms+0x10>
4373
    253a:	80 e4       	ldi	r24, 0x40	; 64
4374
    253c:	96 e0       	ldi	r25, 0x06	; 6
4375
    253e:	01 97       	sbiw	r24, 0x01	; 1
4376
    2540:	f1 f7       	brne	.-4      	; 0x253e <delay_ms+0x8>
4377
    2542:	21 50       	subi	r18, 0x01	; 1
4378
    2544:	30 40       	sbci	r19, 0x00	; 0
4379
    2546:	12 16       	cp	r1, r18
4380
    2548:	13 06       	cpc	r1, r19
4381
    254a:	bc f3       	brlt	.-18     	; 0x253a <delay_ms+0x4>
4382
    254c:	08 95       	ret
4383

    
4384
0000254e <rtc_init>:
4385
    254e:	10 92 89 00 	sts	0x0089, r1
4386
    2552:	10 92 88 00 	sts	0x0088, r1
4387
    2556:	ea e8       	ldi	r30, 0x8A	; 138
4388
    2558:	f0 e0       	ldi	r31, 0x00	; 0
4389
    255a:	20 81       	ld	r18, Z
4390
    255c:	28 60       	ori	r18, 0x08	; 8
4391
    255e:	20 83       	st	Z, r18
4392
    2560:	20 81       	ld	r18, Z
4393
    2562:	22 60       	ori	r18, 0x02	; 2
4394
    2564:	20 83       	st	Z, r18
4395
    2566:	24 e2       	ldi	r18, 0x24	; 36
4396
    2568:	34 ef       	ldi	r19, 0xF4	; 244
4397
    256a:	30 93 87 00 	sts	0x0087, r19
4398
    256e:	20 93 86 00 	sts	0x0086, r18
4399
    2572:	ed e7       	ldi	r30, 0x7D	; 125
4400
    2574:	f0 e0       	ldi	r31, 0x00	; 0
4401
    2576:	20 81       	ld	r18, Z
4402
    2578:	20 61       	ori	r18, 0x10	; 16
4403
    257a:	20 83       	st	Z, r18
4404
    257c:	70 93 7b 04 	sts	0x047B, r23
4405
    2580:	60 93 7a 04 	sts	0x047A, r22
4406
    2584:	90 93 5d 04 	sts	0x045D, r25
4407
    2588:	80 93 5c 04 	sts	0x045C, r24
4408
    258c:	08 95       	ret
4409

    
4410
0000258e <rtc_get>:
4411
    258e:	80 91 78 04 	lds	r24, 0x0478
4412
    2592:	90 91 79 04 	lds	r25, 0x0479
4413
    2596:	08 95       	ret
4414

    
4415
00002598 <rtc_reset>:
4416
    2598:	10 92 79 04 	sts	0x0479, r1
4417
    259c:	10 92 78 04 	sts	0x0478, r1
4418
    25a0:	08 95       	ret
4419

    
4420
000025a2 <__vector_26>:
4421
    25a2:	1f 92       	push	r1
4422
    25a4:	0f 92       	push	r0
4423
    25a6:	0f b6       	in	r0, 0x3f	; 63
4424
    25a8:	0f 92       	push	r0
4425
    25aa:	11 24       	eor	r1, r1
4426
    25ac:	2f 93       	push	r18
4427
    25ae:	3f 93       	push	r19
4428
    25b0:	4f 93       	push	r20
4429
    25b2:	5f 93       	push	r21
4430
    25b4:	6f 93       	push	r22
4431
    25b6:	7f 93       	push	r23
4432
    25b8:	8f 93       	push	r24
4433
    25ba:	9f 93       	push	r25
4434
    25bc:	af 93       	push	r26
4435
    25be:	bf 93       	push	r27
4436
    25c0:	ef 93       	push	r30
4437
    25c2:	ff 93       	push	r31
4438
    25c4:	20 91 76 04 	lds	r18, 0x0476
4439
    25c8:	30 91 77 04 	lds	r19, 0x0477
4440
    25cc:	80 91 5c 04 	lds	r24, 0x045C
4441
    25d0:	90 91 5d 04 	lds	r25, 0x045D
4442
    25d4:	28 17       	cp	r18, r24
4443
    25d6:	39 07       	cpc	r19, r25
4444
    25d8:	a1 f4       	brne	.+40     	; 0x2602 <__vector_26+0x60>
4445
    25da:	80 91 78 04 	lds	r24, 0x0478
4446
    25de:	90 91 79 04 	lds	r25, 0x0479
4447
    25e2:	01 96       	adiw	r24, 0x01	; 1
4448
    25e4:	90 93 79 04 	sts	0x0479, r25
4449
    25e8:	80 93 78 04 	sts	0x0478, r24
4450
    25ec:	e0 91 7a 04 	lds	r30, 0x047A
4451
    25f0:	f0 91 7b 04 	lds	r31, 0x047B
4452
    25f4:	30 97       	sbiw	r30, 0x00	; 0
4453
    25f6:	09 f0       	breq	.+2      	; 0x25fa <__vector_26+0x58>
4454
    25f8:	09 95       	icall
4455
    25fa:	10 92 77 04 	sts	0x0477, r1
4456
    25fe:	10 92 76 04 	sts	0x0476, r1
4457
    2602:	80 91 76 04 	lds	r24, 0x0476
4458
    2606:	90 91 77 04 	lds	r25, 0x0477
4459
    260a:	01 96       	adiw	r24, 0x01	; 1
4460
    260c:	90 93 77 04 	sts	0x0477, r25
4461
    2610:	80 93 76 04 	sts	0x0476, r24
4462
    2614:	ff 91       	pop	r31
4463
    2616:	ef 91       	pop	r30
4464
    2618:	bf 91       	pop	r27
4465
    261a:	af 91       	pop	r26
4466
    261c:	9f 91       	pop	r25
4467
    261e:	8f 91       	pop	r24
4468
    2620:	7f 91       	pop	r23
4469
    2622:	6f 91       	pop	r22
4470
    2624:	5f 91       	pop	r21
4471
    2626:	4f 91       	pop	r20
4472
    2628:	3f 91       	pop	r19
4473
    262a:	2f 91       	pop	r18
4474
    262c:	0f 90       	pop	r0
4475
    262e:	0f be       	out	0x3f, r0	; 63
4476
    2630:	0f 90       	pop	r0
4477
    2632:	1f 90       	pop	r1
4478
    2634:	18 95       	reti
4479

    
4480
00002636 <analog8>:
4481
    2636:	00 97       	sbiw	r24, 0x00	; 0
4482
    2638:	19 f4       	brne	.+6      	; 0x2640 <analog8+0xa>
4483
    263a:	80 e0       	ldi	r24, 0x00	; 0
4484
    263c:	90 e0       	ldi	r25, 0x00	; 0
4485
    263e:	08 95       	ret
4486
    2640:	01 97       	sbiw	r24, 0x01	; 1
4487
    2642:	fc 01       	movw	r30, r24
4488
    2644:	ee 0f       	add	r30, r30
4489
    2646:	ff 1f       	adc	r31, r31
4490
    2648:	e8 0f       	add	r30, r24
4491
    264a:	f9 1f       	adc	r31, r25
4492
    264c:	e3 55       	subi	r30, 0x53	; 83
4493
    264e:	fa 4f       	sbci	r31, 0xFA	; 250
4494
    2650:	80 81       	ld	r24, Z
4495
    2652:	99 27       	eor	r25, r25
4496
    2654:	08 95       	ret
4497

    
4498
00002656 <analog10>:
4499
    2656:	00 97       	sbiw	r24, 0x00	; 0
4500
    2658:	19 f4       	brne	.+6      	; 0x2660 <analog10+0xa>
4501
    265a:	80 e0       	ldi	r24, 0x00	; 0
4502
    265c:	90 e0       	ldi	r25, 0x00	; 0
4503
    265e:	08 95       	ret
4504
    2660:	01 97       	sbiw	r24, 0x01	; 1
4505
    2662:	fc 01       	movw	r30, r24
4506
    2664:	ee 0f       	add	r30, r30
4507
    2666:	ff 1f       	adc	r31, r31
4508
    2668:	e8 0f       	add	r30, r24
4509
    266a:	f9 1f       	adc	r31, r25
4510
    266c:	e3 55       	subi	r30, 0x53	; 83
4511
    266e:	fa 4f       	sbci	r31, 0xFA	; 250
4512
    2670:	81 81       	ldd	r24, Z+1	; 0x01
4513
    2672:	92 81       	ldd	r25, Z+2	; 0x02
4514
    2674:	08 95       	ret
4515

    
4516
00002676 <analog_start_loop>:
4517
    2676:	80 91 7c 04 	lds	r24, 0x047C
4518
    267a:	90 91 7d 04 	lds	r25, 0x047D
4519
    267e:	01 97       	sbiw	r24, 0x01	; 1
4520
    2680:	41 f0       	breq	.+16     	; 0x2692 <analog_start_loop+0x1c>
4521
    2682:	33 9a       	sbi	0x06, 3	; 6
4522
    2684:	36 9a       	sbi	0x06, 6	; 6
4523
    2686:	81 e0       	ldi	r24, 0x01	; 1
4524
    2688:	90 e0       	ldi	r25, 0x00	; 0
4525
    268a:	90 93 7d 04 	sts	0x047D, r25
4526
    268e:	80 93 7c 04 	sts	0x047C, r24
4527
    2692:	08 95       	ret
4528

    
4529
00002694 <analog_stop_loop>:
4530
    2694:	81 e0       	ldi	r24, 0x01	; 1
4531
    2696:	90 e0       	ldi	r25, 0x00	; 0
4532
    2698:	90 93 7f 04 	sts	0x047F, r25
4533
    269c:	80 93 7e 04 	sts	0x047E, r24
4534
    26a0:	08 95       	ret
4535

    
4536
000026a2 <analog_loop_status>:
4537
    26a2:	80 91 7c 04 	lds	r24, 0x047C
4538
    26a6:	90 91 7d 04 	lds	r25, 0x047D
4539
    26aa:	08 95       	ret
4540

    
4541
000026ac <set_adc_mux>:
4542
    26ac:	e5 e6       	ldi	r30, 0x65	; 101
4543
    26ae:	f0 e0       	ldi	r31, 0x00	; 0
4544
    26b0:	20 81       	ld	r18, Z
4545
    26b2:	38 2f       	mov	r19, r24
4546
    26b4:	34 70       	andi	r19, 0x04	; 4
4547
    26b6:	23 7e       	andi	r18, 0xE3	; 227
4548
    26b8:	32 2b       	or	r19, r18
4549
    26ba:	83 70       	andi	r24, 0x03	; 3
4550
    26bc:	90 70       	andi	r25, 0x00	; 0
4551
    26be:	43 e0       	ldi	r20, 0x03	; 3
4552
    26c0:	88 0f       	add	r24, r24
4553
    26c2:	99 1f       	adc	r25, r25
4554
    26c4:	4a 95       	dec	r20
4555
    26c6:	e1 f7       	brne	.-8      	; 0x26c0 <set_adc_mux+0x14>
4556
    26c8:	38 2b       	or	r19, r24
4557
    26ca:	30 83       	st	Z, r19
4558
    26cc:	08 95       	ret
4559

    
4560
000026ce <analog_get10>:
4561
    26ce:	9c 01       	movw	r18, r24
4562
    26d0:	36 99       	sbic	0x06, 6	; 6
4563
    26d2:	fe cf       	rjmp	.-4      	; 0x26d0 <analog_get10+0x2>
4564
    26d4:	27 30       	cpi	r18, 0x07	; 7
4565
    26d6:	31 05       	cpc	r19, r1
4566
    26d8:	24 f4       	brge	.+8      	; 0x26e2 <analog_get10+0x14>
4567
    26da:	82 2f       	mov	r24, r18
4568
    26dc:	80 5a       	subi	r24, 0xA0	; 160
4569
    26de:	87 b9       	out	0x07, r24	; 7
4570
    26e0:	06 c0       	rjmp	.+12     	; 0x26ee <analog_get10+0x20>
4571
    26e2:	87 e6       	ldi	r24, 0x67	; 103
4572
    26e4:	87 b9       	out	0x07, r24	; 7
4573
    26e6:	c9 01       	movw	r24, r18
4574
    26e8:	08 97       	sbiw	r24, 0x08	; 8
4575
    26ea:	0e 94 56 13 	call	0x26ac	; 0x26ac <set_adc_mux>
4576
    26ee:	36 9a       	sbi	0x06, 6	; 6
4577
    26f0:	36 99       	sbic	0x06, 6	; 6
4578
    26f2:	fe cf       	rjmp	.-4      	; 0x26f0 <analog_get10+0x22>
4579
    26f4:	84 b1       	in	r24, 0x04	; 4
4580
    26f6:	25 b1       	in	r18, 0x05	; 5
4581
    26f8:	99 27       	eor	r25, r25
4582
    26fa:	66 e0       	ldi	r22, 0x06	; 6
4583
    26fc:	95 95       	asr	r25
4584
    26fe:	87 95       	ror	r24
4585
    2700:	6a 95       	dec	r22
4586
    2702:	e1 f7       	brne	.-8      	; 0x26fc <analog_get10+0x2e>
4587
    2704:	33 27       	eor	r19, r19
4588
    2706:	22 0f       	add	r18, r18
4589
    2708:	33 1f       	adc	r19, r19
4590
    270a:	22 0f       	add	r18, r18
4591
    270c:	33 1f       	adc	r19, r19
4592
    270e:	82 2b       	or	r24, r18
4593
    2710:	93 2b       	or	r25, r19
4594
    2712:	08 95       	ret
4595

    
4596
00002714 <analog_get8>:
4597
    2714:	9c 01       	movw	r18, r24
4598
    2716:	36 99       	sbic	0x06, 6	; 6
4599
    2718:	fe cf       	rjmp	.-4      	; 0x2716 <analog_get8+0x2>
4600
    271a:	27 30       	cpi	r18, 0x07	; 7
4601
    271c:	31 05       	cpc	r19, r1
4602
    271e:	24 f4       	brge	.+8      	; 0x2728 <analog_get8+0x14>
4603
    2720:	82 2f       	mov	r24, r18
4604
    2722:	80 5a       	subi	r24, 0xA0	; 160
4605
    2724:	87 b9       	out	0x07, r24	; 7
4606
    2726:	06 c0       	rjmp	.+12     	; 0x2734 <analog_get8+0x20>
4607
    2728:	87 e6       	ldi	r24, 0x67	; 103
4608
    272a:	87 b9       	out	0x07, r24	; 7
4609
    272c:	c9 01       	movw	r24, r18
4610
    272e:	08 97       	sbiw	r24, 0x08	; 8
4611
    2730:	0e 94 56 13 	call	0x26ac	; 0x26ac <set_adc_mux>
4612
    2734:	36 9a       	sbi	0x06, 6	; 6
4613
    2736:	36 99       	sbic	0x06, 6	; 6
4614
    2738:	fe cf       	rjmp	.-4      	; 0x2736 <analog_get8+0x22>
4615
    273a:	85 b1       	in	r24, 0x05	; 5
4616
    273c:	99 27       	eor	r25, r25
4617
    273e:	08 95       	ret
4618

    
4619
00002740 <analog_init>:
4620
    2740:	cf 93       	push	r28
4621
    2742:	df 93       	push	r29
4622
    2744:	ec 01       	movw	r28, r24
4623
    2746:	80 e0       	ldi	r24, 0x00	; 0
4624
    2748:	90 e0       	ldi	r25, 0x00	; 0
4625
    274a:	fc 01       	movw	r30, r24
4626
    274c:	ee 0f       	add	r30, r30
4627
    274e:	ff 1f       	adc	r31, r31
4628
    2750:	e8 0f       	add	r30, r24
4629
    2752:	f9 1f       	adc	r31, r25
4630
    2754:	e3 55       	subi	r30, 0x53	; 83
4631
    2756:	fa 4f       	sbci	r31, 0xFA	; 250
4632
    2758:	12 82       	std	Z+2, r1	; 0x02
4633
    275a:	11 82       	std	Z+1, r1	; 0x01
4634
    275c:	10 82       	st	Z, r1
4635
    275e:	01 96       	adiw	r24, 0x01	; 1
4636
    2760:	8b 30       	cpi	r24, 0x0B	; 11
4637
    2762:	91 05       	cpc	r25, r1
4638
    2764:	91 f7       	brne	.-28     	; 0x274a <analog_init+0xa>
4639
    2766:	17 b8       	out	0x07, r1	; 7
4640
    2768:	87 b1       	in	r24, 0x07	; 7
4641
    276a:	81 66       	ori	r24, 0x61	; 97
4642
    276c:	87 b9       	out	0x07, r24	; 7
4643
    276e:	16 b8       	out	0x06, r1	; 6
4644
    2770:	86 b1       	in	r24, 0x06	; 6
4645
    2772:	87 68       	ori	r24, 0x87	; 135
4646
    2774:	86 b9       	out	0x06, r24	; 6
4647
    2776:	80 91 64 00 	lds	r24, 0x0064
4648
    277a:	8c 61       	ori	r24, 0x1C	; 28
4649
    277c:	80 93 64 00 	sts	0x0064, r24
4650
    2780:	80 e0       	ldi	r24, 0x00	; 0
4651
    2782:	90 e0       	ldi	r25, 0x00	; 0
4652
    2784:	0e 94 56 13 	call	0x26ac	; 0x26ac <set_adc_mux>
4653
    2788:	81 e0       	ldi	r24, 0x01	; 1
4654
    278a:	90 e0       	ldi	r25, 0x00	; 0
4655
    278c:	90 93 81 04 	sts	0x0481, r25
4656
    2790:	80 93 80 04 	sts	0x0480, r24
4657
    2794:	cd 2b       	or	r28, r29
4658
    2796:	11 f0       	breq	.+4      	; 0x279c <analog_init+0x5c>
4659
    2798:	0e 94 3b 13 	call	0x2676	; 0x2676 <analog_start_loop>
4660
    279c:	df 91       	pop	r29
4661
    279e:	cf 91       	pop	r28
4662
    27a0:	08 95       	ret
4663

    
4664
000027a2 <__vector_21>:
4665
    27a2:	1f 92       	push	r1
4666
    27a4:	0f 92       	push	r0
4667
    27a6:	0f b6       	in	r0, 0x3f	; 63
4668
    27a8:	0f 92       	push	r0
4669
    27aa:	11 24       	eor	r1, r1
4670
    27ac:	2f 93       	push	r18
4671
    27ae:	3f 93       	push	r19
4672
    27b0:	4f 93       	push	r20
4673
    27b2:	5f 93       	push	r21
4674
    27b4:	6f 93       	push	r22
4675
    27b6:	7f 93       	push	r23
4676
    27b8:	8f 93       	push	r24
4677
    27ba:	9f 93       	push	r25
4678
    27bc:	af 93       	push	r26
4679
    27be:	bf 93       	push	r27
4680
    27c0:	ef 93       	push	r30
4681
    27c2:	ff 93       	push	r31
4682
    27c4:	a0 91 7c 04 	lds	r26, 0x047C
4683
    27c8:	b0 91 7d 04 	lds	r27, 0x047D
4684
    27cc:	a1 30       	cpi	r26, 0x01	; 1
4685
    27ce:	b1 05       	cpc	r27, r1
4686
    27d0:	09 f0       	breq	.+2      	; 0x27d4 <__vector_21+0x32>
4687
    27d2:	7c c0       	rjmp	.+248    	; 0x28cc <__vector_21+0x12a>
4688
    27d4:	87 b1       	in	r24, 0x07	; 7
4689
    27d6:	88 23       	and	r24, r24
4690
    27d8:	61 f1       	breq	.+88     	; 0x2832 <__vector_21+0x90>
4691
    27da:	24 b1       	in	r18, 0x04	; 4
4692
    27dc:	65 b1       	in	r22, 0x05	; 5
4693
    27de:	40 91 80 04 	lds	r20, 0x0480
4694
    27e2:	50 91 81 04 	lds	r21, 0x0481
4695
    27e6:	41 50       	subi	r20, 0x01	; 1
4696
    27e8:	50 40       	sbci	r21, 0x00	; 0
4697
    27ea:	33 27       	eor	r19, r19
4698
    27ec:	f6 e0       	ldi	r31, 0x06	; 6
4699
    27ee:	35 95       	asr	r19
4700
    27f0:	27 95       	ror	r18
4701
    27f2:	fa 95       	dec	r31
4702
    27f4:	e1 f7       	brne	.-8      	; 0x27ee <__vector_21+0x4c>
4703
    27f6:	86 2f       	mov	r24, r22
4704
    27f8:	99 27       	eor	r25, r25
4705
    27fa:	88 0f       	add	r24, r24
4706
    27fc:	99 1f       	adc	r25, r25
4707
    27fe:	88 0f       	add	r24, r24
4708
    2800:	99 1f       	adc	r25, r25
4709
    2802:	28 2b       	or	r18, r24
4710
    2804:	39 2b       	or	r19, r25
4711
    2806:	fa 01       	movw	r30, r20
4712
    2808:	ee 0f       	add	r30, r30
4713
    280a:	ff 1f       	adc	r31, r31
4714
    280c:	e4 0f       	add	r30, r20
4715
    280e:	f5 1f       	adc	r31, r21
4716
    2810:	e3 55       	subi	r30, 0x53	; 83
4717
    2812:	fa 4f       	sbci	r31, 0xFA	; 250
4718
    2814:	32 83       	std	Z+2, r19	; 0x02
4719
    2816:	21 83       	std	Z+1, r18	; 0x01
4720
    2818:	80 91 80 04 	lds	r24, 0x0480
4721
    281c:	90 91 81 04 	lds	r25, 0x0481
4722
    2820:	01 97       	sbiw	r24, 0x01	; 1
4723
    2822:	fc 01       	movw	r30, r24
4724
    2824:	ee 0f       	add	r30, r30
4725
    2826:	ff 1f       	adc	r31, r31
4726
    2828:	e8 0f       	add	r30, r24
4727
    282a:	f9 1f       	adc	r31, r25
4728
    282c:	e3 55       	subi	r30, 0x53	; 83
4729
    282e:	fa 4f       	sbci	r31, 0xFA	; 250
4730
    2830:	60 83       	st	Z, r22
4731
    2832:	80 91 80 04 	lds	r24, 0x0480
4732
    2836:	90 91 81 04 	lds	r25, 0x0481
4733
    283a:	06 97       	sbiw	r24, 0x06	; 6
4734
    283c:	69 f4       	brne	.+26     	; 0x2858 <__vector_21+0xb6>
4735
    283e:	87 e6       	ldi	r24, 0x67	; 103
4736
    2840:	87 b9       	out	0x07, r24	; 7
4737
    2842:	80 e0       	ldi	r24, 0x00	; 0
4738
    2844:	90 e0       	ldi	r25, 0x00	; 0
4739
    2846:	0e 94 56 13 	call	0x26ac	; 0x26ac <set_adc_mux>
4740
    284a:	88 e0       	ldi	r24, 0x08	; 8
4741
    284c:	90 e0       	ldi	r25, 0x00	; 0
4742
    284e:	90 93 81 04 	sts	0x0481, r25
4743
    2852:	80 93 80 04 	sts	0x0480, r24
4744
    2856:	2a c0       	rjmp	.+84     	; 0x28ac <__vector_21+0x10a>
4745
    2858:	80 91 80 04 	lds	r24, 0x0480
4746
    285c:	90 91 81 04 	lds	r25, 0x0481
4747
    2860:	0b 97       	sbiw	r24, 0x0b	; 11
4748
    2862:	29 f4       	brne	.+10     	; 0x286e <__vector_21+0xcc>
4749
    2864:	b0 93 81 04 	sts	0x0481, r27
4750
    2868:	a0 93 80 04 	sts	0x0480, r26
4751
    286c:	0f c0       	rjmp	.+30     	; 0x288c <__vector_21+0xea>
4752
    286e:	80 91 80 04 	lds	r24, 0x0480
4753
    2872:	90 91 81 04 	lds	r25, 0x0481
4754
    2876:	01 96       	adiw	r24, 0x01	; 1
4755
    2878:	90 93 81 04 	sts	0x0481, r25
4756
    287c:	80 93 80 04 	sts	0x0480, r24
4757
    2880:	80 91 80 04 	lds	r24, 0x0480
4758
    2884:	90 91 81 04 	lds	r25, 0x0481
4759
    2888:	07 97       	sbiw	r24, 0x07	; 7
4760
    288a:	3c f4       	brge	.+14     	; 0x289a <__vector_21+0xf8>
4761
    288c:	80 91 80 04 	lds	r24, 0x0480
4762
    2890:	90 91 81 04 	lds	r25, 0x0481
4763
    2894:	80 66       	ori	r24, 0x60	; 96
4764
    2896:	87 b9       	out	0x07, r24	; 7
4765
    2898:	09 c0       	rjmp	.+18     	; 0x28ac <__vector_21+0x10a>
4766
    289a:	87 e6       	ldi	r24, 0x67	; 103
4767
    289c:	87 b9       	out	0x07, r24	; 7
4768
    289e:	80 91 80 04 	lds	r24, 0x0480
4769
    28a2:	90 91 81 04 	lds	r25, 0x0481
4770
    28a6:	08 97       	sbiw	r24, 0x08	; 8
4771
    28a8:	0e 94 56 13 	call	0x26ac	; 0x26ac <set_adc_mux>
4772
    28ac:	80 91 7e 04 	lds	r24, 0x047E
4773
    28b0:	90 91 7f 04 	lds	r25, 0x047F
4774
    28b4:	89 2b       	or	r24, r25
4775
    28b6:	49 f0       	breq	.+18     	; 0x28ca <__vector_21+0x128>
4776
    28b8:	10 92 7f 04 	sts	0x047F, r1
4777
    28bc:	10 92 7e 04 	sts	0x047E, r1
4778
    28c0:	10 92 7d 04 	sts	0x047D, r1
4779
    28c4:	10 92 7c 04 	sts	0x047C, r1
4780
    28c8:	01 c0       	rjmp	.+2      	; 0x28cc <__vector_21+0x12a>
4781
    28ca:	36 9a       	sbi	0x06, 6	; 6
4782
    28cc:	ff 91       	pop	r31
4783
    28ce:	ef 91       	pop	r30
4784
    28d0:	bf 91       	pop	r27
4785
    28d2:	af 91       	pop	r26
4786
    28d4:	9f 91       	pop	r25
4787
    28d6:	8f 91       	pop	r24
4788
    28d8:	7f 91       	pop	r23
4789
    28da:	6f 91       	pop	r22
4790
    28dc:	5f 91       	pop	r21
4791
    28de:	4f 91       	pop	r20
4792
    28e0:	3f 91       	pop	r19
4793
    28e2:	2f 91       	pop	r18
4794
    28e4:	0f 90       	pop	r0
4795
    28e6:	0f be       	out	0x3f, r0	; 63
4796
    28e8:	0f 90       	pop	r0
4797
    28ea:	1f 90       	pop	r1
4798
    28ec:	18 95       	reti
4799

    
4800
000028ee <wheel>:
4801
    28ee:	80 91 c8 05 	lds	r24, 0x05C8
4802
    28f2:	99 27       	eor	r25, r25
4803
    28f4:	08 95       	ret
4804

    
4805
000028f6 <bom_get>:
4806
    28f6:	fc 01       	movw	r30, r24
4807
    28f8:	ee 0f       	add	r30, r30
4808
    28fa:	ff 1f       	adc	r31, r31
4809
    28fc:	ed 57       	subi	r30, 0x7D	; 125
4810
    28fe:	fb 4f       	sbci	r31, 0xFB	; 251
4811
    2900:	80 81       	ld	r24, Z
4812
    2902:	91 81       	ldd	r25, Z+1	; 0x01
4813
    2904:	08 95       	ret
4814

    
4815
00002906 <bom_get_max>:
4816
    2906:	e3 e8       	ldi	r30, 0x83	; 131
4817
    2908:	f4 e0       	ldi	r31, 0x04	; 4
4818
    290a:	40 e0       	ldi	r20, 0x00	; 0
4819
    290c:	50 e0       	ldi	r21, 0x00	; 0
4820
    290e:	6f ef       	ldi	r22, 0xFF	; 255
4821
    2910:	70 e0       	ldi	r23, 0x00	; 0
4822
    2912:	8f ef       	ldi	r24, 0xFF	; 255
4823
    2914:	9f ef       	ldi	r25, 0xFF	; 255
4824
    2916:	20 81       	ld	r18, Z
4825
    2918:	31 81       	ldd	r19, Z+1	; 0x01
4826
    291a:	26 17       	cp	r18, r22
4827
    291c:	37 07       	cpc	r19, r23
4828
    291e:	10 f4       	brcc	.+4      	; 0x2924 <bom_get_max+0x1e>
4829
    2920:	b9 01       	movw	r22, r18
4830
    2922:	ca 01       	movw	r24, r20
4831
    2924:	4f 5f       	subi	r20, 0xFF	; 255
4832
    2926:	5f 4f       	sbci	r21, 0xFF	; 255
4833
    2928:	32 96       	adiw	r30, 0x02	; 2
4834
    292a:	40 31       	cpi	r20, 0x10	; 16
4835
    292c:	51 05       	cpc	r21, r1
4836
    292e:	99 f7       	brne	.-26     	; 0x2916 <bom_get_max+0x10>
4837
    2930:	66 39       	cpi	r22, 0x96	; 150
4838
    2932:	71 05       	cpc	r23, r1
4839
    2934:	14 f0       	brlt	.+4      	; 0x293a <bom_get_max+0x34>
4840
    2936:	8f ef       	ldi	r24, 0xFF	; 255
4841
    2938:	9f ef       	ldi	r25, 0xFF	; 255
4842
    293a:	08 95       	ret
4843

    
4844
0000293c <bom_off>:
4845
    293c:	80 91 82 04 	lds	r24, 0x0482
4846
    2940:	88 23       	and	r24, r24
4847
    2942:	19 f0       	breq	.+6      	; 0x294a <bom_off+0xe>
4848
    2944:	81 30       	cpi	r24, 0x01	; 1
4849
    2946:	71 f4       	brne	.+28     	; 0x2964 <bom_off+0x28>
4850
    2948:	07 c0       	rjmp	.+14     	; 0x2958 <bom_off+0x1c>
4851
    294a:	60 e0       	ldi	r22, 0x00	; 0
4852
    294c:	70 e0       	ldi	r23, 0x00	; 0
4853
    294e:	8a e2       	ldi	r24, 0x2A	; 42
4854
    2950:	90 e0       	ldi	r25, 0x00	; 0
4855
    2952:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
4856
    2956:	08 95       	ret
4857
    2958:	60 e0       	ldi	r22, 0x00	; 0
4858
    295a:	70 e0       	ldi	r23, 0x00	; 0
4859
    295c:	8b e2       	ldi	r24, 0x2B	; 43
4860
    295e:	90 e0       	ldi	r25, 0x00	; 0
4861
    2960:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
4862
    2964:	08 95       	ret
4863

    
4864
00002966 <bom_on>:
4865
    2966:	80 91 82 04 	lds	r24, 0x0482
4866
    296a:	88 23       	and	r24, r24
4867
    296c:	19 f0       	breq	.+6      	; 0x2974 <bom_on+0xe>
4868
    296e:	81 30       	cpi	r24, 0x01	; 1
4869
    2970:	71 f4       	brne	.+28     	; 0x298e <bom_on+0x28>
4870
    2972:	07 c0       	rjmp	.+14     	; 0x2982 <bom_on+0x1c>
4871
    2974:	61 e0       	ldi	r22, 0x01	; 1
4872
    2976:	70 e0       	ldi	r23, 0x00	; 0
4873
    2978:	8a e2       	ldi	r24, 0x2A	; 42
4874
    297a:	90 e0       	ldi	r25, 0x00	; 0
4875
    297c:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
4876
    2980:	08 95       	ret
4877
    2982:	61 e0       	ldi	r22, 0x01	; 1
4878
    2984:	70 e0       	ldi	r23, 0x00	; 0
4879
    2986:	8b e2       	ldi	r24, 0x2B	; 43
4880
    2988:	90 e0       	ldi	r25, 0x00	; 0
4881
    298a:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
4882
    298e:	08 95       	ret
4883

    
4884
00002990 <bom_set_leds>:
4885
    2990:	ef 92       	push	r14
4886
    2992:	ff 92       	push	r15
4887
    2994:	0f 93       	push	r16
4888
    2996:	1f 93       	push	r17
4889
    2998:	cf 93       	push	r28
4890
    299a:	df 93       	push	r29
4891
    299c:	7c 01       	movw	r14, r24
4892
    299e:	80 91 82 04 	lds	r24, 0x0482
4893
    29a2:	81 30       	cpi	r24, 0x01	; 1
4894
    29a4:	e1 f4       	brne	.+56     	; 0x29de <bom_set_leds+0x4e>
4895
    29a6:	00 e1       	ldi	r16, 0x10	; 16
4896
    29a8:	10 e0       	ldi	r17, 0x00	; 0
4897
    29aa:	c0 e0       	ldi	r28, 0x00	; 0
4898
    29ac:	d0 e8       	ldi	r29, 0x80	; 128
4899
    29ae:	be 01       	movw	r22, r28
4900
    29b0:	6e 21       	and	r22, r14
4901
    29b2:	7f 21       	and	r23, r15
4902
    29b4:	88 e0       	ldi	r24, 0x08	; 8
4903
    29b6:	90 e0       	ldi	r25, 0x00	; 0
4904
    29b8:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
4905
    29bc:	61 e0       	ldi	r22, 0x01	; 1
4906
    29be:	70 e0       	ldi	r23, 0x00	; 0
4907
    29c0:	89 e0       	ldi	r24, 0x09	; 9
4908
    29c2:	90 e0       	ldi	r25, 0x00	; 0
4909
    29c4:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
4910
    29c8:	60 e0       	ldi	r22, 0x00	; 0
4911
    29ca:	70 e0       	ldi	r23, 0x00	; 0
4912
    29cc:	89 e0       	ldi	r24, 0x09	; 9
4913
    29ce:	90 e0       	ldi	r25, 0x00	; 0
4914
    29d0:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
4915
    29d4:	d6 95       	lsr	r29
4916
    29d6:	c7 95       	ror	r28
4917
    29d8:	01 50       	subi	r16, 0x01	; 1
4918
    29da:	10 40       	sbci	r17, 0x00	; 0
4919
    29dc:	41 f7       	brne	.-48     	; 0x29ae <bom_set_leds+0x1e>
4920
    29de:	df 91       	pop	r29
4921
    29e0:	cf 91       	pop	r28
4922
    29e2:	1f 91       	pop	r17
4923
    29e4:	0f 91       	pop	r16
4924
    29e6:	ff 90       	pop	r15
4925
    29e8:	ef 90       	pop	r14
4926
    29ea:	08 95       	ret
4927

    
4928
000029ec <bom_init>:
4929
    29ec:	80 93 82 04 	sts	0x0482, r24
4930
    29f0:	80 91 82 04 	lds	r24, 0x0482
4931
    29f4:	88 23       	and	r24, r24
4932
    29f6:	21 f0       	breq	.+8      	; 0x2a00 <bom_init+0x14>
4933
    29f8:	81 30       	cpi	r24, 0x01	; 1
4934
    29fa:	09 f0       	breq	.+2      	; 0x29fe <bom_init+0x12>
4935
    29fc:	44 c0       	rjmp	.+136    	; 0x2a86 <bom_init+0x9a>
4936
    29fe:	1d c0       	rjmp	.+58     	; 0x2a3a <bom_init+0x4e>
4937
    2a00:	8c e2       	ldi	r24, 0x2C	; 44
4938
    2a02:	90 e0       	ldi	r25, 0x00	; 0
4939
    2a04:	90 93 a4 04 	sts	0x04A4, r25
4940
    2a08:	80 93 a3 04 	sts	0x04A3, r24
4941
    2a0c:	8b e2       	ldi	r24, 0x2B	; 43
4942
    2a0e:	90 e0       	ldi	r25, 0x00	; 0
4943
    2a10:	90 93 a6 04 	sts	0x04A6, r25
4944
    2a14:	80 93 a5 04 	sts	0x04A5, r24
4945
    2a18:	8f e2       	ldi	r24, 0x2F	; 47
4946
    2a1a:	90 e0       	ldi	r25, 0x00	; 0
4947
    2a1c:	90 93 a8 04 	sts	0x04A8, r25
4948
    2a20:	80 93 a7 04 	sts	0x04A7, r24
4949
    2a24:	8e e2       	ldi	r24, 0x2E	; 46
4950
    2a26:	90 e0       	ldi	r25, 0x00	; 0
4951
    2a28:	90 93 aa 04 	sts	0x04AA, r25
4952
    2a2c:	80 93 a9 04 	sts	0x04A9, r24
4953
    2a30:	10 92 ac 04 	sts	0x04AC, r1
4954
    2a34:	10 92 ab 04 	sts	0x04AB, r1
4955
    2a38:	08 95       	ret
4956
    2a3a:	60 e0       	ldi	r22, 0x00	; 0
4957
    2a3c:	70 e0       	ldi	r23, 0x00	; 0
4958
    2a3e:	8a e2       	ldi	r24, 0x2A	; 42
4959
    2a40:	90 e0       	ldi	r25, 0x00	; 0
4960
    2a42:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
4961
    2a46:	8d e2       	ldi	r24, 0x2D	; 45
4962
    2a48:	90 e0       	ldi	r25, 0x00	; 0
4963
    2a4a:	90 93 a4 04 	sts	0x04A4, r25
4964
    2a4e:	80 93 a3 04 	sts	0x04A3, r24
4965
    2a52:	8c e2       	ldi	r24, 0x2C	; 44
4966
    2a54:	90 e0       	ldi	r25, 0x00	; 0
4967
    2a56:	90 93 a6 04 	sts	0x04A6, r25
4968
    2a5a:	80 93 a5 04 	sts	0x04A5, r24
4969
    2a5e:	8f e2       	ldi	r24, 0x2F	; 47
4970
    2a60:	90 e0       	ldi	r25, 0x00	; 0
4971
    2a62:	90 93 a8 04 	sts	0x04A8, r25
4972
    2a66:	80 93 a7 04 	sts	0x04A7, r24
4973
    2a6a:	8e e2       	ldi	r24, 0x2E	; 46
4974
    2a6c:	90 e0       	ldi	r25, 0x00	; 0
4975
    2a6e:	90 93 aa 04 	sts	0x04AA, r25
4976
    2a72:	80 93 a9 04 	sts	0x04A9, r24
4977
    2a76:	8f ef       	ldi	r24, 0xFF	; 255
4978
    2a78:	9f ef       	ldi	r25, 0xFF	; 255
4979
    2a7a:	0e 94 c8 14 	call	0x2990	; 0x2990 <bom_set_leds>
4980
    2a7e:	10 92 ac 04 	sts	0x04AC, r1
4981
    2a82:	10 92 ab 04 	sts	0x04AB, r1
4982
    2a86:	08 95       	ret
4983

    
4984
00002a88 <bom_refresh>:
4985
    2a88:	af 92       	push	r10
4986
    2a8a:	bf 92       	push	r11
4987
    2a8c:	cf 92       	push	r12
4988
    2a8e:	df 92       	push	r13
4989
    2a90:	ef 92       	push	r14
4990
    2a92:	ff 92       	push	r15
4991
    2a94:	0f 93       	push	r16
4992
    2a96:	1f 93       	push	r17
4993
    2a98:	cf 93       	push	r28
4994
    2a9a:	df 93       	push	r29
4995
    2a9c:	8c 01       	movw	r16, r24
4996
    2a9e:	0e 94 51 13 	call	0x26a2	; 0x26a2 <analog_loop_status>
4997
    2aa2:	01 97       	sbiw	r24, 0x01	; 1
4998
    2aa4:	19 f0       	breq	.+6      	; 0x2aac <bom_refresh+0x24>
4999
    2aa6:	aa 24       	eor	r10, r10
5000
    2aa8:	bb 24       	eor	r11, r11
5001
    2aaa:	05 c0       	rjmp	.+10     	; 0x2ab6 <bom_refresh+0x2e>
5002
    2aac:	0e 94 4a 13 	call	0x2694	; 0x2694 <analog_stop_loop>
5003
    2ab0:	41 e0       	ldi	r20, 0x01	; 1
5004
    2ab2:	a4 2e       	mov	r10, r20
5005
    2ab4:	b1 2c       	mov	r11, r1
5006
    2ab6:	33 e8       	ldi	r19, 0x83	; 131
5007
    2ab8:	c3 2e       	mov	r12, r19
5008
    2aba:	34 e0       	ldi	r19, 0x04	; 4
5009
    2abc:	d3 2e       	mov	r13, r19
5010
    2abe:	ee 24       	eor	r14, r14
5011
    2ac0:	ff 24       	eor	r15, r15
5012
    2ac2:	00 ff       	sbrs	r16, 0
5013
    2ac4:	48 c0       	rjmp	.+144    	; 0x2b56 <bom_refresh+0xce>
5014
    2ac6:	ee 2d       	mov	r30, r14
5015
    2ac8:	80 91 82 04 	lds	r24, 0x0482
5016
    2acc:	88 23       	and	r24, r24
5017
    2ace:	21 f4       	brne	.+8      	; 0x2ad8 <bom_refresh+0x50>
5018
    2ad0:	f7 01       	movw	r30, r14
5019
    2ad2:	e2 5a       	subi	r30, 0xA2	; 162
5020
    2ad4:	fb 4f       	sbci	r31, 0xFB	; 251
5021
    2ad6:	e0 81       	ld	r30, Z
5022
    2ad8:	ce 2f       	mov	r28, r30
5023
    2ada:	dd 27       	eor	r29, r29
5024
    2adc:	80 91 a9 04 	lds	r24, 0x04A9
5025
    2ae0:	90 91 aa 04 	lds	r25, 0x04AA
5026
    2ae4:	c3 ff       	sbrs	r28, 3
5027
    2ae6:	03 c0       	rjmp	.+6      	; 0x2aee <bom_refresh+0x66>
5028
    2ae8:	61 e0       	ldi	r22, 0x01	; 1
5029
    2aea:	70 e0       	ldi	r23, 0x00	; 0
5030
    2aec:	02 c0       	rjmp	.+4      	; 0x2af2 <bom_refresh+0x6a>
5031
    2aee:	60 e0       	ldi	r22, 0x00	; 0
5032
    2af0:	70 e0       	ldi	r23, 0x00	; 0
5033
    2af2:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
5034
    2af6:	80 91 a7 04 	lds	r24, 0x04A7
5035
    2afa:	90 91 a8 04 	lds	r25, 0x04A8
5036
    2afe:	c2 ff       	sbrs	r28, 2
5037
    2b00:	03 c0       	rjmp	.+6      	; 0x2b08 <bom_refresh+0x80>
5038
    2b02:	61 e0       	ldi	r22, 0x01	; 1
5039
    2b04:	70 e0       	ldi	r23, 0x00	; 0
5040
    2b06:	02 c0       	rjmp	.+4      	; 0x2b0c <bom_refresh+0x84>
5041
    2b08:	60 e0       	ldi	r22, 0x00	; 0
5042
    2b0a:	70 e0       	ldi	r23, 0x00	; 0
5043
    2b0c:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
5044
    2b10:	80 91 a5 04 	lds	r24, 0x04A5
5045
    2b14:	90 91 a6 04 	lds	r25, 0x04A6
5046
    2b18:	c1 ff       	sbrs	r28, 1
5047
    2b1a:	03 c0       	rjmp	.+6      	; 0x2b22 <bom_refresh+0x9a>
5048
    2b1c:	61 e0       	ldi	r22, 0x01	; 1
5049
    2b1e:	70 e0       	ldi	r23, 0x00	; 0
5050
    2b20:	02 c0       	rjmp	.+4      	; 0x2b26 <bom_refresh+0x9e>
5051
    2b22:	60 e0       	ldi	r22, 0x00	; 0
5052
    2b24:	70 e0       	ldi	r23, 0x00	; 0
5053
    2b26:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
5054
    2b2a:	80 91 a3 04 	lds	r24, 0x04A3
5055
    2b2e:	90 91 a4 04 	lds	r25, 0x04A4
5056
    2b32:	c0 ff       	sbrs	r28, 0
5057
    2b34:	03 c0       	rjmp	.+6      	; 0x2b3c <bom_refresh+0xb4>
5058
    2b36:	61 e0       	ldi	r22, 0x01	; 1
5059
    2b38:	70 e0       	ldi	r23, 0x00	; 0
5060
    2b3a:	02 c0       	rjmp	.+4      	; 0x2b40 <bom_refresh+0xb8>
5061
    2b3c:	60 e0       	ldi	r22, 0x00	; 0
5062
    2b3e:	70 e0       	ldi	r23, 0x00	; 0
5063
    2b40:	0e 94 06 06 	call	0xc0c	; 0xc0c <digital_output>
5064
    2b44:	80 91 ab 04 	lds	r24, 0x04AB
5065
    2b48:	90 91 ac 04 	lds	r25, 0x04AC
5066
    2b4c:	0e 94 8a 13 	call	0x2714	; 0x2714 <analog_get8>
5067
    2b50:	f6 01       	movw	r30, r12
5068
    2b52:	91 83       	std	Z+1, r25	; 0x01
5069
    2b54:	80 83       	st	Z, r24
5070
    2b56:	08 94       	sec
5071
    2b58:	e1 1c       	adc	r14, r1
5072
    2b5a:	f1 1c       	adc	r15, r1
5073
    2b5c:	82 e0       	ldi	r24, 0x02	; 2
5074
    2b5e:	90 e0       	ldi	r25, 0x00	; 0
5075
    2b60:	c8 0e       	add	r12, r24
5076
    2b62:	d9 1e       	adc	r13, r25
5077
    2b64:	90 e1       	ldi	r25, 0x10	; 16
5078
    2b66:	e9 16       	cp	r14, r25
5079
    2b68:	f1 04       	cpc	r15, r1
5080
    2b6a:	19 f0       	breq	.+6      	; 0x2b72 <bom_refresh+0xea>
5081
    2b6c:	15 95       	asr	r17
5082
    2b6e:	07 95       	ror	r16
5083
    2b70:	a8 cf       	rjmp	.-176    	; 0x2ac2 <bom_refresh+0x3a>
5084
    2b72:	ab 28       	or	r10, r11
5085
    2b74:	11 f0       	breq	.+4      	; 0x2b7a <bom_refresh+0xf2>
5086
    2b76:	0e 94 3b 13 	call	0x2676	; 0x2676 <analog_start_loop>
5087
    2b7a:	df 91       	pop	r29
5088
    2b7c:	cf 91       	pop	r28
5089
    2b7e:	1f 91       	pop	r17
5090
    2b80:	0f 91       	pop	r16
5091
    2b82:	ff 90       	pop	r15
5092
    2b84:	ef 90       	pop	r14
5093
    2b86:	df 90       	pop	r13
5094
    2b88:	cf 90       	pop	r12
5095
    2b8a:	bf 90       	pop	r11
5096
    2b8c:	af 90       	pop	r10
5097
    2b8e:	08 95       	ret
5098

    
5099
00002b90 <get_max_bom>:
5100
    2b90:	8f ef       	ldi	r24, 0xFF	; 255
5101
    2b92:	9f ef       	ldi	r25, 0xFF	; 255
5102
    2b94:	0e 94 44 15 	call	0x2a88	; 0x2a88 <bom_refresh>
5103
    2b98:	0e 94 83 14 	call	0x2906	; 0x2906 <bom_get_max>
5104
    2b9c:	08 95       	ret
5105

    
5106
00002b9e <buzzer_init>:
5107
    2b9e:	08 95       	ret
5108

    
5109
00002ba0 <buzzer_set_val>:
5110
    2ba0:	2c e1       	ldi	r18, 0x1C	; 28
5111
    2ba2:	25 bd       	out	0x25, r18	; 37
5112
    2ba4:	bf 9a       	sbi	0x17, 7	; 23
5113
    2ba6:	83 bd       	out	0x23, r24	; 35
5114
    2ba8:	08 95       	ret
5115

    
5116
00002baa <buzzer_set_freq>:
5117
    2baa:	9c 01       	movw	r18, r24
5118
    2bac:	44 27       	eor	r20, r20
5119
    2bae:	55 27       	eor	r21, r21
5120
    2bb0:	64 e2       	ldi	r22, 0x24	; 36
5121
    2bb2:	74 ef       	ldi	r23, 0xF4	; 244
5122
    2bb4:	80 e0       	ldi	r24, 0x00	; 0
5123
    2bb6:	90 e0       	ldi	r25, 0x00	; 0
5124
    2bb8:	0e 94 96 17 	call	0x2f2c	; 0x2f2c <__divmodsi4>
5125
    2bbc:	c9 01       	movw	r24, r18
5126
    2bbe:	01 97       	sbiw	r24, 0x01	; 1
5127
    2bc0:	97 ff       	sbrs	r25, 7
5128
    2bc2:	02 c0       	rjmp	.+4      	; 0x2bc8 <buzzer_set_freq+0x1e>
5129
    2bc4:	80 e0       	ldi	r24, 0x00	; 0
5130
    2bc6:	90 e0       	ldi	r25, 0x00	; 0
5131
    2bc8:	8f 3f       	cpi	r24, 0xFF	; 255
5132
    2bca:	91 05       	cpc	r25, r1
5133
    2bcc:	19 f0       	breq	.+6      	; 0x2bd4 <buzzer_set_freq+0x2a>
5134
    2bce:	14 f0       	brlt	.+4      	; 0x2bd4 <buzzer_set_freq+0x2a>
5135
    2bd0:	8f ef       	ldi	r24, 0xFF	; 255
5136
    2bd2:	90 e0       	ldi	r25, 0x00	; 0
5137
    2bd4:	0e 94 d0 15 	call	0x2ba0	; 0x2ba0 <buzzer_set_val>
5138
    2bd8:	08 95       	ret
5139

    
5140
00002bda <buzzer_off>:
5141
    2bda:	85 b5       	in	r24, 0x25	; 37
5142
    2bdc:	88 7f       	andi	r24, 0xF8	; 248
5143
    2bde:	85 bd       	out	0x25, r24	; 37
5144
    2be0:	c6 98       	cbi	0x18, 6	; 24
5145
    2be2:	08 95       	ret
5146

    
5147
00002be4 <buzzer_chirp>:
5148
    2be4:	0f 93       	push	r16
5149
    2be6:	1f 93       	push	r17
5150
    2be8:	8c 01       	movw	r16, r24
5151
    2bea:	cb 01       	movw	r24, r22
5152
    2bec:	0e 94 d5 15 	call	0x2baa	; 0x2baa <buzzer_set_freq>
5153
    2bf0:	c8 01       	movw	r24, r16
5154
    2bf2:	0e 94 9b 12 	call	0x2536	; 0x2536 <delay_ms>
5155
    2bf6:	85 b5       	in	r24, 0x25	; 37
5156
    2bf8:	88 7f       	andi	r24, 0xF8	; 248
5157
    2bfa:	85 bd       	out	0x25, r24	; 37
5158
    2bfc:	c6 98       	cbi	0x18, 6	; 24
5159
    2bfe:	1f 91       	pop	r17
5160
    2c00:	0f 91       	pop	r16
5161
    2c02:	08 95       	ret
5162

    
5163
00002c04 <__ftoa_engine>:
5164
    2c04:	28 30       	cpi	r18, 0x08	; 8
5165
    2c06:	08 f0       	brcs	.+2      	; 0x2c0a <__ftoa_engine+0x6>
5166
    2c08:	27 e0       	ldi	r18, 0x07	; 7
5167
    2c0a:	33 27       	eor	r19, r19
5168
    2c0c:	da 01       	movw	r26, r20
5169
    2c0e:	99 0f       	add	r25, r25
5170
    2c10:	31 1d       	adc	r19, r1
5171
    2c12:	87 fd       	sbrc	r24, 7
5172
    2c14:	91 60       	ori	r25, 0x01	; 1
5173
    2c16:	00 96       	adiw	r24, 0x00	; 0
5174
    2c18:	61 05       	cpc	r22, r1
5175
    2c1a:	71 05       	cpc	r23, r1
5176
    2c1c:	39 f4       	brne	.+14     	; 0x2c2c <__ftoa_engine+0x28>
5177
    2c1e:	32 60       	ori	r19, 0x02	; 2
5178
    2c20:	2e 5f       	subi	r18, 0xFE	; 254
5179
    2c22:	3d 93       	st	X+, r19
5180
    2c24:	30 e3       	ldi	r19, 0x30	; 48
5181
    2c26:	2a 95       	dec	r18
5182
    2c28:	e1 f7       	brne	.-8      	; 0x2c22 <__ftoa_engine+0x1e>
5183
    2c2a:	08 95       	ret
5184
    2c2c:	9f 3f       	cpi	r25, 0xFF	; 255
5185
    2c2e:	30 f0       	brcs	.+12     	; 0x2c3c <__ftoa_engine+0x38>
5186
    2c30:	80 38       	cpi	r24, 0x80	; 128
5187
    2c32:	71 05       	cpc	r23, r1
5188
    2c34:	61 05       	cpc	r22, r1
5189
    2c36:	09 f0       	breq	.+2      	; 0x2c3a <__ftoa_engine+0x36>
5190
    2c38:	3c 5f       	subi	r19, 0xFC	; 252
5191
    2c3a:	3c 5f       	subi	r19, 0xFC	; 252
5192
    2c3c:	3d 93       	st	X+, r19
5193
    2c3e:	91 30       	cpi	r25, 0x01	; 1
5194
    2c40:	08 f0       	brcs	.+2      	; 0x2c44 <__ftoa_engine+0x40>
5195
    2c42:	80 68       	ori	r24, 0x80	; 128
5196
    2c44:	91 1d       	adc	r25, r1
5197
    2c46:	df 93       	push	r29
5198
    2c48:	cf 93       	push	r28
5199
    2c4a:	1f 93       	push	r17
5200
    2c4c:	0f 93       	push	r16
5201
    2c4e:	ff 92       	push	r15
5202
    2c50:	ef 92       	push	r14
5203
    2c52:	19 2f       	mov	r17, r25
5204
    2c54:	98 7f       	andi	r25, 0xF8	; 248
5205
    2c56:	96 95       	lsr	r25
5206
    2c58:	e9 2f       	mov	r30, r25
5207
    2c5a:	96 95       	lsr	r25
5208
    2c5c:	96 95       	lsr	r25
5209
    2c5e:	e9 0f       	add	r30, r25
5210
    2c60:	ff 27       	eor	r31, r31
5211
    2c62:	e2 51       	subi	r30, 0x12	; 18
5212
    2c64:	ff 4f       	sbci	r31, 0xFF	; 255
5213
    2c66:	99 27       	eor	r25, r25
5214
    2c68:	33 27       	eor	r19, r19
5215
    2c6a:	ee 24       	eor	r14, r14
5216
    2c6c:	ff 24       	eor	r15, r15
5217
    2c6e:	a7 01       	movw	r20, r14
5218
    2c70:	e7 01       	movw	r28, r14
5219
    2c72:	05 90       	lpm	r0, Z+
5220
    2c74:	08 94       	sec
5221
    2c76:	07 94       	ror	r0
5222
    2c78:	28 f4       	brcc	.+10     	; 0x2c84 <__ftoa_engine+0x80>
5223
    2c7a:	36 0f       	add	r19, r22
5224
    2c7c:	e7 1e       	adc	r14, r23
5225
    2c7e:	f8 1e       	adc	r15, r24
5226
    2c80:	49 1f       	adc	r20, r25
5227
    2c82:	51 1d       	adc	r21, r1
5228
    2c84:	66 0f       	add	r22, r22
5229
    2c86:	77 1f       	adc	r23, r23
5230
    2c88:	88 1f       	adc	r24, r24
5231
    2c8a:	99 1f       	adc	r25, r25
5232
    2c8c:	06 94       	lsr	r0
5233
    2c8e:	a1 f7       	brne	.-24     	; 0x2c78 <__ftoa_engine+0x74>
5234
    2c90:	05 90       	lpm	r0, Z+
5235
    2c92:	07 94       	ror	r0
5236
    2c94:	28 f4       	brcc	.+10     	; 0x2ca0 <__ftoa_engine+0x9c>
5237
    2c96:	e7 0e       	add	r14, r23
5238
    2c98:	f8 1e       	adc	r15, r24
5239
    2c9a:	49 1f       	adc	r20, r25
5240
    2c9c:	56 1f       	adc	r21, r22
5241
    2c9e:	c1 1d       	adc	r28, r1
5242
    2ca0:	77 0f       	add	r23, r23
5243
    2ca2:	88 1f       	adc	r24, r24
5244
    2ca4:	99 1f       	adc	r25, r25
5245
    2ca6:	66 1f       	adc	r22, r22
5246
    2ca8:	06 94       	lsr	r0
5247
    2caa:	a1 f7       	brne	.-24     	; 0x2c94 <__ftoa_engine+0x90>
5248
    2cac:	05 90       	lpm	r0, Z+
5249
    2cae:	07 94       	ror	r0
5250
    2cb0:	28 f4       	brcc	.+10     	; 0x2cbc <__ftoa_engine+0xb8>
5251
    2cb2:	f8 0e       	add	r15, r24
5252
    2cb4:	49 1f       	adc	r20, r25
5253
    2cb6:	56 1f       	adc	r21, r22
5254
    2cb8:	c7 1f       	adc	r28, r23
5255
    2cba:	d1 1d       	adc	r29, r1
5256
    2cbc:	88 0f       	add	r24, r24
5257
    2cbe:	99 1f       	adc	r25, r25
5258
    2cc0:	66 1f       	adc	r22, r22
5259
    2cc2:	77 1f       	adc	r23, r23
5260
    2cc4:	06 94       	lsr	r0
5261
    2cc6:	a1 f7       	brne	.-24     	; 0x2cb0 <__ftoa_engine+0xac>
5262
    2cc8:	05 90       	lpm	r0, Z+
5263
    2cca:	07 94       	ror	r0
5264
    2ccc:	20 f4       	brcc	.+8      	; 0x2cd6 <__ftoa_engine+0xd2>
5265
    2cce:	49 0f       	add	r20, r25
5266
    2cd0:	56 1f       	adc	r21, r22
5267
    2cd2:	c7 1f       	adc	r28, r23
5268
    2cd4:	d8 1f       	adc	r29, r24
5269
    2cd6:	99 0f       	add	r25, r25
5270
    2cd8:	66 1f       	adc	r22, r22
5271
    2cda:	77 1f       	adc	r23, r23
5272
    2cdc:	88 1f       	adc	r24, r24
5273
    2cde:	06 94       	lsr	r0
5274
    2ce0:	a9 f7       	brne	.-22     	; 0x2ccc <__ftoa_engine+0xc8>
5275
    2ce2:	84 91       	lpm	r24, Z+
5276
    2ce4:	10 95       	com	r17
5277
    2ce6:	17 70       	andi	r17, 0x07	; 7
5278
    2ce8:	41 f0       	breq	.+16     	; 0x2cfa <__ftoa_engine+0xf6>
5279
    2cea:	d6 95       	lsr	r29
5280
    2cec:	c7 95       	ror	r28
5281
    2cee:	57 95       	ror	r21
5282
    2cf0:	47 95       	ror	r20
5283
    2cf2:	f7 94       	ror	r15
5284
    2cf4:	e7 94       	ror	r14
5285
    2cf6:	1a 95       	dec	r17
5286
    2cf8:	c1 f7       	brne	.-16     	; 0x2cea <__ftoa_engine+0xe6>
5287
    2cfa:	e4 e9       	ldi	r30, 0x94	; 148
5288
    2cfc:	f0 e0       	ldi	r31, 0x00	; 0
5289
    2cfe:	68 94       	set
5290
    2d00:	15 90       	lpm	r1, Z+
5291
    2d02:	15 91       	lpm	r17, Z+
5292
    2d04:	35 91       	lpm	r19, Z+
5293
    2d06:	65 91       	lpm	r22, Z+
5294
    2d08:	95 91       	lpm	r25, Z+
5295
    2d0a:	05 90       	lpm	r0, Z+
5296
    2d0c:	7f e2       	ldi	r23, 0x2F	; 47
5297
    2d0e:	73 95       	inc	r23
5298
    2d10:	e1 18       	sub	r14, r1
5299
    2d12:	f1 0a       	sbc	r15, r17
5300
    2d14:	43 0b       	sbc	r20, r19
5301
    2d16:	56 0b       	sbc	r21, r22
5302
    2d18:	c9 0b       	sbc	r28, r25
5303
    2d1a:	d0 09       	sbc	r29, r0
5304
    2d1c:	c0 f7       	brcc	.-16     	; 0x2d0e <__ftoa_engine+0x10a>
5305
    2d1e:	e1 0c       	add	r14, r1
5306
    2d20:	f1 1e       	adc	r15, r17
5307
    2d22:	43 1f       	adc	r20, r19
5308
    2d24:	56 1f       	adc	r21, r22
5309
    2d26:	c9 1f       	adc	r28, r25
5310
    2d28:	d0 1d       	adc	r29, r0
5311
    2d2a:	7e f4       	brtc	.+30     	; 0x2d4a <__ftoa_engine+0x146>
5312
    2d2c:	70 33       	cpi	r23, 0x30	; 48
5313
    2d2e:	11 f4       	brne	.+4      	; 0x2d34 <__ftoa_engine+0x130>
5314
    2d30:	8a 95       	dec	r24
5315
    2d32:	e6 cf       	rjmp	.-52     	; 0x2d00 <__ftoa_engine+0xfc>
5316
    2d34:	e8 94       	clt
5317
    2d36:	01 50       	subi	r16, 0x01	; 1
5318
    2d38:	30 f0       	brcs	.+12     	; 0x2d46 <__ftoa_engine+0x142>
5319
    2d3a:	08 0f       	add	r16, r24
5320
    2d3c:	0a f4       	brpl	.+2      	; 0x2d40 <__ftoa_engine+0x13c>
5321
    2d3e:	00 27       	eor	r16, r16
5322
    2d40:	02 17       	cp	r16, r18
5323
    2d42:	08 f4       	brcc	.+2      	; 0x2d46 <__ftoa_engine+0x142>
5324
    2d44:	20 2f       	mov	r18, r16
5325
    2d46:	23 95       	inc	r18
5326
    2d48:	02 2f       	mov	r16, r18
5327
    2d4a:	7a 33       	cpi	r23, 0x3A	; 58
5328
    2d4c:	28 f0       	brcs	.+10     	; 0x2d58 <__ftoa_engine+0x154>
5329
    2d4e:	79 e3       	ldi	r23, 0x39	; 57
5330
    2d50:	7d 93       	st	X+, r23
5331
    2d52:	2a 95       	dec	r18
5332
    2d54:	e9 f7       	brne	.-6      	; 0x2d50 <__ftoa_engine+0x14c>
5333
    2d56:	10 c0       	rjmp	.+32     	; 0x2d78 <__ftoa_engine+0x174>
5334
    2d58:	7d 93       	st	X+, r23
5335
    2d5a:	2a 95       	dec	r18
5336
    2d5c:	89 f6       	brne	.-94     	; 0x2d00 <__ftoa_engine+0xfc>
5337
    2d5e:	06 94       	lsr	r0
5338
    2d60:	97 95       	ror	r25
5339
    2d62:	67 95       	ror	r22
5340
    2d64:	37 95       	ror	r19
5341
    2d66:	17 95       	ror	r17
5342
    2d68:	17 94       	ror	r1
5343
    2d6a:	e1 18       	sub	r14, r1
5344
    2d6c:	f1 0a       	sbc	r15, r17
5345
    2d6e:	43 0b       	sbc	r20, r19
5346
    2d70:	56 0b       	sbc	r21, r22
5347
    2d72:	c9 0b       	sbc	r28, r25
5348
    2d74:	d0 09       	sbc	r29, r0
5349
    2d76:	98 f0       	brcs	.+38     	; 0x2d9e <__ftoa_engine+0x19a>
5350
    2d78:	23 95       	inc	r18
5351
    2d7a:	7e 91       	ld	r23, -X
5352
    2d7c:	73 95       	inc	r23
5353
    2d7e:	7a 33       	cpi	r23, 0x3A	; 58
5354
    2d80:	08 f0       	brcs	.+2      	; 0x2d84 <__ftoa_engine+0x180>
5355
    2d82:	70 e3       	ldi	r23, 0x30	; 48
5356
    2d84:	7c 93       	st	X, r23
5357
    2d86:	20 13       	cpse	r18, r16
5358
    2d88:	b8 f7       	brcc	.-18     	; 0x2d78 <__ftoa_engine+0x174>
5359
    2d8a:	7e 91       	ld	r23, -X
5360
    2d8c:	70 61       	ori	r23, 0x10	; 16
5361
    2d8e:	7d 93       	st	X+, r23
5362
    2d90:	30 f0       	brcs	.+12     	; 0x2d9e <__ftoa_engine+0x19a>
5363
    2d92:	83 95       	inc	r24
5364
    2d94:	71 e3       	ldi	r23, 0x31	; 49
5365
    2d96:	7d 93       	st	X+, r23
5366
    2d98:	70 e3       	ldi	r23, 0x30	; 48
5367
    2d9a:	2a 95       	dec	r18
5368
    2d9c:	e1 f7       	brne	.-8      	; 0x2d96 <__ftoa_engine+0x192>
5369
    2d9e:	11 24       	eor	r1, r1
5370
    2da0:	ef 90       	pop	r14
5371
    2da2:	ff 90       	pop	r15
5372
    2da4:	0f 91       	pop	r16
5373
    2da6:	1f 91       	pop	r17
5374
    2da8:	cf 91       	pop	r28
5375
    2daa:	df 91       	pop	r29
5376
    2dac:	99 27       	eor	r25, r25
5377
    2dae:	87 fd       	sbrc	r24, 7
5378
    2db0:	90 95       	com	r25
5379
    2db2:	08 95       	ret
5380

    
5381
00002db4 <memcpy_P>:
5382
    2db4:	fb 01       	movw	r30, r22
5383
    2db6:	dc 01       	movw	r26, r24
5384
    2db8:	02 c0       	rjmp	.+4      	; 0x2dbe <memcpy_P+0xa>
5385
    2dba:	05 90       	lpm	r0, Z+
5386
    2dbc:	0d 92       	st	X+, r0
5387
    2dbe:	41 50       	subi	r20, 0x01	; 1
5388
    2dc0:	50 40       	sbci	r21, 0x00	; 0
5389
    2dc2:	d8 f7       	brcc	.-10     	; 0x2dba <memcpy_P+0x6>
5390
    2dc4:	08 95       	ret
5391

    
5392
00002dc6 <strnlen_P>:
5393
    2dc6:	fc 01       	movw	r30, r24
5394
    2dc8:	05 90       	lpm	r0, Z+
5395
    2dca:	61 50       	subi	r22, 0x01	; 1
5396
    2dcc:	70 40       	sbci	r23, 0x00	; 0
5397
    2dce:	01 10       	cpse	r0, r1
5398
    2dd0:	d8 f7       	brcc	.-10     	; 0x2dc8 <strnlen_P+0x2>
5399
    2dd2:	80 95       	com	r24
5400
    2dd4:	90 95       	com	r25
5401
    2dd6:	8e 0f       	add	r24, r30
5402
    2dd8:	9f 1f       	adc	r25, r31
5403
    2dda:	08 95       	ret
5404

    
5405
00002ddc <strnlen>:
5406
    2ddc:	fc 01       	movw	r30, r24
5407
    2dde:	61 50       	subi	r22, 0x01	; 1
5408
    2de0:	70 40       	sbci	r23, 0x00	; 0
5409
    2de2:	01 90       	ld	r0, Z+
5410
    2de4:	01 10       	cpse	r0, r1
5411
    2de6:	d8 f7       	brcc	.-10     	; 0x2dde <strnlen+0x2>
5412
    2de8:	80 95       	com	r24
5413
    2dea:	90 95       	com	r25
5414
    2dec:	8e 0f       	add	r24, r30
5415
    2dee:	9f 1f       	adc	r25, r31
5416
    2df0:	08 95       	ret
5417

    
5418
00002df2 <fputc>:
5419
    2df2:	0f 93       	push	r16
5420
    2df4:	1f 93       	push	r17
5421
    2df6:	cf 93       	push	r28
5422
    2df8:	df 93       	push	r29
5423
    2dfa:	8c 01       	movw	r16, r24
5424
    2dfc:	eb 01       	movw	r28, r22
5425
    2dfe:	8b 81       	ldd	r24, Y+3	; 0x03
5426
    2e00:	81 ff       	sbrs	r24, 1
5427
    2e02:	1b c0       	rjmp	.+54     	; 0x2e3a <fputc+0x48>
5428
    2e04:	82 ff       	sbrs	r24, 2
5429
    2e06:	0d c0       	rjmp	.+26     	; 0x2e22 <fputc+0x30>
5430
    2e08:	2e 81       	ldd	r18, Y+6	; 0x06
5431
    2e0a:	3f 81       	ldd	r19, Y+7	; 0x07
5432
    2e0c:	8c 81       	ldd	r24, Y+4	; 0x04
5433
    2e0e:	9d 81       	ldd	r25, Y+5	; 0x05
5434
    2e10:	28 17       	cp	r18, r24
5435
    2e12:	39 07       	cpc	r19, r25
5436
    2e14:	64 f4       	brge	.+24     	; 0x2e2e <fputc+0x3c>
5437
    2e16:	e8 81       	ld	r30, Y
5438
    2e18:	f9 81       	ldd	r31, Y+1	; 0x01
5439
    2e1a:	01 93       	st	Z+, r16
5440
    2e1c:	f9 83       	std	Y+1, r31	; 0x01
5441
    2e1e:	e8 83       	st	Y, r30
5442
    2e20:	06 c0       	rjmp	.+12     	; 0x2e2e <fputc+0x3c>
5443
    2e22:	e8 85       	ldd	r30, Y+8	; 0x08
5444
    2e24:	f9 85       	ldd	r31, Y+9	; 0x09
5445
    2e26:	80 2f       	mov	r24, r16
5446
    2e28:	09 95       	icall
5447
    2e2a:	89 2b       	or	r24, r25
5448
    2e2c:	31 f4       	brne	.+12     	; 0x2e3a <fputc+0x48>
5449
    2e2e:	8e 81       	ldd	r24, Y+6	; 0x06
5450
    2e30:	9f 81       	ldd	r25, Y+7	; 0x07
5451
    2e32:	01 96       	adiw	r24, 0x01	; 1
5452
    2e34:	9f 83       	std	Y+7, r25	; 0x07
5453
    2e36:	8e 83       	std	Y+6, r24	; 0x06
5454
    2e38:	02 c0       	rjmp	.+4      	; 0x2e3e <fputc+0x4c>
5455
    2e3a:	0f ef       	ldi	r16, 0xFF	; 255
5456
    2e3c:	1f ef       	ldi	r17, 0xFF	; 255
5457
    2e3e:	c8 01       	movw	r24, r16
5458
    2e40:	df 91       	pop	r29
5459
    2e42:	cf 91       	pop	r28
5460
    2e44:	1f 91       	pop	r17
5461
    2e46:	0f 91       	pop	r16
5462
    2e48:	08 95       	ret
5463

    
5464
00002e4a <__ultoa_invert>:
5465
    2e4a:	fa 01       	movw	r30, r20
5466
    2e4c:	aa 27       	eor	r26, r26
5467
    2e4e:	28 30       	cpi	r18, 0x08	; 8
5468
    2e50:	51 f1       	breq	.+84     	; 0x2ea6 <__ultoa_invert+0x5c>
5469
    2e52:	20 31       	cpi	r18, 0x10	; 16
5470
    2e54:	81 f1       	breq	.+96     	; 0x2eb6 <__ultoa_invert+0x6c>
5471
    2e56:	e8 94       	clt
5472
    2e58:	6f 93       	push	r22
5473
    2e5a:	6e 7f       	andi	r22, 0xFE	; 254
5474
    2e5c:	6e 5f       	subi	r22, 0xFE	; 254
5475
    2e5e:	7f 4f       	sbci	r23, 0xFF	; 255
5476
    2e60:	8f 4f       	sbci	r24, 0xFF	; 255
5477
    2e62:	9f 4f       	sbci	r25, 0xFF	; 255
5478
    2e64:	af 4f       	sbci	r26, 0xFF	; 255
5479
    2e66:	b1 e0       	ldi	r27, 0x01	; 1
5480
    2e68:	3e d0       	rcall	.+124    	; 0x2ee6 <__ultoa_invert+0x9c>
5481
    2e6a:	b4 e0       	ldi	r27, 0x04	; 4
5482
    2e6c:	3c d0       	rcall	.+120    	; 0x2ee6 <__ultoa_invert+0x9c>
5483
    2e6e:	67 0f       	add	r22, r23
5484
    2e70:	78 1f       	adc	r23, r24
5485
    2e72:	89 1f       	adc	r24, r25
5486
    2e74:	9a 1f       	adc	r25, r26
5487
    2e76:	a1 1d       	adc	r26, r1
5488
    2e78:	68 0f       	add	r22, r24
5489
    2e7a:	79 1f       	adc	r23, r25
5490
    2e7c:	8a 1f       	adc	r24, r26
5491
    2e7e:	91 1d       	adc	r25, r1
5492
    2e80:	a1 1d       	adc	r26, r1
5493
    2e82:	6a 0f       	add	r22, r26
5494
    2e84:	71 1d       	adc	r23, r1
5495
    2e86:	81 1d       	adc	r24, r1
5496
    2e88:	91 1d       	adc	r25, r1
5497
    2e8a:	a1 1d       	adc	r26, r1
5498
    2e8c:	20 d0       	rcall	.+64     	; 0x2ece <__ultoa_invert+0x84>
5499
    2e8e:	09 f4       	brne	.+2      	; 0x2e92 <__ultoa_invert+0x48>
5500
    2e90:	68 94       	set
5501
    2e92:	3f 91       	pop	r19
5502
    2e94:	2a e0       	ldi	r18, 0x0A	; 10
5503
    2e96:	26 9f       	mul	r18, r22
5504
    2e98:	11 24       	eor	r1, r1
5505
    2e9a:	30 19       	sub	r19, r0
5506
    2e9c:	30 5d       	subi	r19, 0xD0	; 208
5507
    2e9e:	31 93       	st	Z+, r19
5508
    2ea0:	de f6       	brtc	.-74     	; 0x2e58 <__ultoa_invert+0xe>
5509
    2ea2:	cf 01       	movw	r24, r30
5510
    2ea4:	08 95       	ret
5511
    2ea6:	46 2f       	mov	r20, r22
5512
    2ea8:	47 70       	andi	r20, 0x07	; 7
5513
    2eaa:	40 5d       	subi	r20, 0xD0	; 208
5514
    2eac:	41 93       	st	Z+, r20
5515
    2eae:	b3 e0       	ldi	r27, 0x03	; 3
5516
    2eb0:	0f d0       	rcall	.+30     	; 0x2ed0 <__ultoa_invert+0x86>
5517
    2eb2:	c9 f7       	brne	.-14     	; 0x2ea6 <__ultoa_invert+0x5c>
5518
    2eb4:	f6 cf       	rjmp	.-20     	; 0x2ea2 <__ultoa_invert+0x58>
5519
    2eb6:	46 2f       	mov	r20, r22
5520
    2eb8:	4f 70       	andi	r20, 0x0F	; 15
5521
    2eba:	40 5d       	subi	r20, 0xD0	; 208
5522
    2ebc:	4a 33       	cpi	r20, 0x3A	; 58
5523
    2ebe:	18 f0       	brcs	.+6      	; 0x2ec6 <__ultoa_invert+0x7c>
5524
    2ec0:	49 5d       	subi	r20, 0xD9	; 217
5525
    2ec2:	31 fd       	sbrc	r19, 1
5526
    2ec4:	40 52       	subi	r20, 0x20	; 32
5527
    2ec6:	41 93       	st	Z+, r20
5528
    2ec8:	02 d0       	rcall	.+4      	; 0x2ece <__ultoa_invert+0x84>
5529
    2eca:	a9 f7       	brne	.-22     	; 0x2eb6 <__ultoa_invert+0x6c>
5530
    2ecc:	ea cf       	rjmp	.-44     	; 0x2ea2 <__ultoa_invert+0x58>
5531
    2ece:	b4 e0       	ldi	r27, 0x04	; 4
5532
    2ed0:	a6 95       	lsr	r26
5533
    2ed2:	97 95       	ror	r25
5534
    2ed4:	87 95       	ror	r24
5535
    2ed6:	77 95       	ror	r23
5536
    2ed8:	67 95       	ror	r22
5537
    2eda:	ba 95       	dec	r27
5538
    2edc:	c9 f7       	brne	.-14     	; 0x2ed0 <__ultoa_invert+0x86>
5539
    2ede:	00 97       	sbiw	r24, 0x00	; 0
5540
    2ee0:	61 05       	cpc	r22, r1
5541
    2ee2:	71 05       	cpc	r23, r1
5542
    2ee4:	08 95       	ret
5543
    2ee6:	9b 01       	movw	r18, r22
5544
    2ee8:	ac 01       	movw	r20, r24
5545
    2eea:	0a 2e       	mov	r0, r26
5546
    2eec:	06 94       	lsr	r0
5547
    2eee:	57 95       	ror	r21
5548
    2ef0:	47 95       	ror	r20
5549
    2ef2:	37 95       	ror	r19
5550
    2ef4:	27 95       	ror	r18
5551
    2ef6:	ba 95       	dec	r27
5552
    2ef8:	c9 f7       	brne	.-14     	; 0x2eec <__ultoa_invert+0xa2>
5553
    2efa:	62 0f       	add	r22, r18
5554
    2efc:	73 1f       	adc	r23, r19
5555
    2efe:	84 1f       	adc	r24, r20
5556
    2f00:	95 1f       	adc	r25, r21
5557
    2f02:	a0 1d       	adc	r26, r0
5558
    2f04:	08 95       	ret
5559

    
5560
00002f06 <__divmodhi4>:
5561
    2f06:	97 fb       	bst	r25, 7
5562
    2f08:	09 2e       	mov	r0, r25
5563
    2f0a:	07 26       	eor	r0, r23
5564
    2f0c:	0a d0       	rcall	.+20     	; 0x2f22 <__divmodhi4_neg1>
5565
    2f0e:	77 fd       	sbrc	r23, 7
5566
    2f10:	04 d0       	rcall	.+8      	; 0x2f1a <__divmodhi4_neg2>
5567
    2f12:	5e d0       	rcall	.+188    	; 0x2fd0 <__udivmodhi4>
5568
    2f14:	06 d0       	rcall	.+12     	; 0x2f22 <__divmodhi4_neg1>
5569
    2f16:	00 20       	and	r0, r0
5570
    2f18:	1a f4       	brpl	.+6      	; 0x2f20 <__divmodhi4_exit>
5571

    
5572
00002f1a <__divmodhi4_neg2>:
5573
    2f1a:	70 95       	com	r23
5574
    2f1c:	61 95       	neg	r22
5575
    2f1e:	7f 4f       	sbci	r23, 0xFF	; 255
5576

    
5577
00002f20 <__divmodhi4_exit>:
5578
    2f20:	08 95       	ret
5579

    
5580
00002f22 <__divmodhi4_neg1>:
5581
    2f22:	f6 f7       	brtc	.-4      	; 0x2f20 <__divmodhi4_exit>
5582
    2f24:	90 95       	com	r25
5583
    2f26:	81 95       	neg	r24
5584
    2f28:	9f 4f       	sbci	r25, 0xFF	; 255
5585
    2f2a:	08 95       	ret
5586

    
5587
00002f2c <__divmodsi4>:
5588
    2f2c:	97 fb       	bst	r25, 7
5589
    2f2e:	09 2e       	mov	r0, r25
5590
    2f30:	05 26       	eor	r0, r21
5591
    2f32:	0e d0       	rcall	.+28     	; 0x2f50 <__divmodsi4_neg1>
5592
    2f34:	57 fd       	sbrc	r21, 7
5593
    2f36:	04 d0       	rcall	.+8      	; 0x2f40 <__divmodsi4_neg2>
5594
    2f38:	5f d0       	rcall	.+190    	; 0x2ff8 <__udivmodsi4>
5595
    2f3a:	0a d0       	rcall	.+20     	; 0x2f50 <__divmodsi4_neg1>
5596
    2f3c:	00 1c       	adc	r0, r0
5597
    2f3e:	38 f4       	brcc	.+14     	; 0x2f4e <__divmodsi4_exit>
5598

    
5599
00002f40 <__divmodsi4_neg2>:
5600
    2f40:	50 95       	com	r21
5601
    2f42:	40 95       	com	r20
5602
    2f44:	30 95       	com	r19
5603
    2f46:	21 95       	neg	r18
5604
    2f48:	3f 4f       	sbci	r19, 0xFF	; 255
5605
    2f4a:	4f 4f       	sbci	r20, 0xFF	; 255
5606
    2f4c:	5f 4f       	sbci	r21, 0xFF	; 255
5607

    
5608
00002f4e <__divmodsi4_exit>:
5609
    2f4e:	08 95       	ret
5610

    
5611
00002f50 <__divmodsi4_neg1>:
5612
    2f50:	f6 f7       	brtc	.-4      	; 0x2f4e <__divmodsi4_exit>
5613
    2f52:	90 95       	com	r25
5614
    2f54:	80 95       	com	r24
5615
    2f56:	70 95       	com	r23
5616
    2f58:	61 95       	neg	r22
5617
    2f5a:	7f 4f       	sbci	r23, 0xFF	; 255
5618
    2f5c:	8f 4f       	sbci	r24, 0xFF	; 255
5619
    2f5e:	9f 4f       	sbci	r25, 0xFF	; 255
5620
    2f60:	08 95       	ret
5621

    
5622
00002f62 <__prologue_saves__>:
5623
    2f62:	2f 92       	push	r2
5624
    2f64:	3f 92       	push	r3
5625
    2f66:	4f 92       	push	r4
5626
    2f68:	5f 92       	push	r5
5627
    2f6a:	6f 92       	push	r6
5628
    2f6c:	7f 92       	push	r7
5629
    2f6e:	8f 92       	push	r8
5630
    2f70:	9f 92       	push	r9
5631
    2f72:	af 92       	push	r10
5632
    2f74:	bf 92       	push	r11
5633
    2f76:	cf 92       	push	r12
5634
    2f78:	df 92       	push	r13
5635
    2f7a:	ef 92       	push	r14
5636
    2f7c:	ff 92       	push	r15
5637
    2f7e:	0f 93       	push	r16
5638
    2f80:	1f 93       	push	r17
5639
    2f82:	cf 93       	push	r28
5640
    2f84:	df 93       	push	r29
5641
    2f86:	cd b7       	in	r28, 0x3d	; 61
5642
    2f88:	de b7       	in	r29, 0x3e	; 62
5643
    2f8a:	ca 1b       	sub	r28, r26
5644
    2f8c:	db 0b       	sbc	r29, r27
5645
    2f8e:	0f b6       	in	r0, 0x3f	; 63
5646
    2f90:	f8 94       	cli
5647
    2f92:	de bf       	out	0x3e, r29	; 62
5648
    2f94:	0f be       	out	0x3f, r0	; 63
5649
    2f96:	cd bf       	out	0x3d, r28	; 61
5650
    2f98:	09 94       	ijmp
5651

    
5652
00002f9a <__epilogue_restores__>:
5653
    2f9a:	2a 88       	ldd	r2, Y+18	; 0x12
5654
    2f9c:	39 88       	ldd	r3, Y+17	; 0x11
5655
    2f9e:	48 88       	ldd	r4, Y+16	; 0x10
5656
    2fa0:	5f 84       	ldd	r5, Y+15	; 0x0f
5657
    2fa2:	6e 84       	ldd	r6, Y+14	; 0x0e
5658
    2fa4:	7d 84       	ldd	r7, Y+13	; 0x0d
5659
    2fa6:	8c 84       	ldd	r8, Y+12	; 0x0c
5660
    2fa8:	9b 84       	ldd	r9, Y+11	; 0x0b
5661
    2faa:	aa 84       	ldd	r10, Y+10	; 0x0a
5662
    2fac:	b9 84       	ldd	r11, Y+9	; 0x09
5663
    2fae:	c8 84       	ldd	r12, Y+8	; 0x08
5664
    2fb0:	df 80       	ldd	r13, Y+7	; 0x07
5665
    2fb2:	ee 80       	ldd	r14, Y+6	; 0x06
5666
    2fb4:	fd 80       	ldd	r15, Y+5	; 0x05
5667
    2fb6:	0c 81       	ldd	r16, Y+4	; 0x04
5668
    2fb8:	1b 81       	ldd	r17, Y+3	; 0x03
5669
    2fba:	aa 81       	ldd	r26, Y+2	; 0x02
5670
    2fbc:	b9 81       	ldd	r27, Y+1	; 0x01
5671
    2fbe:	ce 0f       	add	r28, r30
5672
    2fc0:	d1 1d       	adc	r29, r1
5673
    2fc2:	0f b6       	in	r0, 0x3f	; 63
5674
    2fc4:	f8 94       	cli
5675
    2fc6:	de bf       	out	0x3e, r29	; 62
5676
    2fc8:	0f be       	out	0x3f, r0	; 63
5677
    2fca:	cd bf       	out	0x3d, r28	; 61
5678
    2fcc:	ed 01       	movw	r28, r26
5679
    2fce:	08 95       	ret
5680

    
5681
00002fd0 <__udivmodhi4>:
5682
    2fd0:	aa 1b       	sub	r26, r26
5683
    2fd2:	bb 1b       	sub	r27, r27
5684
    2fd4:	51 e1       	ldi	r21, 0x11	; 17
5685
    2fd6:	07 c0       	rjmp	.+14     	; 0x2fe6 <__udivmodhi4_ep>
5686

    
5687
00002fd8 <__udivmodhi4_loop>:
5688
    2fd8:	aa 1f       	adc	r26, r26
5689
    2fda:	bb 1f       	adc	r27, r27
5690
    2fdc:	a6 17       	cp	r26, r22
5691
    2fde:	b7 07       	cpc	r27, r23
5692
    2fe0:	10 f0       	brcs	.+4      	; 0x2fe6 <__udivmodhi4_ep>
5693
    2fe2:	a6 1b       	sub	r26, r22
5694
    2fe4:	b7 0b       	sbc	r27, r23
5695

    
5696
00002fe6 <__udivmodhi4_ep>:
5697
    2fe6:	88 1f       	adc	r24, r24
5698
    2fe8:	99 1f       	adc	r25, r25
5699
    2fea:	5a 95       	dec	r21
5700
    2fec:	a9 f7       	brne	.-22     	; 0x2fd8 <__udivmodhi4_loop>
5701
    2fee:	80 95       	com	r24
5702
    2ff0:	90 95       	com	r25
5703
    2ff2:	bc 01       	movw	r22, r24
5704
    2ff4:	cd 01       	movw	r24, r26
5705
    2ff6:	08 95       	ret
5706

    
5707
00002ff8 <__udivmodsi4>:
5708
    2ff8:	a1 e2       	ldi	r26, 0x21	; 33
5709
    2ffa:	1a 2e       	mov	r1, r26
5710
    2ffc:	aa 1b       	sub	r26, r26
5711
    2ffe:	bb 1b       	sub	r27, r27
5712
    3000:	fd 01       	movw	r30, r26
5713
    3002:	0d c0       	rjmp	.+26     	; 0x301e <__udivmodsi4_ep>
5714

    
5715
00003004 <__udivmodsi4_loop>:
5716
    3004:	aa 1f       	adc	r26, r26
5717
    3006:	bb 1f       	adc	r27, r27
5718
    3008:	ee 1f       	adc	r30, r30
5719
    300a:	ff 1f       	adc	r31, r31
5720
    300c:	a2 17       	cp	r26, r18
5721
    300e:	b3 07       	cpc	r27, r19
5722
    3010:	e4 07       	cpc	r30, r20
5723
    3012:	f5 07       	cpc	r31, r21
5724
    3014:	20 f0       	brcs	.+8      	; 0x301e <__udivmodsi4_ep>
5725
    3016:	a2 1b       	sub	r26, r18
5726
    3018:	b3 0b       	sbc	r27, r19
5727
    301a:	e4 0b       	sbc	r30, r20
5728
    301c:	f5 0b       	sbc	r31, r21
5729

    
5730
0000301e <__udivmodsi4_ep>:
5731
    301e:	66 1f       	adc	r22, r22
5732
    3020:	77 1f       	adc	r23, r23
5733
    3022:	88 1f       	adc	r24, r24
5734
    3024:	99 1f       	adc	r25, r25
5735
    3026:	1a 94       	dec	r1
5736
    3028:	69 f7       	brne	.-38     	; 0x3004 <__udivmodsi4_loop>
5737
    302a:	60 95       	com	r22
5738
    302c:	70 95       	com	r23
5739
    302e:	80 95       	com	r24
5740
    3030:	90 95       	com	r25
5741
    3032:	9b 01       	movw	r18, r22
5742
    3034:	ac 01       	movw	r20, r24
5743
    3036:	bd 01       	movw	r22, r26
5744
    3038:	cf 01       	movw	r24, r30
5745
    303a:	08 95       	ret
5746

    
5747
0000303c <_exit>:
5748
    303c:	f8 94       	cli
5749

    
5750
0000303e <__stop_program>:
5751
    303e:	ff cf       	rjmp	.-2      	; 0x303e <__stop_program>