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

📄 ch375.lst

📁 檔案系統FAT讀寫USB pen driver sample code
💻 LST
📖 第 1 页 / 共 5 页
字号:

             ; FUNCTION _RBC_Read (BEGIN)
                                           ; SOURCE LINE # 151
0000 8F00        R     MOV     iLbaStart+03H,R7
0002 8E00        R     MOV     iLbaStart+02H,R6
0004 8D00        R     MOV     iLbaStart+01H,R5
0006 8C00        R     MOV     iLbaStart,R4
                                           ; SOURCE LINE # 153
                                           ; SOURCE LINE # 157
0008 7F54              MOV     R7,#054H
000A 120000      R     LCALL   _CH375_CMD_PORT_d_out
                                           ; SOURCE LINE # 158
000D AF00        R     MOV     R7,iLbaStart+03H
000F 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 159
0012 7808              MOV     R0,#08H
0014 120000      R     LCALL   L?0080
                                           ; SOURCE LINE # 160
0017 7810              MOV     R0,#010H
C51 COMPILER V7.06   CH375                                                                 11/22/2004 22:08:30 PAGE 14  

0019 120000      R     LCALL   L?0080
                                           ; SOURCE LINE # 161
001C AF00        R     MOV     R7,iLbaStart+03H
001E AE00        R     MOV     R6,iLbaStart+02H
0020 AD00        R     MOV     R5,iLbaStart+01H
0022 AC00        R     MOV     R4,iLbaStart
0024 7818              MOV     R0,#018H
0026 120000      E     LCALL   ?C?ULSHR
0029 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 162
002C AF00        R     MOV     R7,iSectorCount
002E 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 164
0031 E500        R     MOV     A,iSectorCount
0033 75F008            MOV     B,#08H
0036 A4                MUL     AB
;---- Variable 'mBlockCount' assigned to Register 'R4/R5' ----
0037 FD                MOV     R5,A
0038 ACF0              MOV     R4,B
003A         ?C0032:
003A ED                MOV     A,R5
003B 4C                ORL     A,R4
003C 6039              JZ      ?C0033
                                           ; SOURCE LINE # 165
003E 120000      R     LCALL   mWaitInterrupt
0041 8F00        R     MOV     mIntStatus,R7
                                           ; SOURCE LINE # 166
0043 E500        R     MOV     A,mIntStatus
0045 641D              XRL     A,#01DH
0047 702E              JNZ     ?C0033
                                           ; SOURCE LINE # 167
                                           ; SOURCE LINE # 168
0049 120000      R     LCALL   L?0082
;---- Variable 'mLength' assigned to Register 'R6' ----
004C AE07              MOV     R6,AR7
                                           ; SOURCE LINE # 171
004E EE                MOV     A,R6
004F 601A              JZ      ?C0036
0051         ?C0039:
                                           ; SOURCE LINE # 172
                                           ; SOURCE LINE # 173
0051 120000      R     LCALL   CH375_DAT_PORT_in
0054 AB00        R     MOV     R3,mBufferPoint
0056 AA00        R     MOV     R2,mBufferPoint+01H
0058 A900        R     MOV     R1,mBufferPoint+02H
005A EF                MOV     A,R7
005B 120000      E     LCALL   ?C?CSTPTR
                                           ; SOURCE LINE # 174
005E 7401              MOV     A,#01H
0060 2500        R     ADD     A,mBufferPoint+02H
0062 F500        R     MOV     mBufferPoint+02H,A
0064 E4                CLR     A
0065 3500        R     ADDC    A,mBufferPoint+01H
0067 F500        R     MOV     mBufferPoint+01H,A
                                           ; SOURCE LINE # 175
0069 DEE6              DJNZ    R6,?C0039
                                           ; SOURCE LINE # 176
006B         ?C0036:
                                           ; SOURCE LINE # 177
006B 7F55              MOV     R7,#055H
006D 120000      R     LCALL   _CH375_CMD_PORT_d_out
                                           ; SOURCE LINE # 178
C51 COMPILER V7.06   CH375                                                                 11/22/2004 22:08:30 PAGE 15  

                                           ; SOURCE LINE # 179
                                           ; SOURCE LINE # 180
0070         ?C0034:
0070 ED                MOV     A,R5
0071 1D                DEC     R5
0072 70C6              JNZ     ?C0032
0074 1C                DEC     R4
0075         ?C0078:
0075 80C3              SJMP    ?C0032
0077         ?C0033:
                                           ; SOURCE LINE # 181
0077 ED                MOV     A,R5
0078 4C                ORL     A,R4
0079 7005              JNZ     ?C0041
007B 120000      R     LCALL   mWaitInterrupt
007E 8F00        R     MOV     mIntStatus,R7
0080         ?C0041:
                                           ; SOURCE LINE # 182
0080 E500        R     MOV     A,mIntStatus
0082 B41403            CJNE    A,#014H,?C0042
0085 7F01              MOV     R7,#01H
0087 22                RET     
0088         ?C0042:
                                           ; SOURCE LINE # 183
0088 7F00              MOV     R7,#00H
                                           ; SOURCE LINE # 184
008A         ?C0043:
008A 22                RET     
             ; FUNCTION _RBC_Read (END)

             ; FUNCTION _RBC_Write (BEGIN)
                                           ; SOURCE LINE # 187
0000 8F00        R     MOV     iLbaStart+03H,R7
0002 8E00        R     MOV     iLbaStart+02H,R6
0004 8D00        R     MOV     iLbaStart+01H,R5
0006 8C00        R     MOV     iLbaStart,R4
                                           ; SOURCE LINE # 189
                                           ; SOURCE LINE # 193
0008 7F56              MOV     R7,#056H
000A 120000      R     LCALL   _CH375_CMD_PORT_d_out
                                           ; SOURCE LINE # 194
000D AF00        R     MOV     R7,iLbaStart+03H
000F 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 195
0012 AF00        R     MOV     R7,iLbaStart+03H
0014 AE00        R     MOV     R6,iLbaStart+02H
0016 AD00        R     MOV     R5,iLbaStart+01H
0018 AC00        R     MOV     R4,iLbaStart
001A 7808              MOV     R0,#08H
001C 120000      E     LCALL   ?C?ULSHR
001F 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 196
0022 AF00        R     MOV     R7,iLbaStart+03H
0024 AE00        R     MOV     R6,iLbaStart+02H
0026 AD00        R     MOV     R5,iLbaStart+01H
0028 AC00        R     MOV     R4,iLbaStart
002A 7810              MOV     R0,#010H
002C 120000      E     LCALL   ?C?ULSHR
002F 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 197
0032 AF00        R     MOV     R7,iLbaStart+03H
0034 AE00        R     MOV     R6,iLbaStart+02H
C51 COMPILER V7.06   CH375                                                                 11/22/2004 22:08:30 PAGE 16  

0036 AD00        R     MOV     R5,iLbaStart+01H
0038 AC00        R     MOV     R4,iLbaStart
003A 7818              MOV     R0,#018H
003C 120000      E     LCALL   ?C?ULSHR
003F 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 198
0042 AF00        R     MOV     R7,iSectorCount
0044 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 200
0047 E500        R     MOV     A,iSectorCount
0049 75F008            MOV     B,#08H
004C A4                MUL     AB
;---- Variable 'mBlockCount' assigned to Register 'R4/R5' ----
004D FD                MOV     R5,A
004E ACF0              MOV     R4,B
0050         ?C0045:
0050 ED                MOV     A,R5
0051 4C                ORL     A,R4
0052 603D              JZ      ?C0046
                                           ; SOURCE LINE # 201
0054 120000      R     LCALL   mWaitInterrupt
0057 8F00        R     MOV     mIntStatus,R7
                                           ; SOURCE LINE # 202
0059 E500        R     MOV     A,mIntStatus
005B 641E              XRL     A,#01EH
005D 7032              JNZ     ?C0046
                                           ; SOURCE LINE # 203
005F 7F2B              MOV     R7,#02BH
0061 120000      R     LCALL   _CH375_CMD_PORT_d_out
                                           ; SOURCE LINE # 204
;---- Variable 'mLength' assigned to Register 'R6' ----
0064 7E40              MOV     R6,#040H
                                           ; SOURCE LINE # 205
0066 7F40              MOV     R7,#040H
0068 120000      R     LCALL   _CH375_DAT_PORT_d_out
006B         ?C0051:
                                           ; SOURCE LINE # 208
                                           ; SOURCE LINE # 209
006B AB00        R     MOV     R3,mBufferPoint
006D AA00        R     MOV     R2,mBufferPoint+01H
006F A900        R     MOV     R1,mBufferPoint+02H
0071 120000      E     LCALL   ?C?CLDPTR
0074 FF                MOV     R7,A
0075 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 210
0078 7401              MOV     A,#01H
007A 2500        R     ADD     A,mBufferPoint+02H
007C F500        R     MOV     mBufferPoint+02H,A
007E E4                CLR     A
007F 3500        R     ADDC    A,mBufferPoint+01H
0081 F500        R     MOV     mBufferPoint+01H,A
                                           ; SOURCE LINE # 211
0083 DEE6              DJNZ    R6,?C0051
                                           ; SOURCE LINE # 212
0085 7F57              MOV     R7,#057H
0087 120000      R     LCALL   _CH375_CMD_PORT_d_out
                                           ; SOURCE LINE # 213
                                           ; SOURCE LINE # 214
                                           ; SOURCE LINE # 215
008A         ?C0047:
008A ED                MOV     A,R5
008B 1D                DEC     R5
C51 COMPILER V7.06   CH375                                                                 11/22/2004 22:08:30 PAGE 17  

008C 70C2              JNZ     ?C0045
008E 1C                DEC     R4
008F         ?C0079:
008F 80BF              SJMP    ?C0045
0091         ?C0046:
                                           ; SOURCE LINE # 216
0091 ED                MOV     A,R5
0092 4C                ORL     A,R4
0093 7005              JNZ     ?C0053
0095 120000      R     LCALL   mWaitInterrupt
0098 8F00        R     MOV     mIntStatus,R7
009A         ?C0053:
                                           ; SOURCE LINE # 217
009A E500        R     MOV     A,mIntStatus
009C B41403            CJNE    A,#014H,?C0054
009F 7F01              MOV     R7,#01H
00A1 22                RET     
00A2         ?C0054:
                                           ; SOURCE LINE # 218
00A2 7F00              MOV     R7,#00H
                                           ; SOURCE LINE # 219
00A4         ?C0055:
00A4 22                RET     
             ; FUNCTION _RBC_Write (END)

             ; FUNCTION _mCH375Read (BEGIN)
                                           ; SOURCE LINE # 221
;---- Variable 'mAddr' assigned to Register 'R6' ----
0000 AE07              MOV     R6,AR7
                                           ; SOURCE LINE # 222
                                           ; SOURCE LINE # 223
0002 7F0A              MOV     R7,#0AH
0004 120000      R     LCALL   _CH375_CMD_PORT_d_out
                                           ; SOURCE LINE # 224
0007 AF06              MOV     R7,AR6
0009 120000      R     LCALL   _CH375_DAT_PORT_d_out
                                           ; SOURCE LINE # 225
000C EE                MOV     A,R6
000D 6003              JZ      ?C0057
000F 020000      R     LJMP    CH375_DAT_PORT_in
0012         ?C0057:
                                           ; SOURCE LINE # 226
0012 7F00              MOV     R7,#00H
                                           ; SOURCE LINE # 227
0014         ?C0058:
0014 22                RET     
             ; FUNCTION _mCH375Read (END)

             ; FUNCTION L?0084 (BEGIN)
0000 7F31              MOV     R7,#031H
0002 120000      R     LCALL   _mCH375Read
0005 AD07              MOV     R5,AR7
0007 7F1E              MOV     R7,#01EH
             ; FUNCTION _mCH375Write (BEGIN)
                                           ; SOURCE LINE # 229

⌨️ 快捷键说明

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