Hex Artifact Content
Not logged in

Artifact a2f7fb44570dfd286a245861be2e6f291a29f4fa:

Wiki page [snap7] by chw 2019-04-26 06:38:33.
0000: 44 20 32 30 31 39 2d 30 34 2d 32 36 54 30 36 3a  D 2019-04-26T06:
0010: 33 38 3a 33 33 2e 30 30 33 0a 4c 20 73 6e 61 70  38:33.003.L snap
0020: 37 0a 50 20 31 63 36 66 65 62 39 33 35 37 61 35  7.P 1c6feb9357a5
0030: 37 62 34 38 33 30 36 39 38 61 66 61 62 32 35 63  7b4830698afab25c
0040: 39 38 32 65 39 39 65 39 39 31 62 62 0a 55 20 63  982e99e991bb.U c
0050: 68 77 0a 57 20 33 37 32 32 0a 3c 68 32 3e 73 6e  hw.W 3722.<h2>sn
0060: 61 70 37 20 63 6f 6d 6d 61 6e 64 3c 2f 68 32 3e  ap7 command</h2>
0070: 0d 0a 0d 0a 3c 68 33 3e 4e 61 6d 65 3c 2f 68 33  ....<h3>Name</h3
0080: 3e 0d 0a 0d 0a 3c 62 3e 73 6e 61 70 37 3c 2f 62  >....<b>snap7</b
0090: 3e 20 2d 20 54 63 6c 20 69 6e 74 65 72 66 61 63  > - Tcl interfac
00a0: 65 20 74 6f 20 74 68 65 20 53 6e 61 70 37 20 6c  e to the Snap7 l
00b0: 69 62 72 61 72 79 0d 0a 0d 0a 3c 68 33 3e 53 79  ibrary....<h3>Sy
00c0: 6e 6f 70 73 69 73 3c 2f 68 33 3e 0d 0a 0d 0a 3c  nopsis</h3>....<
00d0: 74 74 3e 70 61 63 6b 61 67 65 20 72 65 71 75 69  tt>package requi
00e0: 72 65 20 54 63 6c 20 38 2e 36 3c 2f 74 74 3e 3c  re Tcl 8.6</tt><
00f0: 62 72 3e 0d 0a 3c 74 74 3e 70 61 63 6b 61 67 65  br>..<tt>package
0100: 20 72 65 71 75 69 72 65 20 73 6e 61 70 37 3c 2f   require snap7</
0110: 74 74 3e 3c 62 72 3e 0d 0a 3c 74 74 3e 73 6e 61  tt><br>..<tt>sna
0120: 70 37 3a 3a 6e 65 77 20 3c 69 3e 63 6d 64 3c 2f  p7::new <i>cmd</
0130: 69 3e 3c 2f 74 74 3e 3c 62 72 3e 0d 0a 3c 74 74  i></tt><br>..<tt
0140: 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 20 64 65 73 74  ><i>cmd</i> dest
0150: 72 6f 79 3c 2f 74 74 3e 3c 62 72 3e 0d 0a 3c 74  roy</tt><br>..<t
0160: 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 20 63 6f 6e  t><i>cmd</i> con
0170: 6e 65 63 74 20 3c 69 3e 61 64 64 72 20 70 6f 72  nect <i>addr por
0180: 74 20 72 61 63 6b 20 73 6c 6f 74 3c 2f 69 3e 3c  t rack slot</i><
0190: 2f 74 74 3e 3c 62 72 3e 0d 0a 3c 74 74 3e 3c 69  /tt><br>..<tt><i
01a0: 3e 63 6d 64 3c 2f 69 3e 20 64 69 73 63 6f 6e 6e  >cmd</i> disconn
01b0: 65 63 74 3c 2f 74 74 3e 3c 62 72 3e 0d 0a 3c 74  ect</tt><br>..<t
01c0: 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 20 63 6f 6e  t><i>cmd</i> con
01d0: 6e 74 79 70 65 20 3c 69 3e 74 79 70 65 3c 2f 69  ntype <i>type</i
01e0: 3e 3c 2f 74 74 3e 3c 62 72 3e 0d 0a 3c 74 74 3e  ></tt><br>..<tt>
01f0: 3c 69 3e 63 6d 64 3c 2f 69 3e 20 70 61 72 61 6d  <i>cmd</i> param
0200: 20 3c 69 3e 3f 6e 61 6d 65 3f 20 3f 76 61 6c 75   <i>?name? ?valu
0210: 65 3f 3c 2f 69 3e 3c 2f 74 74 3e 3c 62 72 3e 0d  e?</i></tt><br>.
0220: 0a 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 20  .<tt><i>cmd</i> 
0230: 69 73 63 6f 6e 6e 65 63 74 65 64 3c 2f 74 74 3e  isconnected</tt>
0240: 3c 62 72 3e 0d 0a 3c 74 74 3e 3c 69 3e 63 6d 64  <br>..<tt><i>cmd
0250: 3c 2f 69 3e 20 70 64 75 6c 65 6e 67 74 68 3c 2f  </i> pdulength</
0260: 74 74 3e 3c 62 72 3e 0d 0a 3c 74 74 3e 3c 69 3e  tt><br>..<tt><i>
0270: 63 6d 64 3c 2f 69 3e 20 64 62 72 65 61 64 20 3c  cmd</i> dbread <
0280: 69 3e 64 62 20 73 74 61 72 74 20 63 6f 75 6e 74  i>db start count
0290: 3c 2f 69 3e 3c 2f 74 74 3e 3c 62 72 3e 0d 0a 3c  </i></tt><br>..<
02a0: 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 20 64 62  tt><i>cmd</i> db
02b0: 72 65 61 64 61 20 3c 69 3e 64 62 20 73 74 61 72  reada <i>db star
02c0: 74 20 63 6f 75 6e 74 3c 2f 69 3e 3c 2f 74 74 3e  t count</i></tt>
02d0: 3c 62 72 3e 0d 0a 3c 74 74 3e 3c 69 3e 63 6d 64  <br>..<tt><i>cmd
02e0: 3c 2f 69 3e 20 64 62 77 72 69 74 65 20 3c 69 3e  </i> dbwrite <i>
02f0: 64 62 20 73 74 61 72 74 20 64 61 74 61 20 2e 2e  db start data ..
0300: 2e 3c 2f 69 3e 3c 2f 74 74 3e 3c 62 72 3e 0d 0a  .</i></tt><br>..
0310: 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 20 64  <tt><i>cmd</i> d
0320: 62 77 72 69 74 65 61 20 3c 69 3e 64 62 20 73 74  bwritea <i>db st
0330: 61 72 74 20 62 79 74 65 73 3c 2f 69 3e 3c 2f 74  art bytes</i></t
0340: 74 3e 3c 62 72 3e 0d 0a 0d 0a 3c 68 33 3e 44 65  t><br>....<h3>De
0350: 73 63 72 69 70 74 69 6f 6e 3c 2f 68 33 3e 0d 0a  scription</h3>..
0360: 0d 0a 54 68 69 73 20 20 70 61 63 6b 61 67 65 20  ..This  package 
0370: 70 72 6f 76 69 64 65 73 20 61 20 54 63 6c 20 69  provides a Tcl i
0380: 6e 74 65 72 66 61 63 65 20 74 6f 20 74 68 65 20  nterface to the 
0390: 53 6e 61 70 37 20 6c 69 62 72 61 72 79 20 28 73  Snap7 library (s
03a0: 65 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70  ee <a href="http
03b0: 3a 2f 2f 73 6e 61 70 37 2e 73 6f 75 72 63 65 66  ://snap7.sourcef
03c0: 6f 72 67 65 2e 6e 65 74 2f 22 3e 68 74 74 70 3a  orge.net/">http:
03d0: 2f 2f 73 6e 61 70 37 2e 73 6f 75 72 63 65 66 6f  //snap7.sourcefo
03e0: 72 67 65 2e 6e 65 74 2f 3c 2f 61 3e 29 20 75 73  rge.net/</a>) us
03f0: 69 6e 67 20 46 66 69 64 6c 20 61 6e 64 20 54 63  ing Ffidl and Tc
0400: 6c 4f 4f 2e 0d 0a 0d 0a 3c 68 33 3e 43 6f 6d 6d  lOO.....<h3>Comm
0410: 61 6e 64 73 3c 2f 68 33 3e 0d 0a 0d 0a 3c 74 74  ands</h3>....<tt
0420: 3e 73 6e 61 70 37 3a 3a 6e 65 77 20 3c 69 3e 63  >snap7::new <i>c
0430: 6d 64 3c 2f 69 3e 3c 2f 74 74 3e 0d 0a 0d 0a 20  md</i></tt>.... 
0440: 20 20 20 43 72 65 61 74 65 73 20 61 20 6e 65 77     Creates a new
0450: 20 63 6f 6d 6d 61 6e 64 20 3c 74 74 3e 3c 69 3e   command <tt><i>
0460: 63 6d 64 3c 2f 69 3e 3c 2f 74 74 3e 20 77 68 69  cmd</i></tt> whi
0470: 63 68 20 69 6d 70 6c 65 6d 65 6e 74 73 20 61 20  ch implements a 
0480: 53 6e 61 70 37 20 63 6f 6e 6e 65 63 74 69 6f 6e  Snap7 connection
0490: 20 6f 62 6a 65 63 74 2e 20 46 75 72 74 68 65 72   object. Further
04a0: 20 6f 70 65 72 61 74 69 6f 6e 73 20 6f 6e 20 20   operations on  
04b0: 74 68 61 74 20 6f 62 6a 65 63 74 20 61 72 65 20  that object are 
04c0: 63 61 72 72 69 65 64 20 6f 75 74 20 62 79 20 69  carried out by i
04d0: 6e 76 6f 6b 69 6e 67 20 6d 65 74 68 6f 64 73 20  nvoking methods 
04e0: 6f 6e 20 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69  on <tt><i>cmd</i
04f0: 3e 3c 2f 74 74 3e 2e 0d 0a 0d 0a 3c 74 74 3e 3c  ></tt>.....<tt><
0500: 69 3e 63 6d 64 3c 2f 69 3e 20 64 65 73 74 72 6f  i>cmd</i> destro
0510: 79 3c 2f 74 74 3e 0d 0a 0d 0a 20 20 20 20 44 65  y</tt>....    De
0520: 73 74 72 6f 79 73 20 74 68 65 20 63 6f 6e 6e 65  stroys the conne
0530: 63 74 69 6f 6e 20 6f 62 6a 65 63 74 20 3c 74 74  ction object <tt
0540: 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 3c 2f 74 74 3e  ><i>cmd</i></tt>
0550: 2c 20 72 65 6c 65 61 73 65 73 20 72 65 73 6f 75  , releases resou
0560: 72 63 65 73 20 61 6e 64 20 63 6c 6f 73 65 73 20  rces and closes 
0570: 63 6f 6d 6d 75 6e 69 63 61 74 69 6f 6e 73 20 6c  communications l
0580: 69 6e 6b 73 2e 0d 0a 0d 0a 3c 74 74 3e 3c 69 3e  inks.....<tt><i>
0590: 63 6d 64 3c 2f 69 3e 20 63 6f 6e 6e 65 63 74 20  cmd</i> connect 
05a0: 3c 69 3e 61 64 64 72 20 70 6f 72 74 20 72 61 63  <i>addr port rac
05b0: 6b 20 73 6c 6f 74 3c 2f 69 3e 3c 2f 74 74 3e 0d  k slot</i></tt>.
05c0: 0a 0d 0a 20 20 20 20 43 6f 6e 6e 65 63 74 73 20  ...    Connects 
05d0: 74 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 6f  the connection o
05e0: 62 6a 65 63 74 20 3c 74 74 3e 3c 69 3e 63 6d 64  bject <tt><i>cmd
05f0: 3c 2f 69 3e 3c 2f 74 74 3e 20 74 6f 20 69 74 73  </i></tt> to its
0600: 20 70 65 65 72 20 75 73 69 6e 67 20 74 68 65 20   peer using the 
0610: 49 50 20 61 64 64 72 65 73 73 20 3c 74 74 3e 3c  IP address <tt><
0620: 69 3e 61 64 64 72 3c 2f 69 3e 3c 2f 74 74 3e 2c  i>addr</i></tt>,
0630: 20 74 68 65 20 54 43 50 20 70 6f 72 74 20 6e 75   the TCP port nu
0640: 6d 62 65 72 20 3c 74 74 3e 3c 69 3e 70 6f 72 74  mber <tt><i>port
0650: 3c 2f 69 3e 3c 2f 74 74 3e 20 61 6e 64 20 66 75  </i></tt> and fu
0660: 72 74 68 65 72 20 61 64 64 72 65 73 73 20 69 6e  rther address in
0670: 66 6f 72 6d 61 74 69 6f 6e 20 28 3c 74 74 3e 3c  formation (<tt><
0680: 69 3e 72 61 63 6b 3c 2f 69 3e 3c 2f 74 74 3e 20  i>rack</i></tt> 
0690: 61 6e 64 20 3c 74 74 3e 3c 69 3e 73 6c 6f 74 3c  and <tt><i>slot<
06a0: 2f 69 3e 3c 2f 74 74 3e 20 6e 75 6d 62 65 72 73  /i></tt> numbers
06b0: 29 2e 0d 0a 0d 0a 3c 74 74 3e 3c 69 3e 63 6d 64  ).....<tt><i>cmd
06c0: 3c 2f 69 3e 20 64 69 73 63 6f 6e 6e 65 63 74 3c  </i> disconnect<
06d0: 2f 74 74 3e 0d 0a 0d 0a 20 20 20 20 43 6c 6f 73  /tt>....    Clos
06e0: 65 73 20 74 68 65 20 63 6f 6e 6e 65 63 74 69 6f  es the connectio
06f0: 6e 20 6f 66 20 74 68 65 20 63 6f 6e 6e 65 63 74  n of the connect
0700: 69 6f 6e 20 6f 62 6a 65 63 74 20 3c 74 74 3e 3c  ion object <tt><
0710: 69 3e 63 6d 64 3c 2f 69 3e 3c 2f 74 74 3e 2e 0d  i>cmd</i></tt>..
0720: 0a 0d 0a 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69  ...<tt><i>cmd</i
0730: 3e 20 63 6f 6e 6e 74 79 70 65 20 3c 69 3e 74 79  > conntype <i>ty
0740: 70 65 3c 2f 69 3e 3c 2f 74 74 3e 0d 0a 0d 0a 20  pe</i></tt>.... 
0750: 20 20 20 53 65 74 73 20 74 68 65 20 63 6f 6e 6e     Sets the conn
0760: 65 63 74 69 6f 6e 20 74 79 70 65 20 6f 66 20 74  ection type of t
0770: 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 6f 62  he connection ob
0780: 6a 65 63 74 20 3c 74 74 3e 3c 69 3e 63 6d 64 3c  ject <tt><i>cmd<
0790: 2f 74 74 3e 3c 2f 69 3e 2e 20 4d 75 73 74 20 62  /tt></i>. Must b
07a0: 65 20 63 61 6c 6c 65 64 20 62 65 66 6f 72 65 20  e called before 
07b0: 61 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 69 73 20  a connection is 
07c0: 6d 61 64 65 20 75 73 69 6e 67 20 74 68 65 20 3c  made using the <
07d0: 74 74 3e 63 6f 6e 6e 65 63 74 3c 2f 74 74 3e 20  tt>connect</tt> 
07e0: 6d 65 74 68 6f 64 2e 20 56 61 6c 69 64 20 76 61  method. Valid va
07f0: 6c 75 65 73 20 66 6f 72 20 3c 74 74 3e 3c 69 3e  lues for <tt><i>
0800: 74 79 70 65 3c 2f 69 3e 3c 2f 74 74 3e 20 61 72  type</i></tt> ar
0810: 65 20 31 20 28 50 47 29 2c 20 32 20 28 4f 50 29  e 1 (PG), 2 (OP)
0820: 2c 20 61 6e 64 20 33 20 28 62 61 73 69 63 29 2e  , and 3 (basic).
0830: 0d 0a 0d 0a 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f  ....<tt><i>cmd</
0840: 69 3e 20 70 61 72 61 6d 20 3c 69 3e 3f 6e 61 6d  i> param <i>?nam
0850: 65 3f 20 3f 76 61 6c 75 65 3f 3c 2f 69 3e 3c 2f  e? ?value?</i></
0860: 74 74 3e 0d 0a 0d 0a 20 20 20 20 49 66 20 69 6e  tt>....    If in
0870: 76 6f 6b 65 64 20 77 69 74 68 6f 75 74 20 61 72  voked without ar
0880: 67 75 6d 65 6e 74 73 2c 20 72 65 74 75 72 6e 73  guments, returns
0890: 20 61 20 6c 69 73 74 20 6f 66 20 70 61 72 61 6d   a list of param
08a0: 65 74 65 72 20 6e 61 6d 65 73 20 77 68 69 63 68  eter names which
08b0: 20 63 61 6e 20 62 65 20 71 75 65 72 69 65 64 20   can be queried 
08c0: 6f 72 20 73 65 74 20 6f 6e 20 74 68 65 20 63 6f  or set on the co
08d0: 6e 6e 65 63 74 69 6f 6e 20 6f 62 6a 65 63 74 20  nnection object 
08e0: 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 3c 2f  <tt><i>cmd</i></
08f0: 74 74 3e 2e 20 49 66 20 3c 74 74 3e 3c 69 3e 6e  tt>. If <tt><i>n
0900: 61 6d 65 3c 2f 69 3e 3c 2f 74 74 3e 20 69 73 20  ame</i></tt> is 
0910: 70 72 6f 76 69 64 65 64 2c 20 61 20 71 75 65 72  provided, a quer
0920: 79 20 6f 66 20 74 68 69 73 20 6e 61 6d 65 64 20  y of this named 
0930: 70 61 72 61 6d 65 74 65 72 20 69 73 20 70 65 72  parameter is per
0940: 66 6f 72 6d 65 64 2e 20 49 66 20 62 6f 74 68 2c  formed. If both,
0950: 20 3c 74 74 3e 3c 69 3e 6e 61 6d 65 3c 2f 69 3e   <tt><i>name</i>
0960: 3c 2f 74 74 3e 20 61 6e 64 20 3c 74 74 3e 3c 69  </tt> and <tt><i
0970: 3e 76 61 6c 75 65 3c 2f 69 3e 3c 2f 74 74 3e 20  >value</i></tt> 
0980: 61 72 65 20 70 72 6f 76 69 64 65 64 2c 20 74 68  are provided, th
0990: 65 20 6e 61 6d 65 64 20 70 61 72 61 6d 65 74 65  e named paramete
09a0: 72 20 69 73 20 73 65 74 20 74 6f 20 74 68 65 20  r is set to the 
09b0: 76 61 6c 75 65 20 67 69 76 65 6e 2e 0d 0a 0d 0a  value given.....
09c0: 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 20 69  <tt><i>cmd</i> i
09d0: 73 63 6f 6e 6e 65 63 74 65 64 3c 2f 74 74 3e 0d  sconnected</tt>.
09e0: 0a 0d 0a 20 20 20 20 52 65 74 75 72 6e 73 20 74  ...    Returns t
09f0: 72 75 65 20 6f 72 20 66 61 6c 73 65 20 64 65 70  rue or false dep
0a00: 65 6e 64 69 6e 67 20 6f 6e 20 63 6f 6e 6e 65 63  ending on connec
0a10: 74 69 6f 6e 20 73 74 61 74 65 20 6f 66 20 74 68  tion state of th
0a20: 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 6f 62 6a  e connection obj
0a30: 65 63 74 20 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f  ect <tt><i>cmd</
0a40: 69 3e 3c 2f 74 74 3e 2e 0d 0a 0d 0a 3c 74 74 3e  i></tt>.....<tt>
0a50: 3c 69 3e 63 6d 64 3c 2f 69 3e 20 70 64 75 6c 65  <i>cmd</i> pdule
0a60: 6e 67 74 68 3c 2f 69 3e 3c 2f 74 74 3e 0d 0a 0d  ngth</i></tt>...
0a70: 0a 20 20 20 20 52 65 74 75 72 6e 73 20 61 20 74  .    Returns a t
0a80: 77 6f 20 65 6c 65 6d 65 6e 74 20 6c 69 73 74 20  wo element list 
0a90: 6d 61 64 65 20 75 70 20 6f 66 20 72 65 71 75 65  made up of reque
0aa0: 73 74 65 64 20 61 6e 64 20 6e 65 67 6f 74 69 61  sted and negotia
0ab0: 74 65 64 20 50 44 55 20 6c 65 6e 67 74 68 20 6f  ted PDU length o
0ac0: 66 20 74 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e  f the connection
0ad0: 20 6f 62 6a 65 63 74 20 3c 74 74 3e 3c 69 3e 63   object <tt><i>c
0ae0: 6d 64 3c 2f 69 3e 3c 2f 74 74 3e 2e 0d 0a 0d 0a  md</i></tt>.....
0af0: 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 20 64  <tt><i>cmd</i> d
0b00: 62 72 65 61 64 20 3c 69 3e 64 62 20 73 74 61 72  bread <i>db star
0b10: 74 20 63 6f 75 6e 74 3c 2f 69 3e 3c 2f 74 74 3e  t count</i></tt>
0b20: 0d 0a 0d 0a 20 20 20 20 52 65 61 64 73 20 3c 74  ....    Reads <t
0b30: 74 3e 3c 69 3e 63 6f 75 6e 74 3c 2f 69 3e 3c 2f  t><i>count</i></
0b40: 74 74 3e 20 62 79 74 65 73 20 62 65 67 69 6e 6e  tt> bytes beginn
0b50: 69 6e 67 20 61 74 20 3c 74 74 3e 3c 69 3e 73 74  ing at <tt><i>st
0b60: 61 72 74 3c 2f 69 3e 3c 2f 74 74 3e 20 66 72 6f  art</i></tt> fro
0b70: 6d 20 74 68 65 20 64 61 74 61 20 62 6c 6f 63 6b  m the data block
0b80: 20 3c 74 74 3e 3c 69 3e 64 62 3c 2f 69 3e 3c 2f   <tt><i>db</i></
0b90: 74 74 3e 20 75 73 69 6e 67 20 74 68 65 20 63 6f  tt> using the co
0ba0: 6e 6e 65 63 74 69 6f 6e 20 6f 62 6a 65 63 74 20  nnection object 
0bb0: 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 3c 2f  <tt><i>cmd</i></
0bc0: 74 74 3e 2e 20 44 61 74 61 20 69 73 20 72 65 74  tt>. Data is ret
0bd0: 75 72 6e 65 64 20 61 73 20 61 20 6c 69 73 74 20  urned as a list 
0be0: 6f 66 20 69 6e 74 65 67 65 72 20 6e 75 6d 62 65  of integer numbe
0bf0: 72 73 2e 0d 0a 0d 0a 3c 74 74 3e 3c 69 3e 63 6d  rs.....<tt><i>cm
0c00: 64 3c 2f 69 3e 20 64 62 72 65 61 64 61 20 3c 69  d</i> dbreada <i
0c10: 3e 64 62 20 73 74 61 72 74 20 63 6f 75 6e 74 3c  >db start count<
0c20: 2f 69 3e 3c 2f 74 74 3e 0d 0a 0d 0a 20 20 20 20  /i></tt>....    
0c30: 52 65 61 64 73 20 3c 74 74 3e 3c 69 3e 63 6f 75  Reads <tt><i>cou
0c40: 6e 74 3c 2f 69 3e 3c 2f 74 74 3e 20 62 79 74 65  nt</i></tt> byte
0c50: 73 20 62 65 67 69 6e 6e 69 6e 67 20 61 74 20 3c  s beginning at <
0c60: 74 74 3e 3c 69 3e 73 74 61 72 74 3c 2f 69 3e 3c  tt><i>start</i><
0c70: 2f 74 74 3e 20 66 72 6f 6d 20 74 68 65 20 64 61  /tt> from the da
0c80: 74 61 20 62 6c 6f 63 6b 20 3c 74 74 3e 3c 69 3e  ta block <tt><i>
0c90: 64 62 3c 2f 69 3e 3c 2f 74 74 3e 20 75 73 69 6e  db</i></tt> usin
0ca0: 67 20 74 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e  g the connection
0cb0: 20 6f 62 6a 65 63 74 20 3c 74 74 3e 3c 69 3e 63   object <tt><i>c
0cc0: 6d 64 3c 2f 69 3e 3c 2f 74 74 3e 2e 20 44 61 74  md</i></tt>. Dat
0cd0: 61 20 69 73 20 72 65 74 75 72 6e 65 64 20 61 73  a is returned as
0ce0: 20 61 20 62 79 74 65 20 61 72 72 61 79 2e 0d 0a   a byte array...
0cf0: 0d 0a 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e  ..<tt><i>cmd</i>
0d00: 20 64 62 77 72 69 74 65 20 3c 69 3e 64 62 20 73   dbwrite <i>db s
0d10: 74 61 72 74 20 64 61 74 61 20 2e 2e 2e 3c 2f 69  tart data ...</i
0d20: 3e 3c 2f 74 74 3e 0d 0a 0d 0a 20 20 20 20 57 72  ></tt>....    Wr
0d30: 69 74 65 73 20 74 68 65 20 6e 75 6d 62 65 72 73  ites the numbers
0d40: 20 73 70 65 63 69 66 69 65 64 20 62 79 20 3c 74   specified by <t
0d50: 74 3e 3c 69 3e 64 61 74 61 3c 2f 69 3e 3c 2f 74  t><i>data</i></t
0d60: 74 3e 20 61 6e 64 20 66 6f 6c 6c 6f 77 69 6e 67  t> and following
0d70: 20 61 72 67 75 6d 65 6e 74 73 20 61 73 20 62 79   arguments as by
0d80: 74 65 73 20 62 65 67 69 6e 6e 69 6e 67 20 61 74  tes beginning at
0d90: 20 3c 74 74 3e 3c 69 3e 73 74 61 72 74 3c 2f 69   <tt><i>start</i
0da0: 3e 3c 2f 74 74 3e 20 69 6e 74 6f 20 74 68 65 20  ></tt> into the 
0db0: 64 61 74 61 20 62 6c 6f 63 6b 20 3c 74 74 3e 3c  data block <tt><
0dc0: 69 3e 64 62 3c 2f 69 3e 3c 2f 74 74 3e 20 75 73  i>db</i></tt> us
0dd0: 69 6e 67 20 74 68 65 20 63 6f 6e 6e 65 63 74 69  ing the connecti
0de0: 6f 6e 20 6f 62 6a 65 63 74 20 3c 74 74 3e 3c 69  on object <tt><i
0df0: 3e 63 6d 64 3c 2f 69 3e 3c 2f 74 74 3e 2e 0d 0a  >cmd</i></tt>...
0e00: 0d 0a 3c 74 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e  ..<tt><i>cmd</i>
0e10: 20 64 62 77 72 69 74 65 61 20 3c 69 3e 64 62 20   dbwritea <i>db 
0e20: 73 74 61 72 74 20 62 79 74 65 73 3c 2f 69 3e 3c  start bytes</i><
0e30: 2f 74 74 3e 0d 0a 0d 0a 20 20 20 20 57 72 69 74  /tt>....    Writ
0e40: 65 73 20 74 68 65 20 62 79 74 65 20 61 72 72 61  es the byte arra
0e50: 79 20 3c 74 74 3e 3c 69 3e 62 79 74 65 73 3c 2f  y <tt><i>bytes</
0e60: 69 3e 3c 2f 74 74 3e 20 62 65 67 69 6e 6e 69 6e  i></tt> beginnin
0e70: 67 20 61 74 20 3c 74 74 3e 3c 69 3e 73 74 61 72  g at <tt><i>star
0e80: 74 3c 2f 69 3e 3c 2f 74 74 3e 20 69 6e 74 6f 20  t</i></tt> into 
0e90: 74 68 65 20 64 61 74 61 20 62 6c 6f 63 6b 20 3c  the data block <
0ea0: 74 74 3e 3c 69 3e 64 62 3c 2f 69 3e 3c 2f 74 74  tt><i>db</i></tt
0eb0: 3e 20 75 73 69 6e 67 20 74 68 65 20 63 6f 6e 6e  > using the conn
0ec0: 65 63 74 69 6f 6e 20 6f 62 6a 65 63 74 20 3c 74  ection object <t
0ed0: 74 3e 3c 69 3e 63 6d 64 3c 2f 69 3e 3c 2f 74 74  t><i>cmd</i></tt
0ee0: 3e 2e 0d 0a 0a 5a 20 32 30 31 37 30 38 32 35 63  >....Z 20170825c
0ef0: 37 37 37 34 64 39 66 64 30 30 34 30 33 63 63 64  7774d9fd00403ccd
0f00: 39 65 34 32 63 38 30 0a                          9e42c80.