-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathjetiTelemetry.lst
1915 lines (1914 loc) · 72.8 KB
/
jetiTelemetry.lst
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1 .file "jetiTelemetry.c"
9 .Ltext0:
10 .global jetiAlarm
11 .bss
14 jetiAlarm:
15 0000 00 .space 1
16 .global jetiAlarmType
19 jetiAlarmType:
20 0001 00 .space 1
21 .global jetiTriggerTextSync
24 jetiTriggerTextSync:
25 0002 00 .space 1
26 .global jetiKeyChanged
29 jetiKeyChanged:
30 0003 00 .space 1
31 .global jetiKey
34 jetiKey:
35 0004 00 .space 1
36 .text
37 .align 2
38 .global jetiSetKeyChanged
40 jetiSetKeyChanged:
41 .LFB2:
42 .file 1 "jetiTelemetry.c"
1:jetiTelemetry.c **** /*
2:jetiTelemetry.c ****
3:jetiTelemetry.c **** Copyright (c) 2013, Ascending Technologies GmbH
4:jetiTelemetry.c **** All rights reserved.
5:jetiTelemetry.c ****
6:jetiTelemetry.c **** Redistribution and use in source and binary forms, with or without
7:jetiTelemetry.c **** modification, are permitted provided that the following conditions are met:
8:jetiTelemetry.c ****
9:jetiTelemetry.c **** * Redistributions of source code must retain the above copyright notice,
10:jetiTelemetry.c **** this list of conditions and the following disclaimer.
11:jetiTelemetry.c **** * Redistributions in binary form must reproduce the above copyright
12:jetiTelemetry.c **** notice, this list of conditions and the following disclaimer in the
13:jetiTelemetry.c **** documentation and/or other materials provided with the distribution.
14:jetiTelemetry.c ****
15:jetiTelemetry.c **** THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY
16:jetiTelemetry.c **** EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17:jetiTelemetry.c **** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18:jetiTelemetry.c **** DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY
19:jetiTelemetry.c **** DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20:jetiTelemetry.c **** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
21:jetiTelemetry.c **** SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
22:jetiTelemetry.c **** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23:jetiTelemetry.c **** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24:jetiTelemetry.c **** OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
25:jetiTelemetry.c **** DAMAGE.
26:jetiTelemetry.c ****
27:jetiTelemetry.c **** */
28:jetiTelemetry.c ****
29:jetiTelemetry.c **** #include "jetiTelemetry.h"
30:jetiTelemetry.c **** #include <string.h>
31:jetiTelemetry.c ****
32:jetiTelemetry.c **** struct JETI_VALUE jetiValues[15];
33:jetiTelemetry.c ****
34:jetiTelemetry.c **** unsigned char jetiName[10];
35:jetiTelemetry.c ****
36:jetiTelemetry.c **** unsigned char jetiDisplayText[32];
37:jetiTelemetry.c ****
38:jetiTelemetry.c **** unsigned char jetiAlarm=0;
39:jetiTelemetry.c **** unsigned char jetiAlarmType=0;
40:jetiTelemetry.c **** unsigned char jetiTriggerTextSync=0;
41:jetiTelemetry.c ****
42:jetiTelemetry.c **** unsigned char jetiKeyChanged=0;
43:jetiTelemetry.c **** unsigned char jetiKey=0;
44:jetiTelemetry.c ****
45:jetiTelemetry.c ****
46:jetiTelemetry.c **** void jetiSetKeyChanged(unsigned char key)
47:jetiTelemetry.c **** {
43 king.
44 @ args = 0, pretend = 0, frame = 4
45 @ frame_needed = 1, uses_anonymous_args = 0
46 mov ip, sp
47 0000 0DC0A0E1 .LCFI0:
48 stmfd sp!, {fp, ip, lr, pc}
49 0004 00D82DE9 .LCFI1:
50 sub fp, ip, #4
51 0008 04B04CE2 .LCFI2:
52 sub sp, sp, #4
53 000c 04D04DE2 .LCFI3:
54 mov r3, r0
55 0010 0030A0E1 strb r3, [fp, #-16]
56 0014 10304BE5 .loc 1 48 0
48:jetiTelemetry.c **** jetiKey=key;
57 ldrb r3, [fp, #-16]
58 0018 1C209FE5 strb r3, [r2, #0]
59 001c 10305BE5 .loc 1 49 0
60 0020 0030C2E5 ldr r2, .L3+4
49:jetiTelemetry.c **** jetiKeyChanged=1;
61 r3, #1
62 0024 14209FE5 strb r3, [r2, #0]
63 0028 0130A0E3 .loc 1 50 0
64 002c 0030C2E5 sub sp, fp, #12
50:jetiTelemetry.c **** }
65 fd sp, {fp, sp, lr}
66 0030 0CD04BE2 bx lr
67 0034 00689DE8 .L4:
68 0038 1EFF2FE1 .align 2
69 .L3:
70 .word jetiKey
71 .word jetiKeyChanged
72 003c 00000000 .LFE2:
74 .align 2
75 .global jetiCheckForKeyChange
77 jetiCheckForKeyChange:
78 .LFB3:
79 .loc 1 54 0
80 @ Function supports interworking.
51:jetiTelemetry.c ****
52:jetiTelemetry.c ****
53:jetiTelemetry.c **** unsigned char jetiCheckForKeyChange(void)
54:jetiTelemetry.c **** {
81 tend = 0, frame = 4
82 @ frame_needed = 1, uses_anonymous_args = 0
83 mov ip, sp
84 .LCFI4:
85 0044 0DC0A0E1 stmfd sp!, {fp, ip, lr, pc}
86 .LCFI5:
87 0048 00D82DE9 sub fp, ip, #4
88 .LCFI6:
89 004c 04B04CE2 sub sp, sp, #4
90 .LCFI7:
91 0050 04D04DE2 .loc 1 55 0
92 ldr r3, .L10
55:jetiTelemetry.c **** if (jetiKeyChanged)
93 3, #0] @ zero_extendqisi2
94 0054 40309FE5 cmp r3, #0
95 0058 0030D3E5 beq .L6
96 005c 000053E3 .loc 1 57 0
97 0060 0600000A ldr r2, .L10
56:jetiTelemetry.c **** {
57:jetiTelemetry.c **** jetiKeyChanged=0;
98 r3, #0
99 0064 30209FE5 strb r3, [r2, #0]
100 0068 0030A0E3 .loc 1 58 0
101 006c 0030C2E5 ldr r3, .L10+4
58:jetiTelemetry.c **** return jetiKey;
102 b r3, [r3, #0] @ zero_extendqisi2
103 0070 28309FE5 str r3, [fp, #-16]
104 0074 0030D3E5 b .L8
105 0078 10300BE5 .L6:
106 007c 010000EA .loc 1 60 0
107 mov r3, #0
59:jetiTelemetry.c **** }else
60:jetiTelemetry.c **** return 0;
108 3, [fp, #-16]
109 0080 0030A0E3 .L8:
110 0084 10300BE5 ldr r3, [fp, #-16]
111 .loc 1 61 0
112 0088 10301BE5 mov r0, r3
61:jetiTelemetry.c **** }
113 sp, fp, #12
114 008c 0300A0E1 ldmfd sp, {fp, sp, lr}
115 0090 0CD04BE2 bx lr
116 0094 00689DE8 .L11:
117 0098 1EFF2FE1 .align 2
118 .L10:
119 .word jetiKeyChanged
120 .word jetiKey
121 009c 00000000 .LFE3:
123 .align 2
124 .global jetiSetAlarm
126 jetiSetAlarm:
127 .LFB4:
128 .loc 1 63 0
129 @ Function supports interworking.
62:jetiTelemetry.c **** unsigned char jetiSetAlarm(unsigned char alarm, unsigned alarmType)
63:jetiTelemetry.c **** {
130 end = 0, frame = 12
131 @ frame_needed = 1, uses_anonymous_args = 0
132 mov ip, sp
133 .LCFI8:
134 00a4 0DC0A0E1 stmfd sp!, {fp, ip, lr, pc}
135 .LCFI9:
136 00a8 00D82DE9 sub fp, ip, #4
137 .LCFI10:
138 00ac 04B04CE2 sub sp, sp, #12
139 .LCFI11:
140 00b0 0CD04DE2 mov r3, r0
141 str r1, [fp, #-20]
142 00b4 0030A0E1 strb r3, [fp, #-16]
143 00b8 14100BE5 .loc 1 64 0
144 00bc 10304BE5 ldrb r3, [fp, #-16] @ zero_extendqisi2
64:jetiTelemetry.c **** if (((alarm<'A')||(alarm>'Z')) && (alarm))
145 ls .L13
146 00c0 10305BE5 ldrb r3, [fp, #-16] @ zero_extendqisi2
147 00c4 400053E3 cmp r3, #90
148 00c8 0200009A bls .L15
149 00cc 10305BE5 .L13:
150 00d0 5A0053E3 ldrb r3, [fp, #-16] @ zero_extendqisi2
151 00d4 0500009A cmp r3, #0
152 beq .L15
153 00d8 10305BE5 .loc 1 65 0
154 00dc 000053E3 mov r3, #80
155 00e0 0200000A str r3, [fp, #-24]
65:jetiTelemetry.c **** return JETI_ERROR_ALARM_RANGE;
156 5:
157 00e4 5030A0E3 .loc 1 66 0
158 00e8 18300BE5 ldr r3, [fp, #-20]
159 00ec 0E0000EA cmp r3, #1
160 bls .L18
66:jetiTelemetry.c **** if (alarmType>1)
161 1 67 0
162 00f0 14301BE5 mov r3, #81
163 00f4 010053E3 str r3, [fp, #-24]
164 00f8 0200009A b .L17
67:jetiTelemetry.c **** return JETI_ERROR_ALARM_TYPE;
165 :
166 00fc 5130A0E3 .loc 1 68 0
167 0100 18300BE5 ldr r2, .L21
168 0104 080000EA ldrb r3, [fp, #-16]
169 strb r3, [r2, #0]
68:jetiTelemetry.c **** jetiAlarm=alarm;
170 1 69 0
171 0108 30209FE5 ldr r3, [fp, #-20]
172 010c 10305BE5 and r3, r3, #255
173 0110 0030C2E5 ldr r2, .L21+4
69:jetiTelemetry.c **** jetiAlarmType=alarmType;
174 b r3, [r2, #0]
175 0114 14301BE5 .loc 1 71 0
176 0118 FF3003E2 mov r3, #0
177 011c 20209FE5 str r3, [fp, #-24]
178 0120 0030C2E5 .L17:
70:jetiTelemetry.c ****
71:jetiTelemetry.c **** return JETI_NO_ERROR;
179 r3, [fp, #-24]
180 0124 0030A0E3 .loc 1 73 0
181 0128 18300BE5 mov r0, r3
182 sub sp, fp, #12
183 012c 18301BE5 ldmfd sp, {fp, sp, lr}
72:jetiTelemetry.c ****
73:jetiTelemetry.c **** }
184 r
185 0130 0300A0E1 .L22:
186 0134 0CD04BE2 .align 2
187 0138 00689DE8 .L21:
188 013c 1EFF2FE1 .word jetiAlarm
189 .word jetiAlarmType
190 .LFE4:
192 0140 00000000 .align 2
193 0144 00000000 .global jetiSetDeviceName
195 jetiSetDeviceName:
196 .LFB5:
197 .loc 1 76 0
198 @ Function supports interworking.
199 @ args = 0, pretend = 0, frame = 16
200 @ frame_needed = 1, uses_anonymous_args = 0
74:jetiTelemetry.c ****
75:jetiTelemetry.c **** unsigned char jetiSetDeviceName(char * name)
76:jetiTelemetry.c **** {
201 12:
202 stmfd sp!, {fp, ip, lr, pc}
203 .LCFI13:
204 sub fp, ip, #4
205 0148 0DC0A0E1 .LCFI14:
206 sub sp, sp, #16
207 014c 00D82DE9 .LCFI15:
208 str r0, [fp, #-28]
209 0150 04B04CE2 .loc 1 77 0
210 mov r3, #0
211 0154 10D04DE2 strb r3, [fp, #-21]
212 .loc 1 79 0
213 0158 1C000BE5 mov r3, #0
77:jetiTelemetry.c **** unsigned char nameLength=0;
214 , #-13]
215 015c 0030A0E3 .loc 1 81 0
216 0160 15304BE5 mov r3, #0
78:jetiTelemetry.c **** int i;
79:jetiTelemetry.c **** unsigned char error=JETI_NO_ERROR;
217 r r3, [fp, #-20]
218 0164 0030A0E3 b .L24
219 0168 0D304BE5 .L25:
80:jetiTelemetry.c ****
81:jetiTelemetry.c **** for (i=0;i<11;i++)
220 oc 1 82 0
221 016c 0030A0E3 ldr r3, [fp, #-20]
222 0170 14300BE5 mov r2, r3
223 0174 090000EA ldr r3, [fp, #-28]
224 add r3, r2, r3
82:jetiTelemetry.c **** if (name[i]==0)
225 r3, [r3, #0] @ zero_extendqisi2
226 0178 14301BE5 cmp r3, #0
227 017c 0320A0E1 beq .L26
228 0180 1C301BE5 .loc 1 81 0
229 0184 033082E0 ldr r3, [fp, #-20]
230 0188 0030D3E5 add r3, r3, #1
231 018c 000053E3 str r3, [fp, #-20]
232 0190 0500000A .L24:
233 ldr r3, [fp, #-20]
234 0194 14301BE5 cmp r3, #10
235 0198 013083E2 ble .L25
236 019c 14300BE5 .L26:
237 .loc 1 84 0
238 01a0 14301BE5 ldr r3, [fp, #-20]
239 01a4 0A0053E3 cmp r3, #10
240 01a8 F2FFFFDA bne .L28
241 .loc 1 85 0
83:jetiTelemetry.c **** break;
84:jetiTelemetry.c **** if (i==10)
242 b r3, [fp, #-13]
243 01ac 14301BE5 .L28:
244 01b0 0A0053E3 .loc 1 87 0
245 01b4 0100001A ldr r3, [fp, #-20]
85:jetiTelemetry.c **** error=JETI_ERROR_STRING_NAME;
246 b r3, [fp, #-21]
247 01b8 1330A0E3 .loc 1 89 0
248 01bc 0D304BE5 ldrb r1, [fp, #-21] @ zero_extendqisi2
249 ldr r3, .L31
86:jetiTelemetry.c ****
87:jetiTelemetry.c **** nameLength=i;
250 r2, [fp, #-28]
251 01c0 14301BE5 mov ip, r1
252 01c4 15304BE5 mov r0, r3
88:jetiTelemetry.c ****
89:jetiTelemetry.c **** memcpy(&jetiName[0],name,nameLength);
253 v r1, r2
254 01c8 15105BE5 mov r2, ip
255 01cc 28309FE5 bl memcpy
256 01d0 1C201BE5 .loc 1 91 0
257 01d4 01C0A0E1 ldrb r3, [fp, #-13] @ zero_extendqisi2
258 01d8 0300A0E1 .loc 1 92 0
259 01dc 0210A0E1 mov r0, r3
260 01e0 0C20A0E1 sub sp, fp, #12
261 01e4 FEFFFFEB ldmfd sp, {fp, sp, lr}
90:jetiTelemetry.c ****
91:jetiTelemetry.c **** return error;
262 32:
263 01e8 0D305BE5 .align 2
92:jetiTelemetry.c **** }
264 31:
265 01ec 0300A0E1 .word jetiName
266 01f0 0CD04BE2 .LFE5:
268 01f8 1EFF2FE1 .align 2
269 .global jetiActivateValue
271 jetiActivateValue:
272 01fc 00000000 .LFB6:
273 .loc 1 95 0
274 @ Function supports interworking.
275 @ args = 0, pretend = 0, frame = 8
276 @ frame_needed = 1, uses_anonymous_args = 0
277 mov ip, sp
278 .LCFI16:
279 stmfd sp!, {fp, ip, lr, pc}
93:jetiTelemetry.c ****
94:jetiTelemetry.c **** unsigned char jetiActivateValue(unsigned char id)
95:jetiTelemetry.c **** {
280 , ip, #4
281 .LCFI18:
282 sub sp, sp, #8
283 .LCFI19:
284 0200 0DC0A0E1 mov r3, r0
285 strb r3, [fp, #-16]
286 0204 00D82DE9 .loc 1 96 0
287 ldrb r3, [fp, #-16] @ zero_extendqisi2
288 0208 04B04CE2 cmp r3, #14
289 bls .L34
290 020c 08D04DE2 .loc 1 97 0
291 mov r3, #1
292 0210 0030A0E1 str r3, [fp, #-20]
293 0214 10304BE5 b .L36
96:jetiTelemetry.c **** if (id>14)
294 98 0
295 0218 10305BE5 ldrb r2, [fp, #-16] @ zero_extendqisi2
296 021c 0E0053E3 ldrb r3, [fp, #-16]
297 0220 0200009A add r3, r3, #1
97:jetiTelemetry.c **** return JETI_ERROR_ID_RANGE;
298 r1, r3, #255
299 0224 0130A0E3 ldr r0, .L38
300 0228 14300BE5 mov r3, r2
301 022c 0F0000EA mov r3, r3, asl #2
302 add r3, r3, r2
98:jetiTelemetry.c **** jetiValues[id].active=id+1;
303 r3, r3, asl #1
304 0230 10205BE5 add r3, r3, r2
305 0234 10305BE5 mov r3, r3, asl #1
306 0238 013083E2 add r2, r3, r0
307 023c FF1003E2 mov r3, r1
308 0240 3C009FE5 strb r3, [r2, #0]
309 0244 0230A0E1 .loc 1 100 0
310 0248 0331A0E1 mov r3, #0
311 024c 023083E0 str r3, [fp, #-20]
312 0250 8330A0E1 .L36:
313 0254 023083E0 ldr r3, [fp, #-20]
314 0258 8330A0E1 .loc 1 101 0
315 025c 002083E0 mov r0, r3
316 0260 0130A0E1 sub sp, fp, #12
317 0264 0030C2E5 ldmfd sp, {fp, sp, lr}
99:jetiTelemetry.c ****
100:jetiTelemetry.c **** return JETI_NO_ERROR;
318 align 2
319 0268 0030A0E3 .L38:
320 026c 14300BE5 .word jetiValues
321 .LFE6:
101:jetiTelemetry.c **** }
323 gn 2
324 0274 0300A0E1 .global jetiDeactivateValue
326 027c 00689DE8 jetiDeactivateValue:
327 0280 1EFF2FE1 .LFB7:
328 .loc 1 104 0
329 @ Function supports interworking.
330 @ args = 0, pretend = 0, frame = 8
331 0284 00000000 @ frame_needed = 1, uses_anonymous_args = 0
332 mov ip, sp
333 .LCFI20:
334 stmfd sp!, {fp, ip, lr, pc}
335 .LCFI21:
336 sub fp, ip, #4
337 .LCFI22:
338 sub sp, sp, #8
102:jetiTelemetry.c ****
103:jetiTelemetry.c **** unsigned char jetiDeactivateValue(unsigned char id)
104:jetiTelemetry.c **** {
339 , r0
340 strb r3, [fp, #-16]
341 .loc 1 105 0
342 ldrb r3, [fp, #-16] @ zero_extendqisi2
343 0288 0DC0A0E1 cmp r3, #14
344 bls .L41
345 028c 00D82DE9 .loc 1 106 0
346 mov r3, #1
347 0290 04B04CE2 str r3, [fp, #-20]
348 b .L43
349 0294 08D04DE2 .L41:
350 .loc 1 107 0
351 0298 0030A0E1 ldrb r2, [fp, #-16] @ zero_extendqisi2
352 029c 10304BE5 ldr r1, .L45
105:jetiTelemetry.c **** if (id>14)
353 ov r3, r3, asl #2
354 02a0 10305BE5 add r3, r3, r2
355 02a4 0E0053E3 mov r3, r3, asl #1
356 02a8 0200009A add r3, r3, r2
106:jetiTelemetry.c **** return JETI_ERROR_ID_RANGE;
357 r3, r3, asl #1
358 02ac 0130A0E3 add r2, r3, r1
359 02b0 14300BE5 mov r3, #0
360 02b4 0C0000EA strb r3, [r2, #0]
361 .loc 1 109 0
107:jetiTelemetry.c **** jetiValues[id].active=0;
362 r3, #0
363 02b8 10205BE5 str r3, [fp, #-20]
364 02bc 3C109FE5 .L43:
365 02c0 0230A0E1 ldr r3, [fp, #-20]
366 02c4 0331A0E1 .loc 1 110 0
367 02c8 023083E0 mov r0, r3
368 02cc 8330A0E1 sub sp, fp, #12
369 02d0 023083E0 ldmfd sp, {fp, sp, lr}
370 02d4 8330A0E1 bx lr
371 02d8 012083E0 .L46:
372 02dc 0030A0E3 .align 2
373 02e0 0030C2E5 .L45:
108:jetiTelemetry.c ****
109:jetiTelemetry.c **** return JETI_NO_ERROR;
374 alues
375 02e4 0030A0E3 .LFE7:
377 .align 2
378 02ec 14301BE5 .global jetiSetDecimalPoint
110:jetiTelemetry.c **** }
379 e jetiSetDecimalPoint, %function
380 02f0 0300A0E1 jetiSetDecimalPoint:
381 02f4 0CD04BE2 .LFB8:
382 02f8 00689DE8 .loc 1 113 0
383 02fc 1EFF2FE1 @ Function supports interworking.
384 @ args = 0, pretend = 0, frame = 12
385 @ frame_needed = 1, uses_anonymous_args = 0
386 mov ip, sp
387 0300 00000000 .LCFI24:
388 stmfd sp!, {fp, ip, lr, pc}
389 .LCFI25:
390 sub fp, ip, #4
391 .LCFI26:
392 sub sp, sp, #12
393 .LCFI27:
394 mov r3, r0
111:jetiTelemetry.c ****
112:jetiTelemetry.c **** unsigned char jetiSetDecimalPoint(unsigned char id, unsigned char decimalPoint)
113:jetiTelemetry.c **** {
395 b r3, [fp, #-16]
396 mov r3, r2
397 strb r3, [fp, #-20]
398 .loc 1 114 0
399 0304 0DC0A0E1 ldrb r3, [fp, #-16] @ zero_extendqisi2
400 cmp r3, #14
401 0308 00D82DE9 bls .L48
402 .loc 1 115 0
403 030c 04B04CE2 mov r3, #1
404 str r3, [fp, #-24]
405 0310 0CD04DE2 b .L50
406 .L48:
407 0314 0030A0E1 .loc 1 116 0
408 0318 0120A0E1 ldrb r3, [fp, #-20] @ zero_extendqisi2
409 031c 10304BE5 cmp r3, #3
410 0320 0230A0E1 bls .L51
411 0324 14304BE5 .loc 1 117 0
114:jetiTelemetry.c **** if (id>14)
412 r3, [fp, #-24]
413 0328 10305BE5 b .L50
414 032c 0E0053E3 .L51:
415 0330 0200009A .loc 1 118 0
115:jetiTelemetry.c **** return JETI_ERROR_ID_RANGE;
416 b r2, [fp, #-16] @ zero_extendqisi2
417 0334 0130A0E3 ldr r1, .L54
418 0338 18300BE5 mov r0, #17
419 033c 140000EA mov r3, r2
420 mov r3, r3, asl #2
116:jetiTelemetry.c **** if (decimalPoint>3)
421 r3, r3, r2
422 0340 14305BE5 mov r3, r3, asl #1
423 0344 030053E3 add r3, r3, r2
424 0348 0200009A mov r3, r3, asl #1
117:jetiTelemetry.c **** return JETI_ERROR_DECPOINT_RANGE;
425 r3, r3, r1
426 034c 3030A0E3 add r2, r3, r0
427 0350 18300BE5 ldrb r3, [fp, #-20]
428 0354 0E0000EA strb r3, [r2, #0]
429 .loc 1 119 0
118:jetiTelemetry.c **** jetiValues[id].decPoint=decimalPoint;
430 r3, #0
431 0358 10205BE5 str r3, [fp, #-24]
432 035c 44109FE5 .L50:
433 0360 1100A0E3 ldr r3, [fp, #-24]
434 0364 0230A0E1 .loc 1 120 0
435 0368 0331A0E1 mov r0, r3
436 036c 023083E0 sub sp, fp, #12
437 0370 8330A0E1 ldmfd sp, {fp, sp, lr}
438 0374 023083E0 bx lr
439 0378 8330A0E1 .L55:
440 037c 013083E0 .align 2
441 0380 002083E0 .L54:
442 0384 14305BE5 .word jetiValues
443 0388 0030C2E5 .LFE8:
119:jetiTelemetry.c **** return JETI_NO_ERROR;
444 DecimalPoint, .-jetiSetDecimalPoint
445 038c 0030A0E3 .align 2
446 0390 18300BE5 .global jetiSetValue30B
448 0394 18301BE5 jetiSetValue30B:
120:jetiTelemetry.c **** }
449 :
450 0398 0300A0E1 .loc 1 123 0
451 039c 0CD04BE2 @ Function supports interworking.
452 03a0 00689DE8 @ args = 0, pretend = 0, frame = 12
453 03a4 1EFF2FE1 @ frame_needed = 1, uses_anonymous_args = 0
454 mov ip, sp
455 .LCFI28:
456 stmfd sp!, {fp, ip, lr, pc}
457 03a8 00000000 .LCFI29:
458 sub fp, ip, #4
459 .LCFI30:
460 sub sp, sp, #12
461 .LCFI31:
462 mov r3, r0
463 str r1, [fp, #-20]
464 strb r3, [fp, #-16]
121:jetiTelemetry.c ****
122:jetiTelemetry.c **** unsigned char jetiSetValue30B(unsigned char id, int value)
123:jetiTelemetry.c **** {
465 drb r3, [fp, #-16] @ zero_extendqisi2
466 cmp r3, #14
467 bls .L57
468 .loc 1 125 0
469 03ac 0DC0A0E1 mov r3, #1
470 str r3, [fp, #-24]
471 03b0 00D82DE9 b .L59
472 .L57:
473 03b4 04B04CE2 .loc 1 127 0
474 ldr r3, [fp, #-20]
475 03b8 0CD04DE2 cmn r3, #-1073741823
476 bgt .L60
477 03bc 0030A0E1 ldr r3, [fp, #-20]
478 03c0 14100BE5 cmp r3, #-1073741824
479 03c4 10304BE5 bgt .L62
124:jetiTelemetry.c **** if (id>14)
480 28 0
481 03c8 10305BE5 mov r3, #32
482 03cc 0E0053E3 str r3, [fp, #-24]
483 03d0 0200009A b .L59
125:jetiTelemetry.c **** return JETI_ERROR_ID_RANGE;
484 :
485 03d4 0130A0E3 .loc 1 130 0
486 03d8 18300BE5 ldrb r2, [fp, #-16] @ zero_extendqisi2
487 03dc 480000EA ldr r1, .L66
488 mov r0, #16
126:jetiTelemetry.c ****
127:jetiTelemetry.c **** if ((value>=(1<<30)) || (value<=-(1<<30)))
489 r3, r2
490 03e0 14301BE5 mov r3, r3, asl #2
491 03e4 070173E3 add r3, r3, r2
492 03e8 020000CA mov r3, r3, asl #1
493 03ec 14301BE5 add r3, r3, r2
494 03f0 030153E3 mov r3, r3, asl #1
495 03f4 020000CA add r3, r3, r1
496 add r0, r3, r0
128:jetiTelemetry.c **** return JETI_ERROR_VALUE_RANGE;
497 , [fp, #-20] @ zero_extendqisi2
498 03f8 2030A0E3 mov r3, #0
499 03fc 18300BE5 mov r2, r3
500 0400 3F0000EA mov r3, r1
501 orr r3, r2, r3
129:jetiTelemetry.c ****
130:jetiTelemetry.c **** jetiValues[id].value=value;
502 r3, [r0, #2]
503 0404 10205BE5 ldrb r1, [fp, #-19] @ zero_extendqisi2
504 0408 08119FE5 mov r3, #0
505 040c 1000A0E3 mov r2, r3
506 0410 0230A0E1 mov r3, r1
507 0414 0331A0E1 orr r3, r2, r3
508 0418 023083E0 strb r3, [r0, #3]
509 041c 8330A0E1 ldrb r1, [fp, #-18] @ zero_extendqisi2
510 0420 023083E0 mov r3, #0
511 0424 8330A0E1 mov r2, r3
512 0428 013083E0 mov r3, r1
513 042c 000083E0 orr r3, r2, r3
514 0430 14105BE5 strb r3, [r0, #4]
515 0434 0030A0E3 ldrb r1, [fp, #-17] @ zero_extendqisi2
516 0438 0320A0E1 mov r3, #0
517 043c 0130A0E1 mov r2, r3
518 0440 033082E1 mov r3, r1
519 0444 0230C0E5 orr r3, r2, r3
520 0448 13105BE5 strb r3, [r0, #5]
521 044c 0030A0E3 .loc 1 131 0
522 0450 0320A0E1 ldrb r2, [fp, #-16] @ zero_extendqisi2
523 0454 0130A0E1 ldr r1, .L66
524 0458 033082E1 mov r0, #16
525 045c 0330C0E5 mov r3, r2
526 0460 12105BE5 mov r3, r3, asl #2
527 0464 0030A0E3 add r3, r3, r2
528 0468 0320A0E1 mov r3, r3, asl #1
529 046c 0130A0E1 add r3, r3, r2
530 0470 033082E1 mov r3, r3, asl #1
531 0474 0430C0E5 add r3, r3, r1
532 0478 11105BE5 add r3, r3, r0
533 047c 0030A0E3 ldrb r3, [r3, #0] @ zero_extendqisi2
534 0480 0320A0E1 cmp r3, #72
535 0484 0130A0E1 beq .L63
536 0488 033082E1 .loc 1 133 0
537 048c 0530C0E5 ldrb r2, [fp, #-16] @ zero_extendqisi2
131:jetiTelemetry.c **** if (jetiValues[id].varType!=JETI_VART_30B)
538 r2
539 0490 10205BE5 mov r3, r3, asl #2
540 0494 7C109FE5 add r3, r3, r2
541 0498 1000A0E3 mov r3, r3, asl #1
542 049c 0230A0E1 add r3, r3, r2
543 04a0 0331A0E1 mov r3, r3, asl #1
544 04a4 023083E0 add r3, r3, r1
545 04a8 8330A0E1 add r2, r3, r0
546 04ac 023083E0 mov r3, #72
547 04b0 8330A0E1 strb r3, [r2, #0]
548 04b4 013083E0 .L63:
549 04b8 003083E0 .loc 1 136 0
550 04bc 0030D3E5 mov r3, #0
551 04c0 480053E3 str r3, [fp, #-24]
552 04c4 0C00000A .L59:
132:jetiTelemetry.c **** {
133:jetiTelemetry.c **** jetiValues[id].varType=JETI_VART_30B;
553 -24]
554 04c8 10205BE5 .loc 1 138 0
555 04cc 44109FE5 mov r0, r3
556 04d0 1000A0E3 sub sp, fp, #12
557 04d4 0230A0E1 ldmfd sp, {fp, sp, lr}
558 04d8 0331A0E1 bx lr
559 04dc 023083E0 .L67:
560 04e0 8330A0E1 .align 2
561 04e4 023083E0 .L66:
562 04e8 8330A0E1 .word jetiValues
563 04ec 013083E0 .LFE9:
565 04f4 4830A0E3 .align 2
566 04f8 0030C2E5 .global jetiSetValue22B
134:jetiTelemetry.c **** }
135:jetiTelemetry.c ****
136:jetiTelemetry.c **** return JETI_NO_ERROR;
568 :
569 04fc 0030A0E3 .LFB10:
570 0500 18300BE5 .loc 1 141 0
571 @ Function supports interworking.
572 0504 18301BE5 @ args = 0, pretend = 0, frame = 12
137:jetiTelemetry.c ****
138:jetiTelemetry.c **** }
573 ame_needed = 1, uses_anonymous_args = 0
574 0508 0300A0E1 mov ip, sp
575 050c 0CD04BE2 .LCFI32:
576 0510 00689DE8 stmfd sp!, {fp, ip, lr, pc}
577 0514 1EFF2FE1 .LCFI33:
578 sub fp, ip, #4
579 .LCFI34:
580 sub sp, sp, #12
581 0518 00000000 .LCFI35:
582 mov r3, r0
583 str r1, [fp, #-20]
584 strb r3, [fp, #-16]
585 .loc 1 142 0
586 ldrb r3, [fp, #-16] @ zero_extendqisi2
587 cmp r3, #14
588 bls .L69
139:jetiTelemetry.c ****
140:jetiTelemetry.c **** unsigned char jetiSetValue22B(unsigned char id, int value)
141:jetiTelemetry.c **** {
589 ov r3, #1
590 str r3, [fp, #-24]
591 b .L71
592 .L69:
593 051c 0DC0A0E1 .loc 1 144 0
594 ldr r2, [fp, #-20]
595 0520 00D82DE9 mov r3, #8388608
596 sub r3, r3, #1
597 0524 04B04CE2 cmp r2, r3
598 bgt .L72
599 0528 0CD04DE2 ldr r3, [fp, #-20]
600 cmn r3, #8388608
601 052c 0030A0E1 bgt .L74
602 0530 14100BE5 .L72:
603 0534 10304BE5 .loc 1 145 0
142:jetiTelemetry.c **** if (id>14)
604 tr r3, [fp, #-24]
605 0538 10305BE5 b .L71
606 053c 0E0053E3 .L74:
607 0540 0200009A .loc 1 147 0
143:jetiTelemetry.c **** return JETI_ERROR_ID_RANGE;
608 b r2, [fp, #-16] @ zero_extendqisi2
609 0544 0130A0E3 ldr r1, .L78
610 0548 18300BE5 mov r0, #16
611 054c 4A0000EA mov r3, r2
612 mov r3, r3, asl #2
144:jetiTelemetry.c **** if ((value>=(1<<23)) || (value<=-(1<<23)))
613 r3, r3, r2
614 0550 14201BE5 mov r3, r3, asl #1
615 0554 0235A0E3 add r3, r3, r2
616 0558 013043E2 mov r3, r3, asl #1
617 055c 030052E1 add r3, r3, r1
618 0560 020000CA add r0, r3, r0
619 0564 14301BE5 ldrb r1, [fp, #-20] @ zero_extendqisi2
620 0568 020573E3 mov r3, #0
621 056c 020000CA mov r2, r3
622 mov r3, r1
145:jetiTelemetry.c **** return JETI_ERROR_VALUE_RANGE;
623 2, r3
624 0570 2030A0E3 strb r3, [r0, #2]
625 0574 18300BE5 ldrb r1, [fp, #-19] @ zero_extendqisi2
626 0578 3F0000EA mov r3, #0
627 mov r2, r3
146:jetiTelemetry.c ****
147:jetiTelemetry.c **** jetiValues[id].value=value;
628 r3, r1
629 057c 10205BE5 orr r3, r2, r3
630 0580 08119FE5 strb r3, [r0, #3]
631 0584 1000A0E3 ldrb r1, [fp, #-18] @ zero_extendqisi2
632 0588 0230A0E1 mov r3, #0
633 058c 0331A0E1 mov r2, r3
634 0590 023083E0 mov r3, r1
635 0594 8330A0E1 orr r3, r2, r3
636 0598 023083E0 strb r3, [r0, #4]
637 059c 8330A0E1 ldrb r1, [fp, #-17] @ zero_extendqisi2
638 05a0 013083E0 mov r3, #0
639 05a4 000083E0 mov r2, r3
640 05a8 14105BE5 mov r3, r1
641 05ac 0030A0E3 orr r3, r2, r3
642 05b0 0320A0E1 strb r3, [r0, #5]
643 05b4 0130A0E1 .loc 1 148 0
644 05b8 033082E1 ldrb r2, [fp, #-16] @ zero_extendqisi2
645 05bc 0230C0E5 ldr r1, .L78
646 05c0 13105BE5 mov r0, #16
647 05c4 0030A0E3 mov r3, r2
648 05c8 0320A0E1 mov r3, r3, asl #2
649 05cc 0130A0E1 add r3, r3, r2
650 05d0 033082E1 mov r3, r3, asl #1
651 05d4 0330C0E5 add r3, r3, r2
652 05d8 12105BE5 mov r3, r3, asl #1
653 05dc 0030A0E3 add r3, r3, r1
654 05e0 0320A0E1 add r3, r3, r0
655 05e4 0130A0E1 ldrb r3, [r3, #0] @ zero_extendqisi2
656 05e8 033082E1 cmp r3, #52
657 05ec 0430C0E5 beq .L75
658 05f0 11105BE5 .loc 1 150 0
659 05f4 0030A0E3 ldrb r2, [fp, #-16] @ zero_extendqisi2
660 05f8 0320A0E1 ldr r1, .L78
661 05fc 0130A0E1 mov r0, #16
662 0600 033082E1 mov r3, r2
663 0604 0530C0E5 mov r3, r3, asl #2
148:jetiTelemetry.c **** if (jetiValues[id].varType!=JETI_VART_22B)
664 add r3, r3, r2
665 0608 10205BE5 mov r3, r3, asl #1
666 060c 7C109FE5 add r3, r3, r1
667 0610 1000A0E3 add r2, r3, r0
668 0614 0230A0E1 mov r3, #52
669 0618 0331A0E1 strb r3, [r2, #0]
670 061c 023083E0 .L75:
671 0620 8330A0E1 .loc 1 153 0
672 0624 023083E0 mov r3, #0
673 0628 8330A0E1 str r3, [fp, #-24]
674 062c 013083E0 .L71:
675 0630 003083E0 ldr r3, [fp, #-24]
676 0634 0030D3E5 .loc 1 154 0
677 0638 340053E3 mov r0, r3
678 063c 0C00000A sub sp, fp, #12
149:jetiTelemetry.c **** {
150:jetiTelemetry.c **** jetiValues[id].varType=JETI_VART_22B;
679 sp, lr}
680 0640 10205BE5 bx lr
681 0644 44109FE5 .L79:
682 0648 1000A0E3 .align 2
683 064c 0230A0E1 .L78:
684 0650 0331A0E1 .word jetiValues
685 0654 023083E0 .LFE10:
687 065c 023083E0 .align 2
688 0660 8330A0E1 .global jetiSetValue6B
690 0668 002083E0 jetiSetValue6B:
691 066c 3430A0E3 .LFB11:
692 0670 0030C2E5 .loc 1 157 0
693 @ Function supports interworking.
151:jetiTelemetry.c **** }
152:jetiTelemetry.c ****
153:jetiTelemetry.c **** return JETI_NO_ERROR;
694 etend = 0, frame = 12
695 0674 0030A0E3 @ frame_needed = 1, uses_anonymous_args = 0
696 0678 18300BE5 mov ip, sp
697 .LCFI36:
698 067c 18301BE5 stmfd sp!, {fp, ip, lr, pc}
154:jetiTelemetry.c **** }
699 37:
700 0680 0300A0E1 sub fp, ip, #4
701 0684 0CD04BE2 .LCFI38:
702 0688 00689DE8 sub sp, sp, #12
703 068c 1EFF2FE1 .LCFI39:
704 mov r3, r0
705 str r1, [fp, #-20]
706 strb r3, [fp, #-16]
707 0690 00000000 .loc 1 158 0
708 ldrb r3, [fp, #-16] @ zero_extendqisi2
709 cmp r3, #14
710 bls .L81
711 .loc 1 159 0
712 mov r3, #1
713 str r3, [fp, #-24]
714 b .L83
155:jetiTelemetry.c ****
156:jetiTelemetry.c **** unsigned char jetiSetValue6B(unsigned char id, int value)
157:jetiTelemetry.c **** {
715 1 0
716 ldr r3, [fp, #-20]
717 cmp r3, #127
718 bgt .L84
719 0694 0DC0A0E1 ldr r3, [fp, #-20]
720 cmn r3, #128
721 0698 00D82DE9 bgt .L86
722 .L84:
723 069c 04B04CE2 .loc 1 162 0
724 mov r3, #32
725 06a0 0CD04DE2 str r3, [fp, #-24]
726 b .L83
727 06a4 0030A0E1 .L86:
728 06a8 14100BE5 .loc 1 164 0
729 06ac 10304BE5 ldrb r2, [fp, #-16] @ zero_extendqisi2
158:jetiTelemetry.c **** if (id>14)
730 mov r0, #16
731 06b0 10305BE5 mov r3, r2
732 06b4 0E0053E3 mov r3, r3, asl #2
733 06b8 0200009A add r3, r3, r2
159:jetiTelemetry.c **** return JETI_ERROR_ID_RANGE;
734 r3, r3, asl #1
735 06bc 0130A0E3 add r3, r3, r2
736 06c0 18300BE5 mov r3, r3, asl #1
737 06c4 480000EA add r3, r3, r1
738 add r0, r3, r0
160:jetiTelemetry.c ****
161:jetiTelemetry.c **** if ((value>=(1<<7)) || (value<=-(1<<7)))
739 r1, [fp, #-20] @ zero_extendqisi2
740 06c8 14301BE5 mov r3, #0
741 06cc 7F0053E3 mov r2, r3
742 06d0 020000CA mov r3, r1
743 06d4 14301BE5 orr r3, r2, r3
744 06d8 800073E3 strb r3, [r0, #2]
745 06dc 020000CA ldrb r1, [fp, #-19] @ zero_extendqisi2
746 mov r3, #0
162:jetiTelemetry.c **** return JETI_ERROR_VALUE_RANGE;
747 r3
748 06e0 2030A0E3 mov r3, r1
749 06e4 18300BE5 orr r3, r2, r3
750 06e8 3F0000EA strb r3, [r0, #3]
751 ldrb r1, [fp, #-18] @ zero_extendqisi2
163:jetiTelemetry.c ****
164:jetiTelemetry.c **** jetiValues[id].value=value;
752 r3, #0
753 06ec 10205BE5 mov r2, r3
754 06f0 08119FE5 mov r3, r1
755 06f4 1000A0E3 orr r3, r2, r3
756 06f8 0230A0E1 strb r3, [r0, #4]
757 06fc 0331A0E1 ldrb r1, [fp, #-17] @ zero_extendqisi2
758 0700 023083E0 mov r3, #0
759 0704 8330A0E1 mov r2, r3
760 0708 023083E0 mov r3, r1
761 070c 8330A0E1 orr r3, r2, r3
762 0710 013083E0 strb r3, [r0, #5]
763 0714 000083E0 .loc 1 165 0
764 0718 14105BE5 ldrb r2, [fp, #-16] @ zero_extendqisi2
765 071c 0030A0E3 ldr r1, .L90
766 0720 0320A0E1 mov r0, #16
767 0724 0130A0E1 mov r3, r2
768 0728 033082E1 mov r3, r3, asl #2
769 072c 0230C0E5 add r3, r3, r2
770 0730 13105BE5 mov r3, r3, asl #1
771 0734 0030A0E3 add r3, r3, r2
772 0738 0320A0E1 mov r3, r3, asl #1
773 073c 0130A0E1 add r3, r3, r1
774 0740 033082E1 add r3, r3, r0
775 0744 0330C0E5 ldrb r3, [r3, #0] @ zero_extendqisi2
776 0748 12105BE5 cmp r3, #16
777 074c 0030A0E3 beq .L87
778 0750 0320A0E1 .loc 1 167 0
779 0754 0130A0E1 ldrb r2, [fp, #-16] @ zero_extendqisi2
780 0758 033082E1 ldr r1, .L90
781 075c 0430C0E5 mov r0, #16
782 0760 11105BE5 mov r3, r2
783 0764 0030A0E3 mov r3, r3, asl #2
784 0768 0320A0E1 add r3, r3, r2
785 076c 0130A0E1 mov r3, r3, asl #1
786 0770 033082E1 add r3, r3, r2
787 0774 0530C0E5 mov r3, r3, asl #1
165:jetiTelemetry.c **** if (jetiValues[id].varType!=JETI_VART_6B)
788 r3, #16
789 0778 10205BE5 strb r3, [r2, #0]
790 077c 7C109FE5 .L87:
791 0780 1000A0E3 .loc 1 170 0
792 0784 0230A0E1 mov r3, #0
793 0788 0331A0E1 str r3, [fp, #-24]
794 078c 023083E0 .L83:
795 0790 8330A0E1 ldr r3, [fp, #-24]
796 0794 023083E0 .loc 1 171 0
797 0798 8330A0E1 mov r0, r3
798 079c 013083E0 sub sp, fp, #12
799 07a0 003083E0 ldmfd sp, {fp, sp, lr}
800 07a4 0030D3E5 bx lr
801 07a8 100053E3 .L91:
802 07ac 0C00000A .align 2
166:jetiTelemetry.c **** {
167:jetiTelemetry.c **** jetiValues[id].varType=JETI_VART_6B;
803 tiValues
804 07b0 10205BE5 .LFE11:
806 07b8 1000A0E3 .align 2
807 07bc 0230A0E1 .global jetiSetValue14B
809 07c4 023083E0 jetiSetValue14B:
810 07c8 8330A0E1 .LFB12:
811 07cc 023083E0 .loc 1 174 0
812 07d0 8330A0E1 @ Function supports interworking.
813 07d4 013083E0 @ args = 0, pretend = 0, frame = 12
814 07d8 002083E0 @ frame_needed = 1, uses_anonymous_args = 0
815 07dc 1030A0E3 mov ip, sp
816 07e0 0030C2E5 .LCFI40:
817 stmfd sp!, {fp, ip, lr, pc}
168:jetiTelemetry.c **** }
169:jetiTelemetry.c ****
170:jetiTelemetry.c **** return JETI_NO_ERROR;
818 p, ip, #4
819 07e4 0030A0E3 .LCFI42:
820 07e8 18300BE5 sub sp, sp, #12
821 .LCFI43:
822 07ec 18301BE5 mov r3, r0
171:jetiTelemetry.c **** }
823 r1, [fp, #-20]
824 07f0 0300A0E1 strb r3, [fp, #-16]
825 07f4 0CD04BE2 .loc 1 175 0
826 07f8 00689DE8 ldrb r3, [fp, #-16] @ zero_extendqisi2
827 07fc 1EFF2FE1 cmp r3, #14
828 bls .L93
829 .loc 1 176 0
830 mov r3, #1
831 0800 00000000 str r3, [fp, #-24]
832 b .L95
833 .L93:
834 .loc 1 178 0
835 ldr r2, [fp, #-20]
836 mov r3, #32512
837 add r3, r3, #255
838 cmp r2, r3
172:jetiTelemetry.c ****
173:jetiTelemetry.c **** unsigned char jetiSetValue14B(unsigned char id, int value)
174:jetiTelemetry.c **** {
839 3, [fp, #-20]
840 cmn r3, #32768
841 bgt .L98
842 .L96:
843 0804 0DC0A0E1 .loc 1 179 0
844 mov r3, #32
845 0808 00D82DE9 str r3, [fp, #-24]
846 b .L95
847 080c 04B04CE2 .L98:
848 .loc 1 181 0
849 0810 0CD04DE2 ldrb r2, [fp, #-16] @ zero_extendqisi2
850 ldr r1, .L102
851 0814 0030A0E1 mov r0, #16
852 0818 14100BE5 mov r3, r2
853 081c 10304BE5 mov r3, r3, asl #2
175:jetiTelemetry.c **** if (id>14)
854
855 0820 10305BE5 mov r3, r3, asl #1
856 0824 0E0053E3 add r3, r3, r2
857 0828 0200009A mov r3, r3, asl #1
176:jetiTelemetry.c **** return JETI_ERROR_ID_RANGE;
858 d r3, r3, r1
859 082c 0130A0E3 add r0, r3, r0
860 0830 18300BE5 ldrb r1, [fp, #-20] @ zero_extendqisi2