draw_logo.lst
来自「MP3 整个 SDK」· LST 代码 · 共 433 行 · 第 1/2 页
LST
433 行
##############################################################################
# #
# IAR Z80/64180 C-Compiler V4.04B/WIN #
# Front End V4.20N 28/Dec/106 17:16:19 #
# Global Optimizer V1.05D #
# #
# Target option = Z80 #
# Memory model = banked #
# Source file = d:\case_i_d90f\ap\ap_main\draw_logo.c #
# List file = d:\case_i_d90f\ap\ap_main\list\draw_logo.lst #
# Object file = d:\case_i_d90f\ap\ap_main\release\obj\draw_logo.r01 #
# Command line = -v0 -mb -OD:\case_i_d90f\ap\ap_main\release\Obj\ #
# -e -K -w -gA -s9 -RCODE -r0 -DNAPDEBUG #
# -LD:\case_i_d90f\ap\ap_main\List\ -q -t8 -X #
# -Id:\sdk_i_90f\inc\ -Id:\case_i_d90f\inc\ #
# d:\case_i_d90f\AP\AP_MAIN\draw_logo.c #
# #
# (c) Copyright IAR Systems 1996 #
##############################################################################
\ 0000 NAME draw_logo(17)
\ 0000 RSEG CODE(0)
\ 0000 RSEG CSTR(0)
\ 0000 EXTERN ResClose
\ 0000 EXTERN ResOpen
\ 0000 EXTERN ResShowPic
\ 0000 EXTERN ap_get_message
\ 0000 EXTERN ap_sleep
\ 0000 PUBLIC convert_bmp
\ 0000 PUBLIC draw_logo
\ 0000 PUBLIC draw_staff
\ 0000 PUBLIC draw_system_logo
\ 0000 PUBLIC draw_user_logo
\ 0000 EXTERN res_fp
\ 0000 EXTERN sKY_OpenBacklight
\ 0000 EXTERN ?CLZ80B_4_04_L00
\ 0000 EXTERN ?SS_DIV_L02
\ 0000 EXTERN ?BANK_CALL_DIRECT_L08
\ 0000 EXTERN ?BANK_FAST_LEAVE_L08
\ 0000 RSEG CODE
\ 0000 convert_bmp:
1 /*
2 *******************************************************************************
3 * ACTOS AP
4 * main ap of sdk 3.0
5 *
6 * (c) Copyright, Actions Co,Ld.
7 * All Right Reserved
8 *
9 * $Id: draw_logo.c,v 1.1.1.1 2006/05/22 03:24:01 selina Exp $
10 *******************************************************************************
11 */
12 #include "actos.h"
13 #include "ap_common.h"
14
15 extern comval_t g_comval; //use at:"sKY_SetBLightColor(g_comval.BLightColor);"add by ccm
16
17 //char logo_buf[512];
18 //char file_buf[512];
19
20 // 使用 ui30.res
21 //const WORD system_logo[] =
22 //{
23 // BOOT1, BOOT2, BOOT3, BOOT4, BOOT5, BOOT6, BOOT7,
24 // BOOT8, BOOT9, BOOTA, BOOTB, BOOTC, BOOTD, BOOTE,
25 // BOOTF, BOOTG, BOOTH, BOOTI
26 //};
27
28
29 /*
30 ********************************************************************************
31 * Description : todo
32 *
33 * Arguments :
34 *
35 * Returns :
36 *
37 * Notes :
38 convert file_buf -> logo_buf
39 *
40 ********************************************************************************
41 */
42 void convert_bmp(int width)
43 {
\ 0000 D5 PUSH DE
44 }
\ 0001 E1 POP HL
\ 0002 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 0005 draw_user_logo:
45 /*
46 ********************************************************************************
47 * Description : todo
48 *
49 * Arguments :
50 *
51 * Returns :
52 *
53 * Notes :
54 read logo.bmp
55 width = 128
56 height = n*32
57 *
58 ********************************************************************************
59 */
60 BOOL draw_user_logo(BOOL wait_key_up)
61 {
\ 0005 C5 PUSH BC
\ 0006 FDE5 PUSH IY
\ 0008 DDE5 PUSH IX
\ 000A D5 PUSH DE
62 int i;
63 int height;
64
65 //check if user file exist
66 return FALSE;
\ 000B 2E00 LD L,0
67
68 //read bmp header
69
70 //parse format
71
72 for(i=0; i<height/32; i++)
\ 000D ?0003:
\ 000D ?0004:
73 {
74 //read bit stream
75
76 //convert it
77
78 //show it
79 }
80 }
\ 000D ?0002:
\ 000D ?0006:
\ 000D ?0042:
\ 000D F1 POP AF
\ 000E DDE1 POP IX
\ 0010 FDE1 POP IY
\ 0012 C1 POP BC
\ 0013 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 0016 draw_system_logo:
81 /*
82 ********************************************************************************
83 * Description : 显示系统开机动画
84 *
85 * Arguments : wait_key_up, 是否要等待按键
86 *
87 * Returns : TRUE, 正常
88 FALSE, 资源文件格式错误
89 *
90 * Notes :
91 *
92 ********************************************************************************
93 */
94 BOOL draw_system_logo(BOOL wait_key_up)
95 {
\ 0016 C5 PUSH BC
\ 0017 FDE5 PUSH IY
\ 0019 DDE5 PUSH IX
\ 001B D5 PUSH DE
\ 001C F5 PUSH AF
\ 001D F5 PUSH AF
96 int i;
97 int result;
98 //int logo_num = sizeof(system_logo)/sizeof(system_logo[0]);
99 WORD timer;
100 BOOL need_wait_keyup=wait_key_up;
101 char key;
102
103 //use logo.res
104 ResClose(res_fp);
\ 001E ED5B0000 LD DE,(res_fp)
\ 0022 3E00 LD A,BYTE3 ResClose
\ 0024 210000 LD HL,LWRD ResClose
\ 0027 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
105 res_fp = ResOpen("logo.res");
\ 002A 110000 LD DE,?0007
\ 002D 3E00 LD A,BYTE3 ResOpen
\ 002F 210000 LD HL,LWRD ResOpen
\ 0032 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0035 220000 LD (res_fp),HL
106 ASSERT( res_fp != NULL);
107
108 for(i=1; i<=9; i++)
\ 0038 210100 LD HL,1
\ 003B 39 ADD HL,SP
\ 003C E5 PUSH HL
\ 003D 23 INC HL
\ 003E 23 INC HL
\ 003F 23 INC HL
\ 0040 46 LD B,(HL)
\ 0041 E1 POP HL
\ 0042 70 LD (HL),B
\ 0043 FD210100 LD IY,1
\ 0047 ?0009:
\ 0047 FDE5 PUSH IY
\ 0049 C1 POP BC
\ 004A 210900 LD HL,9
\ 004D F680 OR 128
\ 004F ED42 SBC HL,BC
\ 0051 E25500 JP PO,?0041
\ 0054 AC XOR H
\ 0055 ?0041:
\ 0055 FA9B00 JP M,?0008
\ 0058 ?0010:
109 {
110 //result = ResShowPic(system_logo[i],19,24);
111 result = ResShowPic(i,0,0);
\ 0058 0E00 LD C,0
\ 005A C5 PUSH BC
\ 005B FDE5 PUSH IY
\ 005D D1 POP DE
\ 005E 3E00 LD A,BYTE3 ResShowPic
\ 0060 210000 LD HL,LWRD ResShowPic
\ 0063 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0066 F1 POP AF
\ 0067 4D LD C,L
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?