📄 ap_message.lst
字号:
##############################################################################
# #
# IAR Z80/64180 C-Compiler V4.04B/WIN #
# Front End V4.20N 25/Dec/106 17:00:29 #
# Global Optimizer V1.05D #
# #
# Target option = Z80 #
# Memory model = banked #
# Source file = d:\case_i_d90f\ap\common\ap_message.c #
# List file = d:\case_i_d90f\ap\ap_music\list\ap_message.lst #
# Object file = d:\case_i_d90f\ap\ap_music\obj\ap_message.r01 #
# ASM file = d:\case_i_d90f\ap\ap_music\list\ap_message.s01 #
# Command line = -v0 -mb -OD:\case_i_d90f\ap\ap_music\Obj\ -e -K -w #
# -gA -z9 -RCODE -r0 -DNAPDEBUG #
# -LD:\case_i_d90f\ap\ap_music\List\ -q -t8 #
# -AD:\case_i_d90f\ap\ap_music\List\ #
# -ND:\case_i_d90f\ap\ap_music\List\ -X #
# -Id:\sdk_i_90f\inc\ -Id:\case_i_d90f\inc\ #
# d:\case_i_d90f\AP\COMMON\ap_message.c #
# #
# (c) Copyright IAR Systems 1996 #
##############################################################################
\ 0000 NAME ap_message(17)
\ 0000 RSEG RCODE(0)
\ 0000 EXTERN GetSysMsg
\ 0000 PUBLIC ap_get_message
\ 0000 EXTERN ap_get_message_core
\ 0000 PUBLIC ap_handle_hotkey
\ 0000 EXTERN ap_handle_hotkey_core
\ 0000 EXTERN ?CLZ80B_4_04_L00
\ 0000 EXTERN ?BANK_CALL_DIRECT_L08
\ 0000 EXTERN ?ENT_PARM_DIRECT_L09
\ 0000 EXTERN ?ENT_AUTO_DIRECT_L09
\ 0000 EXTERN ?LEAVE_DIRECT_L09
\ 0000 RSEG RCODE
\ 0000 ap_get_message:
1 /*
2 *******************************************************************************
3 * ACTOS AP
4 * ap common lib message file, realtime part
5 *
6 * (c) Copyright, Actions Co,Ld.
7 * All Right Reserved
8 *
9 * $Id: ap_message.c,v 1.1.1.1 2006/05/22 03:23:59 selina Exp $
10 *******************************************************************************
11 */
12 //#pragma codeseg(COM_MSG)
13
14 #include "ap_common.h"
15
16 char ap_get_message_core(char key);
17 char ap_handle_hotkey_core(char key);
18
19 /*
20 ********************************************************************************
21 * Description : 处理系统消息, 返回按键消息, 同时负责开/关背光
22 ap_get_message_core() 的入口
23 *
24 * Arguments :
25 *
26 * Returns : 返回ap能够识别的消息, 如果没有系统消息, 返回 AP_KEY_NULL
27 *
28 * Notes :
29 ********************************************************************************
30 */
31 non_banked char ap_get_message(void)
32 {
\ 0000 CD0000 CALL LWRD ?ENT_AUTO_DIRECT_L09
\ 0003 FEFF DEFW 65534
33 char key;
34
35
36 //获取按键,没有即返回
37 key = GetSysMsg();
\ 0005 CD0000 CALL LWRD GetSysMsg
38 if(key == Msg_KeyNull) return AP_KEY_NULL;
\ 0008 B7 OR A
\ 0009 280A JR Z,?0004
\ 000B ?0002:
\ 000B ?0003:
39 else return ap_get_message_core(key);
\ 000B 5F LD E,A
\ 000C 3E00 LD A,BYTE3 ap_get_message_core
\ 000E 210000 LD HL,LWRD ap_get_message_core
\ 0011 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0014 7D LD A,L
40
41 }
\ 0015 ?0004:
\ 0015 C30000 JP LWRD ?LEAVE_DIRECT_L09
\ 0018 ap_handle_hotkey:
42
43 /*
44 ********************************************************************************
45 * Description : 处理热键消息, 返回结果消息
46 ap_handle_hotkey_core() 的入口
47 *
48 * Arguments : key, 按键消息
49 *
50 * Returns : 如果有可识别的热键消息, 返回结果消息
51 如果没有可识别的热键消息, 返回0
52 *
53 * Notes :
54 *
55 ********************************************************************************
56 */
57 non_banked char ap_handle_hotkey(char key)
58 {
59 if(key == AP_KEY_NULL) return 0;
\ 0018 1C INC E
\ 0019 1D DEC E
\ 001A 2002 JR NZ,?0006
\ 001C ?0005:
\ 001C AF XOR A
\ 001D C9 RET
\ 001E ?0006:
60 else return ap_handle_hotkey_core(key);
\ 001E 3E00 LD A,BYTE3 ap_handle_hotkey_core
\ 0020 210000 LD HL,LWRD ap_handle_hotkey_core
\ 0023 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0026 7D LD A,L
61 }
\ 0027 ?0007:
\ 0027 C9 RET
62
\ 0028 END
Errors: none
Warnings: none
Code size: 40
Constant size: 0
Static variable size: Data(0) Iram(0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -