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

📄 access.src

📁 Realtek 公司的RTD2523A芯片原厂source code,没有被修改过的。
💻 SRC
📖 第 1 页 / 共 4 页
字号:
;         }
			; SOURCE LINE # 567
;         while (--count);
			; SOURCE LINE # 568
	DJNZ 	R4,?C0030
; 
; 		RTDSendStop();
			; SOURCE LINE # 570
	LCALL	RTDSendStop
;     }
			; SOURCE LINE # 571
; }
			; SOURCE LINE # 572
?C0031:
	RET  	
; END OF _RTDRead

; 
; void RTDWrite(unsigned char data *array)

	RSEG  ?PR?_RTDWrite?ACCESS
_RTDWrite:
	USING	0
			; SOURCE LINE # 574
;---- Variable 'array?1262' assigned to Register 'R6' ----
	MOV  	R6,AR7
; {
			; SOURCE LINE # 575
?C0034:
;     unsigned char   len, m;
; 
;     do
;     {
			; SOURCE LINE # 579
;         if (0 == (array[0] & 0xfc))     return;
			; SOURCE LINE # 580
	MOV  	R0,AR6
	MOV  	A,@R0
	MOV  	R7,A
	ANL  	A,#0FCH
	JZ   	?C0036
?C0035:
; 
;         len     = array[0] - 3;
			; SOURCE LINE # 582
	MOV  	A,R7
	ADD  	A,#0FDH
;---- Variable 'len?1263' assigned to Register 'R4' ----
	MOV  	R4,A
;         array   = array + 1;
			; SOURCE LINE # 583
	INC  	R6
;         
;         bRTD_SCSB   = 0;
			; SOURCE LINE # 585
	CLR  	bRTD_SCSB
; 
;         if (BURST == array[0])
			; SOURCE LINE # 587
	MOV  	R0,AR6
	MOV  	A,@R0
	MOV  	R2,A
	XRL  	A,#02H
	JNZ  	?C0037
;         {
			; SOURCE LINE # 588
;             RTDSendAddr(array[1], 0, N_INC);
			; SOURCE LINE # 589
	MOV  	A,R0
	MOV  	R3,#01H
	LCALL	L?0155
; 
;             array   = array + 2;
			; SOURCE LINE # 591
	INC  	R6
	INC  	R6
;             m       = array[0];
			; SOURCE LINE # 592
	MOV  	R0,AR6
	MOV  	A,@R0
;---- Variable 'm?1264' assigned to Register 'R5' ----
	MOV  	R5,A
?C0040:
; 
;             do
;             {
			; SOURCE LINE # 595
;                 RTDSendByte(m);
			; SOURCE LINE # 596
	MOV  	R7,AR5
	LCALL	_RTDSendByte
;             }
			; SOURCE LINE # 597
;             while (--len);
			; SOURCE LINE # 598
	DJNZ 	R4,?C0040
; 
;             array   = array + 1;
			; SOURCE LINE # 600
	INC  	R6
;         }
			; SOURCE LINE # 601
	SJMP 	?C0041
?C0037:
;         else
;         {
			; SOURCE LINE # 603
;             RTDSendAddr(array[1], 0, array[0]);
			; SOURCE LINE # 604
	MOV  	A,R6
	MOV  	R3,AR2
	LCALL	L?0155
; 
;             array   = array + 2;
			; SOURCE LINE # 606
	INC  	R6
	INC  	R6
?C0044:
;             do
;             {
			; SOURCE LINE # 608
;                 RTDSendByte(*array++);
			; SOURCE LINE # 609
	MOV  	R7,AR6
	INC  	R6
	MOV  	R0,AR7
	MOV  	A,@R0
	MOV  	R7,A
	LCALL	_RTDSendByte
;             }
			; SOURCE LINE # 610
;             while (--len);
			; SOURCE LINE # 611
	DJNZ 	R4,?C0044
;         }
			; SOURCE LINE # 612
?C0041:
; 
; 		RTDSendStop();
			; SOURCE LINE # 614
	LCALL	RTDSendStop
;     }
			; SOURCE LINE # 615
;     while (1);
			; SOURCE LINE # 616
	SJMP 	?C0034
; }
			; SOURCE LINE # 617
?C0036:
	RET  	
; END OF _RTDWrite

; 
; void RTDCodeW(unsigned char code *array)

	RSEG  ?PR?_RTDCodeW?ACCESS
_RTDCodeW:
	USING	0
			; SOURCE LINE # 619
	MOV  	array?1365,R6
	MOV  	array?1365+01H,R7
; {
			; SOURCE LINE # 620
?C0047:
;     unsigned char   len, m;
; 
;     do
;     {
			; SOURCE LINE # 624
;         if (0 == (array[0] & 0xfc))     return;
			; SOURCE LINE # 625
	MOV  	DPL,array?1365+01H
	MOV  	DPH,array?1365
	CLR  	A
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	ANL  	A,#0FCH
	JZ   	?C0049
?C0048:
; 
;         len     = array[0] - 3;
			; SOURCE LINE # 627
	MOV  	A,R7
	ADD  	A,#0FDH
;---- Variable 'len?1366' assigned to Register 'R6' ----
	MOV  	R6,A
;         array   = array + 1;
			; SOURCE LINE # 628
	INC  	array?1365+01H
	MOV  	A,array?1365+01H
	JNZ  	?C0129
	INC  	array?1365
?C0129:
; 
;         bRTD_SCSB   = 0;
			; SOURCE LINE # 630
	CLR  	bRTD_SCSB
; 
;         if (BURST == array[0])
			; SOURCE LINE # 632
	MOV  	DPL,A
	MOV  	DPH,array?1365
	CLR  	A
	MOVC 	A,@A+DPTR
	MOV  	R4,A
	XRL  	A,#02H
	JNZ  	?C0050
;         {
			; SOURCE LINE # 633
;             RTDSendAddr(array[1], 0, N_INC);
			; SOURCE LINE # 634
	INC  	A
	MOV  	R3,#01H
; 
;             array   = array + 2;
			; SOURCE LINE # 636
	LCALL	L?0158
;             m       = array[0];
			; SOURCE LINE # 637
	MOV  	DPL,array?1365+01H
	MOV  	DPH,A
	CLR  	A
	MOVC 	A,@A+DPTR
;---- Variable 'm?1367' assigned to Register 'R5' ----
	MOV  	R5,A
?C0053:
;             
;             do
;             {
			; SOURCE LINE # 640
;                 RTDSendByte(m);
			; SOURCE LINE # 641
	MOV  	R7,AR5
	LCALL	_RTDSendByte
;             }
			; SOURCE LINE # 642
;             while (--len);
			; SOURCE LINE # 643
	DJNZ 	R6,?C0053
; 
;             array   = array + 1;
			; SOURCE LINE # 645
	INC  	array?1365+01H
	MOV  	A,array?1365+01H
	JNZ  	?C0130
	INC  	array?1365
?C0130:
;         }
			; SOURCE LINE # 646
	SJMP 	?C0054
?C0050:
;         else
;         {
			; SOURCE LINE # 648
;             RTDSendAddr(array[1], 0, array[0]);
			; SOURCE LINE # 649
	MOV  	DPL,array?1365+01H
	MOV  	DPH,array?1365
	MOV  	A,#01H
	MOV  	R3,AR4
; 
;             array   = array + 2;
			; SOURCE LINE # 651
	LCALL	L?0158
?C0057:
;             do
;             {
			; SOURCE LINE # 653
;                 RTDSendByte(*array++);
			; SOURCE LINE # 654
	INC  	array?1365+01H
	MOV  	A,array?1365+01H
	MOV  	R4,array?1365
	JNZ  	?C0131
	INC  	array?1365
?C0131:
	DEC  	A
	MOV  	DPL,A
	MOV  	DPH,R4
	CLR  	A
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_RTDSendByte
;             }
			; SOURCE LINE # 655
;             while (--len);
			; SOURCE LINE # 656
	DJNZ 	R6,?C0057
;         }
			; SOURCE LINE # 657
?C0054:
; 
; 		RTDSendStop();
			; SOURCE LINE # 659
	LCALL	RTDSendStop
;     }
			; SOURCE LINE # 660
;     while (1);
			; SOURCE LINE # 661
	LJMP 	?C0047
; }
			; SOURCE LINE # 662
?C0049:
	RET  	
; END OF _RTDCodeW

; 
; void RTDOSDW(unsigned char code *array)

	RSEG  ?PR?_RTDOSDW?ACCESS
_RTDOSDW:
	USING	0
			; SOURCE LINE # 664
;---- Variable 'len?1469' assigned to Register 'R4' ----
	MOV  	array?1468,R6
	MOV  	array?1468+01H,R7
; {
			; SOURCE LINE # 665
?C0060:
;     unsigned char   len;
;     do
;     {
			; SOURCE LINE # 668
;         if (array[0] == _end_)     return;
			; SOURCE LINE # 669
	LCALL	L?0147
	XRL  	A,#0FDH
	JNZ  	$ + 5H
	LJMP 	?C0062
?C0061:
; 		    
; 		bRTD_SCSB   = 0;
			; SOURCE LINE # 671
;         RTDSendAddr(OSD_ROW_90,WRITE,Y_INC);
			; SOURCE LINE # 672
	LCALL	L?0165
;         RTDSendByte(*array++);
			; SOURCE LINE # 673
	LCALL	L?0166
	JNZ  	?C0132
	INC  	array?1468
?C0132:
	LCALL	L?0153
;         RTDSendByte(*array++);
			; SOURCE LINE # 674
	LCALL	L?0166
	JNZ  	?C0133
	INC  	array?1468
?C0133:
	LCALL	L?0153
; 
; 		RTDSendStop();
			; SOURCE LINE # 676
; 
; 		bRTD_SCSB   = 0;
			; SOURCE LINE # 678
;         RTDSendAddr(OSD_DATA_92,WRITE,N_INC);
			; SOURCE LINE # 679
	LCALL	L?0163
?C0065:
;         do
; 		{
			; SOURCE LINE # 681
;            if(array[0] == _ext_)
			; SOURCE LINE # 682
	LCALL	L?0147
	XRL  	A,#0FCH
	JNZ  	?C0066
;            {
			; SOURCE LINE # 683
;                if(array[2] == _bb_)
			; SOURCE LINE # 684
	MOV  	A,#02H
	MOVC 	A,@A+DPTR
	XRL  	A,#0FEH
	JNZ  	?C0067
;                {
			; SOURCE LINE # 685
?C0070:
;                   do
;                   {
			; SOURCE LINE # 687
;                      len = array[3] - 1;
			; SOURCE LINE # 688
	MOV  	A,#03H
	LCALL	L?0149
	DEC  	A
	MOV  	R4,A
;                      RTDSendByte(_ext_ + array[1]);
			; SOURCE LINE # 689
	LCALL	L?0168
;                    }while(len--);
			; SOURCE LINE # 690
	MOV  	R7,AR4
	DEC  	R4
	MOV  	A,R7
	JNZ  	?C0070
; 
;                    array += 4;
			; SOURCE LINE # 692
	MOV  	A,#04H
;                }
			; SOURCE LINE # 693
	SJMP 	?C0140
?C0067:
;                else
;                {
			; SOURCE LINE # 695
;                    RTDSendByte(_ext_ + array[1]);
			; SOURCE LINE # 696
	MOV  	DPL,array?1468+01H
	MOV  	DPH,array?1468
	LCALL	L?0168
;                    array += 2;
			; SOURCE LINE # 697
	MOV  	A,#02H
?C0139:
;                }
			; SOURCE LINE # 698
;            }
			; SOURCE LINE # 699
	SJMP 	?C0140
?C0066:
;            else if(array[1] == _bb_)
			; SOURCE LINE # 700
	MOV  	DPL,array?1468+01H
	MOV  	DPH,array?1468
	MOV  	A,#01H
	MOVC 	A,@A+DPTR
	XRL  	A,#0FEH
	JNZ  	?C0073
; 		   {
			; SOURCE LINE # 701
; 		       len = array[2] - 1;
			; SOURCE LINE # 702
	MOV  	A,#02H
	MOVC 	A,@A+DPTR
	DEC  	A
	MOV  	R4,A
?C0076:
; 			   do
; 			   {
			; SOURCE LINE # 704
; 			      RTDSendByte(*array);
			; SOURCE LINE # 705
	LCALL	L?0148
	MOV  	R7,A
	LCALL	_RTDSendByte
; 			   }while(len--);
			; SOURCE LINE # 706
	MOV  	R7,AR4
	DEC  	R4
	MOV  	A,R7
	JNZ  	?C0076
; 		       
; 			   array += 3;
			; SOURCE LINE # 708
	MOV  	A,#03H
?C0140:
	ADD  	A,array?1468+01H
	MOV  	array?1468+01H,A
	CLR  	A
	ADDC 	A,array?1468
	MOV  	array?1468,A
; 		   }
			; SOURCE LINE # 709
	SJMP 	?C0063
?C0073:
; 		   else
; 		       RTDSendByte(*array++);
			; SOURCE LINE # 711
	LCALL	L?0167
	JNZ  	?C0134
	INC  	array?1468
?C0134:
	LCALL	L?0154
; 
; 
; 		}while(array[0] != _nn_);
			; SOURCE LINE # 714
?C0063:
	LCALL	L?0148
	CPL  	A
	JNZ  	?C0065
; 		array +=1 ;
			; SOURCE LINE # 715
	INC  	array?1468+01H
	MOV  	A,array?1468+01H
	JNZ  	?C0135
	INC  	array?1468
?C0135:
; 		RTDSendStop();
			; SOURCE LINE # 716
	LCALL	RTDSendStop
; 
;     }
			; SOURCE LINE # 718
;     while (1);
			; SOURCE LINE # 719
	LJMP 	?C0060
; }
			; SOURCE LINE # 720
?C0062:
	RET  	
; END OF _RTDOSDW

; 
; 
; void RTDSetByte(unsigned char addr, unsigned char val)

	RSEG  ?PR?_RTDSetByte?ACCESS
_RTDSetByte:
	USING	0
			; SOURCE LINE # 723
;---- Variable 'val?1571' assigned to Register 'R6' ----
	MOV  	R6,AR5
;---- Variable 'addr?1570' assigned to Register 'R7' ----
; {
			; SOURCE LINE # 724
;     // Set Write Address
;     bRTD_SCSB   = 0;   
			; SOURCE LINE # 726
	CLR  	bRTD_SCSB
; 
;     RTDSendAddr(addr, 0, 1);
			; SOURCE LINE # 728
	MOV  	R3,#01H
	CLR  	A
	MOV  	R5,A
	LCALL	_RTDSendAddr
; 
;     // Write one Byte
;     RTDSendByte(val);
			; SOURCE LINE # 731
	MOV  	R7,AR6
	LCALL	_RTDSendByte
; 
; 	RTDSendStop();
			; SOURCE LINE # 733
	LJMP 	RTDSendStop
; END OF _RTDSetByte

; }
; 
; void RTDSetBit(unsigned char addr, unsigned char and, unsigned char or)

	RSEG  ?PR?_RTDSetBit?ACCESS
_RTDSetBit:
	USING	0
			; SOURCE LINE # 736
;---- Variable 'addr?1672' assigned to Register 'R6' ----
	MOV  	R6,AR7
;---- Variable 'or?1674' assigned to Register 'R4' ----
	MOV  	R4,AR3
;---- Variable 'and?1673' assigned to Register 'R2' ----
	MOV  	R2,AR5
; {
			; SOURCE LINE # 737
;     // Set Read Address
;     bRTD_SCSB   = 0;
			; SOURCE LINE # 739
	CLR  	bRTD_SCSB
;     RTDSendAddr(addr, 1, 1);
			; SOURCE LINE # 740
	MOV  	R3,#01H
	MOV  	R5,#01H
	LCALL	_RTDSendAddr
; 
;     // Read 1 Byte
;     or      = (RTDGetByte() & and) | or;
			; SOURCE LINE # 743
	LCALL	RTDGetByte
	MOV  	A,R7
	ANL  	A,R2
	ORL  	AR4,A
; 
; 	RTDSendStop();
			; SOURCE LINE # 745
	LCALL	RTDSendStop
; 
;     // Set Write Address
;     bRTD_SCSB   = 0;   
			; SOURCE LINE # 748
	CLR  	bRTD_SCSB
;     RTDSendAddr(addr, 0, 1);
			; SOURCE LINE # 749
	MOV  	R7,AR6
	DEC  	R5
	LCALL	_RTDSendAddr
; 
;     // Write one Byte
;     RTDSendByte(or);
			; SOURCE LINE # 752
	MOV  	R7,AR4
	LCALL	_RTDSendByte
; 
; 	RTDSendStop();
			; SOURCE LINE # 754
	LJMP 	RTDSendStop
; END OF _RTDSetBit

; }
; 
; #if(VLC_COMPRESS)
; void Load_VLC_Font(unsigned char code *array, unsigned int start, unsigned int length)

	RSEG  ?PR?_Load_VLC_Font?ACCESS
_Load_VLC_Font:
	USING	0
			; SOURCE LINE # 758
	MOV  	array?1775,R6
	MOV  	array?1775+01H,R7
	MOV  	start?1776,R4
	MOV  	start?1776+01H,R5
	MOV  	length?1777,R2
	MOV  	length?1777+01H,R3
; {
			; SOURCE LINE # 759
; 	unsigned char n,m;
; 	unsigned char ucTemp[3];
; 	unsigned char idata ucTemp_VLD[3];
; 	
; #if(PARALLEL_PORT)
; //	unsigned char ucTemp1;
; #endif
; 
; 	start += FONT_BASE_ADDRESS;
			; SOURCE LINE # 768
	MOV  	A,#080H
	ADD  	A,start?1776+01H
	MOV  	start?1776+01H,A
	MOV  	A,#02H
	ADDC 	A,start?1776
	MOV  	start?1776,A
; 
; 	bRTD_SCSB   = 0;   
			; SOURCE LINE # 770
; 	RTDSendAddr(OSD_ROW_90, WRITE, Y_INC);
			; SOURCE LINE # 771
	LCALL	L?0165
; 	ucTemp[0] = (unsigned char)((start >> 8) & 0x000f) | 0xd0;
			; SOURCE LINE # 772
	MOV  	A,start?1776
	ANL  	A,#0FH
	ORL  	A,#0D0H
	MOV  	ucTemp?1780,A
; 	RTDSendByte(ucTemp[0]);
			; SOURCE LINE # 773
	MOV  	R7,A
	LCALL	_RTDSendByte
; 	ucTemp[0] = (unsigned char)(start & 0x00ff);
			; SOURCE LINE # 774
	MOV  	A,start?1776+01H
	MOV  	ucTemp?1780,A
; 	RTDSendByte(ucTemp[0]);
			; SOURCE LINE # 775
	MOV  	R7,ucTemp?1780
	LCALL	_RTDSendByte
; 
; 	RTDSendStop();
			; SOURCE LINE # 777
; 
; 	bRTD_SCSB   = 0;   
			; SOURCE LINE # 779
; 	RTDSendAddr(OSD_DATA_92, WRITE, N_INC);
			; SOURCE LINE # 780
	LCALL	L?0163
; 
; 	ucCnt = 0;
			; SOURCE LINE # 782
	CLR  	A
	MOV  	ucCnt,A
; 	uiCount = 0;
			; SOURCE LINE # 783
	MOV  	uiCount,A
	MOV  	uiCount+01H,A
; 	bBit = 0;
			; SOURCE LINE # 784
	CLR  	bBit
; 	ucByte_Temp = 0;
			; SOURCE LINE # 785
	MOV  	ucByte_Temp,A
?C0082:
; 
; 	do
; 	{
			; SOURCE LINE # 788
; 		for(m=0; m<9; m++)
			; SOURCE LINE # 789
	CLR  	A
	MOV  	m?1779,A
?C0083:
; 		{
			; SOURCE LINE # 790
; 
; 			ucTemp_VLD[0] = Get_VLD(array) << 4;
			; SOURCE LINE # 792
	MOV  	R7,array?1775+01H
	MOV  	R6,array?1775
	LCALL	_Get_VLD
	MOV  	R0,#LOW (ucTemp_VLD?1781)
; 			ucTemp_VLD[0] |= Get_VLD(array);
			; SOURCE LINE # 793
	LCALL	L?0145
	MOV  	R0,#LOW (ucTemp_VLD?1781)
; 			ucTemp_VLD[1] = Get_VLD(array) << 4;
			; SOURCE LINE # 794
	LCALL	L?0156
	MOV  	R0,#LOW (ucTemp_VLD?1781+01H)
; 			ucTemp_VLD[1] |= Get_VLD(array);
			; SOURCE LINE # 795
	LCALL	L?0145
	MOV  	R0,#LOW (ucTemp_VLD?1781+01H)
; 			ucTemp_VLD[2] = Get_VLD(array) << 4;
			; SOURCE LINE # 796
	LCALL	L?0156

⌨️ 快捷键说明

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