📄 main.src
字号:
;
; struct progbar_struct pb;
; // flag=7;
; // disp_char(ROW_BRI+2,2,172);
; // disp_char(ROW_BRI+2,3,173);
; pb.step = 1;
; SOURCE LINE # 458
MOV pb?25108+03H,#01H
; pb.range = ABS(BRI_RANGE/BRI_FAC);
; SOURCE LINE # 459
MOV pb?25108+01H,#05CH
; pb.pos = (BRI_RANGE-(val-BRI_OFF))/BRI_FAC;
; SOURCE LINE # 460
CLR C
MOV A,#09EH
SUBB A,R3
MOV pb?25108+02H,A
; pb.val = BRI_RANGE-val;
; SOURCE LINE # 461
CLR C
MOV A,#05CH
SUBB A,R3
MOV pb?25108,A
; draw_progbar(row, col, &pb);
; SOURCE LINE # 462
MOV R3,#LOW (pb?25108)
LJMP _draw_progbar
; END OF _bri_draw
; }
;
;
;
; void cont_draw(char row, char col, unsigned char val)
RSEG ?PR?_cont_draw?MAIN
_cont_draw:
USING 0
; SOURCE LINE # 467
;---- Variable 'row?26109' assigned to Register 'R7' ----
;---- Variable 'val?26111' assigned to Register 'R3' ----
;---- Variable 'col?26110' assigned to Register 'R5' ----
; {
; SOURCE LINE # 468
; struct progbar_struct pb;
; pb.step = 1;
; SOURCE LINE # 470
MOV pb?26112+03H,#01H
; pb.range = ABS(CONT_RANGE/CONT_FAC);
; SOURCE LINE # 471
MOV pb?26112+01H,#05CH
; pb.pos = (CONT_RANGE-(val-CONT_OFF))/CONT_FAC;
; SOURCE LINE # 472
CLR C
MOV A,#09EH
SUBB A,R3
MOV pb?26112+02H,A
; pb.val = CONT_RANGE-val;
; SOURCE LINE # 473
CLR C
MOV A,#05CH
SUBB A,R3
MOV pb?26112,A
; draw_progbar(row, col, &pb);
; SOURCE LINE # 474
MOV R3,#LOW (pb?26112)
LJMP _draw_progbar
; END OF _cont_draw
; }
;
; void col_draw(char row, char col, unsigned char val)
RSEG ?PR?_col_draw?MAIN
_col_draw:
USING 0
; SOURCE LINE # 477
;---- Variable 'row?27113' assigned to Register 'R7' ----
;---- Variable 'val?27115' assigned to Register 'R3' ----
;---- Variable 'col?27114' assigned to Register 'R5' ----
; {
; SOURCE LINE # 478
; struct progbar_struct pb;
; pb.step = 1;
; SOURCE LINE # 480
MOV pb?27116+03H,#01H
; pb.range = ABS(COL_RANGE/COL_FAC);
; SOURCE LINE # 481
MOV pb?27116+01H,#05CH
; pb.pos = (val-COL_OFF)/COL_FAC;
; SOURCE LINE # 482
MOV A,R3
ADD A,#093H
MOV pb?27116+02H,A
; pb.val = val;
; SOURCE LINE # 483
MOV pb?27116,R3
; draw_progbar(row, col, &pb);
; SOURCE LINE # 484
MOV R3,#LOW (pb?27116)
LJMP _draw_progbar
; END OF _col_draw
; }
;
; void tint_draw(char row, char col, unsigned char val)
RSEG ?PR?_tint_draw?MAIN
_tint_draw:
USING 0
; SOURCE LINE # 487
;---- Variable 'row?28117' assigned to Register 'R7' ----
;---- Variable 'val?28119' assigned to Register 'R3' ----
;---- Variable 'col?28118' assigned to Register 'R5' ----
; {
; SOURCE LINE # 488
; unsigned char Row,Col;
; struct progbar_struct pb;
;
; Row = row;
; SOURCE LINE # 492
MOV Row?28120,R7
; Col = col;
; SOURCE LINE # 493
MOV Col?28121,R5
;
; pb.step = 1;
; SOURCE LINE # 495
MOV pb?28122+03H,#01H
; pb.range = ABS(TINT_RANGE/TINT_FAC);
; SOURCE LINE # 496
MOV pb?28122+01H,#05CH
; pb.pos = (val-TINT_OFF)/TINT_FAC;
; SOURCE LINE # 497
MOV A,R3
ADD A,#089H
MOV pb?28122+02H,A
; pb.val = val;
; SOURCE LINE # 498
MOV pb?28122,R3
; draw_progbar(row, col, &pb);
; SOURCE LINE # 499
MOV R3,#LOW (pb?28122)
LJMP _draw_progbar
; END OF _tint_draw
; }
;
;
; void reset_draw(char row, char col, unsigned char val)
RSEG ?PR?_reset_draw?MAIN
_reset_draw:
; SOURCE LINE # 503
;---- Variable 'row?29123' assigned to Register 'R7' ----
;---- Variable 'val?29125' assigned to Register 'R3' ----
;---- Variable 'col?29124' assigned to Register 'R5' ----
; {
; SOURCE LINE # 504
; unsigned char ROW,COL,VAL;
; ROW = row;
; SOURCE LINE # 506
MOV ROW?29126,R7
; COL = col;
; SOURCE LINE # 507
MOV COL?29127,R5
; VAL = val;
; SOURCE LINE # 508
MOV VAL?29128,R3
; }
; SOURCE LINE # 509
RET
; END OF _reset_draw
;
; /*----------------------------------------------------------------------------------------------------*/
;
; void show_menu(void)//显示菜单项目
RSEG ?PR?show_menu?MAIN
show_menu:
USING 0
; SOURCE LINE # 513
; {
; SOURCE LINE # 514
; unsigned char i;
; struct menuitem_struct code *item;
;
; for (i = 0, item = &items[0]; i < NR_ITEMS; i++, item++) {
; SOURCE LINE # 518
CLR A
MOV i?30130,A
MOV item?30131,#HIGH (items)
MOV item?30131+01H,#LOW (items)
?C0109:
MOV A,i?30130
CLR C
SUBB A,#05H
JC $ + 5H
LJMP ?C0115
; osd_setrowattr(ROW_BRI+i, 0);
; SOURCE LINE # 519
CLR A
MOV R3,A
MOV R5,#01EH
MOV R7,i?30130
LCALL _mtv130_putd
; paint_line(ROW_BRI+i, 0, 12, 6);
; SOURCE LINE # 520
MOV ?_paint_line?BYTE+03H,#06H
MOV R3,#0CH
CLR A
MOV R5,A
MOV R7,i?30130
LCALL _paint_line
; disp_str3(ROW_BRI+i, 1, item->title);
; SOURCE LINE # 521
MOV DPL,item?30131+01H
MOV DPH,item?30131
MOV R5,#01H
MOV R7,i?30130
LCALL L?0202
; if (!(item->flags & MIF_DOCA)) {
; SOURCE LINE # 522
MOV DPL,item?30131+01H
MOV DPH,item?30131
MOV A,#03H
MOVC A,@A+DPTR
JB ACC.0,?C0111
; unsigned char c = item->read(item->addr);
; SOURCE LINE # 523
MOV A,#02H
MOVC A,@A+DPTR
MOV R7,A
MOV A,#05H
MOVC A,@A+DPTR
MOV R4,A
MOV A,#06H
MOVC A,@A+DPTR
MOV R5,A
MOV DPL,A
MOV DPH,R4
LCALL ?C?ICALL2
MOV c?30129,R7
; paint_line(ROW_BRI+i, 12, 18, c == item->defval ? 2 : 4);
; SOURCE LINE # 524
MOV DPL,item?30131+01H
MOV DPH,item?30131
MOV A,#04H
MOVC A,@A+DPTR
CJNE A,c?30129,?C0113
MOV R7,#02H
SJMP ?C0114
?C0113:
MOV R7,#04H
?C0114:
MOV ?_paint_line?BYTE+03H,R7
MOV R3,#012H
MOV R5,#0CH
MOV R7,i?30130
LCALL _paint_line
; item->draw(ROW_BRI+i, 12, c);
; SOURCE LINE # 525
MOV DPL,item?30131+01H
MOV DPH,item?30131
MOV A,#0BH
MOVC A,@A+DPTR
MOV R6,A
MOV A,#0CH
MOVC A,@A+DPTR
MOV DPL,A
MOV DPH,R6
MOV R3,c?30129
MOV R5,#0CH
MOV R7,i?30130
LCALL ?C?ICALL2
; }
; SOURCE LINE # 526
; }
; SOURCE LINE # 527
?C0111:
INC i?30130
MOV A,#0DH
ADD A,item?30131+01H
MOV item?30131+01H,A
CLR A
ADDC A,item?30131
MOV item?30131,A
LJMP ?C0109
; }
; SOURCE LINE # 528
?C0115:
RET
; END OF show_menu
;
; void select_item(unsigned char id, bit selected)
RSEG ?PR?_select_item?MAIN
_select_item:
USING 0
; SOURCE LINE # 530
;---- Variable 'id?31132' assigned to Register 'R7' ----
; {
; SOURCE LINE # 531
; struct menuitem_struct code *item = &items[id];
; SOURCE LINE # 532
MOV A,R7
MOV B,#0DH
MUL AB
ADD A,#LOW (items)
MOV DPL,A
CLR A
ADDC A,#HIGH (items)
MOV R5,DPL
MOV item?31135,A
MOV item?31135+01H,R5
; // paint_line(ROW_BRI+id, 0, strlen(item->title), selected ? 5|8 : 6);
; disp_str2(ROW_BRI+id, 1, item->title, selected ? 5|8 : 6);
; SOURCE LINE # 534
MOV DPH,A
CLR A
MOVC A,@A+DPTR
MOV R2,A
MOV A,#01H
MOVC A,@A+DPTR
MOV R3,A
JNB selected?31133,?C0116
MOV R6,#0DH
SJMP ?C0117
?C0116:
MOV R6,#06H
?C0117:
MOV ?_disp_str2?BYTE+04H,R6
MOV R5,#01H
LCALL _disp_str2
; if (item->flags & MIF_DOCA) {
; SOURCE LINE # 535
MOV DPL,item?31135+01H
MOV DPH,item?31135
MOV A,#03H
MOVC A,@A+DPTR
JNB ACC.0,?C0121
; if (selected) {
; SOURCE LINE # 536
JNB selected?31133,?C0119
; unsigned char c = item->read(item->addr);
; SOURCE LINE # 537
MOV A,#02H
MOVC A,@A+DPTR
MOV R7,A
MOV A,#05H
MOVC A,@A+DPTR
MOV R4,A
MOV A,#06H
MOVC A,@A+DPTR
MOV R5,A
MOV DPL,A
MOV DPH,R4
LCALL ?C?ICALL2
MOV c?31134,R7
; paint_line(ROW_BRI+NR_ITEMS+0, 8, 10, 5);
; SOURCE LINE # 538
MOV ?_paint_line?BYTE+03H,#05H
MOV R3,#0AH
MOV R5,#08H
MOV R7,#05H
LCALL _paint_line
; paint_line(ROW_BRI+NR_ITEMS+0, 18, 12, 6);
; SOURCE LINE # 539
MOV ?_paint_line?BYTE+03H,#06H
MOV R3,#0CH
MOV R5,#012H
MOV R7,#05H
LCALL _paint_line
; paint_line(ROW_BRI+NR_ITEMS+1, 0, 30, 6);
; SOURCE LINE # 540
MOV ?_paint_line?BYTE+03H,#06H
MOV R3,#01EH
CLR A
MOV R5,A
MOV R7,#06H
LCALL _paint_line
; disp_str3(ROW_BRI+NR_ITEMS+0, 8, item->title);
; SOURCE LINE # 541
MOV DPL,item?31135+01H
MOV DPH,item?31135
MOV R5,#08H
MOV R7,#05H
LCALL L?0202
; item->draw(ROW_BRI+NR_ITEMS+1, 1, c);
; SOURCE LINE # 542
MOV DPL,item?31135+01H
MOV DPH,item?31135
MOV A,#0BH
MOVC A,@A+DPTR
MOV R6,A
MOV A,#0CH
MOVC A,@A+DPTR
MOV DPL,A
MOV DPH,R6
MOV R3,c?31134
MOV R5,#01H
MOV R7,#06H
LJMP ?C?ICALL2
; } else {
; SOURCE LINE # 543
?C0119:
; clear_line(ROW_BRI+NR_ITEMS+0);
; SOURCE LINE # 544
MOV R7,#05H
LCALL _clear_line
; clear_line(ROW_BRI+NR_ITEMS+1);
; SOURCE LINE # 545
MOV R7,#06H
LCALL _clear_line
; }
; SOURCE LINE # 546
; }
; SOURCE LINE # 547
; }
; SOURCE LINE # 548
?C0121:
RET
; END OF _select_item
; #if 1
; void hide_menu(void)
RSEG ?PR?hide_menu?MAIN
hide_menu:
USING 0
; SOURCE LINE # 550
; {
; SOURCE LINE # 551
; unsigned char i;
; for (i = 0; i < NR_ITEMS; i++) {
; SOURCE LINE # 553
CLR A
MOV i?32136,A
?C0122:
; clear_line(ROW_BRI+i);
; SOURCE LINE # 554
MOV R7,i?32136
LCALL _clear_line
; // osd_setctrl1(CTRL1_OSDEN|CTRL1_RAMCLR);
; // osd_setctrl1(CTRL1_OSDEN);
; }
; SOURCE LINE # 557
INC i?32136
MOV A,i?32136
CLR C
SUBB A,#05H
JC ?C0122
?C0123:
; clear_line(ROW_BRI+NR_ITEMS+1);
; SOURCE LINE # 558
MOV R7,#06H
LCALL _clear_line
; clear_line(ROW_BRI+NR_ITEMS+2);
; SOURCE LINE # 559
MOV R7,#07H
LJMP _clear_line
; END OF hide_menu
; }
; #endif
;
;
; #if 0
; bit mtv130_test(unsigned short c)
; {
; unsigned char i,j;
;
; for (i = 0; i < 8; i++) {
; for (j = 0; j < 16; j++) {
; osd_putchar(i, j, c, 0x16);
; c++;
; }
; }
; return 1;
; }
; #endif
;
; #if 1
; void osd_back(void)
RSEG ?PR?osd_back?MAIN
osd_back:
USING 0
; SOURCE LINE # 580
; {
; SOURCE LINE # 581
; mtv130_puta(WIN1ROW_ROW, WIN1ROW_COL, 0x0f);
; SOURCE LINE # 582
MOV R3,#0FH
CLR A
MOV R5,A
MOV R7,#0FH
LCALL _mtv130_puta
; mtv130_puta(WIN1COLS_ROW, WIN1COLS_COL, 0x04);
; SOURCE LINE # 583
MOV R3,#04H
MOV R5,#01H
MOV R7,#0FH
LCALL _mtv130_puta
; mtv130_puta(WIN1COLE_ROW, WIN1COLE_COL,0xf1);
; SOURCE LINE # 584
MOV R3,#0F1H
MOV R5,#02H
MOV R7,#0FH
LJMP _mtv130_puta
; END OF osd_back
; }
; #endif
;
; void osd_clear(void)
RSEG ?PR?osd_clear?MAIN
osd_clear:
USING 0
; SOURCE LINE # 588
; {
; SOURCE LINE # 589
; osd_setctrl1(CTRL1_OSDEN|CTRL1_WENCLR|CTRL1_RAMCLR);
; SOURCE LINE # 590
MOV R3,#086H
MOV R5,#011H
MOV R7,#0FH
LCALL _mtv130_puta
; osd_setctrl1(CTRL1_OSDEN);
; SOURCE LINE # 591
MOV R3,#080H
MOV R5,#011H
MOV R7,#0FH
LJMP _mtv130_puta
; END OF osd_clear
; }
;
; void osd_init(void)
RSEG ?PR?osd_init?MAIN
osd_init:
USING 0
; SOURCE LINE # 594
; {
; SOURCE LINE # 595
; unsigned char i;
; osd_setctrl1(CTRL1_OSDEN|CTRL1_WENCLR|CTRL1_RAMCLR);
; SOURCE LINE # 597
MOV R3,#086H
MOV R5,#011H
MOV R7,#0FH
LCALL _mtv130_puta
; osd_setctrl1(CTRL1_OSDEN);
; SOURCE LINE # 598
MOV R3,#080H
MOV R5,#011H
MOV R7,#0FH
LCALL _mtv130_puta
; osd_setctrl2(CTRL2_FBKGP);
; SOURCE LINE # 599
MOV R3,#040H
MOV R5,#012H
MOV R7,#0FH
LCALL _mtv130_puta
; for (i = 0; i < 15; i++) {
; SOURCE LINE # 600
;---- Variable 'i?35137' assigned to Register 'R1' ----
CLR A
MOV R1,A
?C0128:
; #ifdef CWS
; osd_setrowattr(i, RACR_CHS|RACR_CWS);
; #else
; osd_setrowattr(i, 0);
; SOURCE LINE # 604
MOV R7,AR1
CLR A
MOV R3,A
MOV R5,#01EH
LCALL _mtv130_putd
; #endif
; }
; SOURCE LINE # 606
INC R1
CJNE R1,#0FH,?C0128
?C0129:
; mtv130_puta(HORD_ROW, HORD_COL,5);//12);
; SOURCE LINE # 607
MOV R3,#05H
MOV R5,#0DH
MOV R7,#0FH
LCALL _mtv130_puta
; mtv130_puta(VERTD_ROW, VERTD_COL,4);// 4);//6);
; SOURCE LINE # 608
MOV R3,#04H
MOV R5,#0CH
MOV R7,#0FH
LCALL _mtv130_puta
; mtv130_puta(CH_ROW, CH_COL, HZ_IND ? 0 : 4);
; SOURCE LINE # 609
JNB HZ_IND,?C0131
MOV R3,#00H
SJMP ?C0132
?C0131:
MOV R3,#04H
?C0132:
MOV R5,#0EH
MOV R7,#0FH
LCALL _mtv130_puta
; mtv130_puta(HORR_ROW, HORR_COL,36);
; SOURCE LINE # 610
MOV R3,#024H
MOV R5,#0FH
MOV R7,#0FH
LJMP _mtv130_puta
; END OF osd_init
; }
;
; void show_video(void)
RSEG ?PR?show_video?MAIN
show_video:
USING 0
; SOURCE LINE # 613
; {
; SOURCE LINE # 614
; disp_str2(1, 18, "VIDEO", 2);
; SOURCE LINE # 615
MOV R2,#HIGH (?SC_33)
MOV R3,#LOW (?SC_33)
MOV ?_disp_str2?BYTE+04H,#02H
MOV R5,#012H
MOV R7,#01H
LCALL _disp_str2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -