   1              		.file	"HV_Converter.c"
   9              	.Ltext0:
  10              		.align	2
  11              		.global	FeedWatchdog
  13              	FeedWatchdog:
  14              	.LFB2:
  15              		.file 1 "HV_Converter.c"
   1:HV_Converter.c **** /*****************************************************
   2:HV_Converter.c **** HV_Converter.c
   3:HV_Converter.c **** 
   4:HV_Converter.c **** Project : High Voltage Converter 12-bit
   5:HV_Converter.c **** Version : 2.1
   6:HV_Converter.c **** Date    : 19 May 2008
   7:HV_Converter.c **** Company : Yerevan Physics Institute 
   8:HV_Converter.c **** Comments: 
   9:HV_Converter.c **** 
  10:HV_Converter.c **** Author  : Varuzhan Danielyan              
  11:HV_Converter.c **** 
  12:HV_Converter.c **** Chip type        : ADuc7021
  13:HV_Converter.c **** 
  14:HV_Converter.c **** *****************************************************/
  15:HV_Converter.c **** #include "defs.h"
  16:HV_Converter.c **** #include "EEPROM.h"
  17:HV_Converter.c **** 
  18:HV_Converter.c **** int ProgramOk;
  19:HV_Converter.c **** u16 HV_Setting, Flags;
  20:HV_Converter.c **** 
  21:HV_Converter.c **** int MaxADC;
  22:HV_Converter.c **** 
  23:HV_Converter.c **** #define MaxDAC_Value    8090
  24:HV_Converter.c **** 
  25:HV_Converter.c **** #define int_shift       4/*10*/
  26:HV_Converter.c **** 
  27:HV_Converter.c **** volatile int HV_Measured;
  28:HV_Converter.c **** volatile int integral;
  29:HV_Converter.c **** 
  30:HV_Converter.c **** #ifdef Watchdog
  31:HV_Converter.c **** #else
  32:HV_Converter.c **** void FeedWatchdog(void) {};
  16              	 args = 0, pretend = 0, frame = 0
  17              		@ frame_needed = 0, uses_anonymous_args = 0
  18              		@ link register save eliminated.
  19              		@ lr needed for prologue
  20              		.loc 1 32 0
  21              		bx	lr
  22 0000 1EFF2FE1 	.LFE2:
  24              		.align	2
  25              		.global	Timer0_IRQ_Handler
  27              	Timer0_IRQ_Handler:
  28              	.LFB3:
  29              		.loc 1 44 0
  33:HV_Converter.c **** #endif
  34:HV_Converter.c **** 
  35:HV_Converter.c **** 
  36:HV_Converter.c **** #define FIRST_ADC_INPUT 0
  37:HV_Converter.c **** #define LAST_ADC_INPUT 3
  38:HV_Converter.c **** volatile u32 adc_data[LAST_ADC_INPUT-FIRST_ADC_INPUT+1];
  39:HV_Converter.c **** volatile int Temperature;
  40:HV_Converter.c **** 
  41:HV_Converter.c **** void Timer0_IRQ_Handler(void);
  42:HV_Converter.c **** 
  43:HV_Converter.c **** void Timer0_IRQ_Handler(void)
  44:HV_Converter.c **** {
  30              	retend = 0, frame = 0
  31              		@ frame_needed = 0, uses_anonymous_args = 0
  32              		stmfd	sp!, {r4, lr}
  33 0004 10402DE9 	.LCFI0:
  34              		.loc 1 49 0
  45:HV_Converter.c ****   static u32 input_index = 1;
  46:HV_Converter.c ****   u32 DAC_Value;
  47:HV_Converter.c ****   int delta;
  48:HV_Converter.c **** 
  49:HV_Converter.c ****   ADCCP = input_index;
  35              	r4, .L36
  36 0008 9C419FE5 		ldr	r0, [r4, #0]
  37 000c 000094E5 		mvn	r2, #61440
  38 0010 0F2AE0E3 		.loc 1 51 0
  50:HV_Converter.c **** 
  51:HV_Converter.c ****   if (input_index == 0x10) {
  39              		r0, #16
  40 0014 100050E3 		.loc 1 49 0
  41              		str	r0, [r2, #-2811]
  42 0018 FB0A02E5 		.loc 1 51 0
  43              		beq	.L35
  44 001c 5300000A 		.loc 1 58 0
  52:HV_Converter.c ****     ADCCON = 0x6A3;				// ADC config: fADC/2, acq. time = 16 clocks => ADC Speed = 1MSPS
  53:HV_Converter.c **** 	while (!ADCSTA);			// wait for end of conversion
  54:HV_Converter.c ****     Temperature = 0x525 - (ADCDAT >> 16);
  55:HV_Converter.c ****     input_index = FIRST_ADC_INPUT;
  56:HV_Converter.c ****   }
  57:HV_Converter.c ****   else {
  58:HV_Converter.c ****     if (input_index == FIRST_ADC_INPUT) {		// HV Feedback
  45              	0, #0
  46 0020 000050E3 		.loc 1 84 0
  59:HV_Converter.c **** 	  ADCCON = 0x6A3;				// ADC config: fADC/2, acq. time = 16 clocks => ADC Speed = 1MSPS
  60:HV_Converter.c **** 	  while (!ADCSTA);			// wait for end of conversion
  61:HV_Converter.c ****       adc_data[input_index] = HV_Measured = ADCDAT >> 16;    	
  62:HV_Converter.c ****       if (GP1DAT & PowerEN) {
  63:HV_Converter.c ****         delta = (HV_Measured - (int)HV_Setting);
  64:HV_Converter.c ****         integral += delta;
  65:HV_Converter.c ****         if (integral < 0)
  66:HV_Converter.c ****           DAC_Value = 0;
  67:HV_Converter.c ****         else if (integral > (MaxDAC_Value << int_shift)) {
  68:HV_Converter.c ****           integral = MaxDAC_Value << int_shift;
  69:HV_Converter.c ****           DAC_Value = MaxDAC_Value;
  70:HV_Converter.c **** 		}
  71:HV_Converter.c ****         else
  72:HV_Converter.c ****           DAC_Value = (u32)integral >> int_shift;
  73:HV_Converter.c **** 
  74:HV_Converter.c ****         DAC0DAT = (DAC_Value << 15);
  75:HV_Converter.c **** 	    DAC1DAT = ((DAC_Value + 1) << 15);
  76:HV_Converter.c **** 
  77:HV_Converter.c ****         if (abs(delta) > 2)
  78:HV_Converter.c ****           T0LD = 25;
  79:HV_Converter.c ****         else
  80:HV_Converter.c ****           T0LD = 800;
  81:HV_Converter.c ****       }
  82:HV_Converter.c ****     }
  83:HV_Converter.c ****     else {
  84:HV_Converter.c **** 	  ADCCON = 0x6A3;				// ADC config: fADC/2, acq. time = 16 clocks => ADC Speed = 1MSPS
  47              	ovne	r3, #1696
  48 0024 6A3EA013 		addne	r3, r3, #3
  49 0028 03308312 		strne	r3, [r2, #-2815]
  50 002c FF3A0215 		.loc 1 58 0
  51              		bne	.L22
  52 0030 3800001A 		.loc 1 59 0
  53              		mov	r3, #1696
  54 0034 6A3EA0E3 		add	r3, r3, #3
  55 0038 033083E2 		str	r3, [r2, #-2815]
  56 003c FF3A02E5 	.L11:
  57              		.loc 1 60 0
  58              		ldr	r3, [r2, #-2803]
  59 0040 F33A12E5 		cmp	r3, #0
  60 0044 000053E3 		beq	.L11
  61 0048 FCFFFF0A 		.loc 1 61 0
  62              		ldr	r3, [r2, #-2799]
  63 004c EF3A12E5 		ldr	r0, .L36+4
  64 0050 58019FE5 		mov	r3, r3, lsr #16
  65 0054 2338A0E1 		str	r3, [r0, #0]
  66 0058 003080E5 		ldr	r3, .L36+8
  67 005c 50319FE5 		ldr	r1, [r0, #0]
  68 0060 001090E5 		str	r1, [r3, #0]
  69 0064 001083E5 		.loc 1 62 0
  70              		mvn	r2, #0
  71 0068 0020E0E3 		ldr	r3, [r2, #-3023]
  72 006c CF3B12E5 		tst	r3, #262144
  73 0070 010713E3 		beq	.L13
  74 0074 2400000A 		.loc 1 63 0
  75              		ldr	r2, .L36+12
  76 0078 38219FE5 		.loc 1 64 0
  77              		ldr	lr, .L36+16
  78 007c 38E19FE5 		.loc 1 63 0
  79              		ldr	r0, [r0, #0]
  80 0080 000090E5 		ldr	r1, [r2, #0]
  81 0084 001092E5 		.loc 1 64 0
  82              		ldr	r3, [lr, #0]
  83 0088 00309EE5 		.loc 1 63 0
  84              		rsb	r1, r1, r0
  85 008c 001061E0 	.LVL0:
  86              		.loc 1 64 0
  87              		add	r3, r1, r3
  88 0090 033081E0 		str	r3, [lr, #0]
  89 0094 00308EE5 		.loc 1 65 0
  90              		ldr	r2, [lr, #0]
  91 0098 00209EE5 		cmp	r2, #0
  92 009c 000052E3 		movlt	r0, #0
  93 00a0 0000A0B3 		movlt	r2, #32768
  94 00a4 0229A0B3 		blt	.L17
  95 00a8 0D0000BA 		.loc 1 67 0
  96              		ldr	r3, [lr, #0]
  97 00ac 00309EE5 		mov	ip, #129024
  98 00b0 7ECBA0E3 		add	ip, ip, #416
  99 00b4 1ACE8CE2 		cmp	r3, ip
 100 00b8 0C0053E1 		.loc 1 72 0
 101              		ldrle	r3, [lr, #0]
 102 00bc 00309ED5 		.loc 1 68 0
 103              		movgt	r0, #264241152
 104 00c0 3F05A0C3 		.loc 1 72 0
 105              		movle	r3, r3, lsr #4
 106 00c4 2332A0D1 	.LVL1:
 107              		.loc 1 68 0
 108              		movgt	r2, r0
 109 00c8 0020A0C1 		.loc 1 72 0
 110              		addle	r2, r3, #1
 111 00cc 012083D2 		.loc 1 68 0
 112              		strgt	ip, [lr, #0]
 113 00d0 00C08EC5 		addgt	r0, r0, #851968
 114 00d4 0D0880C2 		addgt	r2, r2, #884736
 115 00d8 362982C2 		.loc 1 72 0
 116              		movle	r2, r2, asl #15
 117 00dc 8227A0D1 		movle	r0, r3, asl #15
 118 00e0 8307A0D1 	.L17:
 119              		.loc 1 77 0
 120              		eor	r3, r1, r1, asr #31
 121 00e4 C13F21E0 		sub	r3, r3, r1, asr #31
 122 00e8 C13F43E0 	.LVL2:
 123              		cmp	r3, #2
 124 00ec 020053E3 		.loc 1 74 0
 125              		mvn	r1, #61440
 126 00f0 0F1AE0E3 	.LVL3:
 127              		.loc 1 78 0
 128              		movgt	r3, #25
 129 00f4 1930A0C3 		.loc 1 80 0
 130              		movle	r3, #800
 131 00f8 323EA0D3 		.loc 1 74 0
 132              		str	r0, [r1, #-2555]
 133 00fc FB0901E5 		.loc 1 75 0
 134              		str	r2, [r1, #-2547]
 135 0100 F32901E5 		.loc 1 78 0
 136              		strgt	r3, [r1, #-3327]
 137 0104 FF3C01C5 		.loc 1 80 0
 138              		strle	r3, [r1, #-3327]
 139 0108 FF3C01D5 	.L13:
 140              		.loc 1 91 0
  85:HV_Converter.c **** 	  while (!ADCSTA);			// wait for end of conversion
  86:HV_Converter.c ****       adc_data[input_index] = (ADCDAT >> 16);    
  87:HV_Converter.c **** 
  88:HV_Converter.c ****     } 
  89:HV_Converter.c **** 
  90:HV_Converter.c ****     //Select next ADC input
  91:HV_Converter.c ****     if (++input_index > LAST_ADC_INPUT)
 141              		.L22
 142 010c 0130A0E3 		.loc 1 86 0
 143 0110 003084E5 		ldr	r3, [r2, #-2799]
 144 0114 0C0000EA 		.loc 1 91 0
 145              		add	r1, r0, #1
 146              		.loc 1 86 0
 147 0118 F33A12E5 		ldr	r2, .L36+8
 148 011c 000053E3 		.loc 1 91 0
 149 0120 FCFFFF0A 		cmp	r1, #3
 150              		.loc 1 86 0
 151 0124 EF3A12E5 		mov	r3, r3, lsr #16
 152              		str	r3, [r2, r0, asl #2]
 153 0128 011080E2 		.loc 1 92 0
 154              		ldrhi	r3, .L36
 155 012c 80209FE5 		movhi	r2, #16
 156              		.loc 1 91 0
 157 0130 030051E3 		str	r1, [r4, #0]
 158              		.loc 1 92 0
 159 0134 2338A0E1 		strhi	r2, [r3, #0]
 160 0138 003182E7 	.L8:
  92:HV_Converter.c ****       input_index = 0x10;	// Choose temperature sensor
 161              	, .L36+20
 162 013c 68309F85 		ldr	r3, [r2, #0]
 163 0140 1020A083 		cmp	r3, #0
 164              		.loc 1 96 0
 165 0144 001084E5 		movne	r3, #0
 166              		strne	r3, [r2, #0]
 167 0148 00208385 		.loc 1 100 0
 168              		mov	r2, #0
  93:HV_Converter.c ****   }
  94:HV_Converter.c ****   
  95:HV_Converter.c ****   if (ProgramOk) {
 169              	 #61440
 170 014c 6C209FE5 		str	r2, [r3, #-3315]
 171 0150 003092E5 		.loc 1 101 0
 172 0154 000053E3 		ldmfd	sp!, {r4, pc}
  96:HV_Converter.c ****     ProgramOk = 0;
 173              	:
 174 0158 0030A013 		.loc 1 52 0
 175 015c 00308215 		mov	r3, #1696
  97:HV_Converter.c ****     FeedWatchdog();
  98:HV_Converter.c ****   }
  99:HV_Converter.c **** 
 100:HV_Converter.c ****   T0CLRI = 0;
 176              	d	r3, r3, #3
 177 0160 0020A0E3 		str	r3, [r2, #-2815]
 178 0164 0F3AE0E3 	.L6:
 179 0168 F32C03E5 		.loc 1 53 0
 101:HV_Converter.c **** }
 180              		r3, [r2, #-2803]
 181 016c 1080BDE8 		cmp	r3, #0
 182              		beq	.L6
 183              		.loc 1 54 0
 184 0170 6A3EA0E3 		ldr	r3, [r2, #-2799]
 185 0174 033083E2 		mov	r3, r3, lsr #16
 186 0178 FF3A02E5 		rsb	r3, r3, #1312
 187              		ldr	r2, .L36+24
 188              		add	r3, r3, #5
 189 017c F33A12E5 		.loc 1 55 0
 190 0180 000053E3 		mov	r1, #0
 191 0184 FCFFFF0A 		.loc 1 54 0
 192              		str	r3, [r2, #0]
 193 0188 EF3A12E5 		.loc 1 55 0
 194 018c 2338A0E1 		str	r1, [r4, #0]
 195 0190 523E63E2 		b	.L8
 196 0194 28209FE5 	.L37:
 197 0198 053083E2 		.align	2
 198              	.L36:
 199 019c 0010A0E3 		.word	input_index.2226
 200              		.word	HV_Measured
 201 01a0 003082E5 		.word	adc_data
 202              		.word	HV_Setting
 203 01a4 001084E5 		.word	integral
 204 01a8 E7FFFFEA 		.word	ProgramOk
 205              		.word	Temperature
 206              	.LFE3:
 208 01ac 00000000 		.global	__floatsisf
 209 01b0 00000000 		.global	__addsf3
 210 01b4 00000000 		.global	__mulsf3
 211 01b8 00000000 		.global	__divsf3
 212 01bc 00000000 		.global	__fixsfsi
 213 01c0 00000000 		.section	.rodata.str1.4,"aMS",%progbits,1
 214 01c4 00000000 		.align	2
 215              	.LC0:
 216              		.ascii	"%u\000"
 217              		.global	__extendsfdf2
 218              		.global	__adddf3
 219              		.global	__fixunsdfsi
 220              		.global	__fixunssfsi
 221              		.align	2
 222              	.LC1:
 223              		.ascii	"e=%u\000"
 224              		.align	2
 225 0000 257500   	.LC2:
 226              		.ascii	"\012\000"
 227              		.align	2
 228              	.LC3:
 229              		.ascii	"ADC[%i]=%u\012\000"
 230 0003 00       		.align	2
 231              	.LC4:
 232 0004 653D2575 		.ascii	"Temperature=%i\012\000"
 232      00
 233 0009 000000   		.text
 234              		.align	2
 235 000c 0A00     		.global	main
 237              	main:
 238 0010 4144435B 	.LFB7:
 238      25695D3D 
 238      25750A00 
 239              		.loc 1 164 0
 240              		@ args = 0, pretend = 0, frame = 0
 241 001c 54656D70 		@ frame_needed = 0, uses_anonymous_args = 0
 241      65726174 
 241      7572653D 
 241      25690A00 
 242              		stmfd	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr}
 243              	.LCFI1:
 244              		.loc 1 171 0
 245              		bl	InitController
 246              	.LBB39:
 247              	.LBB40:
 102:HV_Converter.c **** 
 103:HV_Converter.c **** 
 104:HV_Converter.c **** 
 105:HV_Converter.c **** char NextChar;
 106:HV_Converter.c **** 
 107:HV_Converter.c **** static u16 GetWORD(void)
 108:HV_Converter.c **** { 
 109:HV_Converter.c ****   u16 i;
 110:HV_Converter.c ****   
 111:HV_Converter.c ****   i = 0;
 112:HV_Converter.c ****   do {
 113:HV_Converter.c **** //    while (!received())
 114:HV_Converter.c **** //      ProgramOk = 1;   
 115:HV_Converter.c ****     NextChar = getchar();
 116:HV_Converter.c ****     if (isdigit(NextChar)) {
 117:HV_Converter.c ****       i *= 10;
 118:HV_Converter.c ****       i += NextChar - '0';
 119:HV_Converter.c ****     }
 120:HV_Converter.c ****     else  
 121:HV_Converter.c ****       break;
 122:HV_Converter.c ****   }  while(1);
 123:HV_Converter.c **** 
 124:HV_Converter.c ****   return i;
 125:HV_Converter.c **** }
 126:HV_Converter.c **** 
 127:HV_Converter.c **** 
 128:HV_Converter.c **** u16 MyAddress, ADC2HV;
 129:HV_Converter.c **** 
 130:HV_Converter.c **** float Code2Voltage;
 131:HV_Converter.c **** 
 132:HV_Converter.c **** 
 133:HV_Converter.c **** char String[16];
 134:HV_Converter.c **** 
 135:HV_Converter.c **** //#define _RS485_TEST_
 136:HV_Converter.c **** 
 137:HV_Converter.c **** static u8 GoodAddress(void)
 138:HV_Converter.c **** {
 139:HV_Converter.c ****   u8 b;
 140:HV_Converter.c ****   
 141:HV_Converter.c ****   b = (u8)GetWORD();
 142:HV_Converter.c ****   return (b == MyAddress);      
 143:HV_Converter.c **** }
 144:HV_Converter.c **** 
 145:HV_Converter.c **** 
 146:HV_Converter.c **** static void InitADC(void)
 147:HV_Converter.c **** {
 148:HV_Converter.c ****   int time;
 149:HV_Converter.c **** 
 150:HV_Converter.c ****   time = 20000;
 151:HV_Converter.c ****   ADCCON = 0x20;	 					// power-on the ADC
 152:HV_Converter.c ****   while (time >=0)	  				// wait for ADC to be fully powered on
 153:HV_Converter.c ****     time--;
 154:HV_Converter.c **** 
 155:HV_Converter.c ****   REFCON = 0x01;				// connect internal 2.5V reference to Vref pin
 156:HV_Converter.c ****   ADCCON = 0x623;				// ADC config: fADC/2, acq. time = 16 clocks => ADC Speed = 1MSPS
 157:HV_Converter.c **** }
 158:HV_Converter.c **** 
 159:HV_Converter.c **** //#define _RS485_TEST_
 160:HV_Converter.c **** //#define _INIT_EEPROM_
 161:HV_Converter.c **** //#define _EEPROM_TEST_
 162:HV_Converter.c **** 
 163:HV_Converter.c **** int main(void)
 164:HV_Converter.c **** {
 248              	56 0
 249              		add	r2, r2, #3
 250              		.loc 1 151 0
 251 01c8 F04F2DE9 		mov	r3, #32
 252              		.loc 1 155 0
 165:HV_Converter.c **** 
 166:HV_Converter.c ****   int ch, i, b;
 167:HV_Converter.c **** #ifdef _EEPROM_TEST_
 168:HV_Converter.c ****   u16 j;
 169:HV_Converter.c **** #endif
 170:HV_Converter.c **** 
 171:HV_Converter.c ****   InitController();
 253              	r6, #1
 254 01cc FEFFFFEB 		.loc 1 151 0
 255              		str	r3, [r4, #-2815]
 256              		.loc 1 155 0
 257              		str	r6, [r4, #-2931]
 258 01d0 622EA0E3 		.loc 1 156 0
 259              		str	r2, [r4, #-2815]
 260 01d4 0F4AE0E3 	.LBE40:
 261              	.LBE39:
 262 01d8 032082E2 		.loc 1 173 0
 263              		bl	InitSerial
 264 01dc 2030A0E3 		.loc 1 176 0
 265              		ldr	r1, .L131
 266 01e0 0160A0E3 		ldr	r3, .L131+4
 267              		.loc 1 177 0
 268 01e4 FF3A04E5 		mov	r2, #50
 269              		.loc 1 176 0
 270 01e8 736B04E5 		str	r1, [r3, #0]
 271              		.loc 1 179 0
 272 01ec FF2A04E5 		mov	r5, #4
 273              		.loc 1 178 0
 274              		mov	r3, #196
 172:HV_Converter.c ****   InitADC();
 173:HV_Converter.c ****   InitSerial();
 275              	 [r4, #-3327]
 276 01f0 FEFFFFEB 		.loc 1 178 0
 174:HV_Converter.c **** 
 175:HV_Converter.c **** #ifndef _EEPROM_TEST
 176:HV_Converter.c ****   IRQ = Timer0_IRQ_Handler;			// Specify Interrupt Service Rountine
 277              	tr	r3, [r4, #-3319]
 278 01f4 10179FE5 		.loc 1 179 0
 279 01f8 10379FE5 		str	r5, [r4, #-4087]
 177:HV_Converter.c ****   T0LD = 50;						// Counter Value
 280              	oc 1 222 0
 281 01fc 3220A0E3 		bl	EE_Erased
 282              		cmp	r0, #0
 283 0200 001083E5 		bne	.L116
 178:HV_Converter.c ****   T0CON = 0xC4;						// Enabled,Periodic,Binary and CLK/16
 179:HV_Converter.c ****   IRQEN = TIMER0_BIT;				// Enable Timer0 IRQ
 284              	:
 285 0204 0450A0E3 		.loc 1 230 0
 286              		ldr	r8, .L131+8
 287 0208 C430A0E3 		.loc 1 231 0
 288              		ldr	r9, .L131+12
 289 020c FF2C04E5 		.loc 1 230 0
 290              		mov	r1, r8
 291 0210 F73C04E5 		.loc 1 232 0
 292              		ldr	r4, .L131+16
 293 0214 F75F04E5 		.loc 1 230 0
 180:HV_Converter.c **** #endif
 181:HV_Converter.c **** 
 182:HV_Converter.c **** #ifdef _RS485_TEST_  
 183:HV_Converter.c ****   ch =0x55;
 184:HV_Converter.c ****   putchar(ch);
 185:HV_Converter.c ****   while (1) {
 186:HV_Converter.c ****     if (received()) {
 187:HV_Converter.c ****       ch = toupper(getchar());
 188:HV_Converter.c ****       putchar(ch);
 189:HV_Converter.c **** 	}
 190:HV_Converter.c ****     FeedWatchdog();
 191:HV_Converter.c **** 	if (ch == 'N')
 192:HV_Converter.c **** 	  break;
 193:HV_Converter.c **** 	if (ch == 'T') {
 194:HV_Converter.c ****       IRQEN = 0;
 195:HV_Converter.c ****  	}
 196:HV_Converter.c ****   }
 197:HV_Converter.c **** #endif
 198:HV_Converter.c **** 
 199:HV_Converter.c **** 
 200:HV_Converter.c **** 
 201:HV_Converter.c **** #ifdef _EEPROM_TEST_
 202:HV_Converter.c ****   if (EE_Erased()) {
 203:HV_Converter.c ****     EE_Format();
 204:HV_Converter.c **** 	delay(50000);
 205:HV_Converter.c ****     EE_Write(0, 0x1234);
 206:HV_Converter.c ****     EE_Write(2, 0x5678);
 207:HV_Converter.c ****     EE_Write(4, 0xA5A5);
 208:HV_Converter.c ****   }
 209:HV_Converter.c ****   else
 210:HV_Converter.c ****     EE_Write(4, 0x4321);
 211:HV_Converter.c **** while (1) {
 212:HV_Converter.c ****   EE_Read(0, &j);
 213:HV_Converter.c ****   rprintf("%X\n", j);
 214:HV_Converter.c ****   EE_Read(2, &j);
 215:HV_Converter.c ****   rprintf("%X\n", j);
 216:HV_Converter.c ****   EE_Read(4, &j);
 217:HV_Converter.c ****   rprintf("%X\n", j);
 218:HV_Converter.c ****   getchar();
 219:HV_Converter.c **** } 
 220:HV_Converter.c **** #endif
 221:HV_Converter.c **** 
 222:HV_Converter.c ****   if (EE_Erased()) {
 294              	0
 295 0218 FEFFFFEB 		bl	EE_Read
 296 021c 000050E3 		.loc 1 231 0
 297 0220 A901001A 		mov	r1, r9
 298              		mov	r0, #2
 223:HV_Converter.c ****     EE_Format();
 224:HV_Converter.c ****     EE_Write(MyAddressAdr, MyAddress0);
 225:HV_Converter.c ****     EE_Write(HV_SettingAdr, HV_Setting0);
 226:HV_Converter.c **** 	EE_Write(ADC2HV_Adr, ADC2HV0);
 227:HV_Converter.c **** 	EE_Write(FlagsAdr, Flags0);
 228:HV_Converter.c ****   }
 229:HV_Converter.c **** 
 230:HV_Converter.c ****   EE_Read(MyAddressAdr, &MyAddress);
 299              	E_Read
 300 0224 E8869FE5 		.loc 1 232 0
 231:HV_Converter.c ****   EE_Read(HV_SettingAdr, &HV_Setting);
 301              	ov	r1, r4
 302 0228 E8969FE5 		mov	r0, r5
 303              		bl	EE_Read
 304 022c 0810A0E1 		.loc 1 233 0
 232:HV_Converter.c ****   EE_Read(ADC2HV_Adr, &ADC2HV);
 305              		r0, #6
 306 0230 E4469FE5 		ldr	r1, .L131+20
 307              		bl	EE_Read
 308 0234 0000A0E3 		.loc 1 235 0
 309 0238 FEFFFFEB 		ldr	r3, [r4, #0]
 310              		cmp	r3, #0
 311 023c 0910A0E1 		blt	.L42
 312 0240 0200A0E3 		mov	r0, r3
 313 0244 FEFFFFEB 		bl	__floatsisf
 314              	.L41:
 315 0248 0410A0E1 		mov	r1, #939524096
 316 024c 0500A0E1 		bl	__mulsf3
 317 0250 FEFFFFEB 		ldr	fp, .L131+24
 233:HV_Converter.c ****   EE_Read(FlagsAdr, &Flags);
 318              	.loc 1 236 0
 319 0254 0600A0E3 		mov	r1, r0
 320 0258 C0169FE5 		mov	r0, #1157627904
 321 025c FEFFFFEB 		.loc 1 235 0
 234:HV_Converter.c **** 
 235:HV_Converter.c ****   Code2Voltage = (float)ADC2HV/0x8000;
 322              		r3, [fp, #0]	@ float
 323 0260 003094E5 		.loc 1 236 0
 324 0264 000053E3 		sub	r0, r0, #311296
 325 0268 910100BA 		bl	__divsf3
 326 026c 0300A0E1 		bl	__fixsfsi
 327 0270 FEFFFFEB 		.loc 1 240 0
 328              		ldr	r1, .L131+20
 329 0274 0E13A0E3 		ldr	r2, [r1, #0]
 330 0278 FEFFFFEB 		.loc 1 238 0
 331 027c A0B69FE5 		ldr	r3, [r9, #0]
 332 0280 0030A0E1 		.loc 1 240 0
 236:HV_Converter.c ****   MaxADC = MaxHV/Code2Voltage;
 333              	
 334 0284 0010A0E1 		.loc 1 236 0
 335 0288 4504A0E3 		ldr	r2, .L131+28
 336              		.loc 1 238 0
 337 028c 00308BE5 		rsb	r3, r3, #8064
 338              		.loc 1 236 0
 339 0290 130940E2 		str	r0, [r2, #0]
 340 0294 FEFFFFEB 		.loc 1 238 0
 341 0298 FEFFFFEB 		add	r3, r3, #26
 237:HV_Converter.c **** 
 238:HV_Converter.c ****   integral = (MaxDAC_Value - (int)HV_Setting) << int_shift;
 239:HV_Converter.c **** 
 240:HV_Converter.c ****   if (Flags & HV_OnFlag)
 342              	 .L131+32
 343 029c 7C169FE5 		mov	r3, r3, asl #4
 344 02a0 002091E5 		str	r3, [r0, #0]
 345              		.loc 1 241 0
 346 02a4 003099E5 		mvnne	r2, #0
 347              		ldrne	r3, [r2, #-3023]
 348 02a8 010012E3 		orrne	r3, r3, #262144
 349              		ldrne	sl, .L131+36
 350 02ac 74269FE5 		ldrne	r6, .L131+40
 351              		ldrne	r7, .L131+44
 352 02b0 7E3D63E2 		strne	r3, [r2, #-3023]
 353              		ldreq	sl, .L131+36
 354 02b4 000082E5 		ldreq	r6, .L131+40
 355              		ldreq	r7, .L131+44
 356 02b8 1A3083E2 	.LVL4:
 357 02bc 68069FE5 	.L115:
 358 02c0 0332A0E1 		.loc 1 244 0
 359 02c4 003080E5 		mov	r3, #1
 241:HV_Converter.c ****     GP1DAT |= PowerEN;
 360              	l, #0]
 361 02c8 0020E013 		.loc 1 245 0
 362 02cc CF3B1215 		bl	received
 363 02d0 01378313 	.LVL6:
 364 02d4 54A69F15 		cmp	r0, #0
 365 02d8 54669F15 		beq	.L115
 366 02dc 54769F15 	.LBB41:
 367 02e0 CF3B0215 		.loc 1 246 0
 368 02e4 44A69F05 		bl	getchar
 369 02e8 44669F05 		ldr	r3, [r6, #0]
 370 02ec 44769F05 	.LVL7:
 371              		ldrb	r2, [r3, r0]	@ zero_extendqisi2
 372              		tst	r2, #2
 242:HV_Converter.c **** 
 243:HV_Converter.c ****   while (1) {
 244:HV_Converter.c ****     ProgramOk = 1;
 373              	
 374 02f0 0130A0E3 	.LVL8:
 375              		subne	r5, r0, #32
 376 02f4 00308AE5 	.LBE41:
 245:HV_Converter.c ****     if(received()) {
 377              	oc 1 247 0
 378 02f8 FEFFFFEB 		cmp	r5, #65
 379              		beq	.L117
 380 02fc 000050E3 		.loc 1 266 0
 381 0300 FAFFFF0A 		sub	r3, r5, #67
 382              		cmp	r3, #19
 246:HV_Converter.c ****       ch = toupper(getchar());
 383              		pc, [pc, r3, asl #2]
 384 0304 FEFFFFEB 		b	.L115
 385 0308 003096E5 		.p2align 2
 386              	.L69:
 387 030c 0020D3E7 		.word	.L63
 388 0310 020012E3 		.word	.L64
 389 0314 0050A001 		.word	.L65
 390              		.word	.L115
 391 0318 20504012 		.word	.L66
 392              		.word	.L67
 247:HV_Converter.c ****       if (ch == 'A') {                 // Set and read Address
 393              	15
 394 031c 410055E3 		.word	.L115
 395 0320 2301000A 		.word	.L115
 248:HV_Converter.c ****         b = (u8)GetWORD();
 249:HV_Converter.c ****         if ((b == 253) | (b == MyAddress)) {
 250:HV_Converter.c ****           if (NextChar == ' ') {
 251:HV_Converter.c ****             b = (u8)GetWORD();
 252:HV_Converter.c ****             if (b)
 253:HV_Converter.c **** 			{
 254:HV_Converter.c ****               MyAddress = b;
 255:HV_Converter.c **** 			  EE_Write(MyAddressAdr, MyAddress);
 256:HV_Converter.c **** 			  }
 257:HV_Converter.c ****             else
 258:HV_Converter.c ****               b = MyAddress;
 259:HV_Converter.c ****           }
 260:HV_Converter.c ****           else
 261:HV_Converter.c ****             b = MyAddress;
 262:HV_Converter.c **** 		  rprintf("%u", b);
 263:HV_Converter.c ****         }
 264:HV_Converter.c ****       }
 265:HV_Converter.c ****       else {
 266:HV_Converter.c ****         switch(ch) {
 396              	ord	.L115
 397 0324 433045E2 		.word	.L115
 398 0328 130053E3 		.word	.L115
 399 032c 03F19F97 		.word	.L115
 400 0330 EEFFFFEA 		.word	.L115
 401              		.word	.L115
 402              		.word	.L67
 403 0334 84030000 		.word	.L68
 404 0338 90040000 		.word	.L115
 405 033c 68050000 		.word	.L115
 406 0340 F0020000 		.word	.L65
 407 0344 A8060000 	.L63:
 408 0348 40060000 		mov	r4, #0
 409 034c F0020000 	.LVL9:
 410 0350 F0020000 		b	.L70
 411 0354 F0020000 	.LVL10:
 412 0358 F0020000 	.L118:
 413 035c F0020000 	.LBB42:
 414 0360 F0020000 	.LBB43:
 415 0364 F0020000 	.LBB44:
 416 0368 F0020000 	.LBB45:
 417 036c F0020000 		.loc 1 118 0
 418 0370 40060000 		sub	r4, r3, #48
 419 0374 3C070000 	.LVL11:
 420 0378 F0020000 	.L70:
 421 037c F0020000 	.LBE45:
 422 0380 68050000 		.loc 1 115 0
 423              		bl	getchar
 424 0384 0040A0E3 	.LVL12:
 425              	.LBB46:
 426 0388 000000EA 		and	r0, r0, #255
 427              		strb	r0, [r7, #0]
 428              		.loc 1 116 0
 429              		ldr	r1, [r6, #0]
 430              		.loc 1 118 0
 431              		mov	r2, r4, asl #3
 432              		mov	r3, r4, asl #1
 433              		add	r3, r3, r2
 434 038c 304043E2 		.loc 1 116 0
 435              		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 436              		tst	r2, #4
 437              		.loc 1 118 0
 438              		add	r3, r0, r3
 439 0390 FEFFFFEB 		.loc 1 116 0
 440              		bne	.L118
 441              	.LBE46:
 442 0394 FF0000E2 	.LBE44:
 443 0398 0000C7E5 	.LBE43:
 444              	.LBE42:
 445 039c 001096E5 		.loc 1 268 0
 446              		ldr	r2, [r8, #0]
 447 03a0 8421A0E1 		and	r3, r4, #255
 448 03a4 8430A0E1 		cmp	r3, r2
 449 03a8 023083E0 		bne	.L115
 450              		mov	r4, #0
 451 03ac 0120D0E7 	.LVL13:
 452 03b0 040012E3 		b	.L74
 453              	.L119:
 454 03b4 033080E0 	.LBB47:
 455              	.LBB48:
 456 03b8 F3FFFF1A 		.loc 1 118 0
 457              		sub	r4, r3, #48
 458              	.L74:
 459              	.LBE48:
 460              		.loc 1 115 0
 267:HV_Converter.c ****         case 'C':    // Calibrate
 268:HV_Converter.c ****           if (GoodAddress()) { 
 461              	116 0
 462 03bc 002098E5 		ldr	r1, [r6, #0]
 463 03c0 FF3004E2 		.loc 1 118 0
 464 03c4 020053E1 		mov	r2, r4, asl #3
 465 03c8 C8FFFF1A 		mov	r3, r4, asl #1
 466 03cc 0040A0E3 		add	r3, r3, r2
 467              		.loc 1 116 0
 468 03d0 000000EA 		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 469              		tst	r2, #4
 470              		.loc 1 118 0
 471              		add	r3, r0, r3
 472              		.loc 1 116 0
 473 03d4 304043E2 		bne	.L119
 474              	.LBE49:
 475              	.LBE47:
 476              		.loc 1 270 0
 477 03d8 FEFFFFEB 		mov	r0, r4
 478              		bl	__floatsisf
 479 03dc FF0000E2 		ldr	r3, [r9, #0]
 480 03e0 0000C7E5 		cmp	r3, #0
 481              		mov	r5, r0
 482 03e4 001096E5 	.LVL14:
 483              		blt	.L78
 484 03e8 8421A0E1 		mov	r0, r3
 485 03ec 8430A0E1 		bl	__floatsisf
 486 03f0 023083E0 	.L77:
 487              		mov	r1, r0
 488 03f4 0120D0E7 		mov	r0, r5
 489 03f8 040012E3 		bl	__divsf3
 490              		mov	r3, r0
 491 03fc 033080E0 		str	r3, [fp, #0]	@ float
 492              		.loc 1 271 0
 493 0400 F3FFFF1A 		mov	r1, #1191182336
 494              		bl	__mulsf3
 495              		bl	__extendsfdf2
 269:HV_Converter.c ****             i = GetWORD();
 270:HV_Converter.c ****             Code2Voltage = ((float) i)/HV_Setting;
 496              	2097152
 497 0404 0400A0E1 		mov	r3, #0
 498 0408 FEFFFFEB 		bl	__adddf3
 499 040c 003099E5 		bl	__fixunsdfsi
 500 0410 000053E3 		ldr	r2, .L131+16
 501 0414 0050A0E1 		mov	r3, r0
 502              		str	r3, [r2, #0]
 503 0418 1F0100BA 		.loc 1 272 0
 504 041c 0300A0E1 		mov	r1, r0
 505 0420 FEFFFFEB 		mov	r0, #4
 506              		bl	EE_Write
 507 0424 0010A0E1 		.loc 1 273 0
 508 0428 0500A0E1 		mov	r0, #1157627904
 509 042c FEFFFFEB 		ldr	r1, [fp, #0]	@ float
 510 0430 0030A0E1 		sub	r0, r0, #311296
 511 0434 00308BE5 		bl	__divsf3
 271:HV_Converter.c **** 			ADC2HV = (u16)(Code2Voltage*0x8000 + 0.5);
 512              	dr	r3, .L131+28
 513 0438 4714A0E3 		str	r0, [r3, #0]
 514 043c FEFFFFEB 		b	.L115
 515 0440 FEFFFFEB 	.LVL15:
 516 0444 FF25A0E3 	.L64:
 517 0448 022682E2 		.loc 1 312 0
 518 044c 0030A0E3 		mov	r4, #0
 519 0450 FEFFFFEB 	.LVL16:
 520 0454 FEFFFFEB 		b	.L103
 521 0458 BC249FE5 	.LVL17:
 522 045c 0030A0E1 	.L120:
 523 0460 003082E5 	.LBB50:
 272:HV_Converter.c **** 			EE_Write(ADC2HV_Adr, ADC2HV);
 524              	52:
 525 0464 0010A0E1 	.LBB53:
 526 0468 0400A0E3 		.loc 1 118 0
 527 046c FEFFFFEB 		sub	r4, r3, #48
 273:HV_Converter.c ****             MaxADC = MaxHV/Code2Voltage; 
 528              	18:
 529 0470 4504A0E3 	.L103:
 530 0474 00109BE5 	.LBE53:
 531 0478 130940E2 		.loc 1 115 0
 532 047c FEFFFFEB 		bl	getchar
 533 0480 FEFFFFEB 	.LVL19:
 534 0484 9C349FE5 	.LBB54:
 535 0488 000083E5 		and	r0, r0, #255
 536 048c 97FFFFEA 		strb	r0, [r7, #0]
 537              		.loc 1 116 0
 538              		ldr	r1, [r6, #0]
 274:HV_Converter.c ****           }
 275:HV_Converter.c ****         break;         
 276:HV_Converter.c ****         case 'V':                 // Set HV in Volts
 277:HV_Converter.c ****         case 'E':                 // Set HV in ADC units
 278:HV_Converter.c ****           if (GoodAddress()) {
 279:HV_Converter.c ****             i = GetWORD();
 280:HV_Converter.c ****             if (ch == 'V')
 281:HV_Converter.c ****               i =  (u16)(i/Code2Voltage);
 282:HV_Converter.c ****             if (i > MaxADC)
 283:HV_Converter.c ****               i = MaxADC;
 284:HV_Converter.c **** 			if (i != HV_Setting) {
 285:HV_Converter.c ****               HV_Setting = i;
 286:HV_Converter.c ****               integral = (MaxDAC_Value - (int)HV_Setting) << int_shift;
 287:HV_Converter.c ****               EE_Write(HV_SettingAdr, HV_Setting);
 288:HV_Converter.c **** 			}
 289:HV_Converter.c ****           }
 290:HV_Converter.c ****         break;
 291:HV_Converter.c ****         case 'H':                 // Read HV in Volts
 292:HV_Converter.c ****         case 'R':                 // ReadHV in ADC units
 293:HV_Converter.c ****           if (GoodAddress()) {
 294:HV_Converter.c ****             i = HV_Measured;
 295:HV_Converter.c ****             if (ch == 'H')
 296:HV_Converter.c ****               i *= Code2Voltage;
 297:HV_Converter.c ****             rprintf("e=%u", i);
 298:HV_Converter.c ****           }
 299:HV_Converter.c ****         break;     
 300:HV_Converter.c ****         case 'S':                 // Switch HV off
 301:HV_Converter.c ****           if (GoodAddress()) {
 302:HV_Converter.c **** 		    Flags &= ~HV_OnFlag;
 303:HV_Converter.c **** 	        EE_Write(FlagsAdr, Flags);
 304:HV_Converter.c **** 		    GP1DAT &= ~PowerEN;
 305:HV_Converter.c ****           }
 306:HV_Converter.c ****         break;
 307:HV_Converter.c ****         case 'G':                 // Switch HV on
 308:HV_Converter.c ****           if (GoodAddress()) {
 309:HV_Converter.c **** 		    Flags |= HV_OnFlag;
 310:HV_Converter.c **** 	        EE_Write(FlagsAdr, Flags);
 311:HV_Converter.c ****             GP1DAT |= PowerEN;
 312:HV_Converter.c ****             integral = (MaxDAC_Value - (int)HV_Setting) << int_shift;			
 539              	 0
 540 0490 0040A0E3 		mov	r2, r4, asl #3
 541              		mov	r3, r4, asl #1
 542 0494 000000EA 		add	r3, r3, r2
 543              		.loc 1 116 0
 544              		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 545              		tst	r2, #4
 546              		.loc 1 118 0
 547              		add	r3, r0, r3
 548              		.loc 1 116 0
 549              		bne	.L120
 550 0498 304043E2 	.LBE54:
 551              	.LBE52:
 552              	.LBE51:
 553              	.LBE50:
 554              		.loc 1 316 0
 555 049c FEFFFFEB 		ldr	r2, [r8, #0]
 556              		and	r3, r4, #255
 557              		cmp	r3, r2
 558 04a0 FF0000E2 		bne	.L115
 559 04a4 0000C7E5 		.loc 1 317 0
 560              		ldr	r0, .L131+48
 561 04a8 001096E5 		bl	rprintf
 562              		.loc 1 319 0
 563 04ac 8421A0E1 		ldr	r1, .L131+52
 564 04b0 8430A0E1 		ldr	r0, .L131+56
 565 04b4 023083E0 		ldr	r2, [r1, #0]
 566              		mov	r1, #0
 567 04b8 0120D0E7 		bl	rprintf
 568 04bc 040012E3 		ldr	r3, .L131+52
 569              		ldr	r0, .L131+56
 570 04c0 033080E0 		ldr	r2, [r3, #4]
 571              		mov	r1, #1
 572 04c4 F3FFFF1A 		bl	rprintf
 573              		ldr	r0, .L131+52
 574              		mov	r1, #2
 575              		ldr	r2, [r0, #8]
 576              		ldr	r0, .L131+56
 313:HV_Converter.c ****           }
 314:HV_Converter.c ****         break;
 315:HV_Converter.c ****         case 'D':
 316:HV_Converter.c ****           if (GoodAddress()) {
 577              	 .L131+56
 578 04c8 002098E5 		ldr	r2, [r1, #12]
 579 04cc FF3004E2 		mov	r1, #3
 580 04d0 020053E1 		bl	rprintf
 581 04d4 85FFFF1A 		.loc 1 320 0
 317:HV_Converter.c **** 		    rprintf("\n");
 582              	r2, .L131+60
 583 04d8 5C049FE5 		ldr	r1, [r2, #0]
 584 04dc FEFFFFEB 		ldr	r3, .L131+64
 318:HV_Converter.c ****             for (i = FIRST_ADC_INPUT; i <= LAST_ADC_INPUT; i++)
 319:HV_Converter.c ****               rprintf("ADC[%i]=%u\n", i, adc_data[i]);
 585              	v	r2, r1, asl #3
 586 04e0 58149FE5 		mov	r1, r1, asl #1
 587 04e4 58049FE5 		add	r1, r1, r2
 588 04e8 002091E5 		smull	r0, r2, r3, r1
 589 04ec 0010A0E3 		mov	r1, r1, asr #31
 590 04f0 FEFFFFEB 		rsb	r1, r1, r2, asr #2
 591 04f4 44349FE5 		ldr	r0, .L131+68
 592 04f8 44049FE5 		bl	rprintf
 593 04fc 042093E5 		.loc 1 321 0
 594 0500 0110A0E3 		ldr	r0, .L131+48
 595 0504 FEFFFFEB 		bl	rprintf
 596 0508 30049FE5 		b	.L115
 597 050c 0210A0E3 	.LVL20:
 598 0510 082090E5 	.L65:
 599 0514 28049FE5 		.loc 1 273 0
 600 0518 FEFFFFEB 		mov	r4, #0
 601 051c 1C149FE5 	.LVL21:
 602 0520 1C049FE5 		b	.L79
 603 0524 0C2091E5 	.LVL22:
 604 0528 0310A0E3 	.L121:
 605 052c FEFFFFEB 	.LBB55:
 320:HV_Converter.c ****             rprintf("Temperature=%i\n", (Temperature*10)/13);
 606              	8:
 607 0530 10249FE5 		.loc 1 118 0
 608 0534 001092E5 		sub	r4, r3, #48
 609 0538 0C349FE5 	.LVL23:
 610 053c 8121A0E1 	.L79:
 611 0540 8110A0E1 	.LBE58:
 612 0544 021081E0 		.loc 1 115 0
 613 0548 9301C2E0 		bl	getchar
 614 054c C11FA0E1 	.LVL24:
 615 0550 421161E0 	.LBB59:
 616 0554 F4039FE5 		and	r0, r0, #255
 617 0558 FEFFFFEB 		strb	r0, [r7, #0]
 321:HV_Converter.c **** 		    rprintf("\n");
 618              	0
 619 055c D8039FE5 		ldr	r1, [r6, #0]
 620 0560 FEFFFFEB 		.loc 1 118 0
 621 0564 61FFFFEA 		mov	r2, r4, asl #3
 622              		mov	r3, r4, asl #1
 623              		add	r3, r3, r2
 624              		.loc 1 116 0
 625 0568 0040A0E3 		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 626              		tst	r2, #4
 627 056c 000000EA 		.loc 1 118 0
 628              		add	r3, r0, r3
 629              		.loc 1 116 0
 630              		bne	.L121
 631              	.LBE59:
 632              	.LBE57:
 633              	.LBE56:
 634              	.LBE55:
 635 0570 304043E2 		.loc 1 278 0
 636              		ldr	r2, [r8, #0]
 637              		and	r3, r4, #255
 638              		cmp	r3, r2
 639              		bne	.L115
 640 0574 FEFFFFEB 		mov	r4, #0
 641              	.LVL25:
 642              		b	.L83
 643 0578 FF0000E2 	.L122:
 644 057c 0000C7E5 	.LBB60:
 645              	.LBB61:
 646 0580 001096E5 		.loc 1 118 0
 647              		sub	r4, r3, #48
 648 0584 8421A0E1 	.L83:
 649 0588 8430A0E1 	.LBE61:
 650 058c 023083E0 		.loc 1 115 0
 651              		bl	getchar
 652 0590 0120D0E7 	.LBB62:
 653 0594 040012E3 		and	r0, r0, #255
 654              		strb	r0, [r7, #0]
 655 0598 033080E0 		.loc 1 116 0
 656              		ldr	r1, [r6, #0]
 657 059c F3FFFF1A 		.loc 1 118 0
 658              		mov	r2, r4, asl #3
 659              		mov	r3, r4, asl #1
 660              		add	r3, r3, r2
 661              		.loc 1 116 0
 662              		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 663 05a0 002098E5 		tst	r2, #4
 664 05a4 FF3004E2 		.loc 1 118 0
 665 05a8 020053E1 		add	r3, r0, r3
 666 05ac 4FFFFF1A 		.loc 1 116 0
 667 05b0 0040A0E3 		bne	.L122
 668              	.LBE62:
 669 05b4 000000EA 	.LBE60:
 670              		.loc 1 280 0
 671              		cmp	r5, #86
 672              		.loc 1 279 0
 673              		mov	r0, r4
 674 05b8 304043E2 	.LVL26:
 675              		.loc 1 280 0
 676              		beq	.L123
 677              	.L86:
 678 05bc FEFFFFEB 		.loc 1 284 0
 679              		ldr	r1, .L131+28
 680 05c0 FF0000E2 		ldr	r3, [r1, #0]
 681 05c4 0000C7E5 		ldr	r2, [r9, #0]
 682              		cmp	r0, r3
 683 05c8 001096E5 		movlt	ip, r0
 684              		movge	ip, r3
 685 05cc 8421A0E1 		cmp	ip, r2
 686 05d0 8430A0E1 		beq	.L115
 687 05d4 023083E0 		.loc 1 285 0
 688              		ldr	r3, .L131+12
 689 05d8 0120D0E7 		.loc 1 286 0
 690 05dc 040012E3 		rsb	r2, ip, #8064
 691              		.loc 1 285 0
 692 05e0 033080E0 		str	ip, [r3, #0]
 693              		.loc 1 286 0
 694 05e4 F3FFFF1A 		add	r2, r2, #26
 695              		ldr	r3, .L131+32
 696              		mov	r2, r2, asl #4
 697              		.loc 1 287 0
 698 05e8 560055E3 		mov	r1, ip
 699              		.loc 1 286 0
 700 05ec 0400A0E1 		str	r2, [r3, #0]
 701              		.loc 1 287 0
 702              		mov	r0, #2
 703 05f0 A400000A 	.LVL27:
 704              		bl	EE_Write
 705              		b	.L115
 706 05f4 2C139FE5 	.LVL28:
 707 05f8 003091E5 	.L67:
 708 05fc 002099E5 		mov	r4, #0
 709 0600 030050E1 	.LVL29:
 710 0604 00C0A0B1 		b	.L89
 711 0608 03C0A0A1 	.LVL30:
 712 060c 02005CE1 	.L124:
 713 0610 36FFFF0A 	.LBB63:
 714              	.LBB64:
 715 0614 FC329FE5 	.LBB65:
 716              	.LBB66:
 717 0618 7E2D6CE2 		.loc 1 118 0
 718              		sub	r4, r3, #48
 719 061c 00C083E5 	.LVL31:
 720              	.L89:
 721 0620 1A2082E2 	.LBE66:
 722 0624 00339FE5 		.loc 1 115 0
 723 0628 0222A0E1 		bl	getchar
 724              	.LVL32:
 725 062c 0C10A0E1 	.LBB67:
 726              		and	r0, r0, #255
 727 0630 002083E5 		strb	r0, [r7, #0]
 728              		.loc 1 116 0
 729 0634 0200A0E3 		ldr	r1, [r6, #0]
 730              		.loc 1 118 0
 731 0638 FEFFFFEB 		mov	r2, r4, asl #3
 732 063c 2BFFFFEA 		mov	r3, r4, asl #1
 733              		add	r3, r3, r2
 734              		.loc 1 116 0
 735 0640 0040A0E3 		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 736              		tst	r2, #4
 737 0644 000000EA 		.loc 1 118 0
 738              		add	r3, r0, r3
 739              		.loc 1 116 0
 740              		bne	.L124
 741              	.LBE67:
 742              	.LBE65:
 743              	.LBE64:
 744              	.LBE63:
 745 0648 304043E2 		.loc 1 293 0
 746              		ldr	r2, [r8, #0]
 747              		and	r3, r4, #255
 748              		cmp	r3, r2
 749              		bne	.L115
 750 064c FEFFFFEB 		.loc 1 294 0
 751              		ldr	r1, .L131+72
 752              		.loc 1 295 0
 753 0650 FF0000E2 		cmp	r5, #72
 754 0654 0000C7E5 		.loc 1 294 0
 755              		ldr	r0, [r1, #0]
 756 0658 001096E5 	.LVL33:
 757              		.loc 1 295 0
 758 065c 8421A0E1 		beq	.L125
 759 0660 8430A0E1 	.L93:
 760 0664 023083E0 		.loc 1 297 0
 761              		mov	r1, r0
 762 0668 0120D0E7 		ldr	r0, .L131+76
 763 066c 040012E3 	.LVL34:
 764              		bl	rprintf
 765 0670 033080E0 	.LVL35:
 766              		b	.L115
 767 0674 F3FFFF1A 	.LVL36:
 768              	.L66:
 769              		.loc 1 304 0
 770              		mov	r4, #0
 771              	.LVL37:
 772              		b	.L99
 773 0678 002098E5 	.LVL38:
 774 067c FF3004E2 	.L126:
 775 0680 020053E1 	.LBB68:
 776 0684 19FFFF1A 	.LBB69:
 777              	.LBB70:
 778 0688 C4129FE5 	.LBB71:
 779              		.loc 1 118 0
 780 068c 480055E3 		sub	r4, r3, #48
 781              	.LVL39:
 782 0690 000091E5 	.L99:
 783              	.LBE71:
 784              		.loc 1 115 0
 785 0694 7600000A 		bl	getchar
 786              	.LVL40:
 787              	.LBB72:
 788 0698 0010A0E1 		and	r0, r0, #255
 789 069c B4029FE5 		strb	r0, [r7, #0]
 790              		.loc 1 116 0
 791 06a0 FEFFFFEB 		ldr	r1, [r6, #0]
 792              		.loc 1 118 0
 793 06a4 11FFFFEA 		mov	r2, r4, asl #3
 794              		mov	r3, r4, asl #1
 795              		add	r3, r3, r2
 796              		.loc 1 116 0
 797 06a8 0040A0E3 		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 798              		tst	r2, #4
 799 06ac 000000EA 		.loc 1 118 0
 800              		add	r3, r0, r3
 801              		.loc 1 116 0
 802              		bne	.L126
 803              	.LBE72:
 804              	.LBE70:
 805              	.LBE69:
 806              	.LBE68:
 807 06b0 304043E2 		.loc 1 308 0
 808              		ldr	r2, [r8, #0]
 809              		and	r3, r4, #255
 810              		cmp	r3, r2
 811              		bne	.L115
 812 06b4 FEFFFFEB 		.loc 1 309 0
 813              		ldr	r0, .L131+20
 814              		ldr	r3, [r0, #0]
 815 06b8 FF0000E2 		ldr	r2, .L131+20
 816 06bc 0000C7E5 		orr	r3, r3, #1
 817              		.loc 1 310 0
 818 06c0 001096E5 		mov	r1, r3
 819              		.loc 1 309 0
 820 06c4 8421A0E1 		str	r3, [r2, #0]
 821 06c8 8430A0E1 		.loc 1 310 0
 822 06cc 023083E0 		mov	r0, #6
 823              		bl	EE_Write
 824 06d0 0120D0E7 		.loc 1 312 0
 825 06d4 040012E3 		ldr	r3, [r9, #0]
 826              		.loc 1 311 0
 827 06d8 033080E0 		mvn	r1, #0
 828              		ldr	r2, [r1, #-3023]
 829 06dc F3FFFF1A 		.loc 1 312 0
 830              		rsb	r3, r3, #8064
 831              		add	r3, r3, #26
 832              		ldr	r0, .L131+32
 833              		.loc 1 311 0
 834              		orr	r2, r2, #262144
 835 06e0 002098E5 		.loc 1 312 0
 836 06e4 FF3004E2 		mov	r3, r3, asl #4
 837 06e8 020053E1 		.loc 1 311 0
 838 06ec FFFEFF1A 		str	r2, [r1, #-3023]
 839              		.loc 1 312 0
 840 06f0 28029FE5 		str	r3, [r0, #0]
 841 06f4 003090E5 		b	.L115
 842 06f8 20229FE5 	.LVL41:
 843 06fc 013083E3 	.L68:
 844              		.loc 1 297 0
 845 0700 0310A0E1 		mov	r4, #0
 846              	.LVL42:
 847 0704 003082E5 		b	.L95
 848              	.LVL43:
 849 0708 0600A0E3 	.L127:
 850 070c FEFFFFEB 	.LBB73:
 851              	.LBB74:
 852 0710 003099E5 	.LBB75:
 853              	.LBB76:
 854 0714 0010E0E3 		.loc 1 118 0
 855 0718 CF2B11E5 		sub	r4, r3, #48
 856              	.LVL44:
 857 071c 7E3D63E2 	.L95:
 858 0720 1A3083E2 	.LBE76:
 859 0724 00029FE5 		.loc 1 115 0
 860              		bl	getchar
 861 0728 012782E3 	.LVL45:
 862              	.LBB77:
 863 072c 0332A0E1 		and	r0, r0, #255
 864              		strb	r0, [r7, #0]
 865 0730 CF2B01E5 		.loc 1 116 0
 866              		ldr	r1, [r6, #0]
 867 0734 003080E5 		.loc 1 118 0
 868 0738 ECFEFFEA 		mov	r2, r4, asl #3
 869              		mov	r3, r4, asl #1
 870              		add	r3, r3, r2
 871              		.loc 1 116 0
 872 073c 0040A0E3 		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 873              		tst	r2, #4
 874 0740 000000EA 		.loc 1 118 0
 875              		add	r3, r0, r3
 876              		.loc 1 116 0
 877              		bne	.L127
 878              	.LBE77:
 879              	.LBE75:
 880              	.LBE74:
 881              	.LBE73:
 882 0744 304043E2 		.loc 1 301 0
 883              		ldr	r2, [r8, #0]
 884              		and	r3, r4, #255
 885              		cmp	r3, r2
 886              		bne	.L115
 887 0748 FEFFFFEB 		.loc 1 302 0
 888              		ldr	r2, .L131+20
 889              		ldr	r3, [r2, #0]
 890 074c FF0000E2 		bic	r3, r3, #1
 891 0750 0000C7E5 		str	r3, [r2, #0]
 892              		.loc 1 303 0
 893 0754 001096E5 		mov	r1, r3
 894              		mov	r0, #6
 895 0758 8421A0E1 		bl	EE_Write
 896 075c 8430A0E1 		.loc 1 304 0
 897 0760 023083E0 		mvn	r2, #0
 898              		ldr	r3, [r2, #-3023]
 899 0764 0120D0E7 		bic	r3, r3, #262144
 900 0768 040012E3 		str	r3, [r2, #-3023]
 901              		b	.L115
 902 076c 033080E0 	.LVL46:
 903              	.L117:
 904 0770 F3FFFF1A 		.loc 1 247 0
 905              		mov	r4, #0
 906              	.LVL47:
 907              		b	.L51
 908              	.LVL48:
 909              	.L128:
 910 0774 002098E5 	.LBB78:
 911 0778 FF3004E2 	.LBB79:
 912 077c 020053E1 		.loc 1 118 0
 913 0780 DAFEFF1A 		sub	r4, r3, #48
 914              	.LVL49:
 915 0784 94219FE5 	.L51:
 916 0788 003092E5 	.LBE79:
 917 078c 0130C3E3 		.loc 1 115 0
 918 0790 003082E5 		bl	getchar
 919              	.LVL50:
 920 0794 0310A0E1 	.LBB80:
 921 0798 0600A0E3 		and	r0, r0, #255
 922 079c FEFFFFEB 		strb	r0, [r7, #0]
 923              		.loc 1 116 0
 924 07a0 0020E0E3 		ldr	r1, [r6, #0]
 925 07a4 CF3B12E5 		.loc 1 118 0
 926 07a8 0137C3E3 		mov	r2, r4, asl #3
 927 07ac CF3B02E5 		mov	r3, r4, asl #1
 928 07b0 CEFEFFEA 		add	r3, r3, r2
 929              		.loc 1 116 0
 930              		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 931              		tst	r2, #4
 932 07b4 0040A0E3 		.loc 1 118 0
 933              		add	r3, r0, r3
 934 07b8 000000EA 		.loc 1 116 0
 935              		bne	.L128
 936              	.LBE80:
 937              	.LBE78:
 938              		.loc 1 249 0
 939              		ldr	r1, [r8, #0]
 940 07bc 304043E2 		.loc 1 248 0
 941              		and	r3, r4, #255
 942              	.LVL51:
 943              		.loc 1 249 0
 944              		cmp	r3, r1
 945 07c0 FEFFFFEB 		cmpne	r3, #253
 946              		bne	.L115
 947              		.loc 1 250 0
 948 07c4 FF0000E2 		cmp	r0, #32
 949 07c8 0000C7E5 		.loc 1 261 0
 950              		movne	r5, r1
 951 07cc 001096E5 	.LVL52:
 952              		.loc 1 250 0
 953 07d0 8421A0E1 		beq	.L129
 954 07d4 8430A0E1 	.L62:
 955 07d8 023083E0 		.loc 1 262 0
 956              		mov	r1, r5
 957 07dc 0120D0E7 		ldr	r0, .L131+80
 958 07e0 040012E3 		bl	rprintf
 959              	.LVL53:
 960 07e4 033080E0 		b	.L115
 961              	.LVL54:
 962 07e8 F3FFFF1A 	.L129:
 963              		.loc 1 250 0
 964              		mov	r5, #0
 965              	.LVL55:
 966 07ec 001098E5 		b	.L57
 967              	.LVL56:
 968 07f0 FF3004E2 	.L130:
 969              	.LBB81:
 970              	.LBB82:
 971 07f4 010053E1 		.loc 1 118 0
 972 07f8 FD005313 		sub	r5, r3, #48
 973 07fc BBFEFF1A 	.LVL57:
 974              	.L57:
 975 0800 200050E3 	.LBE82:
 976              		.loc 1 115 0
 977 0804 0150A011 		bl	getchar
 978              	.LVL58:
 979              	.LBB83:
 980 0808 0300000A 		and	r0, r0, #255
 981              		strb	r0, [r7, #0]
 982              		.loc 1 116 0
 983 080c 0510A0E1 		ldr	r1, [r6, #0]
 984 0810 44019FE5 		.loc 1 118 0
 985 0814 FEFFFFEB 		mov	r2, r5, asl #3
 986              		mov	r3, r5, asl #1
 987 0818 B4FEFFEA 		add	r3, r3, r2
 988              		.loc 1 116 0
 989              		ldrb	r2, [r0, r1]	@ zero_extendqisi2
 990              		tst	r2, #4
 991 081c 0050A0E3 		.loc 1 118 0
 992              		add	r3, r0, r3
 993 0820 000000EA 		.loc 1 116 0
 994              		bne	.L130
 995              	.LBE83:
 996              	.LBE81:
 997              		.loc 1 252 0
 998              		ands	r1, r5, #255
 999 0824 305043E2 		.loc 1 258 0
 1000              		ldreq	r5, [r8, #0]
 1001              	.LVL59:
 1002              		.loc 1 252 0
 1003              		beq	.L62
 1004 0828 FEFFFFEB 		.loc 1 255 0
 1005              		mov	r0, #0
 1006              		.loc 1 251 0
 1007 082c FF0000E2 		mov	r5, r1
 1008 0830 0000C7E5 		.loc 1 254 0
 1009              		str	r1, [r8, #0]
 1010 0834 001096E5 		.loc 1 255 0
 1011              		bl	EE_Write
 1012 0838 8521A0E1 		b	.L62
 1013 083c 8530A0E1 	.LVL60:
 1014 0840 023083E0 	.L125:
 1015              		.loc 1 296 0
 1016 0844 0120D0E7 		bl	__floatsisf
 1017 0848 040012E3 	.LVL61:
 1018              		ldr	r1, [fp, #0]	@ float
 1019 084c 033080E0 		bl	__mulsf3
 1020              		bl	__fixsfsi
 1021 0850 F3FFFF1A 		b	.L93
 1022              	.LVL62:
 1023              	.L123:
 1024              		.loc 1 281 0
 1025 0854 FF1015E2 		bl	__floatsisf
 1026              	.LVL63:
 1027 0858 00509805 		ldr	r1, [fp, #0]	@ float
 1028              		bl	__divsf3
 1029              		bl	__fixunssfsi
 1030 085c EAFFFF0A 		b	.L86
 1031              	.LVL64:
 1032 0860 0000A0E3 	.L78:
 1033              		.loc 1 270 0
 1034 0864 0150A0E1 		and	r0, r3, #1
 1035              		orr	r0, r0, r3, lsr #1
 1036 0868 001088E5 		bl	__floatsisf
 1037              		mov	r1, r0
 1038 086c FEFFFFEB 		bl	__addsf3
 1039 0870 E5FFFFEA 		b	.L77
 1040              	.LVL65:
 1041              	.L42:
 1042              		.loc 1 235 0
 1043 0874 FEFFFFEB 		and	r0, r3, #1
 1044              		orr	r0, r0, r3, lsr #1
 1045 0878 00109BE5 		bl	__floatsisf
 1046 087c FEFFFFEB 		mov	r1, r0
 1047 0880 FEFFFFEB 		bl	__addsf3
 1048 0884 83FFFFEA 		b	.L41
 1049              	.L116:
 1050              		.loc 1 223 0
 1051              		bl	EE_Format
 1052 0888 FEFFFFEB 		.loc 1 224 0
 1053              		mov	r1, r6
 1054 088c 00109BE5 		mov	r0, #0
 1055 0890 FEFFFFEB 		bl	EE_Write
 1056 0894 FEFFFFEB 		.loc 1 225 0
 1057 0898 55FFFFEA 		mov	r1, #2192
 1058              		add	r1, r1, #8
 1059              		mov	r0, #2
 1060              		bl	EE_Write
 1061 089c 010003E2 		.loc 1 226 0
 1062 08a0 A30080E1 		mov	r1, #26880
 1063 08a4 FEFFFFEB 		mov	r0, r5
 1064 08a8 0010A0E1 		add	r1, r1, #56
 1065 08ac FEFFFFEB 		bl	EE_Write
 1066 08b0 DBFEFFEA 		.loc 1 227 0
 1067              		mov	r1, #0
 1068              		mov	r0, #6
 1069              		bl	EE_Write
 1070 08b4 010003E2 		b	.L39
 1071 08b8 A30080E1 	.L132:
 1072 08bc FEFFFFEB 		.align	2
 1073 08c0 0010A0E1 	.L131:
 1074 08c4 FEFFFFEB 		.word	Timer0_IRQ_Handler
 1075 08c8 69FEFFEA 		.word	IRQ
 1076              		.word	MyAddress
 1077              		.word	HV_Setting
 1078 08cc FEFFFFEB 		.word	ADC2HV
 1079              		.word	Flags
 1080 08d0 0610A0E1 		.word	Code2Voltage
 1081 08d4 0000A0E3 		.word	MaxADC
 1082 08d8 FEFFFFEB 		.word	integral
 1083              		.word	ProgramOk
 1084 08dc 891EA0E3 		.word	__ctype_ptr
 1085 08e0 081081E2 		.word	NextChar
 1086 08e4 0200A0E3 		.word	.LC2
 1087 08e8 FEFFFFEB 		.word	adc_data
 1088              		.word	.LC3
 1089 08ec 691CA0E3 		.word	Temperature
 1090 08f0 0500A0E1 		.word	1321528399
 1091 08f4 381081E2 		.word	.LC4
 1092 08f8 FEFFFFEB 		.word	HV_Measured
 1093              		.word	.LC1
 1094 08fc 0010A0E3 		.word	.LC0
 1095 0900 0600A0E3 	.LFE7:
 1097 0908 45FEFFEA 		.data
 1098              		.align	2
 1101 090c 00000000 	input_index.2226:
 1102 0910 00000000 		.word	1
 1103 0914 00000000 		.comm	IRQ,4,4
 1104 0918 00000000 		.comm	SWI,4,4
 1105 091c 00000000 		.comm	FIQ,4,4
 1106 0920 00000000 		.comm	UNDEF,4,4
 1107 0924 00000000 		.comm	PABORT,4,4
 1108 0928 00000000 		.comm	DABORT,4,4
 1109 092c 00000000 		.comm	ProgramOk,4,4
 1110 0930 00000000 		.comm	HV_Setting,4,4
 1111 0934 00000000 		.comm	Flags,4,4
 1112 0938 00000000 		.comm	MaxADC,4,4
 1113 093c 0C000000 		.comm	HV_Measured,4,4
 1114 0940 00000000 		.comm	integral,4,4
 1115 0944 10000000 		.comm	adc_data,16,4
 1116 0948 00000000 		.comm	Temperature,4,4
 1117 094c 4FECC44E 		.comm	NextChar,1,1
 1118 0950 1C000000 		.comm	MyAddress,4,4
 1119 0954 00000000 		.comm	ADC2HV,4,4
 1120 0958 04000000 		.comm	Code2Voltage,4,4
 1121 095c 00000000 		.comm	String,16,1
 1122              		.section	.debug_frame,"",%progbits
 1123              	.Lframe0:
 1124              		.4byte	.LECIE0-.LSCIE0
 1125              	.LSCIE0:
 1126              		.4byte	0xffffffff
 1127              		.byte	0x1
 1128              		.ascii	"\000"
 1129 0000 01000000 		.uleb128 0x1
 1130              		.sleb128 -4
 1131              		.byte	0xe
 1132              		.byte	0xc
 1133              		.uleb128 0xd
 1134              		.uleb128 0x0
 1135              		.align	2
 1136              	.LECIE0:
 1137              	.LSFDE0:
 1138              		.4byte	.LEFDE0-.LASFDE0
 1139              	.LASFDE0:
 1140              		.4byte	.Lframe0
 1141              		.4byte	.LFB2
 1142              		.4byte	.LFE2-.LFB2
 1143              		.align	2
 1144              	.LEFDE0:
 1145              	.LSFDE2:
 1146              		.4byte	.LEFDE2-.LASFDE2
 1147              	.LASFDE2:
 1148              		.4byte	.Lframe0
 1222              		.4byte	0x0
DEFINED SYMBOLS
                            *ABS*:00000000 HV_Converter.c
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:13     .text:00000000 FeedWatchdog
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:22     .text:00000000 $a
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:28     .text:00000004 Timer0_IRQ_Handler
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:208    .text:000001ac $d
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:1128   .data:00000000 input_index.2226
                            *COM*:00000004 HV_Measured
                            *COM*:00000010 adc_data
                            *COM*:00000004 HV_Setting
                            *COM*:00000004 integral
                            *COM*:00000004 ProgramOk
                            *COM*:00000004 Temperature
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:246    .text:000001c8 main
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:251    .text:000001c8 $a
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:403    .text:00000334 $d
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:424    .text:00000384 $a
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:1101   .text:0000090c $d
                            *COM*:00000004 IRQ
                            *COM*:00000004 MyAddress
                            *COM*:00000004 ADC2HV
                            *COM*:00000004 Flags
                            *COM*:00000004 Code2Voltage
                            *COM*:00000004 MaxADC
                            *COM*:00000001 NextChar
C:\DOCUME~1\David\LOCALS~1\Temp/ccY31cBf.s:1129   .data:00000000 $d
                            *COM*:00000004 SWI
                            *COM*:00000004 FIQ
                            *COM*:00000004 UNDEF
                            *COM*:00000004 PABORT
                            *COM*:00000004 DABORT
                            *COM*:00000010 String

UNDEFINED SYMBOLS
__floatsisf
__addsf3
__mulsf3
__divsf3
__fixsfsi
__extendsfdf2
__adddf3
__fixunsdfsi
__fixunssfsi
InitController
InitSerial
EE_Erased
EE_Read
received
getchar
EE_Write
rprintf
EE_Format
__ctype_ptr
