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

📄 main.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   030B  09                ADD     HL,BC
   \   030C  362F              LD      (HL),47
    300              itoa_2(time.month, &g_file_name_time[len + 4]);
   \   030E  216600            LD      HL,g_file_name_time+4
   \   0311  09                ADD     HL,BC
   \   0312  4D                LD      C,L
   \   0313  44                LD      B,H
   \   0314  DD5EF4            LD      E,(IX-12)
   \   0317  3E00              LD      A,BYTE3 itoa_2
   \   0319  210000            LD      HL,LWRD itoa_2
   \   031C  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    301              g_file_name_time[len + 6] = '/';
   \   031F  216800            LD      HL,g_file_name_time+6
   \   0322  DD4EFB            LD      C,(IX-5)
   \   0325  0600              LD      B,0
   \   0327  09                ADD     HL,BC
   \   0328  362F              LD      (HL),47
    302              itoa_2(time.day, &g_file_name_time[len + 7]);
   \   032A  216900            LD      HL,g_file_name_time+7
   \   032D  09                ADD     HL,BC
   \   032E  4D                LD      C,L
   \   032F  44                LD      B,H
   \   0330  DD5EF5            LD      E,(IX-11)
   \   0333  3E00              LD      A,BYTE3 itoa_2
   \   0335  210000            LD      HL,LWRD itoa_2
   \   0338  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    303              g_file_name_time[len + 9] = ' ';
   \   033B  216B00            LD      HL,g_file_name_time+9
   \   033E  DD4EFB            LD      C,(IX-5)
   \   0341  0600              LD      B,0
   \   0343  09                ADD     HL,BC
   \   0344  3620              LD      (HL),32
    304              itoa_2(time.hour, &g_file_name_time[len + 10]);
   \   0346  216C00            LD      HL,g_file_name_time+10
   \   0349  09                ADD     HL,BC
   \   034A  4D                LD      C,L
   \   034B  44                LD      B,H
   \   034C  DD5EF6            LD      E,(IX-10)
   \   034F  3E00              LD      A,BYTE3 itoa_2
   \   0351  210000            LD      HL,LWRD itoa_2
   \   0354  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    305              g_file_name_time[len + 12] = ':';
   \   0357  216E00            LD      HL,g_file_name_time+12
   \   035A  DD4EFB            LD      C,(IX-5)
   \   035D  0600              LD      B,0
   \   035F  09                ADD     HL,BC
   \   0360  363A              LD      (HL),58
    306             itoa_2(time.minute, &g_file_name_time[len + 13]);
   \   0362  216F00            LD      HL,g_file_name_time+13
   \   0365  09                ADD     HL,BC
   \   0366  4D                LD      C,L
   \   0367  44                LD      B,H
   \   0368  DD5EF7            LD      E,(IX-9)
   \   036B  3E00              LD      A,BYTE3 itoa_2
   \   036D  210000            LD      HL,LWRD itoa_2
   \   0370  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    307          
    308              strcat(g_file_name_time, "  ");
   \   0373  110F00            LD      DE,?0045
   \   0376  216200            LD      HL,g_file_name_time
   \   0379  CD0000            CALL    LWRD ?STRCAT_L11
    309          
    310              filelong = FS_GetFileLen(f_handle);
   \   037C  FDE5              PUSH    IY
   \   037E  D1                POP     DE
   \   037F  CD0000            CALL    LWRD FS_GetFileLen
   \   0382  22B400            LD      (filelong),HL
   \   0385  ED43B600          LD      (filelong+2),BC
    311              FS_FClose(f_handle);
   \   0389  FDE5              PUSH    IY
   \   038B  D1                POP     DE
   \   038C  CD0000            CALL    LWRD FS_FClose
    312              if(filelong == 0)
   \   038F  2AB400            LD      HL,(filelong)
   \   0392  7D                LD      A,L
   \   0393  B4                OR      H
   \   0394  2AB600            LD      HL,(filelong+2)
   \   0397  B5                OR      L
   \   0398  B4                OR      H
   \   0399  2846              JR      Z,?0124
   \   039B            ?0046:
    313                  return FALSE;
   \   039B            ?0047:
    314          
    315              CLEAR_WATCHDOG();
   \   039B  DB4E              IN      A,(78)
   \   039D  CBDF              SET     3,A
   \   039F  D34E              OUT     (78),A
    316              result = voiceSendCommand(MC_OPEN, 0);
   \   03A1  010000            LD      BC,0
   \   03A4  1E01              LD      E,1
   \   03A6  CD1104            CALL    LWRD ?0140
   \   03A9  2600              LD      H,0
   \   03AB  4C                LD      C,H
    317              ASSERT(result);
    318              voiceSendCommand(MC_SETVOLUME, 0);
   \   03AC  44                LD      B,H
   \   03AD  1E40              LD      E,64
   \   03AF  CD1104            CALL    LWRD ?0140
    319          
    320              result = voiceSendCommand(MC_LOAD, (int)g_voice_vars.location.filename);
   \   03B2  014000            LD      BC,g_voice_vars+32
   \   03B5  1E03              LD      E,3
   \   03B7  CD1104            CALL    LWRD ?0140
    321              ASSERT(result);
    322          
    323              voiceSendCommand(MC_GETSTATUS, (int)&g_play_status);
   \   03BA  015900            LD      BC,g_play_status
   \   03BD  1E83              LD      E,131
   \   03BF  CD1104            CALL    LWRD ?0140
    324              voiceSendCommand(MC_GETAUDIOFMT, (int)&g_play_format);
   \   03C2  01D600            LD      BC,g_play_format
   \   03C5  1E82              LD      E,130
   \   03C7  CD1104            CALL    LWRD ?0140
    325          
    326              voiceSendCommand(MC_STOP, 0);
   \   03CA  010000            LD      BC,0
   \   03CD  1E06              LD      E,6
   \   03CF  CD1104            CALL    LWRD ?0140
    327          
    328              voiceSendCommand(MC_CLOSE, 0);
   \   03D2  010000            LD      BC,0
   \   03D5  1E02              LD      E,2
   \   03D7  CD1104            CALL    LWRD ?0140
    329          
    330              if(g_play_status.state == PLAYING_ERROR) return FALSE;
   \   03DA  3A5900            LD      A,(g_play_status)
   \   03DD  FE0C              CP      12
   \   03DF  2004              JR      NZ,?0049
   \   03E1            ?0048:
   \   03E1            ?0124:
   \   03E1  2E00              LD      L,0
   \   03E3  1802              JR      ?0050
   \   03E5            ?0049:
    331              else return TRUE;
   \   03E5  2E01              LD      L,1
    332          
    333              return TRUE;
    334          }
   \   03E7            ?0050:
   \   03E7  DDF9              LD      SP,IX
   \   03E9  DDE1              POP     IX
   \   03EB  FDE1              POP     IY
   \   03ED  D1                POP     DE
   \   03EE  C1                POP     BC
   \   03EF  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   03F2            ?0138:
   \   03F2  112600            LD      DE,g_voice_vars+6
   \   03F5  3E00              LD      A,BYTE3 fselGetLocation
   \   03F7  210000            LD      HL,LWRD fselGetLocation
   \   03FA  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   03FD            ?0139:
   \   03FD  3E00              LD      A,BYTE3 fselSetMode
   \   03FF  210000            LD      HL,LWRD fselSetMode
   \   0402  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0405  114000            LD      DE,g_voice_vars+32
   \   0408  3E00              LD      A,BYTE3 fselGetNextFile
   \   040A  210000            LD      HL,LWRD fselGetNextFile
   \   040D  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0410  C9                RET
   \   0411            ?0140:
   \   0411  3E00              LD      A,BYTE3 voiceSendCommand
   \   0413  210000            LD      HL,LWRD voiceSendCommand
   \   0416  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   0419            show_loop:
    335          
    336          /*
    337          ********************************************************************************
    338          * Description : 循环模式菜单界面
    339          *
    340          * Arguments   :
    341          *
    342          * Returns     : 结果消息或0
    343          *
    344          * Notes       :
    345          *
    346          ********************************************************************************
    347          */
    348          int show_loop(void)
    349          {
   \   0419  C5                PUSH    BC
   \   041A  D5                PUSH    DE
   \   041B  DDE5              PUSH    IX
    350              int result;
    351              list.active = g_voice_vars.repeat_mode;
   \   041D  ED4B2300          LD      BC,(g_voice_vars+3)
   \   0421  0600              LD      B,0
   \   0423  ED43C600          LD      (list+4),BC
    352              list.total = 7;
   \   0427  210700            LD      HL,7
   \   042A  22C400            LD      (list+2),HL
    353              list.strid = repeat_string;
   \   042D  210000            LD      HL,repeat_string
   \   0430  22C200            LD      (list),HL
    354              list.headid = VPLAYM1;
   \   0433  21B501            LD      HL,437
   \   0436  22C800            LD      (list+6),HL
    355              list.string_id = g_comval.langid;
   \   0439  3A0C00            LD      A,(g_comval+12)
   \   043C  32CA00            LD      (list+8),A
    356              ui_auto_update = FALSE;
   \   043F  AF                XOR     A
   \   0440  320000            LD      (ui_auto_update),A
    357              result = ui_popup_list(&list, NULL);
   \   0443  48                LD      C,B
   \   0444  C5                PUSH    BC
   \   0445  C5                PUSH    BC
   \   0446  11C200            LD      DE,list
   \   0449  3E00              LD      A,BYTE3 ui_popup_list
   \   044B  210000            LD      HL,LWRD ui_popup_list
   \   044E  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0451  F1                POP     AF
   \   0452  F1                POP     AF
    358          
    359              if(result == RESULT_IGNORE) {;}
   \   0453  3E34              LD      A,52
   \   0455  AD                XOR     L
   \   0456  B4                OR      H
   \   0457  280A              JR      Z,?0053
   \   0459            ?0051:
   \   0459            ?0052:
    360              else if(result != 0) return result;
   \   0459  7D                LD      A,L
   \   045A  B4                OR      H
   \   045B  2008              JR      NZ,?0056
   \   045D            ?0054:
   \   045D            ?0055:
    361              else g_voice_vars.repeat_mode = list.active;
   \   045D  3AC600            LD      A,(list+4)
   \   0460  322300            LD      (g_voice_vars+3),A
   \   0463            ?0053:
    362          
    363              return 0;
   \   0463  69                LD      L,C
   \   0464  60                LD      H,B
    364          }
   \   0465            ?0056:
   \   0465  DDE1              POP     IX
   \   0467  D1                POP     DE
   \   0468  C1                POP     BC
   \   0469  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   046C            speed_callback:
    365          
    366          /*
    367          ********************************************************************************
    368          * Description : 音量设置回调函数
    369          *
    370          * Arguments   :
    371          *
    372          * Returns     :
    373          *
    374          * Notes       : 注意对0音量的处理
    375          *
    376          ********************************************************************************
    377          */
    378          
    379          
    380          /*
    381          ********************************************************************************
    382          * Description : 音量设置界面
    383          *
    384          * Arguments   : set_hardware, 是否需要设置硬件
    385          *
    386          * Returns     :
    387          *
    388          * Notes       : 播放时调节音量需要设置硬件
    389                  停止时调节音量不需要设置硬件
    390          *
    391          ********************************************************************************
    392          
    393          
    394          /*
    395          ********************************************************************************
    396          * Description : 播放速度设置界面回调函数
    397          *
    398          * Arguments   : value, 速度值-8~8
    399          *
    400          * Returns     :
    401          *
    402          * Notes       : codec 的输入范围-40~100, module层负责转换
    403          *

⌨️ 快捷键说明

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