spp_dev_a.xap

来自「蓝牙串口适配器主方程序, 可以实现串口传输」· XAP 代码 · 共 2,628 行 · 第 1/5 页

XAP
2,628
字号
	.ENHANCED	.CSEG	CODE	.LARGE$_PsRetrieve:	DC	((256*18)+9)	rtstrapset_1	EQU	$trapset_1	ENDMOD	PsRetrieve	MODULE	MessagePioTask	.ENHANCED	.CSEG	CODE	.LARGE$_MessagePioTask:	DC	((256*36)+9)	rtstrapset_1	EQU	$trapset_1	ENDMOD	MessagePioTask	MODULE	PioDebounce	.ENHANCED	.CSEG	CODE	.LARGE$_PioDebounce:	DC	((256*37)+9)	rtstrapset_1	EQU	$trapset_1	ENDMOD	PioDebounce	MODULE	PioGet	.ENHANCED	.CSEG	CODE	.LARGE$_PioGet:	DC	((256*38)+9)	rtstrapset_1	EQU	$trapset_1	ENDMOD	PioGet	MODULE	PioSet	.ENHANCED	.CSEG	CODE	.LARGE$_PioSet:	DC	((256*39)+9)	rtstrapset_1	EQU	$trapset_1	ENDMOD	PioSet	MODULE	PioSetDir	.ENHANCED	.CSEG	CODE	.LARGE$_PioSetDir:	DC	((256*41)+9)	rtstrapset_1	EQU	$trapset_1	ENDMOD	PioSetDir	MODULE	PanicUnlessMalloc	.ENHANCED	.CSEG	CODE	.LARGE$_PanicUnlessMalloc:	DC	((256*47)+9)	rtstrapset_1	EQU	$trapset_1	ENDMOD	PanicUnlessMalloc	MODULE	StreamConfigure	.ENHANCED	.CSEG	CODE	.LARGE$_StreamConfigure:	DC	((256*70)+9)	rtstrapset_11	EQU	$trapset_11	ENDMOD	StreamConfigure	MODULE	StreamConnect	.ENHANCED	.CSEG	CODE	.LARGE$_StreamConnect:	DC	((256*71)+9)	rtstrapset_11	EQU	$trapset_11	ENDMOD	StreamConnect	MODULE	StreamSourceFromSink	.ENHANCED	.CSEG	CODE	.LARGE$_StreamSourceFromSink:	DC	((256*74)+9)	rtstrapset_11	EQU	$trapset_11	ENDMOD	StreamSourceFromSink	MODULE	SinkGetBdAddr	.ENHANCED	.CSEG	CODE	.LARGE$_SinkGetBdAddr:	DC	((256*84)+9)	rtstrapset_11	EQU	$trapset_11	ENDMOD	SinkGetBdAddr	MODULE	MessageSinkTask	.ENHANCED	.CSEG	CODE	.LARGE$_MessageSinkTask:	DC	((256*85)+9)	rtstrapset_11	EQU	$trapset_11	ENDMOD	MessageSinkTask	MODULE	MessageSinkGetTask	.ENHANCED	.CSEG	CODE	.LARGE$_MessageSinkGetTask:	DC	((256*86)+9)	rtstrapset_11	EQU	$trapset_11	ENDMOD	MessageSinkGetTask	MODULE	StreamSinksFromBdAddr	.ENHANCED	.CSEG	CODE	.LARGE$_StreamSinksFromBdAddr:	DC	((256*87)+9)	rtstrapset_11	EQU	$trapset_11	ENDMOD	StreamSinksFromBdAddr	MODULE	VmSendRfcommPrim	.ENHANCED	.CSEG	CODE	.LARGE$_VmSendRfcommPrim:	DC	((256*102)+9)	rtstrapset_14	EQU	$trapset_14	ENDMOD	VmSendRfcommPrim	MODULE	StreamRfcommSink	.ENHANCED	.CSEG	CODE	.LARGE$_StreamRfcommSink:	DC	((256*103)+9)	rtstrapset_14	EQU	$trapset_14	ENDMOD	StreamRfcommSink	MODULE	StreamUartSink	.ENHANCED	.CSEG	CODE	.LARGE$_StreamUartSink:	DC	((256*104)+9)	rtstrapset_15	EQU	$trapset_15	ENDMOD	StreamUartSink	MODULE	VmSendL2capPrim	.ENHANCED	.CSEG	CODE	.LARGE$_VmSendL2capPrim:	DC	((256*106)+9)	rtstrapset_16	EQU	$trapset_16	ENDMOD	VmSendL2capPrim	MODULE	VmSendDmPrim	.ENHANCED	.CSEG	CODE	.LARGE$_VmSendDmPrim:	DC	((256*107)+9)	rtstrapset_16	EQU	$trapset_16	ENDMOD	VmSendDmPrim	MODULE	VmSendSdpPrim	.ENHANCED	.CSEG	CODE	.LARGE$_VmSendSdpPrim:	DC	((256*108)+9)	rtstrapset_16	EQU	$trapset_16	ENDMOD	VmSendSdpPrim	MODULE	VmGetHandleFromPointer	.ENHANCED	.CSEG	CODE	.LARGE$_VmGetHandleFromPointer:	DC	((256*109)+9)	rtstrapset_16	EQU	$trapset_16	ENDMOD	VmGetHandleFromPointer	MODULE	VmGetPointerFromHandle	.ENHANCED	.CSEG	CODE	.LARGE$_VmGetPointerFromHandle:	DC	((256*110)+9)	rtstrapset_16	EQU	$trapset_16	ENDMOD	VmGetPointerFromHandle	MODULE	MessageBlueStackTask	.ENHANCED	.CSEG	CODE	.LARGE$_MessageBlueStackTask:	DC	((256*111)+9)	rtstrapset_16	EQU	$trapset_16	ENDMOD	MessageBlueStackTask	MODULE	StreamL2capSink	.ENHANCED	.CSEG	CODE	.LARGE$_StreamL2capSink:	DC	((256*112)+9)	rtstrapset_16	EQU	$trapset_16	ENDMOD	StreamL2capSink	MODULE	VmUseExtendedBluestackPrimitives	.ENHANCED	.CSEG	CODE	.LARGE$_VmUseExtendedBluestackPrimitives:	DC	((256*148)+9)	rtstrapset_16	EQU	$trapset_16	ENDMOD	VmUseExtendedBluestackPrimitives	MODULE	MessageSend	.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:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/lib/gcc-lib/xap-local-xap/3.3.3/install-tools/include;# -I. -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -iprefix -isystem -D__GNUC__=3 -D__GNUC_MINOR__=3;# -D__GNUC_PATCHLEVEL__=3 -MD -MQ -mno-leaf-optim -ansi -auxbase-strip -g;# -g -O -pedantic -Wall -Wmissing-prototypes -Wstrict-prototypes;# -Wsign-compare -Wredundant-decls -Werror -Wall -W -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 $_MessageSendLater;# end scan referenced symbols	.CODE$_MessageSend:	enter	#4?LBB_MessageSend:	ld	X,@(H'0004,Y)	st	X,@(0,Y)	ld	X,#-H'0001	st	X,@(H'0002,Y)	st	X,@(H'0001,Y);	bsr	$_MessageSendLater	DC	((256*9)+9)?LBE_MessageSend:	leave	#4	ENDMOD;# Function pattern *movqi2 used[0] = 2 total = 2;# Function pattern *call1 used[0] = 1 total = 1;# Function pattern movstrqi+2 used[0] = 1 total = 1	MODULE	MessageCancelAll	.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:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/lib/gcc-lib/xap-local-xap/3.3.3/install-tools/include;# -I. -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -iprefix -isystem -D__GNUC__=3 -D__GNUC_MINOR__=3;# -D__GNUC_PATCHLEVEL__=3 -MD -MQ -mno-leaf-optim -ansi -auxbase-strip -g;# -g -O -pedantic -Wall -Wmissing-prototypes -Wstrict-prototypes;# -Wsign-compare -Wredundant-decls -Werror -Wall -W -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 $_MessageCancelFirst;# end scan referenced symbols	.CODE$_MessageCancelAll:	enter	#4?LBB_MessageCancelAll:	st	AH,@(0,Y)	st	AL,@(H'0001,Y)?LBB2:	ld	AL,#H'0000	bra	(?L6)?L5:	ld	AL,@(H'0002,Y)	add	AL,#H'0001?L6:	st	AL,@(H'0002,Y)	ld	AH,@(0,Y)	ld	AL,@(H'0001,Y);	bsr	$_MessageCancelFirst	DC	((256*10)+9)	cmp	AH,#H'0000	bne	?L5?LBE2:	ld	AH,@(H'0002,Y)?LBE_MessageCancelAll:	leave	#4;.stabn	192,0,0,?LBB2;.stabn	224,0,0,?LBE2	ENDMOD;# Function pattern *movqi2 used[0] = 3 used[1] = 3 total = 6;# Function pattern *movqi3 used[0] = 2 total = 2;# Function pattern *addqi2 used[0] = 1 total = 1;# Function pattern jump used[0] = 1 total = 1;# Function pattern *call_value1 used[0] = 1 total = 1;# Function pattern movstrqi+3 used[0] = 1 total = 1	MODULE	MessageLoop	.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:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/lib/gcc-lib/xap-local-xap/3.3.3/install-tools/include;# -I. -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -iprefix -isystem -D__GNUC__=3 -D__GNUC_MINOR__=3;# -D__GNUC_PATCHLEVEL__=3 -MD -MQ -mno-leaf-optim -ansi -auxbase-strip -g;# -g -O -pedantic -Wall -Wmissing-prototypes -Wstrict-prototypes;# -Wsign-compare -Wredundant-decls -Werror -Wall -W -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 $_MessageWait;# import $_MessageFree;# end scan referenced symbols	.CODE$_MessageLoop:	enter	#5?LBB_MessageLoop:?L2:?LBB2:?LBB3:	ld	AH,@$XAP_UY	add	AH,#H'0001;	bsr	$_MessageWait	DC	((256*11)+9)	ld	X,@(H'0001,Y)	ld	AL,@(H'0002,Y)	ld	AH,@(H'0003,Y)	st	AH,@(0,Y)	ld	AH,@$XAP_UXL	ld	X,@(0,X)	bsr	0,X	ld	AH,@(H'0002,Y)	ld	AL,@(H'0003,Y);	bsr	$_MessageFree	DC	((256*13)+9)?LBE3:	bra	(?L2)?LBE2:?LBE_MessageLoop:	leave	#5;.stabn	192,0,0,?LBB3;.stabn	224,0,0,?LBE3	ENDMOD;# Function pattern *movqi2 used[0] = 2 total = 2;# Function pattern *movqi8 used[0] = 5 total = 5;# Function pattern *addqi0 used[0] = 1 total = 1;# Function pattern jump used[0] = 1 total = 1;# Function pattern *call1 used[0] = 2 total = 2;# Function pattern *call4_sm used[1] = 1 total = 1	MODULE	MessageSendConditionallyOnTask	.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:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/lib/gcc-lib/xap-local-xap/3.3.3/install-tools/include;# -I. -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -iprefix -isystem -D__GNUC__=3 -D__GNUC_MINOR__=3;# -D__GNUC_PATCHLEVEL__=3 -MD -MQ -mno-leaf-optim -ansi -auxbase-strip -g;# -g -O -pedantic -Wall -Wmissing-prototypes -Wstrict-prototypes;# -Wsign-compare -Wredundant-decls -Werror -Wall -W -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 $_MessageSendConditionally;# end scan referenced symbols	.CODE$_MessageSendConditionallyOnTask:	enter	#3?LBB_MessageSendConditionallyOnTask:	st	AL,@H'fff8	ld	X,@(H'0003,Y)	st	X,@(0,Y)	ld	AL,@(H'0004,Y)	st	AL,@(H'0001,Y)	ld	AL,@H'fff8;	bsr	$_MessageSendConditionally	DC	((256*12)+9)?LBE_MessageSendConditionallyOnTask:	leave	#3	ENDMOD;# Function pattern *movqi2 used[0] = 2 used[1] = 1 total = 3;# Function pattern *call1 used[0] = 1 total = 1;# Function pattern movstrqi+2 used[0] = 1 total = 1	MODULE	udivmod	.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:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/lib/gcc-lib/xap-local-xap/3.3.3/install-tools/include;# -I. -Ic:/src/active/bluelab362/result/image/bluelab_full/tools/include;# -iprefix -isystem -D__GNUC__=3 -D__GNUC_MINOR__=3;# -D__GNUC_PATCHLEVEL__=3 -MD -MQ -mno-leaf-optim -ansi -auxbase-strip -g;# -g -O -pedantic -Wall -Wmissing-prototypes -Wstrict-prototypes;# -Wsign-compare -Wredundant-decls -Werror -Wall -W -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 _count_leading_zeros;# end scan referenced symbols	.CODE$__udivmod:	enter	#6?LBB__udivmod:	st	AH,@(0,Y)	st	AL,@(1,Y)	ld	AH,@(H'0006,Y)	ld	AL,@(H'0007,Y)?LBB2:	cmp	AH,#hwrd(H'0001+H'0001)	bcs	?L17	bne	?L8	cmp	AL,#lwrd(H'0001+H'0001)	bcc	?L8?L17:	ld	AL,#H'0000	ld	X,@(H'0008,Y)	st	AL,@(H'0001,X)	st	AL,@(0,X)	ld	AH,@(0,Y)	ld	AL,@(1,Y)	bra	(?L7)?L8:	ld	AH,@(0,Y)	ld	AL,@(1,Y)	cmp	AH,@(H'0006,Y)	bcs	?L18	bne	?L10	cmp	AL,@(H'0007,Y)	bcc	?L10?L18:	ld	X,@(H'0008,Y)	st	AH,@(0,X)	st	AL,@(1,X)	ld	AL,#H'0000	ld	AH,#H'0000	bra	(?L7)?L10:?LBB3:	ld	AH,#H'0000	st	AH,@(H'0003,Y)	st	AH,@(H'0002,Y)	ld	AH,@(H'0006,Y)	ld	AL,@(H'0007,Y)	bsr	_count_leading_zeros	st	AH,@(H'0004,Y)	ld	AH,@(0,Y)	ld	AL,@(1,Y)	bsr	_count_leading_zeros	nadd	AH,@(H'0004,Y)	st	AH,@(H'0004,Y)?L12:?LBB4:

⌨️ 快捷键说明

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