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

📄 pbap_server.xap

📁 藍芽電話簿範本
💻 XAP
📖 第 1 页 / 共 5 页
字号:
	ld	X,@$XAP_AH?LBB10:	ld	AH,@(H'0008,X);	bsr	$_SourceMap	DC	((256*68)+9)	st	AH,@(H'0002,Y)	ld	AL,#H'0000	st	AL,@(H'0003,Y)	ld	AL,@(H'0001,Y)	bsr	$_findFields	ld	AL,@$XAP_AH	ld	X,@(0,Y)	ld	AH,@(H'0008,X);	bsr	$_SourceDrop	DC	((256*67)+9)	ld	X,@(0,Y)	ld	AL,@(H'0009,X)	add	AL,#H'0001	st	AL,@(H'0009,X)	ld	AH,@(H'0008,X);	bsr	$_SourceSize	DC	((256*66)+9)	cmp	AH,#H'0000	beq	?L47	ld	AH,@(H'0001,Y)	bsr	$_zeroSearch	ld	AH,@(H'0002,Y)	ld	AL,@(H'0001,Y)	bsr	$_findFields	ld	AL,#H'0001	st	AL,@(H'0003,Y)?L47:?LBE10:	ld	AH,@(H'0003,Y)?LBE_pbaGotoNextEntry:	leave	#5;.stabn	192,0,0,?LBB10;.stabn	224,0,0,?LBE10$_pbaGetNumberElements:	enter	#13?LBB_pbaGetNumberElements:	st	AH,@(H'0009,Y)?LBB11:	ld	AH,#H'0000	st	AH,@(H'000B,Y)	ld	AH,@(H'0009,Y)	bsr	$_pbaOpenPhonebook	ld	X,@(H'0009,Y)	ld	AH,@(H'0008,X);	bsr	$_SourceMap	DC	((256*68)+9)	st	AH,@(H'000A,Y)	bra	(?L49)?L52:	ld	AH,@(H'000A,Y)	ld	AL,@$XAP_UY	bsr	$_findFields	ld	AL,@$XAP_AH	ld	X,@(H'0009,Y)	ld	AH,@(H'0008,X);	bsr	$_SourceDrop	DC	((256*67)+9)	ld	AH,@(H'000B,Y)	add	AH,#H'0001	st	AH,@(H'000B,Y)?L49:	ld	X,@(H'0009,Y)	ld	AH,@(H'0008,X);	bsr	$_SourceSize	DC	((256*66)+9)	cmp	AH,#H'0000	bne	?L52	ld	AH,@(H'0009,Y)	bsr	$_pbaClosePhonebook?LBE11:	ld	AH,@(H'000B,Y)?LBE_pbaGetNumberElements:	leave	#13;.stabn	192,0,0,?LBB11;.stabn	224,0,0,?LBE11$_zeroSearch:	enter	#1?LBB_zeroSearch:	ld	X,@$XAP_AH	ld	AL,#H'0000	st	AL,@(0,X)	st	AL,@(H'0001,X)	st	AL,@(H'0002,X)	st	AL,@(H'0003,X)	st	AL,@(H'0004,X)	st	AL,@(H'0005,X)	st	AL,@(H'0006,X)	st	AL,@(H'0007,X)	st	AL,@(H'0008,X)?LBE_zeroSearch:	leave	#1$_findFields:	enter	#4?LBB_findFields:	st	AH,@(0,Y)	st	AL,@(H'0001,Y)?LBB12:	st	AH,@(H'0002,Y)	st	AH,@H'fff8	ld	X,@$XAP_AH	ld	AL,@(0,X)	cmp	AL,#H'000A	beq	?L72?L70:	ld	X,@(H'0002,Y)	ld	AL,@(0,X)	cmp	AL,#H'000A	beq	?L74?L61:	ld	AL,@(H'0002,Y)	add	AL,#H'0001	st	AL,@(H'0002,Y)	ld	X,@$XAP_AL	ld	AL,@(0,X)	cmp	AL,#H'000A	bne	?L61?L74:	ld	AH,@(H'0002,Y)	sub	AH,@H'fff8	add	AH,#-H'0001	ld	X,@H'fff8	ld	AL,@(0,X)	cmp	AL,#H'004D	beq	?L65	cmp	AL,#(H'0001+H'004D)	bcc	?L69	cmp	AL,#H'0042	beq	?L66	bra	(?L67)?L69:	cmp	AL,#H'004E	beq	?L63	cmp	AL,#H'0050	beq	?L64	bra	(?L67)?L63:	ld	AL,#H'0001	add	AL,@H'fff8	ld	X,@(H'0001,Y)	st	AL,@(0,X)	st	AH,@(H'0004,X)	bra	(?L62)?L64:	ld	AL,#H'0001	add	AL,@H'fff8	ld	X,@(H'0001,Y)	st	AL,@(H'0001,X)	st	AH,@(H'0005,X)	bra	(?L62)?L65:	ld	AL,#H'0001	add	AL,@H'fff8	ld	X,@(H'0001,Y)	st	AL,@(H'0002,X)	st	AH,@(H'0006,X)	bra	(?L62)?L66:	ld	AL,#H'0001	add	AL,@H'fff8	ld	X,@(H'0001,Y)	st	AL,@(H'0003,X)	st	AH,@(H'0007,X)	bra	(?L62)?L67:;	bsr	$_Panic	DC	((256*14)+9)?L62:	ld	AL,@(H'0002,Y)	add	AL,#H'0001	st	AL,@(H'0002,Y)	st	AL,@H'fff8	ld	X,@$XAP_AL	ld	AL,@(0,X)	cmp	AL,#H'000A	bne	?L70?L72:	ld	AH,@(H'0002,Y)	sub	AH,@(0,Y)	add	AH,#H'0001?LBE12:?LBE_findFields:	leave	#4;.stabn	192,0,0,?LBB12;.stabn	224,0,0,?LBE12_pbaSearchEntry:	enter	#4?LBB_pbaSearchEntry:	st	AH,@(0,Y)	st	AL,@(H'0001,Y)?LBB13:	ld	AL,#H'0000	st	AL,@(H'0002,Y)	ld	X,@$XAP_AH	tst	@(H'0010,X)	beq	?L84	ld	AL,@(H'000F,X)	cmp	AL,#H'0001	beq	?L89	cmp	AL,#H'0001	bcs	?L87	cmp	AL,#H'0002	bne	?L93?L87:	ld	X,@(H'0001,Y)	tst	@(0,X)	beq	?L95	ld	AH,@(0,X)	bra	(?L96)?L89:	ld	X,@(H'0001,Y)	tst	@(H'0001,X)	beq	?L90	ld	AH,@(H'0001,X)	ld	X,@(0,Y)	ld	AL,@(H'0010,X)	bsr	_pbaSearchStr	st	AH,@(H'0002,Y)?L90:	ld	X,@(H'0001,Y)	tst	@(H'0002,X)	beq	?L91	tst	@(H'0002,Y)	bne	?L91	ld	AH,@(H'0002,X)	ld	X,@(0,Y)	ld	AL,@(H'0010,X)	bsr	_pbaSearchStr	st	AH,@(H'0002,Y)?L91:	ld	X,@(H'0001,Y)	tst	@(H'0003,X)	beq	?L95	tst	@(H'0002,Y)	bne	?L95	ld	AH,@(H'0003,X)?L96:	ld	X,@(0,Y)	ld	AL,@(H'0010,X)	bsr	_pbaSearchStr	st	AH,@(H'0002,Y)	bra	(?L95)?L93:;	bsr	$_Panic	DC	((256*14)+9)	bra	(?L95)?L84:	ld	AL,#H'0001	st	AL,@(H'0002,Y)?L95:?LBE13:	ld	AH,@(H'0002,Y)?LBE_pbaSearchEntry:	leave	#4;.stabn	192,0,0,?LBB13;.stabn	224,0,0,?LBE13_pbaSearchStr:	enter	#1?LBB_pbaSearchStr:	st	AL,@H'fffa?LBB14:	st	AH,@H'fff9	ld	AH,#H'0000	ld	X,@$XAP_AL	tst	@(0,X)	beq	?L101	ld	X,@H'fff9	ld	AL,@(0,X)	cmp	AL,#H'000A	beq	?L101?L112:	ld	AL,@H'fff9	st	AL,@H'fff8	ld	X,@H'fffa	st	X,@H'fffb	ld	X,@H'fff9	ld	AL,@(0,X)	cmp	AL,#H'000A	beq	?L107	ld	X,@H'fffa	tst	@(0,X)	beq	?L107	cmp	AL,@(0,X)	bne	?L107?L110:	ld	AL,#H'0001	add	AL,@H'fff8	st	AL,@H'fff8	ld	X,#H'0001	add	X,@H'fffb	st	X,@H'fffb	ld	X,@$XAP_AL	ld	AL,@(0,X)	cmp	AL,#H'000A	beq	?L107	ld	X,@H'fffb	tst	@(0,X)	beq	?L107	cmp	AL,@(0,X)	beq	?L110?L107:	ld	X,@H'fffb	tst	@(0,X)	bne	?L111	ld	AH,#H'0001?L111:	ld	AL,#H'0001	add	AL,@H'fff9	st	AL,@H'fff9	ld	X,@$XAP_AL	ld	AL,@(0,X)	cmp	AL,#H'000A	beq	?L101	cmp	AH,#H'0000	beq	?L112?L101:?LBE14:?LBE_pbaSearchStr:	leave	#1;.stabn	192,0,0,?LBB14;.stabn	224,0,0,?LBE14	ENDMOD;# Function pattern *movqi2 used[0] = 104 used[1] = 32 total = 136;# Function pattern *movqi3 used[0] = 101 total = 101;# Function pattern *movqi8 used[0] = 22 total = 22;# Function pattern *addqi2 used[0] = 10 used[2] = 9 total = 19;# Function pattern *andqi3 used[0] = 4 total = 4;# Function pattern *iorqi3 used[0] = 2 total = 2;# Function pattern *subqi3 used[0] = 2 total = 2;# Function pattern *lshrqi3 used[0] = 4 total = 4;# Function pattern jump used[0] = 14 total = 14;# Function pattern *call1 used[0] = 11 total = 11;# Function pattern *call_value1 used[0] = 26 total = 26;# Function pattern movstrqi+3 used[0] = 14 used[1] = 12 total = 26;# Function pattern movstrqi+4 used[1] = 3 total = 3;# Function pattern movstrqi+5 used[0] = 21 total = 21	MODULE	state	.LARGE ; really small mode but we need space for debug symbols; GNU C version 3.3.3 (CSR version 29 for xap); 	compiled by GNU C version 3.2.3 (mingw special 20030504-1).;# options passed:  -IC:/BlueLab41/tools/include/firmware;# -IC:/BlueLab41/tools/include/standard;# -IC:/BlueLab41/tools/include/profiles/BlueLab4.1-Release -iprefix;# -isystem -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=3;# -DNO_DEBUG -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 -fpeephole2;# -fguess-branch-probability -fmath-errno -ftrapping-math -mpeephole;# -mquiet-mode -minline-block-copy-mode -menhanced-mode -mload-cache-mode;# -mbitfield-mode -mtest4	.ENHANCED	.CODE$_setState:	enter	#1?LBB_setState:	ld	X,@$XAP_AH	cmp	AL,#(H'0001+H'0008)	bcc	?L2	st	AL,@(0,X)	bra	(?L1)?L2:;	bsr	$_Panic	DC	((256*14)+9)?L1:?LBE_setState:	leave	#1	ENDMOD;# Function pattern *movqi2 used[0] = 2 total = 2;# Function pattern jump used[0] = 1 total = 1;# Function pattern *call1 used[0] = 1 total = 1;# Function pattern movstrqi+4 used[1] = 1 total = 1	MODULE	vcard_gen	.LARGE ; really small mode but we need space for debug symbols; GNU C version 3.3.3 (CSR version 29 for xap); 	compiled by GNU C version 3.2.3 (mingw special 20030504-1).;# options passed:  -IC:/BlueLab41/tools/include/firmware;# -IC:/BlueLab41/tools/include/standard;# -IC:/BlueLab41/tools/include/profiles/BlueLab4.1-Release -iprefix;# -isystem -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=3;# -DNO_DEBUG -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 -fpeephole2;# -fguess-branch-probability -fmath-errno -ftrapping-math -mpeephole;# -mquiet-mode -minline-block-copy-mode -menhanced-mode -mload-cache-mode;# -mbitfield-mode -mtest4	.ENHANCED	.SEG	CONST_gVCardEntryHeader:	dc	H'0042	dc	H'0045	dc	H'0047	dc	H'0049	dc	H'004E	dc	H'003A	dc	H'0056	dc	H'0043	dc	H'0041	dc	H'0052	dc	H'0044	dc	H'000A	dc	H'0056	dc	H'0045	dc	H'0052	dc	H'0053	dc	H'0049	dc	H'004F	dc	H'004E	dc	H'003A_gVCardEntryVersion21:	dc	H'0032	dc	H'002E	dc	H'0031	dc	H'000A_gVCardEntryVersion30:	dc	H'0033	dc	H'002E	dc	H'0030	dc	H'000A_gVCardEntryName21:	dc	H'004E	dc	H'003A_gVCardEntryName30:	dc	H'0046	dc	H'004E	dc	H'003A_gVCardEntryTel:	dc	H'0054	dc	H'0045	dc	H'004C	dc	H'003A_gVCardEntryTelMobile:	dc	H'0054	dc	H'0045	dc	H'004C	dc	H'003B	dc	H'004D	dc	H'004F	dc	H'0042	dc	H'0049	dc	H'004C	dc	H'0045	dc	H'003A_gVCardEntryTelBusiness:	dc	H'0054	dc	H'0045	dc	H'004C	dc	H'003B	dc	H'0057	dc	H'004F	dc	H'0052	dc	H'004B	dc	H'003A_gVCardEntryFooter:	dc	H'0045	dc	H'004E	dc	H'0044	dc	H'003A	dc	H'0056	dc	H'0043	dc	H'0041	dc	H'0052	dc	H'0044	dc	H'000A_gVCardEntryNewline:	dc	H'000A	.CODE$_vcgGetFirstEntryBuffer:	enter	#14?LBB_vcgGetFirstEntryBuffer:	st	AH,@(H'0009,Y)	st	AL,@(H'000A,Y)?LBB2:	ld	AL,#H'0001	st	AL,@(H'000B,Y)	bsr	$_folderCurrentFolder	st	AH,@(H'000C,Y)	ld	AH,@(H'0009,Y)	ld	AL,#H'003C	bsr	$_allocBuffer	cmp	AH,#H'0000	bne	?L2;	bsr	$_Panic	DC	((256*14)+9)?L2:	ld	AH,@(H'0009,Y)	ld	AL,@(H'000C,Y)	bsr	$_pbaOpenPhonebook	cmp	AH,#H'0000	beq	?L3	ld	AH,@(H'0009,Y)	ld	AL,@(H'000A,Y)	bsr	$_pbaGotoEntry	cmp	AH,#H'0000	beq	?L3?LBB3:	ld	AH,@(H'0009,Y)	ld	AL,@$XAP_UY	bsr	$_pbaGetCurrentEntry	ld	AH,@(H'0009,Y)	bsr	_vcgResetState	ld	AL,@(H'000E,Y)	ld	X,@(H'0009,Y)	st	AL,@(H'0012,X)	ld	AH,@$XAP_UXL	ld	AL,@$XAP_UY	bsr	_vcgFillBuffer	st	AH,@(H'000B,Y)?L3:?LBE3:	tst	@(H'000B,Y)	beq	?L5	ld	AH,@(H'0009,Y)	bsr	$_pbaClosePhonebook?L5:?LBE2:	ld	AH,@(H'000B,Y)?LBE_vcgGetFirstEntryBuffer:	leave	#14;.stabn	192,0,0,?LBB2;.stabn	192,0,0,?LBB3;.stabn	224,0,0,?LBE3;.stabn	224,0,0,?LBE2$_vcgGetNextEntryBuffer:	enter	#12?LBB_vcgGetNextEntryBuffer:	st	AH,@(H'0009,Y)?LBB4:	bsr	$_resetBuffer	ld	AH,@(H'0009,Y)	ld	AL,@$XAP_UY	bsr	$_pbaGetCurrentEntry	ld	AH,@(H'0009,Y)	ld	AL,@$XAP_UY	bsr	_vcgFillBuffer	st	AH,@(H'000A,Y)	cmp	AH,#H'0000	beq	?L7	ld	AH,@(H'0009,Y)	bsr	$_pbaClosePhonebook?L7:?LBE4:	ld	AH,@(H'000A,Y)?LBE_vcgGetNextEntryBuffer:	leave	#12;.stabn	192,0,0,?LBB4;.stabn	224,0,0,?LBE4$_vcgCleanupListBuffer:	enter	#2?LBB_vcgCleanupListBuffer:	st	AH,@(0,Y)	bsr	$_freeBuffer	ld	AH,@(0,Y)	bsr	$_pbaClosePhonebook?LBE_vcgCleanupListBuffer:	leave	#2$_vcgGetFirstPhonebookBuffer:	enter	#15?LBB_vcgGetFirstPhonebookBuffer:	st	AH,@(H'0009,Y)	st	AL,@(H'000A,Y)?LBB5:	ld	AL,#H'0001	st	AL,@(H'000B,Y)	ld	AL,#H'003C	bsr	$_allocBuffer	cmp	AH,#H'0000	bne	?L10;	bsr	$_Panic	DC	((256*14)+9)?L10:	ld	AH,@(H'0009,Y)	ld	AL,@(H'000A,Y)	bsr	$_pbaOpenPhonebook	cmp	AH,#H'0000	beq	?L11	ld	AH,@(H'0009,Y)	ld	AL,@(H'000F,Y)	bsr	$_pbaGotoEntry	cmp	AH,#H'0000	beq	?L11?LBB6:	ld	AL,#H'0001	st	AL,@(H'000C,Y)	ld	AL,@(H'0010,Y)	ld	X,@(H'0009,Y)	st	AL,@(H'0012,X)	ld	AL,@(H'0011,Y)	st	AL,@(H'0013,X)	ld	AH,@$XAP_UXL	ld	AL,@$XAP_UY	bsr	$_pbaGetCurrentEntry	ld	X,@(H'0009,Y)	tst	@(H'0013,X)	beq	?L14?L18:	ld	AH,@(H'0009,Y)	bsr	_vcgResetState	ld	AH,@(H'0009,Y)	ld	AL,@$XAP_UY	bsr	_vcgFillBuffer	st	AH,@(H'000D,Y)	cmp	AH,#H'0000	beq	?L13	ld	AH,@(H'0009,Y)	ld	AL,@$XAP_UY	bsr	$_pbaGotoNextEntry	st	AH,@(H'000C,Y)	ld	X,@(H'0009,Y)	ld	AL,@(H'0013,X)	add	AL,#-H'0001	st	AL,@(H'0013,X)?L13:	tst	@(H'000C,Y)	beq	?L14	tst	@(H'000D,Y)	beq	?L14	ld	X,@(H'0009,Y)	tst	@(H'0013,X)	bne	?L18?L14:	ld	AL,#H'0000	st	AL,@(H'000B,Y)	tst	@(H'000C,Y)	beq	?L20	ld	X,@(H'0009,Y)	tst	@(H'0013,X)	bne	?L11?L20:	ld	AL,#H'0001	st	AL,@(H'000B,Y)?L11:?LBE6:?LBE5:	ld	AH,@(H'000B,Y)?LBE_vcgGetFirstPhonebookBuffer:	leave	#15;.stabn	192,0,0,?LBB5;.stabn	192,0,0,?LBB6;.stabn	224,0,0,?LBE6;.stabn	224,0,0,?LBE5$_vcgGetNextPhonebookBuffer:	enter	#13?LBB_vcgGetNextPhonebookBuffer:	st	AH,@(H'0009,Y)?LBB7:	ld	AL,#H'0001	st	AL,@(H'000A,Y)	bsr	$_resetBuffer	ld	AH,@(H'0009,Y)	ld	AL,@$XAP_UY	bsr	$_pbaGetCurrentEntry	ld	X,@(H'0009,Y)	tst	@(H'0013,X)	beq	?L24?L28:	ld	AH,@(H'0009,Y)	ld	AL,@$XAP_UY	bsr	_vcgFillBuffer	st	AH,@(H'000B,Y)	cmp	AH,#H'0000	beq	?L23	ld	AH,@(H'0009,Y)	ld	AL,@$XAP_UY	bsr	$_pbaGotoNextEntry	st	AH,@(H'000A,Y)	ld	AH,@(H'0009,Y)	bsr	_vcgResetState	ld	X,@(H'0009,Y)	ld	AL,@(H'0013,X)	add	AL,#-H'0001	st	AL,@(H'0013,X)?L23:	tst	@(H'000A,Y)	beq	?L24	tst	@(H'000B,Y)	beq	?L24	ld	X,@(H'0009,Y)	tst	@(H'0013,X)	bne	?L28?L24:	ld	AH,#H'0000	tst	@(H'000A,Y)	beq	?L30

⌨️ 快捷键说明

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