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

📄 rf_oper.lst

📁 holtek mouse usb asm. FW
💻 LST
📖 第 1 页 / 共 3 页
字号:
"File: RF_OPER.ASM   Holtek Cross-Assembler  Version 2.86      Page 1


   1  0000              INCLUDE DONGLE.INC


   2  0000              
   3  0000              PUBLIC	INIT_RF
   4  0000              PUBLIC	RF_CHANGE_TO_TX
   5  0000              PUBLIC	RF_CHANGE_TO_RX
   6  0000              PUBLIC	RF_REFILL_COMMAND
   7  0000              PUBLIC	RF_WAIT_DATA
   8  0000              PUBLIC	RF_REG_WRITE
   9  0000              PUBLIC	RF_REG_READ
  10  0000              PUBLIC	RF_FIFO_WRITE
  11  0000              PUBLIC	RF_FIFO_READ
  12  0000              
  13  0000              PUBLIC	RF_CHANNEL
  14  0000              PUBLIC	CHANNEL_INDEX
  15  0000              PUBLIC	RF_REG_ADDRESS
  16  0000              PUBLIC	RF_REG_DATA
  17  0000              
  18  0000              PUBLIC	TEST_RF
  19  0000              
  20  0000              PUBLIC	RF_KDATA_GOT
  21  0000              PUBLIC	RF_MDATA_GOT
  22  0000              EXTERN	TIME_COUNT			:BYTE
  23  0000              EXTERN	WRITE_FIFO2			:NEAR
  24  0000              EXTERN	WRITE_FIFO2X		:NEAR
  25  0000              EXTERN	WRITE_FIFO2XX		:NEAR
  26  0000              
  27  0000              EXTERN	WRITE_FIFO1			:NEAR
  28  0000              EXTERN	WRITE_FIFO1_ALLZERO	:NEAR
  29  0000              EXTERN	FIFO_WF				:BIT
  30  0000              EXTERN	FIFO_WF1			:BIT
  31  0000              EXTERN	NOT_BOOT_TYPE		:BIT
  32  0000              
  33  0000              EXTERN	NEXT_1_CHANNEL		:BYTE
  34  0000              EXTERN	NEXT_2_CHANNEL		:BYTE
  35  0000              EXTERN	NEXT_3_CHANNEL		:BYTE
  36  0000              EXTERN	NEXT_4_CHANNEL		:BYTE
  37  0000              EXTERN	NEXT_5_CHANNEL		:BYTE
  38  0000              
  39  0000              RFOPER_DATA	.SECTION 'DATA'
  40  0000              
  41  0000  00          RF_LCOUNT0			DB	?
  42  0001  00          RF_LCOUNT1			DB	?
  43  0002  00          RF_LCOUNT2			DB	?
  44  0003  00          RF_REG_ADDRESS		DB	?
  45  0004  00          RF_REG_DATA			DB	?
  46  0005  00          RF_DATALNG			DB	?
  47  0006              
  48  0006  00          RF_CHANNEL			DB	?
  49  0007  00          RF_FSP_COUNT		DB	?
  50  0008  00          RF_LAST_MSERIAL		DB	?
  51  0009  00          RF_LAST_KSERIAL		DB	?
  52  000A  00          RF_LAST_RSERIAL		DB	?
  53  000B              ;RF_BLOCK_GROUP		DB	?
  54  000B              
  55  000B  00          CHANNEL_INDEX		DB	?
  56  000C              
  57  000C  00          RF_NOMOUSE_CNT		DB	?
"File: RF_OPER.ASM   Holtek Cross-Assembler  Version 2.86      Page 2

  58  000D              
  59  000D              ;OLD_KEY			DB	?
  60  000D              ;OLD_X				DB	?
  61  000D              ;OLD_Y				DB	?
  62  000D              
  63  000D              ;KEY_XOR			DB	?
  64  000D              ;X_XOR				DB	?
  65  000D              ;Y_XOR				DB	?
  66  000D              ;MOUSE_OR			DB	?
  67  000D              
  68  000D  00          PER_CNT				DB	?
  69  000E  00          PER					DB	?
  70  000F  00          PERIOD_CNT			DB	?
  71  0010              
  72  0010  00          RF_MDATA_GOT		DBIT
  73  0010              RF_KDATA_GOT		DBIT
  74  0010              RF_MLINKED			DBIT
  75  0011              
  76  0010              MAKE_KEY	DBIT
  77  0011              
  78  0011  00          M_COUNT		DB	?
  79  0012  00          F_WRITE_FAIL_COUNT	DB	?
  80  0013  00          WAIT_NO_ALIVE_PACK_COUNT	DB	?
  81  0014              
  82  0000              REOPER_CODE	.SECTION 'CODE'
  83  0000              
  84  0000              TEST_RF:
  85  0000              ;================CONTINUES RF READ IN TEST===============
  86  0000              ;		MOV		A, 8
  87  0000              ;		MOV		RF_DATALNG, A
  88  0000              ;
  89  0000              ;	RUN_AGAIN:
  90  0000              ;		SET		TRRDY
  91  0000              ;
  92  0000              ;	WAIT:
  93  0000              ;		SNZ		TRINT
  94  0000              ;		JMP		WAIT
  95  0000              ;
  96  0000              ;		CLR		TRRDY
  97  0000              ;		CALL 	RF_FIFO_READ
  98  0000              ;		JMP		RUN_AGAIN
  99  0000              ;
 100  0000              ;==================END HERE=============================
 101  0000              
 102  0000              ;==============CONTINUES RF WRITE OUT TEST==============
 103  0000              ;
 104  0000              ;	RUN_AGAIN:
 105  0000              ;		MOV		A, RF_OUTBUFF
 106  0000              ;		MOV		MP0, A
 107  0000              ;
 108  0000              ;		MOV		A, 8
 109  0000              ;		MOV		RF_DATALNG, A
 110  0000              ;		MOV		RF_LCOUNT0, A
 111  0000              ;
 112  0000              ;	FILLLOOP:
 113  0000              ;		MOV		A, RF_LCOUNT0
 114  0000              ;		MOV		ID0, A
 115  0000              ;
 116  0000              ;		INC		MP0
 117  0000              ;		
"File: RF_OPER.ASM   Holtek Cross-Assembler  Version 2.86      Page 3

 118  0000              ;		SDZ		RF_LCOUNT0
 119  0000              ;		JMP		FILLLOOP
 120  0000              ;
 121  0000              ;		CALL	RF_FIFO_WRITE
 122  0000              ;	WAIT:
 123  0000              ;		SNZ		TRINT
 124  0000              ;		JMP		WAIT
 125  0000              ;
 126  0000              ;		JMP		RUN_AGAIN		
 127  0000              ;==============================END HERE==================
 128  0000  0003        		RET
 129  0001              
 130  0001              INIT_RF:
 131  0001  3693        		CLR		TRSDAT_CTRL
 132  0002  3013        		SET		TRINT_CTRL
 133  0003  3093        		SET		DRSSI_CTRL
 134  0004  3713        		CLR		SPIEN_CTRL
 135  0005  3712        		CLR		SPIEN
 136  0006  3593        		CLR		TRRDY_CTRL
 137  0007  3592        		CLR		TRRDY
 138  0008  3693        		CLR		TRSDAT_CTRL
 139  0009  3692        		CLR		TRSDAT
 140  000A  3613        		CLR		TRSCLK_CTRL
 141  000B  3612        		CLR		TRSCLK
 142  000C  3793        		CLR		PSB_CTRL
 143  000D  3392        		SET		PSB
 144  000E              
 145  000E  2000     R  		CALL	RF_RESET
 146  000F              
 147  000F  6600        		CALL	INIT_RF_REG
 148  0010              
 149  0010  0F02        		MOV		A, 002H
 150  0011  0080     R  		MOV		RF_CHANNEL, A
 151  0012              
 152  0012  0F0A        		MOV		A, 00AH
 153  0013  0080     R  		MOV		RF_DATALNG, A
 154  0014              
 155  0014  1F00     R  		CLR		RF_FSP_COUNT
 156  0015  3400     R  		CLR		RF_MLINKED	
 157  0016  1F00     R  		CLR		CHANNEL_INDEX
 158  0017              
 159  0017              		;CLR		RF_LAST_MSERIAL
 160  0017              		;CLR		RF_LAST_KSERIAL
 161  0017              ;		CLR		RF_BLOCK_GROUP
 162  0017              
 163  0017  1F00     R  		CLR		PERIOD_CNT
 164  0018  1F00     R  		CLR		PER_CNT
 165  0019  1F00     R  		CLR		PER
 166  001A              
 167  001A  0003        		RET
 168  001B              
 169  001B              RF_CHANGE_TO_RX:
 170  001B  0700     R  		MOV		A, RF_CHANNEL	;KIM
 171  001C  0080     R  		MOV		RF_REG_DATA, A
 172  001D  1F00     R  		CLR		RF_REG_ADDRESS
 173  001E  2000     R  		CALL	RF_REG_WRITE
 174  001F  0003        		RET
 175  0020              
 176  0020              RF_CHANGE_TO_TX:
 177  0020  0700     R  		MOV		A, RF_CHANNEL	;KIM
"File: RF_OPER.ASM   Holtek Cross-Assembler  Version 2.86      Page 4

 178  0021  0D80        		OR		A, 080H
 179  0022  0080     R  		MOV		RF_REG_DATA, A
 180  0023  1F00     R  		CLR		RF_REG_ADDRESS
 181  0024  2000     R  		CALL	RF_REG_WRITE
 182  0025  0003        		RET
 183  0026              
 184  0026              RF_REFILL_COMMAND:
 185  0026  0FB6        		MOV		A, RF_OUTBUFF
 186  0027  0081        		MOV		MP0, A
 187  0028              		
 188  0028  0FF0        		MOV		A, 0F0H					;0XF0
 189  0029  0080        		MOV		ID0, A
 190  002A  1481        		INC		MP0
 191  002B              
 192  002B  0700     R  		MOV		A, RF_FSP_COUNT			;FSP COUNING NUMBER
 193  002C  0080        		MOV		ID0, A
 194  002D  1481        		INC		MP0
 195  002E              
 196  002E              ;		CLR		ACC	
 197  002E              		
 198  002E              ;		MOV		ID0, A
 199  002E              ;		INC		MP0
 200  002E              
 201  002E  1F05        		CLR		ACC
 202  002F              
 203  002F  3C00     R  		SZ		RF_MDATA_GOT;RF_LAST_KSERIAL
 204  0030  0D03        		OR		A, 003H	;00CH
 205  0031              ;		CLR		RF_MDATA_GOT
 206  0031              ;===== 1011 ====
 207  0031  3C00     R  		SZ		RF_KDATA_GOT
 208  0032  0D0C        		OR		A, 00CH
 209  0033              ;		CLR		RF_KDATA_GOT
 210  0033              ;===============
 211  0033              ;		SZ		RF_LAST_MSERIAL
 212  0033              ;		OR		A, 003H
 213  0033              ;===== 1011 =====
 214  0033              ;		SZ		RF_LAST_KSERIAL
 215  0033              ;		OR		A, 00CH
 216  0033              ;================
 217  0033  0080        		MOV		ID0, A
 218  0034  1481        		INC		MP0
 219  0035              
 220  0035              ;		MOV		A, RF_LAST_MSERIAL;mask later
 221  0035              ;		MOV		ID0, A;mask later
 222  0035              ;		INC		MP0;mask later
 223  0035              ;
 224  0035              ;		MOV		A, RF_LAST_KSERIAL;mask later
 225  0035              ;		MOV		ID0, A;mask later
 226  0035              ;		INC		MP0;mask later
 227  0035              
 228  0035              ;		CLR		RF_LAST_MSERIAL
 229  0035              ;		CLR		RF_LAST_KSERIAL
 230  0035              
 231  0035  0700     E  		MOV		A, NEXT_1_CHANNEL;RF_BLOCK_GROUP
 232  0036  0080        		MOV		ID0, A
 233  0037  1481        		INC		MP0
 234  0038              
 235  0038  0700     E  		MOV		A, NEXT_2_CHANNEL;RF_BLOCK_GROUP
 236  0039  0080        		MOV		ID0, A
 237  003A  1481        		INC		MP0
"File: RF_OPER.ASM   Holtek Cross-Assembler  Version 2.86      Page 5

 238  003B              
 239  003B  0700     E  		MOV		A, NEXT_3_CHANNEL;RF_BLOCK_GROUP
 240  003C  0080        		MOV		ID0, A
 241  003D  1481        		INC		MP0
 242  003E              
 243  003E  0700     E  		MOV		A, NEXT_4_CHANNEL;RF_BLOCK_GROUP
 244  003F  0080        		MOV		ID0, A
 245  0040  1481        		INC		MP0
 246  0041              
 247  0041              ;;		MOV		A, NEXT_5_CHANNEL
 248  0041              ;		MOV		ID0, A
 249  0041              
 250  0041              
 251  0041  1480     R  		INC		RF_FSP_COUNT
 252  0042              
 253  0042  0003        		RET
 254  0043              
 255  0043              RF_WAIT_DATA:
 256  0043  3596        		CLR		LED_PIN
 257  0044  3192        		SET		TRRDY
 258  0045  340A        		CLR		CARRY
 259  0046              
 260  0046  3400     R  		CLR		RF_MDATA_GOT
 261  0047  3400     R  		CLR		RF_KDATA_GOT
 262  0048              
 263  0048              		;WAIT FOR RF_DATA FOR ABOUT 4MS
 264  0048              	RX_WAIT_TRINT:
 265  0048  3C12        		SZ		TRINT
 266  0049  2800     R  		JMP		GOT_RF_DATA
 267  004A              
 268  004A  0700     E  		MOV		A, TIME_COUNT		
 269  004B  0A1E        		SUB		A, 30;24
 270  004C  3C0A        		SZ		CARRY
 271  004D  2800     R  		JMP		EXIT_RF_WAIT_DATA
 272  004E  2800     R  		JMP		RX_WAIT_TRINT
 273  004F              
 274  004F              	GOT_RF_DATA:
 275  004F  3116        		SET		PC.2
 276  0050  2000     R  		CALL	RF_FIFO_READ
 277  0051  2000     R  		CALL	HANDLE_RF_DATA
 278  0052  3516        		CLR		PC.2
 279  0053              
 280  0053  2800     R  		JMP		RX_WAIT_TRINT
 281  0054              
 282  0054              	EXIT_RF_WAIT_DATA:
 283  0054  3592        		CLR		TRRDY
 284  0055              
 285  0055              	;============ ALIVE COUNT =========================
 286  0055  3800     R  		SNZ	MAKE_KEY
 287  0056  2800     R  		JMP	NORMAL_EXIT
 288  0057  0F0F        		MOV	A, 15
 289  0058  0400     R  		XOR	A, WAIT_NO_ALIVE_PACK_COUNT
 290  0059  1085        		SZ	ACC
 291  005A  2800     R  		JMP	WAIT_RELEASE
 292  005B  2800     R  		JMP	RELEASE_TIMEOUT
 293  005C              	WAIT_RELEASE:
 294  005C  1480     R  		INC	WAIT_NO_ALIVE_PACK_COUNT
 295  005D  2800     R  		JMP	NORMAL_EXIT
 296  005E              	RELEASE_TIMEOUT:
 297  005E  2000     E  		CALL	WRITE_FIFO1_ALLZERO
"File: RF_OPER.ASM   Holtek Cross-Assembler  Version 2.86      Page 6

 298  005F  1F00     R  		CLR	WAIT_NO_ALIVE_PACK_COUNT
 299  0060  3400     R  		CLR	MAKE_KEY
 300  0061              	NORMAL_EXIT:
 301  0061              	;==================================================
 302  0061              
 303  0061              		;SZ		NOT_BOOT_TYPE
 304  0061              		;JMP		NOT_20_YET
 305  0061              
 306  0061              		;SNZ		RF_KDATA_GOT
 307  0061              		;CALL	WRITE_FIFO1_ALLZERO
 308  0061              
 309  0061              ;		INC		RF_NOMOUSE_CNT
 310  0061              ;		MOV		A, 3
 311  0061              ;		XOR		A, RF_NOMOUSE_CNT
 312  0061              ;		SZ		ACC
 313  0061              ;		JMP		NOT_20_YET
 314  0061              ;
 315  0061  3800     R  		SNZ		RF_MDATA_GOT
 316  0062  3196        		SET		LED_PIN
 317  0063              
 318  0063              ;		SZ		RF_KDATA_GOT
 319  0063              ;		SET		PC.3
 320  0063              ;		CLR		RF_NOMOUSE_CNT
 321  0063              ;
 322  0063              ;	NOT_20_YET:
 323  0063  3800     R  		SNZ		RF_MDATA_GOT
 324  0064  1480     R  		INC		PER_CNT
 325  0065              		
 326  0065  1480     R  		INC		PERIOD_CNT
 327  0066  0FFF        		MOV		A, 255
 328  0067  0400     R  		XOR		A, PERIOD_CNT
 329  0068  1085        		SZ		ACC
 330  0069  2800     R  		JMP		NOT_100_CNT

⌨️ 快捷键说明

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