   1              		.cpu cortex-m0plus
   2              		.fpu softvfp
   3              		.eabi_attribute 20, 1
   4              		.eabi_attribute 21, 1
   5              		.eabi_attribute 23, 3
   6              		.eabi_attribute 24, 1
   7              		.eabi_attribute 25, 1
   8              		.eabi_attribute 26, 1
   9              		.eabi_attribute 30, 6
  10              		.eabi_attribute 34, 0
  11              		.eabi_attribute 18, 4
  12              		.code	16
  13              		.file	"ButtonManager.c"
  14              		.text
  15              	.Ltext0:
  16              		.cfi_sections	.debug_frame
  17              		.global	lastWriteBpState
  18              		.section	.bss.lastWriteBpState,"aw",%nobits
  21              	lastWriteBpState:
  22 0000 00       		.space	1
  23              		.global	lastReadBpState
  24              		.section	.bss.lastReadBpState,"aw",%nobits
  27              	lastReadBpState:
  28 0000 00       		.space	1
  29              		.global	waitAllUnpressed
  30              		.section	.bss.waitAllUnpressed,"aw",%nobits
  33              	waitAllUnpressed:
  34 0000 00       		.space	1
  35              		.global	writeBpMsRef
  36              		.section	.bss.writeBpMsRef,"aw",%nobits
  37              		.align	2
  40              	writeBpMsRef:
  41 0000 00000000 		.space	4
  42              		.global	readBpMsRef
  43              		.section	.bss.readBpMsRef,"aw",%nobits
  44              		.align	2
  47              	readBpMsRef:
  48 0000 00000000 		.space	4
  49              		.comm	ButtonManagerCtrl,4,4
  50              		.section	.text.ButtonManagerDealer,"ax",%progbits
  51              		.align	2
  52              		.global	ButtonManagerDealer
  53              		.code	16
  54              		.thumb_func
  56              	ButtonManagerDealer:
  57              	.LFB33:
  58              		.file 1 "../Application/ButtonManager/ButtonManager.c"
   1:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
   2:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
   3:../Application/ButtonManager/ButtonManager.c **** /**
   4:../Application/ButtonManager/ButtonManager.c ****  * \file    ButtonManager.c
   5:../Application/ButtonManager/ButtonManager.c ****  * \author  Thibaut LALUQUE 3D-Ouest
   6:../Application/ButtonManager/ButtonManager.c ****  * \date    20/11/2014
   7:../Application/ButtonManager/ButtonManager.c ****  * \version 1.0
   8:../Application/ButtonManager/ButtonManager.c ****  * \brief 	Source file for button management.
   9:../Application/ButtonManager/ButtonManager.c ****  * \details All Right Reserved.
  10:../Application/ButtonManager/ButtonManager.c ****  */
  11:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  12:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  13:../Application/ButtonManager/ButtonManager.c **** 
  14:../Application/ButtonManager/ButtonManager.c **** 
  15:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  16:../Application/ButtonManager/ButtonManager.c **** /*## INCLUDES ################################################################################*/
  17:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  18:../Application/ButtonManager/ButtonManager.c **** #include "ButtonManager.h"
  19:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  20:../Application/ButtonManager/ButtonManager.c **** /*## END INCLUDES ############################################################################*/
  21:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  22:../Application/ButtonManager/ButtonManager.c **** 
  23:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  24:../Application/ButtonManager/ButtonManager.c **** /*## CONFIGURATION BITS ######################################################################*/
  25:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  26:../Application/ButtonManager/ButtonManager.c **** 
  27:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  28:../Application/ButtonManager/ButtonManager.c **** /*## END CONFIGURATION BITS ##################################################################*/
  29:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  30:../Application/ButtonManager/ButtonManager.c **** 
  31:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  32:../Application/ButtonManager/ButtonManager.c **** /*## LOCAL DEFINES ###########################################################################*/
  33:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  34:../Application/ButtonManager/ButtonManager.c **** 
  35:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  36:../Application/ButtonManager/ButtonManager.c **** /*## END LOCAL DEFINES ######################################################################*/
  37:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  38:../Application/ButtonManager/ButtonManager.c **** 
  39:../Application/ButtonManager/ButtonManager.c **** 
  40:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  41:../Application/ButtonManager/ButtonManager.c **** /*## LOCAL FONCTIONS DECLARATION #############################################################*/
  42:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  43:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDealer (void);
  44:../Application/ButtonManager/ButtonManager.c **** 
  45:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayProgrammedError (void);
  46:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayDateError (void);
  47:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayRfidError (void);
  48:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayRead (void);
  49:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayWrite (void);
  50:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayWriteError (void);
  51:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayLogError (void);
  52:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayNone (void);
  53:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  54:../Application/ButtonManager/ButtonManager.c **** /*## END LOCAL FONCTIONS DECLARATION #########################################################*/
  55:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  56:../Application/ButtonManager/ButtonManager.c **** 
  57:../Application/ButtonManager/ButtonManager.c **** 
  58:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  59:../Application/ButtonManager/ButtonManager.c **** /*## LOCAL VARIABLES #########################################################################*/
  60:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  61:../Application/ButtonManager/ButtonManager.c **** tButtonState lastWriteBpState = BUTTON_RELEASED;
  62:../Application/ButtonManager/ButtonManager.c **** tButtonState lastReadBpState = BUTTON_RELEASED;
  63:../Application/ButtonManager/ButtonManager.c **** tButtonState waitAllUnpressed = BUTTON_RELEASED;
  64:../Application/ButtonManager/ButtonManager.c **** unsigned long writeBpMsRef = 0;
  65:../Application/ButtonManager/ButtonManager.c **** unsigned long readBpMsRef = 0;
  66:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  67:../Application/ButtonManager/ButtonManager.c **** /*## END LOCAL VARIABLES #####################################################################*/
  68:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  69:../Application/ButtonManager/ButtonManager.c **** 
  70:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  71:../Application/ButtonManager/ButtonManager.c **** /*## GLOBAL VARIABLES ########################################################################*/
  72:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  73:../Application/ButtonManager/ButtonManager.c **** tButtonManagerCtrl ButtonManagerCtrl;
  74:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  75:../Application/ButtonManager/ButtonManager.c **** /*## END GLOBAL VARIABLES ####################################################################*/
  76:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  77:../Application/ButtonManager/ButtonManager.c **** 
  78:../Application/ButtonManager/ButtonManager.c **** 
  79:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  80:../Application/ButtonManager/ButtonManager.c **** /*## LOCAL FONCTIONS #########################################################################*/
  81:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
  82:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDealer (void) {
  59              		.loc 1 82 0
  60              		.cfi_startproc
  61 0000 80B5     		push	{r7, lr}
  62              		.cfi_def_cfa_offset 8
  63              		.cfi_offset 7, -8
  64              		.cfi_offset 14, -4
  65 0002 82B0     		sub	sp, sp, #8
  66              		.cfi_def_cfa_offset 16
  67 0004 00AF     		add	r7, sp, #0
  68              		.cfi_def_cfa_register 7
  83:../Application/ButtonManager/ButtonManager.c **** 
  84:../Application/ButtonManager/ButtonManager.c **** 	static unsigned long msRef = 0;
  85:../Application/ButtonManager/ButtonManager.c **** 
  86:../Application/ButtonManager/ButtonManager.c **** 	switch (ButtonManagerCtrl.opState) {
  69              		.loc 1 86 0
  70 0006 A74B     		ldr	r3, .L30
  71 0008 9B78     		ldrb	r3, [r3, #2]
  72 000a 0A2B     		cmp	r3, #10
  73 000c 00D9     		bls	.LCB15
  74 000e 3FE1     		b	.L2	@long jump
  75              	.LCB15:
  76 0010 9A00     		lsl	r2, r3, #2
  77 0012 A54B     		ldr	r3, .L30+4
  78 0014 D318     		add	r3, r2, r3
  79 0016 1B68     		ldr	r3, [r3]
  80 0018 9F46     		mov	pc, r3
  81              		.section	.rodata.ButtonManagerDealer,"a",%progbits
  82              		.align	2
  83              	.L4:
  84 0000 90020000 		.word	.L2
  85 0004 1A000000 		.word	.L3
  86 0008 64000000 		.word	.L5
  87 000c 5E010000 		.word	.L6
  88 0010 BA010000 		.word	.L7
  89 0014 8C010000 		.word	.L8
  90 0018 16020000 		.word	.L9
  91 001c E8010000 		.word	.L10
  92 0020 44020000 		.word	.L11
  93 0024 60020000 		.word	.L12
  94 0028 82020000 		.word	.L13
  95              		.section	.text.ButtonManagerDealer
  96              	.L3:
  87:../Application/ButtonManager/ButtonManager.c **** 
  88:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_START :
  89:../Application/ButtonManager/ButtonManager.c **** 		if(ButtonManagerCtrl.operation.bits.read) {
  97              		.loc 1 89 0
  98 001a A24B     		ldr	r3, .L30
  99 001c 1B78     		ldrb	r3, [r3]
 100 001e DB07     		lsl	r3, r3, #31
 101 0020 DB0F     		lsr	r3, r3, #31
 102 0022 DBB2     		uxtb	r3, r3
 103 0024 002B     		cmp	r3, #0
 104 0026 08D0     		beq	.L14
  90:../Application/ButtonManager/ButtonManager.c **** 			RFIDCtrl.request.bits.read = 1;
 105              		.loc 1 90 0
 106 0028 A04B     		ldr	r3, .L30+8
 107 002a 1A78     		ldrb	r2, [r3]
 108 002c 0221     		mov	r1, #2
 109 002e 0A43     		orr	r2, r1
 110 0030 1A70     		strb	r2, [r3]
  91:../Application/ButtonManager/ButtonManager.c **** 			ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_WAIT_RFID;
 111              		.loc 1 91 0
 112 0032 9C4B     		ldr	r3, .L30
 113 0034 0222     		mov	r2, #2
 114 0036 9A70     		strb	r2, [r3, #2]
 115 0038 13E0     		b	.L15
 116              	.L14:
  92:../Application/ButtonManager/ButtonManager.c **** 		} else if (ButtonManagerCtrl.operation.bits.write) {
 117              		.loc 1 92 0
 118 003a 9A4B     		ldr	r3, .L30
 119 003c 1B78     		ldrb	r3, [r3]
 120 003e 9B07     		lsl	r3, r3, #30
 121 0040 DB0F     		lsr	r3, r3, #31
 122 0042 DBB2     		uxtb	r3, r3
 123 0044 002B     		cmp	r3, #0
 124 0046 08D0     		beq	.L16
  93:../Application/ButtonManager/ButtonManager.c **** 			RFIDCtrl.request.bits.write = 1;
 125              		.loc 1 93 0
 126 0048 984B     		ldr	r3, .L30+8
 127 004a 1A78     		ldrb	r2, [r3]
 128 004c 0121     		mov	r1, #1
 129 004e 0A43     		orr	r2, r1
 130 0050 1A70     		strb	r2, [r3]
  94:../Application/ButtonManager/ButtonManager.c **** 			ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_WAIT_RFID;
 131              		.loc 1 94 0
 132 0052 944B     		ldr	r3, .L30
 133 0054 0222     		mov	r2, #2
 134 0056 9A70     		strb	r2, [r3, #2]
 135 0058 03E0     		b	.L15
 136              	.L16:
  95:../Application/ButtonManager/ButtonManager.c **** 		} else {
  96:../Application/ButtonManager/ButtonManager.c **** 			ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_FINISH;
 137              		.loc 1 96 0
 138 005a 924B     		ldr	r3, .L30
 139 005c 0A22     		mov	r2, #10
 140 005e 9A70     		strb	r2, [r3, #2]
  97:../Application/ButtonManager/ButtonManager.c **** 		}
  98:../Application/ButtonManager/ButtonManager.c **** 		break;
 141              		.loc 1 98 0
 142 0060 1DE1     		b	.L1
 143              	.L15:
 144 0062 1CE1     		b	.L1
 145              	.L5:
  99:../Application/ButtonManager/ButtonManager.c **** 
 100:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_WAIT_RFID :
 101:../Application/ButtonManager/ButtonManager.c **** 		if(ButtonManagerCtrl.operation.bits.read) {
 146              		.loc 1 101 0
 147 0064 8F4B     		ldr	r3, .L30
 148 0066 1B78     		ldrb	r3, [r3]
 149 0068 DB07     		lsl	r3, r3, #31
 150 006a DB0F     		lsr	r3, r3, #31
 151 006c DBB2     		uxtb	r3, r3
 152 006e 002B     		cmp	r3, #0
 153 0070 2AD0     		beq	.L18
 102:../Application/ButtonManager/ButtonManager.c **** 			if(RFIDCtrl.state == RFID_STATE_STANDBY && RFIDCtrl.request.bits.read == 0) {
 154              		.loc 1 102 0
 155 0072 8E4B     		ldr	r3, .L30+8
 156 0074 9B78     		ldrb	r3, [r3, #2]
 157 0076 042B     		cmp	r3, #4
 158 0078 26D1     		bne	.L18
 159              		.loc 1 102 0 is_stmt 0 discriminator 1
 160 007a 8C4B     		ldr	r3, .L30+8
 161 007c 1B78     		ldrb	r3, [r3]
 162 007e 9B07     		lsl	r3, r3, #30
 163 0080 DB0F     		lsr	r3, r3, #31
 164 0082 DBB2     		uxtb	r3, r3
 165 0084 002B     		cmp	r3, #0
 166 0086 1FD1     		bne	.L18
 103:../Application/ButtonManager/ButtonManager.c **** 				if(RFIDCtrl.result == RFID_RESULT_OK) {
 167              		.loc 1 103 0 is_stmt 1
 168 0088 884B     		ldr	r3, .L30+8
 169 008a 1B7A     		ldrb	r3, [r3, #8]
 170 008c 002B     		cmp	r3, #0
 171 008e 18D1     		bne	.L19
 172              	.LBB2:
 104:../Application/ButtonManager/ButtonManager.c **** 					unsigned short result = MemoryManagerWriteLog(RtcGetTime(),MEMORYMANAGER_READ_OPERATION,&SRDEe
 173              		.loc 1 104 0
 174 0090 FFF7FEFF 		bl	RtcGetTime
 175 0094 021C     		mov	r2, r0
 176 0096 864B     		ldr	r3, .L30+12
 177 0098 101C     		mov	r0, r2
 178 009a 0221     		mov	r1, #2
 179 009c 1A1C     		mov	r2, r3
 180 009e FFF7FEFF 		bl	MemoryManagerWriteLog
 181 00a2 031C     		mov	r3, r0
 182 00a4 1A1C     		mov	r2, r3
 183 00a6 BB1D     		add	r3, r7, #6
 184 00a8 1A80     		strh	r2, [r3]
 105:../Application/ButtonManager/ButtonManager.c **** 					if(result == 0) {
 185              		.loc 1 105 0
 186 00aa BB1D     		add	r3, r7, #6
 187 00ac 1B88     		ldrh	r3, [r3]
 188 00ae 002B     		cmp	r3, #0
 189 00b0 03D1     		bne	.L20
 106:../Application/ButtonManager/ButtonManager.c **** 						ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_RFID_READ;
 190              		.loc 1 106 0
 191 00b2 7C4B     		ldr	r3, .L30
 192 00b4 0622     		mov	r2, #6
 193 00b6 9A70     		strb	r2, [r3, #2]
 194 00b8 06E0     		b	.L18
 195              	.L20:
 107:../Application/ButtonManager/ButtonManager.c **** 					} else {
 108:../Application/ButtonManager/ButtonManager.c **** 						ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_LOG_ERROR;
 196              		.loc 1 108 0
 197 00ba 7A4B     		ldr	r3, .L30
 198 00bc 0522     		mov	r2, #5
 199 00be 9A70     		strb	r2, [r3, #2]
 200              	.LBE2:
 201 00c0 02E0     		b	.L18
 202              	.L19:
 109:../Application/ButtonManager/ButtonManager.c **** 					}
 110:../Application/ButtonManager/ButtonManager.c **** 				} else {
 111:../Application/ButtonManager/ButtonManager.c **** 					ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_RFID_ERROR;
 203              		.loc 1 111 0
 204 00c2 784B     		ldr	r3, .L30
 205 00c4 0322     		mov	r2, #3
 206 00c6 9A70     		strb	r2, [r3, #2]
 207              	.L18:
 112:../Application/ButtonManager/ButtonManager.c **** 				}
 113:../Application/ButtonManager/ButtonManager.c **** 			}
 114:../Application/ButtonManager/ButtonManager.c **** 		}
 115:../Application/ButtonManager/ButtonManager.c **** 
 116:../Application/ButtonManager/ButtonManager.c **** 
 117:../Application/ButtonManager/ButtonManager.c **** 		if(ButtonManagerCtrl.operation.bits.write) {
 208              		.loc 1 117 0
 209 00c8 764B     		ldr	r3, .L30
 210 00ca 1B78     		ldrb	r3, [r3]
 211 00cc 9B07     		lsl	r3, r3, #30
 212 00ce DB0F     		lsr	r3, r3, #31
 213 00d0 DBB2     		uxtb	r3, r3
 214 00d2 002B     		cmp	r3, #0
 215 00d4 42D0     		beq	.L22
 118:../Application/ButtonManager/ButtonManager.c **** 			if (RFIDCtrl.state == RFID_STATE_STANDBY && RFIDCtrl.request.bits.write == 0) {
 216              		.loc 1 118 0
 217 00d6 754B     		ldr	r3, .L30+8
 218 00d8 9B78     		ldrb	r3, [r3, #2]
 219 00da 042B     		cmp	r3, #4
 220 00dc 3ED1     		bne	.L22
 221              		.loc 1 118 0 is_stmt 0 discriminator 1
 222 00de 734B     		ldr	r3, .L30+8
 223 00e0 1B78     		ldrb	r3, [r3]
 224 00e2 DB07     		lsl	r3, r3, #31
 225 00e4 DB0F     		lsr	r3, r3, #31
 226 00e6 DBB2     		uxtb	r3, r3
 227 00e8 002B     		cmp	r3, #0
 228 00ea 37D1     		bne	.L22
 119:../Application/ButtonManager/ButtonManager.c **** 				if(RFIDCtrl.result == RFID_RESULT_OK) {
 229              		.loc 1 119 0 is_stmt 1
 230 00ec 6F4B     		ldr	r3, .L30+8
 231 00ee 1B7A     		ldrb	r3, [r3, #8]
 232 00f0 002B     		cmp	r3, #0
 233 00f2 2FD1     		bne	.L23
 234              	.LBB3:
 120:../Application/ButtonManager/ButtonManager.c **** 
 121:../Application/ButtonManager/ButtonManager.c **** 					unsigned short result = MemoryManagerWriteLog(RtcGetTime(),MEMORYMANAGER_WRITE_OPERATION,&SRDE
 235              		.loc 1 121 0
 236 00f4 FFF7FEFF 		bl	RtcGetTime
 237 00f8 021C     		mov	r2, r0
 238 00fa 6D4B     		ldr	r3, .L30+12
 239 00fc 101C     		mov	r0, r2
 240 00fe 0121     		mov	r1, #1
 241 0100 1A1C     		mov	r2, r3
 242 0102 FFF7FEFF 		bl	MemoryManagerWriteLog
 243 0106 031C     		mov	r3, r0
 244 0108 1A1C     		mov	r2, r3
 245 010a 3B1D     		add	r3, r7, #4
 246 010c 1A80     		strh	r2, [r3]
 122:../Application/ButtonManager/ButtonManager.c **** 
 123:../Application/ButtonManager/ButtonManager.c **** 					//Check data written
 124:../Application/ButtonManager/ButtonManager.c **** 					if(SRDEeprom.activationDepth == DivingParameters.depth && SRDEeprom.filterLSB == DivingParamet
 247              		.loc 1 124 0
 248 010e 684B     		ldr	r3, .L30+12
 249 0110 5A79     		ldrb	r2, [r3, #5]
 250 0112 684B     		ldr	r3, .L30+16
 251 0114 1B78     		ldrb	r3, [r3]
 252 0116 9A42     		cmp	r2, r3
 253 0118 17D1     		bne	.L24
 254              		.loc 1 124 0 is_stmt 0 discriminator 1
 255 011a 654B     		ldr	r3, .L30+12
 256 011c DA79     		ldrb	r2, [r3, #7]
 257 011e 654B     		ldr	r3, .L30+16
 258 0120 9B78     		ldrb	r3, [r3, #2]
 259 0122 9A42     		cmp	r2, r3
 260 0124 11D1     		bne	.L24
 261 0126 624B     		ldr	r3, .L30+12
 262 0128 9A79     		ldrb	r2, [r3, #6]
 263 012a 624B     		ldr	r3, .L30+16
 264 012c 5B78     		ldrb	r3, [r3, #1]
 265 012e 9A42     		cmp	r2, r3
 266 0130 0BD1     		bne	.L24
 125:../Application/ButtonManager/ButtonManager.c **** 						if(result == 0) {
 267              		.loc 1 125 0 is_stmt 1
 268 0132 3B1D     		add	r3, r7, #4
 269 0134 1B88     		ldrh	r3, [r3]
 270 0136 002B     		cmp	r3, #0
 271 0138 03D1     		bne	.L25
 126:../Application/ButtonManager/ButtonManager.c **** 							ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_RFID_WRITE;
 272              		.loc 1 126 0
 273 013a 5A4B     		ldr	r3, .L30
 274 013c 0722     		mov	r2, #7
 275 013e 9A70     		strb	r2, [r3, #2]
 125:../Application/ButtonManager/ButtonManager.c **** 						if(result == 0) {
 276              		.loc 1 125 0
 277 0140 07E0     		b	.L27
 278              	.L25:
 127:../Application/ButtonManager/ButtonManager.c **** 						} else {
 128:../Application/ButtonManager/ButtonManager.c **** 							ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_LOG_ERROR;
 279              		.loc 1 128 0
 280 0142 584B     		ldr	r3, .L30
 281 0144 0522     		mov	r2, #5
 282 0146 9A70     		strb	r2, [r3, #2]
 125:../Application/ButtonManager/ButtonManager.c **** 						if(result == 0) {
 283              		.loc 1 125 0
 284 0148 03E0     		b	.L27
 285              	.L24:
 129:../Application/ButtonManager/ButtonManager.c **** 						}
 130:../Application/ButtonManager/ButtonManager.c **** 					} else {
 131:../Application/ButtonManager/ButtonManager.c **** 						ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_RFID_WRITE_ERROR;
 286              		.loc 1 131 0
 287 014a 564B     		ldr	r3, .L30
 288 014c 0422     		mov	r2, #4
 289 014e 9A70     		strb	r2, [r3, #2]
 290              	.LBE3:
 291 0150 04E0     		b	.L22
 292              	.L27:
 293 0152 03E0     		b	.L22
 294              	.L23:
 132:../Application/ButtonManager/ButtonManager.c **** 					}
 133:../Application/ButtonManager/ButtonManager.c **** 
 134:../Application/ButtonManager/ButtonManager.c **** 				} else {
 135:../Application/ButtonManager/ButtonManager.c **** 					ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_RFID_ERROR;
 295              		.loc 1 135 0
 296 0154 534B     		ldr	r3, .L30
 297 0156 0322     		mov	r2, #3
 298 0158 9A70     		strb	r2, [r3, #2]
 136:../Application/ButtonManager/ButtonManager.c **** 				}
 137:../Application/ButtonManager/ButtonManager.c **** 			}
 138:../Application/ButtonManager/ButtonManager.c **** 		}
 139:../Application/ButtonManager/ButtonManager.c **** 		break;
 299              		.loc 1 139 0
 300 015a A0E0     		b	.L1
 301              	.L22:
 302 015c 9FE0     		b	.L1
 303              	.L6:
 140:../Application/ButtonManager/ButtonManager.c **** 
 141:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_DISPLAY_RFID_ERROR :
 142:../Application/ButtonManager/ButtonManager.c **** 		LedSet(LED_RED);
 304              		.loc 1 142 0
 305 015e 564B     		ldr	r3, .L30+20
 306 0160 554A     		ldr	r2, .L30+20
 307 0162 9268     		ldr	r2, [r2, #8]
 308 0164 2021     		mov	r1, #32
 309 0166 0A43     		orr	r2, r1
 310 0168 9A60     		str	r2, [r3, #8]
 143:../Application/ButtonManager/ButtonManager.c **** 		LedClear(LED_GREEN);
 311              		.loc 1 143 0
 312 016a 534B     		ldr	r3, .L30+20
 313 016c 524A     		ldr	r2, .L30+20
 314 016e 5268     		ldr	r2, [r2, #4]
 315 0170 1021     		mov	r1, #16
 316 0172 0A43     		orr	r2, r1
 317 0174 5A60     		str	r2, [r3, #4]
 144:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerDisplayRfidError();
 318              		.loc 1 144 0
 319 0176 FFF7FEFF 		bl	ButtonManagerDisplayRfidError
 145:../Application/ButtonManager/ButtonManager.c **** 		msRef = TickGetMsCounter();
 320              		.loc 1 145 0
 321 017a FFF7FEFF 		bl	TickGetMsCounter
 322 017e 021C     		mov	r2, r0
 323 0180 4E4B     		ldr	r3, .L30+24
 324 0182 1A60     		str	r2, [r3]
 146:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_WAIT_TIME;
 325              		.loc 1 146 0
 326 0184 474B     		ldr	r3, .L30
 327 0186 0822     		mov	r2, #8
 328 0188 9A70     		strb	r2, [r3, #2]
 147:../Application/ButtonManager/ButtonManager.c **** 		break;
 329              		.loc 1 147 0
 330 018a 88E0     		b	.L1
 331              	.L8:
 148:../Application/ButtonManager/ButtonManager.c **** 
 149:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_DISPLAY_LOG_ERROR :
 150:../Application/ButtonManager/ButtonManager.c **** 		LedSet(LED_GREEN);
 332              		.loc 1 150 0
 333 018c 4A4B     		ldr	r3, .L30+20
 334 018e 4A4A     		ldr	r2, .L30+20
 335 0190 9268     		ldr	r2, [r2, #8]
 336 0192 1021     		mov	r1, #16
 337 0194 0A43     		orr	r2, r1
 338 0196 9A60     		str	r2, [r3, #8]
 151:../Application/ButtonManager/ButtonManager.c **** 		LedClear(LED_RED);
 339              		.loc 1 151 0
 340 0198 474B     		ldr	r3, .L30+20
 341 019a 474A     		ldr	r2, .L30+20
 342 019c 5268     		ldr	r2, [r2, #4]
 343 019e 2021     		mov	r1, #32
 344 01a0 0A43     		orr	r2, r1
 345 01a2 5A60     		str	r2, [r3, #4]
 152:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerDisplayLogError();
 346              		.loc 1 152 0
 347 01a4 FFF7FEFF 		bl	ButtonManagerDisplayLogError
 153:../Application/ButtonManager/ButtonManager.c **** 		msRef = TickGetMsCounter();
 348              		.loc 1 153 0
 349 01a8 FFF7FEFF 		bl	TickGetMsCounter
 350 01ac 021C     		mov	r2, r0
 351 01ae 434B     		ldr	r3, .L30+24
 352 01b0 1A60     		str	r2, [r3]
 154:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_WAIT_TIME;
 353              		.loc 1 154 0
 354 01b2 3C4B     		ldr	r3, .L30
 355 01b4 0822     		mov	r2, #8
 356 01b6 9A70     		strb	r2, [r3, #2]
 155:../Application/ButtonManager/ButtonManager.c **** 		break;
 357              		.loc 1 155 0
 358 01b8 71E0     		b	.L1
 359              	.L7:
 156:../Application/ButtonManager/ButtonManager.c **** 
 157:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_DISPLAY_RFID_WRITE_ERROR :
 158:../Application/ButtonManager/ButtonManager.c **** 		LedSet(LED_RED);
 360              		.loc 1 158 0
 361 01ba 3F4B     		ldr	r3, .L30+20
 362 01bc 3E4A     		ldr	r2, .L30+20
 363 01be 9268     		ldr	r2, [r2, #8]
 364 01c0 2021     		mov	r1, #32
 365 01c2 0A43     		orr	r2, r1
 366 01c4 9A60     		str	r2, [r3, #8]
 159:../Application/ButtonManager/ButtonManager.c **** 		LedClear(LED_GREEN);
 367              		.loc 1 159 0
 368 01c6 3C4B     		ldr	r3, .L30+20
 369 01c8 3B4A     		ldr	r2, .L30+20
 370 01ca 5268     		ldr	r2, [r2, #4]
 371 01cc 1021     		mov	r1, #16
 372 01ce 0A43     		orr	r2, r1
 373 01d0 5A60     		str	r2, [r3, #4]
 160:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerDisplayWriteError();
 374              		.loc 1 160 0
 375 01d2 FFF7FEFF 		bl	ButtonManagerDisplayWriteError
 161:../Application/ButtonManager/ButtonManager.c **** 		msRef = TickGetMsCounter();
 376              		.loc 1 161 0
 377 01d6 FFF7FEFF 		bl	TickGetMsCounter
 378 01da 021C     		mov	r2, r0
 379 01dc 374B     		ldr	r3, .L30+24
 380 01de 1A60     		str	r2, [r3]
 162:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_WAIT_TIME;
 381              		.loc 1 162 0
 382 01e0 304B     		ldr	r3, .L30
 383 01e2 0822     		mov	r2, #8
 384 01e4 9A70     		strb	r2, [r3, #2]
 163:../Application/ButtonManager/ButtonManager.c **** 		break;
 385              		.loc 1 163 0
 386 01e6 5AE0     		b	.L1
 387              	.L10:
 164:../Application/ButtonManager/ButtonManager.c **** 
 165:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_DISPLAY_RFID_WRITE :
 166:../Application/ButtonManager/ButtonManager.c **** 		LedSet(LED_GREEN);
 388              		.loc 1 166 0
 389 01e8 334B     		ldr	r3, .L30+20
 390 01ea 334A     		ldr	r2, .L30+20
 391 01ec 9268     		ldr	r2, [r2, #8]
 392 01ee 1021     		mov	r1, #16
 393 01f0 0A43     		orr	r2, r1
 394 01f2 9A60     		str	r2, [r3, #8]
 167:../Application/ButtonManager/ButtonManager.c **** 		LedClear(LED_RED);
 395              		.loc 1 167 0
 396 01f4 304B     		ldr	r3, .L30+20
 397 01f6 304A     		ldr	r2, .L30+20
 398 01f8 5268     		ldr	r2, [r2, #4]
 399 01fa 2021     		mov	r1, #32
 400 01fc 0A43     		orr	r2, r1
 401 01fe 5A60     		str	r2, [r3, #4]
 168:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerDisplayWrite();
 402              		.loc 1 168 0
 403 0200 FFF7FEFF 		bl	ButtonManagerDisplayWrite
 169:../Application/ButtonManager/ButtonManager.c **** 		msRef = TickGetMsCounter();
 404              		.loc 1 169 0
 405 0204 FFF7FEFF 		bl	TickGetMsCounter
 406 0208 021C     		mov	r2, r0
 407 020a 2C4B     		ldr	r3, .L30+24
 408 020c 1A60     		str	r2, [r3]
 170:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_WAIT_TIME;
 409              		.loc 1 170 0
 410 020e 254B     		ldr	r3, .L30
 411 0210 0822     		mov	r2, #8
 412 0212 9A70     		strb	r2, [r3, #2]
 171:../Application/ButtonManager/ButtonManager.c **** 		break;
 413              		.loc 1 171 0
 414 0214 43E0     		b	.L1
 415              	.L9:
 172:../Application/ButtonManager/ButtonManager.c **** 
 173:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_DISPLAY_RFID_READ :
 174:../Application/ButtonManager/ButtonManager.c **** 		LedSet(LED_GREEN);
 416              		.loc 1 174 0
 417 0216 284B     		ldr	r3, .L30+20
 418 0218 274A     		ldr	r2, .L30+20
 419 021a 9268     		ldr	r2, [r2, #8]
 420 021c 1021     		mov	r1, #16
 421 021e 0A43     		orr	r2, r1
 422 0220 9A60     		str	r2, [r3, #8]
 175:../Application/ButtonManager/ButtonManager.c **** 		LedClear(LED_RED);
 423              		.loc 1 175 0
 424 0222 254B     		ldr	r3, .L30+20
 425 0224 244A     		ldr	r2, .L30+20
 426 0226 5268     		ldr	r2, [r2, #4]
 427 0228 2021     		mov	r1, #32
 428 022a 0A43     		orr	r2, r1
 429 022c 5A60     		str	r2, [r3, #4]
 176:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerDisplayRead();
 430              		.loc 1 176 0
 431 022e FFF7FEFF 		bl	ButtonManagerDisplayRead
 177:../Application/ButtonManager/ButtonManager.c **** 		msRef = TickGetMsCounter();
 432              		.loc 1 177 0
 433 0232 FFF7FEFF 		bl	TickGetMsCounter
 434 0236 021C     		mov	r2, r0
 435 0238 204B     		ldr	r3, .L30+24
 436 023a 1A60     		str	r2, [r3]
 178:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_DISPLAY_WAIT_TIME;
 437              		.loc 1 178 0
 438 023c 194B     		ldr	r3, .L30
 439 023e 0822     		mov	r2, #8
 440 0240 9A70     		strb	r2, [r3, #2]
 179:../Application/ButtonManager/ButtonManager.c **** 		break;
 441              		.loc 1 179 0
 442 0242 2CE0     		b	.L1
 443              	.L11:
 180:../Application/ButtonManager/ButtonManager.c **** 
 181:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_DISPLAY_WAIT_TIME :
 182:../Application/ButtonManager/ButtonManager.c **** 		if(TickMilliSecElapsedFrom(msRef)  >= BUTTON_MANAGER_TIME_MS_DISPLAY) {
 444              		.loc 1 182 0
 445 0244 1D4B     		ldr	r3, .L30+24
 446 0246 1B68     		ldr	r3, [r3]
 447 0248 181C     		mov	r0, r3
 448 024a FFF7FEFF 		bl	TickMilliSecElapsedFrom
 449 024e 021C     		mov	r2, r0
 450 0250 1B4B     		ldr	r3, .L30+28
 451 0252 9A42     		cmp	r2, r3
 452 0254 03D9     		bls	.L28
 183:../Application/ButtonManager/ButtonManager.c **** 			ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_WAIT_RELEASE;
 453              		.loc 1 183 0
 454 0256 134B     		ldr	r3, .L30
 455 0258 0922     		mov	r2, #9
 456 025a 9A70     		strb	r2, [r3, #2]
 184:../Application/ButtonManager/ButtonManager.c **** 		}
 185:../Application/ButtonManager/ButtonManager.c **** 		break;
 457              		.loc 1 185 0
 458 025c 1FE0     		b	.L1
 459              	.L28:
 460 025e 1EE0     		b	.L1
 461              	.L12:
 186:../Application/ButtonManager/ButtonManager.c **** 
 187:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_WAIT_RELEASE :
 188:../Application/ButtonManager/ButtonManager.c **** 		if(ButtonReadGetState() == BUTTON_RELEASED && ButtonWriteGetState() == BUTTON_RELEASED) {
 462              		.loc 1 188 0
 463 0260 154B     		ldr	r3, .L30+20
 464 0262 1A69     		ldr	r2, [r3, #16]
 465 0264 0423     		mov	r3, #4
 466 0266 1340     		and	r3, r2
 467 0268 9B08     		lsr	r3, r3, #2
 468 026a 09D1     		bne	.L29
 469              		.loc 1 188 0 is_stmt 0 discriminator 1
 470 026c 124B     		ldr	r3, .L30+20
 471 026e 1A69     		ldr	r2, [r3, #16]
 472 0270 0223     		mov	r3, #2
 473 0272 1340     		and	r3, r2
 474 0274 5B08     		lsr	r3, r3, #1
 475 0276 03D1     		bne	.L29
 189:../Application/ButtonManager/ButtonManager.c **** 			ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_FINISH;
 476              		.loc 1 189 0 is_stmt 1
 477 0278 0A4B     		ldr	r3, .L30
 478 027a 0A22     		mov	r2, #10
 479 027c 9A70     		strb	r2, [r3, #2]
 190:../Application/ButtonManager/ButtonManager.c **** 		}
 191:../Application/ButtonManager/ButtonManager.c **** 		break;
 480              		.loc 1 191 0
 481 027e 0EE0     		b	.L1
 482              	.L29:
 483 0280 0DE0     		b	.L1
 484              	.L13:
 192:../Application/ButtonManager/ButtonManager.c **** 
 193:../Application/ButtonManager/ButtonManager.c **** 	case BUTTONMANAGER_STATE_FINISH :
 194:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_STANDBY;
 485              		.loc 1 194 0
 486 0282 084B     		ldr	r3, .L30
 487 0284 0022     		mov	r2, #0
 488 0286 9A70     		strb	r2, [r3, #2]
 195:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerCtrl.operation.all = 0;
 489              		.loc 1 195 0
 490 0288 064B     		ldr	r3, .L30
 491 028a 0022     		mov	r2, #0
 492 028c 1A80     		strh	r2, [r3]
 196:../Application/ButtonManager/ButtonManager.c **** 		break;
 493              		.loc 1 196 0
 494 028e 06E0     		b	.L1
 495              	.L2:
 197:../Application/ButtonManager/ButtonManager.c **** 
 198:../Application/ButtonManager/ButtonManager.c **** 	default :
 199:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_STANDBY;
 496              		.loc 1 199 0
 497 0290 044B     		ldr	r3, .L30
 498 0292 0022     		mov	r2, #0
 499 0294 9A70     		strb	r2, [r3, #2]
 200:../Application/ButtonManager/ButtonManager.c **** 		ButtonManagerCtrl.operation.all = 0;
 500              		.loc 1 200 0
 501 0296 034B     		ldr	r3, .L30
 502 0298 0022     		mov	r2, #0
 503 029a 1A80     		strh	r2, [r3]
 201:../Application/ButtonManager/ButtonManager.c **** 		break;
 504              		.loc 1 201 0
 505 029c C046     		mov	r8, r8
 506              	.L1:
 202:../Application/ButtonManager/ButtonManager.c **** 
 203:../Application/ButtonManager/ButtonManager.c **** 	}
 204:../Application/ButtonManager/ButtonManager.c **** 
 205:../Application/ButtonManager/ButtonManager.c **** }
 507              		.loc 1 205 0
 508 029e BD46     		mov	sp, r7
 509 02a0 02B0     		add	sp, sp, #8
 510              		@ sp needed
 511 02a2 80BD     		pop	{r7, pc}
 512              	.L31:
 513              		.align	2
 514              	.L30:
 515 02a4 00000000 		.word	ButtonManagerCtrl
 516 02a8 00000000 		.word	.L4
 517 02ac 00000000 		.word	RFIDCtrl
 518 02b0 00000000 		.word	SRDEeprom
 519 02b4 00000000 		.word	DivingParameters
 520 02b8 00F00F40 		.word	1074786304
 521 02bc 00000000 		.word	msRef.5636
 522 02c0 B70B0000 		.word	2999
 523              		.cfi_endproc
 524              	.LFE33:
 526              		.section	.rodata
 527              		.align	2
 528              	.LC0:
 529 0000 50       		.byte	80
 530 0001 65       		.byte	101
 531 0002 72       		.byte	114
 532 0003 72       		.byte	114
 533              		.section	.text.ButtonManagerDisplayProgrammedError,"ax",%progbits
 534              		.align	2
 535              		.global	ButtonManagerDisplayProgrammedError
 536              		.code	16
 537              		.thumb_func
 539              	ButtonManagerDisplayProgrammedError:
 540              	.LFB34:
 206:../Application/ButtonManager/ButtonManager.c **** 
 207:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayProgrammedError (void) {
 541              		.loc 1 207 0
 542              		.cfi_startproc
 543 0000 80B5     		push	{r7, lr}
 544              		.cfi_def_cfa_offset 8
 545              		.cfi_offset 7, -8
 546              		.cfi_offset 14, -4
 547 0002 82B0     		sub	sp, sp, #8
 548              		.cfi_def_cfa_offset 16
 549 0004 00AF     		add	r7, sp, #0
 550              		.cfi_def_cfa_register 7
 208:../Application/ButtonManager/ButtonManager.c **** 
 209:../Application/ButtonManager/ButtonManager.c **** 	char data[DISPLAY_TOTAL_DIGIT] = {'P','e','r','r'};
 551              		.loc 1 209 0
 552 0006 3A1D     		add	r2, r7, #4
 553 0008 094B     		ldr	r3, .L33
 554 000a 111C     		mov	r1, r2
 555 000c 1A1C     		mov	r2, r3
 556 000e 0423     		mov	r3, #4
 557 0010 081C     		mov	r0, r1
 558 0012 111C     		mov	r1, r2
 559 0014 1A1C     		mov	r2, r3
 560 0016 FFF7FEFF 		bl	memcpy
 210:../Application/ButtonManager/ButtonManager.c **** 
 211:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetPower(DISPLAY_POWER_ON);
 561              		.loc 1 211 0
 562 001a 0120     		mov	r0, #1
 563 001c FFF7FEFF 		bl	DisplaySetPower
 212:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetDataDisplayed(data);
 564              		.loc 1 212 0
 565 0020 3B1D     		add	r3, r7, #4
 566 0022 181C     		mov	r0, r3
 567 0024 FFF7FEFF 		bl	DisplaySetDataDisplayed
 213:../Application/ButtonManager/ButtonManager.c **** }
 568              		.loc 1 213 0
 569 0028 BD46     		mov	sp, r7
 570 002a 02B0     		add	sp, sp, #8
 571              		@ sp needed
 572 002c 80BD     		pop	{r7, pc}
 573              	.L34:
 574 002e C046     		.align	2
 575              	.L33:
 576 0030 00000000 		.word	.LC0
 577              		.cfi_endproc
 578              	.LFE34:
 580              		.section	.rodata
 581              		.align	2
 582              	.LC1:
 583 0004 44       		.byte	68
 584 0005 65       		.byte	101
 585 0006 72       		.byte	114
 586 0007 72       		.byte	114
 587              		.section	.text.ButtonManagerDisplayDateError,"ax",%progbits
 588              		.align	2
 589              		.global	ButtonManagerDisplayDateError
 590              		.code	16
 591              		.thumb_func
 593              	ButtonManagerDisplayDateError:
 594              	.LFB35:
 214:../Application/ButtonManager/ButtonManager.c **** 
 215:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayDateError (void) {
 595              		.loc 1 215 0
 596              		.cfi_startproc
 597 0000 80B5     		push	{r7, lr}
 598              		.cfi_def_cfa_offset 8
 599              		.cfi_offset 7, -8
 600              		.cfi_offset 14, -4
 601 0002 82B0     		sub	sp, sp, #8
 602              		.cfi_def_cfa_offset 16
 603 0004 00AF     		add	r7, sp, #0
 604              		.cfi_def_cfa_register 7
 216:../Application/ButtonManager/ButtonManager.c **** 
 217:../Application/ButtonManager/ButtonManager.c **** 	char data[DISPLAY_TOTAL_DIGIT] = {'D','e','r','r'};
 605              		.loc 1 217 0
 606 0006 3A1D     		add	r2, r7, #4
 607 0008 094B     		ldr	r3, .L36
 608 000a 111C     		mov	r1, r2
 609 000c 1A1C     		mov	r2, r3
 610 000e 0423     		mov	r3, #4
 611 0010 081C     		mov	r0, r1
 612 0012 111C     		mov	r1, r2
 613 0014 1A1C     		mov	r2, r3
 614 0016 FFF7FEFF 		bl	memcpy
 218:../Application/ButtonManager/ButtonManager.c **** 
 219:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetPower(DISPLAY_POWER_ON);
 615              		.loc 1 219 0
 616 001a 0120     		mov	r0, #1
 617 001c FFF7FEFF 		bl	DisplaySetPower
 220:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetDataDisplayed(data);
 618              		.loc 1 220 0
 619 0020 3B1D     		add	r3, r7, #4
 620 0022 181C     		mov	r0, r3
 621 0024 FFF7FEFF 		bl	DisplaySetDataDisplayed
 221:../Application/ButtonManager/ButtonManager.c **** 
 222:../Application/ButtonManager/ButtonManager.c **** }
 622              		.loc 1 222 0
 623 0028 BD46     		mov	sp, r7
 624 002a 02B0     		add	sp, sp, #8
 625              		@ sp needed
 626 002c 80BD     		pop	{r7, pc}
 627              	.L37:
 628 002e C046     		.align	2
 629              	.L36:
 630 0030 04000000 		.word	.LC1
 631              		.cfi_endproc
 632              	.LFE35:
 634              		.section	.rodata
 635              		.align	2
 636              	.LC2:
 637 0008 52       		.byte	82
 638 0009 65       		.byte	101
 639 000a 72       		.byte	114
 640 000b 72       		.byte	114
 641              		.section	.text.ButtonManagerDisplayRfidError,"ax",%progbits
 642              		.align	2
 643              		.global	ButtonManagerDisplayRfidError
 644              		.code	16
 645              		.thumb_func
 647              	ButtonManagerDisplayRfidError:
 648              	.LFB36:
 223:../Application/ButtonManager/ButtonManager.c **** 
 224:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayRfidError (void) {
 649              		.loc 1 224 0
 650              		.cfi_startproc
 651 0000 80B5     		push	{r7, lr}
 652              		.cfi_def_cfa_offset 8
 653              		.cfi_offset 7, -8
 654              		.cfi_offset 14, -4
 655 0002 82B0     		sub	sp, sp, #8
 656              		.cfi_def_cfa_offset 16
 657 0004 00AF     		add	r7, sp, #0
 658              		.cfi_def_cfa_register 7
 225:../Application/ButtonManager/ButtonManager.c **** 
 226:../Application/ButtonManager/ButtonManager.c **** 	char data[DISPLAY_TOTAL_DIGIT] = {'R','e','r','r'};
 659              		.loc 1 226 0
 660 0006 3A1D     		add	r2, r7, #4
 661 0008 094B     		ldr	r3, .L39
 662 000a 111C     		mov	r1, r2
 663 000c 1A1C     		mov	r2, r3
 664 000e 0423     		mov	r3, #4
 665 0010 081C     		mov	r0, r1
 666 0012 111C     		mov	r1, r2
 667 0014 1A1C     		mov	r2, r3
 668 0016 FFF7FEFF 		bl	memcpy
 227:../Application/ButtonManager/ButtonManager.c **** 
 228:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetPower(DISPLAY_POWER_ON);
 669              		.loc 1 228 0
 670 001a 0120     		mov	r0, #1
 671 001c FFF7FEFF 		bl	DisplaySetPower
 229:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetDataDisplayed(data);
 672              		.loc 1 229 0
 673 0020 3B1D     		add	r3, r7, #4
 674 0022 181C     		mov	r0, r3
 675 0024 FFF7FEFF 		bl	DisplaySetDataDisplayed
 230:../Application/ButtonManager/ButtonManager.c **** }
 676              		.loc 1 230 0
 677 0028 BD46     		mov	sp, r7
 678 002a 02B0     		add	sp, sp, #8
 679              		@ sp needed
 680 002c 80BD     		pop	{r7, pc}
 681              	.L40:
 682 002e C046     		.align	2
 683              	.L39:
 684 0030 08000000 		.word	.LC2
 685              		.cfi_endproc
 686              	.LFE36:
 688              		.global	__aeabi_uidivmod
 689              		.global	__aeabi_uidiv
 690              		.section	.text.ButtonManagerDisplayRead,"ax",%progbits
 691              		.align	2
 692              		.global	ButtonManagerDisplayRead
 693              		.code	16
 694              		.thumb_func
 696              	ButtonManagerDisplayRead:
 697              	.LFB37:
 231:../Application/ButtonManager/ButtonManager.c **** 
 232:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayRead (void) {
 698              		.loc 1 232 0
 699              		.cfi_startproc
 700 0000 90B5     		push	{r4, r7, lr}
 701              		.cfi_def_cfa_offset 12
 702              		.cfi_offset 4, -12
 703              		.cfi_offset 7, -8
 704              		.cfi_offset 14, -4
 705 0002 83B0     		sub	sp, sp, #12
 706              		.cfi_def_cfa_offset 24
 707 0004 00AF     		add	r7, sp, #0
 708              		.cfi_def_cfa_register 7
 233:../Application/ButtonManager/ButtonManager.c **** 
 234:../Application/ButtonManager/ButtonManager.c **** 	char data[DISPLAY_TOTAL_DIGIT] = {0};
 709              		.loc 1 234 0
 710 0006 3B1C     		mov	r3, r7
 711 0008 0022     		mov	r2, #0
 712 000a 1A60     		str	r2, [r3]
 235:../Application/ButtonManager/ButtonManager.c **** 
 236:../Application/ButtonManager/ButtonManager.c **** 	unsigned char nbr = SRDEeprom.activationDepth;
 713              		.loc 1 236 0
 714 000c FB1D     		add	r3, r7, #7
 715 000e 544A     		ldr	r2, .L51
 716 0010 5279     		ldrb	r2, [r2, #5]
 717 0012 1A70     		strb	r2, [r3]
 237:../Application/ButtonManager/ButtonManager.c **** 
 238:../Application/ButtonManager/ButtonManager.c **** 	data[DISPLAY_TOTAL_DIGIT-1] = (nbr % 10) + '0';
 718              		.loc 1 238 0
 719 0014 FB1D     		add	r3, r7, #7
 720 0016 1B78     		ldrb	r3, [r3]
 721 0018 181C     		mov	r0, r3
 722 001a 0A21     		mov	r1, #10
 723 001c FFF7FEFF 		bl	__aeabi_uidivmod
 724 0020 0B1C     		mov	r3, r1
 725 0022 DBB2     		uxtb	r3, r3
 726 0024 3033     		add	r3, r3, #48
 727 0026 DBB2     		uxtb	r3, r3
 728 0028 DAB2     		uxtb	r2, r3
 729 002a 3B1C     		mov	r3, r7
 730 002c DA70     		strb	r2, [r3, #3]
 239:../Application/ButtonManager/ButtonManager.c **** 	nbr /= 10;
 731              		.loc 1 239 0
 732 002e FC1D     		add	r4, r7, #7
 733 0030 FB1D     		add	r3, r7, #7
 734 0032 1B78     		ldrb	r3, [r3]
 735 0034 181C     		mov	r0, r3
 736 0036 0A21     		mov	r1, #10
 737 0038 FFF7FEFF 		bl	__aeabi_uidiv
 738 003c 031C     		mov	r3, r0
 739 003e 2370     		strb	r3, [r4]
 240:../Application/ButtonManager/ButtonManager.c **** 	if(nbr != 0) {
 740              		.loc 1 240 0
 741 0040 FB1D     		add	r3, r7, #7
 742 0042 1B78     		ldrb	r3, [r3]
 743 0044 002B     		cmp	r3, #0
 744 0046 26D0     		beq	.L42
 241:../Application/ButtonManager/ButtonManager.c **** 		data[DISPLAY_TOTAL_DIGIT-2] = (nbr % 10) + '0';
 745              		.loc 1 241 0
 746 0048 FB1D     		add	r3, r7, #7
 747 004a 1B78     		ldrb	r3, [r3]
 748 004c 181C     		mov	r0, r3
 749 004e 0A21     		mov	r1, #10
 750 0050 FFF7FEFF 		bl	__aeabi_uidivmod
 751 0054 0B1C     		mov	r3, r1
 752 0056 DBB2     		uxtb	r3, r3
 753 0058 3033     		add	r3, r3, #48
 754 005a DBB2     		uxtb	r3, r3
 755 005c DAB2     		uxtb	r2, r3
 756 005e 3B1C     		mov	r3, r7
 757 0060 9A70     		strb	r2, [r3, #2]
 242:../Application/ButtonManager/ButtonManager.c **** 
 243:../Application/ButtonManager/ButtonManager.c **** 		nbr /= 10;
 758              		.loc 1 243 0
 759 0062 FC1D     		add	r4, r7, #7
 760 0064 FB1D     		add	r3, r7, #7
 761 0066 1B78     		ldrb	r3, [r3]
 762 0068 181C     		mov	r0, r3
 763 006a 0A21     		mov	r1, #10
 764 006c FFF7FEFF 		bl	__aeabi_uidiv
 765 0070 031C     		mov	r3, r0
 766 0072 2370     		strb	r3, [r4]
 244:../Application/ButtonManager/ButtonManager.c **** 		if(nbr != 0) {
 767              		.loc 1 244 0
 768 0074 FB1D     		add	r3, r7, #7
 769 0076 1B78     		ldrb	r3, [r3]
 770 0078 002B     		cmp	r3, #0
 771 007a 0CD0     		beq	.L42
 245:../Application/ButtonManager/ButtonManager.c **** 			data[DISPLAY_TOTAL_DIGIT-3] = (nbr % 10) + '0';
 772              		.loc 1 245 0
 773 007c FB1D     		add	r3, r7, #7
 774 007e 1B78     		ldrb	r3, [r3]
 775 0080 181C     		mov	r0, r3
 776 0082 0A21     		mov	r1, #10
 777 0084 FFF7FEFF 		bl	__aeabi_uidivmod
 778 0088 0B1C     		mov	r3, r1
 779 008a DBB2     		uxtb	r3, r3
 780 008c 3033     		add	r3, r3, #48
 781 008e DBB2     		uxtb	r3, r3
 782 0090 DAB2     		uxtb	r2, r3
 783 0092 3B1C     		mov	r3, r7
 784 0094 5A70     		strb	r2, [r3, #1]
 785              	.L42:
 246:../Application/ButtonManager/ButtonManager.c **** 		}
 247:../Application/ButtonManager/ButtonManager.c **** 	}
 248:../Application/ButtonManager/ButtonManager.c **** 
 249:../Application/ButtonManager/ButtonManager.c **** 	if(SRDEeprom.errorStatus.all != 0) {
 786              		.loc 1 249 0
 787 0096 324B     		ldr	r3, .L51
 788 0098 DB78     		ldrb	r3, [r3, #3]
 789 009a 002B     		cmp	r3, #0
 790 009c 56D0     		beq	.L43
 250:../Application/ButtonManager/ButtonManager.c **** 		if(SRDEeprom.errorStatus.bits.battery) {
 791              		.loc 1 250 0
 792 009e 304B     		ldr	r3, .L51
 793 00a0 DB78     		ldrb	r3, [r3, #3]
 794 00a2 DB06     		lsl	r3, r3, #27
 795 00a4 DB0F     		lsr	r3, r3, #31
 796 00a6 DBB2     		uxtb	r3, r3
 797 00a8 002B     		cmp	r3, #0
 798 00aa 03D0     		beq	.L44
 251:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'B';
 799              		.loc 1 251 0
 800 00ac 3B1C     		mov	r3, r7
 801 00ae 4222     		mov	r2, #66
 802 00b0 1A70     		strb	r2, [r3]
 803 00b2 4BE0     		b	.L43
 804              	.L44:
 252:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.supercap) {
 805              		.loc 1 252 0
 806 00b4 2A4B     		ldr	r3, .L51
 807 00b6 DB78     		ldrb	r3, [r3, #3]
 808 00b8 9B06     		lsl	r3, r3, #26
 809 00ba DB0F     		lsr	r3, r3, #31
 810 00bc DBB2     		uxtb	r3, r3
 811 00be 002B     		cmp	r3, #0
 812 00c0 03D0     		beq	.L45
 253:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'C';
 813              		.loc 1 253 0
 814 00c2 3B1C     		mov	r3, r7
 815 00c4 4322     		mov	r2, #67
 816 00c6 1A70     		strb	r2, [r3]
 817 00c8 40E0     		b	.L43
 818              	.L45:
 254:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.pressure) {
 819              		.loc 1 254 0
 820 00ca 254B     		ldr	r3, .L51
 821 00cc DB78     		ldrb	r3, [r3, #3]
 822 00ce 9B07     		lsl	r3, r3, #30
 823 00d0 DB0F     		lsr	r3, r3, #31
 824 00d2 DBB2     		uxtb	r3, r3
 825 00d4 002B     		cmp	r3, #0
 826 00d6 03D0     		beq	.L46
 255:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'P';
 827              		.loc 1 255 0
 828 00d8 3B1C     		mov	r3, r7
 829 00da 5022     		mov	r2, #80
 830 00dc 1A70     		strb	r2, [r3]
 831 00de 35E0     		b	.L43
 832              	.L46:
 256:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.output) {
 833              		.loc 1 256 0
 834 00e0 1F4B     		ldr	r3, .L51
 835 00e2 DB78     		ldrb	r3, [r3, #3]
 836 00e4 DB07     		lsl	r3, r3, #31
 837 00e6 DB0F     		lsr	r3, r3, #31
 838 00e8 DBB2     		uxtb	r3, r3
 839 00ea 002B     		cmp	r3, #0
 840 00ec 03D0     		beq	.L47
 257:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'L';
 841              		.loc 1 257 0
 842 00ee 3B1C     		mov	r3, r7
 843 00f0 4C22     		mov	r2, #76
 844 00f2 1A70     		strb	r2, [r3]
 845 00f4 2AE0     		b	.L43
 846              	.L47:
 258:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.current) {
 847              		.loc 1 258 0
 848 00f6 1A4B     		ldr	r3, .L51
 849 00f8 DB78     		ldrb	r3, [r3, #3]
 850 00fa 5B07     		lsl	r3, r3, #29
 851 00fc DB0F     		lsr	r3, r3, #31
 852 00fe DBB2     		uxtb	r3, r3
 853 0100 002B     		cmp	r3, #0
 854 0102 03D0     		beq	.L48
 259:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'A';
 855              		.loc 1 259 0
 856 0104 3B1C     		mov	r3, r7
 857 0106 4122     		mov	r2, #65
 858 0108 1A70     		strb	r2, [r3]
 859 010a 1FE0     		b	.L43
 860              	.L48:
 260:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.eeprom) {
 861              		.loc 1 260 0
 862 010c 144B     		ldr	r3, .L51
 863 010e DB78     		ldrb	r3, [r3, #3]
 864 0110 5B06     		lsl	r3, r3, #25
 865 0112 DB0F     		lsr	r3, r3, #31
 866 0114 DBB2     		uxtb	r3, r3
 867 0116 002B     		cmp	r3, #0
 868 0118 03D0     		beq	.L49
 261:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'E';
 869              		.loc 1 261 0
 870 011a 3B1C     		mov	r3, r7
 871 011c 4522     		mov	r2, #69
 872 011e 1A70     		strb	r2, [r3]
 873 0120 14E0     		b	.L43
 874              	.L49:
 262:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.timer) {
 875              		.loc 1 262 0
 876 0122 0F4B     		ldr	r3, .L51
 877 0124 DB78     		ldrb	r3, [r3, #3]
 878 0126 1B07     		lsl	r3, r3, #28
 879 0128 DB0F     		lsr	r3, r3, #31
 880 012a DBB2     		uxtb	r3, r3
 881 012c 002B     		cmp	r3, #0
 882 012e 03D0     		beq	.L50
 263:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'T';
 883              		.loc 1 263 0
 884 0130 3B1C     		mov	r3, r7
 885 0132 5422     		mov	r2, #84
 886 0134 1A70     		strb	r2, [r3]
 887 0136 09E0     		b	.L43
 888              	.L50:
 264:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.watchdog) {
 889              		.loc 1 264 0
 890 0138 094B     		ldr	r3, .L51
 891 013a DB78     		ldrb	r3, [r3, #3]
 892 013c 1B06     		lsl	r3, r3, #24
 893 013e DB0F     		lsr	r3, r3, #31
 894 0140 DBB2     		uxtb	r3, r3
 895 0142 002B     		cmp	r3, #0
 896 0144 02D0     		beq	.L43
 265:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'W';
 897              		.loc 1 265 0
 898 0146 3B1C     		mov	r3, r7
 899 0148 5722     		mov	r2, #87
 900 014a 1A70     		strb	r2, [r3]
 901              	.L43:
 266:../Application/ButtonManager/ButtonManager.c **** 		}
 267:../Application/ButtonManager/ButtonManager.c **** 	}
 268:../Application/ButtonManager/ButtonManager.c **** 
 269:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetPower(DISPLAY_POWER_ON);
 902              		.loc 1 269 0
 903 014c 0120     		mov	r0, #1
 904 014e FFF7FEFF 		bl	DisplaySetPower
 270:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetDataDisplayed(data);
 905              		.loc 1 270 0
 906 0152 3B1C     		mov	r3, r7
 907 0154 181C     		mov	r0, r3
 908 0156 FFF7FEFF 		bl	DisplaySetDataDisplayed
 271:../Application/ButtonManager/ButtonManager.c **** }
 909              		.loc 1 271 0
 910 015a BD46     		mov	sp, r7
 911 015c 03B0     		add	sp, sp, #12
 912              		@ sp needed
 913 015e 90BD     		pop	{r4, r7, pc}
 914              	.L52:
 915              		.align	2
 916              	.L51:
 917 0160 00000000 		.word	SRDEeprom
 918              		.cfi_endproc
 919              	.LFE37:
 921              		.section	.text.ButtonManagerDisplayWrite,"ax",%progbits
 922              		.align	2
 923              		.global	ButtonManagerDisplayWrite
 924              		.code	16
 925              		.thumb_func
 927              	ButtonManagerDisplayWrite:
 928              	.LFB38:
 272:../Application/ButtonManager/ButtonManager.c **** 
 273:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayWrite (void) {
 929              		.loc 1 273 0
 930              		.cfi_startproc
 931 0000 90B5     		push	{r4, r7, lr}
 932              		.cfi_def_cfa_offset 12
 933              		.cfi_offset 4, -12
 934              		.cfi_offset 7, -8
 935              		.cfi_offset 14, -4
 936 0002 83B0     		sub	sp, sp, #12
 937              		.cfi_def_cfa_offset 24
 938 0004 00AF     		add	r7, sp, #0
 939              		.cfi_def_cfa_register 7
 274:../Application/ButtonManager/ButtonManager.c **** 
 275:../Application/ButtonManager/ButtonManager.c **** 	char data[DISPLAY_TOTAL_DIGIT] = {0};
 940              		.loc 1 275 0
 941 0006 3B1C     		mov	r3, r7
 942 0008 0022     		mov	r2, #0
 943 000a 1A60     		str	r2, [r3]
 276:../Application/ButtonManager/ButtonManager.c **** 
 277:../Application/ButtonManager/ButtonManager.c **** 	unsigned char nbr = SRDEeprom.activationDepth;
 944              		.loc 1 277 0
 945 000c FB1D     		add	r3, r7, #7
 946 000e 274A     		ldr	r2, .L55
 947 0010 5279     		ldrb	r2, [r2, #5]
 948 0012 1A70     		strb	r2, [r3]
 278:../Application/ButtonManager/ButtonManager.c **** 
 279:../Application/ButtonManager/ButtonManager.c **** 	data[DISPLAY_TOTAL_DIGIT-1] = (nbr % 10) + '0';
 949              		.loc 1 279 0
 950 0014 FB1D     		add	r3, r7, #7
 951 0016 1B78     		ldrb	r3, [r3]
 952 0018 181C     		mov	r0, r3
 953 001a 0A21     		mov	r1, #10
 954 001c FFF7FEFF 		bl	__aeabi_uidivmod
 955 0020 0B1C     		mov	r3, r1
 956 0022 DBB2     		uxtb	r3, r3
 957 0024 3033     		add	r3, r3, #48
 958 0026 DBB2     		uxtb	r3, r3
 959 0028 DAB2     		uxtb	r2, r3
 960 002a 3B1C     		mov	r3, r7
 961 002c DA70     		strb	r2, [r3, #3]
 280:../Application/ButtonManager/ButtonManager.c **** 	nbr /= 10;
 962              		.loc 1 280 0
 963 002e FC1D     		add	r4, r7, #7
 964 0030 FB1D     		add	r3, r7, #7
 965 0032 1B78     		ldrb	r3, [r3]
 966 0034 181C     		mov	r0, r3
 967 0036 0A21     		mov	r1, #10
 968 0038 FFF7FEFF 		bl	__aeabi_uidiv
 969 003c 031C     		mov	r3, r0
 970 003e 2370     		strb	r3, [r4]
 281:../Application/ButtonManager/ButtonManager.c **** 	if(nbr != 0) {
 971              		.loc 1 281 0
 972 0040 FB1D     		add	r3, r7, #7
 973 0042 1B78     		ldrb	r3, [r3]
 974 0044 002B     		cmp	r3, #0
 975 0046 26D0     		beq	.L54
 282:../Application/ButtonManager/ButtonManager.c **** 		data[DISPLAY_TOTAL_DIGIT-2] = (nbr % 10) + '0';
 976              		.loc 1 282 0
 977 0048 FB1D     		add	r3, r7, #7
 978 004a 1B78     		ldrb	r3, [r3]
 979 004c 181C     		mov	r0, r3
 980 004e 0A21     		mov	r1, #10
 981 0050 FFF7FEFF 		bl	__aeabi_uidivmod
 982 0054 0B1C     		mov	r3, r1
 983 0056 DBB2     		uxtb	r3, r3
 984 0058 3033     		add	r3, r3, #48
 985 005a DBB2     		uxtb	r3, r3
 986 005c DAB2     		uxtb	r2, r3
 987 005e 3B1C     		mov	r3, r7
 988 0060 9A70     		strb	r2, [r3, #2]
 283:../Application/ButtonManager/ButtonManager.c **** 
 284:../Application/ButtonManager/ButtonManager.c **** 		nbr /= 10;
 989              		.loc 1 284 0
 990 0062 FC1D     		add	r4, r7, #7
 991 0064 FB1D     		add	r3, r7, #7
 992 0066 1B78     		ldrb	r3, [r3]
 993 0068 181C     		mov	r0, r3
 994 006a 0A21     		mov	r1, #10
 995 006c FFF7FEFF 		bl	__aeabi_uidiv
 996 0070 031C     		mov	r3, r0
 997 0072 2370     		strb	r3, [r4]
 285:../Application/ButtonManager/ButtonManager.c **** 		if(nbr != 0) {
 998              		.loc 1 285 0
 999 0074 FB1D     		add	r3, r7, #7
 1000 0076 1B78     		ldrb	r3, [r3]
 1001 0078 002B     		cmp	r3, #0
 1002 007a 0CD0     		beq	.L54
 286:../Application/ButtonManager/ButtonManager.c **** 			data[DISPLAY_TOTAL_DIGIT-3] = (nbr % 10) + '0';
 1003              		.loc 1 286 0
 1004 007c FB1D     		add	r3, r7, #7
 1005 007e 1B78     		ldrb	r3, [r3]
 1006 0080 181C     		mov	r0, r3
 1007 0082 0A21     		mov	r1, #10
 1008 0084 FFF7FEFF 		bl	__aeabi_uidivmod
 1009 0088 0B1C     		mov	r3, r1
 1010 008a DBB2     		uxtb	r3, r3
 1011 008c 3033     		add	r3, r3, #48
 1012 008e DBB2     		uxtb	r3, r3
 1013 0090 DAB2     		uxtb	r2, r3
 1014 0092 3B1C     		mov	r3, r7
 1015 0094 5A70     		strb	r2, [r3, #1]
 1016              	.L54:
 287:../Application/ButtonManager/ButtonManager.c **** 		}
 288:../Application/ButtonManager/ButtonManager.c **** 	}
 289:../Application/ButtonManager/ButtonManager.c **** 
 290:../Application/ButtonManager/ButtonManager.c **** 	/*if(SRDEeprom.errorStatus.all != 0) {
 291:../Application/ButtonManager/ButtonManager.c **** 		if(SRDEeprom.errorStatus.bits.battery) {
 292:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'B';
 293:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.current) {
 294:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'A';
 295:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.eeprom) {
 296:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'E';
 297:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.output) {
 298:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'F';
 299:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.pressure) {
 300:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'P';
 301:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.supercap) {
 302:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'C';
 303:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.timer) {
 304:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'T';
 305:../Application/ButtonManager/ButtonManager.c **** 		} else if(SRDEeprom.errorStatus.bits.watchdog) {
 306:../Application/ButtonManager/ButtonManager.c **** 			data[0] = 'W';
 307:../Application/ButtonManager/ButtonManager.c **** 		}
 308:../Application/ButtonManager/ButtonManager.c **** 	}*/
 309:../Application/ButtonManager/ButtonManager.c **** 
 310:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetPower(DISPLAY_POWER_ON);
 1017              		.loc 1 310 0
 1018 0096 0120     		mov	r0, #1
 1019 0098 FFF7FEFF 		bl	DisplaySetPower
 311:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetDataDisplayed(data);
 1020              		.loc 1 311 0
 1021 009c 3B1C     		mov	r3, r7
 1022 009e 181C     		mov	r0, r3
 1023 00a0 FFF7FEFF 		bl	DisplaySetDataDisplayed
 312:../Application/ButtonManager/ButtonManager.c **** }
 1024              		.loc 1 312 0
 1025 00a4 BD46     		mov	sp, r7
 1026 00a6 03B0     		add	sp, sp, #12
 1027              		@ sp needed
 1028 00a8 90BD     		pop	{r4, r7, pc}
 1029              	.L56:
 1030 00aa C046     		.align	2
 1031              	.L55:
 1032 00ac 00000000 		.word	SRDEeprom
 1033              		.cfi_endproc
 1034              	.LFE38:
 1036              		.section	.rodata
 1037              		.align	2
 1038              	.LC3:
 1039 000c 57       		.byte	87
 1040 000d 45       		.byte	69
 1041 000e 72       		.byte	114
 1042 000f 72       		.byte	114
 1043              		.section	.text.ButtonManagerDisplayWriteError,"ax",%progbits
 1044              		.align	2
 1045              		.global	ButtonManagerDisplayWriteError
 1046              		.code	16
 1047              		.thumb_func
 1049              	ButtonManagerDisplayWriteError:
 1050              	.LFB39:
 313:../Application/ButtonManager/ButtonManager.c **** 
 314:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayWriteError (void) {
 1051              		.loc 1 314 0
 1052              		.cfi_startproc
 1053 0000 80B5     		push	{r7, lr}
 1054              		.cfi_def_cfa_offset 8
 1055              		.cfi_offset 7, -8
 1056              		.cfi_offset 14, -4
 1057 0002 82B0     		sub	sp, sp, #8
 1058              		.cfi_def_cfa_offset 16
 1059 0004 00AF     		add	r7, sp, #0
 1060              		.cfi_def_cfa_register 7
 315:../Application/ButtonManager/ButtonManager.c **** 	char data[DISPLAY_TOTAL_DIGIT] = {'W','E','r','r'};
 1061              		.loc 1 315 0
 1062 0006 3A1D     		add	r2, r7, #4
 1063 0008 094B     		ldr	r3, .L58
 1064 000a 111C     		mov	r1, r2
 1065 000c 1A1C     		mov	r2, r3
 1066 000e 0423     		mov	r3, #4
 1067 0010 081C     		mov	r0, r1
 1068 0012 111C     		mov	r1, r2
 1069 0014 1A1C     		mov	r2, r3
 1070 0016 FFF7FEFF 		bl	memcpy
 316:../Application/ButtonManager/ButtonManager.c **** 
 317:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetPower(DISPLAY_POWER_ON);
 1071              		.loc 1 317 0
 1072 001a 0120     		mov	r0, #1
 1073 001c FFF7FEFF 		bl	DisplaySetPower
 318:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetDataDisplayed(data);
 1074              		.loc 1 318 0
 1075 0020 3B1D     		add	r3, r7, #4
 1076 0022 181C     		mov	r0, r3
 1077 0024 FFF7FEFF 		bl	DisplaySetDataDisplayed
 319:../Application/ButtonManager/ButtonManager.c **** }
 1078              		.loc 1 319 0
 1079 0028 BD46     		mov	sp, r7
 1080 002a 02B0     		add	sp, sp, #8
 1081              		@ sp needed
 1082 002c 80BD     		pop	{r7, pc}
 1083              	.L59:
 1084 002e C046     		.align	2
 1085              	.L58:
 1086 0030 0C000000 		.word	.LC3
 1087              		.cfi_endproc
 1088              	.LFE39:
 1090              		.section	.rodata
 1091              		.align	2
 1092              	.LC4:
 1093 0010 45       		.byte	69
 1094 0011 4C       		.byte	76
 1095 0012 6F       		.byte	111
 1096 0013 67       		.byte	103
 1097              		.section	.text.ButtonManagerDisplayLogError,"ax",%progbits
 1098              		.align	2
 1099              		.global	ButtonManagerDisplayLogError
 1100              		.code	16
 1101              		.thumb_func
 1103              	ButtonManagerDisplayLogError:
 1104              	.LFB40:
 320:../Application/ButtonManager/ButtonManager.c **** 
 321:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayLogError (void) {
 1105              		.loc 1 321 0
 1106              		.cfi_startproc
 1107 0000 80B5     		push	{r7, lr}
 1108              		.cfi_def_cfa_offset 8
 1109              		.cfi_offset 7, -8
 1110              		.cfi_offset 14, -4
 1111 0002 82B0     		sub	sp, sp, #8
 1112              		.cfi_def_cfa_offset 16
 1113 0004 00AF     		add	r7, sp, #0
 1114              		.cfi_def_cfa_register 7
 322:../Application/ButtonManager/ButtonManager.c **** 	char data[DISPLAY_TOTAL_DIGIT] = {'E','L','o','g'};
 1115              		.loc 1 322 0
 1116 0006 3A1D     		add	r2, r7, #4
 1117 0008 094B     		ldr	r3, .L61
 1118 000a 111C     		mov	r1, r2
 1119 000c 1A1C     		mov	r2, r3
 1120 000e 0423     		mov	r3, #4
 1121 0010 081C     		mov	r0, r1
 1122 0012 111C     		mov	r1, r2
 1123 0014 1A1C     		mov	r2, r3
 1124 0016 FFF7FEFF 		bl	memcpy
 323:../Application/ButtonManager/ButtonManager.c **** 
 324:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetPower(DISPLAY_POWER_ON);
 1125              		.loc 1 324 0
 1126 001a 0120     		mov	r0, #1
 1127 001c FFF7FEFF 		bl	DisplaySetPower
 325:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetDataDisplayed(data);
 1128              		.loc 1 325 0
 1129 0020 3B1D     		add	r3, r7, #4
 1130 0022 181C     		mov	r0, r3
 1131 0024 FFF7FEFF 		bl	DisplaySetDataDisplayed
 326:../Application/ButtonManager/ButtonManager.c **** }
 1132              		.loc 1 326 0
 1133 0028 BD46     		mov	sp, r7
 1134 002a 02B0     		add	sp, sp, #8
 1135              		@ sp needed
 1136 002c 80BD     		pop	{r7, pc}
 1137              	.L62:
 1138 002e C046     		.align	2
 1139              	.L61:
 1140 0030 10000000 		.word	.LC4
 1141              		.cfi_endproc
 1142              	.LFE40:
 1144              		.section	.text.ButtonManagerDisplayNone,"ax",%progbits
 1145              		.align	2
 1146              		.global	ButtonManagerDisplayNone
 1147              		.code	16
 1148              		.thumb_func
 1150              	ButtonManagerDisplayNone:
 1151              	.LFB41:
 327:../Application/ButtonManager/ButtonManager.c **** 
 328:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerDisplayNone (void) {
 1152              		.loc 1 328 0
 1153              		.cfi_startproc
 1154 0000 80B5     		push	{r7, lr}
 1155              		.cfi_def_cfa_offset 8
 1156              		.cfi_offset 7, -8
 1157              		.cfi_offset 14, -4
 1158 0002 82B0     		sub	sp, sp, #8
 1159              		.cfi_def_cfa_offset 16
 1160 0004 00AF     		add	r7, sp, #0
 1161              		.cfi_def_cfa_register 7
 329:../Application/ButtonManager/ButtonManager.c **** 	char data[DISPLAY_TOTAL_DIGIT] = {0};
 1162              		.loc 1 329 0
 1163 0006 3B1D     		add	r3, r7, #4
 1164 0008 0022     		mov	r2, #0
 1165 000a 1A60     		str	r2, [r3]
 330:../Application/ButtonManager/ButtonManager.c **** 
 331:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetPower(DISPLAY_POWER_ON);
 1166              		.loc 1 331 0
 1167 000c 0120     		mov	r0, #1
 1168 000e FFF7FEFF 		bl	DisplaySetPower
 332:../Application/ButtonManager/ButtonManager.c **** 	DisplaySetDataDisplayed(data);
 1169              		.loc 1 332 0
 1170 0012 3B1D     		add	r3, r7, #4
 1171 0014 181C     		mov	r0, r3
 1172 0016 FFF7FEFF 		bl	DisplaySetDataDisplayed
 333:../Application/ButtonManager/ButtonManager.c **** }
 1173              		.loc 1 333 0
 1174 001a BD46     		mov	sp, r7
 1175 001c 02B0     		add	sp, sp, #8
 1176              		@ sp needed
 1177 001e 80BD     		pop	{r7, pc}
 1178              		.cfi_endproc
 1179              	.LFE41:
 1181              		.section	.text.ButtonManagerInit,"ax",%progbits
 1182              		.align	2
 1183              		.global	ButtonManagerInit
 1184              		.code	16
 1185              		.thumb_func
 1187              	ButtonManagerInit:
 1188              	.LFB42:
 334:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
 335:../Application/ButtonManager/ButtonManager.c **** /*## END LOCAL FONCTIONS #####################################################################*/
 336:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
 337:../Application/ButtonManager/ButtonManager.c **** 
 338:../Application/ButtonManager/ButtonManager.c **** 
 339:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
 340:../Application/ButtonManager/ButtonManager.c **** /*## EXTERNAL FONCTIONS ######################################################################*/
 341:../Application/ButtonManager/ButtonManager.c **** /*############################################################################################*/
 342:../Application/ButtonManager/ButtonManager.c **** void ButtonManagerInit (void) {
 1189              		.loc 1 342 0
 1190              		.cfi_startproc
 1191 0000 80B5     		push	{r7, lr}
 1192              		.cfi_def_cfa_offset 8
 1193              		.cfi_offset 7, -8
 1194              		.cfi_offset 14, -4
 1195 0002 00AF     		add	r7, sp, #0
 1196              		.cfi_def_cfa_register 7
 343:../Application/ButtonManager/ButtonManager.c **** 	ButtonInit();
 1197              		.loc 1 343 0
 1198 0004 FFF7FEFF 		bl	ButtonInit
 344:../Application/ButtonManager/ButtonManager.c **** 	lastWriteBpState = BUTTON_RELEASED;
 1199              		.loc 1 344 0
 1200 0008 0C4B     		ldr	r3, .L65
 1201 000a 0022     		mov	r2, #0
 1202 000c 1A70     		strb	r2, [r3]
 345:../Application/ButtonManager/ButtonManager.c **** 	lastReadBpState = BUTTON_RELEASED;
 1203              		.loc 1 345 0
 1204 000e 0C4B     		ldr	r3, .L65+4
 1205 0010 0022     		mov	r2, #0
 1206 0012 1A70     		strb	r2, [r3]
 346:../Application/ButtonManager/ButtonManager.c **** 	writeBpMsRef = 0;
 1207              		.loc 1 346 0
 1208 0014 0B4B     		ldr	r3, .L65+8
 1209 0016 0022     		mov	r2, #0
 1210 0018 1A60     		str	r2, [r3]
 347:../Application/ButtonManager/ButtonManager.c **** 	readBpMsRef = 0;
 1211              		.loc 1 347 0
 1212 001a 0B4B     		ldr	r3, .L65+12
 1213 001c 0022     		mov	r2, #0
 1214 001e 1A60     		str	r2, [r3]
 348:../Application/ButtonManager/ButtonManager.c **** 	ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_STANDBY;
 1215              		.loc 1 348 0
 1216 0020 0A4B     		ldr	r3, .L65+16
 1217 0022 0022     		mov	r2, #0
 1218 0024 9A70     		strb	r2, [r3, #2]
 349:../Application/ButtonManager/ButtonManager.c **** 	ButtonManagerCtrl.operation.all = 0;
 1219              		.loc 1 349 0
 1220 0026 094B     		ldr	r3, .L65+16
 1221 0028 0022     		mov	r2, #0
 1222 002a 1A80     		strh	r2, [r3]
 350:../Application/ButtonManager/ButtonManager.c **** 	ButtonManagerCtrl.lpm = BUTTONMANAGER_WORKING;
 1223              		.loc 1 350 0
 1224 002c 074B     		ldr	r3, .L65+16
 1225 002e 0022     		mov	r2, #0
 1226 0030 DA70     		strb	r2, [r3, #3]
 351:../Application/ButtonManager/ButtonManager.c **** 	waitAllUnpressed = BUTTON_RELEASED;
 1227              		.loc 1 351 0
 1228 0032 074B     		ldr	r3, .L65+20
 1229 0034 0022     		mov	r2, #0
 1230 0036 1A70     		strb	r2, [r3]
 352:../Application/ButtonManager/ButtonManager.c **** }
 1231              		.loc 1 352 0
 1232 0038 BD46     		mov	sp, r7
 1233              		@ sp needed
 1234 003a 80BD     		pop	{r7, pc}
 1235              	.L66:
 1236              		.align	2
 1237              	.L65:
 1238 003c 00000000 		.word	lastWriteBpState
 1239 0040 00000000 		.word	lastReadBpState
 1240 0044 00000000 		.word	writeBpMsRef
 1241 0048 00000000 		.word	readBpMsRef
 1242 004c 00000000 		.word	ButtonManagerCtrl
 1243 0050 00000000 		.word	waitAllUnpressed
 1244              		.cfi_endproc
 1245              	.LFE42:
 1247              		.section	.text.ButtonManager,"ax",%progbits
 1248              		.align	2
 1249              		.global	ButtonManager
 1250              		.code	16
 1251              		.thumb_func
 1253              	ButtonManager:
 1254              	.LFB43:
 353:../Application/ButtonManager/ButtonManager.c **** 
 354:../Application/ButtonManager/ButtonManager.c **** void ButtonManager (void) {
 1255              		.loc 1 354 0
 1256              		.cfi_startproc
 1257 0000 90B5     		push	{r4, r7, lr}
 1258              		.cfi_def_cfa_offset 12
 1259              		.cfi_offset 4, -12
 1260              		.cfi_offset 7, -8
 1261              		.cfi_offset 14, -4
 1262 0002 87B0     		sub	sp, sp, #28
 1263              		.cfi_def_cfa_offset 40
 1264 0004 00AF     		add	r7, sp, #0
 1265              		.cfi_def_cfa_register 7
 355:../Application/ButtonManager/ButtonManager.c **** 	static unsigned char state = 0;
 356:../Application/ButtonManager/ButtonManager.c **** 	static unsigned long msRef = 0;
 357:../Application/ButtonManager/ButtonManager.c **** 
 358:../Application/ButtonManager/ButtonManager.c **** 	/*=== button management for connected device ===*/
 359:../Application/ButtonManager/ButtonManager.c **** 	if(PowerManagerCtrl.flags.bits.usbConnected ) {
 1266              		.loc 1 359 0
 1267 0006 A24B     		ldr	r3, .L116
 1268 0008 1B78     		ldrb	r3, [r3]
 1269 000a DB07     		lsl	r3, r3, #31
 1270 000c DB0F     		lsr	r3, r3, #31
 1271 000e DBB2     		uxtb	r3, r3
 1272 0010 002B     		cmp	r3, #0
 1273 0012 00D1     		bne	.LCB1058
 1274 0014 4CE1     		b	.L68	@long jump
 1275              	.LCB1058:
 360:../Application/ButtonManager/ButtonManager.c **** 
 361:../Application/ButtonManager/ButtonManager.c **** 		if(ButtonWriteGetState() == BUTTON_PRESSED && ButtonReadGetState() == BUTTON_PRESSED ) {
 1276              		.loc 1 361 0
 1277 0016 9F4B     		ldr	r3, .L116+4
 1278 0018 1A69     		ldr	r2, [r3, #16]
 1279 001a 0223     		mov	r3, #2
 1280 001c 1340     		and	r3, r2
 1281 001e 5B08     		lsr	r3, r3, #1
 1282 0020 012B     		cmp	r3, #1
 1283 0022 00D0     		beq	.LCB1065
 1284 0024 0EE1     		b	.L69	@long jump
 1285              	.LCB1065:
 1286              		.loc 1 361 0 is_stmt 0 discriminator 1
 1287 0026 9B4B     		ldr	r3, .L116+4
 1288 0028 1A69     		ldr	r2, [r3, #16]
 1289 002a 0423     		mov	r3, #4
 1290 002c 1340     		and	r3, r2
 1291 002e 9B08     		lsr	r3, r3, #2
 1292 0030 012B     		cmp	r3, #1
 1293 0032 00D0     		beq	.LCB1072
 1294 0034 06E1     		b	.L69	@long jump
 1295              	.LCB1072:
 362:../Application/ButtonManager/ButtonManager.c **** 
 363:../Application/ButtonManager/ButtonManager.c **** 			ButtonManagerCtrl.lpm = BUTTONMANAGER_WORKING;
 1296              		.loc 1 363 0 is_stmt 1
 1297 0036 984B     		ldr	r3, .L116+8
 1298 0038 0022     		mov	r2, #0
 1299 003a DA70     		strb	r2, [r3, #3]
 364:../Application/ButtonManager/ButtonManager.c **** 
 365:../Application/ButtonManager/ButtonManager.c **** 			/*-- Display current load only if battery have no error --*/
 366:../Application/ButtonManager/ButtonManager.c **** 			if(PowerManagerCtrl.flags.bits.batteryError == 0) {
 1300              		.loc 1 366 0
 1301 003c 944B     		ldr	r3, .L116
 1302 003e 1B78     		ldrb	r3, [r3]
 1303 0040 9B07     		lsl	r3, r3, #30
 1304 0042 DB0F     		lsr	r3, r3, #31
 1305 0044 DBB2     		uxtb	r3, r3
 1306 0046 002B     		cmp	r3, #0
 1307 0048 00D0     		beq	.LCB1082
 1308 004a FAE0     		b	.L70	@long jump
 1309              	.LCB1082:
 1310              	.LBB4:
 367:../Application/ButtonManager/ButtonManager.c **** 				DisplaySetPower(DISPLAY_POWER_ON);
 1311              		.loc 1 367 0
 1312 004c 0120     		mov	r0, #1
 1313 004e FFF7FEFF 		bl	DisplaySetPower
 368:../Application/ButtonManager/ButtonManager.c **** 				char data[DISPLAY_TOTAL_DIGIT];
 369:../Application/ButtonManager/ButtonManager.c **** 				DisplayGetDataDisplayed(data);
 1314              		.loc 1 369 0
 1315 0052 3B1C     		mov	r3, r7
 1316 0054 0C33     		add	r3, r3, #12
 1317 0056 181C     		mov	r0, r3
 1318 0058 FFF7FEFF 		bl	DisplayGetDataDisplayed
 370:../Application/ButtonManager/ButtonManager.c **** 
 371:../Application/ButtonManager/ButtonManager.c **** 				if(state == 0) {
 1319              		.loc 1 371 0
 1320 005c 8F4B     		ldr	r3, .L116+12
 1321 005e 1B78     		ldrb	r3, [r3]
 1322 0060 002B     		cmp	r3, #0
 1323 0062 07D1     		bne	.L71
 372:../Application/ButtonManager/ButtonManager.c **** 					state = 1;
 1324              		.loc 1 372 0
 1325 0064 8D4B     		ldr	r3, .L116+12
 1326 0066 0122     		mov	r2, #1
 1327 0068 1A70     		strb	r2, [r3]
 373:../Application/ButtonManager/ButtonManager.c **** 					msRef = TickGetMsCounter();
 1328              		.loc 1 373 0
 1329 006a FFF7FEFF 		bl	TickGetMsCounter
 1330 006e 021C     		mov	r2, r0
 1331 0070 8B4B     		ldr	r3, .L116+16
 1332 0072 1A60     		str	r2, [r3]
 1333              	.L71:
 374:../Application/ButtonManager/ButtonManager.c **** 				}
 375:../Application/ButtonManager/ButtonManager.c **** 
 376:../Application/ButtonManager/ButtonManager.c **** 				if(state == 1) {
 1334              		.loc 1 376 0
 1335 0074 894B     		ldr	r3, .L116+12
 1336 0076 1B78     		ldrb	r3, [r3]
 1337 0078 012B     		cmp	r3, #1
 1338 007a 6ED1     		bne	.L72
 1339              	.LBB5:
 377:../Application/ButtonManager/ButtonManager.c **** 					if(TickMilliSecElapsedFrom(msRef) >= 2000) {
 1340              		.loc 1 377 0
 1341 007c 884B     		ldr	r3, .L116+16
 1342 007e 1B68     		ldr	r3, [r3]
 1343 0080 181C     		mov	r0, r3
 1344 0082 FFF7FEFF 		bl	TickMilliSecElapsedFrom
 1345 0086 021C     		mov	r2, r0
 1346 0088 864B     		ldr	r3, .L116+20
 1347 008a 9A42     		cmp	r2, r3
 1348 008c 07D9     		bls	.L73
 378:../Application/ButtonManager/ButtonManager.c **** 						state = 2;
 1349              		.loc 1 378 0
 1350 008e 834B     		ldr	r3, .L116+12
 1351 0090 0222     		mov	r2, #2
 1352 0092 1A70     		strb	r2, [r3]
 379:../Application/ButtonManager/ButtonManager.c **** 						msRef = TickGetMsCounter();
 1353              		.loc 1 379 0
 1354 0094 FFF7FEFF 		bl	TickGetMsCounter
 1355 0098 021C     		mov	r2, r0
 1356 009a 814B     		ldr	r3, .L116+16
 1357 009c 1A60     		str	r2, [r3]
 1358              	.L73:
 380:../Application/ButtonManager/ButtonManager.c **** 					}
 381:../Application/ButtonManager/ButtonManager.c **** 					unsigned short load = BQBatteryStatus.stateOfCharge;
 1359              		.loc 1 381 0
 1360 009e 3B1C     		mov	r3, r7
 1361 00a0 1633     		add	r3, r3, #22
 1362 00a2 814A     		ldr	r2, .L116+24
 1363 00a4 D28C     		ldrh	r2, [r2, #38]
 1364 00a6 1A80     		strh	r2, [r3]
 382:../Application/ButtonManager/ButtonManager.c **** 					data[DISPLAY_TOTAL_DIGIT-1] = (load % 10) + '0';
 1365              		.loc 1 382 0
 1366 00a8 3B1C     		mov	r3, r7
 1367 00aa 1633     		add	r3, r3, #22
 1368 00ac 1B88     		ldrh	r3, [r3]
 1369 00ae 181C     		mov	r0, r3
 1370 00b0 0A21     		mov	r1, #10
 1371 00b2 FFF7FEFF 		bl	__aeabi_uidivmod
 1372 00b6 0B1C     		mov	r3, r1
 1373 00b8 9BB2     		uxth	r3, r3
 1374 00ba DBB2     		uxtb	r3, r3
 1375 00bc 3033     		add	r3, r3, #48
 1376 00be DBB2     		uxtb	r3, r3
 1377 00c0 DAB2     		uxtb	r2, r3
 1378 00c2 3B1C     		mov	r3, r7
 1379 00c4 0C33     		add	r3, r3, #12
 1380 00c6 DA70     		strb	r2, [r3, #3]
 383:../Application/ButtonManager/ButtonManager.c **** 					load /= 10;
 1381              		.loc 1 383 0
 1382 00c8 3C1C     		mov	r4, r7
 1383 00ca 1634     		add	r4, r4, #22
 1384 00cc 3B1C     		mov	r3, r7
 1385 00ce 1633     		add	r3, r3, #22
 1386 00d0 1B88     		ldrh	r3, [r3]
 1387 00d2 181C     		mov	r0, r3
 1388 00d4 0A21     		mov	r1, #10
 1389 00d6 FFF7FEFF 		bl	__aeabi_uidiv
 1390 00da 031C     		mov	r3, r0
 1391 00dc 2380     		strh	r3, [r4]
 384:../Application/ButtonManager/ButtonManager.c **** 					if(load != 0) {
 1392              		.loc 1 384 0
 1393 00de 3B1C     		mov	r3, r7
 1394 00e0 1633     		add	r3, r3, #22
 1395 00e2 1B88     		ldrh	r3, [r3]
 1396 00e4 002B     		cmp	r3, #0
 1397 00e6 10D0     		beq	.L74
 385:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-2] = (load % 10) + '0';
 1398              		.loc 1 385 0
 1399 00e8 3B1C     		mov	r3, r7
 1400 00ea 1633     		add	r3, r3, #22
 1401 00ec 1B88     		ldrh	r3, [r3]
 1402 00ee 181C     		mov	r0, r3
 1403 00f0 0A21     		mov	r1, #10
 1404 00f2 FFF7FEFF 		bl	__aeabi_uidivmod
 1405 00f6 0B1C     		mov	r3, r1
 1406 00f8 9BB2     		uxth	r3, r3
 1407 00fa DBB2     		uxtb	r3, r3
 1408 00fc 3033     		add	r3, r3, #48
 1409 00fe DBB2     		uxtb	r3, r3
 1410 0100 DAB2     		uxtb	r2, r3
 1411 0102 3B1C     		mov	r3, r7
 1412 0104 0C33     		add	r3, r3, #12
 1413 0106 9A70     		strb	r2, [r3, #2]
 1414 0108 03E0     		b	.L75
 1415              	.L74:
 386:../Application/ButtonManager/ButtonManager.c **** 					} else {
 387:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-2] = 0;
 1416              		.loc 1 387 0
 1417 010a 3B1C     		mov	r3, r7
 1418 010c 0C33     		add	r3, r3, #12
 1419 010e 0022     		mov	r2, #0
 1420 0110 9A70     		strb	r2, [r3, #2]
 1421              	.L75:
 388:../Application/ButtonManager/ButtonManager.c **** 					}
 389:../Application/ButtonManager/ButtonManager.c **** 					load /= 10;
 1422              		.loc 1 389 0
 1423 0112 3C1C     		mov	r4, r7
 1424 0114 1634     		add	r4, r4, #22
 1425 0116 3B1C     		mov	r3, r7
 1426 0118 1633     		add	r3, r3, #22
 1427 011a 1B88     		ldrh	r3, [r3]
 1428 011c 181C     		mov	r0, r3
 1429 011e 0A21     		mov	r1, #10
 1430 0120 FFF7FEFF 		bl	__aeabi_uidiv
 1431 0124 031C     		mov	r3, r0
 1432 0126 2380     		strh	r3, [r4]
 390:../Application/ButtonManager/ButtonManager.c **** 					if(load != 0) {
 1433              		.loc 1 390 0
 1434 0128 3B1C     		mov	r3, r7
 1435 012a 1633     		add	r3, r3, #22
 1436 012c 1B88     		ldrh	r3, [r3]
 1437 012e 002B     		cmp	r3, #0
 1438 0130 0AD0     		beq	.L76
 391:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-3] = (load) + '0';
 1439              		.loc 1 391 0
 1440 0132 3B1C     		mov	r3, r7
 1441 0134 1633     		add	r3, r3, #22
 1442 0136 1B88     		ldrh	r3, [r3]
 1443 0138 DBB2     		uxtb	r3, r3
 1444 013a 3033     		add	r3, r3, #48
 1445 013c DBB2     		uxtb	r3, r3
 1446 013e DAB2     		uxtb	r2, r3
 1447 0140 3B1C     		mov	r3, r7
 1448 0142 0C33     		add	r3, r3, #12
 1449 0144 5A70     		strb	r2, [r3, #1]
 1450 0146 03E0     		b	.L77
 1451              	.L76:
 392:../Application/ButtonManager/ButtonManager.c **** 					} else {
 393:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-3] = 0;
 1452              		.loc 1 393 0
 1453 0148 3B1C     		mov	r3, r7
 1454 014a 0C33     		add	r3, r3, #12
 1455 014c 0022     		mov	r2, #0
 1456 014e 5A70     		strb	r2, [r3, #1]
 1457              	.L77:
 394:../Application/ButtonManager/ButtonManager.c **** 					}
 395:../Application/ButtonManager/ButtonManager.c **** 					data[0] = 'b';
 1458              		.loc 1 395 0 discriminator 1
 1459 0150 3B1C     		mov	r3, r7
 1460 0152 0C33     		add	r3, r3, #12
 1461 0154 6222     		mov	r2, #98
 1462 0156 1A70     		strb	r2, [r3]
 1463              	.LBE5:
 1464 0158 6DE0     		b	.L78
 1465              	.L72:
 1466              	.LBB6:
 396:../Application/ButtonManager/ButtonManager.c **** 				} else {
 397:../Application/ButtonManager/ButtonManager.c **** 					if(TickMilliSecElapsedFrom(msRef) >= 2000) {
 1467              		.loc 1 397 0
 1468 015a 514B     		ldr	r3, .L116+16
 1469 015c 1B68     		ldr	r3, [r3]
 1470 015e 181C     		mov	r0, r3
 1471 0160 FFF7FEFF 		bl	TickMilliSecElapsedFrom
 1472 0164 021C     		mov	r2, r0
 1473 0166 4F4B     		ldr	r3, .L116+20
 1474 0168 9A42     		cmp	r2, r3
 1475 016a 07D9     		bls	.L79
 398:../Application/ButtonManager/ButtonManager.c **** 						state = 1;
 1476              		.loc 1 398 0
 1477 016c 4B4B     		ldr	r3, .L116+12
 1478 016e 0122     		mov	r2, #1
 1479 0170 1A70     		strb	r2, [r3]
 399:../Application/ButtonManager/ButtonManager.c **** 						msRef = TickGetMsCounter();
 1480              		.loc 1 399 0
 1481 0172 FFF7FEFF 		bl	TickGetMsCounter
 1482 0176 021C     		mov	r2, r0
 1483 0178 494B     		ldr	r3, .L116+16
 1484 017a 1A60     		str	r2, [r3]
 1485              	.L79:
 400:../Application/ButtonManager/ButtonManager.c **** 					}
 401:../Application/ButtonManager/ButtonManager.c **** 					unsigned short load = DivingParameters.depth;
 1486              		.loc 1 401 0
 1487 017c 4B4B     		ldr	r3, .L116+28
 1488 017e 1A78     		ldrb	r2, [r3]
 1489 0180 3B1C     		mov	r3, r7
 1490 0182 1433     		add	r3, r3, #20
 1491 0184 1A80     		strh	r2, [r3]
 402:../Application/ButtonManager/ButtonManager.c **** 					data[DISPLAY_TOTAL_DIGIT-1] = (load % 10) + '0';
 1492              		.loc 1 402 0
 1493 0186 3B1C     		mov	r3, r7
 1494 0188 1433     		add	r3, r3, #20
 1495 018a 1B88     		ldrh	r3, [r3]
 1496 018c 181C     		mov	r0, r3
 1497 018e 0A21     		mov	r1, #10
 1498 0190 FFF7FEFF 		bl	__aeabi_uidivmod
 1499 0194 0B1C     		mov	r3, r1
 1500 0196 9BB2     		uxth	r3, r3
 1501 0198 DBB2     		uxtb	r3, r3
 1502 019a 3033     		add	r3, r3, #48
 1503 019c DBB2     		uxtb	r3, r3
 1504 019e DAB2     		uxtb	r2, r3
 1505 01a0 3B1C     		mov	r3, r7
 1506 01a2 0C33     		add	r3, r3, #12
 1507 01a4 DA70     		strb	r2, [r3, #3]
 403:../Application/ButtonManager/ButtonManager.c **** 					load /= 10;
 1508              		.loc 1 403 0
 1509 01a6 3C1C     		mov	r4, r7
 1510 01a8 1434     		add	r4, r4, #20
 1511 01aa 3B1C     		mov	r3, r7
 1512 01ac 1433     		add	r3, r3, #20
 1513 01ae 1B88     		ldrh	r3, [r3]
 1514 01b0 181C     		mov	r0, r3
 1515 01b2 0A21     		mov	r1, #10
 1516 01b4 FFF7FEFF 		bl	__aeabi_uidiv
 1517 01b8 031C     		mov	r3, r0
 1518 01ba 2380     		strh	r3, [r4]
 404:../Application/ButtonManager/ButtonManager.c **** 					if(load != 0) {
 1519              		.loc 1 404 0
 1520 01bc 3B1C     		mov	r3, r7
 1521 01be 1433     		add	r3, r3, #20
 1522 01c0 1B88     		ldrh	r3, [r3]
 1523 01c2 002B     		cmp	r3, #0
 1524 01c4 10D0     		beq	.L80
 405:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-2] = (load % 10) + '0';
 1525              		.loc 1 405 0
 1526 01c6 3B1C     		mov	r3, r7
 1527 01c8 1433     		add	r3, r3, #20
 1528 01ca 1B88     		ldrh	r3, [r3]
 1529 01cc 181C     		mov	r0, r3
 1530 01ce 0A21     		mov	r1, #10
 1531 01d0 FFF7FEFF 		bl	__aeabi_uidivmod
 1532 01d4 0B1C     		mov	r3, r1
 1533 01d6 9BB2     		uxth	r3, r3
 1534 01d8 DBB2     		uxtb	r3, r3
 1535 01da 3033     		add	r3, r3, #48
 1536 01dc DBB2     		uxtb	r3, r3
 1537 01de DAB2     		uxtb	r2, r3
 1538 01e0 3B1C     		mov	r3, r7
 1539 01e2 0C33     		add	r3, r3, #12
 1540 01e4 9A70     		strb	r2, [r3, #2]
 1541 01e6 03E0     		b	.L81
 1542              	.L80:
 406:../Application/ButtonManager/ButtonManager.c **** 					} else {
 407:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-2] = 0;
 1543              		.loc 1 407 0
 1544 01e8 3B1C     		mov	r3, r7
 1545 01ea 0C33     		add	r3, r3, #12
 1546 01ec 0022     		mov	r2, #0
 1547 01ee 9A70     		strb	r2, [r3, #2]
 1548              	.L81:
 408:../Application/ButtonManager/ButtonManager.c **** 					}
 409:../Application/ButtonManager/ButtonManager.c **** 					load /= 10;
 1549              		.loc 1 409 0
 1550 01f0 3C1C     		mov	r4, r7
 1551 01f2 1434     		add	r4, r4, #20
 1552 01f4 3B1C     		mov	r3, r7
 1553 01f6 1433     		add	r3, r3, #20
 1554 01f8 1B88     		ldrh	r3, [r3]
 1555 01fa 181C     		mov	r0, r3
 1556 01fc 0A21     		mov	r1, #10
 1557 01fe FFF7FEFF 		bl	__aeabi_uidiv
 1558 0202 031C     		mov	r3, r0
 1559 0204 2380     		strh	r3, [r4]
 410:../Application/ButtonManager/ButtonManager.c **** 					if(load != 0) {
 1560              		.loc 1 410 0
 1561 0206 3B1C     		mov	r3, r7
 1562 0208 1433     		add	r3, r3, #20
 1563 020a 1B88     		ldrh	r3, [r3]
 1564 020c 002B     		cmp	r3, #0
 1565 020e 0AD0     		beq	.L82
 411:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-3] = (load) + '0';
 1566              		.loc 1 411 0
 1567 0210 3B1C     		mov	r3, r7
 1568 0212 1433     		add	r3, r3, #20
 1569 0214 1B88     		ldrh	r3, [r3]
 1570 0216 DBB2     		uxtb	r3, r3
 1571 0218 3033     		add	r3, r3, #48
 1572 021a DBB2     		uxtb	r3, r3
 1573 021c DAB2     		uxtb	r2, r3
 1574 021e 3B1C     		mov	r3, r7
 1575 0220 0C33     		add	r3, r3, #12
 1576 0222 5A70     		strb	r2, [r3, #1]
 1577 0224 03E0     		b	.L83
 1578              	.L82:
 412:../Application/ButtonManager/ButtonManager.c **** 					} else {
 413:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-3] = 0;
 1579              		.loc 1 413 0
 1580 0226 3B1C     		mov	r3, r7
 1581 0228 0C33     		add	r3, r3, #12
 1582 022a 0022     		mov	r2, #0
 1583 022c 5A70     		strb	r2, [r3, #1]
 1584              	.L83:
 414:../Application/ButtonManager/ButtonManager.c **** 					}
 415:../Application/ButtonManager/ButtonManager.c **** 					data[0] = 'd';
 1585              		.loc 1 415 0
 1586 022e 3B1C     		mov	r3, r7
 1587 0230 0C33     		add	r3, r3, #12
 1588 0232 6422     		mov	r2, #100
 1589 0234 1A70     		strb	r2, [r3]
 1590              	.L78:
 1591              	.LBE6:
 416:../Application/ButtonManager/ButtonManager.c **** 				}
 417:../Application/ButtonManager/ButtonManager.c **** 				DisplaySetDataDisplayed(data);
 1592              		.loc 1 417 0 discriminator 1
 1593 0236 3B1C     		mov	r3, r7
 1594 0238 0C33     		add	r3, r3, #12
 1595 023a 181C     		mov	r0, r3
 1596 023c FFF7FEFF 		bl	DisplaySetDataDisplayed
 1597              	.LBE4:
 366:../Application/ButtonManager/ButtonManager.c **** 			if(PowerManagerCtrl.flags.bits.batteryError == 0) {
 1598              		.loc 1 366 0 discriminator 1
 1599 0240 25E0     		b	.L84
 1600              	.L70:
 1601 0242 24E0     		b	.L84
 1602              	.L69:
 418:../Application/ButtonManager/ButtonManager.c **** 			}
 419:../Application/ButtonManager/ButtonManager.c **** 		} else {
 420:../Application/ButtonManager/ButtonManager.c **** 			state = 0;
 1603              		.loc 1 420 0
 1604 0244 154B     		ldr	r3, .L116+12
 1605 0246 0022     		mov	r2, #0
 1606 0248 1A70     		strb	r2, [r3]
 421:../Application/ButtonManager/ButtonManager.c **** 			ButtonManagerCtrl.lpm = BUTTONMANAGER_READY_FOR_LPM;
 1607              		.loc 1 421 0
 1608 024a 134B     		ldr	r3, .L116+8
 1609 024c 0122     		mov	r2, #1
 1610 024e DA70     		strb	r2, [r3, #3]
 422:../Application/ButtonManager/ButtonManager.c **** 			if(PowerManagerCtrl.flags.bits.batteryError == 0) {
 1611              		.loc 1 422 0
 1612 0250 0F4B     		ldr	r3, .L116
 1613 0252 1B78     		ldrb	r3, [r3]
 1614 0254 9B07     		lsl	r3, r3, #30
 1615 0256 DB0F     		lsr	r3, r3, #31
 1616 0258 DBB2     		uxtb	r3, r3
 1617 025a 002B     		cmp	r3, #0
 1618 025c 00D0     		beq	.LCB1374
 1619 025e 22E2     		b	.L67	@long jump
 1620              	.LCB1374:
 1621              	.LBB7:
 423:../Application/ButtonManager/ButtonManager.c **** 				//ButtonManagerDisplayNone();
 424:../Application/ButtonManager/ButtonManager.c **** 				char data[DISPLAY_TOTAL_DIGIT];
 425:../Application/ButtonManager/ButtonManager.c **** 				DisplayGetDataDisplayed(data);
 1622              		.loc 1 425 0
 1623 0260 3B1C     		mov	r3, r7
 1624 0262 0833     		add	r3, r3, #8
 1625 0264 181C     		mov	r0, r3
 1626 0266 FFF7FEFF 		bl	DisplayGetDataDisplayed
 426:../Application/ButtonManager/ButtonManager.c **** 				data[1] = 0;
 1627              		.loc 1 426 0
 1628 026a 3B1C     		mov	r3, r7
 1629 026c 0833     		add	r3, r3, #8
 1630 026e 0022     		mov	r2, #0
 1631 0270 5A70     		strb	r2, [r3, #1]
 427:../Application/ButtonManager/ButtonManager.c **** 				data[2] = 0;
 1632              		.loc 1 427 0
 1633 0272 3B1C     		mov	r3, r7
 1634 0274 0833     		add	r3, r3, #8
 1635 0276 0022     		mov	r2, #0
 1636 0278 9A70     		strb	r2, [r3, #2]
 428:../Application/ButtonManager/ButtonManager.c **** 				data[3] = 0;
 1637              		.loc 1 428 0
 1638 027a 3B1C     		mov	r3, r7
 1639 027c 0833     		add	r3, r3, #8
 1640 027e 0022     		mov	r2, #0
 1641 0280 DA70     		strb	r2, [r3, #3]
 429:../Application/ButtonManager/ButtonManager.c **** 				DisplaySetDataDisplayed(data);
 1642              		.loc 1 429 0
 1643 0282 3B1C     		mov	r3, r7
 1644 0284 0833     		add	r3, r3, #8
 1645 0286 181C     		mov	r0, r3
 1646 0288 FFF7FEFF 		bl	DisplaySetDataDisplayed
 1647              	.LBE7:
 1648 028c 0BE2     		b	.L67
 1649              	.L84:
 1650 028e 0AE2     		b	.L67
 1651              	.L117:
 1652              		.align	2
 1653              	.L116:
 1654 0290 00000000 		.word	PowerManagerCtrl
 1655 0294 00F00F40 		.word	1074786304
 1656 0298 00000000 		.word	ButtonManagerCtrl
 1657 029c 00000000 		.word	state.5691
 1658 02a0 00000000 		.word	msRef.5692
 1659 02a4 CF070000 		.word	1999
 1660 02a8 00000000 		.word	BQBatteryStatus
 1661 02ac 00000000 		.word	DivingParameters
 1662              	.L68:
 430:../Application/ButtonManager/ButtonManager.c **** 			}
 431:../Application/ButtonManager/ButtonManager.c **** 		}
 432:../Application/ButtonManager/ButtonManager.c **** 
 433:../Application/ButtonManager/ButtonManager.c **** 
 434:../Application/ButtonManager/ButtonManager.c **** 		/*=== Button management for disconnected device ===*/
 435:../Application/ButtonManager/ButtonManager.c **** 	} else {
 436:../Application/ButtonManager/ButtonManager.c **** 
 437:../Application/ButtonManager/ButtonManager.c **** 		if(ButtonWriteGetState() == BUTTON_PRESSED && ButtonReadGetState() == BUTTON_PRESSED ) {
 1663              		.loc 1 437 0
 1664 02b0 D54B     		ldr	r3, .L118
 1665 02b2 1A69     		ldr	r2, [r3, #16]
 1666 02b4 0223     		mov	r3, #2
 1667 02b6 1340     		and	r3, r2
 1668 02b8 5B08     		lsr	r3, r3, #1
 1669 02ba 012B     		cmp	r3, #1
 1670 02bc 00D0     		beq	.LCB1424
 1671 02be 0EE1     		b	.L86	@long jump
 1672              	.LCB1424:
 1673              		.loc 1 437 0 is_stmt 0 discriminator 1
 1674 02c0 D14B     		ldr	r3, .L118
 1675 02c2 1A69     		ldr	r2, [r3, #16]
 1676 02c4 0423     		mov	r3, #4
 1677 02c6 1340     		and	r3, r2
 1678 02c8 9B08     		lsr	r3, r3, #2
 1679 02ca 012B     		cmp	r3, #1
 1680 02cc 00D0     		beq	.LCB1431
 1681 02ce 06E1     		b	.L86	@long jump
 1682              	.LCB1431:
 438:../Application/ButtonManager/ButtonManager.c **** 
 439:../Application/ButtonManager/ButtonManager.c **** 			ButtonManagerCtrl.lpm = BUTTONMANAGER_WORKING;
 1683              		.loc 1 439 0 is_stmt 1
 1684 02d0 CE4B     		ldr	r3, .L118+4
 1685 02d2 0022     		mov	r2, #0
 1686 02d4 DA70     		strb	r2, [r3, #3]
 440:../Application/ButtonManager/ButtonManager.c **** 			waitAllUnpressed = BUTTON_PRESSED;
 1687              		.loc 1 440 0
 1688 02d6 CE4B     		ldr	r3, .L118+8
 1689 02d8 0122     		mov	r2, #1
 1690 02da 1A70     		strb	r2, [r3]
 441:../Application/ButtonManager/ButtonManager.c **** 
 442:../Application/ButtonManager/ButtonManager.c **** 			/*-- Display current load only if battery have no error --*/
 443:../Application/ButtonManager/ButtonManager.c **** 			if(PowerManagerCtrl.flags.bits.batteryError == 0) {
 1691              		.loc 1 443 0
 1692 02dc CD4B     		ldr	r3, .L118+12
 1693 02de 1B78     		ldrb	r3, [r3]
 1694 02e0 9B07     		lsl	r3, r3, #30
 1695 02e2 DB0F     		lsr	r3, r3, #31
 1696 02e4 DBB2     		uxtb	r3, r3
 1697 02e6 002B     		cmp	r3, #0
 1698 02e8 00D0     		beq	.LCB1444
 1699 02ea EBE0     		b	.L87	@long jump
 1700              	.LCB1444:
 1701              	.LBB8:
 444:../Application/ButtonManager/ButtonManager.c **** 				char data[DISPLAY_TOTAL_DIGIT];
 445:../Application/ButtonManager/ButtonManager.c **** 				DisplayGetDataDisplayed(data);
 1702              		.loc 1 445 0
 1703 02ec 3B1D     		add	r3, r7, #4
 1704 02ee 181C     		mov	r0, r3
 1705 02f0 FFF7FEFF 		bl	DisplayGetDataDisplayed
 446:../Application/ButtonManager/ButtonManager.c **** 				DisplaySetPower(DISPLAY_POWER_ON);
 1706              		.loc 1 446 0
 1707 02f4 0120     		mov	r0, #1
 1708 02f6 FFF7FEFF 		bl	DisplaySetPower
 447:../Application/ButtonManager/ButtonManager.c **** 
 448:../Application/ButtonManager/ButtonManager.c **** 				if(state == 0) {
 1709              		.loc 1 448 0
 1710 02fa C74B     		ldr	r3, .L118+16
 1711 02fc 1B78     		ldrb	r3, [r3]
 1712 02fe 002B     		cmp	r3, #0
 1713 0300 07D1     		bne	.L88
 449:../Application/ButtonManager/ButtonManager.c **** 					state = 1;
 1714              		.loc 1 449 0
 1715 0302 C54B     		ldr	r3, .L118+16
 1716 0304 0122     		mov	r2, #1
 1717 0306 1A70     		strb	r2, [r3]
 450:../Application/ButtonManager/ButtonManager.c **** 					msRef = TickGetMsCounter();
 1718              		.loc 1 450 0
 1719 0308 FFF7FEFF 		bl	TickGetMsCounter
 1720 030c 021C     		mov	r2, r0
 1721 030e C34B     		ldr	r3, .L118+20
 1722 0310 1A60     		str	r2, [r3]
 1723              	.L88:
 451:../Application/ButtonManager/ButtonManager.c **** 				}
 452:../Application/ButtonManager/ButtonManager.c **** 
 453:../Application/ButtonManager/ButtonManager.c **** 				if(state == 1) {
 1724              		.loc 1 453 0
 1725 0312 C14B     		ldr	r3, .L118+16
 1726 0314 1B78     		ldrb	r3, [r3]
 1727 0316 012B     		cmp	r3, #1
 1728 0318 68D1     		bne	.L89
 1729              	.LBB9:
 454:../Application/ButtonManager/ButtonManager.c **** 					if(TickMilliSecElapsedFrom(msRef) >= 2000) {
 1730              		.loc 1 454 0
 1731 031a C04B     		ldr	r3, .L118+20
 1732 031c 1B68     		ldr	r3, [r3]
 1733 031e 181C     		mov	r0, r3
 1734 0320 FFF7FEFF 		bl	TickMilliSecElapsedFrom
 1735 0324 021C     		mov	r2, r0
 1736 0326 BE4B     		ldr	r3, .L118+24
 1737 0328 9A42     		cmp	r2, r3
 1738 032a 07D9     		bls	.L90
 455:../Application/ButtonManager/ButtonManager.c **** 						state = 2;
 1739              		.loc 1 455 0
 1740 032c BA4B     		ldr	r3, .L118+16
 1741 032e 0222     		mov	r2, #2
 1742 0330 1A70     		strb	r2, [r3]
 456:../Application/ButtonManager/ButtonManager.c **** 						msRef = TickGetMsCounter();
 1743              		.loc 1 456 0
 1744 0332 FFF7FEFF 		bl	TickGetMsCounter
 1745 0336 021C     		mov	r2, r0
 1746 0338 B84B     		ldr	r3, .L118+20
 1747 033a 1A60     		str	r2, [r3]
 1748              	.L90:
 457:../Application/ButtonManager/ButtonManager.c **** 					}
 458:../Application/ButtonManager/ButtonManager.c **** 					unsigned short load = BQBatteryStatus.stateOfCharge;
 1749              		.loc 1 458 0
 1750 033c 3B1C     		mov	r3, r7
 1751 033e 1233     		add	r3, r3, #18
 1752 0340 B84A     		ldr	r2, .L118+28
 1753 0342 D28C     		ldrh	r2, [r2, #38]
 1754 0344 1A80     		strh	r2, [r3]
 459:../Application/ButtonManager/ButtonManager.c **** 					data[DISPLAY_TOTAL_DIGIT-1] = (load % 10) + '0';
 1755              		.loc 1 459 0
 1756 0346 3B1C     		mov	r3, r7
 1757 0348 1233     		add	r3, r3, #18
 1758 034a 1B88     		ldrh	r3, [r3]
 1759 034c 181C     		mov	r0, r3
 1760 034e 0A21     		mov	r1, #10
 1761 0350 FFF7FEFF 		bl	__aeabi_uidivmod
 1762 0354 0B1C     		mov	r3, r1
 1763 0356 9BB2     		uxth	r3, r3
 1764 0358 DBB2     		uxtb	r3, r3
 1765 035a 3033     		add	r3, r3, #48
 1766 035c DBB2     		uxtb	r3, r3
 1767 035e DAB2     		uxtb	r2, r3
 1768 0360 3B1D     		add	r3, r7, #4
 1769 0362 DA70     		strb	r2, [r3, #3]
 460:../Application/ButtonManager/ButtonManager.c **** 					load /= 10;
 1770              		.loc 1 460 0
 1771 0364 3C1C     		mov	r4, r7
 1772 0366 1234     		add	r4, r4, #18
 1773 0368 3B1C     		mov	r3, r7
 1774 036a 1233     		add	r3, r3, #18
 1775 036c 1B88     		ldrh	r3, [r3]
 1776 036e 181C     		mov	r0, r3
 1777 0370 0A21     		mov	r1, #10
 1778 0372 FFF7FEFF 		bl	__aeabi_uidiv
 1779 0376 031C     		mov	r3, r0
 1780 0378 2380     		strh	r3, [r4]
 461:../Application/ButtonManager/ButtonManager.c **** 					if(load != 0) {
 1781              		.loc 1 461 0
 1782 037a 3B1C     		mov	r3, r7
 1783 037c 1233     		add	r3, r3, #18
 1784 037e 1B88     		ldrh	r3, [r3]
 1785 0380 002B     		cmp	r3, #0
 1786 0382 0FD0     		beq	.L91
 462:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-2] = (load % 10) + '0';
 1787              		.loc 1 462 0
 1788 0384 3B1C     		mov	r3, r7
 1789 0386 1233     		add	r3, r3, #18
 1790 0388 1B88     		ldrh	r3, [r3]
 1791 038a 181C     		mov	r0, r3
 1792 038c 0A21     		mov	r1, #10
 1793 038e FFF7FEFF 		bl	__aeabi_uidivmod
 1794 0392 0B1C     		mov	r3, r1
 1795 0394 9BB2     		uxth	r3, r3
 1796 0396 DBB2     		uxtb	r3, r3
 1797 0398 3033     		add	r3, r3, #48
 1798 039a DBB2     		uxtb	r3, r3
 1799 039c DAB2     		uxtb	r2, r3
 1800 039e 3B1D     		add	r3, r7, #4
 1801 03a0 9A70     		strb	r2, [r3, #2]
 1802 03a2 02E0     		b	.L92
 1803              	.L91:
 463:../Application/ButtonManager/ButtonManager.c **** 					} else {
 464:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-2] = 0;
 1804              		.loc 1 464 0
 1805 03a4 3B1D     		add	r3, r7, #4
 1806 03a6 0022     		mov	r2, #0
 1807 03a8 9A70     		strb	r2, [r3, #2]
 1808              	.L92:
 465:../Application/ButtonManager/ButtonManager.c **** 					}
 466:../Application/ButtonManager/ButtonManager.c **** 					load /= 10;
 1809              		.loc 1 466 0
 1810 03aa 3C1C     		mov	r4, r7
 1811 03ac 1234     		add	r4, r4, #18
 1812 03ae 3B1C     		mov	r3, r7
 1813 03b0 1233     		add	r3, r3, #18
 1814 03b2 1B88     		ldrh	r3, [r3]
 1815 03b4 181C     		mov	r0, r3
 1816 03b6 0A21     		mov	r1, #10
 1817 03b8 FFF7FEFF 		bl	__aeabi_uidiv
 1818 03bc 031C     		mov	r3, r0
 1819 03be 2380     		strh	r3, [r4]
 467:../Application/ButtonManager/ButtonManager.c **** 					if(load != 0) {
 1820              		.loc 1 467 0
 1821 03c0 3B1C     		mov	r3, r7
 1822 03c2 1233     		add	r3, r3, #18
 1823 03c4 1B88     		ldrh	r3, [r3]
 1824 03c6 002B     		cmp	r3, #0
 1825 03c8 09D0     		beq	.L93
 468:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-3] = (load) + '0';
 1826              		.loc 1 468 0
 1827 03ca 3B1C     		mov	r3, r7
 1828 03cc 1233     		add	r3, r3, #18
 1829 03ce 1B88     		ldrh	r3, [r3]
 1830 03d0 DBB2     		uxtb	r3, r3
 1831 03d2 3033     		add	r3, r3, #48
 1832 03d4 DBB2     		uxtb	r3, r3
 1833 03d6 DAB2     		uxtb	r2, r3
 1834 03d8 3B1D     		add	r3, r7, #4
 1835 03da 5A70     		strb	r2, [r3, #1]
 1836 03dc 02E0     		b	.L94
 1837              	.L93:
 469:../Application/ButtonManager/ButtonManager.c **** 					} else {
 470:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-3] = 0;
 1838              		.loc 1 470 0
 1839 03de 3B1D     		add	r3, r7, #4
 1840 03e0 0022     		mov	r2, #0
 1841 03e2 5A70     		strb	r2, [r3, #1]
 1842              	.L94:
 471:../Application/ButtonManager/ButtonManager.c **** 					}
 472:../Application/ButtonManager/ButtonManager.c **** 					data[0] = 'b';
 1843              		.loc 1 472 0 discriminator 1
 1844 03e4 3B1D     		add	r3, r7, #4
 1845 03e6 6222     		mov	r2, #98
 1846 03e8 1A70     		strb	r2, [r3]
 1847              	.LBE9:
 1848 03ea 67E0     		b	.L95
 1849              	.L89:
 1850              	.LBB10:
 473:../Application/ButtonManager/ButtonManager.c **** 				} else {
 474:../Application/ButtonManager/ButtonManager.c **** 					if(TickMilliSecElapsedFrom(msRef) >= 2000) {
 1851              		.loc 1 474 0
 1852 03ec 8B4B     		ldr	r3, .L118+20
 1853 03ee 1B68     		ldr	r3, [r3]
 1854 03f0 181C     		mov	r0, r3
 1855 03f2 FFF7FEFF 		bl	TickMilliSecElapsedFrom
 1856 03f6 021C     		mov	r2, r0
 1857 03f8 894B     		ldr	r3, .L118+24
 1858 03fa 9A42     		cmp	r2, r3
 1859 03fc 07D9     		bls	.L96
 475:../Application/ButtonManager/ButtonManager.c **** 						state = 1;
 1860              		.loc 1 475 0
 1861 03fe 864B     		ldr	r3, .L118+16
 1862 0400 0122     		mov	r2, #1
 1863 0402 1A70     		strb	r2, [r3]
 476:../Application/ButtonManager/ButtonManager.c **** 						msRef = TickGetMsCounter();
 1864              		.loc 1 476 0
 1865 0404 FFF7FEFF 		bl	TickGetMsCounter
 1866 0408 021C     		mov	r2, r0
 1867 040a 844B     		ldr	r3, .L118+20
 1868 040c 1A60     		str	r2, [r3]
 1869              	.L96:
 477:../Application/ButtonManager/ButtonManager.c **** 					}
 478:../Application/ButtonManager/ButtonManager.c **** 					unsigned short load = DivingParameters.depth;
 1870              		.loc 1 478 0
 1871 040e 864B     		ldr	r3, .L118+32
 1872 0410 1A78     		ldrb	r2, [r3]
 1873 0412 3B1C     		mov	r3, r7
 1874 0414 1033     		add	r3, r3, #16
 1875 0416 1A80     		strh	r2, [r3]
 479:../Application/ButtonManager/ButtonManager.c **** 					data[DISPLAY_TOTAL_DIGIT-1] = (load % 10) + '0';
 1876              		.loc 1 479 0
 1877 0418 3B1C     		mov	r3, r7
 1878 041a 1033     		add	r3, r3, #16
 1879 041c 1B88     		ldrh	r3, [r3]
 1880 041e 181C     		mov	r0, r3
 1881 0420 0A21     		mov	r1, #10
 1882 0422 FFF7FEFF 		bl	__aeabi_uidivmod
 1883 0426 0B1C     		mov	r3, r1
 1884 0428 9BB2     		uxth	r3, r3
 1885 042a DBB2     		uxtb	r3, r3
 1886 042c 3033     		add	r3, r3, #48
 1887 042e DBB2     		uxtb	r3, r3
 1888 0430 DAB2     		uxtb	r2, r3
 1889 0432 3B1D     		add	r3, r7, #4
 1890 0434 DA70     		strb	r2, [r3, #3]
 480:../Application/ButtonManager/ButtonManager.c **** 					load /= 10;
 1891              		.loc 1 480 0
 1892 0436 3C1C     		mov	r4, r7
 1893 0438 1034     		add	r4, r4, #16
 1894 043a 3B1C     		mov	r3, r7
 1895 043c 1033     		add	r3, r3, #16
 1896 043e 1B88     		ldrh	r3, [r3]
 1897 0440 181C     		mov	r0, r3
 1898 0442 0A21     		mov	r1, #10
 1899 0444 FFF7FEFF 		bl	__aeabi_uidiv
 1900 0448 031C     		mov	r3, r0
 1901 044a 2380     		strh	r3, [r4]
 481:../Application/ButtonManager/ButtonManager.c **** 					if(load != 0) {
 1902              		.loc 1 481 0
 1903 044c 3B1C     		mov	r3, r7
 1904 044e 1033     		add	r3, r3, #16
 1905 0450 1B88     		ldrh	r3, [r3]
 1906 0452 002B     		cmp	r3, #0
 1907 0454 0FD0     		beq	.L97
 482:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-2] = (load % 10) + '0';
 1908              		.loc 1 482 0
 1909 0456 3B1C     		mov	r3, r7
 1910 0458 1033     		add	r3, r3, #16
 1911 045a 1B88     		ldrh	r3, [r3]
 1912 045c 181C     		mov	r0, r3
 1913 045e 0A21     		mov	r1, #10
 1914 0460 FFF7FEFF 		bl	__aeabi_uidivmod
 1915 0464 0B1C     		mov	r3, r1
 1916 0466 9BB2     		uxth	r3, r3
 1917 0468 DBB2     		uxtb	r3, r3
 1918 046a 3033     		add	r3, r3, #48
 1919 046c DBB2     		uxtb	r3, r3
 1920 046e DAB2     		uxtb	r2, r3
 1921 0470 3B1D     		add	r3, r7, #4
 1922 0472 9A70     		strb	r2, [r3, #2]
 1923 0474 02E0     		b	.L98
 1924              	.L97:
 483:../Application/ButtonManager/ButtonManager.c **** 					} else {
 484:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-2] = 0;
 1925              		.loc 1 484 0
 1926 0476 3B1D     		add	r3, r7, #4
 1927 0478 0022     		mov	r2, #0
 1928 047a 9A70     		strb	r2, [r3, #2]
 1929              	.L98:
 485:../Application/ButtonManager/ButtonManager.c **** 					}
 486:../Application/ButtonManager/ButtonManager.c **** 					load /= 10;
 1930              		.loc 1 486 0
 1931 047c 3C1C     		mov	r4, r7
 1932 047e 1034     		add	r4, r4, #16
 1933 0480 3B1C     		mov	r3, r7
 1934 0482 1033     		add	r3, r3, #16
 1935 0484 1B88     		ldrh	r3, [r3]
 1936 0486 181C     		mov	r0, r3
 1937 0488 0A21     		mov	r1, #10
 1938 048a FFF7FEFF 		bl	__aeabi_uidiv
 1939 048e 031C     		mov	r3, r0
 1940 0490 2380     		strh	r3, [r4]
 487:../Application/ButtonManager/ButtonManager.c **** 					if(load != 0) {
 1941              		.loc 1 487 0
 1942 0492 3B1C     		mov	r3, r7
 1943 0494 1033     		add	r3, r3, #16
 1944 0496 1B88     		ldrh	r3, [r3]
 1945 0498 002B     		cmp	r3, #0
 1946 049a 09D0     		beq	.L99
 488:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-3] = (load) + '0';
 1947              		.loc 1 488 0
 1948 049c 3B1C     		mov	r3, r7
 1949 049e 1033     		add	r3, r3, #16
 1950 04a0 1B88     		ldrh	r3, [r3]
 1951 04a2 DBB2     		uxtb	r3, r3
 1952 04a4 3033     		add	r3, r3, #48
 1953 04a6 DBB2     		uxtb	r3, r3
 1954 04a8 DAB2     		uxtb	r2, r3
 1955 04aa 3B1D     		add	r3, r7, #4
 1956 04ac 5A70     		strb	r2, [r3, #1]
 1957 04ae 02E0     		b	.L100
 1958              	.L99:
 489:../Application/ButtonManager/ButtonManager.c **** 					} else {
 490:../Application/ButtonManager/ButtonManager.c **** 						data[DISPLAY_TOTAL_DIGIT-3] = 0;
 1959              		.loc 1 490 0
 1960 04b0 3B1D     		add	r3, r7, #4
 1961 04b2 0022     		mov	r2, #0
 1962 04b4 5A70     		strb	r2, [r3, #1]
 1963              	.L100:
 491:../Application/ButtonManager/ButtonManager.c **** 					}
 492:../Application/ButtonManager/ButtonManager.c **** 					data[0] = 'd';
 1964              		.loc 1 492 0
 1965 04b6 3B1D     		add	r3, r7, #4
 1966 04b8 6422     		mov	r2, #100
 1967 04ba 1A70     		strb	r2, [r3]
 1968              	.L95:
 1969              	.LBE10:
 493:../Application/ButtonManager/ButtonManager.c **** 				}
 494:../Application/ButtonManager/ButtonManager.c **** 				DisplaySetDataDisplayed(data);
 1970              		.loc 1 494 0 discriminator 1
 1971 04bc 3B1D     		add	r3, r7, #4
 1972 04be 181C     		mov	r0, r3
 1973 04c0 FFF7FEFF 		bl	DisplaySetDataDisplayed
 1974              	.L87:
 1975              	.LBE8:
 495:../Application/ButtonManager/ButtonManager.c **** 			}
 496:../Application/ButtonManager/ButtonManager.c **** 
 497:../Application/ButtonManager/ButtonManager.c **** 			/*-- Reset bp counter --*/
 498:../Application/ButtonManager/ButtonManager.c **** 			lastWriteBpState = BUTTON_RELEASED;
 1976              		.loc 1 498 0
 1977 04c4 594B     		ldr	r3, .L118+36
 1978 04c6 0022     		mov	r2, #0
 1979 04c8 1A70     		strb	r2, [r3]
 499:../Application/ButtonManager/ButtonManager.c **** 			writeBpMsRef = 0;
 1980              		.loc 1 499 0
 1981 04ca 594B     		ldr	r3, .L118+40
 1982 04cc 0022     		mov	r2, #0
 1983 04ce 1A60     		str	r2, [r3]
 500:../Application/ButtonManager/ButtonManager.c **** 			lastReadBpState = BUTTON_RELEASED;
 1984              		.loc 1 500 0
 1985 04d0 584B     		ldr	r3, .L118+44
 1986 04d2 0022     		mov	r2, #0
 1987 04d4 1A70     		strb	r2, [r3]
 501:../Application/ButtonManager/ButtonManager.c **** 			readBpMsRef = 0;
 1988              		.loc 1 501 0
 1989 04d6 584B     		ldr	r3, .L118+48
 1990 04d8 0022     		mov	r2, #0
 1991 04da 1A60     		str	r2, [r3]
 1992 04dc E3E0     		b	.L67
 1993              	.L86:
 502:../Application/ButtonManager/ButtonManager.c **** 
 503:../Application/ButtonManager/ButtonManager.c **** 		} else {
 504:../Application/ButtonManager/ButtonManager.c **** 
 505:../Application/ButtonManager/ButtonManager.c **** 			state = 0;
 1994              		.loc 1 505 0
 1995 04de 4E4B     		ldr	r3, .L118+16
 1996 04e0 0022     		mov	r2, #0
 1997 04e2 1A70     		strb	r2, [r3]
 506:../Application/ButtonManager/ButtonManager.c **** 
 507:../Application/ButtonManager/ButtonManager.c **** 			if(waitAllUnpressed == BUTTON_RELEASED) {
 1998              		.loc 1 507 0
 1999 04e4 4A4B     		ldr	r3, .L118+8
 2000 04e6 1B78     		ldrb	r3, [r3]
 2001 04e8 002B     		cmp	r3, #0
 2002 04ea 00D0     		beq	.LCB1726
 2003 04ec B1E0     		b	.L101	@long jump
 2004              	.LCB1726:
 508:../Application/ButtonManager/ButtonManager.c **** 
 509:../Application/ButtonManager/ButtonManager.c **** 				if(ButtonWriteGetState() == BUTTON_PRESSED) {
 2005              		.loc 1 509 0
 2006 04ee 464B     		ldr	r3, .L118
 2007 04f0 1A69     		ldr	r2, [r3, #16]
 2008 04f2 0223     		mov	r3, #2
 2009 04f4 1340     		and	r3, r2
 2010 04f6 5B08     		lsr	r3, r3, #1
 2011 04f8 012B     		cmp	r3, #1
 2012 04fa 45D1     		bne	.L102
 510:../Application/ButtonManager/ButtonManager.c **** 
 511:../Application/ButtonManager/ButtonManager.c **** 					ButtonManagerCtrl.lpm = BUTTONMANAGER_WORKING;
 2013              		.loc 1 511 0
 2014 04fc 434B     		ldr	r3, .L118+4
 2015 04fe 0022     		mov	r2, #0
 2016 0500 DA70     		strb	r2, [r3, #3]
 512:../Application/ButtonManager/ButtonManager.c **** 
 513:../Application/ButtonManager/ButtonManager.c **** 					if(MemoryManagerCtrl.isValid.bits.diving && RtcUpdatedSinceLastReset()) {
 2017              		.loc 1 513 0
 2018 0502 4E4B     		ldr	r3, .L118+52
 2019 0504 1B78     		ldrb	r3, [r3]
 2020 0506 9B07     		lsl	r3, r3, #30
 2021 0508 DB0F     		lsr	r3, r3, #31
 2022 050a DBB2     		uxtb	r3, r3
 2023 050c 002B     		cmp	r3, #0
 2024 050e 2DD0     		beq	.L103
 2025              		.loc 1 513 0 is_stmt 0 discriminator 1
 2026 0510 FFF7FEFF 		bl	RtcUpdatedSinceLastReset
 2027 0514 031C     		mov	r3, r0
 2028 0516 002B     		cmp	r3, #0
 2029 0518 28D0     		beq	.L103
 514:../Application/ButtonManager/ButtonManager.c **** 
 515:../Application/ButtonManager/ButtonManager.c **** 						if(lastWriteBpState == BUTTON_RELEASED) {
 2030              		.loc 1 515 0 is_stmt 1
 2031 051a 444B     		ldr	r3, .L118+36
 2032 051c 1B78     		ldrb	r3, [r3]
 2033 051e 002B     		cmp	r3, #0
 2034 0520 08D1     		bne	.L104
 516:../Application/ButtonManager/ButtonManager.c **** 							lastWriteBpState = BUTTON_PRESSED;
 2035              		.loc 1 516 0
 2036 0522 424B     		ldr	r3, .L118+36
 2037 0524 0122     		mov	r2, #1
 2038 0526 1A70     		strb	r2, [r3]
 517:../Application/ButtonManager/ButtonManager.c **** 							writeBpMsRef = TickGetMsCounter();
 2039              		.loc 1 517 0
 2040 0528 FFF7FEFF 		bl	TickGetMsCounter
 2041 052c 021C     		mov	r2, r0
 2042 052e 404B     		ldr	r3, .L118+40
 2043 0530 1A60     		str	r2, [r3]
 2044 0532 1AE0     		b	.L105
 2045              	.L104:
 518:../Application/ButtonManager/ButtonManager.c **** 						} else {
 519:../Application/ButtonManager/ButtonManager.c **** 
 520:../Application/ButtonManager/ButtonManager.c **** 							if( TickMilliSecElapsedFrom(writeBpMsRef) >= BUTTON_MANAGER_TIME_MS_TO_TRIG) {
 2046              		.loc 1 520 0
 2047 0534 3E4B     		ldr	r3, .L118+40
 2048 0536 1B68     		ldr	r3, [r3]
 2049 0538 181C     		mov	r0, r3
 2050 053a FFF7FEFF 		bl	TickMilliSecElapsedFrom
 2051 053e 021C     		mov	r2, r0
 2052 0540 374B     		ldr	r3, .L118+24
 2053 0542 9A42     		cmp	r2, r3
 2054 0544 11D9     		bls	.L105
 521:../Application/ButtonManager/ButtonManager.c **** 								if(ButtonManagerCtrl.opState == BUTTONMANAGER_STATE_STANDBY) {
 2055              		.loc 1 521 0
 2056 0546 314B     		ldr	r3, .L118+4
 2057 0548 9B78     		ldrb	r3, [r3, #2]
 2058 054a 002B     		cmp	r3, #0
 2059 054c 0DD1     		bne	.L105
 522:../Application/ButtonManager/ButtonManager.c **** 									ButtonManagerCtrl.operation.bits.write = 1;
 2060              		.loc 1 522 0
 2061 054e 2F4B     		ldr	r3, .L118+4
 2062 0550 1A78     		ldrb	r2, [r3]
 2063 0552 0221     		mov	r1, #2
 2064 0554 0A43     		orr	r2, r1
 2065 0556 1A70     		strb	r2, [r3]
 523:../Application/ButtonManager/ButtonManager.c **** 									ButtonManagerCtrl.operation.bits.read = 0;
 2066              		.loc 1 523 0
 2067 0558 2C4B     		ldr	r3, .L118+4
 2068 055a 1A78     		ldrb	r2, [r3]
 2069 055c 0121     		mov	r1, #1
 2070 055e 8A43     		bic	r2, r1
 2071 0560 1A70     		strb	r2, [r3]
 524:../Application/ButtonManager/ButtonManager.c **** 									ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_START;
 2072              		.loc 1 524 0
 2073 0562 2A4B     		ldr	r3, .L118+4
 2074 0564 0122     		mov	r2, #1
 2075 0566 9A70     		strb	r2, [r3, #2]
 515:../Application/ButtonManager/ButtonManager.c **** 						if(lastWriteBpState == BUTTON_RELEASED) {
 2076              		.loc 1 515 0
 2077 0568 0DE0     		b	.L106
 2078              	.L105:
 2079 056a 0CE0     		b	.L106
 2080              	.L103:
 525:../Application/ButtonManager/ButtonManager.c **** 								}
 526:../Application/ButtonManager/ButtonManager.c **** 							}
 527:../Application/ButtonManager/ButtonManager.c **** 						}
 528:../Application/ButtonManager/ButtonManager.c **** 					} else {
 529:../Application/ButtonManager/ButtonManager.c **** 						if(MemoryManagerCtrl.isValid.bits.diving == 0) {
 2081              		.loc 1 529 0
 2082 056c 334B     		ldr	r3, .L118+52
 2083 056e 1B78     		ldrb	r3, [r3]
 2084 0570 9B07     		lsl	r3, r3, #30
 2085 0572 DB0F     		lsr	r3, r3, #31
 2086 0574 DBB2     		uxtb	r3, r3
 2087 0576 002B     		cmp	r3, #0
 2088 0578 02D1     		bne	.L107
 530:../Application/ButtonManager/ButtonManager.c **** 							ButtonManagerDisplayProgrammedError();
 2089              		.loc 1 530 0
 2090 057a FFF7FEFF 		bl	ButtonManagerDisplayProgrammedError
 2091 057e 09E0     		b	.L108
 2092              	.L107:
 531:../Application/ButtonManager/ButtonManager.c **** 						} else {
 532:../Application/ButtonManager/ButtonManager.c **** 							ButtonManagerDisplayDateError();
 2093              		.loc 1 532 0
 2094 0580 FFF7FEFF 		bl	ButtonManagerDisplayDateError
 2095 0584 06E0     		b	.L108
 2096              	.L106:
 2097 0586 05E0     		b	.L108
 2098              	.L102:
 533:../Application/ButtonManager/ButtonManager.c **** 						}
 534:../Application/ButtonManager/ButtonManager.c **** 					}
 535:../Application/ButtonManager/ButtonManager.c **** 
 536:../Application/ButtonManager/ButtonManager.c **** 				} else {
 537:../Application/ButtonManager/ButtonManager.c **** 					lastWriteBpState = BUTTON_RELEASED;
 2099              		.loc 1 537 0
 2100 0588 284B     		ldr	r3, .L118+36
 2101 058a 0022     		mov	r2, #0
 2102 058c 1A70     		strb	r2, [r3]
 538:../Application/ButtonManager/ButtonManager.c **** 					writeBpMsRef = 0;
 2103              		.loc 1 538 0
 2104 058e 284B     		ldr	r3, .L118+40
 2105 0590 0022     		mov	r2, #0
 2106 0592 1A60     		str	r2, [r3]
 2107              	.L108:
 539:../Application/ButtonManager/ButtonManager.c **** 				}
 540:../Application/ButtonManager/ButtonManager.c **** 
 541:../Application/ButtonManager/ButtonManager.c **** 
 542:../Application/ButtonManager/ButtonManager.c **** 				if(ButtonReadGetState() == BUTTON_PRESSED) {
 2108              		.loc 1 542 0
 2109 0594 1C4B     		ldr	r3, .L118
 2110 0596 1A69     		ldr	r2, [r3, #16]
 2111 0598 0423     		mov	r3, #4
 2112 059a 1340     		and	r3, r2
 2113 059c 9B08     		lsr	r3, r3, #2
 2114 059e 012B     		cmp	r3, #1
 2115 05a0 4ED1     		bne	.L109
 543:../Application/ButtonManager/ButtonManager.c **** 
 544:../Application/ButtonManager/ButtonManager.c **** 					ButtonManagerCtrl.lpm = BUTTONMANAGER_WORKING;
 2116              		.loc 1 544 0
 2117 05a2 1A4B     		ldr	r3, .L118+4
 2118 05a4 0022     		mov	r2, #0
 2119 05a6 DA70     		strb	r2, [r3, #3]
 545:../Application/ButtonManager/ButtonManager.c **** 
 546:../Application/ButtonManager/ButtonManager.c **** 					if(RtcUpdatedSinceLastReset() ) {
 2120              		.loc 1 546 0
 2121 05a8 FFF7FEFF 		bl	RtcUpdatedSinceLastReset
 2122 05ac 031C     		mov	r3, r0
 2123 05ae 002B     		cmp	r3, #0
 2124 05b0 27D0     		beq	.L110
 547:../Application/ButtonManager/ButtonManager.c **** 
 548:../Application/ButtonManager/ButtonManager.c **** 						if(lastReadBpState == BUTTON_RELEASED) {
 2125              		.loc 1 548 0
 2126 05b2 204B     		ldr	r3, .L118+44
 2127 05b4 1B78     		ldrb	r3, [r3]
 2128 05b6 002B     		cmp	r3, #0
 2129 05b8 08D1     		bne	.L111
 549:../Application/ButtonManager/ButtonManager.c **** 							lastReadBpState = BUTTON_PRESSED;
 2130              		.loc 1 549 0
 2131 05ba 1E4B     		ldr	r3, .L118+44
 2132 05bc 0122     		mov	r2, #1
 2133 05be 1A70     		strb	r2, [r3]
 550:../Application/ButtonManager/ButtonManager.c **** 							readBpMsRef = TickGetMsCounter();
 2134              		.loc 1 550 0
 2135 05c0 FFF7FEFF 		bl	TickGetMsCounter
 2136 05c4 021C     		mov	r2, r0
 2137 05c6 1C4B     		ldr	r3, .L118+48
 2138 05c8 1A60     		str	r2, [r3]
 2139 05ca 3FE0     		b	.L114
 2140              	.L111:
 551:../Application/ButtonManager/ButtonManager.c **** 						} else {
 552:../Application/ButtonManager/ButtonManager.c **** 
 553:../Application/ButtonManager/ButtonManager.c **** 							if( TickMilliSecElapsedFrom(readBpMsRef) >= BUTTON_MANAGER_TIME_MS_TO_TRIG) {
 2141              		.loc 1 553 0
 2142 05cc 1A4B     		ldr	r3, .L118+48
 2143 05ce 1B68     		ldr	r3, [r3]
 2144 05d0 181C     		mov	r0, r3
 2145 05d2 FFF7FEFF 		bl	TickMilliSecElapsedFrom
 2146 05d6 021C     		mov	r2, r0
 2147 05d8 114B     		ldr	r3, .L118+24
 2148 05da 9A42     		cmp	r2, r3
 2149 05dc 36D9     		bls	.L114
 554:../Application/ButtonManager/ButtonManager.c **** 								if(ButtonManagerCtrl.opState == BUTTONMANAGER_STATE_STANDBY) {
 2150              		.loc 1 554 0
 2151 05de 0B4B     		ldr	r3, .L118+4
 2152 05e0 9B78     		ldrb	r3, [r3, #2]
 2153 05e2 002B     		cmp	r3, #0
 2154 05e4 32D1     		bne	.L114
 555:../Application/ButtonManager/ButtonManager.c **** 									ButtonManagerCtrl.operation.bits.read = 1;
 2155              		.loc 1 555 0
 2156 05e6 094B     		ldr	r3, .L118+4
 2157 05e8 1A78     		ldrb	r2, [r3]
 2158 05ea 0121     		mov	r1, #1
 2159 05ec 0A43     		orr	r2, r1
 2160 05ee 1A70     		strb	r2, [r3]
 556:../Application/ButtonManager/ButtonManager.c **** 									ButtonManagerCtrl.operation.bits.write = 0;
 2161              		.loc 1 556 0
 2162 05f0 064B     		ldr	r3, .L118+4
 2163 05f2 1A78     		ldrb	r2, [r3]
 2164 05f4 0221     		mov	r1, #2
 2165 05f6 8A43     		bic	r2, r1
 2166 05f8 1A70     		strb	r2, [r3]
 557:../Application/ButtonManager/ButtonManager.c **** 									ButtonManagerCtrl.opState = BUTTONMANAGER_STATE_START;
 2167              		.loc 1 557 0
 2168 05fa 044B     		ldr	r3, .L118+4
 2169 05fc 0122     		mov	r2, #1
 2170 05fe 9A70     		strb	r2, [r3, #2]
 2171 0600 24E0     		b	.L114
 2172              	.L110:
 558:../Application/ButtonManager/ButtonManager.c **** 								}
 559:../Application/ButtonManager/ButtonManager.c **** 							}
 560:../Application/ButtonManager/ButtonManager.c **** 						}
 561:../Application/ButtonManager/ButtonManager.c **** 					} else {
 562:../Application/ButtonManager/ButtonManager.c **** 						ButtonManagerDisplayDateError();
 2173              		.loc 1 562 0
 2174 0602 FFF7FEFF 		bl	ButtonManagerDisplayDateError
 2175 0606 21E0     		b	.L114
 2176              	.L119:
 2177              		.align	2
 2178              	.L118:
 2179 0608 00F00F40 		.word	1074786304
 2180 060c 00000000 		.word	ButtonManagerCtrl
 2181 0610 00000000 		.word	waitAllUnpressed
 2182 0614 00000000 		.word	PowerManagerCtrl
 2183 0618 00000000 		.word	state.5691
 2184 061c 00000000 		.word	msRef.5692
 2185 0620 CF070000 		.word	1999
 2186 0624 00000000 		.word	BQBatteryStatus
 2187 0628 00000000 		.word	DivingParameters
 2188 062c 00000000 		.word	lastWriteBpState
 2189 0630 00000000 		.word	writeBpMsRef
 2190 0634 00000000 		.word	lastReadBpState
 2191 0638 00000000 		.word	readBpMsRef
 2192 063c 00000000 		.word	MemoryManagerCtrl
 2193              	.L109:
 563:../Application/ButtonManager/ButtonManager.c **** 					}
 564:../Application/ButtonManager/ButtonManager.c **** 
 565:../Application/ButtonManager/ButtonManager.c **** 				} else {
 566:../Application/ButtonManager/ButtonManager.c **** 					lastReadBpState = BUTTON_RELEASED;
 2194              		.loc 1 566 0
 2195 0640 1A4B     		ldr	r3, .L120
 2196 0642 0022     		mov	r2, #0
 2197 0644 1A70     		strb	r2, [r3]
 567:../Application/ButtonManager/ButtonManager.c **** 					readBpMsRef = 0;
 2198              		.loc 1 567 0
 2199 0646 1A4B     		ldr	r3, .L120+4
 2200 0648 0022     		mov	r2, #0
 2201 064a 1A60     		str	r2, [r3]
 2202              	.L114:
 568:../Application/ButtonManager/ButtonManager.c **** 				}
 569:../Application/ButtonManager/ButtonManager.c **** 
 570:../Application/ButtonManager/ButtonManager.c **** 				ButtonManagerDealer();
 2203              		.loc 1 570 0 discriminator 4
 2204 064c FFF7FEFF 		bl	ButtonManagerDealer
 2205 0650 10E0     		b	.L115
 2206              	.L101:
 571:../Application/ButtonManager/ButtonManager.c **** 			} else {
 572:../Application/ButtonManager/ButtonManager.c **** 				ButtonManagerDisplayNone();
 2207              		.loc 1 572 0
 2208 0652 FFF7FEFF 		bl	ButtonManagerDisplayNone
 573:../Application/ButtonManager/ButtonManager.c **** 				if(ButtonReadGetState() == BUTTON_RELEASED && ButtonWriteGetState() == BUTTON_RELEASED) {
 2209              		.loc 1 573 0
 2210 0656 174B     		ldr	r3, .L120+8
 2211 0658 1A69     		ldr	r2, [r3, #16]
 2212 065a 0423     		mov	r3, #4
 2213 065c 1340     		and	r3, r2
 2214 065e 9B08     		lsr	r3, r3, #2
 2215 0660 08D1     		bne	.L115
 2216              		.loc 1 573 0 is_stmt 0 discriminator 1
 2217 0662 144B     		ldr	r3, .L120+8
 2218 0664 1A69     		ldr	r2, [r3, #16]
 2219 0666 0223     		mov	r3, #2
 2220 0668 1340     		and	r3, r2
 2221 066a 5B08     		lsr	r3, r3, #1
 2222 066c 02D1     		bne	.L115
 574:../Application/ButtonManager/ButtonManager.c **** 					waitAllUnpressed = BUTTON_RELEASED;
 2223              		.loc 1 574 0 is_stmt 1
 2224 066e 124B     		ldr	r3, .L120+12
 2225 0670 0022     		mov	r2, #0
 2226 0672 1A70     		strb	r2, [r3]
 2227              	.L115:
 575:../Application/ButtonManager/ButtonManager.c **** 				}
 576:../Application/ButtonManager/ButtonManager.c **** 			}
 577:../Application/ButtonManager/ButtonManager.c **** 
 578:../Application/ButtonManager/ButtonManager.c **** 			if(waitAllUnpressed == BUTTON_RELEASED && lastReadBpState == BUTTON_RELEASED && lastWriteBpState
 2228              		.loc 1 578 0
 2229 0674 104B     		ldr	r3, .L120+12
 2230 0676 1B78     		ldrb	r3, [r3]
 2231 0678 002B     		cmp	r3, #0
 2232 067a 14D1     		bne	.L67
 2233              		.loc 1 578 0 is_stmt 0 discriminator 1
 2234 067c 0B4B     		ldr	r3, .L120
 2235 067e 1B78     		ldrb	r3, [r3]
 2236 0680 002B     		cmp	r3, #0
 2237 0682 10D1     		bne	.L67
 2238 0684 0D4B     		ldr	r3, .L120+16
 2239 0686 1B78     		ldrb	r3, [r3]
 2240 0688 002B     		cmp	r3, #0
 2241 068a 0CD1     		bne	.L67
 2242 068c 0C4B     		ldr	r3, .L120+20
 2243 068e 9B78     		ldrb	r3, [r3, #2]
 2244 0690 002B     		cmp	r3, #0
 2245 0692 08D1     		bne	.L67
 2246 0694 0A4B     		ldr	r3, .L120+20
 2247 0696 1B88     		ldrh	r3, [r3]
 2248 0698 002B     		cmp	r3, #0
 2249 069a 04D1     		bne	.L67
 579:../Application/ButtonManager/ButtonManager.c **** 				ButtonManagerDisplayNone();
 2250              		.loc 1 579 0 is_stmt 1
 2251 069c FFF7FEFF 		bl	ButtonManagerDisplayNone
 580:../Application/ButtonManager/ButtonManager.c **** 				ButtonManagerCtrl.lpm = BUTTONMANAGER_READY_FOR_LPM;
 2252              		.loc 1 580 0
 2253 06a0 074B     		ldr	r3, .L120+20
 2254 06a2 0122     		mov	r2, #1
 2255 06a4 DA70     		strb	r2, [r3, #3]
 2256              	.L67:
 581:../Application/ButtonManager/ButtonManager.c **** 			}
 582:../Application/ButtonManager/ButtonManager.c **** 		}
 583:../Application/ButtonManager/ButtonManager.c **** 	}
 584:../Application/ButtonManager/ButtonManager.c **** }
 2257              		.loc 1 584 0
 2258 06a6 BD46     		mov	sp, r7
 2259 06a8 07B0     		add	sp, sp, #28
 2260              		@ sp needed
 2261 06aa 90BD     		pop	{r4, r7, pc}
 2262              	.L121:
 2263              		.align	2
 2264              	.L120:
 2265 06ac 00000000 		.word	lastReadBpState
 2266 06b0 00000000 		.word	readBpMsRef
 2267 06b4 00F00F40 		.word	1074786304
 2268 06b8 00000000 		.word	waitAllUnpressed
 2269 06bc 00000000 		.word	lastWriteBpState
 2270 06c0 00000000 		.word	ButtonManagerCtrl
 2271              		.cfi_endproc
 2272              	.LFE43:
 2274              		.section	.bss.msRef.5636,"aw",%nobits
 2275              		.align	2
 2278              	msRef.5636:
 2279 0000 00000000 		.space	4
 2280              		.section	.bss.state.5691,"aw",%nobits
 2283              	state.5691:
 2284 0000 00       		.space	1
 2285              		.section	.bss.msRef.5692,"aw",%nobits
 2286              		.align	2
 2289              	msRef.5692:
 2290 0000 00000000 		.space	4
 2291              		.text
 2292              	.Letext0:
 2293              		.file 2 "../DSP/Processor/MKL16Z4.h"
 2294              		.file 3 "e:\\logiciels\\freescale\\kinetis design studio v2.0.0\\toolchain\\arm-none-eabi\\include
 2295              		.file 4 "../BSP/Button/Button.h"
 2296              		.file 5 "../BSP/BatteryManagement/BQ27510DRZRG2.h"
 2297              		.file 6 "../BSP/Display/display.h"
 2298              		.file 7 "../BSP/Led/Led.h"
 2299              		.file 8 "../Application/PowerManager/PowerManager.h"
 2300              		.file 9 "../Application/SRD/SRDMemorymapping.h"
 2301              		.file 10 "../Application/MemoryManager/MemoryManager.h"
 2302              		.file 11 "../Application/RFIDManager/RFIDManager.h"
 2303              		.file 12 "../Application/ButtonManager/ButtonManager.h"
DEFINED SYMBOLS
                            *ABS*:00000000 ButtonManager.c
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:21     .bss.lastWriteBpState:00000000 lastWriteBpState
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:22     .bss.lastWriteBpState:00000000 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:27     .bss.lastReadBpState:00000000 lastReadBpState
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:28     .bss.lastReadBpState:00000000 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:33     .bss.waitAllUnpressed:00000000 waitAllUnpressed
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:34     .bss.waitAllUnpressed:00000000 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:40     .bss.writeBpMsRef:00000000 writeBpMsRef
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:37     .bss.writeBpMsRef:00000000 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:47     .bss.readBpMsRef:00000000 readBpMsRef
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:44     .bss.readBpMsRef:00000000 $d
                            *COM*:00000004 ButtonManagerCtrl
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:51     .text.ButtonManagerDealer:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:56     .text.ButtonManagerDealer:00000000 ButtonManagerDealer
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:82     .rodata.ButtonManagerDealer:00000000 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:647    .text.ButtonManagerDisplayRfidError:00000000 ButtonManagerDisplayRfidError
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1103   .text.ButtonManagerDisplayLogError:00000000 ButtonManagerDisplayLogError
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1049   .text.ButtonManagerDisplayWriteError:00000000 ButtonManagerDisplayWriteError
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:927    .text.ButtonManagerDisplayWrite:00000000 ButtonManagerDisplayWrite
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:696    .text.ButtonManagerDisplayRead:00000000 ButtonManagerDisplayRead
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:515    .text.ButtonManagerDealer:000002a4 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:2278   .bss.msRef.5636:00000000 msRef.5636
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:527    .rodata:00000000 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:534    .text.ButtonManagerDisplayProgrammedError:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:539    .text.ButtonManagerDisplayProgrammedError:00000000 ButtonManagerDisplayProgrammedError
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:576    .text.ButtonManagerDisplayProgrammedError:00000030 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:588    .text.ButtonManagerDisplayDateError:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:593    .text.ButtonManagerDisplayDateError:00000000 ButtonManagerDisplayDateError
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:630    .text.ButtonManagerDisplayDateError:00000030 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:642    .text.ButtonManagerDisplayRfidError:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:684    .text.ButtonManagerDisplayRfidError:00000030 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:691    .text.ButtonManagerDisplayRead:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:917    .text.ButtonManagerDisplayRead:00000160 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:922    .text.ButtonManagerDisplayWrite:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1032   .text.ButtonManagerDisplayWrite:000000ac $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1044   .text.ButtonManagerDisplayWriteError:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1086   .text.ButtonManagerDisplayWriteError:00000030 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1098   .text.ButtonManagerDisplayLogError:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1140   .text.ButtonManagerDisplayLogError:00000030 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1145   .text.ButtonManagerDisplayNone:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1150   .text.ButtonManagerDisplayNone:00000000 ButtonManagerDisplayNone
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1182   .text.ButtonManagerInit:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1187   .text.ButtonManagerInit:00000000 ButtonManagerInit
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1238   .text.ButtonManagerInit:0000003c $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1248   .text.ButtonManager:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1253   .text.ButtonManager:00000000 ButtonManager
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1654   .text.ButtonManager:00000290 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:2283   .bss.state.5691:00000000 state.5691
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:2289   .bss.msRef.5692:00000000 msRef.5692
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:1664   .text.ButtonManager:000002b0 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:2179   .text.ButtonManager:00000608 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:2195   .text.ButtonManager:00000640 $t
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:2265   .text.ButtonManager:000006ac $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:2275   .bss.msRef.5636:00000000 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:2284   .bss.state.5691:00000000 $d
C:\Users\Thibaut\AppData\Local\Temp\ccTIww5G.s:2286   .bss.msRef.5692:00000000 $d
                     .debug_frame:00000010 $d
                           .group:00000000 wm4.1.e04ac588437856bc6ef5393c7523eb9b
                           .group:00000000 wm4.MKL16Z4.h.90.bfde7d3466e2aaae63e51401b8102c97
                           .group:00000000 wm4.stdint.h.10.90b695f550ca6cc3fb08fa83baf01e05
                           .group:00000000 wm4.MKL16Z4.h.103.3e71c13f67b70bf817331938e7ca6a21
                           .group:00000000 wm4.core_cm0plus.h.43.8a4a713129c4559638c90873d349aea7
                           .group:00000000 wm4.core_cmInstr.h.39.983ab10f37e3e59f2988e58e0e4c2ffe
                           .group:00000000 wm4.core_cm0plus.h.155.59f470bcbcb3497af7bb725005dd1359
                           .group:00000000 wm4.system_MKL16Z4.h.88.72b1d1936df247599ee4cea7d4cce2ba
                           .group:00000000 wm4.MKL16Z4.h.269.abf5f141593110fd4167c1d7382def80
                           .group:00000000 wm4.DSP_mkl16z256vlh4.h.41.eda3ab3179e3d55e14f47eb53566a464
                           .group:00000000 wm4.Button.h.35.8bcf0f0aab859c9b679c4b648c6310fc
                           .group:00000000 wm4.i2c0.h.37.2b2098a180a30784011003ce8cd823b6
                           .group:00000000 wm4.BQ27510DRZRG2.h.34.6e915514b865ff93634917ae057cba84
                           .group:00000000 wm4.LTC4160.h.15.6238cd06ad496f86f76fe362fdbbaf9e
                           .group:00000000 wm4.spi0.h.16.b09c181484b9e78aa2dadee88ba56f8f
                           .group:00000000 wm4.decoder7Seg.h.14.271fb9849289ac3941da1376be6ecd45
                           .group:00000000 wm4.decoder16Seg.h.14.56393bd9ac56e1585c24452caa62a917
                           .group:00000000 wm4.display.h.36.df8fb08902ce0c7101c5e4f884bb1235
                           .group:00000000 wm4.Uart1.h.37.6fef97192d2ff3e9d94e3c83386fe98a
                           .group:00000000 wm4.UsbUart.h.34.01b359f06951367d9bca1b2430378c68
                           .group:00000000 wm4.device.h.14.5ba5d7257eda9269d01eaccffebc5e2e
                           .group:00000000 wm4.spi1.h.16.6602a6214774aff179c2aacc28b164ab
                           .group:00000000 wm4.FM25V20.h.37.bab310bac0b9fe3c9b553014d8517875
                           .group:00000000 wm4.Led.h.14.395357503168da9d297680815ea21079
                           .group:00000000 wm4.pit.h.16.22e9304d181f27ae9bdca78be05bb5ff
                           .group:00000000 wm4.Tick.h.35.9becc5b46723cd15f4eb8d237aca386c
                           .group:00000000 wm4.SRDMemorymapping.h.14.0f57e1c6dbbba59a11bbccc2f434d3a9
                           .group:00000000 wm4.MemoryManager.h.40.8798350820305da8d39f9c88fc625152
                           .group:00000000 wm4.rtc.h.14.3918d22d7824c1bf824923ad6f2f53ca
                           .group:00000000 wm4.Uart0.h.16.c0e517c0e55953fff90932f3da2c6846
                           .group:00000000 wm4.Uart2.h.16.da116fa320383d156efd68eb5ce0f4d2
                           .group:00000000 wm4.CR95UartMapper.h.36.25902f2c49f620d2ecb69bf8e87e5532
                           .group:00000000 wm4.CR95HF.h.36.fd1c797c05e0f4d9510764e2aff8f9f5
                           .group:00000000 wm4.globalParameters.h.14.6323ff6ea83f006a35e638965267dc7f
                           .group:00000000 wm4.UsbManager.h.40.511f52543de15c9293aafe28c6123460
                           .group:00000000 wm4.ButtonManager.h.42.ffafdf87c11dba91387998218ca29115

UNDEFINED SYMBOLS
RtcGetTime
MemoryManagerWriteLog
TickGetMsCounter
TickMilliSecElapsedFrom
RFIDCtrl
SRDEeprom
DivingParameters
memcpy
DisplaySetPower
DisplaySetDataDisplayed
__aeabi_uidivmod
__aeabi_uidiv
ButtonInit
DisplayGetDataDisplayed
PowerManagerCtrl
BQBatteryStatus
RtcUpdatedSinceLastReset
MemoryManagerCtrl
