private void processMemBlt(RdpPacket_Localised data, MemBltOrder memblt,
			int present, boolean delta) {
		if ((present & 0x01) != 0) {
			memblt.setCacheID(data.get8());
			memblt.setColorTable(data.get8());
		}
		if ((present & 0x02) != 0)
			memblt.setX(setCoordinate(data, memblt.getX(), delta));
		if ((present & 0x04) != 0)
			memblt.setY(setCoordinate(data, memblt.getY(), delta));
		if ((present & 0x08) != 0)
			memblt.setCX(setCoordinate(data, memblt.getCX(), delta));
		if ((present & 0x10) != 0)
			memblt.setCY(setCoordinate(data, memblt.getCY(), delta));
		if ((present & 0x20) != 0)
			memblt.setOpcode(ROP2_S(data.get8()));
		if ((present & 0x40) != 0)
			memblt.setSrcX(setCoordinate(data, memblt.getSrcX(), delta));
		if ((present & 0x80) != 0)
			memblt.setSrcY(setCoordinate(data, memblt.getSrcY(), delta));
		if ((present & 0x0100) != 0)
			memblt.setCacheIDX(data.getLittleEndian16());

		// if(//logger.isInfoEnabled()) //logger.info("Memblt
		// opcode="+memblt.getOpcode());
		surface.drawMemBltOrder(memblt);
	}