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

AT89S8253: Wrong SRC code generated

Hi,

I'm using a AT89S8253 as Target device. My application uses Timer 0 interrupt. The T0 ISR needs to have some code written in inline Assembler, requiring to generate and assemble SRC file. If I activate the use of multiple DPTRs, the error "A45: undefined symbol" is generated in the module/file containing the ISR. After looking into the generated asm code, it seems that the ISR tries to push/pop the wrong symbol names, e.g. DPL1/DPH1, and register WMCON, etc. These registers exist on the AT89S8252, not the AT89S8253.
Also the ISR tries to save DPL1/DPH1, the corresponding header files of S8252/S8253 both show SFR names DP0L/DP0H and DP1L/DP1H.
I think that there is a bug in the ASM templates which define which SFRs have to saved to stack by interrupt routines, and the corresponding header files for S8252 and S8253 are both inaccurate, because the definitions for S8253 are simply duplicated from S8252, but not adjusted to the S8253.

Can anyone reproduce this?

Best regards,
Ralf