📄 osdtune.src
字号:
;
; #if (MASCOT_VZ+MASCOT_VXZ+MASCOT_VP2)
; RegByteOut(0xB1, 0x80); // use threshold
; SOURCE LINE # 594
MOV R7,#0B1H
MOV R5,#080H
LCALL _RegByteOut
; RegByteOut(0xB9, 0x30); // threshold value
; SOURCE LINE # 595
MOV R7,#0B9H
MOV R5,#030H
LCALL _RegByteOut
; #else
; RegByteOut(0xB1, 0x00);
; #endif
; RegByteOut(0xB2, COLORCMPMASK); // Set color compare mask
; SOURCE LINE # 599
MOV R7,#0B2H
MOV R5,#0C0H
LCALL _RegByteOut
;
;
; redoPhaseHW:
; SOURCE LINE # 602
?phaseHWCalibration?redoPhaseHW:
; phaseStart=0;phaseEnd=0;
; SOURCE LINE # 603
CLR A
MOV R0,#buff+0CH
MOV @R0,A
INC R0
MOV @R0,A
; phaseStart1=0;phaseEnd1=0;
; SOURCE LINE # 604
INC R0
MOV @R0,A
INC R0
MOV @R0,A
; phaseStart2=0;phaseEnd2=0;
; SOURCE LINE # 605
INC R0
MOV @R0,A
INC R0
MOV @R0,A
;
; minhWidth=2048;
; SOURCE LINE # 607
MOV R0,#ival2
MOV @R0,#08H
INC R0
MOV @R0,A
;
; #if (DEBUGMSG>=2)
; printf(" \n\n ### PhaseHW Calib ");
; #endif
;
;
;
; for(phase = 0;phase < 32;phase++)
; SOURCE LINE # 615
MOV phase?453,A
?C0064:
; {
; SOURCE LINE # 616
; checkPowerOffButton(); //in phaseHWcalib
; SOURCE LINE # 617
LCALL checkPowerOffButton
;
; if (!(eepData.MascotFlag & FLAG_POWERSTATUS))
; SOURCE LINE # 619
MOV R0,#eepData+01BH
MOV A,@R0
JB ACC.0,$ + 6H
LJMP ?phaseHWCalibration?phaseHWcal_fail
; goto phaseHWcal_fail;
; SOURCE LINE # 620
?C0067:
;
; miscSetADCPhase(phase);
; SOURCE LINE # 622
MOV R7,phase?453
LCALL _miscSetADCPhase
; #if (DEBUGMSG>=3)
; printf("\n phase=%d",(unsigned int)phase);
; #endif
; /*
; RegByteOut(0xB0, 0x02); // Enable vertical calibration
; RegByteOut(0x00, 0x00); // Clear the calibration status reg
;
; if (!waitCalibReady(0x02))
; goto phaseHWcal_fail;
; */
;
; RegByteOut(0xB0, 0x04); // Enable horizontal calibration
; SOURCE LINE # 634
MOV R7,#0B0H
MOV R5,#04H
LCALL _RegByteOut
; RegByteOut(0x00, 0x00); // Clear the calibration status reg
; SOURCE LINE # 635
CLR A
MOV R7,A
MOV R5,A
LCALL _RegByteOut
;
; if (!waitCalibReady(0x04))
; SOURCE LINE # 637
MOV R7,#04H
LCALL _waitCalibReady
MOV A,R7
JNZ $ + 5H
LJMP ?phaseHWCalibration?phaseHWcal_fail
; goto phaseHWcal_fail;
; SOURCE LINE # 638
?C0069:
;
; RegDataIn(0xD3, buff, 5);
; SOURCE LINE # 640
MOV R7,#0D3H
MOV R3,#00H
MOV R2,#HIGH (buff)
MOV R1,#LOW (buff)
MOV ?_RegDataIn?BYTE+04H,#00H
MOV ?_RegDataIn?BYTE+05H,#05H
LCALL _RegDataIn
; RegDataIn(0xF9, buff+5, 5);
; SOURCE LINE # 641
MOV R7,#0F9H
MOV R3,#00H
MOV R2,#HIGH (buff+05H)
MOV R1,#LOW (buff+05H)
MOV ?_RegDataIn?BYTE+04H,#00H
MOV ?_RegDataIn?BYTE+05H,#05H
LCALL _RegDataIn
; hStart = (((unsigned int)buff[2]&0x07)<<8) + buff[0];
; SOURCE LINE # 642
MOV R0,#buff+02H
MOV A,@R0
ANL A,#07H
MOV R6,A
MOV R0,#buff
MOV A,@R0
MOV R4,#00H
ADD A,#00H
MOV R7,A
MOV A,R4
ADDC A,R6
MOV R6,A
MOV R0,#ival
MOV @R0,A
MOV R4,A
INC R0
MOV A,R7
MOV @R0,A
MOV R5,A
; hWidth = ((unsigned int)(buff[7]&0x70)<<4) + buff[6] - hStart + 1;
; SOURCE LINE # 643
MOV R0,#buff+07H
MOV A,@R0
ANL A,#070H
MOV B,#010H
MUL AB
MOV R7,A
DEC R0
MOV A,@R0
MOV R2,#00H
ADD A,R7
MOV R7,A
MOV A,R2
ADDC A,B
XCH A,R7
CLR C
SUBB A,R5
XCH A,R7
SUBB A,R4
XCH A,R7
ADD A,#01H
XCH A,R7
ADDC A,#00H
MOV R6,A
MOV R0,#ival1
MOV @R0,A
INC R0
MOV A,R7
MOV @R0,A
; #if (DEBUGMSG>=3)
; printf(" hStart = %d , hWidth = %d ",hStart,hWidth);
; #endif
;
; if (minhWidth > hWidth)
; SOURCE LINE # 648
MOV R0,#ival2
MOV A,@R0
MOV R4,A
INC R0
MOV A,@R0
MOV R5,A
SETB C
SUBB A,R7
MOV A,R4
SUBB A,R6
JC ?C0070
; {
; SOURCE LINE # 649
; minhWidth = hWidth;
; SOURCE LINE # 650
MOV R0,#ival1
MOV A,@R0
INC R0
MOV A,@R0
MOV R0,#ival2
MOV A,R6
MOV @R0,A
INC R0
MOV A,R7
MOV @R0,A
;
; if(phaseEnd == 0)
; SOURCE LINE # 652
MOV R0,#buff+0DH
MOV A,@R0
MOV R7,A
JNZ ?C0071
; {
; SOURCE LINE # 653
; phaseOkFlag = 1;
; SOURCE LINE # 654
SETB phaseOkFlag?450
; phaseStart = phase;
; SOURCE LINE # 655
DEC R0
MOV @R0,phase?453
; #if (DEBUGMSG >= 3)
; printf(" phaseStart = %d",(unsigned int)phaseStart);
; #endif
; }
; SOURCE LINE # 659
LJMP ?C0066
?C0071:
; else if (!phaseOkFlag1 && (phaseEnd != 0 ))
; SOURCE LINE # 660
JB phaseOkFlag1?451,?C0073
MOV A,R7
JZ ?C0073
; {
; SOURCE LINE # 661
; phaseOkFlag1 = 1;
; SOURCE LINE # 662
SETB phaseOkFlag1?451
; phaseStart1 = phase;
; SOURCE LINE # 663
MOV R0,#buff+0EH
MOV @R0,phase?453
; #if (DEBUGMSG >= 3)
; printf(" phaseStart1 = %d",(unsigned int)phaseStart1);
; #endif
; }
; SOURCE LINE # 667
LJMP ?C0066
?C0073:
; else if (!phaseOkFlag2 && (phaseEnd1 != 0 ))
; SOURCE LINE # 668
JNB phaseOkFlag2?452,$ + 6H
LJMP ?C0066
MOV R0,#buff+0FH
MOV A,@R0
JZ ?C0066
; {
; SOURCE LINE # 669
; phaseOkFlag2 = 1;
; SOURCE LINE # 670
SETB phaseOkFlag2?452
; phaseStart2 = phase;
; SOURCE LINE # 671
INC R0
MOV @R0,phase?453
; #if (DEBUGMSG >= 3)
; printf(" phaseStart2 = %d",(unsigned int)phaseStart2);
; #endif
; }
; SOURCE LINE # 675
; }
; SOURCE LINE # 676
SJMP ?C0066
?C0070:
; else if(minhWidth < hWidth)
; SOURCE LINE # 677
MOV R0,#ival1
MOV A,@R0
MOV R6,A
INC R0
MOV A,@R0
MOV R7,A
CLR C
MOV A,R5
SUBB A,R7
MOV A,R4
SUBB A,R6
JNC ?C0066
; {
; SOURCE LINE # 678
; minhWidth = hWidth;
; SOURCE LINE # 679
MOV R0,#ival2
MOV A,R6
MOV @R0,A
INC R0
MOV A,R7
MOV @R0,A
;
; if(phaseOkFlag && (phaseEnd == 0))
; SOURCE LINE # 681
JNB phaseOkFlag?450,?C0078
MOV R0,#buff+0DH
MOV A,@R0
JNZ ?C0078
; {
; SOURCE LINE # 682
; phaseEnd = phase-1;
; SOURCE LINE # 683
MOV A,phase?453
DEC A
MOV R7,A
MOV @R0,A
; #if (DEBUGMSG >= 3)
; printf(" phaseEnd = %d",(unsigned int)phaseEnd);
; #endif
; if(phaseEnd == phaseStart)
; SOURCE LINE # 687
DEC R0
MOV A,@R0
XRL A,R7
JNZ ?C0066
; {
; SOURCE LINE # 688
; phaseOkFlag = 0;
; SOURCE LINE # 689
CLR phaseOkFlag?450
; phaseStart = phaseEnd = 0;
; SOURCE LINE # 690
INC R0
MOV @R0,A
DEC R0
MOV @R0,A
;
; #if (DEBUGMSG >= 3)
; printf("\n Reset phaseStart & phaseEnd ");
; #endif
; }
; SOURCE LINE # 695
; }
; SOURCE LINE # 696
SJMP ?C0066
?C0078:
; else if (phaseOkFlag1 && (phaseStart1 != 0 ) && (phaseEnd1 == 0))
; SOURCE LINE # 697
JNB phaseOkFlag1?451,?C0081
MOV R0,#buff+0EH
MOV A,@R0
JZ ?C0081
INC R0
MOV A,@R0
JNZ ?C0081
; {
; SOURCE LINE # 698
; phaseEnd1 = phase-1;
; SOURCE LINE # 699
MOV A,phase?453
DEC A
MOV R7,A
MOV @R0,A
; #if (DEBUGMSG >= 3)
; printf(" phaseEnd1 = %d",(unsigned int)phaseEnd1);
; #endif
; if(phaseEnd1 == phaseStart1)
; SOURCE LINE # 703
DEC R0
MOV A,@R0
XRL A,R7
JNZ ?C0066
; {
; SOURCE LINE # 704
; phaseOkFlag1 = 0;
; SOURCE LINE # 705
CLR phaseOkFlag1?451
; phaseStart1 = phaseEnd1 = 0;
; SOURCE LINE # 706
INC R0
MOV @R0,A
DEC R0
MOV @R0,A
;
; #if (DEBUGMSG >= 3)
; printf("\n Reset phaseStart1 & phaseEnd1 ");
; #endif
; }
; SOURCE LINE # 711
; }
; SOURCE LINE # 712
SJMP ?C0066
?C0081:
; else if (phaseOkFlag2 && (phaseStart2 != 0 ) && (phaseEnd2 == 0))
; SOURCE LINE # 713
JNB phaseOkFlag2?452,?C0066
MOV R0,#buff+010H
MOV A,@R0
JZ ?C0066
INC R0
MOV A,@R0
JNZ ?C0066
; {
; SOURCE LINE # 714
; phaseEnd2 = phase-1;
; SOURCE LINE # 715
MOV A,phase?453
DEC A
MOV R7,A
MOV @R0,A
; #if (DEBUGMSG >= 3)
; printf(" phaseEnd2 = %d",(unsigned int)phaseEnd2);
; #endif
; if(phaseEnd2 == phaseStart2)
; SOURCE LINE # 719
DEC R0
MOV A,@R0
XRL A,R7
JNZ ?C0066
; {
; SOURCE LINE # 720
; phaseOkFlag2 = 0;
; SOURCE LINE # 721
CLR phaseOkFlag2?452
; phaseStart2 = phaseEnd2 = 0;
; SOURCE LINE # 722
INC R0
MOV @R0,A
DEC R0
MOV @R0,A
; #if (DEBUGMSG >= 3)
; printf("\n Reset phaseStart2 & phaseEnd2 ");
; #endif
; }
; SOURCE LINE # 726
; }
; SOURCE LINE # 727
; }
; SOURCE LINE # 728
; }
; SOURCE LINE # 729
?C0066:
INC phase?453
MOV A,phase?453
CLR C
SUBB A,#020H
JNC $ + 5H
LJMP ?C0064
?C0065:
;
; if (phaseOkFlag && (phaseEnd == 0)) phaseEnd = 31;
; SOURCE LINE # 731
JNB phaseOkFlag?450,?C0086
MOV R0,#buff+0DH
MOV A,@R0
JNZ ?C0086
MOV @R0,#01FH
?C0086:
; if (phaseOkFlag1 && (phaseEnd1 == 0)) phaseEnd1 = 31;
; SOURCE LINE # 732
JNB phaseOkFlag1?451,?C0087
MOV R0,#buff+0FH
MOV A,@R0
JNZ ?C0087
MOV @R0,#01FH
?C0087:
; if (phaseOkFlag2 && (phaseEnd2 == 0)) phaseEnd2 = 31;
; SOURCE LINE # 733
JNB phaseOkFlag2?452,?C0088
MOV R0,#buff+011H
MOV A,@R0
JNZ ?C0088
MOV @R0,#01FH
?C0088:
;
;
; if (phaseOkFlag & phaseOkFlag1 & phaseOkFlag2)
; SOURCE LINE # 736
MOV C,phaseOkFlag1?451
ANL C,phaseOkFlag?450
ANL C,phaseOkFlag2?452
JC $ + 5H
LJMP ?C0089
; {
; SOURCE LINE # 737
; if ((phaseStart == 0) && (phaseEnd2 == 31))
; SOURCE LINE # 738
MOV R0,#buff+0CH
MOV A,@R0
MOV R7,A
JNZ ?C0090
MOV R0,#buff+011H
MOV A,@R0
MOV R6,A
XRL A,#01FH
JNZ ?C0090
; {
; SOURCE LINE # 739
; if((phaseEnd-phaseStart+phaseEnd2-phaseStart2) >= (phaseEnd1-phaseStart1))
; SOURCE LINE # 740
CLR C
MOV R0,#buff+0DH
MOV A,@R0
SUBB A,R7
ADD A,R6
CLR C
MOV R0,#buff+010H
SUBB A,@R0
MOV R6,A
CLR C
MOV R1,#buff+0FH
MOV A,@R1
MOV R0,#buff+0EH
SUBB A,@R0
MOV R5,A
MOV A,R6
CLR C
SUBB A,R5
JC ?C0091
; {
; SOURCE LINE # 741
; phase = ((phaseStart2+phaseEnd)/2+16)& 0x1f;
; SOURCE LINE # 742
DEC R0
MOV A,@R0
MOV R6,A
MOV R0,#buff+010H
MOV A,@R0
MOV R5,A
ADD A,R6
MOV R4,A
CLR C
RRC A
ADD A,#010H
ANL A,#01FH
MOV phase?453,A
; phaseHwStart = phaseStart2;
; SOURCE LINE # 743
MOV phaseHwStart,R5
; phaseHwEnd = phaseEnd;
; SOURCE LINE # 744
MOV phaseHwEnd,R6
; }
; SOURCE LINE # 745
LJMP ?C0100
?C0091:
; else
; {
; SOURCE LINE # 747
; phase = (phaseEnd1 + phaseStart1)/2;
; SOURCE LINE # 748
MOV R0,#buff+0EH
MOV A,@R0
MOV R6,A
INC R0
MOV A,@R0
MOV R5,A
ADD A,R6
MOV R4,A
CLR C
RRC A
MOV phase?453,A
; phaseHwStart = phaseStart1;
; SOURCE LINE # 749
MOV phaseHwStart,R6
; phaseHwEnd = phaseEnd1;
; SOURCE LINE # 750
MOV phaseHwEnd,R5
; }
; SOURCE LINE # 751
; }
; SOURCE LINE # 752
LJMP ?C0100
?C0090:
; else if((phaseEnd-phaseStart) >= (phaseEnd1-phaseStart1))
; SOURCE LINE # 753
MOV R0,#buff+0EH
MOV A,@R0
MOV R6,A
INC R0
MOV A,@R0
CLR C
SUBB A,R6
MOV R6,A
CLR C
MOV R0,#buff+0DH
MOV A,@R0
SUBB A,R7
MOV R7,A
CLR C
SUBB A,R6
JC ?C0094
; {
; SOURCE LINE # 754
; if((phaseEnd-phaseStart) >= (phaseEnd2-phaseStart2))
; SOURCE LINE # 755
CLR C
MOV R1,#buff+011H
MOV A,@R1
MOV R0,#buff+010H
SUBB A,@R0
MOV R5,A
MOV A,R7
CLR C
SUBB A,R5
JC ?C0095
; {
; SOURCE LINE # 756
; phase = (phaseEnd + phaseStart)/2;
; SOURCE LINE # 757
MOV R0,#buff+0CH
MOV A,@R0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -