mem − memory pseudo-device
{
"mem",_nulldev,_memopen,
_memstrategy,_nulldev,_nulldev,
DTTYPE_CHAR,
DTFS_NONE,"memory pseudo-device"
}
is a pseudo-device that allows commands that normally operate on
devices to transfer information to and from memory. The mem device
may be used to dump the contents of memory to tape or load firmware
from tape to a VME peripheral that has address space on the VME bus.
The
device is referenced as:
mem(base_addr,width,address_modifier)
specifies the base address of the transfer to or from memory
relative to the requested address space specified by
may be 1, 2, or 4
to request byte, short, or word transfers from the indicated memory
space.
indicates the appropriate address space to use when performing the
transfer.
If
is non-zero, it specifies a VME bus address modifier to be
generated. The R2300 cpu board can generate address modifiers 0x9,
0x29, 0x2d, and 0x3d on the VME bus, these are the only non-zero
address modifiers that are legal.
If
is zero, addresses are in the R2000 address space; i.e. 0 is the
base of KUSEG, 0x80000000 is the base of K0SEG, 0xa0000000 is the
base of K1SEG, and 0xc0000000 is the base of K2SEG. See the R2000
Processor manual for a description of the R2000 address space.
unsupported address modifier
An address modifier other than 0, 0x9, 0x29, 0x2d, or 0x3d was specified.
illegal width
A width other than 1, 2, or 4 was specified.
base address outside region
The base address specified is large than the size of the address space
specified by
R2000 User’s Guide