ui_main.lst

来自「MP3 整个 SDK」· LST 代码 · 共 928 行 · 第 1/3 页

LST
928
字号
   \   00F5  2805              JR      Z,?0003
   \   00F7            ?0002:
   \   00F7  210000            LD      HL,0
    123              ASSERT(res_entry.length <= 512);
   \   00FA  1869              JR      ?0006
   \   00FC            ?0003:
    124          
    125              //读数据
    126              SD_FSeek(res_fp, SEEK_SET, res_entry.offset);
   \   00FC  2A0200            LD      HL,(res_entry+2)
   \   00FF  E5                PUSH    HL
   \   0100  2A0000            LD      HL,(res_entry)
   \   0103  E5                PUSH    HL
   \   0104  4F                LD      C,A
   \   0105  ED5B0000          LD      DE,(res_fp)
   \   0109  CD0000            CALL    LWRD SD_FSeek
   \   010C  E1                POP     HL
   \   010D  E1                POP     HL
    127              SD_FRead(res_fp, buf, sizeof(buf));
   \   010E  210400            LD      HL,4
   \   0111  E5                PUSH    HL
   \   0112  2B                DEC     HL
   \   0113  2B                DEC     HL
   \   0114  39                ADD     HL,SP
   \   0115  4D                LD      C,L
   \   0116  44                LD      B,H
   \   0117  ED5B0000          LD      DE,(res_fp)
   \   011B  CD0000            CALL    LWRD SD_FRead
   \   011E  F1                POP     AF
    128              res_region.width = (char)buf[0];
   \   011F  210000            LD      HL,0
   \   0122  39                ADD     HL,SP
   \   0123  7E                LD      A,(HL)
   \   0124  320200            LD      (res_region+2),A
    129              res_region.height = (char)buf[1];
   \   0127  23                INC     HL
   \   0128  23                INC     HL
   \   0129  7E                LD      A,(HL)
   \   012A  320300            LD      (res_region+3),A
    130          
    131              //显示
    132              res_region.x = x;
   \   012D  210600            LD      HL,6
   \   0130  39                ADD     HL,SP
   \   0131  7E                LD      A,(HL)
   \   0132  320000            LD      (res_region),A
    133              res_region.y = y;
   \   0135  210C00            LD      HL,12
   \   0138  39                ADD     HL,SP
   \   0139  7E                LD      A,(HL)
   \   013A  320100            LD      (res_region+1),A
    134              PutSDImage(&res_region, res_fp->rwpointer);
   \   013D  211400            LD      HL,20
   \   0140  ED4B0000          LD      BC,(res_fp)
   \   0144  09                ADD     HL,BC
   \   0145  4E                LD      C,(HL)
   \   0146  23                INC     HL
   \   0147  46                LD      B,(HL)
   \   0148  23                INC     HL
   \   0149  5E                LD      E,(HL)
   \   014A  23                INC     HL
   \   014B  56                LD      D,(HL)
   \   014C  D5                PUSH    DE
   \   014D  C5                PUSH    BC
   \   014E  110000            LD      DE,res_region
   \   0151  CD0000            CALL    LWRD PutSDImage
   \   0154  E1                POP     HL
   \   0155  E1                POP     HL
    135              if(ui_auto_update) UpdateScreen(&res_region);
   \   0156  3A0000            LD      A,(ui_auto_update)
   \   0159  B7                OR      A
   \   015A  2806              JR      Z,?0005
   \   015C            ?0004:
   \   015C  110000            LD      DE,res_region
   \   015F  CD0000            CALL    LWRD UpdateScreen
   \   0162            ?0005:
    136              return 1;
   \   0162  210100            LD      HL,1
    137          }
   \   0165            ?0006:
   \   0165  F1                POP     AF
   \   0166  F1                POP     AF
   \   0167  F1                POP     AF
   \   0168  F1                POP     AF
   \   0169  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   016C            ui_show_a:
    138          
    139          
    140          
    141          void ui_show_a(WORD id)                  //音乐类型
    142          {
   \   016C  C5                PUSH    BC
   \   016D  D5                PUSH    DE
    143              main_ResShowPic(id, POS_TYPE, POSY_TYPE);
   \   016E  0E04              LD      C,4
   \   0170  C5                PUSH    BC
   \   0171  0E42              LD      C,66
   \   0173            ?0085:
   \   0173  CD8401            CALL    LWRD ?0091
   \   0176  F1                POP     AF
    144          
    145          }
   \   0177  E1                POP     HL
   \   0178  C1                POP     BC
   \   0179  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   017C            ?0092:
   \   017C  5F                LD      E,A
   \   017D  1600              LD      D,0
   \   017F  21B100            LD      HL,177
   \   0182            ?0093:
   \   0182  19                ADD     HL,DE
   \   0183  EB                EX      DE,HL
   \   0184            ?0091:
   \   0184  3E00              LD      A,BYTE3 main_ResShowPic
   \   0186  21C700            LD      HL,LWRD main_ResShowPic
   \   0189  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   018C            ui_show_b:
    146          void ui_show_b(WORD id)                   //播放模式
    147          {
   \   018C  C5                PUSH    BC
   \   018D  D5                PUSH    DE
    148              main_ResShowPic(id,  POS_PALYMODE,  POSY_PALYMODE);
   \   018E  0E00              LD      C,0
   \   0190  C5                PUSH    BC
   \   0191  0E80              LD      C,128
   \   0193  C37301            JP      LWRD ?0085
    149          }
   \   0196            ui_show_c:
    150          
    151          //id =0, clear the icon
    152          void ui_show_c(WORD id)              //EQ
    153          {
   \   0196  C5                PUSH    BC
   \   0197  D5                PUSH    DE
    154              main_ResShowPic(id,POS_EQ,POSY_EQ);
   \   0198  0E04              LD      C,4
   \   019A  C5                PUSH    BC
   \   019B  0EB2              LD      C,178
   \   019D  C37301            JP      LWRD ?0085
    155          }
   \   01A0            ui_show_d:
    156          
    157          
    158          void ui_show_d(const char *string)   //显示当前时间
    159          {   char id;
   \   01A0  C5                PUSH    BC
   \   01A1  DDE5              PUSH    IX
   \   01A3  F5                PUSH    AF
   \   01A4  D5                PUSH    DE
   \   01A5  DDE1              POP     IX
    160              id=*string-0x30;
   \   01A7  1A                LD      A,(DE)
   \   01A8  C6D0              ADD     A,208
    161              main_ResShowPic(PRGNUM0+id,POS_SONGTIME,POSY_SONGTIME);
   \   01AA  0E32              LD      C,50
   \   01AC  C5                PUSH    BC
   \   01AD  0E3E              LD      C,62
   \   01AF  CD7C01            CALL    LWRD ?0092
   \   01B2  F1                POP     AF
    162              string++;
    163              id= *string-0x30;
   \   01B3  DD7E01            LD      A,(IX+1)
   \   01B6  C6D0              ADD     A,208
    164              main_ResShowPic(PRGNUM0+id,POS_SONGTIME+24,POSY_SONGTIME);
   \   01B8  0E32              LD      C,50
   \   01BA  C5                PUSH    BC
   \   01BB  0E56              LD      C,86
   \   01BD  CD7C01            CALL    LWRD ?0092
   \   01C0  F1                POP     AF
    165              string++;
    166              id= *string-0x30;
   \   01C1  DD7E02            LD      A,(IX+2)
   \   01C4  C6D0              ADD     A,208
    167              main_ResShowPic(PRGNUM0+id,POS_SONGTIME+40,POSY_SONGTIME);
   \   01C6  0E32              LD      C,50
   \   01C8  C5                PUSH    BC
   \   01C9  0E66              LD      C,102
   \   01CB  CD7C01            CALL    LWRD ?0092
   \   01CE  F1                POP     AF
    168              string++;
    169              id= *string-0x30;
   \   01CF  DD7E03            LD      A,(IX+3)
   \   01D2  C6D0              ADD     A,208
    170              main_ResShowPic(PRGNUM0+id,POS_SONGTIME+62,POSY_SONGTIME);
   \   01D4  0E32              LD      C,50
   \   01D6  C5                PUSH    BC
   \   01D7  0E7C              LD      C,124
   \   01D9  CD7C01            CALL    LWRD ?0092
   \   01DC  F1                POP     AF
    171              string++;
    172              id= *string-0x30;
   \   01DD  DD7E04            LD      A,(IX+4)
   \   01E0  C6D0              ADD     A,208
    173              main_ResShowPic(PRGNUM0+id,POS_SONGTIME+78,POSY_SONGTIME);
   \   01E2  0E32              LD      C,50
   \   01E4  C5                PUSH    BC
   \   01E5  0E8C              LD      C,140
   \   01E7  CD7C01            CALL    LWRD ?0092
   \   01EA  F1                POP     AF
    174          }
   \   01EB  E1                POP     HL
   \   01EC  DDE1              POP     IX
   \   01EE  C1                POP     BC
   \   01EF  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   01F2            ui_show_f:
    175          
    176          
    177          void ui_show_f(const char *string)                //文件名/滚屏显示
    178          {
   \   01F2  C5                PUSH    BC
   \   01F3  D5                PUSH    DE
    179              SetTextPos(POS_SCROLLSTRAT, POSY_SCROLL);
   \   01F4  0E6E              LD      C,110
   \   01F6            ?0087:
   \   01F6  1E2D              LD      E,45
   \   01F8  CD0000            CALL    LWRD SetTextPos
    180              PutS(string, -1);
   \   01FB  0EFF              LD      C,255
   \   01FD  210000            LD      HL,0
   \   0200  39                ADD     HL,SP
   \   0201  5E                LD      E,(HL)
   \   0202  23                INC     HL
   \   0203  56                LD      D,(HL)
   \   0204  CD0000            CALL    LWRD PutS
    181          }
   \   0207  E1                POP     HL
   \   0208  C1                POP     BC
   \   0209  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   020C            ui_show_g:
    182          
    183          void ui_show_g(const char *string)         //文件名显示
    184          {
   \   020C  C5                PUSH    BC
   \   020D  D5                PUSH    DE
    185              SetTextPos(POS_FILENAME, POSY_FILENAME);
   \   020E  0E4F              LD      C,79
   \   0210  C3F601            JP      LWRD ?0087
    186              PutS(string, -1);
    187          }
   \   0213            ui_show_vol:
    188          
    189          void ui_show_vol(BYTE volume)         //显示音量信息
    190          {
   \   0213  C5                PUSH    BC
   \   0214  D5                PUSH    DE
   \   0215  F5                PUSH    AF
   \   0216  F5                PUSH    AF
    191                  char temp[3];
    192                  itoa_2(volume, temp);
   \   0217  210000            LD      HL,0
   \   021A  39                ADD     HL,SP
   \   021B  4D                LD      C,L
   \   021C  44                LD      B,H
   \   021D  3E00              LD      A,BYTE3 itoa_2
   \   021F  211C00            LD      HL,LWRD itoa_2
   \   0222  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    193                  main_ResShowPic(TVNUM0+temp[0]-0x30,POS_VOl,POSY_VOl);
   \   0225  0EA2              LD      C,162
   \   0227  C5                PUSH    BC
   \   0228  0E18              LD      C,24
   \   022A  210200            LD      HL,2
   \   022D  39                ADD     HL,SP
   \   022E  5E                LD      E,(HL)
   \   022F  1600              LD      D,0
   \   0231  21C100            LD      HL,193
   \   0234  CD8201            CALL    LWRD ?0093
   \   0237  F1                POP     AF
    194                 main_ResShowPic(TVNUM0+temp[1]-0x30,POS_VOl+6,POSY_VOl);
   \   0238  0EA2              LD      C,162
   \   023A  C5                PUSH    BC
   \   023B  0E1E              LD      C,30
   \   023D  210300            LD      HL,3
   \   0240  39                ADD     HL,SP
   \   0241  5E                LD      E,(HL)
   \   0242  1600              LD      D,0
   \   0244  21C100            LD      HL,193
   \   0247            ?0088:
   \   0247  CD8201            CALL    LWRD ?0093
   \   024A  F1                POP     AF
    195          }
   \   024B  E1                POP     HL
   \   024C  E1                POP     HL
   \   024D  E1                POP     HL
   \   024E  C1                POP     BC
   \   024F  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0252            ui_show_bitrate:
    196          
    197          void ui_show_bitrate(int bitvalue)    //显示比特率
    198          {
   \   0252  C5                PUSH    BC
   \   0253  D5                PUSH    DE
   \   0254  F5                PUSH    AF
   \   0255  F5                PUSH    AF
    199              char temp[4];
    200              itoa_3(bitvalue,temp);
   \   0256  210000            LD      HL,0
   \   0259  39                ADD     HL,SP
   \   025A  4D                LD      C,L
   \   025B  44                LD      B,H
   \   025C  3E00              LD      A,BYTE3 itoa_3
   \   025E  214200            LD      HL,LWRD itoa_3
   \   0261  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    201              main_ResShowPic(MBIT0+temp[0]-0x30,POS_BITRATE,POSY_BITRATE);
   \   0264  0E04              LD      C,4
   \   0266  C5                PUSH    BC
   \   0267  0E09              LD      C,9
   \   0269  210200            LD      HL,2
   \   026C  39                ADD     HL,SP
   \   026D  5E                LD      E,(HL)
   \   026E  1600              LD      D,0

⌨️ 快捷键说明

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