Memory Mapping - HP H8/3003 User Manual

Emulator terminal interface
Table of Contents

Advertisement

Note

Memory Mapping

Executing this command will drive the emulator into the reset state.
Before you begin an emulator session, you must specify the location
and type of various memory regions used by your programs and your
target system (whether or not it exists). You do this for several reasons:
the emulator must know whether a given memory location
resides in emulation memory or in target system memory. This
allows the emulator to properly orient buffers for the given
data transfer.
the emulator needs to know the size of any emulation memory
blocks so it can properly reserve emulation memory space for
those blocks.
the emulator must know if a given space is RAM (read/write),
ROM (read only), or doesn't exist. This allows the emulator to
determine if certain actions taken by the emulation processor
are proper for the memory type being accessed. For example,
if the processor tries to write to a emulation memory location
mapped as ROM, the emulator will not permit the write (even
if the memory at the given location is actually RAM). (You
can optionally configure the emulator to break to the monitor
upon such occurrence with the bc -e rom command.) Also, if
the emulation processor attempts to access a non existent
location (known as "guarded"), the emulator will break to the
monitor.
You use the map command to define memory ranges and types for the
emulator. The H8/3003 emulator memory mapper allows you to define
up to 16 different map terms; each map term has a minimum size of
512 bytes. If you specify a value less than 512 byte, the emulator will
automatically allocate an entire block. You can specify one of five
different memory types (erom, eram, trom, tram, grd).
For example, you might be developing a system with the following
characteristics:
input port at 0f000 hex
Configuring the Emulator 4-15

Advertisement

Table of Contents
loading

Table of Contents