(still...) m68k clock problem

pigeon.nicolas at wanadoo.fr pigeon.nicolas at wanadoo.fr
Tue May 27 09:54:23 UTC 2003


Hi,

Sorry to bother you again, but I'm still in troubles...
I just monitored what happened when the timer 1 interrupt was disabled, which makes the program work OK (I remind you that my problem only occurs when the timer 1 interrupt is enabled). The Context switch seems OK, the new stack pointer is loaded from RAM and is 0x0014CD0, and when the RTS instruction is called, the return address is successfully loaded from the stack (addresses 0x14CD0 and 0x14CD2), and points to _Thread_handler. The program then continues to boot normally.
When I enable the interrupt, the same stack pointer (0x14CD0) is loaded from RAM at the end of Context_switch, but the return value is read from 0x14CE8, and means nothing... Why does the stack pointer move like that, as it is never used before the RTS??? I think I'll call a priest to have my board exorcised....

I found too that Mike Panetta had a similar problem (i.e hello world OK, but problem when interrupt enabled) and posted a thread called "Any known compiler issues for CPU32? (stack corruption problem)". He apparently solved his problem by stopping Mozilla... It's pretty strange, and nothing is running on my computer when I compile... (old K6-2, command line only)

I tried every solution mentionned under this thread, but nothing works...

Please.............

Thanks a lot !



More information about the users mailing list