public int writeBytes(int area, int DBnumber, int start, int len, byte[] buffer)
 {
     var p1 = new Pdu_WriteRequest();
     Pdu p2;
     int res;
     /*if (dc->iface->protocol == daveProtoAS511)
     {
         return daveWriteS5Bytes(dc, area, DB, start, len, buffer);
     }*/
     //p1.header = dc->msgOut + dc->PDUstartO;
     //davePrepareWriteRequest(ref p1);
     p1.addVarToWriteRequest(area, DBnumber, start, len, buffer);
     //res = _daveExchange(dc, &p1);
     //if (res != daveResOK) return res;
     p2 = ExchangePdu(p1);
     //res = _daveSetupReceivedPDU(dc, &p2);
     //if (res != daveResOK) return res;
     return p2.testWriteResult();
 }
 public int writeBits(int area, int DB, int start, int len, byte[] buffer)
 {
     var p1 = new Pdu_WriteRequest();
         Pdu p2;
     //p1.header = dc->msgOut + dc->PDUstartO;
     //davePrepareWriteRequest(ref p1);
     p1.addBitVarToWriteRequest(area, DB, start, len, buffer);
     //res = _daveExchange(dc, &p1);
     p2 = ExchangePdu(p1);
     //if (res != daveResOK) return res;
     //res = _daveSetupReceivedPDU(dc, &p2);
     //if (res != 0) return res;
     return p2.testWriteResult();
 }