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

📄 tryplaying.lst

📁 5807收音机模块用于炬力平台
💻 LST
📖 第 1 页 / 共 2 页
字号:
   \   0110            ?0017:
     91                      }
     92                      if (flash_point) // 箭头闪烁
   \   0110  DD7EFA            LD      A,(IX-6)
   \   0113  DDB6FB            OR      (IX-5)
   \   0116  3A0500            LD      A,(FMStatus+5)
   \   0119  2825              JR      Z,?0019
   \   011B            ?0018:
     93                      {
     94                          if (FMStatus.mode == 0)
   \   011B  B7                OR      A
   \   011C  0E10              LD      C,16
   \   011E  C5                PUSH    BC
   \   011F  DD7EF6            LD      A,(IX-10)
   \   0122  2004              JR      NZ,?0021
   \   0124            ?0020:
     95                          {
     96                              ResShowPic(DWNARROW, 11 - 5 + k, 16); //显示箭头
   \   0124  C606              ADD     A,6
   \   0126  1802              JR      ?0044
     97                              //ResShowPic(FQBAR,0,24);                    //显示US频率条
     98                          }
     99                          else
   \   0128            ?0021:
    100                          {
    101                              ResShowPic(DWNARROW, 30 - 6 + k, 16); //显示箭头
   \   0128  C618              ADD     A,24
   \   012A            ?0044:
   \   012A  4F                LD      C,A
   \   012B  115E00            LD      DE,94
   \   012E  3E00              LD      A,BYTE3 ResShowPic
   \   0130  210000            LD      HL,LWRD ResShowPic
   \   0133  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0136  F1                POP     AF
   \   0137            ?0022:
    102                              //ResShowPic(FQBAR2,0,24);                    //显示JP频率条
    103                          }
    104                          flash_point = 0;
   \   0137  AF                XOR     A
   \   0138  DD77FA            LD      (IX-6),A
   \   013B  DD77FB            LD      (IX-5),A
    105                      }
    106                      else // 清除箭头
   \   013E  1822              JR      ?0023
   \   0140            ?0019:
    107                      {
    108                          if (FMStatus.mode == 0)
   \   0140  B7                OR      A
   \   0141  0E10              LD      C,16
   \   0143  DD7EF6            LD      A,(IX-10)
   \   0146  2004              JR      NZ,?0025
   \   0148            ?0024:
    109                          {
    110                              SetTextPos(11 - 5 + k, 16);
   \   0148  C606              ADD     A,6
   \   014A  1802              JR      ?0045
    111                          }
    112                          else
   \   014C            ?0025:
    113                          {
    114                              SetTextPos(30 - 6 + k, 16);
   \   014C  C618              ADD     A,24
   \   014E            ?0045:
   \   014E  5F                LD      E,A
   \   014F  CD0000            CALL    LWRD SetTextPos
   \   0152            ?0026:
    115                          }
    116                          PutS("  ", 2);
   \   0152  0E02              LD      C,2
   \   0154  110000            LD      DE,?0027
   \   0157  CD0000            CALL    LWRD PutS
    117                          flash_point = 1;
   \   015A  DD36FA01          LD      (IX-6),1
   \   015E  DD36FB00          LD      (IX-5),0
   \   0162            ?0023:
    118                      }
    119                      UpdateScreen(NULL);
   \   0162  110000            LD      DE,0
   \   0165  CD0000            CALL    LWRD UpdateScreen
    120                      break;
   \   0168  C39300            JP      LWRD ?0009
   \   016B            ?0028:
    121                      case AP_KEY_VOLADD: // 音量调节.
    122                      case AP_KEY_VOLSUB:
    123                      ClearScreen(NULL);
   \   016B  58                LD      E,B
   \   016C  50                LD      D,B
   \   016D  CD0000            CALL    LWRD ClearScreen
    124                      ResShowPic(VOLUMEBK, 0, 0);
   \   0170  48                LD      C,B
   \   0171  C5                PUSH    BC
   \   0172  11F801            LD      DE,504
   \   0175  3E00              LD      A,BYTE3 ResShowPic
   \   0177  210000            LD      HL,LWRD ResShowPic
   \   017A  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   017D  F1                POP     AF
    125                      slider.max = g_comval.VolumeMax;
   \   017E  ED4B1F00          LD      BC,(g_comval+31)
   \   0182  0600              LD      B,0
   \   0184  ED430200          LD      (slider+2),BC
    126                      slider.min = 0;
   \   0188  68                LD      L,B
   \   0189  60                LD      H,B
   \   018A  220000            LD      (slider),HL
    127                      slider.step = 1;
   \   018D  23                INC     HL
   \   018E  220600            LD      (slider+6),HL
    128                      FMStatus.volume = FMStatus.vol_display * 31 / g_comval.VolumeMax;
   \   0191  ED4B0800          LD      BC,(FMStatus+8)
   \   0195  44                LD      B,H
   \   0196  111F00            LD      DE,31
   \   0199  CD0000            CALL    LWRD ?S_MUL_L02
   \   019C  ED4B1F00          LD      BC,(g_comval+31)
   \   01A0  44                LD      B,H
   \   01A1  CD0000            CALL    LWRD ?SS_DIV_L02
   \   01A4  7B                LD      A,E
   \   01A5  320600            LD      (FMStatus+6),A
    129                      slider.value = FMStatus.vol_display;
   \   01A8  ED4B0800          LD      BC,(FMStatus+8)
   \   01AC  44                LD      B,H
   \   01AD  ED430400          LD      (slider+4),BC
    130                      key = ui_slider(&slider, volume_callback2); //音量滚动条显示
   \   01B1  0E00              LD      C,BYTE3 volume_callback2
   \   01B3  C5                PUSH    BC
   \   01B4  210000            LD      HL,LWRD volume_callback2
   \   01B7  E5                PUSH    HL
   \   01B8  110000            LD      DE,slider
   \   01BB  3E00              LD      A,BYTE3 ui_slider
   \   01BD  210000            LD      HL,LWRD ui_slider
   \   01C0  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   01C3  F1                POP     AF
   \   01C4  F1                POP     AF
   \   01C5  E5                PUSH    HL
   \   01C6  FDE1              POP     IY
    131                      m_FMPlaystatus.vol_display = FMStatus.vol_display;
   \   01C8  3A0800            LD      A,(FMStatus+8)
   \   01CB  320800            LD      (m_FMPlaystatus+8),A
    132                      FMStatus.volume = FMStatus.vol_display * 31 / g_comval.VolumeMax;
   \   01CE  4F                LD      C,A
   \   01CF  111F00            LD      DE,31
   \   01D2  CD0000            CALL    LWRD ?S_MUL_L02
   \   01D5  ED4B1F00          LD      BC,(g_comval+31)
   \   01D9  0600              LD      B,0
   \   01DB  CD0000            CALL    LWRD ?SS_DIV_L02
   \   01DE  7B                LD      A,E
   \   01DF  320600            LD      (FMStatus+6),A
    133                      fmSendCommand(MC_GETSTATUS, (int) &FMStatus);
   \   01E2  010000            LD      BC,FMStatus
   \   01E5  1E83              LD      E,131
   \   01E7  CD4300            CALL    LWRD ?0048
    134                      loop = FALSE;
   \   01EA  1810              JR      ?0046
    135                      break;
   \   01EC            ?0029:
    136                      default: //热键处理
    137                      key = ap_handle_hotkey(key);
   \   01EC  FDE5              PUSH    IY
   \   01EE  E1                POP     HL
   \   01EF  5D                LD      E,L
   \   01F0  CD0000            CALL    LWRD ap_handle_hotkey
   \   01F3  4F                LD      C,A
   \   01F4  C5                PUSH    BC
   \   01F5  FDE1              POP     IY
    138                      if (key != 0)
   \   01F7  79                LD      A,C
   \   01F8  B7                OR      A
   \   01F9  CA9300            JP      Z,?0009
   \   01FC            ?0030:
    139                      {
    140                          loop = FALSE;
   \   01FC            ?0046:
   \   01FC  DD36FE00          LD      (IX-2),0
   \   0200            ?0031:
   \   0200            ?0011:
   \   0200  C39300            JP      LWRD ?0009
   \   0203            ?0008:
    141                      }
    142                  }
    143              }
    144              //fmSendCommand(MC_MUTE,SetMUTE);
    145              fmSendCommand(MC_GETFREQ, (int) &k); // 保存电台
   \   0203  6F                LD      L,A
   \   0204  67                LD      H,A
   \   0205  39                ADD     HL,SP
   \   0206  4D                LD      C,L
   \   0207  44                LD      B,H
   \   0208  1E11              LD      E,17
   \   020A  CD4300            CALL    LWRD ?0048
    146              FMAutoTab[AutoTabNum] = k;
   \   020D  2A0000            LD      HL,(AutoTabNum)
   \   0210  2600              LD      H,0
   \   0212  29                ADD     HL,HL
   \   0213  010000            LD      BC,FMAutoTab
   \   0216  09                ADD     HL,BC
   \   0217  DD4EF6            LD      C,(IX-10)
   \   021A  71                LD      (HL),C
   \   021B  DD46F7            LD      B,(IX-9)
   \   021E  23                INC     HL
   \   021F  70                LD      (HL),B
    147              AutoTabNum++;
   \   0220  210000            LD      HL,AutoTabNum
   \   0223  34                INC     (HL)
    148              for (i = AutoTabNum; i < 20; i++)
   \   0224  ED4B0000          LD      BC,(AutoTabNum)
   \   0228  0600              LD      B,0
   \   022A  DD71F8            LD      (IX-8),C
   \   022D  DD70F9            LD      (IX-7),B
   \   0230            ?0033:
   \   0230  011480            LD      BC,32788
   \   0233  DD6EF8            LD      L,(IX-8)
   \   0236  DD66F9            LD      H,(IX-7)
   \   0239  78                LD      A,B
   \   023A  AC                XOR     H
   \   023B  67                LD      H,A
   \   023C  ED42              SBC     HL,BC
   \   023E  3035              JR      NC,?0032
   \   0240            ?0034:
    149              {
    150                  if (radio_param.param1[i] == k) // 删除重复的电台.
   \   0240  DD6EF8            LD      L,(IX-8)
   \   0243  DD66F9            LD      H,(IX-7)
   \   0246  29                ADD     HL,HL
   \   0247  ED4B0000          LD      BC,(radio_param)
   \   024B  09                ADD     HL,BC
   \   024C  46                LD      B,(HL)
   \   024D  23                INC     HL
   \   024E  66                LD      H,(HL)
   \   024F  68                LD      L,B
   \   0250  DD4EF6            LD      C,(IX-10)
   \   0253  DD46F7            LD      B,(IX-9)
   \   0256  A7                AND     A
   \   0257  ED42              SBC     HL,BC
   \   0259  2010              JR      NZ,?0037
   \   025B            ?0036:
    151                  {
    152                      radio_param.param1[i] = 0;
   \   025B  DD6EF8            LD      L,(IX-8)
   \   025E  DD66F9            LD      H,(IX-7)
   \   0261  29                ADD     HL,HL
   \   0262  ED4B0000          LD      BC,(radio_param)
   \   0266  09                ADD     HL,BC
   \   0267  AF                XOR     A
   \   0268  77                LD      (HL),A
   \   0269  23                INC     HL
   \   026A  77                LD      (HL),A
   \   026B            ?0037:
   \   026B  DD34F8            INC     (IX-8)
   \   026E  20C0              JR      NZ,?0033
   \   0270  DD34F9            INC     (IX-7)
   \   0273  18BB              JR      ?0033
   \   0275            ?0032:
    153                      //  FMStatus.station_count--;
    154                  }
    155              }
    156              return key;
   \   0275  FDE5              PUSH    IY
   \   0277  E1                POP     HL
    157          }
   \   0278            ?0038:
   \   0278  DDF9              LD      SP,IX
   \   027A  DDE1              POP     IX
   \   027C  FDE1              POP     IY
   \   027E  D1                POP     DE
   \   027F  C1                POP     BC
   \   0280  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0000                    RSEG    CSTR
   \   0000            ?0027:
   \   0000  2020              DEFB    '  '
   \   0002  00                DEFB    0
   \   0003                    END

Errors: none
Warnings: none
Code size: 643
Constant size: 3
Static variable size: Data(0) Iram(0)

⌨️ 快捷键说明

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