📄 ui_stop.lst
字号:
##############################################################################
# #
# IAR Z80/64180 C-Compiler V4.04B/WIN #
# Front End V4.20N 27/Sep/107 17:31:21 #
# Global Optimizer V1.05D #
# #
# Target option = Z80 #
# Memory model = banked #
# Source file = d:\case_i_d913f\ap\ap_browser\ui_stop.c #
# List file = d:\case_i_d913f\ap\ap_browser\list\ui_stop.lst #
# Object file = d:\case_i_d913f\ap\ap_browser\obj\ui_stop.r01 #
# ASM file = d:\case_i_d913f\ap\ap_browser\list\ui_stop.s01 #
# Command line = -v0 -mb -OD:\case_i_d913f\ap\ap_browser\Obj\ -e -K #
# -w -gA -s9 -RCODE -r0 -DNAPDEBUG -DAMV_JPG_TXT #
# -LD:\case_i_d913f\ap\ap_browser\List\ -q -t8 #
# -AD:\case_i_d913f\ap\ap_browser\List\ #
# -ND:\case_i_d913f\ap\ap_browser\List\ -X #
# -Id:\sdk_i_913f\inc\ -Id:\case_i_d913f\inc\ #
# d:\case_i_d913f\ap\ap_browser\ui_stop.c #
# #
# (c) Copyright IAR Systems 1996 #
##############################################################################
\ 0000 NAME ui_stop(17)
\ 0000 RSEG AP_UI_STP(0)
\ 0000 RSEG CONST(0)
\ 0000 RSEG UDATA0(0)
\ 0000 EXTERN DRV_DetectUD
\ 0000 PUBLIC MenuStrID
\ 0000 PUBLIC MenuStrIDWithCard
\ 0000 EXTERN ap_get_message
\ 0000 EXTERN ap_message_init
\ 0000 EXTERN fselGetLocation
\ 0000 EXTERN fselGetNextFile
\ 0000 EXTERN fselInit
\ 0000 EXTERN fselSetLocation
\ 0000 EXTERN g_browser_vars
\ 0000 EXTERN g_comval
\ 0000 EXTERN g_langid
\ 0000 PUBLIC list
\ 0000 EXTERN ui_directory
\ 0000 EXTERN ui_err_msg
\ 0000 EXTERN ui_popup_list
\ 0000 EXTERN ui_show_msg
\ 0000 PUBLIC ui_stop
\ 0000 EXTERN ?CLZ80B_4_04_L00
\ 0000 EXTERN ?BANK_CALL_DIRECT_L08
\ 0000 EXTERN ?BANK_FAST_LEAVE_L08
\ 0000 RSEG AP_UI_STP
\ 0000 ui_stop:
1 /*
2 *******************************************************************************
3 * ACTOS AP
4 * This program demostrates how to build an AP
5 *
6 * (c) Copyright Actions Co,Ld.
7 *
8 * $Id: ui_stop.c,v 1.1.1.1 2006/04/21 08:22:43 selina Exp $
9 *******************************************************************************
10 */
11 #include "ap_browser.h"
12 extern comval_t g_comval; //系统变量,ap不能更改
13 extern bool ActiveDriveOK;
14 const WORD MenuStrID[2]={MSTOP1,MSTOP5};//,VSTOPM4};
15 const WORD MenuStrIDWithCard[3]={MSTOP1,MSTOP2,MSTOP5};
16 pop_up_list_t list; //define menu
17
18 //======================================================================================
19 //RESULT_CURR_UI: 还要处在当前界面
20 //RESULT_UI_STOP: 到UI_STOP界面(因现在就是UI_STOP界面,所以同上)
21 //RESULT_LAST_UI: 到上一级界面
22 //--------------------------------------------------------------------------------------
23 #pragma codeseg(AP_UI_STP)
24
25 int ui_stop(void)
26 {
\ 0000 C5 PUSH BC
\ 0001 D5 PUSH DE
\ 0002 FDE5 PUSH IY
\ 0004 DDE5 PUSH IX
\ 0006 DD210000 LD IX,0
\ 000A DD39 ADD IX,SP
\ 000C F5 PUSH AF
\ 000D F5 PUSH AF
27 int result,card_init;
28 bool g_card_ok=FALSE;
29 bool g_card_out=FALSE;
\ 000E DD36FC00 LD (IX-4),0
\ 0012 DD36FD00 LD (IX-3),0
\ 0016 ?0003:
30 while(1)
31 {
32 ap_message_init(NULL);//开始算STANDBY 时间
\ 0016 110000 LD DE,0
\ 0019 3E00 LD A,BYTE3 ap_message_init
\ 001B 210000 LD HL,LWRD ap_message_init
\ 001E CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
33 //result = DRV_DetectUD(1); //检查是否有卡
34 if(DRV_DetectUD(1) == 0x20)
\ 0021 1E01 LD E,1
\ 0023 CD0000 CALL LWRD DRV_DetectUD
\ 0026 FE20 CP 32
\ 0028 2004 JR NZ,?0006
\ 002A ?0005:
35 g_card_ok = TRUE;
\ 002A DD36FC01 LD (IX-4),1
\ 002E ?0006:
36
37 list.active=0;
\ 002E 210000 LD HL,0
\ 0031 220400 LD (list+4),HL
38 if(g_card_ok)
\ 0034 AF XOR A
\ 0035 DDB6FC OR (IX-4)
\ 0038 280A JR Z,?0008
\ 003A ?0007:
39 {
40 list.total = 3;
\ 003A 2E03 LD L,3
\ 003C 220200 LD (list+2),HL
41 list.strid = MenuStrIDWithCard;
\ 003F 210400 LD HL,MenuStrIDWithCard
\ 0042 1808 JR ?0041
42 }
43
44 else
\ 0044 ?0008:
45 {
46 list.total=2;
\ 0044 23 INC HL
\ 0045 23 INC HL
\ 0046 220200 LD (list+2),HL
47 list.strid=MenuStrID;
\ 0049 210000 LD HL,MenuStrID
\ 004C ?0041:
\ 004C 220000 LD (list),HL
\ 004F ?0009:
48 }
49
50 list.string_id = g_comval.langid;
\ 004F 3A0C00 LD A,(g_comval+12)
\ 0052 320800 LD (list+8),A
51 list.headid=BROWSER;
\ 0055 218C01 LD HL,396
\ 0058 220600 LD (list+6),HL
52
53 result=ui_popup_list(&list, NULL);
\ 005B 0E00 LD C,0
\ 005D C5 PUSH BC
\ 005E 69 LD L,C
\ 005F 61 LD H,C
\ 0060 E5 PUSH HL
\ 0061 110000 LD DE,list
\ 0064 3E00 LD A,BYTE3 ui_popup_list
\ 0066 210000 LD HL,LWRD ui_popup_list
\ 0069 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 006C F1 POP AF
\ 006D F1 POP AF
\ 006E E5 PUSH HL
\ 006F FDE1 POP IY
54
55 if (g_card_ok && list.active==1)
\ 0071 AF XOR A
\ 0072 DDB6FC OR (IX-4)
\ 0075 282B JR Z,?0015
\ 0077 2A0400 LD HL,(list+4)
\ 007A 3E01 LD A,1
\ 007C AD XOR L
\ 007D B4 OR H
\ 007E 2022 JR NZ,?0015
\ 0080 ?0013:
\ 0080 ?0012:
\ 0080 ?0010:
56 {
57 if (DRV_DetectUD(1) != 0x20)
\ 0080 1E01 LD E,1
\ 0082 CD0000 CALL LWRD DRV_DetectUD
\ 0085 FE20 CP 32
\ 0087 2819 JR Z,?0015
\ 0089 ?0014:
58 {
59 g_card_out=TRUE;
60 ui_err_msg(CARDPULL,CARDPULL,g_comval.langid);//显示卡拔出
\ 0089 ED4B0C00 LD BC,(g_comval+12)
\ 008D 0600 LD B,0
\ 008F C5 PUSH BC
\ 0090 018A01 LD BC,394
\ 0093 59 LD E,C
\ 0094 50 LD D,B
\ 0095 3E00 LD A,BYTE3 ui_err_msg
\ 0097 210000 LD HL,LWRD ui_err_msg
\ 009A CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 009D F1 POP AF
\ 009E DD36FD01 LD (IX-3),1
\ 00A2 ?0015:
\ 00A2 ?0011:
61 //g_browser_vars.location.disk = 'C';
62 }
63 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -