📄 fat.lst
字号:
761 03aa DD24 clr r13
762 03ac 7601 movw r14,r12
763 03ae 00C0 rjmp .L65
764 .L41:
765 .LM86:
766 03b0 80E0 ldi r24,lo8(512)
767 03b2 92E0 ldi r25,hi8(512)
768 03b4 0E94 0000 call malloc
769 .LVL46:
770 03b8 7C01 movw r14,r24
771 .LM87:
772 03ba 0097 sbiw r24,0
773 03bc 01F4 brne .+2
774 03be 00C0 rjmp .L43
775 03c0 DD24 clr r13
776 .LVL47:
777 .LM88:
778 03c2 A12C mov r10,__zero_reg__
779 03c4 F2E0 ldi r31,hi8(512)
780 03c6 BF2E mov r11,r31
781 03c8 A80E add r10,r24
782 03ca B91E adc r11,r25
783 03cc 00C0 rjmp .L44
784 .L49:
785 .LM89:
786 03ce 8091 0000 lds r24,FirstDirSector
787 03d2 9091 0000 lds r25,(FirstDirSector)+1
788 03d6 A091 0000 lds r26,(FirstDirSector)+2
789 03da B091 0000 lds r27,(FirstDirSector)+3
790 03de 080F add r16,r24
791 03e0 191F adc r17,r25
792 03e2 2A1F adc r18,r26
793 03e4 3B1F adc r19,r27
794 03e6 E091 0000 lds r30,FAT_ReadSector
795 03ea F091 0000 lds r31,(FAT_ReadSector)+1
796 03ee A701 movw r20,r14
797 .LVL48:
798 03f0 C901 movw r24,r18
799 03f2 B801 movw r22,r16
800 03f4 0995 icall
801 .LVL49:
802 03f6 8823 tst r24
803 03f8 01F0 breq .L45
804 03fa C701 movw r24,r14
805 .LVL50:
806 03fc 00C0 rjmp .L68
807 .LVL51:
808 .L45:
809 03fe 8701 movw r16,r14
810 .L48:
811 .LM90:
812 0400 F801 movw r30,r16
813 0402 8081 ld r24,Z
814 0404 8E32 cpi r24,lo8(46)
815 0406 01F0 breq .L47
816 0408 8823 tst r24
817 040a 01F0 breq .L47
818 040c 853E cpi r24,lo8(-27)
819 040e 01F0 breq .L47
820 0410 8385 ldd r24,Z+11
821 0412 8F30 cpi r24,lo8(15)
822 0414 01F0 breq .L47
823 .LM91:
824 0416 8085 ldd r24,Z+8
825 0418 8234 cpi r24,lo8(66)
826 041a 01F4 brne .L47
827 041c 8185 ldd r24,Z+9
828 041e 8415 cp r24,r4
829 0420 01F4 brne .L47
830 0422 8285 ldd r24,Z+10
831 0424 F981 ldd r31,Y+1
832 0426 8F17 cp r24,r31
833 0428 01F4 brne .L47
834 .LM92:
835 042a B801 movw r22,r16
836 042c 8C81 ldd r24,Y+4
837 042e 9D81 ldd r25,Y+5
838 0430 0E94 0000 call CopyDirentruyItem
839 .LM93:
840 0434 0894 sec
841 0436 611C adc r6,__zero_reg__
842 0438 711C adc r7,__zero_reg__
843 .LM94:
844 043a F101 movw r30,r2
845 043c 8081 ld r24,Z
846 043e 9181 ldd r25,Z+1
847 0440 6816 cp r6,r24
848 0442 7906 cpc r7,r25
849 0444 01F4 brne .L47
850 0446 C701 movw r24,r14
851 .LVL52:
852 0448 00C0 rjmp .L67
853 .LVL53:
854 .L47:
855 044a 005E subi r16,lo8(-(32))
856 044c 1F4F sbci r17,hi8(-(32))
857 .LM95:
858 044e 0A15 cp r16,r10
859 0450 1B05 cpc r17,r11
860 0452 01F4 brne .L48
861 .LM96:
862 0454 D394 inc r13
863 .L44:
864 0456 0D2D mov r16,r13
865 0458 10E0 ldi r17,lo8(0)
866 045a 20E0 ldi r18,lo8(0)
867 045c 30E0 ldi r19,hi8(0)
868 045e 8091 0000 lds r24,RootDirSectors
869 0462 9091 0000 lds r25,(RootDirSectors)+1
870 0466 A091 0000 lds r26,(RootDirSectors)+2
871 046a B091 0000 lds r27,(RootDirSectors)+3
872 046e 0817 cp r16,r24
873 0470 1907 cpc r17,r25
874 0472 2A07 cpc r18,r26
875 0474 3B07 cpc r19,r27
876 0476 00F4 brsh .+2
877 0478 00C0 rjmp .L49
878 .LM97:
879 047a C701 movw r24,r14
880 .LVL54:
881 047c 0E94 0000 call free
882 .LVL55:
883 0480 00C0 rjmp .L64
884 .LVL56:
885 .L40:
886 .LM98:
887 0482 6B01 movw r12,r22
888 0484 7C01 movw r14,r24
889 .L65:
890 .LM99:
891 0486 C701 movw r24,r14
892 0488 B601 movw r22,r12
893 .LVL57:
894 048a 6250 subi r22,lo8(-(-2))
895 048c 7040 sbci r23,hi8(-(-2))
896 048e 8040 sbci r24,hlo8(-(-2))
897 0490 9040 sbci r25,hhi8(-(-2))
898 0492 2091 0000 lds r18,SectorsPerClust
899 0496 3091 0000 lds r19,(SectorsPerClust)+1
900 049a 40E0 ldi r20,lo8(0)
901 049c 50E0 ldi r21,hi8(0)
902 049e 0E94 0000 call __mulsi3
903 04a2 4B01 movw r8,r22
904 04a4 5C01 movw r10,r24
905 04a6 8091 0000 lds r24,FirstDataSector
906 04aa 9091 0000 lds r25,(FirstDataSector)+1
907 04ae A091 0000 lds r26,(FirstDataSector)+2
908 04b2 B091 0000 lds r27,(FirstDataSector)+3
909 04b6 880E add r8,r24
910 04b8 991E adc r9,r25
911 04ba AA1E adc r10,r26
912 04bc BB1E adc r11,r27
913 .LM100:
914 04be 80E0 ldi r24,lo8(512)
915 04c0 92E0 ldi r25,hi8(512)
916 04c2 0E94 0000 call malloc
917 04c6 8C01 movw r16,r24
918 .LM101:
919 04c8 0097 sbiw r24,0
920 04ca 01F4 brne .+2
921 04cc 00C0 rjmp .L43
922 04ce 5524 clr r5
923 .LM102:
924 04d0 9C01 movw r18,r24
925 04d2 2050 subi r18,lo8(-(512))
926 04d4 3E4F sbci r19,hi8(-(512))
927 04d6 3F83 std Y+7,r19
928 04d8 2E83 std Y+6,r18
929 04da 00C0 rjmp .L51
930 .LVL58:
931 .L55:
932 .LM103:
933 04dc C501 movw r24,r10
934 04de B401 movw r22,r8
935 04e0 650D add r22,r5
936 04e2 711D adc r23,__zero_reg__
937 04e4 811D adc r24,__zero_reg__
938 04e6 911D adc r25,__zero_reg__
939 04e8 E091 0000 lds r30,FAT_ReadSector
940 04ec F091 0000 lds r31,(FAT_ReadSector)+1
941 04f0 A801 movw r20,r16
942 .LVL59:
943 04f2 0995 icall
944 .LVL60:
945 04f4 8823 tst r24
946 04f6 01F0 breq .L52
947 04f8 C801 movw r24,r16
948 .LVL61:
949 .L68:
950 04fa 0E94 0000 call free
951 .LVL62:
952 04fe 00C0 rjmp .L43
953 .LVL63:
954 .L52:
955 0500 1987 std Y+9,r17
956 0502 0887 std Y+8,r16
957 .L54:
958 .LM104:
959 0504 E885 ldd r30,Y+8
960 0506 F985 ldd r31,Y+9
961 0508 8081 ld r24,Z
962 050a 8E32 cpi r24,lo8(46)
963 050c 01F0 breq .L53
964 050e 8823 tst r24
965 0510 01F0 breq .L53
966 0512 853E cpi r24,lo8(-27)
967 0514 01F0 breq .L53
968 0516 8385 ldd r24,Z+11
969 0518 8F30 cpi r24,lo8(15)
970 051a 01F0 breq .L53
971 .LM105:
972 051c 8085 ldd r24,Z+8
973 051e 8234 cpi r24,lo8(66)
974 0520 01F4 brne .L53
975 0522 8185 ldd r24,Z+9
976 0524 8415 cp r24,r4
977 0526 01F4 brne .L53
978 0528 8285 ldd r24,Z+10
979 052a F981 ldd r31,Y+1
980 052c 8F17 cp r24,r31
981 052e 01F4 brne .L53
982 .LM106:
983 0530 6885 ldd r22,Y+8
984 .LVL64:
985 0532 7985 ldd r23,Y+9
986 0534 8C81 ldd r24,Y+4
987 0536 9D81 ldd r25,Y+5
988 0538 0E94 0000 call CopyDirentruyItem
989 .LVL65:
990 .LM107:
991 053c 0894 sec
992 053e 611C adc r6,__zero_reg__
993 0540 711C adc r7,__zero_reg__
994 .LM108:
995 0542 F101 movw r30,r2
996 0544 8081 ld r24,Z
997 0546 9181 ldd r25,Z+1
998 0548 6816 cp r6,r24
999 054a 7906 cpc r7,r25
1000 054c 01F4 brne .L53
1001 054e C801 movw r24,r16
1002 .LVL66:
1003 .L67:
1004 0550 0E94 0000 call free
1005 .LVL67:
1006 0554 00C0 rjmp .L66
1007 .LVL68:
1008 .L53:
1009 0556 2885 ldd r18,Y+8
1010 0558 3985 ldd r19,Y+9
1011 055a 205E subi r18,lo8(-(32))
1012 055c 3F4F sbci r19,hi8(-(32))
1013 055e 3987 std Y+9,r19
1014 0560 2887 std Y+8,r18
1015 .LM109:
1016 0562 8E81 ldd r24,Y+6
1017 0564 9F81 ldd r25,Y+7
1018 0566 2817 cp r18,r24
1019 0568 3907 cpc r19,r25
1020 056a 01F4 brne .L54
1021 .LM110:
1022 056c 5394 inc r5
1023 .L51:
1024 056e 252D mov r18,r5
1025 0570 30E0 ldi r19,lo8(0)
1026 .LVL69:
1027 0572 8091 0000 lds r24,SectorsPerClust
1028 0576 9091 0000 lds r25,(SectorsPerClust)+1
1029 057a 2817 cp r18,r24
1030 057c 3907 cpc r19,r25
1031 057e 00F4 brsh .+2
1032 0580 00C0 rjmp .L55
1033 .LVL70:
1034 .LM111:
1035 0582 C801 movw r24,r16
1036 .LVL71:
1037 0584 0E94 0000 call free
1038 .LVL72:
1039 .LM112:
1040 0588 C701 movw r24,r14
1041 058a B601 movw r22,r12
1042 058c 0E94 0000 call FAT_NextCluster
1043 0590 6B01 movw r12,r22
1044 0592 7C01 movw r14,r24
1045 .LM113:
1046 0594 9FEF ldi r25,lo8(268435455)
1047 0596 C916 cp r12,r25
1048 0598 9FEF ldi r25,hi8(268435455)
1049 059a D906 cpc r13,r25
1050 059c 9FEF ldi r25,hlo8(268435455)
1051 059e E906 cpc r14,r25
1052 05a0 9FE0 ldi r25,hhi8(268435455)
1053 05a2 F906 cpc r15,r25
1054 05a4 01F4 brne .+2
1055 05a6 00C0 rjmp .L64
1056 05a8 E8EF ldi r30,lo8(268435448)
1057 05aa CE16 cp r12,r30
1058 05ac EFEF ldi r30,hi8(268435448)
1059 05ae DE06 cpc r13,r30
1060 05b0 EFEF ldi r30,hlo8(268435448)
1061 05b2 EE06 cpc r14,r30
1062 05b4 EFE0 ldi r30,hhi8(268435448)
1063 05b6 FE06 cpc r15,r30
1064 05b8 01F4 brne .+2
1065 05ba 00C0 rjmp .L64
1066 05bc 8091 0000 lds r24,FAT32_Enable
1067 05c0 8823 tst r24
1068 05c2 01F0 breq .+2
1069 05c4 00C0 rjmp .L65
1070 05c6 FFEF ldi r31,lo8(65535)
1071 05c8 CF16 cp r12,r31
1072 05ca FFEF ldi r31,hi8(65535)
1073 05cc DF06 cpc r13,r31
1074 05ce F0E0 ldi r31,hlo8(65535)
1075 05d0 EF06 cpc r14,r31
1076 05d2 F0E0 ldi r31,hhi8(65535)
1077 05d4 FF06 cpc r15,r31
1078 05d6 01F0 breq .+2
1079 05d8 00C0 rjmp .L65
1080 05da 00C0 rjmp .L64
1081 .LVL73:
1082 .L39:
1083 .LM114:
1084 05dc F101 movw r30,r2
1085 05de 8081 ld r24,Z
1086 05e0 9181 ldd r25,Z+1
1087 05e2 892B or r24,r25
1088 05e4 01F4 brne .L66
1089 .L56:
1090 05e6 F101 movw r30,r2
1091 05e8 7182 std Z+1,r7
1092 05ea 6082 st Z,r6
1093 .L66:
1094 05ec 80E0 ldi r24,lo8(0)
1095 05ee 00C0 rjmp .L46
1096 .LVL74:
1097 .L43:
1098 05f0 81E0 ldi r24,lo8(1)
1099 .LVL75:
1100 .L46:
1101 /* epilogue start */
1102 .LM115:
1103 05f2 2996 adiw r28,9
1104 05f4 0FB6 in __tmp_reg__,__SREG__
1105 05f6 F894 cli
1106 05f8 DEBF out __SP_H__,r29
1107 05fa 0FBE out __SREG__,__tmp_reg__
1108 05fc CDBF out __SP_L__,r28
1109 05fe CF91 pop r28
1110 0600 DF91 pop r29
1111 0602 1F91 pop r17
1112 0604 0F91 pop r16
1113 0606 FF90 pop r15
1114 0608 EF90 pop r14
1115 060a DF90 pop r13
1116 060c CF90 pop r12
1117 .LVL76:
1118 060e BF90 pop r11
1119 0610 AF90 pop r10
1120 0612 9F90 pop r9
1121 0614 8F90 pop r8
1122 .LVL77:
1123 0616 7F90 pop r7
1124 0618 6F90 pop r6
1125 .LVL78:
1126 061a 5F90 pop r5
1127 .LVL79:
1128 061c 4F90 pop r4
1129 061e 3F90 pop r3
1130 0620 2F90 pop r2
1131 .LVL80:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -