ui_stop.lst

来自「MP3 整个 SDK」· LST 代码 · 共 1,232 行 · 第 1/4 页

LST
1,232
字号
   \   00EE  2D                DEC     L
   \   00EF  2009              JR      NZ,?0020
   \   00F1            ?0018:
   \   00F1  1807              JR      ?0020
   \   00F3            ?0019:
     96                  //else ASSERT(FALSE);
     97              }
     98              else    //normal prev file
   \   00F3            ?0017:
     99              {
    100                  mc_result = fselGetLocation(&g_viewpic_vars.location);
   \   00F3  CDBE00            CALL    LWRD ?0118
    101                  //ASSERT(mc_result);
    102                  return TRUE;
   \   00F6  2E01              LD      L,1
    103              }
   \   00F8  1801              JR      ?0021
   \   00FA            ?0020:
    104              return FALSE;
   \   00FA  68                LD      L,B
    105          
    106          }
   \   00FB            ?0021:
   \   00FB  F1                POP     AF
   \   00FC  F1                POP     AF
   \   00FD  C1                POP     BC
   \   00FE  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0101            show_stop:
    107          
    108          
    109          
    110          /****************************************
    111          *Function Name:show_stop
    112          *
    113          *****************************************/
    114          
    115          int show_stop(void)
    116          {
   \   0101  C5                PUSH    BC
   \   0102  D5                PUSH    DE
   \   0103  FDE5              PUSH    IY
   \   0105  DDE5              PUSH    IX
   \   0107  DD210000          LD      IX,0
   \   010B  DD39              ADD     IX,SP
   \   010D  21EEFF            LD      HL,65518
   \   0110  39                ADD     HL,SP
   \   0111  F9                LD      SP,HL
    117                 bool need_draw=FALSE;
    118                 BOOL mc_result;
    119                 unsigned char err_id;
    120                 int key;
    121                 int result;
    122                 int top, bottom, old_active, tmp, i, cur_group;
    123                 BOOL file_changed=TRUE;    //文件改变
    124                 bool list_change;
    125                 g_menu_active=TRUE;
   \   0112  3E01              LD      A,1
   \   0114  320000            LD      (g_menu_active),A
    126                 output8(0x4e,input8(0x4e)|0x8);
   \   0117  DB4E              IN      A,(78)
   \   0119  CBDF              SET     3,A
   \   011B  D34E              OUT     (78),A
    127                 mc_result = fselInit(FSEL_TYPE_DSC,  FSEL_ALL_REPEATALL, 0,'C');  // init the file selector
   \   011D  0E43              LD      C,67
   \   011F  C5                PUSH    BC
   \   0120  0E00              LD      C,0
   \   0122  C5                PUSH    BC
   \   0123  0E04              LD      C,4
   \   0125  1E03              LD      E,3
   \   0127  3E00              LD      A,BYTE3 fselInit
   \   0129  210000            LD      HL,LWRD fselInit
   \   012C  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   012F  F1                POP     AF
   \   0130  F1                POP     AF
    128          
    129          
    130          #ifdef DEBUG
    131              test=(BYTE)mc_result;
    132          #endif
    133                 need_sel_file = TRUE;
   \   0131  3E01              LD      A,1
   \   0133  320400            LD      (need_sel_file),A
    134                 list_change = FALSE;
   \   0136  DD36EE00          LD      (IX-18),0
   \   013A  DD77EF            LD      (IX-17),A
   \   013D  DD36F000          LD      (IX-16),0
   \   0141            ?0023:
    135                 while(1)
    136                 {       
    137                         if(need_sel_file)
   \   0141  3A0400            LD      A,(need_sel_file)
   \   0144  B7                OR      A
   \   0145  281D              JR      Z,?0026
   \   0147            ?0025:
    138                          {   // 设置路径,初始化驱动器
    139                                if (UpdateFileSelector() == 0)
   \   0147  3E00              LD      A,BYTE3 UpdateFileSelector
   \   0149  210000            LD      HL,LWRD UpdateFileSelector
   \   014C  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   014F  7D                LD      A,L
   \   0150  B4                OR      H
   \   0151  2005              JR      NZ,?0028
   \   0153            ?0027:
    140                                  {
    141                                    return 0;         
   \   0153  6F                LD      L,A
   \   0154  67                LD      H,A
    142                                  }  
   \   0155  C3FD04            JP      LWRD ?0098
   \   0158            ?0028:
    143                              
    144                              need_sel_file = FALSE;
   \   0158  AF                XOR     A
   \   0159  320400            LD      (need_sel_file),A
    145                              file_changed = TRUE;
    146                              need_draw = TRUE;
   \   015C  DD36EF01          LD      (IX-17),1
   \   0160  DD36EE01          LD      (IX-18),1
   \   0164            ?0026:
    147                       }
    148                       if(file_changed)
   \   0164  DDB6EF            OR      (IX-17)
   \   0167  2854              JR      Z,?0030
   \   0169            ?0029:
    149                      {
    150                           SetTextOutMode(1);
   \   0169  1E01              LD      E,1
   \   016B  CD0000            CALL    LWRD SetTextOutMode
    151          
    152                              //获得序号
    153                              active = fselGetNo();
   \   016E  3E00              LD      A,BYTE3 fselGetNo
   \   0170  210000            LD      HL,LWRD fselGetNo
   \   0173  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0176  220000            LD      (active),HL
    154                              if(active > 0)
   \   0179  4D                LD      C,L
   \   017A  44                LD      B,H
   \   017B  210000            LD      HL,0
   \   017E  F680              OR      128
   \   0180  ED42              SBC     HL,BC
   \   0182  E28601            JP      PO,?0106
   \   0185  AC                XOR     H
   \   0186            ?0106:
   \   0186  F28F01            JP      P,?0032
   \   0189            ?0031:
    155                                  active--;
   \   0189  69                LD      L,C
   \   018A  60                LD      H,B
   \   018B  2B                DEC     HL
   \   018C  220000            LD      (active),HL
   \   018F            ?0032:
    156                              g_file_total = fselGetTotal();
   \   018F  3E00              LD      A,BYTE3 fselGetTotal
   \   0191  210000            LD      HL,LWRD fselGetTotal
   \   0194  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0197  220200            LD      (g_file_total),HL
   \   019A            ?0034:
    157                              while(ap_get_message()!= AP_KEY_NULL) {;}
   \   019A  CD0000            CALL    LWRD ap_get_message
   \   019D  B7                OR      A
   \   019E  20FA              JR      NZ,?0034
   \   01A0            ?0035:
   \   01A0            ?0033:
    158                              ap_message_init(NULL);
   \   01A0  5F                LD      E,A
   \   01A1  57                LD      D,A
   \   01A2  3E00              LD      A,BYTE3 ap_message_init
   \   01A4  210000            LD      HL,LWRD ap_message_init
   \   01A7  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    159          
    160                              //获得 loaction
    161                              fselGetLocation(&g_viewpic_vars.location);
   \   01AA  CDBE00            CALL    LWRD ?0118
    162          
    163                              make_dirname();
   \   01AD  3E00              LD      A,BYTE3 make_dirname
   \   01AF  210000            LD      HL,LWRD make_dirname
   \   01B2  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    164          
    165          
    166                             file_changed = FALSE;
    167                              need_draw = TRUE;
   \   01B5  DD36EF00          LD      (IX-17),0
   \   01B9  DD36EE01          LD      (IX-18),1
   \   01BD            ?0030:
    168                      }
    169                      output8(0x4e,input8(0x4e)|0x08);
   \   01BD  DB4E              IN      A,(78)
   \   01BF  CBDF              SET     3,A
   \   01C1  D34E              OUT     (78),A
    170                      if(need_draw)
   \   01C3  AF                XOR     A
   \   01C4  DDB6EE            OR      (IX-18)
   \   01C7  CA7003            JP      Z,?0037
   \   01CA            ?0036:
    171                      {
    172                          old_active=active;
   \   01CA  2A0000            LD      HL,(active)
   \   01CD  DD75FA            LD      (IX-6),L
   \   01D0  DD74FB            LD      (IX-5),H
    173                          cur_group = active / 5;
   \   01D3  010500            LD      BC,5
   \   01D6  EB                EX      DE,HL
   \   01D7  CD0000            CALL    LWRD ?SS_DIV_L02
   \   01DA  DD73F8            LD      (IX-8),E
   \   01DD  DD72F9            LD      (IX-7),D
    174                          top = cur_group*5;
   \   01E0  EB                EX      DE,HL
   \   01E1  4D                LD      C,L
   \   01E2  44                LD      B,H
   \   01E3  29                ADD     HL,HL
   \   01E4  29                ADD     HL,HL
   \   01E5  09                ADD     HL,BC
   \   01E6  DD75F6            LD      (IX-10),L
   \   01E9  DD74F7            LD      (IX-9),H
    175                          tmp = g_file_total - 1;
   \   01EC  ED4B0200          LD      BC,(g_file_total)
   \   01F0  0B                DEC     BC
    176                          bottom = top+4;
   \   01F1  110400            LD      DE,4
   \   01F4  19                ADD     HL,DE
   \   01F5  DD75FC            LD      (IX-4),L
   \   01F8  DD74FD            LD      (IX-3),H
    177                          if(bottom>tmp)bottom = tmp;
   \   01FB  EB                EX      DE,HL
   \   01FC  69                LD      L,C
   \   01FD  60                LD      H,B
   \   01FE  F680              OR      128
   \   0200  ED52              SBC     HL,DE
   \   0202  E20602            JP      PO,?0107
   \   0205  AC                XOR     H
   \   0206            ?0107:
   \   0206  F21102            JP      P,?0039
   \   0209            ?0038:
   \   0209  69                LD      L,C
   \   020A  60                LD      H,B
   \   020B  DD75FC            LD      (IX-4),L
   \   020E  DD74FD            LD      (IX-3),H
   \   0211            ?0039:
    178          
    179                          fselGetLocation(&g_viewpic_vars.location);
   \   0211  CDBE00            CALL    LWRD ?0118
    180                          reinit_idm_buf_pic(top, bottom, 0, g_comval.langid);
   \   0214  ED4B0C00          LD      BC,(g_comval+12)
   \   0218  0600              LD      B,0
   \   021A  C5                PUSH    BC
   \   021B  68                LD      L,B
   \   021C  60                LD      H,B
   \   021D  E5                PUSH    HL
   \   021E  DD4EFC            LD      C,(IX-4)
   \   0221  DD46FD            LD      B,(IX-3)
   \   0224  DD5EF6            LD      E,(IX-10)
   \   0227  DD56F7            LD      D,(IX-9)
   \   022A  3E00              LD      A,BYTE3 reinit_idm_buf_pic
   \   022C  210000            LD      HL,LWRD reinit_idm_buf_pic
   \   022F  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0232  E1                POP     HL
   \   0233  E1                POP     HL
    181                          ResShowPic(MENUTWO,0,0);
   \   0234  0E00              LD      C,0
   \   0236  C5                PUSH    BC
   \   0237  116D00            LD      DE,109
   \   023A  CD0D05            CALL    LWRD ?0119
   \   023D  F1                POP     AF
    182                          ResShowMultiString(PICTURE, g_comval.langid, 255, list_str_y_def);
   \   023E  0E94              LD      C,148
   \   0240  C5                PUSH    BC
   \   0241  0EFF              LD      C,255
   \   0243  C5                PUSH    BC
   \   0244  ED4B0C00          LD      BC,(g_comval+12)
   \   0248  11E001            LD      DE,480
   \   024B  3E00              LD      A,BYTE3 ResShowMultiString
   \   024D  210000            LD      HL,LWRD ResShowMultiString
   \   0250  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0253  F1                POP     AF
   \   0254  F1                POP     AF
    183                          //ResShowPic(DHT,126,0);
    184                          ResShowPic(DHT,194,8);  
   \   0255  0E08              LD      C,8
   \   0257  C5                PUSH    BC
   \   0258  0EC2              LD      C,194
   \   025A  112D00            LD      DE,45
   \   025D  CD0D05            CALL    LWRD ?0119
   \   0260  F1                POP     AF
    185                          if(g_viewpic_vars.location.disk=='H')
   \   0261  3A0400            LD      A,(g_viewpic_vars+4)
   \   0264  FE48              CP      72
   \   0266  200C              JR      NZ,?0041
   \   0268            ?0040:
    186                             ResShowPic(CARDDISK,180,150);  
   \   0268  0E96              LD      C,150
   \   026A  C5                PUSH    BC
   \   026B  0EB4              LD      C,180
   \   026D  111E00            LD      DE,30
   \   0270  CD0D05            CALL    LWRD ?0119
   \   0273  F1                POP     AF
   \   0274            ?0041:
    187                          ResShowPic(MDIR, 10, POSITION_MENU6-4);
   \   0274  0E73              LD      C,115
   \   0276  C5                PUSH    BC
   \   0277  0E0A              LD      C,10
   \   0279  115B00            LD      DE,91
   \   027C  CD0D05            CALL    LWRD ?0119
   \   027F  F1                POP     AF
    188                          SetTextPos(menu_str_x_def, POSITION_MENU6-2);
   \   0280  0E75              LD      C,117
   \   0282  1E20              LD      E,32

⌨️ 快捷键说明

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