docs: def fill(self, address, data, size, x, y, p):
          """Fill a region of memory with the specified byte.
  
          Parameters
          ----------
          data : int
              Data with which to fill memory. If `address` and `size` are word
              aligned then `data` is assumed to be a word; otherwise it is
              assumed to be a byte.
  
          Notes
          -----
          If the address and size are word aligned then a fast fill method will
          be used, otherwise a much slower write will be incurred.
          """
          if size % 4 or address % 4:
              # If neither the size nor the address are word aligned we have to
              # use `write` as `sark_word_set` can only work with words.
              # Convert the data into a string and then write:
              data = struct.pack('<B', data) * size
              self.write(address, data, x, y, p)
          else:
              # We can perform a fill, this will call `sark_word_set` internally.
              self._send_scp(x, y, p, SCPCommands.fill, address, data, size)