docs: def write(self, address, data, x, y, p=0):
          """Write a bytestring to an address in memory.
  
          It is strongly encouraged to only read and write to blocks of memory
          allocated using :py:meth:`.sdram_alloc`. Additionally,
          :py:meth:`.sdram_alloc_as_filelike` can be used to safely wrap
          read/write access to memory with a file-like interface and prevent
          accidental access to areas outside the allocated block.
  
          Parameters
          ----------
          address : int
              The address at which to start writing the data. Addresses are given
              within the address space of a SpiNNaker core. See the SpiNNaker
              datasheet for more information.
          data : :py:class:`bytes`
              Data to write into memory. Writes are automatically broken into a
              sequence of SCP write commands.
          """
          # Call the SCPConnection to perform the write on our behalf
          connection = self._get_connection(x, y)
          return connection.write(self.scp_data_length, self.scp_window_size,
                                  x, y, p, address, data)