📄 ui_clockdrm.lst
字号:
\ 00EC DD66FF LD H,(IX-1)
\ 00EF 23 INC HL
\ 00F0 23 INC HL
\ 00F1 23 INC HL
\ 00F2 7E LD A,(HL)
\ 00F3 FDBE03 CP (IY+3)
\ 00F6 3004 JR NC,?0026
\ 00F8 ?0025:
88 {
89 return 0xff;
\ 00F8 2EFF LD L,255
90 }
\ 00FA 1802 JR ?0027
\ 00FC ?0026:
91
92 return 0;
\ 00FC 2E00 LD L,0
93 }
\ 00FE ?0027:
\ 00FE DDF9 LD SP,IX
\ 0100 DDE1 POP IX
\ 0102 FDE1 POP IY
\ 0104 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 0107 MessageBox:
94
95 int MessageBox( WORD strMul, int string_id, char * key )
96 {
\ 0107 FDE5 PUSH IY
\ 0109 DDE5 PUSH IX
\ 010B DD210000 LD IX,0
\ 010F DD39 ADD IX,SP
\ 0111 C5 PUSH BC
\ 0112 D5 PUSH DE
\ 0113 F5 PUSH AF
97 int delflag;
98 char key1;
99 char timeout = 0;
\ 0114 DD36FB00 LD (IX-5),0
100
101 ClearScreen(NULL);
\ 0118 110000 LD DE,0
\ 011B CD0000 CALL LWRD ClearScreen
102 ResShowMultiString(strMul,string_id,16,0);
\ 011E 1E00 LD E,0
\ 0120 D5 PUSH DE
\ 0121 1E10 LD E,16
\ 0123 D5 PUSH DE
\ 0124 DD5EFC LD E,(IX-4)
\ 0127 DD56FD LD D,(IX-3)
\ 012A 3E00 LD A,BYTE3 ResShowMultiString
\ 012C 210000 LD HL,LWRD ResShowMultiString
\ 012F CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0132 F1 POP AF
\ 0133 F1 POP AF
103 ResShowPic(DELNO,50,16);
\ 0134 0E10 LD C,16
\ 0136 C5 PUSH BC
\ 0137 0E32 LD C,50
\ 0139 110100 LD DE,1
\ 013C 3E00 LD A,BYTE3 ResShowPic
\ 013E 210000 LD HL,LWRD ResShowPic
\ 0141 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0144 F1 POP AF
104 delflag=0;
\ 0145 FD210000 LD IY,0
\ 0149 ?0029:
105 while(1)
106 {
107 output8(0x4e,input8(0x4e)|0x08);
\ 0149 DB4E IN A,(78)
\ 014B CBDF SET 3,A
\ 014D D34E OUT (78),A
108 key1 = ap_get_message(); //获取消息
\ 014F CD0000 CALL LWRD ap_get_message
\ 0152 DD77FA LD (IX-6),A
109 switch( key1 )
\ 0155 5F LD E,A
\ 0156 CD0000 CALL LWRD ?C_V_SWITCH_L06
\ 0159 0700 DEFW 7
\ 015B 05 DEFB 5
\ 015C 06 DEFB 6
\ 015D 1E DEFB 30
\ 015E 21 DEFB 33
\ 015F 30 DEFB 48
\ 0160 45 DEFB 69
\ 0161 46 DEFB 70
\ 0162 C101 DEFW ?0041
\ 0164 7201 DEFW ?0032
\ 0166 7201 DEFW ?0032
\ 0168 A701 DEFW ?0036
\ 016A BC01 DEFW ?0040
\ 016C AD01 DEFW ?0037
\ 016E 7201 DEFW ?0032
\ 0170 7201 DEFW ?0032
\ 0172 ?0032:
110 {
111 case AP_KEY_NEXT: //YES和NO之间切换
112 case AP_KEY_PREV:
113 case AP_KEY_NEXT | AP_KEY_HOLD:
114 case AP_KEY_PREV | AP_KEY_HOLD:
115 if(delflag==0)
\ 0172 FDE5 PUSH IY
\ 0174 E1 POP HL
\ 0175 7D LD A,L
\ 0176 B4 OR H
\ 0177 2017 JR NZ,?0034
\ 0179 ?0033:
116 {
117 delflag=1;
\ 0179 FD210100 LD IY,1
118 ResShowPic(DELYES,50,16);
\ 017D 0E10 LD C,16
\ 017F C5 PUSH BC
\ 0180 0E32 LD C,50
\ 0182 110200 LD DE,2
\ 0185 3E00 LD A,BYTE3 ResShowPic
\ 0187 210000 LD HL,LWRD ResShowPic
\ 018A CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 018D F1 POP AF
119 }
120 else
\ 018E 18B9 JR ?0029
\ 0190 ?0034:
121 {
122 delflag=0;
\ 0190 FD210000 LD IY,0
123 ResShowPic(DELNO,50,16);
\ 0194 0E10 LD C,16
\ 0196 C5 PUSH BC
\ 0197 0E32 LD C,50
\ 0199 110100 LD DE,1
\ 019C 3E00 LD A,BYTE3 ResShowPic
\ 019E 210000 LD HL,LWRD ResShowPic
\ 01A1 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01A4 F1 POP AF
\ 01A5 ?0035:
124 }
125 break;
\ 01A5 18A2 JR ?0029
\ 01A7 ?0036:
126
127 case AP_KEY_MODE | AP_KEY_UP:
128 return delflag;
\ 01A7 FDE5 PUSH IY
\ 01A9 E1 POP HL
129 break;
\ 01AA C33702 JP LWRD ?0050
\ 01AD ?0037:
130
131 case AP_MSG_WAIT_TIMEOUT: //8秒退出
132 timeout++;
\ 01AD DD34FB INC (IX-5)
133 if ( timeout > 1 )
\ 01B0 3E01 LD A,1
\ 01B2 DDBEFB CP (IX-5)
\ 01B5 3092 JR NC,?0029
\ 01B7 ?0038:
134 return 0;
\ 01B7 210000 LD HL,0
135 break;
\ 01BA 187B JR ?0050
\ 01BC ?0039:
\ 01BC ?0040:
136
137 case AP_KEY_PLAY | AP_KEY_UP:
138 return 0;
\ 01BC 210000 LD HL,0
139 break;
\ 01BF 1876 JR ?0050
\ 01C1 ?0041:
140
141 default:
142 key1 = ap_handle_hotkey(key1);
\ 01C1 DD5EFA LD E,(IX-6)
\ 01C4 CD0000 CALL LWRD ap_handle_hotkey
\ 01C7 DD77FA LD (IX-6),A
143 if(key1 == RESULT_REDRAW)
\ 01CA FE32 CP 50
\ 01CC 2050 JR NZ,?0043
\ 01CE ?0042:
144 {
145 ClearScreen(NULL);
\ 01CE 110000 LD DE,0
\ 01D1 CD0000 CALL LWRD ClearScreen
146 ResShowMultiString(strMul,string_id,16,0);
\ 01D4 0E00 LD C,0
\ 01D6 C5 PUSH BC
\ 01D7 0E10 LD C,16
\ 01D9 C5 PUSH BC
\ 01DA DD4EFE LD C,(IX-2)
\ 01DD DD5EFC LD E,(IX-4)
\ 01E0 DD56FD LD D,(IX-3)
\ 01E3 3E00 LD A,BYTE3 ResShowMultiString
\ 01E5 210000 LD HL,LWRD ResShowMultiString
\ 01E8 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01EB F1 POP AF
\ 01EC F1 POP AF
147 if ( delflag ==1 ) ResShowPic(DELYES,50,16);
\ 01ED FDE5 PUSH IY
\ 01EF E1 POP HL
\ 01F0 3E01 LD A,1
\ 01F2 AD XOR L
\ 01F3 B4 OR H
\ 01F4 2014 JR NZ,?0045
\ 01F6 ?0044:
\ 01F6 0E10 LD C,16
\ 01F8 C5 PUSH BC
\ 01F9 0E32 LD C,50
\ 01FB 110200 LD DE,2
\ 01FE 3E00 LD A,BYTE3 ResShowPic
\ 0200 210000 LD HL,LWRD ResShowPic
\ 0203 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0206 F1 POP AF
\ 0207 C34901 JP LWRD ?0029
\ 020A ?0045:
148 else ResShowPic(DELNO,50,16);
\ 020A 0E10 LD C,16
\ 020C C5 PUSH BC
\ 020D 0E32 LD C,50
\ 020F 110100 LD DE,1
\ 0212 3E00 LD A,BYTE3 ResShowPic
\ 0214 210000 LD HL,LWRD ResShowPic
\ 0217 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 021A F1 POP AF
\ 021B ?0046:
\ 021B C34901 JP LWRD ?0029
\ 021E ?0043:
149 }
150 else if( key1 != 0 )
\ 021E AF XOR A
\ 021F DDB6FA OR (IX-6)
\ 0222 CA4901 JP Z,?0029
\ 0225 ?0048:
151 {
152 *key = key1; //热键回传
\ 0225 DD46FA LD B,(IX-6)
\ 0228 DD6E08 LD L,(IX+8)
\ 022B DD6609 LD H,(IX+9)
\ 022E 70 LD (HL),B
153 return 0;
\ 022F 210000 LD HL,0
154 }
\ 0232 1803 JR ?0050
\ 0234 ?0049:
\ 0234 ?0047:
155 break;
\ 0234 ?0031:
\ 0234 C34901 JP LWRD ?0029
156 } //end switch(key)
157 } //end while(1)
158
159 return 0;
160 }
\ 0237 ?0050:
\ 0237 DDF9 LD SP,IX
\ 0239 DDE1 POP IX
\ 023B FDE1 POP IY
\ 023D C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 0240 show_clockdrm:
161 /*
162 ********************************************************************************
163 * Description : 录音时间设定界面
164 *
165 * Arguments :
166 *
167 * Returns :
168 *
169 * Notes :
170 *
171 ********************************************************************************
172 */
173 int show_clockdrm(void)
174 {
\ 0240 C5 PUSH BC
\ 0241 D5 PUSH DE
\ 0242 DDE5 PUSH IX
\ 0244 DD210000 LD IX,0
\ 0248 DD39 ADD IX,SP
\ 024A 21CAFF LD HL,65482
\ 024D 39 ADD HL,SP
\ 024E F9 LD SP,HL
175 char bIsSet=0;
\ 024F DD36D400 LD (IX-44),0
176 char bTimeAdd=0xff;
\ 0253 DD36D5FF LD (IX-43),255
177 char msgTimeout=0;
\ 0257 DD36CC00 LD (IX-52),0
178 char bDateTSmall;
179 date_t date={2005, 9, 1},date1;
\ 025B 210C00 LD HL,12
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -