4#include "libmicroemu/types.h"
15 static inline Result<void> Write(
const TInstrContext &ictx,
const u32 &address,
const u32 &rt) {
16 const auto &rt8 =
static_cast<u8
>(rt & 0xFFU);
17 TRY(
void, ictx.bus.template WriteOrRaise<u8>(ictx.cpua, address, rt8,
18 BusExceptionType::kRaisePreciseDataBusError));
30 static inline Result<void> Write(
const TInstrContext &ictx,
const u32 &address,
const u32 &rt) {
31 const auto &rt16 =
static_cast<u16
>(rt & 0xFFFFU);
32 TRY(
void, ictx.bus.template WriteOrRaise<u16>(ictx.cpua, address, rt16,
33 BusExceptionType::kRaisePreciseDataBusError));
45 static inline Result<void> Write(
const TInstrContext &ictx,
const u32 &address,
const u32 &rt) {
46 TRY(
void, ictx.bus.template WriteOrRaise<u32>(ictx.cpua, address, rt,
47 BusExceptionType::kRaisePreciseDataBusError));
59 static inline Result<void> Write(
const TInstrContext &ictx,
const u32 &address,
const u32 &rt,
61 TRY(
void, ictx.bus.template WriteOrRaise<u32>(ictx.cpua, address, rt,
62 BusExceptionType::kRaisePreciseDataBusError));
Store (exclusive) u32 to memory.
Definition store_mem.h:57
Store u16 to memory.
Definition store_mem.h:28
Store u32 to memory.
Definition store_mem.h:43
Store u8 to memory.
Definition store_mem.h:13
The libmicroemu::internal namespace contains all classes and functions of libmicroemu which are priva...
Definition bkpt_flags.h:6
Contains the Result class which is used to return the result of a function.
#define TRY(OUT_TYPE, CALL)
Try to call a function and return an error if the call fails.
Definition result.h:138