We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
First let me describe a little bit about our system:
It is not von-neuman, and the main code executes from OTP (One Time Programable) memory. there is also a small amount of XRAM, and code can also be executed from there too.
When executing from OTP, we are unable to use MOVX to read or write CODE. We can use MOVC read CODE.
When executing from XRAM, we are unable to use MOVX to read or write XDATA. We can use both MOVC and MOVX to read CODE.
Despite being OTP, we do have the ability to dynamically patch an small number of quads of OTP code at any address to whatever value we choose.
My belief is that all the elements that are needed to execute a MON51 stub from OTP are present. We can patch code to jump to the stub on a break point, and code can be read through the MOVC to keep adjacent instructions coherent in the patch?
My question is, does anyone have any experience or deep working knowledege of the MON51 that can point me to section that inserts the jumps that set and clear break points? Are there any thoughts about how to modify this with minimum impact on the stub?
Thanks in advance,
Chris.
Chris,
did you actually try to configure MON51 already. BEFORE_GO, AFTER_GO and WR_CODE give you full control about the memory interface.
I'm in the process. The MON51 is compiled and in a hardware image, but we've broken our MOVX instruction on all memory buses at the moment. Its going to be after the weekend now before I find out if it worked I'm afraid...
Can I take the oportunity to ask if there are any licensing implications of including a MON51 binary in a ROM image? this might be another route open to us.