⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fat.lst

📁 读写U盘C代码,基于CH375FAT芯片,实用的一个代码
💻 LST
📖 第 1 页 / 共 5 页
字号:
00DE E500        R     MOV     A,pointer+02H
00E0 9E                SUBB    A,R6
00E1 900000      E     MOV     DPTR,#ThisFile+0DH
00E4 F0                MOVX    @DPTR,A
00E5 A3                INC     DPTR
00E6 EF                MOV     A,R7
00E7 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 142
00E8 E4                CLR     A
00E9 900000      E     MOV     DPTR,#ThisFile+014H
00EC F0                MOVX    @DPTR,A
00ED A3                INC     DPTR
00EE F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 143
00EF 7F01              MOV     R7,#01H
                                           ; SOURCE LINE # 145
00F1         ?C0017:
C51 COMPILER V7.06   FAT                                                                   11/22/2004 22:08:31 PAGE 15  

00F1 22                RET     
             ; FUNCTION _GoToPointer (END)

             ; FUNCTION GetFreeCusterNum (BEGIN)
                                           ; SOURCE LINE # 147
                                           ; SOURCE LINE # 148
                                           ; SOURCE LINE # 151
0000 E4                CLR     A
0001 F500        R     MOV     clusterNum,A
0003 F500        R     MOV     clusterNum+01H,A
                                           ; SOURCE LINE # 152
0005 900000      E     MOV     DPTR,#DeviceInfo+038H
0008 E0                MOVX    A,@DPTR
0009 FC                MOV     R4,A
000A A3                INC     DPTR
000B E0                MOVX    A,@DPTR
000C FD                MOV     R5,A
000D A3                INC     DPTR
000E E0                MOVX    A,@DPTR
000F FE                MOV     R6,A
0010 A3                INC     DPTR
0011 E0                MOVX    A,@DPTR
0012 F500        R     MOV     sectorNum+03H,A
0014 8E00        R     MOV     sectorNum+02H,R6
0016 8D00        R     MOV     sectorNum+01H,R5
0018 8C00        R     MOV     sectorNum,R4
001A         ?C0018:
                                           ; SOURCE LINE # 153
001A 900000      E     MOV     DPTR,#DeviceInfo+011H
001D E0                MOVX    A,@DPTR
001E FE                MOV     R6,A
001F A3                INC     DPTR
0020 E0                MOVX    A,@DPTR
0021 FF                MOV     R7,A
0022 E4                CLR     A
0023 FC                MOV     R4,A
0024 FD                MOV     R5,A
0025 900000      E     MOV     DPTR,#DeviceInfo+038H
0028 E0                MOVX    A,@DPTR
0029 F8                MOV     R0,A
002A A3                INC     DPTR
002B E0                MOVX    A,@DPTR
002C F9                MOV     R1,A
002D A3                INC     DPTR
002E E0                MOVX    A,@DPTR
002F FA                MOV     R2,A
0030 A3                INC     DPTR
0031 E0                MOVX    A,@DPTR
0032 2F                ADD     A,R7
0033 FF                MOV     R7,A
0034 EA                MOV     A,R2
0035 3E                ADDC    A,R6
0036 FE                MOV     R6,A
0037 ED                MOV     A,R5
0038 39                ADDC    A,R1
0039 FD                MOV     R5,A
003A EC                MOV     A,R4
003B 38                ADDC    A,R0
003C FC                MOV     R4,A
003D AB00        R     MOV     R3,sectorNum+03H
003F AA00        R     MOV     R2,sectorNum+02H
0041 A900        R     MOV     R1,sectorNum+01H
C51 COMPILER V7.06   FAT                                                                   11/22/2004 22:08:31 PAGE 16  

0043 A800        R     MOV     R0,sectorNum
0045 C3                CLR     C
0046 120000      E     LCALL   ?C?ULCMP
0049 4003              JC      $ + 5H
004B 020000      R     LJMP    ?C0019
                                           ; SOURCE LINE # 154
                                           ; SOURCE LINE # 156
004E AF00        R     MOV     R7,sectorNum+03H
0050 AE00        R     MOV     R6,sectorNum+02H
0052 AD00        R     MOV     R5,sectorNum+01H
0054 AC00        R     MOV     R4,sectorNum
0056 750001      E     MOV     ?_RBC_Read?BYTE+04H,#01H
0059 750001      E     MOV     ?_RBC_Read?BYTE+05H,#01H
005C 750000      E     MOV     ?_RBC_Read?BYTE+06H,#HIGH DBUF
005F 750000      E     MOV     ?_RBC_Read?BYTE+07H,#LOW DBUF
0062 120000      E     LCALL   _RBC_Read
0065 EF                MOV     A,R7
0066 7003              JNZ     ?C0020
                                           ; SOURCE LINE # 157
0068 FE                MOV     R6,A
0069 FF                MOV     R7,A
006A 22                RET     
006B         ?C0020:
                                           ; SOURCE LINE # 158
006B E4                CLR     A
006C F500        R     MOV     i,A
006E F500        R     MOV     i+01H,A
0070         ?C0022:
0070 D3                SETB    C
0071 900000      E     MOV     DPTR,#DeviceInfo+09H
0074 E0                MOVX    A,@DPTR
0075 9500        R     SUBB    A,i+01H
0077 900000      E     MOV     DPTR,#DeviceInfo+08H
007A E0                MOVX    A,@DPTR
007B 9500        R     SUBB    A,i
007D 5003              JNC     $ + 5H
007F 020000      R     LJMP    ?C0023
                                           ; SOURCE LINE # 159
                                           ; SOURCE LINE # 162
0082 7400        E     MOV     A,#LOW DBUF
0084 2500        R     ADD     A,i+01H
0086 F582              MOV     DPL,A
0088 7400        E     MOV     A,#HIGH DBUF
008A 3500        R     ADDC    A,i
008C F583              MOV     DPH,A
008E E0                MOVX    A,@DPTR
008F 707C              JNZ     ?C0025
0091 7400        E     MOV     A,#LOW DBUF+01H
0093 2500        R     ADD     A,i+01H
0095 F582              MOV     DPL,A
0097 7400        E     MOV     A,#HIGH DBUF+01H
0099 3500        R     ADDC    A,i
009B F583              MOV     DPH,A
009D E0                MOVX    A,@DPTR
009E 706D              JNZ     ?C0025
                                           ; SOURCE LINE # 163
                                           ; SOURCE LINE # 164
00A0 7400        E     MOV     A,#LOW DBUF
00A2 2500        R     ADD     A,i+01H
00A4 F582              MOV     DPL,A
00A6 7400        E     MOV     A,#HIGH DBUF
00A8 3500        R     ADDC    A,i
C51 COMPILER V7.06   FAT                                                                   11/22/2004 22:08:31 PAGE 17  

00AA F583              MOV     DPH,A
00AC 74FF              MOV     A,#0FFH
00AE F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 165
00AF 7400        E     MOV     A,#LOW DBUF+01H
00B1 2500        R     ADD     A,i+01H
00B3 F582              MOV     DPL,A
00B5 7400        E     MOV     A,#HIGH DBUF+01H
00B7 3500        R     ADDC    A,i
00B9 F583              MOV     DPH,A
00BB 74FF              MOV     A,#0FFH
00BD F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 167
00BE AF00        R     MOV     R7,sectorNum+03H
00C0 AE00        R     MOV     R6,sectorNum+02H
00C2 AD00        R     MOV     R5,sectorNum+01H
00C4 AC00        R     MOV     R4,sectorNum
00C6 750001      E     MOV     ?_RBC_Write?BYTE+04H,#01H
00C9 750001      E     MOV     ?_RBC_Write?BYTE+05H,#01H
00CC 750000      E     MOV     ?_RBC_Write?BYTE+06H,#HIGH DBUF
00CF 750000      E     MOV     ?_RBC_Write?BYTE+07H,#LOW DBUF
00D2 120000      E     LCALL   _RBC_Write
00D5 EF                MOV     A,R7
00D6 7003              JNZ     ?C0026
                                           ; SOURCE LINE # 168
00D8 FE                MOV     R6,A
00D9 FF                MOV     R7,A
00DA 22                RET     
00DB         ?C0026:
                                           ; SOURCE LINE # 170
00DB 900000      E     MOV     DPTR,#DeviceInfo+011H
00DE E0                MOVX    A,@DPTR
00DF FE                MOV     R6,A
00E0 A3                INC     DPTR
00E1 E0                MOVX    A,@DPTR
00E2 FF                MOV     R7,A
00E3 EF                MOV     A,R7
00E4 2500        R     ADD     A,sectorNum+03H
00E6 FF                MOV     R7,A
00E7 EE                MOV     A,R6
00E8 3500        R     ADDC    A,sectorNum+02H
00EA FE                MOV     R6,A
00EB E4                CLR     A
00EC 3500        R     ADDC    A,sectorNum+01H
00EE FD                MOV     R5,A
00EF E4                CLR     A
00F0 3500        R     ADDC    A,sectorNum
00F2 FC                MOV     R4,A
00F3 750001      E     MOV     ?_RBC_Write?BYTE+04H,#01H
00F6 750001      E     MOV     ?_RBC_Write?BYTE+05H,#01H
00F9 750000      E     MOV     ?_RBC_Write?BYTE+06H,#HIGH DBUF
00FC 750000      E     MOV     ?_RBC_Write?BYTE+07H,#LOW DBUF
00FF 120000      E     LCALL   _RBC_Write
0102 EF                MOV     A,R7
0103 7003              JNZ     ?C0027
                                           ; SOURCE LINE # 171
0105 FE                MOV     R6,A
0106 FF                MOV     R7,A
0107 22                RET     
0108         ?C0027:
                                           ; SOURCE LINE # 173
0108 AE00        R     MOV     R6,clusterNum
C51 COMPILER V7.06   FAT                                                                   11/22/2004 22:08:31 PAGE 18  

010A AF00        R     MOV     R7,clusterNum+01H
010C 22                RET     
                                           ; SOURCE LINE # 174
010D         ?C0025:
                                           ; SOURCE LINE # 175
010D 0500        R     INC     clusterNum+01H
010F E500        R     MOV     A,clusterNum+01H
0111 7002              JNZ     ?C0048
0113 0500        R     INC     clusterNum
0115         ?C0048:
                                           ; SOURCE LINE # 176
0115 7402              MOV     A,#02H
0117 2500        R     ADD     A,i+01H
0119 F500        R     MOV     i+01H,A
011B E4                CLR     A
011C 3500        R     ADDC    A,i
011E F500        R     MOV     i,A
0120 020000      R     LJMP    ?C0022
0123         ?C0023:
                                           ; SOURCE LINE # 178
0123 E500        R     MOV     A,clusterNum+01H
0125 25E0              ADD     A,ACC
0127 FF                MOV     R7,A
0128 E500        R     MOV     A,clusterNum
012A 33                RLC     A
012B FE                MOV     R6,A
012C 900000      E     MOV     DPTR,#DeviceInfo+08H
012F E0                MOVX    A,@DPTR
0130 FC                MOV     R4,A
0131 A3                INC     DPTR
0132 E0                MOVX    A,@DPTR
0133 FD                MOV     R5,A
0134 120000      E     LCALL   ?C?UIDIV
0137 E4                CLR     A
0138 FC                MOV     R4,A
0139 FD                MOV     R5,A
013A 900000      E     MOV     DPTR,#DeviceInfo+038H
013D E0                MOVX    A,@DPTR
013E F8                MOV     R0,A
013F A3                INC     DPTR
0140 E0                MOVX    A,@DPTR
0141 F9                MOV     R1,A
0142 A3                INC     DPTR
0143 E0                MOVX    A,@DPTR
0144 FA                MOV     R2,A
0145 A3                INC     DPTR
0146 E0                MOVX    A,@DPTR
0147 2F                ADD     A,R7
0148 F500        R     MOV     sectorNum+03H,A
014A EA                MOV     A,R2
014B 3E                ADDC    A,R6
014C F500        R     MOV     sectorNum+02H,A
014E ED                MOV     A,R5
014F 39                ADDC    A,R1
0150 F500        R     MOV     sectorNum+01H,A
0152 EC                MOV     A,R4
0153 38                ADDC    A,R0
0154 F500        R     MOV     sectorNum,A
                                           ; SOURCE LINE # 181
0156 020000      R     LJMP    ?C0018
0159         ?C0019:
                                           ; SOURCE LINE # 183
C51 COMPILER V7.06   FAT                                                                   11/22/2004 22:08:31 PAGE 19  

0159 E4                CLR     A
015A FE                MOV     R6,A
015B FF                MOV     R7,A
                                           ; SOURCE LINE # 184
015C         ?C0021:
015C 22                RET     
             ; FUNCTION GetFreeCusterNum (END)

             ; FUNCTION _CreateClusterLink (BEGIN)
                                           ; SOURCE LINE # 186
0000 8E00        R     MOV     currentCluster,R6
0002 8F00        R     MOV     currentCluster+01H,R7
                                           ; SOURCE LINE # 187
                                           ; SOURCE LINE # 192

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -