ui_slider.lst
来自「炬力方案176*132软件源码,适用于AK1025」· LST 代码 · 共 1,032 行 · 第 1/4 页
LST
1,032 行
\ 02AA 0E56 LD C,86
\ 02AC ED5B0100 LD DE,(file_name+1)
\ 02B0 1600 LD D,0
\ 02B2 215A00 LD HL,90
\ 02B5 19 ADD HL,DE
\ 02B6 EB EX DE,HL
\ 02B7 3E00 LD A,BYTE3 main_ResShowPic
\ 02B9 210000 LD HL,LWRD main_ResShowPic
\ 02BC CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02BF F1 POP AF
146 }
147 else
\ 02C0 187F JR ?0041
\ 02C2 ?0039:
148 {
149 main_ResShowPic(FMNUM0+file_name[0]-0x30,83-22,80);
\ 02C2 0E50 LD C,80
\ 02C4 C5 PUSH BC
\ 02C5 0E3D LD C,61
\ 02C7 ED5B0000 LD DE,(file_name)
\ 02CB 1600 LD D,0
\ 02CD 215A00 LD HL,90
\ 02D0 19 ADD HL,DE
\ 02D1 EB EX DE,HL
\ 02D2 3E00 LD A,BYTE3 main_ResShowPic
\ 02D4 210000 LD HL,LWRD main_ResShowPic
\ 02D7 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02DA F1 POP AF
150 main_ResShowPic(FMNUM0+file_name[1]-0x30,106-22,80);
\ 02DB 0E50 LD C,80
\ 02DD C5 PUSH BC
\ 02DE 0E54 LD C,84
\ 02E0 ED5B0100 LD DE,(file_name+1)
\ 02E4 1600 LD D,0
\ 02E6 215A00 LD HL,90
\ 02E9 19 ADD HL,DE
\ 02EA EB EX DE,HL
\ 02EB 3E00 LD A,BYTE3 main_ResShowPic
\ 02ED 210000 LD HL,LWRD main_ResShowPic
\ 02F0 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02F3 F1 POP AF
\ 02F4 ?0040:
151 }
152 }
153 else
\ 02F4 184B JR ?0041
\ 02F6 ?0037:
154 {
155 main_ResShowPic(FMNUM0+file_name[0]-0x30,75-22,80);
\ 02F6 0E50 LD C,80
\ 02F8 C5 PUSH BC
\ 02F9 0E35 LD C,53
\ 02FB ED5B0000 LD DE,(file_name)
\ 02FF 1600 LD D,0
\ 0301 215A00 LD HL,90
\ 0304 19 ADD HL,DE
\ 0305 EB EX DE,HL
\ 0306 3E00 LD A,BYTE3 main_ResShowPic
\ 0308 210000 LD HL,LWRD main_ResShowPic
\ 030B CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 030E F1 POP AF
156 main_ResShowPic(FMNUM0+file_name[1]-0x30,98-22,80);
\ 030F 0E50 LD C,80
\ 0311 C5 PUSH BC
\ 0312 0E4C LD C,76
\ 0314 ED5B0100 LD DE,(file_name+1)
\ 0318 1600 LD D,0
\ 031A 215A00 LD HL,90
\ 031D 19 ADD HL,DE
\ 031E EB EX DE,HL
\ 031F 3E00 LD A,BYTE3 main_ResShowPic
\ 0321 210000 LD HL,LWRD main_ResShowPic
\ 0324 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0327 F1 POP AF
157 main_ResShowPic(FMNUM0+file_name[2]-0x30,121-22,80);
\ 0328 0E50 LD C,80
\ 032A C5 PUSH BC
\ 032B 0E63 LD C,99
\ 032D ED5B0200 LD DE,(file_name+2)
\ 0331 1600 LD D,0
\ 0333 215A00 LD HL,90
\ 0336 19 ADD HL,DE
\ 0337 EB EX DE,HL
\ 0338 3E00 LD A,BYTE3 main_ResShowPic
\ 033A 210000 LD HL,LWRD main_ResShowPic
\ 033D CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0340 F1 POP AF
\ 0341 ?0041:
\ 0341 ?0035:
158 }
159 need_draw = FALSE;
\ 0341 DD36FB00 LD (IX-5),0
\ 0345 ?0023:
160 }
161
162 //handle message
163 key = ap_get_message();
\ 0345 CD0000 CALL LWRD ap_get_message
\ 0348 DD77F8 LD (IX-8),A
164 switch( key)
\ 034B 5F LD E,A
\ 034C CD0000 CALL LWRD ?C_V_SWITCH_L06
\ 034F 0F00 DEFW 15
\ 0351 03 DEFB 3
\ 0352 04 DEFB 4
\ 0353 05 DEFB 5
\ 0354 06 DEFB 6
\ 0355 1E DEFB 30
\ 0356 21 DEFB 33
\ 0357 23 DEFB 35
\ 0358 24 DEFB 36
\ 0359 25 DEFB 37
\ 035A 26 DEFB 38
\ 035B 30 DEFB 48
\ 035C 43 DEFB 67
\ 035D 44 DEFB 68
\ 035E 45 DEFB 69
\ 035F 46 DEFB 70
\ 0360 2704 DEFW ?0060
\ 0362 F903 DEFW ?0049
\ 0364 0504 DEFW ?0052
\ 0366 F903 DEFW ?0049
\ 0368 0504 DEFW ?0052
\ 036A 1704 DEFW ?0056
\ 036C 1104 DEFW ?0055
\ 036E 1104 DEFW ?0055
\ 0370 1104 DEFW ?0055
\ 0372 1104 DEFW ?0055
\ 0374 1704 DEFW ?0056
\ 0376 1C04 DEFW ?0057
\ 0378 8003 DEFW ?0043
\ 037A BD03 DEFW ?0046
\ 037C 8003 DEFW ?0043
\ 037E BD03 DEFW ?0046
\ 0380 ?0043:
165 {
166 case AP_KEY_NEXT:
167 case AP_KEY_VOLADD:
168 if((slider->value + slider->step) <= slider->max)
\ 0380 FD6E08 LD L,(IY+8)
\ 0383 FD6609 LD H,(IY+9)
\ 0386 FD4E06 LD C,(IY+6)
\ 0389 FD4607 LD B,(IY+7)
\ 038C 09 ADD HL,BC
\ 038D 4D LD C,L
\ 038E 44 LD B,H
\ 038F FD6E04 LD L,(IY+4)
\ 0392 FD6605 LD H,(IY+5)
\ 0395 F680 OR 128
\ 0397 ED42 SBC HL,BC
\ 0399 E29D03 JP PO,?0091
\ 039C AC XOR H
\ 039D ?0091:
\ 039D FA4E04 JP M,?0064
\ 03A0 ?0044:
169 {
170 slider->value += slider->step;
\ 03A0 210600 LD HL,6
\ 03A3 FDE5 PUSH IY
\ 03A5 C1 POP BC
\ 03A6 09 ADD HL,BC
\ 03A7 7E LD A,(HL)
\ 03A8 FD8608 ADD A,(IY+8)
\ 03AB 77 LD (HL),A
\ 03AC 23 INC HL
\ 03AD 7E LD A,(HL)
\ 03AE FD8E09 ADC A,(IY+9)
\ 03B1 77 LD (HL),A
171 value_changed = TRUE;
\ 03B2 DD36FA01 LD (IX-6),1
172 need_draw = TRUE;
\ 03B6 DD36FB01 LD (IX-5),1
\ 03BA ?0045:
173 }
174
175 break;
\ 03BA C34E04 JP LWRD ?0064
\ 03BD ?0046:
176
177
178 case AP_KEY_PREV:
179 case AP_KEY_VOLSUB:
180 if((slider->value - slider->step) >= slider->min)
\ 03BD FD4E02 LD C,(IY+2)
\ 03C0 FD4603 LD B,(IY+3)
\ 03C3 FD5E08 LD E,(IY+8)
\ 03C6 FD5609 LD D,(IY+9)
\ 03C9 FD6E06 LD L,(IY+6)
\ 03CC FD6607 LD H,(IY+7)
\ 03CF A7 AND A
\ 03D0 ED52 SBC HL,DE
\ 03D2 F680 OR 128
\ 03D4 ED42 SBC HL,BC
\ 03D6 E2DA03 JP PO,?0092
\ 03D9 AC XOR H
\ 03DA ?0092:
\ 03DA FA4E04 JP M,?0064
\ 03DD ?0047:
181 {
182 slider->value -= slider->step;
\ 03DD 210600 LD HL,6
\ 03E0 FDE5 PUSH IY
\ 03E2 C1 POP BC
\ 03E3 09 ADD HL,BC
\ 03E4 7E LD A,(HL)
\ 03E5 FD9608 SUB (IY+8)
\ 03E8 77 LD (HL),A
\ 03E9 23 INC HL
\ 03EA 7E LD A,(HL)
\ 03EB FD9E09 SBC A,(IY+9)
\ 03EE 77 LD (HL),A
183 value_changed = TRUE;
\ 03EF DD36FA01 LD (IX-6),1
184 need_draw = TRUE;
\ 03F3 DD36FB01 LD (IX-5),1
\ 03F7 ?0048:
185 }
186
187 break;
\ 03F7 1855 JR ?0064
\ 03F9 ?0049:
188
189 //hold 用来控制加速开关
190 case AP_KEY_NEXT | AP_KEY_HOLD:
191 case AP_KEY_VOLADD | AP_KEY_HOLD:
192 if(hold_state == 0) hold_state = 1;
\ 03F9 AF XOR A
\ 03FA DDB6F9 OR (IX-7)
\ 03FD 204F JR NZ,?0064
\ 03FF ?0050:
\ 03FF DD36F901 LD (IX-7),1
\ 0403 ?0051:
193
194 break;
\ 0403 1849 JR ?0064
\ 0405 ?0052:
195
196
197 case AP_KEY_PREV | AP_KEY_HOLD:
198 case AP_KEY_VOLSUB | AP_KEY_HOLD:
199 if(hold_state == 0) hold_state = 2;
\ 0405 AF XOR A
\ 0406 DDB6F9 OR (IX-7)
\ 0409 2043 JR NZ,?0064
\ 040B ?0053:
\ 040B DD36F902 LD (IX-7),2
\ 040F ?0054:
200
201 break;
\ 040F 183D JR ?0064
\ 0411 ?0055:
202
203
204 case AP_KEY_NEXT | AP_KEY_UP:
205 case AP_KEY_VOLADD | AP_KEY_UP:
206 case AP_KEY_PREV | AP_KEY_UP:
207 case AP_KEY_VOLSUB | AP_KEY_UP:
208 hold_state = 0;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?