diff options
Diffstat (limited to 'src/ARMeilleure/Memory/IMemoryManager.cs')
-rw-r--r-- | src/ARMeilleure/Memory/IMemoryManager.cs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/ARMeilleure/Memory/IMemoryManager.cs b/src/ARMeilleure/Memory/IMemoryManager.cs index 952cd2b4..46d44265 100644 --- a/src/ARMeilleure/Memory/IMemoryManager.cs +++ b/src/ARMeilleure/Memory/IMemoryManager.cs @@ -29,6 +29,17 @@ namespace ARMeilleure.Memory T ReadTracked<T>(ulong va) where T : unmanaged; /// <summary> + /// Reads data from CPU mapped memory, from guest code. (with read tracking) + /// </summary> + /// <typeparam name="T">Type of the data being read</typeparam> + /// <param name="va">Virtual address of the data in memory</param> + /// <returns>The data</returns> + T ReadGuest<T>(ulong va) where T : unmanaged + { + return ReadTracked<T>(va); + } + + /// <summary> /// Writes data to CPU mapped memory. /// </summary> /// <typeparam name="T">Type of the data being written</typeparam> @@ -37,6 +48,17 @@ namespace ARMeilleure.Memory void Write<T>(ulong va, T value) where T : unmanaged; /// <summary> + /// Writes data to CPU mapped memory, from guest code. + /// </summary> + /// <typeparam name="T">Type of the data being written</typeparam> + /// <param name="va">Virtual address to write the data into</param> + /// <param name="value">Data to be written</param> + void WriteGuest<T>(ulong va, T value) where T : unmanaged + { + Write(va, value); + } + + /// <summary> /// Gets a read-only span of data from CPU mapped memory. /// </summary> /// <param name="va">Virtual address of the data</param> |