亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? scaleste.asm

?? VCP201_CODE is a FPGA source code.
?? ASM
字號:
;=================================================
; File name : ScaleSen.asm
; For PSX2 PF113X GamePad
; Input Data : 
; Return :
;=================================================
scalesen:
	movf	FSR,W		; save FSR
	movwf	sc_tmp3

	movlw	d'14'		;d'14'
	movwf	byte_count

	bsf	STATUS,RP0
	movf	sen_null,W
        bcf	STATUS,RP0
	movwf	vr_null

;	movlw	square_val
;	movwf	FSR
	
scalesen_lp1:
	movlw	HIGH fsr_in
        movwf	PCLATH
	movf	byte_count,W
        sublw	d'14'
	movwf	sc_tmp1		;X2
        addwf	sc_tmp1,W

	call	fsr_in
;	movf	INDF,W

	bcf	STATUS,RP0
	movwf	vr_value
	call	adj_sen
	sublw	0xff
      	movwf	vr_value

	movlw	HIGH fsr_out
        movwf	PCLATH

	movf	byte_count,W
        sublw	d'14'
        movwf	sc_tmp1
        addwf	sc_tmp1,F
        addwf	sc_tmp1,W


	call	fsr_out
	bcf	STATUS,RP0

	decfsz	byte_count,F
	goto	scalesen_lp1

	return
;	goto	convert_key



;right_data  ----------------------------------------
;	bsf	STATUS,RP0
;	movf  	right_val,W
 ;       bcf	STATUS,RP0
;	movwf   vr_value
 ;
;	call	adj_sen
 ;       sublw	0xff
  ;
;	bsf	STATUS,RP0
 ;
;	movwf  	right_val
 ;
;left_data  ----------------------------------------
;	movf  	left_val,W
;        bcf	STATUS,RP0
;	movwf   vr_value
 ;
;	call	adj_sen
 ;       sublw	0xff
  ;
;	bsf	STATUS,RP0
;	movwf  	left_val

;up_data -----------------------------------------
;	movf  	up_val,W
 ;       bcf	STATUS,RP0
;	movwf 	vr_value	;up_val -> vr_value
 ;
;;	call	adj_sen
  ;      sublw	0xff
   ;
;	bsf	STATUS,RP0
;	movwf 	up_val
 ;
;down_data -----------------------------------------
;	movf  	down_val,W
 ;       bcf	STATUS,RP0
;	movwf 	vr_value	;down_val -> vr_value
 ;
;	call	adj_sen
;	sublw	0xff
 ;
;	bsf	STATUS,RP0
;	movwf 	down_val

;TRI_data -------------------------------------------
;	movf	tri_val,W
 ;       bcf	STATUS,RP0
  ;      movwf	vr_value
   ;
;	call	adj_sen
 ;       sublw	0xff
  ;
;	bsf	STATUS,RP0
;	movwf  	tri_val

;O_data ----------------------------------------------
;	movf  	O_val,W
 ;       bcf	STATUS,RP0
;	movwf 	vr_value	;down_val -> vr_value
 ;
;	call	adj_sen
 ;       sublw	0xff
  ;
;	bsf	STATUS,RP0
;	movwf 	O_val
 ;
;X_data  ------------------------------------------
;	movf  	X_val,W
 ;       bcf	STATUS,RP0
;	movwf   vr_value
 ;;
;	call	adj_sen
 ;       sublw 	0xff
  ;
;	bsf	STATUS,RP0
;	movwf  	X_val

;SQUARE_data ----------------------------------------
;	movf  	square_val,W
 ;       bcf	STATUS,RP0
;	movwf   vr_value
 ;
;	call	adj_sen
 ;      	sublw	0xff                           
  ;
;	bsf	STATUS,RP0
;	movwf  	square_val

;L1_data ------------------------------------------
;	movf  	L1_val,W
 ;       bcf	STATUS,RP0
;	movwf   vr_value
 ;
;	call	adj_sen
 ;       sublw	0xff
  ;
;	bsf	STATUS,RP0
;;	movwf  	L1_val

;R1_data -------------------------------------------
;	movf  	R1_val,W
 ;       bcf	STATUS,RP0
;	movwf   vr_value
;;
;	call	adj_sen
;        sublw	0xff
 ;
;	bsf	STATUS,RP0
;	movwf  	R1_val

;L2_data --------------------------------------------
;	movf  	L2_val,W
 ;       bcf	STATUS,RP0
;	movwf   vr_value
 ;
;	call	adj_sen
 ;       sublw	0xff
  ;
;	bsf	STATUS,RP0
;	movwf  	L2_val

;R2_data -------------------------------------------
;	movf  	R2_val,W
;	bcf	STATUS,RP0        	
;	movwf   vr_value
 ;
;	call	adj_sen
;	sublw	0xff
 ;
;	bsf	STATUS,RP0
;	movwf  	R2_val

;E1_data -------------------------------------------
;	movf  	E1_val,W
 ;       bcf	STATUS,RP0
;	movwf   vr_value
 ;
;	call	adj_sen
;	sublw	0xff
;
;	bsf	STATUS,RP0
;;	movwf  	E1_val

;E2_data -------------------------------------------
;	movf  	E2_val,W
 ;       bcf	STATUS,RP0
;	movwf   vr_value
 ;
;	call	adj_sen
;	sublw	0xff
 ;
;	bsf	STATUS,RP0
;	movwf  	E2_val
;	bcf	STATUS,RP0
 ;
;	bcf	auto_led
;
;	return

;====================================
convert_key:
	movlw	0x3f
	iorwf	pb_raw1,F
	movlw	0xff
	movwf	pb_raw0	; clr up,dn,rt,lf

left_to_E2_bit:
	movlw	b'11111110'
	movwf	sc_tmp1
	movlw	d'6'
	movwf	sc_tmp2

        bsf	STATUS,RP0
	movlw	left_val
	movwf	FSR
	bcf	STATUS,RP0

pb_button_lp1:	
	movf	INDF,W
	btfsc	STATUS,Z
	goto	pb_button_next1
	
	movf	sc_tmp1,W
	andwf	pb_raw1,F
pb_button_next1:	
	incf	FSR,F
	bsf	STATUS,C
	rlf	sc_tmp1,F
	decfsz	sc_tmp2,F
	goto	pb_button_lp1
	
square_to_L2_bit:
	movlw	b'11111110'
	movwf	sc_tmp1

        bsf	STATUS,RP0
	movlw	square_val
	movwf	FSR
        bcf	STATUS,RP0

pb_button_lp2:	
	movf	INDF,W
	btfsc	STATUS,Z
	goto	pb_button_next2
	
	movf	sc_tmp1,W
	andwf	pb_raw0,F

pb_button_next2:	
	incf	FSR,F
	bsf	STATUS,C
	rlf	sc_tmp1,F
	btfsc	STATUS,C
	goto	pb_button_lp2

end_convert_key:
	bcf	STATUS,RP0

	movf	sc_tmp3,W	;restore FSR
	movwf	FSR		

	return


	
;===============================================
; Adject Senser value
; (Value - min x FF)/(null-min)=new value
; 0-----min--------value--------null----FF
; range:max_sen----------------null
;==============================================
adj_sen:
	subwf	vr_null,W	;Value > Null ?
        btfsc	STATUS,C    	;-ve ?
        goto	adj_senser1   	;No
	movlw	0xff     	;Yes. Out FF
        return

adj_senser1:
	btfss	STATUS,Z	;Value=Null?
        goto	adj_senser2   	;No
	movlw	0xff         	;Yes. Out FF
	return

adj_senser2:
	movlw	0x50		;MAX_SEN        	;Value < min?
	subwf	vr_value,W

	btfsc	STATUS,C	;-ve?
	goto	adj_senser3	;No
	movlw	0x00		;Yes. return min 00	
	return

adj_senser3:
	btfss	STATUS,Z      	;Value=min 0?
        goto	adj_senser4
        movlw	0x00   		;Yes, Out 00  	
	return

adj_senser4:
	movlw	0xff
        movwf	lo_byte

	movlw	0x50	;	MAX_SEN
	subwf	vr_value,W

        movwf	hi_byte
        call	umul

	movlw	0x50	;MAX_SEN
	subwf	vr_null,W

	bsf	STATUS,RP0
        movwf	divisor
        bcf	STATUS,RP0

        call	udiv
        movf	lo_byte,W

	return




;----------------------------------------
;set_sen_null
; reset the null value
; find the min value and save to sen_null
; if < 0x80, then preset to 0x80
;----------------------------------------
set_sen_null:
        call	read_sen

	movlw	0xff		; place max value to null
	movwf	vr_null
	
	movlw	square_val
	movwf	FSR
	
	movlw	PBMAX		;max no of key =14 count
	movwf	byte_count
	
sen_null_lp:
	movf	INDF,W
	subwf	vr_null,W	; compare with sen_null
	btfss	STATUS,C
	goto	sen_null_next
	movf	INDF,W
	movwf	vr_null		; > sen_null, place to sen_null

sen_null_next:
	incf	FSR,F	
	decfsz	byte_count,F
	goto	sen_null_lp

	movlw	MIN_OFFSET
	btfss	vr_null,7
	goto	null_too_small
	movlw	NULL_OFFSET	; OFFSET
	subwf	vr_null,W
null_too_small:
	bsf	STATUS,RP0
	movwf	sen_null
        bcf	STATUS,RP0
	
	return


;---------------------------------
;adj_40_sen:
;adjust the scale from command 40
;usage : 0 : x1.5,  	1 : x1.25
;	 2 : x1.125, 	3 : x1
;---------------------------------
adj_40_sen:
	movlw	square_val
	movwf	sc_tmp1
	movlw	ana_sen_1
	movwf	FSR	
;	movlw	PBMAX   	;14h count
	movlw	d'12'
	movwf	byte_count
	

adj_sen_lp1:
	movf	INDF,W
	movwf	sc_tmp3		; scale value
	btfsc	byte_count,0
	swapf	sc_tmp3,F
	movlw	0x0f
	andwf	sc_tmp3,F
	
	movf	FSR,W		; save FSR (scale val pointer)
	movwf	sc_tmp2

	movlw	HIGH map_sc_table
	movwf	PCLATH

	movf	byte_count,W
	sublw	d'12'		;PBMAX

	call	map_sc_table

	addwf	sc_tmp1,W
	movwf	FSR
	movf	INDF,W
	movwf	lo_byte		; vr_value

	movf	sc_tmp3,W
	btfss	STATUS,Z
	goto	chk_scale_1
	movlw	d'150'
	goto	scale_40_exe
	
chk_scale_1:
	movlw	0x01		; 01
	xorwf	sc_tmp3,W
	btfss	STATUS,Z
	goto	chk_scale_2
	movlw	d'125'
	goto	scale_40_exe
	
chk_scale_2:
	movlw	0x02		; 02
	xorwf	sc_tmp3,W
	btfss	STATUS,Z	
	goto	chk_scale_3
	movlw	d'113'
	goto	scale_40_exe
	
chk_scale_3:
	movlw	d'100'
	
scale_40_exe:
	movwf	hi_byte
	call	umul
        	
	bsf	STATUS,RP0
	movlw	d'100'
	movwf	divisor
        bcf	STATUS,RP0
	call	udiv

	movf	hi_byte,W
	movlw	0xff		; not affect Z
	btfsc	STATUS,Z
	movf	lo_byte,W
	movwf	INDF

scale_40_exe_done:	
	movf	sc_tmp2,W	; restore FSR
	movwf	FSR
	
	btfsc	byte_count,0	; inc scale-val ptr
	incf	FSR,F		; every two lp

test:	
	decfsz	byte_count,F
	goto	adj_sen_lp1

	return
	

map_sc_table:
	addwf	PCL,F
	retlw	d'10'		; right
	retlw	d'8'		; left
	retlw	d'11'		; up
	retlw	d'9'		; down
	retlw	d'3'		; triangle
	retlw	d'2'		; O
	retlw	d'1'		; X
	retlw	d'0'		; square
	retlw	d'5'		; L1
	retlw	d'4'		; R1
	retlw	d'6'		; R2
	retlw	d'7'		; L2
	retlw	d'0'		; dummy

	return

;--------------------------------------
fsr_in:
	addwf	PCL,F
	bsf	STATUS,RP0
        movf	square_val,W
        return
        movf	X_val,W
        return
        movf	O_val,W
        return
        movf	tri_val,W
        return
        movf	R1_val,W
        return
        movf	L1_val,W
        return
        movf	R2_val,W
        return
        movf	L2_val,W
        return
        movf	left_val,W
        return
        movf	down_val,W
        return
        movf	right_val,W
        return
        movf	up_val,W
        return
        movf	E1_val,W
        return
        movf	E2_val,W
        return

;-------------
fsr_out:
	addwf	PCL,F
	bsf	STATUS,RP0
        movf	vr_value,W
        movwf	square_val
	return
        movf	vr_value,W
        movwf	X_val
        return
        movf	vr_value,W
        movwf	O_val
	return
        movf	vr_value,W
        movwf	tri_val
	return
        movf	vr_value,W
        movwf	R1_val
        return
        movf	vr_value,W
        movwf	L1_val
	return
        movf	vr_value,W
        movwf	R2_val
        return
        movf	vr_value,W
        movwf	L2_val
        return
        movf	vr_value,W
        movwf	left_val
	return
        movf	vr_value,W
        movwf	down_val
	return
      	movf	vr_value,W
        movwf	right_val
	return
        movf	vr_value,W
        movwf	up_val
	return
        movf	vr_value,W
        movwf	E1_val
	return        	
        movf	vr_value,W
        movwf	E2_val
        return

;---------------------



?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩三级高清在线| 国产欧美日本一区视频| 麻豆精品精品国产自在97香蕉| 6080yy午夜一二三区久久| 精品欧美一区二区三区精品久久| 久久久综合精品| 顶级嫩模精品视频在线看| 国产精品麻豆久久久| 91麻豆产精品久久久久久| 亚洲综合男人的天堂| 欧美一区中文字幕| 国产精选一区二区三区| 国产精品网站在线观看| 色老综合老女人久久久| 精品婷婷伊人一区三区三| 秋霞午夜鲁丝一区二区老狼| 久久婷婷国产综合国色天香| 不卡一区二区三区四区| 亚洲午夜电影网| 精品国产免费人成电影在线观看四季 | 99久久综合国产精品| 亚洲最新视频在线观看| 日韩欧美国产三级电影视频| 成人网在线播放| 亚洲电影一区二区| 久久久天堂av| 色视频成人在线观看免| 奇米色777欧美一区二区| 日本一区二区三区在线不卡| 欧美性做爰猛烈叫床潮| 九色porny丨国产精品| 一区免费观看视频| 欧美一区二区三区视频免费播放| 国产精品456| 亚洲国产精品尤物yw在线观看| 精品裸体舞一区二区三区| 成人91在线观看| 青娱乐精品视频在线| 国产精品乱码一区二三区小蝌蚪| 91超碰这里只有精品国产| 国产成人精品免费视频网站| 91啪在线观看| 久久成人免费网| 亚洲码国产岛国毛片在线| 日韩欧美在线123| 色综合中文字幕国产 | 国产精品大尺度| 欧美一卡二卡三卡四卡| 不卡视频在线观看| 免费观看在线综合| 亚洲人成在线播放网站岛国| 精品久久久久久久久久久久久久久久久| www.欧美.com| 久久99精品久久久久婷婷| 人人狠狠综合久久亚洲| 国产精品美女久久久久久久久久久 | 欧美高清一级片在线观看| 欧美日韩精品电影| 成人美女视频在线观看| 免费观看久久久4p| 一区二区三区中文字幕在线观看| 奇米影视在线99精品| 亚洲日本护士毛茸茸| 久久综合色8888| 欧美精品久久天天躁| 91视视频在线观看入口直接观看www | 日韩精品一区二区三区在线观看| 一本一道久久a久久精品| 国产一区高清在线| 首页欧美精品中文字幕| 亚洲日本一区二区| 国产欧美精品一区| 欧美成人女星排名| 欧美日韩国产免费| 91片黄在线观看| 成人中文字幕合集| 国内精品久久久久影院薰衣草 | 日韩免费看的电影| 欧美日韩视频在线观看一区二区三区| 成a人片亚洲日本久久| 精品一区二区国语对白| 日韩国产欧美三级| 亚洲一区中文日韩| 亚洲六月丁香色婷婷综合久久| 日本一区二区免费在线| 欧美精品一区二区三区高清aⅴ| 欧美精品aⅴ在线视频| 亚洲免费在线视频一区 二区| 久久精品视频在线看| 精品剧情v国产在线观看在线| 6080国产精品一区二区| 欧美日韩一级视频| 精品视频999| 欧美日韩亚洲丝袜制服| 色偷偷一区二区三区| 91影院在线免费观看| eeuss鲁片一区二区三区在线观看| 国产成人精品网址| 国产精品一二三四五| 国产原创一区二区三区| 国内精品写真在线观看| 久久不见久久见中文字幕免费| 日韩av不卡一区二区| 日韩福利视频导航| 日产精品久久久久久久性色| 日韩电影免费一区| 日本视频免费一区| 免费成人av在线| 久久精品二区亚洲w码| 六月丁香综合在线视频| 久久不见久久见中文字幕免费| 久久精品国产精品青草| 国内久久精品视频| 国产jizzjizz一区二区| 成人爽a毛片一区二区免费| 成人黄色免费短视频| 99久久综合色| 在线观看区一区二| 欧美精品九九99久久| 日韩一级在线观看| 久久先锋影音av| 国产女人水真多18毛片18精品视频 | 色婷婷综合久久久中文字幕| 91年精品国产| 欧美四级电影网| 欧美一区二视频| 精品少妇一区二区三区视频免付费| 精品剧情v国产在线观看在线| 久久亚洲一级片| 中文字幕一区免费在线观看| 亚洲精品亚洲人成人网| 亚洲不卡一区二区三区| 蜜臀av一级做a爰片久久| 激情图片小说一区| 成人午夜精品在线| 色哟哟在线观看一区二区三区| 欧美日韩黄色影视| 精品国产自在久精品国产| 国产欧美精品一区二区色综合 | 国产综合久久久久久久久久久久| 国产成人免费在线观看| 91麻豆产精品久久久久久| 欧美日韩视频专区在线播放| 精品日本一线二线三线不卡| 国产欧美日韩在线| 亚洲靠逼com| 蜜臀av一区二区在线免费观看| 国产盗摄女厕一区二区三区| 色综合视频在线观看| 69p69国产精品| 欧美极品少妇xxxxⅹ高跟鞋| 亚洲精品菠萝久久久久久久| 青青草国产精品97视觉盛宴| 国产精品资源站在线| 色屁屁一区二区| 精品欧美一区二区三区精品久久| 国产精品乱码一区二三区小蝌蚪| 色香色香欲天天天影视综合网| 69精品人人人人| 国产精品色哟哟| 亚洲成人午夜影院| 国产成人在线视频免费播放| 欧美中文字幕亚洲一区二区va在线| 日韩美女一区二区三区四区| 国产精品萝li| 蜜桃传媒麻豆第一区在线观看| 亚洲午夜久久久久久久久电影院| 蜜桃av一区二区三区| www.亚洲色图| 欧美一区二区三区不卡| 国产精品视频一二三| 日日欢夜夜爽一区| www.66久久| 日韩欧美一区二区免费| 一区在线观看免费| 精品在线视频一区| 欧洲精品一区二区| 国产午夜亚洲精品理论片色戒 | 奇米影视一区二区三区| 99久久精品免费观看| 日韩一区二区在线观看视频播放| 自拍偷拍欧美精品| 精品一区二区三区不卡 | 欧美激情中文字幕| 日产国产欧美视频一区精品| 99视频有精品| 久久久精品天堂| 偷拍自拍另类欧美| 91在线视频在线| 久久午夜电影网| 日韩专区一卡二卡| 91浏览器打开| 国产色91在线| 蜜臂av日日欢夜夜爽一区| 色成年激情久久综合| 国产欧美日韩中文久久| 久草中文综合在线| 777久久久精品| 99国产精品久久| 国产午夜精品久久久久久免费视 |