From: Matthias T. <mt...@we...> - 2011-05-26 19:52:20
|
Hi Pito, > I need the Status Register as well, of course (;-)). > It cannot be changed during an interrupt event (you are manipulating > the T flag there). That is part of the magic how the forth VM synchronizes interrupt handling with the controller state. Its not a convential way, yes. > Imagine you run a routine and somebody changes a > flag there in SR. No problem. Remember: amforth is a runtime environment for forth code, not for (huge) assembler code snippets. They are useful, no doubt, but they must follow the rules (expressed and implied ones). > Would it be possible to use, as the interrupt > signalling, a bit outside the status register??P. Not really. There is nothing as speedy as the status register based jumps. And the inner interpreter checks that interrupt signalling bit every time it is called. Speed is a must-have there. What about you? Why do you not change the code to use something else? e.g. some empty/ununsed/pushed register? floating point division is not well known for speed, regardless of the implementation..... You could even disable interrupts during your assembly code, thats not really a smart solution but it will prevent collisions. Matthias |