It is a chip simulator. You can start it as process at any UNIX and run any AVR program, previously build by any AVR toolkit, like Atmel AVR Studio or GNU avr toolkit. (I suggest GNU avr-as and avr-gcc).
- full support of chip behaivour. It emulate IRQ system, timers, UART, EEPROM and so on.
- proc filesystem support. While emulation run, you have full access to chip identities via files proc/FLASH,proc/RAM and proc/EEPROM.
- embeded simple step-by-step debugger and disassembler
- connected devices support. You can emulate not just chip, but the whole device. For example, AVR can be connected to LED, LCD, USB, other AVR - imavr can emulate all stuff together, by different UNIX processes, which communicate via proc file system and sinchronize via UNIX signal technique.
- chip family support. There are many difference in chip behaivour, for exmaple, command ld r0,y+ after ser yl results different yh on small and large chips. I have big experience in AVR programming, so, try to emulate each chip feature I met, rather documented or undocumented. But just now tested enough emulation modules available only for at90s2313, at90s8515, AtMega8, AtMega16 and AtMega128.
Current stable version. 15 April 2004. I'm not good familiar with different software licences, this program is free, but, please, mail me if You make any changes in sources, I'll provide You with a password to CVS.
Feel free to mail me,