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

📄 ui_main_for_rec.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 3 页
字号:
   \   026F  E1                POP     HL
   \   0270  C1                POP     BC
   \   0271  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0274            ui_show_g:
    199          
    200          void ui_show_g(const char *string)         //文件名显示
    201          {
   \   0274  C5                PUSH    BC
   \   0275  D5                PUSH    DE
    202              SetTextPos(100, 34);
   \   0276  0E22              LD      C,34
   \   0278  1E64              LD      E,100
   \   027A  C36002            JP      LWRD ?0086
    203              PutS(string, -1);
    204           }
   \   027D            ui_show_batt:
    205             
    206          
    207          /* event r: reset
    208           * event l: battery empty
    209           * event h: battery full
    210           * event n: nmi, auto standby
    211           * event r1: stop recording point, file < 32M
    212           * event r2: stop recording point, file > 32M
    213           *
    214           * value    voltage        碱性电池    镍氢电池    锂电池
    215           * 0         0.90        r
    216           * 1        0.94
    217           * 2        0.98        n        r
    218           * 3        1.02
    219           * 4        1.06        l,r1        n
    220           * 5        1.10        r2        l,r1
    221           * 6        1.14                r2
    222           * 7        1.18
    223           * 8        1.22
    224           * 9        1.26
    225           * 10        1.30                        n
    226           * 11        1.34                        l,r1
    227           * 12        1.38        h        h        r2
    228           * 13        1.42
    229           * 14        1.46
    230           * 15        1.50                        h
    231           */
    232          //0~15, -1 表示正在充电
    233          void ui_show_batt(int value, char batt_type,bool fmflag)
    234          {
   \   027D  DDE5              PUSH    IX
   \   027F  C5                PUSH    BC
   \   0280  D5                PUSH    DE
   \   0281  DDE1              POP     IX
    235              static int cur_value=0;    //当前电量值
    236          
    237          
    238              if((sKY_ChargeSet(0)!=0)&&(input8(0x9c)<0xe4))
   \   0283  1E00              LD      E,0
   \   0285  CD0000            CALL    LWRD sKY_ChargeSet
   \   0288  B7                OR      A
   \   0289  281F              JR      Z,?0009
   \   028B  DB9C              IN      A,(156)
   \   028D  FEE4              CP      228
   \   028F  3019              JR      NC,?0009
   \   0291            ?0011:
   \   0291            ?0010:
   \   0291            ?0008:
    239              {
    240                 cur_value++;
   \   0291  2A0000            LD      HL,(?0007)
   \   0294  23                INC     HL
   \   0295  220000            LD      (?0007),HL
    241                  if(cur_value > 8) cur_value = 0;
   \   0298  4D                LD      C,L
   \   0299  44                LD      B,H
   \   029A  210800            LD      HL,8
   \   029D  F680              OR      128
   \   029F  ED42              SBC     HL,BC
   \   02A1  E2A502            JP      PO,?0065
   \   02A4  AC                XOR     H
   \   02A5            ?0065:
   \   02A5  F24403            JP      P,?0040
   \   02A8            ?0012:
   \   02A8  186E              JR      ?0080
   \   02AA            ?0013:
    242              }
    243              else
   \   02AA            ?0009:
    244              {
    245                  if(batt_type == BATT_TYPE_ALKALINE)    //碱性电池
   \   02AA  AF                XOR     A
   \   02AB  B1                OR      C
   \   02AC  2028              JR      NZ,?0016
   \   02AE            ?0015:
    246                  {
    247                      if(value < 62) cur_value = 0;    //batt empty
   \   02AE  013E80            LD      BC,32830
   \   02B1  DDE5              PUSH    IX
   \   02B3  E1                POP     HL
   \   02B4  78                LD      A,B
   \   02B5  AC                XOR     H
   \   02B6  67                LD      H,A
   \   02B7  ED42              SBC     HL,BC
   \   02B9  385D              JR      C,?0080
   \   02BB            ?0017:
   \   02BB            ?0018:
    248                      else if(value > 116 ) cur_value = 8;    //batt full
   \   02BB  DDE5              PUSH    IX
   \   02BD  C1                POP     BC
   \   02BE  217400            LD      HL,116
   \   02C1  F680              OR      128
   \   02C3  ED42              SBC     HL,BC
   \   02C5  E2C902            JP      PO,?0066
   \   02C8  AC                XOR     H
   \   02C9            ?0066:
   \   02C9  FA2D03            JP      M,?0079
   \   02CC            ?0020:
   \   02CC            ?0021:
    249                      else cur_value = (value - 62) / 7;      // 116 - 62
   \   02CC  21C2FF            LD      HL,65474
   \   02CF  09                ADD     HL,BC
   \   02D0  EB                EX      DE,HL
   \   02D1  010700            LD      BC,7
   \   02D4  1867              JR      ?0073
   \   02D6            ?0022:
   \   02D6            ?0019:
   \   02D6            ?0016:
    250                  }
    251                  else if(batt_type == BATT_TYPE_NIH)    //镍氢电池
   \   02D6  41                LD      B,C
   \   02D7  05                DEC     B
   \   02D8  2028              JR      NZ,?0025
   \   02DA            ?0024:
    252                  {
    253                      if(value < 69) cur_value = 0;    //batt empty
   \   02DA  014580            LD      BC,32837
   \   02DD  DDE5              PUSH    IX
   \   02DF  E1                POP     HL
   \   02E0  78                LD      A,B
   \   02E1  AC                XOR     H
   \   02E2  67                LD      H,A
   \   02E3  ED42              SBC     HL,BC
   \   02E5  3831              JR      C,?0080
   \   02E7            ?0026:
   \   02E7            ?0027:
    254                      else if(value > 116 ) cur_value = 8;    //batt full
   \   02E7  DDE5              PUSH    IX
   \   02E9  C1                POP     BC
   \   02EA  217400            LD      HL,116
   \   02ED  F680              OR      128
   \   02EF  ED42              SBC     HL,BC
   \   02F1  E2F502            JP      PO,?0067
   \   02F4  AC                XOR     H
   \   02F5            ?0067:
   \   02F5  FA2D03            JP      M,?0079
   \   02F8            ?0029:
   \   02F8            ?0030:
    255                      else cur_value = (value - 69) / 6;
   \   02F8  21BBFF            LD      HL,65467
   \   02FB  09                ADD     HL,BC
   \   02FC  EB                EX      DE,HL
   \   02FD  010600            LD      BC,6
   \   0300  183B              JR      ?0073
   \   0302            ?0031:
   \   0302            ?0028:
   \   0302            ?0025:
    256                  }
    257                  else if(batt_type == BATT_TYPE_LITHIUM)    //锂电池  3.5~4.2 工作电压         //
   \   0302  210000            LD      HL,0
   \   0305  39                ADD     HL,SP
   \   0306  46                LD      B,(HL)
   \   0307  05                DEC     B
   \   0308  05                DEC     B
   \   0309  2039              JR      NZ,?0040
   \   030B            ?0033:
    258                  {
    259                      if(value < 175) cur_value = 0;    //batt empty
   \   030B  01AF80            LD      BC,32943
   \   030E  DDE5              PUSH    IX
   \   0310  E1                POP     HL
   \   0311  78                LD      A,B
   \   0312  AC                XOR     H
   \   0313  67                LD      H,A
   \   0314  ED42              SBC     HL,BC
   \   0316  3005              JR      NC,?0036
   \   0318            ?0035:
   \   0318            ?0080:
   \   0318  210000            LD      HL,0
   \   031B  1813              JR      ?0071
   \   031D            ?0036:
    260                      else if(value > 201)cur_value = 8;
   \   031D  DDE5              PUSH    IX
   \   031F  C1                POP     BC
   \   0320  21C900            LD      HL,201
   \   0323  B5                OR      L
   \   0324  ED42              SBC     HL,BC
   \   0326  E22A03            JP      PO,?0068
   \   0329  AC                XOR     H
   \   032A            ?0068:
   \   032A  F23503            JP      P,?0039
   \   032D            ?0038:
   \   032D            ?0079:
   \   032D  210800            LD      HL,8
   \   0330            ?0071:
   \   0330  220000            LD      (?0007),HL
   \   0333  180F              JR      ?0040
   \   0335            ?0039:
    261                      else cur_value = (value - 175) / 4;    //  zxs change
   \   0335  2151FF            LD      HL,65361
   \   0338  09                ADD     HL,BC
   \   0339  EB                EX      DE,HL
   \   033A  010400            LD      BC,4
   \   033D            ?0073:
   \   033D  CD0000            CALL    LWRD ?SS_DIV_L02
   \   0340  ED530000          LD      (?0007),DE
   \   0344            ?0040:
   \   0344            ?0037:
    262                  }
    263                  else ASSERT(FALSE);
   \   0344            ?0034:
   \   0344            ?0041:
   \   0344            ?0032:
   \   0344            ?0023:
   \   0344            ?0014:
    264              } 
    265                if(!fmflag)
   \   0344            ?0042:
    266                 main_ResShowPic(BATTERY1+cur_value, POS_BATTERY,POSY_BATTERY);
    267                else
   \   0344            ?0043:
    268                 main_ResShowPic(BATTERY1+cur_value, POS_BATTERY,POSY_BATTERY);
   \   0344  0EA2              LD      C,162
   \   0346  C5                PUSH    BC
   \   0347  0EC1              LD      C,193
   \   0349  211300            LD      HL,19
   \   034C  ED5B0000          LD      DE,(?0007)
   \   0350  CD8201            CALL    LWRD ?0090
   \   0353  F1                POP     AF
   \   0354            ?0044:
    269          }
   \   0354  E1                POP     HL
   \   0355  DDE1              POP     IX
   \   0357  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   035A            ui_show_lock:
    270          
    271          char ui_show_lock(char islock)
    272          {
   \   035A  C5                PUSH    BC
   \   035B  D5                PUSH    DE
    273              if(islock == 1)
   \   035C  43                LD      B,E
   \   035D  05                DEC     B
   \   035E  201E              JR      NZ,?0046
   \   0360            ?0045:
    274              {
    275                  SetBackgdColor(Color_BULE1_def);
   \   0360  48                LD      C,B
   \   0361  113E75            LD      DE,30014
   \   0364  CD0000            CALL    LWRD SetBackgdColor
    276                  ClearScreen(NULL);
   \   0367  110000            LD      DE,0
   \   036A  CD0000            CALL    LWRD ClearScreen
    277                  ResShowPic(UDLOCK_S,86,80);
   \   036D  0E50              LD      C,80
   \   036F  C5                PUSH    BC
   \   0370  0E56              LD      C,86
   \   0372  110800            LD      DE,8
   \   0375  3E00              LD      A,BYTE3 ResShowPic
   \   0377  210000            LD      HL,LWRD ResShowPic
   \   037A  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   037D  F1                POP     AF
   \   037E            ?0046:
    278              }
    279           
    280              //wait 2s
    281              return ap_sleep(4);
   \   037E  110400            LD      DE,4
   \   0381  3E00              LD      A,BYTE3 ap_sleep
   \   0383  210000            LD      HL,LWRD ap_sleep
   \   0386  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    282          }
   \   0389  F1                POP     AF
   \   038A  C1                POP     BC
   \   038B  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
    283          
    284          
   \   0000                    RSEG    IDATA0
   \   0000            ?0007:
   \   0002                    DEFS    2
   \   0000                    RSEG    CDATA0
   \   0000  0000              DEFW    0
   \   0002                    END

Errors: none
Warnings: none
Code size: 910
Constant size: 2
Static variable size: Data(2) Iram(0)

⌨️ 快捷键说明

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