📄 spp_dev_b.xap
字号:
.CODE?L36: .SEG CONST dc ?L62-?L36 dc ?L62-?L36 dc ?L30-?L36 dc ?L27-?L36 dc ?L62-?L36 .CODE?L27: ld X,@(H'0005,Y) tst @(H'0001,X) bne ?L28; bsr $_StreamUartSink DC ((256*104)+9); bsr $_StreamSourceFromSink DC ((256*74)+9) ld X,@(H'0005,Y) ld AL,@(H'0002,X); bsr $_StreamConnect DC ((256*71)+9) ld X,@(H'0005,Y) ld AH,@(H'0002,X); bsr $_StreamSourceFromSink DC ((256*74)+9) st AH,@(H'0006,Y); bsr $_StreamUartSink DC ((256*104)+9) ld AL,@$XAP_AH ld AH,@(H'0006,Y); bsr $_StreamConnect DC ((256*71)+9) ld X,@(H'0005,Y) ld AL,@(0,X) st AL,@_theSppApp+H'0001 ld AH,#H'0004 bsr $_setSppState ld AH,#H'0000 bsr $_ConnectionWriteScanEnable ld AH,#(_theSppApp) ld AL,#H'0000; bsr $_MessageCancelFirst DC ((256*10)+9) bra (?L10)?L28: ld AH,#H'0002 bra (?L90)?L30: ld X,@(H'0005,Y) tst @(H'0001,X) bne ?L10 ld AH,@(0,X) bra (?L91)?L37:?LBE3: cmp AH,#(H'0001+H'0004) bcc ?L62 ld X,@(-1,Y) ld X,@(?JTBASE45,X) brxl .SEG CONST?JTBASE45: .CODE?L45: .SEG CONST dc ?L62-?L45 dc ?L62-?L45 dc ?L39-?L45 dc ?L62-?L45 dc ?L62-?L45 .CODE?L39: ld AH,#(_theSppApp) ld AL,@(H'0008,Y) bsr $_sppDevAuthoriseConnectInd ld AH,#H'0003 bra (?L90)?L46: cmp AH,#H'0003 bcz ?L62 cmp AH,#H'0004 beq ?L77 bra (?L62)?L55: ld X,@$XAP_AH cmp AH,#(H'0001+H'0004) bcc ?L62 ld X,@(?JTBASE63,X) brxl .SEG CONST?JTBASE63: .CODE?L63: .SEG CONST dc ?L62-?L63 dc ?L62-?L63 dc ?L57-?L63 dc ?L62-?L63 dc ?L62-?L63 .CODE?L57: ld AH,#H'0000 bsr $_ConnectionWriteScanEnable ld AH,#H'0001?L90: bsr $_setSppState bra (?L10)?L62: ld AH,@(-1,Y) bsr _unhandledSppState bra (?L10)?L64: ld AH,@(H'0008,Y) bsr $_sppDevHandlePinCodeRequest bra (?L10)?L65: ld AH,@(H'0008,Y) bsr $_sppDevAuthoriseResponse bra (?L10)?L66: ld AH,@(H'0008,Y) bsr $_sppDevSetTrustLevel bra (?L10)?L68: ld AH,#H'0000 st AH,@(0,Y) ld AL,#H'0001 st AL,@(H'0001,Y) st AH,@(H'0002,Y) st AH,@(H'0003,Y) st AH,@(H'0004,Y) ld AH,#(_theSppApp+H'0002) ld AL,#H'0003 bsr $_ConnectionSmIoCapabilityResponse bra (?L10)?L69: ld X,@(H'0008,Y)?LBB4: ld AL,@(0,X) st AL,@_theSppApp+H'0002 ld AL,@(H'0001,X) st AL,@_theSppApp+H'0003 ld AL,@(H'0002,X) st AL,@_theSppApp+H'0004 ld AL,@(H'0003,X) st AL,@_theSppApp+H'0005?LBE4: bra (?L10)?L72: ld AL,@_theSppApp+H'0006 cmp AL,#(H'0001+H'0003) bcc ?L81 cmp AL,#H'0001 bcc ?L77 bra (?L10)?L81: cmp AL,#H'0004 beq ?L78 bra (?L10)?L77: ld AH,#(_theSppApp) bsr $_sppDevInquire bra (?L10)?L78: ld AH,@_theSppApp+H'0001?L91: bsr $_SppDisconnect?L10:?LBE2:?LBE_app_handler: leave #8;.stabn 192,0,0,?LBB2;.stabn 192,0,0,?LBB3;.stabn 224,0,0,?LBE3;.stabn 224,0,0,?LBE2$_main: enter #10?LBB_main:?LBB5:; bsr $_StreamUartSink DC ((256*104)+9); bsr $_StreamSourceFromSink DC ((256*74)+9) cmp AH,#H'0000 beq ?L108 ld AL,#lwrd(_app_handler) st AL,@_theSppApp ld AH,#H'0000 bsr $_setSppState ld AL,#H'0000 st AL,@_theSppApp+H'0001 ld AH,@$XAP_UY ld AL,#(_theSppApp) bsr $_pioInit ld AH,#(_theSppApp) bsr $_ConnectionInit bsr $_MessageLoop?L108:?LBE5: ld AH,#H'0000?LBE_main: leave #10;.stabn 192,0,0,?LBB5;.stabn 224,0,0,?LBE5 .SEG VAR_theSppApp: DS 7 ENDMOD;# Function pattern *movqi2 used[0] = 19 used[1] = 10 total = 29;# Function pattern *movqi3 used[0] = 42 total = 42;# Function pattern jump used[0] = 25 total = 25;# Function pattern *call1 used[0] = 19 total = 19;# Function pattern *call_value1 used[0] = 10 total = 10;# Function pattern tablejump_1 used[0] = 3 total = 3;# Function pattern movstrqi+3 used[0] = 3 used[1] = 4 total = 7;# Function pattern movstrqi+4 used[1] = 10 total = 10;# Function pattern movstrqi+5 used[0] = 16 total = 16 MODULE spp_dev_auth .LARGE ; really small mode but we need space for debug symbols; GNU C version 3.3.3 (CSR version 25 for xap); compiled by GNU C version 3.2.3 (mingw special 20030504-1).;# options passed: -IC:/BlueLab401/tools/include/firmware;# -IC:/BlueLab401/tools/include/standard;# -IC:/BlueLab401/tools/include/profiles/BlueLab4.0.1-release -iprefix;# -isystem -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=3;# -DDEV_CASIRA -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;# -fguess-branch-probability -fmath-errno -ftrapping-math -mpeephole;# -mquiet-mode -minline-block-copy-mode -menhanced-mode -mload-cache-mode;# -mbitfield-mode -mtest4 .ENHANCED .CODE$_sppDevHandlePinCodeRequest: enter #19?LBB_sppDevHandlePinCodeRequest: st AH,@(H'0011,Y)?LBB2: ld AL,#H'0010 st AL,@(0,Y) ld AH,#H'035B ld AL,@$XAP_UY add AL,#H'0001; bsr $_PsFullRetrieve DC ((256*21)+9) ld X,@$XAP_AH cmp AH,#H'0000 beq ?L3 cmp AH,#H'0010 bcz ?L2?L3: ld X,#H'0000?L2: ld AL,@$XAP_UY add AL,#H'0001 st AL,@(0,Y) ld AH,@(H'0011,Y) ld AL,@$XAP_UXL bsr $_ConnectionSmPinCodeResponse?LBE2:?LBE_sppDevHandlePinCodeRequest: leave #19;.stabn 192,0,0,?LBB2;.stabn 224,0,0,?LBE2$_sppDevAuthoriseResponse: enter #5?LBB_sppDevAuthoriseResponse: ld X,@$XAP_AH ld AH,@(H'0005,X) ld AL,@(H'0006,X) st AH,@(0,Y) st AL,@(1,Y) ld AL,@(H'0007,X) st AL,@(H'0002,Y) ld AL,#H'0001 st AL,@(H'0003,Y) ld AH,@$XAP_UXL ld AL,@(H'0004,X) bsr $_ConnectionSmAuthoriseResponse?LBE_sppDevAuthoriseResponse: leave #5$_sppDevAuthoriseConnectInd: enter #4?LBB_sppDevAuthoriseConnectInd: ld X,@$XAP_AL add AL,#H'0001 st AL,@(0,Y) ld AL,#H'0001 st AL,@(H'0001,Y) ld AL,#H'0000 st AL,@(H'0002,Y) ld AH,@(0,X) ld AL,#H'0001 bsr $_SppConnectResponseLazy?LBE_sppDevAuthoriseConnectInd: leave #4$_sppDevSetTrustLevel: enter #1?LBB_sppDevSetTrustLevel: ld X,@$XAP_AH tst @(H'0004,X) bne ?L7 ld AL,#H'0001 bsr $_ConnectionSmSetTrustLevel?L7:?LBE_sppDevSetTrustLevel: leave #1 ENDMOD;# Function pattern *movqi2 used[0] = 14 used[1] = 1 total = 15;# Function pattern *movqi3 used[0] = 11 total = 11;# Function pattern *movhi used[2] = 1 used[3] = 1 total = 2;# Function pattern *addqi0 used[0] = 2 total = 2;# Function pattern *addqi2 used[0] = 1 total = 1;# Function pattern *call1 used[0] = 4 total = 4;# Function pattern *call_value1 used[0] = 1 total = 1;# Function pattern movstrqi+3 used[0] = 1 used[1] = 1 total = 2;# Function pattern movstrqi+5 used[0] = 1 total = 1 MODULE spp_dev_b_buttons .LARGE ; really small mode but we need space for debug symbols; GNU C version 3.3.3 (CSR version 25 for xap); compiled by GNU C version 3.2.3 (mingw special 20030504-1).;# options passed: -IC:/BlueLab401/tools/include/firmware;# -IC:/BlueLab401/tools/include/standard;# -IC:/BlueLab401/tools/include/profiles/BlueLab4.0.1-release -iprefix;# -isystem -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=3;# -DDEV_CASIRA -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;# -fguess-branch-probability -fmath-errno -ftrapping-math -mpeephole;# -mquiet-mode -minline-block-copy-mode -menhanced-mode -mload-cache-mode;# -mbitfield-mode -mtest4 .ENHANCED .CODE_pio_encode: enter #1?LBB_pio_encode: cmp AH,#H'1000 bne ?L4 ld AH,#H'0000 bra (?L1)?L4: ld AH,#H'0001?L1:?LBE_pio_encode: leave #1 .SEG CONST_enter_messages_sBUTTON_RESET: dc H'0000 dc H'0000 dc H'03E8_enter_messages: dc H'0001 dc _enter_messages_sBUTTON_RESET .CODE_send_pio_enter_messages: enter #9?LBB_send_pio_enter_messages: st AH,@(H'0003,Y) st AL,@(H'0004,Y) ld X,@$XAP_AL?LBB2: add X,@$XAP_AL ld AL,@(_enter_messages,X) st AL,@(H'0005,Y) ld X,@(_enter_messages+H'0001,X) st X,@(H'0007,Y) ld X,@$XAP_AL add X,#-H'0001 st X,@(H'0006,Y) cmp X,#-H'0001 beq ?L21?L19: ld X,@(H'0007,Y) ld AH,@(0,X) lsr #H'000E and AH,#H'0001 cmp AH,#H'0000 beq ?L11 ld X,@(H'0003,Y) ld AL,@(H'0003,X) cmp AL,@(H'0004,Y) bne ?L12 ld AH,@$XAP_UXL ld AL,#H'0001 bsr $_MessageCancelAll cmp AH,#H'0000 beq ?L13 ld AL,#H'0001 ld X,@(H'0003,Y) st AL,@(H'0002,X) ld AH,@(H'0001,X) ld AL,#H'0000 st AL,@(0,Y) bra (?L23)?L13: ld AL,#H'0000 st AL,@(0,Y) bra (?L22)?L12: ld AL,@(H'0004,Y) ld X,@(H'0003,Y) st AL,@(H'0003,X) ld AH,@$XAP_UXL ld AL,#H'0001 bsr $_MessageCancelAll ld X,#H'0000 st X,@(0,Y)?L22: ld X,@(H'0007,Y) ld AH,@(H'0001,X) lsr #H'0001 ld AL,@$XAP_AH ld AH,#H'0000 st AH,@(H'0001,Y) st AL,@(H'0002,Y) ld AH,@(H'0003,Y) ld AL,#H'0001; bsr $_MessageSendLater DC ((256*9)+9) bra (?L16)?L11: ld X,@(H'0007,Y) ld AH,@(0,X) lsr #H'000F cmp AH,#H'0000 bne ?L17 st AH,@(0,Y) ld X,@(H'0003,Y) ld AH,@(H'0001,X)?L23: ld X,@(H'0007,Y) ld AL,@(H'0002,X) bsr $_MessageSend bra (?L16)?L17: ld AL,@(H'0004,Y) ld X,@(H'0003,Y) st AL,@(H'0002,X) ld AL,@(H'0006,Y) nadd AL,@(H'0005,Y) add AL,#-H'0001 st AL,@(H'0007,X)?L16: ld X,@(H'0007,Y) add X,#H'0003 st X,@(H'0007,Y) ld AL,@(H'0006,Y) add AL,#-H'0001 st AL,@(H'0006,Y) cmp AL,#-H'0001 bne ?L19?L21:?LBE2:?LBE_send_pio_enter_messages: leave #9;.stabn 192,0,0,?LBB2;.stabn 224,0,0,?LBE2 .SEG CONST_timed_messages: dc H'0000 dc H'0000 .CODE_send_pio_timed_message: enter #6?LBB_send_pio_timed_message: st AH,@(H'0003,Y) st AL,@(H'0004,Y)?LBB3: ld AH,#H'0001; bsr $_malloc DC ((256*3)+9); bsr $_PanicNull DC ((256*15)+9) ld X,@$XAP_AH ld AL,@(H'0004,Y) st AL,@(0,X) tst @(H'0006,Y) beq ?L28 st AH,@(0,Y) ld X,@(H'0004,Y) ld AH,@(H'0001,X) lsr #H'0001 ld AL,@$XAP_AH ld AH,#H'0000 bra (?L30)?L28: st AH,@(0,Y) ld X,@(H'0004,Y) ld AL,@(0,X) and AL,#H'7FFF ld AH,#H'0000?L30: st AH,@(H'0001,Y) st AL,@(H'0002,Y) ld AH,@(H'0003,Y) ld AL,#H'0000; bsr $_MessageSendLater DC ((256*9)+9)?LBE3:?LBE_send_pio_timed_message: leave #6;.stabn 192,0,0,?LBB3;.stabn 224,0,0,?LBE3_send_pio_timed_messages: enter #5?LBB_send_pio_timed_messages: st AH,@(H'0001,Y)?LBB4: ld X,@$XAP_AL add X,@$XAP_AL ld AH,@(_timed_messages,X) ld X,@(_timed_messages+H'0001,X) st X,@(H'0003,Y) add AH,#-H'0001 st AH,@(H'0002,Y) cmp AH,#-H'0001 beq ?L37?L35: ld AL,@(H'0003,Y) ld AH,@$XAP_AL add AH,#H'0003 st AH,@(H'0003,Y) ld AH,#H'0000 st AH,@(0,Y) ld AH,@(H'0001,Y) bsr _send_pio_timed_message ld AL,@(H'0002,Y) add AL,#-H'0001 st AL,@(H'0002,Y) cmp AL,#-H'0001 bne ?L35?L37:?LBE4:?LBE_send_pio_timed_messages: leave #5;.stabn 192,0,0,?LBB4;.stabn 224,0,0,?LBE4_pioChanged: enter #7?LBB_pioChanged: st AH,@(H'0001,Y) st AL,@(H'0002,Y)?LBB5: ld AL,@(H'0007,Y) st AL,@(H'0004,Y) ld AL,#H'0000 ld X,@(H'0002,Y) cmp AL,@(H'0004,X) beq ?L41?LBB6: ld AH,#H'0001; bsr $_malloc DC ((256*3)+9) ld X,@$XAP_AH ld AL,#H'0000 st AL,@(0,X) st AH,@(0,Y) ld X,@(H'0002,Y) ld AH,@(H'0001,X) ld AL,#H'03E9 bsr $_MessageSend ld AL,#H'0000 ld X,@(H'0002,Y) st AL,@(H'0004,X)?L41:?LBE6: ld AH,@(H'0004,Y) bsr _pio_encode st AH,@(H'0003,Y) ld X,@(H'0002,Y) ld AH,@(H'0002,X) cmp AH,#H'0001 beq ?L42 ld AL,@(H'0003,Y) cmp AL,@$XAP_AH beq ?L42 ld AL,@(H'0004,Y)?LBB7: xor AL,@(H'0006,X) and AL,@(H'0006,X) cmp AL,@(H'0006,X) bne ?L43
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -