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

📄 ui_director2.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   0095  D5                PUSH    DE
   \   0096  FDE1              POP     IY
    107              byte status;
    108              status = input8(0x05);
   \   0098  DB05              IN      A,(5)
   \   009A  210000            LD      HL,0
   \   009D  39                ADD     HL,SP
   \   009E  77                LD      (HL),A
    109              output8(0x05, 0xf6);
   \   009F  3EF6              LD      A,246
   \   00A1  D305              OUT     (5),A
    110          
    111              target->filetype=source_record->filetype;           //文件类型 0-- 目录  1  文件
   \   00A3  0A                LD      A,(BC)
   \   00A4  EB                EX      DE,HL
   \   00A5  77                LD      (HL),A
    112              memcpy(target->dirno,source_record->dirno,8);    //目录序号
   \   00A6  010800            LD      BC,8
   \   00A9  FDE5              PUSH    IY
   \   00AB  D1                POP     DE
   \   00AC  13                INC     DE
   \   00AD  DDE5              PUSH    IX
   \   00AF  E1                POP     HL
   \   00B0  23                INC     HL
   \   00B1  EDB0              LDIR
    113              target->fileno=source_record->fileno;        //文件序号
   \   00B3  DD6E09            LD      L,(IX+9)
   \   00B6  FD7509            LD      (IY+9),L
   \   00B9  DD660A            LD      H,(IX+10)
   \   00BC  FD740A            LD      (IY+10),H
    114              target->fselExtNo=source_record->fselExtNo;    //当前后缀名
   \   00BF  DD460C            LD      B,(IX+12)
   \   00C2  FD700C            LD      (IY+12),B
    115              target->dirlayer=source_record->dirlayer;        //目录层次 0--根目录
   \   00C5  DD460B            LD      B,(IX+11)
   \   00C8  FD700B            LD      (IY+11),B
    116              memcpy(target->name,source_record->name,12);
   \   00CB  210D00            LD      HL,13
   \   00CE  FDE5              PUSH    IY
   \   00D0  D1                POP     DE
   \   00D1  19                ADD     HL,DE
   \   00D2  EB                EX      DE,HL
   \   00D3  210D00            LD      HL,13
   \   00D6  DDE5              PUSH    IX
   \   00D8  C1                POP     BC
   \   00D9  09                ADD     HL,BC
   \   00DA  010C00            LD      BC,12
   \   00DD  EDB0              LDIR
    117              memcpy(target->longname,source_record->longname,50);
   \   00DF  211900            LD      HL,25
   \   00E2  FDE5              PUSH    IY
   \   00E4  D1                POP     DE
   \   00E5  19                ADD     HL,DE
   \   00E6  EB                EX      DE,HL
   \   00E7  211900            LD      HL,25
   \   00EA  DDE5              PUSH    IX
   \   00EC  C1                POP     BC
   \   00ED  09                ADD     HL,BC
   \   00EE  013200            LD      BC,50
   \   00F1  EDB0              LDIR
    118          
    119              output8(0x05, status);
   \   00F3  69                LD      L,C
   \   00F4  60                LD      H,B
   \   00F5  39                ADD     HL,SP
   \   00F6  7E                LD      A,(HL)
   \   00F7  D305              OUT     (5),A
    120          }
   \   00F9  C36100            JP      LWRD ?0087
   \   00FC            ShowDirectory:
    121          
    122          
    123          /********************************************************************************
    124          * Description : show the directory.
    125          *
    126          * Arguments  :
    127          *            location: get thedisk type
    128          *            Invpath: the "\" or name
    129          *            Namebuf:the string you will display
    130          *            type : show file kind
    131          *            string_id: language type
    132          * Returns     :
    133          *            other:    Successful
    134          *            0:    Fail, detail information in fselError
    135          * Notes       :  only display the valid directory or file
    136          *
    137          ********************************************************************************/
    138          
    139           void ShowDirectory(BYTE top,BYTE bottom,BYTE Old_active,BYTE active,BYTE string_id,BYTE Disk)
    140          {
   \   00FC  DDE5              PUSH    IX
   \   00FE  DD210000          LD      IX,0
   \   0102  DD39              ADD     IX,SP
   \   0104  C5                PUSH    BC
   \   0105  D5                PUSH    DE
   \   0106  21F6FF            LD      HL,65526
   \   0109  39                ADD     HL,SP
   \   010A  F9                LD      SP,HL
    141              BYTE i,tmp;
    142             // region_t region;
    143              DC  oldDC_sav;
    144              GetDCStatus(&oldDC_sav);
   \   010B  23                INC     HL
   \   010C  23                INC     HL
   \   010D  EB                EX      DE,HL
   \   010E  CD0000            CALL    LWRD GetDCStatus
    145          
    146              SetTextOutMode(1);
   \   0111  1E01              LD      E,1
   \   0113  CD0000            CALL    LWRD SetTextOutMode
    147              SetPenColor(Color_WHITE_def);
   \   0116  CD4103            CALL    LWRD ?0088
    148              if(Old_active!=active)
   \   0119  DD7E06            LD      A,(IX+6)
   \   011C  DDBE08            CP      (IX+8)
   \   011F  CA1002            JP      Z,?0006
   \   0122            ?0005:
    149              {
    150          
    151                  //清除旧的活动菜单项
    152                  tmp = Old_active%row_count_def;
   \   0122  0606              LD      B,6
   \   0124  CD0000            CALL    LWRD ?UC_MOD_L01
   \   0127  DD77F2            LD      (IX-14),A
    153                  ResShowPic(file_bck_pic[tmp], menu_bck_x_def, file_pos[tmp]-4);
   \   012A  4F                LD      C,A
   \   012B  0600              LD      B,0
   \   012D  210000            LD      HL,file_pos
   \   0130  09                ADD     HL,BC
   \   0131  7E                LD      A,(HL)
   \   0132  C6FC              ADD     A,252
   \   0134  4F                LD      C,A
   \   0135  C5                PUSH    BC
   \   0136  0E09              LD      C,9
   \   0138  DD6EF2            LD      L,(IX-14)
   \   013B  60                LD      H,B
   \   013C  29                ADD     HL,HL
   \   013D  110600            LD      DE,file_bck_pic
   \   0140  19                ADD     HL,DE
   \   0141  5E                LD      E,(HL)
   \   0142  23                INC     HL
   \   0143  56                LD      D,(HL)
   \   0144  CD7403            CALL    LWRD ?0090
   \   0147  F1                POP     AF
    154                  //ResShowPic(DHT,126,0);
    155                  ResShowPic(DHT,194,8);
   \   0148  0E08              LD      C,8
   \   014A  C5                PUSH    BC
   \   014B  0EC2              LD      C,194
   \   014D  112D00            LD      DE,45
   \   0150  CD7403            CALL    LWRD ?0090
   \   0153  F1                POP     AF
    156           
    157                  //显示新的活动菜单
    158                  tmp = active%row_count_def;
   \   0154  0606              LD      B,6
   \   0156  DD7E08            LD      A,(IX+8)
   \   0159  CD4A03            CALL    LWRD ?0089
    159                  TransOneRecord(&temp_record,&OnePageRecord[tmp]);    //将idm中记录数据读取到temp_record中
    160                  if(temp_record.filetype==TYPE_FILE)
   \   015C  2014              JR      NZ,?0008
   \   015E            ?0007:
    161                      ResShowPic(MFILE,13,file_pos[tmp]-1);
   \   015E  DD4EF2            LD      C,(IX-14)
   \   0161  47                LD      B,A
   \   0162  210000            LD      HL,file_pos
   \   0165  09                ADD     HL,BC
   \   0166  7E                LD      A,(HL)
   \   0167  C6FF              ADD     A,255
   \   0169  4F                LD      C,A
   \   016A  C5                PUSH    BC
   \   016B  0E0D              LD      C,13
   \   016D  117900            LD      DE,121
   \   0170  1818              JR      ?0075
   \   0172            ?0008:
    162          //        if(temp_record.filetype==TYPE_FILE)
    163          //        ResShowPic(MFILE, 0, (LCD_HEIGHT-16*(tmp+1)));
    164                  else if(temp_record.filetype==TYPE_DIR)
   \   0172  3A0000            LD      A,(temp_record)
   \   0175  B7                OR      A
   \   0176  2016              JR      NZ,?0011
   \   0178            ?0010:
    165                  {
    166                      ResShowPic(MDIR,10,file_pos[tmp]-4);
   \   0178  DD4EF2            LD      C,(IX-14)
   \   017B  47                LD      B,A
   \   017C  210000            LD      HL,file_pos
   \   017F  09                ADD     HL,BC
   \   0180  7E                LD      A,(HL)
   \   0181  C6FC              ADD     A,252
   \   0183  4F                LD      C,A
   \   0184  C5                PUSH    BC
   \   0185  0E0A              LD      C,10
   \   0187  115B00            LD      DE,91
   \   018A            ?0075:
   \   018A  CD7403            CALL    LWRD ?0090
   \   018D  F1                POP     AF
   \   018E            ?0011:
   \   018E            ?0009:
    167                  }
    168          
    169                  ResShowPic(FILEBCK,  explorer_str_x_def-1, file_pos[tmp]-4);
   \   018E  DD4EF2            LD      C,(IX-14)
   \   0191  0600              LD      B,0
   \   0193  210000            LD      HL,file_pos
   \   0196  09                ADD     HL,BC
   \   0197  7E                LD      A,(HL)
   \   0198  C6FC              ADD     A,252
   \   019A  4F                LD      C,A
   \   019B  C5                PUSH    BC
   \   019C  CD6F03            CALL    LWRD ?0091
   \   019F  F1                POP     AF
    170                  //ResShowPic(DHTHK,122, file_pos[tmp]-2);
    171                  ResShowPic(DHTHK,194, file_pos[tmp]+5);
   \   01A0  DD4EF2            LD      C,(IX-14)
   \   01A3  0600              LD      B,0
   \   01A5  210000            LD      HL,file_pos
   \   01A8  09                ADD     HL,BC
   \   01A9  7E                LD      A,(HL)
   \   01AA  C605              ADD     A,5
   \   01AC  4F                LD      C,A
   \   01AD  C5                PUSH    BC
   \   01AE  0EC2              LD      C,194
   \   01B0  112E00            LD      DE,46
   \   01B3  CD7403            CALL    LWRD ?0090
   \   01B6  F1                POP     AF
    172          
    173                  SetTextPos(explorer_str_x_def, file_pos[tmp]-2);
   \   01B7  CD7C03            CALL    LWRD ?0092
    174                  SetPenColor(Color_WHITE_def);
   \   01BA  CD4103            CALL    LWRD ?0088
    175                  PutS(temp_record.longname,-1);
   \   01BD  0EFF              LD      C,255
   \   01BF  111900            LD      DE,temp_record+25
   \   01C2  CD0000            CALL    LWRD PutS
    176           
    177                  //重新显示旧的活动菜单
    178                  tmp = Old_active%row_count_def;
   \   01C5  0606              LD      B,6
   \   01C7  DD7E06            LD      A,(IX+6)
   \   01CA  CD4A03            CALL    LWRD ?0089
    179                  TransOneRecord(&temp_record,&OnePageRecord[tmp]);    //将idm中记录数据读取到temp_record中
    180                  if(temp_record.filetype==TYPE_FILE)
   \   01CD  2014              JR      NZ,?0013
   \   01CF            ?0012:
    181                      ResShowPic(MFILE,13,file_pos[tmp]-1);
   \   01CF  DD4EF2            LD      C,(IX-14)
   \   01D2  47                LD      B,A
   \   01D3  210000            LD      HL,file_pos
   \   01D6  09                ADD     HL,BC
   \   01D7  7E                LD      A,(HL)
   \   01D8  C6FF              ADD     A,255
   \   01DA  4F                LD      C,A
   \   01DB  C5                PUSH    BC
   \   01DC  0E0D              LD      C,13
   \   01DE  117900            LD      DE,121
   \   01E1  1818              JR      ?0076
   \   01E3            ?0013:
    182                  else if(temp_record.filetype==TYPE_DIR)
   \   01E3  3A0000            LD      A,(temp_record)
   \   01E6  B7                OR      A
   \   01E7  2016              JR      NZ,?0016
   \   01E9            ?0015:
    183                  {
    184                      {
    185                          ResShowPic(MDIR,10,file_pos[tmp]-4);
   \   01E9  DD4EF2            LD      C,(IX-14)
   \   01EC  47                LD      B,A
   \   01ED  210000            LD      HL,file_pos
   \   01F0  09                ADD     HL,BC
   \   01F1  7E                LD      A,(HL)
   \   01F2  C6FC              ADD     A,252
   \   01F4  4F                LD      C,A
   \   01F5  C5                PUSH    BC
   \   01F6  0E0A              LD      C,10

⌨️ 快捷键说明

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