📄 handlekey.lst
字号:
212 2 osd_size(bottom,0x05,0x01); // Set Content block size
213 2 osd_pos(bottom,0x66,0x35); // Set bottom block position
214 2 printSwitchInfo(0x01,0x00);
215 2 osdSwitch(0x03);
216 2 osd_pos_Highlight(content,0x01,0x0A,0x05,0x05);
217 2 osd_BackColor_H(content,Blue);
218 2
219 2 break;
220 2
221 2 default:break;
222 2 }
223 1
224 1 osdSwitch(0x03);
225 1 DelayXms(0xFF); // Avoid error repress
226 1 }
227
228 //********************************************************************
229 // 函数:void handleMenuValue()
230 // 作用:DOWN.UP按下时的处理,
231 // 参数:
232 // remarks: DOWN.UP同时也可以做声音的调节健
233 //*********************************************************************
234 void handleMenuValue()
235 {
236 1 bit add_flag;
237 1
238 1 clearTimer(); // 计时器osd_timer = 0
239 1
240 1 if(!key_valueUp)
C51 COMPILER V7.50 HANDLEKEY 09/29/2006 10:54:53 PAGE 5
241 1 add_flag = 1;
242 1 else
243 1 add_flag = 0;
244 1
245 1 if (sel_hue) // Increase Brightness
246 1 {
247 2 adjValue(&hue_value,add_flag,0x3F);
248 2 adj_britclr(hue,hue_value);
249 2 adjMsgBox(hue_value ,0x3F);
250 2 osdSwitch(0x03);
251 2 DelayXms(0x20); // avoid error repress
252 2 }
253 1
254 1 if (sel_satr) // Increase Brightness
255 1 {
256 2 adjValue(&satr_value,add_flag,0xFF);
257 2 adj_britclr(satr,satr_value);
258 2 adjMsgBox(satr_value ,0xFF);
259 2 osdSwitch(0x03);
260 2 DelayXms(0x20); // avoid error repress
261 2 }
262 1
263 1 if (sel_cont) // Increase Brightness
264 1 {
265 2 adjValue(&contc_value,add_flag,0xFF);
266 2 adj_britclr(contc,contc_value);
267 2 adjMsgBox(contc_value ,0xFF);
268 2 osdSwitch(0x03);
269 2 DelayXms(0x20); // avoid error repress
270 2 }
271 1
272 1 if (sel_brit) // Increase Brightness
273 1 {
274 2 adjValue(&britc_value,add_flag,0xFF);
275 2 adj_britclr(britc,britc_value);
276 2 adjMsgBox(britc_value,0xFF);
277 2 osdSwitch(0x03);
278 2 DelayXms(0x20); // avoid error repress
279 2 }
280 1
281 1 if (sel_reset) // Reset Register
282 1 {
283 2 //osd_timer = 0;
284 2 clearMenuFlag();
285 2
286 2 loadAppInitValue();
287 2 setICAppValue();
288 2
289 2 osd_madr(bottom,0xB0);
290 2 osd_size(bottom,0x05,0x01); // Set Content block size
291 2 osd_pos(bottom,0x66,0x35); // Set bottom block position
292 2 printSwitchInfo(0x03,0x00);
293 2 osdSwitch(0x03);
294 2
295 2 DelayXms(0xff);
296 2 osdSwitch(0x00); // Turn the OSD T/C/B block off
297 2 }
298 1
299 1 DelayXms(0xff); // Avoid error repress
300 1 }
301
302 //********************************************************************
C51 COMPILER V7.50 HANDLEKEY 09/29/2006 10:54:53 PAGE 6
303 //函数:void handleSCMode()
304 //作用:屏幕比例的切换
305 //参数:
306 //remarks:
307 //*********************************************************************
308 void handleSCMode()
309 {
310 1 unsigned char current_format;
311 1
312 1 if(scMode_value != 0x00)
313 1 scMode_value = 0x00;
314 1 else
315 1 scMode_value = 0x01;
316 1 DelayXms(0x05);
317 1
318 1 current_format = getCurrentFormat();
319 1 //osd_madr(bottom,0xB0);
320 1 //osd_size(bottom,0x05,0x01); // Set Content block size
321 1 //osd_pos(bottom,0x66,0x35); // Set bottom block position
322 1 setScreenMode(current_format,scMode_value);
323 1 printModeInfo();
324 1 printSwitchInfo(0x02,scMode_value);
325 1 osdSwitch(0x05);
326 1 DelayXms(0x20); // avoid error repress
327 1
328 1 DelayXms(0xFF);
329 1 }
330
331 //********************************************************************
332 //函数:void handleCh()
333 //作用:通道的切换
334 //参数:
335 //remarks:
336 //*********************************************************************
337 void handleCh()
338 {
339 1 unsigned char ch_index;
340 1 unsigned char current_format;
341 1
342 1 clearMenuFlag(); // Clear all menu flag
343 1 clearTimer(); // 计时器osd_timer = 0
344 1
345 1 ch_index = getCurrentCh();
346 1 current_format = getCurrentFormat();
347 1
348 1 ch_index++;
349 1 if (ch_index == 0x04)
350 1 ch_index = 0x01;
351 1
352 1 change1828Ch(ch_index);
353 1
354 1 setCurrentCh(ch_index);
355 1 displayCap(ch_index,current_format);
356 1
357 1 DelayXms(0xff); // avoid error repress
358 1 }
359
360 //********************************************************************
361 // 函数:void adjValue(unsigned char * value,bit add_flag,unsigned char MAX_value)
362 // 作用:在0~MAX_value,内使值加一减1
363 // 参数: value => 更改的值
364 // add_flag => 加减标志
C51 COMPILER V7.50 HANDLEKEY 09/29/2006 10:54:53 PAGE 7
365 // MAX_value => 允许的最大值
366 // remarks:
367 //*********************************************************************
368 void adjValue(unsigned char * value,bit add_flag,unsigned char MAX_value)
369 {
370 1 if(add_flag)
371 1 {
372 2 if(value < MAX_value)
373 2 (*value)++;
374 2 }
375 1 else
376 1 if(value > 0x00)
377 1 (*value)--;
378 1
379 1 }
380
381 //********************************************************************
382 // 函数:void adjMsgBox(unsigned char value,unsigned char max_value)
383 // 作用:在Bottom 处显示一个块
384 // 参数: value => 显示的值
385 // max_value =>
386 // remarks:
387 //*********************************************************************
388 void adjMsgBox(unsigned char value,unsigned char max_value)
389 {
390 1 unsigned char idata temp[0x16];
391 1 unsigned char idata i,j;
392 1 unsigned char count;
393 1 char idata *ptr;
394 1
395 1 if(max_value == 0xFF)
396 1 {
397 2 i = value/16;
398 2 j = value%16;
399 2 j = j/2;
400 2 j = j + 0x70;
401 2 }
402 1 else if (max_value== 0x3F)
403 1 {
404 2 i = value/4;
405 2 j = value%4;
406 2 j = j++;
407 2 j = j*2;
408 2 j = j + 0x70;
409 2 }
410 1
411 1 temp[0] = 0x51;
412 1 ptr = &temp[1];
413 1 for (count = i;count > 0;count--)
414 1 {
415 2 *ptr = 0x78;
416 2 ptr++;
417 2 }
418 1 *ptr = j;
419 1 ptr++;
420 1 j = 0x10;
421 1 j = j - i;
422 1 for (count = j;count > 0;count--)
423 1 {
424 2 *ptr = 0x70;
425 2 ptr++;
426 2 }
C51 COMPILER V7.50 HANDLEKEY 09/29/2006 10:54:53 PAGE 8
427 1 temp[17] = 0x52;
428 1 temp[18] = 0x6D;
429 1 temp[19] = value/100 + 0x62; // 1
430 1 i = value%100;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -