⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 access.src

📁 Realtek 公司的RTD2523A芯片原厂source code,没有被修改过的。
💻 SRC
📖 第 1 页 / 共 4 页
字号:
	MOV  	A,R7
	SWAP 	A
	ANL  	A,#0F0H
	MOV  	R0,#LOW (ucTemp_VLD?1781+02H)
	MOV  	@R0,A
; 			ucTemp_VLD[2] |= Get_VLD(array);
			; SOURCE LINE # 797
	MOV  	R7,array?1775+01H
	MOV  	R6,array?1775
	LCALL	_Get_VLD
	MOV  	R0,#LOW (ucTemp_VLD?1781+02H)
	MOV  	A,@R0
	ORL  	A,R7
	MOV  	R7,A
	MOV  	@R0,A
; 			
; 			//Rearrange the byte order
; 			ucTemp[0] = (ucTemp_VLD[1] << 4) | (ucTemp_VLD[2] & 0x0f);
			; SOURCE LINE # 800
	DEC  	R0
	MOV  	A,@R0
	MOV  	R6,A
	SWAP 	A
	ANL  	A,#0F0H
	MOV  	R5,A
	MOV  	A,R7
	ANL  	A,#0FH
	ORL  	A,R5
	MOV  	ucTemp?1780,A
; 			ucTemp[1] = (ucTemp_VLD[2] & 0xf0) | (ucTemp_VLD[0] & 0x0f);
			; SOURCE LINE # 801
	DEC  	R0
	MOV  	A,@R0
	MOV  	R5,A
	ANL  	A,#0FH
	MOV  	R4,A
	MOV  	A,R7
	ANL  	A,#0F0H
	ORL  	A,R4
	MOV  	ucTemp?1780+01H,A
; 			ucTemp[2] = (ucTemp_VLD[0] & 0xf0) | (ucTemp_VLD[1] >> 4);
			; SOURCE LINE # 802
	MOV  	A,R6
	SWAP 	A
	ANL  	A,#0FH
	MOV  	R7,A
	MOV  	A,R5
	ANL  	A,#0F0H
	ORL  	A,R7
	MOV  	ucTemp?1780+02H,A
; 
; 			for(n=0;n<3;n++)
			; SOURCE LINE # 804
;---- Variable 'n?1778' assigned to Register 'R7' ----
	CLR  	A
	MOV  	R7,A
?C0086:
; 			{
			; SOURCE LINE # 805
; #if(PARALLEL_PORT)
; 				
; #if(KINGMICE)
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x01);
; 				bRTD_SDIO_1 = (bit)(ucTemp[n] & 0x02);
; 				bRTD_SDIO_2 = (bit)(ucTemp[n] & 0x04);
; 				bRTD_SDIO_3 = (bit)(ucTemp[n] & 0x08);
; 				bRTD_SCLK   = 1;
; 				bRTD_SCLK   = 0;
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x10);
; 				bRTD_SDIO_1 = (bit)(ucTemp[n] & 0x20);
; 				bRTD_SDIO_2 = (bit)(ucTemp[n] & 0x40);
; 				bRTD_SDIO_3 = (bit)(ucTemp[n] & 0x80);
; 				bRTD_SCLK   = 1;
; 				bRTD_SCLK   = 0;
; 				bRTD_SDIO_0 = 1;
; 				bRTD_SDIO_1 = 1;
; 				bRTD_SDIO_2 = 1;
; 				bRTD_SDIO_3 = 1;
; 				bRTD_SCLK   = 1;
; #else
; 				ucTemp1 = P0 & 0xf0;
; 
; 				P0 = ucTemp1 | (ucTemp[n] & 0x0f);
; 				bRTD_SCLK   = 1;
; 				bRTD_SCLK   = 0;
; 				P0 = ucTemp1 | (ucTemp[n] >> 4);
; 				bRTD_SCLK   = 1;
; 				bRTD_SCLK   = 0;
; 				P0 = ucTemp1 | 0x0f;
; 				bRTD_SCLK   = 1;
; #endif
; 
; #else
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x01);
			; SOURCE LINE # 840
	MOV  	A,#LOW (ucTemp?1780)
	ADD  	A,R7
	MOV  	R0,A
	MOV  	A,@R0
	MOV  	R6,A
	RRC  	A
; 				bRTD_SCLK   = 1;
			; SOURCE LINE # 841
; 				bRTD_SCLK   = 0;
			; SOURCE LINE # 842
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x02);
			; SOURCE LINE # 843
	MOV  	A,R6
; 				bRTD_SCLK   = 1;
			; SOURCE LINE # 844
; 				bRTD_SCLK   = 0;
			; SOURCE LINE # 845
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x04);
			; SOURCE LINE # 846
; 				bRTD_SCLK   = 1;
			; SOURCE LINE # 847
; 				bRTD_SCLK   = 0;
			; SOURCE LINE # 848
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x08);
			; SOURCE LINE # 849
; 				bRTD_SCLK   = 1;
			; SOURCE LINE # 850
; 				bRTD_SCLK   = 0;
			; SOURCE LINE # 851
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x10);
			; SOURCE LINE # 852
; 				bRTD_SCLK   = 1;
			; SOURCE LINE # 853
; 				bRTD_SCLK   = 0;
			; SOURCE LINE # 854
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x20);
			; SOURCE LINE # 855
; 				bRTD_SCLK   = 1;
			; SOURCE LINE # 856
; 				bRTD_SCLK   = 0;
			; SOURCE LINE # 857
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x40);
			; SOURCE LINE # 858
; 				bRTD_SCLK   = 1;
			; SOURCE LINE # 859
; 				bRTD_SCLK   = 0;
			; SOURCE LINE # 860
; 				bRTD_SDIO_0 = (bit)(ucTemp[n] & 0x80);
			; SOURCE LINE # 861
; 				bRTD_SCLK   = 1;
			; SOURCE LINE # 862
; 				bRTD_SCLK   = 0;
			; SOURCE LINE # 863
	LCALL	L?0142
; 				bRTD_SDIO_0 = 1;
			; SOURCE LINE # 864
	SETB 	bRTD_SDIO_0
; 				bRTD_SCLK   = 1;
			; SOURCE LINE # 865
	SETB 	bRTD_SCLK
; #endif
; 			}
			; SOURCE LINE # 867
	INC  	R7
	CJNE 	R7,#03H,?C0086
; 		}
			; SOURCE LINE # 868
?C0085:
	INC  	m?1779
	MOV  	A,m?1779
	CLR  	C
	SUBB 	A,#09H
	JC   	?C0083
; 	}
			; SOURCE LINE # 869
?C0080:
; 	while (--length);
			; SOURCE LINE # 870
	MOV  	A,length?1777+01H
	DEC  	length?1777+01H
	JNZ  	?C0136
	DEC  	length?1777
?C0136:
	DEC  	A
	ORL  	A,length?1777
	JZ   	$ + 5H
	LJMP 	?C0082
; 
; 	RTDSendStop();
			; SOURCE LINE # 872
	LJMP 	RTDSendStop
; 	
; }
			; SOURCE LINE # 874
L?0145:
	MOV  	A,R7
	SWAP 	A
	ANL  	A,#0F0H
	MOV  	@R0,A
	MOV  	R7,array?1775+01H
	MOV  	R6,array?1775
	LCALL	_Get_VLD
	RET  	
L?0156:
	MOV  	A,@R0
	ORL  	A,R7
	MOV  	@R0,A
	MOV  	R7,array?1775+01H
	MOV  	R6,array?1775
	LCALL	_Get_VLD
	RET  	
; END OF _Load_VLC_Font

; 
; unsigned char Get_VLD(unsigned char code *array)

	RSEG  ?PR?_Get_VLD?ACCESS
_Get_VLD:
	USING	0
			; SOURCE LINE # 876
	MOV  	array?1882,R6
	MOV  	array?1882+01H,R7
; {
			; SOURCE LINE # 877
; 	unsigned char data ucZero_Cnt = 0;
			; SOURCE LINE # 878
	CLR  	A
	MOV  	ucZero_Cnt?1883,A
; 	bit bSec_Part = 0;
			; SOURCE LINE # 879
	CLR  	bSec_Part?1884
?C0090:
; 	
; 	while(1)
			; SOURCE LINE # 881
; 	{
			; SOURCE LINE # 882
; 		if( ucCnt == 0 )
			; SOURCE LINE # 883
	MOV  	A,ucCnt
	JNZ  	?C0093
; 		{
			; SOURCE LINE # 884
; 			ucByte_Temp = *(array + uiCount);
			; SOURCE LINE # 885
	MOV  	A,array?1882+01H
	ADD  	A,uiCount+01H
	MOV  	DPL,A
	MOV  	A,array?1882
; 			ucCnt = 0x80;
			; SOURCE LINE # 886
; 			uiCount++;
			; SOURCE LINE # 887
	LCALL	L?0161
	JNZ  	?C0137
	INC  	uiCount
?C0137:
; 		}
			; SOURCE LINE # 888
?C0093:
; 
; 		while( ucCnt > 0 )
			; SOURCE LINE # 890
	MOV  	A,ucCnt
	SETB 	C
	SUBB 	A,#00H
	JC   	?C0090
; 		{
			; SOURCE LINE # 891
; 			bBit = (bit)(ucByte_Temp & ucCnt);
			; SOURCE LINE # 892
; 			ucCnt >>= 1;
			; SOURCE LINE # 893
	LCALL	L?0162
; 
; 			if( (bBit) && (bSec_Part == 0) )
			; SOURCE LINE # 895
	JNB  	bBit,?C0095
	JB   	bSec_Part?1884,?C0095
; 			{
			; SOURCE LINE # 896
; 				bSec_Part = 1;
			; SOURCE LINE # 897
	SETB 	bSec_Part?1884
; 			}
			; SOURCE LINE # 898
	SJMP 	?C0096
?C0095:
; 			else	
; 			{
			; SOURCE LINE # 900
; 				ucZero_Cnt++;
			; SOURCE LINE # 901
	INC  	ucZero_Cnt?1883
; 			}
			; SOURCE LINE # 902
?C0096:
; 
; 			if( bSec_Part == 1 )
			; SOURCE LINE # 904
	JNB  	bSec_Part?1884,?C0093
; 			{
			; SOURCE LINE # 905
; 				switch(ucZero_Cnt)
			; SOURCE LINE # 906
	MOV  	A,ucZero_Cnt?1883
	DEC  	A
	JZ   	?C0101
	DEC  	A
	JZ   	?C0104
	DEC  	A
	JZ   	?C0107
	DEC  	A
	JZ   	?C0110
	DEC  	A
	JZ   	?C0121
	ADD  	A,#05H
	JNZ  	?C0093
; 				{
			; SOURCE LINE # 907
; 					case 0:
			; SOURCE LINE # 908
?C0099:
; 						bSec_Part = 0;
			; SOURCE LINE # 909
	CLR  	bSec_Part?1884
; 						ucZero_Cnt = 0;
			; SOURCE LINE # 910
	CLR  	A
	MOV  	ucZero_Cnt?1883,A
; 						return 0;
			; SOURCE LINE # 911
	MOV  	R7,A
	RET  	
; 	
; 					case 1:
			; SOURCE LINE # 913
?C0101:
; 						Getbit(array);
			; SOURCE LINE # 914
	LCALL	L?0144
; 						bSec_Part = 0;
			; SOURCE LINE # 915
	CLR  	bSec_Part?1884
; 						ucZero_Cnt = 0;
			; SOURCE LINE # 916
	CLR  	A
	MOV  	ucZero_Cnt?1883,A
; 
; 						if(!bBit)
			; SOURCE LINE # 918
	JB   	bBit,?C0102
; 						{
			; SOURCE LINE # 919
; 							return 1;
			; SOURCE LINE # 920
	MOV  	R7,#01H
	RET  	
; 						}
			; SOURCE LINE # 921
?C0102:
; 						else
; 						{
			; SOURCE LINE # 923
; 							return 15;
			; SOURCE LINE # 924
	MOV  	R7,#0FH
	RET  	
; 						}
			; SOURCE LINE # 925
; 
; 					case 2:
			; SOURCE LINE # 927
?C0104:
; 						Getbit(array);
			; SOURCE LINE # 928
	LCALL	L?0144
; 						bSec_Part = 0;
			; SOURCE LINE # 929
	CLR  	bSec_Part?1884
; 						ucZero_Cnt = 0;
			; SOURCE LINE # 930
	CLR  	A
	MOV  	ucZero_Cnt?1883,A
; 						
; 						if(!bBit)
			; SOURCE LINE # 932
	JB   	bBit,?C0105
; 						{
			; SOURCE LINE # 933
; 							return 2;
			; SOURCE LINE # 934
	MOV  	R7,#02H
	RET  	
; 						}
			; SOURCE LINE # 935
?C0105:
; 						else
; 						{
			; SOURCE LINE # 937
; 							return 8;
			; SOURCE LINE # 938
	MOV  	R7,#08H
	RET  	
; 						}
			; SOURCE LINE # 939
; 
; 					case 3:
			; SOURCE LINE # 941
?C0107:
; 						Getbit(array);
			; SOURCE LINE # 942
	LCALL	L?0146
; 						bSec_Part = 0;
			; SOURCE LINE # 943
	CLR  	bSec_Part?1884
; 						ucZero_Cnt = 0;
			; SOURCE LINE # 944
	CLR  	A
	MOV  	ucZero_Cnt?1883,A
; 
; 						if(!bBit)
			; SOURCE LINE # 946
	JB   	bBit,?C0108
; 						{
			; SOURCE LINE # 947
; 							return 12;
			; SOURCE LINE # 948
	MOV  	R7,#0CH
	RET  	
; 						}
			; SOURCE LINE # 949
?C0108:
; 						else
; 						{
			; SOURCE LINE # 951
; 							return 7;
			; SOURCE LINE # 952
	MOV  	R7,#07H
	RET  	
; 						}
			; SOURCE LINE # 953
; 
; 					case 4:
			; SOURCE LINE # 955
?C0110:
; 						Getbit(array);
			; SOURCE LINE # 956
	LCALL	L?0146
; 						bSec_Part = 0;
			; SOURCE LINE # 957
	CLR  	bSec_Part?1884
; 						ucZero_Cnt = 0;
			; SOURCE LINE # 958
	CLR  	A
	MOV  	ucZero_Cnt?1883,A
; 
; 						if(bBit)
			; SOURCE LINE # 960
	JNB  	bBit,?C0111
; 						{
			; SOURCE LINE # 961
; 							Getbit(array);
			; SOURCE LINE # 962
	LCALL	L?0150
; 
; 							if(!bBit)
			; SOURCE LINE # 964
	JB   	bBit,?C0112
; 							{
			; SOURCE LINE # 965
; 								return 4;
			; SOURCE LINE # 966
	MOV  	R7,#04H
	RET  	
; 							}
			; SOURCE LINE # 967
?C0112:
; 							else
; 							{
			; SOURCE LINE # 969
; 								return 9;
			; SOURCE LINE # 970
	MOV  	R7,#09H
	RET  	
; 							}
			; SOURCE LINE # 971
; 						}
			; SOURCE LINE # 972
?C0111:
; 						else
; 						{
			; SOURCE LINE # 974
; 							Getbit(array);
			; SOURCE LINE # 975
	LCALL	L?0150
; 	
; 							if(!bBit)
			; SOURCE LINE # 977
	JB   	bBit,?C0115
; 							{
			; SOURCE LINE # 978
; 								Getbit(array);
			; SOURCE LINE # 979
	LCALL	L?0157
; 
; 								if(!bBit)
			; SOURCE LINE # 981
	JB   	bBit,?C0116
; 								{
			; SOURCE LINE # 982
; 									return 3;
			; SOURCE LINE # 983
	MOV  	R7,#03H
	RET  	
; 								}
			; SOURCE LINE # 984
?C0116:
; 								else
; 								{
			; SOURCE LINE # 986
; 									return 11;
			; SOURCE LINE # 987
	MOV  	R7,#0BH
	RET  	
; 								}
			; SOURCE LINE # 988
; 
; 							}
			; SOURCE LINE # 990
?C0115:
; 							else
; 							{
			; SOURCE LINE # 992
; 								Getbit(array);
			; SOURCE LINE # 993
	LCALL	L?0157
; 								
; 								if(!bBit)
			; SOURCE LINE # 995
	JB   	bBit,?C0119
; 								{
			; SOURCE LINE # 996
; 									return 10;
			; SOURCE LINE # 997
	MOV  	R7,#0AH
	RET  	
; 								}
			; SOURCE LINE # 998
?C0119:
; 								else
; 								{
			; SOURCE LINE # 1000
; 									return 5;
			; SOURCE LINE # 1001
	MOV  	R7,#05H
	RET  	
; 								}
			; SOURCE LINE # 1002
; 
; 							}
			; SOURCE LINE # 1004
; 						}
			; SOURCE LINE # 1005
; 
; 					case 5:
			; SOURCE LINE # 1007
?C0121:
; 						Getbit(array);
			; SOURCE LINE # 1008
	LCALL	L?0164
; 						bSec_Part = 0;
			; SOURCE LINE # 1009
	CLR  	bSec_Part?1884
; 						ucZero_Cnt = 0;
			; SOURCE LINE # 1010
	CLR  	A
	MOV  	ucZero_Cnt?1883,A
; 
; 						if(bBit)
			; SOURCE LINE # 1012
	JNB  	bBit,?C0122
; 						{
			; SOURCE LINE # 1013
; 							Getbit(array);
			; SOURCE LINE # 1014
	LCALL	L?0164
; 
; 							if(!bBit)
			; SOURCE LINE # 1016
	JB   	bBit,?C0123
; 							{
			; SOURCE LINE # 1017
; 								return 14;
			; SOURCE LINE # 1018
	MOV  	R7,#0EH
	RET  	
; 							}
			; SOURCE LINE # 1019
?C0123:
; 							else
; 							{
			; SOURCE LINE # 1021
; 								return 13;
			; SOURCE LINE # 1022
	MOV  	R7,#0DH
	RET  	
; 							}
			; SOURCE LINE # 1023
; 						}
			; SOURCE LINE # 1024
?C0122:
; 						else
; 						{
			; SOURCE LINE # 1026
; 							Getbit(array);
			; SOURCE LINE # 1027
	MOV  	R7,array?1882+01H
	MOV  	R6,array?1882
	LCALL	_Getbit
; 							if(bBit)
			; SOURCE LINE # 1028
	JB   	bBit,$ + 6H
	LJMP 	?C0093
; 							{
			; SOURCE LINE # 1029
; 								return 6;
			; SOURCE LINE # 1030
	MOV  	R7,#06H
; 							}
			; SOURCE LINE # 1031
; 						}
			; SOURCE LINE # 1032
; 				}
			; SOURCE LINE # 1033
; 			}
			; SOURCE LINE # 1034
; 		}
			; SOURCE LINE # 1035
; 	}
			; SOURCE LINE # 1036
; }
			; SOURCE LINE # 1037
?C0100:
	RET  	
L?0144:
	MOV  	R7,array?1882+01H
	MOV  	R6,array?1882
	LCALL	_Getbit
	RET  	
L?0146:
	MOV  	R7,array?1882+01H
	MOV  	R6,array?1882
	LCALL	_Getbit
	RET  	
L?0150:
	MOV  	R7,array?1882+01H
	MOV  	R6,array?1882
	LCALL	_Getbit
	RET  	
L?0157:
	MOV  	R7,array?1882+01H
	MOV  	R6,array?1882
	LCALL	_Getbit
	RET  	
L?0164:
	MOV  	R7,array?1882+01H
	MOV  	R6,array?1882
	LCALL	_Getbit
	RET  	
; END OF _Get_VLD

; 
; void Getbit(unsigned char code *array)

	RSEG  ?PR?_Getbit?ACCESS
_Getbit:
			; SOURCE LINE # 1039
;---- Variable 'array?1985' assigned to Register 'DPTR' ----
	MOV  	DPL,R7
	MOV  	DPH,R6
; {
			; SOURCE LINE # 1040
; 	if( ucCnt == 0 )
			; SOURCE LINE # 1041
	MOV  	A,ucCnt
	JNZ  	?C0127
; 	{
			; SOURCE LINE # 1042
; 		ucByte_Temp = *(array + uiCount);
			; SOURCE LINE # 1043
	MOV  	A,DPL
	ADD  	A,uiCount+01H
	MOV  	DPL,A
	MOV  	A,DPH
; 		ucCnt = 0x80;
			; SOURCE LINE # 1044
; 		uiCount++;
			; SOURCE LINE # 1045
	LCALL	L?0161
	JNZ  	?C0138
	INC  	uiCount
?C0138:
; 	}
			; SOURCE LINE # 1046
?C0127:
; 							
; 	bBit = (bit)(ucByte_Temp & ucCnt);
			; SOURCE LINE # 1048
; 	ucCnt >>= 1;
			; SOURCE LINE # 1049
	LCALL	L?0162
; 
; }
			; SOURCE LINE # 1051
	RET  	
; END OF _Getbit

	END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -