ap_message2_formusic.lst

来自「炬力方案176*132软件源码,适用于AK1025」· LST 代码 · 共 1,069 行 · 第 1/4 页

LST
1,069
字号
   \   0089  B8                CP      B
   \   008A  3006              JR      NC,?0015
   \   008C            ?0014:
    130                  {                  
    131                             counter_flag = TRUE;
   \   008C  DD36FF01          LD      (IX-1),1
    132                  }
    133                  else
   \   0090  1804              JR      ?0016
   \   0092            ?0015:
    134                  {
    135                      counter_flag = FALSE;
   \   0092  DD36FF00          LD      (IX-1),0
   \   0096            ?0016:
    136                  }
    137                  if ( g_EarProtect_flag && (tempVolume > EarProtectThreshold) && (g_decrease_time == EarProctetTimeTick) )
   \   0096  3A0000            LD      A,(g_EarProtect_flag)
   \   0099  B7                OR      A
   \   009A  2816              JR      Z,?0018
   \   009C  3A0100            LD      A,(EarProtectThreshold)
   \   009F  B8                CP      B
   \   00A0  3010              JR      NC,?0018
   \   00A2  3A0000            LD      A,(g_decrease_time)
   \   00A5  FE3C              CP      60
   \   00A7  2009              JR      NZ,?0018
   \   00A9            ?0020:
   \   00A9            ?0019:
   \   00A9            ?0017:
    138                  {
    139                      output8(0x87, tempVolume-1);
   \   00A9  78                LD      A,B
   \   00AA  C6FF              ADD     A,255
   \   00AC  D387              OUT     (135),A
    140                      g_decrease_time = 0;
   \   00AE  AF                XOR     A
   \   00AF  320000            LD      (g_decrease_time),A
   \   00B2            ?0018:
    141                  }
    142                  if ( g_EarProtect_flag && (g_half_hour_counter == 7200) )
   \   00B2  3A0000            LD      A,(g_EarProtect_flag)
   \   00B5  B7                OR      A
   \   00B6  281C              JR      Z,?0022
   \   00B8  21201C            LD      HL,7200
   \   00BB  ED4B0100          LD      BC,(g_half_hour_counter)
   \   00BF  ED42              SBC     HL,BC
   \   00C1  2011              JR      NZ,?0022
   \   00C3            ?0024:
   \   00C3            ?0023:
   \   00C3            ?0021:
    143                  {
    144                            if (tempVolume > 10)
   \   00C3  3E0A              LD      A,10
   \   00C5  DDBEFE            CP      (IX-2)
   \   00C8  3007              JR      NC,?0026
   \   00CA            ?0025:
    145                            {
    146                          output8(0x87, tempVolume-1);
   \   00CA  DD7EFE            LD      A,(IX-2)
   \   00CD  C6FF              ADD     A,255
   \   00CF  D387              OUT     (135),A
   \   00D1            ?0026:
    147                      }
    148                      g_half_hour_counter = 0;
   \   00D1  220100            LD      (g_half_hour_counter),HL
   \   00D4            ?0022:
    149                  }
    150              #endif
    151          
    152              //和上次的一样
    153              if(key == key_value)
   \   00D4  3A1100            LD      A,(?0013)
   \   00D7  47                LD      B,A
   \   00D8  DD7E02            LD      A,(IX+2)
   \   00DB  B8                CP      B
   \   00DC  2039              JR      NZ,?0028
   \   00DE            ?0027:
    154              {
    155                  //开背光
    156                  if (!g_light_flag)
   \   00DE  3A0E00            LD      A,(g_light_flag)
   \   00E1  B7                OR      A
   \   00E2  200A              JR      NZ,?0030
   \   00E4            ?0029:
    157                  {
    158                      //如背灯没开,不理按键
    159                      key_count = 0;
   \   00E4  6F                LD      L,A
   \   00E5  67                LD      H,A
   \   00E6  220F00            LD      (?0012),HL
    160                      g_rtc_counter = 0;
   \   00E9  220C00            LD      (g_rtc_counter),HL
    161                      return NULL;
   \   00EC  1868              JR      ?0107
    162                  }
   \   00EE            ?0030:
    163          
    164                  g_rtc_counter = 0;
   \   00EE  210000            LD      HL,0
   \   00F1  220C00            LD      (g_rtc_counter),HL
    165                  key_count++;
   \   00F4  2A0F00            LD      HL,(?0012)
   \   00F7  23                INC     HL
   \   00F8  220F00            LD      (?0012),HL
    166                  //key rate: ...0.3...0.3...0.3...0.3
    167                  if(key_count == 4) key |= AP_KEY_LONG;    //=1.2s
   \   00FB  3E04              LD      A,4
   \   00FD  AD                XOR     L
   \   00FE  B4                OR      H
   \   00FF  2006              JR      NZ,?0032
   \   0101            ?0031:
   \   0101  DDCB02FE          SET     7,(IX+2)
   \   0105  180D              JR      ?0035
   \   0107            ?0032:
    168                  else if(key_count > 4) key |= AP_KEY_HOLD;
   \   0107  4D                LD      C,L
   \   0108  44                LD      B,H
   \   0109  210400            LD      HL,4
   \   010C  ED42              SBC     HL,BC
   \   010E  3004              JR      NC,?0035
   \   0110            ?0034:
   \   0110  DDCB02F6          SET     6,(IX+2)
   \   0114            ?0035:
   \   0114            ?0033:
    169                  return key;
   \   0114  C36E02            JP      LWRD ?0076
    170              }
   \   0117            ?0028:
    171          
    172          
    173          
    174              switch( key )
   \   0117  5F                LD      E,A
   \   0118  CD0000            CALL    LWRD ?C_V_SWITCH_L06
   \   011B  0A00              DEFW    10
   \   011D  00                DEFB    0
   \   011E  22                DEFB    34
   \   011F  24                DEFB    36
   \   0120  30                DEFB    48
   \   0121  31                DEFB    49
   \   0122  80                DEFB    128
   \   0123  81                DEFB    129
   \   0124  8B                DEFB    139
   \   0125  91                DEFB    145
   \   0126  92                DEFB    146
   \   0127  4502              DEFW    ?0072
   \   0129  1D02              DEFW    ?0069
   \   012B  F901              DEFW    ?0064
   \   012D  1702              DEFW    ?0068
   \   012F  6501              DEFW    ?0040
   \   0131  6501              DEFW    ?0040
   \   0133  3D01              DEFW    ?0037
   \   0135  3D01              DEFW    ?0037
   \   0137  2302              DEFW    ?0070
   \   0139  3102              DEFW    ?0071
   \   013B  1D02              DEFW    ?0069
   \   013D            ?0037:
    175              {
    176              case Msg_KeyLongUp:
    177              case Msg_KeyShortUp:
    178                  key_count = 0;
   \   013D  210000            LD      HL,0
   \   0140  220F00            LD      (?0012),HL
    179                  g_rtc_counter = 0;
   \   0143  220C00            LD      (g_rtc_counter),HL
    180                  if (!g_light_flag)
   \   0146  3A0E00            LD      A,(g_light_flag)
   \   0149  B7                OR      A
   \   014A  200D              JR      NZ,?0039
   \   014C            ?0038:
    181                  {
    182                      Lightmodeset(TRUE);//开关背光(TRUE: 开, FALSE:关)
   \   014C  1E01              LD      E,1
   \   014E  CD7402            CALL    LWRD ?0113
    183                      g_light_flag = TRUE;
   \   0151  3E01              LD      A,1
   \   0153  320E00            LD      (g_light_flag),A
    184                      return NULL;
   \   0156            ?0107:
   \   0156  C35D02            JP      LWRD ?0108
    185                  }
   \   0159            ?0039:
    186                  key = key_value | AP_KEY_UP;
   \   0159  78                LD      A,B
   \   015A  CBEF              SET     5,A
   \   015C  DD7702            LD      (IX+2),A
    187                  key_value=key;                                //add by mzh 2007.3.14
   \   015F  321100            LD      (?0013),A
    188                  break;
   \   0162  C36E02            JP      LWRD ?0076
   \   0165            ?0040:
    189          
    190          
    191              case MSG_RTC2HZ:        //rtc
    192              case MSG_BAT_V_CHG:        //charging & rtc
    193                  g_rtc_counter++;
   \   0165  2A0C00            LD      HL,(g_rtc_counter)
   \   0168  23                INC     HL
   \   0169  220C00            LD      (g_rtc_counter),HL
    194                  #ifdef EAR_PROTECT
    195                      if (counter_flag)
   \   016C  AF                XOR     A
   \   016D  DDB6FF            OR      (IX-1)
   \   0170  2804              JR      Z,?0042
   \   0172            ?0041:
    196                      {
    197                          g_decrease_time++;
   \   0172  210000            LD      HL,g_decrease_time
   \   0175  34                INC     (HL)
   \   0176            ?0042:
    198                      }
    199                  g_half_hour_counter++;
   \   0176  2A0100            LD      HL,(g_half_hour_counter)
   \   0179  23                INC     HL
   \   017A  220100            LD      (g_half_hour_counter),HL
    200                  g_autoswitch_counter++;
   \   017D  2A0300            LD      HL,(g_autoswitch_counter)
   \   0180  23                INC     HL
   \   0181  220300            LD      (g_autoswitch_counter),HL
    201                  #endif
    202          
    203                  if((g_light_time != 0) && (g_rtc_counter >= g_light_time)&&((input8(0x57) & 0x02)==0))    //自动关背光
   \   0184  3A0500            LD      A,(g_light_time)
   \   0187  B7                OR      A
   \   0188  2818              JR      Z,?0044
   \   018A  4F                LD      C,A
   \   018B  0600              LD      B,0
   \   018D  2A0C00            LD      HL,(g_rtc_counter)
   \   0190  ED42              SBC     HL,BC
   \   0192  380E              JR      C,?0044
   \   0194  DB57              IN      A,(87)
   \   0196  CB4F              BIT     1,A
   \   0198  2008              JR      NZ,?0044
   \   019A            ?0046:
   \   019A            ?0045:
   \   019A            ?0043:
    204                  {
    205                      //关背光
    206                      Lightmodeset(FALSE);                         //开关背光(true: 开, false:关) zxs  //
   \   019A  58                LD      E,B
   \   019B  CD7402            CALL    LWRD ?0113
    207                      g_light_flag = FALSE;
   \   019E  AF                XOR     A
   \   019F  320E00            LD      (g_light_flag),A
   \   01A2            ?0044:
    208                  }
    209          
    210                  if(g_sleep_time != 0 && g_rtc_counter == g_sleep_time) //睡眠
   \   01A2  2A0800            LD      HL,(g_sleep_time)
   \   01A5  7D                LD      A,L
   \   01A6  B4                OR      H
   \   01A7  2808              JR      Z,?0048
   \   01A9  ED4B0C00          LD      BC,(g_rtc_counter)
   \   01AD  ED42              SBC     HL,BC
   \   01AF  2823              JR      Z,?0109
   \   01B1            ?0050:
   \   01B1            ?0049:
   \   01B1            ?0047:
    211                  {
    212                      return AP_MSG_SLEEP;
    213                  }
   \   01B1            ?0048:
    214          
    215                  if(g_standby_time != 0 && g_rtc_counter == g_standby_time) //自动关机
   \   01B1  2A0A00            LD      HL,(g_standby_time)
   \   01B4  7D                LD      A,L
   \   01B5  B4                OR      H
   \   01B6  280D              JR      Z,?0052
   \   01B8  ED4B0C00          LD      BC,(g_rtc_counter)

⌨️ 快捷键说明

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