ATmega644(Sanguino) compatibility on Arduino 0012

BroHogan, The 011 to 012 problems are a very different issue then the one raised here. Most of the problems with the transition to 0012 I have seen reported were caused by a handful of macros that were moved around in 012 that conflicted with some of the low level C include files. I have read that these macros will removed in future but simple workarounds have already been posted.

The issue here is that the sanguino chip has many more hardware resources then the standard Arduino chip and the registers used to access the hardware is different. The arduino abstractions as documented in the reference insulate users from this problem, but if a sketch or library code use the registers directly, as it may have to do to access things like the timers then code may not work on the chip used by the sanguino.
This means modifying code to access the registers and perhaps also changing the pin assignments if the chip maps resources to different pins.

This should not be a difficult task once documentation is available that summarizes the register changes from the ATmega168 to the 644 for commonly used resources.