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

📄 ui_playlist2.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 3 页
字号:
##############################################################################
#                                                                            #
# IAR Z80/64180 C-Compiler V4.04B/WIN                                        #
# Front End V4.20N                                       25/Dec/106  17:00:33 #
# Global Optimizer V1.05D                                                    #
#                                                                            #
#       Target option =  Z80                                                 #
#       Memory model  =  banked                                              #
#       Source file   =  d:\case_i_d90f\ap\common\ui_playlist2.c             #
#       List file     =  d:\case_i_d90f\ap\ap_music\list\ui_playlist2.lst    #
#       Object file   =  d:\case_i_d90f\ap\ap_music\obj\ui_playlist2.r01     #
#       ASM file      =  d:\case_i_d90f\ap\ap_music\list\ui_playlist2.s01    #
#       Command line  =  -v0 -mb -OD:\case_i_d90f\ap\ap_music\Obj\ -e -K -w  #
#                        -gA -z9 -RCODE -r0 -DNAPDEBUG                       #
#                        -LD:\case_i_d90f\ap\ap_music\List\ -q -t8           #
#                        -AD:\case_i_d90f\ap\ap_music\List\                  #
#                        -ND:\case_i_d90f\ap\ap_music\List\ -X               #
#                        -Id:\sdk_i_90f\inc\ -Id:\case_i_d90f\inc\           #
#                        d:\case_i_d90f\AP\COMMON\ui_playlist2.c             #
#                                                                            #
#                                             (c) Copyright IAR Systems 1996 #
##############################################################################

   \   0000                    NAME    ui_playlist2(17)
   \   0000                    RSEG    COM_PLAYLIST(0)
   \   0000                    RSEG    IDM_COM_FSL_D(0)
   \   0000                    EXTERN  PlayListFileName
   \   0000                    EXTERN  PlayListScrollRegion
   \   0000                    EXTERN  PutS
   \   0000                    EXTERN  ResShowPic
   \   0000                    EXTERN  ScrollFlag
   \   0000                    EXTERN  Scroll_PlayList
   \   0000                    EXTERN  SetAsciiFont
   \   0000                    EXTERN  SetBackgdColor
   \   0000                    EXTERN  SetPenColor
   \   0000                    EXTERN  SetTextOutMode
   \   0000                    EXTERN  SetTextPos
   \   0000                    PUBLIC  ShowPlaylist
   \   0000                    PUBLIC  com_fname
   \   0000                    EXTERN  fselGetCurGroupL
   \   0000                    EXTERN  fselGetNextGroup
   \   0000                    EXTERN  fselGetPrevGroup
   \   0000                    EXTERN  menu_pos_list
   \   0000                    PUBLIC  read_idm_data_playlist
   \   0000                    PUBLIC  reinit_idm_buf_playlist
   \   0000                    EXTERN  unitochar
   \   0000                    PUBLIC  write_idm_data_playlist
   \   0000                    EXTERN  ?CLZ80B_4_04_L00
   \   0000                    EXTERN  ?UC_MOD_L01
   \   0000                    EXTERN  ?SS_CMP_L02
   \   0000                    EXTERN  ?BANK_CALL_DIRECT_L08
   \   0000                    EXTERN  ?BANK_LEAVE_DIRECT_L08
   \   0000                    EXTERN  ?BANK_FAST_LEAVE_L08
   \   0000                    EXTERN  ?ENT_AUTO_DIRECT_L09
   \   0000                    EXTERN  ?STRLEN_L11
   \   0000                    RSEG    COM_PLAYLIST
   \   0000            write_idm_data_playlist:
      1          /*
      2          *******************************************************************************
      3          *                ACTOS AP
      4          *        ap common lib, directory control file
      5          *
      6          *        (c) Copyright, Actions Co,Ld.
      7          *             All Right Reserved
      8          *
      9          *  $Id: ui_playlist2.c,v 1.1.1.1 2006/05/22 03:23:59 selina Exp $
     10          *******************************************************************************
     11          */
     12          #pragma codeseg(COM_PLAYLIST)
     13          
     14          #include "ap_common.h"
     15          #include "list.h"
     16          #define Color_BULE_Scroll_def  0x0000001f//深蓝
     17          #pragma memory=dataseg(IDM_COM_FSL_D)
     18          char com_fname[5][LISTNAME_DISP_LENNGTH];    //可存放地址为页6的6000H-6FFFH
     19          #pragma memory=default
     20          //extern const char menu_pos_menu[6];
     21          extern const char menu_pos_list[6];
     22          extern char    PlayListFileName[12];
     23          
     24          extern region_t PlayListScrollRegion;
     25          extern BYTE ScrollFlag;
     26          extern void Scroll_PlayList( char * scrollstr, bool mode ,char language,region_t *scroll);
     27          //向IDM数组写数据
     28          BOOL write_idm_data_playlist(char *name, int count)
     29          {
   \   0000  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   0003  0000              DEFW    0
     30               byte status;
     31               status = input8(0x05);
   \   0005  DB05              IN      A,(5)
   \   0007  5F                LD      E,A
     32               output8(0x05, 0xf6);
   \   0008  3EF6              LD      A,246
   \   000A  D305              OUT     (5),A
     33               memcpy( com_fname[count], name, LISTNAME_DISP_LENNGTH);
   \   000C  D5                PUSH    DE
   \   000D  010002            LD      BC,512
   \   0010  DD6E04            LD      L,(IX+4)
   \   0013  65                LD      H,L
   \   0014  69                LD      L,C
   \   0015  29                ADD     HL,HL
   \   0016  010000            LD      BC,com_fname
   \   0019  09                ADD     HL,BC
   \   001A  EB                EX      DE,HL
   \   001B  DD6E02            LD      L,(IX+2)
   \   001E  DD6603            LD      H,(IX+3)
   \   0021            ?0040:
   \   0021  010002            LD      BC,512
   \   0024  EDB0              LDIR
   \   0026  D1                POP     DE
     34               output8(0x05, status);
   \   0027  7B                LD      A,E
   \   0028  D305              OUT     (5),A
     35          
     36          }
   \   002A  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   002D            reinit_idm_buf_playlist:
     37          
     38          //取一屏数据到IDM数组中
     39          void reinit_idm_buf_playlist(int top, int bottom, char *Longnamebuf, BYTE string_id,BOOL direction)
     40          {
   \   002D  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   0030  0000              DEFW    0
   \   0032  FDE5              PUSH    IY
     41              int i;
     42              for(i = top; i <= bottom; i++)
   \   0034  DD6E02            LD      L,(IX+2)
   \   0037  DD6603            LD      H,(IX+3)
   \   003A  E5                PUSH    HL
   \   003B  FDE1              POP     IY
   \   003D            ?0003:
   \   003D  FDE5              PUSH    IY
   \   003F  C1                POP     BC
   \   0040  DD6E04            LD      L,(IX+4)
   \   0043  DD6605            LD      H,(IX+5)
   \   0046  CD0000            CALL    LWRD ?SS_CMP_L02
   \   0049  3877              JR      C,?0002
   \   004B            ?0004:
     43              {
     44                    if( fselGetCurGroupL(Longnamebuf,LISTNAME_DISP_LENNGTH) )
   \   004B  010002            LD      BC,512
   \   004E  DD5E0A            LD      E,(IX+10)
   \   0051  DD560B            LD      D,(IX+11)
   \   0054  3E00              LD      A,BYTE3 fselGetCurGroupL
   \   0056  210000            LD      HL,LWRD fselGetCurGroupL
   \   0059  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   005C  2C                INC     L
   \   005D  2D                DEC     L
   \   005E  2816              JR      Z,?0007
   \   0060            ?0006:
     45                  {
     46                      unitochar(Longnamebuf,LISTNAME_DISP_LENNGTH,string_id);   //   
   \   0060  DD6E0C            LD      L,(IX+12)
   \   0063  E5                PUSH    HL
   \   0064  010002            LD      BC,512
   \   0067  DD5E0A            LD      E,(IX+10)
   \   006A  DD560B            LD      D,(IX+11)
   \   006D  3E00              LD      A,BYTE3 unitochar
   \   006F  210000            LD      HL,LWRD unitochar
   \   0072  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0075  F1                POP     AF
   \   0076            ?0007:
     47                  }
     48                    if(direction)  
   \   0076  AF                XOR     A
   \   0077  DDB60E            OR      (IX+14)
   \   007A  280B              JR      Z,?0009
   \   007C            ?0008:
     49                      write_idm_data_playlist(Longnamebuf, i - top);
   \   007C  DD4E02            LD      C,(IX+2)
   \   007F  DD4603            LD      B,(IX+3)
   \   0082  FDE5              PUSH    IY
   \   0084  E1                POP     HL
   \   0085  1809              JR      ?0032
     50                    else
   \   0087            ?0009:
     51                      write_idm_data_playlist(Longnamebuf, bottom-i);   
   \   0087  FDE5              PUSH    IY
   \   0089  C1                POP     BC
   \   008A  DD6E04            LD      L,(IX+4)
   \   008D  DD6605            LD      H,(IX+5)
   \   0090            ?0032:
   \   0090  ED42              SBC     HL,BC
   \   0092  4D                LD      C,L
   \   0093  44                LD      B,H
   \   0094  DD5E0A            LD      E,(IX+10)
   \   0097  DD560B            LD      D,(IX+11)
   \   009A  3E00              LD      A,BYTE3 write_idm_data_playlist
   \   009C  210000            LD      HL,LWRD write_idm_data_playlist
   \   009F  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00A2            ?0010:
     52                    if(direction)       
   \   00A2  AF                XOR     A
   \   00A3  DDB60E            OR      (IX+14)
   \   00A6  DD5E0A            LD      E,(IX+10)
   \   00A9  DD560B            LD      D,(IX+11)
   \   00AC  2807              JR      Z,?0012
   \   00AE            ?0011:
     53                      fselGetNextGroup(Longnamebuf);            // 取下页数据
   \   00AE  3E00              LD      A,BYTE3 fselGetNextGroup
   \   00B0  210000            LD      HL,LWRD fselGetNextGroup
   \   00B3  1805              JR      ?0033
     54                    else 
   \   00B5            ?0012:
     55                         fselGetPrevGroup(Longnamebuf);           // 取上页数据
   \   00B5  3E00              LD      A,BYTE3 fselGetPrevGroup
   \   00B7  210000            LD      HL,LWRD fselGetPrevGroup
   \   00BA            ?0033:
   \   00BA  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   00BD            ?0013:
     56              }
     57          
     58          }
   \   00BD  FD23              INC     IY
   \   00BF  C33D00            JP      LWRD ?0003
   \   00C2            ?0002:
   \   00C2  FDE1              POP     IY
   \   00C4  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   00C7            read_idm_data_playlist:
     59          
     60          //读数据到数组name中
     61          void read_idm_data_playlist(char *name, int count)
     62          {
   \   00C7  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   00CA  0000              DEFW    0
     63               byte status;
     64               status = input8(0x05);
   \   00CC  DB05              IN      A,(5)
   \   00CE  5F                LD      E,A
     65               output8(0x05 ,0xf6);
   \   00CF  3EF6              LD      A,246
   \   00D1  D305              OUT     (5),A
     66               memcpy(name, com_fname[count], LISTNAME_DISP_LENNGTH);
   \   00D3  D5                PUSH    DE
   \   00D4  010002            LD      BC,512
   \   00D7  DD5E02            LD      E,(IX+2)
   \   00DA  DD5603            LD      D,(IX+3)
   \   00DD  DD6E04            LD      L,(IX+4)
   \   00E0  65                LD      H,L
   \   00E1  69                LD      L,C
   \   00E2  29                ADD     HL,HL
   \   00E3  010000            LD      BC,com_fname
   \   00E6  09                ADD     HL,BC
   \   00E7  C32100            JP      LWRD ?0040

⌨️ 快捷键说明

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