📄 sub_display.lst
字号:
##############################################################################
# #
# IAR Z80/64180 C-Compiler V4.04B/WIN #
# Front End V4.20N 25/Dec/106 16:59:04 #
# Global Optimizer V1.05D #
# #
# Target option = Z80 #
# Memory model = banked #
# Source file = d:\case_i_d90f\ap\ap_amv\sub_display.c #
# List file = d:\case_i_d90f\ap\ap_amv\list\sub_display.lst #
# Object file = d:\case_i_d90f\ap\ap_amv\obj\sub_display.r01 #
# ASM file = d:\case_i_d90f\ap\ap_amv\list\sub_display.s01 #
# Command line = -v0 -mb -OD:\case_i_d90f\ap\ap_amv\Obj\ -e -K -w #
# -gA -s9 -RCODE -r0 -DNAPDEBUG -DAMV_JPG_TXT #
# -LD:\case_i_d90f\ap\ap_amv\List\ -q -t8 #
# -AD:\case_i_d90f\ap\ap_amv\List\ #
# -ND:\case_i_d90f\ap\ap_amv\List\ -X #
# -Id:\sdk_i_90f\inc\ -Id:\case_i_d90f\inc\ #
# d:\case_i_d90f\ap\ap_amv\sub_display.c #
# #
# (c) Copyright IAR Systems 1996 #
##############################################################################
\ 0000 NAME sub_display(17)
\ 0000 RSEG AP_SUB_DIS(0)
\ 0000 RSEG APC_SUB_DIS(0)
\ 0000 PUBLIC DisplayErrMsg
\ 0000 EXTERN GetBattery
\ 0000 PUBLIC LOOP_PIC
\ 0000 EXTERN PutS
\ 0000 PUBLIC RefreshMainScreen
\ 0000 EXTERN ResShowPic
\ 0000 EXTERN SetBackgdColor
\ 0000 EXTERN SetPAVolume
\ 0000 EXTERN SetPenColor
\ 0000 EXTERN SetTextOutMode
\ 0000 EXTERN SetTextPos
\ 0000 EXTERN ShowNowTime
\ 0000 EXTERN Show_Bitrate
\ 0000 PUBLIC Show_MusicType
\ 0000 EXTERN ap_get_message
\ 0000 EXTERN ap_sleep
\ 0000 EXTERN dir_name
\ 0000 EXTERN g_BatteryType
\ 0000 EXTERN g_TagInfoBuf
\ 0000 EXTERN g_TagInfoBuf1
\ 0000 EXTERN g_amv_vars
\ 0000 EXTERN g_langid
\ 0000 EXTERN g_musicamount
\ 0000 EXTERN g_musicsequence
\ 0000 EXTERN itoa_2
\ 0000 EXTERN itoa_3
\ 0000 EXTERN main_ResShowPic
\ 0000 EXTERN need_draw
\ 0000 PUBLIC num_id
\ 0000 PUBLIC show_volume
\ 0000 EXTERN slider
\ 0000 PUBLIC songnum_id
\ 0000 EXTERN temp_buffer
\ 0000 EXTERN ui_auto_update
\ 0000 EXTERN ui_show_a
\ 0000 EXTERN ui_show_batt
\ 0000 PUBLIC ui_show_h
\ 0000 EXTERN ui_show_msg
\ 0000 PUBLIC ui_show_vol
\ 0000 EXTERN ui_slider
\ 0000 PUBLIC vol_callback
\ 0000 EXTERN ?CLZ80B_4_04_L00
\ 0000 EXTERN ?BANK_CALL_DIRECT_L08
\ 0000 EXTERN ?BANK_FAST_LEAVE_L08
\ 0000 RSEG AP_SUB_DIS
\ 0000 RefreshMainScreen:
1 /*
2 *******************************************************************************
3 * ACTOS AP
4 * This program demostrates how to build an AP
5 *
6 * (c) Copyright Actions Co,Ld.
7 *
8 * $Id: sub_display.c,v 1.1.1.1 2006/05/22 03:24:02 selina Exp $
9 *******************************************************************************
10 */
11 #include "ap_amv.h"
12
13 #pragma codeseg(AP_SUB_DIS)
14
15 #pragma memory=constseg(APC_SUB_DIS)
16 const WORD LOOP_PIC[7] =
17 {
18 MLOOP1, MLOOP2, MLOOP3, MLOOP4, MLOOP5, MLOOP6, MLOOP7
19 };
20 const WORD num_id[10] = {TVNUM0,TVNUM1,TVNUM2,TVNUM3,TVNUM4,TVNUM5,TVNUM6,TVNUM7,TVNUM8,TVNUM9}; //系统时间&音量显示
21 const WORD songnum_id[10]= {MNUM0,MNUM1,MNUM2,MNUM3,MNUM4,MNUM5,
22 MNUM6,MNUM7,MNUM8,MNUM9}; //音乐曲目
23 #pragma memory=default
24
25 /*
26 ********************************************************************************
27 * void RefreshMainScreen( void )
28 *
29 * Description : 主显示的刷新函数,只有有需要时,才调用此函数
30 *
31 * Arguments : void
32 *
33 * Returns : void
34 *
35 * Notes :
36 *
37 ********************************************************************************
38 */
39 void ui_show_vol(BYTE volume);
40 void ui_show_h(const char *string);
41 void RefreshMainScreen( void )
42 {
\ 0000 C5 PUSH BC
\ 0001 D5 PUSH DE
43 int result;
44 output8(0x4e,input8(0x4e)|0x08);
\ 0002 DB4E IN A,(78)
\ 0004 CBDF SET 3,A
\ 0006 D34E OUT (78),A
45
46
47 ResShowPic(BACKMOV, POS_BG, POSY_BG);
\ 0008 0E00 LD C,0
\ 000A C5 PUSH BC
\ 000B 111100 LD DE,17
\ 000E 3E00 LD A,BYTE3 ResShowPic
\ 0010 210000 LD HL,LWRD ResShowPic
\ 0013 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0016 F1 POP AF
48 SetTextPos(POS_DIRNAME, POSY_DIRNAME);
\ 0017 0E8C LD C,140
\ 0019 1E23 LD E,35
\ 001B CD0000 CALL LWRD SetTextPos
49 //main_ResShowPic(DIRBCK,36,78);
50 main_ResShowPic(ADIRBCK,25,140);
\ 001E 0E8C LD C,140
\ 0020 C5 PUSH BC
\ 0021 0E19 LD C,25
\ 0023 110C00 LD DE,12
\ 0026 CD3B01 CALL LWRD ?0013
\ 0029 F1 POP AF
51 SetTextOutMode(1); //设字体透明
\ 002A 1E01 LD E,1
\ 002C CD0000 CALL LWRD SetTextOutMode
52 SetPenColor(Color_WHITE_def);
\ 002F 010000 LD BC,0
\ 0032 11FFFF LD DE,65535
\ 0035 CD0000 CALL LWRD SetPenColor
53 if(g_amv_vars.location.disk=='H')
\ 0038 3A0500 LD A,(g_amv_vars+5)
\ 003B FE48 CP 72
\ 003D 200C JR NZ,?0003
\ 003F ?0002:
54 main_ResShowPic(CARDDISK,194,140);
\ 003F 0E8C LD C,140
\ 0041 C5 PUSH BC
\ 0042 0EC2 LD C,194
\ 0044 111E00 LD DE,30
\ 0047 CD3B01 CALL LWRD ?0013
\ 004A F1 POP AF
\ 004B ?0003:
55 PutS(dir_name, -1);
\ 004B 0EFF LD C,255
\ 004D 110000 LD DE,dir_name
\ 0050 CD0000 CALL LWRD PutS
56 SetTextOutMode(0);
\ 0053 1E00 LD E,0
\ 0055 CD0000 CALL LWRD SetTextOutMode
57
58 ui_show_vol(g_amv_vars.volume);
\ 0058 ED5B0200 LD DE,(g_amv_vars+2)
\ 005C 3E00 LD A,BYTE3 ui_show_vol
\ 005E 218401 LD HL,LWRD ui_show_vol
\ 0061 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
59
60
61 //SetBackgdColor(Color_MUSIC_def);
62
63 Show_MusicType();
\ 0064 3E00 LD A,BYTE3 Show_MusicType
\ 0066 214301 LD HL,LWRD Show_MusicType
\ 0069 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
64 Show_Bitrate();
\ 006C 3E00 LD A,BYTE3 Show_Bitrate
\ 006E 210000 LD HL,LWRD Show_Bitrate
\ 0071 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
65
66 ResShowPic(LOOP_PIC[g_amv_vars.repeat_mode], POS_PALYMODE,POSY_PALYMODE);
\ 0074 0E00 LD C,0
\ 0076 C5 PUSH BC
\ 0077 0E80 LD C,128
\ 0079 2A0300 LD HL,(g_amv_vars+3)
\ 007C 2600 LD H,0
\ 007E 29 ADD HL,HL
\ 007F 110000 LD DE,LOOP_PIC
\ 0082 19 ADD HL,DE
\ 0083 5E LD E,(HL)
\ 0084 23 INC HL
\ 0085 56 LD D,(HL)
\ 0086 3E00 LD A,BYTE3 ResShowPic
\ 0088 210000 LD HL,LWRD ResShowPic
\ 008B CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 008E F1 POP AF
67
68 //show file sequence and total file
69 itoa_3(g_musicsequence, & temp_buffer[0]);
\ 008F 010000 LD BC,temp_buffer
\ 0092 ED5B0000 LD DE,(g_musicsequence)
\ 0096 1600 LD D,0
\ 0098 3E00 LD A,BYTE3 itoa_3
\ 009A 210000 LD HL,LWRD itoa_3
\ 009D CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
70
71 itoa_3(g_musicamount, & temp_buffer[3]);
\ 00A0 010300 LD BC,temp_buffer+3
\ 00A3 ED5B0000 LD DE,(g_musicamount)
\ 00A7 1600 LD D,0
\ 00A9 3E00 LD A,BYTE3 itoa_3
\ 00AB 210000 LD HL,LWRD itoa_3
\ 00AE CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
72 ui_show_h(temp_buffer);
\ 00B1 110000 LD DE,temp_buffer
\ 00B4 3E00 LD A,BYTE3 ui_show_h
\ 00B6 216002 LD HL,LWRD ui_show_h
\ 00B9 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
73
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -