10 Memory components

A Memory component is a data storage and retrieval component. Functions unique to memories are accessed via the TMemory object, provided via the TComponent.Memory method.


The TMemory class has the following methods:


void Dump( int64 Start, int64 Size, pointer Buffer )


Dumps an image of memory between Start and Start + Size - 1, inclusive, to the passed buffer, which must be large enough to hold Size bytes. Any range of addresses that are outside of the memory component's range are zero-filled.



void Get_Address_Range( int64& Low, int64& High )


Returns the set of addresses that this component responds to.



void Load( int64 Start, int64 Size, pointer Buffer )


Loads memory between Start and Start + Size - 1, inclusive, with data in the passed buffer. Any data outside of the memory component's range is ignored.



TUEC Set_Address_Range( int64 Low, int64 High )


Defines the set of addresses that this component responds to.



integer Version()


Returns the version of the CEF specification that the object adheres to. This is the major.minor version times 10. For instance, a value of 20 indicates version 2.0.



The following methods are supported in Components conforming to version 2.6, or later, of the specification.



int64 Map_Virtual_To_Physical( int64 Virt )


This function returns a physical host address for the emulated memory at the passed address. This can be used to directly access the emulated RAM from outside CEF. A result of 0 means that the memory cannot be directly accessed.