📄 level3.lst
字号:
215:level3.c **** Capture( );
642 .stabn 68,0,215,.LM87-Read_TypeB_Card
643 .LM87:
644 0232 3EDF rcall Capture
216:level3.c ****
217:level3.c **** clean_data_cnt = ExtractTypeBData( 248 );
645 .stabn 68,0,217,.LM88-Read_TypeB_Card
646 .LM88:
647 0234 88EF ldi r24,lo8(-8)
648 0236 00D0 rcall ExtractTypeBData
649 0238 8093 0000 sts clean_data_cnt,r24
218:level3.c ****
219:level3.c **** if ( clean_data_cnt == ( expectedResponseLen + 1 ) * 8 )
650 .stabn 68,0,219,.LM89-Read_TypeB_Card
651 .LM89:
652 023c 282F mov r18,r24
653 023e 3327 clr r19
654 0240 8091 0000 lds r24,expectedResponseLen
655 0244 9927 clr r25
656 0246 880F lsl r24
657 0248 991F rol r25
658 024a 880F lsl r24
659 024c 991F rol r25
660 024e 880F lsl r24
661 0250 991F rol r25
662 0252 0896 adiw r24,8
663 0254 2817 cp r18,r24
664 0256 3907 cpc r19,r25
665 0258 19F0 breq .L68
220:level3.c **** {
221:level3.c **** switch( type_b_setting )
222:level3.c **** {
223:level3.c **** case 1 :
224:level3.c **** weigan_data[ 3 ] = data_buffer[ 4 ];
225:level3.c **** weigan_data[ 2 ] = data_buffer[ 3 ];
226:level3.c **** weigan_data[ 1 ] = data_buffer[ 2 ];
227:level3.c **** weigan_data[ 0 ] = data_buffer[ 1 ];
228:level3.c **** break;
229:level3.c ****
230:level3.c **** case 2 :
231:level3.c **** weigan_data[ 3 ] = data_buffer[ 8 ];
232:level3.c **** weigan_data[ 2 ] = data_buffer[ 7 ];
233:level3.c **** weigan_data[ 1 ] = data_buffer[ 6 ];
234:level3.c **** weigan_data[ 0 ] = data_buffer[ 5 ];
235:level3.c **** break;
236:level3.c ****
237:level3.c **** case 3 :
238:level3.c **** weigan_data[ 3 ] = data_buffer[ 4 ];
239:level3.c **** weigan_data[ 2 ] = data_buffer[ 3 ];
240:level3.c **** weigan_data[ 1 ] = data_buffer[ 8 ];
241:level3.c **** weigan_data[ 0 ] = data_buffer[ 7 ];
242:level3.c **** break;
243:level3.c ****
244:level3.c **** case 4 :
245:level3.c **** weigan_data[ 3 ] = data_buffer[ 8 ];
246:level3.c **** weigan_data[ 2 ] = data_buffer[ 7 ];
247:level3.c **** weigan_data[ 1 ] = data_buffer[ 4 ];
GAS LISTING C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s page 17
248:level3.c **** weigan_data[ 0 ] = data_buffer[ 3 ];
249:level3.c **** break;
250:level3.c ****
251:level3.c **** default:
252:level3.c **** break;
253:level3.c **** }
254:level3.c **** uint8_t check_data = 0;
255:level3.c **** for ( i = 0 ; i < 4 ; i++ )
256:level3.c **** check_data ^= weigan_data[ i ];
257:level3.c **** weigan_data[ 4 ] = check_data;
258:level3.c **** return 1;
259:level3.c **** }
260:level3.c **** else
261:level3.c **** {
262:level3.c **** return 0 ;
666 .stabn 68,0,262,.LM90-Read_TypeB_Card
667 .LM90:
668 025a 80E0 ldi r24,lo8(0)
669 025c 90E0 ldi r25,hi8(0)
263:level3.c **** }
264:level3.c **** }
670 .stabn 68,0,264,.LM91-Read_TypeB_Card
671 .LM91:
672 025e 0895 ret
673 .stabn 68,0,221,.LM92-Read_TypeB_Card
674 .LM92:
675 .L68:
676 .LBB7:
677 0260 8091 0000 lds r24,type_b_setting
678 0264 9927 clr r25
679 0266 8230 cpi r24,2
680 0268 9105 cpc r25,__zero_reg__
681 026a 09F4 brne .+2
682 026c 47C0 rjmp .L53
683 026e 8330 cpi r24,3
684 0270 9105 cpc r25,__zero_reg__
685 0272 0CF5 brge .L58
686 0274 0197 sbiw r24,1
687 0276 71F0 breq .L52
688 .L51:
689 .stabn 68,0,254,.LM93-Read_TypeB_Card
690 .LM93:
691 0278 20E0 ldi r18,lo8(0)
692 .stabn 68,0,255,.LM94-Read_TypeB_Card
693 .LM94:
694 027a 922F mov r25,r18
695 027c E0E0 ldi r30,lo8(weigan_data)
696 027e F0E0 ldi r31,hi8(weigan_data)
697 .L63:
698 .stabn 68,0,256,.LM95-Read_TypeB_Card
699 .LM95:
700 0280 8191 ld r24,Z+
701 0282 2827 eor r18,r24
702 .stabn 68,0,255,.LM96-Read_TypeB_Card
703 .LM96:
704 0284 9F5F subi r25,lo8(-(1))
705 0286 9430 cpi r25,lo8(4)
GAS LISTING C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s page 18
706 0288 D8F3 brlo .L63
707 .stabn 68,0,257,.LM97-Read_TypeB_Card
708 .LM97:
709 028a 2093 0000 sts weigan_data+4,r18
710 .stabn 68,0,258,.LM98-Read_TypeB_Card
711 .LM98:
712 028e 81E0 ldi r24,lo8(1)
713 0290 90E0 ldi r25,hi8(1)
714 .stabn 68,0,264,.LM99-Read_TypeB_Card
715 .LM99:
716 0292 0895 ret
717 .L52:
718 .stabn 68,0,224,.LM100-Read_TypeB_Card
719 .LM100:
720 0294 8091 0000 lds r24,data_buffer+4
721 0298 8093 0000 sts weigan_data+3,r24
722 .stabn 68,0,225,.LM101-Read_TypeB_Card
723 .LM101:
724 029c 8091 0000 lds r24,data_buffer+3
725 02a0 8093 0000 sts weigan_data+2,r24
726 .stabn 68,0,226,.LM102-Read_TypeB_Card
727 .LM102:
728 02a4 8091 0000 lds r24,data_buffer+2
729 02a8 8093 0000 sts weigan_data+1,r24
730 .stabn 68,0,227,.LM103-Read_TypeB_Card
731 .LM103:
732 02ac 8091 0000 lds r24,data_buffer+1
733 .L67:
734 02b0 8093 0000 sts weigan_data,r24
735 02b4 E1CF rjmp .L51
736 .L58:
737 02b6 8330 cpi r24,3
738 02b8 9105 cpc r25,__zero_reg__
739 02ba 89F0 breq .L54
740 02bc 0497 sbiw r24,4
741 02be E1F6 brne .L51
742 .stabn 68,0,245,.LM104-Read_TypeB_Card
743 .LM104:
744 02c0 8091 0000 lds r24,data_buffer+8
745 02c4 8093 0000 sts weigan_data+3,r24
746 .stabn 68,0,246,.LM105-Read_TypeB_Card
747 .LM105:
748 02c8 8091 0000 lds r24,data_buffer+7
749 02cc 8093 0000 sts weigan_data+2,r24
750 .stabn 68,0,247,.LM106-Read_TypeB_Card
751 .LM106:
752 02d0 8091 0000 lds r24,data_buffer+4
753 02d4 8093 0000 sts weigan_data+1,r24
754 .stabn 68,0,248,.LM107-Read_TypeB_Card
755 .LM107:
756 02d8 8091 0000 lds r24,data_buffer+3
757 02dc E9CF rjmp .L67
758 .L54:
759 .stabn 68,0,238,.LM108-Read_TypeB_Card
760 .LM108:
761 02de 8091 0000 lds r24,data_buffer+4
762 02e2 8093 0000 sts weigan_data+3,r24
GAS LISTING C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s page 19
763 .stabn 68,0,239,.LM109-Read_TypeB_Card
764 .LM109:
765 02e6 8091 0000 lds r24,data_buffer+3
766 02ea 8093 0000 sts weigan_data+2,r24
767 .stabn 68,0,240,.LM110-Read_TypeB_Card
768 .LM110:
769 02ee 8091 0000 lds r24,data_buffer+8
770 02f2 8093 0000 sts weigan_data+1,r24
771 .stabn 68,0,241,.LM111-Read_TypeB_Card
772 .LM111:
773 02f6 8091 0000 lds r24,data_buffer+7
774 02fa DACF rjmp .L67
775 .L53:
776 .stabn 68,0,231,.LM112-Read_TypeB_Card
777 .LM112:
778 02fc 8091 0000 lds r24,data_buffer+8
779 0300 8093 0000 sts weigan_data+3,r24
780 .stabn 68,0,232,.LM113-Read_TypeB_Card
781 .LM113:
782 0304 8091 0000 lds r24,data_buffer+7
783 0308 8093 0000 sts weigan_data+2,r24
784 .stabn 68,0,233,.LM114-Read_TypeB_Card
785 .LM114:
786 030c 8091 0000 lds r24,data_buffer+6
787 0310 8093 0000 sts weigan_data+1,r24
788 .stabn 68,0,234,.LM115-Read_TypeB_Card
789 .LM115:
790 0314 8091 0000 lds r24,data_buffer+5
791 0318 CBCF rjmp .L67
792 .LBE7:
793 .LBE6:
794 /* epilogue: frame size=0 */
795 /* epilogue: noreturn */
796 /* epilogue end (size=0) */
797 /* function Read_TypeB_Card size 132 (132) */
798 .size Read_TypeB_Card, .-Read_TypeB_Card
799 .stabs "i:r(4,2)",64,0,207,25
800 .stabn 192,0,0,.LBB6-Read_TypeB_Card
801 .stabs "check_data:r(4,2)",64,0,254,18
802 .stabn 192,0,0,.LBB7-Read_TypeB_Card
803 .stabn 224,0,0,.LBE7-Read_TypeB_Card
804 .stabn 224,0,0,.LBE6-Read_TypeB_Card
805 .Lscope8:
806 .stabs "",36,0,0,.Lscope8-Read_TypeB_Card
807 .comm temp,1,1
808 .comm number,1,1
809 .comm sec,1,1
810 .comm maxCaptureTime,1,1
811 .comm maxCaptureTimeScale,1,1
812 .comm maxTGeneral,2,1
813 .comm expectedResponseLen,1,1
814 .comm raw_data,320,1
815 .comm clean_data_cnt,1,1
816 .stabs "temp:G(4,2)",32,0,22,0
817 .stabs "number:G(4,2)",32,0,23,0
818 .stabs "sec:G(4,2)",32,0,24,0
819 .stabs "maxCaptureTime:G(4,2)",32,0,20,0
GAS LISTING C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s page 20
820 .stabs "maxCaptureTimeScale:G(4,2)",32,0,21,0
821 .stabs "maxTGeneral:G(4,4)",32,0,25,0
822 .stabs "expectedResponseLen:G(4,2)",32,0,26,0
823 .stabs "raw_data:G(1,1)=ar(1,2)=r(1,2);0000000000000;0000000177777;;0;319;(4,2)",32,0,65,0
824 .stabs "captured_byte:r(4,2)",64,0,28,6
825 .stabs "captured_valid:r(4,2)",64,0,29,7
826 .stabs "captured_bit_count:r(4,2)",64,0,30,9
827 .stabs "clean_data_cnt:G(4,2)",32,0,19,0
828 .text
829 .stabs "",100,0,0,Letext
830 Letext:
831 /* File "level3.c": code 399 = 0x018f ( 353), prologues 20, epilogues 26 */
GAS LISTING C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s page 21
DEFINED SYMBOLS
*ABS*:00000000 level3.c
*ABS*:0000003f __SREG__
*ABS*:0000003e __SP_H__
*ABS*:0000003d __SP_L__
*ABS*:00000000 __tmp_reg__
*ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:73 .text:00000000 Compute_Timeouts
*COM*:00000001 expectedResponseLen
*COM*:00000002 maxTGeneral
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:137 .text:0000004c Send
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:467 .text:00000178 ScaleTime
*COM*:00000001 maxCaptureTime
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:342 .text:0000011a Wait
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:231 .text:000000b0 Capture
*COM*:00000001 maxCaptureTimeScale
*COM*:00000001 number
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:403 .text:00000144 ScaleOnce
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:513 .text:00000196 __vector_4
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:542 .text:000001ac __vector_2
*COM*:00000001 sec
*COM*:00000001 temp
*COM*:00000140 raw_data
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:620 .text:00000216 Read_TypeB_Card
*COM*:00000001 clean_data_cnt
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWGbaaa.s:830 .text:0000031a Letext
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__mulsi3
Prepare_SOF
Prepare_EOF
ClearCaptureBuffers
SendForward
cmd_message
Prepare_Data
bufferClean
ExtractTypeBData
type_b_setting
weigan_data
data_buffer
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -