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

📄 bookmarkadd.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 3 页
字号:
   \   0100  1892              JR      ?0010
   \   0102            ?0009:
     72              }
     73              *FileBKSecNo=pBookMarkHeardA->CurRecordNO+1;
   \   0102  2A0300            LD      HL,(BMKFileDataBuffA)
   \   0105  23                INC     HL
   \   0106  E5                PUSH    HL
   \   0107  210200            LD      HL,2
   \   010A  39                ADD     HL,SP
   \   010B  7E                LD      A,(HL)
   \   010C  23                INC     HL
   \   010D  66                LD      H,(HL)
   \   010E  6F                LD      L,A
   \   010F  C1                POP     BC
   \   0110  71                LD      (HL),C
   \   0111  23                INC     HL
   \   0112  70                LD      (HL),B
     74              return FALSE;
   \   0113  2E00              LD      L,0
     75          }
   \   0115            ?0016:
   \   0115  F1                POP     AF
   \   0116  DDE1              POP     IX
   \   0118  FDE1              POP     IY
   \   011A  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   011D            AddBMkInfor:
     76          
     77          void AddBMkInfor(file_location_t *curfile)
     78          {
   \   011D  C5                PUSH    BC
   \   011E  DDE5              PUSH    IX
   \   0120  D5                PUSH    DE
   \   0121  DDE1              POP     IX
     79              pBookMarkHeardA->BMkInfor[pBookMarkHeardA->CurRecordNO].ClusterNo=curfile->ClusterNo;
   \   0123  2A0300            LD      HL,(BMKFileDataBuffA)
   \   0126  29                ADD     HL,HL
   \   0127  29                ADD     HL,HL
   \   0128  29                ADD     HL,HL
   \   0129  29                ADD     HL,HL
   \   012A  010300            LD      BC,BMKFileDataBuffA
   \   012D  09                ADD     HL,BC
   \   012E  010400            LD      BC,4
   \   0131  09                ADD     HL,BC
   \   0132  E5                PUSH    HL
   \   0133  210900            LD      HL,9
   \   0136  19                ADD     HL,DE
   \   0137  5E                LD      E,(HL)
   \   0138  23                INC     HL
   \   0139  56                LD      D,(HL)
   \   013A  23                INC     HL
   \   013B  4E                LD      C,(HL)
   \   013C  23                INC     HL
   \   013D  46                LD      B,(HL)
   \   013E  E1                POP     HL
   \   013F  73                LD      (HL),E
   \   0140  23                INC     HL
   \   0141  72                LD      (HL),D
   \   0142  23                INC     HL
   \   0143  71                LD      (HL),C
   \   0144  23                INC     HL
   \   0145  70                LD      (HL),B
     80              memcpy(&(pBookMarkHeardA->BMkInfor[pBookMarkHeardA->CurRecordNO].FileName),curfile->filename,12);
   \   0146  2A0300            LD      HL,(BMKFileDataBuffA)
   \   0149  29                ADD     HL,HL
   \   014A  29                ADD     HL,HL
   \   014B  29                ADD     HL,HL
   \   014C  29                ADD     HL,HL
   \   014D  110300            LD      DE,BMKFileDataBuffA
   \   0150  19                ADD     HL,DE
   \   0151  110800            LD      DE,8
   \   0154  19                ADD     HL,DE
   \   0155  EB                EX      DE,HL
   \   0156  2E1A              LD      L,26
   \   0158  DDE5              PUSH    IX
   \   015A  C1                POP     BC
   \   015B  09                ADD     HL,BC
   \   015C  010C00            LD      BC,12
   \   015F  EDB0              LDIR
     81          
     82              pBookMarkHeardA->CurRecordNO++;
   \   0161  2A0300            LD      HL,(BMKFileDataBuffA)
   \   0164  23                INC     HL
   \   0165  220300            LD      (BMKFileDataBuffA),HL
     83              if(pBookMarkHeardA->CurRecordNO==FILEBOOKMARK_MAX)
   \   0168  2A0300            LD      HL,(BMKFileDataBuffA)
   \   016B  3E0F              LD      A,15
   \   016D  AD                XOR     L
   \   016E  B4                OR      H
   \   016F  2004              JR      NZ,?0018
   \   0171            ?0017:
     84                  pBookMarkHeardA->CurRecordNO=0;
   \   0171  ED430300          LD      (BMKFileDataBuffA),BC
   \   0175            ?0018:
     85          
     86              if(pBookMarkHeardA->RecordCount<FILEBOOKMARK_MAX)
   \   0175  2A0500            LD      HL,(BMKFileDataBuffA+2)
   \   0178  010F80            LD      BC,32783
   \   017B  78                LD      A,B
   \   017C  AC                XOR     H
   \   017D  67                LD      H,A
   \   017E  ED42              SBC     HL,BC
   \   0180  3007              JR      NC,?0020
   \   0182            ?0019:
     87                  pBookMarkHeardA->RecordCount++;
   \   0182  2A0500            LD      HL,(BMKFileDataBuffA+2)
   \   0185  23                INC     HL
   \   0186  220500            LD      (BMKFileDataBuffA+2),HL
   \   0189            ?0020:
     88          
     89              FS_FWrite(BMKFileDataBuffA,1,hBmkFileA);
   \   0189  2A0000            LD      HL,(hBmkFileA)
   \   018C  E5                PUSH    HL
   \   018D  CD9701            CALL    LWRD ?0064
   \   0190  E1                POP     HL
     90          }
   \   0191  DDE1              POP     IX
   \   0193  C1                POP     BC
   \   0194  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0197            ?0064:
   \   0197  0E01              LD      C,1
   \   0199  110300            LD      DE,BMKFileDataBuffA
   \   019C  C30000            JP      LWRD FS_FWrite
   \   019F            AddBookMarkItem:
     91          
     92          /****************************************************************
     93          *Description: save bookmark information to BOOKMARK.BMK file
     94          *Arguments:
     95          *            breakpt:bookmark record
     96          *                         curfile:current file
     97          * Returns:
     98          *            TRUE: Successful,
     99          *            FALSE: Fail.
    100          * Notes:
    101          ****************************************************************/
    102          BOOL AddBookMarkItem(STRU_MusicBreakPoint *breakpt,file_location_t *curfile)
    103          {
   \   019F  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   01A2  FCFF              DEFW    65532
    104              int FileBKSecNo;
    105                  BOOL bNewBookMark;
    106          
    107                  if(!ReadBookMarkHeardA())
   \   01A4  3E00              LD      A,BYTE3 ReadBookMarkHeardA
   \   01A6  210000            LD      HL,LWRD ReadBookMarkHeardA
   \   01A9  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01AC  2C                INC     L
   \   01AD  2D                DEC     L
   \   01AE  2833              JR      Z,?0050
   \   01B0            ?0021:
    108                          return FALSE;
   \   01B0            ?0022:
    109                  
    110                  bNewBookMark=FALSE;
   \   01B0  DD36FC00          LD      (IX-4),0
    111              if(!GetBMkInforA(curfile,&FileBKSecNo))
   \   01B4  210200            LD      HL,2
   \   01B7  39                ADD     HL,SP
   \   01B8  CD6002            CALL    LWRD ?0065
   \   01BB  2C                INC     L
   \   01BC  2D                DEC     L
   \   01BD  2012              JR      NZ,?0024
   \   01BF            ?0023:
    112              {
    113                  AddBMkInfor(curfile);
   \   01BF  DD5E04            LD      E,(IX+4)
   \   01C2  DD5605            LD      D,(IX+5)
   \   01C5  3E00              LD      A,BYTE3 AddBMkInfor
   \   01C7  211D01            LD      HL,LWRD AddBMkInfor
   \   01CA  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    114                          bNewBookMark=TRUE;
   \   01CD  DD36FC01          LD      (IX-4),1
   \   01D1            ?0024:
    115              }
    116          
    117              if(!FS_FSeek(FileBKSecNo,FS_SEEK_FFROMSTART,hBmkFileA))
   \   01D1  2A0000            LD      HL,(hBmkFileA)
   \   01D4  E5                PUSH    HL
   \   01D5  0E00              LD      C,0
   \   01D7  C5                PUSH    BC
   \   01D8  CD7002            CALL    LWRD ?0066
   \   01DB  E1                POP     HL
   \   01DC  E1                POP     HL
   \   01DD  B7                OR      A
   \   01DE  2007              JR      NZ,?0026
   \   01E0            ?0025:
    118              {
    119                  FS_FClose(hBmkFileA);
   \   01E0  CD8D02            CALL    LWRD ?0068
    120                  output8(0x27,BmkIMKA_Reg); 
    121                  return FALSE;
   \   01E3            ?0050:
   \   01E3  2E00              LD      L,0
    122              }        
   \   01E5  1876              JR      ?0033
   \   01E7            ?0026:
    123              FS_FRead(BMKFileDataBuffA,1,hBmkFileA);
   \   01E7  2A0000            LD      HL,(hBmkFileA)
   \   01EA  E5                PUSH    HL
   \   01EB  CD5D00            CALL    LWRD ?0063
   \   01EE  E1                POP     HL
    124           
    125                  if(bNewBookMark)
   \   01EF  AF                XOR     A
   \   01F0  DDB6FC            OR      (IX-4)
   \   01F3  2809              JR      Z,?0028
   \   01F5            ?0027:
    126                  {
    127                          pMusicBookMarkFileA->CurRecordNO=0;
   \   01F5  210000            LD      HL,0
   \   01F8  220300            LD      (BMKFileDataBuffA),HL
    128                          pMusicBookMarkFileA->RecordCount=0;
   \   01FB  220500            LD      (BMKFileDataBuffA+2),HL
   \   01FE            ?0028:
    129                  }
    130              memcpy(&(pMusicBookMarkFileA->MusicBreakPoint[pMusicBookMarkFileA->CurRecordNO]),breakpt,sizeof(STRU_MusicBreakPoint));
   \   01FE  111E00            LD      DE,30
   \   0201  ED4B0300          LD      BC,(BMKFileDataBuffA)
   \   0205  CD0000            CALL    LWRD ?S_MUL_L02
   \   0208  210300            LD      HL,BMKFileDataBuffA
   \   020B  19                ADD     HL,DE
   \   020C  010400            LD      BC,4
   \   020F  09                ADD     HL,BC
   \   0210  EB                EX      DE,HL
   \   0211  DD6E02            LD      L,(IX+2)
   \   0214  DD6603            LD      H,(IX+3)
   \   0217  0E1E              LD      C,30
   \   0219  EDB0              LDIR
    131          
    132              (pMusicBookMarkFileA->CurRecordNO)++;   
   \   021B  2A0300            LD      HL,(BMKFileDataBuffA)
   \   021E  23                INC     HL
   \   021F  220300            LD      (BMKFileDataBuffA),HL
    133              if(pMusicBookMarkFileA->CurRecordNO>=MUSICBOOKMARK_MAX)
   \   0222  010C80            LD      BC,32780
   \   0225  2A0300            LD      HL,(BMKFileDataBuffA)
   \   0228  78                LD      A,B
   \   0229  AC                XOR     H
   \   022A  67                LD      H,A
   \   022B  ED42              SBC     HL,BC
   \   022D  3806              JR      C,?0030
   \   022F            ?0029:
    134                  pMusicBookMarkFileA->CurRecordNO=0;
   \   022F  210000            LD      HL,0
   \   0232  220300            LD      (BMKFileDataBuffA),HL
   \   0235            ?0030:
    135              
    136              if(pMusicBookMarkFileA->RecordCount<MUSICBOOKMARK_MAX)
   \   0235  2A0500            LD      HL,(BMKFileDataBuffA+2)
   \   0238  78                LD      A,B
   \   0239  AC                XOR     H
   \   023A  67                LD      H,A
   \   023B  ED42              SBC     HL,BC
   \   023D  3007              JR      NC,?0032
   \   023F            ?0031:
    137                  (pMusicBookMarkFileA->RecordCount)++;
   \   023F  2A0500            LD      HL,(BMKFileDataBuffA+2)
   \   0242  23                INC     HL
   \   0243  220500            LD      (BMKFileDataBuffA+2),HL
   \   0246            ?0032:
    138          
    139              FS_FSeek(FileBKSecNo,FS_SEEK_FFROMSTART,hBmkFileA);
   \   0246  2A0000            LD      HL,(hBmkFileA)
   \   0249  E5                PUSH    HL
   \   024A  0E00              LD      C,0
   \   024C  C5                PUSH    BC
   \   024D  CD7002            CALL    LWRD ?0066
   \   0250  E1                POP     HL
   \   0251  E1                POP     HL
    140              FS_FWrite(BMKFileDataBuffA,1,hBmkFileA);
   \   0252  2A0000            LD      HL,(hBmkFileA)
   \   0255  E5                PUSH    HL
   \   0256  CD9701            CALL    LWRD ?0064
   \   0259  E1                POP     HL
    141              FS_FClose(hBmkFileA);
   \   025A  CD7E02            CALL    LWRD ?0067
    142              output8(0x27,BmkIMKA_Reg);
    143          
    144              return TRUE;

⌨️ 快捷键说明

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