fat32.m51

来自「这是一个基于8255扩展端口的keil c51固件」· M51 代码 · 共 1,302 行 · 第 1/4 页

M51
1,302
字号
BL51 BANKED LINKER/LOCATER V5.00                                                        01/06/2004  00:16:36  PAGE 1


BL51 BANKED LINKER/LOCATER V5.00, INVOKED BY:
F:\KEIL\C51\BIN\BL51.EXE fileio.obj, IDE_LIB.obj, fat32.obj, STARTUP.obj, TIMERTICK.obj, FAT_TEST.obj, util.obj TO fat32
>>  RAMSIZE (256) CODE (0X4000-0X7FFF) XDATA (0X8200-0XBFFF)


MEMORY MODEL: LARGE


INPUT MODULES INCLUDED:
  fileio.obj (FILEIO)
  IDE_LIB.obj (IDE_LIB)
  fat32.obj (FAT32)
  STARTUP.obj (?C_STARTUP)
  TIMERTICK.obj (TIMERTICK)
  FAT_TEST.obj (FAT_TEST)
  util.obj (UTIL)
  F:\KEIL\C51\LIB\C51L.LIB (?C_INIT)
  F:\KEIL\C51\LIB\C51L.LIB (?C?COPY)
  F:\KEIL\C51\LIB\C51L.LIB (?C?CLDPTR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?CSTPTR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?IILDX)
  F:\KEIL\C51\LIB\C51L.LIB (?C?ILDOPTR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?ISTOPTR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LMUL)
  F:\KEIL\C51\LIB\C51L.LIB (?C?ULCMP)
  F:\KEIL\C51\LIB\C51L.LIB (?C?ULSHR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?SLSHR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LSHL)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDPTR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDOPTR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LSTPTR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LSTOPTR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDOPTR0)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LSTXDATA)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LSTKXDATA)
  F:\KEIL\C51\LIB\C51L.LIB (?C?OFFXADD)
  F:\KEIL\C51\LIB\C51L.LIB (PRINTF)
  F:\KEIL\C51\LIB\C51L.LIB (?C?MEMCMP)
  F:\KEIL\C51\LIB\C51L.LIB (?C?CLDOPTR)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDIDATA)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDXDATA)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDPDATA)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDCODE)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDIDATA0)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDXDATA0)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDPDATA0)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LLDCODE0)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LSTIDATA)
  F:\KEIL\C51\LIB\C51L.LIB (?C?LSTPDATA)
  F:\KEIL\C51\LIB\C51L.LIB (?C?PLDIXDATA)
  F:\KEIL\C51\LIB\C51L.LIB (?C?PSTXDATA)
  F:\KEIL\C51\LIB\C51L.LIB (?C?CCASE)
  F:\KEIL\C51\LIB\C51L.LIB (PUTCHAR)


LINK MAP OF MODULE:  fat32 (FILEIO)


BL51 BANKED LINKER/LOCATER V5.00                                                      01/06/2004  00:16:36  PAGE 2


            TYPE    BASE      LENGTH    RELOCATION   SEGMENT NAME
            -----------------------------------------------------

            * * * * * * *   D A T A   M E M O R Y   * * * * * * *
            REG     0000H     0008H     ABSOLUTE     "REG BANK 0"
            DATA    0008H     0005H     UNIT         _DATA_GROUP_
                    000DH     000BH                  *** GAP ***
            REG     0018H     0008H     ABSOLUTE     "REG BANK 3"
            BIT     0020H.0   0001H.1   UNIT         _BIT_GROUP_
                    0021H.1   0000H.7                *** GAP ***
            IDATA   0022H     0001H     UNIT         ?STACK

            * * * * * * *  X D A T A   M E M O R Y  * * * * * * *
                    0000H     8200H                  *** GAP ***
            XDATA   8200H     02ECH     UNIT         ?XD?FAT32
            XDATA   84ECH     0116H     UNIT         _XDATA_GROUP_
            XDATA   8602H     0007H     UNIT         ?XD?_WRITE_SECTOR?IDE_LIB
            XDATA   8609H     0006H     UNIT         ?XD?_WRITE_DATA?IDE_LIB
            XDATA   860FH     0006H     UNIT         ?XD?_FSEEK?FAT32
            XDATA   8615H     0006H     UNIT         ?XD?TIMERTICK
            XDATA   861BH     0003H     UNIT         ?XD?_DRIVE_ID?IDE_LIB
            XDATA   861EH     0001H     UNIT         ?XD?SPINUP?IDE_LIB
            XDATA   861FH     0001H     UNIT         ?XD?SPINDOWN?IDE_LIB
                    8620H     59E0H                  *** GAP ***
            XDATA   E000H     0001H     ABSOLUTE     
            XDATA   E001H     0001H     ABSOLUTE     
            XDATA   E002H     0001H     ABSOLUTE     
            XDATA   E003H     0001H     ABSOLUTE     

            * * * * * * *   C O D E   M E M O R Y   * * * * * * *
                    0000H     4000H                  *** GAP ***
            CODE    4000H     05DCH     UNIT         ?C?LIB_CODE
            CODE    45DCH     0365H     UNIT         ?PR?PRINTF?PRINTF
            CODE    4941H     0208H     UNIT         ?PR?_FREAD?FAT32
            CODE    4B49H     01F8H     UNIT         ?PR?_FIXBPB?FAT32
            CODE    4D41H     016EH     UNIT         ?PR?INIT_FAT32?FAT32
            CODE    4EAFH     013AH     UNIT         ?PR?_FOPEN?FAT32
            CODE    4FE9H     00CFH     UNIT         ?PR?_LONG_BIG_ENDIAN?UTIL
            CODE    50B8H     00C5H     UNIT         ?PR?_FSEEK?FAT32
            CODE    517DH     00ABH     UNIT         ?PR?_GETFILEENTRY?FAT32
            CODE    5228H     00A1H     UNIT         ?PR?MAIN?FAT_TEST
            CODE    52C9H     008CH     UNIT         ?C_C51STARTUP
            CODE    5355H     0084H     UNIT         ?PR?_WR_LBA?IDE_LIB
            CODE    53D9H     006CH     UNIT         ?PR?_WRITE_DATA?IDE_LIB
            CODE    5445H     0065H     UNIT         ?PR?_READ_DATA?IDE_LIB
            CODE    54AAH     005DH     UNIT         ?PR?_READ_SECTOR?IDE_LIB
            CODE    5507H     0057H     UNIT         ?PR?_IDE_BUSY?IDE_LIB
            CODE    555EH     0057H     UNIT         ?PR?_IDE_DRQ?IDE_LIB
            CODE    55B5H     0053H     UNIT         ?PR?INT1?TIMERTICK
            CODE    5608H     004BH     UNIT         ?PR?SPINUP?IDE_LIB
            CODE    5653H     004BH     UNIT         ?PR?SPINDOWN?IDE_LIB
            CODE    569EH     0047H     UNIT         ?CO?IDE_LIB
            CODE    56E5H     003BH     UNIT         ?PR?IDE_INIT?IDE_LIB
            CODE    5720H     003BH     UNIT         ?PR?_CLUST2SECT?FAT32
            CODE    575BH     0033H     UNIT         ?PR?_WRITE_SECTOR?IDE_LIB
            CODE    578EH     002DH     UNIT         ?CO?FAT_TEST
            CODE    57BBH     002CH     UNIT         ?PR?_IDE_RD?IDE_LIB
BL51 BANKED LINKER/LOCATER V5.00                                                      01/06/2004  00:16:36  PAGE 3


            CODE    57E7H     0027H     UNIT         ?PR?PUTCHAR?PUTCHAR
            CODE    580EH     0023H     UNIT         ?PR?_IDE_WR?IDE_LIB
            CODE    5831H     001FH     UNIT         ?PR?_FCLOSE?FAT32
            CODE    5850H     001FH     UNIT         ?PR?_DELAY?UTIL
            CODE    586FH     001DH     UNIT         ?PR?IDE_HARD_RESET?IDE_LIB
            CODE    588CH     001DH     UNIT         ?PR?INITFILES?FAT32
            CODE    58A9H     001CH     UNIT         ?PR?_DRIVE_ID?IDE_LIB
            CODE    58C5H     0015H     UNIT         ?PR?_CHECKSECT?FAT32
            CODE    58DAH     0014H     UNIT         ?C_INITSEG
            CODE    58EEH     0014H     UNIT         ?PR?INITTIMER?TIMERTICK
            CODE    5902H     000FH     UNIT         ?PR?ROOTDIR?FAT32
            CODE    5911H     000FH     UNIT         ?PR?GETSECONDS?TIMERTICK
            CODE    5920H     000FH     UNIT         ?PR?INIT?FAT_TEST
            CODE    592FH     000FH     UNIT         ?PR?_INT_BIG_ENDIAN?UTIL
            CODE    593EH     000CH     UNIT         ?PR?GET_ERR?IDE_LIB
                    594AH     26B6H                  *** GAP ***
            CODE    8000H     0003H     ABSOLUTE     
                    8003H     0008H                  *** GAP ***
            CODE    800BH     0003H     ABSOLUTE     



OVERLAY MAP OF MODULE:   fat32 (FILEIO)


SEGMENT                               BIT_GROUP          DATA_GROUP          XDATA_GROUP
  +--> CALLED SEGMENT              START    LENGTH     START    LENGTH     START    LENGTH
------------------------------------------------------------------------------------------
?C_C51STARTUP                      -----    -----      -----    -----      -----    -----
  +--> ?PR?MAIN?FAT_TEST
  +--> ?C_INITSEG

?PR?MAIN?FAT_TEST                  -----    -----      -----    -----      84ECH    00CCH
  +--> ?PR?INIT?FAT_TEST
  +--> ?CO?FAT_TEST
  +--> ?PR?PRINTF?PRINTF
  +--> ?PR?_FOPEN?FAT32
  +--> ?PR?_FREAD?FAT32
  +--> ?PR?_FCLOSE?FAT32
  +--> ?PR?_DELAY?UTIL

?PR?INIT?FAT_TEST                  -----    -----      -----    -----      -----    -----
  +--> ?PR?INITTIMER?TIMERTICK
  +--> ?PR?IDE_HARD_RESET?IDE_LIB
  +--> ?PR?IDE_INIT?IDE_LIB
  +--> ?PR?INIT_FAT32?FAT32
  +--> ?PR?INITFILES?FAT32

?PR?IDE_INIT?IDE_LIB               -----    -----      -----    -----      -----    -----
  +--> ?PR?_IDE_WR?IDE_LIB
  +--> ?PR?_IDE_RD?IDE_LIB
  +--> ?PR?_IDE_BUSY?IDE_LIB

?PR?_IDE_BUSY?IDE_LIB              -----    -----      -----    -----      85DAH    0006H
  +--> ?PR?GETSECONDS?TIMERTICK
  +--> ?PR?_IDE_RD?IDE_LIB

BL51 BANKED LINKER/LOCATER V5.00                                                      01/06/2004  00:16:36  PAGE 4


?PR?INIT_FAT32?FAT32               -----    -----      -----    -----      85B8H    0007H
  +--> ?PR?_READ_SECTOR?IDE_LIB
  +--> ?PR?_LONG_BIG_ENDIAN?UTIL
  +--> ?PR?_FIXBPB?FAT32

?PR?_READ_SECTOR?IDE_LIB           -----    -----      -----    -----      85D1H    0009H
  +--> ?PR?_IDE_BUSY?IDE_LIB
  +--> ?PR?_WR_LBA?IDE_LIB
  +--> ?PR?_IDE_WR?IDE_LIB
  +--> ?PR?_IDE_DRQ?IDE_LIB
  +--> ?PR?_READ_DATA?IDE_LIB
  +--> ?CO?IDE_LIB
  +--> ?PR?PRINTF?PRINTF
  +--> ?PR?GET_ERR?IDE_LIB

?PR?_WR_LBA?IDE_LIB                -----    -----      -----    -----      85DAH    0004H
  +--> ?PR?_IDE_WR?IDE_LIB

?PR?_IDE_DRQ?IDE_LIB               -----    -----      -----    -----      85DAH    0006H
  +--> ?PR?GETSECONDS?TIMERTICK
  +--> ?PR?_IDE_RD?IDE_LIB

?PR?_READ_DATA?IDE_LIB             -----    -----      -----    -----      85DAH    0005H
  +--> ?PR?_IDE_RD?IDE_LIB

?PR?PRINTF?PRINTF                  0020H.0  0001H.1    0008H    0005H      85DAH    0028H
  +--> ?PR?PUTCHAR?PUTCHAR

?PR?GET_ERR?IDE_LIB                -----    -----      -----    -----      -----    -----
  +--> ?PR?_IDE_RD?IDE_LIB

?PR?_LONG_BIG_ENDIAN?UTIL          -----    -----      -----    -----      85C2H    0008H

?PR?_FIXBPB?FAT32                  -----    -----      -----    -----      85BFH    0003H
  +--> ?PR?_INT_BIG_ENDIAN?UTIL
  +--> ?PR?_LONG_BIG_ENDIAN?UTIL

?PR?_FOPEN?FAT32                   -----    -----      -----    -----      85B8H    0005H
  +--> ?PR?ROOTDIR?FAT32
  +--> ?PR?_GETFILEENTRY?FAT32
  +--> ?PR?_INT_BIG_ENDIAN?UTIL
  +--> ?PR?_CLUST2SECT?FAT32
  +--> ?PR?_LONG_BIG_ENDIAN?UTIL

?PR?_GETFILEENTRY?FAT32            -----    -----      -----    -----      85BDH    000CH
  +--> ?PR?_CLUST2SECT?FAT32
  +--> ?PR?_CHECKSECT?FAT32

?PR?_CLUST2SECT?FAT32              -----    -----      -----    -----      85C9H    0004H

?PR?_CHECKSECT?FAT32               -----    -----      -----    -----      -----    -----
  +--> ?PR?_READ_SECTOR?IDE_LIB

?PR?_FREAD?FAT32                   -----    -----      -----    -----      85B8H    0019H
  +--> ?PR?_READ_SECTOR?IDE_LIB


BL51 BANKED LINKER/LOCATER V5.00                                                      01/06/2004  00:16:36  PAGE 5



SYMBOL TABLE OF MODULE:  fat32 (FILEIO)

  VALUE           TYPE          NAME
  ----------------------------------

  -------         MODULE        FILEIO
  C:0000H         SYMBOL        _ICE_DUMMY_
  -------         ENDMOD        FILEIO

  -------         MODULE        IDE_LIB
  C:0000H         SYMBOL        _ICE_DUMMY_
  C:575BH         PUBLIC        _write_sector
  C:53D9H         PUBLIC        _write_data
  X:E000H         PUBLIC        ide_8255_lsb
  X:E001H         PUBLIC        ide_8255_msb
  X:E002H         PUBLIC        ide_8255_ctl
  C:5608H         PUBLIC        spinup
  C:58A9H         PUBLIC        _drive_id
  C:5513H         PUBLIC        _ide_busy
  C:586FH         PUBLIC        ide_hard_reset
  C:5562H         PUBLIC        _ide_drq
  C:57BBH         PUBLIC        _ide_rd
  C:56E5H         PUBLIC        ide_init
  C:5360H         PUBLIC        _wr_lba
  C:5812H         PUBLIC        _ide_wr
  X:E003H         PUBLIC        cfg_8255
  C:593EH         PUBLIC        get_err
  C:54AAH         PUBLIC        _read_sector
  C:5653H         PUBLIC        spindown
  C:5445H         PUBLIC        _read_data
  -------         PROC          SPINUP
  -------         DO            
  X:861EH         SYMBOL        i
  D:0007H         SYMBOL        status
  -------         ENDDO         
  C:5608H         LINE#         38
  C:5608H         LINE#         39
  C:560DH         LINE#         40
  C:560DH         LINE#         42
  C:5612H         LINE#         44
  C:5615H         LINE#         46
  C:561BH         LINE#         47
  C:5641H         LINE#         49
  C:5649H         LINE#         50
  C:5652H         LINE#         51
  -------         ENDPROC       SPINUP
  -------         PROC          SPINDOWN
  -------         DO            
  X:861FH         SYMBOL        i
  D:0007H         SYMBOL        status
  -------         ENDDO         
  C:5653H         LINE#         53
  C:5653H         LINE#         54
  C:5658H         LINE#         55
  C:5658H         LINE#         57
  C:565DH         LINE#         59
BL51 BANKED LINKER/LOCATER V5.00                                                      01/06/2004  00:16:36  PAGE 6


  C:5660H         LINE#         60
  C:5666H         LINE#         61
  C:568CH         LINE#         62
  C:5694H         LINE#         63
  C:569DH         LINE#         64
  -------         ENDPROC       SPINDOWN
  C:5507H         SYMBOL        L?0068
  C:550FH         SYMBOL        L?0069
  -------         PROC          L?0067
  -------         ENDPROC       L?0067
  C:5507H         SYMBOL        L?0068
  C:550FH         SYMBOL        L?0069
  -------         PROC          _IDE_BUSY
  X:85DAH         SYMBOL        a_timeout
  -------         DO            
  X:85DCH         SYMBOL        inittime
  X:85DEH         SYMBOL        status
  -------         ENDDO         
  C:5513H         LINE#         67
  C:551BH         LINE#         69
  C:5526H         LINE#         71
  C:5526H         LINE#         72

⌨️ 快捷键说明

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