
Debug/bin\mX-LPC11U14_lcd.elf:     file format elf32-littlearm


Disassembly of section .text:

00000000 <g_pfnVectors>:
   0:	0c 04 00 10 19 03 00 00 81 03 00 00 81 03 00 00     ................
  10:	81 03 00 00 81 03 00 00 81 03 00 00 00 00 00 00     ................
	...
  2c:	81 03 00 00 81 03 00 00 00 00 00 00 81 03 00 00     ................
  3c:	81 03 00 00 81 03 00 00 81 03 00 00 81 03 00 00     ................
  4c:	81 03 00 00 81 03 00 00 81 03 00 00 81 03 00 00     ................
  5c:	81 03 00 00 81 03 00 00 81 03 00 00 81 03 00 00     ................
  6c:	81 03 00 00 81 03 00 00 81 03 00 00 81 03 00 00     ................
  7c:	81 03 00 00 81 03 00 00 81 03 00 00 81 03 00 00     ................
  8c:	81 03 00 00 81 03 00 00 81 03 00 00 81 03 00 00     ................
  9c:	81 03 00 00 81 03 00 00 81 03 00 00 81 03 00 00     ................
  ac:	81 03 00 00 81 03 00 00 81 03 00 00 81 03 00 00     ................
  bc:	81 03 00 00                                         ....

000000c0 <main>:
  c0:	b580      	push	{r7, lr}
  c2:	af00      	add	r7, sp, #0
  c4:	f000 fb9c 	bl	800 <init_lcd>
  c8:	4b05      	ldr	r3, [pc, #20]	; (e0 <main+0x20>)
  ca:	2000      	movs	r0, #0
  cc:	1c19      	adds	r1, r3, #0
  ce:	f000 fb67 	bl	7a0 <lcd_putstring>
  d2:	4b04      	ldr	r3, [pc, #16]	; (e4 <main+0x24>)
  d4:	2001      	movs	r0, #1
  d6:	1c19      	adds	r1, r3, #0
  d8:	f000 fb62 	bl	7a0 <lcd_putstring>
  dc:	e7fe      	b.n	dc <main+0x1c>
  de:	46c0      	nop			; (mov r8, r8)
  e0:	00000830 	.word	0x00000830
  e4:	00000840 	.word	0x00000840

000000e8 <EnablePLLViaPowerAPI>:
  e8:	b580      	push	{r7, lr}
  ea:	b08c      	sub	sp, #48	; 0x30
  ec:	af00      	add	r7, sp, #0
  ee:	4b0e      	ldr	r3, [pc, #56]	; (128 <EnablePLLViaPowerAPI+0x40>)
  f0:	62fb      	str	r3, [r7, #44]	; 0x2c
  f2:	1c3b      	adds	r3, r7, #0
  f4:	3318      	adds	r3, #24
  f6:	2230      	movs	r2, #48	; 0x30
  f8:	601a      	str	r2, [r3, #0]
  fa:	1c3b      	adds	r3, r7, #0
  fc:	3318      	adds	r3, #24
  fe:	2200      	movs	r2, #0
 100:	605a      	str	r2, [r3, #4]
 102:	6afb      	ldr	r3, [r7, #44]	; 0x2c
 104:	681b      	ldr	r3, [r3, #0]
 106:	68db      	ldr	r3, [r3, #12]
 108:	685b      	ldr	r3, [r3, #4]
 10a:	1c39      	adds	r1, r7, #0
 10c:	3118      	adds	r1, #24
 10e:	1d3a      	adds	r2, r7, #4
 110:	1c08      	adds	r0, r1, #0
 112:	1c11      	adds	r1, r2, #0
 114:	4798      	blx	r3
 116:	1d3b      	adds	r3, r7, #4
 118:	681b      	ldr	r3, [r3, #0]
 11a:	2b00      	cmp	r3, #0
 11c:	d000      	beq.n	120 <EnablePLLViaPowerAPI+0x38>
 11e:	e7fe      	b.n	11e <EnablePLLViaPowerAPI+0x36>
 120:	46bd      	mov	sp, r7
 122:	b00c      	add	sp, #48	; 0x30
 124:	bd80      	pop	{r7, pc}
 126:	46c0      	nop			; (mov r8, r8)
 128:	1fff1ff8 	.word	0x1fff1ff8

0000012c <SystemPLL_Setup>:
 12c:	b580      	push	{r7, lr}
 12e:	b082      	sub	sp, #8
 130:	af00      	add	r7, sp, #0
 132:	4b2b      	ldr	r3, [pc, #172]	; (1e0 <SystemPLL_Setup+0xb4>)
 134:	4a2b      	ldr	r2, [pc, #172]	; (1e4 <SystemPLL_Setup+0xb8>)
 136:	601a      	str	r2, [r3, #0]
 138:	4b2b      	ldr	r3, [pc, #172]	; (1e8 <SystemPLL_Setup+0xbc>)
 13a:	2201      	movs	r2, #1
 13c:	641a      	str	r2, [r3, #64]	; 0x40
 13e:	4b2a      	ldr	r3, [pc, #168]	; (1e8 <SystemPLL_Setup+0xbc>)
 140:	2201      	movs	r2, #1
 142:	645a      	str	r2, [r3, #68]	; 0x44
 144:	4b28      	ldr	r3, [pc, #160]	; (1e8 <SystemPLL_Setup+0xbc>)
 146:	2200      	movs	r2, #0
 148:	645a      	str	r2, [r3, #68]	; 0x44
 14a:	4b27      	ldr	r3, [pc, #156]	; (1e8 <SystemPLL_Setup+0xbc>)
 14c:	2201      	movs	r2, #1
 14e:	645a      	str	r2, [r3, #68]	; 0x44
 150:	4b25      	ldr	r3, [pc, #148]	; (1e8 <SystemPLL_Setup+0xbc>)
 152:	6c5b      	ldr	r3, [r3, #68]	; 0x44
 154:	1c1a      	adds	r2, r3, #0
 156:	2301      	movs	r3, #1
 158:	4013      	ands	r3, r2
 15a:	2b00      	cmp	r3, #0
 15c:	d0f8      	beq.n	150 <SystemPLL_Setup+0x24>
 15e:	4b22      	ldr	r3, [pc, #136]	; (1e8 <SystemPLL_Setup+0xbc>)
 160:	689b      	ldr	r3, [r3, #8]
 162:	607b      	str	r3, [r7, #4]
 164:	687b      	ldr	r3, [r7, #4]
 166:	0a5b      	lsrs	r3, r3, #9
 168:	025b      	lsls	r3, r3, #9
 16a:	607b      	str	r3, [r7, #4]
 16c:	4b1e      	ldr	r3, [pc, #120]	; (1e8 <SystemPLL_Setup+0xbc>)
 16e:	6879      	ldr	r1, [r7, #4]
 170:	2223      	movs	r2, #35	; 0x23
 172:	430a      	orrs	r2, r1
 174:	609a      	str	r2, [r3, #8]
 176:	4a1c      	ldr	r2, [pc, #112]	; (1e8 <SystemPLL_Setup+0xbc>)
 178:	491b      	ldr	r1, [pc, #108]	; (1e8 <SystemPLL_Setup+0xbc>)
 17a:	238e      	movs	r3, #142	; 0x8e
 17c:	009b      	lsls	r3, r3, #2
 17e:	58cb      	ldr	r3, [r1, r3]
 180:	2180      	movs	r1, #128	; 0x80
 182:	1c18      	adds	r0, r3, #0
 184:	4388      	bics	r0, r1
 186:	1c01      	adds	r1, r0, #0
 188:	238e      	movs	r3, #142	; 0x8e
 18a:	009b      	lsls	r3, r3, #2
 18c:	50d1      	str	r1, [r2, r3]
 18e:	4b16      	ldr	r3, [pc, #88]	; (1e8 <SystemPLL_Setup+0xbc>)
 190:	68db      	ldr	r3, [r3, #12]
 192:	1c1a      	adds	r2, r3, #0
 194:	2301      	movs	r3, #1
 196:	4013      	ands	r3, r2
 198:	2b00      	cmp	r3, #0
 19a:	d0f8      	beq.n	18e <SystemPLL_Setup+0x62>
 19c:	4b12      	ldr	r3, [pc, #72]	; (1e8 <SystemPLL_Setup+0xbc>)
 19e:	2203      	movs	r2, #3
 1a0:	671a      	str	r2, [r3, #112]	; 0x70
 1a2:	4b11      	ldr	r3, [pc, #68]	; (1e8 <SystemPLL_Setup+0xbc>)
 1a4:	2201      	movs	r2, #1
 1a6:	675a      	str	r2, [r3, #116]	; 0x74
 1a8:	4b0f      	ldr	r3, [pc, #60]	; (1e8 <SystemPLL_Setup+0xbc>)
 1aa:	2200      	movs	r2, #0
 1ac:	675a      	str	r2, [r3, #116]	; 0x74
 1ae:	4b0e      	ldr	r3, [pc, #56]	; (1e8 <SystemPLL_Setup+0xbc>)
 1b0:	2201      	movs	r2, #1
 1b2:	675a      	str	r2, [r3, #116]	; 0x74
 1b4:	4b0c      	ldr	r3, [pc, #48]	; (1e8 <SystemPLL_Setup+0xbc>)
 1b6:	6f5b      	ldr	r3, [r3, #116]	; 0x74
 1b8:	1c1a      	adds	r2, r3, #0
 1ba:	2301      	movs	r3, #1
 1bc:	4013      	ands	r3, r2
 1be:	2b00      	cmp	r3, #0
 1c0:	d0f8      	beq.n	1b4 <SystemPLL_Setup+0x88>
 1c2:	4b09      	ldr	r3, [pc, #36]	; (1e8 <SystemPLL_Setup+0xbc>)
 1c4:	2201      	movs	r2, #1
 1c6:	679a      	str	r2, [r3, #120]	; 0x78
 1c8:	4b05      	ldr	r3, [pc, #20]	; (1e0 <SystemPLL_Setup+0xb4>)
 1ca:	681b      	ldr	r3, [r3, #0]
 1cc:	009a      	lsls	r2, r3, #2
 1ce:	4b07      	ldr	r3, [pc, #28]	; (1ec <SystemPLL_Setup+0xc0>)
 1d0:	601a      	str	r2, [r3, #0]
 1d2:	4b06      	ldr	r3, [pc, #24]	; (1ec <SystemPLL_Setup+0xc0>)
 1d4:	681a      	ldr	r2, [r3, #0]
 1d6:	4b06      	ldr	r3, [pc, #24]	; (1f0 <SystemPLL_Setup+0xc4>)
 1d8:	601a      	str	r2, [r3, #0]
 1da:	46bd      	mov	sp, r7
 1dc:	b002      	add	sp, #8
 1de:	bd80      	pop	{r7, pc}
 1e0:	10000000 	.word	0x10000000
 1e4:	00b71b00 	.word	0x00b71b00
 1e8:	40048000 	.word	0x40048000
 1ec:	10000004 	.word	0x10000004
 1f0:	10000008 	.word	0x10000008

000001f4 <USB_PLL_Setup>:
 1f4:	b580      	push	{r7, lr}
 1f6:	b082      	sub	sp, #8
 1f8:	af00      	add	r7, sp, #0
 1fa:	4a2d      	ldr	r2, [pc, #180]	; (2b0 <USB_PLL_Setup+0xbc>)
 1fc:	492c      	ldr	r1, [pc, #176]	; (2b0 <USB_PLL_Setup+0xbc>)
 1fe:	238e      	movs	r3, #142	; 0x8e
 200:	009b      	lsls	r3, r3, #2
 202:	58c9      	ldr	r1, [r1, r3]
 204:	4b2b      	ldr	r3, [pc, #172]	; (2b4 <USB_PLL_Setup+0xc0>)
 206:	4019      	ands	r1, r3
 208:	238e      	movs	r3, #142	; 0x8e
 20a:	009b      	lsls	r3, r3, #2
 20c:	50d1      	str	r1, [r2, r3]
 20e:	4b28      	ldr	r3, [pc, #160]	; (2b0 <USB_PLL_Setup+0xbc>)
 210:	2201      	movs	r2, #1
 212:	649a      	str	r2, [r3, #72]	; 0x48
 214:	4b26      	ldr	r3, [pc, #152]	; (2b0 <USB_PLL_Setup+0xbc>)
 216:	2201      	movs	r2, #1
 218:	64da      	str	r2, [r3, #76]	; 0x4c
 21a:	4b25      	ldr	r3, [pc, #148]	; (2b0 <USB_PLL_Setup+0xbc>)
 21c:	2200      	movs	r2, #0
 21e:	64da      	str	r2, [r3, #76]	; 0x4c
 220:	4b23      	ldr	r3, [pc, #140]	; (2b0 <USB_PLL_Setup+0xbc>)
 222:	2201      	movs	r2, #1
 224:	64da      	str	r2, [r3, #76]	; 0x4c
 226:	4b22      	ldr	r3, [pc, #136]	; (2b0 <USB_PLL_Setup+0xbc>)
 228:	6cdb      	ldr	r3, [r3, #76]	; 0x4c
 22a:	1c1a      	adds	r2, r3, #0
 22c:	2301      	movs	r3, #1
 22e:	4013      	ands	r3, r2
 230:	2b00      	cmp	r3, #0
 232:	d0f8      	beq.n	226 <USB_PLL_Setup+0x32>
 234:	4b1e      	ldr	r3, [pc, #120]	; (2b0 <USB_PLL_Setup+0xbc>)
 236:	691b      	ldr	r3, [r3, #16]
 238:	607b      	str	r3, [r7, #4]
 23a:	687b      	ldr	r3, [r7, #4]
 23c:	0a5b      	lsrs	r3, r3, #9
 23e:	025b      	lsls	r3, r3, #9
 240:	607b      	str	r3, [r7, #4]
 242:	4b1b      	ldr	r3, [pc, #108]	; (2b0 <USB_PLL_Setup+0xbc>)
 244:	6879      	ldr	r1, [r7, #4]
 246:	2223      	movs	r2, #35	; 0x23
 248:	430a      	orrs	r2, r1
 24a:	611a      	str	r2, [r3, #16]
 24c:	4b18      	ldr	r3, [pc, #96]	; (2b0 <USB_PLL_Setup+0xbc>)
 24e:	695b      	ldr	r3, [r3, #20]
 250:	1c1a      	adds	r2, r3, #0
 252:	2301      	movs	r3, #1
 254:	4013      	ands	r3, r2
 256:	2b00      	cmp	r3, #0
 258:	d0f8      	beq.n	24c <USB_PLL_Setup+0x58>
 25a:	4a15      	ldr	r2, [pc, #84]	; (2b0 <USB_PLL_Setup+0xbc>)
 25c:	23c0      	movs	r3, #192	; 0xc0
 25e:	2101      	movs	r1, #1
 260:	50d1      	str	r1, [r2, r3]
 262:	4a13      	ldr	r2, [pc, #76]	; (2b0 <USB_PLL_Setup+0xbc>)
 264:	23c4      	movs	r3, #196	; 0xc4
 266:	2101      	movs	r1, #1
 268:	50d1      	str	r1, [r2, r3]
 26a:	4a11      	ldr	r2, [pc, #68]	; (2b0 <USB_PLL_Setup+0xbc>)
 26c:	23c4      	movs	r3, #196	; 0xc4
 26e:	2100      	movs	r1, #0
 270:	50d1      	str	r1, [r2, r3]
 272:	4a0f      	ldr	r2, [pc, #60]	; (2b0 <USB_PLL_Setup+0xbc>)
 274:	23c4      	movs	r3, #196	; 0xc4
 276:	2101      	movs	r1, #1
 278:	50d1      	str	r1, [r2, r3]
 27a:	4a0d      	ldr	r2, [pc, #52]	; (2b0 <USB_PLL_Setup+0xbc>)
 27c:	23c4      	movs	r3, #196	; 0xc4
 27e:	58d3      	ldr	r3, [r2, r3]
 280:	1c1a      	adds	r2, r3, #0
 282:	2301      	movs	r3, #1
 284:	4013      	ands	r3, r2
 286:	2b00      	cmp	r3, #0
 288:	d0f7      	beq.n	27a <USB_PLL_Setup+0x86>
 28a:	4a09      	ldr	r2, [pc, #36]	; (2b0 <USB_PLL_Setup+0xbc>)
 28c:	23c8      	movs	r3, #200	; 0xc8
 28e:	2101      	movs	r1, #1
 290:	50d1      	str	r1, [r2, r3]
 292:	4a07      	ldr	r2, [pc, #28]	; (2b0 <USB_PLL_Setup+0xbc>)
 294:	4906      	ldr	r1, [pc, #24]	; (2b0 <USB_PLL_Setup+0xbc>)
 296:	238e      	movs	r3, #142	; 0x8e
 298:	009b      	lsls	r3, r3, #2
 29a:	58c9      	ldr	r1, [r1, r3]
 29c:	2380      	movs	r3, #128	; 0x80
 29e:	005b      	lsls	r3, r3, #1
 2a0:	4319      	orrs	r1, r3
 2a2:	238e      	movs	r3, #142	; 0x8e
 2a4:	009b      	lsls	r3, r3, #2
 2a6:	50d1      	str	r1, [r2, r3]
 2a8:	46bd      	mov	sp, r7
 2aa:	b002      	add	sp, #8
 2ac:	bd80      	pop	{r7, pc}
 2ae:	46c0      	nop			; (mov r8, r8)
 2b0:	40048000 	.word	0x40048000
 2b4:	fffffaff 	.word	0xfffffaff

000002b8 <SystemInit>:
 2b8:	b580      	push	{r7, lr}
 2ba:	b082      	sub	sp, #8
 2bc:	af00      	add	r7, sp, #0
 2be:	f7ff ff13 	bl	e8 <EnablePLLViaPowerAPI>
 2c2:	4b14      	ldr	r3, [pc, #80]	; (314 <SystemInit+0x5c>)
 2c4:	2200      	movs	r2, #0
 2c6:	621a      	str	r2, [r3, #32]
 2c8:	4a12      	ldr	r2, [pc, #72]	; (314 <SystemInit+0x5c>)
 2ca:	4912      	ldr	r1, [pc, #72]	; (314 <SystemInit+0x5c>)
 2cc:	238e      	movs	r3, #142	; 0x8e
 2ce:	009b      	lsls	r3, r3, #2
 2d0:	58cb      	ldr	r3, [r1, r3]
 2d2:	2120      	movs	r1, #32
 2d4:	1c18      	adds	r0, r3, #0
 2d6:	4388      	bics	r0, r1
 2d8:	1c01      	adds	r1, r0, #0
 2da:	238e      	movs	r3, #142	; 0x8e
 2dc:	009b      	lsls	r3, r3, #2
 2de:	50d1      	str	r1, [r2, r3]
 2e0:	2300      	movs	r3, #0
 2e2:	607b      	str	r3, [r7, #4]
 2e4:	e002      	b.n	2ec <SystemInit+0x34>
 2e6:	687b      	ldr	r3, [r7, #4]
 2e8:	3301      	adds	r3, #1
 2ea:	607b      	str	r3, [r7, #4]
 2ec:	687b      	ldr	r3, [r7, #4]
 2ee:	2bff      	cmp	r3, #255	; 0xff
 2f0:	d9f9      	bls.n	2e6 <SystemInit+0x2e>
 2f2:	f7ff ff1b 	bl	12c <SystemPLL_Setup>
 2f6:	f7ff ff7d 	bl	1f4 <USB_PLL_Setup>
 2fa:	4a06      	ldr	r2, [pc, #24]	; (314 <SystemInit+0x5c>)
 2fc:	4905      	ldr	r1, [pc, #20]	; (314 <SystemInit+0x5c>)
 2fe:	2380      	movs	r3, #128	; 0x80
 300:	58c9      	ldr	r1, [r1, r3]
 302:	2380      	movs	r3, #128	; 0x80
 304:	025b      	lsls	r3, r3, #9
 306:	4319      	orrs	r1, r3
 308:	2380      	movs	r3, #128	; 0x80
 30a:	50d1      	str	r1, [r2, r3]
 30c:	46bd      	mov	sp, r7
 30e:	b002      	add	sp, #8
 310:	bd80      	pop	{r7, pc}
 312:	46c0      	nop			; (mov r8, r8)
 314:	40048000 	.word	0x40048000

00000318 <Default_Reset_Handler>:
 318:	b580      	push	{r7, lr}
 31a:	b082      	sub	sp, #8
 31c:	af00      	add	r7, sp, #0
 31e:	4b13      	ldr	r3, [pc, #76]	; (36c <Default_Reset_Handler+0x54>)
 320:	603b      	str	r3, [r7, #0]
 322:	4b13      	ldr	r3, [pc, #76]	; (370 <Default_Reset_Handler+0x58>)
 324:	607b      	str	r3, [r7, #4]
 326:	e009      	b.n	33c <Default_Reset_Handler+0x24>
 328:	683b      	ldr	r3, [r7, #0]
 32a:	681a      	ldr	r2, [r3, #0]
 32c:	687b      	ldr	r3, [r7, #4]
 32e:	601a      	str	r2, [r3, #0]
 330:	687b      	ldr	r3, [r7, #4]
 332:	3304      	adds	r3, #4
 334:	607b      	str	r3, [r7, #4]
 336:	683b      	ldr	r3, [r7, #0]
 338:	3304      	adds	r3, #4
 33a:	603b      	str	r3, [r7, #0]
 33c:	687a      	ldr	r2, [r7, #4]
 33e:	4b0d      	ldr	r3, [pc, #52]	; (374 <Default_Reset_Handler+0x5c>)
 340:	429a      	cmp	r2, r3
 342:	d3f1      	bcc.n	328 <Default_Reset_Handler+0x10>
 344:	4b0c      	ldr	r3, [pc, #48]	; (378 <Default_Reset_Handler+0x60>)
 346:	607b      	str	r3, [r7, #4]
 348:	e005      	b.n	356 <Default_Reset_Handler+0x3e>
 34a:	687b      	ldr	r3, [r7, #4]
 34c:	2200      	movs	r2, #0
 34e:	601a      	str	r2, [r3, #0]
 350:	687b      	ldr	r3, [r7, #4]
 352:	3304      	adds	r3, #4
 354:	607b      	str	r3, [r7, #4]
 356:	687a      	ldr	r2, [r7, #4]
 358:	4b08      	ldr	r3, [pc, #32]	; (37c <Default_Reset_Handler+0x64>)
 35a:	429a      	cmp	r2, r3
 35c:	d3f5      	bcc.n	34a <Default_Reset_Handler+0x32>
 35e:	f7ff ffab 	bl	2b8 <SystemInit>
 362:	f7ff fead 	bl	c0 <main>
 366:	46bd      	mov	sp, r7
 368:	b002      	add	sp, #8
 36a:	bd80      	pop	{r7, pc}
 36c:	00000854 	.word	0x00000854
 370:	10000000 	.word	0x10000000
 374:	1000000c 	.word	0x1000000c
 378:	1000000c 	.word	0x1000000c
 37c:	1000000c 	.word	0x1000000c

00000380 <ADC_IRQHandler>:
 380:	b580      	push	{r7, lr}
 382:	af00      	add	r7, sp, #0
 384:	e7fe      	b.n	384 <ADC_IRQHandler+0x4>
 386:	46c0      	nop			; (mov r8, r8)

00000388 <delay>:
 388:	b580      	push	{r7, lr}
 38a:	b084      	sub	sp, #16
 38c:	af00      	add	r7, sp, #0
 38e:	6078      	str	r0, [r7, #4]
 390:	2300      	movs	r3, #0
 392:	60bb      	str	r3, [r7, #8]
 394:	2300      	movs	r3, #0
 396:	60fb      	str	r3, [r7, #12]
 398:	2300      	movs	r3, #0
 39a:	60bb      	str	r3, [r7, #8]
 39c:	e00b      	b.n	3b6 <delay+0x2e>
 39e:	2300      	movs	r3, #0
 3a0:	60fb      	str	r3, [r7, #12]
 3a2:	e002      	b.n	3aa <delay+0x22>
 3a4:	68fb      	ldr	r3, [r7, #12]
 3a6:	3301      	adds	r3, #1
 3a8:	60fb      	str	r3, [r7, #12]
 3aa:	68fb      	ldr	r3, [r7, #12]
 3ac:	2b22      	cmp	r3, #34	; 0x22
 3ae:	ddf9      	ble.n	3a4 <delay+0x1c>
 3b0:	68bb      	ldr	r3, [r7, #8]
 3b2:	3301      	adds	r3, #1
 3b4:	60bb      	str	r3, [r7, #8]
 3b6:	68ba      	ldr	r2, [r7, #8]
 3b8:	687b      	ldr	r3, [r7, #4]
 3ba:	429a      	cmp	r2, r3
 3bc:	dbef      	blt.n	39e <delay+0x16>
 3be:	46bd      	mov	sp, r7
 3c0:	b004      	add	sp, #16
 3c2:	bd80      	pop	{r7, pc}

000003c4 <wait_lcd>:
 3c4:	b580      	push	{r7, lr}
 3c6:	af00      	add	r7, sp, #0
 3c8:	23a0      	movs	r3, #160	; 0xa0
 3ca:	05db      	lsls	r3, r3, #23
 3cc:	22a0      	movs	r2, #160	; 0xa0
 3ce:	05d2      	lsls	r2, r2, #23
 3d0:	491e      	ldr	r1, [pc, #120]	; (44c <wait_lcd+0x88>)
 3d2:	5851      	ldr	r1, [r2, r1]
 3d4:	4a1e      	ldr	r2, [pc, #120]	; (450 <wait_lcd+0x8c>)
 3d6:	4011      	ands	r1, r2
 3d8:	4a1c      	ldr	r2, [pc, #112]	; (44c <wait_lcd+0x88>)
 3da:	5099      	str	r1, [r3, r2]
 3dc:	23a0      	movs	r3, #160	; 0xa0
 3de:	05db      	lsls	r3, r3, #23
 3e0:	22a0      	movs	r2, #160	; 0xa0
 3e2:	05d2      	lsls	r2, r2, #23
 3e4:	491b      	ldr	r1, [pc, #108]	; (454 <wait_lcd+0x90>)
 3e6:	5851      	ldr	r1, [r2, r1]
 3e8:	4a1b      	ldr	r2, [pc, #108]	; (458 <wait_lcd+0x94>)
 3ea:	4011      	ands	r1, r2
 3ec:	4a19      	ldr	r2, [pc, #100]	; (454 <wait_lcd+0x90>)
 3ee:	5099      	str	r1, [r3, r2]
 3f0:	23a0      	movs	r3, #160	; 0xa0
 3f2:	05db      	lsls	r3, r3, #23
 3f4:	22a0      	movs	r2, #160	; 0xa0
 3f6:	05d2      	lsls	r2, r2, #23
 3f8:	4916      	ldr	r1, [pc, #88]	; (454 <wait_lcd+0x90>)
 3fa:	5851      	ldr	r1, [r2, r1]
 3fc:	22c0      	movs	r2, #192	; 0xc0
 3fe:	01d2      	lsls	r2, r2, #7
 400:	4311      	orrs	r1, r2
 402:	4a14      	ldr	r2, [pc, #80]	; (454 <wait_lcd+0x90>)
 404:	5099      	str	r1, [r3, r2]
 406:	23a0      	movs	r3, #160	; 0xa0
 408:	05db      	lsls	r3, r3, #23
 40a:	4a12      	ldr	r2, [pc, #72]	; (454 <wait_lcd+0x90>)
 40c:	589a      	ldr	r2, [r3, r2]
 40e:	2380      	movs	r3, #128	; 0x80
 410:	055b      	lsls	r3, r3, #21
 412:	4013      	ands	r3, r2
 414:	2b00      	cmp	r3, #0
 416:	d1f6      	bne.n	406 <wait_lcd+0x42>
 418:	23a0      	movs	r3, #160	; 0xa0
 41a:	05db      	lsls	r3, r3, #23
 41c:	22a0      	movs	r2, #160	; 0xa0
 41e:	05d2      	lsls	r2, r2, #23
 420:	490c      	ldr	r1, [pc, #48]	; (454 <wait_lcd+0x90>)
 422:	5851      	ldr	r1, [r2, r1]
 424:	4a0d      	ldr	r2, [pc, #52]	; (45c <wait_lcd+0x98>)
 426:	4011      	ands	r1, r2
 428:	4a0a      	ldr	r2, [pc, #40]	; (454 <wait_lcd+0x90>)
 42a:	5099      	str	r1, [r3, r2]
 42c:	23a0      	movs	r3, #160	; 0xa0
 42e:	05db      	lsls	r3, r3, #23
 430:	22a0      	movs	r2, #160	; 0xa0
 432:	05d2      	lsls	r2, r2, #23
 434:	4905      	ldr	r1, [pc, #20]	; (44c <wait_lcd+0x88>)
 436:	5851      	ldr	r1, [r2, r1]
 438:	22f0      	movs	r2, #240	; 0xf0
 43a:	0552      	lsls	r2, r2, #21
 43c:	4311      	orrs	r1, r2
 43e:	4a03      	ldr	r2, [pc, #12]	; (44c <wait_lcd+0x88>)
 440:	5099      	str	r1, [r3, r2]
 442:	2064      	movs	r0, #100	; 0x64
 444:	f7ff ffa0 	bl	388 <delay>
 448:	46bd      	mov	sp, r7
 44a:	bd80      	pop	{r7, pc}
 44c:	00002004 	.word	0x00002004
 450:	e1ffffff 	.word	0xe1ffffff
 454:	00002104 	.word	0x00002104
 458:	ffff7fff 	.word	0xffff7fff
 45c:	ffff9fff 	.word	0xffff9fff

00000460 <lcd_command_write>:
 460:	b580      	push	{r7, lr}
 462:	b084      	sub	sp, #16
 464:	af00      	add	r7, sp, #0
 466:	1c02      	adds	r2, r0, #0
 468:	1dfb      	adds	r3, r7, #7
 46a:	701a      	strb	r2, [r3, #0]
 46c:	2300      	movs	r3, #0
 46e:	60bb      	str	r3, [r7, #8]
 470:	2300      	movs	r3, #0
 472:	60fb      	str	r3, [r7, #12]
 474:	1dfb      	adds	r3, r7, #7
 476:	781b      	ldrb	r3, [r3, #0]
 478:	60bb      	str	r3, [r7, #8]
 47a:	68bb      	ldr	r3, [r7, #8]
 47c:	091a      	lsrs	r2, r3, #4
 47e:	230f      	movs	r3, #15
 480:	4013      	ands	r3, r2
 482:	60bb      	str	r3, [r7, #8]
 484:	68bb      	ldr	r3, [r7, #8]
 486:	065a      	lsls	r2, r3, #25
 488:	23f0      	movs	r3, #240	; 0xf0
 48a:	055b      	lsls	r3, r3, #21
 48c:	4013      	ands	r3, r2
 48e:	60fb      	str	r3, [r7, #12]
 490:	23a0      	movs	r3, #160	; 0xa0
 492:	05db      	lsls	r3, r3, #23
 494:	22a0      	movs	r2, #160	; 0xa0
 496:	05d2      	lsls	r2, r2, #23
 498:	493e      	ldr	r1, [pc, #248]	; (594 <lcd_command_write+0x134>)
 49a:	5851      	ldr	r1, [r2, r1]
 49c:	4a3e      	ldr	r2, [pc, #248]	; (598 <lcd_command_write+0x138>)
 49e:	4011      	ands	r1, r2
 4a0:	4a3c      	ldr	r2, [pc, #240]	; (594 <lcd_command_write+0x134>)
 4a2:	5099      	str	r1, [r3, r2]
 4a4:	23a0      	movs	r3, #160	; 0xa0
 4a6:	05db      	lsls	r3, r3, #23
 4a8:	22a0      	movs	r2, #160	; 0xa0
 4aa:	05d2      	lsls	r2, r2, #23
 4ac:	4939      	ldr	r1, [pc, #228]	; (594 <lcd_command_write+0x134>)
 4ae:	5851      	ldr	r1, [r2, r1]
 4b0:	2280      	movs	r2, #128	; 0x80
 4b2:	0192      	lsls	r2, r2, #6
 4b4:	4311      	orrs	r1, r2
 4b6:	4a37      	ldr	r2, [pc, #220]	; (594 <lcd_command_write+0x134>)
 4b8:	5099      	str	r1, [r3, r2]
 4ba:	23a0      	movs	r3, #160	; 0xa0
 4bc:	05db      	lsls	r3, r3, #23
 4be:	22a0      	movs	r2, #160	; 0xa0
 4c0:	05d2      	lsls	r2, r2, #23
 4c2:	4934      	ldr	r1, [pc, #208]	; (594 <lcd_command_write+0x134>)
 4c4:	5851      	ldr	r1, [r2, r1]
 4c6:	4a35      	ldr	r2, [pc, #212]	; (59c <lcd_command_write+0x13c>)
 4c8:	4011      	ands	r1, r2
 4ca:	4a32      	ldr	r2, [pc, #200]	; (594 <lcd_command_write+0x134>)
 4cc:	5099      	str	r1, [r3, r2]
 4ce:	23a0      	movs	r3, #160	; 0xa0
 4d0:	05db      	lsls	r3, r3, #23
 4d2:	22a0      	movs	r2, #160	; 0xa0
 4d4:	05d2      	lsls	r2, r2, #23
 4d6:	492f      	ldr	r1, [pc, #188]	; (594 <lcd_command_write+0x134>)
 4d8:	5851      	ldr	r1, [r2, r1]
 4da:	68fa      	ldr	r2, [r7, #12]
 4dc:	4311      	orrs	r1, r2
 4de:	4a2d      	ldr	r2, [pc, #180]	; (594 <lcd_command_write+0x134>)
 4e0:	5099      	str	r1, [r3, r2]
 4e2:	2064      	movs	r0, #100	; 0x64
 4e4:	f7ff ff50 	bl	388 <delay>
 4e8:	23a0      	movs	r3, #160	; 0xa0
 4ea:	05db      	lsls	r3, r3, #23
 4ec:	22a0      	movs	r2, #160	; 0xa0
 4ee:	05d2      	lsls	r2, r2, #23
 4f0:	4928      	ldr	r1, [pc, #160]	; (594 <lcd_command_write+0x134>)
 4f2:	5851      	ldr	r1, [r2, r1]
 4f4:	4a2a      	ldr	r2, [pc, #168]	; (5a0 <lcd_command_write+0x140>)
 4f6:	4011      	ands	r1, r2
 4f8:	4a26      	ldr	r2, [pc, #152]	; (594 <lcd_command_write+0x134>)
 4fa:	5099      	str	r1, [r3, r2]
 4fc:	1dfb      	adds	r3, r7, #7
 4fe:	781b      	ldrb	r3, [r3, #0]
 500:	60bb      	str	r3, [r7, #8]
 502:	68ba      	ldr	r2, [r7, #8]
 504:	230f      	movs	r3, #15
 506:	4013      	ands	r3, r2
 508:	60bb      	str	r3, [r7, #8]
 50a:	68bb      	ldr	r3, [r7, #8]
 50c:	065a      	lsls	r2, r3, #25
 50e:	23f0      	movs	r3, #240	; 0xf0
 510:	055b      	lsls	r3, r3, #21
 512:	4013      	ands	r3, r2
 514:	60fb      	str	r3, [r7, #12]
 516:	2064      	movs	r0, #100	; 0x64
 518:	f7ff ff36 	bl	388 <delay>
 51c:	23a0      	movs	r3, #160	; 0xa0
 51e:	05db      	lsls	r3, r3, #23
 520:	22a0      	movs	r2, #160	; 0xa0
 522:	05d2      	lsls	r2, r2, #23
 524:	491b      	ldr	r1, [pc, #108]	; (594 <lcd_command_write+0x134>)
 526:	5851      	ldr	r1, [r2, r1]
 528:	4a1b      	ldr	r2, [pc, #108]	; (598 <lcd_command_write+0x138>)
 52a:	4011      	ands	r1, r2
 52c:	4a19      	ldr	r2, [pc, #100]	; (594 <lcd_command_write+0x134>)
 52e:	5099      	str	r1, [r3, r2]
 530:	23a0      	movs	r3, #160	; 0xa0
 532:	05db      	lsls	r3, r3, #23
 534:	22a0      	movs	r2, #160	; 0xa0
 536:	05d2      	lsls	r2, r2, #23
 538:	4916      	ldr	r1, [pc, #88]	; (594 <lcd_command_write+0x134>)
 53a:	5851      	ldr	r1, [r2, r1]
 53c:	2280      	movs	r2, #128	; 0x80
 53e:	0192      	lsls	r2, r2, #6
 540:	4311      	orrs	r1, r2
 542:	4a14      	ldr	r2, [pc, #80]	; (594 <lcd_command_write+0x134>)
 544:	5099      	str	r1, [r3, r2]
 546:	23a0      	movs	r3, #160	; 0xa0
 548:	05db      	lsls	r3, r3, #23
 54a:	22a0      	movs	r2, #160	; 0xa0
 54c:	05d2      	lsls	r2, r2, #23
 54e:	4911      	ldr	r1, [pc, #68]	; (594 <lcd_command_write+0x134>)
 550:	5851      	ldr	r1, [r2, r1]
 552:	4a12      	ldr	r2, [pc, #72]	; (59c <lcd_command_write+0x13c>)
 554:	4011      	ands	r1, r2
 556:	4a0f      	ldr	r2, [pc, #60]	; (594 <lcd_command_write+0x134>)
 558:	5099      	str	r1, [r3, r2]
 55a:	23a0      	movs	r3, #160	; 0xa0
 55c:	05db      	lsls	r3, r3, #23
 55e:	22a0      	movs	r2, #160	; 0xa0
 560:	05d2      	lsls	r2, r2, #23
 562:	490c      	ldr	r1, [pc, #48]	; (594 <lcd_command_write+0x134>)
 564:	5851      	ldr	r1, [r2, r1]
 566:	68fa      	ldr	r2, [r7, #12]
 568:	4311      	orrs	r1, r2
 56a:	4a0a      	ldr	r2, [pc, #40]	; (594 <lcd_command_write+0x134>)
 56c:	5099      	str	r1, [r3, r2]
 56e:	2064      	movs	r0, #100	; 0x64
 570:	f7ff ff0a 	bl	388 <delay>
 574:	23a0      	movs	r3, #160	; 0xa0
 576:	05db      	lsls	r3, r3, #23
 578:	22a0      	movs	r2, #160	; 0xa0
 57a:	05d2      	lsls	r2, r2, #23
 57c:	4905      	ldr	r1, [pc, #20]	; (594 <lcd_command_write+0x134>)
 57e:	5851      	ldr	r1, [r2, r1]
 580:	4a07      	ldr	r2, [pc, #28]	; (5a0 <lcd_command_write+0x140>)
 582:	4011      	ands	r1, r2
 584:	4a03      	ldr	r2, [pc, #12]	; (594 <lcd_command_write+0x134>)
 586:	5099      	str	r1, [r3, r2]
 588:	f7ff ff1c 	bl	3c4 <wait_lcd>
 58c:	46bd      	mov	sp, r7
 58e:	b004      	add	sp, #16
 590:	bd80      	pop	{r7, pc}
 592:	46c0      	nop			; (mov r8, r8)
 594:	00002104 	.word	0x00002104
 598:	ffff7fff 	.word	0xffff7fff
 59c:	e1ffffff 	.word	0xe1ffffff
 5a0:	ffffdfff 	.word	0xffffdfff

000005a4 <set_lcd_port_output>:
 5a4:	b580      	push	{r7, lr}
 5a6:	af00      	add	r7, sp, #0
 5a8:	23a0      	movs	r3, #160	; 0xa0
 5aa:	05db      	lsls	r3, r3, #23
 5ac:	22a0      	movs	r2, #160	; 0xa0
 5ae:	05d2      	lsls	r2, r2, #23
 5b0:	490e      	ldr	r1, [pc, #56]	; (5ec <set_lcd_port_output+0x48>)
 5b2:	5851      	ldr	r1, [r2, r1]
 5b4:	22e0      	movs	r2, #224	; 0xe0
 5b6:	0212      	lsls	r2, r2, #8
 5b8:	4311      	orrs	r1, r2
 5ba:	4a0c      	ldr	r2, [pc, #48]	; (5ec <set_lcd_port_output+0x48>)
 5bc:	5099      	str	r1, [r3, r2]
 5be:	23a0      	movs	r3, #160	; 0xa0
 5c0:	05db      	lsls	r3, r3, #23
 5c2:	22a0      	movs	r2, #160	; 0xa0
 5c4:	05d2      	lsls	r2, r2, #23
 5c6:	490a      	ldr	r1, [pc, #40]	; (5f0 <set_lcd_port_output+0x4c>)
 5c8:	5851      	ldr	r1, [r2, r1]
 5ca:	4a0a      	ldr	r2, [pc, #40]	; (5f4 <set_lcd_port_output+0x50>)
 5cc:	4011      	ands	r1, r2
 5ce:	4a08      	ldr	r2, [pc, #32]	; (5f0 <set_lcd_port_output+0x4c>)
 5d0:	5099      	str	r1, [r3, r2]
 5d2:	23a0      	movs	r3, #160	; 0xa0
 5d4:	05db      	lsls	r3, r3, #23
 5d6:	22a0      	movs	r2, #160	; 0xa0
 5d8:	05d2      	lsls	r2, r2, #23
 5da:	4904      	ldr	r1, [pc, #16]	; (5ec <set_lcd_port_output+0x48>)
 5dc:	5851      	ldr	r1, [r2, r1]
 5de:	22f0      	movs	r2, #240	; 0xf0
 5e0:	0552      	lsls	r2, r2, #21
 5e2:	4311      	orrs	r1, r2
 5e4:	4a01      	ldr	r2, [pc, #4]	; (5ec <set_lcd_port_output+0x48>)
 5e6:	5099      	str	r1, [r3, r2]
 5e8:	46bd      	mov	sp, r7
 5ea:	bd80      	pop	{r7, pc}
 5ec:	00002004 	.word	0x00002004
 5f0:	00002104 	.word	0x00002104
 5f4:	ffff1fff 	.word	0xffff1fff

000005f8 <lcd_clear>:
 5f8:	b580      	push	{r7, lr}
 5fa:	af00      	add	r7, sp, #0
 5fc:	2001      	movs	r0, #1
 5fe:	f7ff ff2f 	bl	460 <lcd_command_write>
 602:	46bd      	mov	sp, r7
 604:	bd80      	pop	{r7, pc}
 606:	46c0      	nop			; (mov r8, r8)

00000608 <lcd_gotoxy>:
 608:	b580      	push	{r7, lr}
 60a:	b084      	sub	sp, #16
 60c:	af00      	add	r7, sp, #0
 60e:	6078      	str	r0, [r7, #4]
 610:	6039      	str	r1, [r7, #0]
 612:	2300      	movs	r3, #0
 614:	60fb      	str	r3, [r7, #12]
 616:	687b      	ldr	r3, [r7, #4]
 618:	2b01      	cmp	r3, #1
 61a:	d906      	bls.n	62a <lcd_gotoxy+0x22>
 61c:	683b      	ldr	r3, [r7, #0]
 61e:	2b0f      	cmp	r3, #15
 620:	d903      	bls.n	62a <lcd_gotoxy+0x22>
 622:	2301      	movs	r3, #1
 624:	425b      	negs	r3, r3
 626:	60fb      	str	r3, [r7, #12]
 628:	e014      	b.n	654 <lcd_gotoxy+0x4c>
 62a:	687b      	ldr	r3, [r7, #4]
 62c:	2b00      	cmp	r3, #0
 62e:	d107      	bne.n	640 <lcd_gotoxy+0x38>
 630:	683b      	ldr	r3, [r7, #0]
 632:	b2db      	uxtb	r3, r3
 634:	3b80      	subs	r3, #128	; 0x80
 636:	b2db      	uxtb	r3, r3
 638:	1c18      	adds	r0, r3, #0
 63a:	f7ff ff11 	bl	460 <lcd_command_write>
 63e:	e009      	b.n	654 <lcd_gotoxy+0x4c>
 640:	687b      	ldr	r3, [r7, #4]
 642:	2b01      	cmp	r3, #1
 644:	d106      	bne.n	654 <lcd_gotoxy+0x4c>
 646:	683b      	ldr	r3, [r7, #0]
 648:	b2db      	uxtb	r3, r3
 64a:	3b40      	subs	r3, #64	; 0x40
 64c:	b2db      	uxtb	r3, r3
 64e:	1c18      	adds	r0, r3, #0
 650:	f7ff ff06 	bl	460 <lcd_command_write>
 654:	68fb      	ldr	r3, [r7, #12]
 656:	1c18      	adds	r0, r3, #0
 658:	46bd      	mov	sp, r7
 65a:	b004      	add	sp, #16
 65c:	bd80      	pop	{r7, pc}
 65e:	46c0      	nop			; (mov r8, r8)

00000660 <lcd_data_write>:
 660:	b580      	push	{r7, lr}
 662:	b084      	sub	sp, #16
 664:	af00      	add	r7, sp, #0
 666:	1c02      	adds	r2, r0, #0
 668:	1dfb      	adds	r3, r7, #7
 66a:	701a      	strb	r2, [r3, #0]
 66c:	1c3b      	adds	r3, r7, #0
 66e:	330b      	adds	r3, #11
 670:	2200      	movs	r2, #0
 672:	701a      	strb	r2, [r3, #0]
 674:	2300      	movs	r3, #0
 676:	60fb      	str	r3, [r7, #12]
 678:	1c3b      	adds	r3, r7, #0
 67a:	330b      	adds	r3, #11
 67c:	1dfa      	adds	r2, r7, #7
 67e:	7812      	ldrb	r2, [r2, #0]
 680:	701a      	strb	r2, [r3, #0]
 682:	1c3b      	adds	r3, r7, #0
 684:	330b      	adds	r3, #11
 686:	1c3a      	adds	r2, r7, #0
 688:	320b      	adds	r2, #11
 68a:	7812      	ldrb	r2, [r2, #0]
 68c:	0912      	lsrs	r2, r2, #4
 68e:	701a      	strb	r2, [r3, #0]
 690:	1c3b      	adds	r3, r7, #0
 692:	330b      	adds	r3, #11
 694:	781b      	ldrb	r3, [r3, #0]
 696:	065b      	lsls	r3, r3, #25
 698:	1c1a      	adds	r2, r3, #0
 69a:	23f0      	movs	r3, #240	; 0xf0
 69c:	055b      	lsls	r3, r3, #21
 69e:	4013      	ands	r3, r2
 6a0:	60fb      	str	r3, [r7, #12]
 6a2:	23a0      	movs	r3, #160	; 0xa0
 6a4:	05db      	lsls	r3, r3, #23
 6a6:	22a0      	movs	r2, #160	; 0xa0
 6a8:	05d2      	lsls	r2, r2, #23
 6aa:	4934      	ldr	r1, [pc, #208]	; (77c <lcd_data_write+0x11c>)
 6ac:	5851      	ldr	r1, [r2, r1]
 6ae:	22a0      	movs	r2, #160	; 0xa0
 6b0:	0212      	lsls	r2, r2, #8
 6b2:	4311      	orrs	r1, r2
 6b4:	4a31      	ldr	r2, [pc, #196]	; (77c <lcd_data_write+0x11c>)
 6b6:	5099      	str	r1, [r3, r2]
 6b8:	23a0      	movs	r3, #160	; 0xa0
 6ba:	05db      	lsls	r3, r3, #23
 6bc:	22a0      	movs	r2, #160	; 0xa0
 6be:	05d2      	lsls	r2, r2, #23
 6c0:	492e      	ldr	r1, [pc, #184]	; (77c <lcd_data_write+0x11c>)
 6c2:	5851      	ldr	r1, [r2, r1]
 6c4:	4a2e      	ldr	r2, [pc, #184]	; (780 <lcd_data_write+0x120>)
 6c6:	4011      	ands	r1, r2
 6c8:	4a2c      	ldr	r2, [pc, #176]	; (77c <lcd_data_write+0x11c>)
 6ca:	5099      	str	r1, [r3, r2]
 6cc:	23a0      	movs	r3, #160	; 0xa0
 6ce:	05db      	lsls	r3, r3, #23
 6d0:	22a0      	movs	r2, #160	; 0xa0
 6d2:	05d2      	lsls	r2, r2, #23
 6d4:	4929      	ldr	r1, [pc, #164]	; (77c <lcd_data_write+0x11c>)
 6d6:	5851      	ldr	r1, [r2, r1]
 6d8:	68fa      	ldr	r2, [r7, #12]
 6da:	4311      	orrs	r1, r2
 6dc:	4a27      	ldr	r2, [pc, #156]	; (77c <lcd_data_write+0x11c>)
 6de:	5099      	str	r1, [r3, r2]
 6e0:	23a0      	movs	r3, #160	; 0xa0
 6e2:	05db      	lsls	r3, r3, #23
 6e4:	22a0      	movs	r2, #160	; 0xa0
 6e6:	05d2      	lsls	r2, r2, #23
 6e8:	4924      	ldr	r1, [pc, #144]	; (77c <lcd_data_write+0x11c>)
 6ea:	5851      	ldr	r1, [r2, r1]
 6ec:	4a25      	ldr	r2, [pc, #148]	; (784 <lcd_data_write+0x124>)
 6ee:	4011      	ands	r1, r2
 6f0:	4a22      	ldr	r2, [pc, #136]	; (77c <lcd_data_write+0x11c>)
 6f2:	5099      	str	r1, [r3, r2]
 6f4:	1c3b      	adds	r3, r7, #0
 6f6:	330b      	adds	r3, #11
 6f8:	1dfa      	adds	r2, r7, #7
 6fa:	7812      	ldrb	r2, [r2, #0]
 6fc:	701a      	strb	r2, [r3, #0]
 6fe:	1c3b      	adds	r3, r7, #0
 700:	330b      	adds	r3, #11
 702:	1c3a      	adds	r2, r7, #0
 704:	320b      	adds	r2, #11
 706:	7811      	ldrb	r1, [r2, #0]
 708:	220f      	movs	r2, #15
 70a:	400a      	ands	r2, r1
 70c:	701a      	strb	r2, [r3, #0]
 70e:	1c3b      	adds	r3, r7, #0
 710:	330b      	adds	r3, #11
 712:	781b      	ldrb	r3, [r3, #0]
 714:	065b      	lsls	r3, r3, #25
 716:	1c1a      	adds	r2, r3, #0
 718:	23f0      	movs	r3, #240	; 0xf0
 71a:	055b      	lsls	r3, r3, #21
 71c:	4013      	ands	r3, r2
 71e:	60fb      	str	r3, [r7, #12]
 720:	23a0      	movs	r3, #160	; 0xa0
 722:	05db      	lsls	r3, r3, #23
 724:	22a0      	movs	r2, #160	; 0xa0
 726:	05d2      	lsls	r2, r2, #23
 728:	4914      	ldr	r1, [pc, #80]	; (77c <lcd_data_write+0x11c>)
 72a:	5851      	ldr	r1, [r2, r1]
 72c:	22a0      	movs	r2, #160	; 0xa0
 72e:	0212      	lsls	r2, r2, #8
 730:	4311      	orrs	r1, r2
 732:	4a12      	ldr	r2, [pc, #72]	; (77c <lcd_data_write+0x11c>)
 734:	5099      	str	r1, [r3, r2]
 736:	23a0      	movs	r3, #160	; 0xa0
 738:	05db      	lsls	r3, r3, #23
 73a:	22a0      	movs	r2, #160	; 0xa0
 73c:	05d2      	lsls	r2, r2, #23
 73e:	490f      	ldr	r1, [pc, #60]	; (77c <lcd_data_write+0x11c>)
 740:	5851      	ldr	r1, [r2, r1]
 742:	4a0f      	ldr	r2, [pc, #60]	; (780 <lcd_data_write+0x120>)
 744:	4011      	ands	r1, r2
 746:	4a0d      	ldr	r2, [pc, #52]	; (77c <lcd_data_write+0x11c>)
 748:	5099      	str	r1, [r3, r2]
 74a:	23a0      	movs	r3, #160	; 0xa0
 74c:	05db      	lsls	r3, r3, #23
 74e:	22a0      	movs	r2, #160	; 0xa0
 750:	05d2      	lsls	r2, r2, #23
 752:	490a      	ldr	r1, [pc, #40]	; (77c <lcd_data_write+0x11c>)
 754:	5851      	ldr	r1, [r2, r1]
 756:	68fa      	ldr	r2, [r7, #12]
 758:	4311      	orrs	r1, r2
 75a:	4a08      	ldr	r2, [pc, #32]	; (77c <lcd_data_write+0x11c>)
 75c:	5099      	str	r1, [r3, r2]
 75e:	23a0      	movs	r3, #160	; 0xa0
 760:	05db      	lsls	r3, r3, #23
 762:	22a0      	movs	r2, #160	; 0xa0
 764:	05d2      	lsls	r2, r2, #23
 766:	4905      	ldr	r1, [pc, #20]	; (77c <lcd_data_write+0x11c>)
 768:	5851      	ldr	r1, [r2, r1]
 76a:	4a06      	ldr	r2, [pc, #24]	; (784 <lcd_data_write+0x124>)
 76c:	4011      	ands	r1, r2
 76e:	4a03      	ldr	r2, [pc, #12]	; (77c <lcd_data_write+0x11c>)
 770:	5099      	str	r1, [r3, r2]
 772:	f7ff fe27 	bl	3c4 <wait_lcd>
 776:	46bd      	mov	sp, r7
 778:	b004      	add	sp, #16
 77a:	bd80      	pop	{r7, pc}
 77c:	00002104 	.word	0x00002104
 780:	e1ffffff 	.word	0xe1ffffff
 784:	ffffdfff 	.word	0xffffdfff

00000788 <lcd_putchar>:
 788:	b580      	push	{r7, lr}
 78a:	b082      	sub	sp, #8
 78c:	af00      	add	r7, sp, #0
 78e:	6078      	str	r0, [r7, #4]
 790:	687b      	ldr	r3, [r7, #4]
 792:	b2db      	uxtb	r3, r3
 794:	1c18      	adds	r0, r3, #0
 796:	f7ff ff63 	bl	660 <lcd_data_write>
 79a:	46bd      	mov	sp, r7
 79c:	b002      	add	sp, #8
 79e:	bd80      	pop	{r7, pc}

000007a0 <lcd_putstring>:
 7a0:	b580      	push	{r7, lr}
 7a2:	b084      	sub	sp, #16
 7a4:	af00      	add	r7, sp, #0
 7a6:	1c02      	adds	r2, r0, #0
 7a8:	6039      	str	r1, [r7, #0]
 7aa:	1dfb      	adds	r3, r7, #7
 7ac:	701a      	strb	r2, [r3, #0]
 7ae:	1c3b      	adds	r3, r7, #0
 7b0:	330f      	adds	r3, #15
 7b2:	2210      	movs	r2, #16
 7b4:	701a      	strb	r2, [r3, #0]
 7b6:	1dfb      	adds	r3, r7, #7
 7b8:	781b      	ldrb	r3, [r3, #0]
 7ba:	1c18      	adds	r0, r3, #0
 7bc:	2100      	movs	r1, #0
 7be:	f7ff ff23 	bl	608 <lcd_gotoxy>
 7c2:	e007      	b.n	7d4 <lcd_putstring+0x34>
 7c4:	683b      	ldr	r3, [r7, #0]
 7c6:	781b      	ldrb	r3, [r3, #0]
 7c8:	1c18      	adds	r0, r3, #0
 7ca:	f7ff ffdd 	bl	788 <lcd_putchar>
 7ce:	683b      	ldr	r3, [r7, #0]
 7d0:	3301      	adds	r3, #1
 7d2:	603b      	str	r3, [r7, #0]
 7d4:	683b      	ldr	r3, [r7, #0]
 7d6:	781b      	ldrb	r3, [r3, #0]
 7d8:	2b00      	cmp	r3, #0
 7da:	d00e      	beq.n	7fa <lcd_putstring+0x5a>
 7dc:	1c3b      	adds	r3, r7, #0
 7de:	330f      	adds	r3, #15
 7e0:	781b      	ldrb	r3, [r3, #0]
 7e2:	1e5a      	subs	r2, r3, #1
 7e4:	4193      	sbcs	r3, r2
 7e6:	b2db      	uxtb	r3, r3
 7e8:	1c3a      	adds	r2, r7, #0
 7ea:	320f      	adds	r2, #15
 7ec:	1c39      	adds	r1, r7, #0
 7ee:	310f      	adds	r1, #15
 7f0:	7809      	ldrb	r1, [r1, #0]
 7f2:	3901      	subs	r1, #1
 7f4:	7011      	strb	r1, [r2, #0]
 7f6:	2b00      	cmp	r3, #0
 7f8:	d1e4      	bne.n	7c4 <lcd_putstring+0x24>
 7fa:	46bd      	mov	sp, r7
 7fc:	b004      	add	sp, #16
 7fe:	bd80      	pop	{r7, pc}

00000800 <init_lcd>:
 800:	b580      	push	{r7, lr}
 802:	af00      	add	r7, sp, #0
 804:	f7ff fece 	bl	5a4 <set_lcd_port_output>
 808:	2028      	movs	r0, #40	; 0x28
 80a:	f7ff fe29 	bl	460 <lcd_command_write>
 80e:	2002      	movs	r0, #2
 810:	f7ff fe26 	bl	460 <lcd_command_write>
 814:	2006      	movs	r0, #6
 816:	f7ff fe23 	bl	460 <lcd_command_write>
 81a:	200c      	movs	r0, #12
 81c:	f7ff fe20 	bl	460 <lcd_command_write>
 820:	2000      	movs	r0, #0
 822:	2100      	movs	r1, #0
 824:	f7ff fef0 	bl	608 <lcd_gotoxy>
 828:	f7ff fee6 	bl	5f8 <lcd_clear>
 82c:	46bd      	mov	sp, r7
 82e:	bd80      	pop	{r7, pc}
 830:	20202020 	.word	0x20202020
 834:	58474e20 	.word	0x58474e20
 838:	20202020 	.word	0x20202020
 83c:	00000020 	.word	0x00000020
 840:	45542020 	.word	0x45542020
 844:	4f4e4843 	.word	0x4f4e4843
 848:	49474f4c 	.word	0x49474f4c
 84c:	20205345 	.word	0x20205345
 850:	00000000 	.word	0x00000000
