interrupt driven example
Up to Development Discussion
Look at the drivers in core/makingthings that use interrupts. Those appear to be analogin, can, SAM7_EMAC, serial, serial2, and USB. For the specifics of making the _Wrapper and _Handler functions, look at the versions of those files with some variant of "ISR" in the name. Those are the ARM mode functions (interrupts have to be ARM code). Actually, I think only the _Wrapper has to be ARM code.
Make sure not to use any blocking calls in an ISR. FreeRTOS provides versions of some functions with FROM_ISR on the end, which do not block, and can be called from an ISR.
Once you've got your ISR defined, you have to tell the interrupt controller to call it. That is done in the non-ISR (thumb code) source files for the respective drivers. That is either done by a bunch of writes to registers in AT91C_BASE_AIC or by calling AT91F_AIC_ConfigureIt, which does more or less the same thing.
The AIC section of the datasheet isn't all that long (compared to, say, the IVEC in Cortex-M3), and will help you understand what all of those AIC registers mean. It will also help you understand things like why you have to write something (anything) to AT91C_BASE_AIC->AIC_EOICR in your ISR.
The whole _Wrapper/_Handler thing appears (from recent posts on the FreeRTOS message forum) to be an artifact of different versions of GCC not playing nice at different optimization levels. Presumably with regard to register/stack usage. From my own work with ISRs with GCC on ARM, I think I know what that's about. I could explain it, but it would drive this reply off-topic. Just do it like the examples do, and you should be fine.
And by IVEC, I meant NVIC; not that that is important on the SAM7 chips, since they have the AIC instead.

