out_end=None,
in_start=0,
in_end=None,
- stop=False
+ stop=False,
):
"""Write data from buffer_out to an address and then
read data from an address and into buffer_in
self.writeto(address, buffer_out[out_start:out_end], stop=stop)
else:
self.writeto(address, buffer_out[out_start:], stop=stop)
- read_buffer = buffer_in
+
+ if not in_end:
+ in_end = len(buffer_in)
+ read_buffer = memoryview(buffer_in)[in_start:in_end]
self.readfrom_into(address, read_buffer, stop=stop)
- if in_end:
- buffer_in[in_start:in_end] = read_buffer[in_start:in_end]
- else:
- buffer_in[in_start:] = read_buffer[in_start:]