This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Armv8 Memory Mapping

I am looking to emulate an Apple II and would like to specify some address ranges as being memory mapped so that any access would result in perhaps an interrupt that I am then able to handle and in which I can determine the memory address being accessed and react accordingly. Is this possible, and if so, would someone point me in the right direction? 

Parents
  • The standard way to do this to to mark that page as faulting, any access will cause a synchronous exception with address reporting.

    If you need to run your emulated code at EL1 you can mark the page as faulting in the Stage 2 tables and cause an exception to EL2.  If you can run entirely at EL0 then you can fault the Stage 1 table entry.

Reply
  • The standard way to do this to to mark that page as faulting, any access will cause a synchronous exception with address reporting.

    If you need to run your emulated code at EL1 you can mark the page as faulting in the Stage 2 tables and cause an exception to EL2.  If you can run entirely at EL0 then you can fault the Stage 1 table entry.

Children