📄 ui.lst
字号:
\ 01A7 D1 POP DE
\ 01A8 C1 POP BC
\ 01A9 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 01AC show_powerdown:
225 /*
226 ********************************************************************************
227 * Description : 关机设定界面
228 *
229 * Arguments :
230 *
231 * Returns :
232 *
233 * Notes : 非标准功能菜单控件
234 *
235 ********************************************************************************
236 */
237 int show_powerdown(void)
238 {
\ 01AC C5 PUSH BC
\ 01AD D5 PUSH DE
\ 01AE FDE5 PUSH IY
\ 01B0 DDE5 PUSH IX
\ 01B2 DD210000 LD IX,0
\ 01B6 DD39 ADD IX,SP
\ 01B8 F5 PUSH AF
239 int result;
240 char key;
241 BYTE mode=0; //0, power mode, 1, sleep mode
\ 01B9 DD36FE00 LD (IX-2),0
242 BOOL need_draw=TRUE;
\ 01BD DD36FF01 LD (IX-1),1
243
244 list.strid = power_text;
\ 01C1 212F00 LD HL,power_text
\ 01C4 220000 LD (list),HL
245 list.total = 2;
\ 01C7 210200 LD HL,2
\ 01CA 220200 LD (list+2),HL
246 list.active = mode;
\ 01CD DD4EFE LD C,(IX-2)
\ 01D0 0600 LD B,0
\ 01D2 ED430400 LD (list+4),BC
247 list.string_id = g_comval.langid;
\ 01D6 3A0C00 LD A,(g_comval+12)
\ 01D9 320800 LD (list+8),A
248 list.headid = main_text[main_list.active];
\ 01DC 2A0400 LD HL,(main_list+4)
\ 01DF 29 ADD HL,HL
\ 01E0 010000 LD BC,main_text
\ 01E3 09 ADD HL,BC
\ 01E4 46 LD B,(HL)
\ 01E5 23 INC HL
\ 01E6 66 LD H,(HL)
\ 01E7 68 LD L,B
\ 01E8 220600 LD (list+6),HL
249
250 result = ui_popup_list(&list, NULL);
\ 01EB 0E00 LD C,0
\ 01ED C5 PUSH BC
\ 01EE 210000 LD HL,0
\ 01F1 E5 PUSH HL
\ 01F2 110000 LD DE,list
\ 01F5 3E00 LD A,BYTE3 ui_popup_list
\ 01F7 210000 LD HL,LWRD ui_popup_list
\ 01FA CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01FD F1 POP AF
\ 01FE F1 POP AF
\ 01FF E5 PUSH HL
\ 0200 FDE1 POP IY
251 mode=list.active;
\ 0202 3A0400 LD A,(list+4)
\ 0205 DD77FE LD (IX-2),A
252 if(result == RESULT_IGNORE) return 0;
\ 0208 3E34 LD A,52
\ 020A AD XOR L
\ 020B B4 OR H
\ 020C 2006 JR NZ,?0109
\ 020E ?0108:
\ 020E 210000 LD HL,0
\ 0211 C3F002 JP LWRD ?0123
\ 0214 ?0109:
253 else if(result!=0)return result;
\ 0214 FDE5 PUSH IY
\ 0216 E1 POP HL
\ 0217 7D LD A,L
\ 0218 B4 OR H
\ 0219 2806 JR Z,?0111
\ 021B ?0110:
\ 021B FDE5 PUSH IY
\ 021D E1 POP HL
254 else
\ 021E C3F002 JP LWRD ?0123
\ 0221 ?0111:
255 {
256 if(mode == 0)
\ 0221 AF XOR A
\ 0222 DDB6FE OR (IX-2)
\ 0225 205F JR NZ,?0113
\ 0227 ?0112:
257 {
258 slider.min = 0;
\ 0227 210000 LD HL,0
\ 022A 220200 LD (slider+2),HL
259 slider.max = 60;
\ 022D 213C00 LD HL,60
\ 0230 220400 LD (slider+4),HL
260 slider.step = 10;
\ 0233 210A00 LD HL,10
\ 0236 220800 LD (slider+8),HL
261 slider.value = g_comval.StandbyTime;
\ 0239 ED4B0A00 LD BC,(g_comval+10)
\ 023D 0600 LD B,0
\ 023F ED430600 LD (slider+6),BC
262 slider.title = SPOWER1;
\ 0243 210002 LD HL,512
\ 0246 220000 LD (slider),HL
263 slider.string_id=g_comval.langid;
\ 0249 3A0C00 LD A,(g_comval+12)
\ 024C 320A00 LD (slider+10),A
264 result = ui_slider(&slider, NULL);
\ 024F 0E00 LD C,0
\ 0251 C5 PUSH BC
\ 0252 210000 LD HL,0
\ 0255 E5 PUSH HL
\ 0256 110000 LD DE,slider
\ 0259 3E00 LD A,BYTE3 ui_slider
\ 025B 210000 LD HL,LWRD ui_slider
\ 025E CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0261 F1 POP AF
\ 0262 F1 POP AF
\ 0263 E5 PUSH HL
\ 0264 FDE1 POP IY
265 if(result != 0) return result;
\ 0266 7D LD A,L
\ 0267 B4 OR H
\ 0268 2806 JR Z,?0115
\ 026A ?0114:
\ 026A FDE5 PUSH IY
\ 026C E1 POP HL
\ 026D C3F002 JP LWRD ?0123
\ 0270 ?0115:
266 else if(result == RESULT_IGNORE) return 0;
\ 0270 FDE5 PUSH IY
\ 0272 E1 POP HL
\ 0273 3E34 LD A,52
\ 0275 AD XOR L
\ 0276 B4 OR H
\ 0277 2005 JR NZ,?0117
\ 0279 ?0116:
\ 0279 210000 LD HL,0
\ 027C 1872 JR ?0123
\ 027E ?0117:
267 g_comval.StandbyTime = (BYTE)slider.value;
\ 027E 3A0600 LD A,(slider+6)
\ 0281 320A00 LD (g_comval+10),A
268 }
269 else
\ 0284 185C JR ?0118
\ 0286 ?0113:
270 {
271 slider.min = 0;
\ 0286 210000 LD HL,0
\ 0289 220200 LD (slider+2),HL
272 slider.max = 120;
\ 028C 217800 LD HL,120
\ 028F 220400 LD (slider+4),HL
273 slider.step = 10;
\ 0292 210A00 LD HL,10
\ 0295 220800 LD (slider+8),HL
274 slider.value = g_comval.SleepTime;
\ 0298 ED4B0B00 LD BC,(g_comval+11)
\ 029C 0600 LD B,0
\ 029E ED430600 LD (slider+6),BC
275 slider.title = SPOWER2;
\ 02A2 210102 LD HL,513
\ 02A5 220000 LD (slider),HL
276 slider.string_id=g_comval.langid;
\ 02A8 3A0C00 LD A,(g_comval+12)
\ 02AB 320A00 LD (slider+10),A
277 result = ui_slider(&slider, NULL);
\ 02AE 0E00 LD C,0
\ 02B0 C5 PUSH BC
\ 02B1 210000 LD HL,0
\ 02B4 E5 PUSH HL
\ 02B5 110000 LD DE,slider
\ 02B8 3E00 LD A,BYTE3 ui_slider
\ 02BA 210000 LD HL,LWRD ui_slider
\ 02BD CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02C0 F1 POP AF
\ 02C1 F1 POP AF
\ 02C2 E5 PUSH HL
\ 02C3 FDE1 POP IY
278 if(result != 0) return result;
\ 02C5 7D LD A,L
\ 02C6 B4 OR H
\ 02C7 2805 JR Z,?0120
\ 02C9 ?0119:
\ 02C9 FDE5 PUSH IY
\ 02CB E1 POP HL
\ 02CC 1822 JR ?0123
\ 02CE ?0120:
279 else if(result == RESULT_IGNORE) return 0;
\ 02CE FDE5 PUSH IY
\ 02D0 E1 POP HL
\ 02D1 3E34 LD A,52
\ 02D3 AD XOR L
\ 02D4 B4 OR H
\ 02D5 2005 JR NZ,?0122
\ 02D7 ?0121:
\ 02D7 210000 LD HL,0
\ 02DA 1814 JR ?0123
\ 02DC ?0122:
280 g_comval.SleepTime = (BYTE)slider.value;
\ 02DC 3A0600 LD A,(slider+6)
\ 02DF 320B00 LD (g_comval+11),A
\ 02E2 ?0118:
281 }
282
283 //重新设置关机时间
284 ap_message_init(&g_comval);
\ 02E2 110000 LD DE,g_comval
\ 02E5 3E00 LD A,BYTE3 ap_message_init
\ 02E7 210000 LD HL,LWRD ap_message_init
\ 02EA CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
285 return 0;
\ 02ED 210000 LD HL,0
286 }
\ 02F0 ?0123:
\ 02F0 DDF9 LD SP,IX
\ 02F2 DDE1 POP IX
\ 02F4 FDE1 POP IY
\ 02F6 D1 POP DE
\ 02F7 C1 POP BC
\ 02F8 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
287 }
\ 02FB show_replay:
288 /*
289 ********************************************************************************
290 * Description : 复读设定界面
291 *
292 * Arguments :
293 *
294 * Returns :
295 *
296 * Notes :
297 *
298 ********************************************************************************
299 */
300 int show_replay(void)
301 {
\ 02FB C5 PUSH BC
\ 02FC D5 PUSH DE
\ 02FD FDE5 PUSH IY
\ 02FF DDE5 PUSH IX
\ 0301 DD210000 LD IX,0
\ 0305 DD39 ADD IX,SP
\ 0307 F5 PUSH AF
302 int result;
303 char old_replaymode;
304
305 old_replaymode = g_comval.ReplayMode;
\ 0308 3A0D00 LD A,(g_comval+13)
\ 030B DD77FE LD (IX-2),A
306
307 list.strid = replay_text;
\ 030E 213900 LD HL,replay_text
\ 0311 220000 LD (list),HL
308 list.total = 2;
\ 0314 210200 LD HL,2
\ 0317 220200 LD (list+2),HL
309 list.active = g_comval.ReplayMode;;
\ 031A ED4B0D00 LD BC,(g_comval+13)
\ 031E 0600 LD B,0
\ 0320 ED430400 LD (list+4),BC
310 list.string_id = g_comval.langid;
\ 0324 3A0C00 LD A,(g_comval+12)
\ 0327 320800 LD (list+8),A
311 list.headid = main_text[main_list.active];
\ 032A 2A0400 LD HL,(main_list+4)
\ 032D 29 ADD HL,HL
\ 032E 010000 LD BC,main_text
\ 0331 09 ADD HL,BC
\ 0332 46 LD B,(HL)
\ 0333 23 INC HL
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -