From: Groepaz (groepaz_at_gmx.net)
Date: 2003-11-22 21:29:55
On Saturday 22 November 2003 21:13, Geoffrey Wossum wrote: > For gcc on the AVR microcontrollers, there's an __interrupt__ attribute > that is used for ISR's, which insures that proper prologue and epilogue > code is generated. When writing ISR's for avr-gcc, two macros are > provided, INTERRUPT and SIGNAL. They're virtually identical, except > INTERRUPT re-enables global interrupts right after the prologue code. > There's also names for every possible interrupt vector, such as > SIG_UART0_RECV, which translates to something like __vector11. So to write > an ISR in C using avr-gcc, you write: [...] i'd prefer a clean solution based on function attributes....since thats a mechanism that could allow for some other nice features aswell (like in gcc, alignment, "naked" functions without the c-ish pro/epilogue etc - and ofcourse also irq handlers)..... the attribute thing could solve other issues aswell, like explicitly placing certain variables or functions into specific segments (__attribute__(("segment=myzeropage")) ...). however, if i understood previous discussions correctly, cc65 doesnt have that kinda attribute functionality yet even internally, so it might take some effort to implement. gpz ---------------------------------------------------------------------- To unsubscribe from the list send mail to majordomo_at_musoftware.de with the string "unsubscribe cc65" in the body(!) of the mail.
This archive was generated by hypermail 2.1.3 : 2003-11-22 21:39:41 CET