Implement vm::reservation_op

Implement vm::reservation_peek (memory load)
Implement vm::unsafe_ptr_cast helper
Example use in cellSpurs.cpp
Fix dma_lockb value and description
This commit is contained in:
Nekotekina 2020-10-07 01:14:35 +03:00
parent 59be63167f
commit 89f1248140
5 changed files with 388 additions and 71 deletions

View file

@ -323,6 +323,13 @@ namespace vm
{
return vm::cast(other.addr(), HERE);
}
// Perform reinterpret cast
template <typename CT, typename T, typename AT, typename = decltype(reinterpret_cast<to_be_t<CT>*>(std::declval<T*>()))>
inline _ptr_base<to_be_t<CT>, u32> unsafe_ptr_cast(const _ptr_base<T, AT>& other)
{
return vm::cast(other.addr(), HERE);
}
}
struct null_t