anchor.diff:    buff[3] := hi(lo(addr));
     buff[4] := lo(lo(addr));
   
  -  USBSendControlMessage(devHandle, PC2USB, USBASP_FUNC_25_WRITE, 0, 0, 5, buff);
  -  result := USBSendControlMessage(devHandle, PC2USB, USBASP_FUNC_25_WRITE, 1, 0, bufflen, buffer);
  +  SPIWrite(devHandle, 0, 5, buff);
  +  result := SPIWrite(devHandle, 1, bufflen, buffer);
   end;
   
   function UsbAsp25_WriteSSTB(devHandle: Pusb_dev_handle; Opcode: byte; Data: byte): integer;
  
positive.code: begin
    //Старые SST требуют Enable-Write-Status-Register (50H)
    Buff[0] := $50;
    USBSendControlMessage(devHandle, PC2USB, USBASP_FUNC_25_WRITE, 1, 0, 1, buff);
  
    //Если регистр из 2х байт
    Buff[0] := $01;
    Buff[1] := sreg1;
    Buff[2] := sreg2;
    result := USBSendControlMessage(devHandle, PC2USB, USBASP_FUNC_25_WRITE, 1, 0, 3, buff);
  end;
  
  function UsbAsp25_ReadSR(devHandle: Pusb_dev_handle; var sreg: byte; opcode: byte = $05): integer;
  begin
    USBSendControlMessage(devHandle, PC2USB, USBASP_FUNC_25_WRITE, 0, 0, 1, opcode);
    result := USBSendControlMessage(devHandle, USB2PC, USBASP_FUNC_25_READ, 1, 0, 1, sreg);
  end;
  
  //Возвращает сколько байт записали
  
negative.code: begin
    //Старые SST требуют Enable-Write-Status-Register (50H)
    Buff[0] := $50;
    SPIWrite(devHandle, 1, 1, buff);
    //
    Buff[0] := opcode;
    Buff[1] := sreg;
    result := SPIWrite(devHandle, 1, 2, buff);
  end;
  
  function UsbAsp25_WriteSR_2byte(devHandle: Pusb_dev_handle; sreg1, sreg2: byte): integer;
  