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

📄 ui_main_for_rec.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 3 页
字号:
    117          
    118          //只有这个界面使用,为了提高效率而放在这里
    119          int main_ResShowPic(WORD id, uchar x, uchar y)
    120          {
   \   00C7  C5                PUSH    BC
   \   00C8  D5                PUSH    DE
   \   00C9  F5                PUSH    AF
   \   00CA  F5                PUSH    AF
    121              WORD buf[2];    //buffer for sd read
    122          
    123              ASSERT(id <= UIID_MAX);
    124          
    125              //读entry
    126              SD_FSeek(res_fp, SEEK_SET, (long)id * sizeof(res_entry_t));
   \   00CB  6B                LD      L,E
   \   00CC  62                LD      H,D
   \   00CD  010000            LD      BC,0
   \   00D0  3E04              LD      A,4
   \   00D2  CD0000            CALL    LWRD ?L_LSH_L03
   \   00D5  C5                PUSH    BC
   \   00D6  E5                PUSH    HL
   \   00D7  0E00              LD      C,0
   \   00D9  ED5B0000          LD      DE,(res_fp)
   \   00DD  CD0000            CALL    LWRD SD_FSeek
   \   00E0  E1                POP     HL
   \   00E1  E1                POP     HL
    127              SD_FRead(res_fp, &res_entry, sizeof(res_entry_t));
   \   00E2  211000            LD      HL,16
   \   00E5  E5                PUSH    HL
   \   00E6  010000            LD      BC,res_entry
   \   00E9  ED5B0000          LD      DE,(res_fp)
   \   00ED  CD0000            CALL    LWRD SD_FRead
   \   00F0  F1                POP     AF
    128              if(res_entry.type != RES_TYPE_PIC) return 0;
   \   00F1  3A0600            LD      A,(res_entry+6)
   \   00F4  3D                DEC     A
   \   00F5  2805              JR      Z,?0003
   \   00F7            ?0002:
   \   00F7  210000            LD      HL,0
    129              ASSERT(res_entry.length <= 512);
   \   00FA  1869              JR      ?0006
   \   00FC            ?0003:
    130          
    131              //读数据
    132              SD_FSeek(res_fp, SEEK_SET, res_entry.offset);
   \   00FC  2A0200            LD      HL,(res_entry+2)
   \   00FF  E5                PUSH    HL
   \   0100  2A0000            LD      HL,(res_entry)
   \   0103  E5                PUSH    HL
   \   0104  4F                LD      C,A
   \   0105  ED5B0000          LD      DE,(res_fp)
   \   0109  CD0000            CALL    LWRD SD_FSeek
   \   010C  E1                POP     HL
   \   010D  E1                POP     HL
    133               
    134              SD_FRead(res_fp, buf, sizeof(buf));
   \   010E  210400            LD      HL,4
   \   0111  E5                PUSH    HL
   \   0112  2B                DEC     HL
   \   0113  2B                DEC     HL
   \   0114  39                ADD     HL,SP
   \   0115  4D                LD      C,L
   \   0116  44                LD      B,H
   \   0117  ED5B0000          LD      DE,(res_fp)
   \   011B  CD0000            CALL    LWRD SD_FRead
   \   011E  F1                POP     AF
    135               
    136              res_region.width = (char)buf[0];
   \   011F  210000            LD      HL,0
   \   0122  39                ADD     HL,SP
   \   0123  7E                LD      A,(HL)
   \   0124  320200            LD      (res_region+2),A
    137              res_region.height = (char)buf[1];
   \   0127  23                INC     HL
   \   0128  23                INC     HL
   \   0129  7E                LD      A,(HL)
   \   012A  320300            LD      (res_region+3),A
    138          
    139              //显示
    140              res_region.x = x;
   \   012D  210600            LD      HL,6
   \   0130  39                ADD     HL,SP
   \   0131  7E                LD      A,(HL)
   \   0132  320000            LD      (res_region),A
    141              res_region.y = y;
   \   0135  210C00            LD      HL,12
   \   0138  39                ADD     HL,SP
   \   0139  7E                LD      A,(HL)
   \   013A  320100            LD      (res_region+1),A
    142              PutSDImage(&res_region, res_fp->rwpointer);
   \   013D  211400            LD      HL,20
   \   0140  ED4B0000          LD      BC,(res_fp)
   \   0144  09                ADD     HL,BC
   \   0145  4E                LD      C,(HL)
   \   0146  23                INC     HL
   \   0147  46                LD      B,(HL)
   \   0148  23                INC     HL
   \   0149  5E                LD      E,(HL)
   \   014A  23                INC     HL
   \   014B  56                LD      D,(HL)
   \   014C  D5                PUSH    DE
   \   014D  C5                PUSH    BC
   \   014E  110000            LD      DE,res_region
   \   0151  CD0000            CALL    LWRD PutSDImage
   \   0154  E1                POP     HL
   \   0155  E1                POP     HL
    143              if(ui_auto_update) UpdateScreen(&res_region);
   \   0156  3A0000            LD      A,(ui_auto_update)
   \   0159  B7                OR      A
   \   015A  2806              JR      Z,?0005
   \   015C            ?0004:
   \   015C  110000            LD      DE,res_region
   \   015F  CD0000            CALL    LWRD UpdateScreen
   \   0162            ?0005:
    144              return 1;
   \   0162  210100            LD      HL,1
    145          }
   \   0165            ?0006:
   \   0165  F1                POP     AF
   \   0166  F1                POP     AF
   \   0167  F1                POP     AF
   \   0168  F1                POP     AF
   \   0169  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   016C            ui_show_a:
    146          
    147          
    148          
    149          void ui_show_a(WORD id)                  //音乐类型
    150          {
   \   016C  C5                PUSH    BC
   \   016D  D5                PUSH    DE
    151              main_ResShowPic(id, 9, 85);
   \   016E  0E55              LD      C,85
   \   0170  C5                PUSH    BC
   \   0171  0E09              LD      C,9
   \   0173  3E00              LD      A,BYTE3 main_ResShowPic
   \   0175  21C700            LD      HL,LWRD main_ResShowPic
   \   0178  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   017B  F1                POP     AF
    152          }
   \   017C  E1                POP     HL
   \   017D  C1                POP     BC
   \   017E  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   0181            ui_show_d:
    153          
    154          void ui_show_d(const char *string, char mode)   //显示当前时间
    155          {   /*char id;
   \   0181  C5                PUSH    BC
   \   0182  D5                PUSH    DE
   \   0183  F5                PUSH    AF
   \   0184  F5                PUSH    AF
   \   0185  F5                PUSH    AF
   \   0186  F5                PUSH    AF
    156              id=*string-0x30;
    157              main_ResShowPic(RPRGNUM0+id,139,107);
    158              string++;
    159              id= *string-0x30;
    160              main_ResShowPic(RPRGNUM0+id,159,107);
    161              string++;
    162              id= *string-0x30;
    163              main_ResShowPic(RPRGNUM0+id,171,107);
    164              string++;
    165              id= *string-0x30;
    166              main_ResShowPic(RPRGNUM0+id,191,107);
    167              string++;
    168              id= *string-0x30;
    169              main_ResShowPic(RPRGNUM0+id,203,107);*/
    170              DC  oldDC_sav;
    171              GetDCStatus(&oldDC_sav);
   \   0187  210000            LD      HL,0
   \   018A  39                ADD     HL,SP
   \   018B  CDD601            CALL    LWRD ?0051
    172              SetPenColor(Color_BLACK_def);
    173              SetBackgdColor(Color_MENU_def);
    174              
    175              SetAsciiFont(FONT_TYPE_SMALL);
    176              if(mode)
   \   018E  210A00            LD      HL,10
   \   0191  39                ADD     HL,SP
   \   0192  AF                XOR     A
   \   0193  B6                OR      (HL)
   \   0194  0E7C              LD      C,124
   \   0196  2804              JR      Z,?0008
   \   0198            ?0007:
    177                  SetTextPos(122, 124);
   \   0198  1E7A              LD      E,122
   \   019A  1802              JR      ?0031
    178              else
   \   019C            ?0008:
    179                  SetTextPos(6, 124);
   \   019C  1E06              LD      E,6
   \   019E            ?0031:
   \   019E  CD0000            CALL    LWRD SetTextPos
   \   01A1            ?0009:
    180              PutS(string, -1);
   \   01A1  0EFF              LD      C,255
   \   01A3  210800            LD      HL,8
   \   01A6  39                ADD     HL,SP
   \   01A7  5E                LD      E,(HL)
   \   01A8  23                INC     HL
   \   01A9  56                LD      D,(HL)
   \   01AA  CD0000            CALL    LWRD PutS
    181              SetAsciiFont(FONT_TYPE_DEFAULT);
   \   01AD  1E04              LD      E,4
   \   01AF  CD0000            CALL    LWRD SetAsciiFont
    182              
    183              SetPenColor(oldDC_sav.PenColor);
   \   01B2  210000            LD      HL,0
   \   01B5  39                ADD     HL,SP
   \   01B6  5E                LD      E,(HL)
   \   01B7  23                INC     HL
   \   01B8  56                LD      D,(HL)
   \   01B9  23                INC     HL
   \   01BA  4E                LD      C,(HL)
   \   01BB  23                INC     HL
   \   01BC  46                LD      B,(HL)
   \   01BD  CD0000            CALL    LWRD SetPenColor
    184              SetBackgdColor(oldDC_sav.BackgdColor);
   \   01C0  210400            LD      HL,4
   \   01C3  39                ADD     HL,SP
   \   01C4  5E                LD      E,(HL)
   \   01C5  23                INC     HL
   \   01C6  56                LD      D,(HL)
   \   01C7  23                INC     HL
   \   01C8  4E                LD      C,(HL)
   \   01C9  23                INC     HL
   \   01CA  46                LD      B,(HL)
   \   01CB  CD0000            CALL    LWRD SetBackgdColor
    185          }
   \   01CE  210C00            LD      HL,12
   \   01D1  39                ADD     HL,SP
   \   01D2  F9                LD      SP,HL
   \   01D3  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
   \   01D6            ?0051:
   \   01D6  EB                EX      DE,HL
   \   01D7  CD0000            CALL    LWRD GetDCStatus
   \   01DA  010000            LD      BC,0
   \   01DD  59                LD      E,C
   \   01DE  50                LD      D,B
   \   01DF  CD0000            CALL    LWRD SetPenColor
   \   01E2  010000            LD      BC,0
   \   01E5  11FFFF            LD      DE,65535
   \   01E8  CD0000            CALL    LWRD SetBackgdColor
   \   01EB  1E00              LD      E,0
   \   01ED  CD0000            CALL    LWRD SetAsciiFont
   \   01F0  C9                RET
   \   01F1            ui_show_d2:
    186          
    187          void ui_show_d2(const char *string)   //显示当前时间
    188          {   
   \   01F1  C5                PUSH    BC
   \   01F2  D5                PUSH    DE
   \   01F3  F5                PUSH    AF
   \   01F4  F5                PUSH    AF
   \   01F5  F5                PUSH    AF
   \   01F6  F5                PUSH    AF
    189                    /*char id;
    190              id=*string-0x30;
    191              main_ResShowPic(TIMENUM0+id,157,92);
    192              string++;
    193              id= *string-0x30;
    194              main_ResShowPic(TIMENUM0+id,165,92);
    195              string++;
    196              id= *string-0x30;
    197              main_ResShowPic(TIMENUM0+id,179,92);
    198              string++;
    199              id= *string-0x30;
    200              main_ResShowPic(TIMENUM0+id,187,92);
    201              string++;
    202              id= *string-0x30;
    203              main_ResShowPic(TIMENUM0+id,200,92);
    204              string++;
    205              id= *string-0x30;
    206              main_ResShowPic(TIMENUM0+id,208,92);
    207              */
    208              DC  oldDC_sav;

⌨️ 快捷键说明

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