Options for in-device debugging and\or emulation

Good day!

A couple of questions about debugging\simulating.

  1. I'm using Arduino for both Arduino IDE and bare AVR-GCC. I know that some community clones exists for JTAG debuggers, but I haven't found clones for DebugWire (which is the only option for ATmega8, Atmea168 and 328).

  2. Is there any mature software where I can fully simulate, say ATmega8, 16x2 LCD and a couple of LEDs\buttons. Or the In-circuit debugging is a more appropriate way to do this?

Thanks in advance!