OS_Bhl, Copy bytes from extended address

Register parameters

RST 20H, DEFW $DC06
IN:
     C = number of bytes to copy (0 to 255)
     BHL = extended source pointer (B = 0, local pointer)
     DE = local destination pointer ($0000-$7FFF)
OUT:
     Fc = 0 always

Registers changed after return:
     A.BCDEHL/IXIY same
     .F....../.... different

Notes

  • Bank boundary crossing of source is automatically handled, if number of bytes to read passes between to banks then B is incremented (typically when reading contents from a File Entry on a File Card).
  • The DE destination pointer has to be in segment 0 or 1.
  • The call does not work if the destination pointer defines memory in segments 2 or 3.

Related calls

GN_Cme, compare null-terminated strings, one local, one extended
GN_Rbe, read byte at extended address
GN_Wbe, write byte at extended address
OS_Bde, copy bytes to extended address