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

📄 ui_stop_menu.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 3 页
字号:
   \   00C2  320000            LD      (g_card_ok),A
   \   00C5            ?0006:
    134                      
    135          
    136              //show dir delete & manage
    137              list.headid = STOPMENU;
   \   00C5  218B01            LD      HL,395
   \   00C8  220600            LD      (list+6),HL
    138              list.active = active;
   \   00CB  ED4B0000          LD      BC,(?0004)
   \   00CF  0600              LD      B,0
   \   00D1  ED430400          LD      (list+4),BC
    139              list.string_id = g_comval.langid;
   \   00D5  3A0C00            LD      A,(g_comval+12)
   \   00D8  320800            LD      (list+8),A
    140              if(g_card_ok)
   \   00DB  3A0000            LD      A,(g_card_ok)
   \   00DE  B7                OR      A
   \   00DF  280B              JR      Z,?0008
   \   00E1            ?0007:
    141              {
    142                  list.total = 5;
   \   00E1  210500            LD      HL,5
   \   00E4  220200            LD      (list+2),HL
    143                  list.strid = dir_string_card;
   \   00E7  210800            LD      HL,dir_string_card
   \   00EA  1809              JR      ?0063
    144              }
    145              else
   \   00EC            ?0008:
    146              {
    147                  list.total = 4;
   \   00EC  210400            LD      HL,4
   \   00EF  220200            LD      (list+2),HL
    148                  list.strid = dir_string;
   \   00F2  210000            LD      HL,dir_string
   \   00F5            ?0063:
   \   00F5  220000            LD      (list),HL
   \   00F8            ?0009:
    149              }
    150          
    151              //ui_auto_update = FALSE;
    152              result = ui_popup_list(&list, NULL);
   \   00F8  48                LD      C,B
   \   00F9  C5                PUSH    BC
   \   00FA  C5                PUSH    BC
   \   00FB  110000            LD      DE,list
   \   00FE  3E00              LD      A,BYTE3 ui_popup_list
   \   0100  210000            LD      HL,LWRD ui_popup_list
   \   0103  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0106  F1                POP     AF
   \   0107  F1                POP     AF
   \   0108  E5                PUSH    HL
   \   0109  DDE1              POP     IX
    153            //  ui_auto_update = TRUE;
    154          
    155              if(g_card_ok)
   \   010B  3A0000            LD      A,(g_card_ok)
   \   010E  B7                OR      A
   \   010F  282C              JR      Z,?0013
   \   0111            ?0010:
    156                {
    157                     if (DRV_DetectUD(1) != 0x20)
   \   0111  1E01              LD      E,1
   \   0113  CD0000            CALL    LWRD DRV_DetectUD
   \   0116  FE20              CP      32
   \   0118  2823              JR      Z,?0013
   \   011A            ?0012:
    158                       {
    159                        g_card_ok=FALSE;
   \   011A  AF                XOR     A
   \   011B  320000            LD      (g_card_ok),A
    160                        ui_err_msg(CARDPULL,CARDPULL,g_comval.langid);//显示卡拔出
   \   011E  ED4B0C00          LD      BC,(g_comval+12)
   \   0122  47                LD      B,A
   \   0123  C5                PUSH    BC
   \   0124  018A01            LD      BC,394
   \   0127  59                LD      E,C
   \   0128  50                LD      D,B
   \   0129  3E00              LD      A,BYTE3 ui_err_msg
   \   012B  210000            LD      HL,LWRD ui_err_msg
   \   012E  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0131  F1                POP     AF
    161                        g_voice_vars.location.disk = 'C';
   \   0132  3E43              LD      A,67
   \   0134  320600            LD      (g_voice_vars+6),A
    162                       //return RESULT_SD_OUT;
    163                        return RESULT_SD_OUT;
   \   0137  213600            LD      HL,54
    164                      }
   \   013A  C34803            JP      LWRD ?0052
   \   013D            ?0013:
   \   013D            ?0011:
    165                }
    166              if(result != 0) return result;
   \   013D  DDE5              PUSH    IX
   \   013F  E1                POP     HL
   \   0140  7D                LD      A,L
   \   0141  B4                OR      H
   \   0142  C24803            JP      NZ,?0052
   \   0145            ?0014:
   \   0145            ?0015:
    167              //read the return value in menu
    168              active = list.active;
   \   0145  3A0400            LD      A,(list+4)
   \   0148  320000            LD      (?0004),A
    169          
    170              // BankSwitch((unsigned long)FSELInit >> 16);
    171               //fselGetLocation(& g_voice_vars.location);
    172          
    173           if(!g_card_ok)  //无卡的情况
   \   014B  3A0000            LD      A,(g_card_ok)
   \   014E  B7                OR      A
   \   014F  ED5B0400          LD      DE,(list+4)
   \   0153  C21002            JP      NZ,?0017
   \   0156            ?0016:
    174              {
    175                    switch (list.active)
   \   0156  CD0000            CALL    LWRD ?S_S_SWITCH_L06
   \   0159  0000              DEFW    0
   \   015B  0400              DEFW    4
   \   015D  2B03              DEFW    ?0047
   \   015F  6701              DEFW    ?0019
   \   0161  B701              DEFW    ?0022
   \   0163  E001              DEFW    ?0025
   \   0165  2B03              DEFW    ?0047
   \   0167            ?0019:
    176                  {
    177                      case 0: //主目录
    178          //                result=ui_explore(&g_voice_vars.location, EXPLORE_DIR, g_langid);
    179                       if (g_voice_vars.location.disk == 'H')
   \   0167  3A0600            LD      A,(g_voice_vars+6)
   \   016A  FE48              CP      72
   \   016C  2027              JR      NZ,?0021
   \   016E            ?0020:
    180                         {
    181                           g_voice_vars.location.disk = 'C';
   \   016E  3E43              LD      A,67
   \   0170  320600            LD      (g_voice_vars+6),A
    182                           g_card_in_using=FALSE;
   \   0173  AF                XOR     A
   \   0174  320000            LD      (g_card_in_using),A
    183                           fselInit(FSEL_TYPE_VOICE, FSEL_ALL_REPEATALL, FSEL_TYPE_COMMONDIR,g_voice_vars.location.disk); 
   \   0177  0E43              LD      C,67
   \   0179  C5                PUSH    BC
   \   017A  48                LD      C,B
   \   017B  C5                PUSH    BC
   \   017C  0E04              LD      C,4
   \   017E  1E01              LD      E,1
   \   0180  3E00              LD      A,BYTE3 fselInit
   \   0182  210000            LD      HL,LWRD fselInit
   \   0185  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0188  F1                POP     AF
   \   0189  F1                POP     AF
    184                           fselGetLocation(&g_voice_vars.location);     //更换驱动器要重新取location    
   \   018A  110600            LD      DE,g_voice_vars+6
   \   018D  3E00              LD      A,BYTE3 fselGetLocation
   \   018F  210000            LD      HL,LWRD fselGetLocation
   \   0192  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0195            ?0021:
    185          
    186                         }
    187                          result=ui_directory(&g_voice_vars.location, FSEL_TYPE_VOICE, g_comval.langid);
   \   0195  210C00            LD      HL,g_comval+12
   \   0198  4E                LD      C,(HL)
   \   0199  C5                PUSH    BC
   \   019A  0E01              LD      C,1
   \   019C  110600            LD      DE,g_voice_vars+6
   \   019F  3E00              LD      A,BYTE3 ui_directory
   \   01A1  210000            LD      HL,LWRD ui_directory
   \   01A4  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01A7  F1                POP     AF
   \   01A8  E5                PUSH    HL
   \   01A9  DDE1              POP     IX
    188                          need_sel_file=TRUE; 
   \   01AB  3E01              LD      A,1
   \   01AD  320000            LD      (need_sel_file),A
    189                        //  need_restore=FALSE;  
    190                          g_menu_active=FALSE;
   \   01B0  AF                XOR     A
   \   01B1  320000            LD      (g_menu_active),A
    191                          break;
   \   01B4  C32F03            JP      LWRD ?0031
   \   01B7            ?0022:
    192          
    193                      case 1:
    194                          g_voice_vars.location.ID3buffer = NULL;
   \   01B7  ED432C00          LD      (g_voice_vars+44),BC
    195                          result = ui_delete(&g_voice_vars.location, DELETE_FILE, g_comval.langid);
   \   01BB  210C00            LD      HL,g_comval+12
   \   01BE  4E                LD      C,(HL)
   \   01BF  C5                PUSH    BC
   \   01C0  48                LD      C,B
   \   01C1  110600            LD      DE,g_voice_vars+6
   \   01C4  3E00              LD      A,BYTE3 ui_delete
   \   01C6  210000            LD      HL,LWRD ui_delete
   \   01C9  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01CC  F1                POP     AF
   \   01CD  E5                PUSH    HL
   \   01CE  DDE1              POP     IX
    196                          output8(0x4e,input8(0x4e)|0x8);
   \   01D0  DB4E              IN      A,(78)
   \   01D2  CBDF              SET     3,A
   \   01D4  D34E              OUT     (78),A
    197                          if(g_voice_vars.location.filename[0] == 0)
   \   01D6  3A2000            LD      A,(g_voice_vars+32)
   \   01D9  B7                OR      A
   \   01DA  C22F03            JP      NZ,?0031
   \   01DD            ?0023:
    198                          g_voice_vars.location.filename[0] = 20;
   \   01DD  C32403            JP      LWRD ?0071
   \   01E0            ?0024:
    199                           break;
   \   01E0            ?0025:
    200          
    201                      case 2:
    202                         g_voice_vars.location.ID3buffer = NULL;
   \   01E0  ED432C00          LD      (g_voice_vars+44),BC
    203                         FSELSetMode(FSEL_ALL_REPEATALL);
   \   01E4  1E04              LD      E,4
   \   01E6  CD5603            CALL    LWRD ?0074
    204                         result = ui_delete_all(&g_voice_vars.location, DELETE_VOICE, g_comval.langid);
   \   01E9  210C00            LD      HL,g_comval+12
   \   01EC  4E                LD      C,(HL)
   \   01ED  C5                PUSH    BC
   \   01EE  0E02              LD      C,2
   \   01F0  110600            LD      DE,g_voice_vars+6
   \   01F3  3E00              LD      A,BYTE3 ui_delete_all
   \   01F5  210000            LD      HL,LWRD ui_delete_all
   \   01F8  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01FB  F1                POP     AF
    205                         FSELSetMode(g_voice_vars.repeat_mode);
   \   01FC  CD4F03            CALL    LWRD ?0075
    206                         output8(0x4e,input8(0x4e)|0x8);
   \   01FF  DB4E              IN      A,(78)
   \   0201  CBDF              SET     3,A
   \   0203  D34E              OUT     (78),A
    207                         if(result == 0)
   \   0205  DDE5              PUSH    IX
   \   0207  E1                POP     HL
   \   0208  7D                LD      A,L
   \   0209  B4                OR      H
   \   020A  C22F03            JP      NZ,?0031
   \   020D            ?0026:
    208                          {
    209                           //if(g_card_in_using)DRV_ActiveUD(1,MODE_SLOW);
    210                           // ap_set_event(AP_EVENT_FILE_DELETED);
    211                            g_voice_vars.location.filename[0] = 20;
   \   020D  C32403            JP      LWRD ?0071
   \   0210            ?0027:
    212                            //return 0;
    213                          }
    214                          break;
   \   0210            ?0028:
    215          
    216                      case 3:
    217                             result=RESULT_IGNORE;
    218                              break;
   \   0210            ?0029:
    219          
    220                      default:
    221                             result=RESULT_IGNORE;
    222                             break;
   \   0210            ?0018:
    223                  }
    224          
    225               }
    226          
    227           else     // 有卡的情况
   \   0210            ?0017:
    228              {
    229          
    230                switch (list.active)
   \   0210  CD0000            CALL    LWRD ?S_S_SWITCH_L06
   \   0213  0000              DEFW    0
   \   0215  0500              DEFW    5
   \   0217  2B03              DEFW    ?0047
   \   0219  2302              DEFW    ?0032
   \   021B  4902              DEFW    ?0035
   \   021D  D102              DEFW    ?0040
   \   021F  F802              DEFW    ?0043
   \   0221  2B03              DEFW    ?0047
   \   0223            ?0032:
    231                  {
    232                      case 0: //主目录
    233          //                result=ui_explore(&g_voice_vars.location, EXPLORE_DIR, g_langid);
    234                       if (g_voice_vars.location.disk == 'H')
   \   0223  3A0600            LD      A,(g_voice_vars+6)
   \   0226  FE48              CP      72
   \   0228  C2B002            JP      NZ,?0037

⌨️ 快捷键说明

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