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

📄 fat32readfile.lst

📁 C51实现的FAT32文件系统
💻 LST
📖 第 1 页 / 共 5 页
字号:
0279 00                DB      00H
027A 00                DB      00H
027B 01                DB      01H
                                           ; SOURCE LINE # 29
027C 020000      R     LJMP    ?C0003
027F         ?C0006:
                                           ; SOURCE LINE # 30
027F 900000      R     MOV     DPTR,#fp
0282 E0                MOVX    A,@DPTR
0283 C4                SWAP    A
0284 33                RLC     A
0285 54E0              ANL     A,#0E0H
0287 2400        E     ADD     A,#LOW FCB+018H
0289 F582              MOV     DPL,A
028B E4                CLR     A
028C 3400        E     ADDC    A,#HIGH FCB+018H
028E F583              MOV     DPH,A
C51 COMPILER V6.23a  FAT32READFILE                                                         12/24/2004 00:11:04 PAGE 20  

0290 E0                MOVX    A,@DPTR
0291 FC                MOV     R4,A
0292 A3                INC     DPTR
0293 E0                MOVX    A,@DPTR
0294 FD                MOV     R5,A
0295 A3                INC     DPTR
0296 E0                MOVX    A,@DPTR
0297 FE                MOV     R6,A
0298 A3                INC     DPTR
0299 E0                MOVX    A,@DPTR
029A FF                MOV     R7,A
029B E4                CLR     A
029C FB                MOV     R3,A
029D FA                MOV     R2,A
029E F9                MOV     R1,A
029F F8                MOV     R0,A
02A0 C3                CLR     C
02A1 120000      E     LCALL   ?C?ULCMP
02A4 900000      R     MOV     DPTR,#fp
02A7 7038              JNZ     ?C0009
                                           ; SOURCE LINE # 31
                                           ; SOURCE LINE # 32
02A9 E0                MOVX    A,@DPTR
02AA C4                SWAP    A
02AB 33                RLC     A
02AC 54E0              ANL     A,#0E0H
02AE 2400        E     ADD     A,#LOW FCB+014H
02B0 F582              MOV     DPL,A
02B2 E4                CLR     A
02B3 3400        E     ADDC    A,#HIGH FCB+014H
02B5 F583              MOV     DPH,A
02B7 E0                MOVX    A,@DPTR
02B8 FC                MOV     R4,A
02B9 A3                INC     DPTR
02BA E0                MOVX    A,@DPTR
02BB FD                MOV     R5,A
02BC A3                INC     DPTR
02BD E0                MOVX    A,@DPTR
02BE FE                MOV     R6,A
02BF A3                INC     DPTR
02C0 E0                MOVX    A,@DPTR
02C1 24FE              ADD     A,#0FEH
02C3 FB                MOV     R3,A
02C4 EE                MOV     A,R6
02C5 34FF              ADDC    A,#0FFH
02C7 FA                MOV     R2,A
02C8 ED                MOV     A,R5
02C9 34FF              ADDC    A,#0FFH
02CB F9                MOV     R1,A
02CC EC                MOV     A,R4
02CD 34FF              ADDC    A,#0FFH
02CF F8                MOV     R0,A
02D0 900000      E     MOV     DPTR,#FAT32+05H
02D3 E0                MOVX    A,@DPTR
02D4 FF                MOV     R7,A
02D5 E4                CLR     A
02D6 FC                MOV     R4,A
02D7 FD                MOV     R5,A
02D8 FE                MOV     R6,A
02D9 120000      E     LCALL   ?C?LMUL
02DC 900000      E     MOV     DPTR,#FAT32+0DH
                                           ; SOURCE LINE # 33
C51 COMPILER V6.23a  FAT32READFILE                                                         12/24/2004 00:11:04 PAGE 21  

                                           ; SOURCE LINE # 34
02DF 805C              SJMP    ?C0011
02E1         ?C0009:
                                           ; SOURCE LINE # 36
                                           ; SOURCE LINE # 37
02E1 E0                MOVX    A,@DPTR
02E2 C4                SWAP    A
02E3 33                RLC     A
02E4 54E0              ANL     A,#0E0H
02E6 2400        E     ADD     A,#LOW FCB+014H
02E8 F582              MOV     DPL,A
02EA E4                CLR     A
02EB 3400        E     ADDC    A,#HIGH FCB+014H
02ED F583              MOV     DPH,A
02EF E0                MOVX    A,@DPTR
02F0 FC                MOV     R4,A
02F1 A3                INC     DPTR
02F2 E0                MOVX    A,@DPTR
02F3 FD                MOV     R5,A
02F4 A3                INC     DPTR
02F5 E0                MOVX    A,@DPTR
02F6 FE                MOV     R6,A
02F7 A3                INC     DPTR
02F8 E0                MOVX    A,@DPTR
02F9 24FE              ADD     A,#0FEH
02FB FB                MOV     R3,A
02FC EE                MOV     A,R6
02FD 34FF              ADDC    A,#0FFH
02FF FA                MOV     R2,A
0300 ED                MOV     A,R5
0301 34FF              ADDC    A,#0FFH
0303 F9                MOV     R1,A
0304 EC                MOV     A,R4
0305 34FF              ADDC    A,#0FFH
0307 F8                MOV     R0,A
0308 900000      E     MOV     DPTR,#FAT32+05H
030B E0                MOVX    A,@DPTR
030C FF                MOV     R7,A
030D E4                CLR     A
030E FC                MOV     R4,A
030F FD                MOV     R5,A
0310 FE                MOV     R6,A
0311 120000      E     LCALL   ?C?LMUL
0314 900000      E     MOV     DPTR,#FAT32+0DH
0317 E0                MOVX    A,@DPTR
0318 F8                MOV     R0,A
0319 A3                INC     DPTR
031A E0                MOVX    A,@DPTR
031B F9                MOV     R1,A
031C A3                INC     DPTR
031D E0                MOVX    A,@DPTR
031E FA                MOV     R2,A
031F A3                INC     DPTR
0320 E0                MOVX    A,@DPTR
0321 2F                ADD     A,R7
0322 FF                MOV     R7,A
0323 EA                MOV     A,R2
0324 3E                ADDC    A,R6
0325 FE                MOV     R6,A
0326 E9                MOV     A,R1
0327 3D                ADDC    A,R5
0328 FD                MOV     R5,A
C51 COMPILER V6.23a  FAT32READFILE                                                         12/24/2004 00:11:04 PAGE 22  

0329 E8                MOV     A,R0
032A 3C                ADDC    A,R4
032B FC                MOV     R4,A
032C 900000      R     MOV     DPTR,#fp
032F E0                MOVX    A,@DPTR
0330 C4                SWAP    A
0331 33                RLC     A
0332 54E0              ANL     A,#0E0H
0334 2400        E     ADD     A,#LOW FCB+018H
0336 F582              MOV     DPL,A
0338 E4                CLR     A
0339 3400        E     ADDC    A,#HIGH FCB+018H
033B F583              MOV     DPH,A
033D         ?C0011:
033D E0                MOVX    A,@DPTR
033E F8                MOV     R0,A
033F A3                INC     DPTR
0340 E0                MOVX    A,@DPTR
0341 F9                MOV     R1,A
0342 A3                INC     DPTR
0343 E0                MOVX    A,@DPTR
0344 FA                MOV     R2,A
0345 A3                INC     DPTR
0346 E0                MOVX    A,@DPTR
0347 2F                ADD     A,R7
0348 FF                MOV     R7,A
0349 EA                MOV     A,R2
034A 3E                ADDC    A,R6
034B FE                MOV     R6,A
034C E9                MOV     A,R1
034D 3D                ADDC    A,R5
034E FD                MOV     R5,A
034F E8                MOV     A,R0
0350 3C                ADDC    A,R4
0351 FC                MOV     R4,A
0352 900000      E     MOV     DPTR,#IDE+02H
0355 120000      E     LCALL   ?C?LSTXDATA
0358 120000      E     LCALL   _IDEReadSector
                                           ; SOURCE LINE # 38
035B 900000      R     MOV     DPTR,#fp
035E E0                MOVX    A,@DPTR
035F FB                MOV     R3,A
0360 C4                SWAP    A
0361 33                RLC     A
0362 54E0              ANL     A,#0E0H
0364 2400        E     ADD     A,#LOW FCB+018H
0366 F582              MOV     DPL,A
0368 E4                CLR     A
0369 3400        E     ADDC    A,#HIGH FCB+018H
036B F583              MOV     DPH,A
036D E0                MOVX    A,@DPTR
036E FC                MOV     R4,A
036F A3                INC     DPTR
0370 E0                MOVX    A,@DPTR
0371 FD                MOV     R5,A
0372 A3                INC     DPTR
0373 E0                MOVX    A,@DPTR
0374 FE                MOV     R6,A
0375 A3                INC     DPTR
0376 E0                MOVX    A,@DPTR
0377 2401              ADD     A,#01H
0379 FF                MOV     R7,A
C51 COMPILER V6.23a  FAT32READFILE                                                         12/24/2004 00:11:04 PAGE 23  

037A E4                CLR     A
037B 3E                ADDC    A,R6
037C FE                MOV     R6,A
037D E4                CLR     A
037E 3D                ADDC    A,R5
037F FD                MOV     R5,A
0380 E4                CLR     A
0381 3C                ADDC    A,R4
0382 FC                MOV     R4,A
0383 EB                MOV     A,R3
0384 C4                SWAP    A
0385 33                RLC     A
0386 54E0              ANL     A,#0E0H
0388 2400        E     ADD     A,#LOW FCB+018H
038A F582              MOV     DPL,A
038C E4                CLR     A
038D 3400        E     ADDC    A,#HIGH FCB+018H
038F F583              MOV     DPH,A
0391 120000      E     LCALL   ?C?LSTXDATA
                                           ; SOURCE LINE # 39
                                           ; SOURCE LINE # 40
0394         ?C0003:
                                           ; SOURCE LINE # 41
0394 900000      R     MOV     DPTR,#tmp
0397 E0                MOVX    A,@DPTR
0398 FE                MOV     R6,A
0399 A3                INC     DPTR
039A E0                MOVX    A,@DPTR
039B FF                MOV     R7,A
                                           ; SOURCE LINE # 42
039C         ?C0002:
039C 22                RET     
             ; FUNCTION _FAT32ReadFile (END)

C51 COMPILER V6.23a  FAT32READFILE                                                         12/24/2004 00:11:04 PAGE 24  

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


DWORD. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_LONG   -----  4
FCBStr . . . . . . . . . . . . . . . .  * TAG *  -----  STRUCT   -----  32
  FileName . . . . . . . . . . . . . .  MEMBER   -----  ARRAY    0000H  12
  Size . . . . . . . . . . . . . . . .  MEMBER   -----  U_LONG   000CH  4
  FirstCluster . . . . . . . . . . . .  MEMBER   -----  U_LONG   0010H  4
  LastCluster. . . . . . . . . . . . .  MEMBER   -----  U_LONG   0014H  4
  ClusSecCnt . . . . . . . . . . . . .  MEMBER   -----  U_LONG   0018H  4
  ByteCnt. . . . . . . . . . . . . . .  MEMBER   -----  U_LONG   001CH  4
FATUni . . . . . . . . . . . . . . . .  * TAG *  -----  UNION    -----  54
  F32. . . . . . . . . . . . . . . . .  MEMBER   -----  STRUCT   0000H  54
  F16. . . . . . . . . . . . . . . . .  MEMBER   -----  STRUCT   0000H  26
HDDStr . . . . . . . . . . . . . . . .  * TAG *  -----  STRUCT   -----  2
  TotalPartitions. . . . . . . . . . .  MEMBER   -----  U_CHAR   0000H  1
  CurrentPartition . . . . . . . . . .  MEMBER   -----  U_CHAR   0001H  1
IDEStr . . . . . . . . . . . . . . . .  * TAG *  -----  STRUCT   -----  8
  TotalDevices . . . . . . . . . . . .  MEMBER   -----  U_CHAR   0000H  1
  CurrentDevice. . . . . . . . . . . .  MEMBER   -----  U_CHAR   0001H  1
  CurrentSector. . . . . . . . . . . .  MEMBER   -----  U_LONG   0002H  4
  BytesPerSec. . . . . . . . . . . . .  MEMBER   -----  U_INT    0006H  2
size_t . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
FATStr . . . . . . . . . . . . . . . .  * TAG *  -----  STRUCT   -----  516
  Sector . . . . . . . . . . . . . . .  MEMBER   -----  U_LONG   0000H  4
  FAT. . . . . . . . . . . . . . . . .  MEMBER   -----  ARRAY    0004H  512
sDPTStr. . . . . . . . . . . . . . . .  * TAG *  -----  STRUCT   -----  9
  TypeCode . . . . . . . . . . . . . .  MEMBER   -----  U_CHAR   0000H  1
  LBABegin . . . . . . . . . . . . . .  MEMBER   -----  U_LONG   0001H  4
  CntSec . . . . . . . . . . . . . . .  MEMBER   -----  U_LONG   0005H  4
CHAR . . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
_FAT32ReadFile . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  fp . . . . . . . . . . . . . . . . .  AUTO     XDATA  U_CHAR   0000H  1
  tmp. . . . . . . . . . . . . . . . .  AUTO     XDATA  U_INT    0001H  2
DPTStr . . . . . . . . . . . . . . . .  * TAG *  -----  STRUCT   -----  16
  BootFlag . . . . . . . . . . . . . .  MEMBER   -----  U_CHAR   0000H  1
  CHSBegin . . . . . . . . . . . . . .  MEMBER   -----  ARRAY    0001H  3
  TypeCode . . . . . . . . . . . . . .  MEMBER   -----  U_CHAR   0004H  1
  CHSEnd . . . . .

⌨️ 快捷键说明

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