Index: output/bt_program23.icode
===================================================================
--- /branch/mouse_project/YFK/OnlyBLE/output/bt_program23.icode	(revision 1520)
+++ /branch/mouse_project/YFK/OnlyBLE/output/bt_program23.icode	(working copy)
@@ -1,7 +1,7 @@
  00000000  0x00000042 bbit1  0x00000008 , 0x0000000f 
  00000001  0x00000043 beq  0x00000001 , 0x00000026 
- 00000002  0x00000044 beq  0x00000085 , 0x000006a1 
- 00000003  0x00000045 beq  0x00000089 , 0x00000672 
+ 00000002  0x00000044 beq  0x00000085 , 0x000006c2 
+ 00000003  0x00000045 beq  0x00000089 , 0x00000693 
  00000004  0x00000046 beq  0x000000a1 , 0x0000002f 
  00000005  0x00000047 beq  0x000000b1 , 0x00000034 
  00000006  0x00000049 beq  0x000000c4 , 0x00000253 
@@ -21,10 +21,10 @@
  00000020  0x00000058 beq  0x00000063 , 0x0000059a 
  00000021  0x00000059 beq  0x00000066 , 0x000005c4 
  00000022  0x0000005a beq  0x00000067 , 0x000005db 
- 00000023  0x0000005b beq  0x0000006a , 0x00000607 
- 00000024  0x0000005c beq  0x00000077 , 0x00000612 
- 00000025  0x0000005d beq  0x000000fa , 0x00000622 
- 00000026  0x0000005e beq  0x0000008c , 0x0000062b 
+ 00000023  0x0000005b beq  0x0000006a , 0x00000628 
+ 00000024  0x0000005c beq  0x00000077 , 0x00000633 
+ 00000025  0x0000005d beq  0x000000fa , 0x00000643 
+ 00000026  0x0000005e beq  0x0000008c , 0x0000064c 
  00000027  0x0000005f branch  0x00002a8e 
  00000028  0x00000063 copy  0x0000003f , 0x00000011 
  00000029  0x00000064 fetcht  0x00000001 , 0x00004c89 
@@ -90,7 +90,7 @@
  00000089  0x00000141 store  0x00000001 , 0x00004bcf 
  00000090  0x00000143 store  0x00000001 , 0x00004b8a 
  00000091  0x00000144 rtn 
- 00000092  0x0000014c call  0x0000063e 
+ 00000092  0x0000014c call  0x0000065f 
  00000093  0x0000014d fetch  0x00000001 , 0x00004d05 
  00000094  0x0000014e beq  0x00000001 , 0x00000061 
  00000095  0x0000014f beq  0x00000002 , 0x00000065 
@@ -117,7 +117,7 @@
  00000116  0x0000016d call  0x00000160 
  00000117  0x0000016e jam  0x00000002 , 0x00004c13 
  00000118  0x0000016f branch  0x000000c3 
- 00000119  0x00000172 call  0x0000063e 
+ 00000119  0x00000172 call  0x0000065f 
  00000120  0x00000173 jam  0x00000000 , 0x00004d01 
  00000121  0x00000174 branch  0x00000053 
  00000122  0x00000177 jam  0x00000002 , 0x00004d06 
@@ -204,7 +204,7 @@
  00000203  0x000001e0 nbranch  0x000000ec , 0x0000002f 
  00000204  0x000001e1 call  0x000000da 
  00000205  0x000001e2 call  0x00000107 
- 00000206  0x000001e3 call  0x0000063a 
+ 00000206  0x000001e3 call  0x0000065b 
  00000207  0x000001e5 jam  0x00000000 , 0x00004b3f 
  00000208  0x000001e6 fetch  0x00000001 , 0x00004bcd 
  00000209  0x000001e7 increase  0x00000001 , 0x0000003f 
@@ -219,7 +219,7 @@
  00000218  0x000001f5 arg  0x00000004 , 0x00000039 
  00000219  0x000001f6 arg  0x00004b6a , 0x00000005 
  00000220  0x000001f7 branch  0x00007ec6 
- 00000221  0x000001fa call  0x00000637 
+ 00000221  0x000001fa call  0x00000658 
  00000222  0x000001fb branch  0x0000012d 
  00000223  0x000001fe disable  0x0000002f 
  00000224  0x000001ff call  0x000001fa 
@@ -598,7 +598,7 @@
  00000597  0x00000421 call  0x00000363 
  00000598  0x00000426 fetch  0x00000001 , 0x000041de 
  00000599  0x00000427 store  0x00000001 , 0x00004c85 
- 00000600  0x00000428 call  0x00000637 
+ 00000600  0x00000428 call  0x00000658 
  00000601  0x00000429 fetch  0x00000001 , 0x00004685 
  00000602  0x0000042a store  0x00000001 , 0x000046da 
  00000603  0x0000042b call  0x000043ca 
@@ -609,7 +609,7 @@
  00000608  0x00000433 ncall  0x000002cd , 0x0000002b 
  00000609  0x00000434 call  0x00000291 
  00000610  0x00000435 rtn  0x0000002b 
- 00000611  0x00000436 call  0x000006ac 
+ 00000611  0x00000436 call  0x000006cd 
  00000612  0x00000437 call  0x00000312 
  00000613  0x00000438 call  0x00000304 
  00000614  0x0000043a call  0x0000026c 
@@ -749,9 +749,9 @@
  00000748  0x00000502 arg  0x00000064 , 0x00000012 
  00000749  0x00000503 branch  0x000065d1 
  00000750  0x00000505 jam  0x00000034 , 0x00004210 
- 00000751  0x00000506 setarg  0x00000000 
- 00000752  0x00000507 invert  0x0000003f , 0x0000003f 
- 00000753  0x00000508 store  0x00000006 , 0x000044a0 
+ 00000751  0x00000506 setarg  0x000f0f0f 
+ 00000752  0x00000507 store  0x00000003 , 0x000044a0 
+ 00000753  0x00000508 store  0x00000003 , 0x000044a3 
  00000754  0x00000509 rtn 
  00000755  0x0000050f call  0x000033c4 
  00000756  0x00000510 branch  0x000002ff , 0x00000005 
@@ -788,7 +788,7 @@
  00000787  0x0000054d store  0x00000002 , 0x00004cff 
  00000788  0x0000054e setarg  0x0000033a 
  00000789  0x0000054f store  0x00000002 , 0x000041ef 
- 00000790  0x00000550 setarg  0x0000061c 
+ 00000790  0x00000550 setarg  0x0000063d 
  00000791  0x00000551 store  0x00000002 , 0x000041f9 
  00000792  0x00000552 setarg  0x00000249 
  00000793  0x00000553 store  0x00000002 , 0x000041ed 
@@ -1272,8 +1272,8 @@
  00001271  0x00000885 call  0x00004079 
  00001272  0x00000886 call  0x0000407e 
  00001273  0x00000887 call  0x00000510 
- 00001274  0x00000888 nbranch  0x000006ac , 0x00000028 
- 00001275  0x00000889 call  0x000006a3 
+ 00001274  0x00000888 nbranch  0x000006cd , 0x00000028 
+ 00001275  0x00000889 call  0x000006c4 
  00001276  0x0000088a branch  0x00003fa0 
  00001277  0x0000088e fetch  0x00000001 , 0x000046e0 
  00001278  0x00000891 beq  0x00000007 , 0x00000502 
@@ -1392,7 +1392,7 @@
  00001391  0x00000957 beq  0x0000000c , 0x00005395 
  00001392  0x00000958 call  0x000055aa 
  00001393  0x00000959 call  0x0000561e 
- 00001394  0x0000095a call  0x00000648 
+ 00001394  0x0000095a call  0x00000669 
  00001395  0x0000095b branch  0x0000538f 
  00001396  0x0000095e fetch  0x00000001 , 0x00000016 
  00001397  0x0000095f increase  0x00000001 , 0x0000003f 
@@ -1434,7 +1434,7 @@
  00001433  0x0000098e branch  0x00007fe9 
  00001434  0x00000991 fetch  0x00000001 , 0x00000456 
  00001435  0x00000992 bbit1  0x00000005 , 0x000005ae 
- 00001436  0x00000993 call  0x0000063a 
+ 00001436  0x00000993 call  0x0000065b 
  00001437  0x00000994 fetch  0x00000001 , 0x0000478e 
  00001438  0x00000995 nbranch  0x000005a4 , 0x00000034 
  00001439  0x00000996 fetch  0x00000001 , 0x0000043f 
@@ -1466,7 +1466,7 @@
  00001465  0x000009b7 store  0x00000001 , 0x000043dc 
  00001466  0x000009b8 call  0x00005650 
  00001467  0x000009b9 rtn 
- 00001468  0x000009be branch  0x0000063e 
+ 00001468  0x000009be branch  0x0000065f 
  00001469  0x000009c1 fetch  0x00000001 , 0x0000479f 
  00001470  0x000009c2 rtn  0x00000034 
  00001471  0x000009c3 fetch  0x00000001 , 0x000046c5 
@@ -1499,7 +1499,7 @@
  00001498  0x000009e2 branch  0x00005c8a 
  00001499  0x000009e5 ifetch  0x00000002 , 0x00000006 
  00001500  0x000009e6 beq  0x00000004 , 0x000005df 
- 00001501  0x000009e7 beq  0x00000006 , 0x000005fc 
+ 00001501  0x000009e7 beq  0x00000006 , 0x0000061d 
  00001502  0x000009e8 branch  0x00005698 
  00001503  0x000009ea call  0x00007ea5 
  00001504  0x000009eb call  0x000005bd 
@@ -1509,7 +1509,7 @@
  00001508  0x000009ef beq  0x00000010 , 0x000005ee 
  00001509  0x000009f1 rshift8  0x0000003f , 0x00000002 
  00001510  0x000009f2 sub  0x00000002 , 0x00000024 , 0x0000003e 
- 00001511  0x000009f4 branch  0x000058ad , 0x00000002 
+ 00001511  0x000009f3 branch  0x000005fc , 0x00000002 
  00001512  0x000009f5 arg  0x000047c6 , 0x00000002 
  00001513  0x000009f6 storet  0x00000002 , 0x000044bc 
  00001514  0x000009f7 call  0x000058ad 
@@ -1530,273 +1530,306 @@
  00001529  0x00000a08 setarg  0x0000002b 
  00001530  0x00000a09 istore  0x00000002 , 0x00000006 
  00001531  0x00000a0a rtn 
- 00001532  0x00000a38 ifetch  0x00000001 , 0x00000006 
- 00001533  0x00000a39 beq  0x00000001 , 0x00000600 
- 00001534  0x00000a3a beq  0x00000005 , 0x00000602 
- 00001535  0x00000a3b branch  0x00005af6 
- 00001536  0x00000a3e jam  0x00000001 , 0x00004b41 
- 00001537  0x00000a3f branch  0x00005b09 
- 00001538  0x00000a42 call  0x00005b5a 
- 00001539  0x00000a43 fetch  0x00000001 , 0x0000043f 
- 00001540  0x00000a44 set0  0x00000005 , 0x0000003f 
- 00001541  0x00000a45 store  0x00000001 , 0x0000043f 
- 00001542  0x00000a46 branch  0x00005c8e 
- 00001543  0x00000a49 fetch  0x00000001 , 0x00000016 
- 00001544  0x00000a4a bne  0x00000027 , 0x000056f2 
- 00001545  0x00000a4b call  0x0000060d 
- 00001546  0x00000a4c arg  0x00000000 , 0x00000007 
- 00001547  0x00000a4d fetch  0x00000002 , 0x00004482 
- 00001548  0x00000a4e branch  0x00007f08 
- 00001549  0x00000a50 random  0x0000003f 
- 00001550  0x00000a51 arg  0x000001ff , 0x00000002 
- 00001551  0x00000a52 iand  0x00000002 , 0x0000003f 
- 00001552  0x00000a53 add  0x0000003f , 0x000000fa , 0x0000003f 
- 00001553  0x00000a54 branch  0x00003cbe 
- 00001554  0x00000a57 disable  0x0000002b 
- 00001555  0x00000a58 branch  0x00000615 , 0x0000002e 
- 00001556  0x00000a59 nbranch  0x00005806 , 0x0000002d 
- 00001557  0x00000a5b call  0x00002bcb 
- 00001558  0x00000a5c fetch  0x00000002 , 0x000040c1 
- 00001559  0x00000a5d store  0x00000002 , 0x0000044d 
- 00001560  0x00000a5e fetch  0x00000001 , 0x000046c5 
- 00001561  0x00000a5f compare  0x00000003 , 0x0000003f , 0x00000003 
- 00001562  0x00000a60 nbranch  0x00002bde , 0x00000001 
- 00001563  0x00000a61 branch  0x000057fb 
- 00001564  0x00000a64 fetch  0x00000001 , 0x0000479f 
- 00001565  0x00000a65 nrtn  0x00000034 
- 00001566  0x00000a66 fetch  0x00000001 , 0x00000478 
- 00001567  0x00000a67 sub  0x0000003f , 0x0000001a , 0x0000003f 
- 00001568  0x00000a68 nrtn  0x00000005 
- 00001569  0x00000a69 branch  0x00003d60 
- 00001570  0x00000a6c call  0x000062bc 
- 00001571  0x00000a6d nbranch  0x00007ddb , 0x00000034 
- 00001572  0x00000a6e fetch  0x00000001 , 0x00000a99 
- 00001573  0x00000a6f bmark0  0x00000009 , 0x00007dd6 
- 00001574  0x00000a70 beq  0x00000012 , 0x00000628 
- 00001575  0x00000a71 branch  0x00007dca 
- 00001576  0x00000a74 call  0x00005890 
- 00001577  0x00000a75 nrtn  0x00000034 
- 00001578  0x00000a76 branch  0x00005abf 
- 00001579  0x00000a7a hfetch  0x00000001 , 0x00008077 
- 00001580  0x00000a7b and_into  0x000000fd , 0x0000003f 
- 00001581  0x00000a7c hstore  0x00000001 , 0x00008077 
- 00001582  0x00000a7d hfetcht  0x00000001 , 0x00008073 
- 00001583  0x00000a7e or_into  0x00000002 , 0x00000002 
- 00001584  0x00000a7f hstoret  0x00000001 , 0x00008073 
- 00001585  0x00000a80 call  0x000063ee 
- 00001586  0x00000a81 and_into  0x000000fd , 0x00000002 
- 00001587  0x00000a82 nop  0x0000000d 
- 00001588  0x00000a83 call  0x000063f2 
- 00001589  0x00000a84 hstoret  0x00000001 , 0x00008073 
- 00001590  0x00000a85 rtn 
- 00001591  0x00000a8c jam  0x00000001 , 0x00004d0a 
- 00001592  0x00000a8d jam  0x00000000 , 0x00004d07 
- 00001593  0x00000a8e rtn 
- 00001594  0x00000a90 fetch  0x00000001 , 0x00004d07 
- 00001595  0x00000a91 increase  0x00000001 , 0x0000003f 
- 00001596  0x00000a92 store  0x00000001 , 0x00004d07 
- 00001597  0x00000a93 rtn 
- 00001598  0x00000a95 fetch  0x00000001 , 0x00004d07 
- 00001599  0x00000a96 sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00001600  0x00000a97 ncall  0x00000646 , 0x00000002 
- 00001601  0x00000a98 fetch  0x00000001 , 0x00004d07 
- 00001602  0x00000a99 rtneq  0x00000000 
- 00001603  0x00000a9a increase  0xffffffff , 0x0000003f 
- 00001604  0x00000a9b store  0x00000001 , 0x00004d07 
- 00001605  0x00000a9c rtn 
- 00001606  0x00000a9e jam  0x00000003 , 0x00004d07 
- 00001607  0x00000a9f rtn 
- 00001608  0x00000aa2 fetch  0x00000002 , 0x00004682 
- 00001609  0x00000aa3 rtnbit1  0x0000000b 
- 00001610  0x00000aa7 arg  0x00004c90 , 0x00000011 
- 00001611  0x00000aa8 call  0x00000238 
- 00001612  0x00000aa9 storet  0x00000001 , 0x00004d08 
- 00001613  0x00000aab setarg  0x00000082 
- 00001614  0x00000aac bmark1  0x00000026 , 0x00000650 
- 00001615  0x00000aad setarg  0x00000080 
- 00001616  0x00000aaf isub  0x00000002 , 0x0000003e 
- 00001617  0x00000ab0 nbranch  0x00000668 , 0x00000002 
- 00001618  0x00000ab2 fetch  0x00000001 , 0x00004d07 
- 00001619  0x00000ab3 sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00001620  0x00000ab4 nbranch  0x00000658 , 0x00000002 
- 00001621  0x00000ab5 fetch  0x00000001 , 0x00004d07 
- 00001622  0x00000ab6 beq  0x00000000 , 0x00000669 
- 00001623  0x00000ab7 rtn 
- 00001624  0x00000aba fetch  0x00000001 , 0x00004d07 
- 00001625  0x00000abb rtnne  0x00000020 
- 00001626  0x00000abc jam  0x00000000 , 0x00004d07 
- 00001627  0x00000abe fetcht  0x00000001 , 0x00004d08 
- 00001628  0x00000abf setarg  0x00000077 
- 00001629  0x00000ac0 bmark1  0x00000026 , 0x0000065f 
- 00001630  0x00000ac1 setarg  0x00000075 
- 00001631  0x00000ac3 isub  0x00000002 , 0x0000003e 
- 00001632  0x00000ac4 nrtn  0x00000002 
- 00001633  0x00000ac5 fetch  0x00000001 , 0x00004d0a 
- 00001634  0x00000ac6 beq  0x00000000 , 0x00000670 
- 00001635  0x00000ac7 increase  0xffffffff , 0x0000003f 
- 00001636  0x00000ac8 store  0x00000001 , 0x00004d0a 
- 00001637  0x00000ac9 beq  0x00000000 , 0x00000670 
- 00001638  0x00000acc jam  0x00000000 , 0x000041de 
- 00001639  0x00000acd rtn 
- 00001640  0x00000ad0 jam  0x00000000 , 0x00004d07 
- 00001641  0x00000ad2 fetch  0x00000001 , 0x00004d0a 
- 00001642  0x00000ad3 beq  0x00000002 , 0x0000066e 
- 00001643  0x00000ad4 increase  0x00000001 , 0x0000003f 
- 00001644  0x00000ad5 store  0x00000001 , 0x00004d0a 
- 00001645  0x00000ad6 beq  0x00000001 , 0x00000666 
- 00001646  0x00000ad9 jam  0x00000002 , 0x000041de 
- 00001647  0x00000ada rtn 
- 00001648  0x00000add jam  0x00000004 , 0x000041de 
- 00001649  0x00000ade rtn 
- 00001650  0x00000ae2 storet  0x00000001 , 0x00000017 
- 00001651  0x00000ae3 add  0x00000002 , 0x00000000 , 0x00000011 
- 00001652  0x00000ae4 call  0x00002981 
- 00001653  0x00000ae5 setarg  0x00000500 
- 00001654  0x00000ae6 call  0x00002a8f 
- 00001655  0x00000ae8 jam  0x00000001 , 0x00008906 
- 00001656  0x00000ae9 jam  0x0000003c , 0x00008900 
- 00001657  0x00000aea jam  0x000000e0 , 0x00008901 
- 00001658  0x00000aeb nop  0x0000000a 
- 00001659  0x00000aec jam  0x00000001 , 0x00008902 
- 00001660  0x00000aed jam  0x0000003d , 0x00008902 
- 00001661  0x00000aee nop  0x0000000a 
- 00001662  0x00000aef jam  0x000000b7 , 0x00008903 
- 00001663  0x00000af0 nop  0x0000000a 
- 00001664  0x00000af1 jam  0x0000007d , 0x00008902 
- 00001665  0x00000af2 fetch  0x00000001 , 0x000041de 
- 00001666  0x00000af5 beq  0x00000002 , 0x0000068a 
- 00001667  0x00000af7 beq  0x00000004 , 0x0000068f 
- 00001668  0x00000af8 beq  0x00000020 , 0x0000069e 
- 00001669  0x00000afb call  0x00000694 
- 00001670  0x00000afd jam  0x000000d0 , 0x00008955 
- 00001671  0x00000afe jam  0x000000e0 , 0x00008956 
- 00001672  0x00000b00 jam  0x0000006c , 0x00008958 
- 00001673  0x00000b02 branch  0x0000294b 
- 00001674  0x00000b0f call  0x00000699 
- 00001675  0x00000b11 jam  0x000000d0 , 0x00008955 
- 00001676  0x00000b12 jam  0x000000e0 , 0x00008956 
- 00001677  0x00000b14 jam  0x0000003c , 0x00008958 
- 00001678  0x00000b16 branch  0x00002953 
- 00001679  0x00000b23 call  0x00000694 
- 00001680  0x00000b25 jam  0x000000d0 , 0x00008955 
- 00001681  0x00000b26 jam  0x000000c0 , 0x00008956 
- 00001682  0x00000b28 jam  0x0000006c , 0x00008958 
- 00001683  0x00000b2a branch  0x0000295b 
- 00001684  0x00000b2d jam  0x0000005b , 0x0000894c 
- 00001685  0x00000b2e jam  0x00000096 , 0x0000894d 
- 00001686  0x00000b2f jam  0x0000002c , 0x0000894e 
- 00001687  0x00000b30 jam  0x00000046 , 0x0000894f 
- 00001688  0x00000b31 rtn 
- 00001689  0x00000b34 jam  0x000000fb , 0x0000894c 
- 00001690  0x00000b35 jam  0x000000ef , 0x0000894d 
- 00001691  0x00000b36 jam  0x000000ec , 0x0000894e 
- 00001692  0x00000b37 jam  0x0000005e , 0x0000894f 
- 00001693  0x00000b38 rtn 
- 00001694  0x00000b3c jam  0x000000c2 , 0x00008956 
- 00001695  0x00000b3d jam  0x000000d0 , 0x00008955 
- 00001696  0x00000b3e rtn 
- 00001697  0x00000b41 force  0x00000008 , 0x00000015 
- 00001698  0x00000b42 branch  0x000028fa 
- 00001699  0x00000b49 fetch  0x00000004 , 0x0000469b 
- 00001700  0x00000b4a rtn  0x00000034 
- 00001701  0x00000b4b call  0x000006f6 
- 00001702  0x00000b4c setarg  0x0000000c 
- 00001703  0x00000b4d call  0x000006e9 
- 00001704  0x00000b4e setarg  0x00000006 
- 00001705  0x00000b4f call  0x000006ef 
- 00001706  0x00000b50 fetch  0x00000001 , 0x00004b19 
- 00001707  0x00000b51 beq  0x00000001 , 0x000006af 
- 00001708  0x00000b54 arg  0x00000005 , 0x00000039 
- 00001709  0x00000b55 arg  0x00004b19 , 0x00000005 
- 00001710  0x00000b56 branch  0x00007ed4 
- 00001711  0x00000b59 fetch  0x00000002 , 0x00004b1a 
- 00001712  0x00000b5a store  0x00000002 , 0x000011be 
- 00001713  0x00000b5b fetch  0x00000002 , 0x0000469b 
- 00001714  0x00000b5c store  0x00000002 , 0x000011c0 
- 00001715  0x00000b5d call  0x000006c2 
- 00001716  0x00000b5e fetch  0x00000002 , 0x000011be 
- 00001717  0x00000b5f store  0x00000002 , 0x00004b1a 
- 00001718  0x00000b60 fetch  0x00000002 , 0x000011c0 
- 00001719  0x00000b61 store  0x00000002 , 0x0000469b 
- 00001720  0x00000b63 fetch  0x00000002 , 0x00004b1c 
- 00001721  0x00000b64 store  0x00000002 , 0x000011be 
- 00001722  0x00000b65 fetch  0x00000002 , 0x0000469d 
- 00001723  0x00000b66 store  0x00000002 , 0x000011c0 
- 00001724  0x00000b67 call  0x000006c2 
- 00001725  0x00000b68 fetch  0x00000002 , 0x000011be 
- 00001726  0x00000b69 store  0x00000002 , 0x00004b1c 
- 00001727  0x00000b6a fetch  0x00000002 , 0x000011c0 
- 00001728  0x00000b6b store  0x00000002 , 0x0000469d 
- 00001729  0x00000b6c rtn 
- 00001730  0x00000b73 fetch  0x00000002 , 0x000011be 
- 00001731  0x00000b74 fetcht  0x00000002 , 0x000011c0 
- 00001732  0x00000b75 iadd  0x00000002 , 0x0000003f 
- 00001733  0x00000b76 store  0x00000003 , 0x000011c2 
- 00001734  0x00000b77 isolate1  0x00000010 , 0x0000003f 
- 00001735  0x00000b78 branch  0x000006cf , 0x00000001 
- 00001736  0x00000b79 fetch  0x00000001 , 0x000011c3 
- 00001737  0x00000b7a beq  0x000000ff , 0x000006d6 
- 00001738  0x00000b7b fetch  0x00000001 , 0x000011c2 
- 00001739  0x00000b7d rshift  0x0000003f , 0x0000003f 
- 00001740  0x00000b7e store  0x00000002 , 0x000011be 
- 00001741  0x00000b7f store  0x00000002 , 0x000011c0 
- 00001742  0x00000b80 rtn 
- 00001743  0x00000b82 fetch  0x00000001 , 0x000011c3 
- 00001744  0x00000b83 beq  0x00000000 , 0x000006d3 
- 00001745  0x00000b84 fetch  0x00000003 , 0x000011c2 
- 00001746  0x00000b85 branch  0x000006cb 
- 00001747  0x00000b87 jam  0x00000000 , 0x000011c4 
- 00001748  0x00000b88 fetch  0x00000001 , 0x000011c2 
- 00001749  0x00000b89 branch  0x000006cb 
- 00001750  0x00000b8c fetch  0x00000001 , 0x000011c2 
- 00001751  0x00000b8d call  0x000006e1 
- 00001752  0x00000b8e store  0x00000001 , 0x000011be 
- 00001753  0x00000b8f store  0x00000001 , 0x000011c0 
- 00001754  0x00000b90 branch  0x000006df , 0x00000034 
- 00001755  0x00000b91 setarg  0x000000ff 
- 00001756  0x00000b93 store  0x00000001 , 0x000011bf 
- 00001757  0x00000b94 store  0x00000001 , 0x000011c1 
- 00001758  0x00000b95 rtn 
- 00001759  0x00000b97 setarg  0x00000000 
- 00001760  0x00000b98 branch  0x000006dc 
- 00001761  0x00000b9b sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00001762  0x00000b9c store  0x00000001 , 0x00000aae 
- 00001763  0x00000b9d fetch  0x00000001 , 0x00000aae 
- 00001764  0x00000b9e rshift  0x0000003f , 0x0000003f 
- 00001765  0x00000b9f store  0x00000001 , 0x00000aae 
- 00001766  0x00000ba0 fetch  0x00000001 , 0x00000aae 
- 00001767  0x00000ba1 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00001768  0x00000ba2 rtn 
- 00001769  0x00000ba6 isub  0x00000011 , 0x0000003e 
- 00001770  0x00000ba7 nbranch  0x000006f4 , 0x00000002 
- 00001771  0x00000ba8 isub  0x00000012 , 0x0000003e 
- 00001772  0x00000ba9 nbranch  0x000006f4 , 0x00000002 
- 00001773  0x00000bab jam  0x00000000 , 0x00004b19 
- 00001774  0x00000bac rtn 
- 00001775  0x00000bae isub  0x00000011 , 0x0000003e 
- 00001776  0x00000baf nrtn  0x00000002 
- 00001777  0x00000bb0 isub  0x00000012 , 0x0000003e 
- 00001778  0x00000bb1 nrtn  0x00000002 
- 00001779  0x00000bb2 branch  0x000006ed 
- 00001780  0x00000bb4 jam  0x00000001 , 0x00004b19 
- 00001781  0x00000bb5 rtn 
- 00001782  0x00000bb8 fetch  0x00000002 , 0x0000469b 
- 00001783  0x00000bb9 store  0x00000002 , 0x000011c0 
- 00001784  0x00000bba call  0x000006ff 
- 00001785  0x00000bbb copy  0x0000003f , 0x00000011 
- 00001786  0x00000bbc fetch  0x00000002 , 0x0000469d 
- 00001787  0x00000bbd store  0x00000002 , 0x000011c0 
- 00001788  0x00000bbe call  0x000006ff 
- 00001789  0x00000bbf copy  0x0000003f , 0x00000012 
- 00001790  0x00000bc0 rtn 
- 00001791  0x00000bc7 fetch  0x00000001 , 0x000011c1 
- 00001792  0x00000bc8 beq  0x000000ff , 0x00000704 
- 00001793  0x00000bc9 fetch  0x00000001 , 0x000011c0 
- 00001794  0x00000bcb and_into  0x000000ff , 0x0000003f 
- 00001795  0x00000bcd rtn 
- 00001796  0x00000bcf fetch  0x00000002 , 0x000011c0 
- 00001797  0x00000bd0 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00001798  0x00000bd1 branch  0x00000702 
+ 00001532  0x00000a0d beq  0x0000000a , 0x000005fe 
+ 00001533  0x00000a0e branch  0x000058ad 
+ 00001534  0x00000a10 fetcht  0x00000002 , 0x00000478 
+ 00001535  0x00000a11 fetch  0x00000001 , 0x000044e9 
+ 00001536  0x00000a12 bbit1  0x00000003 , 0x00000616 
+ 00001537  0x00000a14 call  0x0000576a 
+ 00001538  0x00000a15 branch  0x00005a76 , 0x00000034 
+ 00001539  0x00000a16 increase  0xfffffffe , 0x00000006 
+ 00001540  0x00000a17 ifetch  0x00000002 , 0x00000006 
+ 00001541  0x00000a18 arg  0x00002a50 , 0x00000002 
+ 00001542  0x00000a19 isub  0x00000002 , 0x0000003e 
+ 00001543  0x00000a1a branch  0x0000060c , 0x00000005 
+ 00001544  0x00000a1c fetch  0x00000002 , 0x00000478 
+ 00001545  0x00000a1d beq  0x00000013 , 0x00005a76 
+ 00001546  0x00000a1f fetcht  0x00000002 , 0x00000478 
+ 00001547  0x00000a20 branch  0x000059bf 
+ 00001548  0x00000a22 call  0x00007ea5 
+ 00001549  0x00000a23 fetch  0x00000001 , 0x00004b32 
+ 00001550  0x00000a24 add  0x0000003f , 0x00000001 , 0x00000011 
+ 00001551  0x00000a25 call  0x00005a82 
+ 00001552  0x00000a26 setarg  0x0000000b 
+ 00001553  0x00000a27 istore  0x00000001 , 0x00000005 
+ 00001554  0x00000a28 fetch  0x00000001 , 0x00004b32 
+ 00001555  0x00000a29 copy  0x0000003f , 0x00000039 
+ 00001556  0x00000a2a arg  0x00004b33 , 0x00000006 
+ 00001557  0x00000a2b branch  0x00007f01 
+ 00001558  0x00000a2e fetch  0x00000002 , 0x000044fa 
+ 00001559  0x00000a2f isub  0x00000002 , 0x0000003e 
+ 00001560  0x00000a30 nbranch  0x00000601 , 0x00000005 
+ 00001561  0x00000a32 call  0x00005a42 
+ 00001562  0x00000a33 nbranch  0x00000601 , 0x00000028 
+ 00001563  0x00000a34 jam  0x00000005 , 0x0000047a 
+ 00001564  0x00000a35 branch  0x00005a77 
+ 00001565  0x00000a38 ifetch  0x00000001 , 0x00000006 
+ 00001566  0x00000a39 beq  0x00000001 , 0x00000621 
+ 00001567  0x00000a3a beq  0x00000005 , 0x00000623 
+ 00001568  0x00000a3b branch  0x00005af6 
+ 00001569  0x00000a3e jam  0x00000001 , 0x00004b41 
+ 00001570  0x00000a3f branch  0x00005b09 
+ 00001571  0x00000a42 call  0x00005b5a 
+ 00001572  0x00000a43 fetch  0x00000001 , 0x0000043f 
+ 00001573  0x00000a44 set0  0x00000005 , 0x0000003f 
+ 00001574  0x00000a45 store  0x00000001 , 0x0000043f 
+ 00001575  0x00000a46 branch  0x00005c8e 
+ 00001576  0x00000a49 fetch  0x00000001 , 0x00000016 
+ 00001577  0x00000a4a bne  0x00000027 , 0x000056f2 
+ 00001578  0x00000a4b call  0x0000062e 
+ 00001579  0x00000a4c arg  0x00000000 , 0x00000007 
+ 00001580  0x00000a4d fetch  0x00000002 , 0x00004482 
+ 00001581  0x00000a4e branch  0x00007f08 
+ 00001582  0x00000a50 random  0x0000003f 
+ 00001583  0x00000a51 arg  0x000001ff , 0x00000002 
+ 00001584  0x00000a52 iand  0x00000002 , 0x0000003f 
+ 00001585  0x00000a53 add  0x0000003f , 0x000000fa , 0x0000003f 
+ 00001586  0x00000a54 branch  0x00003cbe 
+ 00001587  0x00000a57 disable  0x0000002b 
+ 00001588  0x00000a58 branch  0x00000636 , 0x0000002e 
+ 00001589  0x00000a59 nbranch  0x00005806 , 0x0000002d 
+ 00001590  0x00000a5b call  0x00002bcb 
+ 00001591  0x00000a5c fetch  0x00000002 , 0x000040c1 
+ 00001592  0x00000a5d store  0x00000002 , 0x0000044d 
+ 00001593  0x00000a5e fetch  0x00000001 , 0x000046c5 
+ 00001594  0x00000a5f compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00001595  0x00000a60 nbranch  0x00002bde , 0x00000001 
+ 00001596  0x00000a61 branch  0x000057fb 
+ 00001597  0x00000a64 fetch  0x00000001 , 0x0000479f 
+ 00001598  0x00000a65 nrtn  0x00000034 
+ 00001599  0x00000a66 fetch  0x00000001 , 0x00000478 
+ 00001600  0x00000a67 sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00001601  0x00000a68 nrtn  0x00000005 
+ 00001602  0x00000a69 branch  0x00003d60 
+ 00001603  0x00000a6c call  0x000062bc 
+ 00001604  0x00000a6d nbranch  0x00007ddb , 0x00000034 
+ 00001605  0x00000a6e fetch  0x00000001 , 0x00000a99 
+ 00001606  0x00000a6f bmark0  0x00000009 , 0x00007dd6 
+ 00001607  0x00000a70 beq  0x00000012 , 0x00000649 
+ 00001608  0x00000a71 branch  0x00007dca 
+ 00001609  0x00000a74 call  0x00005890 
+ 00001610  0x00000a75 nrtn  0x00000034 
+ 00001611  0x00000a76 branch  0x00005abf 
+ 00001612  0x00000a7a hfetch  0x00000001 , 0x00008077 
+ 00001613  0x00000a7b and_into  0x000000fd , 0x0000003f 
+ 00001614  0x00000a7c hstore  0x00000001 , 0x00008077 
+ 00001615  0x00000a7d hfetcht  0x00000001 , 0x00008073 
+ 00001616  0x00000a7e or_into  0x00000002 , 0x00000002 
+ 00001617  0x00000a7f hstoret  0x00000001 , 0x00008073 
+ 00001618  0x00000a80 call  0x000063ee 
+ 00001619  0x00000a81 and_into  0x000000fd , 0x00000002 
+ 00001620  0x00000a82 nop  0x0000000d 
+ 00001621  0x00000a83 call  0x000063f2 
+ 00001622  0x00000a84 hstoret  0x00000001 , 0x00008073 
+ 00001623  0x00000a85 rtn 
+ 00001624  0x00000a8c jam  0x00000001 , 0x00004d0a 
+ 00001625  0x00000a8d jam  0x00000000 , 0x00004d07 
+ 00001626  0x00000a8e rtn 
+ 00001627  0x00000a90 fetch  0x00000001 , 0x00004d07 
+ 00001628  0x00000a91 increase  0x00000001 , 0x0000003f 
+ 00001629  0x00000a92 store  0x00000001 , 0x00004d07 
+ 00001630  0x00000a93 rtn 
+ 00001631  0x00000a95 fetch  0x00000001 , 0x00004d07 
+ 00001632  0x00000a96 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001633  0x00000a97 ncall  0x00000667 , 0x00000002 
+ 00001634  0x00000a98 fetch  0x00000001 , 0x00004d07 
+ 00001635  0x00000a99 rtneq  0x00000000 
+ 00001636  0x00000a9a increase  0xffffffff , 0x0000003f 
+ 00001637  0x00000a9b store  0x00000001 , 0x00004d07 
+ 00001638  0x00000a9c rtn 
+ 00001639  0x00000a9e jam  0x00000003 , 0x00004d07 
+ 00001640  0x00000a9f rtn 
+ 00001641  0x00000aa2 fetch  0x00000002 , 0x00004682 
+ 00001642  0x00000aa3 rtnbit1  0x0000000b 
+ 00001643  0x00000aa7 arg  0x00004c90 , 0x00000011 
+ 00001644  0x00000aa8 call  0x00000238 
+ 00001645  0x00000aa9 storet  0x00000001 , 0x00004d08 
+ 00001646  0x00000aab setarg  0x00000082 
+ 00001647  0x00000aac bmark1  0x00000026 , 0x00000671 
+ 00001648  0x00000aad setarg  0x00000080 
+ 00001649  0x00000aaf isub  0x00000002 , 0x0000003e 
+ 00001650  0x00000ab0 nbranch  0x00000689 , 0x00000002 
+ 00001651  0x00000ab2 fetch  0x00000001 , 0x00004d07 
+ 00001652  0x00000ab3 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001653  0x00000ab4 nbranch  0x00000679 , 0x00000002 
+ 00001654  0x00000ab5 fetch  0x00000001 , 0x00004d07 
+ 00001655  0x00000ab6 beq  0x00000000 , 0x0000068a 
+ 00001656  0x00000ab7 rtn 
+ 00001657  0x00000aba fetch  0x00000001 , 0x00004d07 
+ 00001658  0x00000abb rtnne  0x00000020 
+ 00001659  0x00000abc jam  0x00000000 , 0x00004d07 
+ 00001660  0x00000abe fetcht  0x00000001 , 0x00004d08 
+ 00001661  0x00000abf setarg  0x00000077 
+ 00001662  0x00000ac0 bmark1  0x00000026 , 0x00000680 
+ 00001663  0x00000ac1 setarg  0x00000075 
+ 00001664  0x00000ac3 isub  0x00000002 , 0x0000003e 
+ 00001665  0x00000ac4 nrtn  0x00000002 
+ 00001666  0x00000ac5 fetch  0x00000001 , 0x00004d0a 
+ 00001667  0x00000ac6 beq  0x00000000 , 0x00000691 
+ 00001668  0x00000ac7 increase  0xffffffff , 0x0000003f 
+ 00001669  0x00000ac8 store  0x00000001 , 0x00004d0a 
+ 00001670  0x00000ac9 beq  0x00000000 , 0x00000691 
+ 00001671  0x00000acc jam  0x00000000 , 0x000041de 
+ 00001672  0x00000acd rtn 
+ 00001673  0x00000ad0 jam  0x00000000 , 0x00004d07 
+ 00001674  0x00000ad2 fetch  0x00000001 , 0x00004d0a 
+ 00001675  0x00000ad3 beq  0x00000002 , 0x0000068f 
+ 00001676  0x00000ad4 increase  0x00000001 , 0x0000003f 
+ 00001677  0x00000ad5 store  0x00000001 , 0x00004d0a 
+ 00001678  0x00000ad6 beq  0x00000001 , 0x00000687 
+ 00001679  0x00000ad9 jam  0x00000002 , 0x000041de 
+ 00001680  0x00000ada rtn 
+ 00001681  0x00000add jam  0x00000004 , 0x000041de 
+ 00001682  0x00000ade rtn 
+ 00001683  0x00000ae2 storet  0x00000001 , 0x00000017 
+ 00001684  0x00000ae3 add  0x00000002 , 0x00000000 , 0x00000011 
+ 00001685  0x00000ae4 call  0x00002981 
+ 00001686  0x00000ae5 setarg  0x00000500 
+ 00001687  0x00000ae6 call  0x00002a8f 
+ 00001688  0x00000ae8 jam  0x00000001 , 0x00008906 
+ 00001689  0x00000ae9 jam  0x0000003c , 0x00008900 
+ 00001690  0x00000aea jam  0x000000e0 , 0x00008901 
+ 00001691  0x00000aeb nop  0x0000000a 
+ 00001692  0x00000aec jam  0x00000001 , 0x00008902 
+ 00001693  0x00000aed jam  0x0000003d , 0x00008902 
+ 00001694  0x00000aee nop  0x0000000a 
+ 00001695  0x00000aef jam  0x000000b7 , 0x00008903 
+ 00001696  0x00000af0 nop  0x0000000a 
+ 00001697  0x00000af1 jam  0x0000007d , 0x00008902 
+ 00001698  0x00000af2 fetch  0x00000001 , 0x000041de 
+ 00001699  0x00000af5 beq  0x00000002 , 0x000006ab 
+ 00001700  0x00000af7 beq  0x00000004 , 0x000006b0 
+ 00001701  0x00000af8 beq  0x00000020 , 0x000006bf 
+ 00001702  0x00000afb call  0x000006b5 
+ 00001703  0x00000afd jam  0x000000d0 , 0x00008955 
+ 00001704  0x00000afe jam  0x000000e0 , 0x00008956 
+ 00001705  0x00000b00 jam  0x0000006c , 0x00008958 
+ 00001706  0x00000b02 branch  0x0000294b 
+ 00001707  0x00000b0f call  0x000006ba 
+ 00001708  0x00000b11 jam  0x000000d0 , 0x00008955 
+ 00001709  0x00000b12 jam  0x000000e0 , 0x00008956 
+ 00001710  0x00000b14 jam  0x0000003c , 0x00008958 
+ 00001711  0x00000b16 branch  0x00002953 
+ 00001712  0x00000b23 call  0x000006b5 
+ 00001713  0x00000b25 jam  0x000000d0 , 0x00008955 
+ 00001714  0x00000b26 jam  0x000000c0 , 0x00008956 
+ 00001715  0x00000b28 jam  0x0000006c , 0x00008958 
+ 00001716  0x00000b2a branch  0x0000295b 
+ 00001717  0x00000b2d jam  0x0000005b , 0x0000894c 
+ 00001718  0x00000b2e jam  0x00000096 , 0x0000894d 
+ 00001719  0x00000b2f jam  0x0000002c , 0x0000894e 
+ 00001720  0x00000b30 jam  0x00000046 , 0x0000894f 
+ 00001721  0x00000b31 rtn 
+ 00001722  0x00000b34 jam  0x000000fb , 0x0000894c 
+ 00001723  0x00000b35 jam  0x000000ef , 0x0000894d 
+ 00001724  0x00000b36 jam  0x000000ec , 0x0000894e 
+ 00001725  0x00000b37 jam  0x0000005e , 0x0000894f 
+ 00001726  0x00000b38 rtn 
+ 00001727  0x00000b3c jam  0x000000c2 , 0x00008956 
+ 00001728  0x00000b3d jam  0x000000d0 , 0x00008955 
+ 00001729  0x00000b3e rtn 
+ 00001730  0x00000b41 force  0x00000008 , 0x00000015 
+ 00001731  0x00000b42 branch  0x000028fa 
+ 00001732  0x00000b49 fetch  0x00000004 , 0x0000469b 
+ 00001733  0x00000b4a rtn  0x00000034 
+ 00001734  0x00000b4b call  0x00000717 
+ 00001735  0x00000b4c setarg  0x0000000c 
+ 00001736  0x00000b4d call  0x0000070a 
+ 00001737  0x00000b4e setarg  0x00000006 
+ 00001738  0x00000b4f call  0x00000710 
+ 00001739  0x00000b50 fetch  0x00000001 , 0x00004b19 
+ 00001740  0x00000b51 beq  0x00000001 , 0x000006d0 
+ 00001741  0x00000b54 arg  0x00000005 , 0x00000039 
+ 00001742  0x00000b55 arg  0x00004b19 , 0x00000005 
+ 00001743  0x00000b56 branch  0x00007ed4 
+ 00001744  0x00000b59 fetch  0x00000002 , 0x00004b1a 
+ 00001745  0x00000b5a store  0x00000002 , 0x000011be 
+ 00001746  0x00000b5b fetch  0x00000002 , 0x0000469b 
+ 00001747  0x00000b5c store  0x00000002 , 0x000011c0 
+ 00001748  0x00000b5d call  0x000006e3 
+ 00001749  0x00000b5e fetch  0x00000002 , 0x000011be 
+ 00001750  0x00000b5f store  0x00000002 , 0x00004b1a 
+ 00001751  0x00000b60 fetch  0x00000002 , 0x000011c0 
+ 00001752  0x00000b61 store  0x00000002 , 0x0000469b 
+ 00001753  0x00000b63 fetch  0x00000002 , 0x00004b1c 
+ 00001754  0x00000b64 store  0x00000002 , 0x000011be 
+ 00001755  0x00000b65 fetch  0x00000002 , 0x0000469d 
+ 00001756  0x00000b66 store  0x00000002 , 0x000011c0 
+ 00001757  0x00000b67 call  0x000006e3 
+ 00001758  0x00000b68 fetch  0x00000002 , 0x000011be 
+ 00001759  0x00000b69 store  0x00000002 , 0x00004b1c 
+ 00001760  0x00000b6a fetch  0x00000002 , 0x000011c0 
+ 00001761  0x00000b6b store  0x00000002 , 0x0000469d 
+ 00001762  0x00000b6c rtn 
+ 00001763  0x00000b73 fetch  0x00000002 , 0x000011be 
+ 00001764  0x00000b74 fetcht  0x00000002 , 0x000011c0 
+ 00001765  0x00000b75 iadd  0x00000002 , 0x0000003f 
+ 00001766  0x00000b76 store  0x00000003 , 0x000011c2 
+ 00001767  0x00000b77 isolate1  0x00000010 , 0x0000003f 
+ 00001768  0x00000b78 branch  0x000006f0 , 0x00000001 
+ 00001769  0x00000b79 fetch  0x00000001 , 0x000011c3 
+ 00001770  0x00000b7a beq  0x000000ff , 0x000006f7 
+ 00001771  0x00000b7b fetch  0x00000001 , 0x000011c2 
+ 00001772  0x00000b7d rshift  0x0000003f , 0x0000003f 
+ 00001773  0x00000b7e store  0x00000002 , 0x000011be 
+ 00001774  0x00000b7f store  0x00000002 , 0x000011c0 
+ 00001775  0x00000b80 rtn 
+ 00001776  0x00000b82 fetch  0x00000001 , 0x000011c3 
+ 00001777  0x00000b83 beq  0x00000000 , 0x000006f4 
+ 00001778  0x00000b84 fetch  0x00000003 , 0x000011c2 
+ 00001779  0x00000b85 branch  0x000006ec 
+ 00001780  0x00000b87 jam  0x00000000 , 0x000011c4 
+ 00001781  0x00000b88 fetch  0x00000001 , 0x000011c2 
+ 00001782  0x00000b89 branch  0x000006ec 
+ 00001783  0x00000b8c fetch  0x00000001 , 0x000011c2 
+ 00001784  0x00000b8d call  0x00000702 
+ 00001785  0x00000b8e store  0x00000001 , 0x000011be 
+ 00001786  0x00000b8f store  0x00000001 , 0x000011c0 
+ 00001787  0x00000b90 branch  0x00000700 , 0x00000034 
+ 00001788  0x00000b91 setarg  0x000000ff 
+ 00001789  0x00000b93 store  0x00000001 , 0x000011bf 
+ 00001790  0x00000b94 store  0x00000001 , 0x000011c1 
+ 00001791  0x00000b95 rtn 
+ 00001792  0x00000b97 setarg  0x00000000 
+ 00001793  0x00000b98 branch  0x000006fd 
+ 00001794  0x00000b9b sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00001795  0x00000b9c store  0x00000001 , 0x00000aae 
+ 00001796  0x00000b9d fetch  0x00000001 , 0x00000aae 
+ 00001797  0x00000b9e rshift  0x0000003f , 0x0000003f 
+ 00001798  0x00000b9f store  0x00000001 , 0x00000aae 
+ 00001799  0x00000ba0 fetch  0x00000001 , 0x00000aae 
+ 00001800  0x00000ba1 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00001801  0x00000ba2 rtn 
+ 00001802  0x00000ba6 isub  0x00000011 , 0x0000003e 
+ 00001803  0x00000ba7 nbranch  0x00000715 , 0x00000002 
+ 00001804  0x00000ba8 isub  0x00000012 , 0x0000003e 
+ 00001805  0x00000ba9 nbranch  0x00000715 , 0x00000002 
+ 00001806  0x00000bab jam  0x00000000 , 0x00004b19 
+ 00001807  0x00000bac rtn 
+ 00001808  0x00000bae isub  0x00000011 , 0x0000003e 
+ 00001809  0x00000baf nrtn  0x00000002 
+ 00001810  0x00000bb0 isub  0x00000012 , 0x0000003e 
+ 00001811  0x00000bb1 nrtn  0x00000002 
+ 00001812  0x00000bb2 branch  0x0000070e 
+ 00001813  0x00000bb4 jam  0x00000001 , 0x00004b19 
+ 00001814  0x00000bb5 rtn 
+ 00001815  0x00000bb8 fetch  0x00000002 , 0x0000469b 
+ 00001816  0x00000bb9 store  0x00000002 , 0x000011c0 
+ 00001817  0x00000bba call  0x00000720 
+ 00001818  0x00000bbb copy  0x0000003f , 0x00000011 
+ 00001819  0x00000bbc fetch  0x00000002 , 0x0000469d 
+ 00001820  0x00000bbd store  0x00000002 , 0x000011c0 
+ 00001821  0x00000bbe call  0x00000720 
+ 00001822  0x00000bbf copy  0x0000003f , 0x00000012 
+ 00001823  0x00000bc0 rtn 
+ 00001824  0x00000bc7 fetch  0x00000001 , 0x000011c1 
+ 00001825  0x00000bc8 beq  0x000000ff , 0x00000725 
+ 00001826  0x00000bc9 fetch  0x00000001 , 0x000011c0 
+ 00001827  0x00000bcb and_into  0x000000ff , 0x0000003f 
+ 00001828  0x00000bcd rtn 
+ 00001829  0x00000bcf fetch  0x00000002 , 0x000011c0 
+ 00001830  0x00000bd0 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00001831  0x00000bd1 branch  0x00000723 
  00008192  0x00000bde call  0x00002abc 
  00008193  0x00000be1 bpatch  0x00000000 , 0x00004000 
  00008194  0x00000be2 clear_stack 
Index: output/bt_program23.list
===================================================================
--- /branch/mouse_project/YFK/OnlyBLE/output/bt_program23.list	(revision 1520)
+++ /branch/mouse_project/YFK/OnlyBLE/output/bt_program23.list	(working copy)
@@ -875,9 +875,9 @@
 0x02ed 001283 branch iicd_write_protect_eep_data 
 :      001284 p_mouse_fast_conn_init:
 0x02ee 001285 jam 0x34 ,mem_xrecord_mode 
-0x02ef 001286 setarg 0 
-0x02f0 001287 invert pdata ,pdata 
-0x02f1 001288 store 6 ,mem_le_lap 
+0x02ef 001286 setarg 0x0f0f0f 
+0x02f0 001287 store 3 ,mem_le_lap 
+0x02f1 001288 store 3 ,mem_le_lap + 3 
 0x02f2 001289 rtn 
 :      001294 p_mouse_init_environment:
 0x02f3 001295 call app_initflag_check 
@@ -1787,7 +1787,7 @@
 0x05e4 002543 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
 0x05e5 002545 rshift8 pdata ,temp 
 0x05e6 002546 sub temp ,0x24 ,null 
-0x05e7 002548 branch le_parse_att + 2 ,positive 
+0x05e7 002547 branch p_le_parse_att1 ,positive 
 0x05e8 002549 arg mem_mouse_le_uuid_sup ,temp 
 0x05e9 002550 storet 2 ,mem_ui_le_uuid_table 
 0x05ea 002551 call le_parse_att + 2 
@@ -1809,327 +1809,366 @@
 0x05f9 002568 setarg 0x2b 
 0x05fa 002569 istore 2 ,contr 
 0x05fb 002570 rtn 
+:      002572 p_le_parse_att1:
+0x05fc 002573 beq attop_read_request ,p_le_parse_att_read_request 
+0x05fd 002574 branch le_parse_att + 2 
+:      002575 p_le_parse_att_read_request:
+0x05fe 002576 fetcht 2 ,mem_le_att_handle 
+0x05ff 002577 fetch 1 ,mem_le_configuration 
+0x0600 002578 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+:      002579 p_le_send_att_read_response:
+0x0601 002580 call le_att_get_handle_ptr 
+0x0602 002581 branch le_send_att_error_response_notfound ,blank 
+0x0603 002582 increase -2 ,contr 
+0x0604 002583 ifetch 2 ,contr 
+0x0605 002584 arg uuid_chrctr_pnp_id ,temp 
+0x0606 002585 isub temp ,null 
+0x0607 002586 branch p_le_send_att_pnp_id ,zero 
+0x0608 002588 fetch 2 ,mem_le_att_handle 
+0x0609 002589 beq 0x13 ,le_send_att_error_response_notfound 
+0x060a 002591 fetcht 2 ,mem_le_att_handle 
+0x060b 002592 branch le_send_att_read_response 
+:      002593 p_le_send_att_pnp_id:
+0x060c 002594 call store_contr 
+0x060d 002595 fetch 1 ,mem_le_att_pnp_id_len 
+0x060e 002596 add pdata ,1 ,rega 
+0x060f 002597 call le_fifo_malloc_tx_l2cap_gatt 
+0x0610 002598 setarg attop_read_response 
+0x0611 002599 istore 1 ,contw 
+0x0612 002600 fetch 1 ,mem_le_att_pnp_id_len 
+0x0613 002601 copy pdata ,loopcnt 
+0x0614 002602 arg mem_le_att_pnp_id ,contr 
+0x0615 002603 branch memcpy 
+:      002605 p_le_send_att_read_response_check_auth:
+0x0616 002606 fetch 2 ,mem_le_pairing_handle 
+0x0617 002607 isub temp ,null 
+0x0618 002608 nbranch p_le_send_att_read_response ,zero 
+:      002609 p_le_send_att_read_response_error_insufficient_auth:
+0x0619 002610 call le_check_encrypt_state 
+0x061a 002611 nbranch p_le_send_att_read_response ,user 
+0x061b 002612 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x061c 002613 branch le_send_att_error_response 
 :      002615 p_le_parse_smp:
-0x05fc 002616 ifetch 1 ,contr 
-0x05fd 002617 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
-0x05fe 002618 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-0x05ff 002619 branch le_parse_smp + 2 
+0x061d 002616 ifetch 1 ,contr 
+0x061e 002617 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0x061f 002618 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0x0620 002619 branch le_parse_smp + 2 
 :      002621 p_le_parse_smp_pairing_request:
-0x0600 002622 jam 1 ,mem_le_send_security_request_flag 
-0x0601 002623 branch le_parse_smp_pairing_request 
+0x0621 002622 jam 1 ,mem_le_send_security_request_flag 
+0x0622 002623 branch le_parse_smp_pairing_request 
 :      002625 p_le_parse_smp_pairing_failed:
-0x0602 002626 call le_parse_smp_pairing_failed 
-0x0603 002627 fetch 1 ,mem_le_state 
-0x0604 002628 set0 lestate_update_param ,pdata 
-0x0605 002629 store 1 ,mem_le_state 
-0x0606 002630 branch le_parse_terminate_ind 
+0x0623 002626 call le_parse_smp_pairing_failed 
+0x0624 002627 fetch 1 ,mem_le_state 
+0x0625 002628 set0 lestate_update_param ,pdata 
+0x0626 002629 store 1 ,mem_le_state 
+0x0627 002630 branch le_parse_terminate_ind 
 :      002632 p_le_adv_not_match:
-0x0607 002633 fetch 1 ,mem_le_ch_mapped 
-0x0608 002634 bne 39 ,le_adv_loop 
-0x0609 002635 call p_le_adv_random_delay 
-0x060a 002636 arg le_adv_interval_timer ,queue 
-0x060b 002637 fetch 2 ,mem_le_adv_interval 
-0x060c 002638 branch timer_init 
+0x0628 002633 fetch 1 ,mem_le_ch_mapped 
+0x0629 002634 bne 39 ,le_adv_loop 
+0x062a 002635 call p_le_adv_random_delay 
+0x062b 002636 arg le_adv_interval_timer ,queue 
+0x062c 002637 fetch 2 ,mem_le_adv_interval 
+0x062d 002638 branch timer_init 
 :      002639 p_le_adv_random_delay:
-0x060d 002640 random pdata 
-0x060e 002641 arg 0x1ff ,temp 
-0x060f 002642 iand temp ,pdata 
-0x0610 002643 add pdata ,250 ,pdata 
-0x0611 002644 branch delay 
+0x062e 002640 random pdata 
+0x062f 002641 arg 0x1ff ,temp 
+0x0630 002642 iand temp ,pdata 
+0x0631 002643 add pdata ,250 ,pdata 
+0x0632 002644 branch delay 
 :      002646 p_le_lpm_setmult:
-0x0612 002647 disable wake 
-0x0613 002648 branch p_le_lpm_set_mult_attempt ,attempt 
-0x0614 002649 nbranch le_lpm_lost ,match 
+0x0633 002647 disable wake 
+0x0634 002648 branch p_le_lpm_set_mult_attempt ,attempt 
+0x0635 002649 nbranch le_lpm_lost ,match 
 :      002650 p_le_lpm_set_mult_attempt:
-0x0615 002651 call lpm_match 
-0x0616 002652 fetch 2 ,mem_rx_window_sniff 
-0x0617 002653 store 2 ,mem_le_receive_window 
-0x0618 002654 fetch 1 ,mem_le_connect_status_flag 
-0x0619 002655 compare 3 ,pdata ,3 
-0x061a 002656 nbranch lpm_mult_short ,true 
-0x061b 002657 branch le_lpm_set_mult_attempt + 3 
+0x0636 002651 call lpm_match 
+0x0637 002652 fetch 2 ,mem_rx_window_sniff 
+0x0638 002653 store 2 ,mem_le_receive_window 
+0x0639 002654 fetch 1 ,mem_le_connect_status_flag 
+0x063a 002655 compare 3 ,pdata ,3 
+0x063b 002656 nbranch lpm_mult_short ,true 
+0x063c 002657 branch le_lpm_set_mult_attempt + 3 
 :      002659 p_le_mouse_bb_event_connect_complete:
-0x061c 002660 fetch 1 ,mem_mouse_le_reconnect_flag 
-0x061d 002661 nrtn blank 
-0x061e 002662 fetch 1 ,mem_le_att_handle 
-0x061f 002663 sub pdata ,26 ,pdata 
-0x0620 002664 nrtn zero 
-0x0621 002665 branch mouse_le_write_enable 
+0x063d 002660 fetch 1 ,mem_mouse_le_reconnect_flag 
+0x063e 002661 nrtn blank 
+0x063f 002662 fetch 1 ,mem_le_att_handle 
+0x0640 002663 sub pdata ,26 ,pdata 
+0x0641 002664 nrtn zero 
+0x0642 002665 branch mouse_le_write_enable 
 :      002667 p_check_51cmd_once_continue:
-0x0622 002668 call lmo_fifo_check 
-0x0623 002669 nbranch check_51cmd_restore ,blank 
-0x0624 002670 fetch 1 ,mem_fifo_temp 
-0x0625 002671 bmark0 mark_context ,check_51cmd_check_idle 
-0x0626 002672 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-0x0627 002673 branch check_51cmd_once_continue + 2 
+0x0643 002668 call lmo_fifo_check 
+0x0644 002669 nbranch check_51cmd_restore ,blank 
+0x0645 002670 fetch 1 ,mem_fifo_temp 
+0x0646 002671 bmark0 mark_context ,check_51cmd_check_idle 
+0x0647 002672 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+0x0648 002673 branch check_51cmd_once_continue + 2 
 :      002675 p_check_51cmd_ble_update_connect_param:
-0x0628 002676 call le_fifo_check_full 
-0x0629 002677 nrtn blank 
-0x062a 002678 branch le_l2cap_tx_update_req 
+0x0649 002676 call le_fifo_check_full 
+0x064a 002677 nrtn blank 
+0x064b 002678 branch le_l2cap_tx_update_req 
 :      002681 p_twspi_reset:
-0x062b 002682 hfetch 1 ,core_gpio_out3 
-0x062c 002683 and_into 0xfd ,pdata 
-0x062d 002684 hstore 1 ,core_gpio_out3 
-0x062e 002685 hfetcht 1 ,core_gpio_oe3 
-0x062f 002686 or_into 0x2 ,temp 
-0x0630 002687 hstoret 1 ,core_gpio_oe3 
-0x0631 002688 call twspi_disable 
-0x0632 002689 and_into 0xfd ,temp 
-0x0633 002690 nop 13 
-0x0634 002691 call twspi_enable 
-0x0635 002692 hstoret 1 ,core_gpio_oe3 
-0x0636 002693 rtn 
+0x064c 002682 hfetch 1 ,core_gpio_out3 
+0x064d 002683 and_into 0xfd ,pdata 
+0x064e 002684 hstore 1 ,core_gpio_out3 
+0x064f 002685 hfetcht 1 ,core_gpio_oe3 
+0x0650 002686 or_into 0x2 ,temp 
+0x0651 002687 hstoret 1 ,core_gpio_oe3 
+0x0652 002688 call twspi_disable 
+0x0653 002689 and_into 0xfd ,temp 
+0x0654 002690 nop 13 
+0x0655 002691 call twspi_enable 
+0x0656 002692 hstoret 1 ,core_gpio_oe3 
+0x0657 002693 rtn 
 :      002699 power_ctrl_pac_succ_cnt_init:
-0x0637 002700 jam 1 ,mem_power_ctrl_level 
-0x0638 002701 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0x0639 002702 rtn 
+0x0658 002700 jam 1 ,mem_power_ctrl_level 
+0x0659 002701 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0x065a 002702 rtn 
 :      002703 power_ctrl_pac_succ_incrs:
-0x063a 002704 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x063b 002705 increase 1 ,pdata 
-0x063c 002706 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0x063d 002707 rtn 
+0x065b 002704 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x065c 002705 increase 1 ,pdata 
+0x065d 002706 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x065e 002707 rtn 
 :      002708 power_ctrl_pac_succ_decrs:
-0x063e 002709 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x063f 002710 sub pdata ,2 ,null 
-0x0640 002711 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-0x0641 002712 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0642 002713 rtneq 0 
-0x0643 002714 increase -1 ,pdata 
-0x0644 002715 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0645 002716 rtn 
+0x065f 002709 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0660 002710 sub pdata ,2 ,null 
+0x0661 002711 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0x0662 002712 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0663 002713 rtneq 0 
+0x0664 002714 increase -1 ,pdata 
+0x0665 002715 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0666 002716 rtn 
 :      002717 power_ctrl_pac_succ_cnt_reinit:
-0x0646 002718 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-0x0647 002719 rtn 
+0x0667 002718 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0x0668 002719 rtn 
 :      002721 power_ctrl_start:
-0x0648 002722 fetch 2 ,mem_ui_state_map 
-0x0649 002723 rtnbit1 ui_state_ble_adv 
-0x064a 002727 arg mem_rssi_signal_buf ,rega 
-0x064b 002728 call p_rssi_average 
-0x064c 002729 storet 1 ,mem_rssi_avg_received 
-0x064d 002731 setarg rssi_dis_max_24g 
-0x064e 002732 bmark1 mark_24g ,power_ctrl_start_next 
-0x064f 002733 setarg rssi_dis_max_ble 
+0x0669 002722 fetch 2 ,mem_ui_state_map 
+0x066a 002723 rtnbit1 ui_state_ble_adv 
+0x066b 002727 arg mem_rssi_signal_buf ,rega 
+0x066c 002728 call p_rssi_average 
+0x066d 002729 storet 1 ,mem_rssi_avg_received 
+0x066e 002731 setarg rssi_dis_max_24g 
+0x066f 002732 bmark1 mark_24g ,power_ctrl_start_next 
+0x0670 002733 setarg rssi_dis_max_ble 
 :      002734 power_ctrl_start_next:
-0x0650 002735 isub temp ,null 
-0x0651 002736 nbranch power_ctrl_txpower_incrs_force ,positive 
-0x0652 002738 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0653 002739 sub pdata ,2 ,null 
-0x0654 002740 nbranch power_ctrl_txpower_decrs_check ,positive 
-0x0655 002741 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0656 002742 beq 0 ,power_ctrl_txpower_incrs 
-0x0657 002743 rtn 
+0x0671 002735 isub temp ,null 
+0x0672 002736 nbranch power_ctrl_txpower_incrs_force ,positive 
+0x0673 002738 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0674 002739 sub pdata ,2 ,null 
+0x0675 002740 nbranch power_ctrl_txpower_decrs_check ,positive 
+0x0676 002741 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0677 002742 beq 0 ,power_ctrl_txpower_incrs 
+0x0678 002743 rtn 
 :      002745 power_ctrl_txpower_decrs_check:
-0x0658 002746 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0659 002747 rtnne 32 
-0x065a 002748 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0x0679 002746 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x067a 002747 rtnne 32 
+0x067b 002748 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 :      002749 power_ctrl_txpower_decrs:
-0x065b 002750 fetcht 1 ,mem_rssi_avg_received 
-0x065c 002751 setarg rssi_dis_min_24g 
-0x065d 002752 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-0x065e 002753 setarg rssi_dis_min_ble 
+0x067c 002750 fetcht 1 ,mem_rssi_avg_received 
+0x067d 002751 setarg rssi_dis_min_24g 
+0x067e 002752 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0x067f 002753 setarg rssi_dis_min_ble 
 :      002754 power_ctrl_txpower_decrs_next:
-0x065f 002755 isub temp ,null 
-0x0660 002756 nrtn positive 
-0x0661 002757 fetch 1 ,mem_power_ctrl_level 
-0x0662 002758 beq 0 ,power_ctrl_decrs_level0 
-0x0663 002759 increase -1 ,pdata 
-0x0664 002760 store 1 ,mem_power_ctrl_level 
-0x0665 002761 beq 0 ,power_ctrl_decrs_level0 
+0x0680 002755 isub temp ,null 
+0x0681 002756 nrtn positive 
+0x0682 002757 fetch 1 ,mem_power_ctrl_level 
+0x0683 002758 beq 0 ,power_ctrl_decrs_level0 
+0x0684 002759 increase -1 ,pdata 
+0x0685 002760 store 1 ,mem_power_ctrl_level 
+0x0686 002761 beq 0 ,power_ctrl_decrs_level0 
 :      002762 power_ctrl_decrs_level1:
 :      002763 power_ctrl_incrs_level1:
-0x0666 002764 jam tx_power_0db ,mem_tx_power 
-0x0667 002765 rtn 
+0x0687 002764 jam tx_power_0db ,mem_tx_power 
+0x0688 002765 rtn 
 :      002767 power_ctrl_txpower_incrs_force:
-0x0668 002768 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0x0689 002768 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 :      002769 power_ctrl_txpower_incrs:
-0x0669 002770 fetch 1 ,mem_power_ctrl_level 
-0x066a 002771 beq 2 ,power_ctrl_incrs_level2 
-0x066b 002772 increase 1 ,pdata 
-0x066c 002773 store 1 ,mem_power_ctrl_level 
-0x066d 002774 beq 1 ,power_ctrl_incrs_level1 
+0x068a 002770 fetch 1 ,mem_power_ctrl_level 
+0x068b 002771 beq 2 ,power_ctrl_incrs_level2 
+0x068c 002772 increase 1 ,pdata 
+0x068d 002773 store 1 ,mem_power_ctrl_level 
+0x068e 002774 beq 1 ,power_ctrl_incrs_level1 
 :      002775 power_ctrl_incrs_level2:
-0x066e 002777 jam tx_power_5db ,mem_tx_power 
-0x066f 002778 rtn 
+0x068f 002777 jam tx_power_5db ,mem_tx_power 
+0x0690 002778 rtn 
 :      002780 power_ctrl_decrs_level0:
-0x0670 002781 jam tx_power_f5db ,mem_tx_power 
-0x0671 002782 rtn 
+0x0691 002781 jam tx_power_f5db ,mem_tx_power 
+0x0692 002782 rtn 
 :      002785 p_set_freq_tx:
-0x0672 002786 storet 1 ,mem_last_freq 
-0x0673 002787 add temp ,0 ,rega 
-0x0674 002788 call rf_write_freq 
-0x0675 002789 setarg param_pll_setup 
-0x0676 002790 call sleep 
+0x0693 002786 storet 1 ,mem_last_freq 
+0x0694 002787 add temp ,0 ,rega 
+0x0695 002788 call rf_write_freq 
+0x0696 002789 setarg param_pll_setup 
+0x0697 002790 call sleep 
 :      002791 p_rf_tx_enable:
-0x0677 002792 jam 0x1 ,rfen_adc 
-0x0678 002793 jam 0x3c ,rfen_rx 
-0x0679 002794 jam 0xe0 ,rfen_tx 
-0x067a 002795 nop 10 
-0x067b 002796 jam 0x01 ,rfen_mdm 
-0x067c 002797 jam 0x3d ,rfen_mdm 
-0x067d 002798 nop 10 
-0x067e 002799 jam 0xb7 ,rfen_sn 
-0x067f 002800 nop 10 
-0x0680 002801 jam 0x7d ,rfen_mdm 
-0x0681 002802 fetch 1 ,mem_tx_power 
-0x0682 002805 beq tx_power_5db ,p_set_tx_power_5db 
-0x0683 002807 beq tx_power_f5db ,p_set_tx_power_f5db 
-0x0684 002808 beq tx_power_pair ,p_set_tx_power_pair 
+0x0698 002792 jam 0x1 ,rfen_adc 
+0x0699 002793 jam 0x3c ,rfen_rx 
+0x069a 002794 jam 0xe0 ,rfen_tx 
+0x069b 002795 nop 10 
+0x069c 002796 jam 0x01 ,rfen_mdm 
+0x069d 002797 jam 0x3d ,rfen_mdm 
+0x069e 002798 nop 10 
+0x069f 002799 jam 0xb7 ,rfen_sn 
+0x06a0 002800 nop 10 
+0x06a1 002801 jam 0x7d ,rfen_mdm 
+0x06a2 002802 fetch 1 ,mem_tx_power 
+0x06a3 002805 beq tx_power_5db ,p_set_tx_power_5db 
+0x06a4 002807 beq tx_power_f5db ,p_set_tx_power_f5db 
+0x06a5 002808 beq tx_power_pair ,p_set_tx_power_pair 
 :      002810 p_set_tx_power_0db:
-0x0685 002811 call p_rx_low_sens 
-0x0686 002813 jam 0xd0 ,0x8955 
-0x0687 002814 jam 0xe0 ,0x8956 
-0x0688 002816 jam 0x6c ,0x8958 
-0x0689 002818 branch set_tx_power_0db 
+0x06a6 002811 call p_rx_low_sens 
+0x06a7 002813 jam 0xd0 ,0x8955 
+0x06a8 002814 jam 0xe0 ,0x8956 
+0x06a9 002816 jam 0x6c ,0x8958 
+0x06aa 002818 branch set_tx_power_0db 
 :      002830 p_set_tx_power_5db:
-0x068a 002831 call p_rx_high_sens 
-0x068b 002833 jam 0xd0 ,0x8955 
-0x068c 002834 jam 0xe0 ,0x8956 
-0x068d 002836 jam 0x3c ,0x8958 
-0x068e 002838 branch set_tx_power_5db 
+0x06ab 002831 call p_rx_high_sens 
+0x06ac 002833 jam 0xd0 ,0x8955 
+0x06ad 002834 jam 0xe0 ,0x8956 
+0x06ae 002836 jam 0x3c ,0x8958 
+0x06af 002838 branch set_tx_power_5db 
 :      002850 p_set_tx_power_f5db:
-0x068f 002851 call p_rx_low_sens 
-0x0690 002853 jam 0xd0 ,0x8955 
-0x0691 002854 jam 0xc0 ,0x8956 
-0x0692 002856 jam 0x6c ,0x8958 
-0x0693 002858 branch set_tx_power_f5db 
+0x06b0 002851 call p_rx_low_sens 
+0x06b1 002853 jam 0xd0 ,0x8955 
+0x06b2 002854 jam 0xc0 ,0x8956 
+0x06b3 002856 jam 0x6c ,0x8958 
+0x06b4 002858 branch set_tx_power_f5db 
 :      002860 p_rx_low_sens:
-0x0694 002861 jam 0x5b ,0x894c 
-0x0695 002862 jam 0x96 ,0x894d 
-0x0696 002863 jam 0x2c ,0x894e 
-0x0697 002864 jam 0x46 ,0x894f 
-0x0698 002865 rtn 
+0x06b5 002861 jam 0x5b ,0x894c 
+0x06b6 002862 jam 0x96 ,0x894d 
+0x06b7 002863 jam 0x2c ,0x894e 
+0x06b8 002864 jam 0x46 ,0x894f 
+0x06b9 002865 rtn 
 :      002867 p_rx_high_sens:
-0x0699 002868 jam 0xfb ,0x894c 
-0x069a 002869 jam 0xef ,0x894d 
-0x069b 002870 jam 0xec ,0x894e 
-0x069c 002871 jam 0x5e ,0x894f 
-0x069d 002872 rtn 
+0x06ba 002868 jam 0xfb ,0x894c 
+0x06bb 002869 jam 0xef ,0x894d 
+0x06bc 002870 jam 0xec ,0x894e 
+0x06bd 002871 jam 0x5e ,0x894f 
+0x06be 002872 rtn 
 :      002874 p_set_tx_power_pair:
-0x069e 002876 jam 0xc2 ,0x8956 
-0x069f 002877 jam 0xd0 ,0x8955 
-0x06a0 002878 rtn 
+0x06bf 002876 jam 0xc2 ,0x8956 
+0x06c0 002877 jam 0xd0 ,0x8955 
+0x06c1 002878 rtn 
 :      002880 p_shutdown_radio:
-0x06a1 002881 force 8 ,radio_ctrl 
-0x06a2 002882 branch shutdown_radio + 1 
+0x06c2 002881 force 8 ,radio_ctrl 
+0x06c3 002882 branch shutdown_radio + 1 
 :      002888 p_drawing_optima:
-0x06a3 002889 fetch 4 ,mem_mouse_x 
-0x06a4 002890 rtn blank 
-0x06a5 002891 call p_data_abs_check 
-0x06a6 002892 setarg 0x0c 
-0x06a7 002893 call p_data_greater_than_check 
-0x06a8 002894 setarg 0x06 
-0x06a9 002895 call p_data_less_than_check 
-0x06aa 002896 fetch 1 ,mem_mouse_asm_flag 
-0x06ab 002897 beq 1 ,p_drawing_optima_modify 
+0x06c4 002889 fetch 4 ,mem_mouse_x 
+0x06c5 002890 rtn blank 
+0x06c6 002891 call p_data_abs_check 
+0x06c7 002892 setarg 0x0c 
+0x06c8 002893 call p_data_greater_than_check 
+0x06c9 002894 setarg 0x06 
+0x06ca 002895 call p_data_less_than_check 
+0x06cb 002896 fetch 1 ,mem_mouse_asm_flag 
+0x06cc 002897 beq 1 ,p_drawing_optima_modify 
 :      002899 p_drawing_optima_init:
-0x06ac 002900 arg 5 ,loopcnt 
-0x06ad 002901 arg mem_mouse_asm_flag ,contw 
-0x06ae 002902 branch clear_mem 
+0x06cd 002900 arg 5 ,loopcnt 
+0x06ce 002901 arg mem_mouse_asm_flag ,contw 
+0x06cf 002902 branch clear_mem 
 :      002904 p_drawing_optima_modify:
-0x06af 002905 fetch 2 ,mem_mouse_x_pre 
-0x06b0 002906 store 2 ,mem_data_pre 
-0x06b1 002907 fetch 2 ,mem_mouse_x 
-0x06b2 002908 store 2 ,mem_data_current 
-0x06b3 002909 call p_drawing_optima_data 
-0x06b4 002910 fetch 2 ,mem_data_pre 
-0x06b5 002911 store 2 ,mem_mouse_x_pre 
-0x06b6 002912 fetch 2 ,mem_data_current 
-0x06b7 002913 store 2 ,mem_mouse_x 
-0x06b8 002915 fetch 2 ,mem_mouse_y_pre 
-0x06b9 002916 store 2 ,mem_data_pre 
-0x06ba 002917 fetch 2 ,mem_mouse_y 
-0x06bb 002918 store 2 ,mem_data_current 
-0x06bc 002919 call p_drawing_optima_data 
-0x06bd 002920 fetch 2 ,mem_data_pre 
-0x06be 002921 store 2 ,mem_mouse_y_pre 
-0x06bf 002922 fetch 2 ,mem_data_current 
-0x06c0 002923 store 2 ,mem_mouse_y 
-0x06c1 002924 rtn 
+0x06d0 002905 fetch 2 ,mem_mouse_x_pre 
+0x06d1 002906 store 2 ,mem_data_pre 
+0x06d2 002907 fetch 2 ,mem_mouse_x 
+0x06d3 002908 store 2 ,mem_data_current 
+0x06d4 002909 call p_drawing_optima_data 
+0x06d5 002910 fetch 2 ,mem_data_pre 
+0x06d6 002911 store 2 ,mem_mouse_x_pre 
+0x06d7 002912 fetch 2 ,mem_data_current 
+0x06d8 002913 store 2 ,mem_mouse_x 
+0x06d9 002915 fetch 2 ,mem_mouse_y_pre 
+0x06da 002916 store 2 ,mem_data_pre 
+0x06db 002917 fetch 2 ,mem_mouse_y 
+0x06dc 002918 store 2 ,mem_data_current 
+0x06dd 002919 call p_drawing_optima_data 
+0x06de 002920 fetch 2 ,mem_data_pre 
+0x06df 002921 store 2 ,mem_mouse_y_pre 
+0x06e0 002922 fetch 2 ,mem_data_current 
+0x06e1 002923 store 2 ,mem_mouse_y 
+0x06e2 002924 rtn 
 :      002930 p_drawing_optima_data:
-0x06c2 002931 fetch 2 ,mem_data_pre 
-0x06c3 002932 fetcht 2 ,mem_data_current 
-0x06c4 002933 iadd temp ,pdata 
-0x06c5 002934 store 3 ,mem_data_sum 
-0x06c6 002935 isolate1 16 ,pdata 
-0x06c7 002936 branch p_data_sum_overflow ,true 
-0x06c8 002937 fetch 1 ,mem_data_sum + 1 
-0x06c9 002938 beq 0xff ,p_data_sum_n 
-0x06ca 002939 fetch 1 ,mem_data_sum 
+0x06e3 002931 fetch 2 ,mem_data_pre 
+0x06e4 002932 fetcht 2 ,mem_data_current 
+0x06e5 002933 iadd temp ,pdata 
+0x06e6 002934 store 3 ,mem_data_sum 
+0x06e7 002935 isolate1 16 ,pdata 
+0x06e8 002936 branch p_data_sum_overflow ,true 
+0x06e9 002937 fetch 1 ,mem_data_sum + 1 
+0x06ea 002938 beq 0xff ,p_data_sum_n 
+0x06eb 002939 fetch 1 ,mem_data_sum 
 :      002940 p_data_store_pre:
-0x06cb 002941 rshift pdata ,pdata 
-0x06cc 002942 store 2 ,mem_data_pre 
-0x06cd 002943 store 2 ,mem_data_current 
-0x06ce 002944 rtn 
+0x06ec 002941 rshift pdata ,pdata 
+0x06ed 002942 store 2 ,mem_data_pre 
+0x06ee 002943 store 2 ,mem_data_current 
+0x06ef 002944 rtn 
 :      002945 p_data_sum_overflow:
-0x06cf 002946 fetch 1 ,mem_data_sum + 1 
-0x06d0 002947 beq 0 ,p_data_sum_overflow_p 
-0x06d1 002948 fetch 3 ,mem_data_sum 
-0x06d2 002949 branch p_data_store_pre 
+0x06f0 002946 fetch 1 ,mem_data_sum + 1 
+0x06f1 002947 beq 0 ,p_data_sum_overflow_p 
+0x06f2 002948 fetch 3 ,mem_data_sum 
+0x06f3 002949 branch p_data_store_pre 
 :      002950 p_data_sum_overflow_p:
-0x06d3 002951 jam 0 ,mem_data_sum + 2 
-0x06d4 002952 fetch 1 ,mem_data_sum 
-0x06d5 002953 branch p_data_store_pre 
+0x06f4 002951 jam 0 ,mem_data_sum + 2 
+0x06f5 002952 fetch 1 ,mem_data_sum 
+0x06f6 002953 branch p_data_store_pre 
 :      002955 p_data_sum_n:
-0x06d6 002956 fetch 1 ,mem_data_sum 
-0x06d7 002957 call p_pdata_get_half 
-0x06d8 002958 store 1 ,mem_data_pre 
-0x06d9 002959 store 1 ,mem_data_current 
-0x06da 002960 branch p_data_zero ,blank 
-0x06db 002961 setarg 0xff 
+0x06f7 002956 fetch 1 ,mem_data_sum 
+0x06f8 002957 call p_pdata_get_half 
+0x06f9 002958 store 1 ,mem_data_pre 
+0x06fa 002959 store 1 ,mem_data_current 
+0x06fb 002960 branch p_data_zero ,blank 
+0x06fc 002961 setarg 0xff 
 :      002962 p_data_set_direction:
-0x06dc 002963 store 1 ,mem_data_pre + 1 
-0x06dd 002964 store 1 ,mem_data_current + 1 
-0x06de 002965 rtn 
+0x06fd 002963 store 1 ,mem_data_pre + 1 
+0x06fe 002964 store 1 ,mem_data_current + 1 
+0x06ff 002965 rtn 
 :      002966 p_data_zero:
-0x06df 002967 setarg 0 
-0x06e0 002968 branch p_data_set_direction 
+0x0700 002967 setarg 0 
+0x0701 002968 branch p_data_set_direction 
 :      002970 p_pdata_get_half:
-0x06e1 002971 sub pdata ,0 ,pdata 
-0x06e2 002972 store 1 ,mem_rega 
-0x06e3 002973 fetch 1 ,mem_rega 
-0x06e4 002974 rshift pdata ,pdata 
-0x06e5 002975 store 1 ,mem_rega 
-0x06e6 002976 fetch 1 ,mem_rega 
-0x06e7 002977 sub pdata ,0 ,pdata 
-0x06e8 002978 rtn 
+0x0702 002971 sub pdata ,0 ,pdata 
+0x0703 002972 store 1 ,mem_rega 
+0x0704 002973 fetch 1 ,mem_rega 
+0x0705 002974 rshift pdata ,pdata 
+0x0706 002975 store 1 ,mem_rega 
+0x0707 002976 fetch 1 ,mem_rega 
+0x0708 002977 sub pdata ,0 ,pdata 
+0x0709 002978 rtn 
 :      002981 p_data_greater_than_check:
-0x06e9 002982 isub rega ,null 
-0x06ea 002983 nbranch p_enable_asm ,positive 
-0x06eb 002984 isub regb ,null 
-0x06ec 002985 nbranch p_enable_asm ,positive 
+0x070a 002982 isub rega ,null 
+0x070b 002983 nbranch p_enable_asm ,positive 
+0x070c 002984 isub regb ,null 
+0x070d 002985 nbranch p_enable_asm ,positive 
 :      002986 p_disable_asm:
-0x06ed 002987 jam 0 ,mem_mouse_asm_flag 
-0x06ee 002988 rtn 
+0x070e 002987 jam 0 ,mem_mouse_asm_flag 
+0x070f 002988 rtn 
 :      002989 p_data_less_than_check:
-0x06ef 002990 isub rega ,null 
-0x06f0 002991 nrtn positive 
-0x06f1 002992 isub regb ,null 
-0x06f2 002993 nrtn positive 
-0x06f3 002994 branch p_disable_asm 
+0x0710 002990 isub rega ,null 
+0x0711 002991 nrtn positive 
+0x0712 002992 isub regb ,null 
+0x0713 002993 nrtn positive 
+0x0714 002994 branch p_disable_asm 
 :      002995 p_enable_asm:
-0x06f4 002996 jam 1 ,mem_mouse_asm_flag 
-0x06f5 002997 rtn 
+0x0715 002996 jam 1 ,mem_mouse_asm_flag 
+0x0716 002997 rtn 
 :      002999 p_data_abs_check:
-0x06f6 003000 fetch 2 ,mem_mouse_x 
-0x06f7 003001 store 2 ,mem_data_current 
-0x06f8 003002 call p_data_abs 
-0x06f9 003003 copy pdata ,rega 
-0x06fa 003004 fetch 2 ,mem_mouse_y 
-0x06fb 003005 store 2 ,mem_data_current 
-0x06fc 003006 call p_data_abs 
-0x06fd 003007 copy pdata ,regb 
-0x06fe 003008 rtn 
+0x0717 003000 fetch 2 ,mem_mouse_x 
+0x0718 003001 store 2 ,mem_data_current 
+0x0719 003002 call p_data_abs 
+0x071a 003003 copy pdata ,rega 
+0x071b 003004 fetch 2 ,mem_mouse_y 
+0x071c 003005 store 2 ,mem_data_current 
+0x071d 003006 call p_data_abs 
+0x071e 003007 copy pdata ,regb 
+0x071f 003008 rtn 
 :      003014 p_data_abs:
-0x06ff 003015 fetch 1 ,mem_data_current + 1 
-0x0700 003016 beq 0xff ,p_data_reversal 
-0x0701 003017 fetch 1 ,mem_data_current 
+0x0720 003015 fetch 1 ,mem_data_current + 1 
+0x0721 003016 beq 0xff ,p_data_reversal 
+0x0722 003017 fetch 1 ,mem_data_current 
 :      003018 p_data_abs_store:
-0x0702 003019 and_into 0xff ,pdata 
-0x0703 003021 rtn 
+0x0723 003019 and_into 0xff ,pdata 
+0x0724 003021 rtn 
 :      003022 p_data_reversal:
-0x0704 003023 fetch 2 ,mem_data_current 
-0x0705 003024 sub pdata ,0 ,pdata 
-0x0706 003025 branch p_data_abs_store 
+0x0725 003023 fetch 2 ,mem_data_current 
+0x0726 003024 sub pdata ,0 ,pdata 
+0x0727 003025 branch p_data_abs_store 
               org 0x2000
 :      003037 start:
 0x2000 003038 call lpmstate 
Index: output/bt_program23.meta
===================================================================
--- /branch/mouse_project/YFK/OnlyBLE/output/bt_program23.meta	(revision 1520)
+++ /branch/mouse_project/YFK/OnlyBLE/output/bt_program23.meta	(working copy)
@@ -1283,9 +1283,9 @@
 	branch iicd_write_protect_eep_data
 p_mouse_fast_conn_init:
 	jam 0x34,mem_xrecord_mode
-	setarg 0
-	invert pdata,pdata
-	store 6,mem_le_lap
+	setarg 0x0f0f0f
+	store 3,mem_le_lap
+	store 3,mem_le_lap+3
 	rtn	
 
 
@@ -2544,8 +2544,8 @@
 //	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
 	rshift8 pdata,temp
 	sub temp,0x24,null
-//	branch p_le_parse_att1,positive
-	branch le_parse_att+2,positive
+	branch p_le_parse_att1,positive
+//	branch le_parse_att+2,positive
 	arg mem_mouse_le_uuid_sup,temp
 	storet 2,mem_ui_le_uuid_table
 	call le_parse_att+2
@@ -2569,48 +2569,48 @@
 	istore 2,contr
 	rtn
 
-//p_le_parse_att1:
-//	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
-//	branch le_parse_att+2
-//p_le_parse_att_read_request:
-//	fetcht 2,mem_le_att_handle
-//	fetch 1,mem_le_configuration
-//	bbit1 BIT_BLE_READ_AUTH,p_le_send_att_read_response_check_auth
-//p_le_send_att_read_response:
-//	call le_att_get_handle_ptr
-//	branch le_send_att_error_response_notfound,blank
-//	increase -2,contr
-//	ifetch 2,contr
-//	arg UUID_CHRCTR_PNP_ID,temp
-//	isub temp,null
-//	branch p_le_send_att_pnp_id,zero	//modify VID/PID
-//	
-//	fetch 2,mem_le_att_handle
-//	beq 0x13,le_send_att_error_response_notfound	//delete battery
-
-//	fetcht 2,mem_le_att_handle
-//	branch le_send_att_read_response
-//p_le_send_att_pnp_id:
-//	call store_contr
-//	fetch 1,mem_le_att_pnp_id_len
-//	add pdata,1,rega
-//	call le_fifo_malloc_tx_l2cap_gatt
-//	setarg ATTOP_READ_RESPONSE
-//	istore 1,contw
-//	fetch 1,mem_le_att_pnp_id_len
-//	copy pdata,loopcnt
-//	arg mem_le_att_pnp_id,contr
-//	branch memcpy
+p_le_parse_att1:
+	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
+	branch le_parse_att+2
+p_le_parse_att_read_request:
+	fetcht 2,mem_le_att_handle
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_READ_AUTH,p_le_send_att_read_response_check_auth
+p_le_send_att_read_response:
+	call le_att_get_handle_ptr
+	branch le_send_att_error_response_notfound,blank
+	increase -2,contr
+	ifetch 2,contr
+	arg UUID_CHRCTR_PNP_ID,temp
+	isub temp,null
+	branch p_le_send_att_pnp_id,zero	//modify VID/PID
+	
+	fetch 2,mem_le_att_handle
+	beq 0x13,le_send_att_error_response_notfound	//delete battery
 
-//p_le_send_att_read_response_check_auth:
-//	fetch 2,mem_le_pairing_handle
-//	isub temp,null
-//	nbranch p_le_send_att_read_response,zero
-//p_le_send_att_read_response_error_insufficient_auth:
-//	call le_check_encrypt_state
-//	nbranch p_le_send_att_read_response,user
-//	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
-//	branch le_send_att_error_response
+	fetcht 2,mem_le_att_handle
+	branch le_send_att_read_response
+p_le_send_att_pnp_id:
+	call store_contr
+	fetch 1,mem_le_att_pnp_id_len
+	add pdata,1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_att_pnp_id_len
+	copy pdata,loopcnt
+	arg mem_le_att_pnp_id,contr
+	branch memcpy
+
+p_le_send_att_read_response_check_auth:
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch p_le_send_att_read_response,zero
+p_le_send_att_read_response_error_insufficient_auth:
+	call le_check_encrypt_state
+	nbranch p_le_send_att_read_response,user
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
 
 p_le_parse_smp:
 	ifetch 1,contr
Index: output/bt_program23.rom
===================================================================
--- /branch/mouse_project/YFK/OnlyBLE/output/bt_program23.rom	(revision 1520)
+++ /branch/mouse_project/YFK/OnlyBLE/output/bt_program23.rom	(working copy)
@@ -1,7 +1,7 @@
 11000010100001000000000000001111
 11000000000000001000000000100110
-11000000010000101000011010100001
-11000000010001001000011001110010
+11000000010000101000011011000010
+11000000010001001000011010010011
 11000000010100001000000000101111
 11000000010110001000000000110100
 11000000011000100000001001010011
@@ -21,10 +21,10 @@
 11000000001100011000010110011010
 11000000001100110000010111000100
 11000000001100111000010111011011
-11000000001101010000011000000111
-11000000001110111000011000010010
-11000000011111010000011000100010
-11000000010001100000011000101011
+11000000001101010000011000101000
+11000000001110111000011000110011
+11000000011111010000011001000011
+11000000010001100000011001001100
 00100000001000000010101010001110
 00011111111000100010001000000000
 01101000000010001100110010001001
@@ -90,7 +90,7 @@
 01100000000000001100101111001111
 01100000000000001100101110001010
 00100000011000000000000000000000
-00100000010000000000011000111110
+00100000010000000000011001011111
 01101000000000001100110100000101
 11000000000000001000000001100001
 11000000000000010000000001100101
@@ -117,7 +117,7 @@
 00100000010000000000000101100000
 01110000010011000001001100000010
 00100000001000000000000011000011
-00100000010000000000011000111110
+00100000010000000000011001011111
 01110000010011010000000100000000
 00100000001000000000000001010011
 01110000010011010000011000000010
@@ -204,7 +204,7 @@
 00100100001101111000000011101100
 00100000010000000000000011011010
 00100000010000000000000100000111
-00100000010000000000011000111010
+00100000010000000000011001011011
 01110000010010110011111100000000
 01101000000000001100101111001101
 00011111111000001111111000000001
@@ -219,7 +219,7 @@
 11011111001000000000000000000100
 11011000101000000100101101101010
 00100000001000000111111011000110
-00100000010000000000011000110111
+00100000010000000000011001011000
 00100000001000000000000100101101
 01111000010101111111110000000000
 00100000010000000000000111111010
@@ -598,7 +598,7 @@
 00100000010000000000001101100011
 01101000000000001100000111011110
 01100000000000001100110010000101
-00100000010000000000011000110111
+00100000010000000000011001011000
 01101000000000001100011010000101
 01100000000000001100011011011010
 00100000010000000100001111001010
@@ -609,7 +609,7 @@
 00100100010101011000001011001101
 00100000010000000000001010010001
 00100000011101011000000000000000
-00100000010000000000011010101100
+00100000010000000000011011001101
 00100000010000000000001100010010
 00100000010000000000001100000100
 00100000010000000000001001101100
@@ -749,9 +749,9 @@
 11011010010000000000000001100100
 00100000001000000110010111010001
 01110000010000100001000000110100
-01011000000000000000000000000000
-00011111111001000111111000000000
-01100000000000110100010010100000
+01011000000011110000111100001111
+01100000000000011100010010100000
+01100000000000011100010010100011
 00100000011000000000000000000000
 00100000010000000011001111000100
 00100000001000101000001011111111
@@ -788,7 +788,7 @@
 01100000000000010100110011111111
 01011000000000000000001100111010
 01100000000000010100000111101111
-01011000000000000000011000011100
+01011000000000000000011000111101
 01100000000000010100000111111001
 01011000000000000000001001001001
 01100000000000010100000111101101
@@ -1272,8 +1272,8 @@
 00100000010000000100000001111001
 00100000010000000100000001111110
 00100000010000000000010100010000
-00100100001101000000011010101100
-00100000010000000000011010100011
+00100100001101000000011011001101
+00100000010000000000011011000100
 00100000001000000011111110100000
 01101000000000001100011011100000
 11000000000000111000010100000010
@@ -1392,7 +1392,7 @@
 11000000000001100101001110010101
 00100000010000000101010110101010
 00100000010000000101011000011110
-00100000010000000000011001001000
+00100000010000000000011001101001
 00100000001000000101001110001111
 01101000000000001000000000010110
 00011111111000001111111000000001
@@ -1434,7 +1434,7 @@
 00100000001000000111111111101001
 01101000000000001000010001010110
 11000010100000101000010110101110
-00100000010000000000011000111010
+00100000010000000000011001011011
 01101000000000001100011110001110
 00100100001110100000010110100100
 01101000000000001000010000111111
@@ -1466,7 +1466,7 @@
 01100000000000001100001111011100
 00100000010000000101011001010000
 00100000011000000000000000000000
-00100000001000000000011000111110
+00100000001000000000011001011111
 01101000000000001100011110011111
 00100000011110100000000000000000
 01101000000000001100011011000101
@@ -1499,7 +1499,7 @@
 00100000001000000101110010001010
 11101000110000010000000000000000
 11000000000000100000010111011111
-11000000000000110000010111111100
+11000000000000110000011000011101
 00100000001000000101011010011000
 00100000010000000111111010100101
 00100000010000000000010110111101
@@ -1509,7 +1509,7 @@
 11000000000010000000010111101110
 00011111111011001000010000000000
 00011000010001100111110000100100
-00100000001000010101100010101101
+00100000001000010000010111111100
 11011000010000000100011111000110
 01100000000010010100010010111100
 00100000010000000101100010101101
@@ -1530,9 +1530,42 @@
 01011000000000000000000000101011
 11100000110000010000000000000000
 00100000011000000000000000000000
+11000000000001010000010111111110
+00100000001000000101100010101101
+01101000000010010000010001111000
+01101000000000001100010011101001
+11000010100000011000011000010110
+00100000010000000101011101101010
+00100000001110100101101001110110
+00011000110000001000110111111110
+11101000110000010000000000000000
+11011000010000000010101001010000
+10011000010001100111110000000000
+00100000001000101000011000001100
+01101000000000010000010001111000
+11000000000010011101101001110110
+01101000000010010000010001111000
+00100000001000000101100110111111
+00100000010000000111111010100101
+01101000000000001100101100110010
+00011111111000001010001000000001
+00100000010000000101101010000010
+01011000000000000000000000001011
+11100000101000001000000000000000
+01101000000000001100101100110010
+00011111111000100111001000000000
+11011000110000000100101100110011
+00100000001000000111111100000001
+01101000000000010100010011111010
+10011000010001100111110000000000
+00100100001000101000011000000001
+00100000010000000101101001000010
+00100100001101000000011000000001
+01110000000001000111101000000101
+00100000001000000101101001110111
 11101000110000001000000000000000
-11000000000000001000011000000000
-11000000000000101000011000000010
+11000000000000001000011000100001
+11000000000000101000011000100011
 00100000001000000101101011110110
 01110000010010110100000100000001
 00100000001000000101101100001001
@@ -1543,7 +1576,7 @@
 00100000001000000101110010001110
 01101000000000001000000000010110
 11000000100100111101011011110010
-00100000010000000000011000001101
+00100000010000000000011000101110
 11011000111000000000000000000000
 01101000000000010100010010000010
 00100000001000000111111100001000
@@ -1553,7 +1586,7 @@
 00011111111000001111111011111010
 00100000001000000011110010111110
 01111000010101011111110000000000
-00100000001101110000011000010101
+00100000001101110000011000110110
 00100100001101101101100000000110
 00100000010000000010101111001011
 01101000000000010100000011000001
@@ -1572,7 +1605,7 @@
 00100100001110100111110111011011
 01101000000000001000101010011001
 11000101100001001111110111010110
-11000000000010010000011000101000
+11000000000010010000011001001001
 00100000001000000111110111001010
 00100000010000000101100010010000
 00100100011110100000000000000000
@@ -1598,7 +1631,7 @@
 00100000011000000000000000000000
 01101000000000001100110100000111
 00011111111001100111110000000010
-00100100010000010000011001000110
+00100100010000010000011001100111
 01101000000000001100110100000111
 11000001000000000000000000000000
 00011111111000001111111111111111
@@ -1612,38 +1645,38 @@
 00100000010000000000001000111000
 01100000000010001100110100001000
 01011000000000000000000010000010
-11000101000100110000011001010000
+11000101000100110000011001110001
 01011000000000000000000010000000
 10011000010001100111110000000000
-00100100001000010000011001101000
+00100100001000010000011010001001
 01101000000000001100110100000111
 00011111111001100111110000000010
-00100100001000010000011001011000
+00100100001000010000011001111001
 01101000000000001100110100000111
-11000000000000000000011001101001
+11000000000000000000011010001010
 00100000011000000000000000000000
 01101000000000001100110100000111
 11000001100100000000000000000000
 01110000010011010000011100000000
 01101000000010001100110100001000
 01011000000000000000000001110111
-11000101000100110000011001011111
+11000101000100110000011010000000
 01011000000000000000000001110101
 10011000010001100111110000000000
 00100100011000010000000000000000
 01101000000000001100110100001010
-11000000000000000000011001110000
+11000000000000000000011010010001
 00011111111000001111111111111111
 01100000000000001100110100001010
-11000000000000000000011001110000
+11000000000000000000011010010001
 01110000010000011101111000000000
 00100000011000000000000000000000
 01110000010011010000011100000000
 01101000000000001100110100001010
-11000000000000010000011001101110
+11000000000000010000011010001111
 00011111111000001111111000000001
 01100000000000001100110100001010
-11000000000000001000011001100110
+11000000000000001000011010000111
 01110000010000011101111000000010
 00100000011000000000000000000000
 01110000010000011101111000000100
@@ -1664,20 +1697,20 @@
 00100000000000000000000000001010
 01110000100010010000001001111101
 01101000000000001100000111011110
-11000000000000010000011010001010
-11000000000000100000011010001111
-11000000000100000000011010011110
-00100000010000000000011010010100
+11000000000000010000011010101011
+11000000000000100000011010110000
+11000000000100000000011010111111
+00100000010000000000011010110101
 01110000100010010101010111010000
 01110000100010010101011011100000
 01110000100010010101100001101100
 00100000001000000010100101001011
-00100000010000000000011010011001
+00100000010000000000011010111010
 01110000100010010101010111010000
 01110000100010010101011011100000
 01110000100010010101100000111100
 00100000001000000010100101010011
-00100000010000000000011010010100
+00100000010000000000011010110101
 01110000100010010101010111010000
 01110000100010010101011011000000
 01110000100010010101100001101100
@@ -1699,13 +1732,13 @@
 00100000001000000010100011111010
 01101000000000100100011010011011
 00100000011110100000000000000000
-00100000010000000000011011110110
+00100000010000000000011100010111
 01011000000000000000000000001100
-00100000010000000000011011101001
+00100000010000000000011100001010
 01011000000000000000000000000110
-00100000010000000000011011101111
+00100000010000000000011100010000
 01101000000000001100101100011001
-11000000000000001000011010101111
+11000000000000001000011011010000
 11011111001000000000000000000101
 11011000101000000100101100011001
 00100000001000000111111011010100
@@ -1713,7 +1746,7 @@
 01100000000000010001000110111110
 01101000000000010100011010011011
 01100000000000010001000111000000
-00100000010000000000011011000010
+00100000010000000000011011100011
 01101000000000010001000110111110
 01100000000000010100101100011010
 01101000000000010001000111000000
@@ -1722,7 +1755,7 @@
 01100000000000010001000110111110
 01101000000000010100011010011101
 01100000000000010001000111000000
-00100000010000000000011011000010
+00100000010000000000011011100011
 01101000000000010001000110111110
 01100000000000010100101100011100
 01101000000000010001000111000000
@@ -1733,32 +1766,32 @@
 10011000010000001111111000000000
 01100000000000011001000111000010
 00101111111011111111111000010000
-00100000001000001000011011001111
+00100000001000001000011011110000
 01101000000000001001000111000011
-11000000011111111000011011010110
+11000000011111111000011011110111
 01101000000000001001000111000010
 00011111111000110111111000000000
 01100000000000010001000110111110
 01100000000000010001000111000000
 00100000011000000000000000000000
 01101000000000001001000111000011
-11000000000000000000011011010011
+11000000000000000000011011110100
 01101000000000011001000111000010
-00100000001000000000011011001011
+00100000001000000000011011101100
 01110000000100011100010000000000
 01101000000000001001000111000010
-00100000001000000000011011001011
+00100000001000000000011011101100
 01101000000000001001000111000010
-00100000010000000000011011100001
+00100000010000000000011100000010
 01100000000000001001000110111110
 01100000000000001001000111000000
-00100000001110100000011011011111
+00100000001110100000011100000000
 01011000000000000000000011111111
 01100000000000001001000110111111
 01100000000000001001000111000001
 00100000011000000000000000000000
 01011000000000000000000000000000
-00100000001000000000011011011100
+00100000001000000000011011111101
 00011111111001100111111000000000
 01100000000000001000101010101110
 01101000000000001000101010101110
@@ -1768,68 +1801,35 @@
 00011111111001100111111000000000
 00100000011000000000000000000000
 10011010001001100111110000000000
-00100100001000010000011011110100
+00100100001000010000011100010101
 10011010010001100111110000000000
-00100100001000010000011011110100
+00100100001000010000011100010101
 01110000010010110001100100000000
 00100000011000000000000000000000
 10011010001001100111110000000000
 00100100011000010000000000000000
 10011010010001100111110000000000
 00100100011000010000000000000000
-00100000001000000000011011101101
+00100000001000000000011100001110
 01110000010010110001100100000001
 00100000011000000000000000000000
 01101000000000010100011010011011
 01100000000000010001000111000000
-00100000010000000000011011111111
+00100000010000000000011100100000
 00011111111000100010001000000000
 01101000000000010100011010011101
 01100000000000010001000111000000
-00100000010000000000011011111111
+00100000010000000000011100100000
 00011111111000100010010000000000
 00100000011000000000000000000000
 01101000000000001001000111000001
-11000000011111111000011100000100
+11000000011111111000011100100101
 01101000000000001001000111000000
 00011111111000010111111011111111
 00100000011000000000000000000000
 01101000000000010001000111000000
 00011111111001100111111000000000
-00100000001000000000011100000010
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
+00100000001000000000011100100011
                                 
                                 
                                 
Index: output/eeprom.dat
===================================================================
--- /branch/mouse_project/YFK/OnlyBLE/output/eeprom.dat	(revision 1520)
+++ /branch/mouse_project/YFK/OnlyBLE/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-1e
+a2
 1c
 c2
 84
@@ -15,11 +15,11 @@
 c0
 42
 86
-a1
+c2
 c0
 44
 86
-72
+93
 c0
 50
 80
@@ -99,19 +99,19 @@
 c0
 35
 06
-07
+28
 c0
 3b
 86
-12
+33
 c0
 7d
 06
-22
+43
 c0
 46
 06
-2b
+4c
 20
 20
 2a
@@ -375,7 +375,7 @@
 20
 40
 06
-3e
+5f
 68
 00
 cd
@@ -483,7 +483,7 @@
 20
 40
 06
-3e
+5f
 70
 4d
 01
@@ -831,7 +831,7 @@
 20
 40
 06
-3a
+5b
 70
 4b
 3f
@@ -891,7 +891,7 @@
 20
 40
 06
-37
+58
 20
 20
 01
@@ -2407,7 +2407,7 @@
 20
 40
 06
-37
+58
 68
 00
 c6
@@ -2451,7 +2451,7 @@
 20
 40
 06
-ac
+cd
 20
 40
 03
@@ -3009,17 +3009,17 @@
 10
 34
 58
-00
-00
-00
-1f
-e4
-7e
-00
+0f
+0f
+0f
 60
-03
-44
+01
+c4
 a0
+60
+01
+c4
+a3
 20
 60
 00
@@ -3167,7 +3167,7 @@
 58
 00
 06
-1c
+3d
 60
 01
 41
@@ -5103,11 +5103,11 @@
 24
 34
 06
-ac
+cd
 20
 40
 06
-a3
+c4
 20
 20
 3f
@@ -5583,7 +5583,7 @@
 20
 40
 06
-48
+69
 20
 20
 53
@@ -5751,7 +5751,7 @@
 20
 40
 06
-3a
+5b
 68
 00
 c7
@@ -5879,7 +5879,7 @@
 20
 20
 06
-3e
+5f
 68
 00
 c7
@@ -6010,8 +6010,8 @@
 df
 c0
 03
-05
-fc
+06
+1d
 20
 20
 56
@@ -6050,8 +6050,8 @@
 24
 20
 21
-58
-ad
+05
+fc
 d8
 40
 47
@@ -6132,18 +6132,150 @@
 60
 00
 00
+c0
+05
+05
+fe
+20
+20
+58
+ad
+68
+09
+04
+78
+68
+00
+c4
+e9
+c2
+81
+86
+16
+20
+40
+57
+6a
+20
+3a
+5a
+76
+18
+c0
+8d
+fe
 e8
+c1
+00
+00
+d8
+40
+2a
+50
+98
+46
+7c
+00
+20
+22
+86
+0c
+68
+01
+04
+78
 c0
+09
+da
+76
+68
+09
+04
+78
+20
+20
+59
+bf
+20
+40
+7e
+a5
+68
+00
+cb
+32
+1f
+e0
+a2
+01
+20
+40
+5a
+82
+58
+00
+00
+0b
+e0
+a0
 80
 00
+68
+00
+cb
+32
+1f
+e2
+72
+00
+d8
 c0
+4b
+33
+20
+20
+7f
+01
+68
+01
+44
+fa
+98
+46
+7c
 00
+24
+22
 86
+01
+20
+40
+5a
+42
+24
+34
+06
+01
+70
+04
+7a
+05
+20
+20
+5a
+77
+e8
+c0
+80
 00
 c0
-02
+00
 86
+21
+c0
 02
+86
+23
 20
 20
 5a
@@ -6187,7 +6319,7 @@
 20
 40
 06
-0d
+2e
 d8
 e0
 00
@@ -6227,7 +6359,7 @@
 20
 37
 06
-15
+36
 24
 36
 d8
@@ -6303,7 +6435,7 @@
 c0
 09
 06
-28
+49
 20
 20
 7d
@@ -6407,7 +6539,7 @@
 24
 41
 06
-46
+67
 68
 00
 cd
@@ -6463,7 +6595,7 @@
 c5
 13
 06
-50
+71
 58
 00
 00
@@ -6475,7 +6607,7 @@
 24
 21
 06
-68
+89
 68
 00
 cd
@@ -6487,7 +6619,7 @@
 24
 21
 06
-58
+79
 68
 00
 cd
@@ -6495,7 +6627,7 @@
 c0
 00
 06
-69
+8a
 20
 60
 00
@@ -6523,7 +6655,7 @@
 c5
 13
 06
-5f
+80
 58
 00
 00
@@ -6543,7 +6675,7 @@
 c0
 00
 06
-70
+91
 1f
 e0
 ff
@@ -6555,7 +6687,7 @@
 c0
 00
 06
-70
+91
 70
 41
 de
@@ -6575,7 +6707,7 @@
 c0
 01
 06
-6e
+8f
 1f
 e0
 fe
@@ -6587,7 +6719,7 @@
 c0
 00
 86
-66
+87
 70
 41
 de
@@ -6671,19 +6803,19 @@
 c0
 01
 06
-8a
+ab
 c0
 02
 06
-8f
+b0
 c0
 10
 06
-9e
+bf
 20
 40
 06
-94
+b5
 70
 89
 55
@@ -6703,7 +6835,7 @@
 20
 40
 06
-99
+ba
 70
 89
 55
@@ -6723,7 +6855,7 @@
 20
 40
 06
-94
+b5
 70
 89
 55
@@ -6810,24 +6942,24 @@
 00
 20
 40
-06
-f6
+07
+17
 58
 00
 00
 0c
 20
 40
-06
-e9
+07
+0a
 58
 00
 00
 06
 20
 40
-06
-ef
+07
+10
 68
 00
 cb
@@ -6835,7 +6967,7 @@
 c0
 00
 86
-af
+d0
 df
 20
 00
@@ -6867,7 +6999,7 @@
 20
 40
 06
-c2
+e3
 68
 01
 11
@@ -6903,7 +7035,7 @@
 20
 40
 06
-c2
+e3
 68
 01
 11
@@ -6947,7 +7079,7 @@
 20
 20
 86
-cf
+f0
 68
 00
 91
@@ -6955,7 +7087,7 @@
 c0
 7f
 86
-d6
+f7
 68
 00
 91
@@ -6983,7 +7115,7 @@
 c0
 00
 06
-d3
+f4
 68
 01
 91
@@ -6991,7 +7123,7 @@
 20
 20
 06
-cb
+ec
 70
 11
 c4
@@ -7003,15 +7135,15 @@
 20
 20
 06
-cb
+ec
 68
 00
 91
 c2
 20
 40
-06
-e1
+07
+02
 60
 00
 91
@@ -7022,8 +7154,8 @@
 c0
 20
 3a
-06
-df
+07
+00
 58
 00
 00
@@ -7047,7 +7179,7 @@
 20
 20
 06
-dc
+fd
 1f
 e6
 7e
@@ -7086,16 +7218,16 @@
 00
 24
 21
-06
-f4
+07
+15
 9a
 46
 7c
 00
 24
 21
-06
-f4
+07
+15
 70
 4b
 19
@@ -7122,8 +7254,8 @@
 00
 20
 20
-06
-ed
+07
+0e
 70
 4b
 19
@@ -7142,8 +7274,8 @@
 c0
 20
 40
-06
-ff
+07
+20
 1f
 e2
 22
@@ -7158,8 +7290,8 @@
 c0
 20
 40
-06
-ff
+07
+20
 1f
 e2
 24
@@ -7175,7 +7307,7 @@
 c0
 7f
 87
-04
+25
 68
 00
 91
@@ -7199,9 +7331,9 @@
 20
 20
 07
-02
-73
-2a
+23
+c1
+ff
 aa
 55
 08
@@ -7873,5 +8005,5 @@
 4c
 04
 01
-bf
-ea
+04
+0c
Index: output/program.lis
===================================================================
--- /branch/mouse_project/YFK/OnlyBLE/output/program.lis	(revision 1520)
+++ /branch/mouse_project/YFK/OnlyBLE/output/program.lis	(working copy)
@@ -2,8 +2,8 @@
 org 0x0000
 0000 c284000f bbit1 8 ,pf_patch_ext 
 0001 c0008026 beq patch00_1 ,p_soft_reset_1 
-0002 c04286a1 beq patch10_5 ,p_shutdown_radio 
-0003 c0448672 beq patch11_1 ,p_set_freq_tx 
+0002 c04286c2 beq patch10_5 ,p_shutdown_radio 
+0003 c0448693 beq patch11_1 ,p_set_freq_tx 
 0004 c050802f beq patch14_1 ,p_init_param 
 0005 c0588034 beq patch16_1 ,p_lpm_check_wake_lock 
 0006 c0620253 beq patch18_4 ,p_device_init 
@@ -25,10 +25,10 @@
 0014 c031859a beq patch2c_3 ,p_le_prepare_tx 
 0015 c03305c4 beq patch2c_6 ,p_le_parse 
 0016 c03385db beq patch2c_7 ,p_le_parse_l2cap 
-0017 c0350607 beq patch2d_2 ,p_le_adv_not_match 
-0018 c03b8612 beq patch2e_7 ,p_le_lpm_setmult 
-0019 c07d0622 beq patch3f_2 ,p_check_51cmd_once_continue 
-001a c046062b beq patch31_4 ,p_twspi_reset 
+0017 c0350628 beq patch2d_2 ,p_le_adv_not_match 
+0018 c03b8633 beq patch2e_7 ,p_le_lpm_setmult 
+0019 c07d0643 beq patch3f_2 ,p_check_51cmd_once_continue 
+001a c046064c beq patch31_4 ,p_twspi_reset 
 001b 20202a8e branch loop 
 
 p_rssi_signal:
@@ -118,7 +118,7 @@
 005b 20600000 rtn 
 
 p_g24_transmit_hop_pac_fail:
-005c 2040063e call power_ctrl_pac_succ_decrs 
+005c 2040065f call power_ctrl_pac_succ_decrs 
 005d 6800cd05 fetch 1 ,mem_24g_rf_work_stage 
 005e c0008061 beq 1 ,p_g24_transmit_hop_pac_fail_wo_hop 
 005f c0010065 beq 2 ,p_g24_transmit_hop_pac_fail_hop_stage2 
@@ -159,7 +159,7 @@
 0076 202000c3 branch p_g24_transmit_packet 
 
 p_g24_rf_hop_fastly_exit:
-0077 2040063e call power_ctrl_pac_succ_decrs 
+0077 2040065f call power_ctrl_pac_succ_decrs 
 0078 704d0100 jam 0 ,mem_24g_hop_fastly_cnt 
 0079 20200053 branch p_g24_transmit_rf_ctrl_clear 
 
@@ -276,7 +276,7 @@
 00cb 243780ec nbranch p_g24_retransmit ,user3 
 00cc 204000da call p_g24_txbuf_clear 
 00cd 20400107 call p_g24_ackpayload_parse 
-00ce 2040063a call power_ctrl_pac_succ_incrs 
+00ce 2040065b call power_ctrl_pac_succ_incrs 
 
 p_g24_transmit_next_packet:
 00cf 704b3f00 jam 0 ,mem_retry_count 
@@ -299,7 +299,7 @@
 00dc 20207ec6 branch memset0 
 
 p_g24_paring_mode_start:
-00dd 20400637 call power_ctrl_pac_succ_cnt_init 
+00dd 20400658 call power_ctrl_pac_succ_cnt_init 
 00de 2020012d branch p_g24_paring_mode 
 
 p_g24_transmit_receive_ack:
@@ -790,7 +790,7 @@
 0255 20400363 call p_mouse_data_init 
 0256 6800c1de fetch 1 ,mem_tx_power 
 0257 6000cc85 store 1 ,mem_tx_power_temp 
-0258 20400637 call power_ctrl_pac_succ_cnt_init 
+0258 20400658 call power_ctrl_pac_succ_cnt_init 
 0259 6800c685 fetch 1 ,mem_ui_button_timeout 
 025a 6000c6da store 1 ,mem_combination_ui_button_count 
 025b 204043ca call mouse_bt_discovery_button_down_disable 
@@ -805,7 +805,7 @@
 0260 245582cd ncall p_mouse_setting_config ,wake 
 0261 20400291 call p_mouse_spi_init 
 0262 20758000 rtn wake 
-0263 204006ac call p_drawing_optima_init 
+0263 204006cd call p_drawing_optima_init 
 0264 20400312 call p_mouse_cb_fuction 
 0265 20400304 call p_mouse_wakeup_from_power 
 
@@ -999,9 +999,9 @@
 
 p_mouse_fast_conn_init:
 02ee 70421034 jam 0x34 ,mem_xrecord_mode 
-02ef 58000000 setarg 0 
-02f0 1fe47e00 invert pdata ,pdata 
-02f1 600344a0 store 6 ,mem_le_lap 
+02ef 580f0f0f setarg 0x0f0f0f 
+02f0 6001c4a0 store 3 ,mem_le_lap 
+02f1 6001c4a3 store 3 ,mem_le_lap + 3 
 02f2 20600000 rtn 
 
 p_mouse_init_environment:
@@ -1058,7 +1058,7 @@
 0313 60014cff store 2 ,mem_cb_24g_data 
 0314 5800033a setarg p_mouse_le 
 0315 600141ef store 2 ,mem_cb_le_process 
-0316 5800061c setarg p_le_mouse_bb_event_connect_complete 
+0316 5800063d setarg p_le_mouse_bb_event_connect_complete 
 0317 600141f9 store 2 ,mem_cb_att_write 
 0318 58000249 setarg p_mouse_before_lpm 
 0319 600141ed store 2 ,mem_cb_before_lpm 
@@ -1740,8 +1740,8 @@
 04f7 20404079 call mouse_zwheel 
 04f8 2040407e call mouse_t_zwheel 
 04f9 20400510 call p_mouse_key 
-04fa 243406ac nbranch p_drawing_optima_init ,user 
-04fb 204006a3 call p_drawing_optima 
+04fa 243406cd nbranch p_drawing_optima_init ,user 
+04fb 204006c4 call p_drawing_optima 
 04fc 20203fa0 branch mouse_motion + 9 
 
 p_mouse_cheak_sensor_data:
@@ -1904,7 +1904,7 @@
 056f c0065395 beq le_md_max_count ,le_slave_cont 
 0570 204055aa call le_acknowledge 
 0571 2040561e call le_prepare_tx 
-0572 20400648 call power_ctrl_start 
+0572 20400669 call power_ctrl_start 
 0573 2020538f branch le_slave_match + 7 
 
 p_le_next_adv_channel:
@@ -1964,7 +1964,7 @@
 p_le_prepare_tx:
 059a 68008456 fetch 1 ,mem_le_arq 
 059b c28285ae bbit1 wak ,p_le_prepare_tx_wak 
-059c 2040063a call power_ctrl_pac_succ_incrs 
+059c 2040065b call power_ctrl_pac_succ_incrs 
 059d 6800c78e fetch 1 ,mem_empty_count 
 059e 243a05a4 nbranch p_le_send_empyt ,blank 
 059f 6800843f fetch 1 ,mem_le_state 
@@ -2008,7 +2008,7 @@
 05bb 20600000 rtn 
 
 p_le_power_ctrl_pac_succ_decrs:
-05bc 2020063e branch power_ctrl_pac_succ_decrs 
+05bc 2020065f branch power_ctrl_pac_succ_decrs 
 
 p_mouse_le_reconn_write_enable_timer_reinit:
 05bd 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
@@ -2051,7 +2051,7 @@
 p_le_parse_l2cap:
 05db e8c10000 ifetch 2 ,contr 
 05dc c00205df beq le_l2cap_cid_att ,p_le_parse_att 
-05dd c00305fc beq le_l2cap_cid_smp ,p_le_parse_smp 
+05dd c003061d beq le_l2cap_cid_smp ,p_le_parse_smp 
 05de 20205698 branch le_parse_l2cap + 11 
 
 p_le_parse_att:
@@ -2063,7 +2063,7 @@
 05e4 c00805ee beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
 05e5 1fec8400 rshift8 pdata ,temp 
 05e6 18467c24 sub temp ,0x24 ,null 
-05e7 202158ad branch le_parse_att + 2 ,positive 
+05e7 202105fc branch p_le_parse_att1 ,positive 
 05e8 d84047c6 arg mem_mouse_le_uuid_sup ,temp 
 05e9 600944bc storet 2 ,mem_ui_le_uuid_table 
 05ea 204058ad call le_parse_att + 2 
@@ -2087,380 +2087,425 @@
 05fa e0c10000 istore 2 ,contr 
 05fb 20600000 rtn 
 
+p_le_parse_att1:
+05fc c00505fe beq attop_read_request ,p_le_parse_att_read_request 
+05fd 202058ad branch le_parse_att + 2 
+
+p_le_parse_att_read_request:
+05fe 68090478 fetcht 2 ,mem_le_att_handle 
+05ff 6800c4e9 fetch 1 ,mem_le_configuration 
+0600 c2818616 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+
+p_le_send_att_read_response:
+0601 2040576a call le_att_get_handle_ptr 
+0602 203a5a76 branch le_send_att_error_response_notfound ,blank 
+0603 18c08dfe increase -2 ,contr 
+0604 e8c10000 ifetch 2 ,contr 
+0605 d8402a50 arg uuid_chrctr_pnp_id ,temp 
+0606 98467c00 isub temp ,null 
+0607 2022860c branch p_le_send_att_pnp_id ,zero 
+0608 68010478 fetch 2 ,mem_le_att_handle 
+0609 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
+060a 68090478 fetcht 2 ,mem_le_att_handle 
+060b 202059bf branch le_send_att_read_response 
+
+p_le_send_att_pnp_id:
+060c 20407ea5 call store_contr 
+060d 6800cb32 fetch 1 ,mem_le_att_pnp_id_len 
+060e 1fe0a201 add pdata ,1 ,rega 
+060f 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+0610 5800000b setarg attop_read_response 
+0611 e0a08000 istore 1 ,contw 
+0612 6800cb32 fetch 1 ,mem_le_att_pnp_id_len 
+0613 1fe27200 copy pdata ,loopcnt 
+0614 d8c04b33 arg mem_le_att_pnp_id ,contr 
+0615 20207f01 branch memcpy 
+
+p_le_send_att_read_response_check_auth:
+0616 680144fa fetch 2 ,mem_le_pairing_handle 
+0617 98467c00 isub temp ,null 
+0618 24228601 nbranch p_le_send_att_read_response ,zero 
+
+p_le_send_att_read_response_error_insufficient_auth:
+0619 20405a42 call le_check_encrypt_state 
+061a 24340601 nbranch p_le_send_att_read_response ,user 
+061b 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
+061c 20205a77 branch le_send_att_error_response 
+
 p_le_parse_smp:
-05fc e8c08000 ifetch 1 ,contr 
-05fd c0008600 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
-05fe c0028602 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-05ff 20205af6 branch le_parse_smp + 2 
+061d e8c08000 ifetch 1 ,contr 
+061e c0008621 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+061f c0028623 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0620 20205af6 branch le_parse_smp + 2 
 
 p_le_parse_smp_pairing_request:
-0600 704b4101 jam 1 ,mem_le_send_security_request_flag 
-0601 20205b09 branch le_parse_smp_pairing_request 
+0621 704b4101 jam 1 ,mem_le_send_security_request_flag 
+0622 20205b09 branch le_parse_smp_pairing_request 
 
 p_le_parse_smp_pairing_failed:
-0602 20405b5a call le_parse_smp_pairing_failed 
-0603 6800843f fetch 1 ,mem_le_state 
-0604 793ffe05 set0 lestate_update_param ,pdata 
-0605 6000843f store 1 ,mem_le_state 
-0606 20205c8e branch le_parse_terminate_ind 
+0623 20405b5a call le_parse_smp_pairing_failed 
+0624 6800843f fetch 1 ,mem_le_state 
+0625 793ffe05 set0 lestate_update_param ,pdata 
+0626 6000843f store 1 ,mem_le_state 
+0627 20205c8e branch le_parse_terminate_ind 
 
 p_le_adv_not_match:
-0607 68008016 fetch 1 ,mem_le_ch_mapped 
-0608 c093d6f2 bne 39 ,le_adv_loop 
-0609 2040060d call p_le_adv_random_delay 
-060a d8e00000 arg le_adv_interval_timer ,queue 
-060b 68014482 fetch 2 ,mem_le_adv_interval 
-060c 20207f08 branch timer_init 
+0628 68008016 fetch 1 ,mem_le_ch_mapped 
+0629 c093d6f2 bne 39 ,le_adv_loop 
+062a 2040062e call p_le_adv_random_delay 
+062b d8e00000 arg le_adv_interval_timer ,queue 
+062c 68014482 fetch 2 ,mem_le_adv_interval 
+062d 20207f08 branch timer_init 
 
 p_le_adv_random_delay:
-060d 180a7e00 random pdata 
-060e d84001ff arg 0x1ff ,temp 
-060f 98417e00 iand temp ,pdata 
-0610 1fe0fefa add pdata ,250 ,pdata 
-0611 20203cbe branch delay 
+062e 180a7e00 random pdata 
+062f d84001ff arg 0x1ff ,temp 
+0630 98417e00 iand temp ,pdata 
+0631 1fe0fefa add pdata ,250 ,pdata 
+0632 20203cbe branch delay 
 
 p_le_lpm_setmult:
-0612 7855fc00 disable wake 
-0613 20370615 branch p_le_lpm_set_mult_attempt ,attempt 
-0614 2436d806 nbranch le_lpm_lost ,match 
+0633 7855fc00 disable wake 
+0634 20370636 branch p_le_lpm_set_mult_attempt ,attempt 
+0635 2436d806 nbranch le_lpm_lost ,match 
 
 p_le_lpm_set_mult_attempt:
-0615 20402bcb call lpm_match 
-0616 680140c1 fetch 2 ,mem_rx_window_sniff 
-0617 6001044d store 2 ,mem_le_receive_window 
-0618 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-0619 2fe00603 compare 3 ,pdata ,3 
-061a 2420abde nbranch lpm_mult_short ,true 
-061b 202057fb branch le_lpm_set_mult_attempt + 3 
+0636 20402bcb call lpm_match 
+0637 680140c1 fetch 2 ,mem_rx_window_sniff 
+0638 6001044d store 2 ,mem_le_receive_window 
+0639 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+063a 2fe00603 compare 3 ,pdata ,3 
+063b 2420abde nbranch lpm_mult_short ,true 
+063c 202057fb branch le_lpm_set_mult_attempt + 3 
 
 p_le_mouse_bb_event_connect_complete:
-061c 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-061d 247a0000 nrtn blank 
-061e 68008478 fetch 1 ,mem_le_att_handle 
-061f 1fe67e1a sub pdata ,26 ,pdata 
-0620 24628000 nrtn zero 
-0621 20203d60 branch mouse_le_write_enable 
+063d 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+063e 247a0000 nrtn blank 
+063f 68008478 fetch 1 ,mem_le_att_handle 
+0640 1fe67e1a sub pdata ,26 ,pdata 
+0641 24628000 nrtn zero 
+0642 20203d60 branch mouse_le_write_enable 
 
 p_check_51cmd_once_continue:
-0622 204062bc call lmo_fifo_check 
-0623 243a7ddb nbranch check_51cmd_restore ,blank 
-0624 68008a99 fetch 1 ,mem_fifo_temp 
-0625 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
-0626 c0090628 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-0627 20207dca branch check_51cmd_once_continue + 2 
+0643 204062bc call lmo_fifo_check 
+0644 243a7ddb nbranch check_51cmd_restore ,blank 
+0645 68008a99 fetch 1 ,mem_fifo_temp 
+0646 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+0647 c0090649 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+0648 20207dca branch check_51cmd_once_continue + 2 
 
 p_check_51cmd_ble_update_connect_param:
-0628 20405890 call le_fifo_check_full 
-0629 247a0000 nrtn blank 
-062a 20205abf branch le_l2cap_tx_update_req 
+0649 20405890 call le_fifo_check_full 
+064a 247a0000 nrtn blank 
+064b 20205abf branch le_l2cap_tx_update_req 
 
 p_twspi_reset:
-062b 68108077 hfetch 1 ,core_gpio_out3 
-062c 1fe17efd and_into 0xfd ,pdata 
-062d 60108077 hstore 1 ,core_gpio_out3 
-062e 68188073 hfetcht 1 ,core_gpio_oe3 
-062f 18418402 or_into 0x2 ,temp 
-0630 60188073 hstoret 1 ,core_gpio_oe3 
-0631 204063ee call twspi_disable 
-0632 184104fd and_into 0xfd ,temp 
-0633 2000000d nop 13 
-0634 204063f2 call twspi_enable 
-0635 60188073 hstoret 1 ,core_gpio_oe3 
-0636 20600000 rtn 
+064c 68108077 hfetch 1 ,core_gpio_out3 
+064d 1fe17efd and_into 0xfd ,pdata 
+064e 60108077 hstore 1 ,core_gpio_out3 
+064f 68188073 hfetcht 1 ,core_gpio_oe3 
+0650 18418402 or_into 0x2 ,temp 
+0651 60188073 hstoret 1 ,core_gpio_oe3 
+0652 204063ee call twspi_disable 
+0653 184104fd and_into 0xfd ,temp 
+0654 2000000d nop 13 
+0655 204063f2 call twspi_enable 
+0656 60188073 hstoret 1 ,core_gpio_oe3 
+0657 20600000 rtn 
 
 power_ctrl_pac_succ_cnt_init:
-0637 704d0a01 jam 1 ,mem_power_ctrl_level 
-0638 704d0700 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0639 20600000 rtn 
+0658 704d0a01 jam 1 ,mem_power_ctrl_level 
+0659 704d0700 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+065a 20600000 rtn 
 
 power_ctrl_pac_succ_incrs:
-063a 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-063b 1fe0fe01 increase 1 ,pdata 
-063c 6000cd07 store 1 ,mem_power_ctrl_pac_succ_cnt 
-063d 20600000 rtn 
+065b 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+065c 1fe0fe01 increase 1 ,pdata 
+065d 6000cd07 store 1 ,mem_power_ctrl_pac_succ_cnt 
+065e 20600000 rtn 
 
 power_ctrl_pac_succ_decrs:
-063e 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-063f 1fe67c02 sub pdata ,2 ,null 
-0640 24410646 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-0641 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0642 c1000000 rtneq 0 
-0643 1fe0ffff increase -1 ,pdata 
-0644 6000cd07 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0645 20600000 rtn 
+065f 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0660 1fe67c02 sub pdata ,2 ,null 
+0661 24410667 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0662 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0663 c1000000 rtneq 0 
+0664 1fe0ffff increase -1 ,pdata 
+0665 6000cd07 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0666 20600000 rtn 
 
 power_ctrl_pac_succ_cnt_reinit:
-0646 704d0703 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-0647 20600000 rtn 
+0667 704d0703 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0668 20600000 rtn 
 
 power_ctrl_start:
-0648 68014682 fetch 2 ,mem_ui_state_map 
-0649 c3858000 rtnbit1 ui_state_ble_adv 
-064a da204c90 arg mem_rssi_signal_buf ,rega 
-064b 20400238 call p_rssi_average 
-064c 6008cd08 storet 1 ,mem_rssi_avg_received 
-064d 58000082 setarg rssi_dis_max_24g 
-064e c5130650 bmark1 mark_24g ,power_ctrl_start_next 
-064f 58000080 setarg rssi_dis_max_ble 
+0669 68014682 fetch 2 ,mem_ui_state_map 
+066a c3858000 rtnbit1 ui_state_ble_adv 
+066b da204c90 arg mem_rssi_signal_buf ,rega 
+066c 20400238 call p_rssi_average 
+066d 6008cd08 storet 1 ,mem_rssi_avg_received 
+066e 58000082 setarg rssi_dis_max_24g 
+066f c5130671 bmark1 mark_24g ,power_ctrl_start_next 
+0670 58000080 setarg rssi_dis_max_ble 
 
 power_ctrl_start_next:
-0650 98467c00 isub temp ,null 
-0651 24210668 nbranch power_ctrl_txpower_incrs_force ,positive 
-0652 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0653 1fe67c02 sub pdata ,2 ,null 
-0654 24210658 nbranch power_ctrl_txpower_decrs_check ,positive 
-0655 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0656 c0000669 beq 0 ,power_ctrl_txpower_incrs 
-0657 20600000 rtn 
+0671 98467c00 isub temp ,null 
+0672 24210689 nbranch power_ctrl_txpower_incrs_force ,positive 
+0673 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0674 1fe67c02 sub pdata ,2 ,null 
+0675 24210679 nbranch power_ctrl_txpower_decrs_check ,positive 
+0676 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0677 c000068a beq 0 ,power_ctrl_txpower_incrs 
+0678 20600000 rtn 
 
 power_ctrl_txpower_decrs_check:
-0658 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0659 c1900000 rtnne 32 
-065a 704d0700 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0679 6800cd07 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+067a c1900000 rtnne 32 
+067b 704d0700 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_decrs:
-065b 6808cd08 fetcht 1 ,mem_rssi_avg_received 
-065c 58000077 setarg rssi_dis_min_24g 
-065d c513065f bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-065e 58000075 setarg rssi_dis_min_ble 
+067c 6808cd08 fetcht 1 ,mem_rssi_avg_received 
+067d 58000077 setarg rssi_dis_min_24g 
+067e c5130680 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+067f 58000075 setarg rssi_dis_min_ble 
 
 power_ctrl_txpower_decrs_next:
-065f 98467c00 isub temp ,null 
-0660 24610000 nrtn positive 
-0661 6800cd0a fetch 1 ,mem_power_ctrl_level 
-0662 c0000670 beq 0 ,power_ctrl_decrs_level0 
-0663 1fe0ffff increase -1 ,pdata 
-0664 6000cd0a store 1 ,mem_power_ctrl_level 
-0665 c0000670 beq 0 ,power_ctrl_decrs_level0 
+0680 98467c00 isub temp ,null 
+0681 24610000 nrtn positive 
+0682 6800cd0a fetch 1 ,mem_power_ctrl_level 
+0683 c0000691 beq 0 ,power_ctrl_decrs_level0 
+0684 1fe0ffff increase -1 ,pdata 
+0685 6000cd0a store 1 ,mem_power_ctrl_level 
+0686 c0000691 beq 0 ,power_ctrl_decrs_level0 
 
 power_ctrl_decrs_level1:
 
 power_ctrl_incrs_level1:
-0666 7041de00 jam tx_power_0db ,mem_tx_power 
-0667 20600000 rtn 
+0687 7041de00 jam tx_power_0db ,mem_tx_power 
+0688 20600000 rtn 
 
 power_ctrl_txpower_incrs_force:
-0668 704d0700 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0689 704d0700 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_incrs:
-0669 6800cd0a fetch 1 ,mem_power_ctrl_level 
-066a c001066e beq 2 ,power_ctrl_incrs_level2 
-066b 1fe0fe01 increase 1 ,pdata 
-066c 6000cd0a store 1 ,mem_power_ctrl_level 
-066d c0008666 beq 1 ,power_ctrl_incrs_level1 
+068a 6800cd0a fetch 1 ,mem_power_ctrl_level 
+068b c001068f beq 2 ,power_ctrl_incrs_level2 
+068c 1fe0fe01 increase 1 ,pdata 
+068d 6000cd0a store 1 ,mem_power_ctrl_level 
+068e c0008687 beq 1 ,power_ctrl_incrs_level1 
 
 power_ctrl_incrs_level2:
-066e 7041de02 jam tx_power_5db ,mem_tx_power 
-066f 20600000 rtn 
+068f 7041de02 jam tx_power_5db ,mem_tx_power 
+0690 20600000 rtn 
 
 power_ctrl_decrs_level0:
-0670 7041de04 jam tx_power_f5db ,mem_tx_power 
-0671 20600000 rtn 
+0691 7041de04 jam tx_power_f5db ,mem_tx_power 
+0692 20600000 rtn 
 
 p_set_freq_tx:
-0672 60088017 storet 1 ,mem_last_freq 
-0673 1840a200 add temp ,0 ,rega 
-0674 20402981 call rf_write_freq 
-0675 58000500 setarg param_pll_setup 
-0676 20402a8f call sleep 
+0693 60088017 storet 1 ,mem_last_freq 
+0694 1840a200 add temp ,0 ,rega 
+0695 20402981 call rf_write_freq 
+0696 58000500 setarg param_pll_setup 
+0697 20402a8f call sleep 
 
 p_rf_tx_enable:
-0677 70890601 jam 0x1 ,rfen_adc 
-0678 7089003c jam 0x3c ,rfen_rx 
-0679 708901e0 jam 0xe0 ,rfen_tx 
-067a 2000000a nop 10 
-067b 70890201 jam 0x01 ,rfen_mdm 
-067c 7089023d jam 0x3d ,rfen_mdm 
-067d 2000000a nop 10 
-067e 708903b7 jam 0xb7 ,rfen_sn 
-067f 2000000a nop 10 
-0680 7089027d jam 0x7d ,rfen_mdm 
-0681 6800c1de fetch 1 ,mem_tx_power 
-0682 c001068a beq tx_power_5db ,p_set_tx_power_5db 
-0683 c002068f beq tx_power_f5db ,p_set_tx_power_f5db 
-0684 c010069e beq tx_power_pair ,p_set_tx_power_pair 
+0698 70890601 jam 0x1 ,rfen_adc 
+0699 7089003c jam 0x3c ,rfen_rx 
+069a 708901e0 jam 0xe0 ,rfen_tx 
+069b 2000000a nop 10 
+069c 70890201 jam 0x01 ,rfen_mdm 
+069d 7089023d jam 0x3d ,rfen_mdm 
+069e 2000000a nop 10 
+069f 708903b7 jam 0xb7 ,rfen_sn 
+06a0 2000000a nop 10 
+06a1 7089027d jam 0x7d ,rfen_mdm 
+06a2 6800c1de fetch 1 ,mem_tx_power 
+06a3 c00106ab beq tx_power_5db ,p_set_tx_power_5db 
+06a4 c00206b0 beq tx_power_f5db ,p_set_tx_power_f5db 
+06a5 c01006bf beq tx_power_pair ,p_set_tx_power_pair 
 
 p_set_tx_power_0db:
-0685 20400694 call p_rx_low_sens 
-0686 708955d0 jam 0xd0 ,0x8955 
-0687 708956e0 jam 0xe0 ,0x8956 
-0688 7089586c jam 0x6c ,0x8958 
-0689 2020294b branch set_tx_power_0db 
+06a6 204006b5 call p_rx_low_sens 
+06a7 708955d0 jam 0xd0 ,0x8955 
+06a8 708956e0 jam 0xe0 ,0x8956 
+06a9 7089586c jam 0x6c ,0x8958 
+06aa 2020294b branch set_tx_power_0db 
 
 p_set_tx_power_5db:
-068a 20400699 call p_rx_high_sens 
-068b 708955d0 jam 0xd0 ,0x8955 
-068c 708956e0 jam 0xe0 ,0x8956 
-068d 7089583c jam 0x3c ,0x8958 
-068e 20202953 branch set_tx_power_5db 
+06ab 204006ba call p_rx_high_sens 
+06ac 708955d0 jam 0xd0 ,0x8955 
+06ad 708956e0 jam 0xe0 ,0x8956 
+06ae 7089583c jam 0x3c ,0x8958 
+06af 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-068f 20400694 call p_rx_low_sens 
-0690 708955d0 jam 0xd0 ,0x8955 
-0691 708956c0 jam 0xc0 ,0x8956 
-0692 7089586c jam 0x6c ,0x8958 
-0693 2020295b branch set_tx_power_f5db 
+06b0 204006b5 call p_rx_low_sens 
+06b1 708955d0 jam 0xd0 ,0x8955 
+06b2 708956c0 jam 0xc0 ,0x8956 
+06b3 7089586c jam 0x6c ,0x8958 
+06b4 2020295b branch set_tx_power_f5db 
 
 p_rx_low_sens:
-0694 70894c5b jam 0x5b ,0x894c 
-0695 70894d96 jam 0x96 ,0x894d 
-0696 70894e2c jam 0x2c ,0x894e 
-0697 70894f46 jam 0x46 ,0x894f 
-0698 20600000 rtn 
+06b5 70894c5b jam 0x5b ,0x894c 
+06b6 70894d96 jam 0x96 ,0x894d 
+06b7 70894e2c jam 0x2c ,0x894e 
+06b8 70894f46 jam 0x46 ,0x894f 
+06b9 20600000 rtn 
 
 p_rx_high_sens:
-0699 70894cfb jam 0xfb ,0x894c 
-069a 70894def jam 0xef ,0x894d 
-069b 70894eec jam 0xec ,0x894e 
-069c 70894f5e jam 0x5e ,0x894f 
-069d 20600000 rtn 
+06ba 70894cfb jam 0xfb ,0x894c 
+06bb 70894def jam 0xef ,0x894d 
+06bc 70894eec jam 0xec ,0x894e 
+06bd 70894f5e jam 0x5e ,0x894f 
+06be 20600000 rtn 
 
 p_set_tx_power_pair:
-069e 708956c2 jam 0xc2 ,0x8956 
-069f 708955d0 jam 0xd0 ,0x8955 
-06a0 20600000 rtn 
+06bf 708956c2 jam 0xc2 ,0x8956 
+06c0 708955d0 jam 0xd0 ,0x8955 
+06c1 20600000 rtn 
 
 p_shutdown_radio:
-06a1 18002a08 force 8 ,radio_ctrl 
-06a2 202028fa branch shutdown_radio + 1 
+06c2 18002a08 force 8 ,radio_ctrl 
+06c3 202028fa branch shutdown_radio + 1 
 
 p_drawing_optima:
-06a3 6802469b fetch 4 ,mem_mouse_x 
-06a4 207a0000 rtn blank 
-06a5 204006f6 call p_data_abs_check 
-06a6 5800000c setarg 0x0c 
-06a7 204006e9 call p_data_greater_than_check 
-06a8 58000006 setarg 0x06 
-06a9 204006ef call p_data_less_than_check 
-06aa 6800cb19 fetch 1 ,mem_mouse_asm_flag 
-06ab c00086af beq 1 ,p_drawing_optima_modify 
+06c4 6802469b fetch 4 ,mem_mouse_x 
+06c5 207a0000 rtn blank 
+06c6 20400717 call p_data_abs_check 
+06c7 5800000c setarg 0x0c 
+06c8 2040070a call p_data_greater_than_check 
+06c9 58000006 setarg 0x06 
+06ca 20400710 call p_data_less_than_check 
+06cb 6800cb19 fetch 1 ,mem_mouse_asm_flag 
+06cc c00086d0 beq 1 ,p_drawing_optima_modify 
 
 p_drawing_optima_init:
-06ac df200005 arg 5 ,loopcnt 
-06ad d8a04b19 arg mem_mouse_asm_flag ,contw 
-06ae 20207ed4 branch clear_mem 
+06cd df200005 arg 5 ,loopcnt 
+06ce d8a04b19 arg mem_mouse_asm_flag ,contw 
+06cf 20207ed4 branch clear_mem 
 
 p_drawing_optima_modify:
-06af 68014b1a fetch 2 ,mem_mouse_x_pre 
-06b0 600111be store 2 ,mem_data_pre 
-06b1 6801469b fetch 2 ,mem_mouse_x 
-06b2 600111c0 store 2 ,mem_data_current 
-06b3 204006c2 call p_drawing_optima_data 
-06b4 680111be fetch 2 ,mem_data_pre 
-06b5 60014b1a store 2 ,mem_mouse_x_pre 
-06b6 680111c0 fetch 2 ,mem_data_current 
-06b7 6001469b store 2 ,mem_mouse_x 
-06b8 68014b1c fetch 2 ,mem_mouse_y_pre 
-06b9 600111be store 2 ,mem_data_pre 
-06ba 6801469d fetch 2 ,mem_mouse_y 
-06bb 600111c0 store 2 ,mem_data_current 
-06bc 204006c2 call p_drawing_optima_data 
-06bd 680111be fetch 2 ,mem_data_pre 
-06be 60014b1c store 2 ,mem_mouse_y_pre 
-06bf 680111c0 fetch 2 ,mem_data_current 
-06c0 6001469d store 2 ,mem_mouse_y 
-06c1 20600000 rtn 
+06d0 68014b1a fetch 2 ,mem_mouse_x_pre 
+06d1 600111be store 2 ,mem_data_pre 
+06d2 6801469b fetch 2 ,mem_mouse_x 
+06d3 600111c0 store 2 ,mem_data_current 
+06d4 204006e3 call p_drawing_optima_data 
+06d5 680111be fetch 2 ,mem_data_pre 
+06d6 60014b1a store 2 ,mem_mouse_x_pre 
+06d7 680111c0 fetch 2 ,mem_data_current 
+06d8 6001469b store 2 ,mem_mouse_x 
+06d9 68014b1c fetch 2 ,mem_mouse_y_pre 
+06da 600111be store 2 ,mem_data_pre 
+06db 6801469d fetch 2 ,mem_mouse_y 
+06dc 600111c0 store 2 ,mem_data_current 
+06dd 204006e3 call p_drawing_optima_data 
+06de 680111be fetch 2 ,mem_data_pre 
+06df 60014b1c store 2 ,mem_mouse_y_pre 
+06e0 680111c0 fetch 2 ,mem_data_current 
+06e1 6001469d store 2 ,mem_mouse_y 
+06e2 20600000 rtn 
 
 p_drawing_optima_data:
-06c2 680111be fetch 2 ,mem_data_pre 
-06c3 680911c0 fetcht 2 ,mem_data_current 
-06c4 9840fe00 iadd temp ,pdata 
-06c5 600191c2 store 3 ,mem_data_sum 
-06c6 2feffe10 isolate1 16 ,pdata 
-06c7 202086cf branch p_data_sum_overflow ,true 
-06c8 680091c3 fetch 1 ,mem_data_sum + 1 
-06c9 c07f86d6 beq 0xff ,p_data_sum_n 
-06ca 680091c2 fetch 1 ,mem_data_sum 
+06e3 680111be fetch 2 ,mem_data_pre 
+06e4 680911c0 fetcht 2 ,mem_data_current 
+06e5 9840fe00 iadd temp ,pdata 
+06e6 600191c2 store 3 ,mem_data_sum 
+06e7 2feffe10 isolate1 16 ,pdata 
+06e8 202086f0 branch p_data_sum_overflow ,true 
+06e9 680091c3 fetch 1 ,mem_data_sum + 1 
+06ea c07f86f7 beq 0xff ,p_data_sum_n 
+06eb 680091c2 fetch 1 ,mem_data_sum 
 
 p_data_store_pre:
-06cb 1fe37e00 rshift pdata ,pdata 
-06cc 600111be store 2 ,mem_data_pre 
-06cd 600111c0 store 2 ,mem_data_current 
-06ce 20600000 rtn 
+06ec 1fe37e00 rshift pdata ,pdata 
+06ed 600111be store 2 ,mem_data_pre 
+06ee 600111c0 store 2 ,mem_data_current 
+06ef 20600000 rtn 
 
 p_data_sum_overflow:
-06cf 680091c3 fetch 1 ,mem_data_sum + 1 
-06d0 c00006d3 beq 0 ,p_data_sum_overflow_p 
-06d1 680191c2 fetch 3 ,mem_data_sum 
-06d2 202006cb branch p_data_store_pre 
+06f0 680091c3 fetch 1 ,mem_data_sum + 1 
+06f1 c00006f4 beq 0 ,p_data_sum_overflow_p 
+06f2 680191c2 fetch 3 ,mem_data_sum 
+06f3 202006ec branch p_data_store_pre 
 
 p_data_sum_overflow_p:
-06d3 7011c400 jam 0 ,mem_data_sum + 2 
-06d4 680091c2 fetch 1 ,mem_data_sum 
-06d5 202006cb branch p_data_store_pre 
+06f4 7011c400 jam 0 ,mem_data_sum + 2 
+06f5 680091c2 fetch 1 ,mem_data_sum 
+06f6 202006ec branch p_data_store_pre 
 
 p_data_sum_n:
-06d6 680091c2 fetch 1 ,mem_data_sum 
-06d7 204006e1 call p_pdata_get_half 
-06d8 600091be store 1 ,mem_data_pre 
-06d9 600091c0 store 1 ,mem_data_current 
-06da 203a06df branch p_data_zero ,blank 
-06db 580000ff setarg 0xff 
+06f7 680091c2 fetch 1 ,mem_data_sum 
+06f8 20400702 call p_pdata_get_half 
+06f9 600091be store 1 ,mem_data_pre 
+06fa 600091c0 store 1 ,mem_data_current 
+06fb 203a0700 branch p_data_zero ,blank 
+06fc 580000ff setarg 0xff 
 
 p_data_set_direction:
-06dc 600091bf store 1 ,mem_data_pre + 1 
-06dd 600091c1 store 1 ,mem_data_current + 1 
-06de 20600000 rtn 
+06fd 600091bf store 1 ,mem_data_pre + 1 
+06fe 600091c1 store 1 ,mem_data_current + 1 
+06ff 20600000 rtn 
 
 p_data_zero:
-06df 58000000 setarg 0 
-06e0 202006dc branch p_data_set_direction 
+0700 58000000 setarg 0 
+0701 202006fd branch p_data_set_direction 
 
 p_pdata_get_half:
-06e1 1fe67e00 sub pdata ,0 ,pdata 
-06e2 60008aae store 1 ,mem_rega 
-06e3 68008aae fetch 1 ,mem_rega 
-06e4 1fe37e00 rshift pdata ,pdata 
-06e5 60008aae store 1 ,mem_rega 
-06e6 68008aae fetch 1 ,mem_rega 
-06e7 1fe67e00 sub pdata ,0 ,pdata 
-06e8 20600000 rtn 
+0702 1fe67e00 sub pdata ,0 ,pdata 
+0703 60008aae store 1 ,mem_rega 
+0704 68008aae fetch 1 ,mem_rega 
+0705 1fe37e00 rshift pdata ,pdata 
+0706 60008aae store 1 ,mem_rega 
+0707 68008aae fetch 1 ,mem_rega 
+0708 1fe67e00 sub pdata ,0 ,pdata 
+0709 20600000 rtn 
 
 p_data_greater_than_check:
-06e9 9a267c00 isub rega ,null 
-06ea 242106f4 nbranch p_enable_asm ,positive 
-06eb 9a467c00 isub regb ,null 
-06ec 242106f4 nbranch p_enable_asm ,positive 
+070a 9a267c00 isub rega ,null 
+070b 24210715 nbranch p_enable_asm ,positive 
+070c 9a467c00 isub regb ,null 
+070d 24210715 nbranch p_enable_asm ,positive 
 
 p_disable_asm:
-06ed 704b1900 jam 0 ,mem_mouse_asm_flag 
-06ee 20600000 rtn 
+070e 704b1900 jam 0 ,mem_mouse_asm_flag 
+070f 20600000 rtn 
 
 p_data_less_than_check:
-06ef 9a267c00 isub rega ,null 
-06f0 24610000 nrtn positive 
-06f1 9a467c00 isub regb ,null 
-06f2 24610000 nrtn positive 
-06f3 202006ed branch p_disable_asm 
+0710 9a267c00 isub rega ,null 
+0711 24610000 nrtn positive 
+0712 9a467c00 isub regb ,null 
+0713 24610000 nrtn positive 
+0714 2020070e branch p_disable_asm 
 
 p_enable_asm:
-06f4 704b1901 jam 1 ,mem_mouse_asm_flag 
-06f5 20600000 rtn 
+0715 704b1901 jam 1 ,mem_mouse_asm_flag 
+0716 20600000 rtn 
 
 p_data_abs_check:
-06f6 6801469b fetch 2 ,mem_mouse_x 
-06f7 600111c0 store 2 ,mem_data_current 
-06f8 204006ff call p_data_abs 
-06f9 1fe22200 copy pdata ,rega 
-06fa 6801469d fetch 2 ,mem_mouse_y 
-06fb 600111c0 store 2 ,mem_data_current 
-06fc 204006ff call p_data_abs 
-06fd 1fe22400 copy pdata ,regb 
-06fe 20600000 rtn 
+0717 6801469b fetch 2 ,mem_mouse_x 
+0718 600111c0 store 2 ,mem_data_current 
+0719 20400720 call p_data_abs 
+071a 1fe22200 copy pdata ,rega 
+071b 6801469d fetch 2 ,mem_mouse_y 
+071c 600111c0 store 2 ,mem_data_current 
+071d 20400720 call p_data_abs 
+071e 1fe22400 copy pdata ,regb 
+071f 20600000 rtn 
 
 p_data_abs:
-06ff 680091c1 fetch 1 ,mem_data_current + 1 
-0700 c07f8704 beq 0xff ,p_data_reversal 
-0701 680091c0 fetch 1 ,mem_data_current 
+0720 680091c1 fetch 1 ,mem_data_current + 1 
+0721 c07f8725 beq 0xff ,p_data_reversal 
+0722 680091c0 fetch 1 ,mem_data_current 
 
 p_data_abs_store:
-0702 1fe17eff and_into 0xff ,pdata 
-0703 20600000 rtn 
+0723 1fe17eff and_into 0xff ,pdata 
+0724 20600000 rtn 
 
 p_data_reversal:
-0704 680111c0 fetch 2 ,mem_data_current 
-0705 1fe67e00 sub pdata ,0 ,pdata 
-0706 20200702 branch p_data_abs_store 
+0725 680111c0 fetch 2 ,mem_data_current 
+0726 1fe67e00 sub pdata ,0 ,pdata 
+0727 20200723 branch p_data_abs_store 
 org 0x2000
 
 start:
Index: output/ramcode.rom
===================================================================
--- /branch/mouse_project/YFK/OnlyBLE/output/ramcode.rom	(revision 1520)
+++ /branch/mouse_project/YFK/OnlyBLE/output/ramcode.rom	(working copy)
@@ -1,7 +1,7 @@
 c284000f
 c0008026
-c04286a1
-c0448672
+c04286c2
+c0448693
 c050802f
 c0588034
 c0620253
@@ -21,10 +21,10 @@
 c031859a
 c03305c4
 c03385db
-c0350607
-c03b8612
-c07d0622
-c046062b
+c0350628
+c03b8633
+c07d0643
+c046064c
 20202a8e
 1fe22200
 6808cc89
@@ -90,7 +90,7 @@
 6000cbcf
 6000cb8a
 20600000
-2040063e
+2040065f
 6800cd05
 c0008061
 c0010065
@@ -117,7 +117,7 @@
 20400160
 704c1302
 202000c3
-2040063e
+2040065f
 704d0100
 20200053
 704d0602
@@ -204,7 +204,7 @@
 243780ec
 204000da
 20400107
-2040063a
+2040065b
 704b3f00
 6800cbcd
 1fe0fe01
@@ -219,7 +219,7 @@
 df200004
 d8a04b6a
 20207ec6
-20400637
+20400658
 2020012d
 7857fc00
 204001fa
@@ -598,7 +598,7 @@
 20400363
 6800c1de
 6000cc85
-20400637
+20400658
 6800c685
 6000c6da
 204043ca
@@ -609,7 +609,7 @@
 245582cd
 20400291
 20758000
-204006ac
+204006cd
 20400312
 20400304
 2040026c
@@ -749,9 +749,9 @@
 da400064
 202065d1
 70421034
-58000000
-1fe47e00
-600344a0
+580f0f0f
+6001c4a0
+6001c4a3
 20600000
 204033c4
 202282ff
@@ -788,7 +788,7 @@
 60014cff
 5800033a
 600141ef
-5800061c
+5800063d
 600141f9
 58000249
 600141ed
@@ -1272,8 +1272,8 @@
 20404079
 2040407e
 20400510
-243406ac
-204006a3
+243406cd
+204006c4
 20203fa0
 6800c6e0
 c0038502
@@ -1392,7 +1392,7 @@
 c0065395
 204055aa
 2040561e
-20400648
+20400669
 2020538f
 68008016
 1fe0fe01
@@ -1434,7 +1434,7 @@
 20207fe9
 68008456
 c28285ae
-2040063a
+2040065b
 6800c78e
 243a05a4
 6800843f
@@ -1466,7 +1466,7 @@
 6000c3dc
 20405650
 20600000
-2020063e
+2020065f
 6800c79f
 207a0000
 6800c6c5
@@ -1499,7 +1499,7 @@
 20205c8a
 e8c10000
 c00205df
-c00305fc
+c003061d
 20205698
 20407ea5
 204005bd
@@ -1509,7 +1509,7 @@
 c00805ee
 1fec8400
 18467c24
-202158ad
+202105fc
 d84047c6
 600944bc
 204058ad
@@ -1530,9 +1530,42 @@
 5800002b
 e0c10000
 20600000
+c00505fe
+202058ad
+68090478
+6800c4e9
+c2818616
+2040576a
+203a5a76
+18c08dfe
+e8c10000
+d8402a50
+98467c00
+2022860c
+68010478
+c009da76
+68090478
+202059bf
+20407ea5
+6800cb32
+1fe0a201
+20405a82
+5800000b
+e0a08000
+6800cb32
+1fe27200
+d8c04b33
+20207f01
+680144fa
+98467c00
+24228601
+20405a42
+24340601
+70047a05
+20205a77
 e8c08000
-c0008600
-c0028602
+c0008621
+c0028623
 20205af6
 704b4101
 20205b09
@@ -1543,7 +1576,7 @@
 20205c8e
 68008016
 c093d6f2
-2040060d
+2040062e
 d8e00000
 68014482
 20207f08
@@ -1553,7 +1586,7 @@
 1fe0fefa
 20203cbe
 7855fc00
-20370615
+20370636
 2436d806
 20402bcb
 680140c1
@@ -1572,7 +1605,7 @@
 243a7ddb
 68008a99
 c584fdd6
-c0090628
+c0090649
 20207dca
 20405890
 247a0000
@@ -1598,7 +1631,7 @@
 20600000
 6800cd07
 1fe67c02
-24410646
+24410667
 6800cd07
 c1000000
 1fe0ffff
@@ -1612,38 +1645,38 @@
 20400238
 6008cd08
 58000082
-c5130650
+c5130671
 58000080
 98467c00
-24210668
+24210689
 6800cd07
 1fe67c02
-24210658
+24210679
 6800cd07
-c0000669
+c000068a
 20600000
 6800cd07
 c1900000
 704d0700
 6808cd08
 58000077
-c513065f
+c5130680
 58000075
 98467c00
 24610000
 6800cd0a
-c0000670
+c0000691
 1fe0ffff
 6000cd0a
-c0000670
+c0000691
 7041de00
 20600000
 704d0700
 6800cd0a
-c001066e
+c001068f
 1fe0fe01
 6000cd0a
-c0008666
+c0008687
 7041de02
 20600000
 7041de04
@@ -1664,20 +1697,20 @@
 2000000a
 7089027d
 6800c1de
-c001068a
-c002068f
-c010069e
-20400694
+c00106ab
+c00206b0
+c01006bf
+204006b5
 708955d0
 708956e0
 7089586c
 2020294b
-20400699
+204006ba
 708955d0
 708956e0
 7089583c
 20202953
-20400694
+204006b5
 708955d0
 708956c0
 7089586c
@@ -1699,13 +1732,13 @@
 202028fa
 6802469b
 207a0000
-204006f6
+20400717
 5800000c
-204006e9
+2040070a
 58000006
-204006ef
+20400710
 6800cb19
-c00086af
+c00086d0
 df200005
 d8a04b19
 20207ed4
@@ -1713,7 +1746,7 @@
 600111be
 6801469b
 600111c0
-204006c2
+204006e3
 680111be
 60014b1a
 680111c0
@@ -1722,7 +1755,7 @@
 600111be
 6801469d
 600111c0
-204006c2
+204006e3
 680111be
 60014b1c
 680111c0
@@ -1733,32 +1766,32 @@
 9840fe00
 600191c2
 2feffe10
-202086cf
+202086f0
 680091c3
-c07f86d6
+c07f86f7
 680091c2
 1fe37e00
 600111be
 600111c0
 20600000
 680091c3
-c00006d3
+c00006f4
 680191c2
-202006cb
+202006ec
 7011c400
 680091c2
-202006cb
+202006ec
 680091c2
-204006e1
+20400702
 600091be
 600091c0
-203a06df
+203a0700
 580000ff
 600091bf
 600091c1
 20600000
 58000000
-202006dc
+202006fd
 1fe67e00
 60008aae
 68008aae
@@ -1768,32 +1801,32 @@
 1fe67e00
 20600000
 9a267c00
-242106f4
+24210715
 9a467c00
-242106f4
+24210715
 704b1900
 20600000
 9a267c00
 24610000
 9a467c00
 24610000
-202006ed
+2020070e
 704b1901
 20600000
 6801469b
 600111c0
-204006ff
+20400720
 1fe22200
 6801469d
 600111c0
-204006ff
+20400720
 1fe22400
 20600000
 680091c1
-c07f8704
+c07f8725
 680091c0
 1fe17eff
 20600000
 680111c0
 1fe67e00
-20200702
+20200723
Index: program/patch.prog
===================================================================
--- /branch/mouse_project/YFK/OnlyBLE/program/patch.prog	(revision 1520)
+++ /branch/mouse_project/YFK/OnlyBLE/program/patch.prog	(working copy)
@@ -1419,9 +1419,9 @@
 	branch iicd_write_protect_eep_data
 p_mouse_fast_conn_init:
 	jam 0x34,mem_xrecord_mode
-	setarg 0
-	invert pdata,pdata
-	store 6,mem_le_lap
+	setarg 0x0f0f0f
+	store 3,mem_le_lap
+	store 3,mem_le_lap+3
 	rtn	
 
 endif
@@ -2930,8 +2930,8 @@
 //	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
 	rshift8 pdata,temp
 	sub temp,0x24,null
-//	branch p_le_parse_att1,positive
-	branch le_parse_att+2,positive
+	branch p_le_parse_att1,positive
+//	branch le_parse_att+2,positive
 	arg mem_mouse_le_uuid_sup,temp
 	storet 2,mem_ui_le_uuid_table
 	call le_parse_att+2
@@ -2955,48 +2955,48 @@
 	istore 2,contr
 	rtn
 
-//p_le_parse_att1:
-//	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
-//	branch le_parse_att+2
-//p_le_parse_att_read_request:
-//	fetcht 2,mem_le_att_handle
-//	fetch 1,mem_le_configuration
-//	bbit1 BIT_BLE_READ_AUTH,p_le_send_att_read_response_check_auth
-//p_le_send_att_read_response:
-//	call le_att_get_handle_ptr
-//	branch le_send_att_error_response_notfound,blank
-//	increase -2,contr
-//	ifetch 2,contr
-//	arg UUID_CHRCTR_PNP_ID,temp
-//	isub temp,null
-//	branch p_le_send_att_pnp_id,zero	//modify VID/PID
-//	
-//	fetch 2,mem_le_att_handle
-//	beq 0x13,le_send_att_error_response_notfound	//delete battery
-
-//	fetcht 2,mem_le_att_handle
-//	branch le_send_att_read_response
-//p_le_send_att_pnp_id:
-//	call store_contr
-//	fetch 1,mem_le_att_pnp_id_len
-//	add pdata,1,rega
-//	call le_fifo_malloc_tx_l2cap_gatt
-//	setarg ATTOP_READ_RESPONSE
-//	istore 1,contw
-//	fetch 1,mem_le_att_pnp_id_len
-//	copy pdata,loopcnt
-//	arg mem_le_att_pnp_id,contr
-//	branch memcpy
+p_le_parse_att1:
+	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
+	branch le_parse_att+2
+p_le_parse_att_read_request:
+	fetcht 2,mem_le_att_handle
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_READ_AUTH,p_le_send_att_read_response_check_auth
+p_le_send_att_read_response:
+	call le_att_get_handle_ptr
+	branch le_send_att_error_response_notfound,blank
+	increase -2,contr
+	ifetch 2,contr
+	arg UUID_CHRCTR_PNP_ID,temp
+	isub temp,null
+	branch p_le_send_att_pnp_id,zero	//modify VID/PID
+	
+	fetch 2,mem_le_att_handle
+	beq 0x13,le_send_att_error_response_notfound	//delete battery
 
-//p_le_send_att_read_response_check_auth:
-//	fetch 2,mem_le_pairing_handle
-//	isub temp,null
-//	nbranch p_le_send_att_read_response,zero
-//p_le_send_att_read_response_error_insufficient_auth:
-//	call le_check_encrypt_state
-//	nbranch p_le_send_att_read_response,user
-//	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
-//	branch le_send_att_error_response
+	fetcht 2,mem_le_att_handle
+	branch le_send_att_read_response
+p_le_send_att_pnp_id:
+	call store_contr
+	fetch 1,mem_le_att_pnp_id_len
+	add pdata,1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_att_pnp_id_len
+	copy pdata,loopcnt
+	arg mem_le_att_pnp_id,contr
+	branch memcpy
+
+p_le_send_att_read_response_check_auth:
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch p_le_send_att_read_response,zero
+p_le_send_att_read_response_error_insufficient_auth:
+	call le_check_encrypt_state
+	nbranch p_le_send_att_read_response,user
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
 
 p_le_parse_smp:
 	ifetch 1,contr
