Why bother? Load the ArduinoISP sketch onto your Uno, connect MOSI,MISO,CLK to the breadboard AVR, connect pin 10 to the reset of the breadboard AVR, supply VCC/GND to the breadboard AVR. In Tools -> Programmer set it to Arduino as ISP and you're done. You can burn bootloaders, you can upload code, all without needing to make any physical changes to your Uno.
One could add a 3-pin header to allow selection of D10 or Reset to be connected via jumper configuration.
http://www.gammon.com.au/forum/?id=11635...scroll down a bit.
I've just purchased an UNO R3 a few months ago and I am already enjoying the knowledge I've gained by digging into the hardware. I've also started purchasing several Atmega328s with Arduino bootloader for DIY breadboarding. Once I figured out that I can't program two 328s using the UNO's 16U2, I looked into using the ICSP headers as an alternative option. (You could also remove the onboard 328 and it will program the breadboard 328 just fine)To my dismay, it appears after much research that the ICSP is meant to program the onboard 328 only and would require a bypass to pin 10 to make use of the header to program other AVR chips. My suggestion is to add a trace along with a user select-able header to the ICSP header for the next revision of the UNO. One side would link directly to the Reset line, the other side would go to pin 10. I hope this makes sense.
I'm opposed to buying a cable that I would permanently alter for a single purpose versus purchasing a more expensive revised Uno board that I could make use of for multiple purposes.
That is a fact that the ICSP pins on most any AVR board is wired up such to allow the AVR chip on the board to be programmed rather then to be a programmer for external AVR chips. You solution would be useful for sure but the arduino 'company' has been reluctant to have user jumper pins on their basic boards, most likely to eliminate a possible confusion/error point for new beginners. The first USB Arduino board used a 3 pin jumper selection to allow the board to get it's power from either USB or the on-board +5vdc regulator, then on subsequent boards they eliminated that manual option and designed auto-voltage selection circuity to perform that function automatically. Some of us would have preferred the original manual voltage selection method but it's pretty clear that one Arduino design goal is to make it's use as simple as possible for beginners, which means no jumpers that could be placed in the wrong position.
There's a saying in the open source community: "Feel free."By using ArduinoISP, you've put yourself among a minority of Arduino users. Increasing the expense of the "revised Uno" to serve such a small minority would not be a good idea.You can easily make an "ISP shield" with a programming header as you want, or even with a ZIF socket for chips. In fact, this has been done a couple of times and you can buy one. http://shop.evilmadscientist.com/productsmenu/tinykitlist/253 is one example.
Though the caveats in [the ISP Shield] Wiki doesn't bode well for my Uno.
No JTAG IO on 328s tho.I agree about having a good tool otherwise - like Atmel AVR ISP MKii for programming.