??? 03/07/07 15:55 Read: times |
#134511 - still not good... Responding to: ???'s previous message |
If SM2=1 and the address won't match, you jump to GO_ON and forget to POP ACC.
Generally, it is a bad idea to have multiple exit points from the ISR. It is better to have a self-cointained ISR ebraced by the entry/exit code: ISR: push what needed ----- make what you want, including branches and bypasses for example: if in byte receive mode, jump to BYTE if address not match, jump to EXIT flip mode jump to EXIT BYTE: do what you want with byte EXIT: ----- pop (in reverse order) what was pushed reti JW PS. That having a single register (B) for receiving multiple bytes is an another bad idea, I leave for others to comment on... |