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

📄 ui_clockdrm.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   025E  39                ADD     HL,SP
   \   025F  5D                LD      E,L
   \   0260  54                LD      D,H
   \   0261  210000            LD      HL,?0051
   \   0264  010400            LD      BC,4
   \   0267  EDB0              LDIR
    180              time_t  time={12, 00, 00},time1;
   \   0269  211000            LD      HL,16
   \   026C  39                ADD     HL,SP
   \   026D  5D                LD      E,L
   \   026E  54                LD      D,H
   \   026F  210400            LD      HL,?0052
   \   0272  010300            LD      BC,3
   \   0275  EDB0              LDIR
    181              char    buf[11];    //date &  time
    182              char    key;
    183              char    set_what=0;    //0, 非设定状态, 1,year, 2,month...
   \   0277  DD36CE00          LD      (IX-50),0
    184              BOOL    show_what=TRUE;    //true, 显示, false, 不显示
   \   027B  DD36D301          LD      (IX-45),1
    185              char    days;        //本月的天数
    186              BOOL    result;
    187              BOOL    need_draw=TRUE;
   \   027F  DD36CF01          LD      (IX-49),1
    188              BOOL    need_draw_backgroud=TRUE;
   \   0283  DD36D201          LD      (IX-46),1
    189              BOOL    set_ok=FALSE;    //设置完成
   \   0287  DD36D100          LD      (IX-47),0
    190              BOOL    adjusting=FALSE;        //正在设置,不要闪烁
   \   028B  DD36E600          LD      (IX-26),0
    191              kval_t  kval;
    192          
    193              //read date & time
    194              result = TM_GetGWDate(&date, 0);
   \   028F  0E00              LD      C,0
   \   0291  210C00            LD      HL,12
   \   0294  39                ADD     HL,SP
   \   0295  5D                LD      E,L
   \   0296  54                LD      D,H
   \   0297  CD0000            CALL    LWRD TM_GetGWDate
   \   029A  DD77CD            LD      (IX-51),A
    195              //DUMP("get date ok!", 0);
    196          //    ASSERT(result);
    197              result = TM_GetGWTime(&time);
   \   029D  211000            LD      HL,16
   \   02A0  39                ADD     HL,SP
   \   02A1  5D                LD      E,L
   \   02A2  54                LD      D,H
   \   02A3  CD0000            CALL    LWRD TM_GetGWTime
   \   02A6  DD77CD            LD      (IX-51),A
    198              //DUMP("get time ok!", 0);
    199          //    ASSERT(result);
    200              result = TM_GetGWDate(&date1, 0);
   \   02A9  0E00              LD      C,0
   \   02AB  211800            LD      HL,24
   \   02AE  39                ADD     HL,SP
   \   02AF  5D                LD      E,L
   \   02B0  54                LD      D,H
   \   02B1  CD0000            CALL    LWRD TM_GetGWDate
   \   02B4  DD77CD            LD      (IX-51),A
    201              //DUMP("get date ok!", 0);
    202          //    ASSERT(result);
    203              result = TM_GetGWTime(&time1);  //修改前一刻的时间备份,用于修改后比较
   \   02B7  211400            LD      HL,20
   \   02BA  39                ADD     HL,SP
   \   02BB  5D                LD      E,L
   \   02BC  54                LD      D,H
   \   02BD  CD0000            CALL    LWRD TM_GetGWTime
   \   02C0  DD77CD            LD      (IX-51),A
    204          
    205              bIsSet=0;
   \   02C3  DD36D400          LD      (IX-44),0
    206              bTimeAdd=0xff;
   \   02C7  DD36D5FF          LD      (IX-43),255
    207              msgTimeout=0;
   \   02CB  DD36CC00          LD      (IX-52),0
   \   02CF            ?0054:
    208              while(1)
    209              {
    210                  output8(0x4e,input8(0x4e)|0x08);
   \   02CF  DB4E              IN      A,(78)
   \   02D1  CBDF              SET     3,A
   \   02D3  D34E              OUT     (78),A
    211                  //显示背景
    212                  if(need_draw_backgroud)
   \   02D5  AF                XOR     A
   \   02D6  DDB6D2            OR      (IX-46)
   \   02D9  284E              JR      Z,?0057
   \   02DB            ?0056:
    213                  {
    214                        //ResShowPic(FMHEAD,0,107);
    215                        ResShowPic(CLKBCK,0,0);   
   \   02DB  0E00              LD      C,0
   \   02DD  C5                PUSH    BC
   \   02DE  0E00              LD      C,0
   \   02E0  112400            LD      DE,36
   \   02E3  3E00              LD      A,BYTE3 ResShowPic
   \   02E5  210000            LD      HL,LWRD ResShowPic
   \   02E8  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   02EB  F1                POP     AF
    216                        SetPenColor(Color_BLACK_def); 
   \   02EC  010000            LD      BC,0
   \   02EF  110000            LD      DE,0
   \   02F2  CD0000            CALL    LWRD SetPenColor
    217                        SetTextOutMode(1);
   \   02F5  1E01              LD      E,1
   \   02F7  CD0000            CALL    LWRD SetTextOutMode
    218                        ResShowMultiString(DRMTIMEM,g_comval.langid,255,1);
   \   02FA  0E01              LD      C,1
   \   02FC  C5                PUSH    BC
   \   02FD  0EFF              LD      C,255
   \   02FF  C5                PUSH    BC
   \   0300  ED4B0C00          LD      BC,(g_comval+12)
   \   0304  115402            LD      DE,596
   \   0307  3E00              LD      A,BYTE3 ResShowMultiString
   \   0309  210000            LD      HL,LWRD ResShowMultiString
   \   030C  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   030F  F1                POP     AF
   \   0310  F1                POP     AF
    219                        SetTextOutMode(0);
   \   0311  1E00              LD      E,0
   \   0313  CD0000            CALL    LWRD SetTextOutMode
    220                        SetPenColor(Color_WHITE_def); 
   \   0316  010000            LD      BC,0
   \   0319  11FFFF            LD      DE,65535
   \   031C  CD0000            CALL    LWRD SetPenColor
    221                        output8(0x4e,input8(0x4e)|0x08);
   \   031F  DB4E              IN      A,(78)
   \   0321  CBDF              SET     3,A
   \   0323  D34E              OUT     (78),A
    222                        need_draw_backgroud = FALSE;
   \   0325  DD36D200          LD      (IX-46),0
   \   0329            ?0057:
    223                  }
    224          
    225                  //显示时钟
    226                  if(need_draw)
   \   0329  AF                XOR     A
   \   032A  DDB6CF            OR      (IX-49)
   \   032D  CA4D05            JP      Z,?0059
   \   0330            ?0058:
    227                  {
    228                      if(bTimeAdd==0xff)
   \   0330  DD46D5            LD      B,(IX-43)
   \   0333  04                INC     B
   \   0334  2055              JR      NZ,?0063
   \   0336            ?0060:
    229                      {
    230                          result = TM_GetGWDate(&date, 0);
   \   0336  0E00              LD      C,0
   \   0338  210C00            LD      HL,12
   \   033B  39                ADD     HL,SP
   \   033C  5D                LD      E,L
   \   033D  54                LD      D,H
   \   033E  CD0000            CALL    LWRD TM_GetGWDate
   \   0341  DD77CD            LD      (IX-51),A
    231          
    232                          result = TM_GetGWTime(&time);
   \   0344  211000            LD      HL,16
   \   0347  39                ADD     HL,SP
   \   0348  5D                LD      E,L
   \   0349  54                LD      D,H
   \   034A  CD0000            CALL    LWRD TM_GetGWTime
   \   034D  DD77CD            LD      (IX-51),A
    233          
    234                          result = TM_GetGWDate(&date1, 0);   //修改前一刻的时间备份,用于修改后比较
   \   0350  0E00              LD      C,0
   \   0352  211800            LD      HL,24
   \   0355  39                ADD     HL,SP
   \   0356  5D                LD      E,L
   \   0357  54                LD      D,H
   \   0358  CD0000            CALL    LWRD TM_GetGWDate
   \   035B  DD77CD            LD      (IX-51),A
    235          
    236                          result = TM_GetGWTime(&time1);      //修改前一刻的时间备份,用于修改后比较
   \   035E  211400            LD      HL,20
   \   0361  39                ADD     HL,SP
   \   0362  5D                LD      E,L
   \   0363  54                LD      D,H
   \   0364  CD0000            CALL    LWRD TM_GetGWTime
   \   0367  DD77CD            LD      (IX-51),A
    237          
    238                          //系统时间没作2098限制,ap层限制
    239                          if ( date.year >= 2099 )    //2000~2098
   \   036A  013308            LD      BC,2099
   \   036D  DD6ED6            LD      L,(IX-42)
   \   0370  DD66D7            LD      H,(IX-41)
   \   0373  A7                AND     A
   \   0374  ED42              SBC     HL,BC
   \   0376  3813              JR      C,?0063
   \   0378            ?0062:
    240                          {
    241                              date.year = 2000;
   \   0378  DD36D6D0          LD      (IX-42),208
   \   037C  DD36D707          LD      (IX-41),7
    242                              TM_SetGWDate(&date, 0);
   \   0380  0E00              LD      C,0
   \   0382  210C00            LD      HL,12
   \   0385  39                ADD     HL,SP
   \   0386  5D                LD      E,L
   \   0387  54                LD      D,H
   \   0388  CD0000            CALL    LWRD TM_SetGWDate
   \   038B            ?0063:
   \   038B            ?0061:
    243          
    244            
    245                          }
    246                      }
    247           
    248                      itoa_4(date.year, buf);
   \   038B  211E00            LD      HL,30
   \   038E  39                ADD     HL,SP
   \   038F  4D                LD      C,L
   \   0390  44                LD      B,H
   \   0391  DD5ED6            LD      E,(IX-42)
   \   0394  DD56D7            LD      D,(IX-41)
   \   0397  3E00              LD      A,BYTE3 itoa_4
   \   0399  210000            LD      HL,LWRD itoa_4
   \   039C  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    249                      SetTextPos(23,92);
   \   039F  0E5C              LD      C,92
   \   03A1  1E17              LD      E,23
   \   03A3  CD0000            CALL    LWRD SetTextPos
    250                      if(set_what == 1)
   \   03A6  DD46CE            LD      B,(IX-50)
   \   03A9  05                DEC     B
   \   03AA  2016              JR      NZ,?0065
   \   03AC            ?0064:
    251                      {
    252                             SetBackgdColor(Color_BLACK_def);
   \   03AC  010000            LD      BC,0
   \   03AF  110000            LD      DE,0
   \   03B2  CD0000            CALL    LWRD SetBackgdColor
    253                             PutS(buf, -1);
   \   03B5  0EFF              LD      C,255
   \   03B7  211E00            LD      HL,30
   \   03BA  39                ADD     HL,SP
   \   03BB  5D                LD      E,L
   \   03BC  54                LD      D,H
   \   03BD  CD0000            CALL    LWRD PutS
    254                      }
    255                      else 
   \   03C0  1814              JR      ?0066
   \   03C2            ?0065:
    256                      {
    257                          SetBackgdColor(0x930); 
   \   03C2  010000            LD      BC,0
   \   03C5  113009            LD      DE,2352
   \   03C8  CD0000            CALL    LWRD SetBackgdColor
    258                          PutS(buf, -1);
   \   03CB  0EFF              LD      C,255
   \   03CD  211E00            LD      HL,30
   \   03D0  39                ADD     HL,SP
   \   03D1  5D                LD      E,L
   \   03D2  54                LD      D,H
   \   03D3  CD0000            CALL    LWRD PutS
   \   03D6            ?0066:
    259                      }
    260          
    261                      itoa_2(date.month, buf);
   \   03D6  211E00            LD      HL,30
   \   03D9  39                ADD     HL,SP
   \   03DA  4D                LD      C,L
   \   03DB  44                LD      B,H
   \   03DC  DD5ED8            LD      E,(IX-40)
   \   03DF  3E00              LD      A,BYTE3 itoa_2
   \   03E1  210000            LD      HL,LWRD itoa_2
   \   03E4  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    262                      SetTextPos(88,92);
   \   03E7  0E5C              LD      C,92
   \   03E9  1E58              LD      E,88
   \   03EB  CD0000            CALL    LWRD SetTextPos
    263                      if(set_what == 2)
   \   03EE  DD46CE            LD      B,(IX-50)
   \   03F1  05                DEC     B
   \   03F2  05                DEC     B
   \   03F3  2016              JR      NZ,?0068
   \   03F5            ?0067:
    264                      {
    265                             SetBackgdColor(Color_BLACK_def);
   \   03F5  010000            LD      BC,0
   \   03F8  110000            LD      DE,0
   \   03FB  CD0000            CALL    LWRD SetBackgdColor
    266                             PutS(buf, -1);
   \   03FE  0EFF              LD      C,255
   \   0400  211E00            LD      HL,30
   \   0403  39                ADD     HL,SP
   \   0404  5D                LD      E,L
   \   0405  54                LD      D,H
   \   0406  CD0000            CALL    LWRD PutS

⌨️ 快捷键说明

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