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

📄 hid_keyboard.xap

📁 CSR 的键盘模块
💻 XAP
📖 第 1 页 / 共 5 页
字号:
;# Function pattern *movqi8 used[0] = 4 total = 4;# Function pattern *movhi used[3] = 2 total = 2;# Function pattern *addqi2 used[0] = 10 used[2] = 1 total = 11;# Function pattern *andqi3 used[0] = 6 total = 6;# Function pattern *xorqi3 used[0] = 2 total = 2;# Function pattern *subqi3 used[1] = 1 total = 1;# Function pattern *mulqi3_const used[0] = 1 total = 1;# Function pattern *lshrqi3 used[0] = 7 total = 7;# Function pattern one_cmplqi2 used[0] = 1 total = 1;# Function pattern *zero_extendqihi2_1 used[0] = 3 total = 3;# Function pattern jump used[0] = 10 total = 10;# Function pattern *call1 used[0] = 13 total = 13;# Function pattern *call_value1 used[0] = 10 total = 10;# Function pattern movstrqi+3 used[0] = 8 used[1] = 2 total = 10;# Function pattern movstrqi+4 used[1] = 1 total = 1;# Function pattern movstrqi+5 used[0] = 13 total = 13	MODULE	hid_keyboard_events	.LARGE ; really small mode but we need space for debug symbols; GNU C version 3.3.3 (BlueLab 3.6.2-release); 	compiled by GNU C version 3.2.3 (mingw special 20030504-1).;# options passed:  -IC:/BlueLab/tools/include -iprefix -isystem;# -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=3 -DHW_DEV_1163A;# -DNO_DEBUG -DHID_DEVICE -MD -MQ -mno-leaf-optim -ansi -auxbase-strip -g;# -O -pedantic -Wall -Wmissing-prototypes -Wstrict-prototypes;# -Wsign-compare -Wredundant-decls -Werror -ansi -fno-builtin-memcpy;# options enabled:  -fdefer-pop -fthread-jumps -fpeephole -ffunction-cse;# -fkeep-static-consts -fpcc-struct-return -fgcse-lm -fgcse-sm;# -floop-optimize -fcrossjumping -fif-conversion -fif-conversion2;# -fsched-interblock -fsched-spec -fbranch-count-reg -fcprop-registers;# -fcommon -fgnu-linker -fargument-alias -fmerge-constants;# -fzero-initialized-in-bss -fleading-underscore -fident;# -fguess-branch-probability -fmath-errno -ftrapping-math -mpeephole;# -mquiet-mode -minline-block-copy-mode -menhanced-mode -mload-cache-mode;# -mbitfield-mode -mtest4	.ENHANCED;# begin scan referenced symbols;#(clobber:QI (reg:QI 0 AH));# import $_PioSetAuxDac;# import $_PioSet;# import $_HidSetReportResponse;# end scan referenced symbols	.CODE$_appHandleHidSetReportInd:	enter	#4?LBB_appHandleHidSetReportInd:	st	AH,@(0,Y)	st	AL,@(H'0001,Y)	ld	X,@$XAP_AL?LBB2:	ld	AL,@(H'0001,X)	cmp	AL,#H'0002	bne	?L2	ld	AL,@(H'0002,X)	cmp	AL,#H'0001	bcz	?L2	ld	AL,@(H'0003,X)	cmp	AL,#H'0001	bne	?L3?LBB3:	ld	AL,#H'0000	st	AL,@(H'0002,Y)	ld	AL,@(H'0004,X)	and	AL,#H'0007	asl	#H'000D	ld	X,@(0,Y)	ld	AH,@(H'0017,X)	and	AH,#H'1FFF	or	AH,@$XAP_AL	st	AH,@(H'0017,X)	ld	X,@(H'0001,Y)	ld	AL,@(H'0004,X)	and	AL,#H'0001	cmp	AL,#H'0000	beq	?L4	ld	AL,#H'00FF	bra	(?L5)?L4:	ld	AL,#H'0000?L5:	ld	AH,#H'0001;	bsr	$_PioSetAuxDac	DC	((256*44)+9)	ld	X,@(H'0001,Y)	ld	AL,@(H'0004,X)	and	AL,#H'0002	cmp	AL,#H'0000	beq	?L6	ld	AL,@(H'0002,Y)	or	AL,#H'0400	st	AL,@(H'0002,Y)?L6:	ld	X,@(H'0001,Y)	ld	AL,@(H'0004,X)	and	AL,#H'0004	cmp	AL,#H'0000	beq	?L7	ld	AL,@(H'0002,Y)	or	AL,#H'2000	st	AL,@(H'0002,Y)?L7:	ld	AH,#H'2400	ld	AL,@(H'0002,Y);	bsr	$_PioSet	DC	((256*39)+9)	tst	@(H'0004,Y)	beq	?L1	ld	X,@(0,Y)	ld	AH,@(H'0002,X)	ld	AL,#H'0000	bra	(?L13)?L3:?LBE3:	tst	@(H'0004,Y)	beq	?L1	ld	X,@(0,Y)	ld	AH,@(H'0002,X)	ld	AL,#H'0002	bra	(?L13)?L2:	tst	@(H'0004,Y)	beq	?L1	ld	X,@(0,Y)	ld	AH,@(H'0002,X)	ld	AL,#H'0004?L13:	bsr	$_HidSetReportResponse?L1:?LBE2:?LBE_appHandleHidSetReportInd:	leave	#4;.stabn	192,0,0,?LBB3;.stabn	224,0,0,?LBE3;# begin scan referenced symbols;#(clobber:QI (reg:QI 1 AL));# import $_HidGetReportResponse;# end scan referenced symbols$_appHandleHidGetReportInd:	enter	#14?LBB_appHandleHidGetReportInd:	st	AH,@H'fff8	st	AL,@H'fff9	ld	X,@$XAP_AL?LBB4:	ld	AL,@(H'0001,X)	cmp	AL,#H'0001	bne	?L18	ld	AL,@(H'0002,X)	cmp	AL,#H'0001	bne	?L19?LBB5:	st	AL,@(H'0003,Y)	ld	AH,@(H'0003,X)	cmp	AH,#H'0009	bcz	?L20	ld	AH,#H'0009?L20:	ld	AL,#H'0001	st	AL,@(0,Y)	st	AH,@(H'0001,Y)	ld	AL,@$XAP_UY	add	AL,#H'0003	bra	(?L29)?L19:?LBE5:	ld	AL,#H'0001	bra	(?L30)?L18:	ld	X,@H'fff9	ld	AL,@(H'0001,X)	cmp	AL,#H'0002	bne	?L23	ld	AL,@(H'0002,X)	cmp	AL,#H'0001	bne	?L24	ld	X,@$XAP_AH?LBB6:	ld	AH,@(H'0017,X)	lsr	#H'000D	st	AH,@(H'000C,Y)	ld	X,@H'fff9	ld	AH,@(H'0003,X)	cmp	AH,#H'0000	beq	?L25	ld	AH,#H'0001?L25:	ld	AL,#H'0002	st	AL,@(0,Y)	st	AH,@(H'0001,Y)	ld	AL,@$XAP_UY	add	AL,#H'000C?L29:	st	AL,@(H'0002,Y)	ld	X,@H'fff8	ld	AH,@(H'0002,X)	ld	AL,#H'0000	bra	(?L28)?L24:?LBE6:	ld	AL,#H'0002?L30:	st	AL,@(0,Y)	ld	AL,#H'0000	st	AL,@(H'0001,Y)	st	AL,@(H'0002,Y)	ld	X,@H'fff8	ld	AH,@(H'0002,X)	ld	AL,#H'0002	bra	(?L28)?L23:	ld	AL,#H'0002	st	AL,@(0,Y)	ld	AL,#H'0000	st	AL,@(H'0001,Y)	st	AL,@(H'0002,Y)	ld	X,@$XAP_AH	ld	AH,@(H'0002,X)	ld	AL,#H'0004?L28:	bsr	$_HidGetReportResponse?LBE4:?LBE_appHandleHidGetReportInd:	leave	#14;.stabn	192,0,0,?LBB5;.stabn	224,0,0,?LBE5;.stabn	192,0,0,?LBB6;.stabn	224,0,0,?LBE6;# begin scan referenced symbols;#(clobber:QI (reg:QI 0 AH));# import $_StreamHidSource;#(clobber:QI (reg:QI 1 AL));# import $_SourceConfigure;# import $_HidSetIdleResponse;# end scan referenced symbols$_appHandleHidSetIdleInd:	enter	#3?LBB_appHandleHidSetIdleInd:	st	AH,@(H'0001,Y)	ld	X,@$XAP_AL	ld	AH,@(H'0001,X)	ld	AL,#-H'0001	add	AL,@$XAP_AH	cmp	AL,#H'0003	bcz	?L37	ld	AL,@$XAP_AH	and	AL,#H'00FF	asl	#H'0005	ld	X,@(H'0001,Y)	ld	AH,@(H'0017,X)	and	AH,#-H'1FE1	or	AH,@$XAP_AL	st	AH,@(H'0017,X);	bsr	$_StreamHidSource	DC	((256*153)+9)	st	AH,@H'fff8	ld	X,@(H'0001,Y)	ld	AH,@(H'0017,X)	lsr	#H'0005	and	AH,#H'00FF	st	AH,@(0,Y)	ld	AH,@H'fff8	ld	AL,#H'0007;	bsr	$_SourceConfigure	DC	((256*88)+9)	ld	X,@(H'0001,Y)	ld	AH,@(H'0002,X)	ld	AL,#H'0000	bra	(?L39)?L37:	ld	X,@(H'0001,Y)	ld	AH,@(H'0002,X)	ld	AL,#H'0004?L39:	bsr	$_HidSetIdleResponse?LBE_appHandleHidSetIdleInd:	leave	#3;# begin scan referenced symbols;#(clobber:QI (reg:QI 1 AL));# import $_HidGetIdleResponse;# end scan referenced symbols$_appHandleHidGetIdleInd:	enter	#2?LBB_appHandleHidGetIdleInd:	ld	X,@$XAP_AH	ld	AH,@(H'0017,X)	lsr	#H'0005	and	AH,#H'00FF	st	AH,@(0,Y)	ld	AH,@(H'0002,X)	ld	AL,#H'0000	bsr	$_HidGetIdleResponse?LBE_appHandleHidGetIdleInd:	leave	#2;# begin scan referenced symbols;# import $_HidSetProtocolResponse;# end scan referenced symbols$_appHandleHidSetProtocolInd:	enter	#1?LBB_appHandleHidSetProtocolInd:	ld	X,@$XAP_AL	ld	AL,@(H'0001,X)	ld	X,@$XAP_AH	st	AL,@(H'0019,X)	ld	AH,@(H'0002,X)	ld	AL,#H'0000	bsr	$_HidSetProtocolResponse?LBE_appHandleHidSetProtocolInd:	leave	#1;# begin scan referenced symbols;# import $_HidGetProtocolResponse;# end scan referenced symbols$_appHandleHidGetProtocolInd:	enter	#2?LBB_appHandleHidGetProtocolInd:	ld	X,@$XAP_AH	ld	AL,@(H'0019,X)	st	AL,@(0,Y)	ld	AH,@(H'0002,X)	ld	AL,#H'0000	bsr	$_HidGetProtocolResponse?LBE_appHandleHidGetProtocolInd:	leave	#2;# begin scan referenced symbols;# import $_Panic;# import $_appSetState;# end scan referenced symbols$_appHandleHidControlInd:	enter	#1?LBB_appHandleHidControlInd:	ld	X,@$XAP_AL	ld	AL,@(H'0001,X)	cmp	AL,#H'0001	bcs	?L44	cmp	AL,#H'0002	bcz	?L47	cmp	AL,#H'0003	beq	?L48	bra	(?L44)?L47:;	bsr	$_Panic	DC	((256*14)+9)	bra	(?L44)?L48:	ld	AL,#H'0006	bsr	$_appSetState?L44:?LBE_appHandleHidControlInd:	leave	#1	ENDMOD;# Function pattern *movqi2 used[0] = 39 used[1] = 6 total = 45;# Function pattern *movqi3 used[0] = 73 total = 73;# Function pattern *addqi0 used[0] = 2 total = 2;# Function pattern *addqi2 used[2] = 1 total = 1;# Function pattern *andqi3 used[0] = 9 total = 9;# Function pattern *iorqi3 used[0] = 4 total = 4;# Function pattern *lshrqi3 used[0] = 3 total = 3;# Function pattern *ashlqi3 used[0] = 2 total = 2;# Function pattern jump used[0] = 10 total = 10;# Function pattern *call1 used[0] = 9 total = 9;# Function pattern *call_value1 used[0] = 3 total = 3;# Function pattern movstrqi+3 used[0] = 4 used[1] = 3 total = 7;# Function pattern movstrqi+5 used[0] = 12 total = 12	MODULE	hid_keyboard_led	.LARGE ; really small mode but we need space for debug symbols; GNU C version 3.3.3 (BlueLab 3.6.2-release); 	compiled by GNU C version 3.2.3 (mingw special 20030504-1).;# options passed:  -IC:/BlueLab/tools/include -iprefix -isystem;# -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=3 -DHW_DEV_1163A;# -DNO_DEBUG -DHID_DEVICE -MD -MQ -mno-leaf-optim -ansi -auxbase-strip -g;# -O -pedantic -Wall -Wmissing-prototypes -Wstrict-prototypes;# -Wsign-compare -Wredundant-decls -Werror -ansi -fno-builtin-memcpy;# options enabled:  -fdefer-pop -fthread-jumps -fpeephole -ffunction-cse;# -fkeep-static-consts -fpcc-struct-return -fgcse-lm -fgcse-sm;# -floop-optimize -fcrossjumping -fif-conversion -fif-conversion2;# -fsched-interblock -fsched-spec -fbranch-count-reg -fcprop-registers;# -fcommon -fgnu-linker -fargument-alias -fmerge-constants;# -fzero-initialized-in-bss -fleading-underscore -fident;# -fguess-branch-probability -fmath-errno -ftrapping-math -mpeephole;# -mquiet-mode -minline-block-copy-mode -menhanced-mode -mload-cache-mode;# -mbitfield-mode -mtest4	.ENHANCED;# begin scan referenced symbols;# import $_PioSet;# import $_PioSetAuxDac;# import $_MessageSendLater;# end scan referenced symbols	.CODE_appLedHandleInternalUpdate:	enter	#5?LBB_appLedHandleInternalUpdate:	st	AH,@(H'0003,Y)	ld	X,@$XAP_AH	tst	@(H'0002,X)	bpl	?L2	ld	AL,#H'2400	bra	(?L12)?L2:	ld	X,@(H'0003,Y)	tst	@(H'0003,X)	bpl	?L4	ld	AL,#H'0000	bra	(?L12)?L4:	ld	X,@(H'0003,Y)	ld	AL,@(H'0001,X)	xor	AL,#H'2400?L12:	st	AL,@(H'0001,X)	ld	AH,#H'2400	ld	X,@(H'0003,Y)	ld	AL,@(H'0001,X);	bsr	$_PioSet	DC	((256*39)+9)	ld	X,@(H'0003,Y)	tst	@(H'0001,X)	beq	?L6	ld	AL,#H'00FF	bra	(?L7)?L6:	ld	AL,#H'0000?L7:	ld	AH,#H'0001;	bsr	$_PioSetAuxDac	DC	((256*44)+9)	ld	X,@(H'0003,Y)	tst	@(H'0001,X)	beq	?L8	tst	@(H'0002,X)	bmi	?L1	beq	?L1	ld	AL,#H'0000	st	AL,@(0,Y)	ld	AL,@(H'0002,X)	bra	(?L13)?L8:	ld	X,@(H'0003,Y)	tst	@(H'0003,X)	bmi	?L1	beq	?L1	ld	AL,#H'0000	st	AL,@(0,Y)	ld	AL,@(H'0003,X)?L13:	asl	#H'0010	asr	#H'0010	st	AH,@(H'0001,Y)	st	AL,@(H'0002,Y)	ld	AH,@$XAP_UXL	ld	AL,#H'0000;	bsr	$_MessageSendLater	DC	((256*9)+9)?L1:?LBE_appLedHandleInternalUpdate:	leave	#5;# begin scan referenced symbols;# import _appLedHandleInternalUpdate;# end scan referenced symbols_appLedHandler:	enter	#1?LBB_appLedHandler:	cmp	AL,#H'0000	bne	?L14	bsr	_appLedHandleInternalUpdate?L14:?LBE_appLedHandler:	leave	#1;# begin scan referenced symbols;# import _appLedHandler;# import $_PioSetDir;# end scan referenced symbols$_appLedInit:	enter	#1?LBB_appLedInit:	ld	X,@$XAP_AH	ld	AL,#lwrd(_appLedHandler)	st	AL,@(0,X)	ld	AL,#H'0000	st	AL,@(H'0001,X)	ld	AL,#-H'0001	st	AL,@(H'0008,X)	ld	AH,#H'2400	ld	AL,@$XAP_AH;	bsr	$_PioSetDir	DC	((256*41)+9)	ld	AH,#H'2400	ld	AL,#H'0000;	bsr	$_PioSet	DC	((256*39)+9)	ld	AH,#H'0001	ld	AL,#H'0000;	bsr	$_PioSetAuxDac	DC	((256*44)+9)?LBE_appLedInit:	leave	#1;# begin scan referenced symbols;# import $_appLedSetPriority;# end scan referenced symbols$_appLedUpdate:	enter	#1?LBB_appLedUpdate:	ld	X,@(H'0002,Y)	add	X,@$XAP_AH	st	AL,@(H'0004,X)	ld	AL,@(H'0001,Y)	st	AL,@(H'0006,X)	ld	AL,@(H'0002,Y)	bsr	$_appLedSetPriority?LBE_appLedUpdate:	leave	#1;# begin scan referenced symbols;# import $_MessageCancelAll;# import $_MessageSend;# end scan referenced symbols$_appLedSetPriority:	enter	#4?LBB_appLedSetPriority:	st	AH,@(H'0001,Y)	add	AH,@$XAP_AL	st	AH,@(H'0002,Y)	ld	X,@$XAP_AH	ld	AH,@(H'0004,X)	ld	X,@(H'0001,Y)	st	AH,@(H'0002,X)	ld	X,@(H'0002,Y)	ld	AH,@(H'0006,X)	ld	X,@(H'0001,Y)	st	AH,@(H'0003,X)	st	AL,@(H'0008,X)	ld	AH,@$XAP_UXL	ld	AL,#H'0000	bsr	$_MessageCancelAll	ld	AL,#H'0000	st	AL,@(0,Y)	ld	AH,@(H'0001,Y)	bsr	$_MessageSend?LBE_appLedSetPriority:	leave	#4	ENDMOD;# Function pattern *movqi2 used[0] = 21 used[1] = 2 total = 23;# Function pattern *movqi3 used[0] = 35 total = 35;# Function pattern *movhi used[3] = 1 total = 1;# Function pattern *addqi2 used[0] = 1 used[2] = 1 total = 2;# Function pattern *xorqi3 used[0] = 1 total = 1;# Function pattern *extendqihi2 used[0] = 1 total = 1;# Function pattern jump used[0] = 4 total = 4;# Function pattern *call1 used[0] = 7 total = 7;# Function pattern *call_value1 used[0] = 3 total = 3;# Function pattern movstrqi+3 used[0] = 1 used[1] = 6 total = 7	MODULE	hid_keyboard_scan	.LARGE ; really small mode but we need space for debug symbols; GNU C version 3.3.3 (BlueLab 3.6.2-release); 	compiled by GNU C version 3.2.3 (mingw special 20030504-1).;# options passed:  -IC:/BlueLab/tools/include -iprefix -isystem;# -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=3 -DHW_DEV_1163A;# -DNO_DEBUG -DHID_DEVICE -MD -MQ -mno-leaf-optim -ansi -auxbase-strip -g;# -O -pedantic -Wall -Wmissing-prototypes -Wstrict-prototypes;# -Wsign-compare -Wredundant-decls -Werror -ansi -fno-builtin-memcpy;# options enabled:  -fdefer-pop -fthread-jumps -fpeephole -ffunction-cse

⌨️ 快捷键说明

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