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

ST10F168 chip problem?

Could someone please verify a suspected ST10F168 chip problem:
When a 'POP ZEROS' instruction (pop into the constant zeros register) is executed off on-chip IRAM (0xF600-0xFDFF), the program crashes. I didn't manage to figure out what happens exactly, because I used Monitor166 for debugging and it just stopped responding. Breakpoints in traps didn't help and instructions following the 'POP ZEROS' didn't seem to be executed either.
When 'POP ZEROS' is executed off XRAM (0xD000-0xE7FF) or external RAM, there is no such problem.

I know that ZEROS is a read-only register. If I misinterpreted the microcontroller manual and the behaviour of 'POP ZEROS' is undefined, then at least the C166 compiler should warn me before generating code from a source like this:

#include <intrins.h>
#include <reg167.h>

void func(void)
{
  _push_(0x1234);
  _pop_(ZEROS);
}

- Mike