   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	"UsbManager.c"
  14              		.text
  15              	.Ltext0:
  16              		.cfi_sections	.debug_frame
  17              		.comm	UsbCtrl,144,4
  18              		.section	.text.UsbManagerInit,"ax",%progbits
  19              		.align	2
  20              		.global	UsbManagerInit
  21              		.code	16
  22              		.thumb_func
  24              	UsbManagerInit:
  25              	.LFB33:
  26              		.file 1 "../Application/UsbManager/UsbManager.c"
   1:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
   2:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
   3:../Application/UsbManager/UsbManager.c **** /**
   4:../Application/UsbManager/UsbManager.c ****  * \file    UsbManager.c
   5:../Application/UsbManager/UsbManager.c ****  * \author  Thibaut LALUQUE 3D-Ouest
   6:../Application/UsbManager/UsbManager.c ****  * \date    20/11/2014
   7:../Application/UsbManager/UsbManager.c ****  * \version 1.0
   8:../Application/UsbManager/UsbManager.c ****  * \brief 	Source file for USB Uart management (with FTDI).
   9:../Application/UsbManager/UsbManager.c ****  * \details All Right Reserved.
  10:../Application/UsbManager/UsbManager.c ****  */
  11:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  12:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  13:../Application/UsbManager/UsbManager.c **** 
  14:../Application/UsbManager/UsbManager.c **** 
  15:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  16:../Application/UsbManager/UsbManager.c **** /*## INCLUDES ################################################################################*/
  17:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  18:../Application/UsbManager/UsbManager.c **** #include "UsbManager.h"
  19:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  20:../Application/UsbManager/UsbManager.c **** /*## END INCLUDES ############################################################################*/
  21:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  22:../Application/UsbManager/UsbManager.c **** 
  23:../Application/UsbManager/UsbManager.c **** 
  24:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  25:../Application/UsbManager/UsbManager.c **** /*## LOCAL DEFINES ###########################################################################*/
  26:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  27:../Application/UsbManager/UsbManager.c **** 
  28:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  29:../Application/UsbManager/UsbManager.c **** /*## END LOCAL DEFINES ######################################################################*/
  30:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  31:../Application/UsbManager/UsbManager.c **** 
  32:../Application/UsbManager/UsbManager.c **** 
  33:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  34:../Application/UsbManager/UsbManager.c **** /*## LOCAL FONCTIONS DECLARATION #############################################################*/
  35:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  36:../Application/UsbManager/UsbManager.c **** 
  37:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  38:../Application/UsbManager/UsbManager.c **** /*## END LOCAL FONCTIONS DECLARATION #########################################################*/
  39:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  40:../Application/UsbManager/UsbManager.c **** 
  41:../Application/UsbManager/UsbManager.c **** 
  42:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  43:../Application/UsbManager/UsbManager.c **** /*## LOCAL VARIABLES #########################################################################*/
  44:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  45:../Application/UsbManager/UsbManager.c **** 
  46:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  47:../Application/UsbManager/UsbManager.c **** /*## END LOCAL VARIABLES #####################################################################*/
  48:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  49:../Application/UsbManager/UsbManager.c **** 
  50:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  51:../Application/UsbManager/UsbManager.c **** /*## GLOBAL VARIABLES ########################################################################*/
  52:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  53:../Application/UsbManager/UsbManager.c **** tUsbCtrl	UsbCtrl;
  54:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  55:../Application/UsbManager/UsbManager.c **** /*## END GLOBAL VARIABLES ####################################################################*/
  56:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  57:../Application/UsbManager/UsbManager.c **** 
  58:../Application/UsbManager/UsbManager.c **** 
  59:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  60:../Application/UsbManager/UsbManager.c **** /*## LOCAL FONCTIONS #########################################################################*/
  61:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  62:../Application/UsbManager/UsbManager.c **** 
  63:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  64:../Application/UsbManager/UsbManager.c **** /*## END LOCAL FONCTIONS #####################################################################*/
  65:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  66:../Application/UsbManager/UsbManager.c **** 
  67:../Application/UsbManager/UsbManager.c **** 
  68:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  69:../Application/UsbManager/UsbManager.c **** /*## EXTERNAL FONCTIONS ######################################################################*/
  70:../Application/UsbManager/UsbManager.c **** /*############################################################################################*/
  71:../Application/UsbManager/UsbManager.c **** void UsbManagerInit (void) {
  27              		.loc 1 71 0
  28              		.cfi_startproc
  29 0000 80B5     		push	{r7, lr}
  30              		.cfi_def_cfa_offset 8
  31              		.cfi_offset 7, -8
  32              		.cfi_offset 14, -4
  33 0002 00AF     		add	r7, sp, #0
  34              		.cfi_def_cfa_register 7
  72:../Application/UsbManager/UsbManager.c **** 
  73:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.cmdSize = 0;
  35              		.loc 1 73 0
  36 0004 0F4B     		ldr	r3, .L2
  37 0006 0022     		mov	r2, #0
  38 0008 DA80     		strh	r2, [r3, #6]
  74:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.cmdSizeRequested = 0;
  39              		.loc 1 74 0
  40 000a 0E4B     		ldr	r3, .L2
  41 000c 0022     		mov	r2, #0
  42 000e 9A80     		strh	r2, [r3, #4]
  75:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.msRef = 0;
  43              		.loc 1 75 0
  44 0010 0C4B     		ldr	r3, .L2
  45 0012 0022     		mov	r2, #0
  46 0014 1A60     		str	r2, [r3]
  76:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.rxState.all = 0;
  47              		.loc 1 76 0
  48 0016 0B4B     		ldr	r3, .L2
  49 0018 0022     		mov	r2, #0
  50 001a 5A81     		strh	r2, [r3, #10]
  77:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.commandId = 0;
  51              		.loc 1 77 0
  52 001c 094A     		ldr	r2, .L2
  53 001e 8C23     		mov	r3, #140
  54 0020 0021     		mov	r1, #0
  55 0022 D154     		strb	r1, [r2, r3]
  78:../Application/UsbManager/UsbManager.c **** 
  79:../Application/UsbManager/UsbManager.c **** 	UsbUartInit();
  56              		.loc 1 79 0
  57 0024 E123     		mov	r3, #225
  58 0026 5B02     		lsl	r3, r3, #9
  59 0028 181C     		mov	r0, r3
  60 002a FFF7FEFF 		bl	Uart1Init
  80:../Application/UsbManager/UsbManager.c **** 	UsbUartEnableReceiver();
  61              		.loc 1 80 0
  62 002e 064B     		ldr	r3, .L2+4
  63 0030 054A     		ldr	r2, .L2+4
  64 0032 D278     		ldrb	r2, [r2, #3]
  65 0034 D2B2     		uxtb	r2, r2
  66 0036 2421     		mov	r1, #36
  67 0038 0A43     		orr	r2, r1
  68 003a D2B2     		uxtb	r2, r2
  69 003c DA70     		strb	r2, [r3, #3]
  81:../Application/UsbManager/UsbManager.c **** }
  70              		.loc 1 81 0
  71 003e BD46     		mov	sp, r7
  72              		@ sp needed
  73 0040 80BD     		pop	{r7, pc}
  74              	.L3:
  75 0042 C046     		.align	2
  76              	.L2:
  77 0044 00000000 		.word	UsbCtrl
  78 0048 00B00640 		.word	1074180096
  79              		.cfi_endproc
  80              	.LFE33:
  82              		.section	.text.UsbManager,"ax",%progbits
  83              		.align	2
  84              		.global	UsbManager
  85              		.code	16
  86              		.thumb_func
  88              	UsbManager:
  89              	.LFB34:
  82:../Application/UsbManager/UsbManager.c **** 
  83:../Application/UsbManager/UsbManager.c **** void UsbManager (void) {
  90              		.loc 1 83 0
  91              		.cfi_startproc
  92 0000 90B5     		push	{r4, r7, lr}
  93              		.cfi_def_cfa_offset 12
  94              		.cfi_offset 4, -12
  95              		.cfi_offset 7, -8
  96              		.cfi_offset 14, -4
  97 0002 83B0     		sub	sp, sp, #12
  98              		.cfi_def_cfa_offset 24
  99 0004 00AF     		add	r7, sp, #0
 100              		.cfi_def_cfa_register 7
  84:../Application/UsbManager/UsbManager.c **** 
  85:../Application/UsbManager/UsbManager.c **** 	/*=== Manage overflow ===*/
  86:../Application/UsbManager/UsbManager.c **** 
  87:../Application/UsbManager/UsbManager.c **** 	if(UsbUartCtrl.flags.bits.rxOverrun) {
 101              		.loc 1 87 0
 102 0006 AD4B     		ldr	r3, .L20
 103 0008 1B7E     		ldrb	r3, [r3, #24]
 104 000a 1B07     		lsl	r3, r3, #28
 105 000c DB0F     		lsr	r3, r3, #31
 106 000e DBB2     		uxtb	r3, r3
 107 0010 002B     		cmp	r3, #0
 108 0012 32D0     		beq	.L5
  88:../Application/UsbManager/UsbManager.c **** 		UsbUartDisableReceiver();
 109              		.loc 1 88 0
 110 0014 AA4B     		ldr	r3, .L20+4
 111 0016 AA4A     		ldr	r2, .L20+4
 112 0018 D278     		ldrb	r2, [r2, #3]
 113 001a D2B2     		uxtb	r2, r2
 114 001c 2421     		mov	r1, #36
 115 001e 8A43     		bic	r2, r1
 116 0020 D2B2     		uxtb	r2, r2
 117 0022 DA70     		strb	r2, [r3, #3]
  89:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.rx.lastIn = 0;
 118              		.loc 1 89 0
 119 0024 A54B     		ldr	r3, .L20
 120 0026 0022     		mov	r2, #0
 121 0028 9A80     		strh	r2, [r3, #4]
  90:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.rx.lastOut = 0;
 122              		.loc 1 90 0
 123 002a A44B     		ldr	r3, .L20
 124 002c 0022     		mov	r2, #0
 125 002e DA80     		strh	r2, [r3, #6]
  91:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.rx.nbrChar = 0;
 126              		.loc 1 91 0
 127 0030 A24B     		ldr	r3, .L20
 128 0032 0022     		mov	r2, #0
 129 0034 1A81     		strh	r2, [r3, #8]
  92:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.flags.bits.stringReceived = 0;
 130              		.loc 1 92 0
 131 0036 A14B     		ldr	r3, .L20
 132 0038 1A7E     		ldrb	r2, [r3, #24]
 133 003a 0221     		mov	r1, #2
 134 003c 8A43     		bic	r2, r1
 135 003e 1A76     		strb	r2, [r3, #24]
  93:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.flags.bits.charReceived = 0;
 136              		.loc 1 93 0
 137 0040 9E4B     		ldr	r3, .L20
 138 0042 1A7E     		ldrb	r2, [r3, #24]
 139 0044 0121     		mov	r1, #1
 140 0046 8A43     		bic	r2, r1
 141 0048 1A76     		strb	r2, [r3, #24]
  94:../Application/UsbManager/UsbManager.c **** 		UsbUartEnableReceiver();
 142              		.loc 1 94 0
 143 004a 9D4B     		ldr	r3, .L20+4
 144 004c 9C4A     		ldr	r2, .L20+4
 145 004e D278     		ldrb	r2, [r2, #3]
 146 0050 D2B2     		uxtb	r2, r2
 147 0052 2421     		mov	r1, #36
 148 0054 0A43     		orr	r2, r1
 149 0056 D2B2     		uxtb	r2, r2
 150 0058 DA70     		strb	r2, [r3, #3]
  95:../Application/UsbManager/UsbManager.c **** 
  96:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSize = 0;
 151              		.loc 1 96 0
 152 005a 9A4B     		ldr	r3, .L20+8
 153 005c 0022     		mov	r2, #0
 154 005e DA80     		strh	r2, [r3, #6]
  97:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSizeRequested = 0;
 155              		.loc 1 97 0
 156 0060 984B     		ldr	r3, .L20+8
 157 0062 0022     		mov	r2, #0
 158 0064 9A80     		strh	r2, [r3, #4]
  98:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.msRef = 0;
 159              		.loc 1 98 0
 160 0066 974B     		ldr	r3, .L20+8
 161 0068 0022     		mov	r2, #0
 162 006a 1A60     		str	r2, [r3]
  99:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.rxState.all = 0;
 163              		.loc 1 99 0
 164 006c 954B     		ldr	r3, .L20+8
 165 006e 0022     		mov	r2, #0
 166 0070 5A81     		strh	r2, [r3, #10]
 100:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.commandId = 0;
 167              		.loc 1 100 0
 168 0072 944A     		ldr	r2, .L20+8
 169 0074 8C23     		mov	r3, #140
 170 0076 0021     		mov	r1, #0
 171 0078 D154     		strb	r1, [r2, r3]
 172              	.L5:
 101:../Application/UsbManager/UsbManager.c **** 	}
 102:../Application/UsbManager/UsbManager.c **** 
 103:../Application/UsbManager/UsbManager.c **** 	if(UsbUartCtrl.flags.bits.txOverrun) {
 173              		.loc 1 103 0
 174 007a 904B     		ldr	r3, .L20
 175 007c 1B7E     		ldrb	r3, [r3, #24]
 176 007e DB06     		lsl	r3, r3, #27
 177 0080 DB0F     		lsr	r3, r3, #31
 178 0082 DBB2     		uxtb	r3, r3
 179 0084 002B     		cmp	r3, #0
 180 0086 15D0     		beq	.L6
 104:../Application/UsbManager/UsbManager.c **** 		UsbUartDisableTransmitter();
 181              		.loc 1 104 0
 182 0088 8D4B     		ldr	r3, .L20+4
 183 008a 8D4A     		ldr	r2, .L20+4
 184 008c D278     		ldrb	r2, [r2, #3]
 185 008e D1B2     		uxtb	r1, r2
 186 0090 7722     		mov	r2, #119
 187 0092 0A40     		and	r2, r1
 188 0094 D2B2     		uxtb	r2, r2
 189 0096 DA70     		strb	r2, [r3, #3]
 105:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.tx.lastIn = 0;
 190              		.loc 1 105 0
 191 0098 884B     		ldr	r3, .L20
 192 009a 0022     		mov	r2, #0
 193 009c 1A82     		strh	r2, [r3, #16]
 106:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.tx.lastOut = 0;
 194              		.loc 1 106 0
 195 009e 874B     		ldr	r3, .L20
 196 00a0 0022     		mov	r2, #0
 197 00a2 5A82     		strh	r2, [r3, #18]
 107:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.tx.nbrChar = 0;
 198              		.loc 1 107 0
 199 00a4 854B     		ldr	r3, .L20
 200 00a6 0022     		mov	r2, #0
 201 00a8 9A82     		strh	r2, [r3, #20]
 108:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.flags.bits.txOverrun = 0;
 202              		.loc 1 108 0
 203 00aa 844B     		ldr	r3, .L20
 204 00ac 1A7E     		ldrb	r2, [r3, #24]
 205 00ae 1021     		mov	r1, #16
 206 00b0 8A43     		bic	r2, r1
 207 00b2 1A76     		strb	r2, [r3, #24]
 208              	.L6:
 109:../Application/UsbManager/UsbManager.c **** 	}
 110:../Application/UsbManager/UsbManager.c **** 
 111:../Application/UsbManager/UsbManager.c **** 	/*=== Manage module error ===*/
 112:../Application/UsbManager/UsbManager.c **** 
 113:../Application/UsbManager/UsbManager.c **** 	if(UsbUartCtrl.flags.bits.moduleError) {
 209              		.loc 1 113 0
 210 00b4 814B     		ldr	r3, .L20
 211 00b6 1B7E     		ldrb	r3, [r3, #24]
 212 00b8 5B07     		lsl	r3, r3, #29
 213 00ba DB0F     		lsr	r3, r3, #31
 214 00bc DBB2     		uxtb	r3, r3
 215 00be 002B     		cmp	r3, #0
 216 00c0 1AD0     		beq	.L7
 114:../Application/UsbManager/UsbManager.c **** 		UsbUartInit();
 217              		.loc 1 114 0
 218 00c2 E123     		mov	r3, #225
 219 00c4 5B02     		lsl	r3, r3, #9
 220 00c6 181C     		mov	r0, r3
 221 00c8 FFF7FEFF 		bl	Uart1Init
 115:../Application/UsbManager/UsbManager.c **** 		UsbUartCtrl.flags.bits.moduleError = 0;
 222              		.loc 1 115 0
 223 00cc 7B4B     		ldr	r3, .L20
 224 00ce 1A7E     		ldrb	r2, [r3, #24]
 225 00d0 0421     		mov	r1, #4
 226 00d2 8A43     		bic	r2, r1
 227 00d4 1A76     		strb	r2, [r3, #24]
 116:../Application/UsbManager/UsbManager.c **** 
 117:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSize = 0;
 228              		.loc 1 117 0
 229 00d6 7B4B     		ldr	r3, .L20+8
 230 00d8 0022     		mov	r2, #0
 231 00da DA80     		strh	r2, [r3, #6]
 118:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSizeRequested = 0;
 232              		.loc 1 118 0
 233 00dc 794B     		ldr	r3, .L20+8
 234 00de 0022     		mov	r2, #0
 235 00e0 9A80     		strh	r2, [r3, #4]
 119:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.msRef = 0;
 236              		.loc 1 119 0
 237 00e2 784B     		ldr	r3, .L20+8
 238 00e4 0022     		mov	r2, #0
 239 00e6 1A60     		str	r2, [r3]
 120:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.rxState.all = 0;
 240              		.loc 1 120 0
 241 00e8 764B     		ldr	r3, .L20+8
 242 00ea 0022     		mov	r2, #0
 243 00ec 5A81     		strh	r2, [r3, #10]
 121:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.commandId = 0;
 244              		.loc 1 121 0
 245 00ee 754A     		ldr	r2, .L20+8
 246 00f0 8C23     		mov	r3, #140
 247 00f2 0021     		mov	r1, #0
 248 00f4 D154     		strb	r1, [r2, r3]
 122:../Application/UsbManager/UsbManager.c **** 	}
 123:../Application/UsbManager/UsbManager.c **** 
 124:../Application/UsbManager/UsbManager.c **** 	/*=== Manage command receiving ===*/
 125:../Application/UsbManager/UsbManager.c **** 	while(UsbUartCtrl.rx.nbrChar) {
 249              		.loc 1 125 0
 250 00f6 BDE0     		b	.L8
 251              	.L7:
 252 00f8 BCE0     		b	.L8
 253              	.L18:
 254              	.LBB2:
 126:../Application/UsbManager/UsbManager.c **** 
 127:../Application/UsbManager/UsbManager.c **** 		char read = UsbUartReadChar();		//Read current char
 255              		.loc 1 127 0
 256 00fa FC1D     		add	r4, r7, #7
 257 00fc FFF7FEFF 		bl	Uart1ReadChar
 258 0100 031C     		mov	r3, r0
 259 0102 2370     		strb	r3, [r4]
 128:../Application/UsbManager/UsbManager.c **** 
 129:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.msRef = TickGetMsCounter();
 260              		.loc 1 129 0
 261 0104 FFF7FEFF 		bl	TickGetMsCounter
 262 0108 021C     		mov	r2, r0
 263 010a 6E4B     		ldr	r3, .L20+8
 264 010c 1A60     		str	r2, [r3]
 130:../Application/UsbManager/UsbManager.c **** 
 131:../Application/UsbManager/UsbManager.c **** 		//Controller is looking for cmd type
 132:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.rxState.all == 0) {
 265              		.loc 1 132 0
 266 010e 6D4B     		ldr	r3, .L20+8
 267 0110 5B89     		ldrh	r3, [r3, #10]
 268 0112 002B     		cmp	r3, #0
 269 0114 58D1     		bne	.L9
 133:../Application/UsbManager/UsbManager.c **** 			if(read == USB_CMD_REMOTE || read == USB_CMD_PROTOCOLE || read == USB_CMD_RW || read == USB_CMD_
 270              		.loc 1 133 0
 271 0116 FB1D     		add	r3, r7, #7
 272 0118 1B78     		ldrb	r3, [r3]
 273 011a 5BB2     		sxtb	r3, r3
 274 011c 522B     		cmp	r3, #82
 275 011e 0ED0     		beq	.L10
 276              		.loc 1 133 0 is_stmt 0 discriminator 1
 277 0120 FB1D     		add	r3, r7, #7
 278 0122 1B78     		ldrb	r3, [r3]
 279 0124 5BB2     		sxtb	r3, r3
 280 0126 022B     		cmp	r3, #2
 281 0128 09D0     		beq	.L10
 282 012a FB1D     		add	r3, r7, #7
 283 012c 1B78     		ldrb	r3, [r3]
 284 012e 5BB2     		sxtb	r3, r3
 285 0130 042B     		cmp	r3, #4
 286 0132 04D0     		beq	.L10
 287 0134 FB1D     		add	r3, r7, #7
 288 0136 1B78     		ldrb	r3, [r3]
 289 0138 5BB2     		sxtb	r3, r3
 290 013a 552B     		cmp	r3, #85
 291 013c 3ED1     		bne	.L11
 292              	.L10:
 134:../Application/UsbManager/UsbManager.c **** 				if(read != USB_CMD_RFIDECHO) {
 293              		.loc 1 134 0 is_stmt 1
 294 013e FB1D     		add	r3, r7, #7
 295 0140 1B78     		ldrb	r3, [r3]
 296 0142 5BB2     		sxtb	r3, r3
 297 0144 552B     		cmp	r3, #85
 298 0146 16D0     		beq	.L12
 135:../Application/UsbManager/UsbManager.c **** 					UsbCtrl.cmdType = read;
 299              		.loc 1 135 0
 300 0148 FB1D     		add	r3, r7, #7
 301 014a 1A78     		ldrb	r2, [r3]
 302 014c 5D4B     		ldr	r3, .L20+8
 303 014e 1A72     		strb	r2, [r3, #8]
 136:../Application/UsbManager/UsbManager.c **** 					UsbCtrl.rxState.bits.cmdTypeReceived = 1;
 304              		.loc 1 136 0
 305 0150 5C4B     		ldr	r3, .L20+8
 306 0152 9A7A     		ldrb	r2, [r3, #10]
 307 0154 0121     		mov	r1, #1
 308 0156 0A43     		orr	r2, r1
 309 0158 9A72     		strb	r2, [r3, #10]
 137:../Application/UsbManager/UsbManager.c **** 					UsbCtrl.command[UsbCtrl.commandId++] = read;
 310              		.loc 1 137 0
 311 015a 5A4A     		ldr	r2, .L20+8
 312 015c 8C23     		mov	r3, #140
 313 015e D35C     		ldrb	r3, [r2, r3]
 314 0160 5A1C     		add	r2, r3, #1
 315 0162 D0B2     		uxtb	r0, r2
 316 0164 5749     		ldr	r1, .L20+8
 317 0166 8C22     		mov	r2, #140
 318 0168 8854     		strb	r0, [r1, r2]
 319 016a 564A     		ldr	r2, .L20+8
 320 016c D318     		add	r3, r2, r3
 321 016e FA1D     		add	r2, r7, #7
 322 0170 1278     		ldrb	r2, [r2]
 323 0172 1A73     		strb	r2, [r3, #12]
 134:../Application/UsbManager/UsbManager.c **** 				if(read != USB_CMD_RFIDECHO) {
 324              		.loc 1 134 0
 325 0174 27E0     		b	.L14
 326              	.L12:
 138:../Application/UsbManager/UsbManager.c **** 				} else {	//Porte dérobée pour le CR95 Echo
 139:../Application/UsbManager/UsbManager.c **** 					UsbCtrl.cmdType = read;
 327              		.loc 1 139 0
 328 0176 FB1D     		add	r3, r7, #7
 329 0178 1A78     		ldrb	r2, [r3]
 330 017a 524B     		ldr	r3, .L20+8
 331 017c 1A72     		strb	r2, [r3, #8]
 140:../Application/UsbManager/UsbManager.c **** 					UsbCtrl.rxState.bits.cmdTypeReceived = 1;
 332              		.loc 1 140 0
 333 017e 514B     		ldr	r3, .L20+8
 334 0180 9A7A     		ldrb	r2, [r3, #10]
 335 0182 0121     		mov	r1, #1
 336 0184 0A43     		orr	r2, r1
 337 0186 9A72     		strb	r2, [r3, #10]
 141:../Application/UsbManager/UsbManager.c **** 					UsbCtrl.rxState.bits.sizeReceived = 1;
 338              		.loc 1 141 0
 339 0188 4E4B     		ldr	r3, .L20+8
 340 018a 9A7A     		ldrb	r2, [r3, #10]
 341 018c 0221     		mov	r1, #2
 342 018e 0A43     		orr	r2, r1
 343 0190 9A72     		strb	r2, [r3, #10]
 142:../Application/UsbManager/UsbManager.c **** 					UsbCtrl.rxState.bits.cmdComplete = 1;
 344              		.loc 1 142 0
 345 0192 4C4B     		ldr	r3, .L20+8
 346 0194 9A7A     		ldrb	r2, [r3, #10]
 347 0196 0421     		mov	r1, #4
 348 0198 0A43     		orr	r2, r1
 349 019a 9A72     		strb	r2, [r3, #10]
 143:../Application/UsbManager/UsbManager.c **** 					UsbCtrl.command[UsbCtrl.commandId++] = read;
 350              		.loc 1 143 0
 351 019c 494A     		ldr	r2, .L20+8
 352 019e 8C23     		mov	r3, #140
 353 01a0 D35C     		ldrb	r3, [r2, r3]
 354 01a2 5A1C     		add	r2, r3, #1
 355 01a4 D0B2     		uxtb	r0, r2
 356 01a6 4749     		ldr	r1, .L20+8
 357 01a8 8C22     		mov	r2, #140
 358 01aa 8854     		strb	r0, [r1, r2]
 359 01ac 454A     		ldr	r2, .L20+8
 360 01ae D318     		add	r3, r2, r3
 361 01b0 FA1D     		add	r2, r7, #7
 362 01b2 1278     		ldrb	r2, [r2]
 363 01b4 1A73     		strb	r2, [r3, #12]
 144:../Application/UsbManager/UsbManager.c **** 					UsbManagerCmdDealer();
 364              		.loc 1 144 0
 365 01b6 FFF7FEFF 		bl	UsbManagerCmdDealer
 134:../Application/UsbManager/UsbManager.c **** 				if(read != USB_CMD_RFIDECHO) {
 366              		.loc 1 134 0
 367 01ba 04E0     		b	.L14
 368              	.L11:
 145:../Application/UsbManager/UsbManager.c **** 				}
 146:../Application/UsbManager/UsbManager.c **** 			} else {		//Unknow type -> reset
 147:../Application/UsbManager/UsbManager.c **** 				UsbCtrl.commandId = 0;
 369              		.loc 1 147 0
 370 01bc 414A     		ldr	r2, .L20+8
 371 01be 8C23     		mov	r3, #140
 372 01c0 0021     		mov	r1, #0
 373 01c2 D154     		strb	r1, [r2, r3]
 374 01c4 56E0     		b	.L8
 375              	.L14:
 376 01c6 55E0     		b	.L8
 377              	.L9:
 148:../Application/UsbManager/UsbManager.c **** 			}
 149:../Application/UsbManager/UsbManager.c **** 
 150:../Application/UsbManager/UsbManager.c **** 		//Controller is looking for frame size
 151:../Application/UsbManager/UsbManager.c **** 		} else if (UsbCtrl.rxState.all == USB_CMD_RXSTATE_TYPERECEIVED)  {
 378              		.loc 1 151 0
 379 01c8 3E4B     		ldr	r3, .L20+8
 380 01ca 5B89     		ldrh	r3, [r3, #10]
 381 01cc 012B     		cmp	r3, #1
 382 01ce 1BD1     		bne	.L15
 152:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = read;
 383              		.loc 1 152 0
 384 01d0 FB1D     		add	r3, r7, #7
 385 01d2 1B78     		ldrb	r3, [r3]
 386 01d4 5BB2     		sxtb	r3, r3
 387 01d6 9AB2     		uxth	r2, r3
 388 01d8 3A4B     		ldr	r3, .L20+8
 389 01da 9A80     		strh	r2, [r3, #4]
 153:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 390              		.loc 1 153 0
 391 01dc 394B     		ldr	r3, .L20+8
 392 01de 0022     		mov	r2, #0
 393 01e0 DA80     		strh	r2, [r3, #6]
 154:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.bits.sizeReceived = 1;
 394              		.loc 1 154 0
 395 01e2 384B     		ldr	r3, .L20+8
 396 01e4 9A7A     		ldrb	r2, [r3, #10]
 397 01e6 0221     		mov	r1, #2
 398 01e8 0A43     		orr	r2, r1
 399 01ea 9A72     		strb	r2, [r3, #10]
 155:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.command[UsbCtrl.commandId++] = read;
 400              		.loc 1 155 0
 401 01ec 354A     		ldr	r2, .L20+8
 402 01ee 8C23     		mov	r3, #140
 403 01f0 D35C     		ldrb	r3, [r2, r3]
 404 01f2 5A1C     		add	r2, r3, #1
 405 01f4 D0B2     		uxtb	r0, r2
 406 01f6 3349     		ldr	r1, .L20+8
 407 01f8 8C22     		mov	r2, #140
 408 01fa 8854     		strb	r0, [r1, r2]
 409 01fc 314A     		ldr	r2, .L20+8
 410 01fe D318     		add	r3, r2, r3
 411 0200 FA1D     		add	r2, r7, #7
 412 0202 1278     		ldrb	r2, [r2]
 413 0204 1A73     		strb	r2, [r3, #12]
 414 0206 35E0     		b	.L8
 415              	.L15:
 156:../Application/UsbManager/UsbManager.c **** 
 157:../Application/UsbManager/UsbManager.c **** 		// Controller is waiting for complete frame
 158:../Application/UsbManager/UsbManager.c **** 		} else if (UsbCtrl.rxState.all == (USB_CMD_RXSTATE_SIZERECEIVED | USB_CMD_RXSTATE_TYPERECEIVED) )
 416              		.loc 1 158 0
 417 0208 2E4B     		ldr	r3, .L20+8
 418 020a 5B89     		ldrh	r3, [r3, #10]
 419 020c 032B     		cmp	r3, #3
 420 020e 20D1     		bne	.L16
 159:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.command[UsbCtrl.commandId++] = read;
 421              		.loc 1 159 0
 422 0210 2C4A     		ldr	r2, .L20+8
 423 0212 8C23     		mov	r3, #140
 424 0214 D35C     		ldrb	r3, [r2, r3]
 425 0216 5A1C     		add	r2, r3, #1
 426 0218 D0B2     		uxtb	r0, r2
 427 021a 2A49     		ldr	r1, .L20+8
 428 021c 8C22     		mov	r2, #140
 429 021e 8854     		strb	r0, [r1, r2]
 430 0220 284A     		ldr	r2, .L20+8
 431 0222 D318     		add	r3, r2, r3
 432 0224 FA1D     		add	r2, r7, #7
 433 0226 1278     		ldrb	r2, [r2]
 434 0228 1A73     		strb	r2, [r3, #12]
 160:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize++;
 435              		.loc 1 160 0
 436 022a 264B     		ldr	r3, .L20+8
 437 022c DB88     		ldrh	r3, [r3, #6]
 438 022e 0133     		add	r3, r3, #1
 439 0230 9AB2     		uxth	r2, r3
 440 0232 244B     		ldr	r3, .L20+8
 441 0234 DA80     		strh	r2, [r3, #6]
 161:../Application/UsbManager/UsbManager.c **** 			if(UsbCtrl.cmdSize == UsbCtrl.cmdSizeRequested) {
 442              		.loc 1 161 0
 443 0236 234B     		ldr	r3, .L20+8
 444 0238 DA88     		ldrh	r2, [r3, #6]
 445 023a 224B     		ldr	r3, .L20+8
 446 023c 9B88     		ldrh	r3, [r3, #4]
 447 023e 9A42     		cmp	r2, r3
 448 0240 18D1     		bne	.L8
 162:../Application/UsbManager/UsbManager.c **** 				UsbCtrl.rxState.bits.cmdComplete = 1;
 449              		.loc 1 162 0
 450 0242 204B     		ldr	r3, .L20+8
 451 0244 9A7A     		ldrb	r2, [r3, #10]
 452 0246 0421     		mov	r1, #4
 453 0248 0A43     		orr	r2, r1
 454 024a 9A72     		strb	r2, [r3, #10]
 163:../Application/UsbManager/UsbManager.c **** 				UsbManagerCmdDealer();
 455              		.loc 1 163 0
 456 024c FFF7FEFF 		bl	UsbManagerCmdDealer
 457 0250 10E0     		b	.L8
 458              	.L16:
 164:../Application/UsbManager/UsbManager.c **** 			}
 165:../Application/UsbManager/UsbManager.c **** 
 166:../Application/UsbManager/UsbManager.c **** 		// Controller wait for command completion
 167:../Application/UsbManager/UsbManager.c **** 		} else if (UsbCtrl.rxState.all == (USB_CMD_RXSTATE_SIZERECEIVED | USB_CMD_RXSTATE_TYPERECEIVED | 
 459              		.loc 1 167 0
 460 0252 1C4B     		ldr	r3, .L20+8
 461 0254 5B89     		ldrh	r3, [r3, #10]
 462 0256 072B     		cmp	r3, #7
 463 0258 0CD0     		beq	.L8
 168:../Application/UsbManager/UsbManager.c **** 
 169:../Application/UsbManager/UsbManager.c **** 			//Don't care of incoming char
 170:../Application/UsbManager/UsbManager.c **** 
 171:../Application/UsbManager/UsbManager.c **** 		// Controller Error -> reset
 172:../Application/UsbManager/UsbManager.c **** 		} else {
 173:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 464              		.loc 1 173 0
 465 025a 1A4B     		ldr	r3, .L20+8
 466 025c 0022     		mov	r2, #0
 467 025e DA80     		strh	r2, [r3, #6]
 174:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 468              		.loc 1 174 0
 469 0260 184B     		ldr	r3, .L20+8
 470 0262 0022     		mov	r2, #0
 471 0264 9A80     		strh	r2, [r3, #4]
 175:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 472              		.loc 1 175 0
 473 0266 174B     		ldr	r3, .L20+8
 474 0268 0022     		mov	r2, #0
 475 026a 5A81     		strh	r2, [r3, #10]
 176:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 476              		.loc 1 176 0
 477 026c 154A     		ldr	r2, .L20+8
 478 026e 8C23     		mov	r3, #140
 479 0270 0021     		mov	r1, #0
 480 0272 D154     		strb	r1, [r2, r3]
 481              	.L8:
 482              	.LBE2:
 125:../Application/UsbManager/UsbManager.c **** 	while(UsbUartCtrl.rx.nbrChar) {
 483              		.loc 1 125 0 discriminator 1
 484 0274 114B     		ldr	r3, .L20
 485 0276 1B89     		ldrh	r3, [r3, #8]
 486 0278 002B     		cmp	r3, #0
 487 027a 00D0     		beq	.LCB407
 488 027c 3DE7     		b	.L18	@long jump
 489              	.LCB407:
 177:../Application/UsbManager/UsbManager.c **** 		}
 178:../Application/UsbManager/UsbManager.c **** 	}
 179:../Application/UsbManager/UsbManager.c **** 
 180:../Application/UsbManager/UsbManager.c **** 
 181:../Application/UsbManager/UsbManager.c **** 	/*-- Too much time for command complete receiving --*/
 182:../Application/UsbManager/UsbManager.c **** 	if(UsbCtrl.rxState.all & (USB_CMD_RXSTATE_TYPERECEIVED | USB_CMD_RXSTATE_SIZERECEIVED) != 0 ) {
 490              		.loc 1 182 0
 491 027e 114B     		ldr	r3, .L20+8
 492 0280 5B89     		ldrh	r3, [r3, #10]
 493 0282 1A1C     		mov	r2, r3
 494 0284 0123     		mov	r3, #1
 495 0286 1340     		and	r3, r2
 496 0288 14D0     		beq	.L4
 183:../Application/UsbManager/UsbManager.c **** 
 184:../Application/UsbManager/UsbManager.c **** 		if( TickMilliSecElapsedFrom(UsbCtrl.msRef) > USB_CMD_MAX_TIME_MS_FOR_COMPLETE_CMD) {
 497              		.loc 1 184 0
 498 028a 0E4B     		ldr	r3, .L20+8
 499 028c 1B68     		ldr	r3, [r3]
 500 028e 181C     		mov	r0, r3
 501 0290 FFF7FEFF 		bl	TickMilliSecElapsedFrom
 502 0294 031C     		mov	r3, r0
 503 0296 642B     		cmp	r3, #100
 504 0298 0CD9     		bls	.L4
 185:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 505              		.loc 1 185 0
 506 029a 0A4B     		ldr	r3, .L20+8
 507 029c 0022     		mov	r2, #0
 508 029e DA80     		strh	r2, [r3, #6]
 186:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 509              		.loc 1 186 0
 510 02a0 084B     		ldr	r3, .L20+8
 511 02a2 0022     		mov	r2, #0
 512 02a4 9A80     		strh	r2, [r3, #4]
 187:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 513              		.loc 1 187 0
 514 02a6 074A     		ldr	r2, .L20+8
 515 02a8 8C23     		mov	r3, #140
 516 02aa 0021     		mov	r1, #0
 517 02ac D154     		strb	r1, [r2, r3]
 188:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 518              		.loc 1 188 0
 519 02ae 054B     		ldr	r3, .L20+8
 520 02b0 0022     		mov	r2, #0
 521 02b2 5A81     		strh	r2, [r3, #10]
 522              	.L4:
 189:../Application/UsbManager/UsbManager.c **** 		}
 190:../Application/UsbManager/UsbManager.c **** 	}
 191:../Application/UsbManager/UsbManager.c **** }
 523              		.loc 1 191 0
 524 02b4 BD46     		mov	sp, r7
 525 02b6 03B0     		add	sp, sp, #12
 526              		@ sp needed
 527 02b8 90BD     		pop	{r4, r7, pc}
 528              	.L21:
 529 02ba C046     		.align	2
 530              	.L20:
 531 02bc 00000000 		.word	Uart1Ctrl
 532 02c0 00B00640 		.word	1074180096
 533 02c4 00000000 		.word	UsbCtrl
 534              		.cfi_endproc
 535              	.LFE34:
 537              		.section	.rodata
 538              		.align	2
 539              	.LC0:
 540 0000 52       		.byte	82
 541 0001 01       		.byte	1
 542 0002 65       		.byte	101
 543 0003 00       		.byte	0
 544              		.section	.text.UsbManagerCmdDealer,"ax",%progbits
 545              		.align	2
 546              		.global	UsbManagerCmdDealer
 547              		.code	16
 548              		.thumb_func
 550              	UsbManagerCmdDealer:
 551              	.LFB35:
 192:../Application/UsbManager/UsbManager.c **** 
 193:../Application/UsbManager/UsbManager.c **** 
 194:../Application/UsbManager/UsbManager.c **** void UsbManagerCmdDealer (void) {
 552              		.loc 1 194 0
 553              		.cfi_startproc
 554 0000 90B5     		push	{r4, r7, lr}
 555              		.cfi_def_cfa_offset 12
 556              		.cfi_offset 4, -12
 557              		.cfi_offset 7, -8
 558              		.cfi_offset 14, -4
 559 0002 B5B0     		sub	sp, sp, #212
 560              		.cfi_def_cfa_offset 224
 561 0004 00AF     		add	r7, sp, #0
 562              		.cfi_def_cfa_register 7
 195:../Application/UsbManager/UsbManager.c **** 
 196:../Application/UsbManager/UsbManager.c **** 	/*=== Remote command ===*/
 197:../Application/UsbManager/UsbManager.c **** 	if(UsbCtrl.cmdType == USB_CMD_REMOTE) {
 563              		.loc 1 197 0
 564 0006 C94B     		ldr	r3, .L58
 565 0008 1B7A     		ldrb	r3, [r3, #8]
 566 000a 522B     		cmp	r3, #82
 567 000c 00D0     		beq	.LCB471
 568 000e B0E3     		b	.L23	@long jump
 569              	.LCB471:
 198:../Application/UsbManager/UsbManager.c **** 
 199:../Application/UsbManager/UsbManager.c **** 		/*-- echo request --*/
 200:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_ECHO) {
 570              		.loc 1 200 0
 571 0010 C64B     		ldr	r3, .L58
 572 0012 9B7B     		ldrb	r3, [r3, #14]
 573 0014 5BB2     		sxtb	r3, r3
 574 0016 452B     		cmp	r3, #69
 575 0018 1CD1     		bne	.L24
 576              	.LBB3:
 201:../Application/UsbManager/UsbManager.c **** 
 202:../Application/UsbManager/UsbManager.c **** 			char answer[] = {USB_CMD_REMOTE, 0x01, USB_CMD_REMOTE_echo, 0x00};
 577              		.loc 1 202 0
 578 001a 3A1C     		mov	r2, r7
 579 001c B432     		add	r2, r2, #180
 580 001e C44B     		ldr	r3, .L58+4
 581 0020 111C     		mov	r1, r2
 582 0022 1A1C     		mov	r2, r3
 583 0024 0423     		mov	r3, #4
 584 0026 081C     		mov	r0, r1
 585 0028 111C     		mov	r1, r2
 586 002a 1A1C     		mov	r2, r3
 587 002c FFF7FEFF 		bl	memcpy
 203:../Application/UsbManager/UsbManager.c **** 
 204:../Application/UsbManager/UsbManager.c **** 			UsbUartSendString(answer);
 588              		.loc 1 204 0
 589 0030 3B1C     		mov	r3, r7
 590 0032 B433     		add	r3, r3, #180
 591 0034 181C     		mov	r0, r3
 592 0036 FFF7FEFF 		bl	Uart1SendString
 205:../Application/UsbManager/UsbManager.c **** 
 206:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 207:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 593              		.loc 1 207 0
 594 003a BC4A     		ldr	r2, .L58
 595 003c 8C23     		mov	r3, #140
 596 003e 0021     		mov	r1, #0
 597 0040 D154     		strb	r1, [r2, r3]
 208:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 598              		.loc 1 208 0
 599 0042 BA4B     		ldr	r3, .L58
 600 0044 0022     		mov	r2, #0
 601 0046 5A81     		strh	r2, [r3, #10]
 209:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 602              		.loc 1 209 0
 603 0048 B84B     		ldr	r3, .L58
 604 004a 0022     		mov	r2, #0
 605 004c DA80     		strh	r2, [r3, #6]
 210:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 606              		.loc 1 210 0
 607 004e B74B     		ldr	r3, .L58
 608 0050 0022     		mov	r2, #0
 609 0052 9A80     		strh	r2, [r3, #4]
 610              	.L24:
 611              	.LBE3:
 211:../Application/UsbManager/UsbManager.c **** 		}
 212:../Application/UsbManager/UsbManager.c **** 
 213:../Application/UsbManager/UsbManager.c **** 		/*-- current date requested --*/
 214:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_GET_TIME) {
 612              		.loc 1 214 0
 613 0054 B54B     		ldr	r3, .L58
 614 0056 9B7B     		ldrb	r3, [r3, #14]
 615 0058 5BB2     		sxtb	r3, r3
 616 005a 682B     		cmp	r3, #104
 617 005c 43D1     		bne	.L25
 618              	.LBB4:
 215:../Application/UsbManager/UsbManager.c **** 
 216:../Application/UsbManager/UsbManager.c **** 			char answer[7];
 217:../Application/UsbManager/UsbManager.c **** 			unsigned long rtcTime = RtcGetTime();
 619              		.loc 1 217 0
 620 005e FFF7FEFF 		bl	RtcGetTime
 621 0062 031C     		mov	r3, r0
 622 0064 C822     		mov	r2, #200
 623 0066 D219     		add	r2, r2, r7
 624 0068 1360     		str	r3, [r2]
 218:../Application/UsbManager/UsbManager.c **** 
 219:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 625              		.loc 1 219 0
 626 006a 3B1C     		mov	r3, r7
 627 006c AC33     		add	r3, r3, #172
 628 006e 5222     		mov	r2, #82
 629 0070 1A70     		strb	r2, [r3]
 220:../Application/UsbManager/UsbManager.c **** 			answer[1] = 5;
 630              		.loc 1 220 0
 631 0072 3B1C     		mov	r3, r7
 632 0074 AC33     		add	r3, r3, #172
 633 0076 0522     		mov	r2, #5
 634 0078 5A70     		strb	r2, [r3, #1]
 221:../Application/UsbManager/UsbManager.c **** 			answer[2] = USB_CMD_REMOTE_GET_TIME;
 635              		.loc 1 221 0
 636 007a 3B1C     		mov	r3, r7
 637 007c AC33     		add	r3, r3, #172
 638 007e 6822     		mov	r2, #104
 639 0080 9A70     		strb	r2, [r3, #2]
 222:../Application/UsbManager/UsbManager.c **** 			answer[3] = (unsigned char)(rtcTime >> 24) & 0xFF;
 640              		.loc 1 222 0
 641 0082 C822     		mov	r2, #200
 642 0084 D219     		add	r2, r2, r7
 643 0086 1368     		ldr	r3, [r2]
 644 0088 1B0E     		lsr	r3, r3, #24
 645 008a DAB2     		uxtb	r2, r3
 646 008c 3B1C     		mov	r3, r7
 647 008e AC33     		add	r3, r3, #172
 648 0090 DA70     		strb	r2, [r3, #3]
 223:../Application/UsbManager/UsbManager.c **** 			answer[4] = (unsigned char)(rtcTime >> 16) & 0xFF;
 649              		.loc 1 223 0
 650 0092 C822     		mov	r2, #200
 651 0094 D219     		add	r2, r2, r7
 652 0096 1368     		ldr	r3, [r2]
 653 0098 1B0C     		lsr	r3, r3, #16
 654 009a DAB2     		uxtb	r2, r3
 655 009c 3B1C     		mov	r3, r7
 656 009e AC33     		add	r3, r3, #172
 657 00a0 1A71     		strb	r2, [r3, #4]
 224:../Application/UsbManager/UsbManager.c **** 			answer[5] = (unsigned char)(rtcTime >> 8) & 0xFF;
 658              		.loc 1 224 0
 659 00a2 C822     		mov	r2, #200
 660 00a4 D219     		add	r2, r2, r7
 661 00a6 1368     		ldr	r3, [r2]
 662 00a8 1B0A     		lsr	r3, r3, #8
 663 00aa DAB2     		uxtb	r2, r3
 664 00ac 3B1C     		mov	r3, r7
 665 00ae AC33     		add	r3, r3, #172
 666 00b0 5A71     		strb	r2, [r3, #5]
 225:../Application/UsbManager/UsbManager.c **** 			answer[6] = (unsigned char)(rtcTime) & 0xFF;
 667              		.loc 1 225 0
 668 00b2 C822     		mov	r2, #200
 669 00b4 D219     		add	r2, r2, r7
 670 00b6 1368     		ldr	r3, [r2]
 671 00b8 DAB2     		uxtb	r2, r3
 672 00ba 3B1C     		mov	r3, r7
 673 00bc AC33     		add	r3, r3, #172
 674 00be 9A71     		strb	r2, [r3, #6]
 226:../Application/UsbManager/UsbManager.c **** 
 227:../Application/UsbManager/UsbManager.c **** 			UsbUartSendData(answer,7);
 675              		.loc 1 227 0
 676 00c0 3B1C     		mov	r3, r7
 677 00c2 AC33     		add	r3, r3, #172
 678 00c4 181C     		mov	r0, r3
 679 00c6 0721     		mov	r1, #7
 680 00c8 FFF7FEFF 		bl	Uart1SendData
 228:../Application/UsbManager/UsbManager.c **** 
 229:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 230:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 681              		.loc 1 230 0
 682 00cc 974A     		ldr	r2, .L58
 683 00ce 8C23     		mov	r3, #140
 684 00d0 0021     		mov	r1, #0
 685 00d2 D154     		strb	r1, [r2, r3]
 231:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 686              		.loc 1 231 0
 687 00d4 954B     		ldr	r3, .L58
 688 00d6 0022     		mov	r2, #0
 689 00d8 5A81     		strh	r2, [r3, #10]
 232:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 690              		.loc 1 232 0
 691 00da 944B     		ldr	r3, .L58
 692 00dc 0022     		mov	r2, #0
 693 00de DA80     		strh	r2, [r3, #6]
 233:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 694              		.loc 1 233 0
 695 00e0 924B     		ldr	r3, .L58
 696 00e2 0022     		mov	r2, #0
 697 00e4 9A80     		strh	r2, [r3, #4]
 698              	.L25:
 699              	.LBE4:
 234:../Application/UsbManager/UsbManager.c **** 		}
 235:../Application/UsbManager/UsbManager.c **** 
 236:../Application/UsbManager/UsbManager.c **** 		/*-- set current date --*/
 237:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_SET_TIME) {
 700              		.loc 1 237 0
 701 00e6 914B     		ldr	r3, .L58
 702 00e8 9B7B     		ldrb	r3, [r3, #14]
 703 00ea 5BB2     		sxtb	r3, r3
 704 00ec 482B     		cmp	r3, #72
 705 00ee 3FD1     		bne	.L26
 706              	.LBB5:
 238:../Application/UsbManager/UsbManager.c **** 
 239:../Application/UsbManager/UsbManager.c **** 			char answer[3];
 240:../Application/UsbManager/UsbManager.c **** 			unsigned long rtcTime;
 241:../Application/UsbManager/UsbManager.c **** 
 242:../Application/UsbManager/UsbManager.c **** 			rtcTime = ( ( (unsigned long)(UsbCtrl.command[3]) & 0xFF ) << 24 ) |
 707              		.loc 1 242 0
 708 00f0 8E4B     		ldr	r3, .L58
 709 00f2 DB7B     		ldrb	r3, [r3, #15]
 710 00f4 5BB2     		sxtb	r3, r3
 711 00f6 1A06     		lsl	r2, r3, #24
 243:../Application/UsbManager/UsbManager.c **** 					( ( (unsigned long)(UsbCtrl.command[4]) & 0xFF ) << 16 ) |
 712              		.loc 1 243 0
 713 00f8 8C4B     		ldr	r3, .L58
 714 00fa 1B7C     		ldrb	r3, [r3, #16]
 715 00fc 59B2     		sxtb	r1, r3
 716 00fe FF23     		mov	r3, #255
 717 0100 0B40     		and	r3, r1
 718 0102 1B04     		lsl	r3, r3, #16
 242:../Application/UsbManager/UsbManager.c **** 			rtcTime = ( ( (unsigned long)(UsbCtrl.command[3]) & 0xFF ) << 24 ) |
 719              		.loc 1 242 0
 720 0104 1A43     		orr	r2, r3
 244:../Application/UsbManager/UsbManager.c **** 					( ( (unsigned long)(UsbCtrl.command[5]) & 0xFF ) << 8 ) |
 721              		.loc 1 244 0
 722 0106 894B     		ldr	r3, .L58
 723 0108 5B7C     		ldrb	r3, [r3, #17]
 724 010a 5BB2     		sxtb	r3, r3
 725 010c 1B02     		lsl	r3, r3, #8
 726 010e 1B04     		lsl	r3, r3, #16
 727 0110 1B0C     		lsr	r3, r3, #16
 243:../Application/UsbManager/UsbManager.c **** 					( ( (unsigned long)(UsbCtrl.command[4]) & 0xFF ) << 16 ) |
 728              		.loc 1 243 0
 729 0112 1A43     		orr	r2, r3
 245:../Application/UsbManager/UsbManager.c **** 					( ( (unsigned long)(UsbCtrl.command[6]) & 0xFF ) );
 730              		.loc 1 245 0
 731 0114 854B     		ldr	r3, .L58
 732 0116 9B7C     		ldrb	r3, [r3, #18]
 733 0118 59B2     		sxtb	r1, r3
 734 011a FF23     		mov	r3, #255
 735 011c 0B40     		and	r3, r1
 242:../Application/UsbManager/UsbManager.c **** 			rtcTime = ( ( (unsigned long)(UsbCtrl.command[3]) & 0xFF ) << 24 ) |
 736              		.loc 1 242 0
 737 011e 1343     		orr	r3, r2
 738 0120 C422     		mov	r2, #196
 739 0122 D219     		add	r2, r2, r7
 740 0124 1360     		str	r3, [r2]
 246:../Application/UsbManager/UsbManager.c **** 
 247:../Application/UsbManager/UsbManager.c **** 			RtcSetTime(rtcTime);
 741              		.loc 1 247 0
 742 0126 C422     		mov	r2, #196
 743 0128 D219     		add	r2, r2, r7
 744 012a 1368     		ldr	r3, [r2]
 745 012c 181C     		mov	r0, r3
 746 012e FFF7FEFF 		bl	RtcSetTime
 248:../Application/UsbManager/UsbManager.c **** 
 249:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 747              		.loc 1 249 0
 748 0132 3B1C     		mov	r3, r7
 749 0134 A833     		add	r3, r3, #168
 750 0136 5222     		mov	r2, #82
 751 0138 1A70     		strb	r2, [r3]
 250:../Application/UsbManager/UsbManager.c **** 			answer[1] = 1;
 752              		.loc 1 250 0
 753 013a 3B1C     		mov	r3, r7
 754 013c A833     		add	r3, r3, #168
 755 013e 0122     		mov	r2, #1
 756 0140 5A70     		strb	r2, [r3, #1]
 251:../Application/UsbManager/UsbManager.c **** 			answer[2] = USB_CMD_REMOTE_SET_TIME;
 757              		.loc 1 251 0
 758 0142 3B1C     		mov	r3, r7
 759 0144 A833     		add	r3, r3, #168
 760 0146 4822     		mov	r2, #72
 761 0148 9A70     		strb	r2, [r3, #2]
 252:../Application/UsbManager/UsbManager.c **** 			UsbUartSendData(answer,3);
 762              		.loc 1 252 0
 763 014a 3B1C     		mov	r3, r7
 764 014c A833     		add	r3, r3, #168
 765 014e 181C     		mov	r0, r3
 766 0150 0321     		mov	r1, #3
 767 0152 FFF7FEFF 		bl	Uart1SendData
 253:../Application/UsbManager/UsbManager.c **** 
 254:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 255:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 768              		.loc 1 255 0
 769 0156 754A     		ldr	r2, .L58
 770 0158 8C23     		mov	r3, #140
 771 015a 0021     		mov	r1, #0
 772 015c D154     		strb	r1, [r2, r3]
 256:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 773              		.loc 1 256 0
 774 015e 734B     		ldr	r3, .L58
 775 0160 0022     		mov	r2, #0
 776 0162 5A81     		strh	r2, [r3, #10]
 257:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 777              		.loc 1 257 0
 778 0164 714B     		ldr	r3, .L58
 779 0166 0022     		mov	r2, #0
 780 0168 DA80     		strh	r2, [r3, #6]
 258:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 781              		.loc 1 258 0
 782 016a 704B     		ldr	r3, .L58
 783 016c 0022     		mov	r2, #0
 784 016e 9A80     		strh	r2, [r3, #4]
 785              	.L26:
 786              	.LBE5:
 259:../Application/UsbManager/UsbManager.c **** 		}
 260:../Application/UsbManager/UsbManager.c **** 
 261:../Application/UsbManager/UsbManager.c **** 		/*-- get battery status --*/
 262:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_GET_BATTERY) {
 787              		.loc 1 262 0
 788 0170 6E4B     		ldr	r3, .L58
 789 0172 9B7B     		ldrb	r3, [r3, #14]
 790 0174 5BB2     		sxtb	r3, r3
 791 0176 422B     		cmp	r3, #66
 792 0178 5CD1     		bne	.L27
 793              	.LBB6:
 263:../Application/UsbManager/UsbManager.c **** 
 264:../Application/UsbManager/UsbManager.c **** 			char answer[12];
 265:../Application/UsbManager/UsbManager.c **** 
 266:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 794              		.loc 1 266 0
 795 017a 3B1C     		mov	r3, r7
 796 017c 9C33     		add	r3, r3, #156
 797 017e 5222     		mov	r2, #82
 798 0180 1A70     		strb	r2, [r3]
 267:../Application/UsbManager/UsbManager.c **** 			answer[1] = 10;
 799              		.loc 1 267 0
 800 0182 3B1C     		mov	r3, r7
 801 0184 9C33     		add	r3, r3, #156
 802 0186 0A22     		mov	r2, #10
 803 0188 5A70     		strb	r2, [r3, #1]
 268:../Application/UsbManager/UsbManager.c **** 			answer[2] = USB_CMD_REMOTE_GET_BATTERY;
 804              		.loc 1 268 0
 805 018a 3B1C     		mov	r3, r7
 806 018c 9C33     		add	r3, r3, #156
 807 018e 4222     		mov	r2, #66
 808 0190 9A70     		strb	r2, [r3, #2]
 269:../Application/UsbManager/UsbManager.c **** 			answer[3] = (unsigned char)((BQBatteryStatus.cellVoltage >> 8) & 0xFF);
 809              		.loc 1 269 0
 810 0192 684B     		ldr	r3, .L58+8
 811 0194 5B88     		ldrh	r3, [r3, #2]
 812 0196 1B0A     		lsr	r3, r3, #8
 813 0198 9BB2     		uxth	r3, r3
 814 019a DAB2     		uxtb	r2, r3
 815 019c 3B1C     		mov	r3, r7
 816 019e 9C33     		add	r3, r3, #156
 817 01a0 DA70     		strb	r2, [r3, #3]
 270:../Application/UsbManager/UsbManager.c **** 			answer[4] = (unsigned char)((BQBatteryStatus.cellVoltage) & 0xFF);
 818              		.loc 1 270 0
 819 01a2 644B     		ldr	r3, .L58+8
 820 01a4 5B88     		ldrh	r3, [r3, #2]
 821 01a6 DAB2     		uxtb	r2, r3
 822 01a8 3B1C     		mov	r3, r7
 823 01aa 9C33     		add	r3, r3, #156
 824 01ac 1A71     		strb	r2, [r3, #4]
 271:../Application/UsbManager/UsbManager.c **** 			answer[5] = (BQBatteryStatus.stateOfCharge);
 825              		.loc 1 271 0
 826 01ae 614B     		ldr	r3, .L58+8
 827 01b0 DB8C     		ldrh	r3, [r3, #38]
 828 01b2 DAB2     		uxtb	r2, r3
 829 01b4 3B1C     		mov	r3, r7
 830 01b6 9C33     		add	r3, r3, #156
 831 01b8 5A71     		strb	r2, [r3, #5]
 272:../Application/UsbManager/UsbManager.c **** 			answer[6] = (unsigned char)((BQBatteryStatus.fullCapacity >> 8) & 0xFF);
 832              		.loc 1 272 0
 833 01ba 5E4B     		ldr	r3, .L58+8
 834 01bc 5B89     		ldrh	r3, [r3, #10]
 835 01be 1B0A     		lsr	r3, r3, #8
 836 01c0 9BB2     		uxth	r3, r3
 837 01c2 DAB2     		uxtb	r2, r3
 838 01c4 3B1C     		mov	r3, r7
 839 01c6 9C33     		add	r3, r3, #156
 840 01c8 9A71     		strb	r2, [r3, #6]
 273:../Application/UsbManager/UsbManager.c **** 			answer[7] = (unsigned char)((BQBatteryStatus.fullCapacity) & 0xFF);
 841              		.loc 1 273 0
 842 01ca 5A4B     		ldr	r3, .L58+8
 843 01cc 5B89     		ldrh	r3, [r3, #10]
 844 01ce DAB2     		uxtb	r2, r3
 845 01d0 3B1C     		mov	r3, r7
 846 01d2 9C33     		add	r3, r3, #156
 847 01d4 DA71     		strb	r2, [r3, #7]
 274:../Application/UsbManager/UsbManager.c **** 			answer[8] = (unsigned char)((BQBatteryStatus.timeToEmpty >> 8) & 0xFF);
 848              		.loc 1 274 0
 849 01d6 574B     		ldr	r3, .L58+8
 850 01d8 DB89     		ldrh	r3, [r3, #14]
 851 01da 1B0A     		lsr	r3, r3, #8
 852 01dc 9BB2     		uxth	r3, r3
 853 01de DAB2     		uxtb	r2, r3
 854 01e0 3B1C     		mov	r3, r7
 855 01e2 9C33     		add	r3, r3, #156
 856 01e4 1A72     		strb	r2, [r3, #8]
 275:../Application/UsbManager/UsbManager.c **** 			answer[9] = (unsigned char)((BQBatteryStatus.timeToEmpty) & 0xFF);
 857              		.loc 1 275 0
 858 01e6 534B     		ldr	r3, .L58+8
 859 01e8 DB89     		ldrh	r3, [r3, #14]
 860 01ea DAB2     		uxtb	r2, r3
 861 01ec 3B1C     		mov	r3, r7
 862 01ee 9C33     		add	r3, r3, #156
 863 01f0 5A72     		strb	r2, [r3, #9]
 276:../Application/UsbManager/UsbManager.c **** 			answer[10] = (unsigned char)((BQBatteryStatus.timeToFull >> 8) & 0xFF);
 864              		.loc 1 276 0
 865 01f2 504B     		ldr	r3, .L58+8
 866 01f4 1B8A     		ldrh	r3, [r3, #16]
 867 01f6 1B0A     		lsr	r3, r3, #8
 868 01f8 9BB2     		uxth	r3, r3
 869 01fa DAB2     		uxtb	r2, r3
 870 01fc 3B1C     		mov	r3, r7
 871 01fe 9C33     		add	r3, r3, #156
 872 0200 9A72     		strb	r2, [r3, #10]
 277:../Application/UsbManager/UsbManager.c **** 			answer[11] = (unsigned char)((BQBatteryStatus.timeToFull) & 0xFF);
 873              		.loc 1 277 0
 874 0202 4C4B     		ldr	r3, .L58+8
 875 0204 1B8A     		ldrh	r3, [r3, #16]
 876 0206 DAB2     		uxtb	r2, r3
 877 0208 3B1C     		mov	r3, r7
 878 020a 9C33     		add	r3, r3, #156
 879 020c DA72     		strb	r2, [r3, #11]
 278:../Application/UsbManager/UsbManager.c **** 
 279:../Application/UsbManager/UsbManager.c **** 			UsbUartSendData(answer,12);
 880              		.loc 1 279 0
 881 020e 3B1C     		mov	r3, r7
 882 0210 9C33     		add	r3, r3, #156
 883 0212 181C     		mov	r0, r3
 884 0214 0C21     		mov	r1, #12
 885 0216 FFF7FEFF 		bl	Uart1SendData
 280:../Application/UsbManager/UsbManager.c **** 
 281:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 282:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 886              		.loc 1 282 0
 887 021a 444A     		ldr	r2, .L58
 888 021c 8C23     		mov	r3, #140
 889 021e 0021     		mov	r1, #0
 890 0220 D154     		strb	r1, [r2, r3]
 283:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 891              		.loc 1 283 0
 892 0222 424B     		ldr	r3, .L58
 893 0224 0022     		mov	r2, #0
 894 0226 5A81     		strh	r2, [r3, #10]
 284:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 895              		.loc 1 284 0
 896 0228 404B     		ldr	r3, .L58
 897 022a 0022     		mov	r2, #0
 898 022c DA80     		strh	r2, [r3, #6]
 285:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 899              		.loc 1 285 0
 900 022e 3F4B     		ldr	r3, .L58
 901 0230 0022     		mov	r2, #0
 902 0232 9A80     		strh	r2, [r3, #4]
 903              	.L27:
 904              	.LBE6:
 286:../Application/UsbManager/UsbManager.c **** 		}
 287:../Application/UsbManager/UsbManager.c **** 
 288:../Application/UsbManager/UsbManager.c **** 		/*-- set diving parameters --*/
 289:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_SET_DIVING) {
 905              		.loc 1 289 0
 906 0234 3D4B     		ldr	r3, .L58
 907 0236 9B7B     		ldrb	r3, [r3, #14]
 908 0238 5BB2     		sxtb	r3, r3
 909 023a 502B     		cmp	r3, #80
 910 023c 40D1     		bne	.L28
 911              	.LBB7:
 290:../Application/UsbManager/UsbManager.c **** 
 291:../Application/UsbManager/UsbManager.c **** 			DivingParameters.depth = UsbCtrl.command[3];
 912              		.loc 1 291 0
 913 023e 3B4B     		ldr	r3, .L58
 914 0240 DB7B     		ldrb	r3, [r3, #15]
 915 0242 DAB2     		uxtb	r2, r3
 916 0244 3C4B     		ldr	r3, .L58+12
 917 0246 1A70     		strb	r2, [r3]
 292:../Application/UsbManager/UsbManager.c **** 			DivingParameters.filterMSB = UsbCtrl.command[4];
 918              		.loc 1 292 0
 919 0248 384B     		ldr	r3, .L58
 920 024a 1B7C     		ldrb	r3, [r3, #16]
 921 024c DAB2     		uxtb	r2, r3
 922 024e 3A4B     		ldr	r3, .L58+12
 923 0250 5A70     		strb	r2, [r3, #1]
 293:../Application/UsbManager/UsbManager.c **** 			DivingParameters.filterLSB = UsbCtrl.command[5];
 924              		.loc 1 293 0
 925 0252 364B     		ldr	r3, .L58
 926 0254 5B7C     		ldrb	r3, [r3, #17]
 927 0256 DAB2     		uxtb	r2, r3
 928 0258 374B     		ldr	r3, .L58+12
 929 025a 9A70     		strb	r2, [r3, #2]
 294:../Application/UsbManager/UsbManager.c **** 
 295:../Application/UsbManager/UsbManager.c **** 			unsigned short result = MemoryManagerWriteDiving(&DivingParameters);
 930              		.loc 1 295 0
 931 025c 364B     		ldr	r3, .L58+12
 932 025e 181C     		mov	r0, r3
 933 0260 FFF7FEFF 		bl	MemoryManagerWriteDiving
 934 0264 031C     		mov	r3, r0
 935 0266 1A1C     		mov	r2, r3
 936 0268 3B1C     		mov	r3, r7
 937 026a C233     		add	r3, r3, #194
 938 026c 1A80     		strh	r2, [r3]
 296:../Application/UsbManager/UsbManager.c **** 
 297:../Application/UsbManager/UsbManager.c **** 			char answer[3];
 298:../Application/UsbManager/UsbManager.c **** 
 299:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 939              		.loc 1 299 0
 940 026e 3B1C     		mov	r3, r7
 941 0270 9833     		add	r3, r3, #152
 942 0272 5222     		mov	r2, #82
 943 0274 1A70     		strb	r2, [r3]
 300:../Application/UsbManager/UsbManager.c **** 			answer[1] = 1;
 944              		.loc 1 300 0
 945 0276 3B1C     		mov	r3, r7
 946 0278 9833     		add	r3, r3, #152
 947 027a 0122     		mov	r2, #1
 948 027c 5A70     		strb	r2, [r3, #1]
 301:../Application/UsbManager/UsbManager.c **** 
 302:../Application/UsbManager/UsbManager.c **** 			if(result == 0) {
 949              		.loc 1 302 0
 950 027e 3B1C     		mov	r3, r7
 951 0280 C233     		add	r3, r3, #194
 952 0282 1B88     		ldrh	r3, [r3]
 953 0284 002B     		cmp	r3, #0
 954 0286 04D1     		bne	.L29
 303:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_SET_DIVING;
 955              		.loc 1 303 0
 956 0288 3B1C     		mov	r3, r7
 957 028a 9833     		add	r3, r3, #152
 958 028c 5022     		mov	r2, #80
 959 028e 9A70     		strb	r2, [r3, #2]
 960 0290 03E0     		b	.L30
 961              	.L29:
 304:../Application/UsbManager/UsbManager.c **** 			} else {
 305:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_ERROR;
 962              		.loc 1 305 0
 963 0292 3B1C     		mov	r3, r7
 964 0294 9833     		add	r3, r3, #152
 965 0296 FF22     		mov	r2, #255
 966 0298 9A70     		strb	r2, [r3, #2]
 967              	.L30:
 306:../Application/UsbManager/UsbManager.c **** 			}
 307:../Application/UsbManager/UsbManager.c **** 
 308:../Application/UsbManager/UsbManager.c **** 			UsbUartSendData(answer,3);
 968              		.loc 1 308 0 discriminator 1
 969 029a 3B1C     		mov	r3, r7
 970 029c 9833     		add	r3, r3, #152
 971 029e 181C     		mov	r0, r3
 972 02a0 0321     		mov	r1, #3
 973 02a2 FFF7FEFF 		bl	Uart1SendData
 309:../Application/UsbManager/UsbManager.c **** 
 310:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 311:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 974              		.loc 1 311 0 discriminator 1
 975 02a6 214A     		ldr	r2, .L58
 976 02a8 8C23     		mov	r3, #140
 977 02aa 0021     		mov	r1, #0
 978 02ac D154     		strb	r1, [r2, r3]
 312:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 979              		.loc 1 312 0 discriminator 1
 980 02ae 1F4B     		ldr	r3, .L58
 981 02b0 0022     		mov	r2, #0
 982 02b2 5A81     		strh	r2, [r3, #10]
 313:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 983              		.loc 1 313 0 discriminator 1
 984 02b4 1D4B     		ldr	r3, .L58
 985 02b6 0022     		mov	r2, #0
 986 02b8 DA80     		strh	r2, [r3, #6]
 314:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 987              		.loc 1 314 0 discriminator 1
 988 02ba 1C4B     		ldr	r3, .L58
 989 02bc 0022     		mov	r2, #0
 990 02be 9A80     		strh	r2, [r3, #4]
 991              	.L28:
 992              	.LBE7:
 315:../Application/UsbManager/UsbManager.c **** 		}
 316:../Application/UsbManager/UsbManager.c **** 
 317:../Application/UsbManager/UsbManager.c **** 		/*-- get diving parameters --*/
 318:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_GET_DIVING) {
 993              		.loc 1 318 0
 994 02c0 1A4B     		ldr	r3, .L58
 995 02c2 9B7B     		ldrb	r3, [r3, #14]
 996 02c4 5BB2     		sxtb	r3, r3
 997 02c6 702B     		cmp	r3, #112
 998 02c8 55D1     		bne	.L31
 999              	.LBB8:
 319:../Application/UsbManager/UsbManager.c **** 
 320:../Application/UsbManager/UsbManager.c **** 			char answer[3];
 321:../Application/UsbManager/UsbManager.c **** 
 322:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 1000              		.loc 1 322 0
 1001 02ca 3B1C     		mov	r3, r7
 1002 02cc 9433     		add	r3, r3, #148
 1003 02ce 5222     		mov	r2, #82
 1004 02d0 1A70     		strb	r2, [r3]
 323:../Application/UsbManager/UsbManager.c **** 
 324:../Application/UsbManager/UsbManager.c **** 			/*-- checksum --*/
 325:../Application/UsbManager/UsbManager.c **** 			MemoryManagerCheckDiving(&DivingParameters);
 1005              		.loc 1 325 0
 1006 02d2 194B     		ldr	r3, .L58+12
 1007 02d4 181C     		mov	r0, r3
 1008 02d6 FFF7FEFF 		bl	MemoryManagerCheckDiving
 326:../Application/UsbManager/UsbManager.c **** 			if(MemoryManagerCtrl.isValid.bits.diving) {
 1009              		.loc 1 326 0
 1010 02da 184B     		ldr	r3, .L58+16
 1011 02dc 1B78     		ldrb	r3, [r3]
 1012 02de 9B07     		lsl	r3, r3, #30
 1013 02e0 DB0F     		lsr	r3, r3, #31
 1014 02e2 DBB2     		uxtb	r3, r3
 1015 02e4 002B     		cmp	r3, #0
 1016 02e6 2BD0     		beq	.L32
 327:../Application/UsbManager/UsbManager.c **** 				answer[1] = 4;
 1017              		.loc 1 327 0
 1018 02e8 3B1C     		mov	r3, r7
 1019 02ea 9433     		add	r3, r3, #148
 1020 02ec 0422     		mov	r2, #4
 1021 02ee 5A70     		strb	r2, [r3, #1]
 328:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_GET_DIVING;
 1022              		.loc 1 328 0
 1023 02f0 3B1C     		mov	r3, r7
 1024 02f2 9433     		add	r3, r3, #148
 1025 02f4 7022     		mov	r2, #112
 1026 02f6 9A70     		strb	r2, [r3, #2]
 329:../Application/UsbManager/UsbManager.c **** 				answer[3] = DivingParameters.depth;
 1027              		.loc 1 329 0
 1028 02f8 0F4B     		ldr	r3, .L58+12
 1029 02fa 1B78     		ldrb	r3, [r3]
 1030 02fc DAB2     		uxtb	r2, r3
 1031 02fe 3B1C     		mov	r3, r7
 1032 0300 9433     		add	r3, r3, #148
 1033 0302 DA70     		strb	r2, [r3, #3]
 330:../Application/UsbManager/UsbManager.c **** 				answer[4] = DivingParameters.filterMSB;
 1034              		.loc 1 330 0
 1035 0304 0C4B     		ldr	r3, .L58+12
 1036 0306 5B78     		ldrb	r3, [r3, #1]
 1037 0308 DAB2     		uxtb	r2, r3
 1038 030a 3B1C     		mov	r3, r7
 1039 030c 9433     		add	r3, r3, #148
 1040 030e 1A71     		strb	r2, [r3, #4]
 331:../Application/UsbManager/UsbManager.c **** 				answer[5] = DivingParameters.filterLSB;
 1041              		.loc 1 331 0
 1042 0310 094B     		ldr	r3, .L58+12
 1043 0312 9B78     		ldrb	r3, [r3, #2]
 1044 0314 DAB2     		uxtb	r2, r3
 1045 0316 3B1C     		mov	r3, r7
 1046 0318 9433     		add	r3, r3, #148
 1047 031a 5A71     		strb	r2, [r3, #5]
 332:../Application/UsbManager/UsbManager.c **** 				UsbUartSendData(answer,6);
 1048              		.loc 1 332 0
 1049 031c 3B1C     		mov	r3, r7
 1050 031e 9433     		add	r3, r3, #148
 1051 0320 181C     		mov	r0, r3
 1052 0322 0621     		mov	r1, #6
 1053 0324 FFF7FEFF 		bl	Uart1SendData
 1054 0328 18E0     		b	.L33
 1055              	.L59:
 1056 032a C046     		.align	2
 1057              	.L58:
 1058 032c 00000000 		.word	UsbCtrl
 1059 0330 00000000 		.word	.LC0
 1060 0334 00000000 		.word	BQBatteryStatus
 1061 0338 00000000 		.word	DivingParameters
 1062 033c 00000000 		.word	MemoryManagerCtrl
 1063              	.L32:
 333:../Application/UsbManager/UsbManager.c **** 			} else {
 334:../Application/UsbManager/UsbManager.c **** 				answer[1] = 1;
 1064              		.loc 1 334 0
 1065 0340 3B1C     		mov	r3, r7
 1066 0342 9433     		add	r3, r3, #148
 1067 0344 0122     		mov	r2, #1
 1068 0346 5A70     		strb	r2, [r3, #1]
 335:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_ERROR;
 1069              		.loc 1 335 0
 1070 0348 3B1C     		mov	r3, r7
 1071 034a 9433     		add	r3, r3, #148
 1072 034c FF22     		mov	r2, #255
 1073 034e 9A70     		strb	r2, [r3, #2]
 336:../Application/UsbManager/UsbManager.c **** 				UsbUartSendData(answer,3);
 1074              		.loc 1 336 0
 1075 0350 3B1C     		mov	r3, r7
 1076 0352 9433     		add	r3, r3, #148
 1077 0354 181C     		mov	r0, r3
 1078 0356 0321     		mov	r1, #3
 1079 0358 FFF7FEFF 		bl	Uart1SendData
 1080              	.L33:
 337:../Application/UsbManager/UsbManager.c **** 			}
 338:../Application/UsbManager/UsbManager.c **** 
 339:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 340:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 1081              		.loc 1 340 0 discriminator 1
 1082 035c C94A     		ldr	r2, .L60
 1083 035e 8C23     		mov	r3, #140
 1084 0360 0021     		mov	r1, #0
 1085 0362 D154     		strb	r1, [r2, r3]
 341:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 1086              		.loc 1 341 0 discriminator 1
 1087 0364 C74B     		ldr	r3, .L60
 1088 0366 0022     		mov	r2, #0
 1089 0368 5A81     		strh	r2, [r3, #10]
 342:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 1090              		.loc 1 342 0 discriminator 1
 1091 036a C64B     		ldr	r3, .L60
 1092 036c 0022     		mov	r2, #0
 1093 036e DA80     		strh	r2, [r3, #6]
 343:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 1094              		.loc 1 343 0 discriminator 1
 1095 0370 C44B     		ldr	r3, .L60
 1096 0372 0022     		mov	r2, #0
 1097 0374 9A80     		strh	r2, [r3, #4]
 1098              	.L31:
 1099              	.LBE8:
 344:../Application/UsbManager/UsbManager.c **** 		}
 345:../Application/UsbManager/UsbManager.c **** 
 346:../Application/UsbManager/UsbManager.c **** 		/*-- get firmware revision --*/
 347:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_GET_FIRMWARE) {
 1100              		.loc 1 347 0
 1101 0376 C34B     		ldr	r3, .L60
 1102 0378 9B7B     		ldrb	r3, [r3, #14]
 1103 037a 5BB2     		sxtb	r3, r3
 1104 037c 662B     		cmp	r3, #102
 1105 037e 26D1     		bne	.L34
 1106              	.LBB9:
 348:../Application/UsbManager/UsbManager.c **** 
 349:../Application/UsbManager/UsbManager.c **** 			char answer[7];
 350:../Application/UsbManager/UsbManager.c **** 
 351:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 1107              		.loc 1 351 0
 1108 0380 3B1C     		mov	r3, r7
 1109 0382 8C33     		add	r3, r3, #140
 1110 0384 5222     		mov	r2, #82
 1111 0386 1A70     		strb	r2, [r3]
 352:../Application/UsbManager/UsbManager.c **** 			answer[1] = 3;
 1112              		.loc 1 352 0
 1113 0388 3B1C     		mov	r3, r7
 1114 038a 8C33     		add	r3, r3, #140
 1115 038c 0322     		mov	r2, #3
 1116 038e 5A70     		strb	r2, [r3, #1]
 353:../Application/UsbManager/UsbManager.c **** 			answer[2] = USB_CMD_REMOTE_GET_FIRMWARE;
 1117              		.loc 1 353 0
 1118 0390 3B1C     		mov	r3, r7
 1119 0392 8C33     		add	r3, r3, #140
 1120 0394 6622     		mov	r2, #102
 1121 0396 9A70     		strb	r2, [r3, #2]
 354:../Application/UsbManager/UsbManager.c **** 			answer[3] = GLOBAL_FIRMWARE_REVISION;
 1122              		.loc 1 354 0
 1123 0398 3B1C     		mov	r3, r7
 1124 039a 8C33     		add	r3, r3, #140
 1125 039c 0122     		mov	r2, #1
 1126 039e DA70     		strb	r2, [r3, #3]
 355:../Application/UsbManager/UsbManager.c **** 			answer[4] = GLOBAL_FIRMWARE_RAMIFICATION;
 1127              		.loc 1 355 0
 1128 03a0 3B1C     		mov	r3, r7
 1129 03a2 8C33     		add	r3, r3, #140
 1130 03a4 0022     		mov	r2, #0
 1131 03a6 1A71     		strb	r2, [r3, #4]
 356:../Application/UsbManager/UsbManager.c **** 
 357:../Application/UsbManager/UsbManager.c **** 			UsbUartSendData(answer,5);
 1132              		.loc 1 357 0
 1133 03a8 3B1C     		mov	r3, r7
 1134 03aa 8C33     		add	r3, r3, #140
 1135 03ac 181C     		mov	r0, r3
 1136 03ae 0521     		mov	r1, #5
 1137 03b0 FFF7FEFF 		bl	Uart1SendData
 358:../Application/UsbManager/UsbManager.c **** 
 359:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 360:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 1138              		.loc 1 360 0
 1139 03b4 B34A     		ldr	r2, .L60
 1140 03b6 8C23     		mov	r3, #140
 1141 03b8 0021     		mov	r1, #0
 1142 03ba D154     		strb	r1, [r2, r3]
 361:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 1143              		.loc 1 361 0
 1144 03bc B14B     		ldr	r3, .L60
 1145 03be 0022     		mov	r2, #0
 1146 03c0 5A81     		strh	r2, [r3, #10]
 362:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 1147              		.loc 1 362 0
 1148 03c2 B04B     		ldr	r3, .L60
 1149 03c4 0022     		mov	r2, #0
 1150 03c6 DA80     		strh	r2, [r3, #6]
 363:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 1151              		.loc 1 363 0
 1152 03c8 AE4B     		ldr	r3, .L60
 1153 03ca 0022     		mov	r2, #0
 1154 03cc 9A80     		strh	r2, [r3, #4]
 1155              	.L34:
 1156              	.LBE9:
 364:../Application/UsbManager/UsbManager.c **** 		}
 365:../Application/UsbManager/UsbManager.c **** 
 366:../Application/UsbManager/UsbManager.c **** 
 367:../Application/UsbManager/UsbManager.c **** 		/*-- get serial --*/
 368:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_GET_SERIAL) {
 1157              		.loc 1 368 0
 1158 03ce AD4B     		ldr	r3, .L60
 1159 03d0 9B7B     		ldrb	r3, [r3, #14]
 1160 03d2 5BB2     		sxtb	r3, r3
 1161 03d4 732B     		cmp	r3, #115
 1162 03d6 57D1     		bne	.L35
 1163              	.LBB10:
 369:../Application/UsbManager/UsbManager.c **** 
 370:../Application/UsbManager/UsbManager.c **** 			char answer[11];
 371:../Application/UsbManager/UsbManager.c **** 
 372:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 1164              		.loc 1 372 0
 1165 03d8 3B1C     		mov	r3, r7
 1166 03da 8033     		add	r3, r3, #128
 1167 03dc 5222     		mov	r2, #82
 1168 03de 1A70     		strb	r2, [r3]
 373:../Application/UsbManager/UsbManager.c **** 
 374:../Application/UsbManager/UsbManager.c **** 			MemoryManagerCheckDiving(&DivingParameters);
 1169              		.loc 1 374 0
 1170 03e0 A94B     		ldr	r3, .L60+4
 1171 03e2 181C     		mov	r0, r3
 1172 03e4 FFF7FEFF 		bl	MemoryManagerCheckDiving
 375:../Application/UsbManager/UsbManager.c **** 			if(MemoryManagerCtrl.isValid.bits.serial) {
 1173              		.loc 1 375 0
 1174 03e8 A84B     		ldr	r3, .L60+8
 1175 03ea 1B78     		ldrb	r3, [r3]
 1176 03ec DB07     		lsl	r3, r3, #31
 1177 03ee DB0F     		lsr	r3, r3, #31
 1178 03f0 DBB2     		uxtb	r3, r3
 1179 03f2 002B     		cmp	r3, #0
 1180 03f4 2DD0     		beq	.L36
 1181              	.LBB11:
 376:../Application/UsbManager/UsbManager.c **** 				answer[1] = 9;
 1182              		.loc 1 376 0
 1183 03f6 3B1C     		mov	r3, r7
 1184 03f8 8033     		add	r3, r3, #128
 1185 03fa 0922     		mov	r2, #9
 1186 03fc 5A70     		strb	r2, [r3, #1]
 377:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_GET_SERIAL;
 1187              		.loc 1 377 0
 1188 03fe 3B1C     		mov	r3, r7
 1189 0400 8033     		add	r3, r3, #128
 1190 0402 7322     		mov	r2, #115
 1191 0404 9A70     		strb	r2, [r3, #2]
 378:../Application/UsbManager/UsbManager.c **** 
 379:../Application/UsbManager/UsbManager.c **** 				unsigned char i;
 380:../Application/UsbManager/UsbManager.c **** 				for(i=0 ; i<MEMORYMANAGER_SERIAL_BLOCK_SIZE-1 ; i++) {
 1192              		.loc 1 380 0
 1193 0406 3B1C     		mov	r3, r7
 1194 0408 CF33     		add	r3, r3, #207
 1195 040a 0022     		mov	r2, #0
 1196 040c 1A70     		strb	r2, [r3]
 1197 040e 14E0     		b	.L37
 1198              	.L38:
 381:../Application/UsbManager/UsbManager.c **** 					answer[3+i] = *(((unsigned char*)&SerialParameters.serial) + i);
 1199              		.loc 1 381 0 discriminator 2
 1200 0410 3B1C     		mov	r3, r7
 1201 0412 CF33     		add	r3, r3, #207
 1202 0414 1B78     		ldrb	r3, [r3]
 1203 0416 0333     		add	r3, r3, #3
 1204 0418 3A1C     		mov	r2, r7
 1205 041a CF32     		add	r2, r2, #207
 1206 041c 1178     		ldrb	r1, [r2]
 1207 041e 9C4A     		ldr	r2, .L60+12
 1208 0420 8A18     		add	r2, r1, r2
 1209 0422 1278     		ldrb	r2, [r2]
 1210 0424 D1B2     		uxtb	r1, r2
 1211 0426 3A1C     		mov	r2, r7
 1212 0428 8032     		add	r2, r2, #128
 1213 042a D154     		strb	r1, [r2, r3]
 380:../Application/UsbManager/UsbManager.c **** 				for(i=0 ; i<MEMORYMANAGER_SERIAL_BLOCK_SIZE-1 ; i++) {
 1214              		.loc 1 380 0 discriminator 2
 1215 042c 3B1C     		mov	r3, r7
 1216 042e CF33     		add	r3, r3, #207
 1217 0430 1A78     		ldrb	r2, [r3]
 1218 0432 3B1C     		mov	r3, r7
 1219 0434 CF33     		add	r3, r3, #207
 1220 0436 0132     		add	r2, r2, #1
 1221 0438 1A70     		strb	r2, [r3]
 1222              	.L37:
 380:../Application/UsbManager/UsbManager.c **** 				for(i=0 ; i<MEMORYMANAGER_SERIAL_BLOCK_SIZE-1 ; i++) {
 1223              		.loc 1 380 0 is_stmt 0 discriminator 1
 1224 043a 3B1C     		mov	r3, r7
 1225 043c CF33     		add	r3, r3, #207
 1226 043e 1B78     		ldrb	r3, [r3]
 1227 0440 072B     		cmp	r3, #7
 1228 0442 E5D9     		bls	.L38
 382:../Application/UsbManager/UsbManager.c **** 				}
 383:../Application/UsbManager/UsbManager.c **** 
 384:../Application/UsbManager/UsbManager.c **** 				UsbUartSendData(answer,11);
 1229              		.loc 1 384 0 is_stmt 1
 1230 0444 3B1C     		mov	r3, r7
 1231 0446 8033     		add	r3, r3, #128
 1232 0448 181C     		mov	r0, r3
 1233 044a 0B21     		mov	r1, #11
 1234 044c FFF7FEFF 		bl	Uart1SendData
 1235              	.LBE11:
 1236 0450 0DE0     		b	.L39
 1237              	.L36:
 385:../Application/UsbManager/UsbManager.c **** 			} else {
 386:../Application/UsbManager/UsbManager.c **** 				answer[1] = 1;
 1238              		.loc 1 386 0
 1239 0452 3B1C     		mov	r3, r7
 1240 0454 8033     		add	r3, r3, #128
 1241 0456 0122     		mov	r2, #1
 1242 0458 5A70     		strb	r2, [r3, #1]
 387:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_ERROR;
 1243              		.loc 1 387 0
 1244 045a 3B1C     		mov	r3, r7
 1245 045c 8033     		add	r3, r3, #128
 1246 045e FF22     		mov	r2, #255
 1247 0460 9A70     		strb	r2, [r3, #2]
 388:../Application/UsbManager/UsbManager.c **** 				UsbUartSendData(answer,3);
 1248              		.loc 1 388 0
 1249 0462 3B1C     		mov	r3, r7
 1250 0464 8033     		add	r3, r3, #128
 1251 0466 181C     		mov	r0, r3
 1252 0468 0321     		mov	r1, #3
 1253 046a FFF7FEFF 		bl	Uart1SendData
 1254              	.L39:
 389:../Application/UsbManager/UsbManager.c **** 			}
 390:../Application/UsbManager/UsbManager.c **** 
 391:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 392:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 1255              		.loc 1 392 0 discriminator 1
 1256 046e 854A     		ldr	r2, .L60
 1257 0470 8C23     		mov	r3, #140
 1258 0472 0021     		mov	r1, #0
 1259 0474 D154     		strb	r1, [r2, r3]
 393:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 1260              		.loc 1 393 0 discriminator 1
 1261 0476 834B     		ldr	r3, .L60
 1262 0478 0022     		mov	r2, #0
 1263 047a 5A81     		strh	r2, [r3, #10]
 394:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 1264              		.loc 1 394 0 discriminator 1
 1265 047c 814B     		ldr	r3, .L60
 1266 047e 0022     		mov	r2, #0
 1267 0480 DA80     		strh	r2, [r3, #6]
 395:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 1268              		.loc 1 395 0 discriminator 1
 1269 0482 804B     		ldr	r3, .L60
 1270 0484 0022     		mov	r2, #0
 1271 0486 9A80     		strh	r2, [r3, #4]
 1272              	.L35:
 1273              	.LBE10:
 396:../Application/UsbManager/UsbManager.c **** 		}
 397:../Application/UsbManager/UsbManager.c **** 
 398:../Application/UsbManager/UsbManager.c **** 		/*-- Set serial --*/
 399:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_SET_SERIAL) {
 1274              		.loc 1 399 0
 1275 0488 7E4B     		ldr	r3, .L60
 1276 048a 9B7B     		ldrb	r3, [r3, #14]
 1277 048c 5BB2     		sxtb	r3, r3
 1278 048e 532B     		cmp	r3, #83
 1279 0490 50D1     		bne	.L40
 1280              	.LBB12:
 400:../Application/UsbManager/UsbManager.c **** 
 401:../Application/UsbManager/UsbManager.c **** 			unsigned char i;
 402:../Application/UsbManager/UsbManager.c **** 
 403:../Application/UsbManager/UsbManager.c **** 			for(i=0 ; i<MEMORYMANAGER_SERIAL_BLOCK_SIZE-1 ; i++) {
 1281              		.loc 1 403 0
 1282 0492 3B1C     		mov	r3, r7
 1283 0494 CE33     		add	r3, r3, #206
 1284 0496 0022     		mov	r2, #0
 1285 0498 1A70     		strb	r2, [r3]
 1286 049a 14E0     		b	.L41
 1287              	.L42:
 404:../Application/UsbManager/UsbManager.c **** 				*(((unsigned char*)&SerialParameters.serial) + i) = UsbCtrl.command[3+i];
 1288              		.loc 1 404 0 discriminator 2
 1289 049c 3B1C     		mov	r3, r7
 1290 049e CE33     		add	r3, r3, #206
 1291 04a0 1A78     		ldrb	r2, [r3]
 1292 04a2 7B4B     		ldr	r3, .L60+12
 1293 04a4 D318     		add	r3, r2, r3
 1294 04a6 3A1C     		mov	r2, r7
 1295 04a8 CE32     		add	r2, r2, #206
 1296 04aa 1278     		ldrb	r2, [r2]
 1297 04ac 0332     		add	r2, r2, #3
 1298 04ae 7549     		ldr	r1, .L60
 1299 04b0 8A18     		add	r2, r1, r2
 1300 04b2 127B     		ldrb	r2, [r2, #12]
 1301 04b4 D2B2     		uxtb	r2, r2
 1302 04b6 1A70     		strb	r2, [r3]
 403:../Application/UsbManager/UsbManager.c **** 			for(i=0 ; i<MEMORYMANAGER_SERIAL_BLOCK_SIZE-1 ; i++) {
 1303              		.loc 1 403 0 discriminator 2
 1304 04b8 3B1C     		mov	r3, r7
 1305 04ba CE33     		add	r3, r3, #206
 1306 04bc 1A78     		ldrb	r2, [r3]
 1307 04be 3B1C     		mov	r3, r7
 1308 04c0 CE33     		add	r3, r3, #206
 1309 04c2 0132     		add	r2, r2, #1
 1310 04c4 1A70     		strb	r2, [r3]
 1311              	.L41:
 403:../Application/UsbManager/UsbManager.c **** 			for(i=0 ; i<MEMORYMANAGER_SERIAL_BLOCK_SIZE-1 ; i++) {
 1312              		.loc 1 403 0 is_stmt 0 discriminator 1
 1313 04c6 3B1C     		mov	r3, r7
 1314 04c8 CE33     		add	r3, r3, #206
 1315 04ca 1B78     		ldrb	r3, [r3]
 1316 04cc 072B     		cmp	r3, #7
 1317 04ce E5D9     		bls	.L42
 405:../Application/UsbManager/UsbManager.c **** 			}
 406:../Application/UsbManager/UsbManager.c **** 
 407:../Application/UsbManager/UsbManager.c **** 			unsigned short result = MemoryManagerWriteSerial(&SerialParameters);
 1318              		.loc 1 407 0 is_stmt 1
 1319 04d0 6F4B     		ldr	r3, .L60+12
 1320 04d2 181C     		mov	r0, r3
 1321 04d4 FFF7FEFF 		bl	MemoryManagerWriteSerial
 1322 04d8 031C     		mov	r3, r0
 1323 04da 1A1C     		mov	r2, r3
 1324 04dc 3B1C     		mov	r3, r7
 1325 04de C033     		add	r3, r3, #192
 1326 04e0 1A80     		strh	r2, [r3]
 408:../Application/UsbManager/UsbManager.c **** 
 409:../Application/UsbManager/UsbManager.c **** 			char answer[3];
 410:../Application/UsbManager/UsbManager.c **** 
 411:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 1327              		.loc 1 411 0
 1328 04e2 3B1C     		mov	r3, r7
 1329 04e4 7C33     		add	r3, r3, #124
 1330 04e6 5222     		mov	r2, #82
 1331 04e8 1A70     		strb	r2, [r3]
 412:../Application/UsbManager/UsbManager.c **** 			answer[1] = 1;
 1332              		.loc 1 412 0
 1333 04ea 3B1C     		mov	r3, r7
 1334 04ec 7C33     		add	r3, r3, #124
 1335 04ee 0122     		mov	r2, #1
 1336 04f0 5A70     		strb	r2, [r3, #1]
 413:../Application/UsbManager/UsbManager.c **** 
 414:../Application/UsbManager/UsbManager.c **** 			if(result == 0) {
 1337              		.loc 1 414 0
 1338 04f2 3B1C     		mov	r3, r7
 1339 04f4 C033     		add	r3, r3, #192
 1340 04f6 1B88     		ldrh	r3, [r3]
 1341 04f8 002B     		cmp	r3, #0
 1342 04fa 04D1     		bne	.L43
 415:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_SET_SERIAL;
 1343              		.loc 1 415 0
 1344 04fc 3B1C     		mov	r3, r7
 1345 04fe 7C33     		add	r3, r3, #124
 1346 0500 5322     		mov	r2, #83
 1347 0502 9A70     		strb	r2, [r3, #2]
 1348 0504 03E0     		b	.L44
 1349              	.L43:
 416:../Application/UsbManager/UsbManager.c **** 			} else {
 417:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_ERROR;
 1350              		.loc 1 417 0
 1351 0506 3B1C     		mov	r3, r7
 1352 0508 7C33     		add	r3, r3, #124
 1353 050a FF22     		mov	r2, #255
 1354 050c 9A70     		strb	r2, [r3, #2]
 1355              	.L44:
 418:../Application/UsbManager/UsbManager.c **** 			}
 419:../Application/UsbManager/UsbManager.c **** 
 420:../Application/UsbManager/UsbManager.c **** 			UsbUartSendData(answer,3);
 1356              		.loc 1 420 0 discriminator 1
 1357 050e 3B1C     		mov	r3, r7
 1358 0510 7C33     		add	r3, r3, #124
 1359 0512 181C     		mov	r0, r3
 1360 0514 0321     		mov	r1, #3
 1361 0516 FFF7FEFF 		bl	Uart1SendData
 421:../Application/UsbManager/UsbManager.c **** 
 422:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 423:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 1362              		.loc 1 423 0 discriminator 1
 1363 051a 5A4A     		ldr	r2, .L60
 1364 051c 8C23     		mov	r3, #140
 1365 051e 0021     		mov	r1, #0
 1366 0520 D154     		strb	r1, [r2, r3]
 424:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 1367              		.loc 1 424 0 discriminator 1
 1368 0522 584B     		ldr	r3, .L60
 1369 0524 0022     		mov	r2, #0
 1370 0526 5A81     		strh	r2, [r3, #10]
 425:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 1371              		.loc 1 425 0 discriminator 1
 1372 0528 564B     		ldr	r3, .L60
 1373 052a 0022     		mov	r2, #0
 1374 052c DA80     		strh	r2, [r3, #6]
 426:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 1375              		.loc 1 426 0 discriminator 1
 1376 052e 554B     		ldr	r3, .L60
 1377 0530 0022     		mov	r2, #0
 1378 0532 9A80     		strh	r2, [r3, #4]
 1379              	.L40:
 1380              	.LBE12:
 427:../Application/UsbManager/UsbManager.c **** 		}
 428:../Application/UsbManager/UsbManager.c **** 
 429:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_CLEAR_MEM) {
 1381              		.loc 1 429 0
 1382 0534 534B     		ldr	r3, .L60
 1383 0536 9B7B     		ldrb	r3, [r3, #14]
 1384 0538 5BB2     		sxtb	r3, r3
 1385 053a 432B     		cmp	r3, #67
 1386 053c 2FD1     		bne	.L45
 1387              	.LBB13:
 430:../Application/UsbManager/UsbManager.c **** 
 431:../Application/UsbManager/UsbManager.c **** 			unsigned short result = MemoryManagerClearLog();
 1388              		.loc 1 431 0
 1389 053e FFF7FEFF 		bl	MemoryManagerClearLog
 1390 0542 031C     		mov	r3, r0
 1391 0544 1A1C     		mov	r2, r3
 1392 0546 3B1C     		mov	r3, r7
 1393 0548 BE33     		add	r3, r3, #190
 1394 054a 1A80     		strh	r2, [r3]
 432:../Application/UsbManager/UsbManager.c **** 
 433:../Application/UsbManager/UsbManager.c **** 			char answer[3];
 434:../Application/UsbManager/UsbManager.c **** 
 435:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 1395              		.loc 1 435 0
 1396 054c 3B1C     		mov	r3, r7
 1397 054e 7833     		add	r3, r3, #120
 1398 0550 5222     		mov	r2, #82
 1399 0552 1A70     		strb	r2, [r3]
 436:../Application/UsbManager/UsbManager.c **** 			answer[1] = 1;
 1400              		.loc 1 436 0
 1401 0554 3B1C     		mov	r3, r7
 1402 0556 7833     		add	r3, r3, #120
 1403 0558 0122     		mov	r2, #1
 1404 055a 5A70     		strb	r2, [r3, #1]
 437:../Application/UsbManager/UsbManager.c **** 
 438:../Application/UsbManager/UsbManager.c **** 			if(result == 0) {
 1405              		.loc 1 438 0
 1406 055c 3B1C     		mov	r3, r7
 1407 055e BE33     		add	r3, r3, #190
 1408 0560 1B88     		ldrh	r3, [r3]
 1409 0562 002B     		cmp	r3, #0
 1410 0564 04D1     		bne	.L46
 439:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_CLEAR_MEM;
 1411              		.loc 1 439 0
 1412 0566 3B1C     		mov	r3, r7
 1413 0568 7833     		add	r3, r3, #120
 1414 056a 4322     		mov	r2, #67
 1415 056c 9A70     		strb	r2, [r3, #2]
 1416 056e 03E0     		b	.L47
 1417              	.L46:
 440:../Application/UsbManager/UsbManager.c **** 			} else {
 441:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_ERROR;
 1418              		.loc 1 441 0
 1419 0570 3B1C     		mov	r3, r7
 1420 0572 7833     		add	r3, r3, #120
 1421 0574 FF22     		mov	r2, #255
 1422 0576 9A70     		strb	r2, [r3, #2]
 1423              	.L47:
 442:../Application/UsbManager/UsbManager.c **** 			}
 443:../Application/UsbManager/UsbManager.c **** 
 444:../Application/UsbManager/UsbManager.c **** 			UsbUartSendData(answer,3);
 1424              		.loc 1 444 0 discriminator 1
 1425 0578 3B1C     		mov	r3, r7
 1426 057a 7833     		add	r3, r3, #120
 1427 057c 181C     		mov	r0, r3
 1428 057e 0321     		mov	r1, #3
 1429 0580 FFF7FEFF 		bl	Uart1SendData
 445:../Application/UsbManager/UsbManager.c **** 
 446:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 447:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 1430              		.loc 1 447 0 discriminator 1
 1431 0584 3F4A     		ldr	r2, .L60
 1432 0586 8C23     		mov	r3, #140
 1433 0588 0021     		mov	r1, #0
 1434 058a D154     		strb	r1, [r2, r3]
 448:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 1435              		.loc 1 448 0 discriminator 1
 1436 058c 3D4B     		ldr	r3, .L60
 1437 058e 0022     		mov	r2, #0
 1438 0590 5A81     		strh	r2, [r3, #10]
 449:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 1439              		.loc 1 449 0 discriminator 1
 1440 0592 3C4B     		ldr	r3, .L60
 1441 0594 0022     		mov	r2, #0
 1442 0596 DA80     		strh	r2, [r3, #6]
 450:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 1443              		.loc 1 450 0 discriminator 1
 1444 0598 3A4B     		ldr	r3, .L60
 1445 059a 0022     		mov	r2, #0
 1446 059c 9A80     		strh	r2, [r3, #4]
 1447              	.L45:
 1448              	.LBE13:
 451:../Application/UsbManager/UsbManager.c **** 		}
 452:../Application/UsbManager/UsbManager.c **** 
 453:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_GET_NBRLOG) {
 1449              		.loc 1 453 0
 1450 059e 394B     		ldr	r3, .L60
 1451 05a0 9B7B     		ldrb	r3, [r3, #14]
 1452 05a2 5BB2     		sxtb	r3, r3
 1453 05a4 6E2B     		cmp	r3, #110
 1454 05a6 2BD1     		bne	.L48
 1455              	.LBB14:
 454:../Application/UsbManager/UsbManager.c **** 
 455:../Application/UsbManager/UsbManager.c **** 			char answer[5];
 456:../Application/UsbManager/UsbManager.c **** 
 457:../Application/UsbManager/UsbManager.c **** 			answer[0] = USB_CMD_REMOTE;
 1456              		.loc 1 457 0
 1457 05a8 3B1C     		mov	r3, r7
 1458 05aa 7033     		add	r3, r3, #112
 1459 05ac 5222     		mov	r2, #82
 1460 05ae 1A70     		strb	r2, [r3]
 458:../Application/UsbManager/UsbManager.c **** 			answer[1] = 3;
 1461              		.loc 1 458 0
 1462 05b0 3B1C     		mov	r3, r7
 1463 05b2 7033     		add	r3, r3, #112
 1464 05b4 0322     		mov	r2, #3
 1465 05b6 5A70     		strb	r2, [r3, #1]
 459:../Application/UsbManager/UsbManager.c **** 			answer[2] = USB_CMD_REMOTE_GET_NBRLOG;
 1466              		.loc 1 459 0
 1467 05b8 3B1C     		mov	r3, r7
 1468 05ba 7033     		add	r3, r3, #112
 1469 05bc 6E22     		mov	r2, #110
 1470 05be 9A70     		strb	r2, [r3, #2]
 460:../Application/UsbManager/UsbManager.c **** 			answer[3] = (unsigned char)((MemoryManagerCtrl.nbrLog >> 8) & 0x000000FF);
 1471              		.loc 1 460 0
 1472 05c0 324B     		ldr	r3, .L60+8
 1473 05c2 5B68     		ldr	r3, [r3, #4]
 1474 05c4 1B0A     		lsr	r3, r3, #8
 1475 05c6 DAB2     		uxtb	r2, r3
 1476 05c8 3B1C     		mov	r3, r7
 1477 05ca 7033     		add	r3, r3, #112
 1478 05cc DA70     		strb	r2, [r3, #3]
 461:../Application/UsbManager/UsbManager.c **** 			answer[4] = (unsigned char)((MemoryManagerCtrl.nbrLog >> 0) & 0x000000FF);
 1479              		.loc 1 461 0
 1480 05ce 2F4B     		ldr	r3, .L60+8
 1481 05d0 5B68     		ldr	r3, [r3, #4]
 1482 05d2 DAB2     		uxtb	r2, r3
 1483 05d4 3B1C     		mov	r3, r7
 1484 05d6 7033     		add	r3, r3, #112
 1485 05d8 1A71     		strb	r2, [r3, #4]
 462:../Application/UsbManager/UsbManager.c **** 
 463:../Application/UsbManager/UsbManager.c **** 			UsbUartSendData(answer,5);
 1486              		.loc 1 463 0
 1487 05da 3B1C     		mov	r3, r7
 1488 05dc 7033     		add	r3, r3, #112
 1489 05de 181C     		mov	r0, r3
 1490 05e0 0521     		mov	r1, #5
 1491 05e2 FFF7FEFF 		bl	Uart1SendData
 464:../Application/UsbManager/UsbManager.c **** 
 465:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 466:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 1492              		.loc 1 466 0
 1493 05e6 274A     		ldr	r2, .L60
 1494 05e8 8C23     		mov	r3, #140
 1495 05ea 0021     		mov	r1, #0
 1496 05ec D154     		strb	r1, [r2, r3]
 467:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 1497              		.loc 1 467 0
 1498 05ee 254B     		ldr	r3, .L60
 1499 05f0 0022     		mov	r2, #0
 1500 05f2 5A81     		strh	r2, [r3, #10]
 468:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 1501              		.loc 1 468 0
 1502 05f4 234B     		ldr	r3, .L60
 1503 05f6 0022     		mov	r2, #0
 1504 05f8 DA80     		strh	r2, [r3, #6]
 469:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 1505              		.loc 1 469 0
 1506 05fa 224B     		ldr	r3, .L60
 1507 05fc 0022     		mov	r2, #0
 1508 05fe 9A80     		strh	r2, [r3, #4]
 1509              	.L48:
 1510              	.LBE14:
 470:../Application/UsbManager/UsbManager.c **** 		}
 471:../Application/UsbManager/UsbManager.c **** 
 472:../Application/UsbManager/UsbManager.c **** 		if(UsbCtrl.command[2] == USB_CMD_REMOTE_GET_LOG) {
 1511              		.loc 1 472 0
 1512 0600 204B     		ldr	r3, .L60
 1513 0602 9B7B     		ldrb	r3, [r3, #14]
 1514 0604 5BB2     		sxtb	r3, r3
 1515 0606 6C2B     		cmp	r3, #108
 1516 0608 00D0     		beq	.LCB1295
 1517 060a 0EE1     		b	.L22	@long jump
 1518              	.LCB1295:
 1519              	.LBB15:
 473:../Application/UsbManager/UsbManager.c **** 
 474:../Application/UsbManager/UsbManager.c **** 			unsigned short logId = ((unsigned short)UsbCtrl.command[3] << 8) | (unsigned short)UsbCtrl.comma
 1520              		.loc 1 474 0
 1521 060c 1D4B     		ldr	r3, .L60
 1522 060e DB7B     		ldrb	r3, [r3, #15]
 1523 0610 5BB2     		sxtb	r3, r3
 1524 0612 9BB2     		uxth	r3, r3
 1525 0614 1B02     		lsl	r3, r3, #8
 1526 0616 9AB2     		uxth	r2, r3
 1527 0618 1A4B     		ldr	r3, .L60
 1528 061a 1B7C     		ldrb	r3, [r3, #16]
 1529 061c 5BB2     		sxtb	r3, r3
 1530 061e 9BB2     		uxth	r3, r3
 1531 0620 1343     		orr	r3, r2
 1532 0622 9AB2     		uxth	r2, r3
 1533 0624 3B1C     		mov	r3, r7
 1534 0626 BC33     		add	r3, r3, #188
 1535 0628 1A80     		strh	r2, [r3]
 475:../Application/UsbManager/UsbManager.c **** 
 476:../Application/UsbManager/UsbManager.c **** 			/*-- Send log --*/
 477:../Application/UsbManager/UsbManager.c **** 			if(logId < MemoryManagerCtrl.nbrLog) {
 1536              		.loc 1 477 0
 1537 062a 3B1C     		mov	r3, r7
 1538 062c BC33     		add	r3, r3, #188
 1539 062e 1A88     		ldrh	r2, [r3]
 1540 0630 164B     		ldr	r3, .L60+8
 1541 0632 5B68     		ldr	r3, [r3, #4]
 1542 0634 9A42     		cmp	r2, r3
 1543 0636 00D3     		bcc	.LCB1318
 1544 0638 7BE0     		b	.L50	@long jump
 1545              	.LCB1318:
 1546              	.LBB16:
 478:../Application/UsbManager/UsbManager.c **** 
 479:../Application/UsbManager/UsbManager.c **** 				tMemoryManagerLog log;
 480:../Application/UsbManager/UsbManager.c **** 				signed short result;
 481:../Application/UsbManager/UsbManager.c **** 
 482:../Application/UsbManager/UsbManager.c **** 				result = MemoryManagerReadLog(logId,&log);
 1547              		.loc 1 482 0
 1548 063a 3C1C     		mov	r4, r7
 1549 063c BA34     		add	r4, r4, #186
 1550 063e 3B1C     		mov	r3, r7
 1551 0640 BC33     		add	r3, r3, #188
 1552 0642 1A88     		ldrh	r2, [r3]
 1553 0644 3B1C     		mov	r3, r7
 1554 0646 101C     		mov	r0, r2
 1555 0648 191C     		mov	r1, r3
 1556 064a FFF7FEFF 		bl	MemoryManagerReadLog
 1557 064e 031C     		mov	r3, r0
 1558 0650 2380     		strh	r3, [r4]
 483:../Application/UsbManager/UsbManager.c **** 
 484:../Application/UsbManager/UsbManager.c **** 				if(result == -1) {
 1559              		.loc 1 484 0
 1560 0652 3B1C     		mov	r3, r7
 1561 0654 BA33     		add	r3, r3, #186
 1562 0656 0022     		mov	r2, #0
 1563 0658 9B5E     		ldrsh	r3, [r3, r2]
 1564 065a 0133     		add	r3, r3, #1
 1565 065c 1AD1     		bne	.L51
 1566              	.LBB17:
 485:../Application/UsbManager/UsbManager.c **** 					char answer[11];
 486:../Application/UsbManager/UsbManager.c **** 					answer[0] = USB_CMD_REMOTE;
 1567              		.loc 1 486 0
 1568 065e 3B1C     		mov	r3, r7
 1569 0660 6433     		add	r3, r3, #100
 1570 0662 5222     		mov	r2, #82
 1571 0664 1A70     		strb	r2, [r3]
 487:../Application/UsbManager/UsbManager.c **** 					answer[1] = 1;
 1572              		.loc 1 487 0
 1573 0666 3B1C     		mov	r3, r7
 1574 0668 6433     		add	r3, r3, #100
 1575 066a 0122     		mov	r2, #1
 1576 066c 5A70     		strb	r2, [r3, #1]
 488:../Application/UsbManager/UsbManager.c **** 					answer[2] = USB_CMD_REMOTE_ERROR;
 1577              		.loc 1 488 0
 1578 066e 3B1C     		mov	r3, r7
 1579 0670 6433     		add	r3, r3, #100
 1580 0672 FF22     		mov	r2, #255
 1581 0674 9A70     		strb	r2, [r3, #2]
 489:../Application/UsbManager/UsbManager.c **** 					UsbUartSendData(answer,3);
 1582              		.loc 1 489 0
 1583 0676 3B1C     		mov	r3, r7
 1584 0678 6433     		add	r3, r3, #100
 1585 067a 181C     		mov	r0, r3
 1586 067c 0321     		mov	r1, #3
 1587 067e FFF7FEFF 		bl	Uart1SendData
 1588              	.LBE17:
 1589 0682 68E0     		b	.L53
 1590              	.L61:
 1591              		.align	2
 1592              	.L60:
 1593 0684 00000000 		.word	UsbCtrl
 1594 0688 00000000 		.word	DivingParameters
 1595 068c 00000000 		.word	MemoryManagerCtrl
 1596 0690 00000000 		.word	SerialParameters
 1597              	.L51:
 1598              	.LBB18:
 490:../Application/UsbManager/UsbManager.c **** 				} else {
 491:../Application/UsbManager/UsbManager.c **** 					char answer[11];
 492:../Application/UsbManager/UsbManager.c **** 					answer[0] = USB_CMD_REMOTE;
 1599              		.loc 1 492 0
 1600 0694 3B1C     		mov	r3, r7
 1601 0696 5833     		add	r3, r3, #88
 1602 0698 5222     		mov	r2, #82
 1603 069a 1A70     		strb	r2, [r3]
 493:../Application/UsbManager/UsbManager.c **** 					answer[1] = MEMORYMANAGER_LOG_SIZE + 1;
 1604              		.loc 1 493 0
 1605 069c 3B1C     		mov	r3, r7
 1606 069e 5833     		add	r3, r3, #88
 1607 06a0 4922     		mov	r2, #73
 1608 06a2 5A70     		strb	r2, [r3, #1]
 494:../Application/UsbManager/UsbManager.c **** 					answer[2] = USB_CMD_REMOTE_GET_LOG;
 1609              		.loc 1 494 0
 1610 06a4 3B1C     		mov	r3, r7
 1611 06a6 5833     		add	r3, r3, #88
 1612 06a8 6C22     		mov	r2, #108
 1613 06aa 9A70     		strb	r2, [r3, #2]
 495:../Application/UsbManager/UsbManager.c **** 
 496:../Application/UsbManager/UsbManager.c **** 					answer[3] = (char)((log.date>>24) & 0xFF);
 1614              		.loc 1 496 0
 1615 06ac 3B1C     		mov	r3, r7
 1616 06ae 1B68     		ldr	r3, [r3]
 1617 06b0 1B0E     		lsr	r3, r3, #24
 1618 06b2 DAB2     		uxtb	r2, r3
 1619 06b4 3B1C     		mov	r3, r7
 1620 06b6 5833     		add	r3, r3, #88
 1621 06b8 DA70     		strb	r2, [r3, #3]
 497:../Application/UsbManager/UsbManager.c **** 					answer[4] = (char)((log.date>>16) & 0xFF);
 1622              		.loc 1 497 0
 1623 06ba 3B1C     		mov	r3, r7
 1624 06bc 1B68     		ldr	r3, [r3]
 1625 06be 1B0C     		lsr	r3, r3, #16
 1626 06c0 DAB2     		uxtb	r2, r3
 1627 06c2 3B1C     		mov	r3, r7
 1628 06c4 5833     		add	r3, r3, #88
 1629 06c6 1A71     		strb	r2, [r3, #4]
 498:../Application/UsbManager/UsbManager.c **** 					answer[5] = (char)((log.date>>8) & 0xFF);
 1630              		.loc 1 498 0
 1631 06c8 3B1C     		mov	r3, r7
 1632 06ca 1B68     		ldr	r3, [r3]
 1633 06cc 1B0A     		lsr	r3, r3, #8
 1634 06ce DAB2     		uxtb	r2, r3
 1635 06d0 3B1C     		mov	r3, r7
 1636 06d2 5833     		add	r3, r3, #88
 1637 06d4 5A71     		strb	r2, [r3, #5]
 499:../Application/UsbManager/UsbManager.c **** 					answer[6] = (char)((log.date>>0) & 0xFF);
 1638              		.loc 1 499 0
 1639 06d6 3B1C     		mov	r3, r7
 1640 06d8 1B68     		ldr	r3, [r3]
 1641 06da DAB2     		uxtb	r2, r3
 1642 06dc 3B1C     		mov	r3, r7
 1643 06de 5833     		add	r3, r3, #88
 1644 06e0 9A71     		strb	r2, [r3, #6]
 500:../Application/UsbManager/UsbManager.c **** 
 501:../Application/UsbManager/UsbManager.c **** 					answer[7] = (char)((log.logOp>>24) & 0xFF);
 1645              		.loc 1 501 0
 1646 06e2 3B1C     		mov	r3, r7
 1647 06e4 5B68     		ldr	r3, [r3, #4]
 1648 06e6 1B0E     		lsr	r3, r3, #24
 1649 06e8 DAB2     		uxtb	r2, r3
 1650 06ea 3B1C     		mov	r3, r7
 1651 06ec 5833     		add	r3, r3, #88
 1652 06ee DA71     		strb	r2, [r3, #7]
 502:../Application/UsbManager/UsbManager.c **** 					answer[8] = (char)((log.logOp>>16) & 0xFF);
 1653              		.loc 1 502 0
 1654 06f0 3B1C     		mov	r3, r7
 1655 06f2 5B68     		ldr	r3, [r3, #4]
 1656 06f4 1B0C     		lsr	r3, r3, #16
 1657 06f6 DAB2     		uxtb	r2, r3
 1658 06f8 3B1C     		mov	r3, r7
 1659 06fa 5833     		add	r3, r3, #88
 1660 06fc 1A72     		strb	r2, [r3, #8]
 503:../Application/UsbManager/UsbManager.c **** 					answer[9] = (char)((log.logOp>>8) & 0xFF);
 1661              		.loc 1 503 0
 1662 06fe 3B1C     		mov	r3, r7
 1663 0700 5B68     		ldr	r3, [r3, #4]
 1664 0702 1B0A     		lsr	r3, r3, #8
 1665 0704 DAB2     		uxtb	r2, r3
 1666 0706 3B1C     		mov	r3, r7
 1667 0708 5833     		add	r3, r3, #88
 1668 070a 5A72     		strb	r2, [r3, #9]
 504:../Application/UsbManager/UsbManager.c **** 					answer[10] = (char)((log.logOp>>0) & 0xFF);
 1669              		.loc 1 504 0
 1670 070c 3B1C     		mov	r3, r7
 1671 070e 5B68     		ldr	r3, [r3, #4]
 1672 0710 DAB2     		uxtb	r2, r3
 1673 0712 3B1C     		mov	r3, r7
 1674 0714 5833     		add	r3, r3, #88
 1675 0716 9A72     		strb	r2, [r3, #10]
 505:../Application/UsbManager/UsbManager.c **** 
 506:../Application/UsbManager/UsbManager.c **** 					UsbUartSendData(answer,11);
 1676              		.loc 1 506 0
 1677 0718 3B1C     		mov	r3, r7
 1678 071a 5833     		add	r3, r3, #88
 1679 071c 181C     		mov	r0, r3
 1680 071e 0B21     		mov	r1, #11
 1681 0720 FFF7FEFF 		bl	Uart1SendData
 507:../Application/UsbManager/UsbManager.c **** 					UsbUartSendData((char*)&(log.srdData),SRD_MEMORY_NBR_BYTE);
 1682              		.loc 1 507 0
 1683 0724 3B1C     		mov	r3, r7
 1684 0726 0833     		add	r3, r3, #8
 1685 0728 181C     		mov	r0, r3
 1686 072a 4021     		mov	r1, #64
 1687 072c FFF7FEFF 		bl	Uart1SendData
 1688              	.LBE18:
 1689              	.LBE16:
 1690 0730 11E0     		b	.L53
 1691              	.L50:
 1692              	.LBB19:
 508:../Application/UsbManager/UsbManager.c **** 				}
 509:../Application/UsbManager/UsbManager.c **** 
 510:../Application/UsbManager/UsbManager.c **** 			/*-- Error --*/
 511:../Application/UsbManager/UsbManager.c **** 			} else {
 512:../Application/UsbManager/UsbManager.c **** 				char answer[3];
 513:../Application/UsbManager/UsbManager.c **** 				answer[0] = USB_CMD_REMOTE;
 1693              		.loc 1 513 0
 1694 0732 3B1C     		mov	r3, r7
 1695 0734 5433     		add	r3, r3, #84
 1696 0736 5222     		mov	r2, #82
 1697 0738 1A70     		strb	r2, [r3]
 514:../Application/UsbManager/UsbManager.c **** 				answer[1] = 1;
 1698              		.loc 1 514 0
 1699 073a 3B1C     		mov	r3, r7
 1700 073c 5433     		add	r3, r3, #84
 1701 073e 0122     		mov	r2, #1
 1702 0740 5A70     		strb	r2, [r3, #1]
 515:../Application/UsbManager/UsbManager.c **** 				answer[2] = USB_CMD_REMOTE_ERROR;
 1703              		.loc 1 515 0
 1704 0742 3B1C     		mov	r3, r7
 1705 0744 5433     		add	r3, r3, #84
 1706 0746 FF22     		mov	r2, #255
 1707 0748 9A70     		strb	r2, [r3, #2]
 516:../Application/UsbManager/UsbManager.c **** 				UsbUartSendData(answer,3);
 1708              		.loc 1 516 0
 1709 074a 3B1C     		mov	r3, r7
 1710 074c 5433     		add	r3, r3, #84
 1711 074e 181C     		mov	r0, r3
 1712 0750 0321     		mov	r1, #3
 1713 0752 FFF7FEFF 		bl	Uart1SendData
 1714              	.L53:
 1715              	.LBE19:
 517:../Application/UsbManager/UsbManager.c **** 			}
 518:../Application/UsbManager/UsbManager.c **** 
 519:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 520:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 1716              		.loc 1 520 0
 1717 0756 364A     		ldr	r2, .L62
 1718 0758 8C23     		mov	r3, #140
 1719 075a 0021     		mov	r1, #0
 1720 075c D154     		strb	r1, [r2, r3]
 521:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 1721              		.loc 1 521 0
 1722 075e 344B     		ldr	r3, .L62
 1723 0760 0022     		mov	r2, #0
 1724 0762 5A81     		strh	r2, [r3, #10]
 522:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 1725              		.loc 1 522 0
 1726 0764 324B     		ldr	r3, .L62
 1727 0766 0022     		mov	r2, #0
 1728 0768 DA80     		strh	r2, [r3, #6]
 523:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 1729              		.loc 1 523 0
 1730 076a 314B     		ldr	r3, .L62
 1731 076c 0022     		mov	r2, #0
 1732 076e 9A80     		strh	r2, [r3, #4]
 1733 0770 5BE0     		b	.L22
 1734              	.L23:
 1735              	.LBE15:
 524:../Application/UsbManager/UsbManager.c **** 		}
 525:../Application/UsbManager/UsbManager.c **** 
 526:../Application/UsbManager/UsbManager.c **** 
 527:../Application/UsbManager/UsbManager.c **** 	/*=== Protocole command ===*/
 528:../Application/UsbManager/UsbManager.c **** 	} else if (UsbCtrl.cmdType == USB_CMD_PROTOCOLE) {
 1736              		.loc 1 528 0
 1737 0772 2F4B     		ldr	r3, .L62
 1738 0774 1B7A     		ldrb	r3, [r3, #8]
 1739 0776 022B     		cmp	r3, #2
 1740 0778 1BD1     		bne	.L55
 1741              	.LBB20:
 529:../Application/UsbManager/UsbManager.c **** 
 530:../Application/UsbManager/UsbManager.c **** 		char answer[2];
 531:../Application/UsbManager/UsbManager.c **** 
 532:../Application/UsbManager/UsbManager.c **** 		answer[0] = 0;
 1742              		.loc 1 532 0
 1743 077a 3B1C     		mov	r3, r7
 1744 077c 5033     		add	r3, r3, #80
 1745 077e 0022     		mov	r2, #0
 1746 0780 1A70     		strb	r2, [r3]
 533:../Application/UsbManager/UsbManager.c **** 		answer[1] = 0;
 1747              		.loc 1 533 0
 1748 0782 3B1C     		mov	r3, r7
 1749 0784 5033     		add	r3, r3, #80
 1750 0786 0022     		mov	r2, #0
 1751 0788 5A70     		strb	r2, [r3, #1]
 534:../Application/UsbManager/UsbManager.c **** 		UsbUartSendData(answer,2);
 1752              		.loc 1 534 0
 1753 078a 3B1C     		mov	r3, r7
 1754 078c 5033     		add	r3, r3, #80
 1755 078e 181C     		mov	r0, r3
 1756 0790 0221     		mov	r1, #2
 1757 0792 FFF7FEFF 		bl	Uart1SendData
 535:../Application/UsbManager/UsbManager.c **** 
 536:../Application/UsbManager/UsbManager.c **** 		//Acknowledge command
 537:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.commandId = 0;
 1758              		.loc 1 537 0
 1759 0796 264A     		ldr	r2, .L62
 1760 0798 8C23     		mov	r3, #140
 1761 079a 0021     		mov	r1, #0
 1762 079c D154     		strb	r1, [r2, r3]
 538:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.rxState.all = 0;
 1763              		.loc 1 538 0
 1764 079e 244B     		ldr	r3, .L62
 1765 07a0 0022     		mov	r2, #0
 1766 07a2 5A81     		strh	r2, [r3, #10]
 539:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSize = 0;
 1767              		.loc 1 539 0
 1768 07a4 224B     		ldr	r3, .L62
 1769 07a6 0022     		mov	r2, #0
 1770 07a8 DA80     		strh	r2, [r3, #6]
 540:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSizeRequested = 0;
 1771              		.loc 1 540 0
 1772 07aa 214B     		ldr	r3, .L62
 1773 07ac 0022     		mov	r2, #0
 1774 07ae 9A80     		strh	r2, [r3, #4]
 1775              	.LBE20:
 1776 07b0 3BE0     		b	.L22
 1777              	.L55:
 541:../Application/UsbManager/UsbManager.c **** 
 542:../Application/UsbManager/UsbManager.c **** 	/*=== Read / Write operation ====*/
 543:../Application/UsbManager/UsbManager.c **** 	} else if (UsbCtrl.cmdType == USB_CMD_RW) {
 1778              		.loc 1 543 0
 1779 07b2 1F4B     		ldr	r3, .L62
 1780 07b4 1B7A     		ldrb	r3, [r3, #8]
 1781 07b6 042B     		cmp	r3, #4
 1782 07b8 0ED1     		bne	.L56
 1783              	.LBB21:
 544:../Application/UsbManager/UsbManager.c **** 
 545:../Application/UsbManager/UsbManager.c **** 		unsigned short result = RFIDManagerSendBridgeCommand(UsbCtrl.command, UsbCtrl.cmdSize + 2);
 1784              		.loc 1 545 0
 1785 07ba 1D4B     		ldr	r3, .L62
 1786 07bc DB88     		ldrh	r3, [r3, #6]
 1787 07be 0233     		add	r3, r3, #2
 1788 07c0 9BB2     		uxth	r3, r3
 1789 07c2 1C4A     		ldr	r2, .L62+4
 1790 07c4 101C     		mov	r0, r2
 1791 07c6 191C     		mov	r1, r3
 1792 07c8 FFF7FEFF 		bl	RFIDManagerSendBridgeCommand
 1793 07cc 031C     		mov	r3, r0
 1794 07ce 1A1C     		mov	r2, r3
 1795 07d0 3B1C     		mov	r3, r7
 1796 07d2 B833     		add	r3, r3, #184
 1797 07d4 1A80     		strh	r2, [r3]
 1798 07d6 28E0     		b	.L22
 1799              	.L56:
 1800              	.LBE21:
 546:../Application/UsbManager/UsbManager.c **** 
 547:../Application/UsbManager/UsbManager.c **** 		if(result == -1) {	//Error
 548:../Application/UsbManager/UsbManager.c **** 
 549:../Application/UsbManager/UsbManager.c **** 			char answer[2];
 550:../Application/UsbManager/UsbManager.c **** 
 551:../Application/UsbManager/UsbManager.c **** 			answer[0] = 0x87;
 552:../Application/UsbManager/UsbManager.c **** 			answer[1] = 0x00;
 553:../Application/UsbManager/UsbManager.c **** 			UsbUartSendData(answer,2);
 554:../Application/UsbManager/UsbManager.c **** 
 555:../Application/UsbManager/UsbManager.c **** 			//Acknowledge command
 556:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.commandId = 0;
 557:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.rxState.all = 0;
 558:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSize = 0;
 559:../Application/UsbManager/UsbManager.c **** 			UsbCtrl.cmdSizeRequested = 0;
 560:../Application/UsbManager/UsbManager.c **** 
 561:../Application/UsbManager/UsbManager.c **** 		} else {
 562:../Application/UsbManager/UsbManager.c **** 			//Wait for completion -> This is RFIDManager which trig the end of this job
 563:../Application/UsbManager/UsbManager.c **** 		}
 564:../Application/UsbManager/UsbManager.c **** 
 565:../Application/UsbManager/UsbManager.c **** 	/*=== RFID ECHO command ===*/
 566:../Application/UsbManager/UsbManager.c **** 	} else if (UsbCtrl.cmdType == USB_CMD_RFIDECHO) {
 1801              		.loc 1 566 0
 1802 07d8 154B     		ldr	r3, .L62
 1803 07da 1B7A     		ldrb	r3, [r3, #8]
 1804 07dc 552B     		cmp	r3, #85
 1805 07de 17D1     		bne	.L57
 1806              	.LBB22:
 567:../Application/UsbManager/UsbManager.c **** 
 568:../Application/UsbManager/UsbManager.c **** 		char answer[1];
 569:../Application/UsbManager/UsbManager.c **** 
 570:../Application/UsbManager/UsbManager.c **** 		answer[0] = 0x55;
 1807              		.loc 1 570 0
 1808 07e0 3B1C     		mov	r3, r7
 1809 07e2 4833     		add	r3, r3, #72
 1810 07e4 5522     		mov	r2, #85
 1811 07e6 1A70     		strb	r2, [r3]
 571:../Application/UsbManager/UsbManager.c **** 		UsbUartSendData(answer,1);
 1812              		.loc 1 571 0
 1813 07e8 3B1C     		mov	r3, r7
 1814 07ea 4833     		add	r3, r3, #72
 1815 07ec 181C     		mov	r0, r3
 1816 07ee 0121     		mov	r1, #1
 1817 07f0 FFF7FEFF 		bl	Uart1SendData
 572:../Application/UsbManager/UsbManager.c **** 
 573:../Application/UsbManager/UsbManager.c **** 		//Acknowledge command
 574:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.commandId = 0;
 1818              		.loc 1 574 0
 1819 07f4 0E4A     		ldr	r2, .L62
 1820 07f6 8C23     		mov	r3, #140
 1821 07f8 0021     		mov	r1, #0
 1822 07fa D154     		strb	r1, [r2, r3]
 575:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.rxState.all = 0;
 1823              		.loc 1 575 0
 1824 07fc 0C4B     		ldr	r3, .L62
 1825 07fe 0022     		mov	r2, #0
 1826 0800 5A81     		strh	r2, [r3, #10]
 576:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSize = 0;
 1827              		.loc 1 576 0
 1828 0802 0B4B     		ldr	r3, .L62
 1829 0804 0022     		mov	r2, #0
 1830 0806 DA80     		strh	r2, [r3, #6]
 577:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSizeRequested = 0;
 1831              		.loc 1 577 0
 1832 0808 094B     		ldr	r3, .L62
 1833 080a 0022     		mov	r2, #0
 1834 080c 9A80     		strh	r2, [r3, #4]
 1835              	.LBE22:
 1836 080e 0CE0     		b	.L22
 1837              	.L57:
 578:../Application/UsbManager/UsbManager.c **** 
 579:../Application/UsbManager/UsbManager.c **** 	} else {
 580:../Application/UsbManager/UsbManager.c **** 		//This is an error
 581:../Application/UsbManager/UsbManager.c **** 		//Acknowledge command
 582:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.commandId = 0;
 1838              		.loc 1 582 0
 1839 0810 074A     		ldr	r2, .L62
 1840 0812 8C23     		mov	r3, #140
 1841 0814 0021     		mov	r1, #0
 1842 0816 D154     		strb	r1, [r2, r3]
 583:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.rxState.all = 0;
 1843              		.loc 1 583 0
 1844 0818 054B     		ldr	r3, .L62
 1845 081a 0022     		mov	r2, #0
 1846 081c 5A81     		strh	r2, [r3, #10]
 584:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSize = 0;
 1847              		.loc 1 584 0
 1848 081e 044B     		ldr	r3, .L62
 1849 0820 0022     		mov	r2, #0
 1850 0822 DA80     		strh	r2, [r3, #6]
 585:../Application/UsbManager/UsbManager.c **** 		UsbCtrl.cmdSizeRequested = 0;
 1851              		.loc 1 585 0
 1852 0824 024B     		ldr	r3, .L62
 1853 0826 0022     		mov	r2, #0
 1854 0828 9A80     		strh	r2, [r3, #4]
 1855              	.L22:
 586:../Application/UsbManager/UsbManager.c **** 	}
 587:../Application/UsbManager/UsbManager.c **** 
 588:../Application/UsbManager/UsbManager.c **** }
 1856              		.loc 1 588 0
 1857 082a BD46     		mov	sp, r7
 1858 082c 35B0     		add	sp, sp, #212
 1859              		@ sp needed
 1860 082e 90BD     		pop	{r4, r7, pc}
 1861              	.L63:
 1862              		.align	2
 1863              	.L62:
 1864 0830 00000000 		.word	UsbCtrl
 1865 0834 0C000000 		.word	UsbCtrl+12
 1866              		.cfi_endproc
 1867              	.LFE35:
 1869              		.section	.text.UsbManagerSendCR95Error,"ax",%progbits
 1870              		.align	2
 1871              		.global	UsbManagerSendCR95Error
 1872              		.code	16
 1873              		.thumb_func
 1875              	UsbManagerSendCR95Error:
 1876              	.LFB36:
 589:../Application/UsbManager/UsbManager.c **** 
 590:../Application/UsbManager/UsbManager.c **** void UsbManagerSendCR95Error (void) {
 1877              		.loc 1 590 0
 1878              		.cfi_startproc
 1879 0000 80B5     		push	{r7, lr}
 1880              		.cfi_def_cfa_offset 8
 1881              		.cfi_offset 7, -8
 1882              		.cfi_offset 14, -4
 1883 0002 82B0     		sub	sp, sp, #8
 1884              		.cfi_def_cfa_offset 16
 1885 0004 00AF     		add	r7, sp, #0
 1886              		.cfi_def_cfa_register 7
 591:../Application/UsbManager/UsbManager.c **** 	char answer[2];
 592:../Application/UsbManager/UsbManager.c **** 
 593:../Application/UsbManager/UsbManager.c **** 	answer[0] = 0x87;
 1887              		.loc 1 593 0
 1888 0006 3B1D     		add	r3, r7, #4
 1889 0008 8722     		mov	r2, #135
 1890 000a 1A70     		strb	r2, [r3]
 594:../Application/UsbManager/UsbManager.c **** 	answer[1] = 0x00;
 1891              		.loc 1 594 0
 1892 000c 3B1D     		add	r3, r7, #4
 1893 000e 0022     		mov	r2, #0
 1894 0010 5A70     		strb	r2, [r3, #1]
 595:../Application/UsbManager/UsbManager.c **** 	UsbUartSendData(answer,2);
 1895              		.loc 1 595 0
 1896 0012 3B1D     		add	r3, r7, #4
 1897 0014 181C     		mov	r0, r3
 1898 0016 0221     		mov	r1, #2
 1899 0018 FFF7FEFF 		bl	Uart1SendData
 596:../Application/UsbManager/UsbManager.c **** 
 597:../Application/UsbManager/UsbManager.c **** 	//Acknowledge command
 598:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.commandId = 0;
 1900              		.loc 1 598 0
 1901 001c 074A     		ldr	r2, .L65
 1902 001e 8C23     		mov	r3, #140
 1903 0020 0021     		mov	r1, #0
 1904 0022 D154     		strb	r1, [r2, r3]
 599:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.rxState.all = 0;
 1905              		.loc 1 599 0
 1906 0024 054B     		ldr	r3, .L65
 1907 0026 0022     		mov	r2, #0
 1908 0028 5A81     		strh	r2, [r3, #10]
 600:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.cmdSize = 0;
 1909              		.loc 1 600 0
 1910 002a 044B     		ldr	r3, .L65
 1911 002c 0022     		mov	r2, #0
 1912 002e DA80     		strh	r2, [r3, #6]
 601:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.cmdSizeRequested = 0;
 1913              		.loc 1 601 0
 1914 0030 024B     		ldr	r3, .L65
 1915 0032 0022     		mov	r2, #0
 1916 0034 9A80     		strh	r2, [r3, #4]
 602:../Application/UsbManager/UsbManager.c **** }
 1917              		.loc 1 602 0
 1918 0036 BD46     		mov	sp, r7
 1919 0038 02B0     		add	sp, sp, #8
 1920              		@ sp needed
 1921 003a 80BD     		pop	{r7, pc}
 1922              	.L66:
 1923              		.align	2
 1924              	.L65:
 1925 003c 00000000 		.word	UsbCtrl
 1926              		.cfi_endproc
 1927              	.LFE36:
 1929              		.section	.text.UsbManagerSendCR95Result,"ax",%progbits
 1930              		.align	2
 1931              		.global	UsbManagerSendCR95Result
 1932              		.code	16
 1933              		.thumb_func
 1935              	UsbManagerSendCR95Result:
 1936              	.LFB37:
 603:../Application/UsbManager/UsbManager.c **** 
 604:../Application/UsbManager/UsbManager.c **** void UsbManagerSendCR95Result (char* result, unsigned short length) {
 1937              		.loc 1 604 0
 1938              		.cfi_startproc
 1939 0000 80B5     		push	{r7, lr}
 1940              		.cfi_def_cfa_offset 8
 1941              		.cfi_offset 7, -8
 1942              		.cfi_offset 14, -4
 1943 0002 82B0     		sub	sp, sp, #8
 1944              		.cfi_def_cfa_offset 16
 1945 0004 00AF     		add	r7, sp, #0
 1946              		.cfi_def_cfa_register 7
 1947 0006 7860     		str	r0, [r7, #4]
 1948 0008 0A1C     		mov	r2, r1
 1949 000a BB1C     		add	r3, r7, #2
 1950 000c 1A80     		strh	r2, [r3]
 605:../Application/UsbManager/UsbManager.c **** 
 606:../Application/UsbManager/UsbManager.c **** 	UsbUartSendData(result,length);
 1951              		.loc 1 606 0
 1952 000e 7A68     		ldr	r2, [r7, #4]
 1953 0010 BB1C     		add	r3, r7, #2
 1954 0012 1B88     		ldrh	r3, [r3]
 1955 0014 101C     		mov	r0, r2
 1956 0016 191C     		mov	r1, r3
 1957 0018 FFF7FEFF 		bl	Uart1SendData
 607:../Application/UsbManager/UsbManager.c **** 
 608:../Application/UsbManager/UsbManager.c **** 	//Acknowledge command
 609:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.commandId = 0;
 1958              		.loc 1 609 0
 1959 001c 074A     		ldr	r2, .L68
 1960 001e 8C23     		mov	r3, #140
 1961 0020 0021     		mov	r1, #0
 1962 0022 D154     		strb	r1, [r2, r3]
 610:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.rxState.all = 0;
 1963              		.loc 1 610 0
 1964 0024 054B     		ldr	r3, .L68
 1965 0026 0022     		mov	r2, #0
 1966 0028 5A81     		strh	r2, [r3, #10]
 611:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.cmdSize = 0;
 1967              		.loc 1 611 0
 1968 002a 044B     		ldr	r3, .L68
 1969 002c 0022     		mov	r2, #0
 1970 002e DA80     		strh	r2, [r3, #6]
 612:../Application/UsbManager/UsbManager.c **** 	UsbCtrl.cmdSizeRequested = 0;
 1971              		.loc 1 612 0
 1972 0030 024B     		ldr	r3, .L68
 1973 0032 0022     		mov	r2, #0
 1974 0034 9A80     		strh	r2, [r3, #4]
 613:../Application/UsbManager/UsbManager.c **** }
 1975              		.loc 1 613 0
 1976 0036 BD46     		mov	sp, r7
 1977 0038 02B0     		add	sp, sp, #8
 1978              		@ sp needed
 1979 003a 80BD     		pop	{r7, pc}
 1980              	.L69:
 1981              		.align	2
 1982              	.L68:
 1983 003c 00000000 		.word	UsbCtrl
 1984              		.cfi_endproc
 1985              	.LFE37:
 1987              		.text
 1988              	.Letext0:
 1989              		.file 2 "../DSP/Processor/MKL16Z4.h"
 1990              		.file 3 "e:\\logiciels\\freescale\\kinetis design studio v2.0.0\\toolchain\\arm-none-eabi\\include
 1991              		.file 4 "../DSP/UART/uart_common.h"
 1992              		.file 5 "../BSP/BatteryManagement/BQ27510DRZRG2.h"
 1993              		.file 6 "../Application/SRD/SRDMemorymapping.h"
 1994              		.file 7 "../Application/MemoryManager/MemoryManager.h"
 1995              		.file 8 "../Application/UsbManager/UsbManager.h"
 1996              		.file 9 "../DSP/UART/Uart1.h"
DEFINED SYMBOLS
                            *ABS*:00000000 UsbManager.c
                            *COM*:00000090 UsbCtrl
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:19     .text.UsbManagerInit:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:24     .text.UsbManagerInit:00000000 UsbManagerInit
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:77     .text.UsbManagerInit:00000044 $d
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:83     .text.UsbManager:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:88     .text.UsbManager:00000000 UsbManager
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:550    .text.UsbManagerCmdDealer:00000000 UsbManagerCmdDealer
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:531    .text.UsbManager:000002bc $d
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:538    .rodata:00000000 $d
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:545    .text.UsbManagerCmdDealer:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1058   .text.UsbManagerCmdDealer:0000032c $d
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1065   .text.UsbManagerCmdDealer:00000340 $t
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1593   .text.UsbManagerCmdDealer:00000684 $d
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1600   .text.UsbManagerCmdDealer:00000694 $t
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1864   .text.UsbManagerCmdDealer:00000830 $d
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1870   .text.UsbManagerSendCR95Error:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1875   .text.UsbManagerSendCR95Error:00000000 UsbManagerSendCR95Error
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1925   .text.UsbManagerSendCR95Error:0000003c $d
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1930   .text.UsbManagerSendCR95Result:00000000 $t
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1935   .text.UsbManagerSendCR95Result:00000000 UsbManagerSendCR95Result
C:\Users\Thibaut\AppData\Local\Temp\cccnU7Fj.s:1983   .text.UsbManagerSendCR95Result:0000003c $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.Uart1.h.37.6fef97192d2ff3e9d94e3c83386fe98a
                           .group:00000000 wm4.UsbUart.h.34.01b359f06951367d9bca1b2430378c68
                           .group:00000000 wm4.pit.h.16.22e9304d181f27ae9bdca78be05bb5ff
                           .group:00000000 wm4.Tick.h.35.9becc5b46723cd15f4eb8d237aca386c
                           .group:00000000 wm4.rtc.h.14.3918d22d7824c1bf824923ad6f2f53ca
                           .group:00000000 wm4.i2c0.h.37.2b2098a180a30784011003ce8cd823b6
                           .group:00000000 wm4.BQ27510DRZRG2.h.34.6e915514b865ff93634917ae057cba84
                           .group:00000000 wm4.spi1.h.16.6602a6214774aff179c2aacc28b164ab
                           .group:00000000 wm4.FM25V20.h.37.bab310bac0b9fe3c9b553014d8517875
                           .group:00000000 wm4.SRDMemorymapping.h.14.0f57e1c6dbbba59a11bbccc2f434d3a9
                           .group:00000000 wm4.MemoryManager.h.40.8798350820305da8d39f9c88fc625152
                           .group:00000000 wm4.globalParameters.h.14.6323ff6ea83f006a35e638965267dc7f
                           .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.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.device.h.14.5ba5d7257eda9269d01eaccffebc5e2e
                           .group:00000000 wm4.Button.h.14.acc58615cd9d09f1d7b252a255dd32ee
                           .group:00000000 wm4.Led.h.14.395357503168da9d297680815ea21079
                           .group:00000000 wm4.ButtonManager.h.42.ffafdf87c11dba91387998218ca29115
                           .group:00000000 wm4.UsbManager.h.40.511f52543de15c9293aafe28c6123460

UNDEFINED SYMBOLS
Uart1Init
Uart1ReadChar
TickGetMsCounter
TickMilliSecElapsedFrom
Uart1Ctrl
memcpy
Uart1SendString
RtcGetTime
Uart1SendData
RtcSetTime
MemoryManagerWriteDiving
MemoryManagerCheckDiving
BQBatteryStatus
DivingParameters
MemoryManagerCtrl
MemoryManagerWriteSerial
MemoryManagerClearLog
MemoryManagerReadLog
SerialParameters
RFIDManagerSendBridgeCommand
