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

📄 main.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 5 页
字号:
    171             delay1();
    172             output8(0x70,IO00Bak);
    173             delay1();     
    174          */  
    175             return  file_num;         
   \   0251  FDE5              PUSH    IY
   \   0253  E1                POP     HL
    176          }
   \   0254            ?0051:
   \   0254  DDF9              LD      SP,IX
   \   0256  DDE1              POP     IX
   \   0258  FDE1              POP     IY
   \   025A  C1                POP     BC
   \   025B  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   025E            ?0102:
   \   025E  110200            LD      DE,g_ID3InfoBuf
   \   0261            ?0103:
   \   0261  3E00              LD      A,BYTE3 unitochar
   \   0263  210000            LD      HL,LWRD unitochar
   \   0266  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   0269            StoreID3toIDM:
    177          
    178          //向IDM 存储ID3 信息
    179          void StoreID3toIDM( bool mode,unsigned int FileNum,file_location_t *location, int langid)
    180          {
   \   0269  FDE5              PUSH    IY
   \   026B  DDE5              PUSH    IX
   \   026D  DD210000          LD      IX,0
   \   0271  DD39              ADD     IX,SP
   \   0273  C5                PUSH    BC
   \   0274  D5                PUSH    DE
   \   0275  F5                PUSH    AF
   \   0276  F5                PUSH    AF
   \   0277  F5                PUSH    AF
    181                BYTE  IO05bak = input8(0x05); 
   \   0278  DB05              IN      A,(5)
   \   027A  DD77FB            LD      (IX-5),A
    182                BYTE  NameNum;
    183                char *IDMaddress = (char *)(FileNum*OneFileInfor+IDMStartAddress);   // IDM 中存储的起始地址       
   \   027D  69                LD      L,C
   \   027E  60                LD      H,B
   \   027F  29                ADD     HL,HL
   \   0280  29                ADD     HL,HL
   \   0281  29                ADD     HL,HL
   \   0282  29                ADD     HL,HL
   \   0283  29                ADD     HL,HL
   \   0284  3E40              LD      A,64
   \   0286  84                ADD     A,H
   \   0287  67                LD      H,A
   \   0288  E5                PUSH    HL
   \   0289  FDE1              POP     IY
    184                char *IPMaddress = (char *)(FileNum*OneLocationBYTE+IDMStartAddress);   //  IPM 中存储文件路径的起始地址 
   \   028B  012900            LD      BC,41
   \   028E  DD5EFE            LD      E,(IX-2)
   \   0291  DD56FF            LD      D,(IX-1)
   \   0294  CD0000            CALL    LWRD ?S_MUL_L02
   \   0297  3E40              LD      A,64
   \   0299  82                ADD     A,D
   \   029A  57                LD      D,A
   \   029B  DD73F8            LD      (IX-8),E
   \   029E  DD72F9            LD      (IX-7),D
    185                int  *FileNumAddress =(int *)IDMaddress;        //存放文件原始编号的地址
   \   02A1  DD75F6            LD      (IX-10),L
   \   02A4  DD74F7            LD      (IX-9),H
    186          //      int  *LocationAddress = (int *)IPMaddress;       // 存放文件原始编号的地址
    187                output8(0x05,0x34);      //IDM LOW BYTE->TIT2                             
   \   02A7  3E34              LD      A,52
   \   02A9  D305              OUT     (5),A
    188               *FileNumAddress=FileNum; 
   \   02AB  DD4EFE            LD      C,(IX-2)
   \   02AE  71                LD      (HL),C
   \   02AF  DD46FF            LD      B,(IX-1)
   \   02B2  23                INC     HL
   \   02B3  70                LD      (HL),B
    189                if(mode)  
   \   02B4  AF                XOR     A
   \   02B5  DDB6FC            OR      (IX-4)
   \   02B8  011E00            LD      BC,30
   \   02BB  FDE5              PUSH    IY
   \   02BD  D1                POP     DE
   \   02BE  13                INC     DE
   \   02BF  13                INC     DE
   \   02C0  2807              JR      Z,?0053
   \   02C2            ?0052:
    190                {                   //原始编号
    191                  memcpy(IDMaddress+2,&g_ID3InfoBuf[0],30);            //TIT2 store
   \   02C2  210200            LD      HL,g_ID3InfoBuf
   \   02C5  EDB0              LDIR
    192                }
    193                else   
   \   02C7  1804              JR      ?0054
   \   02C9            ?0053:
    194                { 
    195                 memset(IDMaddress+2,0,30); 
   \   02C9  68                LD      L,B
   \   02CA  CD0000            CALL    LWRD ?MEMSET_L11
   \   02CD            ?0054:
    196                }
    197          //       memcpy(IDMaddress+32,location,sizeof(file_location_t)); //location store    
    198                output8(0x05,0x35);     //IDM MID BYTE->TPE1
   \   02CD  3E35              LD      A,53
   \   02CF  D305              OUT     (5),A
    199                *FileNumAddress=FileNum;     
   \   02D1  DD6EFE            LD      L,(IX-2)
   \   02D4  DD66FF            LD      H,(IX-1)
   \   02D7  E5                PUSH    HL
   \   02D8  DD6EF6            LD      L,(IX-10)
   \   02DB  DD66F7            LD      H,(IX-9)
   \   02DE  C1                POP     BC
   \   02DF  71                LD      (HL),C
   \   02E0  23                INC     HL
   \   02E1  70                LD      (HL),B
    200                if(mode)  
   \   02E2  AF                XOR     A
   \   02E3  DDB6FC            OR      (IX-4)
   \   02E6  011E00            LD      BC,30
   \   02E9  FDE5              PUSH    IY
   \   02EB  D1                POP     DE
   \   02EC  13                INC     DE
   \   02ED  13                INC     DE
   \   02EE  2807              JR      Z,?0056
   \   02F0            ?0055:
    201                { 
    202                 memcpy(IDMaddress+2,&g_ID3InfoBuf[30],30);
   \   02F0  212000            LD      HL,g_ID3InfoBuf+30
   \   02F3  EDB0              LDIR
    203                }                                                        
    204                else 
   \   02F5  1804              JR      ?0057
   \   02F7            ?0056:
    205                {  
    206                 memset(IDMaddress+2,0,30);
   \   02F7  68                LD      L,B
   \   02F8  CD0000            CALL    LWRD ?MEMSET_L11
   \   02FB            ?0057:
    207                }
    208          //      memcpy(IDMaddress+32,&g_ID3InfoBuf[0],sizeof(file_location_t));       
    209                output8(0x05,0x36); //IDM HIG BYTE -> TALB   
   \   02FB  3E36              LD      A,54
   \   02FD  D305              OUT     (5),A
    210                *FileNumAddress=FileNum;     
   \   02FF  DD6EFE            LD      L,(IX-2)
   \   0302  DD66FF            LD      H,(IX-1)
   \   0305  E5                PUSH    HL
   \   0306  DD6EF6            LD      L,(IX-10)
   \   0309  DD66F7            LD      H,(IX-9)
   \   030C  C1                POP     BC
   \   030D  71                LD      (HL),C
   \   030E  23                INC     HL
   \   030F  70                LD      (HL),B
    211                if(mode)  
   \   0310  AF                XOR     A
   \   0311  DDB6FC            OR      (IX-4)
   \   0314  011E00            LD      BC,30
   \   0317  FDE5              PUSH    IY
   \   0319  D1                POP     DE
   \   031A  13                INC     DE
   \   031B  13                INC     DE
   \   031C  2807              JR      Z,?0059
   \   031E            ?0058:
    212                { 
    213                 memcpy(IDMaddress+2,&g_ID3InfoBuf[60],30);      
   \   031E  213E00            LD      HL,g_ID3InfoBuf+60
   \   0321  EDB0              LDIR
    214                }
    215                else
   \   0323  1804              JR      ?0060
   \   0325            ?0059:
    216                {
    217                 memset(IDMaddress+2,0,30);
   \   0325  68                LD      L,B
   \   0326  CD0000            CALL    LWRD ?MEMSET_L11
   \   0329            ?0060:
    218                }
    219          //      memcpy(IDMaddress+32,&g_ID3InfoBuf[0],sizeof(file_location_t));    
    220               
    221                output8(0x05,IO05bak); 
   \   0329  DD7EFB            LD      A,(IX-5)
   \   032C  D305              OUT     (5),A
    222                memcpy(g_ID3InfoBuf,location->filename,12);       // 根据短名取长名 
   \   032E  110200            LD      DE,g_ID3InfoBuf
   \   0331  211A00            LD      HL,26
   \   0334  DD4E08            LD      C,(IX+8)
   \   0337  DD4609            LD      B,(IX+9)
   \   033A  09                ADD     HL,BC
   \   033B  010C00            LD      BC,12
   \   033E  EDB0              LDIR
    223                NameNum =FS_GetName(g_ID3InfoBuf, 30); //取出长名)
   \   0340  0E1E              LD      C,30
   \   0342  110200            LD      DE,g_ID3InfoBuf
   \   0345  CD0000            CALL    LWRD FS_GetName
    224                if(NameNum!=0)
   \   0348  B7                OR      A
   \   0349  2834              JR      Z,?0062
   \   034B            ?0061:
    225                {
    226                   unitochar(g_ID3InfoBuf, NameNum*2+2, langid);     
   \   034B  DD6E0A            LD      L,(IX+10)
   \   034E  E5                PUSH    HL
   \   034F  6F                LD      L,A
   \   0350  2600              LD      H,0
   \   0352  29                ADD     HL,HL
   \   0353  4D                LD      C,L
   \   0354  44                LD      B,H
   \   0355  03                INC     BC
   \   0356  03                INC     BC
   \   0357  CD5E02            CALL    LWRD ?0102
   \   035A  F1                POP     AF
    227                   // *IDMaddress=(BYTE)FileNum;
    228                  output8(0x05,0xc0);    //IPM LOW BYTE ->Filename
   \   035B  3EC0              LD      A,192
   \   035D  D305              OUT     (5),A
    229                 *FileNumAddress=FileNum;     
   \   035F  DD6EFE            LD      L,(IX-2)
   \   0362  DD66FF            LD      H,(IX-1)
   \   0365  E5                PUSH    HL
   \   0366  DD6EF6            LD      L,(IX-10)
   \   0369  DD66F7            LD      H,(IX-9)
   \   036C  C1                POP     BC
   \   036D  71                LD      (HL),C
   \   036E  23                INC     HL
   \   036F  70                LD      (HL),B
    230                  memcpy(IDMaddress+2,&g_ID3InfoBuf[0],30);  //
   \   0370  011E00            LD      BC,30
   \   0373  FDE5              PUSH    IY
   \   0375  D1                POP     DE
   \   0376  13                INC     DE
   \   0377  13                INC     DE
   \   0378  210200            LD      HL,g_ID3InfoBuf
   \   037B  EDB0              LDIR
    231                }
    232                else
   \   037D  1837              JR      ?0063
   \   037F            ?0062:
    233                  {
    234                    output8(0x05,0xc0);    //IPM LOW BYTE ->Filename
   \   037F  3EC0              LD      A,192
   \   0381  D305              OUT     (5),A
    235                   *FileNumAddress=FileNum;         
   \   0383  DD6EFE            LD      L,(IX-2)
   \   0386  DD66FF            LD      H,(IX-1)
   \   0389  E5                PUSH    HL
   \   038A  DD6EF6            LD      L,(IX-10)
   \   038D  DD66F7            LD      H,(IX-9)
   \   0390  C1                POP     BC
   \   0391  71                LD      (HL),C
   \   0392  23                INC     HL
   \   0393  70                LD      (HL),B
    236                    memcpy(IDMaddress+2,location->filename,12);
   \   0394  FDE5              PUSH    IY
   \   0396  D1                POP     DE
   \   0397  13                INC     DE
   \   0398  13                INC     DE
   \   0399  211A00            LD      HL,26
   \   039C  DD4E08            LD      C,(IX+8)
   \   039F  DD4609            LD      B,(IX+9)
   \   03A2  09                ADD     HL,BC
   \   03A3  010C00            LD      BC,12
   \   03A6  EDB0              LDIR
    237                    memset(IDMaddress+14,0,18);         
   \   03A8  0E12              LD      C,18
   \   03AA  210E00            LD      HL,14
   \   03AD  FDE5              PUSH    IY
   \   03AF  D1                POP     DE
   \   03B0  19                ADD     HL,DE
   \   03B1  EB                EX      DE,HL

⌨️ 快捷键说明

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