
/Users/guman/Documents/Codex/2026-09-27/https-www-amazon-com-electric-drill/work/tri-product-continuation-2026-10-10.nosync/mcu_pinmap_A30/firmware/固件/vacuum_target/build/vacuum_control_g030f6.elf:     file format elf32-littlearm


Disassembly of section .text:

080000b8 <Reset_Handler-0x14>:
 80000b8:	08000ef0 	.word	0x08000ef0
 80000bc:	20000000 	.word	0x20000000
 80000c0:	20000004 	.word	0x20000004
 80000c4:	20000004 	.word	0x20000004
 80000c8:	20000044 	.word	0x20000044

080000cc <Reset_Handler>:
 80000cc:	480d      	ldr	r0, [pc, #52]	@ (8000104 <LoopForever+0x2>)
 80000ce:	4685      	mov	sp, r0
 80000d0:	f000 f826 	bl	8000120 <SystemInit>
 80000d4:	480c      	ldr	r0, [pc, #48]	@ (8000108 <LoopForever+0x6>)
 80000d6:	490d      	ldr	r1, [pc, #52]	@ (800010c <LoopForever+0xa>)
 80000d8:	4a0d      	ldr	r2, [pc, #52]	@ (8000110 <LoopForever+0xe>)
 80000da:	2300      	movs	r3, #0
 80000dc:	e002      	b.n	80000e4 <LoopCopyDataInit>

080000de <CopyDataInit>:
 80000de:	58d4      	ldr	r4, [r2, r3]
 80000e0:	50c4      	str	r4, [r0, r3]
 80000e2:	3304      	adds	r3, #4

080000e4 <LoopCopyDataInit>:
 80000e4:	18c4      	adds	r4, r0, r3
 80000e6:	428c      	cmp	r4, r1
 80000e8:	d3f9      	bcc.n	80000de <CopyDataInit>
 80000ea:	4a0a      	ldr	r2, [pc, #40]	@ (8000114 <LoopForever+0x12>)
 80000ec:	4c0a      	ldr	r4, [pc, #40]	@ (8000118 <LoopForever+0x16>)
 80000ee:	2300      	movs	r3, #0
 80000f0:	e001      	b.n	80000f6 <LoopFillZerobss>

080000f2 <FillZerobss>:
 80000f2:	6013      	str	r3, [r2, #0]
 80000f4:	3204      	adds	r2, #4

080000f6 <LoopFillZerobss>:
 80000f6:	42a2      	cmp	r2, r4
 80000f8:	d3fb      	bcc.n	80000f2 <FillZerobss>
 80000fa:	f000 f87b 	bl	80001f4 <__libc_init_array>
 80000fe:	f000 f88f 	bl	8000220 <main>

08000102 <LoopForever>:
 8000102:	e7fe      	b.n	8000102 <LoopForever>
 8000104:	20002000 	.word	0x20002000
 8000108:	20000000 	.word	0x20000000
 800010c:	20000004 	.word	0x20000004
 8000110:	08000ef0 	.word	0x08000ef0
 8000114:	20000004 	.word	0x20000004
 8000118:	20000044 	.word	0x20000044

0800011c <ADC1_IRQHandler>:
 800011c:	e7fe      	b.n	800011c <ADC1_IRQHandler>
	...

08000120 <SystemInit>:
 8000120:	4770      	bx	lr

08000122 <SystemCoreClockUpdate>:
 8000122:	2238      	movs	r2, #56	@ 0x38
 8000124:	b510      	push	{r4, lr}
 8000126:	4c1d      	ldr	r4, [pc, #116]	@ (800019c <SystemCoreClockUpdate+0x7a>)
 8000128:	68a3      	ldr	r3, [r4, #8]
 800012a:	4013      	ands	r3, r2
 800012c:	2b18      	cmp	r3, #24
 800012e:	d02f      	beq.n	8000190 <SystemCoreClockUpdate+0x6e>
 8000130:	d809      	bhi.n	8000146 <SystemCoreClockUpdate+0x24>
 8000132:	2b08      	cmp	r3, #8
 8000134:	d02f      	beq.n	8000196 <SystemCoreClockUpdate+0x74>
 8000136:	2b10      	cmp	r3, #16
 8000138:	d00a      	beq.n	8000150 <SystemCoreClockUpdate+0x2e>
 800013a:	6823      	ldr	r3, [r4, #0]
 800013c:	4818      	ldr	r0, [pc, #96]	@ (80001a0 <SystemCoreClockUpdate+0x7e>)
 800013e:	049b      	lsls	r3, r3, #18
 8000140:	0f5b      	lsrs	r3, r3, #29
 8000142:	40d8      	lsrs	r0, r3
 8000144:	e018      	b.n	8000178 <SystemCoreClockUpdate+0x56>
 8000146:	2b20      	cmp	r3, #32
 8000148:	d1f7      	bne.n	800013a <SystemCoreClockUpdate+0x18>
 800014a:	2080      	movs	r0, #128	@ 0x80
 800014c:	0200      	lsls	r0, r0, #8
 800014e:	e013      	b.n	8000178 <SystemCoreClockUpdate+0x56>
 8000150:	68e3      	ldr	r3, [r4, #12]
 8000152:	68e1      	ldr	r1, [r4, #12]
 8000154:	43db      	mvns	r3, r3
 8000156:	0649      	lsls	r1, r1, #25
 8000158:	0f49      	lsrs	r1, r1, #29
 800015a:	3101      	adds	r1, #1
 800015c:	079b      	lsls	r3, r3, #30
 800015e:	d115      	bne.n	800018c <SystemCoreClockUpdate+0x6a>
 8000160:	4810      	ldr	r0, [pc, #64]	@ (80001a4 <SystemCoreClockUpdate+0x82>)
 8000162:	f000 fcc5 	bl	8000af0 <__udivsi3>
 8000166:	68e3      	ldr	r3, [r4, #12]
 8000168:	68e1      	ldr	r1, [r4, #12]
 800016a:	045b      	lsls	r3, r3, #17
 800016c:	0e5b      	lsrs	r3, r3, #25
 800016e:	0f49      	lsrs	r1, r1, #29
 8000170:	4358      	muls	r0, r3
 8000172:	3101      	adds	r1, #1
 8000174:	f000 fcbc 	bl	8000af0 <__udivsi3>
 8000178:	68a3      	ldr	r3, [r4, #8]
 800017a:	4a0b      	ldr	r2, [pc, #44]	@ (80001a8 <SystemCoreClockUpdate+0x86>)
 800017c:	051b      	lsls	r3, r3, #20
 800017e:	0f1b      	lsrs	r3, r3, #28
 8000180:	009b      	lsls	r3, r3, #2
 8000182:	589b      	ldr	r3, [r3, r2]
 8000184:	4909      	ldr	r1, [pc, #36]	@ (80001ac <SystemCoreClockUpdate+0x8a>)
 8000186:	40d8      	lsrs	r0, r3
 8000188:	6008      	str	r0, [r1, #0]
 800018a:	bd10      	pop	{r4, pc}
 800018c:	4804      	ldr	r0, [pc, #16]	@ (80001a0 <SystemCoreClockUpdate+0x7e>)
 800018e:	e7e8      	b.n	8000162 <SystemCoreClockUpdate+0x40>
 8000190:	20fa      	movs	r0, #250	@ 0xfa
 8000192:	01c0      	lsls	r0, r0, #7
 8000194:	e7f0      	b.n	8000178 <SystemCoreClockUpdate+0x56>
 8000196:	4803      	ldr	r0, [pc, #12]	@ (80001a4 <SystemCoreClockUpdate+0x82>)
 8000198:	e7ee      	b.n	8000178 <SystemCoreClockUpdate+0x56>
 800019a:	46c0      	nop			@ (mov r8, r8)
 800019c:	40021000 	.word	0x40021000
 80001a0:	00f42400 	.word	0x00f42400
 80001a4:	007a1200 	.word	0x007a1200
 80001a8:	08000e7c 	.word	0x08000e7c
 80001ac:	20000000 	.word	0x20000000

080001b0 <memcpy>:
 80001b0:	2300      	movs	r3, #0
 80001b2:	b510      	push	{r4, lr}
 80001b4:	4293      	cmp	r3, r2
 80001b6:	d100      	bne.n	80001ba <memcpy+0xa>
 80001b8:	bd10      	pop	{r4, pc}
 80001ba:	5ccc      	ldrb	r4, [r1, r3]
 80001bc:	54c4      	strb	r4, [r0, r3]
 80001be:	3301      	adds	r3, #1
 80001c0:	e7f8      	b.n	80001b4 <memcpy+0x4>

080001c2 <memset>:
 80001c2:	0003      	movs	r3, r0
 80001c4:	1882      	adds	r2, r0, r2
 80001c6:	4293      	cmp	r3, r2
 80001c8:	d100      	bne.n	80001cc <memset+0xa>
 80001ca:	4770      	bx	lr
 80001cc:	7019      	strb	r1, [r3, #0]
 80001ce:	3301      	adds	r3, #1
 80001d0:	e7f9      	b.n	80001c6 <memset+0x4>

080001d2 <memcmp>:
 80001d2:	2300      	movs	r3, #0
 80001d4:	b530      	push	{r4, r5, lr}
 80001d6:	4293      	cmp	r3, r2
 80001d8:	d101      	bne.n	80001de <memcmp+0xc>
 80001da:	2000      	movs	r0, #0
 80001dc:	e007      	b.n	80001ee <memcmp+0x1c>
 80001de:	5cc5      	ldrb	r5, [r0, r3]
 80001e0:	5ccc      	ldrb	r4, [r1, r3]
 80001e2:	42a5      	cmp	r5, r4
 80001e4:	d004      	beq.n	80001f0 <memcmp+0x1e>
 80001e6:	2001      	movs	r0, #1
 80001e8:	42a5      	cmp	r5, r4
 80001ea:	d200      	bcs.n	80001ee <memcmp+0x1c>
 80001ec:	3802      	subs	r0, #2
 80001ee:	bd30      	pop	{r4, r5, pc}
 80001f0:	3301      	adds	r3, #1
 80001f2:	e7f0      	b.n	80001d6 <memcmp+0x4>

080001f4 <__libc_init_array>:
 80001f4:	4770      	bx	lr
	...

080001f8 <SysTick_Handler>:
 80001f8:	4a02      	ldr	r2, [pc, #8]	@ (8000204 <SysTick_Handler+0xc>)
 80001fa:	6813      	ldr	r3, [r2, #0]
 80001fc:	3301      	adds	r3, #1
 80001fe:	6013      	str	r3, [r2, #0]
 8000200:	4770      	bx	lr
 8000202:	46c0      	nop			@ (mov r8, r8)
 8000204:	20000004 	.word	0x20000004

08000208 <EXTI0_1_IRQHandler>:
 8000208:	2202      	movs	r2, #2
 800020a:	4b04      	ldr	r3, [pc, #16]	@ (800021c <EXTI0_1_IRQHandler+0x14>)
 800020c:	b510      	push	{r4, lr}
 800020e:	68d9      	ldr	r1, [r3, #12]
 8000210:	4211      	tst	r1, r2
 8000212:	d002      	beq.n	800021a <EXTI0_1_IRQHandler+0x12>
 8000214:	60da      	str	r2, [r3, #12]
 8000216:	f000 fc07 	bl	8000a28 <vacuum_board_note_tach_edge>
 800021a:	bd10      	pop	{r4, pc}
 800021c:	40021800 	.word	0x40021800

08000220 <main>:
 8000220:	b5f0      	push	{r4, r5, r6, r7, lr}
 8000222:	b097      	sub	sp, #92	@ 0x5c
 8000224:	ac0d      	add	r4, sp, #52	@ 0x34
 8000226:	2224      	movs	r2, #36	@ 0x24
 8000228:	2100      	movs	r1, #0
 800022a:	0020      	movs	r0, r4
 800022c:	f7ff ffc9 	bl	80001c2 <memset>
 8000230:	2600      	movs	r6, #0
 8000232:	f000 faaf 	bl	8000794 <vacuum_board_force_off>
 8000236:	f7ff ff74 	bl	8000122 <SystemCoreClockUpdate>
 800023a:	21fa      	movs	r1, #250	@ 0xfa
 800023c:	4b2f      	ldr	r3, [pc, #188]	@ (80002fc <main+0xdc>)
 800023e:	4d30      	ldr	r5, [pc, #192]	@ (8000300 <main+0xe0>)
 8000240:	6818      	ldr	r0, [r3, #0]
 8000242:	602e      	str	r6, [r5, #0]
 8000244:	0089      	lsls	r1, r1, #2
 8000246:	f000 fc53 	bl	8000af0 <__udivsi3>
 800024a:	4b2e      	ldr	r3, [pc, #184]	@ (8000304 <main+0xe4>)
 800024c:	3801      	subs	r0, #1
 800024e:	4298      	cmp	r0, r3
 8000250:	d903      	bls.n	800025a <main+0x3a>
 8000252:	f000 fa9f 	bl	8000794 <vacuum_board_force_off>
 8000256:	bf30      	wfi
 8000258:	e7fd      	b.n	8000256 <main+0x36>
 800025a:	4a2b      	ldr	r2, [pc, #172]	@ (8000308 <main+0xe8>)
 800025c:	492b      	ldr	r1, [pc, #172]	@ (800030c <main+0xec>)
 800025e:	6050      	str	r0, [r2, #4]
 8000260:	20c0      	movs	r0, #192	@ 0xc0
 8000262:	6a0b      	ldr	r3, [r1, #32]
 8000264:	0600      	lsls	r0, r0, #24
 8000266:	021b      	lsls	r3, r3, #8
 8000268:	0a1b      	lsrs	r3, r3, #8
 800026a:	4303      	orrs	r3, r0
 800026c:	620b      	str	r3, [r1, #32]
 800026e:	2307      	movs	r3, #7
 8000270:	6096      	str	r6, [r2, #8]
 8000272:	6013      	str	r3, [r2, #0]
 8000274:	f000 fae2 	bl	800083c <vacuum_board_init>
 8000278:	2800      	cmp	r0, #0
 800027a:	d0ea      	beq.n	8000252 <main+0x32>
 800027c:	4924      	ldr	r1, [pc, #144]	@ (8000310 <main+0xf0>)
 800027e:	1d28      	adds	r0, r5, #4
 8000280:	f000 f881 	bl	8000386 <vacuum_fan_manager_init>
 8000284:	682f      	ldr	r7, [r5, #0]
 8000286:	3764      	adds	r7, #100	@ 0x64
 8000288:	4e1d      	ldr	r6, [pc, #116]	@ (8000300 <main+0xe0>)
 800028a:	6835      	ldr	r5, [r6, #0]
 800028c:	1beb      	subs	r3, r5, r7
 800028e:	d431      	bmi.n	80002f4 <main+0xd4>
 8000290:	0029      	movs	r1, r5
 8000292:	0020      	movs	r0, r4
 8000294:	f000 fbd0 	bl	8000a38 <vacuum_board_sample>
 8000298:	2800      	cmp	r0, #0
 800029a:	d103      	bne.n	80002a4 <main+0x84>
 800029c:	f000 fa7a 	bl	8000794 <vacuum_board_force_off>
 80002a0:	bf30      	wfi
 80002a2:	e7fd      	b.n	80002a0 <main+0x80>
 80002a4:	2100      	movs	r1, #0
 80002a6:	69a3      	ldr	r3, [r4, #24]
 80002a8:	9106      	str	r1, [sp, #24]
 80002aa:	9307      	str	r3, [sp, #28]
 80002ac:	68e3      	ldr	r3, [r4, #12]
 80002ae:	910b      	str	r1, [sp, #44]	@ 0x2c
 80002b0:	9308      	str	r3, [sp, #32]
 80002b2:	6923      	ldr	r3, [r4, #16]
 80002b4:	3564      	adds	r5, #100	@ 0x64
 80002b6:	9309      	str	r3, [sp, #36]	@ 0x24
 80002b8:	6963      	ldr	r3, [r4, #20]
 80002ba:	2218      	movs	r2, #24
 80002bc:	930a      	str	r3, [sp, #40]	@ 0x28
 80002be:	7f23      	ldrb	r3, [r4, #28]
 80002c0:	002f      	movs	r7, r5
 80002c2:	4668      	mov	r0, sp
 80002c4:	ad06      	add	r5, sp, #24
 80002c6:	762b      	strb	r3, [r5, #24]
 80002c8:	f7ff ff7b 	bl	80001c2 <memset>
 80002cc:	466a      	mov	r2, sp
 80002ce:	4b10      	ldr	r3, [pc, #64]	@ (8000310 <main+0xf0>)
 80002d0:	0029      	movs	r1, r5
 80002d2:	1d30      	adds	r0, r6, #4
 80002d4:	f000 f878 	bl	80003c8 <vacuum_fan_manager_step>
 80002d8:	7933      	ldrb	r3, [r6, #4]
 80002da:	77a0      	strb	r0, [r4, #30]
 80002dc:	77e3      	strb	r3, [r4, #31]
 80002de:	2335      	movs	r3, #53	@ 0x35
 80002e0:	7972      	ldrb	r2, [r6, #5]
 80002e2:	446b      	add	r3, sp
 80002e4:	77da      	strb	r2, [r3, #31]
 80002e6:	2336      	movs	r3, #54	@ 0x36
 80002e8:	7b32      	ldrb	r2, [r6, #12]
 80002ea:	446b      	add	r3, sp
 80002ec:	0020      	movs	r0, r4
 80002ee:	77da      	strb	r2, [r3, #31]
 80002f0:	f000 fbf0 	bl	8000ad4 <vacuum_board_publish_diagnostics>
 80002f4:	f000 fa66 	bl	80007c4 <vacuum_board_force_fan_disabled>
 80002f8:	bf30      	wfi
 80002fa:	e7c5      	b.n	8000288 <main+0x68>
 80002fc:	20000000 	.word	0x20000000
 8000300:	20000004 	.word	0x20000004
 8000304:	00ffffff 	.word	0x00ffffff
 8000308:	e000e010 	.word	0xe000e010
 800030c:	e000ed00 	.word	0xe000ed00
 8000310:	08000edc 	.word	0x08000edc

08000314 <io_valid>:
 8000314:	2800      	cmp	r0, #0
 8000316:	d101      	bne.n	800031c <io_valid+0x8>
 8000318:	2000      	movs	r0, #0
 800031a:	4770      	bx	lr
 800031c:	6843      	ldr	r3, [r0, #4]
 800031e:	2b00      	cmp	r3, #0
 8000320:	d0fa      	beq.n	8000318 <io_valid+0x4>
 8000322:	6880      	ldr	r0, [r0, #8]
 8000324:	1e43      	subs	r3, r0, #1
 8000326:	4198      	sbcs	r0, r3
 8000328:	e7f7      	b.n	800031a <io_valid+0x6>

0800032a <safe_off>:
 800032a:	b573      	push	{r0, r1, r4, r5, r6, lr}
 800032c:	0004      	movs	r4, r0
 800032e:	0008      	movs	r0, r1
 8000330:	000e      	movs	r6, r1
 8000332:	f7ff ffef 	bl	8000314 <io_valid>
 8000336:	2800      	cmp	r0, #0
 8000338:	d103      	bne.n	8000342 <safe_off+0x18>
 800033a:	7060      	strb	r0, [r4, #1]
 800033c:	2308      	movs	r3, #8
 800033e:	0018      	movs	r0, r3
 8000340:	bd76      	pop	{r1, r2, r4, r5, r6, pc}
 8000342:	2100      	movs	r1, #0
 8000344:	6873      	ldr	r3, [r6, #4]
 8000346:	6830      	ldr	r0, [r6, #0]
 8000348:	4798      	blx	r3
 800034a:	0005      	movs	r5, r0
 800034c:	68b3      	ldr	r3, [r6, #8]
 800034e:	2100      	movs	r1, #0
 8000350:	6830      	ldr	r0, [r6, #0]
 8000352:	4798      	blx	r3
 8000354:	426b      	negs	r3, r5
 8000356:	416b      	adcs	r3, r5
 8000358:	7063      	strb	r3, [r4, #1]
 800035a:	2d00      	cmp	r5, #0
 800035c:	d1ee      	bne.n	800033c <safe_off+0x12>
 800035e:	2307      	movs	r3, #7
 8000360:	7025      	strb	r5, [r4, #0]
 8000362:	70a5      	strb	r5, [r4, #2]
 8000364:	6065      	str	r5, [r4, #4]
 8000366:	42a8      	cmp	r0, r5
 8000368:	d1e9      	bne.n	800033e <safe_off+0x14>
 800036a:	0003      	movs	r3, r0
 800036c:	e7e7      	b.n	800033e <safe_off+0x14>

0800036e <fail_closed>:
 800036e:	b570      	push	{r4, r5, r6, lr}
 8000370:	0004      	movs	r4, r0
 8000372:	0015      	movs	r5, r2
 8000374:	f7ff ffd9 	bl	800032a <safe_off>
 8000378:	2301      	movs	r3, #1
 800037a:	7223      	strb	r3, [r4, #8]
 800037c:	2800      	cmp	r0, #0
 800037e:	d100      	bne.n	8000382 <fail_closed+0x14>
 8000380:	0028      	movs	r0, r5
 8000382:	7260      	strb	r0, [r4, #9]
 8000384:	bd70      	pop	{r4, r5, r6, pc}

08000386 <vacuum_fan_manager_init>:
 8000386:	b570      	push	{r4, r5, r6, lr}
 8000388:	0004      	movs	r4, r0
 800038a:	000d      	movs	r5, r1
 800038c:	2800      	cmp	r0, #0
 800038e:	d010      	beq.n	80003b2 <vacuum_fan_manager_init+0x2c>
 8000390:	2300      	movs	r3, #0
 8000392:	8003      	strh	r3, [r0, #0]
 8000394:	7083      	strb	r3, [r0, #2]
 8000396:	6043      	str	r3, [r0, #4]
 8000398:	3301      	adds	r3, #1
 800039a:	33ff      	adds	r3, #255	@ 0xff
 800039c:	8103      	strh	r3, [r0, #8]
 800039e:	0008      	movs	r0, r1
 80003a0:	f7ff ffb8 	bl	8000314 <io_valid>
 80003a4:	2800      	cmp	r0, #0
 80003a6:	d105      	bne.n	80003b4 <vacuum_fan_manager_init+0x2e>
 80003a8:	2207      	movs	r2, #7
 80003aa:	0029      	movs	r1, r5
 80003ac:	0020      	movs	r0, r4
 80003ae:	f7ff ffde 	bl	800036e <fail_closed>
 80003b2:	bd70      	pop	{r4, r5, r6, pc}
 80003b4:	0029      	movs	r1, r5
 80003b6:	0020      	movs	r0, r4
 80003b8:	f7ff ffb7 	bl	800032a <safe_off>
 80003bc:	2800      	cmp	r0, #0
 80003be:	d0f8      	beq.n	80003b2 <vacuum_fan_manager_init+0x2c>
 80003c0:	2301      	movs	r3, #1
 80003c2:	7260      	strb	r0, [r4, #9]
 80003c4:	7223      	strb	r3, [r4, #8]
 80003c6:	e7f4      	b.n	80003b2 <vacuum_fan_manager_init+0x2c>

080003c8 <vacuum_fan_manager_step>:
 80003c8:	b5f7      	push	{r0, r1, r2, r4, r5, r6, r7, lr}
 80003ca:	0004      	movs	r4, r0
 80003cc:	000e      	movs	r6, r1
 80003ce:	0017      	movs	r7, r2
 80003d0:	001d      	movs	r5, r3
 80003d2:	2007      	movs	r0, #7
 80003d4:	2c00      	cmp	r4, #0
 80003d6:	d01b      	beq.n	8000410 <vacuum_fan_manager_step+0x48>
 80003d8:	2900      	cmp	r1, #0
 80003da:	d006      	beq.n	80003ea <vacuum_fan_manager_step+0x22>
 80003dc:	2a00      	cmp	r2, #0
 80003de:	d004      	beq.n	80003ea <vacuum_fan_manager_step+0x22>
 80003e0:	0018      	movs	r0, r3
 80003e2:	f7ff ff97 	bl	8000314 <io_valid>
 80003e6:	2800      	cmp	r0, #0
 80003e8:	d101      	bne.n	80003ee <vacuum_fan_manager_step+0x26>
 80003ea:	2207      	movs	r2, #7
 80003ec:	e040      	b.n	8000470 <vacuum_fan_manager_step+0xa8>
 80003ee:	7e33      	ldrb	r3, [r6, #24]
 80003f0:	2b00      	cmp	r3, #0
 80003f2:	d10e      	bne.n	8000412 <vacuum_fan_manager_step+0x4a>
 80003f4:	0029      	movs	r1, r5
 80003f6:	0020      	movs	r0, r4
 80003f8:	f7ff ff97 	bl	800032a <safe_off>
 80003fc:	2301      	movs	r3, #1
 80003fe:	2800      	cmp	r0, #0
 8000400:	d002      	beq.n	8000408 <vacuum_fan_manager_step+0x40>
 8000402:	7223      	strb	r3, [r4, #8]
 8000404:	7260      	strb	r0, [r4, #9]
 8000406:	e003      	b.n	8000410 <vacuum_fan_manager_step+0x48>
 8000408:	2280      	movs	r2, #128	@ 0x80
 800040a:	0018      	movs	r0, r3
 800040c:	0052      	lsls	r2, r2, #1
 800040e:	8122      	strh	r2, [r4, #8]
 8000410:	bdfe      	pop	{r1, r2, r3, r4, r5, r6, r7, pc}
 8000412:	7a23      	ldrb	r3, [r4, #8]
 8000414:	2b00      	cmp	r3, #0
 8000416:	d008      	beq.n	800042a <vacuum_fan_manager_step+0x62>
 8000418:	0029      	movs	r1, r5
 800041a:	0020      	movs	r0, r4
 800041c:	f7ff ff85 	bl	800032a <safe_off>
 8000420:	2800      	cmp	r0, #0
 8000422:	d000      	beq.n	8000426 <vacuum_fan_manager_step+0x5e>
 8000424:	7260      	strb	r0, [r4, #9]
 8000426:	7a60      	ldrb	r0, [r4, #9]
 8000428:	e7f2      	b.n	8000410 <vacuum_fan_manager_step+0x48>
 800042a:	7db3      	ldrb	r3, [r6, #22]
 800042c:	2b00      	cmp	r3, #0
 800042e:	d01e      	beq.n	800046e <vacuum_fan_manager_step+0xa6>
 8000430:	7df3      	ldrb	r3, [r6, #23]
 8000432:	2b00      	cmp	r3, #0
 8000434:	d01b      	beq.n	800046e <vacuum_fan_manager_step+0xa6>
 8000436:	683b      	ldr	r3, [r7, #0]
 8000438:	2b00      	cmp	r3, #0
 800043a:	d018      	beq.n	800046e <vacuum_fan_manager_step+0xa6>
 800043c:	6879      	ldr	r1, [r7, #4]
 800043e:	428b      	cmp	r3, r1
 8000440:	d815      	bhi.n	800046e <vacuum_fan_manager_step+0xa6>
 8000442:	68ba      	ldr	r2, [r7, #8]
 8000444:	9200      	str	r2, [sp, #0]
 8000446:	2a00      	cmp	r2, #0
 8000448:	d011      	beq.n	800046e <vacuum_fan_manager_step+0xa6>
 800044a:	68f8      	ldr	r0, [r7, #12]
 800044c:	2800      	cmp	r0, #0
 800044e:	d00e      	beq.n	800046e <vacuum_fan_manager_step+0xa6>
 8000450:	693a      	ldr	r2, [r7, #16]
 8000452:	4694      	mov	ip, r2
 8000454:	2a00      	cmp	r2, #0
 8000456:	d00a      	beq.n	800046e <vacuum_fan_manager_step+0xa6>
 8000458:	697a      	ldr	r2, [r7, #20]
 800045a:	4f26      	ldr	r7, [pc, #152]	@ (80004f4 <vacuum_fan_manager_step+0x12c>)
 800045c:	9201      	str	r2, [sp, #4]
 800045e:	3a01      	subs	r2, #1
 8000460:	42ba      	cmp	r2, r7
 8000462:	d804      	bhi.n	800046e <vacuum_fan_manager_step+0xa6>
 8000464:	6837      	ldr	r7, [r6, #0]
 8000466:	4287      	cmp	r7, r0
 8000468:	d907      	bls.n	800047a <vacuum_fan_manager_step+0xb2>
 800046a:	2202      	movs	r2, #2
 800046c:	e000      	b.n	8000470 <vacuum_fan_manager_step+0xa8>
 800046e:	2201      	movs	r2, #1
 8000470:	0029      	movs	r1, r5
 8000472:	0020      	movs	r0, r4
 8000474:	f7ff ff7b 	bl	800036e <fail_closed>
 8000478:	e7ca      	b.n	8000410 <vacuum_fan_manager_step+0x48>
 800047a:	68b0      	ldr	r0, [r6, #8]
 800047c:	2203      	movs	r2, #3
 800047e:	4298      	cmp	r0, r3
 8000480:	d3f6      	bcc.n	8000470 <vacuum_fan_manager_step+0xa8>
 8000482:	2204      	movs	r2, #4
 8000484:	4288      	cmp	r0, r1
 8000486:	d8f3      	bhi.n	8000470 <vacuum_fan_manager_step+0xa8>
 8000488:	68f3      	ldr	r3, [r6, #12]
 800048a:	9a00      	ldr	r2, [sp, #0]
 800048c:	4293      	cmp	r3, r2
 800048e:	d804      	bhi.n	800049a <vacuum_fan_manager_step+0xd2>
 8000490:	23fa      	movs	r3, #250	@ 0xfa
 8000492:	8ab1      	ldrh	r1, [r6, #20]
 8000494:	009b      	lsls	r3, r3, #2
 8000496:	4299      	cmp	r1, r3
 8000498:	d901      	bls.n	800049e <vacuum_fan_manager_step+0xd6>
 800049a:	2205      	movs	r2, #5
 800049c:	e7e8      	b.n	8000470 <vacuum_fan_manager_step+0xa8>
 800049e:	7823      	ldrb	r3, [r4, #0]
 80004a0:	2b00      	cmp	r3, #0
 80004a2:	d00c      	beq.n	80004be <vacuum_fan_manager_step+0xf6>
 80004a4:	78a3      	ldrb	r3, [r4, #2]
 80004a6:	2b00      	cmp	r3, #0
 80004a8:	d009      	beq.n	80004be <vacuum_fan_manager_step+0xf6>
 80004aa:	6862      	ldr	r2, [r4, #4]
 80004ac:	6873      	ldr	r3, [r6, #4]
 80004ae:	1a9b      	subs	r3, r3, r2
 80004b0:	9a01      	ldr	r2, [sp, #4]
 80004b2:	4293      	cmp	r3, r2
 80004b4:	d303      	bcc.n	80004be <vacuum_fan_manager_step+0xf6>
 80004b6:	6933      	ldr	r3, [r6, #16]
 80004b8:	2206      	movs	r2, #6
 80004ba:	4563      	cmp	r3, ip
 80004bc:	d3d8      	bcc.n	8000470 <vacuum_fan_manager_step+0xa8>
 80004be:	68ab      	ldr	r3, [r5, #8]
 80004c0:	6828      	ldr	r0, [r5, #0]
 80004c2:	4798      	blx	r3
 80004c4:	2800      	cmp	r0, #0
 80004c6:	d000      	beq.n	80004ca <vacuum_fan_manager_step+0x102>
 80004c8:	e78f      	b.n	80003ea <vacuum_fan_manager_step+0x22>
 80004ca:	7827      	ldrb	r7, [r4, #0]
 80004cc:	4287      	cmp	r7, r0
 80004ce:	d10f      	bne.n	80004f0 <vacuum_fan_manager_step+0x128>
 80004d0:	2101      	movs	r1, #1
 80004d2:	686b      	ldr	r3, [r5, #4]
 80004d4:	6828      	ldr	r0, [r5, #0]
 80004d6:	4798      	blx	r3
 80004d8:	42b8      	cmp	r0, r7
 80004da:	d001      	beq.n	80004e0 <vacuum_fan_manager_step+0x118>
 80004dc:	7067      	strb	r7, [r4, #1]
 80004de:	e784      	b.n	80003ea <vacuum_fan_manager_step+0x22>
 80004e0:	6873      	ldr	r3, [r6, #4]
 80004e2:	6063      	str	r3, [r4, #4]
 80004e4:	2302      	movs	r3, #2
 80004e6:	33ff      	adds	r3, #255	@ 0xff
 80004e8:	8023      	strh	r3, [r4, #0]
 80004ea:	3b01      	subs	r3, #1
 80004ec:	3bff      	subs	r3, #255	@ 0xff
 80004ee:	70a3      	strb	r3, [r4, #2]
 80004f0:	2000      	movs	r0, #0
 80004f2:	e787      	b.n	8000404 <vacuum_fan_manager_step+0x3c>
 80004f4:	0000ea5f 	.word	0x0000ea5f

080004f8 <vacuum_output_lock_allows_power>:
 80004f8:	2301      	movs	r3, #1
 80004fa:	4058      	eors	r0, r3
 80004fc:	4770      	bx	lr

080004fe <vacuum_output_lock_allows_duty>:
 80004fe:	4243      	negs	r3, r0
 8000500:	4158      	adcs	r0, r3
 8000502:	b2c0      	uxtb	r0, r0
 8000504:	4770      	bx	lr
	...

08000508 <vacuum_adc_count_to_mv>:
 8000508:	4b0f      	ldr	r3, [pc, #60]	@ (8000548 <vacuum_adc_count_to_mv+0x40>)
 800050a:	b510      	push	{r4, lr}
 800050c:	0014      	movs	r4, r2
 800050e:	4298      	cmp	r0, r3
 8000510:	d901      	bls.n	8000516 <vacuum_adc_count_to_mv+0xe>
 8000512:	2000      	movs	r0, #0
 8000514:	bd10      	pop	{r4, pc}
 8000516:	4b0d      	ldr	r3, [pc, #52]	@ (800054c <vacuum_adc_count_to_mv+0x44>)
 8000518:	4a0d      	ldr	r2, [pc, #52]	@ (8000550 <vacuum_adc_count_to_mv+0x48>)
 800051a:	18cb      	adds	r3, r1, r3
 800051c:	b29b      	uxth	r3, r3
 800051e:	4293      	cmp	r3, r2
 8000520:	d8f7      	bhi.n	8000512 <vacuum_adc_count_to_mv+0xa>
 8000522:	2c00      	cmp	r4, #0
 8000524:	d0f5      	beq.n	8000512 <vacuum_adc_count_to_mv+0xa>
 8000526:	2300      	movs	r3, #0
 8000528:	000a      	movs	r2, r1
 800052a:	0019      	movs	r1, r3
 800052c:	f000 fb8c 	bl	8000c48 <__aeabi_lmul>
 8000530:	2300      	movs	r3, #0
 8000532:	4a08      	ldr	r2, [pc, #32]	@ (8000554 <vacuum_adc_count_to_mv+0x4c>)
 8000534:	1880      	adds	r0, r0, r2
 8000536:	4159      	adcs	r1, r3
 8000538:	2300      	movs	r3, #0
 800053a:	4a03      	ldr	r2, [pc, #12]	@ (8000548 <vacuum_adc_count_to_mv+0x40>)
 800053c:	f000 fb64 	bl	8000c08 <__aeabi_uldivmod>
 8000540:	6020      	str	r0, [r4, #0]
 8000542:	2001      	movs	r0, #1
 8000544:	e7e6      	b.n	8000514 <vacuum_adc_count_to_mv+0xc>
 8000546:	46c0      	nop			@ (mov r8, r8)
 8000548:	00000fff 	.word	0x00000fff
 800054c:	fffffc18 	.word	0xfffffc18
 8000550:	00000a28 	.word	0x00000a28
 8000554:	000007ff 	.word	0x000007ff

08000558 <vacuum_vdda_from_vrefint>:
 8000558:	b5f8      	push	{r3, r4, r5, r6, r7, lr}
 800055a:	0007      	movs	r7, r0
 800055c:	1e16      	subs	r6, r2, #0
 800055e:	d101      	bne.n	8000564 <vacuum_vdda_from_vrefint+0xc>
 8000560:	2000      	movs	r0, #0
 8000562:	bdf8      	pop	{r3, r4, r5, r6, r7, pc}
 8000564:	1e43      	subs	r3, r0, #1
 8000566:	4a12      	ldr	r2, [pc, #72]	@ (80005b0 <vacuum_vdda_from_vrefint+0x58>)
 8000568:	b29b      	uxth	r3, r3
 800056a:	4293      	cmp	r3, r2
 800056c:	d8f8      	bhi.n	8000560 <vacuum_vdda_from_vrefint+0x8>
 800056e:	1e4b      	subs	r3, r1, #1
 8000570:	b29b      	uxth	r3, r3
 8000572:	4293      	cmp	r3, r2
 8000574:	d8f4      	bhi.n	8000560 <vacuum_vdda_from_vrefint+0x8>
 8000576:	2300      	movs	r3, #0
 8000578:	0008      	movs	r0, r1
 800057a:	4a0e      	ldr	r2, [pc, #56]	@ (80005b4 <vacuum_vdda_from_vrefint+0x5c>)
 800057c:	2100      	movs	r1, #0
 800057e:	f000 fb63 	bl	8000c48 <__aeabi_lmul>
 8000582:	2500      	movs	r5, #0
 8000584:	087c      	lsrs	r4, r7, #1
 8000586:	1900      	adds	r0, r0, r4
 8000588:	4169      	adcs	r1, r5
 800058a:	003a      	movs	r2, r7
 800058c:	002b      	movs	r3, r5
 800058e:	f000 fb3b 	bl	8000c08 <__aeabi_uldivmod>
 8000592:	2301      	movs	r3, #1
 8000594:	4a08      	ldr	r2, [pc, #32]	@ (80005b8 <vacuum_vdda_from_vrefint+0x60>)
 8000596:	425b      	negs	r3, r3
 8000598:	1812      	adds	r2, r2, r0
 800059a:	414b      	adcs	r3, r1
 800059c:	0014      	movs	r4, r2
 800059e:	2b00      	cmp	r3, #0
 80005a0:	d1de      	bne.n	8000560 <vacuum_vdda_from_vrefint+0x8>
 80005a2:	23c8      	movs	r3, #200	@ 0xc8
 80005a4:	00db      	lsls	r3, r3, #3
 80005a6:	429c      	cmp	r4, r3
 80005a8:	d8da      	bhi.n	8000560 <vacuum_vdda_from_vrefint+0x8>
 80005aa:	6030      	str	r0, [r6, #0]
 80005ac:	2001      	movs	r0, #1
 80005ae:	e7d8      	b.n	8000562 <vacuum_vdda_from_vrefint+0xa>
 80005b0:	00000ffe 	.word	0x00000ffe
 80005b4:	00000bb8 	.word	0x00000bb8
 80005b8:	fffff830 	.word	0xfffff830

080005bc <vacuum_vbus_count_to_mv>:
 80005bc:	b537      	push	{r0, r1, r2, r4, r5, lr}
 80005be:	0014      	movs	r4, r2
 80005c0:	1e15      	subs	r5, r2, #0
 80005c2:	d013      	beq.n	80005ec <vacuum_vbus_count_to_mv+0x30>
 80005c4:	aa01      	add	r2, sp, #4
 80005c6:	f7ff ff9f 	bl	8000508 <vacuum_adc_count_to_mv>
 80005ca:	1e05      	subs	r5, r0, #0
 80005cc:	d00e      	beq.n	80005ec <vacuum_vbus_count_to_mv+0x30>
 80005ce:	2300      	movs	r3, #0
 80005d0:	4a07      	ldr	r2, [pc, #28]	@ (80005f0 <vacuum_vbus_count_to_mv+0x34>)
 80005d2:	2100      	movs	r1, #0
 80005d4:	9801      	ldr	r0, [sp, #4]
 80005d6:	f000 fb37 	bl	8000c48 <__aeabi_lmul>
 80005da:	2300      	movs	r3, #0
 80005dc:	4a05      	ldr	r2, [pc, #20]	@ (80005f4 <vacuum_vbus_count_to_mv+0x38>)
 80005de:	1880      	adds	r0, r0, r2
 80005e0:	4159      	adcs	r1, r3
 80005e2:	2300      	movs	r3, #0
 80005e4:	4a04      	ldr	r2, [pc, #16]	@ (80005f8 <vacuum_vbus_count_to_mv+0x3c>)
 80005e6:	f000 fb0f 	bl	8000c08 <__aeabi_uldivmod>
 80005ea:	6020      	str	r0, [r4, #0]
 80005ec:	0028      	movs	r0, r5
 80005ee:	bd3e      	pop	{r1, r2, r3, r4, r5, pc}
 80005f0:	0005e3d0 	.word	0x0005e3d0
 80005f4:	00006d60 	.word	0x00006d60
 80005f8:	0000dac0 	.word	0x0000dac0

080005fc <vacuum_current_count_to_ma>:
 80005fc:	b537      	push	{r0, r1, r2, r4, r5, lr}
 80005fe:	0014      	movs	r4, r2
 8000600:	1e15      	subs	r5, r2, #0
 8000602:	d013      	beq.n	800062c <vacuum_current_count_to_ma+0x30>
 8000604:	aa01      	add	r2, sp, #4
 8000606:	f7ff ff7f 	bl	8000508 <vacuum_adc_count_to_mv>
 800060a:	1e05      	subs	r5, r0, #0
 800060c:	d00e      	beq.n	800062c <vacuum_current_count_to_ma+0x30>
 800060e:	2300      	movs	r3, #0
 8000610:	4a07      	ldr	r2, [pc, #28]	@ (8000630 <vacuum_current_count_to_ma+0x34>)
 8000612:	2100      	movs	r1, #0
 8000614:	9801      	ldr	r0, [sp, #4]
 8000616:	f000 fb17 	bl	8000c48 <__aeabi_lmul>
 800061a:	2300      	movs	r3, #0
 800061c:	4a05      	ldr	r2, [pc, #20]	@ (8000634 <vacuum_current_count_to_ma+0x38>)
 800061e:	1880      	adds	r0, r0, r2
 8000620:	4159      	adcs	r1, r3
 8000622:	2300      	movs	r3, #0
 8000624:	4a04      	ldr	r2, [pc, #16]	@ (8000638 <vacuum_current_count_to_ma+0x3c>)
 8000626:	f000 faef 	bl	8000c08 <__aeabi_uldivmod>
 800062a:	6020      	str	r0, [r4, #0]
 800062c:	0028      	movs	r0, r5
 800062e:	bd3e      	pop	{r1, r2, r3, r4, r5, pc}
 8000630:	000f4240 	.word	0x000f4240
 8000634:	000186a0 	.word	0x000186a0
 8000638:	00030d40 	.word	0x00030d40

0800063c <vacuum_timer_autoreload>:
 800063c:	b5f8      	push	{r3, r4, r5, r6, r7, lr}
 800063e:	000d      	movs	r5, r1
 8000640:	1e14      	subs	r4, r2, #0
 8000642:	d101      	bne.n	8000648 <vacuum_timer_autoreload+0xc>
 8000644:	2000      	movs	r0, #0
 8000646:	bdf8      	pop	{r3, r4, r5, r6, r7, pc}
 8000648:	2800      	cmp	r0, #0
 800064a:	d0fb      	beq.n	8000644 <vacuum_timer_autoreload+0x8>
 800064c:	2900      	cmp	r1, #0
 800064e:	d0f9      	beq.n	8000644 <vacuum_timer_autoreload+0x8>
 8000650:	4288      	cmp	r0, r1
 8000652:	d3f7      	bcc.n	8000644 <vacuum_timer_autoreload+0x8>
 8000654:	2700      	movs	r7, #0
 8000656:	0002      	movs	r2, r0
 8000658:	003b      	movs	r3, r7
 800065a:	084e      	lsrs	r6, r1, #1
 800065c:	1992      	adds	r2, r2, r6
 800065e:	417b      	adcs	r3, r7
 8000660:	0010      	movs	r0, r2
 8000662:	0019      	movs	r1, r3
 8000664:	002a      	movs	r2, r5
 8000666:	003b      	movs	r3, r7
 8000668:	f000 face 	bl	8000c08 <__aeabi_uldivmod>
 800066c:	2202      	movs	r2, #2
 800066e:	4252      	negs	r2, r2
 8000670:	17d3      	asrs	r3, r2, #31
 8000672:	1812      	adds	r2, r2, r0
 8000674:	414b      	adcs	r3, r1
 8000676:	0015      	movs	r5, r2
 8000678:	42bb      	cmp	r3, r7
 800067a:	d1e3      	bne.n	8000644 <vacuum_timer_autoreload+0x8>
 800067c:	4b03      	ldr	r3, [pc, #12]	@ (800068c <vacuum_timer_autoreload+0x50>)
 800067e:	429d      	cmp	r5, r3
 8000680:	d8e0      	bhi.n	8000644 <vacuum_timer_autoreload+0x8>
 8000682:	3801      	subs	r0, #1
 8000684:	8020      	strh	r0, [r4, #0]
 8000686:	2001      	movs	r0, #1
 8000688:	e7dd      	b.n	8000646 <vacuum_timer_autoreload+0xa>
 800068a:	46c0      	nop			@ (mov r8, r8)
 800068c:	0000fffe 	.word	0x0000fffe

08000690 <read_adc>:
 8000690:	4b16      	ldr	r3, [pc, #88]	@ (80006ec <read_adc+0x5c>)
 8000692:	b530      	push	{r4, r5, lr}
 8000694:	0005      	movs	r5, r0
 8000696:	7818      	ldrb	r0, [r3, #0]
 8000698:	2800      	cmp	r0, #0
 800069a:	d01a      	beq.n	80006d2 <read_adc+0x42>
 800069c:	2404      	movs	r4, #4
 800069e:	4b14      	ldr	r3, [pc, #80]	@ (80006f0 <read_adc+0x60>)
 80006a0:	689a      	ldr	r2, [r3, #8]
 80006a2:	4222      	tst	r2, r4
 80006a4:	d114      	bne.n	80006d0 <read_adc+0x40>
 80006a6:	221c      	movs	r2, #28
 80006a8:	601a      	str	r2, [r3, #0]
 80006aa:	3a1b      	subs	r2, #27
 80006ac:	40aa      	lsls	r2, r5
 80006ae:	629a      	str	r2, [r3, #40]	@ 0x28
 80006b0:	689a      	ldr	r2, [r3, #8]
 80006b2:	4322      	orrs	r2, r4
 80006b4:	609a      	str	r2, [r3, #8]
 80006b6:	4a0f      	ldr	r2, [pc, #60]	@ (80006f4 <read_adc+0x64>)
 80006b8:	681d      	ldr	r5, [r3, #0]
 80006ba:	4225      	tst	r5, r4
 80006bc:	d10c      	bne.n	80006d8 <read_adc+0x48>
 80006be:	2a00      	cmp	r2, #0
 80006c0:	d108      	bne.n	80006d4 <read_adc+0x44>
 80006c2:	689a      	ldr	r2, [r3, #8]
 80006c4:	0752      	lsls	r2, r2, #29
 80006c6:	d503      	bpl.n	80006d0 <read_adc+0x40>
 80006c8:	2210      	movs	r2, #16
 80006ca:	6899      	ldr	r1, [r3, #8]
 80006cc:	430a      	orrs	r2, r1
 80006ce:	609a      	str	r2, [r3, #8]
 80006d0:	2000      	movs	r0, #0
 80006d2:	bd30      	pop	{r4, r5, pc}
 80006d4:	3a01      	subs	r2, #1
 80006d6:	e7ef      	b.n	80006b8 <read_adc+0x28>
 80006d8:	2a00      	cmp	r2, #0
 80006da:	d0f2      	beq.n	80006c2 <read_adc+0x32>
 80006dc:	681a      	ldr	r2, [r3, #0]
 80006de:	06d2      	lsls	r2, r2, #27
 80006e0:	d4ef      	bmi.n	80006c2 <read_adc+0x32>
 80006e2:	6c1b      	ldr	r3, [r3, #64]	@ 0x40
 80006e4:	051b      	lsls	r3, r3, #20
 80006e6:	0d1b      	lsrs	r3, r3, #20
 80006e8:	800b      	strh	r3, [r1, #0]
 80006ea:	e7f2      	b.n	80006d2 <read_adc+0x42>
 80006ec:	20000014 	.word	0x20000014
 80006f0:	40012400 	.word	0x40012400
 80006f4:	000186a0 	.word	0x000186a0

080006f8 <force_power_pad_low>:
 80006f8:	2201      	movs	r2, #1
 80006fa:	4b20      	ldr	r3, [pc, #128]	@ (800077c <force_power_pad_low+0x84>)
 80006fc:	6b59      	ldr	r1, [r3, #52]	@ 0x34
 80006fe:	4311      	orrs	r1, r2
 8000700:	6359      	str	r1, [r3, #52]	@ 0x34
 8000702:	6c19      	ldr	r1, [r3, #64]	@ 0x40
 8000704:	430a      	orrs	r2, r1
 8000706:	641a      	str	r2, [r3, #64]	@ 0x40
 8000708:	6b5a      	ldr	r2, [r3, #52]	@ 0x34
 800070a:	6c1b      	ldr	r3, [r3, #64]	@ 0x40
 800070c:	2280      	movs	r2, #128	@ 0x80
 800070e:	23a0      	movs	r3, #160	@ 0xa0
 8000710:	04d2      	lsls	r2, r2, #19
 8000712:	05db      	lsls	r3, r3, #23
 8000714:	619a      	str	r2, [r3, #24]
 8000716:	685a      	ldr	r2, [r3, #4]
 8000718:	4919      	ldr	r1, [pc, #100]	@ (8000780 <force_power_pad_low+0x88>)
 800071a:	400a      	ands	r2, r1
 800071c:	605a      	str	r2, [r3, #4]
 800071e:	6899      	ldr	r1, [r3, #8]
 8000720:	4a18      	ldr	r2, [pc, #96]	@ (8000784 <force_power_pad_low+0x8c>)
 8000722:	4011      	ands	r1, r2
 8000724:	6099      	str	r1, [r3, #8]
 8000726:	2180      	movs	r1, #128	@ 0x80
 8000728:	68d8      	ldr	r0, [r3, #12]
 800072a:	0389      	lsls	r1, r1, #14
 800072c:	4010      	ands	r0, r2
 800072e:	4301      	orrs	r1, r0
 8000730:	60d9      	str	r1, [r3, #12]
 8000732:	6819      	ldr	r1, [r3, #0]
 8000734:	4011      	ands	r1, r2
 8000736:	2280      	movs	r2, #128	@ 0x80
 8000738:	0352      	lsls	r2, r2, #13
 800073a:	430a      	orrs	r2, r1
 800073c:	601a      	str	r2, [r3, #0]
 800073e:	2280      	movs	r2, #128	@ 0x80
 8000740:	0552      	lsls	r2, r2, #21
 8000742:	619a      	str	r2, [r3, #24]
 8000744:	685a      	ldr	r2, [r3, #4]
 8000746:	4910      	ldr	r1, [pc, #64]	@ (8000788 <force_power_pad_low+0x90>)
 8000748:	400a      	ands	r2, r1
 800074a:	605a      	str	r2, [r3, #4]
 800074c:	6899      	ldr	r1, [r3, #8]
 800074e:	4a0f      	ldr	r2, [pc, #60]	@ (800078c <force_power_pad_low+0x94>)
 8000750:	4011      	ands	r1, r2
 8000752:	6099      	str	r1, [r3, #8]
 8000754:	2180      	movs	r1, #128	@ 0x80
 8000756:	68d8      	ldr	r0, [r3, #12]
 8000758:	0489      	lsls	r1, r1, #18
 800075a:	4010      	ands	r0, r2
 800075c:	4301      	orrs	r1, r0
 800075e:	60d9      	str	r1, [r3, #12]
 8000760:	6819      	ldr	r1, [r3, #0]
 8000762:	4011      	ands	r1, r2
 8000764:	2280      	movs	r2, #128	@ 0x80
 8000766:	0452      	lsls	r2, r2, #17
 8000768:	430a      	orrs	r2, r1
 800076a:	2110      	movs	r1, #16
 800076c:	601a      	str	r2, [r3, #0]
 800076e:	4a08      	ldr	r2, [pc, #32]	@ (8000790 <force_power_pad_low+0x98>)
 8000770:	6813      	ldr	r3, [r2, #0]
 8000772:	438b      	bics	r3, r1
 8000774:	6013      	str	r3, [r2, #0]
 8000776:	f3bf 8f4f 	dsb	sy
 800077a:	4770      	bx	lr
 800077c:	40021000 	.word	0x40021000
 8000780:	fffffbff 	.word	0xfffffbff
 8000784:	ffcfffff 	.word	0xffcfffff
 8000788:	ffffefff 	.word	0xffffefff
 800078c:	fcffffff 	.word	0xfcffffff
 8000790:	40010000 	.word	0x40010000

08000794 <vacuum_board_force_off>:
 8000794:	b510      	push	{r4, lr}
 8000796:	f7ff ffaf 	bl	80006f8 <force_power_pad_low>
 800079a:	23a0      	movs	r3, #160	@ 0xa0
 800079c:	2288      	movs	r2, #136	@ 0x88
 800079e:	05db      	lsls	r3, r3, #23
 80007a0:	0552      	lsls	r2, r2, #21
 80007a2:	619a      	str	r2, [r3, #24]
 80007a4:	f3bf 8f4f 	dsb	sy
 80007a8:	4805      	ldr	r0, [pc, #20]	@ (80007c0 <vacuum_board_force_off+0x2c>)
 80007aa:	681a      	ldr	r2, [r3, #0]
 80007ac:	4002      	ands	r2, r0
 80007ae:	601a      	str	r2, [r3, #0]
 80007b0:	2280      	movs	r2, #128	@ 0x80
 80007b2:	68d9      	ldr	r1, [r3, #12]
 80007b4:	0292      	lsls	r2, r2, #10
 80007b6:	4001      	ands	r1, r0
 80007b8:	430a      	orrs	r2, r1
 80007ba:	60da      	str	r2, [r3, #12]
 80007bc:	bd10      	pop	{r4, pc}
 80007be:	46c0      	nop			@ (mov r8, r8)
 80007c0:	fffcffff 	.word	0xfffcffff

080007c4 <vacuum_board_force_fan_disabled>:
 80007c4:	b510      	push	{r4, lr}
 80007c6:	f7ff ff97 	bl	80006f8 <force_power_pad_low>
 80007ca:	4b05      	ldr	r3, [pc, #20]	@ (80007e0 <vacuum_board_force_fan_disabled+0x1c>)
 80007cc:	6c1b      	ldr	r3, [r3, #64]	@ 0x40
 80007ce:	051b      	lsls	r3, r3, #20
 80007d0:	d502      	bpl.n	80007d8 <vacuum_board_force_fan_disabled+0x14>
 80007d2:	2200      	movs	r2, #0
 80007d4:	4b03      	ldr	r3, [pc, #12]	@ (80007e4 <vacuum_board_force_fan_disabled+0x20>)
 80007d6:	635a      	str	r2, [r3, #52]	@ 0x34
 80007d8:	f3bf 8f4f 	dsb	sy
 80007dc:	bd10      	pop	{r4, pc}
 80007de:	46c0      	nop			@ (mov r8, r8)
 80007e0:	40021000 	.word	0x40021000
 80007e4:	40012c00 	.word	0x40012c00

080007e8 <vacuum_board_set_fan_power>:
 80007e8:	b510      	push	{r4, lr}
 80007ea:	0008      	movs	r0, r1
 80007ec:	f7ff fe84 	bl	80004f8 <vacuum_output_lock_allows_power>
 80007f0:	2800      	cmp	r0, #0
 80007f2:	d104      	bne.n	80007fe <vacuum_board_set_fan_power+0x16>
 80007f4:	f7ff ffe6 	bl	80007c4 <vacuum_board_force_fan_disabled>
 80007f8:	2001      	movs	r0, #1
 80007fa:	4240      	negs	r0, r0
 80007fc:	bd10      	pop	{r4, pc}
 80007fe:	f7ff ffe1 	bl	80007c4 <vacuum_board_force_fan_disabled>
 8000802:	2000      	movs	r0, #0
 8000804:	e7fa      	b.n	80007fc <vacuum_board_set_fan_power+0x14>

08000806 <vacuum_board_set_fan_duty>:
 8000806:	b510      	push	{r4, lr}
 8000808:	0008      	movs	r0, r1
 800080a:	f7ff fe78 	bl	80004fe <vacuum_output_lock_allows_duty>
 800080e:	2800      	cmp	r0, #0
 8000810:	d104      	bne.n	800081c <vacuum_board_set_fan_duty+0x16>
 8000812:	f7ff ffd7 	bl	80007c4 <vacuum_board_force_fan_disabled>
 8000816:	2001      	movs	r0, #1
 8000818:	4240      	negs	r0, r0
 800081a:	bd10      	pop	{r4, pc}
 800081c:	4b05      	ldr	r3, [pc, #20]	@ (8000834 <vacuum_board_set_fan_duty+0x2e>)
 800081e:	6c1b      	ldr	r3, [r3, #64]	@ 0x40
 8000820:	051b      	lsls	r3, r3, #20
 8000822:	d502      	bpl.n	800082a <vacuum_board_set_fan_duty+0x24>
 8000824:	2200      	movs	r2, #0
 8000826:	4b04      	ldr	r3, [pc, #16]	@ (8000838 <vacuum_board_set_fan_duty+0x32>)
 8000828:	635a      	str	r2, [r3, #52]	@ 0x34
 800082a:	f7ff ffcb 	bl	80007c4 <vacuum_board_force_fan_disabled>
 800082e:	2000      	movs	r0, #0
 8000830:	e7f3      	b.n	800081a <vacuum_board_set_fan_duty+0x14>
 8000832:	46c0      	nop			@ (mov r8, r8)
 8000834:	40021000 	.word	0x40021000
 8000838:	40012c00 	.word	0x40012c00

0800083c <vacuum_board_init>:
 800083c:	b5f0      	push	{r4, r5, r6, r7, lr}
 800083e:	2600      	movs	r6, #0
 8000840:	24a0      	movs	r4, #160	@ 0xa0
 8000842:	4b6a      	ldr	r3, [pc, #424]	@ (80009ec <vacuum_board_init+0x1b0>)
 8000844:	b085      	sub	sp, #20
 8000846:	701e      	strb	r6, [r3, #0]
 8000848:	605e      	str	r6, [r3, #4]
 800084a:	609e      	str	r6, [r3, #8]
 800084c:	f7ff ffa2 	bl	8000794 <vacuum_board_force_off>
 8000850:	2203      	movs	r2, #3
 8000852:	05e4      	lsls	r4, r4, #23
 8000854:	6823      	ldr	r3, [r4, #0]
 8000856:	2101      	movs	r1, #1
 8000858:	4313      	orrs	r3, r2
 800085a:	6023      	str	r3, [r4, #0]
 800085c:	68e3      	ldr	r3, [r4, #12]
 800085e:	2702      	movs	r7, #2
 8000860:	4393      	bics	r3, r2
 8000862:	60e3      	str	r3, [r4, #12]
 8000864:	6823      	ldr	r3, [r4, #0]
 8000866:	32bd      	adds	r2, #189	@ 0xbd
 8000868:	4313      	orrs	r3, r2
 800086a:	6023      	str	r3, [r4, #0]
 800086c:	68e3      	ldr	r3, [r4, #12]
 800086e:	4d60      	ldr	r5, [pc, #384]	@ (80009f0 <vacuum_board_init+0x1b4>)
 8000870:	4393      	bics	r3, r2
 8000872:	60e3      	str	r3, [r4, #12]
 8000874:	23c0      	movs	r3, #192	@ 0xc0
 8000876:	6822      	ldr	r2, [r4, #0]
 8000878:	009b      	lsls	r3, r3, #2
 800087a:	4313      	orrs	r3, r2
 800087c:	6023      	str	r3, [r4, #0]
 800087e:	68e3      	ldr	r3, [r4, #12]
 8000880:	4a5c      	ldr	r2, [pc, #368]	@ (80009f4 <vacuum_board_init+0x1b8>)
 8000882:	4013      	ands	r3, r2
 8000884:	2230      	movs	r2, #48	@ 0x30
 8000886:	60e3      	str	r3, [r4, #12]
 8000888:	6823      	ldr	r3, [r4, #0]
 800088a:	4393      	bics	r3, r2
 800088c:	6023      	str	r3, [r4, #0]
 800088e:	68e3      	ldr	r3, [r4, #12]
 8000890:	4393      	bics	r3, r2
 8000892:	60e3      	str	r3, [r4, #12]
 8000894:	6c2b      	ldr	r3, [r5, #64]	@ 0x40
 8000896:	3a24      	subs	r2, #36	@ 0x24
 8000898:	430b      	orrs	r3, r1
 800089a:	642b      	str	r3, [r5, #64]	@ 0x40
 800089c:	6c2b      	ldr	r3, [r5, #64]	@ 0x40
 800089e:	6823      	ldr	r3, [r4, #0]
 80008a0:	31ef      	adds	r1, #239	@ 0xef
 80008a2:	4393      	bics	r3, r2
 80008a4:	6023      	str	r3, [r4, #0]
 80008a6:	68e3      	ldr	r3, [r4, #12]
 80008a8:	4393      	bics	r3, r2
 80008aa:	60e3      	str	r3, [r4, #12]
 80008ac:	4b52      	ldr	r3, [pc, #328]	@ (80009f8 <vacuum_board_init+0x1bc>)
 80008ae:	6e1a      	ldr	r2, [r3, #96]	@ 0x60
 80008b0:	438a      	bics	r2, r1
 80008b2:	661a      	str	r2, [r3, #96]	@ 0x60
 80008b4:	681a      	ldr	r2, [r3, #0]
 80008b6:	3190      	adds	r1, #144	@ 0x90
 80008b8:	433a      	orrs	r2, r7
 80008ba:	601a      	str	r2, [r3, #0]
 80008bc:	685a      	ldr	r2, [r3, #4]
 80008be:	43ba      	bics	r2, r7
 80008c0:	605a      	str	r2, [r3, #4]
 80008c2:	4a4e      	ldr	r2, [pc, #312]	@ (80009fc <vacuum_board_init+0x1c0>)
 80008c4:	60df      	str	r7, [r3, #12]
 80008c6:	6fd3      	ldr	r3, [r2, #124]	@ 0x7c
 80008c8:	433b      	orrs	r3, r7
 80008ca:	67d3      	str	r3, [r2, #124]	@ 0x7c
 80008cc:	2220      	movs	r2, #32
 80008ce:	4b4c      	ldr	r3, [pc, #304]	@ (8000a00 <vacuum_board_init+0x1c4>)
 80008d0:	505a      	str	r2, [r3, r1]
 80008d2:	601a      	str	r2, [r3, #0]
 80008d4:	4b4b      	ldr	r3, [pc, #300]	@ (8000a04 <vacuum_board_init+0x1c8>)
 80008d6:	494c      	ldr	r1, [pc, #304]	@ (8000a08 <vacuum_board_init+0x1cc>)
 80008d8:	6818      	ldr	r0, [r3, #0]
 80008da:	aa03      	add	r2, sp, #12
 80008dc:	f7ff feae 	bl	800063c <vacuum_timer_autoreload>
 80008e0:	9001      	str	r0, [sp, #4]
 80008e2:	42b0      	cmp	r0, r6
 80008e4:	d053      	beq.n	800098e <vacuum_board_init+0x152>
 80008e6:	2380      	movs	r3, #128	@ 0x80
 80008e8:	2180      	movs	r1, #128	@ 0x80
 80008ea:	200f      	movs	r0, #15
 80008ec:	045b      	lsls	r3, r3, #17
 80008ee:	61a3      	str	r3, [r4, #24]
 80008f0:	6863      	ldr	r3, [r4, #4]
 80008f2:	4a46      	ldr	r2, [pc, #280]	@ (8000a0c <vacuum_board_init+0x1d0>)
 80008f4:	0289      	lsls	r1, r1, #10
 80008f6:	4013      	ands	r3, r2
 80008f8:	6063      	str	r3, [r4, #4]
 80008fa:	68a3      	ldr	r3, [r4, #8]
 80008fc:	4a44      	ldr	r2, [pc, #272]	@ (8000a10 <vacuum_board_init+0x1d4>)
 80008fe:	4013      	ands	r3, r2
 8000900:	60a3      	str	r3, [r4, #8]
 8000902:	68e3      	ldr	r3, [r4, #12]
 8000904:	4013      	ands	r3, r2
 8000906:	430b      	orrs	r3, r1
 8000908:	60e3      	str	r3, [r4, #12]
 800090a:	6a63      	ldr	r3, [r4, #36]	@ 0x24
 800090c:	4383      	bics	r3, r0
 800090e:	431f      	orrs	r7, r3
 8000910:	6267      	str	r7, [r4, #36]	@ 0x24
 8000912:	6823      	ldr	r3, [r4, #0]
 8000914:	4013      	ands	r3, r2
 8000916:	4319      	orrs	r1, r3
 8000918:	2380      	movs	r3, #128	@ 0x80
 800091a:	6021      	str	r1, [r4, #0]
 800091c:	6c2a      	ldr	r2, [r5, #64]	@ 0x40
 800091e:	011b      	lsls	r3, r3, #4
 8000920:	4313      	orrs	r3, r2
 8000922:	642b      	str	r3, [r5, #64]	@ 0x40
 8000924:	aa02      	add	r2, sp, #8
 8000926:	6c2b      	ldr	r3, [r5, #64]	@ 0x40
 8000928:	8892      	ldrh	r2, [r2, #4]
 800092a:	4b3a      	ldr	r3, [pc, #232]	@ (8000a14 <vacuum_board_init+0x1d8>)
 800092c:	2101      	movs	r1, #1
 800092e:	601e      	str	r6, [r3, #0]
 8000930:	629e      	str	r6, [r3, #40]	@ 0x28
 8000932:	62da      	str	r2, [r3, #44]	@ 0x2c
 8000934:	2268      	movs	r2, #104	@ 0x68
 8000936:	635e      	str	r6, [r3, #52]	@ 0x34
 8000938:	619a      	str	r2, [r3, #24]
 800093a:	2280      	movs	r2, #128	@ 0x80
 800093c:	0212      	lsls	r2, r2, #8
 800093e:	6219      	str	r1, [r3, #32]
 8000940:	645a      	str	r2, [r3, #68]	@ 0x44
 8000942:	2281      	movs	r2, #129	@ 0x81
 8000944:	6159      	str	r1, [r3, #20]
 8000946:	601a      	str	r2, [r3, #0]
 8000948:	2380      	movs	r3, #128	@ 0x80
 800094a:	2180      	movs	r1, #128	@ 0x80
 800094c:	6c2a      	ldr	r2, [r5, #64]	@ 0x40
 800094e:	035b      	lsls	r3, r3, #13
 8000950:	4313      	orrs	r3, r2
 8000952:	642b      	str	r3, [r5, #64]	@ 0x40
 8000954:	6c2b      	ldr	r3, [r5, #64]	@ 0x40
 8000956:	4b30      	ldr	r3, [pc, #192]	@ (8000a18 <vacuum_board_init+0x1dc>)
 8000958:	05c9      	lsls	r1, r1, #23
 800095a:	691a      	ldr	r2, [r3, #16]
 800095c:	0092      	lsls	r2, r2, #2
 800095e:	0892      	lsrs	r2, r2, #2
 8000960:	430a      	orrs	r2, r1
 8000962:	611a      	str	r2, [r3, #16]
 8000964:	2280      	movs	r2, #128	@ 0x80
 8000966:	6899      	ldr	r1, [r3, #8]
 8000968:	0552      	lsls	r2, r2, #21
 800096a:	430a      	orrs	r2, r1
 800096c:	492b      	ldr	r1, [pc, #172]	@ (8000a1c <vacuum_board_init+0x1e0>)
 800096e:	609a      	str	r2, [r3, #8]
 8000970:	9603      	str	r6, [sp, #12]
 8000972:	9a03      	ldr	r2, [sp, #12]
 8000974:	428a      	cmp	r2, r1
 8000976:	d90f      	bls.n	8000998 <vacuum_board_init+0x15c>
 8000978:	2280      	movs	r2, #128	@ 0x80
 800097a:	6899      	ldr	r1, [r3, #8]
 800097c:	0612      	lsls	r2, r2, #24
 800097e:	430a      	orrs	r2, r1
 8000980:	609a      	str	r2, [r3, #8]
 8000982:	4a27      	ldr	r2, [pc, #156]	@ (8000a20 <vacuum_board_init+0x1e4>)
 8000984:	6899      	ldr	r1, [r3, #8]
 8000986:	2900      	cmp	r1, #0
 8000988:	da0d      	bge.n	80009a6 <vacuum_board_init+0x16a>
 800098a:	2a00      	cmp	r2, #0
 800098c:	d109      	bne.n	80009a2 <vacuum_board_init+0x166>
 800098e:	f7ff ff01 	bl	8000794 <vacuum_board_force_off>
 8000992:	2300      	movs	r3, #0
 8000994:	9301      	str	r3, [sp, #4]
 8000996:	e026      	b.n	80009e6 <vacuum_board_init+0x1aa>
 8000998:	46c0      	nop			@ (mov r8, r8)
 800099a:	9a03      	ldr	r2, [sp, #12]
 800099c:	3201      	adds	r2, #1
 800099e:	9203      	str	r2, [sp, #12]
 80009a0:	e7e7      	b.n	8000972 <vacuum_board_init+0x136>
 80009a2:	3a01      	subs	r2, #1
 80009a4:	e7ee      	b.n	8000984 <vacuum_board_init+0x148>
 80009a6:	2a00      	cmp	r2, #0
 80009a8:	d0f1      	beq.n	800098e <vacuum_board_init+0x152>
 80009aa:	2200      	movs	r2, #0
 80009ac:	60da      	str	r2, [r3, #12]
 80009ae:	3207      	adds	r2, #7
 80009b0:	615a      	str	r2, [r3, #20]
 80009b2:	2280      	movs	r2, #128	@ 0x80
 80009b4:	491b      	ldr	r1, [pc, #108]	@ (8000a24 <vacuum_board_init+0x1e8>)
 80009b6:	03d2      	lsls	r2, r2, #15
 80009b8:	6808      	ldr	r0, [r1, #0]
 80009ba:	4302      	orrs	r2, r0
 80009bc:	600a      	str	r2, [r1, #0]
 80009be:	221d      	movs	r2, #29
 80009c0:	2101      	movs	r1, #1
 80009c2:	601a      	str	r2, [r3, #0]
 80009c4:	689a      	ldr	r2, [r3, #8]
 80009c6:	430a      	orrs	r2, r1
 80009c8:	609a      	str	r2, [r3, #8]
 80009ca:	4a15      	ldr	r2, [pc, #84]	@ (8000a20 <vacuum_board_init+0x1e4>)
 80009cc:	6818      	ldr	r0, [r3, #0]
 80009ce:	4208      	tst	r0, r1
 80009d0:	d103      	bne.n	80009da <vacuum_board_init+0x19e>
 80009d2:	2a00      	cmp	r2, #0
 80009d4:	d0db      	beq.n	800098e <vacuum_board_init+0x152>
 80009d6:	3a01      	subs	r2, #1
 80009d8:	e7f8      	b.n	80009cc <vacuum_board_init+0x190>
 80009da:	2a00      	cmp	r2, #0
 80009dc:	d0d7      	beq.n	800098e <vacuum_board_init+0x152>
 80009de:	4b03      	ldr	r3, [pc, #12]	@ (80009ec <vacuum_board_init+0x1b0>)
 80009e0:	7019      	strb	r1, [r3, #0]
 80009e2:	f7ff feef 	bl	80007c4 <vacuum_board_force_fan_disabled>
 80009e6:	9801      	ldr	r0, [sp, #4]
 80009e8:	b005      	add	sp, #20
 80009ea:	bdf0      	pop	{r4, r5, r6, r7, pc}
 80009ec:	20000014 	.word	0x20000014
 80009f0:	40021000 	.word	0x40021000
 80009f4:	fffffcff 	.word	0xfffffcff
 80009f8:	40021800 	.word	0x40021800
 80009fc:	40021804 	.word	0x40021804
 8000a00:	e000e100 	.word	0xe000e100
 8000a04:	20000000 	.word	0x20000000
 8000a08:	000061a8 	.word	0x000061a8
 8000a0c:	fffffeff 	.word	0xfffffeff
 8000a10:	fffcffff 	.word	0xfffcffff
 8000a14:	40012c00 	.word	0x40012c00
 8000a18:	40012400 	.word	0x40012400
 8000a1c:	000004af 	.word	0x000004af
 8000a20:	000186a0 	.word	0x000186a0
 8000a24:	40012708 	.word	0x40012708

08000a28 <vacuum_board_note_tach_edge>:
 8000a28:	4a02      	ldr	r2, [pc, #8]	@ (8000a34 <vacuum_board_note_tach_edge+0xc>)
 8000a2a:	6853      	ldr	r3, [r2, #4]
 8000a2c:	3301      	adds	r3, #1
 8000a2e:	6053      	str	r3, [r2, #4]
 8000a30:	4770      	bx	lr
 8000a32:	46c0      	nop			@ (mov r8, r8)
 8000a34:	20000014 	.word	0x20000014

08000a38 <vacuum_board_sample>:
 8000a38:	4b24      	ldr	r3, [pc, #144]	@ (8000acc <vacuum_board_sample+0x94>)
 8000a3a:	b570      	push	{r4, r5, r6, lr}
 8000a3c:	0004      	movs	r4, r0
 8000a3e:	000d      	movs	r5, r1
 8000a40:	881e      	ldrh	r6, [r3, #0]
 8000a42:	2800      	cmp	r0, #0
 8000a44:	d041      	beq.n	8000aca <vacuum_board_sample+0x92>
 8000a46:	0001      	movs	r1, r0
 8000a48:	2000      	movs	r0, #0
 8000a4a:	f7ff fe21 	bl	8000690 <read_adc>
 8000a4e:	2800      	cmp	r0, #0
 8000a50:	d03b      	beq.n	8000aca <vacuum_board_sample+0x92>
 8000a52:	2003      	movs	r0, #3
 8000a54:	1ca1      	adds	r1, r4, #2
 8000a56:	f7ff fe1b 	bl	8000690 <read_adc>
 8000a5a:	2800      	cmp	r0, #0
 8000a5c:	d035      	beq.n	8000aca <vacuum_board_sample+0x92>
 8000a5e:	2004      	movs	r0, #4
 8000a60:	1d21      	adds	r1, r4, #4
 8000a62:	f7ff fe15 	bl	8000690 <read_adc>
 8000a66:	2800      	cmp	r0, #0
 8000a68:	d02f      	beq.n	8000aca <vacuum_board_sample+0x92>
 8000a6a:	200d      	movs	r0, #13
 8000a6c:	1da1      	adds	r1, r4, #6
 8000a6e:	f7ff fe0f 	bl	8000690 <read_adc>
 8000a72:	2800      	cmp	r0, #0
 8000a74:	d029      	beq.n	8000aca <vacuum_board_sample+0x92>
 8000a76:	0022      	movs	r2, r4
 8000a78:	0031      	movs	r1, r6
 8000a7a:	88e0      	ldrh	r0, [r4, #6]
 8000a7c:	3208      	adds	r2, #8
 8000a7e:	f7ff fd6b 	bl	8000558 <vacuum_vdda_from_vrefint>
 8000a82:	2800      	cmp	r0, #0
 8000a84:	d021      	beq.n	8000aca <vacuum_board_sample+0x92>
 8000a86:	0022      	movs	r2, r4
 8000a88:	8921      	ldrh	r1, [r4, #8]
 8000a8a:	8860      	ldrh	r0, [r4, #2]
 8000a8c:	b289      	uxth	r1, r1
 8000a8e:	320c      	adds	r2, #12
 8000a90:	f7ff fd94 	bl	80005bc <vacuum_vbus_count_to_mv>
 8000a94:	2800      	cmp	r0, #0
 8000a96:	d018      	beq.n	8000aca <vacuum_board_sample+0x92>
 8000a98:	0022      	movs	r2, r4
 8000a9a:	8921      	ldrh	r1, [r4, #8]
 8000a9c:	88a0      	ldrh	r0, [r4, #4]
 8000a9e:	b289      	uxth	r1, r1
 8000aa0:	3210      	adds	r2, #16
 8000aa2:	f7ff fdab 	bl	80005fc <vacuum_current_count_to_ma>
 8000aa6:	2800      	cmp	r0, #0
 8000aa8:	d00f      	beq.n	8000aca <vacuum_board_sample+0x92>
 8000aaa:	23a0      	movs	r3, #160	@ 0xa0
 8000aac:	2101      	movs	r1, #1
 8000aae:	05db      	lsls	r3, r3, #23
 8000ab0:	691b      	ldr	r3, [r3, #16]
 8000ab2:	61a5      	str	r5, [r4, #24]
 8000ab4:	075b      	lsls	r3, r3, #29
 8000ab6:	0fdb      	lsrs	r3, r3, #31
 8000ab8:	404b      	eors	r3, r1
 8000aba:	7723      	strb	r3, [r4, #28]
 8000abc:	4b04      	ldr	r3, [pc, #16]	@ (8000ad0 <vacuum_board_sample+0x98>)
 8000abe:	7761      	strb	r1, [r4, #29]
 8000ac0:	685e      	ldr	r6, [r3, #4]
 8000ac2:	689a      	ldr	r2, [r3, #8]
 8000ac4:	609e      	str	r6, [r3, #8]
 8000ac6:	1ab2      	subs	r2, r6, r2
 8000ac8:	6162      	str	r2, [r4, #20]
 8000aca:	bd70      	pop	{r4, r5, r6, pc}
 8000acc:	1fff75aa 	.word	0x1fff75aa
 8000ad0:	20000014 	.word	0x20000014

08000ad4 <vacuum_board_publish_diagnostics>:
 8000ad4:	b510      	push	{r4, lr}
 8000ad6:	2800      	cmp	r0, #0
 8000ad8:	d006      	beq.n	8000ae8 <vacuum_board_publish_diagnostics+0x14>
 8000ada:	4b04      	ldr	r3, [pc, #16]	@ (8000aec <vacuum_board_publish_diagnostics+0x18>)
 8000adc:	c816      	ldmia	r0!, {r1, r2, r4}
 8000ade:	c316      	stmia	r3!, {r1, r2, r4}
 8000ae0:	c816      	ldmia	r0!, {r1, r2, r4}
 8000ae2:	c316      	stmia	r3!, {r1, r2, r4}
 8000ae4:	c816      	ldmia	r0!, {r1, r2, r4}
 8000ae6:	c316      	stmia	r3!, {r1, r2, r4}
 8000ae8:	bd10      	pop	{r4, pc}
 8000aea:	46c0      	nop			@ (mov r8, r8)
 8000aec:	20000020 	.word	0x20000020

08000af0 <__udivsi3>:
 8000af0:	2200      	movs	r2, #0
 8000af2:	0843      	lsrs	r3, r0, #1
 8000af4:	428b      	cmp	r3, r1
 8000af6:	d374      	bcc.n	8000be2 <__udivsi3+0xf2>
 8000af8:	0903      	lsrs	r3, r0, #4
 8000afa:	428b      	cmp	r3, r1
 8000afc:	d35f      	bcc.n	8000bbe <__udivsi3+0xce>
 8000afe:	0a03      	lsrs	r3, r0, #8
 8000b00:	428b      	cmp	r3, r1
 8000b02:	d344      	bcc.n	8000b8e <__udivsi3+0x9e>
 8000b04:	0b03      	lsrs	r3, r0, #12
 8000b06:	428b      	cmp	r3, r1
 8000b08:	d328      	bcc.n	8000b5c <__udivsi3+0x6c>
 8000b0a:	0c03      	lsrs	r3, r0, #16
 8000b0c:	428b      	cmp	r3, r1
 8000b0e:	d30d      	bcc.n	8000b2c <__udivsi3+0x3c>
 8000b10:	22ff      	movs	r2, #255	@ 0xff
 8000b12:	0209      	lsls	r1, r1, #8
 8000b14:	ba12      	rev	r2, r2
 8000b16:	0c03      	lsrs	r3, r0, #16
 8000b18:	428b      	cmp	r3, r1
 8000b1a:	d302      	bcc.n	8000b22 <__udivsi3+0x32>
 8000b1c:	1212      	asrs	r2, r2, #8
 8000b1e:	0209      	lsls	r1, r1, #8
 8000b20:	d065      	beq.n	8000bee <__udivsi3+0xfe>
 8000b22:	0b03      	lsrs	r3, r0, #12
 8000b24:	428b      	cmp	r3, r1
 8000b26:	d319      	bcc.n	8000b5c <__udivsi3+0x6c>
 8000b28:	e000      	b.n	8000b2c <__udivsi3+0x3c>
 8000b2a:	0a09      	lsrs	r1, r1, #8
 8000b2c:	0bc3      	lsrs	r3, r0, #15
 8000b2e:	428b      	cmp	r3, r1
 8000b30:	d301      	bcc.n	8000b36 <__udivsi3+0x46>
 8000b32:	03cb      	lsls	r3, r1, #15
 8000b34:	1ac0      	subs	r0, r0, r3
 8000b36:	4152      	adcs	r2, r2
 8000b38:	0b83      	lsrs	r3, r0, #14
 8000b3a:	428b      	cmp	r3, r1
 8000b3c:	d301      	bcc.n	8000b42 <__udivsi3+0x52>
 8000b3e:	038b      	lsls	r3, r1, #14
 8000b40:	1ac0      	subs	r0, r0, r3
 8000b42:	4152      	adcs	r2, r2
 8000b44:	0b43      	lsrs	r3, r0, #13
 8000b46:	428b      	cmp	r3, r1
 8000b48:	d301      	bcc.n	8000b4e <__udivsi3+0x5e>
 8000b4a:	034b      	lsls	r3, r1, #13
 8000b4c:	1ac0      	subs	r0, r0, r3
 8000b4e:	4152      	adcs	r2, r2
 8000b50:	0b03      	lsrs	r3, r0, #12
 8000b52:	428b      	cmp	r3, r1
 8000b54:	d301      	bcc.n	8000b5a <__udivsi3+0x6a>
 8000b56:	030b      	lsls	r3, r1, #12
 8000b58:	1ac0      	subs	r0, r0, r3
 8000b5a:	4152      	adcs	r2, r2
 8000b5c:	0ac3      	lsrs	r3, r0, #11
 8000b5e:	428b      	cmp	r3, r1
 8000b60:	d301      	bcc.n	8000b66 <__udivsi3+0x76>
 8000b62:	02cb      	lsls	r3, r1, #11
 8000b64:	1ac0      	subs	r0, r0, r3
 8000b66:	4152      	adcs	r2, r2
 8000b68:	0a83      	lsrs	r3, r0, #10
 8000b6a:	428b      	cmp	r3, r1
 8000b6c:	d301      	bcc.n	8000b72 <__udivsi3+0x82>
 8000b6e:	028b      	lsls	r3, r1, #10
 8000b70:	1ac0      	subs	r0, r0, r3
 8000b72:	4152      	adcs	r2, r2
 8000b74:	0a43      	lsrs	r3, r0, #9
 8000b76:	428b      	cmp	r3, r1
 8000b78:	d301      	bcc.n	8000b7e <__udivsi3+0x8e>
 8000b7a:	024b      	lsls	r3, r1, #9
 8000b7c:	1ac0      	subs	r0, r0, r3
 8000b7e:	4152      	adcs	r2, r2
 8000b80:	0a03      	lsrs	r3, r0, #8
 8000b82:	428b      	cmp	r3, r1
 8000b84:	d301      	bcc.n	8000b8a <__udivsi3+0x9a>
 8000b86:	020b      	lsls	r3, r1, #8
 8000b88:	1ac0      	subs	r0, r0, r3
 8000b8a:	4152      	adcs	r2, r2
 8000b8c:	d2cd      	bcs.n	8000b2a <__udivsi3+0x3a>
 8000b8e:	09c3      	lsrs	r3, r0, #7
 8000b90:	428b      	cmp	r3, r1
 8000b92:	d301      	bcc.n	8000b98 <__udivsi3+0xa8>
 8000b94:	01cb      	lsls	r3, r1, #7
 8000b96:	1ac0      	subs	r0, r0, r3
 8000b98:	4152      	adcs	r2, r2
 8000b9a:	0983      	lsrs	r3, r0, #6
 8000b9c:	428b      	cmp	r3, r1
 8000b9e:	d301      	bcc.n	8000ba4 <__udivsi3+0xb4>
 8000ba0:	018b      	lsls	r3, r1, #6
 8000ba2:	1ac0      	subs	r0, r0, r3
 8000ba4:	4152      	adcs	r2, r2
 8000ba6:	0943      	lsrs	r3, r0, #5
 8000ba8:	428b      	cmp	r3, r1
 8000baa:	d301      	bcc.n	8000bb0 <__udivsi3+0xc0>
 8000bac:	014b      	lsls	r3, r1, #5
 8000bae:	1ac0      	subs	r0, r0, r3
 8000bb0:	4152      	adcs	r2, r2
 8000bb2:	0903      	lsrs	r3, r0, #4
 8000bb4:	428b      	cmp	r3, r1
 8000bb6:	d301      	bcc.n	8000bbc <__udivsi3+0xcc>
 8000bb8:	010b      	lsls	r3, r1, #4
 8000bba:	1ac0      	subs	r0, r0, r3
 8000bbc:	4152      	adcs	r2, r2
 8000bbe:	08c3      	lsrs	r3, r0, #3
 8000bc0:	428b      	cmp	r3, r1
 8000bc2:	d301      	bcc.n	8000bc8 <__udivsi3+0xd8>
 8000bc4:	00cb      	lsls	r3, r1, #3
 8000bc6:	1ac0      	subs	r0, r0, r3
 8000bc8:	4152      	adcs	r2, r2
 8000bca:	0883      	lsrs	r3, r0, #2
 8000bcc:	428b      	cmp	r3, r1
 8000bce:	d301      	bcc.n	8000bd4 <__udivsi3+0xe4>
 8000bd0:	008b      	lsls	r3, r1, #2
 8000bd2:	1ac0      	subs	r0, r0, r3
 8000bd4:	4152      	adcs	r2, r2
 8000bd6:	0843      	lsrs	r3, r0, #1
 8000bd8:	428b      	cmp	r3, r1
 8000bda:	d301      	bcc.n	8000be0 <__udivsi3+0xf0>
 8000bdc:	004b      	lsls	r3, r1, #1
 8000bde:	1ac0      	subs	r0, r0, r3
 8000be0:	4152      	adcs	r2, r2
 8000be2:	1a41      	subs	r1, r0, r1
 8000be4:	d200      	bcs.n	8000be8 <__udivsi3+0xf8>
 8000be6:	4601      	mov	r1, r0
 8000be8:	4152      	adcs	r2, r2
 8000bea:	4610      	mov	r0, r2
 8000bec:	4770      	bx	lr
 8000bee:	e7ff      	b.n	8000bf0 <__udivsi3+0x100>
 8000bf0:	b501      	push	{r0, lr}
 8000bf2:	2000      	movs	r0, #0
 8000bf4:	f000 f806 	bl	8000c04 <__aeabi_idiv0>
 8000bf8:	bd02      	pop	{r1, pc}
 8000bfa:	46c0      	nop			@ (mov r8, r8)

08000bfc <__aeabi_uidivmod>:
 8000bfc:	2900      	cmp	r1, #0
 8000bfe:	d0f7      	beq.n	8000bf0 <__udivsi3+0x100>
 8000c00:	e776      	b.n	8000af0 <__udivsi3>
 8000c02:	4770      	bx	lr

08000c04 <__aeabi_idiv0>:
 8000c04:	4770      	bx	lr
 8000c06:	46c0      	nop			@ (mov r8, r8)

08000c08 <__aeabi_uldivmod>:
 8000c08:	2b00      	cmp	r3, #0
 8000c0a:	d111      	bne.n	8000c30 <__aeabi_uldivmod+0x28>
 8000c0c:	2a00      	cmp	r2, #0
 8000c0e:	d10f      	bne.n	8000c30 <__aeabi_uldivmod+0x28>
 8000c10:	2900      	cmp	r1, #0
 8000c12:	d100      	bne.n	8000c16 <__aeabi_uldivmod+0xe>
 8000c14:	2800      	cmp	r0, #0
 8000c16:	d002      	beq.n	8000c1e <__aeabi_uldivmod+0x16>
 8000c18:	2100      	movs	r1, #0
 8000c1a:	43c9      	mvns	r1, r1
 8000c1c:	0008      	movs	r0, r1
 8000c1e:	b407      	push	{r0, r1, r2}
 8000c20:	4802      	ldr	r0, [pc, #8]	@ (8000c2c <__aeabi_uldivmod+0x24>)
 8000c22:	a102      	add	r1, pc, #8	@ (adr r1, 8000c2c <__aeabi_uldivmod+0x24>)
 8000c24:	1840      	adds	r0, r0, r1
 8000c26:	9002      	str	r0, [sp, #8]
 8000c28:	bd03      	pop	{r0, r1, pc}
 8000c2a:	46c0      	nop			@ (mov r8, r8)
 8000c2c:	ffffffd9 	.word	0xffffffd9
 8000c30:	b403      	push	{r0, r1}
 8000c32:	4668      	mov	r0, sp
 8000c34:	b501      	push	{r0, lr}
 8000c36:	9802      	ldr	r0, [sp, #8]
 8000c38:	f000 f82e 	bl	8000c98 <__udivmoddi4>
 8000c3c:	9b01      	ldr	r3, [sp, #4]
 8000c3e:	469e      	mov	lr, r3
 8000c40:	b002      	add	sp, #8
 8000c42:	bc0c      	pop	{r2, r3}
 8000c44:	4770      	bx	lr
 8000c46:	46c0      	nop			@ (mov r8, r8)

08000c48 <__aeabi_lmul>:
 8000c48:	b5f0      	push	{r4, r5, r6, r7, lr}
 8000c4a:	000f      	movs	r7, r1
 8000c4c:	0411      	lsls	r1, r2, #16
 8000c4e:	0c09      	lsrs	r1, r1, #16
 8000c50:	0c06      	lsrs	r6, r0, #16
 8000c52:	0405      	lsls	r5, r0, #16
 8000c54:	0004      	movs	r4, r0
 8000c56:	0008      	movs	r0, r1
 8000c58:	46c6      	mov	lr, r8
 8000c5a:	0c2d      	lsrs	r5, r5, #16
 8000c5c:	469c      	mov	ip, r3
 8000c5e:	0c13      	lsrs	r3, r2, #16
 8000c60:	4368      	muls	r0, r5
 8000c62:	4371      	muls	r1, r6
 8000c64:	435d      	muls	r5, r3
 8000c66:	435e      	muls	r6, r3
 8000c68:	186d      	adds	r5, r5, r1
 8000c6a:	0c03      	lsrs	r3, r0, #16
 8000c6c:	195b      	adds	r3, r3, r5
 8000c6e:	b500      	push	{lr}
 8000c70:	4299      	cmp	r1, r3
 8000c72:	d902      	bls.n	8000c7a <__aeabi_lmul+0x32>
 8000c74:	2180      	movs	r1, #128	@ 0x80
 8000c76:	0249      	lsls	r1, r1, #9
 8000c78:	1876      	adds	r6, r6, r1
 8000c7a:	0400      	lsls	r0, r0, #16
 8000c7c:	0c1d      	lsrs	r5, r3, #16
 8000c7e:	0c00      	lsrs	r0, r0, #16
 8000c80:	041b      	lsls	r3, r3, #16
 8000c82:	1818      	adds	r0, r3, r0
 8000c84:	4663      	mov	r3, ip
 8000c86:	437a      	muls	r2, r7
 8000c88:	435c      	muls	r4, r3
 8000c8a:	19ad      	adds	r5, r5, r6
 8000c8c:	18a1      	adds	r1, r4, r2
 8000c8e:	1949      	adds	r1, r1, r5
 8000c90:	bc80      	pop	{r7}
 8000c92:	46b8      	mov	r8, r7
 8000c94:	bdf0      	pop	{r4, r5, r6, r7, pc}
 8000c96:	46c0      	nop			@ (mov r8, r8)

08000c98 <__udivmoddi4>:
 8000c98:	b5f0      	push	{r4, r5, r6, r7, lr}
 8000c9a:	4645      	mov	r5, r8
 8000c9c:	4657      	mov	r7, sl
 8000c9e:	46de      	mov	lr, fp
 8000ca0:	464e      	mov	r6, r9
 8000ca2:	b5e0      	push	{r5, r6, r7, lr}
 8000ca4:	0004      	movs	r4, r0
 8000ca6:	000d      	movs	r5, r1
 8000ca8:	4690      	mov	r8, r2
 8000caa:	469a      	mov	sl, r3
 8000cac:	b083      	sub	sp, #12
 8000cae:	428b      	cmp	r3, r1
 8000cb0:	d82e      	bhi.n	8000d10 <__udivmoddi4+0x78>
 8000cb2:	d02b      	beq.n	8000d0c <__udivmoddi4+0x74>
 8000cb4:	4651      	mov	r1, sl
 8000cb6:	4640      	mov	r0, r8
 8000cb8:	f000 f8b6 	bl	8000e28 <__clzdi2>
 8000cbc:	0029      	movs	r1, r5
 8000cbe:	0006      	movs	r6, r0
 8000cc0:	0020      	movs	r0, r4
 8000cc2:	f000 f8b1 	bl	8000e28 <__clzdi2>
 8000cc6:	1a33      	subs	r3, r6, r0
 8000cc8:	4699      	mov	r9, r3
 8000cca:	3b20      	subs	r3, #32
 8000ccc:	d431      	bmi.n	8000d32 <__udivmoddi4+0x9a>
 8000cce:	4642      	mov	r2, r8
 8000cd0:	409a      	lsls	r2, r3
 8000cd2:	469b      	mov	fp, r3
 8000cd4:	0017      	movs	r7, r2
 8000cd6:	4643      	mov	r3, r8
 8000cd8:	464a      	mov	r2, r9
 8000cda:	4093      	lsls	r3, r2
 8000cdc:	001e      	movs	r6, r3
 8000cde:	42af      	cmp	r7, r5
 8000ce0:	d837      	bhi.n	8000d52 <__udivmoddi4+0xba>
 8000ce2:	42af      	cmp	r7, r5
 8000ce4:	d100      	bne.n	8000ce8 <__udivmoddi4+0x50>
 8000ce6:	e075      	b.n	8000dd4 <__udivmoddi4+0x13c>
 8000ce8:	465a      	mov	r2, fp
 8000cea:	1ba4      	subs	r4, r4, r6
 8000cec:	41bd      	sbcs	r5, r7
 8000cee:	2a00      	cmp	r2, #0
 8000cf0:	da00      	bge.n	8000cf4 <__udivmoddi4+0x5c>
 8000cf2:	e072      	b.n	8000dda <__udivmoddi4+0x142>
 8000cf4:	2301      	movs	r3, #1
 8000cf6:	2000      	movs	r0, #0
 8000cf8:	2100      	movs	r1, #0
 8000cfa:	4093      	lsls	r3, r2
 8000cfc:	9000      	str	r0, [sp, #0]
 8000cfe:	9101      	str	r1, [sp, #4]
 8000d00:	9301      	str	r3, [sp, #4]
 8000d02:	2301      	movs	r3, #1
 8000d04:	464a      	mov	r2, r9
 8000d06:	4093      	lsls	r3, r2
 8000d08:	9300      	str	r3, [sp, #0]
 8000d0a:	e026      	b.n	8000d5a <__udivmoddi4+0xc2>
 8000d0c:	4282      	cmp	r2, r0
 8000d0e:	d9d1      	bls.n	8000cb4 <__udivmoddi4+0x1c>
 8000d10:	2200      	movs	r2, #0
 8000d12:	2300      	movs	r3, #0
 8000d14:	9200      	str	r2, [sp, #0]
 8000d16:	9301      	str	r3, [sp, #4]
 8000d18:	9b0c      	ldr	r3, [sp, #48]	@ 0x30
 8000d1a:	2b00      	cmp	r3, #0
 8000d1c:	d000      	beq.n	8000d20 <__udivmoddi4+0x88>
 8000d1e:	c330      	stmia	r3!, {r4, r5}
 8000d20:	9800      	ldr	r0, [sp, #0]
 8000d22:	9901      	ldr	r1, [sp, #4]
 8000d24:	b003      	add	sp, #12
 8000d26:	bcf0      	pop	{r4, r5, r6, r7}
 8000d28:	46bb      	mov	fp, r7
 8000d2a:	46b2      	mov	sl, r6
 8000d2c:	46a9      	mov	r9, r5
 8000d2e:	46a0      	mov	r8, r4
 8000d30:	bdf0      	pop	{r4, r5, r6, r7, pc}
 8000d32:	464a      	mov	r2, r9
 8000d34:	469b      	mov	fp, r3
 8000d36:	2320      	movs	r3, #32
 8000d38:	4641      	mov	r1, r8
 8000d3a:	1a9b      	subs	r3, r3, r2
 8000d3c:	40d9      	lsrs	r1, r3
 8000d3e:	000b      	movs	r3, r1
 8000d40:	4651      	mov	r1, sl
 8000d42:	4091      	lsls	r1, r2
 8000d44:	464a      	mov	r2, r9
 8000d46:	185f      	adds	r7, r3, r1
 8000d48:	4643      	mov	r3, r8
 8000d4a:	4093      	lsls	r3, r2
 8000d4c:	001e      	movs	r6, r3
 8000d4e:	42af      	cmp	r7, r5
 8000d50:	d9c7      	bls.n	8000ce2 <__udivmoddi4+0x4a>
 8000d52:	2200      	movs	r2, #0
 8000d54:	2300      	movs	r3, #0
 8000d56:	9200      	str	r2, [sp, #0]
 8000d58:	9301      	str	r3, [sp, #4]
 8000d5a:	4649      	mov	r1, r9
 8000d5c:	2900      	cmp	r1, #0
 8000d5e:	d0db      	beq.n	8000d18 <__udivmoddi4+0x80>
 8000d60:	07fb      	lsls	r3, r7, #31
 8000d62:	469c      	mov	ip, r3
 8000d64:	0872      	lsrs	r2, r6, #1
 8000d66:	4462      	add	r2, ip
 8000d68:	000e      	movs	r6, r1
 8000d6a:	087b      	lsrs	r3, r7, #1
 8000d6c:	e00e      	b.n	8000d8c <__udivmoddi4+0xf4>
 8000d6e:	42ab      	cmp	r3, r5
 8000d70:	d101      	bne.n	8000d76 <__udivmoddi4+0xde>
 8000d72:	42a2      	cmp	r2, r4
 8000d74:	d80c      	bhi.n	8000d90 <__udivmoddi4+0xf8>
 8000d76:	1aa4      	subs	r4, r4, r2
 8000d78:	419d      	sbcs	r5, r3
 8000d7a:	2001      	movs	r0, #1
 8000d7c:	1924      	adds	r4, r4, r4
 8000d7e:	416d      	adcs	r5, r5
 8000d80:	2100      	movs	r1, #0
 8000d82:	3e01      	subs	r6, #1
 8000d84:	1824      	adds	r4, r4, r0
 8000d86:	414d      	adcs	r5, r1
 8000d88:	2e00      	cmp	r6, #0
 8000d8a:	d006      	beq.n	8000d9a <__udivmoddi4+0x102>
 8000d8c:	42ab      	cmp	r3, r5
 8000d8e:	d9ee      	bls.n	8000d6e <__udivmoddi4+0xd6>
 8000d90:	3e01      	subs	r6, #1
 8000d92:	1924      	adds	r4, r4, r4
 8000d94:	416d      	adcs	r5, r5
 8000d96:	2e00      	cmp	r6, #0
 8000d98:	d1f8      	bne.n	8000d8c <__udivmoddi4+0xf4>
 8000d9a:	9800      	ldr	r0, [sp, #0]
 8000d9c:	9901      	ldr	r1, [sp, #4]
 8000d9e:	465a      	mov	r2, fp
 8000da0:	1900      	adds	r0, r0, r4
 8000da2:	4169      	adcs	r1, r5
 8000da4:	2a00      	cmp	r2, #0
 8000da6:	db23      	blt.n	8000df0 <__udivmoddi4+0x158>
 8000da8:	002b      	movs	r3, r5
 8000daa:	464c      	mov	r4, r9
 8000dac:	40d3      	lsrs	r3, r2
 8000dae:	002a      	movs	r2, r5
 8000db0:	465e      	mov	r6, fp
 8000db2:	40e2      	lsrs	r2, r4
 8000db4:	001c      	movs	r4, r3
 8000db6:	0015      	movs	r5, r2
 8000db8:	2e00      	cmp	r6, #0
 8000dba:	db29      	blt.n	8000e10 <__udivmoddi4+0x178>
 8000dbc:	001f      	movs	r7, r3
 8000dbe:	40b7      	lsls	r7, r6
 8000dc0:	003b      	movs	r3, r7
 8000dc2:	0026      	movs	r6, r4
 8000dc4:	464f      	mov	r7, r9
 8000dc6:	40be      	lsls	r6, r7
 8000dc8:	0032      	movs	r2, r6
 8000dca:	1a80      	subs	r0, r0, r2
 8000dcc:	4199      	sbcs	r1, r3
 8000dce:	9000      	str	r0, [sp, #0]
 8000dd0:	9101      	str	r1, [sp, #4]
 8000dd2:	e7a1      	b.n	8000d18 <__udivmoddi4+0x80>
 8000dd4:	42a3      	cmp	r3, r4
 8000dd6:	d8bc      	bhi.n	8000d52 <__udivmoddi4+0xba>
 8000dd8:	e786      	b.n	8000ce8 <__udivmoddi4+0x50>
 8000dda:	464a      	mov	r2, r9
 8000ddc:	2320      	movs	r3, #32
 8000dde:	2100      	movs	r1, #0
 8000de0:	1a9b      	subs	r3, r3, r2
 8000de2:	2200      	movs	r2, #0
 8000de4:	9100      	str	r1, [sp, #0]
 8000de6:	9201      	str	r2, [sp, #4]
 8000de8:	2201      	movs	r2, #1
 8000dea:	40da      	lsrs	r2, r3
 8000dec:	9201      	str	r2, [sp, #4]
 8000dee:	e788      	b.n	8000d02 <__udivmoddi4+0x6a>
 8000df0:	464e      	mov	r6, r9
 8000df2:	2320      	movs	r3, #32
 8000df4:	002a      	movs	r2, r5
 8000df6:	1b9b      	subs	r3, r3, r6
 8000df8:	409a      	lsls	r2, r3
 8000dfa:	0023      	movs	r3, r4
 8000dfc:	40f3      	lsrs	r3, r6
 8000dfe:	464c      	mov	r4, r9
 8000e00:	18d3      	adds	r3, r2, r3
 8000e02:	002a      	movs	r2, r5
 8000e04:	465e      	mov	r6, fp
 8000e06:	40e2      	lsrs	r2, r4
 8000e08:	001c      	movs	r4, r3
 8000e0a:	0015      	movs	r5, r2
 8000e0c:	2e00      	cmp	r6, #0
 8000e0e:	dad5      	bge.n	8000dbc <__udivmoddi4+0x124>
 8000e10:	464f      	mov	r7, r9
 8000e12:	2320      	movs	r3, #32
 8000e14:	0026      	movs	r6, r4
 8000e16:	1bdb      	subs	r3, r3, r7
 8000e18:	40de      	lsrs	r6, r3
 8000e1a:	46b4      	mov	ip, r6
 8000e1c:	0016      	movs	r6, r2
 8000e1e:	40be      	lsls	r6, r7
 8000e20:	0033      	movs	r3, r6
 8000e22:	4463      	add	r3, ip
 8000e24:	e7cd      	b.n	8000dc2 <__udivmoddi4+0x12a>
 8000e26:	46c0      	nop			@ (mov r8, r8)

08000e28 <__clzdi2>:
 8000e28:	b510      	push	{r4, lr}
 8000e2a:	2900      	cmp	r1, #0
 8000e2c:	d103      	bne.n	8000e36 <__clzdi2+0xe>
 8000e2e:	f000 f807 	bl	8000e40 <__clzsi2>
 8000e32:	3020      	adds	r0, #32
 8000e34:	e002      	b.n	8000e3c <__clzdi2+0x14>
 8000e36:	0008      	movs	r0, r1
 8000e38:	f000 f802 	bl	8000e40 <__clzsi2>
 8000e3c:	bd10      	pop	{r4, pc}
 8000e3e:	46c0      	nop			@ (mov r8, r8)

08000e40 <__clzsi2>:
 8000e40:	211c      	movs	r1, #28
 8000e42:	2301      	movs	r3, #1
 8000e44:	041b      	lsls	r3, r3, #16
 8000e46:	4298      	cmp	r0, r3
 8000e48:	d301      	bcc.n	8000e4e <__clzsi2+0xe>
 8000e4a:	0c00      	lsrs	r0, r0, #16
 8000e4c:	3910      	subs	r1, #16
 8000e4e:	0a1b      	lsrs	r3, r3, #8
 8000e50:	4298      	cmp	r0, r3
 8000e52:	d301      	bcc.n	8000e58 <__clzsi2+0x18>
 8000e54:	0a00      	lsrs	r0, r0, #8
 8000e56:	3908      	subs	r1, #8
 8000e58:	091b      	lsrs	r3, r3, #4
 8000e5a:	4298      	cmp	r0, r3
 8000e5c:	d301      	bcc.n	8000e62 <__clzsi2+0x22>
 8000e5e:	0900      	lsrs	r0, r0, #4
 8000e60:	3904      	subs	r1, #4
 8000e62:	a202      	add	r2, pc, #8	@ (adr r2, 8000e6c <__clzsi2+0x2c>)
 8000e64:	5c10      	ldrb	r0, [r2, r0]
 8000e66:	1840      	adds	r0, r0, r1
 8000e68:	4770      	bx	lr
 8000e6a:	46c0      	nop			@ (mov r8, r8)
 8000e6c:	02020304 	.word	0x02020304
 8000e70:	01010101 	.word	0x01010101
	...

08000e7c <AHBPrescTable>:
	...
 8000e9c:	00000001 00000002 00000003 00000004     ................
 8000eac:	00000006 00000007 00000008 00000009     ................

08000ebc <APBPrescTable>:
	...
 8000ecc:	00000001 00000002 00000003 00000004     ................

08000edc <g_fan_io>:
 8000edc:	00000000 080007e9 08000807              ............
