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

📄 ui_main_for_music.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 3 页
字号:
   \   01CC  1E04              LD      E,4
   \   01CE  CD0000            CALL    LWRD SetAsciiFont
    195              
    196              SetPenColor(oldDC_sav.PenColor);
   \   01D1  210000            LD      HL,0
   \   01D4  39                ADD     HL,SP
   \   01D5  5E                LD      E,(HL)
   \   01D6  23                INC     HL
   \   01D7  56                LD      D,(HL)
   \   01D8  23                INC     HL
   \   01D9  4E                LD      C,(HL)
   \   01DA  23                INC     HL
   \   01DB  46                LD      B,(HL)
   \   01DC  CD0000            CALL    LWRD SetPenColor
    197              SetBackgdColor(oldDC_sav.BackgdColor);
   \   01DF  210400            LD      HL,4
   \   01E2  39                ADD     HL,SP
   \   01E3  5E                LD      E,(HL)
   \   01E4  23                INC     HL
   \   01E5  56                LD      D,(HL)
   \   01E6  23                INC     HL
   \   01E7  4E                LD      C,(HL)
   \   01E8  23                INC     HL
   \   01E9  46                LD      B,(HL)
   \   01EA  CD0000            CALL    LWRD SetBackgdColor
    198          }
   \   01ED  210C00            LD      HL,12
   \   01F0  39                ADD     HL,SP
   \   01F1  F9                LD      SP,HL
   \   01F2  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   01F5            ui_show_f:
    199          
    200          
    201          void ui_show_f(const char *string)                //文件名/滚屏显示
    202          {
   \   01F5  C5                PUSH    BC
   \   01F6  D5                PUSH    DE
    203              SetTextPos(POS_SCROLLSTRAT, POSY_SCROLL);
   \   01F7  0E6E              LD      C,110
   \   01F9            ?0048:
   \   01F9  1E2D              LD      E,45
   \   01FB  CD0000            CALL    LWRD SetTextPos
    204              PutS(string, -1);
   \   01FE  0EFF              LD      C,255
   \   0200  210000            LD      HL,0
   \   0203  39                ADD     HL,SP
   \   0204  5E                LD      E,(HL)
   \   0205  23                INC     HL
   \   0206  56                LD      D,(HL)
   \   0207  CD0000            CALL    LWRD PutS
    205          }
   \   020A  E1                POP     HL
   \   020B  C1                POP     BC
   \   020C  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   020F            ui_show_g:
    206          
    207          void ui_show_g(const char *string)         //文件名显示
    208          {
   \   020F  C5                PUSH    BC
   \   0210  D5                PUSH    DE
    209              SetTextPos(POS_FILENAME, POSY_FILENAME);
   \   0211  0E4F              LD      C,79
   \   0213  C3F901            JP      LWRD ?0048
    210              PutS(string, -1);
    211           }
   \   0216            ui_show_batt:
    212          
    213          
    214          /* event r: reset
    215           * event l: battery empty
    216           * event h: battery full
    217           * event n: nmi, auto standby
    218           * event r1: stop recording point, file < 32M
    219           * event r2: stop recording point, file > 32M
    220           *
    221           * value    voltage        碱性电池    镍氢电池    锂电池
    222           * 0         0.90        r
    223           * 1        0.94
    224           * 2        0.98        n        r
    225           * 3        1.02
    226           * 4        1.06        l,r1        n
    227           * 5        1.10        r2        l,r1
    228           * 6        1.14                r2
    229           * 7        1.18
    230           * 8        1.22
    231           * 9        1.26
    232           * 10        1.30                        n
    233           * 11        1.34                        l,r1
    234           * 12        1.38        h        h        r2
    235           * 13        1.42
    236           * 14        1.46
    237           * 15        1.50                        h
    238           */
    239          //0~15, -1 表示正在充电
    240          void ui_show_batt(int value, char batt_type,bool fmflag)
    241          {
   \   0216  DDE5              PUSH    IX
   \   0218  C5                PUSH    BC
    242              static int cur_value=0;    //当前电量值
    243          
    244              value = input8(0x9c);
   \   0219  DB9C              IN      A,(156)
   \   021B  6F                LD      L,A
   \   021C  2600              LD      H,0
   \   021E  E5                PUSH    HL
   \   021F  DDE1              POP     IX
    245          
    246              if(GetUsbCableStatus()&&(input8(0x9c)<0xe4))
   \   0221  CD0000            CALL    LWRD GetUsbCableStatus
   \   0224  B7                OR      A
   \   0225  281F              JR      Z,?0010
   \   0227  DB9C              IN      A,(156)
   \   0229  FEE4              CP      228
   \   022B  3019              JR      NC,?0010
   \   022D            ?0012:
   \   022D            ?0011:
   \   022D            ?0009:
    247              {
    248                  cur_value++;
   \   022D  2A0000            LD      HL,(?0008)
   \   0230  23                INC     HL
   \   0231  220000            LD      (?0008),HL
    249                  if(cur_value > 8) cur_value = 0;
   \   0234  4D                LD      C,L
   \   0235  44                LD      B,H
   \   0236  210800            LD      HL,8
   \   0239  F680              OR      128
   \   023B  ED42              SBC     HL,BC
   \   023D  E24102            JP      PO,?0036
   \   0240  AC                XOR     H
   \   0241            ?0036:
   \   0241  F27F02            JP      P,?0021
   \   0244            ?0013:
   \   0244  180D              JR      ?0041
   \   0246            ?0014:
    250              }
    251              else
   \   0246            ?0010:
    252              {
    253                      if(value < 154) cur_value = 0;    //batt empty
   \   0246  019A80            LD      BC,32922
   \   0249  DDE5              PUSH    IX
   \   024B  E1                POP     HL
   \   024C  78                LD      A,B
   \   024D  AC                XOR     H
   \   024E  67                LD      H,A
   \   024F  ED42              SBC     HL,BC
   \   0251  3005              JR      NC,?0017
   \   0253            ?0016:
   \   0253            ?0041:
   \   0253  210000            LD      HL,0
   \   0256  1813              JR      ?0038
   \   0258            ?0017:
    254                      else if(value > 212)cur_value = 8;
   \   0258  DDE5              PUSH    IX
   \   025A  C1                POP     BC
   \   025B  21D400            LD      HL,212
   \   025E  B5                OR      L
   \   025F  ED42              SBC     HL,BC
   \   0261  E26502            JP      PO,?0037
   \   0264  AC                XOR     H
   \   0265            ?0037:
   \   0265  F27002            JP      P,?0020
   \   0268            ?0019:
   \   0268  210800            LD      HL,8
   \   026B            ?0038:
   \   026B  220000            LD      (?0008),HL
   \   026E  180F              JR      ?0021
   \   0270            ?0020:
    255                      else cur_value = (value - 154) / 8;    //  zxs change
   \   0270  2166FF            LD      HL,65382
   \   0273  09                ADD     HL,BC
   \   0274  EB                EX      DE,HL
   \   0275  010800            LD      BC,8
   \   0278  CD0000            CALL    LWRD ?SS_DIV_L02
   \   027B  ED530000          LD      (?0008),DE
   \   027F            ?0021:
   \   027F            ?0018:
   \   027F            ?0015:
    256              }
    257                if(!fmflag)
   \   027F            ?0022:
    258                 main_ResShowPic(BATTERY1+cur_value, 153,4);
    259                else
   \   027F            ?0023:
    260                 main_ResShowPic(BATTERY1+cur_value, 153,4);
   \   027F  0E04              LD      C,4
   \   0281  C5                PUSH    BC
   \   0282  0E99              LD      C,153
   \   0284  210D00            LD      HL,13
   \   0287  ED5B0000          LD      DE,(?0008)
   \   028B  19                ADD     HL,DE
   \   028C  EB                EX      DE,HL
   \   028D  3E00              LD      A,BYTE3 main_ResShowPic
   \   028F  21C700            LD      HL,LWRD main_ResShowPic
   \   0292  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0295  F1                POP     AF
   \   0296            ?0024:
    261          }
   \   0296  E1                POP     HL
   \   0297  DDE1              POP     IX
   \   0299  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   029C            ui_show_lock:
    262          
    263          char ui_show_lock(char islock)
    264          {
   \   029C  C5                PUSH    BC
   \   029D  D5                PUSH    DE
    265              if(islock == 1)
   \   029E  43                LD      B,E
   \   029F  05                DEC     B
   \   02A0  2007              JR      NZ,?0026
   \   02A2            ?0025:
    266                                  main_ResShowPic(HOLD,0,0);
   \   02A2  48                LD      C,B
   \   02A3  C5                PUSH    BC
   \   02A4  119C00            LD      DE,156
   \   02A7  1806              JR      ?0043
    267                          else
   \   02A9            ?0026:
    268                                  main_ResShowPic(UNHOLD,0,0);
   \   02A9  0E00              LD      C,0
   \   02AB  C5                PUSH    BC
   \   02AC  111501            LD      DE,277
   \   02AF            ?0043:
   \   02AF  3E00              LD      A,BYTE3 main_ResShowPic
   \   02B1  21C700            LD      HL,LWRD main_ResShowPic
   \   02B4  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   02B7  F1                POP     AF
   \   02B8            ?0027:
    269                          //wait 1.5s
    270                          return ap_sleep(3);
   \   02B8  110300            LD      DE,3
   \   02BB  3E00              LD      A,BYTE3 ap_sleep
   \   02BD  210000            LD      HL,LWRD ap_sleep
   \   02C0  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    271          }
   \   02C3  F1                POP     AF
   \   02C4  C1                POP     BC
   \   02C5  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0000                    RSEG    IDATA0
   \   0000            ?0008:
   \   0002                    DEFS    2
   \   0000                    RSEG    CDATA0
   \   0000  0000              DEFW    0
   \   0002                    END

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

⌨️ 快捷键说明

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