anchor.diff:  
   ~~~ruby
     # example of capturing and programatically using information read from the DUT
  +  ss "reading default ID"
  +  dut.reg(:testreg).bits(31..0).store
  +  default_id = tester.capture {dut.jtag.read_dr dut.reg(:testreg), size: 32 }
  +  default_id_str = default_id[0].to_s(2)
  +  default_id_str.reverse!
  +  default_id = default_id_str.to_i(2)
  +  puts '**************************************************'
  +  puts 'Captured default ID through JTAG: 0x' + default_id.to_s(16)
  +  puts '**************************************************'
   ~~~
   
   * Capture using mem api
   
  -~~~ruby
  +This command will read the contents of memory from the DUT and display it.
  +
  +~~~
     # example of mem api use
  +  (debugger prompt): dut.mem(0x2000_0000).sync(3)
  +  20000000: DEADBEEF
  +  20000004: 200000D4
  +  20000008: 1C000898
  +  
  +  (debugger prompt): dut.mem(0x2000_0000).write!(0x1234567)
  +  (debugger prompt): dut.mem(0x2000_0000).sync(3)
  +  20000000: 01234567
  +  20000004: 200000D4
  +  20000008: 1C000898
   ~~~
   
   * reg.sync!
  +
  +This command will read the contents of the register from the DUT and display it by bit field.
   
   ~~~
     (debugger prompt): dut.reg(:MyReg).sync! 
  
positive.code: 
  * An alternative method for shifting a voltage down is to use a diode and pullup resistor.  The anode gets connected to the higher voltage device.  The cathode is connected to the lower voltage device.  A 10K pullup resistor is connected from the cathode to the supply voltage for the lower voltage device.  --- A word of advice: This method is quick and easy.  But, you get a slow rise time which makes it a terrible way of shifting the level of a clock signal (like TCLK for JTAG or SPICLK for SPI).
  
  ------------------------------------------------------------------------------------------------------
  
  # How It Works
  
  This section will explain the in's and out's of how the plug-in and server applications work and how they communicate.  Look for an update soon.
  
  % end
  
negative.code:   debugger	# generation of the pattern will pause here
  ~~~
  
  #### Debugging Pin Map
  
  There are pin methods available to aid debug of an OrigenLink setup.
  
  ~~~
    # Cause a pin to continuously toggle every 2 seconds
    (debugger prompt): dut.pin(:tdi).hello
    
    # Stop the pin from toggling
    (debugger prompt): dut.pin(:tdi).goodbye
  ~~~
  
  #### Staying Synchronized
  
  For efficiency vectors that are generated by your app are compressed and stored until the pattern generation is completed.  This means that when execution reaches a 'debugger' statement the previously generated vectors may not have been sent to the server yet.  There are a handful of ways to make this happen.
  