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

📄 sub_function2.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   01A4  EDB0              LDIR
    184                      result = FS_GetName(dir_name, 14); //取出长名
   \   01A6  0E0E              LD      C,14
   \   01A8  110000            LD      DE,dir_name
   \   01AB  CD0000            CALL    LWRD FS_GetName
   \   01AE  0600              LD      B,0
    185                      if (result != 0)
   \   01B0  B7                OR      A
   \   01B1  2810              JR      Z,?0056
   \   01B3            ?0055:
    186                      {
    187                          unitochar(dir_name, sizeof(dir_name), g_comval.langid);
   \   01B3  210C00            LD      HL,g_comval+12
   \   01B6  4E                LD      C,(HL)
   \   01B7  C5                PUSH    BC
   \   01B8  0E1E              LD      C,30
   \   01BA  110000            LD      DE,dir_name
   \   01BD  CDE701            CALL    LWRD ?0155
   \   01C0  F1                POP     AF
    188                      }
    189                      else
   \   01C1  1810              JR      ?0057
   \   01C3            ?0056:
    190                      {
    191                          memcpy(dir_name, g_music_vars.location.path, 12);
   \   01C3  0E0C              LD      C,12
   \   01C5  110000            LD      DE,dir_name
   \   01C8  211500            LD      HL,g_music_vars+21
   \   01CB  EDB0              LDIR
    192                          dir_name[8]=0;
   \   01CD  320800            LD      (dir_name+8),A
    193                          dir_name[9]=0;
   \   01D0  320900            LD      (dir_name+9),A
   \   01D3            ?0057:
    194                      }
    195                      FS_Restore(Backbuf,FS_RESTORE_DIRINFO,0);//目录项恢复
   \   01D3  210000            LD      HL,0
   \   01D6  E5                PUSH    HL
   \   01D7  0E02              LD      C,2
   \   01D9  2E04              LD      L,4
   \   01DB  39                ADD     HL,SP
   \   01DC  EB                EX      DE,HL
   \   01DD  CD0000            CALL    LWRD FS_Restore
   \   01E0  E1                POP     HL
   \   01E1            ?0053:
    196                  }
    197          
    198          }
   \   01E1  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   01E4            ?0156:
   \   01E4  110000            LD      DE,g_TagInfoBuf
   \   01E7            ?0155:
   \   01E7  3E00              LD      A,BYTE3 unitochar
   \   01E9  210000            LD      HL,LWRD unitochar
   \   01EC  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   01EF            read_var:
    199          void read_var( void )
    200          {
   \   01EF  CD0000            CALL    LWRD ?ENT_AUTO_DIRECT_L09
   \   01F2  F2FF              DEFW    65522
    201              int result;
    202              kval_t kval;
    203          
    204              //读出是否刚上电,如是,则要重调时间。
    205              VMRead(& kval, VM_KERNEL, sizeof(kval_t));
   \   01F4  210B00            LD      HL,11
   \   01F7  E5                PUSH    HL
   \   01F8  4C                LD      C,H
   \   01F9  44                LD      B,H
   \   01FA  2E04              LD      L,4
   \   01FC  39                ADD     HL,SP
   \   01FD  EB                EX      DE,HL
   \   01FE  CD0000            CALL    LWRD VMRead
   \   0201  E1                POP     HL
    206              g_PowerOffFlag = kval.rtcresetflag;
   \   0202  DD7EFE            LD      A,(IX-2)
   \   0205  320000            LD      (g_PowerOffFlag),A
    207          
    208              //read comval
    209              result = VMRead(& g_comval, VM_SYSTEM, sizeof(g_comval));
   \   0208  212000            LD      HL,32
   \   020B  E5                PUSH    HL
   \   020C  010002            LD      BC,512
   \   020F  110000            LD      DE,g_comval
   \   0212  CD0000            CALL    LWRD VMRead
   \   0215  E1                POP     HL
    210              ASSERT(result);
    211          
    212              //check if valid
    213              if (g_comval.magic != MAGIC_COMVAL)
   \   0216  21ADDE            LD      HL,57005
   \   0219  ED4B0000          LD      BC,(g_comval)
   \   021D  A7                AND     A
   \   021E  ED42              SBC     HL,BC
   \   0220  2806              JR      Z,?0059
   \   0222            ?0058:
    214              {
    215                  DUMP_STRING("comval init-ed!");
    216                  //COMVAL_INIT(g_comval);
    217                  GetDefaultComval(&g_comval);
   \   0222  110000            LD      DE,g_comval
   \   0225  CD0000            CALL    LWRD GetDefaultComval
   \   0228            ?0059:
    218              }
    219          
    220              ap_message_init(& g_comval);
   \   0228  110000            LD      DE,g_comval
   \   022B  3E00              LD      A,BYTE3 ap_message_init
   \   022D  210000            LD      HL,LWRD ap_message_init
   \   0230  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    221          
    222              //read ap vars
    223              result = VMRead(& g_music_vars, VM_AP_MUSIC, sizeof(g_music_vars));
   \   0233  215600            LD      HL,86
   \   0236  E5                PUSH    HL
   \   0237  010010            LD      BC,4096
   \   023A  110000            LD      DE,g_music_vars
   \   023D  CD0000            CALL    LWRD VMRead
   \   0240  E1                POP     HL
    224              ASSERT(result);
    225          
    226              //check if valid
    227              if (g_music_vars.magic != MAGIC_MUSIC)
   \   0241  2A5400            LD      HL,(g_music_vars+84)
   \   0244  01EFBE            LD      BC,48879
   \   0247  A7                AND     A
   \   0248  ED42              SBC     HL,BC
   \   024A  284D              JR      Z,?0061
   \   024C            ?0060:
    228              {
    229                  BYTE i;
    230          
    231                  DUMP_STRING("vars init-ed!");
    232                  g_music_vars.magic = MAGIC_MUSIC;
   \   024C  ED435400          LD      (g_music_vars+84),BC
    233                  g_music_vars.volume = 24;
   \   0250  3E18              LD      A,24
   \   0252  320000            LD      (g_music_vars),A
    234                  g_music_vars.eq_type = 0;
   \   0255  AF                XOR     A
   \   0256  320200            LD      (g_music_vars+2),A
    235                  g_music_vars.replaytimes = 5;
   \   0259  3E05              LD      A,5
   \   025B  320400            LD      (g_music_vars+4),A
    236                  g_music_vars.replaygap = 1;
   \   025E  3E01              LD      A,1
   \   0260  320500            LD      (g_music_vars+5),A
    237                  g_music_vars.repeat_mode = FSEL_ALL_SEQUENCE;
   \   0263  AF                XOR     A
   \   0264  320100            LD      (g_music_vars+1),A
    238                  g_music_vars.play_rate = 0;
   \   0267  320300            LD      (g_music_vars+3),A
    239                  g_music_vars.location.disk = 'C';
   \   026A  3E43              LD      A,67
   \   026C  320700            LD      (g_music_vars+7),A
    240                  g_music_vars.play_listmod = mlistnor;
   \   026F  3E05              LD      A,5
   \   0271  324E00            LD      (g_music_vars+78),A
    241                  g_music_vars.fselmod = FSEL_TYPE_COMMONDIR;
   \   0274  AF                XOR     A
   \   0275  324F00            LD      (g_music_vars+79),A
    242                  g_music_vars.MusicOpenMod = Nor_open;
   \   0278  320600            LD      (g_music_vars+6),A
    243                  g_music_vars.SRSMod.Wow=8; 
   \   027B  3E08              LD      A,8
   \   027D  325100            LD      (g_music_vars+81),A
    244                  g_music_vars.SRSMod.Bass=8;
   \   0280  325200            LD      (g_music_vars+82),A
    245                  g_music_vars.SRSMod.Srs=4;   
   \   0283  3E04              LD      A,4
   \   0285  325300            LD      (g_music_vars+83),A
    246                  strcpy(g_music_vars.location.path, FS_CD_ROOT);
   \   0288  110700            LD      DE,?0062
   \   028B  211500            LD      HL,g_music_vars+21
   \   028E  CD0000            CALL    LWRD ?STRCPY_L11
    247                  ClearTimePara();
   \   0291  3E00              LD      A,BYTE3 ClearTimePara
   \   0293  21BF02            LD      HL,LWRD ClearTimePara
   \   0296  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0299            ?0061:
    248              }
    249          
    250          //    menu.string_id = g_comval.langid;
    251          
    252          
    253          }
   \   0299  C30000            JP      LWRD ?BANK_LEAVE_DIRECT_L08
   \   029C            openDAC:
    254          
    255          
    256          
    257          void openDAC(void)
    258          {
   \   029C  D5                PUSH    DE
   \   029D  F5                PUSH    AF
   \   029E  F5                PUSH    AF
    259              dac_t dacattr;
    260              sfr IO80_dac = 0x80;
    261              sfr IO8B_dac = 0x8b;
    262              dacattr.dacselect = 0;
   \   029F  210000            LD      HL,0
   \   02A2  39                ADD     HL,SP
   \   02A3  3600              LD      (HL),0
    263              dacattr.rate = FS_8K;
   \   02A5  23                INC     HL
   \   02A6  3608              LD      (HL),8
    264              EnableDAC(& dacattr);
   \   02A8  2B                DEC     HL
   \   02A9  EB                EX      DE,HL
   \   02AA  CD0000            CALL    LWRD EnableDAC
    265              IO80_dac = IO80_dac | 0x08; //test
   \   02AD  DB80              IN      A,(128)
   \   02AF  F608              OR      8
   \   02B1  D380              OUT     (128),A
    266              IO8B_dac = IO8B_dac | 0x10; //test
   \   02B3  DB8B              IN      A,(139)
   \   02B5  F610              OR      16
   \   02B7  D38B              OUT     (139),A
    267          }
   \   02B9  E1                POP     HL
   \   02BA  E1                POP     HL
   \   02BB  D1                POP     DE
   \   02BC  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   02BF            ClearTimePara:
    268          
    269          void ClearTimePara(void)
    270          {
   \   02BF  C5                PUSH    BC
   \   02C0  D5                PUSH    DE
    271              BYTE i;
    272              g_music_vars.MusicOpenMod = Nor_open;
   \   02C1  AF                XOR     A
   \   02C2  320600            LD      (g_music_vars+6),A
    273              g_music_vars.BreakPTSave.breakPT = 0; //开始断点为0
   \   02C5  4F                LD      C,A
   \   02C6  69                LD      L,C
   \   02C7  47                LD      B,A
   \   02C8  60                LD      H,B
   \   02C9  223000            LD      (g_music_vars+48),HL
   \   02CC  ED433200          LD      (g_music_vars+50),BC
    274              g_music_vars.BreakPTDisTime.hour = 0;
   \   02D0  324B00            LD      (g_music_vars+75),A
    275              g_music_vars.BreakPTDisTime.minute = 0;
   \   02D3  324C00            LD      (g_music_vars+76),A
    276              g_music_vars.BreakPTDisTime.second = 0;
   \   02D6  324D00            LD      (g_music_vars+77),A
    277              g_music_vars.BreakPTSave.ApointSave = 0; //开始断点为0
   \   02D9  223400            LD      (g_music_vars+52),HL
   \   02DC  ED433600          LD      (g_music_vars+54),BC
    278              g_music_vars.BreakPTSave.BpointSave = 0; //开始断点为0
   \   02E0  223800            LD      (g_music_vars+56),HL
   \   02E3  ED433A00          LD      (g_music_vars+58),BC
    279              for (i = 0; i<12; i++)
   \   02E7  1E00              LD      E,0
   \   02E9            ?0064:
   \   02E9  7B                LD      A,E
   \   02EA  FE0C              CP      12
   \   02EC  3009              JR      NC,?0063
   \   02EE            ?0065:
    280              {                                        //清0时间记录
    281                  g_music_vars.BreakPTSave.breakPTTime[i] = 0;
   \   02EE  213C00            LD      HL,g_music_vars+60
   \   02F1  4B                LD      C,E
   \   02F2  09                ADD     HL,BC
   \   02F3  70                LD      (HL),B
   \   02F4  1C                INC     E
   \   02F5  18F2              JR      ?0064
   \   02F7            ?0063:
    282              }
    283              StartIntro(TRUE)//因为时间清0了,所以浏览要从头开始
   \   02F7  3E01              LD      A,1
   \   02F9  320000            LD      (g_introCntMode),A
   \   02FC  3A4D00            LD      A,(g_music_vars+77)
   \   02FF  320000            LD      (g_OldSecTempBackup),A
   \   0302  AF                XOR     A
   \   0303  320000            LD      (g_introCNT),A
    284          }
   \   0306  D1                POP     DE
   \   0307  C1                POP     BC
   \   0308  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   030B            ChangeVolume:
    285          

⌨️ 快捷键说明

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