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

📄 ui_director2.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   008F  DDE5              PUSH    IX
   \   0091  F5                PUSH    AF
   \   0092  C5                PUSH    BC
   \   0093  DDE1              POP     IX
   \   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  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   00FF  F6FF              DEFW    65526
    141              BYTE i,tmp;
    142             // region_t region;
    143              DC  oldDC_sav;
    144              GetDCStatus(&oldDC_sav);
   \   0101  210200            LD      HL,2
   \   0104  39                ADD     HL,SP
   \   0105  EB                EX      DE,HL
   \   0106  CD0000            CALL    LWRD GetDCStatus
    145          
    146              SetTextOutMode(1);
   \   0109  1E01              LD      E,1
   \   010B  CD0000            CALL    LWRD SetTextOutMode
    147              SetPenColor(Color_WHITE_def);
   \   010E  CD3403            CALL    LWRD ?0088
    148              if(Old_active!=active)
   \   0111  DD7E0A            LD      A,(IX+10)
   \   0114  DDBE0C            CP      (IX+12)
   \   0117  CA1702            JP      Z,?0006
   \   011A            ?0005:
    149              {
    150          
    151                  //清除旧的活动菜单项
    152                  tmp = Old_active%row_count_def;
   \   011A  0606              LD      B,6
   \   011C  CD0000            CALL    LWRD ?UC_MOD_L01
   \   011F  DD77F6            LD      (IX-10),A
    153                  ResShowPic(file_bck_pic[tmp], menu_bck_x_def, file_pos[tmp]-4);
   \   0122  4F                LD      C,A
   \   0123  0600              LD      B,0
   \   0125  210000            LD      HL,file_pos
   \   0128  09                ADD     HL,BC
   \   0129  7E                LD      A,(HL)
   \   012A  C6FC              ADD     A,252
   \   012C  4F                LD      C,A
   \   012D  C5                PUSH    BC
   \   012E  0E09              LD      C,9
   \   0130  DD6EF6            LD      L,(IX-10)
   \   0133  60                LD      H,B
   \   0134  29                ADD     HL,HL
   \   0135  110600            LD      DE,file_bck_pic
   \   0138  19                ADD     HL,DE
   \   0139  5E                LD      E,(HL)
   \   013A  23                INC     HL
   \   013B  56                LD      D,(HL)
   \   013C  CD6703            CALL    LWRD ?0090
   \   013F  F1                POP     AF
    154                  //ResShowPic(DHT,126,0);
    155                  ResShowPic(DHT,194,8);
   \   0140  0E08              LD      C,8
   \   0142  C5                PUSH    BC
   \   0143  0EC2              LD      C,194
   \   0145  112D00            LD      DE,45
   \   0148  CD6703            CALL    LWRD ?0090
   \   014B  F1                POP     AF
    156           
    157                  //显示新的活动菜单
    158                  tmp = active%row_count_def;
   \   014C  0606              LD      B,6
   \   014E  DD7E0C            LD      A,(IX+12)
   \   0151  CD3D03            CALL    LWRD ?0089
    159                  TransOneRecord(&temp_record,&OnePageRecord[tmp]);    //将idm中记录数据读取到temp_record中
    160                  if(temp_record.filetype==TYPE_FILE)
   \   0154  2014              JR      NZ,?0008
   \   0156            ?0007:
    161                      ResShowPic(MFILE,13,file_pos[tmp]-1);
   \   0156  DD4EF6            LD      C,(IX-10)
   \   0159  47                LD      B,A
   \   015A  210000            LD      HL,file_pos
   \   015D  09                ADD     HL,BC
   \   015E  7E                LD      A,(HL)
   \   015F  C6FF              ADD     A,255
   \   0161  4F                LD      C,A
   \   0162  C5                PUSH    BC
   \   0163  0E0D              LD      C,13
   \   0165  117900            LD      DE,121
   \   0168  1818              JR      ?0075
   \   016A            ?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)
   \   016A  3A0000            LD      A,(temp_record)
   \   016D  B7                OR      A
   \   016E  2016              JR      NZ,?0011
   \   0170            ?0010:
    165                  {
    166                      ResShowPic(MDIR,10,file_pos[tmp]-4);
   \   0170  DD4EF6            LD      C,(IX-10)
   \   0173  47                LD      B,A
   \   0174  210000            LD      HL,file_pos
   \   0177  09                ADD     HL,BC
   \   0178  7E                LD      A,(HL)
   \   0179  C6FC              ADD     A,252
   \   017B  4F                LD      C,A
   \   017C  C5                PUSH    BC
   \   017D  0E0A              LD      C,10
   \   017F  115B00            LD      DE,91
   \   0182            ?0075:
   \   0182  CD6703            CALL    LWRD ?0090
   \   0185  F1                POP     AF
   \   0186            ?0011:
   \   0186            ?0009:
    167                  }
    168          
    169                  ResShowPic(FILEBCK,  explorer_str_x_def-1, file_pos[tmp]-4);
   \   0186  DD4EF6            LD      C,(IX-10)
   \   0189  0600              LD      B,0
   \   018B  210000            LD      HL,file_pos
   \   018E  09                ADD     HL,BC
   \   018F  7E                LD      A,(HL)
   \   0190  C6FC              ADD     A,252
   \   0192  4F                LD      C,A
   \   0193  C5                PUSH    BC
   \   0194  CD6203            CALL    LWRD ?0091
   \   0197  F1                POP     AF
    170                  //ResShowPic(DHTHK,122, file_pos[tmp]-2);
    171                  ResShowPic(DHTHK,194, file_pos[tmp]+5);
   \   0198  DD4EF6            LD      C,(IX-10)
   \   019B  0600              LD      B,0
   \   019D  210000            LD      HL,file_pos
   \   01A0  09                ADD     HL,BC
   \   01A1  7E                LD      A,(HL)
   \   01A2  C605              ADD     A,5
   \   01A4  4F                LD      C,A
   \   01A5  C5                PUSH    BC
   \   01A6  0EC2              LD      C,194
   \   01A8  112E00            LD      DE,46
   \   01AB  CD6703            CALL    LWRD ?0090
   \   01AE  F1                POP     AF
    172          
    173                  SetTextPos(explorer_str_x_def, file_pos[tmp]-2);
   \   01AF  DD4EF6            LD      C,(IX-10)
   \   01B2  0600              LD      B,0
   \   01B4  210000            LD      HL,file_pos
   \   01B7  09                ADD     HL,BC
   \   01B8  7E                LD      A,(HL)
   \   01B9  C6FE              ADD     A,254
   \   01BB  4F                LD      C,A
   \   01BC  1E20              LD      E,32
   \   01BE  CD0000            CALL    LWRD SetTextPos
    174                  SetPenColor(Color_WHITE_def);
   \   01C1  CD3403            CALL    LWRD ?0088
    175                  PutS(temp_record.longname,-1);
   \   01C4  0EFF              LD      C,255
   \   01C6  111900            LD      DE,temp_record+25
   \   01C9  CD0000            CALL    LWRD PutS
    176           
    177                  //重新显示旧的活动菜单
    178                  tmp = Old_active%row_count_def;
   \   01CC  0606              LD      B,6
   \   01CE  DD7E0A            LD      A,(IX+10)
   \   01D1  CD3D03            CALL    LWRD ?0089
    179                  TransOneRecord(&temp_record,&OnePageRecord[tmp]);    //将idm中记录数据读取到temp_record中
    180                  if(temp_record.filetype==TYPE_FILE)
   \   01D4  2014              JR      NZ,?0013
   \   01D6            ?0012:
    181                      ResShowPic(MFILE,13,file_pos[tmp]-1);
   \   01D6  DD4EF6            LD      C,(IX-10)
   \   01D9  47                LD      B,A
   \   01DA  210000            LD      HL,file_pos
   \   01DD  09                ADD     HL,BC
   \   01DE  7E                LD      A,(HL)
   \   01DF  C6FF              ADD     A,255
   \   01E1  4F                LD      C,A
   \   01E2  C5                PUSH    BC
   \   01E3  0E0D              LD      C,13
   \   01E5  117900            LD      DE,121
   \   01E8  1818              JR      ?0076
   \   01EA            ?0013:
    182                  else if(temp_record.filetype==TYPE_DIR)
   \   01EA  3A0000            LD      A,(temp_record)
   \   01ED  B7                OR      A
   \   01EE  2016              JR      NZ,?0016
   \   01F0            ?0015:
    183                  {
    184                      {
    185                          ResShowPic(MDIR,10,file_pos[tmp]-4);
   \   01F0  DD4EF6            LD      C,(IX-10)

⌨️ 快捷键说明

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