main.lst

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

LST
1,352
字号
   \   053E  DD36FD01          LD      (IX-3),1
   \   0542            ?0095:
   \   0542            ?0093:
   \   0542            ?0091:
   \   0542            ?0086:
   \   0542            ?0077:
   \   0542            ?0074:
   \   0542            ?0067:
    302                              }
    303                          }
    304          
    305                          break;
   \   0542  C35102            JP      LWRD ?0033
   \   0545            ?0096:
    306                      case AP_KEY_PLAY|AP_KEY_UP:                //跳到电台表的下一个
    307                          fmSendCommand(MC_STEP,UP);
   \   0545  0E01              LD      C,1
   \   0547  1E07              LD      E,7
   \   0549            ?0141:
   \   0549  3E00              LD      A,BYTE3 fmSendCommand
   \   054B            ?0135:
   \   054B  CD1200            CALL    LWRD ?0171
    308                          fmSendCommand(MC_GETSTATUS,(int)&FMStatus);
   \   054E            ?0154:
   \   054E  018400            LD      BC,FMStatus
   \   0551  1E83              LD      E,131
   \   0553            ?0143:
   \   0553  3E00              LD      A,BYTE3 fmSendCommand
   \   0555  210000            LD      HL,LWRD fmSendCommand
   \   0558            ?0159:
   \   0558  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    309                          Updateflag=1;
   \   055B  3E01              LD      A,1
   \   055D            ?0156:
   \   055D  323300            LD      (Updateflag),A
    310                          need_draw=TRUE;
   \   0560  C3E405            JP      LWRD ?0136
    311                          break;
   \   0563  C35102            JP      LWRD ?0033
   \   0566            ?0097:
    312                      case AP_KEY_VOLADD:
    313                      case AP_KEY_VOLADD | AP_KEY_HOLD:
    314                          if (FMStatus.volume ++ <31)
   \   0566  218A00            LD      HL,FMStatus+6
   \   0569  7E                LD      A,(HL)
   \   056A  34                INC     (HL)
   \   056B  FE1F              CP      31
   \   056D  3026              JR      NC,?0099
   \   056F            ?0098:
    315                          {
    316                            if(volmuteflag)                            //处理fm声音在零级还有输出的情况    zxs change
   \   056F  3A0000            LD      A,(volmuteflag)
   \   0572  B7                OR      A
   \   0573  2843              JR      Z,?0107
   \   0575            ?0100:
    317                            {
    318                              fmSendCommand(MC_MUTE,releaseMUTE);
   \   0575  48                LD      C,B
   \   0576  CD0E00            CALL    LWRD ?0170
    319                              volmuteflag=0;
   \   0579  AF                XOR     A
   \   057A  1839              JR      ?0167
   \   057C            ?0101:
    320                            }
    321          
    322                              ui_show_volfm(FMStatus.volume);   //显示音量
   \   057C  183A              JR      ?0107
   \   057E  3E00              LD      A,BYTE3 ui_show_volfm
   \   0580  183C              JR      ?0168
   \   0582  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    323                              fmSendCommand(MC_SETVOLUME, FMStatus.volume);
   \   0585  183D              JR      ?0162
   \   0587  0600              LD      B,0
   \   0589  183F              JR      ?0166
   \   058B  183F              JR      ?0160
   \   058D  210000            LD      HL,LWRD fmSendCommand
   \   0590  183F              JR      ?0150
    324                          }
    325                          else
   \   0592  C35102            JP      LWRD ?0033
   \   0595            ?0099:
    326                          {
    327                              FMStatus.volume = 31;
   \   0595  3E1F              LD      A,31
   \   0597  328A00            LD      (FMStatus+6),A
   \   059A            ?0102:
    328                          }
    329                          break;
   \   059A  C35102            JP      LWRD ?0033
   \   059D            ?0103:
    330                      case AP_KEY_VOLSUB:
    331                      case AP_KEY_VOLSUB | AP_KEY_HOLD:
    332          
    333                         if (FMStatus.volume>0)
   \   059D  3A8A00            LD      A,(FMStatus+6)
   \   05A0  B7                OR      A
   \   05A1  CA5102            JP      Z,?0033
   \   05A4            ?0104:
    334                          {
    335          
    336                              FMStatus.volume--;
   \   05A4  218A00            LD      HL,FMStatus+6
   \   05A7  35                DEC     (HL)
    337                              if((FMStatus.volume==0))
   \   05A8  3A8A00            LD      A,(FMStatus+6)
   \   05AB  B7                OR      A
   \   05AC  200A              JR      NZ,?0107
   \   05AE            ?0106:
    338                               {
    339                                fmSendCommand(MC_MUTE,SetMUTE);                    //处理fm声音在零级还有输出的情况    zxs change
   \   05AE  0E01              LD      C,1
   \   05B0  CD0E00            CALL    LWRD ?0170
    340                                volmuteflag=1;
   \   05B3  3E01              LD      A,1
   \   05B5            ?0167:
   \   05B5  320000            LD      (volmuteflag),A
   \   05B8            ?0107:
    341                               }
    342          
    343                              ui_show_volfm(FMStatus.volume);   //显示音量
   \   05B8  ED5B8A00          LD      DE,(FMStatus+6)
   \   05BC  3E00              LD      A,BYTE3 ui_show_volfm
   \   05BE            ?0168:
   \   05BE  210000            LD      HL,LWRD ui_show_volfm
   \   05C1  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    344                              fmSendCommand(MC_SETVOLUME, FMStatus.volume);
   \   05C4            ?0162:
   \   05C4  ED4B8A00          LD      BC,(FMStatus+6)
   \   05C8  0600              LD      B,0
   \   05CA            ?0166:
   \   05CA  1E40              LD      E,64
   \   05CC            ?0160:
   \   05CC  3E00              LD      A,BYTE3 fmSendCommand
   \   05CE  210000            LD      HL,LWRD fmSendCommand
   \   05D1            ?0150:
   \   05D1  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    345                          }
    346                          else
   \   05D4  C35102            JP      LWRD ?0033
   \   05D7            ?0105:
    347                          {
    348                              FMStatus.volume = 0;
   \   05D7            ?0108:
    349          
    350                          }
    351          
    352                          break;
   \   05D7  C35102            JP      LWRD ?0033
   \   05DA            ?0109:
    353          //           case AP_KEY_AB | AP_KEY_UP:    //进入录音
    354          //               return RESULT_FMREC_AB;
    355                      default:                                        //热键处理
    356                          key=ap_handle_hotkey(key);
   \   05DA  59                LD      E,C
   \   05DB  CD0000            CALL    LWRD ap_handle_hotkey
   \   05DE  4F                LD      C,A
    357                          if(key == RESULT_REDRAW)need_draw=TRUE;
   \   05DF  3E32              LD      A,50
   \   05E1  A9                XOR     C
   \   05E2  2007              JR      NZ,?0111
   \   05E4            ?0110:
   \   05E4            ?0136:
   \   05E4  DD36FC01          LD      (IX-4),1
   \   05E8  C35102            JP      LWRD ?0033
   \   05EB            ?0111:
    358                          else if(key == RESULT_RECORD)  return RESULT_FMREC_START;  //for FM record (press REC) by ccm
   \   05EB  3E09              LD      A,9
   \   05ED  A9                XOR     C
   \   05EE  2005              JR      NZ,?0114
   \   05F0            ?0113:
   \   05F0  210D00            LD      HL,13
   \   05F3  1817              JR      ?0121
   \   05F5            ?0114:
    359                          else if((key!=0)||(result!=0))
   \   05F5  79                LD      A,C
   \   05F6  B7                OR      A
   \   05F7  2008              JR      NZ,?0117
   \   05F9  FDE5              PUSH    IY
   \   05FB  E1                POP     HL
   \   05FC  7D                LD      A,L
   \   05FD  B4                OR      H
   \   05FE  CA5102            JP      Z,?0033
   \   0601            ?0117:
   \   0601            ?0118:
   \   0601            ?0115:
    360                          {
    361                              if(key!=0)return key;
   \   0601  79                LD      A,C
   \   0602  B7                OR      A
   \   0603  2804              JR      Z,?0120
   \   0605            ?0119:
   \   0605  69                LD      L,C
   \   0606  60                LD      H,B
    362                              else
   \   0607  1803              JR      ?0121
   \   0609            ?0120:
    363                                  return result;
   \   0609  FDE5              PUSH    IY
   \   060B  E1                POP     HL
    364                          }
   \   060C            ?0121:
   \   060C  DDF9              LD      SP,IX
   \   060E  DDE1              POP     IX
   \   0610  FDE1              POP     IY
   \   0612  D1                POP     DE
   \   0613  C1                POP     BC
   \   0614  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0617            ?0116:
   \   0617            ?0112:
   \   0617            ?0051:
    365                  }
    366              }
    367          }
   \   0617  C35102            JP      LWRD ?0033
    368          
    369          
    370          
    371          
    372          
    373          
   \   0000                    RSEG    CSTR
   \   0000            ?0016:
   \   0000  75693330          DEFB    'ui30.res'
   \   0004  2E726573
   \   0008  00                DEFB    0
   \   0009            ?0046:
   \   0009  2020              DEFB    '  '
   \   000B  00                DEFB    0
   \   0000                    RSEG    CONST
   \   0000            string:
   \   0000  5A01              DEFW    346
   \   0002  5B01              DEFW    347
   \   0004  5C01              DEFW    348
   \   0006  5D01              DEFW    349
   \   0008  CC01              DEFW    460
   \   000A  5E01              DEFW    350
   \   000C  5F01              DEFW    351
   \   000E  6001              DEFW    352
   \   0010            ?0025:
   \   0010  464D              DEFB    'FM'
   \   0012  00                DEFB    0
   \   0013  00                DEFB    0
   \   0000                    RSEG    UDATA0
   \   0000            TimeCount:
   \   0002                    DEFS    2
   \   0002            radio_param:
   \   0006                    DEFS    4
   \   0006            clrregion:
   \   000A                    DEFS    4
   \   000A            g_list:
   \   0013                    DEFS    9
   \   0013            g_comval:
   \   0033                    DEFS    32
   \   0033            Updateflag:
   \   0034                    DEFS    1
   \   0034            FMStationTab:
   \   0084                    DEFS    80
   \   0084            FMStatus:
   \   008C                    DEFS    8
   \   008C            FMStatusUS:
   \   0094                    DEFS    8
   \   0094            FMStatusJP:
   \   009C                    DEFS    8
   \   009C            fmdataflag:
   \   009F                    DEFS    3
   \   009F            Freqtab:
   \   00A9                    DEFS    10
 

⌨️ 快捷键说明

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